vanilla-breeze 0.3.1 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/README.md +33 -4
  2. package/dist/cdn/components/activity-feed.js +1 -1
  3. package/dist/cdn/components/audio-player.js +2 -2
  4. package/dist/cdn/components/carousel-wc.js +1 -1
  5. package/dist/cdn/components/comment-box.js +16 -16
  6. package/dist/cdn/components/comment-thread.js +20 -20
  7. package/dist/cdn/components/comment-wc.js +1 -1
  8. package/dist/cdn/components/content-lens.js +1 -1
  9. package/dist/cdn/components/context-menu.js +1 -1
  10. package/dist/cdn/components/diagram-wc.js +1 -1
  11. package/dist/cdn/components/drop-down.js +1 -1
  12. package/dist/cdn/components/image-gallery.js +1 -1
  13. package/dist/cdn/components/manifest.json +44 -20
  14. package/dist/cdn/components/reaction-bar.js +1 -1
  15. package/dist/cdn/components/score-card.js +2 -2
  16. package/dist/cdn/components/settings-panel.js +15 -15
  17. package/dist/cdn/components/site-search.js +1 -1
  18. package/dist/cdn/components/social-embed.js +1 -1
  19. package/dist/cdn/components/tab-set.js +1 -1
  20. package/dist/cdn/components/theme-picker.js +45 -45
  21. package/dist/cdn/components/time-index.js +2 -2
  22. package/dist/cdn/components/time-picker.js +1 -1
  23. package/dist/cdn/components/version-switcher.js +1 -1
  24. package/dist/cdn/packs/effects.full.js +1 -1
  25. package/dist/cdn/packs/journal.effects.css +1 -1
  26. package/dist/cdn/packs/journal.full.css +1 -1
  27. package/dist/cdn/packs/kawaii.effects.css +1 -1
  28. package/dist/cdn/packs/kawaii.full.css +2 -2
  29. package/dist/cdn/packs/kawaii.full.js +4 -4
  30. package/dist/cdn/packs/kawaii.theme.css +1 -1
  31. package/dist/cdn/packs/manifest.json +11 -11
  32. package/dist/cdn/packs/memphis.full.css +1 -1
  33. package/dist/cdn/packs/memphis.theme.css +1 -1
  34. package/dist/cdn/packs/ui.full.css +1 -1
  35. package/dist/cdn/packs/ui.full.js +52 -52
  36. package/dist/cdn/themes/8bit.css +1 -1
  37. package/dist/cdn/themes/8bit.tokens.json +4 -4
  38. package/dist/cdn/themes/alpha1999-dark.tokens.json +4 -4
  39. package/dist/cdn/themes/alpha1999.css +1 -1
  40. package/dist/cdn/themes/alpha1999.tokens.json +4 -4
  41. package/dist/cdn/themes/anthropic.css +1 -1
  42. package/dist/cdn/themes/anthropic.tokens.json +4 -4
  43. package/dist/cdn/themes/art-deco-dark.tokens.json +4 -4
  44. package/dist/cdn/themes/art-deco.css +1 -1
  45. package/dist/cdn/themes/art-deco.tokens.json +4 -4
  46. package/dist/cdn/themes/bauhaus-dark.tokens.json +1 -1
  47. package/dist/cdn/themes/bauhaus.css +1 -1
  48. package/dist/cdn/themes/bauhaus.tokens.json +4 -4
  49. package/dist/cdn/themes/brutalist-dark.tokens.json +4 -4
  50. package/dist/cdn/themes/brutalist.css +1 -1
  51. package/dist/cdn/themes/brutalist.tokens.json +4 -4
  52. package/dist/cdn/themes/catalog/atlassian.tokens.json +2 -2
  53. package/dist/cdn/themes/catalog/bootstrap.tokens.json +2 -2
  54. package/dist/cdn/themes/catalog/carbon.tokens.json +2 -2
  55. package/dist/cdn/themes/catalog/catppuccin-mocha.tokens.json +2 -2
  56. package/dist/cdn/themes/catalog/govuk.tokens.json +2 -2
  57. package/dist/cdn/themes/catalog/manifest.json +1 -1
  58. package/dist/cdn/themes/catalog/material.tokens.json +2 -2
  59. package/dist/cdn/themes/catalog/salesforce.tokens.json +2 -2
  60. package/dist/cdn/themes/catalog/tailwind.tokens.json +2 -2
  61. package/dist/cdn/themes/catppuccin-frappe.css +1 -1
  62. package/dist/cdn/themes/catppuccin-frappe.tokens.json +4 -4
  63. package/dist/cdn/themes/catppuccin-latte-dark.tokens.json +4 -4
  64. package/dist/cdn/themes/catppuccin-latte.css +1 -1
  65. package/dist/cdn/themes/catppuccin-latte.tokens.json +4 -4
  66. package/dist/cdn/themes/catppuccin-macchiato.css +1 -1
  67. package/dist/cdn/themes/catppuccin-macchiato.tokens.json +4 -4
  68. package/dist/cdn/themes/catppuccin-mocha.css +1 -1
  69. package/dist/cdn/themes/catppuccin-mocha.tokens.json +4 -4
  70. package/dist/cdn/themes/classic-dark.tokens.json +4 -4
  71. package/dist/cdn/themes/classic.css +1 -1
  72. package/dist/cdn/themes/classic.tokens.json +4 -4
  73. package/dist/cdn/themes/claymorphism-dark.tokens.json +10 -10
  74. package/dist/cdn/themes/claymorphism.css +1 -1
  75. package/dist/cdn/themes/claymorphism.tokens.json +10 -10
  76. package/dist/cdn/themes/clinical-dark.tokens.json +4 -4
  77. package/dist/cdn/themes/clinical.css +1 -1
  78. package/dist/cdn/themes/clinical.tokens.json +4 -4
  79. package/dist/cdn/themes/cottagecore-dark.tokens.json +4 -4
  80. package/dist/cdn/themes/cottagecore.css +1 -1
  81. package/dist/cdn/themes/cottagecore.tokens.json +4 -4
  82. package/dist/cdn/themes/cyber.css +1 -1
  83. package/dist/cdn/themes/cyber.tokens.json +4 -5
  84. package/dist/cdn/themes/dawn-dark.tokens.json +4 -4
  85. package/dist/cdn/themes/dawn.css +1 -1
  86. package/dist/cdn/themes/dawn.tokens.json +4 -4
  87. package/dist/cdn/themes/dracula.css +1 -1
  88. package/dist/cdn/themes/dracula.tokens.json +4 -4
  89. package/dist/cdn/themes/dusk.css +1 -1
  90. package/dist/cdn/themes/dusk.tokens.json +4 -4
  91. package/dist/cdn/themes/editorial-dark.tokens.json +3 -3
  92. package/dist/cdn/themes/editorial.css +1 -1
  93. package/dist/cdn/themes/editorial.tokens.json +4 -4
  94. package/dist/cdn/themes/financial-dark.tokens.json +4 -4
  95. package/dist/cdn/themes/financial.css +1 -1
  96. package/dist/cdn/themes/financial.tokens.json +4 -4
  97. package/dist/cdn/themes/genai.css +1 -1
  98. package/dist/cdn/themes/genai.tokens.json +4 -4
  99. package/dist/cdn/themes/glassmorphism-dark.tokens.json +4 -4
  100. package/dist/cdn/themes/glassmorphism.css +1 -1
  101. package/dist/cdn/themes/glassmorphism.tokens.json +4 -4
  102. package/dist/cdn/themes/government-dark.tokens.json +4 -4
  103. package/dist/cdn/themes/government.css +1 -1
  104. package/dist/cdn/themes/government.tokens.json +4 -4
  105. package/dist/cdn/themes/gruvbox-dark.tokens.json +4 -4
  106. package/dist/cdn/themes/gruvbox.css +1 -1
  107. package/dist/cdn/themes/gruvbox.tokens.json +4 -4
  108. package/dist/cdn/themes/high-noon-dark.tokens.json +4 -4
  109. package/dist/cdn/themes/high-noon.css +1 -1
  110. package/dist/cdn/themes/high-noon.tokens.json +4 -4
  111. package/dist/cdn/themes/ibm.css +1 -1
  112. package/dist/cdn/themes/ibm.tokens.json +6 -6
  113. package/dist/cdn/themes/journal-dark.tokens.json +4 -4
  114. package/dist/cdn/themes/journal.css +1 -1
  115. package/dist/cdn/themes/journal.tokens.json +4 -4
  116. package/dist/cdn/themes/kawaii-dark.tokens.json +4 -4
  117. package/dist/cdn/themes/kawaii.css +1 -1
  118. package/dist/cdn/themes/kawaii.tokens.json +4 -4
  119. package/dist/cdn/themes/magna-dark.tokens.json +4 -4
  120. package/dist/cdn/themes/magna.css +1 -1
  121. package/dist/cdn/themes/magna.tokens.json +4 -4
  122. package/dist/cdn/themes/manifest.json +48 -48
  123. package/dist/cdn/themes/mcdonalds.css +1 -1
  124. package/dist/cdn/themes/mcdonalds.tokens.json +4 -4
  125. package/dist/cdn/themes/midnight.css +1 -1
  126. package/dist/cdn/themes/midnight.tokens.json +4 -4
  127. package/dist/cdn/themes/minimal-dark.tokens.json +4 -4
  128. package/dist/cdn/themes/minimal.css +1 -1
  129. package/dist/cdn/themes/minimal.tokens.json +4 -4
  130. package/dist/cdn/themes/modern-dark.tokens.json +4 -4
  131. package/dist/cdn/themes/modern.css +1 -1
  132. package/dist/cdn/themes/modern.tokens.json +4 -4
  133. package/dist/cdn/themes/nes-dark.tokens.json +4 -4
  134. package/dist/cdn/themes/nes.css +1 -1
  135. package/dist/cdn/themes/nes.tokens.json +4 -4
  136. package/dist/cdn/themes/neumorphism-dark.tokens.json +10 -10
  137. package/dist/cdn/themes/neumorphism.css +1 -1
  138. package/dist/cdn/themes/neumorphism.tokens.json +10 -10
  139. package/dist/cdn/themes/nord-dark.tokens.json +4 -4
  140. package/dist/cdn/themes/nord.css +1 -1
  141. package/dist/cdn/themes/nord.tokens.json +4 -4
  142. package/dist/cdn/themes/organic-dark.tokens.json +4 -4
  143. package/dist/cdn/themes/organic.css +1 -1
  144. package/dist/cdn/themes/organic.tokens.json +4 -4
  145. package/dist/cdn/themes/rose-pine-dark.tokens.json +4 -4
  146. package/dist/cdn/themes/rose-pine.css +1 -1
  147. package/dist/cdn/themes/rose-pine.tokens.json +4 -4
  148. package/dist/cdn/themes/rough-dark.tokens.json +4 -5
  149. package/dist/cdn/themes/rough.css +1 -1
  150. package/dist/cdn/themes/rough.tokens.json +5 -6
  151. package/dist/cdn/themes/solarized-dark.tokens.json +4 -4
  152. package/dist/cdn/themes/solarized.css +1 -1
  153. package/dist/cdn/themes/solarized.tokens.json +4 -4
  154. package/dist/cdn/themes/starbucks.css +1 -1
  155. package/dist/cdn/themes/starbucks.tokens.json +4 -4
  156. package/dist/cdn/themes/startup-dark.tokens.json +4 -4
  157. package/dist/cdn/themes/startup.css +1 -1
  158. package/dist/cdn/themes/startup.tokens.json +4 -4
  159. package/dist/cdn/themes/super2026-dark.tokens.json +4 -4
  160. package/dist/cdn/themes/super2026.css +1 -1
  161. package/dist/cdn/themes/super2026.tokens.json +4 -4
  162. package/dist/cdn/themes/swiss-dark.tokens.json +1 -1
  163. package/dist/cdn/themes/swiss.css +1 -1
  164. package/dist/cdn/themes/swiss.tokens.json +4 -4
  165. package/dist/cdn/themes/terminal.css +1 -1
  166. package/dist/cdn/themes/terminal.tokens.json +4 -4
  167. package/dist/cdn/themes/tokyo-night-dark.tokens.json +4 -4
  168. package/dist/cdn/themes/tokyo-night.css +1 -1
  169. package/dist/cdn/themes/tokyo-night.tokens.json +4 -4
  170. package/dist/cdn/themes/vaporwave-dark.tokens.json +4 -4
  171. package/dist/cdn/themes/vaporwave.css +1 -1
  172. package/dist/cdn/themes/vaporwave.tokens.json +4 -4
  173. package/dist/cdn/themes/win9x-dark.tokens.json +4 -4
  174. package/dist/cdn/themes/win9x.css +1 -1
  175. package/dist/cdn/themes/win9x.tokens.json +4 -4
  176. package/dist/cdn/vanilla-breeze-charts.css +1 -1
  177. package/dist/cdn/vanilla-breeze-core.css +1 -1
  178. package/dist/cdn/vanilla-breeze-core.js +62 -62
  179. package/dist/cdn/vanilla-breeze-dev.css +1 -1
  180. package/dist/cdn/vanilla-breeze-extras.js +19 -19
  181. package/dist/cdn/vanilla-breeze-labs.css +1 -1
  182. package/dist/cdn/vanilla-breeze.css +1 -1
  183. package/dist/cdn/vanilla-breeze.js +170 -170
  184. package/package.json +14 -12
@@ -13,5 +13,5 @@ var $=window.matchMedia("(prefers-reduced-motion: reduce)");var g=new Map;functi
13
13
  `),s=e.length,r=i.length,n=Array.from({length:s+1},()=>new Array(r+1).fill(0));for(let l=1;l<=s;l++)for(let d=1;d<=r;d++)e[l-1]===i[d-1]?n[l][d]=n[l-1][d-1]+1:n[l][d]=Math.max(n[l-1][d],n[l][d-1]);let a=[],c=s,o=r;for(;c>0||o>0;)c>0&&o>0&&e[c-1]===i[o-1]?(a.unshift({type:"eq",text:e[c-1]}),c-=1,o-=1):o>0&&(c===0||n[c][o-1]>=n[c-1][o])?(a.unshift({type:"add",text:i[o-1]}),o-=1):(a.unshift({type:"del",text:e[c-1]}),c-=1);return a}function E(h){let t=document.createDocumentFragment(),e=document.createElement("pre");e.className="text-diff";for(let i of h)if(i.type==="eq")e.appendChild(document.createTextNode(`${i.text}
14
14
  `));else if(i.type==="add"){let s=document.createElement("ins");s.textContent=`${i.text}
15
15
  `,e.appendChild(s)}else if(i.type==="del"){let s=document.createElement("del");s.textContent=`${i.text}
