mockpit 0.0.0-stage → 1.0.0

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.
Files changed (82) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +232 -2
  3. package/bin/demoData.js +132 -0
  4. package/bin/initDesign.js +846 -0
  5. package/bin/mockpit.js +1830 -0
  6. package/bin/serveUrl.d.ts +1 -0
  7. package/bin/serveUrl.js +7 -0
  8. package/dist/mcp/server.d.ts +2 -0
  9. package/dist/mcp/server.js +230 -0
  10. package/dist/server/apiViews.d.ts +329 -0
  11. package/dist/server/apiViews.js +135 -0
  12. package/dist/server/app.d.ts +53 -0
  13. package/dist/server/app.js +3112 -0
  14. package/dist/server/base64.d.ts +1 -0
  15. package/dist/server/base64.js +16 -0
  16. package/dist/server/cdn.d.ts +6 -0
  17. package/dist/server/cdn.js +33 -0
  18. package/dist/server/codeRunner.d.ts +5 -0
  19. package/dist/server/codeRunner.js +89 -0
  20. package/dist/server/codeWorker.d.ts +1 -0
  21. package/dist/server/codeWorker.js +196 -0
  22. package/dist/server/designGuide.d.ts +16 -0
  23. package/dist/server/designGuide.js +311 -0
  24. package/dist/server/events.d.ts +53 -0
  25. package/dist/server/events.js +14 -0
  26. package/dist/server/feedbackBatch.d.ts +43 -0
  27. package/dist/server/feedbackBatch.js +98 -0
  28. package/dist/server/icons.d.ts +50 -0
  29. package/dist/server/icons.js +225 -0
  30. package/dist/server/index.d.ts +1 -0
  31. package/dist/server/index.js +64 -0
  32. package/dist/server/kits.d.ts +36 -0
  33. package/dist/server/kits.js +279 -0
  34. package/dist/server/knobs.d.ts +15 -0
  35. package/dist/server/knobs.js +333 -0
  36. package/dist/server/mcpHttp.d.ts +53 -0
  37. package/dist/server/mcpHttp.js +143 -0
  38. package/dist/server/mcpSpec.d.ts +191 -0
  39. package/dist/server/mcpSpec.js +402 -0
  40. package/dist/server/parts.d.ts +31 -0
  41. package/dist/server/parts.js +338 -0
  42. package/dist/server/postMarkdown.d.ts +10 -0
  43. package/dist/server/postMarkdown.js +271 -0
  44. package/dist/server/postSurfaces.d.ts +40 -0
  45. package/dist/server/postSurfaces.js +407 -0
  46. package/dist/server/public.d.ts +5 -0
  47. package/dist/server/public.js +5 -0
  48. package/dist/server/push.d.ts +45 -0
  49. package/dist/server/push.js +234 -0
  50. package/dist/server/richRender.d.ts +15 -0
  51. package/dist/server/richRender.js +392 -0
  52. package/dist/server/run.d.ts +82 -0
  53. package/dist/server/run.js +290 -0
  54. package/dist/server/runApi.d.ts +6 -0
  55. package/dist/server/runApi.js +82 -0
  56. package/dist/server/slots.d.ts +14 -0
  57. package/dist/server/slots.js +71 -0
  58. package/dist/server/sqlStore.d.ts +119 -0
  59. package/dist/server/sqlStore.js +954 -0
  60. package/dist/server/sqliteStorage.d.ts +2 -0
  61. package/dist/server/sqliteStorage.js +90 -0
  62. package/dist/server/surfacePage.d.ts +48 -0
  63. package/dist/server/surfacePage.js +1099 -0
  64. package/dist/server/themes.d.ts +48 -0
  65. package/dist/server/themes.js +305 -0
  66. package/dist/server/types.d.ts +599 -0
  67. package/dist/server/types.js +299 -0
  68. package/dist/workers/public.d.ts +1 -0
  69. package/dist/workers/public.js +3 -0
  70. package/extensions/mockpit.js +703 -0
  71. package/guide/AGENT_SETUP.md +23 -0
  72. package/guide/topics/asks.md +87 -0
  73. package/guide/topics/feedback.md +127 -0
  74. package/guide/topics/html.md +175 -0
  75. package/guide/topics/http.md +76 -0
  76. package/guide/topics/knobs.md +72 -0
  77. package/guide/topics/scripts.md +129 -0
  78. package/guide/topics/surfaces.md +100 -0
  79. package/package.json +165 -4
  80. package/skills/launch-video/SKILL.md +159 -0
  81. package/skills/mockpit/SKILL.md +40 -0
  82. package/viewer/dist/index.html +1922 -0
@@ -0,0 +1,1922 @@
1
+ <!doctype html>
2
+ <html lang="en" data-theme="dark">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>mockpit</title>
7
+ <script>
8
+ // Before first paint, so a light-theme reload never flashes dark.
9
+ try {
10
+ document.documentElement.dataset.theme =
11
+ localStorage.getItem("mockpit-theme") === "light" ? "light" : "dark";
12
+ } catch (e) {}
13
+ </script>
14
+ <script type="module" crossorigin>var e=Object.defineProperty,t=(e,t,n)=>()=>{if(n)throw n[0];try{return e&&(t=e(e=0)),t}catch(e){throw n=[e],e}},n=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r};(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var r={context:void 0,registry:void 0,effects:void 0,done:!1,getContextId(){return i(this.context.count)},getNextContextId(){return i(this.context.count++)}};function i(e){let t=String(e),n=t.length-1;return r.context.id+(n?String.fromCharCode(96+n):``)+t}function a(e){r.context=e}var o=(e,t)=>e===t,s=Symbol(`solid-proxy`),c=Symbol(`solid-track`),l={equals:o},u=null,d=me,f=1,p=2,m={owned:null,cleanups:null,context:null,owner:null},h={},g=null,_=null,v=null,y=null,b=null,x=0;function S(e,t){let n=v,r=g,i=e.length===0,a=t===void 0?r:t,o=i?m:{owned:null,cleanups:null,context:a?a.context:null,owner:a},s=i?e:()=>e(()=>j(()=>ve(o)));g=o,v=null;try{return fe(s,!0)}finally{v=n,g=r}}function C(e,t){t=t?Object.assign({},l,t):l;let n={value:e,observers:null,observerSlots:null,comparator:t.equals||void 0};return[oe.bind(n),e=>(typeof e==`function`&&(e=_&&_.running&&_.sources.has(n)?e(n.tValue):e(n.value)),se(n,e))]}function w(e,t,n){ce(ue(e,t,!0,f))}function T(e,t,n){ce(ue(e,t,!1,f))}function E(e,t,n){d=he;let r=ue(e,t,!1,f),i=F&&ie(F);i&&(r.suspense=i),(!n||!n.render)&&(r.user=!0),b?b.push(r):ce(r)}function D(e,t,n){n=n?Object.assign({},l,n):l;let r=ue(e,t,!0,0);return r.observers=null,r.observerSlots=null,r.comparator=n.equals||void 0,ce(r),oe.bind(r)}function O(e){return e&&typeof e==`object`&&`then`in e}function k(e,t,n){let i,a,o;typeof t==`function`?(i=e,a=t,o=n||{}):(i=!0,a=e,o=t||{});let s=null,c=h,l=null,u=!1,d=!1,f=`initialValue`in o,p=typeof i==`function`&&D(i),m=new Set,[y,b]=(o.storage||C)(o.initialValue),[x,S]=C(void 0),[T,E]=C(void 0,{equals:!1}),[k,A]=C(f?`ready`:`unresolved`);g&&P(()=>{for(let e of m.keys())e.decrement();m.clear(),_&&s&&_.promises.delete(s),s=null}),r.context&&(l=r.getNextContextId(),o.ssrLoadFrom===`initial`?c=o.initialValue:r.load&&r.has(l)&&(c=r.load(l)));function M(e,t,n,r){return s===e&&(s=null,r!==void 0&&(f=!0),(e===c||t===c)&&o.onHydrated&&queueMicrotask(()=>o.onHydrated(r,{value:t})),c=h,_&&e&&u?(_.promises.delete(e),u=!1,fe(()=>{_.running=!0,N(t,n)},!1)):N(t,n)),t}function N(e,t){fe(()=>{t===void 0&&b(()=>e),A(t===void 0?f?`ready`:`unresolved`:`errored`),S(t);for(let e of m.keys())e.decrement();m.clear()},!1)}function ee(){let e=F&&ie(F),t=y(),n=x();if(n!==void 0&&!s)throw n;return v&&!v.user&&e&&w(()=>{T(),s&&(e.resolved&&_&&u?_.promises.add(s):m.has(e)||(e.increment(),m.add(e)))}),t}function ne(e=!0){if(e!==!1&&d)return;d=!1;let t=p?p():i;if(u=_&&_.running,t==null||t===!1){M(s,j(y));return}_&&s&&_.promises.delete(s);let n,r=c===h?j(()=>{try{return a(t,{value:y(),refetching:e})}catch(e){n=e}}):c;if(n!==void 0){M(s,void 0,be(n),t);return}else if(!O(r))return M(s,r,void 0,t),r;return s=r,`v`in r?(r.s===1?M(s,r.v,void 0,t):M(s,void 0,be(r.v),t),r):(d=!0,queueMicrotask(()=>d=!1),fe(()=>{A(f?`refreshing`:`pending`),E()},!1),r.then(e=>M(r,e,void 0,t),e=>M(r,void 0,be(e),t)))}Object.defineProperties(ee,{state:{get:()=>k()},error:{get:()=>x()},loading:{get(){let e=k();return e===`pending`||e===`refreshing`}},latest:{get(){if(!f)return ee();let e=x();if(e&&!s)throw e;return y()}}});let re=g;return p?w(()=>(re=g,ne(!1))):ne(!1),[ee,{refetch:e=>te(re,()=>ne(e)),mutate:b}]}function A(e){return fe(e,!1)}function j(e){if(v===null)return e();let t=v;v=null;try{return e()}finally{v=t}}function M(e,t,n){let r=Array.isArray(e),i,a=n&&n.defer;return n=>{let o;if(r){o=Array(e.length);for(let t=0;t<e.length;t++)o[t]=e[t]()}else o=e();if(a)return a=!1,n;let s=j(()=>t(o,i,n));return i=o,s}}function N(e){E(()=>j(e))}function P(e){return g===null||(g.cleanups===null?g.cleanups=[e]:g.cleanups.push(e)),e}function ee(){return v}function te(e,t){let n=g,r=v;g=e,v=null;try{return fe(t,!0)}catch(e){Se(e)}finally{g=n,v=r}}var[ne,re]=C(!1);function ie(e){let t;return g&&g.context&&(t=g.context[e.id])!==void 0?t:e.defaultValue}function ae(e){let t=D(e),n=D(()=>Ce(t()));return n.toArray=()=>{let e=n();return Array.isArray(e)?e:e==null?[]:[e]},n}var F;function oe(){let e=_&&_.running;if(this.sources&&(e?this.tState:this.state))if((e?this.tState:this.state)===f)ce(this);else{let e=y;y=null,fe(()=>ge(this),!1),y=e}if(v){let e=this.observers;if(!e||e[e.length-1]!==v){let t=e?e.length:0;v.sources?(v.sources.push(this),v.sourceSlots.push(t)):(v.sources=[this],v.sourceSlots=[t]),e?(e.push(v),this.observerSlots.push(v.sources.length-1)):(this.observers=[v],this.observerSlots=[v.sources.length-1])}}return e&&_.sources.has(this)?this.tValue:this.value}function se(e,t,n){let r=_&&_.running&&_.sources.has(e)?e.tValue:e.value;if(!e.comparator||!e.comparator(r,t)){if(_){let r=_.running;(r||!n&&_.sources.has(e))&&(_.sources.add(e),e.tValue=t),r||(e.value=t)}else e.value=t;e.observers&&e.observers.length&&fe(()=>{for(let t=0;t<e.observers.length;t+=1){let n=e.observers[t],r=_&&_.running;r&&_.disposed.has(n)||((r?!n.tState:!n.state)&&(n.pure?y.push(n):b.push(n),n.observers&&_e(n)),r?n.tState=f:n.state=f)}if(y.length>1e6)throw y=[],Error()},!1)}return t}function ce(e){if(!e.fn)return;ve(e);let t=x;le(e,_&&_.running&&_.sources.has(e)?e.tValue:e.value,t),_&&!_.running&&_.sources.has(e)&&queueMicrotask(()=>{fe(()=>{_&&(_.running=!0),v=g=e,le(e,e.tValue,t),v=g=null},!1)})}function le(e,t,n){let r,i=g,a=v;v=g=e;try{r=e.fn(t)}catch(t){return e.pure&&(_&&_.running?(e.tState=f,e.tOwned&&e.tOwned.forEach(ve),e.tOwned=void 0):(e.state=f,e.owned&&e.owned.forEach(ve),e.owned=null)),e.updatedAt=n+1,Se(t)}finally{v=a,g=i}(!e.updatedAt||e.updatedAt<=n)&&(e.updatedAt!=null&&`observers`in e?se(e,r,!0):_&&_.running&&e.pure?(_.sources.has(e)||(e.value=r),_.sources.add(e),e.tValue=r):e.value=r,e.updatedAt=n)}function ue(e,t,n,r=f,i){let a={fn:e,state:r,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:t,owner:g,context:g?g.context:null,pure:n};return _&&_.running&&(a.state=0,a.tState=r),g===null||g!==m&&(_&&_.running&&g.pure?g.tOwned?g.tOwned.push(a):g.tOwned=[a]:g.owned?g.owned.push(a):g.owned=[a]),a}function de(e){let t=_&&_.running;if((t?e.tState:e.state)===0)return;if((t?e.tState:e.state)===p)return ge(e);if(e.suspense&&j(e.suspense.inFallback))return e.suspense.effects.push(e);let n=[e];for(;(e=e.owner)&&(!e.updatedAt||e.updatedAt<x);){if(t&&_.disposed.has(e))return;(t?e.tState:e.state)&&n.push(e)}for(let r=n.length-1;r>=0;r--){if(e=n[r],t){let t=e,i=n[r+1];for(;(t=t.owner)&&t!==i;)if(_.disposed.has(t))return}if((t?e.tState:e.state)===f)ce(e);else if((t?e.tState:e.state)===p){let t=y;y=null,fe(()=>ge(e,n[0]),!1),y=t}}}function fe(e,t){if(y)return e();let n=!1;t||(y=[]),b?n=!0:b=[],x++;try{let t=e();return pe(n),t}catch(e){n||(b=null),y=null,Se(e)}}function pe(e){if(y&&=(me(y),null),e)return;let t;if(_){if(!_.promises.size&&!_.queue.size){let e=_.sources,n=_.disposed;b.push.apply(b,_.effects),t=_.resolve;for(let e of b)`tState`in e&&(e.state=e.tState),delete e.tState;_=null,fe(()=>{for(let e of n)ve(e);for(let t of e){if(t.value=t.tValue,t.owned)for(let e=0,n=t.owned.length;e<n;e++)ve(t.owned[e]);t.tOwned&&(t.owned=t.tOwned),delete t.tValue,delete t.tOwned,t.tState=0}re(!1)},!1)}else if(_.running){_.running=!1,_.effects.push.apply(_.effects,b),b=null,re(!0);return}}let n=b;b=null,n.length&&fe(()=>d(n),!1),t&&t()}function me(e){for(let t=0;t<e.length;t++)de(e[t])}function he(e){let t,n=0;for(t=0;t<e.length;t++){let r=e[t];r.user?e[n++]=r:de(r)}if(r.context){if(r.count){r.effects||=[],r.effects.push(...e.slice(0,n));return}a()}for(r.effects&&(r.done||!r.count)&&(e=[...r.effects,...e],n+=r.effects.length,delete r.effects),t=0;t<n;t++)de(e[t])}function ge(e,t){let n=_&&_.running;n?e.tState=0:e.state=0;for(let r=0;r<e.sources.length;r+=1){let i=e.sources[r];if(i.sources){let e=n?i.tState:i.state;e===f?i!==t&&(!i.updatedAt||i.updatedAt<x)&&de(i):e===p&&ge(i,t)}}}function _e(e){let t=_&&_.running;for(let n=0;n<e.observers.length;n+=1){let r=e.observers[n];(t?!r.tState:!r.state)&&(t?r.tState=p:r.state=p,r.pure?y.push(r):b.push(r),r.observers&&_e(r))}}function ve(e){let t;if(e.sources)for(;e.sources.length;){let t=e.sources.pop(),n=e.sourceSlots.pop(),r=t.observers;if(r&&r.length){let e=r.pop(),i=t.observerSlots.pop();n<r.length&&(e.sourceSlots[i]=n,r[n]=e,t.observerSlots[n]=i)}}if(e.tOwned){for(t=e.tOwned.length-1;t>=0;t--)ve(e.tOwned[t]);delete e.tOwned}if(_&&_.running&&e.pure)ye(e,!0);else if(e.owned){for(t=e.owned.length-1;t>=0;t--)ve(e.owned[t]);e.owned=null}if(e.cleanups){for(t=e.cleanups.length-1;t>=0;t--)e.cleanups[t]();e.cleanups=null}_&&_.running?e.tState=0:e.state=0}function ye(e,t){if(t||(e.tState=0,_.disposed.add(e)),e.owned)for(let t=0;t<e.owned.length;t++)ye(e.owned[t])}function be(e){return e instanceof Error?e:Error(typeof e==`string`?e:`Unknown error`,{cause:e})}function xe(e,t,n){try{for(let n of t)n(e)}catch(e){Se(e,n&&n.owner||null)}}function Se(e,t=g){let n=u&&t&&t.context&&t.context[u],r=be(e);if(!n)throw r;b?b.push({fn(){xe(r,n,t)},state:f}):xe(r,n,t)}function Ce(e){if(typeof e==`function`&&!e.length)return Ce(e());if(Array.isArray(e)){let t=[];for(let n=0;n<e.length;n++){let r=Ce(e[n]);if(Array.isArray(r))if(r.length<32768)t.push.apply(t,r);else for(let e=0;e<r.length;e++)t.push(r[e]);else t.push(r)}return t}return e}var we=Symbol(`fallback`);function Te(e){for(let t=0;t<e.length;t++)e[t]()}function Ee(e,t,n={}){let r=[],i=[],a=[],o=0,s=t.length>1?[]:null;return P(()=>Te(a)),()=>{let l=e()||[],u=l.length,d,f;return l[c],j(()=>{let e,t,c,m,h,g,_,v,y;if(u===0)o!==0&&(Te(a),a=[],r=[],i=[],o=0,s&&=[]),n.fallback&&(r=[we],i[0]=S(e=>(a[0]=e,n.fallback())),o=1);else if(o===0){for(i=Array(u),f=0;f<u;f++)r[f]=l[f],i[f]=S(p);o=u}else{for(c=Array(u),m=Array(u),s&&(h=Array(u)),g=0,_=Math.min(o,u);g<_&&r[g]===l[g];g++);for(_=o-1,v=u-1;_>=g&&v>=g&&r[_]===l[v];_--,v--)c[v]=i[_],m[v]=a[_],s&&(h[v]=s[_]);for(e=new Map,t=Array(v+1),f=v;f>=g;f--)y=l[f],d=e.get(y),t[f]=d===void 0?-1:d,e.set(y,f);for(d=g;d<=_;d++)y=r[d],f=e.get(y),f!==void 0&&f!==-1?(c[f]=i[d],m[f]=a[d],s&&(h[f]=s[d]),f=t[f],e.set(y,f)):a[d]();for(f=g;f<u;f++)f in c?(i[f]=c[f],a[f]=m[f],s&&(s[f]=h[f],s[f](f))):i[f]=S(p);i=i.slice(0,o=u),r=l.slice(0)}return i});function p(e){if(a[f]=e,s){let[e,n]=C(f);return s[f]=n,t(l[f],e)}return t(l[f])}}}function De(e,t,n={}){let r=[],i=[],a=[],o=[],s=0,l;return P(()=>Te(a)),()=>{let u=e()||[],d=u.length;return u[c],j(()=>{if(d===0)return s!==0&&(Te(a),a=[],r=[],i=[],s=0,o=[]),n.fallback&&(r=[we],i[0]=S(e=>(a[0]=e,n.fallback())),s=1),i;for(r[0]===we&&(a[0](),a=[],r=[],i=[],s=0),l=0;l<d;l++)l<r.length&&r[l]!==u[l]?o[l](()=>u[l]):l>=r.length&&(i[l]=S(f));for(;l<r.length;l++)a[l]();return s=o.length=a.length=d,r=u.slice(0),i=i.slice(0,s)});function f(e){a[l]=e;let[n,r]=C(u[l]);return o[l]=r,t(n,l)}}}function I(e,t){return j(()=>e(t||{}))}var Oe=e=>`Stale read from <${e}>.`;function L(e){let t=`fallback`in e&&{fallback:()=>e.fallback};return D(Ee(()=>e.each,e.children,t||void 0))}function ke(e){let t=`fallback`in e&&{fallback:()=>e.fallback};return D(De(()=>e.each,e.children,t||void 0))}function R(e){let t=e.keyed,n=D(()=>e.when,void 0,void 0),r=t?n:D(n,void 0,{equals:(e,t)=>!e==!t});return D(()=>{let i=r();if(i){let a=e.children;return typeof a==`function`&&a.length>0?j(()=>a(t?i:()=>{if(!j(r))throw Oe(`Show`);return n()})):a}return e.fallback},void 0,void 0)}function Ae(e){let t=ae(()=>e.children),n=D(()=>{let e=t(),n=Array.isArray(e)?e:[e],r=()=>void 0;for(let e=0;e<n.length;e++){let t=e,i=n[e],a=r,o=D(()=>a()?void 0:i.when,void 0,void 0),s=i.keyed?o:D(o,void 0,{equals:(e,t)=>!e==!t});r=()=>a()||(s()?[t,o,i]:void 0)}return r});return D(()=>{let t=n()();if(!t)return e.fallback;let[r,i,a]=t,o=a.children;return typeof o==`function`&&o.length>0?j(()=>o(a.keyed?i():()=>{if(j(n)()?.[0]!==r)throw Oe(`Match`);return i()})):o},void 0,void 0)}function je(e){return e}var z=e=>D(()=>e());function Me(e,t,n){let r=n.length,i=t.length,a=r,o=0,s=0,c=t[i-1].nextSibling,l=null;for(;o<i||s<a;){if(t[o]===n[s]){o++,s++;continue}for(;t[i-1]===n[a-1];)i--,a--;if(i===o){let t=a<r?s?n[s-1].nextSibling:n[a-s]:c;for(;s<a;)e.insertBefore(n[s++],t)}else if(a===s)for(;o<i;)(!l||!l.has(t[o]))&&t[o].remove(),o++;else if(t[o]===n[a-1]&&n[s]===t[i-1]){let r=t[--i].nextSibling;e.insertBefore(n[s++],t[o++].nextSibling),e.insertBefore(n[--a],r),t[i]=n[a]}else{if(!l){l=new Map;let e=s;for(;e<a;)l.set(n[e],e++)}let r=l.get(t[o]);if(r!=null)if(s<r&&r<a){let c=o,u=1,d;for(;++c<i&&c<a&&!((d=l.get(t[c]))==null||d!==r+u);)u++;if(u>r-s){let i=t[o];for(;s<r;)e.insertBefore(n[s++],i)}else e.replaceChild(n[s++],t[o++])}else o++;else t[o++].remove()}}}var Ne=`_$DX_DELEGATE`;function Pe(e,t,n,r={}){let i;return S(r=>{i=r,t===document?e():U(t,e(),t.firstChild?null:void 0,n)},r.owner),()=>{i(),t.textContent=``}}function B(e,t,n,r){let i,a=()=>{let t=r?document.createElementNS(`http://www.w3.org/1998/Math/MathML`,`template`):document.createElement(`template`);return t.innerHTML=e,n?t.content.firstChild.firstChild:r?t.firstChild:t.content.firstChild},o=t?()=>j(()=>document.importNode(i||=a(),!0)):()=>(i||=a()).cloneNode(!0);return o.cloneNode=o,o}function Fe(e,t=window.document){let n=t[Ne]||(t[Ne]=new Set);for(let r=0,i=e.length;r<i;r++){let i=e[r];n.has(i)||(n.add(i),t.addEventListener(i,Ve))}}function V(e,t,n){Be(e)||(n==null?e.removeAttribute(t):e.setAttribute(t,n))}function Ie(e,t){Be(e)||(t==null?e.removeAttribute(`class`):e.className=t)}function Le(e,t,n,r){if(r)Array.isArray(n)?(e[`$$${t}`]=n[0],e[`$$${t}Data`]=n[1]):e[`$$${t}`]=n;else if(Array.isArray(n)){let r=n[0];e.addEventListener(t,n[0]=t=>r.call(e,n[1],t))}else e.addEventListener(t,n,typeof n!=`function`&&n)}function Re(e,t,n){if(!t)return n?V(e,`style`):t;let r=e.style;if(typeof t==`string`)return r.cssText=t;typeof n==`string`&&(r.cssText=n=void 0),n||={},t||={};let i,a;for(a in n)t[a]??r.removeProperty(a),delete n[a];for(a in t)i=t[a],i!==n[a]&&(r.setProperty(a,i),n[a]=i);return n}function H(e,t,n){n==null?e.style.removeProperty(t):e.style.setProperty(t,n)}function ze(e,t,n){return j(()=>e(t,n))}function U(e,t,n,r){if(n!==void 0&&!r&&(r=[]),typeof t!=`function`)return He(e,t,r,n);T(r=>He(e,t(),r,n),r)}function Be(e){return!!r.context&&!r.done&&(!e||e.isConnected)}function Ve(e){if(r.registry&&r.events&&r.events.find(([t,n])=>n===e))return;let t=e.target,n=`$$${e.type}`,i=e.target,a=e.currentTarget,o=t=>Object.defineProperty(e,"target",{configurable:!0,value:t}),s=()=>{let r=t[n];if(r&&!t.disabled){let i=t[`${n}Data`];if(i===void 0?r.call(t,e):r.call(t,i,e),e.cancelBubble)return}return t.host&&typeof t.host!=`string`&&!t.host._$host&&t.contains(e.target)&&o(t.host),!0},c=()=>{for(;s()&&(t=t._$host||t.parentNode||t.host););};if(Object.defineProperty(e,"currentTarget",{configurable:!0,get(){return t||document}}),r.registry&&!r.done&&(r.done=_$HY.done=!0),e.composedPath){let n=e.composedPath();o(n[0]);for(let e=0;e<n.length-2&&(t=n[e],s());e++){if(t._$host){t=t._$host,c();break}if(t.parentNode===a)break}}else c();o(i)}function He(e,t,n,r,i){let a=Be(e);if(a){!n&&(n=[...e.childNodes]);let t=[];for(let e=0;e<n.length;e++){let r=n[e];r.nodeType===8&&r.data.slice(0,2)===`!$`?r.remove():t.push(r)}n=t}for(;typeof n==`function`;)n=n();if(t===n)return n;let o=typeof t,s=r!==void 0;if(e=s&&n[0]&&n[0].parentNode||e,o===`string`||o===`number`){if(a||o===`number`&&(t=t.toString(),t===n))return n;if(s){let i=n[0];i&&i.nodeType===3?i.data!==t&&(i.data=t):i=document.createTextNode(t),n=Ge(e,n,r,i)}else n=n!==``&&typeof n==`string`?e.firstChild.data=t:e.textContent=t}else if(t==null||o===`boolean`){if(a)return n;n=Ge(e,n,r)}else if(o===`function`)return T(()=>{let i=t();for(;typeof i==`function`;)i=i();n=He(e,i,n,r)}),()=>n;else if(Array.isArray(t)){let o=[],c=n&&Array.isArray(n);if(Ue(o,t,n,i))return T(()=>n=He(e,o,n,r,!0)),()=>n;if(a){if(!o.length)return n;if(r===void 0)return n=[...e.childNodes];let t=o[0];if(t.parentNode!==e)return n;let i=[t];for(;(t=t.nextSibling)!==r;)i.push(t);return n=i}if(o.length===0){if(n=Ge(e,n,r),s)return n}else c?n.length===0?We(e,o,r):Me(e,n,o):(n&&Ge(e),We(e,o));n=o}else if(t.nodeType){if(a&&t.parentNode)return n=s?[t]:t;if(Array.isArray(n)){if(s)return n=Ge(e,n,r,t);Ge(e,n,null,t)}else n==null||n===``||!e.firstChild?e.appendChild(t):e.replaceChild(t,e.firstChild);n=t}return n}function Ue(e,t,n,r){let i=!1;for(let a=0,o=t.length;a<o;a++){let o=t[a],s=n&&n[e.length],c;if(!(o==null||o===!0||o===!1))if((c=typeof o)==`object`&&o.nodeType)e.push(o);else if(Array.isArray(o))i=Ue(e,o,s)||i;else if(c===`function`)if(r){for(;typeof o==`function`;)o=o();i=Ue(e,Array.isArray(o)?o:[o],Array.isArray(s)?s:[s])||i}else e.push(o),i=!0;else{let t=String(o);s&&s.nodeType===3&&s.data===t?e.push(s):e.push(document.createTextNode(t))}}return i}function We(e,t,n=null){for(let r=0,i=t.length;r<i;r++)e.insertBefore(t[r],n)}function Ge(e,t,n,r){if(n===void 0)return e.textContent=``;let i=r||document.createTextNode(``);if(t.length){let r=!1;for(let a=t.length-1;a>=0;a--){let o=t[a];if(i!==o){let t=o.parentNode===e;!r&&!a?t?e.replaceChild(i,o):e.insertBefore(i,n):t&&o.remove()}else r=!0}}else e.insertBefore(i,n);return[i]}var Ke=null,qe=null;function Je(){return Ke??=document}function W(){if(qe)return qe;let e=null;try{e=window.localStorage}catch{}return qe={location:window.location,history:window.history,window,storage:e},qe}var Ye=()=>W().window.__MOCKPIT_BASE_PATH__??``,Xe=()=>W().window.__MOCKPIT_READONLY__===!0,Ze=class extends Error{status;constructor(e,t){super(t),this.status=e}},Qe=e=>`${Ye()}${e}`;async function $e(e,t){let n=await fetch(Qe(e),{...t,headers:t?.body?{"content-type":`application/json`}:void 0}),r=await n.json().catch(()=>null);if(!n.ok)throw new Ze(n.status,r?.error??n.statusText);return r}var et=(e,t)=>({method:e,body:JSON.stringify(t)}),tt={projects:()=>$e(`/api/projects`),mocks:e=>$e(`/api/mocks?project=${encodeURIComponent(e)}`),mock:e=>$e(`/api/mocks/${encodeURIComponent(e)}?history=1`),mockHead:e=>$e(`/api/mocks/${encodeURIComponent(e)}`),draft:e=>$e(`/api/mocks/${encodeURIComponent(e)}/draft`),putDraft:(e,t)=>$e(`/api/mocks/${encodeURIComponent(e)}/draft`,et(`PUT`,t)),reply:(e,t)=>$e(`/api/mocks/${encodeURIComponent(e)}/reply`,et(`POST`,t)),restoreVersion:(e,t,n)=>$e(`/api/mocks/${encodeURIComponent(e)}/variants/${encodeURIComponent(t)}/restore`,et(`POST`,{version:n})),restoreVariant:(e,t,n)=>$e(`/api/mocks/${encodeURIComponent(e)}/restore`,et(`POST`,{state:t,variant:n})),comment:(e,t)=>$e(`/api/comments`,et(`POST`,{mock:e,text:t,author:`user`})),comments:(e,t)=>$e(`/api/comments?mock=${encodeURIComponent(e)}${t===void 0?``:`&after=${t}`}`),theme:()=>$e(`/api/theme`),putTheme:e=>$e(`/api/theme`,et(`PUT`,{mode:e}))};function nt(e,t,n={}){let r=new URLSearchParams({surface:String(t)});return n.version&&r.set(`ver`,String(n.version)),n.mode&&r.set(`mode`,n.mode),n.knobs&&Object.keys(n.knobs).length&&r.set(`k`,JSON.stringify(n.knobs)),Qe(`/s/${encodeURIComponent(e)}?${r}`)}var rt=e=>Qe(`/a/${encodeURIComponent(e)}`),it=null;function at(e,t){if(!it){let e=W().window.EventSource;if(!e)return()=>{};let t=new e(Qe(`/api/events`)),n={close:()=>t.close(),listeners:new Set};t.onmessage=e=>{let t;try{t=JSON.parse(e.data)}catch{return}for(let e of n.listeners)e.onEvent(t)},t.addEventListener(`hello`,()=>{for(let e of n.listeners)e.onOpen?.()}),it=n}let n=it,r={onEvent:e,onOpen:t};return n.listeners.add(r),()=>{n.listeners.delete(r),n.listeners.size===0&&it===n&&(n.close(),it=null)}}var ot=[`html`,`diff`,`image`,`markdown`,`terminal`,`mermaid`,`json`,`code`],st={html:{contentField:`html`,sandboxed:!0},diff:{contentField:`patch`,sandboxed:!0,frameClass:`diffframe`},image:{sandboxed:!1},markdown:{contentField:`markdown`,sandboxed:!0,frameClass:`mdframe`},terminal:{contentField:`text`,sandboxed:!0,frameClass:`termframe`},mermaid:{contentField:`mermaid`,sandboxed:!0,frameClass:`mermaidframe`},json:{contentField:`data`,sandboxed:!1},code:{contentField:`code`,sandboxed:!0,frameClass:`codeframe`}};ot.join(`, `),ot.filter(e=>st[e].sandboxed),ot.filter(e=>!st[e].sandboxed),Object.fromEntries(ot.flatMap(e=>{let t=st[e],n=`contentField`in t?t.contentField:void 0;return n?[[e,n]]:[]})),Object.fromEntries(ot.flatMap(e=>{let t=st[e],n=`frameClass`in t?t.frameClass:void 0;return n?[[e,n]]:[]}));function ct(e){return typeof e==`string`&&Object.hasOwn(st,e)}function lt(e){return ct(e)&&st[e].sandboxed}var ut=e=>e.answer!==void 0||e.other!==void 0||e.note!==void 0,dt=`variant`,ft=e=>({version:e,answers:{},mix:{},tuned:{},comments:[],others:{},notes:{}}),pt=e=>new Set([...Object.keys(e.answers),...Object.keys(e.others),...Object.keys(e.notes)]),mt=e=>!e||ht(e)===0,ht=e=>pt(e).size+Object.keys(e.mix).length+Object.keys(e.tuned).length+e.comments.length,gt=e=>e===void 0?[]:Array.isArray(e)?e:[e];function _t(e,t,n,r){let i={...e.answers},a={...e.others},o=gt(i[t.id]),s=r||a[t.id]!==void 0;if(n===null)s&&t.multi?(delete a[t.id],s=!1):s||=(t.multi||delete i[t.id],!0);else if(t.multi){let e=o.includes(n)?o.filter(e=>e!==n):[...o,n];e.length?i[t.id]=e:delete i[t.id]}else i[t.id]=n,delete a[t.id],s=!1;return{draft:{...e,answers:i,others:a},otherOpen:s}}var vt=e=>e.scope===`mock`&&e.options.some(e=>e.variant),yt=e=>e.asks.find(vt),bt=(e,t)=>[...new Set(e.filter(e=>e.state===t&&e.status!==`archived`).map(e=>e.variant))];function xt(e,t,n){let r=bt(t,n);return r.length<2?!1:!e.some(e=>(e.scope===`mock`||e.scope===`state`&&e.state===n)&&r.every(t=>e.options.some(e=>e.variant===t)))}function St(e,t){let n=e.states.length?e.states:[null],r=n.filter(n=>xt(e.asks,t,n));if(!r.length)return[];let i=(e,t)=>({id:t===null?dt:`${dt}:${t}`,text:`Which one?`,scope:t===null?`mock`:`state`,...t===null?{}:{state:t},options:e.map(e=>({id:e,label:e,variant:e})),at:``}),a=bt(t,r[0]);return r.length===n.length&&n.every(e=>{let n=bt(t,e);return n.length===a.length&&n.every(e=>a.includes(e))})?[i(a,null)]:r.map(e=>i(bt(t,e),e))}var Ct=e=>Math.max(1,...e.map(e=>e.version));function wt(e,t){let n=e.history?.map(e=>e.version)??[e.version],r=n.filter(e=>e<=t);return r.length?Math.max(...r):Math.min(...n)}var Tt=(e,t)=>e.history?.find(e=>e.version===t);function Et(e,t,n){if(e.scope===`state`&&e.state!==void 0)return e.state;if(e.scope===`part`&&e.part){if((n=>t.parts.find(e=>e.state===n)?.parts.some(t=>t.name===e.part)??!1)(n))return n;let r=t.parts.find(t=>t.parts.some(t=>t.name===e.part));if(r)return r.state}return n??t.states[0]??null}function Dt(e,t){for(let n of e.parts){let e=n.parts.find(e=>e.name===t);if(e)return e.label??e.name}return t}function Ot(e,t){return vt(e)?`Look`:e.scope===`part`&&e.part?Dt(t,e.part):e.scope===`state`&&e.state?e.state:`Question`}function kt(e){return vt(e)?`look`:e.scope===`part`&&e.part?e.part:e.scope===`state`&&e.state?e.state.toLowerCase():`answer`}function At(e){return e===`variant`?`look`:e.startsWith(`variant:`)?e.slice(dt.length+1).toLowerCase():e}function jt(e,t,n,r){let i=yt(e);if(!i||!n)return[];let a=i.options.flatMap(e=>e.variant?[e.variant]:[]),o=[],s=new Set;for(let i of e.states.length?e.states:[null]){let e=t.filter(e=>e.state===i&&e.status!==`archived`&&a.includes(e.variant)),c=e.find(e=>e.variant===n);if(!c)continue;let l=r(i,n);for(let t of c.parts){let n=Mt(l,t);if(n!==void 0)for(let a of e){let e=`${t}\u0000${a.variant}`;if(a===c||s.has(e)||!a.parts.includes(t))continue;let l=Mt(r(i,a.variant),t);l===void 0||l===n||(s.add(e),o.push({part:t,variant:a.variant}))}}}return o}function Mt(e,t){if(e)return e.parts.filter(e=>e.name===t).map(e=>`${e.label}:${Math.round(e.box.w)}x${Math.round(e.box.h)}:${+!!e.visible}`).sort().join(`|`)}function Nt(e,t,n){let r={};for(let i of e)i.scope!==`part`||!i.part||t[i.id]===void 0||n[i.part]&&(r[i.id]=n[i.part]);return r}var Pt=(e,t)=>gt(t).map(t=>e.options.find(e=>e.id===t)?.label??t).map(e=>e.toLowerCase()).join(` + `);function Ft(e){return typeof e==`boolean`?e?`on`:`off`:typeof e==`object`?JSON.stringify(e):String(e)}function It(e,t){let n=[];for(let r of t.asks){let t=e.answers[r.id],i=e.others?.[r.id],a=[t===void 0?``:Pt(r,t),i===void 0?``:`“${i}”`].filter(Boolean);a.length?n.push(`${kt(r)} ${a.join(` + `)}`):e.notes?.[r.id]!==void 0&&n.push(`${kt(r)} noted`)}for(let[r,i]of Object.entries(e.answers))t.asks.some(e=>e.id===r)||n.push(`${At(r)} ${gt(i).join(` + `)}`);let r=Object.entries(e.mix).map(([e,t])=>`${e} · ${t}'s`);r.length&&n.push(`mix ${r.join(`, `)}`);let i=Object.entries(e.tuned).map(([e,t])=>`${e} ${Ft(t)}`);i.length&&n.push(`tuned ${i.join(`, `)}`);let a=e.comments.length;return a&&n.push(`${a} comment${a===1?``:`s`}`),e.decision&&n.push(`${e.decision.kind} ${e.decision.variant}`),e.text&&n.push(`“${e.text}”`),n.length?`Sent · ${n.join(` · `)}`:`Sent`}function Lt(e,t,n,r){let i=new Set(n.map(e=>e.variant)),a={},o=[],s=e=>Object.fromEntries(Object.entries(e).filter(([e])=>t.asks.some(t=>t.id===e)));for(let[n,r]of Object.entries(e.answers)){let e=t.asks.find(e=>e.id===n);e!==void 0&&gt(r).every(t=>{let n=e.options.find(e=>e.id===t);return n!==void 0&&(!n.variant||i.has(n.variant))})?a[n]=r:o.push(n)}let c={};for(let[t,r]of Object.entries(e.mix))n.some(e=>e.variant===r&&e.parts.includes(t))&&(c[t]=r);let l=new Set([...Object.keys(t.knobs),...n.flatMap(e=>Object.keys(e.knobs??{}))]),u={};for(let[t,n]of Object.entries(e.tuned))l.has(t)&&(u[t]=n);let d=new Set(n.flatMap(e=>e.parts));return{draft:{version:r,answers:a,mix:c,tuned:u,comments:e.comments.filter(e=>e.part===null||d.has(e.part)),others:s(e.others),notes:s(e.notes)},flagged:o}}function Rt(){let e=0,t=0,n=new Set,r=new Set;return{hover(){return t=++e,t},click(){let t=++e;return n.add(t),t},mark(){let t=++e;return r.add(t),t},resolve(e){return typeof e==`number`?n.delete(e)?`click`:r.delete(e)?`mark`:e===t?`hover`:null:null},leave(){t=0}}}var zt=(e,t)=>`${e??``}\u0000${t}`,Bt=(e,t)=>t===e;function Vt(e){if(typeof e==`number`||typeof e==`boolean`||typeof e==`string`)return e;if(Array.isArray(e))return e[0];switch(e.type){case`slider`:case`toggle`:return e.value;case`select`:{if(e.value!==void 0)return e.value;let t=e.options[0];return typeof t==`string`?t:t?.value}case`color`:case`text`:case`image`:return e.value;case`pad`:return{x:e.x?.[0]??0,y:e.y?.[0]??0};case`spring`:case`easing`:return e}}function Ht(e,t,n){return tn({knobs:{...e.knobs,...t},asks:e.asks,answers:n?.answers??{},tuned:n?.tuned??{}})}var Ut=e=>e.state?`${e.part??`page`} · ${e.state}`:e.part??`page`;function Wt(e,t,n){let r=new Map;for(let e of t)for(let t of e.history??[{version:e.version,at:e.updatedAt}]){let e=r.get(t.version);(!e||t.at<e)&&r.set(t.version,t.at)}let i=[...[...r].map(([e,t])=>({kind:`publish`,at:t,version:e})),...e.map(e=>({kind:`comment`,at:e.createdAt,c:e}))].sort((e,t)=>e.at.localeCompare(t.at)||(e.kind===`publish`?-1:1)),a=[],o=null;for(let e of i){if(e.kind===`publish`){let t={who:`agent`,at:e.at,text:`published v${e.version}`,id:`v${e.version}`};a.push(t),o=t;continue}let t=e.c;if(t.author===`user`||t.author===`surface`){let e=t.kind===`reply`?t.payload:void 0,r=e?It(e,n):t.text||`Sent`,i={who:`you`,at:t.createdAt,text:r,delivered:t.delivered,id:t.id};e?.comments.length&&(i.comments=e.comments.map(e=>({where:Ut(e),text:e.text})));let s=Object.entries(e?.notes??{});s.length&&(i.notes=s.map(([e,t])=>({ask:n.asks.find(t=>t.id===e)?.text??e,text:t}))),a.push(i),o=null;continue}let r=t.kind===`ask`?`asked ${t.text.split(`
15
+ `).filter(Boolean).length}`:`replied:`,i=t.kind===`ask`?void 0:t.text;o&&o===a[a.length-1]&&!o.text.includes(` · `)?(o.text+=` · ${r}`,i&&(o.quote=i),o.at=t.createdAt):a.push({who:`agent`,at:t.createdAt,text:r,quote:i,id:t.id}),o=null}return a}function Gt(e,t=Date.now()){let n=Math.max(0,Math.round((t-Date.parse(e))/1e3));if(n<45)return`just now`;let r=Math.round(n/60);if(r<60)return`${r}m ago`;let i=Math.round(r/60);if(i<24)return`${i}h ago`;let a=Math.round(i/24);return a===1?`yesterday`:`${a} days ago`}var Kt=e=>e.asks.filter(e=>!ut(e)),qt=(e,t)=>Kt(e).filter(e=>!gt(t?.answers[e.id]).length&&t?.others[e.id]===void 0&&t?.notes[e.id]===void 0);function Jt(e,t){if(!(!e||!t))return e.parts.filter(e=>e.name===t&&e.visible).sort((e,t)=>t.depth-e.depth||e.order-t.order)[0]?.box}var Yt=(e,t)=>JSON.stringify(e)===JSON.stringify(t),Xt=e=>{let t=e.indexOf(`.`);return t<0?null:e.slice(0,t)};function Zt(e,t){let n=Xt(e);if(n===null)return;let r=e.slice(n.length+1);return!r.includes(`.`)&&r in t?r:void 0}var Qt=e=>typeof e==`boolean`||typeof e==`object`&&!Array.isArray(e)&&(e.type===`select`||e.type===`toggle`);function $t(e,t,n){let r=t[e];if(!(r===void 0||!Qt(r)))return n.find(t=>!t.multi&&t.options.length>0&&t.options.every(t=>t.set&&Object.keys(t.set).length===1&&e in t.set))}function en(e,t){let n={};for(let r of e)for(let e of gt(t[r.id]))Object.assign(n,r.options.find(t=>t.id===e)?.set??{});return n}function tn(e){let t=en(e.asks,e.answers),n={...t,...e.tuned},r=n=>{if(n in e.tuned)return e.tuned[n];if(n in t)return t[n];let i=Zt(n,e.knobs);if(i!==void 0)return r(i);let a=e.knobs[n];return a===void 0?void 0:Vt(a)};for(let t of Object.keys(e.knobs)){let e=r(t);e!==void 0&&(n[t]=e)}return n}function nn(e,t){let n={...t.tuned};return delete n[e],tn({...t,tuned:n})[e]}function rn(e,t,n){let r=$t(e,n.knobs,n.asks),i=r?.options.find(n=>Yt(n.set?.[e],t));return r&&i?{kind:`answer`,ask:r,option:i.id}:{kind:`tuned`,path:e,value:Yt(t,nn(e,n))?void 0:t}}function an(e,t){let n=Object.keys(t),r=[{part:null,label:`Look`,paths:n.filter(e=>Xt(e)===null)}],i=[];for(let t of e.parts)for(let e of t.parts)i.includes(e.name)||i.push(e.name);for(let e of n){let t=Xt(e);t!==null&&!i.includes(t)&&i.push(t)}for(let t of i){let i=n.filter(e=>Xt(e)===t),a=e.asks.some(e=>e.scope===`part`&&e.part===t);(i.length||a)&&r.push({part:t,label:t,paths:i})}return r}function on(e,t){return Object.keys(e.knobs).length||t.some(e=>Object.keys(e.knobs??{}).length)||e.asks.some(e=>e.scope===`part`)?!0:e.parts.some(e=>e.parts.length>0)}var sn=e=>Object.entries(e).map(([e,t])=>`${e}: ${typeof t==`object`?JSON.stringify(t):String(t)}`).join(`
16
+ `),cn=e=>typeof e==`string`&&!/(url|image|image-set|element|cross-fade|paint)\s*\(/i.test(e);function ln(e,t,n=22){let r=e.x+e.w;return r+2+n<=t-2?{x:r+2,y:Math.max(2,e.y-n/2)}:{x:Math.max(2,r-n/2),y:Math.max(2,e.y-n-2)}}function un(e,t,n,r,i){if(!e||!t)return{s:e/i||.1,x:0,y:0,h:t,frameH:640};let a=n&&n>0?n:null,o=e/i;if(!r){let e=a?Math.min(t,Math.floor(a*o)):t;return{s:o,x:0,y:0,h:e,frameH:a??e/o}}let s=Math.max(0,r.x-36),c=Math.max(0,r.y-36),l=Math.min(i-s,r.w+72),u=r.h+72,d=Math.max(o,Math.min(e/l,t/u,1)),f=a?a*d:1/0,p=Math.min(t,Math.floor(f));return{s:d,x:Math.min(0,Math.max(-s*d+(e-l*d)/2,e-i*d)),y:Math.min(0,Math.max(-c*d+(p-u*d)/2,p-f)),h:p,frameH:a??c+p/d}}function dn(e,t=22,n=6){let r=[],i=t+n;for(let n of e){let e=n.x,a=()=>r.some(r=>Math.abs(r.x-e)<i&&Math.abs(r.y-n.y)<t);for(;a();)e+=i;r.push({index:n.index,x:e,y:n.y})}return r}var fn=e=>Math.max(0,Math.min(1,e)),pn=e=>Array.isArray(e)&&e.length===4&&e.every(e=>typeof e==`number`&&Number.isFinite(e));function mn(e,t){let n=e.anchor;if(!n)return null;let r=pn(n.box)?n.box:null,i=n.offset&&n.offset.every(Number.isFinite)?{x:n.offset[0]*t.width,y:n.offset[1]*t.height}:r?{x:r[0]+r[2]/2,y:r[1]+r[3]/2}:null;if(!i)return null;if(e.part===null)return{...i,moved:!1};let a=Jt(t,e.part);if(!a)return{...i,moved:!0};let o=r&&r[2]>0?fn((i.x-r[0])/r[2]):.5,s=r&&r[3]>0?fn((i.y-r[1])/r[3]):.5;return{x:a.x+o*a.w,y:a.y+s*a.h,moved:!1}}function hn(e,t,n){let r=[],i=0;return e.forEach((e,a)=>{if(!e.anchor||(i++,e.state!==t||!n))return;let o=mn(e,n);o&&r.push({n:i,index:a,part:e.part,text:e.text,...o})}),r}var gn=e=>e.filter(e=>e.anchor).length+1;function _n(e,t=``){let n=(t&&e.startsWith(t)?e.slice(t.length):e).split(`/`).filter(Boolean),r=e=>{try{return decodeURIComponent(e)}catch{return e}};return n[0]===`project`&&n[1]?n[2]?{screen:`mock`,project:r(n[1]),slug:r(n[2])}:{screen:`home`,project:r(n[1])}:{screen:`home`,project:null}}var vn=e=>`${Ye()}/project/${encodeURIComponent(e)}`,yn=(e,t)=>`${vn(e)}/${encodeURIComponent(t)}`,bn=e=>JSON.stringify(e),xn=()=>_n(W().location.pathname,Ye()),[Sn,Cn]=C(xn(),{equals:(e,t)=>bn(e)===bn(t)});W().window.addEventListener(`popstate`,()=>Cn(xn()));function wn(e,t={}){let n=W().history;t.replace?n.replaceState(null,``,e):n.pushState(null,``,e),Cn(xn())}function Tn(e,t){e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),wn(t))}var En=`mockpit-theme`,[Dn,On]=C(Je().documentElement.dataset.theme===`light`?`light`:`dark`),kn=0;function An(e,t){let n=Je().documentElement;t&&(n.classList.add(`theming`),W().window.clearTimeout(kn),kn=W().window.setTimeout(()=>n.classList.remove(`theming`),200)),n.dataset.theme=e;try{W().storage?.setItem(En,e)}catch{}On(e)}function jn(e,t={}){e===Dn()&&Je().documentElement.dataset.theme===e||(An(e,t.fade??!0),t.persist&&tt.putTheme(e).catch(()=>{}))}var Mn=()=>jn(Dn()===`dark`?`light`:`dark`,{persist:!0});async function Nn(){try{let{mode:e}=await tt.theme();jn(e===`light`?`light`:`dark`,{fade:!1})}catch{}}var Pn=B(`<div aria-hidden=true>`),Fn=B(`<iframe sandbox=allow-scripts loading=lazy tabindex=-1 width=820>`,!0,!1,!1);function In(e){let t,n,[r,i]=C({w:0,h:0}),[a,o]=C(null);N(()=>{let e=()=>i({w:t.clientWidth,h:t.clientHeight});e();let r=new ResizeObserver(e);r.observe(t);let a=e=>{if(!n||e.source!==n.contentWindow)return;let t=e.data;if(!t||t.__mockpit!==!0||t.type!==`resize`)return;let r=typeof t.height==`number`&&Number.isFinite(t.height)?t.height:0;r>0&&o(Math.min(r,2e4))};W().window.addEventListener(`message`,a),P(()=>{r.disconnect(),W().window.removeEventListener(`message`,a)})});let s=()=>{let{w:t,h:n}=r();return un(t,e.fit?Math.round(t*3/4):n,a(),e.focus??null,820)};return(()=>{var i=Pn();return ze(e=>t=e,i),U(i,I(R,{get when(){return e.src},keyed:!0,children:t=>(()=>{var r=Fn();return ze(e=>{n=e,o(null)},r),V(r,`src`,t),T(t=>{var n=e.title??``,i=Math.ceil(s().frameH),a=`translate(${s().x}px, ${s().y}px) scale(${s().s})`;return n!==t.e&&V(r,`title`,t.e=n),i!==t.t&&V(r,`height`,t.t=i),a!==t.a&&H(r,`transform`,t.a=a),t},{e:void 0,t:void 0,a:void 0}),r})()})),T(t=>{var n=`thumb ${e.class??``}`,a=e.fit&&r().w?{height:`${s().h}px`}:void 0;return n!==t.e&&Ie(i,t.e=n),t.t=Re(i,a,t.t),t},{e:void 0,t:void 0}),i})()}function Ln(e,t,n){return e?t===`denied`?`blocked`:n&&t===`granted`?`on`:`off`:`hidden`}var Rn=e=>e===`on`,zn=(e,t)=>e!==`visible`||!t;function Bn(e){switch(e.type){case`comment-created`:return e.mockId?{mockId:e.mockId,source:`comment`,commentId:e.id,seq:e.seq}:null;case`post-created`:case`post-updated`:return e.by===`agent`?{mockId:e.mockId,source:`post`,postId:e.id,version:e.version}:null;default:return null}}function Vn(e){if(e.author===`user`||e.kind===`reply`)return null;if(e.kind===`ask`){let t=e.text.split(`
17
+ `).filter(e=>e.trim());if(t.length===0)return null;let n=t.length>1?` (+${t.length-1} more)`:``;return{kind:`ask`,text:`New question: ${t[0]}${n}`}}return e.text.trim()?{kind:`reply`,text:`Agent replied: ${e.text}`}:null}function Hn(e,t,n){let r=[t.state,t.variant==="default"?null:t.variant].filter(Boolean);return r.push(`v${n}`),{kind:`version`,text:`New version of ${e} (${r.join(`, `)})`}}var Un={ask:0,reply:1,version:2};function Wn(e){if(e.length===0)return null;let t=[...e].sort((e,t)=>Un[e.kind]-Un[t.kind])[0],n=e.length-1;return n>0?{kind:t.kind,text:`${t.text} · +${n} more`}:t}function Gn(e,t=120){let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n:`${n.slice(0,t-1).trimEnd()}…`}function Kn(e,t){return{title:`mockpit · ${e.title.trim()||e.slug}`,body:Gn(t.text),tag:`mockpit:${e.id}`}}function qn(e,t,n=1500,r=5e3){let i=new Map,a=t=>{let n=i.get(t);n&&(i.delete(t),e(t,n.items))};return{add(e,o,s){let c=i.get(e);if(!c){i.set(e,{items:[o],timer:t.set(()=>a(e),n),started:s});return}t.clear(c.timer),c.items.push(o);let l=Math.max(0,Math.min(n,c.started+r-s));c.timer=t.set(()=>a(e),l)},cancel(){for(let e of i.values())t.clear(e.timer);i.clear()}}}var Jn=`mockpit-notify`,Yn=()=>W().window.Notification;function Xn(){try{return Rn(W().storage?.getItem(Jn)??null)}catch{return!1}}var[Zn,Qn]=C(Xn()),[$n,er]=C(Yn()?.permission??`default`),tr=()=>Ln(!!Yn(),$n(),Zn());function nr(e){Qn(e);try{W().storage?.setItem(Jn,e?`on`:`off`)}catch{}}async function rr(){let e=Yn();if(!e)return;if(tr()===`on`)return nr(!1);let t=e.permission;t==="default"&&(t=await e.requestPermission()),er(t),t===`granted`&&nr(!0)}var ir=()=>zn(Je().visibilityState,Je().hasFocus());async function ar(e,t){let n=Yn();if(!n||tr()!==`on`||!ir())return;let r=t.flatMap(e=>e.source===`comment`?[e.seq]:[]),i=await Promise.all([tt.mockHead(e),r.length?tt.comments(e,Math.min(...r)-1):null]).catch(()=>null);if(!i)return;let[a,o]=i,s=Wn(t.flatMap(e=>{if(e.source===`comment`){let t=o?.comments.find(t=>t.id===e.commentId),n=t?Vn(t):null;return n?[n]:[]}let t=a.variants.find(t=>t.postId===e.postId);return t?[Hn(a.title,t,e.version)]:[]}));if(!s||tr()!==`on`||!ir())return;let c=Kn(a,s),l=yn(a.project,a.slug),u=new n(c.title,{body:c.body,tag:c.tag});u.onclick=()=>{W().window.focus(),W().location.pathname!==l&&wn(l),u.close()}}function or(){if(!Yn())return;let e=W().window,t=()=>er(Yn()?.permission??`default`);e.addEventListener(`focus`,t),Je().addEventListener(`visibilitychange`,t),P(()=>{e.removeEventListener(`focus`,t),Je().removeEventListener(`visibilitychange`,t)}),E(()=>{if(tr()!==`on`)return;let t=qn((e,t)=>void ar(e,t),{set:(t,n)=>e.setTimeout(t,n),clear:t=>e.clearTimeout(t)}),n=at(e=>{let n=Bn(e);n&&ir()&&t.add(n.mockId,n,Date.now())});P(()=>{n(),t.cancel()})})}var sr=B(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round>`),cr=B(`<svg><path d="M12 8a4 4 0 1 0 0 8a4 4 0 1 0 0-8z"></svg>`,!1,!0,!1),lr=B(`<svg><path d="M12 2.5v2M12 19.5v2M2.5 12h2M19.5 12h2M5.3 5.3l1.4 1.4M17.3 17.3l1.4 1.4M5.3 18.7l1.4-1.4M17.3 6.7l1.4-1.4"></svg>`,!1,!0,!1),ur=B(`<svg><path d="M20 14.5A8 8 0 1 1 9.5 4a6.5 6.5 0 0 0 10.5 10.5z"></svg>`,!1,!0,!1),dr=B(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9"></path><path d="M10.3 21a1.94 1.94 0 0 0 3.4 0">`),fr=B(`<svg><path d="M3 3l18 18"></svg>`,!1,!0,!1),pr=B(`<button type=button class=bellbtn aria-label=Notifications>`),mr=B(`<header class=top><div class=crumb></div><div class=right><button type=button class=themebtn>`);function hr(e){return(()=>{var t=sr();return U(t,(()=>{var t=z(()=>e.theme===`dark`);return()=>t()?[cr(),lr()]:ur()})()),t})()}function gr(e){return(()=>{var t=dr(),n=t.firstChild;return n.nextSibling,U(t,(()=>{var t=z(()=>e.bell===`blocked`);return()=>t()&&fr()})(),null),T(()=>V(n,`fill`,e.bell===`on`?`currentColor`:`none`)),t})()}var _r={hidden:``,off:`Notify me when the agent needs me`,on:`Notifications on. Click to turn off`,blocked:`Notifications are blocked for this site. Allow them in the browser's site settings`};function vr(e){let t=()=>Dn()===`dark`?`Light`:`Dark`;return(()=>{var n=mr(),r=n.firstChild,i=r.nextSibling,a=i.firstChild;return U(r,()=>e.left),U(i,()=>e.right,a),U(i,I(R,{get when(){return tr()!==`hidden`},get children(){var e=pr();return e.$$click=()=>void rr(),U(e,I(gr,{get bell(){return tr()}})),T(t=>{var n=_r[tr()],r=tr()===`on`,i=tr();return n!==t.e&&V(e,`title`,t.e=n),r!==t.t&&V(e,`aria-pressed`,t.t=r),i!==t.a&&V(e,`data-bell`,t.a=i),t},{e:void 0,t:void 0,a:void 0}),e}}),a),Le(a,`click`,Mn,!0),U(a,I(hr,{get theme(){return Dn()}})),T(e=>{var n=t(),r=`${t()} theme`;return n!==e.e&&V(a,`title`,e.e=n),r!==e.t&&V(a,`aria-label`,e.t=r),e},{e:void 0,t:void 0}),n})()}Fe([`click`]);var yr=B(`<i class=dot>`),br=B(`<a class=home-next>Answer next ›`),xr=B(`<p class=home-lead>`),Sr=B(`<ol class=home-list>`),Cr=B(`<div class="screen home"><main class=home-main><div class=home-col>`),wr=B(`<span>mockpit`),Tr=B(`<span class=sep>·`),Er=B(`<label class=home-project><select aria-label=Project></select><svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=1.8><path d="M6 9.5L12 15.5L18 9.5">`),Dr=B(`<b>`),Or=B(`<option>`),kr=B("<p class=home-empty>Nothing published yet. Agents publish with `mockpit publish`."),Ar=B(`<i class="dot ok">`),jr=B(`<span class=home-chip><i class=dot>`),Mr=B(`<li><a class=home-row><div class=home-thumb></div><div class=home-text><div class=home-name></div><div class=home-sub></div></div><span class=home-ago>`),Nr=B(`<span class=home-done title=decided>✓`);function Pr(e){let[t,{refetch:n}]=k(()=>tt.projects()),r=D(()=>e.project??t()?.[0]?.name??null),[i,{refetch:a}]=k(r,e=>tt.mocks(e)),o=D(()=>[...i()?.mocks??[]].sort((e,t)=>t.updatedAt.localeCompare(e.updatedAt))),s=()=>i()?.open??0,c=D(()=>o().find(e=>e.open>0));return P(at(e=>{e.type===`theme-changed`?jn(e.mode===`light`?`light`:`dark`):(e.type.startsWith(`mock-`)||e.type.startsWith(`post-`)||e.type===`comment-created`)&&(a(),(e.type===`mock-created`||e.type===`mock-deleted`)&&n())},()=>void a())),(()=>{var e=Cr(),n=e.firstChild,a=n.firstChild;return U(e,I(vr,{get left(){return[wr(),Tr(),I(R,{get when(){return(t()?.length??0)>1},get fallback(){return(()=>{var e=Dr();return U(e,()=>r()??``),e})()},get children(){var e=Er(),n=e.firstChild;return n.addEventListener(`change`,e=>wn(vn(e.currentTarget.value))),U(n,I(L,{get each(){return t()},children:e=>(()=>{var t=Or();return U(t,()=>e.name),T(()=>t.value=e.name),t})()})),T(()=>n.value=r()??``),e}})]}}),n),U(a,I(R,{get when(){return r()},get fallback(){return I(R,{get when(){return!t.loading},get children(){return kr()}})},get children(){return[(()=>{var e=xr();return U(e,I(R,{get when(){return s()>0},get fallback(){return[Ar(),`0 open · all answered`]},get children(){return[yr(),z(()=>`${s()} open across ${i()?.openMocks??0} ${i()?.openMocks===1?`mock`:`mocks`} ·`),(()=>{var e=br();return e.$$click=e=>Tn(e,yn(r(),c()?.slug??``)),T(t=>{var n=yn(r(),c()?.slug??``),i=c()?.title;return n!==t.e&&V(e,`href`,t.e=n),i!==t.t&&V(e,`title`,t.t=i),t},{e:void 0,t:void 0}),e})()]}})),e})(),(()=>{var e=Sr();return U(e,I(L,{get each(){return o()},children:e=>I(Fr,{mock:e,get project(){return r()}})})),e})()]}})),e})()}function Fr(e){let t=()=>yn(e.project,e.mock.slug),n=()=>e.mock.thumbnail;return(()=>{var r=Mr(),i=r.firstChild,a=i.firstChild,o=a.nextSibling,s=o.firstChild,c=s.nextSibling,l=o.nextSibling;return i.$$click=e=>Tn(e,t()),U(a,I(R,{get when(){return n()},children:e=>I(In,{get src(){return nt(e().postId,e().surface,{version:e().version,mode:Dn()})}})})),U(s,()=>e.mock.title),U(c,(()=>{var t=z(()=>e.mock.stateCount===1);return()=>t()?`1 state`:`${e.mock.stateCount} states`})()),U(i,I(R,{get when(){return e.mock.open>0},get fallback(){return Nr()},get children(){var t=jr();return t.firstChild,U(t,()=>`${e.mock.open} open`,null),t}}),l),U(l,()=>Gt(e.mock.updatedAt)),T(n=>{var r=t(),a=e.mock.slug;return r!==n.e&&V(i,`href`,n.e=r),a!==n.t&&V(i,`data-mock`,n.t=a),n},{e:void 0,t:void 0}),r})()}Fe([`click`]);var Ir=e=>`mockpit-presets:${e}`;function Lr(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.flatMap(e=>e&&typeof e==`object`&&typeof e.name==`string`&&e.tuned&&typeof e.tuned==`object`&&!Array.isArray(e.tuned)?[{name:e.name,tuned:e.tuned}]:[]):[]}catch{return[]}}function Rr(e){try{return Lr(W().storage?.getItem(Ir(e))??null)}catch{return[]}}function zr(e,t){try{W().storage?.setItem(Ir(e),JSON.stringify(t))}catch{}}var Br=B(`<div class=qhd><span class=grow></span><button type=button class=nav aria-label="Previous question">‹</button><button type=button class=nav aria-label="Next question">›`),Vr=B(`<div class=qerr role=alert>`),Hr=B(`<button type=button class="primary send">`),Ur=B(`<button type=button class=primary>Next ›`),Wr=B(`<span>`),Gr=B(`<span class=picked>`),Kr=B(`<span class=flag>`),qr=B(`<div class=ovrline><button type=button class=lnk>undo`),Jr=B(`<div class=qblock><div class=nm></div><div class=ask></div><div class=opts>`),Yr=B(`<button type=button class=vrestore>restore`),Xr=B(`<div class=opt-arch>`),Zr=B(`<button type=button class="lnk addnote">Add a note`),Qr=B(`<label><span class=up-text-label></span><textarea rows=2 maxlength=8000>`),$r=B(`<div class=qblock><div class=nm>Mix</div><div class=ask>Keep anything from the other looks?</div><div class=opts>`),ei=B(`<span class=tick>✓`),ti=B(`<button type=button class=opt><span class=lbl>`),ni=B(`<label class="up-text-row note"><span class=up-text-label>Note</span><input class=up-text-input placeholder="optional, for the agent">`),ri=B(`<div class=decide><button type=button class=primary>Accept</button><button type=button class=secondary>Revise</button><button type=button class=secondary>Drop`),ii=B(`<div class=qblock><div class=nm></div><div class=ask>`),ai=450,oi=()=>W().window.matchMedia?.(`(hover: hover)`).matches??!0;function si(e){let t=e.s;return I(R,{get when(){return t.mock()},get children(){return I(R,{get when(){return t.questions().length},get fallback(){return I(gi,{s:t})},get children(){return I(ci,{s:t})}})}})}function ci(e){let t=e.s,n=()=>t.questions().length,r=()=>Math.min(t.cur(),n()-1),i=()=>t.questions()[r()],a=()=>r()===n()-1,o=()=>ht(t.draft()??ft(0)),s=()=>{let e=i();return e.kind===`mix`?t.mixAnswered():t.answerOf(e.ask)!==void 0||t.otherOf(e.ask)!==void 0||t.noteOf(e.ask)!==void 0};return[(()=>{var e=Br(),i=e.firstChild,o=i.nextSibling,s=o.nextSibling;return U(e,I(li,{s:t,get index(){return r()},get total(){return n()}}),i),o.$$click=()=>t.goQuestion(r()-1),s.$$click=()=>t.goQuestion(r()+1),T(e=>{var t=r()===0,n=a();return t!==e.e&&(o.disabled=e.e=t),n!==e.t&&(s.disabled=e.t=n),e},{e:void 0,t:void 0}),e})(),I(R,{get when(){return i()},keyed:!0,children:e=>e.kind===`mix`?I(mi,{s:t,get index(){return r()}}):I(di,{s:t,get ask(){return e.ask},get index(){return r()}})}),I(R,{get when(){return t.error()},get children(){var e=Vr();return U(e,()=>t.error()),e}}),I(R,{get when(){return z(()=>!!(a()&&t.owed().length===0&&o()>0))()&&!Xe()},get fallback(){return I(R,{get when(){return z(()=>!!s())()&&!a()||a()&&t.owed().length>0},get children(){var e=Ur();return e.$$click=()=>t.goQuestion(t.nextStop(r())??n()-1),e}})},get children(){var e=Hr();return e.$$click=()=>void t.send(),U(e,()=>`Send ${o()}`),T(()=>e.disabled=t.sending()),e}})]}function li(e){let t=e.s,n=()=>t.questions()[e.index],r=()=>{let e=n();return e?.kind===`ask`?e.ask:null},i=D(()=>{let e=r();if(!e){let e=Object.entries(t.draft()?.mix??{}).map(([e,t])=>`${e} · ${t}'s`);return t.mixAnswered()?e.join(`, `)||`none`:null}let n=gt(t.answerOf(e)).map(t=>e.options.find(e=>e.id===t)?.label??t),i=t.otherOf(e);return i!==void 0&&n.push(`“${i}”`),n.length?n.join(`, `):t.noteOf(e)===void 0?null:`a note`}),a=()=>{let e=r();return e?t.flagged().includes(e.id):!1},o=()=>{let e=r();return e?!!t.overridden()[e.id]:!1};return I(R,{get when(){return i()},get fallback(){return(()=>{var n=Wr();return U(n,()=>`Question ${e.index+1} of ${e.total}`,null),U(n,I(R,{get when(){return a()},get children(){var e=Kr();return U(e,()=>` · your pick is gone in v${t.latest()}`),e}}),null),n})()},get children(){return[(()=>{var t=Wr();return U(t,()=>`${e.index+1} of ${e.total} · `),t})(),(()=>{var e=Gr();return U(e,()=>`picked: ${i()}`),T(()=>e.classList.toggle(`ovr`,!!o())),e})()]}})}function ui(e,t,n){let r=e.mock();if(!r)return null;let i=Et(t,r,e.activeState()),a=e=>e?e.surfaces.findIndex(e=>e.kind===`html`):-1;if(n.variant){let t=e.variants().find(e=>e.state===i&&e.variant===n.variant),r=a(t);return!t||r<0?null:{src:nt(t.postId,r,{version:e.frameVersionOf(t),mode:Dn()}),variant:t,state:i}}if(n.set&&Object.keys(n.set).length){let t=e.variantFor(i,!1),r=a(t);return!t||r<0?null:{src:nt(t.postId,r,{version:e.frameVersionOf(t),mode:Dn(),knobs:n.set}),variant:t,state:i}}return null}function di(e){let t=e.s,n=()=>t.mock(),r=()=>t.overridden()[e.ask.id],i=n=>gt(t.answerOf(e.ask)).includes(n.id),a=t=>`${e.ask.id}:${t.id}`,[o,s]=C(0),c=(e,t)=>e.variant?{key:a(e),variant:e.variant,state:t}:e.set?{key:a(e),knobs:e.set}:null;function l(n,r){if(Xe())return;let i=oi();if(!i&&t.preview()?.key!==a(n)){t.setPreview(c(n,r));return}t.pick(e.ask,n.id),t.setPreview(null),!(!i||e.ask.multi)&&(W().window.clearTimeout(o()),s(W().window.setTimeout(()=>{if(t.mode()!==`questions`||t.cur()!==e.index||!gt(t.answerOf(e.ask)).includes(n.id))return;let r=t.nextStop(e.index);r!==null&&t.goQuestion(r)},ai)))}return(()=>{var o=Jr(),s=o.firstChild,u=s.nextSibling,d=u.nextSibling;return U(s,()=>Ot(e.ask,n())),U(o,I(R,{get when(){return r()},get children(){var n=qr(),i=n.firstChild;return U(n,()=>`Mix uses ${r()}'s ${e.ask.part} instead · `,i),i.$$click=()=>t.undoMix(e.ask.part),n}}),u),U(u,()=>e.ask.text),U(d,I(L,{get each(){return e.ask.options},children:r=>{let o=()=>ui(t,e.ask,r),s=()=>Et(e.ask,n(),t.activeState()),u=()=>{let n=o();return!n||e.ask.scope!==`part`?null:Jt(t.reports[zt(n.state,n.variant.variant)],e.ask.part)??null},d=()=>I(hi,{get picture(){return z(()=>!!o())()?I(In,{class:`crop`,fit:!0,get src(){return o().src},get focus(){return u()}}):null},get label(){return r.label},get on(){return i(r)},get previewing(){return t.preview()?.key===a(r)},get data(){return r.id},onEnter:()=>t.setPreview(c(r,s())),onLeave:()=>t.preview()?.key===a(r)&&t.setPreview(null),onChoose:()=>l(r,s())}),f=()=>{if(!vt(e.ask)||e.ask.answer===void 0||!r.variant)return[];let n=t.variants().filter(e=>e.variant===r.variant);return n.length&&n.every(e=>e.status===`archived`)?n.map(e=>e.state):[]};return I(R,{get when(){return f().length},get fallback(){return d()},get children(){var e=Xr();return U(e,d,null),U(e,I(R,{get when(){return!Xe()},get children(){var e=Yr();return e.$$click=()=>void t.restoreVariant(r.variant,f()),T(()=>V(e,`aria-label`,`Restore ${r.label}`)),e}}),null),T(()=>V(e,`data-archived`,r.variant)),e}})}}),null),U(d,I(hi,{picture:null,label:`Other…`,other:!0,get on(){return t.otherTicked(e.ask)},previewing:!1,data:`other`,onEnter:()=>t.setPreview(null),onLeave:()=>{},onChoose:()=>!Xe()&&t.pick(e.ask,null)}),null),U(o,I(R,{get when(){return t.otherTicked(e.ask)},get children(){return I(pi,{class:`other-text`,label:`Your answer`,get value(){return t.otherOf(e.ask)??``},placeholder:`none of these fit? say what would`,get focus(){return t.otherOf(e.ask)===void 0},onInput:n=>t.setOther(e.ask,n)})}}),null),U(o,I(fi,{s:t,get ask(){return e.ask}}),null),o})()}function fi(e){let t=e.s,[n,r]=C(!1),i=()=>n()||t.noteOf(e.ask)!==void 0;return I(R,{get when(){return i()},get fallback(){return I(R,{get when(){return!Xe()},get children(){var e=Zr();return e.$$click=()=>r(!0),e}})},get children(){return I(pi,{class:`ask-note`,label:`Note`,get value(){return t.noteOf(e.ask)??``},placeholder:`e.g. Table on desktop, Cards on mobile`,get focus(){return z(()=>!!n())()&&t.noteOf(e.ask)===void 0},onInput:n=>t.setNote(e.ask,n)})}})}function pi(e){return(()=>{var t=Qr(),n=t.firstChild,r=n.nextSibling;return U(n,()=>e.label),r.$$input=t=>e.onInput(t.currentTarget.value),ze(t=>e.focus&&queueMicrotask(()=>t.focus()),r),T(n=>{var i=`asktext ${e.class}`,a=e.placeholder,o=Xe();return i!==n.e&&Ie(t,n.e=i),a!==n.t&&V(r,`placeholder`,n.t=a),o!==n.a&&(r.readOnly=n.a=o),n},{e:void 0,t:void 0,a:void 0}),T(()=>r.value=e.value),t})()}function mi(e){let t=e.s,n=()=>t.lookPick()??``,r=e=>{let n=n=>t.variants().some(t=>t.state===n&&t.variant===e.variant&&t.parts.includes(e.part));return n(t.activeState())?t.activeState():t.states().find(n)??t.activeState()},i=(e,n)=>{let r=t.variants().find(t=>t.state===n&&t.variant===e),i=r?r.surfaces.findIndex(e=>e.kind===`html`):-1;return!r||i<0?null:nt(r.postId,i,{version:t.frameVersionOf(r),mode:Dn()})};function a(e,n,r){if(!Xe()){if(!oi()&&t.preview()?.key!==e)return r();n(),t.setPreview(null)}}let o=()=>t.mixAnswered()&&!Object.keys(t.draft()?.mix??{}).length;return(()=>{var e=$r(),s=e.firstChild.nextSibling.nextSibling;return U(s,I(hi,{get picture(){return z(()=>!!i(n(),t.activeState()))()?I(In,{class:`crop`,fit:!0,get src(){return i(n(),t.activeState())}}):null},get label(){return`No, all ${n()}`},get on(){return o()},get previewing(){return t.preview()?.key===`mix:none`},data:`none`,onEnter:()=>t.setPreview(null),onLeave:()=>{},onChoose:()=>a(`mix:none`,()=>t.toggleMix(null),()=>t.setPreview({key:`mix:none`}))}),null),U(s,I(L,{get each(){return t.mixOpts()},children:e=>{let n=`mix:${e.part}:${e.variant}`,o=()=>r(e),s=()=>t.setPreview({key:n,variant:e.variant,state:o()}),c=()=>i(e.variant,o()),l=()=>Jt(t.reports[zt(o(),e.variant)],e.part)??null;return I(hi,{get picture(){return z(()=>!!c())()?I(In,{class:`crop`,fit:!0,get src(){return c()},get focus(){return l()}}):null},get label(){return`${e.part} · ${e.variant}'s`},get on(){return t.draft()?.mix[e.part]===e.variant},get previewing(){return t.preview()?.key===n},get data(){return`${e.part}:${e.variant}`},onEnter:s,onLeave:()=>t.preview()?.key===n&&t.setPreview(null),onChoose:()=>a(n,()=>t.toggleMix(e),s)})}}),null),e})()}function hi(e){return(()=>{var t=ti(),n=t.firstChild;return t.$$click=()=>e.onChoose(),t.addEventListener(`pointerleave`,t=>t.pointerType===`mouse`&&e.onLeave()),t.addEventListener(`pointerenter`,t=>t.pointerType===`mouse`&&e.onEnter()),U(t,()=>e.picture,n),U(n,()=>e.label),U(t,I(R,{get when(){return e.on},get children(){return ei()}}),null),T(n=>{var r=!!e.on,i=!e.picture,a=!!e.other,o=!!e.previewing,s=e.on,c=e.data;return r!==n.e&&t.classList.toggle(`on`,n.e=r),i!==n.t&&t.classList.toggle(`pill`,n.t=i),a!==n.a&&t.classList.toggle(`other`,n.a=a),o!==n.o&&t.classList.toggle(`previewing`,n.o=o),s!==n.i&&V(t,`aria-pressed`,n.i=s),c!==n.n&&V(t,`data-option`,n.n=c),n},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0}),t})()}function gi(e){let t=e.s,[n,r]=C(``),i=e=>{let i=t.activeVariant();if(!i)return;let a=n().trim();t.send({decision:{kind:e,state:i.state,variant:i.variant},...a?{text:a}:{}}),r(``)};return(()=>{var e=ii(),a=e.firstChild,o=a.nextSibling;return U(a,()=>t.mock()?.title),U(o,()=>`No questions on this one. Decide on ${t.activeVariant()?.variant??`it`}:`),U(e,I(R,{get when(){return!Xe()},get children(){return[(()=>{var e=ni(),t=e.firstChild.nextSibling;return t.$$input=e=>r(e.currentTarget.value),T(()=>t.value=n()),e})(),(()=>{var e=ri(),n=e.firstChild,r=n.nextSibling,a=r.nextSibling;return n.$$click=()=>i(`accept`),r.$$click=()=>i(`revise`),a.$$click=()=>i(`drop`),T(e=>{var i=t.sending(),o=t.sending(),s=t.sending();return i!==e.e&&(n.disabled=e.e=i),o!==e.t&&(r.disabled=e.t=o),s!==e.a&&(a.disabled=e.a=s),e},{e:void 0,t:void 0,a:void 0}),e})()]}}),null),U(e,I(R,{get when(){return t.error()},get children(){var e=Vr();return U(e,()=>t.error()),e}}),null),e})()}Fe([`click`,`input`]);var _i=B(`<div class=thread>`),vi=B(`<div class=tempty>Nothing here yet.`),yi=B(`<div class=clines>`),bi=B(`<div class=tnotes>`),xi=B(`<div class=tquote>`),Si=B(`<div class=tdelivered><span class=tick>`),Ci=B(`<div><div class=tmeta></div><div class=ttext>`),wi=B(`<div class=cline><span class=cwhere>`),Ti=B(`<div class=tnote data-note><span class=cwhere>`),Ei=B(`<label class="up-text-row tcomment"><span class=up-text-label>Comment</span><input class=up-text-input placeholder="to the agent…">`);function Di(e){return D(()=>{let t=e.mock();return t?Wt(e.comments(),e.variants(),t):[]})}function Oi(e){let t=Di(e.s);return E(()=>{t();let n=e.scroller();n&&requestAnimationFrame(()=>n.scrollTop=n.scrollHeight)}),(()=>{var n=_i();return U(n,I(R,{get when(){return t().length},get fallback(){return vi()},get children(){return I(L,{get each(){return t()},children:e=>(()=>{var t=Ci(),n=t.firstChild,r=n.nextSibling;return U(n,()=>`${e.who} · ${Gt(e.at)}`),U(r,()=>e.text),U(t,I(R,{get when(){return e.comments?.length},get children(){var t=yi();return U(t,I(L,{get each(){return e.comments},children:e=>(()=>{var t=wi(),n=t.firstChild;return U(n,()=>e.where),U(t,()=>` “${e.text}”`,null),t})()})),t}}),null),U(t,I(R,{get when(){return e.notes?.length},get children(){var t=bi();return U(t,I(L,{get each(){return e.notes},children:e=>(()=>{var t=Ti(),n=t.firstChild;return U(n,()=>e.ask),U(t,()=>`note: ${e.text}`,null),t})()})),t}}),null),U(t,I(R,{get when(){return e.quote},get children(){var t=xi();return U(t,()=>e.quote),t}}),null),U(t,I(R,{get when(){return e.who===`you`},get children(){var t=Si(),n=t.firstChild;return U(n,()=>e.delivered?`✓✓`:`✓`),U(t,()=>e.delivered?`Delivered`:`Not seen yet`,null),T(()=>t.classList.toggle(`ok`,!!e.delivered)),t}}),null),T(n=>{var r=`trow ${e.who}`,i=e.id;return r!==n.e&&Ie(t,n.e=r),i!==n.t&&V(t,`data-row`,n.t=i),n},{e:void 0,t:void 0}),t})()})}}),null),U(n,I(R,{get when(){return!Xe()},get children(){return I(ki,{get s(){return e.s}})}}),null),n})()}function ki(e){let t=e.s,[n,r]=C(!1),i=async()=>{let e=t.threadText().trim();!e||n()||(r(!0),await t.postComment(e),r(!1))};return(()=>{var e=Ei(),r=e.firstChild.nextSibling;return r.$$keydown=e=>e.key===`Enter`&&void i(),r.$$input=e=>t.setThreadText(e.currentTarget.value),T(()=>r.disabled=n()),T(()=>r.value=t.threadText()),e})()}Fe([`input`,`keydown`]);var Ai=B(`<svg class=up-select-chevron viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M6 9.5L12 15.5L18 9.5">`),ji=B(`<div class=up-select-dropdown role=listbox>`),Mi=B(`<div class=up-comp-row><div class=up-comp-wrap><button type=button class="up-select-trigger up-comp-trigger"aria-haspopup=listbox><span class=up-select-label>Component</span><span class=up-select-right><span class=up-select-value></span></span></button></div><button type=button class=nav title="Previous component">‹</button><button type=button class=nav title="Next component">›`),Ni=B(`<i class=dot aria-label=tuned>`),Pi=B(`<i class=up-select-check>`),Fi=B(`<button type=button role=option class=up-select-option><span class=up-comp-opt>`),Ii=B(`<button type=button class=lnk>`),Li=B(`<div class=usage>`),Ri=B(`<div class=tune-knobs>`),zi=B(`<div class=up-note>`),Bi=B(`<hr class=up-rule>`),Vi=B(`<div class=clines>`),Hi=B(`<label class=up-text-row><span class=up-text-label>Comment</span><input class=up-text-input>`),Ui=B(`<section class=up-group><button type=button class=up-group-hd><span>`),Wi=B(`<div class=cline>`),Gi=e=>(()=>{var t=Ai();return T(()=>t.classList.toggle(`up-select-chevron-open`,!!e.open)),t})();function Ki(e,t){return(e.mock()?.parts??[]).filter(e=>e.parts.some(e=>e.name===t)).map(e=>e.state)}function qi(e,t){if(e.selectPart(t.part),t.part===null)return;let n=Ki(e,t.part);n.length&&!n.includes(e.activeState())&&e.showState(n[0])}function Ji(e){let t=e.s,n=e.t,[r,i]=C(!1),a,o,s=()=>n.components().findIndex(e=>e.part===n.current()?.part),c=e=>{let r=n.components(),i=r[s()<0?e>0?0:r.length-1:s()+e];i&&qi(t,i)};return N(()=>{let e=e=>{let t=e.target;r()&&!a.contains(t)&&!o?.contains(t)&&i(!1)};Je().addEventListener(`pointerdown`,e,!0),P(()=>Je().removeEventListener(`pointerdown`,e,!0))}),(()=>{var e=Mi(),l=e.firstChild,u=l.firstChild,d=u.firstChild.nextSibling,f=d.firstChild,p=l.nextSibling,m=p.nextSibling;return u.$$keydown=e=>{if(e.key===`ArrowDown`||e.key===`ArrowRight`)c(1);else if(e.key===`ArrowUp`||e.key===`ArrowLeft`)c(-1);else return;e.preventDefault()},u.$$click=()=>i(!r()),ze(e=>a=e,u),U(f,()=>n.current()?.label??`none`),U(d,I(Gi,{get open(){return r()}}),null),U(l,I(R,{get when(){return r()},get children(){var e=ji();return ze(e=>o=e,e),U(e,I(L,{get each(){return n.components()},children:e=>(()=>{var r=Fi(),a=r.firstChild;return r.$$click=()=>{i(!1),qi(t,e)},U(a,()=>e.label,null),U(a,I(R,{get when(){return n.tunedIn(e)},get children(){return Ni()}}),null),U(r,I(R,{get when(){return e.part===n.current()?.part},get children(){return Pi()}}),null),T(t=>{var i=e.part===n.current()?.part,a=e.part===n.current()?.part,o=e.part??``;return i!==t.e&&V(r,`aria-selected`,t.e=i),a!==t.t&&r.classList.toggle(`up-select-option-selected`,t.t=a),o!==t.a&&V(r,`data-part`,t.a=o),t},{e:void 0,t:void 0,a:void 0}),r})()})),e}}),null),p.$$click=()=>c(-1),m.$$click=()=>c(1),T(e=>{var t=!!r(),i=r(),a=!n.components().length,o=s()===0,c=s()>=n.components().length-1;return t!==e.e&&u.classList.toggle(`up-select-trigger-open`,e.e=t),i!==e.t&&V(u,`aria-expanded`,e.t=i),a!==e.a&&(u.disabled=e.a=a),o!==e.o&&(p.disabled=e.o=o),c!==e.i&&(m.disabled=e.i=c),e},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),e})()}function Yi(e){let t=e.s,n=e.t,[r,i]=C(!1),[a,o]=C(``),s=()=>n.current()?.part??null,c=D(()=>{let e=s();return e?Ki(t,e):[]}),l=D(()=>(t.draft()?.comments??[]).filter(e=>e.part===s())),u=()=>{let e=a().trim();e&&(t.addComment(s(),t.activeState(),e),o(``))};return[I(R,{get when(){return z(()=>!!(s()!==null&&c().length))()&&t.states().length>1},get children(){var e=Li();return U(e,I(R,{get when(){return c().length===t.states().length},get fallback(){return[z(()=>c().length===1?`Only in `:`In `),I(L,{get each(){return c()},children:(e,n)=>[z(()=>z(()=>n()>0)()?n()===c().length-1?` and `:`, `:``),(()=>{var n=Ii();return n.$$click=()=>t.showState(e),U(n,e),n})()]}),`.`]},get children(){return[`Same in `,(()=>{var e=Ii();return e.$$click=()=>{let e=t.states();t.showState(e[(e.indexOf(t.activeState())+1)%e.length])},U(e,()=>`all ${t.states().length} states`),e})(),`.`]}})),e}}),(()=>{var e=Ri();return ze(e=>t.setTuneHost(e),e),e})(),I(R,{get when(){return!n.current()?.paths.length},get children(){var e=zi();return U(e,(()=>{var e=z(()=>s()===null);return()=>e()?`No page-wide knobs.`:`No knobs on ${s()}.`})()),e}}),Bi(),(()=>{var e=Ui(),t=e.firstChild,n=t.firstChild;return t.$$click=()=>i(!r()),U(n,(()=>{var e=z(()=>!!l().length);return()=>e()?`Comments · ${l().length}`:`Comments`})()),U(t,I(Gi,{}),null),U(e,I(R,{get when(){return!r()},get children(){return[I(R,{get when(){return l().length},get children(){var e=Vi();return U(e,I(L,{get each(){return l()},children:e=>(()=>{var t=Wi();return U(t,()=>e.text),t})()})),e}}),(()=>{var e=Hi(),t=e.firstChild.nextSibling;return t.$$keydown=e=>e.key===`Enter`&&u(),t.$$input=e=>o(e.currentTarget.value),T(()=>V(t,`placeholder`,`on ${s()??`the page`}…`)),T(()=>t.value=a()),e})()]}}),null),T(e=>{var n=!!r(),i=!r();return n!==e.e&&t.classList.toggle(`up-group-shut`,e.e=n),i!==e.t&&V(t,`aria-expanded`,e.t=i),e},{e:void 0,t:void 0}),e})()]}Fe([`click`,`keydown`,`input`]);var Xi=()=>({w:W().window.innerWidth,h:W().window.innerHeight}),Zi=S(()=>{let[e,t]=C(Xi());return W().window.addEventListener(`resize`,()=>t(Xi())),e}),Qi=()=>Zi().w<900,$i=B(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round>`),ea=B(`<svg><path></svg>`,!1,!0,!1),ta=B(`<i class=dot aria-label="open questions">`),na=B(`<i class=dot aria-label=tuned>`),ra=B(`<span class=n>`),ia=B(`<button type=button role=tab class=up-mode>`),aa=B(`<aside class=up-shell aria-label=Panel><div class=up-header><span class=up-header-title></span><div class=up-header-right><span class=tcount></span><span class=up-header-btn aria-hidden=true></span></div></div><div class=up-tabs-wrap><div class=up-tabs><div class=up-modes role=tablist></div></div></div><div class=up-content>`),oa=B(`<div class=up-select-dropdown role=listbox>`),sa=B(`<div class=up-preset-bar><button type=button class=up-preset-add title="Save as preset"aria-label="Save as preset"></button><div class=up-preset-wrap><button type=button class=up-preset-trigger aria-label=Preset aria-haspopup=listbox><span></span></button></div><button type=button class=up-copy-btn title="Copy what you tuned, for the agent">`),ca=B(`<i class=up-select-check>`),la=B(`<button type=button role=option class=up-select-option><span>`),ua=B(`<button type=button class=sheet-handle><i>`),da=e=>(()=>{var t=$i();return U(t,()=>e.d.map(e=>(()=>{var t=ea();return V(t,`d`,e),t})())),t})(),fa=[`M8 6C8 4.34 9.34 3 11 3h2c1.66 0 3 1.34 3 3v1H8V6Z`,`M16 5h1c1.66 0 3 1.34 3 3v10c0 1.66-1.34 3-3 3H7c-1.66 0-3-1.34-3-3V8c0-1.66 1.34-3 3-3h1`];function pa(e){let t=e.s,[n,r]=C(),[i,a]=C(!1),[o,s]=C(!1),c=Di(t),l=()=>Object.keys(t.draft()?.tuned??{}).length,u=async()=>{let e=sn(t.draft()?.tuned??{});try{await W().window.navigator.clipboard?.writeText(e)}catch{return}a(!0),W().window.setTimeout(()=>a(!1),1400)},d=(e,n)=>(()=>{var r=ia();return r.$$click=()=>{Qi()&&s(!0),t.mode()!==e&&t.setMode(e)},V(r,`data-mode`,e),U(r,n,null),U(r,I(R,{get when(){return e===`questions`&&t.owed().length>0},get children(){return ta()}}),null),U(r,I(R,{get when(){return e===`tune`&&l()>0},get children(){return na()}}),null),U(r,I(R,{when:e===`thread`,get children(){var e=ra();return U(e,()=>c().length),e}}),null),T(n=>{var i=t.mode()===e,a=t.mode()===e;return i!==n.e&&r.classList.toggle(`up-mode-active`,n.e=i),a!==n.t&&V(r,`aria-selected`,n.t=a),n},{e:void 0,t:void 0}),r})();return(()=>{var a=aa(),c=a.firstChild,f=c.firstChild,p=f.nextSibling.firstChild,m=p.nextSibling,h=c.nextSibling,g=h.firstChild,_=g.firstChild,v=h.nextSibling;return U(a,I(R,{get when(){return Qi()},get children(){return I(ha,{get open(){return o()},setOpen:s})}}),c),U(f,()=>t.mock()?.title),U(p,()=>`${l()} tuned`),U(m,I(da,{d:[`M4 7h9`,`M17 7h3`,`M4 17h3`,`M11 17h9`,`M15 5v4`,`M9 15v4`]})),U(a,I(ma,{s:t,get copied(){return i()},onCopy:()=>void u()}),h),U(_,()=>d(`questions`,`Questions`),null),U(_,I(R,{get when(){return z(()=>!Qi())()&&t.tuneShown()},get children(){return d(`tune`,`Tune`)}}),null),U(_,()=>d(`thread`,`Thread`),null),U(g,I(R,{get when(){return t.mode()===`tune`},get children(){return I(Ji,{s:t,get t(){return e.t}})}}),null),ze(r,v),U(v,I(Ae,{get children(){return[I(je,{get when(){return t.mode()===`questions`},get children(){return I(si,{s:t})}}),I(je,{get when(){return t.mode()===`tune`},get children(){return I(Yi,{s:t,get t(){return e.t}})}}),I(je,{get when(){return t.mode()===`thread`},get children(){return I(Oi,{s:t,scroller:n})}})]}})),T(e=>{var t=!!Qi(),n=!!(Qi()&&o()),r=l()>0;return t!==e.e&&a.classList.toggle(`sheet`,e.e=t),n!==e.t&&a.classList.toggle(`open`,e.t=n),r!==e.a&&p.classList.toggle(`on`,e.a=r),e},{e:void 0,t:void 0,a:void 0}),a})()}function ma(e){let t=e.s,[n,r]=C([]),[i,a]=C(null),[o,s]=C(!1),c;E(M(()=>t.mock()?.id,e=>{r(e?Rr(e):[]),a(null)})),N(()=>{let e=e=>{o()&&!c.contains(e.target)&&s(!1)};Je().addEventListener(`pointerdown`,e,!0),P(()=>Je().removeEventListener(`pointerdown`,e,!0))});let l=()=>{let e=t.mock()?.id;if(!e)return;let i=[...n(),{name:`preset ${n().length+1}`,tuned:{...t.draft()?.tuned}}];r(i),a(i.length-1),zr(e,i)},u=e=>{s(!1),a(e),t.replaceTuned(e===null?{}:n()[e]?.tuned??{})};return(()=>{var t=sa(),r=t.firstChild,a=r.nextSibling,d=a.firstChild,f=d.firstChild,p=a.nextSibling;return r.$$click=l,U(r,I(da,{d:[`M12 5v14M5 12h14`]})),ze(e=>c=e,a),d.$$click=()=>s(!o()),U(f,(()=>{var e=z(()=>i()===null);return()=>e()?`default`:n()[i()]?.name})()),U(d,I(Gi,{get open(){return o()}}),null),U(a,I(R,{get when(){return o()},get children(){var e=oa();return U(e,I(L,{get each(){return[null,...n().map((e,t)=>t)]},children:e=>(()=>{var t=la(),r=t.firstChild;return t.$$click=()=>u(e),U(r,()=>e===null?`default`:n()[e].name),U(t,I(R,{get when(){return i()===e},get children(){return ca()}}),null),T(n=>{var r=i()===e,a=i()===e;return r!==n.e&&t.classList.toggle(`up-select-option-selected`,n.e=r),a!==n.t&&V(t,`aria-selected`,n.t=a),n},{e:void 0,t:void 0}),t})()})),e}}),null),p.$$click=()=>e.onCopy(),U(p,I(da,{get d(){return e.copied?[`M5 12.5l4.5 4.5L19 7`]:fa}}),null),U(p,()=>e.copied?`Copied`:`Copy`,null),T(t=>{var n=o(),r=e.copied?``:void 0;return n!==t.e&&V(d,`aria-expanded`,t.e=n),r!==t.t&&V(p,`data-copied`,t.t=r),t},{e:void 0,t:void 0}),t})()}function ha(e){let t=0,n=0,r=e=>{t=e.clientY,n=0,e.currentTarget.setPointerCapture(e.pointerId)},i=e=>{e.buttons===0&&e.pointerType===`mouse`||(n=e.clientY-t)},a=()=>{Math.abs(n)<8?e.setOpen(!e.open):e.setOpen(n<0)};return(()=>{var t=ua();return t.$$pointerup=a,t.$$pointermove=i,t.$$pointerdown=r,T(n=>{var r=e.open?`Collapse panel`:`Expand panel`,i=e.open;return r!==n.e&&V(t,`aria-label`,n.e=r),i!==n.t&&V(t,`aria-expanded`,n.t=i),n},{e:void 0,t:void 0}),t})()}Fe([`click`,`pointerdown`,`pointermove`,`pointerup`]);var ga=Symbol(`store-raw`),_a=Symbol(`store-node`),va=Symbol(`store-has`),ya=Symbol(`store-self`);function ba(e){let t=e[s];if(!t&&(Object.defineProperty(e,s,{value:t=new Proxy(e,Oa)}),!Array.isArray(e))){let n=Object.keys(e),r=Object.getOwnPropertyDescriptors(e),i=Object.getPrototypeOf(e),a=i!==null&&typeof e==`object`&&!!e&&!Array.isArray(e)&&i!==Object.prototype;if(a){let e=Object.getOwnPropertyDescriptors(i);n.push(...Object.keys(e)),Object.assign(r,e)}for(let i=0,o=n.length;i<o;i++){let o=n[i];a&&o===`constructor`||r[o].get&&Object.defineProperty(e,o,{configurable:!0,enumerable:r[o].enumerable,get:r[o].get.bind(t)})}}return t}function xa(e){let t;return typeof e==`object`&&!!e&&(e[s]||!(t=Object.getPrototypeOf(e))||t===Object.prototype||Array.isArray(e))}function Sa(e,t=new Set){let n,r,i,a;if(n=e!=null&&e[ga])return n;if(!xa(e)||t.has(e))return e;if(Array.isArray(e)){Object.isFrozen(e)?e=e.slice(0):t.add(e);for(let n=0,a=e.length;n<a;n++)i=e[n],(r=Sa(i,t))!==i&&(e[n]=r)}else{Object.isFrozen(e)?e=Object.assign({},e):t.add(e);let n=Object.keys(e),o=Object.getOwnPropertyDescriptors(e);for(let s=0,c=n.length;s<c;s++)a=n[s],!o[a].get&&(i=e[a],(r=Sa(i,t))!==i&&(e[a]=r))}return e}function Ca(e,t){let n=e[t];return n||Object.defineProperty(e,t,{value:n=Object.create(null)}),n}function wa(e,t,n){if(e[t])return e[t];let[r,i]=C(n,{equals:!1,internal:!0});return r.$=i,e[t]=r}function Ta(e,t){let n=Reflect.getOwnPropertyDescriptor(e,t);return!n||n.get||!n.configurable||t===s||t===_a?n:(delete n.value,delete n.writable,n.get=()=>e[s][t],n)}function Ea(e){ee()&&wa(Ca(e,_a),ya)()}function Da(e){return Ea(e),Reflect.ownKeys(e)}var Oa={get(e,t,n){if(t===ga)return e;if(t===s)return n;if(t===c)return Ea(e),n;let r=Ca(e,_a),i=r[t],a=i?i():e[t];if(t===_a||t===va||t===`__proto__`)return a;if(!i){let n=Object.getOwnPropertyDescriptor(e,t);ee()&&(typeof a!=`function`||Object.prototype.hasOwnProperty.call(e,t))&&!(n&&n.get)&&(a=wa(r,t,a)())}return xa(a)?ba(a):a},has(e,t){return t===ga||t===s||t===c||t===_a||t===va||t===`__proto__`?!0:(ee()&&wa(Ca(e,va),t)(),t in e)},set(){return!0},deleteProperty(){return!0},ownKeys:Da,getOwnPropertyDescriptor:Ta};function ka(e,t,n,r=!1){if(t===`__proto__`||!r&&e[t]===n)return;let i=e[t],a=e.length;n===void 0?(delete e[t],e[va]&&e[va][t]&&i!==void 0&&e[va][t].$()):(e[t]=n,e[va]&&e[va][t]&&i===void 0&&e[va][t].$());let o=Ca(e,_a),s;if((s=wa(o,t,i))&&s.$(()=>n),Array.isArray(e)&&e.length!==a){for(let t=e.length;t<a;t++)(s=o[t])&&s.$();(s=wa(o,`length`,a))&&s.$(e.length)}(s=o[ya])&&s.$()}function Aa(e,t){let n=Object.keys(t);for(let r=0;r<n.length;r+=1){let i=n[r];ja(i)||ka(e,i,t[i])}}function ja(e){return e===`__proto__`||e===`constructor`||e===`prototype`}function Ma(e,t){if(typeof t==`function`&&(t=t(e)),t=Sa(t),Array.isArray(t)){if(e===t)return;let n=0,r=t.length;for(;n<r;n++){let r=t[n];e[n]!==r&&ka(e,n,r)}ka(e,`length`,r)}else Aa(e,t)}function Na(e,t,n=[]){let r,i=e;if(t.length>1){r=t.shift();let a=typeof r,o=Array.isArray(e);if(a===`string`&&(r===`__proto__`||t.length>1&&ja(r)))return;if(Array.isArray(r)){for(let i=0;i<r.length;i++)Na(e,[r[i]].concat(t),n);return}else if(o&&a===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&Na(e,[i].concat(t),n);return}else if(o&&a===`object`){let{from:i=0,to:a=e.length-1,by:o=1}=r;for(let r=i;r<=a;r+=o)Na(e,[r].concat(t),n);return}else if(t.length>1){Na(e[r],t,[r].concat(n));return}i=e[r],n=[r].concat(n)}let a=t[0];typeof a==`function`&&(a=a(i,n),a===i)||r===void 0&&a==null||(a=Sa(a),r===void 0||xa(i)&&xa(a)&&!Array.isArray(a)?Aa(i,a):ka(e,r,a))}function Pa(...[e,t]){let n=Sa(e||{}),r=Array.isArray(n),i=ba(n);function a(...e){A(()=>{r&&e.length===1?Ma(n,e[0]):Na(n,e)})}return[i,a]}var Fa=B(`<details class=json-node><summary><span class=json-key>`),Ia=B(`<div class=json-leaf><span class=json-key></span><span>`);function La(e){let t=()=>e.depth??0,n=()=>e.name===void 0?``:`${e.name}: `,r=()=>e.data,i=()=>r()!==null&&typeof r()==`object`,a=()=>Array.isArray(r())?r().map((e,t)=>[String(t),e]):Object.entries(r());return I(R,{get when(){return i()},get fallback(){return(()=>{var e=Ia(),t=e.firstChild,i=t.nextSibling;return U(t,n),U(i,()=>JSON.stringify(r())),T(()=>Ie(i,`json-${r()===null?`null`:typeof r()}`)),e})()},get children(){var e=Fa(),i=e.firstChild,o=i.firstChild;return U(o,n),U(i,(()=>{var e=z(()=>!!Array.isArray(r()));return()=>e()?`[${a().length}]`:`{${a().length}}`})(),null),U(e,I(L,{get each(){return a()},children:([e,n])=>I(La,{data:n,name:e,get depth(){return t()+1}})}),null),T(()=>e.open=t()<2),e}})}var Ra=B(`<div class=vpop role=menu style=top:40px>`),za=B(`<button type=button role=menuitem class=vrow><span class=vv></span><span class=vmeta></span><span class=vby>`);function Ba(e){let t=e.s,n,r=()=>t.activeVariant(),i=D(()=>{let e=r();return e?(e.history??[{version:e.version,at:e.updatedAt,prompt:e.prompt,author:e.author}]).slice().sort((e,t)=>t.version-e.version):[]}),a=()=>r()?t.frameVersionOf(r()):0;N(()=>{let r=Je(),i=e=>{e.key===`Escape`&&t.setVersionsOpen(!1)},a=r=>{let i=r.target;!n.contains(i)&&!e.anchor?.contains(i)&&t.setVersionsOpen(!1)};r.addEventListener(`keydown`,i),r.addEventListener(`pointerdown`,a,!0),P(()=>{r.removeEventListener(`keydown`,i),r.removeEventListener(`pointerdown`,a,!0)})});let o=()=>Math.max(0,(e.anchor?.offsetLeft??120)-8);return(()=>{var e=Ra();return ze(e=>n=e,e),U(e,I(L,{get each(){return i()},children:e=>(()=>{var n=za(),i=n.firstChild,o=i.nextSibling,s=o.nextSibling;return n.$$click=()=>t.viewOld(e.version===r()?.version?t.latest():e.version),U(i,()=>`v${e.version}`),U(o,()=>[Gt(e.at),e.prompt||(e.version===1?`first version`:``)].filter(Boolean).join(` · `)),U(s,()=>e.author??`agent`),T(t=>{var i=e.version===r()?.version,o=e.version===a(),s=e.version;return i!==t.e&&n.classList.toggle(`cur`,t.e=i),o!==t.t&&n.classList.toggle(`on`,t.t=o),s!==t.a&&V(n,`data-version`,t.a=s),t},{e:void 0,t:void 0,a:void 0}),n})()})),T(t=>H(e,`left`,`${o()}px`)),e})()}Fe([`click`]);var Va=B(`<div class=banner><b></b><span class=sep>·</span><button type=button></button><span class=sep>·</span><button type=button>`),Ha=B(`<div class=banner><b></b><span class=sep>·</span><button type=button>view</button><span class=banner-note>`),Ua=B(`<div class=stagewrap><div class=stage><div class=layers><div class=layers-sizer>`),Wa=B(`<span class=stage-state>`),Ga=B(`<div class=variant-switch role=tablist aria-label=Variant>`),Ka=B(`<button type=button class=markbtn title="Mark: click the stage to leave a comment there (Esc to stop)"><svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="M12 21s-6-5.6-6-11a6 6 0 0 1 12 0c0 5.4-6 11-6 11Z"></path><circle cx=12 cy=10 r=2></circle></svg>Mark`),qa=B(`<div class=stage-head><b class=stage-title></b><span class=grow>`),Ja=B(`<button type=button class=vbtn aria-haspopup=menu>`),Ya=B(`<span class=vok aria-label=accepted>✓`),Xa=B(`<button type=button role=tab>`),Za=B(`<button type=button class=vrestore>restore`),Qa=B(`<div class=pins>`),$a=B(`<button type=button class=pin>`),eo=B(`<div class=frame><div class=frame-scale>`),to=B(`<div class=surface>`),no=B(`<iframe sandbox=allow-scripts>`),ro=B(`<figcaption>`),io=B(`<figure class="surface surface-image"><img>`),ao=B(`<div class="surface surface-json">`),oo=B(`<div class="surface surface-gone">`),so=B(`<div class=overlay>`),co=B(`<div class=spot>`),lo=B(`<button type=button class="pin mark">`),uo=B(`<span class="pin mark pending"aria-hidden=true>`),fo=B(`<div class=markfield style=width:260px><div class=markfield-hd></div><input class=up-text-input placeholder="Comment, for the agent…">`),po=B(`<div><span class=lbl>`),mo=(e,t=0)=>typeof e==`number`&&Number.isFinite(e)?e:t,ho=200,go=(e,t=ho)=>String(e??``).slice(0,t),_o=4e3,vo=500,yo=e=>{try{let t=new URL(String(e));return t.protocol===`http:`||t.protocol===`https:`?t.href:null}catch{return null}};function bo(e){if(!Array.isArray(e.parts))return null;let t=e.scroll??{},n=e.viewport??{};return{version:mo(e.version),width:mo(n.w,820)||820,height:mo(e.height),scroll:{x:mo(t.x),y:mo(t.y)},parts:e.parts.slice(0,200).flatMap(e=>{if(!e||typeof e!=`object`)return[];let t=e.box??{},n=go(e.name);return n?[{name:n,label:go(e.label)||n,box:{x:mo(t.x),y:mo(t.y),w:mo(t.w),h:mo(t.h)},visible:e.visible===!0,depth:mo(e.depth),order:mo(e.order)}]:[]})}}var xo=52,So=44;function Co(e){let t=e.s,{reports:n,setReports:r}=t,[i,a]=Pa({}),[o,s]=Pa({}),c=new Map,l=Rt(),[u,d]=C(),[f,p]=C(null),m=()=>t.states().length>1,h=()=>t.viewVersion()!==null||t.boundVersion()!==null,g=D(()=>{let e=Qi()?Zi().w-24:Zi().w-48-380-12;return Math.max(Qi()?.1:.3,Math.min(1,e/820))}),_=D(()=>Zi().h-xo-(Qi()?120:48)-(m()?56:0)-So-(h()?32:0)-2),v=D(()=>t.variants().filter(e=>e.status!==`archived`||e===t.variantFor(e.state))),y=D(()=>v().map(e=>zt(e.state,e.variant)),[],{equals:(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n])}),b=e=>v().find(t=>zt(t.state,t.variant)===e),x=D(()=>{let e=t.activeVariant();return e?zt(e.state,e.variant):``});function S(e){for(let[t,n]of c)if(n.key===e&&n.primary)return t;return null}function w(e,t){S(e)?.contentWindow?.postMessage({...t,__mockpit:!0},`*`)}let O=e=>{let n=e.data;if(!n||typeof n!=`object`||n.__mockpit!==!0)return;let i;for(let[t,n]of c)t.contentWindow===e.source&&(i=n);if(i){if(n.type===`resize`)a(`${i.key}#${i.index}`,Math.max(1,Math.min(mo(n.height),2e4)));else if(n.type===`parts`&&i.primary){if(!Bt(i.version,n.version))return;let e=bo(n);e&&r(i.key,e)}else if(n.type===`hit`&&i.primary&&i.key===x()){let e=l.resolve(n.ref),r=n.part==null?null:go(n.part);e===`hover`?t.setHoverPart(r):e===`click`?t.selectPart(r):e===`mark`&&k(n.ref,{part:r})}else if(n.type===`hit-test-result`&&i.primary&&i.key===x()){let e=Array.isArray(n.rect)?n.rect.slice(0,4).map(e=>mo(e)):[];k(n.ref,{selector:go(n.path,vo)||void 0,quote:go(n.text)||void 0,rect:e.length===4?e:void 0})}else if(i.key===x())if(n.type===`send-prompt`){let e=go(n.text,_o).trim();e&&!Xe()&&t.prefill(e)}else if(n.type===`open-link`){let e=yo(n.url);e&&W().window.open(e,`_blank`,`noopener`)}else n.type===`copy`&&W().window.navigator.clipboard?.writeText(go(n.text,_o)).catch(()=>{})}};function k(e,t){let n=f();n&&n.ref===e&&p({...n,...t})}W().window.addEventListener(`message`,O),P(()=>W().window.removeEventListener(`message`,O)),E(M([()=>t.hoverPart(),x],([e,t])=>{w(t,e?{type:`highlight`,parts:[e]}:{type:`clear`})})),E(M(x,(e,n)=>{n&&w(n,{type:`clear`}),t.setHoverPart(null),l.leave(),p(null)})),E(()=>{t.marking()||p(null)}),N(()=>{let e=e=>{e.key!==`Escape`||!t.marking()||(f()?p(null):t.setMarking(!1))};Je().addEventListener(`keydown`,e),P(()=>Je().removeEventListener(`keydown`,e))});let A=()=>o[x()]??640,j=()=>Math.min(A()*g(),Math.max(200,_()));return(()=>{var e=Ua(),a=e.firstChild,m=a.firstChild,h=m.firstChild;return U(a,I(wo,{s:t,anchor:d}),m),U(a,I(R,{get when(){return t.viewVersion()!==null},get children(){var e=Va(),n=e.firstChild,r=n.nextSibling.nextSibling,i=r.nextSibling.nextSibling;return U(n,()=>`Viewing v${t.viewVersion()}`),r.$$click=()=>t.backToLatest(),U(r,()=>`↶ back to v${t.latest()}`),i.$$click=()=>void t.restoreViewed(),U(i,()=>`restore as v${t.latest()+1}`),e}}),m),U(a,I(R,{get when(){return z(()=>t.viewVersion()===null)()&&t.boundVersion()!==null},get children(){var e=Ha(),n=e.firstChild,r=n.nextSibling.nextSibling,i=r.nextSibling;return U(n,()=>`v${t.latest()} arrived`),r.$$click=()=>t.viewNewVersion(),U(i,()=>`your answers stay on v${t.boundVersion()} until you do`),e}}),m),U(m,I(L,{get each(){return y()},children:e=>I(R,{get when(){return b(e)},children:a=>I(Do,{s:t,get variant(){return a()},get active(){return e===x()},get scale(){return g()},get capH(){return _()/g()},get report(){return n[e]},heights:i,frames:c,refs:l,post:t=>w(e,t),get pending(){return f()},setPending:p,onContent:t=>s(e,t),onReload:()=>r(e,void 0),get height(){return o[e]??640}})})}),null),U(e,I(To,{s:t}),null),U(e,I(R,{get when(){return t.versionsOpen()},get children(){return I(Ba,{s:t,get anchor(){return u()}})}}),null),T(n=>{var r=`${820*g()}px`,i=t.viewVersion()!==null,o=`${j()}px`,s=`${A()*g()}px`;return r!==n.e&&H(e,`width`,n.e=r),i!==n.t&&a.classList.toggle(`old`,n.t=i),o!==n.a&&H(m,`height`,n.a=o),s!==n.o&&H(h,`height`,n.o=s),n},{e:void 0,t:void 0,a:void 0,o:void 0}),e})()}function wo(e){let t=e.s,n=()=>t.activeVariant(),r=()=>t.variants().filter(e=>e.state===t.activeState());return(()=>{var i=qa(),a=i.firstChild,o=a.nextSibling;return U(a,()=>t.mock()?.title),U(i,I(R,{get when(){return t.activeState()!==null},get children(){var e=Wa();return U(e,()=>t.activeState()),e}}),o),U(i,I(R,{get when(){return n()},children:n=>(()=>{var r=Ja();r.$$click=e=>{e.stopPropagation(),t.setVersionsOpen(!t.versionsOpen())};var i=e.anchor;return typeof i==`function`?ze(i,r):e.anchor=r,U(r,()=>`v${t.frameVersionOf(n())} ▾`),T(()=>V(r,`aria-expanded`,t.versionsOpen())),r})()}),o),U(i,I(R,{get when(){return z(()=>!t.look())()&&r().length>1},get children(){var e=Ga();return U(e,I(L,{get each(){return r()},children:e=>[(()=>{var r=Xa();return r.$$click=()=>t.chooseVariant(e.variant),U(r,()=>e.variant,null),U(r,I(R,{get when(){return e.status===`accepted`},get children(){return Ya()}}),null),T(t=>{var i=e.variant===n()?.variant,a=e.variant===n()?.variant,o=e.status===`archived`,s=e.variant,c=e.status===`archived`?`${e.variant} · archived`:void 0;return i!==t.e&&V(r,`aria-selected`,t.e=i),a!==t.t&&r.classList.toggle(`on`,t.t=a),o!==t.a&&r.classList.toggle(`arch`,t.a=o),s!==t.o&&V(r,`data-variant`,t.o=s),c!==t.i&&V(r,`title`,t.i=c),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),r})(),I(R,{get when(){return z(()=>e.status===`archived`)()&&!Xe()},get children(){var n=Za();return n.$$click=()=>void t.restoreVariant(e.variant,[e.state]),T(()=>V(n,`aria-label`,`Restore ${e.variant}`)),n}})]})),e}}),null),U(i,I(R,{get when(){return!Xe()},get children(){var e=Ka();return e.$$click=()=>t.setMarking(!t.marking()),T(n=>{var r=!!t.marking(),i=t.marking();return r!==n.e&&e.classList.toggle(`on`,n.e=r),i!==n.t&&V(e,`aria-pressed`,n.t=i),n},{e:void 0,t:void 0}),e}}),null),i})()}function To(e){let t=e.s,n=D(()=>dn(t.questions().flatMap((e,n)=>{if(e.kind!==`ask`)return[];let r=e.ask;return r.scope===`mock`||r.scope===`state`&&r.state===t.activeState()?[{index:n,x:-10,y:-10}]:[]})));return(()=>{var e=Qa();return U(e,I(ke,{get each(){return n()},children:e=>I(Eo,{s:t,get index(){return e().index},get style(){return{left:`${e().x}px`,top:`${e().y}px`}}})})),e})()}function Eo(e){let t=e.s,n=()=>t.questions()[e.index],r=()=>{let e=n();return e?.kind===`ask`?e.ask:null},i=()=>{let e=r();return e?t.answerOf(e)!==void 0:!1},a=()=>{let e=r();return e?t.overridden()[e.id]:void 0},o=()=>t.mode()===`questions`&&t.cur()===e.index;return(()=>{var n=$a();return n.$$click=n=>{n.stopPropagation(),t.goQuestion(e.index)},U(n,(()=>{var t=z(()=>!!i());return()=>t()?`✓`:String(e.index+1)})()),T(t=>{var r=!!(i()&&!a()),s=!!(i()&&a()),c=!!o(),l=e.style,u=`Question ${e.index+1}${a()?` · overridden by Mix`:``}`,d=e.index+1;return r!==t.e&&n.classList.toggle(`ok`,t.e=r),s!==t.t&&n.classList.toggle(`ovr`,t.t=s),c!==t.a&&n.classList.toggle(`cur`,t.a=c),t.o=Re(n,l,t.o),u!==t.i&&V(n,`title`,t.i=u),d!==t.n&&V(n,`data-question`,t.n=d),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0}),n})()}function Do(e){let t=e.s,n=()=>zt(e.variant.state,e.variant.variant),r=D(()=>t.frameVersionOf(e.variant)),i=()=>r()===e.variant.version,a=()=>Tt(e.variant,r())?.surfaceKinds??e.variant.surfaces.map(e=>e.kind),o=()=>a().indexOf(`html`),s,c,[l,u]=C(0);N(()=>{let t=()=>{e.onContent(s.offsetHeight),c&&u(c.offsetTop)},n=new ResizeObserver(t);n.observe(s),t(),P(()=>n.disconnect())}),E(M(r,()=>e.onReload(),{defer:!0}));let d=``;E(()=>{let n=t.mock(),r=e.report?.version;if(!n||r===void 0)return;let i={...Ht(n,e.variant.knobs,t.draft()),...e.active?t.preview()?.knobs??{}:{}},a=`${r}|${JSON.stringify(i)}`;a===d||!Object.keys(i).length||(d=a,e.post({type:`knobs`,values:i}))});let f=(t,i)=>{e.frames.set(t,{key:n(),index:i,primary:i===o(),version:r()}),P(()=>e.frames.delete(t))};E(()=>{let t=r(),i=o();for(let r of e.frames.values())r.key===n()&&(r.version=t,r.primary=r.index===i)});let p=t=>{let r=e.heights[`${n()}#${t}`];return t===o()?Math.min(r??640,Math.max(160,e.capH)):r??160};return(()=>{var n=eo(),u=n.firstChild;return ze(e=>s=e,u),U(u,I(L,{get each(){return a()},children:(t,n)=>{let a=()=>e.variant.surfaces[n()];if(lt(t)){let i=n()===o(),a=()=>nt(e.variant.postId,n(),{version:r(),mode:Dn()});return(()=>{var r=to();return ze(e=>i&&(c=e),r),U(r,I(R,{get when(){return a()},keyed:!0,children:r=>(()=>{var i=no();return ze(e=>f(e,n()),i),V(i,`src`,r),V(i,`width`,820),T(r=>{var a=`${e.variant.variant} ${t}`,o=p(n()),s=e.active?0:-1;return a!==r.e&&V(i,`title`,r.e=a),o!==r.t&&V(i,`height`,r.t=o),s!==r.a&&V(i,`tabindex`,r.a=s),r},{e:void 0,t:void 0,a:void 0}),i})()})),r})()}let s=a();return t===`image`&&i()&&s?.kind===`image`?(()=>{var e=io(),t=e.firstChild;return U(e,I(R,{get when(){return s.caption},get children(){var e=ro();return U(e,()=>s.caption),e}}),null),T(e=>{var n=rt(s.assetId),r=s.alt??``;return n!==e.e&&V(t,`src`,e.e=n),r!==e.t&&V(t,`alt`,e.t=r),e},{e:void 0,t:void 0}),e})():t===`json`&&i()&&s?.kind===`json`?(()=>{var e=ao();return U(e,I(La,{get data(){return s.data}})),e})():(()=>{var e=oo();return U(e,()=>`${t} (v${r()})`),e})()}})),U(n,I(R,{get when(){return z(()=>!!e.active)()&&o()>=0},get children(){return I(Oo,{s:t,get report(){return e.report},get scale(){return e.scale},get top(){return l()*e.scale},get height(){return p(o())*e.scale},get refs(){return e.refs},get post(){return e.post},get pending(){return e.pending},get setPending(){return e.setPending}})}}),null),T(t=>{var r=!!e.active,i=`${e.height*e.scale}px`,a=e.variant.state??``,o=e.variant.variant,s=!e.active,c=`scale(${e.scale})`;return r!==t.e&&n.classList.toggle(`on`,t.e=r),i!==t.t&&H(n,`height`,t.t=i),a!==t.a&&V(n,`data-state`,t.a=a),o!==t.o&&V(n,`data-variant`,t.o=o),s!==t.i&&V(n,`aria-hidden`,t.i=s),c!==t.n&&H(u,`transform`,t.n=c),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0}),n})()}function Oo(e){let t=e.s,n,r=t=>{let n=e.report,r=e.scale;return{x:(t.box.x-n.scroll.x)*r,y:(t.box.y-n.scroll.y)*r,w:t.box.w*r,h:t.box.h*r}},i=t=>t?e.report?.parts.filter(e=>e.name===t&&e.visible).sort((e,t)=>t.depth-e.depth||e.order-t.order)[0]:void 0,a=t=>{let r=e.report,i=n.getBoundingClientRect();return{x:(t.clientX-i.left)/e.scale+r.scroll.x,y:(t.clientY-i.top)/e.scale+r.scroll.y}},o=(t,n)=>{e.report&&e.post({type:`hit`,ref:n,...a(t)})},s=t=>{let n=e.report;if(!n||e.pending)return;let r=a(t),i=e.refs.mark(),o=[Math.max(0,Math.min(1,r.x/n.width)),Math.max(0,Math.min(1,r.y/Math.max(1,n.height)))];e.setPending({ref:i,...r,offset:o}),e.post({type:`hit`,ref:i,...r}),e.post({type:`hit-test`,ref:i,x:o[0],y:o[1]})},c=(t,n)=>{let r=e.report;return{x:(t-r.scroll.x)*e.scale,y:(n-r.scroll.y)*e.scale}},l=D(()=>hn(t.draft()?.comments??[],t.activeState(),e.report)),u=n=>{let r=e.pending,i=e.report;if(!r||!i)return;let a=r.part??null,o=Jt(i,a),s=o?[o.x,o.y,o.w,o.h]:r.rect?[r.rect[0]*i.width,r.rect[1]*i.height,r.rect[2]*i.width,r.rect[3]*i.height]:[r.x,r.y,0,0];t.addComment(a,t.activeState(),n,{offset:r.offset,...r.selector?{selector:r.selector}:{},...r.quote?{quote:r.quote}:{},box:s.map(e=>Math.round(e*10)/10)}),e.setPending(null)},d=t=>{t.preventDefault(),e.post({type:`scroll`,dx:t.deltaX/e.scale,dy:t.deltaY/e.scale})};N(()=>{n.addEventListener(`wheel`,d,{passive:!1}),P(()=>n.removeEventListener(`wheel`,d))});let f=D(()=>e.report?dn(t.questions().flatMap((t,n)=>{if(t.kind!==`ask`||t.ask.scope!==`part`||!t.ask.part)return[];let a=i(t.ask.part);return a?[{index:n,...ln(r(a),820*e.scale)}]:[]})):[]),p=e=>{let t=i(e);return t?{p:t,r:r(t)}:null};return(()=>{var r=so();return r.$$click=n=>t.marking()?s(n):o(n,e.refs.click()),r.addEventListener(`pointerleave`,()=>{e.refs.leave(),t.setHoverPart(null)}),r.$$pointermove=t=>o(t,e.refs.hover()),ze(e=>n=e,r),U(r,I(R,{get when(){return e.report},get children(){return[I(R,{get when(){return p(t.focusPart())},children:e=>(()=>{var t=co();return T(n=>{var r=`${e().r.x-6}px`,i=`${e().r.y-6}px`,a=`${e().r.w+12}px`,o=`${e().r.h+12}px`;return r!==n.e&&H(t,`left`,n.e=r),i!==n.t&&H(t,`top`,n.t=i),a!==n.a&&H(t,`width`,n.a=a),o!==n.o&&H(t,`height`,n.o=o),n},{e:void 0,t:void 0,a:void 0,o:void 0}),t})()}),I(R,{get when(){return z(()=>t.hoverPart()!==t.stagePart())()&&p(t.hoverPart())},children:e=>I(Ao,{get b(){return e()},cls:`hov`})}),I(R,{get when(){return p(t.stagePart())},children:e=>I(Ao,{get b(){return e()},cls:`sel`})}),I(ke,{get each(){return f()},children:e=>I(Eo,{s:t,get index(){return e().index},get style(){return{left:`${e().x}px`,top:`${e().y}px`}}})}),I(ke,{get each(){return l()},children:e=>{let n=()=>c(e().x,e().y);return(()=>{var r=lo();return r.$$click=n=>{n.stopPropagation(),t.selectPart(e().part)},U(r,()=>String(e().n)),T(t=>{var i=!!e().moved,a=`${n().x-11}px`,o=`${n().y-11}px`,s=`${e().part??`page`}: ${e().text}${e().moved?` · may have moved`:``}`,c=e().n;return i!==t.e&&r.classList.toggle(`moved`,t.e=i),a!==t.t&&H(r,`left`,t.t=a),o!==t.a&&H(r,`top`,t.a=o),s!==t.o&&V(r,`title`,t.o=s),c!==t.i&&V(r,`data-mark`,t.i=c),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),r})()}}),I(R,{get when(){return e.pending},children:r=>I(ko,{get n(){return gn(t.draft()?.comments??[])},get at(){return c(r().x,r().y)},get width(){return n.clientWidth},get height(){return e.height},get where(){return z(()=>r().part===void 0)()?``:r().part??`page`},onSave:u})})]}})),T(n=>{var i=!!t.marking(),a=`${e.top}px`,o=`${e.height}px`;return i!==n.e&&r.classList.toggle(`marking`,n.e=i),a!==n.t&&H(r,`top`,n.t=a),o!==n.a&&H(r,`height`,n.a=o),n},{e:void 0,t:void 0,a:void 0}),r})()}function ko(e){let[t,n]=C(``),r=()=>Math.max(4,Math.min(e.at.x+16,e.width-260-4)),i=()=>e.at.y+16+76<e.height,a=()=>Math.max(4,i()?e.at.y+16:e.at.y-16-76),o=()=>{let n=t().trim();n&&e.onSave(n)};return[(()=>{var t=uo();return U(t,()=>String(e.n)),T(n=>{var r=`${e.at.x-11}px`,i=`${e.at.y-11}px`;return r!==n.e&&H(t,`left`,n.e=r),i!==n.t&&H(t,`top`,n.t=i),n},{e:void 0,t:void 0}),t})(),(()=>{var i=fo(),s=i.firstChild,c=s.nextSibling;return i.$$pointermove=e=>e.stopPropagation(),i.$$click=e=>e.stopPropagation(),U(s,(()=>{var t=z(()=>!!e.where);return()=>t()?`Mark ${e.n} · ${e.where}`:`Mark ${e.n}`})()),c.$$keydown=e=>{e.key===`Enter`&&o()},c.$$input=e=>n(e.currentTarget.value),ze(e=>queueMicrotask(()=>e.focus()),c),T(t=>{var n=`${r()}px`,o=`${a()}px`,s=`Comment for mark ${e.n}`;return n!==t.e&&H(i,`left`,t.e=n),o!==t.t&&H(i,`top`,t.t=o),s!==t.a&&V(c,`aria-label`,t.a=s),t},{e:void 0,t:void 0,a:void 0}),T(()=>c.value=t()),i})()]}function Ao(e){let t=()=>e.b.r.y<22;return(()=>{var n=po(),r=n.firstChild;return U(r,()=>e.b.p.label),T(r=>{var i=`box ${e.cls}`,a=!!t(),o=e.b.p.name,s=`${e.b.r.x-2}px`,c=`${e.b.r.y-2}px`,l=`${e.b.r.w+4}px`,u=`${e.b.r.h+4}px`;return i!==r.e&&Ie(n,r.e=i),a!==r.t&&n.classList.toggle(`edge`,r.t=a),o!==r.a&&V(n,`data-part`,r.a=o),s!==r.o&&H(n,`left`,r.o=s),c!==r.i&&H(n,`top`,r.i=c),l!==r.n&&H(n,`width`,r.n=l),u!==r.s&&H(n,`height`,r.s=u),r},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0}),n})()}Fe([`click`,`pointermove`,`input`,`keydown`]);var jo=300,Mo=4e3;function No(e,t){let[n,r]=C(null),[i,a]=C(!1),[o,s]=C([]),[c,l]=C(null),[u,d]=C(null),[f,p]=C({}),[m,h]=C(null),[g,_]=C(`questions`),[v,y]=C(0),[b,x]=C(null),[S,w]=C(null),[T,O]=C(null),[k,j]=C(null),[M,N]=C(!1),[ee,te]=C(!1),[ne,re]=C(null),[ie,ae]=C(!1),[F,oe]=C(!1),[se,ce]=C([]),[le,ue]=C({}),[de,fe]=C(!1),[pe,me]=C(null),[he,ge]=C(!1),[_e,ve]=C(``),[ye,be]=C(null),[xe,Se]=Pa({}),Ce=D(()=>n()?.variants??[]),we=D(()=>{let e=n();return e&&e.states.length?e.states:[null]}),Te=D(()=>Ct(Ce())),Ee=D(()=>{let e=c();return e&&!mt(e)&&e.version<Te()?e.version:null}),De=D(()=>k()??Ee()??Te()),I=D(()=>{let e=n();return e?[...e.asks,...St(e,Ce())]:[]}),Oe=e=>({...e,asks:I()}),L=D(()=>yt({asks:I()})),ke=e=>{let t=c();return!!le()[e.id]||!!t&&(t.answers[e.id]!==void 0||t.others[e.id]!==void 0)},R=e=>ke(e)?c()?.answers[e.id]:e.answer,Ae=e=>ke(e)?c()?.others[e.id]:e.other,je=e=>!!le()[e.id]||Ae(e)!==void 0,z=e=>c()?.notes[e.id]??e.note,Me=D(()=>{let e=L();if(!e)return null;let t=gt(R(e))[0];return e.options.find(e=>e.id===t)?.variant??null}),Ne=e=>Ce().filter(t=>t.state===e);function Pe(e,t=!0){let n=Ne(e),r=e=>e?n.find(t=>t.variant===e):void 0,i=t?m():null;return(i&&(i.state===void 0||i.state===e)?r(i.variant):void 0)??r(Me())??r(f()[String(e)])??n.find(e=>e.status===`accepted`)??n.find(e=>e.status===`open`)??n[0]}let B=D(()=>Pe(u())),Fe=D(()=>{let e=n();return e?jt(Oe(e),Ce(),Me(),(e,t)=>xe[zt(e,t)]):[]}),V=D(()=>{if(!n())return[];let e=I().map(e=>({kind:`ask`,ask:e}));return L()&&Me()&&Fe().length&&e.push({kind:`mix`}),e}),Ie=D(()=>{let e=n();return e?qt(Oe(e),c()):[]}),Le=D(()=>{let e=n();return!!e&&on(e,Ne(u()))}),Re=D(()=>{let e=n(),t={};for(let n of e?.asks??[])n.answer!==void 0&&(t[n.id]=n.answer);return Object.assign(t,c()?.answers??{}),{knobs:{...e?.knobs,...B()?.knobs},asks:e?.asks??[],answers:t,tuned:c()?.tuned??{}}}),H=D(()=>{if(g()!==`questions`)return null;let e=V()[v()];return e?.kind===`ask`&&e.ask.scope===`part`?e.ask.part??null:null}),ze=D(()=>g()===`tune`?b():T()??H()),U=D(()=>{let e=n(),t=c();return e&&t?Nt(I(),t.answers,t.mix):{}}),Be=0,Ve=0,He=null;async function Ue(){let e=n(),t=He;if(He=null,W().window.clearTimeout(Be),!(!e||!t))try{await tt.putDraft(e.id,t)}catch(e){me(e instanceof Error?e.message:String(e))}}function We(e){let t=c()??ft(Ee()??Te()),n=e({...t,answers:{...t.answers},mix:{...t.mix},tuned:{...t.tuned},comments:[...t.comments],others:{...t.others},notes:{...t.notes}});A(()=>{l(n),te(!1),me(null)}),He=n,Ve=Date.now(),W().window.clearTimeout(Be),Be=W().window.setTimeout(Ue,jo)}let Ge=null;async function Ke(){return Ge||(Ge=(await tt.mocks(e)).mocks.find(e=>e.slug===t)?.id??null,Ge)}async function qe(){let e=await Ke();if(!e){a(!0);return}let t=await tt.mock(e);A(()=>{r(t),a(!1),we().includes(u())||d(we()[0])})}async function Je(){let e=await Ke();if(!e)return;let{draft:t}=await tt.draft(e).catch(()=>({draft:null}));Date.now()-Ve<1500||He||l(t?{version:t.version,answers:t.answers,mix:t.mix,tuned:t.tuned,comments:t.comments,others:t.others??{},notes:t.notes??{}}:null)}async function Ye(){let e=await Ke();if(!e)return;let{comments:t}=await tt.comments(e);s(t)}async function Xe(){if(await qe(),await Promise.all([Je(),Ye()]),!n())return;let e=Ie()[0],t=e?V().findIndex(t=>t.kind===`ask`&&t.ask.id===e.id):0;rt(Math.max(0,t),{history:!1})}let Ze=Po({mock:qe,draft:Je,comments:Ye}),Qe=at(e=>{let t=Ge;switch(e.type){case`mock-created`:case`mock-updated`:e.id===t&&Ze(`mock`);break;case`mock-deleted`:e.id===t&&a(!0);break;case`post-created`:case`post-updated`:case`post-deleted`:e.mockId===t&&Ze(`mock`);break;case`draft-updated`:e.mockId===t&&Ze(`draft`);break;case`comment-created`:e.mockId===t&&Ze(`comments`);break;case`comment-deleted`:case`comment-delivered`:(e.sessionId===n()?.sessionId||o().some(t=>t.sessionId===e.sessionId))&&Ze(`comments`);break;case`theme-changed`:jn(e.mode===`light`?`light`:`dark`);break}},()=>{Ge&&(Ze(`mock`),Ze(`draft`),Ze(`comments`))});P(()=>{Qe(),He&&Ue()});let $e=()=>({mockpit:`mock`,state:u(),mode:g(),cur:v(),view:k()});function et(e){let t=W().history;e?t.replaceState($e(),``):t.pushState($e(),``)}function nt(e){if(!e||typeof e!=`object`||e.mockpit!==`mock`)return!1;let t=e;return A(()=>{d(t.state),_(t.mode),y(t.cur),j(t.view),h(null),N(!1)}),!0}function rt(e,t={}){let r=V()[e],i=n();A(()=>{y(e),_(`questions`),O(null),h(null),r&&i&&(r.kind===`ask`&&d(Et(r.ask,i,u())),r.kind===`ask`&&r.ask.scope===`part`&&r.ask.part&&x(r.ask.part))}),t.history===!1?et(!0):et(!1)}function it(e){if(e===`questions`)return rt(v());A(()=>{_(e),h(null),O(null)}),et(!1)}function ot(e){A(()=>{d(e),h(null)}),et(!0)}function st(e){p({...f(),[String(u())]:e})}function ct(e){x(e),Qi()?O(e):e&&g()!==`tune`&&it(`tune`)}E(()=>{g()===`tune`&&(Qi()||n()&&!Le())&&_(`questions`)});function lt(e){let t=V();for(let n=1;n<=t.length;n++){let r=(e+n)%t.length,i=t[r];if(i.kind===`ask`&&Ie().some(e=>e.id===i.ask.id))return r}return t.length-1===e?null:t.length-1}function ut(e,t){let n=!1;We(r=>{let i=_t(r,e,t,!!le()[e.id]);n=i.otherOpen;let a=i.draft;if(t!==null&&L()?.id===e.id){let n=e.options.find(e=>e.id===t)?.variant;for(let e of Object.keys(a.mix))a.mix[e]===n&&delete a.mix[e]}return a}),ue({...le(),[e.id]:n}),ce(se().filter(t=>t!==e.id))}function dt(e,t){We(n=>(t.trim()?(n.others[e.id]=t,e.multi||delete n.answers[e.id]):delete n.others[e.id],n)),ue({...le(),[e.id]:!0})}function pt(e,t){We(n=>(t.trim()?n.notes[e.id]=t:delete n.notes[e.id],n))}function ht(e){We(t=>(e?t.mix[e.part]===e.variant?delete t.mix[e.part]:t.mix[e.part]=e.variant:t.mix={},t)),fe(!0)}let vt=()=>de()||Object.keys(c()?.mix??{}).length>0;function bt(e){We(t=>(delete t.mix[e],t))}function xt(e,t,n,r){We(i=>(i.comments.push(r?{part:e,state:t,text:n,anchor:r}:{part:e,state:t,text:n}),i))}function Tt(e){ve(e),ge(!1),g()!==`thread`&&it(`thread`)}async function Dt(e){let t=n();if(!t)return!1;try{return await tt.comment(t.id,e),ve(``),await Ye(),!0}catch(e){return me(e instanceof Error?e.message:String(e)),!1}}async function Ot(e,t){let r=n();if(r)try{for(let n of t)await tt.restoreVariant(r.id,n,e);await qe()}catch(e){me(e instanceof Error?e.message:String(e))}}function kt(e,t){We(n=>(t===void 0?delete n.tuned[e]:n.tuned[e]=t,n))}function At(e){We(t=>(t.tuned={...e},t))}let Mt=D(()=>{let e=ne();return!ee()||!e?null:o().find(t=>t.id===e)?.delivered??!1}),Pt=()=>ie()&&Mt()===!1,Ft=0;P(()=>W().window.clearTimeout(Ft));async function It(e={}){let t=n();if(!t||F())return;await Ue();let i=c()??ft(De());oe(!0);try{let{reply:n}=await tt.reply(t.id,{...i,...e}),[a]=await Promise.all([tt.mock(t.id).catch(()=>null),Ye().catch(()=>{})]);A(()=>{a&&r(a),l(null),te(!0),re(n.id),ae(!1),_(`thread`),h(null),O(null)}),fe(!1),ue({}),et(!0),W().window.clearTimeout(Ft),Ft=W().window.setTimeout(()=>ae(!0),Mo)}catch(e){me(e instanceof Error?e.message:String(e))}finally{oe(!1)}}function Rt(e){N(!1);let t=e>=Te()?null:e;t!==k()&&(j(t),et(!1))}function Bt(){j(null),et(!1)}async function Vt(){let e=n(),t=B();if(!(!e||!t))try{await tt.restoreVersion(e.id,t.postId,wt(t,De())),Bt(),await qe()}catch(e){me(e instanceof Error?e.message:String(e))}}function Ht(){let e=n(),t=c();if(!e||!t)return;let r=Lt(t,Oe(e),Ce(),Te());We(()=>r.draft),ce(r.flagged)}let Ut=e=>nt(e.state);return W().window.addEventListener(`popstate`,Ut),P(()=>W().window.removeEventListener(`popstate`,Ut)),Xe(),{project:e,slug:t,mock:n,missing:i,comments:o,draft:c,variants:Ce,states:we,latest:Te,boundVersion:Ee,stageVersion:De,look:L,lookPick:Me,answerOf:R,otherOf:Ae,otherTicked:je,noteOf:z,setOther:dt,setNote:pt,tuneShown:Le,variantFor:Pe,activeVariant:B,activeState:u,showState:ot,chooseVariant:st,preview:m,setPreview:h,mode:g,setMode:it,cur:v,goQuestion:rt,nextStop:lt,questions:V,owed:Ie,overridden:U,mixOpts:Fe,mixAnswered:vt,selectedPart:b,selectPart:ct,focusPart:H,stagePart:ze,hoverPart:S,setHoverPart:w,viewVersion:k,viewOld:Rt,backToLatest:Bt,restoreViewed:Vt,viewNewVersion:Ht,versionsOpen:M,setVersionsOpen:N,sent:ee,sentDelivered:Mt,nudgeAgent:Pt,sending:F,flagged:se,error:pe,setError:me,pick:ut,toggleMix:ht,undoMix:bt,addComment:xt,marking:he,setMarking:ge,threadText:_e,setThreadText:ve,prefill:Tt,postComment:Dt,restoreVariant:Ot,setTuned:kt,replaceTuned:At,knobContext:Re,send:It,tuneHost:ye,setTuneHost:be,reports:xe,setReports:Se,frameVersionOf:e=>wt(e,De())}}function Po(e){let t=new Map;return n=>{t.has(n)||t.set(n,W().window.setTimeout(()=>{t.delete(n),e[n]().catch(()=>{})},60))}}var Fo=B(`<div class=stripwrap><div class=cap></div><div class=strip role=tablist aria-label="UI states">`),Io=B(`<button type=button role=tab>`);function Lo(e){let t=e.s;return I(R,{get when(){return t.states().length>1},get children(){var e=Fo(),n=e.firstChild,r=n.nextSibling;return U(n,()=>`showing ${t.states().length} UI states`),U(r,I(L,{get each(){return t.states()},children:e=>(()=>{var n=Io();return n.$$click=()=>t.showState(e),U(n,e),T(r=>{var i=e===t.activeState(),a=e===t.activeState();return i!==r.e&&V(n,`aria-selected`,r.e=i),a!==r.t&&n.classList.toggle(`on`,r.t=a),r},{e:void 0,t:void 0}),n})()})),e}})}Fe([`click`]);var Ro=(e,t=0,n=1)=>Math.max(t,Math.min(n,e)),zo=e=>(e%360+360)%360,Bo=(e,t)=>e.map(e=>e.reduce((e,n,r)=>e+n*t[r],0)),Vo=e=>Math.abs(e)<=.04045?e/12.92:Math.sign(e)*((Math.abs(e)+.055)/1.055)**2.4,Ho=e=>Math.abs(e)<=.0031308?12.92*e:Math.sign(e)*(1.055*Math.abs(e)**(1/2.4)-.055),Uo=[[.4123907993,.3575843394,.1804807884],[.2126390059,.7151686788,.0721923154],[.0193308187,.1191947798,.9505321522]],Wo=[[.4865709486,.2656676932,.1982172852],[.2289745641,.6917385218,.0792869141],[0,.0451133819,1.0439443689]],Go=[[3.2409699419,-1.5373831776,-.4986107603],[-.9692436363,1.8759675015,.0415550574],[.0556300797,-.2039769589,1.0569715142]],Ko=[[2.4934969119,-.9313836179,-.4027107845],[-.8294889696,1.7626640603,.0236246858],[.0358458302,-.0761723893,.956884524]];function qo(e,t=1,n=`srgb`){let[r,i,a]=Bo([[.819022438,.3619062601,-.1288737815],[.0329836539,.9292868616,.0361446664],[.0481771894,.2642395318,.6335478285]],Bo(n===`p3`?Wo:Uo,e.map(Vo))).map(Math.cbrt),o=.2104542553*r+.793617785*i-.0040720468*a,s=1.9779984951*r-2.428592205*i+.4505937099*a,c=.0259040371*r+.7827717662*i-.808675766*a,l=Math.hypot(s,c);return{l:Ro(o),c:l<1e-7?0:l,h:l<1e-7?0:zo(Math.atan2(c,s)*180/Math.PI),a:Ro(t)}}function Jo(e,t=`srgb`){let n=e.c*Math.cos(e.h*Math.PI/180),r=e.c*Math.sin(e.h*Math.PI/180),i=Bo([[1.2268798734,-.5578149966,.2813910502],[-.0405757626,1.1122868294,-.0717110667],[-.0763729497,-.421493324,1.5869240244]],[(e.l+.3963377774*n+.2158037573*r)**3,(e.l-.1055613458*n-.0638541728*r)**3,(e.l-.0894841775*n-1.291485548*r)**3]);return Bo(t===`p3`?Ko:Go,i).map(Ho)}function Yo(e,t=`srgb`){return Jo(e,t).every(e=>e>=-1e-5&&e<=1.00001)}function Xo(e,t=`srgb`){if(Yo(e,t))return e;let n=0,r=e.c;for(let i=0;i<20;i++){let i=(n+r)/2;Yo({...e,c:i},t)?n=i:r=i}return{...e,c:n}}var Zo=(e,t=4)=>Number(e.toFixed(t));function Qo(e,t){let n=e.a<1?` / ${Zo(e.a)}`:``;if(t===`oklch`)return`oklch(${Zo(e.l)} ${Zo(e.c)} ${Zo(e.h,2)}${n})`;let r=Jo(Xo(e,t===`p3`?`p3`:`srgb`),t===`p3`?`p3`:`srgb`);if(t===`p3`)return`color(display-p3 ${r.map(e=>Zo(Ro(e),5)).join(` `)}${n})`;let i=r.map(e=>Math.round(Ro(e)*255));return e.a<1&&i.push(Math.round(e.a*255)),`#`+i.map(e=>e.toString(16).padStart(2,`0`)).join(``)}var $o=/^[+-]?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?(%|deg|grad|rad|turn)?$/i;function es(e,t=1,n=!1){let r=e.match($o);if(!r)return null;let i=parseFloat(e);if(!Number.isFinite(i))return null;let a=r[1]?.toLowerCase();return n?a===`rad`?i*180/Math.PI:a===`turn`?i*360:a===`grad`?i*.9:!a||a===`deg`?i:null:a===`%`?i*t/100:a?null:i}function ts(e){let t=e.trim().toLowerCase();if(t===`transparent`)return{l:0,c:0,h:0,a:0};if(/^#(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$/.test(t)){let e=t.slice(1);e.length<=4&&(e=[...e].map(e=>e+e).join(``));let n=e.match(/../g).map(e=>parseInt(e,16)/255);return qo(n.slice(0,3),n[3]??1)}let n=t.match(/^(oklch|rgb|rgba|hsl|hsla|color)\(([^()]*)\)$/);if(!n)return null;let r=n[1],i=n[2].trim(),a=r===`color`;if(a){if(!i.startsWith(`display-p3 `))return null;i=i.slice(11).trim()}let o=i.includes(`,`);if(o&&(a||r===`oklch`||i.includes(`/`)))return null;let s=o?i.split(`,`).map(e=>e.trim()):i.split(/\s*\/\s*/);if(!o&&s.length>2)return null;let c=o?s.slice(0,3):s[0].split(/\s+/);if(c.length!==3||o&&s.length!==3&&s.length!==4||o&&r.startsWith(`rgb`)&&c.some(e=>e.endsWith(`%`))&&!c.every(e=>e.endsWith(`%`)))return null;let l=o?s[3]:s[1],u=l===void 0?1:es(l);if(u===null)return null;if(r===`oklch`){let e=es(c[0]),t=es(c[1],.4),n=es(c[2],1,!0);return e===null||t===null||n===null?null:{l:Ro(e),c:Math.max(0,t),h:zo(n),a:Ro(u)}}if(r.startsWith(`hsl`)){let e=es(c[0],1,!0),t=es(c[1]),n=es(c[2]);if(e===null||t===null||n===null||!c[1].endsWith(`%`)||!c[2].endsWith(`%`))return null;let r=Ro(t),i=Ro(n),a=r*Math.min(i,1-i),o=t=>{let n=(t+zo(e)/30)%12;return i-a*Math.max(-1,Math.min(n-3,9-n,1))};return qo([o(0),o(8),o(4)],u)}let d=c.map(e=>es(e,a?1:255));return d.some(e=>e===null)?null:qo(d.map(e=>a?e:Ro(e/255)),u,a?`p3`:`srgb`)}function ns({h:e,s:t,v:n}){let r=r=>{let i=(r+e/60)%6;return n-n*t*Math.max(0,Math.min(i,4-i,1))};return[r(5),r(3),r(1)]}function rs([e,t,n],r=1,i=0){let a=Math.max(e,t,n),o=a-Math.min(e,t,n),s=i;return o>1e-6&&(s=a===e?(t-n)/o%6:a===t?(n-e)/o+2:(e-t)/o+4,s=(s*60+360)%360),{h:s,s:a?o/a:0,v:a,a:r}}var is=e=>Math.round(Ro(e)*255),as=e=>is(e).toString(16).padStart(2,`0`);function os(e,t=!0){return`#`+ns(e).map(as).join(``)+(t&&e.a<1?as(e.a):``)}function ss(e,t){let n=ts(e);return n?rs(Jo(Xo(n)).map(e=>Ro(e)),n.a,t):null}function cs(e){let t=e.trim().toLowerCase();return t.startsWith(`oklch(`)?`oklch`:t.startsWith(`rgb`)?`rgb`:`hex`}function ls(e,t){if(t===`hex`)return os(e);let n=ns(e);if(t===`oklch`)return Qo(qo(n,e.a),`oklch`);let r=e.a<1?` / ${Number(e.a.toFixed(3))}`:``;return`rgb(${n.map(is).join(` `)}${r})`}function us(e){let t=qo(ns(e));return[t.l,t.c,t.h]}function ds(e,t,n,r){return rs(Jo(Xo({l:e,c:t,h:n,a:1})).map(e=>Ro(e)),r.a,r.h)}var fs=e=>{let[t,n,r]=e.map(e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4);return .2126*t+.7152*n+.0722*r};function ps(e,t){let n=ns(t),[r,i]=[fs(ns(e).map((t,r)=>t*e.a+n[r]*(1-e.a))),fs(n)].sort((e,t)=>t-e);return(r+.05)/(i+.05)}function ms(e){return e>=7?`AAA`:e>=4.5?`AA`:e>=3?`AA Large`:`Fail`}var hs=e=>/^\s*(linear|radial|conic)-gradient\(/i.test(e);function gs(e,t=!1){let n=[...e.stops].sort((e,t)=>e.pos-t.pos).map(e=>`${os(e.color)} ${Math.round(e.pos*1e3)/10}%`).join(`, `),r=e.interp===`srgb`?``:` in ${e.interp}`,i=Math.round(e.angle);return t?`linear-gradient(90deg${r}, ${n})`:e.type===`radial`?`radial-gradient(circle${r}, ${n})`:e.type===`conic`?`conic-gradient(from ${i}deg${r}, ${n})`:`linear-gradient(${i}deg${r}, ${n})`}var _s={top:0,right:90,bottom:180,left:270};function vs(e){let t=[],n=0,r=0;for(let i=0;i<e.length;i++){let a=e[i];a===`(`?n++:a===`)`?n--:a===`,`&&n===0&&(t.push(e.slice(r,i).trim()),r=i+1)}return t.push(e.slice(r).trim()),t}function ys(e){let t=e.trim().match(/^(linear|radial|conic)-gradient\(([\s\S]*)\)$/i);if(!t)return null;let n=t[1].toLowerCase(),r=vs(t[2]),i={type:n,angle:n===`linear`?180:0,interp:`srgb`,stops:[]},a=e=>{let t=e.match(/^(.*?)(?:\s+(-?[\d.]+)%)?$/),n=t&&ss(t[1]);return n?{color:n,pos:t[2]===void 0?null:Ro(parseFloat(t[2])/100)}:null};if(!a(r[0])){let e=r.shift().toLowerCase(),t=e.match(/\bin\s+(srgb|oklab|oklch)\b/);t&&(i.interp=t[1]);let n=e.match(/(-?[\d.]+)deg/);n&&(i.angle=(parseFloat(n[1])%360+360)%360);let a=e.match(/\bto\s+(top|right|bottom|left)\b/);a&&(i.angle=_s[a[1]])}let o=r.map(a);return o.length<2||o.some(e=>!e)?null:(i.stops=o.map((e,t)=>({color:e.color,pos:e.pos??t/(o.length-1)})),i)}function bs(e){return{type:`linear`,angle:135,interp:`oklab`,stops:e.map((t,n)=>({pos:n/Math.max(1,e.length-1),color:ss(t)}))}}function xs(e,t){let n=[...e.stops].sort((e,t)=>e.pos-t.pos);if(t<=n[0].pos)return{...n[0].color};for(let e=1;e<n.length;e++){let r=n[e-1],i=n[e];if(t<=i.pos){let e=(t-r.pos)/(i.pos-r.pos||1),n=ns(r.color),a=ns(i.color);return rs(n.map((t,n)=>t+(a[n]-t)*e),r.color.a+(i.color.a-r.color.a)*e)}}return{...n[n.length-1].color}}var Ss=[[`Sakura`,`桜`,`#FEDFE1`],[`Momo`,`桃`,`#F596AA`],[`Kōbai`,`紅梅`,`#E16B8C`],[`Kurenai`,`紅`,`#CB1B45`],[`Akane`,`茜`,`#CB4042`],[`Benihi`,`紅緋`,`#F75C2F`],[`Sango`,`珊瑚`,`#F17C67`],[`Kaki`,`柿`,`#ED784A`],[`Kuchiba`,`朽葉`,`#E2943B`],[`Kohaku`,`琥珀`,`#CA7A2C`],[`Yamabuki`,`山吹`,`#FFB11B`],[`Kihada`,`黄蘗`,`#FBE251`],[`Uguisu`,`鶯`,`#6C6A2D`],[`Koke`,`苔`,`#838A2D`],[`Moegi`,`萌黄`,`#7BA23F`],[`Nae`,`苗`,`#86C166`],[`Wakatake`,`若竹`,`#5DAC81`],[`Tokiwa`,`常磐`,`#1B813E`],[`Rokushō`,`緑青`,`#24936E`],[`Mizu`,`水`,`#81C7D4`],[`Asagi`,`浅葱`,`#33A6B8`],[`Hanada`,`縹`,`#006284`],[`Ruri`,`瑠璃`,`#005CAF`],[`Ai`,`藍`,`#0D5661`],[`Kon`,`紺`,`#0F2540`],[`Benikake`,`紅掛花`,`#4E4F97`],[`Fuji`,`藤`,`#8B81C3`],[`Shion`,`紫苑`,`#8F77B5`],[`Murasaki`,`紫`,`#77428D`],[`Ebi`,`葡萄`,`#6D2E5B`],[`Sumi`,`墨`,`#1C1C1C`],[`Nezumi`,`鼠`,`#828282`],[`Rikyū`,`利休鼠`,`#707C74`],[`Ginnezu`,`銀鼠`,`#91989F`],[`Shironeri`,`白練`,`#FCFAF2`],[`Gofun`,`胡粉`,`#FFFFFB`],[`Kincha`,`金茶`,`#C7802D`],[`Kogane`,`黄金`,`#E9CD4C`],[`Tsuyukusa`,`露草`,`#2EA9DF`],[`Mizuasagi`,`水浅葱`,`#66BAB7`]],Cs=[[`Yozakura`,`夜桜`,[`#0F2540`,`#8B81C3`,`#FEDFE1`]],[`Asagiri`,`朝霧`,[`#FCFAF2`,`#A5DEE4`,`#66BAB7`]],[`Yūyake`,`夕焼け`,[`#4E4F97`,`#F75C2F`,`#FFB11B`]],[`Hinode`,`日の出`,[`#0F2540`,`#CB1B45`,`#FFB11B`]],[`Momiji`,`紅葉`,[`#6D2E5B`,`#CB4042`,`#E2943B`]],[`Wakaba`,`若葉`,[`#5DAC81`,`#86C166`,`#FBE251`]],[`Aizome`,`藍染`,[`#0F2540`,`#0D5661`,`#33A6B8`]],[`Fujinami`,`藤波`,[`#77428D`,`#8B81C3`,`#FEDFE1`]],[`Ume`,`梅`,[`#E16B8C`,`#FCFAF2`]],[`Tsuki`,`月`,[`#0F2540`,`#4E4F97`,`#E9CD4C`]],[`Hotaru`,`蛍`,[`#0B1013`,`#1B813E`,`#E9CD4C`]],[`Sumi-e`,`墨絵`,[`#1C1C1C`,`#828282`,`#FFFFFB`]],[`Kintsugi`,`金継ぎ`,[`#1C1C1C`,`#C7802D`,`#E9CD4C`]],[`Kohaku`,`琥珀`,[`#CA7A2C`,`#FFB11B`]],[`Shinkai`,`深海`,[`#08192D`,`#005CAF`,`#2EA9DF`]],[`Ajisai`,`紫陽花`,[`#4E4F97`,`#8F77B5`,`#F596AA`]],[`Matcha`,`抹茶`,[`#6C6A2D`,`#838A2D`,`#C5C56A`]],[`Sango`,`珊瑚`,[`#F17C67`,`#FEDFE1`]],[`Tokiwa`,`常磐`,[`#1B813E`,`#24936E`,`#66BAB7`]],[`Yuki`,`雪`,[`#FFFFFB`,`#DAE3EA`,`#91989F`]],[`Kitsune-bi`,`狐火`,[`#1C1C1C`,`#F75C2F`,`#FBE251`]],[`Rikyū`,`利休`,[`#707C74`,`#91989F`,`#FCFAF2`]],[`Hanabi`,`花火`,[`#0F2540`,`#CB1B45`,`#F596AA`,`#FBE251`]],[`Ruri-iro`,`瑠璃色`,[`#0F2540`,`#005CAF`,`#81C7D4`]],[`Sakura-fubuki`,`桜吹雪`,[`#FFFFFB`,`#FEDFE1`,`#F596AA`]],[`Kōyō`,`紅葉狩`,[`#E2943B`,`#CB4042`,`#77428D`]],[`Natsuzora`,`夏空`,[`#2EA9DF`,`#81C7D4`,`#FFFFFB`]],[`Kurenai-zome`,`紅染`,[`#6D2E5B`,`#CB1B45`,`#F17C67`]]],ws=[[`Red`,`#EF4444`],[`Orange`,`#F97316`],[`Yellow`,`#EAB308`],[`Green`,`#22C55E`],[`Cyan`,`#06B6D4`],[`Blue`,`#3B82F6`],[`Violet`,`#8B5CF6`],[`Pink`,`#EC4899`],[`Rose`,`#F43F5E`]],Ts=[[`Omolon`,[`#091E3A`,`#2F80ED`,`#2D9EE0`]],[`Farhan`,[`#9400D3`,`#4B0082`]],[`Purple`,[`#c84e89`,`#F15F79`]],[`Ibtesam`,[`#00F5A0`,`#00D9F5`]],[`Radioactive Heat`,[`#F7941E`,`#72C6EF`,`#00A651`]],[`The Sky And The Sea`,[`#F7941E`,`#004E8F`]],[`From Ice To Fire`,[`#72C6EF`,`#004E8F`]],[`Blue & Orange`,[`#FD8112`,`#0085CA`]],[`Purple Dream`,[`#bf5ae0`,`#a811da`]],[`Blu`,[`#00416A`,`#E4E5E6`]],[`Summer Breeze`,[`#fbed96`,`#abecd6`]],[`Ver`,[`#FFE000`,`#799F0C`]],[`Ver Black`,[`#F7F8F8`,`#ACBB78`]],[`Combi`,[`#00416A`,`#799F0C`,`#FFE000`]],[`Anwar`,[`#334d50`,`#cbcaa5`]],[`Bluelagoo`,[`#0052D4`,`#4364F7`,`#6FB1FC`]],[`Lunada`,[`#5433FF`,`#20BDFF`,`#A5FECB`]],[`Reaqua`,[`#799F0C`,`#ACBB78`]],[`Mango`,[`#ffe259`,`#ffa751`]],[`Bupe`,[`#00416A`,`#E4E5E6`]],[`Rea`,[`#FFE000`,`#799F0C`]],[`Windy`,[`#acb6e5`,`#86fde8`]],[`Royal Blue`,[`#536976`,`#292E49`]],[`Royal Blue + Petrol`,[`#BBD2C5`,`#536976`,`#292E49`]],[`Copper`,[`#B79891`,`#94716B`]],[`Anamnisar`,[`#9796f0`,`#fbc7d4`]],[`Petrol`,[`#BBD2C5`,`#536976`]],[`Sky`,[`#076585`,`#fff`]],[`Sel`,[`#00467F`,`#A5CC82`]],[`Afternoon`,[`#000C40`,`#607D8B`]],[`Skyline`,[`#1488CC`,`#2B32B2`]],[`DIMIGO`,[`#ec008c`,`#fc6767`]],[`Purple Love`,[`#cc2b5e`,`#753a88`]],[`Sexy Blue`,[`#2193b0`,`#6dd5ed`]],[`Blooker20`,[`#e65c00`,`#F9D423`]],[`Sea Blue`,[`#2b5876`,`#4e4376`]],[`Nimvelo`,[`#314755`,`#26a0da`]],[`Hazel`,[`#77A1D3`,`#79CBCA`,`#E684AE`]],[`Noon to Dusk`,[`#ff6e7f`,`#bfe9ff`]],[`YouTube`,[`#e52d27`,`#b31217`]],[`Cool Brown`,[`#603813`,`#b29f94`]],[`Harmonic Energy`,[`#16A085`,`#F4D03F`]],[`Playing with Reds`,[`#D31027`,`#EA384D`]],[`Sunny Days`,[`#EDE574`,`#E1F5C4`]],[`Green Beach`,[`#02AAB0`,`#00CDAC`]],[`Intuitive Purple`,[`#DA22FF`,`#9733EE`]],[`Emerald Water`,[`#348F50`,`#56B4D3`]],[`Lemon Twist`,[`#3CA55C`,`#B5AC49`]],[`Monte Carlo`,[`#CC95C0`,`#DBD4B4`,`#7AA1D2`]],[`Horizon`,[`#003973`,`#E5E5BE`]],[`Rose Water`,[`#E55D87`,`#5FC3E4`]],[`Frozen`,[`#403B4A`,`#E7E9BB`]],[`Mango Pulp`,[`#F09819`,`#EDDE5D`]],[`Bloody Mary`,[`#FF512F`,`#DD2476`]],[`Aubergine`,[`#AA076B`,`#61045F`]],[`Aqua Marine`,[`#1A2980`,`#26D0CE`]],[`Sunrise`,[`#FF512F`,`#F09819`]],[`Purple Paradise`,[`#1D2B64`,`#F8CDDA`]],[`Stripe`,[`#1FA2FF`,`#12D8FA`,`#A6FFCB`]],[`Sea Weed`,[`#4CB8C4`,`#3CD3AD`]],[`Pinky`,[`#DD5E89`,`#F7BB97`]],[`Cherry`,[`#EB3349`,`#F45C43`]],[`Mojito`,[`#1D976C`,`#93F9B9`]],[`Juicy Orange`,[`#FF8008`,`#FFC837`]],[`Mirage`,[`#16222A`,`#3A6073`]],[`Steel Gray`,[`#1F1C2C`,`#928DAB`]],[`Kashmir`,[`#614385`,`#516395`]],[`Electric Violet`,[`#4776E6`,`#8E54E9`]],[`Venice Blue`,[`#085078`,`#85D8CE`]],[`Bora Bora`,[`#2BC0E4`,`#EAECC6`]],[`Moss`,[`#134E5E`,`#71B280`]],[`Shroom Haze`,[`#5C258D`,`#4389A2`]],[`Mystic`,[`#757F9A`,`#D7DDE8`]],[`Midnight City`,[`#232526`,`#414345`]],[`Sea Blizz`,[`#1CD8D2`,`#93EDC7`]],[`Opa`,[`#3D7EAA`,`#FFE47A`]],[`Titanium`,[`#283048`,`#859398`]],[`Mantle`,[`#24C6DC`,`#514A9D`]],[`Dracula`,[`#DC2424`,`#4A569D`]],[`Peach`,[`#ED4264`,`#FFEDBC`]],[`Moonrise`,[`#DAE2F8`,`#D6A4A4`]],[`Clouds`,[`#ECE9E6`,`#FFFFFF`]],[`Stellar`,[`#7474BF`,`#348AC7`]],[`Bourbon`,[`#EC6F66`,`#F3A183`]],[`Calm Darya`,[`#5f2c82`,`#49a09d`]],[`Influenza`,[`#C04848`,`#480048`]],[`Shrimpy`,[`#e43a15`,`#e65245`]],[`Army`,[`#414d0b`,`#727a17`]],[`Miaka`,[`#FC354C`,`#0ABFBC`]],[`Pinot Noir`,[`#4b6cb7`,`#182848`]],[`Day Tripper`,[`#f857a6`,`#ff5858`]],[`Namn`,[`#a73737`,`#7a2828`]],[`Blurry Beach`,[`#d53369`,`#cbad6d`]],[`Vasily`,[`#e9d362`,`#333333`]],[`A Lost Memory`,[`#DE6262`,`#FFB88C`]],[`Petrichor`,[`#666600`,`#999966`]],[`Jonquil`,[`#FFEEEE`,`#DDEFBB`]],[`Sirius Tamed`,[`#EFEFBB`,`#D4D3DD`]],[`Kyoto`,[`#c21500`,`#ffc500`]],[`Misty Meadow`,[`#215f00`,`#e4e4d9`]],[`Aqualicious`,[`#50C9C3`,`#96DEDA`]],[`Moor`,[`#616161`,`#9bc5c3`]],[`Almost`,[`#ddd6f3`,`#faaca8`]],[`Forever Lost`,[`#5D4157`,`#A8CABA`]],[`Winter`,[`#E6DADA`,`#274046`]],[`Nelson`,[`#f2709c`,`#ff9472`]],[`Autumn`,[`#DAD299`,`#B0DAB9`]],[`Candy`,[`#D3959B`,`#BFE6BA`]],[`Reef`,[`#00d2ff`,`#3a7bd5`]],[`The Strain`,[`#870000`,`#190A05`]],[`Dirty Fog`,[`#B993D6`,`#8CA6DB`]],[`Earthly`,[`#649173`,`#DBD5A4`]],[`Virgin`,[`#C9FFBF`,`#FFAFBD`]],[`Ash`,[`#606c88`,`#3f4c6b`]],[`Cherryblossoms`,[`#FBD3E9`,`#BB377D`]],[`Parklife`,[`#ADD100`,`#7B920A`]],[`Dance To Forget`,[`#FF4E50`,`#F9D423`]],[`Starfall`,[`#F0C27B`,`#4B1248`]],[`Red Mist`,[`#000000`,`#e74c3c`]],[`Teal Love`,[`#AAFFA9`,`#11FFBD`]],[`Neon Life`,[`#B3FFAB`,`#12FFF7`]],[`Man of Steel`,[`#780206`,`#061161`]],[`Amethyst`,[`#9D50BB`,`#6E48AA`]],[`Cheer Up Emo Kid`,[`#556270`,`#FF6B6B`]],[`Shore`,[`#70e1f5`,`#ffd194`]],[`Facebook Messenger`,[`#00c6ff`,`#0072ff`]],[`SoundCloud`,[`#fe8c00`,`#f83600`]],[`Behongo`,[`#52c234`,`#061700`]],[`ServQuick`,[`#485563`,`#29323c`]],[`Friday`,[`#83a4d4`,`#b6fbff`]],[`Martini`,[`#FDFC47`,`#24FE41`]],[`Metallic Toad`,[`#abbaab`,`#ffffff`]],[`Between The Clouds`,[`#73C8A9`,`#373B44`]],[`Crazy Orange I`,[`#D38312`,`#A83279`]],[`Hersheys`,[`#1e130c`,`#9a8478`]],[`Talking To Mice Elf`,[`#948E99`,`#2E1437`]],[`Purple Bliss`,[`#360033`,`#0b8793`]],[`Predawn`,[`#FFA17F`,`#00223E`]],[`Endless River`,[`#43cea2`,`#185a9d`]],[`Pastel Orange at the Sun`,[`#ffb347`,`#ffcc33`]],[`Twitch`,[`#6441A5`,`#2a0845`]],[`Atlas`,[`#FEAC5E`,`#C779D0`,`#4BC0C8`]],[`Instagram`,[`#833ab4`,`#fd1d1d`,`#fcb045`]],[`Flickr`,[`#ff0084`,`#33001b`]],[`Vine`,[`#00bf8f`,`#001510`]],[`Turquoise flow`,[`#136a8a`,`#267871`]],[`Portrait`,[`#8e9eab`,`#eef2f3`]],[`Virgin America`,[`#7b4397`,`#dc2430`]],[`Koko Caramel`,[`#D1913C`,`#FFD194`]],[`Fresh Turboscent`,[`#F1F2B5`,`#135058`]],[`Green to dark`,[`#6A9113`,`#141517`]],[`Ukraine`,[`#004FF9`,`#FFF94C`]],[`Curiosity blue`,[`#525252`,`#3d72b4`]],[`Dark Knight`,[`#BA8B02`,`#181818`]],[`Piglet`,[`#ee9ca7`,`#ffdde1`]],[`Lizard`,[`#304352`,`#d7d2cc`]],[`Sage Persuasion`,[`#CCCCB2`,`#757519`]],[`Between Night and Day`,[`#2c3e50`,`#3498db`]],[`Timber`,[`#fc00ff`,`#00dbde`]],[`Passion`,[`#e53935`,`#e35d5b`]],[`Clear Sky`,[`#005C97`,`#363795`]],[`Master Card`,[`#f46b45`,`#eea849`]],[`Back To Earth`,[`#00C9FF`,`#92FE9D`]],[`Deep Purple`,[`#673AB7`,`#512DA8`]],[`Little Leaf`,[`#76b852`,`#8DC26F`]],[`Netflix`,[`#8E0E00`,`#1F1C18`]],[`Light Orange`,[`#FFB75E`,`#ED8F03`]],[`Green and Blue`,[`#c2e59c`,`#64b3f4`]],[`Poncho`,[`#403A3E`,`#BE5869`]],[`Back to the Future`,[`#C02425`,`#F0CB35`]],[`Blush`,[`#B24592`,`#F15F79`]],[`Inbox`,[`#457fca`,`#5691c8`]],[`Purplin`,[`#6a3093`,`#a044ff`]],[`Pale Wood`,[`#eacda3`,`#d6ae7b`]],[`Haikus`,[`#fd746c`,`#ff9068`]],[`Pizelex`,[`#114357`,`#F29492`]],[`Joomla`,[`#1e3c72`,`#2a5298`]],[`Christmas`,[`#2F7336`,`#AA3A38`]],[`Minnesota Vikings`,[`#5614B0`,`#DBD65C`]],[`Miami Dolphins`,[`#4DA0B0`,`#D39D38`]],[`Forest`,[`#5A3F37`,`#2C7744`]],[`Nighthawk`,[`#2980b9`,`#2c3e50`]],[`Superman`,[`#0099F7`,`#F11712`]],[`Suzy`,[`#834d9b`,`#d04ed6`]],[`Dark Skies`,[`#4B79A1`,`#283E51`]],[`Deep Space`,[`#000000`,`#434343`]],[`Decent`,[`#4CA1AF`,`#C4E0E5`]],[`Colors Of Sky`,[`#E0EAFC`,`#CFDEF3`]],[`Purple White`,[`#BA5370`,`#F4E2D8`]],[`Ali`,[`#ff4b1f`,`#1fddff`]],[`Alihossein`,[`#f7ff00`,`#db36a4`]],[`Shahabi`,[`#a80077`,`#66ff00`]],[`Red Ocean`,[`#1D4350`,`#A43931`]],[`Tranquil`,[`#EECDA3`,`#EF629F`]],[`Transfile`,[`#16BFFD`,`#CB3066`]],[`Sylvia`,[`#ff4b1f`,`#ff9068`]],[`Sweet Morning`,[`#FF5F6D`,`#FFC371`]],[`Politics`,[`#2196f3`,`#f44336`]],[`Bright Vault`,[`#00d2ff`,`#928DAB`]],[`Solid Vault`,[`#3a7bd5`,`#3a6073`]],[`Sunset`,[`#0B486B`,`#F56217`]],[`Grapefruit Sunset`,[`#e96443`,`#904e95`]],[`Deep Sea Space`,[`#2C3E50`,`#4CA1AF`]],[`Dusk`,[`#2C3E50`,`#FD746C`]],[`Minimal Red`,[`#F00000`,`#DC281E`]],[`Royal`,[`#141E30`,`#243B55`]],[`Mauve`,[`#42275a`,`#734b6d`]],[`Frost`,[`#000428`,`#004e92`]],[`Lush`,[`#56ab2f`,`#a8e063`]],[`Firewatch`,[`#cb2d3e`,`#ef473a`]],[`Sherbert`,[`#f79d00`,`#64f38c`]],[`Blood Red`,[`#f85032`,`#e73827`]],[`Sun on the Horizon`,[`#fceabb`,`#f8b500`]],[`IIIT Delhi`,[`#808080`,`#3fada8`]],[`Jupiter`,[`#ffd89b`,`#19547b`]],[`50 Shades of Grey`,[`#bdc3c7`,`#2c3e50`]],[`Dania`,[`#BE93C5`,`#7BC6CC`]],[`Limeade`,[`#A1FFCE`,`#FAFFD1`]],[`Disco`,[`#4ECDC4`,`#556270`]],[`Love Couple`,[`#3a6186`,`#89253e`]],[`Azure Pop`,[`#ef32d9`,`#89fffd`]],[`Nepal`,[`#de6161`,`#2657eb`]],[`Cosmic Fusion`,[`#ff00cc`,`#333399`]],[`Snapchat`,[`#fffc00`,`#ffffff`]],[`Ed's Sunset Gradient`,[`#ff7e5f`,`#feb47b`]],[`Brady Brady Fun Fun`,[`#00c3ff`,`#ffff1c`]],[`Black Rosé`,[`#f4c4f3`,`#fc67fa`]],[`80's Purple`,[`#41295a`,`#2F0743`]],[`Radar`,[`#A770EF`,`#CF8BF3`,`#FDB99B`]],[`Ibiza Sunset`,[`#ee0979`,`#ff6a00`]],[`Dawn`,[`#F3904F`,`#3B4371`]],[`Mild`,[`#67B26F`,`#4ca2cd`]],[`Vice City`,[`#3494E6`,`#EC6EAD`]],[`Jaipur`,[`#DBE6F6`,`#C5796D`]],[`Jodhpur`,[`#9CECFB`,`#65C7F7`,`#0052D4`]],[`Cocoaa Ice`,[`#c0c0aa`,`#1cefff`]],[`EasyMed`,[`#DCE35B`,`#45B649`]],[`Rose Colored Lenses`,[`#E8CBC0`,`#636FA4`]],[`What lies Beyond`,[`#F0F2F0`,`#000C40`]],[`Roseanna`,[`#FFAFBD`,`#ffc3a0`]],[`Honey Dew`,[`#43C6AC`,`#F8FFAE`]],[`Under the Lake`,[`#093028`,`#237A57`]],[`The Blue Lagoon`,[`#43C6AC`,`#191654`]],[`Can You Feel The Love Tonight`,[`#4568DC`,`#B06AB3`]],[`Very Blue`,[`#0575E6`,`#021B79`]],[`Love and Liberty`,[`#200122`,`#6f0000`]],[`Orca`,[`#44A08D`,`#093637`]],[`Venice`,[`#6190E8`,`#A7BFE8`]],[`Pacific Dream`,[`#34e89e`,`#0f3443`]],[`Learning and Leading`,[`#F7971E`,`#FFD200`]],[`Celestial`,[`#C33764`,`#1D2671`]],[`Purplepine`,[`#20002c`,`#cbb4d4`]],[`Sha la la`,[`#D66D75`,`#E29587`]],[`Mini`,[`#30E8BF`,`#FF8235`]],[`Maldives`,[`#B2FEFA`,`#0ED2F7`]],[`Cinnamint`,[`#4AC29A`,`#BDFFF3`]],[`Html`,[`#E44D26`,`#F16529`]],[`Coal`,[`#EB5757`,`#000000`]],[`Sunkist`,[`#F2994A`,`#F2C94C`]],[`Blue Skies`,[`#56CCF2`,`#2F80ED`]],[`Chitty Chitty Bang Bang`,[`#007991`,`#78ffd6`]],[`Visions of Grandeur`,[`#000046`,`#1CB5E0`]],[`Crystal Clear`,[`#159957`,`#155799`]],[`Mello`,[`#c0392b`,`#8e44ad`]],[`Compare Now`,[`#EF3B36`,`#FFFFFF`]],[`Meridian`,[`#283c86`,`#45a247`]],[`Relay`,[`#3A1C71`,`#D76D77`,`#FFAF7B`]],[`Alive`,[`#CB356B`,`#BD3F32`]],[`Scooter`,[`#36D1DC`,`#5B86E5`]],[`Terminal`,[`#000000`,`#0f9b0f`]],[`Telegram`,[`#1c92d2`,`#f2fcfe`]],[`Crimson Tide`,[`#642B73`,`#C6426E`]],[`Socialive`,[`#06beb6`,`#48b1bf`]],[`Subu`,[`#0cebeb`,`#20e3b2`,`#29ffc6`]],[`Broken Hearts`,[`#d9a7c7`,`#fffcdc`]],[`Kimoby Is The New Blue`,[`#396afc`,`#2948ff`]],[`Dull`,[`#C9D6FF`,`#E2E2E2`]],[`Purpink`,[`#7F00FF`,`#E100FF`]],[`Orange Coral`,[`#ff9966`,`#ff5e62`]],[`Summer`,[`#22c1c3`,`#fdbb2d`]],[`King Yna`,[`#1a2a6c`,`#b21f1f`,`#fdbb2d`]],[`Velvet Sun`,[`#e1eec3`,`#f05053`]],[`Zinc`,[`#ADA996`,`#F2F2F2`,`#DBDBDB`,`#EAEAEA`]],[`Hydrogen`,[`#667db6`,`#0082c8`,`#0082c8`,`#667db6`]],[`Argon`,[`#03001e`,`#7303c0`,`#ec38bc`,`#fdeff9`]],[`Lithium`,[`#6D6027`,`#D3CBB8`]],[`Digital Water`,[`#74ebd5`,`#ACB6E5`]],[`Orange Fun`,[`#fc4a1a`,`#f7b733`]],[`Rainbow Blue`,[`#00F260`,`#0575E6`]],[`Pink Flavour`,[`#800080`,`#ffc0cb`]],[`Sulphur`,[`#CAC531`,`#F3F9A7`]],[`Selenium`,[`#3C3B3F`,`#605C3C`]],[`Delicate`,[`#D3CCE3`,`#E9E4F0`]],[`Ohhappiness`,[`#00b09b`,`#96c93d`]],[`Lawrencium`,[`#0f0c29`,`#302b63`,`#24243e`]],[`Relaxing red`,[`#fffbd5`,`#b20a2c`]],[`Taran Tado`,[`#23074d`,`#cc5333`]],[`Bighead`,[`#c94b4b`,`#4b134f`]],[`Sublime Vivid`,[`#FC466B`,`#3F5EFB`]],[`Sublime Light`,[`#FC5C7D`,`#6A82FB`]],[`Pun Yeta`,[`#108dc7`,`#ef8e38`]],[`Quepal`,[`#11998e`,`#38ef7d`]],[`Sand to Blue`,[`#3E5151`,`#DECBA4`]],[`Wedding Day Blues`,[`#40E0D0`,`#FF8C00`,`#FF0080`]],[`Shifter`,[`#bc4e9c`,`#f80759`]],[`Red Sunset`,[`#355C7D`,`#6C5B7B`,`#C06C84`]],[`Moon Purple`,[`#4e54c8`,`#8f94fb`]],[`Pure Lust`,[`#333333`,`#dd1818`]],[`Slight Ocean View`,[`#a8c0ff`,`#3f2b96`]],[`eXpresso`,[`#ad5389`,`#3c1053`]],[`Shifty`,[`#636363`,`#a2ab58`]],[`Vanusa`,[`#DA4453`,`#89216B`]],[`Evening Night`,[`#005AA7`,`#FFFDE4`]],[`Magic`,[`#59C173`,`#a17fe0`,`#5D26C1`]],[`Margo`,[`#FFEFBA`,`#FFFFFF`]],[`Blue Raspberry`,[`#00B4DB`,`#0083B0`]],[`Citrus Peel`,[`#FDC830`,`#F37335`]],[`Sin City Red`,[`#ED213A`,`#93291E`]],[`Rastafari`,[`#1E9600`,`#FFF200`,`#FF0000`]],[`Summer Dog`,[`#a8ff78`,`#78ffd6`]],[`Wiretap`,[`#8A2387`,`#E94057`,`#F27121`]],[`Burning Orange`,[`#FF416C`,`#FF4B2B`]],[`Ultra Voilet`,[`#654ea3`,`#eaafc8`]],[`By Design`,[`#009FFF`,`#ec2F4B`]],[`Kyoo Tah`,[`#544a7d`,`#ffd452`]],[`Kye Meh`,[`#8360c3`,`#2ebf91`]],[`Kyoo Pal`,[`#dd3e54`,`#6be585`]],[`Metapolis`,[`#659999`,`#f4791f`]],[`Flare`,[`#f12711`,`#f5af19`]],[`Witching Hour`,[`#c31432`,`#240b36`]],[`Azur Lane`,[`#7F7FD5`,`#86A8E7`,`#91EAE4`]],[`Neuromancer`,[`#f953c6`,`#b91d73`]],[`Harvey`,[`#1f4037`,`#99f2c8`]],[`Amin`,[`#8E2DE2`,`#4A00E0`]],[`Memariani`,[`#aa4b6b`,`#6b6b83`,`#3b8d99`]],[`Yoda`,[`#FF0099`,`#493240`]],[`Cool Sky`,[`#2980B9`,`#6DD5FA`,`#FFFFFF`]],[`Dark Ocean`,[`#373B44`,`#4286f4`]],[`Evening Sunshine`,[`#b92b27`,`#1565C0`]],[`JShine`,[`#12c2e9`,`#c471ed`,`#f64f59`]],[`Moonlit Asteroid`,[`#0F2027`,`#203A43`,`#2C5364`]],[`MegaTron`,[`#C6FFDD`,`#FBD786`,`#f7797d`]],[`Cool Blues`,[`#2193b0`,`#6dd5ed`]],[`Piggy Pink`,[`#ee9ca7`,`#ffdde1`]],[`Grade Grey`,[`#bdc3c7`,`#2c3e50`]],[`Telko`,[`#F36222`,`#5CB644`,`#007FC3`]],[`Zenta`,[`#2A2D3E`,`#FECB6E`]],[`Electric Peacock`,[`#8a2be2`,`#0000cd`,`#228b22`,`#ccff00`]],[`Under Blue Green`,[`#051937`,`#004d7a`,`#008793`,`#00bf72`,`#a8eb12`]],[`Lensod`,[`#6025F5`,`#FF5555`]],[`Newspaper`,[`#8a2be2`,`#ffa500`,`#f8f8ff`]],[`Dark Blue Gradient`,[`#2774ae`,`#002E5D`,`#002E5D`]],[`Dark Blu Two`,[`#004680`,`#4484BA`]],[`Lemon Lime`,[`#7ec6bc`,`#ebe717`]],[`Beleko`,[`#ff1e56`,`#f9c942`,`#1e90ff`]],[`Mango Papaya`,[`#de8a41`,`#2ada53`]],[`Unicorn Rainbow`,[`#f7f0ac`,`#acf7f0`,`#f0acf7`]],[`Flame`,[`#ff0000`,`#fdcf58`]],[`Blue Red`,[`#36B1C7`,`#960B33`]],[`Twitter`,[`#1DA1F2`,`#009ffc`]],[`Blooze`,[`#6da6be`,`#4b859e`,`#6da6be`]],[`Blue Slate`,[`#B5B9FF`,`#2B2C49`]],[`Space Light Green`,[`#9FA0A8`,`#5C7852`]],[`Flower`,[`#DCFFBD`,`#CC86D1`]],[`Elate The Euge`,[`#8BDEDA`,`#43ADD0`,`#998EE0`,`#E17DC2`,`#EF9393`]],[`Peach Sea`,[`#E6AE8C`,`#A8CECF`]],[`Abbas`,[`#00fff0`,`#0083fe`]],[`Winter Woods`,[`#333333`,`#a2ab58`,`#A43931`]],[`Ameena`,[`#0c0c6d`,`#de512b`,`#98d0c1`,`#5bb226`,`#023c0d`]],[`Emerald Sea`,[`#05386b`,`#5cdb95`]],[`Bleem`,[`#4284DB`,`#29EAC4`]],[`Coffee Gold`,[`#554023`,`#c99846`]],[`Compass`,[`#516b8b`,`#056b3b`]],[`Andreuzza's`,[`#D70652`,`#FF025E`]],[`Moonwalker`,[`#152331`,`#000000`]],[`Whinehouse`,[`#f7f7f7`,`#b9a0a0`,`#794747`,`#4e2020`,`#111111`]],[`Hyper Blue`,[`#59CDE9`,`#0A2A88`]],[`Racker`,[`#EB0000`,`#95008A`,`#3300FC`]],[`After the Rain`,[`#ff75c3`,`#ffa647`,`#ffe83f`,`#9fff5b`,`#70e2ff`,`#cd93ff`]],[`Neon Green`,[`#81ff8a`,`#64965e`]],[`Dusty Grass`,[`#d4fc79`,`#96e6a1`]],[`Visual Blue`,[`#003d4d`,`#00c996`]]],Es={c:[[`Hermosa Pink`,`#f9c1ce`],[`Corinthian Pink`,`#f8b6ba`],[`Cameo Pink`,`#e0b3b6`],[`Fawn`,`#d1b0a7`],[`Light Brown Drab`,`#b59392`],[`Coral Red`,`#f58e84`],[`Fresh Color`,`#f6917e`],[`Grenadine Pink`,`#f48067`],[`Eosine Pink`,`#f37f94`],[`Spinel Red`,`#f27291`],[`Old Rose`,`#d46d7a`],[`Eugenia Red | A`,`#e2625e`],[`Eugenia Red | B`,`#da525d`],[`Raw Sienna`,`#bb7125`],[`Vinaceous Tawny`,`#c56127`],[`Jasper Red`,`#eb5324`],[`Spectrum Red`,`#e31f26`],[`Red Orange`,`#dd4027`],[`Etruscan Red`,`#c55347`],[`Burnt Sienna`,`#ae5224`],[`Ochre Red`,`#ab544d`],[`Scarlet`,`#cb2f43`],[`Carmine`,`#cc1236`],[`Indian Lake`,`#c53c69`],[`Rosolanc Purple`,`#b73f74`],[`Pomegranite Purple`,`#b71f57`],[`Hydrangea Red`,`#a94151`],[`Brick Red`,`#a84222`],[`Carmine Red`,`#a62c37`],[`Pompeian Red`,`#ab2439`],[`Red`,`#a72144`],[`Brown`,`#7c4226`],[`Hay's Russet`,`#793327`],[`Vandyke Red`,`#82241f`],[`Pansy Purple`,`#7d133a`],[`Pale Burnt Lake`,`#802626`],[`Violet Red`,`#642d5e`],[`Vistoris Lake`,`#6d4145`],[`Sulpher Yellow`,`#f5ecc2`],[`Pale Lemon Yellow`,`#ffefae`],[`Naples Yellow`,`#fbe6a0`],[`Ivory Buff`,`#ebd3a2`],[`Seashell Pink`,`#fdd4bd`],[`Light Pinkish Cinnamon`,`#fcc79b`],[`Pinkish Cinnamon`,`#eeb480`],[`Cinnamon Buff`,`#fdc57e`],[`Cream Yellow`,`#fdbf68`],[`Golden Yellow`,`#f3a257`],[`Vinaceous Cinnamon`,`#eea78c`],[`Ochraceous Salmon`,`#d8a37b`],[`Isabella Color`,`#c5a56e`],[`Maple`,`#c59f6b`],[`Olive Buff`,`#c1c494`],[`Ecru`,`#c2ae93`],[`Yellow`,`#fff200`],[`Lemon Yellow`,`#f8ed43`],[`Apricot Yellow`,`#ffdd00`],[`Pyrite Yellow`,`#cab356`],[`Olive Ocher`,`#d6b43e`],[`Yellow Ocher`,`#e2b540`],[`Orange Yellow`,`#fcb315`],[`Yellow Orange`,`#f99d1b`],[`Apricot Orange`,`#f68c50`],[`Orange`,`#f37420`],[`Peach Red`,`#f15a30`],[`English Red`,`#d96629`],[`Cinnamon Rufous`,`#c27544`],[`Orange Rufous`,`#c16b27`],[`Sulphine Yellow`,`#c19f2c`],[`Khaki`,`#bc892b`],[`Citron Yellow`,`#b2b73e`],[`Citrine`,`#b09f36`],[`Buffy Citrine`,`#96874d`],[`Dark Citrine`,`#8b835b`],[`Light Grayish Olive`,`#848061`],[`Krongbergs Green`,`#84875e`],[`Olive`,`#837e31`],[`Orange Citrine`,`#986f2d`],[`Sudan Brown`,`#a36752`],[`Olive Green`,`#6b7140`],[`Light Brownish Olive`,`#806e4b`],[`Deep Grayish Olive`,`#635a3a`],[`Pale Raw Umber`,`#71502f`],[`Sepia`,`#644b1e`],[`Madder Brown`,`#762c19`],[`Mars Brown Tobacco`,`#653514`],[`Vandyke Brown`,`#4b3317`],[`Turquoise Green`,`#b5decc`],[`Glaucous Green`,`#b4cdc2`],[`Dark Greenish Glaucous`,`#b7c2a9`],[`Yellow Green`,`#afd472`],[`Light Green Yellow`,`#c7d14f`],[`Night Green`,`#87c540`],[`Olive Yellow`,`#a6a159`],[`Artemesia Green`,`#709390`],[`Andover Green`,`#6d7e77`],[`Rainette Green`,`#8fa071`],[`Chromium Green`,`#719470`],[`Pistachio Green`,`#648f7b`],[`Sea Green`,`#00b49b`],[`Benzol Green`,`#00978d`],[`Light Porcelain Green`,`#00908a`],[`Green`,`#489b6e`],[`Dull Viridian Green`,`#009465`],[`Oil Green`,`#819238`],[`Diamine Green`,`#1a7444`],[`Cossack Green`,`#437742`],[`Lincoln Green`,`#555832`],[`Blackish Olive`,`#42533e`],[`Deep Slate Olive`,`#253122`],[`Nile Blue`,`#bce4e5`],[`Pale King's Blue`,`#a7d4e4`],[`Light Glaucous Blue`,`#a5c8d1`],[`Salvia Blue`,`#97acc8`],[`Cobalt Green`,`#96d1aa`],[`Calamine BLue`,`#78cdd0`],[`Venice Green`,`#62c6bf`],[`Cerulian Blue`,`#0093a5`],[`Peacock Blue`,`#00939b`],[`Green Blue`,`#099197`],[`Olympic Blue`,`#5a82b3`],[`Blue`,`#006eb8`],[`Antwarp Blue`,`#007190`],[`Helvetia Blue`,`#005b8d`],[`Dark Medici Blue`,`#547076`],[`Dusky Green`,`#004f46`],[`Deep Lyons Blue`,`#1c4286`],[`Violet Blue`,`#40456a`],[`Vandar Poel's Blue`,`#064f6e`],[`Dark Tyrian Blue`,`#12354e`],[`Dull Violet Black`,`#1e0e3f`],[`Deep Indigo`,`#051230`],[`Deep Slate Green`,`#112f2c`],[`Grayish Lavender - A`,`#b5b1d8`],[`Grayish Lavender - B`,`#c0a9b3`],[`Laelia Pink`,`#ca92a8`],[`Lilac`,`#b984af`],[`Eupatorium Purple`,`#bf5892`],[`Light Mauve`,`#9a72aa`],[`Aconite Violet`,`#a36aa5`],[`Dull Blue Violet`,`#80719e`],[`Dark Soft Violet`,`#66629c`],[`Blue Violet`,`#6450a1`],[`Purple Drab`,`#84565b`],[`Deep Violet / Plumbeous`,`#70727c`],[`Veronia Purple`,`#8c4c62`],[`Dark Slate Purple`,`#704357`],[`Taupe Brown`,`#7a4456`],[`Violet Carmine`,`#713b4c`],[`Violet`,`#4f4086`],[`Red Violet`,`#59256a`],[`Cotinga Purple`,`#501345`],[`Dusky Madder Violet`,`#4e1d4c`],[`White`,`#ffffff`],[`Neutral Gray`,`#b6bfc1`],[`Mineral Gray`,`#a2b0ad`],[`Warm Gray`,`#a1a39a`],[`Slate Color`,`#34454c`],[`Black`,`#111314`]],k:[[65,117],[61,129],[13,39],[50,150],[106,128],[7,131],[63,88],[66,133],[36,140],[66,73],[41,155],[50,119],[13,145],[9,40],[100,133],[33,111],[12,99],[3,152],[85,92],[115,135],[7,99],[54,126],[45,138],[83,145],[18,110],[47,82],[1,157],[84,131],[75,113],[29,155],[17,39],[49,92],[13,157],[8,154],[4,28],[68,87],[27,150],[105,126],[22,123],[14,70],[73,115],[59,149],[1,139],[101,120],[42,55],[63,158],[18,134],[24,123],[111,121],[41,152],[28,121],[38,158],[61,152],[100,112],[10,153],[134,149],[147,157],[32,99],[8,71],[39,129],[91,151],[54,158],[37,117],[139,141],[68,115],[58,79],[120,129],[4,54],[156,158],[13,107],[29,49],[38,111],[82,96],[87,119],[111,127],[39,156],[12,128],[44,116],[84,119],[38,138],[47,156],[32,152],[52,127],[42,132],[14,122],[13,99],[1,70],[42,121],[61,127],[8,139],[37,67],[5,100],[71,112],[41,125],[32,130],[59,76],[1,18],[84,127],[39,117],[72,140],[2,126],[41,67],[66,152],[28,38],[2,97],[122,130],[56,74],[8,27],[39,108],[31,86],[39,90],[7,158],[42,86],[60,122],[40,64],[2,142],[22,158],[59,86],[112,129],[2,29],[31,49,107],[22,46,100],[5,55,147],[35,59,93],[3,117,127],[41,59,126],[45,98,141],[1,116,138],[56,69,113],[13,28,149],[13,65,118],[38,47,71],[33,71,99],[8,138,150],[38,106,113],[21,103,150],[18,45,98],[47,55,116],[113,131,154],[47,122,157],[63,90,129],[26,68,113],[121,136,156],[24,63,158],[31,70,130],[69,81,105],[9,33,87],[58,60,117],[58,63,132],[42,70,88],[38,61,128],[18,32,112],[8,60,70],[22,54,121],[15,100,131],[58,114,149],[34,58,120],[55,66,92],[69,115,133],[68,82,124],[31,44,123],[10,96,136],[56,87,122],[17,60,149],[2,9,37],[7,40,132],[53,111,128],[55,128,145],[1,39,156],[24,60,150],[35,61,88],[66,122,150],[55,84,87],[1,134,147],[44,52,142],[0,42,115],[35,72,133],[41,112,119],[17,47,126],[45,138,154],[28,149,151],[13,86,131],[144,145,150],[9,41,74],[4,18,39],[32,49,121],[123,134,139],[96,113,114],[55,109,116],[41,65,158],[4,59,121],[46,86,144],[7,40,101],[15,42,120],[9,39,154],[70,111,142],[8,141,154],[19,56,102],[20,80,126],[28,52,97],[7,76,114],[87,114,157],[39,48,107],[24,66,112],[35,48,149],[1,47,66],[78,88,158],[38,119,122],[41,61,113],[45,55,107],[62,93,131],[29,77,113],[48,56,111],[41,78,149],[46,121,137],[15,102,158],[35,49,105],[123,133,144],[15,97,125],[25,49,139],[28,154,158],[59,61,67],[4,49,87],[9,124,147],[22,125,146],[37,46,149],[0,112,117],[28,39,154],[47,109,154],[7,87,114],[2,32,120],[22,44,131],[28,72,127],[45,82,111],[41,61,134],[69,126,143],[28,84,113],[49,151,156],[4,57,88],[6,54,117],[17,39,50,124],[8,19,105,158],[13,41,79,157],[4,14,95,122],[28,104,129,157],[1,27,38,45],[13,56,100,126],[8,69,133,146],[32,53,58,124],[57,64,99,110],[30,54,105,157],[12,13,68,119],[55,62,151,157],[1,38,76,135],[13,57,115,158],[48,63,103,158],[16,60,121,139],[35,44,76,122],[55,119,123,156],[10,48,88,99],[30,39,115,156],[12,41,71,106],[19,44,87,157],[1,17,89,117],[10,56,93,130],[16,41,96,100],[46,61,100,121],[4,13,109,110],[13,35,139,158],[12,38,79,106],[25,114,119,132],[39,63,87,113],[0,34,78,154],[64,73,120,138],[18,53,84,147],[8,42,90,158],[9,24,76,130],[46,58,106,125],[13,48,53,129],[12,107,135,147],[39,100,114,122],[12,51,114,136],[20,35,97,116],[11,56,99,125],[4,19,64,87],[19,60,118,127],[8,57,111,115],[61,83,147,158],[55,91,127,130],[37,39,107,114],[91,99,114,115],[39,44,50,53],[13,87,94,102],[38,46,106,113],[46,54,121,130],[38,49,82,157],[19,61,79,127],[13,55,64,158],[23,48,104,122],[7,46,87,115],[16,41,96,139],[46,53,110,122],[40,64,109,154],[32,46,73,100],[44,56,70,87],[55,100,103,110],[22,133,139,151],[3,21,65,114],[47,62,127,128],[38,44,76,109],[29,46,89,91],[19,61,94,123],[22,54,105,158],[8,32,126,152],[7,38,47,137],[33,103,149,150],[43,53,55,87],[80,108,125,132],[13,56,61,106],[5,38,104,112],[4,38,109,113],[16,27,137,142],[45,70,84,158],[29,120,139,154],[12,40,59,132],[38,64,90,92],[8,13,53,134],[27,62,86,101],[46,134,151,157],[52,110,113,119],[23,130,138,149],[5,21,109,125],[19,55,114,121],[42,76,90,122],[33,61,149,157],[8,32,39,108],[37,135,148,158],[28,60,125,134],[49,65,112,127],[64,99,154,158],[7,106,109,112],[1,46,77,109],[19,41,81,128],[45,126,139,158],[32,110,116,142],[24,87,91,95],[93,99,123,136],[52,106,109,151]]},Ds=`modulepreload`,Os=function(e,t){return new URL(e,t).href},ks={},As=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=Os(t,n),t=s(t),t in ks)return;ks[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:Ds,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},js=n({n:()=>Ps,t:()=>Fs}),Ms,Ns,Ps,Fs,Is=t((()=>{Ms=Object.defineProperty,Ns=(e,t)=>{let n={};for(var r in e)Ms(n,r,{get:e[r],enumerable:!0});return t||Ms(n,Symbol.toStringTag,{value:`Module`}),n},Ps=Ns({CURATED:()=>Fs}),Fs=[{id:`met`,title:`The Met`,credit:`MetBrewer, Blake Robert Mills`,source:`https://github.com/BlakeRMills/MetBrewer`,palettes:[[`Archambault`,[`#88a0dc`,`#381a61`,`#7c4b73`,`#ed968c`,`#ab3329`,`#e78429`,`#f9d14a`]],[`Austria`,[`#a40000`,`#16317d`,`#007e2f`,`#ffcd12`,`#b86092`,`#721b3e`,`#00b7a7`]],[`Benedictus`,[`#9a133d`,`#b93961`,`#d8527c`,`#f28aaa`,`#f9b4c9`,`#f9e0e8`,`#ffffff`,`#eaf3ff`,`#c5daf6`,`#a1c2ed`,`#6996e3`,`#4060c8`,`#1a318b`]],[`Cassatt 1`,[`#b1615c`,`#d88782`,`#e3aba7`,`#edd7d9`,`#c9c9dd`,`#9d9dc7`,`#8282aa`,`#5a5a83`]],[`Cassatt 2`,[`#2d223c`,`#574571`,`#90719f`,`#b695bc`,`#dec5da`,`#c1d1aa`,`#7fa074`,`#466c4b`,`#2c4b27`,`#0e2810`]],[`Cross`,[`#c969a1`,`#ce4441`,`#ee8577`,`#eb7926`,`#ffbb44`,`#859b6c`,`#62929a`,`#004f63`,`#122451`]],[`Degas`,[`#591d06`,`#96410e`,`#e5a335`,`#556219`,`#418979`,`#2b614e`,`#053c29`]],[`Demuth`,[`#591c19`,`#9b332b`,`#b64f32`,`#d39a2d`,`#f7c267`,`#b9b9b8`,`#8b8b99`,`#5d6174`,`#41485f`,`#262d42`]],[`Derain`,[`#efc86e`,`#97c684`,`#6f9969`,`#aab5d5`,`#808fe1`,`#5c66a8`,`#454a74`]],[`Egypt`,[`#dd5129`,`#0f7ba2`,`#43b284`,`#fab255`]],[`Gauguin`,[`#b04948`,`#811e18`,`#9e4013`,`#c88a2c`,`#4c6216`,`#1a472a`]],[`Greek`,[`#3c0d03`,`#8d1c06`,`#e67424`,`#ed9b49`,`#f5c34d`]],[`Hiroshige`,[`#e76254`,`#ef8a47`,`#f7aa58`,`#ffd06f`,`#ffe6b7`,`#aadce0`,`#72bcd5`,`#528fad`,`#376795`,`#1e466e`]],[`Hokusai 1`,[`#6d2f20`,`#b75347`,`#df7e66`,`#e09351`,`#edc775`,`#94b594`,`#224b5e`]],[`Hokusai 2`,[`#abc9c8`,`#72aeb6`,`#4692b0`,`#2f70a1`,`#134b73`,`#0a3351`]],[`Hokusai 3`,[`#d8d97a`,`#95c36e`,`#74c8c3`,`#5a97c1`,`#295384`,`#0a2e57`]],[`Homer 1`,[`#551f00`,`#a62f00`,`#df7700`,`#f5b642`,`#fff179`,`#c3f4f6`,`#6ad5e8`,`#32b2da`]],[`Homer 2`,[`#bf3626`,`#e9851d`,`#f9c53b`,`#aeac4c`,`#788f33`,`#165d43`]],[`Ingres`,[`#041d2c`,`#06314e`,`#18527e`,`#2e77ab`,`#d1b252`,`#a97f2f`,`#7e5522`,`#472c0b`]],[`Isfahan 1`,[`#4e3910`,`#845d29`,`#ae8548`,`#e3c28b`,`#4fb6ca`,`#178f92`,`#175f5d`,`#054544`]],[`Isfahan 2`,[`#d7aca1`,`#ddc000`,`#79ad41`,`#34b6c6`,`#4063a3`]],[`Java`,[`#663171`,`#cf3a36`,`#ea7428`,`#e2998a`,`#0c7156`]],[`Johnson`,[`#a00e00`,`#d04e00`,`#f6c200`,`#0086a8`,`#132b69`]],[`Juarez`,[`#a82203`,`#208cc0`,`#f1af3a`,`#cf5e4e`,`#637b31`,`#003967`]],[`Kandinsky`,[`#3b7c70`,`#ce9642`,`#898e9f`,`#3b3a3e`]],[`Klimt`,[`#df9ed4`,`#c93f55`,`#eacc62`,`#469d76`,`#3c4b99`,`#924099`]],[`Lakota`,[`#04a3bd`,`#f0be3d`,`#931e18`,`#da7901`,`#247d3f`,`#20235b`]],[`Manet`,[`#3b2319`,`#80521c`,`#d29c44`,`#ebc174`,`#ede2cc`,`#7ec5f4`,`#4585b7`,`#225e92`,`#183571`,`#43429b`,`#5e65be`]],[`Monet`,[`#4e6d58`,`#749e89`,`#abccbe`,`#e3cacf`,`#c399a2`,`#9f6e71`,`#41507b`,`#7d87b2`,`#c2cae3`]],[`Moreau`,[`#421600`,`#792504`,`#bc7524`,`#8dadca`,`#527baa`,`#104839`,`#082844`]],[`Morgenstern`,[`#98768e`,`#b08ba5`,`#c7a2b6`,`#dfbbc8`,`#ffc680`,`#ffb178`,`#db8872`,`#a56457`]],[`Nattier`,[`#52271c`,`#944839`,`#c08e39`,`#7f793c`,`#565c33`,`#184948`,`#022a2a`]],[`Navajo`,[`#660d20`,`#e59a52`,`#edce79`,`#094568`,`#e1c59a`]],[`New Kingdom`,[`#e1846c`,`#9eb4e0`,`#e6bb9e`,`#9c6849`,`#735852`]],[`Nizami`,[`#dd7867`,`#b83326`,`#c8570d`,`#edb144`,`#8cc8bc`,`#7da7ea`,`#5773c0`,`#1d4497`]],[`OKeeffe 1`,[`#6b200c`,`#973d21`,`#da6c42`,`#ee956a`,`#fbc2a9`,`#f6f2ee`,`#bad6f9`,`#7db0ea`,`#447fdd`,`#225bb2`,`#133e7e`]],[`OKeeffe 2`,[`#fbe3c2`,`#f2c88f`,`#ecb27d`,`#e69c6b`,`#d37750`,`#b9563f`,`#92351e`]],[`Paquin`,[`#831818`,`#c62320`,`#f05b43`,`#f78462`,`#feac81`,`#f7dea3`,`#ced1af`,`#98ab76`,`#748f46`,`#47632a`,`#275024`]],[`Peru 1`,[`#b5361c`,`#e35e28`,`#1c9d7c`,`#31c7ba`,`#369cc9`,`#3a507f`]],[`Peru 2`,[`#65150b`,`#961f1f`,`#c0431f`,`#f19425`,`#c59349`,`#533d14`]],[`Pillement`,[`#a9845b`,`#697852`,`#738e8e`,`#44636f`,`#2b4655`,`#0f252f`]],[`Pissaro`,[`#134130`,`#4c825d`,`#8cae9e`,`#8dc7dc`,`#508ca7`,`#1a5270`,`#0e2a4d`]],[`Redon`,[`#5b859e`,`#1e395f`,`#75884b`,`#1e5a46`,`#df8d71`,`#af4f2f`,`#d48f90`,`#732f30`,`#ab84a5`,`#59385c`,`#d8b847`,`#b38711`]],[`Renoir`,[`#17154f`,`#2f357c`,`#6c5d9e`,`#9d9cd5`,`#b0799a`,`#f6b3b0`,`#e48171`,`#bf3729`,`#e69b00`,`#f5bb50`,`#ada43b`,`#355828`]],[`Signac`,[`#fbe183`,`#f4c40f`,`#fe9b00`,`#d8443c`,`#9b3441`,`#de597c`,`#e87b89`,`#e6a2a6`,`#aa7aa1`,`#9f5691`,`#633372`,`#1f6e9c`,`#2b9b81`,`#92c051`]],[`Tam`,[`#ffd353`,`#ffb242`,`#ef8737`,`#de4f33`,`#bb292c`,`#9f2d55`,`#62205f`,`#341648`]],[`Tara`,[`#eab1c6`,`#d35e17`,`#e18a1f`,`#e9b109`,`#829d44`]],[`Thomas`,[`#b24422`,`#c44d76`,`#4457a5`,`#13315f`,`#b1a1cc`,`#59386c`,`#447861`,`#7caf5c`]],[`Tiepolo`,[`#802417`,`#c06636`,`#ce9344`,`#e8b960`,`#646e3b`,`#2b5851`,`#508ea2`,`#17486f`]],[`Troy`,[`#421401`,`#6c1d0e`,`#8b3a2b`,`#c27668`,`#7ba0b4`,`#44728c`,`#235070`,`#0a2d46`]],[`Tsimshian`,[`#582310`,`#aa361d`,`#82c45f`,`#318f49`,`#0cb4bb`,`#2673a3`,`#473d7d`]],[`Van Gogh 1`,[`#2c2d54`,`#434475`,`#6b6ca3`,`#969bc7`,`#87bcbd`,`#89ab7c`,`#6f9954`]],[`Van Gogh 2`,[`#bd3106`,`#d9700e`,`#e9a00e`,`#eebe04`,`#5b7314`,`#c3d6ce`,`#89a6bb`,`#454b87`]],[`Van Gogh 3`,[`#e7e5cc`,`#c2d6a4`,`#9cc184`,`#669d62`,`#3c7c3d`,`#1f5b25`,`#1e3d14`,`#192813`]],[`Veronese`,[`#67322e`,`#99610a`,`#c38f16`,`#6e948c`,`#2c6b67`,`#175449`,`#122c43`]],[`Wissing`,[`#4b1d0d`,`#7c291e`,`#ba7233`,`#3a4421`,`#2d5380`]]]},{id:`moma`,title:`MoMA`,credit:`MoMAColors, Blake Robert Mills`,source:`https://github.com/BlakeRMills/MoMAColors`,palettes:[[`Abbott`,[`#950404`,`#e04b28`,`#c38961`,`#9f5630`,`#388f30`,`#0f542f`,`#007d82`,`#004042`]],[`Alkalay 1`,[`#241d1d`,`#5b2125`,`#8d3431`,`#bf542e`,`#e9a800`]],[`Alkalay 2`,[`#ebcf2e`,`#b4bf3a`,`#88ab38`,`#5e9432`,`#3b7d31`,`#225f2f`,`#244422`,`#252916`]],[`Althoff`,[`#ff9898`,`#d9636c`,`#a91e45`,`#691238`,`#251714`]],[`Andri`,[`#f56455`,`#15134b`,`#87c785`,`#572f30`]],[`Avedon`,[`#ff7200`,`#ff8827`,`#ff9c4c`,`#ffb274`,`#f1caa8`,`#e3e1dc`,`#c2ceaa`,`#a1ba77`,`#8bac54`,`#7ea13e`,`#648c16`]],[`Budnitz`,[`#86dd45`,`#f6e71c`,`#fda900`,`#fd5300`,`#57348b`]],[`Clay`,[`#c48329`,`#8b3b36`,`#a2b4b7`,`#514a2e`,`#cf9860`,`#8e4115`]],[`Connors`,[`#d92a05`,`#f35d36`,`#fc9073`,`#ffba1b`,`#60cfa1`]],[`Dali`,[`#b4b87f`,`#9c913f`,`#585b33`,`#6ea8ab`,`#397893`,`#31333f`,`#8f5715`,`#ba9a44`,`#cfbb83`]],[`Doughton`,[`#155b51`,`#216f63`,`#2d8277`,`#3a9387`,`#45a395`,`#c468b2`,`#af509c`,`#803777`,`#5d2155`,`#45113f`]],[`Ernst`,[`#e8e79a`,`#c2d89a`,`#8cbf9a`,`#5fa2a4`,`#477b95`,`#315b88`,`#24396b`,`#191f40`]],[`Exter`,[`#ffec9d`,`#fac881`,`#f4a464`,`#e87444`,`#d9402a`,`#bf2729`,`#912534`,`#64243e`,`#3d1b28`,`#161212`]],[`Flash`,[`#e3c0db`,`#db95cb`,`#cd64b5`,`#b83d9f`,`#900c7e`,`#680369`,`#41045a`,`#140e3a`]],[`Fritsch`,[`#0f8d7b`,`#8942bd`,`#1e1a1a`,`#eadd17`]],[`Kippenberger`,[`#8b174d`,`#ae2565`,`#c1447e`,`#d06c9b`,`#da9fb8`,`#d9d2cc`,`#adbe7c`,`#8ba749`,`#6e8537`,`#4f5f28`,`#343d1f`]],[`Klein`,[`#ff4d6f`,`#579ea4`,`#df7713`,`#f9c000`,`#86ad34`,`#5d7298`,`#81b28d`,`#7e1a2f`,`#2d2651`,`#c8350d`,`#bd777a`]],[`Koons`,[`#d8537d`,`#6dc5b2`,`#eeca76`,`#5d2314`,`#b5282a`]],[`Levine 1`,[`#e0d9b2`,`#818053`,`#6b3848`,`#8b3e50`,`#d5bb6c`,`#3f3a4b`,`#474c66`,`#a5806f`]],[`Levine 2`,[`#e3c1cb`,`#ad5a6b`,`#c993a2`,`#365c83`,`#384351`,`#4d8f8b`,`#cdd6ad`]],[`Liu`,[`#9fd7bd`,`#9b5c1c`,`#97c124`,`#3b5f13`,`#ddb25d`,`#5c4a32`]],[`Lupi`,[`#61bea4`,`#b6e7e0`,`#aa3f5d`,`#daa5ac`,`#98a54f`,`#2e92a2`,`#ffb651`,`#d85a44`]],[`Ohchi`,[`#582851`,`#40606d`,`#69a257`,`#e3d19c`,`#c4024d`]],[`OKeeffe`,[`#f3d567`,`#ee9b43`,`#e74b47`,`#b80422`,`#172767`,`#19798b`]],[`Palermo`,[`#1b80ad`,`#ea5b57`,`#9c5555`,`#0c3c5f`]],[`Panton`,[`#e84a00`,`#bb1d2c`,`#9b0c43`,`#661f66`,`#2c1f62`,`#006289`,`#004759`]],[`Picabia`,[`#53362e`,`#744940`,`#9f7064`,`#c99582`,`#e6bcac`,`#e2d8d6`,`#a5a6ae`,`#858794`,`#666879`,`#515260`,`#3d3d47`]],[`Picasso`,[`#d5968c`,`#c2676d`,`#5c363a`,`#995041`,`#45939c`,`#0f6a81`]],[`Rattner`,[`#de8e69`,`#f1be99`,`#c1bd38`,`#7a9132`,`#4c849a`,`#184363`,`#5d5686`,`#a39fc9`]],[`Sidhu`,[`#af4646`,`#762b35`,`#005187`,`#251c4a`,`#78adb7`,`#4c9a77`,`#1b7975`]],[`Smith`,[`#ef7923`,`#75bca9`,`#7b89bb`,`#e9de97`,`#2a2e38`]],[`ustwo`,[`#d7433b`,`#f06a63`,`#ff8e5e`,`#ffcc3d`,`#95caa6`,`#008d98`]],[`Van Gogh`,[`#c3a016`,`#c3d878`,`#58a787`,`#8ebacd`,`#246893`,`#163274`,`#0c1f4b`]],[`von Heyl`,[`#f96149`,`#ffa479`,`#e7d800`,`#94aec2`,`#0d0c0b`]],[`Warhol`,[`#ff0066`,`#328c97`,`#d1aac2`,`#a5506d`,`#b3e0bf`,`#2a9d3d`,`#edf181`,`#db7003`,`#fba600`,`#f8c1a6`,`#a30000`,`#ff3200`,`#011a51`,`#97d1d9`,`#916c37`]]]},{id:`artists`,title:`Artists`,credit:`lisa, Tyler Littlefield`,source:`https://github.com/tyluRp/lisa`,palettes:[[`Josef Albers`,[`#d77186`,`#61a2da`,`#6cb7da`,`#b5b5b3`,`#d75725`]],[`Josef Albers 1`,[`#c00559`,`#de1f6c`,`#f3a20d`,`#f07a13`,`#de6716`]],[`Gretchen Albrecht`,[`#171635`,`#00225d`,`#763262`,`#ca7508`,`#e9a621`]],[`Billy Apple`,[`#f24d98`,`#813b7c`,`#59d044`,`#f3a002`,`#f2f44d`]],[`Per Arnoldi`,[`#c2151b`,`#2021a0`,`#3547b3`,`#e2c43f`,`#e0dcdd`]],[`Milton Avery`,[`#f3c937`,`#7b533e`,`#bfa588`,`#604847`,`#552723`]],[`Milton Avery 1`,[`#e2cacd`,`#2e7ca8`,`#f1c061`,`#da7338`,`#741d13`]],[`Hilmaaf Klint`,[`#d6cfc4`,`#466ca6`,`#d1ae45`,`#87240e`,`#040204`]],[`Jean Michel Basquiat`,[`#8cabd9`,`#f6a7b8`,`#f1ec7a`,`#1d4d9f`,`#f08838`]],[`Jean Michel Basquiat 1`,[`#c11432`,`#009ada`,`#66a64f`,`#fdd10a`,`#070707`]],[`Max Beckmann`,[`#4b3a51`,`#a77a4b`,`#ecc6a2`,`#a43020`,`#722d24`]],[`Fernando Botero`,[`#99b6bd`,`#b3a86a`,`#ecc9a0`,`#d4613e`,`#bb9568`]],[`Sandro Botticelli`,[`#7a989a`,`#849271`,`#c1ae8d`,`#cf9546`,`#c67052`]],[`Sandro Botticelli 1`,[`#272725`,`#ddbd85`,`#da694f`,`#a54a48`,`#fdffe5`]],[`Pieter Bruegel`,[`#bfbed5`,`#7f9086`,`#a29a68`,`#676a4f`,`#a63c24`]],[`Jack Bush`,[`#529dcb`,`#eca063`,`#71bf50`,`#f3cc4f`,`#d46934`]],[`Jack Bush 1`,[`#a1d8b6`,`#d2c48e`,`#f45f40`,`#f9ae8d`,`#80b9ce`]],[`Mary Cassatt`,[`#1c5679`,`#bbb592`,`#cac3b2`,`#808c5c`,`#5f4b3b`]],[`Paul Cézanne`,[`#8399b3`,`#697a55`,`#c4aa88`,`#b68e52`,`#8c5b28`]],[`Marc Chagall`,[`#3f6f76`,`#69b7ce`,`#c65840`,`#f4ce4b`,`#62496f`]],[`C.M.Coolidge`,[`#204035`,`#4a7169`,`#beb59c`,`#735231`,`#49271b`]],[`Salvador Dali`,[`#40798c`,`#bca455`,`#bfb37f`,`#805730`,`#514a2e`]],[`Salvador Dali 1`,[`#9bc0cc`,`#cad8d8`,`#d0ce9f`,`#806641`,`#534832`]],[`Leonardoda Vinci`,[`#c8b272`,`#a88b4c`,`#a0a584`,`#697153`,`#43362a`]],[`Gene Davis`,[`#293757`,`#568d4b`,`#d5bb56`,`#d26a1b`,`#a41d1a`]],[`Giorgiode Chirico`,[`#27403d`,`#48725c`,`#212412`,`#f3e4c2`,`#d88f2e`]],[`Giorgiode Chirico 1`,[`#2992bf`,`#4cbed9`,`#292c17`,`#f9f6ef`,`#f0742a`]],[`Edgar Degas`,[`#bdb592`,`#acbbc5`,`#9e8d3d`,`#8c4f36`,`#2c2d2c`]],[`Robert Delaunay`,[`#4368b6`,`#78a153`,`#dec23b`,`#e4930a`,`#c53211`]],[`Robert Delaunay 1`,[`#a4b7e1`,`#b8b87a`,`#efde80`,`#efbd37`,`#a85e5e`]],[`Charles Demuth`,[`#e4af79`,`#df9c41`,`#af7231`,`#923621`,`#2d2a28`]],[`Richard Diebenkorn`,[`#2677a5`,`#639bc1`,`#639bc1`,`#90a74a`,`#5d8722`]],[`Otto Dix`,[`#1e1d20`,`#b66636`,`#547a56`,`#bdae5b`,`#515a7c`]],[`Otto Dix 1`,[`#e0dbc8`,`#c9be90`,`#76684b`,`#cdab7e`,`#3c2b23`]],[`Marcel Duchamp`,[`#d0cec2`,`#7baa80`,`#4b6b5e`,`#bf9a41`,`#980019`]],[`Albrecht Dürer`,[`#657359`,`#9aa582`,`#8b775f`,`#d7c9be`,`#f1e4db`]],[`Max Ernst`,[`#91323a`,`#3a4960`,`#d7c969`,`#6d7345`,`#554540`]],[`M.C.Escher`,[`#c1395e`,`#aec17b`,`#f0ca50`,`#e07b42`,`#89a7c2`]],[`Paul Feeley`,[`#2c458d`,`#e4dfd9`,`#425b4f`,`#ebad30`,`#bf2124`]],[`Lorser Feitelson`,[`#202221`,`#661e2a`,`#ab381b`,`#ead4a3`,`#e3ded8`]],[`Helen Frankenthaler`,[`#5d7342`,`#d7ae04`,`#ecd7b8`,`#a58b8c`,`#272727`]],[`Lucian Freud`,[`#e1d2bd`,`#a77e5e`,`#2d291d`,`#85868b`,`#83774d`]],[`Terry Frost`,[`#ef5950`,`#8d5a78`,`#c66f26`,`#fb6b22`,`#dc2227`]],[`Paul Gauguin`,[`#21344f`,`#8aad05`,`#e2ce1b`,`#df5d22`,`#e17976`]],[`Rupprecht Geiger`,[`#ff62a9`,`#f77177`,`#fa9849`,`#fe6e3a`,`#fd5a35`]],[`Hans Hofmann`,[`#1a6ded`,`#2c7ce6`,`#145cbf`,`#162b3d`,`#f9ece4`]],[`Katsushika Hokusai`,[`#1f284c`,`#2d4472`,`#6e6352`,`#d9ccac`,`#ece2c6`]],[`Winslow Homer`,[`#a9944a`,`#f2d9b3`,`#725435`,`#8e9dbf`,`#bd483c`]],[`Edward Hopper`,[`#67161c`,`#3f6148`,`#dbd3a4`,`#a4804c`,`#4b5f80`]],[`Robert Indiana`,[`#2659d8`,`#1c6ff3`,`#5ebc4e`,`#53a946`,`#f24534`]],[`James Jean`,[`#51394e`,`#f6de7d`,`#c8af8a`,`#658385`,`#b04838`]],[`Jasper Johns`,[`#4b6892`,`#f9e583`,`#fed43f`,`#f6bd28`,`#be4c46`]],[`Frida Kahlo`,[`#121510`,`#6d8325`,`#d6cfb7`,`#e5ad4f`,`#bd5630`]],[`Wassily Kandinsky`,[`#5d7388`,`#a08f27`,`#e5a729`,`#4f4d1d`,`#8aae8a`]],[`Wassily Kandinsky 1`,[`#d2981a`,`#a53e1f`,`#457277`,`#8dcee2`,`#8f657d`]],[`Wassily Kandinsky 2`,[`#c13c53`,`#da73a8`,`#4052bd`,`#efe96d`,`#d85143`]],[`Paul Klee`,[`#a7b3cd`,`#e6da9e`,`#676155`,`#cdb296`,`#ccd7ad`]],[`Paul Klee 1`,[`#4f51fe`,`#8c1e92`,`#ff4e0b`,`#cd2019`,`#441c21`]],[`Yves Klein`,[`#344cb9`,`#1b288a`,`#0f185b`,`#d7c99a`,`#f2e4c7`]],[`Gustav Klimt`,[`#4a5fab`,`#609f5c`,`#e3c454`,`#a27cba`,`#b85031`]],[`Jeff Koons`,[`#d6aabe`,`#b69f7f`,`#ecd9ad`,`#76a9a2`,`#a26775`]],[`Lee Krasner`,[`#333333`,`#d1b817`,`#2a2996`,`#b34325`,`#c8ccc6`]],[`Jacob Lawrence`,[`#614671`,`#be994a`,`#c8b595`,`#bd4335`,`#8b3834`]],[`Jacob Lawrence 1`,[`#5e3194`,`#9870b9`,`#f1b02f`,`#ea454c`,`#cc0115`]],[`Sol Le Witt`,[`#0a71b6`,`#f9c40a`,`#190506`,`#eb5432`,`#eaf2f0`]],[`Roy Lichtenstein`,[`#3229ad`,`#bc000e`,`#e7cfb7`,`#ffec04`,`#090109`]],[`Roy Lichtenstein 1`,[`#00020e`,`#ffde01`,`#a5bad6`,`#f1c9c7`,`#bd0304`]],[`Roy Lichtenstein 2`,[`#c7991f`,`#c63d33`,`#23254c`,`#e0c4ae`,`#d5d0b2`]],[`Kazimir Malevich`,[`#151817`,`#001a56`,`#197c3f`,`#d4a821`,`#c74c25`]],[`Édouard Manet`,[`#6486ad`,`#2d345d`,`#d9be7f`,`#5a3a26`,`#c6a490`]],[`Rene Magritte`,[`#b60614`,`#3a282f`,`#909018`,`#e3bfa1`,`#ee833e`]],[`Rene Magritte 1`,[`#b6b3bb`,`#697d8e`,`#b8b87e`,`#6f5f4b`,`#292a2d`]],[`Masaccio`,[`#0e2523`,`#324028`,`#c26b61`,`#5a788d`,`#de7944`]],[`Michelangelo`,[`#42819f`,`#86aa7d`,`#cbb396`,`#555234`,`#4d280f`]],[`Joan Miró`,[`#c04759`,`#3b6c73`,`#383431`,`#f1d87f`,`#ede5d2`]],[`Amedeo Modigliani`,[`#1d2025`,`#45312a`,`#7e2f28`,`#202938`,`#d58e40`]],[`Piet Mondrian`,[`#314290`,`#4a71c0`,`#f1f2ed`,`#f0d32d`,`#ab3a2c`]],[`Claude Monet`,[`#184430`,`#548150`,`#deb738`,`#734321`,`#852419`]],[`Claude Monet 1`,[`#9f4640`,`#4885a4`,`#395a92`,`#7ea860`,`#b985ba`]],[`Claude Monet 2`,[`#82a4bc`,`#4c7899`,`#2f5136`,`#b1b94c`,`#e5dcbe`]],[`Edvard Munch`,[`#5059a1`,`#efc337`,`#1f386e`,`#d1ae82`,`#be3b2c`]],[`Edvard Munch 1`,[`#272a2a`,`#e69253`,`#edb931`,`#e4502e`,`#4378a0`]],[`Barnett Newman`,[`#442327`,`#c0bc98`,`#a6885d`,`#8a3230`,`#973b2b`]],[`Kenneth Noland`,[`#d0d8cd`,`#586180`,`#e2ac29`,`#1a1915`,`#e6e1ce`]],[`Georgia O'Keeffe`,[`#0e122d`,`#182044`,`#51628e`,`#91a1ba`,`#afd0c9`]],[`Claes Oldenburg`,[`#95b1c9`,`#263656`,`#698946`,`#f8d440`,`#c82720`]],[`Pablo Picasso`,[`#cd6c74`,`#566c7d`,`#dd9d91`,`#a1544b`,`#d5898d`]],[`Pablo Picasso 1`,[`#4e7989`,`#a9011b`,`#e4a826`,`#80944e`,`#dcd6b2`]],[`Jackson Pollock`,[`#d89ca9`,`#1962a0`,`#f1ecd7`,`#e8c051`,`#1a1c23`]],[`Prince`,[`#735bcc`,`#6650b4`,`#59449c`,`#4b3984`,`#3e2d6c`]],[`John Quidor`,[`#b79a59`,`#826c37`,`#54442f`,`#dbceaf`,`#c4aa52`]],[`Mel Ramos`,[`#c13e43`,`#376ea5`,`#565654`,`#f9d502`,`#e7ca6b`]],[`Odilon Redon`,[`#695b8f`,`#b26c61`,`#c2af46`,`#4d5e30`,`#8b1f1d`]],[`Rembrandt`,[`#dbc99a`,`#a68329`,`#5b5224`,`#8a350c`,`#090a04`]],[`Pierre Auguste Renoir`,[`#2b5275`,`#a69f55`,`#f1d395`,`#fffbdd`,`#d16647`]],[`Pierre Auguste Renoir 1`,[`#303241`,`#b7a067`,`#c8c2b2`,`#686d4f`,`#4d3930`]],[`Bridget Riley`,[`#fab9ac`,`#7bbc53`,`#de6736`,`#67c1ec`,`#e6b90d`]],[`James Rosenquist`,[`#e25d75`,`#3f4c8c`,`#6a79b0`,`#d7bc1f`,`#dccfab`]],[`Mark Rothko`,[`#e49a16`,`#e19713`,`#d67629`,`#da6e2e`,`#d85434`]],[`Mark Rothko 1`,[`#d5d6d1`,`#bec0bf`,`#5b382c`,`#39352c`,`#1b1b1b`]],[`John Singer Sargent`,[`#b43a35`,`#3e501e`,`#f8f2f4`,`#6b381d`,`#20242d`]],[`John Singer Sargent 1`,[`#778bd0`,`#e2d76b`,`#95bf78`,`#4e6a3d`,`#5f4f38`]],[`John Singer Sargent 2`,[`#eec7a0`,`#eaa69c`,`#bd7c96`,`#a1a481`,`#d97669`]],[`Oskar Schlemmer`,[`#3a488a`,`#8785b2`,`#dabd61`,`#d95f30`,`#be3428`]],[`Georges Seurat`,[`#3f3f63`,`#808eb7`,`#465946`,`#8c9355`,`#925e48`]],[`Sandy Skoglund`,[`#d7f96e`,`#457d24`,`#879387`,`#e1c39f`,`#394835`]],[`Pavel Tchelitchew`,[`#ac2527`,`#f8cc5a`,`#5c8447`,`#61221a`,`#2b4868`]],[`J.M.W.Turner`,[`#f1ecce`,`#9ea3b5`,`#e9d688`,`#a85835`,`#ae8045`]],[`Cy Twombly`,[`#f2788f`,`#f591ea`,`#f0c333`,`#f5c2af`,`#f23b3f`]],[`Johann Jacob Ulrich`,[`#fdddab`,`#e7a974`,`#a87250`,`#7b533d`,`#6a4531`]],[`Theovan Doesburg`,[`#bd748f`,`#3d578e`,`#bfab68`,`#dad7d0`,`#272928`]],[`Theovan Doesburg 1`,[`#53628d`,`#b8b45b`,`#c1c3b6`,`#984f48`,`#2e3432`]],[`Janvan Eyck`,[`#3c490c`,`#3b5b71`,`#262121`,`#7c6c4e`,`#6c2b23`]],[`Vincentvan Gogh`,[`#1a3431`,`#2b41a7`,`#6283c8`,`#ccc776`,`#c7ad24`]],[`Vincentvan Gogh 1`,[`#fbdc30`,`#a7a651`,`#e0ba7a`,`#9ba7b0`,`#5a5f80`]],[`Vincentvan Gogh 2`,[`#374d8d`,`#93a0cb`,`#82a866`,`#c4b743`,`#a35029`]],[`Remedios Varo`,[`#c8daad`,`#989e53`,`#738d60`,`#debc31`,`#9d471a`]],[`Diego Velázquez`,[`#413a2c`,`#241f1a`,`#c5b49b`,`#a57f5b`,`#5c351e`]],[`Johannes Vermeer`,[`#0c0b10`,`#707da6`,`#ccad9d`,`#b08e4a`,`#863b34`]],[`Johannes Vermeer 1`,[`#022f69`,`#d6c17a`,`#d8d0be`,`#6b724b`,`#7c3e2f`]],[`Andy Warhol`,[`#f26386`,`#f588af`,`#a4d984`,`#fcbc52`,`#fd814e`]],[`Andy Warhol 1`,[`#fd0c81`,`#ffed4d`,`#c34582`,`#eba49e`,`#272324`]],[`Andy Warhol 2`,[`#d32934`,`#2f191b`,`#2baa92`,`#d12e6c`,`#f4bcb9`]],[`Andy Warhol 3`,[`#a99364`,`#da95aa`,`#f4f0e4`,`#b74954`,`#c2ddb2`]],[`Grant Wood`,[`#a6bdb0`,`#8b842f`,`#41240b`,`#9c4823`,`#d6aa7e`]],[`Francesco Xanto`,[`#2c6aa5`,`#d9ae2c`,`#ddc655`,`#d88c27`,`#64894d`]],[`Jack Youngerman`,[`#59a55d`,`#efdb56`,`#7d9dc6`,`#eca23f`,`#ca4d2a`]],[`Karl Zerbe`,[`#46734f`,`#caab6c`,`#d0ccaf`,`#617f97`,`#9a352d`]]]},{id:`muralists`,title:`Mexican muralists`,credit:`MexBrewer, Antonio Páez`,source:`https://github.com/paezha/MexBrewer`,palettes:[[`Alacena`,[`#693829`,`#894b33`,`#a56a3e`,`#cfb267`,`#d9c5b6`,`#9ca9ba`,`#5480b5`,`#3d619d`,`#405a95`,`#345084`]],[`Atentado`,[`#171e15`,`#32373a`,`#5e5752`,`#9f9994`,`#ccc2b5`,`#e8cfab`,`#f5bc5c`,`#e2853a`,`#cc4c24`,`#3f1606`]],[`Aurora`,[`#e7c7a8`,`#c29786`,`#874d4a`,`#5f2f2d`,`#3b141a`,`#331718`,`#27170b`]],[`Casita 1`,[`#d2d5db`,`#5c80fa`,`#cfbe31`,`#c14345`,`#1b7a4f`]],[`Casita 2`,[`#70b1e2`,`#1c45da`,`#cacd33`,`#bb1544`,`#06412f`]],[`Casita 3`,[`#0424ac`,`#0f1342`,`#efb540`,`#411913`,`#202610`]],[`Concha`,[`#d6d8d0`,`#d4d5bf`,`#708469`,`#506446`,`#3d4d34`,`#37402b`,`#2a3326`]],[`Frida`,[`#d6d8d0`,`#a4abb0`,`#4c6c94`,`#435e7f`,`#2f415f`,`#232c43`,`#0b1829`]],[`Huida`,[`#752305`,`#ac420a`,`#ce8a37`,`#f8ca7c`,`#ffde90`,`#76a1cd`,`#4e79a5`,`#1b3a6b`,`#0d1d3c`,`#060b1f`]],[`Maiz`,[`#1a2021`,`#2f3536`,`#555c4e`,`#a5a79e`,`#d2d7d1`,`#9bc3c9`,`#7cb0c1`,`#3d72a2`,`#144979`,`#003464`]],[`Naturaleza`,[`#faf7d2`,`#e1ca89`,`#be852c`,`#99300c`,`#80100c`,`#660607`,`#470607`]],[`Ofrenda`,[`#593722`,`#834d24`,`#ab5d26`,`#c3722a`,`#e1c473`,`#e6dab9`,`#a4b591`,`#55804d`,`#416c39`,`#2c5724`]],[`Revolucion`,[`#871c0f`,`#af2213`,`#d9792e`,`#f4c659`,`#f9f2d8`,`#f0f6eb`,`#6fc0ba`,`#368990`,`#244e57`,`#22394a`]],[`Ronda`,[`#49295f`,`#894d9f`,`#bd6dc2`,`#da91e0`,`#e2a9dc`,`#c19a8d`,`#b2877d`,`#a26867`,`#964754`,`#7e3146`]],[`Taurus 1`,[`#fccc64`,`#d4a43c`,`#ef6f43`,`#c7471b`,`#bc3112`,`#930816`,`#7e0c01`]],[`Taurus 2`,[`#a19e97`,`#8f887a`,`#7b7466`,`#635c4a`,`#4e4735`,`#37352e`,`#23211a`]],[`Tierra`,[`#ccc5c3`,`#8d7e4f`,`#7a6431`,`#69542b`,`#573c22`,`#4f330a`,`#3b221a`]],[`Vendedora`,[`#26322c`,`#384d3f`,`#777768`,`#a6b2a5`,`#e3efe2`,`#ffd480`,`#e09743`,`#d25a3e`,`#d42538`,`#a6162b`]]]},{id:`wes`,title:`Wes Anderson`,credit:`wesanderson, Karthik Ram`,source:`https://github.com/karthik/wesanderson`,palettes:[[`Bottle Rocket 1`,[`#a42820`,`#5f5647`,`#9b110e`,`#3f5151`,`#4e2a1e`,`#550307`,`#0c1707`]],[`Bottle Rocket 2`,[`#fad510`,`#cb2314`,`#273046`,`#354823`,`#1e1e1e`]],[`Rushmore 1`,[`#e1bd6d`,`#eabe94`,`#0b775e`,`#35274a`,`#f2300f`]],[`Royal 1`,[`#899da4`,`#c93312`,`#faefd1`,`#dc863b`]],[`Royal 2`,[`#9a8822`,`#f5cdb4`,`#f8afa8`,`#fddda0`,`#74a089`]],[`Zissou 1`,[`#3b9ab2`,`#78b7c5`,`#ebcc2a`,`#e1af00`,`#f21a00`]],[`Zissou 1 Continuous`,[`#3a9ab2`,`#6fb2c1`,`#91bab6`,`#a5c2a3`,`#bdc881`,`#dccb4e`,`#e3b710`,`#e79805`,`#ec7a05`,`#ef5703`,`#f11b00`]],[`Darjeeling 1`,[`#ff0000`,`#00a08a`,`#f2ad00`,`#f98400`,`#5bbcd6`]],[`Darjeeling 2`,[`#eccbae`,`#046c9a`,`#d69c4e`,`#abddde`,`#000000`]],[`Chevalier 1`,[`#446455`,`#fdd262`,`#d3dddc`,`#c7b19c`]],[`Fantastic Fox 1`,[`#dd8d29`,`#e2d200`,`#46acc8`,`#e58601`,`#b40f20`]],[`Moonrise 1`,[`#f3df6c`,`#ceab07`,`#d5d5d3`,`#24281a`]],[`Moonrise 2`,[`#798e87`,`#c27d38`,`#ccc591`,`#29211f`]],[`Moonrise 3`,[`#85d4e3`,`#f4b5bd`,`#9c964a`,`#cdc08c`,`#fad77b`]],[`Cavalcanti 1`,[`#d8b70a`,`#02401b`,`#a2a475`,`#81a88d`,`#972d15`]],[`Grand Budapest 1`,[`#f1bb7b`,`#fd6467`,`#5b1a18`,`#d67236`]],[`Grand Budapest 2`,[`#e6a0c4`,`#c6cdf7`,`#d8a499`,`#7294d4`]],[`Isle of Dogs 1`,[`#9986a5`,`#79402e`,`#ccba72`,`#0f0d0e`,`#d9d0d3`,`#8d8680`]],[`Isle of Dogs 2`,[`#ead3bf`,`#aa9486`,`#b6854d`,`#39312f`,`#1c1718`]],[`French Dispatch`,[`#90d4cc`,`#bd3027`,`#b0afa2`,`#7fc0c6`,`#9d9c85`]],[`Asteroid City 1`,[`#0a9f9d`,`#ceb175`,`#e54e21`,`#6c8645`,`#c18748`]],[`Asteroid City 2`,[`#c52e19`,`#ac9765`,`#54d8b1`,`#b67c3b`,`#175149`,`#af4e24`]],[`Asteroid City 3`,[`#fba72a`,`#d3d4d8`,`#cb7a5c`,`#5785c1`]]]},{id:`ghibli`,title:`Studio Ghibli`,credit:`ghibli, Ewen Henderson`,source:`https://github.com/ewenme/ghibli`,palettes:[[`Marnie Light 1`,[`#95918e`,`#af9699`,`#80c7c9`,`#8ebbd2`,`#e3d1c3`,`#b3ddeb`,`#f3e8cc`]],[`Marnie Medium 1`,[`#28231d`,`#5e2d30`,`#008e90`,`#1c77a3`,`#c5a387`,`#67b8d6`,`#e9d097`]],[`Marnie Dark 1`,[`#15110e`,`#2f1619`,`#004749`,`#0e3b52`,`#635143`,`#335d6b`,`#73684c`]],[`Marnie Light 2`,[`#8e938d`,`#94a39c`,`#97b8af`,`#a2d1bd`,`#c0cdbc`,`#acd2a3`,`#e6e58b`]],[`Marnie Medium 2`,[`#1d271c`,`#274637`,`#2c715f`,`#44a57c`,`#819a7a`,`#58a449`,`#cec917`]],[`Marnie Dark 2`,[`#0e130d`,`#14231c`,`#17382f`,`#22513d`,`#404d3c`,`#2c5223`,`#66650b`]],[`Ponyo Light`,[`#a6a0a0`,`#adb7c0`,`#94c5cc`,`#f4adb3`,`#eebcb1`,`#ecd89d`,`#f4e3d3`]],[`Ponyo Medium`,[`#4c413f`,`#5a6f80`,`#278b9a`,`#e75b64`,`#de7862`,`#d8af39`,`#e8c4a2`]],[`Ponyo Dark`,[`#262020`,`#2d3740`,`#14454c`,`#742d33`,`#6e3c31`,`#6c581d`,`#746353`]],[`Laputa Light`,[`#898d90`,`#8d93a1`,`#9f99b5`,`#afacc9`,`#d7cade`,`#daedf3`,`#f7eabd`]],[`Laputa Medium`,[`#14191f`,`#1d2645`,`#403369`,`#5c5992`,`#ae93be`,`#b4dae5`,`#f0d77b`]],[`Laputa Dark`,[`#090d10`,`#0d1321`,`#1f1935`,`#2f2c49`,`#574a5e`,`#5a6d73`,`#776a3d`]],[`Mononoke Light`,[`#838a90`,`#ba968a`,`#9fa7be`,`#b3b8b1`,`#e7a79b`,`#f2c695`,`#f5edc9`]],[`Mononoke Medium`,[`#06141f`,`#742c14`,`#3d4f7d`,`#657060`,`#cd4f38`,`#e48c2a`,`#ead890`]],[`Mononoke Dark`,[`#030a10`,`#3a160a`,`#1f273e`,`#333831`,`#67271b`,`#724615`,`#756d49`]],[`Spirited Light`,[`#8f9297`,`#9a9c97`,`#c19a9b`,`#c7c0c8`,`#b4dcf5`,`#e1d7cb`,`#dbebf8`]],[`Spirited Medium`,[`#1f262e`,`#353831`,`#833437`,`#8f8093`,`#67b9e9`,`#c3af97`,`#b7d9f2`]],[`Spirited Dark`,[`#0f1217`,`#1a1c17`,`#411a1b`,`#474048`,`#345c75`,`#61574b`,`#5b6b78`]],[`Yesterday Light`,[`#768185`,`#7e8c97`,`#88988d`,`#9dafc3`,`#b1d5bb`,`#ece28b`,`#c3daea`]],[`Yesterday Medium`,[`#061a21`,`#132e41`,`#26432f`,`#4d6d93`,`#6fb382`,`#dcca2c`,`#92bbd9`]],[`Yesterday Dark`,[`#030e12`,`#0b1924`,`#15251a`,`#2a3c50`,`#3e6248`,`#796f18`,`#506777`]],[`Kiki Light`,[`#8e8c8f`,`#9a9aa2`,`#d98594`,`#86c2da`,`#d0c1aa`,`#c0dde1`,`#e9dbd0`]],[`Kiki Medium`,[`#1c1a1f`,`#333544`,`#b50a2a`,`#0e84b4`,`#9e8356`,`#7ebac2`,`#d1b79e`]],[`Kiki Dark`,[`#0e0c0f`,`#1a1a22`,`#590514`,`#06425a`,`#50412a`,`#405d61`,`#695b50`]],[`Totoro Light`,[`#85898a`,`#959492`,`#ac9d96`,`#a8a6a9`,`#a1b1c8`,`#d6c0a9`,`#dcd3c4`]],[`Totoro Medium`,[`#0a1215`,`#2d2a25`,`#583b2b`,`#534c53`,`#446590`,`#ad8152`,`#bba78c`]],[`Totoro Dark`,[`#05090a`,`#151412`,`#2c1d16`,`#282629`,`#213148`,`#564029`,`#5c5344`]]]},{id:`parks`,title:`National parks`,credit:`NatParksPalettes, Kevin S. Blake`,source:`https://github.com/kevinsblake/NatParksPalettes`,palettes:[[`Acadia`,[`#212e52`,`#444e7e`,`#8087aa`,`#b7abbc`,`#f9ece8`,`#fcc893`,`#feb424`,`#fd8700`,`#d8511d`]],[`Arches`,[`#1a3d82`,`#0c62af`,`#4499f5`,`#8fcafd`,`#f2f2f2`,`#f0ac7d`,`#cd622e`,`#b14311`,`#832b0f`]],[`Arches 2`,[`#3a1f46`,`#7f4b89`,`#b46db3`,`#e3a5d6`,`#f3dae4`]],[`Banff`,[`#006475`,`#00a1b7`,`#55cfd8`,`#586028`,`#898928`,`#616571`,`#9da7bf`]],[`Bryce Canyon`,[`#882314`,`#c0532b`,`#cf932c`,`#674d53`,`#8c86a0`,`#724438`,`#d5ab85`]],[`Capitol Reef`,[`#291919`,`#532a34`,`#7c5467`,`#878195`,`#aeb2b7`,`#d4d9dd`]],[`Chamonix`,[`#008ff8`,`#b6aa0d`,`#e2c2a2`,`#e23b0e`,`#f2c621`,`#196689`]],[`Crater Lake`,[`#1d4a79`,`#794c23`,`#6b7444`,`#6089b5`,`#bf9785`,`#275e4d`,`#807b7f`]],[`Cuyahoga`,[`#e07529`,`#faae32`,`#7f7991`,`#a84a00`,`#5d4f36`,`#b39085`]],[`Death Valley`,[`#8c2b0e`,`#c5692d`,`#feb359`,`#132f5b`,`#435f90`,`#68434e`,`#b47e83`]],[`Denali`,[`#20223e`,`#3f3f7b`,`#278192`,`#00b089`,`#2eea8c`,`#8ff7bd`]],[`Everglades`,[`#345023`,`#596c0b`,`#83a102`,`#003b68`,`#426f86`,`#7a712f`]],[`Glacier`,[`#01353d`,`#088096`,`#58b3c7`,`#7ad4e4`,`#b8fcfc`]],[`Grand Canyon`,[`#521e0f`,`#9c593e`,`#dda569`,`#3f4330`,`#8e7e3c`,`#2a4866`,`#6592b0`]],[`Halekala`,[`#722710`,`#a3844d`,`#675243`,`#a85017`,`#838baa`]],[`Iguazu Falls`,[`#415521`,`#97ad3d`,`#4c3425`,`#7f6552`,`#5a8093`,`#9fbad3`]],[`Kings Canyon`,[`#613921`,`#a77652`,`#f2c27b`,`#aac9ed`,`#44637d`,`#8e949f`]],[`Lake Nakuru`,[`#d76e9a`,`#a1acc8`,`#ad3c36`,`#332627`,`#eacacf`,`#aa6b77`]],[`Olympic`,[`#3a4330`,`#426737`,`#75871b`,`#bab97d`,`#faf3ce`,`#fde16a`,`#f9b40e`,`#e88c23`,`#a25933`]],[`Redwood`,[`#5e3b49`,`#9b5f6b`,`#ba817d`,`#325731`,`#6a9741`,`#5f4e2f`]],[`Rocky Mtn`,[`#274c31`,`#a3aeb5`,`#2f4b6a`,`#8f8081`,`#3f7156`,`#6f89a7`,`#5b5443`]],[`Saguaro`,[`#127088`,`#c85729`,`#92874b`,`#cd8a39`,`#ac3414`,`#57643c`]],[`Smoky Mtns`,[`#42511a`,`#889d35`,`#d3d175`,`#b50200`,`#da6c41`,`#7c6e66`,`#bcafa6`]],[`South Downs`,[`#948d2a`,`#d5b44d`,`#89a4bf`,`#f1d6b6`,`#9b8358`,`#577291`]],[`Torres`,[`#2f397a`,`#7391bd`,`#894846`,`#e9988c`,`#535260`,`#b7a7a6`,`#785838`,`#c68d61`,`#4f6008`,`#93995c`]],[`Triglav`,[`#386ec2`,`#b5b5b2`,`#990006`,`#625d0a`,`#b9741f`,`#213958`]],[`Wind Cave`,[`#2f100e`,`#6c3322`,`#b07159`,`#c9a197`,`#e0cdcd`]],[`Volcanoes`,[`#082544`,`#1e547d`,`#79668c`,`#de3c37`,`#f2dc7e`]],[`Yellowstone`,[`#0067a2`,`#dfcb91`,`#cb7223`,`#289a84`,`#7fa4c2`,`#af7e56`]],[`Yosemite`,[`#293633`,`#3d5051`,`#6b7f7f`,`#87a1c7`,`#516b95`,`#304f7d`]]]},{id:`pnw`,title:`Pacific Northwest`,credit:`PNWColors, Jake Lawlor`,source:`https://github.com/jakelawlor/PNWColors`,palettes:[[`Starfish`,[`#24492e`,`#015b58`,`#2c6184`,`#59629b`,`#89689d`,`#ba7999`,`#e69b99`]],[`Shuksan`,[`#33271e`,`#74677e`,`#ac8eab`,`#d7b1c5`,`#ebbdc8`,`#f2cec7`,`#f8e3d1`,`#fefbe9`]],[`Bay`,[`#00496f`,`#0f85a0`,`#edd746`,`#ed8b00`,`#dd4124`]],[`Winter`,[`#2d2926`,`#33454e`,`#537380`,`#81a9ad`,`#ececec`]],[`Lake`,[`#362904`,`#54450f`,`#45681e`,`#4a9152`,`#64a8a8`,`#85b6ce`,`#cde5f9`,`#eef3ff`]],[`Sunset`,[`#41476b`,`#675478`,`#9e6374`,`#c67b6f`,`#de9b71`,`#efbc82`,`#fbdfa2`]],[`Shuksan 2`,[`#5d74a5`,`#b0cbe7`,`#fef7c7`,`#eba07e`,`#a8554e`]],[`Cascades`,[`#2d4030`,`#516823`,`#dec000`,`#e2e260`,`#677e8e`,`#88a2b9`]],[`Sailboat`,[`#6e7cb9`,`#7bbcd5`,`#d0e2af`,`#f5db99`,`#e89c81`,`#d2848d`]],[`Moth`,[`#4a3a3b`,`#984136`,`#c26a7a`,`#ecc0a1`,`#f0f0e4`]],[`Spring`,[`#d8aedd`,`#bf9bdd`,`#cb74ad`,`#e69e9c`,`#ffc3a3`,`#fbe4c6`]],[`Mushroom`,[`#4f412b`,`#865a3c`,`#ba783e`,`#e69c4c`,`#fbcc74`,`#fffbda`]],[`Sunset 2`,[`#1d457f`,`#61599d`,`#c36377`,`#eb7f54`,`#f2af4a`]],[`Anemone`,[`#009474`,`#11c2b5`,`#72e1e1`,`#f1f4ee`,`#efddcf`,`#dcbe9b`,`#b0986c`]]]},{id:`chromotome`,title:`chromotome`,credit:`Kjetil Midtgarden Golid`,source:`https://github.com/kgolid/chromotome`,palettes:[[`cako 1`,[`#f4e9d5`,`#000000`,`#d55a3a`,`#2a5c8a`,`#7e7d14`,`#dbdac9`]],[`cako 2`,[`#000000`,`#dbdac9`,`#d55a3a`,`#2a5c8a`,`#b47b8c`,`#7e7d14`]],[`cako 2 sub 1`,[`#000000`,`#dbdac9`,`#d55a3a`,`#2a5c8a`]],[`cako 2 sub 2`,[`#000000`,`#dbdac9`,`#d55a3a`,`#7e7d14`]],[`cc 239`,[`#e0eff0`,`#e3dd34`,`#78496b`,`#f0527f`,`#a7e0e2`]],[`cc 234`,[`#f7f4ed`,`#ffce49`,`#ede8dc`,`#ff5736`,`#ff99b4`]],[`cc 232`,[`#e9ecde`,`#5c5f46`,`#ff7044`,`#ffce39`,`#66aeaa`]],[`cc 238`,[`#f5e9de`,`#553c60`,`#ffb0a0`,`#ff6749`,`#fbe090`]],[`cc 242`,[`#faf4e4`,`#bbd444`,`#fcd744`,`#fa7b53`,`#423c6f`]],[`cc 245`,[`#f6f4ed`,`#0d4a4e`,`#ff947b`,`#ead3a2`,`#5284ab`]],[`cc 273`,[`#f0efe2`,`#363d4a`,`#7b8a56`,`#ff9369`,`#f4c172`]],[`dale paddle`,[`#abe9e8`,`#ff7a5a`,`#765aa6`,`#fee7bc`,`#515e8c`,`#ffc64a`,`#b460a6`,`#ffffff`,`#4781c1`]],[`dale night`,[`#00ae83`,`#ae5d9d`,`#f1e8bc`,`#ef8fa3`,`#f7c047`,`#58c9ed`,`#f77150`]],[`dale cat`,[`#f6e0b8`,`#f77656`,`#f7f7f7`,`#efc545`,`#dfe0e2`,`#3c70bd`,`#66bee4`]],[`ducci jb`,[`#efe0bc`,`#395e54`,`#e77b4d`,`#050006`,`#e55486`]],[`ducci a`,[`#863f52`,`#809498`,`#d3990e`,`#000000`,`#ecddc5`]],[`ducci b`,[`#d5c08e`,`#ecddc5`,`#79b27b`,`#000000`,`#ac6548`]],[`ducci d`,[`#433d5f`,`#f3cb4d`,`#f2f5e3`,`#20191b`,`#67875c`]],[`ducci e`,[`#e3cd98`,`#c37c2b`,`#f6ecce`,`#000000`,`#386a7a`]],[`ducci f`,[`#e67300`,`#596f7e`,`#eae6c7`,`#463c21`,`#f4cb4c`]],[`ducci g`,[`#ecddc5`,`#c75669`,`#000000`,`#11706a`]],[`ducci h`,[`#ffc34b`,`#6b5c6e`,`#4a2839`,`#d9574a`]],[`ducci i`,[`#a74c02`,`#e9dcad`,`#143331`,`#ffc000`]],[`ducci j`,[`#ecddc5`,`#c47c2b`,`#5f5726`,`#000000`,`#7e8a84`]],[`ducci o`,[`#dfc79b`,`#c15e1f`,`#e4a13a`,`#000000`,`#4d545a`]],[`ducci q`,[`#d06440`,`#4bae8c`,`#d0c1a0`,`#2d3538`]],[`ducci u`,[`#ff7426`,`#f6d700`,`#f2d692`,`#000000`,`#5d3552`]],[`ducci v`,[`#f6eccb`,`#c65f75`,`#d3990e`,`#000000`,`#597e7a`]],[`ducci x`,[`#fbb900`,`#dd614a`,`#f5cedb`,`#1a1e4f`]],[`dt 01`,[`#f3abb0`,`#172a89`,`#f7f7f3`]],[`dt 02`,[`#eee3d3`,`#302956`,`#f3c507`]],[`dt 02 b`,[`#f3c507`,`#eee3d3`]],[`dt 03`,[`#0a5e78`,`#000000`,`#a7a7a7`]],[`dt 04`,[`#50978e`,`#f7f0df`]],[`dt 05`,[`#ee5d65`,`#f0e5cb`]],[`dt 06`,[`#cc2b1c`,`#271f47`,`#e7ceb5`]],[`dt 07`,[`#efebda`,`#6a98a5`,`#d24c18`]],[`dt 08`,[`#efebda`,`#5d9d88`,`#ebb43b`]],[`dt 09`,[`#efebda`,`#052e57`,`#de8d80`]],[`dt 10`,[`#e9b500`,`#e5dfcf`,`#151513`]],[`dt 11`,[`#75c4bf`,`#ece9e2`]],[`dt 12`,[`#c0d0c3`,`#f5f2d3`]],[`dt 13`,[`#ec5525`,`#f5f2d3`,`#f5f2d3`,`#fbd6b8`]],[`exposito`,[`#000000`,`#8bc9c3`,`#ffae43`,`#ea432c`,`#228345`,`#d1d7d3`,`#524e9c`,`#9dc35e`,`#f0a1a1`]],[`exposito sub 1`,[`#000000`,`#8bc9c3`,`#ffae43`,`#ea432c`,`#524e9c`]],[`exposito sub 2`,[`#000000`,`#8bc9c3`,`#ffae43`,`#ea432c`,`#524e9c`,`#f0a1a1`,`#228345`]],[`exposito sub 3`,[`#000000`,`#ffae43`,`#ea432c`,`#524e9c`,`#f0a1a1`]],[`empusa`,[`#f0f0f2`,`#c92a28`,`#e69301`,`#1f8793`,`#13652b`,`#e7d8b0`,`#48233b`,`#e3b3ac`]],[`delphi`,[`#475b62`,`#7a999c`,`#2a1f1d`,`#fbaf3c`,`#df4a33`,`#f0e0c6`,`#af592c`]],[`mably`,[`#dfc792`,`#13477b`,`#2f1b10`,`#d18529`,`#d72a25`,`#e42184`,`#138898`,`#9d2787`,`#7f311b`]],[`nowak`,[`#ede4cb`,`#e85b30`,`#ef9e28`,`#c6ac71`,`#e0c191`,`#3f6279`,`#ee854e`,`#180305`]],[`jupiter`,[`#e6e2d6`,`#c03a53`,`#edd09e`,`#aab5af`,`#023629`,`#eba735`,`#8e9380`,`#6c4127`]],[`hersche`,[`#f0f5f6`,`#df9f00`,`#1f6f50`,`#8e6d7f`,`#da0607`,`#a4a5a7`,`#d3d1c3`,`#42064f`,`#25393a`]],[`cherfi`,[`#e3e2c5`,`#99cb9f`,`#cfb610`,`#d00701`,`#dba78d`,`#2e2c1d`,`#bfbea2`,`#d2cfaf`]],[`harvest`,[`#e5e2cf`,`#313a42`,`#9aad2e`,`#f0ae3c`,`#df4822`,`#8eac9b`,`#cc3d3f`,`#ec8b1c`,`#1b9268`]],[`honey`,[`#f14d42`,`#f4fdec`,`#4fbe5d`,`#265487`,`#f6e916`,`#f9a087`,`#2e99d6`]],[`jungle`,[`#cecaa9`,`#adb100`,`#e5f4e9`,`#f4650f`,`#4d6838`,`#cb9e00`,`#689c7d`,`#e2a1a8`,`#151c2e`]],[`skyspider`,[`#f0dbbc`,`#f4b232`,`#f2dbbd`,`#01799c`,`#e93e48`,`#0b1952`,`#006748`,`#ed817d`]],[`atlas`,[`#f0c328`,`#5399b1`,`#f4e9d5`,`#de4037`,`#ed942f`,`#4e9e48`,`#7a6e62`]],[`giftcard`,[`#fbf5e9`,`#ff514e`,`#fdbc2e`,`#4561cc`,`#2a303e`,`#6cc283`,`#a71172`,`#238da5`,`#9bd7cb`,`#231e58`,`#4e0942`]],[`giftcard sub`,[`#fbf5e9`,`#ff514e`,`#fdbc2e`,`#4561cc`,`#2a303e`,`#6cc283`,`#238da5`,`#9bd7cb`]],[`hilda 01`,[`#e7e8d4`,`#ec5526`,`#f4ac12`,`#9ebbc1`,`#f7f4e2`]],[`hilda 02`,[`#77c1c0`,`#eb5627`,`#eebb20`,`#4e9eb8`,`#f7f5d0`]],[`hilda 03`,[`#6b7752`,`#e95145`,`#f8b917`,`#b8bdc1`,`#ffb2a2`]],[`hilda 04`,[`#f5ede1`,`#e95145`,`#f6bf7a`,`#589da1`,`#f5d9bc`]],[`hilda 05`,[`#ffda82`,`#ff6555`,`#ffb58f`,`#d8eecf`,`#8c4b47`,`#bf7f93`]],[`hilda 06`,[`#f6ecd4`,`#f75952`,`#ffce84`,`#74b7b2`,`#f6f6f6`,`#b17d71`]],[`iiso zeitung`,[`#f5efcb`,`#ee8067`,`#f3df76`,`#00a9c0`,`#f7ab76`]],[`iiso curcuit`,[`#f0f0e8`,`#f0865c`,`#f2b07b`,`#6bc4d2`,`#1a3643`]],[`iiso airlines`,[`#fae5c8`,`#fe765a`,`#ffb468`,`#4b588f`,`#faf1e0`]],[`iiso daily`,[`#e2ded2`,`#e76c4a`,`#f0d967`,`#7f8cb6`,`#1daeb1`,`#ef9640`]],[`jud playground`,[`#ffffff`,`#f04924`,`#fcce09`,`#408ac9`]],[`jud horizon`,[`#f2f0e1`,`#f8c3df`,`#f2e420`,`#28b3d0`,`#648731`,`#ef6a7d`]],[`jud mural`,[`#e3ded8`,`#ca3122`,`#e5af16`,`#4a93a2`,`#0e7e39`,`#e2b9bd`]],[`jud cabinet`,[`#e3ded8`,`#f0afb7`,`#f6bc12`,`#1477bb`,`#41bb9b`]],[`jung bird`,[`#ffffff`,`#fc3032`,`#fed530`,`#33c3fb`,`#ff7bac`,`#fda929`]],[`jung horse`,[`#ffffff`,`#e72e81`,`#f0bf36`,`#3056a2`]],[`jung croc`,[`#ffffff`,`#f13274`,`#eed03e`,`#405e7f`,`#19a198`]],[`jung hippo`,[`#ffffff`,`#ff7bac`,`#ff921e`,`#3ea8f5`,`#7ac943`]],[`jung wolf`,[`#ffffff`,`#e51c39`,`#f1b844`,`#36c4b7`,`#666666`]],[`kov 01`,[`#108266`,`#d24c23`,`#7ba6bc`,`#f0c667`,`#ede2b3`,`#672b35`,`#142a36`]],[`kov 02`,[`#6c96be`,`#e8dccc`,`#e94641`,`#eeaeae`]],[`kov 03`,[`#558947`,`#e3937b`,`#d93f1d`,`#090d15`,`#e6cca7`]],[`kov 04`,[`#deb330`,`#d03718`,`#292b36`,`#33762f`,`#ead7c9`,`#ce7028`,`#689d8d`]],[`kov 05`,[`#7aa5a6`,`#de3f1a`,`#de9232`,`#007158`,`#e6cdaf`,`#869679`]],[`kov 06`,[`#dfd4c1`,`#a87c2a`,`#bdc9b1`,`#f14616`,`#ecbfaf`,`#017724`,`#0e2733`,`#2b9ae9`]],[`kov 06 b`,[`#dfd4c1`,`#d57846`,`#dfe0cc`,`#de442f`,`#e7d3c5`,`#5ec227`,`#302f35`,`#63bdb3`]],[`kov 07`,[`#89c2cd`,`#c91619`,`#fdecd2`,`#f4a000`,`#4c2653`]],[`mayo 1`,[`#ffffff`,`#ea510e`,`#ffd203`,`#0255a3`,`#039177`,`#111111`]],[`mayo 2`,[`#f5f6f1`,`#ea663f`,`#f9cc27`,`#84afd7`,`#7ca994`,`#f1bbc9`,`#242424`]],[`mayo 3`,[`#f5f4f0`,`#ea5b19`,`#f8c9b9`,`#137661`,`#2a2a2a`]],[`frozen rose`,[`#f2e8e4`,`#29368f`,`#e9697b`,`#1b164d`,`#f7d996`]],[`winter night`,[`#122438`,`#dd672e`,`#87c7ca`,`#ebebeb`]],[`saami`,[`#e7e6e4`,`#eab700`,`#e64818`,`#2c6393`,`#eecfca`]],[`knotberry 1`,[`#e5ded8`,`#20342a`,`#f74713`,`#686d2c`,`#e9b4a6`]],[`knotberry 2`,[`#eae2d0`,`#1d3b1a`,`#eb4b11`,`#e5bc00`,`#f29881`]],[`tricolor`,[`#f7f2df`,`#ec643b`,`#56b7ab`,`#f8cb57`,`#1f1e43`]],[`foxshelter`,[`#dddddd`,`#ff3931`,`#007861`,`#311f27`,`#bab9a4`]],[`hermes`,[`#eeccc2`,`#253852`,`#51222f`,`#b53435`,`#ecbb51`]],[`olympia`,[`#faf2e5`,`#ff3250`,`#ffb33a`,`#008c36`,`#0085c6`,`#4c4c4c`]],[`byrnes`,[`#e8e7d4`,`#c54514`,`#dca215`,`#23507f`]],[`butterfly`,[`#191e36`,`#f40104`,`#f6c0b3`,`#99673a`,`#f0f1f4`]],[`floratopia`,[`#1e1a43`,`#bf4a2b`,`#cd902a`,`#4e4973`,`#f5d4bc`]],[`verena`,[`#e2e6e8`,`#f1594a`,`#f5b50e`,`#14a160`,`#2969de`,`#885fa4`]],[`florida citrus`,[`#9ae2d3`,`#ea7251`,`#ebf7f0`,`#02aca5`]],[`lemon citrus`,[`#f79eac`,`#e2d574`,`#f1f4f7`,`#69c5ab`]],[`yuma punk`,[`#161616`,`#f05e3b`,`#ebdec4`,`#ffdb00`]],[`yuma punk 2`,[`#f2d002`,`#f7f5e1`,`#ec643b`]],[`moir`,[`#f7f4ef`,`#a49f4f`,`#d4501e`,`#f7c558`,`#ebbaa6`]],[`sprague`,[`#ec2f28`,`#f8cd28`,`#1e95bb`,`#fbaab3`,`#fcefdf`]],[`bloomberg`,[`#fff3dd`,`#ff5500`,`#f4c145`,`#144714`,`#2f04fc`,`#e276af`]],[`revolucion`,[`#2d1922`,`#ed555d`,`#fffcc9`,`#41b797`,`#eda126`,`#7b5770`]],[`sneaker`,[`#ffffff`,`#e8165b`,`#401e38`,`#66c3b4`,`#ee7724`,`#584098`]],[`miradors`,[`#020202`,`#ff6936`,`#fddc3f`,`#0075ca`,`#00bb70`]],[`kaffeprat`,[`#ffffff`,`#bcaa8c`,`#d8cdbe`,`#484a42`,`#746b58`,`#9a8c73`]],[`jrmy`,[`#ef9198`,`#df456c`,`#ea6a82`,`#270b32`,`#471e43`]],[`animo`,[`#f5f5f5`,`#f6c103`,`#f6f6f6`,`#d1cdc7`,`#e7e6e5`]],[`book`,[`#f5b28a`,`#be1c24`,`#d1a082`,`#037b68`,`#d8b1a5`,`#1c2738`,`#c95a3f`]],[`juxtapoz`,[`#cfc398`,`#20357e`,`#f44242`,`#ffffff`]],[`hurdles`,[`#3c1c03`,`#e16503`,`#dc9a0f`,`#dfe2b4`,`#66a7a6`]],[`ludo`,[`#dedccd`,`#df302f`,`#e5a320`,`#0466b3`,`#0f7963`]],[`riff`,[`#f2f2f2`,`#e24724`,`#c7c7c7`,`#1f3e7c`,`#d29294`,`#010203`]],[`san ramon`,[`#ffffff`,`#4f423a`,`#f6a74b`,`#589286`,`#f8e9e2`,`#2c2825`]],[`one dress`,[`#1767d2`,`#ffffff`,`#f9ab00`,`#212121`]],[`candy wrap`,[`#e7ded5`,`#f19797`,`#f9b73e`,`#ee5151`,`#fb671f`,`#6bbe3a`,`#0c75b7`,`#0b9e4e`,`#763f68`]],[`slicks`,[`#e1decd`,`#d95336`,`#e6ac1d`]],[`circus`,[`#eadcb6`,`#3eb79e`,`#f4a910`,`#f37377`,`#207986`,`#f26003`,`#afce95`]],[`spotlight`,[`#dfdcd5`,`#f34312`,`#00a49e`,`#ef888f`,`#f5b408`,`#412432`]],[`five stars`,[`#ecd598`,`#f5e8c7`,`#d9dcad`,`#cf3933`,`#f3f4f4`,`#74330d`,`#8bb896`,`#eba824`,`#f05c03`]],[`full moon`,[`#f7e8be`,`#aa879f`,`#f6634e`]],[`sunday stroll`,[`#e5cbb5`,`#d44c4c`,`#e47781`,`#f5d274`,`#f7e8be`,`#acbe55`,`#6fb97a`,`#5ba150`,`#037750`,`#003e5e`,`#595373`,`#73659e`,`#ac879f`]],[`vegetable soup`,[`#ec6a22`,`#f7e9c5`,`#399a3f`,`#9ac764`,`#fff7e0`,`#ffcd6b`,`#634754`,`#98c195`,`#708658`]],[`risograph`,[`#f56f64`,`#f9cb1f`,`#f0eace`]],[`tote bag`,[`#f5f5f5`,`#ffc6cf`,`#fd5105`,`#4124b0`]],[`slicks`,[`#212121`,`#ffbdd0`,`#ff4328`,`#e88526`,`#21b929`,`#2193c9`,`#fffcea`,`#ffcc21`]],[`rag mysore`,[`#d5cda1`,`#ec6c26`,`#613a53`,`#e8ac52`,`#639aa0`]],[`rag gol`,[`#f0e0a4`,`#d3693e`,`#803528`,`#f1b156`,`#90a798`]],[`rag belur`,[`#dcd4a6`,`#f46e26`,`#68485f`,`#3d273a`,`#535d55`]],[`rag bangalore`,[`#f9ecd3`,`#ea720e`,`#ca5130`,`#e9c25a`,`#52534f`]],[`rag taj`,[`#efdea2`,`#ce565e`,`#8e1752`,`#f8a100`,`#3ac1a6`]],[`rag virupaksha`,[`#eedfa2`,`#f5736a`,`#925951`,`#feba4c`,`#9d9b9d`]],[`rohlfs 1 R`,[`#fff8e7`,`#004996`,`#567bae`,`#ff4c48`,`#ffbcb3`]],[`rohlfs 1 Y`,[`#fff8e7`,`#004996`,`#567bae`,`#ffc000`,`#ffdca4`]],[`rohlfs 1 G`,[`#fff8e7`,`#004996`,`#567bae`,`#60bf3c`,`#d2deb1`]],[`rohlfs 2`,[`#58bdbc`,`#4d3d9a`,`#f76975`,`#ffffff`,`#eff0dd`]],[`rohlfs 3`,[`#f76975`,`#abdfdf`,`#fde500`,`#58bdbc`,`#eff0dd`]],[`rohlfs 4`,[`#fbbeca`,`#fde500`,`#2f2043`,`#f76975`,`#eff0dd`]],[`retro`,[`#69766f`,`#9ed6cb`,`#f7e5cc`,`#9d8f7f`,`#936454`,`#bf5c32`,`#efad57`]],[`retro washedout`,[`#878a87`,`#cbdbc8`,`#e8e0d4`,`#b29e91`,`#9f736c`,`#b76254`,`#dfa372`]],[`roygbiv warm`,[`#705f84`,`#687d99`,`#6c843e`,`#fc9a1a`,`#dc383a`,`#aa3a33`,`#9c4257`]],[`roygbiv toned`,[`#817c77`,`#396c68`,`#89e3b7`,`#f59647`,`#d63644`,`#893f49`,`#4d3240`]],[`present correct`,[`#fd3741`,`#fe4f11`,`#ff6800`,`#ffa61a`,`#ffc219`,`#ffd114`,`#fcd82e`,`#f4d730`,`#ced562`,`#8ac38f`,`#79b7a0`,`#72b5b1`,`#5b9bae`,`#6ba1b7`,`#49619d`,`#604791`,`#721e7f`,`#9b2b77`,`#ab2562`,`#ca2847`]],[`spatial 01`,[`#ff5937`,`#f6f6f4`,`#4169ff`]],[`spatial 02`,[`#ff5937`,`#f6f6f4`,`#f6f6f4`]],[`spatial 02 i`,[`#f6f6f4`,`#ff5937`,`#ff5937`]],[`spatial 03`,[`#4169ff`,`#f6f6f4`,`#f6f6f4`]],[`spatial 03 i`,[`#f6f6f4`,`#4169ff`,`#4169ff`]],[`system.#01`,[`#ffffff`,`#ff4242`,`#fec101`,`#1841fe`,`#fcbdcc`,`#82e9b5`]],[`system.#02`,[`#ffffff`,`#ff4242`,`#ffd480`,`#1e365d`,`#edb14c`,`#418dcd`]],[`system.#03`,[`#ffffff`,`#f73f4a`,`#d3e5eb`,`#002c3e`,`#1aa1b1`,`#ec6675`]],[`system.#04`,[`#e31f4f`,`#f0ac3f`,`#18acab`,`#26265a`,`#ea7d81`,`#dcd9d0`]],[`system.#05`,[`#ffffff`,`#db4549`,`#d1e1e1`,`#3e6a90`,`#2e3853`,`#a3c9d3`]],[`system.#06`,[`#ffffff`,`#e5475c`,`#95b394`,`#28343b`,`#f7c6a3`,`#eb8078`]],[`system.#07`,[`#ffffff`,`#d75c49`,`#f0efea`,`#509da4`]],[`system.#08`,[`#ffffff`,`#f6625a`,`#92b29f`,`#272c3f`]],[`tsu arcade`,[`#cfc7b9`,`#4aad8b`,`#e15147`,`#f3b551`,`#cec8b8`,`#d1af84`,`#544e47`]],[`tsu harutan`,[`#cfc7b9`,`#75974a`,`#c83e3c`,`#f39140`,`#e4ded2`,`#f8c5a4`,`#434f55`]],[`tsu akasaka`,[`#cfc7b9`,`#687f72`,`#cc7d6c`,`#dec36f`,`#dec7af`,`#ad8470`,`#424637`]],[`tundra 1`,[`#40708c`,`#8e998c`,`#5d3f37`,`#ed6954`,`#f2e9e2`]],[`tundra 2`,[`#5f9e93`,`#3d3638`,`#733632`,`#b66239`,`#b0a1a4`,`#e3dad2`]],[`tundra 3`,[`#87c3ca`,`#7b7377`,`#b2475d`,`#7d3e3e`,`#eb7f64`,`#d9c67a`,`#f3f2f2`]],[`tundra 4`,[`#d53939`,`#b6754d`,`#a88d5f`,`#524643`,`#3c5a53`,`#7d8c7c`,`#dad6cd`]]]},{id:`webgradients`,title:`WebGradients`,credit:`itmeo`,source:`https://github.com/itmeo/webgradients`,palettes:[[`Warm Flame`,[`#ff9a9e`,`#fad0c4`,`#fad0c4`]],[`Night Fade`,[`#a18cd1`,`#fbc2eb`]],[`Spring Warmth`,[`#fad0c4`,`#fad0c4`,`#ffd1ff`]],[`Juicy Peach`,[`#ffecd2`,`#fcb69f`]],[`Young Passion`,[`#ff8177`,`#ff867a`,`#ff8c7f`,`#f99185`,`#cf556c`,`#b12a5b`]],[`Lady Lips`,[`#ff9a9e`,`#fecfef`,`#fecfef`]],[`Sunny Morning`,[`#f6d365`,`#fda085`]],[`Rainy Ashville`,[`#fbc2eb`,`#a6c1ee`]],[`Frozen Dreams`,[`#fdcbf1`,`#fdcbf1`,`#e6dee9`]],[`Winter Neva`,[`#a1c4fd`,`#c2e9fb`]],[`Dusty Grass`,[`#d4fc79`,`#96e6a1`]],[`Tempting Azure`,[`#84fab0`,`#8fd3f4`]],[`Heavy Rain`,[`#cfd9df`,`#e2ebf0`]],[`Amy Crisp`,[`#a6c0fe`,`#f68084`]],[`Mean Fruit`,[`#fccb90`,`#d57eeb`]],[`Lilac Sky`,[`#e0c3fc`,`#8ec5fc`]],[`Ripe Malinka`,[`#f093fb`,`#f5576c`]],[`Cloudy Knoxville`,[`#fdfbfb`,`#ebedee`]],[`Malibu Beach`,[`#4facfe`,`#00f2fe`]],[`New Life`,[`#43e97b`,`#38f9d7`]],[`True Sunset`,[`#fa709a`,`#fee140`]],[`Morpheus Den`,[`#30cfd0`,`#330867`]],[`Rare Wind`,[`#a8edea`,`#fed6e3`]],[`Near Moon`,[`#5ee7df`,`#b490ca`]],[`Wild Apple`,[`#d299c2`,`#fef9d7`]],[`Saint Petersburg`,[`#f5f7fa`,`#c3cfe2`]],[`Arielle's Smile`,[`#16d9e3`,`#30c7ec`,`#46aef7`]],[`Plum Plate`,[`#667eea`,`#764ba2`]],[`Everlasting Sky`,[`#fdfcfb`,`#e2d1c3`]],[`Happy Fisher`,[`#89f7fe`,`#66a6ff`]],[`Blessing`,[`#fddb92`,`#d1fdff`]],[`Sharpeye Eagle`,[`#9890e3`,`#b1f4cf`]],[`Ladoga Bottom`,[`#ebc0fd`,`#d9ded8`]],[`Lemon Gate`,[`#96fbc4`,`#f9f586`]],[`Itmeo Branding`,[`#2af598`,`#009efd`]],[`Zeus Miracle`,[`#cd9cf2`,`#f6f3ff`]],[`Old Hat`,[`#e4afcb`,`#b8cbb8`,`#b8cbb8`,`#e2c58b`,`#c2ce9c`,`#7edbdc`]],[`Star Wine`,[`#b8cbb8`,`#b8cbb8`,`#b465da`,`#cf6cc9`,`#ee609c`,`#ee609c`]],[`Coup de Grace`,[`#dcd9d4`,`#dcd9d4`]],[`Happy Acid`,[`#37ecba`,`#72afd3`]],[`Awesome Pine`,[`#ebbba7`,`#cfc7f8`]],[`New York`,[`#fff1eb`,`#ace0f9`]],[`Shy Rainbow`,[`#eea2a2`,`#bbc1bf`,`#57c6e1`]],[`Loon Crest`,[`#989898`,`#989898`]],[`Mixed Hopes`,[`#c471f5`,`#fa71cd`]],[`Fly High`,[`#48c6ef`,`#6f86d6`]],[`Strong Bliss`,[`#f78ca0`,`#f9748f`,`#fd868c`]],[`Fresh Milk`,[`#feada6`,`#f5efef`]],[`Snow Again`,[`#e6e9f0`,`#eef1f5`]],[`February Ink`,[`#accbee`,`#e7f0fd`]],[`Kind Steel`,[`#e9defa`,`#fbfcdb`]],[`Soft Grass`,[`#c1dfc4`,`#deecdd`]],[`Grown Early`,[`#0ba360`,`#3cba92`]],[`Sharp Blues`,[`#00c6fb`,`#005bea`]],[`Shady Water`,[`#74ebd5`,`#9face6`]],[`Dirty Beauty`,[`#6a85b6`,`#bac8e0`]],[`Great Whale`,[`#a3bded`,`#6991c7`]],[`Teen Notebook`,[`#9795f0`,`#fbc8d4`]],[`Polite Rumors`,[`#a7a6cb`,`#8989ba`,`#8989ba`]],[`Sweet Period`,[`#3f51b1`,`#5a55ae`,`#7b5fac`,`#8f6aae`,`#a86aa4`,`#cc6b8e`,`#f18271`,`#f3a469`,`#f7c978`]],[`Wide Matrix`,[`#fcc5e4`,`#fda34b`,`#ff7882`,`#c8699e`,`#7046aa`,`#0c1db8`,`#020f75`]],[`Soft Cherish`,[`#dbdcd7`,`#dddcd7`,`#e2c9cc`,`#e7627d`,`#b8235a`,`#801357`,`#3d1635`,`#1c1a27`]],[`Red Salvation`,[`#f43b47`,`#453a94`]],[`Burning Spring`,[`#4fb576`,`#44c489`,`#28a9ae`,`#28a2b7`,`#4c7788`,`#6c4f63`,`#432c39`]],[`Night Party`,[`#0250c5`,`#d43f8d`]],[`Sky Glider`,[`#88d3ce`,`#6e45e2`]],[`Heaven Peach`,[`#d9afd9`,`#97d9e1`]],[`Purple Division`,[`#7028e4`,`#e5b2ca`]],[`Aqua Splash`,[`#13547a`,`#80d0c7`]],[`Above Clouds`,[`#bdbbbe`,`#9d9ea3`]],[`Spiky Naga`,[`#505285`,`#585e92`,`#65689f`]],[`Love Kiss`,[`#ff0844`,`#ffb199`]],[`Sharp Glass`,[`#c9ccd3`,`#c9ccd3`]],[`Clean Mirror`,[`#93a5cf`,`#e4efe9`]],[`Premium Dark`,[`#434343`,`#000000`]],[`Cold Evening`,[`#0c3483`,`#a2b6df`,`#6b8cce`]],[`Summer Games`,[`#92fe9d`,`#00c9ff`]],[`Passionate Bed`,[`#ff758c`,`#ff7eb3`]],[`Mountain Rock`,[`#868f96`,`#596164`]],[`Desert Hump`,[`#c79081`,`#dfa579`]],[`Jungle Day`,[`#8baaaa`,`#ae8b9c`]],[`Phoenix Start`,[`#f83600`,`#f9d423`]],[`October Silence`,[`#b721ff`,`#21d4fd`]],[`Faraway River`,[`#6e45e2`,`#88d3ce`]],[`Alchemist Lab`,[`#d558c8`,`#24d292`]],[`Over Sun`,[`#abecd6`,`#fbed96`]],[`Premium White`,[`#d5d4d0`,`#d5d4d0`,`#eeeeec`]],[`Mars Party`,[`#5f72bd`,`#9b23ea`]],[`Eternal Constance`,[`#09203f`,`#537895`]],[`Japan Blush`,[`#ddd6f3`,`#faaca8`,`#faaca8`]],[`Smiling Rain`,[`#dcb0ed`,`#99c99c`]],[`Cloudy Apple`,[`#f3e7e9`,`#e3eeff`,`#e3eeff`]],[`Big Mango`,[`#c71d6f`,`#d09693`]],[`Healthy Water`,[`#96deda`,`#50c9c3`]],[`Amour Amour`,[`#f77062`,`#fe5196`]],[`Risky Concrete`,[`#c4c5c7`,`#dcdddf`,`#ebebeb`]],[`Strong Stick`,[`#a8caba`,`#5d4157`]],[`Vicious Stance`,[`#29323c`,`#485563`]],[`Palo Alto`,[`#16a085`,`#f4d03f`]],[`Happy Memories`,[`#ff5858`,`#f09819`]],[`Midnight Bloom`,[`#2b5876`,`#4e4376`]],[`Crystalline`,[`#00cdac`,`#8ddad5`]],[`Raccoon Back`,[`#bcc5ce`,`#929ead`]],[`Party Bliss`,[`#4481eb`,`#04befe`]],[`Confident Cloud`,[`#dad4ec`,`#dad4ec`,`#f3e7e9`]],[`Le Cocktail`,[`#874da2`,`#c43a30`]],[`Frozen Berry`,[`#e8198b`,`#c7eafd`]],[`Elegance`,[`#eadfdf`,`#ece2df`]],[`Child Care`,[`#f794a4`,`#fdd6bd`]],[`Flying Lemon`,[`#64b3f4`,`#c2e59c`]],[`New Retrowave`,[`#3b41c5`,`#a981bb`,`#ffc8a9`]],[`Hidden Jaguar`,[`#0fd850`,`#f9f047`]],[`Above The Sky`,[`#d3d3d3`,`#d3d3d3`,`#e0e0e0`]],[`Nega`,[`#ee9ca7`,`#ffdde1`]],[`Dense Water`,[`#3ab5b0`,`#3d99be`,`#56317a`]],[`Chemic Aqua`,[`#cddcdc`,`#cddcdc`]],[`Seashore`,[`#209cff`,`#68e0cf`]],[`Marble Wall`,[`#bdc2e8`,`#bdc2e8`,`#e6dee9`]],[`Cheerful Caramel`,[`#e6b980`,`#eacda3`]],[`Night Sky`,[`#1e3c72`,`#1e3c72`,`#2a5298`]],[`Magic Lake`,[`#d5dee7`,`#ffafbd`,`#c9ffbf`]],[`Young Grass`,[`#9be15d`,`#00e3ae`]],[`Colorful Peach`,[`#ed6ea0`,`#ec8c69`]],[`Gentle Care`,[`#ffc3a0`,`#ffafbd`]],[`Plum Bath`,[`#cc208e`,`#6713d2`]],[`Happy Unicorn`,[`#b3ffab`,`#12fff7`]],[`Full Metal`,[`#d5dee7`,`#e8ebf2`,`#e2e7ed`]],[`African Field`,[`#65bd60`,`#5ac1a8`,`#3ec6ed`]],[`Solid Stone`,[`#243949`,`#517fa4`]],[`Orange Juice`,[`#fc6076`,`#ff9a44`]],[`Glass Water`,[`#dfe9f3`,`#ffffff`]],[`Slick Carbon`,[`#323232`,`#3f3f3f`,`#1c1c1c`]],[`North Miracle`,[`#00dbde`,`#fc00ff`]],[`Fruit Blend`,[`#f9d423`,`#ff4e50`]],[`Millennium Pine`,[`#50cc7f`,`#f5d100`]],[`High Flight`,[`#0acffe`,`#495aff`]],[`Mole Hall`,[`#616161`,`#9bc5c3`]],[`Earl Gray`,[`#e4e4e1`,`#e4e4e1`]],[`Space Shift`,[`#3d3393`,`#2b76b9`,`#2cacd1`,`#35eb93`]],[`Forest Inei`,[`#df89b5`,`#bfd9fe`]],[`Rich Metal`,[`#d7d2cc`,`#304352`]],[`Juicy Cake`,[`#e14fad`,`#f9d423`]],[`Smart Indigo`,[`#b224ef`,`#7579ff`]],[`Sand Strike`,[`#c1c161`,`#c1c161`,`#d4d4b1`]],[`Norse Beauty`,[`#ec77ab`,`#7873f5`]],[`Aqua Guidance`,[`#007adf`,`#00ecbc`]],[`Sun Veggie`,[`#20e2d7`,`#f9fea5`]],[`Sea Lord`,[`#2cd8d5`,`#c5c1ff`,`#ffbac3`]],[`Black Sea`,[`#2cd8d5`,`#6b8dd6`,`#8e37d7`]],[`Grass Shampoo`,[`#dfffcd`,`#90f9c4`,`#39f3bb`]],[`Landing Aircraft`,[`#5d9fff`,`#b8dcff`,`#6bbbff`]],[`Witch Dance`,[`#a8bfff`,`#884d80`]],[`Sleepless Night`,[`#5271c4`,`#b19fff`,`#eca1fe`]],[`Angel Care`,[`#ffe29f`,`#ffa99f`,`#ff719a`]],[`Crystal River`,[`#22e1ff`,`#1d8fe1`,`#625eb1`]],[`Soft Lipstick`,[`#b6cee8`,`#f578dc`]],[`Salt Mountain`,[`#fffeff`,`#d7fffe`]],[`Perfect White`,[`#e3fdf5`,`#ffe6fa`]],[`Fresh Oasis`,[`#7de2fc`,`#b9b6e5`]],[`Strict November`,[`#cbbacc`,`#2580b3`]],[`Morning Salad`,[`#b7f8db`,`#50a7c2`]],[`Deep Relief`,[`#7085b6`,`#87a7d9`,`#def3f8`]],[`Sea Strike`,[`#77ffd2`,`#6297db`,`#1eecff`]],[`Night Call`,[`#ac32e4`,`#7918f2`,`#4801ff`]],[`Supreme Sky`,[`#d4ffec`,`#57f2cc`,`#4596fb`]],[`Light Blue`,[`#9efbd3`,`#57e9f2`,`#45d4fb`]],[`Mind Crawl`,[`#473b7b`,`#3584a7`,`#30d2be`]],[`Lily Meadow`,[`#65379b`,`#886aea`,`#6457c6`]],[`Sugar Lollipop`,[`#a445b2`,`#d41872`,`#ff0066`]],[`Sweet Dessert`,[`#7742b2`,`#f180ff`,`#fd8bd9`]],[`Magic Ray`,[`#ff3cac`,`#562b7c`,`#2b86c5`]],[`Teen Party`,[`#ff057c`,`#8d0b93`,`#321575`]],[`Frozen Heat`,[`#ff057c`,`#7c64d5`,`#4cc3ff`]],[`Gagarin View`,[`#69eacb`,`#eaccf8`,`#6654f1`]],[`Fabled Sunset`,[`#231557`,`#44107a`,`#ff1361`]],[`Perfect Blue`,[`#3d4e81`,`#5753c9`,`#6e7ff3`]]]},{id:`themes`,title:`Editor themes`,credit:`Catppuccin, Rosé Pine (mvllow), Nord (Sven Greb), Solarized (Ethan Schoonover), Gruvbox (Pavel Pertsev), Dracula (Zeno Rocha)`,source:`https://github.com/catppuccin/palette, https://github.com/rose-pine/palette, https://github.com/nordtheme/nord, https://github.com/altercation/solarized, https://github.com/morhetz/gruvbox, https://github.com/dracula/dracula-theme`,palettes:[[`Catppuccin Latte`,[`#eff1f5`,`#4c4f69`,`#dc8a78`,`#dd7878`,`#ea76cb`,`#8839ef`,`#d20f39`,`#e64553`,`#fe640b`,`#df8e1d`,`#40a02b`,`#179299`,`#04a5e5`,`#209fb5`,`#1e66f5`,`#7287fd`]],[`Catppuccin Frappé`,[`#303446`,`#c6d0f5`,`#f2d5cf`,`#eebebe`,`#f4b8e4`,`#ca9ee6`,`#e78284`,`#ea999c`,`#ef9f76`,`#e5c890`,`#a6d189`,`#81c8be`,`#99d1db`,`#85c1dc`,`#8caaee`,`#babbf1`]],[`Catppuccin Macchiato`,[`#24273a`,`#cad3f5`,`#f4dbd6`,`#f0c6c6`,`#f5bde6`,`#c6a0f6`,`#ed8796`,`#ee99a0`,`#f5a97f`,`#eed49f`,`#a6da95`,`#8bd5ca`,`#91d7e3`,`#7dc4e4`,`#8aadf4`,`#b7bdf8`]],[`Catppuccin Mocha`,[`#1e1e2e`,`#cdd6f4`,`#f5e0dc`,`#f2cdcd`,`#f5c2e7`,`#cba6f7`,`#f38ba8`,`#eba0ac`,`#fab387`,`#f9e2af`,`#a6e3a1`,`#94e2d5`,`#89dceb`,`#74c7ec`,`#89b4fa`,`#b4befe`]],[`Rosé Pine`,[`#191724`,`#e0def4`,`#eb6f92`,`#f6c177`,`#ebbcba`,`#31748f`,`#9ccfd8`,`#c4a7e7`]],[`Rosé Pine Moon`,[`#232136`,`#e0def4`,`#eb6f92`,`#f6c177`,`#ea9a97`,`#3e8fb0`,`#9ccfd8`,`#c4a7e7`]],[`Rosé Pine Dawn`,[`#faf4ed`,`#464261`,`#b4637a`,`#ea9d34`,`#d7827e`,`#286983`,`#56949f`,`#907aa9`]],[`Nord`,[`#2e3440`,`#3b4252`,`#434c5e`,`#4c566a`,`#d8dee9`,`#e5e9f0`,`#eceff4`,`#8fbcbb`,`#88c0d0`,`#81a1c1`,`#5e81ac`,`#bf616a`,`#d08770`,`#ebcb8b`,`#a3be8c`,`#b48ead`]],[`Solarized dark`,[`#002b36`,`#839496`,`#b58900`,`#cb4b16`,`#dc322f`,`#d33682`,`#6c71c4`,`#268bd2`,`#2aa198`,`#859900`]],[`Solarized light`,[`#fdf6e3`,`#657b83`,`#b58900`,`#cb4b16`,`#dc322f`,`#d33682`,`#6c71c4`,`#268bd2`,`#2aa198`,`#859900`]],[`Gruvbox dark`,[`#282828`,`#ebdbb2`,`#fb4934`,`#b8bb26`,`#fabd2f`,`#83a598`,`#d3869b`,`#8ec07c`,`#fe8019`]],[`Gruvbox light`,[`#fbf1c7`,`#3c3836`,`#9d0006`,`#79740e`,`#b57614`,`#076678`,`#8f3f71`,`#427b58`,`#af3a03`]],[`Dracula`,[`#282a36`,`#f8f8f2`,`#8be9fd`,`#50fa7b`,`#ffb86c`,`#ff79c6`,`#bd93f9`,`#ff5555`,`#f1fa8c`]]]}]}));function Ls(e,t,n,r){if(n<=0||r<=0)return;let i=Math.round(e/n*6),a=Math.round(t/r*6);if(i<1||i>=6||a<1||a>=6)return;let o={x:i/6*n,y:a/6*r};return Math.abs(e-o.x)<=8&&Math.abs(t-o.y)<=8?o:void 0}function Rs(e=[0,-1,1,.01]){let[t,n,r,i]=e,a=i??(r-n)/200;if(![t,n,r,a,r-n].every(Number.isFinite)||r<=n||a<=0)throw RangeError(`DialPad axes need finite [default, min, max, step?] values, min < max, and a positive step.`);let o={default:t,min:n,max:r,step:a};return o.default=zs(t,o),o}function zs(e,t){if(!Number.isFinite(e))return t.default;let n=Math.max(t.min,Math.min(t.max,e));if(n===t.min||n===t.max)return n;let r=t.min+Math.round((n-t.min)/t.step)*t.step;return Math.max(t.min,Math.min(t.max,Number(r.toPrecision(12))))}function Bs(e,t={}){let n={x:Rs(t.x),y:Rs(t.y)},r=typeof e==`object`&&e?e:{};return{x:typeof r.x==`number`?zs(r.x,n.x):n.x.default,y:typeof r.y==`number`?zs(r.y,n.y):n.y.default}}function Vs(e,t,n={}){let r=Rs(n.x),i=Rs(n.y);return{x:zs(r.min+e*(r.max-r.min),r),y:zs(i.max-t*(i.max-i.min),i)}}function Hs(e,t,n,r={}){let i=t===`ArrowLeft`||t===`ArrowRight`?`x`:t===`ArrowUp`||t===`ArrowDown`?`y`:void 0;if(!i)return;let a=Rs(r[i]),o=t===`ArrowRight`||t===`ArrowUp`?1:-1;return{...e,[i]:zs(e[i]+o*a.step*(n?10:1),a)}}function Us(e){return e>=0&&e<=1?{min:0,max:1,step:.01}:e>=0&&e<=10?{min:0,max:e*3||10,step:.1}:e>=0&&e<=100?{min:0,max:e*3||100,step:1}:e>=0?{min:0,max:e*3||1e3,step:10}:{min:e*3,max:-e*3,step:1}}function Ws(e){if(Array.isArray(e)){let[t,n,r,i]=e;return{type:`slider`,value:t,min:n,max:r,step:i}}if(typeof e==`number`)return{type:`slider`,value:e,...Us(e)};if(typeof e==`boolean`)return{type:`toggle`,value:e};if(typeof e==`string`)return hs(e)&&ys(e)?{type:`color`,value:e,gradient:!0}:ts(e)&&e!==`transparent`?{type:`color`,value:e}:{type:`text`,value:e};if(typeof e==`object`&&e&&`type`in e&&typeof e.type==`string`){let t=e;return t.type===`folder`?{...t,children:Gs(t.children)}:t}let{_collapsed:t,...n}=e;return{type:`folder`,open:t!==!0,children:Gs(n)}}function Gs(e){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(t[n]=Ws(r));return t}function Ks(e,t){let n=[];for(let[r,i]of Object.entries(Gs(e))){let e=Js(i,t?`${t}.${r}`:r,Ys(r));e&&n.push(e)}return n}function qs(e,t){let n={};for(let[r,i]of Object.entries(Gs(e))){let e=t?`${t}.${r}`:r;switch(i.type){case`slider`:n[e]=i.value;break;case`toggle`:n[e]=i.value;break;case`action`:n[e]=i;break;case`slot`:break;case`select`:{let t=i.options[0],r=typeof t==`string`?t:t?.value??``;n[e]=i.value??r;break}case`color`:n[e]=i.value??`#000000`;break;case`text`:n[e]=i.value??``;break;case`spring`:n[e]=i;break;case`easing`:n[e]=i;break;case`image`:{let t=i.options?.[0];n[e]=i.value??(typeof t==`string`?t:t?.value??``);break}case`pad`:n[e]=Bs(void 0,i);break;case`folder`:Object.assign(n,qs(i.children,e));break}}return n}function Js(e,t,n){switch(e.type){case`slider`:return{type:`slider`,path:t,label:n,min:e.min,max:e.max,step:e.step??Xs(e.min,e.max)};case`toggle`:return{type:`toggle`,path:t,label:n};case`action`:return{type:`action`,path:t,label:e.label??n};case`select`:return{type:`select`,path:t,label:n,options:e.options};case`color`:return{type:`color`,path:t,label:n,gradient:e.gradient,contrast:e.contrast};case`text`:return{type:`text`,path:t,label:n,placeholder:e.placeholder};case`slot`:return{type:`slot`,path:t,label:e.label??``};case`image`:return{type:`image`,path:t,label:n,options:e.options};case`pad`:return{type:`pad`,path:t,label:n,pad:{x:e.x,y:e.y,labels:e.labels}};case`spring`:return{type:`transition`,path:t,label:n};case`easing`:return{type:`transition`,path:t,label:n};case`folder`:return{type:`folder`,path:t,label:n,defaultOpen:e.open??!0,children:Ks(e.children,t)}}}function Ys(e){return e.replace(/([A-Z])/g,` $1`).replace(/^./,e=>e.toUpperCase()).trim()}function Xs(e,t){let n=t-e;return n<=1?.01:n<=10?.1:n<=100?1:10}function Zs(e){return e.map(e=>typeof e==`string`?{value:e,label:e.replace(/\b\w/g,e=>e.toUpperCase())}:e)}function Qs(e){if(typeof e!=`object`||!e||!(`type`in e))return`simple`;if(e.type===`easing`)return`easing`;if(e.type!==`spring`)return`simple`;let t=e.stiffness!==void 0||e.damping!==void 0||e.mass!==void 0,n=e.visualDuration!==void 0||e.bounce!==void 0;return t&&!n?`advanced`:`simple`}function $s(e,t){let n={};for(let[r,i]of Object.entries(t)){let t=e[r];n[r]=t!==void 0&&typeof t==typeof i?t:i}return n}var ec=e=>typeof e==`object`&&!!e&&!Array.isArray(e);function tc(e,t){return e.map(e=>({...e,shortcut:t[e.path],children:e.children&&tc(e.children,t)}))}var nc=`file:`,rc=400;function ic(e){return e.toLowerCase().normalize(`NFKD`).replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``)||`preset`}var ac=Object.freeze({}),G=new class{panels=new Map;listeners=new Map;globalListeners=new Set;snapshots=new Map;actionListeners=new Map;presets=new Map;activePreset=new Map;baseValues=new Map;slotNodes=new Map;slotListeners=new Map;activeTabName=null;activeTabListeners=new Set;defaults=new Map;persistTargets=new Map;presetWriter=null;pendingWrites=new Map;savedThisSession=new WeakSet;setPresetWriter(e){this.presetWriter=e,this.notifyGlobal()}canWritePresets(){return this.presetWriter!==null}setActiveTab(e){this.activeTabName!==e&&(this.activeTabName=e,this.activeTabListeners.forEach(e=>e()))}getActiveTab(){return this.activeTabName}subscribeActiveTab(e){return this.activeTabListeners.add(e),()=>this.activeTabListeners.delete(e)}registerPanel(e,t,n,r={}){let i=r.shortcuts??{},a=tc(Ks(n,``),i),o=qs(n,``);this.defaults.set(e,o);let s=this.persistTarget(t,r.persist);s?this.persistTargets.set(e,s):this.persistTargets.delete(e);let c=s?this.loadPersisted(s):null,l=c?.values?$s(c.values,o):{...o};this.panels.set(e,{id:e,name:t,controls:a,values:l,shortcuts:i,source:r.source}),this.snapshots.set(e,{...l}),this.baseValues.set(e,c?.baseValues?$s(c.baseValues,o):{...l}),c?.presets&&(this.presets.set(e,c.presets.map(e=>({...e,values:$s(e.values,o)}))),this.activePreset.set(e,c.activePresetId??null)),this.mergeFilePresets(e,r.presets,o),this.persist(e),this.notifyGlobal()}updatePanel(e,t,n,r={}){let i=this.panels.get(e);if(!i){this.registerPanel(e,t,n,r);return}let a=r.shortcuts??i.shortcuts,o=tc(Ks(n,``),a),s=qs(n,``);this.defaults.set(e,s);let c=$s(i.values,s),l=this.baseValues.get(e);this.baseValues.set(e,$s(l??s,s));for(let t of this.presets.get(e)??[])t.values=$s(t.values,s);this.mergeFilePresets(e,r.presets,s);let u=r.source??i.source;this.panels.set(e,{id:e,name:t,controls:o,values:c,shortcuts:a,source:u}),this.snapshots.set(e,{...c}),this.persist(e),this.notify(e),this.notifyGlobal()}unregisterPanel(e){let t=`${e}:`;for(let e of this.slotNodes.keys())e.startsWith(t)&&(this.slotNodes.delete(e),this.slotListeners.get(e)?.forEach(e=>e()),this.slotListeners.delete(e));this.panels.delete(e),this.listeners.delete(e),this.snapshots.delete(e),this.actionListeners.delete(e),this.baseValues.delete(e),this.presets.delete(e),this.activePreset.delete(e),this.defaults.delete(e),this.persistTargets.delete(e);let n=this.pendingWrites.get(e);n&&clearTimeout(n),this.pendingWrites.delete(e),this.notifyGlobal()}mergeFilePresets(e,t,n){let r=this.presets.get(e)??[];if(!t&&!r.some(e=>e.file))return;let i=new Map(r.filter(e=>e.file).map(e=>[e.id,e])),a=(t??[]).map(e=>{let t=nc+ic(e.name);return i.get(t)??{id:t,name:e.name,values:$s(e.values,n),file:!0}}),o=[...i.values()].filter(e=>!a.some(t=>t.id===e.id)&&this.savedThisSession.has(e)),s=[...a,...o,...r.filter(e=>!e.file)];this.presets.set(e,s);let c=this.activePreset.get(e);c&&!s.some(e=>e.id===c)&&this.activePreset.set(e,null)}writeFilePreset(e,t){let n=this.panels.get(e);if(!n||!this.presetWriter)return;let r={};for(let[e,n]of Object.entries(t.values)){let t=typeof n==`object`&&n?n.type:null;t!==`action`&&t!==`slot`&&(r[e]=n)}this.presetWriter({panelName:n.name,source:n.source,slug:t.id.slice(5),preset:{name:t.name,values:r}})}scheduleFileWrite(e,t){let n=this.pendingWrites.get(e);n&&clearTimeout(n),this.pendingWrites.set(e,setTimeout(()=>{this.pendingWrites.delete(e),this.writeFilePreset(e,t)},rc))}updateValue(e,t,n){this.updateValues(e,{[t]:n})}updateValues(e,t){let n=this.panels.get(e);if(!n)return;let r=this.activePreset.get(e),i=r?this.presets.get(e)?.find(e=>e.id===r):void 0,a=r?i?.values:this.baseValues.get(e);for(let[e,r]of Object.entries(t))e in n.values&&(n.values[e]=r,a&&(a[e]=r));i?.file&&this.scheduleFileWrite(e,i),this.snapshots.set(e,{...n.values}),this.persist(e),this.notify(e)}resetValues(e){let t=this.defaults.get(e);t&&this.updateValues(e,{...t})}getValue(e,t){return this.panels.get(e)?.values[t]}getValues(e){return this.snapshots.get(e)??ac}getDefaults(e){return this.defaults.get(e)??ac}getTunableValues(e){let t={};for(let[n,r]of Object.entries(this.getValues(e))){let e=typeof r==`object`&&r?r.type:null;e!==`action`&&e!==`slot`&&(t[n]=r)}return t}getChangedValues(e){let t=this.getDefaults(e),n={};for(let[r,i]of Object.entries(this.getTunableValues(e)))JSON.stringify(i)!==JSON.stringify(t[r])&&(n[r]=i);return n}getPanels(){return Array.from(this.panels.values())}getPanel(e){return this.panels.get(e)}subscribe(e,t){let n=this.listeners.get(e);return n||(n=new Set,this.listeners.set(e,n)),n.add(t),()=>n.delete(t)}subscribeGlobal(e){return this.globalListeners.add(e),()=>this.globalListeners.delete(e)}setSlotNode(e,t,n){let r=`${e}:${t}`;if(n){if(this.slotNodes.get(r)===n)return;this.slotNodes.set(r,n)}else{if(!this.slotNodes.has(r))return;this.slotNodes.delete(r)}this.slotListeners.get(r)?.forEach(e=>e())}getSlotNode(e,t){return this.slotNodes.get(`${e}:${t}`)??null}subscribeSlot(e,t,n){let r=`${e}:${t}`,i=this.slotListeners.get(r);return i||(i=new Set,this.slotListeners.set(r,i)),i.add(n),()=>i.delete(n)}subscribeActions(e,t){let n=this.actionListeners.get(e);return n||(n=new Set,this.actionListeners.set(e,n)),n.add(t),()=>n.delete(t)}triggerAction(e,t){this.actionListeners.get(e)?.forEach(e=>e(t))}savePreset(e,t){let n=this.panels.get(e);if(!n)throw Error(`Panel ${e} not found`);let r=this.presets.get(e)??[],i;if(this.presetWriter){let a=new Set(r.map(e=>e.id)),o=ic(t),s=o;for(let e=2;a.has(nc+s);e++)s=`${o}-${e}`;i={id:nc+s,name:t,values:{...n.values},file:!0},this.savedThisSession.add(i);let c=r.findIndex(e=>!e.file),l=c===-1?r.length:c;this.presets.set(e,[...r.slice(0,l),i,...r.slice(l)]),this.writeFilePreset(e,i)}else i={id:`preset-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,name:t,values:{...n.values}},this.presets.set(e,[...r,i]);let a=i.id;return this.activePreset.set(e,a),this.snapshots.set(e,{...n.values}),this.persist(e),this.notify(e),a}loadPreset(e,t){let n=this.panels.get(e);if(!n)return;let r=(this.presets.get(e)??[]).find(e=>e.id===t);r&&(n.values={...r.values},this.snapshots.set(e,{...n.values}),this.activePreset.set(e,t),this.persist(e),this.notify(e))}deletePreset(e,t){let n=this.presets.get(e)??[];if(n.find(e=>e.id===t)?.file)return;this.presets.set(e,n.filter(e=>e.id!==t)),this.activePreset.get(e)===t&&this.activePreset.set(e,null);let r=this.panels.get(e);r&&this.snapshots.set(e,{...r.values}),this.persist(e),this.notify(e)}clearActivePreset(e){let t=this.panels.get(e),n=this.baseValues.get(e);t&&n&&(t.values={...n},this.snapshots.set(e,{...t.values})),this.activePreset.set(e,null),this.persist(e),this.notify(e)}getPresets(e){return this.presets.get(e)??[]}getActivePresetId(e){return this.activePreset.get(e)??null}getTransitionMode(e,t){return Qs(this.getValue(e,t))}persistTarget(e,t){if(!t)return null;let n=typeof t==`object`?t:{};return{key:n.key??`tunekit:${e}`,storage:n.storage??`localStorage`,presets:n.presets??!0}}storage(e){try{return typeof window>`u`?null:window[e]}catch{return null}}loadPersisted(e){try{let t=this.storage(e.storage)?.getItem(e.key);if(!t)return null;let n=JSON.parse(t);if(!ec(n)||n.version!==1)return null;let r=ec(n.values)?n.values:void 0;if(!e.presets)return{version:1,values:r};let i=Array.isArray(n.presets)?n.presets.filter(e=>ec(e)&&typeof e.id==`string`&&typeof e.name==`string`&&ec(e.values)):[];return{version:1,values:r,baseValues:ec(n.baseValues)?n.baseValues:r,presets:i,activePresetId:i.some(e=>e.id===n.activePresetId)?n.activePresetId:null}}catch{return null}}persist(e){let t=this.persistTargets.get(e),n=this.snapshots.get(e);if(!t||!n)return;let r={version:1,values:n};if(t.presets){r.baseValues=this.baseValues.get(e)??n,r.presets=(this.presets.get(e)??[]).filter(e=>!e.file);let t=this.activePreset.get(e)??null;r.activePresetId=r.presets.some(e=>e.id===t)?t:null}try{this.storage(t.storage)?.setItem(t.key,JSON.stringify(r))}catch{}}notify(e){this.listeners.get(e)?.forEach(e=>e())}notifyGlobal(){this.globalListeners.forEach(e=>e())}},oc,K,sc,cc,lc,uc,dc,fc,pc,mc,hc,gc={},_c=[],vc=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,yc=Array.isArray;function bc(e,t){for(var n in t)e[n]=t[n];return e}function xc(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function Sc(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`?i=t[a]:o[a]=t[a];if(arguments.length>2&&(o.children=arguments.length>3?oc.call(arguments,2):n),typeof e==`function`&&e.defaultProps!=null)for(a in e.defaultProps)o[a]===void 0&&(o[a]=e.defaultProps[a]);return Cc(e,o,r,i,null)}function Cc(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++sc,__i:-1,__u:0};return i==null&&K.vnode!=null&&K.vnode(a),a}function wc(e){return e.children}function Tc(e,t){this.props=e,this.context=t}function Ec(e,t){if(t==null)return e.__?Ec(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?Ec(e):null}function Dc(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,r=[],i=[],a=bc({},t);a.__v=t.__v+1,K.vnode&&K.vnode(a),zc(e.__P,a,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,r,n??Ec(t),!!(32&t.__u),i),a.__v=t.__v,a.__.__k[a.__i]=a,Vc(r,a,i),t.__e=t.__=null,a.__e!=n&&Oc(a)}}function Oc(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),Oc(e)}function kc(e){(!e.__d&&(e.__d=!0)&&cc.push(e)&&!Ac.__r++||lc!=K.debounceRendering)&&((lc=K.debounceRendering)||uc)(Ac)}function Ac(){try{for(var e,t=1;cc.length;)cc.length>t&&cc.sort(dc),e=cc.shift(),t=cc.length,Dc(e)}finally{cc.length=Ac.__r=0}}function jc(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g,_,v=r&&r.__k||_c,y=t.length;for(c=Mc(n,t,v,c,y),d=0;d<y;d++)(p=n.__k[d])!=null&&(f=p.__i!=-1&&v[p.__i]||gc,p.__i=d,g=zc(e,p,f,i,a,o,s,c,l,u),m=p.__e,p.ref&&f.ref!=p.ref&&(f.ref&&Wc(f.ref,null,p),u.push(p.ref,p.__c||m,p)),h==null&&m!=null&&(h=m),(_=!!(4&p.__u))||f.__k===p.__k?c=Nc(p,c,e,_):typeof p.type==`function`&&g!==void 0?c=g:m&&(c=m.nextSibling),p.__u&=-7);return n.__e=h,c}function Mc(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?o=e.__k[a]=Cc(null,o,null,null,null):yc(o)?o=e.__k[a]=Cc(wc,{children:o},null,null,null):o.constructor===void 0&&o.__b>0?o=e.__k[a]=Cc(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):e.__k[a]=o,c=a+f,o.__=e,o.__b=e.__b+1,s=null,(l=o.__i=Fc(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=Ec(s)),Gc(s,s));return r}function Nc(e,t,n,r){var i,a;if(typeof e.type==`function`){for(i=e.__k,a=0;i&&a<i.length;a++)i[a]&&(i[a].__=e,t=Nc(i[a],t,n,r));return t}e.__e!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=Ec(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Pc(e,t){return t||=[],e==null||typeof e==`boolean`||(yc(e)?e.some(function(e){Pc(e,t)}):t.push(e)),t}function Fc(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&(2&l.__u)==0;if(l===null&&s==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function Ic(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||vc.test(t)?n:n+`px`}function Lc(e,t,n,r,i){var a,o;n:if(t==`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||Ic(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||Ic(e.style,t,n[t])}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(fc,`$1`)),o=t.toLowerCase(),t=o in e||t==`onFocusOut`||t==`onFocusIn`?o.slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r?n.u=r.u:(n.u=pc,e.addEventListener(t,a?hc:mc,a)):e.removeEventListener(t,a?hc:mc,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function Rc(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t.t==null)t.t=pc++;else if(t.t<n.u)return;return n(K.event?K.event(t):t)}}}function zc(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),a=[s=t.__e=n.__e]),(u=K.__b)&&u(t);n:if(typeof T==`function`)try{if(_=t.props,v=T.prototype&&T.prototype.render,y=(u=T.contextType)&&r[u.__c],b=u?y?y.props.value:u.__:r,n.__c?g=(d=t.__c=n.__c).__=d.__E:(v?t.__c=d=new T(_,b):(t.__c=d=new Tc(_,b),d.constructor=T,d.render=Kc),y&&y.sub(d),d.state||={},d.__n=r,f=d.__d=!0,d.__h=[],d._sb=[]),v&&d.__s==null&&(d.__s=d.state),v&&T.getDerivedStateFromProps!=null&&(d.__s==d.state&&(d.__s=bc({},d.__s)),bc(d.__s,T.getDerivedStateFromProps(_,d.__s))),p=d.props,m=d.state,d.__v=t,f)v&&T.getDerivedStateFromProps==null&&d.componentWillMount!=null&&d.componentWillMount(),v&&d.componentDidMount!=null&&d.__h.push(d.componentDidMount);else{if(v&&T.getDerivedStateFromProps==null&&_!==p&&d.componentWillReceiveProps!=null&&d.componentWillReceiveProps(_,b),t.__v==n.__v||!d.__e&&d.shouldComponentUpdate!=null&&!1===d.shouldComponentUpdate(_,d.__s,b)){t.__v!=n.__v&&(d.props=_,d.state=d.__s,d.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(e){e&&(e.__=t)}),_c.push.apply(d.__h,d._sb),d._sb=[],d.__h.length&&o.push(d);break n}d.componentWillUpdate!=null&&d.componentWillUpdate(_,d.__s,b),v&&d.componentDidUpdate!=null&&d.__h.push(function(){d.componentDidUpdate(p,m,h)})}if(d.context=b,d.props=_,d.__P=e,d.__e=!1,x=K.__r,S=0,v)d.state=d.__s,d.__d=!1,x&&x(t),u=d.render(d.props,d.state,d.context),_c.push.apply(d.__h,d._sb),d._sb=[];else do d.__d=!1,x&&x(t),u=d.render(d.props,d.state,d.context),d.state=d.__s;while(d.__d&&++S<25);d.state=d.__s,d.getChildContext!=null&&(r=bc(bc({},r),d.getChildContext())),v&&!f&&d.getSnapshotBeforeUpdate!=null&&(h=d.getSnapshotBeforeUpdate(p,m)),C=u!=null&&u.type===wc&&u.key==null?Hc(u.props.children):u,s=jc(e,yc(C)?C:[C],t,n,r,i,a,o,s,c,l),d.base=t.__e,t.__u&=-161,d.__h.length&&o.push(d),g&&(d.__E=d.__=null)}catch(e){if(t.__v=null,c||a!=null)if(e.then){for(t.__u|=c?160:128;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;a[a.indexOf(s)]=null,t.__e=s}else{for(w=a.length;w--;)xc(a[w]);Bc(t)}else t.__e=n.__e,t.__k=n.__k,e.then||Bc(t);K.__e(e,t,n)}else a==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=Uc(n.__e,t,n,r,i,a,o,c,l);return(u=K.diffed)&&u(t),128&t.__u?void 0:s}function Bc(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(Bc))}function Vc(e,t,n){for(var r=0;r<n.length;r++)Wc(n[r],n[++r],n[++r]);K.__c&&K.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){K.__e(e,t.__v)}})}function Hc(e){return typeof e!=`object`||!e||e.__b>0?e:yc(e)?e.map(Hc):bc({},e)}function Uc(e,t,n,r,i,a,o,s,c){var l,u,d,f,p,m,h,g=n.props||gc,_=t.props,v=t.type;if(v==`svg`?i=`http://www.w3.org/2000/svg`:v==`math`?i=`http://www.w3.org/1998/Math/MathML`:i||=`http://www.w3.org/1999/xhtml`,a!=null){for(l=0;l<a.length;l++)if((p=a[l])&&`setAttribute`in p==!!v&&(v?p.localName==v:p.nodeType==3)){e=p,a[l]=null;break}}if(e==null){if(v==null)return document.createTextNode(_);e=document.createElementNS(i,v,_.is&&_),s&&=(K.__m&&K.__m(t,a),!1),a=null}if(v==null)g===_||s&&e.data==_||(e.data=_);else{if(a&&=oc.call(e.childNodes),!s&&a!=null)for(g={},l=0;l<e.attributes.length;l++)g[(p=e.attributes[l]).name]=p.value;for(l in g)p=g[l],l==`dangerouslySetInnerHTML`?d=p:l==`children`||l in _||l==`value`&&`defaultValue`in _||l==`checked`&&`defaultChecked`in _||Lc(e,l,null,p,i);for(l in _)p=_[l],l==`children`?f=p:l==`dangerouslySetInnerHTML`?u=p:l==`value`?m=p:l==`checked`?h=p:s&&typeof p!=`function`||g[l]===p||Lc(e,l,p,g[l],i);if(u)s||d&&(u.__html==d.__html||u.__html==e.innerHTML)||(e.innerHTML=u.__html),t.__k=[];else if(d&&(e.innerHTML=``),jc(t.type==`template`?e.content:e,yc(f)?f:[f],t,n,r,v==`foreignObject`?`http://www.w3.org/1999/xhtml`:i,a,o,a?a[0]:n.__k&&Ec(n,0),s,c),a!=null)for(l=a.length;l--;)xc(a[l]);s||(l=`value`,v==`progress`&&m==null?e.removeAttribute(`value`):m!=null&&(m!==e[l]||v==`progress`&&!m||v==`option`&&m!=g[l])&&Lc(e,l,m,g[l],i),l=`checked`,h!=null&&h!=e[l]&&Lc(e,l,h,g[l],i))}return e}function Wc(e,t,n){try{if(typeof e==`function`){var r=typeof e.__u==`function`;r&&e.__u(),r&&t==null||(e.__u=e(t))}else e.current=t}catch(e){K.__e(e,n)}}function Gc(e,t,n){var r,i;if(K.unmount&&K.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||Wc(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){K.__e(e,t)}r.base=r.__P=null}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&Gc(r[i],t,n||typeof e.type!=`function`);n||xc(e.__e),e.__c=e.__=e.__e=void 0}function Kc(e,t,n){return this.constructor(e,n)}function qc(e,t,n){var r,i,a,o;t==document&&(t=document.documentElement),K.__&&K.__(e,t),i=(r=typeof n==`function`)?null:n&&n.__k||t.__k,a=[],o=[],zc(t,e=(!r&&n||t).__k=Sc(wc,null,[e]),i||gc,gc,t.namespaceURI,!r&&n?[n]:i?null:t.firstChild?oc.call(t.childNodes):null,a,!r&&n?n:i?i.__e:t.firstChild,r,o),Vc(a,e,o)}oc=_c.slice,K={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},sc=0,Tc.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=bc({},this.state);typeof e==`function`&&(e=e(bc({},n),this.props)),e&&bc(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),kc(this))},Tc.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),kc(this))},Tc.prototype.render=wc,cc=[],uc=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,dc=function(e,t){return e.__v.__b-t.__v.__b},Ac.__r=0,fc=/(PointerCapture)$|Capture$/i,pc=0,mc=Rc(!1),hc=Rc(!0);var Jc=`
18
+ :host {
19
+ all: initial;
20
+ font-family: system-ui, -apple-system, 'SF Pro Display', sans-serif;
21
+ -webkit-font-smoothing: antialiased;
22
+ -moz-osx-font-smoothing: grayscale;
23
+ }
24
+
25
+ *,
26
+ *::before,
27
+ *::after {
28
+ box-sizing: border-box;
29
+ margin: 0;
30
+ padding: 0;
31
+ }
32
+
33
+ /* ------------------------------------------------------------------ */
34
+ /* Variables */
35
+ /* ------------------------------------------------------------------ */
36
+
37
+ .up-root,
38
+ .up-portal {
39
+ --up-bg: #0A0A0A;
40
+ --up-surface: #141414;
41
+ --up-surface-hover: #1a1a1a;
42
+ --up-surface-active: #1e1e1e;
43
+ --up-border: #1e1e1e;
44
+ --up-border-hover: #2a2a2a;
45
+ --up-text-1: #ffffff;
46
+ --up-text-2: #d4d4d4;
47
+ --up-text-3: #a3a3a3;
48
+ --up-text-4: #737373;
49
+ --up-radius: 8px;
50
+ --up-row-h: 36px;
51
+ --up-transition: 0.15s ease;
52
+
53
+ font-size: 13px;
54
+ line-height: 1.4;
55
+ color: var(--up-text-2);
56
+ }
57
+
58
+ /* ------------------------------------------------------------------ */
59
+ /* Shell */
60
+ /* ------------------------------------------------------------------ */
61
+
62
+ .up-shell {
63
+ position: fixed;
64
+ z-index: 2147483647;
65
+ background: var(--up-bg);
66
+ border: 1px solid var(--up-border);
67
+ border-radius: 14px;
68
+ box-shadow: 0 8px 32px rgba(0,0,0,0.6);
69
+ overflow: hidden;
70
+ display: flex;
71
+ flex-direction: column;
72
+ max-height: calc(100vh - 24px);
73
+ transition: transform 0.25s cubic-bezier(0,0,0.2,1);
74
+ user-select: none;
75
+ }
76
+
77
+ .up-shell-dragging {
78
+ transition: none !important;
79
+ }
80
+
81
+ /* Inside a caller's element: flow as a block and let the host scroll. */
82
+ .up-shell-hosted {
83
+ position: relative;
84
+ z-index: auto;
85
+ width: 100%;
86
+ max-height: none;
87
+ border: 0;
88
+ border-radius: 0;
89
+ box-shadow: none;
90
+ transition: none;
91
+ }
92
+
93
+ .up-shell-hosted .up-header,
94
+ .up-shell-hosted .up-header:active { cursor: default; }
95
+
96
+ .up-shell-hosted .up-content {
97
+ overflow: visible;
98
+ flex: none;
99
+ }
100
+
101
+ .up-content {
102
+ overflow-y: auto;
103
+ overflow-x: hidden;
104
+ overscroll-behavior: contain;
105
+ flex: 1;
106
+ padding: 0 12px 12px;
107
+ scrollbar-width: none;
108
+ }
109
+
110
+ .up-content::-webkit-scrollbar { display: none; }
111
+
112
+ /* ------------------------------------------------------------------ */
113
+ /* Header */
114
+ /* ------------------------------------------------------------------ */
115
+
116
+ .up-header {
117
+ display: flex;
118
+ align-items: center;
119
+ justify-content: space-between;
120
+ padding: 10px 12px 8px;
121
+ cursor: grab;
122
+ border-bottom: 1px solid var(--up-border);
123
+ flex-shrink: 0;
124
+ }
125
+
126
+ .up-header:active { cursor: grabbing; }
127
+
128
+ .up-header-left {
129
+ display: flex;
130
+ align-items: center;
131
+ gap: 8px;
132
+ min-width: 0;
133
+ }
134
+
135
+ .up-header-title {
136
+ font-size: 14px;
137
+ font-weight: 600;
138
+ color: var(--up-text-1);
139
+ white-space: nowrap;
140
+ overflow: hidden;
141
+ text-overflow: ellipsis;
142
+ }
143
+
144
+ .up-header-actions {
145
+ display: flex;
146
+ align-items: center;
147
+ gap: 4px;
148
+ flex-shrink: 0;
149
+ }
150
+
151
+ .up-header-btn {
152
+ display: flex;
153
+ align-items: center;
154
+ justify-content: center;
155
+ width: 24px;
156
+ height: 24px;
157
+ background: none;
158
+ border: none;
159
+ border-radius: 4px;
160
+ color: var(--up-text-4);
161
+ cursor: pointer;
162
+ transition: color var(--up-transition), background var(--up-transition);
163
+ }
164
+
165
+ .up-header-btn:hover {
166
+ color: var(--up-text-2);
167
+ background: var(--up-surface);
168
+ }
169
+
170
+ .up-header-btn svg {
171
+ width: 14px;
172
+ height: 14px;
173
+ }
174
+
175
+ /* ------------------------------------------------------------------ */
176
+ /* Tabs */
177
+ /* ------------------------------------------------------------------ */
178
+
179
+ .up-tabs {
180
+ display: flex;
181
+ gap: 2px;
182
+ padding: 6px 12px;
183
+ border-bottom: 1px solid var(--up-border);
184
+ flex-shrink: 0;
185
+ }
186
+
187
+ .up-tab {
188
+ padding: 4px 10px;
189
+ font-size: 12px;
190
+ font-weight: 500;
191
+ color: var(--up-text-4);
192
+ background: none;
193
+ border: none;
194
+ border-radius: 6px;
195
+ cursor: pointer;
196
+ transition: color var(--up-transition), background var(--up-transition);
197
+ }
198
+
199
+ .up-tab:hover { color: var(--up-text-3); background: var(--up-surface); }
200
+ .up-tab-active { color: var(--up-text-2); background: var(--up-surface-active); }
201
+
202
+ /* ------------------------------------------------------------------ */
203
+ /* Collapsed tab */
204
+ /* ------------------------------------------------------------------ */
205
+
206
+ /* Edge-docked handle: flush to the screen edge it was dragged off, rounded
207
+ on the inner side only, so it reads as a drawer pull rather than a button. */
208
+ .up-collapsed {
209
+ position: fixed;
210
+ z-index: 2147483647;
211
+ display: flex;
212
+ align-items: center;
213
+ justify-content: center;
214
+ padding: 0;
215
+ font: inherit;
216
+ color: var(--up-text-3);
217
+ background: linear-gradient(180deg, #151515, var(--up-bg));
218
+ border: 1px solid var(--up-border-hover);
219
+ box-shadow: 0 8px 28px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.04);
220
+ cursor: pointer;
221
+ touch-action: none;
222
+ transition:
223
+ left 0.3s cubic-bezier(0.2, 0.9, 0.3, 1),
224
+ top 0.3s cubic-bezier(0.2, 0.9, 0.3, 1),
225
+ width 0.2s cubic-bezier(0,0,0.2,1),
226
+ height 0.2s cubic-bezier(0,0,0.2,1),
227
+ transform 0.2s cubic-bezier(0,0,0.2,1),
228
+ color 0.15s, background 0.15s, box-shadow 0.2s;
229
+ }
230
+
231
+
232
+ .up-collapsed-dragging {
233
+ transition: none;
234
+ cursor: grabbing;
235
+ transform: scale(1.04) !important;
236
+ border-radius: 10px !important;
237
+ border: 1px solid var(--up-border-hover) !important;
238
+ box-shadow: 0 16px 40px rgba(0,0,0,0.6);
239
+ animation: none;
240
+ }
241
+
242
+ /* Released here, the panel opens instead of re-docking. */
243
+ .up-collapsed-will-expand {
244
+ color: var(--up-text-1);
245
+ border-color: #3a3270 !important;
246
+ box-shadow: 0 0 0 4px rgba(139,123,255,0.18), 0 16px 40px rgba(0,0,0,0.6);
247
+ }
248
+
249
+ .up-collapsed-left { border-left: none; border-radius: 0 10px 10px 0; }
250
+ .up-collapsed-right { border-right: none; border-radius: 10px 0 0 10px; }
251
+ .up-collapsed-top { border-top: none; border-radius: 0 0 10px 10px; }
252
+ .up-collapsed-bottom { border-bottom: none; border-radius: 10px 10px 0 0; }
253
+
254
+ /* Magnet points, shown only while the handle is dragged. */
255
+ .up-dock-mark {
256
+ position: fixed;
257
+ z-index: 2147483646;
258
+ pointer-events: none;
259
+ border: 1px dashed rgba(255, 255, 255, 0.18);
260
+ background: rgba(255, 255, 255, 0.03);
261
+ transition: background 0.15s, border-color 0.15s;
262
+ }
263
+ .up-dock-mark-left { border-left: none; border-radius: 0 10px 10px 0; }
264
+ .up-dock-mark-right { border-right: none; border-radius: 10px 0 0 10px; }
265
+ .up-dock-mark-top { border-top: none; border-radius: 0 0 10px 10px; }
266
+ .up-dock-mark-bottom { border-bottom: none; border-radius: 10px 10px 0 0; }
267
+ .up-dock-mark-on {
268
+ border-style: solid;
269
+ border-color: rgba(139, 123, 255, 0.7);
270
+ background: rgba(139, 123, 255, 0.12);
271
+ }
272
+
273
+ /* Slide in only when the panel is first pushed off-screen, not on re-docks. */
274
+ .up-collapsed-enter.up-collapsed-left { animation: up-dock-left 0.3s cubic-bezier(0,0,0.2,1); }
275
+ .up-collapsed-enter.up-collapsed-right { animation: up-dock-right 0.3s cubic-bezier(0,0,0.2,1); }
276
+ .up-collapsed-enter.up-collapsed-top { animation: up-dock-top 0.3s cubic-bezier(0,0,0.2,1); }
277
+ .up-collapsed-enter.up-collapsed-bottom { animation: up-dock-bottom 0.3s cubic-bezier(0,0,0.2,1); }
278
+
279
+ @keyframes up-dock-left { from { transform: translateX(-100%); } }
280
+ @keyframes up-dock-right { from { transform: translateX(100%); } }
281
+ @keyframes up-dock-top { from { transform: translateY(-100%); } }
282
+ @keyframes up-dock-bottom { from { transform: translateY(100%); } }
283
+
284
+ .up-collapsed:hover,
285
+ .up-collapsed:focus-visible {
286
+ color: var(--up-text-1);
287
+ background: linear-gradient(180deg, #1c1c1c, #111);
288
+ box-shadow: 0 10px 32px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.06);
289
+ outline: none;
290
+ }
291
+
292
+ .up-collapsed:focus-visible { border-color: #3a3a3a; }
293
+
294
+ /* Nudge toward the content on hover to hint "pull me out". */
295
+ .up-collapsed-left:hover { transform: translateX(3px); }
296
+ .up-collapsed-right:hover { transform: translateX(-3px); }
297
+ .up-collapsed-top:hover { transform: translateY(3px); }
298
+ .up-collapsed-bottom:hover { transform: translateY(-3px); }
299
+
300
+ .up-knob-arrow {
301
+ width: 16px;
302
+ height: 16px;
303
+ flex-shrink: 0;
304
+ overflow: visible;
305
+ transition: transform 0.25s cubic-bezier(0.3, 1.4, 0.5, 1);
306
+ }
307
+ /* Drawn pointing right; turned so the arrow always faces into the screen. */
308
+ .up-collapsed-right .up-knob-arrow { transform: rotate(180deg); }
309
+ .up-collapsed-top .up-knob-arrow { transform: rotate(90deg); }
310
+ .up-collapsed-bottom .up-knob-arrow { transform: rotate(-90deg); }
311
+ .up-knob-arrow-k2 { color: #8b7bff; }
312
+ .up-knob-arrow-k { transition: transform 0.35s cubic-bezier(0.3, 1.4, 0.5, 1); }
313
+ /* On hover the outer knobs slide level with the middle one. */
314
+ .up-collapsed:hover .up-knob-arrow-k { transform: translateX(6px); }
315
+
316
+ @media (prefers-reduced-motion: reduce) {
317
+ .up-collapsed, .up-knob-arrow, .up-knob-arrow-k { transition: none; animation: none; }
318
+ }
319
+
320
+ /* ------------------------------------------------------------------ */
321
+ /* Resize handles */
322
+ /* ------------------------------------------------------------------ */
323
+
324
+ .up-resize {
325
+ position: absolute;
326
+ z-index: 10;
327
+ }
328
+
329
+ .up-resize-top { top: -3px; left: 8px; right: 8px; height: 6px; cursor: ns-resize; }
330
+ .up-resize-bottom { bottom: -3px; left: 8px; right: 8px; height: 6px; cursor: ns-resize; }
331
+ .up-resize-left { left: -3px; top: 8px; bottom: 8px; width: 6px; cursor: ew-resize; }
332
+ .up-resize-right { right: -3px; top: 8px; bottom: 8px; width: 6px; cursor: ew-resize; }
333
+
334
+ .up-resize-top-left { top: -3px; left: -3px; width: 12px; height: 12px; cursor: nwse-resize; }
335
+ .up-resize-top-right { top: -3px; right: -3px; width: 12px; height: 12px; cursor: nesw-resize; }
336
+ .up-resize-bottom-left { bottom: -3px; left: -3px; width: 12px; height: 12px; cursor: nesw-resize; }
337
+ .up-resize-bottom-right { bottom: -3px; right: -3px; width: 12px; height: 12px; cursor: nwse-resize; }
338
+
339
+ /* ------------------------------------------------------------------ */
340
+ /* Folder */
341
+ /* ------------------------------------------------------------------ */
342
+
343
+ .up-folder {
344
+ margin-bottom: 2px;
345
+ }
346
+
347
+ .up-folder-header {
348
+ display: flex;
349
+ align-items: center;
350
+ justify-content: space-between;
351
+ height: var(--up-row-h);
352
+ cursor: pointer;
353
+ user-select: none;
354
+ }
355
+
356
+ .up-folder-title {
357
+ font-size: 13px;
358
+ font-weight: 600;
359
+ color: var(--up-text-3);
360
+ }
361
+
362
+ .up-folder-chevron {
363
+ width: 16px;
364
+ height: 16px;
365
+ color: var(--up-text-4);
366
+ transition: transform 0.2s cubic-bezier(0,0,0.2,1);
367
+ flex-shrink: 0;
368
+ }
369
+
370
+ .up-folder-chevron-open { transform: rotate(0deg); }
371
+ .up-folder-chevron-closed { transform: rotate(-90deg); }
372
+
373
+ .up-folder-content {
374
+ overflow: hidden;
375
+ transition: height 0.25s cubic-bezier(0,0,0.2,1);
376
+ }
377
+
378
+ .up-folder-inner {
379
+ display: flex;
380
+ flex-direction: column;
381
+ gap: 4px;
382
+ padding-bottom: 4px;
383
+ }
384
+
385
+ /* ------------------------------------------------------------------ */
386
+ /* Slider */
387
+ /* ------------------------------------------------------------------ */
388
+
389
+ .up-slider-wrap { position: relative; height: var(--up-row-h); }
390
+
391
+ .up-slider {
392
+ position: absolute;
393
+ inset: 0;
394
+ cursor: pointer;
395
+ user-select: none;
396
+ overflow: hidden;
397
+ background: var(--up-surface);
398
+ border-radius: var(--up-radius);
399
+ touch-action: none;
400
+ }
401
+
402
+ .up-slider-hashmarks {
403
+ position: absolute;
404
+ inset: 0;
405
+ pointer-events: none;
406
+ }
407
+
408
+ .up-slider-hashmark {
409
+ position: absolute;
410
+ top: 50%;
411
+ width: 1px;
412
+ height: 8px;
413
+ border-radius: 999px;
414
+ transform: translateX(-50%) translateY(-50%);
415
+ background: transparent;
416
+ transition: background 0.2s;
417
+ }
418
+
419
+ .up-slider-active .up-slider-hashmark {
420
+ background: rgba(255,255,255,0.15);
421
+ }
422
+
423
+ .up-slider-fill {
424
+ position: absolute;
425
+ top: 0;
426
+ bottom: 0;
427
+ left: 0;
428
+ pointer-events: none;
429
+ transition: background 0.15s;
430
+ }
431
+
432
+ .up-slider-handle {
433
+ position: absolute;
434
+ top: 50%;
435
+ width: 3px;
436
+ height: 20px;
437
+ border-radius: 999px;
438
+ background: rgba(255,255,255,0.9);
439
+ pointer-events: none;
440
+ transform: translateY(-50%);
441
+ opacity: 0;
442
+ transition: opacity 0.15s;
443
+ }
444
+
445
+ .up-slider-active .up-slider-handle { opacity: 0.5; }
446
+ .up-slider-dragging .up-slider-handle { opacity: 0.9; }
447
+
448
+ .up-slider-label {
449
+ position: absolute;
450
+ left: 10px;
451
+ top: 50%;
452
+ transform: translateY(-50%);
453
+ font-size: 13px;
454
+ font-weight: 500;
455
+ color: var(--up-text-3);
456
+ pointer-events: none;
457
+ }
458
+
459
+ .up-slider-value {
460
+ position: absolute;
461
+ right: 10px;
462
+ top: 50%;
463
+ transform: translateY(-50%);
464
+ font-size: 13px;
465
+ font-weight: 500;
466
+ font-family: ui-monospace, 'SF Mono', monospace;
467
+ color: var(--up-text-3);
468
+ pointer-events: auto;
469
+ border-bottom: 1px solid transparent;
470
+ padding-bottom: 1px;
471
+ transition: color 0.15s;
472
+ }
473
+
474
+ .up-slider-active .up-slider-value { color: var(--up-text-1); }
475
+
476
+ .up-slider-value-editable {
477
+ border-bottom-color: var(--up-text-4);
478
+ cursor: text;
479
+ }
480
+
481
+ .up-slider-input {
482
+ position: absolute;
483
+ right: 10px;
484
+ top: 50%;
485
+ transform: translateY(-50%);
486
+ width: 5ch;
487
+ font-size: 13px;
488
+ font-weight: 500;
489
+ font-family: ui-monospace, 'SF Mono', monospace;
490
+ color: var(--up-text-1);
491
+ background: transparent;
492
+ border: none;
493
+ border-bottom: 1px solid var(--up-text-3);
494
+ padding: 0 0 1px;
495
+ outline: none;
496
+ text-align: right;
497
+ }
498
+
499
+ /* ------------------------------------------------------------------ */
500
+ /* Toggle (segmented) */
501
+ /* ------------------------------------------------------------------ */
502
+
503
+ .up-labeled-row {
504
+ display: flex;
505
+ align-items: center;
506
+ justify-content: space-between;
507
+ gap: 12px;
508
+ height: var(--up-row-h);
509
+ padding: 2px 10px 2px 12px;
510
+ background: var(--up-surface);
511
+ border-radius: var(--up-radius);
512
+ }
513
+
514
+ .up-labeled-row-label {
515
+ font-size: 13px;
516
+ font-weight: 500;
517
+ color: var(--up-text-3);
518
+ flex-shrink: 0;
519
+ }
520
+
521
+ .up-seg {
522
+ position: relative;
523
+ display: flex;
524
+ padding: 2px;
525
+ border-radius: var(--up-radius);
526
+ flex-shrink: 0;
527
+ }
528
+
529
+ .up-seg-pill {
530
+ position: absolute;
531
+ top: 2px;
532
+ bottom: 2px;
533
+ background: var(--up-surface-active);
534
+ border-radius: 6px;
535
+ z-index: 0;
536
+ pointer-events: none;
537
+ transition: left 0.2s cubic-bezier(0,0,0.2,1), width 0.2s cubic-bezier(0,0,0.2,1);
538
+ }
539
+
540
+ .up-seg-btn {
541
+ position: relative;
542
+ z-index: 1;
543
+ flex: 1;
544
+ padding: 6px 12px;
545
+ font-family: inherit;
546
+ font-size: 13px;
547
+ font-weight: 500;
548
+ background: transparent;
549
+ border: none;
550
+ cursor: pointer;
551
+ transition: color 0.15s;
552
+ color: var(--up-text-4);
553
+ }
554
+
555
+ .up-seg-btn-active { color: var(--up-text-2); }
556
+
557
+ /* ------------------------------------------------------------------ */
558
+ /* Action button */
559
+ /* ------------------------------------------------------------------ */
560
+
561
+ .up-action {
562
+ width: 100%;
563
+ padding: 10px 16px;
564
+ font-family: inherit;
565
+ font-size: 13px;
566
+ font-weight: 500;
567
+ color: var(--up-text-3);
568
+ background: var(--up-surface);
569
+ border: none;
570
+ border-radius: var(--up-radius);
571
+ cursor: pointer;
572
+ transition: background var(--up-transition), color var(--up-transition);
573
+ }
574
+
575
+ .up-action:hover { background: var(--up-surface-hover); color: var(--up-text-2); }
576
+ .up-action:active { background: var(--up-surface-active); }
577
+
578
+ /* ------------------------------------------------------------------ */
579
+ /* Select */
580
+ /* ------------------------------------------------------------------ */
581
+
582
+ .up-select-trigger {
583
+ display: flex;
584
+ align-items: center;
585
+ justify-content: space-between;
586
+ gap: 8px;
587
+ width: 100%;
588
+ user-select: none;
589
+ height: var(--up-row-h);
590
+ padding: 0 12px;
591
+ font-family: inherit;
592
+ font-size: 13px;
593
+ font-weight: 500;
594
+ color: var(--up-text-3);
595
+ background: var(--up-surface);
596
+ border: none;
597
+ border-radius: var(--up-radius);
598
+ cursor: pointer;
599
+ transition: background var(--up-transition);
600
+ }
601
+
602
+ .up-select-trigger:hover { background: var(--up-surface-hover); }
603
+ .up-select-trigger-open { background: var(--up-surface-active); }
604
+
605
+ .up-select-right {
606
+ display: flex;
607
+ align-items: center;
608
+ gap: 6px;
609
+ }
610
+
611
+ .up-select-label { flex-shrink: 0; }
612
+
613
+ /* Baseline, not center: the smaller position number should sit on the value's text line. */
614
+ .up-select-current {
615
+ display: flex;
616
+ align-items: baseline;
617
+ gap: 6px;
618
+ min-width: 0;
619
+ }
620
+
621
+ .up-select-value {
622
+ font-size: 13px;
623
+ font-weight: 500;
624
+ color: var(--up-text-1);
625
+ white-space: nowrap;
626
+ overflow: hidden;
627
+ text-overflow: ellipsis;
628
+ }
629
+
630
+ /* Position dots: where the current value sits in the list. */
631
+ .up-select-pos {
632
+ font: 11px ui-monospace, 'SF Mono', Menlo, monospace;
633
+ color: var(--up-text-4);
634
+ opacity: 0.7;
635
+ font-variant-numeric: tabular-nums;
636
+ }
637
+
638
+ .up-select-steps { display: flex; margin-right: -6px; }
639
+ .up-select-step {
640
+ display: grid;
641
+ place-items: center;
642
+ width: 22px;
643
+ height: 24px;
644
+ padding: 0;
645
+ border: none;
646
+ border-radius: 6px;
647
+ background: transparent;
648
+ color: var(--up-text-4);
649
+ cursor: pointer;
650
+ transition: background 0.15s, color 0.15s;
651
+ }
652
+ .up-select-step:hover { background: var(--up-surface-active); color: var(--up-text-1); }
653
+ .up-select-step svg {
654
+ width: 14px;
655
+ height: 14px;
656
+ fill: none;
657
+ stroke: currentColor;
658
+ stroke-width: 2.5;
659
+ stroke-linecap: round;
660
+ stroke-linejoin: round;
661
+ }
662
+
663
+ .up-select-chevron {
664
+ width: 16px;
665
+ height: 16px;
666
+ color: var(--up-text-4);
667
+ transition: transform 0.2s cubic-bezier(0,0,0.2,1);
668
+ flex-shrink: 0;
669
+ }
670
+
671
+ .up-select-chevron-open { transform: rotate(180deg); }
672
+
673
+ .up-select-dropdown {
674
+ position: fixed;
675
+ display: flex;
676
+ flex-direction: column;
677
+ background: #1a1a1a;
678
+ border: 1px solid var(--up-border-hover);
679
+ border-radius: var(--up-radius);
680
+ padding: 4px;
681
+ z-index: 1;
682
+ box-shadow: 0 8px 24px rgba(0,0,0,0.5);
683
+ animation: up-dropdown-in 0.15s cubic-bezier(0,0,0.2,1);
684
+ }
685
+
686
+ @keyframes up-dropdown-in {
687
+ from { opacity: 0; transform: translateY(-4px) scale(0.97); }
688
+ to { opacity: 1; transform: translateY(0) scale(1); }
689
+ }
690
+
691
+ .up-select-option {
692
+ appearance: none;
693
+ display: flex;
694
+ align-items: center;
695
+ justify-content: space-between;
696
+ width: 100%;
697
+ padding: 8px 10px;
698
+ font-family: inherit;
699
+ font-size: 13px;
700
+ font-weight: 500;
701
+ color: var(--up-text-3);
702
+ background: transparent;
703
+ border: none;
704
+ border-radius: 6px;
705
+ cursor: pointer;
706
+ text-align: left;
707
+ transition: background var(--up-transition);
708
+ }
709
+
710
+ .up-select-option-selected { color: var(--up-text-1); }
711
+ .up-select-option-highlight { background: var(--up-surface-hover); color: var(--up-text-1); }
712
+ .up-select-check {
713
+ width: 6px;
714
+ height: 6px;
715
+ border-radius: 50%;
716
+ background: #8b7bff;
717
+ }
718
+
719
+ /* ------------------------------------------------------------------ */
720
+ /* Text input */
721
+ /* ------------------------------------------------------------------ */
722
+
723
+ .up-text-row {
724
+ display: flex;
725
+ align-items: center;
726
+ justify-content: space-between;
727
+ gap: 12px;
728
+ height: var(--up-row-h);
729
+ padding: 0 12px;
730
+ background: var(--up-surface);
731
+ border-radius: var(--up-radius);
732
+ }
733
+
734
+ .up-text-label {
735
+ font-size: 13px;
736
+ font-weight: 500;
737
+ color: var(--up-text-3);
738
+ flex-shrink: 0;
739
+ }
740
+
741
+ .up-text-input {
742
+ flex: 1;
743
+ min-width: 0;
744
+ font-family: inherit;
745
+ font-size: 13px;
746
+ font-weight: 500;
747
+ color: var(--up-text-3);
748
+ background: transparent;
749
+ border: none;
750
+ padding: 0;
751
+ outline: none;
752
+ text-align: right;
753
+ }
754
+
755
+ .up-text-input:focus { color: var(--up-text-1); }
756
+ .up-text-input::placeholder { color: var(--up-text-4); }
757
+
758
+ /* ------------------------------------------------------------------ */
759
+ /* Color */
760
+ /* ------------------------------------------------------------------ */
761
+
762
+ .up-color-row {
763
+ display: flex;
764
+ align-items: center;
765
+ justify-content: space-between;
766
+ gap: 12px;
767
+ height: var(--up-row-h);
768
+ padding: 0 12px;
769
+ background: var(--up-surface);
770
+ border-radius: var(--up-radius);
771
+ }
772
+
773
+ .up-color-label {
774
+ font-size: 13px;
775
+ font-weight: 500;
776
+ color: var(--up-text-3);
777
+ flex-shrink: 0;
778
+ }
779
+
780
+ .up-color-inputs {
781
+ display: flex;
782
+ align-items: center;
783
+ gap: 8px;
784
+ }
785
+
786
+ .up-color-hex {
787
+ font-size: 13px;
788
+ font-weight: 500;
789
+ font-family: ui-monospace, 'SF Mono', monospace;
790
+ color: var(--up-text-3);
791
+ cursor: text;
792
+ }
793
+
794
+ .up-color-hex-input {
795
+ width: 7ch;
796
+ font-size: 13px;
797
+ font-weight: 500;
798
+ font-family: ui-monospace, 'SF Mono', monospace;
799
+ color: var(--up-text-3);
800
+ background: transparent;
801
+ border: none;
802
+ padding: 0;
803
+ outline: none;
804
+ text-transform: uppercase;
805
+ }
806
+
807
+ .up-color-hex-input:focus { color: var(--up-text-1); }
808
+
809
+ .up-color-swatch {
810
+ width: 20px;
811
+ height: 20px;
812
+ border-radius: 4px;
813
+ border: 1px solid var(--up-border-hover);
814
+ cursor: pointer;
815
+ transition: transform 0.15s;
816
+ flex-shrink: 0;
817
+ }
818
+
819
+ .up-color-swatch:hover { transform: scale(1.1); }
820
+
821
+ .up-color-native {
822
+ position: absolute;
823
+ width: 0;
824
+ height: 0;
825
+ opacity: 0;
826
+ pointer-events: none;
827
+ }
828
+
829
+ /* ------------------------------------------------------------------ */
830
+ /* Spring/Easing visualization */
831
+ /* ------------------------------------------------------------------ */
832
+
833
+ .up-viz {
834
+ display: block;
835
+ width: 100%;
836
+ border-radius: 10px;
837
+ background: var(--up-surface);
838
+ overflow: visible;
839
+ }
840
+
841
+ .up-viz-grid line { stroke: rgba(255,255,255,0.08); stroke-width: 1; }
842
+ .up-viz-target { stroke: rgba(255,255,255,0.15); stroke-width: 1; stroke-dasharray: 4 4; }
843
+ .up-viz-curve {
844
+ fill: none;
845
+ stroke: rgba(255,255,255,0.7);
846
+ stroke-width: 2;
847
+ stroke-linecap: round;
848
+ stroke-linejoin: round;
849
+ }
850
+
851
+ .up-ease-input {
852
+ width: 150px;
853
+ text-align: right;
854
+ font-family: ui-monospace, 'SF Mono', Menlo, monospace;
855
+ font-size: 12px;
856
+ }
857
+
858
+ /* ------------------------------------------------------------------ */
859
+ /* Keyboard focus */
860
+ /* ------------------------------------------------------------------ */
861
+
862
+ .up-root :where(button, input, textarea, [tabindex]):focus { outline: none; }
863
+ .up-root :where(button, [role="slider"], [role="button"], [role="combobox"], [role="radio"], .dialkit-color-plane, .dialkit-pad-surface):focus-visible,
864
+ .up-portal :where(button, [tabindex], .dialkit-color-plane):focus-visible {
865
+ outline: 2px solid rgba(255,255,255,0.6);
866
+ outline-offset: -2px;
867
+ }
868
+ .up-slider:focus-visible .up-slider-value { color: var(--up-text-1); }
869
+ @media (forced-colors: active) {
870
+ .up-root :where(button, [role="slider"], [role="combobox"]):focus-visible { outline-color: Highlight; }
871
+ }
872
+
873
+ /* ------------------------------------------------------------------ */
874
+ /* Preset manager */
875
+ /* ------------------------------------------------------------------ */
876
+
877
+ .up-preset-bar {
878
+ display: flex;
879
+ align-items: center;
880
+ gap: 4px;
881
+ padding: 6px 12px;
882
+ border-bottom: 1px solid var(--up-border);
883
+ flex-shrink: 0;
884
+ }
885
+
886
+ .up-preset-trigger {
887
+ display: flex;
888
+ align-items: center;
889
+ justify-content: space-between;
890
+ flex: 1;
891
+ height: 28px;
892
+ padding: 0 10px;
893
+ font-family: inherit;
894
+ font-size: 12px;
895
+ font-weight: 500;
896
+ color: var(--up-text-3);
897
+ background: var(--up-surface);
898
+ border: none;
899
+ border-radius: 6px;
900
+ cursor: pointer;
901
+ transition: background var(--up-transition);
902
+ }
903
+
904
+ .up-preset-trigger:hover { background: var(--up-surface-hover); }
905
+
906
+ .up-preset-add {
907
+ display: flex;
908
+ align-items: center;
909
+ justify-content: center;
910
+ width: 28px;
911
+ height: 28px;
912
+ background: var(--up-surface);
913
+ border: none;
914
+ border-radius: 6px;
915
+ cursor: pointer;
916
+ color: var(--up-text-4);
917
+ flex-shrink: 0;
918
+ transition: background var(--up-transition), color var(--up-transition);
919
+ }
920
+
921
+ .up-preset-add:hover { background: var(--up-surface-hover); color: var(--up-text-2); }
922
+
923
+ .up-preset-add svg {
924
+ width: 14px;
925
+ height: 14px;
926
+ }
927
+
928
+ .up-preset-dropdown {
929
+ position: fixed;
930
+ background: #1a1a1a;
931
+ border: 1px solid var(--up-border-hover);
932
+ border-radius: 10px;
933
+ padding: 4px;
934
+ z-index: 20;
935
+ box-shadow: 0 8px 24px rgba(0,0,0,0.5);
936
+ min-width: 140px;
937
+ animation: up-dropdown-in 0.15s cubic-bezier(0,0,0.2,1);
938
+ }
939
+
940
+ .up-preset-item {
941
+ display: flex;
942
+ align-items: center;
943
+ justify-content: space-between;
944
+ padding: 6px 10px;
945
+ gap: 8px;
946
+ border-radius: 6px;
947
+ cursor: pointer;
948
+ transition: background var(--up-transition);
949
+ font-size: 12px;
950
+ font-weight: 500;
951
+ color: var(--up-text-3);
952
+ }
953
+
954
+ .up-preset-item:hover { background: var(--up-surface-hover); }
955
+ .up-preset-item-active { color: var(--up-text-1); background: var(--up-surface-active); }
956
+
957
+ .up-preset-delete {
958
+ display: flex;
959
+ align-items: center;
960
+ justify-content: center;
961
+ width: 20px;
962
+ height: 20px;
963
+ background: none;
964
+ border: none;
965
+ cursor: pointer;
966
+ opacity: 0;
967
+ color: var(--up-text-4);
968
+ flex-shrink: 0;
969
+ transition: opacity var(--up-transition);
970
+ }
971
+
972
+ .up-preset-item:hover .up-preset-delete { opacity: 0.6; }
973
+ .up-preset-delete:hover { opacity: 1 !important; }
974
+
975
+ .up-preset-delete svg {
976
+ width: 12px;
977
+ height: 12px;
978
+ }
979
+
980
+ /* ------------------------------------------------------------------ */
981
+ /* Copy button */
982
+ /* ------------------------------------------------------------------ */
983
+
984
+ .up-copy-btn {
985
+ display: flex;
986
+ align-items: center;
987
+ justify-content: center;
988
+ width: 28px;
989
+ height: 28px;
990
+ background: var(--up-surface);
991
+ border: none;
992
+ border-radius: 6px;
993
+ cursor: pointer;
994
+ color: var(--up-text-4);
995
+ flex-shrink: 0;
996
+ transition: background var(--up-transition), color var(--up-transition);
997
+ }
998
+
999
+ .up-copy-btn:hover { background: var(--up-surface-hover); color: var(--up-text-2); }
1000
+
1001
+ .up-copy-btn svg {
1002
+ width: 14px;
1003
+ height: 14px;
1004
+ }
1005
+
1006
+ /* ------------------------------------------------------------------ */
1007
+ /* Slot */
1008
+ /* ------------------------------------------------------------------ */
1009
+
1010
+ .up-slot-wrap {
1011
+ display: flex;
1012
+ flex-direction: column;
1013
+ gap: 4px;
1014
+ }
1015
+
1016
+ .up-slot-wrap-empty {
1017
+ display: none;
1018
+ }
1019
+
1020
+ .up-slot {
1021
+ display: flex;
1022
+ flex-direction: column;
1023
+ gap: 4px;
1024
+ }
1025
+
1026
+ .up-slot-label {
1027
+ font-size: 11px;
1028
+ color: var(--up-text-3);
1029
+ padding: 0 2px;
1030
+ }
1031
+
1032
+ /* Stacked layout: each panel is a top-level collapsible section. */
1033
+ .up-folder-section {
1034
+ margin: 0;
1035
+ }
1036
+
1037
+ .up-folder-section + .up-folder-section {
1038
+ border-top: 1px solid var(--up-border);
1039
+ }
1040
+
1041
+ /* The section head (title + versions) pins while its controls scroll beneath. */
1042
+ .up-folder-section > .up-folder-head {
1043
+ position: sticky;
1044
+ top: 0;
1045
+ z-index: 2;
1046
+ background: var(--up-bg);
1047
+ }
1048
+
1049
+ /* Cover .up-content's side padding so rows don't show through the gutters. */
1050
+ .up-folder-section > .up-folder-head::before {
1051
+ content: '';
1052
+ position: absolute;
1053
+ inset: 0 -12px;
1054
+ z-index: -1;
1055
+ background: var(--up-bg);
1056
+ }
1057
+
1058
+ .up-folder-section > .up-folder-head > .up-folder-header {
1059
+ height: 44px;
1060
+ }
1061
+
1062
+ .up-folder-section > .up-folder-head .up-folder-title {
1063
+ font-size: 15px;
1064
+ font-weight: 600;
1065
+ line-height: 20px;
1066
+ color: var(--up-text-1);
1067
+ }
1068
+
1069
+ .up-folder-toolbar {
1070
+ padding: 4px 0 6px;
1071
+ }
1072
+
1073
+ .up-folder-toolbar .up-preset-bar {
1074
+ padding: 0;
1075
+ border-bottom: none;
1076
+ }
1077
+
1078
+ .up-folder-section > .up-folder-content > .up-folder-inner {
1079
+ padding-bottom: 12px;
1080
+ }
1081
+
1082
+ /* Nested groups read as blocks between hairlines; adjacent ones share one. */
1083
+ .up-content-stacked .up-folder:not(.up-folder-section) {
1084
+ margin: 4px 0;
1085
+ border-top: 1px solid var(--up-border);
1086
+ border-bottom: 1px solid var(--up-border);
1087
+ }
1088
+
1089
+ .up-content-stacked .up-folder:not(.up-folder-section) + .up-folder:not(.up-folder-section) {
1090
+ margin-top: -5px;
1091
+ }
1092
+
1093
+ /* ------------------------------------------------------------------ */
1094
+ /* Panel section */
1095
+ /* ------------------------------------------------------------------ */
1096
+
1097
+ .up-panel-section {
1098
+ display: flex;
1099
+ flex-direction: column;
1100
+ gap: 4px;
1101
+ }
1102
+
1103
+ /* ------------------------------------------------------------------ */
1104
+ /* Children slot */
1105
+ /* ------------------------------------------------------------------ */
1106
+
1107
+ .up-children {
1108
+ padding: 0 0 10px;
1109
+ margin-bottom: 10px;
1110
+ border-bottom: 1px solid var(--up-border);
1111
+ }
1112
+
1113
+ .up-children:empty {
1114
+ display: none;
1115
+ }
1116
+
1117
+ /* ------------------------------------------------------------------ */
1118
+ /* Portal container (for dropdowns inside shadow DOM) */
1119
+ /* ------------------------------------------------------------------ */
1120
+
1121
+ .up-portal {
1122
+ position: fixed;
1123
+ top: 0;
1124
+ left: 0;
1125
+ z-index: 2147483647;
1126
+ pointer-events: none;
1127
+ }
1128
+
1129
+ .up-portal > * {
1130
+ pointer-events: auto;
1131
+ }
1132
+
1133
+ .up-overlay-backdrop {
1134
+ position: fixed;
1135
+ inset: 0;
1136
+ }
1137
+
1138
+ /* ------------------------------------------------------------------ */
1139
+ /* Color picker */
1140
+ /* ------------------------------------------------------------------ */
1141
+
1142
+ .up-portal {
1143
+ --up-checker: repeating-conic-gradient(#2a2a2a 0 25%, #1a1a1a 0 50%) 0 0 / 10px 10px;
1144
+ --up-accent: #8b7bff;
1145
+ }
1146
+
1147
+ /* Doubled with dialkit's class: its own swatch rule comes later in the sheet and paints from a variable tunekit never sets. */
1148
+ .dialkit-color-swatch.up-cp-swatch {
1149
+ background: var(--up-swatch), repeating-conic-gradient(#aaa 0% 25%, #eee 0% 50%) 0 / 8px 8px;
1150
+ }
1151
+
1152
+ /* The popover is promoted to the top layer ([popover]); undo the UA popover box. */
1153
+ .up-cp-pop {
1154
+ inset: auto;
1155
+ margin: 0;
1156
+ z-index: 2147483647;
1157
+ display: flex;
1158
+ flex-direction: column;
1159
+ overflow: hidden;
1160
+ color: var(--up-text-2);
1161
+ background: var(--up-bg);
1162
+ border: 1px solid var(--up-border-hover);
1163
+ border-radius: 14px;
1164
+ box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
1165
+ font: 13px/1.4 system-ui, -apple-system, sans-serif;
1166
+ user-select: none;
1167
+ animation: up-cp-enter 0.16s ease-out;
1168
+ }
1169
+ .up-cp-copy {
1170
+ display: inline-flex; align-items: center; gap: 6px; min-width: 0; padding: 3px 6px; margin-right: -2px;
1171
+ border: 0; border-radius: 6px; background: none; cursor: pointer;
1172
+ color: var(--up-text-3); font: 12px ui-monospace, 'SF Mono', Menlo, monospace; white-space: nowrap;
1173
+ transition: background 0.15s, color 0.15s;
1174
+ }
1175
+ .up-cp-copy:hover { background: var(--up-surface-hover); color: var(--up-text-1); }
1176
+ .up-cp-copy[data-copied] { color: #7ee2a8; }
1177
+ .up-cp-copy-text { overflow: hidden; text-overflow: ellipsis; animation: up-cp-copy-in 0.22s cubic-bezier(0.2, 0.8, 0.2, 1); }
1178
+ @keyframes up-cp-copy-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
1179
+ .up-cp-copy-icon { position: relative; width: 12px; height: 12px; flex: none; }
1180
+ .up-cp-copy-icon svg {
1181
+ position: absolute; inset: 0; width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round;
1182
+ transition: opacity 0.18s, transform 0.28s cubic-bezier(0.3, 1.5, 0.5, 1);
1183
+ }
1184
+ .up-cp-copy-b { opacity: 0; transform: scale(0.4) rotate(-20deg); }
1185
+ .up-cp-copy[data-copied] .up-cp-copy-a { opacity: 0; transform: scale(0.4) rotate(20deg); }
1186
+ .up-cp-copy[data-copied] .up-cp-copy-b { opacity: 1; transform: none; }
1187
+ @media (prefers-reduced-motion: reduce) {
1188
+ .up-cp-copy-text { animation: none; }
1189
+ .up-cp-copy-icon svg { transition: none; }
1190
+ }
1191
+ .up-cp-scroll {
1192
+ flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 10px; padding: 10px;
1193
+ overflow-y: auto; overscroll-behavior: contain; scrollbar-width: none;
1194
+ }
1195
+ .up-cp-scroll::-webkit-scrollbar { display: none; }
1196
+ .up-cp-library { display: contents; }
1197
+ .up-cp-grip {
1198
+ position: absolute; right: 2px; bottom: 2px; width: 14px; height: 14px; z-index: 3;
1199
+ display: flex; align-items: center; justify-content: center; cursor: nwse-resize; color: var(--up-text-4); opacity: 0.6;
1200
+ }
1201
+ .up-cp-pop[data-side="before"] .up-cp-grip { right: auto; left: 2px; cursor: nesw-resize; transform: scaleX(-1); }
1202
+ .up-cp-grip:hover { opacity: 1; color: var(--up-text-2); }
1203
+ .up-cp-grip svg { width: 10px; height: 10px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; }
1204
+ @keyframes up-cp-enter { from { opacity: 0; transform: translateY(3px) scale(0.98); } to { opacity: 1; transform: none; } }
1205
+
1206
+ .up-cp-pop svg { flex-shrink: 0; }
1207
+ .up-cp-pop button { font-family: inherit; }
1208
+
1209
+ .up-cp-tabs { display: flex; gap: 2px; padding: 2px; border-radius: 9px; background: var(--up-surface); flex-shrink: 0; }
1210
+ .up-cp-tab {
1211
+ flex: 1; height: 26px; display: flex; align-items: center; justify-content: center; gap: 5px;
1212
+ border: 0; border-radius: 7px; background: none; color: var(--up-text-4);
1213
+ font-size: 12px; font-weight: 500; cursor: pointer;
1214
+ }
1215
+ .up-cp-tab:hover { color: var(--up-text-2); }
1216
+ .up-cp-tab-on { background: var(--up-surface-active); color: var(--up-text-1); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4); }
1217
+ .up-cp-tab svg { width: 14px; height: 14px; }
1218
+
1219
+ .up-cp-editor, .up-cp-gradient { display: flex; flex-direction: column; gap: 10px; outline: none; }
1220
+ .up-cp-row { display: flex; align-items: center; gap: 8px; }
1221
+ .up-cp-between { justify-content: space-between; }
1222
+ .up-cp-hint { font-size: 10.5px; color: var(--up-text-4); }
1223
+ .up-cp-hidden { visibility: hidden; }
1224
+
1225
+ .up-cp-area { position: relative; height: 150px; border-radius: 9px; cursor: crosshair; touch-action: none; flex-shrink: 0; }
1226
+ .up-cp-thumb {
1227
+ position: absolute; width: 16px; height: 16px; border-radius: 50%;
1228
+ border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.4), 0 2px 6px rgba(0, 0, 0, 0.4);
1229
+ transform: translate(-50%, -50%); pointer-events: none;
1230
+ }
1231
+ .up-cp-sliders { flex: 1; display: flex; flex-direction: column; gap: 8px; }
1232
+ .up-cp-slider { position: relative; height: 12px; border-radius: 6px; cursor: pointer; touch-action: none; }
1233
+ .up-cp-slider .up-cp-thumb { top: 50%; width: 14px; height: 14px; }
1234
+ .up-cp-hue { background: linear-gradient(to right, #f00, #ff0, #0f0, #0ff, #00f, #f0f, #f00); }
1235
+ .up-cp-alpha { background: var(--up-checker); }
1236
+ .up-cp-alpha > b { position: absolute; inset: 0; border-radius: 6px; }
1237
+ .up-cp-preview { position: relative; width: 30px; height: 30px; border-radius: 8px; overflow: hidden; background: var(--up-checker); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08); flex-shrink: 0; }
1238
+ .up-cp-preview > b { position: absolute; inset: 0; }
1239
+ .up-cp-icon-btn {
1240
+ width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; flex-shrink: 0;
1241
+ border: 0; border-radius: 8px; background: var(--up-surface); color: var(--up-text-3); cursor: pointer;
1242
+ }
1243
+ .up-cp-icon-btn:hover { color: var(--up-text-1); background: var(--up-surface-active); }
1244
+ .up-cp-icon-btn svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
1245
+
1246
+ .up-cp-dots { display: grid; grid-template-columns: repeat(9, 1fr); gap: 6px 0; justify-items: center; }
1247
+ .up-cp-dot {
1248
+ width: 24px; height: 24px; padding: 0; border: 0; border-radius: 50%;
1249
+ background: var(--c); cursor: pointer; transition: transform 0.12s, box-shadow 0.12s;
1250
+ }
1251
+ .up-cp-dot:hover { transform: scale(1.12); }
1252
+ .up-cp-dot-light { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12); }
1253
+ .up-cp-dot-on { box-shadow: inset 0 0 0 2px var(--c), inset 0 0 0 4px var(--up-bg); }
1254
+ .up-cp-dot-light.up-cp-dot-on { box-shadow: inset 0 0 0 2px var(--c), inset 0 0 0 4px var(--up-bg), 0 0 0 1px rgba(255, 255, 255, 0.2); }
1255
+ .up-cp-dots-label { margin: 8px 0 6px; font-size: 10px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: var(--up-text-4); }
1256
+
1257
+ .up-cp-fields { display: flex; gap: 3px; }
1258
+ .up-cp-format {
1259
+ height: 28px; padding: 0 5px; display: flex; align-items: center; gap: 3px; flex-shrink: 0;
1260
+ border: 0; border-radius: 7px; background: var(--up-surface); color: var(--up-text-3);
1261
+ font-size: 10px; font-weight: 600; letter-spacing: 0.04em; cursor: pointer;
1262
+ }
1263
+ .up-cp-format:hover { color: var(--up-text-1); }
1264
+ .up-cp-format svg { width: 10px; height: 10px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
1265
+
1266
+ .up-cp-field {
1267
+ flex: 1; min-width: 0; height: 28px; display: flex; align-items: center; padding-left: 6px;
1268
+ border-radius: 7px; background: var(--up-surface); cursor: ew-resize;
1269
+ box-shadow: inset 0 0 0 1px transparent; transition: box-shadow 0.12s, background 0.12s;
1270
+ }
1271
+ .up-cp-field:hover { background: var(--up-surface-active); }
1272
+ .up-cp-field-text { flex: 2.2; cursor: text; }
1273
+ .up-cp-field-wide { flex: 1.25; }
1274
+ .up-cp-field-alpha { flex: 1.2; }
1275
+ .up-cp-field-angle { flex: 0 0 74px; }
1276
+ .up-cp-field-scrubbing { box-shadow: inset 0 0 0 1px var(--up-accent); background: #1d1a33; }
1277
+ .up-cp-field:focus-within { box-shadow: inset 0 0 0 1px #3a3a3a; }
1278
+ .up-cp-field > span { margin-right: 2px; flex-shrink: 0; font-size: 10px; font-weight: 600; color: var(--up-text-4); }
1279
+ .up-cp-field-scrubbing > span { color: var(--up-accent); }
1280
+ .up-cp-field input {
1281
+ width: 100%; min-width: 0; padding: 0 5px 0 0; border: 0; outline: 0; background: none;
1282
+ color: var(--up-text-1); font: 11px ui-monospace, 'SF Mono', Menlo, monospace; letter-spacing: -0.02em;
1283
+ text-align: right; cursor: inherit; pointer-events: none;
1284
+ }
1285
+ .up-cp-field-text input, .up-cp-field-editing input { pointer-events: auto; cursor: text; text-align: left; }
1286
+ /* No selectable text while scrubbing: a drag over a selection is what wakes PopClip-style tools. */
1287
+ .up-cp-field, .up-cp-field input { -webkit-user-select: none; user-select: none; }
1288
+ .up-cp-field-text input, .up-cp-field-editing input { -webkit-user-select: text; user-select: text; }
1289
+
1290
+ .up-vcursor {
1291
+ position: fixed; z-index: 2147483647; width: 24px; height: 24px; margin: -12px 0 0 -12px;
1292
+ pointer-events: none; display: none; filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.6));
1293
+ }
1294
+ .up-vcursor-on { display: block; }
1295
+
1296
+ .up-cp-contrast {
1297
+ display: flex; align-items: center; gap: 8px; height: 28px; padding: 0 8px 0 3px;
1298
+ border: 0; border-radius: 7px; background: var(--up-surface); color: var(--up-text-3);
1299
+ font-size: 11px; cursor: pointer; text-align: left;
1300
+ }
1301
+ .up-cp-contrast:hover { background: var(--up-surface-active); }
1302
+ .up-cp-contrast-sample { width: 34px; height: 22px; display: flex; align-items: center; justify-content: center; border-radius: 5px; font-size: 12px; font-weight: 700; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1); }
1303
+ .up-cp-contrast-ratio { color: var(--up-text-1); font-family: ui-monospace, 'SF Mono', Menlo, monospace; }
1304
+ .up-cp-contrast-grade { padding: 1px 5px; border-radius: 4px; background: rgba(74, 222, 128, 0.14); color: #4ade80; font-size: 10px; font-weight: 700; }
1305
+ .up-cp-contrast-fail { background: rgba(248, 113, 113, 0.14); color: #f87171; }
1306
+ .up-cp-contrast-bg { margin-left: auto; color: var(--up-text-4); font-size: 10.5px; }
1307
+
1308
+ .up-cp-gbar-wrap { padding: 0 7px; }
1309
+ .up-cp-gbar { position: relative; height: 26px; border-radius: 7px; background: var(--up-checker); cursor: copy; touch-action: none; }
1310
+ .up-cp-gbar > b { position: absolute; inset: 0; border-radius: 7px; pointer-events: none; }
1311
+ .up-cp-stop {
1312
+ position: absolute; top: 50%; width: 14px; height: 30px; transform: translate(-50%, -50%);
1313
+ border: 2px solid #fff; border-radius: 5px; cursor: grab;
1314
+ box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5), 0 2px 6px rgba(0, 0, 0, 0.5);
1315
+ }
1316
+ .up-cp-stop-on { outline: 2px solid var(--up-accent); outline-offset: 2px; }
1317
+ .up-cp-stop-removing { opacity: 0.3; }
1318
+
1319
+ .up-cp-seg { display: flex; padding: 2px; border-radius: 7px; background: var(--up-surface); }
1320
+ .up-cp-seg button { height: 24px; padding: 0 8px; border: 0; border-radius: 5px; background: none; color: var(--up-text-4); font-size: 11px; font-weight: 500; cursor: pointer; }
1321
+ .up-cp-seg button:hover { color: var(--up-text-2); }
1322
+ .up-cp-seg .up-cp-seg-on { background: var(--up-surface-active); color: var(--up-text-1); }
1323
+
1324
+ .up-cp-sect { border-top: 1px solid var(--up-border); padding-top: 8px; }
1325
+ .up-cp-sect-head {
1326
+ width: 100%; display: flex; align-items: center; gap: 6px; padding: 2px 0 6px;
1327
+ border: 0; background: none; color: var(--up-text-3); font-size: 11.5px; font-weight: 600; cursor: pointer; text-align: left;
1328
+ }
1329
+ .up-cp-sect-head:hover { color: var(--up-text-1); }
1330
+ .up-cp-sect-jp, .up-cp-sect-n { color: var(--up-text-4); font-weight: 400; }
1331
+ .up-cp-sect-n { font-weight: 500; }
1332
+ .up-cp-sect-head svg { width: 12px; height: 12px; margin-left: auto; fill: none; stroke: var(--up-text-4); stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.2s; }
1333
+ .up-cp-sect-open svg { transform: rotate(90deg); }
1334
+ /* The body scrolls, which clips overflow; padding with a matching negative margin leaves room for hover scale. */
1335
+ .up-cp-sect-body { max-height: var(--up-cp-sect-h, 272px); margin: -6px; padding: 6px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #333 transparent; }
1336
+ .up-cp-sect-free { max-height: none; overflow: visible; }
1337
+ .up-cp-sect-body[hidden] { display: none; }
1338
+ .up-cp-search {
1339
+ width: 100%; height: 26px; margin-bottom: 6px; padding: 0 8px; border: 0; border-radius: 7px; outline: 0;
1340
+ background: var(--up-surface); color: var(--up-text-1); font: 12px system-ui, sans-serif;
1341
+ }
1342
+
1343
+ /* A wider picker fits more per row rather than bigger chips. */
1344
+ .up-cp-chips { display: grid; grid-template-columns: repeat(auto-fill, minmax(26px, 1fr)); gap: 5px; }
1345
+ .up-cp-chips-wide { grid-template-columns: repeat(auto-fill, minmax(58px, 1fr)); }
1346
+ .up-cp-chip {
1347
+ position: relative; aspect-ratio: 1; padding: 0; border: 0; border-radius: 7px; cursor: pointer;
1348
+ background: var(--up-checker); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08); transition: transform 0.12s;
1349
+ }
1350
+ .up-cp-chips-wide .up-cp-chip { aspect-ratio: 1.6; }
1351
+ .up-cp-chip > b { position: absolute; inset: 0; border-radius: inherit; }
1352
+ .up-cp-chip:hover { transform: scale(1.08); z-index: 1; }
1353
+ .up-cp-chip-add { display: flex; align-items: center; justify-content: center; background: none; border: 1px dashed #3a3a3a; box-shadow: none; color: var(--up-text-4); }
1354
+ .up-cp-chip-add:hover { color: var(--up-text-1); border-color: var(--up-text-3); }
1355
+ .up-cp-chip-add svg { width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; }
1356
+ .up-cp-chip-x {
1357
+ position: absolute; top: -5px; right: -5px; z-index: 2; width: 15px; height: 15px; padding: 0;
1358
+ display: none; align-items: center; justify-content: center;
1359
+ border: 1px solid #444; border-radius: 50%; background: #2a2a2a; color: #fff; font-size: 10px; line-height: 1; cursor: pointer;
1360
+ }
1361
+ .up-cp-chip:hover .up-cp-chip-x { display: flex; }
1362
+ .up-cp-chip-x:hover { background: #c33; border-color: #c33; }
1363
+ .up-cp-chip-label {
1364
+ position: absolute; left: 4px; bottom: 2px; max-width: calc(100% - 6px); overflow: hidden; white-space: nowrap;
1365
+ font-size: 9px; font-weight: 600; color: rgba(255, 255, 255, 0.92); text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); pointer-events: none;
1366
+ }
1367
+
1368
+ .up-cp-combos { display: flex; flex-direction: column; gap: 5px; }
1369
+ .up-cp-combo { display: flex; align-items: center; gap: 6px; }
1370
+ .up-cp-combo-name { width: 76px; flex: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; color: var(--up-text-3); }
1371
+ .up-cp-credit { margin-top: 8px; font-size: 10px; color: var(--up-text-4); }
1372
+ .up-cp-credit a { color: inherit; }
1373
+ .up-cp-credit a:hover { color: var(--up-text-2); }
1374
+ .up-cp-combo-no { width: 22px; text-align: right; font: 10px ui-monospace, 'SF Mono', Menlo, monospace; color: var(--up-text-4); }
1375
+ .up-cp-combo-strip { flex: 1; display: flex; height: 22px; border-radius: 6px; overflow: hidden; }
1376
+ .up-cp-combo-strip i { flex: 1; cursor: pointer; transition: flex 0.15s; }
1377
+ .up-cp-combo-strip i:hover { flex: 1.6; }
1378
+ .up-cp-combo button { height: 22px; padding: 0 6px; border: 0; border-radius: 6px; background: var(--up-surface); color: var(--up-text-4); font-size: 11px; cursor: pointer; }
1379
+ .up-cp-combo button:hover { color: var(--up-text-1); }
1380
+
1381
+ @media (prefers-reduced-motion: reduce) {
1382
+ .up-cp-pop { animation: none; }
1383
+ }
1384
+ `,Yc=`
1385
+ .up-root,
1386
+ .up-portal {
1387
+ --dial-surface: var(--up-surface);
1388
+ --dial-surface-hover: var(--up-surface-hover);
1389
+ --dial-surface-active: var(--up-surface-active);
1390
+ --dial-surface-subtle: #111;
1391
+ --dial-text-root: var(--up-text-1);
1392
+ --dial-text-section: var(--up-text-3);
1393
+ --dial-text-label: var(--up-text-3);
1394
+ --dial-text-focus: var(--up-text-1);
1395
+ --dial-text-primary: var(--up-text-1);
1396
+ --dial-text-secondary: var(--up-text-2);
1397
+ --dial-text-tertiary: var(--up-text-4);
1398
+ --dial-border: var(--up-border);
1399
+ --dial-border-hover: var(--up-border-hover);
1400
+ --dial-focus-ring: rgba(255, 255, 255, 0.6);
1401
+ --dial-glass-bg: #1a1a1a;
1402
+ --dial-dropdown-bg: #1a1a1a;
1403
+ --dial-radius: var(--up-radius);
1404
+ --dial-row-height: var(--up-row-h);
1405
+ --dial-row-gap: 6px;
1406
+ --dial-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
1407
+ --dial-shadow-dropdown: 0 8px 24px rgba(0, 0, 0, 0.5);
1408
+ }
1409
+
1410
+ /* Segmented Control */
1411
+ .dialkit-segmented {
1412
+ position: relative;
1413
+ display: flex;
1414
+ padding: 2px;
1415
+ background: transparent;
1416
+ border-radius: var(--dial-radius);
1417
+ }
1418
+
1419
+ .dialkit-segmented-pill {
1420
+ position: absolute;
1421
+ top: 2px;
1422
+ bottom: 2px;
1423
+ background: var(--dial-surface-active);
1424
+ border-radius: 6px;
1425
+ z-index: 0;
1426
+ pointer-events: none;
1427
+ }
1428
+
1429
+ .dialkit-segmented-button {
1430
+ position: relative;
1431
+ z-index: 1;
1432
+ flex: 0 0 auto;
1433
+ padding: 6px 8px;
1434
+ font-family: inherit;
1435
+ font-size: 13px;
1436
+ font-weight: 500;
1437
+ background: transparent;
1438
+ border: none;
1439
+ cursor: pointer;
1440
+ transition: color 0.15s;
1441
+ }
1442
+
1443
+ .dialkit-segmented-button[data-active="true"] {
1444
+ color: var(--dial-text-primary);
1445
+ }
1446
+
1447
+ .dialkit-segmented-button[data-active="false"] {
1448
+ color: var(--dial-text-label);
1449
+ }
1450
+
1451
+ /* Button Group */
1452
+ .dialkit-button-group {
1453
+ display: flex;
1454
+ flex-direction: column;
1455
+ gap: 6px;
1456
+ }
1457
+
1458
+ .dialkit-button {
1459
+ flex: 1;
1460
+ padding: 10px 16px;
1461
+ font-family: inherit;
1462
+ font-size: 13px;
1463
+ font-weight: 500;
1464
+ color: var(--dial-text-secondary);
1465
+ background: var(--dial-surface);
1466
+ border: none;
1467
+ border-radius: var(--dial-radius);
1468
+ cursor: pointer;
1469
+ transition: background 0.15s, color 0.15s;
1470
+ }
1471
+
1472
+ .dialkit-button:hover {
1473
+ background: var(--dial-surface-hover);
1474
+ color: var(--dial-text-primary);
1475
+ }
1476
+
1477
+ .dialkit-button:active {
1478
+ background: var(--dial-surface-active);
1479
+ }
1480
+
1481
+ /* Labeled Control Row (label + control side by side) */
1482
+ .dialkit-labeled-control {
1483
+ display: flex;
1484
+ align-items: center;
1485
+ justify-content: space-between;
1486
+ gap: 12px;
1487
+ height: var(--dial-row-height);
1488
+ padding: 2px 10px 2px 12px;
1489
+ background: var(--dial-surface);
1490
+ border-radius: var(--dial-radius);
1491
+ }
1492
+
1493
+ .dialkit-labeled-control-label {
1494
+ display: flex;
1495
+ align-items: center;
1496
+ font-size: 13px;
1497
+ font-weight: 500;
1498
+ color: var(--dial-text-label);
1499
+ flex-shrink: 0;
1500
+ line-height: 17px;
1501
+ }
1502
+
1503
+ .dialkit-labeled-control .dialkit-segmented {
1504
+ flex-shrink: 0;
1505
+ margin-right: -6px;
1506
+ }
1507
+
1508
+ .dialkit-action-button {
1509
+ width: 160px;
1510
+ flex-shrink: 0;
1511
+ padding: 10px 16px;
1512
+ font-family: inherit;
1513
+ font-size: 13px;
1514
+ font-weight: 500;
1515
+ color: var(--dial-text-secondary);
1516
+ background: var(--dial-surface);
1517
+ border: none;
1518
+ border-radius: var(--dial-radius);
1519
+ cursor: pointer;
1520
+ transition: background 0.15s, color 0.15s;
1521
+ }
1522
+
1523
+ .dialkit-action-button:hover {
1524
+ background: var(--dial-surface-hover);
1525
+ color: var(--dial-text-primary);
1526
+ }
1527
+
1528
+ .dialkit-action-button:active {
1529
+ background: var(--dial-surface-active);
1530
+ }
1531
+
1532
+ .dialkit-actions-group {
1533
+ align-items: flex-start;
1534
+ }
1535
+
1536
+ .dialkit-actions-stack {
1537
+ display: flex;
1538
+ flex-direction: column;
1539
+ gap: 6px;
1540
+ width: 160px;
1541
+ }
1542
+
1543
+
1544
+ /* Spring Visualization */
1545
+ .dialkit-spring-viz {
1546
+ width: 100%;
1547
+ border-radius: var(--dial-radius);
1548
+ background: var(--dial-surface);
1549
+ overflow: visible;
1550
+ }
1551
+
1552
+ .dialkit-easing-viz {
1553
+ position: relative;
1554
+ width: 100%;
1555
+ aspect-ratio: 256 / 180;
1556
+ border-radius: var(--dial-radius);
1557
+ background: var(--dial-surface);
1558
+ overflow: hidden;
1559
+ isolation: isolate;
1560
+ }
1561
+
1562
+ .dialkit-easing-viz svg {
1563
+ position: absolute;
1564
+ inset: 0;
1565
+ width: 100%;
1566
+ height: 100%;
1567
+ pointer-events: none;
1568
+ }
1569
+
1570
+ .dialkit-easing-reference {
1571
+ stroke: var(--dial-text-tertiary);
1572
+ stroke-width: 1;
1573
+ stroke-dasharray: 3 4;
1574
+ opacity: 0.4;
1575
+ }
1576
+
1577
+ .dialkit-easing-tangent {
1578
+ stroke: var(--dial-text-tertiary);
1579
+ stroke-width: 1;
1580
+ }
1581
+
1582
+ .dialkit-easing-curve {
1583
+ fill: none;
1584
+ stroke: var(--dial-text-primary);
1585
+ stroke-width: 2;
1586
+ stroke-linecap: round;
1587
+ }
1588
+
1589
+ .dialkit-easing-endpoint {
1590
+ fill: var(--dial-text-secondary);
1591
+ }
1592
+
1593
+ .dialkit-easing-handle {
1594
+ position: absolute;
1595
+ display: grid;
1596
+ place-items: center;
1597
+ width: 24px;
1598
+ height: 24px;
1599
+ padding: 0;
1600
+ border: 0;
1601
+ border-radius: 50%;
1602
+ background: transparent;
1603
+ transform: translate(-50%, -50%);
1604
+ cursor: grab;
1605
+ touch-action: none;
1606
+ user-select: none;
1607
+ -webkit-user-select: none;
1608
+ }
1609
+
1610
+ .dialkit-easing-handle::after {
1611
+ content: '';
1612
+ width: 10px;
1613
+ height: 10px;
1614
+ box-sizing: border-box;
1615
+ border: 1.5px solid var(--dial-text-secondary);
1616
+ border-radius: 50%;
1617
+ background: var(--dial-surface);
1618
+ }
1619
+
1620
+ .dialkit-easing-handle:hover::after,
1621
+ .dialkit-easing-handle:focus-visible::after,
1622
+ .dialkit-easing-handle[data-dragging]::after {
1623
+ border-color: var(--dial-text-primary);
1624
+ background: var(--dial-text-primary);
1625
+ }
1626
+
1627
+ .dialkit-easing-handle[data-dragging] {
1628
+ cursor: grabbing;
1629
+ z-index: 1;
1630
+ }
1631
+
1632
+ .dialkit-easing-handle:disabled {
1633
+ pointer-events: none;
1634
+ }
1635
+
1636
+ .dialkit-easing-instructions {
1637
+ position: absolute;
1638
+ width: 1px;
1639
+ height: 1px;
1640
+ padding: 0;
1641
+ overflow: hidden;
1642
+ clip-path: inset(50%);
1643
+ white-space: nowrap;
1644
+ }
1645
+
1646
+ /* Panel Wrapper (contains panel + toolbar) */
1647
+ /* Image selector: shared by React, Solid, Vue, and Svelte. */
1648
+ .dialkit-image-control {
1649
+ display: flex;
1650
+ align-items: center;
1651
+ gap: 8px;
1652
+ width: 100%;
1653
+ height: var(--dial-row-height);
1654
+ padding: 0 6px 0 12px;
1655
+ border: 0;
1656
+ border-radius: var(--dial-radius);
1657
+ background: var(--dial-surface);
1658
+ color: var(--dial-text-label);
1659
+ font: 500 13px system-ui, -apple-system, sans-serif;
1660
+ text-align: left;
1661
+ cursor: pointer;
1662
+ transition: background 0.15s, box-shadow 0.15s;
1663
+ }
1664
+ .dialkit-image-control:hover { background: var(--dial-surface-hover); }
1665
+ .dialkit-image-control[data-open="true"] { background: var(--dial-surface-active); box-shadow: inset 0 0 0 1px var(--dial-border-hover); color: var(--dial-text-primary); }
1666
+ .dialkit-image-label { flex-shrink: 0; }
1667
+ .dialkit-image-value { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: right; color: var(--dial-text-secondary); font-size: 12px; }
1668
+ .dialkit-image-frame { position: relative; display: block; overflow: hidden; border-radius: var(--dial-radius); background: repeating-conic-gradient(var(--dial-surface) 0% 25%, transparent 0% 50%) 0 / 12px 12px, var(--dial-surface); }
1669
+ .dialkit-image-img { display: block; width: 100%; height: 100%; object-fit: cover; }
1670
+ .dialkit-image-fallback { position: absolute; inset: 0; display: grid; place-items: center; color: var(--dial-text-tertiary); }
1671
+ .dialkit-image-fallback svg { width: 24px; height: 24px; }
1672
+ .dialkit-image-thumbnail { flex: 0 0 38px; height: 26px; border-radius: 5px; box-shadow: inset 0 0 0 1px var(--dial-border); }
1673
+ .dialkit-image-thumbnail svg { width: 16px; height: 16px; }
1674
+ .dialkit-image-popover {
1675
+ display: flex;
1676
+ flex-direction: column;
1677
+ gap: 10px;
1678
+ position: fixed;
1679
+ margin: 0;
1680
+ inset: auto;
1681
+ z-index: 10002;
1682
+ box-sizing: border-box;
1683
+ padding: 12px;
1684
+ overflow-y: auto;
1685
+ overscroll-behavior: contain;
1686
+ scrollbar-width: thin;
1687
+ scrollbar-color: var(--dial-border-hover) transparent;
1688
+ border: 1px solid var(--dial-border);
1689
+ border-radius: 14px;
1690
+ background: var(--dial-glass-bg);
1691
+ box-shadow: var(--dial-shadow);
1692
+ color: var(--dial-text-label);
1693
+ font: 500 13px system-ui, -apple-system, sans-serif;
1694
+ animation: dialkit-color-enter 0.16s ease-out;
1695
+ }
1696
+ .dialkit-image-popover *, .dialkit-image-popover *::before, .dialkit-image-popover *::after { box-sizing: border-box; }
1697
+ .dialkit-image-popover > * { flex-shrink: 0; }
1698
+ .dialkit-image-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; }
1699
+ .dialkit-image-title { color: var(--dial-text-primary); }
1700
+ .dialkit-image-clear { margin: -4px -4px -4px 0; padding: 4px; border: 0; border-radius: 4px; background: none; color: var(--dial-text-tertiary); font: inherit; font-size: 11px; cursor: pointer; }
1701
+ .dialkit-image-clear:hover { color: var(--dial-text-primary); }
1702
+ .dialkit-image-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--dial-row-gap); }
1703
+ .dialkit-image-option { position: relative; display: block; width: 100%; padding: 3px; border: 1px solid transparent; border-radius: calc(var(--dial-radius) + 3px); background: transparent; cursor: pointer; transition: border-color 0.15s, background 0.15s; }
1704
+ .dialkit-image-option-preview { width: 100%; aspect-ratio: 4 / 3; border-radius: calc(var(--dial-radius) - 1px); }
1705
+ .dialkit-image-option:hover { background: var(--dial-surface-hover); border-color: var(--dial-border-hover); }
1706
+ .dialkit-image-option[aria-pressed="true"] { border-color: var(--dial-text-label); background: var(--dial-surface-active); }
1707
+ .dialkit-image-upload { display: flex; flex: none; align-items: center; justify-content: center; gap: 8px; width: 100%; }
1708
+ .dialkit-image-upload svg { width: 15px; height: 15px; }
1709
+ .dialkit-image-popover[data-dragging="true"] .dialkit-image-upload { background: var(--dial-surface-hover); color: var(--dial-text-primary); }
1710
+ .dialkit-image-upload[aria-disabled="true"] { opacity: 0.6; cursor: progress; }
1711
+ .dialkit-image-empty { padding: 28px 12px; border-radius: var(--dial-radius); background: var(--dial-surface); color: var(--dial-text-tertiary); font-weight: 400; text-align: center; }
1712
+ .dialkit-image-status { font-size: 11px; font-weight: 400; line-height: 1.5; overflow-wrap: anywhere; }
1713
+ .dialkit-image-popover [hidden], .dialkit-image-frame [hidden], .dialkit-image-file { display: none; }
1714
+ @media (prefers-reduced-motion: reduce) { .dialkit-image-popover { animation: none; } }
1715
+
1716
+ /* DialPad: a continuous two-axis field, shared across frameworks. */
1717
+ .dialkit-pad { display: grid; gap: var(--dial-row-gap); min-width: 0; }
1718
+ .dialkit-pad-caption { display: flex; align-items: center; min-width: 0; height: var(--dial-row-height); padding: 0 12px; border-radius: var(--dial-radius); background: var(--dial-surface); }
1719
+ .dialkit-pad-label { flex: 1; min-width: 0; color: var(--dial-text-label); font-size: 13px; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
1720
+ .dialkit-pad-surface { position: relative; width: 100%; aspect-ratio: 1; overflow: hidden; border-radius: var(--dial-radius); background: var(--dial-surface); cursor: crosshair; touch-action: none; user-select: none; -webkit-user-select: none; }
1721
+ .dialkit-pad-plane { position: absolute; inset: 12px; pointer-events: none; }
1722
+ .dialkit-pad-grid { position: absolute; inset: 0; pointer-events: none; }
1723
+ .dialkit-pad-grid-line { position: absolute; background: var(--dial-border); opacity: 0.65; }
1724
+ .dialkit-pad-grid-vertical { top: 0; bottom: 0; width: 1px; transform: translateX(-50%); }
1725
+ .dialkit-pad-grid-horizontal { left: 0; right: 0; height: 1px; transform: translateY(-50%); }
1726
+ .dialkit-pad-center { position: absolute; top: 50%; left: 50%; width: 3px; height: 3px; border-radius: 50%; background: var(--dial-text-tertiary); transform: translate(-50%, -50%); }
1727
+ .dialkit-pad-point { position: absolute; width: 12px; height: 12px; border-radius: 50%; background: var(--dial-text-primary); box-shadow: 0 0 0 0 transparent, 0 2px 4px #0003; transform: translate(-50%, -50%); transition: box-shadow 0.15s; pointer-events: auto; cursor: grab; }
1728
+ .dialkit-pad-surface[data-dragging="true"], .dialkit-pad-surface[data-dragging="true"] .dialkit-pad-point { cursor: grabbing; }
1729
+ .dialkit-pad-surface[data-dragging="true"] .dialkit-pad-point { box-shadow: 0 0 0 6px var(--dial-border-hover), 0 2px 6px #0003; }
1730
+ .dialkit-pad-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--dial-row-gap); }
1731
+ .dialkit-pad-field { display: flex; align-items: center; gap: 4px; min-width: 0; height: var(--dial-row-height); padding: 0 12px 0 10px; border-radius: var(--dial-radius); background: var(--dial-surface); }
1732
+ .dialkit-pad-axis { min-width: 0; max-width: 35%; flex-shrink: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 500; color: var(--dial-text-label); }
1733
+ .dialkit-pad-value { min-width: 0; width: 100%; border: 0; padding: 0 0 1px; background: transparent; color: var(--dial-text-label); text-align: right; font: 500 13px ui-monospace, 'SF Mono', Menlo, monospace; }
1734
+ .dialkit-pad-field:focus-within { background: var(--dial-surface-hover); }
1735
+ .dialkit-pad-value:focus-visible { box-shadow: inset 0 -1px var(--dial-focus-ring); }
1736
+ .dialkit-pad-value:focus { color: var(--dial-text-focus); }
1737
+ .dialkit-pad-instructions { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
1738
+ @media (prefers-reduced-motion: reduce) { .dialkit-pad-point { transition: none; } }
1739
+
1740
+ /* Color Control */
1741
+ .dialkit-color-control {
1742
+ display: flex;
1743
+ align-items: center;
1744
+ justify-content: space-between;
1745
+ gap: 12px;
1746
+ height: var(--dial-row-height);
1747
+ padding: 0 12px;
1748
+ background: var(--dial-surface);
1749
+ border-radius: var(--dial-radius);
1750
+ transition: background 0.15s, box-shadow 0.15s;
1751
+ }
1752
+
1753
+ .dialkit-color-control[data-open="true"] {
1754
+ background: var(--dial-surface-active);
1755
+ box-shadow: inset 0 0 0 1px var(--dial-border-hover);
1756
+ }
1757
+ .dialkit-color-control[data-open="true"] .dialkit-color-label,
1758
+ .dialkit-color-control[data-open="true"] .dialkit-color-value { color: var(--dial-text-primary); }
1759
+
1760
+ .dialkit-color-label {
1761
+ font-size: 13px;
1762
+ font-weight: 500;
1763
+ color: var(--dial-text-label);
1764
+ flex-shrink: 0;
1765
+ transform: translateY(-0.5px);
1766
+ }
1767
+
1768
+ .dialkit-color-inputs {
1769
+ display: flex;
1770
+ align-items: center;
1771
+ gap: 8px;
1772
+ }
1773
+
1774
+ /* Color picker: shared by React, Solid, Vue, and Svelte. */
1775
+ .dialkit-color-inputs { min-width: 0; flex: 1; justify-content: flex-end; }
1776
+ .dialkit-color-value {
1777
+ min-width: 0;
1778
+ width: 100%;
1779
+ padding: 4px 0;
1780
+ border: 0;
1781
+ outline: none;
1782
+ background: transparent;
1783
+ color: var(--dial-text-label);
1784
+ font: 500 13px ui-monospace, 'SF Mono', Menlo, monospace;
1785
+ text-align: right;
1786
+ text-overflow: ellipsis;
1787
+ }
1788
+ .dialkit-color-value:focus { color: var(--dial-text-focus); }
1789
+ .dialkit-color-swatch {
1790
+ flex: 0 0 20px;
1791
+ width: 20px;
1792
+ height: 20px;
1793
+ padding: 0;
1794
+ border-radius: 5px;
1795
+ border: 1px solid var(--dial-border-hover);
1796
+ background: linear-gradient(var(--dial-color), var(--dial-color)), repeating-conic-gradient(#aaa 0% 25%, #eee 0% 50%) 0 / 8px 8px;
1797
+ box-shadow: inset 0 0 0 1px rgb(255 255 255 / 8%);
1798
+ cursor: pointer;
1799
+ transition: transform 0.15s;
1800
+ }
1801
+ .dialkit-color-swatch:hover { transform: scale(1.08); }
1802
+ .dialkit-color-popover {
1803
+ display: grid;
1804
+ gap: var(--dial-row-gap);
1805
+ position: fixed;
1806
+ margin: 0;
1807
+ inset: auto;
1808
+ z-index: 10002;
1809
+ box-sizing: border-box;
1810
+ padding: 10px;
1811
+ overflow-y: auto;
1812
+ overscroll-behavior: contain;
1813
+ scrollbar-width: thin;
1814
+ border: 1px solid var(--dial-border);
1815
+ border-radius: 14px;
1816
+ background: var(--dial-glass-bg);
1817
+ box-shadow: var(--dial-shadow);
1818
+ color: var(--dial-text-label);
1819
+ animation: dialkit-color-enter 0.16s ease-out;
1820
+ }
1821
+ .dialkit-color-popover *, .dialkit-color-popover *::before, .dialkit-color-popover *::after { box-sizing: border-box; }
1822
+ .dialkit-color-plane { position: relative; height: 160px; border-radius: var(--dial-radius); touch-action: none; cursor: crosshair; user-select: none; }
1823
+ .dialkit-color-canvas { display: block; width: 100%; height: 100%; border-radius: inherit; }
1824
+ .dialkit-color-plane::after { content: ''; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgb(0 0 0 / 10%); pointer-events: none; }
1825
+ .dialkit-color-marker { position: absolute; z-index: 1; width: 12px; height: 12px; margin: -6px; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 2px 4px rgb(0 0 0 / 30%); pointer-events: none; }
1826
+ .dialkit-color-tracks { display: grid; gap: var(--dial-row-gap); }
1827
+ .dialkit-color-track-row { display: flex; align-items: center; gap: 12px; height: var(--dial-row-height); padding: 0 12px; border-radius: var(--dial-radius); background: var(--dial-surface); font-size: 13px; font-weight: 500; }
1828
+ .dialkit-color-track-row > span { flex: 0 0 52px; color: var(--dial-text-label); }
1829
+ .dialkit-color-track {
1830
+ -webkit-appearance: none; appearance: none; flex: 1; min-width: 0; height: 100%; padding: 0; margin: 0; border: 0; background: transparent; cursor: pointer; touch-action: none;
1831
+ }
1832
+ .dialkit-color-hue {
1833
+ --dial-color-thumb-bg: var(--dial-color-thumb);
1834
+ }
1835
+ .dialkit-color-opacity {
1836
+ --dial-color-track-bg: linear-gradient(to right, transparent, var(--dial-color-opaque)), repeating-conic-gradient(#aaa 0% 25%, #eee 0% 50%) 0 / 8px 8px;
1837
+ --dial-color-thumb-bg: linear-gradient(var(--dial-color-thumb), var(--dial-color-thumb)), repeating-conic-gradient(#aaa 0% 25%, #eee 0% 50%) 0 / 8px 8px;
1838
+ }
1839
+ .dialkit-color-track::-webkit-slider-runnable-track { height: 16px; border-radius: 4px; background: var(--dial-color-track-bg); }
1840
+ .dialkit-color-track::-moz-range-track { height: 16px; border: 0; border-radius: 4px; background: var(--dial-color-track-bg); }
1841
+ .dialkit-color-track::-webkit-slider-thumb { -webkit-appearance: none; box-sizing: border-box; width: 16px; height: 24px; margin-top: -4px; border-radius: 5px; background: var(--dial-color-thumb-bg); background-clip: padding-box; border: 2px solid white; box-shadow: 0 2px 4px rgb(0 0 0 / 30%); }
1842
+ .dialkit-color-track::-moz-range-thumb { box-sizing: border-box; width: 16px; height: 24px; border-radius: 5px; background: var(--dial-color-thumb-bg); background-clip: padding-box; border: 2px solid white; box-shadow: 0 2px 4px rgb(0 0 0 / 30%); }
1843
+ /* The same row, buttons, and pill as Enabled, with no label and equal segments. */
1844
+ .dialkit-color-format-row { padding: 2px; }
1845
+ .dialkit-color-format-row .dialkit-color-formats { flex: 1; min-width: 0; margin-right: 0; }
1846
+ .dialkit-color-formats .dialkit-segmented-pill { left: 2px; width: calc((100% - 4px) / 3); transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1); }
1847
+ .dialkit-color-format { flex: 1 1 0; min-width: 0; white-space: nowrap; }
1848
+ .dialkit-color-format:hover { color: var(--dial-text-primary); }
1849
+ .dialkit-color-css-input { display: block; width: 100%; height: var(--dial-row-height); padding: 0 12px; border: 0; border-radius: var(--dial-radius); background: var(--dial-surface); outline: none; color: var(--dial-text-label); font: 500 13px ui-monospace, 'SF Mono', Menlo, monospace; }
1850
+ .dialkit-color-css-input:focus { color: var(--dial-text-focus); }
1851
+ .dialkit-color-popover input[aria-invalid="true"], .dialkit-color-value[aria-invalid="true"] { color: #ef7777; }
1852
+ @keyframes dialkit-color-enter { from { opacity: 0; transform: translateY(3px) scale(0.98); } to { opacity: 1; transform: none; } }
1853
+ @media (prefers-reduced-motion: reduce) {
1854
+ .dialkit-color-popover { animation: none; }
1855
+ .dialkit-color-formats .dialkit-segmented-pill { transition: none; }
1856
+ }
1857
+
1858
+ /* Shortcut Pill */
1859
+ .dialkit-shortcut-pill {
1860
+ display: inline-block;
1861
+ font-size: 10px;
1862
+ font-weight: 600;
1863
+ font-family: system-ui, -apple-system, sans-serif;
1864
+ color: var(--dial-text-tertiary);
1865
+ background: var(--dial-surface-subtle);
1866
+ padding: 1px 5px;
1867
+ border-radius: 4px;
1868
+ margin-left: 6px;
1869
+ letter-spacing: 0.02em;
1870
+ line-height: 16px;
1871
+ white-space: nowrap;
1872
+ vertical-align: middle;
1873
+ transition: color 0.15s, background 0.15s;
1874
+ }
1875
+
1876
+ .dialkit-shortcut-pill-active {
1877
+ color: var(--dial-text-primary);
1878
+ background: var(--dial-border-hover);
1879
+ }
1880
+ `,Xc,q,Zc,Qc,$c=0,el=[],J=K,tl=J.__b,nl=J.__r,rl=J.diffed,il=J.__c,al=J.unmount,ol=J.__;function sl(e,t){J.__h&&J.__h(q,e,$c||t),$c=0;var n=q.__H||={__:[],__h:[]};return e>=n.__.length&&n.__.push({}),n.__[e]}function Y(e){return $c=1,cl(_l,e)}function cl(e,t,n){var r=sl(Xc++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):_l(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);t!==n&&(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=q,!q.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=r.__c.props!==e;return i.some(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,t!==e.__[0]&&(o=!0)}}),a&&a.call(this,e,t,n)||o};q.__f=!0;var a=q.shouldComponentUpdate,o=q.componentWillUpdate;q.componentWillUpdate=function(e,t,n){if(this.__e){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},q.shouldComponentUpdate=i}return r.__N||r.__}function X(e,t){var n=sl(Xc++,3);!J.__s&&gl(n.__H,t)&&(n.__=e,n.u=t,q.__H.__h.push(n))}function ll(e,t){var n=sl(Xc++,4);!J.__s&&gl(n.__H,t)&&(n.__=e,n.u=t,q.__h.push(n))}function Z(e){return $c=5,ul(function(){return{current:e}},[])}function ul(e,t){var n=sl(Xc++,7);return gl(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Q(e,t){return $c=8,ul(function(){return e},t)}function dl(){for(var e;e=el.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(ml),t.__h.some(hl),t.__h=[]}catch(n){t.__h=[],J.__e(n,e.__v)}}}J.__b=function(e){q=null,tl&&tl(e)},J.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),ol&&ol(e,t)},J.__r=function(e){nl&&nl(e),Xc=0;var t=(q=e.__c).__H;t&&(Zc===q?(t.__h=[],q.__h=[],t.__.some(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.some(ml),t.__h.some(hl),t.__h=[],Xc=0)),Zc=q},J.diffed=function(e){rl&&rl(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(el.push(t)!==1&&Qc===J.requestAnimationFrame||((Qc=J.requestAnimationFrame)||pl)(dl)),t.__H.__.some(function(e){e.u&&(e.__H=e.u),e.u=void 0})),Zc=q=null},J.__c=function(e,t){t.some(function(e){try{e.__h.some(ml),e.__h=e.__h.filter(function(e){return!e.__||hl(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],J.__e(n,e.__v)}}),il&&il(e,t)},J.unmount=function(e){al&&al(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(e){try{ml(e)}catch(e){t=e}}),n.__H=void 0,t&&J.__e(t,n.__v))};var fl=typeof requestAnimationFrame==`function`;function pl(e){var t,n=function(){clearTimeout(r),fl&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);fl&&(t=requestAnimationFrame(n))}function ml(e){var t=q,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),q=t}function hl(e){var t=q;e.__c=e.__(),q=t}function gl(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function _l(e,t){return typeof t==`function`?t(e):t}function vl(e,t){return{width:Math.max(0,Math.min(e,window.innerWidth-24)),height:Math.max(0,Math.min(t,window.innerHeight-24))}}function yl(e,t,n){let r=window.innerWidth,i=window.innerHeight,a=r-t-12,o=(r-t)/2,s=i-n-12;switch(e){case`top-left`:return{x:12,y:12};case`top-center`:return{x:o,y:12};case`top-right`:return{x:a,y:12};case`bottom-left`:return{x:12,y:s};case`bottom-center`:return{x:o,y:s};case`bottom-right`:return{x:a,y:s}}}var bl=[`top-left`,`top-center`,`top-right`,`bottom-left`,`bottom-center`,`bottom-right`];function xl(e,t,n,r){let i=i=>{let a=yl(i,n,r);return(a.x-e)**2+(a.y-t)**2};return bl.reduce((e,t)=>i(t)<i(e)?t:e)}function Sl(e,t){return t===`horizontal`?e.endsWith(`left`)?`left`:`right`:e.startsWith(`top`)?`top`:`bottom`}var Cl=[`start`,`center`,`end`];function wl(e,t){return e===`start`?12:e===`end`?t-12-56:(t-56)/2}function Tl(e,t){let n=window.innerWidth,r=window.innerHeight;return e===`left`||e===`right`?{x:e===`left`?0:n-26,y:wl(t,r),width:26,height:56}:{x:wl(t,n),y:e===`top`?0:r-26,width:56,height:26}}function El(e,t,n){let r=Sl(e,t),i=t===`horizontal`?e.startsWith(`top`)?`start`:`end`:e.endsWith(`left`)?`start`:`end`;return Tl(r,n??i)}function Dl(){return[`top`,`right`,`bottom`,`left`].flatMap(e=>Cl.map(t=>Ol(e,t,null)))}function Ol(e,t,n){let r=e===`left`||e===`right`,i=(e,n,r,i)=>t===`start`?e:t===`end`?n:(r??0)<i/2?e:n;return{corner:r?`${i(`top`,`bottom`,n?.y,window.innerHeight)}-${e}`:`${e}-${i(`left`,`right`,n?.x,window.innerWidth)}`,orientation:r?`horizontal`:`vertical`,anchor:t,edge:e,rect:Tl(e,t)}}function kl(e,t,n){let r=e===`left`||e===`right`,i=r?n:t,a=r?window.innerHeight:window.innerWidth;return Ol(e,Cl.reduce((e,t)=>Math.abs(wl(t,a)+56/2-i)<Math.abs(wl(e,a)+56/2-i)?t:e),{x:t,y:n})}function Al(e,t){let n=window.innerWidth,r=window.innerHeight,i={left:e,right:n-e,top:t,bottom:r-t};return kl(Object.keys(i).reduce((e,t)=>i[t]<i[e]?t:e),e,t)}function jl(e,t){let n=window.innerWidth,r=window.innerHeight;return Math.min(e,n-e,t,r-t)>140}function Ml(e,t){return`${t<window.innerHeight/2?`top`:`bottom`}-${e<window.innerWidth/2?`left`:`right`}`}function Nl(e,t,n,r,i,a,o){let s=window.innerWidth-24,c=window.innerHeight-24,l=t,u=n,d=r,f=i;if(e.includes(`right`)){let e=window.innerWidth-r-12;l=Math.min(s,Math.max(280,Math.min(t+a,e)))}if(e.includes(`left`)){let e=r+t-12,n=Math.min(s,Math.max(280,Math.min(t-a,e)));d=r-(n-t),l=n}if(e.includes(`bottom`)){let e=window.innerHeight-i-12;u=Math.min(c,Math.max(200,Math.min(n+o,e)))}if(e.includes(`top`)){let e=i+n-12,t=Math.min(c,Math.max(200,Math.min(n-o,e)));f=i-(t-n),u=t}return{width:l,height:u,x:d,y:f}}function Pl(e,t,n){let r=getComputedStyle(e),i=/auto|scroll/.test(r.overflowY)&&e.scrollHeight>e.clientHeight,a=/auto|scroll/.test(r.overflowX)&&e.scrollWidth>e.clientWidth;return!!(n!==0&&i&&(n<0?e.scrollTop>0:e.scrollTop+e.clientHeight<e.scrollHeight-1)||t!==0&&a&&(t<0?e.scrollLeft>0:e.scrollLeft+e.clientWidth<e.scrollWidth-1))}function Fl(e){let t=e.currentTarget;for(let n=e.target;n&&n!==t.parentElement;n=n.parentElement){if(Pl(n,e.deltaX,e.deltaY))return;if(n===t)break}e.preventDefault()}var Il=0;Array.isArray;function $(e,t,n,r,i,a){t||={};var o,s,c=t;if(`ref`in c)for(s in c={},t)s==`ref`?o=t[s]:c[s]=t[s];var l={type:e,props:c,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--Il,__i:-1,__u:0,__source:i,__self:a};if(typeof e==`function`&&(o=e.defaultProps))for(s in o)c[s]===void 0&&(c[s]=o[s]);return K.vnode&&K.vnode(l),l}function Ll({title:e,defaultOpen:t=!0,variant:n,toolbar:r,children:i}){let[a,o]=Y(t),s=Z(null),c=Z(null),[l,u]=Y(null),d=Q(()=>{c.current&&u(c.current.offsetHeight)},[]);X(()=>{d();let e=new ResizeObserver(d);return c.current&&e.observe(c.current),()=>e.disconnect()},[d]);let f=Q(()=>{a||d(),o(e=>!e)},[a,d]);return $(`div`,{class:n?`up-folder up-folder-${n}`:`up-folder`,children:[$(`div`,{class:`up-folder-head`,children:[$(`div`,{class:`up-folder-header`,role:`button`,tabIndex:0,"aria-expanded":a,onClick:f,onKeyDown:e=>{e.target!==e.currentTarget||e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),f())},children:[$(`span`,{class:`up-folder-title`,children:e}),$(`svg`,{class:`up-folder-chevron ${a?`up-folder-chevron-open`:`up-folder-chevron-closed`}`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:$(`path`,{d:`M6 9.5L12 15.5L18 9.5`})})]}),r&&a&&$(`div`,{class:`up-folder-toolbar`,children:r})]}),$(`div`,{ref:s,class:`up-folder-content`,inert:!a,style:{height:a?l===null?`auto`:`${l}px`:`0px`},children:$(`div`,{ref:c,class:`up-folder-inner`,children:i})})]})}function Rl(e,t,n,r){let i=n??-1/0,a=r??1/0,o=Math.max(i,Math.min(a,e));if(o===i||o===a||!Number.isFinite(t)||t<=0)return o;let s=n??0,c=s+Math.round((o-s)/t)*t;return Math.max(i,Math.min(a,Number(c.toPrecision(14))))}function zl(){let e=document.activeElement;for(;e?.shadowRoot?.activeElement;)e=e.shadowRoot.activeElement;return e}function Bl(e){return e.composedPath()[0]??e.target}function Vl(e,t){let n=(e.max??1)-(e.min??0),r=t.mode??`normal`;return r===`fine`?n*.01:r===`coarse`?n*.1:e.step??1}function Hl(e,t,n){let{panelId:r,path:i,control:a}=e,o=G.getValue(r,i),s=a.min??0,c=a.max??1,l=Math.max(s,Math.min(c,o+n*t));G.updateValue(r,i,Rl(l,t,s,c))}function Ul(){let e=zl();return e?e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.isContentEditable?!0:!!e.closest(`select, button, [role="slider"], [role="radio"], [role="listbox"], [role="menu"], [role="menuitem"], [role="button"]`):!1}function Wl(e){if(e.altKey)return`alt`;if(e.shiftKey)return`shift`;if(e.metaKey)return`meta`}function Gl(e,t){for(let n of e){if(n.path===t)return n;let e=n.children&&Gl(n.children,t);if(e)return e}return null}function*Kl(){for(let e of G.getPanels())for(let[t,n]of Object.entries(e.shortcuts)){let r=Gl(e.controls,t);r&&(yield{panelId:e.id,path:t,control:r,shortcut:n})}}function ql(e,t){for(let n of Kl())if(n.shortcut.key?.toLowerCase()===e.toLowerCase()&&n.shortcut.modifier===t)return n;return null}function Jl(e,t){for(let n of e)for(let e of Kl())if(e.shortcut.key?.toLowerCase()===n&&(e.shortcut.interaction??`scroll`)===t&&e.control.type===`slider`)return e;return null}function Yl(){return[...Kl()].filter(e=>e.shortcut.interaction===`scroll-only`&&e.control.type===`slider`)}var Xl={alt:`⌥`,shift:`⇧`,meta:`⌘`};function Zl(e){let t=e.interaction===`drag`?`Drag`:e.interaction===`move`?`Move`:`Scroll`;return e.key?`${e.modifier?Xl[e.modifier]:``}${e.key.toUpperCase()}+${t}`:t}function Ql(e){return e.key?`${e.modifier?Xl[e.modifier]:``}${e.key.toUpperCase()}`:`Press`}function $l(e,t,n,r,i,a=!1){if(e===`Home`)return n;if(e===`End`)return r;let o=[`ArrowRight`,`ArrowUp`,`PageUp`].includes(e)?1:[`ArrowLeft`,`ArrowDown`,`PageDown`].includes(e)?-1:0;if(!o)return;if(!(i>0)||r<=n)return n;let s=e.startsWith(`Page`)||a?10:1,c=(t-n)/i,l=n+(o>0?Math.floor(c+1e-9)+s:Math.ceil(c-1e-9)-s)*i;return Math.max(n,Math.min(r,Number(l.toPrecision(14))))}function eu(e,t,n,r,i,a,o){if(e.target!==e.currentTarget||e.altKey||e.metaKey||e.ctrlKey)return;let s=$l(e.key,t,n,r,i,e.shiftKey);s===void 0&&e.key!==`Enter`||(e.preventDefault(),e.stopPropagation(),s===void 0?o():a(s))}function tu(e,t,n,r=!1){if(!n)return;if(e===`Home`)return 0;if(e===`End`)return n-1;let i=[`ArrowRight`,`ArrowDown`].includes(e)?1:[`ArrowLeft`,`ArrowUp`].includes(e)?-1:0;if(i)return r?(t+i+n)%n:Math.max(0,Math.min(n-1,t+i))}function nu(e,t=!1){let n=Array.from(e.getRootNode().querySelectorAll(`a[href], button, input, select, textarea, [tabindex], [contenteditable="true"]`)).filter(t=>t===e||t.tabIndex>=0&&!t.matches(`:disabled`)&&t.getClientRects().length>0&&getComputedStyle(t).visibility!==`hidden`&&!t.closest(`[inert], [aria-hidden="true"], .dialkit-select-dropdown, .dialkit-preset-dropdown, .dialkit-shortcuts-dropdown, .dialkit-color-popover`)),r=n.indexOf(e);return r<0?void 0:n[r+(t?-1:1)]}function ru({label:e,checked:t,onChange:n,shortcut:r,shortcutActive:i}){return $(`div`,{class:`up-labeled-row`,children:[$(`span`,{class:`up-labeled-row-label`,children:[e,r&&$(`span`,{class:`dialkit-shortcut-pill${i?` dialkit-shortcut-pill-active`:``}`,children:Ql(r)})]}),$(iu,{options:[{value:`off`,label:`Off`},{value:`on`,label:`On`}],value:t?`on`:`off`,onChange:e=>n(e===`on`)})]})}function iu({options:e,value:t,onChange:n}){let r=Z(null),i=Z(new Map),[a,o]=Y(null);return ll(()=>{let e=i.current.get(t),n=r.current;if(e&&n){let t=n.getBoundingClientRect(),r=e.getBoundingClientRect();o({left:r.left-t.left,width:r.width})}},[t]),$(`div`,{ref:r,class:`up-seg`,role:`radiogroup`,onKeyDown:r=>{if(r.altKey||r.metaKey||r.ctrlKey)return;let a=e.findIndex(e=>e.value===t),o=tu(r.key,a,e.length,!0);if(o===void 0)return;r.preventDefault();let s=e[o];n(s.value),i.current.get(s.value)?.focus({preventScroll:!0})},children:[a&&$(`div`,{class:`up-seg-pill`,style:{left:`${a.left}px`,width:`${a.width}px`}}),e.map(e=>$(`button`,{ref:t=>{t&&i.current.set(e.value,t)},class:`up-seg-btn ${t===e.value?`up-seg-btn-active`:``}`,role:`radio`,"aria-checked":t===e.value,tabIndex:t===e.value?0:-1,onClick:()=>n(e.value),children:e.label},e.value))]})}function au({label:e,onClick:t}){return $(`button`,{class:`up-action`,onClick:t,children:e})}function ou({label:e,value:t,onChange:n,placeholder:r}){return $(`div`,{class:`up-text-row`,children:[$(`span`,{class:`up-text-label`,children:e}),$(`input`,{type:`text`,class:`up-text-input`,value:t,onInput:e=>n(e.target.value),placeholder:r,spellcheck:!1})]})}function su(e,t){for(var n in t)e[n]=t[n];return e}function cu(e,t){for(var n in e)if(n!==`__source`&&!(n in t))return!0;for(var r in t)if(r!==`__source`&&e[r]!==t[r])return!0;return!1}function lu(e,t){var n=t(),r=Y({t:{__:n,u:t}}),i=r[0].t,a=r[1];return ll(function(){i.__=n,i.u=t,uu(i)&&a({t:i})},[e,n,t]),X(function(){return uu(i)&&a({t:i}),e(function(){uu(i)&&a({t:i})})},[e]),n}function uu(e){try{return!((t=e.__)===(n=e.u())&&(t!==0||1/t==1/n)||t!=t&&n!=n)}catch{return!0}var t,n}function du(e,t){this.props=e,this.context=t}(du.prototype=new Tc).isPureReactComponent=!0,du.prototype.shouldComponentUpdate=function(e,t){return cu(this.props,e)||cu(this.state,t)};var fu=K.__b;K.__b=function(e){e.type&&e.type.__f&&e.ref&&(e.props.ref=e.ref,e.ref=null),fu&&fu(e)},typeof Symbol<`u`&&Symbol.for;var pu=K.__e;K.__e=function(e,t,n,r){if(e.then){for(var i,a=t;a=a.__;)if((i=a.__c)&&i.__c)return t.__e??(t.__e=n.__e,t.__k=n.__k),i.__c(e,t)}pu(e,t,n,r)};var mu=K.unmount;function hu(e,t,n){return e&&(e.__c&&e.__c.__H&&(e.__c.__H.__.forEach(function(e){typeof e.__c==`function`&&e.__c()}),e.__c.__H=null),(e=su({},e)).__c!=null&&(e.__c.__P===n&&(e.__c.__P=t),e.__c.__e=!0,e.__c=null),e.__k=e.__k&&e.__k.map(function(e){return hu(e,t,n)})),e}function gu(e,t,n){return e&&n&&(e.__v=null,e.__k=e.__k&&e.__k.map(function(e){return gu(e,t,n)}),e.__c&&e.__c.__P===t&&(e.__e&&n.appendChild(e.__e),e.__c.__e=!0,e.__c.__P=n)),e}function _u(){this.__u=0,this.o=null,this.__b=null}function vu(e){var t=e.__&&e.__.__c;return t&&t.__a&&t.__a(e)}function yu(){this.i=null,this.l=null}K.unmount=function(e){var t=e.__c;t&&(t.__z=!0),t&&t.__R&&t.__R(),t&&32&e.__u&&(e.type=null),mu&&mu(e)},(_u.prototype=new Tc).__c=function(e,t){var n=t.__c,r=this;r.o??=[],r.o.push(n);var i=vu(r.__v),a=!1,o=function(){a||r.__z||(a=!0,n.__R=null,i?i(c):c())};n.__R=o;var s=n.__P;n.__P=null;var c=function(){if(!--r.__u){if(r.state.__a){var e=r.state.__a;r.__v.__k[0]=gu(e,e.__c.__P,e.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.__P=s,t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),e.then(o,o)},_u.prototype.componentWillUnmount=function(){this.o=[]},_u.prototype.render=function(e,t){if(this.__b){if(this.__v.__k){var n=document.createElement(`div`),r=this.__v.__k[0].__c;this.__v.__k[0]=hu(this.__b,n,r.__O=r.__P)}this.__b=null}var i=t.__a&&Sc(wc,null,e.fallback);return i&&(i.__u&=-33),[Sc(wc,null,t.__a?null:e.children),i]};var bu=function(e,t,n){if(++n[1]===n[0]&&e.l.delete(t),e.props.revealOrder&&(e.props.revealOrder[0]!==`t`||!e.l.size))for(n=e.i;n;){for(;n.length>3;)n.pop()();if(n[1]<n[0])break;e.i=n=n[2]}};function xu(e){return this.getChildContext=function(){return e.context},e.children}function Su(e){var t=this,n=e.h;if(t.componentWillUnmount=function(){qc(null,t.v),t.v=null,t.h=null},t.h&&t.h!==n&&t.componentWillUnmount(),!t.v){for(var r=t.__v;r!==null&&!r.__m&&r.__!==null;)r=r.__;t.h=n,t.v={nodeType:1,parentNode:n,childNodes:[],__k:{__m:r.__m},contains:function(){return!0},namespaceURI:n.namespaceURI,insertBefore:function(e,n){this.childNodes.push(e),t.h.insertBefore(e,n)},removeChild:function(e){this.childNodes.splice(this.childNodes.indexOf(e)>>>1,1),t.h.removeChild(e)}}}qc(Sc(xu,{context:t.context},e.__v),t.v)}function Cu(e,t){var n=Sc(Su,{__v:e,h:t});return n.containerInfo=t,n}(yu.prototype=new Tc).__a=function(e){var t=this,n=vu(t.__v),r=t.l.get(e);return r[0]++,function(i){var a=function(){t.props.revealOrder?(r.push(i),bu(t,e,r)):i()};n?n(a):a()}},yu.prototype.render=function(e){this.i=null,this.l=new Map;var t=Pc(e.children);e.revealOrder&&e.revealOrder[0]===`b`&&t.reverse();for(var n=t.length;n--;)this.l.set(t[n],this.i=[1,0,this.i]);return e.children},yu.prototype.componentDidUpdate=yu.prototype.componentDidMount=function(){var e=this;this.l.forEach(function(t,n){bu(e,n,t)})};var wu=typeof Symbol<`u`&&Symbol.for&&Symbol.for(`react.element`)||60103,Tu=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,Eu=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,Du=/[A-Z0-9]/g,Ou=typeof document<`u`,ku=function(e){return(typeof Symbol<`u`&&typeof Symbol()==`symbol`?/fil|che|rad/:/fil|che|ra/).test(e)};Tc.prototype.isReactComponent=!0,[`componentWillMount`,`componentWillReceiveProps`,`componentWillUpdate`].forEach(function(e){Object.defineProperty(Tc.prototype,e,{configurable:!0,get:function(){return this[`UNSAFE_`+e]},set:function(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:t})}})});var Au=K.event;K.event=function(e){return Au&&(e=Au(e)),e.persist=function(){},e.isPropagationStopped=function(){return this.cancelBubble},e.isDefaultPrevented=function(){return this.defaultPrevented},e.nativeEvent=e};var ju={configurable:!0,get:function(){return this.class}},Mu=K.vnode;K.vnode=function(e){typeof e.type==`string`&&function(e){var t=e.props,n=e.type,r={},i=n.indexOf(`-`)==-1;for(var a in t){var o=t[a];if(!(a===`value`&&`defaultValue`in t&&o==null||Ou&&a===`children`&&n===`noscript`||a===`class`||a===`className`)){var s=a.toLowerCase();a===`defaultValue`&&`value`in t&&t.value==null?a=`value`:a===`download`&&!0===o?o=``:s===`translate`&&o===`no`?o=!1:s[0]===`o`&&s[1]===`n`?s===`ondoubleclick`?a=`ondblclick`:s!==`onchange`||n!==`input`&&n!==`textarea`||ku(t.type)?s===`onfocus`?a=`onfocusin`:s===`onblur`?a=`onfocusout`:Eu.test(a)&&(a=s):s=a=`oninput`:i&&Tu.test(a)?a=a.replace(Du,`-$&`).toLowerCase():o===null&&(o=void 0),s===`oninput`&&r[a=s]&&(a=`oninputCapture`),r[a]=o}}n==`select`&&(r.multiple&&Array.isArray(r.value)&&(r.value=Pc(t.children).forEach(function(e){e.props.selected=r.value.indexOf(e.props.value)!=-1})),r.defaultValue!=null&&(r.value=Pc(t.children).forEach(function(e){e.props.selected=r.multiple?r.defaultValue.indexOf(e.props.value)!=-1:r.defaultValue==e.props.value}))),t.class&&!t.className?(r.class=t.class,Object.defineProperty(r,"className",ju)):t.className&&(r.class=r.className=t.className),e.props=r}(e),e.$$typeof=wu,Mu&&Mu(e)};var Nu=K.__r;K.__r=function(e){Nu&&Nu(e),e.__c};var Pu=K.diffed;K.diffed=function(e){Pu&&Pu(e);var t=e.props,n=e.__e;n!=null&&e.type===`textarea`&&`value`in t&&t.value!==n.value&&(n.value=t.value==null?``:t.value)};var Fu=90,Iu=0;function Lu({label:e,value:t,options:n,onChange:r,portalContainer:i}){let[a,o]=Y(!1),[s,c]=Y(-1),[l,u]=Y(null),d=Z(null),f=Z(!1),p=Z(0),m=Z(t),h=Z(`up-select-${++Iu}`),g=Zs(n),_=g.findIndex(e=>e.value===t),v=g[_];a||(m.current=t);let y=Q(e=>{if(!g.length)return;let t=g[((_<0?0:_)+e+g.length)%g.length];r(t.value)},[g,_,r]),b=Q(()=>{let e=d.current;if(!e)return;let t=e.getBoundingClientRect(),n=8+g.length*34,r=window.innerHeight-t.bottom-4<n&&t.top>n;u({top:r?t.top-4:t.bottom+4,left:t.left,width:t.width,above:r})},[g.length]),x=Q(()=>{m.current=t,c(_),o(!0)},[t,_]),S=Q(e=>{o(!1);let n=e??m.current;n!==t&&r(n),m.current=n},[t,r]),C=Q(e=>{c(e);let n=g[e];n&&n.value!==t&&r(n.value)},[g,t,r]);X(()=>{if(!a){u(null);return}b();let e=d.current?.closest(`.up-content`);return e?.addEventListener(`scroll`,b,{passive:!0}),window.addEventListener(`resize`,b),()=>{e?.removeEventListener(`scroll`,b),window.removeEventListener(`resize`,b)}},[a,b]),X(()=>{let e=e=>{if(!f.current||a||e.altKey||e.metaKey||e.ctrlKey||e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)return;let t=e.composedPath()[0]?.tagName;t===`INPUT`||t===`TEXTAREA`||(e.preventDefault(),y(e.key===`ArrowRight`?1:-1))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[a,y]);let w=e=>{if(e.altKey||e.metaKey||e.ctrlKey)return;if(!a){e.key===`ArrowLeft`||e.key===`ArrowRight`?(e.preventDefault(),e.stopPropagation(),y(e.key===`ArrowRight`?1:-1)):[`ArrowDown`,`ArrowUp`,`Enter`,` `].includes(e.key)&&(e.preventDefault(),x());return}let t=g.length;e.key===`ArrowDown`||e.key===`ArrowUp`?(e.preventDefault(),C(((s<0?_:s)+(e.key===`ArrowDown`?1:-1)+t)%t)):e.key===`Home`||e.key===`End`?(e.preventDefault(),C(e.key===`Home`?0:t-1)):e.key===`Enter`||e.key===` `?(e.preventDefault(),S(g[s]?.value??null)):(e.key===`Escape`||e.key===`Tab`)&&(e.key===`Escape`&&e.preventDefault(),S(null))},T=e=>{if(a||Math.abs(e.deltaX)<=Math.abs(e.deltaY)||Math.abs(e.deltaX)<2)return;e.preventDefault();let t=performance.now();t-p.current<Fu||(p.current=t,y(e.deltaX>0?1:-1))},E=g.length>1&&_>=0,D=`${h.current}-menu`;return $(`div`,{children:[$(`div`,{ref:d,role:`combobox`,tabIndex:0,"aria-label":e,"aria-haspopup":`listbox`,"aria-expanded":a,"aria-controls":D,"aria-activedescendant":a&&s>=0?`${h.current}-${s}`:void 0,class:`up-select-trigger ${a?`up-select-trigger-open`:``}`,onMouseEnter:()=>f.current=!0,onMouseLeave:()=>f.current=!1,onMouseDown:e=>{e.target.closest(`.up-select-step`)||(a?S(null):x())},onKeyDown:w,onWheel:T,children:[$(`span`,{class:`up-select-label`,children:e}),$(`div`,{class:`up-select-right`,children:[$(`span`,{class:`up-select-current`,children:[$(`span`,{class:`up-select-value`,children:v?.label??t}),E&&$(`span`,{class:`up-select-pos`,"aria-hidden":`true`,children:[`· `,_+1]})]}),$(`span`,{class:`up-select-steps`,children:[$(`button`,{type:`button`,class:`up-select-step`,tabIndex:-1,"aria-label":`Previous ${e}`,onMouseDown:e=>e.preventDefault(),onClick:()=>y(-1),children:$(`svg`,{viewBox:`0 0 24 24`,children:$(`path`,{d:`M14.5 6L8.5 12L14.5 18`})})}),$(`button`,{type:`button`,class:`up-select-step`,tabIndex:-1,"aria-label":`Next ${e}`,onMouseDown:e=>e.preventDefault(),onClick:()=>y(1),children:$(`svg`,{viewBox:`0 0 24 24`,children:$(`path`,{d:`M9.5 6L15.5 12L9.5 18`})})})]})]})]}),a&&l&&i&&Cu($(wc,{children:[$(`div`,{class:`up-overlay-backdrop`,onMouseDown:e=>{e.preventDefault(),S(null)}}),$(`div`,{id:D,role:`listbox`,"aria-label":e,class:`up-select-dropdown`,onMouseDown:e=>e.preventDefault(),onMouseLeave:()=>{c(g.findIndex(e=>e.value===m.current)),t!==m.current&&r(m.current)},style:{left:`${l.left}px`,width:`${l.width}px`,...l.above?{bottom:`${window.innerHeight-l.top}px`}:{top:`${l.top}px`}},children:g.map((e,t)=>$(`div`,{id:`${h.current}-${t}`,role:`option`,"aria-selected":e.value===m.current,class:[`up-select-option`,e.value===m.current?`up-select-option-selected`:``,t===s?`up-select-option-highlight`:``].join(` `),onMouseEnter:()=>C(t),onClick:()=>S(e.value),children:[$(`span`,{children:e.label}),e.value===m.current&&$(`span`,{class:`up-select-check`})]},e.value))})]}),i)]})}function Ru(e,t,n,r,i){let{stiffness:a=300,damping:o=25,mass:s=.8}=n,c=e,l=0,u=null,d=null,f=!1;function p(e){if(f)return;if(d===null){d=e,u=requestAnimationFrame(p);return}let n=Math.min((e-d)/1e3,.032);d=e;let m=(-a*(c-t)+-o*l)/s;if(l+=m*n,c+=l*n,Math.abs(c-t)<.001&&Math.abs(l)<.01){r(t),i?.();return}r(c),u=requestAnimationFrame(p)}return u=requestAnimationFrame(p),{stop(){f=!0,u!==null&&cancelAnimationFrame(u)}}}function zu(e,t){let n=(2*Math.PI/e)**2;return{stiffness:n,damping:2*(1-t)*Math.sqrt(n),mass:1}}function Bu({stiffness:e,damping:t,mass:n}){let r=Math.sqrt(e/n),i=t/(2*Math.sqrt(e*n));return{visualDuration:2*Math.PI/r,bounce:Math.max(0,1-i)}}function Vu(e,{stiffness:t,damping:n,mass:r}){let i=Math.sqrt(t/r),a=n/(2*Math.sqrt(t*r));if(a<1){let t=i*Math.sqrt(1-a*a);return 1-Math.exp(-a*i*e)*(Math.cos(t*e)+a*i/t*Math.sin(t*e))}if(a===1)return 1-Math.exp(-i*e)*(1+i*e);let o=Math.sqrt(a*a-1),s=-i*(a-o),c=-i*(a+o);return 1-(c*Math.exp(s*e)-s*Math.exp(c*e))/(c-s)}var Hu=3,Uu=32,Wu=200,Gu=8;function Ku(e){let t=e.toString(),n=t.indexOf(`.`);return n===-1?0:t.length-n-1}function qu(e,t){let n=Math.round(e/t)*t;return parseFloat(n.toFixed(Ku(t)))}function Ju(e,t,n){let r=(e-t)/(n-t),i=Math.round(r*10)/10;return Math.abs(r-i)<=.03125?t+i*(n-t):e}function Yu({label:e,value:t,onChange:n,min:r,max:i,step:a,shortcut:o,shortcutActive:s}){let c=Z(null),l=Z(null),[u,d]=Y(!1),[f,p]=Y(!1),[m,h]=Y(!1),[g,_]=Y(``),[v,y]=Y(!1),[b,x]=Y(!1),S=Z(!1),C=Z(null),w=Z(!0),T=Z(null),E=Z(null),D=Z(null),O=Z(null),k=Z(null),A=Math.max(0,Math.min(100,(t-r)/(i-r||1)*100));X(()=>{!S.current&&!T.current&&(D.current&&(D.current.style.width=`${A}%`),O.current&&(O.current.style.left=`max(5px, calc(${A}% - 9px))`))},[A]);let j=Q(e=>{D.current&&(D.current.style.width=`${e}%`),O.current&&(O.current.style.left=`max(5px, calc(${e}% - 9px))`)},[]),M=Q(e=>{let n=E.current;if(!n)return t;let a=Math.max(0,Math.min(1,(e-n.left)/n.width));return Math.max(r,Math.min(i,r+a*(i-r)))},[r,i,t]),N=Q((e,t)=>{let n=E.current;if(!n)return 0;let r=t<0?n.left-e:e-n.right,i=Math.max(0,r-Uu);return t*Gu*Math.sqrt(Math.min(i/Wu,1))},[]),P=Q(e=>{m||e.target.closest(`.up-slider-value-editable`)||(e.preventDefault(),e.target.setPointerCapture(e.pointerId),C.current={x:e.clientX,y:e.clientY},w.current=!0,S.current=!0,c.current&&(E.current=c.current.getBoundingClientRect()))},[m]),ee=Q(e=>{if(!S.current||!C.current)return;let t=e.clientX-C.current.x,o=e.clientY-C.current.y;if(w.current&&Math.sqrt(t*t+o*o)>Hu&&(w.current=!1,p(!0)),!w.current){let t=E.current;if(t&&k.current)if(e.clientX<t.left){let t=N(e.clientX,-1);k.current.style.width=`calc(100% + ${Math.abs(t)}px)`,k.current.style.transform=`translateX(${t}px)`}else if(e.clientX>t.right){let t=N(e.clientX,1);k.current.style.width=`calc(100% + ${t}px)`,k.current.style.transform=`translateX(0)`}else k.current.style.width=`100%`,k.current.style.transform=`translateX(0)`;let o=M(e.clientX),s=(o-r)/(i-r)*100;T.current&&=(T.current.stop(),null),j(s),n(qu(o,a))}},[M,n,r,i,a,j,N]),te=Q(e=>{if(S.current){if(w.current){let o=M(e.clientX),s=(i-r)/a<=10?Math.max(r,Math.min(i,r+Math.round((o-r)/a)*a)):Ju(o,r,i),c=(s-r)/(i-r)*100,l=(t-r)/(i-r)*100;T.current&&T.current.stop(),T.current=Ru(l,c,{stiffness:300,damping:25,mass:.8},e=>j(e),()=>{T.current=null}),n(qu(s,a))}k.current&&(k.current.style.transition=`width 0.3s cubic-bezier(0,0,0.2,1), transform 0.3s cubic-bezier(0,0,0.2,1)`,k.current.style.width=`100%`,k.current.style.transform=`translateX(0)`,setTimeout(()=>{k.current&&(k.current.style.transition=``)},300)),S.current=!1,p(!1),C.current=null}},[M,n,r,i,a,t,j]),ne=Z(null);X(()=>(b&&!m&&!v?ne.current=setTimeout(()=>y(!0),800):!b&&!m&&(ne.current&&clearTimeout(ne.current),y(!1)),()=>{ne.current&&clearTimeout(ne.current)}),[b,m,v]),X(()=>{m&&l.current&&(l.current.focus(),l.current.select())},[m]);let re=Z(!1),ie=Q(()=>{let e=parseFloat(g);!re.current&&!isNaN(e)&&n(qu(Math.max(r,Math.min(i,e)),a)),h(!1),x(!1),y(!1)},[g,n,r,i,a]),ae=u||f,F=t.toFixed(Ku(a)),oe=(i-r)/a,se=oe<=10?oe-1:9,ce=Array.from({length:Math.max(0,se)},(e,t)=>$(`div`,{class:`up-slider-hashmark`,style:{left:`${oe<=10?(t+1)*a/(i-r)*100:(t+1)*10}%`}},t));return $(`div`,{ref:c,class:`up-slider-wrap`,children:$(`div`,{ref:k,class:[`up-slider`,ae?`up-slider-active`:``,f?`up-slider-dragging`:``].filter(Boolean).join(` `),role:`slider`,tabIndex:m?-1:0,"aria-label":e,"aria-valuemin":r,"aria-valuemax":i,"aria-valuenow":t,"aria-valuetext":F,onKeyDown:e=>eu(e,t,r,i,a,e=>{T.current?.stop(),T.current=null,j((e-r)/(i-r)*100),n(e)},()=>{re.current=!1,_(F),h(!0)}),onPointerDown:P,onPointerMove:ee,onPointerUp:te,onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),children:[$(`div`,{class:`up-slider-hashmarks`,children:ce}),$(`div`,{ref:D,class:`up-slider-fill`,style:{width:`${A}%`,background:ae?`rgba(255,255,255,0.15)`:`rgba(255,255,255,0.08)`}}),$(`div`,{ref:O,class:`up-slider-handle`,style:{left:`max(5px, calc(${A}% - 9px))`}}),$(`span`,{class:`up-slider-label`,children:[e,o&&$(`span`,{class:`dialkit-shortcut-pill${s?` dialkit-shortcut-pill-active`:``}`,children:Zl(o)})]}),m?$(`input`,{ref:l,type:`text`,class:`up-slider-input`,value:g,onInput:e=>_(e.target.value),onKeyDown:e=>{e.key===`Enter`&&ie(),e.key===`Escape`&&(re.current=!0,h(!1),x(!1),y(!1))},onBlur:ie,onClick:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation()}):$(`span`,{class:`up-slider-value ${v?`up-slider-value-editable`:``}`,onMouseEnter:()=>x(!0),onMouseLeave:()=>x(!1),onClick:e=>{v&&(e.stopPropagation(),e.preventDefault(),re.current=!1,h(!0),_(F))},onMouseDown:e=>{v&&e.stopPropagation()},children:F})]})})}function Xu({panelId:e,path:t,label:n}){let r=Z(null),[i,a]=Y(!0);return X(()=>{let n=r.current;if(!n)return;G.setSlotNode(e,t,n),a(n.childNodes.length===0);let i=new MutationObserver(()=>{a(n.childNodes.length===0)});return i.observe(n,{childList:!0}),()=>{i.disconnect(),G.setSlotNode(e,t,null)}},[e,t]),$(`div`,{class:`up-slot-wrap ${i?`up-slot-wrap-empty`:``}`,children:[n?$(`div`,{class:`up-slot-label`,children:n}):null,$(`div`,{ref:r,class:`up-slot`})]})}var Zu=e=>Math.max(-1,Math.min(2,e));function Qu(e){return e.join(`, `)}function $u(e){let t=e.split(`,`).map(e=>e.trim());if(t.length!==4||t.some(e=>!/^[+-]?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?$/i.test(e)))return null;let n=t.map(Number);return!n.every(Number.isFinite)||n[0]<0||n[0]>1||n[2]<0||n[2]>1?null:(n[1]=Zu(n[1]),n[3]=Zu(n[3]),n)}function ed(e){return e.map((e,t)=>{let n=Number.isFinite(e)?e:t<2?0:1;return t%2==0?Math.max(0,Math.min(1,n)):n})}function td(e,t,n){let r=ed(e),i=Math.min(12,t/4,n/4),a=Math.max(.5,Math.abs(r[1]-.5),Math.abs(r[3]-.5)),o=Math.min(t-i*2,(n/2-i)/a),s={x:o,y:o},c=(e,r)=>({x:t/2+(e-.5)*s.x,y:n/2-(r-.5)*s.y});return{scale:s,start:c(0,0),end:c(1,1),handles:[c(r[0],r[1]),c(r[2],r[3])]}}function nd(e,t,n,r,i){let a=[...e];if(!Number.isFinite(i.x)||!Number.isFinite(i.y)||i.x<=0||i.y<=0)return a;let o=t*2,s=e[o]+n/i.x,c=e[o+1]-r/i.y;return n!==0&&(a[o]=Number(Math.max(0,Math.min(1,s)).toFixed(2))),r!==0&&Number.isFinite(c)&&(a[o+1]=Number(Zu(c).toFixed(2))),a}function rd(e,t,n,r){let i=r?.1:.01,a={x:1,y:1};if(n===`ArrowLeft`)return nd(e,t,-i,0,a);if(n===`ArrowRight`)return nd(e,t,i,0,a);if(n===`ArrowUp`)return nd(e,t,0,-i,a);if(n===`ArrowDown`)return nd(e,t,0,i,a)}function id(e,t,n=5){let r=t.x-e.x,i=t.y-e.y,a=Math.hypot(r,i);return a<=n?{...e}:{x:t.x-r/a*n,y:t.y-i/a*n}}var ad=0;function od(e,t,n){let r=document.createElement(e);return r.className=t,n&&(r.textContent=n),r}function sd(e,t){let n=t,r=Bs(n.value,n),i,a=od(`div`,`dialkit-pad`),o=od(`div`,`dialkit-pad-fields`),s=od(`div`,`dialkit-pad-caption`),c=od(`span`,`dialkit-pad-label`);s.append(c),o.append(s);let l=od(`div`,`dialkit-pad-surface`);l.tabIndex=0,l.setAttribute(`role`,`group`);let u=od(`div`,`dialkit-pad-plane`);u.setAttribute(`aria-hidden`,`true`);let d=od(`div`,`dialkit-pad-grid`);d.setAttribute(`aria-hidden`,`true`);for(let e=1;e<6;e++){let t=od(`span`,`dialkit-pad-grid-line dialkit-pad-grid-vertical`),n=od(`span`,`dialkit-pad-grid-line dialkit-pad-grid-horizontal`);t.style.left=`${e/6*100}%`,n.style.top=`${e/6*100}%`,d.append(t,n)}let f=od(`span`,`dialkit-pad-center`),p=od(`span`,`dialkit-pad-point`);u.append(f,p),l.append(d,u);let m=od(`span`,`dialkit-pad-instructions`,`Arrow keys adjust each axis. Shift adjusts by ten steps. Home resets both axes. Hold Shift while dragging to lock an axis.`);m.id=`dialkit-pad-help-${++ad}`,l.setAttribute(`aria-describedby`,m.id);let h=[`x`,`y`].map(e=>{let t=od(`label`,`dialkit-pad-field`),i=od(`span`,`dialkit-pad-axis`),a=od(`input`,`dialkit-pad-value`);return a.type=`text`,a.inputMode=`decimal`,a.autocomplete=`off`,a.spellcheck=!1,a.setAttribute(`role`,`spinbutton`),t.append(i,a),o.append(t),a.addEventListener(`focus`,()=>a.select()),a.addEventListener(`blur`,()=>{let t=a.value.trim()===``?NaN:Number(a.value);Number.isFinite(t)&&_({...r,[e]:t}),a.value=String(r[e])}),a.addEventListener(`keydown`,t=>{if(t.stopPropagation(),t.key===`Enter`||t.key===`Escape`)t.preventDefault(),t.key===`Escape`&&(a.value=String(r[e])),a.blur(),l.focus({preventScroll:!0});else if(!t.altKey&&!t.metaKey&&!t.ctrlKey&&[`ArrowUp`,`ArrowDown`].includes(t.key)){t.preventDefault();let i=Rs(n[e]),o=a.value.trim()===``?NaN:Number(a.value),s=Number.isFinite(o)?o:r[e],c=t.key===`ArrowUp`?1:-1;_({...r,[e]:zs(s+c*i.step*(t.shiftKey?10:1),i)}),a.value=String(r[e])}}),{axis:e,name:i,input:a}});a.append(o,l,m),e.append(a);function g(){c.textContent=n.label,c.title=n.label;let e={x:n.labels?.x??`X`,y:n.labels?.y??`Y`};l.setAttribute(`aria-label`,`${n.label}: ${e.x} ${r.x}, ${e.y} ${r.y}`),h.forEach(({axis:t,name:i,input:a})=>{let o=Rs(n[t]);i.textContent=e[t],i.title=e[t],a.setAttribute(`aria-label`,`${n.label} ${e[t]}`),a.setAttribute(`aria-valuemin`,String(o.min)),a.setAttribute(`aria-valuemax`,String(o.max)),a.setAttribute(`aria-valuenow`,String(r[t])),zl()!==a&&(a.value=String(r[t]));let s=(r[t]-o.min)/(o.max-o.min);p.style[t===`x`?`left`:`top`]=`${(t===`x`?s:1-s)*100}%`})}function _(e){let t=Bs(e,n);t.x===r.x&&t.y===r.y||(r=t,g(),n.onChange({...r}))}function v(){let e=i?.id;i=void 0,delete l.dataset.dragging,e!==void 0&&l.hasPointerCapture(e)&&l.releasePointerCapture(e)}function y(e,t=!1){if(!i||e.pointerId!==i.id)return;Math.max(Math.abs(e.clientX-i.start.x),Math.abs(e.clientY-i.start.y))>=3&&(i.moved=!0,l.dataset.dragging=`true`);let a=u.getBoundingClientRect();if(!a.width||!a.height)return;let o=e.clientX-i.offset.x,s=e.clientY-i.offset.y;if(t&&!i.moved&&!e.shiftKey){let t=d.getBoundingClientRect(),n=Ls(e.clientX-t.left,e.clientY-t.top,t.width,t.height);n&&(o=t.left+n.x,s=t.top+n.y)}let c=Vs((o-a.left)/a.width,(s-a.top)/a.height,n);if(e.shiftKey){if(!i.lock){let t=Math.abs(e.clientX-i.start.x),n=Math.abs(e.clientY-i.start.y);if(Math.max(t,n)<3)return;i.lock=t>=n?`x`:`y`,i.lockValue={...r}}let t=i.lock===`x`?`y`:`x`;c[t]=i.lockValue[t]}else i.lock=void 0,i.lockValue=void 0;_(c)}return l.addEventListener(`dblclick`,()=>_(Bs(void 0,n))),l.addEventListener(`pointerdown`,e=>{if(e.button!==0||i)return;e.preventDefault(),l.focus({preventScroll:!0});let t=p.getBoundingClientRect(),n=e.target===p;i={id:e.pointerId,start:{x:e.clientX,y:e.clientY},value:{...r},offset:n?{x:e.clientX-t.left-t.width/2,y:e.clientY-t.top-t.height/2}:{x:0,y:0},moved:!1},l.setPointerCapture(e.pointerId),y(e)}),l.addEventListener(`pointermove`,y),l.addEventListener(`pointerup`,e=>{e.pointerId===i?.id&&(y(e,!0),v())}),l.addEventListener(`pointercancel`,e=>{e.pointerId===i?.id&&v()}),l.addEventListener(`lostpointercapture`,e=>{e.pointerId===i?.id&&v()}),l.addEventListener(`keydown`,e=>{if(e.altKey||e.metaKey||e.ctrlKey)return;let t=Hs(r,e.key,e.shiftKey,n);if(t||e.key===`Home`||e.key===`Escape`&&i){if(e.preventDefault(),e.stopPropagation(),t)_(t);else if(e.key===`Home`)v(),_(Bs(void 0,n));else if(i){let e=i.value;v(),_(e)}}}),g(),{update(e){n=e,r=Bs(e.value,n),g()},destroy(){v(),a.remove()}}}var cd=0;function ld(e,t){let n=t,r=ed([...n.easing.ease]),i=256,a=180,o,s=document.createElement(`div`);s.className=`dialkit-easing-viz`,s.setAttribute(`aria-label`,`Bézier easing curve`);let c=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);c.setAttribute(`aria-hidden`,`true`);let l=(e,t)=>{let n=document.createElementNS(`http://www.w3.org/2000/svg`,e);return n.setAttribute(`class`,t),c.append(n),n},u=l(`line`,`dialkit-easing-reference`),d=[l(`line`,`dialkit-easing-tangent`),l(`line`,`dialkit-easing-tangent`)],f=l(`path`,`dialkit-easing-curve`),p=[l(`circle`,`dialkit-easing-endpoint`),l(`circle`,`dialkit-easing-endpoint`)],m=document.createElement(`span`);m.className=`dialkit-easing-instructions`,m.id=`dialkit-easing-help-${++cd}`,m.textContent=`Drag to adjust X from 0 to 1 and Y from -1 to 2. Arrow keys adjust by 0.01. Shift adjusts by 0.1. Escape cancels a drag.`,s.append(c,m);let h=[0,1].map(e=>{let t=document.createElement(`button`);return t.type=`button`,t.className=`dialkit-easing-handle`,t.setAttribute(`aria-describedby`,m.id),t.addEventListener(`pointerdown`,c=>{if(!n.onChange||c.button!==0||o)return;c.preventDefault(),c.stopPropagation(),t.focus({preventScroll:!0}),v();let l=s.getBoundingClientRect();!l.width||!l.height||(o={id:c.pointerId,handle:e,x:c.clientX,y:c.clientY,scale:td(r,i,a).scale,ratioX:i/l.width,ratioY:a/l.height,value:[...r]},t.setPointerCapture(c.pointerId),t.dataset.dragging=`true`)}),t.addEventListener(`pointermove`,b),t.addEventListener(`pointerup`,e=>{e.pointerId===o?.id&&(b(e),x())}),t.addEventListener(`pointercancel`,e=>{e.pointerId===o?.id&&S()}),t.addEventListener(`lostpointercapture`,e=>{e.pointerId===o?.id&&x()}),t.addEventListener(`keydown`,t=>{if(!n.onChange||t.altKey||t.metaKey||t.ctrlKey)return;if(t.key===`Escape`&&o){t.preventDefault(),t.stopPropagation(),S();return}let i=rd(r,e,t.key,t.shiftKey);i&&(t.preventDefault(),t.stopPropagation(),x(),y(i))}),s.append(t),t});e.append(s);function g(e,t,n){e.setAttribute(`x1`,String(t.x)),e.setAttribute(`y1`,String(t.y)),e.setAttribute(`x2`,String(n.x)),e.setAttribute(`y2`,String(n.y))}function _(){let e=td(r,i,a);c.setAttribute(`viewBox`,`0 0 ${i} ${a}`),g(u,e.start,e.end),[e.start,e.end].forEach((t,o)=>{g(d[o],t,id(t,e.handles[o])),p[o].setAttribute(`cx`,String(t.x)),p[o].setAttribute(`cy`,String(t.y)),p[o].setAttribute(`r`,`2.5`);let s=h[o];s.style.left=`${e.handles[o].x/i*100}%`,s.style.top=`${e.handles[o].y/a*100}%`,s.disabled=!n.onChange,s.setAttribute(`aria-label`,`Bézier handle ${o+1}: X ${r[o*2]}, Y ${r[o*2+1]}`)}),s.setAttribute(`role`,n.onChange?`group`:`img`);let{start:t,end:o,handles:[l,m]}=e;f.setAttribute(`d`,`M ${t.x} ${t.y} C ${l.x} ${l.y}, ${m.x} ${m.y}, ${o.x} ${o.y}`)}function v(){i=s.clientWidth||i,a=s.clientHeight||a,_()}function y(e){e.every((e,t)=>e===r[t])||(r=e,_(),n.onChange?.([...r]))}function b(e){!o||e.pointerId!==o.id||y(nd(o.value,o.handle,(e.clientX-o.x)*o.ratioX,(e.clientY-o.y)*o.ratioY,o.scale))}function x(){if(!o)return;let{id:e,handle:t}=o;o=void 0,delete h[t].dataset.dragging,h[t].hasPointerCapture(e)&&h[t].releasePointerCapture(e)}function S(){if(!o)return;let e=o.value;x(),y(e)}let C=new ResizeObserver(v);return C.observe(s),v(),{update(e){let t=ed([...e.easing.ease]);(!e.onChange||t.some((e,t)=>e!==r[t]))&&x(),n=e,r=t,_()},destroy(){x(),C.disconnect(),s.remove()}}}function ud(e,t,n={}){let{dropdownHeight:r=0,gap:i=4,allowAbove:a=!0}=n,o=e.getBoundingClientRect(),s=t.getBoundingClientRect(),c=window.visualViewport,l=c?.offsetTop??0,u=c?.offsetLeft??0,d=c?.height??window.innerHeight,f=c?.width??window.innerWidth,p=Math.max(0,l+d-o.bottom-i-8),m=Math.max(0,o.top-l-i-8),h=a&&p<r&&m>p,g=Math.min(n.maxHeight??320,h?m:p),_=Math.min(r,g),v=Math.min(n.width??o.width,Math.max(0,f-16)),y=Math.max(u+8,Math.min(o.left,u+f-v-8)),b=Math.max(l+8,h?o.top-_-i:o.bottom+i);if(n.preferSide){let t=e.closest(`.up-shell`)?.getBoundingClientRect()??o,a=t.left-v-i,s=t.right+i;a>=u+8?y=a:s+v<=u+f-8&&(y=s),g=Math.min(n.maxHeight??480,d-16),b=Math.max(l+8,Math.min(o.top-32,l+d-Math.min(r,g)-8))}return{top:n.fixed?b:b-s.top+t.scrollTop-t.clientTop,left:n.fixed?y:y-s.left+t.scrollLeft-t.clientLeft,width:v,above:h,maxHeight:g}}function dd(e,t,n){let r=0,i=!1,a=``,o=()=>{if(i)return;let s=n?.();s?.isConnected&&s.style.position===`fixed`&&typeof s.showPopover==`function`&&!s.matches(`:popover-open`)&&(s.setAttribute(`popover`,`manual`),s.showPopover());let c=e.getBoundingClientRect(),l=fd(e)?.getBoundingClientRect(),u=window.visualViewport,d=[c.x,c.y,c.width,c.height,l?.x,l?.y,n?.()?.scrollHeight,window.innerWidth,window.innerHeight,u?.height,u?.offsetTop,u?.offsetLeft].join(`,`);d!==a&&(a=d,t()),i||(r=requestAnimationFrame(o))};return o(),window.addEventListener(`scroll`,t,!0),()=>{i=!0,cancelAnimationFrame(r),window.removeEventListener(`scroll`,t,!0)}}function fd(e){return(e?.getRootNode())?.querySelector?.(`.up-portal`)??null}var pd=0,md=10*1024*1024;function hd(e,t,n){let r=document.createElement(e);return r.className=t,n&&(r.textContent=n),e===`button`&&(r.type=`button`),r}function gd(e){let t=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);t.setAttribute(`viewBox`,`0 0 24 24`),t.setAttribute(`fill`,`none`),t.setAttribute(`stroke`,`currentColor`),t.setAttribute(`stroke-width`,`1.5`),t.setAttribute(`stroke-linecap`,`round`),t.setAttribute(`stroke-linejoin`,`round`),t.setAttribute(`aria-hidden`,`true`);let n=document.createElementNS(t.namespaceURI,`path`);return n.setAttribute(`d`,e===`upload`?`M12 16V3m-4 4 4-4 4 4M4 15v5a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-5`:`M5 3h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm-2 13 5-5 4 4 3-3 6 6M15 7h.01`),t.append(n),t}function _d(e){if(!e)return`No image`;if(e.startsWith(`data:`)||e.startsWith(`blob:`))return`Uploaded image`;let t=e.split(/[?#]/)[0].split(`/`).filter(Boolean).pop();try{return t?decodeURIComponent(t):`Image`}catch{return t||`Image`}}function vd(e=[],t=[],n=``){let r=new Map;for(let n of[...e,...t]){let e=typeof n==`string`?{value:n,label:_d(n)}:n;e.value&&!r.has(e.value)&&r.set(e.value,e)}return n&&!r.has(n)&&r.set(n,{value:n,label:_d(n)}),[...r.values()]}function yd(e){let t=hd(`span`,`dialkit-image-frame ${e}`),n=hd(`span`,`dialkit-image-fallback`);n.append(gd(`image`));let r=hd(`img`,`dialkit-image-img`);r.alt=``,r.draggable=!1,r.decoding=`async`,r.hidden=!0,t.append(n,r);let i;return r.addEventListener(`load`,()=>{r.hidden=!1,n.hidden=!0,t.removeAttribute(`title`)}),r.addEventListener(`error`,()=>{r.hidden=!0,n.hidden=!1,t.title=`Image unavailable`}),{frame:t,update(e){e!==i&&(i=e,r.hidden=!0,n.hidden=!1,t.removeAttribute(`title`),e?r.src=e:r.removeAttribute(`src`))}}}function bd(e,t,n=`popover`){let r=n===`inline`,i=t,a=[],o,s,c=()=>{},l=()=>{},u,d=0,f=`dialkit-image-picker-${++pd}`,p=hd(`button`,`dialkit-image-control`),m=hd(`span`,`dialkit-image-label`),h=hd(`span`,`dialkit-image-value`),g=yd(`dialkit-image-thumbnail`);p.setAttribute(`aria-haspopup`,`dialog`),p.setAttribute(`aria-expanded`,`false`),p.append(m,h,g.frame);let _=hd(`input`,`dialkit-image-file`);_.type=`file`,_.accept=`image/*`,_.hidden=!0,e.append(p,_),r&&(p.style.display=`none`);let v=()=>vd(i.options,a,i.value),y=()=>{m.textContent=i.label,h.textContent=v().find(e=>e.value===i.value)?.label??`No image`,p.setAttribute(`aria-label`,`Choose ${i.label.toLowerCase()} image: ${h.textContent}`),g.update(i.value),c()},b=e=>{i={...i,value:e},y(),i.onChange(e)},x=(e=!1)=>{d++,u?.abort(),u=void 0,_.onchange=null,s?.(),s=void 0,o?.remove(),o=void 0,c=()=>{},l=()=>{},delete p.dataset.open,p.setAttribute(`aria-expanded`,`false`),p.removeAttribute(`aria-controls`),document.removeEventListener(`pointerdown`,S),document.removeEventListener(`focusin`,C),e&&p.focus({preventScroll:!0})},S=t=>{!o?.contains(Bl(t))&&!e.contains(Bl(t))&&x()},C=t=>{!o?.contains(Bl(t))&&!e.contains(Bl(t))&&x()},w=()=>{if(o){r||x();return}let t=r?e:fd(e)??e;o=hd(`div`,`dialkit-image-popover`),o.dataset.presentation=n,o.style.position=r?`static`:`fixed`,o.id=f,o.setAttribute(`role`,r?`group`:`dialog`);let m=hd(`div`,`dialkit-image-heading`),h=hd(`span`,`dialkit-image-title`),g=hd(`button`,`dialkit-image-clear`,`Remove`);g.addEventListener(`click`,()=>{b(``),r||x(!0)}),m.append(h,g);let w=hd(`div`,`dialkit-image-grid`);w.setAttribute(`role`,`group`),w.setAttribute(`aria-label`,`Available images`);let T=hd(`div`,`dialkit-image-empty`,`Choose an image to get started.`),E=hd(`button`,`dialkit-button dialkit-image-upload`),D=hd(`span`,``,`Upload image`);E.append(gd(`upload`),D);let O=hd(`div`,`dialkit-image-status`);O.setAttribute(`role`,`status`),O.hidden=!0,E.addEventListener(`click`,()=>{j||_.click()});let k=[],A=[],j=!1,M=e=>{j=e,E.setAttribute(`aria-disabled`,String(e)),D.textContent=e?`Loading image…`:`Upload image`,w.setAttribute(`aria-busy`,String(e))};l=()=>{d++,u?.abort(),u=void 0,M(!1),O.hidden=!0};let N=e=>{if(j)return;if(O.hidden=!0,!e.type.startsWith(`image/`)||e.size>md){O.textContent=e.size>md?`Choose an image smaller than 10 MB.`:`Choose an image file, such as PNG, JPG, WebP, GIF, or SVG.`,O.hidden=!1;return}let t=++d;M(!0);let n=()=>{t===d&&(M(!1),O.textContent=`This image could not be opened. Try another file.`,O.hidden=!1)};u=new FileReader,u.addEventListener(`error`,n),u.addEventListener(`load`,()=>{if(t!==d)return;let r=u?.result;if(u=void 0,typeof r!=`string`){n();return}let i=new Image;i.onerror=n,i.onload=()=>{t===d&&(M(!1),a.some(e=>e.value===r)||a.push({value:r,label:e.name}),b(r),k.find(e=>e.getAttribute(`aria-pressed`)===`true`)?.focus({preventScroll:!0}))},i.src=r}),u.readAsDataURL(e)};_.onchange=()=>{let e=_.files?.[0];_.value=``,e&&N(e)},o.addEventListener(`dragover`,e=>{e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`,o.dataset.dragging=`true`)}),o.addEventListener(`dragleave`,e=>{o?.contains(e.relatedTarget)||delete o.dataset.dragging}),o.addEventListener(`drop`,e=>{e.preventDefault(),delete o.dataset.dragging;let t=e.dataTransfer?.files[0];t&&N(t)}),w.addEventListener(`keydown`,e=>{if(e.metaKey||e.ctrlKey||e.altKey)return;let t=k.indexOf(zl());if(t<0)return;let n=getComputedStyle(w).gridTemplateColumns.split(` `).length,r=e.key===`ArrowRight`?t+1:e.key===`ArrowLeft`?t-1:e.key===`ArrowDown`?t+n:e.key===`ArrowUp`?t-n:e.key===`Home`?0:e.key===`End`?k.length-1:void 0;if(r===void 0)return;e.preventDefault();let i=k[Math.max(0,Math.min(k.length-1,r))];k.forEach(e=>{e.tabIndex=e===i?0:-1}),i.focus({preventScroll:!0}),i.scrollIntoView({block:`nearest`})}),o.addEventListener(`keydown`,e=>{if(!r&&(e.stopPropagation(),e.key===`Escape`&&(e.preventDefault(),x(!0)),e.key===`Tab`)){let t=g.hidden?k.find(e=>e.tabIndex===0)??E:g;if(e.shiftKey&&zl()===t||!e.shiftKey&&zl()===E){let t=nu(p,e.shiftKey);x(!0),t&&(e.preventDefault(),t.focus())}}}),c=()=>{o?.setAttribute(`aria-label`,`${i.label} image picker`),h.textContent=i.label,g.hidden=!i.value,g.setAttribute(`aria-label`,`Remove ${i.label.toLowerCase()} image`);let e=v();if(T.hidden=e.length>0,w.hidden=e.length===0,e.length!==A.length||e.some((e,t)=>e.value!==A[t].value||e.label!==A[t].label)){let t=k.indexOf(zl());A=e,k=e.map(e=>{let t=hd(`button`,`dialkit-image-option`);t.setAttribute(`aria-label`,e.label),t.title=e.label;let n=yd(`dialkit-image-option-preview`);return n.update(e.value),t.append(n.frame),t.addEventListener(`click`,()=>{l(),b(e.value)}),t}),w.replaceChildren(...k),t>=0&&k[Math.min(t,k.length-1)]?.focus({preventScroll:!0})}let t=e.findIndex(e=>e.value===i.value);k.forEach((e,n)=>{e.setAttribute(`aria-pressed`,String(n===t)),e.tabIndex=n===Math.max(0,t)?0:-1})},o.append(m,w,T,E,O),t.append(o),y(),r||(s=dd(p,()=>{if(!o)return;if(!e.isConnected||p.getClientRects().length===0){x();return}let n=ud(p,t,{dropdownHeight:o.scrollHeight+2,width:320,maxHeight:560,preferSide:!0,fixed:!0,gap:8});Object.assign(o.style,{left:`${n.left}px`,top:`${n.top}px`,width:`${n.width}px`,maxHeight:`${n.maxHeight}px`,transformOrigin:n.above?`bottom`:`top`})},()=>o),p.dataset.open=`true`,p.setAttribute(`aria-expanded`,`true`),p.setAttribute(`aria-controls`,f),document.addEventListener(`pointerdown`,S),document.addEventListener(`focusin`,C),(k.find(e=>e.tabIndex===0)??E).focus({preventScroll:!0}))};return p.addEventListener(`click`,w),p.addEventListener(`keydown`,e=>{e.stopPropagation(),e.key===`Escape`&&(e.preventDefault(),x()),e.key===`ArrowDown`&&!o&&(e.preventDefault(),w())}),y(),r&&w(),{update(e){e.value!==i.value&&l(),i=e,y()},destroy(){x(),_.onchange=null,p.remove(),_.remove()}}}function xd(e,t){let n=Z(null),r=Z(null),i=Z(t);return i.current=t,X(()=>(r.current=e(n.current,i.current),()=>r.current?.destroy()),[]),X(()=>{r.current?.update(t)}),n}function Sd(e){return $(`div`,{ref:xd(bd,e),class:`dialkit-image-host`})}function Cd(e){return $(`div`,{ref:xd(sd,e),class:`dialkit-pad-host`})}function wd(e){return $(`div`,{ref:xd(ld,e),class:`dialkit-easing-host`})}var Td={visualDuration:.3,bounce:.2},Ed={stiffness:400,damping:17,mass:1},Dd=[.25,.1,.25,1],Od=(e,t,n)=>Math.min(n,Math.max(t,e)),kd=(e,t)=>Math.round(e/t)*t;function Ad(e,t){return t?zu(e.visualDuration??Td.visualDuration,e.bounce??Td.bounce):{stiffness:e.stiffness??Ed.stiffness,damping:e.damping??Ed.damping,mass:e.mass??Ed.mass}}function jd(e){return e.type===`easing`?e.duration:Qs(e)===`simple`?e.visualDuration??Td.visualDuration:Bu(Ad(e,!1)).visualDuration}function Md(e,t){let n=jd(e);if(t===`easing`)return{type:`easing`,duration:Od(kd(n,.05),.1,2),ease:Dd};let r=e.type===`spring`&&Qs(e)===`advanced`?Bu(Ad(e,!1)):{visualDuration:n,bounce:e.type===`spring`?e.bounce??Td.bounce:Td.bounce};if(t===`simple`)return{type:`spring`,visualDuration:Od(kd(r.visualDuration,.05),.1,1),bounce:Od(kd(r.bounce,.05),0,1)};let i=zu(r.visualDuration,r.bounce);return{type:`spring`,stiffness:Od(kd(i.stiffness,10),1,1e3),damping:Od(kd(i.damping,1),1,100),mass:1}}function Nd({spring:e,isSimple:t}){let n=Ad(e,t),r=[];for(let e=0;e<=100;e++){let t=e/100*2;r.push([t,Vu(t,n)])}let i=r.map(([,e])=>e),a=Math.min(...i),o=Math.max(...i)-a||1,s=r.map(([e,t],n)=>{let r=e/2*256,i=140-((t-a)/o*140*.6+140*.2);return`${n===0?`M`:`L`} ${r} ${i}`}).join(` `);return $(`svg`,{viewBox:`0 0 256 140`,class:`up-viz up-spring-viz`,children:[$(`g`,{class:`up-viz-grid`,children:[1,2,3].flatMap(e=>[$(`line`,{x1:256/4*e,y1:0,x2:256/4*e,y2:140},`v${e}`),$(`line`,{x1:0,y1:140/4*e,x2:256,y2:140/4*e},`h${e}`)])}),$(`line`,{class:`up-viz-target`,x1:0,y1:140/2,x2:256,y2:140/2}),$(`path`,{class:`up-viz-curve`,d:s})]})}function Pd({label:e,value:t,onChange:n}){let r=Qs(t),i=r===`easing`,a=r===`simple`,o=t.type===`spring`?t:{type:`spring`,...Td},s=t.type===`easing`?t:{type:`easing`,duration:.3,ease:Dd},c=Z({});c.current[r]=t;let l=Q(e=>{let i=e;i!==r&&n(c.current[i]??Md(t,i))},[r,t,n]),u=Q((e,t)=>{if(a){let{stiffness:r,damping:i,mass:a,...s}=o;n({...s,[e]:t})}else{let{visualDuration:r,bounce:i,...a}=o;n({...a,[e]:t})}},[o,a,n]);return $(Ll,{title:e,defaultOpen:!0,children:$(`div`,{style:{display:`flex`,flexDirection:`column`,gap:`6px`},children:[i?$(wd,{easing:s,onChange:e=>n({...s,ease:e})}):$(Nd,{spring:o,isSimple:a}),$(`div`,{class:`up-labeled-row`,children:[$(`span`,{class:`up-labeled-row-label`,children:`Type`}),$(iu,{options:[{value:`easing`,label:`Easing`},{value:`simple`,label:`Time`},{value:`advanced`,label:`Physics`}],value:r,onChange:l})]}),i?$(wc,{children:[$(Fd,{ease:s.ease,onChange:e=>n({...s,ease:e})}),$(Yu,{label:`Duration`,value:s.duration,onChange:e=>n({...s,duration:e}),min:.1,max:2,step:.05})]}):a?$(wc,{children:[$(Yu,{label:`Duration`,value:o.visualDuration??.3,onChange:e=>u(`visualDuration`,e),min:.1,max:1,step:.05}),$(Yu,{label:`Bounce`,value:o.bounce??.2,onChange:e=>u(`bounce`,e),min:0,max:1,step:.05})]}):$(wc,{children:[$(Yu,{label:`Stiffness`,value:o.stiffness??400,onChange:e=>u(`stiffness`,e),min:1,max:1e3,step:10}),$(Yu,{label:`Damping`,value:o.damping??17,onChange:e=>u(`damping`,e),min:1,max:100,step:1}),$(Yu,{label:`Mass`,value:o.mass??1,onChange:e=>u(`mass`,e),min:.1,max:10,step:.1})]})]})})}function Fd({ease:e,onChange:t}){let[n,r]=Y(null),i=Z(!1);return $(`div`,{class:`up-labeled-row`,children:[$(`span`,{class:`up-labeled-row-label`,children:`Ease`}),$(`input`,{type:`text`,class:`up-text-input up-ease-input`,"aria-label":`Bézier coordinates`,spellcheck:!1,value:n??Qu([...e]),onFocus:()=>{i.current=!1,r(Qu([...e]))},onInput:e=>r(e.target.value),onBlur:()=>{let e=n===null||i.current?null:$u(n);e&&t(e),r(null)},onKeyDown:e=>{e.key===`Enter`&&e.target.blur(),e.key===`Escape`&&(i.current=!0,e.target.blur())}})]})}var Id=(e,t,n)=>Math.min(n,Math.max(t,e)),Ld=3;function Rd(e){let t=e.getRootNode(),n=t.querySelector(`.up-vcursor`);return n||(n=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`),n.setAttribute(`class`,`up-vcursor`),n.setAttribute(`viewBox`,`0 0 24 24`),n.innerHTML=`<path d="M2 12l5-5v3h10V7l5 5-5 5v-3H7v3z" fill="#fff" stroke="#000" stroke-width="1.2" stroke-linejoin="round"/>`,(t instanceof Document?t.body:t).appendChild(n)),n}function zd({label:e,value:t,onChange:n,min:r,max:i,step:a,digits:o=0,suffix:s=``,wrap:c,class:l}){let u=Z(null),d=Z(null),[f,p]=Y(!1),[m,h]=Y(!1),[g,_]=Y(``),v=Z(!1),y=Z({value:t,onChange:n,min:r,max:i,step:a,wrap:c});y.current={value:t,onChange:n,min:r,max:i,step:a,wrap:c};let b=e=>e.toFixed(o)+s,x=e=>{let{min:t,max:n,wrap:r,onChange:i}=y.current;i(r?((e-t)%(n-t)+(n-t))%(n-t)+t:Id(e,t,n))};return X(()=>{f&&(d.current?.focus(),d.current?.select())},[f]),$(`label`,{ref:u,class:`up-cp-field ${m?`up-cp-field-scrubbing`:``} ${f?`up-cp-field-editing`:``} ${l??``}`,onMouseDown:e=>{let t=u.current;if(e.button!==0||f||!t)return;e.preventDefault(),document.getSelection()?.removeAllRanges();let n=zl();n instanceof HTMLInputElement&&n.blur();let r=t.getRootNode(),i=()=>r.pointerLockElement===t,a=Rd(t);a.style.left=`${e.clientX}px`,a.style.top=`${e.clientY}px`;let o=y.current.value,s=0,c=0,l=()=>a.classList.toggle(`up-vcursor-on`,i()),d=e=>{s+=Math.abs(e.movementX),!(s<Ld)&&(h(!0),c+=e.movementX*y.current.step*(e.shiftKey?10:e.altKey?.1:1),x(o+c))},m=()=>{document.removeEventListener(`mousemove`,d),document.removeEventListener(`mouseup`,m),document.removeEventListener(`pointerlockchange`,l),i()&&document.exitPointerLock(),a.classList.remove(`up-vcursor-on`),h(!1),s<Ld&&(v.current=!1,_(b(y.current.value)),p(!0))};document.addEventListener(`mousemove`,d),document.addEventListener(`mouseup`,m),document.addEventListener(`pointerlockchange`,l);try{t.requestPointerLock()?.catch?.(()=>{})}catch{}},children:[$(`span`,{children:e}),$(`input`,{ref:d,spellcheck:!1,tabIndex:f?0:-1,value:f?g:b(t),onInput:e=>_(e.target.value),onBlur:()=>{if(p(!1),v.current)return;let e=parseFloat(g);Number.isNaN(e)||x(e)},onKeyDown:e=>{e.stopPropagation(),e.key===`Enter`&&d.current?.blur(),e.key===`Escape`&&(v.current=!0,d.current?.blur())}})]})}function Bd({value:e,onCommit:t}){let[n,r]=Y(null),i=Z(null),a=Z(!1);return $(`label`,{class:`up-cp-field up-cp-field-text`,children:[$(`span`,{children:`#`}),$(`input`,{ref:i,spellcheck:!1,value:n??e.slice(1,7).toUpperCase(),onFocus:()=>{a.current=!1,r(e.slice(1,7).toUpperCase())},onInput:e=>r(e.target.value),onBlur:()=>{n!==null&&!a.current&&t(`#`+n.replace(/^#/,``)),r(null)},onKeyDown:e=>{e.stopPropagation(),e.key===`Enter`&&i.current?.blur(),e.key===`Escape`&&(a.current=!0,i.current?.blur())}})]})}var Vd=e=>Math.min(1,Math.max(0,e));function Hd(e){return t=>{if(t.button!==0)return;t.preventDefault();let n=t.currentTarget;n.setPointerCapture(t.pointerId);let r=t=>{let r=n.getBoundingClientRect();e(Vd((t.clientX-r.left)/r.width),Vd((t.clientY-r.top)/r.height))};r(t);let i=()=>{n.removeEventListener(`pointermove`,r),n.removeEventListener(`pointerup`,i)};n.addEventListener(`pointermove`,r),n.addEventListener(`pointerup`,i)}}var Ud=[`hex`,`oklch`,`rgb`],Wd=e=>Ud[(Ud.indexOf(e)+1)%Ud.length];function Gd({color:e,onChange:t,format:n,onFormat:r,classic:i,contrastWith:a}){let o=n=>t({...e,...n}),s=ns(e),c=os({...e,a:1}),l=os({h:e.h,s:1,v:1,a:1}),u=window.EyeDropper,[d,f,p]=us(e),m=(n,r,i)=>t(ds(n,r,i,e)),h=$(zd,{label:`A`,value:e.a*100,onChange:e=>o({a:e/100}),min:0,max:100,step:.5,suffix:`%`,class:`up-cp-field-alpha`});return $(`div`,{class:`up-cp-editor`,children:[$(`div`,{class:`up-cp-area`,style:{background:`linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, ${l})`},onPointerDown:Hd((e,t)=>o({s:e,v:1-t})),children:$(`i`,{class:`up-cp-thumb`,style:{left:`${e.s*100}%`,top:`${(1-e.v)*100}%`,background:c}})}),$(`div`,{class:`up-cp-row`,children:[u&&$(`button`,{type:`button`,class:`up-cp-icon-btn`,title:`Pick from screen`,onClick:async()=>{try{let{sRGBHex:n}=await new u().open(),r=ss(n,e.h);r&&t({...r,a:e.a})}catch{}},children:$(`svg`,{viewBox:`0 0 24 24`,children:$(`path`,{d:`M14.5 4.5l5 5M11 8l5 5M4 20l1-4 9.5-9.5 3 3L8 19z`})})}),$(`div`,{class:`up-cp-sliders`,children:[$(`div`,{class:`up-cp-slider up-cp-hue`,onPointerDown:Hd(e=>o({h:e*359.9})),children:$(`i`,{class:`up-cp-thumb`,style:{left:`${e.h/360*100}%`,background:l}})}),$(`div`,{class:`up-cp-slider up-cp-alpha`,onPointerDown:Hd(e=>o({a:Math.round(e*100)/100})),children:[$(`b`,{style:{background:`linear-gradient(to right, transparent, ${c})`}}),$(`i`,{class:`up-cp-thumb`,style:{left:`${e.a*100}%`}})]})]}),$(`div`,{class:`up-cp-preview`,children:$(`b`,{style:{background:os(e)}})})]}),i&&$(`div`,{class:`up-cp-dots`,children:ws.map(([n,r])=>$(Kd,{hex:r,title:`${n} · ${r}`,selected:c,onPick:n=>t({...ss(n,e.h),a:e.a})},r))}),$(`div`,{class:`up-cp-fields`,children:[$(`button`,{type:`button`,class:`up-cp-format`,title:`Format: ${n.toUpperCase()} (click to switch)`,onClick:r,children:[n.toUpperCase(),$(`svg`,{viewBox:`0 0 24 24`,children:$(`path`,{d:`M8 9l4-4 4 4M8 15l4 4 4-4`})})]}),n===`hex`&&$(Bd,{value:os(e,!1),onCommit:n=>{let r=ss(n,e.h);return r&&t({...r,a:e.a}),!!r}}),n===`oklch`&&$(wc,{children:[$(zd,{label:`L`,value:d*100,onChange:e=>m(e/100,f,p),min:0,max:100,step:.25}),$(zd,{label:`C`,value:f,onChange:e=>m(d,e,p),min:0,max:.37,step:.001,digits:3,class:`up-cp-field-wide`}),$(zd,{label:`H`,value:p,onChange:e=>m(d,f,e),min:0,max:360,step:.5,wrap:!0})]}),n===`rgb`&&[0,1,2].map(n=>$(zd,{label:`RGB`[n],value:s[n]*255,onChange:r=>{let i=[...s];i[n]=r/255,t(rs(i,e.a,e.h))},min:0,max:255,step:.5},n)),h]}),a&&a.length>0&&$(qd,{color:e,backgrounds:a})]})}function Kd({hex:e,title:t,selected:n,onPick:r,onPreview:i}){let a=e.toLowerCase()===n.toLowerCase(),o=us(ss(e))[0]>.9;return $(`button`,{type:`button`,class:`up-cp-dot ${a?`up-cp-dot-on`:``} ${o?`up-cp-dot-light`:``}`,style:{"--c":e},title:t,onClick:()=>r(e),onMouseEnter:i&&(()=>i(e))})}function qd({color:e,backgrounds:t}){let[n,r]=Y(0),i=t[n%t.length],a=ss(i);if(!a)return null;let o=ps(e,a),s=ms(o);return $(`button`,{type:`button`,class:`up-cp-contrast`,title:`Contrast against ${i} (WCAG 2). Click to switch background.`,onClick:()=>r(e=>e+1),children:[$(`span`,{class:`up-cp-contrast-sample`,style:{background:i,color:os(e)},children:`Aa`}),$(`span`,{class:`up-cp-contrast-ratio`,children:[o.toFixed(2),`:1`]}),$(`span`,{class:`up-cp-contrast-grade ${s===`Fail`?`up-cp-contrast-fail`:``}`,children:s}),$(`span`,{class:`up-cp-contrast-bg`,children:[`vs `,cs(i)===`hex`?i.toUpperCase():i]})]})}var Jd=28;function Yd({gradient:e,selected:t,onChange:n,format:r,onFormat:i}){let a=Z(null),o=Math.min(t,e.stops.length-1),s=(t,r=o)=>n({...e,...t},r),c=t=>{e.stops.length<=2||s({stops:e.stops.filter((e,n)=>n!==t)},Math.max(0,t-1))},l=e=>{let t=a.current.getBoundingClientRect();return Math.min(1,Math.max(0,(e-t.left)/t.width))},u=t=>{if(t.button!==0||t.target.classList.contains(`up-cp-stop`))return;let n=l(t.clientX);s({stops:[...e.stops,{pos:n,color:xs(e,n)}]},e.stops.length)},d=t=>r=>{if(r.button!==0)return;r.preventDefault(),r.stopPropagation();let i=r.currentTarget;i.setPointerCapture(r.pointerId),i.closest(`.up-cp-gradient`)?.focus({preventScroll:!0});let o=e.stops,s=!1;n(e,t);let c=r=>{let c=a.current.getBoundingClientRect();s=e.stops.length>2&&r.clientY-c.bottom>Jd,i.classList.toggle(`up-cp-stop-removing`,s),o=o.map((e,n)=>n===t?{...e,pos:l(r.clientX)}:e),n({...e,stops:o},t)},u=()=>{i.removeEventListener(`pointermove`,c),i.removeEventListener(`pointerup`,u),s&&n({...e,stops:o.filter((e,n)=>n!==t)},Math.max(0,t-1))};i.addEventListener(`pointermove`,c),i.addEventListener(`pointerup`,u)},f=e.stops[o];return $(`div`,{class:`up-cp-gradient`,tabIndex:-1,onKeyDown:e=>{(e.key===`Delete`||e.key===`Backspace`)&&!(e.target instanceof HTMLInputElement)&&(e.preventDefault(),c(o))},children:[$(`div`,{class:`up-cp-gbar-wrap`,children:$(`div`,{ref:a,class:`up-cp-gbar`,onPointerDown:u,title:`Click to add a stop`,children:[$(`b`,{style:{background:gs(e,!0)}}),e.stops.map((e,t)=>$(`i`,{class:`up-cp-stop ${t===o?`up-cp-stop-on`:``}`,style:{left:`${e.pos*100}%`,background:os(e.color)},onPointerDown:d(t)},t))]})}),$(`div`,{class:`up-cp-row up-cp-between`,children:[$(Xd,{value:e.type,options:[[`linear`,`Linear`],[`radial`,`Radial`],[`conic`,`Conic`]],onChange:e=>s({type:e})}),$(zd,{label:`∠`,value:e.angle,onChange:e=>s({angle:e}),min:0,max:360,step:1,wrap:!0,suffix:`°`,class:`up-cp-field-angle ${e.type===`radial`?`up-cp-hidden`:``}`})]}),$(`div`,{class:`up-cp-row up-cp-between`,children:[$(Xd,{value:e.interp,options:[[`srgb`,`sRGB`],[`oklab`,`OKLab`],[`oklch`,`OKLCH`]],onChange:e=>s({interp:e})}),$(`span`,{class:`up-cp-hint`,children:`blend`})]}),$(Gd,{color:f.color,onChange:t=>s({stops:e.stops.map((e,n)=>n===o?{...e,color:t}:e)}),format:r,onFormat:i})]})}function Xd({value:e,options:t,onChange:n}){return $(`div`,{class:`up-cp-seg`,role:`radiogroup`,children:t.map(([t,r])=>$(`button`,{type:`button`,role:`radio`,"aria-checked":t===e,class:t===e?`up-cp-seg-on`:``,onClick:()=>n(t),children:r},t))})}var Zd=`tunekit:saved-colors`,Qd=new Set;function $d(){try{let e=JSON.parse(localStorage.getItem(Zd)??`[]`);return Array.isArray(e)?e:[]}catch{return[]}}var ef=$d();function tf(e){ef=e;try{localStorage.setItem(Zd,JSON.stringify(ef))}catch{}Qd.forEach(e=>e())}var nf={get:()=>ef,add(e){ef.some(t=>t.value===e.value)||tf([...ef,e])},remove(e){tf(ef.filter(t=>t.value!==e))},subscribe(e){return Qd.add(e),()=>Qd.delete(e)}};function rf(){return lu(nf.subscribe,nf.get)}var af=$(`svg`,{viewBox:`0 0 24 24`,children:$(`path`,{d:`M9 6l6 6-6 6`})});function of({title:e,jp:t,count:n,defaultOpen:r=!1,free:i,children:a}){let[o,s]=Y(r),[c,l]=Y(r);return $(`div`,{class:`up-cp-sect`,children:[$(`button`,{type:`button`,class:`up-cp-sect-head ${o?`up-cp-sect-open`:``}`,"aria-expanded":o,onClick:()=>{s(!o),l(!0)},children:[e,t&&$(`span`,{class:`up-cp-sect-jp`,children:t}),n!==void 0&&$(`span`,{class:`up-cp-sect-n`,children:n}),af]}),c&&$(`div`,{class:`up-cp-sect-body ${i?`up-cp-sect-free`:``}`,hidden:!o,children:a()})]})}function sf({background:e,title:t,label:n,onPick:r,onPreview:i,onRemove:a}){return $(`div`,{class:`up-cp-chip`,role:`button`,tabIndex:0,title:t,onClick:r,onMouseEnter:i,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),r())},onContextMenu:a&&(e=>{e.preventDefault(),a()}),children:[$(`b`,{style:{background:e}}),n&&$(`span`,{class:`up-cp-chip-label`,children:n}),a&&$(`button`,{type:`button`,class:`up-cp-chip-x`,"aria-label":`Remove`,onClick:e=>{e.stopPropagation(),a()},children:`×`})]})}function cf({kind:e,current:t,onPick:n}){let r=rf().filter(t=>t.kind===e);return $(of,{title:`Saved`,defaultOpen:!0,free:!0,children:()=>$(`div`,{class:`up-cp-chips ${e===`gradient`?`up-cp-chips-wide`:``}`,children:[r.map(e=>$(sf,{background:e.value,title:e.value,onPick:()=>n(e.value),onRemove:()=>nf.remove(e.value)},e.value)),$(`button`,{type:`button`,class:`up-cp-chip up-cp-chip-add`,title:e===`solid`?`Save current color`:`Save current gradient`,onClick:()=>nf.add({kind:e,value:t}),children:$(`svg`,{viewBox:`0 0 24 24`,children:$(`path`,{d:`M12 5v14M5 12h14`})})})]})})}var lf=.025,uf=(()=>{let e=ws.map(([,e])=>us(ss(e))[2]),t=ws.map(()=>[]),n=[];for(let[,,r]of Ss){let[i,a,o]=us(ss(r));if(a<lf){n.push([i,r]);continue}let s=e=>Math.min(Math.abs(e-o),360-Math.abs(e-o));t[e.reduce((t,n,r)=>s(n)<s(e[t])?r:t,0)].push([i,r])}let r=(e,t)=>t[0]-e[0];t.forEach(e=>e.sort(r)),n.sort(r);let i=Math.max(...t.map(e=>e.length)),a=[];for(let e=0;e<i;e++)for(let n of t)a.push(n[e]?.[1]??null);return{grid:a,neutrals:n.map(([,e])=>e)}})();function df({selected:e,onColor:t,onPreview:n,defaultOpen:r}){return $(of,{title:`Traditional colors`,jp:`日本の伝統色`,count:Ss.length,defaultOpen:r,children:()=>$(wc,{children:[$(`div`,{class:`up-cp-dots`,children:uf.grid.map((r,i)=>r?$(Kd,{hex:r,title:r,selected:e,onPick:t,onPreview:n},r):$(`span`,{},`gap-${i}`))}),$(`div`,{class:`up-cp-dots-label`,children:`Neutrals`}),$(`div`,{class:`up-cp-dots`,children:uf.neutrals.map(r=>$(Kd,{hex:r,title:r,selected:e,onPick:t,onPreview:n},r))})]})})}var ff=()=>Cs.map(([e,t,n])=>[e,t,gs(bs(n))]);function pf({onGradient:e,onPreview:t,defaultOpen:n}){return $(of,{title:`Japanese gradients`,jp:`和`,count:Cs.length,defaultOpen:n,children:()=>$(`div`,{class:`up-cp-chips up-cp-chips-wide`,children:ff().map(([n,r,i])=>$(sf,{background:i,title:`${n} ${r}`,label:r,onPick:()=>e(i),onPreview:t&&(()=>t(i))},n+r))})})}function mf({onColor:e,onGradient:t,onPreview:n}){return $(of,{title:`Wada combinations`,jp:`配色事典`,count:Es.k.length,children:()=>$(`div`,{class:`up-cp-combos`,children:Es.k.map((r,i)=>$(`div`,{class:`up-cp-combo`,children:[$(`span`,{class:`up-cp-combo-no`,children:i+1}),$(`div`,{class:`up-cp-combo-strip`,children:r.map(t=>{let[r,i]=Es.c[t];return $(`i`,{style:{background:i},title:`${r} · ${i}`,onClick:()=>e(i),onMouseEnter:()=>n?.(i)},t)})}),t&&$(`button`,{type:`button`,title:`Use as gradient`,onClick:()=>t(gs(bs(r.map(e=>Es.c[e][1])))),onMouseEnter:()=>n?.(gs(bs(r.map(e=>Es.c[e][1])))),children:`⇢`})]},i))})})}function hf({onGradient:e,onPreview:t}){return $(of,{title:`uiGradients`,count:Ts.length,children:()=>$(gf,{onGradient:e,onPreview:t})})}function gf({onGradient:e,onPreview:t}){let[n,r]=Y(``),i=n.trim().toLowerCase();return $(wc,{children:[$(`input`,{class:`up-cp-search`,placeholder:`Search ${Ts.length} gradients…`,value:n,onInput:e=>r(e.target.value),onKeyDown:e=>e.stopPropagation()}),$(`div`,{class:`up-cp-chips up-cp-chips-wide`,children:Ts.filter(([e])=>e.toLowerCase().includes(i)).map(([n,r])=>{let i=gs(bs(r));return $(sf,{background:i,title:n,onPick:()=>e(i),onPreview:t&&(()=>t(i))},n)})})]})}var _f=null,vf=()=>_f??=As(()=>Promise.resolve().then(()=>(Is(),js)).then(e=>e.n),void 0,import.meta.url).then(e=>e.CURATED),yf=new Set([`webgradients`]),bf=40;function xf({onColor:e,onGradient:t,onPreview:n}){let[r,i]=Y(null);return X(()=>{let e=!0;return vf().then(t=>e&&i(t)),()=>{e=!1}},[]),r?$(wc,{children:r.filter(e=>t||!yf.has(e.id)).map(r=>$(of,{title:r.title,count:r.palettes.length,children:()=>$(Sf,{collection:r,onColor:e,onGradient:t,onPreview:n})},r.id))}):null}function Sf({collection:e,onColor:t,onGradient:n,onPreview:r}){let[i,a]=Y(``),o=i.trim().toLowerCase(),s=e.palettes.filter(([e])=>e.toLowerCase().includes(o));return $(wc,{children:[e.palettes.length>bf&&$(`input`,{class:`up-cp-search`,placeholder:`Search ${e.palettes.length}…`,value:i,onInput:e=>a(e.target.value),onKeyDown:e=>e.stopPropagation()}),yf.has(e.id)&&n?$(`div`,{class:`up-cp-chips up-cp-chips-wide`,children:s.map(([e,t])=>{let i=gs(bs(t));return $(sf,{background:i,title:e,onPick:()=>n(i),onPreview:r&&(()=>r(i))},e)})}):$(`div`,{class:`up-cp-combos`,children:s.map(([e,i])=>$(`div`,{class:`up-cp-combo`,children:[$(`span`,{class:`up-cp-combo-name`,title:e,children:e}),$(`div`,{class:`up-cp-combo-strip`,children:i.map((e,n)=>$(`i`,{style:{background:e},title:e,onClick:()=>t(e),onMouseEnter:()=>r?.(e)},n))}),n&&$(`button`,{type:`button`,title:`Use as gradient`,onClick:()=>n(gs(bs(i))),onMouseEnter:()=>r?.(gs(bs(i))),children:`⇢`})]},e))}),$(`div`,{class:`up-cp-credit`,children:[e.credit,` · `,$(`a`,{href:e.source.split(`,`)[0],target:`_blank`,rel:`noreferrer`,children:`source`})]})]})}var Cf=288,wf={w:260,h:240},Tf=`tunekit-color-popover`,Ef=()=>{try{let e=JSON.parse(localStorage.getItem(Tf)??`null`);return e&&e.w>0&&e.h>0?e:null}catch{return null}},Df=e=>{try{e?localStorage.setItem(Tf,JSON.stringify(e)):localStorage.removeItem(Tf)}catch{}},Of={h:0,s:0,v:0,a:1},kf={solid:$(`svg`,{viewBox:`0 0 24 24`,children:$(`circle`,{cx:`12`,cy:`12`,r:`8`,fill:`currentColor`})}),gradient:$(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,children:[$(`circle`,{cx:`12`,cy:`12`,r:`8`}),$(`path`,{d:`M12 4a8 8 0 0 1 0 16z`,fill:`currentColor`})]}),library:$(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,children:[$(`rect`,{x:`4`,y:`4`,width:`7`,height:`7`,rx:`2`}),$(`rect`,{x:`13`,y:`4`,width:`7`,height:`7`,rx:`2`,opacity:`.6`}),$(`rect`,{x:`4`,y:`13`,width:`7`,height:`7`,rx:`2`,opacity:`.6`}),$(`rect`,{x:`13`,y:`13`,width:`7`,height:`7`,rx:`2`,opacity:`.35`})]})};function Af({label:e,value:t,onChange:n,portalContainer:r,gradient:i,contrast:a}){let o=!!i||hs(t),s=Z(null),c=Z(null),l=Z(null),[u,d]=Y(!1),[f,p]=Y(Ef),[m,h]=Y(()=>(hs(t)?null:ss(t))??Of),[g,_]=Y(()=>ys(t)??bs([`#0F2540`,`#8B81C3`,`#FEDFE1`])),[v,y]=Y(0),[b,x]=Y(()=>cs(t)),[S,C]=Y(()=>hs(t)?`gradient`:`solid`),[w,T]=Y(null),E=Z(t);X(()=>{if(t!==E.current)if(E.current=t,hs(t)){let e=ys(t);e&&_(e)}else{let e=ss(t,m.h);e&&h(e),x(cs(t))}},[t]);let D=e=>{E.current=e,n(e)},O=(e,t=b)=>{h(e),D(ls(e,t))},k=(e,t=v)=>{_(e),y(t),D(gs(e))},A=Z(null),j=e=>{if(hs(e)){let t=ys(e);t&&(_(t),y(0))}else{let t=ss(e,m.h);t&&h(t)}D(e)},M=e=>{if(e===null){let e=A.current;A.current=null,e!==null&&e!==t&&j(e);return}A.current??=t,e!==t&&j(e)},N=Z(M);N.current=M;let P=e=>{A.current=null,O({...ss(e,m.h)??Of,a:1}),S!==`library`&&C(`solid`)},ee=e=>{let t=ys(e);t&&(A.current=null,k(t,0),S!==`library`&&C(`gradient`))},te=e=>hs(e)?ee(e):P(e),ne=e=>{C(e),e===`solid`&&hs(t)&&O({...g.stops[Math.min(v,g.stops.length-1)].color}),e===`gradient`&&!hs(t)&&k(g)},re=()=>{let e=Wd(b);x(e),hs(t)||O(m,e)},ie=Q((e=!1)=>{N.current(null),d(!1),e&&c.current?.focus({preventScroll:!0})},[]);ll(()=>{if(!u||!r)return;let e=s.current,t=dd(e,()=>{let t=l.current;if(!t)return;let n=t.firstElementChild,i=ud(e,r,{dropdownHeight:f?f.h:(n?.scrollHeight??0)+2,width:f?.w??Cf,maxHeight:f?.h??640,preferSide:!0,fixed:!0,gap:8});Object.assign(t.style,{left:`${i.left}px`,top:`${i.top}px`,width:`${i.width}px`,maxHeight:`${i.maxHeight}px`,height:f?`${Math.min(f.h,i.maxHeight)}px`:``,transformOrigin:i.above?`bottom`:`top`});let a=e.closest(`.up-shell`)?.getBoundingClientRect();t.dataset.side=a&&i.left+i.width<=a.left+1?`before`:`after`,t.style.setProperty(`--up-cp-sect-h`,f?`${Math.max(272,f.h-330)}px`:``)},()=>l.current),n=t=>{let n=t.composedPath();!n.includes(l.current)&&!n.includes(e)&&ie()},i=e=>{e.key===`Escape`&&ie(!0)};return document.addEventListener(`pointerdown`,n,!0),window.addEventListener(`keydown`,i),()=>{t(),document.removeEventListener(`pointerdown`,n,!0),window.removeEventListener(`keydown`,i)}},[u,r,ie,f]);let ae=e=>{e.preventDefault(),e.stopPropagation();let t=l.current,n=t.getBoundingClientRect(),r=t.dataset.side===`before`?-1:1,i=e.clientX,a=e.clientY,o=null,s=e=>{o={w:Math.round(Math.min(window.innerWidth-16,Math.max(wf.w,n.width+r*(e.clientX-i)))),h:Math.round(Math.min(window.innerHeight-16,Math.max(wf.h,n.height+(e.clientY-a))))},p(o)},c=()=>{document.removeEventListener(`pointermove`,s),document.removeEventListener(`pointerup`,c),o&&Df(o)};document.addEventListener(`pointermove`,s),document.addEventListener(`pointerup`,c)},F=hs(t),oe=os({...m,a:1}),se=[...new Set([a,`#ffffff`,`#000000`].filter(e=>!!e))],ce=o?[`solid`,`gradient`,`library`]:[`solid`,`library`];return $(`div`,{ref:s,class:`dialkit-color-control`,"data-open":u?`true`:void 0,children:[$(`span`,{class:`dialkit-color-label`,children:e}),$(`div`,{class:`dialkit-color-inputs`,children:[F&&w===null?$(jf,{value:t}):$(`input`,{class:`dialkit-color-value`,spellcheck:!1,"aria-label":`${e} color value`,value:w??t,title:t,onFocus:()=>T(t),onInput:e=>T(e.target.value),onBlur:()=>{let e=w?.trim()??``;T(null),!(!e||e===t)&&(hs(e)?o&&ys(e):ss(e))&&(E.current=``,n(e))},onKeyDown:e=>{e.stopPropagation(),e.key===`Enter`&&e.target.blur(),e.key===`Escape`&&(T(t),e.target.blur())}}),$(`button`,{ref:c,type:`button`,class:`dialkit-color-swatch up-cp-swatch`,"aria-haspopup":`dialog`,"aria-expanded":u,"aria-label":`Pick ${e.toLowerCase()} color`,style:{"--up-swatch":F?t:`linear-gradient(${t}, ${t})`},onClick:()=>d(!u)})]}),u&&r&&Cu($(`div`,{ref:l,class:`up-cp-pop`,onWheel:Fl,role:`dialog`,"aria-label":`${e} color picker`,style:{position:`fixed`},onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),ie(!0)),e.stopPropagation()},children:[$(`div`,{class:`up-cp-scroll`,children:[$(`div`,{class:`up-cp-tabs`,role:`tablist`,children:ce.map(e=>$(`button`,{type:`button`,role:`tab`,"aria-selected":S===e,class:`up-cp-tab ${S===e?`up-cp-tab-on`:``}`,onClick:()=>ne(e),children:[kf[e],e[0].toUpperCase()+e.slice(1)]},e))}),S===`solid`&&$(wc,{children:[$(Gd,{color:m,onChange:e=>O(e),format:b,onFormat:re,classic:!0,contrastWith:se}),$(cf,{kind:`solid`,current:ls(m,b),onPick:te}),$(df,{selected:F?``:oe,onColor:P,defaultOpen:!0})]}),S===`gradient`&&$(wc,{children:[$(Yd,{gradient:g,selected:v,onChange:k,format:b,onFormat:()=>x(Wd(b))}),$(cf,{kind:`gradient`,current:gs(g),onPick:te}),$(pf,{onGradient:ee})]}),S===`library`&&$(`div`,{class:`up-cp-library`,onMouseLeave:()=>M(null),children:[o&&$(pf,{onGradient:ee,onPreview:M,defaultOpen:!0}),$(df,{selected:F?``:oe,onColor:P,onPreview:M,defaultOpen:!o}),$(mf,{onColor:P,onGradient:o?ee:void 0,onPreview:M}),o&&$(hf,{onGradient:ee,onPreview:M}),$(xf,{onColor:P,onGradient:o?ee:void 0,onPreview:M})]})]}),$(`div`,{class:`up-cp-grip`,title:`Drag to resize · double-click to reset`,onPointerDown:ae,onDblClick:()=>{p(null),Df(null)},children:$(`svg`,{viewBox:`0 0 10 10`,children:$(`path`,{d:`M9 3L3 9M9 6.5L6.5 9`})})})]}),r)]})}function jf({value:e}){let[t,n]=Y(!1),r=Z(0);X(()=>()=>clearTimeout(r.current),[]);let i=ys(e),a=i?`${i.type} · ${i.stops.length} stops`:`gradient`;return $(`button`,{type:`button`,class:`up-cp-copy`,"data-copied":t?`true`:void 0,title:`${e}\n\nClick to copy`,onClick:()=>{navigator.clipboard.writeText(e).then(()=>{n(!0),clearTimeout(r.current),r.current=window.setTimeout(()=>n(!1),1400)})},children:[$(`span`,{class:`up-cp-copy-text`,children:t?`copied`:a},t?`copied`:`summary`),$(`span`,{class:`up-cp-copy-icon`,"aria-hidden":`true`,children:[$(`svg`,{class:`up-cp-copy-a`,viewBox:`0 0 24 24`,children:[$(`rect`,{x:`9`,y:`9`,width:`11`,height:`11`,rx:`2`}),$(`path`,{d:`M5 15V6a2 2 0 0 1 2-2h9`})]}),$(`svg`,{class:`up-cp-copy-b`,viewBox:`0 0 24 24`,children:$(`path`,{d:`M5 12.5l4.5 4.5L19 7.5`})})]})]})}function Mf({panel:e,values:t,portalContainer:n,activeShortcutPath:r}){let i=a=>{let o=t[a.path],s=t=>G.updateValue(e.id,a.path,t),c=r===a.path;switch(a.type){case`slider`:return $(Yu,{label:a.label,value:o,onChange:t=>G.updateValue(e.id,a.path,t),min:a.min??0,max:a.max??100,step:a.step??1,shortcut:a.shortcut,shortcutActive:c},a.path);case`toggle`:return $(ru,{label:a.label,checked:o,onChange:t=>G.updateValue(e.id,a.path,t),shortcut:a.shortcut,shortcutActive:c},a.path);case`action`:return $(au,{label:a.label,onClick:()=>G.triggerAction(e.id,a.path)},a.path);case`slot`:return $(Xu,{panelId:e.id,path:a.path,label:a.label},a.path);case`select`:return $(Lu,{label:a.label,value:o,options:a.options??[],onChange:t=>G.updateValue(e.id,a.path,t),portalContainer:n},a.path);case`text`:return $(ou,{label:a.label,value:o,onChange:t=>G.updateValue(e.id,a.path,t),placeholder:a.placeholder},a.path);case`color`:return $(Af,{label:a.label,value:o,onChange:s,portalContainer:n,gradient:a.gradient,contrast:a.contrast},a.path);case`image`:return $(Sd,{label:a.label,value:o,options:a.options,onChange:s},a.path);case`pad`:return $(Cd,{label:a.label,value:o,x:a.pad?.x,y:a.pad?.y,labels:a.pad?.labels,onChange:s},a.path);case`transition`:return $(Pd,{label:a.label,value:o,onChange:t=>G.updateValue(e.id,a.path,t)},a.path);case`folder`:return $(Ll,{title:a.label,defaultOpen:a.defaultOpen,children:a.children?.map(i)},a.path);default:return null}};return $(`div`,{class:`up-panel-section`,children:e.controls.map(i)})}function Nf({panelId:e,presets:t,activePresetId:n,portalContainer:r}){let[i,a]=Y(!1),o=Z(null),s=Z(null),[c,l]=Y({top:0,left:0,width:0}),u=t.length>0,d=t.find(e=>e.id===n),f=Q(()=>{if(!u)return;let e=o.current?.getBoundingClientRect();e&&l({top:e.bottom+4,left:e.left,width:e.width}),a(!0)},[u]),p=Q(()=>a(!1),[]);X(()=>{if(!i)return;let e=e=>{let t=e.composedPath();o.current&&t.includes(o.current)||s.current&&t.includes(s.current)||p()};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[i,p]);let m=Q(t=>{t?G.loadPreset(e,t):G.clearActivePreset(e),p()},[e,p]),h=Q(()=>{let n=t.length+2;G.savePreset(e,`Version ${n}`)},[e,t.length]),g=Q(()=>{let t=G.getPanel(e),n=G.getChangedValues(e),r=Object.keys(n).length>0,i=JSON.stringify(r?n:G.getTunableValues(e),null,2),a=t?.source?` in ${t.source}`:``,o=r?`Update the usePane configuration for "${t?.name??e}"${a} with these values:\n\n\`\`\`json\n${i}\n\`\`\`\n\nApply these values as the new defaults in the usePane call. Keys are dot-paths into the config; controls not listed are unchanged.`:`The usePane configuration for "${t?.name??e}"${a} is at its defaults:\n\n\`\`\`json\n${i}\n\`\`\``;navigator.clipboard.writeText(o).catch(()=>{})},[e]);return $(`div`,{class:`up-preset-bar`,children:[$(`button`,{ref:o,class:`up-preset-trigger`,onClick:()=>i?p():f(),children:[$(`span`,{children:d?d.name:`Default`}),u&&$(`svg`,{class:`up-select-chevron ${i?`up-select-chevron-open`:``}`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:$(`path`,{d:`M6 9.5L12 15.5L18 9.5`})})]}),$(`button`,{class:`up-preset-add`,onClick:h,title:`Save preset`,children:$(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:$(`path`,{d:`M12 5v14M5 12h14`})})}),$(`button`,{class:`up-copy-btn`,onClick:g,title:`Copy for AI`,children:$(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:[$(`path`,{d:`M8 6C8 4.34 9.34 3 11 3h2c1.66 0 3 1.34 3 3v1H8V6Z`}),$(`path`,{d:`M16 5h1c1.66 0 3 1.34 3 3v10c0 1.66-1.34 3-3 3H7c-1.66 0-3-1.34-3-3V8c0-1.66 1.34-3 3-3h1`})]})}),i&&r&&Cu($(`div`,{ref:s,class:`up-preset-dropdown`,style:{top:`${c.top}px`,left:`${c.left}px`,minWidth:`${c.width}px`},children:[$(`div`,{class:`up-preset-item ${n?``:`up-preset-item-active`}`,onClick:()=>m(null),children:$(`span`,{children:`Default`})}),t.map(t=>$(`div`,{class:`up-preset-item ${t.id===n?`up-preset-item-active`:``}`,onClick:()=>m(t.id),children:[$(`span`,{children:t.name}),!t.file&&$(`button`,{class:`up-preset-delete`,onClick:n=>{n.stopPropagation(),G.deletePreset(e,t.id)},title:`Delete`,children:$(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:$(`path`,{d:`M18 6L6 18M6 6l12 12`})})})]},t.id))]}),r)]})}var Pf=[];function Ff(){let[e,t]=Y(null),n=Z(new Set),r=Z(!1),i=Z(null),a=Z(0);return X(()=>{let e={};Pf.push(e);let o=()=>Pf[0]===e,s=()=>{r.current=!1,i.current=null,a.current=0},c=(e,t)=>{let r=Jl(n.current,t);if(!r)return!1;a.current+=e;let i=Math.trunc(a.current/4);return i!==0&&(a.current-=i*4,Hl(r,Vl(r.control,r.shortcut),i)),!0},l=e=>{if(!o()||Ul())return;let r=e.key.toLowerCase();if(r.startsWith(`arrow`)&&n.current.size>0){let t=Jl(n.current,`scroll`)??Jl(n.current,`drag`)??Jl(n.current,`move`);if(t){e.preventDefault();let n=r===`arrowright`||r===`arrowup`?1:-1;Hl(t,Vl(t.control,t.shortcut),n);return}}let i=n.current.has(r);n.current.add(r);let a=ql(r,Wl(e));if(a&&(t({panelId:a.panelId,path:a.path}),!i&&a.control.type===`toggle`)){let e=G.getValue(a.panelId,a.path);G.updateValue(a.panelId,a.path,!e)}i||s()},u=e=>{if(!o())return;n.current.delete(e.key.toLowerCase()),s();let r=null;for(let t of n.current){let n=ql(t,Wl(e));if(n){r={panelId:n.panelId,path:n.path};break}}t(r)},d=e=>{if(!o()||Ul())return;let t=Wl(e);for(let r of n.current){let n=ql(r,t);if(!(!n||n.control.type!==`slider`||(n.shortcut.interaction??`scroll`)!==`scroll`)){e.preventDefault(),Hl(n,Vl(n.control,n.shortcut),e.deltaY>0?-1:1);return}}let[r]=Yl();r&&(e.preventDefault(),Hl(r,Vl(r.control,r.shortcut),e.deltaY>0?-1:1))},f=e=>{o()&&(Ul()||n.current.size===0||Jl(n.current,`drag`)&&(r.current=!0,i.current=e.clientX,a.current=0,e.preventDefault()))},p=e=>{if(!o()||Ul()||n.current.size===0)return;let t=r.current?`drag`:`move`;if(i.current===null){i.current=e.clientX;return}let s=e.clientX-i.current;i.current=e.clientX,c(s,t)||(a.current=0)},m=()=>{n.current.clear(),s(),t(null)};return window.addEventListener(`keydown`,l),window.addEventListener(`keyup`,u),window.addEventListener(`wheel`,d,{passive:!1}),window.addEventListener(`mousedown`,f),window.addEventListener(`mouseup`,s),window.addEventListener(`mousemove`,p),window.addEventListener(`blur`,m),()=>{Pf.splice(Pf.indexOf(e),1),window.removeEventListener(`keydown`,l),window.removeEventListener(`keyup`,u),window.removeEventListener(`wheel`,d),window.removeEventListener(`mousedown`,f),window.removeEventListener(`mouseup`,s),window.removeEventListener(`mousemove`,p),window.removeEventListener(`blur`,m)}},[]),e}var If=`tunekit-widget`,Lf=`tunekit-layout`,Rf=`tunekit-collapsed`;function zf(e){try{let t=localStorage.getItem(e);return t?JSON.parse(t):null}catch{return null}}function Bf(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}function Vf(){return $(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:[$(`path`,{d:`M3 9h18M3 9V6a2 2 0 0 1 2-2h4l2 5`}),$(`rect`,{x:`3`,y:`4`,width:`18`,height:`16`,rx:`2`})]})}function Hf(){return $(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:[$(`rect`,{x:`3`,y:`3`,width:`18`,height:`7`,rx:`2`}),$(`rect`,{x:`3`,y:`14`,width:`18`,height:`7`,rx:`2`})]})}function Uf(){return $(`svg`,{class:`up-knob-arrow`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,children:[$(`path`,{d:`M3 5h18M3 12h18M3 19h18`,"stroke-width":`1.6`,opacity:`0.25`}),$(`circle`,{class:`up-knob-arrow-k up-knob-arrow-k1`,cx:`9`,cy:`5`,r:`2.6`,fill:`currentColor`,stroke:`none`}),$(`circle`,{class:`up-knob-arrow-k2`,cx:`15`,cy:`12`,r:`2.6`,fill:`currentColor`,stroke:`none`}),$(`circle`,{class:`up-knob-arrow-k up-knob-arrow-k3`,cx:`9`,cy:`19`,r:`2.6`,fill:`currentColor`,stroke:`none`})]})}function Wf({portalContainer:e,childrenSlot:t,defaultLayout:n=`tabs`,hosted:r=!1}){let i=Q(e=>{e&&t&&t.parentNode!==e&&e.appendChild(t)},[t]),a=Z(null),o=Ff(),[s,c]=Y([]),[l,u]=Y({}),[d,f]=Y(null),p=r?null:zf(If),m=r?null:zf(Rf),[h,g]=Y(p?.corner??`bottom-right`),[_,v]=Y(p?.width??320),[y,b]=Y(p?.height??420),[x,S]=Y(m),[C,w]=Y(!1),[T,E]=Y(()=>zf(Lf)??n),[,D]=Y(0);X(()=>{if(r)return;let e=()=>D(e=>e+1);return window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[]);let O=vl(_,y),k=O.width,A=O.height;X(()=>{let e=()=>{let e=G.getPanels();c(e);let t={};for(let n of e)t[n.id]=G.getValues(n.id);u(t)};return e(),G.subscribeGlobal(e)},[]),X(()=>{let e=[];for(let t of s)e.push(G.subscribe(t.id,()=>{u(e=>({...e,[t.id]:G.getValues(t.id)}))}));return()=>e.forEach(e=>e())},[s]),X(()=>{r||Bf(If,{corner:h,width:_,height:y})},[h,_,y]),X(()=>{if(!r)if(x)Bf(Rf,x);else try{localStorage.removeItem(Rf)}catch{}},[x]),X(()=>{Bf(Lf,T)},[T]);let j=yl(h,k,A),M=s.find(e=>e.id===d)??s[0]??null;X(()=>{M&&G.setActiveTab(M.name)},[M?.name]);let N=Q(e=>{if(e.target.closest(`button`))return;e.preventDefault();let t=a.current;if(!t)return;let n=e.clientX,r=e.clientY,i=j.x,o=j.y,s=n,c=r,l=!1,u=null;t.classList.add(`up-shell-dragging`);let d=e=>{u||=(l=!0,s=e.clientX,c=e.clientY,requestAnimationFrame(()=>{let e=i+(s-n),a=o+(c-r);t.style.transform=`translate3d(${e}px, ${a}px, 0)`;let l=e+k,d=a+A,f=Math.max(0,-e),m=Math.max(0,l-window.innerWidth),h=Math.max(0,-a),_=Math.max(0,d-window.innerHeight),v=Math.min(k,f+m),y=Math.min(A,h+_);if(v*A+y*k-v*y>k*A*.35){let t=e+k/2,n=a+A/2,r=window.innerWidth/2,i=window.innerHeight/2,o=t<r?n<i?`top-left`:`bottom-left`:n<i?`top-right`:`bottom-right`,l=Math.max(f,m)>Math.max(h,_)?`horizontal`:`vertical`,u=kl(Sl(o,l),s,c);g(u.corner),w(!0),S({corner:u.corner,orientation:l,anchor:u.anchor}),p()}u=null}))},f=()=>{p(),t.classList.remove(`up-shell-dragging`);let e=Math.sqrt((s-n)**2+(c-r)**2);if(!l||e<60){t.style.transform=`translate3d(${j.x}px, ${j.y}px, 0)`;return}let a=xl(i+(s-n),o+(c-r),k,A),u=yl(a,k,A);t.style.transition=`transform 0.25s cubic-bezier(0, 0, 0.2, 1)`,t.style.transform=`translate3d(${u.x}px, ${u.y}px, 0)`;let d=()=>{t.style.transition=``,t.removeEventListener(`transitionend`,d)};t.addEventListener(`transitionend`,d),g(a)},p=()=>{document.removeEventListener(`pointermove`,d),document.removeEventListener(`pointerup`,f),u&&cancelAnimationFrame(u)};document.addEventListener(`pointermove`,d),document.addEventListener(`pointerup`,f)},[j.x,j.y,k,A]),P=Z(!1),[ee,te]=Y(null),ne=Q(e=>{x&&(S(null),g(e??x.corner))},[x]),re=Q(e=>{if(!x||e.button!==0)return;e.preventDefault();let t=e.currentTarget;P.current=!1;let n=e.clientX,r=e.clientY,i=t.getBoundingClientRect(),a=n-i.left,o=r-i.top,s=n,c=r,l=e=>{t.classList.remove(`up-collapsed-left`,`up-collapsed-right`,`up-collapsed-top`,`up-collapsed-bottom`),t.classList.add(`up-collapsed-${e}`)},u=e=>{if(s=e.clientX,c=e.clientY,!P.current){if(Math.hypot(s-n,c-r)<=4)return;P.current=!0,t.classList.add(`up-collapsed-dragging`)}let u=jl(s,c);t.classList.toggle(`up-collapsed-will-expand`,u);let d=u?null:Al(s,c),f=d?.rect,p=f&&Math.hypot(f.x+f.width/2-s,f.y+f.height/2-c)<90;te(d?`${d.edge}-${d.anchor}`:``),l(p?d.edge:Sl(x.corner,x.orientation)),p?(t.style.left=`${f.x}px`,t.style.top=`${f.y}px`,t.style.width=`${f.width}px`,t.style.height=`${f.height}px`):(t.style.left=`${s-a}px`,t.style.top=`${c-o}px`,t.style.width=`${i.width}px`,t.style.height=`${i.height}px`)},d=()=>{if(document.removeEventListener(`pointermove`,u),document.removeEventListener(`pointerup`,d),!P.current)return;if(t.classList.remove(`up-collapsed-dragging`,`up-collapsed-will-expand`),te(null),jl(s,c)){ne(Ml(s,c));return}let e=Al(s,c);t.style.left=`${e.rect.x}px`,t.style.top=`${e.rect.y}px`,t.style.width=`${e.rect.width}px`,t.style.height=`${e.rect.height}px`,l(e.edge),S({corner:e.corner,orientation:e.orientation,anchor:e.anchor})};document.addEventListener(`pointermove`,u),document.addEventListener(`pointerup`,d)},[x,ne]),ie=Q((e,t)=>{t.preventDefault(),t.stopPropagation();let n=t.clientX,r=t.clientY,i=k,o=A,s=yl(h,k,A),c=a.current;if(!c)return;c.classList.add(`up-shell-dragging`);let l=t=>{let a=t.clientX-n,l=t.clientY-r,u=Nl(e,i,o,s.x,s.y,a,l);v(u.width),b(u.height),c.style.transform=`translate3d(${u.x}px, ${u.y}px, 0)`},u=()=>{c.classList.remove(`up-shell-dragging`),document.removeEventListener(`pointermove`,l),document.removeEventListener(`pointerup`,u)};document.addEventListener(`pointermove`,l),document.addEventListener(`pointerup`,u)},[k,A,h]),ae=(()=>{let[e,t]=h.split(`-`),n=[];return e===`top`?n.push(`bottom`):n.push(`top`),t===`left`?n.push(`right`):n.push(`left`),n.push(`${e===`top`?`bottom`:`top`}-${t===`left`?`right`:`left`}`),n})();if(s.length===0)return null;if(x){let e=El(x.corner,x.orientation,x.anchor),t=Sl(x.corner,x.orientation),n=s.length===1?s[0].name:`tunekit`;return $(wc,{children:[ee!==null&&Dl().map(e=>$(`i`,{class:`up-dock-mark up-dock-mark-${e.edge} ${ee===`${e.edge}-${e.anchor}`?`up-dock-mark-on`:``}`,style:{left:`${e.rect.x}px`,top:`${e.rect.y}px`,width:`${e.rect.width}px`,height:`${e.rect.height}px`}},`${e.edge}-${e.anchor}`)),$(`button`,{type:`button`,class:`up-collapsed up-collapsed-${t} ${C?`up-collapsed-enter`:``}`,onAnimationEnd:()=>w(!1),style:{left:`${e.x}px`,top:`${e.y}px`,width:`${e.width}px`,height:`${e.height}px`},"aria-label":`Open ${n}`,title:`Open ${n}`,onPointerDown:re,onClick:()=>{P.current||ne()},children:$(Uf,{})})]})}let F=T===`stack`&&s.length>1,oe=t=>$(Mf,{panel:t,values:l[t.id]??{},portalContainer:e,activeShortcutPath:o?.panelId===t.id?o.path:null});return $(`div`,{ref:a,class:r?`up-shell up-shell-hosted`:`up-shell`,onWheel:r?void 0:Fl,style:r?void 0:{width:`${k}px`,height:`${A}px`,transform:`translate3d(${j.x}px, ${j.y}px, 0)`},children:[$(`div`,{class:`up-header`,onPointerDown:r?void 0:N,children:[$(`div`,{class:`up-header-left`,children:$(`span`,{class:`up-header-title`,children:s.length===1?M?.name??`tunekit`:`tunekit`})}),s.length>1&&$(`div`,{class:`up-header-actions`,children:$(`button`,{type:`button`,class:`up-header-btn`,"aria-label":F?`Show panels as tabs`:`Show all panels on one page`,title:F?`Tabs`:`Single page`,onClick:()=>E(F?`tabs`:`stack`),children:$(F?Vf:Hf,{})})})]}),!F&&s.length>1&&$(`div`,{class:`up-tabs`,children:s.map(e=>$(`button`,{class:`up-tab ${e.id===M?.id?`up-tab-active`:``}`,onClick:()=>f(e.id),children:e.name},e.id))}),!F&&M&&$(Nf,{panelId:M.id,presets:G.getPresets(M.id),activePresetId:G.getActivePresetId(M.id),portalContainer:e}),$(`div`,{class:`up-content ${F?`up-content-stacked`:``}`,children:[$(`div`,{ref:i}),F?s.map(t=>$(Ll,{title:t.name,variant:`section`,toolbar:$(Nf,{panelId:t.id,presets:G.getPresets(t.id),activePresetId:G.getActivePresetId(t.id),portalContainer:e}),children:oe(t)},t.id)):M&&oe(M)]}),!r&&ae.map(e=>$(`div`,{class:`up-resize up-resize-${e}`,onPointerDown:t=>ie(e,t)},e))]})}var Gf=0,Kf=null,qf=null;function Jf(e={}){return e.host?Yf(Zf(e.host,e)):(Gf++,Kf||=Xf(e),Yf(()=>{Gf--,Gf===0&&Kf&&(Kf(),Kf=null)}))}function Yf(e){let t=!1;return()=>{t||(t=!0,e())}}function Xf(e){let t=document.createElement(`div`);t.id=`tunekit-root`,t.style.cssText=`position:fixed;top:0;left:0;width:0;height:0;overflow:visible;z-index:2147483645;pointer-events:none;`,document.documentElement.appendChild(t),qf=document.createElement(`div`),qf.className=`up-children`;let n=Qf(t,{childrenSlot:qf,layout:e.layout,hosted:!1});return()=>{n(),t.remove(),qf=null}}function Zf(e,t){let n=document.createElement(`div`);n.className=`tunekit-hosted`,n.style.cssText=`display:block;width:100%;`,e.appendChild(n);let r=Qf(n,{childrenSlot:null,layout:t.layout,hosted:!0});return()=>{r(),n.remove()}}function Qf(e,t){let n=e.attachShadow({mode:`open`}),r=document.createElement(`style`);r.textContent=Jc+Yc,n.appendChild(r);let i=document.createElement(`div`);i.className=`up-root`,i.style.cssText=`pointer-events:auto;`,n.appendChild(i);let a=document.createElement(`div`);return a.className=`up-portal`,n.appendChild(a),qc(Sc(Wf,{portalContainer:a,childrenSlot:t.childrenSlot,defaultLayout:t.layout,hosted:t.hosted}),i),()=>qc(null,i)}var $f=`
1881
+ .up-root, .up-portal {
1882
+ --up-bg: var(--panel);
1883
+ --up-surface: var(--row);
1884
+ --up-surface-hover: var(--row-hover);
1885
+ --up-surface-active: var(--fill);
1886
+ --up-border: var(--line);
1887
+ --up-border-hover: var(--fill);
1888
+ --up-text-1: var(--t1);
1889
+ --up-text-2: var(--t2);
1890
+ --up-text-3: var(--t3);
1891
+ --up-text-4: var(--t4);
1892
+ --up-radius: var(--r);
1893
+ --up-row-h: var(--row-h);
1894
+ --up-accent: var(--accent);
1895
+ --dial-surface-subtle: var(--row);
1896
+ --dial-glass-bg: var(--panel);
1897
+ --dial-dropdown-bg: var(--panel);
1898
+ --dial-focus-ring: var(--t4);
1899
+ --dial-shadow: var(--dd-shadow);
1900
+ --dial-shadow-dropdown: var(--dd-shadow);
1901
+ font-family: var(--sans);
1902
+ }
1903
+ .up-shell-hosted { background: transparent; }
1904
+ .up-shell-hosted .up-header, .up-shell-hosted .up-preset-bar { display: none; }
1905
+ .up-shell-hosted .up-content { padding: 0; }
1906
+ .up-panel-section { display: flex; flex-direction: column; gap: 8px; }
1907
+ .up-slider-fill { background: var(--fill) !important; }
1908
+ .up-slider-active .up-slider-fill, .up-slider-dragging .up-slider-fill { background: var(--fill-hover) !important; }
1909
+ .up-slider-handle { background: var(--handle); }
1910
+ .up-select-dropdown, .up-preset-dropdown { background: var(--panel); box-shadow: var(--dd-shadow); }
1911
+ .up-slider-label, .up-slider-value, .up-select-trigger, .up-labeled-row-label,
1912
+ .up-text-label, .up-text-input, .up-seg-btn, .up-select-option, .dialkit-segmented-button,
1913
+ .dialkit-color-label, .dialkit-color-value { font-size: 15px; }
1914
+ .up-slider-label, .up-select-trigger, .up-labeled-row-label, .up-text-label { color: var(--t3); }
1915
+ .up-slider-label, .up-slider-value { padding: 0 4px; }
1916
+ `,ep=(e,t)=>`mockpit:${e}:${t.part??`look`}`,tp=(e,t)=>e.part===null?t:t.slice(e.part.length+1);function np(e){if(typeof e==`string`)return cn(e)?e:{type:`text`,value:e};if(typeof e!=`object`||Array.isArray(e))return e;if(e.type===`image`){let t=e.options??(e.value?[e.value]:[]);return t.length?{type:`select`,options:t,...e.value?{value:e.value}:{}}:{type:`text`,value:e.value??``}}return e.type===`color`&&e.value!==void 0&&!cn(e.value)?{type:`text`,value:e.value}:e}var rp=(e,t)=>JSON.stringify(e)===JSON.stringify(t);function ip(e){let t=D(()=>{let t=e.mock();return t?an(t,e.knobContext().knobs):[]}),n=D(()=>{let n=t(),r=e.selectedPart();return n.find(e=>e.part===r)??(r===null?n[0]??null:{part:r,label:r,paths:[]})}),r=t=>t.paths.some(t=>t in e.knobContext().tuned),i=Je().createElement(`div`);i.className=`tune-pane`;let a=Jf({host:i}),o=Je().createElement(`style`);o.textContent=$f,i.firstElementChild?.shadowRoot?.append(o),E(()=>{let t=e.tuneHost();t&&i.parentNode!==t&&t.append(i)});let s=null,c=null,l=()=>{c?.(),c=null,s&&G.unregisterPanel(s),s=null},u=D(()=>{let t=n(),r=e.mock();if(!t||!r||!t.paths.length)return null;let i=e.knobContext().knobs,a={};for(let e of t.paths)a[tp(t,e)]=np(i[e]);return{id:ep(r.id,t),name:t.label,c:t,out:a,sig:JSON.stringify(a)}}),d=(t,n)=>{let r=tn(e.knobContext()),i=G.getValues(t),a={};for(let e of n.paths){let t=tp(n,e),o=r[e];o!==void 0&&t in i&&!rp(i[t],o)&&(a[t]=o)}Object.keys(a).length&&G.updateValues(t,a)};return E(M(D(()=>{let e=u();return e?`${e.id}\u0000${e.sig}`:``}),()=>{l();let t=j(u);t&&(G.registerPanel(t.id,t.name,t.out),s=t.id,j(()=>d(t.id,t.c)),c=G.subscribe(t.id,()=>{let n=j(e.knobContext),r=tn(n),i=G.getValues(t.id);for(let a of t.c.paths){let o=i[tp(t.c,a)];if(o===void 0||rp(o,r[a]))continue;let s=rn(a,o,n);s.kind===`answer`?e.pick(s.ask,s.option):e.setTuned(s.path,s.value)}}))})),E(()=>{e.knobContext();let t=u();t&&s===t.id&&j(()=>d(t.id,t.c))}),P(()=>{l(),a(),i.remove()}),{components:t,current:n,tunedIn:r}}var ap=B(`<main class=main><div class=col>`),op=B(`<div class="screen mock-screen">`),sp=B(`<a class=home>`),cp=B(`<span class=sep>/`),lp=B(`<b>`),up=B(`<span class=sent-hint role=status>tell your agent you've answered`),dp=B(`<button type=button class="pill count"><i class=dot></i><span>`),fp=B(`<button type=button class="pill reopen"><i class=dot>`),pp=B(`<main class=main><p class=home-empty>`);function mp(e){let t=No(e.project,e.slug),n=ip(t),r=()=>vn(e.project);return(()=>{var i=op();return U(i,I(vr,{get left(){return[(()=>{var t=sp();return t.$$click=e=>Tn(e,r()),U(t,()=>`‹ ${e.project}`),T(()=>V(t,`href`,r())),t})(),cp(),(()=>{var n=lp();return U(n,()=>t.mock()?.title??e.slug),n})()]},get right(){return I(R,{get when(){return t.sent()},get fallback(){return I(R,{get when(){return z(()=>t.mode()!==`questions`)()&&t.owed().length>0},get children(){var e=fp();return e.firstChild,e.$$click=()=>{let e=t.owed()[0],n=t.questions().findIndex(t=>t.kind===`ask`&&t.ask.id===e.id);t.goQuestion(Math.max(0,n))},U(e,()=>`${t.owed().length} open ›`,null),e}})},get children(){return[I(R,{get when(){return t.nudgeAgent()},get children(){return up()}}),(()=>{var e=dp(),n=e.firstChild,r=n.nextSibling;return e.$$click=()=>t.setMode(`thread`),U(r,()=>`Sent · ${t.sentDelivered()===!1?`Not seen yet`:`Delivered`}`),T(r=>{var i=t.sentDelivered()===!1,a=t.sentDelivered()!==!1;return i!==r.e&&e.classList.toggle(`waiting`,r.e=i),a!==r.t&&n.classList.toggle(`ok`,r.t=a),r},{e:void 0,t:void 0}),e})()]}})}}),null),U(i,I(R,{get when(){return!t.missing()},get fallback(){return(()=>{var t=pp(),n=t.firstChild;return U(n,()=>`No mock "${e.slug}" in ${e.project}.`),t})()},get children(){return[(()=>{var e=ap(),n=e.firstChild;return U(n,I(R,{get when(){return t.mock()},get children(){return[I(Co,{s:t}),I(Lo,{s:t})]}})),e})(),I(R,{get when(){return t.mock()},get children(){return I(pa,{s:t,t:n})}})]}}),null),i})()}Fe([`click`]);function hp(){return or(),I(Ae,{get children(){return[I(je,{get when(){return z(()=>Sn().screen===`mock`)()&&Sn()},keyed:!0,children:e=>e.screen===`mock`&&I(mp,{get project(){return e.project},get slug(){return e.slug}})}),I(je,{get when(){return z(()=>Sn().screen===`home`)()&&Sn()},keyed:!0,children:e=>e.screen===`home`&&I(Pr,{get project(){return e.project}})})]}})}Nn(),Pe(()=>I(hp,{}),Je().body);</script>
1917
+ <style rel="stylesheet" crossorigin>:root{--page:#0f0f0f;--panel:#131313;--row:#1f1f1f;--row-hover:#262626;--btn:#232323;--fill:#3a3a3a;--fill-hover:#444;--line:#242424;--t1:#f5f5f5;--t2:#e5e5e5;--t3:#d4d4d4;--t4:#8f8f8f;--t5:#5e5e5e;--r:10px;--row-h:44px;--ease:.15s ease;--accent:#8b7bff;--q:#e8590c;--ok:#4ade80;--pin-ok:#2b9348;--edge:#262626;--shadow:0 12px 40px #0000008c;--dd-shadow:0 12px 32px #0000008c;--handle:#ffffffd9;--hi:#fff;--frame:#1f1f1f;--banner-bg:#2a2312;--banner-line:#4a3c1c;--sans:system-ui, -apple-system, "SF Pro Text", sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--page:#fafafa;--frame:#fff;--panel:#fff;--row:#f2f2f2;--row-hover:#ebebeb;--btn:#f2f2f2;--fill:#e0e0e0;--fill-hover:#d6d6d6;--line:#e6e6e6;--edge:#e6e6e6;--t1:#1a1a1a;--t2:#333;--t3:#1a1a1a;--t4:#73726c;--t5:#a6a49d;--accent:#2563eb;--ok:#2b9348;--handle:#0000008c;--hi:#000;--shadow:0 12px 32px #0000001f, 0 2px 6px #0000000f;--dd-shadow:0 8px 24px #0000001f;--banner-bg:#fff8e6;--banner-line:#f0e0b8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font:15px/1.4 var(--sans);color:var(--t3);background:var(--page);-webkit-font-smoothing:antialiased}[data-theme=light] body{color:#17171a}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,select,textarea{font:inherit}svg{flex:none}a{color:inherit}.grow{flex:1}.screen{grid-template-rows:52px minmax(0,1fr);height:100%;display:grid}.mock-screen{overflow:hidden}.home{overflow:auto}.top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:0 16px;display:flex}.crumb{color:var(--t4);align-items:center;gap:8px;min-width:0;display:flex}.crumb b{color:var(--t1);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.crumb .sep{color:var(--t5)}.crumb .home{color:var(--t4);white-space:nowrap;text-decoration:none}.crumb .home:hover{color:var(--t1)}.right{align-items:center;gap:12px;min-width:0;display:flex}.pill{border-radius:var(--r);background:var(--row);height:34px;color:var(--t3);transition:background var(--ease), color var(--ease);align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}[data-theme=light] .pill{box-shadow:inset 0 0 0 1px var(--line);background:#fff}.reopen:hover,.count:hover{background:var(--row-hover);color:var(--t1)}.sent-hint{color:var(--t4);white-space:nowrap;font-size:13px}.dot{background:var(--q);border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.dot.ok{background:var(--ok)}.themebtn,.bellbtn{border-radius:var(--r);width:34px;height:34px;color:var(--t4);transition:background var(--ease), color var(--ease);justify-content:center;align-items:center;display:flex}.themebtn:hover,.bellbtn:hover{background:var(--row);color:var(--t1)}.themebtn svg,.bellbtn svg{stroke-width:1.7px;width:18px;height:18px}.bellbtn{margin-right:-10px}.bellbtn[data-bell=on]{color:var(--t1)}.bellbtn[data-bell=blocked]{color:var(--t5)}.home-project{color:var(--t1);align-items:center;font-weight:600;display:inline-flex;position:relative}.home-project select{appearance:none;color:inherit;cursor:pointer;background:0 0;border:0;padding:2px 22px 2px 0;font-weight:600}.home-project select option{background:var(--panel);color:var(--t1)}.home-project svg{pointer-events:none;width:16px;height:16px;color:var(--t4);position:absolute;right:0}.home-main{justify-content:center;padding:48px 24px;display:flex}.home-col{width:100%;max-width:760px}.home-lead{color:var(--t4);align-items:center;gap:8px;margin:0 0 16px;font-size:14px;display:flex}.home-next{color:var(--t1);font-weight:500;text-decoration:none}.home-next:hover{text-underline-offset:3px;text-decoration:underline}.home-empty{color:var(--t4)}.home-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.home-row{border-radius:var(--r);background:var(--row);height:72px;transition:background var(--ease), box-shadow var(--ease);grid-template-columns:96px 1fr auto 80px;align-items:center;gap:16px;padding:0 16px 0 4px;text-decoration:none;display:grid}[data-theme=light] .home-row{box-shadow:inset 0 0 0 1px var(--line);background:#fff}.home-row:hover{background:var(--row-hover)}[data-theme=light] .home-row:hover{background:#f2f2f2}.home-thumb{background:var(--frame);border-radius:6px;width:96px;height:64px;position:relative;overflow:hidden}.home-thumb .thumb{width:100%;height:100%}.home-name{color:var(--t1);font-size:15px;font-weight:600}.home-sub{color:var(--t4);font-size:13px}.home-chip{height:26px;color:var(--q);background:color-mix(in srgb, var(--q) 14%, transparent);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:500;display:inline-flex}.home-done{color:var(--ok);padding:0 10px;font-size:15px;font-weight:600}.home-ago{color:var(--t5);text-align:right;font-size:13px}.thumb{pointer-events:none;position:relative;overflow:hidden}.thumb iframe{transform-origin:0 0;pointer-events:none;background:0 0;border:0;position:absolute;top:0;left:0}.main{justify-content:center;align-items:flex-start;min-height:0;padding:24px 416px 24px 24px;display:flex;overflow:hidden}.col{flex-direction:column;align-items:center;gap:16px;display:flex}.stagewrap{position:relative}.stage{border:1px solid var(--line);border-radius:var(--r);background:var(--frame);position:relative;overflow:hidden}[data-theme=light] .stage{border-radius:4px}.stage-head{border-bottom:1px solid var(--line);height:44px;color:var(--t4);white-space:nowrap;align-items:center;gap:10px;padding:0 14px 0 20px;font-size:13px;display:flex}.stage-title{color:var(--t1);text-overflow:ellipsis;font-weight:600;overflow:hidden}.vbtn{border:1px solid var(--line);color:var(--t2);font-size:12px;font-family:var(--mono);transition:background var(--ease);border-radius:5px;padding:2px 7px;display:inline-block}.vbtn:hover,.vbtn[aria-expanded=true]{background:var(--row)}.variant-switch{background:var(--row);border-radius:9px;gap:2px;padding:3px;display:inline-flex}.variant-switch button{height:26px;color:var(--t4);border-radius:6px;padding:0 10px;font-weight:500}.variant-switch button.on{background:var(--fill);color:var(--t1)}.variant-switch button.arch{color:var(--t5);text-decoration:line-through;-webkit-text-decoration-color:var(--t5);text-decoration-color:var(--t5)}.vok{color:var(--ok);margin-left:5px;font-weight:700}.vrestore{color:var(--t3);text-decoration:underline;-webkit-text-decoration-color:var(--t5);text-decoration-color:var(--t5);text-underline-offset:3px;align-self:center;padding:0 6px;font-size:12px}.vrestore:hover{color:var(--t1)}.markbtn{height:26px;color:var(--t4);transition:background var(--ease);border-radius:6px;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:500;display:inline-flex}.markbtn svg{width:14px;height:14px}.markbtn:hover{background:var(--row);color:var(--t2)}.markbtn.on{background:var(--accent);color:#fff}.layers{scrollbar-width:none;position:relative;overflow:hidden auto}.layers::-webkit-scrollbar{display:none}.stage.old .layers{opacity:.82;filter:saturate(.7)}.frame{visibility:hidden;width:100%;position:absolute;top:0;left:0;overflow:hidden}.frame.on{visibility:visible;animation:.15s ease-out both fadein}@keyframes fadein{0%{opacity:0}}.frame-scale{transform-origin:0 0;width:820px}.surface iframe{background:0 0;border:0;display:block}.surface-image{margin:0;padding:16px}.surface-image img{max-width:100%;display:block}.surface-image figcaption{color:var(--t4);margin-top:8px;font-size:13px}.surface-json{font:13px/1.6 var(--mono);color:var(--t3);padding:16px}.surface-gone{color:var(--t5);padding:16px;font-size:13px}.json-node{padding-left:14px}.json-node>summary{cursor:pointer;color:var(--t4);margin-left:-14px}.json-leaf{padding-left:14px}.json-key{color:var(--t4)}.json-string{color:var(--ok)}.json-number,.json-boolean{color:var(--accent)}.json-null{color:var(--t5)}.overlay{cursor:pointer;width:100%;position:absolute;left:0;overflow:hidden}.spot{pointer-events:none;border-radius:6px;transition:all .15s ease-out;position:absolute;box-shadow:0 0 0 4000px #fafafa73}.box{border:1.5px solid var(--accent);pointer-events:none;border-radius:4px;position:absolute}.box.hov{border-color:#0000}.box.hov .lbl{opacity:.8}.box .lbl{font:500 12px/1 var(--sans);color:#fff;background:var(--accent);white-space:nowrap;border-radius:6px 6px 0 0;padding:4px 7px;position:absolute;top:-1.5px;left:-1.5px;transform:translateY(-100%)}.box.edge .lbl{border-radius:0 0 6px 6px;top:auto;bottom:-1.5px;transform:translateY(100%)}.pins{pointer-events:none;position:absolute;inset:0}.pin{background:var(--q);color:#fff;width:22px;height:22px;font:600 12px/22px var(--sans);text-align:center;pointer-events:auto;box-shadow:0 0 0 2px var(--page), 0 1px 4px #0006;z-index:3;border-radius:50%;position:absolute}.pin.ok{background:var(--pin-ok)}.pin.mark{background:var(--accent)}.pin.mark.moved{background:var(--t5);outline:1.5px dashed var(--accent);outline-offset:2px}.pin.mark.pending{opacity:.85}.overlay.marking{cursor:crosshair}.markfield{z-index:4;background:var(--panel);border:1px solid var(--edge);box-shadow:var(--dd-shadow);cursor:default;border-radius:12px;flex-direction:column;gap:6px;padding:8px 10px 10px;animation:.15s cubic-bezier(0,0,.2,1) up-dropdown-in;display:flex;position:absolute}.markfield-hd{color:var(--t4);font-size:12px}.markfield .up-text-input{background:var(--row);text-align:left;border-radius:8px;height:32px;padding:0 10px;font-size:14px}.pin.ovr{background:#8a8a8a;text-decoration:line-through}.pin.cur{box-shadow:0 0 0 2px var(--page), 0 0 0 4px var(--q)}.pin.ok.cur{box-shadow:0 0 0 2px var(--page), 0 0 0 4px var(--pin-ok)}.pin.ovr.cur{box-shadow:0 0 0 2px var(--page), 0 0 0 4px #8a8a8a}[data-theme=light] .pin{box-shadow:0 0 0 2px #fff,0 1px 4px #0003}[data-theme=light] .pin.cur{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--q)}[data-theme=light] .pin.ok.cur{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--pin-ok)}.banner{background:var(--banner-bg);border-bottom:1px solid var(--banner-line);height:32px;color:var(--t4);white-space:nowrap;align-items:center;gap:8px;padding:0 16px;font-size:13px;display:flex}.banner b{color:var(--t1);font-weight:600}.banner .sep{color:var(--t5)}.banner button{color:var(--t1);text-decoration:underline;-webkit-text-decoration-color:var(--t5);text-decoration-color:var(--t5);text-underline-offset:3px}.banner-note{color:var(--t5);text-overflow:ellipsis;margin-left:auto;overflow:hidden}.vpop{z-index:5;background:var(--panel);border:1px solid var(--edge);width:336px;box-shadow:var(--dd-shadow);border-radius:12px;flex-direction:column;gap:2px;padding:4px;animation:.15s cubic-bezier(0,0,.2,1) up-dropdown-in;display:flex;position:absolute}.vrow{text-align:left;border-radius:8px;align-items:baseline;gap:10px;padding:10px;font-size:14px;display:flex}.vrow:hover,.vrow.on{background:var(--row)}.vrow .vv{width:24px;color:var(--t2);font-family:var(--mono);flex:none;font-size:13px}.vrow .vmeta{min-width:0;color:var(--t4);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.vrow.cur .vv,.vrow.cur .vmeta{color:var(--t1);font-weight:600}.vrow .vby{color:var(--t5);flex:none;font-size:12px}.stripwrap{align-items:center;gap:12px;display:flex}.cap{color:var(--t4);font-size:13px;line-height:16px}.strip{background:var(--row);border-radius:12px;gap:2px;padding:4px;display:inline-flex}[data-theme=light] .strip{box-shadow:inset 0 0 0 1px var(--line);background:#fff}.strip>button{height:32px;color:var(--t4);transition:color var(--ease), background var(--ease);border-radius:8px;padding:0 14px;font-size:14px;font-weight:500}.strip>button:hover{color:var(--t2)}.strip>button.on{background:var(--fill);color:var(--t1)}[data-theme=light] .strip>button.on{background:#f0f0f0}.up-shell{z-index:50;background:var(--panel);border:1px solid var(--edge);width:380px;box-shadow:var(--shadow);border-radius:16px;flex-direction:column;max-height:calc(100vh - 76px);display:flex;position:fixed;top:64px;right:12px;overflow:hidden}.up-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 12px 10px 16px;display:flex}.up-header-title{color:var(--t1);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600;overflow:hidden}.up-header-right{align-items:center;gap:8px;display:flex}.up-header-btn{width:30px;height:30px;color:var(--t3);border-radius:8px;justify-content:center;align-items:center;display:flex}.up-header-btn svg{stroke-width:1.7px;width:19px;height:19px}.tcount{color:var(--t5);white-space:nowrap;font-size:13px}.tcount.on{color:var(--t4)}.up-preset-bar{flex-shrink:0;align-items:center;gap:8px;padding:0 16px 12px;display:flex}.up-preset-trigger,.up-preset-add,.up-copy-btn{border-radius:var(--r);background:var(--btn);height:40px;color:var(--t3);transition:background var(--ease), color var(--ease);flex-shrink:0;align-items:center;font-size:15px;font-weight:500;display:flex}.up-preset-trigger{flex:1;justify-content:space-between;padding:0 12px 0 16px}.up-preset-add{justify-content:center;width:40px}.up-copy-btn{gap:8px;padding:0 16px 0 14px}.up-preset-trigger:hover,.up-preset-add:hover,.up-copy-btn:hover{background:var(--row-hover);color:var(--t1)}.up-copy-btn[data-copied]{color:var(--ok)}.up-preset-add svg,.up-copy-btn svg{stroke-width:1.7px;width:18px;height:18px}.up-tabs-wrap{border-bottom:1px solid var(--line);flex-shrink:0}.up-tabs{flex-direction:column;gap:8px;padding:0 16px 12px;display:flex}.up-modes{background:var(--row);border-radius:12px;gap:2px;padding:4px;display:flex}.up-mode{height:32px;color:var(--t4);transition:color var(--ease), background var(--ease);border-radius:8px;flex:1;justify-content:center;align-items:center;gap:7px;font-size:14px;font-weight:500;display:inline-flex}.up-mode:hover{color:var(--t2)}.up-mode-active,.up-mode-active:hover{color:var(--t1);background:var(--fill)}.up-mode .n{color:var(--t5);font-size:12px;font-weight:400}.up-comp-row{align-items:center;gap:6px;display:flex}.up-comp-wrap{flex:1;min-width:0;position:relative}.up-comp-row .nav{width:36px;height:var(--row-h);line-height:var(--row-h);border-radius:var(--r);flex:none}.up-comp-opt{align-items:center;gap:8px;display:inline-flex}.up-comp-sub{color:var(--t5);font-size:13px}.up-content{overscroll-behavior:contain;scrollbar-width:none;flex-direction:column;flex:1;gap:8px;padding:16px;display:flex;overflow:hidden auto}.up-content::-webkit-scrollbar{display:none}.up-group{flex-direction:column;gap:8px;display:flex}.up-group-hd{height:24px;color:var(--t3);text-align:left;justify-content:space-between;align-items:center;margin-top:0;padding:0 2px 0 4px;font-size:15px;font-weight:600;display:flex}.up-group-hd:hover{color:var(--t1)}.up-group-hd svg{width:18px;height:18px;color:var(--t4);transition:transform .2s cubic-bezier(0,0,.2,1)}.up-group-shut svg{transform:rotate(-90deg)}.up-rule{background:var(--line);border:0;flex:none;width:100%;height:1px;margin:8px 0}.up-slider-wrap{height:var(--row-h);flex:none;position:relative}.up-slider{cursor:ew-resize;-webkit-user-select:none;user-select:none;background:var(--row);border-radius:var(--r);touch-action:none;outline:none;position:absolute;inset:0;overflow:hidden}.up-slider:focus-visible{box-shadow:inset 0 0 0 1.5px var(--t4)}.up-slider-fill{pointer-events:none;background:var(--fill);transition:background .15s;position:absolute;top:0;bottom:0;left:0}.up-slider:hover .up-slider-fill,.up-slider-dragging .up-slider-fill{background:var(--fill-hover)}.up-slider-handle{background:var(--handle);pointer-events:none;opacity:0;border-radius:999px;width:3px;height:22px;transition:opacity .15s;position:absolute;top:50%;transform:translateY(-50%)}.up-slider-dragging .up-slider-handle{opacity:.8}.up-slider-label{color:var(--t3);pointer-events:none;font-size:15px;font-weight:500;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.up-slider-value{font:15px var(--mono);color:var(--t2);pointer-events:none;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.up-labeled-row,.up-select-trigger,.up-text-row,.up-color-row{width:100%;height:var(--row-h);background:var(--row);border-radius:var(--r);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:0 16px;display:flex}.up-labeled-row-label,.up-select-label,.up-color-label,.up-text-label{color:var(--t3);flex-shrink:0;font-size:15px;font-weight:500}.up-switch{background:var(--fill);width:38px;height:22px;transition:background var(--ease);border-radius:999px;position:relative}.up-switch-knob{background:var(--t4);width:16px;height:16px;transition:transform .2s cubic-bezier(.3, 1.3, .5, 1), background var(--ease);border-radius:50%;position:absolute;top:3px;left:3px}.up-switch-on{background:var(--t2)}.up-switch-on .up-switch-knob{background:var(--panel);transform:translate(16px)}.up-seg-row{padding-right:4px}.up-seg{border-radius:8px;flex-shrink:0;height:36px;padding:0;display:flex}.up-seg-btn{color:var(--t4);border-radius:8px;padding:0 14px;font-size:15px;font-weight:500;transition:color .15s,background .15s}.up-seg-btn:hover{color:var(--t2)}.up-seg-btn-active,.up-seg-btn-active:hover{color:var(--t1);background:var(--fill)}.up-select-trigger{transition:background var(--ease);padding-right:12px}.up-select-trigger:hover,.up-select-trigger-open{background:var(--row-hover)}.up-select-right{align-items:center;gap:8px;display:flex}.up-select-current{align-items:baseline;gap:6px;display:flex}.up-select-value{color:var(--t2);white-space:nowrap;font-size:15px;font-weight:500}.up-select-chevron{width:18px;height:18px;color:var(--t4);stroke-width:1.8px;transition:transform .2s cubic-bezier(0,0,.2,1)}.up-select-chevron-open{transform:rotate(180deg)}.up-select-dropdown{z-index:60;background:var(--row);border:1px solid var(--edge);box-shadow:var(--dd-shadow);border-radius:12px;flex-direction:column;gap:2px;padding:4px;animation:.15s cubic-bezier(0,0,.2,1) up-dropdown-in;display:flex;position:fixed}@keyframes up-dropdown-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}}.up-select-option{width:100%;height:38px;color:var(--t3);text-align:left;transition:background var(--ease);border-radius:8px;justify-content:space-between;align-items:center;padding:0 12px;font-size:15px;font-weight:500;display:flex}.up-select-option:hover{background:var(--fill);color:var(--t1)}.up-select-option-selected{color:var(--t1)}.up-select-check{background:var(--t2);border-radius:50%;width:6px;height:6px}.up-text-row{cursor:text}.up-text-input{min-width:0;color:var(--t2);text-align:right;background:0 0;border:none;outline:none;flex:1;padding:0;font-size:15px;font-weight:500}.up-text-input::placeholder{color:var(--t5)}.up-color{flex-direction:column;flex:none;display:flex}.up-color-row{border-radius:var(--r) var(--r) 0 0}.up-color-inputs{align-items:center;gap:10px;display:flex}.up-color-hex-input{width:7.5ch;font:15px var(--mono);color:var(--t2);text-transform:uppercase;text-align:right;background:0 0;border:none;outline:none;padding:0}.up-color-swatch{border-radius:6px;flex-shrink:0;width:22px;height:22px;box-shadow:inset 0 0 0 1px #ffffff14}.up-cp-dots{background:var(--row);border-radius:0 0 var(--r) var(--r);gap:10px;padding:2px 16px 12px;display:flex}.up-cp-dot{background:var(--c);border-radius:50%;width:24px;height:24px;transition:transform .12s,box-shadow .12s}.up-cp-dot:hover{transform:scale(1.12)}.up-cp-dot-on{box-shadow:inset 0 0 0 2px var(--c), inset 0 0 0 4px var(--row)}.up-note{color:var(--t4);padding:6px 16px 0;font-size:13px}.qhd{color:var(--t4);align-items:center;gap:6px;font-size:14px;font-weight:500;display:flex}.qhd .grow{flex:1}.qhd .picked{color:var(--ok)}.qhd .picked.ovr{color:var(--t4);text-decoration:line-through}.ovrline{color:var(--t4);margin:-4px 0 10px;font-size:13px}.ovrline .lnk{font-size:13px}.nav{background:var(--row);width:32px;height:32px;color:var(--t3);border-radius:8px;font-size:18px;line-height:30px}.nav:hover{background:var(--row-hover);color:var(--t1)}.nav:disabled{color:var(--t5);cursor:default;background:var(--row);opacity:.6}.nm{color:var(--t1);margin:4px 0 0;font-size:17px;font-weight:600;line-height:22px}.ask{color:var(--t4);margin-bottom:8px}.opts{grid-template-columns:1fr 1fr;gap:8px;display:grid}.opt{text-align:left;background:var(--row);transition:background var(--ease), box-shadow var(--ease);border-radius:14px;flex-direction:column;gap:8px;padding:5px 5px 10px;display:flex;position:relative;box-shadow:inset 0 0 0 1.5px #0000}.opt:hover{background:var(--row-hover)}.opt.on{box-shadow:inset 0 0 0 1.5px var(--t2)}.opt .lbl{color:var(--t3);padding:0 8px;font-weight:500}.opt .tick{background:var(--t1);width:22px;height:22px;color:var(--panel);font:700 12px/22px var(--sans);text-align:center;border-radius:50%;position:absolute;top:12px;right:12px}.crop{border-radius:var(--r);position:relative;overflow:hidden}.crop>.wr{transform-origin:0 0;pointer-events:none;position:absolute;top:0;left:0}.primary{border-radius:var(--r);background:var(--t2);height:44px;color:var(--panel);flex:none;margin-top:8px;font-weight:600}.primary:hover{background:var(--hi)}.primary:disabled{background:var(--row);color:var(--t4);cursor:default}.usage{color:var(--t4);margin:0 0 4px;padding:0 4px;font-size:14px}.lnk{color:var(--t2);text-decoration:underline;-webkit-text-decoration-color:var(--t5);text-decoration-color:var(--t5);text-underline-offset:3px}.lnk:hover{-webkit-text-decoration-color:var(--t2);text-decoration-color:var(--t2)}.clines{flex-direction:column;gap:4px;padding:2px 4px 0;display:flex}.cline{color:var(--t3);font-size:14px}.cline:before{content:"“ ";color:var(--accent);font-weight:700}.cwhere{color:var(--t5);font-size:12px}.trow .clines{padding:2px 0 0}.trow .cline:before{content:none}.tcomment{margin-top:4px}.opt-arch{display:flex;position:relative}.opt-arch>.opt{opacity:.5;flex:1}.opt-arch>.vrestore{position:absolute;bottom:9px;right:10px}.thread{flex-direction:column;gap:16px;padding:4px 4px 0;display:flex}.trow{flex-direction:column;gap:4px;font-size:14px;display:flex}.trow.you{background:var(--row);border-radius:var(--r);align-self:flex-end;max-width:92%;padding:10px 12px}.tmeta{color:var(--t5);font-size:12px}.ttext{color:var(--t3)}.trow.muted .ttext{color:var(--t4)}.tquote{color:var(--t2);border-left:2px solid var(--fill);padding-left:10px}.tdelivered{color:var(--t5);align-self:flex-end;align-items:center;gap:4px;font-size:12px;display:flex}.tdelivered .tick{letter-spacing:-.2em;color:var(--ok);margin-right:2px}.sentline{color:var(--ok);margin-top:8px;font-size:13px}.tdelivered.ok .tick{color:var(--ok)}.tdelivered:not(.ok) .tick{color:var(--t5)}.tempty{color:var(--t5);font-size:14px}[data-theme=light] .opt.on{box-shadow:inset 0 0 0 1.5px var(--t1)}.opt .crop{aspect-ratio:4/3;border-radius:var(--r);background:var(--frame);width:100%}.opts:has(.opt.pill:not(.other)){flex-wrap:wrap;display:flex}.opt.pill{border-radius:999px;flex-direction:row;align-items:center;padding:10px 14px}.opts>.opt.other{grid-column:1/-1;justify-self:start}.opt.pill .lbl{padding:0}.opt.pill .tick{width:18px;height:18px;font-size:11px;line-height:18px;position:static}.opt.previewing{box-shadow:inset 0 0 0 1.5px var(--t4)}.qhd .flag{color:var(--q)}.qerr{color:var(--q);font-size:13px}.decide{gap:8px;display:flex}.decide>button{flex:1}.secondary{border-radius:var(--r);background:var(--row);height:44px;color:var(--t2);margin-top:8px;font-weight:600}.secondary:hover{background:var(--row-hover)}.up-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0}.tune-pane{display:block}.up-preset-wrap{flex:1;min-width:0;display:flex;position:relative}.up-preset-wrap .up-preset-trigger{flex:1;min-width:0}.up-preset-wrap .up-select-dropdown{z-index:5}.up-comp-opt .dot{margin-left:2px}.sheet-handle{display:none}@media (max-width:899px){.main{padding:12px 12px 108px}.col{max-width:100%}.stripwrap{max-width:calc(100vw - 24px)}.stripwrap .cap{display:none}.strip{scrollbar-width:none;overscroll-behavior-x:contain;max-width:100%;display:flex;overflow-x:auto}.strip::-webkit-scrollbar{display:none}.strip>button{white-space:nowrap;flex:none}.up-shell.sheet{width:auto;max-height:62vh;padding-bottom:env(safe-area-inset-bottom);border-bottom:0;border-radius:16px 16px 0 0;inset:auto 0 0}.up-shell.sheet .up-header,.up-shell.sheet .up-preset-bar,.up-shell.sheet:not(.open) .up-content{display:none}.up-shell.sheet:not(.open) .up-tabs-wrap{border-bottom:0}.sheet-handle{touch-action:none;flex:none;justify-content:center;align-items:center;width:100%;height:22px;display:flex}.sheet-handle i{background:var(--fill);border-radius:2px;width:36px;height:4px}.opts{scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:2px;display:flex;overflow-x:auto}.opts::-webkit-scrollbar{display:none}.opt:not(.pill){scroll-snap-align:start;flex:0 0 min(46%,200px)}}html.theming body,html.theming :not(iframe){transition:background-color .15s,color .15s,border-color .15s,box-shadow .15s!important}@media (prefers-reduced-motion:reduce){html.theming body,html.theming *{transition:none!important}}.asktext{background:var(--row);border-radius:var(--r);cursor:text;flex-direction:column;gap:4px;margin-top:8px;padding:8px 12px;display:flex}.asktext .up-text-label{font-size:13px}.asktext textarea{resize:vertical;width:100%;min-height:40px;color:var(--t2);background:0 0;border:none;outline:none;padding:0;font-size:15px}.asktext textarea::placeholder{color:var(--t5)}.addnote{color:var(--t4);align-self:flex-start;margin-top:8px;font-size:13px}.tnotes{flex-direction:column;gap:4px;padding:2px 0 0;display:flex}.tnote{color:var(--t3);font-size:14px}.tnote .cwhere{display:block}
1918
+ /*$vite$:1*/</style>
1919
+ </head>
1920
+ <body>
1921
+ </body>
1922
+ </html>