jealer-jui 0.1.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.
- package/README.md +14 -0
- package/dist/jui.esm.js +1 -0
- package/dist/jui.min.css +1 -0
- package/dist/jui.module.js +1 -0
- package/dist/jui.umd.js +1 -0
- package/package.json +42 -0
package/README.md
ADDED
package/dist/jui.esm.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var t=Object.defineProperty,e=(e,i,s)=>((e,i,s)=>i in e?t(e,i,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[i]=s)(e,"symbol"!=typeof i?i+"":i,s);const i=/* @__PURE__ */new Map,s=/* @__PURE__ */new Map;let n={},o=null;const r=/* @__PURE__ */new WeakMap,a=/* @__PURE__ */new WeakMap;function h(t,e){let i=r.get(t);i||(i=/* @__PURE__ */new Map,r.set(t,i));let s=i.get(e);s||(s=/* @__PURE__ */new Set,i.set(e,s)),o&&(s.add(o),o.deps.push(s))}function l(t,e){const i=r.get(t);if(!i)return;const s=i.get(e);if(s){const t=new Set(s);for(const e of t)e.scheduler?e.scheduler():e()}}function c(t,e={}){const i=(...e)=>{if(o!==i){!function(t){for(const e of t.deps)e.delete(t);t.deps.length=0}(i),o=i;try{return t(...e)}finally{o=null}}};return i.deps=[],i.scheduler=e.scheduler,e.lazy||i(),i}const d=t=>null===t?"null":t instanceof HTMLElement?"HTMLElement":Array.isArray(t)?"array":typeof t,u=t=>"function"==typeof t&&null!==t.prototype&&t.prototype.constructor===t,m=(t,e,i,s=[])=>{const n=Array.isArray(i)?i:[i],o=Array.isArray(s)?s:s?[s]:[],r=d(e);if(!n.some(t=>t===r)){const e=n.join(", ");throw new Error(`Validator: ${t} expects ${e}, but got ${r}.`)}for(const a of o){let i,s;if("function"==typeof a)i=a,s="does not satisfy the required condition.";else{if(!a||"function"!=typeof a.test)throw new Error("Validator: Condition must be a function or { test, message }.");i=a.test,s=a.message||"condition failed."}if(!i(e))throw new Error(`Validator: ${t} ${s}`)}};function f(t){if(i.has(t)){const{instance:s}=i.get(t);if("function"==typeof s.destroy)try{s.destroy()}catch(e){throw new Error(`release(): destroy() failed on instance with key "${t}".`)}i.delete(t)}s.has(t)&&(clearTimeout(s.get(t)),s.delete(t))}const p={instances:/* @__PURE__ */new Map,get(t,e){return this.instances.has(t)||this.instances.set(t,e()),this.instances.get(t)},destroy(t){if(this.instances.has(t)){const e=this.instances.get(t);e.destroy&&e.destroy(),this.instances.delete(t)}},destroyAll(){for(const t of this.instances.values())t.destroy&&t.destroy();this.instances.clear()}};function b(){const t=document.documentElement.getAttribute("lang");if(t){switch(t.substring(0,2).toLowerCase()){case"en":default:return"en";case"zh":return"zh"}}return w()}function w(){return"undefined"==typeof navigator||navigator.language.toLowerCase().startsWith("en")?"en":"zh"}function v(t,e=n,i=null){var s;return null===i&&(i=b()),(null==(s=e[i])?void 0:s[t])||t}function g(t=8){if(!Number.isInteger(t)||t<1||t>32)throw new Error("Length must be an integer between 1 and 32");const e=new Uint8Array(t);crypto.getRandomValues(e);let i="";for(let s=0;s<t;s++)i+="abcdefghijkmnpqrstuvwxyz23456789"[31&e[s]];return i}function y(t){const e=`; ${document.cookie}`.split(`; ${t}=`);return 2===e.length?e.pop().split(";").shift():null}function x(t){let e=null;try{e=document.createElement("textarea"),e.value=t,e.setAttribute("readonly",""),e.style.position="absolute",e.style.left="-9999px",e.style.opacity="0",document.body.appendChild(e),e.select(),e.setSelectionRange(0,t.length);return!!document.execCommand("copy")}catch(i){return!1}finally{e&&e.parentNode&&e.parentNode.removeChild(e)}}function $(t,e,i,s){if(!t)throw new Error("on(): element is required");t.addEventListener(e,i,s)}function _(t,e,i,s){if(!t)throw new Error("off(): element is required");t.removeEventListener(e,i,s)}function k(t,e=document){return e.querySelector(t)}function C(t){return t instanceof Element?t:"string"==typeof t?k(t):null}function E(t,e={}){if("undefined"==typeof document)throw new Error("newEl() can only be used in browser environment.");if(!1===e.dependency||"function"==typeof e.dependency&&!e.dependency())return"";const{is:i,className:s,id:n,attrs:o,style:r,events:a,text:h,html:l,children:c}=e,d=i?document.createElement(t,{is:i}):document.createElement(t);if(s&&(d.className=s),n&&(d.id=n),o&&"object"==typeof o)for(const[u,m]of Object.entries(o))null!=m&&d.setAttribute(u,String(m));if(r&&"object"==typeof r)for(const[u,m]of Object.entries(r))null!=m&&(d.style[u]=m);if(a&&"object"==typeof a)for(const[u,m]of Object.entries(a))"function"==typeof m&&$(d,u,m);return void 0!==c?Array.isArray(c)?d.append(...c):"string"==typeof c?d.innerHTML=c:c instanceof Node&&d.appendChild(c):void 0!==l?d.innerHTML=l:void 0!==h&&(d.textContent=h),d}const j="undefined"!=typeof window?`${window.location.origin}/wp-json/`:"";const S=/* @__PURE__ */Object.freeze(/* @__PURE__ */Object.defineProperty({__proto__:null,computed:function(t){let e,i=!0;const s={i:!0,get value(){return h(s,"value"),i&&(e=t(),i=!1),e}};return c(()=>{t()},{scheduler:()=>{i||(i=!0,l(s,"value"))}}),s},copy:async function(t){return"undefined"==typeof window||"undefined"==typeof document?Promise.resolve(!1):("string"!=typeof t&&(t=String(t)),navigator.clipboard&&"function"==typeof navigator.clipboard.writeText?navigator.clipboard.writeText(t).then(()=>!0).catch(()=>x(t)):Promise.resolve(x(t)))},destroyAll:function(){for(const{instance:e}of i.values())if("function"==typeof e.destroy)try{e.destroy()}catch(t){}i.clear();for(const e of s.values())clearTimeout(e);s.clear()},effect:c,escapeHtml:function(t){const e={"&":"&","<":"<",">":">",'"':""","'":"'"};return String(t).replace(/[&<>"']/g,t=>e[t])},getCookie:y,getEl:C,getLang:w,getLanguages:function(){return n},getLocale:b,getType:d,isClass:t=>"function"==typeof t&&/^class\s/.test(Function.prototype.toString.call(t)),isFunction:u,isMobile:function(){if("undefined"==typeof navigator)return!1;if(navigator.userAgentData)return navigator.userAgentData.mobile;const t=navigator.userAgent;return/android|iphone|ipad|ipod|blackberry|iemobile|opera mini|mobile/i.test(t)},log:function(t="info",...e){"undefined"!=typeof window&&console[t](...e)},manager:p,newEl:E,off:_,on:$,postJson:async function(t,e){return(await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})).json()},q:k,randomId:g,reactive:function t(e){if("object"!=typeof e||null===e)return e;if(a.has(e))return a.get(e);const i=new Proxy(e,{get(e,i,s){const n=Reflect.get(e,i,s);return h(e,i),"object"==typeof n&&null!==n?t(n):n},set(t,e,i,s){const n=t[e],o=Reflect.set(t,e,i,s);return n!==i&&l(t,e),o}});return a.set(e,i),i},ref:function(t){const e={o:t,get value(){return h(e,"value"),this.o},set value(t){t!==this.o&&(this.o=t,l(e,"value"))}};return e},release:f,removeCookie:function(t){return document.cookie=`${t}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`,!y(t)},restUrl:j,setCookie:function(t,e,i=86400){const s=new Date(Date.now()+1e3*i).toUTCString();return document.cookie=[`${t}=${e}`,`expires=${s}`,"path=/","sameSite=strict"].join("; "),y(t)===e},setLanguages:function(t){n=t},singleton:(t,e=[],n="",o=!1,r=null)=>{if(!u(t))throw new Error("First argument expects a class/constructor function.");if(!Array.isArray(e))throw new Error("Second argument must be an array of arguments.");if("string"!=typeof n)throw new Error("Third argument expects a string.");if("boolean"!=typeof o)throw new Error("Fourth argument expects a boolean.");if("number"!=typeof r&&null!==r)throw new Error("Fifth argument expects a number or null.");const a=""===n.trim()?g():n;if(i.has(a)&&!o)return i.get(a).proxy;const h=new t(...e),l=new Proxy(h,{get:(t,e,i)=>(r&&function(t,e){s.has(t)&&clearTimeout(s.get(t));const i=setTimeout(()=>{f(t)},e);s.set(t,i)}(a,r),Reflect.get(t,e,i)),set:(t,e,i,s)=>Reflect.set(t,e,i,s)});return i.set(a,{instance:h,proxy:l}),l},t:v,track:h,trigger:l,uuid:function(){if("function"==typeof crypto.randomUUID)return crypto.randomUUID();const t=new Uint8Array(16);if("function"!=typeof crypto.getRandomValues)throw new Error("Your browser is too old to support secure login.");crypto.getRandomValues(t),t[6]=15&t[6]|64,t[8]=63&t[8]|128;const e=Array.from(t).map(t=>t.toString(16).padStart(2,"0")).join("");return[e.slice(0,8),e.slice(8,12),e.slice(12,16),e.slice(16,20),e.slice(20,32)].join("-")},validate:m},Symbol.toStringTag,{value:"Module"})),T=class t{constructor(){this.bindings=/* @__PURE__ */new Map,this.instances=/* @__PURE__ */new Map,this.serviceData=/* @__PURE__ */new Map}static run(){return t.h||(t.h=new t),t.h}bind(t,e,i={}){var s,n,o;if("function"==typeof e){return/^[A-Z]/.test(e.name)||e.prototype&&Object.getOwnPropertyNames(e.prototype).length>1?this.bindClass(t,e,null!=(s=i.singleton)&&s,null!=(n=i.deps)?n:[]):this.bindFactory(t,e,null!=(o=i.singleton)&&o)}return this.bindValue(t,e)}bindClass(t,e,i=!1,s=[]){if("function"!=typeof e)throw new TypeError("bindClass expects a constructor, got "+typeof e);return this.bindings.set(t,{type:"class",Class:e,singleton:i,deps:Array.isArray(s)?s:[]}),this}bindValue(t,e){return this.bindings.set(t,{type:"value",value:e}),this.instances.set(t,e),this}bindFactory(t,e,i=!1){if("function"!=typeof e)throw new TypeError("bindFactory expects a function, got "+typeof e);return this.bindings.set(t,{type:"factory",factory:e,singleton:i}),this}get(t,...e){const i=this.bindings.get(t);if(!i)throw new Error(`Service "${t}" is not bound in the container.`);if("value"===i.type)return i.value;if("factory"===i.type){const s=i.singleton&&0===e.length;if(s&&this.instances.has(t))return this.instances.get(t);const n=i.factory(this,...e);return s&&this.instances.set(t,n),n}if("class"===i.type){const s=i.singleton&&0===e.length;if(s&&this.instances.has(t))return this.instances.get(t);const n=[];for(const e of i.deps){if(!this.bindings.has(e))throw new Error(`Dependency "${e}" required by "${t}" is not bound in the container.`);n.push(this.get(e))}const o=[...n,...e],r=new i.Class(...o);return s&&this.instances.set(t,r),r}throw new Error(`Unknown binding type for service "${t}".`)}has(t){return this.bindings.has(t)}reset(){this.bindings.clear(),this.instances.clear()}setData(t,e,i){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);this.serviceData.get(t).set(e,i)}getData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);return this.serviceData.get(t).get(e)}hasData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);return this.serviceData.get(t).has(e)}removeData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);this.serviceData.get(t).delete(e)}};e(T,"_instance",null),e(T,"PARAM",/* @__PURE__ */Symbol("PARAM"));let M=T;class A{constructor(){this.options={}}setOptions(t){this.options={...this.options,...t}}setItem(t,e,i){let s=`${encodeURIComponent(t)}=${encodeURIComponent(e)}`;if(i){const t=/* @__PURE__ */new Date;t.setTime(t.getTime()+1e3*i),s+=`; expires=${t.toUTCString()}`}for(const[n,o]of Object.entries(this.options))!0===o?s+=`; ${n}`:!1!==o&&null!=o&&(s+=`; ${n}=${o}`);document.cookie=s}getItem(t){const e=document.cookie.split(";");for(const i of e){const[e,s]=i.trim().split("=");if(e===encodeURIComponent(t))return decodeURIComponent(s)}return null}removeItem(t){this.setItem(t,"",-1)}clear(){const t=document.cookie.split(";");for(const e of t){const t=e.split("=")[0].trim();this.removeItem(decodeURIComponent(t))}}hasItem(t){return null!==this.getItem(t)}}class N{setItem(t,e){localStorage.setItem(t,JSON.stringify(e))}getItem(t){const e=localStorage.getItem(t);try{return JSON.parse(e)}catch(i){return e}}removeItem(t){localStorage.removeItem(t)}clear(){localStorage.clear()}hasItem(t){return null!==localStorage.getItem(t)}}class L{constructor(){this.options={dbName:"StoreDB",version:1,storeName:"data"},this.db=null,this.l()}setOptions(t){this.options={...this.options,...t},this.db&&(this.db.close(),this.l())}l(){const{dbName:t,version:e,storeName:i}=this.options,s=indexedDB.open(t,e);s.onupgradeneeded=t=>{this.db=t.target.result,this.db.objectStoreNames.contains(i)||this.db.createObjectStore(i,{keyPath:"key"})},s.onsuccess=t=>{this.db=t.target.result},s.onerror=t=>{console.error("Failed to open IndexedDB:",t.target.error)}}u(t,e){if(!this.db)throw new Error("IndexedDB is not initialized.");const{storeName:i}=this.options;e(this.db.transaction([i],t).objectStore(i))}setItem(t,e,i){const s={key:t,value:e,expire:i?Date.now()+1e3*i:null};this.u("readwrite",t=>{t.put(s)})}getItem(t){return new Promise((e,i)=>{this.u("readonly",s=>{const n=s.get(t);n.onsuccess=()=>{const t=n.result;t&&(!t.expire||t.expire>Date.now())?e(t.value):e(null)},n.onerror=()=>{i(new Error("Failed to get item from IndexedDB."))}})})}removeItem(t){this.u("readwrite",e=>{e.delete(t)})}clear(){this.u("readwrite",t=>{t.clear()})}hasItem(t){return new Promise((e,i)=>{this.u("readonly",s=>{const n=s.get(t);n.onsuccess=()=>{e(!!n.result)},n.onerror=()=>{i(new Error("Failed to check item existence in IndexedDB."))}})})}}let H=null;class I{constructor(t){this.value=t,this.observers=/* @__PURE__ */new Set}read(){return H&&(this.observers.add(H),H.deps.add(this)),this.value}write(t){if(this.value!==t){this.value=t;for(const t of this.observers)t.schedule()}}}class O{constructor(t){this.fn=t,this.deps=/* @__PURE__ */new Set,this.scheduled=!1,this.schedule=()=>{this.scheduled||(this.scheduled=!0,(t=>{Promise.resolve().then(t)})(()=>{this.scheduled=!1,this.execute()}))},this.execute()}execute(){for(const e of this.deps)e.observers.delete(this);this.deps.clear();const t=H;H=this;try{this.fn()}finally{H=t}}}function D(t){const e=new I(t);return[()=>e.read(),t=>e.write("function"==typeof t?t(e.value):t)]}function F(t){new O(t)}const q=/* @__PURE__ */Object.freeze(/* @__PURE__ */Object.defineProperty({__proto__:null,createEffect:F,createMemo:function(t){let e;const[i,s]=D(void 0);return F(()=>{e=t(),s(e)}),i},createSignal:D},Symbol.toStringTag,{value:"Module"})),P=class t{constructor(e){this.options=Object.assign({title:"Tip",content:"",position:"center",confirmText:"Confirm",cancelText:"Cancel",showCancel:!0,showClose:!0,fullscreen:!1,onShow:null,onShown:null,onHide:null,onHidden:null,onConfirm:null,onSubmit:null,fields:null,header:!0,footer:!0,style:null,id:null,escClose:!1,bgClose:!1,lazy:!1},e),this.m(this.options),this.l(this.options),t.instances.add(this)}l(t){this.isVisible=!1,this.fields=null,this.p={},this.root=null,this.v=null,this.$=t.fields?JSON.parse(JSON.stringify(t.fields)):[],t.lazy||this._(t)}get modal(){return this.root?k(".j-modal",this.root):null}get form(){return this.modal?k(".j-form",this.modal):null}get confirmBtn(){return this.modal?k(".modal-confirm",this.modal):null}get cancelBtn(){return this.modal?k(".modal-cancel",this.modal):null}_(t){if(this.root)return;const{header:e,id:i,title:s,position:n}=t,o=e?"aria-labelledby":"aria-label",r=e?`${i}_title`:s||"Modal",a=E("div",{className:`j-popup-layout is-${n}`,attrs:{role:"dialog","aria-modal":"true",[o]:r},children:[this.C(t)]});return this.root=a,a}C(t){const{fullscreen:e,style:i,id:s}=t;return E("div",{className:e?"j-modal is-fullscreen":"j-modal",id:s,attrs:{role:"document",style:i||null},children:[this.j(t),this.S(t),this.T(t)]})}j(t){const{id:e,title:i,header:s,showClose:n}=t;return E("div",{className:"modal-header",html:`<div class="modal-title" id="${e}_title">${i}</div>${n?'<icon class="modal-close" data-action="close" role="button" aria-label="close" tabindex="0">×</icon>':""}`,dependency:()=>s})}T(t){const{showCancel:e,cancelText:i,confirmText:s,footer:n}=t;return E("div",{className:"modal-footer",html:`${e?`<button type="button" class="j-button is-ghost modal-cancel" data-action="close">${i}</button>`:""}<button type="button" class="j-button is-primary modal-confirm" data-action="confirm">${s}</button>`,dependency:()=>n})}S(t){const{fields:e,content:i}=t;return E("div",{className:"modal-body",html:`${e?`<div class="modal-form-container">${this.M(t).outerHTML}</div>`:i}`})}M(t){return E("form",{className:"j-form is-vertical is-item-vertical",children:[...this.A(t.fields)]})}A(t){const e=[];for(const i of t){const t=E("div",{className:"form-item",html:this.N(i)});e.push(t)}return e}N(t){switch(t.type){case"textarea":return this.L(t);case"select":return this.H(t);default:return this.I(t)}}I(t){let e="";const{type:i,required:s,id:n,label:o,name:r,placeholder:a,value:h,disabled:l}=t,c=n||g();switch(i){case"password":e="current-password";break;case"email":e="email";break;default:e="on"}return`<label class="item-label ${s?"is-required":""}" for="${c}">${o}</label><div class="form-control"><input type="${i||"text"}" class="j-input" name="${r}" id="${c}" placeholder="${a||""}" value="${h||""}" ${s?"required":""} ${l?"disabled":""} autocomplete="${e}"/></div>`}L(t){const{required:e,id:i,label:s,name:n,placeholder:o,value:r,disabled:a}=t,h=i||g();return`<label class="item-label ${e?"is-required":""}" for="${h}">${s}</label><div class="form-control"><textarea class="j-textarea" name="${n}" id="${h}" placeholder="${o||""}" ${e?"required":""} ${a?"disabled":""}>${r||""}</textarea></div>`}H(t){let e="";const{options:i,required:s,id:n,label:o,name:r,disabled:a}=t,h=n||g();if(i)for(const l of i)e+=`<option value="${l.value}" ${l.selected?"selected":""} ${l.disabled?"disabled":""}>${l.text}</option>`;return`<label class="item-label ${s?"is-required":""}" for="${h}">${o}</label><div class="form-control"><select class="j-select" name="${r}" id="${h}" autocomplete="off" ${s?"required":""} ${a?"disabled":""}>${e}</select></div>`}m(t){const{title:e,content:i,position:s,confirmText:n,cancelText:o,showCancel:r,showClose:a,fullscreen:h,header:l,footer:c,escClose:d,bgClose:u,style:f,id:p,onShow:b,onShown:w,onHide:v,onHidden:y,onConfirm:x,onSubmit:$,fields:_,lazy:k}=t;m("title",e,"string"),m("content",i,["string","HTMLElement"]),m("position",s,"string"),m("confirmText",n,"string"),m("cancelText",o,"string"),m("showCancel",r,"boolean"),m("showClose",a,"boolean"),m("fullscreen",h,"boolean"),m("header",l,"boolean"),m("footer",c,"boolean"),m("escClose",d,"boolean"),m("bgClose",u,"boolean"),m("style",f,["string","null"]),m("id",p,["string","null"]),m("onShow",b,["function","null"]),m("onShown",w,["function","null"]),m("onHide",v,["function","null"]),m("onHidden",y,["function","null"]),m("onConfirm",x,["function","null"]),m("onSubmit",$,["function","null"]),m("fields",_,["array","null"]),m("lazy",k,"boolean"),p&&p.trim()||(this.options.id=g())}O(t){if(!(t instanceof Element))return;const e=k(".modal-close",t);e&&(e.style.width=`${e.clientHeight}px`,e.style.transform=`translateX(${e.clientHeight/3}px)`)}D(t,e){this.F(t,e),this.P(t,e),this.R(e)}F(t,e){t&&e.bgClose&&(this.p.bg=e=>{e.target===t&&this.hide()},$(t,"click",this.p.bg))}P(t,e){t&&e.escClose&&(this.p.esc=t=>{"Escape"===t.key&&this.isVisible&&this.hide()},$(document,"keydown",this.p.esc))}R(t){this.p.inside=e=>{const i=e.target.dataset.action;"confirm"===i||"submit"===i?this.B(t):("cancel"===i||"close"===i||e.target.classList.contains("modal-close"))&&this.hide()},this.modal.addEventListener("click",this.p.inside)}B(t){if(this.form&&t.fields.length>0){this.form.dispatchEvent(new Event("submit"));const e=new FormData(this.form),i={};for(const[t,s]of e.entries())i[t]=s;this.fields=i,null!==this.v&&"object"==typeof this.v&&this.fields&&(this.fields=Object.assign(this.fields,this.v)),this.V(t,this.fields)}else this.Z(t)}U(){this.form&&this.$&&(k(".modal-form-container",this.modal).innerHTML=this.M({fields:this.$}).outerHTML)}async Z(t){t.onConfirm&&await Promise.resolve(t.onConfirm()),this.hide()}async V(t,e){t.onSubmit&&(await Promise.resolve(this.options.onSubmit(e)),this.v=null)}J(){const t=[{k:"esc",t:document,e:"keydown"},{k:"bg",t:this.root,e:"click"},{k:"inside",t:this.modal,e:"click"}];for(const{k:e,t:i,e:s}of t)this.p[e]&&(_(i,s,this.p[e]),delete this.p[e])}show(){if(!t.instances.has(this))throw new Error("Modal: The current instance has been destroyed.");if(this.isVisible)return;const{lazy:e,onShow:i,onShown:s}=this.options;e&&!this.root&&this._(this.options),i&&i(),document.body.appendChild(this.root),document.body.style.overflow="hidden",this.O(this.modal),this.isVisible=!0,this.D(this.root,this.options);const n=k('input, select, textarea, [tabindex]:not([tabindex="-1"])',this.modal);n&&n.focus(),s&&s()}hide(){if(!this.isVisible||!this.root)return;const{onHide:t,onHidden:e}=this.options;t&&t();this.modal.style.transition="opacity 0.3s ease, transform 0.3s ease",this.modal.style.opacity="0",this.modal.style.transform="scale(0)",this.isVisible=!1,this.v=null,this.fields=null,this.U(),setTimeout(()=>{this.root.parentNode.removeChild(this.root),document.body.style.overflow="",this.modal.style.cssText="",this.J(),e&&e()},300)}setFields(t){if(this.form)for(const e of Object.keys(t)){const i=k(`[name="${e}"]`,this.form);i&&("checkbox"===i.type||"radio"===i.type?i.checked=t[e]:i.value=t[e])}}addFields(t){if("object"!=typeof t)throw new Error("Modal: The data expects an object");this.v=t}setContent(t){if(!this.modal)return;if(this.options.fields)throw new Error("Modal.setContent: Cannot setContent when fields are defined.");const e=k(".modal-body",this.modal);e&&("string"==typeof t?e.innerHTML=t:t instanceof HTMLElement&&(e.innerHTML="",e.appendChild(t)),this.options.content=t)}showLoading(){if(k(".j-loading",this.modal))return;const t=E("div",{className:"j-loading is-active",html:'<div class="loading-spinner"></div>'});this.modal.insertAdjacentHTML("beforeend",t.outerHTML),this.confirmBtn&&(this.confirmBtn.disabled=!0),this.cancelBtn&&(this.cancelBtn.disabled=!0)}hideLoading(){const t=k(".j-loading",this.modal);t&&(t.parentNode&&t.parentNode.removeChild(t),this.confirmBtn&&(this.confirmBtn.disabled=!1),this.cancelBtn&&(this.cancelBtn.disabled=!1))}destroy(){this.isVisible?this.hide():this.root&&this.root.parentNode&&(this.root.parentNode.removeChild(this.root),document.body.style.overflow="",this.modal.style.cssText=""),this.J(),this.root=null,this.fields=null,this.v=null,this.p={},this.options=null,this.isVisible=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(P,"instances",/* @__PURE__ */new Set);let R=P;class z{X(){}static show(t="",e=3e3,i="info"){z.Y(t,e,i);let s=document.querySelector(".j-toast-container");s||(s=E("div",{className:"j-toast-container"}),document.body.appendChild(s));const n=z.G(i),o=E("div",{className:`j-toast is-${i}`,attrs:{"data-toast":g()},html:`<span class="toast-icon">${n}</span>\n <span class="toast-message">${t}</span>`});return s.appendChild(o),setTimeout(()=>{o.classList.add("toast-show")},10),e>0&&setTimeout(()=>{z.hide(o)},e),$(o,"click",()=>{z.hide(o)}),o}static success(t="",e=3e3){return z.show(t,e,"success")}static info(t="",e=3e3){return z.show(t,e,"info")}static warning(t="",e=3e3){return z.show(t,e,"warning")}static error(t="",e=3e3){return z.show(t,e,"error")}static hide(t){t&&(t.classList.remove("toast-show"),t.classList.add("toast-hide"),setTimeout(()=>{t.parentNode&&t.parentNode.removeChild(t);const e=document.querySelector(".j-toast-container");e&&0===e.children.length&&e.parentNode.removeChild(e)},300))}static lite(t="",e=2e3){if("string"!=typeof t)throw new Error("Lite toast message expects a string");if("number"!=typeof e||e<=0)throw new Error("Lite toast duration expects a number greater than 0");const i=document.querySelector(".j-toast-lite");i&&i.remove();const s=E("div",{className:"j-toast-lite",text:t});return document.body.appendChild(s),setTimeout(()=>s.classList.add("is-show"),10),setTimeout(()=>{s.classList.remove("is-show"),s.classList.add("is-hide"),setTimeout(()=>s.remove(),300)},e),s}static Y(t,e,i){if("string"!=typeof t)throw new Error("Toast message expects a string");if("number"!=typeof e||e<=0)throw new Error("Toast duration expects a positive number or 0.");if(!["info","success","warning","error"].includes(i))throw new Error("Toast type expects one of [info, success, warning, error]")}static G(t){const e={success:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M4 12C4 7.58172 7.58172 4 12 4C16.4183 4 20 7.58172 20 12C20 16.4183 16.4183 20 12 20C7.58172 20 4 16.4183 4 12ZM12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2ZM17.4571 9.45711L16.0429 8.04289L11 13.0858L8.20711 10.2929L6.79289 11.7071L11 15.9142L17.4571 9.45711Z"></path></svg>',error:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM12 10.5858L14.8284 7.75736L16.2426 9.17157L13.4142 12L16.2426 14.8284L14.8284 16.2426L12 13.4142L9.17157 16.2426L7.75736 14.8284L10.5858 12L7.75736 9.17157L9.17157 7.75736L12 10.5858Z"></path></svg>',warning:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM11 15H13V17H11V15ZM11 7H13V13H11V7Z"></path></svg>',info:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12 2 6.47715 6.47715 2 12 2 17.5228 2 22 6.47715 22 12 22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12 20 7.58172 16.4183 4 12 4 7.58172 4 4 7.58172 4 12 4 16.4183 7.58172 20 12 20ZM13 10.5V15H14V17H10V15H11V12.5H10V10.5H13ZM13.5 8C13.5 8.82843 12.8284 9.5 12 9.5 11.1716 9.5 10.5 8.82843 10.5 8 10.5 7.17157 11.1716 6.5 12 6.5 12.8284 6.5 13.5 7.17157 13.5 8Z"></path></svg>'};return e[t]||e.info}}const B=class t{constructor(t){this.options=Object.assign({content:"",overlay:!0,filter:!0,direction:"left",animation:"slide",bgClose:!0,escClose:!0,id:null,onShow:null,onShown:null,onHide:null,onHidden:null},t),this.W(this.options),this.l(this.options)}W(t){const{content:e,overlay:i,filter:s,direction:n,animation:o,bgClose:r,escClose:a,id:h,onShow:l,onShown:c,onHide:d,onHidden:u}=t;m("content",e,["string","HTMLElement"]),m("overlay",i,"boolean"),m("filter",s,"boolean"),m("direction",n,"string",[{test:t=>["top","right","bottom","left"].includes(t),message:"expects one of [top, right, bottom, left]"}]),m("animation",o,"string",[{test:t=>["slide","push","none"].includes(t),message:"expects one of [slide, push, none]"}]),m("bgClose",r,"boolean"),m("escClose",a,"boolean"),m("id",h,["string","null"]),m("onShow",l,["function","null"]),m("onShown",c,["function","null"]),m("onHide",d,["function","null"]),m("onHidden",u,["function","null"]),h&&h.trim()||(this.options.id=g())}l(t){this.isVisible=!1,t.overlay&&(this.K=this.tt(t)),this.root=this._(t),this.p={}}et(t){"Escape"===t.key&&this.isVisible&&this.hide()}D(){const{bgClose:t,escClose:e}=this.options;this.p={overlay:this.hide.bind(this),esc:t=>this.et(t),close:t=>{const e=t.target.dataset.action;"close"!==e&&"cancel"!==e||this.hide()}},this.K&&t&&$(this.K,"click",this.p.overlay),e&&$(document,"keydown",this.p.esc),$(this.root,"click",this.p.close)}it(){this.K&&this.p.overlay&&(_(this.K,"click",this.p.overlay),delete this.p.overlay),this.p.esc&&(_(document,"keydown",this.p.esc),delete this.p.esc),this.p.close&&(_(this.root,"click",this.p.close),delete this.p.close)}tt(t){const e=t.filter,i=e?"backdropFilter":"",s=e?"blur(2px)":"";return E("div",{className:"j-offcanvas-overlay",style:{[i]:s}})}_(t){const{id:e,direction:i,animation:s,content:n}=t;return E("div",{className:`j-offcanvas ${i?`is-${i}`:""} ${s?`is-${s}`:""}`,id:e,children:E("div",{className:"offcanvas-content",children:n})})}st(){const{overlay:t,animation:e,direction:i}=this.options;if(t&&document.body.appendChild(this.K),document.body.appendChild(this.root),document.body.style.overflow="hidden","push"===e){document.body.classList.add("offcanvas-push-body");const t=window.scrollY;this.K.style.top=`${t}px`,this.root.style.top=`${t}px`}setTimeout(()=>{this.K&&this.K.classList.add("is-active"),"push"===e&&document.body.classList.add(`offcanvas-push-${i}`),this.root.classList.add("is-active")},10)}nt(){const{animation:t,direction:e}=this.options;this.K&&this.K.classList.remove("is-active"),this.root.classList.remove("is-active"),"push"===t&&document.body.classList.remove(`offcanvas-push-${e}`),setTimeout(()=>{this.K&&this.K.parentNode&&this.K.parentNode.removeChild(this.K),this.root&&this.root.parentNode&&this.root.parentNode.removeChild(this.root),"push"===t&&document.body.classList.remove("offcanvas-push-body"),document.body.style.overflow=""},100)}async show(){const{onShow:t,onShown:e}=this.options;this.isVisible||(t&&await Promise.resolve(t()),this.st(),this.D(),this.isVisible=!0,setTimeout(()=>{e&&e()},100))}async hide(){const{onHide:t,onHidden:e}=this.options;this.isVisible&&(t&&await Promise.resolve(t()),this.it(),this.nt(),this.isVisible=!1,e&&e())}destroy(){this.hide(),this.options=null,this.root=null,this.p={},t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(B,"instances",/* @__PURE__ */new Set);let V=B;const Z=class t{constructor(t={}){this.options=Object.assign({mode:"dark",render:"dark",theme:"indigo",radius:"sm",shadow:"sm",font:"sm",key:"jui-theme"},t),this.languages={en:{b:"Back",t:"Customize",d:"Customize your UI experience.",theme:"Theme",radius:"Radius",shadow:"Shadow",font:"Font",mode:"Mode",gray:"Gray",olive:"Olive",tomato:"Tomato",ruby:"Ruby",pink:"Pink",violet:"Violet",indigo:"Indigo",blue:"Blue",teal:"Teal",grass:"Grass",mint:"Mint",lime:"Lime",yellow:"Yellow",orange:"Orange",gold:"Gold",n:"None",sm:"Small",md:"Medium",lg:"Large",xl:"XL",light:"Light",dark:"Dark",auto:"Auto"},zh:{b:"返回",t:"自定义主题",d:"自定义您的UI体验。",theme:"主题",radius:"圆角",shadow:"阴影",font:"字体",mode:"模式",gray:"灰色",olive:"橄榄绿",tomato:"番茄红",ruby:"红宝石",pink:"粉红",violet:"紫罗兰",indigo:"靛蓝",blue:"蓝色",teal:"青色",grass:"草绿",mint:"薄荷绿",lime:"酸橙绿",yellow:"黄色",orange:"橙色",gold:"金色",n:"无",sm:"小",md:"中",lg:"大",xl:"更大",light:"浅色",dark:"深色",auto:"自动"}},this.l()}l(){this.p={},this.mq=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)"),this.ot(),this.rt(this.options),this.ht(),this.lt(document)}ct(t){return v(t,this.languages)}ot(){try{const t=localStorage.getItem(this.options.key);if(t){const e=JSON.parse(t);this.options=Object.assign({},this.options,e)}}catch(t){}}dt(t){const e=this.mq&&this.mq.matches?"dark":"light";this.options.render="auto"===this.options.mode?e:this.options.mode;const i=JSON.stringify(t);localStorage.setItem(this.options.key,i)}ut(){const t=[],e=document.documentElement;for(const i of e.classList)"light"!==i&&"dark"!==i||t.push(i),(i.startsWith("j-theme-")||i.startsWith("j-radius-")||i.startsWith("j-shadow-")||i.startsWith("j-font-"))&&t.push(i);t.length&&e.classList.remove(...t)}ft(){const t=document.documentElement,{mode:e}=this.options;if("auto"===e){const e=this.mq&&this.mq.matches?"dark":"light";t.classList.remove("light","dark"),t.classList.add(e)}else t.classList.remove("light","dark"),t.classList.add("dark"===e?"dark":"light")}rt(t){this.ut(),this.ft();document.documentElement.classList.add(`j-theme-${t.theme}`,`j-radius-${t.radius}`,`j-shadow-${t.shadow}`,`j-font-${t.font}`)}lt(t=document){const e=t.querySelectorAll(".palette-item");for(const i of e){const t=i.dataset.palette,e=this.options[t],s=i.querySelectorAll("button[data-palette]");for(const i of s){const t=i.dataset.palette===(void 0===e?null:e);i.classList.toggle("is-active",t)}}}ht(){this.p.click=t=>{const e=t.target.closest(".palette-item .items > button[data-palette]");if(!e)return;const i=e.closest(".palette-item");if(!i)return;const s=i.dataset.palette,n=e.dataset.palette;e.classList.contains("is-active")||(this.options[s]=n,this.rt(this.options),this.dt(this.options),this.lt())},$(document.body,"click",this.p.click)}bt(){_(document.body,"click",this.p.click)}createPanel(t="j-theme-palette",e=null){const i=e||[{title:this.ct("theme"),type:"theme",buttons:[["gray",this.ct("gray")],["olive",this.ct("olive")],["tomato",this.ct("tomato")],["ruby",this.ct("ruby")],["pink",this.ct("pink")],["violet",this.ct("violet")],["indigo",this.ct("indigo")],["blue",this.ct("blue")],["teal",this.ct("teal")],["grass",this.ct("grass")],["mint",this.ct("mint")],["lime",this.ct("lime")],["yellow",this.ct("yellow")],["orange",this.ct("orange")],["gold",this.ct("gold")]]},{title:this.ct("radius"),type:"radius",buttons:[["none",this.ct("n")],["sm",this.ct("sm")],["md",this.ct("md")],["lg",this.ct("lg")],["xl",this.ct("xl")]]},{title:this.ct("shadow"),type:"shadow",buttons:[["none",this.ct("n")],["sm",this.ct("sm")],["md",this.ct("md")],["lg",this.ct("lg")]]},{title:this.ct("font"),type:"font",buttons:[["sm",this.ct("sm")],["md",this.ct("md")]]},{title:this.ct("mode"),type:"mode",buttons:[["light",this.ct("light")],["dark",this.ct("dark")],["auto",this.ct("auto")]]}],s=[],n=`<div class="text-center"><button class="j-button is-text" data-action="close">${this.ct("b")}</button></div><h3>${this.ct("t")}</h3><p class="mt-0 text-sm">${this.ct("d")}</p><div class="palette-container">`;s.push(n);for(const o of i){s.push(`<div class="palette-item" data-palette="${o.type}"><div class="item-title">${o.title}</div><div class="items">`);for(const[t,e]of o.buttons){const i=String(this.options[o.type])===String(t)?" is-active":"",n="theme"===o.type?`<span class="el-prefix item-hex bg-${t}-10"></span>`:"";s.push(`<button class="j-button is-default${i}" data-palette="${t}">${n}<span class="button-text">${e}</span></button>`)}s.push("</div></div>")}s.push("</div>");return E("div",{className:t,html:s.join("")})}setConfig(t){this.options=Object.assign({},this.options,t),this.rt(this.options),this.dt(this.options),this.lt(document)}destroy(){this.bt(),this.options={},this.languages={},this.p={},this.mq=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(Z,"instances",/* @__PURE__ */new Set);let U=Z;const J=class t{constructor(t,e={}){if(!1!==t&&!(t instanceof HTMLElement))throw new Error("Element expects a valid HTMLElement or false.");this.options=Object.assign({id:null,direction:"top",active:0,disabled:[],onChange:null,tabs:[],onAdd:null,onRemove:null},e),this.m(this.options),this.l(t)}l(t){this.root=t,this.current=null,this.p={},this.wt=[];const{tabs:e,disabled:i,active:s}=this.options;if(!1===this.root&&(this.root=this._(e)),0===this.tabs.length||0===this.panels.length)throw new Error(".tab-item or .panel-item not found.");this.wt=this.vt(i),this.gt(),this.D(),this.yt(s,!1),this.xt()}get tabs(){return this.root?Array.from(this.root.querySelectorAll(".tab-item")):[]}get panels(){return this.root?Array.from(this.root.querySelectorAll(".panel-item")):[]}get $t(){return this.root?this.root.querySelector(".tab-wrap"):null}get _t(){return this.root?this.root.querySelector(".tab-list"):null}m(t){const{id:e,direction:i,active:s,disabled:n,onChange:o,tabs:r,onAdd:a,onRemove:h}=t;m("id",e,["string","null"]),m("direction",i,"string",[{test:t=>["top","bottom","left","right"].includes(t),message:"direction expects one of [top, bottom, left, right]"}]),m("active",s,["number","string"]),m("disabled",n,["number","string","array"]),m("tabs",r,["array"]),m("onChange",o,["function","null"]),m("onAdd",a,["function","null"]),m("onRemove",h,["function","null"]),e&&e.trim()||(this.options.id=g())}_(t){const{id:e,direction:i}=this.options,s=E("nav",{className:"tab-list"}),n=E("div",{className:"tab-wrap",children:s}),o=E("div",{className:"tab-panel"});for(const r of t){const t=E("div",{className:"tab-item",attrs:{"data-tab":r.name||g()},html:`<span>${r.title}</span>`});s.appendChild(t);const e=E("div",{className:"panel-item",html:`<div>${r.content}</div>`});o.appendChild(e)}return E("div",{className:"j-tabs",id:e,direction:`is-${i}`,children:[n,o]})}vt(t){if(null==t)return[];const e=t=>"number"==typeof t?t:"string"==typeof t?this.tabs.findIndex(e=>e.dataset.tab===t):-1;if(Array.isArray(t))return t.map(e).filter(t=>t>=0);{const i=e(t);return i>=0?[i]:[]}}gt(){for(const[t,e]of this.tabs.entries())this.wt.includes(t)?(e.setAttribute("disabled","true"),e.classList.add("is-disabled")):(e.removeAttribute("disabled"),e.classList.remove("is-disabled"))}D(){this.it(),this._t&&(this.p.tabClick=t=>{const e=t.target.closest(".tab-item");if(!e||!this.tabs.includes(e))return;const i=this.tabs.indexOf(e);i>=0&&!this.wt.includes(i)&&this.activate(i)},$(this._t,"click",this.p.tabClick))}it(){this._t&&this.p.tabClick&&_(this._t,"click",this.p.tabClick),this.p.tabClick=null}async yt(t,e=!0){const{onChange:i}=this.options,s=this.kt(t);if(!(s<0||s>=this.tabs.length||this.wt.includes(s)||this.current===s)){this.current=s;for(const[t,e]of this.tabs.entries())e.classList.toggle("is-active",t===s);for(const[t,e]of this.panels.entries())e.classList.toggle("is-active",t===s);if(e&&i){const t=this.tabs[s],e=this.panels[s],n=t&&t.dataset.tab||s;await Promise.resolve(i(s,n,t,e))}}}kt(t){return"number"==typeof t?t:"string"==typeof t?this.tabs.findIndex(e=>e.dataset.tab===t):-1}xt(){const{direction:t}=this.options;this.$t&&this._t&&(this.isVertical="left"===t||"right"===t,this.draggable=this.Ct(),this.draggable?(this.Et(),this.p.resize=()=>{cancelAnimationFrame(this.jt),this.jt=requestAnimationFrame(()=>{this.St()})},$(window,"resize",this.p.resize)):this.Tt())}Ct(){if(this.isVertical){return this._t.scrollHeight>this.$t.clientHeight+5}return this._t.scrollWidth>this.$t.clientWidth+5}Et(){this.Tt();const t=this.$t,e=this._t,i=this.isVertical;let s=0,n=0,o=0,r=!1;const a=t=>i?t.touches?t.touches[0].pageY:t.pageY:t.touches?t.touches[0].pageX:t.pageX,h=r=>{this.isDragging=!0,e.classList.add("dragging"),s=a(r),o=s,n=i?t.scrollTop:t.scrollLeft,this.Mt=0,cancelAnimationFrame(this.raf)},l=e=>{if(!this.isDragging)return;e.preventDefault();const h=a(e),l=s-h;this.Mt=o-h,o=h,r||(r=!0,requestAnimationFrame(()=>{r=!1,i?t.scrollTop=n+l:t.scrollLeft=n+l}))},c=()=>{this.isDragging&&(this.isDragging=!1,e.classList.remove("dragging"),this.At())};this.p.drag={onDragStart:h,onDragMove:l,onDragEnd:c},$(e,"mousedown",h),$(e,"touchstart",h,{passive:!0}),$(window,"mousemove",l,{passive:!1}),$(window,"touchmove",l,{passive:!1}),$(window,"mouseup",c),$(window,"touchend",c)}At(){const t=this.$t;let e=this.Mt;const i=this.isVertical;let s=performance.now();const n=o=>{const r=o-s;s=o,e*=.92,Math.abs(e)<.3||(i?t.scrollTop+=e*r*.05:t.scrollLeft+=e*r*.05,this.raf=requestAnimationFrame(n))};this.raf=requestAnimationFrame(n)}Tt(){if(!this.p.drag)return;const{onDragStart:t,onDragMove:e,onDragEnd:i}=this.p.drag;_(this._t,"mousedown",t),_(this._t,"touchstart",t),_(window,"mousemove",e),_(window,"touchmove",e),_(window,"mouseup",i),_(window,"touchend",i),this.p.drag=null}St(){this.xt()}async activate(t){await this.yt(t,!0)}async reInit(t={}){this.options=Object.assign({},this.options,t);const{disabled:e,active:i}=this.options;this.wt=this.vt(e),this.gt(),this.D(),await this.yt(i,!1),this.St()}async addTab(t){const{title:e,name:i,content:s}=t;if(!t||!e)return;const n=this.root.querySelector(".tab-panel");t.name=i||g();const o=E("div",{className:"tab-item",attrs:{"data-tab":t.name},html:`<span>${e}</span>`});this._t&&this._t.appendChild(o);const r=E("div",{className:"panel-item",html:`<div>${s}</div>`});n.appendChild(r),this.gt(),this.D();const{onAdd:a}=this.options;a&&await Promise.resolve(a(this.tabs.length-1,t,o,r)),this.St()}async deleteTab(t){if(this.tabs.length<=1)return;const e=this.kt(t);if(e<0||e>=this.tabs.length)return;const i=this.tabs[e],s=this.panels[e],n=i.dataset.tab||e;i&&i.parentNode&&i.parentNode.removeChild(i),s&&s.parentNode&&s.parentNode.removeChild(s),this.gt(),this.D();const{onRemove:o}=this.options;o&&await Promise.resolve(o(e,n)),i.classList.contains("is-active")&&await this.yt(this.tabs.length-1,!1),this.St()}disableTab(t){const e=this.kt(t);e>=0&&!this.wt.includes(e)&&(this.wt.push(e),this.gt(),this.D())}enableTab(t){const e=this.kt(t),i=this.wt.indexOf(e);i>=0&&(this.wt.splice(i,1),this.gt(),this.D())}destroy(){this.it();for(const t of this.tabs)t.classList.remove("is-active","is-disabled"),t.removeAttribute("disabled");for(const t of this.panels)t.classList.remove("is-active");const e=this._t;e&&(_(e.inner,"mousedown",this.Nt),_(e.inner,"touchstart",this.Nt),_(e.inner,"mousemove",this.Lt),_(e.inner,"touchmove",this.Lt),_(window,"mouseup",this.Ht),_(window,"touchend",this.Ht)),this.p.resize&&_(window,"resize",this.p.resize),this.root=null,this.options={},this.isVertical=!1,this.p={},t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(J,"instances",/* @__PURE__ */new Set);let X=J;const Y=class t{constructor(e,i={}){if(!1!==e&&!(e instanceof HTMLElement))throw new Error("Accordion: element expects a valid HTMLElement or false.");this.options=Object.assign({id:null,active:0,collapsible:!1,multiple:!1,onChange:null,items:[]},i),this.m(this.options),this.l(e,this.options),t.instances.add(this)}m(t){const{id:e,active:i,collapsible:s,multiple:n,onChange:o,items:r}=t;m("id",e,["string","null"]),m("active",i,["number","string"]),m("collapsible",s,"boolean"),m("multiple",n,"boolean"),m("onChange",o,["function","null"]),m("items",r,"array"),e&&e.trim()||(this.options.id=g())}l(t,e){if(this.root=t,this.p={},!1===this.root&&(this.root=this._(e)),0===this.headers.length||0===this.panels.length)throw new Error("Accordion: .accordion-header or .accordion-panel not found.");this.D(),null!=e.active&&this.yt(e.active,!1)}_(t){return E("div",{className:"j-accordion",id:t.id,children:this.It(t.items)})}It(t){if(!Array.isArray(t)||0===t.length)throw new Error("Accordion: items must be a non-empty array.");const e=document.createDocumentFragment();for(const i of t){if(i.name&&"string"!=typeof i.name)throw new Error("Accordion: item name expects a string.");const t=E("div",{className:"accordion-header",attrs:{"data-item":i.name||g()},html:`<span class="header-title">${i.title}</span><span class="header-arrow"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg></span>`}),s=E("div",{className:"accordion-panel"}),n=E("div",{className:"panel-content",children:i.content});s.appendChild(n),e.appendChild(t),e.appendChild(s)}return e}D(){this.it();const t=t=>{const e=t.target.closest(".accordion-header");e&&this.headers.includes(e)&&this.active(this.headers.indexOf(e))};$(this.root,"click",t),this.p.root=t}it(){const t=[{k:"root",t:this.root,e:"click"}];for(const{k:e,t:i,e:s}of t)this.p[e]&&(_(i,s,this.p[e]),delete this.p[e])}async yt(t,e=!0){const i=this.kt(t);if(i<0||i>=this.headers.length)return;const s=this.headers[i],n=this.panels[i],o=s&&s.dataset.item||i,r=s.classList.contains("is-active");if(!r||this.options.multiple||this.options.collapsible){if(this.options.multiple)r?(s.classList.remove("is-active"),n.classList.remove("is-active")):(s.classList.add("is-active"),n.classList.add("is-active"));else if(r)this.options.collapsible&&(s.classList.remove("is-active"),n.classList.remove("is-active"));else{for(const t of this.headers)t.classList.remove("is-active");for(const t of this.panels)t.classList.remove("is-active");s.classList.add("is-active"),n.classList.add("is-active")}e&&this.options.onChange&&await Promise.resolve(this.options.onChange(i,o,s,n))}}kt(t){return"number"==typeof t?t:"string"==typeof t?this.headers.findIndex(e=>e.dataset.item===t):-1}get headers(){return this.root?Array.from(this.root.querySelectorAll(".accordion-header")):[]}get panels(){return this.root?Array.from(this.root.querySelectorAll(".accordion-panel")):[]}get current(){const t=this.headers.find(t=>t.classList.contains("is-active"));return t?this.headers.indexOf(t):null}async active(t){return this.yt(t,!0),Promise.resolve()}setItems(t,e=0){if(!Array.isArray(t)||0===t.length)throw new Error("Accordion.setItems: items expects a non-empty array.");if("number"!=typeof e&&e<0)throw new Error("Accordion.setItems: active expects a positive number or 0.");this.options.items=[...t],this.options.active=e,this.it(),this.root.innerHTML="",this.root.append(this.It(t)),this.D(),this.yt(this.options.active)}destroy(){this.it();for(const t of this.headers)t.classList.remove("is-active");for(const t of this.panels)t.classList.remove("is-active");this.root=null,this.options={},this.Ot={},t.instances.delete(this)}destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(Y,"instances",/* @__PURE__ */new Set);let G=Y;const W=class t{constructor(t,e={}){if(!(t instanceof HTMLElement))throw new Error("Drop: element expects a valid HTMLElement.");this.target=t,this.options=Object.assign({name:null,mode:"click",position:"auto",offset:10,content:"",className:null,id:null,delay:0,hoverIntent:!0},e),this.m(this.options),this.l(this.options)}m(t){m("name",t.name,["string","null"]),m("mode",t.mode,["string"]),m("position",t.position,["string"],[{test:t=>["auto","top-left","top-center","top-right","bottom-left","bottom-center","bottom-right","left","right"].includes(t),message:"expects one of [auto, top-left, top-center, top-right, bottom-left, bottom-center, bottom-right, left, right]"}]),m("offset",t.offset,"number",[{test:t=>t>=0,message:"offset expects a positive number or 0."}]),m("content",t.content,["string","HTMLElement"]),m("className",t.className,["string","null"]),m("id",t.id,["string","null"]),m("delay",t.delay,["number","object"]),m("hoverIntent",t.hoverIntent,"boolean"),t.id&&t.id.trim()||(this.options.id=g())}l(t){this.isVisible=!1,this.root=null,this.p={},this.Dt={show:null,hide:null},this.Ft={x:0,y:0,lastMoveTime:0};const{delay:e}=t;"number"==typeof e&&e>=0?(this.delayShow=e,this.delayHide=e):"object"==typeof e&&null!==e?(this.delayShow=Number(e.show)||0,this.delayHide=Number(e.hide)||0):(this.delayShow=0,this.delayHide=0),this.p={show:this.show.bind(this),hide:this.hide.bind(this),toggle:this.toggle.bind(this),mouseMove:this.qt.bind(this),docClick:this.Pt.bind(this),startIntent:this.Rt.bind(this),cancelIntent:this.zt.bind(this)},this.Bt(t),this.D(t)}Bt(t){const{className:e,content:i,id:s,name:n}=t,o=e||"",r=i instanceof HTMLElement?i:E("div",{className:"drop-container",html:i}),a=E("div",{className:o?`j-drop ${o}`:"j-drop",id:s,attrs:{"data-drop":n||g()},children:r});this.root=a,document.body.appendChild(a)}D(t){const{mode:e,hoverIntent:i}=t;"hover"===e?(i?($(this.target,"mouseenter",this.p.startIntent),$(this.target,"mouseleave",this.p.cancelIntent)):($(this.target,"mouseenter",this.p.show),$(this.target,"mouseleave",this.p.hide)),$(this.root,"mouseenter",this.p.show),$(this.root,"mouseleave",this.p.hide)):"click"===e&&($(this.target,"click",this.p.toggle),$(document,"click",this.p.docClick))}it(){const{mode:t,hoverIntent:e}=this.options;"hover"===t?(e?(_(this.target,"mouseenter",this.p.startIntent),_(this.target,"mouseleave",this.p.cancelIntent)):(_(this.target,"mouseenter",this.p.show),_(this.target,"mouseleave",this.p.hide)),_(this.root,"mouseenter",this.p.show),_(this.root,"mouseleave",this.p.hide)):"click"===t&&(_(this.target,"click",this.p.toggle),_(document,"click",this.p.docClick)),_(document,"mousemove",this.p.mouseMove)}Rt(){$(document,"mousemove",this.p.mouseMove),clearTimeout(this.Dt.show),this.Dt.show=setTimeout(()=>{const t=Date.now()-this.Ft.lastMoveTime;Math.abs(this.Ft.x-this.Vt||0)+Math.abs(this.Ft.y-this.Zt||0)<5||t>100?(this.show(),_(document,"mousemove",this.p.mouseMove)):this.Rt()},this.delayShow)}zt(){clearTimeout(this.Dt.show),_(document,"mousemove",this.p.mouseMove),this.hide()}qt(t){this.Vt=t.clientX,this.Zt=t.clientY,this.Ft.lastMoveTime=Date.now(),this.Ft.x=t.clientX,this.Ft.y=t.clientY}Ut(){const t=this.target.getBoundingClientRect(),e=this.root,{offset:i,position:s}=this.options;e.style.visibility="hidden",e.style.display="block";const n=e.getBoundingClientRect();let o=0,r=0,a=s;if("auto"===a){a=window.innerHeight-t.bottom>n.height+i?"top-center":"bottom-center"}switch(a){case"top-left":o=t.top-n.height-i,r=t.left;break;case"top-center":o=t.top-n.height-i,r=t.left+t.width/2-n.width/2;break;case"top-right":o=t.top-n.height-i,r=t.right-n.width;break;case"bottom-left":o=t.bottom+i,r=t.left;break;case"bottom-center":o=t.bottom+i,r=t.left+t.width/2-n.width/2;break;case"bottom-right":o=t.bottom+i,r=t.right-n.width;break;case"left":o=t.top+t.height/2-n.height/2,r=t.left-n.width-i;break;case"right":o=t.top+t.height/2-n.height/2,r=t.right+i}o=Math.max(8,Math.min(o,window.innerHeight-n.height-8)),r=Math.max(8,Math.min(r,window.innerWidth-n.width-8)),e.style.top=`${o+window.scrollY}px`,e.style.left=`${r+window.scrollX}px`,e.style.visibility="",e.style.display=""}Pt(t){this.root.contains(t.target)||this.target.contains(t.target)||this.hide()}Jt(t){t?this.Ut():(this.root.style.top="",this.root.style.left=""),this.root.classList.toggle("is-active",t),this.isVisible=t}show(t=!0){clearTimeout(this.Dt.hide),this.isVisible||(t&&this.delayShow>0?(clearTimeout(this.Dt.show),this.Dt.show=setTimeout(this.Jt(!0),this.delayShow)):this.Jt(!0))}hide(t=!0){clearTimeout(this.Dt.show),this.isVisible&&(t&&this.delayHide>0?(clearTimeout(this.Dt.hide),this.Dt.hide=setTimeout(this.Jt(!1),this.delayHide)):this.Jt(!1))}toggle(){this.isVisible?this.hide():this.show()}destroy(){var e;clearTimeout(this.Dt.show),clearTimeout(this.Dt.hide),this.hide(!1),this.it(),(null==(e=this.root)?void 0:e.parentNode)&&this.root.parentNode.removeChild(this.root),this.options=null,this.root=null,this.target=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(W,"instances",/* @__PURE__ */new Set);let K=W;const Q=class t{constructor(t,e={}){if(!(t instanceof HTMLElement))throw new Error("Tooltip: element expects a valid HTMLElement.");const i=Object.assign({name:null,mode:"hover",position:"auto",offset:8,message:"",className:null,id:null,delay:100,hoverIntent:!0},e),s=this.Xt(i);this.drop=new K(t,{name:i.name,mode:i.mode,position:i.position,offset:i.offset,content:s,className:i.className,id:i.id,delay:i.delay,hoverIntent:i.hoverIntent})}Xt(t){if("string"!=typeof t.message||""===t.message.trim())throw new Error("Tooltip: message expects a string.");const e=E("div",{className:"tooltip-message",text:t.message});return E("div",{className:t.className?`j-tooltip ${t.className}`:"j-tooltip",children:e})}show(t=!0){this.drop.show(t)}hide(t=!0){this.drop.hide(t)}toggle(){this.drop.toggle()}destroy(){this.drop.destroy(),this.drop=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(Q,"instances",/* @__PURE__ */new Set);let tt=Q;const et=class t{constructor(t,e={},i=!1){this.options=Object.assign({rules:{},messages:{},onSubmit:null},e),this.m(t,this.options,i),this.l(t),i&&this.D()}m(t,e,i){m("element",t,["HTMLElement","string"]),m("rules",e.rules,"object"),m("messages",e.messages,"object"),m("onSubmit",e.onSubmit,["function","null"]),m("bindEvents",i,"boolean")}l(t){this.root=t,this.valid=!0}D(){$(this.root,"submit",t=>{t.preventDefault(),this.validate()}),$(this.root,"reset",()=>{this.reset()})}validate(){for(const t of this.root.elements){const e=t.name;if(this.options.rules[e]&&(this.valid=this.Yt(t,e),!this.valid))break}return this.valid&&this.options.onSubmit&&this.options.onSubmit(),this.valid}Yt(t,e){const i=this.options.rules[e];if(t.hasAttribute("required")||t.hasAttribute("minlength")||t.hasAttribute("maxlength")||t.hasAttribute("pattern")||t.hasAttribute("min")||t.hasAttribute("max")||t.hasAttribute("step"))return this.valid;for(const s in i){switch(s){case"required":this.valid=this.Gt(t,i[s]);break;case"minLength":this.valid=this.Wt(t,i[s]);break;case"maxLength":this.valid=this.Kt(t,i[s]);break;case"equalTo":this.valid=this.Qt(t,i[s]);break;case"email":this.valid=this.te(t);break;case"checked":this.valid=this.ee(t,i[s]);break;case"noSpace":this.valid=this.ie(t,i[s]);break;case"noChinese":this.valid=!/[\u4e00-\u9fa5]/.test(t.value);break;case"noSpecial":this.valid=!/[@#$%^&*]+/g.test(t.value);break;case"pattern":this.valid=new RegExp(i[s]).test(t.value)}if(!this.valid){this.se(t,e,s);break}this.ne(t)}return this.valid}Gt(t,e){return t.value.trim().length>=1&&!0===e}Wt(t,e){return t.value.length>=e}Kt(t,e){return t.value.length<=e}te(t){return/^([\w-.]+@([\w-]+\.)+[\w-]{2,4})?$/.test(t.value)}Qt(t,e){const i=this.root.elements[e];if(null==i)throw new Error(`Validator: target element "${e}" not found.`);return t.value===i.value}ee(t,e){if("checkbox"!==t.type)throw new Error(`Validator: element expects a checkbox input, but ${t.type} given.`);return t.checked===e}ie(t,e){return!/\s/.test(t.value)||!0!==e}se(t,e,i){t.classList.remove("is-valid"),t.classList.add("is-invalid");const s=this.options.messages[e]&&this.options.messages[e][i];if(s){this.message=s;const e=t.closest(".form-control");let i=k(".help-block",e);i||(i=E("div",{className:"help-block is-invalid",text:s}),e.appendChild(i))}}ne(t){this.message="",t.classList.remove("is-invalid");const e=t.closest(".form-control"),i=k(".help-block",e);i&&e.removeChild(i),t.classList.add("is-valid")}reset(){this.root.reset();for(const e of this.root.elements)e.classList.remove("is-valid"),e.classList.remove("is-invalid");const t=this.root.querySelectorAll(".help-block");for(const e of t)e.remove();this.valid=!0,this.message=""}destroy(){this.reset(),this.root=null,this.options=null,this.message=null,this.valid=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(et,"instances",/* @__PURE__ */new Set);let it=et;const st={...S,container:M,store:class{constructor(t="localStorage"){this.driver=this.oe(t)}oe(t){switch(t){case"cookie":return new A;case"localStorage":return"undefined"!=typeof localStorage?new N:(console.warn("localStorage not supported, falling back to cookie."),new A);case"indexedDB":return"undefined"!=typeof indexedDB?new L:(console.warn("indexedDB not supported, falling back to localStorage."),this.oe("localStorage"));default:throw new Error(`Unsupported driver: ${t}`)}}set(t,e,i){this.driver.setItem(t,e,i)}get(t){return this.driver.getItem(t)}remove(t){this.driver.removeItem(t)}clear(){this.driver.clear()}has(t){return this.driver.hasItem(t)}},...q,modal:R,toast:z,offcanvas:V,theme:U,tabs:X,accordion:G,drop:K,tooltip:tt,validator:it,parabola:class{constructor(t){this.options=Object.assign({ball:{color:"var(--primary, #3e63dd)",size:"10px"},from:null,to:null,direction:"center",showDelay:0,hideDelay:0,onShow:null,onHidden:null},t),this.m(this.options),this.l(this.options)}m(t){const{ball:e,from:i,to:s,direction:n,showDelay:o,hideDelay:r,onShow:a,onHidden:h}=t;m("ball",e,"object",[{test:t=>"object"==typeof t&&2===Object.keys(t).length&&"string"==typeof t.color&&"string"==typeof t.size,message:'ball expects an object with two string properties: "color" and "size".'}]),m("from",i,["HTMLElement","string"]),m("to",s,["HTMLElement","string"]),m("direction",n,"string",[{test:t=>["center","top-right","top-left","bottom-right","bottom-left"].includes(t),message:"direction expects one of [center, top-right, top-left, bottom-right, bottom-left]"}]),m("showDelay",o,"number"),m("hideDelay",r,"number"),m("onShow",a,["function","null"]),m("onHide",h,["function","null"])}l(t){if(this.hidden=!1,this.re=null,this.ae=null,this.he=null,this.le=null,this.hidden)return;const e=C(t.from),i=C(t.to);if(!e||!i)throw this.destroy(),new Error("Parabola: from or to element not found.");this.ce(t)}ce(t){if(this.hidden||this.re)return;const{color:e,size:i}=t.ball;this.re=E("div",{className:"parabola-ball",style:{backgroundColor:e,width:i,height:i,position:"fixed",borderRadius:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none",zIndex:"9999",opacity:"1"}}),document.body.appendChild(this.re)}de(t){var e,i;const s=null==(e=C(t.from))?void 0:e.getBoundingClientRect(),n=null==(i=C(t.to))?void 0:i.getBoundingClientRect();if(!s||!n)return null;const{left:o,top:r,width:a,height:h}=s,{left:l,top:c,width:d,height:u}=n;let m,f;switch(t.direction){case"top-left":m=o+.2*a,f=r+.2*h;break;case"top-right":m=o+.8*a,f=r+.2*h;break;case"bottom-left":m=o+.2*a,f=r+.8*h;break;case"bottom-right":m=o+.8*a,f=r+.8*h;break;default:m=o+a/2,f=r+h/2}return{startX:m,startY:f,endX:l+d/2,endY:c+u/2}}ue(t){return 1-(1-t)**3}me(t,e,i,s,n=800){if(this.hidden)return;const o=performance.now(),r=i-t,a=s-e,h=i=>{if(this.hidden)return;const s=i-o,l=Math.min(s/n,1),c=this.ue(l),d=t+r*c,u=e+-100*Math.sin(Math.PI*c)+a*c,m=1-l;this.re.style.left=`${d}px`,this.re.style.top=`${u}px`,this.re.style.opacity=`${m}`,this.re.style.transform=`translate(-50%, -50%) scale(${1-.3*c})`,l<1?this.ae=requestAnimationFrame(h):this.destroy()};this.ae=requestAnimationFrame(h)}async show(){return!this.hidden&&new Promise(t=>{this.he=setTimeout(()=>{if(this.hidden)return void t(!1);const e=this.de(this.options);if(!e)return this.destroy(),void t(!1);this.re.style.left=`${e.startX}px`,this.re.style.top=`${e.startY}px`,this.options.onShow&&this.options.onShow(),this.me(e.startX,e.startY,e.endX,e.endY),t(!0)},this.options.showDelay)})}destroy(){var t;(null==(t=this.re)?void 0:t.parentNode)&&this.re.parentNode.removeChild(this.re),this.he&&clearTimeout(this.he),this.le&&clearTimeout(this.le),this.ae&&cancelAnimationFrame(this.ae),this.re=null,this.hidden=!0,this.options.onHidden&&this.options.onHidden()}start(){return this.show()}}};export{st as default};
|
package/dist/jui.min.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer color,theme,base,layout,icon,components,utilities,status;@layer color{:root,.light,.light-theme{--white: #ffffff;--black: #000000;--gray-1: #fcfcfd;--gray-2: #f9f9fb;--gray-3: #eff0f3;--gray-4: #e7e8ec;--gray-5: #e0e1e6;--gray-6: #d8d9e0;--gray-7: #cdced7;--gray-8: #b9bbc6;--gray-9: #8b8d98;--gray-10: #80828d;--gray-11: #62636c;--gray-12: #1e1f24;--gray-a1: #00005503;--gray-a2: #00005506;--gray-a3: #00104010;--gray-a4: #000b3618;--gray-a5: #0009321f;--gray-a6: #00073527;--gray-a7: #00063332;--gray-a8: #00083046;--gray-a9: #00051d74;--gray-a10: #00051b7f;--gray-a11: #0002119d;--gray-a12: #000107e1;--gray-contrast: #ffffff;--gray-surface: #ffffffcc;--gray-indicator: #8b8d98;--gray-track: #8b8d98;--olive-1: #fcfdfc;--olive-2: #f8faf8;--olive-3: #eff1ef;--olive-4: #e7e9e6;--olive-5: #e0e2df;--olive-6: #d7dad6;--olive-7: #cccfcb;--olive-8: #b9bcb8;--olive-9: #898e87;--olive-10: #7d827b;--olive-11: #60655e;--olive-12: #1d211c;--olive-a1: #00550003;--olive-a2: #00490007;--olive-a3: #00200010;--olive-a4: #0b1f0019;--olive-a5: #08180020;--olive-a6: #07190029;--olive-a7: #05140034;--olive-a8: #040f0047;--olive-a9: #050f0078;--olive-a10: #040e0084;--olive-a11: #030b00a1;--olive-a12: #010600e3;--olive-contrast: #fff;--olive-surface: #f6f9f6cc;--olive-indicator: #898e87;--olive-track: #898e87;--tomato-1: #fffcfc;--tomato-2: #fff8f7;--tomato-3: #feebe7;--tomato-4: #ffdcd3;--tomato-5: #ffcdc1;--tomato-6: #fdbdae;--tomato-7: #f5a997;--tomato-8: #ec8f7a;--tomato-9: #e54d2e;--tomato-10: #d73d1d;--tomato-11: #cf3716;--tomato-12: #5c281c;--tomato-a1: #ff000003;--tomato-a2: #ff200008;--tomato-a3: #f52b0018;--tomato-a4: #ff35002c;--tomato-a5: #ff32003e;--tomato-a6: #f9300051;--tomato-a7: #e72d0068;--tomato-a8: #db290085;--tomato-a9: #df2600d1;--tomato-a10: #d22400e2;--tomato-a11: #cb2400e9;--tomato-a12: #480e00e3;--tomato-contrast: #fff;--tomato-surface: #fff6f5cc;--tomato-indicator: #e54d2e;--tomato-track: #e54d2e;--ruby-1: #fffcfc;--ruby-2: #fff7f8;--ruby-3: #feeaeb;--ruby-4: #ffdcdf;--ruby-5: #ffcfd2;--ruby-6: #f8bfc4;--ruby-7: #f0acb2;--ruby-8: #e6939b;--ruby-9: #e54666;--ruby-10: #d7365a;--ruby-11: #c8274f;--ruby-12: #651727;--ruby-a1: #ff000003;--ruby-a2: #ff002008;--ruby-a3: #f3000d15;--ruby-a4: #ff001623;--ruby-a5: #ff001030;--ruby-a6: #e4001440;--ruby-a7: #d1001353;--ruby-a8: #c400136c;--ruby-a9: #db002cb9;--ruby-a10: #cc002ec9;--ruby-a11: #be002fd8;--ruby-a12: #560012e8;--ruby-contrast: #fff;--ruby-surface: #fff5f6cc;--ruby-indicator: #e54666;--ruby-track: #e54666;--pink-1: #fffcfe;--pink-2: #fff7fb;--pink-3: #ffe9f4;--pink-4: #fcdcec;--pink-5: #f8cee3;--pink-6: #f1bed9;--pink-7: #e9abcc;--pink-8: #e093bd;--pink-9: #d6409f;--pink-10: #c73192;--pink-11: #c02a8c;--pink-12: #651248;--pink-a1: #ff00aa03;--pink-a2: #ff008008;--pink-a3: #ff008016;--pink-a4: #ea007523;--pink-a5: #db006e31;--pink-a6: #c9006a41;--pink-a7: #bd006554;--pink-a8: #b600646c;--pink-a9: #c8007fbf;--pink-a10: #ba0078ce;--pink-a11: #b40075d5;--pink-a12: #59003aed;--pink-contrast: #fff;--pink-surface: #fff5facc;--pink-indicator: #d6409f;--pink-track: #d6409f;--violet-1: #fcfcfe;--violet-2: #f9f9ff;--violet-3: #f2f1ff;--violet-4: #e7e6ff;--violet-5: #dddaff;--violet-6: #cfcbff;--violet-7: #bcb7f7;--violet-8: #a49bee;--violet-9: #6e56cf;--violet-10: #614cb5;--violet-11: #6450ba;--violet-12: #30265f;--violet-a1: #0000aa03;--violet-a2: #0000ff06;--violet-a3: #1300ff0e;--violet-a4: #0b00ff19;--violet-a5: #1500ff25;--violet-a6: #1400ff34;--violet-a7: #1200e348;--violet-a8: #1700d464;--violet-a9: #2400b7a9;--violet-a10: #1e0096b3;--violet-a11: #1d009baf;--violet-a12: #0c0043d9;--violet-contrast: #fff;--violet-surface: #f8f8ffcc;--violet-indicator: #6e56cf;--violet-track: #6e56cf;--indigo-1: #fdfdfe;--indigo-2: #f7f9ff;--indigo-3: #edf2fe;--indigo-4: #dfeaff;--indigo-5: #d0dfff;--indigo-6: #bdd1ff;--indigo-7: #a7bff9;--indigo-8: #88a5ef;--indigo-9: #3e63dd;--indigo-10: #3657c3;--indigo-11: #3a5bc7;--indigo-12: #1d2d5c;--indigo-a1: #00008002;--indigo-a2: #0040ff08;--indigo-a3: #0047f112;--indigo-a4: #0058ff20;--indigo-a5: #0052ff2f;--indigo-a6: #004eff42;--indigo-a7: #0046ee58;--indigo-a8: #003fdd77;--indigo-a9: #0031d2c1;--indigo-a10: #002ab3c9;--indigo-a11: #002bb7c5;--indigo-a12: #001247e2;--indigo-contrast: #fff;--indigo-surface: #f5f8ffcc;--indigo-indicator: #3e63dd;--indigo-track: #3e63dd;--blue-1: #fbfdff;--blue-2: #f4faff;--blue-3: #e9f3ff;--blue-4: #d9edff;--blue-5: #c7e3ff;--blue-6: #b2d6ff;--blue-7: #97c5f9;--blue-8: #6eadf3;--blue-9: #0090ff;--blue-10: #0084ec;--blue-11: #0073dd;--blue-12: #003463;--blue-a1: #0080ff04;--blue-a2: #008cff0b;--blue-a3: #0074ff16;--blue-a4: #0087ff26;--blue-a5: #0080ff38;--blue-a6: #0078ff4d;--blue-a7: #0071f168;--blue-a8: #006fea91;--blue-a9: #0090ff;--blue-a10: #0084ec;--blue-a11: #0073dd;--blue-a12: #003463;--blue-contrast: #fff;--blue-surface: #f1f9ffcc;--blue-indicator: #0090ff;--blue-track: #0090ff;--teal-1: #fafefd;--teal-2: #f3fbf9;--teal-3: #dff8f3;--teal-4: #ccf3eb;--teal-5: #b7ebe1;--teal-6: #a1ded3;--teal-7: #83cdc0;--teal-8: #54b9a9;--teal-9: #12a594;--teal-10: #009888;--teal-11: #008071;--teal-12: #0f3d36;--teal-a1: #00cc9905;--teal-a2: #00aa800c;--teal-a3: #00c8a020;--teal-a4: #00c39b33;--teal-a5: #00b99548;--teal-a6: #00a6885e;--teal-a7: #00997e7c;--teal-a8: #00977fab;--teal-a9: #009e8ced;--teal-a10: #009888;--teal-a11: #008071;--teal-a12: #003129f0;--teal-contrast: #fff;--teal-surface: #f0faf8cc;--teal-indicator: #12a594;--teal-track: #12a594;--grass-1: #fbfefb;--grass-2: #f5fbf6;--grass-3: #e8f7e9;--grass-4: #daf0db;--grass-5: #c8e9cb;--grass-6: #b2deb6;--grass-7: #94ce9a;--grass-8: #67b973;--grass-9: #46a758;--grass-10: #3d9a4f;--grass-11: #297e3b;--grass-12: #213c24;--grass-a1: #00c00004;--grass-a2: #00991a0a;--grass-a3: #00a70c17;--grass-a4: #00980725;--grass-a5: #00990e37;--grass-a6: #00920e4d;--grass-a7: #018b0f6b;--grass-a8: #008a1498;--grass-a9: #008619b9;--grass-a10: #007a18c2;--grass-a11: #006516d6;--grass-a12: #001f04de;--grass-contrast: #fff;--grass-surface: #f3faf4cc;--grass-indicator: #46a758;--grass-track: #46a758;--mint-1: #f9fefd;--mint-2: #f2fbf9;--mint-3: #ddf9f1;--mint-4: #c8f4e9;--mint-5: #b3ecde;--mint-6: #9ce0d0;--mint-7: #7ecfbd;--mint-8: #4bbba5;--mint-9: #86ead4;--mint-10: #7ce0ca;--mint-11: #007867;--mint-12: #17433a;--mint-a1: #00d5aa06;--mint-a2: #00b18a0d;--mint-a3: #00d29622;--mint-a4: #00cc9937;--mint-a5: #00c0914c;--mint-a6: #00b08663;--mint-a7: #00a17d81;--mint-a8: #009f80b4;--mint-a9: #00d3a579;--mint-a10: #00c39883;--mint-a11: #007867;--mint-a12: #003027e8;--mint-contrast: #062822;--mint-surface: #effaf8cc;--mint-indicator: #86ead4;--mint-track: #86ead4;--lime-1: #fcfdfa;--lime-2: #f7faf3;--lime-3: #eaf7d8;--lime-4: #ddf2c0;--lime-5: #cfe8a9;--lime-6: #bedb93;--lime-7: #aac979;--lime-8: #91b551;--lime-9: #bdee63;--lime-10: #b1e54a;--lime-11: #5f7b2c;--lime-12: #34411e;--lime-a1: #66990005;--lime-a2: #5595000c;--lime-a3: #76cb0027;--lime-a4: #76cb003f;--lime-a5: #71bb0056;--lime-a6: #66aa006c;--lime-a7: #5e990086;--lime-a8: #5e9300ae;--lime-a9: #93e4009c;--lime-a10: #91db00b5;--lime-a11: #3e6000d3;--lime-a12: #192800e1;--lime-contrast: #1d250f;--lime-surface: #f5f9f0cc;--lime-indicator: #bdee63;--lime-track: #bdee63;--yellow-1: #fdfdfa;--yellow-2: #fefceb;--yellow-3: #fff9bf;--yellow-4: #fef29f;--yellow-5: #f8e981;--yellow-6: #e9da79;--yellow-7: #d8cb75;--yellow-8: #c4b54f;--yellow-9: #ffe62a;--yellow-10: #f3dd45;--yellow-11: #897a00;--yellow-12: #413d23;--yellow-a1: #99990005;--yellow-a2: #f3d90014;--yellow-a3: #ffe80040;--yellow-a4: #fddd0060;--yellow-a5: #f1d3007e;--yellow-a6: #d6b90086;--yellow-a7: #b79f008a;--yellow-a8: #aa9400b0;--yellow-a9: #ffe100d5;--yellow-a10: #efd100ba;--yellow-a11: #897a00;--yellow-a12: #231e00dc;--yellow-contrast: #262209;--yellow-surface: #fefbe6cc;--yellow-indicator: #ffe62a;--yellow-track: #ffe62a;--orange-1: #fefcfb;--orange-2: #fff5f0;--orange-3: #ffeadd;--orange-4: #ffd7c0;--orange-5: #ffcaac;--orange-6: #ffba95;--orange-7: #fca882;--orange-8: #f19063;--orange-9: #f76b15;--orange-10: #eb5d00;--orange-11: #d24d00;--orange-12: #572e1a;--orange-a1: #c0400004;--orange-a2: #ff55000f;--orange-a3: #ff620022;--orange-a4: #ff5e003f;--orange-a5: #ff5d0053;--orange-a6: #ff5a016a;--orange-a7: #f94e007d;--orange-a8: #e84a009c;--orange-a9: #f65e00ea;--orange-a10: #eb5d00;--orange-a11: #d24d00;--orange-a12: #441600e5;--orange-contrast: #fff;--orange-surface: #fff3eccc;--orange-indicator: #f76b15;--orange-track: #f76b15;--gold-1: #fdfdfc;--gold-2: #fbf9f7;--gold-3: #f3efea;--gold-4: #ece7de;--gold-5: #e5ded2;--gold-6: #ded3c4;--gold-7: #d4c5b0;--gold-8: #c3b093;--gold-9: #978365;--gold-10: #89775c;--gold-11: #71634e;--gold-12: #302c26;--gold-a1: #55550003;--gold-a2: #80400008;--gold-a3: #6e3d0015;--gold-a4: #6d460021;--gold-a5: #6c44002d;--gold-a6: #7141013b;--gold-a7: #7544004f;--gold-a8: #7245006c;--gold-a9: #5332009a;--gold-a10: #472b00a3;--gold-a11: #331e00b1;--gold-a12: #0c0700d9;--gold-contrast: #fff;--gold-surface: #faf8f5cc;--gold-indicator: #978365;--gold-track: #978365;--red-1: #fffcfc;--red-2: #fff7f7;--red-3: #ffebea;--red-4: #ffdcd9;--red-5: #ffcdca;--red-6: #febdb9;--red-7: #f5a9a5;--red-8: #eb8f8b;--red-9: #e5484d;--red-10: #d73840;--red-11: #cc2e39;--red-12: #64181b;--red-a1: #ff000003;--red-a2: #ff000008;--red-a3: #ff0d0015;--red-a4: #ff150026;--red-a5: #ff0f0035;--red-a6: #fc0f0046;--red-a7: #e30c015a;--red-a8: #d4090074;--red-a9: #db0007b7;--red-a10: #cc000ac7;--red-a11: #c1000ed1;--red-a12: #540003e7;--red-contrast: #fff;--red-surface: #fff5f5cc;--red-indicator: #e5484d;--red-track: #e5484d;--green-1: #fbfefc;--green-2: #f4fbf7;--green-3: #e5f6eb;--green-4: #d6f1df;--green-5: #c4e8d1;--green-6: #adddc0;--green-7: #8fcea8;--green-8: #60b887;--green-9: #30a46c;--green-10: #289662;--green-11: #00814c;--green-12: #1d3b2a;--green-a1: #00c04004;--green-a2: #00a3460b;--green-a3: #00a73b1a;--green-a4: #00a83829;--green-a5: #019c393b;--green-a6: #00963c52;--green-a7: #00903970;--green-a8: #008d3f9f;--green-a9: #008f4acf;--green-a10: #008345d7;--green-a11: #00814c;--green-a12: #00220fe2;--green-contrast: #fff;--green-surface: #f1faf5cc;--green-indicator: #30a46c;--green-track: #30a46c;--amber-1: #fefdfb;--amber-2: #fffaea;--amber-3: #fff2c3;--amber-4: #ffe9a0;--amber-5: #ffde7f;--amber-6: #fcd27a;--amber-7: #e9c16e;--amber-8: #d7a944;--amber-9: #ffca2f;--amber-10: #fac137;--amber-11: #9b6f00;--amber-12: #463a20;--amber-a1: #c0800004;--amber-a2: #ffc30015;--amber-a3: #ffc8003c;--amber-a4: #ffc4005f;--amber-a5: #ffbe0080;--amber-a6: #faa90085;--amber-a7: #d9920091;--amber-a8: #c98a00bb;--amber-a9: #ffbe00d0;--amber-a10: #f9b000c8;--amber-a11: #9b6f00;--amber-a12: #2c1e00df;--amber-contrast: #2b2009;--amber-surface: #fff9e5cc;--amber-indicator: #ffca2f;--amber-track: #ffca2f}@supports (color: color(display-p3 1 1 1)){@media(color-gamut:p3){:root,.light,.light-theme{--gray-1: oklch(99.1% .0015 277.7);--gray-2: oklch(98.2% .003 277.7);--gray-3: oklch(95.6% .0045 277.7);--gray-4: oklch(93.1% .0061 277.7);--gray-5: oklch(91% .0077 277.7);--gray-6: oklch(88.8% .0093 277.7);--gray-7: oklch(85.3% .0117 277.7);--gray-8: oklch(79.4% .016 277.7);--gray-9: oklch(64.6% .0165 277.7);--gray-10: oklch(61% .0161 277.7);--gray-11: oklch(50.3% .0139 277.7);--gray-12: oklch(24.1% .0099 277.7);--gray-a1: color(display-p3 .0235 .0235 .349 / .012);--gray-a2: color(display-p3 .0235 .0235 .349 / .024);--gray-a3: color(display-p3 .0078 .0667 .2549 / .063);--gray-a4: color(display-p3 .0118 .051 .2157 / .095);--gray-a5: color(display-p3 .0039 .0392 .2 / .122);--gray-a6: color(display-p3 .0039 .0275 .1804 / .153);--gray-a7: color(display-p3 .0078 .0275 .1843 / .197);--gray-a8: color(display-p3 .0039 .0314 .1765 / .275);--gray-a9: color(display-p3 .0039 .0196 .1059 / .455);--gray-a10: color(display-p3 .0039 .0196 .098 / .499);--gray-a11: color(display-p3 0 .0078 .0588 / .616);--gray-a12: color(display-p3 0 .0039 .0275 / .883);--gray-contrast: #ffffff;--gray-surface: color(display-p3 1 1 1 / 80%);--gray-indicator: oklch(64.6% .0165 277.7);--gray-track: oklch(64.6% .0165 277.7);--olive-1: oklch(99.3% .0016 136.6);--olive-2: oklch(98.3% .0034 136.6);--olive-3: oklch(95.6% .0037 136.6);--olive-4: oklch(93.2% .0043 136.6);--olive-5: oklch(90.9% .0046 136.6);--olive-6: oklch(88.6% .0057 136.6);--olive-7: oklch(85.2% .0058 136.6);--olive-8: oklch(79.2% .0073 136.6);--olive-9: oklch(64% .0118 136.6);--olive-10: oklch(60% .012 136.6);--olive-11: oklch(50% .0114 136.6);--olive-12: oklch(24.2% .0115 136.6);--olive-a1: color(display-p3 .0235 .349 .0235 / .012);--olive-a2: color(display-p3 .0235 .302 .0235 / .028);--olive-a3: color(display-p3 .0078 .1294 .0078 / .063);--olive-a4: color(display-p3 .051 .1294 .0118 / .099);--olive-a5: color(display-p3 .0353 .098 .0078 / .126);--olive-a6: color(display-p3 .051 .102 .0039 / .161);--olive-a7: color(display-p3 .0392 .0784 .0039 / .204);--olive-a8: color(display-p3 .0314 .0588 .0039 / .279);--olive-a9: color(display-p3 .0196 .051 .0039 / .467);--olive-a10: color(display-p3 .0157 .0471 0 / .514);--olive-a11: color(display-p3 .0118 .0392 0 / .628);--olive-a12: color(display-p3 .0078 .0235 0 / .891);--olive-contrast: #fff;--olive-surface: color(display-p3 .9725 .9765 .9647 / .8);--olive-indicator: oklch(64% .0118 136.6);--olive-track: oklch(64% .0118 136.6);--tomato-1: oklch(99.4% .0031 33.34);--tomato-2: oklch(98.4% .0071 33.34);--tomato-3: oklch(95.4% .022 33.34);--tomato-4: oklch(92.6% .0471 33.34);--tomato-5: oklch(89.2% .0626 33.34);--tomato-6: oklch(85.2% .0769 33.34);--tomato-7: oklch(80.3% .0942 33.34);--tomato-8: oklch(74.1% .1181 33.34);--tomato-9: oklch(62.7% .1936 33.34);--tomato-10: oklch(58.6% .1951 33.34);--tomato-11: oklch(56.7% .1936 33.34);--tomato-12: oklch(34.6% .0798 33.34);--tomato-a1: color(display-p3 .6745 .0235 .0235 / .012);--tomato-a2: color(display-p3 .8784 .1451 .0196 / .032);--tomato-a3: color(display-p3 .8314 .1843 .0118 / .091);--tomato-a4: color(display-p3 .8588 .1922 .0039 / .165);--tomato-a5: color(display-p3 .8706 .2039 .0039 / .236);--tomato-a6: color(display-p3 .8471 .1961 .0039 / .306);--tomato-a7: color(display-p3 .7922 .1725 .0039 / .393);--tomato-a8: color(display-p3 .7529 .1569 0 / .502);--tomato-a9: color(display-p3 .7804 .149 0 / .769);--tomato-a10: color(display-p3 .7294 .1373 0 / .824);--tomato-a11: color(display-p3 .702 .1333 0 / .848);--tomato-a12: color(display-p3 .2431 .0549 0 / .879);--tomato-contrast: #fff;--tomato-surface: color(display-p3 .9922 .9647 .9608 / .8);--tomato-indicator: oklch(62.7% .1936 33.34);--tomato-track: oklch(62.7% .1936 33.34);--ruby-1: oklch(99.4% .0033 13.15);--ruby-2: oklch(98.3% .0084 13.15);--ruby-3: oklch(95.4% .0222 13.15);--ruby-4: oklch(92.8% .0422 13.15);--ruby-5: oklch(89.6% .0548 13.15);--ruby-6: oklch(85.8% .066 13.15);--ruby-7: oklch(81% .0796 13.15);--ruby-8: oklch(74.9% .1013 13.15);--ruby-9: oklch(62.8% .1949 13.15);--ruby-10: oklch(58.7% .196 13.15);--ruby-11: oklch(54.9% .1949 13.15);--ruby-12: oklch(34.1% .1096 13.15);--ruby-a1: color(display-p3 .6745 .0235 .0235 / .012);--ruby-a2: color(display-p3 .8784 .0196 .1451 / .032);--ruby-a3: color(display-p3 .8039 .0078 .0078 / .079);--ruby-a4: color(display-p3 .8275 .0078 .0667 / .134);--ruby-a5: color(display-p3 .8275 .0039 .0471 / .181);--ruby-a6: color(display-p3 .7451 .0039 .0706 / .244);--ruby-a7: color(display-p3 .6902 .0039 .051 / .314);--ruby-a8: color(display-p3 .6471 .0039 .051 / .408);--ruby-a9: color(display-p3 .7529 0 .1294 / .679);--ruby-a10: color(display-p3 .6941 0 .1294 / .734);--ruby-a11: color(display-p3 .6431 0 .1294 / .785);--ruby-a12: color(display-p3 .2824 0 .0471 / .887);--ruby-contrast: #fff;--ruby-surface: color(display-p3 .9961 .9608 .9647 / .8);--ruby-indicator: oklch(62.8% .1949 13.15);--ruby-track: oklch(62.8% .1949 13.15);--pink-1: oklch(99.4% .004 346);--pink-2: oklch(98.3% .0094 346);--pink-3: oklch(95.4% .0275 346);--pink-4: oklch(92.5% .0416 346);--pink-5: oklch(89.3% .0542 346);--pink-6: oklch(85.5% .0668 346);--pink-7: oklch(80.9% .0833 346);--pink-8: oklch(75.2% .1067 346);--pink-9: oklch(61.7% .2076 346);--pink-10: oklch(57.5% .2062 346);--pink-11: oklch(55.7% .2062 346);--pink-12: oklch(35% .129 346);--pink-a1: color(display-p3 .6745 .0235 .6745 / .012);--pink-a2: color(display-p3 .8784 .0196 .5098 / .032);--pink-a3: color(display-p3 .8118 .0078 .4353 / .083);--pink-a4: color(display-p3 .7686 .0078 .4157 / .134);--pink-a5: color(display-p3 .7059 .0039 .3882 / .185);--pink-a6: color(display-p3 .6549 .0039 .3843 / .248);--pink-a7: color(display-p3 .6196 .0039 .349 / .318);--pink-a8: color(display-p3 .6039 .0039 .3529 / .412);--pink-a9: color(display-p3 .6824 0 .4471 / .702);--pink-a10: color(display-p3 .6275 0 .4196 / .757);--pink-a11: color(display-p3 .6078 0 .4078 / .781);--pink-a12: color(display-p3 .2863 0 .1922 / .899);--pink-contrast: #fff;--pink-surface: color(display-p3 .9922 .9608 .9765 / .8);--pink-indicator: oklch(61.7% .2076 346);--pink-track: oklch(61.7% .2076 346);--violet-1: oklch(99.2% .0028 288);--violet-2: oklch(98.3% .009 288);--violet-3: oklch(96.3% .0189 288);--violet-4: oklch(93.4% .0392 288);--violet-5: oklch(90.4% .0569 288);--violet-6: oklch(86.4% .0725 288);--violet-7: oklch(80.6% .0903 288);--violet-8: oklch(72.9% .119 288);--violet-9: oklch(54.2% .179 288);--violet-10: oklch(49.5% .1593 288);--violet-11: oklch(50.8% .1593 288);--violet-12: oklch(31.3% .0976 288);--violet-a1: color(display-p3 .0235 .0235 .6745 / .012);--violet-a2: color(display-p3 .0235 .0235 .8392 / .024);--violet-a3: color(display-p3 .0745 .0039 .9294 / .055);--violet-a4: color(display-p3 .051 .0118 .9216 / .099);--violet-a5: color(display-p3 .0627 .0078 .9216 / .146);--violet-a6: color(display-p3 .0588 .0039 .9255 / .204);--violet-a7: color(display-p3 .0588 .0039 .8235 / .283);--violet-a8: color(display-p3 .0745 .0039 .7725 / .393);--violet-a9: color(display-p3 .1137 0 .6745 / .659);--violet-a10: color(display-p3 .098 0 .549 / .699);--violet-a11: color(display-p3 .0941 0 .5686 / .683);--violet-a12: color(display-p3 .0353 0 .251 / .851);--violet-contrast: #fff;--violet-surface: color(display-p3 .9725 .9725 1 / .8);--violet-indicator: oklch(54.2% .179 288);--violet-track: oklch(54.2% .179 288);--indigo-1: oklch(99.4% .0015 267);--indigo-2: oklch(98.3% .008 267);--indigo-3: oklch(96.1% .0172 267);--indigo-4: oklch(93.5% .0338 267);--indigo-5: oklch(90.3% .0511 267);--indigo-6: oklch(86.3% .0713 267);--indigo-7: oklch(80.7% .0868 267);--indigo-8: oklch(73% .1132 267);--indigo-9: oklch(54.4% .191 267);--indigo-10: oklch(49.7% .1727 267);--indigo-11: oklch(51% .1727 267);--indigo-12: oklch(31.3% .0855 267);--indigo-a1: color(display-p3 .0196 .0196 .5098 / .008);--indigo-a2: color(display-p3 .0196 .2667 .8784 / .032);--indigo-a3: color(display-p3 .0078 .2392 .8863 / .067);--indigo-a4: color(display-p3 .0039 .3059 .9373 / .118);--indigo-a5: color(display-p3 .0039 .2784 .9333 / .173);--indigo-a6: color(display-p3 .0039 .2471 .9373 / .244);--indigo-a7: color(display-p3 .0039 .2196 .8706 / .326);--indigo-a8: color(display-p3 .0039 .1961 .8078 / .444);--indigo-a9: color(display-p3 0 .1529 .7725 / .726);--indigo-a10: color(display-p3 0 .1294 .6549 / .761);--indigo-a11: color(display-p3 0 .1333 .6667 / .746);--indigo-a12: color(display-p3 0 .0588 .2549 / .875);--indigo-contrast: #fff;--indigo-surface: color(display-p3 .9608 .9725 1 / .8);--indigo-indicator: oklch(54.4% .191 267);--indigo-track: oklch(54.4% .191 267);--blue-1: oklch(99.3% .0033 251.8);--blue-2: oklch(98.2% .0096 251.8);--blue-3: oklch(96% .0199 251.8);--blue-4: oklch(93.7% .0371 251.8);--blue-5: oklch(90.6% .0535 251.8);--blue-6: oklch(86.4% .0686 251.8);--blue-7: oklch(80.9% .0884 251.8);--blue-8: oklch(73.5% .1211 251.8);--blue-9: oklch(64.9% .193 251.8);--blue-10: oklch(60.9% .1837 251.8);--blue-11: oklch(55.8% .1889 251.8);--blue-12: oklch(32.4% .0965 251.8);--blue-a1: color(display-p3 .0235 .5137 1 / .016);--blue-a2: color(display-p3 .0235 .5137 .9059 / .04);--blue-a3: color(display-p3 .0078 .4078 .9529 / .079);--blue-a4: color(display-p3 .0078 .4471 .9451 / .134);--blue-a5: color(display-p3 0 .4314 .9412 / .2);--blue-a6: color(display-p3 .0039 .4039 .9451 / .275);--blue-a7: color(display-p3 .0039 .3804 .8863 / .373);--blue-a8: color(display-p3 0 .3608 .8627 / .514);--blue-a9: color(display-p3 0 .4118 .9608 / .753);--blue-a10: color(display-p3 0 .3686 .8706 / .777);--blue-a11: color(display-p3 0 .3098 .8 / .808);--blue-a12: color(display-p3 0 .1412 .3294 / .93);--blue-contrast: #fff;--blue-surface: color(display-p3 .9529 .9765 1 / .8);--blue-indicator: oklch(64.9% .193 251.8);--blue-track: oklch(64.9% .193 251.8);--teal-1: oklch(99.4% .0047 182);--teal-2: oklch(98.1% .009 182);--teal-3: oklch(96.1% .027 182);--teal-4: oklch(93.5% .0419 182);--teal-5: oklch(90% .0542 182);--teal-6: oklch(85.6% .0643 182);--teal-7: oklch(79.7% .0764 182);--teal-8: oklch(72.1% .0973 182);--teal-9: oklch(64.9% .1136 182);--teal-10: oklch(60.9% .1097 182);--teal-11: oklch(53% .1136 182);--teal-12: oklch(32.7% .0505 182);--teal-a1: color(display-p3 .0235 .7569 .5137 / .016);--teal-a2: color(display-p3 .0196 .6471 .4667 / .044);--teal-a3: color(display-p3 .0039 .7059 .5569 / .106);--teal-a4: color(display-p3 .0039 .702 .5373 / .169);--teal-a5: color(display-p3 .0039 .6588 .5098 / .24);--teal-a6: color(display-p3 .0039 .5686 .4588 / .318);--teal-a7: color(display-p3 .0039 .5176 .4118 / .42);--teal-a8: color(display-p3 0 .502 .4039 / .565);--teal-a9: color(display-p3 0 .4863 .4039 / .702);--teal-a10: color(display-p3 0 .4431 .3686 / .738);--teal-a11: color(display-p3 0 .3569 .2902 / .785);--teal-a12: color(display-p3 0 .1373 .1098 / .887);--teal-contrast: #fff;--teal-surface: color(display-p3 .9451 .9804 .9725 / .8);--teal-indicator: oklch(64.9% .1136 182);--teal-track: oklch(64.9% .1136 182);--grass-1: oklch(99.4% .0053 147.4);--grass-2: oklch(98.2% .0092 147.4);--grass-3: oklch(96.1% .0231 147.4);--grass-4: oklch(93.4% .037 147.4);--grass-5: oklch(90.1% .0529 147.4);--grass-6: oklch(85.8% .0713 147.4);--grass-7: oklch(79.8% .0949 147.4);--grass-8: oklch(71.6% .1299 147.4);--grass-9: oklch(65.1% .1468 147.4);--grass-10: oklch(61.1% .1415 147.4);--grass-11: oklch(52.7% .1296 147.4);--grass-12: oklch(32.7% .0534 147.4);--grass-a1: color(display-p3 .2667 .7569 .0235 / .016);--grass-a2: color(display-p3 .0235 .5647 .0235 / .036);--grass-a3: color(display-p3 .0588 .6235 .0078 / .083);--grass-a4: color(display-p3 .0353 .5333 .0078 / .134);--grass-a5: color(display-p3 .0275 .5451 .0078 / .197);--grass-a6: color(display-p3 .0314 .5176 .0039 / .275);--grass-a7: color(display-p3 .0235 .4784 .0039 / .381);--grass-a8: color(display-p3 .0078 .4588 0 / .522);--grass-a9: color(display-p3 .0078 .4353 0 / .624);--grass-a10: color(display-p3 0 .3882 0 / .659);--grass-a11: color(display-p3 0 .3059 .0078 / .742);--grass-a12: color(display-p3 .0039 .098 0 / .851);--grass-contrast: #fff;--grass-surface: color(display-p3 .9569 .9804 .9569 / .8);--grass-indicator: oklch(65.1% .1468 147.4);--grass-track: oklch(65.1% .1468 147.4);--mint-1: oklch(99.3% .0053 178);--mint-2: oklch(98.2% .0101 178);--mint-3: oklch(96% .0299 178);--mint-4: oklch(93.3% .047 178);--mint-5: oklch(89.9% .0609 178);--mint-6: oklch(85.6% .0719 178);--mint-7: oklch(79.8% .0849 178);--mint-8: oklch(72.2% .1067 178);--mint-9: oklch(87% .0999 178);--mint-10: oklch(83.9% .0998 178);--mint-11: oklch(51.2% .095 178);--mint-12: oklch(35% .0506 178);--mint-a1: color(display-p3 .0196 .8039 .6078 / .02);--mint-a2: color(display-p3 .0196 .6471 .4667 / .044);--mint-a3: color(display-p3 .0039 .7608 .5216 / .114);--mint-a4: color(display-p3 .0039 .7412 .5255 / .181);--mint-a5: color(display-p3 .0039 .6745 .4863 / .251);--mint-a6: color(display-p3 .0039 .6078 .4431 / .33);--mint-a7: color(display-p3 .0039 .549 .4118 / .432);--mint-a8: color(display-p3 0 .5294 .4 / .581);--mint-a9: color(display-p3 .0039 .7647 .5686 / .381);--mint-a10: color(display-p3 .0039 .6941 .5176 / .42);--mint-a11: color(display-p3 0 .3294 .2588 / .8);--mint-a12: color(display-p3 0 .1412 .1059 / .863);--mint-contrast: #062822;--mint-surface: color(display-p3 .9451 .9804 .9725 / .8);--mint-indicator: oklch(87% .0999 178);--mint-track: oklch(87% .0999 178);--lime-1: oklch(99.2% .0042 126.1);--lime-2: oklch(98.2% .0098 126.1);--lime-3: oklch(95.9% .0433 126.1);--lime-4: oklch(93.2% .0688 126.1);--lime-5: oklch(89.7% .087 126.1);--lime-6: oklch(85.3% .0993 126.1);--lime-7: oklch(79.5% .1106 126.1);--lime-8: oklch(72.4% .1346 126.1);--lime-9: oklch(88.8% .1747 126.1);--lime-10: oklch(85.7% .1875 126.1);--lime-11: oklch(54.4% .1112 126.1);--lime-12: oklch(35.4% .0573 126.1);--lime-a1: color(display-p3 .4118 .6078 .0196 / .02);--lime-a2: color(display-p3 .3765 .5569 .0196 / .044);--lime-a3: color(display-p3 .4784 .7804 .0078 / .142);--lime-a4: color(display-p3 .4863 .7608 .0039 / .228);--lime-a5: color(display-p3 .4667 .702 .0039 / .314);--lime-a6: color(display-p3 .4118 .6314 .0039 / .393);--lime-a7: color(display-p3 .3686 .5608 .0039 / .491);--lime-a8: color(display-p3 .3569 .5333 0 / .628);--lime-a9: color(display-p3 .5882 .8667 0 / .534);--lime-a10: color(display-p3 .5686 .8275 0 / .608);--lime-a11: color(display-p3 .2275 .3333 0 / .781);--lime-a12: color(display-p3 .0941 .1412 0 / .867);--lime-contrast: #1d250f;--lime-surface: color(display-p3 .9647 .9765 .9451 / .8);--lime-indicator: oklch(88.8% .1747 126.1);--lime-track: oklch(88.8% .1747 126.1);--yellow-1: oklch(99.3% .0044 100.9);--yellow-2: oklch(98.8% .0224 100.9);--yellow-3: oklch(97.3% .0745 100.9);--yellow-4: oklch(95.2% .1037 100.9);--yellow-5: oklch(92.4% .126 100.9);--yellow-6: oklch(88.1% .1195 100.9);--yellow-7: oklch(83.5% .1083 100.9);--yellow-8: oklch(76.5% .1233 100.9);--yellow-9: oklch(91.9% .1838 100.9);--yellow-10: oklch(89% .1643 100.9);--yellow-11: oklch(57.4% .1231 100.9);--yellow-12: oklch(35.7% .041 100.9);--yellow-a1: color(display-p3 .6078 .6078 .0196 / .02);--yellow-a2: color(display-p3 .9451 .8353 .0078 / .071);--yellow-a3: color(display-p3 .9843 .898 .0039 / .228);--yellow-a4: color(display-p3 .9686 .851 .0039 / .338);--yellow-a5: color(display-p3 .9098 .8118 .0039 / .44);--yellow-a6: color(display-p3 .7961 .702 .0039 / .475);--yellow-a7: color(display-p3 .6784 .5922 .0039 / .499);--yellow-a8: color(display-p3 .6118 .5451 0 / .628);--yellow-a9: color(display-p3 .9765 .8588 0 / .659);--yellow-a10: color(display-p3 .898 .7922 0 / .616);--yellow-a11: color(display-p3 .4471 .3961 0 / .855);--yellow-a12: color(display-p3 .1216 .1059 0 / .851);--yellow-contrast: #262209;--yellow-surface: color(display-p3 .9961 .9843 .9137 / .8);--yellow-indicator: oklch(91.9% .1838 100.9);--yellow-track: oklch(91.9% .1838 100.9);--orange-1: oklch(99.2% .0026 45.02);--orange-2: oklch(97.9% .0153 45.02);--orange-3: oklch(95.8% .0368 45.02);--orange-4: oklch(92% .081 45.02);--orange-5: oklch(89% .1065 45.02);--orange-6: oklch(85.7% .1099 45.02);--orange-7: oklch(80.5% .1125 45.02);--orange-8: oklch(74.5% .132 45.02);--orange-9: oklch(69.1% .1909 45.02);--orange-10: oklch(65.3% .1943 45.02);--orange-11: oklch(59.2% .1859 45.02);--orange-12: oklch(35% .0686 45.02);--orange-a1: color(display-p3 .7569 .2667 .0235 / .016);--orange-a2: color(display-p3 .8588 .2902 .0039 / .055);--orange-a3: color(display-p3 .8784 .3804 .0078 / .126);--orange-a4: color(display-p3 .902 .3529 .0039 / .236);--orange-a5: color(display-p3 .902 .3569 .0039 / .31);--orange-a6: color(display-p3 .902 .3412 .0039 / .393);--orange-a7: color(display-p3 .8745 .298 .0039 / .463);--orange-a8: color(display-p3 .8157 .2784 0 / .577);--orange-a9: color(display-p3 .8784 .3137 0 / .8);--orange-a10: color(display-p3 .8275 .2863 0 / .84);--orange-a11: color(display-p3 .7294 .2353 0 / .867);--orange-a12: color(display-p3 .2275 .0784 0 / .883);--orange-contrast: #fff;--orange-surface: color(display-p3 1 .9569 .9333 / .8);--orange-indicator: oklch(69.1% .1909 45.02);--orange-track: oklch(69.1% .1909 45.02);--gold-1: oklch(99.4% .0012 77.7);--gold-2: oklch(98.3% .0038 77.7);--gold-3: oklch(95.5% .0081 77.7);--gold-4: oklch(92.9% .0128 77.7);--gold-5: oklch(90.2% .0178 77.7);--gold-6: oklch(87.2% .0242 77.7);--gold-7: oklch(83.1% .0329 77.7);--gold-8: oklch(76.5% .0447 77.7);--gold-9: oklch(62% .0492 77.7);--gold-10: oklch(57.9% .0453 77.7);--gold-11: oklch(50.6% .0361 77.7);--gold-12: oklch(29.5% .0126 77.7);--gold-a1: color(display-p3 .349 .349 .0235 / .012);--gold-a2: color(display-p3 .5098 .2667 .0196 / .032);--gold-a3: color(display-p3 .3569 .2078 .0078 / .079);--gold-a4: color(display-p3 .3804 .2549 .0078 / .126);--gold-a5: color(display-p3 .3882 .2549 .0039 / .173);--gold-a6: color(display-p3 .3882 .2314 .0039 / .224);--gold-a7: color(display-p3 .4039 .2627 .0039 / .302);--gold-a8: color(display-p3 .4039 .2588 .0039 / .412);--gold-a9: color(display-p3 .2863 .1804 0 / .589);--gold-a10: color(display-p3 .2431 .1569 0 / .628);--gold-a11: color(display-p3 .1765 .1137 0 / .687);--gold-a12: color(display-p3 .0392 .0235 0 / .848);--gold-contrast: #fff;--gold-surface: color(display-p3 .9804 .9725 .9608 / .8);--gold-indicator: oklch(62% .0492 77.7);--gold-track: oklch(62% .0492 77.7);--red-1: oklch(99.4% .0031 23.03);--red-2: oklch(98.3% .0083 23.03);--red-3: oklch(95.6% .021 23.03);--red-4: oklch(92.8% .0472 23.03);--red-5: oklch(89.6% .0619 23.03);--red-6: oklch(85.7% .0746 23.03);--red-7: oklch(80.7% .0894 23.03);--red-8: oklch(74.5% .1132 23.03);--red-9: oklch(62.6% .1933 23.03);--red-10: oklch(58.4% .1951 23.03);--red-11: oklch(55.7% .1933 23.03);--red-12: oklch(33.9% .109 23.03);--red-a1: color(display-p3 .6745 .0235 .0235 / .012);--red-a2: color(display-p3 .8784 .0196 .0196 / .032);--red-a3: color(display-p3 .8588 .1059 .0078 / .083);--red-a4: color(display-p3 .8392 .0902 .0078 / .146);--red-a5: color(display-p3 .8471 .0784 .0039 / .204);--red-a6: color(display-p3 .8392 .0784 .0039 / .267);--red-a7: color(display-p3 .7647 .0588 .0039 / .346);--red-a8: color(display-p3 .7098 .0471 .0039 / .444);--red-a9: color(display-p3 .749 .0078 0 / .675);--red-a10: color(display-p3 .6902 0 0 / .726);--red-a11: color(display-p3 .6549 0 .0118 / .761);--red-a12: color(display-p3 .2745 0 0 / .883);--red-contrast: #fff;--red-surface: color(display-p3 .9961 .9647 .9608 / .8);--red-indicator: oklch(62.6% .1933 23.03);--red-track: oklch(62.6% .1933 23.03);--green-1: oklch(99.4% .0043 157.7);--green-2: oklch(98.2% .0091 157.7);--green-3: oklch(95.9% .0229 157.7);--green-4: oklch(93.3% .0364 157.7);--green-5: oklch(90% .0497 157.7);--green-6: oklch(85.7% .0646 157.7);--green-7: oklch(79.8% .084 157.7);--green-8: oklch(71.4% .1125 157.7);--green-9: oklch(64.1% .1329 157.7);--green-10: oklch(60% .1265 157.7);--green-11: oklch(52.9% .1329 157.7);--green-12: oklch(32.2% .0475 157.7);--green-a1: color(display-p3 .0235 .6745 .0235 / .012);--green-a2: color(display-p3 .0235 .6118 .2196 / .04);--green-a3: color(display-p3 .0118 .5725 .1843 / .091);--green-a4: color(display-p3 .0078 .5882 .1451 / .142);--green-a5: color(display-p3 .0039 .5412 .1569 / .204);--green-a6: color(display-p3 .0039 .5176 .1569 / .283);--green-a7: color(display-p3 .0039 .4824 .1451 / .385);--green-a8: color(display-p3 0 .4667 .1529 / .538);--green-a9: color(display-p3 0 .4549 .1647 / .667);--green-a10: color(display-p3 0 .4039 .1451 / .702);--green-a11: color(display-p3 0 .3569 .1255 / .781);--green-a12: color(display-p3 0 .102 .0314 / .859);--green-contrast: #fff;--green-surface: color(display-p3 .9569 .9804 .9608 / .8);--green-indicator: oklch(64.1% .1329 157.7);--green-track: oklch(64.1% .1329 157.7);--amber-1: oklch(99.4% .003 84.13);--amber-2: oklch(98.7% .0224 84.13);--amber-3: oklch(97% .0664 84.13);--amber-4: oklch(94.7% .0987 84.13);--amber-5: oklch(92% .1245 84.13);--amber-6: oklch(88.1% .1162 84.13);--amber-7: oklch(82.9% .1122 84.13);--amber-8: oklch(76% .1284 84.13);--amber-9: oklch(87.1% .1683 84.13);--amber-10: oklch(84% .1572 84.13);--amber-11: oklch(57% .1307 84.13);--amber-12: oklch(35.3% .0431 84.13);--amber-a1: color(display-p3 .7569 .5137 .0235 / .016);--amber-a2: color(display-p3 .949 .7412 .0078 / .075);--amber-a3: color(display-p3 .9647 .7647 .0039 / .216);--amber-a4: color(display-p3 .9569 .7569 .0039 / .338);--amber-a5: color(display-p3 .9569 .7255 .0039 / .451);--amber-a6: color(display-p3 .9176 .6431 .0039 / .471);--amber-a7: color(display-p3 .7922 .549 0 / .522);--amber-a8: color(display-p3 .7216 .502 0 / .663);--amber-a9: color(display-p3 .9529 .702 0 / .675);--amber-a10: color(display-p3 .9176 .651 0 / .671);--amber-a11: color(display-p3 .5137 .3529 0 / .863);--amber-a12: color(display-p3 .1451 .102 0 / .859);--amber-contrast: #2b2009;--amber-surface: color(display-p3 1 .9765 .9098 / .8);--amber-indicator: oklch(87.1% .1683 84.13);--amber-track: oklch(87.1% .1683 84.13)}}}.dark,.dark-theme{--white: #000000;--black: #ffffff;--gray-1: #111113;--gray-2: #19191b;--gray-3: #222325;--gray-4: #292a2e;--gray-5: #303136;--gray-6: #393a40;--gray-7: #46484f;--gray-8: #5f606a;--gray-9: #6c6e79;--gray-10: #797b86;--gray-11: #b2b3bd;--gray-12: #eeeef0;--gray-a1: #1111bb03;--gray-a2: #cbcbf90b;--gray-a3: #d6e2f916;--gray-a4: #d1d9f920;--gray-a5: #d7ddfd28;--gray-a6: #d9defc33;--gray-a7: #dae2fd43;--gray-a8: #e0e3fd60;--gray-a9: #e0e4fd70;--gray-a10: #e3e7fd7e;--gray-a11: #eff0feb9;--gray-a12: #fdfdffef;--gray-contrast: #ffffff;--gray-surface: rgba(0, 0, 0, .05);--gray-indicator: #6c6e79;--gray-track: #6c6e79;--olive-1: #111113;--olive-2: #19191b;--olive-3: #232226;--olive-4: #2a292e;--olive-5: #323137;--olive-6: #3b3a41;--olive-7: #494851;--olive-8: #62606b;--olive-9: #8e8c99;--olive-10: #82808d;--olive-11: #b6b4bf;--olive-12: #ececf1;--olive-a1: #1111bb03;--olive-a2: #cbcbf90b;--olive-a3: #d9cefa17;--olive-a4: #d9d1f920;--olive-a5: #dfd9fe29;--olive-a6: #dfdafc34;--olive-a7: #e0ddfe45;--olive-a8: #e6e0fd61;--olive-a9: #ece8ff92;--olive-a10: #eae6ff85;--olive-a11: #f2effebb;--olive-a12: #fafafff0;--olive-contrast: #fff;--olive-surface: #21212580;--olive-indicator: #8e8c99;--olive-track: #8e8c99;--tomato-1: #160f0e;--tomato-2: #1e1512;--tomato-3: #381710;--tomato-4: #4e160b;--tomato-5: #5e1d10;--tomato-6: #6d2a1c;--tomato-7: #853b2b;--tomato-8: #ac4d39;--tomato-9: #e54d2e;--tomato-10: #d63e1f;--tomato-11: #ff9277;--tomato-12: #fbd3ca;--tomato-a1: #e6000006;--tomato-a2: #fe5a240e;--tomato-a3: #fe360b2a;--tomato-a4: #fd240042;--tomato-a5: #fe360e53;--tomato-a6: #fe522e63;--tomato-a7: #fd67467d;--tomato-a8: #fe6d4ea7;--tomato-a9: #fe5431e4;--tomato-a10: #fe4722d4;--tomato-a11: #ff9277;--tomato-a12: #ffd6cdfb;--tomato-contrast: #fff;--tomato-surface: #2b191380;--tomato-indicator: #e54d2e;--tomato-track: #e54d2e;--ruby-1: #170f0f;--ruby-2: #1e1415;--ruby-3: #3a141a;--ruby-4: #4f131f;--ruby-5: #5e1a27;--ruby-6: #702632;--ruby-7: #893442;--ruby-8: #b44457;--ruby-9: #e54666;--ruby-10: #d6375a;--ruby-11: #ff8e9d;--ruby-12: #ffd2d6;--ruby-a1: #ec000007;--ruby-a2: #fe485a0e;--ruby-a3: #ff23462c;--ruby-a4: #fd184643;--ruby-a5: #fe2d5553;--ruby-a6: #ff466466;--ruby-a7: #ff577281;--ruby-a8: #ff5c77af;--ruby-a9: #fe4c70e4;--ruby-a10: #fe3f69d4;--ruby-a11: #ff8e9d;--ruby-a12: #ffd2d6;--ruby-contrast: #fff;--ruby-surface: #2b171980;--ruby-indicator: #e54666;--ruby-track: #e54666;--pink-1: #170e13;--pink-2: #22111a;--pink-3: #38162a;--pink-4: #4d1338;--pink-5: #5b1b42;--pink-6: #6b2851;--pink-7: #853866;--pink-8: #a94782;--pink-9: #d6409f;--pink-10: #c73092;--pink-11: #ff84d3;--pink-12: #fed1e8;--pink-a1: #ec005a07;--pink-a2: #f6118a13;--pink-a3: #fe30a92a;--pink-a4: #fd19aa41;--pink-a5: #fd31ad50;--pink-a6: #fd4db961;--pink-a7: #fd60be7d;--pink-a8: #ff66c2a3;--pink-a9: #fe49bcd4;--pink-a10: #ff3abac3;--pink-a11: #ff84d3;--pink-a12: #ffd2e9fe;--pink-contrast: #fff;--pink-surface: #33112380;--pink-indicator: #d6409f;--pink-track: #d6409f;--violet-1: #100f1c;--violet-2: #171626;--violet-3: #252045;--violet-4: #30265c;--violet-5: #392f6a;--violet-6: #433978;--violet-7: #52478d;--violet-8: #6659ae;--violet-9: #6e56cf;--violet-10: #6052a7;--violet-11: #b3a8ff;--violet-12: #e0deff;--violet-a1: #0000fb0c;--violet-a2: #5449fa17;--violet-a3: #6d56fe38;--violet-a4: #7253fd51;--violet-a5: #7b60fd60;--violet-a6: #846dfd6f;--violet-a7: #8e79ff85;--violet-a8: #917dfea9;--violet-a9: #8668ffcc;--violet-a10: #8f78ffa1;--violet-a11: #b3a8ff;--violet-a12: #e0deff;--violet-contrast: #fff;--violet-surface: #1d1b3b80;--violet-indicator: #6e56cf;--violet-track: #6e56cf;--indigo-1: #0c111c;--indigo-2: #111725;--indigo-3: #172448;--indigo-4: #1d2e61;--indigo-5: #253974;--indigo-6: #2e4484;--indigo-7: #375097;--indigo-8: #415eb1;--indigo-9: #3e63dd;--indigo-10: #3f5cb0;--indigo-11: #93b4ff;--indigo-12: #d5e2ff;--indigo-a1: #0012fb0c;--indigo-a2: #1156f916;--indigo-a3: #2b64ff3b;--indigo-a4: #3567ff56;--indigo-a5: #4171fd6b;--indigo-a6: #4d7afd7c;--indigo-a7: #5581ff90;--indigo-a8: #5883feac;--indigo-a9: #4671ffdb;--indigo-a10: #5580feab;--indigo-a11: #93b4ff;--indigo-a12: #d5e2ff;--indigo-contrast: #fff;--indigo-surface: #111d3980;--indigo-indicator: #3e63dd;--indigo-track: #3e63dd;--blue-1: #08121c;--blue-2: #0e1926;--blue-3: #0a2847;--blue-4: #003262;--blue-5: #003f75;--blue-6: #104d86;--blue-7: #1d5e9d;--blue-8: #2371bd;--blue-9: #0090ff;--blue-10: #0083f1;--blue-11: #70b8ff;--blue-12: #c8e3ff;--blue-a1: #0027fb0c;--blue-a2: #006afa17;--blue-a3: #0077ff3a;--blue-a4: #0072ff57;--blue-a5: #007efd6c;--blue-a6: #0f8afd7e;--blue-a7: #2694ff96;--blue-a8: #2a95feb9;--blue-a9: #0090ff;--blue-a10: #008afff0;--blue-a11: #70b8ff;--blue-a12: #c8e3ff;--blue-contrast: #fff;--blue-surface: #0c213b80;--blue-indicator: #0090ff;--blue-track: #0090ff;--teal-1: #0b1311;--teal-2: #111c1a;--teal-3: #0e2d28;--teal-4: #043b34;--teal-5: #0b4840;--teal-6: #16574e;--teal-7: #1e695f;--teal-8: #217f72;--teal-9: #12a594;--teal-10: #009888;--teal-11: #55d2c0;--teal-12: #aaf0e3;--teal-a1: #00bb1103;--teal-a2: #12fbd10c;--teal-a3: #00ffd51e;--teal-a4: #00ffd82d;--teal-a5: #00ffdd3b;--teal-a6: #23ffe14b;--teal-a7: #34fde25f;--teal-a8: #34ffe376;--teal-a9: #13ffe49f;--teal-a10: #00ffe391;--teal-a11: #65ffe9cf;--teal-a12: #b4fff1ef;--teal-contrast: #fff;--teal-surface: #11272380;--teal-indicator: #12a594;--teal-track: #12a594;--grass-1: #0d130e;--grass-2: #141a14;--grass-3: #1c2a1d;--grass-4: #1f3a23;--grass-5: #27482b;--grass-6: #2f5735;--grass-7: #37673e;--grass-8: #407948;--grass-9: #46a758;--grass-10: #389a4c;--grass-11: #73d081;--grass-12: #c0f0c4;--grass-a1: #00bb0003;--grass-a2: #5ef75e0a;--grass-a3: #79fe831b;--grass-a4: #63ff7a2c;--grass-a5: #71ff823b;--grass-a6: #77ff8c4b;--grass-a7: #7afd8d5d;--grass-a8: #7cfd8e70;--grass-a9: #65ff82a1;--grass-a10: #55ff7893;--grass-a11: #8bff9dcd;--grass-a12: #ccffd0ef;--grass-contrast: #fff;--grass-surface: #17231780;--grass-indicator: #46a758;--grass-track: #46a758;--mint-1: #0c1311;--mint-2: #0f1b18;--mint-3: #0c2c26;--mint-4: #003a31;--mint-5: #06483d;--mint-6: #16564a;--mint-7: #22685b;--mint-8: #287f6f;--mint-9: #86ead4;--mint-10: #7ce0ca;--mint-11: #6dd2bc;--mint-12: #c0f5e8;--mint-a1: #00bb1103;--mint-a2: #00f9b40b;--mint-a3: #00ffca1d;--mint-a4: #00ffcb2c;--mint-a5: #00ffd03b;--mint-a6: #23ffd64a;--mint-a7: #3ffdda5e;--mint-a8: #43ffdd76;--mint-a9: #92ffe7e9;--mint-a10: #8cffe6de;--mint-a11: #83ffe4cf;--mint-a12: #c7fef0f5;--mint-contrast: #062822;--mint-surface: #0e251f80;--mint-indicator: #86ead4;--mint-track: #86ead4;--lime-1: #0f120b;--lime-2: #151910;--lime-3: #212916;--lime-4: #2c361b;--lime-5: #364321;--lime-6: #415126;--lime-7: #4e612d;--lime-8: #5c7434;--lime-9: #bdee63;--lime-10: #b6e26a;--lime-11: #bae66e;--lime-12: #dff8bc;--lime-a1: #00910002;--lime-a2: #83f40009;--lime-a3: #aefd431a;--lime-a4: #befd5128;--lime-a5: #c0fe5d36;--lime-a6: #c3fe5f45;--lime-a7: #c6ff6556;--lime-a8: #c4fd656b;--lime-a9: #caff69ed;--lime-a10: #cdff76e0;--lime-a11: #cdfe78e5;--lime-a12: #e5ffc1f8;--lime-contrast: #1d250f;--lime-surface: #19211080;--lime-indicator: #bdee63;--lime-track: #bdee63;--yellow-1: #12110b;--yellow-2: #1a1810;--yellow-3: #282409;--yellow-4: #332d00;--yellow-5: #3f3700;--yellow-6: #4c440e;--yellow-7: #5f571f;--yellow-8: #796f2b;--yellow-9: #ffe629;--yellow-10: #f1dd4e;--yellow-11: #f2dd4f;--yellow-12: #f4edb8;--yellow-a1: #91110002;--yellow-a2: #f7c4000a;--yellow-a3: #fcd30019;--yellow-a4: #fbd20025;--yellow-a5: #fcd30032;--yellow-a6: #fddd0640;--yellow-a7: #fee63c54;--yellow-a8: #fde74c70;--yellow-a9: #ffe629;--yellow-a10: #ffea52f0;--yellow-a11: #fee852f2;--yellow-a12: #fef7bff4;--yellow-contrast: #262209;--yellow-surface: #231f1080;--yellow-indicator: #ffe629;--yellow-track: #ffe629;--orange-1: #160f0d;--orange-2: #1f1510;--orange-3: #351c10;--orange-4: #4b1c03;--orange-5: #592508;--orange-6: #693318;--orange-7: #804326;--orange-8: #a55630;--orange-9: #f76b15;--orange-10: #e95f00;--orange-11: #ff9c69;--orange-12: #ffdcca;--orange-a1: #e6000006;--orange-a2: #ff55000f;--orange-a3: #fd590b27;--orange-a4: #fc3e003f;--orange-a5: #fd53004e;--orange-a6: #fd6c245f;--orange-a7: #ff7d3e77;--orange-a8: #ff80439f;--orange-a9: #fe6d15f7;--orange-a10: #fe6600e8;--orange-a11: #ff9c69;--orange-a12: #ffdcca;--orange-contrast: #fff;--orange-surface: #2d191080;--orange-indicator: #f76b15;--orange-track: #f76b15;--gold-1: #12110f;--gold-2: #1a1917;--gold-3: #25221e;--gold-4: #2e2a24;--gold-5: #37322b;--gold-6: #443d32;--gold-7: #554c3d;--gold-8: #6f624e;--gold-9: #978365;--gold-10: #8a7759;--gold-11: #c8b79f;--gold-12: #efe5d7;--gold-a1: #91110002;--gold-a2: #f7deab0a;--gold-a3: #f9d6a816;--gold-a4: #f9d9a920;--gold-a5: #fedfb329;--gold-a6: #feddaa37;--gold-a7: #ffe0ab49;--gold-a8: #ffdeac65;--gold-a9: #ffdba690;--gold-a10: #ffda9f82;--gold-a11: #fee8c9c5;--gold-a12: #fff4e5ee;--gold-contrast: #fff;--gold-surface: #23211d80;--gold-indicator: #978365;--gold-track: #978365;--red-1: #170f0e;--red-2: #201312;--red-3: #3b1212;--red-4: #500f13;--red-5: #61171a;--red-6: #732425;--red-7: #8c3434;--red-8: #b54546;--red-9: #e5484d;--red-10: #d63941;--red-11: #ff8f8b;--red-12: #ffd2ce;--red-a1: #ec000007;--red-a2: #f22f2011;--red-a3: #ff17172d;--red-a4: #fe0a1944;--red-a5: #ff232c56;--red-a6: #ff404269;--red-a7: #ff555584;--red-a8: #ff5d5eb0;--red-a9: #fe4e54e4;--red-a10: #fe414bd4;--red-a11: #ff8f8b;--red-a12: #ffd2ce;--red-contrast: #fff;--red-surface: #2f151380;--red-indicator: #e5484d;--red-track: #e5484d;--green-1: #0c130f;--green-2: #121b16;--green-3: #152c1f;--green-4: #143b27;--green-5: #1b4930;--green-6: #23573b;--green-7: #2b6848;--green-8: #327c55;--green-9: #30a46c;--green-10: #1d9760;--green-11: #63d196;--green-12: #b2f1cb;--green-a1: #00bb0003;--green-a2: #29f9850b;--green-a3: #35ff8d1d;--green-a4: #22ff8e2d;--green-a5: #3cff953c;--green-a6: #4fffa04b;--green-a7: #58fda65e;--green-a8: #5bffa873;--green-a9: #44ffa49e;--green-a10: #27ff9d90;--green-a11: #77ffb6ce;--green-a12: #bcffd7f0;--green-contrast: #fff;--green-surface: #13251b80;--green-indicator: #30a46c;--green-track: #30a46c;--amber-1: #13110c;--amber-2: #1c1810;--amber-3: #2c220c;--amber-4: #3b2900;--amber-5: #483300;--amber-6: #554112;--amber-7: #695323;--amber-8: #84692e;--amber-9: #ffc53d;--amber-10: #f4bb2e;--amber-11: #ffcc4c;--amber-12: #fee7ba;--amber-a1: #bb110003;--amber-a2: #fba6000c;--amber-a3: #ffa7001d;--amber-a4: #ff99002d;--amber-a5: #ffa4003b;--amber-a6: #ffb91549;--amber-a7: #fdc2415f;--amber-a8: #fdc64d7c;--amber-a9: #ffc53d;--amber-a10: #fec22ff4;--amber-a11: #ffcc4c;--amber-a12: #ffe8bbfe;--amber-contrast: #2b2009;--amber-surface: #271f1080;--amber-indicator: #ffc53d;--amber-track: #ffc53d}@supports (color: color(display-p3 1 1 1)){@media(color-gamut:p3){.dark,.dark-theme{--gray-1: oklch(17.8% .0042 277.7);--gray-2: oklch(21.5% .004 277.7);--gray-3: oklch(25.5% .0055 277.7);--gray-4: oklch(28.4% .0075 277.7);--gray-5: oklch(31.4% .0089 277.7);--gray-6: oklch(35% .01 277.7);--gray-7: oklch(40.2% .0121 277.7);--gray-8: oklch(49.2% .0157 277.7);--gray-9: oklch(54% .0167 277.7);--gray-10: oklch(58.6% .0165 277.7);--gray-11: oklch(77% .0138 277.7);--gray-12: oklch(94.9% .0026 277.7);--gray-a1: color(display-p3 .0667 .0667 .9412 / .009);--gray-a2: color(display-p3 .8 .8 .9804 / .043);--gray-a3: color(display-p3 .851 .898 .9882 / .085);--gray-a4: color(display-p3 .8392 .8706 1 / .122);--gray-a5: color(display-p3 .8471 .8745 1 / .156);--gray-a6: color(display-p3 .8784 .898 1 / .194);--gray-a7: color(display-p3 .8745 .9059 .9961 / .257);--gray-a8: color(display-p3 .8941 .9059 1 / .37);--gray-a9: color(display-p3 .8902 .9098 1 / .433);--gray-a10: color(display-p3 .902 .9176 1 / .488);--gray-a11: color(display-p3 .9451 .949 1 / .719);--gray-a12: color(display-p3 .9922 .9922 1 / .937);--gray-contrast: #ffffff;--gray-surface: color(display-p3 0 0 0 / 5%);--gray-indicator: oklch(54% .0167 277.7);--gray-track: oklch(54% .0167 277.7);--olive-1: oklch(17.8% .0045 292.9);--olive-2: oklch(21.4% .0049 292.9);--olive-3: oklch(25.5% .0066 292.9);--olive-4: oklch(28.5% .0091 292.9);--olive-5: oklch(31.6% .0108 292.9);--olive-6: oklch(35.3% .012 292.9);--olive-7: oklch(40.6% .0146 292.9);--olive-8: oklch(49.5% .0177 292.9);--olive-9: oklch(64.6% .0193 292.9);--olive-10: oklch(60.6% .0193 292.9);--olive-11: oklch(77.5% .0158 292.9);--olive-12: oklch(94.4% .0067 292.9);--olive-a1: color(display-p3 .0667 .0667 .9412 / .009);--olive-a2: color(display-p3 .8 .8 .9804 / .043);--olive-a3: color(display-p3 .8627 .8196 .9922 / .089);--olive-a4: color(display-p3 .8706 .8392 1 / .122);--olive-a5: color(display-p3 .8784 .851 1 / .16);--olive-a6: color(display-p3 .898 .8784 1 / .198);--olive-a7: color(display-p3 .898 .8824 1 / .265);--olive-a8: color(display-p3 .9137 .8941 1 / .374);--olive-a9: color(display-p3 .9333 .9176 1 / .568);--olive-a10: color(display-p3 .9255 .9098 1 / .517);--olive-a11: color(display-p3 .9569 .9451 1 / .727);--olive-a12: color(display-p3 .9765 .9765 1 / .942);--olive-contrast: #fff;--olive-surface: color(display-p3 .1255 .1255 .1412 / .5);--olive-indicator: oklch(64.6% .0193 292.9);--olive-track: oklch(64.6% .0193 292.9);--tomato-1: oklch(17.8% .0117 33.34);--tomato-2: oklch(20.6% .0167 33.34);--tomato-3: oklch(25.3% .0543 33.34);--tomato-4: oklch(29.1% .087 33.34);--tomato-5: oklch(33.1% .097 33.34);--tomato-6: oklch(38% .0994 33.34);--tomato-7: oklch(44.7% .1067 33.34);--tomato-8: oklch(53.8% .13 33.34);--tomato-9: oklch(62.7% .1936 33.34);--tomato-10: oklch(58.6% .1936 33.34);--tomato-11: oklch(78.4% .1635 33.34);--tomato-12: oklch(89.9% .0466 33.34);--tomato-a1: color(display-p3 .9922 0 0 / .017);--tomato-a2: color(display-p3 .9922 .3765 .1451 / .051);--tomato-a3: color(display-p3 .9961 .2824 .0941 / .148);--tomato-a4: color(display-p3 1 .2196 .0353 / .232);--tomato-a5: color(display-p3 1 .2824 .1216 / .295);--tomato-a6: color(display-p3 1 .3922 .2471 / .353);--tomato-a7: color(display-p3 1 .4706 .3373 / .45);--tomato-a8: color(display-p3 1 .498 .3686 / .601);--tomato-a9: color(display-p3 1 .4078 .2667 / .82);--tomato-a10: color(display-p3 1 .3608 .2157 / .761);--tomato-a11: color(display-p3 1 .6275 .5176 / .937);--tomato-a12: color(display-p3 1 .8627 .8314 / .958);--tomato-contrast: #fff;--tomato-surface: color(display-p3 .1569 .0941 .0784 / .5);--tomato-indicator: oklch(62.7% .1936 33.34);--tomato-track: oklch(62.7% .1936 33.34);--ruby-1: oklch(17.8% .0137 13.15);--ruby-2: oklch(20.6% .0159 13.15);--ruby-3: oklch(25.3% .0602 13.15);--ruby-4: oklch(29.2% .0888 13.15);--ruby-5: oklch(33.2% .0997 13.15);--ruby-6: oklch(38.2% .1049 13.15);--ruby-7: oklch(44.8% .1164 13.15);--ruby-8: oklch(54.4% .1452 13.15);--ruby-9: oklch(62.8% .1949 13.15);--ruby-10: oklch(58.7% .1949 13.15);--ruby-11: oklch(78.6% .161 13.15);--ruby-12: oklch(90.5% .0526 13.15);--ruby-a1: color(display-p3 .9608 0 0 / .022);--ruby-a2: color(display-p3 .9882 .3176 .4039 / .047);--ruby-a3: color(display-p3 .9961 .1961 .302 / .152);--ruby-a4: color(display-p3 1 .1882 .3216 / .232);--ruby-a5: color(display-p3 1 .2588 .3804 / .29);--ruby-a6: color(display-p3 1 .349 .4353 / .362);--ruby-a7: color(display-p3 1 .4078 .4902 / .463);--ruby-a8: color(display-p3 1 .4275 .5176 / .631);--ruby-a9: color(display-p3 1 .3765 .4824 / .82);--ruby-a10: color(display-p3 1 .3373 .4549 / .757);--ruby-a11: color(display-p3 1 .6157 .6588 / .937);--ruby-a12: color(display-p3 1 .8549 .8667 / .971);--ruby-contrast: #fff;--ruby-surface: color(display-p3 .1569 .0941 .0941 / .5);--ruby-indicator: oklch(62.8% .1949 13.15);--ruby-track: oklch(62.8% .1949 13.15);--pink-1: oklch(17.8% .0174 346);--pink-2: oklch(20.5% .0313 346);--pink-3: oklch(26% .0611 346);--pink-4: oklch(29.9% .0975 346);--pink-5: oklch(33.8% .1041 346);--pink-6: oklch(38.9% .1072 346);--pink-7: oklch(45.9% .1192 346);--pink-8: oklch(54.5% .1448 346);--pink-9: oklch(61.7% .2076 346);--pink-10: oklch(57.5% .2076 346);--pink-11: oklch(78.9% .19 346);--pink-12: oklch(90.5% .0586 346);--pink-a1: color(display-p3 .9608 0 .4235 / .022);--pink-a2: color(display-p3 .9882 .1294 .6196 / .064);--pink-a3: color(display-p3 .9961 .2549 .7059 / .148);--pink-a4: color(display-p3 1 .1725 .7255 / .227);--pink-a5: color(display-p3 1 .2627 .7373 / .282);--pink-a6: color(display-p3 1 .3765 .7725 / .345);--pink-a7: color(display-p3 1 .451 .7922 / .45);--pink-a8: color(display-p3 1 .4667 .8078 / .589);--pink-a9: color(display-p3 1 .3725 .7843 / .761);--pink-a10: color(display-p3 1 .3216 .7765 / .698);--pink-a11: color(display-p3 1 .5804 .8667 / .933);--pink-a12: color(display-p3 .9961 .851 .9333 / .967);--pink-contrast: #fff;--pink-surface: color(display-p3 .1725 .0706 .1333 / .5);--pink-indicator: oklch(61.7% .2076 346);--pink-track: oklch(61.7% .2076 346);--violet-1: oklch(17.8% .0261 288);--violet-2: oklch(20.9% .0315 288);--violet-3: oklch(27% .0664 288);--violet-4: oklch(31.2% .0929 288);--violet-5: oklch(34.8% .0987 288);--violet-6: oklch(39% .1022 288);--violet-7: oklch(44.5% .111 288);--violet-8: oklch(51.6% .1307 288);--violet-9: oklch(54.2% .179 288);--violet-10: oklch(49.5% .1307 288);--violet-11: oklch(77.8% .1366 288);--violet-12: oklch(91.2% .0452 288);--violet-a1: color(display-p3 0 0 .9804 / .043);--violet-a2: color(display-p3 .3451 .298 .9882 / .085);--violet-a3: color(display-p3 .4235 .349 .9961 / .211);--violet-a4: color(display-p3 .4431 .3412 1 / .303);--violet-a5: color(display-p3 .4863 .3961 1 / .358);--violet-a6: color(display-p3 .5216 .4471 1 / .416);--violet-a7: color(display-p3 .5569 .4863 1 / .505);--violet-a8: color(display-p3 .5765 .5098 1 / .639);--violet-a9: color(display-p3 .5216 .4235 1 / .769);--violet-a10: color(display-p3 .5608 .4902 .9961 / .61);--violet-a11: color(display-p3 .7137 .6745 1 / .975);--violet-a12: color(display-p3 .8902 .8824 1 / .988);--violet-contrast: #fff;--violet-surface: color(display-p3 .1098 .102 .2196 / .5);--violet-indicator: oklch(54.2% .179 288);--violet-track: oklch(54.2% .179 288);--indigo-1: oklch(17.8% .0247 267);--indigo-2: oklch(20.7% .0302 267);--indigo-3: oklch(27.1% .0693 267);--indigo-4: oklch(31.8% .0931 267);--indigo-5: oklch(36.1% .1044 267);--indigo-6: oklch(40.4% .1105 267);--indigo-7: oklch(45% .1201 267);--indigo-8: oklch(50.3% .1371 267);--indigo-9: oklch(54.4% .191 267);--indigo-10: oklch(49.7% .1371 267);--indigo-11: oklch(77.7% .1232 267);--indigo-12: oklch(91.1% .0428 267);--indigo-a1: color(display-p3 0 .0706 .9804 / .043);--indigo-a2: color(display-p3 .1176 .3608 1 / .08);--indigo-a3: color(display-p3 .2275 .4039 1 / .223);--indigo-a4: color(display-p3 .2627 .4196 1 / .324);--indigo-a5: color(display-p3 .302 .451 1 / .4);--indigo-a6: color(display-p3 .3529 .4902 1 / .467);--indigo-a7: color(display-p3 .3765 .5137 1 / .543);--indigo-a8: color(display-p3 .3961 .5294 1 / .648);--indigo-a9: color(display-p3 .3176 .451 1 / .824);--indigo-a10: color(display-p3 .3843 .5176 1 / .643);--indigo-a11: color(display-p3 .6196 .7216 1 / .975);--indigo-a12: color(display-p3 .8549 .898 1 / .988);--indigo-contrast: #fff;--indigo-surface: color(display-p3 .0706 .1098 .2118 / .5);--indigo-indicator: oklch(54.4% .191 267);--indigo-track: oklch(54.4% .191 267);--blue-1: oklch(17.8% .0258 251.8);--blue-2: oklch(21% .0295 251.8);--blue-3: oklch(27.3% .0669 251.8);--blue-4: oklch(31.6% .1002 251.8);--blue-5: oklch(36.4% .1084 251.8);--blue-6: oklch(41.6% .1125 251.8);--blue-7: oklch(47.5% .1211 251.8);--blue-8: oklch(54.1% .1396 251.8);--blue-9: oklch(64.9% .193 251.8);--blue-10: oklch(60.9% .193 251.8);--blue-11: oklch(76.8% .1347 251.8);--blue-12: oklch(90.7% .0511 251.8);--blue-a1: color(display-p3 0 .1608 .9804 / .043);--blue-a2: color(display-p3 .0235 .4353 .9882 / .085);--blue-a3: color(display-p3 .0863 .4627 1 / .219);--blue-a4: color(display-p3 .0667 .451 1 / .328);--blue-a5: color(display-p3 .1255 .5059 1 / .404);--blue-a6: color(display-p3 .2235 .5569 1 / .475);--blue-a7: color(display-p3 .2824 .5922 1 / .568);--blue-a8: color(display-p3 .3059 .5961 1 / .698);--blue-a9: color(display-p3 .251 .5725 .9961 / .967);--blue-a10: color(display-p3 .2392 .549 .9961 / .908);--blue-a11: color(display-p3 .5176 .7333 1 / .975);--blue-a12: color(display-p3 .8118 .898 1 / .988);--blue-contrast: #fff;--blue-surface: color(display-p3 .0588 .1255 .2118 / .5);--blue-indicator: oklch(64.9% .193 251.8);--blue-track: oklch(64.9% .193 251.8);--teal-1: oklch(17.8% .0123 182);--teal-2: oklch(21.5% .0169 182);--teal-3: oklch(27.3% .0378 182);--teal-4: oklch(31.7% .0546 182);--teal-5: oklch(36.2% .0601 182);--teal-6: oklch(41.4% .0654 182);--teal-7: oklch(47.3% .074 182);--teal-8: oklch(53.9% .0867 182);--teal-9: oklch(64.9% .1136 182);--teal-10: oklch(60.9% .1136 182);--teal-11: oklch(78.9% .1136 182);--teal-12: oklch(90.5% .0722 182);--teal-a1: color(display-p3 0 .9412 .0667 / .009);--teal-a2: color(display-p3 .2353 .9882 .8196 / .047);--teal-a3: color(display-p3 .2392 .9961 .8588 / .114);--teal-a4: color(display-p3 .2039 .9961 .8627 / .173);--teal-a5: color(display-p3 .3294 1 .8824 / .227);--teal-a6: color(display-p3 .4078 1 .8941 / .29);--teal-a7: color(display-p3 .4588 1 .9137 / .362);--teal-a8: color(display-p3 .4667 1 .9059 / .454);--teal-a9: color(display-p3 .4431 .9961 .902 / .614);--teal-a10: color(display-p3 .4196 1 .902 / .559);--teal-a11: color(display-p3 .5725 1 .9294 / .799);--teal-a12: color(display-p3 .7765 1 .9529 / .929);--teal-contrast: #fff;--teal-surface: color(display-p3 .0784 .149 .1333 / .5);--teal-indicator: oklch(64.9% .1136 182);--teal-track: oklch(64.9% .1136 182);--grass-1: oklch(17.8% .0141 147.4);--grass-2: oklch(20.9% .0141 147.4);--grass-3: oklch(26.6% .03 147.4);--grass-4: oklch(31.9% .0522 147.4);--grass-5: oklch(36.7% .0619 147.4);--grass-6: oklch(41.6% .0721 147.4);--grass-7: oklch(46.8% .0835 147.4);--grass-8: oklch(52.4% .0972 147.4);--grass-9: oklch(65.1% .1468 147.4);--grass-10: oklch(61.1% .1468 147.4);--grass-11: oklch(78% .1421 147.4);--grass-12: oklch(91.1% .078 147.4);--grass-a1: color(display-p3 0 .9412 0 / .009);--grass-a2: color(display-p3 .4824 .9961 .3765 / .038);--grass-a3: color(display-p3 .5882 .9922 .549 / .106);--grass-a4: color(display-p3 .5333 .9961 .5333 / .169);--grass-a5: color(display-p3 .5882 1 .5686 / .227);--grass-a6: color(display-p3 .6078 1 .5961 / .29);--grass-a7: color(display-p3 .6157 1 .6039 / .358);--grass-a8: color(display-p3 .6196 1 .6078 / .433);--grass-a9: color(display-p3 .5725 1 .5686 / .622);--grass-a10: color(display-p3 .5373 1 .5373 / .568);--grass-a11: color(display-p3 .6667 1 .6588 / .795);--grass-a12: color(display-p3 .8431 1 .8353 / .933);--grass-contrast: #fff;--grass-surface: color(display-p3 .0941 .1333 .0941 / .5);--grass-indicator: oklch(65.1% .1468 147.4);--grass-track: oklch(65.1% .1468 147.4);--mint-1: oklch(17.8% .0116 178);--mint-2: oklch(20.8% .0173 178);--mint-3: oklch(26.8% .039 178);--mint-4: oklch(31.3% .058 178);--mint-5: oklch(35.9% .0634 178);--mint-6: oklch(41% .0666 178);--mint-7: oklch(47.1% .0728 178);--mint-8: oklch(54% .0851 178);--mint-9: oklch(87% .0999 178);--mint-10: oklch(83.9% .0999 178);--mint-11: oklch(79.5% .0999 178);--mint-12: oklch(93% .0569 178);--mint-a1: color(display-p3 0 .9412 .0667 / .009);--mint-a2: color(display-p3 .1608 .9804 .7059 / .043);--mint-a3: color(display-p3 .2118 .9961 .8157 / .11);--mint-a4: color(display-p3 .1608 .9961 .8118 / .169);--mint-a5: color(display-p3 .2941 1 .8275 / .227);--mint-a6: color(display-p3 .4118 1 .851 / .286);--mint-a7: color(display-p3 .4784 1 .8706 / .362);--mint-a8: color(display-p3 .4902 1 .8824 / .454);--mint-a9: color(display-p3 .6784 .9961 .9137 / .904);--mint-a10: color(display-p3 .6627 1 .9137 / .862);--mint-a11: color(display-p3 .6392 1 .9098 / .803);--mint-a12: color(display-p3 .8353 1 .9529 / .95);--mint-contrast: #062822;--mint-surface: color(display-p3 .0706 .1333 .1176 / .5);--mint-indicator: oklch(87% .0999 178);--mint-track: oklch(87% .0999 178);--lime-1: oklch(17.8% .0144 126.1);--lime-2: oklch(20.8% .0193 126.1);--lime-3: oklch(26.6% .0343 126.1);--lime-4: oklch(31.6% .0469 126.1);--lime-5: oklch(36.3% .0578 126.1);--lime-6: oklch(41.2% .0685 126.1);--lime-7: oklch(46.4% .08 126.1);--lime-8: oklch(52.4% .0944 126.1);--lime-9: oklch(88.7% .1747 126.1);--lime-10: oklch(85.7% .1555 126.1);--lime-11: oklch(86.8% .1555 126.1);--lime-12: oklch(94.6% .0818 126.1);--lime-a1: color(display-p3 0 .8549 0 / .005);--lime-a2: color(display-p3 .6471 .9922 .0667 / .034);--lime-a3: color(display-p3 .7686 1 .3412 / .101);--lime-a4: color(display-p3 .7961 1 .3961 / .156);--lime-a5: color(display-p3 .8118 .9961 .4392 / .211);--lime-a6: color(display-p3 .8118 1 .4471 / .269);--lime-a7: color(display-p3 .8353 1 .4824 / .332);--lime-a8: color(display-p3 .8314 1 .4784 / .412);--lime-a9: color(display-p3 .8392 1 .502 / .925);--lime-a10: color(display-p3 .8471 1 .5373 / .874);--lime-a11: color(display-p3 .851 1 .5451 / .891);--lime-a12: color(display-p3 .9216 .9961 .7843 / .967);--lime-contrast: #1d250f;--lime-surface: color(display-p3 .102 .1255 .0627 / .5);--lime-indicator: oklch(88.7% .1747 126.1);--lime-track: oklch(88.7% .1747 126.1);--yellow-1: oklch(17.8% .0121 100.9);--yellow-2: oklch(20.9% .0162 100.9);--yellow-3: oklch(25.8% .0425 100.9);--yellow-4: oklch(29.4% .0652 100.9);--yellow-5: oklch(33.4% .0742 100.9);--yellow-6: oklch(38.5% .0723 100.9);--yellow-7: oklch(45.2% .0756 100.9);--yellow-8: oklch(53.5% .089 100.9);--yellow-9: oklch(91.8% .1838 100.9);--yellow-10: oklch(88.8% .1582 100.9);--yellow-11: oklch(89% .1582 100.9);--yellow-12: oklch(93.9% .0687 100.9);--yellow-a1: color(display-p3 .8549 .0706 0 / .005);--yellow-a2: color(display-p3 .9961 .7922 .0706 / .038);--yellow-a3: color(display-p3 .9961 .8706 0 / .093);--yellow-a4: color(display-p3 1 .8588 0 / .139);--yellow-a5: color(display-p3 .9961 .851 0 / .19);--yellow-a6: color(display-p3 1 .8902 .1804 / .244);--yellow-a7: color(display-p3 1 .9176 .3451 / .324);--yellow-a8: color(display-p3 1 .9255 .4039 / .429);--yellow-a9: color(display-p3 1 .9216 .3451 / .984);--yellow-a10: color(display-p3 1 .9333 .4314 / .929);--yellow-a11: color(display-p3 1 .9333 .4353 / .929);--yellow-a12: color(display-p3 1 .9725 .7804 / .95);--yellow-contrast: #262209;--yellow-surface: color(display-p3 .1255 .1176 .0627 / .5);--yellow-indicator: oklch(91.8% .1838 100.9);--yellow-track: oklch(91.8% .1838 100.9);--orange-1: oklch(17.8% .0119 45.02);--orange-2: oklch(20.7% .0192 45.02);--orange-3: oklch(25.7% .0452 45.02);--orange-4: oklch(29.3% .0796 45.02);--orange-5: oklch(33.4% .0867 45.02);--orange-6: oklch(38.6% .0868 45.02);--orange-7: oklch(45.3% .0946 45.02);--orange-8: oklch(54% .1161 45.02);--orange-9: oklch(69.1% .1909 45.02);--orange-10: oklch(65.3% .1909 45.02);--orange-11: oklch(79.9% .163 45.02);--orange-12: oklch(92.5% .0524 45.02);--orange-a1: color(display-p3 .9922 0 0 / .017);--orange-a2: color(display-p3 .9922 .3765 .0706 / .051);--orange-a3: color(display-p3 1 .4078 .098 / .139);--orange-a4: color(display-p3 1 .3176 0 / .219);--orange-a5: color(display-p3 1 .3922 .0549 / .278);--orange-a6: color(display-p3 1 .4941 .2196 / .341);--orange-a7: color(display-p3 1 .5451 .3098 / .433);--orange-a8: color(display-p3 1 .5608 .3333 / .58);--orange-a9: color(display-p3 1 .4941 .2157 / .895);--orange-a10: color(display-p3 1 .4706 .1765 / .841);--orange-a11: color(display-p3 1 .6667 .4706 / .942);--orange-a12: color(display-p3 1 .8902 .8196 / .975);--orange-contrast: #fff;--orange-surface: color(display-p3 .1647 .0941 .0627 / .5);--orange-indicator: oklch(69.1% .1909 45.02);--orange-track: oklch(69.1% .1909 45.02);--gold-1: oklch(17.8% .0034 77.7);--gold-2: oklch(21.3% .0047 77.7);--gold-3: oklch(25.3% .008 77.7);--gold-4: oklch(28.7% .0114 77.7);--gold-5: oklch(32.1% .0152 77.7);--gold-6: oklch(36.4% .0199 77.7);--gold-7: oklch(42% .0258 77.7);--gold-8: oklch(50.3% .034 77.7);--gold-9: oklch(62% .0492 77.7);--gold-10: oklch(57.9% .0492 77.7);--gold-11: oklch(78.8% .0391 77.7);--gold-12: oklch(92.7% .0217 77.7);--gold-a1: color(display-p3 .8549 .0706 0 / .005);--gold-a2: color(display-p3 .9961 .8941 .6863 / .038);--gold-a3: color(display-p3 1 .902 .7059 / .08);--gold-a4: color(display-p3 1 .898 .7333 / .118);--gold-a5: color(display-p3 1 .898 .749 / .156);--gold-a6: color(display-p3 .9961 .8863 .702 / .211);--gold-a7: color(display-p3 1 .902 .7176 / .278);--gold-a8: color(display-p3 1 .8902 .7059 / .387);--gold-a9: color(display-p3 .9961 .8824 .6902 / .551);--gold-a10: color(display-p3 1 .8784 .6667 / .496);--gold-a11: color(display-p3 1 .9333 .8196 / .757);--gold-a12: color(display-p3 1 .9686 .9098 / .925);--gold-contrast: #fff;--gold-surface: color(display-p3 .1333 .1255 .1098 / .5);--gold-indicator: oklch(62% .0492 77.7);--gold-track: oklch(62% .0492 77.7);--red-1: oklch(17.8% .0133 23.03);--red-2: oklch(20.3% .0215 23.03);--red-3: oklch(25% .0642 23.03);--red-4: oklch(28.8% .0958 23.03);--red-5: oklch(33.1% .1065 23.03);--red-6: oklch(38.2% .1113 23.03);--red-7: oklch(45% .1205 23.03);--red-8: oklch(54.4% .1464 23.03);--red-9: oklch(62.6% .1933 23.03);--red-10: oklch(58.4% .1933 23.03);--red-11: oklch(78.4% .1617 23.03);--red-12: oklch(90.2% .0528 23.03);--red-a1: color(display-p3 .9608 0 0 / .022);--red-a2: color(display-p3 .9961 .2824 .1412 / .055);--red-a3: color(display-p3 1 .1686 .1176 / .156);--red-a4: color(display-p3 1 .1333 .1333 / .236);--red-a5: color(display-p3 1 .2235 .2235 / .303);--red-a6: color(display-p3 1 .3294 .3059 / .374);--red-a7: color(display-p3 1 .4078 .3804 / .475);--red-a8: color(display-p3 1 .4314 .4196 / .635);--red-a9: color(display-p3 1 .3882 .3843 / .82);--red-a10: color(display-p3 1 .3412 .349 / .757);--red-a11: color(display-p3 1 .6196 .5922 / .937);--red-a12: color(display-p3 1 .8549 .8353 / .971);--red-contrast: #fff;--red-surface: color(display-p3 .1647 .0784 .0706 / .5);--red-indicator: oklch(62.6% .1933 23.03);--red-track: oklch(62.6% .1933 23.03);--green-1: oklch(17.8% .0127 157.7);--green-2: oklch(21.1% .016 157.7);--green-3: oklch(27% .0388 157.7);--green-4: oklch(31.8% .0573 157.7);--green-5: oklch(36.5% .066 157.7);--green-6: oklch(41.3% .0733 157.7);--green-7: oklch(46.7% .0829 157.7);--green-8: oklch(52.7% .0962 157.7);--green-9: oklch(64.1% .1329 157.7);--green-10: oklch(60% .1329 157.7);--green-11: oklch(78% .1329 157.7);--green-12: oklch(90.5% .0828 157.7);--green-a1: color(display-p3 0 .9412 0 / .009);--green-a2: color(display-p3 .3412 .9804 .5255 / .043);--green-a3: color(display-p3 .3882 .9961 .6039 / .11);--green-a4: color(display-p3 .3843 .9961 .6118 / .173);--green-a5: color(display-p3 .4588 1 .6275 / .232);--green-a6: color(display-p3 .502 1 .6627 / .29);--green-a7: color(display-p3 .5216 1 .698 / .362);--green-a8: color(display-p3 .5373 1 .698 / .442);--green-a9: color(display-p3 .502 .9961 .6824 / .61);--green-a10: color(display-p3 .4549 .9961 .6588 / .555);--green-a11: color(display-p3 .6157 1 .749 / .795);--green-a12: color(display-p3 .8 1 .8627 / .933);--green-contrast: #fff;--green-surface: color(display-p3 .0863 .1412 .102 / .5);--green-indicator: oklch(64.1% .1329 157.7);--green-track: oklch(64.1% .1329 157.7);--amber-1: oklch(17.8% .0111 84.13);--amber-2: oklch(21.1% .0156 84.13);--amber-3: oklch(25.7% .0384 84.13);--amber-4: oklch(29.6% .0623 84.13);--amber-5: oklch(33.6% .0708 84.13);--amber-6: oklch(38.7% .0684 84.13);--amber-7: oklch(45.3% .0714 84.13);--amber-8: oklch(53.6% .0842 84.13);--amber-9: oklch(85.4% .1572 84.13);--amber-10: oklch(82.2% .1572 84.13);--amber-11: oklch(87.3% .1528 84.13);--amber-12: oklch(93.5% .0628 84.13);--amber-a1: color(display-p3 .9412 .0667 0 / .009);--amber-a2: color(display-p3 .9804 .7059 .0706 / .043);--amber-a3: color(display-p3 .9922 .698 0 / .106);--amber-a4: color(display-p3 1 .6667 0 / .164);--amber-a5: color(display-p3 1 .6941 0 / .219);--amber-a6: color(display-p3 1 .7686 .2118 / .274);--amber-a7: color(display-p3 1 .8039 .3529 / .358);--amber-a8: color(display-p3 1 .8157 .3961 / .467);--amber-a9: color(display-p3 .9961 .8078 .3569 / .963);--amber-a10: color(display-p3 1 .8039 .3294 / .916);--amber-a11: color(display-p3 .9961 .8314 .4 / .967);--amber-a12: color(display-p3 1 .9294 .7647 / .979);--amber-contrast: #2b2009;--amber-surface: color(display-p3 .1412 .1176 .0627 / .5);--amber-indicator: oklch(85.4% .1572 84.13);--amber-track: oklch(85.4% .1572 84.13)}}}}@layer theme{:root{--z-index-0: 0;--z-index-1: 1;--z-index-badge: 2;--z-index-drop: 9900;--z-index-overlay: 9950;--z-index-offcanvas: 9960;--z-index-popup: 9970;--z-index-toast: 9980;--space: .25rem;--speed-sm: .15s;--speed: .25s;--speed-md: .25s;--speed-lg: .5s;--speed-xl: .75s;--text-xs: .75rem;--text-sm: .875rem;--text: 1rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--text-8xl: 6rem;--text-9xl: 8rem;--font-thin: 100;--font-extraLight: 200;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semiBold: 600;--font-bold: 700;--font-extraBold: 800;--font-black: 900;--line-height-sm: 1.25;--line-height: 1.5;--line-height-md: 1.5;--line-height-lg: 1.75;--line-height-xl: 2;--screen-sm: 576px;--screen-md: 768px;--screen-lg: 992px;--screen-xl: 1200px;--columns-3xs: 16rem;--columns-2xs: 18rem;--columns-xs: 20rem;--columns-sm: 24rem;--columns: 28rem;--columns-md: 28rem;--columns-lg: 32rem;--columns-xl: 36rem;--columns-2xl: 42rem;--columns-3xl: 48rem;--columns-4xl: 56rem;--columns-5xl: 64rem;--columns-6xl: 72rem;--columns-7xl: 80rem;--blur-xs: 4px;--blur-sm: 8px;--blur: 12px;--blur-md: 12px;--blur-lg: 16px;--blur-xl: 24px;--blur-2xl: 40px;--blur-3xl: 64px;--drop-blur-sm: 2px;--drop-blur: 4px;--drop-blur-md: 4px;--drop-blur-lg: 6px;--drop-blur-xl: 8px;--opacity-disabled: .5;--opacity-readonly: .75;--opacity-hover: .85;--border-color-sm: var(--gray-a3);--border-color: var(--gray-a6);--border-color-md: var(--gray-a6);--border-color-lg: var(--gray-a9);--border-sm: 1px solid var(--border-color-sm);--border: 1px solid var(--border-color);--border-md: 1px solid var(--border-color-md);--border-lg: 1px solid var(--border-color-lg);--radius-xs: .125rem;--radius-sm: .25rem;--radius: .375rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-4xl: 2rem;--shadow-2xs: 0 1px rgb(0 0 0 / .05);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--shadow-inner: 0 0 0 1px var(--border-color);--text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / .15);--text-shadow-xs: 0px 1px 1px rgb(0 0 0 / .2);--text-shadow-sm: 0px 1px 0px rgb(0 0 0 / .075), 0px 1px 1px rgb(0 0 0 / .075), 0px 2px 2px rgb(0 0 0 / .075);--text-shadow: 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1);--text-shadow-md: 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1);--text-shadow-lg: 0px 1px 2px rgb(0 0 0 / .1), 0px 3px 2px rgb(0 0 0 / .1), 0px 4px 8px rgb(0 0 0 / .1);--drop-shadow-color-xs: rgb(0 0 0 / .05);--drop-shadow-color-sm: rgb(0 0 0 / .15);--drop-shadow-color-md: rgb(0 0 0 / .12);--drop-shadow-color-lg: rgb(0 0 0 / .15);--drop-shadow-color-xl: rgb(0 0 0 / .1);--drop-shadow-color-2xl: rgb(0 0 0 / .15);--drop-shadow-xs: 0 1px 1px var(--drop-shadow-color-xs);--drop-shadow-sm: 0 1px 2px var(--drop-shadow-color-sm);--drop-shadow: 0 3px 3px var(--drop-shadow-color-md);--drop-shadow-md: 0 3px 3px var(--drop-shadow-color-md);--drop-shadow-lg: 0 4px 4px var(--drop-shadow-color-lg);--drop-shadow-xl: 0 9px 7px var(--drop-shadow-color-xl);--drop-shadow-2xl: 0 25px 25px var(--drop-shadow-color-2xl);--drop-shadow-none: 0 0 #0000;--foreground: var(--gray-12);--background: var(--gray-1);--primary: var(--indigo-9);--primary-foreground: var(--indigo-contrast);--secondary: var(--indigo-a3);--secondary-foreground: var(--indigo-a11);--nautral: var(--indigo-a5);--accent: var(--indigo-a2);--danger: var(--red-10);--danger-foreground: var(--red-contrast);--success: var(--green-10);--success-foreground: var(--green-contrast);--warning: var(--amber-10);--warning-foreground: var(--amber-contrast);--code: var(--indigo-a3);--code-foreground: var(--indigo-a11);--popup-background-color: var(--gray-a11)}.j-theme-gray{--primary: var(--gray-12);--primary-foreground: var(--gray-1);--secondary: var(--gray-a3);--secondary-foreground: var(--gray-a11);--nautral: var(--gray-a5);--accent: var(--gray-a2)}.j-theme-olive{--primary: var(--olive-11);--primary-foreground: var(--olive-2);--secondary: var(--olive-a3);--secondary-foreground: var(--olive-a11);--nautral: var(--olive-a5);--accent: var(--olive-a2)}.j-theme-tomato{--primary: var(--tomato-9);--primary-foreground: var(--tomato-contrast);--secondary: var(--tomato-a3);--secondary-foreground: var(--tomato-a11);--nautral: var(--tomato-a5);--accent: var(--tomato-a2);--code: var(--tomato-a3);--code-foreground: var(--tomato-a11)}.j-theme-ruby{--primary: var(--ruby-9);--primary-foreground: var(--ruby-contrast);--secondary: var(--ruby-a3);--secondary-foreground: var(--ruby-a11);--nautral: var(--ruby-a5);--accent: var(--ruby-a2);--code: var(--ruby-a3);--code-foreground: var(--ruby-a11)}.j-theme-pink{--primary: var(--pink-9);--primary-foreground: var(--pink-contrast);--secondary: var(--pink-a3);--secondary-foreground: var(--pink-a11);--nautral: var(--pink-a5);--accent: var(--pink-a2);--code: var(--pink-a3);--code-foreground: var(--pink-a11)}.j-theme-violet{--primary: var(--violet-9);--primary-foreground: var(--violet-contrast);--secondary: var(--violet-a3);--secondary-foreground: var(--violet-a11);--nautral: var(--violet-a5);--accent: var(--violet-a2);--code: var(--violet-a3);--code-foreground: var(--violet-a11)}.j-theme-indigo{--primary: var(--indigo-9);--primary-foreground: var(--indigo-contrast);--secondary: var(--indigo-a3);--secondary-foreground: var(--indigo-a11);--nautral: var(--indigo-a5);--accent: var(--indigo-a2);--code: var(--indigo-a3);--code-foreground: var(--indigo-a11)}.j-theme-blue{--primary: var(--blue-9);--primary-foreground: var(--blue-contrast);--secondary: var(--blue-a3);--secondary-foreground: var(--blue-a11);--nautral: var(--blue-a5);--accent: var(--blue-a2);--code: var(--blue-a3);--code-foreground: var(--blue-a11)}.j-theme-teal{--primary: var(--teal-9);--primary-foreground: var(--teal-contrast);--secondary: var(--teal-a3);--secondary-foreground: var(--teal-a11);--nautral: var(--teal-a5);--accent: var(--teal-a2);--code: var(--teal-a3);--code-foreground: var(--teal-a11)}.j-theme-grass{--primary: var(--grass-9);--primary-foreground: var(--grass-contrast);--secondary: var(--grass-a3);--secondary-foreground: var(--grass-a11);--nautral: var(--grass-a5);--accent: var(--grass-a2);--code: var(--grass-a3);--code-foreground: var(--grass-a11)}.j-theme-mint{--primary: var(--mint-9);--primary-foreground: var(--mint-contrast);--secondary: var(--mint-a3);--secondary-foreground: var(--mint-a11);--nautral: var(--mint-a5);--accent: var(--mint-a2);--code: var(--mint-a3);--code-foreground: var(--mint-a11)}.j-theme-lime{--primary: var(--lime-9);--primary-foreground: var(--lime-contrast);--secondary: var(--lime-a3);--secondary-foreground: var(--lime-a11);--nautral: var(--lime-a5);--accent: var(--lime-a2);--code: var(--lime-a3);--code-foreground: var(--lime-a11)}.j-theme-yellow{--primary: var(--yellow-9);--primary-foreground: var(--yellow-contrast);--secondary: var(--yellow-a3);--secondary-foreground: var(--yellow-a11);--nautral: var(--yellow-a5);--accent: var(--yellow-a2);--code: var(--yellow-a3);--code-foreground: var(--yellow-a11)}.j-theme-orange{--primary: var(--orange-9);--primary-foreground: var(--orange-contrast);--secondary: var(--orange-a3);--secondary-foreground: var(--orange-a11);--nautral: var(--orange-a5);--accent: var(--orange-a2);--code: var(--orange-a3);--code-foreground: var(--orange-a11)}.j-theme-gold{--primary: var(--gold-9);--primary-foreground: var(--gold-contrast);--secondary: var(--gold-a3);--secondary-foreground: var(--gold-a11);--nautral: var(--gold-a5);--accent: var(--gold-a2);--code: var(--gold-a3);--code-foreground: var(--gold-a11)}.dark{--popup-background-color: var(--gray-a2)}.j-font-sm{--font-size-2xl: 1.5rem;--font-size-xl: 1.125rem;--font-size-lg: 1rem;--font-size: .875rem;--font-size-md: .875rem;--font-size-sm: .75rem;--line-height-sm: 1rem;--line-height: 1.25rem;--line-height-lg: 1.5rem;--line-height-xl: 1.75rem;--line-height-2xl: 2rem;--el-height-sm: calc(var(--space, 0 .25rem) * 7);--el-height: calc(var(--space, 0 .25rem) * 9);--el-height-lg: calc(var(--space, 0 .25rem) * 11)}.j-font-md{--font-size-2xl: 2.25rem;--font-size-xl: 1.5rem;--font-size-lg: 1.25rem;--font-size: 1rem;--font-size-md: 1rem;--font-size-sm: .875rem;--line-height-sm: 1.25rem;--line-height: 1.5rem;--line-height-lg: 1.75rem;--line-height-xl: 2rem;--el-height-sm: calc(var(--space, 0 .25rem) * 9);--el-height: calc(var(--space, 0 .25rem) * 11);--el-height-lg: calc(var(--space, 0 .25rem) * 13)}.j-shadow-sm{--box-shadow-s: var(--shadow-xs);--box-shadow: var(--shadow-sm)}.j-shadow-md{--box-shadow-s: var(--shadow-sm);--box-shadow: var(--shadow-md)}.j-shadow-lg{--box-shadow-s: var(--shadow-md);--box-shadow: var(--shadow-lg)}.j-shadow-none{--box-shadow-s: 0 0 0 0;--box-shadow: 0 0 0 0}.j-radius-sm{--border-radius: 3px;--border-radius-s: 2px}.j-radius-md{--border-radius: 6px;--border-radius-s: 4px}.j-radius-lg{--border-radius: 9px;--border-radius-s: 6px}.j-radius-xl{--border-radius: 16px;--border-radius-s: 12px}.j-radius-none{--border-radius: 0;--border-radius-s: 0}}@layer layout{*,:after,::backdrop,:before,::file-selector-button{box-sizing:border-box}html:not(.wp-toolbar){-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;font-family:ui-sans-serif,system-ui,apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,PingFang SC,Microsoft YaHei,Noto Sans SC,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;line-height:1.5;color:var(--foreground);background-color:var(--background)}html.light,html.theme-light{color-scheme:light}html.dark,html.theme-dark{color-scheme:dark}body{min-width:var(--screen-xs, 320px);min-height:100vh;font-size:var(--font-size);line-height:var(--leading);text-rendering:optimizeSpeed;margin:0}img,video{max-width:100%;height:auto}img{-o-object-fit:cover;object-fit:cover}.container{width:100%;max-width:var(--screen-xl, 1200px);margin-inline:auto;padding-inline:var(--container-padding-inline, 1rem)}.flex-container{display:flex;flex-wrap:wrap;gap:var(--flex-container-gap, 1rem)}.flex-col{flex:1 1 0%;min-width:0}.flex-col-auto{flex:0 0 auto;width:auto}.flex-col-1{width:calc((100% - 0 * var(--flex-container-gap, 1rem)) / 1)}.flex-col-2{width:calc((100% - 1 * var(--flex-container-gap, 1rem)) / 2)}.flex-col-3{width:calc((100% - 2 * var(--flex-container-gap, 1rem)) / 3)}.flex-col-4{width:calc((100% - 3 * var(--flex-container-gap, 1rem)) / 4)}.flex-col-5{width:calc((100% - 4 * var(--flex-container-gap, 1rem)) / 5)}.flex-col-6{width:calc((100% - 5 * var(--flex-container-gap, 1rem)) / 6)}.flex-col-7{width:calc((100% - 6 * var(--flex-container-gap, 1rem)) / 7)}.flex-col-8{width:calc((100% - 7 * var(--flex-container-gap, 1rem)) / 8)}.flex-col-9{width:calc((100% - 8 * var(--flex-container-gap, 1rem)) / 9)}.flex-col-10{width:calc((100% - 9 * var(--flex-container-gap, 1rem)) / 10)}.flex-col-11{width:calc((100% - 10 * var(--flex-container-gap, 1rem)) / 11)}.flex-col-12{width:calc((100% - 11 * var(--flex-container-gap, 1rem)) / 12)}[class*=flex-col-]{flex:0 0 auto}@media(min-width:576px){.flex-col-sm-1{width:calc((100% - 0 * var(--flex-container-gap, 1rem)) / 1)}.flex-col-sm-2{width:calc((100% - 1 * var(--flex-container-gap, 1rem)) / 2)}.flex-col-sm-3{width:calc((100% - 2 * var(--flex-container-gap, 1rem)) / 3)}.flex-col-sm-4{width:calc((100% - 3 * var(--flex-container-gap, 1rem)) / 4)}.flex-col-sm-5{width:calc((100% - 4 * var(--flex-container-gap, 1rem)) / 5)}.flex-col-sm-6{width:calc((100% - 5 * var(--flex-container-gap, 1rem)) / 6)}.flex-col-sm-7{width:calc((100% - 6 * var(--flex-container-gap, 1rem)) / 7)}.flex-col-sm-8{width:calc((100% - 7 * var(--flex-container-gap, 1rem)) / 8)}.flex-col-sm-9{width:calc((100% - 8 * var(--flex-container-gap, 1rem)) / 9)}.flex-col-sm-10{width:calc((100% - 9 * var(--flex-container-gap, 1rem)) / 10)}.flex-col-sm-11{width:calc((100% - 10 * var(--flex-container-gap, 1rem)) / 11)}.flex-col-sm-12{width:calc((100% - 11 * var(--flex-container-gap, 1rem)) / 12)}}@media(min-width:768px){.flex-col-md-1{width:calc((100% - 0 * var(--flex-container-gap, 1rem)) / 1)}.flex-col-md-2{width:calc((100% - 1 * var(--flex-container-gap, 1rem)) / 2)}.flex-col-md-3{width:calc((100% - 2 * var(--flex-container-gap, 1rem)) / 3)}.flex-col-md-4{width:calc((100% - 3 * var(--flex-container-gap, 1rem)) / 4)}.flex-col-md-5{width:calc((100% - 4 * var(--flex-container-gap, 1rem)) / 5)}.flex-col-md-6{width:calc((100% - 5 * var(--flex-container-gap, 1rem)) / 6)}.flex-col-md-7{width:calc((100% - 6 * var(--flex-container-gap, 1rem)) / 7)}.flex-col-md-8{width:calc((100% - 7 * var(--flex-container-gap, 1rem)) / 8)}.flex-col-md-9{width:calc((100% - 8 * var(--flex-container-gap, 1rem)) / 9)}.flex-col-md-10{width:calc((100% - 9 * var(--flex-container-gap, 1rem)) / 10)}.flex-col-md-11{width:calc((100% - 10 * var(--flex-container-gap, 1rem)) / 11)}.flex-col-md-12{width:calc((100% - 11 * var(--flex-container-gap, 1rem)) / 12)}}@media(min-width:992px){.flex-col-lg-1{width:calc((100% - 0 * var(--flex-container-gap, 1rem)) / 1)}.flex-col-lg-2{width:calc((100% - 1 * var(--flex-container-gap, 1rem)) / 2)}.flex-col-lg-3{width:calc((100% - 2 * var(--flex-container-gap, 1rem)) / 3)}.flex-col-lg-4{width:calc((100% - 3 * var(--flex-container-gap, 1rem)) / 4)}.flex-col-lg-5{width:calc((100% - 4 * var(--flex-container-gap, 1rem)) / 5)}.flex-col-lg-6{width:calc((100% - 5 * var(--flex-container-gap, 1rem)) / 6)}.flex-col-lg-7{width:calc((100% - 6 * var(--flex-container-gap, 1rem)) / 7)}.flex-col-lg-8{width:calc((100% - 7 * var(--flex-container-gap, 1rem)) / 8)}.flex-col-lg-9{width:calc((100% - 8 * var(--flex-container-gap, 1rem)) / 9)}.flex-col-lg-10{width:calc((100% - 9 * var(--flex-container-gap, 1rem)) / 10)}.flex-col-lg-11{width:calc((100% - 10 * var(--flex-container-gap, 1rem)) / 11)}.flex-col-lg-12{width:calc((100% - 11 * var(--flex-container-gap, 1rem)) / 12)}}@media(min-width:1200px){.flex-col-xl-1{width:calc((100% - 0 * var(--flex-container-gap, 1rem)) / 1)}.flex-col-xl-2{width:calc((100% - 1 * var(--flex-container-gap, 1rem)) / 2)}.flex-col-xl-3{width:calc((100% - 2 * var(--flex-container-gap, 1rem)) / 3)}.flex-col-xl-4{width:calc((100% - 3 * var(--flex-container-gap, 1rem)) / 4)}.flex-col-xl-5{width:calc((100% - 4 * var(--flex-container-gap, 1rem)) / 5)}.flex-col-xl-6{width:calc((100% - 5 * var(--flex-container-gap, 1rem)) / 6)}.flex-col-xl-7{width:calc((100% - 6 * var(--flex-container-gap, 1rem)) / 7)}.flex-col-xl-8{width:calc((100% - 7 * var(--flex-container-gap, 1rem)) / 8)}.flex-col-xl-9{width:calc((100% - 8 * var(--flex-container-gap, 1rem)) / 9)}.flex-col-xl-10{width:calc((100% - 9 * var(--flex-container-gap, 1rem)) / 10)}.flex-col-xl-11{width:calc((100% - 10 * var(--flex-container-gap, 1rem)) / 11)}.flex-col-xl-12{width:calc((100% - 11 * var(--flex-container-gap, 1rem)) / 12)}}.grid-container{display:grid;gap:1rem;width:100%;grid-template-columns:1fr}.grid-col-1{grid-template-columns:repeat(1,1fr)}.grid-col-2{grid-template-columns:repeat(2,1fr)}.grid-col-3{grid-template-columns:repeat(3,1fr)}.grid-col-4{grid-template-columns:repeat(4,1fr)}.grid-col-5{grid-template-columns:repeat(5,1fr)}.grid-col-6{grid-template-columns:repeat(6,1fr)}.grid-col-7{grid-template-columns:repeat(7,1fr)}.grid-col-8{grid-template-columns:repeat(8,1fr)}.grid-col-9{grid-template-columns:repeat(9,1fr)}.grid-col-10{grid-template-columns:repeat(10,1fr)}.grid-col-11{grid-template-columns:repeat(11,1fr)}.grid-col-12{grid-template-columns:repeat(12,1fr)}.grid-col-auto-150{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.grid-col-auto-200{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.grid-col-auto-250{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.grid-col-auto-300{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}@media(min-width:576px){.grid-col-sm-1{grid-template-columns:repeat(1,1fr)}.grid-col-sm-2{grid-template-columns:repeat(2,1fr)}.grid-col-sm-3{grid-template-columns:repeat(3,1fr)}.grid-col-sm-4{grid-template-columns:repeat(4,1fr)}.grid-col-sm-5{grid-template-columns:repeat(5,1fr)}.grid-col-sm-6{grid-template-columns:repeat(6,1fr)}.grid-col-sm-7{grid-template-columns:repeat(7,1fr)}.grid-col-sm-8{grid-template-columns:repeat(8,1fr)}.grid-col-sm-9{grid-template-columns:repeat(9,1fr)}.grid-col-sm-10{grid-template-columns:repeat(10,1fr)}.grid-col-sm-11{grid-template-columns:repeat(11,1fr)}.grid-col-sm-12{grid-template-columns:repeat(12,1fr)}}@media(min-width:768px){.grid-col-md-1{grid-template-columns:repeat(1,1fr)}.grid-col-md-2{grid-template-columns:repeat(2,1fr)}.grid-col-md-3{grid-template-columns:repeat(3,1fr)}.grid-col-md-4{grid-template-columns:repeat(4,1fr)}.grid-col-md-6{grid-template-columns:repeat(6,1fr)}.grid-col-md-12{grid-template-columns:repeat(12,1fr)}}@media(min-width:992px){.grid-col-lg-1{grid-template-columns:repeat(1,1fr)}.grid-col-lg-2{grid-template-columns:repeat(2,1fr)}.grid-col-lg-3{grid-template-columns:repeat(3,1fr)}.grid-col-lg-4{grid-template-columns:repeat(4,1fr)}.grid-col-lg-6{grid-template-columns:repeat(6,1fr)}.grid-col-lg-12{grid-template-columns:repeat(12,1fr)}}@media(min-width:1200px){.grid-col-xl-1{grid-template-columns:repeat(1,1fr)}.grid-col-xl-2{grid-template-columns:repeat(2,1fr)}.grid-col-xl-3{grid-template-columns:repeat(3,1fr)}.grid-col-xl-4{grid-template-columns:repeat(4,1fr)}.grid-col-xl-6{grid-template-columns:repeat(6,1fr)}.grid-col-xl-12{grid-template-columns:repeat(12,1fr)}}.ios-safe-x{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.ios-safe-y{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.ios-safe-left{padding-left:env(safe-area-inset-left)}.ios-safe-right{padding-right:env(safe-area-inset-right)}.ios-safe-top{padding-top:env(safe-area-inset-top)}.ios-safe-bottom{padding-bottom:env(safe-area-inset-bottom)}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.aspect-auto{aspect-ratio:auto}.columns-auto{-moz-columns:auto;columns:auto}.columns-3xs{-moz-columns:var(--columns-3xs);columns:var(--columns-3xs)}.columns-2xs{-moz-columns:var(--columns-2xs);columns:var(--columns-2xs)}.columns-xs{-moz-columns:var(--columns-xs);columns:var(--columns-xs)}.columns-sm{-moz-columns:var(--columns-sm);columns:var(--columns-sm)}.columns-md{-moz-columns:var(--columns-md);columns:var(--columns-md)}.columns-lg{-moz-columns:var(--columns-lg);columns:var(--columns-lg)}.columns-xl{-moz-columns:var(--columns-xl);columns:var(--columns-xl)}.columns-2xl{-moz-columns:var(--columns-2xl);columns:var(--columns-2xl)}.columns-3xl{-moz-columns:var(--columns-3xl);columns:var(--columns-3xl)}.columns-4xl{-moz-columns:var(--columns-4xl);columns:var(--columns-4xl)}.columns-5xl{-moz-columns:var(--columns-5xl);columns:var(--columns-5xl)}.columns-6xl{-moz-columns:var(--columns-6xl);columns:var(--columns-6xl)}.columns-7xl{-moz-columns:var(--columns-7xl);columns:var(--columns-7xl)}}@layer icon{svg{display:block}.icon-loader{display:inline-block;width:var(--font-size-xl);height:var(--font-size-xl);border:1px solid currentcolor;border-right-color:transparent;border-radius:50%;animation:var(--speed-xl) linear infinite animate-spin}.icon-close{box-sizing:border-box;position:relative;display:block;transform:scale(1);width:var(--font-size-xl);height:var(--font-size-xl);border:1px solid;border-radius:50%;color:inherit;cursor:pointer}.icon-close:after,.icon-close:before{content:"";position:absolute;box-sizing:border-box;top:50%;left:50%;width:12px;height:2px;background:currentColor;border-radius:1px;transform-origin:center center}.icon-close:before{transform:translate(-50%,-50%) rotate(45deg)}.icon-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.icon-close:active{transform:translateY(1px)}.icon-close:focus-within{background-color:var(--accent)}.el-icon[data-action-close]{cursor:pointer}.el-icon[data-action-close]:active{transform:scale(.85)}}@layer components{.is-sad{filter:grayscale(100%)}.is-reset:where(a){cursor:pointer;text-decoration:none;color:inherit;outline:none}.is-reset:where(button){-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:default;background-color:transparent;border:none;font-size:inherit;font-family:inherit;line-height:inherit;letter-spacing:inherit;outline:none;color:inherit;padding:0;margin:0;text-align:initial;-webkit-tap-highlight-color:transparent}.is-reset:where(h1,h2,h3,h4,h5,h6){font-size:inherit;font-weight:inherit;margin:0}.is-reset:where(ol,ul){list-style:none;margin:0;padding:0}.is-reset:where(p){margin:0}.is-reset:where(pre){font-family:inherit;margin:0}.j-button{display:inline-flex;justify-content:center;align-items:center;flex-wrap:nowrap;gap:calc(var(--space) * 1);white-space:nowrap;font-weight:var(--font-medium, 500);font-size:var(--font-size, .875rem);line-height:var(--line-height, 1.25rem);background-color:transparent;padding:var(--button-padding, .5rem 1rem);height:var(--button-height, var(--el-height));border-width:var(--border-width, 1px);border-style:var(--border-style, solid);border-color:var(--button-border-color, transparent);border-radius:var(--button-border-radius, var(--border-radius));box-shadow:var(--box-shadow);cursor:pointer;-webkit-appearance:button;-moz-appearance:button;appearance:button;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation}.j-button.is-sm{font-size:var(--font-size-sm, .75rem);height:var(--button-height-sm, var(--el-height-sm));padding:var(--button-padding-sm, .25rem .5rem)}.j-button.is-lg{font-size:var(--font-size-lg, 1rem);height:var(--button-height-lg, var(--el-height-lg));padding:var(--button-padding-lg, .75rem 1.5rem)}.j-button .button-content{display:contents}.j-button svg{width:var(--font-size, 1rem);fill:currentColor}.j-button.is-default{background-color:var(--background);color:var(--foreground);border-color:var(--border-color)}.j-button.is-default:hover:not(:disabled){background-color:var(--gray-a2);opacity:var(--opacity-hover, .9)}.j-button.is-primary{background-color:var(--primary);color:var(--primary-foreground)}.j-button.is-primary:hover:not(:disabled){opacity:var(--opacity-hover, .9)}.j-button.is-secondary{border-color:transparent;background-color:var(--secondary);color:var(--secondary-foreground)}.j-button.is-secondary:hover:not(:disabled){opacity:var(--opacity-hover, .8)}.j-button.is-outline{background-color:transparent;color:var(--primary);border-color:var(--primary)}.j-button.is-outline:hover:not(:disabled){background-color:var(--accent)}.j-button.is-ghost{box-shadow:none;transition-property:none}.j-button.is-ghost:hover:not(:disabled){background-color:var(--accent)}.j-button.is-text{border-color:transparent;height:var(--button-text-height, auto);padding:var(--button-text-padding, 0);position:var(--button-text-position, relative);border-radius:var(--button-text-radius, 0);box-shadow:var(--button-text-shadow, none)}.j-button.is-text:before{content:"";position:absolute;bottom:0;left:0;right:100%;border-bottom:var(--button-text-underline, 1px solid currentColor);transition:var(--button-text-underline-transition, right .3s ease-out)}.j-button.is-text:hover:not(:disabled):before,.j-button.is-text.is-active:not(:disabled):before,.j-button.is-text:focus-visible:not(:disabled):before{right:0}.j-button.is-icon{aspect-ratio:var(--uk-btn-icon-aspect-ratio, 1);padding:var(--uk-btn-icon-padding, 0)}.j-button:disabled{opacity:var(--opacity-disabled, .5)}.j-button:active{transform:translateY(1px)}.j-button:disabled:active{transform:none}.j-button a,.j-button a:hover{color:inherit}.j-button.is-danger:hover:not(:disabled),.j-button.is-warning:hover:not(:disabled),.j-button.is-success:hover:not(:disabled){opacity:var(--opacity-hover, .9)}.j-button.is-danger{background-color:var(--danger);color:var(--danger-foreground)}.j-button.is-danger:focus-visible{--ring: var(--danger)}.j-button.is-warning{background-color:var(--warning);color:var(--warning-foreground)}.j-button.is-warning:focus-visible{--ring: var(--warning)}.j-button.is-success{background-color:var(--success);color:var(--success-foreground)}.j-button.is-success:focus-visible{--ring: var(--success)}.j-button:focus-visible,.j-button.is-active{outline:2px solid var(--ring, var(--primary));border-color:transparent}.j-button.is-text:focus-visible,.j-button.is-text.is-active{outline:none}.j-button-group{display:flex}.j-button-group .j-button:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.j-button-group .j-button:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.j-avatar{display:inline-block;vertical-align:middle;border-radius:var(--border-radius);width:var(--el-height);height:var(--el-height);overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;-o-object-fit:cover;object-fit:cover}.j-avatar.is-sm{width:var(--el-height-sm);height:var(--el-height-sm)}.j-avatar.is-lg{width:var(--el-height-lg);height:var(--el-height-lg)}.j-avatar.is-round{border-radius:8px}.j-avatar.is-text{background-color:var(--accent);color:var(--primary);display:flex;justify-content:center;align-items:center}.j-avatar-group{display:flex;justify-content:center;align-items:center;flex-wrap:nowrap}.j-avatar-group .j-avatar{border:1.5px solid var(--avatar-border-color, var(--background))}.j-avatar-group .j-avatar:not(:first-child){margin-inline-start:calc(var(--space) * -3)}.j-avatar-group .j-avatar.is-text:last-child{font-size:var(--font-size-sm, .75rem);background-color:var(--gray-2)}.j-avatar-group .j-avatar:last-child.is-text{background-color:var(--gray-3)}.dark .j-avatar-group .j-avatar:last-child.is-text{color:var(--foreground)}.j-badge{display:inline-flex;justify-content:center;align-items:center;padding:0 var(--badge-padding, .375rem);min-width:var(--badge-min-width, 1.25rem);height:var(--badge-height, 1.25rem);line-height:var(--badge-height, var(--line-height));font-size:var(--font-size, .875rem);font-weight:var(--font-medium, 500);border-radius:var(--badge-radius, 500px);border:1px solid var(--badge-border-color, var(--gray-a6));color:var(--badge-foreground, var(--foreground));background-color:var(--badge-color, var(--background));box-shadow:var(--badge-shadow, var(--box-shadow))}.j-badge.is-primary{--badge-color: var(--primary);--badge-foreground: var(--primary-foreground);--badge-border-color: var(--primary)}.j-badge.is-secondary{--badge-color: var(--gray-12);--badge-foreground: var(--gray-1)}.j-badge.is-danger{--badge-color: var(--danger);--badge-foreground: var(--danger-foreground);--badge-border-color: var(--danger)}.j-tag{display:inline-flex;justify-content:center;align-items:center;gap:var(--tag-gap, var(--space));padding:0 var(--tag-padding, calc(var(--space) * 1.5));height:var(--tag-height, calc(var(--space) * 6));line-height:var(--tag-height, var(--line-height-sm));font-size:var(--font-size-sm, .75rem);font-weight:var(--font-normal, 400);border-radius:var(--tag-radius, var(--border-radius));border:1px solid var(--tag-border-color, var(--gray-a6));color:var(--tag-foreground, var(--foreground));background-color:var(--tag-color, var(--background));box-shadow:var(--tag-shadow, var(--box-shadow))}.j-font-md .j-tag{--tag-padding: calc(var(--space) * 2);--tag-height: calc(var(--space) * 8)}.j-tag:hover{opacity:var(--opacity-hover, .9)}.j-tag.is-default:hover{background-color:var(--gray-a2)}.j-tag.is-primary{--tag-color: var(--primary);--tag-foreground: var(--primary-foreground);--tag-border-color: var(--primary)}.j-tag.is-secondary{--tag-color: var(--secondary);--tag-foreground: var(--secondary-foreground);--tag-border-color: transparent}.j-tag.is-outline{--tag-color: transparent;--tag-foreground: var(--primary);--tag-border-color: var(--primary)}.j-tag.is-ghost{--tag-border-color: transparent;--tag-shadow: none}.j-tag.is-outline:hover,.j-tag.is-ghost:hover{background-color:var(--accent)}.j-tag svg{width:var(--font-size-sm, .75rem);height:var(--font-size-sm, .75rem)}.j-tag .el-icon[data-action-close]:hover{color:var(--primary-foreground);background-color:var(--primary);border-radius:50%}.j-tag.is-default .el-icon[data-action-close]:hover,.j-tag.is-ghost .el-icon[data-action-close]:hover{background-color:var(--gray-a12);color:var(--gray-2)}.j-tag.is-primary .el-icon[data-action-close]:hover{color:var(--primary);background-color:var(--primary-foreground)}.j-popup-layout{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--popup-background-color);backdrop-filter:blur(var(--drop-blur));display:flex;padding:var(--popup-layout-padding, calc(var(--space) * 4));z-index:var(--z-index-popup)}.j-popup-layout,.j-popup-layout.is-center,.j-popup-layout.is-center-center{justify-content:center;align-items:center}.j-popup-layout.is-top,.j-popup-layout.is-top-center{justify-content:center;align-items:flex-start}.j-popup-layout.is-bottom,.j-popup-layout.is-bottom-center{justify-content:center;align-items:flex-end}.j-popup-layout.is-left,.j-popup-layout.is-left-center{justify-content:flex-start;align-items:center}.j-popup-layout.is-right,.j-popup-layout.is-right-center{justify-content:flex-end;align-items:center}.j-popup-layout.is-top-left,.j-popup-layout.is-left-top{justify-content:flex-start;align-items:flex-start}.j-popup-layout.is-top-right,.j-popup-layout.is-right-top{justify-content:flex-end;align-items:flex-start}.j-popup-layout.is-bottom-left,.j-popup-layout.is-left-bottom{justify-content:flex-start;align-items:flex-end}.j-popup-layout.is-bottom-right,.j-popup-layout.is-right-bottom{justify-content:flex-end;align-items:flex-end}.j-modal{background:var(--background);border-radius:var(--border-radius);box-shadow:var(--box-shadow);min-width:300px;max-width:500px;max-height:90vh;overflow:hidden;animation:animate-fade-in .35s ease-in-out;display:flex;flex-direction:column;position:relative}.j-popup-layout:has(.is-fullscreen){padding:0}.j-modal.is-fullscreen{width:100%;height:100%;max-width:none;max-height:none}.j-modal .modal-header{padding:var(--modal-header-padding, 8px 12px);border-bottom:1px solid var(--modal-border-color, var(--gray-a3));display:flex;justify-content:space-between;align-items:center;gap:var(--space)}.j-modal .modal-header .modal-title{margin:0;font-size:var(--modal-title-font-size, var(--font-size));font-weight:500}.j-modal .modal-header .modal-close{font-size:var(--modal-close-font-size, var(--font-size-lg));cursor:pointer;color:var(--modal-close-color, var(--gray-11));text-align:center}.j-modal .modal-header .modal-close:focus-within{outline:2px solid var(--primary);color:var(--primary)}.j-modal .modal-header .modal-close:hover{color:var(--primary);background-color:var(--accent)}.j-modal .modal-body{padding:var( --modal-body-padding, calc(var(--space) * 4) calc(var(--space) * 3) );overflow-y:auto;overflow-wrap:break-word;flex:1}.j-modal .modal-body p{margin:0;line-height:var(--line-height)}.j-modal .modal-footer{padding:var( --modal-footer-padding, calc(var(--space) * 2) calc(var(--space) * 3) );border-top:var(--modal-border-width, 1px) solid var(--modal-border-color, var(--gray-a3));display:flex;justify-content:flex-end;gap:var(--modal-footer-gap, calc(var(--space) * 3))}.j-form,.j-form .form-item,.j-form .form-item .item-label{display:flex}.j-form.is-vertical{flex-direction:column;gap:var(--form-gap, calc(var(--space) * 3))}.j-form.is-horizontal{flex-direction:row;gap:var(--form-gap, calc(var(--space) * 2))}.j-form .form-item{gap:var(--form-label-gap, calc(var(--space) * 1))}.j-form.is-item-vertical .form-item{flex-direction:column}.j-form.is-item-horizontal .form-item{flex-direction:row}.j-form .form-item .item-label,.j-form .form-item .form-control{gap:var(--form-label-gap, calc(var(--space) * 1))}.j-form.is-horizontal .form-item .item-label{align-items:center;height:var(--horizontal-form-label-height, var(--el-height))}label.is-required:after{content:"*";color:var(--red-9)}.j-form .form-item .form-control{display:flex;flex-direction:column}.j-form .form-item .form-control .help-block{font-size:var(--font-size-sm, .75rem);color:var(--gray-10)}.j-form .form-item .form-control .help-block.is-invalid{color:var(--danger)}.j-form .form-buttons{display:flex;gap:var(--form-buttons-gap, calc(var(--space) * 2))}.j-input:not([type=checkbox]):not([type=radio]){padding:var(--input-padding-y, calc(var(--space) * 1.5)) var(--input-padding-x, calc(var(--space) * 2));border-width:var(--input-border-width, 1px);border-style:var(--input-border-style, solid);border-color:var(--input-border-color, var(--gray-a8));border-radius:var(--input-border-radius, var(--border-radius-s, 4px));height:var(--input-height, var(--el-height));line-height:var(--input-line-height, var(--line-height));box-shadow:var(--box-shadow-s);background-color:inherit}.j-input:not([type=checkbox]):not([type=radio]):not([type=file]){font-size:var(--input-font-size, var(--font-size, .875rem))}.j-input:not([type=checkbox]):not([type=radio]):focus-within,.j-input:focus-within{outline:var(--input-focus-outline, 2px solid var(--primary));border-color:transparent;box-shadow:var(--input-focus-shadow, none)}.j-input:disabled,.j-textarea:disabled{opacity:var(--input-disabled-opacity, var(--opacity-disabled, .5))}.j-input:disabled:not(.is-line):not(.is-ghost):not(.is-blank){background-color:var(--gray-a5)}.j-input.is-sm:not([type=checkbox]):not([type=radio]){height:var(--input-height-sm, var(--el-height-sm));font-size:var(--input-font-size-sm, var(--font-size-sm, .75rem));line-height:var(--input-line-height-sm, var(--line-height-sm, 1rem))}.j-input.is-lg:not([type=checkbox]):not([type=radio]){height:var(--input-height-lg, var(--el-height-lg));font-size:var(--input-font-size-lg, var(--font-size-lg, 1rem));line-height:var(--input-line-height-lg, var(--line-height-lg, 1.5))}input.j-input[type=file]{display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-clip:padding-box;overflow:hidden}input.j-input[type=file]{font-size:var(--font-size-sm, .75rem)}input.j-input[type=file]:not(:disabled):not([readonly]){cursor:pointer}input.j-input[type=file]::file-selector-button,html.j-font-sm input.j-input[type=file]::file-selector-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-width:0;border-inline-end-width:1px;border-radius:0;margin:calc(var(--space) * -2.25);margin-inline-end:calc(var(--space) * 2);padding:calc(var(--space) * 2.75);border-color:var(--input-border-color, var(--gray-a8));background-color:var(--gray-a3);font-size:var(--font-size-sm, .75rem)}html.j-font-md input.j-input[type=file]::file-selector-button{margin-inline-end:calc(var(--space) * 3);padding:calc(var(--space) * 3)}.j-input.is-line:not([type=checkbox]):not([type=radio]){border-top-color:transparent;border-left-color:transparent;border-right-color:transparent;padding-left:0;padding-right:0}.j-input.is-ghost:not([type=checkbox]):not([type=radio]){border-color:transparent;background-color:var(--accent)}.j-input.is-blank:not([type=checkbox]):not([type=radio]){border-color:transparent;padding-left:0;padding-right:0}.j-radio{display:flex;gap:var(--radio-gap, calc(var(--space) * 1.5))}.j-radio.is-vertical{flex-direction:column}.j-radio,.j-radio.is-horizontal{flex-direction:row}.j-radio label{display:flex;gap:var(--radio-label-gap, calc(var(--space) * 1))}.j-radio label input[type=radio]{background-color:var(--background);border:1px solid var(--gray-a8);-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;display:flex;justify-content:center;align-items:center}.j-radio label input[type=radio]:checked{background-color:var(--primary);border-color:var(--primary)}.j-radio label input[type=radio]:before{content:"";width:6px;height:6px;border-radius:50%;transition:all .1s cubic-bezier(.165,.84,.44,1);background-color:var(--background);transform:scale(0)}.j-radio label input[type=radio]:checked:before{transform:scale(1)}.j-radio label input[type=radio]:focus-within{border-color:transparent;outline-offset:1px}.j-radio.is-group{gap:0}.j-radio.is-group input[type=radio]{clip:rect(0 0 0 0);clip-path:inset(100%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.j-radio.is-group label.radio-label span.radio-text{display:block;cursor:pointer;background-color:var(--background);padding:var( --radio-group-padding, calc(var(--space) * 2) calc(var(--space) * 3) );position:relative;margin-left:.0625em;box-shadow:0 0 0 .0625em var(--gray-a8);text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.j-radio.is-group input[type=radio]:checked+span.radio-text{box-shadow:0 0 0 .0625em var(--primary);background-color:var(--primary, var(--indigo-9));z-index:1;color:var(--primary-foreground)}.j-radio.is-group label.radio-label:first-child span{border-radius:var(--border-radius-s) 0 0 var(--border-radius-s)}.j-radio.is-group label.radio-label:last-child span{border-radius:0 var(--border-radius-s) var(--border-radius-s) 0}.j-checkbox{display:flex;gap:var(--checkbox-gap, calc(var(--space) * 1.5))}.j-checkbox.is-vertical{flex-direction:column}.j-checkbox,.j-checkbox.is-horizontal{flex-direction:row}.j-checkbox label{display:flex;gap:var(--checkbox-label-gap, calc(var(--space) * 1))}input.j-input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1rem;height:1rem;border-width:var(--input-border-width, 1px);border-style:var(--input-border-style, solid);border-color:var(--input-border-color, var(--gray-a8));border-radius:var(--input-border-radius, var(--border-radius-s));cursor:pointer;position:relative}input.j-input[type=checkbox]:checked{background-color:var(--primary);border:none;border-radius:var(--border-radius);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' width='16' height='16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8.5l2.5 2.5l5.5 -5.5'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center;background-size:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact}.j-theme-yellow input.j-input[type=checkbox]:checked,.j-theme-mint input.j-input[type=checkbox]:checked,.j-theme-lime input.j-input[type=checkbox]:checked,.dark.j-theme-gray input.j-input[type=checkbox]:checked,.dark.j-theme-olive input.j-input[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' width='16' height='16'%3e%3cpath fill='none' stroke='%23000000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8.5l2.5 2.5l5.5 -5.5'/%3e%3c/svg%3e")}input.j-input[type=checkbox]:focus-within{border-color:var(--primary);outline-offset:1px}input.j-input:not([type=checkbox]):not([type=radio]).is-valid,input.j-input:not([type=checkbox]):not([type=radio]).is-invalid{padding-right:calc(1.4285714286em + .875rem);background-repeat:no-repeat;background-position:right calc(.3571428572em + .21875rem) center;background-size:calc(.7142857143em + .4375rem) calc(.7142857143em + .4375rem)}input.j-input:not([type=checkbox]):not([type=radio]).is-valid{border-color:var(--form-valid-border-color, var(--success));background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%232fb344' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='20 6 9 17 4 12'%3e%3c/polyline%3e%3c/svg%3e")}input.j-input:not([type=checkbox]):not([type=radio]).is-invalid{border-color:var(--form-invalid-border-color, var(--danger));background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23d63939' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cline x1='18' y1='6' x2='6' y2='18'%3e%3c/line%3e%3cline x1='6' y1='6' x2='18' y2='18'%3e%3c/line%3e%3c/svg%3e")}input.j-input:not([type=checkbox]):not([type=radio]).is-valid:focus-within{border-color:transparent;outline-color:var(--form-valid-border-color, var(--success))}input.j-input:not([type=checkbox]):not([type=radio]).is-invalid:focus-within{border-color:transparent;outline-color:var(--form-invalid-border-color, var(--danger))}.j-switch.is-default{position:relative}.j-switch.is-default.is-sm{width:1.75rem;height:calc(var(--space, 0 .25rem) * 4)}.j-switch.is-default.is-md{width:2.625rem;height:calc(var(--space, 0 .25rem) * 6)}.j-switch.is-default input[type=checkbox]{width:0;height:0;opacity:0}.j-switch.is-default .switch-slider{position:absolute;cursor:pointer;inset:0;border-radius:50px;background-color:var(--gray-a6);transition:all .3s ease}.j-switch.is-default .switch-slider:after{content:"";position:absolute;border-radius:50%;background-color:#fff;box-shadow:0 1px 3px #0000004d;transition:all .3s ease}.j-switch.is-default.is-sm .switch-slider:after{left:.125rem;bottom:.125rem;width:.75rem;height:.75rem}.j-switch.is-default.is-md .switch-slider:after{left:.1875rem;bottom:.1875rem;width:1.125rem;height:1.125rem}.j-switch.is-default input[type=checkbox]:checked+.switch-slider{background-color:var(--primary)}.j-switch.is-default.is-sm input[type=checkbox]:checked+.switch-slider:after{transform:translate(.75rem)}.j-switch.is-default.is-md input[type=checkbox]:checked+.switch-slider:after{transform:translate(1.125rem)}.j-theme-gray .j-switch.is-default input[type=checkbox]:checked+.switch-slider:after{background-color:var(--gray-1)}.j-theme-olive .j-switch.is-default input[type=checkbox]:checked+.switch-slider:after{background-color:var(--olive-1)}.j-switch.is-default .switch-slider:hover{opacity:var(--opacity-hover, .9)}.j-switch.is-line{position:relative;display:inline-block}.j-switch.is-line.is-sm{width:1.75rem;height:calc(var(--space, 0 .25rem) * 4)}.j-switch.is-line.is-md{width:2.625rem;height:calc(var(--space, 0 .25rem) * 6)}.j-switch.is-line input[type=checkbox]{opacity:0;width:0;height:0}.j-switch.is-line .switch-slider{position:absolute;cursor:pointer;inset:0;border:1px solid var(--input-border-color, var(--gray-a8));border-radius:50px;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.j-switch.is-line.is-md .switch-slider{border-width:2px}.j-switch.is-line .switch-slider:before{content:"";position:absolute;background-color:var(--gray-a8);border-radius:inherit;transition:all .4s cubic-bezier(.23,1,.32,1)}.j-switch.is-line.is-sm .switch-slider:before{left:.125rem;bottom:.125rem;width:.625rem;height:.625rem}.j-switch.is-line.is-md .switch-slider:before{left:.125rem;bottom:.125rem;width:1rem;height:1rem}.j-switch.is-line input:checked+.switch-slider{box-shadow:0 0 8px var(--primary);border-color:var(--primary)}.j-switch.is-line input:checked+.switch-slider:before{background-color:var(--primary)}.j-switch.is-line.is-sm input:checked+.switch-slider:before{transform:translate(.75rem)}.j-switch.is-line.is-md input:checked+.switch-slider:before{transform:translate(1.125rem)}select.j-select{padding:var(--select-padding-y, calc(var(--space) * 1.5)) var(--select-padding-x, calc(var(--space) * 2));border-width:var(--select-border-width, 1px);border-style:var(--select-border-style, solid);border-color:var(--select-border-color, var(--gray-a8));border-radius:var(--select-border-radius, var(--border-radius-s, 4px));height:var(--select-height, var(--el-height));line-height:var(--select-line-height, var(--line-height));box-shadow:var(--box-shadow-s);background-color:inherit}textarea.j-textarea{min-height:var(--textarea-min-height, calc(var(--space) * 18));border:var(--textarea-border-width, 1px) var(--textarea-border-style, solid) var(--textarea-border, var(--gray-a8));border-radius:var(--textarea-border-radius, var(--border-radius-s, 4px));resize:vertical;padding:var(--textarea-padding, calc(var(--space) * 2));background-color:inherit}.j-form.is-vertical input.j-input:not([type=checkbox]):not([type=radio]),.j-form.is-vertical select.j-select,.j-form.is-vertical textarea.j-textarea{width:100%}textarea.j-textarea:focus-within{outline:var(--textarea-focus-outline, 2px solid var(--primary));border-color:transparent}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>input.j-input,.input-group>select.j-select{position:relative;flex:1 1 auto;width:1%;min-width:0;letter-spacing:.4px}.input-group>.el-addon>.j-button{position:relative;border-color:var(--input-border-color, var(--gray-a8))}.input-group>.j-input:focus-within{z-index:2}.input-group>.el-addon>.j-button:not(:disabled):active{transform:none;outline:var(--input-focus-outline, 2px solid var(--primary));border-color:transparent;z-index:2}.input-group>.el-addon>.is-text{display:flex;align-items:center;white-space:nowrap;font-size:var(--font-size, .875rem);line-height:var(--line-height, 1.25rem);color:var(--gray-11);background-color:var(--input-group-text-addon-background, var(--gray-3));padding:var(--input-group-text-addon-padding, .5rem .75rem);height:var(--button-height, var(--el-height));border-width:var(--border-width, 1px);border-style:var(--border-style, solid);border-color:var(--input-border-color, var(--gray-a8));border-radius:var(--button-border-radius, var(--border-radius));box-shadow:var(--box-shadow);-webkit-user-select:none;-moz-user-select:none;user-select:none}.input-group>.el-addon>.is-text.icon-close{width:var(--button-height, var(--el-height))}.input-group>*:not(:first-child){margin-left:-1px}.input-group>input.j-input:not(:first-child),.input-group>select.j-select:not(:first-child),.input-group>:not(select.j-select)+.el-addon:not(:first-child)>.is-text{border-left-color:transparent}.input-group>input.j-input:not(:first-child),.input-group>*:not(:first-child)>*,.input-group>*:not(:first-child)>.is-text{border-top-left-radius:0;border-bottom-left-radius:0}.input-group>input.j-input:not(:last-child),.input-group>*:not(:last-child)>*,.input-group>*:not(:last-child)>.is-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-inner-group{position:relative}.input-inner-group>input.j-input{width:100%;letter-spacing:.4px}.input-inner-group>input.j-input:not(:last-child){padding-right:var(--el-height)}.input-inner-group>input.j-input:not(:first-child){padding-left:var(--el-height)}.input-inner-group>.el-addon{position:absolute;top:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;min-width:var(--el-height);color:var(--gray-9);font-size:.875em}.input-inner-group>.el-addon:last-child{right:0;left:auto}.input-inner-group>.el-addon:first-child.is-text:has(.j-button:not(.is-icon)){left:var(--space)}.input-inner-group>.el-addon:last-child.is-text:has(.j-button:not(.is-icon)){right:var(--space)}.input-inner-group>.el-addon>svg{width:var(--font-size-xl);height:var(--font-size-xl)}.input-inner-group>.el-addon>.el-text{color:currentColor}.input-inner-group>.el-addon.is-text{color:var(--foreground);display:flex;gap:var(--space)}input:-moz-read-only,input.j-input:not([type=checkbox]):not([type=radio]):-moz-read-only,textarea:-moz-read-only{background-color:var(--gray-a3);opacity:var(--opacity-readonly)}input:read-only,input.j-input:not([type=checkbox]):not([type=radio]):read-only,textarea:read-only{background-color:var(--gray-a3);opacity:var(--opacity-readonly)}.j-loading{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--loading-background, var(--gray-a1));display:none;justify-content:center;align-items:center;z-index:var(--loading-index, inherit);backdrop-filter:blur(var(--drop-blur-sm, 2px))}.loading-spinner{width:var(--loading-spinner-width, 3rem);height:var(--loading-spinner-height, 3rem);border:4px solid var(--loading-spinner-background, var(--primary-foreground));border-top:4px solid var(--loading-spinner-color, var(--primary));border-radius:50%;animation:animate-spin 1s linear infinite}.j-loading.is-active{display:flex}.j-toast-container{position:fixed;top:calc(var(--space, .25rem) * 2);right:calc(var(--space, .25rem) * 2);z-index:var(--z-index-toast, 9980);display:flex;flex-direction:column;gap:calc(var(--space, .25rem) * 2);align-items:center;left:50%;transform:translate(-50%);pointer-events:none}.j-toast{display:flex;align-items:center;padding:var( --toast-padding, calc(var(--space, .25rem) * 3) calc(var(--space, .25rem) * 4) );border-radius:var(--border-radius, .125rem);box-shadow:var(--box-shadow, 0 4px 12px rgba(0, 0, 0, .15));font-size:var(--font-size, .875rem);opacity:0;transform:translateY(-100%);transition:all .3s ease-in-out;cursor:pointer;min-width:200px;max-width:310px;word-break:break-all;pointer-events:auto}.j-toast.toast-show{opacity:1;transform:translateY(0)}.j-toast.toast-hide{opacity:0;transform:translateY(-100%)}.j-toast .toast-icon{margin-right:calc(var(--space, .25rem) * 2);width:var(--font-size-lg, 1rem)}.j-toast .toast-message{flex:1}.j-toast.is-success{color:var(--green-10);background-color:var(--green-2);border:1px solid var(--green-6)}.j-toast.is-success .toast-icon{color:var(--green-10)}.j-toast.is-error{color:var(--red-10);background-color:var(--red-2);border:1px solid var(--red-6)}.j-toast.is-error .toast-icon{color:var(--red-10)}.j-toast.is-warning{color:var(--amber-10);background-color:var(--amber-2);border:1px solid var(--amber-6)}.j-toast.is-warning .toast-icon{color:var(--amber-10)}.j-toast.is-info{color:var(--indigo-9);background-color:var(--indigo-2);border:1px solid var(--indigo-6)}.j-toast.is-info .toast-icon{color:var(--indigo-9)}.j-toast-lite{position:fixed;top:45%;left:50%;transform:translate(-50%,-50%);transition:all .3s ease-in-out;opacity:0;z-index:var(--z-index-toast, 9980);font-size:var(--font-size, .875rem);text-align:center;color:#fff;background:#000000bf;border-radius:var(--border-radius, 6px);padding:calc(var(--space, .25rem) * 2) calc(var(--space, .25rem) * 3);max-width:calc(var(--screen-sm) / 2);-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.j-toast-lite.is-show{opacity:1;transform:translate(-50%,-50%) scale(1)}.j-toast-lite.is-hide{opacity:0;transform:translate(-50%,-50%) scale(.9)}.j-tip{position:relative;display:grid;width:100%;grid-template-columns:0 1fr;align-items:flex-start;row-gap:calc(var(--space, .25rem) * 2);border-radius:var(--tip-radius, var(--border-radius));border-style:var(--tip-border-style, solid);border-width:var(--tip-border-width, 1px);border-color:var(--tip-border-color, var(--border-color));padding-inline:calc(var(--space, .25rem) * 4);padding-block:calc(var(--space, .25rem) * 3);font-size:var(--font-size, .875rem);color:var(--tip-foreground, var(--foreground));background-color:var(--tip-background, var(--background));line-height:var(--line-height, 1.25rem);box-shadow:var(--box-shadow)}.j-tip:has(.tip-icon){-moz-column-gap:calc(var(--space, .25rem) * 3);column-gap:calc(var(--space, .25rem) * 3);grid-template-columns:calc(var(--space) * 4) 1fr}.j-font-md .j-tip:has(.tip-icon){-moz-column-gap:calc(var(--space, .25rem) * 5);column-gap:calc(var(--space, .25rem) * 5)}.j-tip .tip-icon,.j-tip .tip-icon svg{width:var(--font-size-xl, 1.125rem);height:var(--font-size-xl, 1.125rem)}.j-tip .tip-icon{color:var(--tip-icon-color, var(--tip-color));transform:translateY(calc(var(--space, .25rem) * .5))}.j-tip .tip-title{grid-column-start:2;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;min-height:calc(var(--space, .25rem) * 4);font-weight:var(--font-medium, 500)}.j-tip .tip-content{grid-column-start:2;display:grid;justify-items:start;gap:calc(var(--space, .25rem) * 2);line-height:var(--line-height-sm)}.j-tip .tip-content>*{margin:0}.j-tip.is-success{--tip-border-color: var(--success);--tip-color: var(--success)}.j-tip.is-warning{--tip-border-color: var(--warning);--tip-color: var(--warning)}.j-tip.is-danger{--tip-border-color: var(--danger);--tip-color: var(--danger)}.j-offcanvas-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--gray-a1);z-index:var(--z-index-overlay, 9950);opacity:0;transition:opacity .3s ease}.j-offcanvas-overlay.is-active{opacity:1}.j-offcanvas{position:fixed;z-index:var(--z-index-offcanvas, 9960);background:var(--background);box-shadow:var(--box-shadow)}.j-offcanvas.is-slide,.j-offcanvas.is-push{transition:transform .3s ease}.j-offcanvas:not(.is-slide):not(.is-push){transition:none}.j-offcanvas.is-left{top:0;left:0;width:300px;height:100%;transform:translate(-100%);border-right:var(--border-sm)}.j-offcanvas.is-right{top:0;right:0;width:300px;height:100%;transform:translate(100%);border-left:var(--border-sm)}.j-offcanvas.is-top{top:0;left:0;width:100%;height:200px;transform:translateY(-100%);border-bottom:var(--border-sm)}.j-offcanvas.is-bottom{bottom:0;left:0;width:100%;height:200px;transform:translateY(100%);border-top:var(--border-sm)}.j-offcanvas.is-slide.is-active,.j-offcanvas.is-active:not(.is-push){transform:translate(0)}.offcanvas-push-body{transition:transform .3s ease;width:100vw;height:100vh;overflow:hidden}.offcanvas-push-left{transform:translate(300px)}.offcanvas-push-right{transform:translate(-300px)}.offcanvas-push-top{transform:translateY(200px)}.offcanvas-push-bottom{transform:translateY(-200px)}.j-offcanvas .offcanvas-content{height:100%;overflow-y:auto;box-sizing:border-box}.j-theme-palette{padding:calc(var(--space) * 4)}.j-theme-palette>h3{margin:calc(var(--space) * 2) 0}.j-theme-palette .palette-container{display:flex;flex-direction:column;gap:calc(var(--space, .25rem) * 4)}.j-theme-palette .palette-container .palette-item{display:flex;flex-direction:column;gap:calc(var(--space, .25rem) * 2)}.j-theme-palette .palette-container .palette-item .item-title{font-size:var(--font-size, 1rem);line-height:var(--line-height, 1.5);margin:0;font-weight:var(--font-bold)}.j-theme-palette .palette-container .palette-item .items{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space, .25rem)}.j-theme-palette .palette-container .palette-item .items>button{padding-left:calc(var(--space, .25rem) * 2);padding-right:calc(var(--space, .25rem) * 2);min-width:0;overflow:hidden}.j-theme-palette .palette-container .palette-item[data-palette=theme] .items>button{justify-content:flex-start}.j-theme-palette .palette-container .palette-item .items>button span.item-hex{display:inline-block;width:var(--font-size-sm, .875rem);height:var(--font-size-sm, .875rem);border-radius:50%;flex-shrink:0;margin-right:var(--space, .25rem)}.j-theme-palette .palette-container .palette-item .items>button span.button-text{overflow:hidden;text-overflow:ellipsis}.j-tabs{display:flex}.j-tabs,.j-tabs.is-top{flex-direction:column}.j-tabs.is-bottom{flex-direction:column-reverse}.j-tabs.is-left{flex-direction:row}.j-tabs.is-right{flex-direction:row-reverse}.j-tabs .tab-wrap{overflow:hidden;position:relative}.j-tabs .tab-list{display:flex;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.dragging{cursor:move;cursor:grab}.dragging:active{cursor:grabbing}.j-tabs.is-left .tab-list,.j-tabs.is-right .tab-list{flex-direction:column}.j-tabs .tab-list .tab-item{flex-shrink:0;padding:calc(var(--space, .25rem) * 2) calc(var(--space, .25rem) * 3);cursor:pointer}.j-tabs.is-top .tab-wrap{border-bottom:var(--border-sm)}.j-tabs.is-bottom .tab-wrap{border-top:var(--border-sm)}.j-tabs.is-left .tab-wrap{border-right:var(--border-sm)}.j-tabs.is-right .tab-wrap{border-left:var(--border-sm)}.j-tabs .tab-list .tab-item.is-active{color:var(--primary);text-decoration:underline;text-decoration-color:var(--primary);text-underline-offset:var(--space)}.j-tabs .tab-list .tab-item.is-disabled{color:var(--gray-a8);cursor:not-allowed}.j-tabs .tab-panel{padding:calc(var(--space, .25rem) * 2) calc(var(--space, .25rem) * 3)}.j-tabs .tab-panel .panel-item{display:none}.j-tabs .tab-panel .panel-item.is-active{display:block}.j-accordion .accordion-header{display:flex;align-items:center;cursor:pointer;padding:calc(var(--space, .25rem) * 2) calc(var(--space, .25rem) * 3);border-bottom:var(--accordion-border, var(--border-sm));font-size:var(--font-size, .875rem);font-weight:var(--font-medium, 500);-webkit-user-select:none;-moz-user-select:none;user-select:none}.j-accordion .accordion-header:hover:not(.is-active){background:var(--accordion-header-hover, var(--gray-a2))}.j-accordion .accordion-header.is-active{border-color:transparent}.j-accordion .accordion-header .header-title{flex:1;text-align:left;font-size:var(--font-size-lg, 1rem)}.j-accordion .accordion-header.is-active .header-title{color:var(--accordion-header-active-color, var(--primary))}.j-accordion .accordion-header .header-arrow{width:var(--font-size-lg, 1rem);height:var(--font-size-lg, 1rem);display:inline-block;transition:transform .3s ease;transform:rotate(0)}.j-accordion .accordion-header.is-active .header-arrow{transform:rotate(180deg)}.j-accordion .accordion-panel{overflow:hidden;height:0;transition:height .3s ease}.j-accordion .accordion-panel .panel-content{padding:0 calc(var(--space, .25rem) * 3) calc(var(--space, .25rem) * 2);border-bottom:var(--accordion-border, var(--border-sm));font-size:var(--font-size, .875rem)}.j-accordion .accordion-panel.is-active{height:auto}.j-accordion .accordion-panel:last-child .panel-content{border-bottom:none}.j-drop{display:none;position:absolute;top:0;left:0;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:9900}.j-drop.is-active{display:block;opacity:1;pointer-events:auto}.drop-container{border-width:var(--drop-border-width, 1px);border-style:var(--drop-border-style, solid);border-color:var(--drop-border-color, var(--border-color));border-radius:var(--border-radius, var(--border-radius));background-color:var(--drop-background, var(--background));color:var(--drop-foreground, var(--foreground));box-shadow:var(--drop-box-shadow, var(--box-shadow))}.j-tooltip{position:relative;background:var(--tooltip-background, #000);color:var(--tooltip-foreground, #fff);border-width:var(--tooltip-border-width, 1px);border-style:var(--tooltip-border-style, solid);border-color:var(--tooltip-border-color, #111);border-radius:var(--tooltip-radius, var(--border-radius));max-width:var(--tooltip-max-width, 260px)}.j-tooltip .tooltip-message{word-wrap:break-word;padding:var( --tooltip-padding, calc(var(--space, .25rem) * 1.5) calc(var(--space, .25rem) * 2) );font-size:var(--tooltip-font-size, var(--font-size, .875rem));line-height:var(--tooltip-line-height, var(--line-height))}.j-background-grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(to right,var(--gray-a3) 1px,transparent 1px),linear-gradient(to bottom,var(--gray-a3) 1px,transparent 1px);background-size:24px 36px;-webkit-mask-image:radial-gradient(ellipse 70% 20% at 50% 0%,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse 70% 20% at 50% 0%,#000 60%,transparent 100%);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dark .j-background-grid{background-image:linear-gradient(to right,var(--gray-a2) 1px,transparent 1px),linear-gradient(to bottom,var(--gray-a2) 1px,transparent 1px)}.j-content{--content-block-margin-bottom: 1.25em;--content-block-margin: 1.5em}.j-content,.j-content.is-md{font-size:var(--font-size);line-height:var(--line-height-lg)}.j-content.is-sm{font-size:var(--font-size-sm);line-height:var(--line-height-md)}.j-content.is-lg{font-size:var(--font-size-lg);line-height:var(--line-height-xl)}.j-content.is-xl{font-size:var(--font-size-xl);line-height:var(--line-height-2xl)}.j-content *,.j-content *:before,.j-content *:after{box-sizing:border-box}.j-content p,.j-content div{margin:0 0 var(--content-block-margin-bottom)}.j-content h1,.j-content h2,.j-content h3{margin:var(--content-block-margin) 0 .75em;font-weight:600}.j-content h4,.j-content h5,.j-content h6{margin:var(--content-block-margin-bottom) 0 .75em;font-weight:600}.j-content h1{font-size:2em;line-height:var(--line-height-xl)}.j-content h2{font-size:1.75em;line-height:var(--line-height-xl)}.j-content h3{font-size:1.5em;line-height:var(--line-height-lg)}.j-content h4{font-size:1.25em;line-height:var(--line-height-lg)}.j-content h5{font-size:1.125em;line-height:var(--line-height)}.j-content h6{font-size:1em;line-height:var(--line-height)}.j-content strong,.j-content b{font-weight:700}.j-content em,.j-content i{font-style:italic}.j-content u{text-decoration:underline}.j-content s,.j-content del{text-decoration:line-through}.j-content mark{background-color:var(--yellow-9);padding:0 .2em;border-radius:.2em}.j-content small{font-size:.875em}.j-content sub{vertical-align:sub;font-size:.75em}.j-content sup{vertical-align:super;font-size:.75em}.j-content a{color:var(--primary, var(--indigo-9));text-decoration:none}.j-content a:hover,.j-content a:focus{text-decoration:underline}.j-content ul,.j-content ol{margin:0 0 var(--content-block-margin-bottom);padding-left:1.5em}.j-content ul li,.j-content ol li{margin-bottom:.25em}.j-content ul{list-style-type:disc}.j-content ol{list-style-type:decimal}.j-content ul ul,.j-content ol ul{list-style-type:circle}.j-content ol ol,.j-content ul ol{list-style-type:lower-alpha}.j-content ul p,.j-content ol p{margin:0}.j-content dl{margin:0 0 var(--content-block-margin)}.j-content dt{font-weight:600;margin-top:.8em;margin-bottom:.2em}.j-content dt:first-child{margin-top:0}.j-content dd{margin:0 0 .8em;padding-left:0;color:var(--gray-11)}.j-content dd+dt{margin-top:1em}.j-content blockquote{margin:1.5em 4em;padding:1.2em;border-left:.25em solid var(--gray-6);color:var(--gray-11);background-color:var(--gray-3);font-style:italic}.j-content blockquote p{margin:0}.j-content cite{display:block;margin-top:.5em;font-style:normal;font-size:.9em;color:var(--gray-9)}.j-content code{font-family:Consolas,Monaco,Andale Mono,monospace;font-size:.9em;background-color:var(--accent);border:1px solid var(--secondary);padding:.15em .3em;border-radius:.2em;color:var(--primary)}.j-content kbd{font-family:inherit;background-color:var(--gray-3);border:1px solid var(--gray-6);border-radius:.2em;padding:.1em .3em;font-size:.9em}.j-content pre{margin:var(--content-block-margin) 0;padding:.8em;background-color:var(--gray-a3);border-radius:var(--border-radius);overflow-x:auto;font-family:Consolas,Monaco,Andale Mono,monospace;font-size:.9em;line-height:1.4}.j-content pre code{background:none;padding:0;color:inherit;font-size:inherit;border:none}.j-content q{quotes:"“" "”" "‘" "’"}.j-content abbr[title]{border-bottom:1px dotted var(--border-color);cursor:help}.j-content time{white-space:nowrap}.j-content address{font-style:normal;margin:0 0 var(--content-block-margin-bottom);color:var(--gray-9)}.j-content ruby{font-size:.95em}.j-content rt{font-size:.7em;color:var(--gray-9)}.j-content progress{max-width:100%;height:.8em;margin:.125em 0}.j-content meter{max-width:100%;height:.8em;margin:.125em 0}.j-content img{max-width:100%;height:auto;margin:.5em 0}.j-content figure{margin:var(--content-block-margin) 0;text-align:center}.j-content figure img,.j-content figure video,.j-content figure iframe{margin:0}.j-content figcaption{margin-top:.5em;font-size:.9em;color:var(--gray-9);text-align:center}.j-content table{min-width:240px;max-width:100%;margin:var(--content-block-margin) 0;border-collapse:collapse;font-size:.95em;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.j-content th,.j-content td{padding:.5em .75em;border:1px solid var(--border-color);text-align:left}.j-content th{background-color:var(--gray-a3);font-weight:600}.j-content tbody tr:nth-child(2n){background-color:var(--gray-a2)}.j-content hr{margin:var(--content-block-margin) 0;border:0;border-top:1px solid var(--gray-3)}.j-content details{margin:var(--content-block-margin) 0;padding:.8em;background-color:var(--accent);border-radius:var(--border-radius);border:1px solid var(--border-color-sm)}.j-content summary{cursor:pointer;font-weight:600;outline:none}.j-content details[open]>summary{margin-bottom:.6em}.j-content iframe,.j-content video,.j-content audio{max-width:100%}.j-content video,.j-content audio{display:block;border-radius:var(--border-radius)}.j-content video{background-color:var(--foreground)}.j-content figure:has(audio){display:flex;flex-direction:column;justify-content:center;align-items:center}.j-content>*:first-child{margin-top:0}.j-content>*:last-child{margin-bottom:0}.j-table-container{max-width:100%;overflow:auto;overflow-y:hidden;margin-bottom:var(--block-spacing, 1.5rem)}table.j-table{text-indent:0;border-color:inherit;border-collapse:collapse;border-spacing:0}table.j-table tr.is-selected{background-color:var(--table-selected-background-color, var(--secondary))}table.j-table td,table.j-table th{border-width:var(--table-border-width, 0 0 1px);border-style:var(--table-border-style, var(--border-style, solid));border-color:var(--table-border-color, var(--border-color));padding:var(--table-padding, .5em .75em)}table.j-table th:not([align]){text-align:var(--table-cell-text-align, left)}table.j-table td:not([align]),table.j-table th:not([align]){text-align:inherit}table.j-table a{-webkit-text-decoration:var(--table-link-decoration, inherit);text-decoration:var(--table-link-decoration, inherit);color:var(--table-link-color, var(--primary))}table.j-table.is-striped thead tr,table.j-table.is-striped tbody tr:not(.is-selected):nth-child(2n){background-color:var(--table-striped-background-color, var(--secondary))}table.j-table.is-hoverable tbody tr:hover{background-color:var(--table-hover-background-color, var(--secondary))}table.j-table.is-bordered td,table.j-table.is-bordered th{border-width:var(--table-border-width, var(--border-width, 1px))}.j-breadcrumb,.j-breadcrumb.is-md{font-size:var(--font-size);color:var(--breadcrumb-color, var(--gray-10));white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.j-breadcrumb.is-sm{font-size:var(--font-size-sm)}.j-breadcrumb svg,.j-breadcrumb.is-md svg{width:var(--font-size);height:var(--font-size)}.j-breadcrumb.is-sm svg{width:var(--font-size-sm);height:var(--font-size-sm)}.j-breadcrumb.is-lg svg{width:var(--font-size-lg);height:var(--font-size-lg)}.j-breadcrumb.is-lg{font-size:var(--font-size-lg)}.j-breadcrumb>ol,.j-breadcrumb>ul{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;margin:0;padding:0}.j-breadcrumb>ol li,.j-breadcrumb>ul li{display:flex;align-items:center;justify-content:center}.j-breadcrumb li:first-child a{padding-inline-start:0}.j-breadcrumb li+li:before{color:var(--breadcrumb-item-separator-color, var(--gray-9));content:"/"}.j-breadcrumb.is-dot li+li:before{content:"•"}.j-breadcrumb.is-arrow li+li:before{content:">"}.j-breadcrumb.is-dash li+li:before{content:"–"}.j-breadcrumb a{align-items:center;display:flex;justify-content:center;color:var(--breadcrumb-link-color, var(--primary));padding:var(--breadcrumb-item-padding-vertical, 0) var(--breadcrumb-item-padding-horizontal, calc(var(--space) * 1.5))}.j-breadcrumb li.is-active a{color:var(--breadcrumb-color, var(--gray-9));cursor:default;pointer-events:none}.j-breadcrumb.is-center ul,.j-breadcrumb.is-center ol{justify-content:center}.j-breadcrumb.is-right ul,.j-breadcrumb.is-right ol{justify-content:flex-end}.j-breadcrumb .el-icon{margin-inline-end:var(--space)}.j-card{background-color:var(--card-background-color);border-radius:var(--card-border-radius, var(--border-radius));box-shadow:var(--box-shadow);color:var(--card-color, inherit);max-width:100%;position:relative;border:1px solid var(--card-border-color, var(--border-color))}.j-card .card-header{align-items:stretch;background-color:var(--card-header-background-color);box-shadow:var(--card-header-shadow, var(--box-shadow));display:flex}.j-card .card-header .card-header-title{align-items:center;color:var(--card-header-color);display:flex;flex-grow:1;font-weight:var(--card-header-weight, var(--font-bold));padding:var( --card-header-padding, calc(var(--space) * 3) calc(var(--space) * 4) );margin:0}.j-card .card-header .card-header-icon{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;color:inherit;cursor:pointer;display:flex;font-family:inherit;font-size:1em;margin:0;padding:0;padding:var( --card-header-padding, calc(var(--space) * 3) calc(var(--space) * 4) )}.j-card .card-header .card-header-icon,.j-card .card-header .card-header-title.is-centered{justify-content:center}.j-card .card-media,.image{display:block;position:relative}.j-card .card-media figure.image img{height:100%;inset:0;position:absolute;width:100%;-o-object-fit:cover;object-fit:cover}.j-card .card-media:first-child img{border-start-end-radius:var(--card-border-radius, var(--border-radius));border-start-start-radius:var(--card-border-radius, var(--border-radius))}.j-card .card-content{background-color:var(--card-content-background-color);padding:var(--card-content-padding, calc(var(--space) * 4))}.j-card .card-content:last-child,.j-card .card-footer:last-child,.j-card .card-header:last-child{border-end-end-radius:var(--card-border-radius, var(--border-radius));border-end-start-radius:var(--card-border-radius, var(--border-radius))}.j-card .card-content:first-child,.j-card .card-footer:first-child,.j-card .card-header:first-child{border-start-end-radius:var(--card-border-radius, var(--border-radius));border-start-start-radius:var(--card-border-radius, var(--border-radius))}.j-card .card-footer{align-items:stretch;background-color:var(--card-footer-background-color);border-top:var(--card-footer-border-top, 1px solid var(--border-color));display:flex}.j-card .card-footer .card-footer-item:not(:last-child){border-inline-end:var( --card-footer-border-top, 1px solid var(--border-color) )}.j-card .card-footer .card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:var( --card-footer-padding, calc(var(--space) * 2) calc(var(--space) * 3) );-webkit-user-select:none;-moz-user-select:none;user-select:none}[disabled],:disabled,.is-disabled{cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;user-select:none}.animate-none{animation:none}.animate-spin{animation:animate-spin 1s linear infinite}@keyframes animate-spin{to{transform:rotate(360deg)}}.animate-ping{animation:animate-ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes animate-ping{75%,to{transform:scale(2);opacity:0}}.animate-pulse{animation:animate-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes animate-pulse{50%{opacity:.5}}.animate-bounce{animation:animate-bounce 1s infinite}@keyframes animate-bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-fade-in{animation:animate-fade-in .3s ease-in-out}@keyframes animate-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.animate-fade-out{animation:animate-fade-out .3s ease-in-out}@keyframes animate-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.animate-shake{animation:animate-shake .3s ease-in-out}@keyframes animate-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}50%{transform:translate(10px)}75%{transform:translate(-10px)}}.animate-slide-to-top{animation:animate-slide-to-top .3s ease-in-out}@keyframes animate-slide-to-top{0%{transform:translateY(0)}to{transform:translateY(-100%)}}.animate-slide-to-right{animation:animate-slide-to-right .3s ease-in-out}@keyframes animate-slide-to-right{0%{transform:translate(0)}to{transform:translate(100%)}}.animate-slide-to-bottom{animation:animate-slide-to-bottom .3s ease-in-out}@keyframes animate-slide-to-bottom{0%{transform:translateY(0)}to{transform:translateY(100%)}}.animate-slide-to-left{animation:animate-slide-to-left .3s ease-in-out}@keyframes animate-slide-to-left{0%{transform:translate(0)}to{transform:translate(-100%)}}}@layer utilities{.break-after-auto{-moz-column-break-after:auto;break-after:auto}.break-after-avoid{-moz-column-break-after:avoid;break-after:avoid}.break-after-all{-moz-column-break-after:all;break-after:all}.break-after-avoid-page{-moz-column-break-after:avoid;break-after:avoid-page}.break-after-page{-moz-column-break-after:page;break-after:page}.break-after-left{-moz-column-break-after:left;break-after:left}.break-after-right{-moz-column-break-after:right;break-after:right}.break-after-column{-moz-column-break-after:column;break-after:column}.break-before-auto{-moz-column-break-before:auto;break-before:auto}.break-before-avoid{-moz-column-break-before:avoid;break-before:avoid}.break-before-all{-moz-column-break-before:all;break-before:all}.break-before-avoid-page{-moz-column-break-before:avoid;break-before:avoid-page}.break-before-page{-moz-column-break-before:page;break-before:page}.break-before-left{-moz-column-break-before:left;break-before:left}.break-before-right{-moz-column-break-before:right;break-before:right}.break-before-column{-moz-column-break-before:column;break-before:column}.break-inside-auto{-moz-column-break-inside:auto;break-inside:auto}.break-inside-avoid{-moz-column-break-inside:avoid;break-inside:avoid}.break-inside-avoid-page{break-inside:avoid-page}.break-inside-avoid-column{-moz-column-break-inside:avoid;break-inside:avoid-column}.box-decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.box-decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.flow-root{display:flow-root}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.inline-grid{display:inline-grid}.contents{display:contents}.table{display:table}.inline-table{display:inline-table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row-group{display:table-row-group}.table-row{display:table-row}.list-item{display:list-item}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal;border-width:0}.float-left{float:left}.float-right{float:right}.float-start{float:start}.float-end{float:end}.float-none{float:none}.clear-left{clear:left}.clear-right{clear:right}.clear-both{clear:both}.clear-start{clear:inline-start}.clear-end{clear:inline-end}.clear-none{clear:none}.clearfix{overflow:auto;zoom:1}.clearfix:after{content:" ";visibility:hidden;display:block;clear:both;font-size:0;height:0}.isolation{isolation:isolate}.isolation-auto{isolation:auto}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-fill{-o-object-fit:fill;object-fit:fill}.object-none{-o-object-fit:none;object-fit:none}.object-scale-down{-o-object-fit:scale-down;object-fit:scale-down}.object-left{-o-object-position:left;object-position:left}.object-top{-o-object-position:top;object-position:top}.object-right{-o-object-position:right;object-position:right}.object-bottom{-o-object-position:bottom;object-position:bottom}.object-center{-o-object-position:center;object-position:center}.object-top-left{-o-object-position:left top;object-position:left top}.object-bottom-left{-o-object-position:left bottom;object-position:left bottom}.object-top-right{-o-object-position:right top;object-position:right top}.object-bottom-right{-o-object-position:right bottom;object-position:right bottom}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-x-visible{overflow-x:visible}.overflow-x-clip{overflow-x:clip}.overflow-x-scroll{overflow-x:scroll}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.overflow-y-visible{overflow-y:visible}.overflow-y-clip{overflow-y:clip}.overflow-y-scroll{overflow-y:scroll}.overscroll-auto{overscroll-behavior:auto}.overscroll-contain{overscroll-behavior:contain}.overscroll-none{overscroll-behavior:none}.overscroll-x-auto{overscroll-behavior-x:auto}.overscroll-x-contain{overscroll-behavior-x:contain}.overscroll-x-none{overscroll-behavior-x:none}.overscroll-y-auto{overscroll-behavior-y:auto}.overscroll-y-contain{overscroll-behavior-y:contain}.overscroll-y-none{overscroll-behavior-y:none}.position-static{position:static}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.top-0{top:0}.top-px{top:1px}.top-1{top:var(--space, .25rem)}.top-2{top:calc(var(--space, .25rem) * 2)}.top-3{top:calc(var(--space, .25rem) * 3)}.top-4{top:calc(var(--space, .25rem) * 4)}.top-5{top:calc(var(--space, .25rem) * 5)}.right-0{right:0}.right-px{right:1px}.right-1{right:var(--space, .25rem)}.right-2{right:calc(var(--space, .25rem) * 2)}.right-3{right:calc(var(--space, .25rem) * 3)}.right-4{right:calc(var(--space, .25rem) * 4)}.right-5{right:calc(var(--space, .25rem) * 5)}.bottom-0{bottom:0}.bottom-px{bottom:1px}.bottom-1{bottom:var(--space, .25rem)}.bottom-2{bottom:calc(var(--space, .25rem) * 2)}.bottom-3{bottom:calc(var(--space, .25rem) * 3)}.bottom-4{bottom:calc(var(--space, .25rem) * 4)}.bottom-5{bottom:calc(var(--space, .25rem) * 5)}.left-0{left:0}.left-px{left:1px}.left-1{left:var(--space, .25rem)}.left-2{left:calc(var(--space, .25rem) * 2)}.left-3{left:calc(var(--space, .25rem) * 3)}.left-4{left:calc(var(--space, .25rem) * 4)}.left-5{left:calc(var(--space, .25rem) * 5)}.visible{visibility:visible}.invisible{visibility:hidden}.collapsed{visibility:collapse}.z-auto{z-index:auto}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-60{z-index:60}.z-70{z-index:70}.z-80{z-index:80}.z-90{z-index:90}.z-index-badge{z-index:var(--z-index-badge, 2)}.z-index-overlay{z-index:var(--z-index-overlay, 9980)}.z-index-popup{z-index:var(--z-index-popup, 9990)}.z-index-toast{z-index:var(--z-index-toast, 9999)}.basis-full{flex-basis:100%}.basis-auto{flex-basis:auto}.basic-3xs{flex-basis:var(--columns-3xs, 16rem)}.basic-2xs{flex-basis:var(--columns-2xs, 18rem)}.basic-xs{flex-basis:var(--columns-xs, 20rem)}.basic-sm{flex-basis:var(--columns-sm, 24rem)}.basic-md{flex-basis:var(--columns-md, 28rem)}.basic-lg{flex-basis:var(--columns-lg, 32rem)}.basic-xl{flex-basis:var(--columns-xl, 36rem)}.basic-2xl{flex-basis:var(--columns-2xl, 42rem)}.basic-3xl{flex-basis:var(--columns-3xl, 48rem)}.basic-4xl{flex-basis:var(--columns-4xl, 56rem)}.basic-5xl{flex-basis:var(--columns-5xl, 64rem)}.basic-6xl{flex-basis:var(--columns-6xl, 72rem)}.basic-7xl{flex-basis:var(--columns-7xl, 80rem)}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.flex-auto{flex:auto}.flex-initial{flex:0 auto}.flex-none{flex:none}.flex-1{flex:1 1 0%}.grow{flex-grow:0}.grow-1{flex-grow:1}.grow-2{flex-grow:2}.grow-3{flex-grow:3}.grow-4{flex-grow:4}.grow-5{flex-grow:5}.shrink{flex-shrink:0}.shrink-1{flex-shrink:1}.shrink-2{flex-shrink:2}.shrink-3{flex-shrink:3}.shrink-4{flex-shrink:4}.shrink-5{flex-shrink:5}.order-none{order:0}.order-first{order:-9999}.order-last{order:9999}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.grid-cols-none{grid-template-columns:none}.grid-cols-subgrid{grid-template-columns:subgrid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.col-span-full{grid-column:1 / -1}.col-span-1{grid-column:span 1 / span 1}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.col-span-4{grid-column:span 4 / span 4}.col-span-5{grid-column:span 5 / span 5}.col-start-auto{grid-column-start:auto}.col-start-1{grid-column-start:1}.col-start-2{grid-column-start:2}.col-start-3{grid-column-start:3}.col-start-4{grid-column-start:4}.col-start-5{grid-column-start:5}.col-end-auto{grid-column-end:auto}.col-end-1{grid-column-end:1}.col-end-2{grid-column-end:2}.col-end-3{grid-column-end:3}.col-end-4{grid-column-end:4}.col-end-5{grid-column-end:5}.col-auto{grid-column:auto}.col-1{grid-column:1 / span 1}.col-2{grid-column:2 / span 1}.col-3{grid-column:3 / span 1}.col-4{grid-column:4 / span 1}.col-5{grid-column:5 / span 1}.grid-rows-none{grid-template-rows:none}.grid-rows-subgrid{grid-template-rows:subgrid}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.row-span-full{grid-row:1 / -1}.row-span-1{grid-row:span 1 / span 1}.row-span-2{grid-row:span 2 / span 2}.row-span-3{grid-row:span 3 / span 3}.row-span-4{grid-row:span 4 / span 4}.row-span-5{grid-row:span 5 / span 5}.row-start-auto{grid-row-start:auto}.row-start-1{grid-row-start:1}.row-start-2{grid-row-start:2}.row-start-3{grid-row-start:3}.row-start-4{grid-row-start:4}.row-start-5{grid-row-start:5}.row-end-auto{grid-row-end:auto}.row-end-1{grid-row-end:1}.row-end-2{grid-row-end:2}.row-end-3{grid-row-end:3}.row-end-4{grid-row-end:4}.row-end-5{grid-row-end:5}.row-auto{grid-row:auto}.row-1{grid-row:1 / span 1}.row-2{grid-row:2 / span 1}.row-3{grid-row:3 / span 1}.row-4{grid-row:4 / span 1}.row-5{grid-row:5 / span 1}.grid-flow-row{grid-auto-flow:row}.grid-flow-col{grid-auto-flow:column}.grid-flow-dense{grid-auto-flow:dense}.grid-flow-row-dense{grid-auto-flow:row dense}.grid-flow-col-dense{grid-auto-flow:column dense}.auto-cols-auto{grid-auto-columns:auto}.auto-cols-min{grid-auto-columns:min-content}.auto-cols-max{grid-auto-columns:max-content}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.auto-cols-1{grid-auto-columns:1fr}.auto-cols-2{grid-auto-columns:2fr}.auto-cols-3{grid-auto-columns:3fr}.auto-cols-4{grid-auto-columns:4fr}.auto-cols-5{grid-auto-columns:5fr}.auto-rows-auto{grid-auto-rows:auto}.auto-rows-min{grid-auto-rows:min-content}.auto-rows-max{grid-auto-rows:max-content}.auto-rows-fr{grid-auto-rows:minmax(0,1fr)}.auto-rows-1{grid-auto-rows:1fr}.auto-rows-2{grid-auto-rows:2fr}.auto-rows-3{grid-auto-rows:3fr}.auto-rows-4{grid-auto-rows:4fr}.auto-rows-5{grid-auto-rows:5fr}.gap-0{gap:0}.gap-1{gap:var(--space, .25rem)}.gap-2{gap:calc(var(--space, .25rem) * 2)}.gap-3{gap:calc(var(--space, .25rem) * 3)}.gap-4{gap:calc(var(--space, .25rem) * 4)}.gap-5{gap:calc(var(--space, .25rem) * 5)}.gap-x-0{-moz-column-gap:0;column-gap:0}.gap-x-1{-moz-column-gap:var(--space, .25rem);column-gap:var(--space, .25rem)}.gap-x-2{-moz-column-gap:calc(var(--space, .25rem) * 2);column-gap:calc(var(--space, .25rem) * 2)}.gap-x-3{-moz-column-gap:calc(var(--space, .25rem) * 3);column-gap:calc(var(--space, .25rem) * 3)}.gap-x-4{-moz-column-gap:calc(var(--space, .25rem) * 4);column-gap:calc(var(--space, .25rem) * 4)}.gap-x-5{-moz-column-gap:calc(var(--space, .25rem) * 5);column-gap:calc(var(--space, .25rem) * 5)}.gap-y-0{row-gap:0}.gap-y-1{row-gap:var(--space, .25rem)}.gap-y-2{row-gap:calc(var(--space, .25rem) * 2)}.gap-y-3{row-gap:calc(var(--space, .25rem) * 3)}.gap-y-4{row-gap:calc(var(--space, .25rem) * 4)}.gap-y-5{row-gap:calc(var(--space, .25rem) * 5)}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-end-safe{justify-content:safe flex-end}.justify-center{justify-content:center}.justify-center-safe{justify-content:safe center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.justify-stretch{justify-content:stretch}.justify-baseline{justify-content:baseline}.justify-normal{justify-content:normal}.justify-items-start{justify-items:start}.justify-items-end{justify-items:end}.justify-items-end-safe{justify-items:safe end}.justify-items-center{justify-items:center}.justify-items-center-safe{justify-items:safe center}.justify-items-stretch{justify-items:stretch}.justify-items-normal{justify-items:normal}.justify-self-auto{justify-self:auto}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.justify-self-end-safe{justify-self:safe end}.justify-self-center{justify-self:center}.justify-self-center-safe{justify-self:safe center}.justify-self-stretch{justify-self:stretch}.content-normal{align-content:normal}.content-center{align-content:center}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-evenly{align-content:space-evenly}.content-baseline{align-content:baseline}.content-stretch{align-content:stretch}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.align-end-safe{align-items:safe flex-end}.align-center{align-items:center}.align-center-safe{align-items:safe center}.align-baseline{align-items:baseline}.align-baseline-last{align-items:last baseline}.align-stretch{align-items:stretch}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-end-safe{align-self:safe flex-end}.self-center{align-self:center}.self-center-safe{align-self:safe center}.self-stretch{align-self:stretch}.self-baseline{align-self:baseline}.self-baseline-last{align-self:last baseline}.place-content-center{place-content:center}.place-content-center-safe{place-content:safe center}.place-content-start{place-content:flex-start}.place-content-end{place-content:flex-end}.place-content-end-safe{place-content:safe flex-end}.place-content-between{place-content:space-between}.place-content-around{place-content:space-around}.place-content-evenly{place-content:space-evenly}.place-content-stretch{place-content:stretch}.place-content-baseline{place-content:baseline}.place-items-start{place-items:start}.place-items-end{place-items:end}.place-items-end-safe{place-items:safe end}.place-items-center{place-items:center}.place-items-center-safe{place-items:safe center}.place-items-stretch{place-items:stretch}.place-items-baseline{place-items:baseline}.place-self-auto{place-self:auto}.place-self-start{place-self:start}.place-self-end{place-self:end}.place-self-end-safe{place-self:safe end}.place-self-center{place-self:center}.place-self-center-safe{place-self:safe center}.place-self-stretch{place-self:stretch}.p-0{padding:0}.p-px{padding:1px}.p-1{padding:var(--space, .25rem)}.p-2{padding:calc(var(--space, .25rem) * 2)}.p-3{padding:calc(var(--space, .25rem) * 3)}.p-4{padding:calc(var(--space, .25rem) * 4)}.p-5{padding:calc(var(--space, .25rem) * 5)}.px-0{padding-left:0;padding-right:0}.px-px{padding-left:1px;padding-right:1px}.px-1{padding-left:var(--space, .25rem);padding-right:var(--space, .25rem)}.px-2{padding-left:calc(var(--space, .25rem) * 2);padding-right:calc(var(--space, .25rem) * 2)}.px-3{padding-left:calc(var(--space, .25rem) * 3);padding-right:calc(var(--space, .25rem) * 3)}.px-4{padding-left:calc(var(--space, .25rem) * 4);padding-right:calc(var(--space, .25rem) * 4)}.px-5{padding-left:calc(var(--space, .25rem) * 5);padding-right:calc(var(--space, .25rem) * 5)}.py-0{padding-top:0;padding-bottom:0}.py-px{padding-top:1px;padding-bottom:1px}.py-1{padding-top:var(--space, .25rem);padding-bottom:var(--space, .25rem)}.py-2{padding-top:calc(var(--space, .25rem) * 2);padding-bottom:calc(var(--space, .25rem) * 2)}.py-3{padding-top:calc(var(--space, .25rem) * 3);padding-bottom:calc(var(--space, .25rem) * 3)}.py-4{padding-top:calc(var(--space, .25rem) * 4);padding-bottom:calc(var(--space, .25rem) * 4)}.py-5{padding-top:calc(var(--space, .25rem) * 5);padding-bottom:calc(var(--space, .25rem) * 5)}.pt-0{padding-top:0}.pt-px{padding-top:1px}.pt-1{padding-top:var(--space, .25rem)}.pt-2{padding-top:calc(var(--space, .25rem) * 2)}.pt-3{padding-top:calc(var(--space, .25rem) * 3)}.pt-4{padding-top:calc(var(--space, .25rem) * 4)}.pt-5{padding-top:calc(var(--space, .25rem) * 5)}.pb-0{padding-bottom:0}.pb-px{padding-bottom:1px}.pb-1{padding-bottom:var(--space, .25rem)}.pb-2{padding-bottom:calc(var(--space, .25rem) * 2)}.pb-3{padding-bottom:calc(var(--space, .25rem) * 3)}.pb-4{padding-bottom:calc(var(--space, .25rem) * 4)}.pb-5{padding-bottom:calc(var(--space, .25rem) * 5)}.pl-0{padding-left:0}.pl-px{padding-left:1px}.pl-1{padding-left:var(--space, .25rem)}.pl-2{padding-left:calc(var(--space, .25rem) * 2)}.pl-3{padding-left:calc(var(--space, .25rem) * 3)}.pl-4{padding-left:calc(var(--space, .25rem) * 4)}.pl-5{padding-left:calc(var(--space, .25rem) * 5)}.pr-0{padding-right:0}.pr-px{padding-right:1px}.pr-1{padding-right:var(--space, .25rem)}.pr-2{padding-right:calc(var(--space, .25rem) * 2)}.pr-3{padding-right:calc(var(--space, .25rem) * 3)}.pr-4{padding-right:calc(var(--space, .25rem) * 4)}.pr-5{padding-right:calc(var(--space, .25rem) * 5)}.m-0{margin:0}.m-px{margin:1px}.m-1{margin:var(--space, .25rem)}.m-2{margin:calc(var(--space, .25rem) * 2)}.m-3{margin:calc(var(--space, .25rem) * 3)}.m-4{margin:calc(var(--space, .25rem) * 4)}.m-5{margin:calc(var(--space, .25rem) * 5)}.mx-0{margin-left:0;margin-right:0}.mx-px{margin-left:1px;margin-right:1px}.mx-1{margin-left:var(--space, .25rem);margin-right:var(--space, .25rem)}.mx-2{margin-left:calc(var(--space, .25rem) * 2);margin-right:calc(var(--space, .25rem) * 2)}.mx-3{margin-left:calc(var(--space, .25rem) * 3);margin-right:calc(var(--space, .25rem) * 3)}.mx-4{margin-left:calc(var(--space, .25rem) * 4);margin-right:calc(var(--space, .25rem) * 4)}.mx-5{margin-left:calc(var(--space, .25rem) * 5);margin-right:calc(var(--space, .25rem) * 5)}.my-0{margin-top:0;margin-bottom:0}.my-px{margin-top:1px;margin-bottom:1px}.my-1{margin-top:var(--space, .25rem);margin-bottom:var(--space, .25rem)}.my-2{margin-top:calc(var(--space, .25rem) * 2);margin-bottom:calc(var(--space, .25rem) * 2)}.my-3{margin-top:calc(var(--space, .25rem) * 3);margin-bottom:calc(var(--space, .25rem) * 3)}.my-4{margin-top:calc(var(--space, .25rem) * 4);margin-bottom:calc(var(--space, .25rem) * 4)}.my-5{margin-top:calc(var(--space, .25rem) * 5);margin-bottom:calc(var(--space, .25rem) * 5)}.mt-0{margin-top:0}.mt-px{margin-top:1px}.mt-1{margin-top:var(--space, .25rem)}.mt-2{margin-top:calc(var(--space, .25rem) * 2)}.mt-3{margin-top:calc(var(--space, .25rem) * 3)}.mt-4{margin-top:calc(var(--space, .25rem) * 4)}.mt-5{margin-top:calc(var(--space, .25rem) * 5)}.mr-0{margin-right:0}.mr-px{margin-right:1px}.mr-1{margin-right:var(--space, .25rem)}.mr-2{margin-right:calc(var(--space, .25rem) * 2)}.mr-3{margin-right:calc(var(--space, .25rem) * 3)}.mr-4{margin-right:calc(var(--space, .25rem) * 4)}.mr-5{margin-right:calc(var(--space, .25rem) * 5)}.mb-0{margin-bottom:0}.mb-px{margin-bottom:1px}.mb-1{margin-bottom:var(--space)}.mb-2{margin-bottom:calc(var(--space, .25rem) * 2)}.mb-3{margin-bottom:calc(var(--space, .25rem) * 3)}.mb-4{margin-bottom:calc(var(--space, .25rem) * 4)}.mb-5{margin-bottom:calc(var(--space, .25rem) * 5)}.ml-0{margin-left:0}.ml-px{margin-left:1px}.ml-1{margin-left:var(--space, .25rem)}.ml-2{margin-left:calc(var(--space, .25rem) * 2)}.ml-3{margin-left:calc(var(--space, .25rem) * 3)}.ml-4{margin-left:calc(var(--space, .25rem) * 4)}.ml-5{margin-left:calc(var(--space, .25rem) * 5)}.w-0{width:0}.w-1{width:var(--space, .25rem)}.w-2{width:calc(var(--space, .25rem) * 2)}.w-3{width:calc(var(--space, .25rem) * 3)}.w-4{width:calc(var(--space, .25rem) * 4)}.w-5{width:calc(var(--space, .25rem) * 5)}.w-3xs{width:calc(var(--columns-3xs, 16rem))}.w-2xs{width:calc(var(--columns-2xs, 18rem))}.w-xs{width:calc(var(--columns-xs, 20rem))}.w-sm{width:calc(var(--columns-sm, 24rem))}.w-md{width:calc(var(--columns-md, 28rem))}.w-lg{width:calc(var(--columns-lg, 32rem))}.w-xl{width:calc(var(--columns-xl, 36rem))}.w-2xl{width:calc(var(--columns-2xl, 42rem))}.w-3xl{width:calc(var(--columns-3xl, 48rem))}.w-4xl{width:calc(var(--columns-4xl, 56rem))}.w-5xl{width:calc(var(--columns-5xl, 64rem))}.w-6xl{width:calc(var(--columns-6xl, 72rem))}.w-7xl{width:calc(var(--columns-7xl, 80rem))}.w-auto{width:auto}.w-px{width:1px}.w-full{width:100%}.w-screen{width:100vw}.w-dvw{width:100dvw}.w-dvh{width:100dvh}.w-lvw{width:100lvw}.w-lvh{width:100lvh}.w-svw{width:100svw}.w-svh{width:100svh}.w-min{width:-moz-min-content;width:min-content}.w-max{width:-moz-max-content;width:max-content}.w-fit{width:-moz-fit-content;width:fit-content}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-2\/3{width:66.666667%}.w-1\/4{width:25%}.w-2\/4{width:50%}.w-3\/4{width:75%}.w-1\/5{width:20%}.w-2\/5{width:40%}.w-3\/5{width:60%}.w-4\/5{width:80%}.w-1\/6{width:16.666667%}.w-2\/6{width:33.333333%}.w-3\/6{width:50%}.w-4\/6{width:66.666667%}.w-5\/6{width:83.333333%}.w-1\/12{width:8.333333%}.w-2\/12{width:16.666667%}.w-3\/12{width:25%}.w-4\/12{width:33.333333%}.w-5\/12{width:41.666667%}.w-6\/12{width:50%}.w-7\/12{width:58.333333%}.w-8\/12{width:66.666667%}.w-9\/12{width:75%}.w-10\/12{width:83.333333%}.w-11\/12{width:91.666667%}.size-auto{width:auto;height:auto}.size-0{width:0;height:0}.size-px{width:1px;height:1px}.size-full{width:100%;height:100%}.size-dvw{width:100dvw;height:100dvw}.size-lvw{width:100lvw;height:100lvw}.size-svw{width:100svw;height:100svw}.size-svh{width:100svh;height:100svh}.size-min{width:-moz-min-content;width:min-content;height:-moz-min-content;height:min-content}.size-max{width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content}.size-fit{width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content}.size-1{width:var(--space, .25rem);height:var(--space, .25rem)}.size-2{width:calc(var(--space, .25rem) * 2);height:calc(var(--space, .25rem) * 2)}.size-3{width:calc(var(--space, .25rem) * 3);height:calc(var(--space, .25rem) * 3)}.size-4{width:calc(var(--space, .25rem) * 4);height:calc(var(--space, .25rem) * 4)}.size-5{width:calc(var(--space, .25rem) * 5);height:calc(var(--space, .25rem) * 5)}.min-w-auto{min-width:auto}.min-w-min{min-width:-moz-min-content;min-width:min-content}.min-w-max{min-width:-moz-max-content;min-width:max-content}.min-w-fit{min-width:-moz-fit-content;min-width:fit-content}.min-w-full{min-width:100%}.min-w-screen{min-width:100vw}.min-w-dvw{min-width:100dvw}.min-w-dvh{min-width:100dvh}.min-w-lvw{min-width:100lvw}.min-w-lvh{min-width:100lvh}.min-w-svw{min-width:100svw}.min-w-svh{min-width:100svh}.min-w-0{min-width:0}.min-w-px{min-width:1px}.min-w-3xs{min-width:var(--columns-3xs, 16rem)}.min-w-2xs{min-width:var(--columns-2xs, 18rem)}.min-w-xs{min-width:var(--columns-xs, 20rem)}.min-w-sm{min-width:var(--columns-sm, 24rem)}.min-w-md{min-width:var(--columns-md, 28rem)}.min-w-lg{min-width:var(--columns-lg, 32rem)}.min-w-xl{min-width:var(--columns-xl, 36rem)}.min-w-2xl{min-width:var(--columns-2xl, 42rem)}.min-w-3xl{min-width:var(--columns-3xl, 48rem)}.min-w-4xl{min-width:var(--columns-4xl, 56rem)}.min-w-5xl{min-width:var(--columns-5xl, 64rem)}.min-w-6xl{min-width:var(--columns-6xl, 72rem)}.min-w-7xl{min-width:var(--columns-7xl, 80rem)}.max-w-auto{max-width:auto}.max-w-min{max-width:-moz-min-content;max-width:min-content}.max-w-max{max-width:-moz-max-content;max-width:max-content}.max-w-fit{max-width:-moz-fit-content;max-width:fit-content}.max-w-full{max-width:100%}.max-w-screen{max-width:100vw}.max-w-dvw{max-width:100dvw}.max-w-dvh{max-width:100dvh}.max-w-lvw{max-width:100lvw}.max-w-lvh{max-width:100lvh}.max-w-svw{max-width:100svw}.max-w-svh{max-width:100svh}.max-w-none{max-width:none}.max-w-0{max-width:0}.max-w-px{max-width:1px}.max-w-3xs{max-width:var(--columns-3xs, 16rem)}.max-w-2xs{max-width:var(--columns-2xs, 18rem)}.max-w-xs{max-width:var(--columns-xs, 20rem)}.max-w-sm{max-width:var(--columns-sm, 24rem)}.max-w-md{max-width:var(--columns-md, 28rem)}.max-w-lg{max-width:var(--columns-lg, 32rem)}.max-w-xl{max-width:var(--columns-xl, 36rem)}.max-w-2xl{max-width:var(--columns-2xl, 42rem)}.max-w-3xl{max-width:var(--columns-3xl, 48rem)}.max-w-4xl{max-width:var(--columns-4xl, 56rem)}.max-w-5xl{max-width:var(--columns-5xl, 64rem)}.max-w-6xl{max-width:var(--columns-6xl, 72rem)}.max-w-7xl{max-width:var(--columns-7xl, 80rem)}.h-auto{height:auto}.h-min{height:-moz-min-content;height:min-content}.h-max{height:-moz-max-content;height:max-content}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.h-screen{height:100vh}.h-dvh{height:100dvh}.h-dvw{height:100dvw}.h-lvh{height:100lvh}.h-lvw{height:100lvw}.h-svh{height:100svh}.h-svw{height:100svw}.h-1\/2{height:50%}.h-1\/3{height:33.333333%}.h-2\/3{height:66.666667%}.h-1\/4{height:25%}.h-2\/4{height:50%}.h-3\/4{height:75%}.h-1\/5{height:20%}.h-2\/5{height:40%}.h-3\/5{height:60%}.h-4\/5{height:80%}.h-1\/6{height:16.666667%}.h-2\/6{height:33.333333%}.h-3\/6{height:50%}.h-4\/6{height:66.666667%}.h-5\/6{height:83.333333%}.h-0{height:0}.h-px{height:1px}.h-1lh{height:1lh}.min-h-auto{min-height:auto}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.min-h-min{min-height:-moz-min-content;min-height:min-content}.min-h-max{min-height:-moz-max-content;min-height:max-content}.min-h-fit{min-height:-moz-fit-content;min-height:fit-content}.min-h-dvh{min-height:100dvh}.min-h-dvw{min-height:100dvw}.min-h-lvh{min-height:100lvh}.min-h-lvw{min-height:100lvw}.min-h-svh{min-height:100svh}.min-h-svw{min-height:100svw}.min-h-0{min-height:0}.min-h-px{min-height:1px}.min-h-1lh{min-height:1lh}.max-h-auto{max-height:auto}.max-h-none{max-height:none}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.max-h-min{max-height:-moz-min-content;max-height:min-content}.max-h-max{max-height:-moz-max-content;max-height:max-content}.max-h-fit{max-height:-moz-fit-content;max-height:fit-content}.max-h-dvh{max-height:100dvh}.max-h-dvw{max-height:100dvw}.max-h-lvh{max-height:100lvh}.max-h-lvw{max-height:100lvw}.max-h-svh{max-height:100svh}.max-h-svw{max-height:100svw}.max-h-0{max-height:0}.max-h-px{max-height:1px}.max-h-1lh{max-height:1lh}.text-xs{font-size:var(--text-xs, .75rem)}.text-sm{font-size:var(--text-sm, .875rem)}.text-base{font-size:var(--text-md, 1rem)}.text-lg{font-size:var(--text-lg, 1.125rem)}.text-xl{font-size:var(--text-xl, 1.25rem)}.text-2xl{font-size:var(--text-2xl, 1.5rem)}.text-3xl{font-size:var(--text-3xl, 1.875rem)}.text-4xl{font-size:var(--text-4xl, 2.25rem)}.text-5xl{font-size:var(--text-5xl, 3rem)}.text-6xl{font-size:var(--text-6xl, 3.75rem)}.text-7xl{font-size:var(--text-7xl, 4.5rem)}.text-8xl{font-size:var(--text-8xl, 6rem)}.text-9xl{font-size:var(--text-9xl, 8rem)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.italic{font-style:italic}.not-italic{font-style:normal}.font-thin{font-weight:var(--font-thin, 100)}.font-extraLight{font-weight:var(--font-extraLight, 200)}.font-light{font-weight:var(--font-light, 300)}.font-normal{font-weight:var(--font-normal, 400)}.font-medium{font-weight:var(--font-medium, 500)}.font-semiBold{font-weight:var(--font-semiBold, 600)}.font-bold{font-weight:var(--font-bold, 700)}.font-extraBold{font-weight:var(--font-extraBold, 800)}.font-black{font-weight:var(--font-black, 900)}.tracking-tighter{letter-spacing:var(--tracking-tighter, -.05em)}.tracking-tight{letter-spacing:var(--tracking-tight, -.025em)}.tracking-normal{letter-spacing:var(--tracking-normal, 0em)}.tracking-wide{letter-spacing:var(--tracking-wide, .025em)}.tracking-wider{letter-spacing:var(--tracking-wider, .05em)}.tracking-widest{letter-spacing:var(--tracking-widest, .1em)}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4}.line-clamp-5{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;line-clamp:5}.line-height-none{line-height:1}.line-height-s{line-height:var(--line-height-sm, 1.25)}.line-height{line-height:var(--line-height, 1.5)}.line-height-1{line-height:var(--space, .25rem)}.line-height-2{line-height:calc(var(--space, .25rem) * 2)}.line-height-3{line-height:calc(var(--space, .25rem) * 3)}.line-height-4{line-height:calc(var(--space, .25rem) * 4)}.line-height-5{line-height:calc(var(--space, .25rem) * 5)}.list-inside{list-style-position:inside}.list-outside{list-style-position:outside}.list-none{list-style-type:none}.list-disc{list-style-type:disc}.list-decimal{list-style-type:decimal}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-start{text-align:start}.text-end{text-align:end}.text-justify{text-align:justify}.text-justify-all{text-align:justify-all}.text-parent{text-align:match-parent}.underline{text-decoration:underline}.overline{text-decoration:overline}.line-through{text-decoration:line-through}.no-underline{text-decoration:none}.underline-inherit{text-decoration-color:inherit}.underline-transparent{text-decoration-color:transparent}.underline-current{text-decoration-color:currentColor}.underline-solid{text-decoration-style:solid}.underline-double{text-decoration-style:double}.underline-dotted{text-decoration-style:dotted}.underline-dashed{text-decoration-style:dashed}.underline-wavy{text-decoration-style:wavy}.underline-auto{text-decoration-thickness:auto}.underline-from-font{text-decoration-thickness:from-font}.underline-0{text-decoration-thickness:0}.underline-1{text-decoration-thickness:1px}.underline-2{text-decoration-thickness:2px}.underline-3{text-decoration-thickness:3px}.underline-4{text-decoration-thickness:4px}.underline-5{text-decoration-thickness:5px}.underline-offset-auto{text-underline-offset:auto}.underline-offset-0{text-underline-offset:0}.underline-offset-1{text-underline-offset:1px}.underline-offset-2{text-underline-offset:2px}.underline-offset-3{text-underline-offset:3px}.underline-offset-4{text-underline-offset:4px}.underline-offset-5{text-underline-offset:5px}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.text-clip{text-overflow:clip}.text-wrap{text-wrap:wrap}.text-nowrap{text-wrap:nowrap}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.-index-px{text-indent:-1px}.indent-0{text-indent:0}.index-px{text-indent:1px}.vertical-baseline{vertical-align:baseline}.vertical-top{vertical-align:top}.vertical-middle{vertical-align:middle}.vertical-bottom{vertical-align:bottom}.vertical-text-top{vertical-align:text-top}.vertical-text-bottom{vertical-align:text-bottom}.vertical-sub{vertical-align:sub}.vertical-super{vertical-align:super}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.whitespace-break-spaces{white-space:break-spaces}.break-normal{word-break:normal}.break-keep{word-break:keep-all}.break-all{word-break:break-all}.wrap-break-word{overflow-wrap:break-word}.wrap-anywhere{overflow-wrap:anywhere}.wrap-normal{overflow-wrap:normal}.hyphens-auto{hyphens:auto}.hyphens-manual{hyphens:manual}.hyphens-none{hyphens:none}.content-none,.before-none:before,.after-none:after{content:none}.text-inherit{color:inherit}.text-transparent{color:transparent}.text-current{color:currentColor}.text-black{color:#000}.text-white{color:#fff}.text-gray-1{color:var(--gray-1)}.text-gray-2{color:var(--gray-2)}.text-gray-3{color:var(--gray-3)}.text-gray-4{color:var(--gray-4)}.text-gray-5{color:var(--gray-5)}.text-gray-6{color:var(--gray-6)}.text-gray-7{color:var(--gray-7)}.text-gray-8{color:var(--gray-8)}.text-gray-9{color:var(--gray-9)}.text-gray-10{color:var(--gray-10)}.text-gray-11{color:var(--gray-11)}.text-gray-12{color:var(--gray-12)}.text-gray-indicator{color:var(--gray-indicator)}.text-gray-track{color:var(--gray-track)}.text-olive-1{color:var(--olive-1)}.text-olive-2{color:var(--olive-2)}.text-olive-3{color:var(--olive-3)}.text-olive-4{color:var(--olive-4)}.text-olive-5{color:var(--olive-5)}.text-olive-6{color:var(--olive-6)}.text-olive-7{color:var(--olive-7)}.text-olive-8{color:var(--olive-8)}.text-olive-9{color:var(--olive-9)}.text-olive-10{color:var(--olive-10)}.text-olive-11{color:var(--olive-11)}.text-olive-12{color:var(--olive-12)}.text-olive-indicator{color:var(--olive-indicator)}.text-olive-track{color:var(--olive-track)}.text-tomato-1{color:var(--tomato-1)}.text-tomato-2{color:var(--tomato-2)}.text-tomato-3{color:var(--tomato-3)}.text-tomato-4{color:var(--tomato-4)}.text-tomato-5{color:var(--tomato-5)}.text-tomato-6{color:var(--tomato-6)}.text-tomato-7{color:var(--tomato-7)}.text-tomato-8{color:var(--tomato-8)}.text-tomato-9{color:var(--tomato-9)}.text-tomato-10{color:var(--tomato-10)}.text-tomato-11{color:var(--tomato-11)}.text-tomato-12{color:var(--tomato-12)}.text-tomato-indicator{color:var(--tomato-indicator)}.text-tomato-track{color:var(--tomato-track)}.text-ruby-1{color:var(--ruby-1)}.text-ruby-2{color:var(--ruby-2)}.text-ruby-3{color:var(--ruby-3)}.text-ruby-4{color:var(--ruby-4)}.text-ruby-5{color:var(--ruby-5)}.text-ruby-6{color:var(--ruby-6)}.text-ruby-7{color:var(--ruby-7)}.text-ruby-8{color:var(--ruby-8)}.text-ruby-9{color:var(--ruby-9)}.text-ruby-10{color:var(--ruby-10)}.text-ruby-11{color:var(--ruby-11)}.text-ruby-12{color:var(--ruby-12)}.text-ruby-indicator{color:var(--ruby-indicator)}.text-ruby-track{color:var(--ruby-track)}.text-pink-1{color:var(--pink-1)}.text-pink-2{color:var(--pink-2)}.text-pink-3{color:var(--pink-3)}.text-pink-4{color:var(--pink-4)}.text-pink-5{color:var(--pink-5)}.text-pink-6{color:var(--pink-6)}.text-pink-7{color:var(--pink-7)}.text-pink-8{color:var(--pink-8)}.text-pink-9{color:var(--pink-9)}.text-pink-10{color:var(--pink-10)}.text-pink-11{color:var(--pink-11)}.text-pink-12{color:var(--pink-12)}.text-pink-indicator{color:var(--pink-indicator)}.text-pink-track{color:var(--pink-track)}.text-violet-1{color:var(--violet-1)}.text-violet-2{color:var(--violet-2)}.text-violet-3{color:var(--violet-3)}.text-violet-4{color:var(--violet-4)}.text-violet-5{color:var(--violet-5)}.text-violet-6{color:var(--violet-6)}.text-violet-7{color:var(--violet-7)}.text-violet-8{color:var(--violet-8)}.text-violet-9{color:var(--violet-9)}.text-violet-10{color:var(--violet-10)}.text-violet-11{color:var(--violet-11)}.text-violet-12{color:var(--violet-12)}.text-violet-indicator{color:var(--violet-indicator)}.text-violet-track{color:var(--violet-track)}.text-indigo-1{color:var(--indigo-1)}.text-indigo-2{color:var(--indigo-2)}.text-indigo-3{color:var(--indigo-3)}.text-indigo-4{color:var(--indigo-4)}.text-indigo-5{color:var(--indigo-5)}.text-indigo-6{color:var(--indigo-6)}.text-indigo-7{color:var(--indigo-7)}.text-indigo-8{color:var(--indigo-8)}.text-indigo-9{color:var(--indigo-9)}.text-indigo-10{color:var(--indigo-10)}.text-indigo-11{color:var(--indigo-11)}.text-indigo-12{color:var(--indigo-12)}.text-indigo-indicator{color:var(--indigo-indicator)}.text-indigo-track{color:var(--indigo-track)}.text-blue-1{color:var(--blue-1)}.text-blue-2{color:var(--blue-2)}.text-blue-3{color:var(--blue-3)}.text-blue-4{color:var(--blue-4)}.text-blue-5{color:var(--blue-5)}.text-blue-6{color:var(--blue-6)}.text-blue-7{color:var(--blue-7)}.text-blue-8{color:var(--blue-8)}.text-blue-9{color:var(--blue-9)}.text-blue-10{color:var(--blue-10)}.text-blue-11{color:var(--blue-11)}.text-blue-12{color:var(--blue-12)}.text-blue-indicator{color:var(--blue-indicator)}.text-blue-track{color:var(--blue-track)}.text-teal-1{color:var(--teal-1)}.text-teal-2{color:var(--teal-2)}.text-teal-3{color:var(--teal-3)}.text-teal-4{color:var(--teal-4)}.text-teal-5{color:var(--teal-5)}.text-teal-6{color:var(--teal-6)}.text-teal-7{color:var(--teal-7)}.text-teal-8{color:var(--teal-8)}.text-teal-9{color:var(--teal-9)}.text-teal-10{color:var(--teal-10)}.text-teal-11{color:var(--teal-11)}.text-teal-12{color:var(--teal-12)}.text-teal-indicator{color:var(--teal-indicator)}.text-teal-track{color:var(--teal-track)}.text-grass-1{color:var(--grass-1)}.text-grass-2{color:var(--grass-2)}.text-grass-3{color:var(--grass-3)}.text-grass-4{color:var(--grass-4)}.text-grass-5{color:var(--grass-5)}.text-grass-6{color:var(--grass-6)}.text-grass-7{color:var(--grass-7)}.text-grass-8{color:var(--grass-8)}.text-grass-9{color:var(--grass-9)}.text-grass-10{color:var(--grass-10)}.text-grass-11{color:var(--grass-11)}.text-grass-12{color:var(--grass-12)}.text-grass-indicator{color:var(--grass-indicator)}.text-grass-track{color:var(--grass-track)}.text-mint-1{color:var(--mint-1)}.text-mint-2{color:var(--mint-2)}.text-mint-3{color:var(--mint-3)}.text-mint-4{color:var(--mint-4)}.text-mint-5{color:var(--mint-5)}.text-mint-6{color:var(--mint-6)}.text-mint-7{color:var(--mint-7)}.text-mint-8{color:var(--mint-8)}.text-mint-9{color:var(--mint-9)}.text-mint-10{color:var(--mint-10)}.text-mint-11{color:var(--mint-11)}.text-mint-12{color:var(--mint-12)}.text-mint-indicator{color:var(--mint-indicator)}.text-mint-track{color:var(--mint-track)}.text-lime-1{color:var(--lime-1)}.text-lime-2{color:var(--lime-2)}.text-lime-3{color:var(--lime-3)}.text-lime-4{color:var(--lime-4)}.text-lime-5{color:var(--lime-5)}.text-lime-6{color:var(--lime-6)}.text-lime-7{color:var(--lime-7)}.text-lime-8{color:var(--lime-8)}.text-lime-9{color:var(--lime-9)}.text-lime-10{color:var(--lime-10)}.text-lime-11{color:var(--lime-11)}.text-lime-12{color:var(--lime-12)}.text-lime-indicator{color:var(--lime-indicator)}.text-lime-track{color:var(--lime-track)}.text-yellow-1{color:var(--yellow-1)}.text-yellow-2{color:var(--yellow-2)}.text-yellow-3{color:var(--yellow-3)}.text-yellow-4{color:var(--yellow-4)}.text-yellow-5{color:var(--yellow-5)}.text-yellow-6{color:var(--yellow-6)}.text-yellow-7{color:var(--yellow-7)}.text-yellow-8{color:var(--yellow-8)}.text-yellow-9{color:var(--yellow-9)}.text-yellow-10{color:var(--yellow-10)}.text-yellow-11{color:var(--yellow-11)}.text-yellow-12{color:var(--yellow-12)}.text-yellow-indicator{color:var(--yellow-indicator)}.text-yellow-track{color:var(--yellow-track)}.text-orange-1{color:var(--orange-1)}.text-orange-2{color:var(--orange-2)}.text-orange-3{color:var(--orange-3)}.text-orange-4{color:var(--orange-4)}.text-orange-5{color:var(--orange-5)}.text-orange-6{color:var(--orange-6)}.text-orange-7{color:var(--orange-7)}.text-orange-8{color:var(--orange-8)}.text-orange-9{color:var(--orange-9)}.text-orange-10{color:var(--orange-10)}.text-orange-11{color:var(--orange-11)}.text-orange-12{color:var(--orange-12)}.text-orange-indicator{color:var(--orange-indicator)}.text-orange-track{color:var(--orange-track)}.text-gold-1{color:var(--gold-1)}.text-gold-2{color:var(--gold-2)}.text-gold-3{color:var(--gold-3)}.text-gold-4{color:var(--gold-4)}.text-gold-5{color:var(--gold-5)}.text-gold-6{color:var(--gold-6)}.text-gold-7{color:var(--gold-7)}.text-gold-8{color:var(--gold-8)}.text-gold-9{color:var(--gold-9)}.text-gold-10{color:var(--gold-10)}.text-gold-11{color:var(--gold-11)}.text-gold-12{color:var(--gold-12)}.text-gold-indicator{color:var(--gold-indicator)}.text-gold-track{color:var(--gold-track)}.text-red-1{color:var(--red-1)}.text-red-2{color:var(--red-2)}.text-red-3{color:var(--red-3)}.text-red-4{color:var(--red-4)}.text-red-5{color:var(--red-5)}.text-red-6{color:var(--red-6)}.text-red-7{color:var(--red-7)}.text-red-8{color:var(--red-8)}.text-red-9{color:var(--red-9)}.text-red-10{color:var(--red-10)}.text-red-11{color:var(--red-11)}.text-red-12{color:var(--red-12)}.text-red-indicator{color:var(--red-indicator)}.text-red-track{color:var(--red-track)}.text-green-1{color:var(--green-1)}.text-green-2{color:var(--green-2)}.text-green-3{color:var(--green-3)}.text-green-4{color:var(--green-4)}.text-green-5{color:var(--green-5)}.text-green-6{color:var(--green-6)}.text-green-7{color:var(--green-7)}.text-green-8{color:var(--green-8)}.text-green-9{color:var(--green-9)}.text-green-10{color:var(--green-10)}.text-green-11{color:var(--green-11)}.text-green-12{color:var(--green-12)}.text-green-indicator{color:var(--green-indicator)}.text-green-track{color:var(--green-track)}.text-amber-1{color:var(--amber-1)}.text-amber-2{color:var(--amber-2)}.text-amber-3{color:var(--amber-3)}.text-amber-4{color:var(--amber-4)}.text-amber-5{color:var(--amber-5)}.text-amber-6{color:var(--amber-6)}.text-amber-7{color:var(--amber-7)}.text-amber-8{color:var(--amber-8)}.text-amber-9{color:var(--amber-9)}.text-amber-10{color:var(--amber-10)}.text-amber-11{color:var(--amber-11)}.text-amber-12{color:var(--amber-12)}.text-amber-indicator{color:var(--amber-indicator)}.text-amber-track{color:var(--amber-track)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary{color:var(--secondary)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-accent{color:var(--accent)}.text-success{color:var(--success)}.text-success-foreground{color:var(--success-foreground)}.text-warning{color:var(--warning)}.text-warning-foreground{color:var(--warning-foreground)}.text-danger{color:var(--danger)}.text-danger-foreground{color:var(--danger-foreground)}.bg-inherit{background-color:inherit}.bg-transparent{background-color:transparent}.bg-current{background-color:currentColor}.bg-black{background-color:#000}.bg-white{background-color:#fff}.bg-gray-1{background-color:var(--gray-1)}.bg-gray-2{background-color:var(--gray-2)}.bg-gray-3{background-color:var(--gray-3)}.bg-gray-4{background-color:var(--gray-4)}.bg-gray-5{background-color:var(--gray-5)}.bg-gray-6{background-color:var(--gray-6)}.bg-gray-7{background-color:var(--gray-7)}.bg-gray-8{background-color:var(--gray-8)}.bg-gray-9{background-color:var(--gray-9)}.bg-gray-10{background-color:var(--gray-10)}.bg-gray-11{background-color:var(--gray-11)}.bg-gray-12{background-color:var(--gray-12)}.bg-gray-a1{background-color:var(--gray-a1)}.bg-gray-a2{background-color:var(--gray-a2)}.bg-gray-a3{background-color:var(--gray-a3)}.bg-gray-a4{background-color:var(--gray-a4)}.bg-gray-a5{background-color:var(--gray-a5)}.bg-gray-a6{background-color:var(--gray-a6)}.bg-gray-a7{background-color:var(--gray-a7)}.bg-gray-a8{background-color:var(--gray-a8)}.bg-gray-a9{background-color:var(--gray-a9)}.bg-gray-a10{background-color:var(--gray-a10)}.bg-gray-a11{background-color:var(--gray-a11)}.bg-gray-a12{background-color:var(--gray-a12)}.bg-gray-indicator{background-color:var(--gray-indicator)}.bg-gray-track{background-color:var(--gray-track)}.bg-olive-1{background-color:var(--olive-1)}.bg-olive-2{background-color:var(--olive-2)}.bg-olive-3{background-color:var(--olive-3)}.bg-olive-4{background-color:var(--olive-4)}.bg-olive-5{background-color:var(--olive-5)}.bg-olive-6{background-color:var(--olive-6)}.bg-olive-7{background-color:var(--olive-7)}.bg-olive-8{background-color:var(--olive-8)}.bg-olive-9{background-color:var(--olive-9)}.bg-olive-10{background-color:var(--olive-10)}.bg-olive-11{background-color:var(--olive-11)}.bg-olive-12{background-color:var(--olive-12)}.bg-olive-a1{background-color:var(--olive-a1)}.bg-olive-a2{background-color:var(--olive-a2)}.bg-olive-a3{background-color:var(--olive-a3)}.bg-olive-a4{background-color:var(--olive-a4)}.bg-olive-a5{background-color:var(--olive-a5)}.bg-olive-a6{background-color:var(--olive-a6)}.bg-olive-a7{background-color:var(--olive-a7)}.bg-olive-a8{background-color:var(--olive-a8)}.bg-olive-a9{background-color:var(--olive-a9)}.bg-olive-a10{background-color:var(--olive-a10)}.bg-olive-a11{background-color:var(--olive-a11)}.bg-olive-a12{background-color:var(--olive-a12)}.bg-olive-indicator{background-color:var(--olive-indicator)}.bg-olive-track{background-color:var(--olive-track)}.bg-tomato-1{background-color:var(--tomato-1)}.bg-tomato-2{background-color:var(--tomato-2)}.bg-tomato-3{background-color:var(--tomato-3)}.bg-tomato-4{background-color:var(--tomato-4)}.bg-tomato-5{background-color:var(--tomato-5)}.bg-tomato-6{background-color:var(--tomato-6)}.bg-tomato-7{background-color:var(--tomato-7)}.bg-tomato-8{background-color:var(--tomato-8)}.bg-tomato-9{background-color:var(--tomato-9)}.bg-tomato-10{background-color:var(--tomato-10)}.bg-tomato-11{background-color:var(--tomato-11)}.bg-tomato-12{background-color:var(--tomato-12)}.bg-tomato-a1{background-color:var(--tomato-a1)}.bg-tomato-a2{background-color:var(--tomato-a2)}.bg-tomato-a3{background-color:var(--tomato-a3)}.bg-tomato-a4{background-color:var(--tomato-a4)}.bg-tomato-a5{background-color:var(--tomato-a5)}.bg-tomato-a6{background-color:var(--tomato-a6)}.bg-tomato-a7{background-color:var(--tomato-a7)}.bg-tomato-a8{background-color:var(--tomato-a8)}.bg-tomato-a9{background-color:var(--tomato-a9)}.bg-tomato-a10{background-color:var(--tomato-a10)}.bg-tomato-a11{background-color:var(--tomato-a11)}.bg-tomato-a12{background-color:var(--tomato-a12)}.bg-tomato-indicator{background-color:var(--tomato-indicator)}.bg-tomato-track{background-color:var(--tomato-track)}.bg-ruby-1{background-color:var(--ruby-1)}.bg-ruby-2{background-color:var(--ruby-2)}.bg-ruby-3{background-color:var(--ruby-3)}.bg-ruby-4{background-color:var(--ruby-4)}.bg-ruby-5{background-color:var(--ruby-5)}.bg-ruby-6{background-color:var(--ruby-6)}.bg-ruby-7{background-color:var(--ruby-7)}.bg-ruby-8{background-color:var(--ruby-8)}.bg-ruby-9{background-color:var(--ruby-9)}.bg-ruby-10{background-color:var(--ruby-10)}.bg-ruby-11{background-color:var(--ruby-11)}.bg-ruby-12{background-color:var(--ruby-12)}.bg-ruby-a1{background-color:var(--ruby-a1)}.bg-ruby-a2{background-color:var(--ruby-a2)}.bg-ruby-a3{background-color:var(--ruby-a3)}.bg-ruby-a4{background-color:var(--ruby-a4)}.bg-ruby-a5{background-color:var(--ruby-a5)}.bg-ruby-a6{background-color:var(--ruby-a6)}.bg-ruby-a7{background-color:var(--ruby-a7)}.bg-ruby-a8{background-color:var(--ruby-a8)}.bg-ruby-a9{background-color:var(--ruby-a9)}.bg-ruby-a10{background-color:var(--ruby-a10)}.bg-ruby-a11{background-color:var(--ruby-a11)}.bg-ruby-a12{background-color:var(--ruby-a12)}.bg-ruby-indicator{background-color:var(--ruby-indicator)}.bg-ruby-track{background-color:var(--ruby-track)}.bg-pink-1{background-color:var(--pink-1)}.bg-pink-2{background-color:var(--pink-2)}.bg-pink-3{background-color:var(--pink-3)}.bg-pink-4{background-color:var(--pink-4)}.bg-pink-5{background-color:var(--pink-5)}.bg-pink-6{background-color:var(--pink-6)}.bg-pink-7{background-color:var(--pink-7)}.bg-pink-8{background-color:var(--pink-8)}.bg-pink-9{background-color:var(--pink-9)}.bg-pink-10{background-color:var(--pink-10)}.bg-pink-11{background-color:var(--pink-11)}.bg-pink-12{background-color:var(--pink-12)}.bg-pink-a1{background-color:var(--pink-a1)}.bg-pink-a2{background-color:var(--pink-a2)}.bg-pink-a3{background-color:var(--pink-a3)}.bg-pink-a4{background-color:var(--pink-a4)}.bg-pink-a5{background-color:var(--pink-a5)}.bg-pink-a6{background-color:var(--pink-a6)}.bg-pink-a7{background-color:var(--pink-a7)}.bg-pink-a8{background-color:var(--pink-a8)}.bg-pink-a9{background-color:var(--pink-a9)}.bg-pink-a10{background-color:var(--pink-a10)}.bg-pink-a11{background-color:var(--pink-a11)}.bg-pink-a12{background-color:var(--pink-a12)}.bg-pink-indicator{background-color:var(--pink-indicator)}.bg-pink-track{background-color:var(--pink-track)}.bg-violet-1{background-color:var(--violet-1)}.bg-violet-2{background-color:var(--violet-2)}.bg-violet-3{background-color:var(--violet-3)}.bg-violet-4{background-color:var(--violet-4)}.bg-violet-5{background-color:var(--violet-5)}.bg-violet-6{background-color:var(--violet-6)}.bg-violet-7{background-color:var(--violet-7)}.bg-violet-8{background-color:var(--violet-8)}.bg-violet-9{background-color:var(--violet-9)}.bg-violet-10{background-color:var(--violet-10)}.bg-violet-11{background-color:var(--violet-11)}.bg-violet-12{background-color:var(--violet-12)}.bg-violet-a1{background-color:var(--violet-a1)}.bg-violet-a2{background-color:var(--violet-a2)}.bg-violet-a3{background-color:var(--violet-a3)}.bg-violet-a4{background-color:var(--violet-a4)}.bg-violet-a5{background-color:var(--violet-a5)}.bg-violet-a6{background-color:var(--violet-a6)}.bg-violet-a7{background-color:var(--violet-a7)}.bg-violet-a8{background-color:var(--violet-a8)}.bg-violet-a9{background-color:var(--violet-a9)}.bg-violet-a10{background-color:var(--violet-a10)}.bg-violet-a11{background-color:var(--violet-a11)}.bg-violet-a12{background-color:var(--violet-a12)}.bg-violet-indicator{background-color:var(--violet-indicator)}.bg-violet-track{background-color:var(--violet-track)}.bg-indigo-1{background-color:var(--indigo-1)}.bg-indigo-2{background-color:var(--indigo-2)}.bg-indigo-3{background-color:var(--indigo-3)}.bg-indigo-4{background-color:var(--indigo-4)}.bg-indigo-5{background-color:var(--indigo-5)}.bg-indigo-6{background-color:var(--indigo-6)}.bg-indigo-7{background-color:var(--indigo-7)}.bg-indigo-8{background-color:var(--indigo-8)}.bg-indigo-9{background-color:var(--indigo-9)}.bg-indigo-10{background-color:var(--indigo-10)}.bg-indigo-11{background-color:var(--indigo-11)}.bg-indigo-12{background-color:var(--indigo-12)}.bg-indigo-a1{background-color:var(--indigo-a1)}.bg-indigo-a2{background-color:var(--indigo-a2)}.bg-indigo-a3{background-color:var(--indigo-a3)}.bg-indigo-a4{background-color:var(--indigo-a4)}.bg-indigo-a5{background-color:var(--indigo-a5)}.bg-indigo-a6{background-color:var(--indigo-a6)}.bg-indigo-a7{background-color:var(--indigo-a7)}.bg-indigo-a8{background-color:var(--indigo-a8)}.bg-indigo-a9{background-color:var(--indigo-a9)}.bg-indigo-a10{background-color:var(--indigo-a10)}.bg-indigo-a11{background-color:var(--indigo-a11)}.bg-indigo-a12{background-color:var(--indigo-a12)}.bg-indigo-indicator{background-color:var(--indigo-indicator)}.bg-indigo-track{background-color:var(--indigo-track)}.bg-blue-1{background-color:var(--blue-1)}.bg-blue-2{background-color:var(--blue-2)}.bg-blue-3{background-color:var(--blue-3)}.bg-blue-4{background-color:var(--blue-4)}.bg-blue-5{background-color:var(--blue-5)}.bg-blue-6{background-color:var(--blue-6)}.bg-blue-7{background-color:var(--blue-7)}.bg-blue-8{background-color:var(--blue-8)}.bg-blue-9{background-color:var(--blue-9)}.bg-blue-10{background-color:var(--blue-10)}.bg-blue-11{background-color:var(--blue-11)}.bg-blue-12{background-color:var(--blue-12)}.bg-blue-a1{background-color:var(--blue-a1)}.bg-blue-a2{background-color:var(--blue-a2)}.bg-blue-a3{background-color:var(--blue-a3)}.bg-blue-a4{background-color:var(--blue-a4)}.bg-blue-a5{background-color:var(--blue-a5)}.bg-blue-a6{background-color:var(--blue-a6)}.bg-blue-a7{background-color:var(--blue-a7)}.bg-blue-a8{background-color:var(--blue-a8)}.bg-blue-a9{background-color:var(--blue-a9)}.bg-blue-a10{background-color:var(--blue-a10)}.bg-blue-a11{background-color:var(--blue-a11)}.bg-blue-a12{background-color:var(--blue-a12)}.bg-blue-indicator{background-color:var(--blue-indicator)}.bg-blue-track{background-color:var(--blue-track)}.bg-teal-1{background-color:var(--teal-1)}.bg-teal-2{background-color:var(--teal-2)}.bg-teal-3{background-color:var(--teal-3)}.bg-teal-4{background-color:var(--teal-4)}.bg-teal-5{background-color:var(--teal-5)}.bg-teal-6{background-color:var(--teal-6)}.bg-teal-7{background-color:var(--teal-7)}.bg-teal-8{background-color:var(--teal-8)}.bg-teal-9{background-color:var(--teal-9)}.bg-teal-10{background-color:var(--teal-10)}.bg-teal-11{background-color:var(--teal-11)}.bg-teal-12{background-color:var(--teal-12)}.bg-teal-a1{background-color:var(--teal-a1)}.bg-teal-a2{background-color:var(--teal-a2)}.bg-teal-a3{background-color:var(--teal-a3)}.bg-teal-a4{background-color:var(--teal-a4)}.bg-teal-a5{background-color:var(--teal-a5)}.bg-teal-a6{background-color:var(--teal-a6)}.bg-teal-a7{background-color:var(--teal-a7)}.bg-teal-a8{background-color:var(--teal-a8)}.bg-teal-a9{background-color:var(--teal-a9)}.bg-teal-a10{background-color:var(--teal-a10)}.bg-teal-a11{background-color:var(--teal-a11)}.bg-teal-a12{background-color:var(--teal-a12)}.bg-teal-indicator{background-color:var(--teal-indicator)}.bg-teal-track{background-color:var(--teal-track)}.bg-grass-1{background-color:var(--grass-1)}.bg-grass-2{background-color:var(--grass-2)}.bg-grass-3{background-color:var(--grass-3)}.bg-grass-4{background-color:var(--grass-4)}.bg-grass-5{background-color:var(--grass-5)}.bg-grass-6{background-color:var(--grass-6)}.bg-grass-7{background-color:var(--grass-7)}.bg-grass-8{background-color:var(--grass-8)}.bg-grass-9{background-color:var(--grass-9)}.bg-grass-10{background-color:var(--grass-10)}.bg-grass-11{background-color:var(--grass-11)}.bg-grass-12{background-color:var(--grass-12)}.bg-grass-a1{background-color:var(--grass-a1)}.bg-grass-a2{background-color:var(--grass-a2)}.bg-grass-a3{background-color:var(--grass-a3)}.bg-grass-a4{background-color:var(--grass-a4)}.bg-grass-a5{background-color:var(--grass-a5)}.bg-grass-a6{background-color:var(--grass-a6)}.bg-grass-a7{background-color:var(--grass-a7)}.bg-grass-a8{background-color:var(--grass-a8)}.bg-grass-a9{background-color:var(--grass-a9)}.bg-grass-a10{background-color:var(--grass-a10)}.bg-grass-a11{background-color:var(--grass-a11)}.bg-grass-a12{background-color:var(--grass-a12)}.bg-grass-indicator{background-color:var(--grass-indicator)}.bg-grass-track{background-color:var(--grass-track)}.bg-mint-1{background-color:var(--mint-1)}.bg-mint-2{background-color:var(--mint-2)}.bg-mint-3{background-color:var(--mint-3)}.bg-mint-4{background-color:var(--mint-4)}.bg-mint-5{background-color:var(--mint-5)}.bg-mint-6{background-color:var(--mint-6)}.bg-mint-7{background-color:var(--mint-7)}.bg-mint-8{background-color:var(--mint-8)}.bg-mint-9{background-color:var(--mint-9)}.bg-mint-10{background-color:var(--mint-10)}.bg-mint-11{background-color:var(--mint-11)}.bg-mint-12{background-color:var(--mint-12)}.bg-mint-a1{background-color:var(--mint-a1)}.bg-mint-a2{background-color:var(--mint-a2)}.bg-mint-a3{background-color:var(--mint-a3)}.bg-mint-a4{background-color:var(--mint-a4)}.bg-mint-a5{background-color:var(--mint-a5)}.bg-mint-a6{background-color:var(--mint-a6)}.bg-mint-a7{background-color:var(--mint-a7)}.bg-mint-a8{background-color:var(--mint-a8)}.bg-mint-a9{background-color:var(--mint-a9)}.bg-mint-a10{background-color:var(--mint-a10)}.bg-mint-a11{background-color:var(--mint-a11)}.bg-mint-a12{background-color:var(--mint-a12)}.bg-mint-indicator{background-color:var(--mint-indicator)}.bg-mint-track{background-color:var(--mint-track)}.bg-lime-1{background-color:var(--lime-1)}.bg-lime-2{background-color:var(--lime-2)}.bg-lime-3{background-color:var(--lime-3)}.bg-lime-4{background-color:var(--lime-4)}.bg-lime-5{background-color:var(--lime-5)}.bg-lime-6{background-color:var(--lime-6)}.bg-lime-7{background-color:var(--lime-7)}.bg-lime-8{background-color:var(--lime-8)}.bg-lime-9{background-color:var(--lime-9)}.bg-lime-10{background-color:var(--lime-10)}.bg-lime-11{background-color:var(--lime-11)}.bg-lime-12{background-color:var(--lime-12)}.bg-lime-a1{background-color:var(--lime-a1)}.bg-lime-a2{background-color:var(--lime-a2)}.bg-lime-a3{background-color:var(--lime-a3)}.bg-lime-a4{background-color:var(--lime-a4)}.bg-lime-a5{background-color:var(--lime-a5)}.bg-lime-a6{background-color:var(--lime-a6)}.bg-lime-a7{background-color:var(--lime-a7)}.bg-lime-a8{background-color:var(--lime-a8)}.bg-lime-a9{background-color:var(--lime-a9)}.bg-lime-a10{background-color:var(--lime-a10)}.bg-lime-a11{background-color:var(--lime-a11)}.bg-lime-a12{background-color:var(--lime-a12)}.bg-lime-indicator{background-color:var(--lime-indicator)}.bg-lime-track{background-color:var(--lime-track)}.bg-yellow-1{background-color:var(--yellow-1)}.bg-yellow-2{background-color:var(--yellow-2)}.bg-yellow-3{background-color:var(--yellow-3)}.bg-yellow-4{background-color:var(--yellow-4)}.bg-yellow-5{background-color:var(--yellow-5)}.bg-yellow-6{background-color:var(--yellow-6)}.bg-yellow-7{background-color:var(--yellow-7)}.bg-yellow-8{background-color:var(--yellow-8)}.bg-yellow-9{background-color:var(--yellow-9)}.bg-yellow-10{background-color:var(--yellow-10)}.bg-yellow-11{background-color:var(--yellow-11)}.bg-yellow-12{background-color:var(--yellow-12)}.bg-yellow-a1{background-color:var(--yellow-a1)}.bg-yellow-a2{background-color:var(--yellow-a2)}.bg-yellow-a3{background-color:var(--yellow-a3)}.bg-yellow-a4{background-color:var(--yellow-a4)}.bg-yellow-a5{background-color:var(--yellow-a5)}.bg-yellow-a6{background-color:var(--yellow-a6)}.bg-yellow-a7{background-color:var(--yellow-a7)}.bg-yellow-a8{background-color:var(--yellow-a8)}.bg-yellow-a9{background-color:var(--yellow-a9)}.bg-yellow-a10{background-color:var(--yellow-a10)}.bg-yellow-a11{background-color:var(--yellow-a11)}.bg-yellow-a12{background-color:var(--yellow-a12)}.bg-yellow-indicator{background-color:var(--yellow-indicator)}.bg-yellow-track{background-color:var(--yellow-track)}.bg-orange-1{background-color:var(--orange-1)}.bg-orange-2{background-color:var(--orange-2)}.bg-orange-3{background-color:var(--orange-3)}.bg-orange-4{background-color:var(--orange-4)}.bg-orange-5{background-color:var(--orange-5)}.bg-orange-6{background-color:var(--orange-6)}.bg-orange-7{background-color:var(--orange-7)}.bg-orange-8{background-color:var(--orange-8)}.bg-orange-9{background-color:var(--orange-9)}.bg-orange-10{background-color:var(--orange-10)}.bg-orange-11{background-color:var(--orange-11)}.bg-orange-12{background-color:var(--orange-12)}.bg-orange-a1{background-color:var(--orange-a1)}.bg-orange-a2{background-color:var(--orange-a2)}.bg-orange-a3{background-color:var(--orange-a3)}.bg-orange-a4{background-color:var(--orange-a4)}.bg-orange-a5{background-color:var(--orange-a5)}.bg-orange-a6{background-color:var(--orange-a6)}.bg-orange-a7{background-color:var(--orange-a7)}.bg-orange-a8{background-color:var(--orange-a8)}.bg-orange-a9{background-color:var(--orange-a9)}.bg-orange-a10{background-color:var(--orange-a10)}.bg-orange-a11{background-color:var(--orange-a11)}.bg-orange-a12{background-color:var(--orange-a12)}.bg-orange-indicator{background-color:var(--orange-indicator)}.bg-orange-track{background-color:var(--orange-track)}.bg-gold-1{background-color:var(--gold-1)}.bg-gold-2{background-color:var(--gold-2)}.bg-gold-3{background-color:var(--gold-3)}.bg-gold-4{background-color:var(--gold-4)}.bg-gold-5{background-color:var(--gold-5)}.bg-gold-6{background-color:var(--gold-6)}.bg-gold-7{background-color:var(--gold-7)}.bg-gold-8{background-color:var(--gold-8)}.bg-gold-9{background-color:var(--gold-9)}.bg-gold-10{background-color:var(--gold-10)}.bg-gold-11{background-color:var(--gold-11)}.bg-gold-12{background-color:var(--gold-12)}.bg-gold-a1{background-color:var(--gold-a1)}.bg-gold-a2{background-color:var(--gold-a2)}.bg-gold-a3{background-color:var(--gold-a3)}.bg-gold-a4{background-color:var(--gold-a4)}.bg-gold-a5{background-color:var(--gold-a5)}.bg-gold-a6{background-color:var(--gold-a6)}.bg-gold-a7{background-color:var(--gold-a7)}.bg-gold-a8{background-color:var(--gold-a8)}.bg-gold-a9{background-color:var(--gold-a9)}.bg-gold-a10{background-color:var(--gold-a10)}.bg-gold-a11{background-color:var(--gold-a11)}.bg-gold-a12{background-color:var(--gold-a12)}.bg-gold-indicator{background-color:var(--gold-indicator)}.bg-gold-track{background-color:var(--gold-track)}.bg-red-1{background-color:var(--red-1)}.bg-red-2{background-color:var(--red-2)}.bg-red-3{background-color:var(--red-3)}.bg-red-4{background-color:var(--red-4)}.bg-red-5{background-color:var(--red-5)}.bg-red-6{background-color:var(--red-6)}.bg-red-7{background-color:var(--red-7)}.bg-red-8{background-color:var(--red-8)}.bg-red-9{background-color:var(--red-9)}.bg-red-10{background-color:var(--red-10)}.bg-red-11{background-color:var(--red-11)}.bg-red-12{background-color:var(--red-12)}.bg-red-a1{background-color:var(--red-a1)}.bg-red-a2{background-color:var(--red-a2)}.bg-red-a3{background-color:var(--red-a3)}.bg-red-a4{background-color:var(--red-a4)}.bg-red-a5{background-color:var(--red-a5)}.bg-red-a6{background-color:var(--red-a6)}.bg-red-a7{background-color:var(--red-a7)}.bg-red-a8{background-color:var(--red-a8)}.bg-red-a9{background-color:var(--red-a9)}.bg-red-a10{background-color:var(--red-a10)}.bg-red-a11{background-color:var(--red-a11)}.bg-red-a12{background-color:var(--red-a12)}.bg-red-indicator{background-color:var(--red-indicator)}.bg-red-track{background-color:var(--red-track)}.bg-green-1{background-color:var(--green-1)}.bg-green-2{background-color:var(--green-2)}.bg-green-3{background-color:var(--green-3)}.bg-green-4{background-color:var(--green-4)}.bg-green-5{background-color:var(--green-5)}.bg-green-6{background-color:var(--green-6)}.bg-green-7{background-color:var(--green-7)}.bg-green-8{background-color:var(--green-8)}.bg-green-9{background-color:var(--green-9)}.bg-green-10{background-color:var(--green-10)}.bg-green-11{background-color:var(--green-11)}.bg-green-12{background-color:var(--green-12)}.bg-green-a1{background-color:var(--green-a1)}.bg-green-a2{background-color:var(--green-a2)}.bg-green-a3{background-color:var(--green-a3)}.bg-green-a4{background-color:var(--green-a4)}.bg-green-a5{background-color:var(--green-a5)}.bg-green-a6{background-color:var(--green-a6)}.bg-green-a7{background-color:var(--green-a7)}.bg-green-a8{background-color:var(--green-a8)}.bg-green-a9{background-color:var(--green-a9)}.bg-green-a10{background-color:var(--green-a10)}.bg-green-a11{background-color:var(--green-a11)}.bg-green-a12{background-color:var(--green-a12)}.bg-green-indicator{background-color:var(--green-indicator)}.bg-green-track{background-color:var(--green-track)}.bg-amber-1{background-color:var(--amber-1)}.bg-amber-2{background-color:var(--amber-2)}.bg-amber-3{background-color:var(--amber-3)}.bg-amber-4{background-color:var(--amber-4)}.bg-amber-5{background-color:var(--amber-5)}.bg-amber-6{background-color:var(--amber-6)}.bg-amber-7{background-color:var(--amber-7)}.bg-amber-8{background-color:var(--amber-8)}.bg-amber-9{background-color:var(--amber-9)}.bg-amber-10{background-color:var(--amber-10)}.bg-amber-11{background-color:var(--amber-11)}.bg-amber-12{background-color:var(--amber-12)}.bg-amber-a1{background-color:var(--amber-a1)}.bg-amber-a2{background-color:var(--amber-a2)}.bg-amber-a3{background-color:var(--amber-a3)}.bg-amber-a4{background-color:var(--amber-a4)}.bg-amber-a5{background-color:var(--amber-a5)}.bg-amber-a6{background-color:var(--amber-a6)}.bg-amber-a7{background-color:var(--amber-a7)}.bg-amber-a8{background-color:var(--amber-a8)}.bg-amber-a9{background-color:var(--amber-a9)}.bg-amber-a10{background-color:var(--amber-a10)}.bg-amber-a11{background-color:var(--amber-a11)}.bg-amber-a12{background-color:var(--amber-a12)}.bg-amber-indicator{background-color:var(--amber-indicator)}.bg-amber-track{background-color:var(--amber-track)}.bg-fixed{background-attachment:fixed}.bg-local{background-attachment:local}.bg-scroll{background-attachment:scroll}.bg-clip-border{background-clip:border-box}.bg-clip-padding{background-clip:padding-box}.bg-clip-content{background-clip:content-box}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-origin-border{background-origin:border-box}.bg-origin-padding{background-origin:padding-box}.bg-origin-content{background-origin:content-box}.bg-top{background-position:top}.bg-right{background-position:right}.bg-bottom{background-position:bottom}.bg-left{background-position:left}.bg-center{background-position:center}.bg-top-left{background-position:left top}.bg-top-right{background-position:right top}.bg-bottom-left{background-position:left bottom}.bg-bottom-right{background-position:right bottom}.bg-repeat{background-repeat:repeat}.bg-no-repeat{background-repeat:no-repeat}.bg-repeat-x{background-repeat:repeat-x}.bg-repeat-y{background-repeat:repeat-y}.bg-repeat-round{background-repeat:round}.bg-repeat-space{background-repeat:space}.bg-auto{background-size:auto}.bg-cover{background-size:cover}.bg-contain{background-size:contain}.border-inherit{border-color:inherit}.border-transparent{border-color:transparent}.border-current{border-color:currentColor}.border-black{border-color:#000}.border-white{border-color:#fff}.border-t-inherit{border-top-color:inherit}.border-t-transparent{border-top-color:transparent}.border-r-inherit{border-right-color:inherit}.border-r-transparent{border-right-color:transparent}.border-b-inherit{border-bottom-color:inherit}.border-b-transparent{border-bottom-color:transparent}.border-l-inherit{border-left-color:inherit}.border-l-transparent{border-left-color:transparent}.rounded-none{border-radius:0}.rounded-full{border-radius:100%}.rounded-half{border-radius:50%}.rounded-xs{border-radius:var(--radius-xs, .125rem)}.rounded-sm{border-radius:var(--radius-sm, .25rem)}.rounded-md{border-radius:var(--radius-md, .375rem)}.rounded-lg{border-radius:var(--radius-lg, .5rem)}.rounded-xl{border-radius:var(--radius-xl, .75rem)}.rounded-2xl{border-radius:var(--radius-2xl, 1rem)}.rounded-3xl{border-radius:var(--radius-3xl, 1.5rem)}.rounded-4xl{border-radius:var(--radius-4xl, 2rem)}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-6{border-width:6px}.border-8{border-width:8px}.border-x{border-inline-width:1px}.border-x-2{border-inline-width:2px}.border-x-4{border-inline-width:4px}.border-x-6{border-inline-width:6px}.border-x-8{border-inline-width:8px}.border-y{border-block-width:1px}.border-y-2{border-block-width:2px}.border-y-4{border-block-width:4px}.border-y-6{border-block-width:6px}.border-y-8{border-block-width:8px}.border-s{border-inline-start-width:1px}.border-s-2{border-inline-start-width:2px}.border-s-4{border-inline-start-width:4px}.border-s-6{border-inline-start-width:6px}.border-s-8{border-inline-start-width:8px}.border-e{border-inline-end-width:1px}.border-e-2{border-inline-end-width:2px}.border-e-4{border-inline-end-width:4px}.border-e-6{border-inline-end-width:6px}.border-e-8{border-inline-end-width:8px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-t-4{border-top-width:4px}.border-t-6{border-top-width:6px}.border-t-8{border-top-width:8px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-b-6{border-bottom-width:6px}.border-b-8{border-bottom-width:8px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-r-4{border-right-width:4px}.border-r-6{border-right-width:6px}.border-r-8{border-right-width:8px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-l-6{border-left-width:6px}.border-l-8{border-left-width:8px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-dotted{border-style:dotted}.border-double{border-style:double}.border-hidden{border-style:hidden}.border-none{border-style:none}.outline{outline-width:1px}.outline-2{outline-width:2px}.outline-4{outline-width:4px}.outline-6{outline-width:6px}.outline-8{outline-width:8px}.outline-inherit{outline-color:inherit}.outline-transparent{outline-color:transparent}.outline-current{outline-color:currentColor}.outline-black{outline-color:#000}.outline-white{outline-color:#fff}.outline-solid{outline-style:solid}.outline-dashed{outline-style:dashed}.outline-dotted{outline-style:dotted}.outline-double{outline-style:double}.outline-none{outline-style:none}.outline-hidden{outline:2px solid transparent;outline-offset:2px}.outline-offset-0{outline-offset:0}.outline-offset-2{outline-offset:2px}.outline-offset-4{outline-offset:4px}.outline-offset-6{outline-offset:6px}.outline-offset-8{outline-offset:8px}.shadow-none{box-shadow:0 0 #0000}.shadow-2xs{box-shadow:var(--shadow-2xs, 0 1px rgb(0 0 0 / .05))}.shadow-xs{box-shadow:var(--shadow-xs, 0 1px 2px 0 rgb(0 0 0 / .05))}.shadow-sm{box-shadow:var( --shadow-sm, 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1) )}.shadow-md{box-shadow:var( --shadow-md, 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1) )}.shadow-lg{box-shadow:var( --shadow-lg, 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1) )}.shadow-xl{box-shadow:var( --shadow-xl, 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1) )}.shadow-2xl{box-shadow:var(--shadow-2xl, 0 25px 50px -12px rgb(0 0 0 / .25))}.shadow-inner{box-shadow:var(--shadow-inner, 0 0 0 1px var(--border-color))}.text-shadow-none{text-shadow:none}.text-shadow-2xs{text-shadow:var(--text-shadow-2xs, 0px 1px 0px rgb(0 0 0 / .15))}.text-shadow-xs{text-shadow:var(--text-shadow-xs, 0px 1px 1px rgb(0 0 0 / .2))}.text-shadow-sm{text-shadow:var( --text-shadow-sm, 0px 1px 0px rgb(0 0 0 / .075), 0px 1px 1px rgb(0 0 0 / .075), 0px 2px 2px rgb(0 0 0 / .075) )}.text-shadow-md{text-shadow:var( --text-shadow-md, 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1) )}.text-shadow-lg{text-shadow:var( --text-shadow-lg, 0px 1px 2px rgb(0 0 0 / .1), 0px 3px 2px rgb(0 0 0 / .1), 0px 4px 8px rgb(0 0 0 / .1) )}.opacity-0{opacity:0}.opacity-5{opacity:5%}.opacity-10{opacity:10%}.opacity-15{opacity:15%}.opacity-20{opacity:20%}.opacity-25{opacity:25%}.opacity-30{opacity:30%}.opacity-35{opacity:35%}.opacity-40{opacity:40%}.opacity-45{opacity:45%}.opacity-50{opacity:50%}.opacity-55{opacity:55%}.opacity-60{opacity:60%}.opacity-65{opacity:65%}.opacity-70{opacity:70%}.opacity-75{opacity:75%}.opacity-80{opacity:80%}.opacity-85{opacity:85%}.opacity-90{opacity:90%}.opacity-95{opacity:95%}.opacity-100{opacity:100%}.mix-blend-normal{mix-blend-mode:normal}.mix-blend-multiply{mix-blend-mode:multiply}.mix-blend-screen{mix-blend-mode:screen}.mix-blend-overlay{mix-blend-mode:overlay}.mix-blend-darken{mix-blend-mode:darken}.mix-blend-lighten{mix-blend-mode:lighten}.mix-blend-color-dodge{mix-blend-mode:color-dodge}.mix-blend-color-burn{mix-blend-mode:color-burn}.mix-blend-hard-light{mix-blend-mode:hard-light}.mix-blend-soft-light{mix-blend-mode:soft-light}.mix-blend-difference{mix-blend-mode:difference}.mix-blend-exclusion{mix-blend-mode:exclusion}.mix-blend-hue{mix-blend-mode:hue}.mix-blend-saturation{mix-blend-mode:saturation}.mix-blend-color{mix-blend-mode:color}.mix-blend-luminosity{mix-blend-mode:luminosity}.mix-blend-plus-darker{mix-blend-mode:plus-darker}.mix-blend-plus-lighter{mix-blend-mode:plus-lighter}.bg-blend-normal{background-blend-mode:normal}.bg-blend-multiply{background-blend-mode:multiply}.bg-blend-screen{background-blend-mode:screen}.bg-blend-overlay{background-blend-mode:overlay}.bg-blend-darken{background-blend-mode:darken}.bg-blend-lighten{background-blend-mode:lighten}.bg-blend-color-dodge{background-blend-mode:color-dodge}.bg-blend-color-burn{background-blend-mode:color-burn}.bg-blend-hard-light{background-blend-mode:hard-light}.bg-blend-soft-light{background-blend-mode:soft-light}.bg-blend-difference{background-blend-mode:difference}.bg-blend-exclusion{background-blend-mode:exclusion}.bg-blend-hue{background-blend-mode:hue}.bg-blend-saturation{background-blend-mode:saturation}.bg-blend-color{background-blend-mode:color}.bg-blend-luminosity{background-blend-mode:luminosity}.mask-clip-border{-webkit-mask-clip:border-box;mask-clip:border-box}.mask-clip-padding{-webkit-mask-clip:padding-box;mask-clip:padding-box}.mask-clip-content{-webkit-mask-clip:content-box;mask-clip:content-box}.mask-clip-fill{-webkit-mask-clip:fill-box;mask-clip:fill-box}.mask-clip-stroke{-webkit-mask-clip:stroke-box;mask-clip:stroke-box}.mask-clip-view{-webkit-mask-clip:view-box;mask-clip:view-box}.mask-no-clip{-webkit-mask-clip:none;mask-clip:none}.mask-add{-webkit-mask-composite:source-over;mask-composite:add}.mask-subtract{-webkit-mask-composite:subtract;mask-composite:subtract}.mask-intersect{-webkit-mask-composite:source-in,xor;mask-composite:intersect}.mask-exclude{-webkit-mask-composite:xor;mask-composite:exclude}.mask-none{-webkit-mask-image:none;mask-image:none}.mask-alpha{mask-mode:alpha}.mask-luminance{mask-mode:luminance}.mask-match{mask-mode:match-source}.mask-origin-border{-webkit-mask-origin:border-box;mask-origin:border-box}.mask-origin-padding{-webkit-mask-origin:padding-box;mask-origin:padding-box}.mask-origin-content{-webkit-mask-origin:content-box;mask-origin:content-box}.mask-origin-fill{-webkit-mask-origin:fill-box;mask-origin:fill-box}.mask-origin-stroke{-webkit-mask-origin:stroke-box;mask-origin:stroke-box}.mask-origin-view{-webkit-mask-origin:view-box;mask-origin:view-box}.mask-top-left{-webkit-mask-position:top left;mask-position:top left}.mask-top{-webkit-mask-position:top;mask-position:top}.mask-top-right{-webkit-mask-position:top right;mask-position:top right}.mask-left{-webkit-mask-position:left;mask-position:left}.mask-center{-webkit-mask-position:center;mask-position:center}.mask-right{-webkit-mask-position:right;mask-position:right}.mask-bottom-left{-webkit-mask-position:bottom left;mask-position:bottom left}.mask-bottom{-webkit-mask-position:bottom;mask-position:bottom}.mask-bottom-right{-webkit-mask-position:bottom right;mask-position:bottom right}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.mask-repeat-x{-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.mask-repeat-y{-webkit-mask-repeat:repeat-y;mask-repeat:repeat-y}.mask-no-repeat{-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.mask-repeat-space{-webkit-mask-repeat:space;mask-repeat:space}.mask-repeat-round{-webkit-mask-repeat:round;mask-repeat:round}.mask-auto{-webkit-mask-size:auto;mask-size:auto}.mask-cover{-webkit-mask-size:cover;mask-size:cover}.mask-contain{-webkit-mask-size:contain;mask-size:contain}.mask-type-alpha{mask-type:alpha}.mask-type-luminance{mask-type:luminance}.filter-none{filter:none}.blur-xs{filter:blur(var(--blur-xs),4px)}.blur-sm{filter:blur(var(--blur-sm),8px)}.blur-md{filter:blur(var(--blur-md),12px)}.blur-lg{filter:blur(var(--blur-lg),16px)}.blur-xl{filter:blur(var(--blur-xl),24px)}.blur-2xl{filter:blur(var(--blur-2xl),40px)}.blur-3xl{filter:blur(var(--blur-3xl),64px)}.blur-none{filter:blur(0)}.brightness-50{filter:brightness(.5)}.brightness-75{filter:brightness(.75)}.brightness-100{filter:brightness(1)}.brightness-125{filter:brightness(1.25)}.brightness-150{filter:brightness(1.5)}.brightness-200{filter:brightness(2)}.contrast-50{filter:contrast(.5)}.contrast-75{filter:contrast(.75)}.contrast-100{filter:contrast(1)}.contrast-125{filter:contrast(1.25)}.contrast-150{filter:contrast(1.5)}.contrast-200{filter:contrast(2)}.drop-shadow-xs{filter:drop-shadow(var(--drop-shadow-xs, 0 1px 1px rgb(0 0 0 / .05)))}.drop-shadow-sm{filter:drop-shadow(var(--drop-shadow-sm, 0 1px 2px rgb(0 0 0 / .15)))}.drop-shadow-md{filter:drop-shadow(var(--drop-shadow-md, 0 3px 3px rgb(0 0 0 / .12)))}.drop-shadow-lg{filter:drop-shadow(var(--drop-shadow-lg, 0 4px 4px rgb(0 0 0 / .15)))}.drop-shadow-xl{filter:drop-shadow(var(--drop-shadow-xl, 0 9px 7px rgb(0 0 0 / .1)))}.drop-shadow-2xl{filter:drop-shadow(var(--drop-shadow-2xl, 0 25px 25px rgb(0 0 0 / .15)))}.drop-shadow-none{filter:drop-shadow(var(--drop-shadow-none, 0 0 #0000))}.grayscale{filter:grayscale(1)}.grayscale-0{filter:grayscale(0)}.grayscale-25{filter:grayscale(.25)}.grayscale-50{filter:grayscale(.5)}.grayscale-75{filter:grayscale(.75)}.grayscale-100{filter:grayscale(1)}.hue-rotate-0{filter:hue-rotate(0deg)}.hue-rotate-15{filter:hue-rotate(15deg)}.hue-rotate-30{filter:hue-rotate(30deg)}.hue-rotate-45{filter:hue-rotate(45deg)}.hue-rotate-60{filter:hue-rotate(60deg)}.hue-rotate-75{filter:hue-rotate(75deg)}.hue-rotate-90{filter:hue-rotate(90deg)}.hue-rotate-180{filter:hue-rotate(180deg)}.hue-rotate-270{filter:hue-rotate(270deg)}.hue-rotate-360{filter:hue-rotate(360deg)}.invert{filter:invert(1)}.invert-0{filter:invert(0)}.invert-25{filter:invert(.25)}.invert-50{filter:invert(.5)}.invert-75{filter:invert(.75)}.invert-100{filter:invert(1)}.saturate-0{filter:saturate(0)}.saturate-50{filter:saturate(.5)}.saturate-100{filter:saturate(1)}.saturate-150{filter:saturate(1.5)}.saturate-200{filter:saturate(2)}.sepia{filter:sepia(1)}.sepia-0{filter:sepia(0)}.sepia-50{filter:sepia(.5)}.sepia-100{filter:sepia(1)}.backdrop-filter-none{backdrop-filter:none}.backdrop-blur-xs{backdrop-filter:blur(var(--blur-xs, 4px))}.backdrop-blur-sm{backdrop-filter:blur(var(--blur-sm, 8px))}.backdrop-blur-md{backdrop-filter:blur(var(--blur-md, 12px))}.backdrop-blur-lg{backdrop-filter:blur(var(--blur-lg, 16px))}.backdrop-blur-xl{backdrop-filter:blur(var(--blur-xl, 24px))}.backdrop-blur-2xl{backdrop-filter:blur(var(--blur-2xl, 40px))}.backdrop-blur-3xl{backdrop-filter:blur(var(--blur-3xl, 64px))}.backdrop-blur-none{backdrop-filter:none}.backdrop-brightness-0{backdrop-filter:brightness(0)}.backdrop-brightness-50{backdrop-filter:brightness(.5)}.backdrop-brightness-100{backdrop-filter:brightness(1)}.backdrop-brightness-150{backdrop-filter:brightness(1.5)}.backdrop-brightness-200{backdrop-filter:brightness(2)}.backdrop-contrast-0{backdrop-filter:contrast(0)}.backdrop-contrast-50{backdrop-filter:contrast(.5)}.backdrop-contrast-100{backdrop-filter:contrast(1)}.backdrop-contrast-150{backdrop-filter:contrast(1.5)}.backdrop-contrast-200{backdrop-filter:contrast(2)}.backdrop-grayscale{backdrop-filter:grayscale(1)}.backdrop-grayscale-0{backdrop-filter:grayscale(0)}.backdrop-grayscale-25{backdrop-filter:grayscale(.25)}.backdrop-grayscale-50{backdrop-filter:grayscale(.5)}.backdrop-grayscale-75{backdrop-filter:grayscale(.75)}.backdrop-grayscale-100{backdrop-filter:grayscale(1)}.backdrop-hue-rotate-0{backdrop-filter:hue-rotate(0deg)}.backdrop-hue-rotate-15{backdrop-filter:hue-rotate(15deg)}.backdrop-hue-rotate-30{backdrop-filter:hue-rotate(30deg)}.backdrop-hue-rotate-45{backdrop-filter:hue-rotate(45deg)}.backdrop-hue-rotate-60{backdrop-filter:hue-rotate(60deg)}.backdrop-hue-rotate-75{backdrop-filter:hue-rotate(75deg)}.backdrop-hue-rotate-90{backdrop-filter:hue-rotate(90deg)}.backdrop-hue-rotate-180{backdrop-filter:hue-rotate(180deg)}.backdrop-hue-rotate-270{backdrop-filter:hue-rotate(270deg)}.backdrop-hue-rotate-360{backdrop-filter:hue-rotate(360deg)}.backdrop-invert{backdrop-filter:invert(1)}.backdrop-invert-0{backdrop-filter:invert(0)}.backdrop-invert-25{backdrop-filter:invert(.25)}.backdrop-invert-50{backdrop-filter:invert(.5)}.backdrop-invert-75{backdrop-filter:invert(.75)}.backdrop-invert-100{backdrop-filter:invert(1)}.backdrop-opacity-0{backdrop-filter:opacity(0)}.backdrop-opacity-25{backdrop-filter:opacity(.25)}.backdrop-opacity-50{backdrop-filter:opacity(.5)}.backdrop-opacity-75{backdrop-filter:opacity(.75)}.backdrop-opacity-100{backdrop-filter:opacity(1)}.backdrop-saturate-0{backdrop-filter:saturate(0)}.backdrop-saturate-50{backdrop-filter:saturate(.5)}.backdrop-saturate-100{backdrop-filter:saturate(1)}.backdrop-saturate-150{backdrop-filter:saturate(1.5)}.backdrop-saturate-200{backdrop-filter:saturate(2)}.backdrop-sepia{backdrop-filter:sepia(1)}.backdrop-sepia-0{backdrop-filter:sepia(0)}.backdrop-sepia-50{backdrop-filter:sepia(.5)}.backdrop-sepia-100{backdrop-filter:sepia(1)}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.border-spacing-0{border-spacing:0}.border-spacing-1{border-spacing:var(--space)}.border-spacing-2{border-spacing:calc(var(--space) * 2)}.border-spacing-3{border-spacing:calc(var(--space) * 3)}.border-spacing-4{border-spacing:calc(var(--space) * 4)}.border-spacing-5{border-spacing:calc(var(--space) * 5)}.table-auto{table-layout:auto}.table-fixed{table-layout:fixed}.caption-top{caption-side:top}.caption-bottom{caption-side:bottom}.transition-none{transition-property:none}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition{transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,text-decoration-color,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-normal{transition-behavior:normal}.transition-discrete{transition-behavior:allow-discrete}.duration-initial{transition-duration:initial}.duration-fast{transition-duration:.35s}.duration-normal{transition-duration:.45s}.duration-slow{transition-duration:.75s}.duration-75{transition-duration:75ms}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-400{transition-duration:.4s}.duration-500{transition-duration:.5s}.duration-600{transition-duration:.6s}.duration-700{transition-duration:.7s}.duration-800{transition-duration:.8s}.duration-900{transition-duration:.9s}.duration-1000{transition-duration:1s}.ease-linear{transition-timing-function:linear}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-initial{transition-timing-function:initial}.delay-75{transition-delay:75ms}.delay-100{transition-delay:.1s}.delay-150{transition-delay:.15s}.delay-200{transition-delay:.2s}.delay-300{transition-delay:.3s}.delay-400{transition-delay:.4s}.delay-500{transition-delay:.5s}.delay-600{transition-delay:.6s}.delay-700{transition-delay:.7s}.delay-800{transition-delay:.8s}.delay-900{transition-delay:.9s}.delay-1000{transition-delay:1s}.backface-visible{backface-visibility:visible}.backface-hidden{backface-visibility:hidden}.perspective-none{perspective:none}.perspective-dramatic{perspective:var(--perspective-dramatic, 100px)}.perspective-near{perspective:var(--perspective-near, 300px)}.perspective-normal{perspective:var(--perspective-normal, 500px)}.perspective-midrange{perspective:var(--perspective-midrange, 800px)}.perspective-distant{perspective:var(--perspective-distant, 1200px)}.perspective-origin-center{perspective-origin:center}.perspective-origin-top{perspective-origin:top}.perspective-origin-top-right{perspective-origin:top right}.perspective-origin-right{perspective-origin:right}.perspective-origin-bottom{perspective-origin:bottom}.perspective-origin-bottom-right{perspective-origin:bottom right}.perspective-origin-left{perspective-origin:left}.perspective-origin-bottom-left{perspective-origin:bottom left}.perspective-origin-top-left{perspective-origin:top left}.rotate-none{transform:rotate(0)}.rotate45{transform:rotate(45deg)}.rotate90{transform:rotate(90deg)}.rotate180{transform:rotate(180deg)}.rotate-270{transform:rotate(270deg)}.rotate-360{transform:rotate(360deg)}.scale-none{transform:scale(0)}.scale-25{transform:scale(25%)}.scale-50{transform:scale(.5)}.scale-75{transform:scale(75%)}.scale-100{transform:scale(1)}.scale-125{transform:scale(125%)}.scale-150{transform:scale(1.5)}.scale-175{transform:scale(175%)}.scale-200{transform:scale(2)}.scale-x-25{transform:scaleX(25%)}.scale-x-50{transform:scaleX(.5)}.scale-x-75{transform:scaleX(75%)}.scale-x-100{transform:scaleX(1)}.scale-x-125{transform:scaleX(125%)}.scale-x-150{transform:scaleX(1.5)}.scale-x-175{transform:scaleX(175%)}.scale-x-200{transform:scaleX(2)}.scale-y-25{transform:scaleY(25%)}.scale-y-50{transform:scaleY(.5)}.scale-y-75{transform:scaleY(75%)}.scale-y-100{transform:scaleY(1)}.scale-y-125{transform:scaleY(125%)}.scale-y-150{transform:scaleY(1.5)}.scale-y-175{transform:scaleY(175%)}.scale-y-200{transform:scaleY(2)}.skew-x-0{transform:skew(0)}.skew-x-2{transform:skew(2deg)}.skew-x-4{transform:skew(4deg)}.skew-x-6{transform:skew(6deg)}.skew-x-8{transform:skew(8deg)}.skew-x-12{transform:skew(12deg)}.skew-y-0{transform:skewY(0)}.skew-y-2{transform:skewY(2deg)}.skew-y-4{transform:skewY(4deg)}.skew-y-6{transform:skewY(6deg)}.skew-y-8{transform:skewY(8deg)}.skew-y-10{transform:skewY(10deg)}.skew-y-12{transform:skewY(12deg)}.transform-none{transform:none}.origin-center{transform-origin:center}.origin-top{transform-origin:top}.origin-top-right{transform-origin:top right}.origin-right{transform-origin:right}.origin-bottom{transform-origin:bottom}.origin-bottom-right{transform-origin:bottom right}.origin-left{transform-origin:left}.origin-bottom-left{transform-origin:bottom left}.origin-top-left{transform-origin:top left}.transform-3d{transform-style:preserve-3d}.transform-flat{transform-style:flat}.translate-none{transform:translate(0)}.translate-full{transform:translate(100%,100%)}.-translate-full{transform:translate(-100%,-100%)}.translate-px{transform:translate(1px,1px)}.-translate-px{transform:translate(-1px,-1px)}.translate-x-none{transform:translate(0)}.translate-x-px{transform:translate(1px)}.-translate-x-px{transform:translate(-1px)}.translate-x-1\/2{transform:translate(50%)}.translate-x-1\/3{transform:translate(33.333333%)}.translate-x-2\/3{transform:translate(66.666667%)}.translate-x-1\/4{transform:translate(25%)}.translate-x-3\/4{transform:translate(75%)}.translate-x-1\/5{transform:translate(20%)}.translate-x-2\/5{transform:translate(40%)}.translate-x-3\/5{transform:translate(60%)}.translate-x-4\/5{transform:translate(80%)}.translate-x-1\/6{transform:translate(16.666667%)}.translate-x-5\/6{transform:translate(83.333333%)}.translate-x-1\/12{transform:translate(8.333333%)}.translate-x-5\/12{transform:translate(41.666667%)}.translate-x-7\/12{transform:translate(58.333333%)}.translate-x-11\/12{transform:translate(91.666667%)}.translate-x-full{transform:translate(100%)}.translate-y-none{transform:translateY(0)}.translate-y-px{transform:translateY(1px)}.-translate-y-px{transform:translateY(-1px)}.translate-y-1\/2{transform:translateY(50%)}.translate-y-1\/3{transform:translateY(33.333333%)}.translate-y-2\/3{transform:translateY(66.666667%)}.translate-y-1\/4{transform:translateY(25%)}.translate-y-3\/4{transform:translateY(75%)}.translate-y-1\/5{transform:translateY(20%)}.translate-y-2\/5{transform:translateY(40%)}.translate-y-3\/5{transform:translateY(60%)}.translate-y-4\/5{transform:translateY(80%)}.translate-y-1\/6{transform:translateY(16.666667%)}.translate-y-5\/6{transform:translateY(83.333333%)}.translate-y-1\/12{transform:translateY(8.333333%)}.translate-y-5\/12{transform:translateY(41.666667%)}.translate-y-7\/12{transform:translateY(58.333333%)}.translate-y-11\/12{transform:translateY(91.666667%)}.translate-y-full{transform:translateY(100%)}.translate-z-none{transform:translateZ(0)}.translate-z-px{transform:translateZ(1px)}.-translate-z-px{transform:translateZ(-1px)}.translate-z-1\/2{transform:translateZ(50%)}.translate-z-1\/3{transform:translateZ(33.333333%)}.translate-z-2\/3{transform:translateZ(66.666667%)}.translate-z-1\/4{transform:translateZ(25%)}.translate-z-3\/4{transform:translateZ(75%)}.translate-z-1\/5{transform:translateZ(20%)}.translate-z-2\/5{transform:translateZ(40%)}.translate-z-3\/5{transform:translateZ(60%)}.translate-z-4\/5{transform:translateZ(80%)}.translate-z-1\/6{transform:translateZ(16.666667%)}.translate-z-5\/6{transform:translateZ(83.333333%)}.translate-z-1\/12{transform:translateZ(8.333333%)}.translate-z-5\/12{transform:translateZ(41.666667%)}.translate-z-7\/12{transform:translateZ(58.333333%)}.translate-z-11\/12{transform:translateZ(91.666667%)}.translate-z-full{transform:translateZ(100%)}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.appearance-auto{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.caret-inherit{caret-color:inherit}.caret-current{caret-color:currentColor}.caret-transparent{caret-color:transparent}.caret-black{caret-color:#000}.caret-white{caret-color:#fff}.caret-primary{caret-color:var(--primary)}.caret-accent{caret-color:var(--accent)}.scheme-normal{color-scheme:normal}.scheme-dark{color-scheme:dark}.scheme-light{color-scheme:light}.scheme-light-dark{color-scheme:light dark}.scheme-only-dark{color-scheme:only dark}.scheme-only-light{color-scheme:only light}.cursor-auto{cursor:auto}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.cursor-text{cursor:text}.cursor-move{cursor:move}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-none{cursor:none}.cursor-context-menu{cursor:context-menu}.cursor-progress{cursor:progress}.cursor-cell{cursor:cell}.cursor-crosshair{cursor:crosshair}.cursor-vertical-text{cursor:vertical-text}.cursor-alias{cursor:alias}.cursor-copy{cursor:copy}.cursor-no-drop{cursor:no-drop}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-all-scroll{cursor:all-scroll}.cursor-col-resize{cursor:col-resize}.cursor-row-resize{cursor:row-resize}.cursor-n-resize{cursor:n-resize}.cursor-e-resize{cursor:e-resize}.cursor-s-resize{cursor:s-resize}.cursor-w-resize{cursor:w-resize}.cursor-ne-resize{cursor:ne-resize}.cursor-nw-resize{cursor:nw-resize}.cursor-se-resize{cursor:se-resize}.cursor-sw-resize{cursor:sw-resize}.cursor-ew-resize{cursor:ew-resize}.cursor-ns-resize{cursor:ns-resize}.cursor-nesw-resize{cursor:nesw-resize}.cursor-nwse-resize{cursor:nwse-resize}.cursor-zoom-in{cursor:zoom-in}.cursor-zoom-out{cursor:zoom-out}.field-sizing-fixed{field-sizing:fixed}.field-sizing-content{field-sizing:content}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.resize-none{resize:none}.resize{resize:both}.resize-x{resize:horizontal}.resize-y{resize:vertical}.scroll-auto{scroll-behavior:auto}.scroll-smooth{scroll-behavior:smooth}.snap-start{scroll-snap-align:start}.snap-end{scroll-snap-align:end}.snap-center{scroll-snap-align:center}.snap-align-none{scroll-snap-align:none}.snap-normal{scroll-snap-stop:normal}.snap-always{scroll-snap-stop:always}.snap-none{scroll-snap-type:none}.touch-auto{touch-action:auto}.touch-none{touch-action:none}.touch-pan-x{touch-action:pan-x}.touch-pan-left{touch-action:pan-left}.touch-pan-right{touch-action:pan-right}.touch-pan-y{touch-action:pan-y}.touch-pan-up{touch-action:pan-up}.touch-pan-down{touch-action:pan-down}.touch-pinch-zoom{touch-action:pinch-zoom}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.select-auto{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.will-change-auto{will-change:auto}.will-change-scroll{will-change:scroll-position}.will-change-contents{will-change:contents}.will-change-transform{will-change:transform}.fill-none{fill:none}.fill-inherit{fill:inherit}.fill-current{fill:currentColor}.fill-transparent{fill:transparent}.fill-black{fill:#000}.fill-white{fill:#fff}.fill-primary{fill:var(--primary)}.fill-accent{fill:var(--accent)}.fill-foreground{fill:var(--foreground)}.fill-background{fill:var(--background)}.stroke-none{stroke:none}.stroke-inherit{stroke:inherit}.stroke-current{stroke:currentColor}.stroke-transparent{stroke:transparent}.stroke-black{stroke:#000}.stroke-white{stroke:#fff}.stroke-primary{stroke:var(--primary)}.stroke-accent{stroke:var(--accent)}.stroke-0{stroke-width:0px}.stroke-1{stroke-width:1px}.stroke-2{stroke-width:2px}.stroke-3{stroke-width:3px}.stroke-4{stroke-width:4px}.stroke-5{stroke-width:5px}.forced-color-adjust-auto{forced-color-adjust:auto}.forced-color-adjust-none{forced-color-adjust:none}.print-only{display:none}@media print{.print-hide{display:none}.print-only{display:block}pre.ql-syntax{overflow:auto}pre.ql-syntax .hljs-ln .hljs-ln-numbers{color:gray}pre.ql-syntax .hljs-ln .hljs-ln-code{color:#333;white-space:pre-wrap}pre.ql-syntax .hljs-ln .hljs-ln-code *{color:#333}pre.ql-syntax .jl-highlight-copy{display:none}}}@layer status{.is-circle{border-radius:50%}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var t=Object.defineProperty,e=(e,i,s)=>((e,i,s)=>i in e?t(e,i,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[i]=s)(e,"symbol"!=typeof i?i+"":i,s);const i=/* @__PURE__ */new Map,s=/* @__PURE__ */new Map;let n={},o=null;const r=/* @__PURE__ */new WeakMap,a=/* @__PURE__ */new WeakMap;function h(t,e){let i=r.get(t);i||(i=/* @__PURE__ */new Map,r.set(t,i));let s=i.get(e);s||(s=/* @__PURE__ */new Set,i.set(e,s)),o&&(s.add(o),o.deps.push(s))}function l(t,e){const i=r.get(t);if(!i)return;const s=i.get(e);if(s){const t=new Set(s);for(const e of t)e.scheduler?e.scheduler():e()}}function c(t){if("object"!=typeof t||null===t)return t;if(a.has(t))return a.get(t);const e=new Proxy(t,{get(t,e,i){const s=Reflect.get(t,e,i);return h(t,e),"object"==typeof s&&null!==s?c(s):s},set(t,e,i,s){const n=t[e],o=Reflect.set(t,e,i,s);return n!==i&&l(t,e),o}});return a.set(t,e),e}function d(t){const e={i:t,get value(){return h(e,"value"),this.i},set value(t){t!==this.i&&(this.i=t,l(e,"value"))}};return e}function u(t,e={}){const i=(...e)=>{if(o!==i){!function(t){for(const e of t.deps)e.delete(t);t.deps.length=0}(i),o=i;try{return t(...e)}finally{o=null}}};return i.deps=[],i.scheduler=e.scheduler,e.lazy||i(),i}function m(t){let e,i=!0;const s={o:!0,get value(){return h(s,"value"),i&&(e=t(),i=!1),e}};return u(()=>{t()},{scheduler:()=>{i||(i=!0,l(s,"value"))}}),s}const f=t=>null===t?"null":t instanceof HTMLElement?"HTMLElement":Array.isArray(t)?"array":typeof t,p=t=>"function"==typeof t&&null!==t.prototype&&t.prototype.constructor===t,b=(t,e,i,s=[])=>{const n=Array.isArray(i)?i:[i],o=Array.isArray(s)?s:s?[s]:[],r=f(e);if(!n.some(t=>t===r)){const e=n.join(", ");throw new Error(`Validator: ${t} expects ${e}, but got ${r}.`)}for(const a of o){let i,s;if("function"==typeof a)i=a,s="does not satisfy the required condition.";else{if(!a||"function"!=typeof a.test)throw new Error("Validator: Condition must be a function or { test, message }.");i=a.test,s=a.message||"condition failed."}if(!i(e))throw new Error(`Validator: ${t} ${s}`)}},w=t=>"function"==typeof t&&/^class\s/.test(Function.prototype.toString.call(t)),v=(t,e=[],n="",o=!1,r=null)=>{if(!p(t))throw new Error("First argument expects a class/constructor function.");if(!Array.isArray(e))throw new Error("Second argument must be an array of arguments.");if("string"!=typeof n)throw new Error("Third argument expects a string.");if("boolean"!=typeof o)throw new Error("Fourth argument expects a boolean.");if("number"!=typeof r&&null!==r)throw new Error("Fifth argument expects a number or null.");const a=""===n.trim()?j():n;if(i.has(a)&&!o)return i.get(a).proxy;const h=new t(...e),l=new Proxy(h,{get:(t,e,i)=>(r&&function(t,e){s.has(t)&&clearTimeout(s.get(t));const i=setTimeout(()=>{g(t)},e);s.set(t,i)}(a,r),Reflect.get(t,e,i)),set:(t,e,i,s)=>Reflect.set(t,e,i,s)});return i.set(a,{instance:h,proxy:l}),l};function g(t){if(i.has(t)){const{instance:s}=i.get(t);if("function"==typeof s.destroy)try{s.destroy()}catch(e){throw new Error(`release(): destroy() failed on instance with key "${t}".`)}i.delete(t)}s.has(t)&&(clearTimeout(s.get(t)),s.delete(t))}function y(){for(const{instance:e}of i.values())if("function"==typeof e.destroy)try{e.destroy()}catch(t){}i.clear();for(const e of s.values())clearTimeout(e);s.clear()}const x={instances:/* @__PURE__ */new Map,get(t,e){return this.instances.has(t)||this.instances.set(t,e()),this.instances.get(t)},destroy(t){if(this.instances.has(t)){const e=this.instances.get(t);e.destroy&&e.destroy(),this.instances.delete(t)}},destroyAll(){for(const t of this.instances.values())t.destroy&&t.destroy();this.instances.clear()}};function $(t){n=t}function k(){return n}function _(){const t=document.documentElement.getAttribute("lang");if(t){switch(t.substring(0,2).toLowerCase()){case"en":default:return"en";case"zh":return"zh"}}return E()}function E(){return"undefined"==typeof navigator||navigator.language.toLowerCase().startsWith("en")?"en":"zh"}function C(t,e=n,i=null){var s;return null===i&&(i=_()),(null==(s=e[i])?void 0:s[t])||t}function T(){if("function"==typeof crypto.randomUUID)return crypto.randomUUID();const t=new Uint8Array(16);if("function"!=typeof crypto.getRandomValues)throw new Error("Your browser is too old to support secure login.");crypto.getRandomValues(t),t[6]=15&t[6]|64,t[8]=63&t[8]|128;const e=Array.from(t).map(t=>t.toString(16).padStart(2,"0")).join("");return[e.slice(0,8),e.slice(8,12),e.slice(12,16),e.slice(16,20),e.slice(20,32)].join("-")}function j(t=8){if(!Number.isInteger(t)||t<1||t>32)throw new Error("Length must be an integer between 1 and 32");const e=new Uint8Array(t);crypto.getRandomValues(e);let i="";for(let s=0;s<t;s++)i+="abcdefghijkmnpqrstuvwxyz23456789"[31&e[s]];return i}function S(t){const e={"&":"&","<":"<",">":">",'"':""","'":"'"};return String(t).replace(/[&<>"']/g,t=>e[t])}function M(){if("undefined"==typeof navigator)return!1;if(navigator.userAgentData)return navigator.userAgentData.mobile;const t=navigator.userAgent;return/android|iphone|ipad|ipod|blackberry|iemobile|opera mini|mobile/i.test(t)}function A(t){const e=`; ${document.cookie}`.split(`; ${t}=`);return 2===e.length?e.pop().split(";").shift():null}function N(t,e,i=86400){const s=new Date(Date.now()+1e3*i).toUTCString();return document.cookie=[`${t}=${e}`,`expires=${s}`,"path=/","sameSite=strict"].join("; "),A(t)===e}function H(t){return document.cookie=`${t}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`,!A(t)}async function L(t,e){return(await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})).json()}async function I(t){return"undefined"==typeof window||"undefined"==typeof document?Promise.resolve(!1):("string"!=typeof t&&(t=String(t)),navigator.clipboard&&"function"==typeof navigator.clipboard.writeText?navigator.clipboard.writeText(t).then(()=>!0).catch(()=>D(t)):Promise.resolve(D(t)))}function D(t){let e=null;try{e=document.createElement("textarea"),e.value=t,e.setAttribute("readonly",""),e.style.position="absolute",e.style.left="-9999px",e.style.opacity="0",document.body.appendChild(e),e.select(),e.setSelectionRange(0,t.length);return!!document.execCommand("copy")}catch(i){return!1}finally{e&&e.parentNode&&e.parentNode.removeChild(e)}}function O(t,e,i,s){if(!t)throw new Error("on(): element is required");t.addEventListener(e,i,s)}function F(t,e,i,s){if(!t)throw new Error("off(): element is required");t.removeEventListener(e,i,s)}function P(t,e=document){return e.querySelector(t)}function q(t){return t instanceof Element?t:"string"==typeof t?P(t):null}function R(t,e={}){if("undefined"==typeof document)throw new Error("newEl() can only be used in browser environment.");if(!1===e.dependency||"function"==typeof e.dependency&&!e.dependency())return"";const{is:i,className:s,id:n,attrs:o,style:r,events:a,text:h,html:l,children:c}=e,d=i?document.createElement(t,{is:i}):document.createElement(t);if(s&&(d.className=s),n&&(d.id=n),o&&"object"==typeof o)for(const[u,m]of Object.entries(o))null!=m&&d.setAttribute(u,String(m));if(r&&"object"==typeof r)for(const[u,m]of Object.entries(r))null!=m&&(d.style[u]=m);if(a&&"object"==typeof a)for(const[u,m]of Object.entries(a))"function"==typeof m&&O(d,u,m);return void 0!==c?Array.isArray(c)?d.append(...c):"string"==typeof c?d.innerHTML=c:c instanceof Node&&d.appendChild(c):void 0!==l?d.innerHTML=l:void 0!==h&&(d.textContent=h),d}const z="undefined"!=typeof window?`${window.location.origin}/wp-json/`:"";function B(t="info",...e){"undefined"!=typeof window&&console[t](...e)}const V=class t{constructor(){this.bindings=/* @__PURE__ */new Map,this.instances=/* @__PURE__ */new Map,this.serviceData=/* @__PURE__ */new Map}static run(){return t.h||(t.h=new t),t.h}bind(t,e,i={}){var s,n,o;if("function"==typeof e){return/^[A-Z]/.test(e.name)||e.prototype&&Object.getOwnPropertyNames(e.prototype).length>1?this.bindClass(t,e,null!=(s=i.singleton)&&s,null!=(n=i.deps)?n:[]):this.bindFactory(t,e,null!=(o=i.singleton)&&o)}return this.bindValue(t,e)}bindClass(t,e,i=!1,s=[]){if("function"!=typeof e)throw new TypeError("bindClass expects a constructor, got "+typeof e);return this.bindings.set(t,{type:"class",Class:e,singleton:i,deps:Array.isArray(s)?s:[]}),this}bindValue(t,e){return this.bindings.set(t,{type:"value",value:e}),this.instances.set(t,e),this}bindFactory(t,e,i=!1){if("function"!=typeof e)throw new TypeError("bindFactory expects a function, got "+typeof e);return this.bindings.set(t,{type:"factory",factory:e,singleton:i}),this}get(t,...e){const i=this.bindings.get(t);if(!i)throw new Error(`Service "${t}" is not bound in the container.`);if("value"===i.type)return i.value;if("factory"===i.type){const s=i.singleton&&0===e.length;if(s&&this.instances.has(t))return this.instances.get(t);const n=i.factory(this,...e);return s&&this.instances.set(t,n),n}if("class"===i.type){const s=i.singleton&&0===e.length;if(s&&this.instances.has(t))return this.instances.get(t);const n=[];for(const e of i.deps){if(!this.bindings.has(e))throw new Error(`Dependency "${e}" required by "${t}" is not bound in the container.`);n.push(this.get(e))}const o=[...n,...e],r=new i.Class(...o);return s&&this.instances.set(t,r),r}throw new Error(`Unknown binding type for service "${t}".`)}has(t){return this.bindings.has(t)}reset(){this.bindings.clear(),this.instances.clear()}setData(t,e,i){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);this.serviceData.get(t).set(e,i)}getData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);return this.serviceData.get(t).get(e)}hasData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);return this.serviceData.get(t).has(e)}removeData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);this.serviceData.get(t).delete(e)}};e(V,"_instance",null),e(V,"PARAM",/* @__PURE__ */Symbol("PARAM"));let Z=V;class U{constructor(t="localStorage"){this.driver=this.l(t)}l(t){switch(t){case"cookie":return new J;case"localStorage":return"undefined"!=typeof localStorage?new X:(console.warn("localStorage not supported, falling back to cookie."),new J);case"indexedDB":return"undefined"!=typeof indexedDB?new Y:(console.warn("indexedDB not supported, falling back to localStorage."),this.l("localStorage"));default:throw new Error(`Unsupported driver: ${t}`)}}set(t,e,i){this.driver.setItem(t,e,i)}get(t){return this.driver.getItem(t)}remove(t){this.driver.removeItem(t)}clear(){this.driver.clear()}has(t){return this.driver.hasItem(t)}}class J{constructor(){this.options={}}setOptions(t){this.options={...this.options,...t}}setItem(t,e,i){let s=`${encodeURIComponent(t)}=${encodeURIComponent(e)}`;if(i){const t=/* @__PURE__ */new Date;t.setTime(t.getTime()+1e3*i),s+=`; expires=${t.toUTCString()}`}for(const[n,o]of Object.entries(this.options))!0===o?s+=`; ${n}`:!1!==o&&null!=o&&(s+=`; ${n}=${o}`);document.cookie=s}getItem(t){const e=document.cookie.split(";");for(const i of e){const[e,s]=i.trim().split("=");if(e===encodeURIComponent(t))return decodeURIComponent(s)}return null}removeItem(t){this.setItem(t,"",-1)}clear(){const t=document.cookie.split(";");for(const e of t){const t=e.split("=")[0].trim();this.removeItem(decodeURIComponent(t))}}hasItem(t){return null!==this.getItem(t)}}class X{setItem(t,e){localStorage.setItem(t,JSON.stringify(e))}getItem(t){const e=localStorage.getItem(t);try{return JSON.parse(e)}catch(i){return e}}removeItem(t){localStorage.removeItem(t)}clear(){localStorage.clear()}hasItem(t){return null!==localStorage.getItem(t)}}class Y{constructor(){this.options={dbName:"StoreDB",version:1,storeName:"data"},this.db=null,this.u()}setOptions(t){this.options={...this.options,...t},this.db&&(this.db.close(),this.u())}u(){const{dbName:t,version:e,storeName:i}=this.options,s=indexedDB.open(t,e);s.onupgradeneeded=t=>{this.db=t.target.result,this.db.objectStoreNames.contains(i)||this.db.createObjectStore(i,{keyPath:"key"})},s.onsuccess=t=>{this.db=t.target.result},s.onerror=t=>{console.error("Failed to open IndexedDB:",t.target.error)}}m(t,e){if(!this.db)throw new Error("IndexedDB is not initialized.");const{storeName:i}=this.options;e(this.db.transaction([i],t).objectStore(i))}setItem(t,e,i){const s={key:t,value:e,expire:i?Date.now()+1e3*i:null};this.m("readwrite",t=>{t.put(s)})}getItem(t){return new Promise((e,i)=>{this.m("readonly",s=>{const n=s.get(t);n.onsuccess=()=>{const t=n.result;t&&(!t.expire||t.expire>Date.now())?e(t.value):e(null)},n.onerror=()=>{i(new Error("Failed to get item from IndexedDB."))}})})}removeItem(t){this.m("readwrite",e=>{e.delete(t)})}clear(){this.m("readwrite",t=>{t.clear()})}hasItem(t){return new Promise((e,i)=>{this.m("readonly",s=>{const n=s.get(t);n.onsuccess=()=>{e(!!n.result)},n.onerror=()=>{i(new Error("Failed to check item existence in IndexedDB."))}})})}}let G=null;class W{constructor(t){this.value=t,this.observers=/* @__PURE__ */new Set}read(){return G&&(this.observers.add(G),G.deps.add(this)),this.value}write(t){if(this.value!==t){this.value=t;for(const t of this.observers)t.schedule()}}}class K{constructor(t){this.fn=t,this.deps=/* @__PURE__ */new Set,this.scheduled=!1,this.schedule=()=>{this.scheduled||(this.scheduled=!0,(t=>{Promise.resolve().then(t)})(()=>{this.scheduled=!1,this.execute()}))},this.execute()}execute(){for(const e of this.deps)e.observers.delete(this);this.deps.clear();const t=G;G=this;try{this.fn()}finally{G=t}}}function Q(t){const e=new W(t);return[()=>e.read(),t=>e.write("function"==typeof t?t(e.value):t)]}function tt(t){new K(t)}function et(t){let e;const[i,s]=Q(void 0);return tt(()=>{e=t(),s(e)}),i}const it=class t{constructor(e){this.options=Object.assign({title:"Tip",content:"",position:"center",confirmText:"Confirm",cancelText:"Cancel",showCancel:!0,showClose:!0,fullscreen:!1,onShow:null,onShown:null,onHide:null,onHidden:null,onConfirm:null,onSubmit:null,fields:null,header:!0,footer:!0,style:null,id:null,escClose:!1,bgClose:!1,lazy:!1},e),this.p(this.options),this.u(this.options),t.instances.add(this)}u(t){this.isVisible=!1,this.fields=null,this.v={},this.root=null,this.$=null,this._=t.fields?JSON.parse(JSON.stringify(t.fields)):[],t.lazy||this.C(t)}get modal(){return this.root?P(".j-modal",this.root):null}get form(){return this.modal?P(".j-form",this.modal):null}get confirmBtn(){return this.modal?P(".modal-confirm",this.modal):null}get cancelBtn(){return this.modal?P(".modal-cancel",this.modal):null}C(t){if(this.root)return;const{header:e,id:i,title:s,position:n}=t,o=e?"aria-labelledby":"aria-label",r=e?`${i}_title`:s||"Modal",a=R("div",{className:`j-popup-layout is-${n}`,attrs:{role:"dialog","aria-modal":"true",[o]:r},children:[this.T(t)]});return this.root=a,a}T(t){const{fullscreen:e,style:i,id:s}=t;return R("div",{className:e?"j-modal is-fullscreen":"j-modal",id:s,attrs:{role:"document",style:i||null},children:[this.j(t),this.S(t),this.M(t)]})}j(t){const{id:e,title:i,header:s,showClose:n}=t;return R("div",{className:"modal-header",html:`<div class="modal-title" id="${e}_title">${i}</div>${n?'<icon class="modal-close" data-action="close" role="button" aria-label="close" tabindex="0">×</icon>':""}`,dependency:()=>s})}M(t){const{showCancel:e,cancelText:i,confirmText:s,footer:n}=t;return R("div",{className:"modal-footer",html:`${e?`<button type="button" class="j-button is-ghost modal-cancel" data-action="close">${i}</button>`:""}<button type="button" class="j-button is-primary modal-confirm" data-action="confirm">${s}</button>`,dependency:()=>n})}S(t){const{fields:e,content:i}=t;return R("div",{className:"modal-body",html:`${e?`<div class="modal-form-container">${this.A(t).outerHTML}</div>`:i}`})}A(t){return R("form",{className:"j-form is-vertical is-item-vertical",children:[...this.N(t.fields)]})}N(t){const e=[];for(const i of t){const t=R("div",{className:"form-item",html:this.H(i)});e.push(t)}return e}H(t){switch(t.type){case"textarea":return this.L(t);case"select":return this.I(t);default:return this.D(t)}}D(t){let e="";const{type:i,required:s,id:n,label:o,name:r,placeholder:a,value:h,disabled:l}=t,c=n||j();switch(i){case"password":e="current-password";break;case"email":e="email";break;default:e="on"}return`<label class="item-label ${s?"is-required":""}" for="${c}">${o}</label><div class="form-control"><input type="${i||"text"}" class="j-input" name="${r}" id="${c}" placeholder="${a||""}" value="${h||""}" ${s?"required":""} ${l?"disabled":""} autocomplete="${e}"/></div>`}L(t){const{required:e,id:i,label:s,name:n,placeholder:o,value:r,disabled:a}=t,h=i||j();return`<label class="item-label ${e?"is-required":""}" for="${h}">${s}</label><div class="form-control"><textarea class="j-textarea" name="${n}" id="${h}" placeholder="${o||""}" ${e?"required":""} ${a?"disabled":""}>${r||""}</textarea></div>`}I(t){let e="";const{options:i,required:s,id:n,label:o,name:r,disabled:a}=t,h=n||j();if(i)for(const l of i)e+=`<option value="${l.value}" ${l.selected?"selected":""} ${l.disabled?"disabled":""}>${l.text}</option>`;return`<label class="item-label ${s?"is-required":""}" for="${h}">${o}</label><div class="form-control"><select class="j-select" name="${r}" id="${h}" autocomplete="off" ${s?"required":""} ${a?"disabled":""}>${e}</select></div>`}p(t){const{title:e,content:i,position:s,confirmText:n,cancelText:o,showCancel:r,showClose:a,fullscreen:h,header:l,footer:c,escClose:d,bgClose:u,style:m,id:f,onShow:p,onShown:w,onHide:v,onHidden:g,onConfirm:y,onSubmit:x,fields:$,lazy:k}=t;b("title",e,"string"),b("content",i,["string","HTMLElement"]),b("position",s,"string"),b("confirmText",n,"string"),b("cancelText",o,"string"),b("showCancel",r,"boolean"),b("showClose",a,"boolean"),b("fullscreen",h,"boolean"),b("header",l,"boolean"),b("footer",c,"boolean"),b("escClose",d,"boolean"),b("bgClose",u,"boolean"),b("style",m,["string","null"]),b("id",f,["string","null"]),b("onShow",p,["function","null"]),b("onShown",w,["function","null"]),b("onHide",v,["function","null"]),b("onHidden",g,["function","null"]),b("onConfirm",y,["function","null"]),b("onSubmit",x,["function","null"]),b("fields",$,["array","null"]),b("lazy",k,"boolean"),f&&f.trim()||(this.options.id=j())}O(t){if(!(t instanceof Element))return;const e=P(".modal-close",t);e&&(e.style.width=`${e.clientHeight}px`,e.style.transform=`translateX(${e.clientHeight/3}px)`)}F(t,e){this.P(t,e),this.q(t,e),this.R(e)}P(t,e){t&&e.bgClose&&(this.v.bg=e=>{e.target===t&&this.hide()},O(t,"click",this.v.bg))}q(t,e){t&&e.escClose&&(this.v.esc=t=>{"Escape"===t.key&&this.isVisible&&this.hide()},O(document,"keydown",this.v.esc))}R(t){this.v.inside=e=>{const i=e.target.dataset.action;"confirm"===i||"submit"===i?this.B(t):("cancel"===i||"close"===i||e.target.classList.contains("modal-close"))&&this.hide()},this.modal.addEventListener("click",this.v.inside)}B(t){if(this.form&&t.fields.length>0){this.form.dispatchEvent(new Event("submit"));const e=new FormData(this.form),i={};for(const[t,s]of e.entries())i[t]=s;this.fields=i,null!==this.$&&"object"==typeof this.$&&this.fields&&(this.fields=Object.assign(this.fields,this.$)),this.V(t,this.fields)}else this.Z(t)}U(){this.form&&this._&&(P(".modal-form-container",this.modal).innerHTML=this.A({fields:this._}).outerHTML)}async Z(t){t.onConfirm&&await Promise.resolve(t.onConfirm()),this.hide()}async V(t,e){t.onSubmit&&(await Promise.resolve(this.options.onSubmit(e)),this.$=null)}J(){const t=[{k:"esc",t:document,e:"keydown"},{k:"bg",t:this.root,e:"click"},{k:"inside",t:this.modal,e:"click"}];for(const{k:e,t:i,e:s}of t)this.v[e]&&(F(i,s,this.v[e]),delete this.v[e])}show(){if(!t.instances.has(this))throw new Error("Modal: The current instance has been destroyed.");if(this.isVisible)return;const{lazy:e,onShow:i,onShown:s}=this.options;e&&!this.root&&this.C(this.options),i&&i(),document.body.appendChild(this.root),document.body.style.overflow="hidden",this.O(this.modal),this.isVisible=!0,this.F(this.root,this.options);const n=P('input, select, textarea, [tabindex]:not([tabindex="-1"])',this.modal);n&&n.focus(),s&&s()}hide(){if(!this.isVisible||!this.root)return;const{onHide:t,onHidden:e}=this.options;t&&t();this.modal.style.transition="opacity 0.3s ease, transform 0.3s ease",this.modal.style.opacity="0",this.modal.style.transform="scale(0)",this.isVisible=!1,this.$=null,this.fields=null,this.U(),setTimeout(()=>{this.root.parentNode.removeChild(this.root),document.body.style.overflow="",this.modal.style.cssText="",this.J(),e&&e()},300)}setFields(t){if(this.form)for(const e of Object.keys(t)){const i=P(`[name="${e}"]`,this.form);i&&("checkbox"===i.type||"radio"===i.type?i.checked=t[e]:i.value=t[e])}}addFields(t){if("object"!=typeof t)throw new Error("Modal: The data expects an object");this.$=t}setContent(t){if(!this.modal)return;if(this.options.fields)throw new Error("Modal.setContent: Cannot setContent when fields are defined.");const e=P(".modal-body",this.modal);e&&("string"==typeof t?e.innerHTML=t:t instanceof HTMLElement&&(e.innerHTML="",e.appendChild(t)),this.options.content=t)}showLoading(){if(P(".j-loading",this.modal))return;const t=R("div",{className:"j-loading is-active",html:'<div class="loading-spinner"></div>'});this.modal.insertAdjacentHTML("beforeend",t.outerHTML),this.confirmBtn&&(this.confirmBtn.disabled=!0),this.cancelBtn&&(this.cancelBtn.disabled=!0)}hideLoading(){const t=P(".j-loading",this.modal);t&&(t.parentNode&&t.parentNode.removeChild(t),this.confirmBtn&&(this.confirmBtn.disabled=!1),this.cancelBtn&&(this.cancelBtn.disabled=!1))}destroy(){this.isVisible?this.hide():this.root&&this.root.parentNode&&(this.root.parentNode.removeChild(this.root),document.body.style.overflow="",this.modal.style.cssText=""),this.J(),this.root=null,this.fields=null,this.$=null,this.v={},this.options=null,this.isVisible=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(it,"instances",/* @__PURE__ */new Set);let st=it;class nt{X(){}static show(t="",e=3e3,i="info"){nt.Y(t,e,i);let s=document.querySelector(".j-toast-container");s||(s=R("div",{className:"j-toast-container"}),document.body.appendChild(s));const n=nt.G(i),o=R("div",{className:`j-toast is-${i}`,attrs:{"data-toast":j()},html:`<span class="toast-icon">${n}</span>\n <span class="toast-message">${t}</span>`});return s.appendChild(o),setTimeout(()=>{o.classList.add("toast-show")},10),e>0&&setTimeout(()=>{nt.hide(o)},e),O(o,"click",()=>{nt.hide(o)}),o}static success(t="",e=3e3){return nt.show(t,e,"success")}static info(t="",e=3e3){return nt.show(t,e,"info")}static warning(t="",e=3e3){return nt.show(t,e,"warning")}static error(t="",e=3e3){return nt.show(t,e,"error")}static hide(t){t&&(t.classList.remove("toast-show"),t.classList.add("toast-hide"),setTimeout(()=>{t.parentNode&&t.parentNode.removeChild(t);const e=document.querySelector(".j-toast-container");e&&0===e.children.length&&e.parentNode.removeChild(e)},300))}static lite(t="",e=2e3){if("string"!=typeof t)throw new Error("Lite toast message expects a string");if("number"!=typeof e||e<=0)throw new Error("Lite toast duration expects a number greater than 0");const i=document.querySelector(".j-toast-lite");i&&i.remove();const s=R("div",{className:"j-toast-lite",text:t});return document.body.appendChild(s),setTimeout(()=>s.classList.add("is-show"),10),setTimeout(()=>{s.classList.remove("is-show"),s.classList.add("is-hide"),setTimeout(()=>s.remove(),300)},e),s}static Y(t,e,i){if("string"!=typeof t)throw new Error("Toast message expects a string");if("number"!=typeof e||e<=0)throw new Error("Toast duration expects a positive number or 0.");if(!["info","success","warning","error"].includes(i))throw new Error("Toast type expects one of [info, success, warning, error]")}static G(t){const e={success:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M4 12C4 7.58172 7.58172 4 12 4C16.4183 4 20 7.58172 20 12C20 16.4183 16.4183 20 12 20C7.58172 20 4 16.4183 4 12ZM12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2ZM17.4571 9.45711L16.0429 8.04289L11 13.0858L8.20711 10.2929L6.79289 11.7071L11 15.9142L17.4571 9.45711Z"></path></svg>',error:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM12 10.5858L14.8284 7.75736L16.2426 9.17157L13.4142 12L16.2426 14.8284L14.8284 16.2426L12 13.4142L9.17157 16.2426L7.75736 14.8284L10.5858 12L7.75736 9.17157L9.17157 7.75736L12 10.5858Z"></path></svg>',warning:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM11 15H13V17H11V15ZM11 7H13V13H11V7Z"></path></svg>',info:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12 2 6.47715 6.47715 2 12 2 17.5228 2 22 6.47715 22 12 22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12 20 7.58172 16.4183 4 12 4 7.58172 4 4 7.58172 4 12 4 16.4183 7.58172 20 12 20ZM13 10.5V15H14V17H10V15H11V12.5H10V10.5H13ZM13.5 8C13.5 8.82843 12.8284 9.5 12 9.5 11.1716 9.5 10.5 8.82843 10.5 8 10.5 7.17157 11.1716 6.5 12 6.5 12.8284 6.5 13.5 7.17157 13.5 8Z"></path></svg>'};return e[t]||e.info}}const ot=class t{constructor(t){this.options=Object.assign({content:"",overlay:!0,filter:!0,direction:"left",animation:"slide",bgClose:!0,escClose:!0,id:null,onShow:null,onShown:null,onHide:null,onHidden:null},t),this.W(this.options),this.u(this.options)}W(t){const{content:e,overlay:i,filter:s,direction:n,animation:o,bgClose:r,escClose:a,id:h,onShow:l,onShown:c,onHide:d,onHidden:u}=t;b("content",e,["string","HTMLElement"]),b("overlay",i,"boolean"),b("filter",s,"boolean"),b("direction",n,"string",[{test:t=>["top","right","bottom","left"].includes(t),message:"expects one of [top, right, bottom, left]"}]),b("animation",o,"string",[{test:t=>["slide","push","none"].includes(t),message:"expects one of [slide, push, none]"}]),b("bgClose",r,"boolean"),b("escClose",a,"boolean"),b("id",h,["string","null"]),b("onShow",l,["function","null"]),b("onShown",c,["function","null"]),b("onHide",d,["function","null"]),b("onHidden",u,["function","null"]),h&&h.trim()||(this.options.id=j())}u(t){this.isVisible=!1,t.overlay&&(this.K=this.tt(t)),this.root=this.C(t),this.v={}}et(t){"Escape"===t.key&&this.isVisible&&this.hide()}F(){const{bgClose:t,escClose:e}=this.options;this.v={overlay:this.hide.bind(this),esc:t=>this.et(t),close:t=>{const e=t.target.dataset.action;"close"!==e&&"cancel"!==e||this.hide()}},this.K&&t&&O(this.K,"click",this.v.overlay),e&&O(document,"keydown",this.v.esc),O(this.root,"click",this.v.close)}it(){this.K&&this.v.overlay&&(F(this.K,"click",this.v.overlay),delete this.v.overlay),this.v.esc&&(F(document,"keydown",this.v.esc),delete this.v.esc),this.v.close&&(F(this.root,"click",this.v.close),delete this.v.close)}tt(t){const e=t.filter,i=e?"backdropFilter":"",s=e?"blur(2px)":"";return R("div",{className:"j-offcanvas-overlay",style:{[i]:s}})}C(t){const{id:e,direction:i,animation:s,content:n}=t;return R("div",{className:`j-offcanvas ${i?`is-${i}`:""} ${s?`is-${s}`:""}`,id:e,children:R("div",{className:"offcanvas-content",children:n})})}st(){const{overlay:t,animation:e,direction:i}=this.options;if(t&&document.body.appendChild(this.K),document.body.appendChild(this.root),document.body.style.overflow="hidden","push"===e){document.body.classList.add("offcanvas-push-body");const t=window.scrollY;this.K.style.top=`${t}px`,this.root.style.top=`${t}px`}setTimeout(()=>{this.K&&this.K.classList.add("is-active"),"push"===e&&document.body.classList.add(`offcanvas-push-${i}`),this.root.classList.add("is-active")},10)}nt(){const{animation:t,direction:e}=this.options;this.K&&this.K.classList.remove("is-active"),this.root.classList.remove("is-active"),"push"===t&&document.body.classList.remove(`offcanvas-push-${e}`),setTimeout(()=>{this.K&&this.K.parentNode&&this.K.parentNode.removeChild(this.K),this.root&&this.root.parentNode&&this.root.parentNode.removeChild(this.root),"push"===t&&document.body.classList.remove("offcanvas-push-body"),document.body.style.overflow=""},100)}async show(){const{onShow:t,onShown:e}=this.options;this.isVisible||(t&&await Promise.resolve(t()),this.st(),this.F(),this.isVisible=!0,setTimeout(()=>{e&&e()},100))}async hide(){const{onHide:t,onHidden:e}=this.options;this.isVisible&&(t&&await Promise.resolve(t()),this.it(),this.nt(),this.isVisible=!1,e&&e())}destroy(){this.hide(),this.options=null,this.root=null,this.v={},t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(ot,"instances",/* @__PURE__ */new Set);let rt=ot;const at=class t{constructor(t={}){this.options=Object.assign({mode:"dark",render:"dark",theme:"indigo",radius:"sm",shadow:"sm",font:"sm",key:"jui-theme"},t),this.languages={en:{b:"Back",t:"Customize",d:"Customize your UI experience.",theme:"Theme",radius:"Radius",shadow:"Shadow",font:"Font",mode:"Mode",gray:"Gray",olive:"Olive",tomato:"Tomato",ruby:"Ruby",pink:"Pink",violet:"Violet",indigo:"Indigo",blue:"Blue",teal:"Teal",grass:"Grass",mint:"Mint",lime:"Lime",yellow:"Yellow",orange:"Orange",gold:"Gold",n:"None",sm:"Small",md:"Medium",lg:"Large",xl:"XL",light:"Light",dark:"Dark",auto:"Auto"},zh:{b:"返回",t:"自定义主题",d:"自定义您的UI体验。",theme:"主题",radius:"圆角",shadow:"阴影",font:"字体",mode:"模式",gray:"灰色",olive:"橄榄绿",tomato:"番茄红",ruby:"红宝石",pink:"粉红",violet:"紫罗兰",indigo:"靛蓝",blue:"蓝色",teal:"青色",grass:"草绿",mint:"薄荷绿",lime:"酸橙绿",yellow:"黄色",orange:"橙色",gold:"金色",n:"无",sm:"小",md:"中",lg:"大",xl:"更大",light:"浅色",dark:"深色",auto:"自动"}},this.u()}u(){this.v={},this.mq=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)"),this.ot(),this.rt(this.options),this.ht(),this.lt(document)}ct(t){return C(t,this.languages)}ot(){try{const t=localStorage.getItem(this.options.key);if(t){const e=JSON.parse(t);this.options=Object.assign({},this.options,e)}}catch(t){}}dt(t){const e=this.mq&&this.mq.matches?"dark":"light";this.options.render="auto"===this.options.mode?e:this.options.mode;const i=JSON.stringify(t);localStorage.setItem(this.options.key,i)}ut(){const t=[],e=document.documentElement;for(const i of e.classList)"light"!==i&&"dark"!==i||t.push(i),(i.startsWith("j-theme-")||i.startsWith("j-radius-")||i.startsWith("j-shadow-")||i.startsWith("j-font-"))&&t.push(i);t.length&&e.classList.remove(...t)}ft(){const t=document.documentElement,{mode:e}=this.options;if("auto"===e){const e=this.mq&&this.mq.matches?"dark":"light";t.classList.remove("light","dark"),t.classList.add(e)}else t.classList.remove("light","dark"),t.classList.add("dark"===e?"dark":"light")}rt(t){this.ut(),this.ft();document.documentElement.classList.add(`j-theme-${t.theme}`,`j-radius-${t.radius}`,`j-shadow-${t.shadow}`,`j-font-${t.font}`)}lt(t=document){const e=t.querySelectorAll(".palette-item");for(const i of e){const t=i.dataset.palette,e=this.options[t],s=i.querySelectorAll("button[data-palette]");for(const i of s){const t=i.dataset.palette===(void 0===e?null:e);i.classList.toggle("is-active",t)}}}ht(){this.v.click=t=>{const e=t.target.closest(".palette-item .items > button[data-palette]");if(!e)return;const i=e.closest(".palette-item");if(!i)return;const s=i.dataset.palette,n=e.dataset.palette;e.classList.contains("is-active")||(this.options[s]=n,this.rt(this.options),this.dt(this.options),this.lt())},O(document.body,"click",this.v.click)}bt(){F(document.body,"click",this.v.click)}createPanel(t="j-theme-palette",e=null){const i=e||[{title:this.ct("theme"),type:"theme",buttons:[["gray",this.ct("gray")],["olive",this.ct("olive")],["tomato",this.ct("tomato")],["ruby",this.ct("ruby")],["pink",this.ct("pink")],["violet",this.ct("violet")],["indigo",this.ct("indigo")],["blue",this.ct("blue")],["teal",this.ct("teal")],["grass",this.ct("grass")],["mint",this.ct("mint")],["lime",this.ct("lime")],["yellow",this.ct("yellow")],["orange",this.ct("orange")],["gold",this.ct("gold")]]},{title:this.ct("radius"),type:"radius",buttons:[["none",this.ct("n")],["sm",this.ct("sm")],["md",this.ct("md")],["lg",this.ct("lg")],["xl",this.ct("xl")]]},{title:this.ct("shadow"),type:"shadow",buttons:[["none",this.ct("n")],["sm",this.ct("sm")],["md",this.ct("md")],["lg",this.ct("lg")]]},{title:this.ct("font"),type:"font",buttons:[["sm",this.ct("sm")],["md",this.ct("md")]]},{title:this.ct("mode"),type:"mode",buttons:[["light",this.ct("light")],["dark",this.ct("dark")],["auto",this.ct("auto")]]}],s=[],n=`<div class="text-center"><button class="j-button is-text" data-action="close">${this.ct("b")}</button></div><h3>${this.ct("t")}</h3><p class="mt-0 text-sm">${this.ct("d")}</p><div class="palette-container">`;s.push(n);for(const o of i){s.push(`<div class="palette-item" data-palette="${o.type}"><div class="item-title">${o.title}</div><div class="items">`);for(const[t,e]of o.buttons){const i=String(this.options[o.type])===String(t)?" is-active":"",n="theme"===o.type?`<span class="el-prefix item-hex bg-${t}-10"></span>`:"";s.push(`<button class="j-button is-default${i}" data-palette="${t}">${n}<span class="button-text">${e}</span></button>`)}s.push("</div></div>")}s.push("</div>");return R("div",{className:t,html:s.join("")})}setConfig(t){this.options=Object.assign({},this.options,t),this.rt(this.options),this.dt(this.options),this.lt(document)}destroy(){this.bt(),this.options={},this.languages={},this.v={},this.mq=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(at,"instances",/* @__PURE__ */new Set);let ht=at;const lt=class t{constructor(t,e={}){if(!1!==t&&!(t instanceof HTMLElement))throw new Error("Element expects a valid HTMLElement or false.");this.options=Object.assign({id:null,direction:"top",active:0,disabled:[],onChange:null,tabs:[],onAdd:null,onRemove:null},e),this.p(this.options),this.u(t)}u(t){this.root=t,this.current=null,this.v={},this.wt=[];const{tabs:e,disabled:i,active:s}=this.options;if(!1===this.root&&(this.root=this.C(e)),0===this.tabs.length||0===this.panels.length)throw new Error(".tab-item or .panel-item not found.");this.wt=this.vt(i),this.gt(),this.F(),this.yt(s,!1),this.xt()}get tabs(){return this.root?Array.from(this.root.querySelectorAll(".tab-item")):[]}get panels(){return this.root?Array.from(this.root.querySelectorAll(".panel-item")):[]}get $t(){return this.root?this.root.querySelector(".tab-wrap"):null}get kt(){return this.root?this.root.querySelector(".tab-list"):null}p(t){const{id:e,direction:i,active:s,disabled:n,onChange:o,tabs:r,onAdd:a,onRemove:h}=t;b("id",e,["string","null"]),b("direction",i,"string",[{test:t=>["top","bottom","left","right"].includes(t),message:"direction expects one of [top, bottom, left, right]"}]),b("active",s,["number","string"]),b("disabled",n,["number","string","array"]),b("tabs",r,["array"]),b("onChange",o,["function","null"]),b("onAdd",a,["function","null"]),b("onRemove",h,["function","null"]),e&&e.trim()||(this.options.id=j())}C(t){const{id:e,direction:i}=this.options,s=R("nav",{className:"tab-list"}),n=R("div",{className:"tab-wrap",children:s}),o=R("div",{className:"tab-panel"});for(const r of t){const t=R("div",{className:"tab-item",attrs:{"data-tab":r.name||j()},html:`<span>${r.title}</span>`});s.appendChild(t);const e=R("div",{className:"panel-item",html:`<div>${r.content}</div>`});o.appendChild(e)}return R("div",{className:"j-tabs",id:e,direction:`is-${i}`,children:[n,o]})}vt(t){if(null==t)return[];const e=t=>"number"==typeof t?t:"string"==typeof t?this.tabs.findIndex(e=>e.dataset.tab===t):-1;if(Array.isArray(t))return t.map(e).filter(t=>t>=0);{const i=e(t);return i>=0?[i]:[]}}gt(){for(const[t,e]of this.tabs.entries())this.wt.includes(t)?(e.setAttribute("disabled","true"),e.classList.add("is-disabled")):(e.removeAttribute("disabled"),e.classList.remove("is-disabled"))}F(){this.it(),this.kt&&(this.v.tabClick=t=>{const e=t.target.closest(".tab-item");if(!e||!this.tabs.includes(e))return;const i=this.tabs.indexOf(e);i>=0&&!this.wt.includes(i)&&this.activate(i)},O(this.kt,"click",this.v.tabClick))}it(){this.kt&&this.v.tabClick&&F(this.kt,"click",this.v.tabClick),this.v.tabClick=null}async yt(t,e=!0){const{onChange:i}=this.options,s=this._t(t);if(!(s<0||s>=this.tabs.length||this.wt.includes(s)||this.current===s)){this.current=s;for(const[t,e]of this.tabs.entries())e.classList.toggle("is-active",t===s);for(const[t,e]of this.panels.entries())e.classList.toggle("is-active",t===s);if(e&&i){const t=this.tabs[s],e=this.panels[s],n=t&&t.dataset.tab||s;await Promise.resolve(i(s,n,t,e))}}}_t(t){return"number"==typeof t?t:"string"==typeof t?this.tabs.findIndex(e=>e.dataset.tab===t):-1}xt(){const{direction:t}=this.options;this.$t&&this.kt&&(this.isVertical="left"===t||"right"===t,this.draggable=this.Et(),this.draggable?(this.Ct(),this.v.resize=()=>{cancelAnimationFrame(this.Tt),this.Tt=requestAnimationFrame(()=>{this.jt()})},O(window,"resize",this.v.resize)):this.St())}Et(){if(this.isVertical){return this.kt.scrollHeight>this.$t.clientHeight+5}return this.kt.scrollWidth>this.$t.clientWidth+5}Ct(){this.St();const t=this.$t,e=this.kt,i=this.isVertical;let s=0,n=0,o=0,r=!1;const a=t=>i?t.touches?t.touches[0].pageY:t.pageY:t.touches?t.touches[0].pageX:t.pageX,h=r=>{this.isDragging=!0,e.classList.add("dragging"),s=a(r),o=s,n=i?t.scrollTop:t.scrollLeft,this.Mt=0,cancelAnimationFrame(this.raf)},l=e=>{if(!this.isDragging)return;e.preventDefault();const h=a(e),l=s-h;this.Mt=o-h,o=h,r||(r=!0,requestAnimationFrame(()=>{r=!1,i?t.scrollTop=n+l:t.scrollLeft=n+l}))},c=()=>{this.isDragging&&(this.isDragging=!1,e.classList.remove("dragging"),this.At())};this.v.drag={onDragStart:h,onDragMove:l,onDragEnd:c},O(e,"mousedown",h),O(e,"touchstart",h,{passive:!0}),O(window,"mousemove",l,{passive:!1}),O(window,"touchmove",l,{passive:!1}),O(window,"mouseup",c),O(window,"touchend",c)}At(){const t=this.$t;let e=this.Mt;const i=this.isVertical;let s=performance.now();const n=o=>{const r=o-s;s=o,e*=.92,Math.abs(e)<.3||(i?t.scrollTop+=e*r*.05:t.scrollLeft+=e*r*.05,this.raf=requestAnimationFrame(n))};this.raf=requestAnimationFrame(n)}St(){if(!this.v.drag)return;const{onDragStart:t,onDragMove:e,onDragEnd:i}=this.v.drag;F(this.kt,"mousedown",t),F(this.kt,"touchstart",t),F(window,"mousemove",e),F(window,"touchmove",e),F(window,"mouseup",i),F(window,"touchend",i),this.v.drag=null}jt(){this.xt()}async activate(t){await this.yt(t,!0)}async reInit(t={}){this.options=Object.assign({},this.options,t);const{disabled:e,active:i}=this.options;this.wt=this.vt(e),this.gt(),this.F(),await this.yt(i,!1),this.jt()}async addTab(t){const{title:e,name:i,content:s}=t;if(!t||!e)return;const n=this.root.querySelector(".tab-panel");t.name=i||j();const o=R("div",{className:"tab-item",attrs:{"data-tab":t.name},html:`<span>${e}</span>`});this.kt&&this.kt.appendChild(o);const r=R("div",{className:"panel-item",html:`<div>${s}</div>`});n.appendChild(r),this.gt(),this.F();const{onAdd:a}=this.options;a&&await Promise.resolve(a(this.tabs.length-1,t,o,r)),this.jt()}async deleteTab(t){if(this.tabs.length<=1)return;const e=this._t(t);if(e<0||e>=this.tabs.length)return;const i=this.tabs[e],s=this.panels[e],n=i.dataset.tab||e;i&&i.parentNode&&i.parentNode.removeChild(i),s&&s.parentNode&&s.parentNode.removeChild(s),this.gt(),this.F();const{onRemove:o}=this.options;o&&await Promise.resolve(o(e,n)),i.classList.contains("is-active")&&await this.yt(this.tabs.length-1,!1),this.jt()}disableTab(t){const e=this._t(t);e>=0&&!this.wt.includes(e)&&(this.wt.push(e),this.gt(),this.F())}enableTab(t){const e=this._t(t),i=this.wt.indexOf(e);i>=0&&(this.wt.splice(i,1),this.gt(),this.F())}destroy(){this.it();for(const t of this.tabs)t.classList.remove("is-active","is-disabled"),t.removeAttribute("disabled");for(const t of this.panels)t.classList.remove("is-active");const e=this.kt;e&&(F(e.inner,"mousedown",this.Nt),F(e.inner,"touchstart",this.Nt),F(e.inner,"mousemove",this.Ht),F(e.inner,"touchmove",this.Ht),F(window,"mouseup",this.Lt),F(window,"touchend",this.Lt)),this.v.resize&&F(window,"resize",this.v.resize),this.root=null,this.options={},this.isVertical=!1,this.v={},t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(lt,"instances",/* @__PURE__ */new Set);let ct=lt;const dt=class t{constructor(e,i={}){if(!1!==e&&!(e instanceof HTMLElement))throw new Error("Accordion: element expects a valid HTMLElement or false.");this.options=Object.assign({id:null,active:0,collapsible:!1,multiple:!1,onChange:null,items:[]},i),this.p(this.options),this.u(e,this.options),t.instances.add(this)}p(t){const{id:e,active:i,collapsible:s,multiple:n,onChange:o,items:r}=t;b("id",e,["string","null"]),b("active",i,["number","string"]),b("collapsible",s,"boolean"),b("multiple",n,"boolean"),b("onChange",o,["function","null"]),b("items",r,"array"),e&&e.trim()||(this.options.id=j())}u(t,e){if(this.root=t,this.v={},!1===this.root&&(this.root=this.C(e)),0===this.headers.length||0===this.panels.length)throw new Error("Accordion: .accordion-header or .accordion-panel not found.");this.F(),null!=e.active&&this.yt(e.active,!1)}C(t){return R("div",{className:"j-accordion",id:t.id,children:this.It(t.items)})}It(t){if(!Array.isArray(t)||0===t.length)throw new Error("Accordion: items must be a non-empty array.");const e=document.createDocumentFragment();for(const i of t){if(i.name&&"string"!=typeof i.name)throw new Error("Accordion: item name expects a string.");const t=R("div",{className:"accordion-header",attrs:{"data-item":i.name||j()},html:`<span class="header-title">${i.title}</span><span class="header-arrow"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg></span>`}),s=R("div",{className:"accordion-panel"}),n=R("div",{className:"panel-content",children:i.content});s.appendChild(n),e.appendChild(t),e.appendChild(s)}return e}F(){this.it();const t=t=>{const e=t.target.closest(".accordion-header");e&&this.headers.includes(e)&&this.active(this.headers.indexOf(e))};O(this.root,"click",t),this.v.root=t}it(){const t=[{k:"root",t:this.root,e:"click"}];for(const{k:e,t:i,e:s}of t)this.v[e]&&(F(i,s,this.v[e]),delete this.v[e])}async yt(t,e=!0){const i=this._t(t);if(i<0||i>=this.headers.length)return;const s=this.headers[i],n=this.panels[i],o=s&&s.dataset.item||i,r=s.classList.contains("is-active");if(!r||this.options.multiple||this.options.collapsible){if(this.options.multiple)r?(s.classList.remove("is-active"),n.classList.remove("is-active")):(s.classList.add("is-active"),n.classList.add("is-active"));else if(r)this.options.collapsible&&(s.classList.remove("is-active"),n.classList.remove("is-active"));else{for(const t of this.headers)t.classList.remove("is-active");for(const t of this.panels)t.classList.remove("is-active");s.classList.add("is-active"),n.classList.add("is-active")}e&&this.options.onChange&&await Promise.resolve(this.options.onChange(i,o,s,n))}}_t(t){return"number"==typeof t?t:"string"==typeof t?this.headers.findIndex(e=>e.dataset.item===t):-1}get headers(){return this.root?Array.from(this.root.querySelectorAll(".accordion-header")):[]}get panels(){return this.root?Array.from(this.root.querySelectorAll(".accordion-panel")):[]}get current(){const t=this.headers.find(t=>t.classList.contains("is-active"));return t?this.headers.indexOf(t):null}async active(t){return this.yt(t,!0),Promise.resolve()}setItems(t,e=0){if(!Array.isArray(t)||0===t.length)throw new Error("Accordion.setItems: items expects a non-empty array.");if("number"!=typeof e&&e<0)throw new Error("Accordion.setItems: active expects a positive number or 0.");this.options.items=[...t],this.options.active=e,this.it(),this.root.innerHTML="",this.root.append(this.It(t)),this.F(),this.yt(this.options.active)}destroy(){this.it();for(const t of this.headers)t.classList.remove("is-active");for(const t of this.panels)t.classList.remove("is-active");this.root=null,this.options={},this.Dt={},t.instances.delete(this)}destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(dt,"instances",/* @__PURE__ */new Set);let ut=dt;const mt=class t{constructor(t,e={}){if(!(t instanceof HTMLElement))throw new Error("Drop: element expects a valid HTMLElement.");this.target=t,this.options=Object.assign({name:null,mode:"click",position:"auto",offset:10,content:"",className:null,id:null,delay:0,hoverIntent:!0},e),this.p(this.options),this.u(this.options)}p(t){b("name",t.name,["string","null"]),b("mode",t.mode,["string"]),b("position",t.position,["string"],[{test:t=>["auto","top-left","top-center","top-right","bottom-left","bottom-center","bottom-right","left","right"].includes(t),message:"expects one of [auto, top-left, top-center, top-right, bottom-left, bottom-center, bottom-right, left, right]"}]),b("offset",t.offset,"number",[{test:t=>t>=0,message:"offset expects a positive number or 0."}]),b("content",t.content,["string","HTMLElement"]),b("className",t.className,["string","null"]),b("id",t.id,["string","null"]),b("delay",t.delay,["number","object"]),b("hoverIntent",t.hoverIntent,"boolean"),t.id&&t.id.trim()||(this.options.id=j())}u(t){this.isVisible=!1,this.root=null,this.v={},this.Ot={show:null,hide:null},this.Ft={x:0,y:0,lastMoveTime:0};const{delay:e}=t;"number"==typeof e&&e>=0?(this.delayShow=e,this.delayHide=e):"object"==typeof e&&null!==e?(this.delayShow=Number(e.show)||0,this.delayHide=Number(e.hide)||0):(this.delayShow=0,this.delayHide=0),this.v={show:this.show.bind(this),hide:this.hide.bind(this),toggle:this.toggle.bind(this),mouseMove:this.Pt.bind(this),docClick:this.qt.bind(this),startIntent:this.Rt.bind(this),cancelIntent:this.zt.bind(this)},this.Bt(t),this.F(t)}Bt(t){const{className:e,content:i,id:s,name:n}=t,o=e||"",r=i instanceof HTMLElement?i:R("div",{className:"drop-container",html:i}),a=R("div",{className:o?`j-drop ${o}`:"j-drop",id:s,attrs:{"data-drop":n||j()},children:r});this.root=a,document.body.appendChild(a)}F(t){const{mode:e,hoverIntent:i}=t;"hover"===e?(i?(O(this.target,"mouseenter",this.v.startIntent),O(this.target,"mouseleave",this.v.cancelIntent)):(O(this.target,"mouseenter",this.v.show),O(this.target,"mouseleave",this.v.hide)),O(this.root,"mouseenter",this.v.show),O(this.root,"mouseleave",this.v.hide)):"click"===e&&(O(this.target,"click",this.v.toggle),O(document,"click",this.v.docClick))}it(){const{mode:t,hoverIntent:e}=this.options;"hover"===t?(e?(F(this.target,"mouseenter",this.v.startIntent),F(this.target,"mouseleave",this.v.cancelIntent)):(F(this.target,"mouseenter",this.v.show),F(this.target,"mouseleave",this.v.hide)),F(this.root,"mouseenter",this.v.show),F(this.root,"mouseleave",this.v.hide)):"click"===t&&(F(this.target,"click",this.v.toggle),F(document,"click",this.v.docClick)),F(document,"mousemove",this.v.mouseMove)}Rt(){O(document,"mousemove",this.v.mouseMove),clearTimeout(this.Ot.show),this.Ot.show=setTimeout(()=>{const t=Date.now()-this.Ft.lastMoveTime;Math.abs(this.Ft.x-this.Vt||0)+Math.abs(this.Ft.y-this.Zt||0)<5||t>100?(this.show(),F(document,"mousemove",this.v.mouseMove)):this.Rt()},this.delayShow)}zt(){clearTimeout(this.Ot.show),F(document,"mousemove",this.v.mouseMove),this.hide()}Pt(t){this.Vt=t.clientX,this.Zt=t.clientY,this.Ft.lastMoveTime=Date.now(),this.Ft.x=t.clientX,this.Ft.y=t.clientY}Ut(){const t=this.target.getBoundingClientRect(),e=this.root,{offset:i,position:s}=this.options;e.style.visibility="hidden",e.style.display="block";const n=e.getBoundingClientRect();let o=0,r=0,a=s;if("auto"===a){a=window.innerHeight-t.bottom>n.height+i?"top-center":"bottom-center"}switch(a){case"top-left":o=t.top-n.height-i,r=t.left;break;case"top-center":o=t.top-n.height-i,r=t.left+t.width/2-n.width/2;break;case"top-right":o=t.top-n.height-i,r=t.right-n.width;break;case"bottom-left":o=t.bottom+i,r=t.left;break;case"bottom-center":o=t.bottom+i,r=t.left+t.width/2-n.width/2;break;case"bottom-right":o=t.bottom+i,r=t.right-n.width;break;case"left":o=t.top+t.height/2-n.height/2,r=t.left-n.width-i;break;case"right":o=t.top+t.height/2-n.height/2,r=t.right+i}o=Math.max(8,Math.min(o,window.innerHeight-n.height-8)),r=Math.max(8,Math.min(r,window.innerWidth-n.width-8)),e.style.top=`${o+window.scrollY}px`,e.style.left=`${r+window.scrollX}px`,e.style.visibility="",e.style.display=""}qt(t){this.root.contains(t.target)||this.target.contains(t.target)||this.hide()}Jt(t){t?this.Ut():(this.root.style.top="",this.root.style.left=""),this.root.classList.toggle("is-active",t),this.isVisible=t}show(t=!0){clearTimeout(this.Ot.hide),this.isVisible||(t&&this.delayShow>0?(clearTimeout(this.Ot.show),this.Ot.show=setTimeout(this.Jt(!0),this.delayShow)):this.Jt(!0))}hide(t=!0){clearTimeout(this.Ot.show),this.isVisible&&(t&&this.delayHide>0?(clearTimeout(this.Ot.hide),this.Ot.hide=setTimeout(this.Jt(!1),this.delayHide)):this.Jt(!1))}toggle(){this.isVisible?this.hide():this.show()}destroy(){var e;clearTimeout(this.Ot.show),clearTimeout(this.Ot.hide),this.hide(!1),this.it(),(null==(e=this.root)?void 0:e.parentNode)&&this.root.parentNode.removeChild(this.root),this.options=null,this.root=null,this.target=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(mt,"instances",/* @__PURE__ */new Set);let ft=mt;const pt=class t{constructor(t,e={}){if(!(t instanceof HTMLElement))throw new Error("Tooltip: element expects a valid HTMLElement.");const i=Object.assign({name:null,mode:"hover",position:"auto",offset:8,message:"",className:null,id:null,delay:100,hoverIntent:!0},e),s=this.Xt(i);this.drop=new ft(t,{name:i.name,mode:i.mode,position:i.position,offset:i.offset,content:s,className:i.className,id:i.id,delay:i.delay,hoverIntent:i.hoverIntent})}Xt(t){if("string"!=typeof t.message||""===t.message.trim())throw new Error("Tooltip: message expects a string.");const e=R("div",{className:"tooltip-message",text:t.message});return R("div",{className:t.className?`j-tooltip ${t.className}`:"j-tooltip",children:e})}show(t=!0){this.drop.show(t)}hide(t=!0){this.drop.hide(t)}toggle(){this.drop.toggle()}destroy(){this.drop.destroy(),this.drop=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(pt,"instances",/* @__PURE__ */new Set);let bt=pt;const wt=class t{constructor(t,e={},i=!1){this.options=Object.assign({rules:{},messages:{},onSubmit:null},e),this.p(t,this.options,i),this.u(t),i&&this.F()}p(t,e,i){b("element",t,["HTMLElement","string"]),b("rules",e.rules,"object"),b("messages",e.messages,"object"),b("onSubmit",e.onSubmit,["function","null"]),b("bindEvents",i,"boolean")}u(t){this.root=t,this.valid=!0}F(){O(this.root,"submit",t=>{t.preventDefault(),this.validate()}),O(this.root,"reset",()=>{this.reset()})}validate(){for(const t of this.root.elements){const e=t.name;if(this.options.rules[e]&&(this.valid=this.Yt(t,e),!this.valid))break}return this.valid&&this.options.onSubmit&&this.options.onSubmit(),this.valid}Yt(t,e){const i=this.options.rules[e];if(t.hasAttribute("required")||t.hasAttribute("minlength")||t.hasAttribute("maxlength")||t.hasAttribute("pattern")||t.hasAttribute("min")||t.hasAttribute("max")||t.hasAttribute("step"))return this.valid;for(const s in i){switch(s){case"required":this.valid=this.Gt(t,i[s]);break;case"minLength":this.valid=this.Wt(t,i[s]);break;case"maxLength":this.valid=this.Kt(t,i[s]);break;case"equalTo":this.valid=this.Qt(t,i[s]);break;case"email":this.valid=this.te(t);break;case"checked":this.valid=this.ee(t,i[s]);break;case"noSpace":this.valid=this.ie(t,i[s]);break;case"noChinese":this.valid=!/[\u4e00-\u9fa5]/.test(t.value);break;case"noSpecial":this.valid=!/[@#$%^&*]+/g.test(t.value);break;case"pattern":this.valid=new RegExp(i[s]).test(t.value)}if(!this.valid){this.se(t,e,s);break}this.ne(t)}return this.valid}Gt(t,e){return t.value.trim().length>=1&&!0===e}Wt(t,e){return t.value.length>=e}Kt(t,e){return t.value.length<=e}te(t){return/^([\w-.]+@([\w-]+\.)+[\w-]{2,4})?$/.test(t.value)}Qt(t,e){const i=this.root.elements[e];if(null==i)throw new Error(`Validator: target element "${e}" not found.`);return t.value===i.value}ee(t,e){if("checkbox"!==t.type)throw new Error(`Validator: element expects a checkbox input, but ${t.type} given.`);return t.checked===e}ie(t,e){return!/\s/.test(t.value)||!0!==e}se(t,e,i){t.classList.remove("is-valid"),t.classList.add("is-invalid");const s=this.options.messages[e]&&this.options.messages[e][i];if(s){this.message=s;const e=t.closest(".form-control");let i=P(".help-block",e);i||(i=R("div",{className:"help-block is-invalid",text:s}),e.appendChild(i))}}ne(t){this.message="",t.classList.remove("is-invalid");const e=t.closest(".form-control"),i=P(".help-block",e);i&&e.removeChild(i),t.classList.add("is-valid")}reset(){this.root.reset();for(const e of this.root.elements)e.classList.remove("is-valid"),e.classList.remove("is-invalid");const t=this.root.querySelectorAll(".help-block");for(const e of t)e.remove();this.valid=!0,this.message=""}destroy(){this.reset(),this.root=null,this.options=null,this.message=null,this.valid=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(wt,"instances",/* @__PURE__ */new Set);let vt=wt;class gt{constructor(t){this.options=Object.assign({ball:{color:"var(--primary, #3e63dd)",size:"10px"},from:null,to:null,direction:"center",showDelay:0,hideDelay:0,onShow:null,onHidden:null},t),this.p(this.options),this.u(this.options)}p(t){const{ball:e,from:i,to:s,direction:n,showDelay:o,hideDelay:r,onShow:a,onHidden:h}=t;b("ball",e,"object",[{test:t=>"object"==typeof t&&2===Object.keys(t).length&&"string"==typeof t.color&&"string"==typeof t.size,message:'ball expects an object with two string properties: "color" and "size".'}]),b("from",i,["HTMLElement","string"]),b("to",s,["HTMLElement","string"]),b("direction",n,"string",[{test:t=>["center","top-right","top-left","bottom-right","bottom-left"].includes(t),message:"direction expects one of [center, top-right, top-left, bottom-right, bottom-left]"}]),b("showDelay",o,"number"),b("hideDelay",r,"number"),b("onShow",a,["function","null"]),b("onHide",h,["function","null"])}u(t){if(this.hidden=!1,this.oe=null,this.re=null,this.ae=null,this.he=null,this.hidden)return;const e=q(t.from),i=q(t.to);if(!e||!i)throw this.destroy(),new Error("Parabola: from or to element not found.");this.le(t)}le(t){if(this.hidden||this.oe)return;const{color:e,size:i}=t.ball;this.oe=R("div",{className:"parabola-ball",style:{backgroundColor:e,width:i,height:i,position:"fixed",borderRadius:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none",zIndex:"9999",opacity:"1"}}),document.body.appendChild(this.oe)}ce(t){var e,i;const s=null==(e=q(t.from))?void 0:e.getBoundingClientRect(),n=null==(i=q(t.to))?void 0:i.getBoundingClientRect();if(!s||!n)return null;const{left:o,top:r,width:a,height:h}=s,{left:l,top:c,width:d,height:u}=n;let m,f;switch(t.direction){case"top-left":m=o+.2*a,f=r+.2*h;break;case"top-right":m=o+.8*a,f=r+.2*h;break;case"bottom-left":m=o+.2*a,f=r+.8*h;break;case"bottom-right":m=o+.8*a,f=r+.8*h;break;default:m=o+a/2,f=r+h/2}return{startX:m,startY:f,endX:l+d/2,endY:c+u/2}}de(t){return 1-(1-t)**3}ue(t,e,i,s,n=800){if(this.hidden)return;const o=performance.now(),r=i-t,a=s-e,h=i=>{if(this.hidden)return;const s=i-o,l=Math.min(s/n,1),c=this.de(l),d=t+r*c,u=e+-100*Math.sin(Math.PI*c)+a*c,m=1-l;this.oe.style.left=`${d}px`,this.oe.style.top=`${u}px`,this.oe.style.opacity=`${m}`,this.oe.style.transform=`translate(-50%, -50%) scale(${1-.3*c})`,l<1?this.re=requestAnimationFrame(h):this.destroy()};this.re=requestAnimationFrame(h)}async show(){return!this.hidden&&new Promise(t=>{this.ae=setTimeout(()=>{if(this.hidden)return void t(!1);const e=this.ce(this.options);if(!e)return this.destroy(),void t(!1);this.oe.style.left=`${e.startX}px`,this.oe.style.top=`${e.startY}px`,this.options.onShow&&this.options.onShow(),this.ue(e.startX,e.startY,e.endX,e.endY),t(!0)},this.options.showDelay)})}destroy(){var t;(null==(t=this.oe)?void 0:t.parentNode)&&this.oe.parentNode.removeChild(this.oe),this.ae&&clearTimeout(this.ae),this.he&&clearTimeout(this.he),this.re&&cancelAnimationFrame(this.re),this.oe=null,this.hidden=!0,this.options.onHidden&&this.options.onHidden()}start(){return this.show()}}export{ut as accordion,m as computed,Z as container,I as copy,tt as createEffect,et as createMemo,Q as createSignal,y as destroyAll,ft as drop,u as effect,S as escapeHtml,A as getCookie,q as getEl,E as getLang,k as getLanguages,_ as getLocale,f as getType,w as isClass,p as isFunction,M as isMobile,B as log,x as manager,st as modal,R as newEl,F as off,rt as offcanvas,O as on,gt as parabola,L as postJson,P as q,j as randomId,c as reactive,d as ref,g as release,H as removeCookie,z as restUrl,N as setCookie,$ as setLanguages,v as singleton,U as store,C as t,ct as tabs,ht as theme,nt as toast,bt as tooltip,h as track,l as trigger,T as uuid,b as validate,vt as validator};
|
package/dist/jui.umd.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).jui=e()}(this,function(){"use strict";var t=Object.defineProperty,e=(e,i,s)=>((e,i,s)=>i in e?t(e,i,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[i]=s)(e,"symbol"!=typeof i?i+"":i,s);const i=new Map,s=new Map;let n={},o=null;const r=new WeakMap,a=new WeakMap;function h(t,e){let i=r.get(t);i||(i=new Map,r.set(t,i));let s=i.get(e);s||(s=new Set,i.set(e,s)),o&&(s.add(o),o.deps.push(s))}function l(t,e){const i=r.get(t);if(!i)return;const s=i.get(e);if(s){const t=new Set(s);for(const e of t)e.scheduler?e.scheduler():e()}}function c(t,e={}){const i=(...e)=>{if(o!==i){!function(t){for(const e of t.deps)e.delete(t);t.deps.length=0}(i),o=i;try{return t(...e)}finally{o=null}}};return i.deps=[],i.scheduler=e.scheduler,e.lazy||i(),i}const d=t=>null===t?"null":t instanceof HTMLElement?"HTMLElement":Array.isArray(t)?"array":typeof t,u=t=>"function"==typeof t&&null!==t.prototype&&t.prototype.constructor===t,m=(t,e,i,s=[])=>{const n=Array.isArray(i)?i:[i],o=Array.isArray(s)?s:s?[s]:[],r=d(e);if(!n.some(t=>t===r)){const e=n.join(", ");throw new Error(`Validator: ${t} expects ${e}, but got ${r}.`)}for(const a of o){let i,s;if("function"==typeof a)i=a,s="does not satisfy the required condition.";else{if(!a||"function"!=typeof a.test)throw new Error("Validator: Condition must be a function or { test, message }.");i=a.test,s=a.message||"condition failed."}if(!i(e))throw new Error(`Validator: ${t} ${s}`)}};function f(t){if(i.has(t)){const{instance:s}=i.get(t);if("function"==typeof s.destroy)try{s.destroy()}catch(e){throw new Error(`release(): destroy() failed on instance with key "${t}".`)}i.delete(t)}s.has(t)&&(clearTimeout(s.get(t)),s.delete(t))}const p={instances:new Map,get(t,e){return this.instances.has(t)||this.instances.set(t,e()),this.instances.get(t)},destroy(t){if(this.instances.has(t)){const e=this.instances.get(t);e.destroy&&e.destroy(),this.instances.delete(t)}},destroyAll(){for(const t of this.instances.values())t.destroy&&t.destroy();this.instances.clear()}};function b(){const t=document.documentElement.getAttribute("lang");if(t){switch(t.substring(0,2).toLowerCase()){case"en":default:return"en";case"zh":return"zh"}}return w()}function w(){return"undefined"==typeof navigator||navigator.language.toLowerCase().startsWith("en")?"en":"zh"}function g(t,e=n,i=null){var s;return null===i&&(i=b()),(null==(s=e[i])?void 0:s[t])||t}function v(t=8){if(!Number.isInteger(t)||t<1||t>32)throw new Error("Length must be an integer between 1 and 32");const e=new Uint8Array(t);crypto.getRandomValues(e);let i="";for(let s=0;s<t;s++)i+="abcdefghijkmnpqrstuvwxyz23456789"[31&e[s]];return i}function y(t){const e=`; ${document.cookie}`.split(`; ${t}=`);return 2===e.length?e.pop().split(";").shift():null}function x(t){let e=null;try{e=document.createElement("textarea"),e.value=t,e.setAttribute("readonly",""),e.style.position="absolute",e.style.left="-9999px",e.style.opacity="0",document.body.appendChild(e),e.select(),e.setSelectionRange(0,t.length);return!!document.execCommand("copy")}catch(i){return!1}finally{e&&e.parentNode&&e.parentNode.removeChild(e)}}function $(t,e,i,s){if(!t)throw new Error("on(): element is required");t.addEventListener(e,i,s)}function _(t,e,i,s){if(!t)throw new Error("off(): element is required");t.removeEventListener(e,i,s)}function k(t,e=document){return e.querySelector(t)}function C(t){return t instanceof Element?t:"string"==typeof t?k(t):null}function E(t,e={}){if("undefined"==typeof document)throw new Error("newEl() can only be used in browser environment.");if(!1===e.dependency||"function"==typeof e.dependency&&!e.dependency())return"";const{is:i,className:s,id:n,attrs:o,style:r,events:a,text:h,html:l,children:c}=e,d=i?document.createElement(t,{is:i}):document.createElement(t);if(s&&(d.className=s),n&&(d.id=n),o&&"object"==typeof o)for(const[u,m]of Object.entries(o))null!=m&&d.setAttribute(u,String(m));if(r&&"object"==typeof r)for(const[u,m]of Object.entries(r))null!=m&&(d.style[u]=m);if(a&&"object"==typeof a)for(const[u,m]of Object.entries(a))"function"==typeof m&&$(d,u,m);return void 0!==c?Array.isArray(c)?d.append(...c):"string"==typeof c?d.innerHTML=c:c instanceof Node&&d.appendChild(c):void 0!==l?d.innerHTML=l:void 0!==h&&(d.textContent=h),d}const j="undefined"!=typeof window?`${window.location.origin}/wp-json/`:"";const T=Object.freeze(Object.defineProperty({__proto__:null,computed:function(t){let e,i=!0;const s={i:!0,get value(){return h(s,"value"),i&&(e=t(),i=!1),e}};return c(()=>{t()},{scheduler:()=>{i||(i=!0,l(s,"value"))}}),s},copy:async function(t){return"undefined"==typeof window||"undefined"==typeof document?Promise.resolve(!1):("string"!=typeof t&&(t=String(t)),navigator.clipboard&&"function"==typeof navigator.clipboard.writeText?navigator.clipboard.writeText(t).then(()=>!0).catch(()=>x(t)):Promise.resolve(x(t)))},destroyAll:function(){for(const{instance:e}of i.values())if("function"==typeof e.destroy)try{e.destroy()}catch(t){}i.clear();for(const e of s.values())clearTimeout(e);s.clear()},effect:c,escapeHtml:function(t){const e={"&":"&","<":"<",">":">",'"':""","'":"'"};return String(t).replace(/[&<>"']/g,t=>e[t])},getCookie:y,getEl:C,getLang:w,getLanguages:function(){return n},getLocale:b,getType:d,isClass:t=>"function"==typeof t&&/^class\s/.test(Function.prototype.toString.call(t)),isFunction:u,isMobile:function(){if("undefined"==typeof navigator)return!1;if(navigator.userAgentData)return navigator.userAgentData.mobile;const t=navigator.userAgent;return/android|iphone|ipad|ipod|blackberry|iemobile|opera mini|mobile/i.test(t)},log:function(t="info",...e){"undefined"!=typeof window&&console[t](...e)},manager:p,newEl:E,off:_,on:$,postJson:async function(t,e){return(await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})).json()},q:k,randomId:v,reactive:function t(e){if("object"!=typeof e||null===e)return e;if(a.has(e))return a.get(e);const i=new Proxy(e,{get(e,i,s){const n=Reflect.get(e,i,s);return h(e,i),"object"==typeof n&&null!==n?t(n):n},set(t,e,i,s){const n=t[e],o=Reflect.set(t,e,i,s);return n!==i&&l(t,e),o}});return a.set(e,i),i},ref:function(t){const e={o:t,get value(){return h(e,"value"),this.o},set value(t){t!==this.o&&(this.o=t,l(e,"value"))}};return e},release:f,removeCookie:function(t){return document.cookie=`${t}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`,!y(t)},restUrl:j,setCookie:function(t,e,i=86400){const s=new Date(Date.now()+1e3*i).toUTCString();return document.cookie=[`${t}=${e}`,`expires=${s}`,"path=/","sameSite=strict"].join("; "),y(t)===e},setLanguages:function(t){n=t},singleton:(t,e=[],n="",o=!1,r=null)=>{if(!u(t))throw new Error("First argument expects a class/constructor function.");if(!Array.isArray(e))throw new Error("Second argument must be an array of arguments.");if("string"!=typeof n)throw new Error("Third argument expects a string.");if("boolean"!=typeof o)throw new Error("Fourth argument expects a boolean.");if("number"!=typeof r&&null!==r)throw new Error("Fifth argument expects a number or null.");const a=""===n.trim()?v():n;if(i.has(a)&&!o)return i.get(a).proxy;const h=new t(...e),l=new Proxy(h,{get:(t,e,i)=>(r&&function(t,e){s.has(t)&&clearTimeout(s.get(t));const i=setTimeout(()=>{f(t)},e);s.set(t,i)}(a,r),Reflect.get(t,e,i)),set:(t,e,i,s)=>Reflect.set(t,e,i,s)});return i.set(a,{instance:h,proxy:l}),l},t:g,track:h,trigger:l,uuid:function(){if("function"==typeof crypto.randomUUID)return crypto.randomUUID();const t=new Uint8Array(16);if("function"!=typeof crypto.getRandomValues)throw new Error("Your browser is too old to support secure login.");crypto.getRandomValues(t),t[6]=15&t[6]|64,t[8]=63&t[8]|128;const e=Array.from(t).map(t=>t.toString(16).padStart(2,"0")).join("");return[e.slice(0,8),e.slice(8,12),e.slice(12,16),e.slice(16,20),e.slice(20,32)].join("-")},validate:m},Symbol.toStringTag,{value:"Module"})),S=class t{constructor(){this.bindings=new Map,this.instances=new Map,this.serviceData=new Map}static run(){return t.h||(t.h=new t),t.h}bind(t,e,i={}){var s,n,o;if("function"==typeof e){return/^[A-Z]/.test(e.name)||e.prototype&&Object.getOwnPropertyNames(e.prototype).length>1?this.bindClass(t,e,null!=(s=i.singleton)&&s,null!=(n=i.deps)?n:[]):this.bindFactory(t,e,null!=(o=i.singleton)&&o)}return this.bindValue(t,e)}bindClass(t,e,i=!1,s=[]){if("function"!=typeof e)throw new TypeError("bindClass expects a constructor, got "+typeof e);return this.bindings.set(t,{type:"class",Class:e,singleton:i,deps:Array.isArray(s)?s:[]}),this}bindValue(t,e){return this.bindings.set(t,{type:"value",value:e}),this.instances.set(t,e),this}bindFactory(t,e,i=!1){if("function"!=typeof e)throw new TypeError("bindFactory expects a function, got "+typeof e);return this.bindings.set(t,{type:"factory",factory:e,singleton:i}),this}get(t,...e){const i=this.bindings.get(t);if(!i)throw new Error(`Service "${t}" is not bound in the container.`);if("value"===i.type)return i.value;if("factory"===i.type){const s=i.singleton&&0===e.length;if(s&&this.instances.has(t))return this.instances.get(t);const n=i.factory(this,...e);return s&&this.instances.set(t,n),n}if("class"===i.type){const s=i.singleton&&0===e.length;if(s&&this.instances.has(t))return this.instances.get(t);const n=[];for(const e of i.deps){if(!this.bindings.has(e))throw new Error(`Dependency "${e}" required by "${t}" is not bound in the container.`);n.push(this.get(e))}const o=[...n,...e],r=new i.Class(...o);return s&&this.instances.set(t,r),r}throw new Error(`Unknown binding type for service "${t}".`)}has(t){return this.bindings.has(t)}reset(){this.bindings.clear(),this.instances.clear()}setData(t,e,i){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);this.serviceData.get(t).set(e,i)}getData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);return this.serviceData.get(t).get(e)}hasData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);return this.serviceData.get(t).has(e)}removeData(t,e){if(!this.serviceData.has(t))throw new Error(`Service [${t}] does not exist.`);this.serviceData.get(t).delete(e)}};e(S,"_instance",null),e(S,"PARAM",Symbol("PARAM"));let M=S;class A{constructor(){this.options={}}setOptions(t){this.options={...this.options,...t}}setItem(t,e,i){let s=`${encodeURIComponent(t)}=${encodeURIComponent(e)}`;if(i){const t=new Date;t.setTime(t.getTime()+1e3*i),s+=`; expires=${t.toUTCString()}`}for(const[n,o]of Object.entries(this.options))!0===o?s+=`; ${n}`:!1!==o&&null!=o&&(s+=`; ${n}=${o}`);document.cookie=s}getItem(t){const e=document.cookie.split(";");for(const i of e){const[e,s]=i.trim().split("=");if(e===encodeURIComponent(t))return decodeURIComponent(s)}return null}removeItem(t){this.setItem(t,"",-1)}clear(){const t=document.cookie.split(";");for(const e of t){const t=e.split("=")[0].trim();this.removeItem(decodeURIComponent(t))}}hasItem(t){return null!==this.getItem(t)}}class N{setItem(t,e){localStorage.setItem(t,JSON.stringify(e))}getItem(t){const e=localStorage.getItem(t);try{return JSON.parse(e)}catch(i){return e}}removeItem(t){localStorage.removeItem(t)}clear(){localStorage.clear()}hasItem(t){return null!==localStorage.getItem(t)}}class L{constructor(){this.options={dbName:"StoreDB",version:1,storeName:"data"},this.db=null,this.l()}setOptions(t){this.options={...this.options,...t},this.db&&(this.db.close(),this.l())}l(){const{dbName:t,version:e,storeName:i}=this.options,s=indexedDB.open(t,e);s.onupgradeneeded=t=>{this.db=t.target.result,this.db.objectStoreNames.contains(i)||this.db.createObjectStore(i,{keyPath:"key"})},s.onsuccess=t=>{this.db=t.target.result},s.onerror=t=>{console.error("Failed to open IndexedDB:",t.target.error)}}u(t,e){if(!this.db)throw new Error("IndexedDB is not initialized.");const{storeName:i}=this.options;e(this.db.transaction([i],t).objectStore(i))}setItem(t,e,i){const s={key:t,value:e,expire:i?Date.now()+1e3*i:null};this.u("readwrite",t=>{t.put(s)})}getItem(t){return new Promise((e,i)=>{this.u("readonly",s=>{const n=s.get(t);n.onsuccess=()=>{const t=n.result;t&&(!t.expire||t.expire>Date.now())?e(t.value):e(null)},n.onerror=()=>{i(new Error("Failed to get item from IndexedDB."))}})})}removeItem(t){this.u("readwrite",e=>{e.delete(t)})}clear(){this.u("readwrite",t=>{t.clear()})}hasItem(t){return new Promise((e,i)=>{this.u("readonly",s=>{const n=s.get(t);n.onsuccess=()=>{e(!!n.result)},n.onerror=()=>{i(new Error("Failed to check item existence in IndexedDB."))}})})}}let H=null;class I{constructor(t){this.value=t,this.observers=new Set}read(){return H&&(this.observers.add(H),H.deps.add(this)),this.value}write(t){if(this.value!==t){this.value=t;for(const t of this.observers)t.schedule()}}}class O{constructor(t){this.fn=t,this.deps=new Set,this.scheduled=!1,this.schedule=()=>{this.scheduled||(this.scheduled=!0,(t=>{Promise.resolve().then(t)})(()=>{this.scheduled=!1,this.execute()}))},this.execute()}execute(){for(const e of this.deps)e.observers.delete(this);this.deps.clear();const t=H;H=this;try{this.fn()}finally{H=t}}}function D(t){const e=new I(t);return[()=>e.read(),t=>e.write("function"==typeof t?t(e.value):t)]}function F(t){new O(t)}const q=Object.freeze(Object.defineProperty({__proto__:null,createEffect:F,createMemo:function(t){let e;const[i,s]=D(void 0);return F(()=>{e=t(),s(e)}),i},createSignal:D},Symbol.toStringTag,{value:"Module"})),P=class t{constructor(e){this.options=Object.assign({title:"Tip",content:"",position:"center",confirmText:"Confirm",cancelText:"Cancel",showCancel:!0,showClose:!0,fullscreen:!1,onShow:null,onShown:null,onHide:null,onHidden:null,onConfirm:null,onSubmit:null,fields:null,header:!0,footer:!0,style:null,id:null,escClose:!1,bgClose:!1,lazy:!1},e),this.m(this.options),this.l(this.options),t.instances.add(this)}l(t){this.isVisible=!1,this.fields=null,this.p={},this.root=null,this.v=null,this.$=t.fields?JSON.parse(JSON.stringify(t.fields)):[],t.lazy||this._(t)}get modal(){return this.root?k(".j-modal",this.root):null}get form(){return this.modal?k(".j-form",this.modal):null}get confirmBtn(){return this.modal?k(".modal-confirm",this.modal):null}get cancelBtn(){return this.modal?k(".modal-cancel",this.modal):null}_(t){if(this.root)return;const{header:e,id:i,title:s,position:n}=t,o=e?"aria-labelledby":"aria-label",r=e?`${i}_title`:s||"Modal",a=E("div",{className:`j-popup-layout is-${n}`,attrs:{role:"dialog","aria-modal":"true",[o]:r},children:[this.C(t)]});return this.root=a,a}C(t){const{fullscreen:e,style:i,id:s}=t;return E("div",{className:e?"j-modal is-fullscreen":"j-modal",id:s,attrs:{role:"document",style:i||null},children:[this.j(t),this.T(t),this.S(t)]})}j(t){const{id:e,title:i,header:s,showClose:n}=t;return E("div",{className:"modal-header",html:`<div class="modal-title" id="${e}_title">${i}</div>${n?'<icon class="modal-close" data-action="close" role="button" aria-label="close" tabindex="0">×</icon>':""}`,dependency:()=>s})}S(t){const{showCancel:e,cancelText:i,confirmText:s,footer:n}=t;return E("div",{className:"modal-footer",html:`${e?`<button type="button" class="j-button is-ghost modal-cancel" data-action="close">${i}</button>`:""}<button type="button" class="j-button is-primary modal-confirm" data-action="confirm">${s}</button>`,dependency:()=>n})}T(t){const{fields:e,content:i}=t;return E("div",{className:"modal-body",html:`${e?`<div class="modal-form-container">${this.M(t).outerHTML}</div>`:i}`})}M(t){return E("form",{className:"j-form is-vertical is-item-vertical",children:[...this.A(t.fields)]})}A(t){const e=[];for(const i of t){const t=E("div",{className:"form-item",html:this.N(i)});e.push(t)}return e}N(t){switch(t.type){case"textarea":return this.L(t);case"select":return this.H(t);default:return this.I(t)}}I(t){let e="";const{type:i,required:s,id:n,label:o,name:r,placeholder:a,value:h,disabled:l}=t,c=n||v();switch(i){case"password":e="current-password";break;case"email":e="email";break;default:e="on"}return`<label class="item-label ${s?"is-required":""}" for="${c}">${o}</label><div class="form-control"><input type="${i||"text"}" class="j-input" name="${r}" id="${c}" placeholder="${a||""}" value="${h||""}" ${s?"required":""} ${l?"disabled":""} autocomplete="${e}"/></div>`}L(t){const{required:e,id:i,label:s,name:n,placeholder:o,value:r,disabled:a}=t,h=i||v();return`<label class="item-label ${e?"is-required":""}" for="${h}">${s}</label><div class="form-control"><textarea class="j-textarea" name="${n}" id="${h}" placeholder="${o||""}" ${e?"required":""} ${a?"disabled":""}>${r||""}</textarea></div>`}H(t){let e="";const{options:i,required:s,id:n,label:o,name:r,disabled:a}=t,h=n||v();if(i)for(const l of i)e+=`<option value="${l.value}" ${l.selected?"selected":""} ${l.disabled?"disabled":""}>${l.text}</option>`;return`<label class="item-label ${s?"is-required":""}" for="${h}">${o}</label><div class="form-control"><select class="j-select" name="${r}" id="${h}" autocomplete="off" ${s?"required":""} ${a?"disabled":""}>${e}</select></div>`}m(t){const{title:e,content:i,position:s,confirmText:n,cancelText:o,showCancel:r,showClose:a,fullscreen:h,header:l,footer:c,escClose:d,bgClose:u,style:f,id:p,onShow:b,onShown:w,onHide:g,onHidden:y,onConfirm:x,onSubmit:$,fields:_,lazy:k}=t;m("title",e,"string"),m("content",i,["string","HTMLElement"]),m("position",s,"string"),m("confirmText",n,"string"),m("cancelText",o,"string"),m("showCancel",r,"boolean"),m("showClose",a,"boolean"),m("fullscreen",h,"boolean"),m("header",l,"boolean"),m("footer",c,"boolean"),m("escClose",d,"boolean"),m("bgClose",u,"boolean"),m("style",f,["string","null"]),m("id",p,["string","null"]),m("onShow",b,["function","null"]),m("onShown",w,["function","null"]),m("onHide",g,["function","null"]),m("onHidden",y,["function","null"]),m("onConfirm",x,["function","null"]),m("onSubmit",$,["function","null"]),m("fields",_,["array","null"]),m("lazy",k,"boolean"),p&&p.trim()||(this.options.id=v())}O(t){if(!(t instanceof Element))return;const e=k(".modal-close",t);e&&(e.style.width=`${e.clientHeight}px`,e.style.transform=`translateX(${e.clientHeight/3}px)`)}D(t,e){this.F(t,e),this.P(t,e),this.R(e)}F(t,e){t&&e.bgClose&&(this.p.bg=e=>{e.target===t&&this.hide()},$(t,"click",this.p.bg))}P(t,e){t&&e.escClose&&(this.p.esc=t=>{"Escape"===t.key&&this.isVisible&&this.hide()},$(document,"keydown",this.p.esc))}R(t){this.p.inside=e=>{const i=e.target.dataset.action;"confirm"===i||"submit"===i?this.B(t):("cancel"===i||"close"===i||e.target.classList.contains("modal-close"))&&this.hide()},this.modal.addEventListener("click",this.p.inside)}B(t){if(this.form&&t.fields.length>0){this.form.dispatchEvent(new Event("submit"));const e=new FormData(this.form),i={};for(const[t,s]of e.entries())i[t]=s;this.fields=i,null!==this.v&&"object"==typeof this.v&&this.fields&&(this.fields=Object.assign(this.fields,this.v)),this.V(t,this.fields)}else this.Z(t)}U(){this.form&&this.$&&(k(".modal-form-container",this.modal).innerHTML=this.M({fields:this.$}).outerHTML)}async Z(t){t.onConfirm&&await Promise.resolve(t.onConfirm()),this.hide()}async V(t,e){t.onSubmit&&(await Promise.resolve(this.options.onSubmit(e)),this.v=null)}J(){const t=[{k:"esc",t:document,e:"keydown"},{k:"bg",t:this.root,e:"click"},{k:"inside",t:this.modal,e:"click"}];for(const{k:e,t:i,e:s}of t)this.p[e]&&(_(i,s,this.p[e]),delete this.p[e])}show(){if(!t.instances.has(this))throw new Error("Modal: The current instance has been destroyed.");if(this.isVisible)return;const{lazy:e,onShow:i,onShown:s}=this.options;e&&!this.root&&this._(this.options),i&&i(),document.body.appendChild(this.root),document.body.style.overflow="hidden",this.O(this.modal),this.isVisible=!0,this.D(this.root,this.options);const n=k('input, select, textarea, [tabindex]:not([tabindex="-1"])',this.modal);n&&n.focus(),s&&s()}hide(){if(!this.isVisible||!this.root)return;const{onHide:t,onHidden:e}=this.options;t&&t();this.modal.style.transition="opacity 0.3s ease, transform 0.3s ease",this.modal.style.opacity="0",this.modal.style.transform="scale(0)",this.isVisible=!1,this.v=null,this.fields=null,this.U(),setTimeout(()=>{this.root.parentNode.removeChild(this.root),document.body.style.overflow="",this.modal.style.cssText="",this.J(),e&&e()},300)}setFields(t){if(this.form)for(const e of Object.keys(t)){const i=k(`[name="${e}"]`,this.form);i&&("checkbox"===i.type||"radio"===i.type?i.checked=t[e]:i.value=t[e])}}addFields(t){if("object"!=typeof t)throw new Error("Modal: The data expects an object");this.v=t}setContent(t){if(!this.modal)return;if(this.options.fields)throw new Error("Modal.setContent: Cannot setContent when fields are defined.");const e=k(".modal-body",this.modal);e&&("string"==typeof t?e.innerHTML=t:t instanceof HTMLElement&&(e.innerHTML="",e.appendChild(t)),this.options.content=t)}showLoading(){if(k(".j-loading",this.modal))return;const t=E("div",{className:"j-loading is-active",html:'<div class="loading-spinner"></div>'});this.modal.insertAdjacentHTML("beforeend",t.outerHTML),this.confirmBtn&&(this.confirmBtn.disabled=!0),this.cancelBtn&&(this.cancelBtn.disabled=!0)}hideLoading(){const t=k(".j-loading",this.modal);t&&(t.parentNode&&t.parentNode.removeChild(t),this.confirmBtn&&(this.confirmBtn.disabled=!1),this.cancelBtn&&(this.cancelBtn.disabled=!1))}destroy(){this.isVisible?this.hide():this.root&&this.root.parentNode&&(this.root.parentNode.removeChild(this.root),document.body.style.overflow="",this.modal.style.cssText=""),this.J(),this.root=null,this.fields=null,this.v=null,this.p={},this.options=null,this.isVisible=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(P,"instances",new Set);let R=P;class z{X(){}static show(t="",e=3e3,i="info"){z.Y(t,e,i);let s=document.querySelector(".j-toast-container");s||(s=E("div",{className:"j-toast-container"}),document.body.appendChild(s));const n=z.G(i),o=E("div",{className:`j-toast is-${i}`,attrs:{"data-toast":v()},html:`<span class="toast-icon">${n}</span>\n <span class="toast-message">${t}</span>`});return s.appendChild(o),setTimeout(()=>{o.classList.add("toast-show")},10),e>0&&setTimeout(()=>{z.hide(o)},e),$(o,"click",()=>{z.hide(o)}),o}static success(t="",e=3e3){return z.show(t,e,"success")}static info(t="",e=3e3){return z.show(t,e,"info")}static warning(t="",e=3e3){return z.show(t,e,"warning")}static error(t="",e=3e3){return z.show(t,e,"error")}static hide(t){t&&(t.classList.remove("toast-show"),t.classList.add("toast-hide"),setTimeout(()=>{t.parentNode&&t.parentNode.removeChild(t);const e=document.querySelector(".j-toast-container");e&&0===e.children.length&&e.parentNode.removeChild(e)},300))}static lite(t="",e=2e3){if("string"!=typeof t)throw new Error("Lite toast message expects a string");if("number"!=typeof e||e<=0)throw new Error("Lite toast duration expects a number greater than 0");const i=document.querySelector(".j-toast-lite");i&&i.remove();const s=E("div",{className:"j-toast-lite",text:t});return document.body.appendChild(s),setTimeout(()=>s.classList.add("is-show"),10),setTimeout(()=>{s.classList.remove("is-show"),s.classList.add("is-hide"),setTimeout(()=>s.remove(),300)},e),s}static Y(t,e,i){if("string"!=typeof t)throw new Error("Toast message expects a string");if("number"!=typeof e||e<=0)throw new Error("Toast duration expects a positive number or 0.");if(!["info","success","warning","error"].includes(i))throw new Error("Toast type expects one of [info, success, warning, error]")}static G(t){const e={success:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M4 12C4 7.58172 7.58172 4 12 4C16.4183 4 20 7.58172 20 12C20 16.4183 16.4183 20 12 20C7.58172 20 4 16.4183 4 12ZM12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2ZM17.4571 9.45711L16.0429 8.04289L11 13.0858L8.20711 10.2929L6.79289 11.7071L11 15.9142L17.4571 9.45711Z"></path></svg>',error:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM12 10.5858L14.8284 7.75736L16.2426 9.17157L13.4142 12L16.2426 14.8284L14.8284 16.2426L12 13.4142L9.17157 16.2426L7.75736 14.8284L10.5858 12L7.75736 9.17157L9.17157 7.75736L12 10.5858Z"></path></svg>',warning:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM11 15H13V17H11V15ZM11 7H13V13H11V7Z"></path></svg>',info:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12 22C6.47715 22 2 17.5228 2 12 2 6.47715 6.47715 2 12 2 17.5228 2 22 6.47715 22 12 22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12 20 7.58172 16.4183 4 12 4 7.58172 4 4 7.58172 4 12 4 16.4183 7.58172 20 12 20ZM13 10.5V15H14V17H10V15H11V12.5H10V10.5H13ZM13.5 8C13.5 8.82843 12.8284 9.5 12 9.5 11.1716 9.5 10.5 8.82843 10.5 8 10.5 7.17157 11.1716 6.5 12 6.5 12.8284 6.5 13.5 7.17157 13.5 8Z"></path></svg>'};return e[t]||e.info}}const B=class t{constructor(t){this.options=Object.assign({content:"",overlay:!0,filter:!0,direction:"left",animation:"slide",bgClose:!0,escClose:!0,id:null,onShow:null,onShown:null,onHide:null,onHidden:null},t),this.W(this.options),this.l(this.options)}W(t){const{content:e,overlay:i,filter:s,direction:n,animation:o,bgClose:r,escClose:a,id:h,onShow:l,onShown:c,onHide:d,onHidden:u}=t;m("content",e,["string","HTMLElement"]),m("overlay",i,"boolean"),m("filter",s,"boolean"),m("direction",n,"string",[{test:t=>["top","right","bottom","left"].includes(t),message:"expects one of [top, right, bottom, left]"}]),m("animation",o,"string",[{test:t=>["slide","push","none"].includes(t),message:"expects one of [slide, push, none]"}]),m("bgClose",r,"boolean"),m("escClose",a,"boolean"),m("id",h,["string","null"]),m("onShow",l,["function","null"]),m("onShown",c,["function","null"]),m("onHide",d,["function","null"]),m("onHidden",u,["function","null"]),h&&h.trim()||(this.options.id=v())}l(t){this.isVisible=!1,t.overlay&&(this.K=this.tt(t)),this.root=this._(t),this.p={}}et(t){"Escape"===t.key&&this.isVisible&&this.hide()}D(){const{bgClose:t,escClose:e}=this.options;this.p={overlay:this.hide.bind(this),esc:t=>this.et(t),close:t=>{const e=t.target.dataset.action;"close"!==e&&"cancel"!==e||this.hide()}},this.K&&t&&$(this.K,"click",this.p.overlay),e&&$(document,"keydown",this.p.esc),$(this.root,"click",this.p.close)}it(){this.K&&this.p.overlay&&(_(this.K,"click",this.p.overlay),delete this.p.overlay),this.p.esc&&(_(document,"keydown",this.p.esc),delete this.p.esc),this.p.close&&(_(this.root,"click",this.p.close),delete this.p.close)}tt(t){const e=t.filter,i=e?"backdropFilter":"",s=e?"blur(2px)":"";return E("div",{className:"j-offcanvas-overlay",style:{[i]:s}})}_(t){const{id:e,direction:i,animation:s,content:n}=t;return E("div",{className:`j-offcanvas ${i?`is-${i}`:""} ${s?`is-${s}`:""}`,id:e,children:E("div",{className:"offcanvas-content",children:n})})}st(){const{overlay:t,animation:e,direction:i}=this.options;if(t&&document.body.appendChild(this.K),document.body.appendChild(this.root),document.body.style.overflow="hidden","push"===e){document.body.classList.add("offcanvas-push-body");const t=window.scrollY;this.K.style.top=`${t}px`,this.root.style.top=`${t}px`}setTimeout(()=>{this.K&&this.K.classList.add("is-active"),"push"===e&&document.body.classList.add(`offcanvas-push-${i}`),this.root.classList.add("is-active")},10)}nt(){const{animation:t,direction:e}=this.options;this.K&&this.K.classList.remove("is-active"),this.root.classList.remove("is-active"),"push"===t&&document.body.classList.remove(`offcanvas-push-${e}`),setTimeout(()=>{this.K&&this.K.parentNode&&this.K.parentNode.removeChild(this.K),this.root&&this.root.parentNode&&this.root.parentNode.removeChild(this.root),"push"===t&&document.body.classList.remove("offcanvas-push-body"),document.body.style.overflow=""},100)}async show(){const{onShow:t,onShown:e}=this.options;this.isVisible||(t&&await Promise.resolve(t()),this.st(),this.D(),this.isVisible=!0,setTimeout(()=>{e&&e()},100))}async hide(){const{onHide:t,onHidden:e}=this.options;this.isVisible&&(t&&await Promise.resolve(t()),this.it(),this.nt(),this.isVisible=!1,e&&e())}destroy(){this.hide(),this.options=null,this.root=null,this.p={},t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(B,"instances",new Set);let V=B;const Z=class t{constructor(t={}){this.options=Object.assign({mode:"dark",render:"dark",theme:"indigo",radius:"sm",shadow:"sm",font:"sm",key:"jui-theme"},t),this.languages={en:{b:"Back",t:"Customize",d:"Customize your UI experience.",theme:"Theme",radius:"Radius",shadow:"Shadow",font:"Font",mode:"Mode",gray:"Gray",olive:"Olive",tomato:"Tomato",ruby:"Ruby",pink:"Pink",violet:"Violet",indigo:"Indigo",blue:"Blue",teal:"Teal",grass:"Grass",mint:"Mint",lime:"Lime",yellow:"Yellow",orange:"Orange",gold:"Gold",n:"None",sm:"Small",md:"Medium",lg:"Large",xl:"XL",light:"Light",dark:"Dark",auto:"Auto"},zh:{b:"返回",t:"自定义主题",d:"自定义您的UI体验。",theme:"主题",radius:"圆角",shadow:"阴影",font:"字体",mode:"模式",gray:"灰色",olive:"橄榄绿",tomato:"番茄红",ruby:"红宝石",pink:"粉红",violet:"紫罗兰",indigo:"靛蓝",blue:"蓝色",teal:"青色",grass:"草绿",mint:"薄荷绿",lime:"酸橙绿",yellow:"黄色",orange:"橙色",gold:"金色",n:"无",sm:"小",md:"中",lg:"大",xl:"更大",light:"浅色",dark:"深色",auto:"自动"}},this.l()}l(){this.p={},this.mq=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)"),this.ot(),this.rt(this.options),this.ht(),this.lt(document)}ct(t){return g(t,this.languages)}ot(){try{const t=localStorage.getItem(this.options.key);if(t){const e=JSON.parse(t);this.options=Object.assign({},this.options,e)}}catch(t){}}dt(t){const e=this.mq&&this.mq.matches?"dark":"light";this.options.render="auto"===this.options.mode?e:this.options.mode;const i=JSON.stringify(t);localStorage.setItem(this.options.key,i)}ut(){const t=[],e=document.documentElement;for(const i of e.classList)"light"!==i&&"dark"!==i||t.push(i),(i.startsWith("j-theme-")||i.startsWith("j-radius-")||i.startsWith("j-shadow-")||i.startsWith("j-font-"))&&t.push(i);t.length&&e.classList.remove(...t)}ft(){const t=document.documentElement,{mode:e}=this.options;if("auto"===e){const e=this.mq&&this.mq.matches?"dark":"light";t.classList.remove("light","dark"),t.classList.add(e)}else t.classList.remove("light","dark"),t.classList.add("dark"===e?"dark":"light")}rt(t){this.ut(),this.ft();document.documentElement.classList.add(`j-theme-${t.theme}`,`j-radius-${t.radius}`,`j-shadow-${t.shadow}`,`j-font-${t.font}`)}lt(t=document){const e=t.querySelectorAll(".palette-item");for(const i of e){const t=i.dataset.palette,e=this.options[t],s=i.querySelectorAll("button[data-palette]");for(const i of s){const t=i.dataset.palette===(void 0===e?null:e);i.classList.toggle("is-active",t)}}}ht(){this.p.click=t=>{const e=t.target.closest(".palette-item .items > button[data-palette]");if(!e)return;const i=e.closest(".palette-item");if(!i)return;const s=i.dataset.palette,n=e.dataset.palette;e.classList.contains("is-active")||(this.options[s]=n,this.rt(this.options),this.dt(this.options),this.lt())},$(document.body,"click",this.p.click)}bt(){_(document.body,"click",this.p.click)}createPanel(t="j-theme-palette",e=null){const i=e||[{title:this.ct("theme"),type:"theme",buttons:[["gray",this.ct("gray")],["olive",this.ct("olive")],["tomato",this.ct("tomato")],["ruby",this.ct("ruby")],["pink",this.ct("pink")],["violet",this.ct("violet")],["indigo",this.ct("indigo")],["blue",this.ct("blue")],["teal",this.ct("teal")],["grass",this.ct("grass")],["mint",this.ct("mint")],["lime",this.ct("lime")],["yellow",this.ct("yellow")],["orange",this.ct("orange")],["gold",this.ct("gold")]]},{title:this.ct("radius"),type:"radius",buttons:[["none",this.ct("n")],["sm",this.ct("sm")],["md",this.ct("md")],["lg",this.ct("lg")],["xl",this.ct("xl")]]},{title:this.ct("shadow"),type:"shadow",buttons:[["none",this.ct("n")],["sm",this.ct("sm")],["md",this.ct("md")],["lg",this.ct("lg")]]},{title:this.ct("font"),type:"font",buttons:[["sm",this.ct("sm")],["md",this.ct("md")]]},{title:this.ct("mode"),type:"mode",buttons:[["light",this.ct("light")],["dark",this.ct("dark")],["auto",this.ct("auto")]]}],s=[],n=`<div class="text-center"><button class="j-button is-text" data-action="close">${this.ct("b")}</button></div><h3>${this.ct("t")}</h3><p class="mt-0 text-sm">${this.ct("d")}</p><div class="palette-container">`;s.push(n);for(const o of i){s.push(`<div class="palette-item" data-palette="${o.type}"><div class="item-title">${o.title}</div><div class="items">`);for(const[t,e]of o.buttons){const i=String(this.options[o.type])===String(t)?" is-active":"",n="theme"===o.type?`<span class="el-prefix item-hex bg-${t}-10"></span>`:"";s.push(`<button class="j-button is-default${i}" data-palette="${t}">${n}<span class="button-text">${e}</span></button>`)}s.push("</div></div>")}s.push("</div>");return E("div",{className:t,html:s.join("")})}setConfig(t){this.options=Object.assign({},this.options,t),this.rt(this.options),this.dt(this.options),this.lt(document)}destroy(){this.bt(),this.options={},this.languages={},this.p={},this.mq=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(Z,"instances",new Set);let U=Z;const J=class t{constructor(t,e={}){if(!1!==t&&!(t instanceof HTMLElement))throw new Error("Element expects a valid HTMLElement or false.");this.options=Object.assign({id:null,direction:"top",active:0,disabled:[],onChange:null,tabs:[],onAdd:null,onRemove:null},e),this.m(this.options),this.l(t)}l(t){this.root=t,this.current=null,this.p={},this.wt=[];const{tabs:e,disabled:i,active:s}=this.options;if(!1===this.root&&(this.root=this._(e)),0===this.tabs.length||0===this.panels.length)throw new Error(".tab-item or .panel-item not found.");this.wt=this.gt(i),this.vt(),this.D(),this.yt(s,!1),this.xt()}get tabs(){return this.root?Array.from(this.root.querySelectorAll(".tab-item")):[]}get panels(){return this.root?Array.from(this.root.querySelectorAll(".panel-item")):[]}get $t(){return this.root?this.root.querySelector(".tab-wrap"):null}get _t(){return this.root?this.root.querySelector(".tab-list"):null}m(t){const{id:e,direction:i,active:s,disabled:n,onChange:o,tabs:r,onAdd:a,onRemove:h}=t;m("id",e,["string","null"]),m("direction",i,"string",[{test:t=>["top","bottom","left","right"].includes(t),message:"direction expects one of [top, bottom, left, right]"}]),m("active",s,["number","string"]),m("disabled",n,["number","string","array"]),m("tabs",r,["array"]),m("onChange",o,["function","null"]),m("onAdd",a,["function","null"]),m("onRemove",h,["function","null"]),e&&e.trim()||(this.options.id=v())}_(t){const{id:e,direction:i}=this.options,s=E("nav",{className:"tab-list"}),n=E("div",{className:"tab-wrap",children:s}),o=E("div",{className:"tab-panel"});for(const r of t){const t=E("div",{className:"tab-item",attrs:{"data-tab":r.name||v()},html:`<span>${r.title}</span>`});s.appendChild(t);const e=E("div",{className:"panel-item",html:`<div>${r.content}</div>`});o.appendChild(e)}return E("div",{className:"j-tabs",id:e,direction:`is-${i}`,children:[n,o]})}gt(t){if(null==t)return[];const e=t=>"number"==typeof t?t:"string"==typeof t?this.tabs.findIndex(e=>e.dataset.tab===t):-1;if(Array.isArray(t))return t.map(e).filter(t=>t>=0);{const i=e(t);return i>=0?[i]:[]}}vt(){for(const[t,e]of this.tabs.entries())this.wt.includes(t)?(e.setAttribute("disabled","true"),e.classList.add("is-disabled")):(e.removeAttribute("disabled"),e.classList.remove("is-disabled"))}D(){this.it(),this._t&&(this.p.tabClick=t=>{const e=t.target.closest(".tab-item");if(!e||!this.tabs.includes(e))return;const i=this.tabs.indexOf(e);i>=0&&!this.wt.includes(i)&&this.activate(i)},$(this._t,"click",this.p.tabClick))}it(){this._t&&this.p.tabClick&&_(this._t,"click",this.p.tabClick),this.p.tabClick=null}async yt(t,e=!0){const{onChange:i}=this.options,s=this.kt(t);if(!(s<0||s>=this.tabs.length||this.wt.includes(s)||this.current===s)){this.current=s;for(const[t,e]of this.tabs.entries())e.classList.toggle("is-active",t===s);for(const[t,e]of this.panels.entries())e.classList.toggle("is-active",t===s);if(e&&i){const t=this.tabs[s],e=this.panels[s],n=t&&t.dataset.tab||s;await Promise.resolve(i(s,n,t,e))}}}kt(t){return"number"==typeof t?t:"string"==typeof t?this.tabs.findIndex(e=>e.dataset.tab===t):-1}xt(){const{direction:t}=this.options;this.$t&&this._t&&(this.isVertical="left"===t||"right"===t,this.draggable=this.Ct(),this.draggable?(this.Et(),this.p.resize=()=>{cancelAnimationFrame(this.jt),this.jt=requestAnimationFrame(()=>{this.Tt()})},$(window,"resize",this.p.resize)):this.St())}Ct(){if(this.isVertical){return this._t.scrollHeight>this.$t.clientHeight+5}return this._t.scrollWidth>this.$t.clientWidth+5}Et(){this.St();const t=this.$t,e=this._t,i=this.isVertical;let s=0,n=0,o=0,r=!1;const a=t=>i?t.touches?t.touches[0].pageY:t.pageY:t.touches?t.touches[0].pageX:t.pageX,h=r=>{this.isDragging=!0,e.classList.add("dragging"),s=a(r),o=s,n=i?t.scrollTop:t.scrollLeft,this.Mt=0,cancelAnimationFrame(this.raf)},l=e=>{if(!this.isDragging)return;e.preventDefault();const h=a(e),l=s-h;this.Mt=o-h,o=h,r||(r=!0,requestAnimationFrame(()=>{r=!1,i?t.scrollTop=n+l:t.scrollLeft=n+l}))},c=()=>{this.isDragging&&(this.isDragging=!1,e.classList.remove("dragging"),this.At())};this.p.drag={onDragStart:h,onDragMove:l,onDragEnd:c},$(e,"mousedown",h),$(e,"touchstart",h,{passive:!0}),$(window,"mousemove",l,{passive:!1}),$(window,"touchmove",l,{passive:!1}),$(window,"mouseup",c),$(window,"touchend",c)}At(){const t=this.$t;let e=this.Mt;const i=this.isVertical;let s=performance.now();const n=o=>{const r=o-s;s=o,e*=.92,Math.abs(e)<.3||(i?t.scrollTop+=e*r*.05:t.scrollLeft+=e*r*.05,this.raf=requestAnimationFrame(n))};this.raf=requestAnimationFrame(n)}St(){if(!this.p.drag)return;const{onDragStart:t,onDragMove:e,onDragEnd:i}=this.p.drag;_(this._t,"mousedown",t),_(this._t,"touchstart",t),_(window,"mousemove",e),_(window,"touchmove",e),_(window,"mouseup",i),_(window,"touchend",i),this.p.drag=null}Tt(){this.xt()}async activate(t){await this.yt(t,!0)}async reInit(t={}){this.options=Object.assign({},this.options,t);const{disabled:e,active:i}=this.options;this.wt=this.gt(e),this.vt(),this.D(),await this.yt(i,!1),this.Tt()}async addTab(t){const{title:e,name:i,content:s}=t;if(!t||!e)return;const n=this.root.querySelector(".tab-panel");t.name=i||v();const o=E("div",{className:"tab-item",attrs:{"data-tab":t.name},html:`<span>${e}</span>`});this._t&&this._t.appendChild(o);const r=E("div",{className:"panel-item",html:`<div>${s}</div>`});n.appendChild(r),this.vt(),this.D();const{onAdd:a}=this.options;a&&await Promise.resolve(a(this.tabs.length-1,t,o,r)),this.Tt()}async deleteTab(t){if(this.tabs.length<=1)return;const e=this.kt(t);if(e<0||e>=this.tabs.length)return;const i=this.tabs[e],s=this.panels[e],n=i.dataset.tab||e;i&&i.parentNode&&i.parentNode.removeChild(i),s&&s.parentNode&&s.parentNode.removeChild(s),this.vt(),this.D();const{onRemove:o}=this.options;o&&await Promise.resolve(o(e,n)),i.classList.contains("is-active")&&await this.yt(this.tabs.length-1,!1),this.Tt()}disableTab(t){const e=this.kt(t);e>=0&&!this.wt.includes(e)&&(this.wt.push(e),this.vt(),this.D())}enableTab(t){const e=this.kt(t),i=this.wt.indexOf(e);i>=0&&(this.wt.splice(i,1),this.vt(),this.D())}destroy(){this.it();for(const t of this.tabs)t.classList.remove("is-active","is-disabled"),t.removeAttribute("disabled");for(const t of this.panels)t.classList.remove("is-active");const e=this._t;e&&(_(e.inner,"mousedown",this.Nt),_(e.inner,"touchstart",this.Nt),_(e.inner,"mousemove",this.Lt),_(e.inner,"touchmove",this.Lt),_(window,"mouseup",this.Ht),_(window,"touchend",this.Ht)),this.p.resize&&_(window,"resize",this.p.resize),this.root=null,this.options={},this.isVertical=!1,this.p={},t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(J,"instances",new Set);let X=J;const Y=class t{constructor(e,i={}){if(!1!==e&&!(e instanceof HTMLElement))throw new Error("Accordion: element expects a valid HTMLElement or false.");this.options=Object.assign({id:null,active:0,collapsible:!1,multiple:!1,onChange:null,items:[]},i),this.m(this.options),this.l(e,this.options),t.instances.add(this)}m(t){const{id:e,active:i,collapsible:s,multiple:n,onChange:o,items:r}=t;m("id",e,["string","null"]),m("active",i,["number","string"]),m("collapsible",s,"boolean"),m("multiple",n,"boolean"),m("onChange",o,["function","null"]),m("items",r,"array"),e&&e.trim()||(this.options.id=v())}l(t,e){if(this.root=t,this.p={},!1===this.root&&(this.root=this._(e)),0===this.headers.length||0===this.panels.length)throw new Error("Accordion: .accordion-header or .accordion-panel not found.");this.D(),null!=e.active&&this.yt(e.active,!1)}_(t){return E("div",{className:"j-accordion",id:t.id,children:this.It(t.items)})}It(t){if(!Array.isArray(t)||0===t.length)throw new Error("Accordion: items must be a non-empty array.");const e=document.createDocumentFragment();for(const i of t){if(i.name&&"string"!=typeof i.name)throw new Error("Accordion: item name expects a string.");const t=E("div",{className:"accordion-header",attrs:{"data-item":i.name||v()},html:`<span class="header-title">${i.title}</span><span class="header-arrow"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg></span>`}),s=E("div",{className:"accordion-panel"}),n=E("div",{className:"panel-content",children:i.content});s.appendChild(n),e.appendChild(t),e.appendChild(s)}return e}D(){this.it();const t=t=>{const e=t.target.closest(".accordion-header");e&&this.headers.includes(e)&&this.active(this.headers.indexOf(e))};$(this.root,"click",t),this.p.root=t}it(){const t=[{k:"root",t:this.root,e:"click"}];for(const{k:e,t:i,e:s}of t)this.p[e]&&(_(i,s,this.p[e]),delete this.p[e])}async yt(t,e=!0){const i=this.kt(t);if(i<0||i>=this.headers.length)return;const s=this.headers[i],n=this.panels[i],o=s&&s.dataset.item||i,r=s.classList.contains("is-active");if(!r||this.options.multiple||this.options.collapsible){if(this.options.multiple)r?(s.classList.remove("is-active"),n.classList.remove("is-active")):(s.classList.add("is-active"),n.classList.add("is-active"));else if(r)this.options.collapsible&&(s.classList.remove("is-active"),n.classList.remove("is-active"));else{for(const t of this.headers)t.classList.remove("is-active");for(const t of this.panels)t.classList.remove("is-active");s.classList.add("is-active"),n.classList.add("is-active")}e&&this.options.onChange&&await Promise.resolve(this.options.onChange(i,o,s,n))}}kt(t){return"number"==typeof t?t:"string"==typeof t?this.headers.findIndex(e=>e.dataset.item===t):-1}get headers(){return this.root?Array.from(this.root.querySelectorAll(".accordion-header")):[]}get panels(){return this.root?Array.from(this.root.querySelectorAll(".accordion-panel")):[]}get current(){const t=this.headers.find(t=>t.classList.contains("is-active"));return t?this.headers.indexOf(t):null}async active(t){return this.yt(t,!0),Promise.resolve()}setItems(t,e=0){if(!Array.isArray(t)||0===t.length)throw new Error("Accordion.setItems: items expects a non-empty array.");if("number"!=typeof e&&e<0)throw new Error("Accordion.setItems: active expects a positive number or 0.");this.options.items=[...t],this.options.active=e,this.it(),this.root.innerHTML="",this.root.append(this.It(t)),this.D(),this.yt(this.options.active)}destroy(){this.it();for(const t of this.headers)t.classList.remove("is-active");for(const t of this.panels)t.classList.remove("is-active");this.root=null,this.options={},this.Ot={},t.instances.delete(this)}destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(Y,"instances",new Set);let G=Y;const W=class t{constructor(t,e={}){if(!(t instanceof HTMLElement))throw new Error("Drop: element expects a valid HTMLElement.");this.target=t,this.options=Object.assign({name:null,mode:"click",position:"auto",offset:10,content:"",className:null,id:null,delay:0,hoverIntent:!0},e),this.m(this.options),this.l(this.options)}m(t){m("name",t.name,["string","null"]),m("mode",t.mode,["string"]),m("position",t.position,["string"],[{test:t=>["auto","top-left","top-center","top-right","bottom-left","bottom-center","bottom-right","left","right"].includes(t),message:"expects one of [auto, top-left, top-center, top-right, bottom-left, bottom-center, bottom-right, left, right]"}]),m("offset",t.offset,"number",[{test:t=>t>=0,message:"offset expects a positive number or 0."}]),m("content",t.content,["string","HTMLElement"]),m("className",t.className,["string","null"]),m("id",t.id,["string","null"]),m("delay",t.delay,["number","object"]),m("hoverIntent",t.hoverIntent,"boolean"),t.id&&t.id.trim()||(this.options.id=v())}l(t){this.isVisible=!1,this.root=null,this.p={},this.Dt={show:null,hide:null},this.Ft={x:0,y:0,lastMoveTime:0};const{delay:e}=t;"number"==typeof e&&e>=0?(this.delayShow=e,this.delayHide=e):"object"==typeof e&&null!==e?(this.delayShow=Number(e.show)||0,this.delayHide=Number(e.hide)||0):(this.delayShow=0,this.delayHide=0),this.p={show:this.show.bind(this),hide:this.hide.bind(this),toggle:this.toggle.bind(this),mouseMove:this.qt.bind(this),docClick:this.Pt.bind(this),startIntent:this.Rt.bind(this),cancelIntent:this.zt.bind(this)},this.Bt(t),this.D(t)}Bt(t){const{className:e,content:i,id:s,name:n}=t,o=e||"",r=i instanceof HTMLElement?i:E("div",{className:"drop-container",html:i}),a=E("div",{className:o?`j-drop ${o}`:"j-drop",id:s,attrs:{"data-drop":n||v()},children:r});this.root=a,document.body.appendChild(a)}D(t){const{mode:e,hoverIntent:i}=t;"hover"===e?(i?($(this.target,"mouseenter",this.p.startIntent),$(this.target,"mouseleave",this.p.cancelIntent)):($(this.target,"mouseenter",this.p.show),$(this.target,"mouseleave",this.p.hide)),$(this.root,"mouseenter",this.p.show),$(this.root,"mouseleave",this.p.hide)):"click"===e&&($(this.target,"click",this.p.toggle),$(document,"click",this.p.docClick))}it(){const{mode:t,hoverIntent:e}=this.options;"hover"===t?(e?(_(this.target,"mouseenter",this.p.startIntent),_(this.target,"mouseleave",this.p.cancelIntent)):(_(this.target,"mouseenter",this.p.show),_(this.target,"mouseleave",this.p.hide)),_(this.root,"mouseenter",this.p.show),_(this.root,"mouseleave",this.p.hide)):"click"===t&&(_(this.target,"click",this.p.toggle),_(document,"click",this.p.docClick)),_(document,"mousemove",this.p.mouseMove)}Rt(){$(document,"mousemove",this.p.mouseMove),clearTimeout(this.Dt.show),this.Dt.show=setTimeout(()=>{const t=Date.now()-this.Ft.lastMoveTime;Math.abs(this.Ft.x-this.Vt||0)+Math.abs(this.Ft.y-this.Zt||0)<5||t>100?(this.show(),_(document,"mousemove",this.p.mouseMove)):this.Rt()},this.delayShow)}zt(){clearTimeout(this.Dt.show),_(document,"mousemove",this.p.mouseMove),this.hide()}qt(t){this.Vt=t.clientX,this.Zt=t.clientY,this.Ft.lastMoveTime=Date.now(),this.Ft.x=t.clientX,this.Ft.y=t.clientY}Ut(){const t=this.target.getBoundingClientRect(),e=this.root,{offset:i,position:s}=this.options;e.style.visibility="hidden",e.style.display="block";const n=e.getBoundingClientRect();let o=0,r=0,a=s;if("auto"===a){a=window.innerHeight-t.bottom>n.height+i?"top-center":"bottom-center"}switch(a){case"top-left":o=t.top-n.height-i,r=t.left;break;case"top-center":o=t.top-n.height-i,r=t.left+t.width/2-n.width/2;break;case"top-right":o=t.top-n.height-i,r=t.right-n.width;break;case"bottom-left":o=t.bottom+i,r=t.left;break;case"bottom-center":o=t.bottom+i,r=t.left+t.width/2-n.width/2;break;case"bottom-right":o=t.bottom+i,r=t.right-n.width;break;case"left":o=t.top+t.height/2-n.height/2,r=t.left-n.width-i;break;case"right":o=t.top+t.height/2-n.height/2,r=t.right+i}o=Math.max(8,Math.min(o,window.innerHeight-n.height-8)),r=Math.max(8,Math.min(r,window.innerWidth-n.width-8)),e.style.top=`${o+window.scrollY}px`,e.style.left=`${r+window.scrollX}px`,e.style.visibility="",e.style.display=""}Pt(t){this.root.contains(t.target)||this.target.contains(t.target)||this.hide()}Jt(t){t?this.Ut():(this.root.style.top="",this.root.style.left=""),this.root.classList.toggle("is-active",t),this.isVisible=t}show(t=!0){clearTimeout(this.Dt.hide),this.isVisible||(t&&this.delayShow>0?(clearTimeout(this.Dt.show),this.Dt.show=setTimeout(this.Jt(!0),this.delayShow)):this.Jt(!0))}hide(t=!0){clearTimeout(this.Dt.show),this.isVisible&&(t&&this.delayHide>0?(clearTimeout(this.Dt.hide),this.Dt.hide=setTimeout(this.Jt(!1),this.delayHide)):this.Jt(!1))}toggle(){this.isVisible?this.hide():this.show()}destroy(){var e;clearTimeout(this.Dt.show),clearTimeout(this.Dt.hide),this.hide(!1),this.it(),(null==(e=this.root)?void 0:e.parentNode)&&this.root.parentNode.removeChild(this.root),this.options=null,this.root=null,this.target=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(W,"instances",new Set);let K=W;const Q=class t{constructor(t,e={}){if(!(t instanceof HTMLElement))throw new Error("Tooltip: element expects a valid HTMLElement.");const i=Object.assign({name:null,mode:"hover",position:"auto",offset:8,message:"",className:null,id:null,delay:100,hoverIntent:!0},e),s=this.Xt(i);this.drop=new K(t,{name:i.name,mode:i.mode,position:i.position,offset:i.offset,content:s,className:i.className,id:i.id,delay:i.delay,hoverIntent:i.hoverIntent})}Xt(t){if("string"!=typeof t.message||""===t.message.trim())throw new Error("Tooltip: message expects a string.");const e=E("div",{className:"tooltip-message",text:t.message});return E("div",{className:t.className?`j-tooltip ${t.className}`:"j-tooltip",children:e})}show(t=!0){this.drop.show(t)}hide(t=!0){this.drop.hide(t)}toggle(){this.drop.toggle()}destroy(){this.drop.destroy(),this.drop=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(Q,"instances",new Set);let tt=Q;const et=class t{constructor(t,e={},i=!1){this.options=Object.assign({rules:{},messages:{},onSubmit:null},e),this.m(t,this.options,i),this.l(t),i&&this.D()}m(t,e,i){m("element",t,["HTMLElement","string"]),m("rules",e.rules,"object"),m("messages",e.messages,"object"),m("onSubmit",e.onSubmit,["function","null"]),m("bindEvents",i,"boolean")}l(t){this.root=t,this.valid=!0}D(){$(this.root,"submit",t=>{t.preventDefault(),this.validate()}),$(this.root,"reset",()=>{this.reset()})}validate(){for(const t of this.root.elements){const e=t.name;if(this.options.rules[e]&&(this.valid=this.Yt(t,e),!this.valid))break}return this.valid&&this.options.onSubmit&&this.options.onSubmit(),this.valid}Yt(t,e){const i=this.options.rules[e];if(t.hasAttribute("required")||t.hasAttribute("minlength")||t.hasAttribute("maxlength")||t.hasAttribute("pattern")||t.hasAttribute("min")||t.hasAttribute("max")||t.hasAttribute("step"))return this.valid;for(const s in i){switch(s){case"required":this.valid=this.Gt(t,i[s]);break;case"minLength":this.valid=this.Wt(t,i[s]);break;case"maxLength":this.valid=this.Kt(t,i[s]);break;case"equalTo":this.valid=this.Qt(t,i[s]);break;case"email":this.valid=this.te(t);break;case"checked":this.valid=this.ee(t,i[s]);break;case"noSpace":this.valid=this.ie(t,i[s]);break;case"noChinese":this.valid=!/[\u4e00-\u9fa5]/.test(t.value);break;case"noSpecial":this.valid=!/[@#$%^&*]+/g.test(t.value);break;case"pattern":this.valid=new RegExp(i[s]).test(t.value)}if(!this.valid){this.se(t,e,s);break}this.ne(t)}return this.valid}Gt(t,e){return t.value.trim().length>=1&&!0===e}Wt(t,e){return t.value.length>=e}Kt(t,e){return t.value.length<=e}te(t){return/^([\w-.]+@([\w-]+\.)+[\w-]{2,4})?$/.test(t.value)}Qt(t,e){const i=this.root.elements[e];if(null==i)throw new Error(`Validator: target element "${e}" not found.`);return t.value===i.value}ee(t,e){if("checkbox"!==t.type)throw new Error(`Validator: element expects a checkbox input, but ${t.type} given.`);return t.checked===e}ie(t,e){return!/\s/.test(t.value)||!0!==e}se(t,e,i){t.classList.remove("is-valid"),t.classList.add("is-invalid");const s=this.options.messages[e]&&this.options.messages[e][i];if(s){this.message=s;const e=t.closest(".form-control");let i=k(".help-block",e);i||(i=E("div",{className:"help-block is-invalid",text:s}),e.appendChild(i))}}ne(t){this.message="",t.classList.remove("is-invalid");const e=t.closest(".form-control"),i=k(".help-block",e);i&&e.removeChild(i),t.classList.add("is-valid")}reset(){this.root.reset();for(const e of this.root.elements)e.classList.remove("is-valid"),e.classList.remove("is-invalid");const t=this.root.querySelectorAll(".help-block");for(const e of t)e.remove();this.valid=!0,this.message=""}destroy(){this.reset(),this.root=null,this.options=null,this.message=null,this.valid=null,t.instances.delete(this)}static destroyAll(){for(const e of Array.from(t.instances))e.destroy();t.instances.clear()}};e(et,"instances",new Set);let it=et;return{...T,container:M,store:class{constructor(t="localStorage"){this.driver=this.oe(t)}oe(t){switch(t){case"cookie":return new A;case"localStorage":return"undefined"!=typeof localStorage?new N:(console.warn("localStorage not supported, falling back to cookie."),new A);case"indexedDB":return"undefined"!=typeof indexedDB?new L:(console.warn("indexedDB not supported, falling back to localStorage."),this.oe("localStorage"));default:throw new Error(`Unsupported driver: ${t}`)}}set(t,e,i){this.driver.setItem(t,e,i)}get(t){return this.driver.getItem(t)}remove(t){this.driver.removeItem(t)}clear(){this.driver.clear()}has(t){return this.driver.hasItem(t)}},...q,modal:R,toast:z,offcanvas:V,theme:U,tabs:X,accordion:G,drop:K,tooltip:tt,validator:it,parabola:class{constructor(t){this.options=Object.assign({ball:{color:"var(--primary, #3e63dd)",size:"10px"},from:null,to:null,direction:"center",showDelay:0,hideDelay:0,onShow:null,onHidden:null},t),this.m(this.options),this.l(this.options)}m(t){const{ball:e,from:i,to:s,direction:n,showDelay:o,hideDelay:r,onShow:a,onHidden:h}=t;m("ball",e,"object",[{test:t=>"object"==typeof t&&2===Object.keys(t).length&&"string"==typeof t.color&&"string"==typeof t.size,message:'ball expects an object with two string properties: "color" and "size".'}]),m("from",i,["HTMLElement","string"]),m("to",s,["HTMLElement","string"]),m("direction",n,"string",[{test:t=>["center","top-right","top-left","bottom-right","bottom-left"].includes(t),message:"direction expects one of [center, top-right, top-left, bottom-right, bottom-left]"}]),m("showDelay",o,"number"),m("hideDelay",r,"number"),m("onShow",a,["function","null"]),m("onHide",h,["function","null"])}l(t){if(this.hidden=!1,this.re=null,this.ae=null,this.he=null,this.le=null,this.hidden)return;const e=C(t.from),i=C(t.to);if(!e||!i)throw this.destroy(),new Error("Parabola: from or to element not found.");this.ce(t)}ce(t){if(this.hidden||this.re)return;const{color:e,size:i}=t.ball;this.re=E("div",{className:"parabola-ball",style:{backgroundColor:e,width:i,height:i,position:"fixed",borderRadius:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none",zIndex:"9999",opacity:"1"}}),document.body.appendChild(this.re)}de(t){var e,i;const s=null==(e=C(t.from))?void 0:e.getBoundingClientRect(),n=null==(i=C(t.to))?void 0:i.getBoundingClientRect();if(!s||!n)return null;const{left:o,top:r,width:a,height:h}=s,{left:l,top:c,width:d,height:u}=n;let m,f;switch(t.direction){case"top-left":m=o+.2*a,f=r+.2*h;break;case"top-right":m=o+.8*a,f=r+.2*h;break;case"bottom-left":m=o+.2*a,f=r+.8*h;break;case"bottom-right":m=o+.8*a,f=r+.8*h;break;default:m=o+a/2,f=r+h/2}return{startX:m,startY:f,endX:l+d/2,endY:c+u/2}}ue(t){return 1-(1-t)**3}me(t,e,i,s,n=800){if(this.hidden)return;const o=performance.now(),r=i-t,a=s-e,h=i=>{if(this.hidden)return;const s=i-o,l=Math.min(s/n,1),c=this.ue(l),d=t+r*c,u=e+-100*Math.sin(Math.PI*c)+a*c,m=1-l;this.re.style.left=`${d}px`,this.re.style.top=`${u}px`,this.re.style.opacity=`${m}`,this.re.style.transform=`translate(-50%, -50%) scale(${1-.3*c})`,l<1?this.ae=requestAnimationFrame(h):this.destroy()};this.ae=requestAnimationFrame(h)}async show(){return!this.hidden&&new Promise(t=>{this.he=setTimeout(()=>{if(this.hidden)return void t(!1);const e=this.de(this.options);if(!e)return this.destroy(),void t(!1);this.re.style.left=`${e.startX}px`,this.re.style.top=`${e.startY}px`,this.options.onShow&&this.options.onShow(),this.me(e.startX,e.startY,e.endX,e.endY),t(!0)},this.options.showDelay)})}destroy(){var t;(null==(t=this.re)?void 0:t.parentNode)&&this.re.parentNode.removeChild(this.re),this.he&&clearTimeout(this.he),this.le&&clearTimeout(this.le),this.ae&&cancelAnimationFrame(this.ae),this.re=null,this.hidden=!0,this.options.onHidden&&this.options.onHidden()}start(){return this.show()}}}});
|
package/package.json
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "jealer-jui",
|
|
3
|
+
"fullname": "JUI",
|
|
4
|
+
"author": "Wang Shai",
|
|
5
|
+
"version": "0.1.0",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"jui",
|
|
8
|
+
"vanilla",
|
|
9
|
+
"components",
|
|
10
|
+
"accordion",
|
|
11
|
+
"modal",
|
|
12
|
+
"toast",
|
|
13
|
+
"tabs",
|
|
14
|
+
"offcanvas",
|
|
15
|
+
"drop",
|
|
16
|
+
"tooltip",
|
|
17
|
+
"theme",
|
|
18
|
+
"validator",
|
|
19
|
+
"parabola",
|
|
20
|
+
"signal"
|
|
21
|
+
],
|
|
22
|
+
"description": "A lightweight vanilla JavaScript UI plugin library.",
|
|
23
|
+
"homepage": "https://www.jealer.com",
|
|
24
|
+
"private": false,
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"type": "module",
|
|
27
|
+
"browser": "dist/jui.umd.js",
|
|
28
|
+
"module": "dist/jui.module.js",
|
|
29
|
+
"files": [
|
|
30
|
+
"dist/"
|
|
31
|
+
],
|
|
32
|
+
"sideEffects": false,
|
|
33
|
+
"scripts": {
|
|
34
|
+
"build": "vite build",
|
|
35
|
+
"build:module": "vite build --config vite.config.mjs.js"
|
|
36
|
+
},
|
|
37
|
+
"devDependencies": {
|
|
38
|
+
"vite": "^7.3.1",
|
|
39
|
+
"rollup-plugin-copy": "^3.5.0"
|
|
40
|
+
},
|
|
41
|
+
"dependencies": {}
|
|
42
|
+
}
|