16
- `,e.appendChild(s)}return t.appendChild(e),t}var x=0,v=class extends u{static observedAttributes=["data-versions","data-src"];#t=[];#e=null;#i;#s;#n;#a=null;#h=null;#o=null;setup(){this.#l(),this.hasAttribute("aria-label")||this.setAttribute("aria-label","Version"),this.#$(),this.#N(),this.#c(),this.#d(),this.#p(),this.hasAttribute("data-page-info-target")&&this.#x(),this.#t.length===0&&(this.getAttribute("data-src")||this.#g())&&this.#w()}attributeChangedCallback(t,e,i){!this.isConnected||e===i||(t==="data-versions"&&this.refresh(),t==="data-src"&&this.#w())}#l(){let t=null,e=this.getAttribute("data-versions");if(e)try{t=JSON.parse(e)}catch(i){this.#r("Failed to parse data-versions JSON",{error:i})}if(!t){let i=this.querySelector(':scope > script[type="application/json"][data-versions]');if(i?.textContent.trim())try{t=JSON.parse(i.textContent)}catch(s){this.#r("Failed to parse <script data-versions> JSON",{error:s})}}Array.isArray(t)||(t=[]),this.#t=t.filter(i=>i&&typeof i.id=="string"),this.#e=this.#b()}#b(){if(this.#t.length===0)return null;let t=this.#t.find(i=>i.current===!0);if(t)return t.id;let e=document.querySelector('meta[itemprop="version"]')?.getAttribute("content");if(e){let i=this.#t.find(s=>s.id===e);if(i)return i.id}return this.#t[0].id}#v(){let t=this.getAttribute("data-mode");return t==="releases"||t==="history"?t:new Set(this.#t.map(i=>i.url).filter(Boolean)).size>1?"releases":"history"}#g(){return document.querySelector('meta[name="vb:versions-manifest"]')?.getAttribute("content")}async#w(){let t=this.getAttribute("data-src")||this.#g();if(!t)return;this.#o=t,this.#c();let e;try{let i=await fetch(t,{credentials:"same-origin"});if(!i.ok)throw new Error(`Fetch failed (${i.status}) for ${t}`);e=await i.json()}catch(i){this.#o=null,this.#r(`Failed to load versions manifest: ${i.message}`,{error:i}),this.#c();return}if(this.#o===t){if(this.#o=null,!Array.isArray(e)){this.#r(`Manifest is not a JSON array: ${t}`),this.#c();return}this.#t=e.filter(i=>i&&typeof i.id=="string"),this.#e=this.#b(),this.#c(),this.#d(),this.#p(),this.#a&&this.#f()}}#p(){if(!this.hasAttribute("data-banner"))return;let t=this.#t.find(n=>n.id===this.#e),e=this.#t.find(n=>!n.archived&&!n.draft);if(this.#h?.remove(),this.#h=null,!t?.archived||!e||e.id===t.id)return;let i=document.createElement("aside");i.className="version-switcher-banner",i.setAttribute("role","region"),i.setAttribute("aria-live","polite"),i.setAttribute("aria-label","Archived version notice");let s=document.createElement("span");s.className="version-switcher-banner-text",s.textContent=`You're viewing ${t.label||t.id} (archived).`;let r=document.createElement("a");r.className="version-switcher-banner-link",e.url&&(r.href=e.url),r.textContent=`Latest: ${e.label||e.id} \u2192`,i.append(s," ",r),this.prepend(i),this.#h=i}#x(){let t=this.getAttribute("data-page-info-target");if(!t)return;let e=document.getElementById(t);if(!e||e.localName!=="page-info"){this.#r(`data-page-info-target: no <page-info id="${t}"> found.`);return}this.#i.hidden=!0;let i=()=>{let r=e.querySelector(".page-info-panel");return r?(this.#f(r),!0):!1};if(i())return;let s=new MutationObserver(()=>{i()&&s.disconnect()});s.observe(e,{childList:!0,subtree:!0}),setTimeout(()=>{this.#a||(s.disconnect(),this.#r(`<page-info id="${t}"> never rendered .page-info-panel within 5s.`))},5e3)}#f(t){let e=t||this.#a?.parentNode;if(!e)return;let i=this.#a;if(!i){i=document.createElement("section"),i.className="version-switcher-panel-section",i.setAttribute("aria-label",this.getAttribute("aria-label")||"Versions");let r=document.createElement("h3");r.className="version-switcher-panel-heading",r.textContent=this.#v()==="history"?"History":"Versions",i.appendChild(r),e.appendChild(i),this.#a=i}let s=i.querySelector("ul.version-switcher-panel-list");if(s||(s=document.createElement("ul"),s.className="version-switcher-panel-list",i.appendChild(s)),s.replaceChildren(),this.#t.length===0){let r=document.createElement("li");r.className="version-switcher-empty",r.textContent=this.#o?"Loading versions\u2026":"No versions available.",s.appendChild(r);return}for(let r of this.#t)s.appendChild(this.#E(r))}#$(){this.#i=document.createElement("button"),this.#i.type="button",this.#i.className="version-switcher-trigger",this.#i.setAttribute("aria-haspopup","dialog"),this.#i.setAttribute("aria-expanded","false"),this.appendChild(this.#i)}#N(){let t=`version-switcher-${++x}`;this.#i.setAttribute("popovertarget",t),this.#s=document.createElement("pop-over"),this.#s.id=t,this.#s.className="version-switcher-popover",this.#s.dataset.position="bottom-end",this.#s.setAttribute("role","dialog"),this.#s.setAttribute("aria-label",this.getAttribute("aria-label")||"Version");let e=document.createElement("h3");e.className="version-switcher-heading",e.textContent=this.#v()==="history"?"History":"Versions",this.#n=document.createElement("ul"),this.#n.className="version-switcher-list",this.#n.setAttribute("role","list"),this.#s.append(e,this.#n),this.appendChild(this.#s),this.listen(this.#s,"pop-over:show",()=>{this.#i.setAttribute("aria-expanded","true"),this.dispatchEvent(new CustomEvent("version-switcher:open",{bubbles:!0}));let i=this.#n.querySelector('[data-current="true"] button')||this.#n.querySelector("button");requestAnimationFrame(()=>i?.focus())}),this.listen(this.#s,"pop-over:hide",()=>{this.#i.setAttribute("aria-expanded","false"),this.dispatchEvent(new CustomEvent("version-switcher:close",{bubbles:!0}))}),this.listen(this.#n,"keydown",this.#S)}#c(){let t=this.#t.find(n=>n.id===this.#e),e=!!this.#o&&this.#t.length===0,i=e?"Loading\u2026":t?.label||t?.id||"Version";this.#i.replaceChildren();let s=document.createElement("span");s.className="version-switcher-trigger-label",s.textContent=i;let r=document.createElement("span");r.className="version-switcher-trigger-chevron",r.setAttribute("aria-hidden","true"),r.textContent="\u25BE",this.#i.append(s,r),this.#t.length===0?(this.#i.disabled=!0,this.#i.setAttribute("title",e?"Loading versions\u2026":"No versions available")):(this.#i.disabled=!1,this.#i.removeAttribute("title"))}#d(){if(this.#n){if(this.#n.replaceChildren(),this.#t.length===0){let t=document.createElement("li");t.className="version-switcher-empty",t.textContent="No versions available.",this.#n.appendChild(t);return}for(let t of this.#t)this.#n.appendChild(this.#E(t))}}#E(t){let e=document.createElement("li");e.setAttribute("role","listitem"),e.dataset.versionId=t.id,t.id===this.#e&&(e.dataset.current="true"),t.archived&&(e.dataset.archived=""),t.draft&&(e.dataset.draft="");let i=document.createElement("button");i.type="button",i.className="version-switcher-entry",i.setAttribute("aria-current",t.id===this.#e?"true":"false");let s=document.createElement("span");if(s.className="version-switcher-entry-label",s.textContent=t.label||t.id,t.archived){let n=document.createElement("span");n.className="version-switcher-badge version-switcher-badge-archived",n.textContent="archived",s.appendChild(n)}if(t.draft){let n=document.createElement("span");n.className="version-switcher-badge version-switcher-badge-draft",n.textContent="draft",s.appendChild(n)}if(t.id===this.#e){let n=document.createElement("span");n.className="version-switcher-badge version-switcher-badge-current",n.textContent="current",s.appendChild(n)}if(i.appendChild(s),t.date){let n=document.createElement("time");n.className="version-switcher-entry-date",n.setAttribute("datetime",t.date);try{n.title=new Date(t.date).toLocaleString()}catch{}n.textContent=C(t.date)||t.date,i.appendChild(n)}if(t.author){let n=document.createElement("span");n.className="version-switcher-entry-author",n.textContent=`by ${t.author}`,i.appendChild(n)}if(t.summary){let n=document.createElement("span");n.className="version-switcher-entry-summary",n.textContent=t.summary,i.appendChild(n)}if(t.versionUrl){let n=document.createElement("a");n.className="version-switcher-entry-changelog",n.href=t.versionUrl,n.textContent="Changelog \u2192",this.listen(n,"click",a=>a.stopPropagation()),i.appendChild(n)}let r=[t.label||t.id];return t.date&&r.push(`released ${C(t.date)||t.date}`),t.archived&&r.push("archived"),t.draft&&r.push("draft"),t.id===this.#e&&r.push("current"),i.setAttribute("aria-label",r.join(", ")),this.listen(i,"click",()=>this.#k(t)),e.appendChild(i),e}#S=t=>{let e=[...this.#n.querySelectorAll("button.version-switcher-entry")],i=e.indexOf(document.activeElement);if(i===-1)return;let s=i;switch(t.key){case"ArrowDown":t.preventDefault(),s=Math.min(e.length-1,i+1);break;case"ArrowUp":t.preventDefault(),s=Math.max(0,i-1);break;case"Home":t.preventDefault(),s=0;break;case"End":t.preventDefault(),s=e.length-1;break;default:return}e[s]?.focus()};#k(t){this.dispatchEvent(new CustomEvent("version-switcher:select",{bubbles:!0,detail:{entry:t}})),this.#C(t)}#C(t){let e=this.getAttribute("data-action")||"navigate";if(e==="navigate")return this.#A(t);if(e==="swap")return this.#M(t);if(e==="diff")return this.#q(t);this.#r(`Unknown action "${e}"; falling back to navigate.`),this.#A(t)}#A(t){if(!t?.url){this.#r("Cannot navigate: entry has no url.",{entry:t});return}let e=new CustomEvent("version-switcher:before-navigate",{bubbles:!0,cancelable:!0,detail:{entry:t}});this.dispatchEvent(e)&&(this.closePicker(),location.href=t.url)}#u(){return this.getAttribute("data-versioned-region")||"[data-versioned], main"}#m(t){return t.querySelector(this.#u())}async#y(t){let e=await fetch(t,{credentials:"same-origin"});if(!e.ok)throw new Error(`Fetch failed (${e.status}) for ${t}`);let i=await e.text(),s=new DOMParser().parseFromString(i,"text/html"),r=this.#m(s);if(!r)throw new Error(`No versioned region (${this.#u()}) found in ${t}`);return r}async#M(t){if(!t?.url){this.#r("Cannot swap: entry has no url.",{entry:t});return}let e=this.#m(document);if(!e){this.#r(`No versioned region (${this.#u()}) on this page to swap.`,{entry:t});return}let i=new CustomEvent("version-switcher:before-swap",{bubbles:!0,cancelable:!0,detail:{entry:t}});if(!this.dispatchEvent(i))return;this.closePicker();let s=this.#e,r=async()=>{try{let a=await this.#y(t.url);e.replaceChildren(...a.childNodes)}catch(a){throw this.#r(a.message,{entry:t,error:a}),a}};try{"startViewTransition"in document?await document.startViewTransition(r).updateCallbackDone:await r()}catch{return}let n=document.querySelector('meta[itemprop="version"]');n||(n=document.createElement("meta"),n.setAttribute("itemprop","version"),document.head.appendChild(n)),n.setAttribute("content",t.id),this.#e=t.id,this.#c(),this.#d(),this.dispatchEvent(new CustomEvent("version-switcher:swap",{bubbles:!0,detail:{entry:t,previousId:s}}))}async#q(t){if(!t?.url){this.#r("Cannot diff: entry has no url.",{entry:t});return}let e=this.#m(document);if(!e){this.#r(`No versioned region (${this.#u()}) on this page to diff against.`,{entry:t});return}if(t.id===this.#e){this.#r("Cannot diff against the current version.",{entry:t});return}let i=new CustomEvent("version-switcher:before-diff",{bubbles:!0,cancelable:!0,detail:{entry:t}});if(!this.dispatchEvent(i))return;this.closePicker();let s;try{s=await this.#y(t.url)}catch(c){this.#r(c.message,{entry:t,error:c});return}document.querySelectorAll(".version-switcher-diff-host").forEach(c=>c.remove());let r=w(e.textContent.trim(),s.textContent.trim()),n=document.createElement("change-set");n.classList.add("version-switcher-diff-host"),n.dataset.versionFrom=this.#e??"",n.dataset.versionTo=t.id,n.appendChild(E(r)),(this.getAttribute("data-diff-position")||"before")==="after"?e.parentNode.insertBefore(n,e.nextSibling):e.parentNode.insertBefore(n,e),n.setAttribute("tabindex","-1"),n.focus({preventScroll:!1}),this.dispatchEvent(new CustomEvent("version-switcher:diff",{bubbles:!0,detail:{entry:t,previousId:this.#e,diffElement:n,opCount:r.length}}))}get versions(){return this.#t.slice()}get currentId(){return this.#e}openPicker(){this.#s?.show()}closePicker(){this.#s?.hide()}switchTo(t){let e=this.#t.find(i=>i.id===t);if(!e){this.#r(`switchTo: no entry with id "${t}"`);return}this.dispatchEvent(new CustomEvent("version-switcher:select",{bubbles:!0,detail:{entry:e}})),this.#C(e)}refresh(){this.#l(),!(!this.#i||!this.#n)&&(this.#c(),this.#d(),this.#p(),this.#a&&this.#f())}#r(t,e={}){this.dispatchEvent(new CustomEvent("version-switcher:error",{bubbles:!0,detail:{message:t,...e}}))}};function C(h){let t=new Date(h);if(isNaN(t.getTime()))return null;let e=(Date.now()-t.getTime())/1e3;if(e<0)return null;let i=60,s=3600,r=86400,n=2592e3,a=31536e3;if(e<i)return"just now";if(e<s){let o=Math.floor(e/i);return`${o} minute${o!==1?"s":""} ago`}if(e<r){let o=Math.floor(e/s);return`${o} hour${o!==1?"s":""} ago`}if(e<n){let o=Math.floor(e/r);return`${o} day${o!==1?"s":""} ago`}if(e<a){let o=Math.floor(e/n);return`${o} month${o!==1?"s":""} ago`}let c=Math.floor(e/a);return`${c} year${c!==1?"s":""} ago`}p("version-switcher",v);export{v as VersionSwitcher};
16
+ `,e.appendChild(s)}return t.appendChild(e),t}var x=0,v=class extends u{static observedAttributes=["data-versions","data-src"];#t=[];#e=null;#i;#s;#n;#a=null;#h=null;#o=null;setup(){this.#l(),this.hasAttribute("aria-label")||this.setAttribute("aria-label","Version"),this.#$(),this.#N(),this.#c(),this.#d(),this.#p(),this.hasAttribute("data-page-info-target")&&this.#x(),this.#t.length===0&&(this.getAttribute("data-src")||this.#g())&&this.#w()}attributeChangedCallback(t,e,i){!this.isConnected||e===i||(t==="data-versions"&&this.refresh(),t==="data-src"&&this.#w())}#l(){let t=null,e=this.getAttribute("data-versions");if(e)try{t=JSON.parse(e)}catch(i){this.#r("Failed to parse data-versions JSON",{error:i})}if(!t){let i=this.querySelector(':scope > script[type="application/json"][data-versions]');if(i?.textContent.trim())try{t=JSON.parse(i.textContent)}catch(s){this.#r("Failed to parse <script data-versions> JSON",{error:s})}}Array.isArray(t)||(t=[]),this.#t=t.filter(i=>i&&typeof i.id=="string"),this.#e=this.#b()}#b(){if(this.#t.length===0)return null;let t=this.#t.find(i=>i.current===!0);if(t)return t.id;let e=document.querySelector('meta[itemprop="version"]')?.getAttribute("content");if(e){let i=this.#t.find(s=>s.id===e);if(i)return i.id}return this.#t[0].id}#v(){let t=this.getAttribute("data-mode");return t==="releases"||t==="history"?t:new Set(this.#t.map(i=>i.url).filter(Boolean)).size>1?"releases":"history"}#g(){return document.querySelector('meta[name="vb:versions-manifest"]')?.getAttribute("content")}async#w(){let t=this.getAttribute("data-src")||this.#g();if(!t)return;this.#o=t,this.#c();let e;try{let i=await fetch(t,{credentials:"same-origin"});if(!i.ok)throw new Error(`Fetch failed (${i.status}) for ${t}`);e=await i.json()}catch(i){this.#o=null,this.#r(`Failed to load versions manifest: ${i.message}`,{error:i}),this.#c();return}if(this.#o===t){if(this.#o=null,!Array.isArray(e)){this.#r(`Manifest is not a JSON array: ${t}`),this.#c();return}this.#t=e.filter(i=>i&&typeof i.id=="string"),this.#e=this.#b(),this.#c(),this.#d(),this.#p(),this.#a&&this.#f()}}#p(){if(!this.hasAttribute("data-banner"))return;let t=this.#t.find(n=>n.id===this.#e),e=this.#t.find(n=>!n.archived&&!n.draft);if(this.#h?.remove(),this.#h=null,!t?.archived||!e||e.id===t.id)return;let i=document.createElement("aside");i.className="version-switcher-banner",i.setAttribute("role","region"),i.setAttribute("aria-live","polite"),i.setAttribute("aria-label","Archived version notice");let s=document.createElement("span");s.className="version-switcher-banner-text",s.textContent=`You're viewing ${t.label||t.id} (archived).`;let r=document.createElement("a");r.className="version-switcher-banner-link",e.url&&(r.href=e.url),r.textContent=`Latest: ${e.label||e.id} \u2192`,i.append(s," ",r),this.prepend(i),this.#h=i}#x(){let t=this.getAttribute("data-page-info-target");if(!t)return;let e=document.getElementById(t);if(!e||e.localName!=="page-info"){this.#r(`data-page-info-target: no <page-info id="${t}"> found.`);return}this.#i.hidden=!0;let i=()=>{let r=e.querySelector(".page-info-panel");return r?(this.#f(r),!0):!1};if(i())return;let s=new MutationObserver(()=>{i()&&s.disconnect()});s.observe(e,{childList:!0,subtree:!0}),setTimeout(()=>{this.#a||(s.disconnect(),this.#r(`<page-info id="${t}"> never rendered .page-info-panel within 5s.`))},5e3)}#f(t){let e=t||this.#a?.parentNode;if(!e)return;let i=this.#a;if(!i){i=document.createElement("section"),i.className="version-switcher-panel-section",i.setAttribute("aria-label",this.getAttribute("aria-label")||"Versions");let r=document.createElement("h3");r.className="version-switcher-panel-heading",r.textContent=this.#v()==="history"?"History":"Versions",i.appendChild(r),e.appendChild(i),this.#a=i}let s=i.querySelector("ul.version-switcher-panel-list");if(s||(s=document.createElement("ul"),s.className="version-switcher-panel-list",i.appendChild(s)),s.replaceChildren(),this.#t.length===0){let r=document.createElement("li");r.className="version-switcher-empty",r.textContent=this.#o?"Loading versions\u2026":"No versions available.",s.appendChild(r);return}for(let r of this.#t)s.appendChild(this.#E(r))}#$(){this.#i?.parentNode!==this&&(this.#i=document.createElement("button"),this.#i.type="button",this.#i.className="version-switcher-trigger",this.#i.setAttribute("aria-haspopup","dialog"),this.#i.setAttribute("aria-expanded","false"),this.appendChild(this.#i))}#N(){if(this.#s?.parentNode===this)return;let t=`version-switcher-${++x}`;this.#i.setAttribute("popovertarget",t),this.#s=document.createElement("pop-over"),this.#s.id=t,this.#s.className="version-switcher-popover",this.#s.dataset.position="bottom-end",this.#s.setAttribute("role","dialog"),this.#s.setAttribute("aria-label",this.getAttribute("aria-label")||"Version");let e=document.createElement("h3");e.className="version-switcher-heading",e.textContent=this.#v()==="history"?"History":"Versions",this.#n=document.createElement("ul"),this.#n.className="version-switcher-list",this.#n.setAttribute("role","list"),this.#s.append(e,this.#n),this.appendChild(this.#s),this.listen(this.#s,"pop-over:show",()=>{this.#i.setAttribute("aria-expanded","true"),this.dispatchEvent(new CustomEvent("version-switcher:open",{bubbles:!0}));let i=this.#n.querySelector('[data-current="true"] button')||this.#n.querySelector("button");requestAnimationFrame(()=>i?.focus())}),this.listen(this.#s,"pop-over:hide",()=>{this.#i.setAttribute("aria-expanded","false"),this.dispatchEvent(new CustomEvent("version-switcher:close",{bubbles:!0}))}),this.listen(this.#n,"keydown",this.#S)}#c(){let t=this.#t.find(n=>n.id===this.#e),e=!!this.#o&&this.#t.length===0,i=e?"Loading\u2026":t?.label||t?.id||"Version";this.#i.replaceChildren();let s=document.createElement("span");s.className="version-switcher-trigger-label",s.textContent=i;let r=document.createElement("span");r.className="version-switcher-trigger-chevron",r.setAttribute("aria-hidden","true"),r.textContent="\u25BE",this.#i.append(s,r),this.#t.length===0?(this.#i.disabled=!0,this.#i.setAttribute("title",e?"Loading versions\u2026":"No versions available")):(this.#i.disabled=!1,this.#i.removeAttribute("title"))}#d(){if(this.#n){if(this.#n.replaceChildren(),this.#t.length===0){let t=document.createElement("li");t.className="version-switcher-empty",t.textContent="No versions available.",this.#n.appendChild(t);return}for(let t of this.#t)this.#n.appendChild(this.#E(t))}}#E(t){let e=document.createElement("li");e.setAttribute("role","listitem"),e.dataset.versionId=t.id,t.id===this.#e&&(e.dataset.current="true"),t.archived&&(e.dataset.archived=""),t.draft&&(e.dataset.draft="");let i=document.createElement("button");i.type="button",i.className="version-switcher-entry",i.setAttribute("aria-current",t.id===this.#e?"true":"false");let s=document.createElement("span");if(s.className="version-switcher-entry-label",s.textContent=t.label||t.id,t.archived){let n=document.createElement("span");n.className="version-switcher-badge version-switcher-badge-archived",n.textContent="archived",s.appendChild(n)}if(t.draft){let n=document.createElement("span");n.className="version-switcher-badge version-switcher-badge-draft",n.textContent="draft",s.appendChild(n)}if(t.id===this.#e){let n=document.createElement("span");n.className="version-switcher-badge version-switcher-badge-current",n.textContent="current",s.appendChild(n)}if(i.appendChild(s),t.date){let n=document.createElement("time");n.className="version-switcher-entry-date",n.setAttribute("datetime",t.date);try{n.title=new Date(t.date).toLocaleString()}catch{}n.textContent=C(t.date)||t.date,i.appendChild(n)}if(t.author){let n=document.createElement("span");n.className="version-switcher-entry-author",n.textContent=`by ${t.author}`,i.appendChild(n)}if(t.summary){let n=document.createElement("span");n.className="version-switcher-entry-summary",n.textContent=t.summary,i.appendChild(n)}if(t.versionUrl){let n=document.createElement("a");n.className="version-switcher-entry-changelog",n.href=t.versionUrl,n.textContent="Changelog \u2192",this.listen(n,"click",a=>a.stopPropagation()),i.appendChild(n)}let r=[t.label||t.id];return t.date&&r.push(`released ${C(t.date)||t.date}`),t.archived&&r.push("archived"),t.draft&&r.push("draft"),t.id===this.#e&&r.push("current"),i.setAttribute("aria-label",r.join(", ")),this.listen(i,"click",()=>this.#k(t)),e.appendChild(i),e}#S=t=>{let e=[...this.#n.querySelectorAll("button.version-switcher-entry")],i=e.indexOf(document.activeElement);if(i===-1)return;let s=i;switch(t.key){case"ArrowDown":t.preventDefault(),s=Math.min(e.length-1,i+1);break;case"ArrowUp":t.preventDefault(),s=Math.max(0,i-1);break;case"Home":t.preventDefault(),s=0;break;case"End":t.preventDefault(),s=e.length-1;break;default:return}e[s]?.focus()};#k(t){this.dispatchEvent(new CustomEvent("version-switcher:select",{bubbles:!0,detail:{entry:t}})),this.#C(t)}#C(t){let e=this.getAttribute("data-action")||"navigate";if(e==="navigate")return this.#A(t);if(e==="swap")return this.#M(t);if(e==="diff")return this.#q(t);this.#r(`Unknown action "${e}"; falling back to navigate.`),this.#A(t)}#A(t){if(!t?.url){this.#r("Cannot navigate: entry has no url.",{entry:t});return}let e=new CustomEvent("version-switcher:before-navigate",{bubbles:!0,cancelable:!0,detail:{entry:t}});this.dispatchEvent(e)&&(this.closePicker(),location.href=t.url)}#u(){return this.getAttribute("data-versioned-region")||"[data-versioned], main"}#m(t){return t.querySelector(this.#u())}async#y(t){let e=await fetch(t,{credentials:"same-origin"});if(!e.ok)throw new Error(`Fetch failed (${e.status}) for ${t}`);let i=await e.text(),s=new DOMParser().parseFromString(i,"text/html"),r=this.#m(s);if(!r)throw new Error(`No versioned region (${this.#u()}) found in ${t}`);return r}async#M(t){if(!t?.url){this.#r("Cannot swap: entry has no url.",{entry:t});return}let e=this.#m(document);if(!e){this.#r(`No versioned region (${this.#u()}) on this page to swap.`,{entry:t});return}let i=new CustomEvent("version-switcher:before-swap",{bubbles:!0,cancelable:!0,detail:{entry:t}});if(!this.dispatchEvent(i))return;this.closePicker();let s=this.#e,r=async()=>{try{let a=await this.#y(t.url);e.replaceChildren(...a.childNodes)}catch(a){throw this.#r(a.message,{entry:t,error:a}),a}};try{"startViewTransition"in document?await document.startViewTransition(r).updateCallbackDone:await r()}catch{return}let n=document.querySelector('meta[itemprop="version"]');n||(n=document.createElement("meta"),n.setAttribute("itemprop","version"),document.head.appendChild(n)),n.setAttribute("content",t.id),this.#e=t.id,this.#c(),this.#d(),this.dispatchEvent(new CustomEvent("version-switcher:swap",{bubbles:!0,detail:{entry:t,previousId:s}}))}async#q(t){if(!t?.url){this.#r("Cannot diff: entry has no url.",{entry:t});return}let e=this.#m(document);if(!e){this.#r(`No versioned region (${this.#u()}) on this page to diff against.`,{entry:t});return}if(t.id===this.#e){this.#r("Cannot diff against the current version.",{entry:t});return}let i=new CustomEvent("version-switcher:before-diff",{bubbles:!0,cancelable:!0,detail:{entry:t}});if(!this.dispatchEvent(i))return;this.closePicker();let s;try{s=await this.#y(t.url)}catch(c){this.#r(c.message,{entry:t,error:c});return}document.querySelectorAll(".version-switcher-diff-host").forEach(c=>c.remove());let r=w(e.textContent.trim(),s.textContent.trim()),n=document.createElement("change-set");n.classList.add("version-switcher-diff-host"),n.dataset.versionFrom=this.#e??"",n.dataset.versionTo=t.id,n.appendChild(E(r)),(this.getAttribute("data-diff-position")||"before")==="after"?e.parentNode.insertBefore(n,e.nextSibling):e.parentNode.insertBefore(n,e),n.setAttribute("tabindex","-1"),n.focus({preventScroll:!1}),this.dispatchEvent(new CustomEvent("version-switcher:diff",{bubbles:!0,detail:{entry:t,previousId:this.#e,diffElement:n,opCount:r.length}}))}get versions(){return this.#t.slice()}get currentId(){return this.#e}openPicker(){this.#s?.show()}closePicker(){this.#s?.hide()}switchTo(t){let e=this.#t.find(i=>i.id===t);if(!e){this.#r(`switchTo: no entry with id "${t}"`);return}this.dispatchEvent(new CustomEvent("version-switcher:select",{bubbles:!0,detail:{entry:e}})),this.#C(e)}refresh(){this.#l(),!(!this.#i||!this.#n)&&(this.#c(),this.#d(),this.#p(),this.#a&&this.#f())}#r(t,e={}){this.dispatchEvent(new CustomEvent("version-switcher:error",{bubbles:!0,detail:{message:t,...e}}))}};function C(h){let t=new Date(h);if(isNaN(t.getTime()))return null;let e=(Date.now()-t.getTime())/1e3;if(e<0)return null;let i=60,s=3600,r=86400,n=2592e3,a=31536e3;if(e<i)return"just now";if(e<s){let o=Math.floor(e/i);return`${o} minute${o!==1?"s":""} ago`}if(e<r){let o=Math.floor(e/s);return`${o} hour${o!==1?"s":""} ago`}if(e<n){let o=Math.floor(e/r);return`${o} day${o!==1?"s":""} ago`}if(e<a){let o=Math.floor(e/n);return`${o} month${o!==1?"s":""} ago`}let c=Math.floor(e/a);return`${c} year${c!==1?"s":""} ago`}p("version-switcher",v);export{v as VersionSwitcher};
17
17
  //# sourceMappingURL=version-switcher.js.map
