bitwrench 2.0.14 → 2.0.16

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 (61) hide show
  1. package/README.md +57 -21
  2. package/dist/bitwrench-bccl.cjs.js +3746 -0
  3. package/dist/bitwrench-bccl.cjs.min.js +40 -0
  4. package/dist/bitwrench-bccl.esm.js +3741 -0
  5. package/dist/bitwrench-bccl.esm.min.js +40 -0
  6. package/dist/bitwrench-bccl.umd.js +3752 -0
  7. package/dist/bitwrench-bccl.umd.min.js +40 -0
  8. package/dist/bitwrench-code-edit.cjs.js +99 -49
  9. package/dist/bitwrench-code-edit.cjs.min.js +23 -0
  10. package/dist/bitwrench-code-edit.es5.js +79 -16
  11. package/dist/bitwrench-code-edit.es5.min.js +9 -2
  12. package/dist/bitwrench-code-edit.esm.js +99 -49
  13. package/dist/bitwrench-code-edit.esm.min.js +9 -2
  14. package/dist/bitwrench-code-edit.umd.js +99 -49
  15. package/dist/bitwrench-code-edit.umd.min.js +9 -2
  16. package/dist/bitwrench-lean.cjs.js +4923 -3248
  17. package/dist/bitwrench-lean.cjs.min.js +35 -6
  18. package/dist/bitwrench-lean.es5.js +6325 -4580
  19. package/dist/bitwrench-lean.es5.min.js +32 -3
  20. package/dist/bitwrench-lean.esm.js +4923 -3248
  21. package/dist/bitwrench-lean.esm.min.js +35 -6
  22. package/dist/bitwrench-lean.umd.js +4923 -3248
  23. package/dist/bitwrench-lean.umd.min.js +35 -6
  24. package/dist/bitwrench.cjs.js +5082 -3667
  25. package/dist/bitwrench.cjs.min.js +38 -8
  26. package/dist/bitwrench.css +2289 -6034
  27. package/dist/bitwrench.es5.js +6862 -5346
  28. package/dist/bitwrench.es5.min.js +34 -5
  29. package/dist/bitwrench.esm.js +5082 -3667
  30. package/dist/bitwrench.esm.min.js +38 -8
  31. package/dist/bitwrench.min.css +1 -0
  32. package/dist/bitwrench.umd.js +5082 -3667
  33. package/dist/bitwrench.umd.min.js +38 -8
  34. package/dist/builds.json +184 -74
  35. package/dist/bwserve.cjs.js +646 -0
  36. package/dist/bwserve.esm.js +638 -0
  37. package/dist/sri.json +36 -26
  38. package/package.json +23 -6
  39. package/readme.html +71 -32
  40. package/src/bitwrench-bccl-entry.js +72 -0
  41. package/src/{bitwrench-components-v2.js → bitwrench-bccl.js} +396 -647
  42. package/src/bitwrench-code-edit.js +98 -48
  43. package/src/bitwrench-color-utils.js +24 -18
  44. package/src/bitwrench-components-stub.js +4 -1
  45. package/src/bitwrench-file-ops.js +180 -0
  46. package/src/bitwrench-lean.js +2 -2
  47. package/src/bitwrench-styles.js +1287 -4029
  48. package/src/bitwrench-utils.js +458 -0
  49. package/src/bitwrench.js +2070 -1292
  50. package/src/bwserve/client.js +182 -0
  51. package/src/bwserve/index.js +352 -0
  52. package/src/bwserve/shell.js +103 -0
  53. package/src/cli/index.js +36 -15
  54. package/src/cli/layout-default.js +18 -18
  55. package/src/cli/serve.js +325 -0
  56. package/src/generate-css.js +73 -53
  57. package/src/version.js +3 -3
  58. package/src/bitwrench-component-base.js +0 -736
  59. package/src/bitwrench-components-inline.js +0 -374
  60. package/src/bitwrench-components.js +0 -610
  61. /package/bin/{bitwrench.js → bwcli.js} +0 -0
