diff --git a/jetty/src/main/resources/webapp/index.371372f8.css b/jetty/src/main/resources/webapp/index.371372f8.css deleted file mode 100644 index 2c0d4e3..0000000 --- a/jetty/src/main/resources/webapp/index.371372f8.css +++ /dev/null @@ -1,2 +0,0 @@ -*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{color:inherit;border-top-width:1px;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]{display:none}:root,[data-theme]{background-color:var(--fallback-b1,oklch(var(--b1)/1));color:var(--fallback-bc,oklch(var(--bc)/1))}@supports not (color:oklch(0% 0 0)){:root{color-scheme:light;--fallback-p:#491eff;--fallback-pc:#d4dbff;--fallback-s:#ff41c7;--fallback-sc:#fff9fc;--fallback-a:#00cfbd;--fallback-ac:#00100d;--fallback-n:#2b3440;--fallback-nc:#d7dde4;--fallback-b1:#fff;--fallback-b2:#e5e6e6;--fallback-b3:#e5e6e6;--fallback-bc:#1f2937;--fallback-in:#00b3f0;--fallback-inc:#000;--fallback-su:#00ca92;--fallback-suc:#000;--fallback-wa:#ffc22d;--fallback-wac:#000;--fallback-er:#ff6f70;--fallback-erc:#000}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--fallback-p:#7582ff;--fallback-pc:#050617;--fallback-s:#ff71cf;--fallback-sc:#190211;--fallback-a:#00c7b5;--fallback-ac:#000e0c;--fallback-n:#2a323c;--fallback-nc:#a6adbb;--fallback-b1:#1d232a;--fallback-b2:#191e24;--fallback-b3:#15191e;--fallback-bc:#a6adbb;--fallback-in:#00b3f0;--fallback-inc:#000;--fallback-su:#00ca92;--fallback-suc:#000;--fallback-wa:#ffc22d;--fallback-wac:#000;--fallback-er:#ff6f70;--fallback-erc:#000}}}html{-webkit-tap-highlight-color:transparent}*{scrollbar-color:color-mix(in oklch,currentColor 35%,transparent)transparent}:hover{scrollbar-color:color-mix(in oklch,currentColor 60%,transparent)transparent}:root{color-scheme:light;--in:72.06% .191 231.6;--su:64.8% .15 160;--wa:84.71% .199 83.87;--er:71.76% .221 22.18;--pc:89.824% .06192 275.75;--ac:15.352% .0368 183.61;--inc:0% 0 0;--suc:0% 0 0;--wac:0% 0 0;--erc:0% 0 0;--rounded-box:1rem;--rounded-btn:.5rem;--rounded-badge:1.9rem;--animation-btn:.25s;--animation-input:.2s;--btn-focus-scale:.95;--border-btn:1px;--tab-border:1px;--tab-radius:.5rem;--p:49.12% .3096 275.75;--s:69.71% .329 342.55;--sc:98.71% .0106 342.55;--a:76.76% .184 183.61;--n:32.1785% .02476 255.702;--nc:89.4994% .011585 252.096;--b1:100% 0 0;--b2:96.1151% 0 0;--b3:92.4169% .00108 197.138;--bc:27.8078% .029596 256.848}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--in:72.06% .191 231.6;--su:64.8% .15 160;--wa:84.71% .199 83.87;--er:71.76% .221 22.18;--pc:13.138% .0392 275.75;--sc:14.96% .052 342.55;--ac:14.902% .0334 183.61;--inc:0% 0 0;--suc:0% 0 0;--wac:0% 0 0;--erc:0% 0 0;--rounded-box:1rem;--rounded-btn:.5rem;--rounded-badge:1.9rem;--animation-btn:.25s;--animation-input:.2s;--btn-focus-scale:.95;--border-btn:1px;--tab-border:1px;--tab-radius:.5rem;--p:65.69% .196 275.75;--s:74.8% .26 342.55;--a:74.51% .167 183.61;--n:31.3815% .021108 254.139;--nc:74.6477% .0216 264.436;--b1:25.3267% .015896 252.418;--b2:23.2607% .013807 253.101;--b3:21.1484% .01165 254.088;--bc:74.6477% .0216 264.436}}[data-theme=light]{color-scheme:light;--in:72.06% .191 231.6;--su:64.8% .15 160;--wa:84.71% .199 83.87;--er:71.76% .221 22.18;--pc:89.824% .06192 275.75;--ac:15.352% .0368 183.61;--inc:0% 0 0;--suc:0% 0 0;--wac:0% 0 0;--erc:0% 0 0;--rounded-box:1rem;--rounded-btn:.5rem;--rounded-badge:1.9rem;--animation-btn:.25s;--animation-input:.2s;--btn-focus-scale:.95;--border-btn:1px;--tab-border:1px;--tab-radius:.5rem;--p:49.12% .3096 275.75;--s:69.71% .329 342.55;--sc:98.71% .0106 342.55;--a:76.76% .184 183.61;--n:32.1785% .02476 255.702;--nc:89.4994% .011585 252.096;--b1:100% 0 0;--b2:96.1151% 0 0;--b3:92.4169% .00108 197.138;--bc:27.8078% .029596 256.848}[data-theme=dark]{color-scheme:dark;--in:72.06% .191 231.6;--su:64.8% .15 160;--wa:84.71% .199 83.87;--er:71.76% .221 22.18;--pc:13.138% .0392 275.75;--sc:14.96% .052 342.55;--ac:14.902% .0334 183.61;--inc:0% 0 0;--suc:0% 0 0;--wac:0% 0 0;--erc:0% 0 0;--rounded-box:1rem;--rounded-btn:.5rem;--rounded-badge:1.9rem;--animation-btn:.25s;--animation-input:.2s;--btn-focus-scale:.95;--border-btn:1px;--tab-border:1px;--tab-radius:.5rem;--p:65.69% .196 275.75;--s:74.8% .26 342.55;--a:74.51% .167 183.61;--n:31.3815% .021108 254.139;--nc:74.6477% .0216 264.436;--b1:25.3267% .015896 252.418;--b2:23.2607% .013807 253.101;--b3:21.1484% .01165 254.088;--bc:74.6477% .0216 264.436}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.avatar{display:inline-flex;position:relative}.avatar>div{aspect-ratio:1;display:block;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar.placeholder>div{justify-content:center;align-items:center;display:flex}.badge{border-radius:var(--rounded-badge,1.9rem);--tw-border-opacity:1;border-width:1px;border-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));--tw-text-opacity:1;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));justify-content:center;align-items:center;width:-moz-fit-content;width:fit-content;height:1.25rem;padding-left:.563rem;padding-right:.563rem;font-size:.875rem;line-height:1.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}.btm-nav{padding-bottom:env(safe-area-inset-bottom);--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));color:currentColor;flex-direction:row;justify-content:space-around;align-items:center;width:100%;height:4rem;display:flex;position:fixed;bottom:0;left:0;right:0}.btm-nav>*{cursor:pointer;border-color:currentColor;flex-direction:column;flex-basis:100%;justify-content:center;align-items:center;gap:.25rem;height:100%;display:flex;position:relative}@media (hover:hover){.label a:hover{--tw-text-opacity:1;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)))}.menu li>:not(ul,.menu-title,details,.btn):active,.menu li>:not(ul,.menu-title,details,.btn).active,.menu li>details>summary:active{--tw-bg-opacity:1;background-color:var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));--tw-text-opacity:1;color:var(--fallback-nc,oklch(var(--nc)/var(--tw-text-opacity)))}.table tr.hover:hover,.table tr.hover:nth-child(2n):hover{--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)))}.table-zebra tr.hover:hover,.table-zebra tr.hover:nth-child(2n):hover{--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)))}}.btn{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--rounded-btn,.5rem);border-color:#0000;border-color:oklch(var(--btn-color,var(--b2))/var(--tw-border-opacity));text-align:center;border-width:var(--border-btn,1px);--tw-text-opacity:1;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);outline-color:var(--fallback-bc,oklch(var(--bc)/1));background-color:oklch(var(--btn-color,var(--b2))/var(--tw-bg-opacity));--tw-bg-opacity:1;--tw-border-opacity:1;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;height:3rem;min-height:3rem;padding-left:1rem;padding-right:1rem;font-size:.875rem;font-weight:600;line-height:1em;text-decoration-line:none;transition-property:color,background-color,border-color,opacity,box-shadow,transform;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}.btn-disabled,.btn[disabled],.btn:disabled{pointer-events:none}:where(.btninput[type=checkbox]),:where(.btninput[type=radio]){appearance:none;width:auto}.btninput[type=checkbox]:after,.btninput[type=radio]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.checkbox{--chkbg:var(--fallback-bc,oklch(var(--bc)/1));--chkfg:var(--fallback-b1,oklch(var(--b1)/1));cursor:pointer;appearance:none;border-radius:var(--rounded-btn,.5rem);border-width:1px;border-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));--tw-border-opacity:.2;flex-shrink:0;width:1.5rem;height:1.5rem}.collapse:not(td):not(tr):not(colgroup){visibility:visible}.collapse{border-radius:var(--rounded-box,1rem);grid-template-rows:auto 0fr;width:100%;transition:grid-template-rows .2s;display:grid;position:relative;overflow:hidden}.collapse-title,.collapse>input[type=checkbox],.collapse>input[type=radio],.collapse-content{grid-row-start:1;grid-column-start:1}.collapse>input[type=checkbox],.collapse>input[type=radio]{appearance:none;opacity:0}.collapse-content{visibility:hidden;cursor:unset;grid-row-start:2;grid-column-start:1;min-height:0;padding-left:1rem;padding-right:1rem;transition:padding .2s ease-out,background-color .2s ease-out}.collapse[open],.collapse-open,.collapse:focus:not(.collapse-close),.collapse:not(.collapse-close):has(>input[type=checkbox]:checked),.collapse:not(.collapse-close):has(>input[type=radio]:checked){grid-template-rows:auto 1fr}.collapse[open]>.collapse-content,.collapse-open>.collapse-content,.collapse:focus:not(.collapse-close)>.collapse-content,.collapse:not(.collapse-close)>input[type=checkbox]:checked~.collapse-content,.collapse:not(.collapse-close)>input[type=radio]:checked~.collapse-content{visibility:visible;min-height:-moz-fit-content;min-height:fit-content}.dropdown{display:inline-block;position:relative}.dropdown>:not(summary):focus{outline-offset:2px;outline:2px solid #0000}.dropdown .dropdown-content{position:absolute}.dropdown:not(details) .dropdown-content{visibility:hidden;opacity:0;transform-origin:top;--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}.dropdown-end .dropdown-content{inset-inline-end:0}.dropdown-left .dropdown-content{transform-origin:100%;bottom:auto;inset-inline-end:100%;top:0}.dropdown-right .dropdown-content{transform-origin:0;bottom:auto;inset-inline-start:100%;top:0}.dropdown-bottom .dropdown-content{transform-origin:top;top:100%;bottom:auto}.dropdown-top .dropdown-content{transform-origin:bottom;top:auto;bottom:100%}.dropdown-end.dropdown-right .dropdown-content,.dropdown-end.dropdown-left .dropdown-content{top:auto;bottom:0}.dropdown.dropdown-open .dropdown-content,.dropdown:not(.dropdown-hover):focus .dropdown-content,.dropdown:focus-within .dropdown-content{visibility:visible;opacity:1}@media (hover:hover){.dropdown.dropdown-hover:hover .dropdown-content{visibility:visible;opacity:1}.btm-nav>.disabled:hover,.btm-nav>[disabled]:hover{pointer-events:none;--tw-border-opacity:0;background-color:var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));--tw-bg-opacity:.1;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));--tw-text-opacity:.2}.btn:hover{--tw-border-opacity:1;border-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-border-opacity)));--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)))}@supports (color:color-mix(in oklab, black, black)){.btn:hover{background-color:color-mix(in oklab,oklch(var(--btn-color,var(--b2))/var(--tw-bg-opacity,1))90%,black);border-color:color-mix(in oklab,oklch(var(--btn-color,var(--b2))/var(--tw-border-opacity,1))90%,black)}}@supports not (color:oklch(0% 0 0)){.btn:hover{background-color:var(--btn-color,var(--fallback-b2));border-color:var(--btn-color,var(--fallback-b2))}}.btn.glass:hover{--glass-opacity:25%;--glass-border-opacity:15%}.btn-ghost:hover{border-color:#0000}@supports (color:oklch(0% 0 0)){.btn-ghost:hover{background-color:var(--fallback-bc,oklch(var(--bc)/.2))}}.btn-link:hover{background-color:#0000;border-color:#0000;text-decoration-line:underline}.btn-outline:hover{--tw-border-opacity:1;border-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));--tw-text-opacity:1;color:var(--fallback-b1,oklch(var(--b1)/var(--tw-text-opacity)))}.btn-outline.btn-primary:hover{--tw-text-opacity:1;color:var(--fallback-pc,oklch(var(--pc)/var(--tw-text-opacity)))}@supports (color:color-mix(in oklab, black, black)){.btn-outline.btn-primary:hover{background-color:color-mix(in oklab,var(--fallback-p,oklch(var(--p)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-p,oklch(var(--p)/1))90%,black)}}.btn-outline.btn-secondary:hover{--tw-text-opacity:1;color:var(--fallback-sc,oklch(var(--sc)/var(--tw-text-opacity)))}@supports (color:color-mix(in oklab, black, black)){.btn-outline.btn-secondary:hover{background-color:color-mix(in oklab,var(--fallback-s,oklch(var(--s)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-s,oklch(var(--s)/1))90%,black)}}.btn-outline.btn-accent:hover{--tw-text-opacity:1;color:var(--fallback-ac,oklch(var(--ac)/var(--tw-text-opacity)))}@supports (color:color-mix(in oklab, black, black)){.btn-outline.btn-accent:hover{background-color:color-mix(in oklab,var(--fallback-a,oklch(var(--a)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-a,oklch(var(--a)/1))90%,black)}}.btn-outline.btn-success:hover{--tw-text-opacity:1;color:var(--fallback-suc,oklch(var(--suc)/var(--tw-text-opacity)))}@supports (color:color-mix(in oklab, black, black)){.btn-outline.btn-success:hover{background-color:color-mix(in oklab,var(--fallback-su,oklch(var(--su)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-su,oklch(var(--su)/1))90%,black)}}.btn-outline.btn-info:hover{--tw-text-opacity:1;color:var(--fallback-inc,oklch(var(--inc)/var(--tw-text-opacity)))}@supports (color:color-mix(in oklab, black, black)){.btn-outline.btn-info:hover{background-color:color-mix(in oklab,var(--fallback-in,oklch(var(--in)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-in,oklch(var(--in)/1))90%,black)}}.btn-outline.btn-warning:hover{--tw-text-opacity:1;color:var(--fallback-wac,oklch(var(--wac)/var(--tw-text-opacity)))}@supports (color:color-mix(in oklab, black, black)){.btn-outline.btn-warning:hover{background-color:color-mix(in oklab,var(--fallback-wa,oklch(var(--wa)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-wa,oklch(var(--wa)/1))90%,black)}}.btn-outline.btn-error:hover{--tw-text-opacity:1;color:var(--fallback-erc,oklch(var(--erc)/var(--tw-text-opacity)))}@supports (color:color-mix(in oklab, black, black)){.btn-outline.btn-error:hover{background-color:color-mix(in oklab,var(--fallback-er,oklch(var(--er)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-er,oklch(var(--er)/1))90%,black)}}.btn-disabled:hover,.btn[disabled]:hover,.btn:disabled:hover{--tw-border-opacity:0;background-color:var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));--tw-bg-opacity:.2;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));--tw-text-opacity:.2}@supports (color:color-mix(in oklab, black, black)){.btninput[type=checkbox]:checked:hover,.btninput[type=radio]:checked:hover{background-color:color-mix(in oklab,var(--fallback-p,oklch(var(--p)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-p,oklch(var(--p)/1))90%,black)}}.dropdown.dropdown-hover:hover .dropdown-content{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}:where(.menu li:not(.menu-title,.disabled)>:not(ul,details,.menu-title)):not(.active,.btn):hover,:where(.menu li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.active,.btn):hover{cursor:pointer;outline-offset:2px;outline:2px solid #0000}@supports (color:oklch(0% 0 0)){:where(.menu li:not(.menu-title,.disabled)>:not(ul,details,.menu-title)):not(.active,.btn):hover,:where(.menu li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.active,.btn):hover{background-color:var(--fallback-bc,oklch(var(--bc)/.1))}}}.dropdown:is(details) summary::-webkit-details-marker{display:none}.label{-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.5rem .25rem;display:flex}.input{appearance:none;border-radius:var(--rounded-btn,.5rem);--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));border-width:1px;border-color:#0000;flex-shrink:1;height:3rem;padding-left:1rem;padding-right:1rem;font-size:1rem;line-height:1.5rem}.input[type=number]::-webkit-inner-spin-button{margin-top:-1rem;margin-bottom:-1rem;margin-inline-end:-1rem}.input-md[type=number]::-webkit-inner-spin-button{margin-top:-1rem;margin-bottom:-1rem;margin-inline-end:-1rem}.join{border-radius:var(--rounded-btn,.5rem);align-items:stretch;display:inline-flex}.join :where(.join-item),.join .join-item:not(:first-child):not(:last-child),.join :not(:first-child):not(:last-child) .join-item{border-start-start-radius:0;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:0}.join .join-item:first-child:not(:last-child),.join :first-child:not(:last-child) .join-item{border-start-end-radius:0;border-end-end-radius:0}.join .dropdown .join-item:first-child:not(:last-child),.join :first-child:not(:last-child) .dropdown .join-item{border-start-end-radius:inherit;border-end-end-radius:inherit}.join :where(.join-item:first-child:not(:last-child)),.join :where(:first-child:not(:last-child) .join-item){border-start-start-radius:inherit;border-end-start-radius:inherit}.join .join-item:last-child:not(:first-child),.join :last-child:not(:first-child) .join-item{border-start-start-radius:0;border-end-start-radius:0}.join :where(.join-item:last-child:not(:first-child)),.join :where(:last-child:not(:first-child) .join-item){border-start-end-radius:inherit;border-end-end-radius:inherit}@supports not selector(:has(*)){:where(.join *){border-radius:inherit}}@supports selector(:has(*)){:where(.join :has(.join-item)){border-radius:inherit}}.kbd{border-radius:var(--rounded-btn,.5rem);border-width:1px;border-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));--tw-border-opacity:.2;--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));border-bottom-width:2px;justify-content:center;align-items:center;min-width:2.2em;min-height:2.2em;padding-left:.5rem;padding-right:.5rem;display:inline-flex}.menu{flex-flow:column wrap;padding:.5rem;font-size:.875rem;line-height:1.25rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),.menu :where(li:not(.menu-title)>details>summary:not(.menu-title)){-webkit-user-select:none;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;display:grid}.menu li.disabled{cursor:not-allowed;-webkit-user-select:none;user-select:none;color:var(--fallback-bc,oklch(var(--bc)/.3))}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}:where(.menu li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}:where(.menu li) .badge{justify-self:end}.mockup-browser{border-radius:var(--rounded-box,1rem);position:relative;overflow:auto hidden}.mockup-browser pre[data-prefix]:before{content:attr(data-prefix);text-align:right;display:inline-block}.progress{appearance:none;border-radius:var(--rounded-box,1rem);background-color:var(--fallback-bc,oklch(var(--bc)/.2));width:100%;height:.5rem;position:relative;overflow:hidden}.radio{--chkbg:var(--bc);cursor:pointer;appearance:none;border-width:1px;border-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));--tw-border-opacity:.2;border-radius:9999px;flex-shrink:0;width:1.5rem;height:1.5rem}.select{cursor:pointer;-webkit-user-select:none;user-select:none;appearance:none;border-radius:var(--rounded-btn,.5rem);--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-width:1px;border-color:#0000;height:3rem;min-height:3rem;padding-inline:1rem 2.5rem;font-size:.875rem;line-height:2;display:inline-flex}.select[multiple]{height:auto}.table{border-radius:var(--rounded-box,1rem);text-align:left;width:100%;font-size:.875rem;line-height:1.25rem;position:relative}.table :where(.table-pin-rows thead tr){z-index:1;--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));position:sticky;bottom:0}.table :where(.table-pin-cols tr th){--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));position:sticky;left:0;right:0}.table-zebra tbody tr:nth-child(2n) :where(.table-pin-cols tr th){--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)))}.textarea{border-radius:var(--rounded-btn,.5rem);--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));border-width:1px;border-color:#0000;flex-shrink:1;min-height:3rem;padding:.5rem 1rem;font-size:.875rem;line-height:2}.avatar-group{display:flex;overflow:hidden}.avatar-group :where(.avatar){--tw-border-opacity:1;border-width:4px;border-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-border-opacity)));border-radius:9999px;overflow:hidden}.btm-nav>:not(.active){padding-top:.125rem}.btm-nav>:where(.active){--tw-bg-opacity:1;background-color:var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));border-top-width:2px}.btm-nav>.disabled,.btm-nav>[disabled]{pointer-events:none;--tw-border-opacity:0;background-color:var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));--tw-bg-opacity:.1;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));--tw-text-opacity:.2}.btm-nav>* .label{font-size:1rem;line-height:1.5rem}@media (prefers-reduced-motion:no-preference){.btn{animation:button-pop var(--animation-btn,.25s)ease-out}}.btn:active:hover,.btn:active:focus{transform:scale(var(--btn-focus-scale,.97));animation:ease-out button-pop}@supports not (color:oklch(0% 0 0)){.btn{background-color:var(--btn-color,var(--fallback-b2));border-color:var(--btn-color,var(--fallback-b2))}.btn-primary{--btn-color:var(--fallback-p)}.btn-secondary{--btn-color:var(--fallback-s)}.btn-accent{--btn-color:var(--fallback-a)}.btn-info{--btn-color:var(--fallback-in)}.btn-success{--btn-color:var(--fallback-su)}.btn-warning{--btn-color:var(--fallback-wa)}.btn-error{--btn-color:var(--fallback-er)}}@supports (color:color-mix(in oklab, black, black)){.btn-active{background-color:color-mix(in oklab,oklch(var(--btn-color,var(--b3))/var(--tw-bg-opacity,1))90%,black);border-color:color-mix(in oklab,oklch(var(--btn-color,var(--b3))/var(--tw-border-opacity,1))90%,black)}.btn-outline.btn-primary.btn-active{background-color:color-mix(in oklab,var(--fallback-p,oklch(var(--p)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-p,oklch(var(--p)/1))90%,black)}.btn-outline.btn-secondary.btn-active{background-color:color-mix(in oklab,var(--fallback-s,oklch(var(--s)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-s,oklch(var(--s)/1))90%,black)}.btn-outline.btn-accent.btn-active{background-color:color-mix(in oklab,var(--fallback-a,oklch(var(--a)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-a,oklch(var(--a)/1))90%,black)}.btn-outline.btn-success.btn-active{background-color:color-mix(in oklab,var(--fallback-su,oklch(var(--su)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-su,oklch(var(--su)/1))90%,black)}.btn-outline.btn-info.btn-active{background-color:color-mix(in oklab,var(--fallback-in,oklch(var(--in)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-in,oklch(var(--in)/1))90%,black)}.btn-outline.btn-warning.btn-active{background-color:color-mix(in oklab,var(--fallback-wa,oklch(var(--wa)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-wa,oklch(var(--wa)/1))90%,black)}.btn-outline.btn-error.btn-active{background-color:color-mix(in oklab,var(--fallback-er,oklch(var(--er)/1))90%,black);border-color:color-mix(in oklab,var(--fallback-er,oklch(var(--er)/1))90%,black)}}.btn:focus-visible{outline-offset:2px;outline-width:2px;outline-style:solid}.btn-primary{--tw-text-opacity:1;color:var(--fallback-pc,oklch(var(--pc)/var(--tw-text-opacity)));outline-color:var(--fallback-p,oklch(var(--p)/1))}@supports (color:oklch(0% 0 0)){.btn-primary{--btn-color:var(--p)}.btn-secondary{--btn-color:var(--s)}.btn-accent{--btn-color:var(--a)}.btn-info{--btn-color:var(--in)}.btn-success{--btn-color:var(--su)}.btn-warning{--btn-color:var(--wa)}.btn-error{--btn-color:var(--er)}}.btn-secondary{--tw-text-opacity:1;color:var(--fallback-sc,oklch(var(--sc)/var(--tw-text-opacity)));outline-color:var(--fallback-s,oklch(var(--s)/1))}.btn-accent{--tw-text-opacity:1;color:var(--fallback-ac,oklch(var(--ac)/var(--tw-text-opacity)));outline-color:var(--fallback-a,oklch(var(--a)/1))}.btn-info{--tw-text-opacity:1;color:var(--fallback-inc,oklch(var(--inc)/var(--tw-text-opacity)));outline-color:var(--fallback-in,oklch(var(--in)/1))}.btn-success{--tw-text-opacity:1;color:var(--fallback-suc,oklch(var(--suc)/var(--tw-text-opacity)));outline-color:var(--fallback-su,oklch(var(--su)/1))}.btn-warning{--tw-text-opacity:1;color:var(--fallback-wac,oklch(var(--wac)/var(--tw-text-opacity)));outline-color:var(--fallback-wa,oklch(var(--wa)/1))}.btn-error{--tw-text-opacity:1;color:var(--fallback-erc,oklch(var(--erc)/var(--tw-text-opacity)));outline-color:var(--fallback-er,oklch(var(--er)/1))}.btn.glass{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);outline-color:currentColor}.btn.glass.btn-active{--glass-opacity:25%;--glass-border-opacity:15%}.btn-ghost{color:currentColor;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background-color:#0000;border-width:1px;border-color:#0000;outline-color:currentColor}.btn-ghost.btn-active{background-color:var(--fallback-bc,oklch(var(--bc)/.2));border-color:#0000}.btn-link{--tw-text-opacity:1;color:var(--fallback-p,oklch(var(--p)/var(--tw-text-opacity)));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background-color:#0000;border-color:#0000;outline-color:currentColor;text-decoration-line:underline}.btn-link.btn-active{background-color:#0000;border-color:#0000;text-decoration-line:underline}.btn-outline{--tw-text-opacity:1;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background-color:#0000;border-color:currentColor}.btn-outline.btn-active{--tw-border-opacity:1;border-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));--tw-text-opacity:1;color:var(--fallback-b1,oklch(var(--b1)/var(--tw-text-opacity)))}.btn-outline.btn-primary{--tw-text-opacity:1;color:var(--fallback-p,oklch(var(--p)/var(--tw-text-opacity)))}.btn-outline.btn-primary.btn-active{--tw-text-opacity:1;color:var(--fallback-pc,oklch(var(--pc)/var(--tw-text-opacity)))}.btn-outline.btn-secondary{--tw-text-opacity:1;color:var(--fallback-s,oklch(var(--s)/var(--tw-text-opacity)))}.btn-outline.btn-secondary.btn-active{--tw-text-opacity:1;color:var(--fallback-sc,oklch(var(--sc)/var(--tw-text-opacity)))}.btn-outline.btn-accent{--tw-text-opacity:1;color:var(--fallback-a,oklch(var(--a)/var(--tw-text-opacity)))}.btn-outline.btn-accent.btn-active{--tw-text-opacity:1;color:var(--fallback-ac,oklch(var(--ac)/var(--tw-text-opacity)))}.btn-outline.btn-success{--tw-text-opacity:1;color:var(--fallback-su,oklch(var(--su)/var(--tw-text-opacity)))}.btn-outline.btn-success.btn-active{--tw-text-opacity:1;color:var(--fallback-suc,oklch(var(--suc)/var(--tw-text-opacity)))}.btn-outline.btn-info{--tw-text-opacity:1;color:var(--fallback-in,oklch(var(--in)/var(--tw-text-opacity)))}.btn-outline.btn-info.btn-active{--tw-text-opacity:1;color:var(--fallback-inc,oklch(var(--inc)/var(--tw-text-opacity)))}.btn-outline.btn-warning{--tw-text-opacity:1;color:var(--fallback-wa,oklch(var(--wa)/var(--tw-text-opacity)))}.btn-outline.btn-warning.btn-active{--tw-text-opacity:1;color:var(--fallback-wac,oklch(var(--wac)/var(--tw-text-opacity)))}.btn-outline.btn-error{--tw-text-opacity:1;color:var(--fallback-er,oklch(var(--er)/var(--tw-text-opacity)))}.btn-outline.btn-error.btn-active{--tw-text-opacity:1;color:var(--fallback-erc,oklch(var(--erc)/var(--tw-text-opacity)))}.btn.btn-disabled,.btn[disabled],.btn:disabled{--tw-border-opacity:0;background-color:var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));--tw-bg-opacity:.2;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));--tw-text-opacity:.2}.btninput[type=checkbox]:checked,.btninput[type=radio]:checked{--tw-border-opacity:1;border-color:var(--fallback-p,oklch(var(--p)/var(--tw-border-opacity)));--tw-bg-opacity:1;background-color:var(--fallback-p,oklch(var(--p)/var(--tw-bg-opacity)));--tw-text-opacity:1;color:var(--fallback-pc,oklch(var(--pc)/var(--tw-text-opacity)))}.btninput[type=checkbox]:checked:focus-visible,.btninput[type=radio]:checked:focus-visible{outline-color:var(--fallback-p,oklch(var(--p)/1))}@keyframes button-pop{0%{transform:scale(var(--btn-focus-scale,.98))}40%{transform:scale(1.02)}to{transform:scale(1)}}.checkbox:focus{box-shadow:none}.checkbox:focus-visible{outline-offset:2px;outline-width:2px;outline-style:solid;outline-color:var(--fallback-bc,oklch(var(--bc)/1))}.checkbox:disabled{cursor:not-allowed;--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));opacity:.2;border-width:0;border-color:#0000}.checkbox:checked,.checkbox[aria-checked=true]{animation:checkmark var(--animation-input,.2s)ease-out;background-repeat:no-repeat;background-color:var(--chkbg);background-image:linear-gradient(-45deg,transparent 65%,var(--chkbg)65.99%),linear-gradient(45deg,transparent 75%,var(--chkbg)75.99%),linear-gradient(-45deg,var(--chkbg)40%,transparent 40.99%),linear-gradient(45deg,var(--chkbg)30%,var(--chkfg)30.99%,var(--chkfg)40%,transparent 40.99%),linear-gradient(-45deg,var(--chkfg)50%,var(--chkbg)50.99%)}.checkbox:indeterminate{--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));animation:checkmark var(--animation-input,.2s)ease-out;background-repeat:no-repeat;background-image:linear-gradient(90deg,transparent 80%,var(--chkbg)80%),linear-gradient(-90deg,transparent 80%,var(--chkbg)80%),linear-gradient(0deg,var(--chkbg)43%,var(--chkfg)43%,var(--chkfg)57%,var(--chkbg)57%)}@keyframes checkmark{0%{background-position-y:5px}50%{background-position-y:-2px}to{background-position-y:0}}details.collapse{width:100%}details.collapse summary{outline-offset:2px;outline:2px solid #0000;display:block;position:relative}details.collapse summary::-webkit-details-marker{display:none}.collapse:focus-visible,.collapse:has(.collapse-title:focus-visible),.collapse:has(>input[type=checkbox]:focus-visible),.collapse:has(>input[type=radio]:focus-visible){outline-offset:2px;outline-width:2px;outline-style:solid;outline-color:var(--fallback-bc,oklch(var(--bc)/1))}.collapse-arrow>.collapse-title:after{--tw-translate-y:-100%;--tw-rotate:45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y));content:"";transform-origin:75% 75%;pointer-events:none;top:1.9rem;width:.5rem;height:.5rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem;box-shadow:2px 2px}.collapse-plus>.collapse-title:after{content:"+";pointer-events:none;top:.9rem;width:.5rem;height:.5rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(0,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem}.collapse:not(.collapse-open):not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-open):not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-open):not(.collapse-close)>.collapse-title{cursor:pointer}.collapse:focus:not(.collapse-open):not(.collapse-close):not(.collapse[open])>.collapse-title{cursor:unset}.collapse-title{position:relative}:where(.collapse>input[type=checkbox]),:where(.collapse>input[type=radio]){z-index:1}.collapse-title,:where(.collapse>input[type=checkbox]),:where(.collapse>input[type=radio]){padding:1rem;width:100%;min-height:3.75rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse[open]>:where(.collapse-content),.collapse-open>:where(.collapse-content),.collapse:focus:not(.collapse-close)>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input[type=checkbox]:checked~.collapse-content),.collapse:not(.collapse-close)>:where(input[type=radio]:checked~.collapse-content){padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}.collapse[open].collapse-arrow>.collapse-title:after,.collapse-open.collapse-arrow>.collapse-title:after,.collapse-arrow:focus:not(.collapse-close)>.collapse-title:after,.collapse-arrow:not(.collapse-close)>input[type=checkbox]:checked~.collapse-title:after,.collapse-arrow:not(.collapse-close)>input[type=radio]:checked~.collapse-title:after{--tw-translate-y:-50%;--tw-rotate:225deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}.collapse[open].collapse-plus>.collapse-title:after,.collapse-open.collapse-plus>.collapse-title:after,.collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse-plus:not(.collapse-close)>input[type=checkbox]:checked~.collapse-title:after,.collapse-plus:not(.collapse-close)>input[type=radio]:checked~.collapse-title:after{content:"−"}.dropdown.dropdown-open .dropdown-content,.dropdown:focus .dropdown-content,.dropdown:focus-within .dropdown-content{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}.input input{--tw-bg-opacity:1;background-color:var(--fallback-p,oklch(var(--p)/var(--tw-bg-opacity)));background-color:#0000}.input input:focus{outline-offset:2px;outline:2px solid #0000}.input[list]::-webkit-calendar-picker-indicator{line-height:1em}.input:focus,.input:focus-within{box-shadow:none;border-color:var(--fallback-bc,oklch(var(--bc)/.2));outline-offset:2px;outline-width:2px;outline-style:solid;outline-color:var(--fallback-bc,oklch(var(--bc)/.2))}.input:has(>input[disabled]),.input-disabled,.input:disabled,.input[disabled]{cursor:not-allowed;--tw-border-opacity:1;border-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));color:var(--fallback-bc,oklch(var(--bc)/.4))}.input:has(>input[disabled])::placeholder,.input-disabled::placeholder,.input:disabled::placeholder,.input[disabled]::placeholder{color:var(--fallback-bc,oklch(var(--bc)/var(--tw-placeholder-opacity)));--tw-placeholder-opacity:.2}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.join>:where(:not(:first-child)){margin-top:0;margin-bottom:0;margin-inline-start:-1px}.join>:where(:not(:first-child)).btn{margin-inline-start:calc(var(--border-btn)*-1)}.join-item:focus{isolation:isolate}:where(.menu li:empty){--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li ul):before{--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));opacity:.1;content:"";bottom:.75rem;inset-inline-start:0;width:1px;position:absolute;top:.75rem}.menu :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),.menu :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--rounded-btn,.5rem);text-align:start;text-wrap:balance;padding:.5rem 1rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:where(.menu li:not(.menu-title,.disabled)>:not(ul,details,.menu-title)):not(summary,.active,.btn).focus,:where(.menu li:not(.menu-title,.disabled)>:not(ul,details,.menu-title)):not(summary,.active,.btn):focus,:where(.menu li:not(.menu-title,.disabled)>:not(ul,details,.menu-title)):is(summary):not(.active,.btn):focus-visible,:where(.menu li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(summary,.active,.btn).focus,:where(.menu li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(summary,.active,.btn):focus,:where(.menu li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):is(summary):not(.active,.btn):focus-visible{cursor:pointer;background-color:var(--fallback-bc,oklch(var(--bc)/.1));--tw-text-opacity:1;color:var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));outline-offset:2px;outline:2px solid #0000}.menu li>:not(ul,.menu-title,details,.btn):active,.menu li>:not(ul,.menu-title,details,.btn).active,.menu li>details>summary:active{--tw-bg-opacity:1;background-color:var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));--tw-text-opacity:1;color:var(--fallback-nc,oklch(var(--nc)/var(--tw-text-opacity)))}.menu :where(li>details>summary)::-webkit-details-marker{display:none}.menu :where(li>details>summary):after,.menu :where(li>.menu-dropdown-toggle):after{content:"";transform-origin:75% 75%;pointer-events:none;justify-self:end;width:.5rem;height:.5rem;margin-top:-.5rem;transition-property:transform,margin-top;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;transform:rotate(45deg);box-shadow:2px 2px}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{margin-top:0;transform:rotate(225deg)}.menu-title{color:var(--fallback-bc,oklch(var(--bc)/.4));padding:.5rem 1rem;font-size:.875rem;font-weight:700;line-height:1.25rem}.mockup-phone{background-color:#000;border:4px solid #444;border-radius:50px;margin:0 auto;padding:10px;display:inline-block;overflow:hidden}.mockup-phone .camera{z-index:11;background:#000;border-bottom-right-radius:17px;border-bottom-left-radius:17px;width:150px;height:25px;margin:0 auto;position:relative;top:0;left:0}.mockup-phone .camera:before{content:"";background-color:#0c0b0e;border-radius:5px;width:50px;height:4px;position:absolute;top:35%;left:50%;transform:translate(-50%,-50%)}.mockup-phone .camera:after{content:"";background-color:#0f0b25;border-radius:5px;width:8px;height:8px;position:absolute;top:20%;left:70%}.mockup-phone .display{border-radius:40px;margin-top:-25px;overflow:hidden}.mockup-browser .mockup-browser-toolbar{align-items:center;width:100%;margin-top:.75rem;margin-bottom:.75rem;padding-right:1.4em;display:inline-flex}.mockup-browser .mockup-browser-toolbar:where([dir=rtl],[dir=rtl] *){flex-direction:row-reverse}.mockup-browser .mockup-browser-toolbar:before{content:"";aspect-ratio:1;opacity:.3;border-radius:9999px;height:.75rem;margin-right:4.8rem;display:inline-block;box-shadow:1.4em 0,2.8em 0,4.2em 0}.mockup-browser .mockup-browser-toolbar .input{text-overflow:ellipsis;white-space:nowrap;--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));direction:ltr;width:24rem;height:1.75rem;margin-left:auto;margin-right:auto;padding-left:2rem;display:block;position:relative;overflow:hidden}.mockup-browser .mockup-browser-toolbar .input:before{content:"";aspect-ratio:1;--tw-translate-y:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y));opacity:.6;border-width:2px;border-color:currentColor;border-radius:9999px;height:.75rem;position:absolute;top:50%;left:.5rem}.mockup-browser .mockup-browser-toolbar .input:after{content:"";--tw-translate-y:25%;--tw-rotate:-45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y));opacity:.6;border-width:1px;border-color:currentColor;border-radius:9999px;height:.5rem;position:absolute;top:50%;left:1.25rem}@keyframes modal-pop{0%{opacity:0}}.progress::-moz-progress-bar{border-radius:var(--rounded-box,1rem);--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)))}.progress:indeterminate{--progress-color:var(--fallback-bc,oklch(var(--bc)/1));background-image:repeating-linear-gradient(90deg,var(--progress-color)-1%,var(--progress-color)10%,transparent 10%,transparent 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress-loading}.progress::-webkit-progress-bar{border-radius:var(--rounded-box,1rem);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--rounded-box,1rem);--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)))}.progress:indeterminate::-moz-progress-bar{background-color:#0000;background-image:repeating-linear-gradient(90deg,var(--progress-color)-1%,var(--progress-color)10%,transparent 10%,transparent 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress-loading}@keyframes progress-loading{50%{background-position-x:-115%}}.radio:focus{box-shadow:none}.radio:focus-visible{outline-offset:2px;outline-width:2px;outline-style:solid;outline-color:var(--fallback-bc,oklch(var(--bc)/1))}.radio:checked,.radio[aria-checked=true]{--tw-bg-opacity:1;background-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));animation:radiomark var(--animation-input,.2s)ease-out;box-shadow:0 0 0 4px var(--fallback-b1,oklch(var(--b1)/1))inset,0 0 0 4px var(--fallback-b1,oklch(var(--b1)/1))inset;background-image:none}.radio:disabled{cursor:not-allowed;opacity:.2}@keyframes radiomark{0%{box-shadow:0 0 0 12px var(--fallback-b1,oklch(var(--b1)/1))inset,0 0 0 12px var(--fallback-b1,oklch(var(--b1)/1))inset}50%{box-shadow:0 0 0 3px var(--fallback-b1,oklch(var(--b1)/1))inset,0 0 0 3px var(--fallback-b1,oklch(var(--b1)/1))inset}to{box-shadow:0 0 0 4px var(--fallback-b1,oklch(var(--b1)/1))inset,0 0 0 4px var(--fallback-b1,oklch(var(--b1)/1))inset}}@keyframes rating-pop{0%{transform:translateY(-.125em)}40%{transform:translateY(-.125em)}to{transform:translateY(0)}}.select:focus{box-shadow:none;border-color:var(--fallback-bc,oklch(var(--bc)/.2));outline-offset:2px;outline-width:2px;outline-style:solid;outline-color:var(--fallback-bc,oklch(var(--bc)/.2))}.select-disabled,.select:disabled,.select[disabled]{cursor:not-allowed;--tw-border-opacity:1;border-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));color:var(--fallback-bc,oklch(var(--bc)/.4))}.select-disabled::placeholder,.select:disabled::placeholder,.select[disabled]::placeholder{color:var(--fallback-bc,oklch(var(--bc)/var(--tw-placeholder-opacity)));--tw-placeholder-opacity:.2}.select-multiple,.select[multiple],.select[size].select:not([size="1"]){background-image:none;padding-right:1rem}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}.skeleton{border-radius:var(--rounded-box,1rem);--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)));will-change:background-position;background-image:linear-gradient(105deg,transparent 0%,transparent 40%,var(--fallback-b1,oklch(var(--b1)/1))50%,transparent 60%,transparent 100%);background-position-x:-50%;background-repeat:no-repeat;background-size:200%;animation:1.8s ease-in-out infinite skeleton}@media (prefers-reduced-motion){.skeleton{animation-duration:15s}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}.table:where([dir=rtl],[dir=rtl] *){text-align:right}.table :where(th,td){vertical-align:middle;padding:.75rem 1rem}.table tr.active,.table tr.active:nth-child(2n),.table-zebra tbody tr:nth-child(2n){--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)))}.table-zebra tr.active,.table-zebra tr.active:nth-child(2n),.table-zebra-zebra tbody tr:nth-child(2n){--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)))}.table :where(thead tr,tbody tr:not(:last-child),tbody tr:first-child:last-child){--tw-border-opacity:1;border-bottom-width:1px;border-bottom-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)))}.table :where(thead,tfoot){white-space:nowrap;color:var(--fallback-bc,oklch(var(--bc)/.6));font-size:.75rem;font-weight:700;line-height:1rem}.table :where(tfoot){--tw-border-opacity:1;border-top-width:1px;border-top-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)))}.textarea:focus{box-shadow:none;border-color:var(--fallback-bc,oklch(var(--bc)/.2));outline-offset:2px;outline-width:2px;outline-style:solid;outline-color:var(--fallback-bc,oklch(var(--bc)/.2))}.textarea-primary{--tw-border-opacity:1;border-color:var(--fallback-p,oklch(var(--p)/var(--tw-border-opacity)))}.textarea-primary:focus{--tw-border-opacity:1;border-color:var(--fallback-p,oklch(var(--p)/var(--tw-border-opacity)));outline-color:var(--fallback-p,oklch(var(--p)/1))}.textarea-disabled,.textarea:disabled,.textarea[disabled]{cursor:not-allowed;--tw-border-opacity:1;border-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));color:var(--fallback-bc,oklch(var(--bc)/.4))}.textarea-disabled::placeholder,.textarea:disabled::placeholder,.textarea[disabled]::placeholder{color:var(--fallback-bc,oklch(var(--bc)/var(--tw-placeholder-opacity)));--tw-placeholder-opacity:.2}@keyframes toast-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.glass,.glass.btn-active{-webkit-backdrop-filter:blur(var(--glass-blur,40px));backdrop-filter:blur(var(--glass-blur,40px));background-color:#0000;background-image:linear-gradient(135deg,rgb(255 255 255/var(--glass-opacity,30%))0%,#0000 100%),linear-gradient(var(--glass-reflex-degree,100deg),rgb(255 255 255/var(--glass-reflex-opacity,10%))25%,#0000 25%);box-shadow:0 0 0 1px rgb(255 255 255/var(--glass-border-opacity,10%))inset,0 0 0 2px #0000000d;text-shadow:0 1px rgb(0 0 0/var(--glass-text-shadow-opacity,5%));border:none}@media (hover:hover){.glass.btn-active{-webkit-backdrop-filter:blur(var(--glass-blur,40px));backdrop-filter:blur(var(--glass-blur,40px));background-color:#0000;background-image:linear-gradient(135deg,rgb(255 255 255/var(--glass-opacity,30%))0%,#0000 100%),linear-gradient(var(--glass-reflex-degree,100deg),rgb(255 255 255/var(--glass-reflex-opacity,10%))25%,#0000 25%);box-shadow:0 0 0 1px rgb(255 255 255/var(--glass-border-opacity,10%))inset,0 0 0 2px #0000000d;text-shadow:0 1px rgb(0 0 0/var(--glass-text-shadow-opacity,5%));border:none}}.btm-nav-xs{height:2.5rem}.btm-nav-xs>:where(.active){border-top-width:1px}.btm-nav-xs .btm-nav-label{font-size:.75rem;line-height:1rem}.btm-nav-sm{height:3rem}.btm-nav-sm>:where(.active){border-top-width:2px}.btm-nav-sm .btm-nav-label{font-size:.75rem;line-height:1rem}.btm-nav-md{height:4rem}.btm-nav-md>:where(.active){border-top-width:2px}.btm-nav-md .btm-nav-label{font-size:.875rem;line-height:1.25rem}.btm-nav-lg{height:5rem}.btm-nav-lg>:where(.active){border-top-width:4px}.btm-nav-lg .btm-nav-label{font-size:1rem;line-height:1.5rem}.join.join-vertical{flex-direction:column}.join.join-vertical .join-item:first-child:not(:last-child),.join.join-vertical :first-child:not(:last-child) .join-item{border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:0;border-end-start-radius:0}.join.join-vertical .join-item:last-child:not(:first-child),.join.join-vertical :last-child:not(:first-child) .join-item{border-start-start-radius:0;border-start-end-radius:0;border-end-end-radius:inherit;border-end-start-radius:inherit}.join.join-horizontal{flex-direction:row}.join.join-horizontal .join-item:first-child:not(:last-child),.join.join-horizontal :first-child:not(:last-child) .join-item{border-start-start-radius:inherit;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:inherit}.join.join-horizontal .join-item:last-child:not(:first-child),.join.join-horizontal :last-child:not(:first-child) .join-item{border-start-start-radius:0;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:0}.avatar.online:before{content:"";z-index:10;--tw-bg-opacity:1;background-color:var(--fallback-su,oklch(var(--su)/var(--tw-bg-opacity)));outline-width:2px;outline-style:solid;outline-color:var(--fallback-b1,oklch(var(--b1)/1));border-radius:9999px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}.avatar.offline:before{content:"";z-index:10;--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)));outline-width:2px;outline-style:solid;outline-color:var(--fallback-b1,oklch(var(--b1)/1));border-radius:9999px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}.join.join-vertical>:where(:not(:first-child)){margin-top:-1px;margin-left:0;margin-right:0}.join.join-vertical>:where(:not(:first-child)).btn{margin-top:calc(var(--border-btn)*-1)}.join.join-horizontal>:where(:not(:first-child)){margin-top:0;margin-bottom:0;margin-inline-start:-1px}.join.join-horizontal>:where(:not(:first-child)).btn{margin-inline-start:calc(var(--border-btn)*-1)}.menu-xs :where(li:not(.menu-title)>:not(ul,details,.menu-title)),.menu-xs :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;line-height:1rem}.menu-xs .menu-title{padding:.25rem .5rem}.menu-sm :where(li:not(.menu-title)>:not(ul,details,.menu-title)),.menu-sm :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--rounded-btn,.5rem);padding:.25rem .75rem;font-size:.875rem;line-height:1.25rem}.menu-sm .menu-title{padding:.5rem .75rem}.menu-md :where(li:not(.menu-title)>:not(ul,details,.menu-title)),.menu-md :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--rounded-btn,.5rem);padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem}.menu-md .menu-title{padding:.5rem 1rem}.menu-lg :where(li:not(.menu-title)>:not(ul,details,.menu-title)),.menu-lg :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--rounded-btn,.5rem);padding:.75rem 1.5rem;font-size:1.125rem;line-height:1.75rem}.menu-lg .menu-title{padding:.75rem 1.5rem}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.isolate{isolation:isolate}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mt-2{margin-top:.5rem}.block{display:block}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.w-full{width:100%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.border{border-width:1px}.border-base-300{--tw-border-opacity:1;border-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-border-opacity)))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.bg-base-200{--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)))}.p-5{padding:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-medium{font-weight:500}.underline{text-decoration-line:underline}.outline{outline-style:solid}.blur{--tw-blur:blur(8px);filter:var(--tw-blur)var(--tw-brightness)var(--tw-contrast)var(--tw-grayscale)var(--tw-hue-rotate)var(--tw-invert)var(--tw-saturate)var(--tw-sepia)var(--tw-drop-shadow)}.filter{filter:var(--tw-blur)var(--tw-brightness)var(--tw-contrast)var(--tw-grayscale)var(--tw-hue-rotate)var(--tw-invert)var(--tw-saturate)var(--tw-sepia)var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (hover:hover){.table .hover\:hover:hovertr:hover{--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)))}.table .hover\:hover:hovertr:nth-child(2n):hover{--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)))}.table-zebra .hover\:hover:hovertr:hover{--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)))}.table-zebra .hover\:hover:hovertr:nth-child(2n):hover{--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)))}.table .disabled\:hover:disabledtr:hover{--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)))}.table .disabled\:hover:disabledtr:nth-child(2n):hover{--tw-bg-opacity:1;background-color:var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)))}.table-zebra .disabled\:hover:disabledtr:hover{--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)))}.table-zebra .disabled\:hover:disabledtr:nth-child(2n):hover{--tw-bg-opacity:1;background-color:var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)))}} -/*# sourceMappingURL=index.371372f8.css.map */ diff --git a/jetty/src/main/resources/webapp/index.371372f8.css.map b/jetty/src/main/resources/webapp/index.371372f8.css.map deleted file mode 100644 index 7014454..0000000 --- a/jetty/src/main/resources/webapp/index.371372f8.css.map +++ /dev/null @@ -1 +0,0 @@ -{"mappings":"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","sources":["index.371372f8.css","app.css"],"sourcesContent":["*, :before, :after {\n box-sizing: border-box;\n border: 0 solid #e5e7eb;\n}\n\n:before, :after {\n --tw-content: \"\";\n}\n\nhtml, :host {\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;\n line-height: 1.5;\n}\n\nbody {\n line-height: inherit;\n margin: 0;\n}\n\nhr {\n color: inherit;\n border-top-width: 1px;\n height: 0;\n}\n\nabbr:where([title]) {\n text-decoration: underline dotted;\n}\n\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n}\n\nb, strong {\n font-weight: bolder;\n}\n\ncode, kbd, samp, pre {\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;\n font-size: 1em;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub, sup {\n vertical-align: baseline;\n font-size: 75%;\n line-height: 0;\n position: relative;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\n\nbutton, input, optgroup, select, textarea {\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-family: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\n\nbutton, select {\n text-transform: none;\n}\n\nbutton, input:where([type=\"button\"]), input:where([type=\"reset\"]), input:where([type=\"submit\"]) {\n -webkit-appearance: button;\n background-color: #0000;\n background-image: none;\n}\n\n:-moz-focusring {\n outline: auto;\n}\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n::-webkit-inner-spin-button {\n height: auto;\n}\n\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\n\nsummary {\n display: list-item;\n}\n\nblockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol, ul, menu {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\ndialog {\n padding: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::placeholder, textarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\nbutton, [role=\"button\"] {\n cursor: pointer;\n}\n\n:disabled {\n cursor: default;\n}\n\nimg, svg, video, canvas, audio, iframe, embed, object {\n vertical-align: middle;\n display: block;\n}\n\nimg, video {\n max-width: 100%;\n height: auto;\n}\n\n[hidden] {\n display: none;\n}\n\n:root, [data-theme] {\n background-color: var(--fallback-b1, oklch(var(--b1) / 1));\n color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n@supports not (color: oklch(0% 0 0)) {\n :root {\n color-scheme: light;\n --fallback-p: #491eff;\n --fallback-pc: #d4dbff;\n --fallback-s: #ff41c7;\n --fallback-sc: #fff9fc;\n --fallback-a: #00cfbd;\n --fallback-ac: #00100d;\n --fallback-n: #2b3440;\n --fallback-nc: #d7dde4;\n --fallback-b1: #fff;\n --fallback-b2: #e5e6e6;\n --fallback-b3: #e5e6e6;\n --fallback-bc: #1f2937;\n --fallback-in: #00b3f0;\n --fallback-inc: #000;\n --fallback-su: #00ca92;\n --fallback-suc: #000;\n --fallback-wa: #ffc22d;\n --fallback-wac: #000;\n --fallback-er: #ff6f70;\n --fallback-erc: #000;\n }\n\n @media (prefers-color-scheme: dark) {\n :root {\n color-scheme: dark;\n --fallback-p: #7582ff;\n --fallback-pc: #050617;\n --fallback-s: #ff71cf;\n --fallback-sc: #190211;\n --fallback-a: #00c7b5;\n --fallback-ac: #000e0c;\n --fallback-n: #2a323c;\n --fallback-nc: #a6adbb;\n --fallback-b1: #1d232a;\n --fallback-b2: #191e24;\n --fallback-b3: #15191e;\n --fallback-bc: #a6adbb;\n --fallback-in: #00b3f0;\n --fallback-inc: #000;\n --fallback-su: #00ca92;\n --fallback-suc: #000;\n --fallback-wa: #ffc22d;\n --fallback-wac: #000;\n --fallback-er: #ff6f70;\n --fallback-erc: #000;\n }\n }\n}\n\nhtml {\n -webkit-tap-highlight-color: transparent;\n}\n\n* {\n scrollbar-color: color-mix(in oklch, currentColor 35%, transparent) transparent;\n}\n\n:hover {\n scrollbar-color: color-mix(in oklch, currentColor 60%, transparent) transparent;\n}\n\n:root {\n color-scheme: light;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 89.824% .06192 275.75;\n --ac: 15.352% .0368 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 49.12% .3096 275.75;\n --s: 69.71% .329 342.55;\n --sc: 98.71% .0106 342.55;\n --a: 76.76% .184 183.61;\n --n: 32.1785% .02476 255.702;\n --nc: 89.4994% .011585 252.096;\n --b1: 100% 0 0;\n --b2: 96.1151% 0 0;\n --b3: 92.4169% .00108 197.138;\n --bc: 27.8078% .029596 256.848;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n color-scheme: dark;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 13.138% .0392 275.75;\n --sc: 14.96% .052 342.55;\n --ac: 14.902% .0334 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 65.69% .196 275.75;\n --s: 74.8% .26 342.55;\n --a: 74.51% .167 183.61;\n --n: 31.3815% .021108 254.139;\n --nc: 74.6477% .0216 264.436;\n --b1: 25.3267% .015896 252.418;\n --b2: 23.2607% .013807 253.101;\n --b3: 21.1484% .01165 254.088;\n --bc: 74.6477% .0216 264.436;\n }\n}\n\n[data-theme=\"light\"] {\n color-scheme: light;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 89.824% .06192 275.75;\n --ac: 15.352% .0368 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 49.12% .3096 275.75;\n --s: 69.71% .329 342.55;\n --sc: 98.71% .0106 342.55;\n --a: 76.76% .184 183.61;\n --n: 32.1785% .02476 255.702;\n --nc: 89.4994% .011585 252.096;\n --b1: 100% 0 0;\n --b2: 96.1151% 0 0;\n --b3: 92.4169% .00108 197.138;\n --bc: 27.8078% .029596 256.848;\n}\n\n[data-theme=\"dark\"] {\n color-scheme: dark;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 13.138% .0392 275.75;\n --sc: 14.96% .052 342.55;\n --ac: 14.902% .0334 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 65.69% .196 275.75;\n --s: 74.8% .26 342.55;\n --a: 74.51% .167 183.61;\n --n: 31.3815% .021108 254.139;\n --nc: 74.6477% .0216 264.436;\n --b1: 25.3267% .015896 252.418;\n --b2: 23.2607% .013807 253.101;\n --b3: 21.1484% .01165 254.088;\n --bc: 74.6477% .0216 264.436;\n}\n\n*, :before, :after, ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #3b82f680;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n.container {\n width: 100%;\n}\n\n@media (width >= 640px) {\n .container {\n max-width: 640px;\n }\n}\n\n@media (width >= 768px) {\n .container {\n max-width: 768px;\n }\n}\n\n@media (width >= 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n\n@media (width >= 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n\n@media (width >= 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n\n.avatar {\n display: inline-flex;\n position: relative;\n}\n\n.avatar > div {\n aspect-ratio: 1;\n display: block;\n overflow: hidden;\n}\n\n.avatar img {\n object-fit: cover;\n width: 100%;\n height: 100%;\n}\n\n.avatar.placeholder > div {\n justify-content: center;\n align-items: center;\n display: flex;\n}\n\n.badge {\n border-radius: var(--rounded-badge, 1.9rem);\n --tw-border-opacity: 1;\n border-width: 1px;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n justify-content: center;\n align-items: center;\n width: fit-content;\n height: 1.25rem;\n padding-left: .563rem;\n padding-right: .563rem;\n font-size: .875rem;\n line-height: 1.25rem;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: inline-flex;\n}\n\n.btm-nav {\n padding-bottom: env(safe-area-inset-bottom);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n color: currentColor;\n flex-direction: row;\n justify-content: space-around;\n align-items: center;\n width: 100%;\n height: 4rem;\n display: flex;\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n}\n\n.btm-nav > * {\n cursor: pointer;\n border-color: currentColor;\n flex-direction: column;\n flex-basis: 100%;\n justify-content: center;\n align-items: center;\n gap: .25rem;\n height: 100%;\n display: flex;\n position: relative;\n}\n\n@media (hover: hover) {\n .label a:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n }\n\n .menu li > :not(ul, .menu-title, details, .btn):active, .menu li > :not(ul, .menu-title, details, .btn).active, .menu li > details > summary:active {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity)));\n }\n\n .table tr.hover:hover, .table tr.hover:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra tr.hover:hover, .table-zebra tr.hover:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n}\n\n.btn {\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n border-radius: var(--rounded-btn, .5rem);\n border-color: #0000;\n border-color: oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity));\n text-align: center;\n border-width: var(--border-btn, 1px);\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-shadow: 0 1px 2px 0 #0000000d;\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n background-color: oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity));\n --tw-bg-opacity: 1;\n --tw-border-opacity: 1;\n flex-wrap: wrap;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n gap: .5rem;\n height: 3rem;\n min-height: 3rem;\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: .875rem;\n font-weight: 600;\n line-height: 1em;\n text-decoration-line: none;\n transition-property: color, background-color, border-color, opacity, box-shadow, transform;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: inline-flex;\n}\n\n.btn-disabled, .btn[disabled], .btn:disabled {\n pointer-events: none;\n}\n\n:where(.btninput[type=\"checkbox\"]), :where(.btninput[type=\"radio\"]) {\n appearance: none;\n width: auto;\n}\n\n.btninput[type=\"checkbox\"]:after, .btninput[type=\"radio\"]:after {\n --tw-content: attr(aria-label);\n content: var(--tw-content);\n}\n\n.checkbox {\n --chkbg: var(--fallback-bc, oklch(var(--bc) / 1));\n --chkfg: var(--fallback-b1, oklch(var(--b1) / 1));\n cursor: pointer;\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n flex-shrink: 0;\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.collapse:not(td):not(tr):not(colgroup) {\n visibility: visible;\n}\n\n.collapse {\n border-radius: var(--rounded-box, 1rem);\n grid-template-rows: auto 0fr;\n width: 100%;\n transition: grid-template-rows .2s;\n display: grid;\n position: relative;\n overflow: hidden;\n}\n\n.collapse-title, .collapse > input[type=\"checkbox\"], .collapse > input[type=\"radio\"], .collapse-content {\n grid-row-start: 1;\n grid-column-start: 1;\n}\n\n.collapse > input[type=\"checkbox\"], .collapse > input[type=\"radio\"] {\n appearance: none;\n opacity: 0;\n}\n\n.collapse-content {\n visibility: hidden;\n cursor: unset;\n grid-row-start: 2;\n grid-column-start: 1;\n min-height: 0;\n padding-left: 1rem;\n padding-right: 1rem;\n transition: padding .2s ease-out, background-color .2s ease-out;\n}\n\n.collapse[open], .collapse-open, .collapse:focus:not(.collapse-close), .collapse:not(.collapse-close):has( > input[type=\"checkbox\"]:checked), .collapse:not(.collapse-close):has( > input[type=\"radio\"]:checked) {\n grid-template-rows: auto 1fr;\n}\n\n.collapse[open] > .collapse-content, .collapse-open > .collapse-content, .collapse:focus:not(.collapse-close) > .collapse-content, .collapse:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-content, .collapse:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-content {\n visibility: visible;\n min-height: fit-content;\n}\n\n.dropdown {\n display: inline-block;\n position: relative;\n}\n\n.dropdown > :not(summary):focus {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.dropdown .dropdown-content {\n position: absolute;\n}\n\n.dropdown:not(details) .dropdown-content {\n visibility: hidden;\n opacity: 0;\n transform-origin: top;\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n.dropdown-end .dropdown-content {\n inset-inline-end: 0;\n}\n\n.dropdown-left .dropdown-content {\n bottom: auto;\n transform-origin: 100%;\n inset-inline-end: 100%;\n top: 0;\n}\n\n.dropdown-right .dropdown-content {\n bottom: auto;\n transform-origin: 0;\n inset-inline-start: 100%;\n top: 0;\n}\n\n.dropdown-bottom .dropdown-content {\n transform-origin: top;\n top: 100%;\n bottom: auto;\n}\n\n.dropdown-top .dropdown-content {\n transform-origin: bottom;\n top: auto;\n bottom: 100%;\n}\n\n.dropdown-end.dropdown-right .dropdown-content, .dropdown-end.dropdown-left .dropdown-content {\n top: auto;\n bottom: 0;\n}\n\n.dropdown.dropdown-open .dropdown-content, .dropdown:not(.dropdown-hover):focus .dropdown-content, .dropdown:focus-within .dropdown-content {\n visibility: visible;\n opacity: 1;\n}\n\n@media (hover: hover) {\n .dropdown.dropdown-hover:hover .dropdown-content {\n visibility: visible;\n opacity: 1;\n }\n\n .btm-nav > .disabled:hover, .btm-nav > [disabled]:hover {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n }\n\n .btn:hover {\n --tw-border-opacity: 1;\n border-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn:hover {\n background-color: color-mix(in oklab, oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity, 1)) 90%, black);\n border-color: color-mix(in oklab, oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity, 1)) 90%, black);\n }\n }\n\n @supports not (color: oklch(0% 0 0)) {\n .btn:hover {\n background-color: var(--btn-color, var(--fallback-b2));\n border-color: var(--btn-color, var(--fallback-b2));\n }\n }\n\n .btn.glass:hover {\n --glass-opacity: 25%;\n --glass-border-opacity: 15%;\n }\n\n .btn-ghost:hover {\n border-color: #0000;\n }\n\n @supports (color: oklch(0% 0 0)) {\n .btn-ghost:hover {\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n }\n }\n\n .btn-link:hover {\n background-color: #0000;\n border-color: #0000;\n text-decoration-line: underline;\n }\n\n .btn-outline:hover {\n --tw-border-opacity: 1;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-b1, oklch(var(--b1) / var(--tw-text-opacity)));\n }\n\n .btn-outline.btn-primary:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-primary:hover {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-secondary:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-secondary:hover {\n background-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-accent:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-accent:hover {\n background-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-success:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-success:hover {\n background-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-info:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-info:hover {\n background-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-warning:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-warning:hover {\n background-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-error:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-error:hover {\n background-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n }\n }\n\n .btn-disabled:hover, .btn[disabled]:hover, .btn:disabled:hover {\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .2;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btninput[type=\"checkbox\"]:checked:hover, .btninput[type=\"radio\"]:checked:hover {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n }\n\n .dropdown.dropdown-hover:hover .dropdown-content {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n }\n\n :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover {\n cursor: pointer;\n outline-offset: 2px;\n outline: 2px solid #0000;\n }\n\n @supports (color: oklch(0% 0 0)) {\n :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover {\n background-color: var(--fallback-bc, oklch(var(--bc) / .1));\n }\n }\n}\n\n.dropdown:is(details) summary::-webkit-details-marker {\n display: none;\n}\n\n.label {\n -webkit-user-select: none;\n user-select: none;\n justify-content: space-between;\n align-items: center;\n padding: .5rem .25rem;\n display: flex;\n}\n\n.input {\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-width: 1px;\n border-color: #0000;\n flex-shrink: 1;\n height: 3rem;\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.input[type=\"number\"]::-webkit-inner-spin-button {\n margin-top: -1rem;\n margin-bottom: -1rem;\n margin-inline-end: -1rem;\n}\n\n.input-md[type=\"number\"]::-webkit-inner-spin-button {\n margin-top: -1rem;\n margin-bottom: -1rem;\n margin-inline-end: -1rem;\n}\n\n.join {\n border-radius: var(--rounded-btn, .5rem);\n align-items: stretch;\n display: inline-flex;\n}\n\n.join :where(.join-item), .join .join-item:not(:first-child):not(:last-child), .join :not(:first-child):not(:last-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join .join-item:first-child:not(:last-child), .join :first-child:not(:last-child) .join-item {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n}\n\n.join .dropdown .join-item:first-child:not(:last-child), .join :first-child:not(:last-child) .dropdown .join-item {\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n}\n\n.join :where(.join-item:first-child:not(:last-child)), .join :where(:first-child:not(:last-child) .join-item) {\n border-start-start-radius: inherit;\n border-end-start-radius: inherit;\n}\n\n.join .join-item:last-child:not(:first-child), .join :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join :where(.join-item:last-child:not(:first-child)), .join :where(:last-child:not(:first-child) .join-item) {\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n}\n\n@supports not selector(:has(*)) {\n :where(.join *) {\n border-radius: inherit;\n }\n}\n\n@supports selector(:has(*)) {\n :where(.join :has(.join-item)) {\n border-radius: inherit;\n }\n}\n\n.kbd {\n border-radius: var(--rounded-btn, .5rem);\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n border-bottom-width: 2px;\n justify-content: center;\n align-items: center;\n min-width: 2.2em;\n min-height: 2.2em;\n padding-left: .5rem;\n padding-right: .5rem;\n display: inline-flex;\n}\n\n.menu {\n flex-flow: column wrap;\n padding: .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n display: flex;\n}\n\n.menu :where(li ul) {\n white-space: nowrap;\n margin-inline-start: 1rem;\n padding-inline-start: .5rem;\n position: relative;\n}\n\n.menu :where(li:not(.menu-title) > :not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n -webkit-user-select: none;\n user-select: none;\n grid-auto-columns: minmax(auto, max-content) auto max-content;\n grid-auto-flow: column;\n align-content: flex-start;\n align-items: center;\n gap: .5rem;\n display: grid;\n}\n\n.menu li.disabled {\n cursor: not-allowed;\n -webkit-user-select: none;\n user-select: none;\n color: var(--fallback-bc, oklch(var(--bc) / .3));\n}\n\n.menu :where(li > .menu-dropdown:not(.menu-dropdown-show)) {\n display: none;\n}\n\n:where(.menu li) {\n flex-flow: column wrap;\n flex-shrink: 0;\n align-items: stretch;\n display: flex;\n position: relative;\n}\n\n:where(.menu li) .badge {\n justify-self: end;\n}\n\n.mockup-browser {\n border-radius: var(--rounded-box, 1rem);\n position: relative;\n overflow: auto hidden;\n}\n\n.mockup-browser pre[data-prefix]:before {\n content: attr(data-prefix);\n text-align: right;\n display: inline-block;\n}\n\n.progress {\n appearance: none;\n border-radius: var(--rounded-box, 1rem);\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n width: 100%;\n height: .5rem;\n position: relative;\n overflow: hidden;\n}\n\n.radio {\n --chkbg: var(--bc);\n cursor: pointer;\n appearance: none;\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n border-radius: 9999px;\n flex-shrink: 0;\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.select {\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n background-image: linear-gradient(45deg, #0000 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, #0000 50%);\n background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%);\n background-repeat: no-repeat;\n background-size: 4px 4px, 4px 4px;\n border-width: 1px;\n border-color: #0000;\n height: 3rem;\n min-height: 3rem;\n padding-inline: 1rem 2.5rem;\n font-size: .875rem;\n line-height: 2;\n display: inline-flex;\n}\n\n.select[multiple] {\n height: auto;\n}\n\n.table {\n border-radius: var(--rounded-box, 1rem);\n text-align: left;\n width: 100%;\n font-size: .875rem;\n line-height: 1.25rem;\n position: relative;\n}\n\n.table :where(.table-pin-rows thead tr) {\n z-index: 1;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n top: 0;\n}\n\n.table :where(.table-pin-rows tfoot tr) {\n z-index: 1;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n bottom: 0;\n}\n\n.table :where(.table-pin-cols tr th) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n left: 0;\n right: 0;\n}\n\n.table-zebra tbody tr:nth-child(2n) :where(.table-pin-cols tr th) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.textarea {\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-width: 1px;\n border-color: #0000;\n flex-shrink: 1;\n min-height: 3rem;\n padding: .5rem 1rem;\n font-size: .875rem;\n line-height: 2;\n}\n\n.avatar-group {\n display: flex;\n overflow: hidden;\n}\n\n.avatar-group :where(.avatar) {\n --tw-border-opacity: 1;\n border-width: 4px;\n border-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-border-opacity)));\n border-radius: 9999px;\n overflow: hidden;\n}\n\n.btm-nav > :not(.active) {\n padding-top: .125rem;\n}\n\n.btm-nav > :where(.active) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-top-width: 2px;\n}\n\n.btm-nav > .disabled, .btm-nav > [disabled] {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n}\n\n.btm-nav > * .label {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n .btn {\n animation: button-pop var(--animation-btn, .25s) ease-out;\n }\n}\n\n.btn:active:hover, .btn:active:focus {\n transform: scale(var(--btn-focus-scale, .97));\n animation: ease-out button-pop;\n}\n\n@supports not (color: oklch(0% 0 0)) {\n .btn {\n background-color: var(--btn-color, var(--fallback-b2));\n border-color: var(--btn-color, var(--fallback-b2));\n }\n\n .btn-primary {\n --btn-color: var(--fallback-p);\n }\n\n .btn-secondary {\n --btn-color: var(--fallback-s);\n }\n\n .btn-accent {\n --btn-color: var(--fallback-a);\n }\n\n .btn-info {\n --btn-color: var(--fallback-in);\n }\n\n .btn-success {\n --btn-color: var(--fallback-su);\n }\n\n .btn-warning {\n --btn-color: var(--fallback-wa);\n }\n\n .btn-error {\n --btn-color: var(--fallback-er);\n }\n}\n\n@supports (color: color-mix(in oklab, black, black)) {\n .btn-active {\n background-color: color-mix(in oklab, oklch(var(--btn-color, var(--b3)) / var(--tw-bg-opacity, 1)) 90%, black);\n border-color: color-mix(in oklab, oklch(var(--btn-color, var(--b3)) / var(--tw-border-opacity, 1)) 90%, black);\n }\n\n .btn-outline.btn-primary.btn-active {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n\n .btn-outline.btn-secondary.btn-active {\n background-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n }\n\n .btn-outline.btn-accent.btn-active {\n background-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n }\n\n .btn-outline.btn-success.btn-active {\n background-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n }\n\n .btn-outline.btn-info.btn-active {\n background-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n }\n\n .btn-outline.btn-warning.btn-active {\n background-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n }\n\n .btn-outline.btn-error.btn-active {\n background-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n }\n}\n\n.btn:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n}\n\n.btn-primary {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n@supports (color: oklch(0% 0 0)) {\n .btn-primary {\n --btn-color: var(--p);\n }\n\n .btn-secondary {\n --btn-color: var(--s);\n }\n\n .btn-accent {\n --btn-color: var(--a);\n }\n\n .btn-info {\n --btn-color: var(--in);\n }\n\n .btn-success {\n --btn-color: var(--su);\n }\n\n .btn-warning {\n --btn-color: var(--wa);\n }\n\n .btn-error {\n --btn-color: var(--er);\n }\n}\n\n.btn-secondary {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-s, oklch(var(--s) / 1));\n}\n\n.btn-accent {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n outline-color: var(--fallback-a, oklch(var(--a) / 1));\n}\n\n.btn-info {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-in, oklch(var(--in) / 1));\n}\n\n.btn-success {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-su, oklch(var(--su) / 1));\n}\n\n.btn-warning {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n outline-color: var(--fallback-wa, oklch(var(--wa) / 1));\n}\n\n.btn-error {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-er, oklch(var(--er) / 1));\n}\n\n.btn.glass {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n outline-color: currentColor;\n}\n\n.btn.glass.btn-active {\n --glass-opacity: 25%;\n --glass-border-opacity: 15%;\n}\n\n.btn-ghost {\n color: currentColor;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-width: 1px;\n border-color: #0000;\n outline-color: currentColor;\n}\n\n.btn-ghost.btn-active {\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n border-color: #0000;\n}\n\n.btn-link {\n --tw-text-opacity: 1;\n color: var(--fallback-p, oklch(var(--p) / var(--tw-text-opacity)));\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-color: #0000;\n outline-color: currentColor;\n text-decoration-line: underline;\n}\n\n.btn-link.btn-active {\n background-color: #0000;\n border-color: #0000;\n text-decoration-line: underline;\n}\n\n.btn-outline {\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-color: currentColor;\n}\n\n.btn-outline.btn-active {\n --tw-border-opacity: 1;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-b1, oklch(var(--b1) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-primary {\n --tw-text-opacity: 1;\n color: var(--fallback-p, oklch(var(--p) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-primary.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-secondary {\n --tw-text-opacity: 1;\n color: var(--fallback-s, oklch(var(--s) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-secondary.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-accent {\n --tw-text-opacity: 1;\n color: var(--fallback-a, oklch(var(--a) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-accent.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-success {\n --tw-text-opacity: 1;\n color: var(--fallback-su, oklch(var(--su) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-success.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-info {\n --tw-text-opacity: 1;\n color: var(--fallback-in, oklch(var(--in) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-info.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-warning {\n --tw-text-opacity: 1;\n color: var(--fallback-wa, oklch(var(--wa) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-warning.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-error {\n --tw-text-opacity: 1;\n color: var(--fallback-er, oklch(var(--er) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-error.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n}\n\n.btn.btn-disabled, .btn[disabled], .btn:disabled {\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .2;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n}\n\n.btninput[type=\"checkbox\"]:checked, .btninput[type=\"radio\"]:checked {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-p, oklch(var(--p) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n}\n\n.btninput[type=\"checkbox\"]:checked:focus-visible, .btninput[type=\"radio\"]:checked:focus-visible {\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n@keyframes button-pop {\n 0% {\n transform: scale(var(--btn-focus-scale, .98));\n }\n\n 40% {\n transform: scale(1.02);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n.checkbox:focus {\n box-shadow: none;\n}\n\n.checkbox:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.checkbox:disabled {\n cursor: not-allowed;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .2;\n border-width: 0;\n border-color: #0000;\n}\n\n.checkbox:checked, .checkbox[aria-checked=\"true\"] {\n animation: checkmark var(--animation-input, .2s) ease-out;\n background-repeat: no-repeat;\n background-color: var(--chkbg);\n background-image: linear-gradient(-45deg, transparent 65%, var(--chkbg) 65.99%), linear-gradient(45deg, transparent 75%, var(--chkbg) 75.99%), linear-gradient(-45deg, var(--chkbg) 40%, transparent 40.99%), linear-gradient(45deg, var(--chkbg) 30%, var(--chkfg) 30.99%, var(--chkfg) 40%, transparent 40.99%), linear-gradient(-45deg, var(--chkfg) 50%, var(--chkbg) 50.99%);\n}\n\n.checkbox:indeterminate {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n animation: checkmark var(--animation-input, .2s) ease-out;\n background-repeat: no-repeat;\n background-image: linear-gradient(90deg, transparent 80%, var(--chkbg) 80%), linear-gradient(-90deg, transparent 80%, var(--chkbg) 80%), linear-gradient(0deg, var(--chkbg) 43%, var(--chkfg) 43%, var(--chkfg) 57%, var(--chkbg) 57%);\n}\n\n@keyframes checkmark {\n 0% {\n background-position-y: 5px;\n }\n\n 50% {\n background-position-y: -2px;\n }\n\n 100% {\n background-position-y: 0;\n }\n}\n\ndetails.collapse {\n width: 100%;\n}\n\ndetails.collapse summary {\n outline-offset: 2px;\n outline: 2px solid #0000;\n display: block;\n position: relative;\n}\n\ndetails.collapse summary::-webkit-details-marker {\n display: none;\n}\n\n.collapse:focus-visible, .collapse:has(.collapse-title:focus-visible), .collapse:has( > input[type=\"checkbox\"]:focus-visible), .collapse:has( > input[type=\"radio\"]:focus-visible) {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.collapse-arrow > .collapse-title:after {\n --tw-translate-y: -100%;\n --tw-rotate: 45deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n content: \"\";\n transform-origin: 75% 75%;\n pointer-events: none;\n top: 1.9rem;\n width: .5rem;\n height: .5rem;\n transition-property: all;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: block;\n position: absolute;\n inset-inline-end: 1.4rem;\n box-shadow: 2px 2px;\n}\n\n.collapse-plus > .collapse-title:after {\n content: \"+\";\n pointer-events: none;\n top: .9rem;\n width: .5rem;\n height: .5rem;\n transition-property: all;\n transition-duration: .3s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: block;\n position: absolute;\n inset-inline-end: 1.4rem;\n}\n\n.collapse:not(.collapse-open):not(.collapse-close) > input[type=\"checkbox\"], .collapse:not(.collapse-open):not(.collapse-close) > input[type=\"radio\"]:not(:checked), .collapse:not(.collapse-open):not(.collapse-close) > .collapse-title {\n cursor: pointer;\n}\n\n.collapse:focus:not(.collapse-open):not(.collapse-close):not(.collapse[open]) > .collapse-title {\n cursor: unset;\n}\n\n.collapse-title {\n position: relative;\n}\n\n:where(.collapse > input[type=\"checkbox\"]), :where(.collapse > input[type=\"radio\"]) {\n z-index: 1;\n}\n\n.collapse-title, :where(.collapse > input[type=\"checkbox\"]), :where(.collapse > input[type=\"radio\"]) {\n padding: 1rem;\n width: 100%;\n min-height: 3.75rem;\n padding-inline-end: 3rem;\n transition: background-color .2s ease-out;\n}\n\n.collapse[open] > :where(.collapse-content), .collapse-open > :where(.collapse-content), .collapse:focus:not(.collapse-close) > :where(.collapse-content), .collapse:not(.collapse-close) > :where(input[type=\"checkbox\"]:checked ~ .collapse-content), .collapse:not(.collapse-close) > :where(input[type=\"radio\"]:checked ~ .collapse-content) {\n padding-bottom: 1rem;\n transition: padding .2s ease-out, background-color .2s ease-out;\n}\n\n.collapse[open].collapse-arrow > .collapse-title:after, .collapse-open.collapse-arrow > .collapse-title:after, .collapse-arrow:focus:not(.collapse-close) > .collapse-title:after, .collapse-arrow:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-title:after, .collapse-arrow:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-title:after {\n --tw-translate-y: -50%;\n --tw-rotate: 225deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.collapse[open].collapse-plus > .collapse-title:after, .collapse-open.collapse-plus > .collapse-title:after, .collapse-plus:focus:not(.collapse-close) > .collapse-title:after, .collapse-plus:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-title:after, .collapse-plus:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-title:after {\n content: \"−\";\n}\n\n.dropdown.dropdown-open .dropdown-content, .dropdown:focus .dropdown-content, .dropdown:focus-within .dropdown-content {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.input input {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-p, oklch(var(--p) / var(--tw-bg-opacity)));\n background-color: #0000;\n}\n\n.input input:focus {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.input[list]::-webkit-calendar-picker-indicator {\n line-height: 1em;\n}\n\n.input:focus, .input:focus-within {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.input:has( > input[disabled]), .input-disabled, .input:disabled, .input[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.input:has( > input[disabled])::placeholder, .input-disabled::placeholder, .input:disabled::placeholder, .input[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n.input:has( > input[disabled]) > input[disabled] {\n cursor: not-allowed;\n}\n\n.input::-webkit-date-and-time-value {\n text-align: inherit;\n}\n\n.join > :where(:not(:first-child)) {\n margin-top: 0;\n margin-bottom: 0;\n margin-inline-start: -1px;\n}\n\n.join > :where(:not(:first-child)).btn {\n margin-inline-start: calc(var(--border-btn) * -1);\n}\n\n.join-item:focus {\n isolation: isolate;\n}\n\n:where(.menu li:empty) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .1;\n height: 1px;\n margin: .5rem 1rem;\n}\n\n.menu :where(li ul):before {\n bottom: .75rem;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .1;\n content: \"\";\n inset-inline-start: 0;\n width: 1px;\n position: absolute;\n top: .75rem;\n}\n\n.menu :where(li:not(.menu-title) > :not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n text-align: start;\n text-wrap: balance;\n padding: .5rem 1rem;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n:where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):is(summary):not(.active, .btn):focus-visible, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):is(summary):not(.active, .btn):focus-visible {\n cursor: pointer;\n background-color: var(--fallback-bc, oklch(var(--bc) / .1));\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.menu li > :not(ul, .menu-title, details, .btn):active, .menu li > :not(ul, .menu-title, details, .btn).active, .menu li > details > summary:active {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity)));\n}\n\n.menu :where(li > details > summary)::-webkit-details-marker {\n display: none;\n}\n\n.menu :where(li > details > summary):after, .menu :where(li > .menu-dropdown-toggle):after {\n content: \"\";\n transform-origin: 75% 75%;\n pointer-events: none;\n justify-self: end;\n width: .5rem;\n height: .5rem;\n margin-top: -.5rem;\n transition-property: transform, margin-top;\n transition-duration: .3s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n display: block;\n transform: rotate(45deg);\n box-shadow: 2px 2px;\n}\n\n.menu :where(li > details[open] > summary):after, .menu :where(li > .menu-dropdown-toggle.menu-dropdown-show):after {\n margin-top: 0;\n transform: rotate(225deg);\n}\n\n.menu-title {\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n padding: .5rem 1rem;\n font-size: .875rem;\n font-weight: 700;\n line-height: 1.25rem;\n}\n\n.mockup-phone {\n background-color: #000;\n border: 4px solid #444;\n border-radius: 50px;\n margin: 0 auto;\n padding: 10px;\n display: inline-block;\n overflow: hidden;\n}\n\n.mockup-phone .camera {\n z-index: 11;\n background: #000;\n border-bottom-right-radius: 17px;\n border-bottom-left-radius: 17px;\n width: 150px;\n height: 25px;\n margin: 0 auto;\n position: relative;\n top: 0;\n left: 0;\n}\n\n.mockup-phone .camera:before {\n content: \"\";\n background-color: #0c0b0e;\n border-radius: 5px;\n width: 50px;\n height: 4px;\n position: absolute;\n top: 35%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n.mockup-phone .camera:after {\n content: \"\";\n background-color: #0f0b25;\n border-radius: 5px;\n width: 8px;\n height: 8px;\n position: absolute;\n top: 20%;\n left: 70%;\n}\n\n.mockup-phone .display {\n border-radius: 40px;\n margin-top: -25px;\n overflow: hidden;\n}\n\n.mockup-browser .mockup-browser-toolbar {\n align-items: center;\n width: 100%;\n margin-top: .75rem;\n margin-bottom: .75rem;\n padding-right: 1.4em;\n display: inline-flex;\n}\n\n.mockup-browser .mockup-browser-toolbar:where([dir=\"rtl\"], [dir=\"rtl\"] *) {\n flex-direction: row-reverse;\n}\n\n.mockup-browser .mockup-browser-toolbar:before {\n content: \"\";\n aspect-ratio: 1;\n opacity: .3;\n border-radius: 9999px;\n height: .75rem;\n margin-right: 4.8rem;\n display: inline-block;\n box-shadow: 1.4em 0, 2.8em 0, 4.2em 0;\n}\n\n.mockup-browser .mockup-browser-toolbar .input {\n text-overflow: ellipsis;\n white-space: nowrap;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n direction: ltr;\n width: 24rem;\n height: 1.75rem;\n margin-left: auto;\n margin-right: auto;\n padding-left: 2rem;\n display: block;\n position: relative;\n overflow: hidden;\n}\n\n.mockup-browser .mockup-browser-toolbar .input:before {\n content: \"\";\n aspect-ratio: 1;\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n opacity: .6;\n border-width: 2px;\n border-color: currentColor;\n border-radius: 9999px;\n height: .75rem;\n position: absolute;\n top: 50%;\n left: .5rem;\n}\n\n.mockup-browser .mockup-browser-toolbar .input:after {\n content: \"\";\n --tw-translate-y: 25%;\n --tw-rotate: -45deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n opacity: .6;\n border-width: 1px;\n border-color: currentColor;\n border-radius: 9999px;\n height: .5rem;\n position: absolute;\n top: 50%;\n left: 1.25rem;\n}\n\n@keyframes modal-pop {\n 0% {\n opacity: 0;\n }\n}\n\n.progress::-moz-progress-bar {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n}\n\n.progress:indeterminate {\n --progress-color: var(--fallback-bc, oklch(var(--bc) / 1));\n background-image: repeating-linear-gradient(90deg, var(--progress-color) -1%, var(--progress-color) 10%, transparent 10%, transparent 90%);\n background-position-x: 15%;\n background-size: 200%;\n animation: 5s ease-in-out infinite progress-loading;\n}\n\n.progress::-webkit-progress-bar {\n border-radius: var(--rounded-box, 1rem);\n background-color: #0000;\n}\n\n.progress::-webkit-progress-value {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n}\n\n.progress:indeterminate::-moz-progress-bar {\n background-color: #0000;\n background-image: repeating-linear-gradient(90deg, var(--progress-color) -1%, var(--progress-color) 10%, transparent 10%, transparent 90%);\n background-position-x: 15%;\n background-size: 200%;\n animation: 5s ease-in-out infinite progress-loading;\n}\n\n@keyframes progress-loading {\n 50% {\n background-position-x: -115%;\n }\n}\n\n.radio:focus {\n box-shadow: none;\n}\n\n.radio:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.radio:checked, .radio[aria-checked=\"true\"] {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n animation: radiomark var(--animation-input, .2s) ease-out;\n box-shadow: 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n background-image: none;\n}\n\n.radio:disabled {\n cursor: not-allowed;\n opacity: .2;\n}\n\n@keyframes radiomark {\n 0% {\n box-shadow: 0 0 0 12px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 12px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n\n 50% {\n box-shadow: 0 0 0 3px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 3px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n\n 100% {\n box-shadow: 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n}\n\n@keyframes rating-pop {\n 0% {\n transform: translateY(-.125em);\n }\n\n 40% {\n transform: translateY(-.125em);\n }\n\n 100% {\n transform: translateY(0);\n }\n}\n\n.select:focus {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.select-disabled, .select:disabled, .select[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.select-disabled::placeholder, .select:disabled::placeholder, .select[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n.select-multiple, .select[multiple], .select[size].select:not([size=\"1\"]) {\n background-image: none;\n padding-right: 1rem;\n}\n\n[dir=\"rtl\"] .select {\n background-position: 12px calc(1px + 50%), 16px calc(1px + 50%);\n}\n\n.skeleton {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n will-change: background-position;\n background-image: linear-gradient(105deg, transparent 0%, transparent 40%, var(--fallback-b1, oklch(var(--b1) / 1)) 50%, transparent 60%, transparent 100%);\n background-position-x: -50%;\n background-repeat: no-repeat;\n background-size: 200%;\n animation: 1.8s ease-in-out infinite skeleton;\n}\n\n@media (prefers-reduced-motion) {\n .skeleton {\n animation-duration: 15s;\n }\n}\n\n@keyframes skeleton {\n from {\n background-position: 150%;\n }\n\n to {\n background-position: -50%;\n }\n}\n\n.table:where([dir=\"rtl\"], [dir=\"rtl\"] *) {\n text-align: right;\n}\n\n.table :where(th, td) {\n vertical-align: middle;\n padding: .75rem 1rem;\n}\n\n.table tr.active, .table tr.active:nth-child(2n), .table-zebra tbody tr:nth-child(2n) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.table-zebra tr.active, .table-zebra tr.active:nth-child(2n), .table-zebra-zebra tbody tr:nth-child(2n) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n}\n\n.table :where(thead tr, tbody tr:not(:last-child), tbody tr:first-child:last-child) {\n --tw-border-opacity: 1;\n border-bottom-width: 1px;\n border-bottom-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n}\n\n.table :where(thead, tfoot) {\n white-space: nowrap;\n color: var(--fallback-bc, oklch(var(--bc) / .6));\n font-size: .75rem;\n font-weight: 700;\n line-height: 1rem;\n}\n\n.table :where(tfoot) {\n --tw-border-opacity: 1;\n border-top-width: 1px;\n border-top-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n}\n\n.textarea:focus {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.textarea-primary {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n}\n\n.textarea-primary:focus {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n.textarea-disabled, .textarea:disabled, .textarea[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.textarea-disabled::placeholder, .textarea:disabled::placeholder, .textarea[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n@keyframes toast-pop {\n 0% {\n opacity: 0;\n transform: scale(.9);\n }\n\n 100% {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n.glass, .glass.btn-active {\n backdrop-filter: blur(var(--glass-blur, 40px));\n background-color: #0000;\n background-image: linear-gradient(135deg, rgb(255 255 255 / var(--glass-opacity, 30%))0%, #0000 100%), linear-gradient(var(--glass-reflex-degree, 100deg), rgb(255 255 255 / var(--glass-reflex-opacity, 10%))25%, #0000 25%);\n box-shadow: 0 0 0 1px rgb(255 255 255 / var(--glass-border-opacity, 10%))inset, 0 0 0 2px #0000000d;\n text-shadow: 0 1px rgb(0 0 0 / var(--glass-text-shadow-opacity, 5%));\n border: none;\n}\n\n@media (hover: hover) {\n .glass.btn-active {\n backdrop-filter: blur(var(--glass-blur, 40px));\n background-color: #0000;\n background-image: linear-gradient(135deg, rgb(255 255 255 / var(--glass-opacity, 30%))0%, #0000 100%), linear-gradient(var(--glass-reflex-degree, 100deg), rgb(255 255 255 / var(--glass-reflex-opacity, 10%))25%, #0000 25%);\n box-shadow: 0 0 0 1px rgb(255 255 255 / var(--glass-border-opacity, 10%))inset, 0 0 0 2px #0000000d;\n text-shadow: 0 1px rgb(0 0 0 / var(--glass-text-shadow-opacity, 5%));\n border: none;\n }\n}\n\n.btm-nav-xs {\n height: 2.5rem;\n}\n\n.btm-nav-xs > :where(.active) {\n border-top-width: 1px;\n}\n\n.btm-nav-xs .btm-nav-label {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.btm-nav-sm {\n height: 3rem;\n}\n\n.btm-nav-sm > :where(.active) {\n border-top-width: 2px;\n}\n\n.btm-nav-sm .btm-nav-label {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.btm-nav-md {\n height: 4rem;\n}\n\n.btm-nav-md > :where(.active) {\n border-top-width: 2px;\n}\n\n.btm-nav-md .btm-nav-label {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.btm-nav-lg {\n height: 5rem;\n}\n\n.btm-nav-lg > :where(.active) {\n border-top-width: 4px;\n}\n\n.btm-nav-lg .btm-nav-label {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.join.join-vertical {\n flex-direction: column;\n}\n\n.join.join-vertical .join-item:first-child:not(:last-child), .join.join-vertical :first-child:not(:last-child) .join-item {\n border-start-start-radius: inherit;\n border-start-end-radius: inherit;\n border-end-end-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join.join-vertical .join-item:last-child:not(:first-child), .join.join-vertical :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-end-end-radius: inherit;\n border-end-start-radius: inherit;\n}\n\n.join.join-horizontal {\n flex-direction: row;\n}\n\n.join.join-horizontal .join-item:first-child:not(:last-child), .join.join-horizontal :first-child:not(:last-child) .join-item {\n border-start-start-radius: inherit;\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n border-end-start-radius: inherit;\n}\n\n.join.join-horizontal .join-item:last-child:not(:first-child), .join.join-horizontal :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n border-end-start-radius: 0;\n}\n\n.avatar.online:before {\n content: \"\";\n z-index: 10;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-su, oklch(var(--su) / var(--tw-bg-opacity)));\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-b1, oklch(var(--b1) / 1));\n border-radius: 9999px;\n width: 15%;\n height: 15%;\n display: block;\n position: absolute;\n top: 7%;\n right: 7%;\n}\n\n.avatar.offline:before {\n content: \"\";\n z-index: 10;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-b1, oklch(var(--b1) / 1));\n border-radius: 9999px;\n width: 15%;\n height: 15%;\n display: block;\n position: absolute;\n top: 7%;\n right: 7%;\n}\n\n.join.join-vertical > :where(:not(:first-child)) {\n margin-top: -1px;\n margin-left: 0;\n margin-right: 0;\n}\n\n.join.join-vertical > :where(:not(:first-child)).btn {\n margin-top: calc(var(--border-btn) * -1);\n}\n\n.join.join-horizontal > :where(:not(:first-child)) {\n margin-top: 0;\n margin-bottom: 0;\n margin-inline-start: -1px;\n}\n\n.join.join-horizontal > :where(:not(:first-child)).btn {\n margin-inline-start: calc(var(--border-btn) * -1);\n}\n\n.menu-xs :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-xs :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: .25rem;\n padding: .25rem .5rem;\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.menu-xs .menu-title {\n padding: .25rem .5rem;\n}\n\n.menu-sm :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-sm :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .25rem .75rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.menu-sm .menu-title {\n padding: .5rem .75rem;\n}\n\n.menu-md :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-md :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .5rem 1rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.menu-md .menu-title {\n padding: .5rem 1rem;\n}\n\n.menu-lg :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-lg :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .75rem 1.5rem;\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n\n.menu-lg .menu-title {\n padding: .75rem 1.5rem;\n}\n\n.visible {\n visibility: visible;\n}\n\n.collapse {\n visibility: collapse;\n}\n\n.static {\n position: static;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.sticky {\n position: sticky;\n}\n\n.isolate {\n isolation: isolate;\n}\n\n.mx-1 {\n margin-left: .25rem;\n margin-right: .25rem;\n}\n\n.mx-2 {\n margin-left: .5rem;\n margin-right: .5rem;\n}\n\n.mt-2 {\n margin-top: .5rem;\n}\n\n.block {\n display: block;\n}\n\n.flex {\n display: flex;\n}\n\n.table {\n display: table;\n}\n\n.grid {\n display: grid;\n}\n\n.hidden {\n display: none;\n}\n\n.w-full {\n width: 100%;\n}\n\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.resize {\n resize: both;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.items-center {\n align-items: center;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.gap-y-1 {\n row-gap: .25rem;\n}\n\n.gap-y-1\\.5 {\n row-gap: .375rem;\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-base-300 {\n --tw-border-opacity: 1;\n border-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-border-opacity)));\n}\n\n.border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity));\n}\n\n.bg-base-200 {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.p-5 {\n padding: 1.25rem;\n}\n\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n.font-medium {\n font-weight: 500;\n}\n\n.underline {\n text-decoration-line: underline;\n}\n\n.outline {\n outline-style: solid;\n}\n\n.blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.ease-in-out {\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n@media (hover: hover) {\n .table .hover\\:hover:hovertr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table .hover\\:hover:hovertr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .hover\\:hover:hovertr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .hover\\:hover:hovertr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table .disabled\\:hover:disabledtr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table .disabled\\:hover:disabledtr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .disabled\\:hover:disabledtr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .disabled\\:hover:disabledtr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n}\n/*# sourceMappingURL=index.371372f8.css.map */\n","@tailwind base;\n@tailwind components;\n@tailwind utilities;"],"names":[],"version":3,"file":"index.371372f8.css.map"} \ No newline at end of file diff --git a/jetty/src/main/resources/webapp/index.4c99d4d4.js b/jetty/src/main/resources/webapp/index.4c99d4d4.js deleted file mode 100644 index cff7b13..0000000 --- a/jetty/src/main/resources/webapp/index.4c99d4d4.js +++ /dev/null @@ -1,16 +0,0 @@ -var e=globalThis,t={},a={},s=e.parcelRequire3bab;null==s&&((s=function(e){if(e in t)return t[e].exports;if(e in a){var s=a[e];delete a[e];var r={id:e,exports:{}};return t[e]=r,s.call(r.exports,r,r.exports),r.exports}var i=Error("Cannot find module '"+e+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(e,t){a[e]=t},e.parcelRequire3bab=s),s.register;var r=s("hNeh9"),i=s("800sp");async function*o(e){let t=e.body.getReader();for(;;){let{done:e,value:a}=await t.read();if(e)break;yield new TextDecoder().decode(a)}}class n extends i.LitElement{static styles=[r.default,(0,i.css)` - .container { - display: flex; - flex-direction: column; - row-gap: 10px; - } - `];static properties={url:{},test:{type:Boolean}};constructor(){super(),this.test=!1,this.formMetaData={}}connectedCallback(){super.connectedCallback(),this.test?setTimeout(()=>{this.dispatchEvent(new CustomEvent("graph",{detail:` - flowchart TD - Start --> Stop - `,bubbles:!0,composed:!0,cancelable:!0})),this.formMetaData={input:{type:"string",required:!0}},this.requestUpdate()},1e3):this.#e()}async #e(){let e=await fetch(`${this.url}/init`),t=await e.json();console.debug(t),this.dispatchEvent(new CustomEvent("graph",{detail:t.graph,bubbles:!0,composed:!0,cancelable:!0})),this.formMetaData=t.args,this.requestUpdate()}render(){return console.debug("render",this.formMetaData),(0,i.html)` -
- ${Object.entries(this.formMetaData).map(([e,t])=>(0,i.html)``)} - -
- `}async #t(){if(this.test){setTimeout(()=>{this.dispatchEvent(new CustomEvent("result",{detail:{node:"node1",state:{property1:"value1",property2:"value2"}},bubbles:!0,composed:!0,cancelable:!0}))},1e3);return}let e=Object.keys(this.formMetaData).reduce((e,t)=>(e[t]=this.shadowRoot.getElementById(t).value,e),{});for await(let t of o(await fetch(`${this.url}/stream`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})))console.debug(t),this.dispatchEvent(new CustomEvent("result",{detail:JSON.parse(t),bubbles:!0,composed:!0,cancelable:!0}))}}window.customElements.define("lg4j-executor",n); -//# sourceMappingURL=index.4c99d4d4.js.map diff --git a/jetty/src/main/resources/webapp/index.4c99d4d4.js.map b/jetty/src/main/resources/webapp/index.4c99d4d4.js.map deleted file mode 100644 index 7f5add6..0000000 --- a/jetty/src/main/resources/webapp/index.4c99d4d4.js.map +++ /dev/null @@ -1 +0,0 @@ -{"mappings":"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","sources":["","src/lg4j-executor.js"],"sourcesContent":["\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire3bab\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire3bab\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\nvar $hNeh9 = parcelRequire(\"hNeh9\");\n\nvar $800sp = parcelRequire(\"800sp\");\n/**\n * Asynchronously fetches data from a given fetch call and yields the data in chunks.\n * \n * @async\n * @generator\n * @param Response - Response object to stream.\n * @yields {Promise} The decoded text chunk from the response stream.\n */ async function* $0ca21e1f1d158660$var$streamingResponse(response) {\n // Attach Reader\n const reader = response.body.getReader();\n while(true){\n // wait for next encoded chunk\n const { done: done, value: value } = await reader.read();\n // check if stream is done\n if (done) break;\n // Decodes data chunk and yields it\n yield new TextDecoder().decode(value);\n }\n}\nclass $0ca21e1f1d158660$export$2fe88ce002d9c04f extends (0, $800sp.LitElement) {\n /**\n * Styles applied to the component.\n * \n * @static\n * @type {Array}\n */ static styles = [\n (0, $hNeh9.default),\n (0, $800sp.css)`\n .container {\n display: flex;\n flex-direction: column;\n row-gap: 10px;\n }\n `\n ];\n /**\n * Properties of the component.\n * \n * @static\n * @type {Object}\n */ static properties = {\n url: {},\n test: {\n type: Boolean\n }\n };\n /**\n * Creates an instance of LG4JInputElement.\n * \n * @constructor\n */ constructor(){\n super();\n this.test = false;\n this.formMetaData = {};\n }\n /**\n * Lifecycle method called when the element is added to the document's DOM.\n */ connectedCallback() {\n super.connectedCallback();\n if (this.test) setTimeout(()=>{\n this.dispatchEvent(new CustomEvent(\"graph\", {\n detail: `\n flowchart TD\n Start --> Stop\n `,\n bubbles: true,\n composed: true,\n cancelable: true\n }));\n this.formMetaData = {\n input: {\n type: \"string\",\n required: true\n }\n };\n this.requestUpdate();\n }, 1000);\n else this.#init();\n }\n async #init() {\n const initResponse = await fetch(`${this.url}/init`);\n const initData = await initResponse.json();\n console.debug(initData);\n this.dispatchEvent(new CustomEvent(\"graph\", {\n detail: initData.graph,\n bubbles: true,\n composed: true,\n cancelable: true\n }));\n this.formMetaData = initData.args;\n this.requestUpdate();\n }\n /**\n * Renders the HTML template for the component.\n * \n * @returns {TemplateResult} The rendered HTML template.\n */ render() {\n console.debug(\"render\", this.formMetaData);\n return (0, $800sp.html)`\n
\n ${Object.entries(this.formMetaData).map(([key, value])=>(0, $800sp.html)``)}\n \n
\n `;\n }\n async #submit() {\n // console.debug( 'test', this.test )\n if (this.test) {\n setTimeout(()=>{\n this.dispatchEvent(new CustomEvent(\"result\", {\n detail: {\n node: \"node1\",\n state: {\n property1: \"value1\",\n property2: \"value2\"\n }\n },\n bubbles: true,\n composed: true,\n cancelable: true\n }));\n }, 1000);\n return;\n }\n const data = Object.keys(this.formMetaData).reduce((acc, key)=>{\n acc[key] = this.shadowRoot.getElementById(key).value;\n return acc;\n }, {});\n const execResponse = await fetch(`${this.url}/stream`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(data)\n });\n for await (let chunk of $0ca21e1f1d158660$var$streamingResponse(execResponse)){\n console.debug(chunk);\n this.dispatchEvent(new CustomEvent(\"result\", {\n detail: JSON.parse(chunk),\n bubbles: true,\n composed: true,\n cancelable: true\n }));\n }\n }\n}\nwindow.customElements.define(\"lg4j-executor\", $0ca21e1f1d158660$export$2fe88ce002d9c04f);\n\n\n//# sourceMappingURL=index.4c99d4d4.js.map\n","import TWStyles from './twlit';\n\nimport { html, css, LitElement } from 'lit';\n\n/**\n * Asynchronously fetches data from a given fetch call and yields the data in chunks.\n * \n * @async\n * @generator\n * @param Response - Response object to stream.\n * @yields {Promise} The decoded text chunk from the response stream.\n */\nasync function* streamingResponse(response) {\n // Attach Reader\n const reader = response.body.getReader();\n while (true) {\n // wait for next encoded chunk\n const { done, value } = await reader.read();\n // check if stream is done\n if (done) break;\n // Decodes data chunk and yields it\n yield (new TextDecoder().decode(value));\n }\n}\n\n/**\n * LG4JInputElement is a custom web component that extends LitElement.\n * It provides a styled input container with a placeholder.\n * \n * @class\n * @extends {LitElement}\n */\nexport class LG4JExecutorElement extends LitElement {\n\n /**\n * Styles applied to the component.\n * \n * @static\n * @type {Array}\n */\n static styles = [TWStyles, css`\n .container {\n display: flex;\n flex-direction: column;\n row-gap: 10px;\n }\n `];\n\n /**\n * Properties of the component.\n * \n * @static\n * @type {Object}\n */\n static properties = {\n url: {},\n test: { type: Boolean }\n }\n\n /**\n * Creates an instance of LG4JInputElement.\n * \n * @constructor\n */\n constructor() {\n super();\n this.test = false\n this.formMetaData = {}\n }\n\n /**\n * Lifecycle method called when the element is added to the document's DOM.\n */\n connectedCallback() {\n super.connectedCallback();\n\n if(this.test ) {\n\n setTimeout( () => {\n \n this.dispatchEvent( new CustomEvent( 'graph', { \n detail: `\n flowchart TD\n Start --> Stop\n `,\n bubbles: true,\n composed: true,\n cancelable: true\n }));\n\n this.formMetaData = { \n input: { type: 'string', required: true }\n }\n \n this.requestUpdate()\n\n }, 1000 );\n \n }\n else {\n\n this.#init()\n\n }\n\n }\n\n async #init() {\n\n const initResponse = await fetch( `${this.url}/init` )\n\n const initData = await initResponse.json()\n \n console.debug( initData );\n\n this.dispatchEvent( new CustomEvent( 'graph', { \n detail: initData.graph,\n bubbles: true,\n composed: true,\n cancelable: true\n }));\n\n this.formMetaData = initData.args\n this.requestUpdate()\n }\n\n /**\n * Renders the HTML template for the component.\n * \n * @returns {TemplateResult} The rendered HTML template.\n */\n render() {\n console.debug( 'render', this.formMetaData )\n return html`\n
\n ${ Object.entries(this.formMetaData).map( ([key,value]) => \n html``\n )}\n \n
\n `;\n }\n\n async #submit() {\n // console.debug( 'test', this.test )\n \n if(this.test ) {\n\n setTimeout( () => {\n\n this.dispatchEvent( new CustomEvent( 'result', { \n detail: { node: 'node1', state: { property1: \"value1\", property2: \"value2\" }},\n bubbles: true,\n composed: true,\n cancelable: true\n } ) );\n\n }, 1000 );\n \n return\n }\n \n const data = Object.keys(this.formMetaData).reduce( (acc, key) => {\n acc[key] = this.shadowRoot.getElementById(key).value\n return acc\n }, {});\n\n const execResponse = await fetch(`${this.url}/stream`, {\n method: 'POST', // *GET, POST, PUT, DELETE, etc.\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify(data)\n });\n\n for await (let chunk of streamingResponse( execResponse ) ) {\n console.debug( chunk )\n\n this.dispatchEvent( new CustomEvent( 'result', { \n detail: JSON.parse(chunk),\n bubbles: true,\n composed: true,\n cancelable: true\n } ) );\n\n }\n }\n \n}\n\n\nwindow.customElements.define('lg4j-executor', LG4JExecutorElement);\n"],"names":["$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$hNeh9","$800sp","$0ca21e1f1d158660$var$streamingResponse","response","reader","body","getReader","done","value","read","TextDecoder","decode","$0ca21e1f1d158660$export$2fe88ce002d9c04f","LitElement","styles","default","css","properties","url","test","type","Boolean","constructor","formMetaData","connectedCallback","setTimeout","dispatchEvent","CustomEvent","detail","bubbles","composed","cancelable","input","required","requestUpdate","initResponse","fetch","initData","json","console","debug","graph","args","render","html","Object","entries","map","key","submit","node","state","property1","property2","data","keys","reduce","acc","shadowRoot","getElementById","chunk","method","headers","JSON","stringify","parse","window","customElements","define"],"version":3,"file":"index.4c99d4d4.js.map"} \ No newline at end of file diff --git a/jetty/src/main/resources/webapp/index.535508a0.js b/jetty/src/main/resources/webapp/index.535508a0.js deleted file mode 100644 index 2fa3c37..0000000 --- a/jetty/src/main/resources/webapp/index.535508a0.js +++ /dev/null @@ -1,23 +0,0 @@ -var e=globalThis,t={},s={},l=e.parcelRequire3bab;null==l&&((l=function(e){if(e in t)return t[e].exports;if(e in s){var l=s[e];delete s[e];var r={id:e,exports:{}};return t[e]=r,l.call(r.exports,r,r.exports),r.exports}var i=Error("Cannot find module '"+e+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(e,t){s[e]=t},e.parcelRequire3bab=l),l.register;var r=l("hNeh9"),i=l("800sp");class a extends i.LitElement{static styles=[r.default,(0,i.css)``];static properties={};constructor(){super(),this.results=[]}connectedCallback(){super.connectedCallback(),this.addEventListener("result",this.#e)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("result",this.#e)}#t(e,t){return(0,i.html)` -
- -
${e.node}
-
- - - ${Object.entries(e.state).map(([e,t])=>(0,i.html)` - - - - - `)} - -
${e}${t}
-
-
- `}#e=e=>{console.debug("onResult",e),this.results.push(e.detail),this.requestUpdate()};render(){return(0,i.html)` -
- ${this.results.map((e,t)=>this.#t(e,t))} -
- `}}window.customElements.define("lg4j-result",a); -//# sourceMappingURL=index.535508a0.js.map diff --git a/jetty/src/main/resources/webapp/index.535508a0.js.map b/jetty/src/main/resources/webapp/index.535508a0.js.map deleted file mode 100644 index 275d4ca..0000000 --- a/jetty/src/main/resources/webapp/index.535508a0.js.map +++ /dev/null @@ -1 +0,0 @@ -{"mappings":"A,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,E,S,E,E,QCWO,OAAM,UAA0B,EAAA,UAAS,CAE9C,OAAO,OAAS,CAAC,EAAA,OAAO,CAAG,AAAA,CAAA,EAAA,EAAA,GAAE,AAAF,CAAG,CAAC,CAAC,CAAC,AAAA,AAEjC,QAAO,WAAa,CACpB,CAAC,AAED,cAAc,CACZ,KAAK,GACL,IAAI,CAAC,OAAO,CAAG,EAAE,AACnB,CAEA,mBAAoB,CAClB,KAAK,CAAC,oBAEN,IAAI,CAAC,gBAAgB,CAAE,SAAU,IAAI,CAAC,CAAC,CAAQ,CACjD,CAEA,sBAAuB,CACrB,KAAK,CAAC,uBAEN,IAAI,CAAC,mBAAmB,CAAE,SAAW,IAAI,CAAC,CAAC,CAAQ,CACrD,CAQA,CAAC,CAAY,CAAC,CAAM,CAAE,CAAK,EACzB,MAAO,AAAA,CAAA,EAAA,EAAA,IAAG,AAAH,CAAI,CAAC;;;sDAGsC,EAAE,EAAO,IAAI,CAAC;;;;YAIxD,EAAE,OAAO,OAAO,CAAC,EAAO,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAK,EAAM,GAAK,AAAA,CAAA,EAAA,EAAA,IAAG,AAAH,CAAI,CAAC;;gCAEtC,EAAE,EAAI;gCACN,EAAE,EAAM;;YAE5B,CAAC,EAAE;;;;;IAKX,CAAC,AACH,CASA,CAAC,CAAQ,CAAG,AAAC,IAEX,QAAQ,KAAK,CAAE,WAAY,GAG3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAE,EAAE,MAAM,EAC3B,IAAI,CAAC,aAAa,EAEpB,CAAC,AAGD,CAAA,QAAS,CAEP,MAAO,AAAA,CAAA,EAAA,EAAA,IAAG,AAAH,CAAI,CAAC;;MAEV,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAE,CAAC,EAAQ,IAAU,IAAI,CAAC,CAAC,CAAY,CAAC,EAAQ,IAAQ;;IAE5E,CAAC,AACH,CACF,CAEA,OAAO,cAAc,CAAC,MAAM,CAAC,cAAe","sources":["","src/lg4j-result.js"],"sourcesContent":["\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire3bab\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire3bab\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\nvar $hNeh9 = parcelRequire(\"hNeh9\");\n\nvar $800sp = parcelRequire(\"800sp\");\nclass $c06cac3eedeb74d1$export$c5542a7edb16317 extends (0, $800sp.LitElement) {\n static styles = [\n (0, $hNeh9.default),\n (0, $800sp.css)``\n ];\n static properties = {};\n constructor(){\n super();\n this.results = [];\n }\n connectedCallback() {\n super.connectedCallback();\n this.addEventListener(\"result\", this.#onResult);\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener(\"result\", this.#onResult);\n }\n /**\n * Renders a result.\n * @param {ResultData} result - The result data to render.\n * @returns {import('lit').TemplateResult} The template for the result.\n */ #renderResult(result, index) {\n return (0, $800sp.html)`\n
\n \n
${result.node}
\n
\n \n \n ${Object.entries(result.state).map(([key, value])=>(0, $800sp.html)`\n \n \n \n \n `)}\n \n
${key}${value}
\n
\n
\n `;\n }\n /**\n * Event handler for the 'result' event.\n * \n * @param {CustomEvent} e - The event object containing the result data.\n * @private\n */ #onResult = (e)=>{\n console.debug(\"onResult\", e);\n // TODO: validate e.detail\n this.results.push(e.detail);\n this.requestUpdate();\n };\n render() {\n return (0, $800sp.html)`\n
\n ${this.results.map((result, index)=>this.#renderResult(result, index))}\n
\n `;\n }\n}\nwindow.customElements.define(\"lg4j-result\", $c06cac3eedeb74d1$export$c5542a7edb16317);\n\n\n//# sourceMappingURL=index.535508a0.js.map\n","import TWStyles from './twlit';\n\nimport { html, css, LitElement } from 'lit';\n\n/**\n * @typedef {Object} ResultData\n * @property {string} node - The node identifier.\n * @property {Record} state - The state associated with the node.\n */\n\n\nexport class LG4JResultElement extends LitElement {\n\n static styles = [TWStyles, css``]\n\n static properties = {\n }\n\n constructor() {\n super()\n this.results = []\n }\n \n connectedCallback() {\n super.connectedCallback();\n\n this.addEventListener( 'result', this.#onResult )\n }\n\n disconnectedCallback() {\n super.disconnectedCallback()\n\n this.removeEventListener( 'result', this.#onResult )\n }\n\n \n /**\n * Renders a result.\n * @param {ResultData} result - The result data to render.\n * @returns {import('lit').TemplateResult} The template for the result.\n */\n #renderResult(result, index) {\n return html`\n
\n \n
${result.node}
\n
\n \n \n ${Object.entries(result.state).map(([key, value]) => html`\n \n \n \n \n `)}\n \n
${key}${value}
\n
\n
\n `\n }\n\n \n /**\n * Event handler for the 'result' event.\n * \n * @param {CustomEvent} e - The event object containing the result data.\n * @private\n */\n #onResult = (e) => {\n\n console.debug( \"onResult\", e )\n \n // TODO: validate e.detail\n this.results.push( e.detail )\n this.requestUpdate()\n \n }\n\n\n render() {\n \n return html`\n
\n ${this.results.map( (result, index) => this.#renderResult(result, index))}\n
\n `;\n }\n}\n\nwindow.customElements.define('lg4j-result', LG4JResultElement);\n"],"names":["$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$hNeh9","$800sp","$c06cac3eedeb74d1$export$c5542a7edb16317","LitElement","styles","default","css","properties","constructor","results","connectedCallback","addEventListener","onResult","disconnectedCallback","removeEventListener","renderResult","result","index","html","node","Object","entries","state","map","key","value","e","console","debug","push","detail","requestUpdate","render","window","customElements","define"],"version":3,"file":"index.535508a0.js.map"} \ No newline at end of file diff --git a/jetty/src/main/resources/webapp/index.66da7916.js b/jetty/src/main/resources/webapp/index.66da7916.js deleted file mode 100644 index d5acf99..0000000 --- a/jetty/src/main/resources/webapp/index.66da7916.js +++ /dev/null @@ -1,2702 +0,0 @@ -function t(t,e,o,r){Object.defineProperty(t,e,{get:o,set:r,enumerable:!0,configurable:!0})}var e=globalThis,o={},r={},a=e.parcelRequire3bab;null==a&&((a=function(t){if(t in o)return o[t].exports;if(t in r){var e=r[t];delete r[t];var a={id:t,exports:{}};return o[t]=a,e.call(a.exports,a,a.exports),a.exports}var i=Error("Cannot find module '"+t+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(t,e){r[t]=e},e.parcelRequire3bab=a);var i=a.register;i("hNeh9",function(e,o){t(e.exports,"default",()=>i),a("800sp");var r=a("4jdI8"),i=(0,r.css)` -*, :before, :after { - box-sizing: border-box; - border: 0 solid #e5e7eb; -} - -:before, :after { - --tw-content: ""; -} - -html, :host { - -webkit-text-size-adjust: 100%; - tab-size: 4; - font-feature-settings: normal; - font-variation-settings: normal; - -webkit-tap-highlight-color: transparent; - font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; - line-height: 1.5; -} - -body { - line-height: inherit; - margin: 0; -} - -hr { - color: inherit; - border-top-width: 1px; - height: 0; -} - -abbr:where([title]) { - text-decoration: underline dotted; -} - -h1, h2, h3, h4, h5, h6 { - font-size: inherit; - font-weight: inherit; -} - -a { - color: inherit; - -webkit-text-decoration: inherit; - text-decoration: inherit; -} - -b, strong { - font-weight: bolder; -} - -code, kbd, samp, pre { - font-feature-settings: normal; - font-variation-settings: normal; - font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace; - font-size: 1em; -} - -small { - font-size: 80%; -} - -sub, sup { - vertical-align: baseline; - font-size: 75%; - line-height: 0; - position: relative; -} - -sub { - bottom: -.25em; -} - -sup { - top: -.5em; -} - -table { - text-indent: 0; - border-color: inherit; - border-collapse: collapse; -} - -button, input, optgroup, select, textarea { - font-feature-settings: inherit; - font-variation-settings: inherit; - font-family: inherit; - font-size: 100%; - font-weight: inherit; - line-height: inherit; - letter-spacing: inherit; - color: inherit; - margin: 0; - padding: 0; -} - -button, select { - text-transform: none; -} - -button, input:where([type="button"]), input:where([type="reset"]), input:where([type="submit"]) { - -webkit-appearance: button; - background-color: #0000; - background-image: none; -} - -:-moz-focusring { - outline: auto; -} - -:-moz-ui-invalid { - box-shadow: none; -} - -progress { - vertical-align: baseline; -} - -::-webkit-inner-spin-button { - height: auto; -} - -::-webkit-outer-spin-button { - height: auto; -} - -[type="search"] { - -webkit-appearance: textfield; - outline-offset: -2px; -} - -::-webkit-search-decoration { - -webkit-appearance: none; -} - -::-webkit-file-upload-button { - -webkit-appearance: button; - font: inherit; -} - -summary { - display: list-item; -} - -blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre { - margin: 0; -} - -fieldset { - margin: 0; - padding: 0; -} - -legend { - padding: 0; -} - -ol, ul, menu { - margin: 0; - padding: 0; - list-style: none; -} - -dialog { - padding: 0; -} - -textarea { - resize: vertical; -} - -input::placeholder, textarea::placeholder { - opacity: 1; - color: #9ca3af; -} - -button, [role="button"] { - cursor: pointer; -} - -:disabled { - cursor: default; -} - -img, svg, video, canvas, audio, iframe, embed, object { - vertical-align: middle; - display: block; -} - -img, video { - max-width: 100%; - height: auto; -} - -[hidden] { - display: none; -} - -:root, [data-theme] { - background-color: var(--fallback-b1, oklch(var(--b1) / 1)); - color: var(--fallback-bc, oklch(var(--bc) / 1)); -} - -@supports not (color: oklch(0% 0 0)) { - :root { - color-scheme: light; - --fallback-p: #491eff; - --fallback-pc: #d4dbff; - --fallback-s: #ff41c7; - --fallback-sc: #fff9fc; - --fallback-a: #00cfbd; - --fallback-ac: #00100d; - --fallback-n: #2b3440; - --fallback-nc: #d7dde4; - --fallback-b1: #fff; - --fallback-b2: #e5e6e6; - --fallback-b3: #e5e6e6; - --fallback-bc: #1f2937; - --fallback-in: #00b3f0; - --fallback-inc: #000; - --fallback-su: #00ca92; - --fallback-suc: #000; - --fallback-wa: #ffc22d; - --fallback-wac: #000; - --fallback-er: #ff6f70; - --fallback-erc: #000; - } - - @media (prefers-color-scheme: dark) { - :root { - color-scheme: dark; - --fallback-p: #7582ff; - --fallback-pc: #050617; - --fallback-s: #ff71cf; - --fallback-sc: #190211; - --fallback-a: #00c7b5; - --fallback-ac: #000e0c; - --fallback-n: #2a323c; - --fallback-nc: #a6adbb; - --fallback-b1: #1d232a; - --fallback-b2: #191e24; - --fallback-b3: #15191e; - --fallback-bc: #a6adbb; - --fallback-in: #00b3f0; - --fallback-inc: #000; - --fallback-su: #00ca92; - --fallback-suc: #000; - --fallback-wa: #ffc22d; - --fallback-wac: #000; - --fallback-er: #ff6f70; - --fallback-erc: #000; - } - } -} - -html { - -webkit-tap-highlight-color: transparent; -} - -* { - scrollbar-color: color-mix(in oklch, currentColor 35%, transparent) transparent; -} - -:hover { - scrollbar-color: color-mix(in oklch, currentColor 60%, transparent) transparent; -} - -:root { - color-scheme: light; - --in: 72.06% .191 231.6; - --su: 64.8% .15 160; - --wa: 84.71% .199 83.87; - --er: 71.76% .221 22.18; - --pc: 89.824% .06192 275.75; - --ac: 15.352% .0368 183.61; - --inc: 0% 0 0; - --suc: 0% 0 0; - --wac: 0% 0 0; - --erc: 0% 0 0; - --rounded-box: 1rem; - --rounded-btn: .5rem; - --rounded-badge: 1.9rem; - --animation-btn: .25s; - --animation-input: .2s; - --btn-focus-scale: .95; - --border-btn: 1px; - --tab-border: 1px; - --tab-radius: .5rem; - --p: 49.12% .3096 275.75; - --s: 69.71% .329 342.55; - --sc: 98.71% .0106 342.55; - --a: 76.76% .184 183.61; - --n: 32.1785% .02476 255.702; - --nc: 89.4994% .011585 252.096; - --b1: 100% 0 0; - --b2: 96.1151% 0 0; - --b3: 92.4169% .00108 197.138; - --bc: 27.8078% .029596 256.848; -} - -@media (prefers-color-scheme: dark) { - :root { - color-scheme: dark; - --in: 72.06% .191 231.6; - --su: 64.8% .15 160; - --wa: 84.71% .199 83.87; - --er: 71.76% .221 22.18; - --pc: 13.138% .0392 275.75; - --sc: 14.96% .052 342.55; - --ac: 14.902% .0334 183.61; - --inc: 0% 0 0; - --suc: 0% 0 0; - --wac: 0% 0 0; - --erc: 0% 0 0; - --rounded-box: 1rem; - --rounded-btn: .5rem; - --rounded-badge: 1.9rem; - --animation-btn: .25s; - --animation-input: .2s; - --btn-focus-scale: .95; - --border-btn: 1px; - --tab-border: 1px; - --tab-radius: .5rem; - --p: 65.69% .196 275.75; - --s: 74.8% .26 342.55; - --a: 74.51% .167 183.61; - --n: 31.3815% .021108 254.139; - --nc: 74.6477% .0216 264.436; - --b1: 25.3267% .015896 252.418; - --b2: 23.2607% .013807 253.101; - --b3: 21.1484% .01165 254.088; - --bc: 74.6477% .0216 264.436; - } -} - -[data-theme="light"] { - color-scheme: light; - --in: 72.06% .191 231.6; - --su: 64.8% .15 160; - --wa: 84.71% .199 83.87; - --er: 71.76% .221 22.18; - --pc: 89.824% .06192 275.75; - --ac: 15.352% .0368 183.61; - --inc: 0% 0 0; - --suc: 0% 0 0; - --wac: 0% 0 0; - --erc: 0% 0 0; - --rounded-box: 1rem; - --rounded-btn: .5rem; - --rounded-badge: 1.9rem; - --animation-btn: .25s; - --animation-input: .2s; - --btn-focus-scale: .95; - --border-btn: 1px; - --tab-border: 1px; - --tab-radius: .5rem; - --p: 49.12% .3096 275.75; - --s: 69.71% .329 342.55; - --sc: 98.71% .0106 342.55; - --a: 76.76% .184 183.61; - --n: 32.1785% .02476 255.702; - --nc: 89.4994% .011585 252.096; - --b1: 100% 0 0; - --b2: 96.1151% 0 0; - --b3: 92.4169% .00108 197.138; - --bc: 27.8078% .029596 256.848; -} - -[data-theme="dark"] { - color-scheme: dark; - --in: 72.06% .191 231.6; - --su: 64.8% .15 160; - --wa: 84.71% .199 83.87; - --er: 71.76% .221 22.18; - --pc: 13.138% .0392 275.75; - --sc: 14.96% .052 342.55; - --ac: 14.902% .0334 183.61; - --inc: 0% 0 0; - --suc: 0% 0 0; - --wac: 0% 0 0; - --erc: 0% 0 0; - --rounded-box: 1rem; - --rounded-btn: .5rem; - --rounded-badge: 1.9rem; - --animation-btn: .25s; - --animation-input: .2s; - --btn-focus-scale: .95; - --border-btn: 1px; - --tab-border: 1px; - --tab-radius: .5rem; - --p: 65.69% .196 275.75; - --s: 74.8% .26 342.55; - --a: 74.51% .167 183.61; - --n: 31.3815% .021108 254.139; - --nc: 74.6477% .0216 264.436; - --b1: 25.3267% .015896 252.418; - --b2: 23.2607% .013807 253.101; - --b3: 21.1484% .01165 254.088; - --bc: 74.6477% .0216 264.436; -} - -*, :before, :after, ::backdrop { - --tw-border-spacing-x: 0; - --tw-border-spacing-y: 0; - --tw-translate-x: 0; - --tw-translate-y: 0; - --tw-rotate: 0; - --tw-skew-x: 0; - --tw-skew-y: 0; - --tw-scale-x: 1; - --tw-scale-y: 1; - --tw-pan-x: ; - --tw-pan-y: ; - --tw-pinch-zoom: ; - --tw-scroll-snap-strictness: proximity; - --tw-gradient-from-position: ; - --tw-gradient-via-position: ; - --tw-gradient-to-position: ; - --tw-ordinal: ; - --tw-slashed-zero: ; - --tw-numeric-figure: ; - --tw-numeric-spacing: ; - --tw-numeric-fraction: ; - --tw-ring-inset: ; - --tw-ring-offset-width: 0px; - --tw-ring-offset-color: #fff; - --tw-ring-color: #3b82f680; - --tw-ring-offset-shadow: 0 0 #0000; - --tw-ring-shadow: 0 0 #0000; - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - --tw-blur: ; - --tw-brightness: ; - --tw-contrast: ; - --tw-grayscale: ; - --tw-hue-rotate: ; - --tw-invert: ; - --tw-saturate: ; - --tw-sepia: ; - --tw-drop-shadow: ; - --tw-backdrop-blur: ; - --tw-backdrop-brightness: ; - --tw-backdrop-contrast: ; - --tw-backdrop-grayscale: ; - --tw-backdrop-hue-rotate: ; - --tw-backdrop-invert: ; - --tw-backdrop-opacity: ; - --tw-backdrop-saturate: ; - --tw-backdrop-sepia: ; - --tw-contain-size: ; - --tw-contain-layout: ; - --tw-contain-paint: ; - --tw-contain-style: ; -} - -.container { - width: 100%; -} - -@media (width >= 640px) { - .container { - max-width: 640px; - } -} - -@media (width >= 768px) { - .container { - max-width: 768px; - } -} - -@media (width >= 1024px) { - .container { - max-width: 1024px; - } -} - -@media (width >= 1280px) { - .container { - max-width: 1280px; - } -} - -@media (width >= 1536px) { - .container { - max-width: 1536px; - } -} - -.avatar { - display: inline-flex; - position: relative; -} - -.avatar > div { - aspect-ratio: 1; - display: block; - overflow: hidden; -} - -.avatar img { - object-fit: cover; - width: 100%; - height: 100%; -} - -.avatar.placeholder > div { - justify-content: center; - align-items: center; - display: flex; -} - -.badge { - border-radius: var(--rounded-badge, 1.9rem); - --tw-border-opacity: 1; - border-width: 1px; - border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity))); - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - --tw-text-opacity: 1; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - justify-content: center; - align-items: center; - width: fit-content; - height: 1.25rem; - padding-left: .563rem; - padding-right: .563rem; - font-size: .875rem; - line-height: 1.25rem; - transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter; - transition-duration: .2s; - transition-timing-function: cubic-bezier(0, 0, .2, 1); - display: inline-flex; -} - -.btm-nav { - padding-bottom: env(safe-area-inset-bottom); - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - color: currentColor; - flex-direction: row; - justify-content: space-around; - align-items: center; - width: 100%; - height: 4rem; - display: flex; - position: fixed; - bottom: 0; - left: 0; - right: 0; -} - -.btm-nav > * { - cursor: pointer; - border-color: currentColor; - flex-direction: column; - flex-basis: 100%; - justify-content: center; - align-items: center; - gap: .25rem; - height: 100%; - display: flex; - position: relative; -} - -@media (hover: hover) { - .label a:hover { - --tw-text-opacity: 1; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - } - - .menu li > :not(ul, .menu-title, details, .btn):active, .menu li > :not(ul, .menu-title, details, .btn).active, .menu li > details > summary:active { - --tw-bg-opacity: 1; - background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity))); - --tw-text-opacity: 1; - color: var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity))); - } - - .table tr.hover:hover, .table tr.hover:nth-child(2n):hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - } - - .table-zebra tr.hover:hover, .table-zebra tr.hover:nth-child(2n):hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); - } -} - -.btn { - cursor: pointer; - -webkit-user-select: none; - user-select: none; - border-radius: var(--rounded-btn, .5rem); - border-color: #0000; - border-color: oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity)); - text-align: center; - border-width: var(--border-btn, 1px); - --tw-text-opacity: 1; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - --tw-shadow: 0 1px 2px 0 #0000000d; - --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - outline-color: var(--fallback-bc, oklch(var(--bc) / 1)); - background-color: oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity)); - --tw-bg-opacity: 1; - --tw-border-opacity: 1; - flex-wrap: wrap; - flex-shrink: 0; - justify-content: center; - align-items: center; - gap: .5rem; - height: 3rem; - min-height: 3rem; - padding-left: 1rem; - padding-right: 1rem; - font-size: .875rem; - font-weight: 600; - line-height: 1em; - text-decoration-line: none; - transition-property: color, background-color, border-color, opacity, box-shadow, transform; - transition-duration: .2s; - transition-timing-function: cubic-bezier(0, 0, .2, 1); - display: inline-flex; -} - -.btn-disabled, .btn[disabled], .btn:disabled { - pointer-events: none; -} - -:where(.btninput[type="checkbox"]), :where(.btninput[type="radio"]) { - appearance: none; - width: auto; -} - -.btninput[type="checkbox"]:after, .btninput[type="radio"]:after { - --tw-content: attr(aria-label); - content: var(--tw-content); -} - -.checkbox { - --chkbg: var(--fallback-bc, oklch(var(--bc) / 1)); - --chkfg: var(--fallback-b1, oklch(var(--b1) / 1)); - cursor: pointer; - appearance: none; - border-radius: var(--rounded-btn, .5rem); - border-width: 1px; - border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity))); - --tw-border-opacity: .2; - flex-shrink: 0; - width: 1.5rem; - height: 1.5rem; -} - -.collapse:not(td):not(tr):not(colgroup) { - visibility: visible; -} - -.collapse { - border-radius: var(--rounded-box, 1rem); - grid-template-rows: auto 0fr; - width: 100%; - transition: grid-template-rows .2s; - display: grid; - position: relative; - overflow: hidden; -} - -.collapse-title, .collapse > input[type="checkbox"], .collapse > input[type="radio"], .collapse-content { - grid-row-start: 1; - grid-column-start: 1; -} - -.collapse > input[type="checkbox"], .collapse > input[type="radio"] { - appearance: none; - opacity: 0; -} - -.collapse-content { - visibility: hidden; - cursor: unset; - grid-row-start: 2; - grid-column-start: 1; - min-height: 0; - padding-left: 1rem; - padding-right: 1rem; - transition: padding .2s ease-out, background-color .2s ease-out; -} - -.collapse[open], .collapse-open, .collapse:focus:not(.collapse-close), .collapse:not(.collapse-close):has( > input[type="checkbox"]:checked), .collapse:not(.collapse-close):has( > input[type="radio"]:checked) { - grid-template-rows: auto 1fr; -} - -.collapse[open] > .collapse-content, .collapse-open > .collapse-content, .collapse:focus:not(.collapse-close) > .collapse-content, .collapse:not(.collapse-close) > input[type="checkbox"]:checked ~ .collapse-content, .collapse:not(.collapse-close) > input[type="radio"]:checked ~ .collapse-content { - visibility: visible; - min-height: fit-content; -} - -.dropdown { - display: inline-block; - position: relative; -} - -.dropdown > :not(summary):focus { - outline-offset: 2px; - outline: 2px solid #0000; -} - -.dropdown .dropdown-content { - position: absolute; -} - -.dropdown:not(details) .dropdown-content { - visibility: hidden; - opacity: 0; - transform-origin: top; - --tw-scale-x: .95; - --tw-scale-y: .95; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); - transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter; - transition-duration: .2s; - transition-timing-function: cubic-bezier(0, 0, .2, 1); -} - -.dropdown-end .dropdown-content { - inset-inline-end: 0; -} - -.dropdown-left .dropdown-content { - bottom: auto; - transform-origin: 100%; - inset-inline-end: 100%; - top: 0; -} - -.dropdown-right .dropdown-content { - bottom: auto; - transform-origin: 0; - inset-inline-start: 100%; - top: 0; -} - -.dropdown-bottom .dropdown-content { - transform-origin: top; - top: 100%; - bottom: auto; -} - -.dropdown-top .dropdown-content { - transform-origin: bottom; - top: auto; - bottom: 100%; -} - -.dropdown-end.dropdown-right .dropdown-content, .dropdown-end.dropdown-left .dropdown-content { - top: auto; - bottom: 0; -} - -.dropdown.dropdown-open .dropdown-content, .dropdown:not(.dropdown-hover):focus .dropdown-content, .dropdown:focus-within .dropdown-content { - visibility: visible; - opacity: 1; -} - -@media (hover: hover) { - .dropdown.dropdown-hover:hover .dropdown-content { - visibility: visible; - opacity: 1; - } - - .btm-nav > .disabled:hover, .btm-nav > [disabled]:hover { - pointer-events: none; - --tw-border-opacity: 0; - background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity))); - --tw-bg-opacity: .1; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - --tw-text-opacity: .2; - } - - .btn:hover { - --tw-border-opacity: 1; - border-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-border-opacity))); - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); - } - - @supports (color: color-mix(in oklab, black, black)) { - .btn:hover { - background-color: color-mix(in oklab, oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity, 1)) 90%, black); - border-color: color-mix(in oklab, oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity, 1)) 90%, black); - } - } - - @supports not (color: oklch(0% 0 0)) { - .btn:hover { - background-color: var(--btn-color, var(--fallback-b2)); - border-color: var(--btn-color, var(--fallback-b2)); - } - } - - .btn.glass:hover { - --glass-opacity: 25%; - --glass-border-opacity: 15%; - } - - .btn-ghost:hover { - border-color: #0000; - } - - @supports (color: oklch(0% 0 0)) { - .btn-ghost:hover { - background-color: var(--fallback-bc, oklch(var(--bc) / .2)); - } - } - - .btn-link:hover { - background-color: #0000; - border-color: #0000; - text-decoration-line: underline; - } - - .btn-outline:hover { - --tw-border-opacity: 1; - border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity))); - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); - --tw-text-opacity: 1; - color: var(--fallback-b1, oklch(var(--b1) / var(--tw-text-opacity))); - } - - .btn-outline.btn-primary:hover { - --tw-text-opacity: 1; - color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity))); - } - - @supports (color: color-mix(in oklab, black, black)) { - .btn-outline.btn-primary:hover { - background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black); - } - } - - .btn-outline.btn-secondary:hover { - --tw-text-opacity: 1; - color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity))); - } - - @supports (color: color-mix(in oklab, black, black)) { - .btn-outline.btn-secondary:hover { - background-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black); - } - } - - .btn-outline.btn-accent:hover { - --tw-text-opacity: 1; - color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity))); - } - - @supports (color: color-mix(in oklab, black, black)) { - .btn-outline.btn-accent:hover { - background-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black); - } - } - - .btn-outline.btn-success:hover { - --tw-text-opacity: 1; - color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity))); - } - - @supports (color: color-mix(in oklab, black, black)) { - .btn-outline.btn-success:hover { - background-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black); - } - } - - .btn-outline.btn-info:hover { - --tw-text-opacity: 1; - color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity))); - } - - @supports (color: color-mix(in oklab, black, black)) { - .btn-outline.btn-info:hover { - background-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black); - } - } - - .btn-outline.btn-warning:hover { - --tw-text-opacity: 1; - color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity))); - } - - @supports (color: color-mix(in oklab, black, black)) { - .btn-outline.btn-warning:hover { - background-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black); - } - } - - .btn-outline.btn-error:hover { - --tw-text-opacity: 1; - color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity))); - } - - @supports (color: color-mix(in oklab, black, black)) { - .btn-outline.btn-error:hover { - background-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black); - } - } - - .btn-disabled:hover, .btn[disabled]:hover, .btn:disabled:hover { - --tw-border-opacity: 0; - background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity))); - --tw-bg-opacity: .2; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - --tw-text-opacity: .2; - } - - @supports (color: color-mix(in oklab, black, black)) { - .btninput[type="checkbox"]:checked:hover, .btninput[type="radio"]:checked:hover { - background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black); - } - } - - .dropdown.dropdown-hover:hover .dropdown-content { - --tw-scale-x: 1; - --tw-scale-y: 1; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); - } - - :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover { - cursor: pointer; - outline-offset: 2px; - outline: 2px solid #0000; - } - - @supports (color: oklch(0% 0 0)) { - :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover { - background-color: var(--fallback-bc, oklch(var(--bc) / .1)); - } - } -} - -.dropdown:is(details) summary::-webkit-details-marker { - display: none; -} - -.label { - -webkit-user-select: none; - user-select: none; - justify-content: space-between; - align-items: center; - padding: .5rem .25rem; - display: flex; -} - -.input { - appearance: none; - border-radius: var(--rounded-btn, .5rem); - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - border-width: 1px; - border-color: #0000; - flex-shrink: 1; - height: 3rem; - padding-left: 1rem; - padding-right: 1rem; - font-size: 1rem; - line-height: 1.5rem; -} - -.input[type="number"]::-webkit-inner-spin-button { - margin-top: -1rem; - margin-bottom: -1rem; - margin-inline-end: -1rem; -} - -.input-md[type="number"]::-webkit-inner-spin-button { - margin-top: -1rem; - margin-bottom: -1rem; - margin-inline-end: -1rem; -} - -.join { - border-radius: var(--rounded-btn, .5rem); - align-items: stretch; - display: inline-flex; -} - -.join :where(.join-item), .join .join-item:not(:first-child):not(:last-child), .join :not(:first-child):not(:last-child) .join-item { - border-start-start-radius: 0; - border-start-end-radius: 0; - border-end-end-radius: 0; - border-end-start-radius: 0; -} - -.join .join-item:first-child:not(:last-child), .join :first-child:not(:last-child) .join-item { - border-start-end-radius: 0; - border-end-end-radius: 0; -} - -.join .dropdown .join-item:first-child:not(:last-child), .join :first-child:not(:last-child) .dropdown .join-item { - border-start-end-radius: inherit; - border-end-end-radius: inherit; -} - -.join :where(.join-item:first-child:not(:last-child)), .join :where(:first-child:not(:last-child) .join-item) { - border-start-start-radius: inherit; - border-end-start-radius: inherit; -} - -.join .join-item:last-child:not(:first-child), .join :last-child:not(:first-child) .join-item { - border-start-start-radius: 0; - border-end-start-radius: 0; -} - -.join :where(.join-item:last-child:not(:first-child)), .join :where(:last-child:not(:first-child) .join-item) { - border-start-end-radius: inherit; - border-end-end-radius: inherit; -} - -@supports not selector(:has(*)) { - :where(.join *) { - border-radius: inherit; - } -} - -@supports selector(:has(*)) { - :where(.join :has(.join-item)) { - border-radius: inherit; - } -} - -.kbd { - border-radius: var(--rounded-btn, .5rem); - border-width: 1px; - border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity))); - --tw-border-opacity: .2; - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - border-bottom-width: 2px; - justify-content: center; - align-items: center; - min-width: 2.2em; - min-height: 2.2em; - padding-left: .5rem; - padding-right: .5rem; - display: inline-flex; -} - -.menu { - flex-flow: column wrap; - padding: .5rem; - font-size: .875rem; - line-height: 1.25rem; - display: flex; -} - -.menu :where(li ul) { - white-space: nowrap; - margin-inline-start: 1rem; - padding-inline-start: .5rem; - position: relative; -} - -.menu :where(li:not(.menu-title) > :not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) { - -webkit-user-select: none; - user-select: none; - grid-auto-columns: minmax(auto, max-content) auto max-content; - grid-auto-flow: column; - align-content: flex-start; - align-items: center; - gap: .5rem; - display: grid; -} - -.menu li.disabled { - cursor: not-allowed; - -webkit-user-select: none; - user-select: none; - color: var(--fallback-bc, oklch(var(--bc) / .3)); -} - -.menu :where(li > .menu-dropdown:not(.menu-dropdown-show)) { - display: none; -} - -:where(.menu li) { - flex-flow: column wrap; - flex-shrink: 0; - align-items: stretch; - display: flex; - position: relative; -} - -:where(.menu li) .badge { - justify-self: end; -} - -.mockup-browser { - border-radius: var(--rounded-box, 1rem); - position: relative; - overflow: auto hidden; -} - -.mockup-browser pre[data-prefix]:before { - content: attr(data-prefix); - text-align: right; - display: inline-block; -} - -.progress { - appearance: none; - border-radius: var(--rounded-box, 1rem); - background-color: var(--fallback-bc, oklch(var(--bc) / .2)); - width: 100%; - height: .5rem; - position: relative; - overflow: hidden; -} - -.radio { - --chkbg: var(--bc); - cursor: pointer; - appearance: none; - border-width: 1px; - border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity))); - --tw-border-opacity: .2; - border-radius: 9999px; - flex-shrink: 0; - width: 1.5rem; - height: 1.5rem; -} - -.select { - cursor: pointer; - -webkit-user-select: none; - user-select: none; - appearance: none; - border-radius: var(--rounded-btn, .5rem); - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - background-image: linear-gradient(45deg, #0000 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, #0000 50%); - background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%); - background-repeat: no-repeat; - background-size: 4px 4px, 4px 4px; - border-width: 1px; - border-color: #0000; - height: 3rem; - min-height: 3rem; - padding-inline: 1rem 2.5rem; - font-size: .875rem; - line-height: 2; - display: inline-flex; -} - -.select[multiple] { - height: auto; -} - -.table { - border-radius: var(--rounded-box, 1rem); - text-align: left; - width: 100%; - font-size: .875rem; - line-height: 1.25rem; - position: relative; -} - -.table :where(.table-pin-rows thead tr) { - z-index: 1; - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - position: sticky; - top: 0; -} - -.table :where(.table-pin-rows tfoot tr) { - z-index: 1; - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - position: sticky; - bottom: 0; -} - -.table :where(.table-pin-cols tr th) { - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - position: sticky; - left: 0; - right: 0; -} - -.table-zebra tbody tr:nth-child(2n) :where(.table-pin-cols tr th) { - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); -} - -.textarea { - border-radius: var(--rounded-btn, .5rem); - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - border-width: 1px; - border-color: #0000; - flex-shrink: 1; - min-height: 3rem; - padding: .5rem 1rem; - font-size: .875rem; - line-height: 2; -} - -.avatar-group { - display: flex; - overflow: hidden; -} - -.avatar-group :where(.avatar) { - --tw-border-opacity: 1; - border-width: 4px; - border-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-border-opacity))); - border-radius: 9999px; - overflow: hidden; -} - -.btm-nav > :not(.active) { - padding-top: .125rem; -} - -.btm-nav > :where(.active) { - --tw-bg-opacity: 1; - background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity))); - border-top-width: 2px; -} - -.btm-nav > .disabled, .btm-nav > [disabled] { - pointer-events: none; - --tw-border-opacity: 0; - background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity))); - --tw-bg-opacity: .1; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - --tw-text-opacity: .2; -} - -.btm-nav > * .label { - font-size: 1rem; - line-height: 1.5rem; -} - -@media (prefers-reduced-motion: no-preference) { - .btn { - animation: button-pop var(--animation-btn, .25s) ease-out; - } -} - -.btn:active:hover, .btn:active:focus { - transform: scale(var(--btn-focus-scale, .97)); - animation: ease-out button-pop; -} - -@supports not (color: oklch(0% 0 0)) { - .btn { - background-color: var(--btn-color, var(--fallback-b2)); - border-color: var(--btn-color, var(--fallback-b2)); - } - - .btn-primary { - --btn-color: var(--fallback-p); - } - - .btn-secondary { - --btn-color: var(--fallback-s); - } - - .btn-accent { - --btn-color: var(--fallback-a); - } - - .btn-info { - --btn-color: var(--fallback-in); - } - - .btn-success { - --btn-color: var(--fallback-su); - } - - .btn-warning { - --btn-color: var(--fallback-wa); - } - - .btn-error { - --btn-color: var(--fallback-er); - } -} - -@supports (color: color-mix(in oklab, black, black)) { - .btn-active { - background-color: color-mix(in oklab, oklch(var(--btn-color, var(--b3)) / var(--tw-bg-opacity, 1)) 90%, black); - border-color: color-mix(in oklab, oklch(var(--btn-color, var(--b3)) / var(--tw-border-opacity, 1)) 90%, black); - } - - .btn-outline.btn-primary.btn-active { - background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black); - } - - .btn-outline.btn-secondary.btn-active { - background-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black); - } - - .btn-outline.btn-accent.btn-active { - background-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black); - } - - .btn-outline.btn-success.btn-active { - background-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black); - } - - .btn-outline.btn-info.btn-active { - background-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black); - } - - .btn-outline.btn-warning.btn-active { - background-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black); - } - - .btn-outline.btn-error.btn-active { - background-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black); - border-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black); - } -} - -.btn:focus-visible { - outline-offset: 2px; - outline-width: 2px; - outline-style: solid; -} - -.btn-primary { - --tw-text-opacity: 1; - color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity))); - outline-color: var(--fallback-p, oklch(var(--p) / 1)); -} - -@supports (color: oklch(0% 0 0)) { - .btn-primary { - --btn-color: var(--p); - } - - .btn-secondary { - --btn-color: var(--s); - } - - .btn-accent { - --btn-color: var(--a); - } - - .btn-info { - --btn-color: var(--in); - } - - .btn-success { - --btn-color: var(--su); - } - - .btn-warning { - --btn-color: var(--wa); - } - - .btn-error { - --btn-color: var(--er); - } -} - -.btn-secondary { - --tw-text-opacity: 1; - color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity))); - outline-color: var(--fallback-s, oklch(var(--s) / 1)); -} - -.btn-accent { - --tw-text-opacity: 1; - color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity))); - outline-color: var(--fallback-a, oklch(var(--a) / 1)); -} - -.btn-info { - --tw-text-opacity: 1; - color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity))); - outline-color: var(--fallback-in, oklch(var(--in) / 1)); -} - -.btn-success { - --tw-text-opacity: 1; - color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity))); - outline-color: var(--fallback-su, oklch(var(--su) / 1)); -} - -.btn-warning { - --tw-text-opacity: 1; - color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity))); - outline-color: var(--fallback-wa, oklch(var(--wa) / 1)); -} - -.btn-error { - --tw-text-opacity: 1; - color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity))); - outline-color: var(--fallback-er, oklch(var(--er) / 1)); -} - -.btn.glass { - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - outline-color: currentColor; -} - -.btn.glass.btn-active { - --glass-opacity: 25%; - --glass-border-opacity: 15%; -} - -.btn-ghost { - color: currentColor; - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - background-color: #0000; - border-width: 1px; - border-color: #0000; - outline-color: currentColor; -} - -.btn-ghost.btn-active { - background-color: var(--fallback-bc, oklch(var(--bc) / .2)); - border-color: #0000; -} - -.btn-link { - --tw-text-opacity: 1; - color: var(--fallback-p, oklch(var(--p) / var(--tw-text-opacity))); - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - background-color: #0000; - border-color: #0000; - outline-color: currentColor; - text-decoration-line: underline; -} - -.btn-link.btn-active { - background-color: #0000; - border-color: #0000; - text-decoration-line: underline; -} - -.btn-outline { - --tw-text-opacity: 1; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - background-color: #0000; - border-color: currentColor; -} - -.btn-outline.btn-active { - --tw-border-opacity: 1; - border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity))); - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); - --tw-text-opacity: 1; - color: var(--fallback-b1, oklch(var(--b1) / var(--tw-text-opacity))); -} - -.btn-outline.btn-primary { - --tw-text-opacity: 1; - color: var(--fallback-p, oklch(var(--p) / var(--tw-text-opacity))); -} - -.btn-outline.btn-primary.btn-active { - --tw-text-opacity: 1; - color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity))); -} - -.btn-outline.btn-secondary { - --tw-text-opacity: 1; - color: var(--fallback-s, oklch(var(--s) / var(--tw-text-opacity))); -} - -.btn-outline.btn-secondary.btn-active { - --tw-text-opacity: 1; - color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity))); -} - -.btn-outline.btn-accent { - --tw-text-opacity: 1; - color: var(--fallback-a, oklch(var(--a) / var(--tw-text-opacity))); -} - -.btn-outline.btn-accent.btn-active { - --tw-text-opacity: 1; - color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity))); -} - -.btn-outline.btn-success { - --tw-text-opacity: 1; - color: var(--fallback-su, oklch(var(--su) / var(--tw-text-opacity))); -} - -.btn-outline.btn-success.btn-active { - --tw-text-opacity: 1; - color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity))); -} - -.btn-outline.btn-info { - --tw-text-opacity: 1; - color: var(--fallback-in, oklch(var(--in) / var(--tw-text-opacity))); -} - -.btn-outline.btn-info.btn-active { - --tw-text-opacity: 1; - color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity))); -} - -.btn-outline.btn-warning { - --tw-text-opacity: 1; - color: var(--fallback-wa, oklch(var(--wa) / var(--tw-text-opacity))); -} - -.btn-outline.btn-warning.btn-active { - --tw-text-opacity: 1; - color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity))); -} - -.btn-outline.btn-error { - --tw-text-opacity: 1; - color: var(--fallback-er, oklch(var(--er) / var(--tw-text-opacity))); -} - -.btn-outline.btn-error.btn-active { - --tw-text-opacity: 1; - color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity))); -} - -.btn.btn-disabled, .btn[disabled], .btn:disabled { - --tw-border-opacity: 0; - background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity))); - --tw-bg-opacity: .2; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - --tw-text-opacity: .2; -} - -.btninput[type="checkbox"]:checked, .btninput[type="radio"]:checked { - --tw-border-opacity: 1; - border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity))); - --tw-bg-opacity: 1; - background-color: var(--fallback-p, oklch(var(--p) / var(--tw-bg-opacity))); - --tw-text-opacity: 1; - color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity))); -} - -.btninput[type="checkbox"]:checked:focus-visible, .btninput[type="radio"]:checked:focus-visible { - outline-color: var(--fallback-p, oklch(var(--p) / 1)); -} - -@keyframes button-pop { - 0% { - transform: scale(var(--btn-focus-scale, .98)); - } - - 40% { - transform: scale(1.02); - } - - 100% { - transform: scale(1); - } -} - -.checkbox:focus { - box-shadow: none; -} - -.checkbox:focus-visible { - outline-offset: 2px; - outline-width: 2px; - outline-style: solid; - outline-color: var(--fallback-bc, oklch(var(--bc) / 1)); -} - -.checkbox:disabled { - cursor: not-allowed; - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); - opacity: .2; - border-width: 0; - border-color: #0000; -} - -.checkbox:checked, .checkbox[aria-checked="true"] { - animation: checkmark var(--animation-input, .2s) ease-out; - background-repeat: no-repeat; - background-color: var(--chkbg); - background-image: linear-gradient(-45deg, transparent 65%, var(--chkbg) 65.99%), linear-gradient(45deg, transparent 75%, var(--chkbg) 75.99%), linear-gradient(-45deg, var(--chkbg) 40%, transparent 40.99%), linear-gradient(45deg, var(--chkbg) 30%, var(--chkfg) 30.99%, var(--chkfg) 40%, transparent 40.99%), linear-gradient(-45deg, var(--chkfg) 50%, var(--chkbg) 50.99%); -} - -.checkbox:indeterminate { - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); - animation: checkmark var(--animation-input, .2s) ease-out; - background-repeat: no-repeat; - background-image: linear-gradient(90deg, transparent 80%, var(--chkbg) 80%), linear-gradient(-90deg, transparent 80%, var(--chkbg) 80%), linear-gradient(0deg, var(--chkbg) 43%, var(--chkfg) 43%, var(--chkfg) 57%, var(--chkbg) 57%); -} - -@keyframes checkmark { - 0% { - background-position-y: 5px; - } - - 50% { - background-position-y: -2px; - } - - 100% { - background-position-y: 0; - } -} - -details.collapse { - width: 100%; -} - -details.collapse summary { - outline-offset: 2px; - outline: 2px solid #0000; - display: block; - position: relative; -} - -details.collapse summary::-webkit-details-marker { - display: none; -} - -.collapse:focus-visible, .collapse:has(.collapse-title:focus-visible), .collapse:has( > input[type="checkbox"]:focus-visible), .collapse:has( > input[type="radio"]:focus-visible) { - outline-offset: 2px; - outline-width: 2px; - outline-style: solid; - outline-color: var(--fallback-bc, oklch(var(--bc) / 1)); -} - -.collapse-arrow > .collapse-title:after { - --tw-translate-y: -100%; - --tw-rotate: 45deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); - content: ""; - transform-origin: 75% 75%; - pointer-events: none; - top: 1.9rem; - width: .5rem; - height: .5rem; - transition-property: all; - transition-duration: .2s; - transition-timing-function: cubic-bezier(0, 0, .2, 1); - display: block; - position: absolute; - inset-inline-end: 1.4rem; - box-shadow: 2px 2px; -} - -.collapse-plus > .collapse-title:after { - content: "+"; - pointer-events: none; - top: .9rem; - width: .5rem; - height: .5rem; - transition-property: all; - transition-duration: .3s; - transition-timing-function: cubic-bezier(0, 0, .2, 1); - display: block; - position: absolute; - inset-inline-end: 1.4rem; -} - -.collapse:not(.collapse-open):not(.collapse-close) > input[type="checkbox"], .collapse:not(.collapse-open):not(.collapse-close) > input[type="radio"]:not(:checked), .collapse:not(.collapse-open):not(.collapse-close) > .collapse-title { - cursor: pointer; -} - -.collapse:focus:not(.collapse-open):not(.collapse-close):not(.collapse[open]) > .collapse-title { - cursor: unset; -} - -.collapse-title { - position: relative; -} - -:where(.collapse > input[type="checkbox"]), :where(.collapse > input[type="radio"]) { - z-index: 1; -} - -.collapse-title, :where(.collapse > input[type="checkbox"]), :where(.collapse > input[type="radio"]) { - padding: 1rem; - width: 100%; - min-height: 3.75rem; - padding-inline-end: 3rem; - transition: background-color .2s ease-out; -} - -.collapse[open] > :where(.collapse-content), .collapse-open > :where(.collapse-content), .collapse:focus:not(.collapse-close) > :where(.collapse-content), .collapse:not(.collapse-close) > :where(input[type="checkbox"]:checked ~ .collapse-content), .collapse:not(.collapse-close) > :where(input[type="radio"]:checked ~ .collapse-content) { - padding-bottom: 1rem; - transition: padding .2s ease-out, background-color .2s ease-out; -} - -.collapse[open].collapse-arrow > .collapse-title:after, .collapse-open.collapse-arrow > .collapse-title:after, .collapse-arrow:focus:not(.collapse-close) > .collapse-title:after, .collapse-arrow:not(.collapse-close) > input[type="checkbox"]:checked ~ .collapse-title:after, .collapse-arrow:not(.collapse-close) > input[type="radio"]:checked ~ .collapse-title:after { - --tw-translate-y: -50%; - --tw-rotate: 225deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} - -.collapse[open].collapse-plus > .collapse-title:after, .collapse-open.collapse-plus > .collapse-title:after, .collapse-plus:focus:not(.collapse-close) > .collapse-title:after, .collapse-plus:not(.collapse-close) > input[type="checkbox"]:checked ~ .collapse-title:after, .collapse-plus:not(.collapse-close) > input[type="radio"]:checked ~ .collapse-title:after { - content: "−"; -} - -.dropdown.dropdown-open .dropdown-content, .dropdown:focus .dropdown-content, .dropdown:focus-within .dropdown-content { - --tw-scale-x: 1; - --tw-scale-y: 1; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} - -.input input { - --tw-bg-opacity: 1; - background-color: var(--fallback-p, oklch(var(--p) / var(--tw-bg-opacity))); - background-color: #0000; -} - -.input input:focus { - outline-offset: 2px; - outline: 2px solid #0000; -} - -.input[list]::-webkit-calendar-picker-indicator { - line-height: 1em; -} - -.input:focus, .input:focus-within { - box-shadow: none; - border-color: var(--fallback-bc, oklch(var(--bc) / .2)); - outline-offset: 2px; - outline-width: 2px; - outline-style: solid; - outline-color: var(--fallback-bc, oklch(var(--bc) / .2)); -} - -.input:has( > input[disabled]), .input-disabled, .input:disabled, .input[disabled] { - cursor: not-allowed; - --tw-border-opacity: 1; - border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity))); - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - color: var(--fallback-bc, oklch(var(--bc) / .4)); -} - -.input:has( > input[disabled])::placeholder, .input-disabled::placeholder, .input:disabled::placeholder, .input[disabled]::placeholder { - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity))); - --tw-placeholder-opacity: .2; -} - -.input:has( > input[disabled]) > input[disabled] { - cursor: not-allowed; -} - -.input::-webkit-date-and-time-value { - text-align: inherit; -} - -.join > :where(:not(:first-child)) { - margin-top: 0; - margin-bottom: 0; - margin-inline-start: -1px; -} - -.join > :where(:not(:first-child)).btn { - margin-inline-start: calc(var(--border-btn) * -1); -} - -.join-item:focus { - isolation: isolate; -} - -:where(.menu li:empty) { - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); - opacity: .1; - height: 1px; - margin: .5rem 1rem; -} - -.menu :where(li ul):before { - bottom: .75rem; - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); - opacity: .1; - content: ""; - inset-inline-start: 0; - width: 1px; - position: absolute; - top: .75rem; -} - -.menu :where(li:not(.menu-title) > :not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) { - border-radius: var(--rounded-btn, .5rem); - text-align: start; - text-wrap: balance; - padding: .5rem 1rem; - transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter; - transition-duration: .2s; - transition-timing-function: cubic-bezier(0, 0, .2, 1); -} - -:where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):is(summary):not(.active, .btn):focus-visible, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):is(summary):not(.active, .btn):focus-visible { - cursor: pointer; - background-color: var(--fallback-bc, oklch(var(--bc) / .1)); - --tw-text-opacity: 1; - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity))); - outline-offset: 2px; - outline: 2px solid #0000; -} - -.menu li > :not(ul, .menu-title, details, .btn):active, .menu li > :not(ul, .menu-title, details, .btn).active, .menu li > details > summary:active { - --tw-bg-opacity: 1; - background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity))); - --tw-text-opacity: 1; - color: var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity))); -} - -.menu :where(li > details > summary)::-webkit-details-marker { - display: none; -} - -.menu :where(li > details > summary):after, .menu :where(li > .menu-dropdown-toggle):after { - content: ""; - transform-origin: 75% 75%; - pointer-events: none; - justify-self: end; - width: .5rem; - height: .5rem; - margin-top: -.5rem; - transition-property: transform, margin-top; - transition-duration: .3s; - transition-timing-function: cubic-bezier(.4, 0, .2, 1); - display: block; - transform: rotate(45deg); - box-shadow: 2px 2px; -} - -.menu :where(li > details[open] > summary):after, .menu :where(li > .menu-dropdown-toggle.menu-dropdown-show):after { - margin-top: 0; - transform: rotate(225deg); -} - -.menu-title { - color: var(--fallback-bc, oklch(var(--bc) / .4)); - padding: .5rem 1rem; - font-size: .875rem; - font-weight: 700; - line-height: 1.25rem; -} - -.mockup-phone { - background-color: #000; - border: 4px solid #444; - border-radius: 50px; - margin: 0 auto; - padding: 10px; - display: inline-block; - overflow: hidden; -} - -.mockup-phone .camera { - z-index: 11; - background: #000; - border-bottom-right-radius: 17px; - border-bottom-left-radius: 17px; - width: 150px; - height: 25px; - margin: 0 auto; - position: relative; - top: 0; - left: 0; -} - -.mockup-phone .camera:before { - content: ""; - background-color: #0c0b0e; - border-radius: 5px; - width: 50px; - height: 4px; - position: absolute; - top: 35%; - left: 50%; - transform: translate(-50%, -50%); -} - -.mockup-phone .camera:after { - content: ""; - background-color: #0f0b25; - border-radius: 5px; - width: 8px; - height: 8px; - position: absolute; - top: 20%; - left: 70%; -} - -.mockup-phone .display { - border-radius: 40px; - margin-top: -25px; - overflow: hidden; -} - -.mockup-browser .mockup-browser-toolbar { - align-items: center; - width: 100%; - margin-top: .75rem; - margin-bottom: .75rem; - padding-right: 1.4em; - display: inline-flex; -} - -.mockup-browser .mockup-browser-toolbar:where([dir="rtl"], [dir="rtl"] *) { - flex-direction: row-reverse; -} - -.mockup-browser .mockup-browser-toolbar:before { - content: ""; - aspect-ratio: 1; - opacity: .3; - border-radius: 9999px; - height: .75rem; - margin-right: 4.8rem; - display: inline-block; - box-shadow: 1.4em 0, 2.8em 0, 4.2em 0; -} - -.mockup-browser .mockup-browser-toolbar .input { - text-overflow: ellipsis; - white-space: nowrap; - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - direction: ltr; - width: 24rem; - height: 1.75rem; - margin-left: auto; - margin-right: auto; - padding-left: 2rem; - display: block; - position: relative; - overflow: hidden; -} - -.mockup-browser .mockup-browser-toolbar .input:before { - content: ""; - aspect-ratio: 1; - --tw-translate-y: -50%; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); - opacity: .6; - border-width: 2px; - border-color: currentColor; - border-radius: 9999px; - height: .75rem; - position: absolute; - top: 50%; - left: .5rem; -} - -.mockup-browser .mockup-browser-toolbar .input:after { - content: ""; - --tw-translate-y: 25%; - --tw-rotate: -45deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); - opacity: .6; - border-width: 1px; - border-color: currentColor; - border-radius: 9999px; - height: .5rem; - position: absolute; - top: 50%; - left: 1.25rem; -} - -@keyframes modal-pop { - 0% { - opacity: 0; - } -} - -.progress::-moz-progress-bar { - border-radius: var(--rounded-box, 1rem); - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); -} - -.progress:indeterminate { - --progress-color: var(--fallback-bc, oklch(var(--bc) / 1)); - background-image: repeating-linear-gradient(90deg, var(--progress-color) -1%, var(--progress-color) 10%, transparent 10%, transparent 90%); - background-position-x: 15%; - background-size: 200%; - animation: 5s ease-in-out infinite progress-loading; -} - -.progress::-webkit-progress-bar { - border-radius: var(--rounded-box, 1rem); - background-color: #0000; -} - -.progress::-webkit-progress-value { - border-radius: var(--rounded-box, 1rem); - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); -} - -.progress:indeterminate::-moz-progress-bar { - background-color: #0000; - background-image: repeating-linear-gradient(90deg, var(--progress-color) -1%, var(--progress-color) 10%, transparent 10%, transparent 90%); - background-position-x: 15%; - background-size: 200%; - animation: 5s ease-in-out infinite progress-loading; -} - -@keyframes progress-loading { - 50% { - background-position-x: -115%; - } -} - -.radio:focus { - box-shadow: none; -} - -.radio:focus-visible { - outline-offset: 2px; - outline-width: 2px; - outline-style: solid; - outline-color: var(--fallback-bc, oklch(var(--bc) / 1)); -} - -.radio:checked, .radio[aria-checked="true"] { - --tw-bg-opacity: 1; - background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity))); - animation: radiomark var(--animation-input, .2s) ease-out; - box-shadow: 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset; - background-image: none; -} - -.radio:disabled { - cursor: not-allowed; - opacity: .2; -} - -@keyframes radiomark { - 0% { - box-shadow: 0 0 0 12px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 12px var(--fallback-b1, oklch(var(--b1) / 1)) inset; - } - - 50% { - box-shadow: 0 0 0 3px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 3px var(--fallback-b1, oklch(var(--b1) / 1)) inset; - } - - 100% { - box-shadow: 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset; - } -} - -@keyframes rating-pop { - 0% { - transform: translateY(-.125em); - } - - 40% { - transform: translateY(-.125em); - } - - 100% { - transform: translateY(0); - } -} - -.select:focus { - box-shadow: none; - border-color: var(--fallback-bc, oklch(var(--bc) / .2)); - outline-offset: 2px; - outline-width: 2px; - outline-style: solid; - outline-color: var(--fallback-bc, oklch(var(--bc) / .2)); -} - -.select-disabled, .select:disabled, .select[disabled] { - cursor: not-allowed; - --tw-border-opacity: 1; - border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity))); - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - color: var(--fallback-bc, oklch(var(--bc) / .4)); -} - -.select-disabled::placeholder, .select:disabled::placeholder, .select[disabled]::placeholder { - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity))); - --tw-placeholder-opacity: .2; -} - -.select-multiple, .select[multiple], .select[size].select:not([size="1"]) { - background-image: none; - padding-right: 1rem; -} - -[dir="rtl"] .select { - background-position: 12px calc(1px + 50%), 16px calc(1px + 50%); -} - -.skeleton { - border-radius: var(--rounded-box, 1rem); - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); - will-change: background-position; - background-image: linear-gradient(105deg, transparent 0%, transparent 40%, var(--fallback-b1, oklch(var(--b1) / 1)) 50%, transparent 60%, transparent 100%); - background-position-x: -50%; - background-repeat: no-repeat; - background-size: 200%; - animation: 1.8s ease-in-out infinite skeleton; -} - -@media (prefers-reduced-motion) { - .skeleton { - animation-duration: 15s; - } -} - -@keyframes skeleton { - from { - background-position: 150%; - } - - to { - background-position: -50%; - } -} - -.table:where([dir="rtl"], [dir="rtl"] *) { - text-align: right; -} - -.table :where(th, td) { - vertical-align: middle; - padding: .75rem 1rem; -} - -.table tr.active, .table tr.active:nth-child(2n), .table-zebra tbody tr:nth-child(2n) { - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); -} - -.table-zebra tr.active, .table-zebra tr.active:nth-child(2n), .table-zebra-zebra tbody tr:nth-child(2n) { - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); -} - -.table :where(thead tr, tbody tr:not(:last-child), tbody tr:first-child:last-child) { - --tw-border-opacity: 1; - border-bottom-width: 1px; - border-bottom-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity))); -} - -.table :where(thead, tfoot) { - white-space: nowrap; - color: var(--fallback-bc, oklch(var(--bc) / .6)); - font-size: .75rem; - font-weight: 700; - line-height: 1rem; -} - -.table :where(tfoot) { - --tw-border-opacity: 1; - border-top-width: 1px; - border-top-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity))); -} - -.textarea:focus { - box-shadow: none; - border-color: var(--fallback-bc, oklch(var(--bc) / .2)); - outline-offset: 2px; - outline-width: 2px; - outline-style: solid; - outline-color: var(--fallback-bc, oklch(var(--bc) / .2)); -} - -.textarea-primary { - --tw-border-opacity: 1; - border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity))); -} - -.textarea-primary:focus { - --tw-border-opacity: 1; - border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity))); - outline-color: var(--fallback-p, oklch(var(--p) / 1)); -} - -.textarea-disabled, .textarea:disabled, .textarea[disabled] { - cursor: not-allowed; - --tw-border-opacity: 1; - border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity))); - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - color: var(--fallback-bc, oklch(var(--bc) / .4)); -} - -.textarea-disabled::placeholder, .textarea:disabled::placeholder, .textarea[disabled]::placeholder { - color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity))); - --tw-placeholder-opacity: .2; -} - -@keyframes toast-pop { - 0% { - opacity: 0; - transform: scale(.9); - } - - 100% { - opacity: 1; - transform: scale(1); - } -} - -.glass, .glass.btn-active { - backdrop-filter: blur(var(--glass-blur, 40px)); - background-color: #0000; - background-image: linear-gradient(135deg, rgb(255 255 255 / var(--glass-opacity, 30%))0%, #0000 100%), linear-gradient(var(--glass-reflex-degree, 100deg), rgb(255 255 255 / var(--glass-reflex-opacity, 10%))25%, #0000 25%); - box-shadow: 0 0 0 1px rgb(255 255 255 / var(--glass-border-opacity, 10%))inset, 0 0 0 2px #0000000d; - text-shadow: 0 1px rgb(0 0 0 / var(--glass-text-shadow-opacity, 5%)); - border: none; -} - -@media (hover: hover) { - .glass.btn-active { - backdrop-filter: blur(var(--glass-blur, 40px)); - background-color: #0000; - background-image: linear-gradient(135deg, rgb(255 255 255 / var(--glass-opacity, 30%))0%, #0000 100%), linear-gradient(var(--glass-reflex-degree, 100deg), rgb(255 255 255 / var(--glass-reflex-opacity, 10%))25%, #0000 25%); - box-shadow: 0 0 0 1px rgb(255 255 255 / var(--glass-border-opacity, 10%))inset, 0 0 0 2px #0000000d; - text-shadow: 0 1px rgb(0 0 0 / var(--glass-text-shadow-opacity, 5%)); - border: none; - } -} - -.btm-nav-xs { - height: 2.5rem; -} - -.btm-nav-xs > :where(.active) { - border-top-width: 1px; -} - -.btm-nav-xs .btm-nav-label { - font-size: .75rem; - line-height: 1rem; -} - -.btm-nav-sm { - height: 3rem; -} - -.btm-nav-sm > :where(.active) { - border-top-width: 2px; -} - -.btm-nav-sm .btm-nav-label { - font-size: .75rem; - line-height: 1rem; -} - -.btm-nav-md { - height: 4rem; -} - -.btm-nav-md > :where(.active) { - border-top-width: 2px; -} - -.btm-nav-md .btm-nav-label { - font-size: .875rem; - line-height: 1.25rem; -} - -.btm-nav-lg { - height: 5rem; -} - -.btm-nav-lg > :where(.active) { - border-top-width: 4px; -} - -.btm-nav-lg .btm-nav-label { - font-size: 1rem; - line-height: 1.5rem; -} - -.join.join-vertical { - flex-direction: column; -} - -.join.join-vertical .join-item:first-child:not(:last-child), .join.join-vertical :first-child:not(:last-child) .join-item { - border-start-start-radius: inherit; - border-start-end-radius: inherit; - border-end-end-radius: 0; - border-end-start-radius: 0; -} - -.join.join-vertical .join-item:last-child:not(:first-child), .join.join-vertical :last-child:not(:first-child) .join-item { - border-start-start-radius: 0; - border-start-end-radius: 0; - border-end-end-radius: inherit; - border-end-start-radius: inherit; -} - -.join.join-horizontal { - flex-direction: row; -} - -.join.join-horizontal .join-item:first-child:not(:last-child), .join.join-horizontal :first-child:not(:last-child) .join-item { - border-start-start-radius: inherit; - border-start-end-radius: 0; - border-end-end-radius: 0; - border-end-start-radius: inherit; -} - -.join.join-horizontal .join-item:last-child:not(:first-child), .join.join-horizontal :last-child:not(:first-child) .join-item { - border-start-start-radius: 0; - border-start-end-radius: inherit; - border-end-end-radius: inherit; - border-end-start-radius: 0; -} - -.avatar.online:before { - content: ""; - z-index: 10; - --tw-bg-opacity: 1; - background-color: var(--fallback-su, oklch(var(--su) / var(--tw-bg-opacity))); - outline-width: 2px; - outline-style: solid; - outline-color: var(--fallback-b1, oklch(var(--b1) / 1)); - border-radius: 9999px; - width: 15%; - height: 15%; - display: block; - position: absolute; - top: 7%; - right: 7%; -} - -.avatar.offline:before { - content: ""; - z-index: 10; - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); - outline-width: 2px; - outline-style: solid; - outline-color: var(--fallback-b1, oklch(var(--b1) / 1)); - border-radius: 9999px; - width: 15%; - height: 15%; - display: block; - position: absolute; - top: 7%; - right: 7%; -} - -.join.join-vertical > :where(:not(:first-child)) { - margin-top: -1px; - margin-left: 0; - margin-right: 0; -} - -.join.join-vertical > :where(:not(:first-child)).btn { - margin-top: calc(var(--border-btn) * -1); -} - -.join.join-horizontal > :where(:not(:first-child)) { - margin-top: 0; - margin-bottom: 0; - margin-inline-start: -1px; -} - -.join.join-horizontal > :where(:not(:first-child)).btn { - margin-inline-start: calc(var(--border-btn) * -1); -} - -.menu-xs :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-xs :where(li:not(.menu-title) > details > summary:not(.menu-title)) { - border-radius: .25rem; - padding: .25rem .5rem; - font-size: .75rem; - line-height: 1rem; -} - -.menu-xs .menu-title { - padding: .25rem .5rem; -} - -.menu-sm :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-sm :where(li:not(.menu-title) > details > summary:not(.menu-title)) { - border-radius: var(--rounded-btn, .5rem); - padding: .25rem .75rem; - font-size: .875rem; - line-height: 1.25rem; -} - -.menu-sm .menu-title { - padding: .5rem .75rem; -} - -.menu-md :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-md :where(li:not(.menu-title) > details > summary:not(.menu-title)) { - border-radius: var(--rounded-btn, .5rem); - padding: .5rem 1rem; - font-size: .875rem; - line-height: 1.25rem; -} - -.menu-md .menu-title { - padding: .5rem 1rem; -} - -.menu-lg :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-lg :where(li:not(.menu-title) > details > summary:not(.menu-title)) { - border-radius: var(--rounded-btn, .5rem); - padding: .75rem 1.5rem; - font-size: 1.125rem; - line-height: 1.75rem; -} - -.menu-lg .menu-title { - padding: .75rem 1.5rem; -} - -.visible { - visibility: visible; -} - -.collapse { - visibility: collapse; -} - -.static { - position: static; -} - -.fixed { - position: fixed; -} - -.absolute { - position: absolute; -} - -.relative { - position: relative; -} - -.sticky { - position: sticky; -} - -.isolate { - isolation: isolate; -} - -.mx-1 { - margin-left: .25rem; - margin-right: .25rem; -} - -.mx-2 { - margin-left: .5rem; - margin-right: .5rem; -} - -.mt-2 { - margin-top: .5rem; -} - -.block { - display: block; -} - -.flex { - display: flex; -} - -.table { - display: table; -} - -.grid { - display: grid; -} - -.hidden { - display: none; -} - -.w-full { - width: 100%; -} - -.transform { - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} - -.resize { - resize: both; -} - -.flex-col { - flex-direction: column; -} - -.items-center { - align-items: center; -} - -.justify-center { - justify-content: center; -} - -.gap-y-1\\.5 { - row-gap: .375rem; -} - -.gap-y-1 { - row-gap: .25rem; -} - -.border { - border-width: 1px; -} - -.border-base-300 { - --tw-border-opacity: 1; - border-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-border-opacity))); -} - -.border-gray-300 { - --tw-border-opacity: 1; - border-color: rgb(209 213 219 / var(--tw-border-opacity)); -} - -.bg-base-200 { - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); -} - -.p-5 { - padding: 1.25rem; -} - -.text-xl { - font-size: 1.25rem; - line-height: 1.75rem; -} - -.font-medium { - font-weight: 500; -} - -.underline { - text-decoration-line: underline; -} - -.outline { - outline-style: solid; -} - -.blur { - --tw-blur: blur(8px); - filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); -} - -.filter { - filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); -} - -.transition { - transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter; - transition-duration: .15s; - transition-timing-function: cubic-bezier(.4, 0, .2, 1); -} - -.ease-in-out { - transition-timing-function: cubic-bezier(.4, 0, .2, 1); -} - -.ease-out { - transition-timing-function: cubic-bezier(0, 0, .2, 1); -} - -@media (hover: hover) { - .table .hover\\:hover:hovertr:hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - } - - .table .hover\\:hover:hovertr:nth-child(2n):hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - } - - .table-zebra .hover\\:hover:hovertr:hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); - } - - .table-zebra .hover\\:hover:hovertr:nth-child(2n):hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); - } - - .table .disabled\\:hover:disabledtr:hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - } - - .table .disabled\\:hover:disabledtr:nth-child(2n):hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity))); - } - - .table-zebra .disabled\\:hover:disabledtr:hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); - } - - .table-zebra .disabled\\:hover:disabledtr:nth-child(2n):hover { - --tw-bg-opacity: 1; - background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity))); - } -} -/*# sourceMappingURL=index.75a90472.css.map */ - -`}),i("800sp",function(e,o){t(e.exports,"css",()=>a("4jdI8").css),t(e.exports,"html",()=>a("jJTNo").html),t(e.exports,"LitElement",()=>a("lPSdM").LitElement),a("3qR54"),a("jJTNo"),a("lPSdM"),a("8FVzH")}),i("3qR54",function(e,o){t(e.exports,"notEqual",()=>m),t(e.exports,"ReactiveElement",()=>f),t(e.exports,"css",()=>a("4jdI8").css);var r=a("4jdI8");/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */let{is:i,defineProperty:l,getOwnPropertyDescriptor:n,getOwnPropertyNames:c,getOwnPropertySymbols:s,getPrototypeOf:b}=Object,d=globalThis,p=d.trustedTypes,h=p?p.emptyScript:"",u=d.reactiveElementPolyfillSupport,v=(t,e)=>t,k={toAttribute(t,e){switch(e){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let o=t;switch(e){case Boolean:o=null!==t;break;case Number:o=null===t?null:Number(t);break;case Object:case Array:try{o=JSON.parse(t)}catch(t){o=null}}return o}},m=(t,e)=>!i(t,e),w={attribute:!0,type:String,converter:k,reflect:!1,hasChanged:m};Symbol.metadata??=Symbol("metadata"),d.litPropertyMetadata??=new WeakMap;class f extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=w){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){let o=Symbol(),r=this.getPropertyDescriptor(t,o,e);void 0!==r&&l(this.prototype,t,r)}}static getPropertyDescriptor(t,e,o){let{get:r,set:a}=n(this.prototype,t)??{get(){return this[e]},set(t){this[e]=t}};return{get(){return r?.call(this)},set(e){let i=r?.call(this);a.call(this,e),this.requestUpdate(t,i,o)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??w}static _$Ei(){if(this.hasOwnProperty(v("elementProperties")))return;let t=b(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(v("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(v("properties"))){let t=this.properties;for(let e of[...c(t),...s(t)])this.createProperty(e,t[e])}let t=this[Symbol.metadata];if(null!==t){let e=litPropertyMetadata.get(t);if(void 0!==e)for(let[t,o]of e)this.elementProperties.set(t,o)}for(let[t,e]of(this._$Eh=new Map,this.elementProperties)){let o=this._$Eu(t,e);void 0!==o&&this._$Eh.set(o,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t))for(let o of new Set(t.flat(1/0).reverse()))e.unshift((0,r.getCompatibleStyle)(o));else void 0!==t&&e.push((0,r.getCompatibleStyle)(t));return e}static _$Eu(t,e){let o=e.attribute;return!1===o?void 0:"string"==typeof o?o:"string"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map;for(let e of this.constructor.elementProperties.keys())this.hasOwnProperty(e)&&(t.set(e,this[e]),delete this[e]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return(0,r.adoptStyles)(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,o){this._$AK(t,o)}_$EC(t,e){let o=this.constructor.elementProperties.get(t),r=this.constructor._$Eu(t,o);if(void 0!==r&&!0===o.reflect){let a=(void 0!==o.converter?.toAttribute?o.converter:k).toAttribute(e,o.type);this._$Em=t,null==a?this.removeAttribute(r):this.setAttribute(r,a),this._$Em=null}}_$AK(t,e){let o=this.constructor,r=o._$Eh.get(t);if(void 0!==r&&this._$Em!==r){let t=o.getPropertyOptions(r),a="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:k;this._$Em=r,this[r]=a.fromAttribute(e,t.type),this._$Em=null}}requestUpdate(t,e,o){if(void 0!==t){if(!((o??=this.constructor.getPropertyOptions(t)).hasChanged??m)(this[t],e))return;this.P(t,e,o)}!1===this.isUpdatePending&&(this._$ES=this._$ET())}P(t,e,o){this._$AL.has(t)||this._$AL.set(t,e),!0===o.reflect&&this._$Em!==t&&(this._$Ej??=new Set).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[t,e]of this._$Ep)this[t]=e;this._$Ep=void 0}let t=this.constructor.elementProperties;if(t.size>0)for(let[e,o]of t)!0!==o.wrapped||this._$AL.has(e)||void 0===this[e]||this.P(e,this[e],o)}let t=!1,e=this._$AL;try{(t=this.shouldUpdate(e))?(this.willUpdate(e),this._$EO?.forEach(t=>t.hostUpdate?.()),this.update(e)):this._$EU()}catch(e){throw t=!1,this._$EU(),e}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&=this._$Ej.forEach(t=>this._$EC(t,this[t])),this._$EU()}updated(t){}firstUpdated(t){}}f.elementStyles=[],f.shadowRootOptions={mode:"open"},f[v("elementProperties")]=new Map,f[v("finalized")]=new Map,u?.({ReactiveElement:f}),(d.reactiveElementVersions??=[]).push("2.0.4")}),i("4jdI8",function(e,o){t(e.exports,"css",()=>s),t(e.exports,"adoptStyles",()=>b),t(e.exports,"getCompatibleStyle",()=>d);/** - * @license - * Copyright 2019 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */let r=globalThis,a=r.ShadowRoot&&(void 0===r.ShadyCSS||r.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,i=Symbol(),l=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==i)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(a&&void 0===t){let o=void 0!==e&&1===e.length;o&&(t=l.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),o&&l.set(e,t))}return t}toString(){return this.cssText}}let c=t=>new n("string"==typeof t?t:t+"",void 0,i),s=(t,...e)=>new n(1===t.length?t[0]:e.reduce((e,o,r)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+t[r+1],t[0]),t,i),b=(t,e)=>{if(a)t.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let o of e){let e=document.createElement("style"),a=r.litNonce;void 0!==a&&e.setAttribute("nonce",a),e.textContent=o.cssText,t.appendChild(e)}},d=a?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(let o of t.cssRules)e+=o.cssText;return c(e)})(t):t}),i("jJTNo",function(e,o){t(e.exports,"html",()=>_),t(e.exports,"noChange",()=>A),t(e.exports,"nothing",()=>j),t(e.exports,"render",()=>Y);/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */let r=globalThis,a=r.trustedTypes,i=a?a.createPolicy("lit-html",{createHTML:t=>t}):void 0,l="$lit$",n=`lit$${Math.random().toFixed(9).slice(2)}$`,c="?"+n,s=`<${c}>`,b=document,d=()=>b.createComment(""),p=t=>null===t||"object"!=typeof t&&"function"!=typeof t,h=Array.isArray,u=t=>h(t)||"function"==typeof t?.[Symbol.iterator],v="[ \n\f\r]",k=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,m=/-->/g,w=/>/g,f=RegExp(`>|${v}(?:([^\\s"'>=/]+)(${v}*=${v}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),g=/'/g,y=/"/g,x=/^(?:script|style|textarea|title)$/i,$=t=>(e,...o)=>({_$litType$:t,strings:e,values:o}),_=$(1),A=($(2),Symbol.for("lit-noChange")),j=Symbol.for("lit-nothing"),E=new WeakMap,S=b.createTreeWalker(b,129);function z(t,e){if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==i?i.createHTML(e):e}let C=(t,e)=>{let o=t.length-1,r=[],a,i=2===e?"":"",c=k;for(let e=0;e"===d[0]?(c=a??k,p=-1):void 0===d[1]?p=-2:(p=c.lastIndex-d[2].length,b=d[1],c=void 0===d[3]?f:'"'===d[3]?y:g):c===y||c===g?c=f:c===m||c===w?c=k:(c=f,a=void 0);let u=c===f&&t[e+1].startsWith("/>")?" ":"";i+=c===k?o+s:p>=0?(r.push(b),o.slice(0,p)+l+o.slice(p)+n+u):o+n+(-2===p?e:u)}return[z(t,i+(t[o]||"")+(2===e?"":"")),r]};class P{constructor({strings:t,_$litType$:e},o){let r;this.parts=[];let i=0,s=0,b=t.length-1,p=this.parts,[h,u]=C(t,e);if(this.el=P.createElement(h,o),S.currentNode=this.el.content,2===e){let t=this.el.content.firstChild;t.replaceWith(...t.childNodes)}for(;null!==(r=S.nextNode())&&p.length0){r.textContent=a?a.emptyScript:"";for(let o=0;o2||""!==o[0]||""!==o[1]?(this._$AH=Array(o.length-1).fill(new String),this.strings=o):this._$AH=j}_$AI(t,e=this,o,r){let a=this.strings,i=!1;if(void 0===a)(i=!p(t=U(this,t,e,0))||t!==this._$AH&&t!==A)&&(this._$AH=t);else{let r,l;let n=t;for(t=a[0],r=0;r{let r=o?.renderBefore??e,a=r._$litPart$;if(void 0===a){let t=o?.renderBefore??null;r._$litPart$=a=new N(e.insertBefore(d(),t),t,void 0,o??{})}return a._$AI(t),a}}),i("lPSdM",function(e,o){t(e.exports,"css",()=>a("4jdI8").css),t(e.exports,"ReactiveElement",()=>a("3qR54").ReactiveElement),t(e.exports,"html",()=>a("jJTNo").html),t(e.exports,"noChange",()=>a("jJTNo").noChange),t(e.exports,"render",()=>a("jJTNo").render),t(e.exports,"LitElement",()=>l);var r=a("3qR54"),i=a("jJTNo");/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */class l extends r.ReactiveElement{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=(0,i.render)(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return i.noChange}}l._$litElement$=!0,l.finalized=!0,globalThis.litElementHydrateSupport?.({LitElement:l});let n=globalThis.litElementPolyfillSupport;n?.({LitElement:l}),(globalThis.litElementVersions??=[]).push("4.0.6")}),i("8FVzH",function(t,e){});var l=a("hNeh9");a("800sp");var n=a("4jdI8"),c=a("jJTNo"),s=a("lPSdM");class b extends s.LitElement{static styles=[(0,n.css)` - .item-graph { - grid-area: left; - - // background-color: red; - } - .item-result { - grid-area: right; - // background-color: blue; - } - .item-executor { - grid-area: bottom; - //background-color: yellow; - } - .item-container { - height: 100vh; - display: grid; - grid-template-columns: 1fr 1fr 1fr 1fr; - grid-template-rows: 25% 25% 25% 25% ; - row-gap: 15px; - - grid-template-areas: - "left left right right" - "left left right right" - "left left right right" - "bottom bottom right right"; - } - `,l.default];#t(t){let{type:e,detail:o}=t;console.log("routeEvent",e);let r=this.querySelector(`[slot="${e}"]`);if(!r){console.error(`slot "${e}" not found!`);return}r.dispatchEvent(new CustomEvent(e,{detail:o}))}connectedCallback(){super.connectedCallback(),this.addEventListener("result",this.#t),this.addEventListener("graph",this.#t)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("result",this.#t),this.removeEventListener("graph",this.#t)}render(){return(0,c.html)` -
-
LEFT
-
RIGHT
-
BOTTOM
-
- `}}window.customElements.define("lg4j-workbench",b); -//# sourceMappingURL=index.66da7916.js.map diff --git a/jetty/src/main/resources/webapp/index.66da7916.js.map b/jetty/src/main/resources/webapp/index.66da7916.js.map deleted file mode 100644 index bb91c3b..0000000 --- a/jetty/src/main/resources/webapp/index.66da7916.js.map +++ /dev/null @@ -1 +0,0 @@ -{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,U,I,G,E,S,I,E,E,SC6lFA,EA3lFiB,AAAA,CAAA,EAAA,EAAA,GAAE,AAAF,CAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0lFrB,CAAC,A,G,E,Q,S,C,C,C,E,E,E,O,C,M,I,A,E,S,G,E,E,E,O,C,O,I,A,E,S,I,E,E,E,O,C,a,I,A,E,S,U,E,E,S,E,S,E,S,E,Q,G,E,Q,S,C,C,C,E,E,E,O,C,W,I,G,E,E,O,C,kB,I,G,E,E,O,C,M,I,A,E,S,G,E,I,E,E,Q;;;;CEhjFD,EAAA,GAAA,CAAMiC,GACJA,CAAAA,CAAE3B,eACFA,CAAAA,CAAc8B,yBACdA,CAAAA,CAAwBE,oBACxBA,CAAAA,CAAmBE,sBACnBA,CAAAA,CAAqBE,eACrBA,CAAAA,CAAAA,CACErC,OAKEmW,EAAS5V,WAUTkC,EAAgB0T,EACnB1T,YAAAA,CAMG2T,EAAiC3T,EAClCA,EAAaE,WAAAA,CACd,GAEE0T,EAEFF,EAAOtT,8BAAAA,CA4FLyT,EAA4B,CAChCC,EACAC,IACMD,EAuJKE,EAA8C,CACzD,YAAYC,CAAAA,CAAgB9S,CAAAA,EAC1B,OAAQA,GACN,KAAKV,QACHwT,EAAQA,EAAQN,EA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","sources":["","src/twlit.js","node_modules/@lit/reactive-element/reactive-element.js","node_modules/@lit/reactive-element/src/reactive-element.ts","node_modules/@lit/reactive-element/css-tag.js","node_modules/@lit/reactive-element/src/css-tag.ts","node_modules/lit-html/lit-html.js","node_modules/lit-html/src/lit-html.ts","node_modules/lit-element/lit-element.js","node_modules/lit-element/src/lit-element.ts","node_modules/lit-html/is-server.js","node_modules/lit-html/src/is-server.ts","src/lg4j-workbench.js"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire3bab\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire3bab\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"hNeh9\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $cf4216225913b0de$export$2e2bcd8739ae039);\nparcelRequire(\"800sp\");\nvar $4jdI8 = parcelRequire(\"4jdI8\");\nconst $cf4216225913b0de$var$TWStyles = (0, $4jdI8.css)` \n*, :before, :after {\n box-sizing: border-box;\n border: 0 solid #e5e7eb;\n}\n\n:before, :after {\n --tw-content: \"\";\n}\n\nhtml, :host {\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;\n line-height: 1.5;\n}\n\nbody {\n line-height: inherit;\n margin: 0;\n}\n\nhr {\n color: inherit;\n border-top-width: 1px;\n height: 0;\n}\n\nabbr:where([title]) {\n text-decoration: underline dotted;\n}\n\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n}\n\nb, strong {\n font-weight: bolder;\n}\n\ncode, kbd, samp, pre {\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;\n font-size: 1em;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub, sup {\n vertical-align: baseline;\n font-size: 75%;\n line-height: 0;\n position: relative;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\n\nbutton, input, optgroup, select, textarea {\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-family: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\n\nbutton, select {\n text-transform: none;\n}\n\nbutton, input:where([type=\"button\"]), input:where([type=\"reset\"]), input:where([type=\"submit\"]) {\n -webkit-appearance: button;\n background-color: #0000;\n background-image: none;\n}\n\n:-moz-focusring {\n outline: auto;\n}\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n::-webkit-inner-spin-button {\n height: auto;\n}\n\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\n\nsummary {\n display: list-item;\n}\n\nblockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol, ul, menu {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\ndialog {\n padding: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::placeholder, textarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\nbutton, [role=\"button\"] {\n cursor: pointer;\n}\n\n:disabled {\n cursor: default;\n}\n\nimg, svg, video, canvas, audio, iframe, embed, object {\n vertical-align: middle;\n display: block;\n}\n\nimg, video {\n max-width: 100%;\n height: auto;\n}\n\n[hidden] {\n display: none;\n}\n\n:root, [data-theme] {\n background-color: var(--fallback-b1, oklch(var(--b1) / 1));\n color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n@supports not (color: oklch(0% 0 0)) {\n :root {\n color-scheme: light;\n --fallback-p: #491eff;\n --fallback-pc: #d4dbff;\n --fallback-s: #ff41c7;\n --fallback-sc: #fff9fc;\n --fallback-a: #00cfbd;\n --fallback-ac: #00100d;\n --fallback-n: #2b3440;\n --fallback-nc: #d7dde4;\n --fallback-b1: #fff;\n --fallback-b2: #e5e6e6;\n --fallback-b3: #e5e6e6;\n --fallback-bc: #1f2937;\n --fallback-in: #00b3f0;\n --fallback-inc: #000;\n --fallback-su: #00ca92;\n --fallback-suc: #000;\n --fallback-wa: #ffc22d;\n --fallback-wac: #000;\n --fallback-er: #ff6f70;\n --fallback-erc: #000;\n }\n\n @media (prefers-color-scheme: dark) {\n :root {\n color-scheme: dark;\n --fallback-p: #7582ff;\n --fallback-pc: #050617;\n --fallback-s: #ff71cf;\n --fallback-sc: #190211;\n --fallback-a: #00c7b5;\n --fallback-ac: #000e0c;\n --fallback-n: #2a323c;\n --fallback-nc: #a6adbb;\n --fallback-b1: #1d232a;\n --fallback-b2: #191e24;\n --fallback-b3: #15191e;\n --fallback-bc: #a6adbb;\n --fallback-in: #00b3f0;\n --fallback-inc: #000;\n --fallback-su: #00ca92;\n --fallback-suc: #000;\n --fallback-wa: #ffc22d;\n --fallback-wac: #000;\n --fallback-er: #ff6f70;\n --fallback-erc: #000;\n }\n }\n}\n\nhtml {\n -webkit-tap-highlight-color: transparent;\n}\n\n* {\n scrollbar-color: color-mix(in oklch, currentColor 35%, transparent) transparent;\n}\n\n:hover {\n scrollbar-color: color-mix(in oklch, currentColor 60%, transparent) transparent;\n}\n\n:root {\n color-scheme: light;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 89.824% .06192 275.75;\n --ac: 15.352% .0368 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 49.12% .3096 275.75;\n --s: 69.71% .329 342.55;\n --sc: 98.71% .0106 342.55;\n --a: 76.76% .184 183.61;\n --n: 32.1785% .02476 255.702;\n --nc: 89.4994% .011585 252.096;\n --b1: 100% 0 0;\n --b2: 96.1151% 0 0;\n --b3: 92.4169% .00108 197.138;\n --bc: 27.8078% .029596 256.848;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n color-scheme: dark;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 13.138% .0392 275.75;\n --sc: 14.96% .052 342.55;\n --ac: 14.902% .0334 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 65.69% .196 275.75;\n --s: 74.8% .26 342.55;\n --a: 74.51% .167 183.61;\n --n: 31.3815% .021108 254.139;\n --nc: 74.6477% .0216 264.436;\n --b1: 25.3267% .015896 252.418;\n --b2: 23.2607% .013807 253.101;\n --b3: 21.1484% .01165 254.088;\n --bc: 74.6477% .0216 264.436;\n }\n}\n\n[data-theme=\"light\"] {\n color-scheme: light;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 89.824% .06192 275.75;\n --ac: 15.352% .0368 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 49.12% .3096 275.75;\n --s: 69.71% .329 342.55;\n --sc: 98.71% .0106 342.55;\n --a: 76.76% .184 183.61;\n --n: 32.1785% .02476 255.702;\n --nc: 89.4994% .011585 252.096;\n --b1: 100% 0 0;\n --b2: 96.1151% 0 0;\n --b3: 92.4169% .00108 197.138;\n --bc: 27.8078% .029596 256.848;\n}\n\n[data-theme=\"dark\"] {\n color-scheme: dark;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 13.138% .0392 275.75;\n --sc: 14.96% .052 342.55;\n --ac: 14.902% .0334 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 65.69% .196 275.75;\n --s: 74.8% .26 342.55;\n --a: 74.51% .167 183.61;\n --n: 31.3815% .021108 254.139;\n --nc: 74.6477% .0216 264.436;\n --b1: 25.3267% .015896 252.418;\n --b2: 23.2607% .013807 253.101;\n --b3: 21.1484% .01165 254.088;\n --bc: 74.6477% .0216 264.436;\n}\n\n*, :before, :after, ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #3b82f680;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n.container {\n width: 100%;\n}\n\n@media (width >= 640px) {\n .container {\n max-width: 640px;\n }\n}\n\n@media (width >= 768px) {\n .container {\n max-width: 768px;\n }\n}\n\n@media (width >= 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n\n@media (width >= 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n\n@media (width >= 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n\n.avatar {\n display: inline-flex;\n position: relative;\n}\n\n.avatar > div {\n aspect-ratio: 1;\n display: block;\n overflow: hidden;\n}\n\n.avatar img {\n object-fit: cover;\n width: 100%;\n height: 100%;\n}\n\n.avatar.placeholder > div {\n justify-content: center;\n align-items: center;\n display: flex;\n}\n\n.badge {\n border-radius: var(--rounded-badge, 1.9rem);\n --tw-border-opacity: 1;\n border-width: 1px;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n justify-content: center;\n align-items: center;\n width: fit-content;\n height: 1.25rem;\n padding-left: .563rem;\n padding-right: .563rem;\n font-size: .875rem;\n line-height: 1.25rem;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: inline-flex;\n}\n\n.btm-nav {\n padding-bottom: env(safe-area-inset-bottom);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n color: currentColor;\n flex-direction: row;\n justify-content: space-around;\n align-items: center;\n width: 100%;\n height: 4rem;\n display: flex;\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n}\n\n.btm-nav > * {\n cursor: pointer;\n border-color: currentColor;\n flex-direction: column;\n flex-basis: 100%;\n justify-content: center;\n align-items: center;\n gap: .25rem;\n height: 100%;\n display: flex;\n position: relative;\n}\n\n@media (hover: hover) {\n .label a:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n }\n\n .menu li > :not(ul, .menu-title, details, .btn):active, .menu li > :not(ul, .menu-title, details, .btn).active, .menu li > details > summary:active {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity)));\n }\n\n .table tr.hover:hover, .table tr.hover:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra tr.hover:hover, .table-zebra tr.hover:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n}\n\n.btn {\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n border-radius: var(--rounded-btn, .5rem);\n border-color: #0000;\n border-color: oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity));\n text-align: center;\n border-width: var(--border-btn, 1px);\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-shadow: 0 1px 2px 0 #0000000d;\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n background-color: oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity));\n --tw-bg-opacity: 1;\n --tw-border-opacity: 1;\n flex-wrap: wrap;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n gap: .5rem;\n height: 3rem;\n min-height: 3rem;\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: .875rem;\n font-weight: 600;\n line-height: 1em;\n text-decoration-line: none;\n transition-property: color, background-color, border-color, opacity, box-shadow, transform;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: inline-flex;\n}\n\n.btn-disabled, .btn[disabled], .btn:disabled {\n pointer-events: none;\n}\n\n:where(.btninput[type=\"checkbox\"]), :where(.btninput[type=\"radio\"]) {\n appearance: none;\n width: auto;\n}\n\n.btninput[type=\"checkbox\"]:after, .btninput[type=\"radio\"]:after {\n --tw-content: attr(aria-label);\n content: var(--tw-content);\n}\n\n.checkbox {\n --chkbg: var(--fallback-bc, oklch(var(--bc) / 1));\n --chkfg: var(--fallback-b1, oklch(var(--b1) / 1));\n cursor: pointer;\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n flex-shrink: 0;\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.collapse:not(td):not(tr):not(colgroup) {\n visibility: visible;\n}\n\n.collapse {\n border-radius: var(--rounded-box, 1rem);\n grid-template-rows: auto 0fr;\n width: 100%;\n transition: grid-template-rows .2s;\n display: grid;\n position: relative;\n overflow: hidden;\n}\n\n.collapse-title, .collapse > input[type=\"checkbox\"], .collapse > input[type=\"radio\"], .collapse-content {\n grid-row-start: 1;\n grid-column-start: 1;\n}\n\n.collapse > input[type=\"checkbox\"], .collapse > input[type=\"radio\"] {\n appearance: none;\n opacity: 0;\n}\n\n.collapse-content {\n visibility: hidden;\n cursor: unset;\n grid-row-start: 2;\n grid-column-start: 1;\n min-height: 0;\n padding-left: 1rem;\n padding-right: 1rem;\n transition: padding .2s ease-out, background-color .2s ease-out;\n}\n\n.collapse[open], .collapse-open, .collapse:focus:not(.collapse-close), .collapse:not(.collapse-close):has( > input[type=\"checkbox\"]:checked), .collapse:not(.collapse-close):has( > input[type=\"radio\"]:checked) {\n grid-template-rows: auto 1fr;\n}\n\n.collapse[open] > .collapse-content, .collapse-open > .collapse-content, .collapse:focus:not(.collapse-close) > .collapse-content, .collapse:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-content, .collapse:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-content {\n visibility: visible;\n min-height: fit-content;\n}\n\n.dropdown {\n display: inline-block;\n position: relative;\n}\n\n.dropdown > :not(summary):focus {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.dropdown .dropdown-content {\n position: absolute;\n}\n\n.dropdown:not(details) .dropdown-content {\n visibility: hidden;\n opacity: 0;\n transform-origin: top;\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n.dropdown-end .dropdown-content {\n inset-inline-end: 0;\n}\n\n.dropdown-left .dropdown-content {\n bottom: auto;\n transform-origin: 100%;\n inset-inline-end: 100%;\n top: 0;\n}\n\n.dropdown-right .dropdown-content {\n bottom: auto;\n transform-origin: 0;\n inset-inline-start: 100%;\n top: 0;\n}\n\n.dropdown-bottom .dropdown-content {\n transform-origin: top;\n top: 100%;\n bottom: auto;\n}\n\n.dropdown-top .dropdown-content {\n transform-origin: bottom;\n top: auto;\n bottom: 100%;\n}\n\n.dropdown-end.dropdown-right .dropdown-content, .dropdown-end.dropdown-left .dropdown-content {\n top: auto;\n bottom: 0;\n}\n\n.dropdown.dropdown-open .dropdown-content, .dropdown:not(.dropdown-hover):focus .dropdown-content, .dropdown:focus-within .dropdown-content {\n visibility: visible;\n opacity: 1;\n}\n\n@media (hover: hover) {\n .dropdown.dropdown-hover:hover .dropdown-content {\n visibility: visible;\n opacity: 1;\n }\n\n .btm-nav > .disabled:hover, .btm-nav > [disabled]:hover {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n }\n\n .btn:hover {\n --tw-border-opacity: 1;\n border-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn:hover {\n background-color: color-mix(in oklab, oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity, 1)) 90%, black);\n border-color: color-mix(in oklab, oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity, 1)) 90%, black);\n }\n }\n\n @supports not (color: oklch(0% 0 0)) {\n .btn:hover {\n background-color: var(--btn-color, var(--fallback-b2));\n border-color: var(--btn-color, var(--fallback-b2));\n }\n }\n\n .btn.glass:hover {\n --glass-opacity: 25%;\n --glass-border-opacity: 15%;\n }\n\n .btn-ghost:hover {\n border-color: #0000;\n }\n\n @supports (color: oklch(0% 0 0)) {\n .btn-ghost:hover {\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n }\n }\n\n .btn-link:hover {\n background-color: #0000;\n border-color: #0000;\n text-decoration-line: underline;\n }\n\n .btn-outline:hover {\n --tw-border-opacity: 1;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-b1, oklch(var(--b1) / var(--tw-text-opacity)));\n }\n\n .btn-outline.btn-primary:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-primary:hover {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-secondary:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-secondary:hover {\n background-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-accent:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-accent:hover {\n background-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-success:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-success:hover {\n background-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-info:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-info:hover {\n background-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-warning:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-warning:hover {\n background-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-error:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-error:hover {\n background-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n }\n }\n\n .btn-disabled:hover, .btn[disabled]:hover, .btn:disabled:hover {\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .2;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btninput[type=\"checkbox\"]:checked:hover, .btninput[type=\"radio\"]:checked:hover {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n }\n\n .dropdown.dropdown-hover:hover .dropdown-content {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n }\n\n :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover {\n cursor: pointer;\n outline-offset: 2px;\n outline: 2px solid #0000;\n }\n\n @supports (color: oklch(0% 0 0)) {\n :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover {\n background-color: var(--fallback-bc, oklch(var(--bc) / .1));\n }\n }\n}\n\n.dropdown:is(details) summary::-webkit-details-marker {\n display: none;\n}\n\n.label {\n -webkit-user-select: none;\n user-select: none;\n justify-content: space-between;\n align-items: center;\n padding: .5rem .25rem;\n display: flex;\n}\n\n.input {\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-width: 1px;\n border-color: #0000;\n flex-shrink: 1;\n height: 3rem;\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.input[type=\"number\"]::-webkit-inner-spin-button {\n margin-top: -1rem;\n margin-bottom: -1rem;\n margin-inline-end: -1rem;\n}\n\n.input-md[type=\"number\"]::-webkit-inner-spin-button {\n margin-top: -1rem;\n margin-bottom: -1rem;\n margin-inline-end: -1rem;\n}\n\n.join {\n border-radius: var(--rounded-btn, .5rem);\n align-items: stretch;\n display: inline-flex;\n}\n\n.join :where(.join-item), .join .join-item:not(:first-child):not(:last-child), .join :not(:first-child):not(:last-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join .join-item:first-child:not(:last-child), .join :first-child:not(:last-child) .join-item {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n}\n\n.join .dropdown .join-item:first-child:not(:last-child), .join :first-child:not(:last-child) .dropdown .join-item {\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n}\n\n.join :where(.join-item:first-child:not(:last-child)), .join :where(:first-child:not(:last-child) .join-item) {\n border-start-start-radius: inherit;\n border-end-start-radius: inherit;\n}\n\n.join .join-item:last-child:not(:first-child), .join :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join :where(.join-item:last-child:not(:first-child)), .join :where(:last-child:not(:first-child) .join-item) {\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n}\n\n@supports not selector(:has(*)) {\n :where(.join *) {\n border-radius: inherit;\n }\n}\n\n@supports selector(:has(*)) {\n :where(.join :has(.join-item)) {\n border-radius: inherit;\n }\n}\n\n.kbd {\n border-radius: var(--rounded-btn, .5rem);\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n border-bottom-width: 2px;\n justify-content: center;\n align-items: center;\n min-width: 2.2em;\n min-height: 2.2em;\n padding-left: .5rem;\n padding-right: .5rem;\n display: inline-flex;\n}\n\n.menu {\n flex-flow: column wrap;\n padding: .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n display: flex;\n}\n\n.menu :where(li ul) {\n white-space: nowrap;\n margin-inline-start: 1rem;\n padding-inline-start: .5rem;\n position: relative;\n}\n\n.menu :where(li:not(.menu-title) > :not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n -webkit-user-select: none;\n user-select: none;\n grid-auto-columns: minmax(auto, max-content) auto max-content;\n grid-auto-flow: column;\n align-content: flex-start;\n align-items: center;\n gap: .5rem;\n display: grid;\n}\n\n.menu li.disabled {\n cursor: not-allowed;\n -webkit-user-select: none;\n user-select: none;\n color: var(--fallback-bc, oklch(var(--bc) / .3));\n}\n\n.menu :where(li > .menu-dropdown:not(.menu-dropdown-show)) {\n display: none;\n}\n\n:where(.menu li) {\n flex-flow: column wrap;\n flex-shrink: 0;\n align-items: stretch;\n display: flex;\n position: relative;\n}\n\n:where(.menu li) .badge {\n justify-self: end;\n}\n\n.mockup-browser {\n border-radius: var(--rounded-box, 1rem);\n position: relative;\n overflow: auto hidden;\n}\n\n.mockup-browser pre[data-prefix]:before {\n content: attr(data-prefix);\n text-align: right;\n display: inline-block;\n}\n\n.progress {\n appearance: none;\n border-radius: var(--rounded-box, 1rem);\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n width: 100%;\n height: .5rem;\n position: relative;\n overflow: hidden;\n}\n\n.radio {\n --chkbg: var(--bc);\n cursor: pointer;\n appearance: none;\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n border-radius: 9999px;\n flex-shrink: 0;\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.select {\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n background-image: linear-gradient(45deg, #0000 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, #0000 50%);\n background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%);\n background-repeat: no-repeat;\n background-size: 4px 4px, 4px 4px;\n border-width: 1px;\n border-color: #0000;\n height: 3rem;\n min-height: 3rem;\n padding-inline: 1rem 2.5rem;\n font-size: .875rem;\n line-height: 2;\n display: inline-flex;\n}\n\n.select[multiple] {\n height: auto;\n}\n\n.table {\n border-radius: var(--rounded-box, 1rem);\n text-align: left;\n width: 100%;\n font-size: .875rem;\n line-height: 1.25rem;\n position: relative;\n}\n\n.table :where(.table-pin-rows thead tr) {\n z-index: 1;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n top: 0;\n}\n\n.table :where(.table-pin-rows tfoot tr) {\n z-index: 1;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n bottom: 0;\n}\n\n.table :where(.table-pin-cols tr th) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n left: 0;\n right: 0;\n}\n\n.table-zebra tbody tr:nth-child(2n) :where(.table-pin-cols tr th) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.textarea {\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-width: 1px;\n border-color: #0000;\n flex-shrink: 1;\n min-height: 3rem;\n padding: .5rem 1rem;\n font-size: .875rem;\n line-height: 2;\n}\n\n.avatar-group {\n display: flex;\n overflow: hidden;\n}\n\n.avatar-group :where(.avatar) {\n --tw-border-opacity: 1;\n border-width: 4px;\n border-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-border-opacity)));\n border-radius: 9999px;\n overflow: hidden;\n}\n\n.btm-nav > :not(.active) {\n padding-top: .125rem;\n}\n\n.btm-nav > :where(.active) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-top-width: 2px;\n}\n\n.btm-nav > .disabled, .btm-nav > [disabled] {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n}\n\n.btm-nav > * .label {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n .btn {\n animation: button-pop var(--animation-btn, .25s) ease-out;\n }\n}\n\n.btn:active:hover, .btn:active:focus {\n transform: scale(var(--btn-focus-scale, .97));\n animation: ease-out button-pop;\n}\n\n@supports not (color: oklch(0% 0 0)) {\n .btn {\n background-color: var(--btn-color, var(--fallback-b2));\n border-color: var(--btn-color, var(--fallback-b2));\n }\n\n .btn-primary {\n --btn-color: var(--fallback-p);\n }\n\n .btn-secondary {\n --btn-color: var(--fallback-s);\n }\n\n .btn-accent {\n --btn-color: var(--fallback-a);\n }\n\n .btn-info {\n --btn-color: var(--fallback-in);\n }\n\n .btn-success {\n --btn-color: var(--fallback-su);\n }\n\n .btn-warning {\n --btn-color: var(--fallback-wa);\n }\n\n .btn-error {\n --btn-color: var(--fallback-er);\n }\n}\n\n@supports (color: color-mix(in oklab, black, black)) {\n .btn-active {\n background-color: color-mix(in oklab, oklch(var(--btn-color, var(--b3)) / var(--tw-bg-opacity, 1)) 90%, black);\n border-color: color-mix(in oklab, oklch(var(--btn-color, var(--b3)) / var(--tw-border-opacity, 1)) 90%, black);\n }\n\n .btn-outline.btn-primary.btn-active {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n\n .btn-outline.btn-secondary.btn-active {\n background-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n }\n\n .btn-outline.btn-accent.btn-active {\n background-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n }\n\n .btn-outline.btn-success.btn-active {\n background-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n }\n\n .btn-outline.btn-info.btn-active {\n background-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n }\n\n .btn-outline.btn-warning.btn-active {\n background-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n }\n\n .btn-outline.btn-error.btn-active {\n background-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n }\n}\n\n.btn:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n}\n\n.btn-primary {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n@supports (color: oklch(0% 0 0)) {\n .btn-primary {\n --btn-color: var(--p);\n }\n\n .btn-secondary {\n --btn-color: var(--s);\n }\n\n .btn-accent {\n --btn-color: var(--a);\n }\n\n .btn-info {\n --btn-color: var(--in);\n }\n\n .btn-success {\n --btn-color: var(--su);\n }\n\n .btn-warning {\n --btn-color: var(--wa);\n }\n\n .btn-error {\n --btn-color: var(--er);\n }\n}\n\n.btn-secondary {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-s, oklch(var(--s) / 1));\n}\n\n.btn-accent {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n outline-color: var(--fallback-a, oklch(var(--a) / 1));\n}\n\n.btn-info {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-in, oklch(var(--in) / 1));\n}\n\n.btn-success {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-su, oklch(var(--su) / 1));\n}\n\n.btn-warning {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n outline-color: var(--fallback-wa, oklch(var(--wa) / 1));\n}\n\n.btn-error {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-er, oklch(var(--er) / 1));\n}\n\n.btn.glass {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n outline-color: currentColor;\n}\n\n.btn.glass.btn-active {\n --glass-opacity: 25%;\n --glass-border-opacity: 15%;\n}\n\n.btn-ghost {\n color: currentColor;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-width: 1px;\n border-color: #0000;\n outline-color: currentColor;\n}\n\n.btn-ghost.btn-active {\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n border-color: #0000;\n}\n\n.btn-link {\n --tw-text-opacity: 1;\n color: var(--fallback-p, oklch(var(--p) / var(--tw-text-opacity)));\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-color: #0000;\n outline-color: currentColor;\n text-decoration-line: underline;\n}\n\n.btn-link.btn-active {\n background-color: #0000;\n border-color: #0000;\n text-decoration-line: underline;\n}\n\n.btn-outline {\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-color: currentColor;\n}\n\n.btn-outline.btn-active {\n --tw-border-opacity: 1;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-b1, oklch(var(--b1) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-primary {\n --tw-text-opacity: 1;\n color: var(--fallback-p, oklch(var(--p) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-primary.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-secondary {\n --tw-text-opacity: 1;\n color: var(--fallback-s, oklch(var(--s) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-secondary.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-accent {\n --tw-text-opacity: 1;\n color: var(--fallback-a, oklch(var(--a) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-accent.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-success {\n --tw-text-opacity: 1;\n color: var(--fallback-su, oklch(var(--su) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-success.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-info {\n --tw-text-opacity: 1;\n color: var(--fallback-in, oklch(var(--in) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-info.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-warning {\n --tw-text-opacity: 1;\n color: var(--fallback-wa, oklch(var(--wa) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-warning.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-error {\n --tw-text-opacity: 1;\n color: var(--fallback-er, oklch(var(--er) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-error.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n}\n\n.btn.btn-disabled, .btn[disabled], .btn:disabled {\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .2;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n}\n\n.btninput[type=\"checkbox\"]:checked, .btninput[type=\"radio\"]:checked {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-p, oklch(var(--p) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n}\n\n.btninput[type=\"checkbox\"]:checked:focus-visible, .btninput[type=\"radio\"]:checked:focus-visible {\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n@keyframes button-pop {\n 0% {\n transform: scale(var(--btn-focus-scale, .98));\n }\n\n 40% {\n transform: scale(1.02);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n.checkbox:focus {\n box-shadow: none;\n}\n\n.checkbox:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.checkbox:disabled {\n cursor: not-allowed;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .2;\n border-width: 0;\n border-color: #0000;\n}\n\n.checkbox:checked, .checkbox[aria-checked=\"true\"] {\n animation: checkmark var(--animation-input, .2s) ease-out;\n background-repeat: no-repeat;\n background-color: var(--chkbg);\n background-image: linear-gradient(-45deg, transparent 65%, var(--chkbg) 65.99%), linear-gradient(45deg, transparent 75%, var(--chkbg) 75.99%), linear-gradient(-45deg, var(--chkbg) 40%, transparent 40.99%), linear-gradient(45deg, var(--chkbg) 30%, var(--chkfg) 30.99%, var(--chkfg) 40%, transparent 40.99%), linear-gradient(-45deg, var(--chkfg) 50%, var(--chkbg) 50.99%);\n}\n\n.checkbox:indeterminate {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n animation: checkmark var(--animation-input, .2s) ease-out;\n background-repeat: no-repeat;\n background-image: linear-gradient(90deg, transparent 80%, var(--chkbg) 80%), linear-gradient(-90deg, transparent 80%, var(--chkbg) 80%), linear-gradient(0deg, var(--chkbg) 43%, var(--chkfg) 43%, var(--chkfg) 57%, var(--chkbg) 57%);\n}\n\n@keyframes checkmark {\n 0% {\n background-position-y: 5px;\n }\n\n 50% {\n background-position-y: -2px;\n }\n\n 100% {\n background-position-y: 0;\n }\n}\n\ndetails.collapse {\n width: 100%;\n}\n\ndetails.collapse summary {\n outline-offset: 2px;\n outline: 2px solid #0000;\n display: block;\n position: relative;\n}\n\ndetails.collapse summary::-webkit-details-marker {\n display: none;\n}\n\n.collapse:focus-visible, .collapse:has(.collapse-title:focus-visible), .collapse:has( > input[type=\"checkbox\"]:focus-visible), .collapse:has( > input[type=\"radio\"]:focus-visible) {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.collapse-arrow > .collapse-title:after {\n --tw-translate-y: -100%;\n --tw-rotate: 45deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n content: \"\";\n transform-origin: 75% 75%;\n pointer-events: none;\n top: 1.9rem;\n width: .5rem;\n height: .5rem;\n transition-property: all;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: block;\n position: absolute;\n inset-inline-end: 1.4rem;\n box-shadow: 2px 2px;\n}\n\n.collapse-plus > .collapse-title:after {\n content: \"+\";\n pointer-events: none;\n top: .9rem;\n width: .5rem;\n height: .5rem;\n transition-property: all;\n transition-duration: .3s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: block;\n position: absolute;\n inset-inline-end: 1.4rem;\n}\n\n.collapse:not(.collapse-open):not(.collapse-close) > input[type=\"checkbox\"], .collapse:not(.collapse-open):not(.collapse-close) > input[type=\"radio\"]:not(:checked), .collapse:not(.collapse-open):not(.collapse-close) > .collapse-title {\n cursor: pointer;\n}\n\n.collapse:focus:not(.collapse-open):not(.collapse-close):not(.collapse[open]) > .collapse-title {\n cursor: unset;\n}\n\n.collapse-title {\n position: relative;\n}\n\n:where(.collapse > input[type=\"checkbox\"]), :where(.collapse > input[type=\"radio\"]) {\n z-index: 1;\n}\n\n.collapse-title, :where(.collapse > input[type=\"checkbox\"]), :where(.collapse > input[type=\"radio\"]) {\n padding: 1rem;\n width: 100%;\n min-height: 3.75rem;\n padding-inline-end: 3rem;\n transition: background-color .2s ease-out;\n}\n\n.collapse[open] > :where(.collapse-content), .collapse-open > :where(.collapse-content), .collapse:focus:not(.collapse-close) > :where(.collapse-content), .collapse:not(.collapse-close) > :where(input[type=\"checkbox\"]:checked ~ .collapse-content), .collapse:not(.collapse-close) > :where(input[type=\"radio\"]:checked ~ .collapse-content) {\n padding-bottom: 1rem;\n transition: padding .2s ease-out, background-color .2s ease-out;\n}\n\n.collapse[open].collapse-arrow > .collapse-title:after, .collapse-open.collapse-arrow > .collapse-title:after, .collapse-arrow:focus:not(.collapse-close) > .collapse-title:after, .collapse-arrow:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-title:after, .collapse-arrow:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-title:after {\n --tw-translate-y: -50%;\n --tw-rotate: 225deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.collapse[open].collapse-plus > .collapse-title:after, .collapse-open.collapse-plus > .collapse-title:after, .collapse-plus:focus:not(.collapse-close) > .collapse-title:after, .collapse-plus:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-title:after, .collapse-plus:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-title:after {\n content: \"−\";\n}\n\n.dropdown.dropdown-open .dropdown-content, .dropdown:focus .dropdown-content, .dropdown:focus-within .dropdown-content {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.input input {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-p, oklch(var(--p) / var(--tw-bg-opacity)));\n background-color: #0000;\n}\n\n.input input:focus {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.input[list]::-webkit-calendar-picker-indicator {\n line-height: 1em;\n}\n\n.input:focus, .input:focus-within {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.input:has( > input[disabled]), .input-disabled, .input:disabled, .input[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.input:has( > input[disabled])::placeholder, .input-disabled::placeholder, .input:disabled::placeholder, .input[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n.input:has( > input[disabled]) > input[disabled] {\n cursor: not-allowed;\n}\n\n.input::-webkit-date-and-time-value {\n text-align: inherit;\n}\n\n.join > :where(:not(:first-child)) {\n margin-top: 0;\n margin-bottom: 0;\n margin-inline-start: -1px;\n}\n\n.join > :where(:not(:first-child)).btn {\n margin-inline-start: calc(var(--border-btn) * -1);\n}\n\n.join-item:focus {\n isolation: isolate;\n}\n\n:where(.menu li:empty) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .1;\n height: 1px;\n margin: .5rem 1rem;\n}\n\n.menu :where(li ul):before {\n bottom: .75rem;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .1;\n content: \"\";\n inset-inline-start: 0;\n width: 1px;\n position: absolute;\n top: .75rem;\n}\n\n.menu :where(li:not(.menu-title) > :not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n text-align: start;\n text-wrap: balance;\n padding: .5rem 1rem;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n:where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):is(summary):not(.active, .btn):focus-visible, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):is(summary):not(.active, .btn):focus-visible {\n cursor: pointer;\n background-color: var(--fallback-bc, oklch(var(--bc) / .1));\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.menu li > :not(ul, .menu-title, details, .btn):active, .menu li > :not(ul, .menu-title, details, .btn).active, .menu li > details > summary:active {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity)));\n}\n\n.menu :where(li > details > summary)::-webkit-details-marker {\n display: none;\n}\n\n.menu :where(li > details > summary):after, .menu :where(li > .menu-dropdown-toggle):after {\n content: \"\";\n transform-origin: 75% 75%;\n pointer-events: none;\n justify-self: end;\n width: .5rem;\n height: .5rem;\n margin-top: -.5rem;\n transition-property: transform, margin-top;\n transition-duration: .3s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n display: block;\n transform: rotate(45deg);\n box-shadow: 2px 2px;\n}\n\n.menu :where(li > details[open] > summary):after, .menu :where(li > .menu-dropdown-toggle.menu-dropdown-show):after {\n margin-top: 0;\n transform: rotate(225deg);\n}\n\n.menu-title {\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n padding: .5rem 1rem;\n font-size: .875rem;\n font-weight: 700;\n line-height: 1.25rem;\n}\n\n.mockup-phone {\n background-color: #000;\n border: 4px solid #444;\n border-radius: 50px;\n margin: 0 auto;\n padding: 10px;\n display: inline-block;\n overflow: hidden;\n}\n\n.mockup-phone .camera {\n z-index: 11;\n background: #000;\n border-bottom-right-radius: 17px;\n border-bottom-left-radius: 17px;\n width: 150px;\n height: 25px;\n margin: 0 auto;\n position: relative;\n top: 0;\n left: 0;\n}\n\n.mockup-phone .camera:before {\n content: \"\";\n background-color: #0c0b0e;\n border-radius: 5px;\n width: 50px;\n height: 4px;\n position: absolute;\n top: 35%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n.mockup-phone .camera:after {\n content: \"\";\n background-color: #0f0b25;\n border-radius: 5px;\n width: 8px;\n height: 8px;\n position: absolute;\n top: 20%;\n left: 70%;\n}\n\n.mockup-phone .display {\n border-radius: 40px;\n margin-top: -25px;\n overflow: hidden;\n}\n\n.mockup-browser .mockup-browser-toolbar {\n align-items: center;\n width: 100%;\n margin-top: .75rem;\n margin-bottom: .75rem;\n padding-right: 1.4em;\n display: inline-flex;\n}\n\n.mockup-browser .mockup-browser-toolbar:where([dir=\"rtl\"], [dir=\"rtl\"] *) {\n flex-direction: row-reverse;\n}\n\n.mockup-browser .mockup-browser-toolbar:before {\n content: \"\";\n aspect-ratio: 1;\n opacity: .3;\n border-radius: 9999px;\n height: .75rem;\n margin-right: 4.8rem;\n display: inline-block;\n box-shadow: 1.4em 0, 2.8em 0, 4.2em 0;\n}\n\n.mockup-browser .mockup-browser-toolbar .input {\n text-overflow: ellipsis;\n white-space: nowrap;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n direction: ltr;\n width: 24rem;\n height: 1.75rem;\n margin-left: auto;\n margin-right: auto;\n padding-left: 2rem;\n display: block;\n position: relative;\n overflow: hidden;\n}\n\n.mockup-browser .mockup-browser-toolbar .input:before {\n content: \"\";\n aspect-ratio: 1;\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n opacity: .6;\n border-width: 2px;\n border-color: currentColor;\n border-radius: 9999px;\n height: .75rem;\n position: absolute;\n top: 50%;\n left: .5rem;\n}\n\n.mockup-browser .mockup-browser-toolbar .input:after {\n content: \"\";\n --tw-translate-y: 25%;\n --tw-rotate: -45deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n opacity: .6;\n border-width: 1px;\n border-color: currentColor;\n border-radius: 9999px;\n height: .5rem;\n position: absolute;\n top: 50%;\n left: 1.25rem;\n}\n\n@keyframes modal-pop {\n 0% {\n opacity: 0;\n }\n}\n\n.progress::-moz-progress-bar {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n}\n\n.progress:indeterminate {\n --progress-color: var(--fallback-bc, oklch(var(--bc) / 1));\n background-image: repeating-linear-gradient(90deg, var(--progress-color) -1%, var(--progress-color) 10%, transparent 10%, transparent 90%);\n background-position-x: 15%;\n background-size: 200%;\n animation: 5s ease-in-out infinite progress-loading;\n}\n\n.progress::-webkit-progress-bar {\n border-radius: var(--rounded-box, 1rem);\n background-color: #0000;\n}\n\n.progress::-webkit-progress-value {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n}\n\n.progress:indeterminate::-moz-progress-bar {\n background-color: #0000;\n background-image: repeating-linear-gradient(90deg, var(--progress-color) -1%, var(--progress-color) 10%, transparent 10%, transparent 90%);\n background-position-x: 15%;\n background-size: 200%;\n animation: 5s ease-in-out infinite progress-loading;\n}\n\n@keyframes progress-loading {\n 50% {\n background-position-x: -115%;\n }\n}\n\n.radio:focus {\n box-shadow: none;\n}\n\n.radio:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.radio:checked, .radio[aria-checked=\"true\"] {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n animation: radiomark var(--animation-input, .2s) ease-out;\n box-shadow: 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n background-image: none;\n}\n\n.radio:disabled {\n cursor: not-allowed;\n opacity: .2;\n}\n\n@keyframes radiomark {\n 0% {\n box-shadow: 0 0 0 12px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 12px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n\n 50% {\n box-shadow: 0 0 0 3px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 3px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n\n 100% {\n box-shadow: 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n}\n\n@keyframes rating-pop {\n 0% {\n transform: translateY(-.125em);\n }\n\n 40% {\n transform: translateY(-.125em);\n }\n\n 100% {\n transform: translateY(0);\n }\n}\n\n.select:focus {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.select-disabled, .select:disabled, .select[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.select-disabled::placeholder, .select:disabled::placeholder, .select[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n.select-multiple, .select[multiple], .select[size].select:not([size=\"1\"]) {\n background-image: none;\n padding-right: 1rem;\n}\n\n[dir=\"rtl\"] .select {\n background-position: 12px calc(1px + 50%), 16px calc(1px + 50%);\n}\n\n.skeleton {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n will-change: background-position;\n background-image: linear-gradient(105deg, transparent 0%, transparent 40%, var(--fallback-b1, oklch(var(--b1) / 1)) 50%, transparent 60%, transparent 100%);\n background-position-x: -50%;\n background-repeat: no-repeat;\n background-size: 200%;\n animation: 1.8s ease-in-out infinite skeleton;\n}\n\n@media (prefers-reduced-motion) {\n .skeleton {\n animation-duration: 15s;\n }\n}\n\n@keyframes skeleton {\n from {\n background-position: 150%;\n }\n\n to {\n background-position: -50%;\n }\n}\n\n.table:where([dir=\"rtl\"], [dir=\"rtl\"] *) {\n text-align: right;\n}\n\n.table :where(th, td) {\n vertical-align: middle;\n padding: .75rem 1rem;\n}\n\n.table tr.active, .table tr.active:nth-child(2n), .table-zebra tbody tr:nth-child(2n) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.table-zebra tr.active, .table-zebra tr.active:nth-child(2n), .table-zebra-zebra tbody tr:nth-child(2n) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n}\n\n.table :where(thead tr, tbody tr:not(:last-child), tbody tr:first-child:last-child) {\n --tw-border-opacity: 1;\n border-bottom-width: 1px;\n border-bottom-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n}\n\n.table :where(thead, tfoot) {\n white-space: nowrap;\n color: var(--fallback-bc, oklch(var(--bc) / .6));\n font-size: .75rem;\n font-weight: 700;\n line-height: 1rem;\n}\n\n.table :where(tfoot) {\n --tw-border-opacity: 1;\n border-top-width: 1px;\n border-top-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n}\n\n.textarea:focus {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.textarea-primary {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n}\n\n.textarea-primary:focus {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n.textarea-disabled, .textarea:disabled, .textarea[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.textarea-disabled::placeholder, .textarea:disabled::placeholder, .textarea[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n@keyframes toast-pop {\n 0% {\n opacity: 0;\n transform: scale(.9);\n }\n\n 100% {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n.glass, .glass.btn-active {\n backdrop-filter: blur(var(--glass-blur, 40px));\n background-color: #0000;\n background-image: linear-gradient(135deg, rgb(255 255 255 / var(--glass-opacity, 30%))0%, #0000 100%), linear-gradient(var(--glass-reflex-degree, 100deg), rgb(255 255 255 / var(--glass-reflex-opacity, 10%))25%, #0000 25%);\n box-shadow: 0 0 0 1px rgb(255 255 255 / var(--glass-border-opacity, 10%))inset, 0 0 0 2px #0000000d;\n text-shadow: 0 1px rgb(0 0 0 / var(--glass-text-shadow-opacity, 5%));\n border: none;\n}\n\n@media (hover: hover) {\n .glass.btn-active {\n backdrop-filter: blur(var(--glass-blur, 40px));\n background-color: #0000;\n background-image: linear-gradient(135deg, rgb(255 255 255 / var(--glass-opacity, 30%))0%, #0000 100%), linear-gradient(var(--glass-reflex-degree, 100deg), rgb(255 255 255 / var(--glass-reflex-opacity, 10%))25%, #0000 25%);\n box-shadow: 0 0 0 1px rgb(255 255 255 / var(--glass-border-opacity, 10%))inset, 0 0 0 2px #0000000d;\n text-shadow: 0 1px rgb(0 0 0 / var(--glass-text-shadow-opacity, 5%));\n border: none;\n }\n}\n\n.btm-nav-xs {\n height: 2.5rem;\n}\n\n.btm-nav-xs > :where(.active) {\n border-top-width: 1px;\n}\n\n.btm-nav-xs .btm-nav-label {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.btm-nav-sm {\n height: 3rem;\n}\n\n.btm-nav-sm > :where(.active) {\n border-top-width: 2px;\n}\n\n.btm-nav-sm .btm-nav-label {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.btm-nav-md {\n height: 4rem;\n}\n\n.btm-nav-md > :where(.active) {\n border-top-width: 2px;\n}\n\n.btm-nav-md .btm-nav-label {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.btm-nav-lg {\n height: 5rem;\n}\n\n.btm-nav-lg > :where(.active) {\n border-top-width: 4px;\n}\n\n.btm-nav-lg .btm-nav-label {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.join.join-vertical {\n flex-direction: column;\n}\n\n.join.join-vertical .join-item:first-child:not(:last-child), .join.join-vertical :first-child:not(:last-child) .join-item {\n border-start-start-radius: inherit;\n border-start-end-radius: inherit;\n border-end-end-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join.join-vertical .join-item:last-child:not(:first-child), .join.join-vertical :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-end-end-radius: inherit;\n border-end-start-radius: inherit;\n}\n\n.join.join-horizontal {\n flex-direction: row;\n}\n\n.join.join-horizontal .join-item:first-child:not(:last-child), .join.join-horizontal :first-child:not(:last-child) .join-item {\n border-start-start-radius: inherit;\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n border-end-start-radius: inherit;\n}\n\n.join.join-horizontal .join-item:last-child:not(:first-child), .join.join-horizontal :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n border-end-start-radius: 0;\n}\n\n.avatar.online:before {\n content: \"\";\n z-index: 10;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-su, oklch(var(--su) / var(--tw-bg-opacity)));\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-b1, oklch(var(--b1) / 1));\n border-radius: 9999px;\n width: 15%;\n height: 15%;\n display: block;\n position: absolute;\n top: 7%;\n right: 7%;\n}\n\n.avatar.offline:before {\n content: \"\";\n z-index: 10;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-b1, oklch(var(--b1) / 1));\n border-radius: 9999px;\n width: 15%;\n height: 15%;\n display: block;\n position: absolute;\n top: 7%;\n right: 7%;\n}\n\n.join.join-vertical > :where(:not(:first-child)) {\n margin-top: -1px;\n margin-left: 0;\n margin-right: 0;\n}\n\n.join.join-vertical > :where(:not(:first-child)).btn {\n margin-top: calc(var(--border-btn) * -1);\n}\n\n.join.join-horizontal > :where(:not(:first-child)) {\n margin-top: 0;\n margin-bottom: 0;\n margin-inline-start: -1px;\n}\n\n.join.join-horizontal > :where(:not(:first-child)).btn {\n margin-inline-start: calc(var(--border-btn) * -1);\n}\n\n.menu-xs :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-xs :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: .25rem;\n padding: .25rem .5rem;\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.menu-xs .menu-title {\n padding: .25rem .5rem;\n}\n\n.menu-sm :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-sm :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .25rem .75rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.menu-sm .menu-title {\n padding: .5rem .75rem;\n}\n\n.menu-md :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-md :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .5rem 1rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.menu-md .menu-title {\n padding: .5rem 1rem;\n}\n\n.menu-lg :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-lg :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .75rem 1.5rem;\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n\n.menu-lg .menu-title {\n padding: .75rem 1.5rem;\n}\n\n.visible {\n visibility: visible;\n}\n\n.collapse {\n visibility: collapse;\n}\n\n.static {\n position: static;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.sticky {\n position: sticky;\n}\n\n.isolate {\n isolation: isolate;\n}\n\n.mx-1 {\n margin-left: .25rem;\n margin-right: .25rem;\n}\n\n.mx-2 {\n margin-left: .5rem;\n margin-right: .5rem;\n}\n\n.mt-2 {\n margin-top: .5rem;\n}\n\n.block {\n display: block;\n}\n\n.flex {\n display: flex;\n}\n\n.table {\n display: table;\n}\n\n.grid {\n display: grid;\n}\n\n.hidden {\n display: none;\n}\n\n.w-full {\n width: 100%;\n}\n\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.resize {\n resize: both;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.items-center {\n align-items: center;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.gap-y-1\\\\.5 {\n row-gap: .375rem;\n}\n\n.gap-y-1 {\n row-gap: .25rem;\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-base-300 {\n --tw-border-opacity: 1;\n border-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-border-opacity)));\n}\n\n.border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity));\n}\n\n.bg-base-200 {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.p-5 {\n padding: 1.25rem;\n}\n\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n.font-medium {\n font-weight: 500;\n}\n\n.underline {\n text-decoration-line: underline;\n}\n\n.outline {\n outline-style: solid;\n}\n\n.blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.ease-in-out {\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n@media (hover: hover) {\n .table .hover\\\\:hover:hovertr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table .hover\\\\:hover:hovertr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .hover\\\\:hover:hovertr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .hover\\\\:hover:hovertr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table .disabled\\\\:hover:disabledtr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table .disabled\\\\:hover:disabledtr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .disabled\\\\:hover:disabledtr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .disabled\\\\:hover:disabledtr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n}\n/*# sourceMappingURL=index.75a90472.css.map */\n \n`;\nvar $cf4216225913b0de$export$2e2bcd8739ae039 = $cf4216225913b0de$var$TWStyles;\n\n});\nparcelRegister(\"800sp\", function(module, exports) {\n$parcel$export(module.exports, \"css\", () => (parcelRequire(\"4jdI8\")).css);\n$parcel$export(module.exports, \"html\", () => (parcelRequire(\"jJTNo\")).html);\n$parcel$export(module.exports, \"LitElement\", () => (parcelRequire(\"lPSdM\")).LitElement);\nparcelRequire(\"3qR54\");\nparcelRequire(\"jJTNo\");\nparcelRequire(\"lPSdM\");\nparcelRequire(\"8FVzH\");\n\n});\nparcelRegister(\"3qR54\", function(module, exports) {\n\n$parcel$export(module.exports, \"notEqual\", () => $27fcf98b67c2a783$export$53a6892c50694894);\n$parcel$export(module.exports, \"ReactiveElement\", () => $27fcf98b67c2a783$export$c7c07a37856565d);\n$parcel$export(module.exports, \"css\", () => (parcelRequire(\"4jdI8\")).css);\n\nvar $4jdI8 = parcelRequire(\"4jdI8\");\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */ const { is: $27fcf98b67c2a783$var$i, defineProperty: $27fcf98b67c2a783$var$e, getOwnPropertyDescriptor: $27fcf98b67c2a783$var$r, getOwnPropertyNames: $27fcf98b67c2a783$var$h, getOwnPropertySymbols: $27fcf98b67c2a783$var$o, getPrototypeOf: $27fcf98b67c2a783$var$n } = Object, $27fcf98b67c2a783$var$a = globalThis, $27fcf98b67c2a783$var$c = $27fcf98b67c2a783$var$a.trustedTypes, $27fcf98b67c2a783$var$l = $27fcf98b67c2a783$var$c ? $27fcf98b67c2a783$var$c.emptyScript : \"\", $27fcf98b67c2a783$var$p = $27fcf98b67c2a783$var$a.reactiveElementPolyfillSupport, $27fcf98b67c2a783$var$d = (t, s)=>t, $27fcf98b67c2a783$export$7312b35fbf521afb = {\n toAttribute (t, s) {\n switch(s){\n case Boolean:\n t = t ? $27fcf98b67c2a783$var$l : null;\n break;\n case Object:\n case Array:\n t = null == t ? t : JSON.stringify(t);\n }\n return t;\n },\n fromAttribute (t, s) {\n let i = t;\n switch(s){\n case Boolean:\n i = null !== t;\n break;\n case Number:\n i = null === t ? null : Number(t);\n break;\n case Object:\n case Array:\n try {\n i = JSON.parse(t);\n } catch (t) {\n i = null;\n }\n }\n return i;\n }\n}, $27fcf98b67c2a783$export$53a6892c50694894 = (t, s)=>!$27fcf98b67c2a783$var$i(t, s), $27fcf98b67c2a783$var$y = {\n attribute: !0,\n type: String,\n converter: $27fcf98b67c2a783$export$7312b35fbf521afb,\n reflect: !1,\n hasChanged: $27fcf98b67c2a783$export$53a6892c50694894\n};\nSymbol.metadata ??= Symbol(\"metadata\"), $27fcf98b67c2a783$var$a.litPropertyMetadata ??= new WeakMap;\nclass $27fcf98b67c2a783$export$c7c07a37856565d extends HTMLElement {\n static addInitializer(t) {\n this._$Ei(), (this.l ??= []).push(t);\n }\n static get observedAttributes() {\n return this.finalize(), this._$Eh && [\n ...this._$Eh.keys()\n ];\n }\n static createProperty(t, s = $27fcf98b67c2a783$var$y) {\n if (s.state && (s.attribute = !1), this._$Ei(), this.elementProperties.set(t, s), !s.noAccessor) {\n const i = Symbol(), r = this.getPropertyDescriptor(t, i, s);\n void 0 !== r && $27fcf98b67c2a783$var$e(this.prototype, t, r);\n }\n }\n static getPropertyDescriptor(t, s, i) {\n const { get: e, set: h } = $27fcf98b67c2a783$var$r(this.prototype, t) ?? {\n get () {\n return this[s];\n },\n set (t) {\n this[s] = t;\n }\n };\n return {\n get () {\n return e?.call(this);\n },\n set (s) {\n const r = e?.call(this);\n h.call(this, s), this.requestUpdate(t, r, i);\n },\n configurable: !0,\n enumerable: !0\n };\n }\n static getPropertyOptions(t) {\n return this.elementProperties.get(t) ?? $27fcf98b67c2a783$var$y;\n }\n static _$Ei() {\n if (this.hasOwnProperty($27fcf98b67c2a783$var$d(\"elementProperties\"))) return;\n const t = $27fcf98b67c2a783$var$n(this);\n t.finalize(), void 0 !== t.l && (this.l = [\n ...t.l\n ]), this.elementProperties = new Map(t.elementProperties);\n }\n static finalize() {\n if (this.hasOwnProperty($27fcf98b67c2a783$var$d(\"finalized\"))) return;\n if (this.finalized = !0, this._$Ei(), this.hasOwnProperty($27fcf98b67c2a783$var$d(\"properties\"))) {\n const t = this.properties, s = [\n ...$27fcf98b67c2a783$var$h(t),\n ...$27fcf98b67c2a783$var$o(t)\n ];\n for (const i of s)this.createProperty(i, t[i]);\n }\n const t = this[Symbol.metadata];\n if (null !== t) {\n const s = litPropertyMetadata.get(t);\n if (void 0 !== s) for (const [t, i] of s)this.elementProperties.set(t, i);\n }\n this._$Eh = new Map;\n for (const [t, s] of this.elementProperties){\n const i = this._$Eu(t, s);\n void 0 !== i && this._$Eh.set(i, t);\n }\n this.elementStyles = this.finalizeStyles(this.styles);\n }\n static finalizeStyles(s) {\n const i = [];\n if (Array.isArray(s)) {\n const e = new Set(s.flat(1 / 0).reverse());\n for (const s of e)i.unshift((0, $4jdI8.getCompatibleStyle)(s));\n } else void 0 !== s && i.push((0, $4jdI8.getCompatibleStyle)(s));\n return i;\n }\n static _$Eu(t, s) {\n const i = s.attribute;\n return !1 === i ? void 0 : \"string\" == typeof i ? i : \"string\" == typeof t ? t.toLowerCase() : void 0;\n }\n constructor(){\n super(), this._$Ep = void 0, this.isUpdatePending = !1, this.hasUpdated = !1, this._$Em = null, this._$Ev();\n }\n _$Ev() {\n this._$ES = new Promise((t)=>this.enableUpdating = t), this._$AL = new Map, this._$E_(), this.requestUpdate(), this.constructor.l?.forEach((t)=>t(this));\n }\n addController(t) {\n (this._$EO ??= new Set).add(t), void 0 !== this.renderRoot && this.isConnected && t.hostConnected?.();\n }\n removeController(t) {\n this._$EO?.delete(t);\n }\n _$E_() {\n const t = new Map, s = this.constructor.elementProperties;\n for (const i of s.keys())this.hasOwnProperty(i) && (t.set(i, this[i]), delete this[i]);\n t.size > 0 && (this._$Ep = t);\n }\n createRenderRoot() {\n const t = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);\n return (0, $4jdI8.adoptStyles)(t, this.constructor.elementStyles), t;\n }\n connectedCallback() {\n this.renderRoot ??= this.createRenderRoot(), this.enableUpdating(!0), this._$EO?.forEach((t)=>t.hostConnected?.());\n }\n enableUpdating(t) {}\n disconnectedCallback() {\n this._$EO?.forEach((t)=>t.hostDisconnected?.());\n }\n attributeChangedCallback(t, s, i) {\n this._$AK(t, i);\n }\n _$EC(t, s) {\n const i = this.constructor.elementProperties.get(t), e = this.constructor._$Eu(t, i);\n if (void 0 !== e && !0 === i.reflect) {\n const r = (void 0 !== i.converter?.toAttribute ? i.converter : $27fcf98b67c2a783$export$7312b35fbf521afb).toAttribute(s, i.type);\n this._$Em = t, null == r ? this.removeAttribute(e) : this.setAttribute(e, r), this._$Em = null;\n }\n }\n _$AK(t, s) {\n const i = this.constructor, e = i._$Eh.get(t);\n if (void 0 !== e && this._$Em !== e) {\n const t = i.getPropertyOptions(e), r = \"function\" == typeof t.converter ? {\n fromAttribute: t.converter\n } : void 0 !== t.converter?.fromAttribute ? t.converter : $27fcf98b67c2a783$export$7312b35fbf521afb;\n this._$Em = e, this[e] = r.fromAttribute(s, t.type), this._$Em = null;\n }\n }\n requestUpdate(t, s, i) {\n if (void 0 !== t) {\n if (i ??= this.constructor.getPropertyOptions(t), !(i.hasChanged ?? $27fcf98b67c2a783$export$53a6892c50694894)(this[t], s)) return;\n this.P(t, s, i);\n }\n !1 === this.isUpdatePending && (this._$ES = this._$ET());\n }\n P(t, s, i) {\n this._$AL.has(t) || this._$AL.set(t, s), !0 === i.reflect && this._$Em !== t && (this._$Ej ??= new Set).add(t);\n }\n async _$ET() {\n this.isUpdatePending = !0;\n try {\n await this._$ES;\n } catch (t) {\n Promise.reject(t);\n }\n const t = this.scheduleUpdate();\n return null != t && await t, !this.isUpdatePending;\n }\n scheduleUpdate() {\n return this.performUpdate();\n }\n performUpdate() {\n if (!this.isUpdatePending) return;\n if (!this.hasUpdated) {\n if (this.renderRoot ??= this.createRenderRoot(), this._$Ep) {\n for (const [t, s] of this._$Ep)this[t] = s;\n this._$Ep = void 0;\n }\n const t = this.constructor.elementProperties;\n if (t.size > 0) for (const [s, i] of t)!0 !== i.wrapped || this._$AL.has(s) || void 0 === this[s] || this.P(s, this[s], i);\n }\n let t = !1;\n const s = this._$AL;\n try {\n t = this.shouldUpdate(s), t ? (this.willUpdate(s), this._$EO?.forEach((t)=>t.hostUpdate?.()), this.update(s)) : this._$EU();\n } catch (s) {\n throw t = !1, this._$EU(), s;\n }\n t && this._$AE(s);\n }\n willUpdate(t) {}\n _$AE(t) {\n this._$EO?.forEach((t)=>t.hostUpdated?.()), this.hasUpdated || (this.hasUpdated = !0, this.firstUpdated(t)), this.updated(t);\n }\n _$EU() {\n this._$AL = new Map, this.isUpdatePending = !1;\n }\n get updateComplete() {\n return this.getUpdateComplete();\n }\n getUpdateComplete() {\n return this._$ES;\n }\n shouldUpdate(t) {\n return !0;\n }\n update(t) {\n this._$Ej &&= this._$Ej.forEach((t)=>this._$EC(t, this[t])), this._$EU();\n }\n updated(t) {}\n firstUpdated(t) {}\n}\n$27fcf98b67c2a783$export$c7c07a37856565d.elementStyles = [], $27fcf98b67c2a783$export$c7c07a37856565d.shadowRootOptions = {\n mode: \"open\"\n}, $27fcf98b67c2a783$export$c7c07a37856565d[$27fcf98b67c2a783$var$d(\"elementProperties\")] = new Map, $27fcf98b67c2a783$export$c7c07a37856565d[$27fcf98b67c2a783$var$d(\"finalized\")] = new Map, $27fcf98b67c2a783$var$p?.({\n ReactiveElement: $27fcf98b67c2a783$export$c7c07a37856565d\n}), ($27fcf98b67c2a783$var$a.reactiveElementVersions ??= []).push(\"2.0.4\");\n\n});\nparcelRegister(\"4jdI8\", function(module, exports) {\n\n$parcel$export(module.exports, \"css\", () => $3233927aa82734f9$export$dbf350e5966cf602);\n$parcel$export(module.exports, \"adoptStyles\", () => $3233927aa82734f9$export$2ca4a66ec4cecb90);\n$parcel$export(module.exports, \"getCompatibleStyle\", () => $3233927aa82734f9$export$ee69dfd951e24778);\n/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */ const $3233927aa82734f9$var$t = globalThis, $3233927aa82734f9$export$b4d10f6001c083c2 = $3233927aa82734f9$var$t.ShadowRoot && (void 0 === $3233927aa82734f9$var$t.ShadyCSS || $3233927aa82734f9$var$t.ShadyCSS.nativeShadow) && \"adoptedStyleSheets\" in Document.prototype && \"replace\" in CSSStyleSheet.prototype, $3233927aa82734f9$var$s = Symbol(), $3233927aa82734f9$var$o = new WeakMap;\nclass $3233927aa82734f9$export$505d1e8739bad805 {\n constructor(t, e, o){\n if (this._$cssResult$ = !0, o !== $3233927aa82734f9$var$s) throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");\n this.cssText = t, this.t = e;\n }\n get styleSheet() {\n let t = this.o;\n const s = this.t;\n if ($3233927aa82734f9$export$b4d10f6001c083c2 && void 0 === t) {\n const e = void 0 !== s && 1 === s.length;\n e && (t = $3233927aa82734f9$var$o.get(s)), void 0 === t && ((this.o = t = new CSSStyleSheet).replaceSync(this.cssText), e && $3233927aa82734f9$var$o.set(s, t));\n }\n return t;\n }\n toString() {\n return this.cssText;\n }\n}\nconst $3233927aa82734f9$export$8d80f9cac07cdb3 = (t)=>new $3233927aa82734f9$export$505d1e8739bad805(\"string\" == typeof t ? t : t + \"\", void 0, $3233927aa82734f9$var$s), $3233927aa82734f9$export$dbf350e5966cf602 = (t, ...e)=>{\n const o = 1 === t.length ? t[0] : e.reduce((e, s, o)=>e + ((t)=>{\n if (!0 === t._$cssResult$) return t.cssText;\n if (\"number\" == typeof t) return t;\n throw Error(\"Value passed to 'css' function must be a 'css' function result: \" + t + \". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\");\n })(s) + t[o + 1], t[0]);\n return new $3233927aa82734f9$export$505d1e8739bad805(o, t, $3233927aa82734f9$var$s);\n}, $3233927aa82734f9$export$2ca4a66ec4cecb90 = (s, o)=>{\n if ($3233927aa82734f9$export$b4d10f6001c083c2) s.adoptedStyleSheets = o.map((t)=>t instanceof CSSStyleSheet ? t : t.styleSheet);\n else for (const e of o){\n const o = document.createElement(\"style\"), n = $3233927aa82734f9$var$t.litNonce;\n void 0 !== n && o.setAttribute(\"nonce\", n), o.textContent = e.cssText, s.appendChild(o);\n }\n}, $3233927aa82734f9$export$ee69dfd951e24778 = $3233927aa82734f9$export$b4d10f6001c083c2 ? (t)=>t : (t)=>t instanceof CSSStyleSheet ? ((t)=>{\n let e = \"\";\n for (const s of t.cssRules)e += s.cssText;\n return $3233927aa82734f9$export$8d80f9cac07cdb3(e);\n })(t) : t;\n\n});\n\n\nparcelRegister(\"jJTNo\", function(module, exports) {\n\n$parcel$export(module.exports, \"html\", () => $e5ed8027d647799b$export$c0bb0b647f701bb5);\n$parcel$export(module.exports, \"noChange\", () => $e5ed8027d647799b$export$9c068ae9cc5db4e8);\n$parcel$export(module.exports, \"nothing\", () => $e5ed8027d647799b$export$45b790e32b2810ee);\n$parcel$export(module.exports, \"render\", () => $e5ed8027d647799b$export$b3890eb0ae9dca99);\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */ const $e5ed8027d647799b$var$t = globalThis, $e5ed8027d647799b$var$i = $e5ed8027d647799b$var$t.trustedTypes, $e5ed8027d647799b$var$s = $e5ed8027d647799b$var$i ? $e5ed8027d647799b$var$i.createPolicy(\"lit-html\", {\n createHTML: (t)=>t\n}) : void 0, $e5ed8027d647799b$var$e = \"$lit$\", $e5ed8027d647799b$var$h = `lit$${Math.random().toFixed(9).slice(2)}$`, $e5ed8027d647799b$var$o = \"?\" + $e5ed8027d647799b$var$h, $e5ed8027d647799b$var$n = `<${$e5ed8027d647799b$var$o}>`, $e5ed8027d647799b$var$r = document, $e5ed8027d647799b$var$l = ()=>$e5ed8027d647799b$var$r.createComment(\"\"), $e5ed8027d647799b$var$c = (t)=>null === t || \"object\" != typeof t && \"function\" != typeof t, $e5ed8027d647799b$var$a = Array.isArray, $e5ed8027d647799b$var$u = (t)=>$e5ed8027d647799b$var$a(t) || \"function\" == typeof t?.[Symbol.iterator], $e5ed8027d647799b$var$d = \"[ \t\\n\\f\\r]\", $e5ed8027d647799b$var$f = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g, $e5ed8027d647799b$var$v = /-->/g, $e5ed8027d647799b$var$_ = />/g, $e5ed8027d647799b$var$m = RegExp(`>|${$e5ed8027d647799b$var$d}(?:([^\\\\s\"'>=/]+)(${$e5ed8027d647799b$var$d}*=${$e5ed8027d647799b$var$d}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`, \"g\"), $e5ed8027d647799b$var$p = /'/g, $e5ed8027d647799b$var$g = /\"/g, $e5ed8027d647799b$var$$ = /^(?:script|style|textarea|title)$/i, $e5ed8027d647799b$var$y = (t)=>(i, ...s)=>({\n _$litType$: t,\n strings: i,\n values: s\n }), $e5ed8027d647799b$export$c0bb0b647f701bb5 = $e5ed8027d647799b$var$y(1), $e5ed8027d647799b$export$7ed1367e7fa1ad68 = $e5ed8027d647799b$var$y(2), $e5ed8027d647799b$export$9c068ae9cc5db4e8 = Symbol.for(\"lit-noChange\"), $e5ed8027d647799b$export$45b790e32b2810ee = Symbol.for(\"lit-nothing\"), $e5ed8027d647799b$var$A = new WeakMap, $e5ed8027d647799b$var$E = $e5ed8027d647799b$var$r.createTreeWalker($e5ed8027d647799b$var$r, 129);\nfunction $e5ed8027d647799b$var$C(t, i) {\n if (!Array.isArray(t) || !t.hasOwnProperty(\"raw\")) throw Error(\"invalid template strings array\");\n return void 0 !== $e5ed8027d647799b$var$s ? $e5ed8027d647799b$var$s.createHTML(i) : i;\n}\nconst $e5ed8027d647799b$var$P = (t, i)=>{\n const s = t.length - 1, o = [];\n let r, l = 2 === i ? \"\" : \"\", c = $e5ed8027d647799b$var$f;\n for(let i = 0; i < s; i++){\n const s = t[i];\n let a, u, d = -1, y = 0;\n for(; y < s.length && (c.lastIndex = y, u = c.exec(s), null !== u);)y = c.lastIndex, c === $e5ed8027d647799b$var$f ? \"!--\" === u[1] ? c = $e5ed8027d647799b$var$v : void 0 !== u[1] ? c = $e5ed8027d647799b$var$_ : void 0 !== u[2] ? ($e5ed8027d647799b$var$$.test(u[2]) && (r = RegExp(\"\" === u[0] ? (c = r ?? $e5ed8027d647799b$var$f, d = -1) : void 0 === u[1] ? d = -2 : (d = c.lastIndex - u[2].length, a = u[1], c = void 0 === u[3] ? $e5ed8027d647799b$var$m : '\"' === u[3] ? $e5ed8027d647799b$var$g : $e5ed8027d647799b$var$p) : c === $e5ed8027d647799b$var$g || c === $e5ed8027d647799b$var$p ? c = $e5ed8027d647799b$var$m : c === $e5ed8027d647799b$var$v || c === $e5ed8027d647799b$var$_ ? c = $e5ed8027d647799b$var$f : (c = $e5ed8027d647799b$var$m, r = void 0);\n const x = c === $e5ed8027d647799b$var$m && t[i + 1].startsWith(\"/>\") ? \" \" : \"\";\n l += c === $e5ed8027d647799b$var$f ? s + $e5ed8027d647799b$var$n : d >= 0 ? (o.push(a), s.slice(0, d) + $e5ed8027d647799b$var$e + s.slice(d) + $e5ed8027d647799b$var$h + x) : s + $e5ed8027d647799b$var$h + (-2 === d ? i : x);\n }\n return [\n $e5ed8027d647799b$var$C(t, l + (t[s] || \"\") + (2 === i ? \"\" : \"\")),\n o\n ];\n};\nclass $e5ed8027d647799b$var$V {\n constructor({ strings: t, _$litType$: s }, n){\n let r;\n this.parts = [];\n let c = 0, a = 0;\n const u = t.length - 1, d = this.parts, [f, v] = $e5ed8027d647799b$var$P(t, s);\n if (this.el = $e5ed8027d647799b$var$V.createElement(f, n), $e5ed8027d647799b$var$E.currentNode = this.el.content, 2 === s) {\n const t = this.el.content.firstChild;\n t.replaceWith(...t.childNodes);\n }\n for(; null !== (r = $e5ed8027d647799b$var$E.nextNode()) && d.length < u;){\n if (1 === r.nodeType) {\n if (r.hasAttributes()) for (const t of r.getAttributeNames())if (t.endsWith($e5ed8027d647799b$var$e)) {\n const i = v[a++], s = r.getAttribute(t).split($e5ed8027d647799b$var$h), e = /([.?@])?(.*)/.exec(i);\n d.push({\n type: 1,\n index: c,\n name: e[2],\n strings: s,\n ctor: \".\" === e[1] ? $e5ed8027d647799b$var$k : \"?\" === e[1] ? $e5ed8027d647799b$var$H : \"@\" === e[1] ? $e5ed8027d647799b$var$I : $e5ed8027d647799b$var$R\n }), r.removeAttribute(t);\n } else t.startsWith($e5ed8027d647799b$var$h) && (d.push({\n type: 6,\n index: c\n }), r.removeAttribute(t));\n if ($e5ed8027d647799b$var$$.test(r.tagName)) {\n const t = r.textContent.split($e5ed8027d647799b$var$h), s = t.length - 1;\n if (s > 0) {\n r.textContent = $e5ed8027d647799b$var$i ? $e5ed8027d647799b$var$i.emptyScript : \"\";\n for(let i = 0; i < s; i++)r.append(t[i], $e5ed8027d647799b$var$l()), $e5ed8027d647799b$var$E.nextNode(), d.push({\n type: 2,\n index: ++c\n });\n r.append(t[s], $e5ed8027d647799b$var$l());\n }\n }\n } else if (8 === r.nodeType) {\n if (r.data === $e5ed8027d647799b$var$o) d.push({\n type: 2,\n index: c\n });\n else {\n let t = -1;\n for(; -1 !== (t = r.data.indexOf($e5ed8027d647799b$var$h, t + 1));)d.push({\n type: 7,\n index: c\n }), t += $e5ed8027d647799b$var$h.length - 1;\n }\n }\n c++;\n }\n }\n static createElement(t, i) {\n const s = $e5ed8027d647799b$var$r.createElement(\"template\");\n return s.innerHTML = t, s;\n }\n}\nfunction $e5ed8027d647799b$var$N(t, i, s = t, e) {\n if (i === $e5ed8027d647799b$export$9c068ae9cc5db4e8) return i;\n let h = void 0 !== e ? s._$Co?.[e] : s._$Cl;\n const o = $e5ed8027d647799b$var$c(i) ? void 0 : i._$litDirective$;\n return h?.constructor !== o && (h?._$AO?.(!1), void 0 === o ? h = void 0 : (h = new o(t), h._$AT(t, s, e)), void 0 !== e ? (s._$Co ??= [])[e] = h : s._$Cl = h), void 0 !== h && (i = $e5ed8027d647799b$var$N(t, h._$AS(t, i.values), h, e)), i;\n}\nclass $e5ed8027d647799b$var$S {\n constructor(t, i){\n this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = i;\n }\n get parentNode() {\n return this._$AM.parentNode;\n }\n get _$AU() {\n return this._$AM._$AU;\n }\n u(t) {\n const { el: { content: i }, parts: s } = this._$AD, e = (t?.creationScope ?? $e5ed8027d647799b$var$r).importNode(i, !0);\n $e5ed8027d647799b$var$E.currentNode = e;\n let h = $e5ed8027d647799b$var$E.nextNode(), o = 0, n = 0, l = s[0];\n for(; void 0 !== l;){\n if (o === l.index) {\n let i;\n 2 === l.type ? i = new $e5ed8027d647799b$var$M(h, h.nextSibling, this, t) : 1 === l.type ? i = new l.ctor(h, l.name, l.strings, this, t) : 6 === l.type && (i = new $e5ed8027d647799b$var$L(h, this, t)), this._$AV.push(i), l = s[++n];\n }\n o !== l?.index && (h = $e5ed8027d647799b$var$E.nextNode(), o++);\n }\n return $e5ed8027d647799b$var$E.currentNode = $e5ed8027d647799b$var$r, e;\n }\n p(t) {\n let i = 0;\n for (const s of this._$AV)void 0 !== s && (void 0 !== s.strings ? (s._$AI(t, s, i), i += s.strings.length - 2) : s._$AI(t[i])), i++;\n }\n}\nclass $e5ed8027d647799b$var$M {\n get _$AU() {\n return this._$AM?._$AU ?? this._$Cv;\n }\n constructor(t, i, s, e){\n this.type = 2, this._$AH = $e5ed8027d647799b$export$45b790e32b2810ee, this._$AN = void 0, this._$AA = t, this._$AB = i, this._$AM = s, this.options = e, this._$Cv = e?.isConnected ?? !0;\n }\n get parentNode() {\n let t = this._$AA.parentNode;\n const i = this._$AM;\n return void 0 !== i && 11 === t?.nodeType && (t = i.parentNode), t;\n }\n get startNode() {\n return this._$AA;\n }\n get endNode() {\n return this._$AB;\n }\n _$AI(t, i = this) {\n t = $e5ed8027d647799b$var$N(this, t, i), $e5ed8027d647799b$var$c(t) ? t === $e5ed8027d647799b$export$45b790e32b2810ee || null == t || \"\" === t ? (this._$AH !== $e5ed8027d647799b$export$45b790e32b2810ee && this._$AR(), this._$AH = $e5ed8027d647799b$export$45b790e32b2810ee) : t !== this._$AH && t !== $e5ed8027d647799b$export$9c068ae9cc5db4e8 && this._(t) : void 0 !== t._$litType$ ? this.$(t) : void 0 !== t.nodeType ? this.T(t) : $e5ed8027d647799b$var$u(t) ? this.k(t) : this._(t);\n }\n S(t) {\n return this._$AA.parentNode.insertBefore(t, this._$AB);\n }\n T(t) {\n this._$AH !== t && (this._$AR(), this._$AH = this.S(t));\n }\n _(t) {\n this._$AH !== $e5ed8027d647799b$export$45b790e32b2810ee && $e5ed8027d647799b$var$c(this._$AH) ? this._$AA.nextSibling.data = t : this.T($e5ed8027d647799b$var$r.createTextNode(t)), this._$AH = t;\n }\n $(t) {\n const { values: i, _$litType$: s } = t, e = \"number\" == typeof s ? this._$AC(t) : (void 0 === s.el && (s.el = $e5ed8027d647799b$var$V.createElement($e5ed8027d647799b$var$C(s.h, s.h[0]), this.options)), s);\n if (this._$AH?._$AD === e) this._$AH.p(i);\n else {\n const t = new $e5ed8027d647799b$var$S(e, this), s = t.u(this.options);\n t.p(i), this.T(s), this._$AH = t;\n }\n }\n _$AC(t) {\n let i = $e5ed8027d647799b$var$A.get(t.strings);\n return void 0 === i && $e5ed8027d647799b$var$A.set(t.strings, i = new $e5ed8027d647799b$var$V(t)), i;\n }\n k(t) {\n $e5ed8027d647799b$var$a(this._$AH) || (this._$AH = [], this._$AR());\n const i = this._$AH;\n let s, e = 0;\n for (const h of t)e === i.length ? i.push(s = new $e5ed8027d647799b$var$M(this.S($e5ed8027d647799b$var$l()), this.S($e5ed8027d647799b$var$l()), this, this.options)) : s = i[e], s._$AI(h), e++;\n e < i.length && (this._$AR(s && s._$AB.nextSibling, e), i.length = e);\n }\n _$AR(t = this._$AA.nextSibling, i) {\n for(this._$AP?.(!1, !0, i); t && t !== this._$AB;){\n const i = t.nextSibling;\n t.remove(), t = i;\n }\n }\n setConnected(t) {\n void 0 === this._$AM && (this._$Cv = t, this._$AP?.(t));\n }\n}\nclass $e5ed8027d647799b$var$R {\n get tagName() {\n return this.element.tagName;\n }\n get _$AU() {\n return this._$AM._$AU;\n }\n constructor(t, i, s, e, h){\n this.type = 1, this._$AH = $e5ed8027d647799b$export$45b790e32b2810ee, this._$AN = void 0, this.element = t, this.name = i, this._$AM = e, this.options = h, s.length > 2 || \"\" !== s[0] || \"\" !== s[1] ? (this._$AH = Array(s.length - 1).fill(new String), this.strings = s) : this._$AH = $e5ed8027d647799b$export$45b790e32b2810ee;\n }\n _$AI(t, i = this, s, e) {\n const h = this.strings;\n let o = !1;\n if (void 0 === h) t = $e5ed8027d647799b$var$N(this, t, i, 0), o = !$e5ed8027d647799b$var$c(t) || t !== this._$AH && t !== $e5ed8027d647799b$export$9c068ae9cc5db4e8, o && (this._$AH = t);\n else {\n const e = t;\n let n, r;\n for(t = h[0], n = 0; n < h.length - 1; n++)r = $e5ed8027d647799b$var$N(this, e[s + n], i, n), r === $e5ed8027d647799b$export$9c068ae9cc5db4e8 && (r = this._$AH[n]), o ||= !$e5ed8027d647799b$var$c(r) || r !== this._$AH[n], r === $e5ed8027d647799b$export$45b790e32b2810ee ? t = $e5ed8027d647799b$export$45b790e32b2810ee : t !== $e5ed8027d647799b$export$45b790e32b2810ee && (t += (r ?? \"\") + h[n + 1]), this._$AH[n] = r;\n }\n o && !e && this.j(t);\n }\n j(t) {\n t === $e5ed8027d647799b$export$45b790e32b2810ee ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? \"\");\n }\n}\nclass $e5ed8027d647799b$var$k extends $e5ed8027d647799b$var$R {\n constructor(){\n super(...arguments), this.type = 3;\n }\n j(t) {\n this.element[this.name] = t === $e5ed8027d647799b$export$45b790e32b2810ee ? void 0 : t;\n }\n}\nclass $e5ed8027d647799b$var$H extends $e5ed8027d647799b$var$R {\n constructor(){\n super(...arguments), this.type = 4;\n }\n j(t) {\n this.element.toggleAttribute(this.name, !!t && t !== $e5ed8027d647799b$export$45b790e32b2810ee);\n }\n}\nclass $e5ed8027d647799b$var$I extends $e5ed8027d647799b$var$R {\n constructor(t, i, s, e, h){\n super(t, i, s, e, h), this.type = 5;\n }\n _$AI(t, i = this) {\n if ((t = $e5ed8027d647799b$var$N(this, t, i, 0) ?? $e5ed8027d647799b$export$45b790e32b2810ee) === $e5ed8027d647799b$export$9c068ae9cc5db4e8) return;\n const s = this._$AH, e = t === $e5ed8027d647799b$export$45b790e32b2810ee && s !== $e5ed8027d647799b$export$45b790e32b2810ee || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive, h = t !== $e5ed8027d647799b$export$45b790e32b2810ee && (s === $e5ed8027d647799b$export$45b790e32b2810ee || e);\n e && this.element.removeEventListener(this.name, this, s), h && this.element.addEventListener(this.name, this, t), this._$AH = t;\n }\n handleEvent(t) {\n \"function\" == typeof this._$AH ? this._$AH.call(this.options?.host ?? this.element, t) : this._$AH.handleEvent(t);\n }\n}\nclass $e5ed8027d647799b$var$L {\n constructor(t, i, s){\n this.element = t, this.type = 6, this._$AN = void 0, this._$AM = i, this.options = s;\n }\n get _$AU() {\n return this._$AM._$AU;\n }\n _$AI(t) {\n $e5ed8027d647799b$var$N(this, t);\n }\n}\nconst $e5ed8027d647799b$export$8613d1ca9052b22e = {\n P: $e5ed8027d647799b$var$e,\n A: $e5ed8027d647799b$var$h,\n C: $e5ed8027d647799b$var$o,\n M: 1,\n L: $e5ed8027d647799b$var$P,\n R: $e5ed8027d647799b$var$S,\n D: $e5ed8027d647799b$var$u,\n V: $e5ed8027d647799b$var$N,\n I: $e5ed8027d647799b$var$M,\n H: $e5ed8027d647799b$var$R,\n N: $e5ed8027d647799b$var$H,\n U: $e5ed8027d647799b$var$I,\n B: $e5ed8027d647799b$var$k,\n F: $e5ed8027d647799b$var$L\n}, $e5ed8027d647799b$var$Z = $e5ed8027d647799b$var$t.litHtmlPolyfillSupport;\n$e5ed8027d647799b$var$Z?.($e5ed8027d647799b$var$V, $e5ed8027d647799b$var$M), ($e5ed8027d647799b$var$t.litHtmlVersions ??= []).push(\"3.1.4\");\nconst $e5ed8027d647799b$export$b3890eb0ae9dca99 = (t, i, s)=>{\n const e = s?.renderBefore ?? i;\n let h = e._$litPart$;\n if (void 0 === h) {\n const t = s?.renderBefore ?? null;\n e._$litPart$ = h = new $e5ed8027d647799b$var$M(i.insertBefore($e5ed8027d647799b$var$l(), t), t, void 0, s ?? {});\n }\n return h._$AI(t), h;\n};\n\n});\n\nparcelRegister(\"lPSdM\", function(module, exports) {\n$parcel$export(module.exports, \"css\", () => (parcelRequire(\"4jdI8\")).css);\n$parcel$export(module.exports, \"ReactiveElement\", () => (parcelRequire(\"3qR54\")).ReactiveElement);\n$parcel$export(module.exports, \"html\", () => (parcelRequire(\"jJTNo\")).html);\n$parcel$export(module.exports, \"noChange\", () => (parcelRequire(\"jJTNo\")).noChange);\n$parcel$export(module.exports, \"render\", () => (parcelRequire(\"jJTNo\")).render);\n\n$parcel$export(module.exports, \"LitElement\", () => $fe586ba0757c37f7$export$3f2f9f5909897157);\n\nvar $3qR54 = parcelRequire(\"3qR54\");\n\nvar $jJTNo = parcelRequire(\"jJTNo\");\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */ class $fe586ba0757c37f7$export$3f2f9f5909897157 extends (0, $3qR54.ReactiveElement) {\n constructor(){\n super(...arguments), this.renderOptions = {\n host: this\n }, this._$Do = void 0;\n }\n createRenderRoot() {\n const t = super.createRenderRoot();\n return this.renderOptions.renderBefore ??= t.firstChild, t;\n }\n update(t) {\n const i = this.render();\n this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t), this._$Do = (0, $jJTNo.render)(i, this.renderRoot, this.renderOptions);\n }\n connectedCallback() {\n super.connectedCallback(), this._$Do?.setConnected(!0);\n }\n disconnectedCallback() {\n super.disconnectedCallback(), this._$Do?.setConnected(!1);\n }\n render() {\n return 0, $jJTNo.noChange;\n }\n}\n$fe586ba0757c37f7$export$3f2f9f5909897157._$litElement$ = !0, $fe586ba0757c37f7$export$3f2f9f5909897157[\"finalized\"] = !0, globalThis.litElementHydrateSupport?.({\n LitElement: $fe586ba0757c37f7$export$3f2f9f5909897157\n});\nconst $fe586ba0757c37f7$var$r = globalThis.litElementPolyfillSupport;\n$fe586ba0757c37f7$var$r?.({\n LitElement: $fe586ba0757c37f7$export$3f2f9f5909897157\n});\nconst $fe586ba0757c37f7$export$f5c524615a7708d6 = {\n _$AK: (t, e, i)=>{\n t._$AK(e, i);\n },\n _$AL: (t)=>t._$AL\n};\n(globalThis.litElementVersions ??= []).push(\"4.0.6\");\n\n});\n\nparcelRegister(\"8FVzH\", function(module, exports) {\n/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */ const $650ed036964a13b8$export$6acf61af03e62db = !1;\n\n});\n\n\n\n\nvar $hNeh9 = parcelRequire(\"hNeh9\");\nparcelRequire(\"800sp\");\nvar $4jdI8 = parcelRequire(\"4jdI8\");\nvar $jJTNo = parcelRequire(\"jJTNo\");\nvar $lPSdM = parcelRequire(\"lPSdM\");\nclass $a559fed7a03e2395$export$8b27d185973b7a60 extends (0, $lPSdM.LitElement) {\n static styles = [\n (0, $4jdI8.css)`\n .item-graph {\n grid-area: left;\n \n // background-color: red;\n }\n .item-result {\n grid-area: right;\n // background-color: blue;\n }\n .item-executor {\n grid-area: bottom;\n //background-color: yellow;\n }\n .item-container {\n height: 100vh;\n display: grid;\n grid-template-columns: 1fr 1fr 1fr 1fr;\n grid-template-rows: 25% 25% 25% 25% ;\n row-gap: 15px;\n\n grid-template-areas: \n \"left left right right\"\n \"left left right right\"\n \"left left right right\"\n \"bottom bottom right right\";\n }\n `,\n (0, $hNeh9.default)\n ];\n #routeEvent(e) {\n const { type: type, detail: detail } = e;\n console.log(\"routeEvent\", type);\n const elem = this.querySelector(`[slot=\"${type}\"]`);\n if (!elem) {\n console.error(`slot \"${type}\" not found!`);\n return;\n }\n elem.dispatchEvent(new CustomEvent(type, {\n detail: detail\n }));\n }\n connectedCallback() {\n super.connectedCallback();\n this.addEventListener(\"result\", this.#routeEvent);\n this.addEventListener(\"graph\", this.#routeEvent);\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener(\"result\", this.#routeEvent);\n this.removeEventListener(\"graph\", this.#routeEvent);\n }\n // firstUpdated() {\n // }\n render() {\n return (0, $jJTNo.html)`\n
\n
LEFT
\n
RIGHT
\n
BOTTOM
\n
\n `;\n }\n}\nwindow.customElements.define(\"lg4j-workbench\", $a559fed7a03e2395$export$8b27d185973b7a60);\n\n\n//# sourceMappingURL=index.66da7916.js.map\n","\nimport { css } from 'lit';\nconst TWStyles = css` \n*, :before, :after {\n box-sizing: border-box;\n border: 0 solid #e5e7eb;\n}\n\n:before, :after {\n --tw-content: \"\";\n}\n\nhtml, :host {\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;\n line-height: 1.5;\n}\n\nbody {\n line-height: inherit;\n margin: 0;\n}\n\nhr {\n color: inherit;\n border-top-width: 1px;\n height: 0;\n}\n\nabbr:where([title]) {\n text-decoration: underline dotted;\n}\n\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n}\n\nb, strong {\n font-weight: bolder;\n}\n\ncode, kbd, samp, pre {\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;\n font-size: 1em;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub, sup {\n vertical-align: baseline;\n font-size: 75%;\n line-height: 0;\n position: relative;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\n\nbutton, input, optgroup, select, textarea {\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-family: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\n\nbutton, select {\n text-transform: none;\n}\n\nbutton, input:where([type=\"button\"]), input:where([type=\"reset\"]), input:where([type=\"submit\"]) {\n -webkit-appearance: button;\n background-color: #0000;\n background-image: none;\n}\n\n:-moz-focusring {\n outline: auto;\n}\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n::-webkit-inner-spin-button {\n height: auto;\n}\n\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\n\nsummary {\n display: list-item;\n}\n\nblockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol, ul, menu {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\ndialog {\n padding: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::placeholder, textarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\nbutton, [role=\"button\"] {\n cursor: pointer;\n}\n\n:disabled {\n cursor: default;\n}\n\nimg, svg, video, canvas, audio, iframe, embed, object {\n vertical-align: middle;\n display: block;\n}\n\nimg, video {\n max-width: 100%;\n height: auto;\n}\n\n[hidden] {\n display: none;\n}\n\n:root, [data-theme] {\n background-color: var(--fallback-b1, oklch(var(--b1) / 1));\n color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n@supports not (color: oklch(0% 0 0)) {\n :root {\n color-scheme: light;\n --fallback-p: #491eff;\n --fallback-pc: #d4dbff;\n --fallback-s: #ff41c7;\n --fallback-sc: #fff9fc;\n --fallback-a: #00cfbd;\n --fallback-ac: #00100d;\n --fallback-n: #2b3440;\n --fallback-nc: #d7dde4;\n --fallback-b1: #fff;\n --fallback-b2: #e5e6e6;\n --fallback-b3: #e5e6e6;\n --fallback-bc: #1f2937;\n --fallback-in: #00b3f0;\n --fallback-inc: #000;\n --fallback-su: #00ca92;\n --fallback-suc: #000;\n --fallback-wa: #ffc22d;\n --fallback-wac: #000;\n --fallback-er: #ff6f70;\n --fallback-erc: #000;\n }\n\n @media (prefers-color-scheme: dark) {\n :root {\n color-scheme: dark;\n --fallback-p: #7582ff;\n --fallback-pc: #050617;\n --fallback-s: #ff71cf;\n --fallback-sc: #190211;\n --fallback-a: #00c7b5;\n --fallback-ac: #000e0c;\n --fallback-n: #2a323c;\n --fallback-nc: #a6adbb;\n --fallback-b1: #1d232a;\n --fallback-b2: #191e24;\n --fallback-b3: #15191e;\n --fallback-bc: #a6adbb;\n --fallback-in: #00b3f0;\n --fallback-inc: #000;\n --fallback-su: #00ca92;\n --fallback-suc: #000;\n --fallback-wa: #ffc22d;\n --fallback-wac: #000;\n --fallback-er: #ff6f70;\n --fallback-erc: #000;\n }\n }\n}\n\nhtml {\n -webkit-tap-highlight-color: transparent;\n}\n\n* {\n scrollbar-color: color-mix(in oklch, currentColor 35%, transparent) transparent;\n}\n\n:hover {\n scrollbar-color: color-mix(in oklch, currentColor 60%, transparent) transparent;\n}\n\n:root {\n color-scheme: light;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 89.824% .06192 275.75;\n --ac: 15.352% .0368 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 49.12% .3096 275.75;\n --s: 69.71% .329 342.55;\n --sc: 98.71% .0106 342.55;\n --a: 76.76% .184 183.61;\n --n: 32.1785% .02476 255.702;\n --nc: 89.4994% .011585 252.096;\n --b1: 100% 0 0;\n --b2: 96.1151% 0 0;\n --b3: 92.4169% .00108 197.138;\n --bc: 27.8078% .029596 256.848;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n color-scheme: dark;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 13.138% .0392 275.75;\n --sc: 14.96% .052 342.55;\n --ac: 14.902% .0334 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 65.69% .196 275.75;\n --s: 74.8% .26 342.55;\n --a: 74.51% .167 183.61;\n --n: 31.3815% .021108 254.139;\n --nc: 74.6477% .0216 264.436;\n --b1: 25.3267% .015896 252.418;\n --b2: 23.2607% .013807 253.101;\n --b3: 21.1484% .01165 254.088;\n --bc: 74.6477% .0216 264.436;\n }\n}\n\n[data-theme=\"light\"] {\n color-scheme: light;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 89.824% .06192 275.75;\n --ac: 15.352% .0368 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 49.12% .3096 275.75;\n --s: 69.71% .329 342.55;\n --sc: 98.71% .0106 342.55;\n --a: 76.76% .184 183.61;\n --n: 32.1785% .02476 255.702;\n --nc: 89.4994% .011585 252.096;\n --b1: 100% 0 0;\n --b2: 96.1151% 0 0;\n --b3: 92.4169% .00108 197.138;\n --bc: 27.8078% .029596 256.848;\n}\n\n[data-theme=\"dark\"] {\n color-scheme: dark;\n --in: 72.06% .191 231.6;\n --su: 64.8% .15 160;\n --wa: 84.71% .199 83.87;\n --er: 71.76% .221 22.18;\n --pc: 13.138% .0392 275.75;\n --sc: 14.96% .052 342.55;\n --ac: 14.902% .0334 183.61;\n --inc: 0% 0 0;\n --suc: 0% 0 0;\n --wac: 0% 0 0;\n --erc: 0% 0 0;\n --rounded-box: 1rem;\n --rounded-btn: .5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: .25s;\n --animation-input: .2s;\n --btn-focus-scale: .95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: .5rem;\n --p: 65.69% .196 275.75;\n --s: 74.8% .26 342.55;\n --a: 74.51% .167 183.61;\n --n: 31.3815% .021108 254.139;\n --nc: 74.6477% .0216 264.436;\n --b1: 25.3267% .015896 252.418;\n --b2: 23.2607% .013807 253.101;\n --b3: 21.1484% .01165 254.088;\n --bc: 74.6477% .0216 264.436;\n}\n\n*, :before, :after, ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #3b82f680;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n.container {\n width: 100%;\n}\n\n@media (width >= 640px) {\n .container {\n max-width: 640px;\n }\n}\n\n@media (width >= 768px) {\n .container {\n max-width: 768px;\n }\n}\n\n@media (width >= 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n\n@media (width >= 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n\n@media (width >= 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n\n.avatar {\n display: inline-flex;\n position: relative;\n}\n\n.avatar > div {\n aspect-ratio: 1;\n display: block;\n overflow: hidden;\n}\n\n.avatar img {\n object-fit: cover;\n width: 100%;\n height: 100%;\n}\n\n.avatar.placeholder > div {\n justify-content: center;\n align-items: center;\n display: flex;\n}\n\n.badge {\n border-radius: var(--rounded-badge, 1.9rem);\n --tw-border-opacity: 1;\n border-width: 1px;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n justify-content: center;\n align-items: center;\n width: fit-content;\n height: 1.25rem;\n padding-left: .563rem;\n padding-right: .563rem;\n font-size: .875rem;\n line-height: 1.25rem;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: inline-flex;\n}\n\n.btm-nav {\n padding-bottom: env(safe-area-inset-bottom);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n color: currentColor;\n flex-direction: row;\n justify-content: space-around;\n align-items: center;\n width: 100%;\n height: 4rem;\n display: flex;\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n}\n\n.btm-nav > * {\n cursor: pointer;\n border-color: currentColor;\n flex-direction: column;\n flex-basis: 100%;\n justify-content: center;\n align-items: center;\n gap: .25rem;\n height: 100%;\n display: flex;\n position: relative;\n}\n\n@media (hover: hover) {\n .label a:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n }\n\n .menu li > :not(ul, .menu-title, details, .btn):active, .menu li > :not(ul, .menu-title, details, .btn).active, .menu li > details > summary:active {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity)));\n }\n\n .table tr.hover:hover, .table tr.hover:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra tr.hover:hover, .table-zebra tr.hover:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n}\n\n.btn {\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n border-radius: var(--rounded-btn, .5rem);\n border-color: #0000;\n border-color: oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity));\n text-align: center;\n border-width: var(--border-btn, 1px);\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-shadow: 0 1px 2px 0 #0000000d;\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n background-color: oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity));\n --tw-bg-opacity: 1;\n --tw-border-opacity: 1;\n flex-wrap: wrap;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n gap: .5rem;\n height: 3rem;\n min-height: 3rem;\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: .875rem;\n font-weight: 600;\n line-height: 1em;\n text-decoration-line: none;\n transition-property: color, background-color, border-color, opacity, box-shadow, transform;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: inline-flex;\n}\n\n.btn-disabled, .btn[disabled], .btn:disabled {\n pointer-events: none;\n}\n\n:where(.btninput[type=\"checkbox\"]), :where(.btninput[type=\"radio\"]) {\n appearance: none;\n width: auto;\n}\n\n.btninput[type=\"checkbox\"]:after, .btninput[type=\"radio\"]:after {\n --tw-content: attr(aria-label);\n content: var(--tw-content);\n}\n\n.checkbox {\n --chkbg: var(--fallback-bc, oklch(var(--bc) / 1));\n --chkfg: var(--fallback-b1, oklch(var(--b1) / 1));\n cursor: pointer;\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n flex-shrink: 0;\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.collapse:not(td):not(tr):not(colgroup) {\n visibility: visible;\n}\n\n.collapse {\n border-radius: var(--rounded-box, 1rem);\n grid-template-rows: auto 0fr;\n width: 100%;\n transition: grid-template-rows .2s;\n display: grid;\n position: relative;\n overflow: hidden;\n}\n\n.collapse-title, .collapse > input[type=\"checkbox\"], .collapse > input[type=\"radio\"], .collapse-content {\n grid-row-start: 1;\n grid-column-start: 1;\n}\n\n.collapse > input[type=\"checkbox\"], .collapse > input[type=\"radio\"] {\n appearance: none;\n opacity: 0;\n}\n\n.collapse-content {\n visibility: hidden;\n cursor: unset;\n grid-row-start: 2;\n grid-column-start: 1;\n min-height: 0;\n padding-left: 1rem;\n padding-right: 1rem;\n transition: padding .2s ease-out, background-color .2s ease-out;\n}\n\n.collapse[open], .collapse-open, .collapse:focus:not(.collapse-close), .collapse:not(.collapse-close):has( > input[type=\"checkbox\"]:checked), .collapse:not(.collapse-close):has( > input[type=\"radio\"]:checked) {\n grid-template-rows: auto 1fr;\n}\n\n.collapse[open] > .collapse-content, .collapse-open > .collapse-content, .collapse:focus:not(.collapse-close) > .collapse-content, .collapse:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-content, .collapse:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-content {\n visibility: visible;\n min-height: fit-content;\n}\n\n.dropdown {\n display: inline-block;\n position: relative;\n}\n\n.dropdown > :not(summary):focus {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.dropdown .dropdown-content {\n position: absolute;\n}\n\n.dropdown:not(details) .dropdown-content {\n visibility: hidden;\n opacity: 0;\n transform-origin: top;\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n.dropdown-end .dropdown-content {\n inset-inline-end: 0;\n}\n\n.dropdown-left .dropdown-content {\n bottom: auto;\n transform-origin: 100%;\n inset-inline-end: 100%;\n top: 0;\n}\n\n.dropdown-right .dropdown-content {\n bottom: auto;\n transform-origin: 0;\n inset-inline-start: 100%;\n top: 0;\n}\n\n.dropdown-bottom .dropdown-content {\n transform-origin: top;\n top: 100%;\n bottom: auto;\n}\n\n.dropdown-top .dropdown-content {\n transform-origin: bottom;\n top: auto;\n bottom: 100%;\n}\n\n.dropdown-end.dropdown-right .dropdown-content, .dropdown-end.dropdown-left .dropdown-content {\n top: auto;\n bottom: 0;\n}\n\n.dropdown.dropdown-open .dropdown-content, .dropdown:not(.dropdown-hover):focus .dropdown-content, .dropdown:focus-within .dropdown-content {\n visibility: visible;\n opacity: 1;\n}\n\n@media (hover: hover) {\n .dropdown.dropdown-hover:hover .dropdown-content {\n visibility: visible;\n opacity: 1;\n }\n\n .btm-nav > .disabled:hover, .btm-nav > [disabled]:hover {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n }\n\n .btn:hover {\n --tw-border-opacity: 1;\n border-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn:hover {\n background-color: color-mix(in oklab, oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity, 1)) 90%, black);\n border-color: color-mix(in oklab, oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity, 1)) 90%, black);\n }\n }\n\n @supports not (color: oklch(0% 0 0)) {\n .btn:hover {\n background-color: var(--btn-color, var(--fallback-b2));\n border-color: var(--btn-color, var(--fallback-b2));\n }\n }\n\n .btn.glass:hover {\n --glass-opacity: 25%;\n --glass-border-opacity: 15%;\n }\n\n .btn-ghost:hover {\n border-color: #0000;\n }\n\n @supports (color: oklch(0% 0 0)) {\n .btn-ghost:hover {\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n }\n }\n\n .btn-link:hover {\n background-color: #0000;\n border-color: #0000;\n text-decoration-line: underline;\n }\n\n .btn-outline:hover {\n --tw-border-opacity: 1;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-b1, oklch(var(--b1) / var(--tw-text-opacity)));\n }\n\n .btn-outline.btn-primary:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-primary:hover {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-secondary:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-secondary:hover {\n background-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-accent:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-accent:hover {\n background-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-success:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-success:hover {\n background-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-info:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-info:hover {\n background-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-warning:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-warning:hover {\n background-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n }\n }\n\n .btn-outline.btn-error:hover {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btn-outline.btn-error:hover {\n background-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n }\n }\n\n .btn-disabled:hover, .btn[disabled]:hover, .btn:disabled:hover {\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .2;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n }\n\n @supports (color: color-mix(in oklab, black, black)) {\n .btninput[type=\"checkbox\"]:checked:hover, .btninput[type=\"radio\"]:checked:hover {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n }\n\n .dropdown.dropdown-hover:hover .dropdown-content {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n }\n\n :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover {\n cursor: pointer;\n outline-offset: 2px;\n outline: 2px solid #0000;\n }\n\n @supports (color: oklch(0% 0 0)) {\n :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover {\n background-color: var(--fallback-bc, oklch(var(--bc) / .1));\n }\n }\n}\n\n.dropdown:is(details) summary::-webkit-details-marker {\n display: none;\n}\n\n.label {\n -webkit-user-select: none;\n user-select: none;\n justify-content: space-between;\n align-items: center;\n padding: .5rem .25rem;\n display: flex;\n}\n\n.input {\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-width: 1px;\n border-color: #0000;\n flex-shrink: 1;\n height: 3rem;\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.input[type=\"number\"]::-webkit-inner-spin-button {\n margin-top: -1rem;\n margin-bottom: -1rem;\n margin-inline-end: -1rem;\n}\n\n.input-md[type=\"number\"]::-webkit-inner-spin-button {\n margin-top: -1rem;\n margin-bottom: -1rem;\n margin-inline-end: -1rem;\n}\n\n.join {\n border-radius: var(--rounded-btn, .5rem);\n align-items: stretch;\n display: inline-flex;\n}\n\n.join :where(.join-item), .join .join-item:not(:first-child):not(:last-child), .join :not(:first-child):not(:last-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join .join-item:first-child:not(:last-child), .join :first-child:not(:last-child) .join-item {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n}\n\n.join .dropdown .join-item:first-child:not(:last-child), .join :first-child:not(:last-child) .dropdown .join-item {\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n}\n\n.join :where(.join-item:first-child:not(:last-child)), .join :where(:first-child:not(:last-child) .join-item) {\n border-start-start-radius: inherit;\n border-end-start-radius: inherit;\n}\n\n.join .join-item:last-child:not(:first-child), .join :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join :where(.join-item:last-child:not(:first-child)), .join :where(:last-child:not(:first-child) .join-item) {\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n}\n\n@supports not selector(:has(*)) {\n :where(.join *) {\n border-radius: inherit;\n }\n}\n\n@supports selector(:has(*)) {\n :where(.join :has(.join-item)) {\n border-radius: inherit;\n }\n}\n\n.kbd {\n border-radius: var(--rounded-btn, .5rem);\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n border-bottom-width: 2px;\n justify-content: center;\n align-items: center;\n min-width: 2.2em;\n min-height: 2.2em;\n padding-left: .5rem;\n padding-right: .5rem;\n display: inline-flex;\n}\n\n.menu {\n flex-flow: column wrap;\n padding: .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n display: flex;\n}\n\n.menu :where(li ul) {\n white-space: nowrap;\n margin-inline-start: 1rem;\n padding-inline-start: .5rem;\n position: relative;\n}\n\n.menu :where(li:not(.menu-title) > :not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n -webkit-user-select: none;\n user-select: none;\n grid-auto-columns: minmax(auto, max-content) auto max-content;\n grid-auto-flow: column;\n align-content: flex-start;\n align-items: center;\n gap: .5rem;\n display: grid;\n}\n\n.menu li.disabled {\n cursor: not-allowed;\n -webkit-user-select: none;\n user-select: none;\n color: var(--fallback-bc, oklch(var(--bc) / .3));\n}\n\n.menu :where(li > .menu-dropdown:not(.menu-dropdown-show)) {\n display: none;\n}\n\n:where(.menu li) {\n flex-flow: column wrap;\n flex-shrink: 0;\n align-items: stretch;\n display: flex;\n position: relative;\n}\n\n:where(.menu li) .badge {\n justify-self: end;\n}\n\n.mockup-browser {\n border-radius: var(--rounded-box, 1rem);\n position: relative;\n overflow: auto hidden;\n}\n\n.mockup-browser pre[data-prefix]:before {\n content: attr(data-prefix);\n text-align: right;\n display: inline-block;\n}\n\n.progress {\n appearance: none;\n border-radius: var(--rounded-box, 1rem);\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n width: 100%;\n height: .5rem;\n position: relative;\n overflow: hidden;\n}\n\n.radio {\n --chkbg: var(--bc);\n cursor: pointer;\n appearance: none;\n border-width: 1px;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-border-opacity: .2;\n border-radius: 9999px;\n flex-shrink: 0;\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.select {\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n appearance: none;\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n background-image: linear-gradient(45deg, #0000 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, #0000 50%);\n background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%);\n background-repeat: no-repeat;\n background-size: 4px 4px, 4px 4px;\n border-width: 1px;\n border-color: #0000;\n height: 3rem;\n min-height: 3rem;\n padding-inline: 1rem 2.5rem;\n font-size: .875rem;\n line-height: 2;\n display: inline-flex;\n}\n\n.select[multiple] {\n height: auto;\n}\n\n.table {\n border-radius: var(--rounded-box, 1rem);\n text-align: left;\n width: 100%;\n font-size: .875rem;\n line-height: 1.25rem;\n position: relative;\n}\n\n.table :where(.table-pin-rows thead tr) {\n z-index: 1;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n top: 0;\n}\n\n.table :where(.table-pin-rows tfoot tr) {\n z-index: 1;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n bottom: 0;\n}\n\n.table :where(.table-pin-cols tr th) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n position: sticky;\n left: 0;\n right: 0;\n}\n\n.table-zebra tbody tr:nth-child(2n) :where(.table-pin-cols tr th) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.textarea {\n border-radius: var(--rounded-btn, .5rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-width: 1px;\n border-color: #0000;\n flex-shrink: 1;\n min-height: 3rem;\n padding: .5rem 1rem;\n font-size: .875rem;\n line-height: 2;\n}\n\n.avatar-group {\n display: flex;\n overflow: hidden;\n}\n\n.avatar-group :where(.avatar) {\n --tw-border-opacity: 1;\n border-width: 4px;\n border-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-border-opacity)));\n border-radius: 9999px;\n overflow: hidden;\n}\n\n.btm-nav > :not(.active) {\n padding-top: .125rem;\n}\n\n.btm-nav > :where(.active) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity)));\n border-top-width: 2px;\n}\n\n.btm-nav > .disabled, .btm-nav > [disabled] {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n}\n\n.btm-nav > * .label {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n .btn {\n animation: button-pop var(--animation-btn, .25s) ease-out;\n }\n}\n\n.btn:active:hover, .btn:active:focus {\n transform: scale(var(--btn-focus-scale, .97));\n animation: ease-out button-pop;\n}\n\n@supports not (color: oklch(0% 0 0)) {\n .btn {\n background-color: var(--btn-color, var(--fallback-b2));\n border-color: var(--btn-color, var(--fallback-b2));\n }\n\n .btn-primary {\n --btn-color: var(--fallback-p);\n }\n\n .btn-secondary {\n --btn-color: var(--fallback-s);\n }\n\n .btn-accent {\n --btn-color: var(--fallback-a);\n }\n\n .btn-info {\n --btn-color: var(--fallback-in);\n }\n\n .btn-success {\n --btn-color: var(--fallback-su);\n }\n\n .btn-warning {\n --btn-color: var(--fallback-wa);\n }\n\n .btn-error {\n --btn-color: var(--fallback-er);\n }\n}\n\n@supports (color: color-mix(in oklab, black, black)) {\n .btn-active {\n background-color: color-mix(in oklab, oklch(var(--btn-color, var(--b3)) / var(--tw-bg-opacity, 1)) 90%, black);\n border-color: color-mix(in oklab, oklch(var(--btn-color, var(--b3)) / var(--tw-border-opacity, 1)) 90%, black);\n }\n\n .btn-outline.btn-primary.btn-active {\n background-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-p, oklch(var(--p) / 1)) 90%, black);\n }\n\n .btn-outline.btn-secondary.btn-active {\n background-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-s, oklch(var(--s) / 1)) 90%, black);\n }\n\n .btn-outline.btn-accent.btn-active {\n background-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-a, oklch(var(--a) / 1)) 90%, black);\n }\n\n .btn-outline.btn-success.btn-active {\n background-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-su, oklch(var(--su) / 1)) 90%, black);\n }\n\n .btn-outline.btn-info.btn-active {\n background-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-in, oklch(var(--in) / 1)) 90%, black);\n }\n\n .btn-outline.btn-warning.btn-active {\n background-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-wa, oklch(var(--wa) / 1)) 90%, black);\n }\n\n .btn-outline.btn-error.btn-active {\n background-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n border-color: color-mix(in oklab, var(--fallback-er, oklch(var(--er) / 1)) 90%, black);\n }\n}\n\n.btn:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n}\n\n.btn-primary {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n@supports (color: oklch(0% 0 0)) {\n .btn-primary {\n --btn-color: var(--p);\n }\n\n .btn-secondary {\n --btn-color: var(--s);\n }\n\n .btn-accent {\n --btn-color: var(--a);\n }\n\n .btn-info {\n --btn-color: var(--in);\n }\n\n .btn-success {\n --btn-color: var(--su);\n }\n\n .btn-warning {\n --btn-color: var(--wa);\n }\n\n .btn-error {\n --btn-color: var(--er);\n }\n}\n\n.btn-secondary {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-s, oklch(var(--s) / 1));\n}\n\n.btn-accent {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n outline-color: var(--fallback-a, oklch(var(--a) / 1));\n}\n\n.btn-info {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-in, oklch(var(--in) / 1));\n}\n\n.btn-success {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-su, oklch(var(--su) / 1));\n}\n\n.btn-warning {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n outline-color: var(--fallback-wa, oklch(var(--wa) / 1));\n}\n\n.btn-error {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n outline-color: var(--fallback-er, oklch(var(--er) / 1));\n}\n\n.btn.glass {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n outline-color: currentColor;\n}\n\n.btn.glass.btn-active {\n --glass-opacity: 25%;\n --glass-border-opacity: 15%;\n}\n\n.btn-ghost {\n color: currentColor;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-width: 1px;\n border-color: #0000;\n outline-color: currentColor;\n}\n\n.btn-ghost.btn-active {\n background-color: var(--fallback-bc, oklch(var(--bc) / .2));\n border-color: #0000;\n}\n\n.btn-link {\n --tw-text-opacity: 1;\n color: var(--fallback-p, oklch(var(--p) / var(--tw-text-opacity)));\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-color: #0000;\n outline-color: currentColor;\n text-decoration-line: underline;\n}\n\n.btn-link.btn-active {\n background-color: #0000;\n border-color: #0000;\n text-decoration-line: underline;\n}\n\n.btn-outline {\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n background-color: #0000;\n border-color: currentColor;\n}\n\n.btn-outline.btn-active {\n --tw-border-opacity: 1;\n border-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-b1, oklch(var(--b1) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-primary {\n --tw-text-opacity: 1;\n color: var(--fallback-p, oklch(var(--p) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-primary.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-secondary {\n --tw-text-opacity: 1;\n color: var(--fallback-s, oklch(var(--s) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-secondary.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-sc, oklch(var(--sc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-accent {\n --tw-text-opacity: 1;\n color: var(--fallback-a, oklch(var(--a) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-accent.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-ac, oklch(var(--ac) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-success {\n --tw-text-opacity: 1;\n color: var(--fallback-su, oklch(var(--su) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-success.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-suc, oklch(var(--suc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-info {\n --tw-text-opacity: 1;\n color: var(--fallback-in, oklch(var(--in) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-info.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-inc, oklch(var(--inc) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-warning {\n --tw-text-opacity: 1;\n color: var(--fallback-wa, oklch(var(--wa) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-warning.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-wac, oklch(var(--wac) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-error {\n --tw-text-opacity: 1;\n color: var(--fallback-er, oklch(var(--er) / var(--tw-text-opacity)));\n}\n\n.btn-outline.btn-error.btn-active {\n --tw-text-opacity: 1;\n color: var(--fallback-erc, oklch(var(--erc) / var(--tw-text-opacity)));\n}\n\n.btn.btn-disabled, .btn[disabled], .btn:disabled {\n --tw-border-opacity: 0;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-bg-opacity: .2;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n --tw-text-opacity: .2;\n}\n\n.btninput[type=\"checkbox\"]:checked, .btninput[type=\"radio\"]:checked {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-p, oklch(var(--p) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-pc, oklch(var(--pc) / var(--tw-text-opacity)));\n}\n\n.btninput[type=\"checkbox\"]:checked:focus-visible, .btninput[type=\"radio\"]:checked:focus-visible {\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n@keyframes button-pop {\n 0% {\n transform: scale(var(--btn-focus-scale, .98));\n }\n\n 40% {\n transform: scale(1.02);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n.checkbox:focus {\n box-shadow: none;\n}\n\n.checkbox:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.checkbox:disabled {\n cursor: not-allowed;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .2;\n border-width: 0;\n border-color: #0000;\n}\n\n.checkbox:checked, .checkbox[aria-checked=\"true\"] {\n animation: checkmark var(--animation-input, .2s) ease-out;\n background-repeat: no-repeat;\n background-color: var(--chkbg);\n background-image: linear-gradient(-45deg, transparent 65%, var(--chkbg) 65.99%), linear-gradient(45deg, transparent 75%, var(--chkbg) 75.99%), linear-gradient(-45deg, var(--chkbg) 40%, transparent 40.99%), linear-gradient(45deg, var(--chkbg) 30%, var(--chkfg) 30.99%, var(--chkfg) 40%, transparent 40.99%), linear-gradient(-45deg, var(--chkfg) 50%, var(--chkbg) 50.99%);\n}\n\n.checkbox:indeterminate {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n animation: checkmark var(--animation-input, .2s) ease-out;\n background-repeat: no-repeat;\n background-image: linear-gradient(90deg, transparent 80%, var(--chkbg) 80%), linear-gradient(-90deg, transparent 80%, var(--chkbg) 80%), linear-gradient(0deg, var(--chkbg) 43%, var(--chkfg) 43%, var(--chkfg) 57%, var(--chkbg) 57%);\n}\n\n@keyframes checkmark {\n 0% {\n background-position-y: 5px;\n }\n\n 50% {\n background-position-y: -2px;\n }\n\n 100% {\n background-position-y: 0;\n }\n}\n\ndetails.collapse {\n width: 100%;\n}\n\ndetails.collapse summary {\n outline-offset: 2px;\n outline: 2px solid #0000;\n display: block;\n position: relative;\n}\n\ndetails.collapse summary::-webkit-details-marker {\n display: none;\n}\n\n.collapse:focus-visible, .collapse:has(.collapse-title:focus-visible), .collapse:has( > input[type=\"checkbox\"]:focus-visible), .collapse:has( > input[type=\"radio\"]:focus-visible) {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.collapse-arrow > .collapse-title:after {\n --tw-translate-y: -100%;\n --tw-rotate: 45deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n content: \"\";\n transform-origin: 75% 75%;\n pointer-events: none;\n top: 1.9rem;\n width: .5rem;\n height: .5rem;\n transition-property: all;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: block;\n position: absolute;\n inset-inline-end: 1.4rem;\n box-shadow: 2px 2px;\n}\n\n.collapse-plus > .collapse-title:after {\n content: \"+\";\n pointer-events: none;\n top: .9rem;\n width: .5rem;\n height: .5rem;\n transition-property: all;\n transition-duration: .3s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n display: block;\n position: absolute;\n inset-inline-end: 1.4rem;\n}\n\n.collapse:not(.collapse-open):not(.collapse-close) > input[type=\"checkbox\"], .collapse:not(.collapse-open):not(.collapse-close) > input[type=\"radio\"]:not(:checked), .collapse:not(.collapse-open):not(.collapse-close) > .collapse-title {\n cursor: pointer;\n}\n\n.collapse:focus:not(.collapse-open):not(.collapse-close):not(.collapse[open]) > .collapse-title {\n cursor: unset;\n}\n\n.collapse-title {\n position: relative;\n}\n\n:where(.collapse > input[type=\"checkbox\"]), :where(.collapse > input[type=\"radio\"]) {\n z-index: 1;\n}\n\n.collapse-title, :where(.collapse > input[type=\"checkbox\"]), :where(.collapse > input[type=\"radio\"]) {\n padding: 1rem;\n width: 100%;\n min-height: 3.75rem;\n padding-inline-end: 3rem;\n transition: background-color .2s ease-out;\n}\n\n.collapse[open] > :where(.collapse-content), .collapse-open > :where(.collapse-content), .collapse:focus:not(.collapse-close) > :where(.collapse-content), .collapse:not(.collapse-close) > :where(input[type=\"checkbox\"]:checked ~ .collapse-content), .collapse:not(.collapse-close) > :where(input[type=\"radio\"]:checked ~ .collapse-content) {\n padding-bottom: 1rem;\n transition: padding .2s ease-out, background-color .2s ease-out;\n}\n\n.collapse[open].collapse-arrow > .collapse-title:after, .collapse-open.collapse-arrow > .collapse-title:after, .collapse-arrow:focus:not(.collapse-close) > .collapse-title:after, .collapse-arrow:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-title:after, .collapse-arrow:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-title:after {\n --tw-translate-y: -50%;\n --tw-rotate: 225deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.collapse[open].collapse-plus > .collapse-title:after, .collapse-open.collapse-plus > .collapse-title:after, .collapse-plus:focus:not(.collapse-close) > .collapse-title:after, .collapse-plus:not(.collapse-close) > input[type=\"checkbox\"]:checked ~ .collapse-title:after, .collapse-plus:not(.collapse-close) > input[type=\"radio\"]:checked ~ .collapse-title:after {\n content: \"−\";\n}\n\n.dropdown.dropdown-open .dropdown-content, .dropdown:focus .dropdown-content, .dropdown:focus-within .dropdown-content {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.input input {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-p, oklch(var(--p) / var(--tw-bg-opacity)));\n background-color: #0000;\n}\n\n.input input:focus {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.input[list]::-webkit-calendar-picker-indicator {\n line-height: 1em;\n}\n\n.input:focus, .input:focus-within {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.input:has( > input[disabled]), .input-disabled, .input:disabled, .input[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.input:has( > input[disabled])::placeholder, .input-disabled::placeholder, .input:disabled::placeholder, .input[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n.input:has( > input[disabled]) > input[disabled] {\n cursor: not-allowed;\n}\n\n.input::-webkit-date-and-time-value {\n text-align: inherit;\n}\n\n.join > :where(:not(:first-child)) {\n margin-top: 0;\n margin-bottom: 0;\n margin-inline-start: -1px;\n}\n\n.join > :where(:not(:first-child)).btn {\n margin-inline-start: calc(var(--border-btn) * -1);\n}\n\n.join-item:focus {\n isolation: isolate;\n}\n\n:where(.menu li:empty) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .1;\n height: 1px;\n margin: .5rem 1rem;\n}\n\n.menu :where(li ul):before {\n bottom: .75rem;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n opacity: .1;\n content: \"\";\n inset-inline-start: 0;\n width: 1px;\n position: absolute;\n top: .75rem;\n}\n\n.menu :where(li:not(.menu-title) > :not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n text-align: start;\n text-wrap: balance;\n padding: .5rem 1rem;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n:where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > :not(ul, details, .menu-title)):is(summary):not(.active, .btn):focus-visible, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):is(summary):not(.active, .btn):focus-visible {\n cursor: pointer;\n background-color: var(--fallback-bc, oklch(var(--bc) / .1));\n --tw-text-opacity: 1;\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-text-opacity)));\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.menu li > :not(ul, .menu-title, details, .btn):active, .menu li > :not(ul, .menu-title, details, .btn).active, .menu li > details > summary:active {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-n, oklch(var(--n) / var(--tw-bg-opacity)));\n --tw-text-opacity: 1;\n color: var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity)));\n}\n\n.menu :where(li > details > summary)::-webkit-details-marker {\n display: none;\n}\n\n.menu :where(li > details > summary):after, .menu :where(li > .menu-dropdown-toggle):after {\n content: \"\";\n transform-origin: 75% 75%;\n pointer-events: none;\n justify-self: end;\n width: .5rem;\n height: .5rem;\n margin-top: -.5rem;\n transition-property: transform, margin-top;\n transition-duration: .3s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n display: block;\n transform: rotate(45deg);\n box-shadow: 2px 2px;\n}\n\n.menu :where(li > details[open] > summary):after, .menu :where(li > .menu-dropdown-toggle.menu-dropdown-show):after {\n margin-top: 0;\n transform: rotate(225deg);\n}\n\n.menu-title {\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n padding: .5rem 1rem;\n font-size: .875rem;\n font-weight: 700;\n line-height: 1.25rem;\n}\n\n.mockup-phone {\n background-color: #000;\n border: 4px solid #444;\n border-radius: 50px;\n margin: 0 auto;\n padding: 10px;\n display: inline-block;\n overflow: hidden;\n}\n\n.mockup-phone .camera {\n z-index: 11;\n background: #000;\n border-bottom-right-radius: 17px;\n border-bottom-left-radius: 17px;\n width: 150px;\n height: 25px;\n margin: 0 auto;\n position: relative;\n top: 0;\n left: 0;\n}\n\n.mockup-phone .camera:before {\n content: \"\";\n background-color: #0c0b0e;\n border-radius: 5px;\n width: 50px;\n height: 4px;\n position: absolute;\n top: 35%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n.mockup-phone .camera:after {\n content: \"\";\n background-color: #0f0b25;\n border-radius: 5px;\n width: 8px;\n height: 8px;\n position: absolute;\n top: 20%;\n left: 70%;\n}\n\n.mockup-phone .display {\n border-radius: 40px;\n margin-top: -25px;\n overflow: hidden;\n}\n\n.mockup-browser .mockup-browser-toolbar {\n align-items: center;\n width: 100%;\n margin-top: .75rem;\n margin-bottom: .75rem;\n padding-right: 1.4em;\n display: inline-flex;\n}\n\n.mockup-browser .mockup-browser-toolbar:where([dir=\"rtl\"], [dir=\"rtl\"] *) {\n flex-direction: row-reverse;\n}\n\n.mockup-browser .mockup-browser-toolbar:before {\n content: \"\";\n aspect-ratio: 1;\n opacity: .3;\n border-radius: 9999px;\n height: .75rem;\n margin-right: 4.8rem;\n display: inline-block;\n box-shadow: 1.4em 0, 2.8em 0, 4.2em 0;\n}\n\n.mockup-browser .mockup-browser-toolbar .input {\n text-overflow: ellipsis;\n white-space: nowrap;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n direction: ltr;\n width: 24rem;\n height: 1.75rem;\n margin-left: auto;\n margin-right: auto;\n padding-left: 2rem;\n display: block;\n position: relative;\n overflow: hidden;\n}\n\n.mockup-browser .mockup-browser-toolbar .input:before {\n content: \"\";\n aspect-ratio: 1;\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n opacity: .6;\n border-width: 2px;\n border-color: currentColor;\n border-radius: 9999px;\n height: .75rem;\n position: absolute;\n top: 50%;\n left: .5rem;\n}\n\n.mockup-browser .mockup-browser-toolbar .input:after {\n content: \"\";\n --tw-translate-y: 25%;\n --tw-rotate: -45deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n opacity: .6;\n border-width: 1px;\n border-color: currentColor;\n border-radius: 9999px;\n height: .5rem;\n position: absolute;\n top: 50%;\n left: 1.25rem;\n}\n\n@keyframes modal-pop {\n 0% {\n opacity: 0;\n }\n}\n\n.progress::-moz-progress-bar {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n}\n\n.progress:indeterminate {\n --progress-color: var(--fallback-bc, oklch(var(--bc) / 1));\n background-image: repeating-linear-gradient(90deg, var(--progress-color) -1%, var(--progress-color) 10%, transparent 10%, transparent 90%);\n background-position-x: 15%;\n background-size: 200%;\n animation: 5s ease-in-out infinite progress-loading;\n}\n\n.progress::-webkit-progress-bar {\n border-radius: var(--rounded-box, 1rem);\n background-color: #0000;\n}\n\n.progress::-webkit-progress-value {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n}\n\n.progress:indeterminate::-moz-progress-bar {\n background-color: #0000;\n background-image: repeating-linear-gradient(90deg, var(--progress-color) -1%, var(--progress-color) 10%, transparent 10%, transparent 90%);\n background-position-x: 15%;\n background-size: 200%;\n animation: 5s ease-in-out infinite progress-loading;\n}\n\n@keyframes progress-loading {\n 50% {\n background-position-x: -115%;\n }\n}\n\n.radio:focus {\n box-shadow: none;\n}\n\n.radio:focus-visible {\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / 1));\n}\n\n.radio:checked, .radio[aria-checked=\"true\"] {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-bc, oklch(var(--bc) / var(--tw-bg-opacity)));\n animation: radiomark var(--animation-input, .2s) ease-out;\n box-shadow: 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n background-image: none;\n}\n\n.radio:disabled {\n cursor: not-allowed;\n opacity: .2;\n}\n\n@keyframes radiomark {\n 0% {\n box-shadow: 0 0 0 12px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 12px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n\n 50% {\n box-shadow: 0 0 0 3px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 3px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n\n 100% {\n box-shadow: 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset, 0 0 0 4px var(--fallback-b1, oklch(var(--b1) / 1)) inset;\n }\n}\n\n@keyframes rating-pop {\n 0% {\n transform: translateY(-.125em);\n }\n\n 40% {\n transform: translateY(-.125em);\n }\n\n 100% {\n transform: translateY(0);\n }\n}\n\n.select:focus {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.select-disabled, .select:disabled, .select[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.select-disabled::placeholder, .select:disabled::placeholder, .select[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n.select-multiple, .select[multiple], .select[size].select:not([size=\"1\"]) {\n background-image: none;\n padding-right: 1rem;\n}\n\n[dir=\"rtl\"] .select {\n background-position: 12px calc(1px + 50%), 16px calc(1px + 50%);\n}\n\n.skeleton {\n border-radius: var(--rounded-box, 1rem);\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n will-change: background-position;\n background-image: linear-gradient(105deg, transparent 0%, transparent 40%, var(--fallback-b1, oklch(var(--b1) / 1)) 50%, transparent 60%, transparent 100%);\n background-position-x: -50%;\n background-repeat: no-repeat;\n background-size: 200%;\n animation: 1.8s ease-in-out infinite skeleton;\n}\n\n@media (prefers-reduced-motion) {\n .skeleton {\n animation-duration: 15s;\n }\n}\n\n@keyframes skeleton {\n from {\n background-position: 150%;\n }\n\n to {\n background-position: -50%;\n }\n}\n\n.table:where([dir=\"rtl\"], [dir=\"rtl\"] *) {\n text-align: right;\n}\n\n.table :where(th, td) {\n vertical-align: middle;\n padding: .75rem 1rem;\n}\n\n.table tr.active, .table tr.active:nth-child(2n), .table-zebra tbody tr:nth-child(2n) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.table-zebra tr.active, .table-zebra tr.active:nth-child(2n), .table-zebra-zebra tbody tr:nth-child(2n) {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n}\n\n.table :where(thead tr, tbody tr:not(:last-child), tbody tr:first-child:last-child) {\n --tw-border-opacity: 1;\n border-bottom-width: 1px;\n border-bottom-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n}\n\n.table :where(thead, tfoot) {\n white-space: nowrap;\n color: var(--fallback-bc, oklch(var(--bc) / .6));\n font-size: .75rem;\n font-weight: 700;\n line-height: 1rem;\n}\n\n.table :where(tfoot) {\n --tw-border-opacity: 1;\n border-top-width: 1px;\n border-top-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n}\n\n.textarea:focus {\n box-shadow: none;\n border-color: var(--fallback-bc, oklch(var(--bc) / .2));\n outline-offset: 2px;\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-bc, oklch(var(--bc) / .2));\n}\n\n.textarea-primary {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n}\n\n.textarea-primary:focus {\n --tw-border-opacity: 1;\n border-color: var(--fallback-p, oklch(var(--p) / var(--tw-border-opacity)));\n outline-color: var(--fallback-p, oklch(var(--p) / 1));\n}\n\n.textarea-disabled, .textarea:disabled, .textarea[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-border-opacity)));\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n color: var(--fallback-bc, oklch(var(--bc) / .4));\n}\n\n.textarea-disabled::placeholder, .textarea:disabled::placeholder, .textarea[disabled]::placeholder {\n color: var(--fallback-bc, oklch(var(--bc) / var(--tw-placeholder-opacity)));\n --tw-placeholder-opacity: .2;\n}\n\n@keyframes toast-pop {\n 0% {\n opacity: 0;\n transform: scale(.9);\n }\n\n 100% {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n.glass, .glass.btn-active {\n backdrop-filter: blur(var(--glass-blur, 40px));\n background-color: #0000;\n background-image: linear-gradient(135deg, rgb(255 255 255 / var(--glass-opacity, 30%))0%, #0000 100%), linear-gradient(var(--glass-reflex-degree, 100deg), rgb(255 255 255 / var(--glass-reflex-opacity, 10%))25%, #0000 25%);\n box-shadow: 0 0 0 1px rgb(255 255 255 / var(--glass-border-opacity, 10%))inset, 0 0 0 2px #0000000d;\n text-shadow: 0 1px rgb(0 0 0 / var(--glass-text-shadow-opacity, 5%));\n border: none;\n}\n\n@media (hover: hover) {\n .glass.btn-active {\n backdrop-filter: blur(var(--glass-blur, 40px));\n background-color: #0000;\n background-image: linear-gradient(135deg, rgb(255 255 255 / var(--glass-opacity, 30%))0%, #0000 100%), linear-gradient(var(--glass-reflex-degree, 100deg), rgb(255 255 255 / var(--glass-reflex-opacity, 10%))25%, #0000 25%);\n box-shadow: 0 0 0 1px rgb(255 255 255 / var(--glass-border-opacity, 10%))inset, 0 0 0 2px #0000000d;\n text-shadow: 0 1px rgb(0 0 0 / var(--glass-text-shadow-opacity, 5%));\n border: none;\n }\n}\n\n.btm-nav-xs {\n height: 2.5rem;\n}\n\n.btm-nav-xs > :where(.active) {\n border-top-width: 1px;\n}\n\n.btm-nav-xs .btm-nav-label {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.btm-nav-sm {\n height: 3rem;\n}\n\n.btm-nav-sm > :where(.active) {\n border-top-width: 2px;\n}\n\n.btm-nav-sm .btm-nav-label {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.btm-nav-md {\n height: 4rem;\n}\n\n.btm-nav-md > :where(.active) {\n border-top-width: 2px;\n}\n\n.btm-nav-md .btm-nav-label {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.btm-nav-lg {\n height: 5rem;\n}\n\n.btm-nav-lg > :where(.active) {\n border-top-width: 4px;\n}\n\n.btm-nav-lg .btm-nav-label {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.join.join-vertical {\n flex-direction: column;\n}\n\n.join.join-vertical .join-item:first-child:not(:last-child), .join.join-vertical :first-child:not(:last-child) .join-item {\n border-start-start-radius: inherit;\n border-start-end-radius: inherit;\n border-end-end-radius: 0;\n border-end-start-radius: 0;\n}\n\n.join.join-vertical .join-item:last-child:not(:first-child), .join.join-vertical :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-end-end-radius: inherit;\n border-end-start-radius: inherit;\n}\n\n.join.join-horizontal {\n flex-direction: row;\n}\n\n.join.join-horizontal .join-item:first-child:not(:last-child), .join.join-horizontal :first-child:not(:last-child) .join-item {\n border-start-start-radius: inherit;\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n border-end-start-radius: inherit;\n}\n\n.join.join-horizontal .join-item:last-child:not(:first-child), .join.join-horizontal :last-child:not(:first-child) .join-item {\n border-start-start-radius: 0;\n border-start-end-radius: inherit;\n border-end-end-radius: inherit;\n border-end-start-radius: 0;\n}\n\n.avatar.online:before {\n content: \"\";\n z-index: 10;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-su, oklch(var(--su) / var(--tw-bg-opacity)));\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-b1, oklch(var(--b1) / 1));\n border-radius: 9999px;\n width: 15%;\n height: 15%;\n display: block;\n position: absolute;\n top: 7%;\n right: 7%;\n}\n\n.avatar.offline:before {\n content: \"\";\n z-index: 10;\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n outline-width: 2px;\n outline-style: solid;\n outline-color: var(--fallback-b1, oklch(var(--b1) / 1));\n border-radius: 9999px;\n width: 15%;\n height: 15%;\n display: block;\n position: absolute;\n top: 7%;\n right: 7%;\n}\n\n.join.join-vertical > :where(:not(:first-child)) {\n margin-top: -1px;\n margin-left: 0;\n margin-right: 0;\n}\n\n.join.join-vertical > :where(:not(:first-child)).btn {\n margin-top: calc(var(--border-btn) * -1);\n}\n\n.join.join-horizontal > :where(:not(:first-child)) {\n margin-top: 0;\n margin-bottom: 0;\n margin-inline-start: -1px;\n}\n\n.join.join-horizontal > :where(:not(:first-child)).btn {\n margin-inline-start: calc(var(--border-btn) * -1);\n}\n\n.menu-xs :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-xs :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: .25rem;\n padding: .25rem .5rem;\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.menu-xs .menu-title {\n padding: .25rem .5rem;\n}\n\n.menu-sm :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-sm :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .25rem .75rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.menu-sm .menu-title {\n padding: .5rem .75rem;\n}\n\n.menu-md :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-md :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .5rem 1rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.menu-md .menu-title {\n padding: .5rem 1rem;\n}\n\n.menu-lg :where(li:not(.menu-title) > :not(ul, details, .menu-title)), .menu-lg :where(li:not(.menu-title) > details > summary:not(.menu-title)) {\n border-radius: var(--rounded-btn, .5rem);\n padding: .75rem 1.5rem;\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n\n.menu-lg .menu-title {\n padding: .75rem 1.5rem;\n}\n\n.visible {\n visibility: visible;\n}\n\n.collapse {\n visibility: collapse;\n}\n\n.static {\n position: static;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.sticky {\n position: sticky;\n}\n\n.isolate {\n isolation: isolate;\n}\n\n.mx-1 {\n margin-left: .25rem;\n margin-right: .25rem;\n}\n\n.mx-2 {\n margin-left: .5rem;\n margin-right: .5rem;\n}\n\n.mt-2 {\n margin-top: .5rem;\n}\n\n.block {\n display: block;\n}\n\n.flex {\n display: flex;\n}\n\n.table {\n display: table;\n}\n\n.grid {\n display: grid;\n}\n\n.hidden {\n display: none;\n}\n\n.w-full {\n width: 100%;\n}\n\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.resize {\n resize: both;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.items-center {\n align-items: center;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.gap-y-1\\\\.5 {\n row-gap: .375rem;\n}\n\n.gap-y-1 {\n row-gap: .25rem;\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-base-300 {\n --tw-border-opacity: 1;\n border-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-border-opacity)));\n}\n\n.border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity));\n}\n\n.bg-base-200 {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n}\n\n.p-5 {\n padding: 1.25rem;\n}\n\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n.font-medium {\n font-weight: 500;\n}\n\n.underline {\n text-decoration-line: underline;\n}\n\n.outline {\n outline-style: solid;\n}\n\n.blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.ease-in-out {\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n@media (hover: hover) {\n .table .hover\\\\:hover:hovertr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table .hover\\\\:hover:hovertr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .hover\\\\:hover:hovertr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .hover\\\\:hover:hovertr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table .disabled\\\\:hover:disabledtr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table .disabled\\\\:hover:disabledtr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b2, oklch(var(--b2) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .disabled\\\\:hover:disabledtr:hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n\n .table-zebra .disabled\\\\:hover:disabledtr:nth-child(2n):hover {\n --tw-bg-opacity: 1;\n background-color: var(--fallback-b3, oklch(var(--b3) / var(--tw-bg-opacity)));\n }\n}\n/*# sourceMappingURL=index.75a90472.css.map */\n \n`;\nexport default TWStyles;\n","import{getCompatibleStyle as t,adoptStyles as s}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{is:i,defineProperty:e,getOwnPropertyDescriptor:r,getOwnPropertyNames:h,getOwnPropertySymbols:o,getPrototypeOf:n}=Object,a=globalThis,c=a.trustedTypes,l=c?c.emptyScript:\"\",p=a.reactiveElementPolyfillSupport,d=(t,s)=>t,u={toAttribute(t,s){switch(s){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,s){let i=t;switch(s){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,s)=>!i(t,s),y={attribute:!0,type:String,converter:u,reflect:!1,hasChanged:f};Symbol.metadata??=Symbol(\"metadata\"),a.litPropertyMetadata??=new WeakMap;class b extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,s=y){if(s.state&&(s.attribute=!1),this._$Ei(),this.elementProperties.set(t,s),!s.noAccessor){const i=Symbol(),r=this.getPropertyDescriptor(t,i,s);void 0!==r&&e(this.prototype,t,r)}}static getPropertyDescriptor(t,s,i){const{get:e,set:h}=r(this.prototype,t)??{get(){return this[s]},set(t){this[s]=t}};return{get(){return e?.call(this)},set(s){const r=e?.call(this);h.call(this,s),this.requestUpdate(t,r,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??y}static _$Ei(){if(this.hasOwnProperty(d(\"elementProperties\")))return;const t=n(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(d(\"finalized\")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d(\"properties\"))){const t=this.properties,s=[...h(t),...o(t)];for(const i of s)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const s=litPropertyMetadata.get(t);if(void 0!==s)for(const[t,i]of s)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,s]of this.elementProperties){const i=this._$Eu(t,s);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(s){const i=[];if(Array.isArray(s)){const e=new Set(s.flat(1/0).reverse());for(const s of e)i.unshift(t(s))}else void 0!==s&&i.push(t(s));return i}static _$Eu(t,s){const i=s.attribute;return!1===i?void 0:\"string\"==typeof i?i:\"string\"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,s=this.constructor.elementProperties;for(const i of s.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return s(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,s,i){this._$AK(t,i)}_$EC(t,s){const i=this.constructor.elementProperties.get(t),e=this.constructor._$Eu(t,i);if(void 0!==e&&!0===i.reflect){const r=(void 0!==i.converter?.toAttribute?i.converter:u).toAttribute(s,i.type);this._$Em=t,null==r?this.removeAttribute(e):this.setAttribute(e,r),this._$Em=null}}_$AK(t,s){const i=this.constructor,e=i._$Eh.get(t);if(void 0!==e&&this._$Em!==e){const t=i.getPropertyOptions(e),r=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:u;this._$Em=e,this[e]=r.fromAttribute(s,t.type),this._$Em=null}}requestUpdate(t,s,i){if(void 0!==t){if(i??=this.constructor.getPropertyOptions(t),!(i.hasChanged??f)(this[t],s))return;this.P(t,s,i)}!1===this.isUpdatePending&&(this._$ES=this._$ET())}P(t,s,i){this._$AL.has(t)||this._$AL.set(t,s),!0===i.reflect&&this._$Em!==t&&(this._$Ej??=new Set).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,s]of this._$Ep)this[t]=s;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[s,i]of t)!0!==i.wrapped||this._$AL.has(s)||void 0===this[s]||this.P(s,this[s],i)}let t=!1;const s=this._$AL;try{t=this.shouldUpdate(s),t?(this.willUpdate(s),this._$EO?.forEach((t=>t.hostUpdate?.())),this.update(s)):this._$EU()}catch(s){throw t=!1,this._$EU(),s}t&&this._$AE(s)}willUpdate(t){}_$AE(t){this._$EO?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&=this._$Ej.forEach((t=>this._$EC(t,this[t]))),this._$EU()}updated(t){}firstUpdated(t){}}b.elementStyles=[],b.shadowRootOptions={mode:\"open\"},b[d(\"elementProperties\")]=new Map,b[d(\"finalized\")]=new Map,p?.({ReactiveElement:b}),(a.reactiveElementVersions??=[]).push(\"2.0.4\");export{b as ReactiveElement,u as defaultConverter,f as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Use this module if you want to create your own base class extending\n * {@link ReactiveElement}.\n * @packageDocumentation\n */\n\nimport {\n getCompatibleStyle,\n adoptStyles,\n CSSResultGroup,\n CSSResultOrNative,\n} from './css-tag.js';\nimport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n// In the Node build, this import will be injected by Rollup:\n// import {HTMLElement, customElements} from '@lit-labs/ssr-dom-shim';\n\nexport * from './css-tag.js';\nexport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n/**\n * Removes the `readonly` modifier from properties in the union K.\n *\n * This is a safer way to cast a value to a type with a mutable version of a\n * readonly field, than casting to an interface with the field re-declared\n * because it preserves the type of all the fields and warns on typos.\n */\ntype Mutable = Omit & {\n -readonly [P in keyof Pick]: P extends K ? T[P] : never;\n};\n\n// TODO (justinfagnani): Add `hasOwn` here when we ship ES2022\nconst {\n is,\n defineProperty,\n getOwnPropertyDescriptor,\n getOwnPropertyNames,\n getOwnPropertySymbols,\n getPrototypeOf,\n} = Object;\n\nconst NODE_MODE = false;\n\n// Lets a minifier replace globalThis references with a minified name\nconst global = globalThis;\n\nif (NODE_MODE) {\n global.customElements ??= customElements;\n}\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nconst trustedTypes = (global as unknown as {trustedTypes?: {emptyScript: ''}})\n .trustedTypes;\n\n// Temporary workaround for https://crbug.com/993268\n// Currently, any attribute starting with \"on\" is considered to be a\n// TrustedScript source. Such boolean attributes must be set to the equivalent\n// trusted emptyScript value.\nconst emptyStringForBooleanAttribute = trustedTypes\n ? (trustedTypes.emptyScript as unknown as '')\n : '';\n\nconst polyfillSupport = DEV_MODE\n ? global.reactiveElementPolyfillSupportDevMode\n : global.reactiveElementPolyfillSupport;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n const issuedWarnings: Set = (global.litIssuedWarnings ??=\n new Set());\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (!issuedWarnings.has(warning)) {\n console.warn(warning);\n issuedWarnings.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n\n // Issue polyfill support warning.\n if (global.ShadyDOM?.inUse && polyfillSupport === undefined) {\n issueWarning(\n 'polyfill-support-missing',\n `Shadow DOM is being polyfilled via \\`ShadyDOM\\` but ` +\n `the \\`polyfill-support\\` module has not been loaded.`\n );\n }\n}\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace ReactiveUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry = Update;\n export interface Update {\n kind: 'update';\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: ReactiveUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n\n/*\n * When using Closure Compiler, JSCompiler_renameProperty(property, object) is\n * replaced at compile time by the munged name for object[property]. We cannot\n * alias this function, so we have to use a small shim that has the same\n * behavior when not compiling.\n */\n/*@__INLINE__*/\nconst JSCompiler_renameProperty =

(\n prop: P,\n _obj: unknown\n): P => prop;\n\n/**\n * Converts property values to and from attribute values.\n */\nexport interface ComplexAttributeConverter {\n /**\n * Called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\ntype AttributeConverter =\n | ComplexAttributeConverter\n | ((value: string | null, type?: TypeHint) => Type);\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration {\n /**\n * When set to `true`, indicates the property is internal private state. The\n * property should not be set by users. When using TypeScript, this property\n * should be marked as `private` or `protected`, and it is also a common\n * practice to use a leading `_` in the name. The property is not added to\n * `observedAttributes`.\n */\n readonly state?: boolean;\n\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: AttributeConverter;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Whether this property is wrapping accessors. This is set by `@property`\n * to control the initial value change and reflection logic.\n *\n * @internal\n */\n wrapped?: boolean;\n}\n\n/**\n * Map of properties to PropertyDeclaration options. For each property an\n * accessor is made, and the property is processed according to the\n * PropertyDeclaration options.\n */\nexport interface PropertyDeclarations {\n readonly [key: string]: PropertyDeclaration;\n}\n\ntype PropertyDeclarationMap = Map;\n\ntype AttributeMap = Map;\n\n/**\n * A Map of property keys to values.\n *\n * Takes an optional type parameter T, which when specified as a non-any,\n * non-unknown type, will make the Map more strongly-typed, associating the map\n * keys with their corresponding value type on T.\n *\n * Use `PropertyValues` when overriding ReactiveElement.update() and\n * other lifecycle methods in order to get stronger type-checking on keys\n * and values.\n */\n// This type is conditional so that if the parameter T is not specified, or\n// is `any`, the type will include `Map`. Since T is not\n// given in the uses of PropertyValues in this file, all uses here fallback to\n// meaning `Map`, but if a developer uses\n// `PropertyValues` (or any other value for T) they will get a\n// strongly-typed Map type.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PropertyValues = T extends object\n ? PropertyValueMap\n : Map;\n\n/**\n * Do not use, instead prefer {@linkcode PropertyValues}.\n */\n// This type must be exported such that JavaScript generated by the Google\n// Closure Compiler can import a type reference.\nexport interface PropertyValueMap extends Map {\n get(k: K): T[K] | undefined;\n set(key: K, value: T[K]): this;\n has(k: K): boolean;\n delete(k: K): boolean;\n}\n\nexport const defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: unknown): unknown {\n switch (type) {\n case Boolean:\n value = value ? emptyStringForBooleanAttribute : null;\n break;\n case Object:\n case Array:\n // if the value is `null` or `undefined` pass this through\n // to allow removing/no change behavior.\n value = value == null ? value : JSON.stringify(value);\n break;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: unknown) {\n let fromValue: unknown = value;\n switch (type) {\n case Boolean:\n fromValue = value !== null;\n break;\n case Number:\n fromValue = value === null ? null : Number(value);\n break;\n case Object:\n case Array:\n // Do *not* generate exception when invalid JSON is set as elements\n // don't normally complain on being mis-configured.\n // TODO(sorvell): Do generate exception in *dev mode*.\n try {\n // Assert to adhere to Bazel's \"must type assert JSON parse\" rule.\n fromValue = JSON.parse(value!) as unknown;\n } catch (e) {\n fromValue = null;\n }\n break;\n }\n return fromValue;\n },\n};\n\nexport interface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nexport const notEqual: HasChanged = (value: unknown, old: unknown): boolean =>\n !is(value, old);\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n hasChanged: notEqual,\n};\n\n/**\n * A string representing one of the supported dev mode warning categories.\n */\nexport type WarningKind =\n | 'change-in-update'\n | 'migration'\n | 'async-perform-update';\n\nexport type Initializer = (element: ReactiveElement) => void;\n\n// Temporary, until google3 is on TypeScript 5.2\ndeclare global {\n interface SymbolConstructor {\n readonly metadata: unique symbol;\n }\n}\n\n// Ensure metadata is enabled. TypeScript does not polyfill\n// Symbol.metadata, so we must ensure that it exists.\n(Symbol as {metadata: symbol}).metadata ??= Symbol('metadata');\n\ndeclare global {\n // This is public global API, do not change!\n // eslint-disable-next-line no-var\n var litPropertyMetadata: WeakMap<\n object,\n Map\n >;\n}\n\n// Map from a class's metadata object to property options\n// Note that we must use nullish-coalescing assignment so that we only use one\n// map even if we load multiple version of this module.\nglobal.litPropertyMetadata ??= new WeakMap<\n object,\n Map\n>();\n\n/**\n * Base element class which manages element properties and attributes. When\n * properties change, the `update` method is asynchronously called. This method\n * should be supplied by subclasses to render updates as desired.\n * @noInheritDoc\n */\nexport abstract class ReactiveElement\n // In the Node build, this `extends` clause will be substituted with\n // `(globalThis.HTMLElement ?? HTMLElement)`.\n //\n // This way, we will first prefer any global `HTMLElement` polyfill that the\n // user has assigned, and then fall back to the `HTMLElement` shim which has\n // been imported (see note at the top of this file about how this import is\n // generated by Rollup). Note that the `HTMLElement` variable has been\n // shadowed by this import, so it no longer refers to the global.\n extends HTMLElement\n implements ReactiveControllerHost\n{\n // Note: these are patched in only in DEV_MODE.\n /**\n * Read or set all the enabled warning categories for this class.\n *\n * This property is only used in development builds.\n *\n * @nocollapse\n * @category dev-mode\n */\n static enabledWarnings?: WarningKind[];\n\n /**\n * Enable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Enable for all ReactiveElement subclasses\n * ReactiveElement.enableWarning?.('migration');\n *\n * // Enable for only MyElement and subclasses\n * MyElement.enableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static enableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Disable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Disable for all ReactiveElement subclasses\n * ReactiveElement.disableWarning?.('migration');\n *\n * // Disable for only MyElement and subclasses\n * MyElement.disableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static disableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Adds an initializer function to the class that is called during instance\n * construction.\n *\n * This is useful for code that runs against a `ReactiveElement`\n * subclass, such as a decorator, that needs to do work for each\n * instance, such as setting up a `ReactiveController`.\n *\n * ```ts\n * const myDecorator = (target: typeof ReactiveElement, key: string) => {\n * target.addInitializer((instance: ReactiveElement) => {\n * // This is run during construction of the element\n * new MyController(instance);\n * });\n * }\n * ```\n *\n * Decorating a field will then cause each instance to run an initializer\n * that adds a controller:\n *\n * ```ts\n * class MyElement extends LitElement {\n * @myDecorator foo;\n * }\n * ```\n *\n * Initializers are stored per-constructor. Adding an initializer to a\n * subclass does not add it to a superclass. Since initializers are run in\n * constructors, initializers will run in order of the class hierarchy,\n * starting with superclasses and progressing to the instance's class.\n *\n * @nocollapse\n */\n static addInitializer(initializer: Initializer) {\n this.__prepare();\n (this._initializers ??= []).push(initializer);\n }\n\n static _initializers?: Initializer[];\n\n /*\n * Due to closure compiler ES6 compilation bugs, @nocollapse is required on\n * all static methods and properties with initializers. Reference:\n * - https://github.com/google/closure-compiler/issues/1776\n */\n\n /**\n * Maps attribute names to properties; for example `foobar` attribute to\n * `fooBar` property. Created lazily on user subclasses when finalizing the\n * class.\n * @nocollapse\n */\n private static __attributeToPropertyMap: AttributeMap;\n\n /**\n * Marks class as having been finalized, which includes creating properties\n * from `static properties`, but does *not* include all properties created\n * from decorators.\n * @nocollapse\n */\n protected static finalized: true | undefined;\n\n /**\n * Memoized list of all element properties, including any superclass\n * properties. Created lazily on user subclasses when finalizing the class.\n *\n * @nocollapse\n * @category properties\n */\n static elementProperties: PropertyDeclarationMap;\n\n /**\n * User-supplied object that maps property names to `PropertyDeclaration`\n * objects containing options for configuring reactive properties. When\n * a reactive property is set the element will update and render.\n *\n * By default properties are public fields, and as such, they should be\n * considered as primarily settable by element users, either via attribute or\n * the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the `state: true` option. Properties\n * marked as `state` do not reflect from the corresponding attribute\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating\n * public properties should typically not be done for non-primitive (object or\n * array) properties. In other cases when an element needs to manage state, a\n * private property set with the `state: true` option should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n * @nocollapse\n * @category properties\n */\n static properties: PropertyDeclarations;\n\n /**\n * Memoized list of all element styles.\n * Created lazily on user subclasses when finalizing the class.\n * @nocollapse\n * @category styles\n */\n static elementStyles: Array = [];\n\n /**\n * Array of styles to apply to the element. The styles should be defined\n * using the {@linkcode css} tag function, via constructible stylesheets, or\n * imported from native CSS module scripts.\n *\n * Note on Content Security Policy:\n *\n * Element styles are implemented with `