@@ -1,2 +1,2 @@
1
- var S=window.matchMedia("(prefers-reduced-motion: reduce)");function y(){return S.matches||document.documentElement.hasAttribute("data-motion-reduced")}var E=0,T=new Map([["vb-fade-in","entrance"],["vb-slide-up","entrance"],["vb-pop","entrance"],["vb-slide-in-ltr","entrance"],["vb-slide-in-rtl","entrance"],["vb-fade-slide-up","entrance"],["vb-shadow-lift","entrance"],["vb-fade-out","exit"],["vb-collapse","exit"],["vb-slide-out-ltr","exit"],["vb-slide-out-rtl","exit"],["vb-shake","attention"],["vb-pulse","attention"],["vb-bounce","attention"],["vb-blink","attention"],["vb-neon-pulse","decoration"],["vb-3d-shift","decoration"],["vb-outline-glow-pulse","decoration"],["vb-rainbow","decoration"],["vb-gradient-flow","decoration"],["vb-shimmer","decoration"],["vb-shimmer-gradient","decoration"],["vb-glow","decoration"],["vb-float","decoration"]]),f={_effects:new Map,_triggers:new Map,_transitions:new Map,_instances:new WeakMap,_triggerCleanups:new WeakMap,_transitionCleanups:new WeakMap,_keyframePhase:T,_observer:null,_animationEndHandler:null,effect(t,e){this._effects.set(t,e),document.querySelectorAll("[data-effect]").forEach(n=>{(n.getAttribute("data-effect")||"").split(/\s+/).includes(t)&&this._initEffect(n,t)})},trigger(t,e){this._triggers.set(t,e)},transition(t,e){this._transitions.set(t,e)},uid(t){return t.id?t.id:(t._vbUid||(E++,t._vbUid=`vb-${E}`),t._vbUid)},theme(t,e){this._themes=this._themes||new Map,this._themes.set(t,e)},applyTheme(t,e=document.documentElement){let n=this._themes?.get(t);if(n)for(let[i,r]of Object.entries(n))e.style.setProperty(i,r)},swap(t){if(!document.startViewTransition){t(),queueMicrotask(()=>this._dispatchVtDone(document.body));return}let e=document.startViewTransition(t);return e.updateCallbackDone.then(()=>{this._dispatchVtDone(document.body)}).catch(()=>{}),e},_dispatchVtDone(t){t.querySelectorAll('[data-trigger~="vt"]').forEach(e=>{this.emit(e,"vb:vt-update-done",{})})},activate(t){this._activateEffects(t)},deactivate(t){t.hasAttribute("data-effect-active")&&(t.removeAttribute("data-effect-active"),this.emit(t,"vb:phase-change",{active:!1}))},onPhaseEnd(t,e,n){let i=r=>{r.detail?.phase===e&&n(r.detail)};return t.addEventListener("vb:effect-phase-end",i),()=>t.removeEventListener("vb:effect-phase-end",i)},registerKeyframe(t,e){this._keyframePhase.set(t,e)},observe(t=document){if(t.querySelectorAll("[data-effect]").forEach(n=>this._processElement(n)),t.querySelectorAll("[data-stagger]").forEach(n=>this._processStagger(n)),t.querySelectorAll("[data-transition]").forEach(n=>this._processTransition(n)),this._observer)return;this._observer=new MutationObserver(n=>{for(let i of n){if(i.type==="childList"){for(let r of i.addedNodes)r.nodeType===Node.ELEMENT_NODE&&this._processTree(r);for(let r of i.removedNodes)r.nodeType===Node.ELEMENT_NODE&&this._cleanupTree(r)}if(i.type==="attributes"){let r=i.target;i.attributeName==="data-effect"&&this._reconcileEffects(r),i.attributeName==="data-trigger"&&this._reconcileTrigger(r),i.attributeName==="data-stagger"&&this._processStagger(r),i.attributeName==="data-transition"&&this._processTransition(r)}}});let e=t===document?document.body:t;this._observer.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-effect","data-trigger","data-stagger","data-transition"]}),this._animationEndHandler||(this._animationEndHandler=n=>{let i=n.target;if(!(i instanceof Element)||!i.hasAttribute("data-effect"))return;let r=this._keyframePhase.get(n.animationName);r&&this.emit(i,"vb:effect-phase-end",{phase:r,animationName:n.animationName})},document.addEventListener("animationend",this._animationEndHandler))},disconnect(){this._observer&&(this._observer.disconnect(),this._observer=null),this._animationEndHandler&&(document.removeEventListener("animationend",this._animationEndHandler),this._animationEndHandler=null)},params(t){let e=getComputedStyle(t);return{get(n){return e.getPropertyValue(`--vb-${n}`).trim()},getNumber(n,i=0){let r=e.getPropertyValue(`--vb-${n}`).trim();return r?parseFloat(r):i},getTime(n,i=0){let r=e.getPropertyValue(`--vb-${n}`).trim();if(!r)return i;let a=parseFloat(r);return Number.isFinite(a)?/s\s*$/.test(r)&&!/ms\s*$/.test(r)?a*1e3:a:i},hasClass(n){return t.classList.contains(n)}}},emit(t,e,n={}){t.dispatchEvent(new CustomEvent(e,{bubbles:!0,detail:n}))},prefersReducedMotion:y,_processTree(t){t.hasAttribute?.("data-effect")&&this._processElement(t),t.hasAttribute?.("data-stagger")&&this._processStagger(t),t.hasAttribute?.("data-transition")&&this._processTransition(t),t.querySelectorAll?.("[data-effect]").forEach(e=>this._processElement(e)),t.querySelectorAll?.("[data-stagger]").forEach(e=>this._processStagger(e)),t.querySelectorAll?.("[data-transition]").forEach(e=>this._processTransition(e))},_cleanupTree(t){t.hasAttribute?.("data-effect")&&this._cleanupElement(t),t.hasAttribute?.("data-transition")&&this._cleanupTransition(t),t.querySelectorAll?.("[data-effect]").forEach(e=>this._cleanupElement(e)),t.querySelectorAll?.("[data-transition]").forEach(e=>this._cleanupTransition(e))},_processElement(t){if(t.hasAttribute("data-effect-processed"))return;t.setAttribute("data-effect-processed","");let e=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];for(let n of e)this._initEffect(t,n);this._wireTrigger(t,e)},_initEffect(t,e){let n=this._effects.get(e);if(!n)return;let i=this._instances.get(t);if(i?.has(e))return;y();let r=n(t);r&&(i||(i=new Map,this._instances.set(t,i)),typeof r=="function"?i.set(e,{cleanup:r}):i.set(e,r))},_wireTrigger(t,e){let n=t.getAttribute("data-trigger");if(!n){this._activateEffects(t);return}let i=n.split(/\s+/).filter(Boolean);for(let r of i){let a=r.indexOf(":"),s=a>-1?r.slice(0,a):r,o=a>-1?r.slice(a+1):null,u=this._triggers.get(s);if(!u)continue;let c=u(t,()=>this._activateEffects(t),o);if(c){let d=this._triggerCleanups.get(t);if(d){let l=d;this._triggerCleanups.set(t,()=>{l(),c()})}else this._triggerCleanups.set(t,c)}}},_activateEffects(t){t.setAttribute("data-effect-active",""),this.emit(t,"vb:phase-change",{active:!0});let e=this._instances.get(t);if(e)for(let[,n]of e)n.activate&&n.activate()},_cleanupElement(t){let e=this._instances.get(t);if(e){for(let[,i]of e)i.cleanup&&i.cleanup();this._instances.delete(t)}let n=this._triggerCleanups.get(t);n&&(n(),this._triggerCleanups.delete(t))},_reconcileEffects(t){let e=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[],n=this._instances.get(t);if(n)for(let[i,r]of n)e.includes(i)||(r.cleanup&&r.cleanup(),n.delete(i));for(let i of e)n?.has(i)||this._initEffect(t,i);t.hasAttribute("data-effect-processed")||(t.setAttribute("data-effect-processed",""),this._wireTrigger(t,e))},_reconcileTrigger(t){let e=this._triggerCleanups.get(t);e&&(e(),this._triggerCleanups.delete(t));let n=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];this._wireTrigger(t,n)},_processStagger(t){let e=t.getAttribute("data-stagger")||"",n=t.children,i=n.length,r;if(e==="reverse")r=Array.from({length:i},(a,s)=>i-1-s);else if(e==="random"){let a=this._hashString(this.uid(t));r=Array.from({length:i},(o,u)=>u);let s=a;for(let o=i-1;o>0;o--){s^=s<<13,s^=s>>>17,s^=s<<5;let u=Math.abs(s)%(o+1);[r[o],r[u]]=[r[u],r[o]]}}else if(e==="grid"){let a=[];for(let s=0;s<i;s++){let o=getComputedStyle(n[s]),u=parseInt(o.gridRowStart,10),c=parseInt(o.gridColumnStart,10);a.push({i:s,dist:Number.isFinite(u)&&Number.isFinite(c)?u-1+(c-1):s})}a.sort((s,o)=>s.dist-o.dist),r=new Array(i),a.forEach((s,o)=>{r[s.i]=o})}else r=Array.from({length:i},(a,s)=>s);for(let a=0;a<i;a++)n[a].style.setProperty("--vb-stagger-index",String(r[a]))},_hashString(t){let e=5381;for(let n=0;n<t.length;n++)e=(e<<5)+e^t.charCodeAt(n);return e|0},_processTransition(t){if(t.hasAttribute("data-transition-processed"))return;t.setAttribute("data-transition-processed","");let e=t.getAttribute("data-transition");if(!e)return;let n=e.indexOf(":"),i=n>-1?e.slice(0,n):e,r=n>-1?e.slice(n+1):null,a=this._transitions.get(i);if(a){let s=a(t,r);s&&this._transitionCleanups.set(t,s)}else t.style.viewTransitionName=`${e}-${this.uid(t)}`},_cleanupTransition(t){let e=this._transitionCleanups.get(t);e&&(e(),this._transitionCleanups.delete(t)),t.style.viewTransitionName=""}};typeof window<"u"&&(window.VB=f);f.effect("glitch",t=>{t.hasAttribute("data-effect-glitch-init")||(t.setAttribute("data-effect-glitch-init",""),t.setAttribute("data-glitch-text",t.textContent))});function L(t,e,n,i){let r=0;function a(){r<=e.length?(t.firstChild.textContent=e.slice(0,r),r++,setTimeout(a,n)):i&&i()}a()}function M(t,e,n){let i=t.firstChild.textContent,r=i.length;function a(){r>=0?(t.firstChild.textContent=i.slice(0,r),r--,setTimeout(a,e/2)):n&&n()}a()}function $(t){let e=t.getAttribute("data-typewriter-text"),n=f.params(t),i=n.getTime("typewriter-speed",50),r=n.getTime("typewriter-delay",0),s=t.classList.contains("loop")?2e3:null;t.textContent="";let o=document.createTextNode("");if(t.appendChild(o),!t.classList.contains("no-cursor")){let d=document.createElement("span");d.className="vb-typewriter-cursor",d.textContent="|",d.setAttribute("aria-hidden","true"),t.appendChild(d)}function c(){L(t,e,i,()=>{s!==null&&setTimeout(()=>{M(t,i,()=>{setTimeout(c,400)})},s)})}setTimeout(c,r)}f.effect("typewriter",t=>{if(t.hasAttribute("data-effect-typewriter-init"))return;t.setAttribute("data-effect-typewriter-init","");let e=t.textContent.trim();if(t.setAttribute("data-typewriter-text",e),t.setAttribute("aria-label",e),!f.prefersReducedMotion())return t.textContent="",{activate(){$(t)},cleanup(){}}});var A="!<>-_\\/[]{}=+*^?#";function _(t){return t[Math.floor(Math.random()*t.length)]}function V(t){let e=t.getAttribute("data-scramble-text"),n=f.params(t),i=n.getTime("scramble-duration",1500),r=n.get("scramble-chars")||A,a=n.getTime("scramble-speed",30),s=e.length,o=0,u=Math.ceil(i/a);function c(){let d=o/u,l=Math.floor(d*s),h="";for(let p=0;p<s;p++)p<l?h+=e[p]:e[p]===" "?h+=" ":h+=_(r);t.textContent=h,o++,o<=u?setTimeout(c,a):t.textContent=e}c()}f.effect("scramble",t=>{if(t.hasAttribute("data-effect-scramble-init"))return;t.setAttribute("data-effect-scramble-init","");let e=t.textContent.trim();if(t.setAttribute("data-scramble-text",e),t.setAttribute("aria-label",e),f.prefersReducedMotion())return;let n=f.params(t).get("scramble-chars")||A;return t.textContent=e.replace(/\S/g,()=>_(n)),{activate(){V(t)},cleanup(){}}});function q(t){let e=t.textContent;t.setAttribute("aria-label",e),t.innerHTML="",e.split(/(\s+)/).forEach((i,r)=>{if(/^\s+$/.test(i)){t.appendChild(document.createTextNode(i));return}let a=document.createElement("span");a.className="vb-blur-chunk",a.textContent=i,a.style.setProperty("--i",String(Math.floor(r/2))),a.setAttribute("aria-hidden","true"),t.appendChild(a)})}function F(t){let e=t.textContent;t.setAttribute("aria-label",e);let n=e.split(/\s+/).filter(Boolean),i=[],r="",a=t.offsetWidth,s=document.createElement("span");s.style.visibility="hidden",s.style.position="absolute",s.style.font=getComputedStyle(t).font,document.body.appendChild(s),n.forEach(o=>{let u=r?r+" "+o:o;s.textContent=u,s.offsetWidth>a&&r?(i.push(r),r=o):r=u}),r&&i.push(r),document.body.removeChild(s),i.length===0&&i.push(e),t.innerHTML="",i.forEach((o,u)=>{let c=document.createElement("span");c.className="vb-blur-chunk",c.textContent=o,c.style.setProperty("--i",String(u)),c.setAttribute("aria-hidden","true"),t.appendChild(c),u<i.length-1&&t.appendChild(document.createTextNode(" "))})}f.effect("blur-reveal",t=>{if(t.hasAttribute("data-effect-blur-reveal-init")||(t.setAttribute("data-effect-blur-reveal-init",""),f.prefersReducedMotion()))return;let e=t.classList.contains("line")?"line":"word",n=f.params(t).get("blur-reveal-delay")||"80ms";return t.style.setProperty("--blur-delay",n),e==="line"?F(t):q(t),{activate(){t.setAttribute("data-effect-active","")},cleanup(){}}});f.effect("animate-image",t=>{if(t.hasAttribute("data-effect-animate-image-init"))return;t.setAttribute("data-effect-animate-image-init","");let e=t,n=document.createElement("div");if(n.className="animate-image-wrapper",!e.parentNode)return;e.parentNode.insertBefore(n,e),n.appendChild(e);let i=document.createElement("button");i.type="button",i.className="animate-image-toggle",i.setAttribute("aria-label","Pause animation"),n.appendChild(i);let r=e.src,a=null,s=!1;function o(){let l=document.createElement("canvas");l.width=e.naturalWidth||e.width,l.height=e.naturalHeight||e.height;let h=l.getContext("2d");if(h){h.drawImage(e,0,0);try{a=l.toDataURL("image/png")}catch{a=null}}}function u(){s||(s=!0,e.setAttribute("data-animate-image-paused",""),i.setAttribute("aria-label","Play animation"),i.classList.add("paused"),a&&(e.src=a))}function c(){s&&(s=!1,e.removeAttribute("data-animate-image-paused"),i.setAttribute("aria-label","Pause animation"),i.classList.remove("paused"),e.src=r)}i.addEventListener("click",()=>s?c():u()),e.complete&&e.naturalWidth?o():e.addEventListener("load",o,{once:!0});let d=window.matchMedia("(prefers-reduced-motion: reduce)");return(d.matches||document.documentElement.dataset.motionReduced!==void 0)&&(e.complete?(o(),u()):e.addEventListener("load",()=>{o(),u()},{once:!0})),d.addEventListener("change",l=>{l.matches&&u()}),e.hasAttribute("data-animate-image-paused")&&(e.complete?(o(),s=!1,u()):e.addEventListener("load",()=>{o(),s=!1,u()},{once:!0})),{cleanup(){n.parentNode&&(n.parentNode.insertBefore(e,n),n.remove())}}});function C(){return document.documentElement.lang||navigator.language||"en"}function B(t){return t===1?1:1-Math.pow(2,-10*t)}function P(t){let e=t.indexOf(".");return e===-1?0:t.length-e-1}function R(t,e){let n=t.getAttribute("data-locale")||C(),i=t.getAttribute("data-format-number");if(i!=null){let r={minimumFractionDigits:e,maximumFractionDigits:e};switch(i){case"currency":r.style="currency",r.currency=t.getAttribute("data-currency")||"USD";break;case"percent":r.style="percent";break;case"compact":r.notation="compact";break}try{return new Intl.NumberFormat(n,r)}catch{return null}}try{return new Intl.NumberFormat(n,{minimumFractionDigits:e,maximumFractionDigits:e})}catch{return null}}function D(t){let e=t.getAttribute("value");if(e==null)return;let n=Number(e);if(isNaN(n))return;let i=f.params(t),r=i.getNumber("ticker-start",0),a=i.getTime("ticker-duration",1e3),s=i.get("ticker-decimals")?parseInt(i.get("ticker-decimals"),10):P(e),o=R(t,s),u=n-r;if(u===0)return;let c=null;function d(l){c||(c=l);let h=l-c,p=Math.min(h/a,1),m=B(p),v=r+u*m;t.textContent=o?o.format(v):v.toFixed(s),p<1?requestAnimationFrame(d):(t.textContent=o?o.format(n):n.toFixed(s),t.hasAttribute("data-format-number")&&t.setAttribute("data-format-number-init",""))}requestAnimationFrame(d)}f.effect("ticker",t=>{if(!t.hasAttribute("data-effect-ticker-init")&&(t.setAttribute("data-effect-ticker-init",""),!f.prefersReducedMotion()))return{activate(){D(t)},cleanup(){}}});var X=window.matchMedia("(prefers-reduced-motion: reduce)");var w=new Map;function x(t,e,n={}){let i=n.priority??10,r={impl:e,bundle:n.bundle,contract:n.contract,priority:i},a=w.get(t);if(customElements.get(t)){if(!a||a.priority>=i){a&&a.priority===i&&a.impl!==e&&console.warn(`[VB Bundle] Tag <${t}> already registered by "${a.bundle}" (priority ${a.priority}). Skipping "${n.bundle}".`);return}console.warn(`[VB Bundle] Tag <${t}> defined by "${a.bundle}" cannot be replaced (customElements.define is permanent). "${n.bundle}" has higher priority but arrived late.`);return}if(a&&a.priority>=i){a.priority===i&&console.warn(`[VB Bundle] Tag <${t}> already registered by "${a.bundle}". Skipping "${n.bundle}" (first wins at equal priority).`);return}w.set(t,r),customElements.define(t,e)}var b=class extends HTMLElement{#e=[];#n;connectedCallback(){this.hasAttribute("data-upgraded")||this.setup()!==!1&&(this.setAttribute("data-upgraded",""),queueMicrotask(()=>{this.dispatchEvent(new CustomEvent(`${this.localName}:upgraded`,{bubbles:!0}))}))}disconnectedCallback(){for(let e of this.#e)e();this.#e=[],this.removeAttribute("data-upgraded"),this.teardown()}listen(e,n,i,r){e.addEventListener(n,i,r),this.#e.push(()=>e.removeEventListener(n,i,r))}setup(){}teardown(){}setState(e,n){this.#n||(this.#n=this.attachInternals());let i=this.#n.states;try{n?i.add(e):i.delete(e)}catch{let r=`--${e}`;n?i.add(r):i.delete(r)}}_adoptInternals(e){this.#n||(this.#n=e)}};var g=class extends b{static formAssociated=!0;#e;#n;#t;constructor(){super(),this.#e=this.attachInternals(),this._adoptInternals(this.#e)}setup(){this.#s()}#s(){if(this.querySelector("fieldset"))return;let e=Number(this.getAttribute("value")||0);this.#n=e;let n=Number(this.getAttribute("max")||5),i=this.getAttribute("label")||"Rating",r=this.hasAttribute("allow-half"),a=this.hasAttribute("readonly"),s=this.getAttribute("icon"),u=`_sr_${this.getAttribute("name")||`star-rating-${crypto.randomUUID().slice(0,8)}`}`;a?this.#c(e,n,i,s):this.#o(e,n,i,u,r,s),this.#i(e),this.#r()}#o(e,n,i,r,a,s){let o=document.createElement("fieldset");o.setAttribute("data-rating",""),a&&o.setAttribute("data-rating-half",""),o.setAttribute("data-effect","rating");let u=document.createElement("legend");if(u.textContent=i,o.appendChild(u),a)for(let c=1;c<=n;c++){let d=c-.5,l=document.createElement("label");l.setAttribute("data-half","left");let h=document.createElement("input");h.type="radio",h.name=r,h.value=String(d),h.setAttribute("aria-label",`${d} ${d===1?"star":"stars"}`),e===d&&(h.checked=!0),l.appendChild(h),l.append(this.#a(s)),o.appendChild(l);let p=document.createElement("label");p.setAttribute("data-half","right");let m=document.createElement("input");m.type="radio",m.name=r,m.value=String(c),m.setAttribute("aria-label",`${c} ${c===1?"star":"stars"}`),e===c&&(m.checked=!0),p.appendChild(m),p.append(this.#a(s)),o.appendChild(p)}else for(let c=1;c<=n;c++){let d=document.createElement("label"),l=document.createElement("input");l.type="radio",l.name=r,l.value=String(c),l.setAttribute("aria-label",`${c} ${c===1?"star":"stars"}`),e===c&&(l.checked=!0),d.appendChild(l),d.append(this.#a(s)),o.appendChild(d)}this.appendChild(o),this.#t=o,o.addEventListener("rating:change",c=>{this.#i(c.detail.value),this.#r()}),o.addEventListener("change",c=>{let d=c.target;d.type==="radio"&&d.checked&&(this.#i(Number(d.value)),this.#r())})}#c(e,n,i,r){let a=document.createElement("fieldset");a.setAttribute("data-rating",""),a.setAttribute("data-rating-readonly",""),a.setAttribute("role","img"),a.setAttribute("aria-label",`${i}: ${e} out of ${n}`);let s=document.createElement("legend");s.textContent=i,a.appendChild(s);let o=Math.floor(e),u=e-o;for(let c=1;c<=n;c++){let d=document.createElement("span");if(d.setAttribute("aria-hidden","true"),c<=o)d.classList.add("star-filled");else if(c===o+1&&u>0){d.classList.add("star-partial"),d.style.setProperty("--_star-fill",`${u*100}%`);let l=document.createElement("span");l.classList.add("star-partial-fill"),l.append(this.#a(r)),d.appendChild(l)}else d.classList.add("star-empty");d.append(this.#a(r)),a.appendChild(d)}this.appendChild(a),this.#t=a}#a(e){if(e){let n=document.createElement("icon-wc");return n.setAttribute("name",e),n}return document.createTextNode("\u2605")}#i(e){let n=Number(e);n>0?this.#e.setFormValue(String(n)):this.#e.setFormValue(null)}#r(){this.hasAttribute("required")?this.#t?.querySelector('input[type="radio"]:checked')?this.#e.setValidity({}):this.#e.setValidity({valueMissing:!0},"Please select a rating",this.#t||this):this.#e.setValidity({})}formResetCallback(){if(this.#t){if(this.#t.querySelectorAll('input[type="radio"]').forEach(e=>{e.checked=!1}),this.#n>0){let e=this.#t.querySelector(`input[value="${this.#n}"]`);e&&(e.checked=!0)}this.#i(this.#n),this.#r()}}formStateRestoreCallback(e){if(!e||!this.#t)return;let n=this.#t.querySelector(`input[value="${e}"]`);n&&(n.checked=!0,this.#i(Number(e)),this.#r())}get value(){if(!this.#t)return Number(this.getAttribute("value")||0);let e=this.#t.querySelector('input[type="radio"]:checked');return e?Number(e.value):0}set value(e){if(!this.#t)return;let n=Number(e),i=this.#t.querySelector('input[type="radio"]:checked');if((i?Number(i.value):0)!==n){if(this.#t.querySelectorAll('input[type="radio"]').forEach(a=>{a.checked=!1}),n>0){let a=this.#t.querySelector(`input[value="${n}"]`);a&&(a.checked=!0)}this.#i(n),this.#r()}}};x("star-rating",g);var O=1e3;function N(t){let e=document.createElement("div");e.setAttribute("role","status"),e.setAttribute("aria-live","polite"),Object.assign(e.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:"0"}),e.textContent=t,document.body.appendChild(e),setTimeout(()=>e.remove(),O)}function k(t,e){t.dispatchEvent(new CustomEvent("rating:change",{bubbles:!0,detail:{value:e}}))}function I(t){let e=t.querySelector('input[type="radio"]:checked');return e?e.value:"0"}f.effect("rating",t=>{if(t.hasAttribute("data-effect-rating-init")||(t.setAttribute("data-effect-rating-init",""),t.hasAttribute("data-rating-readonly")))return;let e=I(t),n=!1;function i(s){let o=s.target.closest("label");if(!o)return;let u=o.querySelector('input[type="radio"]');u&&(n=u.checked&&u.value===e)}function r(s){if(!n)return;n=!1;let o=s.target.closest("label");if(!o)return;let u=o.querySelector('input[type="radio"]');u&&(u.checked=!1,e="0",k(t,0),N("Rating cleared"))}function a(s){s.target.type==="radio"&&(n||(e=s.target.value,k(t,Number(s.target.value)),N(`Rating: ${s.target.value} ${Number(s.target.value)===1?"star":"stars"}`)))}return t.addEventListener("mousedown",i),t.addEventListener("click",r),t.addEventListener("change",a),{cleanup(){t.removeEventListener("mousedown",i),t.removeEventListener("click",r),t.removeEventListener("change",a)}}});
1
+ var L=window.matchMedia("(prefers-reduced-motion: reduce)");function y(){return L.matches||document.documentElement.hasAttribute("data-motion-reduced")}var E=0,M=new Map([["vb-fade-in","entrance"],["vb-slide-up","entrance"],["vb-pop","entrance"],["vb-slide-in-ltr","entrance"],["vb-slide-in-rtl","entrance"],["vb-fade-slide-up","entrance"],["vb-shadow-lift","entrance"],["vb-fade-out","exit"],["vb-collapse","exit"],["vb-slide-out-ltr","exit"],["vb-slide-out-rtl","exit"],["vb-shake","attention"],["vb-pulse","attention"],["vb-bounce","attention"],["vb-blink","attention"],["vb-neon-pulse","decoration"],["vb-3d-shift","decoration"],["vb-outline-glow-pulse","decoration"],["vb-rainbow","decoration"],["vb-gradient-flow","decoration"],["vb-shimmer","decoration"],["vb-shimmer-gradient","decoration"],["vb-glow","decoration"],["vb-float","decoration"]]),A="__vbEffectsRuntime",_=globalThis,f=_[A]??{_effects:new Map,_triggers:new Map,_transitions:new Map,_instances:new WeakMap,_triggerCleanups:new WeakMap,_wiredTriggers:new WeakMap,_transitionCleanups:new WeakMap,_keyframePhase:M,_observer:null,_animationEndHandler:null,_autoBooted:!1,effect(t,e){this._effects.set(t,e),document.querySelectorAll("[data-effect]").forEach(i=>{if(!(i.getAttribute("data-effect")||"").split(/\s+/).includes(t))return;let r=!this._instances.get(i)?.has(t);this._initEffect(i,t),r&&i.hasAttribute("data-effect-active")&&this._instances.get(i)?.get(t)?.activate?.()})},trigger(t,e){this._triggers.set(t,e),document.querySelectorAll("[data-effect-processed][data-trigger]").forEach(i=>{let n=i.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];this._wireTrigger(i,n)})},transition(t,e){this._transitions.set(t,e)},uid(t){return t.id?t.id:(t._vbUid||(E++,t._vbUid=`vb-${E}`),t._vbUid)},theme(t,e){this._themes=this._themes||new Map,this._themes.set(t,e)},applyTheme(t,e=document.documentElement){let i=this._themes?.get(t);if(i)for(let[n,r]of Object.entries(i))e.style.setProperty(n,r)},swap(t){if(!document.startViewTransition){t(),queueMicrotask(()=>this._dispatchVtDone(document.body));return}let e=document.startViewTransition(t);return e.updateCallbackDone.then(()=>{this._dispatchVtDone(document.body)}).catch(()=>{}),e},_dispatchVtDone(t){t.querySelectorAll('[data-trigger~="vt"]').forEach(e=>{this.emit(e,"vb:vt-update-done",{})})},activate(t){this._activateEffects(t)},deactivate(t){t.hasAttribute("data-effect-active")&&(t.removeAttribute("data-effect-active"),this.emit(t,"vb:phase-change",{active:!1}))},onPhaseEnd(t,e,i){let n=r=>{r.detail?.phase===e&&i(r.detail)};return t.addEventListener("vb:effect-phase-end",n),()=>t.removeEventListener("vb:effect-phase-end",n)},registerKeyframe(t,e){this._keyframePhase.set(t,e)},observe(t=document){if(t.querySelectorAll("[data-effect]").forEach(i=>this._processElement(i)),t.querySelectorAll("[data-stagger]").forEach(i=>this._processStagger(i)),t.querySelectorAll("[data-transition]").forEach(i=>this._processTransition(i)),this._observer)return;this._observer=new MutationObserver(i=>{for(let n of i){if(n.type==="childList"){for(let r of n.addedNodes)r.nodeType===Node.ELEMENT_NODE&&this._processTree(r);for(let r of n.removedNodes)r.nodeType===Node.ELEMENT_NODE&&(r.isConnected||this._cleanupTree(r))}if(n.type==="attributes"){let r=n.target;n.attributeName==="data-effect"&&this._reconcileEffects(r),n.attributeName==="data-trigger"&&this._reconcileTrigger(r),n.attributeName==="data-stagger"&&this._processStagger(r),n.attributeName==="data-transition"&&this._processTransition(r)}}});let e=t===document?document.body:t;this._observer.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-effect","data-trigger","data-stagger","data-transition"]}),this._animationEndHandler||(this._animationEndHandler=i=>{let n=i.target;if(!(n instanceof Element)||!n.hasAttribute("data-effect"))return;let r=this._keyframePhase.get(i.animationName);r&&this.emit(n,"vb:effect-phase-end",{phase:r,animationName:i.animationName})},document.addEventListener("animationend",this._animationEndHandler))},disconnect(){this._observer&&(this._observer.disconnect(),this._observer=null),this._animationEndHandler&&(document.removeEventListener("animationend",this._animationEndHandler),this._animationEndHandler=null)},params(t){let e=getComputedStyle(t);return{get(i){return e.getPropertyValue(`--vb-${i}`).trim()},getNumber(i,n=0){let r=e.getPropertyValue(`--vb-${i}`).trim();return r?parseFloat(r):n},getTime(i,n=0){let r=e.getPropertyValue(`--vb-${i}`).trim();if(!r)return n;let a=parseFloat(r);return Number.isFinite(a)?/s\s*$/.test(r)&&!/ms\s*$/.test(r)?a*1e3:a:n},hasClass(i){return t.classList.contains(i)}}},emit(t,e,i={}){t.dispatchEvent(new CustomEvent(e,{bubbles:!0,detail:i}))},prefersReducedMotion:y,_processTree(t){t.hasAttribute?.("data-effect")&&this._processElement(t),t.hasAttribute?.("data-stagger")&&this._processStagger(t),t.hasAttribute?.("data-transition")&&this._processTransition(t),t.querySelectorAll?.("[data-effect]").forEach(e=>this._processElement(e)),t.querySelectorAll?.("[data-stagger]").forEach(e=>this._processStagger(e)),t.querySelectorAll?.("[data-transition]").forEach(e=>this._processTransition(e))},_cleanupTree(t){t.hasAttribute?.("data-effect")&&this._cleanupElement(t),t.hasAttribute?.("data-transition")&&this._cleanupTransition(t),t.querySelectorAll?.("[data-effect]").forEach(e=>this._cleanupElement(e)),t.querySelectorAll?.("[data-transition]").forEach(e=>this._cleanupTransition(e))},_processElement(t){if(t.hasAttribute("data-effect-processed"))return;t.setAttribute("data-effect-processed","");let e=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];for(let i of e)this._initEffect(t,i);this._wireTrigger(t,e)},_initEffect(t,e){let i=this._effects.get(e);if(!i)return;let n=this._instances.get(t);if(n?.has(e))return;y();let r=i(t);r&&(n||(n=new Map,this._instances.set(t,n)),typeof r=="function"?n.set(e,{cleanup:r}):n.set(e,r))},_wireTrigger(t,e){let i=t.getAttribute("data-trigger");if(!i){this._activateEffects(t);return}let n=i.split(/\s+/).filter(Boolean);this._wiredTriggers??=new WeakMap;let r=this._wiredTriggers.get(t);r||(r=new Set,this._wiredTriggers.set(t,r));for(let a of n){if(r.has(a))continue;let s=a.indexOf(":"),o=s>-1?a.slice(0,s):a,d=s>-1?a.slice(s+1):null,c=this._triggers.get(o);if(!c)continue;r.add(a);let u=c(t,()=>this._activateEffects(t),d);if(u){let l=this._triggerCleanups.get(t);if(l){let h=l;this._triggerCleanups.set(t,()=>{h(),u()})}else this._triggerCleanups.set(t,u)}}},_activateEffects(t){t.setAttribute("data-effect-active",""),this.emit(t,"vb:phase-change",{active:!0});let e=this._instances.get(t);if(e)for(let[,i]of e)i.activate&&i.activate()},_cleanupElement(t){let e=this._instances.get(t);if(e){for(let[,n]of e)n.cleanup&&n.cleanup();this._instances.delete(t)}let i=this._triggerCleanups.get(t);i&&(i(),this._triggerCleanups.delete(t)),this._wiredTriggers?.delete(t)},_reconcileEffects(t){let e=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[],i=this._instances.get(t);if(i)for(let[n,r]of i)e.includes(n)||(r.cleanup&&r.cleanup(),i.delete(n));for(let n of e)i?.has(n)||this._initEffect(t,n);t.hasAttribute("data-effect-processed")||(t.setAttribute("data-effect-processed",""),this._wireTrigger(t,e))},_reconcileTrigger(t){let e=this._triggerCleanups.get(t);e&&(e(),this._triggerCleanups.delete(t)),this._wiredTriggers?.delete(t);let i=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];this._wireTrigger(t,i)},_processStagger(t){let e=t.getAttribute("data-stagger")||"",i=t.children,n=i.length,r;if(e==="reverse")r=Array.from({length:n},(a,s)=>n-1-s);else if(e==="random"){let a=this._hashString(this.uid(t));r=Array.from({length:n},(o,d)=>d);let s=a;for(let o=n-1;o>0;o--){s^=s<<13,s^=s>>>17,s^=s<<5;let d=Math.abs(s)%(o+1);[r[o],r[d]]=[r[d],r[o]]}}else if(e==="grid"){let a=[];for(let s=0;s<n;s++){let o=getComputedStyle(i[s]),d=parseInt(o.gridRowStart,10),c=parseInt(o.gridColumnStart,10);a.push({i:s,dist:Number.isFinite(d)&&Number.isFinite(c)?d-1+(c-1):s})}a.sort((s,o)=>s.dist-o.dist),r=new Array(n),a.forEach((s,o)=>{r[s.i]=o})}else r=Array.from({length:n},(a,s)=>s);for(let a=0;a<n;a++)i[a].style.setProperty("--vb-stagger-index",String(r[a]))},_hashString(t){let e=5381;for(let i=0;i<t.length;i++)e=(e<<5)+e^t.charCodeAt(i);return e|0},_processTransition(t){if(t.hasAttribute("data-transition-processed"))return;t.setAttribute("data-transition-processed","");let e=t.getAttribute("data-transition");if(!e)return;let i=e.indexOf(":"),n=i>-1?e.slice(0,i):e,r=i>-1?e.slice(i+1):null,a=this._transitions.get(n);if(a){let s=a(t,r);s&&this._transitionCleanups.set(t,s)}else t.style.viewTransitionName=`${e}-${this.uid(t)}`},_cleanupTransition(t){let e=this._transitionCleanups.get(t);e&&(e(),this._transitionCleanups.delete(t)),t.style.viewTransitionName=""}};_[A]=f;typeof window<"u"&&(window.VB=f);typeof document<"u"&&!f._autoBooted&&(f._autoBooted=!0,document.body?f.observe():document.addEventListener("DOMContentLoaded",()=>f.observe(),{once:!0}));f.effect("glitch",t=>{t.hasAttribute("data-effect-glitch-init")||(t.setAttribute("data-effect-glitch-init",""),t.setAttribute("data-glitch-text",t.textContent))});function $(t,e,i,n){let r=0;function a(){r<=e.length?(t.firstChild.textContent=e.slice(0,r),r++,setTimeout(a,i)):n&&n()}a()}function V(t,e,i){let n=t.firstChild.textContent,r=n.length;function a(){r>=0?(t.firstChild.textContent=n.slice(0,r),r--,setTimeout(a,e/2)):i&&i()}a()}function q(t){let e=t.getAttribute("data-typewriter-text"),i=f.params(t),n=i.getTime("typewriter-speed",50),r=i.getTime("typewriter-delay",0),s=t.classList.contains("loop")?2e3:null;t.textContent="";let o=document.createTextNode("");if(t.appendChild(o),!t.classList.contains("no-cursor")){let u=document.createElement("span");u.className="vb-typewriter-cursor",u.textContent="|",u.setAttribute("aria-hidden","true"),t.appendChild(u)}function c(){$(t,e,n,()=>{s!==null&&setTimeout(()=>{V(t,n,()=>{setTimeout(c,400)})},s)})}setTimeout(c,r)}f.effect("typewriter",t=>{if(t.hasAttribute("data-effect-typewriter-init"))return;t.setAttribute("data-effect-typewriter-init","");let e=t.textContent.trim();if(t.setAttribute("data-typewriter-text",e),t.setAttribute("aria-label",e),!f.prefersReducedMotion())return t.textContent="",{activate(){q(t)},cleanup(){}}});var w="!<>-_\\/[]{}=+*^?#";function C(t){return t[Math.floor(Math.random()*t.length)]}function B(t){let e=t.getAttribute("data-scramble-text"),i=f.params(t),n=i.getTime("scramble-duration",1500),r=i.get("scramble-chars")||w,a=i.getTime("scramble-speed",30),s=e.length,o=0,d=Math.ceil(n/a);function c(){let u=o/d,l=Math.floor(u*s),h="";for(let p=0;p<s;p++)p<l?h+=e[p]:e[p]===" "?h+=" ":h+=C(r);t.textContent=h,o++,o<=d?setTimeout(c,a):t.textContent=e}c()}f.effect("scramble",t=>{if(t.hasAttribute("data-effect-scramble-init"))return;t.setAttribute("data-effect-scramble-init","");let e=t.textContent.trim();if(t.setAttribute("data-scramble-text",e),t.setAttribute("aria-label",e),f.prefersReducedMotion())return;let i=f.params(t).get("scramble-chars")||w;return t.textContent=e.replace(/\S/g,()=>C(i)),{activate(){B(t)},cleanup(){}}});function F(t){let e=t.textContent;t.setAttribute("aria-label",e),t.innerHTML="",e.split(/(\s+)/).forEach((n,r)=>{if(/^\s+$/.test(n)){t.appendChild(document.createTextNode(n));return}let a=document.createElement("span");a.className="vb-blur-chunk",a.textContent=n,a.style.setProperty("--i",String(Math.floor(r/2))),a.setAttribute("aria-hidden","true"),t.appendChild(a)})}function P(t){let e=t.textContent;t.setAttribute("aria-label",e);let i=e.split(/\s+/).filter(Boolean),n=[],r="",a=t.offsetWidth,s=document.createElement("span");s.style.visibility="hidden",s.style.position="absolute",s.style.font=getComputedStyle(t).font,document.body.appendChild(s),i.forEach(o=>{let d=r?r+" "+o:o;s.textContent=d,s.offsetWidth>a&&r?(n.push(r),r=o):r=d}),r&&n.push(r),document.body.removeChild(s),n.length===0&&n.push(e),t.innerHTML="",n.forEach((o,d)=>{let c=document.createElement("span");c.className="vb-blur-chunk",c.textContent=o,c.style.setProperty("--i",String(d)),c.setAttribute("aria-hidden","true"),t.appendChild(c),d<n.length-1&&t.appendChild(document.createTextNode(" "))})}f.effect("blur-reveal",t=>{if(t.hasAttribute("data-effect-blur-reveal-init")||(t.setAttribute("data-effect-blur-reveal-init",""),f.prefersReducedMotion()))return;let e=t.classList.contains("line")?"line":"word",i=f.params(t).get("blur-reveal-delay")||"80ms";return t.style.setProperty("--blur-delay",i),e==="line"?P(t):F(t),{activate(){t.setAttribute("data-effect-active","")},cleanup(){}}});f.effect("animate-image",t=>{if(t.hasAttribute("data-effect-animate-image-init"))return;t.setAttribute("data-effect-animate-image-init","");let e=t,i=document.createElement("div");if(i.className="animate-image-wrapper",!e.parentNode)return;e.parentNode.insertBefore(i,e),i.appendChild(e);let n=document.createElement("button");n.type="button",n.className="animate-image-toggle",n.setAttribute("aria-label","Pause animation"),i.appendChild(n);let r=e.src,a=null,s=!1;function o(){let l=document.createElement("canvas");l.width=e.naturalWidth||e.width,l.height=e.naturalHeight||e.height;let h=l.getContext("2d");if(h){h.drawImage(e,0,0);try{a=l.toDataURL("image/png")}catch{a=null}}}function d(){s||(s=!0,e.setAttribute("data-animate-image-paused",""),n.setAttribute("aria-label","Play animation"),n.classList.add("paused"),a&&(e.src=a))}function c(){s&&(s=!1,e.removeAttribute("data-animate-image-paused"),n.setAttribute("aria-label","Pause animation"),n.classList.remove("paused"),e.src=r)}n.addEventListener("click",()=>s?c():d()),e.complete&&e.naturalWidth?o():e.addEventListener("load",o,{once:!0});let u=window.matchMedia("(prefers-reduced-motion: reduce)");return(u.matches||document.documentElement.dataset.motionReduced!==void 0)&&(e.complete?(o(),d()):e.addEventListener("load",()=>{o(),d()},{once:!0})),u.addEventListener("change",l=>{l.matches&&d()}),e.hasAttribute("data-animate-image-paused")&&(e.complete?(o(),s=!1,d()):e.addEventListener("load",()=>{o(),s=!1,d()},{once:!0})),{cleanup(){i.parentNode&&(i.parentNode.insertBefore(e,i),i.remove())}}});function x(){return document.documentElement.lang||navigator.language||"en"}function R(t){return t===1?1:1-Math.pow(2,-10*t)}function O(t){let e=t.indexOf(".");return e===-1?0:t.length-e-1}function D(t,e){let i=t.getAttribute("data-locale")||x(),n=t.getAttribute("data-format-number");if(n!=null){let r={minimumFractionDigits:e,maximumFractionDigits:e};switch(n){case"currency":r.style="currency",r.currency=t.getAttribute("data-currency")||"USD";break;case"percent":r.style="percent";break;case"compact":r.notation="compact";break}try{return new Intl.NumberFormat(i,r)}catch{return null}}try{return new Intl.NumberFormat(i,{minimumFractionDigits:e,maximumFractionDigits:e})}catch{return null}}function I(t){let e=t.getAttribute("value");if(e==null)return;let i=Number(e);if(isNaN(i))return;let n=f.params(t),r=n.getNumber("ticker-start",0),a=n.getTime("ticker-duration",1e3),s=n.get("ticker-decimals")?parseInt(n.get("ticker-decimals"),10):O(e),o=D(t,s),d=i-r;if(d===0)return;let c=null;function u(l){c||(c=l);let h=l-c,p=Math.min(h/a,1),m=R(p),v=r+d*m;t.textContent=o?o.format(v):v.toFixed(s),p<1?requestAnimationFrame(u):(t.textContent=o?o.format(i):i.toFixed(s),t.hasAttribute("data-format-number")&&t.setAttribute("data-format-number-init",""))}requestAnimationFrame(u)}f.effect("ticker",t=>{if(!t.hasAttribute("data-effect-ticker-init")&&(t.setAttribute("data-effect-ticker-init",""),!f.prefersReducedMotion()))return{activate(){I(t)},cleanup(){}}});var Z=window.matchMedia("(prefers-reduced-motion: reduce)");var N=new Map;function T(t,e,i={}){let n=i.priority??10,r={impl:e,bundle:i.bundle,contract:i.contract,priority:n},a=N.get(t);if(customElements.get(t)){if(!a||a.priority>=n){a&&a.priority===n&&a.impl!==e&&console.warn(`[VB Bundle] Tag <${t}> already registered by "${a.bundle}" (priority ${a.priority}). Skipping "${i.bundle}".`);return}console.warn(`[VB Bundle] Tag <${t}> defined by "${a.bundle}" cannot be replaced (customElements.define is permanent). "${i.bundle}" has higher priority but arrived late.`);return}if(a&&a.priority>=n){a.priority===n&&console.warn(`[VB Bundle] Tag <${t}> already registered by "${a.bundle}". Skipping "${i.bundle}" (first wins at equal priority).`);return}N.set(t,r),customElements.define(t,e)}var g=class extends HTMLElement{#e=[];#i;connectedCallback(){this.hasAttribute("data-upgraded")||this.setup()!==!1&&(this.setAttribute("data-upgraded",""),queueMicrotask(()=>{this.dispatchEvent(new CustomEvent(`${this.localName}:upgraded`,{bubbles:!0}))}))}disconnectedCallback(){for(let e of this.#e)e();this.#e=[],this.removeAttribute("data-upgraded"),this.teardown()}listen(e,i,n,r){e.addEventListener(i,n,r),this.#e.push(()=>e.removeEventListener(i,n,r))}setup(){}teardown(){}setState(e,i){this.#i||(this.#i=this.attachInternals());let n=this.#i.states;try{i?n.add(e):n.delete(e)}catch{let r=`--${e}`;i?n.add(r):n.delete(r)}}_adoptInternals(e){this.#i||(this.#i=e)}};var b=class extends g{static formAssociated=!0;#e;#i;#t;constructor(){super(),this.#e=this.attachInternals(),this._adoptInternals(this.#e)}setup(){this.#s()}#s(){if(this.querySelector("fieldset"))return;let e=Number(this.getAttribute("value")||0);this.#i=e;let i=Number(this.getAttribute("max")||5),n=this.getAttribute("label")||"Rating",r=this.hasAttribute("allow-half"),a=this.hasAttribute("readonly"),s=this.getAttribute("icon"),d=`_sr_${this.getAttribute("name")||`star-rating-${crypto.randomUUID().slice(0,8)}`}`;a?this.#c(e,i,n,s):this.#o(e,i,n,d,r,s),this.#n(e),this.#r()}#o(e,i,n,r,a,s){let o=document.createElement("fieldset");o.setAttribute("data-rating",""),a&&o.setAttribute("data-rating-half",""),o.setAttribute("data-effect","rating");let d=document.createElement("legend");if(d.textContent=n,o.appendChild(d),a)for(let c=1;c<=i;c++){let u=c-.5,l=document.createElement("label");l.setAttribute("data-half","left");let h=document.createElement("input");h.type="radio",h.name=r,h.value=String(u),h.setAttribute("aria-label",`${u} ${u===1?"star":"stars"}`),e===u&&(h.checked=!0),l.appendChild(h),l.append(this.#a(s)),o.appendChild(l);let p=document.createElement("label");p.setAttribute("data-half","right");let m=document.createElement("input");m.type="radio",m.name=r,m.value=String(c),m.setAttribute("aria-label",`${c} ${c===1?"star":"stars"}`),e===c&&(m.checked=!0),p.appendChild(m),p.append(this.#a(s)),o.appendChild(p)}else for(let c=1;c<=i;c++){let u=document.createElement("label"),l=document.createElement("input");l.type="radio",l.name=r,l.value=String(c),l.setAttribute("aria-label",`${c} ${c===1?"star":"stars"}`),e===c&&(l.checked=!0),u.appendChild(l),u.append(this.#a(s)),o.appendChild(u)}this.appendChild(o),this.#t=o,o.addEventListener("rating:change",c=>{this.#n(c.detail.value),this.#r()}),o.addEventListener("change",c=>{let u=c.target;u.type==="radio"&&u.checked&&(this.#n(Number(u.value)),this.#r())})}#c(e,i,n,r){let a=document.createElement("fieldset");a.setAttribute("data-rating",""),a.setAttribute("data-rating-readonly",""),a.setAttribute("role","img"),a.setAttribute("aria-label",`${n}: ${e} out of ${i}`);let s=document.createElement("legend");s.textContent=n,a.appendChild(s);let o=Math.floor(e),d=e-o;for(let c=1;c<=i;c++){let u=document.createElement("span");if(u.setAttribute("aria-hidden","true"),c<=o)u.classList.add("star-filled");else if(c===o+1&&d>0){u.classList.add("star-partial"),u.style.setProperty("--_star-fill",`${d*100}%`);let l=document.createElement("span");l.classList.add("star-partial-fill"),l.append(this.#a(r)),u.appendChild(l)}else u.classList.add("star-empty");u.append(this.#a(r)),a.appendChild(u)}this.appendChild(a),this.#t=a}#a(e){if(e){let i=document.createElement("icon-wc");return i.setAttribute("name",e),i}return document.createTextNode("\u2605")}#n(e){let i=Number(e);i>0?this.#e.setFormValue(String(i)):this.#e.setFormValue(null)}#r(){this.hasAttribute("required")?this.#t?.querySelector('input[type="radio"]:checked')?this.#e.setValidity({}):this.#e.setValidity({valueMissing:!0},"Please select a rating",this.#t||this):this.#e.setValidity({})}formResetCallback(){if(this.#t){if(this.#t.querySelectorAll('input[type="radio"]').forEach(e=>{e.checked=!1}),this.#i>0){let e=this.#t.querySelector(`input[value="${this.#i}"]`);e&&(e.checked=!0)}this.#n(this.#i),this.#r()}}formStateRestoreCallback(e){if(!e||!this.#t)return;let i=this.#t.querySelector(`input[value="${e}"]`);i&&(i.checked=!0,this.#n(Number(e)),this.#r())}get value(){if(!this.#t)return Number(this.getAttribute("value")||0);let e=this.#t.querySelector('input[type="radio"]:checked');return e?Number(e.value):0}set value(e){if(!this.#t)return;let i=Number(e),n=this.#t.querySelector('input[type="radio"]:checked');if((n?Number(n.value):0)!==i){if(this.#t.querySelectorAll('input[type="radio"]').forEach(a=>{a.checked=!1}),i>0){let a=this.#t.querySelector(`input[value="${i}"]`);a&&(a.checked=!0)}this.#n(i),this.#r()}}};T("star-rating",b);var H=1e3;function k(t){let e=document.createElement("div");e.setAttribute("role","status"),e.setAttribute("aria-live","polite"),Object.assign(e.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:"0"}),e.textContent=t,document.body.appendChild(e),setTimeout(()=>e.remove(),H)}function S(t,e){t.dispatchEvent(new CustomEvent("rating:change",{bubbles:!0,detail:{value:e}}))}function U(t){let e=t.querySelector('input[type="radio"]:checked');return e?e.value:"0"}f.effect("rating",t=>{if(t.hasAttribute("data-effect-rating-init")||(t.setAttribute("data-effect-rating-init",""),t.hasAttribute("data-rating-readonly")))return;let e=U(t),i=!1;function n(s){let o=s.target.closest("label");if(!o)return;let d=o.querySelector('input[type="radio"]');d&&(i=d.checked&&d.value===e)}function r(s){if(!i)return;i=!1;let o=s.target.closest("label");if(!o)return;let d=o.querySelector('input[type="radio"]');d&&(d.checked=!1,e="0",S(t,0),k("Rating cleared"))}function a(s){s.target.type==="radio"&&(i||(e=s.target.value,S(t,Number(s.target.value)),k(`Rating: ${s.target.value} ${Number(s.target.value)===1?"star":"stars"}`)))}return t.addEventListener("mousedown",n),t.addEventListener("click",r),t.addEventListener("change",a),{cleanup(){t.removeEventListener("mousedown",n),t.removeEventListener("click",r),t.removeEventListener("change",a)}}});
2
2
  //# sourceMappingURL=effects.full.js.map
@@ -1,2 +1,2 @@
1
- @layer bundle-effects{[data-theme~=journal] mark{--_hl: var(--_journal-butter);background:linear-gradient(transparent 8%,var(--_hl) 8% 86%,transparent 86%);color:inherit;mix-blend-mode:multiply;padding:0 .12em;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}[data-theme~=journal] mark[data-tint=mint]{--_hl: var(--_journal-mint)}[data-theme~=journal] mark[data-tint=coral]{--_hl: var(--_journal-coral)}[data-theme~=journal] mark[data-tint=sky]{--_hl: var(--_journal-sky)}[data-theme~=journal] mark[data-tint=lilac]{--_hl: var(--_journal-lilac)}[data-theme~=journal] mark[data-tint=blush]{--_hl: var(--_journal-blush)}[data-theme~=journal] mark[data-tint=butter]{--_hl: var(--_journal-butter)}[data-theme~=journal][data-mode=dark] mark{mix-blend-mode:screen}@media(prefers-color-scheme:dark){[data-theme~=journal]:not([data-mode=light]) mark{mix-blend-mode:screen}}}@layer bundle-effects{[data-theme~=journal] hr[data-ornament=doodle]{border:none;height:24px;margin-block:2rem;background:var(--color-text);opacity:.7;-webkit-mask:center / 300px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='24'%3E%3Cpath d='M4 14 Q40 3 76 14 T148 14 T220 14 T292 14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");mask:center / 300px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='24'%3E%3Cpath d='M4 14 Q40 3 76 14 T148 14 T220 14 T292 14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}[data-theme~=journal] hr[data-ornament=doodle]:before{content:""}}@layer bundle-effects{[data-theme~=journal] [data-callout=sticky]{background:linear-gradient(180deg,oklch(1 0 0 / .35),transparent 22%),var(--_journal-butter);color:var(--_journal-ink);font-family:var(--_journal-hand);padding:1.25rem 1.5rem;border:none;border-radius:1px;transform:rotate(-2deg);box-shadow:var(--shadow-lg);position:relative}[data-theme~=journal] [data-callout=sticky]:after{content:"";position:absolute;right:0;bottom:0;width:26px;height:26px;clip-path:polygon(100% 0,100% 100%,0 100%);background:linear-gradient(135deg,#dccb86,#b09d63);box-shadow:-2px -2px 5px #0000002e}}@layer bundle-effects{[data-theme~=journal] [data-journal=photo]{background:#fff;padding:11px 11px 40px;max-width:240px;border:none;border-radius:1px;transform:rotate(2deg);box-shadow:var(--shadow-lg);position:relative;margin:0}[data-theme~=journal] [data-journal=photo] :is(img,svg){display:block;width:100%;height:auto}[data-theme~=journal] [data-journal=photo] figcaption{font-family:var(--_journal-hand);text-align:center;margin-top:8px;color:var(--_journal-ink)}[data-theme~=journal] [data-journal=photo]:before,[data-theme~=journal] [data-journal=photo]:after{content:"";position:absolute;top:-9px;width:62px;height:22px;background:#c7edef8c;mix-blend-mode:multiply;box-shadow:0 1px 2px #00000024}[data-theme~=journal] [data-journal=photo]:before{left:-14px;transform:rotate(-38deg)}[data-theme~=journal] [data-journal=photo]:after{right:-14px;transform:rotate(38deg)}[data-theme~=journal][data-mode=dark] [data-journal=photo]:before,[data-theme~=journal][data-mode=dark] [data-journal=photo]:after{mix-blend-mode:screen}@media(prefers-color-scheme:dark){[data-theme~=journal]:not([data-mode=light]) [data-journal=photo]:before,[data-theme~=journal]:not([data-mode=light]) [data-journal=photo]:after{mix-blend-mode:screen}}}@layer bundle-effects{[data-theme~=journal] [data-journal=rapid-log]{list-style:none;margin:0;padding:0;font-family:var(--_journal-hand)}[data-theme~=journal] [data-journal=rapid-log]>li{display:flex;gap:.6em;align-items:baseline;padding:.3em 0}[data-theme~=journal] [data-journal=rapid-log]>li:before{content:"\2022";flex:none;width:1.1em;text-align:center;color:var(--color-text-muted);font-weight:700}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=done]:before{content:"\2713"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=dropped]:before{content:"\2717";color:var(--color-text-subtle)}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=migrated]:before{content:"\203a"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=event]:before{content:"\25cb"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=note]:before{content:"\2014"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=done]{color:var(--color-text-muted);text-decoration:line-through;text-decoration-color:var(--_journal-coral);text-decoration-thickness:2px}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=dropped]{color:var(--color-text-subtle);text-decoration:line-through}[data-theme~=journal] [data-journal=key]{font-family:var(--font-mono);font-size:.72rem;color:var(--color-text-muted);border-top:1px dashed var(--color-border);padding-top:.6em;margin-top:.8em;display:flex;flex-wrap:wrap;gap:.2em 1em}}@layer bundle-effects{[data-theme~=journal] [data-journal=tracker]{border-collapse:collapse;width:100%;font-family:var(--_journal-hand)}[data-theme~=journal] [data-journal=tracker] th{font-family:var(--font-mono);font-size:.7rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.06em;padding:0 0 .5em}[data-theme~=journal] [data-journal=tracker] td{text-align:center;padding:.25em 0}[data-theme~=journal] [data-journal=tracker] th[scope=row],[data-theme~=journal] [data-journal=tracker] td[data-lab]{text-align:left;color:var(--color-text);padding-right:.5em;white-space:nowrap}[data-theme~=journal] [data-journal=tracker] td[data-mark]:before{content:"";display:inline-block;width:16px;height:16px;border-radius:50%;border:2px solid var(--color-border);vertical-align:middle}[data-theme~=journal] [data-journal=tracker] td[data-mark=done]:before{background:var(--_c, var(--_journal-mint));border-color:transparent}}@layer bundle-effects{[data-theme~=journal] [data-journal=tabs]{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}[data-theme~=journal] [data-journal=tabs] :is(a,button){display:inline-block;font-family:var(--_journal-hand);font-weight:600;font-size:.9rem;color:var(--_journal-ink);text-decoration:none;padding:7px 14px;border:none;border-radius:0 8px 8px 0;box-shadow:2px 2px 5px #00000029;background:var(--_journal-mint);cursor:pointer;transition:transform .15s var(--ease-out)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(2 of:is(a,button)){background:var(--_journal-sky)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(3 of:is(a,button)){background:var(--_journal-blush)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(4 of:is(a,button)){background:var(--_journal-butter)}[data-theme~=journal] [data-journal=tabs] :is(a,button):hover{transform:translate(6px)}@media(prefers-reduced-motion:reduce){[data-theme~=journal] [data-journal=tabs] :is(a,button){transition:none}[data-theme~=journal] [data-journal=tabs] :is(a,button):hover{transform:none}}}@layer bundle-effects{[data-theme~=journal] [data-journal=page]{position:relative;padding:56px 48px 64px 78px;border-radius:4px;background:radial-gradient(circle,var(--_journal-dot) 1.3px,transparent 1.7px) 8px 8px / 22px 22px,var(--_journal-paper);box-shadow:var(--shadow-xl);color:var(--_journal-ink)}[data-theme~=journal] [data-journal=page]:before{content:"";position:absolute;left:62px;top:0;bottom:0;border-left:1.5px solid var(--_journal-margin);opacity:.55}[data-theme~=journal] [data-journal=page]:after{content:"";position:absolute;left:16px;top:30px;bottom:30px;width:12px;background:radial-gradient(circle,oklch(.86 .02 80) 5px,transparent 6px) center top / 12px 60px repeat-y}[data-theme~=journal] [data-journal=ribbon]{position:absolute;top:-6px;right:64px;width:26px;height:96px;background:var(--_journal-coral);clip-path:polygon(0 0,100% 0,100% 100%,50% 84%,0 100%);box-shadow:0 4px 8px #0003}[data-theme~=journal] [data-journal=stamp]{position:absolute;top:12px;right:120px;transform:rotate(-11deg);font-family:var(--font-mono);font-weight:700;font-size:11px;letter-spacing:.12em;color:var(--_journal-margin);border:2px solid var(--_journal-margin);border-radius:6px;padding:6px 10px;opacity:.62;mix-blend-mode:multiply;text-align:center;line-height:1.25}}
1
+ @layer bundle-effects{[data-theme~=journal] mark{--_hl: var(--_journal-butter);background:linear-gradient(transparent 8%,var(--_hl) 8% 86%,transparent 86%);color:inherit;mix-blend-mode:multiply;padding:0 .12em;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}[data-theme~=journal] mark[data-tint=mint]{--_hl: var(--_journal-mint)}[data-theme~=journal] mark[data-tint=coral]{--_hl: var(--_journal-coral)}[data-theme~=journal] mark[data-tint=sky]{--_hl: var(--_journal-sky)}[data-theme~=journal] mark[data-tint=lilac]{--_hl: var(--_journal-lilac)}[data-theme~=journal] mark[data-tint=blush]{--_hl: var(--_journal-blush)}[data-theme~=journal] mark[data-tint=butter]{--_hl: var(--_journal-butter)}[data-theme~=journal][data-mode=dark] mark{mix-blend-mode:screen}@media(prefers-color-scheme:dark){[data-theme~=journal]:not([data-mode=light]) mark{mix-blend-mode:screen}}}@layer bundle-effects{[data-theme~=journal] hr[data-ornament=doodle]{border:none;height:24px;margin-block:2rem;background:var(--color-text);opacity:.7;-webkit-mask:center / 300px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='24'%3E%3Cpath d='M4 14 Q40 3 76 14 T148 14 T220 14 T292 14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");mask:center / 300px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='24'%3E%3Cpath d='M4 14 Q40 3 76 14 T148 14 T220 14 T292 14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}[data-theme~=journal] hr[data-ornament=doodle]:before{content:""}}@layer bundle-effects{[data-theme~=journal] [data-callout=sticky]{background:linear-gradient(180deg,oklch(1 0 0 / .35),transparent 22%),var(--_journal-butter);color:var(--_journal-ink);font-family:var(--_journal-hand);padding:1.25rem 1.5rem;border:none;border-radius:1px;transform:rotate(-2deg);box-shadow:var(--shadow-l);position:relative}[data-theme~=journal] [data-callout=sticky]:after{content:"";position:absolute;right:0;bottom:0;width:26px;height:26px;clip-path:polygon(100% 0,100% 100%,0 100%);background:linear-gradient(135deg,#dccb86,#b09d63);box-shadow:-2px -2px 5px #0000002e}}@layer bundle-effects{[data-theme~=journal] [data-journal=photo]{background:#fff;padding:11px 11px 40px;max-width:240px;border:none;border-radius:1px;transform:rotate(2deg);box-shadow:var(--shadow-l);position:relative;margin:0}[data-theme~=journal] [data-journal=photo] :is(img,svg){display:block;width:100%;height:auto}[data-theme~=journal] [data-journal=photo] figcaption{font-family:var(--_journal-hand);text-align:center;margin-top:8px;color:var(--_journal-ink)}[data-theme~=journal] [data-journal=photo]:before,[data-theme~=journal] [data-journal=photo]:after{content:"";position:absolute;top:-9px;width:62px;height:22px;background:#c7edef8c;mix-blend-mode:multiply;box-shadow:0 1px 2px #00000024}[data-theme~=journal] [data-journal=photo]:before{left:-14px;transform:rotate(-38deg)}[data-theme~=journal] [data-journal=photo]:after{right:-14px;transform:rotate(38deg)}[data-theme~=journal][data-mode=dark] [data-journal=photo]:before,[data-theme~=journal][data-mode=dark] [data-journal=photo]:after{mix-blend-mode:screen}@media(prefers-color-scheme:dark){[data-theme~=journal]:not([data-mode=light]) [data-journal=photo]:before,[data-theme~=journal]:not([data-mode=light]) [data-journal=photo]:after{mix-blend-mode:screen}}}@layer bundle-effects{[data-theme~=journal] [data-journal=rapid-log]{list-style:none;margin:0;padding:0;font-family:var(--_journal-hand)}[data-theme~=journal] [data-journal=rapid-log]>li{display:flex;gap:.6em;align-items:baseline;padding:.3em 0}[data-theme~=journal] [data-journal=rapid-log]>li:before{content:"\2022";flex:none;width:1.1em;text-align:center;color:var(--color-text-muted);font-weight:700}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=done]:before{content:"\2713"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=dropped]:before{content:"\2717";color:var(--color-text-subtle)}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=migrated]:before{content:"\203a"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=event]:before{content:"\25cb"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=note]:before{content:"\2014"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=done]{color:var(--color-text-muted);text-decoration:line-through;text-decoration-color:var(--_journal-coral);text-decoration-thickness:2px}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=dropped]{color:var(--color-text-subtle);text-decoration:line-through}[data-theme~=journal] [data-journal=key]{font-family:var(--font-mono);font-size:.72rem;color:var(--color-text-muted);border-top:1px dashed var(--color-border);padding-top:.6em;margin-top:.8em;display:flex;flex-wrap:wrap;gap:.2em 1em}}@layer bundle-effects{[data-theme~=journal] [data-journal=tracker]{border-collapse:collapse;width:100%;font-family:var(--_journal-hand)}[data-theme~=journal] [data-journal=tracker] th{font-family:var(--font-mono);font-size:.7rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.06em;padding:0 0 .5em}[data-theme~=journal] [data-journal=tracker] td{text-align:center;padding:.25em 0}[data-theme~=journal] [data-journal=tracker] th[scope=row],[data-theme~=journal] [data-journal=tracker] td[data-lab]{text-align:left;color:var(--color-text);padding-right:.5em;white-space:nowrap}[data-theme~=journal] [data-journal=tracker] td[data-mark]:before{content:"";display:inline-block;width:16px;height:16px;border-radius:50%;border:2px solid var(--color-border);vertical-align:middle}[data-theme~=journal] [data-journal=tracker] td[data-mark=done]:before{background:var(--_c, var(--_journal-mint));border-color:transparent}}@layer bundle-effects{[data-theme~=journal] [data-journal=tabs]{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}[data-theme~=journal] [data-journal=tabs] :is(a,button){display:inline-block;font-family:var(--_journal-hand);font-weight:600;font-size:.9rem;color:var(--_journal-ink);text-decoration:none;padding:7px 14px;border:none;border-radius:0 8px 8px 0;box-shadow:2px 2px 5px #00000029;background:var(--_journal-mint);cursor:pointer;transition:transform .15s var(--ease-out)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(2 of:is(a,button)){background:var(--_journal-sky)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(3 of:is(a,button)){background:var(--_journal-blush)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(4 of:is(a,button)){background:var(--_journal-butter)}[data-theme~=journal] [data-journal=tabs] :is(a,button):hover{transform:translate(6px)}@media(prefers-reduced-motion:reduce){[data-theme~=journal] [data-journal=tabs] :is(a,button){transition:none}[data-theme~=journal] [data-journal=tabs] :is(a,button):hover{transform:none}}}@layer bundle-effects{[data-theme~=journal] [data-journal=page]{position:relative;padding:56px 48px 64px 78px;border-radius:4px;background:radial-gradient(circle,var(--_journal-dot) 1.3px,transparent 1.7px) 8px 8px / 22px 22px,var(--_journal-paper);box-shadow:var(--shadow-xl);color:var(--_journal-ink)}[data-theme~=journal] [data-journal=page]:before{content:"";position:absolute;left:62px;top:0;bottom:0;border-left:1.5px solid var(--_journal-margin);opacity:.55}[data-theme~=journal] [data-journal=page]:after{content:"";position:absolute;left:16px;top:30px;bottom:30px;width:12px;background:radial-gradient(circle,oklch(.86 .02 80) 5px,transparent 6px) center top / 12px 60px repeat-y}[data-theme~=journal] [data-journal=ribbon]{position:absolute;top:-6px;right:64px;width:26px;height:96px;background:var(--_journal-coral);clip-path:polygon(0 0,100% 0,100% 100%,50% 84%,0 100%);box-shadow:0 4px 8px #0003}[data-theme~=journal] [data-journal=stamp]{position:absolute;top:12px;right:120px;transform:rotate(-11deg);font-family:var(--font-mono);font-weight:700;font-size:11px;letter-spacing:.12em;color:var(--_journal-margin);border:2px solid var(--_journal-margin);border-radius:6px;padding:6px 10px;opacity:.62;mix-blend-mode:multiply;text-align:center;line-height:1.25}}
2
2
  /*# sourceMappingURL=journal.effects.css.map */
@@ -1,2 +1,2 @@
1
- @layer bundle-effects{[data-theme~=journal] mark{--_hl: var(--_journal-butter);background:linear-gradient(transparent 8%,var(--_hl) 8% 86%,transparent 86%);color:inherit;mix-blend-mode:multiply;padding:0 .12em;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}[data-theme~=journal] mark[data-tint=mint]{--_hl: var(--_journal-mint)}[data-theme~=journal] mark[data-tint=coral]{--_hl: var(--_journal-coral)}[data-theme~=journal] mark[data-tint=sky]{--_hl: var(--_journal-sky)}[data-theme~=journal] mark[data-tint=lilac]{--_hl: var(--_journal-lilac)}[data-theme~=journal] mark[data-tint=blush]{--_hl: var(--_journal-blush)}[data-theme~=journal] mark[data-tint=butter]{--_hl: var(--_journal-butter)}[data-theme~=journal][data-mode=dark] mark{mix-blend-mode:screen}@media(prefers-color-scheme:dark){[data-theme~=journal]:not([data-mode=light]) mark{mix-blend-mode:screen}}}@layer bundle-effects{[data-theme~=journal] hr[data-ornament=doodle]{border:none;height:24px;margin-block:2rem;background:var(--color-text);opacity:.7;-webkit-mask:center / 300px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='24'%3E%3Cpath d='M4 14 Q40 3 76 14 T148 14 T220 14 T292 14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");mask:center / 300px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='24'%3E%3Cpath d='M4 14 Q40 3 76 14 T148 14 T220 14 T292 14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}[data-theme~=journal] hr[data-ornament=doodle]:before{content:""}}@layer bundle-effects{[data-theme~=journal] [data-callout=sticky]{background:linear-gradient(180deg,oklch(1 0 0 / .35),transparent 22%),var(--_journal-butter);color:var(--_journal-ink);font-family:var(--_journal-hand);padding:1.25rem 1.5rem;border:none;border-radius:1px;transform:rotate(-2deg);box-shadow:var(--shadow-lg);position:relative}[data-theme~=journal] [data-callout=sticky]:after{content:"";position:absolute;right:0;bottom:0;width:26px;height:26px;clip-path:polygon(100% 0,100% 100%,0 100%);background:linear-gradient(135deg,#dccb86,#b09d63);box-shadow:-2px -2px 5px #0000002e}}@layer bundle-effects{[data-theme~=journal] [data-journal=photo]{background:#fff;padding:11px 11px 40px;max-width:240px;border:none;border-radius:1px;transform:rotate(2deg);box-shadow:var(--shadow-lg);position:relative;margin:0}[data-theme~=journal] [data-journal=photo] :is(img,svg){display:block;width:100%;height:auto}[data-theme~=journal] [data-journal=photo] figcaption{font-family:var(--_journal-hand);text-align:center;margin-top:8px;color:var(--_journal-ink)}[data-theme~=journal] [data-journal=photo]:before,[data-theme~=journal] [data-journal=photo]:after{content:"";position:absolute;top:-9px;width:62px;height:22px;background:#c7edef8c;mix-blend-mode:multiply;box-shadow:0 1px 2px #00000024}[data-theme~=journal] [data-journal=photo]:before{left:-14px;transform:rotate(-38deg)}[data-theme~=journal] [data-journal=photo]:after{right:-14px;transform:rotate(38deg)}[data-theme~=journal][data-mode=dark] [data-journal=photo]:before,[data-theme~=journal][data-mode=dark] [data-journal=photo]:after{mix-blend-mode:screen}@media(prefers-color-scheme:dark){[data-theme~=journal]:not([data-mode=light]) [data-journal=photo]:before,[data-theme~=journal]:not([data-mode=light]) [data-journal=photo]:after{mix-blend-mode:screen}}}@layer bundle-effects{[data-theme~=journal] [data-journal=rapid-log]{list-style:none;margin:0;padding:0;font-family:var(--_journal-hand)}[data-theme~=journal] [data-journal=rapid-log]>li{display:flex;gap:.6em;align-items:baseline;padding:.3em 0}[data-theme~=journal] [data-journal=rapid-log]>li:before{content:"\2022";flex:none;width:1.1em;text-align:center;color:var(--color-text-muted);font-weight:700}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=done]:before{content:"\2713"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=dropped]:before{content:"\2717";color:var(--color-text-subtle)}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=migrated]:before{content:"\203a"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=event]:before{content:"\25cb"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=note]:before{content:"\2014"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=done]{color:var(--color-text-muted);text-decoration:line-through;text-decoration-color:var(--_journal-coral);text-decoration-thickness:2px}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=dropped]{color:var(--color-text-subtle);text-decoration:line-through}[data-theme~=journal] [data-journal=key]{font-family:var(--font-mono);font-size:.72rem;color:var(--color-text-muted);border-top:1px dashed var(--color-border);padding-top:.6em;margin-top:.8em;display:flex;flex-wrap:wrap;gap:.2em 1em}}@layer bundle-effects{[data-theme~=journal] [data-journal=tracker]{border-collapse:collapse;width:100%;font-family:var(--_journal-hand)}[data-theme~=journal] [data-journal=tracker] th{font-family:var(--font-mono);font-size:.7rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.06em;padding:0 0 .5em}[data-theme~=journal] [data-journal=tracker] td{text-align:center;padding:.25em 0}[data-theme~=journal] [data-journal=tracker] th[scope=row],[data-theme~=journal] [data-journal=tracker] td[data-lab]{text-align:left;color:var(--color-text);padding-right:.5em;white-space:nowrap}[data-theme~=journal] [data-journal=tracker] td[data-mark]:before{content:"";display:inline-block;width:16px;height:16px;border-radius:50%;border:2px solid var(--color-border);vertical-align:middle}[data-theme~=journal] [data-journal=tracker] td[data-mark=done]:before{background:var(--_c, var(--_journal-mint));border-color:transparent}}@layer bundle-effects{[data-theme~=journal] [data-journal=tabs]{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}[data-theme~=journal] [data-journal=tabs] :is(a,button){display:inline-block;font-family:var(--_journal-hand);font-weight:600;font-size:.9rem;color:var(--_journal-ink);text-decoration:none;padding:7px 14px;border:none;border-radius:0 8px 8px 0;box-shadow:2px 2px 5px #00000029;background:var(--_journal-mint);cursor:pointer;transition:transform .15s var(--ease-out)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(2 of:is(a,button)){background:var(--_journal-sky)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(3 of:is(a,button)){background:var(--_journal-blush)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(4 of:is(a,button)){background:var(--_journal-butter)}[data-theme~=journal] [data-journal=tabs] :is(a,button):hover{transform:translate(6px)}@media(prefers-reduced-motion:reduce){[data-theme~=journal] [data-journal=tabs] :is(a,button){transition:none}[data-theme~=journal] [data-journal=tabs] :is(a,button):hover{transform:none}}}@layer bundle-effects{[data-theme~=journal] [data-journal=page]{position:relative;padding:56px 48px 64px 78px;border-radius:4px;background:radial-gradient(circle,var(--_journal-dot) 1.3px,transparent 1.7px) 8px 8px / 22px 22px,var(--_journal-paper);box-shadow:var(--shadow-xl);color:var(--_journal-ink)}[data-theme~=journal] [data-journal=page]:before{content:"";position:absolute;left:62px;top:0;bottom:0;border-left:1.5px solid var(--_journal-margin);opacity:.55}[data-theme~=journal] [data-journal=page]:after{content:"";position:absolute;left:16px;top:30px;bottom:30px;width:12px;background:radial-gradient(circle,oklch(.86 .02 80) 5px,transparent 6px) center top / 12px 60px repeat-y}[data-theme~=journal] [data-journal=ribbon]{position:absolute;top:-6px;right:64px;width:26px;height:96px;background:var(--_journal-coral);clip-path:polygon(0 0,100% 0,100% 100%,50% 84%,0 100%);box-shadow:0 4px 8px #0003}[data-theme~=journal] [data-journal=stamp]{position:absolute;top:12px;right:120px;transform:rotate(-11deg);font-family:var(--font-mono);font-weight:700;font-size:11px;letter-spacing:.12em;color:var(--_journal-margin);border:2px solid var(--_journal-margin);border-radius:6px;padding:6px 10px;opacity:.62;mix-blend-mode:multiply;text-align:center;line-height:1.25}}
1
+ @layer bundle-effects{[data-theme~=journal] mark{--_hl: var(--_journal-butter);background:linear-gradient(transparent 8%,var(--_hl) 8% 86%,transparent 86%);color:inherit;mix-blend-mode:multiply;padding:0 .12em;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}[data-theme~=journal] mark[data-tint=mint]{--_hl: var(--_journal-mint)}[data-theme~=journal] mark[data-tint=coral]{--_hl: var(--_journal-coral)}[data-theme~=journal] mark[data-tint=sky]{--_hl: var(--_journal-sky)}[data-theme~=journal] mark[data-tint=lilac]{--_hl: var(--_journal-lilac)}[data-theme~=journal] mark[data-tint=blush]{--_hl: var(--_journal-blush)}[data-theme~=journal] mark[data-tint=butter]{--_hl: var(--_journal-butter)}[data-theme~=journal][data-mode=dark] mark{mix-blend-mode:screen}@media(prefers-color-scheme:dark){[data-theme~=journal]:not([data-mode=light]) mark{mix-blend-mode:screen}}}@layer bundle-effects{[data-theme~=journal] hr[data-ornament=doodle]{border:none;height:24px;margin-block:2rem;background:var(--color-text);opacity:.7;-webkit-mask:center / 300px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='24'%3E%3Cpath d='M4 14 Q40 3 76 14 T148 14 T220 14 T292 14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");mask:center / 300px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='24'%3E%3Cpath d='M4 14 Q40 3 76 14 T148 14 T220 14 T292 14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}[data-theme~=journal] hr[data-ornament=doodle]:before{content:""}}@layer bundle-effects{[data-theme~=journal] [data-callout=sticky]{background:linear-gradient(180deg,oklch(1 0 0 / .35),transparent 22%),var(--_journal-butter);color:var(--_journal-ink);font-family:var(--_journal-hand);padding:1.25rem 1.5rem;border:none;border-radius:1px;transform:rotate(-2deg);box-shadow:var(--shadow-l);position:relative}[data-theme~=journal] [data-callout=sticky]:after{content:"";position:absolute;right:0;bottom:0;width:26px;height:26px;clip-path:polygon(100% 0,100% 100%,0 100%);background:linear-gradient(135deg,#dccb86,#b09d63);box-shadow:-2px -2px 5px #0000002e}}@layer bundle-effects{[data-theme~=journal] [data-journal=photo]{background:#fff;padding:11px 11px 40px;max-width:240px;border:none;border-radius:1px;transform:rotate(2deg);box-shadow:var(--shadow-l);position:relative;margin:0}[data-theme~=journal] [data-journal=photo] :is(img,svg){display:block;width:100%;height:auto}[data-theme~=journal] [data-journal=photo] figcaption{font-family:var(--_journal-hand);text-align:center;margin-top:8px;color:var(--_journal-ink)}[data-theme~=journal] [data-journal=photo]:before,[data-theme~=journal] [data-journal=photo]:after{content:"";position:absolute;top:-9px;width:62px;height:22px;background:#c7edef8c;mix-blend-mode:multiply;box-shadow:0 1px 2px #00000024}[data-theme~=journal] [data-journal=photo]:before{left:-14px;transform:rotate(-38deg)}[data-theme~=journal] [data-journal=photo]:after{right:-14px;transform:rotate(38deg)}[data-theme~=journal][data-mode=dark] [data-journal=photo]:before,[data-theme~=journal][data-mode=dark] [data-journal=photo]:after{mix-blend-mode:screen}@media(prefers-color-scheme:dark){[data-theme~=journal]:not([data-mode=light]) [data-journal=photo]:before,[data-theme~=journal]:not([data-mode=light]) [data-journal=photo]:after{mix-blend-mode:screen}}}@layer bundle-effects{[data-theme~=journal] [data-journal=rapid-log]{list-style:none;margin:0;padding:0;font-family:var(--_journal-hand)}[data-theme~=journal] [data-journal=rapid-log]>li{display:flex;gap:.6em;align-items:baseline;padding:.3em 0}[data-theme~=journal] [data-journal=rapid-log]>li:before{content:"\2022";flex:none;width:1.1em;text-align:center;color:var(--color-text-muted);font-weight:700}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=done]:before{content:"\2713"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=dropped]:before{content:"\2717";color:var(--color-text-subtle)}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=migrated]:before{content:"\203a"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=event]:before{content:"\25cb"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=note]:before{content:"\2014"}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=done]{color:var(--color-text-muted);text-decoration:line-through;text-decoration-color:var(--_journal-coral);text-decoration-thickness:2px}[data-theme~=journal] [data-journal=rapid-log]>li[data-bullet=dropped]{color:var(--color-text-subtle);text-decoration:line-through}[data-theme~=journal] [data-journal=key]{font-family:var(--font-mono);font-size:.72rem;color:var(--color-text-muted);border-top:1px dashed var(--color-border);padding-top:.6em;margin-top:.8em;display:flex;flex-wrap:wrap;gap:.2em 1em}}@layer bundle-effects{[data-theme~=journal] [data-journal=tracker]{border-collapse:collapse;width:100%;font-family:var(--_journal-hand)}[data-theme~=journal] [data-journal=tracker] th{font-family:var(--font-mono);font-size:.7rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.06em;padding:0 0 .5em}[data-theme~=journal] [data-journal=tracker] td{text-align:center;padding:.25em 0}[data-theme~=journal] [data-journal=tracker] th[scope=row],[data-theme~=journal] [data-journal=tracker] td[data-lab]{text-align:left;color:var(--color-text);padding-right:.5em;white-space:nowrap}[data-theme~=journal] [data-journal=tracker] td[data-mark]:before{content:"";display:inline-block;width:16px;height:16px;border-radius:50%;border:2px solid var(--color-border);vertical-align:middle}[data-theme~=journal] [data-journal=tracker] td[data-mark=done]:before{background:var(--_c, var(--_journal-mint));border-color:transparent}}@layer bundle-effects{[data-theme~=journal] [data-journal=tabs]{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}[data-theme~=journal] [data-journal=tabs] :is(a,button){display:inline-block;font-family:var(--_journal-hand);font-weight:600;font-size:.9rem;color:var(--_journal-ink);text-decoration:none;padding:7px 14px;border:none;border-radius:0 8px 8px 0;box-shadow:2px 2px 5px #00000029;background:var(--_journal-mint);cursor:pointer;transition:transform .15s var(--ease-out)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(2 of:is(a,button)){background:var(--_journal-sky)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(3 of:is(a,button)){background:var(--_journal-blush)}[data-theme~=journal] [data-journal=tabs] :is(a,button):nth-child(4 of:is(a,button)){background:var(--_journal-butter)}[data-theme~=journal] [data-journal=tabs] :is(a,button):hover{transform:translate(6px)}@media(prefers-reduced-motion:reduce){[data-theme~=journal] [data-journal=tabs] :is(a,button){transition:none}[data-theme~=journal] [data-journal=tabs] :is(a,button):hover{transform:none}}}@layer bundle-effects{[data-theme~=journal] [data-journal=page]{position:relative;padding:56px 48px 64px 78px;border-radius:4px;background:radial-gradient(circle,var(--_journal-dot) 1.3px,transparent 1.7px) 8px 8px / 22px 22px,var(--_journal-paper);box-shadow:var(--shadow-xl);color:var(--_journal-ink)}[data-theme~=journal] [data-journal=page]:before{content:"";position:absolute;left:62px;top:0;bottom:0;border-left:1.5px solid var(--_journal-margin);opacity:.55}[data-theme~=journal] [data-journal=page]:after{content:"";position:absolute;left:16px;top:30px;bottom:30px;width:12px;background:radial-gradient(circle,oklch(.86 .02 80) 5px,transparent 6px) center top / 12px 60px repeat-y}[data-theme~=journal] [data-journal=ribbon]{position:absolute;top:-6px;right:64px;width:26px;height:96px;background:var(--_journal-coral);clip-path:polygon(0 0,100% 0,100% 100%,50% 84%,0 100%);box-shadow:0 4px 8px #0003}[data-theme~=journal] [data-journal=stamp]{position:absolute;top:12px;right:120px;transform:rotate(-11deg);font-family:var(--font-mono);font-weight:700;font-size:11px;letter-spacing:.12em;color:var(--_journal-margin);border:2px solid var(--_journal-margin);border-radius:6px;padding:6px 10px;opacity:.62;mix-blend-mode:multiply;text-align:center;line-height:1.25}}
2
2
  /*# sourceMappingURL=journal.effects.css.map */
@@ -1,2 +1,2 @@
1
- @layer bundle-effects{@keyframes vb-kawaii-sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes vb-kawaii-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes vb-kawaii-wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes vb-kawaii-float{0%,to{transform:translateY(0) rotate(0);opacity:1}25%{transform:translateY(-8px) rotate(5deg)}50%{transform:translateY(-3px) rotate(-3deg);opacity:.8}75%{transform:translateY(-10px) rotate(2deg)}}@keyframes vb-kawaii-starburst{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-effect~=starburst]{position:relative;overflow:hidden;background:linear-gradient(180deg,#ccc6ff,oklch(90% .1 340) 40%,oklch(95% .06 60))}[data-effect~=starburst]:before{content:"";position:absolute;inset:-50%;width:200%;height:200%;background:repeating-conic-gradient(from 0deg,oklch(92% .05 300 / .4) 0deg 10deg,transparent 10deg 20deg);animation:vb-kawaii-starburst 60s linear infinite;pointer-events:none;z-index:0}[data-effect~=starburst]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background:radial-gradient(ellipse 120px 80px at 10% 90%,oklch(95% .06 350 / .9) 0%,transparent 100%),radial-gradient(ellipse 160px 100px at 30% 85%,oklch(92% .08 290 / .85) 0%,transparent 100%),radial-gradient(ellipse 140px 90px at 55% 92%,oklch(95% .05 200 / .9) 0%,transparent 100%),radial-gradient(ellipse 180px 110px at 75% 80%,oklch(93% .07 350 / .85) 0%,transparent 100%),radial-gradient(ellipse 120px 80px at 95% 88%,oklch(94% .06 290 / .9) 0%,transparent 100%);pointer-events:none;z-index:1}[data-effect~=starburst]>*{position:relative;z-index:2}[data-effect~=sparkle]{position:relative;display:inline-block}[data-effect~=sparkle]:before,[data-effect~=sparkle]:after{position:absolute;font-size:.6em;pointer-events:none;animation:vb-kawaii-float 3s ease-in-out infinite}[data-effect~=sparkle]:before{content:"\2726";top:-.3em;right:-.5em;color:oklch(75% .18 60);animation-delay:0s}[data-effect~=sparkle]:after{content:"\2726";bottom:-.2em;left:-.4em;color:#9e8cf4;animation-delay:-1.5s;font-size:.4em}[data-effect~=bounce]{transition:transform .3s cubic-bezier(.68,-.55,.265,1.55)}[data-effect~=bounce]:hover{animation:vb-kawaii-bounce .6s ease-in-out}[data-effect~=wiggle]{display:inline-block;animation:vb-kawaii-wiggle 2s ease-in-out infinite}[data-effect~=wiggle][data-trigger~=hover]{animation:none}[data-effect~=wiggle][data-trigger~=hover]:hover{animation:vb-kawaii-wiggle .4s ease-in-out}[data-theme~=kawaii]{--kawaii-scallop-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Crect width='200' height='200' rx='24' fill='white'/%3E%3Ccircle cx='14' cy='0' r='10' fill='white'/%3E%3Ccircle cx='38' cy='0' r='10' fill='white'/%3E%3Ccircle cx='62' cy='0' r='10' fill='white'/%3E%3Ccircle cx='86' cy='0' r='10' fill='white'/%3E%3Ccircle cx='110' cy='0' r='10' fill='white'/%3E%3Ccircle cx='134' cy='0' r='10' fill='white'/%3E%3Ccircle cx='158' cy='0' r='10' fill='white'/%3E%3Ccircle cx='182' cy='0' r='10' fill='white'/%3E%3Ccircle cx='14' cy='200' r='10' fill='white'/%3E%3Ccircle cx='38' cy='200' r='10' fill='white'/%3E%3Ccircle cx='62' cy='200' r='10' fill='white'/%3E%3Ccircle cx='86' cy='200' r='10' fill='white'/%3E%3Ccircle cx='110' cy='200' r='10' fill='white'/%3E%3Ccircle cx='134' cy='200' r='10' fill='white'/%3E%3Ccircle cx='158' cy='200' r='10' fill='white'/%3E%3Ccircle cx='182' cy='200' r='10' fill='white'/%3E%3C/svg%3E")}[data-theme~=kawaii] :is(main,article) hr:not([data-ornament]):not(:is(.wave,.zigzag,.scallop,.diamonds,.dots)){border:none;height:2rem;background:transparent;position:relative;margin-block:2rem}[data-theme~=kawaii] :is(main,article) hr:not([data-ornament]):not(:is(.wave,.zigzag,.scallop,.diamonds,.dots)):before{content:"\2661\2726\2661\2726\2661";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--color-primary);font-size:1.25rem;letter-spacing:.5rem;animation:vb-kawaii-sparkle 2s ease-in-out infinite}[data-theme~=kawaii] :is(main,article) h1{color:var(--color-primary);font-family:var(--font-display, var(--font-sans))}[data-theme~=kawaii] :is(main,article) h1:before{content:"\273f"}[data-theme~=kawaii] :is(main,article) h1:after{content:" \273f"}[data-theme~=kawaii] :is(main,article) h2{color:var(--_kawaii-lavender, oklch(55% .12 290))}[data-theme~=kawaii] :is(main,article) h2:before{content:"\2605";animation:vb-kawaii-sparkle 1.5s ease-in-out infinite}[data-theme~=kawaii] :is(main,article) h3{color:var(--color-accent)}[data-theme~=kawaii] :is(main,article) button,[data-theme~=kawaii] :is(main,article) .button{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--_kawaii-lavender, oklch(55% .12 290)));border:none;color:#fff;font-weight:700;box-shadow:var(--shadow-md);transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}[data-theme~=kawaii] :is(main,article) button:hover,[data-theme~=kawaii] :is(main,article) .button:hover{transform:translateY(-3px) scale(1.02);box-shadow:var(--shadow-lg)}[data-theme~=kawaii] :is(main,article) a:not([class]){color:var(--color-primary);text-decoration:none;position:relative}[data-theme~=kawaii] :is(main,article) a:not([class]):after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--_kawaii-lavender, oklch(55% .12 290)),var(--color-accent));border-radius:var(--radius-full);transform:scaleX(0);transition:transform .3s cubic-bezier(.68,-.55,.265,1.55)}[data-theme~=kawaii] :is(main,article) a:not([class]):hover:after{transform:scaleX(1)}[data-theme~=kawaii] article :not(nav)>ul:not([class]){list-style:none}[data-theme~=kawaii] article :not(nav)>ul:not([class])>li:before{content:"\2661";color:var(--color-primary);margin-inline-end:.5rem}[data-theme~=kawaii] :is(main,article) blockquote:not([data-callout]){background:linear-gradient(135deg,var(--color-primary-subtle),oklch(95% .04 290));border:none;border-radius:var(--radius-xl);padding:1.5rem 2rem;position:relative;mask-image:var(--kawaii-scallop-mask);mask-size:cover;-webkit-mask-image:var(--kawaii-scallop-mask);-webkit-mask-size:cover}[data-theme~=kawaii] :is(main,article) blockquote:not([data-callout]):before{content:"\1f4ad";position:absolute;top:-1rem;left:1.5rem;font-size:2rem}[data-theme~=kawaii] ::selection{background:var(--color-primary);color:#fff}[data-theme~=kawaii] :is(main,article) code{background:var(--color-accent-subtle);color:oklch(35% .12 180);border-radius:var(--radius-s);padding:.125rem .375rem}@media(prefers-reduced-motion:reduce){[data-effect~=sparkle]:before,[data-effect~=sparkle]:after,[data-effect~=wiggle],[data-effect~=starburst]:before{animation:none}}:root[data-motion-reduced] [data-effect~=sparkle]:before,:root[data-motion-reduced] [data-effect~=sparkle]:after,:root[data-motion-reduced] [data-effect~=wiggle],:root[data-motion-reduced] [data-effect~=starburst]:before{animation:none}@media print{[data-effect~=starburst],[data-effect~=sparkle],[data-effect~=bounce],[data-effect~=wiggle]{animation:none!important;transform:none!important}[data-effect~=starburst]:before,[data-effect~=starburst]:after,[data-effect~=sparkle]:before,[data-effect~=sparkle]:after{display:none!important}}}
1
+ @layer bundle-effects{@keyframes vb-kawaii-sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes vb-kawaii-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes vb-kawaii-wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes vb-kawaii-float{0%,to{transform:translateY(0) rotate(0);opacity:1}25%{transform:translateY(-8px) rotate(5deg)}50%{transform:translateY(-3px) rotate(-3deg);opacity:.8}75%{transform:translateY(-10px) rotate(2deg)}}@keyframes vb-kawaii-starburst{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-effect~=starburst]{position:relative;overflow:hidden;background:linear-gradient(180deg,#ccc6ff,oklch(90% .1 340) 40%,oklch(95% .06 60))}[data-effect~=starburst]:before{content:"";position:absolute;inset:-50%;width:200%;height:200%;background:repeating-conic-gradient(from 0deg,oklch(92% .05 300 / .4) 0deg 10deg,transparent 10deg 20deg);animation:vb-kawaii-starburst 60s linear infinite;pointer-events:none;z-index:0}[data-effect~=starburst]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background:radial-gradient(ellipse 120px 80px at 10% 90%,oklch(95% .06 350 / .9) 0%,transparent 100%),radial-gradient(ellipse 160px 100px at 30% 85%,oklch(92% .08 290 / .85) 0%,transparent 100%),radial-gradient(ellipse 140px 90px at 55% 92%,oklch(95% .05 200 / .9) 0%,transparent 100%),radial-gradient(ellipse 180px 110px at 75% 80%,oklch(93% .07 350 / .85) 0%,transparent 100%),radial-gradient(ellipse 120px 80px at 95% 88%,oklch(94% .06 290 / .9) 0%,transparent 100%);pointer-events:none;z-index:1}[data-effect~=starburst]>*{position:relative;z-index:2}[data-effect~=sparkle]{position:relative;display:inline-block}[data-effect~=sparkle]:before,[data-effect~=sparkle]:after{position:absolute;font-size:.6em;pointer-events:none;animation:vb-kawaii-float 3s ease-in-out infinite}[data-effect~=sparkle]:before{content:"\2726";top:-.3em;right:-.5em;color:oklch(75% .18 60);animation-delay:0s}[data-effect~=sparkle]:after{content:"\2726";bottom:-.2em;left:-.4em;color:#9e8cf4;animation-delay:-1.5s;font-size:.4em}[data-effect~=bounce]{transition:transform .3s cubic-bezier(.68,-.55,.265,1.55)}[data-effect~=bounce]:hover{animation:vb-kawaii-bounce .6s ease-in-out}[data-effect~=wiggle]{display:inline-block;animation:vb-kawaii-wiggle 2s ease-in-out infinite}[data-effect~=wiggle][data-trigger~=hover]{animation:none}[data-effect~=wiggle][data-trigger~=hover]:hover{animation:vb-kawaii-wiggle .4s ease-in-out}[data-theme~=kawaii]{--kawaii-scallop-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Crect width='200' height='200' rx='24' fill='white'/%3E%3Ccircle cx='14' cy='0' r='10' fill='white'/%3E%3Ccircle cx='38' cy='0' r='10' fill='white'/%3E%3Ccircle cx='62' cy='0' r='10' fill='white'/%3E%3Ccircle cx='86' cy='0' r='10' fill='white'/%3E%3Ccircle cx='110' cy='0' r='10' fill='white'/%3E%3Ccircle cx='134' cy='0' r='10' fill='white'/%3E%3Ccircle cx='158' cy='0' r='10' fill='white'/%3E%3Ccircle cx='182' cy='0' r='10' fill='white'/%3E%3Ccircle cx='14' cy='200' r='10' fill='white'/%3E%3Ccircle cx='38' cy='200' r='10' fill='white'/%3E%3Ccircle cx='62' cy='200' r='10' fill='white'/%3E%3Ccircle cx='86' cy='200' r='10' fill='white'/%3E%3Ccircle cx='110' cy='200' r='10' fill='white'/%3E%3Ccircle cx='134' cy='200' r='10' fill='white'/%3E%3Ccircle cx='158' cy='200' r='10' fill='white'/%3E%3Ccircle cx='182' cy='200' r='10' fill='white'/%3E%3C/svg%3E")}[data-theme~=kawaii] :is(main,article) hr:not([data-ornament]):not(:is(.wave,.zigzag,.scallop,.diamonds,.dots)){border:none;height:2rem;background:transparent;position:relative;margin-block:2rem}[data-theme~=kawaii] :is(main,article) hr:not([data-ornament]):not(:is(.wave,.zigzag,.scallop,.diamonds,.dots)):before{content:"\2661\2726\2661\2726\2661";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--color-primary);font-size:1.25rem;letter-spacing:.5rem;animation:vb-kawaii-sparkle 2s ease-in-out infinite}[data-theme~=kawaii] :is(main,article) h1{color:var(--color-primary);font-family:var(--font-display, var(--font-sans))}[data-theme~=kawaii] :is(main,article) h1:before{content:"\273f"}[data-theme~=kawaii] :is(main,article) h1:after{content:" \273f"}[data-theme~=kawaii] :is(main,article) h2{color:var(--_kawaii-lavender, oklch(55% .12 290))}[data-theme~=kawaii] :is(main,article) h2:before{content:"\2605";animation:vb-kawaii-sparkle 1.5s ease-in-out infinite}[data-theme~=kawaii] :is(main,article) h3{color:var(--color-accent)}[data-theme~=kawaii] :is(main,article) button,[data-theme~=kawaii] :is(main,article) .button{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--_kawaii-lavender, oklch(55% .12 290)));border:none;color:#fff;font-weight:700;box-shadow:var(--shadow-m);transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}[data-theme~=kawaii] :is(main,article) button:hover,[data-theme~=kawaii] :is(main,article) .button:hover{transform:translateY(-3px) scale(1.02);box-shadow:var(--shadow-l)}[data-theme~=kawaii] :is(main,article) a:not([class]){color:var(--color-primary);text-decoration:none;position:relative}[data-theme~=kawaii] :is(main,article) a:not([class]):after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--_kawaii-lavender, oklch(55% .12 290)),var(--color-accent));border-radius:var(--radius-full);transform:scaleX(0);transition:transform .3s cubic-bezier(.68,-.55,.265,1.55)}[data-theme~=kawaii] :is(main,article) a:not([class]):hover:after{transform:scaleX(1)}[data-theme~=kawaii] article :not(nav)>ul:not([class]){list-style:none}[data-theme~=kawaii] article :not(nav)>ul:not([class])>li:before{content:"\2661";color:var(--color-primary);margin-inline-end:.5rem}[data-theme~=kawaii] :is(main,article) blockquote:not([data-callout]){background:linear-gradient(135deg,var(--color-primary-subtle),oklch(95% .04 290));border:none;border-radius:var(--radius-xl);padding:1.5rem 2rem;position:relative;mask-image:var(--kawaii-scallop-mask);mask-size:cover;-webkit-mask-image:var(--kawaii-scallop-mask);-webkit-mask-size:cover}[data-theme~=kawaii] :is(main,article) blockquote:not([data-callout]):before{content:"\1f4ad";position:absolute;top:-1rem;left:1.5rem;font-size:2rem}[data-theme~=kawaii] ::selection{background:var(--color-primary);color:#fff}[data-theme~=kawaii] :is(main,article) code{background:var(--color-accent-subtle);color:oklch(35% .12 180);border-radius:var(--radius-s);padding:.125rem .375rem}@media(prefers-reduced-motion:reduce){[data-effect~=sparkle]:before,[data-effect~=sparkle]:after,[data-effect~=wiggle],[data-effect~=starburst]:before{animation:none}}:root[data-motion-reduced] [data-effect~=sparkle]:before,:root[data-motion-reduced] [data-effect~=sparkle]:after,:root[data-motion-reduced] [data-effect~=wiggle],:root[data-motion-reduced] [data-effect~=starburst]:before{animation:none}@media print{[data-effect~=starburst],[data-effect~=sparkle],[data-effect~=bounce],[data-effect~=wiggle]{animation:none!important;transform:none!important}[data-effect~=starburst]:before,[data-effect~=starburst]:after,[data-effect~=sparkle]:before,[data-effect~=sparkle]:after{display:none!important}}}
2
2
  /*# sourceMappingURL=kawaii.effects.css.map */
@@ -1,5 +1,5 @@
1
- @font-face{font-family:Cherry Bomb One;font-style:normal;font-weight:400;font-display:swap;src:url("./kawaii/fonts/CherryBombOne-Regular.woff2") format("woff2")}@font-face{font-family:Coiny;font-style:normal;font-weight:400;font-display:swap;src:url("./kawaii/fonts/Coiny-Regular.woff2") format("woff2")}@import url(https://fonts.googleapis.com/css2?family=Nunito:wght@400..700&display=swap);@layer bundle-theme{[data-theme~=kawaii]{color-scheme:light;--theme-border-style: kawaii;--color-surface: oklch(98% .02 350);--color-surface-alt: oklch(95% .04 350);--color-surface-raised: oklch(100% 0 0);--color-surface-sunken: oklch(92% .05 350);--color-background: oklch(97% .03 350);--color-text: oklch(25% .08 330);--color-text-muted: oklch(40% .06 330);--color-text-subtle: oklch(50% .04 330);--color-primary: oklch(55% .18 350);--color-primary-hover: oklch(50% .2 350);--color-primary-subtle: oklch(95% .05 350);--color-accent: oklch(45% .12 180);--color-accent-hover: oklch(40% .14 180);--color-accent-subtle: oklch(95% .04 180);--_kawaii-lavender: oklch(55% .12 290);--_kawaii-peach: oklch(55% .12 60);--_kawaii-sky: oklch(50% .12 220);--color-border: oklch(90% .05 350);--color-border-muted: oklch(94% .03 350);--color-border-strong: oklch(75% .15 350);--color-interactive: var(--color-primary);--color-interactive-hover: var(--color-primary-hover);--font-sans: "Nunito", "Quicksand", "Varela Round", system-ui, sans-serif;--font-display: "Cherry Bomb One", "Nunito", cursive;--font-accent: "Coiny", "Nunito", cursive;--font-mono: "Fira Code", monospace;--line-height-normal: 1.6;--line-height-tight: 1.3;--radius-xs: .5rem;--radius-s: .75rem;--radius-m: 1rem;--radius-l: 1.5rem;--radius-xl: 2rem;--radius-2xl: 3rem;--radius-full: 9999px;--shadow-xs: 0 2px 4px oklch(75% .15 350 / .15);--shadow-sm: 0 4px 8px oklch(75% .15 350 / .2);--shadow-md: 0 6px 16px oklch(75% .15 350 / .25);--shadow-lg: 0 10px 24px oklch(75% .15 350 / .3);--shadow-xl: 0 16px 32px oklch(75% .15 350 / .35);--shadow-2xl: 0 24px 48px oklch(75% .15 350 / .4);--duration-instant: 50ms;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--ease-default: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--shape-depth: 8%;--shape-bevel: 16px}[data-theme~=kawaii][data-mode=dark]{color-scheme:dark;--color-surface: oklch(18% .04 290);--color-surface-alt: oklch(22% .05 290);--color-surface-raised: oklch(25% .04 290);--color-background: oklch(12% .04 290);--color-text: oklch(95% .01 350);--color-text-muted: oklch(80% .02 350);--color-text-subtle: oklch(65% .02 350);--color-hover-bg: oklch(25% .06 350);--color-surface-overlay: oklch(22% .05 290);--color-primary: oklch(75% .18 350);--color-accent: oklch(75% .15 180);--_kawaii-lavender: oklch(75% .12 290);--_kawaii-peach: oklch(75% .12 60);--_kawaii-sky: oklch(70% .12 220);--color-border: oklch(35% .05 290)}}
1
+ @font-face{font-family:Cherry Bomb One;font-style:normal;font-weight:400;font-display:swap;src:url("./kawaii/fonts/CherryBombOne-Regular.woff2") format("woff2")}@font-face{font-family:Coiny;font-style:normal;font-weight:400;font-display:swap;src:url("./kawaii/fonts/Coiny-Regular.woff2") format("woff2")}@import url(https://fonts.googleapis.com/css2?family=Nunito:wght@400..700&display=swap);@layer bundle-theme{[data-theme~=kawaii]{color-scheme:light;--theme-border-style: kawaii;--color-surface: oklch(98% .02 350);--color-surface-alt: oklch(95% .04 350);--color-surface-raised: oklch(100% 0 0);--color-surface-sunken: oklch(92% .05 350);--color-background: oklch(97% .03 350);--color-text: oklch(25% .08 330);--color-text-muted: oklch(40% .06 330);--color-text-subtle: oklch(50% .04 330);--color-primary: oklch(55% .18 350);--color-primary-hover: oklch(50% .2 350);--color-primary-subtle: oklch(95% .05 350);--color-accent: oklch(45% .12 180);--color-accent-hover: oklch(40% .14 180);--color-accent-subtle: oklch(95% .04 180);--_kawaii-lavender: oklch(55% .12 290);--_kawaii-peach: oklch(55% .12 60);--_kawaii-sky: oklch(50% .12 220);--color-border: oklch(90% .05 350);--color-border-muted: oklch(94% .03 350);--color-border-strong: oklch(75% .15 350);--color-interactive: var(--color-primary);--color-interactive-hover: var(--color-primary-hover);--font-sans: "Nunito", "Quicksand", "Varela Round", system-ui, sans-serif;--font-display: "Cherry Bomb One", "Nunito", cursive;--font-accent: "Coiny", "Nunito", cursive;--font-mono: "Fira Code", monospace;--line-height-normal: 1.6;--line-height-tight: 1.3;--radius-xs: .5rem;--radius-s: .75rem;--radius-m: 1rem;--radius-l: 1.5rem;--radius-xl: 2rem;--radius-2xl: 3rem;--radius-full: 9999px;--shadow-xs: 0 2px 4px oklch(75% .15 350 / .15);--shadow-s: 0 4px 8px oklch(75% .15 350 / .2);--shadow-m: 0 6px 16px oklch(75% .15 350 / .25);--shadow-l: 0 10px 24px oklch(75% .15 350 / .3);--shadow-xl: 0 16px 32px oklch(75% .15 350 / .35);--shadow-2xl: 0 24px 48px oklch(75% .15 350 / .4);--duration-instant: 50ms;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--ease-default: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--shape-depth: 8%;--shape-bevel: 16px}[data-theme~=kawaii][data-mode=dark]{color-scheme:dark;--color-surface: oklch(18% .04 290);--color-surface-alt: oklch(22% .05 290);--color-surface-raised: oklch(25% .04 290);--color-background: oklch(12% .04 290);--color-text: oklch(95% .01 350);--color-text-muted: oklch(80% .02 350);--color-text-subtle: oklch(65% .02 350);--color-hover-bg: oklch(25% .06 350);--color-surface-overlay: oklch(22% .05 290);--color-primary: oklch(75% .18 350);--color-accent: oklch(75% .15 180);--_kawaii-lavender: oklch(75% .12 290);--_kawaii-peach: oklch(75% .12 60);--_kawaii-sky: oklch(70% .12 220);--color-border: oklch(35% .05 290)}}
2
2
  /*# sourceMappingURL=kawaii.theme.css.map */
3
3
 
4
- @layer bundle-effects{@keyframes vb-kawaii-sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes vb-kawaii-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes vb-kawaii-wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes vb-kawaii-float{0%,to{transform:translateY(0) rotate(0);opacity:1}25%{transform:translateY(-8px) rotate(5deg)}50%{transform:translateY(-3px) rotate(-3deg);opacity:.8}75%{transform:translateY(-10px) rotate(2deg)}}@keyframes vb-kawaii-starburst{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-effect~=starburst]{position:relative;overflow:hidden;background:linear-gradient(180deg,#ccc6ff,oklch(90% .1 340) 40%,oklch(95% .06 60))}[data-effect~=starburst]:before{content:"";position:absolute;inset:-50%;width:200%;height:200%;background:repeating-conic-gradient(from 0deg,oklch(92% .05 300 / .4) 0deg 10deg,transparent 10deg 20deg);animation:vb-kawaii-starburst 60s linear infinite;pointer-events:none;z-index:0}[data-effect~=starburst]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background:radial-gradient(ellipse 120px 80px at 10% 90%,oklch(95% .06 350 / .9) 0%,transparent 100%),radial-gradient(ellipse 160px 100px at 30% 85%,oklch(92% .08 290 / .85) 0%,transparent 100%),radial-gradient(ellipse 140px 90px at 55% 92%,oklch(95% .05 200 / .9) 0%,transparent 100%),radial-gradient(ellipse 180px 110px at 75% 80%,oklch(93% .07 350 / .85) 0%,transparent 100%),radial-gradient(ellipse 120px 80px at 95% 88%,oklch(94% .06 290 / .9) 0%,transparent 100%);pointer-events:none;z-index:1}[data-effect~=starburst]>*{position:relative;z-index:2}[data-effect~=sparkle]{position:relative;display:inline-block}[data-effect~=sparkle]:before,[data-effect~=sparkle]:after{position:absolute;font-size:.6em;pointer-events:none;animation:vb-kawaii-float 3s ease-in-out infinite}[data-effect~=sparkle]:before{content:"\2726";top:-.3em;right:-.5em;color:oklch(75% .18 60);animation-delay:0s}[data-effect~=sparkle]:after{content:"\2726";bottom:-.2em;left:-.4em;color:#9e8cf4;animation-delay:-1.5s;font-size:.4em}[data-effect~=bounce]{transition:transform .3s cubic-bezier(.68,-.55,.265,1.55)}[data-effect~=bounce]:hover{animation:vb-kawaii-bounce .6s ease-in-out}[data-effect~=wiggle]{display:inline-block;animation:vb-kawaii-wiggle 2s ease-in-out infinite}[data-effect~=wiggle][data-trigger~=hover]{animation:none}[data-effect~=wiggle][data-trigger~=hover]:hover{animation:vb-kawaii-wiggle .4s ease-in-out}[data-theme~=kawaii]{--kawaii-scallop-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Crect width='200' height='200' rx='24' fill='white'/%3E%3Ccircle cx='14' cy='0' r='10' fill='white'/%3E%3Ccircle cx='38' cy='0' r='10' fill='white'/%3E%3Ccircle cx='62' cy='0' r='10' fill='white'/%3E%3Ccircle cx='86' cy='0' r='10' fill='white'/%3E%3Ccircle cx='110' cy='0' r='10' fill='white'/%3E%3Ccircle cx='134' cy='0' r='10' fill='white'/%3E%3Ccircle cx='158' cy='0' r='10' fill='white'/%3E%3Ccircle cx='182' cy='0' r='10' fill='white'/%3E%3Ccircle cx='14' cy='200' r='10' fill='white'/%3E%3Ccircle cx='38' cy='200' r='10' fill='white'/%3E%3Ccircle cx='62' cy='200' r='10' fill='white'/%3E%3Ccircle cx='86' cy='200' r='10' fill='white'/%3E%3Ccircle cx='110' cy='200' r='10' fill='white'/%3E%3Ccircle cx='134' cy='200' r='10' fill='white'/%3E%3Ccircle cx='158' cy='200' r='10' fill='white'/%3E%3Ccircle cx='182' cy='200' r='10' fill='white'/%3E%3C/svg%3E")}[data-theme~=kawaii] :is(main,article) hr:not([data-ornament]):not(:is(.wave,.zigzag,.scallop,.diamonds,.dots)){border:none;height:2rem;background:transparent;position:relative;margin-block:2rem}[data-theme~=kawaii] :is(main,article) hr:not([data-ornament]):not(:is(.wave,.zigzag,.scallop,.diamonds,.dots)):before{content:"\2661\2726\2661\2726\2661";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--color-primary);font-size:1.25rem;letter-spacing:.5rem;animation:vb-kawaii-sparkle 2s ease-in-out infinite}[data-theme~=kawaii] :is(main,article) h1{color:var(--color-primary);font-family:var(--font-display, var(--font-sans))}[data-theme~=kawaii] :is(main,article) h1:before{content:"\273f"}[data-theme~=kawaii] :is(main,article) h1:after{content:" \273f"}[data-theme~=kawaii] :is(main,article) h2{color:var(--_kawaii-lavender, oklch(55% .12 290))}[data-theme~=kawaii] :is(main,article) h2:before{content:"\2605";animation:vb-kawaii-sparkle 1.5s ease-in-out infinite}[data-theme~=kawaii] :is(main,article) h3{color:var(--color-accent)}[data-theme~=kawaii] :is(main,article) button,[data-theme~=kawaii] :is(main,article) .button{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--_kawaii-lavender, oklch(55% .12 290)));border:none;color:#fff;font-weight:700;box-shadow:var(--shadow-md);transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}[data-theme~=kawaii] :is(main,article) button:hover,[data-theme~=kawaii] :is(main,article) .button:hover{transform:translateY(-3px) scale(1.02);box-shadow:var(--shadow-lg)}[data-theme~=kawaii] :is(main,article) a:not([class]){color:var(--color-primary);text-decoration:none;position:relative}[data-theme~=kawaii] :is(main,article) a:not([class]):after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--_kawaii-lavender, oklch(55% .12 290)),var(--color-accent));border-radius:var(--radius-full);transform:scaleX(0);transition:transform .3s cubic-bezier(.68,-.55,.265,1.55)}[data-theme~=kawaii] :is(main,article) a:not([class]):hover:after{transform:scaleX(1)}[data-theme~=kawaii] article :not(nav)>ul:not([class]){list-style:none}[data-theme~=kawaii] article :not(nav)>ul:not([class])>li:before{content:"\2661";color:var(--color-primary);margin-inline-end:.5rem}[data-theme~=kawaii] :is(main,article) blockquote:not([data-callout]){background:linear-gradient(135deg,var(--color-primary-subtle),oklch(95% .04 290));border:none;border-radius:var(--radius-xl);padding:1.5rem 2rem;position:relative;mask-image:var(--kawaii-scallop-mask);mask-size:cover;-webkit-mask-image:var(--kawaii-scallop-mask);-webkit-mask-size:cover}[data-theme~=kawaii] :is(main,article) blockquote:not([data-callout]):before{content:"\1f4ad";position:absolute;top:-1rem;left:1.5rem;font-size:2rem}[data-theme~=kawaii] ::selection{background:var(--color-primary);color:#fff}[data-theme~=kawaii] :is(main,article) code{background:var(--color-accent-subtle);color:oklch(35% .12 180);border-radius:var(--radius-s);padding:.125rem .375rem}@media(prefers-reduced-motion:reduce){[data-effect~=sparkle]:before,[data-effect~=sparkle]:after,[data-effect~=wiggle],[data-effect~=starburst]:before{animation:none}}:root[data-motion-reduced] [data-effect~=sparkle]:before,:root[data-motion-reduced] [data-effect~=sparkle]:after,:root[data-motion-reduced] [data-effect~=wiggle],:root[data-motion-reduced] [data-effect~=starburst]:before{animation:none}@media print{[data-effect~=starburst],[data-effect~=sparkle],[data-effect~=bounce],[data-effect~=wiggle]{animation:none!important;transform:none!important}[data-effect~=starburst]:before,[data-effect~=starburst]:after,[data-effect~=sparkle]:before,[data-effect~=sparkle]:after{display:none!important}}}
4
+ @layer bundle-effects{@keyframes vb-kawaii-sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes vb-kawaii-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes vb-kawaii-wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes vb-kawaii-float{0%,to{transform:translateY(0) rotate(0);opacity:1}25%{transform:translateY(-8px) rotate(5deg)}50%{transform:translateY(-3px) rotate(-3deg);opacity:.8}75%{transform:translateY(-10px) rotate(2deg)}}@keyframes vb-kawaii-starburst{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-effect~=starburst]{position:relative;overflow:hidden;background:linear-gradient(180deg,#ccc6ff,oklch(90% .1 340) 40%,oklch(95% .06 60))}[data-effect~=starburst]:before{content:"";position:absolute;inset:-50%;width:200%;height:200%;background:repeating-conic-gradient(from 0deg,oklch(92% .05 300 / .4) 0deg 10deg,transparent 10deg 20deg);animation:vb-kawaii-starburst 60s linear infinite;pointer-events:none;z-index:0}[data-effect~=starburst]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background:radial-gradient(ellipse 120px 80px at 10% 90%,oklch(95% .06 350 / .9) 0%,transparent 100%),radial-gradient(ellipse 160px 100px at 30% 85%,oklch(92% .08 290 / .85) 0%,transparent 100%),radial-gradient(ellipse 140px 90px at 55% 92%,oklch(95% .05 200 / .9) 0%,transparent 100%),radial-gradient(ellipse 180px 110px at 75% 80%,oklch(93% .07 350 / .85) 0%,transparent 100%),radial-gradient(ellipse 120px 80px at 95% 88%,oklch(94% .06 290 / .9) 0%,transparent 100%);pointer-events:none;z-index:1}[data-effect~=starburst]>*{position:relative;z-index:2}[data-effect~=sparkle]{position:relative;display:inline-block}[data-effect~=sparkle]:before,[data-effect~=sparkle]:after{position:absolute;font-size:.6em;pointer-events:none;animation:vb-kawaii-float 3s ease-in-out infinite}[data-effect~=sparkle]:before{content:"\2726";top:-.3em;right:-.5em;color:oklch(75% .18 60);animation-delay:0s}[data-effect~=sparkle]:after{content:"\2726";bottom:-.2em;left:-.4em;color:#9e8cf4;animation-delay:-1.5s;font-size:.4em}[data-effect~=bounce]{transition:transform .3s cubic-bezier(.68,-.55,.265,1.55)}[data-effect~=bounce]:hover{animation:vb-kawaii-bounce .6s ease-in-out}[data-effect~=wiggle]{display:inline-block;animation:vb-kawaii-wiggle 2s ease-in-out infinite}[data-effect~=wiggle][data-trigger~=hover]{animation:none}[data-effect~=wiggle][data-trigger~=hover]:hover{animation:vb-kawaii-wiggle .4s ease-in-out}[data-theme~=kawaii]{--kawaii-scallop-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Crect width='200' height='200' rx='24' fill='white'/%3E%3Ccircle cx='14' cy='0' r='10' fill='white'/%3E%3Ccircle cx='38' cy='0' r='10' fill='white'/%3E%3Ccircle cx='62' cy='0' r='10' fill='white'/%3E%3Ccircle cx='86' cy='0' r='10' fill='white'/%3E%3Ccircle cx='110' cy='0' r='10' fill='white'/%3E%3Ccircle cx='134' cy='0' r='10' fill='white'/%3E%3Ccircle cx='158' cy='0' r='10' fill='white'/%3E%3Ccircle cx='182' cy='0' r='10' fill='white'/%3E%3Ccircle cx='14' cy='200' r='10' fill='white'/%3E%3Ccircle cx='38' cy='200' r='10' fill='white'/%3E%3Ccircle cx='62' cy='200' r='10' fill='white'/%3E%3Ccircle cx='86' cy='200' r='10' fill='white'/%3E%3Ccircle cx='110' cy='200' r='10' fill='white'/%3E%3Ccircle cx='134' cy='200' r='10' fill='white'/%3E%3Ccircle cx='158' cy='200' r='10' fill='white'/%3E%3Ccircle cx='182' cy='200' r='10' fill='white'/%3E%3C/svg%3E")}[data-theme~=kawaii] :is(main,article) hr:not([data-ornament]):not(:is(.wave,.zigzag,.scallop,.diamonds,.dots)){border:none;height:2rem;background:transparent;position:relative;margin-block:2rem}[data-theme~=kawaii] :is(main,article) hr:not([data-ornament]):not(:is(.wave,.zigzag,.scallop,.diamonds,.dots)):before{content:"\2661\2726\2661\2726\2661";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--color-primary);font-size:1.25rem;letter-spacing:.5rem;animation:vb-kawaii-sparkle 2s ease-in-out infinite}[data-theme~=kawaii] :is(main,article) h1{color:var(--color-primary);font-family:var(--font-display, var(--font-sans))}[data-theme~=kawaii] :is(main,article) h1:before{content:"\273f"}[data-theme~=kawaii] :is(main,article) h1:after{content:" \273f"}[data-theme~=kawaii] :is(main,article) h2{color:var(--_kawaii-lavender, oklch(55% .12 290))}[data-theme~=kawaii] :is(main,article) h2:before{content:"\2605";animation:vb-kawaii-sparkle 1.5s ease-in-out infinite}[data-theme~=kawaii] :is(main,article) h3{color:var(--color-accent)}[data-theme~=kawaii] :is(main,article) button,[data-theme~=kawaii] :is(main,article) .button{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--_kawaii-lavender, oklch(55% .12 290)));border:none;color:#fff;font-weight:700;box-shadow:var(--shadow-m);transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}[data-theme~=kawaii] :is(main,article) button:hover,[data-theme~=kawaii] :is(main,article) .button:hover{transform:translateY(-3px) scale(1.02);box-shadow:var(--shadow-l)}[data-theme~=kawaii] :is(main,article) a:not([class]){color:var(--color-primary);text-decoration:none;position:relative}[data-theme~=kawaii] :is(main,article) a:not([class]):after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--_kawaii-lavender, oklch(55% .12 290)),var(--color-accent));border-radius:var(--radius-full);transform:scaleX(0);transition:transform .3s cubic-bezier(.68,-.55,.265,1.55)}[data-theme~=kawaii] :is(main,article) a:not([class]):hover:after{transform:scaleX(1)}[data-theme~=kawaii] article :not(nav)>ul:not([class]){list-style:none}[data-theme~=kawaii] article :not(nav)>ul:not([class])>li:before{content:"\2661";color:var(--color-primary);margin-inline-end:.5rem}[data-theme~=kawaii] :is(main,article) blockquote:not([data-callout]){background:linear-gradient(135deg,var(--color-primary-subtle),oklch(95% .04 290));border:none;border-radius:var(--radius-xl);padding:1.5rem 2rem;position:relative;mask-image:var(--kawaii-scallop-mask);mask-size:cover;-webkit-mask-image:var(--kawaii-scallop-mask);-webkit-mask-size:cover}[data-theme~=kawaii] :is(main,article) blockquote:not([data-callout]):before{content:"\1f4ad";position:absolute;top:-1rem;left:1.5rem;font-size:2rem}[data-theme~=kawaii] ::selection{background:var(--color-primary);color:#fff}[data-theme~=kawaii] :is(main,article) code{background:var(--color-accent-subtle);color:oklch(35% .12 180);border-radius:var(--radius-s);padding:.125rem .375rem}@media(prefers-reduced-motion:reduce){[data-effect~=sparkle]:before,[data-effect~=sparkle]:after,[data-effect~=wiggle],[data-effect~=starburst]:before{animation:none}}:root[data-motion-reduced] [data-effect~=sparkle]:before,:root[data-motion-reduced] [data-effect~=sparkle]:after,:root[data-motion-reduced] [data-effect~=wiggle],:root[data-motion-reduced] [data-effect~=starburst]:before{animation:none}@media print{[data-effect~=starburst],[data-effect~=sparkle],[data-effect~=bounce],[data-effect~=wiggle]{animation:none!important;transform:none!important}[data-effect~=starburst]:before,[data-effect~=starburst]:after,[data-effect~=sparkle]:before,[data-effect~=sparkle]:after{display:none!important}}}
5
5
  /*# sourceMappingURL=kawaii.effects.css.map */
@@ -1,14 +1,14 @@
1
- var _=window.matchMedia("(prefers-reduced-motion: reduce)");function p(){return _.matches||document.documentElement.hasAttribute("data-motion-reduced")}var g=0,b=new Map([["vb-fade-in","entrance"],["vb-slide-up","entrance"],["vb-pop","entrance"],["vb-slide-in-ltr","entrance"],["vb-slide-in-rtl","entrance"],["vb-fade-slide-up","entrance"],["vb-shadow-lift","entrance"],["vb-fade-out","exit"],["vb-collapse","exit"],["vb-slide-out-ltr","exit"],["vb-slide-out-rtl","exit"],["vb-shake","attention"],["vb-pulse","attention"],["vb-bounce","attention"],["vb-blink","attention"],["vb-neon-pulse","decoration"],["vb-3d-shift","decoration"],["vb-outline-glow-pulse","decoration"],["vb-rainbow","decoration"],["vb-gradient-flow","decoration"],["vb-shimmer","decoration"],["vb-shimmer-gradient","decoration"],["vb-glow","decoration"],["vb-float","decoration"]]),f={_effects:new Map,_triggers:new Map,_transitions:new Map,_instances:new WeakMap,_triggerCleanups:new WeakMap,_transitionCleanups:new WeakMap,_keyframePhase:b,_observer:null,_animationEndHandler:null,effect(t,e){this._effects.set(t,e),document.querySelectorAll("[data-effect]").forEach(n=>{(n.getAttribute("data-effect")||"").split(/\s+/).includes(t)&&this._initEffect(n,t)})},trigger(t,e){this._triggers.set(t,e)},transition(t,e){this._transitions.set(t,e)},uid(t){return t.id?t.id:(t._vbUid||(g++,t._vbUid=`vb-${g}`),t._vbUid)},theme(t,e){this._themes=this._themes||new Map,this._themes.set(t,e)},applyTheme(t,e=document.documentElement){let n=this._themes?.get(t);if(n)for(let[i,s]of Object.entries(n))e.style.setProperty(i,s)},swap(t){if(!document.startViewTransition){t(),queueMicrotask(()=>this._dispatchVtDone(document.body));return}let e=document.startViewTransition(t);return e.updateCallbackDone.then(()=>{this._dispatchVtDone(document.body)}).catch(()=>{}),e},_dispatchVtDone(t){t.querySelectorAll('[data-trigger~="vt"]').forEach(e=>{this.emit(e,"vb:vt-update-done",{})})},activate(t){this._activateEffects(t)},deactivate(t){t.hasAttribute("data-effect-active")&&(t.removeAttribute("data-effect-active"),this.emit(t,"vb:phase-change",{active:!1}))},onPhaseEnd(t,e,n){let i=s=>{s.detail?.phase===e&&n(s.detail)};return t.addEventListener("vb:effect-phase-end",i),()=>t.removeEventListener("vb:effect-phase-end",i)},registerKeyframe(t,e){this._keyframePhase.set(t,e)},observe(t=document){if(t.querySelectorAll("[data-effect]").forEach(n=>this._processElement(n)),t.querySelectorAll("[data-stagger]").forEach(n=>this._processStagger(n)),t.querySelectorAll("[data-transition]").forEach(n=>this._processTransition(n)),this._observer)return;this._observer=new MutationObserver(n=>{for(let i of n){if(i.type==="childList"){for(let s of i.addedNodes)s.nodeType===Node.ELEMENT_NODE&&this._processTree(s);for(let s of i.removedNodes)s.nodeType===Node.ELEMENT_NODE&&this._cleanupTree(s)}if(i.type==="attributes"){let s=i.target;i.attributeName==="data-effect"&&this._reconcileEffects(s),i.attributeName==="data-trigger"&&this._reconcileTrigger(s),i.attributeName==="data-stagger"&&this._processStagger(s),i.attributeName==="data-transition"&&this._processTransition(s)}}});let e=t===document?document.body:t;this._observer.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-effect","data-trigger","data-stagger","data-transition"]}),this._animationEndHandler||(this._animationEndHandler=n=>{let i=n.target;if(!(i instanceof Element)||!i.hasAttribute("data-effect"))return;let s=this._keyframePhase.get(n.animationName);s&&this.emit(i,"vb:effect-phase-end",{phase:s,animationName:n.animationName})},document.addEventListener("animationend",this._animationEndHandler))},disconnect(){this._observer&&(this._observer.disconnect(),this._observer=null),this._animationEndHandler&&(document.removeEventListener("animationend",this._animationEndHandler),this._animationEndHandler=null)},params(t){let e=getComputedStyle(t);return{get(n){return e.getPropertyValue(`--vb-${n}`).trim()},getNumber(n,i=0){let s=e.getPropertyValue(`--vb-${n}`).trim();return s?parseFloat(s):i},getTime(n,i=0){let s=e.getPropertyValue(`--vb-${n}`).trim();if(!s)return i;let a=parseFloat(s);return Number.isFinite(a)?/s\s*$/.test(s)&&!/ms\s*$/.test(s)?a*1e3:a:i},hasClass(n){return t.classList.contains(n)}}},emit(t,e,n={}){t.dispatchEvent(new CustomEvent(e,{bubbles:!0,detail:n}))},prefersReducedMotion:p,_processTree(t){t.hasAttribute?.("data-effect")&&this._processElement(t),t.hasAttribute?.("data-stagger")&&this._processStagger(t),t.hasAttribute?.("data-transition")&&this._processTransition(t),t.querySelectorAll?.("[data-effect]").forEach(e=>this._processElement(e)),t.querySelectorAll?.("[data-stagger]").forEach(e=>this._processStagger(e)),t.querySelectorAll?.("[data-transition]").forEach(e=>this._processTransition(e))},_cleanupTree(t){t.hasAttribute?.("data-effect")&&this._cleanupElement(t),t.hasAttribute?.("data-transition")&&this._cleanupTransition(t),t.querySelectorAll?.("[data-effect]").forEach(e=>this._cleanupElement(e)),t.querySelectorAll?.("[data-transition]").forEach(e=>this._cleanupTransition(e))},_processElement(t){if(t.hasAttribute("data-effect-processed"))return;t.setAttribute("data-effect-processed","");let e=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];for(let n of e)this._initEffect(t,n);this._wireTrigger(t,e)},_initEffect(t,e){let n=this._effects.get(e);if(!n)return;let i=this._instances.get(t);if(i?.has(e))return;p();let s=n(t);s&&(i||(i=new Map,this._instances.set(t,i)),typeof s=="function"?i.set(e,{cleanup:s}):i.set(e,s))},_wireTrigger(t,e){let n=t.getAttribute("data-trigger");if(!n){this._activateEffects(t);return}let i=n.split(/\s+/).filter(Boolean);for(let s of i){let a=s.indexOf(":"),r=a>-1?s.slice(0,a):s,o=a>-1?s.slice(a+1):null,c=this._triggers.get(r);if(!c)continue;let d=c(t,()=>this._activateEffects(t),o);if(d){let h=this._triggerCleanups.get(t);if(h){let m=h;this._triggerCleanups.set(t,()=>{m(),d()})}else this._triggerCleanups.set(t,d)}}},_activateEffects(t){t.setAttribute("data-effect-active",""),this.emit(t,"vb:phase-change",{active:!0});let e=this._instances.get(t);if(e)for(let[,n]of e)n.activate&&n.activate()},_cleanupElement(t){let e=this._instances.get(t);if(e){for(let[,i]of e)i.cleanup&&i.cleanup();this._instances.delete(t)}let n=this._triggerCleanups.get(t);n&&(n(),this._triggerCleanups.delete(t))},_reconcileEffects(t){let e=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[],n=this._instances.get(t);if(n)for(let[i,s]of n)e.includes(i)||(s.cleanup&&s.cleanup(),n.delete(i));for(let i of e)n?.has(i)||this._initEffect(t,i);t.hasAttribute("data-effect-processed")||(t.setAttribute("data-effect-processed",""),this._wireTrigger(t,e))},_reconcileTrigger(t){let e=this._triggerCleanups.get(t);e&&(e(),this._triggerCleanups.delete(t));let n=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];this._wireTrigger(t,n)},_processStagger(t){let e=t.getAttribute("data-stagger")||"",n=t.children,i=n.length,s;if(e==="reverse")s=Array.from({length:i},(a,r)=>i-1-r);else if(e==="random"){let a=this._hashString(this.uid(t));s=Array.from({length:i},(o,c)=>c);let r=a;for(let o=i-1;o>0;o--){r^=r<<13,r^=r>>>17,r^=r<<5;let c=Math.abs(r)%(o+1);[s[o],s[c]]=[s[c],s[o]]}}else if(e==="grid"){let a=[];for(let r=0;r<i;r++){let o=getComputedStyle(n[r]),c=parseInt(o.gridRowStart,10),d=parseInt(o.gridColumnStart,10);a.push({i:r,dist:Number.isFinite(c)&&Number.isFinite(d)?c-1+(d-1):r})}a.sort((r,o)=>r.dist-o.dist),s=new Array(i),a.forEach((r,o)=>{s[r.i]=o})}else s=Array.from({length:i},(a,r)=>r);for(let a=0;a<i;a++)n[a].style.setProperty("--vb-stagger-index",String(s[a]))},_hashString(t){let e=5381;for(let n=0;n<t.length;n++)e=(e<<5)+e^t.charCodeAt(n);return e|0},_processTransition(t){if(t.hasAttribute("data-transition-processed"))return;t.setAttribute("data-transition-processed","");let e=t.getAttribute("data-transition");if(!e)return;let n=e.indexOf(":"),i=n>-1?e.slice(0,n):e,s=n>-1?e.slice(n+1):null,a=this._transitions.get(i);if(a){let r=a(t,s);r&&this._transitionCleanups.set(t,r)}else t.style.viewTransitionName=`${e}-${this.uid(t)}`},_cleanupTransition(t){let e=this._transitionCleanups.get(t);e&&(e(),this._transitionCleanups.delete(t)),t.style.viewTransitionName=""}};typeof window<"u"&&(window.VB=f);var l=["\u2726","\u2727","\u22C6","\u2661","\u2606"],u=["oklch(75% 0.18 350)","oklch(70% 0.15 290)","oklch(75% 0.12 60)","oklch(70% 0.12 220)","oklch(65% 0.15 180)"];f.effect("particles",t=>{if(t._sparkleInterval)return;if(f.prefersReducedMotion()){getComputedStyle(t).position==="static"&&(t.style.position="relative");for(let s=0;s<5;s++){let a=document.createElement("span");a.textContent=l[Math.floor(Math.random()*l.length)],a.setAttribute("aria-hidden","true"),a.style.cssText=`
1
+ var E=window.matchMedia("(prefers-reduced-motion: reduce)");function g(){return E.matches||document.documentElement.hasAttribute("data-motion-reduced")}var m=0,y=new Map([["vb-fade-in","entrance"],["vb-slide-up","entrance"],["vb-pop","entrance"],["vb-slide-in-ltr","entrance"],["vb-slide-in-rtl","entrance"],["vb-fade-slide-up","entrance"],["vb-shadow-lift","entrance"],["vb-fade-out","exit"],["vb-collapse","exit"],["vb-slide-out-ltr","exit"],["vb-slide-out-rtl","exit"],["vb-shake","attention"],["vb-pulse","attention"],["vb-bounce","attention"],["vb-blink","attention"],["vb-neon-pulse","decoration"],["vb-3d-shift","decoration"],["vb-outline-glow-pulse","decoration"],["vb-rainbow","decoration"],["vb-gradient-flow","decoration"],["vb-shimmer","decoration"],["vb-shimmer-gradient","decoration"],["vb-glow","decoration"],["vb-float","decoration"]]),_="__vbEffectsRuntime",b=globalThis,d=b[_]??{_effects:new Map,_triggers:new Map,_transitions:new Map,_instances:new WeakMap,_triggerCleanups:new WeakMap,_wiredTriggers:new WeakMap,_transitionCleanups:new WeakMap,_keyframePhase:y,_observer:null,_animationEndHandler:null,_autoBooted:!1,effect(t,e){this._effects.set(t,e),document.querySelectorAll("[data-effect]").forEach(n=>{if(!(n.getAttribute("data-effect")||"").split(/\s+/).includes(t))return;let s=!this._instances.get(n)?.has(t);this._initEffect(n,t),s&&n.hasAttribute("data-effect-active")&&this._instances.get(n)?.get(t)?.activate?.()})},trigger(t,e){this._triggers.set(t,e),document.querySelectorAll("[data-effect-processed][data-trigger]").forEach(n=>{let i=n.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];this._wireTrigger(n,i)})},transition(t,e){this._transitions.set(t,e)},uid(t){return t.id?t.id:(t._vbUid||(m++,t._vbUid=`vb-${m}`),t._vbUid)},theme(t,e){this._themes=this._themes||new Map,this._themes.set(t,e)},applyTheme(t,e=document.documentElement){let n=this._themes?.get(t);if(n)for(let[i,s]of Object.entries(n))e.style.setProperty(i,s)},swap(t){if(!document.startViewTransition){t(),queueMicrotask(()=>this._dispatchVtDone(document.body));return}let e=document.startViewTransition(t);return e.updateCallbackDone.then(()=>{this._dispatchVtDone(document.body)}).catch(()=>{}),e},_dispatchVtDone(t){t.querySelectorAll('[data-trigger~="vt"]').forEach(e=>{this.emit(e,"vb:vt-update-done",{})})},activate(t){this._activateEffects(t)},deactivate(t){t.hasAttribute("data-effect-active")&&(t.removeAttribute("data-effect-active"),this.emit(t,"vb:phase-change",{active:!1}))},onPhaseEnd(t,e,n){let i=s=>{s.detail?.phase===e&&n(s.detail)};return t.addEventListener("vb:effect-phase-end",i),()=>t.removeEventListener("vb:effect-phase-end",i)},registerKeyframe(t,e){this._keyframePhase.set(t,e)},observe(t=document){if(t.querySelectorAll("[data-effect]").forEach(n=>this._processElement(n)),t.querySelectorAll("[data-stagger]").forEach(n=>this._processStagger(n)),t.querySelectorAll("[data-transition]").forEach(n=>this._processTransition(n)),this._observer)return;this._observer=new MutationObserver(n=>{for(let i of n){if(i.type==="childList"){for(let s of i.addedNodes)s.nodeType===Node.ELEMENT_NODE&&this._processTree(s);for(let s of i.removedNodes)s.nodeType===Node.ELEMENT_NODE&&(s.isConnected||this._cleanupTree(s))}if(i.type==="attributes"){let s=i.target;i.attributeName==="data-effect"&&this._reconcileEffects(s),i.attributeName==="data-trigger"&&this._reconcileTrigger(s),i.attributeName==="data-stagger"&&this._processStagger(s),i.attributeName==="data-transition"&&this._processTransition(s)}}});let e=t===document?document.body:t;this._observer.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-effect","data-trigger","data-stagger","data-transition"]}),this._animationEndHandler||(this._animationEndHandler=n=>{let i=n.target;if(!(i instanceof Element)||!i.hasAttribute("data-effect"))return;let s=this._keyframePhase.get(n.animationName);s&&this.emit(i,"vb:effect-phase-end",{phase:s,animationName:n.animationName})},document.addEventListener("animationend",this._animationEndHandler))},disconnect(){this._observer&&(this._observer.disconnect(),this._observer=null),this._animationEndHandler&&(document.removeEventListener("animationend",this._animationEndHandler),this._animationEndHandler=null)},params(t){let e=getComputedStyle(t);return{get(n){return e.getPropertyValue(`--vb-${n}`).trim()},getNumber(n,i=0){let s=e.getPropertyValue(`--vb-${n}`).trim();return s?parseFloat(s):i},getTime(n,i=0){let s=e.getPropertyValue(`--vb-${n}`).trim();if(!s)return i;let r=parseFloat(s);return Number.isFinite(r)?/s\s*$/.test(s)&&!/ms\s*$/.test(s)?r*1e3:r:i},hasClass(n){return t.classList.contains(n)}}},emit(t,e,n={}){t.dispatchEvent(new CustomEvent(e,{bubbles:!0,detail:n}))},prefersReducedMotion:g,_processTree(t){t.hasAttribute?.("data-effect")&&this._processElement(t),t.hasAttribute?.("data-stagger")&&this._processStagger(t),t.hasAttribute?.("data-transition")&&this._processTransition(t),t.querySelectorAll?.("[data-effect]").forEach(e=>this._processElement(e)),t.querySelectorAll?.("[data-stagger]").forEach(e=>this._processStagger(e)),t.querySelectorAll?.("[data-transition]").forEach(e=>this._processTransition(e))},_cleanupTree(t){t.hasAttribute?.("data-effect")&&this._cleanupElement(t),t.hasAttribute?.("data-transition")&&this._cleanupTransition(t),t.querySelectorAll?.("[data-effect]").forEach(e=>this._cleanupElement(e)),t.querySelectorAll?.("[data-transition]").forEach(e=>this._cleanupTransition(e))},_processElement(t){if(t.hasAttribute("data-effect-processed"))return;t.setAttribute("data-effect-processed","");let e=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];for(let n of e)this._initEffect(t,n);this._wireTrigger(t,e)},_initEffect(t,e){let n=this._effects.get(e);if(!n)return;let i=this._instances.get(t);if(i?.has(e))return;g();let s=n(t);s&&(i||(i=new Map,this._instances.set(t,i)),typeof s=="function"?i.set(e,{cleanup:s}):i.set(e,s))},_wireTrigger(t,e){let n=t.getAttribute("data-trigger");if(!n){this._activateEffects(t);return}let i=n.split(/\s+/).filter(Boolean);this._wiredTriggers??=new WeakMap;let s=this._wiredTriggers.get(t);s||(s=new Set,this._wiredTriggers.set(t,s));for(let r of i){if(s.has(r))continue;let a=r.indexOf(":"),o=a>-1?r.slice(0,a):r,c=a>-1?r.slice(a+1):null,f=this._triggers.get(o);if(!f)continue;s.add(r);let h=f(t,()=>this._activateEffects(t),c);if(h){let p=this._triggerCleanups.get(t);if(p){let v=p;this._triggerCleanups.set(t,()=>{v(),h()})}else this._triggerCleanups.set(t,h)}}},_activateEffects(t){t.setAttribute("data-effect-active",""),this.emit(t,"vb:phase-change",{active:!0});let e=this._instances.get(t);if(e)for(let[,n]of e)n.activate&&n.activate()},_cleanupElement(t){let e=this._instances.get(t);if(e){for(let[,i]of e)i.cleanup&&i.cleanup();this._instances.delete(t)}let n=this._triggerCleanups.get(t);n&&(n(),this._triggerCleanups.delete(t)),this._wiredTriggers?.delete(t)},_reconcileEffects(t){let e=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[],n=this._instances.get(t);if(n)for(let[i,s]of n)e.includes(i)||(s.cleanup&&s.cleanup(),n.delete(i));for(let i of e)n?.has(i)||this._initEffect(t,i);t.hasAttribute("data-effect-processed")||(t.setAttribute("data-effect-processed",""),this._wireTrigger(t,e))},_reconcileTrigger(t){let e=this._triggerCleanups.get(t);e&&(e(),this._triggerCleanups.delete(t)),this._wiredTriggers?.delete(t);let n=t.getAttribute("data-effect")?.split(/\s+/).filter(Boolean)||[];this._wireTrigger(t,n)},_processStagger(t){let e=t.getAttribute("data-stagger")||"",n=t.children,i=n.length,s;if(e==="reverse")s=Array.from({length:i},(r,a)=>i-1-a);else if(e==="random"){let r=this._hashString(this.uid(t));s=Array.from({length:i},(o,c)=>c);let a=r;for(let o=i-1;o>0;o--){a^=a<<13,a^=a>>>17,a^=a<<5;let c=Math.abs(a)%(o+1);[s[o],s[c]]=[s[c],s[o]]}}else if(e==="grid"){let r=[];for(let a=0;a<i;a++){let o=getComputedStyle(n[a]),c=parseInt(o.gridRowStart,10),f=parseInt(o.gridColumnStart,10);r.push({i:a,dist:Number.isFinite(c)&&Number.isFinite(f)?c-1+(f-1):a})}r.sort((a,o)=>a.dist-o.dist),s=new Array(i),r.forEach((a,o)=>{s[a.i]=o})}else s=Array.from({length:i},(r,a)=>a);for(let r=0;r<i;r++)n[r].style.setProperty("--vb-stagger-index",String(s[r]))},_hashString(t){let e=5381;for(let n=0;n<t.length;n++)e=(e<<5)+e^t.charCodeAt(n);return e|0},_processTransition(t){if(t.hasAttribute("data-transition-processed"))return;t.setAttribute("data-transition-processed","");let e=t.getAttribute("data-transition");if(!e)return;let n=e.indexOf(":"),i=n>-1?e.slice(0,n):e,s=n>-1?e.slice(n+1):null,r=this._transitions.get(i);if(r){let a=r(t,s);a&&this._transitionCleanups.set(t,a)}else t.style.viewTransitionName=`${e}-${this.uid(t)}`},_cleanupTransition(t){let e=this._transitionCleanups.get(t);e&&(e(),this._transitionCleanups.delete(t)),t.style.viewTransitionName=""}};b[_]=d;typeof window<"u"&&(window.VB=d);typeof document<"u"&&!d._autoBooted&&(d._autoBooted=!0,document.body?d.observe():document.addEventListener("DOMContentLoaded",()=>d.observe(),{once:!0}));var u=["\u2726","\u2727","\u22C6","\u2661","\u2606"],l=["oklch(75% 0.18 350)","oklch(70% 0.15 290)","oklch(75% 0.12 60)","oklch(70% 0.12 220)","oklch(65% 0.15 180)"];d.effect("particles",t=>{if(t._sparkleInterval)return;if(d.prefersReducedMotion()){getComputedStyle(t).position==="static"&&(t.style.position="relative");for(let s=0;s<5;s++){let r=document.createElement("span");r.textContent=u[Math.floor(Math.random()*u.length)],r.setAttribute("aria-hidden","true"),r.style.cssText=`
2
2
  position: absolute; pointer-events: none;
3
3
  font-size: ${.5+Math.random()*.6}rem;
4
- color: ${u[Math.floor(Math.random()*u.length)]};
4
+ color: ${l[Math.floor(Math.random()*l.length)]};
5
5
  left: ${10+Math.random()*80}%;
6
6
  top: ${10+Math.random()*80}%;
7
7
  opacity: 0.4; z-index: 0;
8
- `,t.appendChild(a)}return}getComputedStyle(t).position==="static"&&(t.style.position="relative"),t.style.overflow="hidden";function n(){let i=document.createElement("span");i.textContent=l[Math.floor(Math.random()*l.length)],i.setAttribute("aria-hidden","true"),i.style.cssText=`
8
+ `,t.appendChild(r)}return}getComputedStyle(t).position==="static"&&(t.style.position="relative"),t.style.overflow="hidden";function n(){let i=document.createElement("span");i.textContent=u[Math.floor(Math.random()*u.length)],i.setAttribute("aria-hidden","true"),i.style.cssText=`
9
9
  position: absolute; pointer-events: none;
10
10
  font-size: ${.6+Math.random()*.8}rem;
11
- color: ${u[Math.floor(Math.random()*u.length)]};
11
+ color: ${l[Math.floor(Math.random()*l.length)]};
12
12
  left: ${Math.random()*100}%;
13
13
  top: ${80+Math.random()*20}%;
14
14
  opacity: 0; z-index: 0;
@@ -1,2 +1,2 @@
1
- @font-face{font-family:Cherry Bomb One;font-style:normal;font-weight:400;font-display:swap;src:url("./kawaii/fonts/CherryBombOne-Regular.woff2") format("woff2")}@font-face{font-family:Coiny;font-style:normal;font-weight:400;font-display:swap;src:url("./kawaii/fonts/Coiny-Regular.woff2") format("woff2")}@import url(https://fonts.googleapis.com/css2?family=Nunito:wght@400..700&display=swap);@layer bundle-theme{[data-theme~=kawaii]{color-scheme:light;--theme-border-style: kawaii;--color-surface: oklch(98% .02 350);--color-surface-alt: oklch(95% .04 350);--color-surface-raised: oklch(100% 0 0);--color-surface-sunken: oklch(92% .05 350);--color-background: oklch(97% .03 350);--color-text: oklch(25% .08 330);--color-text-muted: oklch(40% .06 330);--color-text-subtle: oklch(50% .04 330);--color-primary: oklch(55% .18 350);--color-primary-hover: oklch(50% .2 350);--color-primary-subtle: oklch(95% .05 350);--color-accent: oklch(45% .12 180);--color-accent-hover: oklch(40% .14 180);--color-accent-subtle: oklch(95% .04 180);--_kawaii-lavender: oklch(55% .12 290);--_kawaii-peach: oklch(55% .12 60);--_kawaii-sky: oklch(50% .12 220);--color-border: oklch(90% .05 350);--color-border-muted: oklch(94% .03 350);--color-border-strong: oklch(75% .15 350);--color-interactive: var(--color-primary);--color-interactive-hover: var(--color-primary-hover);--font-sans: "Nunito", "Quicksand", "Varela Round", system-ui, sans-serif;--font-display: "Cherry Bomb One", "Nunito", cursive;--font-accent: "Coiny", "Nunito", cursive;--font-mono: "Fira Code", monospace;--line-height-normal: 1.6;--line-height-tight: 1.3;--radius-xs: .5rem;--radius-s: .75rem;--radius-m: 1rem;--radius-l: 1.5rem;--radius-xl: 2rem;--radius-2xl: 3rem;--radius-full: 9999px;--shadow-xs: 0 2px 4px oklch(75% .15 350 / .15);--shadow-sm: 0 4px 8px oklch(75% .15 350 / .2);--shadow-md: 0 6px 16px oklch(75% .15 350 / .25);--shadow-lg: 0 10px 24px oklch(75% .15 350 / .3);--shadow-xl: 0 16px 32px oklch(75% .15 350 / .35);--shadow-2xl: 0 24px 48px oklch(75% .15 350 / .4);--duration-instant: 50ms;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--ease-default: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--shape-depth: 8%;--shape-bevel: 16px}[data-theme~=kawaii][data-mode=dark]{color-scheme:dark;--color-surface: oklch(18% .04 290);--color-surface-alt: oklch(22% .05 290);--color-surface-raised: oklch(25% .04 290);--color-background: oklch(12% .04 290);--color-text: oklch(95% .01 350);--color-text-muted: oklch(80% .02 350);--color-text-subtle: oklch(65% .02 350);--color-hover-bg: oklch(25% .06 350);--color-surface-overlay: oklch(22% .05 290);--color-primary: oklch(75% .18 350);--color-accent: oklch(75% .15 180);--_kawaii-lavender: oklch(75% .12 290);--_kawaii-peach: oklch(75% .12 60);--_kawaii-sky: oklch(70% .12 220);--color-border: oklch(35% .05 290)}}
1
+ @font-face{font-family:Cherry Bomb One;font-style:normal;font-weight:400;font-display:swap;src:url("./kawaii/fonts/CherryBombOne-Regular.woff2") format("woff2")}@font-face{font-family:Coiny;font-style:normal;font-weight:400;font-display:swap;src:url("./kawaii/fonts/Coiny-Regular.woff2") format("woff2")}@import url(https://fonts.googleapis.com/css2?family=Nunito:wght@400..700&display=swap);@layer bundle-theme{[data-theme~=kawaii]{color-scheme:light;--theme-border-style: kawaii;--color-surface: oklch(98% .02 350);--color-surface-alt: oklch(95% .04 350);--color-surface-raised: oklch(100% 0 0);--color-surface-sunken: oklch(92% .05 350);--color-background: oklch(97% .03 350);--color-text: oklch(25% .08 330);--color-text-muted: oklch(40% .06 330);--color-text-subtle: oklch(50% .04 330);--color-primary: oklch(55% .18 350);--color-primary-hover: oklch(50% .2 350);--color-primary-subtle: oklch(95% .05 350);--color-accent: oklch(45% .12 180);--color-accent-hover: oklch(40% .14 180);--color-accent-subtle: oklch(95% .04 180);--_kawaii-lavender: oklch(55% .12 290);--_kawaii-peach: oklch(55% .12 60);--_kawaii-sky: oklch(50% .12 220);--color-border: oklch(90% .05 350);--color-border-muted: oklch(94% .03 350);--color-border-strong: oklch(75% .15 350);--color-interactive: var(--color-primary);--color-interactive-hover: var(--color-primary-hover);--font-sans: "Nunito", "Quicksand", "Varela Round", system-ui, sans-serif;--font-display: "Cherry Bomb One", "Nunito", cursive;--font-accent: "Coiny", "Nunito", cursive;--font-mono: "Fira Code", monospace;--line-height-normal: 1.6;--line-height-tight: 1.3;--radius-xs: .5rem;--radius-s: .75rem;--radius-m: 1rem;--radius-l: 1.5rem;--radius-xl: 2rem;--radius-2xl: 3rem;--radius-full: 9999px;--shadow-xs: 0 2px 4px oklch(75% .15 350 / .15);--shadow-s: 0 4px 8px oklch(75% .15 350 / .2);--shadow-m: 0 6px 16px oklch(75% .15 350 / .25);--shadow-l: 0 10px 24px oklch(75% .15 350 / .3);--shadow-xl: 0 16px 32px oklch(75% .15 350 / .35);--shadow-2xl: 0 24px 48px oklch(75% .15 350 / .4);--duration-instant: 50ms;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--ease-default: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--shape-depth: 8%;--shape-bevel: 16px}[data-theme~=kawaii][data-mode=dark]{color-scheme:dark;--color-surface: oklch(18% .04 290);--color-surface-alt: oklch(22% .05 290);--color-surface-raised: oklch(25% .04 290);--color-background: oklch(12% .04 290);--color-text: oklch(95% .01 350);--color-text-muted: oklch(80% .02 350);--color-text-subtle: oklch(65% .02 350);--color-hover-bg: oklch(25% .06 350);--color-surface-overlay: oklch(22% .05 290);--color-primary: oklch(75% .18 350);--color-accent: oklch(75% .15 180);--_kawaii-lavender: oklch(75% .12 290);--_kawaii-peach: oklch(75% .12 60);--_kawaii-sky: oklch(70% .12 220);--color-border: oklch(35% .05 290)}}
2
2
  /*# sourceMappingURL=kawaii.theme.css.map */
@@ -2,7 +2,7 @@
2
2
  "effects": {
3
3
  "fullJs": {
4
4
  "file": "effects.full.js",
5
- "size": 21779
5
+ "size": 22552
6
6
  },
7
7
  "fullCss": {
8
8
  "file": "effects.full.css",
@@ -84,21 +84,21 @@
84
84
  "journal": {
85
85
  "effectsCss": {
86
86
  "file": "journal.effects.css",
87
- "size": 8326
87
+ "size": 8324
88
88
  },
89
89
  "fullCss": {
90
90
  "file": "journal.full.css",
91
- "size": 8326
91
+ "size": 8324
92
92
  }
93
93
  },
94
94
  "kawaii": {
95
95
  "themeCss": {
96
96
  "file": "kawaii.theme.css",
97
- "size": 2969
97
+ "size": 2966
98
98
  },
99
99
  "effectsCss": {
100
100
  "file": "kawaii.effects.css",
101
- "size": 7370
101
+ "size": 7368
102
102
  },
103
103
  "effectsJs": {
104
104
  "file": "kawaii.effects.js",
@@ -110,17 +110,17 @@
110
110
  },
111
111
  "fullCss": {
112
112
  "file": "kawaii.full.css",
113
- "size": 10340
113
+ "size": 10335
114
114
  },
115
115
  "fullJs": {
116
116
  "file": "kawaii.full.js",
117
- "size": 10465
117
+ "size": 11238
118
118
  }
119
119
  },
120
120
  "memphis": {
121
121
  "themeCss": {
122
122
  "file": "memphis.theme.css",
123
- "size": 15260
123
+ "size": 15254
124
124
  },
125
125
  "effectsCss": {
126
126
  "file": "memphis.effects.css",
@@ -136,7 +136,7 @@
136
136
  },
137
137
  "fullCss": {
138
138
  "file": "memphis.full.css",
139
- "size": 19080
139
+ "size": 19074
140
140
  },
141
141
  "fullJs": {
142
142
  "file": "memphis.full.js",
@@ -160,11 +160,11 @@
160
160
  "ui": {
161
161
  "fullJs": {
162
162
  "file": "ui.full.js",
163
- "size": 44652
163
+ "size": 45317
164
164
  },
165
165
  "fullCss": {
166
166
  "file": "ui.full.css",
167
- "size": 11793
167
+ "size": 12085
168
168
  },
169
169
  "packJs": {
170
170
  "file": "ui.pack.js",