@@ -1,5 +1,5 @@
1
- /*! bitwrench-lean v2.0.14 | BSD-2-Clause | https://deftio.github.com/bitwrench/pages */
2
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).bw=t()}(this,function(){"use strict";const e={version:"2.0.14",name:"bitwrench",description:"A library for javascript UI functions.",license:"BSD-2-Clause",homepage:"https://deftio.github.com/bitwrench/pages",repository:"git+https://github.com/deftio/bitwrench.git",author:"manu a. chatterjee <deftio@deftio.com> (https://deftio.com/)",buildDate:"2026-03-08T08:04:06.572Z"};
1
+ /*! bitwrench-lean v2.0.16 | BSD-2-Clause | https://deftio.github.com/bitwrench/pages */
2
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).bw=t()}(this,function(){"use strict";const e={version:"2.0.16",name:"bitwrench",description:"A library for javascript UI functions.",license:"BSD-2-Clause",homepage:"https://deftio.github.com/bitwrench/pages",repository:"git+https://github.com/deftio/bitwrench.git",author:"manu a. chatterjee <deftio@deftio.com> (https://deftio.com/)",buildDate:"2026-03-12T08:05:52.043Z"};
3
3
  /**
4
4
  * Bitwrench Color Utilities
5
5
  *
@@ -8,8 +8,9 @@
8
8
  * bw.colorParse, bw.colorRgbToHsl, etc.
9
9
  *
10
10
  * @module bitwrench-color-utils
11
- * @license BSD-2-Clause
12
- */function t(e,t,r){return Math.max(t,Math.min(r,e))}function r(e,t){void 0===t&&(t=255);var r=[0,0,0,t,"rgb"];if(Array.isArray(e)){for(var n=[0,0,0,255,"rgb"],a=0;a<e.length&&a<n.length;a++)n[a]=e[a];return n}if("#"===(e=String(e).replace(/\s/g,""))[0]){var i=e.slice(1);if(3===i.length||4===i.length)for(var s=0;s<i.length;s++)r[s]=parseInt(i[s]+i[s],16);else if(6===i.length||8===i.length)for(var l=0;l<i.length;l+=2)r[l/2]=parseInt(i.substring(l,l+2),16)}else{var d=e.match(/^(rgb|hsl)a?\(([^)]+)\)$/i);if(d){var c=d[1].toLowerCase(),b=d[2].split(",").map(function(e){return parseFloat(e)});if("rgb"===c)r[0]=b[0]||0,r[1]=b[1]||0,r[2]=b[2]||0,r[3]=void 0!==b[3]?255*b[3]:t,r[4]="rgb";else if("hsl"===c){return o(b[0]||0,b[1]||0,b[2]||0,void 0!==b[3]?255*b[3]:t)}}}return r}function o(e,t,r,o,n){void 0===o&&(o=255),void 0===n&&(n=!0),Array.isArray(e)&&(t=e[1],r=e[2],o=void 0!==e[3]?e[3]:255,e=e[0]);var a,i,s,l=e/360,d=t/100,c=r/100;if(0===d)a=i=s=255*c;else{var b=function(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e},m=c<.5?c*(1+d):c+d-c*d,p=2*c-m;a=255*b(p,m,l+1/3),i=255*b(p,m,l),s=255*b(p,m,l-1/3)}return n&&(a=Math.round(a),i=Math.round(i),s=Math.round(s),o=Math.round(o)),[a,i,s,o,"rgb"]}function n(e){var t=r(e),o=function(e,t,r,o){void 0===o&&(o=255),Array.isArray(e)&&(t=e[1],r=e[2],o=void 0!==e[3]?e[3]:255,e=e[0]),e/=255,t/=255,r/=255;var n,a,i=Math.max(e,t,r),s=Math.min(e,t,r),l=(i+s)/2;if(i===s)n=a=0;else{var d=i-s;switch(a=l>.5?d/(2-i-s):d/(i+s),i){case e:n=((t-r)/d+(t<r?6:0))/6;break;case t:n=((r-e)/d+2)/6;break;case r:n=((e-t)/d+4)/6}}return[n*=360,a*=100,l*=100,o,"hsl"]}(t[0],t[1],t[2],255);return[o[0],o[1],o[2]]}function a(e){var t=o(e[0],e[1],e[2],255,!0);return"#"+("0"+t[0].toString(16)).slice(-2)+("0"+t[1].toString(16)).slice(-2)+("0"+t[2].toString(16)).slice(-2)}function i(e,r){var o=n(e);return o[2]=t(o[2]+r,0,100),a(o)}function s(e,t,o){var n=r(e),a=r(t),i=Math.round(n[0]+(a[0]-n[0])*o),s=Math.round(n[1]+(a[1]-n[1])*o),l=Math.round(n[2]+(a[2]-n[2])*o);return"#"+("0"+i.toString(16)).slice(-2)+("0"+s.toString(16)).slice(-2)+("0"+l.toString(16)).slice(-2)}function l(e){var t=r(e),o=[t[0]/255,t[1]/255,t[2]/255].map(function(e){return e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4)});return.2126*o[0]+.7152*o[1]+.0722*o[2]}function d(e){return l(e)>.179?"#000":"#fff"}function c(e,t,r){if(void 0===r&&(r=.2),0===r)return e;var o=n(e),i=n(t)[0]-o[0];return i>180&&(i-=360),i<-180&&(i+=360),a([(o[0]+i*r+360)%360,o[1],o[2]])}function b(e){var t=r(e);return{base:e,hover:i(e,-10),active:i(e,-15),light:s(e,"#ffffff",.85),darkText:i(e,-40),border:s(e,"#ffffff",.6),focus:"rgba("+t[0]+","+t[1]+","+t[2]+",0.25)",textOn:d(e)}}function m(e){var r,o,i=n(e),s=i[0],l=i[1],d=i[2];return d>50?(r=t(100-d-10,8,40),o=t(.85*l,0,100)):(r=t(100-d+10,60,92),o=t(1.1*l,0,100)),a([s,o,r])}function p(e){var t=l(e.primary);return e.secondary&&(t=(t+l(e.secondary))/2),e.tertiary&&(t=(2*t+l(e.tertiary))/3),t>.179}function u(e){var t={};t.primary=m(e.primary),t.secondary=m(e.secondary),t.tertiary=e.tertiary?m(e.tertiary):t.primary;var r=n(e.primary),o=r[0];p(e)?(t.light=a([o,Math.min(r[1],15),15]),t.dark=a([o,5,88])):(t.light=a([o,Math.min(r[1],10),96]),t.dark=a([o,10,18]));for(var i=void 0!==e.harmonize?e.harmonize:.2,s={success:"#198754",danger:"#dc3545",warning:"#f0ad4e",info:"#17a2b8"},l=["success","danger","warning","info"],d=0;d<l.length;d++){var b=l[d],u=c(e[b]||s[b],e.primary,i);t[b]=m(u)}return t.harmonize=0,t}function f(e){var t=void 0!==e.harmonize?e.harmonize:.2,r=e.primary,o=n(r)[0],i=c(e.success||"#198754",r,t),s=c(e.danger||"#dc3545",r,t),l=c(e.warning||"#f0ad4e",r,t),d=c(e.info||"#17a2b8",r,t),m=e.light||a([o,8,97]),p=e.dark||a([o,10,13]);return{primary:b(e.primary),secondary:b(e.secondary),tertiary:b(e.tertiary),success:b(i),danger:b(s),warning:b(l),info:b(d),light:b(m),dark:b(p)}}
11
+ * @license BSD-2-Clause
12
+ * @copy Manu Chatterjee @deftio
13
+ */function t(e){return("0"+e.toString(16)).slice(-2)}function r(e,t,r){return Math.max(t,Math.min(r,e))}function o(e,t){void 0===t&&(t=255);var r=[0,0,0,t,"rgb"];if(Array.isArray(e)){for(var o=[0,0,0,255,"rgb"],n=0;n<e.length&&n<o.length;n++)o[n]=e[n];return o}if("#"===(e=String(e).replace(/\s/g,""))[0]){var a=e.slice(1);if(3===a.length||4===a.length)for(var s=0;s<a.length;s++)r[s]=parseInt(a[s]+a[s],16);else if(6===a.length||8===a.length)for(var l=0;l<a.length;l+=2)r[l/2]=parseInt(a.substring(l,l+2),16)}else{var c=e.match(/^(rgb|hsl)a?\(([^)]+)\)$/i);if(c){var d=c[1].toLowerCase(),b=c[2].split(",").map(function(e){return parseFloat(e)});if("rgb"===d)r[0]=b[0]||0,r[1]=b[1]||0,r[2]=b[2]||0,r[3]=void 0!==b[3]?255*b[3]:t,r[4]="rgb";else if("hsl"===d){return i(b[0]||0,b[1]||0,b[2]||0,void 0!==b[3]?255*b[3]:t)}}}return r}function n(e,t,r,o,n){void 0===o&&(o=255),void 0===n&&(n=!0),Array.isArray(e)&&(t=e[1],r=e[2],o=void 0!==e[3]?e[3]:255,e=e[0]),e/=255,t/=255,r/=255;var i,a,s=Math.max(e,t,r),l=Math.min(e,t,r),c=(s+l)/2;if(s===l)i=a=0;else{var d=s-l;switch(a=c>.5?d/(2-s-l):d/(s+l),s){case e:i=((t-r)/d+(t<r?6:0))/6;break;case t:i=((r-e)/d+2)/6;break;case r:i=((e-t)/d+4)/6}}return i*=360,a*=100,c*=100,n&&(i=Math.round(i),a=Math.round(a),c=Math.round(c),o=Math.round(o)),[i,a,c,o,"hsl"]}function i(e,t,r,o,n){void 0===o&&(o=255),void 0===n&&(n=!0),Array.isArray(e)&&(t=e[1],r=e[2],o=void 0!==e[3]?e[3]:255,e=e[0]);var i,a,s,l=e/360,c=t/100,d=r/100;if(0===c)i=a=s=255*d;else{var b=function(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e},_=d<.5?d*(1+c):d+c-d*c,p=2*d-_;i=255*b(p,_,l+1/3),a=255*b(p,_,l),s=255*b(p,_,l-1/3)}return n&&(i=Math.round(i),a=Math.round(a),s=Math.round(s),o=Math.round(o)),[i,a,s,o,"rgb"]}function a(e){var t=o(e),r=n(t[0],t[1],t[2],255,!1);return[r[0],r[1],r[2]]}function s(e){var r=i(e[0],e[1],e[2],255,!0);return"#"+t(r[0])+t(r[1])+t(r[2])}function l(e,t){var o=a(e);return o[2]=r(o[2]+t,0,100),s(o)}function c(e,r,n){var i=o(e),a=o(r),s=Math.round(i[0]+(a[0]-i[0])*n),l=Math.round(i[1]+(a[1]-i[1])*n),c=Math.round(i[2]+(a[2]-i[2])*n);return"#"+t(s)+t(l)+t(c)}function d(e){var t=o(e),r=[t[0]/255,t[1]/255,t[2]/255].map(function(e){return e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4)});return.2126*r[0]+.7152*r[1]+.0722*r[2]}function b(e){return d(e)>.179?"#000":"#fff"}function _(e,t,r){if(void 0===r&&(r=.2),0===r)return e;var o=a(e),n=a(t)[0]-o[0];return n>180&&(n-=360),n<-180&&(n+=360),s([(o[0]+n*r+360)%360,o[1],o[2]])}function p(e){var t=o(e);return{base:e,hover:l(e,-10),active:l(e,-15),light:c(e,"#ffffff",.85),darkText:l(e,-40),border:c(e,"#ffffff",.6),focus:"rgba("+t[0]+","+t[1]+","+t[2]+",0.25)",textOn:b(e)}}function m(e){var t,o,n=a(e),i=n[0],l=n[1],c=n[2];return c>50?(t=r(100-c-10,8,40),o=r(.85*l,0,100)):(t=r(100-c+10,60,92),o=r(1.1*l,0,100)),s([i,o,t])}function u(e){var t=d(e.primary);return e.secondary&&(t=(t+d(e.secondary))/2),e.tertiary&&(t=(2*t+d(e.tertiary))/3),t>.179}function f(e){var t={};t.primary=m(e.primary),t.secondary=m(e.secondary),t.tertiary=e.tertiary?m(e.tertiary):t.primary;var r=a(e.primary),o=r[0];u(e)?(t.light=s([o,Math.min(r[1],15),15]),t.dark=s([o,5,88])):(t.light=s([o,Math.min(r[1],10),96]),t.dark=s([o,10,18]));for(var n=void 0!==e.harmonize?e.harmonize:.2,i={success:"#198754",danger:"#dc3545",warning:"#f0ad4e",info:"#17a2b8"},l=["success","danger","warning","info"],c=0;c<l.length;c++){var d=l[c],b=_(e[d]||i[d],e.primary,n);t[d]=m(b)}return t.harmonize=0,t}function h(e){var t=void 0!==e.harmonize?e.harmonize:.2,r=e.primary,o=a(r)[0],n=_(e.success||"#198754",r,t),i=_(e.danger||"#dc3545",r,t),l=_(e.warning||"#f0ad4e",r,t),c=_(e.info||"#17a2b8",r,t),d=e.light||s([o,8,97]),b=e.dark||s([o,10,13]),m=e.background||s([o,6,98]),u=e.surface||s([o,8,96]);return{primary:p(e.primary),secondary:p(e.secondary),tertiary:p(e.tertiary),success:p(n),danger:p(i),warning:p(l),info:p(c),light:p(d),dark:p(b),background:m,surface:u}}
13
14
  /**
14
15
  * Bitwrench v2 Default Styles
15
16
  *
@@ -32,7 +33,21 @@
32
33
  * @module bitwrench-styles
33
34
  * @license BSD-2-Clause
34
35
  * @author M A Chatterjee <deftio [at] deftio [dot] com>
35
- */var w={compact:{btn:"0.3rem 0.8rem",card:"0.875rem 1rem",alert:"0.625rem 1rem",cell:"0.5rem 0.75rem",input:"0.375rem 0.7rem"},normal:{btn:"0.5rem 1.125rem",card:"1.25rem 1.5rem",alert:"0.875rem 1.25rem",cell:"0.75rem 1rem",input:"0.5rem 0.875rem"},spacious:{btn:"0.75rem 1.5rem",card:"1.75rem 2rem",alert:"1.125rem 1.5rem",cell:"1rem 1.25rem",input:"0.75rem 1.125rem"}},g={none:{btn:"0",card:"0",badge:"0",alert:"0",input:"0"},sm:{btn:"4px",card:"4px",badge:".25rem",alert:"4px",input:"4px"},md:{btn:"6px",card:"8px",badge:".375rem",alert:"8px",input:"6px"},lg:{btn:"10px",card:"12px",badge:".5rem",alert:"12px",input:"10px"},pill:{btn:"50rem",card:"1rem",badge:"50rem",alert:"1rem",input:"50rem"}},h={tight:1.125,normal:1.2,relaxed:1.25,dramatic:1.333};function y(e,t){return e||(e=16),t||(t=1.2),{xs:Math.round(e/(t*t)),sm:Math.round(e/t),base:e,lg:Math.round(e*t),xl:Math.round(e*t*t),"2xl":Math.round(e*Math.pow(t,3)),"3xl":Math.round(e*Math.pow(t,4)),"4xl":Math.round(e*Math.pow(t,5))}}var x={flat:{sm:"none",md:"none",lg:"none",xl:"none"},sm:{sm:"0 1px 2px rgba(0,0,0,0.05)",md:"0 1px 3px rgba(0,0,0,0.08)",lg:"0 2px 6px rgba(0,0,0,0.10)",xl:"0 4px 12px rgba(0,0,0,0.12)"},md:{sm:"0 1px 3px rgba(0,0,0,0.08)",md:"0 2px 6px rgba(0,0,0,0.12)",lg:"0 4px 12px rgba(0,0,0,0.16)",xl:"0 8px 24px rgba(0,0,0,0.20)"},lg:{sm:"0 2px 4px rgba(0,0,0,0.10)",md:"0 4px 12px rgba(0,0,0,0.16)",lg:"0 8px 24px rgba(0,0,0,0.22)",xl:"0 16px 48px rgba(0,0,0,0.28)"}},v={reduced:{fast:"0ms",normal:"0ms",slow:"0ms",easing:"linear"},standard:{fast:"100ms",normal:"200ms",slow:"300ms",easing:"ease-out"},expressive:{fast:"150ms",normal:"300ms",slow:"500ms",easing:"cubic-bezier(0.34, 1.56, 0.64, 1)"}},_={primary:"#006666",secondary:"#6c757d",tertiary:"#006666",success:"#198754",danger:"#dc3545",warning:"#b38600",info:"#0891b2",light:"#f8f9fa",dark:"#212529"};function k(e,t){return e?t.includes(",")?t.split(",").map(function(t){return"."+e+" "+t.trim()}).join(", "):"."+e+" "+t:t}function j(e,t,r){return Object.assign({},function(e,t){var r={};return r[k(e,"body")]={color:t.dark.base,"background-color":"#f5f5f5"},r}(e,t),function(e,t,r){var o=r.motion,n={};return n[k(e,"a")]={color:t.primary.base,"text-decoration":"none",transition:"color "+o.fast+" "+o.easing},n[k(e,"a:hover")]={color:t.primary.hover,"text-decoration":"underline"},n}(e,t,r),function(e,t,r){var o={},n=r.spacing,a=r.radius;return o[k(e,".bw-btn")]={padding:n.btn,"border-radius":a.btn},o[k(e,".bw-btn:focus-visible")]={outline:"2px solid currentColor","outline-offset":"2px","box-shadow":"0 0 0 3px "+t.primary.focus},["primary","secondary","success","danger","warning","info","light","dark"].forEach(function(r){var n=t[r];o[k(e,".bw-btn-"+r)]={color:n.textOn,"background-color":n.base,"border-color":n.base},o[k(e,".bw-btn-"+r+":hover")]={color:n.textOn,"background-color":n.hover,"border-color":n.active},o[k(e,".bw-btn-outline-"+r)]={color:n.base,"border-color":n.base,"background-color":"transparent"},o[k(e,".bw-btn-outline-"+r+":hover")]={color:n.textOn,"background-color":n.base,"border-color":n.base}}),o[k(e,".bw-btn-lg")]={padding:"0.625rem 1.5rem","font-size":"1rem","border-radius":"50rem"===a.btn?"50rem":parseInt(a.btn)+2+"px"},o[k(e,".bw-btn-sm")]={padding:"0.25rem 0.75rem","font-size":"0.8125rem","border-radius":"50rem"===a.btn?"50rem":Math.max(parseInt(a.btn)-1,0)+"px"},o}(e,t,r),function(e,t,r){var o={},n=r.spacing,a=r.radius;return o[k(e,".bw-alert")]={padding:n.alert,"border-radius":a.alert},["primary","secondary","success","danger","warning","info","light","dark"].forEach(function(r){var n=t[r];o[k(e,".bw-alert-"+r)]={color:n.darkText,"background-color":n.light,"border-color":n.border},o[k(e,".bw-alert-"+r+" .alert-link")]={color:i(n.darkText,-10)}}),o}(e,t,r),function(e,t){var r={};return["primary","secondary","success","danger","warning","info","light","dark"].forEach(function(o){var n=t[o];r[k(e,".bw-badge-"+o)]={color:n.textOn,"background-color":n.base}}),r}(e,t),function(e,t,r){var o={},n=r.spacing,a=r.radius,i=r.elevation;return o[k(e,".bw-card")]={"background-color":"#fff",border:"1px solid "+t.light.border,"border-radius":a.card,"box-shadow":i.sm},o[k(e,".bw-card:hover")]={"box-shadow":i.md},o[k(e,".bw-card-body")]={padding:n.card},o[k(e,".bw-card-header")]={padding:n.card.split(" ").map(function(e){return(.7*parseFloat(e)).toFixed(3).replace(/\.?0+$/,"")+"rem"}).join(" "),"background-color":t.light.light,"border-bottom":"1px solid "+t.light.border},o[k(e,".bw-card-footer")]={"background-color":t.light.light,"border-top":"1px solid "+t.light.border,color:t.secondary.base},o[k(e,".bw-card-title")]={color:t.dark.base},o[k(e,".bw-card-subtitle")]={color:t.secondary.base},["primary","secondary","success","danger","warning","info","light","dark"].forEach(function(r){o[k(e,".bw-card-"+r)]={"border-left":"4px solid "+t[r].base}}),o}(e,t,r),function(e,t,r){var o={},n=r.spacing,a=r.radius;return o[k(e,".bw-form-control")]={padding:n.input,"border-radius":a.input,color:t.dark.base,"background-color":"#fff","border-color":t.light.border},o[k(e,".bw-form-control:focus")]={"border-color":t.primary.border,outline:"2px solid "+t.primary.base,"outline-offset":"-1px","box-shadow":"0 0 0 0.25rem "+t.primary.focus},o[k(e,".bw-form-control::placeholder")]={color:t.secondary.base},o[k(e,".bw-form-label")]={color:t.dark.base},o[k(e,".bw-form-text")]={color:t.secondary.base},o[k(e,".bw-form-check-input:checked")]={"background-color":t.primary.base,"border-color":t.primary.base},o[k(e,".bw-form-check-input:focus")]={"box-shadow":"0 0 0 0.25rem "+t.primary.focus},o}(e,t,r),function(e,t){var r={};return r[k(e,".bw-navbar")]={"background-color":t.light.light,"border-bottom-color":t.light.border},r[k(e,".bw-navbar-brand")]={color:t.dark.base},r[k(e,".bw-navbar-nav .bw-nav-link")]={color:t.secondary.base},r[k(e,".bw-navbar-nav .bw-nav-link:hover")]={color:t.dark.base},r[k(e,".bw-navbar-nav .bw-nav-link.active")]={color:t.primary.base,"background-color":t.primary.focus},r[k(e,".bw-navbar-dark")]={"background-color":t.dark.base,"border-bottom-color":t.dark.hover},r[k(e,".bw-navbar-dark .bw-navbar-brand")]={color:t.light.base},r[k(e,".bw-navbar-dark .bw-nav-link")]={color:"rgba(255,255,255,.65)"},r[k(e,".bw-navbar-dark .bw-nav-link:hover")]={color:"#fff"},r[k(e,".bw-navbar-dark .bw-nav-link.active")]={color:"#fff","font-weight":"600"},r[k(e,".bw-nav-pills .bw-nav-link.active")]={color:t.primary.textOn,"background-color":t.primary.base},r}(e,t),function(e,t,r){var o={},n=r.spacing;return o[k(e,".bw-table")]={color:t.dark.base,"border-color":t.light.border},o[k(e,".bw-table > :not(caption) > * > *")]={padding:n.cell,"border-bottom-color":t.light.border},o[k(e,".bw-table > thead > tr > *")]={color:t.secondary.base,"border-bottom-color":t.light.border,"background-color":t.light.light},o[k(e,".bw-table-striped > tbody > tr:nth-of-type(odd) > *")]={"background-color":"rgba(0, 0, 0, 0.05)"},o[k(e,".bw-table-hover > tbody > tr:hover > *")]={"background-color":t.primary.focus},o[k(e,".bw-table-bordered")]={"border-color":t.light.border},o[k(e,".bw-table caption")]={color:t.secondary.base},o}(e,t,r),function(e,t){var r={};return r[k(e,".bw-nav-tabs")]={"border-bottom-color":t.light.border},r[k(e,".bw-nav-link")]={color:t.secondary.base},r[k(e,".bw-nav-tabs .bw-nav-link:hover")]={color:t.dark.base,"border-bottom-color":t.light.border},r[k(e,".bw-nav-tabs .bw-nav-link.active")]={color:t.primary.base,"border-bottom":"2px solid "+t.primary.base},r}(e,t),function(e,t,r){var o={},n=r.spacing;return o[k(e,".bw-list-group-item")]={padding:n.cell,color:t.dark.base,"background-color":"#fff","border-color":t.light.border},o[k(e,"a.bw-list-group-item:hover")]={"background-color":t.light.light,color:t.dark.hover},o[k(e,".bw-list-group-item.active")]={color:t.primary.textOn,"background-color":t.primary.base,"border-color":t.primary.base},o[k(e,".bw-list-group-item.disabled")]={color:t.secondary.base,"background-color":"#fff"},o}(e,t,r),function(e,t){var r={};return r[k(e,".bw-page-link")]={color:t.primary.base,"background-color":"#fff","border-color":t.light.border},r[k(e,".bw-page-link:hover")]={color:t.primary.hover,"background-color":t.light.light,"border-color":t.light.border},r[k(e,".bw-page-link:focus")]={outline:"2px solid "+t.primary.base,"outline-offset":"-2px"},r[k(e,".bw-page-item.bw-active .bw-page-link")]={color:t.primary.textOn,"background-color":t.primary.base,"border-color":t.primary.base},r[k(e,".bw-page-item.bw-disabled .bw-page-link")]={color:t.secondary.base,"background-color":"#fff","border-color":t.light.border},r}(e,t),function(e,t){var r={};return r[k(e,".bw-progress")]={"background-color":t.light.light,"box-shadow":"inset 0 1px 2px rgba(0,0,0,.1)"},r[k(e,".bw-progress-bar")]={color:"#fff","background-color":t.primary.base,"box-shadow":"inset 0 -1px 0 rgba(0,0,0,.15)"},["primary","secondary","success","danger","warning","info"].forEach(function(o){r[k(e,".bw-progress-bar-"+o)]={"background-color":t[o].base}}),r}(e,t),function(e,t){var r={};return r[k(e,".bw-hero-primary")]={background:"linear-gradient(135deg, "+t.primary.base+" 0%, "+t.primary.hover+" 100%)",color:t.primary.textOn},r[k(e,".bw-hero-secondary")]={background:"linear-gradient(135deg, "+t.secondary.base+" 0%, "+t.secondary.hover+" 100%)",color:t.secondary.textOn},r[k(e,".bw-hero-dark")]={background:"linear-gradient(135deg, "+t.dark.base+" 0%, "+t.dark.hover+" 100%)",color:t.dark.textOn},r}(e,t),function(e,t){var r={};return r[k(e,".bw-breadcrumb-item + .bw-breadcrumb-item::before")]={color:t.secondary.base},r[k(e,".bw-breadcrumb-item.active")]={color:t.secondary.base},r}(e,t),function(e,t){var r={};return["primary","secondary","success","danger","warning","info","light","dark"].forEach(function(o){r[k(e,".bw-spinner-border.bw-text-"+o)]={color:t[o].base},r[k(e,".bw-spinner-grow.bw-text-"+o)]={color:t[o].base}}),r}(e,t),function(e,t){var r={};return r[k(e,".bw-close")]={color:t.dark.base,opacity:"0.5"},r[k(e,".bw-close:focus")]={"box-shadow":"0 0 0 0.25rem "+t.primary.focus},r}(e,t),function(e,t){var r={};return r[k(e,".bw-section-subtitle")]={color:t.secondary.base},r[k(e,".bw-feature-description")]={color:t.secondary.base},r[k(e,".bw-cta-description")]={color:t.secondary.base},r}(e,t),function(e,t){var r={};return r[k(e,".bw-accordion-item")]={"background-color":"#fff","border-color":t.light.border},r[k(e,".bw-accordion-button")]={color:t.dark.base},r[k(e,".bw-accordion-button:not(.bw-collapsed)")]={color:t.primary.darkText,"background-color":t.primary.light},r[k(e,".bw-accordion-button:hover")]={"background-color":t.light.light},r[k(e,".bw-accordion-button:not(.bw-collapsed):hover")]={"background-color":t.primary.hover},r[k(e,".bw-accordion-button:focus-visible")]={"box-shadow":"0 0 0 0.2rem "+t.primary.focus},r[k(e,".bw-accordion-body")]={"border-top":"1px solid "+t.light.border},r}(e,t),function(e,t){var r={};return r[k(e,".bw-carousel")]={"background-color":t.light.light},r[k(e,".bw-carousel-indicator.active")]={"background-color":t.primary.base},r}(e,t),function(e,t,r){var o={};return o[k(e,".bw-modal-content")]={"background-color":"#fff","border-color":t.light.border,"box-shadow":r.elevation.lg},o[k(e,".bw-modal-header")]={"border-bottom-color":t.light.border},o[k(e,".bw-modal-footer")]={"border-top-color":t.light.border},o[k(e,".bw-modal-title")]={color:t.dark.base},o}(e,t,r),function(e,t,r){var o={};return o[k(e,".bw-toast")]={"background-color":"#fff","border-color":"rgba(0,0,0,0.1)","box-shadow":r.elevation.lg},o[k(e,".bw-toast-header")]={"border-bottom-color":"rgba(0,0,0,0.05)"},["primary","secondary","success","danger","warning","info"].forEach(function(r){o[k(e,".bw-toast-"+r)]={"border-left":"4px solid "+t[r].base}}),o}(e,t,r),function(e,t,r){var o={};return o[k(e,".bw-dropdown-menu")]={"background-color":"#fff","border-color":t.light.border,"box-shadow":r.elevation.md},o[k(e,".bw-dropdown-item")]={color:t.dark.base},o[k(e,".bw-dropdown-item:hover")]={color:t.dark.hover,"background-color":t.light.light},o[k(e,".bw-dropdown-item.disabled")]={color:t.secondary.base},o[k(e,".bw-dropdown-divider")]={"border-top-color":t.light.border},o}(e,t,r),function(e,t){var r={};return r[k(e,".bw-form-switch .bw-switch-input")]={"background-color":t.secondary.base,"border-color":t.secondary.base},r[k(e,".bw-form-switch .bw-switch-input:checked")]={"background-color":t.primary.base,"border-color":t.primary.base},r[k(e,".bw-form-switch .bw-switch-input:focus")]={"box-shadow":"0 0 0 0.25rem "+t.primary.focus},r}(e,t),function(e,t){var r={};return r[k(e,".bw-skeleton")]={background:"linear-gradient(90deg, "+t.light.border+" 25%, "+t.light.light+" 37%, "+t.light.border+" 63%)"},r}(e,t),function(e,t){var r={};return["primary","secondary","success","danger","warning","info","light","dark"].forEach(function(o){r[k(e,".bw-avatar-"+o)]={"background-color":t[o].base,color:t[o].textOn}}),r}(e,t),function(e,t){var r={};return["primary","secondary","success","danger","warning","info","light","dark"].forEach(function(o){var n=t[o];r[k(e,".bw-text-"+o)]={color:n.base},r[k(e,".bw-bg-"+o)]={"background-color":n.base}}),r}(e,t))}const S={".bw-container":{width:"100%","padding-right":"0.75rem","padding-left":"0.75rem","margin-right":"auto","margin-left":"auto"},"@media (min-width: 576px)":{".bw-container":{"max-width":"540px"}},"@media (min-width: 768px)":{".bw-container":{"max-width":"720px"}},"@media (min-width: 992px)":{".bw-container":{"max-width":"960px"}},"@media (min-width: 1200px)":{".bw-container":{"max-width":"1140px"}},".bw-container-fluid":{width:"100%","padding-right":"15px","padding-left":"15px","margin-right":"auto","margin-left":"auto"},".bw-row":{display:"flex","flex-wrap":"wrap","margin-right":"calc(var(--bw-gutter-x, 0.75rem) * -0.5)","margin-left":"calc(var(--bw-gutter-x, 0.75rem) * -0.5)"},'.col, [class*="col-"]':{position:"relative",width:"100%","padding-right":"calc(var(--bw-gutter-x, 0.75rem) * 0.5)","padding-left":"calc(var(--bw-gutter-x, 0.75rem) * 0.5)"},".bw-col":{flex:"1 0 0%"},".bw-col":{"flex-basis":"0","flex-grow":"1","max-width":"100%"},".bw-col-1":{flex:"0 0 8.333333%","max-width":"8.333333%"},".bw-col-2":{flex:"0 0 16.666667%","max-width":"16.666667%"},".bw-col-3":{flex:"0 0 25%","max-width":"25%"},".bw-col-4":{flex:"0 0 33.333333%","max-width":"33.333333%"},".bw-col-5":{flex:"0 0 41.666667%","max-width":"41.666667%"},".bw-col-6":{flex:"0 0 50%","max-width":"50%"},".bw-col-7":{flex:"0 0 58.333333%","max-width":"58.333333%"},".bw-col-8":{flex:"0 0 66.666667%","max-width":"66.666667%"},".bw-col-9":{flex:"0 0 75%","max-width":"75%"},".bw-col-10":{flex:"0 0 83.333333%","max-width":"83.333333%"},".bw-col-11":{flex:"0 0 91.666667%","max-width":"91.666667%"},".bw-col-12":{flex:"0 0 100%","max-width":"100%"}},C={"@media (min-width: 576px)":{".bw-col-sm-1":{flex:"0 0 8.333333%","max-width":"8.333333%"},".bw-col-sm-2":{flex:"0 0 16.666667%","max-width":"16.666667%"},".bw-col-sm-3":{flex:"0 0 25%","max-width":"25%"},".bw-col-sm-4":{flex:"0 0 33.333333%","max-width":"33.333333%"},".bw-col-sm-5":{flex:"0 0 41.666667%","max-width":"41.666667%"},".bw-col-sm-6":{flex:"0 0 50%","max-width":"50%"},".bw-col-sm-7":{flex:"0 0 58.333333%","max-width":"58.333333%"},".bw-col-sm-8":{flex:"0 0 66.666667%","max-width":"66.666667%"},".bw-col-sm-9":{flex:"0 0 75%","max-width":"75%"},".bw-col-sm-10":{flex:"0 0 83.333333%","max-width":"83.333333%"},".bw-col-sm-11":{flex:"0 0 91.666667%","max-width":"91.666667%"},".bw-col-sm-12":{flex:"0 0 100%","max-width":"100%"}},"@media (min-width: 768px)":{".bw-col-md-1":{flex:"0 0 8.333333%","max-width":"8.333333%"},".bw-col-md-2":{flex:"0 0 16.666667%","max-width":"16.666667%"},".bw-col-md-3":{flex:"0 0 25%","max-width":"25%"},".bw-col-md-4":{flex:"0 0 33.333333%","max-width":"33.333333%"},".bw-col-md-5":{flex:"0 0 41.666667%","max-width":"41.666667%"},".bw-col-md-6":{flex:"0 0 50%","max-width":"50%"},".bw-col-md-7":{flex:"0 0 58.333333%","max-width":"58.333333%"},".bw-col-md-8":{flex:"0 0 66.666667%","max-width":"66.666667%"},".bw-col-md-9":{flex:"0 0 75%","max-width":"75%"},".bw-col-md-10":{flex:"0 0 83.333333%","max-width":"83.333333%"},".bw-col-md-11":{flex:"0 0 91.666667%","max-width":"91.666667%"},".bw-col-md-12":{flex:"0 0 100%","max-width":"100%"}},"@media (min-width: 992px)":{".bw-col-lg-1":{flex:"0 0 8.333333%","max-width":"8.333333%"},".bw-col-lg-2":{flex:"0 0 16.666667%","max-width":"16.666667%"},".bw-col-lg-3":{flex:"0 0 25%","max-width":"25%"},".bw-col-lg-4":{flex:"0 0 33.333333%","max-width":"33.333333%"},".bw-col-lg-5":{flex:"0 0 41.666667%","max-width":"41.666667%"},".bw-col-lg-6":{flex:"0 0 50%","max-width":"50%"},".bw-col-lg-7":{flex:"0 0 58.333333%","max-width":"58.333333%"},".bw-col-lg-8":{flex:"0 0 66.666667%","max-width":"66.666667%"},".bw-col-lg-9":{flex:"0 0 75%","max-width":"75%"},".bw-col-lg-10":{flex:"0 0 83.333333%","max-width":"83.333333%"},".bw-col-lg-11":{flex:"0 0 91.666667%","max-width":"91.666667%"},".bw-col-lg-12":{flex:"0 0 100%","max-width":"100%"}},"@media (max-width: 575px)":{".bw-card-img-left, .bw_card-img-left":{width:"100%"},".bw-card-img-right, .bw_card-img-right":{width:"100%"},".bw-hero, .bw_hero":{padding:"2rem 1rem"},".bw-cta-actions, .bw_cta-actions":{"flex-direction":"column"},".bw-hstack, .bw_hstack":{"flex-direction":"column"},".bw-feature-grid, .bw_feature-grid":{"grid-template-columns":"1fr"}}};function z(e){const t={};for(const[r,o]of Object.entries(e))if(t[r]=o,r.includes(".bw-")){t[r.replace(/\.bw-/g,".bw_")]=o}return t}let O={colors:{primary:"#006666",secondary:"#6c757d",success:"#198754",danger:"#dc3545",warning:"#b38600",info:"#0891b2",light:"#f8f9fa",dark:"#212529",white:"#fff",black:"#000"},breakpoints:{xs:0,sm:576,md:768,lg:992,xl:1200,xxl:1400},spacing:{0:"0",1:"0.25rem",2:"0.5rem",3:"1rem",4:"1.5rem",5:"3rem"},typography:{fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem"}}};function M(e,t){for(const r of Object.keys(t))t[r]&&"object"==typeof t[r]&&!Array.isArray(t[r])&&e[r]&&"object"==typeof e[r]&&!Array.isArray(e[r])?M(e[r],t[r]):e[r]=t[r];return e}function A(e){M(O,e)}const T={};var E=Object.freeze({__proto__:null,componentHandles:T});
36
+ */var w="0.25rem",g="0.5rem",y="0.75rem",v="1rem",x="1.5rem",k="2rem",C={compact:{btn:w+" "+y,card:y+" "+v,alert:g+" "+v,cell:g+" "+y,input:w+" "+y},normal:{btn:g+" "+v,card:x+" "+x,alert:y+" "+x,cell:y+" "+v,input:g+" "+y},spacious:{btn:y+" "+x,card:k+" "+k,alert:v+" "+x,cell:v+" "+x,input:y+" "+v}},j={none:{btn:"0",card:"0",badge:"0",alert:"0",input:"0"},sm:{btn:"4px",card:"4px",badge:".25rem",alert:"4px",input:"4px"},md:{btn:"6px",card:"8px",badge:".375rem",alert:"8px",input:"6px"},lg:{btn:"10px",card:"12px",badge:".5rem",alert:"12px",input:"10px"},pill:{btn:"50rem",card:"1rem",badge:"50rem",alert:"1rem",input:"50rem"}},A={tight:1.125,normal:1.2,relaxed:1.25,dramatic:1.333};function O(e,t){return e||(e=16),t||(t=1.2),{xs:Math.round(e/(t*t)),sm:Math.round(e/t),base:e,lg:Math.round(e*t),xl:Math.round(e*t*t),"2xl":Math.round(e*Math.pow(t,3)),"3xl":Math.round(e*Math.pow(t,4)),"4xl":Math.round(e*Math.pow(t,5))}}var S={flat:{sm:"none",md:"none",lg:"none",xl:"none"},sm:{sm:"0 1px 2px rgba(0,0,0,0.05)",md:"0 1px 3px rgba(0,0,0,0.08)",lg:"0 2px 6px rgba(0,0,0,0.10)",xl:"0 4px 12px rgba(0,0,0,0.12)"},md:{sm:"0 1px 3px rgba(0,0,0,0.08)",md:"0 2px 6px rgba(0,0,0,0.12)",lg:"0 4px 12px rgba(0,0,0,0.16)",xl:"0 8px 24px rgba(0,0,0,0.20)"},lg:{sm:"0 2px 4px rgba(0,0,0,0.10)",md:"0 4px 12px rgba(0,0,0,0.16)",lg:"0 8px 24px rgba(0,0,0,0.22)",xl:"0 16px 48px rgba(0,0,0,0.28)"}},z={reduced:{fast:"0ms",normal:"0ms",slow:"0ms",easing:"linear"},standard:{fast:"100ms",normal:"200ms",slow:"300ms",easing:"ease-out"},expressive:{fast:"150ms",normal:"300ms",slow:"500ms",easing:"cubic-bezier(0.34, 1.56, 0.64, 1)"}},M={primary:"#006666",secondary:"#6c757d",tertiary:"#006666",success:"#198754",danger:"#dc3545",warning:"#b38600",info:"#0891b2",light:"#f8f9fa",dark:"#212529"};function T(e,t){return e?t.includes(",")?t.split(",").map(function(t){return"."+e+" "+t.trim()}).join(", "):"."+e+" "+t:t}function E(e,t,r){return Object.assign({},function(e,t){var r={},o=t.background||"#f5f5f5",n={color:t.dark.base,"background-color":o};return r[T(e,"body")]=n,e&&(r["."+e]=n),r}(e,t),function(e,t,r){var o=r.motion,n={};return n[T(e,"a")]={color:t.primary.base,"text-decoration":"none",transition:"color "+o.fast+" "+o.easing},n[T(e,"a:hover")]={color:t.primary.hover,"text-decoration":"underline"},n}(e,t,r),function(e,t,r){var o={},n=r.spacing,i=r.radius;return o[T(e,".bw_btn")]={padding:n.btn,"border-radius":i.btn},o[T(e,".bw_btn:focus-visible")]={outline:"2px solid currentColor","outline-offset":"2px","box-shadow":"0 0 0 3px "+t.primary.focus},o[T(e,".bw_btn_lg")]={padding:"0.625rem 1.5rem","font-size":"1rem","border-radius":"50rem"===i.btn?"50rem":parseInt(i.btn)+2+"px"},o[T(e,".bw_btn_sm")]={padding:"0.25rem 0.75rem","font-size":"0.8125rem","border-radius":"50rem"===i.btn?"50rem":Math.max(parseInt(i.btn)-1,0)+"px"},o}(e,t,r),function(e,t,r){var o={},n=r.spacing,i=r.radius;return o[T(e,".bw_alert")]={padding:n.alert,"border-radius":i.alert},o}(e,0,r),function(e,t,r){var o={},n=r.spacing,i=r.radius,a=r.elevation,s=r.motion;return o[T(e,".bw_card")]={"background-color":t.surface||"#fff",border:"1px solid "+t.light.border,"border-radius":i.card,"box-shadow":a.sm,transition:"box-shadow "+s.normal+" "+s.easing+", transform "+s.normal+" "+s.easing},o[T(e,".bw_card:hover")]={"box-shadow":a.md},o[T(e,".bw_card_hoverable:hover")]={"box-shadow":a.lg},o[T(e,".bw_card_body")]={padding:n.card},o[T(e,".bw_card_header")]={padding:n.card.split(" ").map(function(e){return(.7*parseFloat(e)).toFixed(3).replace(/\.?0+$/,"")+"rem"}).join(" "),"background-color":t.light.light,"border-bottom":"1px solid "+t.light.border},o[T(e,".bw_card_footer")]={"background-color":t.light.light,"border-top":"1px solid "+t.light.border,color:t.secondary.base},o[T(e,".bw_card_title")]={color:t.dark.base},o[T(e,".bw_card_subtitle")]={color:t.secondary.base},o}(e,t,r),function(e,t,r){var o={},n=r.spacing,i=r.radius;return o[T(e,".bw_form_control")]={padding:n.input,"border-radius":i.input,color:t.dark.base,"background-color":t.surface||"#fff","border-color":t.light.border},o[T(e,".bw_form_control:focus")]={"border-color":t.primary.border,outline:"2px solid "+t.primary.base,"outline-offset":"-1px","box-shadow":"0 0 0 0.25rem "+t.primary.focus},o[T(e,".bw_form_control::placeholder")]={color:t.secondary.base},o[T(e,".bw_form_label")]={color:t.dark.base},o[T(e,".bw_form_text")]={color:t.secondary.base},o[T(e,".bw_form_check_input:checked")]={"background-color":t.primary.base,"border-color":t.primary.base},o[T(e,".bw_form_check_input:focus")]={"box-shadow":"0 0 0 0.25rem "+t.primary.focus},o[T(e,".bw_form_control.bw_is_valid")]={"border-color":t.success.base},o[T(e,".bw_form_control.bw_is_valid:focus")]={"border-color":t.success.base,"box-shadow":"0 0 0 0.2rem "+t.success.focus},o[T(e,".bw_form_control.bw_is_invalid")]={"border-color":t.danger.base},o[T(e,".bw_form_control.bw_is_invalid:focus")]={"border-color":t.danger.base,"box-shadow":"0 0 0 0.2rem "+t.danger.focus},o[T(e,".bw_form_select")]={padding:n.input,"border-radius":i.input,color:t.dark.base,"background-color":t.surface||"#fff","border-color":t.light.border},o[T(e,".bw_form_select:focus")]={"border-color":t.primary.border,"box-shadow":"0 0 0 0.25rem "+t.primary.focus},o}(e,t,r),function(e,t){var r={};return r[T(e,".bw_navbar")]={"background-color":t.light.light,"border-bottom-color":t.light.border},r[T(e,".bw_navbar_brand")]={color:t.dark.base},r[T(e,".bw_navbar_nav .bw_nav_link")]={color:t.secondary.base},r[T(e,".bw_navbar_nav .bw_nav_link:hover")]={color:t.dark.base},r[T(e,".bw_navbar_nav .bw_nav_link.active")]={color:t.primary.base,"background-color":t.primary.focus},r[T(e,".bw_navbar_dark")]={"background-color":t.dark.base,"border-bottom-color":t.dark.hover},r[T(e,".bw_navbar_dark .bw_navbar_brand")]={color:t.light.base},r[T(e,".bw_navbar_dark .bw_nav_link")]={color:"rgba(255,255,255,.65)"},r[T(e,".bw_navbar_dark .bw_nav_link:hover")]={color:"#fff"},r[T(e,".bw_navbar_dark .bw_nav_link.active")]={color:"#fff","font-weight":"600"},r[T(e,".bw_nav_pills .bw_nav_link.active")]={color:t.primary.textOn,"background-color":t.primary.base},r}(e,t),function(e,t,r){var o={},n=r.spacing;return o[T(e,".bw_table")]={color:t.dark.base,"border-color":t.light.border},o[T(e,".bw_table > :not(caption) > * > *")]={padding:n.cell,"border-bottom-color":t.light.border},o[T(e,".bw_table > thead > tr > *")]={color:t.secondary.base,"border-bottom-color":t.light.border,"background-color":t.light.light},o[T(e,".bw_table_striped > tbody > tr:nth-of-type(odd) > *")]={"background-color":"rgba(0, 0, 0, 0.05)"},o[T(e,".bw_table_hover > tbody > tr:hover > *")]={"background-color":t.primary.focus},o[T(e,".bw_table_bordered")]={"border-color":t.light.border},o[T(e,".bw_table caption")]={color:t.secondary.base},o}(e,t,r),function(e,t){var r={};return r[T(e,".bw_nav_tabs")]={"border-bottom-color":t.light.border},r[T(e,".bw_nav_link")]={color:t.secondary.base},r[T(e,".bw_nav_tabs .bw_nav_link:hover")]={color:t.dark.base,"border-bottom-color":t.light.border},r[T(e,".bw_nav_tabs .bw_nav_link.active")]={color:t.primary.base,"border-bottom":"2px solid "+t.primary.base},r}(e,t),function(e,t,r){var o={},n=r.spacing;return o[T(e,".bw_list_group_item")]={padding:n.cell,color:t.dark.base,"background-color":t.surface||"#fff","border-color":t.light.border},o[T(e,"a.bw_list_group_item:hover")]={"background-color":t.light.light,color:t.dark.hover},o[T(e,".bw_list_group_item.active")]={color:t.primary.textOn,"background-color":t.primary.base,"border-color":t.primary.base},o[T(e,".bw_list_group_item.disabled")]={color:t.secondary.base,"background-color":t.surface||"#fff"},o}(e,t,r),function(e,t){var r={};return r[T(e,".bw_page_link")]={color:t.primary.base,"background-color":t.surface||"#fff","border-color":t.light.border},r[T(e,".bw_page_link:hover")]={color:t.primary.hover,"background-color":t.light.light,"border-color":t.light.border},r[T(e,".bw_page_link:focus")]={outline:"2px solid "+t.primary.base,"outline-offset":"-2px"},r[T(e,".bw_page_item.bw_active .bw_page_link")]={color:t.primary.textOn,"background-color":t.primary.base,"border-color":t.primary.base},r[T(e,".bw_page_item.bw_disabled .bw_page_link")]={color:t.secondary.base,"background-color":t.surface||"#fff","border-color":t.light.border},r}(e,t),function(e,t){var r={};return r[T(e,".bw_progress")]={"background-color":t.light.light,"box-shadow":"inset 0 1px 2px rgba(0,0,0,.1)"},r[T(e,".bw_progress_bar")]={color:"#fff","background-color":t.primary.base,"box-shadow":"inset 0 -1px 0 rgba(0,0,0,.15)"},r}(e,t),function(e,t){var r={};return r[T(e,".bw_breadcrumb_item + .bw_breadcrumb_item::before")]={color:t.secondary.base},r[T(e,".bw_breadcrumb_item.active")]={color:t.secondary.base},r[T(e,".bw_breadcrumb_item a:hover")]={color:t.primary.hover,"text-decoration":"underline"},r}(e,t),function(e,t){var r={};return r[T(e,".bw_close")]={color:t.dark.base,opacity:"0.5"},r[T(e,".bw_close:focus")]={"box-shadow":"0 0 0 0.25rem "+t.primary.focus},r}(e,t),function(e,t){var r={};return r[T(e,".bw_section_subtitle")]={color:t.secondary.base},r[T(e,".bw_feature_description")]={color:t.secondary.base},r[T(e,".bw_cta_description")]={color:t.secondary.base},r}(e,t),function(e,t){var r={};return r[T(e,".bw_accordion_item")]={"background-color":t.surface||"#fff","border-color":t.light.border},r[T(e,".bw_accordion_button")]={color:t.dark.base},r[T(e,".bw_accordion_button:not(.bw_collapsed)")]={color:t.primary.darkText,"background-color":t.primary.light},r[T(e,".bw_accordion_button:hover")]={"background-color":t.light.light},r[T(e,".bw_accordion_button:not(.bw_collapsed):hover")]={"background-color":t.primary.hover},r[T(e,".bw_accordion_button:focus-visible")]={"box-shadow":"0 0 0 0.2rem "+t.primary.focus},r[T(e,".bw_accordion_body")]={"border-top":"1px solid "+t.light.border},r}(e,t),function(e,t){var r={};return r[T(e,".bw_carousel")]={"background-color":t.light.light},r[T(e,".bw_carousel_indicator.active")]={"background-color":t.primary.base},r[T(e,".bw_carousel_control")]={"background-color":"rgba(0,0,0,0.4)",color:"#fff"},r[T(e,".bw_carousel_control:hover")]={"background-color":"rgba(0,0,0,0.6)"},r[T(e,".bw_carousel_caption")]={background:"linear-gradient(transparent, rgba(0,0,0,0.6))",color:"#fff"},r}(e,t),function(e,t,r){var o={};return o[T(e,".bw_modal_content")]={"background-color":t.surface||"#fff","border-color":t.light.border,"box-shadow":r.elevation.lg},o[T(e,".bw_modal_header")]={"border-bottom-color":t.light.border},o[T(e,".bw_modal_footer")]={"border-top-color":t.light.border},o[T(e,".bw_modal_title")]={color:t.dark.base},o}(e,t,r),function(e,t,r){var o={};return o[T(e,".bw_toast")]={"background-color":t.surface||"#fff","border-color":"rgba(0,0,0,0.1)","box-shadow":r.elevation.lg},o[T(e,".bw_toast_header")]={"border-bottom-color":"rgba(0,0,0,0.05)"},o}(e,t,r),function(e,t,r){var o={};return o[T(e,".bw_dropdown_menu")]={"background-color":t.surface||"#fff","border-color":t.light.border,"box-shadow":r.elevation.md},o[T(e,".bw_dropdown_item")]={color:t.dark.base},o[T(e,".bw_dropdown_item:hover")]={color:t.dark.hover,"background-color":t.light.light},o[T(e,".bw_dropdown_item.disabled")]={color:t.secondary.base},o[T(e,".bw_dropdown_divider")]={"border-top-color":t.light.border},o}(e,t,r),function(e,t){var r={};return r[T(e,".bw_form_switch .bw_switch_input")]={"background-color":t.secondary.base,"border-color":t.secondary.base},r[T(e,".bw_form_switch .bw_switch_input:checked")]={"background-color":t.primary.base,"border-color":t.primary.base},r[T(e,".bw_form_switch .bw_switch_input:focus")]={"box-shadow":"0 0 0 0.25rem "+t.primary.focus},r}(e,t),function(e,t){var r={};return r[T(e,".bw_skeleton")]={background:"linear-gradient(90deg, "+t.light.border+" 25%, "+t.light.light+" 37%, "+t.light.border+" 63%)"},r}(e,t),function(e,t){var r={};return r[T(e,".bw_stat_change_up")]={color:t.success.base},r[T(e,".bw_stat_change_down")]={color:t.danger.base},r}(e,t),function(e,t){var r={};return r[T(e,".bw_timeline::before")]={"background-color":t.light.border},r[T(e,".bw_timeline_date")]={color:t.secondary.base},r}(e,t),function(e,t){var r={};return r[T(e,".bw_step_indicator")]={"background-color":t.light.light,border:"2px solid "+t.light.border,color:t.secondary.base},r[T(e,".bw_step + .bw_step::before")]={"background-color":t.light.border},r[T(e,".bw_step_active .bw_step_indicator")]={"background-color":t.primary.base,color:t.primary.textOn},r[T(e,".bw_step_active .bw_step_label")]={color:t.dark.base,"font-weight":"600"},r[T(e,".bw_step_completed .bw_step_indicator")]={"background-color":t.primary.base,color:t.primary.textOn},r[T(e,".bw_step_completed .bw_step_label")]={color:t.primary.base},r[T(e,".bw_step_completed + .bw_step::before")]={"background-color":t.primary.base},r}(e,t),function(e,t){var r={};return r[T(e,".bw_chip_input")]={"border-color":t.light.border},r[T(e,".bw_chip_input:focus-within")]={"border-color":t.primary.base,"box-shadow":"0 0 0 0.2rem "+t.primary.focus},r[T(e,".bw_chip")]={"background-color":t.light.light,color:t.dark.base},r[T(e,".bw_chip_remove:hover")]={color:t.danger.base,"background-color":t.danger.light},r}(e,t),function(e,t){var r={};return r[T(e,".bw_file_upload")]={"border-color":t.light.border,"background-color":t.light.light},r[T(e,".bw_file_upload:hover")]={"border-color":t.primary.base,"background-color":t.primary.light},r[T(e,".bw_file_upload:focus")]={outline:"2px solid "+t.primary.base,"outline-offset":"2px"},r[T(e,".bw_file_upload.bw_file_upload_active")]={"border-color":t.primary.base,"background-color":t.primary.light,"border-style":"solid"},r}(e,t),function(e,t){var r={};return r[T(e,".bw_range")]={"background-color":t.light.border},r[T(e,".bw_range::-webkit-slider-thumb")]={"background-color":t.primary.base,"border-color":"#fff","box-shadow":"0 1px 3px rgba(0,0,0,0.2)",transition:"background-color 0.15s ease-out, transform 0.15s ease-out"},r[T(e,".bw_range::-moz-range-thumb")]={"background-color":t.primary.base,"border-color":"#fff","box-shadow":"0 1px 3px rgba(0,0,0,0.2)"},r}(e,t),function(e,t){var r={};return r[T(e,".bw_search_clear:hover")]={color:t.dark.base},r}(e,t),function(e,t){var r={};return r[T(e,".bw_code_copy_btn_copied")]={background:t.success.base,color:t.success.textOn,"border-color":t.success.base},r[T(e,".bw_copy_btn:hover")]={background:"rgba(255,255,255,0.2)",color:"#fff"},r}(e,t),function(e,t,r){var o={},n=r.radius;return o[T(e,".bw_nav_pills .bw_nav_link")]={"border-radius":n.btn},o}(e,0,r),function(e,t){var r={};return Object.keys(t).forEach(function(o){if("object"==typeof t[o]){var n=t[o];r[T(e,".bw_"+o)]={"background-color":n.base,color:n.textOn,"border-color":n.base},r[T(e,".bw_"+o+":hover")]={"background-color":n.hover,"border-color":n.active},r[T(e,".bw_"+o+":active")]={"background-color":n.active},r[T(e,".bw_"+o+":focus-visible")]={"box-shadow":"0 0 0 3px "+n.focus,outline:"none"},r[T(e,".bw_alert.bw_"+o)]={"background-color":n.light,color:n.darkText,"border-color":n.border},r[T(e,".bw_toast.bw_"+o)]={"background-color":"inherit",color:"inherit","border-left":"4px solid "+n.base},r[T(e,".bw_stat_card.bw_"+o)]={"background-color":"inherit",color:"inherit","border-left-color":n.base},r[T(e,".bw_card.bw_"+o)]={"background-color":"inherit",color:"inherit","border-left":"4px solid "+n.base},r[T(e,".bw_timeline_marker.bw_"+o)]={"box-shadow":"0 0 0 2px "+n.base},r[T(e,".bw_spinner_border.bw_"+o+",\n"+T(e,".bw_spinner_grow.bw_"+o))]={"background-color":"transparent",color:n.base,"border-color":"currentColor"},r[T(e,".bw_btn_outline.bw_"+o)]={"background-color":"transparent",color:n.base,"border-color":n.base},r[T(e,".bw_btn_outline.bw_"+o+":hover")]={"background-color":n.base,color:n.textOn},r[T(e,".bw_hero.bw_"+o)]={background:"linear-gradient(135deg, "+n.base+" 0%, "+n.hover+" 100%)",color:n.textOn},r[T(e,".bw_progress_bar.bw_"+o)]={color:"#fff"}}}),r[T(e,".bw_text_muted")]={color:t.secondary.base},r}(e,t))}var $={base:{"*":{"box-sizing":"border-box",margin:"0",padding:"0"},html:{"font-size":"16px","line-height":"1.5","-webkit-text-size-adjust":"100%","-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale"},body:{"font-family":'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',"font-size":"1rem","font-weight":"400","line-height":"1.6",margin:"0",padding:"0","-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale"},".bw_page":{"min-height":"100vh",display:"flex","flex-direction":"column"},".bw_page_content":{flex:"1",padding:"2rem 0"},main:{display:"block"},hr:{"box-sizing":"content-box",height:"0",overflow:"visible",margin:"1rem 0",border:"0"},"hr:not([size])":{height:"1px"}},typography:{"h1, h2, h3, h4, h5, h6":{"margin-top":"0","margin-bottom":".5rem","font-weight":"600","line-height":"1.25","letter-spacing":"-0.01em"},h1:{"font-size":"calc(1.375rem + 1.5vw)"},h2:{"font-size":"calc(1.325rem + .9vw)"},h3:{"font-size":"calc(1.3rem + .6vw)"},h4:{"font-size":"calc(1.275rem + .3vw)"},h5:{"font-size":"1.25rem"},h6:{"font-size":"1rem"},p:{"margin-top":"0","margin-bottom":"1rem"},small:{"font-size":"0.875rem"},a:{"text-decoration":"none"},".bw_display_4":{"font-size":"calc(1.475rem + 2.7vw)","font-weight":"300","line-height":"1.2"},".bw_lead":{"font-size":"1.25rem","font-weight":"300"},".bw_h5":{"font-size":"1.25rem"},".bw_h6":{"font-size":"1rem"}},grid:{".bw_container":{width:"100%","padding-right":"0.75rem","padding-left":"0.75rem","margin-right":"auto","margin-left":"auto"},"@media (min-width: 576px)":{".bw_container":{"max-width":"540px"}},"@media (min-width: 768px)":{".bw_container":{"max-width":"720px"}},"@media (min-width: 992px)":{".bw_container":{"max-width":"960px"}},"@media (min-width: 1200px)":{".bw_container":{"max-width":"1140px"}},".bw_container_fluid":{width:"100%","padding-right":"0.75rem","padding-left":"0.75rem","margin-right":"auto","margin-left":"auto"},".bw_row":{display:"flex","flex-wrap":"wrap","margin-right":"calc(var(--bw_gutter_x, 0.75rem) * -0.5)","margin-left":"calc(var(--bw_gutter_x, 0.75rem) * -0.5)"},'.col, [class*="col-"]':{position:"relative",width:"100%","padding-right":"calc(var(--bw_gutter_x, 0.75rem) * 0.5)","padding-left":"calc(var(--bw_gutter_x, 0.75rem) * 0.5)"},".bw_col":{"flex-basis":"0","flex-grow":"1","max-width":"100%"},".bw_col_1":{flex:"0 0 8.333333%","max-width":"8.333333%"},".bw_col_2":{flex:"0 0 16.666667%","max-width":"16.666667%"},".bw_col_3":{flex:"0 0 25%","max-width":"25%"},".bw_col_4":{flex:"0 0 33.333333%","max-width":"33.333333%"},".bw_col_5":{flex:"0 0 41.666667%","max-width":"41.666667%"},".bw_col_6":{flex:"0 0 50%","max-width":"50%"},".bw_col_7":{flex:"0 0 58.333333%","max-width":"58.333333%"},".bw_col_8":{flex:"0 0 66.666667%","max-width":"66.666667%"},".bw_col_9":{flex:"0 0 75%","max-width":"75%"},".bw_col_10":{flex:"0 0 83.333333%","max-width":"83.333333%"},".bw_col_11":{flex:"0 0 91.666667%","max-width":"91.666667%"},".bw_col_12":{flex:"0 0 100%","max-width":"100%"}},buttons:{".bw_btn":{display:"inline-flex","align-items":"center","justify-content":"center","font-weight":"500","line-height":"1.5","text-align":"center","text-decoration":"none","vertical-align":"middle",cursor:"pointer","user-select":"none",border:"1px solid transparent","font-size":"0.875rem","font-family":"inherit",gap:"0.5rem"},".bw_btn:hover":{"text-decoration":"none",transform:"translateY(-1px)"},".bw_btn:active":{transform:"translateY(0)"},".bw_btn:focus-visible":{outline:"2px solid currentColor","outline-offset":"2px"},".bw_btn:disabled":{opacity:"0.5",cursor:"not-allowed","pointer-events":"none"},".bw_btn_block":{display:"block",width:"100%"}},cards:{".bw_card":{position:"relative",display:"flex","flex-direction":"column","min-width":"0",height:"100%","word-wrap":"break-word","background-clip":"border-box","margin-bottom":"1.5rem",overflow:"hidden"},".bw_card_body":{flex:"1 1 auto"},".bw_card_body > *:last-child":{"margin-bottom":"0"},".bw_card_title":{"margin-bottom":"0.5rem","font-size":"1.125rem","font-weight":"600","line-height":"1.3"},".bw_card_text":{"margin-bottom":"0","font-size":"0.9375rem","line-height":"1.6"},".bw_card_header":{"margin-bottom":"0","font-weight":"600","font-size":"0.875rem"},".bw_card_footer":{"font-size":"0.875rem"},".bw_card_hoverable":{transition:"all 0.3s ease-out"},".bw_card_hoverable:hover":{transform:"translateY(-4px)"},".bw_card_img_top":{width:"100%"},".bw_card_img_bottom":{width:"100%"},".bw_card_img_left":{width:"40%","object-fit":"cover"},".bw_card_img_right":{width:"40%","object-fit":"cover"},".bw_card_subtitle, .card-subtitle":{"margin-top":"-0.25rem","margin-bottom":"0.5rem","font-size":"0.875rem"}},forms:{".bw_form_control":{display:"block",width:"100%","font-size":"0.9375rem","font-weight":"400","line-height":"1.5","background-clip":"padding-box",appearance:"none",border:"1px solid transparent","font-family":"inherit"},".bw_form_control:focus":{outline:"2px solid currentColor","outline-offset":"-1px"},".bw_form_control::placeholder":{opacity:"1"},".bw_form_label":{display:"block","margin-bottom":"0.375rem","font-size":"0.875rem","font-weight":"600"},".bw_form_group":{"margin-bottom":"1.25rem"},".bw_form_text":{"margin-top":"0.25rem","font-size":"0.8125rem"},"select.bw_form_control":{"padding-right":"2.25rem","background-image":"url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\")","background-repeat":"no-repeat","background-position":"right 0.75rem center","background-size":"16px 12px"},"textarea.bw_form_control":{"min-height":"5rem",resize:"vertical"},".bw_valid_feedback":{display:"block","font-size":"0.875rem","margin-top":"0.25rem"},".bw_invalid_feedback":{display:"block","font-size":"0.875rem","margin-top":"0.25rem"}},formChecks:{".bw_form_check":{display:"flex","align-items":"center",gap:"0.5rem","min-height":"1.5rem","margin-bottom":"0.25rem"},".bw_form_check_input":{width:"1rem",height:"1rem",margin:"0",cursor:"pointer","flex-shrink":"0","border-radius":"0.25rem",appearance:"auto"},".bw_form_check_input:disabled":{opacity:"0.5",cursor:"not-allowed"},".bw_form_check_label":{cursor:"pointer","user-select":"none","font-size":"0.9375rem"}},navigation:{".bw_navbar":{position:"relative",display:"flex","flex-wrap":"wrap","align-items":"center","justify-content":"space-between",padding:"0.5rem 1.5rem"},".bw_navbar > .bw_container, .bw_navbar > .container":{display:"flex","flex-wrap":"wrap","align-items":"center","justify-content":"space-between"},".bw_navbar_brand":{display:"inline-flex","align-items":"center",gap:"0.5rem","padding-top":"0.25rem","padding-bottom":"0.25rem","margin-right":"1.5rem","font-size":"1.125rem","font-weight":"600","line-height":"inherit","white-space":"nowrap","text-decoration":"none"},".bw_navbar_nav":{display:"flex","flex-direction":"row","padding-left":"0","margin-bottom":"0","list-style":"none",gap:"0.25rem"},".bw_navbar_nav .bw_nav_link":{display:"block","text-decoration":"none","font-size":"0.875rem","font-weight":"500"}},tables:{".bw_table":{width:"100%","margin-bottom":"1.5rem","vertical-align":"top","border-collapse":"collapse","font-size":"0.9375rem","line-height":"1.5"},".bw_table > :not(caption) > * > *":{"background-color":"transparent","border-bottom-width":"1px","border-bottom-style":"solid"},".bw_table > tbody":{"vertical-align":"inherit"},".bw_table > thead":{"vertical-align":"bottom"},".bw_table > thead > tr > *":{"font-size":"0.8125rem","font-weight":"600","text-transform":"uppercase","letter-spacing":"0.04em","border-bottom-width":"2px"},".bw_table caption":{"font-size":"0.875rem","caption-side":"bottom"},".bw_table_bordered > :not(caption) > * > *":{"border-width":"1px","border-style":"solid"},".bw_table_responsive":{"overflow-x":"auto","-webkit-overflow-scrolling":"touch"}},alerts:{".bw_alert":{position:"relative","margin-bottom":"1rem",border:"1px solid transparent","font-size":"0.9375rem","line-height":"1.6"},".bw_alert_heading, .alert-heading":{color:"inherit"},".bw_alert_link, .alert-link":{"font-weight":"700"},".bw_alert_dismissible":{"padding-right":"3rem"},".bw_alert_dismissible .btn-close":{position:"absolute",top:"0",right:"0","z-index":"2",padding:"1.25rem 1rem"}},badges:{".bw_badge":{display:"inline-block","font-size":"0.875rem","font-weight":"600","line-height":"1.3","text-align":"center","white-space":"nowrap","vertical-align":"baseline",padding:"0.35rem 0.65rem","border-radius":"0.25rem"},".bw_badge:empty":{display:"none"},".bw_badge_sm":{"font-size":"0.75rem",padding:"0.25rem 0.5rem"},".bw_badge_lg":{"font-size":"1rem",padding:"0.5rem 0.875rem"},".bw_badge_pill":{"border-radius":"50rem"},".btn .badge":{position:"relative",top:"-1px"}},progress:{".bw_progress":{display:"flex",height:"1.25rem",overflow:"hidden","font-size":".875rem"},".bw_progress_bar":{display:"flex","flex-direction":"column","justify-content":"center",overflow:"hidden","text-align":"center","white-space":"nowrap","font-weight":"600"},".bw_progress_bar_striped":{"background-image":"linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)","background-size":"1rem 1rem"},".bw_progress_bar_animated":{animation:"progress-bar-stripes 1s linear infinite"},"@keyframes progress-bar-stripes":{"0%":{"background-position-x":"1rem"}}},tabs:{".bw_nav":{display:"flex","flex-wrap":"wrap","padding-left":"0","margin-bottom":"0","list-style":"none",gap:"0"},".bw_nav_item":{display:"block"},".bw_nav_tabs .bw_nav_item":{"margin-bottom":"-2px"},".bw_nav_link":{display:"block","font-size":"0.875rem","font-weight":"500","text-decoration":"none",cursor:"pointer",border:"none",background:"transparent","font-family":"inherit"},".bw_nav_tabs .bw_nav_link":{border:"none","border-bottom":"2px solid transparent","border-radius":"0","background-color":"transparent"},".bw_nav_vertical":{"flex-direction":"column"},".bw_tab_content":{padding:"1.25rem 0"},".bw_tab_pane":{display:"none"},".bw_tab_pane.active":{display:"block"},".bw_nav_scrollable":{"flex-wrap":"nowrap","overflow-x":"auto","-webkit-overflow-scrolling":"touch","scrollbar-width":"none"},".bw_nav_scrollable::-webkit-scrollbar":{display:"none"},".bw_nav_scrollable .bw_nav_link":{"white-space":"nowrap"}},listGroups:{".bw_list_group":{display:"flex","flex-direction":"column","padding-left":"0","margin-bottom":"0"},".bw_list_group_item":{position:"relative",display:"block","text-decoration":"none","font-size":"0.9375rem"},".bw_list_group_item:first-child":{"border-top-left-radius":"inherit","border-top-right-radius":"inherit"},".bw_list_group_item:last-child":{"border-bottom-right-radius":"inherit","border-bottom-left-radius":"inherit"},".bw_list_group_item + .bw_list_group_item":{"border-top-width":"0"},".bw_list_group_item.disabled":{"pointer-events":"none"},"a.bw_list_group_item":{cursor:"pointer"},"a.bw_list_group_item:focus-visible, .bw_list_group_item:focus-visible":{"z-index":"2",outline:"2px solid currentColor","outline-offset":"-2px"},".bw_list_group_flush":{"border-radius":"0"},".bw_list_group_flush > .bw_list_group_item":{"border-width":"0 0 1px","border-radius":"0"},".bw_list_group_flush > .bw_list_group_item:last-child":{"border-bottom-width":"0"}},pagination:{".bw_pagination":{display:"flex","padding-left":"0","list-style":"none","margin-bottom":"0"},".bw_page_item":{display:"list-item","list-style":"none"},".bw_page_link":{position:"relative",display:"block",padding:"0.375rem 0.75rem","margin-left":"-1px","line-height":"1.25","text-decoration":"none"},".bw_page_item:first-child .bw_page_link":{"margin-left":"0","border-top-left-radius":"0.375rem","border-bottom-left-radius":"0.375rem"},".bw_page_item:last-child .bw_page_link":{"border-top-right-radius":"0.375rem","border-bottom-right-radius":"0.375rem"},".bw_page_link:focus-visible":{"z-index":"3",outline:"2px solid currentColor","outline-offset":"-2px"}},breadcrumb:{".bw_breadcrumb":{display:"flex","flex-wrap":"wrap",padding:"0 0","margin-bottom":"1rem","list-style":"none"},".bw_breadcrumb_item":{display:"flex"},".bw_breadcrumb_item + .bw_breadcrumb_item":{"padding-left":"0.5rem"},".bw_breadcrumb_item + .bw_breadcrumb_item::before":{float:"left","padding-right":"0.5rem",content:'"/"'},".bw_breadcrumb_item a":{"text-decoration":"none"},".bw_breadcrumb_item.active":{"font-weight":"500"}},hero:{".bw_hero":{position:"relative",overflow:"hidden"},".bw_hero_overlay":{position:"absolute",top:"0",left:"0",right:"0",bottom:"0","z-index":"1"},".bw_hero_content":{position:"relative","z-index":"2"},".bw_hero_title":{"font-weight":"300","letter-spacing":"-0.05rem",color:"inherit"},".bw_hero_subtitle":{color:"inherit"},".bw_hero_actions":{display:"flex",gap:"1rem","justify-content":"center","flex-wrap":"wrap"}},features:{".bw_feature":{padding:"1rem"},".bw_feature_icon":{display:"inline-block","margin-bottom":"1rem"},".bw_feature_title":{"margin-bottom":"0.5rem"},".bw_feature_grid":{width:"100%"},".bw_g_4":{"--bw_gutter_x":"1.5rem","--bw_gutter_y":"1.5rem"}},sections:{".bw_section":{position:"relative"},".bw_section_header":{"margin-bottom":"3rem"},".bw_section_title":{"margin-bottom":"1rem","font-weight":"300","font-size":"calc(1.325rem + .9vw)"}},cta:{".bw_cta":{position:"relative"},".bw_cta_content":{"max-width":"48rem",margin:"0 auto"},".bw_cta_title":{"font-weight":"300"},".bw_cta_actions":{display:"flex",gap:"1rem","justify-content":"center","flex-wrap":"wrap"}},spinner:{".bw_spinner_border":{display:"inline-block",width:"2rem",height:"2rem","vertical-align":"-0.125em",border:"0.25em solid currentcolor","border-right-color":"transparent","border-radius":"50%",animation:"bw_spinner_border 0.75s linear infinite"},".bw_spinner_border_sm":{width:"1rem",height:"1rem","border-width":"0.2em"},".bw_spinner_border_lg":{width:"3rem",height:"3rem","border-width":"0.3em"},".bw_spinner_border_md":{},".bw_spinner_grow":{display:"inline-block",width:"2rem",height:"2rem","vertical-align":"-0.125em","border-radius":"50%",opacity:"0",animation:"bw_spinner_grow 0.75s linear infinite"},".bw_spinner_grow_sm":{width:"1rem",height:"1rem"},".bw_spinner_grow_lg":{width:"3rem",height:"3rem"},".bw_spinner_grow_md":{},"@keyframes bw_spinner_border":{"100%":{transform:"rotate(360deg)"}},"@keyframes bw_spinner_grow":{"0%":{transform:"scale(0)"},"50%":{opacity:"1",transform:"none"}},".bw_visually_hidden":{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)","white-space":"nowrap",border:"0"}},closeButton:{".bw_close":{display:"inline-flex","align-items":"center","justify-content":"center",width:"1.5rem",height:"1.5rem",padding:"0","font-size":"1.25rem","font-weight":"700","line-height":"1",background:"transparent",border:"0","border-radius":"0.25rem",cursor:"pointer"},".bw_close:hover":{opacity:"0.75"}},stacks:{".bw_vstack":{display:"flex","flex-direction":"column"},".bw_hstack":{display:"flex","flex-direction":"row","align-items":"center"},".bw_gap_0":{gap:"0"},".bw_gap_1":{gap:"0.25rem"},".bw_gap_2":{gap:"0.5rem"},".bw_gap_3":{gap:"1rem"},".bw_gap_4":{gap:"1.5rem"},".bw_gap_5":{gap:"3rem"}},offsets:{".bw_offset_1":{"margin-left":"8.333333%"},".bw_offset_2":{"margin-left":"16.666667%"},".bw_offset_3":{"margin-left":"25%"},".bw_offset_4":{"margin-left":"33.333333%"},".bw_offset_5":{"margin-left":"41.666667%"},".bw_offset_6":{"margin-left":"50%"},".bw_offset_7":{"margin-left":"58.333333%"},".bw_offset_8":{"margin-left":"66.666667%"},".bw_offset_9":{"margin-left":"75%"},".bw_offset_10":{"margin-left":"83.333333%"},".bw_offset_11":{"margin-left":"91.666667%"}},codeDemo:{".bw_code_demo":{"margin-bottom":"2rem"},".bw_code_pre":{margin:"0",border:"none","overflow-x":"auto","max-width":"100%"},".bw_code_block":{display:"block",padding:"1.25rem","font-family":'"SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace',"font-size":"0.8125rem","line-height":"1.6"},".bw_code_copy_btn":{position:"absolute",top:"0.5rem",right:"0.5rem",padding:"0.25rem 0.625rem","font-size":"0.6875rem",cursor:"pointer","font-family":"inherit"},".bw_copy_btn":{position:"absolute",top:"0.5rem",right:"0.5rem",padding:"0.25rem 0.625rem","font-size":"0.6875rem",cursor:"pointer","font-family":"inherit"}},buttonGroup:{".bw_btn_group, .bw_btn_group_vertical":{position:"relative",display:"inline-flex","vertical-align":"middle"},".bw_btn_group > .bw_btn, .bw_btn_group_vertical > .bw_btn":{position:"relative",flex:"1 1 auto","border-radius":"0","margin-left":"-1px"},".bw_btn_group > .bw_btn:first-child":{"margin-left":"0"},".bw_btn_group > .bw_btn:last-child":{},".bw_btn_group_lg > .bw_btn":{padding:"0.625rem 1.5rem","font-size":"1rem"},".bw_btn_group_sm > .bw_btn":{padding:"0.25rem 0.75rem","font-size":"0.8125rem"},".bw_btn_group_vertical":{"flex-direction":"column","align-items":"flex-start","justify-content":"center"},".bw_btn_group_vertical > .bw_btn":{width:"100%","margin-left":"0","margin-top":"-1px"},".bw_btn_group_vertical > .bw_btn:first-child":{"margin-top":"0"},".bw_btn_group_vertical > .bw_btn:last-child":{}},accordion:{".bw_accordion":{overflow:"hidden"},".bw_accordion_item":{border:"1px solid transparent"},".bw_accordion_item + .bw_accordion_item":{"border-top":"0"},".bw_accordion_header":{margin:"0"},".bw_accordion_button":{position:"relative",display:"flex","align-items":"center",width:"100%","font-size":"1rem","font-weight":"500","text-align":"left","background-color":"transparent",border:"0","overflow-anchor":"none",cursor:"pointer","font-family":"inherit"},".bw_accordion_button::after":{"flex-shrink":"0",width:"1.25rem",height:"1.25rem","margin-left":"auto",content:'""',"background-image":"url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\")","background-repeat":"no-repeat","background-size":"1.25rem"},".bw_accordion_button:not(.bw_collapsed)::after":{transform:"rotate(-180deg)"},".bw_accordion_collapse":{"max-height":"0",overflow:"hidden"},".bw_accordion_collapse.bw_collapse_show":{"max-height":"none"},".bw_accordion_item:first-child":{"border-top-left-radius":"8px","border-top-right-radius":"8px"},".bw_accordion_item:last-child":{"border-bottom-left-radius":"8px","border-bottom-right-radius":"8px"}},carousel:{".bw_carousel":{position:"relative",overflow:"hidden"},".bw_carousel_track":{display:"flex",height:"100%"},".bw_carousel_slide":{"min-width":"100%","flex-shrink":"0",overflow:"hidden",position:"relative",display:"flex","align-items":"center","justify-content":"center"},".bw_carousel_slide img":{width:"100%",height:"100%","object-fit":"cover"},".bw_carousel_caption":{position:"absolute",bottom:"0",left:"0",right:"0",padding:"0.75rem 1rem","font-size":"0.875rem"},".bw_carousel_control":{position:"absolute",top:"50%",transform:"translateY(-50%)",width:"40px",height:"40px",border:"none","border-radius":"50%",cursor:"pointer",display:"flex","align-items":"center","justify-content":"center","z-index":"2",padding:"0"},".bw_carousel_control img":{width:"20px",height:"20px","pointer-events":"none"},".bw_carousel_control_prev":{left:"10px"},".bw_carousel_control_next":{right:"10px"},".bw_carousel_indicators":{position:"absolute",bottom:"12px",left:"50%",transform:"translateX(-50%)",display:"flex",gap:"6px","z-index":"2"},".bw_carousel_indicator":{width:"10px",height:"10px","border-radius":"50%",border:"2px solid transparent",padding:"0",cursor:"pointer"},".bw_carousel_indicator:hover":{opacity:"0.8"}},modal:{".bw_modal":{display:"flex","align-items":"center","justify-content":"center",position:"fixed",top:"0",left:"0",width:"100%",height:"100%","z-index":"1050","overflow-x":"hidden","overflow-y":"auto",opacity:"0",visibility:"hidden","pointer-events":"none"},".bw_modal.bw_modal_show":{opacity:"1",visibility:"visible","pointer-events":"auto"},".bw_modal_dialog":{position:"relative",width:"calc(100% - 1rem)","max-width":"500px",margin:"1.75rem auto","pointer-events":"none"},".bw_modal.bw_modal_show .bw_modal_dialog":{transform:"translateY(0)"},".bw_modal_sm":{"max-width":"300px"},".bw_modal_lg":{"max-width":"800px"},".bw_modal_xl":{"max-width":"1140px"},".bw_modal_content":{position:"relative",display:"flex","flex-direction":"column","pointer-events":"auto","background-clip":"padding-box",border:"1px solid transparent",outline:"0"},".bw_modal_header":{display:"flex","align-items":"center","justify-content":"space-between"},".bw_modal_title":{margin:"0","font-size":"1.25rem","font-weight":"600","line-height":"1.3"},".bw_modal_body":{position:"relative",flex:"1 1 auto"},".bw_modal_footer":{display:"flex","flex-wrap":"wrap","align-items":"center","justify-content":"flex-end",gap:"0.5rem"}},toast:{".bw_toast_container":{position:"fixed","z-index":"1080","pointer-events":"none",display:"flex","flex-direction":"column",gap:"0.5rem",padding:"1rem"},".bw_toast_container.bw_toast_top_right":{top:"0",right:"0"},".bw_toast_container.bw_toast_top_left":{top:"0",left:"0"},".bw_toast_container.bw_toast_bottom_right":{bottom:"0",right:"0"},".bw_toast_container.bw_toast_bottom_left":{bottom:"0",left:"0"},".bw_toast_container.bw_toast_top_center":{top:"0",left:"50%",transform:"translateX(-50%)"},".bw_toast_container.bw_toast_bottom_center":{bottom:"0",left:"50%",transform:"translateX(-50%)"},".bw_toast":{"pointer-events":"auto",width:"350px","max-width":"calc(100vw - 2rem)","background-clip":"padding-box",opacity:"0"},".bw_toast.bw_toast_show":{opacity:"1",transform:"translateY(0)"},".bw_toast.bw_toast_hiding":{opacity:"0"},".bw_toast_header":{display:"flex","align-items":"center","justify-content":"space-between","font-size":"0.875rem"},".bw_toast_body":{"font-size":"0.9375rem"}},dropdown:{".bw_dropdown":{position:"relative",display:"inline-block"},".bw_dropdown_toggle::after":{display:"inline-block","margin-left":"0.255em","vertical-align":"0.255em",content:'""',"border-top":"0.3em solid","border-right":"0.3em solid transparent","border-bottom":"0","border-left":"0.3em solid transparent"},".bw_dropdown_menu":{position:"absolute",top:"100%",left:"0","z-index":"1000",display:"block","min-width":"10rem",padding:"0.5rem 0",margin:"0.125rem 0 0","background-clip":"padding-box",opacity:"0",visibility:"hidden","pointer-events":"none"},".bw_dropdown_menu.bw_dropdown_show":{opacity:"1",visibility:"visible","pointer-events":"auto"},".bw_dropdown_menu_end":{left:"auto",right:"0"},".bw_dropdown_item":{display:"block",width:"100%",clear:"both","font-weight":"400","text-align":"inherit","text-decoration":"none","white-space":"nowrap","background-color":"transparent",border:"0","font-size":"0.9375rem"},".bw_dropdown_item:focus-visible":{outline:"2px solid currentColor","outline-offset":"-2px"},".bw_dropdown_divider":{height:"0",margin:"0.5rem 0",overflow:"hidden",opacity:"1"}},formSwitch:{".bw_form_switch":{"padding-left":"2.5em"},".bw_form_switch .bw_switch_input":{width:"2em",height:"1.125em","margin-left":"-2.5em","border-radius":"2em",appearance:"none","background-image":"url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba(255,255,255,1)'/%3e%3c/svg%3e\")","background-position":"left center","background-repeat":"no-repeat","background-size":"contain",cursor:"pointer"},".bw_form_switch .bw_switch_input:checked":{"background-position":"right center"},".bw_form_switch .bw_switch_input:disabled":{opacity:"0.5",cursor:"not-allowed"}},skeleton:{".bw_skeleton":{"background-size":"400% 100%",animation:"bw_skeleton_shimmer 1.4s ease infinite"},".bw_skeleton_text":{height:"1em","margin-bottom":"0.5rem"},".bw_skeleton_circle":{"border-radius":"50%"},".bw_skeleton_rect":{},".bw_skeleton_group":{display:"flex","flex-direction":"column"},"@keyframes bw_skeleton_shimmer":{"0%":{"background-position":"100% 50%"},"100%":{"background-position":"0 50%"}}},avatar:{".bw_avatar":{display:"inline-flex","align-items":"center","justify-content":"center","border-radius":"50%",overflow:"hidden","font-weight":"600","text-transform":"uppercase","vertical-align":"middle","object-fit":"cover"},".bw_avatar_sm":{width:"2rem",height:"2rem","font-size":"0.75rem"},".bw_avatar_md":{width:"3rem",height:"3rem","font-size":"1rem"},".bw_avatar_lg":{width:"4rem",height:"4rem","font-size":"1.25rem"},".bw_avatar_xl":{width:"5rem",height:"5rem","font-size":"1.5rem"}},statCard:{".bw_stat_card":{"border-left":"4px solid transparent"},".bw_stat_card:hover":{transform:"translateY(-1px)"},".bw_stat_icon":{"font-size":"1.5rem","margin-bottom":"0.5rem"},".bw_stat_value":{"font-size":"2rem","font-weight":"700","line-height":"1.2"},".bw_stat_label":{"font-size":"0.875rem","margin-top":"0.25rem"},".bw_stat_change":{"font-size":"0.875rem","font-weight":"500","margin-top":"0.5rem"}},tooltip:{".bw_tooltip_wrapper":{position:"relative",display:"inline-block"},".bw_tooltip":{position:"absolute","z-index":"999","font-size":"0.875rem","white-space":"nowrap","max-width":"min(300px, calc(100vw - 1rem))","pointer-events":"none",opacity:"0",visibility:"hidden"},".bw_tooltip.bw_tooltip_show":{opacity:"1",visibility:"visible"},".bw_tooltip_top":{bottom:"100%",left:"50%",transform:"translateX(-50%) translateY(-4px)","margin-bottom":"4px"},".bw_tooltip_top.bw_tooltip_show":{transform:"translateX(-50%) translateY(0)"},".bw_tooltip_bottom":{top:"100%",left:"50%",transform:"translateX(-50%) translateY(4px)","margin-top":"4px"},".bw_tooltip_bottom.bw_tooltip_show":{transform:"translateX(-50%) translateY(0)"},".bw_tooltip_left":{right:"100%",top:"50%",transform:"translateY(-50%) translateX(-4px)","margin-right":"4px"},".bw_tooltip_left.bw_tooltip_show":{transform:"translateY(-50%) translateX(0)"},".bw_tooltip_right":{left:"100%",top:"50%",transform:"translateY(-50%) translateX(4px)","margin-left":"4px"},".bw_tooltip_right.bw_tooltip_show":{transform:"translateY(-50%) translateX(0)"}},popover:{".bw_popover_wrapper":{position:"relative",display:"inline-block"},".bw_popover_trigger":{cursor:"pointer"},".bw_popover":{position:"absolute","z-index":"1000","min-width":"200px","max-width":"min(320px, calc(100vw - 2rem))","pointer-events":"none",opacity:"0",visibility:"hidden"},".bw_popover.bw_popover_show":{opacity:"1",visibility:"visible","pointer-events":"auto"},".bw_popover_header":{"font-weight":"600","font-size":"0.9375rem"},".bw_popover_body":{"font-size":"0.875rem","line-height":"1.5"},".bw_popover_top":{bottom:"100%",left:"50%",transform:"translateX(-50%) translateY(-8px)","margin-bottom":"8px"},".bw_popover_top.bw_popover_show":{transform:"translateX(-50%) translateY(0)"},".bw_popover_bottom":{top:"100%",left:"50%",transform:"translateX(-50%) translateY(8px)","margin-top":"8px"},".bw_popover_bottom.bw_popover_show":{transform:"translateX(-50%) translateY(0)"},".bw_popover_left":{right:"100%",top:"50%",transform:"translateY(-50%) translateX(-8px)","margin-right":"8px"},".bw_popover_left.bw_popover_show":{transform:"translateY(-50%) translateX(0)"},".bw_popover_right":{left:"100%",top:"50%",transform:"translateY(-50%) translateX(8px)","margin-left":"8px"},".bw_popover_right.bw_popover_show":{transform:"translateY(-50%) translateX(0)"}},searchInput:{".bw_search_input":{position:"relative",display:"flex","align-items":"center"},".bw_search_input .bw_search_field":{"padding-right":"2.5rem"},".bw_search_clear":{position:"absolute",right:"0.5rem",display:"flex","align-items":"center","justify-content":"center",width:"1.5rem",height:"1.5rem",border:"none",background:"none","font-size":"1.25rem",cursor:"pointer",padding:"0","border-radius":"50%"}},range:{".bw_range_wrapper":{"margin-bottom":"1rem"},".bw_range_label":{display:"flex","justify-content":"space-between","align-items":"center","margin-bottom":"0.5rem","font-size":"0.875rem","font-weight":"500"},".bw_range_value":{"font-weight":"600"},".bw_range":{width:"100%",height:"0.5rem",padding:"0",appearance:"none",border:"none","border-radius":"0.25rem",cursor:"pointer",outline:"none"},".bw_range:focus":{outline:"none"},".bw_range::-webkit-slider-thumb":{appearance:"none",width:"1.25rem",height:"1.25rem","border-radius":"50%","border-width":"2px","border-style":"solid",cursor:"pointer"},".bw_range::-moz-range-thumb":{width:"1.25rem",height:"1.25rem","border-radius":"50%","border-width":"2px","border-style":"solid",cursor:"pointer"},".bw_range::-webkit-slider-thumb:hover":{transform:"scale(1.15)"},".bw_range:disabled":{opacity:"0.5",cursor:"not-allowed"}},mediaObject:{".bw_media":{display:"flex","align-items":"flex-start",gap:"1rem"},".bw_media_reverse":{"flex-direction":"row-reverse"},".bw_media_img":{"border-radius":"50%","object-fit":"cover","flex-shrink":"0"},".bw_media_body":{flex:"1","min-width":"0"},".bw_media_title":{margin:"0 0 0.25rem 0","font-size":"1rem","font-weight":"600","line-height":"1.3"}},fileUpload:{".bw_file_upload":{display:"flex","flex-direction":"column","align-items":"center","justify-content":"center",border:"2px dashed transparent",cursor:"pointer","text-align":"center",position:"relative"},".bw_file_upload_icon":{"font-size":"2rem","margin-bottom":"0.5rem"},".bw_file_upload_text":{"font-size":"0.875rem"},".bw_file_upload_input":{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)",border:"0"}},timeline:{".bw_timeline":{position:"relative","padding-left":"2rem"},".bw_timeline::before":{content:'""',position:"absolute",left:"0.5rem",top:"0",bottom:"0",width:"2px"},".bw_timeline_item":{position:"relative","padding-bottom":"1.5rem"},".bw_timeline_item:last-child":{"padding-bottom":"0"},".bw_timeline_marker":{position:"absolute",left:"-1.75rem",top:"0.25rem",width:"0.75rem",height:"0.75rem","border-radius":"50%"},".bw_timeline_content":{"padding-left":"0.5rem"},".bw_timeline_date":{"font-size":"0.75rem","margin-bottom":"0.25rem","font-weight":"500"},".bw_timeline_title":{"font-size":"1rem","font-weight":"600",margin:"0 0 0.25rem 0","line-height":"1.3"},".bw_timeline_text":{"font-size":"0.875rem",margin:"0","line-height":"1.5"}},stepper:{".bw_stepper":{display:"flex",gap:"0","counter-reset":"step"},".bw_step":{flex:"1",display:"flex","flex-direction":"column","align-items":"center","text-align":"center",position:"relative"},".bw_step + .bw_step::before":{content:'""',position:"absolute",top:"1rem",left:"-50%",right:"50%",height:"2px"},".bw_step_indicator":{width:"2rem",height:"2rem","border-radius":"50%",display:"flex","align-items":"center","justify-content":"center","font-size":"0.875rem","font-weight":"600",position:"relative","z-index":"1"},".bw_step_body":{"margin-top":"0.5rem"},".bw_step_label":{"font-size":"0.875rem","font-weight":"500"},".bw_step_description":{"font-size":"0.75rem","margin-top":"0.125rem"}},chipInput:{".bw_chip_input":{display:"flex","flex-wrap":"wrap","align-items":"center",gap:"0.375rem",padding:"0.375rem 0.5rem","min-height":"2.5rem",cursor:"text"},".bw_chip":{display:"inline-flex","align-items":"center",gap:"0.25rem",padding:"0.125rem 0.5rem","border-radius":"1rem","font-size":"0.8125rem","line-height":"1.5","white-space":"nowrap"},".bw_chip_remove":{display:"inline-flex","align-items":"center","justify-content":"center",width:"1rem",height:"1rem",border:"none",background:"none","font-size":"0.875rem",cursor:"pointer",padding:"0","border-radius":"50%"},".bw_chip_field":{flex:"1","min-width":"80px",border:"none",outline:"none","font-size":"0.875rem",padding:"0.125rem 0",background:"transparent"}},barChart:{".bw_bar_chart_container":{padding:"1rem",border:"1px solid transparent"},".bw_bar_chart":{display:"flex","align-items":"flex-end",gap:"6px",padding:"0 0.5rem"},".bw_bar_group":{flex:"1",display:"flex","flex-direction":"column","align-items":"center",height:"100%","justify-content":"flex-end"},".bw_bar":{width:"100%","border-radius":"3px 3px 0 0","min-height":"4px"},".bw_bar:hover":{opacity:"0.85"},".bw_bar_value":{"font-size":"0.65rem","font-weight":"600","margin-bottom":"2px","text-align":"center"},".bw_bar_label":{"font-size":"0.7rem","margin-top":"4px","text-align":"center"},".bw_bar_chart_title":{"font-size":"1.1rem","font-weight":"600",margin:"0 0 0.75rem 0"}},responsive:{"@media (min-width: 576px)":{".bw_col_sm_1":{flex:"0 0 8.333333%","max-width":"8.333333%"},".bw_col_sm_2":{flex:"0 0 16.666667%","max-width":"16.666667%"},".bw_col_sm_3":{flex:"0 0 25%","max-width":"25%"},".bw_col_sm_4":{flex:"0 0 33.333333%","max-width":"33.333333%"},".bw_col_sm_5":{flex:"0 0 41.666667%","max-width":"41.666667%"},".bw_col_sm_6":{flex:"0 0 50%","max-width":"50%"},".bw_col_sm_7":{flex:"0 0 58.333333%","max-width":"58.333333%"},".bw_col_sm_8":{flex:"0 0 66.666667%","max-width":"66.666667%"},".bw_col_sm_9":{flex:"0 0 75%","max-width":"75%"},".bw_col_sm_10":{flex:"0 0 83.333333%","max-width":"83.333333%"},".bw_col_sm_11":{flex:"0 0 91.666667%","max-width":"91.666667%"},".bw_col_sm_12":{flex:"0 0 100%","max-width":"100%"}},"@media (min-width: 768px)":{".bw_col_md_1":{flex:"0 0 8.333333%","max-width":"8.333333%"},".bw_col_md_2":{flex:"0 0 16.666667%","max-width":"16.666667%"},".bw_col_md_3":{flex:"0 0 25%","max-width":"25%"},".bw_col_md_4":{flex:"0 0 33.333333%","max-width":"33.333333%"},".bw_col_md_5":{flex:"0 0 41.666667%","max-width":"41.666667%"},".bw_col_md_6":{flex:"0 0 50%","max-width":"50%"},".bw_col_md_7":{flex:"0 0 58.333333%","max-width":"58.333333%"},".bw_col_md_8":{flex:"0 0 66.666667%","max-width":"66.666667%"},".bw_col_md_9":{flex:"0 0 75%","max-width":"75%"},".bw_col_md_10":{flex:"0 0 83.333333%","max-width":"83.333333%"},".bw_col_md_11":{flex:"0 0 91.666667%","max-width":"91.666667%"},".bw_col_md_12":{flex:"0 0 100%","max-width":"100%"}},"@media (min-width: 992px)":{".bw_col_lg_1":{flex:"0 0 8.333333%","max-width":"8.333333%"},".bw_col_lg_2":{flex:"0 0 16.666667%","max-width":"16.666667%"},".bw_col_lg_3":{flex:"0 0 25%","max-width":"25%"},".bw_col_lg_4":{flex:"0 0 33.333333%","max-width":"33.333333%"},".bw_col_lg_5":{flex:"0 0 41.666667%","max-width":"41.666667%"},".bw_col_lg_6":{flex:"0 0 50%","max-width":"50%"},".bw_col_lg_7":{flex:"0 0 58.333333%","max-width":"58.333333%"},".bw_col_lg_8":{flex:"0 0 66.666667%","max-width":"66.666667%"},".bw_col_lg_9":{flex:"0 0 75%","max-width":"75%"},".bw_col_lg_10":{flex:"0 0 83.333333%","max-width":"83.333333%"},".bw_col_lg_11":{flex:"0 0 91.666667%","max-width":"91.666667%"},".bw_col_lg_12":{flex:"0 0 100%","max-width":"100%"}},"@media (max-width: 575px)":{".bw_card_img_left, .bw_card-img-left":{width:"100%"},".bw_card_img_right, .bw_card-img-right":{width:"100%"},".bw_hero, .bw_hero":{padding:"2rem 1rem"},".bw_cta_actions, .bw_cta-actions":{"flex-direction":"column"},".bw_hstack, .bw_hstack":{"flex-direction":"column"},".bw_feature_grid, .bw_feature-grid":{"grid-template-columns":"1fr"},".bw_modal_dialog":{margin:"0.5rem auto"},".bw_modal_lg":{"max-width":"calc(100% - 1rem)"},".bw_modal_xl":{"max-width":"calc(100% - 1rem)"},".bw_navbar":{padding:"0.5rem 0.75rem"},".bw_navbar_brand":{"margin-right":"0.5rem","font-size":"1rem"},".bw_navbar_nav":{"flex-wrap":"wrap"},".bw_tooltip":{"white-space":"normal"},".bw_table":{display:"block","overflow-x":"auto","-webkit-overflow-scrolling":"touch"},".bw_col, .bw_col_1, .bw_col_2, .bw_col_3, .bw_col_4, .bw_col_5, .bw_col_6, .bw_col_7, .bw_col_8, .bw_col_9, .bw_col_10, .bw_col_11, .bw_col_12":{flex:"0 0 100%","max-width":"100%"},".bw_container":{"padding-right":"0.5rem","padding-left":"0.5rem"},".bw_container_fluid":{"padding-right":"0.5rem","padding-left":"0.5rem"}}}};function I(){var e={},t={0:"0",1:".25rem",2:".5rem",3:"1rem",4:"1.5rem",5:"3rem"};for(var r in t){var o=t[r];e[".bw_m_"+r]={margin:o+" !important"},e[".bw_mt_"+r]={"margin-top":o+" !important"},e[".bw_mb_"+r]={"margin-bottom":o+" !important"},e[".bw_ms_"+r]={"margin-left":o+" !important"},e[".bw_me_"+r]={"margin-right":o+" !important"},e[".bw_p_"+r]={padding:o+" !important"},e[".bw_pt_"+r+", .pt-"+r]={"padding-top":o+" !important"},e[".bw_pb_"+r+", .pb-"+r]={"padding-bottom":o+" !important"},e[".bw_ps_"+r+", .ps-"+r]={"padding-left":o+" !important"},e[".bw_pe_"+r+", .pe-"+r]={"padding-right":o+" !important"}}e[".bw_m_auto, .m-auto"]={margin:"auto !important"},e[".bw_py_3"]={"padding-top":"1rem !important","padding-bottom":"1rem !important"},e[".bw_py_4"]={"padding-top":"1.5rem !important","padding-bottom":"1.5rem !important"},e[".bw_py_5"]={"padding-top":"3rem !important","padding-bottom":"3rem !important"},e[".bw_py_6"]={"padding-top":"4rem !important","padding-bottom":"4rem !important"},e[".bw_d_none"]={display:"none"},e[".bw_d_block"]={display:"block"},e[".bw_d_inline"]={display:"inline"},e[".bw_d_inline_block"]={display:"inline-block"},e[".bw_d_flex"]={display:"flex"},e[".bw_text_left"]={"text-align":"left"},e[".bw_text_right"]={"text-align":"right"},e[".bw_text_center"]={"text-align":"center"};var n={start:"flex-start",end:"flex-end",center:"center",between:"space-between",around:"space-around"};for(var i in n)e[".bw_justify_content_"+i+", .justify-content-"+i]={"justify-content":n[i]};var a={start:"flex-start",end:"flex-end",center:"center"};for(var s in a)e[".bw_align_items_"+s+", .align-items-"+s]={"align-items":a[s]};return e[".bw_border"]={border:"1px solid transparent !important"},e[".bw_border_0"]={border:"0 !important"},e[".bw_border_top_0, .border-top-0"]={"border-top":"0 !important"},e[".bw_border_end_0, .border-end-0"]={"border-right":"0 !important"},e[".bw_border_bottom_0, .border-bottom-0"]={"border-bottom":"0 !important"},e[".bw_border_start_0, .border-start-0"]={"border-left":"0 !important"},e[".bw_rounded"]={"border-radius":".375rem !important"},e[".bw_rounded_0"]={"border-radius":"0 !important"},e[".bw_rounded_1, .rounded-1"]={"border-radius":".25rem !important"},e[".bw_rounded_2, .rounded-2"]={"border-radius":".375rem !important"},e[".bw_rounded_3, .rounded-3"]={"border-radius":".5rem !important"},e[".bw_rounded_circle"]={"border-radius":"50% !important"},e[".bw_rounded_pill, .rounded-pill"]={"border-radius":"50rem !important"},e[".bw_shadow"]={"box-shadow":"0 .5rem 1rem rgba(0,0,0,.15) !important"},e[".bw_shadow_sm"]={"box-shadow":"0 .125rem .25rem rgba(0,0,0,.075) !important"},e[".bw_shadow_lg"]={"box-shadow":"0 1rem 3rem rgba(0,0,0,.175) !important"},e[".bw_shadow_none, .shadow-none"]={"box-shadow":"none !important"},["25","50","75","100"].forEach(function(t){e[".bw_w_"+t+", .w-"+t]={width:t+"% !important"},e[".bw_h_"+t+", .h-"+t]={height:t+"% !important"}}),e[".bw_w_auto, .w-auto"]={width:"auto !important"},e[".bw_h_auto, .h-auto"]={height:"auto !important"},e[".bw_mw_100, .mw-100"]={"max-width":"100% !important"},e[".bw_mh_100, .mh-100"]={"max-height":"100% !important"},["static","relative","absolute","fixed","sticky"].forEach(function(t){e[".bw_position_"+t+", .position-"+t]={position:t+" !important"}}),e[".bw_top_0, .top-0"]={top:"0 !important"},e[".bw_top_50, .top-50"]={top:"50% !important"},e[".bw_top_100, .top-100"]={top:"100% !important"},e[".bw_bottom_0, .bottom-0"]={bottom:"0 !important"},e[".bw_bottom_50, .bottom-50"]={bottom:"50% !important"},e[".bw_bottom_100, .bottom-100"]={bottom:"100% !important"},e[".bw_start_0, .start-0"]={left:"0 !important"},e[".bw_start_50, .start-50"]={left:"50% !important"},e[".bw_start_100, .start-100"]={left:"100% !important"},e[".bw_end_0, .end-0"]={right:"0 !important"},e[".bw_end_50, .end-50"]={right:"50% !important"},e[".bw_end_100, .end-100"]={right:"100% !important"},e[".bw_translate_middle, .translate-middle"]={transform:"translate(-50%, -50%) !important"},["auto","hidden","visible","scroll"].forEach(function(t){e[".bw_overflow_"+t+", .overflow-"+t]={overflow:t+" !important"}}),e[".fs-1"]={"font-size":"calc(1.375rem + 1.5vw) !important"},e[".fs-2"]={"font-size":"calc(1.325rem + .9vw) !important"},e[".fs-3"]={"font-size":"calc(1.3rem + .6vw) !important"},e[".fs-4"]={"font-size":"calc(1.275rem + .3vw) !important"},e[".fs-5"]={"font-size":"1.25rem !important"},e[".fs-6"]={"font-size":"1rem !important"},e[".fw-light"]={"font-weight":"300 !important"},e[".fw-lighter"]={"font-weight":"lighter !important"},e[".fw-normal"]={"font-weight":"400 !important"},e[".fw-bold"]={"font-weight":"700 !important"},e[".fw-bolder"]={"font-weight":"bolder !important"},e[".fst-italic"]={"font-style":"italic !important"},e[".fst-normal"]={"font-style":"normal !important"},e[".text-decoration-none"]={"text-decoration":"none !important"},e[".text-decoration-underline"]={"text-decoration":"underline !important"},e[".text-decoration-line-through"]={"text-decoration":"line-through !important"},e[".text-lowercase"]={"text-transform":"lowercase !important"},e[".text-uppercase"]={"text-transform":"uppercase !important"},e[".text-capitalize"]={"text-transform":"capitalize !important"},e[".text-wrap"]={"white-space":"normal !important"},e[".text-nowrap"]={"white-space":"nowrap !important"},e[".list-unstyled"]={"padding-left":"0","list-style":"none"},e[".list-inline"]={"padding-left":"0","list-style":"none"},e[".list-inline-item"]={display:"inline-block"},e[".list-inline-item:not(:last-child)"]={"margin-right":".5rem"},e[".bw_visible, .visible"]={visibility:"visible !important"},e[".bw_invisible, .invisible"]={visibility:"hidden !important"},["all","auto","none"].forEach(function(t){e[".bw_user_select_"+t+", .user-select-"+t]={"user-select":t+" !important"}}),e[".pe-none"]={"pointer-events":"none !important"},e[".pe-auto"]={"pointer-events":"auto !important"},e[".opacity-0"]={opacity:"0 !important"},e[".opacity-25"]={opacity:".25 !important"},e[".opacity-50"]={opacity:".5 !important"},e[".opacity-75"]={opacity:".75 !important"},e[".opacity-100"]={opacity:"1 !important"},e}function L(){return function(){for(var e={},t=Object.keys($),r=0;r<t.length;r++)Object.assign(e,$[t[r]]);return Object.assign(e,I()),e["@media (prefers-reduced-motion: reduce)"]={"*, *::before, *::after":{"animation-duration":"0.01ms !important","animation-iteration-count":"1 !important","transition-duration":"0.01ms !important","scroll-behavior":"auto !important"}},e}()}
37
+ /**
38
+ * Bitwrench v2 Utility Functions
39
+ *
40
+ * Pure utility functions with no DOM dependencies. These work identically
41
+ * in Node.js and browsers: type detection, math, array ops, text generation,
42
+ * timing helpers.
43
+ *
44
+ * Extracted from bitwrench.js to keep the core focused on DOM/TACO/state.
45
+ *
46
+ * @module bitwrench-utils
47
+ * @license BSD-2-Clause
48
+ * @author M A Chatterjee <deftio [at] deftio [dot] com>
49
+ */
50
+ function N(e,t){if(null===e)return"null";const r=typeof e;if("object"!==r)return r;if(t)return r;const o=Object.prototype.toString.call(e),n={"[object Array]":"array","[object Date]":"Date","[object RegExp]":"RegExp","[object Error]":"Error","[object Promise]":"Promise","[object Map]":"Map","[object Set]":"Set","[object WeakMap]":"WeakMap","[object WeakSet]":"WeakSet","[object ArrayBuffer]":"ArrayBuffer","[object DataView]":"DataView","[object Int8Array]":"Int8Array","[object Uint8Array]":"Uint8Array","[object Uint8ClampedArray]":"Uint8ClampedArray","[object Int16Array]":"Int16Array","[object Uint16Array]":"Uint16Array","[object Int32Array]":"Int32Array","[object Uint32Array]":"Uint32Array","[object Float32Array]":"Float32Array","[object Float64Array]":"Float64Array"};return n[o]?n[o]:e._bw_type?e._bw_type:e.constructor&&e.constructor.name?e.constructor.name:r}function P(e,t,r,o,n,i={}){const{clip:a=!1,expScale:s=1}=i;let l=(e-t)/(r-t);1!==s&&(l=Math.pow(l,s));let c=l*(n-o)+o;if(a){const e=Math.min(o,n),t=Math.max(o,n);c=Math.max(e,Math.min(t,c))}return c}function D(e,t,r){return Math.max(t,Math.min(r,e))}function B(e){return"array"!==N(e)?[]:e.filter((e,t,r)=>r.indexOf(e)===t)}Object.assign({},$,{root:{":root":{"--bw_font_sans_serif":'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',"--bw_font_monospace":'"SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Liberation Mono", "Courier New", monospace',"--bw_body_font_family":"var(--bw_font_sans_serif)","--bw_body_font_size":"1rem","--bw_body_font_weight":"400","--bw_body_line_height":"1.5"}},reset:$.base,enhancedCards:$.cards,tableResponsive:{".bw_table_responsive":{"overflow-x":"auto","-webkit-overflow-scrolling":"touch"}},utilities:I()});function F(){return""}var R={};function U(){throw new Error("bw.make() requires the full bitwrench build (not lean)")}var H=Object.freeze({__proto__:null,BCCL:R,componentHandles:{},make:U,variantClass:F});
36
51
  /**
37
52
  * Bitwrench v2 Core
38
53
  * Zero-dependency UI library using JavaScript objects
@@ -40,5 +55,19 @@
40
55
  *
41
56
  * @license BSD-2-Clause
42
57
  * @author M A Chatterjee <deftio [at] deftio [dot] com>
43
- */const $={version:e.version,versionInfo:e,getVersion:function(){return{...e}},_idCounter:0,_unmountCallbacks:new Map,_topics:{},_subIdCounter:0,_nodeMap:{},__monkey_patch_is_nodejs__:{_value:"ignore",set:function(e){this._value="boolean"==typeof e?e:"ignore"},get:function(){return this._value}},isNodeJS:function(){return"ignore"!==$.__monkey_patch_is_nodejs__.get()?$.__monkey_patch_is_nodejs__.get():"undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node}};return $._isNode=$.isNodeJS(),Object.defineProperty($,"_isBrowser",{get:function(){return"undefined"!=typeof document&&"undefined"!=typeof window},configurable:!0}),$._fsCache=void 0,$._getFs=function(){if(void 0!==$._fsCache)return Promise.resolve($._fsCache);if(!$.isNodeJS())return $._fsCache=null,Promise.resolve(null);if("function"==typeof require)try{return $._fsCache=require("fs"),Promise.resolve($._fsCache)}catch(e){}try{return new Function("m","return import(m)")("fs").then(function(e){return $._fsCache=e.default||e,$._fsCache}).catch(function(){return $._fsCache=null,null})}catch(e){return $._fsCache=null,Promise.resolve(null)}},$.typeOf=function(e,t){if(null===e)return"null";const r=typeof e;if("object"!==r)return r;if(t)return r;const o=Object.prototype.toString.call(e),n={"[object Array]":"array","[object Date]":"Date","[object RegExp]":"RegExp","[object Error]":"Error","[object Promise]":"Promise","[object Map]":"Map","[object Set]":"Set","[object WeakMap]":"WeakMap","[object WeakSet]":"WeakSet","[object ArrayBuffer]":"ArrayBuffer","[object DataView]":"DataView","[object Int8Array]":"Int8Array","[object Uint8Array]":"Uint8Array","[object Uint8ClampedArray]":"Uint8ClampedArray","[object Int16Array]":"Int16Array","[object Uint16Array]":"Uint16Array","[object Int32Array]":"Int32Array","[object Uint32Array]":"Uint32Array","[object Float32Array]":"Float32Array","[object Float64Array]":"Float64Array"};return n[o]?n[o]:e._bw_type?e._bw_type:e.constructor&&e.constructor.name?e.constructor.name:r},$.to=$.typeOf,$.uuid=function(e){var t=e?"bw_"+e+"_":"bw_";if($._isBrowser&&crypto&&crypto.randomUUID)return t+crypto.randomUUID().replace(/-/g,"");return`${t}${Date.now().toString(36)}_${(++$._idCounter).toString(36)}_${Math.random().toString(36).substring(2,11)}`},$._el=function(e){if("string"!=typeof e)return e||null;if(!e)return null;if(!$._isBrowser)return null;var t=$._nodeMap[e];if(t){if(null!==t.parentNode)return t;delete $._nodeMap[e]}var r=document.getElementById(e);return r||"#"!==e.charAt(0)&&"."!==e.charAt(0)||(r=document.querySelector(e)),r||(r=document.querySelector('[data-bw-id="'+e+'"]')),r&&($._nodeMap[e]=r),r},$._registerNode=function(e,t){if(e){t&&($._nodeMap[t]=e);var r=e.getAttribute?e.getAttribute("id"):null;r&&($._nodeMap[r]=e)}},$._deregisterNode=function(e,t){t&&delete $._nodeMap[t];var r=e&&e.getAttribute?e.getAttribute("id"):null;r&&delete $._nodeMap[r]},$.escapeHTML=function(e){if("string"!=typeof e)return"";const t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};return e.replace(/[&<>"'/]/g,e=>t[e])},$.raw=function(e){return{__bw_raw:!0,v:String(e)}},$.normalizeClass=function(e){return"string"!=typeof e?e:e.replace(/\bbw_/g,"bw-")},$.html=function(e,t={}){if(null==e)return"";if(Array.isArray(e))return e.map(e=>$.html(e,t)).join("");if(e&&e.__bw_raw)return e.v;if("object"!=typeof e||!e.t)return t.raw?String(e):$.escapeHTML(String(e));const{t:r,a:o={},c:n,o:a={}}=e,i=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"].includes(r.toLowerCase());let s="";for(const[e,t]of Object.entries(o))if(null!=t&&!1!==t&&!e.startsWith("on"))if("style"===e&&"object"==typeof t){const e=Object.entries(t).filter(([,e])=>null!=e).map(([e,t])=>`${e}:${t}`).join(";");e&&(s+=` style="${$.escapeHTML(e)}"`)}else if("class"===e){const e=$.normalizeClass(Array.isArray(t)?t.filter(Boolean).join(" "):String(t));e&&(s+=` class="${$.escapeHTML(e)}"`)}else s+=!0===t?` ${e}`:` ${e}="${$.escapeHTML(String(t))}"`;if((a.mounted||a.unmount)&&!o.class?.includes("bw-id-")){const e=a.bw_id||$.uuid();s=s.replace(/class="([^"]*)"/,(t,r)=>`class="${r} bw-id-${e}"`.trim()),s.includes("class=")||(s+=` class="bw-id-${e}"`)}if(i)return`<${r}${s} />`;return`<${r}${s}>${null!=n?$.html(n,t):""}</${r}>`},$.createDOM=function(e,t={}){if(!$._isBrowser)throw new Error("bw.createDOM requires a DOM environment (document/window). Use bw.html() instead.");if(null==e)return document.createTextNode("");if(e&&e.__bw_raw){var r=document.createDocumentFragment(),o=document.createElement("span");for(o.innerHTML=e.v;o.firstChild;)r.appendChild(o.firstChild);return r}if("object"!=typeof e||!e.t)return document.createTextNode(String(e));const{t:n,a:a={},c:i,o:s={}}=e,l=document.createElement(n);for(const[e,t]of Object.entries(a))if(null!=t&&!1!==t)if("style"===e&&"object"==typeof t)Object.assign(l.style,t);else if("class"===e){const e=$.normalizeClass(Array.isArray(t)?t.filter(Boolean).join(" "):String(t));e&&(l.className=e)}else if(e.startsWith("on")&&"function"==typeof t){const r=e.slice(2).toLowerCase();l.addEventListener(r,t)}else"value"===e&&"input"===n?l.value=t:!0===t?l.setAttribute(e,""):l.setAttribute(e,String(t));if(null!=i)if(Array.isArray(i))i.forEach(e=>{if(null!=e){var r=$.createDOM(e,t);l.appendChild(r);var o=e&&e.a?e.a["data-bw-id"]||e.a.id:null;if(o&&(l._bw_refs||(l._bw_refs={}),l._bw_refs[o]=r),r._bw_refs)for(var n in l._bw_refs||(l._bw_refs={}),r._bw_refs)Object.prototype.hasOwnProperty.call(r._bw_refs,n)&&(l._bw_refs[n]=r._bw_refs[n])}});else if("object"==typeof i&&i.__bw_raw)l.innerHTML=i.v;else if("object"==typeof i&&i.t){var d=$.createDOM(i,t);l.appendChild(d);var c=i.a?i.a["data-bw-id"]||i.a.id:null;if(c&&(l._bw_refs||(l._bw_refs={}),l._bw_refs[c]=d),d._bw_refs)for(var b in l._bw_refs||(l._bw_refs={}),d._bw_refs)Object.prototype.hasOwnProperty.call(d._bw_refs,b)&&(l._bw_refs[b]=d._bw_refs[b])}else l.textContent=String(i);if(a.id&&$._registerNode(l,null),s.mounted||s.unmount||s.render||s.state){const e=a["data-bw-id"]||$.uuid();l.setAttribute("data-bw-id",e),$._registerNode(l,e),s.state&&(l._bw_state=s.state),s.render?(l._bw_render=s.render,s.mounted&&console.warn("bw.createDOM: o.render and o.mounted are mutually exclusive. o.render wins."),document.body.contains(l)?s.render(l,l._bw_state||{}):requestAnimationFrame(()=>{document.body.contains(l)&&s.render(l,l._bw_state||{})})):s.mounted&&(document.body.contains(l)?s.mounted(l,l._bw_state||{}):requestAnimationFrame(()=>{document.body.contains(l)&&s.mounted(l,l._bw_state||{})})),s.unmount&&$._unmountCallbacks.set(e,()=>{s.unmount(l,l._bw_state||{})})}else a["data-bw-id"]&&$._registerNode(l,a["data-bw-id"]);return l},$.DOM=function(e,t,r={}){if(!$._isBrowser)throw new Error("bw.DOM requires a DOM environment (document/window). Use bw.html() instead.");const o=$._el(e);if(!o)return console.error("bw.DOM: Target element not found:",e),null;const n=o._bw_state,a=o._bw_render,i=o.getAttribute("data-bw-id"),s=o._bw_subs;return delete o._bw_subs,$.cleanup(o),void 0!==n&&(o._bw_state=n),a&&(o._bw_render=a),i&&(o.setAttribute("data-bw-id",i),$._registerNode(o,i)),s&&(o._bw_subs=s),o.innerHTML="",null!=t&&(t.element instanceof Element?o.appendChild(t.element):Array.isArray(t)?t.forEach(e=>{null!=e&&(e.element instanceof Element?o.appendChild(e.element):o.appendChild($.createDOM(e,r)))}):o.appendChild($.createDOM(t,r))),o},$.compileProps=function(e,t={}){const r={};return Object.keys(t).forEach(t=>{Object.defineProperty(r,t,{get:()=>e._props[t],set(r){const o=e._props[t];o!==r&&(e._props[t]=r,e.onPropChange&&e.onPropChange(t,r,o))},enumerable:!0,configurable:!0})}),r},$.renderComponent=function(e,t={}){const r=$.createDOM(e,t),o={element:r,taco:e,_props:{...e.a},_state:e.o?.state||{},_children:{},get props(){return this._compiledProps||(this._compiledProps=$.compileProps(this,this._props)),this._compiledProps},$(e){return this.element.querySelectorAll(e)},$first(e){return this.element.querySelector(e)},update(e){Object.assign(this._props,e);const r={...this.taco,a:{...this.taco.a,...e}},o=$.createDOM(r,t);return this.element.replaceWith(o),this.element=o,this.taco=r,this},render(){const e=$.createDOM(this.taco,t);return this.element.replaceWith(e),this.element=e,this},onPropChange(e,t,r){this.render()},get state(){return this._state},set state(e){this._state=e,this.render()},setState(e){return Object.assign(this._state,e),this.render(),this},addChild(e,t){return this._children[e]=t,this},getChild(e){return this._children[e]},destroy(){Object.values(this._children).forEach(e=>{e&&e.destroy&&e.destroy()}),$.cleanup(this.element),this.element.remove(),this._children={},this._props={},this._state={},this._compiledProps=null}};return r._bwHandle=o,o},$.cleanup=function(e){if(!$._isBrowser||!e)return;e.querySelectorAll("[data-bw-id]").forEach(e=>{const t=e.getAttribute("data-bw-id"),r=$._unmountCallbacks.get(t);r&&(r(),$._unmountCallbacks.delete(t)),$._deregisterNode(e,t),e._bw_subs&&(e._bw_subs.forEach(function(e){e()}),delete e._bw_subs),delete e._bw_state,delete e._bw_render,delete e._bw_refs});const t=e.getAttribute("data-bw-id");if(t){const r=$._unmountCallbacks.get(t);r&&(r(),$._unmountCallbacks.delete(t)),$._deregisterNode(e,t),e._bw_subs&&(e._bw_subs.forEach(function(e){e()}),delete e._bw_subs),delete e._bw_state,delete e._bw_render,delete e._bw_refs}},$.update=function(e){var t=$._el(e);return t&&t._bw_render&&(t._bw_render(t,t._bw_state||{}),$.emit(t,"statechange",t._bw_state)),t||null},$.patch=function(e,t,r){var o=$._el(e);return o?(r?o.setAttribute(r,String(t)):Array.isArray(t)?(o.innerHTML="",t.forEach(function(e){"string"==typeof e||"number"==typeof e?o.appendChild(document.createTextNode(String(e))):e&&e.t&&o.appendChild($.createDOM(e))})):"object"==typeof t&&null!==t&&t.t?(o.innerHTML="",o.appendChild($.createDOM(t))):o.textContent=String(t),o):null},$.patchAll=function(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=$.patch(r,e[r]));return t},$.emit=function(e,t,r){var o=$._el(e);o&&o.dispatchEvent(new CustomEvent("bw:"+t,{bubbles:!0,detail:r||{}}))},$.on=function(e,t,r){var o=$._el(e);return o&&o.addEventListener("bw:"+t,function(e){r(e.detail,e)}),o||null},$.pub=function(e,t){var r=$._topics[e];if(!r||0===r.length)return 0;for(var o=r.slice(),n=0,a=0;a<o.length;a++)try{o[a].handler(t),n++}catch(t){console.warn('bw.pub: subscriber error on topic "'+e+'":',t)}return n},$.sub=function(e,t,r){var o=++$._subIdCounter;$._topics[e]||($._topics[e]=[]),$._topics[e].push({handler:t,id:o});var n=function(){var t=$._topics[e];t&&($._topics[e]=t.filter(function(e){return e.id!==o}),0===$._topics[e].length&&delete $._topics[e])};if(r&&(r._bw_subs||(r._bw_subs=[]),r._bw_subs.push(n),!r.getAttribute("data-bw-id"))){var a="bw_sub_"+o;r.setAttribute("data-bw-id",a)}return n},$.unsub=function(e,t){var r=$._topics[e];if(!r)return 0;var o=r.length;$._topics[e]=r.filter(function(e){return e.handler!==t});var n=o-$._topics[e].length;return 0===$._topics[e].length&&delete $._topics[e],n},$.css=function(e,t={}){const{minify:r=!1,pretty:o=!r}=t;if("string"==typeof e)return e;let n="";const a=o?" ":"",i=o?"\n":"",s=o?" ":"";return Array.isArray(e)?n=e.map(e=>$.css(e,t)).join(i):"object"==typeof e&&Object.entries(e).forEach(([e,r])=>{if("object"==typeof r&&!Array.isArray(r)){if("@"===e.charAt(0)){const o=$.css(r,t);return void(o&&(n+=`${e}${s}{${i}${o}${i}}${i}`))}const o=Object.entries(r).filter(([,e])=>null!=e).map(([e,t])=>{const r=e.replace(/[A-Z]/g,e=>"-"+e.toLowerCase());return`${a}${r}:${s}${t};`}).join(i);o&&(n+=`${e}${s}{${i}${o}${i}}${i}`)}}),n.trim()},$.injectCSS=function(e,t={}){if(!$._isBrowser)return console.warn("bw.injectCSS requires a DOM environment"),null;const{id:r="bw-styles",append:o=!0}=t;let n=document.getElementById(r);n||(n=document.createElement("style"),n.id=r,n.type="text/css",document.head.appendChild(n));const a="string"==typeof e?e:$.css(e,t);return o&&n.textContent?n.textContent+="\n"+a:n.textContent=a,n},$.s=function(){for(var e={},t=0;t<arguments.length;t++){var r=arguments[t];r&&"object"==typeof r&&Object.assign(e,r)}return e},$.u={flex:{display:"flex"},flexCol:{display:"flex",flexDirection:"column"},flexRow:{display:"flex",flexDirection:"row"},flexWrap:{display:"flex",flexWrap:"wrap"},block:{display:"block"},inline:{display:"inline"},hidden:{display:"none"},justifyCenter:{justifyContent:"center"},justifyBetween:{justifyContent:"space-between"},justifyEnd:{justifyContent:"flex-end"},alignCenter:{alignItems:"center"},alignStart:{alignItems:"flex-start"},alignEnd:{alignItems:"flex-end"},gap1:{gap:"0.25rem"},gap2:{gap:"0.5rem"},gap3:{gap:"0.75rem"},gap4:{gap:"1rem"},gap6:{gap:"1.5rem"},gap8:{gap:"2rem"},p0:{padding:"0"},p1:{padding:"0.25rem"},p2:{padding:"0.5rem"},p3:{padding:"0.75rem"},p4:{padding:"1rem"},p6:{padding:"1.5rem"},p8:{padding:"2rem"},px4:{paddingLeft:"1rem",paddingRight:"1rem"},py2:{paddingTop:"0.5rem",paddingBottom:"0.5rem"},py4:{paddingTop:"1rem",paddingBottom:"1rem"},m0:{margin:"0"},m4:{margin:"1rem"},mt2:{marginTop:"0.5rem"},mt4:{marginTop:"1rem"},mb2:{marginBottom:"0.5rem"},mb4:{marginBottom:"1rem"},mx_auto:{marginLeft:"auto",marginRight:"auto"},textSm:{fontSize:"0.875rem"},textBase:{fontSize:"1rem"},textLg:{fontSize:"1.125rem"},textXl:{fontSize:"1.25rem"},text2xl:{fontSize:"1.5rem"},text3xl:{fontSize:"1.875rem"},bold:{fontWeight:"700"},semibold:{fontWeight:"600"},italic:{fontStyle:"italic"},textCenter:{textAlign:"center"},textRight:{textAlign:"right"},bgWhite:{background:"#ffffff"},bgTeal:{background:"#006666",color:"#ffffff"},textWhite:{color:"#ffffff"},textTeal:{color:"#006666"},textMuted:{color:"#888"},rounded:{borderRadius:"0.375rem"},roundedLg:{borderRadius:"0.5rem"},roundedFull:{borderRadius:"9999px"},border:{border:"1px solid #d8d8d8"},wFull:{width:"100%"},hFull:{height:"100%"},transition:{transition:"all 0.2s ease"}},$.responsive=function(e,t){var r={sm:"576px",md:"768px",lg:"992px",xl:"1200px"},o=[];return Object.keys(t).forEach(function(n){var a={};"base"===n?(a[e]=t[n],o.push($.css(a))):r[n]&&(a[e]=t[n],o.push("@media (min-width: "+r[n]+") {\n"+$.css(a)+"\n}"))}),o.join("\n")},$.mapScale=function(e,t,r,o,n,a={}){const{clip:i=!1,expScale:s=1}=a;let l=(e-t)/(r-t);1!==s&&(l=Math.pow(l,s));let d=l*(n-o)+o;if(i){const e=Math.min(o,n),t=Math.max(o,n);d=Math.max(e,Math.min(t,d))}return d},$.clip=function(e,t,r){return Math.max(t,Math.min(r,e))},$._isBrowser&&($.$=function(e){return e?Array.isArray(e)?e:e.nodeType?[e]:void 0!==e.length&&"string"!=typeof e?Array.from(e):"string"==typeof e?Array.from(document.querySelectorAll(e)):[]:[]},$.$.one=function(e){return $.$(e)[0]||null}),$.loadDefaultStyles=function(e={}){const{minify:t=!0,palette:r}=e;if($._isBrowser){var o=$.css(function(){var e={"*":{"box-sizing":"border-box",margin:"0",padding:"0"},html:{"font-size":"16px","line-height":"1.5","-webkit-text-size-adjust":"100%","-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale"},body:{"font-family":'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',"font-size":"1rem","font-weight":"400","line-height":"1.6",margin:"0",padding:"0","-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale"},".bw-page":{"min-height":"100vh",display:"flex","flex-direction":"column"},".bw-page-content":{flex:"1",padding:"2rem 0"},main:{display:"block"},hr:{"box-sizing":"content-box",height:"0",overflow:"visible",margin:"1rem 0",border:"0"},"hr:not([size])":{height:"1px"},"h1, h2, h3, h4, h5, h6":{"margin-top":"0","margin-bottom":".5rem","font-weight":"600","line-height":"1.25","letter-spacing":"-0.01em"},h1:{"font-size":"calc(1.375rem + 1.5vw)"},h2:{"font-size":"calc(1.325rem + .9vw)"},h3:{"font-size":"calc(1.3rem + .6vw)"},h4:{"font-size":"calc(1.275rem + .3vw)"},h5:{"font-size":"1.25rem"},h6:{"font-size":"1rem"},p:{"margin-top":"0","margin-bottom":"1rem"},small:{"font-size":"0.875rem"},a:{"text-decoration":"none",transition:"color 0.15s"}};Object.assign(e,S),e[".bw-btn"]={display:"inline-flex","align-items":"center","justify-content":"center","font-weight":"500","line-height":"1.5","text-align":"center","text-decoration":"none","vertical-align":"middle",cursor:"pointer","user-select":"none",border:"1px solid transparent",padding:"0.5rem 1.125rem","font-size":"0.875rem","font-family":"inherit","border-radius":"6px",transition:"all 0.15s ease-out",gap:"0.5rem"},e[".bw-btn:hover"]={"text-decoration":"none",transform:"translateY(-1px)"},e[".bw-btn:active"]={transform:"translateY(0)"},e[".bw-btn:focus-visible"]={outline:"2px solid currentColor","outline-offset":"2px"},e[".bw-btn:disabled"]={opacity:"0.5",cursor:"not-allowed","pointer-events":"none"},e[".bw-btn-lg"]={padding:"0.625rem 1.5rem","font-size":"1rem","border-radius":"8px"},e[".bw-btn-sm"]={padding:"0.25rem 0.75rem","font-size":"0.8125rem","border-radius":"5px"},e[".bw-card"]={position:"relative",display:"flex","flex-direction":"column","min-width":"0",height:"100%","word-wrap":"break-word","background-clip":"border-box",border:"1px solid transparent","border-radius":"8px",transition:"box-shadow 0.2s ease-out, transform 0.2s ease-out","margin-bottom":"1.5rem",overflow:"hidden"},e[".bw-card-body"]={flex:"1 1 auto",padding:"1.25rem 1.5rem"},e[".bw-card-body > *:last-child"]={"margin-bottom":"0"},e[".bw-card-title"]={"margin-bottom":"0.5rem","font-size":"1.125rem","font-weight":"600","line-height":"1.3"},e[".bw-card-text"]={"margin-bottom":"0","font-size":"0.9375rem","line-height":"1.6"},e[".bw-card-header"]={padding:"0.875rem 1.5rem","margin-bottom":"0","font-weight":"600","font-size":"0.875rem"},e[".bw-card-footer"]={padding:"0.75rem 1.5rem","font-size":"0.875rem"},e[".bw-card-hoverable"]={transition:"all 0.3s ease-out"},e[".bw-card-img-top"]={width:"100%","border-top-left-radius":"7px","border-top-right-radius":"7px"},e[".bw-card-img-bottom"]={width:"100%","border-bottom-left-radius":"7px","border-bottom-right-radius":"7px"},e[".bw-card-img-left"]={width:"40%","object-fit":"cover"},e[".bw-card-img-right"]={width:"40%","object-fit":"cover"},e[".bw-card-subtitle"]={"margin-top":"-0.25rem","margin-bottom":"0.5rem","font-size":"0.875rem"},e[".bw-form-control"]={display:"block",width:"100%",padding:"0.5rem 0.875rem","font-size":"0.9375rem","font-weight":"400","line-height":"1.5","background-clip":"padding-box",appearance:"none",border:"1px solid transparent","border-radius":"6px",transition:"border-color 0.15s ease-out, box-shadow 0.15s ease-out","font-family":"inherit"},e[".bw-form-control:focus"]={outline:"2px solid currentColor","outline-offset":"-1px"},e[".bw-form-control::placeholder"]={opacity:"1"},e[".bw-form-label"]={display:"block","margin-bottom":"0.375rem","font-size":"0.875rem","font-weight":"600"},e[".bw-form-group"]={"margin-bottom":"1.25rem"},e[".bw-form-text"]={"margin-top":"0.25rem","font-size":"0.8125rem"},e["select.bw-form-control"]={"padding-right":"2.25rem","background-repeat":"no-repeat","background-position":"right 0.75rem center","background-size":"16px 12px"},e["textarea.bw-form-control"]={"min-height":"5rem",resize:"vertical"},e[".bw-valid-feedback"]={display:"block","font-size":"0.875rem","margin-top":"0.25rem"},e[".bw-invalid-feedback"]={display:"block","font-size":"0.875rem","margin-top":"0.25rem"},Object.assign(e,{".bw-form-check":{display:"flex","align-items":"center",gap:"0.5rem","min-height":"1.5rem","margin-bottom":"0.25rem"},".bw-form-check-input":{width:"1rem",height:"1rem",margin:"0",cursor:"pointer","flex-shrink":"0","border-radius":"0.25rem",appearance:"auto"},".bw-form-check-input:disabled":{opacity:"0.5",cursor:"not-allowed"},".bw-form-check-label":{cursor:"pointer","user-select":"none","font-size":"0.9375rem"}}),e[".bw-navbar"]={position:"relative",display:"flex","flex-wrap":"wrap","align-items":"center","justify-content":"space-between",padding:"0.5rem 1.5rem"},e[".bw-navbar > .bw-container, .bw-navbar > .container"]={display:"flex","flex-wrap":"wrap","align-items":"center","justify-content":"space-between"},e[".bw-navbar-brand"]={display:"inline-flex","align-items":"center",gap:"0.5rem","padding-top":"0.25rem","padding-bottom":"0.25rem","margin-right":"1.5rem","font-size":"1.125rem","font-weight":"600","line-height":"inherit","white-space":"nowrap","text-decoration":"none"},e[".bw-navbar-nav"]={display:"flex","flex-direction":"row","padding-left":"0","margin-bottom":"0","list-style":"none",gap:"0.25rem"},e[".bw-navbar-nav .bw-nav-link"]={display:"block",padding:"0.5rem 0.875rem","text-decoration":"none","font-size":"0.875rem","font-weight":"500","border-radius":"6px",transition:"color 0.15s, background-color 0.15s"},e[".bw-table"]={width:"100%","margin-bottom":"1.5rem","vertical-align":"top","border-collapse":"collapse","font-size":"0.9375rem","line-height":"1.5"},e[".bw-table > :not(caption) > * > *"]={padding:"0.75rem 1rem"},e[".bw-table > tbody"]={"vertical-align":"inherit"},e[".bw-table > thead"]={"vertical-align":"bottom"},e[".bw-table > thead > tr > *"]={padding:"0.625rem 1rem","font-size":"0.8125rem","font-weight":"600","text-transform":"uppercase","letter-spacing":"0.04em"},e[".bw-table caption"]={padding:"0.5rem 1rem","font-size":"0.875rem","caption-side":"bottom"},e[".bw-table-responsive"]={"overflow-x":"auto","-webkit-overflow-scrolling":"touch"},e[".bw-alert"]={position:"relative",padding:"0.875rem 1.25rem","margin-bottom":"1rem",border:"1px solid transparent","border-radius":"8px","font-size":"0.9375rem","line-height":"1.6"},e[".bw-alert-heading, .alert-heading"]={color:"inherit"},e[".bw-alert-link, .alert-link"]={"font-weight":"700"},e[".bw-alert-dismissible"]={"padding-right":"3rem"},e[".bw-alert-dismissible .btn-close"]={position:"absolute",top:"0",right:"0","z-index":"2",padding:"1.25rem 1rem"},e[".bw-badge"]={display:"inline-block",padding:"0.375rem 0.625rem","font-size":"0.875rem","font-weight":"600","line-height":"1.3","text-align":"center","white-space":"nowrap","vertical-align":"baseline","border-radius":".375rem"},e[".bw-badge:empty"]={display:"none"},e[".bw-badge-sm"]={"font-size":"0.75rem",padding:"0.25rem 0.5rem"},e[".bw-badge-lg"]={"font-size":"1rem",padding:"0.5rem 0.875rem"},e[".bw-badge-pill"]={"border-radius":"50rem"},e[".bw-progress"]={display:"flex",height:"1.25rem",overflow:"hidden","font-size":".875rem","border-radius":".5rem"},e[".bw-progress-bar"]={display:"flex","flex-direction":"column","justify-content":"center",overflow:"hidden","text-align":"center","white-space":"nowrap",transition:"width 0.3s ease-out","font-weight":"600"},e[".bw-progress-bar-striped"]={"background-image":"linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)","background-size":"1rem 1rem"},e[".bw-progress-bar-animated"]={animation:"progress-bar-stripes 1s linear infinite"},e["@keyframes progress-bar-stripes"]={"0%":{"background-position-x":"1rem"}},e[".bw-nav"]={display:"flex","flex-wrap":"wrap","padding-left":"0","margin-bottom":"0","list-style":"none",gap:"0"},e[".bw-nav-item"]={display:"block"},e[".bw-nav-tabs .bw-nav-item"]={"margin-bottom":"-2px"},e[".bw-nav-link"]={display:"block",padding:"0.625rem 1rem","font-size":"0.875rem","font-weight":"500","text-decoration":"none",cursor:"pointer",border:"none",background:"transparent",transition:"color 0.15s ease-out, background-color 0.15s ease-out, border-color 0.15s ease-out","font-family":"inherit"},e[".bw-nav-tabs .bw-nav-link"]={border:"none","border-bottom":"2px solid transparent","border-radius":"0","background-color":"transparent"},e[".bw-nav-pills .bw-nav-link"]={"border-radius":"6px"},e[".bw-nav-vertical"]={"flex-direction":"column"},e[".bw-tab-content"]={padding:"1.25rem 0"},e[".bw-tab-pane"]={display:"none"},e[".bw-tab-pane.active"]={display:"block"},e[".bw-nav-scrollable"]={"flex-wrap":"nowrap","overflow-x":"auto","-webkit-overflow-scrolling":"touch","scrollbar-width":"none"},e[".bw-nav-scrollable .bw-nav-link"]={"white-space":"nowrap"},e[".bw-list-group"]={display:"flex","flex-direction":"column","padding-left":"0","margin-bottom":"0","border-radius":"0.375rem"},e[".bw-list-group-item"]={position:"relative",display:"block",padding:"0.75rem 1.25rem","text-decoration":"none","font-size":"0.9375rem"},e[".bw-list-group-item:first-child"]={"border-top-left-radius":"inherit","border-top-right-radius":"inherit"},e[".bw-list-group-item:last-child"]={"border-bottom-right-radius":"inherit","border-bottom-left-radius":"inherit"},e[".bw-list-group-item + .bw-list-group-item"]={"border-top-width":"0"},e[".bw-list-group-item.disabled"]={"pointer-events":"none"},e["a.bw-list-group-item"]={cursor:"pointer",transition:"background-color 0.15s ease-out, color 0.15s ease-out"},e["a.bw-list-group-item:focus-visible, .bw-list-group-item:focus-visible"]={"z-index":"2",outline:"2px solid currentColor","outline-offset":"-2px"},e[".bw-list-group-flush"]={"border-radius":"0"},e[".bw-list-group-flush > .bw-list-group-item"]={"border-width":"0 0 1px","border-radius":"0"},e[".bw-list-group-flush > .bw-list-group-item:last-child"]={"border-bottom-width":"0"},e[".bw-pagination"]={display:"flex","padding-left":"0","list-style":"none","margin-bottom":"0"},e[".bw-page-item"]={display:"list-item","list-style":"none"},e[".bw-page-link"]={position:"relative",display:"block",padding:"0.375rem 0.75rem","margin-left":"-1px","line-height":"1.25","text-decoration":"none",transition:"color 0.15s ease-out, background-color 0.15s ease-out, border-color 0.15s ease-out"},e[".bw-page-item:first-child .bw-page-link"]={"margin-left":"0","border-top-left-radius":"0.375rem","border-bottom-left-radius":"0.375rem"},e[".bw-page-item:last-child .bw-page-link"]={"border-top-right-radius":"0.375rem","border-bottom-right-radius":"0.375rem"},e[".bw-page-link:focus-visible"]={"z-index":"3",outline:"2px solid currentColor","outline-offset":"-2px"},e[".bw-breadcrumb"]={display:"flex","flex-wrap":"wrap",padding:"0 0","margin-bottom":"1rem","list-style":"none"},e[".bw-breadcrumb-item"]={display:"flex"},e[".bw-breadcrumb-item + .bw-breadcrumb-item"]={"padding-left":"0.5rem"},e[".bw-breadcrumb-item + .bw-breadcrumb-item::before"]={float:"left","padding-right":"0.5rem",content:'"/"'},e[".bw-breadcrumb-item a"]={"text-decoration":"none",transition:"color 0.15s ease-out"},e[".bw-breadcrumb-item.active"]={"font-weight":"500"},e[".bw-hero"]={position:"relative",overflow:"hidden"},e[".bw-hero-overlay"]={position:"absolute",top:"0",left:"0",right:"0",bottom:"0","z-index":"1"},e[".bw-hero-content"]={position:"relative","z-index":"2"},e[".bw-hero-title"]={"font-weight":"300","letter-spacing":"-0.05rem",color:"inherit"},e[".bw-hero-subtitle"]={color:"inherit"},e[".bw-hero-actions"]={display:"flex",gap:"1rem","justify-content":"center","flex-wrap":"wrap"},e[".bw-display-4"]={"font-size":"calc(1.475rem + 2.7vw)","font-weight":"300","line-height":"1.2"},e[".bw-lead"]={"font-size":"1.25rem","font-weight":"300"},e[".bw-feature"]={padding:"1rem"},e[".bw-feature-icon"]={display:"inline-block","margin-bottom":"1rem"},e[".bw-feature-title"]={"margin-bottom":"0.5rem"},e[".bw-feature-grid"]={width:"100%"},e[".bw-g-4"]={"--bw-gutter-x":"1.5rem","--bw-gutter-y":"1.5rem"},e[".bw-section"]={position:"relative"},e[".bw-section-header"]={"margin-bottom":"3rem"},e[".bw-section-title"]={"margin-bottom":"1rem","font-weight":"300","font-size":"calc(1.325rem + .9vw)"},e[".bw-cta"]={position:"relative"},e[".bw-cta-content"]={"max-width":"48rem",margin:"0 auto"},e[".bw-cta-title"]={"font-weight":"300"},e[".bw-cta-actions"]={display:"flex",gap:"1rem","justify-content":"center","flex-wrap":"wrap"},e[".bw-spinner-border"]={display:"inline-block",width:"2rem",height:"2rem","vertical-align":"-0.125em",border:"0.25em solid currentcolor","border-right-color":"transparent","border-radius":"50%",animation:"bw-spinner-border 0.75s linear infinite"},e[".bw-spinner-border-sm"]={width:"1rem",height:"1rem","border-width":"0.2em"},e[".bw-spinner-border-lg"]={width:"3rem",height:"3rem","border-width":"0.3em"},e[".bw-spinner-grow"]={display:"inline-block",width:"2rem",height:"2rem","vertical-align":"-0.125em","border-radius":"50%",opacity:"0",animation:"bw-spinner-grow 0.75s linear infinite"},e[".bw-spinner-grow-sm"]={width:"1rem",height:"1rem"},e[".bw-spinner-grow-lg"]={width:"3rem",height:"3rem"},e["@keyframes bw-spinner-border"]={"100%":{transform:"rotate(360deg)"}},e["@keyframes bw-spinner-grow"]={"0%":{transform:"scale(0)"},"50%":{opacity:"1",transform:"none"}},e[".bw-visually-hidden"]={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)","white-space":"nowrap",border:"0"},e[".bw-close"]={display:"inline-flex","align-items":"center","justify-content":"center",width:"1.5rem",height:"1.5rem",padding:"0","font-size":"1.25rem","font-weight":"700","line-height":"1",background:"transparent",border:"0","border-radius":"0.25rem",cursor:"pointer"},e[".bw-vstack"]={display:"flex","flex-direction":"column"},e[".bw-hstack"]={display:"flex","flex-direction":"row","align-items":"center"},e[".bw-gap-0"]={gap:"0"},e[".bw-gap-1"]={gap:"0.25rem"},e[".bw-gap-2"]={gap:"0.5rem"},e[".bw-gap-3"]={gap:"1rem"},e[".bw-gap-4"]={gap:"1.5rem"},e[".bw-gap-5"]={gap:"3rem"};for(var t=1;t<=11;t++)e[".bw-offset-"+t]={"margin-left":(t/12*100).toFixed(6).replace(/\.?0+$/,"")+"%"};e[".bw-code-demo"]={"margin-bottom":"2rem"},e[".bw-code-pre"]={margin:"0",border:"none","border-radius":"6px","overflow-x":"auto"},e[".bw-code-block"]={display:"block",padding:"1.25rem","font-family":'"SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace',"font-size":"0.8125rem","line-height":"1.6"},e[".bw-code-copy-btn"]={position:"absolute",top:"0.5rem",right:"0.5rem",padding:"0.25rem 0.625rem","font-size":"0.6875rem","border-radius":"4px",cursor:"pointer","font-family":"inherit",transition:"all 0.15s"},e[".bw-btn-group, .bw-btn-group-vertical"]={position:"relative",display:"inline-flex","vertical-align":"middle"},e[".bw-btn-group > .bw-btn, .bw-btn-group-vertical > .bw-btn"]={position:"relative",flex:"1 1 auto","border-radius":"0","margin-left":"-1px"},e[".bw-btn-group > .bw-btn:first-child"]={"margin-left":"0","border-top-left-radius":"6px","border-bottom-left-radius":"6px"},e[".bw-btn-group > .bw-btn:last-child"]={"border-top-right-radius":"6px","border-bottom-right-radius":"6px"},e[".bw-btn-group-vertical"]={"flex-direction":"column","align-items":"flex-start","justify-content":"center"},e[".bw-btn-group-vertical > .bw-btn"]={width:"100%","margin-left":"0","margin-top":"-1px"},e[".bw-btn-group-vertical > .bw-btn:first-child"]={"margin-top":"0","border-top-left-radius":"6px","border-top-right-radius":"6px","border-bottom-left-radius":"0","border-bottom-right-radius":"0"},e[".bw-btn-group-vertical > .bw-btn:last-child"]={"border-top-left-radius":"0","border-top-right-radius":"0","border-bottom-left-radius":"6px","border-bottom-right-radius":"6px"},e[".bw-accordion"]={"border-radius":"8px",overflow:"hidden"},e[".bw-accordion-item"]={border:"1px solid transparent"},e[".bw-accordion-item + .bw-accordion-item"]={"border-top":"0"},e[".bw-accordion-header"]={margin:"0"},e[".bw-accordion-button"]={position:"relative",display:"flex","align-items":"center",width:"100%",padding:"1rem 1.25rem","font-size":"1rem","font-weight":"500","text-align":"left","background-color":"transparent",border:"0","overflow-anchor":"none",cursor:"pointer","font-family":"inherit",transition:"color 0.15s ease-out, background-color 0.15s ease-out"},e[".bw-accordion-button::after"]={"flex-shrink":"0",width:"1.25rem",height:"1.25rem","margin-left":"auto",content:'""',"background-repeat":"no-repeat","background-size":"1.25rem",transition:"transform 0.2s ease-out"},e[".bw-accordion-button:not(.bw-collapsed)::after"]={transform:"rotate(-180deg)"},e[".bw-accordion-collapse"]={"max-height":"0",overflow:"hidden",transition:"max-height 0.3s ease"},e[".bw-accordion-collapse.bw-collapse-show"]={"max-height":"none"},e[".bw-accordion-body"]={padding:"1rem 1.25rem"},e[".bw-modal"]={display:"flex","align-items":"center","justify-content":"center",position:"fixed",top:"0",left:"0",width:"100%",height:"100%","z-index":"1050","overflow-x":"hidden","overflow-y":"auto",opacity:"0",visibility:"hidden","pointer-events":"none",transition:"opacity 0.2s ease, visibility 0.2s ease"},e[".bw-modal.bw-modal-show"]={opacity:"1",visibility:"visible","pointer-events":"auto"},e[".bw-modal-dialog"]={position:"relative",width:"100%","max-width":"500px",margin:"1.75rem auto","pointer-events":"none",transform:"translateY(-20px)",transition:"transform 0.2s ease-out"},e[".bw-modal.bw-modal-show .bw-modal-dialog"]={transform:"translateY(0)"},e[".bw-modal-sm"]={"max-width":"300px"},e[".bw-modal-lg"]={"max-width":"800px"},e[".bw-modal-xl"]={"max-width":"1140px"},e[".bw-modal-content"]={position:"relative",display:"flex","flex-direction":"column","pointer-events":"auto","background-clip":"padding-box",border:"1px solid transparent","border-radius":"8px",outline:"0"},e[".bw-modal-header"]={display:"flex","align-items":"center","justify-content":"space-between",padding:"1rem 1.5rem"},e[".bw-modal-title"]={margin:"0","font-size":"1.25rem","font-weight":"600","line-height":"1.3"},e[".bw-modal-body"]={position:"relative",flex:"1 1 auto",padding:"1.5rem"},e[".bw-modal-footer"]={display:"flex","flex-wrap":"wrap","align-items":"center","justify-content":"flex-end",padding:"0.75rem 1.5rem",gap:"0.5rem"},e[".bw-carousel"]={position:"relative",overflow:"hidden","border-radius":"8px"},e[".bw-carousel-track"]={display:"flex",transition:"transform 0.3s ease-out",height:"100%"},e[".bw-carousel-slide"]={"min-width":"100%","flex-shrink":"0",overflow:"hidden",position:"relative",display:"flex","align-items":"center","justify-content":"center"},e[".bw-carousel-slide img"]={width:"100%",height:"100%","object-fit":"cover"},e[".bw-carousel-caption"]={position:"absolute",bottom:"0",left:"0",right:"0",padding:"0.75rem 1rem"},e[".bw-carousel-control"]={position:"absolute",top:"50%",transform:"translateY(-50%)",width:"40px",height:"40px",border:"none","border-radius":"50%",cursor:"pointer",display:"flex","align-items":"center","justify-content":"center","z-index":"2",padding:"0",transition:"background-color 0.2s ease"},e[".bw-carousel-control img"]={width:"20px",height:"20px","pointer-events":"none"},e[".bw-carousel-control-prev"]={left:"10px"},e[".bw-carousel-control-next"]={right:"10px"},e[".bw-carousel-indicators"]={position:"absolute",bottom:"12px",left:"50%",transform:"translateX(-50%)",display:"flex",gap:"6px","z-index":"2"},e[".bw-carousel-indicator"]={width:"10px",height:"10px","border-radius":"50%",border:"2px solid transparent",padding:"0",cursor:"pointer",transition:"opacity 0.2s ease, background-color 0.2s ease"},e[".bw-toast-container"]={position:"fixed","z-index":"1080","pointer-events":"none",display:"flex","flex-direction":"column",gap:"0.5rem",padding:"1rem"},e[".bw-toast"]={"pointer-events":"auto",width:"350px","max-width":"100%","background-clip":"padding-box","border-radius":"8px",opacity:"0",transform:"translateY(-10px)",transition:"opacity 0.3s ease, transform 0.3s ease"},e[".bw-toast.bw-toast-show"]={opacity:"1",transform:"translateY(0)"},e[".bw-toast.bw-toast-hiding"]={opacity:"0",transform:"translateY(-10px)"},e[".bw-toast-header"]={display:"flex","align-items":"center","justify-content":"space-between",padding:"0.5rem 0.75rem","font-size":"0.875rem"},e[".bw-toast-body"]={padding:"0.75rem","font-size":"0.9375rem"},e[".bw-dropdown"]={position:"relative",display:"inline-block"},e[".bw-dropdown-toggle::after"]={display:"inline-block","margin-left":"0.255em","vertical-align":"0.255em",content:'""',"border-top":"0.3em solid","border-right":"0.3em solid transparent","border-bottom":"0","border-left":"0.3em solid transparent"},e[".bw-dropdown-menu"]={position:"absolute",top:"100%",left:"0","z-index":"1000",display:"block","min-width":"10rem",padding:"0.5rem 0",margin:"0.125rem 0 0","background-clip":"padding-box","border-radius":"6px",opacity:"0",visibility:"hidden",transform:"translateY(-4px)","pointer-events":"none",transition:"opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease"},e[".bw-dropdown-menu.bw-dropdown-show"]={opacity:"1",visibility:"visible",transform:"translateY(0)","pointer-events":"auto"},e[".bw-dropdown-menu-end"]={left:"auto",right:"0"},e[".bw-dropdown-item"]={display:"block",width:"100%",padding:"0.375rem 1rem",clear:"both","font-weight":"400","text-align":"inherit","text-decoration":"none","white-space":"nowrap","background-color":"transparent",border:"0","font-size":"0.9375rem",transition:"background-color 0.15s, color 0.15s"},e[".bw-dropdown-item:focus-visible"]={outline:"2px solid currentColor","outline-offset":"-2px"},e[".bw-dropdown-divider"]={height:"0",margin:"0.5rem 0",overflow:"hidden",opacity:"1"},e[".bw-form-switch"]={"padding-left":"2.5em"},e[".bw-form-switch .bw-switch-input"]={width:"2em",height:"1.125em","margin-left":"-2.5em","border-radius":"2em",appearance:"none","background-position":"left center","background-repeat":"no-repeat","background-size":"contain",transition:"background-position 0.15s ease-out, background-color 0.15s ease-out",cursor:"pointer"},e[".bw-form-switch .bw-switch-input:checked"]={"background-position":"right center"},e[".bw-form-switch .bw-switch-input:disabled"]={opacity:"0.5",cursor:"not-allowed"},e[".bw-skeleton"]={"border-radius":"4px","background-size":"400% 100%",animation:"bw-skeleton-shimmer 1.4s ease infinite"},e[".bw-skeleton-text"]={height:"1em","margin-bottom":"0.5rem"},e[".bw-skeleton-circle"]={"border-radius":"50%"},e[".bw-skeleton-rect"]={"border-radius":"8px"},e[".bw-skeleton-group"]={display:"flex","flex-direction":"column"},e["@keyframes bw-skeleton-shimmer"]={"0%":{"background-position":"100% 50%"},"100%":{"background-position":"0 50%"}},e[".bw-avatar"]={display:"inline-flex","align-items":"center","justify-content":"center","border-radius":"50%",overflow:"hidden","font-weight":"600","text-transform":"uppercase","vertical-align":"middle","object-fit":"cover"},e[".bw-avatar-sm"]={width:"2rem",height:"2rem","font-size":"0.75rem"},e[".bw-avatar-md"]={width:"3rem",height:"3rem","font-size":"1rem"},e[".bw-avatar-lg"]={width:"4rem",height:"4rem","font-size":"1.25rem"},e[".bw-avatar-xl"]={width:"5rem",height:"5rem","font-size":"1.5rem"},e[".bw-stat-card"]={"border-radius":"8px",padding:"1.25rem","border-left":"4px solid transparent",transition:"box-shadow 0.15s ease-out, transform 0.15s ease-out"},e[".bw-stat-card:hover"]={transform:"translateY(-1px)"},e[".bw-stat-icon"]={"font-size":"1.5rem","margin-bottom":"0.5rem"},e[".bw-stat-value"]={"font-size":"2rem","font-weight":"700","line-height":"1.2"},e[".bw-stat-label"]={"font-size":"0.875rem","margin-top":"0.25rem"},e[".bw-stat-change"]={"font-size":"0.875rem","font-weight":"500","margin-top":"0.5rem"},e[".bw-tooltip-wrapper"]={position:"relative",display:"inline-block"},e[".bw-tooltip"]={position:"absolute","z-index":"999",padding:"0.375rem 0.75rem","border-radius":"4px","font-size":"0.875rem","white-space":"nowrap","pointer-events":"none",opacity:"0",visibility:"hidden",transition:"opacity 0.15s ease, visibility 0.15s ease, transform 0.15s ease"},e[".bw-tooltip.bw-tooltip-show"]={opacity:"1",visibility:"visible"},e[".bw-tooltip-top"]={bottom:"100%",left:"50%",transform:"translateX(-50%) translateY(-4px)","margin-bottom":"4px"},e[".bw-tooltip-top.bw-tooltip-show"]={transform:"translateX(-50%) translateY(0)"},e[".bw-tooltip-bottom"]={top:"100%",left:"50%",transform:"translateX(-50%) translateY(4px)","margin-top":"4px"},e[".bw-tooltip-bottom.bw-tooltip-show"]={transform:"translateX(-50%) translateY(0)"},e[".bw-tooltip-left"]={right:"100%",top:"50%",transform:"translateY(-50%) translateX(-4px)","margin-right":"4px"},e[".bw-tooltip-left.bw-tooltip-show"]={transform:"translateY(-50%) translateX(0)"},e[".bw-tooltip-right"]={left:"100%",top:"50%",transform:"translateY(-50%) translateX(4px)","margin-left":"4px"},e[".bw-tooltip-right.bw-tooltip-show"]={transform:"translateY(-50%) translateX(0)"},e[".bw-search-input"]={position:"relative",display:"flex","align-items":"center"},e[".bw-search-input .bw-search-field"]={"padding-right":"2.5rem"},e[".bw-search-clear"]={position:"absolute",right:"0.5rem",display:"flex","align-items":"center","justify-content":"center",width:"1.5rem",height:"1.5rem",border:"none",background:"none","font-size":"1.25rem",cursor:"pointer",padding:"0","border-radius":"50%",transition:"color 0.15s ease-out"},e[".bw-range-wrapper"]={"margin-bottom":"1rem"},e[".bw-range-label"]={display:"flex","justify-content":"space-between","align-items":"center","margin-bottom":"0.5rem","font-size":"0.875rem","font-weight":"500"},e[".bw-range-value"]={"font-weight":"600"},e[".bw-range"]={width:"100%",height:"0.5rem",padding:"0",appearance:"none",border:"none","border-radius":"0.25rem",cursor:"pointer",outline:"none"},e[".bw-range:disabled"]={opacity:"0.5",cursor:"not-allowed"},e[".bw-media"]={display:"flex","align-items":"flex-start",gap:"1rem"},e[".bw-media-reverse"]={"flex-direction":"row-reverse"},e[".bw-media-img"]={"border-radius":"50%","object-fit":"cover","flex-shrink":"0"},e[".bw-media-body"]={flex:"1","min-width":"0"},e[".bw-media-title"]={margin:"0 0 0.25rem 0","font-size":"1rem","font-weight":"600","line-height":"1.3"},e[".bw-file-upload"]={display:"flex","flex-direction":"column","align-items":"center","justify-content":"center",padding:"2rem",border:"2px dashed transparent","border-radius":"8px",cursor:"pointer","text-align":"center",position:"relative",transition:"border-color 0.15s ease-out, background-color 0.15s ease-out"},e[".bw-file-upload-icon"]={"font-size":"2rem","margin-bottom":"0.5rem"},e[".bw-file-upload-text"]={"font-size":"0.875rem"},e[".bw-file-upload-input"]={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)",border:"0"},e[".bw-timeline"]={position:"relative","padding-left":"2rem"},e[".bw-timeline-item"]={position:"relative","padding-bottom":"1.5rem"},e[".bw-timeline-item:last-child"]={"padding-bottom":"0"},e[".bw-timeline-marker"]={position:"absolute",left:"-1.75rem",top:"0.25rem",width:"0.75rem",height:"0.75rem","border-radius":"50%"},e[".bw-timeline-content"]={"padding-left":"0.5rem"},e[".bw-timeline-date"]={"font-size":"0.75rem","margin-bottom":"0.25rem","font-weight":"500"},e[".bw-timeline-title"]={"font-size":"1rem","font-weight":"600",margin:"0 0 0.25rem 0","line-height":"1.3"},e[".bw-timeline-text"]={"font-size":"0.875rem",margin:"0","line-height":"1.5"},e[".bw-stepper"]={display:"flex",gap:"0"},e[".bw-step"]={flex:"1",display:"flex","flex-direction":"column","align-items":"center","text-align":"center",position:"relative"},e[".bw-step-indicator"]={width:"2rem",height:"2rem","border-radius":"50%",display:"flex","align-items":"center","justify-content":"center","font-size":"0.875rem","font-weight":"600",position:"relative","z-index":"1",transition:"background-color 0.2s ease-out, color 0.2s ease-out"},e[".bw-step-body"]={"margin-top":"0.5rem"},e[".bw-step-label"]={"font-size":"0.875rem","font-weight":"500"},e[".bw-step-description"]={"font-size":"0.75rem","margin-top":"0.125rem"},e[".bw-chip-input"]={display:"flex","flex-wrap":"wrap","align-items":"center",gap:"0.375rem",padding:"0.375rem 0.5rem","border-radius":"6px","min-height":"2.5rem",cursor:"text",transition:"border-color 0.15s ease-out, box-shadow 0.15s ease-out"},e[".bw-chip"]={display:"inline-flex","align-items":"center",gap:"0.25rem",padding:"0.125rem 0.5rem","border-radius":"1rem","font-size":"0.8125rem","line-height":"1.5","white-space":"nowrap"},e[".bw-chip-remove"]={display:"inline-flex","align-items":"center","justify-content":"center",width:"1rem",height:"1rem",border:"none",background:"none","font-size":"0.875rem",cursor:"pointer",padding:"0","border-radius":"50%",transition:"color 0.15s ease-out, background-color 0.15s ease-out"},e[".bw-chip-field"]={flex:"1","min-width":"80px",border:"none",outline:"none","font-size":"0.875rem",padding:"0.125rem 0",background:"transparent"},e[".bw-popover-wrapper"]={position:"relative",display:"inline-block"},e[".bw-popover-trigger"]={cursor:"pointer"},e[".bw-popover"]={position:"absolute","z-index":"1000","min-width":"200px","max-width":"320px","border-radius":"8px","pointer-events":"none",opacity:"0",visibility:"hidden",transition:"opacity 0.15s ease, visibility 0.15s ease, transform 0.15s ease"},e[".bw-popover.bw-popover-show"]={opacity:"1",visibility:"visible","pointer-events":"auto"},e[".bw-popover-header"]={padding:"0.625rem 0.875rem","font-weight":"600","font-size":"0.9375rem"},e[".bw-popover-body"]={padding:"0.75rem 0.875rem","font-size":"0.875rem","line-height":"1.5"},e[".bw-popover-top"]={bottom:"100%",left:"50%",transform:"translateX(-50%) translateY(-8px)","margin-bottom":"8px"},e[".bw-popover-top.bw-popover-show"]={transform:"translateX(-50%) translateY(0)"},e[".bw-popover-bottom"]={top:"100%",left:"50%",transform:"translateX(-50%) translateY(8px)","margin-top":"8px"},e[".bw-popover-bottom.bw-popover-show"]={transform:"translateX(-50%) translateY(0)"},e[".bw-popover-left"]={right:"100%",top:"50%",transform:"translateY(-50%) translateX(-8px)","margin-right":"8px"},e[".bw-popover-left.bw-popover-show"]={transform:"translateY(-50%) translateX(0)"},e[".bw-popover-right"]={left:"100%",top:"50%",transform:"translateY(-50%) translateX(8px)","margin-left":"8px"},e[".bw-popover-right.bw-popover-show"]={transform:"translateY(-50%) translateX(0)"},e[".bw-bar-chart-container"]={padding:"1rem",border:"1px solid transparent","border-radius":"8px"},e[".bw-bar-chart"]={display:"flex","align-items":"flex-end",gap:"6px",padding:"0 0.5rem"},e[".bw-bar-group"]={flex:"1",display:"flex","flex-direction":"column","align-items":"center",height:"100%","justify-content":"flex-end"},e[".bw-bar"]={width:"100%","border-radius":"3px 3px 0 0",transition:"height 0.3s ease-out","min-height":"4px"},e[".bw-bar:hover"]={opacity:"0.85"},e[".bw-bar-value"]={"font-size":"0.65rem","font-weight":"600","margin-bottom":"2px","text-align":"center"},e[".bw-bar-label"]={"font-size":"0.7rem","margin-top":"4px","text-align":"center"},e[".bw-bar-chart-title"]={"font-size":"1.1rem","font-weight":"600",margin:"0 0 0.75rem 0"};var r={0:"0",1:".25rem",2:".5rem",3:"1rem",4:"1.5rem",5:"3rem"};for(var o in r){var n=r[o];e[".bw-m-"+o]={margin:n+" !important"},e[".bw-mt-"+o]={"margin-top":n+" !important"},e[".bw-mb-"+o]={"margin-bottom":n+" !important"},e[".bw-ms-"+o]={"margin-left":n+" !important"},e[".bw-me-"+o]={"margin-right":n+" !important"},e[".bw-p-"+o]={padding:n+" !important"},e[".bw-pt-"+o+", .pt-"+o]={"padding-top":n+" !important"},e[".bw-pb-"+o+", .pb-"+o]={"padding-bottom":n+" !important"},e[".bw-ps-"+o+", .ps-"+o]={"padding-left":n+" !important"},e[".bw-pe-"+o+", .pe-"+o]={"padding-right":n+" !important"}}e[".bw-m-auto, .m-auto"]={margin:"auto !important"},e[".bw-py-3"]={"padding-top":"1rem !important","padding-bottom":"1rem !important"},e[".bw-py-4"]={"padding-top":"1.5rem !important","padding-bottom":"1.5rem !important"},e[".bw-py-5"]={"padding-top":"3rem !important","padding-bottom":"3rem !important"},e[".bw-py-6"]={"padding-top":"4rem !important","padding-bottom":"4rem !important"},e[".bw-d-none"]={display:"none"},e[".bw-d-block"]={display:"block"},e[".bw-d-inline"]={display:"inline"},e[".bw-d-inline-block"]={display:"inline-block"},e[".bw-d-flex"]={display:"flex"},e[".bw-text-left"]={"text-align":"left"},e[".bw-text-right"]={"text-align":"right"},e[".bw-text-center"]={"text-align":"center"};var a={start:"flex-start",end:"flex-end",center:"center",between:"space-between",around:"space-around"};for(var i in a)e[".bw-justify-content-"+i+", .justify-content-"+i]={"justify-content":a[i]};var s={start:"flex-start",end:"flex-end",center:"center"};for(var l in s)e[".bw-align-items-"+l+", .align-items-"+l]={"align-items":s[l]};return["25","50","75","100"].forEach(function(t){e[".bw-w-"+t+", .w-"+t]={width:t+"% !important"},e[".bw-h-"+t+", .h-"+t]={height:t+"% !important"}}),e[".bw-w-auto, .w-auto"]={width:"auto !important"},e[".bw-h-auto, .h-auto"]={height:"auto !important"},e[".bw-mw-100, .mw-100"]={"max-width":"100% !important"},e[".bw-mh-100, .mh-100"]={"max-height":"100% !important"},["static","relative","absolute","fixed","sticky"].forEach(function(t){e[".bw-position-"+t+", .position-"+t]={position:t+" !important"}}),e[".bw-translate-middle, .translate-middle"]={transform:"translate(-50%, -50%) !important"},["auto","hidden","visible","scroll"].forEach(function(t){e[".bw-overflow-"+t+", .overflow-"+t]={overflow:t+" !important"}}),e[".bw-visible, .visible"]={visibility:"visible !important"},e[".bw-invisible, .invisible"]={visibility:"hidden !important"},["all","auto","none"].forEach(function(t){e[".bw-user-select-"+t+", .user-select-"+t]={"user-select":t+" !important"}}),e[".pe-none"]={"pointer-events":"none !important"},e[".pe-auto"]={"pointer-events":"auto !important"},e[".fw-light"]={"font-weight":"300 !important"},e[".fw-lighter"]={"font-weight":"lighter !important"},e[".fw-normal"]={"font-weight":"400 !important"},e[".fw-bold"]={"font-weight":"700 !important"},e[".fw-bolder"]={"font-weight":"bolder !important"},e[".fst-italic"]={"font-style":"italic !important"},e[".fst-normal"]={"font-style":"normal !important"},e[".text-decoration-none"]={"text-decoration":"none !important"},e[".text-decoration-underline"]={"text-decoration":"underline !important"},e[".text-decoration-line-through"]={"text-decoration":"line-through !important"},e[".text-lowercase"]={"text-transform":"lowercase !important"},e[".text-uppercase"]={"text-transform":"uppercase !important"},e[".text-capitalize"]={"text-transform":"capitalize !important"},e[".text-wrap"]={"white-space":"normal !important"},e[".text-nowrap"]={"white-space":"nowrap !important"},e[".fs-1"]={"font-size":"calc(1.375rem + 1.5vw) !important"},e[".fs-2"]={"font-size":"calc(1.325rem + .9vw) !important"},e[".fs-3"]={"font-size":"calc(1.3rem + .6vw) !important"},e[".fs-4"]={"font-size":"calc(1.275rem + .3vw) !important"},e[".fs-5"]={"font-size":"1.25rem !important"},e[".fs-6"]={"font-size":"1rem !important"},e[".list-unstyled"]={"padding-left":"0","list-style":"none"},e[".list-inline"]={"padding-left":"0","list-style":"none"},e[".list-inline-item"]={display:"inline-block"},e[".list-inline-item:not(:last-child)"]={"margin-right":".5rem"},e[".opacity-0"]={opacity:"0 !important"},e[".opacity-25"]={opacity:".25 !important"},e[".opacity-50"]={opacity:".5 !important"},e[".opacity-75"]={opacity:".75 !important"},e[".opacity-100"]={opacity:"1 !important"},Object.assign(e,C),e["@media (prefers-reduced-motion: reduce)"]={"*, *::before, *::after":{"animation-duration":"0.01ms !important","animation-iteration-count":"1 !important","transition-duration":"0.01ms !important","scroll-behavior":"auto !important"}},z(e)}());$.injectCSS(o,{id:"bw-structural",append:!1,minify:t})}var n=Object.assign({},_,r||{});return $.generateTheme("",Object.assign({},n,{inject:!0}))},$.getTheme=function(){return"undefined"!=typeof console&&console.warn&&console.warn("bw.getTheme() is deprecated. Use bw.generateTheme() instead."),JSON.parse(JSON.stringify(O))},$.setTheme=function(e,t={}){"undefined"!=typeof console&&console.warn&&console.warn("bw.setTheme() is deprecated. Use bw.generateTheme() instead.");const{inject:r=!0}=t;if(A(e),r&&$._isBrowser&&e.colors){const t=document.documentElement;for(const[r,o]of Object.entries(e.colors))t.style.setProperty("--bw-"+r,o)}return $.getTheme()},$.generateTheme=function(e,t){if(!t||!t.primary||!t.secondary)throw new Error("bw.generateTheme requires config.primary and config.secondary");var r=Object.assign({},_,t);t.tertiary||(r.tertiary=r.primary);var o=f(r),n=function(e){var t=e&&e.spacing||"normal",r=e&&e.radius||"md",o=e&&e.fontSize||1,n=e&&e.typeRatio||"normal",a="string"==typeof n?h[n]||h.normal:n,i=e&&e.elevation||"md",s=e&&e.motion||"standard";return{spacing:"string"==typeof t?w[t]||w.normal:t,radius:"string"==typeof r?g[r]||g.md:r,fontSize:o,typeScale:y(16,a),elevation:"string"==typeof i?x[i]||x.md:i,motion:"string"==typeof s?v[s]||v.standard:s}}(r),a=z(j(e,o,n)),i=$.css(a),s=f(u(r)),l=function(e,t,r){var o=j("",t,r),n=e?"."+e+".bw-theme-alt":".bw-theme-alt",a={};for(var i in o)if(o.hasOwnProperty(i))if("@"===i.charAt(0)){var s=o[i],l={};for(var d in s)s.hasOwnProperty(d)&&(l[n+" "+d]=s[d]);a[i]=l}else{for(var c=i.split(","),b=[],m=0;m<c.length;m++){var p=c[m].trim();"body"===p||p.indexOf("body"),b.push(n+" "+p)}a[b.join(", ")]=o[i]}return a[n+" body, :root"+n+" body"]={color:t.dark.base,"background-color":t.light.base},a}(e,s,n),d=z(l),c=$.css(d),b=p(r);if(!1!==t.inject&&$._isBrowser){var m=e?"bw-theme-"+e:"bw-theme-default";$.injectCSS(i,{id:m,append:!1});var k=e?"bw-theme-"+e+"-alt":"bw-theme-default-alt";$.injectCSS(c,{id:k,append:!1})}e||($.u.bgTeal={background:o.primary.base,color:o.primary.textOn},$.u.textTeal={color:o.primary.base},$.u.bgWhite={background:"#ffffff"},$.u.textWhite={color:"#ffffff"});var S={css:i,palette:o,name:e,isLightPrimary:b,alternate:{css:c,palette:s}};return $._activeTheme=S,$._activeThemeMode="primary",S},$.applyTheme=function(e){if(!$._isBrowser)return e||"primary";var t,r=document.documentElement,o=!$._activeTheme||$._activeTheme.isLightPrimary;return(t="primary"!==e&&("alternate"===e||("light"===e?!o:"dark"===e&&o)))?r.classList.add("bw-theme-alt"):r.classList.remove("bw-theme-alt"),$._activeThemeMode=t?"alternate":"primary",$._activeThemeMode},$.toggleTheme=function(){var e=$._activeThemeMode||"primary";return $.applyTheme("primary"===e?"alternate":"primary")},$.hexToHsl=n,$.hslToHex=a,$.adjustLightness=i,$.mixColor=s,$.relativeLuminance=l,$.textOnColor=d,$.deriveShades=b,$.derivePalette=f,$.harmonize=c,$.deriveAlternateSeed=m,$.deriveAlternateConfig=u,$.isLightPalette=p,$.SPACING_PRESETS=w,$.RADIUS_PRESETS=g,$.TYPE_RATIO_PRESETS=h,$.ELEVATION_PRESETS=x,$.MOTION_PRESETS=v,$.generateTypeScale=y,$.DEFAULT_PALETTE_CONFIG=_,$.THEME_PRESETS={teal:{primary:"#006666",secondary:"#6c757d",tertiary:"#006666",label:"Teal",desc:"The signature bitwrench palette — professional teal and neutral gray."},ocean:{primary:"#0077b6",secondary:"#90e0ef",tertiary:"#00b4d8",label:"Ocean",desc:"Cool blues and teals for a calm, professional look."},sunset:{primary:"#e76f51",secondary:"#264653",tertiary:"#e9c46a",label:"Sunset",desc:"Warm oranges and deep earth tones for a bold feel."},forest:{primary:"#2d6a4f",secondary:"#95d5b2",tertiary:"#52b788",label:"Forest",desc:"Natural greens for an organic, earthy vibe."},slate:{primary:"#343a40",secondary:"#adb5bd",tertiary:"#6c757d",label:"Slate",desc:"Elegant grays for a minimal, modern interface."},rose:{primary:"#e11d48",secondary:"#fda4af",tertiary:"#fb7185",label:"Rose",desc:"Vibrant pinks and reds for a bold, energetic design."},indigo:{primary:"#4f46e5",secondary:"#a5b4fc",tertiary:"#818cf8",label:"Indigo",desc:"Deep purples and soft lavenders for a creative palette."},amber:{primary:"#d97706",secondary:"#fbbf24",tertiary:"#f59e0b",label:"Amber",desc:"Warm golds and yellows for a sunny, welcoming feel."},emerald:{primary:"#059669",secondary:"#6ee7b7",tertiary:"#34d399",label:"Emerald",desc:"Bright greens and mints for a fresh, modern look."},nord:{primary:"#5e81ac",secondary:"#88c0d0",tertiary:"#81a1c1",label:"Nord",desc:"Muted arctic blues inspired by the Nord color scheme."},coral:{primary:"#ef6461",secondary:"#4a7c7e",tertiary:"#e8a87c",label:"Coral",desc:"Warm coral and teal for a balanced, approachable design."},midnight:{primary:"#1e3a5f",secondary:"#7c8db5",tertiary:"#3d5a80",label:"Midnight",desc:"Deep navy and steel blue for a sophisticated, authoritative feel."}},$.choice=function(e,t,r){const o=e in t?t[e]:r;return"function"===$.typeOf(o)?o(e):o},$.arrayUniq=function(e){return"array"!==$.typeOf(e)?[]:e.filter((e,t,r)=>r.indexOf(e)===t)},$.arrayBinA=function(e,t){return"array"!==$.typeOf(e)||"array"!==$.typeOf(t)?[]:$.arrayUniq(e.filter(e=>-1!==t.indexOf(e)))},$.arrayBNotInA=function(e,t){return"array"!==$.typeOf(e)||"array"!==$.typeOf(t)?[]:$.arrayUniq(t.filter(t=>e.indexOf(t)<0))},$.colorInterp=function(e,t,r,o,n){let a=Array.isArray(o)?o:["#000","#fff"];if(a=0===a.length?["#000","#fff"]:a,1===a.length)return a[0];a=a.map(e=>$.colorParse(e));const i=$.mapScale(e,t,r,0,a.length-1,{clip:!0,expScale:n}),s=$.clip(Math.floor(i),0,a.length-2),l=i-s,d=e=>$.mapScale(l,0,1,a[s][e],a[s+1][e],{clip:!0});return[d(0),d(1),d(2),d(3),"rgb"]},$.colorHslToRgb=function(e,t,r,o=255,n=!0){"array"===$.typeOf(e)&&(t=e[1],r=e[2],o=e[3],e=e[0]);const a=e/360,i=t/100,s=r/100;let l,d,c;if(0===i)l=d=c=255*s;else{const e=(e,t,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e),t=s<.5?s*(1+i):s+i-s*i,r=2*s-t;l=255*e(r,t,a+1/3),d=255*e(r,t,a),c=255*e(r,t,a-1/3)}return n&&(l=Math.round(l),d=Math.round(d),c=Math.round(c),o=Math.round(o)),[l,d,c,o,"rgb"]},$.colorRgbToHsl=function(e,t,r,o=255,n=!0){"array"===$.typeOf(e)&&(t=e[1],r=e[2],o=e[3],e=e[0]),e/=255,t/=255,r/=255;const a=Math.max(e,t,r),i=Math.min(e,t,r);let s,l,d=(a+i)/2;if(a===i)s=l=0;else{const o=a-i;switch(l=d>.5?o/(2-a-i):o/(a+i),a){case e:s=((t-r)/o+(t<r?6:0))/6;break;case t:s=((r-e)/o+2)/6;break;case r:s=((e-t)/o+4)/6}}return s*=360,l*=100,d*=100,n&&(s=Math.round(s),l=Math.round(l),d=Math.round(d),o=Math.round(o)),[s,l,d,o,"hsl"]},$.colorParse=function(e,t=255){let r=[0,0,0,t,"rgb"];if("array"===$.typeOf(e)){const t=[0,0,0,255,"rgb"];for(let r=0;r<e.length&&r<t.length;r++)t[r]=e[r];return t}if("#"===(e=String(e).replace(/\s/g,""))[0]){const t=e.slice(1);if(3===t.length||4===t.length)for(let e=0;e<t.length;e++)r[e]=parseInt(t[e]+t[e],16);else if(6===t.length||8===t.length)for(let e=0;e<t.length;e+=2)r[e/2]=parseInt(t.substring(e,e+2),16)}else{const o=e.match(/^(rgb|hsl)a?\(([^)]+)\)$/i);if(o){const e=o[1].toLowerCase(),n=o[2].split(",").map(e=>parseFloat(e));if("rgb"===e)r[0]=n[0]||0,r[1]=n[1]||0,r[2]=n[2]||0,r[3]=void 0!==n[3]?255*n[3]:t,r[4]="rgb";else if("hsl"===e){return $.colorHslToRgb(n[0]||0,n[1]||0,n[2]||0,void 0!==n[3]?255*n[3]:t)}}}return r},$.setCookie=function(e,t,r,o={}){if(!$._isBrowser)return;const n=new Date;n.setTime(n.getTime()+24*r*60*60*1e3);let a=`${e}=${t}; expires=${n.toUTCString()}`;o.path&&(a+=`; path=${o.path}`),o.domain&&(a+=`; domain=${o.domain}`),o.secure&&(a+="; secure"),o.sameSite&&(a+=`; samesite=${o.sameSite}`),document.cookie=a},$.getCookie=function(e,t){if(!$._isBrowser)return t;const r=e+"=",o=document.cookie.split(";");for(let e=0;e<o.length;e++){let t=o[e];for(;" "===t.charAt(0);)t=t.substring(1);if(0===t.indexOf(r))return t.substring(r.length,t.length)}return t},$.getURLParam=function(e,t){if(!$._isBrowser||"object"!=typeof window)return t;try{const r=new URLSearchParams(window.location.search);if(!e){const e={};for(const[t,o]of r)e[t]=o||!0;return e}return r.has(e)?r.get(e)||!0:t}catch(e){return t}},$.htmlTable=function(e,t={}){if(console.warn("bw.htmlTable() is deprecated. Use bw.makeTableFromArray() for TACO output or bw.makeTable() for object-array data."),"array"!==$.typeOf(e)||e.length<1)return"";const r={useFirstRowAsHeaders:!0,caption:null,atr:{class:"table"},thead_atr:{},th_atr:{},tbody_atr:{},tr_atr:{},td_atr:{}};Object.assign(r,t);let o=`<table${$._attrsToStr(r.atr)}>`;r.caption&&(o+=`<caption>${$.escapeHTML(r.caption)}</caption>`);let n=0;if(r.useFirstRowAsHeaders&&e.length>0&&(o+=`<thead${$._attrsToStr(r.thead_atr)}>`,o+=`<tr${$._attrsToStr(r.tr_atr)}>`,e[0].forEach(e=>{o+=`<th${$._attrsToStr(r.th_atr)}>${$.escapeHTML(String(e))}</th>`}),o+="</tr></thead>",n=1),e.length>n){o+=`<tbody${$._attrsToStr(r.tbody_atr)}>`;for(let t=n;t<e.length;t++)o+=`<tr${$._attrsToStr(r.tr_atr)}>`,e[t].forEach(e=>{o+=`<td${$._attrsToStr(r.td_atr)}>${$.escapeHTML(String(e))}</td>`}),o+="</tr>";o+="</tbody>"}return o+="</table>",o},$._attrsToStr=function(e){if(!e||"object"!=typeof e)return"";let t="";for(const[r,o]of Object.entries(e))null!=o&&!1!==o&&(t+=!0===o?` ${r}`:` ${r}="${$.escapeHTML(String(o))}"`);return t},$.htmlTabs=function(e,t={}){if(console.warn("bw.htmlTabs() is deprecated. Use bw.makeTabs() instead."),"array"!==$.typeOf(e)||e.length<1)return"";const r={atr:{class:"bw-tab-container"},tab_atr:{class:"bw-tab-item-list"},tabc_atr:{class:"bw-tab-content-list"}};Object.assign(r,t);const o=e.map((e,t)=>({t:"li",a:{class:0===t?"bw-tab-item bw-tab-active":"bw-tab-item",onclick:"bw.selectTabContent(this)"},c:e[0]})),n=e.map((e,t)=>({t:"div",a:{class:0===t?"bw-tab-content bw-show":"bw-tab-content"},c:e[1]}));return $.html({t:"div",a:r.atr,c:[{t:"ul",a:r.tab_atr,c:o},{t:"div",a:r.tabc_atr,c:n}]})},$.selectTabContent=function(e){if(console.warn("bw.selectTabContent() is deprecated. Use bw.makeTabs() instead."),!$._isBrowser||!e)return;const t=e.closest(".bw-tab-container");if(!t)return;t.querySelectorAll(".bw-tab-item").forEach(e=>{e.classList.remove("bw-tab-active")}),e.classList.add("bw-tab-active");const r=Array.from(e.parentElement.children).indexOf(e);t.querySelectorAll(".bw-tab-content").forEach(e=>{e.classList.remove("bw-show")});const o=t.querySelectorAll(".bw-tab-content");o[r]&&o[r].classList.add("bw-show")},$.loremIpsum=function(e,t,r=!0){const o="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. ";"number"!=typeof e&&(e=Math.floor(125*Math.random())+25),void 0===t&&(t=Math.floor(446*Math.random())),t%=446;let n=0;for(;" "===o[t]||/[.,:;!?]/.test(o[t]);)if(t=(t+1)%446,n++,n>=446){t=0,n=0;break}let a=o.substring(t)+o.substring(0,t),i="",s=e+n;for(;s>0;)i+=s<a.length?a.substring(0,s):a,s-=a.length;if(i.length>e&&(i=i.substring(0,e))," "===i[i.length-1]&&(i=i.substring(0,i.length-1)+"."),r){let e=i[0].toUpperCase();e=/[A-Z]/.test(e)?e:"L",i=e+i.substring(1)}return i},$.multiArray=function(e,t){t="number"==typeof t?[t]:t;const r=o=>{if(o>=t.length)return"function"===$.typeOf(e)?e():e;const n=[];for(let e=0;e<t[o];e++)n[e]=r(o+1);return n};return r(0)},$.naturalCompare=function(e,t){if(isFinite(e)&&isFinite(t))return Math.sign(e-t);const r=String(e).toLowerCase(),o=String(t).toLowerCase();if(r===o)return e>t?1:0;if(!/\d/.test(r)||!/\d/.test(o))return r>o?1:-1;const n=r.match(/(\d+|\D+)/g)||[],a=o.match(/(\d+|\D+)/g)||[],i=Math.min(n.length,a.length);for(let e=0;e<i;e++){const t=n[e],r=a[e];if(t!==r){if(/^\d+$/.test(t)&&/^\d+$/.test(r)){let e=t,o=r;return"0"===t[0]&&(e="0."+t),"0"===r[0]&&(o="0."+r),parseFloat(e)-parseFloat(o)}return t>r?1:-1}}return n.length-a.length},$.setIntervalX=function(e,t,r){let o=0;const n=setInterval(function(){e(o),++o>=r&&clearInterval(n)},t);return n},$.repeatUntil=function(e,t,r,o=250,n=10,a){if("function"!=typeof e)return"err";let i=0;const s=setInterval(function(){const o=e();i++,o?(clearInterval(s),t&&t(o),a&&a(!0,i)):i>=n?(clearInterval(s),r&&r(),a&&a(!1,i)):r&&r()},o);return s},$.saveClientFile=function(e,t){if($.isNodeJS())$._getFs().then(function(r){r?r.writeFile(e,t,function(e){e&&console.error("Error saving file:",e)}):console.error("bw.saveClientFile: fs module not available")});else{const r=new Blob([t],{type:"application/octet-stream"}),o=window.URL.createObjectURL(r),n=$.createDOM({t:"a",a:{href:o,download:e,style:"display: none"}});document.body.appendChild(n),n.click(),window.URL.revokeObjectURL(o),document.body.removeChild(n)}},$.saveClientJSON=function(e,t){$.saveClientFile(e,JSON.stringify(t,null,2))},$.loadClientFile=function(e,t,r){var o={parser:"raw"};r&&r.parser&&(o.parser=r.parser);var n="JSON"===o.parser?JSON.parse:function(e){return e};if($.isNodeJS())$._getFs().then(function(r){r?r.readFile(e,"utf8",function(e,r){if(e)t(null,e);else try{t(n(r),null)}catch(e){t(null,e)}}):t(null,new Error("fs module not available"))});else{var a=new XMLHttpRequest;a.open("GET",e,!0),a.onreadystatechange=function(){if(4===a.readyState)if(a.status>=200&&a.status<300)try{t(n(a.responseText),null)}catch(e){t(null,e)}else t(null,new Error("HTTP "+a.status+": "+e))},a.send(null)}return"BW_OK"},$.loadClientJSON=function(e,t){return $.loadClientFile(e,t,{parser:"JSON"})},$.loadLocalFile=function(e,t){var r={parser:"raw",accept:""};t&&(t.parser&&(r.parser=t.parser),t.accept&&(r.accept=t.accept));var o="JSON"===r.parser?JSON.parse:function(e){return e};if($.isNodeJS())e(null,"",new Error("bw.loadLocalFile is browser-only. Use bw.loadClientFile() in Node."));else{var n=$.createDOM({t:"input",a:{type:"file",accept:r.accept,style:"display: none"}});n.addEventListener("change",function(){var t=n.files[0];if(t){var r=new FileReader;r.onload=function(r){try{e(o(r.target.result),t.name,null)}catch(r){e(null,t.name,r)}},r.onerror=function(){e(null,t.name,r.error)},r.readAsText(t),n.remove()}else e(null,"",new Error("No file selected"))}),document.body.appendChild(n),n.click()}},$.loadLocalJSON=function(e){$.loadLocalFile(e,{parser:"JSON",accept:".json"})},$.copyToClipboard=function(e){return navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(e):new Promise((t,r)=>{const o=$.createDOM({t:"textarea",a:{value:e,style:{position:"fixed",top:"-999px",left:"-999px",width:"2em",height:"2em",padding:0,border:"none",outline:"none",boxShadow:"none",background:"transparent"}}});document.body.appendChild(o),o.focus(),o.select();try{const e=document.execCommand("copy");document.body.removeChild(o),e?t():r(new Error("Copy command failed"))}catch(e){document.body.removeChild(o),r(e)}})},$.makeTable=function(e){const{data:t=[],columns:r,className:o="",striped:n=!1,hover:a=!1,sortable:i=!0,onSort:s,sortColumn:l,sortDirection:d="asc"}=e;let c="bw-table";n&&(c+=" bw-table-striped"),a&&(c+=" bw-table-hover"),o&&(c+=" "+o),c=c.trim();const b=r||(t.length>0?Object.keys(t[0]).map(e=>({key:e,label:e})):[]);let m=l||null,p=d,u=[...t];m&&u.sort((e,t)=>{const r=e[m],o=t[m];if("number"==typeof r&&"number"==typeof o)return"asc"===p?r-o:o-r;const n=String(r||"").toLowerCase(),a=String(o||"").toLowerCase();return"asc"===p?n.localeCompare(a):a.localeCompare(n)});return{t:"table",a:{class:c},c:[{t:"thead",c:{t:"tr",c:b.map(e=>({t:"th",a:i?{style:{cursor:"pointer",userSelect:"none"},onclick:()=>{return t=e.key,void(i&&(m===t?p="asc"===p?"desc":"asc":(m=t,p="asc"),s&&s(t,p)));var t}}:{},c:[e.label,i&&m===e.key&&{t:"span",a:{style:{marginLeft:"5px"}},c:"asc"===p?"▲":"▼"}].filter(Boolean)}))}},{t:"tbody",c:u.map(e=>({t:"tr",c:b.map(t=>({t:"td",c:t.render?t.render(e[t.key],e):String(e[t.key]||"")}))}))}]}},$.makeTableFromArray=function(e){const{data:t=[],headerRow:r=!0,columns:o,...n}=e;if(!Array.isArray(t)||0===t.length)return $.makeTable({data:[],columns:o||[],...n});let a,i;if(r&&t.length>0)a=t[0].map(function(e){return String(e)}),i=t.slice(1);else{const e=t[0].length;a=[];for(let t=0;t<e;t++)a.push("col"+t);i=t}const s=i.map(function(e){const t={};return a.forEach(function(r,o){t[r]=void 0!==e[o]?e[o]:""}),t}),l=o||a.map(function(e){return{key:e,label:e}});return $.makeTable({data:s,columns:l,...n})},$.makeBarChart=function(e){const{data:t=[],labelKey:r="label",valueKey:o="value",title:n,color:a="#006666",height:i="200px",formatValue:s,showValues:l=!0,showLabels:d=!0,className:c=""}=e;if(!Array.isArray(t)||0===t.length)return{t:"div",a:{class:("bw-bar-chart-container "+c).trim()},c:""};const b=t.map(function(e){return Number(e[o])||0}),m=Math.max.apply(null,b),p=t.map(function(e,t){const o=b[t],n=m>0?o/m*100:0,i=s?s(o):String(o),c=[];return l&&c.push({t:"div",a:{class:"bw-bar-value"},c:i}),c.push({t:"div",a:{class:"bw-bar",style:"height:"+n+"%;background:"+a+";"}}),d&&c.push({t:"div",a:{class:"bw-bar-label"},c:String(e[r]||"")}),{t:"div",a:{class:"bw-bar-group"},c:c}}),u=[];return n&&u.push({t:"h3",a:{class:"bw-bar-chart-title"},c:n}),u.push({t:"div",a:{class:"bw-bar-chart",style:"height:"+i+";"},c:p}),{t:"div",a:{class:("bw-bar-chart-container "+c).trim()},c:u}},$.makeDataTable=function(e){const{title:t,data:r,columns:o,className:n="",striped:a=!0,hover:i=!0,responsive:s=!0,...l}=e,d=$.makeTable({data:r,columns:o,className:n,striped:a,hover:i,...l}),c=[];return t&&c.push({t:"h5",a:{class:"mb-3"},c:t}),s?c.push({t:"div",a:{class:"table-responsive"},c:d}):c.push(d),{t:"div",a:{class:"table-container"},c:c}},$._componentRegistry=new Map,$.render=function(e,t,r){const o="string"==typeof e?document.querySelector(e):e;if(!o)return{object_type:"error",component_id:null,object_handle_in_dom:null,status_code:"error=target_element_not_found"};const n=r.o?.id||$.uuid();let a;try{a=$.createDOM(r)}catch(e){return{object_type:"error",component_id:n,object_handle_in_dom:null,status_code:`error=render_failed:${e.message}`}}a.setAttribute("data-bw-id",n);try{switch(t){case"replace":o.parentNode.replaceChild(a,o);break;case"prepend":o.insertBefore(a,o.firstChild);break;case"append":o.appendChild(a);break;case"before":o.parentNode.insertBefore(a,o);break;case"after":o.parentNode.insertBefore(a,o.nextSibling);break;default:throw new Error(`Invalid position: ${t}`)}}catch(e){return{object_type:"error",component_id:n,object_handle_in_dom:null,status_code:`error=insertion_failed:${e.message}`}}const i={object_type:r.t||"element",component_id:n,object_handle_in_dom:a,status_code:"success",_taco:{...r},_state:{...r.o?.state||{}},_mounted:!0,get element(){return this.object_handle_in_dom},getState(){return{...this._state}},setState(e){return this._state={...this._state,...e},this._taco.o?.onStateChange&&this._taco.o.onStateChange(this._state,e),this},update(){if(!this._mounted||!this.element)return this;const e=this.element.parentNode;this._taco.o&&(this._taco.o.state=this._state);const t=$.createDOM(this._taco);return t.setAttribute("data-bw-id",n),e.replaceChild(t,this.element),this.object_handle_in_dom=t,this._taco.o?.onUpdate&&this._taco.o.onUpdate(t,this._state),this},getProp(e){return this._taco.a?.[e]},setProp(e,t){return this._taco.a||(this._taco.a={}),this._taco.a[e]=t,this.element&&(null==t?this.element.removeAttribute(e):!0===t?this.element.setAttribute(e,""):this.element.setAttribute(e,String(t))),this},getContent(){return this._taco.c},setContent(e){return this._taco.c=e,this.element&&("string"==typeof e?this.element.textContent=e:this.update()),this},addClass(e){return this.element&&this.element.classList.add(e),this},removeClass(e){return this.element&&this.element.classList.remove(e),this},toggleClass(e){return this.element&&this.element.classList.toggle(e),this},hasClass(e){return!!this.element&&this.element.classList.contains(e)},show(){return this.element&&(this.element.style.display=""),this},hide(){return this.element&&(this.element.style.display="none"),this},on(e,t){return this.element&&this.element.addEventListener(e,t),this},off(e,t){return this.element&&this.element.removeEventListener(e,t),this},destroy(){return this._mounted?(this._taco.o?.unmount&&this._taco.o.unmount(this.element),this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element),$._componentRegistry.delete(n),this._mounted=!1,this.object_handle_in_dom=null,this.status_code="destroyed",this):this}};return $._componentRegistry.set(n,i),r.o?.mounted&&r.o.mounted(a,i),i},$.getComponent=function(e){return $._componentRegistry.get(e)||null},$.getAllComponents=function(){return new Map($._componentRegistry)},Object.entries(E).forEach(([e,t])=>{e.startsWith("make")&&($[e]=t)}),$._componentHandles=T||{},Object.entries(E).forEach(([e,t])=>{if(e.startsWith("make")){const r=e.substring(4).toLowerCase(),o="create"+e.substring(4);$[o]=function(e){const o=t(e),n=$.renderComponent(o),a=$._componentHandles[r];if(a){const e=new a(n.element,o);return Object.setPrototypeOf(e,n),e}return n}}}),$.createTable=function(e,t={}){const r=$.makeTable({data:e,...t}),o=$.renderComponent(r),n=$._componentHandles.table;if(n){const e=new n(o.element,r);return Object.setPrototypeOf(e,o),e}return o},$._isBrowser&&"undefined"!=typeof window&&(window.bw=$),$});
58
+ */const q={version:e.version,versionInfo:e,getVersion:function(){return{...e}},_idCounter:0,_unmountCallbacks:new Map,_topics:{},_subIdCounter:0,_nodeMap:{},__monkey_patch_is_nodejs__:{_value:"ignore",set:function(e){this._value="boolean"==typeof e?e:"ignore"},get:function(){return this._value}}};function W(e){this._bwComponent=!0,this._bwId=q.uuid("comp"),this.taco=e,this.element=null,this.mounted=!1;var t=e.o||{};if(this._state={},t.state)for(var r in t.state)Object.prototype.hasOwnProperty.call(t.state,r)&&(this._state[r]=t.state[r]);if(this._actions={},t.actions)for(var o in t.actions)Object.prototype.hasOwnProperty.call(t.actions,o)&&(this._actions[o]=t.actions[o]);if(this._methods={},t.methods){var n=this;for(var i in t.methods)Object.prototype.hasOwnProperty.call(t.methods,i)&&(this._methods[i]=t.methods[i],function(e,t){n[e]=function(){var e=[n].concat(Array.prototype.slice.call(arguments));return t.apply(null,e)}}(i,t.methods[i]))}this._userTag=null,this._hooks={willMount:t.willMount||null,mounted:t.mounted||null,willUpdate:t.willUpdate||null,onUpdate:t.onUpdate||null,unmount:t.unmount||null,willDestroy:t.willDestroy||null},this._bindings=[],this._dirtyKeys={},this._scheduled=!1,this._subs=[],this._eventListeners=[],this._registeredActions=[],this._prevValues={},this._compile=!!t.compile,this._bw_refs={},this._refCounter=0}return q.isNodeJS=function(){return"ignore"!==q.__monkey_patch_is_nodejs__.get()?q.__monkey_patch_is_nodejs__.get():"undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node},q._isNode=q.isNodeJS(),Object.defineProperty(q,"_isBrowser",{get:function(){return"undefined"!=typeof document&&"undefined"!=typeof window},configurable:!0}),q._fsCache=void 0,q._getFs=function(){if(void 0!==q._fsCache)return Promise.resolve(q._fsCache);if(!q.isNodeJS())return q._fsCache=null,Promise.resolve(null);if("function"==typeof require)try{return q._fsCache=require("fs"),Promise.resolve(q._fsCache)}catch(e){}try{return new Function("m","return import(m)")("fs").then(function(e){return q._fsCache=e.default||e,q._fsCache}).catch(function(){return q._fsCache=null,null})}catch(e){return q._fsCache=null,Promise.resolve(null)}},q.typeOf=N,q.to=q.typeOf,q.uuid=function(e){var t=e?"bw_"+e+"_":"bw_";if(q._isBrowser&&crypto&&crypto.randomUUID)return t+crypto.randomUUID().replace(/-/g,"");return`${t}${Date.now().toString(36)}_${(++q._idCounter).toString(36)}_${Math.random().toString(36).substring(2,11)}`},q._el=function(e){if("string"!=typeof e)return e||null;if(!e)return null;if(!q._isBrowser)return null;var t=q._nodeMap[e];if(t){if(null!==t.parentNode)return t;delete q._nodeMap[e]}var r=document.getElementById(e);return r||"#"!==e.charAt(0)&&"."!==e.charAt(0)||(r=document.querySelector(e)),r||(r=document.querySelector('[data-bw_id="'+e+'"]')),r&&(q._nodeMap[e]=r),r},q._registerNode=function(e,t){if(e){t&&(q._nodeMap[t]=e);var r=e.getAttribute?e.getAttribute("id"):null;r&&(q._nodeMap[r]=e)}},q._deregisterNode=function(e,t){t&&delete q._nodeMap[t];var r=e&&e.getAttribute?e.getAttribute("id"):null;r&&delete q._nodeMap[r]},q.escapeHTML=function(e){if("string"!=typeof e)return"";const t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};return e.replace(/[&<>"'/]/g,e=>t[e])},q.raw=function(e){return{__bw_raw:!0,v:String(e)}},q.html=function(e,t={}){if(null==e)return"";if(e&&!0===e._bwComponent){var r=Object.assign({},t);return!r.state&&e._state&&(r.state=e._state),q.html(e.taco,r)}if(Array.isArray(e))return e.map(e=>q.html(e,t)).join("");if(e&&e.__bw_raw)return e.v;if(e&&e._bwWhen&&t.state){var o=e.expr.replace(/^\$\{|\}$/g,""),n=(t.compile?q._resolveTemplate("${"+o+"}",t.state,!0):q._evaluatePath(t.state,o))?e.branches[0]:e.branches[1]||null;return n?q.html(n,t):""}if(e&&e._bwEach&&t.state){var i=e.expr.replace(/^\$\{|\}$/g,""),a=q._evaluatePath(t.state,i);return Array.isArray(a)?a.map(function(r,o){return q.html(e.factory(r,o),t)}).join(""):""}if("object"!=typeof e||!e.t){var s=t.raw?String(e):q.escapeHTML(String(e));return t.state&&"string"==typeof s&&s.indexOf("${")>=0&&(s=q._resolveTemplate(s,t.state,!!t.compile)),s}const{t:l,a:c={},c:d,o:b={}}=e,_=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"].includes(l.toLowerCase());let p="";for(const[e,r]of Object.entries(c))if(null!=r&&!1!==r&&!e.startsWith("on"))if("style"===e&&"object"==typeof r){const e=Object.entries(r).filter(([,e])=>null!=e).map(([e,t])=>`${e}:${t}`).join(";");e&&(p+=` style="${q.escapeHTML(e)}"`)}else if("class"===e){const e=Array.isArray(r)?r.filter(Boolean).join(" "):String(r);e&&(p+=` class="${q.escapeHTML(e)}"`)}else if(!0===r)p+=` ${e}`;else{let o=String(r);t.state&&o.indexOf("${")>=0&&(o=q._resolveTemplate(o,t.state,!!t.compile)),p+=` ${e}="${q.escapeHTML(o)}"`}if((b.mounted||b.unmount)&&!c.class?.includes("bw_id_")){const e=b.bw_id||q.uuid();p=p.replace(/class="([^"]*)"/,(t,r)=>`class="${r} bw_id_${e}"`.trim()),p.includes("class=")||(p+=` class="bw_id_${e}"`)}if(_)return`<${l}${p} />`;let m=null!=d?q.html(d,t):"";return t.state&&"string"==typeof m&&m.indexOf("${")>=0&&(m=q._resolveTemplate(m,t.state,!!t.compile)),`<${l}${p}>${m}</${l}>`},q.createDOM=function(e,t={}){if(!q._isBrowser)throw new Error("bw.createDOM requires a DOM environment (document/window). Use bw.html() instead.");if(null==e)return document.createTextNode("");if(e&&e.__bw_raw){var r=document.createDocumentFragment(),o=document.createElement("span");for(o.innerHTML=e.v;o.firstChild;)r.appendChild(o.firstChild);return r}if(e&&!0===e._bwComponent)return q.createDOM(e.taco,t);if("object"!=typeof e||!e.t)return document.createTextNode(String(e));const{t:n,a:i={},c:a,o:s={}}=e,l=document.createElement(n);for(const[e,t]of Object.entries(i))if(null!=t&&!1!==t)if("style"===e&&"object"==typeof t)Object.assign(l.style,t);else if("class"===e){const e=Array.isArray(t)?t.filter(Boolean).join(" "):String(t);e&&(l.className=e)}else if(e.startsWith("on")&&"function"==typeof t){const r=e.slice(2).toLowerCase();l.addEventListener(r,t)}else"value"===e&&"input"===n?l.value=t:!0===t?l.setAttribute(e,""):l.setAttribute(e,String(t));if(null!=a)if(Array.isArray(a))a.forEach(e=>{if(null!=e){if(!0===e._bwComponent)return void e.mount(l);var r=q.createDOM(e,t);l.appendChild(r);var o=e&&e.a?e.a["data-bw_id"]||e.a.id:null;if(o&&(l._bw_refs||(l._bw_refs={}),l._bw_refs[o]=r),r._bw_refs)for(var n in l._bw_refs||(l._bw_refs={}),r._bw_refs)Object.prototype.hasOwnProperty.call(r._bw_refs,n)&&(l._bw_refs[n]=r._bw_refs[n])}});else if("object"==typeof a&&a.__bw_raw)l.innerHTML=a.v;else if(!0===a._bwComponent)a.mount(l);else if("object"==typeof a&&a.t){var c=q.createDOM(a,t);l.appendChild(c);var d=a.a?a.a["data-bw_id"]||a.a.id:null;if(d&&(l._bw_refs||(l._bw_refs={}),l._bw_refs[d]=c),c._bw_refs)for(var b in l._bw_refs||(l._bw_refs={}),c._bw_refs)Object.prototype.hasOwnProperty.call(c._bw_refs,b)&&(l._bw_refs[b]=c._bw_refs[b])}else l.textContent=String(a);if(i.id&&q._registerNode(l,null),s.mounted||s.unmount||s.render||s.state){const e=i["data-bw_id"]||q.uuid();l.setAttribute("data-bw_id",e),q._registerNode(l,e),s.state&&(l._bw_state=s.state),s.render?(l._bw_render=s.render,s.mounted&&console.warn("bw.createDOM: o.render and o.mounted are mutually exclusive. o.render wins."),document.body.contains(l)?s.render(l,l._bw_state||{}):requestAnimationFrame(()=>{document.body.contains(l)&&s.render(l,l._bw_state||{})})):s.mounted&&(document.body.contains(l)?s.mounted(l,l._bw_state||{}):requestAnimationFrame(()=>{document.body.contains(l)&&s.mounted(l,l._bw_state||{})})),s.unmount&&q._unmountCallbacks.set(e,()=>{s.unmount(l,l._bw_state||{})})}else i["data-bw_id"]&&q._registerNode(l,i["data-bw_id"]);return l},q.DOM=function(e,t,r={}){if(!q._isBrowser)throw new Error("bw.DOM requires a DOM environment (document/window). Use bw.html() instead.");const o=q._el(e);if(!o)return console.error("bw.DOM: Target element not found:",e),null;const n=o._bw_state,i=o._bw_render,a=o.getAttribute("data-bw_id"),s=o._bw_subs;return delete o._bw_subs,q.cleanup(o),void 0!==n&&(o._bw_state=n),i&&(o._bw_render=i),a&&(o.setAttribute("data-bw_id",a),q._registerNode(o,a)),s&&(o._bw_subs=s),o.innerHTML="",null!=t&&(!0===t._bwComponent?t.mount(o):t.element instanceof Element?o.appendChild(t.element):Array.isArray(t)?t.forEach(e=>{null!=e&&(!0===e._bwComponent?e.mount(o):e.element instanceof Element?o.appendChild(e.element):o.appendChild(q.createDOM(e,r)))}):o.appendChild(q.createDOM(t,r))),o},q.compileProps=function(e,t={}){const r={};return Object.keys(t).forEach(t=>{Object.defineProperty(r,t,{get:()=>e._props[t],set(r){const o=e._props[t];o!==r&&(e._props[t]=r,e.onPropChange&&e.onPropChange(t,r,o))},enumerable:!0,configurable:!0})}),r},q.renderComponent=function(e,t={}){const r=q.createDOM(e,t),o={element:r,taco:e,_props:{...e.a},_state:e.o?.state||{},_children:{},get props(){return this._compiledProps||(this._compiledProps=q.compileProps(this,this._props)),this._compiledProps},$(e){return this.element.querySelectorAll(e)},$first(e){return this.element.querySelector(e)},update(e){Object.assign(this._props,e);const r={...this.taco,a:{...this.taco.a,...e}},o=q.createDOM(r,t);return this.element.replaceWith(o),this.element=o,this.taco=r,this},render(){const e=q.createDOM(this.taco,t);return this.element.replaceWith(e),this.element=e,this},onPropChange(e,t,r){this.render()},get state(){return this._state},set state(e){this._state=e,this.render()},setState(e){return Object.assign(this._state,e),this.render(),this},addChild(e,t){return this._children[e]=t,this},getChild(e){return this._children[e]},destroy(){Object.values(this._children).forEach(e=>{e&&e.destroy&&e.destroy()}),q.cleanup(this.element),this.element.remove(),this._children={},this._props={},this._state={},this._compiledProps=null}};return r._bwHandle=o,o},q.cleanup=function(e){if(!q._isBrowser||!e)return;e.querySelectorAll("[data-bw_id]").forEach(e=>{const t=e.getAttribute("data-bw_id"),r=q._unmountCallbacks.get(t);r&&(r(),q._unmountCallbacks.delete(t)),q._deregisterNode(e,t),e._bw_subs&&(e._bw_subs.forEach(function(e){e()}),delete e._bw_subs),delete e._bw_state,delete e._bw_render,delete e._bw_refs});const t=e.getAttribute("data-bw_id");if(t){const r=q._unmountCallbacks.get(t);r&&(r(),q._unmountCallbacks.delete(t)),q._deregisterNode(e,t),e._bw_subs&&(e._bw_subs.forEach(function(e){e()}),delete e._bw_subs),delete e._bw_state,delete e._bw_render,delete e._bw_refs,e._bwComponentHandle&&(e._bwComponentHandle.mounted=!1,e._bwComponentHandle.element=null,delete e._bwComponentHandle)}},q.update=function(e){var t=q._el(e);return t&&t._bw_render&&(t._bw_render(t,t._bw_state||{}),q.emit(t,"statechange",t._bw_state)),t||null},q.patch=function(e,t,r){var o=q._el(e);return o?(r?o.setAttribute(r,String(t)):Array.isArray(t)?(o.innerHTML="",t.forEach(function(e){"string"==typeof e||"number"==typeof e?o.appendChild(document.createTextNode(String(e))):e&&e.t&&o.appendChild(q.createDOM(e))})):"object"==typeof t&&null!==t&&t.t?(o.innerHTML="",o.appendChild(q.createDOM(t))):o.textContent=String(t),o):null},q.patchAll=function(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=q.patch(r,e[r]));return t},q.emit=function(e,t,r){var o=q._el(e);o&&o.dispatchEvent(new CustomEvent("bw:"+t,{bubbles:!0,detail:r||{}}))},q.on=function(e,t,r){var o=q._el(e);return o&&o.addEventListener("bw:"+t,function(e){r(e.detail,e)}),o||null},q.pub=function(e,t){var r=q._topics[e];if(!r||0===r.length)return 0;for(var o=r.slice(),n=0,i=0;i<o.length;i++)try{o[i].handler(t),n++}catch(t){console.warn('bw.pub: subscriber error on topic "'+e+'":',t)}return n},q.sub=function(e,t,r){var o=++q._subIdCounter;q._topics[e]||(q._topics[e]=[]),q._topics[e].push({handler:t,id:o});var n=function(){var t=q._topics[e];t&&(q._topics[e]=t.filter(function(e){return e.id!==o}),0===q._topics[e].length&&delete q._topics[e])};if(r&&(r._bw_subs||(r._bw_subs=[]),r._bw_subs.push(n),!r.getAttribute("data-bw_id"))){var i="bw_sub_"+o;r.setAttribute("data-bw_id",i)}return n},q.unsub=function(e,t){var r=q._topics[e];if(!r)return 0;var o=r.length;q._topics[e]=r.filter(function(e){return e.handler!==t});var n=o-q._topics[e].length;return 0===q._topics[e].length&&delete q._topics[e],n},q._fnRegistry={},q._fnIDCounter=0,q.funcRegister=function(e,t){if("function"!=typeof e)return"";var r="string"==typeof t&&t.length>0?t:"bw_fn_"+q._fnIDCounter++;return q._fnRegistry[r]=e,r},q.funcGetById=function(e,t){return(e=String(e))in q._fnRegistry?q._fnRegistry[e]:"function"==typeof t?t:function(){console.warn('bw.funcGetById: unregistered fn "'+e+'"')}},q.funcGetDispatchStr=function(e,t){return"bw.funcGetById('"+e+"')("+(t=null!=t?String(t):"")+")"},q.funcUnregister=function(e){return e in q._fnRegistry&&(delete q._fnRegistry[e],!0)},q.funcGetRegistry=function(){var e={};for(var t in q._fnRegistry)Object.prototype.hasOwnProperty.call(q._fnRegistry,t)&&(e[t]=q._fnRegistry[t]);return e},q._parseBindings=function(e){for(var t,r=[],o=/\$\{([^}]+)\}/g;null!==(t=o.exec(e));)r.push({start:t.index,end:t.index+t[0].length,expr:t[1].trim()});return r},q._evaluatePath=function(e,t){for(var r=t.split("."),o=e,n=0;n<r.length;n++){if(null==o)return"";o=o[r[n]]}return null==o?"":o},q._compiledExprs={},q._resolveTemplate=function(e,t,r){if("string"!=typeof e||e.indexOf("${")<0)return e;var o=q._parseBindings(e);if(0===o.length)return e;for(var n="",i=0,a=0;a<o.length;a++){var s,l=o[a];if(n+=e.slice(i,l.start),r){if(!q._compiledExprs[l.expr])try{q._compiledExprs[l.expr]=new Function("state","with(state){return ("+l.expr+");}")}catch(e){q._compiledExprs[l.expr]=function(){return""}}try{s=q._compiledExprs[l.expr](t)}catch(e){s=""}}else s=q._evaluatePath(t,l.expr);n+=null==s?"":String(s),i=l.end}return n+=e.slice(i)},q._extractDeps=function(e,t){for(var r=[],o=0;o<t.length;o++){var n=t[o];(new RegExp("(?:^|[^\\w$.])"+n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(?:[^\\w$]|$)").test(e)||e===n||0===e.indexOf(n+"."))&&r.push(n)}return r},q._dirtyComponents=[],q._flushScheduled=!1,q._scheduleFlush=function(){q._flushScheduled||(q._flushScheduled=!0,"undefined"!=typeof Promise?Promise.resolve().then(q._doFlush):setTimeout(q._doFlush,0))},q._doFlush=function(){q._flushScheduled=!1;var e=q._dirtyComponents.slice();q._dirtyComponents=[];for(var t={},r=0;r<e.length;r++){var o=e[r];t[o._bwId]||(t[o._bwId]=!0,o._flush())}},q.flush=function(){q._doFlush()},W.prototype.get=function(e){return q._evaluatePath(this._state,e)},W.prototype.set=function(e,t,r){for(var o=e.split("."),n=this._state,i=0;i<o.length-1;i++)null!=n[o[i]]&&"object"==typeof n[o[i]]||(n[o[i]]={}),n=n[o[i]];n[o[o.length-1]]=t,this._dirtyKeys[o[0]]=!0,this.mounted&&(r&&r.sync?this._flush():this._scheduleDirty())},W.prototype.getState=function(){var e={};for(var t in this._state)Object.prototype.hasOwnProperty.call(this._state,t)&&(e[t]=this._state[t]);return e},W.prototype.setState=function(e,t){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(this._state[r]=e[r],this._dirtyKeys[r]=!0);this.mounted&&(t&&t.sync?this._flush():this._scheduleDirty())},W.prototype.push=function(e,t){var r=this.get(e),o=Array.isArray(r)?r.slice():[];o.push(t),this.set(e,o)},W.prototype.splice=function(e,t,r){var o=this.get(e),n=Array.isArray(o)?o.slice():[],i=[t,r].concat(Array.prototype.slice.call(arguments,3));Array.prototype.splice.apply(n,i),this.set(e,n)},W.prototype._scheduleDirty=function(){this._scheduled||(this._scheduled=!0,q._dirtyComponents.push(this),q._scheduleFlush())},W.prototype._compileBindings=function(){this._bindings=[],this._refCounter=0;var e=Object.keys(this._state),t=this;!function r(o,n){if(null==o||"object"!=typeof o||!o.t)return o;if("string"==typeof o.c&&o.c.indexOf("${")>=0){for(var i="bw_ref_"+t._refCounter++,a=q._parseBindings(o.c),s=[],l=0;l<a.length;l++)s=s.concat(q._extractDeps(a[l].expr,e));t._bindings.push({expr:o.c,type:"content",refId:i,deps:s,template:o.c}),o.a||(o.a={}),o.a["data-bw_ref"]=i}if(o.a)for(var c in o.a)if(Object.prototype.hasOwnProperty.call(o.a,c)&&"data-bw_ref"!==c){var d=o.a[c];if("string"==typeof d&&d.indexOf("${")>=0){for(var b="bw_ref_"+t._refCounter++,_=q._parseBindings(d),p=[],m=0;m<_.length;m++)p=p.concat(q._extractDeps(_[m].expr,e));t._bindings.push({expr:d,type:"attribute",attrName:c,refId:b,deps:p,template:d}),o.a||(o.a={}),o.a["data-bw_ref"]=o.a["data-bw_ref"]||b,o.a["data-bw_ref"]!==b&&(o.a["data-bw_ref_"+c]=b)}}if(Array.isArray(o.c))for(var u=0;u<o.c.length;u++){if(o.c[u]&&"object"==typeof o.c[u]&&o.c[u].t&&r(o.c[u],n.concat(u)),o.c[u]&&o.c[u]._bwWhen){var f="bw_ref_"+t._refCounter++,h=q._extractDeps(o.c[u].expr.replace(/^\$\{|\}$/g,""),e);t._bindings.push({expr:o.c[u].expr,type:"structural",subtype:"when",refId:f,deps:h,branches:o.c[u].branches,index:u,parentPath:n}),o.c[u]._refId=f}if(o.c[u]&&o.c[u]._bwEach){var w="bw_ref_"+t._refCounter++,g=q._extractDeps(o.c[u].expr.replace(/^\$\{|\}$/g,""),e);t._bindings.push({expr:o.c[u].expr,type:"structural",subtype:"each",refId:w,deps:g,factory:o.c[u].factory,index:u,parentPath:n}),o.c[u]._refId=w}}else o.c&&"object"==typeof o.c&&o.c.t&&r(o.c,n.concat(0));return o}(this.taco,[])},W.prototype._collectRefs=function(){if(this._bw_refs={},this.element){for(var e=this.element.querySelectorAll("[data-bw_ref]"),t=0;t<e.length;t++)this._bw_refs[e[t].getAttribute("data-bw_ref")]=e[t];var r=this.element.getAttribute&&this.element.getAttribute("data-bw_ref");r&&(this._bw_refs[r]=this.element)}},W.prototype.mount=function(e){this._hooks.willMount&&this._hooks.willMount(this),this._originalTaco||(this._originalTaco=this.taco),this.taco=this._deepCloneTaco(this._originalTaco),this._compileBindings(),this._prepareTaco(this.taco);var t=this;for(var r in this._actions)if(Object.prototype.hasOwnProperty.call(this._actions,r)){var o=this._bwId+"_"+r;(function(e){q.funcRegister(function(r){t._actions[e](t,r)},o)})(r),this._registeredActions.push(o)}this._wireActions(this.taco);var n=this._tacoForDOM(this.taco);this.element=q.createDOM(n),this.element._bwComponentHandle=this,this.element.setAttribute("data-bw_comp_id",this._bwId),this._userTag&&this.element.classList.add(this._userTag),e.appendChild(this.element),this._collectRefs(),this._resolveAndApplyAll(),this.mounted=!0,this._hooks.mounted&&(2===this._hooks.mounted.length?this._hooks.mounted(this.element,this.getState()):this._hooks.mounted(this))},W.prototype._prepareTaco=function(e){if(e&&"object"==typeof e)if(Array.isArray(e.c))for(var t=e.c.length-1;t>=0;t--){var r=e.c[t];if(r&&r._bwWhen){var o,n=r.expr.replace(/^\$\{|\}$/g,"");if(this._compile)try{o=new Function("state","with(state){return ("+n+");}")(this._state)}catch(e){o=!1}else o=q._evaluatePath(this._state,n);var i=o?r.branches[0]:r.branches[1]||null;e.c[t]=i?{t:"span",a:{"data-bw_when":r._refId,style:"display:contents"},c:i}:{t:"span",a:{"data-bw_when":r._refId,style:"display:contents"},c:""}}if(r&&r._bwEach){var a=r.expr.replace(/^\$\{|\}$/g,""),s=q._evaluatePath(this._state,a),l=[];if(Array.isArray(s))for(var c=0;c<s.length;c++)l.push(r.factory(s[c],c));e.c[t]={t:"span",a:{"data-bw_each":r._refId,style:"display:contents"},c:l}}e.c[t]&&"object"==typeof e.c[t]&&e.c[t].t&&this._prepareTaco(e.c[t])}else e.c&&"object"==typeof e.c&&e.c.t&&this._prepareTaco(e.c)},W.prototype._wireActions=function(e){if(e&&"object"==typeof e&&e.t){if(e.a)for(var t in e.a)if(Object.prototype.hasOwnProperty.call(e.a,t)&&t.startsWith("on")&&"string"==typeof e.a[t]){var r=e.a[t];if(r in this._actions)(function(r){e.a[t]=function(e){q.funcGetById(r)(e)}})(this._bwId+"_"+r)}if(Array.isArray(e.c))for(var o=0;o<e.c.length;o++)this._wireActions(e.c[o]);else e.c&&"object"==typeof e.c&&e.c.t&&this._wireActions(e.c)}},W.prototype._deepCloneTaco=function(e){if(null==e)return e;if(e._bwWhen)return{_bwWhen:!0,expr:e.expr,branches:[this._deepCloneTaco(e.branches[0]),e.branches[1]?this._deepCloneTaco(e.branches[1]):null],_refId:e._refId};if(e._bwEach)return{_bwEach:!0,expr:e.expr,factory:e.factory,_refId:e._refId};if("object"!=typeof e||!e.t)return e;var t={t:e.t};if(e.a)for(var r in t.a={},e.a)Object.prototype.hasOwnProperty.call(e.a,r)&&(t.a[r]=e.a[r]);return null!=e.c&&(Array.isArray(e.c)?t.c=e.c.map(function(e){return this._deepCloneTaco(e)}.bind(this)):"object"==typeof e.c?t.c=this._deepCloneTaco(e.c):t.c=e.c),e.o&&(t.o=e.o),t},W.prototype._tacoForDOM=function(e){if(!e||"object"!=typeof e||!e.t)return e;var t={t:e.t};return e.a&&(t.a=e.a),null!=e.c&&(Array.isArray(e.c)?t.c=e.c.map(function(e){return this._tacoForDOM(e)}.bind(this)):"object"==typeof e.c&&e.c.t?t.c=this._tacoForDOM(e.c):t.c=e.c),t},W.prototype.unmount=function(){if(this.mounted){this._hooks.unmount&&this._hooks.unmount(this);for(var e=0;e<this._eventListeners.length;e++){var t=this._eventListeners[e];this.element&&this.element.removeEventListener(t.event,t.handler)}this._eventListeners=[];for(var r=0;r<this._subs.length;r++)this._subs[r]();this._subs=[],this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.mounted=!1}},W.prototype.destroy=function(){this._hooks.willDestroy&&this._hooks.willDestroy(this),this.unmount();for(var e=0;e<this._registeredActions.length;e++)q.funcUnregister(this._registeredActions[e]);this._registeredActions=[],this._state={},this._bindings=[],this._bw_refs={},this._prevValues={},this._dirtyKeys={},this.element&&(delete this.element._bwComponentHandle,this.element=null)},W.prototype._flush=function(){this._scheduled=!1;var e=Object.keys(this._dirtyKeys);if(this._dirtyKeys={},0!==e.length&&this.mounted){this._hooks.willUpdate&&this._hooks.willUpdate(this,e);for(var t=!1,r=0;r<this._bindings.length;r++){var o=this._bindings[r];if("structural"===o.type){for(var n=0;n<o.deps.length;n++)if(e.indexOf(o.deps[n])>=0){t=!0;break}if(t)break}}if(t)this._render();else{var i=this._resolveBindings(e);this._applyPatches(i)}this._hooks.onUpdate&&this._hooks.onUpdate(this,e)}},W.prototype._resolveBindings=function(e){for(var t=[],r=0;r<this._bindings.length;r++){var o=this._bindings[r];if("structural"!==o.type){for(var n=!1,i=0;i<o.deps.length;i++)if(e.indexOf(o.deps[i])>=0){n=!0;break}if(n){var a=q._resolveTemplate(o.template,this._state,this._compile),s=o.refId+"_"+(o.attrName||"content");this._prevValues[s]!==a&&(this._prevValues[s]=a,t.push({refId:o.refId,type:o.type,attrName:o.attrName,value:a}))}}}return t},W.prototype._applyPatches=function(e){for(var t=0;t<e.length;t++){var r=e[t],o=this._bw_refs[r.refId];o&&("content"===r.type?o.textContent=r.value:"attribute"===r.type&&("class"===r.attrName?o.className=r.value:o.setAttribute(r.attrName,r.value)))}},W.prototype._resolveAndApplyAll=function(){for(var e=[],t=0;t<this._bindings.length;t++){var r=this._bindings[t];if("structural"!==r.type){var o=q._resolveTemplate(r.template,this._state,this._compile),n=r.refId+"_"+(r.attrName||"content");this._prevValues[n]=o,e.push({refId:r.refId,type:r.type,attrName:r.attrName,value:o})}}this._applyPatches(e)},W.prototype._render=function(){if(this.element&&this.element.parentNode){var e=this.element.parentNode,t=this.element.nextSibling;e.removeChild(this.element),this.taco=this._deepCloneTaco(this._originalTaco||this.taco),this._compileBindings(),this._prepareTaco(this.taco),this._wireActions(this.taco);var r=this._tacoForDOM(this.taco);this.element=q.createDOM(r),this.element._bwComponentHandle=this,this.element.setAttribute("data-bw_comp_id",this._bwId),t?e.insertBefore(this.element,t):e.appendChild(this.element),this._collectRefs(),this._resolveAndApplyAll()}},W.prototype.on=function(e,t){this.element&&this.element.addEventListener(e,t),this._eventListeners.push({event:e,handler:t})},W.prototype.off=function(e,t){this.element&&this.element.removeEventListener(e,t),this._eventListeners=this._eventListeners.filter(function(r){return!(r.event===e&&r.handler===t)})},W.prototype.sub=function(e,t){var r=q.sub(e,t);return this._subs.push(r),r},W.prototype.action=function(e){var t=this._actions[e];if(t){var r=[this].concat(Array.prototype.slice.call(arguments,1));return t.apply(null,r)}console.warn('ComponentHandle.action: unknown action "'+e+'"')},W.prototype.select=function(e){return this.element?this.element.querySelector(e):null},W.prototype.selectAll=function(e){return this.element?Array.prototype.slice.call(this.element.querySelectorAll(e)):[]},W.prototype.userTag=function(e){return this._userTag=e,this.element&&this.element.classList.add(e),this},q._ComponentHandle=W,q.when=function(e,t,r){return{_bwWhen:!0,expr:e,branches:[t,r||null]}},q.each=function(e,t){return{_bwEach:!0,expr:e,factory:t}},q.component=function(e){return new W(e)},q.message=function(e,t,r){var o=q.$('[data-bw_comp_id="'+e+'"]')[0];if(o||(o=q.$("."+e)[0]),!o||!o._bwComponentHandle)return!1;var n=o._bwComponentHandle;return"function"!=typeof n[t]?(console.warn('bw.message: unknown action "'+t+'" on component '+e),!1):(n[t](r),!0)},q._clientFunctions={},q._allowExec=!1,q._builtinClientFunctions={scrollTo:function(e){var t=q._el(e);t&&(t.scrollTop=t.scrollHeight)},focus:function(e){var t=q._el(e);t&&"function"==typeof t.focus&&t.focus()},download:function(e,t,r){if("undefined"!=typeof document){var o=new Blob([t],{type:r||"text/plain"}),n=document.createElement("a");n.href=URL.createObjectURL(o),n.download=e,n.click(),URL.revokeObjectURL(n.href)}},clipboard:function(e){"undefined"!=typeof navigator&&navigator.clipboard&&navigator.clipboard.writeText(e)},redirect:function(e){"undefined"!=typeof window&&(window.location.href=e)},log:function(){console.log.apply(console,arguments)}},q.clientParse=function(e){if("r"!==(e=(e||"").trim()).charAt(0))return JSON.parse(e);for(var t=[],r=0,o=(e=e.slice(1)).length;r<o;){var n=e[r];if("'"===n){for(t.push('"'),r++;r<o;){var i=e[r];if("\\"===i&&r+1<o){var a=e[r+1];"'"===a?t.push("'"):(t.push("\\"),t.push(a)),r+=2}else if('"'===i)t.push('\\"'),r++;else{if("'"===i)break;t.push(i),r++}}t.push('"'),r++}else if('"'===n)for(t.push(n),r++;r<o;){var s=e[r];if("\\"===s&&r+1<o)t.push(s),t.push(e[r+1]),r+=2;else if(t.push(s),r++,'"'===s)break}else if(","===n){for(var l=r+1;l<o&&(" "===e[l]||"\t"===e[l]||"\n"===e[l]||"\r"===e[l]);)l++;l<o&&("}"===e[l]||"]"===e[l])||t.push(n),r++}else t.push(n),r++}return JSON.parse(t.join(""))},q.clientApply=function(e){if(!e||!e.type)return!1;var t=e.type,r=e.target;if("replace"===t){var o=q._el(r);return!!o&&(q.DOM(o,e.node),!0)}if("patch"===t)return null!==q.patch(r,e.content,e.attr);if("append"===t){var n=q._el(r);if(!n)return!1;var i=q.createDOM(e.node);return n.appendChild(i),!0}if("remove"===t){var a=q._el(r);return!!a&&("function"==typeof q.cleanup&&q.cleanup(a),a.remove(),!0)}if("batch"===t){if(!Array.isArray(e.ops))return!1;var s=!0;return e.ops.forEach(function(e){q.clientApply(e)||(s=!1)}),s}if("message"===t)return q.message(e.target,e.action,e.data);if("register"===t){if(!e.name||!e.body)return!1;try{return q._clientFunctions[e.name]=new Function("return "+e.body)(),!0}catch(t){return console.error("[bw] register error:",e.name,t),!1}}else if("call"===t){if(!e.name)return!1;var l=q._clientFunctions[e.name]||q._builtinClientFunctions[e.name];if("function"!=typeof l)return!1;try{var c=Array.isArray(e.args)?e.args:[];return l.apply(null,c),!0}catch(t){return console.error("[bw] call error:",e.name,t),!1}}else if("exec"===t){if(!q._allowExec)return console.warn("[bw] exec rejected: allowExec is not enabled"),!1;if(!e.code)return!1;try{return new Function(e.code)(),!0}catch(e){return console.error("[bw] exec error:",e),!1}}return!1},q.clientConnect=function(e,t){var r=(t=t||{}).transport||"sse",o=t.actionUrl||e.replace(/\/events\//,"/action/"),n=!1!==t.reconnect,i=t.onStatus||function(){},a=t.onMessage||null,s={};q._allowExec=!!t.allowExec;var l={status:"connecting",_es:null,_pollTimer:null};function c(e){l.status=e,i(e)}function d(e){try{var t="string"==typeof e?q.clientParse(e):e;a&&a(t),s.message&&s.message(t),q.clientApply(t)}catch(e){s.error&&s.error(e)}}if("sse"===r&&"undefined"!=typeof EventSource){c("connecting");var b=new EventSource(e);l._es=b,b.onopen=function(){c("connected"),s.open&&s.open()},b.onmessage=function(e){d(e.data)},b.onerror=function(){"connected"===l.status&&c("disconnected"),s.error&&s.error(new Error("SSE connection error")),n||b.close()}}else if("poll"===r){var _=t.interval||2e3;c("connected"),l._pollTimer=setInterval(function(){fetch(e).then(function(e){return e.json()}).then(function(e){Array.isArray(e)?e.forEach(d):e&&e.type&&d(e)}).catch(function(e){s.error&&s.error(e)})},_)}return l.sendAction=function(e,t){var r=JSON.stringify({type:"action",action:e,data:t||{}});fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:r}).catch(function(e){s.error&&s.error(e)})},l.on=function(e,t){return s[e]=t,l},l.close=function(){l._es&&(l._es.close(),l._es=null),l._pollTimer&&(clearInterval(l._pollTimer),l._pollTimer=null),c("disconnected"),s.close&&s.close()},l},q.inspect=function(e){var t,r=e;if(e&&!0===e._bwComponent)r=e.element,t=e;else{if("string"==typeof e&&(r=q.$(e)[0]),!r)return console.warn("bw.inspect: element not found"),null;t=r._bwComponentHandle}if(!t)return console.log("bw.inspect: no ComponentHandle on this element"),console.log(" Tag:",r.tagName),console.log(" Classes:",r.className),console.log(" _bw_state:",r._bw_state||"(none)"),null;var o=t._bindings.reduce(function(e,t){return e.concat(t.deps||[])},[]).filter(function(e,t,r){return r.indexOf(e)===t});return console.group("Component: "+t._bwId),console.log("State:",t._state),console.log("Bindings:",t._bindings.length,"(deps:",o,")"),console.log("Methods:",Object.keys(t._methods)),console.log("Actions:",Object.keys(t._actions)),console.log("User tag:",t._userTag||"(none)"),console.log("Mounted:",t.mounted),console.log("Element:",t.element),console.groupEnd(),t},q.compile=function(e){var t=[];return function e(r){if(r&&"object"==typeof r){if("string"==typeof r.c&&r.c.indexOf("${")>=0)for(var o=q._parseBindings(r.c),n=0;n<o.length;n++)try{t.push({expr:o[n].expr,fn:new Function("state","with(state){return ("+o[n].expr+");}")})}catch(e){t.push({expr:o[n].expr,fn:function(){return""}})}if(r.a)for(var i in r.a)if(Object.prototype.hasOwnProperty.call(r.a,i)){var a=r.a[i];if("string"==typeof a&&a.indexOf("${")>=0)for(var s=q._parseBindings(a),l=0;l<s.length;l++)try{t.push({expr:s[l].expr,fn:new Function("state","with(state){return ("+s[l].expr+");}")})}catch(e){t.push({expr:s[l].expr,fn:function(){return""}})}}if(Array.isArray(r.c))for(var c=0;c<r.c.length;c++)e(r.c[c]);else r.c&&"object"==typeof r.c&&r.c.t&&e(r.c)}}(e),function(r){var o=new W(e);if(o._compile=!0,o._precompiledBindings=t,r)for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(o._state[n]=r[n]);return o}},q.css=function(e,t={}){const{minify:r=!1,pretty:o=!r}=t;if("string"==typeof e)return e;let n="";const i=o?" ":"",a=o?"\n":"",s=o?" ":"";return Array.isArray(e)?n=e.map(e=>q.css(e,t)).join(a):"object"==typeof e&&Object.entries(e).forEach(([e,r])=>{if("object"==typeof r&&!Array.isArray(r)){if("@"===e.charAt(0)){const o=q.css(r,t);return void(o&&(n+=`${e}${s}{${a}${o}${a}}${a}`))}const o=Object.entries(r).filter(([,e])=>null!=e).map(([e,t])=>{const r=e.replace(/[A-Z]/g,e=>"-"+e.toLowerCase());return`${i}${r}:${s}${t};`}).join(a);o&&(n+=`${e}${s}{${a}${o}${a}}${a}`)}}),n.trim()},q.injectCSS=function(e,t={}){if(!q._isBrowser)return console.warn("bw.injectCSS requires a DOM environment"),null;const{id:r="bw_styles",append:o=!0}=t;let n=document.getElementById(r);n||(n=document.createElement("style"),n.id=r,n.type="text/css",document.head.appendChild(n));const i="string"==typeof e?e:q.css(e,t);return o&&n.textContent?n.textContent+="\n"+i:n.textContent=i,n},q.s=function(){for(var e={},t=0;t<arguments.length;t++){var r=arguments[t];r&&"object"==typeof r&&Object.assign(e,r)}return e},q.u={flex:{display:"flex"},flexCol:{display:"flex",flexDirection:"column"},flexRow:{display:"flex",flexDirection:"row"},flexWrap:{display:"flex",flexWrap:"wrap"},block:{display:"block"},inline:{display:"inline"},hidden:{display:"none"},justifyCenter:{justifyContent:"center"},justifyBetween:{justifyContent:"space-between"},justifyEnd:{justifyContent:"flex-end"},alignCenter:{alignItems:"center"},alignStart:{alignItems:"flex-start"},alignEnd:{alignItems:"flex-end"},gap1:{gap:"0.25rem"},gap2:{gap:"0.5rem"},gap3:{gap:"0.75rem"},gap4:{gap:"1rem"},gap6:{gap:"1.5rem"},gap8:{gap:"2rem"},p0:{padding:"0"},p1:{padding:"0.25rem"},p2:{padding:"0.5rem"},p3:{padding:"0.75rem"},p4:{padding:"1rem"},p6:{padding:"1.5rem"},p8:{padding:"2rem"},px4:{paddingLeft:"1rem",paddingRight:"1rem"},py2:{paddingTop:"0.5rem",paddingBottom:"0.5rem"},py4:{paddingTop:"1rem",paddingBottom:"1rem"},m0:{margin:"0"},m4:{margin:"1rem"},mt2:{marginTop:"0.5rem"},mt4:{marginTop:"1rem"},mb2:{marginBottom:"0.5rem"},mb4:{marginBottom:"1rem"},mx_auto:{marginLeft:"auto",marginRight:"auto"},textSm:{fontSize:"0.875rem"},textBase:{fontSize:"1rem"},textLg:{fontSize:"1.125rem"},textXl:{fontSize:"1.25rem"},text2xl:{fontSize:"1.5rem"},text3xl:{fontSize:"1.875rem"},bold:{fontWeight:"700"},semibold:{fontWeight:"600"},italic:{fontStyle:"italic"},textCenter:{textAlign:"center"},textRight:{textAlign:"right"},bgWhite:{background:"#ffffff"},bgTeal:{background:"#006666",color:"#ffffff"},textWhite:{color:"#ffffff"},textTeal:{color:"#006666"},textMuted:{color:"#888"},rounded:{borderRadius:"0.375rem"},roundedLg:{borderRadius:"0.5rem"},roundedFull:{borderRadius:"9999px"},border:{border:"1px solid #d8d8d8"},wFull:{width:"100%"},hFull:{height:"100%"},transition:{transition:"all 0.2s ease"}},q.responsive=function(e,t){var r={sm:"576px",md:"768px",lg:"992px",xl:"1200px"},o=[];return Object.keys(t).forEach(function(n){var i={};"base"===n?(i[e]=t[n],o.push(q.css(i))):r[n]&&(i[e]=t[n],o.push("@media (min-width: "+r[n]+") {\n"+q.css(i)+"\n}"))}),o.join("\n")},q.mapScale=P,q.clip=D,q._isBrowser&&(q.$=function(e){return e?Array.isArray(e)?e:e.nodeType?[e]:void 0!==e.length&&"string"!=typeof e?Array.from(e):"string"==typeof e?Array.from(document.querySelectorAll(e)):[]:[]},q.$.one=function(e){return q.$(e)[0]||null}),q.loadDefaultStyles=function(e={}){const{minify:t=!0,palette:r}=e;if(q._isBrowser){var o=q.css(L());q.injectCSS(o,{id:"bw_structural",append:!1,minify:t})}var n=Object.assign({},M,r||{});return q.generateTheme("",Object.assign({},n,{inject:!0}))},q.generateTheme=function(e,t){if(!t||!t.primary||!t.secondary)throw new Error("bw.generateTheme requires config.primary and config.secondary");var r=Object.assign({},M,t);t.tertiary||(r.tertiary=r.primary);var o=h(r),n=function(e){var t=e&&e.spacing||"normal",r=e&&e.radius||"md",o=e&&e.fontSize||1,n=e&&e.typeRatio||"normal",i="string"==typeof n?A[n]||A.normal:n,a=e&&e.elevation||"md",s=e&&e.motion||"standard";return{spacing:"string"==typeof t?C[t]||C.normal:t,radius:"string"==typeof r?j[r]||j.md:r,fontSize:o,typeScale:O(16,i),elevation:"string"==typeof a?S[a]||S.md:a,motion:"string"==typeof s?z[s]||z.standard:s}}(r),i=E(e,o,n),a=q.css(i),s=h(f(r)),l=function(e,t,r){var o=E("",t,r),n=e?"."+e+".bw_theme_alt":".bw_theme_alt",i={};for(var a in o)if(o.hasOwnProperty(a))if("@"===a.charAt(0)){var s=o[a],l={};for(var c in s)s.hasOwnProperty(c)&&(l[n+" "+c]=s[c]);i[a]=l}else{for(var d=a.split(","),b=[],_=0;_<d.length;_++){var p=d[_].trim();"body"===p||p.indexOf("body"),b.push(n+" "+p)}i[b.join(", ")]=o[a]}return i[n+" body, :root"+n+" body"]={color:t.dark.base,"background-color":t.light.base},i}
59
+ /**
60
+ * Bitwrench v2 File I/O Functions
61
+ *
62
+ * Save/load files in both Node.js and browser environments.
63
+ * Node uses fs module, browser uses Blob/XHR/FileReader.
64
+ *
65
+ * Called via bindFileOps(bw) which attaches all functions to the bw namespace.
66
+ * This preserves the same public API (bw.saveClientFile, bw.loadClientFile, etc.)
67
+ * while keeping the implementation in a separate module.
68
+ *
69
+ * @module bitwrench-file-ops
70
+ * @license BSD-2-Clause
71
+ * @author M A Chatterjee <deftio [at] deftio [dot] com>
72
+ */(e,s,n),c=q.css(l),d=u(r);if(!1!==t.inject&&q._isBrowser){var b=e?e.replace(/-/g,"_"):"",_=b?"bw_theme_"+b:"bw_theme_default",p=b?"bw_theme_"+b+"_alt":"bw_theme_default_alt";q.injectCSS(a,{id:_,append:!1}),q.injectCSS(c,{id:p,append:!1}),q._activeThemeStyleIds=[_,p]}e||(q.u.bgTeal={background:o.primary.base,color:o.primary.textOn},q.u.textTeal={color:o.primary.base},q.u.bgWhite={background:"#ffffff"},q.u.textWhite={color:"#ffffff"});var m={css:a,palette:o,name:e,isLightPrimary:d,alternate:{css:c,palette:s}};return q._activeTheme=m,q._activeThemeMode="primary",m},q.applyTheme=function(e){if(!q._isBrowser)return e||"primary";var t,r=document.documentElement,o=!q._activeTheme||q._activeTheme.isLightPrimary;return(t="primary"!==e&&("alternate"===e||("light"===e?!o:"dark"===e&&o)))?r.classList.add("bw_theme_alt"):r.classList.remove("bw_theme_alt"),q._activeThemeMode=t?"alternate":"primary",q._activeThemeMode},q.toggleTheme=function(){var e=q._activeThemeMode||"primary";return q.applyTheme("primary"===e?"alternate":"primary")},q.clearTheme=function(){q._activeThemeStyleIds&&q._isBrowser&&(q._activeThemeStyleIds.forEach(function(e){var t=document.getElementById(e);t&&t.remove()}),q._activeThemeStyleIds=null),q._activeTheme=null,q._activeThemeMode="primary"},q.hexToHsl=a,q.hslToHex=s,q.adjustLightness=l,q.mixColor=c,q.relativeLuminance=d,q.textOnColor=b,q.deriveShades=p,q.derivePalette=h,q.harmonize=_,q.deriveAlternateSeed=m,q.deriveAlternateConfig=f,q.isLightPalette=u,q.SPACING_PRESETS=C,q.RADIUS_PRESETS=j,q.TYPE_RATIO_PRESETS=A,q.ELEVATION_PRESETS=S,q.MOTION_PRESETS=z,q.generateTypeScale=O,q.DEFAULT_PALETTE_CONFIG=M,q.THEME_PRESETS={teal:{primary:"#006666",secondary:"#6c757d",tertiary:"#006666"},ocean:{primary:"#0077b6",secondary:"#90e0ef",tertiary:"#00b4d8"},sunset:{primary:"#e76f51",secondary:"#264653",tertiary:"#e9c46a"},forest:{primary:"#2d6a4f",secondary:"#95d5b2",tertiary:"#52b788"},slate:{primary:"#343a40",secondary:"#adb5bd",tertiary:"#6c757d"},rose:{primary:"#e11d48",secondary:"#fda4af",tertiary:"#fb7185"},indigo:{primary:"#4f46e5",secondary:"#a5b4fc",tertiary:"#818cf8"},amber:{primary:"#d97706",secondary:"#fbbf24",tertiary:"#f59e0b"},emerald:{primary:"#059669",secondary:"#6ee7b7",tertiary:"#34d399"},nord:{primary:"#5e81ac",secondary:"#88c0d0",tertiary:"#81a1c1"},coral:{primary:"#ef6461",secondary:"#4a7c7e",tertiary:"#e8a87c"},midnight:{primary:"#1e3a5f",secondary:"#7c8db5",tertiary:"#3d5a80"}},q.choice=function(e,t,r){const o=e in t?t[e]:r;return"function"===N(o)?o(e):o},q.arrayUniq=B,q.arrayBinA=function(e,t){return"array"!==N(e)||"array"!==N(t)?[]:B(e.filter(e=>-1!==t.indexOf(e)))},q.arrayBNotInA=function(e,t){return"array"!==N(e)||"array"!==N(t)?[]:B(t.filter(t=>e.indexOf(t)<0))},q.colorInterp=function(e,t,r,n,i){return function(e,t,r,o,n,i){let a=Array.isArray(o)?o:["#000","#fff"];if(a=0===a.length?["#000","#fff"]:a,1===a.length)return a[0];a=a.map(e=>i(e));const s=P(e,t,r,0,a.length-1,{clip:!0,expScale:n}),l=D(Math.floor(s),0,a.length-2),c=s-l,d=e=>P(c,0,1,a[l][e],a[l+1][e],{clip:!0});return[d(0),d(1),d(2),d(3),"rgb"]}(e,t,r,n,i,o)},q.colorHslToRgb=i,q.colorRgbToHsl=n,q.colorParse=o,q.setCookie=function(e,t,r,o={}){if(!q._isBrowser)return;const n=new Date;n.setTime(n.getTime()+24*r*60*60*1e3);let i=`${e}=${t}; expires=${n.toUTCString()}`;o.path&&(i+=`; path=${o.path}`),o.domain&&(i+=`; domain=${o.domain}`),o.secure&&(i+="; secure"),o.sameSite&&(i+=`; samesite=${o.sameSite}`),document.cookie=i},q.getCookie=function(e,t){if(!q._isBrowser)return t;const r=e+"=",o=document.cookie.split(";");for(let e=0;e<o.length;e++){let t=o[e];for(;" "===t.charAt(0);)t=t.substring(1);if(0===t.indexOf(r))return t.substring(r.length,t.length)}return t},q.getURLParam=function(e,t){if(!q._isBrowser||"object"!=typeof window)return t;try{const r=new URLSearchParams(window.location.search);if(!e){const e={};for(const[t,o]of r)e[t]=o||!0;return e}return r.has(e)?r.get(e)||!0:t}catch(e){return t}},q.loremIpsum=function(e,t,r=!0){const o="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. ";"number"!=typeof e&&(e=Math.floor(125*Math.random())+25),void 0===t&&(t=Math.floor(446*Math.random())),t%=446;let n=0;for(;" "===o[t]||/[.,:;!?]/.test(o[t]);)if(t=(t+1)%446,n++,n>=446){t=0,n=0;break}let i=o.substring(t)+o.substring(0,t),a="",s=e+n;for(;s>0;)a+=s<i.length?i.substring(0,s):i,s-=i.length;if(a.length>e&&(a=a.substring(0,e))," "===a[a.length-1]&&(a=a.substring(0,a.length-1)+"."),r){let e=a[0].toUpperCase();e=/[A-Z]/.test(e)?e:"L",a=e+a.substring(1)}return a},q.multiArray=function(e,t){t="number"==typeof t?[t]:t;const r=o=>{if(o>=t.length)return"function"===N(e)?e():e;const n=[];for(let e=0;e<t[o];e++)n[e]=r(o+1);return n};return r(0)},q.naturalCompare=function(e,t){if(isFinite(e)&&isFinite(t))return Math.sign(e-t);const r=String(e).toLowerCase(),o=String(t).toLowerCase();if(r===o)return e>t?1:0;if(!/\d/.test(r)||!/\d/.test(o))return r>o?1:-1;const n=r.match(/(\d+|\D+)/g)||[],i=o.match(/(\d+|\D+)/g)||[],a=Math.min(n.length,i.length);for(let e=0;e<a;e++){const t=n[e],r=i[e];if(t!==r){if(/^\d+$/.test(t)&&/^\d+$/.test(r)){let e=t,o=r;return"0"===t[0]&&(e="0."+t),"0"===r[0]&&(o="0."+r),parseFloat(e)-parseFloat(o)}return t>r?1:-1}}return n.length-i.length},q.setIntervalX=function(e,t,r){let o=0;const n=setInterval(function(){e(o),++o>=r&&clearInterval(n)},t);return n},q.repeatUntil=function(e,t,r,o=250,n=10,i){if("function"!=typeof e)return"err";let a=0;const s=setInterval(function(){const o=e();a++,o?(clearInterval(s),t&&t(o),i&&i(!0,a)):a>=n?(clearInterval(s),r&&r(),i&&i(!1,a)):r&&r()},o);return s},function(e){e.saveClientFile=function(t,r){if(e.isNodeJS())e._getFs().then(function(e){e?e.writeFile(t,r,function(e){e&&console.error("Error saving file:",e)}):console.error("bw.saveClientFile: fs module not available")});else{var o=new Blob([r],{type:"application/octet-stream"}),n=window.URL.createObjectURL(o),i=e.createDOM({t:"a",a:{href:n,download:t,style:"display: none"}});document.body.appendChild(i),i.click(),window.URL.revokeObjectURL(n),document.body.removeChild(i)}},e.saveClientJSON=function(t,r){e.saveClientFile(t,JSON.stringify(r,null,2))},e.loadClientFile=function(t,r,o){var n={parser:"raw"};o&&o.parser&&(n.parser=o.parser);var i="JSON"===n.parser?JSON.parse:function(e){return e};if(e.isNodeJS())e._getFs().then(function(e){e?e.readFile(t,"utf8",function(e,t){if(e)r(null,e);else try{r(i(t),null)}catch(e){r(null,e)}}):r(null,new Error("fs module not available"))});else{var a=new XMLHttpRequest;a.open("GET",t,!0),a.onreadystatechange=function(){if(4===a.readyState)if(a.status>=200&&a.status<300)try{r(i(a.responseText),null)}catch(e){r(null,e)}else r(null,new Error("HTTP "+a.status+": "+t))},a.send(null)}return"BW_OK"},e.loadClientJSON=function(t,r){return e.loadClientFile(t,r,{parser:"JSON"})},e.loadLocalFile=function(t,r){var o={parser:"raw",accept:""};r&&(r.parser&&(o.parser=r.parser),r.accept&&(o.accept=r.accept));var n="JSON"===o.parser?JSON.parse:function(e){return e};if(e.isNodeJS())t(null,"",new Error("bw.loadLocalFile is browser-only. Use bw.loadClientFile() in Node."));else{var i=e.createDOM({t:"input",a:{type:"file",accept:o.accept,style:"display: none"}});i.addEventListener("change",function(){var e=i.files[0];if(e){var r=new FileReader;r.onload=function(r){try{t(n(r.target.result),e.name,null)}catch(r){t(null,e.name,r)}},r.onerror=function(){t(null,e.name,r.error)},r.readAsText(e),i.remove()}else t(null,"",new Error("No file selected"))}),document.body.appendChild(i),i.click()}},e.loadLocalJSON=function(t){e.loadLocalFile(t,{parser:"JSON",accept:".json"})}}(q),q.copyToClipboard=function(e){return navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(e):new Promise((t,r)=>{const o=q.createDOM({t:"textarea",a:{value:e,style:{position:"fixed",top:"-999px",left:"-999px",width:"2em",height:"2em",padding:0,border:"none",outline:"none",boxShadow:"none",background:"transparent"}}});document.body.appendChild(o),o.focus(),o.select();try{const e=document.execCommand("copy");document.body.removeChild(o),e?t():r(new Error("Copy command failed"))}catch(e){document.body.removeChild(o),r(e)}})},q.makeTable=function(e){const{data:t=[],columns:r,className:o="",striped:n=!1,hover:i=!1,sortable:a=!0,onSort:s,sortColumn:l,sortDirection:c="asc"}=e;let d="bw_table";n&&(d+=" bw_table_striped"),i&&(d+=" bw_table_hover"),o&&(d+=" "+o),d=d.trim();const b=r||(t.length>0?Object.keys(t[0]).map(e=>({key:e,label:e})):[]);let _=l||null,p=c,m=[...t];_&&m.sort((e,t)=>{const r=e[_],o=t[_];if("number"==typeof r&&"number"==typeof o)return"asc"===p?r-o:o-r;const n=String(r||"").toLowerCase(),i=String(o||"").toLowerCase();return"asc"===p?n.localeCompare(i):i.localeCompare(n)});return{t:"table",a:{class:d},c:[{t:"thead",c:{t:"tr",c:b.map(e=>({t:"th",a:a?{style:{cursor:"pointer",userSelect:"none"},onclick:()=>{return t=e.key,void(a&&(_===t?p="asc"===p?"desc":"asc":(_=t,p="asc"),s&&s(t,p)));var t}}:{},c:[e.label,a&&_===e.key&&{t:"span",a:{style:{marginLeft:"5px"}},c:"asc"===p?"▲":"▼"}].filter(Boolean)}))}},{t:"tbody",c:m.map(e=>({t:"tr",c:b.map(t=>({t:"td",c:t.render?t.render(e[t.key],e):String(e[t.key]||"")}))}))}]}},q.makeTableFromArray=function(e){const{data:t=[],headerRow:r=!0,columns:o,...n}=e;if(!Array.isArray(t)||0===t.length)return q.makeTable({data:[],columns:o||[],...n});let i,a;if(r&&t.length>0)i=t[0].map(function(e){return String(e)}),a=t.slice(1);else{const e=t[0].length;i=[];for(let t=0;t<e;t++)i.push("col"+t);a=t}const s=a.map(function(e){const t={};return i.forEach(function(r,o){t[r]=void 0!==e[o]?e[o]:""}),t}),l=o||i.map(function(e){return{key:e,label:e}});return q.makeTable({data:s,columns:l,...n})},q.makeBarChart=function(e){const{data:t=[],labelKey:r="label",valueKey:o="value",title:n,color:i="#006666",height:a="200px",formatValue:s,showValues:l=!0,showLabels:c=!0,className:d=""}=e;if(!Array.isArray(t)||0===t.length)return{t:"div",a:{class:("bw_bar_chart_container "+d).trim()},c:""};const b=t.map(function(e){return Number(e[o])||0}),_=Math.max.apply(null,b),p=t.map(function(e,t){const o=b[t],n=_>0?o/_*100:0,a=s?s(o):String(o),d=[];return l&&d.push({t:"div",a:{class:"bw_bar_value"},c:a}),d.push({t:"div",a:{class:"bw_bar",style:"height:"+n+"%;background:"+i+";"}}),c&&d.push({t:"div",a:{class:"bw_bar_label"},c:String(e[r]||"")}),{t:"div",a:{class:"bw_bar_group"},c:d}}),m=[];return n&&m.push({t:"h3",a:{class:"bw_bar_chart_title"},c:n}),m.push({t:"div",a:{class:"bw_bar_chart",style:"height:"+a+";"},c:p}),{t:"div",a:{class:("bw_bar_chart_container "+d).trim()},c:m}},q.makeDataTable=function(e){const{title:t,data:r,columns:o,className:n="",striped:i=!0,hover:a=!0,responsive:s=!0,...l}=e,c=q.makeTable({data:r,columns:o,className:n,striped:i,hover:a,...l}),d=[];return t&&d.push({t:"h5",a:{class:"mb-3"},c:t}),s?d.push({t:"div",a:{class:"table-responsive"},c:c}):d.push(c),{t:"div",a:{class:"table-container"},c:d}},q._componentRegistry=new Map,q.render=function(e,t,r){const o="string"==typeof e?document.querySelector(e):e;if(!o)return{object_type:"error",component_id:null,object_handle_in_dom:null,status_code:"error=target_element_not_found"};const n=r.o?.id||q.uuid();let i;try{i=q.createDOM(r)}catch(e){return{object_type:"error",component_id:n,object_handle_in_dom:null,status_code:`error=render_failed:${e.message}`}}i.setAttribute("data-bw_id",n);try{switch(t){case"replace":o.parentNode.replaceChild(i,o);break;case"prepend":o.insertBefore(i,o.firstChild);break;case"append":o.appendChild(i);break;case"before":o.parentNode.insertBefore(i,o);break;case"after":o.parentNode.insertBefore(i,o.nextSibling);break;default:throw new Error(`Invalid position: ${t}`)}}catch(e){return{object_type:"error",component_id:n,object_handle_in_dom:null,status_code:`error=insertion_failed:${e.message}`}}const a={object_type:r.t||"element",component_id:n,object_handle_in_dom:i,status_code:"success",_taco:{...r},_state:{...r.o?.state||{}},_mounted:!0,get element(){return this.object_handle_in_dom},getState(){return{...this._state}},setState(e){return this._state={...this._state,...e},this._taco.o?.onStateChange&&this._taco.o.onStateChange(this._state,e),this},update(){if(!this._mounted||!this.element)return this;const e=this.element.parentNode;this._taco.o&&(this._taco.o.state=this._state);const t=q.createDOM(this._taco);return t.setAttribute("data-bw_id",n),e.replaceChild(t,this.element),this.object_handle_in_dom=t,this._taco.o?.onUpdate&&this._taco.o.onUpdate(t,this._state),this},getProp(e){return this._taco.a?.[e]},setProp(e,t){return this._taco.a||(this._taco.a={}),this._taco.a[e]=t,this.element&&(null==t?this.element.removeAttribute(e):!0===t?this.element.setAttribute(e,""):this.element.setAttribute(e,String(t))),this},getContent(){return this._taco.c},setContent(e){return this._taco.c=e,this.element&&("string"==typeof e?this.element.textContent=e:this.update()),this},addClass(e){return this.element&&this.element.classList.add(e),this},removeClass(e){return this.element&&this.element.classList.remove(e),this},toggleClass(e){return this.element&&this.element.classList.toggle(e),this},hasClass(e){return!!this.element&&this.element.classList.contains(e)},show(){return this.element&&(this.element.style.display=""),this},hide(){return this.element&&(this.element.style.display="none"),this},on(e,t){return this.element&&this.element.addEventListener(e,t),this},off(e,t){return this.element&&this.element.removeEventListener(e,t),this},destroy(){return this._mounted?(this._taco.o?.unmount&&this._taco.o.unmount(this.element),this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element),q._componentRegistry.delete(n),this._mounted=!1,this.object_handle_in_dom=null,this.status_code="destroyed",this):this}};return q._componentRegistry.set(n,a),r.o?.mounted&&r.o.mounted(i,a),a},q.getComponent=function(e){return q._componentRegistry.get(e)||null},q.getAllComponents=function(){return new Map(q._componentRegistry)},Object.entries(H).forEach(([e,t])=>{e.startsWith("make")&&(q[e]=t)}),q.make=U,q.BCCL=R,q.variantClass=F,Object.entries(H).forEach(([e,t])=>{if(e.startsWith("make")){const r="create"+e.substring(4);q[r]=function(e){const r=t(e);return q.renderComponent(r)}}}),q._isBrowser&&"undefined"!=typeof window&&(window.bw=q),q});
44
73
  //# sourceMappingURL=bitwrench-lean.umd.min.js.map