diff --git a/components/discarted/Accordion.js b/components/discarted/Accordion.js deleted file mode 100644 index e25582b..0000000 --- a/components/discarted/Accordion.js +++ /dev/null @@ -1,22 +0,0 @@ -// components/Accordion.js -import { h } from "sigpro"; - -export const Accordion = (props, children) => { - const name = props.name || `accordion-${Math.random().toString(36).slice(2, 9)}`; - - if (props.items && Array.isArray(props.items)) { - return h("div", { class: `space-y-2 ${props.class ?? ''}` }, - props.items.map(item => h("div", { class: `collapse ${item.class ?? ''}` }, [ - h("input", { type: "radio", name, checked: item.open }), - h("div", { class: "collapse-title text-xl font-medium" }, item.title), - h("div", { class: "collapse-content" }, children) - ])) - ); - } - - return h("div", { class: `collapse ${props.class ?? ''}` }, [ - h("input", { type: "radio", name, checked: props.open }), - h("div", { class: "collapse-title text-xl font-medium" }, props.title), - h("div", { class: "collapse-content" }, children) - ]); -}; \ No newline at end of file diff --git a/components/discarted/Alert.js b/components/discarted/Alert.js deleted file mode 100644 index 1d049e3..0000000 --- a/components/discarted/Alert.js +++ /dev/null @@ -1,7 +0,0 @@ -// components/Alert.js -import { h } from "sigpro"; - -export const Alert = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `alert ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/Autocomplete.js b/components/discarted/Autocomplete.js deleted file mode 100644 index 7c9bdd2..0000000 --- a/components/discarted/Autocomplete.js +++ /dev/null @@ -1,60 +0,0 @@ -import { $, h, when, fx } from 'sigpro'; -import { Input } from '../Input.js'; -import { filterBy, listKey, getBy } from '../All.js'; - - -export const Autocomplete = ({ items, value, onselect, placeholder = 'Buscar...', ...props }) => { - const query = $(value ? (typeof value === 'function' ? value() : value) : ''); - const isOpen = $(false); - const filtered = $(() => filterBy(items, query())); - const { cursor, onKey } = listKey(filtered, isOpen); - - const pick = (item) => { - const display = getBy(item); - const actual = typeof item === 'string' ? item : item.value; - query(display); - if (typeof value === 'function') value(actual); - onselect?.(item); - isOpen(false); - }; - - return h('div', { class: 'relative w-full' }, [ - Input({ - ...props, - type: 'text', - placeholder, - value: query, - left: h('span', { class: 'icon-[lucide--search]' }), - oninput: (e) => { - query(e.target.value); - if (typeof value === 'function') value(e.target.value); - isOpen(true); - }, - onfocus: () => isOpen(true), - onblur: () => setTimeout(() => isOpen(false), 150), - onkeydown: (e) => onKey(e, pick) - }), - - when(isOpen, () => - fx({ duration: 200, slide: true }, - h('ul', { - class: 'absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap' - }, [ - each(filtered, (item, idx) => - h('li', {}, [ - h('a', { - class: () => cursor() === idx ? 'active bg-primary text-primary-content' : '', - onmousedown: (e) => e.preventDefault(), // evita que el blur cierre antes del click - onclick: () => pick(item), - onmouseenter: () => cursor(idx) - }, getBy(item)) - ]) - ), - () => filtered().length === 0 - ? h('li', { class: 'p-4 opacity-50 text-center' }, 'Sin resultados') - : null - ]) - ) - ) - ]); -}; \ No newline at end of file diff --git a/components/discarted/Badge.js b/components/discarted/Badge.js deleted file mode 100644 index 9cac366..0000000 --- a/components/discarted/Badge.js +++ /dev/null @@ -1,7 +0,0 @@ -// components/Badge.js -import { h } from "sigpro"; -const colors = [""] -export const Badge = (props, children) => { - children === undefined && (children = props, props = {}); - return h("span", { ...props, class: `badge ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/Calendar.js b/components/discarted/Calendar.js deleted file mode 100644 index 701e8c6..0000000 --- a/components/discarted/Calendar.js +++ /dev/null @@ -1,172 +0,0 @@ -// components/Calendar.js -import { $, h } from "sigpro"; - -export const Calendar = (props) => { - const internalDate = $(new Date()); - const hoverDate = $(null); - const startHour = $(0); - const endHour = $(0); - - const isRangeMode = () => { - const r = typeof props.range === "function" ? props.range() : props.range; - return r === true; - }; - - const now = new Date(); - const todayStr = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, "0")}-${String(now.getDate()).padStart(2, "0")}`; - - const formatDate = (d) => { - const year = d.getFullYear(); - const month = String(d.getMonth() + 1).padStart(2, "0"); - const day = String(d.getDate()).padStart(2, "0"); - return `${year}-${month}-${day}`; - }; - - const getCurrentValue = () => { - return typeof props.value === "function" ? props.value() : props.value; - }; - - const selectDate = (date) => { - const dateStr = formatDate(date); - const current = getCurrentValue(); - - if (isRangeMode()) { - if (!current?.start || (current.start && current.end)) { - const newValue = { - start: dateStr, - end: null, - ...(props.hour && { startHour: startHour() }), - }; - props.onChange?.(newValue); - } else { - const start = current.start; - let newValue; - if (dateStr < start) { - newValue = { start: dateStr, end: start }; - } else { - newValue = { start, end: dateStr }; - } - if (props.hour) { - newValue.startHour = current.startHour !== undefined ? current.startHour : startHour(); - newValue.endHour = endHour(); - } - props.onChange?.(newValue); - } - } else { - const newValue = props.hour ? `${dateStr}T${String(startHour()).padStart(2, "0")}:00:00` : dateStr; - props.onChange?.(newValue); - } - }; - - const move = (m) => { - const d = internalDate(); - internalDate(new Date(d.getFullYear(), d.getMonth() + m, 1)); - }; - - const moveYear = (y) => { - const d = internalDate(); - internalDate(new Date(d.getFullYear() + y, d.getMonth(), 1)); - }; - - const HourSlider = ({ value: hVal, onChange: onHourChange }) => { - return h("div", { class: "flex-1" }, [ - h("div", { class: "flex gap-2 items-center" }, [ - h("input", { - type: "range", - min: 0, - max: 23, - value: hVal, - class: "range range-xs flex-1", - oninput: (e) => onHourChange(parseInt(e.target.value)) - }), - h("span", { class: "text-sm font-mono min-w-[48px] text-center" }, - () => String(typeof hVal === "function" ? hVal() : hVal).padStart(2, "0") + ":00" - ) - ]) - ]); - }; - - return h("div", { class: `p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box w-80 select-none ${props.class ?? ''}`.trim() }, [ - h("div", { class: "flex justify-between items-center mb-4 gap-1" }, [ - h("div", { class: "flex gap-0.5" }, [ - h("button", { type: "button", class: "btn btn-ghost btn-xs px-1", onclick: () => moveYear(-1) }, - h("span", { class: "icon-[lucide--chevrons-left]" }) - ), - h("button", { type: "button", class: "btn btn-ghost btn-xs px-1", onclick: () => move(-1) }, - h("span", { class: "icon-[lucide--chevron-left]" }) - ) - ]), - h("span", { class: "font-bold uppercase flex-1 text-center" }, [ - () => internalDate().toLocaleString("es-ES", { month: "short", year: "numeric" }) - ]), - h("div", { class: "flex gap-0.5" }, [ - h("button", { type: "button", class: "btn btn-ghost btn-xs px-1", onclick: () => move(1) }, - h("span", { class: "icon-[lucide--chevron-right]" }) - ), - h("button", { type: "button", class: "btn btn-ghost btn-xs px-1", onclick: () => moveYear(1) }, - h("span", { class: "icon-[lucide--chevrons-right]" }) - ) - ]) - ]), - - h("div", { class: "grid grid-cols-7 gap-1", onmouseleave: () => hoverDate(null) }, [ - ...["L", "M", "X", "J", "V", "S", "D"].map((d) => h("div", { class: "text-[10px] opacity-40 font-bold text-center" }, d)), - () => { - const d = internalDate(); - const year = d.getFullYear(); - const month = d.getMonth(); - const firstDay = new Date(year, month, 1).getDay(); - const offset = firstDay === 0 ? 6 : firstDay - 1; - const daysInMonth = new Date(year, month + 1, 0).getDate(); - - const cells = []; - for (let i = 0; i < offset; i++) cells.push(h("div")); - - for (let i = 1; i <= daysInMonth; i++) { - const date = new Date(year, month, i); - const dStr = formatDate(date); - - cells.push( - h("button", { - type: "button", - class: () => { - const v = getCurrentValue(); - const h = hoverDate(); - const isStart = typeof v === "string" ? v.split("T")[0] === dStr : v?.start === dStr; - const isEnd = v?.end === dStr; - let inRange = false; - - if (isRangeMode() && v?.start) { - const start = v.start; - if (!v.end && h) { - inRange = (dStr > start && dStr <= h) || (dStr < start && dStr >= h); - } else if (v.end) { - inRange = dStr > start && dStr < v.end; - } - } - - const base = "btn btn-xs p-0 aspect-square min-h-0 h-auto font-normal relative"; - const state = isStart || isEnd ? "btn-primary z-10" : inRange ? "bg-primary/20 border-none rounded-none" : "btn-ghost"; - const today = dStr === todayStr ? "ring-1 ring-primary ring-inset font-black text-primary" : ""; - - return `${base} ${state} ${today}`.trim(); - }, - onmouseenter: () => { if (isRangeMode()) hoverDate(dStr); }, - onclick: () => selectDate(date) - }, i.toString()) - ); - } - return cells; - } - ]), - - props.hour ? h("div", { class: "mt-3 pt-2 border-t border-base-300" }, [ - isRangeMode() - ? h("div", { class: "flex gap-4" }, [ - HourSlider({ value: startHour, onChange: (h) => startHour(h) }), - HourSlider({ value: endHour, onChange: (h) => endHour(h) }) - ]) - : HourSlider({ value: startHour, onChange: (h) => startHour(h) }) - ]) : null - ]); -}; \ No newline at end of file diff --git a/components/discarted/Datepicker.js b/components/discarted/Datepicker.js deleted file mode 100644 index d02a5e7..0000000 --- a/components/discarted/Datepicker.js +++ /dev/null @@ -1,83 +0,0 @@ -// components/Datepicker.js -import { $, h, when, watch } from "sigpro"; -import { Calendar } from "./Calendar.js"; - -export const Datepicker = (props) => { - const isOpen = $(false); - const isRangeMode = () => { - const r = typeof props.range === "function" ? props.range() : props.range; - return r === true; - }; - - const displayValue = $(""); - - watch(() => { - const v = typeof props.value === "function" ? props.value() : props.value; - if (!v) { - displayValue(""); - return; - } - let text = ""; - if (typeof v === "string") { - text = (props.hour && v.includes("T")) ? v.replace("T", " ") : v; - } else if (v.start && v.end) { - const startStr = props.hour && v.startHour !== undefined - ? `${v.start} ${String(v.startHour).padStart(2, "0")}:00` - : v.start; - const endStr = props.hour && v.endHour !== undefined - ? `${v.end} ${String(v.endHour).padStart(2, "0")}:00` - : v.end; - text = `${startStr} - ${endStr}`; - } else if (v.start) { - const startStr = props.hour && v.startHour !== undefined - ? `${v.start} ${String(v.startHour).padStart(2, "0")}:00` - : v.start; - text = `${startStr}...`; - } - displayValue(text); - }); - - const handleCalendarChange = (newValue) => { - if (typeof props.value === "function") props.value(newValue); - if (!isRangeMode() || (newValue?.end !== undefined && newValue?.end !== null)) { - isOpen(false); - } - }; - - const toggleOpen = (e) => { - e.stopPropagation(); - isOpen(!isOpen()); - }; - - return h("div", { class: `relative w-full ${props.class ?? ''}` }, [ - h("label", { class: "input input-bordered w-full", onclick: toggleOpen }, [ - h("span", { class: "icon-[lucide--calendar]" }), - h("input", { - ...props, - type: "text", - class: "grow", - value: displayValue, - readonly: true, - placeholder: props.placeholder || (isRangeMode() ? "Seleccionar rango..." : "Seleccionar fecha...") - }) - ]), - - when(isOpen, () => - h("div", { - class: "absolute left-0 mt-2 z-[100]", - onclick: (e) => e.stopPropagation() - }, [ - Calendar({ - value: props.value, - range: isRangeMode(), - hour: props.hour, - onChange: handleCalendarChange - }) - ]) - ), - - when(isOpen, () => - h("div", { class: "fixed inset-0 z-[90]", onclick: () => isOpen(false) }) - ) - ]); -}; \ No newline at end of file diff --git a/components/discarted/Input.js b/components/discarted/Input.js deleted file mode 100644 index baf0974..0000000 --- a/components/discarted/Input.js +++ /dev/null @@ -1,46 +0,0 @@ -import { h, $, when, fx } from 'sigpro'; -import { get, cls, isFn } from '../All.js'; - -export const Input = (props) => { - const { label, icon, float, placeholder, value, left, right, rule, hint, content, ...rest } = props; - - const showPassword = $(false); - const isFocused = $(false); - const isPassword = props.type === 'password'; - const pattern = rule ?? null; - - const inputType = () => isPassword - ? (get(showPassword) ? 'text' : 'password') - : (props.type || 'text'); - - return h("div", { - class: "input-container", - onfocusin: () => isFocused(true), - onfocusout: (e) => { - if (!e.currentTarget.contains(e.relatedTarget)) { isFocused(false); } - } - }, [ - h('label', { class: "floating-label" }, [ - float ? h("span", {}, label) : null, - h("label", { pattern: pattern, class: () => cls('input validator', props.class) }, - [ - label && !float ? h('span', { class: 'label' }, label) : null, - left ?? null, - h('input', { ...rest, type: inputType, class: 'grow', pattern: pattern, placeholder: placeholder || label || ' ', value: value }), right ?? null, - isPassword ? h('label', { class: 'swap swap-rotate ml-2' }, [ - h('input', { type: 'checkbox', onchange: (e) => showPassword(e.target.checked) }), - h('span', { class: 'swap-on icon-[lucide--eye]' }), - h('span', { class: 'swap-off icon-[lucide--eye-off]' }) - ]) : null - ]), - hint ? h('div', { class: "validator-hint" }, hint) : null, - - when(isFocused, () => fx({ duration: 300, slide: true }, - h('div', { class: 'input-content', onmousedown: e => e.preventDefault() }, - [ - isFn(content) ? content(isFocused) : content - ]) - )) - ]), - ]); -}; \ No newline at end of file diff --git a/components/discarted/Select.js b/components/discarted/Select.js deleted file mode 100644 index 7734de5..0000000 --- a/components/discarted/Select.js +++ /dev/null @@ -1,29 +0,0 @@ -// components/Select.js -import { h, each } from "sigpro"; - -export const Select = (props) => { - const { items, placeholder, placeholderDisabled = true, keyFn, children, ...rest } = props; - - if (children !== undefined) { - return h("select", { ...rest, class: `select ${rest.class ?? ''}` }, children); - } - - const placeholderOption = placeholder - ? h("option", { disabled: placeholderDisabled, selected: true }, placeholder) - : null; - - const dynamicOptions = each( - () => [...(typeof items === "function" ? items() : items || [])], - (item) => { - const value = typeof item === "string" ? item : item.value; - const label = typeof item === "string" ? item : item.label; - return h("option", { value }, label); - } - ); - - const options = placeholderOption - ? [placeholderOption, dynamicOptions] - : dynamicOptions; - - return h("select", { ...rest, class: `select ${rest.class ?? ''}` }, options); -}; \ No newline at end of file diff --git a/components/discarted/Toast.js b/components/discarted/Toast.js deleted file mode 100644 index 0870450..0000000 --- a/components/discarted/Toast.js +++ /dev/null @@ -1,55 +0,0 @@ -// components/Toast.js -import { h, mount } from "sigpro"; - -export const Toast = (message, type = "alert-success", duration = 3500) => { - let container = document.getElementById("sigpro-toast-container"); - if (!container) { - container = h("div", { - id: "sigpro-toast-container", - class: "fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none" - }); - document.body.appendChild(container); - } - - const toastHost = h("div", { style: "display: contents" }); - container.appendChild(toastHost); - - let timeoutId; - const close = () => { - clearTimeout(timeoutId); - const el = toastHost.firstElementChild; - if (el && !el.classList.contains("opacity-0")) { - el.classList.add("translate-x-full", "opacity-0"); - setTimeout(() => { - instance.destroy(); - toastHost.remove(); - if (!container.hasChildNodes()) container.remove(); - }, 300); - } else { - instance.destroy(); - toastHost.remove(); - } - }; - - const ToastComponent = () => { - const closeIcon = h("span", { class: "icon-[lucide--x]" }); - const closeBtn = h("button", { - class: "btn btn-xs btn-circle btn-ghost", - onclick: close - }, closeIcon); - - const alertDiv = h("div", { - class: `alert alert-soft ${type} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto` - }, [ - h("span", {}, typeof message === "function" ? message() : message), - closeBtn - ]); - - requestAnimationFrame(() => alertDiv.classList.remove("translate-x-10", "opacity-0")); - return alertDiv; - }; - - const instance = mount(ToastComponent, toastHost); - if (duration > 0) timeoutId = setTimeout(close, duration); - return close; -}; \ No newline at end of file diff --git a/components/discarted/_core.js b/components/discarted/_core.js deleted file mode 100644 index 9dcd7f2..0000000 --- a/components/discarted/_core.js +++ /dev/null @@ -1,62 +0,0 @@ -// _core.js -import { $, watch } from 'sigpro'; - -export const ui = (base, extras = '') => { - if (!extras) return base; - const extraClasses = extras - .split(' ') - .map(part => part.trim()) - .filter(Boolean) - .map(part => part.startsWith(base + '-') ? part : `${base}-${part}`) - .join(' '); - return `${base} ${extraClasses}`.trim(); -}; - -export const get = val => typeof val === "function" ? val() : val; - -export const filterBy = (items, query, field = 'label') => { - const q = String(query).toLowerCase(); - if (!q) return get(items); - return get(items).filter(item => { - const text = typeof item === 'string' ? item : item[field]; - return String(text).toLowerCase().includes(q); - }); -}; - - -export const listKey = (items, isOpen) => { - const cursor = $(-1); - - watch([items, isOpen], () => { - if (!get(isOpen)) cursor(-1); - }); - - const onKey = (e, select) => { - const list = get(items); - if (!list.length) return; - - if (e.key === 'ArrowDown') { - e.preventDefault(); - isOpen(true); - cursor(Math.min(cursor() + 1, list.length - 1)); - } else if (e.key === 'ArrowUp') { - e.preventDefault(); - cursor(Math.max(cursor() - 1, 0)); - } else if (e.key === 'Enter' && cursor() >= 0) { - e.preventDefault(); - select(list[cursor()]); - } else if (e.key === 'Escape') { - isOpen(false); - } - }; - - return { cursor, onKey }; -}; - -export const cls = (...classes) => classes.filter(Boolean).join(' ').trim(); - -export const getBy = (item, field = 'label') => { - return typeof item === 'string' ? item : item[field]; -}; - -export const isFunc = f => typeof f === "function"; \ No newline at end of file diff --git a/components/discarted/button.js b/components/discarted/button.js deleted file mode 100644 index 933c3c2..0000000 --- a/components/discarted/button.js +++ /dev/null @@ -1,6 +0,0 @@ -import { h } from "sigpro"; - -export const Button = (props, children) => { - children === undefined && (children = props, props = {}); - return h("button", { ...props, class: `btn ${props.class ?? ''}` }, children); -}; diff --git a/components/discarted/card.js b/components/discarted/card.js deleted file mode 100644 index 5c45771..0000000 --- a/components/discarted/card.js +++ /dev/null @@ -1,22 +0,0 @@ -// components/Card.js -import { h } from "sigpro"; - -export const Card = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `card ${props.class ?? ''}` }, children); -}; - -export const CardTitle = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `card-title ${props.class ?? ''}` }, children); -}; - -export const CardBody = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `card-body ${props.class ?? ''}` }, children); -}; - -export const CardActions = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `card-actions ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/carousel.js b/components/discarted/carousel.js deleted file mode 100644 index e2d18f8..0000000 --- a/components/discarted/carousel.js +++ /dev/null @@ -1,12 +0,0 @@ -// components/Carousel.js -import { h } from "sigpro"; - -export const Carousel = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `carousel ${props.class ?? ''}` }, children); -}; - -export const CarouselItem = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `carousel-item ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/chat.js b/components/discarted/chat.js deleted file mode 100644 index 6ebe05f..0000000 --- a/components/discarted/chat.js +++ /dev/null @@ -1,42 +0,0 @@ -// components/Chat.js -import { h } from "sigpro"; - -export const Chat = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `chat ${props.class ?? ''}` }, children); -}; - -export const ChatImage = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `chat-image avatar ${props.class ?? ''}` }, - h("div", { class: "w-10 rounded-full" }, - typeof children === "string" ? h("img", { src: children, alt: "avatar" }) : children - ) - ); -}; - -export const ChatHeader = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `chat-header ${props.class ?? ''}` }, children); -}; - -export const ChatFooter = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `chat-footer ${props.class ?? ''}` }, children); -}; - -export const ChatBubble = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `chat-bubble ${props.class ?? ''}` }, children); -}; - -export const ChatMessage = (props) => { - const { position = "start", avatar, header, message, footer, bubbleClass, ...rest } = props; - - return Chat({ ...rest, class: `chat-${position} ${props.class ?? ''}` }, [ - avatar && ChatImage(avatar), - header && ChatHeader(header), - ChatBubble({ class: bubbleClass }, message), - footer && ChatFooter(footer) - ]); -}; \ No newline at end of file diff --git a/components/discarted/checkbox.js b/components/discarted/checkbox.js deleted file mode 100644 index d6e4e1e..0000000 --- a/components/discarted/checkbox.js +++ /dev/null @@ -1,4 +0,0 @@ -// components/Checkbox.js -import { h } from "sigpro"; - -export const Checkbox = (props) => h("input", { ...props, type: "checkbox", class: `checkbox ${props.class ?? ''}` }); \ No newline at end of file diff --git a/components/discarted/colorpicker.js b/components/discarted/colorpicker.js deleted file mode 100644 index 4290e38..0000000 --- a/components/discarted/colorpicker.js +++ /dev/null @@ -1,68 +0,0 @@ -// components/Colorpicker.js -import { $, h, when} from "sigpro"; - -export const Colorpicker = (props) => { - const isOpen = $(false); - - const palette = [ - ...["#000", "#1A1A1A", "#333", "#4D4D4D", "#666", "#808080", "#B3B3B3", "#FFF"], - ...["#450a0a", "#7f1d1d", "#991b1b", "#b91c1c", "#dc2626", "#ef4444", "#f87171", "#fca5a5"], - ...["#431407", "#7c2d12", "#9a3412", "#c2410c", "#ea580c", "#f97316", "#fb923c", "#ffedd5"], - ...["#713f12", "#a16207", "#ca8a04", "#eab308", "#facc15", "#fde047", "#fef08a", "#fff9c4"], - ...["#064e3b", "#065f46", "#059669", "#10b981", "#34d399", "#4ade80", "#84cc16", "#d9f99d"], - ...["#082f49", "#075985", "#0284c7", "#0ea5e9", "#38bdf8", "#7dd3fc", "#22d3ee", "#cffafe"], - ...["#1e1b4b", "#312e81", "#4338ca", "#4f46e5", "#6366f1", "#818cf8", "#a5b4fc", "#e0e7ff"], - ...["#2e1065", "#4c1d95", "#6d28d9", "#7c3aed", "#8b5cf6", "#a855f7", "#d946ef", "#fae8ff"], - ]; - - const getColor = () => { - const v = props.value; - return (typeof v === "function" ? v() : v) || "#000000"; - }; - - return h("div", { class: `relative w-fit ${props.class ?? ''}` }, [ - h("button", { - type: "button", - class: "btn px-3 bg-base-100 border-base-300 hover:border-primary/50 flex items-center gap-2 shadow-sm font-normal normal-case", - onclick: (e) => { e.stopPropagation(); isOpen(!isOpen()); }, - ...props - }, [ - h("div", { - class: "size-5 rounded-sm shadow-inner border border-black/10 shrink-0", - style: () => `background-color: ${getColor()}` - }), - props.label ? h("span", { class: "opacity-80" }, props.label) : null - ]), - - when(isOpen, () => - h("div", { - class: "absolute left-0 mt-2 p-3 bg-base-100 border border-base-300 shadow-2xl rounded-box z-[110] w-64 select-none", - onclick: (e) => e.stopPropagation() - }, [ - h("div", { class: "grid grid-cols-8 gap-1" }, - palette.map(c => - h("button", { - type: "button", - style: `background-color: ${c}`, - class: () => { - const active = getColor().toLowerCase() === c.toLowerCase(); - return `size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${active ? "ring-2 ring-offset-1 ring-primary z-10 scale-110" : ""}`; - }, - onclick: () => { - if (typeof props.value === "function") props.value(c); - isOpen(false); - } - }) - ) - ) - ]) - ), - - when(isOpen, () => - h("div", { - class: "fixed inset-0 z-[100]", - onclick: () => isOpen(false) - }) - ) - ]); -}; \ No newline at end of file diff --git a/components/discarted/divider.js b/components/discarted/divider.js deleted file mode 100644 index e8d244f..0000000 --- a/components/discarted/divider.js +++ /dev/null @@ -1,4 +0,0 @@ -// components/Collapse.js -import { h } from "sigpro"; - -export const Divider = (props) => h("div", { ...props, class: `divider ${props.class ?? ''}` }); \ No newline at end of file diff --git a/components/discarted/drawer.js b/components/discarted/drawer.js deleted file mode 100644 index 4d2f581..0000000 --- a/components/discarted/drawer.js +++ /dev/null @@ -1,31 +0,0 @@ -// components/Drawer.js -import { h } from "sigpro"; - -export const Drawer = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `drawer ${props.class ?? ''}` }, children); -}; - -export const Sidebar = (props) => { - const id = props.id || `drawer-${Math.random().toString(36).slice(2, 9)}`; - return h("div", { ...props, class: `drawer ${props.class ?? ''}` }, [ - h("input", { - id, - type: "checkbox", - class: "drawer-toggle", - checked: () => (typeof props.open === "function" ? props.open() : props.open), - onchange: (e) => typeof props.open === "function" && props.open(e.target.checked) - }), - h("div", { class: "drawer-content" }, props.children), - h("div", { class: "drawer-side" }, [ - h("label", { - for: id, - class: "drawer-overlay", - onclick: () => typeof props.open === "function" && props.open(false) - }), - h("div", { class: "min-h-full bg-base-200 w-80 p-4" }, - typeof props.content === "function" ? props.content() : props.content - ) - ]) - ]); -}; \ No newline at end of file diff --git a/components/discarted/dropdown.js b/components/discarted/dropdown.js deleted file mode 100644 index 9472961..0000000 --- a/components/discarted/dropdown.js +++ /dev/null @@ -1,24 +0,0 @@ -// components/Dropdown.js -import { h } from "sigpro"; - -let currentOpen = null; - -if (typeof window !== 'undefined' && !window.__dropdownHandlerRegistered) { - window.addEventListener('click', (e) => { - if (currentOpen && !currentOpen.contains(e.target)) { - currentOpen.open = false; - currentOpen = null; - } - }); - window.__dropdownHandlerRegistered = true; -} - -export const Dropdown = (props) => h("details", { - ...props, - class: `dropdown ${props.class ?? ''}`, - onclick: (e) => { - const details = e.currentTarget; - if (currentOpen && currentOpen !== details) currentOpen.open = false; - setTimeout(() => { currentOpen = details.open ? details : null; }, 0); - } -}, props.children); \ No newline at end of file diff --git a/components/discarted/fab.js b/components/discarted/fab.js deleted file mode 100644 index 12c4bb9..0000000 --- a/components/discarted/fab.js +++ /dev/null @@ -1,7 +0,0 @@ -// components/Fab.js -import { h } from "sigpro"; - -export const Fab = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `fab ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/fieldset.js b/components/discarted/fieldset.js deleted file mode 100644 index 50180c4..0000000 --- a/components/discarted/fieldset.js +++ /dev/null @@ -1,10 +0,0 @@ -// components/Fieldset.js -import { h } from "sigpro"; - -export const Fieldset = (props, children) => h("fieldset", { - ...props, - class: `fieldset ${props.class ?? ''}` -}, [ - props.legend ? h("legend", { class: "fieldset-legend" }, props.legend) : null, - children -]); \ No newline at end of file diff --git a/components/discarted/fileinput.js b/components/discarted/fileinput.js deleted file mode 100644 index d5e5446..0000000 --- a/components/discarted/fileinput.js +++ /dev/null @@ -1,68 +0,0 @@ -// components/Fileinput.js -import { $, h, when, each } from "sigpro"; - -export const Fileinput = (props) => { - const selectedFiles = $([]); - const isDragging = $(false); - const error = $(null); - const maxBytes = (props.max || 2) * 1024 * 1024; - - const handleFiles = (files) => { - const fileList = Array.from(files); - error(null); - if (fileList.find(f => f.size > maxBytes)) { - error(`Máx ${props.max || 2}MB`); - return; - } - selectedFiles([...selectedFiles(), ...fileList]); - props.onselect?.(selectedFiles()); - }; - - const removeFile = (idx) => { - const updated = selectedFiles().filter((_, i) => i !== idx); - selectedFiles(updated); - props.onselect?.(updated); - }; - - return h("div", { ...props, class: `fieldset w-full p-0 ${props.class ?? ''}` }, [ - h("label", { - class: () => `relative flex items-center justify-between w-full h-12 px-4 border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200 ${isDragging() ? "border-primary bg-primary/10" : "border-base-content/20 bg-base-100 hover:bg-base-200"}`, - ondragover: (e) => { e.preventDefault(); isDragging(true); }, - ondragleave: () => isDragging(false), - ondrop: (e) => { e.preventDefault(); isDragging(false); handleFiles(e.dataTransfer.files); } - }, [ - h("div", { class: "flex items-center gap-3 w-full" }, [ - h("span", { class: "icon-[lucide--upload]" }), - h("span", { class: "text-sm opacity-70 truncate grow text-left" }, "Arrastra o selecciona archivos..."), - h("span", { class: "text-[10px] opacity-40 shrink-0" }, `Máx ${props.max || 2}MB`) - ]), - h("input", { - type: "file", - multiple: true, - accept: props.accept || "*", - class: "hidden", - onchange: (e) => handleFiles(e.target.files) - }) - ]), - () => error() && h("span", { class: "text-[10px] text-error mt-1 px-1 font-medium" }, error()), - when(() => selectedFiles().length > 0, () => - h("ul", { class: "mt-2 space-y-1" }, [ - each(selectedFiles, (file, idx) => - h("li", { class: "flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300" }, [ - h("div", { class: "flex items-center gap-2 truncate" }, [ - h("span", { class: "opacity-50" }, "📄"), - h("span", { class: "truncate font-medium max-w-[200px]" }, file.name), - h("span", { class: "text-[9px] opacity-40" }, `(${(file.size / 1024).toFixed(0)} KB)`) - ]), - h("button", { - type: "button", - class: "btn btn-ghost btn-xs btn-circle", - onclick: (e) => { e.preventDefault(); removeFile(idx); } - }, h("span", { class: "icon-[lucide--x]" })) - ]) - ) - ]) - ) - ]); -}; - diff --git a/components/discarted/icon.js b/components/discarted/icon.js deleted file mode 100644 index bb3cfd6..0000000 --- a/components/discarted/icon.js +++ /dev/null @@ -1,14 +0,0 @@ -// components/Icon.js -import { h } from "sigpro"; - -export const Icon = (props, children) => { - if (typeof props === "string") { - if (props.includes("icon-") || props.startsWith("lucide-")) { - return h("span", { class: props }, children); - } - return h("span", { class: "icon" }, props); - } - if (!props) return null; - const { class: className, ...rest } = props; - return h("span", { ...rest, class: className }, children); -}; \ No newline at end of file diff --git a/components/discarted/indicator.js b/components/discarted/indicator.js deleted file mode 100644 index 8cec8c2..0000000 --- a/components/discarted/indicator.js +++ /dev/null @@ -1,10 +0,0 @@ -// components/Indicator.js -import { h } from "sigpro"; - -export const Indicator = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `indicator ${props.class ?? ''}` }, [ - props.value ? h("span", { class: `indicator-item badge ${props.class ?? ''}` }, props.value) : null, - children - ]); -}; \ No newline at end of file diff --git a/components/discarted/kbd.js b/components/discarted/kbd.js deleted file mode 100644 index d751863..0000000 --- a/components/discarted/kbd.js +++ /dev/null @@ -1,7 +0,0 @@ -// components/Kbd.js -import { h } from "sigpro"; - -export const Kbd = (props, children) => { - children === undefined && (children = props, props = {}); - return h("kbd", { ...props, class: `kbd ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/loading.js b/components/discarted/loading.js deleted file mode 100644 index dee15d7..0000000 --- a/components/discarted/loading.js +++ /dev/null @@ -1,7 +0,0 @@ -// components/Loading.js -import { h } from "sigpro"; - -export const Loading = (props, children) => { - children === undefined && (children = props, props = {}); - return h("span", { ...props, class: `loading loading-spinner ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/menu.js b/components/discarted/menu.js deleted file mode 100644 index 3a6dc4e..0000000 --- a/components/discarted/menu.js +++ /dev/null @@ -1,32 +0,0 @@ -// components/Menu.js -import { h, each } from "sigpro"; - -export const Menu = (props, children) => { - children === undefined && (children = props, props = {}); - return h("ul", { ...props, class: `menu ${props.class ?? ''}` }, children); -}; - -export const MenuItems = (props) => { - const { items } = props; - const itemsSignal = typeof items === "function" ? items : () => items || []; - - const renderItem = (item) => { - if (item.children) { - return h("li", {}, [ - h("details", {}, [ - h("summary", {}, item.label), - h("ul", {}, MenuItems({ items: item.children })) - ]) - ]); - } - return h("li", {}, h("a", { - href: item.href, - onclick: item.onclick ? (e) => { - if (!item.href) e.preventDefault(); - item.onclick(e); - } : null - }, item.label)); - }; - - return each(itemsSignal, renderItem); -}; \ No newline at end of file diff --git a/components/discarted/modal.js b/components/discarted/modal.js deleted file mode 100644 index 54f2358..0000000 --- a/components/discarted/modal.js +++ /dev/null @@ -1,33 +0,0 @@ -// components/Modal.js -import { h, watch } from "sigpro"; - -export const Modal = (props) => { - let dialogRef = null; - - watch(() => { - const isOpen = typeof props.open === "function" ? props.open() : props.open; - if (!dialogRef) return; - isOpen ? dialogRef.showModal() : dialogRef.close(); - }); - - const close = () => typeof props.open === "function" && props.open(false); - - return h("dialog", { - ...props, - ref: el => dialogRef = el, - class: `modal ${props.class ?? ''}`, - onclose: close, - oncancel: close - }, [ - h("div", { class: "modal-box" }, [ - props.title && h("h3", { class: "text-lg font-bold" }, props.title), - props.children, - h("div", { class: "modal-action" }, [ - props.actions || h("button", { class: "btn", onclick: close }, "Cerrar") - ]) - ]), - h("form", { method: "dialog", class: "modal-backdrop" }, [ - h("button", {}, "close") - ]) - ]); -}; \ No newline at end of file diff --git a/components/discarted/navbar.js b/components/discarted/navbar.js deleted file mode 100644 index dcff3c7..0000000 --- a/components/discarted/navbar.js +++ /dev/null @@ -1,7 +0,0 @@ -// components/Navbar.js -import { h } from "sigpro"; - -export const Navbar = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `navbar ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/radial.js b/components/discarted/radial.js deleted file mode 100644 index ec25349..0000000 --- a/components/discarted/radial.js +++ /dev/null @@ -1,18 +0,0 @@ -// components/Radial.js -import { h } from "sigpro"; - -export const Radial = (props, children) => { - children === undefined && (children = props, props = {}); - const percentage = props.value != null ? (props.value / (props.max || 100)) * 100 : 0; - const style = `--value: ${percentage}; --max: 100;`; - - return h("div", { - ...props, - class: `radial-progress ${props.class ?? ''}`, - style: style, - role: "progressbar", - "aria-valuenow": props.value, - "aria-valuemin": 0, - "aria-valuemax": props.max || 100 - }, children || `${Math.round(percentage)}%`); -}; \ No newline at end of file diff --git a/components/discarted/radio.js b/components/discarted/radio.js deleted file mode 100644 index ade1bba..0000000 --- a/components/discarted/radio.js +++ /dev/null @@ -1,4 +0,0 @@ -// components/Radio.js -import { h } from "sigpro"; - -export const Radio = (props) => h("input", { ...props, type: "radio", class: `radio ${props.class ?? ''}` }); \ No newline at end of file diff --git a/components/discarted/range.js b/components/discarted/range.js deleted file mode 100644 index f9c2529..0000000 --- a/components/discarted/range.js +++ /dev/null @@ -1,4 +0,0 @@ -// components/Range.js -import { h } from "sigpro"; - -export const Range = (props) => h("input", { ...props, type: "range", class: `range ${props.class ?? ''}` }); \ No newline at end of file diff --git a/components/discarted/rating.js b/components/discarted/rating.js deleted file mode 100644 index 05a9dbd..0000000 --- a/components/discarted/rating.js +++ /dev/null @@ -1,21 +0,0 @@ -// components/Rating.js -import { h } from "sigpro"; - -export const Rating = (props, children) => { - children === undefined && (children = props, props = {}); - const name = `rating-${Math.random().toString(36).slice(2, 7)}`; - - return h("div", { ...props, class: `rating ${props.class ?? ''}` }, children || Array.from({ length: props.count || 5 }, (_, i) => { - const starValue = i + 1; - return h("input", { - type: "radio", - name, - class: `mask ${props.mask || "mask-star"}`, - checked: () => typeof props.value === "function" ? props.value() === starValue : props.value === starValue, - onchange: () => { - if (props.onchange) props.onchange(starValue); - else if (typeof props.value === "function") props.value(starValue); - } - }); - })); -}; \ No newline at end of file diff --git a/components/discarted/skeleton.js b/components/discarted/skeleton.js deleted file mode 100644 index 1163f7e..0000000 --- a/components/discarted/skeleton.js +++ /dev/null @@ -1,12 +0,0 @@ -// components/Skeleton.js -import { h } from "sigpro"; - -export const Skeleton = (props) => h("div", { ...props, class: `skeleton ${props.class ?? ''}` }); - -export const SkeletonText = (props) => { - return h("div", { ...props, class: "space-y-2" }, - Array.from({ length: props.lines || 3 }, () => - h("div", { class: `skeleton h-4 w-full ${props.class ?? ''}` }) - ) - ); -}; \ No newline at end of file diff --git a/components/discarted/stack.js b/components/discarted/stack.js deleted file mode 100644 index 7b72d55..0000000 --- a/components/discarted/stack.js +++ /dev/null @@ -1,7 +0,0 @@ -// components/Stack.js -import { h } from "sigpro"; - -export const Stack = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `stack ${props.class ?? ''}` }, children); -}; \ No newline at end of file diff --git a/components/discarted/stat.js b/components/discarted/stat.js deleted file mode 100644 index 72243ed..0000000 --- a/components/discarted/stat.js +++ /dev/null @@ -1,20 +0,0 @@ -// components/Stats.js -import { h } from "sigpro"; - -export const Stats = (props, children) => { - children === undefined && (children = props, props = {}); - const direction = props.vertical ? "stats-vertical" : "stats-horizontal"; - return h("div", { ...props, class: `stats ${direction} ${props.class ?? ''}`.trim() }, children); -}; - -export const Stat = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `stat ${props.class ?? ''}` }, [ - props.icon && h("div", { class: "stat-figure" }, props.icon), - props.label && h("div", { class: "stat-title" }, props.label), - props.value && h("div", { class: "stat-value" }, props.value), - props.desc && h("div", { class: "stat-desc" }, props.desc), - props.actions && h("div", { class: "stat-actions" }, props.actions), - children - ]); -}; \ No newline at end of file diff --git a/components/discarted/steps.js b/components/discarted/steps.js deleted file mode 100644 index 999d201..0000000 --- a/components/discarted/steps.js +++ /dev/null @@ -1,12 +0,0 @@ -// components/Steps.js -import { h } from "sigpro"; - -export const Steps = (props, children) => { - children === undefined && (children = props, props = {}); - return h("ul", { ...props, class: `steps ${props.class ?? ''}` }, children); -}; - -export const Step = (props, children) => { - children === undefined && (children = props, props = {}); - return h("li", { ...props, class: `step ${props.class ?? ''}`, "data-content": props.dataContent }, children); -}; \ No newline at end of file diff --git a/components/discarted/swap.js b/components/discarted/swap.js deleted file mode 100644 index 54c3c75..0000000 --- a/components/discarted/swap.js +++ /dev/null @@ -1,14 +0,0 @@ -// components/Swap.js -import { h } from "sigpro"; - -export const Swap = (props) => { - return h("label", { ...props, class: `swap ${props.class ?? ''}` }, [ - h("input", { - type: "checkbox", - checked: () => typeof props.value === "function" ? props.value() : props.value, - onchange: (e) => typeof props.value === "function" && props.value(e.target.checked) - }), - h("div", { class: "swap-on" }, props.on), - h("div", { class: "swap-off" }, props.off) - ]); -}; \ No newline at end of file diff --git a/components/discarted/table.js b/components/discarted/table.js deleted file mode 100644 index 21a7bde..0000000 --- a/components/discarted/table.js +++ /dev/null @@ -1,30 +0,0 @@ -// components/Table.js -import { h, each } from "sigpro"; - -export const Table = (props, children) => { - children === undefined && (children = props, props = {}); - return h("table", { ...props, class: `table ${props.class ?? ''}` }, children); -}; - -export const TableItems = (props) => { - const itemArray = typeof props.items === "function" ? props.items() : (props.items || []); - - const thead = props.header !== false && props.columns?.some(col => col.label) ? - h("thead", {}, - h("tr", {}, - props.columns.map(col => h("th", { class: col.class }, col.label)) - ) - ) : null; - - const tbody = h("tbody", {}, [ - each(itemArray, (item, idx) => - h("tr", {}, - props.columns.map(col => { - const content = col.render ? col.render(item, idx) : item[col.key]; - return h("td", { class: col.class }, content); - }) - )) - ]); - - return [thead, tbody]; -}; \ No newline at end of file diff --git a/components/discarted/tabs.js b/components/discarted/tabs.js deleted file mode 100644 index 9ce793a..0000000 --- a/components/discarted/tabs.js +++ /dev/null @@ -1,48 +0,0 @@ -// components/Tabs.js -import { h, each } from "sigpro"; - -export const Tabs = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `tabs ${props.class ?? ''}` }, children); -}; - -export const Tab = (props, children) => { - children === undefined && (children = props, props = {}); - return h("a", { ...props, role: "tab", class: `tab ${props.class ?? ''}` }, children); -}; - -export const TabContent = (props, children) => { - children === undefined && (children = props, props = {}); - return h("div", { ...props, class: `tab-content ${props.class ?? ''}` }, children); -}; - -export const TabClose = (props) => h("a", { ...props, role: "tab", class: `tab ${props.class ?? ''}` }, [ - h("span", { class: "flex items-center" }, [ - props.label, - h("span", { - class: "icon-[lucide--x] w-3.5 h-3.5 ml-2 cursor-pointer hover:opacity-70", - onclick: (e) => { e.stopPropagation(); props.onClose?.(e); } - }) - ]) -]); - -export const TabItems = (props) => { - const items = typeof props.items === "function" ? props.items : () => props.items || []; - return each( - items, - (item, idx) => { - const TabComp = item.closable ? TabClose : Tab; - return [ - TabComp({ - ...item, - class: () => props.activeIndex() === idx ? `tab-active ${item.class ?? ''}` : item.class, - onclick: (e) => { e.preventDefault(); props.activeIndex(idx); item.onclick?.(e); }, - onClose: () => props.onClose?.(idx, item) - }), - TabContent({ - style: () => `display: ${props.activeIndex() === idx ? "block" : "none"};` - }, typeof item.content === "function" ? item.content() : item.content) - ]; - } - ); -}; \ No newline at end of file diff --git a/components/discarted/textarea.js b/components/discarted/textarea.js deleted file mode 100644 index 4352222..0000000 --- a/components/discarted/textarea.js +++ /dev/null @@ -1,4 +0,0 @@ -// components/Textarea.js -import { h } from "sigpro"; - -export const Textarea = (props) => h("textarea", { ...props, class: `textarea ${props.class ?? ''}` }); \ No newline at end of file diff --git a/components/discarted/textrotate.js b/components/discarted/textrotate.js deleted file mode 100644 index e884ce2..0000000 --- a/components/discarted/textrotate.js +++ /dev/null @@ -1,12 +0,0 @@ -// components/Textrotate.js -import { h } from "sigpro"; - -export const TextRotate = (props) => { - const wordsArray = Array.isArray(props.words) - ? props.words - : (typeof props.words === 'string' ? props.words.split(',') : []); - - return h("span", { ...props, class: `text-rotate ${props.class ?? ''}` }, [ - h("span", {}, wordsArray.map(word => h("span", {}, word))) - ]); -}; \ No newline at end of file diff --git a/components/discarted/timeline.js b/components/discarted/timeline.js deleted file mode 100644 index c9b7eab..0000000 --- a/components/discarted/timeline.js +++ /dev/null @@ -1,12 +0,0 @@ -// components/Timeline.js -import { h } from "sigpro"; - -export const Timeline = (props, children) => { - children === undefined && (children = props, props = {}); - const vertical = props.vertical !== false; - const compact = props.compact === true; - return h("ul", { - ...props, - class: `timeline ${vertical ? 'timeline-vertical' : 'timeline-horizontal'} ${compact ? 'timeline-compact' : ''} ${props.class ?? ''}`.trim() - }, children); -}; \ No newline at end of file diff --git a/components/discarted/toggle.js b/components/discarted/toggle.js deleted file mode 100644 index cb9f724..0000000 --- a/components/discarted/toggle.js +++ /dev/null @@ -1,4 +0,0 @@ -// components/Toggle.js -import { h } from "sigpro"; - -export const Toggle = (p) => h("input", { ...p, type: "checkbox", class: `toggle ${p.class ?? ''}` }); \ No newline at end of file diff --git a/components/discarted/tooltip.js b/components/discarted/tooltip.js deleted file mode 100644 index d4270b8..0000000 --- a/components/discarted/tooltip.js +++ /dev/null @@ -1,4 +0,0 @@ -// components/Tooltip.js -import { h } from "sigpro"; - -export const Tooltip = (p, c) => h("div", { ...p, class: `tooltip ${p.class ?? ''}`, "data-tip": p.tip }, c); diff --git a/dist/sigpro-ui.css b/dist/sigpro-ui.css index ce8b5e9..e7db291 100644 --- a/dist/sigpro-ui.css +++ b/dist/sigpro-ui.css @@ -1107,24 +1107,6 @@ mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E"); } } - .btn-disabled { - @layer daisyui.l1.l2 { - &:not(.btn-link, .btn-ghost) { - background-color: var(--color-base-content); - @supports (color: color-mix(in lab, red, red)) { - background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent); - } - box-shadow: none; - } - pointer-events: none; - --btn-border: #0000; - --btn-noise: none; - --btn-fg: var(--color-base-content); - @supports (color: color-mix(in lab, red, red)) { - --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000); - } - } - } .pointer-events-auto { pointer-events: auto; } @@ -1977,32 +1959,6 @@ } } } - .tabs-border { - @layer daisyui.l1.l2 { - > .tab { - --tab-border-color: #0000 #0000 var(--tab-border-color) #0000; - position: relative; - border-radius: var(--radius-field); - &:before { - content: ""; - background-color: var(--tab-border-color); - transition: background-color 0.2s ease; - width: 80%; - height: 3px; - border-radius: var(--radius-field); - bottom: 0; - left: 10%; - position: absolute; - } - &:is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]):not( .tab-disabled, [disabled] ), &:is(input:checked), &:is(label:has(:checked)) { - &:before { - --tab-border-color: currentColor; - border-top: 3px solid; - } - } - } - } - } .chat-bubble { @layer daisyui.l1.l2.l3 { position: relative; @@ -2702,24 +2658,9 @@ } } } - .tooltip-top { - @layer daisyui.l1.l2 { - > .tooltip-content, &[data-tip]:before { - transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem)); - inset: auto auto var(--tt-off) 50%; - } - &:after { - transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem)); - inset: auto auto var(--tt-tail) 50%; - } - } - } .inset-0 { inset: calc(var(--spacing) * 0); } - .inset-y-0 { - inset-block: calc(var(--spacing) * 0); - } .chat-end { @layer daisyui.l1.l2 { place-items: end; @@ -2778,16 +2719,6 @@ .end { inset-inline-end: var(--spacing); } - .dropdown-bottom { - @layer daisyui.l1.l2 { - --anchor-v: bottom; - .dropdown-content { - top: 100%; - bottom: auto; - transform-origin: top; - } - } - } .top-0 { top: calc(var(--spacing) * 0); } @@ -2803,18 +2734,6 @@ .right-1\/4 { right: calc(1 / 4 * 100%); } - .right-3 { - right: calc(var(--spacing) * 3); - } - .right-6 { - right: calc(var(--spacing) * 6); - } - .-bottom-5 { - bottom: calc(var(--spacing) * -5); - } - .bottom-6 { - bottom: calc(var(--spacing) * 6); - } .bottom-10 { bottom: calc(var(--spacing) * 10); } @@ -2827,12 +2746,6 @@ .left-1\/4 { left: calc(1 / 4 * 100%); } - .left-3 { - left: calc(var(--spacing) * 3); - } - .left-6 { - left: calc(var(--spacing) * 6); - } .textarea { @layer daisyui.l1.l2.l3 { border: var(--border) solid #0000; @@ -3059,18 +2972,12 @@ .z-50 { z-index: 50; } - .z-\[50\] { - z-index: 50; - } .z-\[90\] { z-index: 90; } .z-\[100\] { z-index: 100; } - .z-\[110\] { - z-index: 110; - } .z-\[9999\] { z-index: 9999; } @@ -3116,209 +3023,6 @@ justify-self: center; } } - .timeline-horizontal { - @layer daisyui.l1.l2 { - flex-direction: row; - > li { - align-items: center; - > hr { - height: calc(0.25rem * 1); - width: 100%; - &:first-child { - grid-column-start: 1; - grid-row-start: 2; - } - &:last-child { - grid-column-start: 3; - grid-column-end: none; - grid-row-start: 2; - grid-row-end: auto; - } - } - } - .timeline-start { - grid-column-start: 1; - grid-column-end: 4; - grid-row-start: 1; - grid-row-end: 2; - align-self: flex-end; - justify-self: center; - } - .timeline-end { - grid-column-start: 1; - grid-column-end: 4; - grid-row-start: 3; - grid-row-end: 4; - align-self: flex-start; - justify-self: center; - } - &:has(.timeline-middle) { - > li { - > hr { - &:first-child { - border-start-start-radius: 0; - border-end-start-radius: 0; - border-start-end-radius: var(--radius-selector); - border-end-end-radius: var(--radius-selector); - } - &:last-child { - border-start-start-radius: var(--radius-selector); - border-end-start-radius: var(--radius-selector); - border-start-end-radius: 0; - border-end-end-radius: 0; - } - } - } - } - &:not(:has(.timeline-middle)) { - :first-child { - > hr:last-child { - border-start-start-radius: var(--radius-selector); - border-end-start-radius: var(--radius-selector); - border-start-end-radius: 0; - border-end-end-radius: 0; - } - } - :last-child { - > hr:first-child { - border-start-start-radius: 0; - border-end-start-radius: 0; - border-start-end-radius: var(--radius-selector); - border-end-end-radius: var(--radius-selector); - } - } - } - } - } - .timeline-vertical { - @layer daisyui.l1.l2 { - flex-direction: column; - > li { - justify-items: center; - --timeline-row-start: minmax(0, 1fr); - --timeline-row-end: minmax(0, 1fr); - > hr { - height: 100%; - width: calc(0.25rem * 1); - &:first-child { - grid-column-start: 2; - grid-row-start: 1; - } - &:last-child { - grid-column-start: 2; - grid-column-end: auto; - grid-row-start: 3; - grid-row-end: none; - } - } - } - .timeline-start { - grid-column-start: 1; - grid-column-end: 2; - grid-row-start: 1; - grid-row-end: 4; - align-self: center; - justify-self: flex-end; - } - .timeline-end { - grid-column-start: 3; - grid-column-end: 4; - grid-row-start: 1; - grid-row-end: 4; - align-self: center; - justify-self: flex-start; - } - &:has(.timeline-middle) { - > li { - > hr { - &:first-child { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-right-radius: var(--radius-selector); - border-bottom-left-radius: var(--radius-selector); - } - &:last-child { - border-top-left-radius: var(--radius-selector); - border-top-right-radius: var(--radius-selector); - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - } - } - } - } - &:not(:has(.timeline-middle)) { - :first-child { - > hr:last-child { - border-top-left-radius: var(--radius-selector); - border-top-right-radius: var(--radius-selector); - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - } - } - :last-child { - > hr:first-child { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-right-radius: var(--radius-selector); - border-bottom-left-radius: var(--radius-selector); - } - } - } - &.timeline-snap-icon { - > li { - --timeline-col-start: minmax(0, 1fr); - --timeline-row-start: 0.5rem; - } - } - } - } - .timeline-compact { - @layer daisyui.l1.l2 { - --timeline-row-start: 0; - .timeline-start { - grid-column-start: 1; - grid-column-end: 4; - grid-row-start: 3; - grid-row-end: 4; - align-self: flex-start; - justify-self: center; - } - li:has(.timeline-start) { - .timeline-end { - grid-column-start: none; - grid-row-start: auto; - } - } - &.timeline-vertical { - > li { - --timeline-col-start: 0; - } - .timeline-start { - grid-column-start: 3; - grid-column-end: 4; - grid-row-start: 1; - grid-row-end: 4; - align-self: center; - justify-self: flex-start; - } - li:has(.timeline-start) { - .timeline-end { - grid-column-start: auto; - grid-row-start: none; - } - } - } - } - } - .stat-figure { - @layer daisyui.l1.l2.l3 { - grid-column-start: 2; - grid-row: span 3 / span 3; - grid-row-start: 1; - place-self: center; - justify-self: flex-end; - } - } .modal-box { @layer daisyui.l1.l2.l3 { grid-column-start: 1; @@ -3406,12 +3110,6 @@ font-size: 0.75rem; } } - .stat-actions { - @layer daisyui.l1.l2.l3 { - grid-column-start: 1; - white-space: nowrap; - } - } .chat-image { @layer daisyui.l1.l2.l3 { grid-row: span 2 / span 2; @@ -3482,9 +3180,6 @@ } } } - .m-1 { - margin: calc(var(--spacing) * 1); - } .m-4 { margin: calc(var(--spacing) * 4); } @@ -3539,42 +3234,6 @@ .mx-auto { margin-inline: auto; } - .input-lg { - @layer daisyui.l1.l2 { - --size: calc(var(--size-field, 0.25rem) * 12); - font-size: max(var(--font-size, 1.125rem), 1.125rem); - &[type="number"] { - &::-webkit-inner-spin-button { - margin-block: calc(0.25rem * -3); - margin-inline-end: calc(0.25rem * -3); - } - } - } - } - .input-sm { - @layer daisyui.l1.l2 { - --size: calc(var(--size-field, 0.25rem) * 8); - font-size: max(var(--font-size, 0.75rem), 0.75rem); - &[type="number"] { - &::-webkit-inner-spin-button { - margin-block: calc(0.25rem * -2); - margin-inline-end: calc(0.25rem * -3); - } - } - } - } - .input-xs { - @layer daisyui.l1.l2 { - --size: calc(var(--size-field, 0.25rem) * 6); - font-size: max(var(--font-size, 0.6875rem), 0.6875rem); - &[type="number"] { - &::-webkit-inner-spin-button { - margin-block: calc(0.25rem * -1); - margin-inline-end: calc(0.25rem * -3); - } - } - } - } .my-16 { margin-block: calc(var(--spacing) * 16); } @@ -3646,9 +3305,6 @@ .mr-1 { margin-right: calc(var(--spacing) * 1); } - .mr-2 { - margin-right: calc(var(--spacing) * 2); - } .fieldset-legend { @layer daisyui.l1.l2.l3 { margin-bottom: calc(0.25rem * -1); @@ -3661,9 +3317,6 @@ font-weight: 600; } } - .mb-2 { - margin-bottom: calc(var(--spacing) * 2); - } .mb-4 { margin-bottom: calc(var(--spacing) * 4); } @@ -3706,32 +3359,6 @@ padding-inline: calc(var(--size) / 2 - var(--border)); } } - .icon-\[lucide--alert-circle\] { - display: inline-block; - width: 1em; - height: 1em; - background-color: currentColor; - -webkit-mask-image: var(--svg); - mask-image: var(--svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 8v4m0 4h.01'/%3E%3C/g%3E%3C/svg%3E"); - } - .icon-\[lucide--alert-triangle\] { - display: inline-block; - width: 1em; - height: 1em; - background-color: currentColor; - -webkit-mask-image: var(--svg); - mask-image: var(--svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m21.73 18l-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3M12 9v4m0 4h.01'/%3E%3C/svg%3E"); - } .icon-\[lucide--align-center\] { display: inline-block; width: 1em; @@ -3797,19 +3424,6 @@ mask-size: 100% 100%; --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M8 2v4m8-4v4'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/g%3E%3C/svg%3E"); } - .icon-\[lucide--check-circle\] { - display: inline-block; - width: 1em; - height: 1em; - background-color: currentColor; - -webkit-mask-image: var(--svg); - mask-image: var(--svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M21.801 10A10 10 0 1 1 17 3.335'/%3E%3Cpath d='m9 11l3 3L22 4'/%3E%3C/g%3E%3C/svg%3E"); - } .icon-\[lucide--check\] { display: inline-block; width: 1em; @@ -3940,19 +3554,6 @@ mask-size: 100% 100%; --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/g%3E%3C/svg%3E"); } - .icon-\[lucide--hash\] { - display: inline-block; - width: 1em; - height: 1em; - background-color: currentColor; - -webkit-mask-image: var(--svg); - mask-image: var(--svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 9h16M4 15h16M10 3L8 21m8-18l-2 18'/%3E%3C/svg%3E"); - } .icon-\[lucide--indent-decrease\] { display: inline-block; width: 1em; @@ -3979,19 +3580,6 @@ mask-size: 100% 100%; --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M3 8l4 4l-4 4'/%3E%3C/svg%3E"); } - .icon-\[lucide--info\] { - display: inline-block; - width: 1em; - height: 1em; - background-color: currentColor; - -webkit-mask-image: var(--svg); - mask-image: var(--svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4m0-4h.01'/%3E%3C/g%3E%3C/svg%3E"); - } .icon-\[lucide--italic\] { display: inline-block; width: 1em; @@ -4057,19 +3645,6 @@ mask-size: 100% 100%; --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='18' height='11' x='3' y='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/g%3E%3C/svg%3E"); } - .icon-\[lucide--mail\] { - display: inline-block; - width: 1em; - height: 1em; - background-color: currentColor; - -webkit-mask-image: var(--svg); - mask-image: var(--svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m22 7l-8.991 5.727a2 2 0 0 1-2.009 0L2 7'/%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3C/g%3E%3C/svg%3E"); - } .icon-\[lucide--moon\] { display: inline-block; width: 1em; @@ -4096,19 +3671,6 @@ mask-size: 100% 100%; --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m16 6l-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551'/%3E%3C/svg%3E"); } - .icon-\[lucide--phone\] { - display: inline-block; - width: 1em; - height: 1em; - background-color: currentColor; - -webkit-mask-image: var(--svg); - mask-image: var(--svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233a14 14 0 0 0 6.392 6.384'/%3E%3C/svg%3E"); - } .icon-\[lucide--quote\] { display: inline-block; width: 1em; @@ -4174,19 +3736,6 @@ mask-size: 100% 100%; --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/g%3E%3C/svg%3E"); } - .icon-\[lucide--text\] { - display: inline-block; - width: 1em; - height: 1em; - background-color: currentColor; - -webkit-mask-image: var(--svg); - mask-image: var(--svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 18H3M17 6H3m18 6H3'/%3E%3C/svg%3E"); - } .icon-\[lucide--underline\] { display: inline-block; width: 1em; @@ -4335,31 +3884,6 @@ flex-direction: var(--tabs-direction); } } - .footer { - @layer daisyui.l1.l2.l3 { - display: grid; - width: 100%; - grid-auto-flow: row; - place-items: start; - column-gap: calc(0.25rem * 4); - row-gap: calc(0.25rem * 10); - font-size: 0.875rem; - line-height: 1.25rem; - & > * { - display: grid; - place-items: start; - gap: calc(0.25rem * 2); - } - &.footer-center { - grid-auto-flow: column dense; - place-items: center; - text-align: center; - & > * { - place-items: center; - } - } - } - } .stat { @layer daisyui.l1.l2.l3 { display: inline-grid; @@ -4377,14 +3901,6 @@ } } } - .navbar-end { - @layer daisyui.l1.l2.l3 { - display: inline-flex; - align-items: center; - width: 50%; - justify-content: flex-end; - } - } .card-body { @layer daisyui.l1.l2.l3 { display: flex; @@ -4398,20 +3914,6 @@ } } } - .fieldset-label { - @layer daisyui.l1.l2.l3 { - display: flex; - align-items: center; - gap: calc(0.25rem * 1.5); - color: var(--color-base-content); - @supports (color: color-mix(in lab, red, red)) { - color: color-mix(in oklab, var(--color-base-content) 60%, transparent); - } - &:has(input) { - cursor: pointer; - } - } - } .carousel { @layer daisyui.l1.l2.l3 { display: inline-flex; @@ -4533,23 +4035,6 @@ .aspect-square { aspect-ratio: 1 / 1; } - .modal-bottom { - @layer daisyui.l1.l2 { - place-items: end; - .modal-box { - height: auto; - width: 100%; - max-width: none; - max-height: calc(100vh - 5em); - translate: 0 100%; - scale: 1; - --modal-tl: var(--radius-box); - --modal-tr: var(--radius-box); - --modal-bl: 0; - --modal-br: 0; - } - } - } .btn-circle { @layer daisyui.l1.l2 { border-radius: calc(infinity * 1px); @@ -4569,9 +4054,6 @@ .h-3 { height: calc(var(--spacing) * 3); } - .h-3\.5 { - height: calc(var(--spacing) * 3.5); - } .h-4 { height: calc(var(--spacing) * 4); } @@ -4608,17 +4090,9 @@ .min-h-full { min-height: 100%; } - .btn-block { - @layer daisyui.l1.l2 { - width: 100%; - } - } .w-3 { width: calc(var(--spacing) * 3); } - .w-3\.5 { - width: calc(var(--spacing) * 3.5); - } .w-4 { width: calc(var(--spacing) * 4); } @@ -4655,9 +4129,6 @@ .w-96 { width: calc(var(--spacing) * 96); } - .w-fit { - width: fit-content; - } .w-full { width: 100%; } @@ -4735,6 +4206,9 @@ } } } + .transform { + transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,); + } .skeleton { @layer daisyui.l1.l2.l3 { border-radius: var(--radius-box); @@ -4757,35 +4231,6 @@ .cursor-pointer { cursor: pointer; } - .list-none { - list-style-type: none; - } - .stats-horizontal { - @layer daisyui.l1.l2 { - grid-auto-flow: column; - overflow-x: auto; - .stat:not(:last-child) { - border-inline-end: var(--border) dashed currentColor; - @supports (color: color-mix(in lab, red, red)) { - border-inline-end: var(--border) dashed color-mix(in oklab, currentColor 10%, #0000); - } - border-block-end: none; - } - } - } - .stats-vertical { - @layer daisyui.l1.l2 { - grid-auto-flow: row; - overflow-y: auto; - .stat:not(:last-child) { - border-inline-end: none; - border-block-end: var(--border) dashed currentColor; - @supports (color: color-mix(in lab, red, red)) { - border-block-end: var(--border) dashed color-mix(in oklab, currentColor 10%, #0000); - } - } - } - } .grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); } @@ -4798,9 +4243,6 @@ .flex-col { flex-direction: column; } - .flex-col-reverse { - flex-direction: column-reverse; - } .flex-nowrap { flex-wrap: nowrap; } @@ -4810,9 +4252,6 @@ .items-center { align-items: center; } - .items-end { - align-items: flex-end; - } .items-start { align-items: flex-start; } @@ -4828,9 +4267,6 @@ .justify-end { justify-content: flex-end; } - .justify-start { - justify-content: flex-start; - } .gap-0\.5 { gap: calc(var(--spacing) * 0.5); } @@ -4856,13 +4292,6 @@ margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse))); } } - .space-y-2 { - :where(& > :not(:last-child)) { - --tw-space-y-reverse: 0; - margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse)); - margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse))); - } - } .space-y-4 { :where(& > :not(:last-child)) { --tw-space-y-reverse: 0; @@ -4878,9 +4307,6 @@ .overflow-hidden { overflow: hidden; } - .overflow-x-auto { - overflow-x: auto; - } .overflow-y-auto { overflow-y: auto; } @@ -4943,24 +4369,6 @@ border-bottom-style: var(--tw-border-style); border-bottom-width: 1px; } - .badge-dash { - @layer daisyui.l1.l2 { - color: var(--badge-color); - --badge-bg: #0000; - background-image: none; - border-color: currentColor; - border-style: dashed; - } - } - .alert-dash { - @layer daisyui.l1 { - background-color: transparent; - color: var(--alert-color); - border-style: dashed; - box-shadow: none; - background-image: none; - } - } .border-dashed { --tw-border-style: dashed; border-style: dashed; @@ -4969,14 +4377,6 @@ --tw-border-style: none; border-style: none; } - .badge-ghost { - @layer daisyui.l1.l2 { - border-color: var(--color-base-200); - background-color: var(--color-base-200); - color: var(--color-base-content); - background-image: none; - } - } .badge-outline { @layer daisyui.l1.l2 { color: var(--badge-color); @@ -5006,12 +4406,6 @@ border-color: color-mix(in oklab, var(--color-black) 5%, transparent); } } - .border-black\/10 { - border-color: color-mix(in srgb, #000 10%, transparent); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--color-black) 10%, transparent); - } - } .border-primary { border-color: var(--color-primary); } @@ -5141,11 +4535,6 @@ mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E"); } } - .mask-circle { - @layer daisyui.l1.l2 { - mask-image: url("data:image/svg+xml,%3csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle fill='black' cx='100' cy='100' r='100' fill-rule='evenodd'/%3e%3c/svg%3e"); - } - } .mask-heart { @layer daisyui.l1.l2 { mask-image: url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e"); @@ -5156,26 +4545,9 @@ mask-image: url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e"); } } - .mask-circle { - --tw-mask-radial-shape: circle; - } .bg-clip-text { background-clip: text; } - .checkbox-lg { - @layer daisyui.l1.l2 { - padding: 0.3125rem; - --size: calc(var(--size-selector, 0.25rem) * 7); - } - } - .radio-lg { - @layer daisyui.l1.l2 { - padding: 0.3125rem; - &:is([type="radio"]) { - --size: calc(var(--size-selector, 0.25rem) * 7); - } - } - } .p-0 { padding: calc(var(--spacing) * 0); } @@ -5203,27 +4575,6 @@ .p-10 { padding: calc(var(--spacing) * 10); } - .select-lg { - @layer daisyui.l1.l2 { - --size: calc(var(--size-field, 0.25rem) * 12); - font-size: 1.125rem; - option { - padding-inline: calc(0.25rem * 4); - padding-block: calc(0.25rem * 1.5); - } - } - } - .table-lg { - @layer daisyui.l1.l2 { - :not(thead, tfoot) tr { - font-size: 1.125rem; - } - :where(th, td) { - padding-inline: calc(0.25rem * 5); - padding-block: calc(0.25rem * 4); - } - } - } .px-1 { padding-inline: calc(var(--spacing) * 1); } @@ -5242,9 +4593,6 @@ .py-1 { padding-block: calc(var(--spacing) * 1); } - .py-2 { - padding-block: calc(var(--spacing) * 2); - } .py-10 { padding-block: calc(var(--spacing) * 10); } @@ -5257,18 +4605,9 @@ .pt-2 { padding-top: calc(var(--spacing) * 2); } - .pr-10 { - padding-right: calc(var(--spacing) * 10); - } - .pb-2 { - padding-bottom: calc(var(--spacing) * 2); - } .pl-3 { padding-left: calc(var(--spacing) * 3); } - .pl-10 { - padding-left: calc(var(--spacing) * 10); - } .\!text-center { text-align: center !important; } @@ -5316,12 +4655,6 @@ font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); } - .badge-lg { - @layer daisyui.l1.l2 { - --size: calc(var(--size-selector, 0.25rem) * 7); - font-size: 1rem; - } - } .text-\[9px\] { font-size: 9px; } @@ -5371,9 +4704,6 @@ .text-balance { text-wrap: balance; } - .whitespace-nowrap { - white-space: nowrap; - } .alert-error { @layer daisyui.l1.l2 { color: var(--color-error-content); @@ -5402,46 +4732,6 @@ --alert-color: var(--color-warning); } } - .checkbox-accent { - @layer daisyui.l1.l2 { - color: var(--color-accent-content); - --input-color: var(--color-accent); - } - } - .checkbox-error { - @layer daisyui.l1.l2 { - color: var(--color-error-content); - --input-color: var(--color-error); - } - } - .range-accent { - @layer daisyui.l1.l2 { - color: var(--color-accent); - --range-thumb: var(--color-accent-content); - } - } - .range-error { - @layer daisyui.l1.l2 { - color: var(--color-error); - --range-thumb: var(--color-error-content); - } - } - .tooltip-accent { - @layer daisyui.l1.l2 { - --tt-bg: var(--color-accent); - > .tooltip-content, &[data-tip]:before { - color: var(--color-accent-content); - } - } - } - .tooltip-error { - @layer daisyui.l1.l2 { - --tt-bg: var(--color-error); - > .tooltip-content, &[data-tip]:before { - color: var(--color-error-content); - } - } - } .text-accent { color: var(--color-accent); } @@ -5478,45 +4768,15 @@ .text-transparent { color: transparent; } - .normal-case { - text-transform: none; - } .uppercase { text-transform: uppercase; } .italic { font-style: italic; } - .btn-link { - @layer daisyui.l1 { - text-decoration-line: underline; - outline-color: currentcolor; - --btn-border: #0000; - --btn-bg: #0000; - --btn-noise: none; - --btn-shadow: ""; - &:not(.btn-disabled, .btn:disabled, .btn[disabled]) { - --btn-fg: var(--btn-color, var(--color-primary)); - } - &:is(.btn-active, :hover, :active:focus, :focus-visible) { - --btn-border: #0000; - --btn-bg: #0000; - } - } - } .underline { text-decoration-line: underline; } - .swap-active { - @layer daisyui.l1.l2 { - .swap-off { - opacity: 0%; - } - .swap-on { - opacity: 100%; - } - } - } .opacity-0 { opacity: 0%; } @@ -5532,9 +4792,6 @@ .opacity-50 { opacity: 50%; } - .opacity-60 { - opacity: 60%; - } .opacity-70 { opacity: 70%; } @@ -5560,10 +4817,6 @@ --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1)); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); } - .shadow-md { - --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1)); - box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); - } .shadow-sm { --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); @@ -5633,6 +4886,11 @@ .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, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events; + transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); + transition-duration: var(--tw-duration, var(--default-transition-duration)); + } .transition-all { transition-property: all; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); @@ -5678,13 +4936,6 @@ --size: calc(var(--size-field, 0.25rem) * 12); } } - .btn-md { - @layer daisyui.l1.l2 { - --fontsize: 0.875rem; - --btn-p: 1rem; - --size: calc(var(--size-field, 0.25rem) * 10); - } - } .btn-sm { @layer daisyui.l1.l2 { --fontsize: 0.75rem; @@ -5692,13 +4943,6 @@ --size: calc(var(--size-field, 0.25rem) * 8); } } - .btn-xl { - @layer daisyui.l1.l2 { - --fontsize: 1.375rem; - --btn-p: 1.5rem; - --size: calc(var(--size-field, 0.25rem) * 14); - } - } .btn-xs { @layer daisyui.l1.l2 { --fontsize: 0.6875rem; @@ -5706,30 +4950,12 @@ --size: calc(var(--size-field, 0.25rem) * 6); } } - .badge-accent { - @layer daisyui.l1.l2 { - --badge-color: var(--color-accent); - --badge-fg: var(--color-accent-content); - } - } - .badge-error { - @layer daisyui.l1.l2 { - --badge-color: var(--color-error); - --badge-fg: var(--color-error-content); - } - } .badge-primary { @layer daisyui.l1.l2 { --badge-color: var(--color-primary); --badge-fg: var(--color-primary-content); } } - .btn-neutral { - @layer daisyui.l1.l2.l3 { - --btn-color: var(--color-neutral); - --btn-fg: var(--color-neutral-content); - } - } .btn-primary { @layer daisyui.l1.l2.l3 { --btn-color: var(--color-primary); @@ -5750,35 +4976,6 @@ -webkit-user-select: none; user-select: none; } - .input-error { - @layer daisyui.l1.l2 { - &, &:focus, &:focus-within { - --input-color: var(--color-error); - } - } - } - .input-secondary { - @layer daisyui.l1.l2 { - &, &:focus, &:focus-within { - --input-color: var(--color-secondary); - } - } - } - .radio-accent { - @layer daisyui.l1.l2 { - --input-color: var(--color-accent); - } - } - .radio-error { - @layer daisyui.l1.l2 { - --input-color: var(--color-error); - } - } - .range-lg { - @layer daisyui.l1.l2 { - --range-thumb-size: calc(var(--size-selector, 0.25rem) * 7); - } - } .range-xs { @layer daisyui.l1.l2 { --range-thumb-size: calc(var(--size-selector, 0.25rem) * 4); @@ -5787,34 +4984,6 @@ .ring-inset { --tw-ring-inset: inset; } - .select-error { - @layer daisyui.l1.l2 { - &, &:focus, &:focus-within { - --input-color: var(--color-error); - } - } - } - .select-secondary { - @layer daisyui.l1.l2 { - &, &:focus, &:focus-within { - --input-color: var(--color-secondary); - } - } - } - .toggle-accent { - @layer daisyui.l1.l2 { - &:checked, &[aria-checked="true"] { - --input-color: var(--color-accent); - } - } - } - .toggle-lg { - @layer daisyui.l1.l2 { - &:is([type="checkbox"]), &:has([type="checkbox"]) { - --size: calc(var(--size-selector, 0.25rem) * 7); - } - } - } .group-hover\:translate-x-1 { &:is(:where(.group):hover *) { @media (hover: hover) { @@ -5823,18 +4992,6 @@ } } } - .before\:z-50 { - &::before { - content: var(--tw-content); - z-index: 50; - } - } - .after\:z-50 { - &::after { - content: var(--tw-content); - z-index: 50; - } - } .hover\:z-10 { &:hover { @media (hover: hover) { @@ -5882,16 +5039,6 @@ } } } - .hover\:border-primary\/50 { - &:hover { - @media (hover: hover) { - border-color: var(--color-primary); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--color-primary) 50%, transparent); - } - } - } - } .hover\:border-secondary\/40 { &:hover { @media (hover: hover) { @@ -5923,20 +5070,6 @@ } } } - .hover\:opacity-70 { - &:hover { - @media (hover: hover) { - opacity: 70%; - } - } - } - .hover\:opacity-100 { - &:hover { - @media (hover: hover) { - opacity: 100%; - } - } - } .active\:scale-95 { &:active { --tw-scale-x: 95%; @@ -6522,6 +5655,26 @@ inherits: false; initial-value: 1; } +@property --tw-rotate-x { + syntax: "*"; + inherits: false; +} +@property --tw-rotate-y { + syntax: "*"; + inherits: false; +} +@property --tw-rotate-z { + syntax: "*"; + inherits: false; +} +@property --tw-skew-x { + syntax: "*"; + inherits: false; +} +@property --tw-skew-y { + syntax: "*"; + inherits: false; +} @property --tw-space-y-reverse { syntax: "*"; inherits: false; @@ -6708,11 +5861,6 @@ syntax: "*"; inherits: false; } -@property --tw-content { - syntax: "*"; - initial-value: ""; - inherits: false; -} @keyframes pulse { 50% { opacity: 0.5; @@ -6727,6 +5875,11 @@ --tw-scale-x: 1; --tw-scale-y: 1; --tw-scale-z: 1; + --tw-rotate-x: initial; + --tw-rotate-y: initial; + --tw-rotate-z: initial; + --tw-skew-x: initial; + --tw-skew-y: initial; --tw-space-y-reverse: 0; --tw-border-style: solid; --tw-gradient-position: initial; @@ -6769,7 +5922,6 @@ --tw-drop-shadow-alpha: 100%; --tw-drop-shadow-size: initial; --tw-duration: initial; - --tw-content: ""; } } } diff --git a/dist/sigpro-ui.esm.js b/dist/sigpro-ui.esm.js index 56c07b8..839de2b 100644 --- a/dist/sigpro-ui.esm.js +++ b/dist/sigpro-ui.esm.js @@ -13,17 +13,9 @@ var __export = (target, all) => { }); }; -// components/All.js -var exports_All = {}; -__export(exports_All, { - rand: () => rand, - listKey: () => listKey, - isFn: () => isFn, - getBy: () => getBy, - get: () => get, - filterBy: () => filterBy, - cls: () => cls, - close: () => close, +// sigpro-components.js +var exports_sigpro_components = {}; +__export(exports_sigpro_components, { Tooltip: () => Tooltip, Toggle: () => Toggle, Toast: () => Toast, @@ -106,7 +98,7 @@ var x = false; var A = 0; var C = new Set; var D = new WeakMap; -var $ = Symbol("iter"); +var $2 = Symbol("iter"); var B = new WeakMap; var E = (e) => { if (!e || e._disposed) @@ -253,16 +245,16 @@ var I = (e) => { let u = Reflect.has(c, t), a = Reflect.get(c, t, l), f = Reflect.set(c, t, r, l); if (f && !Object.is(a, r)) { if (w(i(t), true), !u) - w(i($), true); + w(i($2), true); } return f; }, deleteProperty(c, t) { let r = Reflect.deleteProperty(c, t); if (r) - w(i(t), true), w(i($), true); + w(i(t), true), w(i($2), true); return r; }, ownKeys(c) { - return w(i($)), Reflect.ownKeys(c); + return w(i($2)), Reflect.ownKeys(c); } }); return D.set(e, s), s; }; @@ -526,7 +518,7 @@ if (typeof window < "u") window[e] = (o, n) => O(e, o, n); }); -// components/All.js +// sigpro-helpers.js var get = (val) => typeof val === "function" ? val() : val; var getBy = (item, field = "label") => item && typeof item === "object" ? item[field] : item; var cls = (...classes) => classes.filter(Boolean).join(" ").trim(); @@ -535,7 +527,7 @@ var filterBy = (items, query, field = "label", q2 = String(query).toLowerCase()) var rand = (r) => `${r}-${Math.random().toString(36).slice(2, 9)}`; var close = () => document.activeElement?.blur(); var listKey = (items, isOpen) => { - const cursor = S(-1); + const cursor = $(-1); const onKey = (e, select) => { const list = get(items), i = cursor(), len = list.length; if (!len) @@ -545,6 +537,37 @@ var listKey = (items, isOpen) => { }; return { cursor, onKey }; }; +var fx = ({ name, duration = 200, scale, slide, rotate, blur }, child) => { + const el = typeof child === "function" ? child() : child; + if (!(el instanceof Node)) + return el; + if (name) { + el.style.animation = `${name}-in ${duration}ms`; + return el; + } + const hasTransform = scale || slide || rotate || blur; + const initialTransform = [ + scale ? "scale(0.95)" : "", + slide ? "translateY(-10px)" : "", + rotate ? "rotate(-2deg)" : "" + ].filter(Boolean).join(" "); + el.style.transition = `all ${duration}ms ease`; + el.style.opacity = "0"; + if (hasTransform) + el.style.transform = initialTransform; + if (blur) + el.style.filter = "blur(4px)"; + requestAnimationFrame(() => { + el.style.opacity = "1"; + if (hasTransform) + el.style.transform = "none"; + if (blur) + el.style.filter = "none"; + }); + return el; +}; + +// sigpro-components.js var Accordion = (p2) => { const name = p2.name || rand("acc"); return K(p2.items, (it) => { @@ -590,7 +613,7 @@ var Autocomplete = ({ items, value, onselect, placeholder = "Buscar...", ...prop }, 150), onkeydown: (e) => onKey(e, pick) }), - z(isOpen, () => G({ duration: 200, slide: true }, O("ul", { + z(isOpen, () => fx({ duration: 200, slide: true }, O("ul", { class: "absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap" }, [ K(filtered, (item, idx) => O("li", {}, [ @@ -700,7 +723,14 @@ var Calendar = (p2) => { return cells; } ]), - p2.hour ? O("div", { class: "mt-3 pt-2 border-t border-base-300" }, rangeMode() ? O("div", { class: "flex gap-4" }, [HourSlider({ value: startHour, onChange: (h) => startHour(h) }), HourSlider({ value: endHour, onChange: (h) => endHour(h) })]) : HourSlider({ value: startHour, onChange: (h) => startHour(h) })) : null + p2.hour ? O("div", { class: "mt-3 pt-2 border-t border-base-300" }, rangeMode() ? O("div", { class: "flex gap-4" }, [HourSlider({ value: startHour, onChange: (h) => startHour(h) }), HourSlider({ value: endHour, onChange: (h) => endHour(h) })]) : HourSlider({ value: startHour, onChange: (h) => startHour(h) })) : null, + O("div", { class: cls("flex gap-2 mt-3 pt-2", !p2.hour && "border-t border-base-300") }, [ + O("button", { + type: "button", + class: "btn btn-xs flex-1", + onclick: () => close() + }, Icon("icon-[lucide--x]")) + ]) ]); }; var Card = (p2, c) => O("div", { ...p2, class: cls("card", p2.class) }, c); @@ -797,15 +827,22 @@ var ColorPalette = (p2) => { "#fae8ff" ]; const pick = (c) => isFn(p2.value) ? p2.value(c) : p2.onchange?.(c); - return O("div", { class: "grid grid-cols-8 gap-1" }, palette.map((c) => O("button", { - type: "button", - style: `background-color: ${c}`, - class: () => { - const act = current().toLowerCase() === c.toLowerCase(); - return `size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${act ? "ring-2 ring-offset-1 ring-primary z-10 scale-110" : ""}`; - }, - onclick: () => pick(c) - }))); + return [ + O("div", { class: "grid grid-cols-8 gap-1" }, palette.map((c) => O("button", { + type: "button", + style: `background-color: ${c}`, + class: () => { + const act = current().toLowerCase() === c.toLowerCase(); + return `size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${act ? "ring-2 ring-offset-1 ring-primary z-10 scale-110" : ""}`; + }, + onclick: () => pick(c) + }))), + O("button", { + type: "button", + class: "btn btn-xs w-full", + onclick: () => close() + }, Icon("icon-[lucide--x]")) + ]; }; var Datepicker = (p2) => { const isOpen = S(false); @@ -972,7 +1009,7 @@ var Input = (p2) => { ]) : null ]), hint ? O("div", { class: "validator-hint" }, hint) : null, - z(isFocused, () => G({ duration: 300, slide: true }, O("div", { class: "input-content", onmousedown: (e) => e.preventDefault() }, [ + z(isFocused, () => fx({ duration: 300, slide: true }, O("div", { class: "input-content", onmousedown: (e) => e.preventDefault() }, [ isFn(content) ? content(isFocused) : content ]))) ]) @@ -1183,7 +1220,7 @@ var Toast = (message, type = "alert-success", duration = 3500) => { var Toggle = (p2) => O("input", { ...p2, type: "checkbox", class: cls("toggle", p2.class) }); var Tooltip = (p2, c) => O("div", { ...p2, class: cls("tooltip", p2.class), "data-tip": p2.tip }, c); -// utils.js +// sigpro-locale.js var i18n = { es: { close: "Cerrar", @@ -1208,7 +1245,7 @@ var tt = (t) => () => i18n[currentLocale()][t] || t; // index.js var Components = { - ...exports_All + ...exports_sigpro_components }; var Utils = { Locale, diff --git a/dist/sigpro-ui.esm.min.js b/dist/sigpro-ui.esm.min.js index a567de9..1229380 100644 --- a/dist/sigpro-ui.esm.min.js +++ b/dist/sigpro-ui.esm.min.js @@ -1 +1 @@ -var Gr=Object.defineProperty;var Xr=(r)=>r;function Qr(r,n){this[r]=Xr.bind(null,n)}var Ur=(r,n)=>{for(var f in n)Gr(r,f,{get:n[f],enumerable:!0,configurable:!0,set:Qr.bind(n,f)})};var tr={};Ur(tr,{rand:()=>yr,listKey:()=>Er,isFn:()=>W,getBy:()=>G,get:()=>C,filterBy:()=>lr,cls:()=>w,close:()=>wr,Tooltip:()=>On,Toggle:()=>Vn,Toast:()=>In,Timeline:()=>Bn,Textrotate:()=>qn,Textarea:()=>gn,Tabs:()=>Yn,TableItems:()=>Zn,Table:()=>Kn,SwapToggle:()=>Wr,SwapOn:()=>Lr,SwapOff:()=>Jr,Swap:()=>Ar,Steps:()=>Qn,Step:()=>Un,Stack:()=>Xn,SkeletonText:()=>Gn,Skeleton:()=>Rn,Select:()=>Pn,RatingItems:()=>zn,Rating:()=>kn,Range:()=>$n,Radio:()=>Tn,Radial:()=>Jn,Progress:()=>Ln,Navbar:()=>Wn,Modal:()=>An,Menu:()=>Cn,Loading:()=>jn,ListRows:()=>Sn,List:()=>Nn,Kbd:()=>bn,Input:()=>Cr,Indicator:()=>sn,Icon:()=>d,Fileinput:()=>En,Fieldset:()=>wn,Fab:()=>yn,DropdownContent:()=>jr,DropdownButton:()=>Sr,Dropdown:()=>ir,DrawerToggle:()=>an,DrawerSide:()=>un,DrawerOverlay:()=>en,DrawerContent:()=>_n,Drawer:()=>on,Divider:()=>ln,Datepicker:()=>fn,Colorpicker:()=>tn,ColorPalette:()=>Nr,Checkbox:()=>nn,ChatImage:()=>rn,ChatHeader:()=>pr,ChatFooter:()=>hr,ChatBubble:()=>cr,Chat:()=>vr,CarouselItem:()=>Mr,Carousel:()=>mr,CardTitle:()=>Dr,CardBody:()=>dr,CardActions:()=>Fr,Card:()=>Hr,Calendar:()=>br,Button:()=>sr,Badge:()=>xr,Autocomplete:()=>Or,Alert:()=>Vr,Accordion:()=>Ir});var z=(r)=>typeof r==="function",p=(r)=>r&&typeof r==="object",Z=Array.isArray,P=typeof document<"u"?document:null,or=(r)=>r?._isRuntime?r.container:r instanceof Node?r:P.createTextNode(r==null?"":String(r)),A=null,J=null,I=!1,O=0,x=new Set,ar=new WeakMap,c=Symbol("iter"),h=new WeakMap,U=(r)=>{if(!r||r._disposed)return;r._disposed=!0;let n=[r];while(n.length){let f=n.pop();if(f._cleanups)f._cleanups.forEach((o)=>o()),f._cleanups.clear();if(f._children)f._children.forEach((o)=>n.push(o)),f._children.clear();if(f._deps)f._deps.forEach((o)=>o.delete(f)),f._deps.clear()}},Y=(r)=>{if(J)(J._cleanups||=new Set).add(r)},Kr=(r)=>{let n=A;A=null;try{return r()}finally{A=n}},V=(r,n=!1)=>{let f=()=>{if(f._disposed)return;if(f._deps)f._deps.forEach((u)=>u.delete(f));if(f._cleanups)f._cleanups.forEach((u)=>u()),f._cleanups.clear();let o=A,_=J;A=J=f;try{return f._result=r()}catch(u){console.error("[SigPro]",u)}finally{A=o,J=_}};if(f._deps=f._cleanups=f._children=null,f._disposed=!1,f._isComputed=n,f._depth=A?A._depth+1:0,f._mounts=[],f._parent=J,J)(J._children||=new Set).add(f);return f},ur=()=>{if(I)return;I=!0;let r=Array.from(x).sort((n,f)=>n._depth-f._depth);x.clear();for(let n of r)if(!n._disposed)n();I=!1},Zr=(r)=>{O++;try{return r()}finally{if(O--,O===0&&x.size>0&&!I)ur()}},k=(r,n=!1)=>{if(!n&&A&&!A._disposed)r.add(A),(A._deps||=new Set).add(r);else if(n&&r.size>0){let f=!1;for(let o of r){if(o===A||o._disposed)continue;if(o._isComputed){if(o._dirty=!0,o._subs)k(o._subs,!0)}else x.add(o),f=!0}if(f&&!I&&O===0)queueMicrotask(ur)}},j=(r,n=null)=>{let f=new Set;if(z(r)){let o,_=()=>{if(_._dirty){let u=A;A=_;try{let a=r();if(!Object.is(o,a))o=a,k(f,!0)}finally{A=u}_._dirty=!1}return k(f),o};if(_._isComputed=!0,_._subs=f,_._dirty=!0,_._deps=null,_._disposed=!1,_.stop=()=>{},J)Y(_.stop);return _}if(n)try{r=JSON.parse(localStorage.getItem(n))??r}catch(o){}return(...o)=>{if(o.length){let _=z(o[0])?o[0](r):o[0];if(!Object.is(r,_)){if(r=_,n)localStorage.setItem(n,JSON.stringify(r));k(f,!0)}}return k(f),r}},er=(r)=>{if(!p(r))return r;let n=ar.get(r);if(n)return n;let f=new Map,o=(u)=>{let a=f.get(u);if(!a)f.set(u,a=new Set);return a},_=new Proxy(r,{get(u,a,e){if(typeof a!=="symbol")k(o(a));return er(Reflect.get(u,a,e))},set(u,a,e,l){let y=Reflect.has(u,a),E=Reflect.get(u,a,l),s=Reflect.set(u,a,e,l);if(s&&!Object.is(E,e)){if(k(o(a),!0),!y)k(o(c),!0)}return s},deleteProperty(u,a){let e=Reflect.deleteProperty(u,a);if(e)k(o(a),!0),k(o(c),!0);return e},ownKeys(u){return k(o(c)),Reflect.ownKeys(u)}});return ar.set(r,_),_},K=(r,n)=>{if(n===void 0){let o=V(r);return o(),()=>U(o)}let f=V(()=>{let o=Array.isArray(r)?r.map((_)=>_()):r();Kr(()=>n(o))});return f(),()=>U(f)},rr=(r)=>{if(!r)return;if(r._cleanups)r._cleanups.forEach((n)=>n()),r._cleanups.clear();if(r._ownerEffect)U(r._ownerEffect);if(r.childNodes)r.childNodes.forEach((n)=>rr(n))},Yr=/^\s*(javascript|data|vbscript):/i,gr=(r)=>r==="src"||r==="href"||r.startsWith("on"),_r=(r,n)=>{if(n==null||n===!1)return null;if(gr(r)){let f=String(n);if(Yr.test(f))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${r}`),"#"}return n},t=(r,n={},f=[])=>{if(n instanceof Node||Z(n)||!p(n))f=n,n={};if(z(r)){let a=V(()=>{let E=r(n,{children:f,emit:(s,...N)=>n[`on${s[0].toUpperCase()}${s.slice(1)}`]?.(...N)});return a._result=E,E});a();let e=a._result;if(e==null)return null;let l=e instanceof Node||Z(e)&&e.every((E)=>E instanceof Node)?e:P.createTextNode(String(e)),y=(E)=>{if(p(E)&&!E._isRuntime)E._mounts=a._mounts||[],E._cleanups=a._cleanups||new Set,E._ownerEffect=a};return Z(l)?l.forEach(y):y(l),l}let o=/^(svg|path|circle|rect|line|poly(line|gon)|g|defs|text(path)?|tspan|use|symbol|image|marker|ellipse)$/i.test(r),_=o?P.createElementNS("http://www.w3.org/2000/svg",r):P.createElement(r);_._cleanups=new Set;for(let a in n){if(!n.hasOwnProperty(a))continue;let e=n[a];if(a==="ref"){z(e)?e(_):e.current=_;continue}if(o&&a.startsWith("xlink:")){e==null?_.removeAttributeNS("http://www.w3.org/1999/xlink",a.slice(6)):_.setAttributeNS("http://www.w3.org/1999/xlink",a.slice(6),e);continue}if(a.startsWith("on")){let l=a.slice(2).toLowerCase();_.addEventListener(l,e);let y=()=>_.removeEventListener(l,e);_._cleanups.add(y),Y(y)}else if(z(e)){let l=V(()=>{let y=_r(a,e());if(a==="class")_.className=y||"";else if(y==null)_.removeAttribute(a);else if(a in _&&!o)_[a]=y;else _.setAttribute(a,y===!0?"":y)});if(l(),_._cleanups.add(()=>U(l)),Y(()=>U(l)),/^(INPUT|TEXTAREA|SELECT)$/.test(_.tagName)&&(a==="value"||a==="checked")){let y=a==="checked"?"change":"input";_.addEventListener(y,(E)=>e(E.target[a]))}}else{let l=_r(a,e);if(l!=null)if(a in _&&!o)_[a]=l;else _.setAttribute(a,l===!0?"":l)}}let u=(a)=>{if(Z(a))return a.forEach(u);if(z(a)){let e=P.createTextNode("");_.appendChild(e);let l=[],y=V(()=>{let E=a(),s=(Z(E)?E:[E]).map(or);l.forEach((i)=>{if(i._isRuntime)i.destroy();else rr(i);if(i.parentNode)i.remove()});let N=e;for(let i=s.length-1;i>=0;i--){let b=s[i];if(b.parentNode!==N.parentNode)N.parentNode?.insertBefore(b,N);if(b._mounts)b._mounts.forEach((S)=>S());N=b}l=s});y(),_._cleanups.add(()=>U(y)),Y(()=>U(y))}else{let e=or(a);if(_.appendChild(e),e._mounts)e._mounts.forEach((l)=>l())}};return u(f),_},H=(r)=>{let n=new Set,f=J,o=A,_=P.createElement("div");_.style.display="contents",_.setAttribute("role","presentation"),J={_cleanups:n},A=null;let u=(a)=>{if(!a)return;if(a._isRuntime)n.add(a.destroy),_.appendChild(a.container);else if(Z(a))a.forEach(u);else _.appendChild(a instanceof Node?a:P.createTextNode(String(a==null?"":a)))};try{u(r({onCleanup:(a)=>n.add(a)}))}finally{J=f,A=o}return{_isRuntime:!0,container:_,destroy:()=>{n.forEach((a)=>a()),rr(_),_.remove()}}},g=(r,n,f=null)=>{let o=P.createTextNode(""),_=t("div",{style:"display:contents"},[o]),u=null;return K(()=>!!(z(r)?r():r),(a)=>{if(u)u.destroy(),u=null;let e=a?n:f;if(e)u=H(()=>z(e)?e():e),_.insertBefore(u.container,o)}),Y(()=>u?.destroy()),_},D=({name:r,duration:n=200,scale:f,slide:o,rotate:_,blur:u},a)=>{let e=typeof a==="function"?a():a;if(!(e instanceof Node))return e;if(r)return e.style.animation=`${r}-in ${n}ms`,e;let l=f||o||_||u,y=[f?"scale(0.95)":"",o?"translateY(-10px)":"",_?"rotate(-2deg)":""].filter(Boolean).join(" ");if(e.style.transition=`all ${n}ms ease`,e.style.opacity="0",l)e.style.transform=y;if(u)e.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(e.style.opacity="1",l)e.style.transform="none";if(u)e.style.filter="none"}),e},X=(r,n,f)=>{let o=P.createTextNode(""),_=t("div",{style:"display:contents"},[o]),u=new Map;return K(()=>(z(r)?r():r)||[],(a)=>{let e=new Map,l=[],y=a||[];for(let s=0;sn(N,s));else u.delete(i);e.set(i,b),l.push(b)}u.forEach((s)=>s.destroy());let E=o;for(let s=l.length-1;s>=0;s--){let N=l[s].container;if(N.nextSibling!==E)_.insertBefore(N,E);E=N}u=e}),_},q=(r)=>{let n=()=>window.location.hash.slice(1)||"/",f=j(n()),o=()=>f(n());window.addEventListener("hashchange",o),Y(()=>window.removeEventListener("hashchange",o));let _=t("div",{class:"router-hook"}),u=null;return K([f],()=>{let a=f(),e=r.find((l)=>{let y=l.path.split("/").filter(Boolean),E=a.split("/").filter(Boolean);return y.length===E.length&&y.every((s,N)=>s[0]===":"||s===E[N])})||r.find((l)=>l.path==="*");if(e){u?.destroy();let l={};e.path.split("/").filter(Boolean).forEach((y,E)=>{if(y[0]===":")l[y.slice(1)]=a.split("/").filter(Boolean)[E]}),q.params(l),u=H(()=>z(e.component)?e.component(l):e.component),_.replaceChildren(u.container)}}),_};q.params=j({});q.to=(r)=>window.location.hash=r.replace(/^#?\/?/,"#/");q.back=()=>window.history.back();q.path=()=>window.location.hash.replace(/^#/,"")||"/";var qr=({url:r,method:n="GET",headers:f={}})=>{let o=j(!1),_=j(null),u=j(null),a=null,e=null;return{run:async(l=null)=>{a?.abort(),clearTimeout(e),a=new AbortController,e=setTimeout(()=>a.abort(),1e4),o(!0),_(null);try{let y=l instanceof FormData,E=await fetch(r,{method:n,headers:y?f:{"Content-Type":"application/json",...f},body:y?l:l?JSON.stringify(l):void 0,signal:a.signal}),s=await E.text(),N=s?JSON.parse(s):null;if(!E.ok)throw Error(N?.message||E.statusText);return u(N),N}catch(y){if(y.name!=="AbortError")_(y.message);throw y}finally{o(!1),clearTimeout(e),a=null,e=null}},abort:()=>a?.abort(),loading:o,error:_,data:u}},nr=(r,n)=>{let f=typeof n==="string"?P.querySelector(n):n;if(!f)return;if(h.has(f))h.get(f).destroy();let o=H(z(r)?r:()=>r);return f.replaceChildren(o.container),h.set(f,o),o},Br=Object.freeze({$:j,$$:er,watch:K,h:t,when:g,each:X,fx:D,router:q,req:qr,mount:nr,batch:Zr});if(typeof window<"u")Object.assign(window,Br),"a abbr article aside audio b blockquote br button canvas caption cite code col colgroup datalist dd del details dfn dialog div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 header hr i iframe img input ins kbd label legend li main mark meter nav object ol optgroup option output p picture pre progress section select slot small source span strong sub summary sup svg table tbody td template textarea tfoot th thead time tr u ul video".split(" ").forEach((r)=>{window[r]=(n,f)=>t(r,n,f)});var C=(r)=>typeof r==="function"?r():r,G=(r,n="label")=>r&&typeof r==="object"?r[n]:r,w=(...r)=>r.filter(Boolean).join(" ").trim(),W=(r)=>typeof r==="function",lr=(r,n,f="label",o=String(n).toLowerCase())=>!n?C(r):C(r).filter((_)=>String(_&&typeof _==="object"?_[f]:_).toLowerCase().includes(o)),yr=(r)=>`${r}-${Math.random().toString(36).slice(2,9)}`,wr=()=>document.activeElement?.blur(),Er=(r,n)=>{let f=j(-1);return{cursor:f,onKey:(_,u)=>{let a=C(r),e=f(),l=a.length;if(!l)return;let y=_.key;y==="ArrowDown"?(_.preventDefault(),n(!0),f(Math.min(e+1,l-1))):y==="ArrowUp"?(_.preventDefault(),f(Math.max(e-1,0))):y==="Enter"?e>=0&&(_.preventDefault(),u(a[e])):y==="Escape"&&(n(!1),f(-1))}}},Ir=(r)=>{let n=r.name||yr("acc");return X(r.items,(f)=>{return t("div",{class:w("collapse",r.class)},[t("input",{type:"radio",name:n,checked:f.open||void 0}),f.title?t("div",{class:w("collapse-title",`${f.classTitle??" font-semibold"}`)},f.title):null,f.content?t("div",{class:w("collapse-content text-sm",`${f.classContent??" font-semibold"}`)},f.content):null])})},Vr=(r,n)=>t("div",{...r,class:w("alert",r.class)},n),Or=({items:r,value:n,onselect:f,placeholder:o="Buscar...",..._})=>{let u=j(C(n)||""),a=j(!1),e=j(()=>lr(r,u())),{cursor:l,onKey:y}=Er(e,a),E=(s)=>{let N=G(s),i=typeof s==="string"?s:s.value;if(u(N),W(n))n(i);f?.(s),a(!1)};return t("div",{class:"relative w-full"},[Cr({..._,type:"text",placeholder:o,value:u,left:t("span",{class:"icon-[lucide--search]"}),oninput:(s)=>{if(u(s.target.value),W(n))n(s.target.value);a(!0)},onfocus:()=>a(!0),onblur:()=>setTimeout(()=>{a(!1),l(-1)},150),onkeydown:(s)=>y(s,E)}),g(a,()=>D({duration:200,slide:!0},t("ul",{class:"absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap"},[X(e,(s,N)=>t("li",{},[t("a",{class:()=>l()===N?"active bg-primary text-primary-content":"",onmousedown:(i)=>i.preventDefault(),onclick:()=>E(s),onmouseenter:()=>l(N)},G(s))]),(s,N)=>G(s)+N),()=>e().length===0?t("li",{class:"p-4 opacity-50 text-center"},"Sin resultados"):null])))])},xr=(r,n)=>t("span",{...r,class:w("badge",r.class)},n),sr=(r,n)=>t("button",{...r,class:w("btn",r.class)},n),br=(r)=>{let n=j(new Date),f=j(null),o=j(0),_=j(0),u=new Date,a=`${u.getFullYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`,e=(b)=>`${b.getFullYear()}-${String(b.getMonth()+1).padStart(2,"0")}-${String(b.getDate()).padStart(2,"0")}`,l=()=>C(r.range)===!0,y=()=>C(r.value),E=(b)=>{let S=e(b),L=y();if(l())if(!L?.start||L.start&&L.end)r.onChange?.({start:S,end:null,...r.hour&&{startHour:o()}});else{let T=L.start,B=S{let S=n();n(new Date(S.getFullYear(),S.getMonth()+b,1))},N=(b)=>{let S=n();n(new Date(S.getFullYear()+b,S.getMonth(),1))},i=({value:b,onChange:S})=>t("div",{class:"flex-1"},[t("div",{class:"flex gap-2 items-center"},[t("input",{type:"range",min:0,max:23,value:b,class:"range range-xs flex-1",oninput:(L)=>S(+L.target.value)}),t("span",{class:"text-sm font-mono min-w-[48px] text-center"},()=>String(C(b)).padStart(2,"0")+":00")])]);return t("div",{class:w("p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box w-80 select-none",r.class)},[t("div",{class:"flex justify-between items-center mb-4 gap-1"},[t("div",{class:"flex gap-0.5"},[t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>N(-1)},t("span",{class:"icon-[lucide--chevrons-left]"})),t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>s(-1)},t("span",{class:"icon-[lucide--chevron-left]"}))]),t("span",{class:"font-bold uppercase flex-1 text-center"},()=>n().toLocaleString("es-ES",{month:"short",year:"numeric"})),t("div",{class:"flex gap-0.5"},[t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>s(1)},t("span",{class:"icon-[lucide--chevron-right]"})),t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>N(1)},t("span",{class:"icon-[lucide--chevrons-right]"}))])]),t("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>f(null)},[...["L","M","X","J","V","S","D"].map((b)=>t("div",{class:"text-[10px] opacity-40 font-bold text-center"},b)),()=>{let b=n(),S=b.getFullYear(),L=b.getMonth(),T=new Date(S,L,1).getDay(),B=T===0?6:T-1,zr=new Date(S,L+1,0).getDate(),F=[];for(let Q=0;Q{let R=y(),m=f(),Pr=typeof R==="string"?R.split("T")[0]===$:R?.start===$,Rr=R?.end===$,M=!1;if(l()&&R?.start){let v=R.start;if(!R.end&&m)M=$>v&&$<=m||$=m;else if(R.end)M=$>v&&$l()&&f($),onclick:()=>E(fr)},Q.toString()))}return F}]),r.hour?t("div",{class:"mt-3 pt-2 border-t border-base-300"},l()?t("div",{class:"flex gap-4"},[i({value:o,onChange:(b)=>o(b)}),i({value:_,onChange:(b)=>_(b)})]):i({value:o,onChange:(b)=>o(b)})):null])},Hr=(r,n)=>t("div",{...r,class:w("card",r.class)},n),Dr=(r,n)=>t("div",{...r,class:w("card-title",r.class)},n),dr=(r,n)=>t("div",{...r,class:w("card-body",r.class)},n),Fr=(r,n)=>t("div",{...r,class:w("card-actions",r.class)},n),mr=(r,n)=>t("div",{...r,class:w("carousel",r.class)},n),Mr=(r,n)=>t("div",{...r,class:w("carousel-item",r.class)},n),vr=(r,n)=>t("div",{...r,class:w("chat",r.class)},n),cr=(r,n)=>t("div",{...r,class:w("chat-bubble",r.class)},n),hr=(r,n)=>t("div",{...r,class:w("chat-footer",r.class)},n),pr=(r,n)=>t("div",{...r,class:w("chat-header",r.class)},n),rn=(r,n)=>t("div",{...r,class:w("chat-image avatar",r.class)},t("div",{class:"w-10 rounded-full"},typeof n==="string"?t("img",{src:n,alt:"avatar"}):n)),nn=(r)=>t("input",{...r,type:"checkbox",class:w("checkbox",r.class)}),tn=(r)=>{let n=()=>C(r.value)||"#000000";return ir({},[Sr({class:"btn"},[t("div",{class:"size-5 rounded-sm",style:()=>`background-color: ${n()}`}),r.label&&t("span",{},r.label)]),jr({class:"p-3 bg-base-100 rounded-box shadow-xl w-64"},Nr({value:r.value,onchange:(f)=>{W(r.value)?r.value(f):r.onchange?.(f),wr()}}))])},Nr=(r)=>{let n=()=>C(r.value)||"#000000",f=["#000","#1A1A1A","#333","#4D4D4D","#666","#808080","#B3B3B3","#FFF","#450a0a","#7f1d1d","#991b1b","#b91c1c","#dc2626","#ef4444","#f87171","#fca5a5","#431407","#7c2d12","#9a3412","#c2410c","#ea580c","#f97316","#fb923c","#ffedd5","#713f12","#a16207","#ca8a04","#eab308","#facc15","#fde047","#fef08a","#fff9c4","#064e3b","#065f46","#059669","#10b981","#34d399","#4ade80","#84cc16","#d9f99d","#082f49","#075985","#0284c7","#0ea5e9","#38bdf8","#7dd3fc","#22d3ee","#cffafe","#1e1b4b","#312e81","#4338ca","#4f46e5","#6366f1","#818cf8","#a5b4fc","#e0e7ff","#2e1065","#4c1d95","#6d28d9","#7c3aed","#8b5cf6","#a855f7","#d946ef","#fae8ff"],o=(_)=>W(r.value)?r.value(_):r.onchange?.(_);return t("div",{class:"grid grid-cols-8 gap-1"},f.map((_)=>t("button",{type:"button",style:`background-color: ${_}`,class:()=>{return`size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${n().toLowerCase()===_.toLowerCase()?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`},onclick:()=>o(_)})))},fn=(r)=>{let n=j(!1),f=j(""),o=()=>C(r.range)===!0;K(()=>{let u=C(r.value);if(!u)return f("");let a="";if(typeof u==="string")a=r.hour&&u.includes("T")?u.replace("T"," "):u;else if(u.start&&u.end){let e=r.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start,l=r.hour&&u.endHour!=null?`${u.end} ${String(u.endHour).padStart(2,"0")}:00`:u.end;a=`${e} - ${l}`}else if(u.start)a=`${r.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start}...`;f(a)});let _=(u)=>{if(W(r.value))r.value(u);else r.onChange?.(u);if(!o()||u?.end!=null)n(!1)};return t("div",{class:w("relative w-full",r.class)},[t("label",{class:"input input-bordered w-full",onclick:(u)=>{u.stopPropagation(),n(!n())}},[t("span",{class:"icon-[lucide--calendar]"}),t("input",{...r,type:"text",class:"grow",value:f,readonly:!0,placeholder:r.placeholder||(o()?"Seleccionar rango...":"Seleccionar fecha...")})]),g(n,()=>[t("div",{class:"fixed inset-0 z-[90]",onclick:()=>n(!1)}),t("div",{class:"absolute left-0 mt-2 z-[100]",onclick:(u)=>u.stopPropagation()},br({value:r.value,range:o(),hour:r.hour,onChange:_}))])])},on=(r,n)=>div({...r,class:w("drawer",r.class)},n),an=(r)=>input({...r,type:"checkbox",class:"drawer-toggle",checked:()=>C(r.checked),onchange:(n)=>W(r.checked)&&r.checked(n.target.checked)}),_n=(r,n)=>div({...r,class:w("drawer-content",r.class)},n),un=(r,n)=>div({...r,class:w("drawer-side",r.class)},n),en=(r)=>label({...r,for:r.for,class:w("drawer-overlay",r.class)}),ln=(r)=>t("div",{...r,class:w("divider",r.class)}),ir=(r,n)=>t("div",{...r,class:w("dropdown",r.class)},n),Sr=(r,n)=>t("div",{...r,tabindex:"0",role:"button",class:w("btn",r.class)},n),jr=(r,n)=>t("div",{...r,tabindex:"0",class:w("dropdown-content",r.class)},n),yn=(r,n)=>t("div",{class:"fab"},[t("div",{tabindex:"0",role:"button",class:w("btn",r.class)},d(r.icon)),n]),wn=(r,n)=>t("fieldset",{class:w("fieldset",r.class)},[t("legend",{class:"fieldset-legend"},r.label),n]),En=(r)=>{let n=j([]),f=j(!1),o=j(null),_=(r.max||2)*1024*1024,u=(e)=>{let l=Array.from(e);if(o(null),l.some((E)=>E.size>_)){o(`Máx ${r.max||2}MB`);return}let y=[...n(),...l];if(n(y),W(r.onselect))r.onselect(y);else if(W(r.value))r.value(y)},a=(e)=>{let l=n().filter((y,E)=>E!==e);if(n(l),W(r.onselect))r.onselect(l);else if(W(r.value))r.value(l)};return t("div",{class:w("fieldset w-full p-0",r.class)},[t("label",{class:()=>`relative flex items-center justify-between w-full h-12 px-4 border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200 ${f()?"border-primary bg-primary/10":"border-base-content/20 bg-base-100 hover:bg-base-200"}`,ondragover:(e)=>{e.preventDefault(),f(!0)},ondragleave:()=>f(!1),ondrop:(e)=>{e.preventDefault(),f(!1),u(e.dataTransfer.files)}},[t("div",{class:"flex items-center gap-3 w-full"},[t("span",{class:"icon-[lucide--upload]"}),t("span",{class:"text-sm opacity-70 truncate grow text-left"},"Arrastra o selecciona archivos..."),t("span",{class:"text-[10px] opacity-40 shrink-0"},`Máx ${r.max||2}MB`)]),t("input",{type:"file",multiple:!0,accept:r.accept||"*",class:"hidden",onchange:(e)=>u(e.target.files)})]),()=>o()&&t("span",{class:"text-[10px] text-error mt-1 px-1 font-medium"},o()),g(()=>n().length>0,()=>t("ul",{class:"mt-2 space-y-1"},X(n,(e,l)=>t("li",{class:"flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300"},[t("div",{class:"flex items-center gap-2 truncate"},[t("span",{class:"opacity-50"},"\uD83D\uDCC4"),t("span",{class:"truncate font-medium max-w-[200px]"},e.name),t("span",{class:"text-[9px] opacity-40"},`(${(e.size/1024).toFixed(0)} KB)`)]),t("button",{type:"button",class:"btn btn-ghost btn-xs btn-circle",onclick:(y)=>{y.preventDefault(),a(l)}},t("span",{class:"icon-[lucide--x]"}))]))))])},d=(r)=>t("span",{class:r.startsWith("icon-")?r:""},r.startsWith("icon-")?null:r),sn=(r,n)=>t("div",{...r,class:w("indicator",r.class)},[r.value&&t("span",{class:w("indicator-item badge",r.class)},r.value),n]),Cr=(r)=>{let{label:n,icon:f,float:o,placeholder:_,value:u,left:a,right:e,rule:l,hint:y,content:E,...s}=r,N=j(!1),i=j(!1),b=r.type==="password",S=l??null,L=()=>b?C(N)?"text":"password":r.type||"text";return t("div",{class:"input-container",onfocusin:()=>i(!0),onfocusout:(T)=>{if(!T.currentTarget.contains(T.relatedTarget))i(!1)}},[t("label",{class:o?"floating-label":""},[o?t("span",{},n):null,t("label",{pattern:S,class:()=>w("input validator",r.class)},[n&&!o?t("span",{class:"label"},n):null,a??null,t("input",{...s,type:L,class:"grow",pattern:S,placeholder:_||n||" ",value:u}),e??null,b?Ar({class:"ml-2"},[Wr({value:N,class:"swap-rotate"}),Lr({},d("icon-[lucide--eye]")),Jr({},d("icon-[lucide--eye-off]"))]):null]),y?t("div",{class:"validator-hint"},y):null,g(i,()=>D({duration:300,slide:!0},t("div",{class:"input-content",onmousedown:(T)=>T.preventDefault()},[W(E)?E(i):E])))])])},bn=(r,n)=>t("kbd",{...r,class:w("kbd",r.class)},n),Nn=(r,n)=>t("ul",{...r,class:w("list",r.class)},n),Sn=(r)=>()=>(C(r.items)||[]).map((n,f)=>t("li",{class:w("list-row",r.class,n?.class)},typeof r.render==="function"?r.render(n,f):n)),jn=(r,n)=>t("span",{...r,class:w("loading loading-spinner",r.class)},n),Cn=(r)=>{if(r.children!==void 0)return t("ul",{class:w("menu",r.class),...r},r.children);let{items:n}=r,f=(o)=>o.children?t("li",{},t("details",{open:o.open||void 0},[t("summary",{},G(o)),t("ul",{},X(()=>C(o.children)||[],f))])):t("li",{},t("a",{href:o.href,onclick:o.onclick?(_)=>{if(!o.href)_.preventDefault();o.onclick(_)}:null},G(o)));return t("ul",{class:w("menu",r.class)},X(()=>C(n)||[],f))},An=(r)=>{let n=null;K(()=>{let o=C(r.open);if(!n)return;o?n.showModal():n.close()});let f=()=>W(r.open)&&r.open(!1);return t("dialog",{...r,ref:(o)=>n=o,class:w("modal",r.class),onclose:f,oncancel:f},[t("div",{class:"modal-box"},[r.title&&t("h3",{class:"text-lg font-bold"},r.title),r.children,t("div",{class:"modal-action"},[r.actions||sr({class:"btn",onclick:f},"Cerrar")])]),t("form",{method:"dialog",class:"modal-backdrop"},[t("button",{},"close")])])},Wn=(r,n)=>t("div",{...r,class:w("navbar",r.class)},n),Ln=(r)=>t("progress",{...r,class:w("progress",r.class)}),Jn=(r,n)=>t("div",{...r,class:w("radial-progress",r.class),style:`--value:${r.value??0};${r.style??""}`,role:"progressbar","aria-valuenow":r.value??0},n??`${r.value??0}%`),Tn=(r)=>t("input",{...r,type:"radio",class:w("radio",r.class)}),$n=(r)=>t("input",{...r,type:"range",class:w("range",r.class)}),kn=(r,n)=>t("div",{...r,class:"rating"},n),zn=(r)=>[...Array(r.count)].map((n,f)=>t("input",{class:w("mask",r.class),name:r.name,type:"radio",checked:()=>C(r.value)===f,onchange:()=>W(r.value)?r.value(f):r.onchange?.(f)})),Pn=(r,n)=>{if(n!==void 0)return t("select",{class:w("select",r.class),...r},n);let{label:f,float:o,placeholder:_,placeholderDisabled:u=!0,value:a,left:e,right:l,hint:y,items:E,keyFn:s,...N}=r,i=()=>{let b=C(E)||[];return[..._?[{disabled:u,label:_,value:""}]:[],...b]};return t("label",{class:o?"floating-label":""},[o?t("span",{},f):null,t("label",{class:w("select",N.class)},[!o&&f?t("span",{class:"label"},f):null,e??null,t("select",{value:()=>C(a),onchange:(b)=>W(a)?a(b.target.value):N.onchange?.(b)},X(i,(b)=>{let S=G(b,b.value!==void 0?"value":void 0),L=G(b,"label");return t("option",{value:S,disabled:b.disabled||void 0},L)})),l??null]),y?t("div",{class:"validator-hint"},y):null])},Rn=(r)=>t("div",{...r,class:w("skeleton",r.class)}),Gn=(r)=>t("span",{...r,class:w("skeleton skeleton-text",r.class)}),Xn=(r,n)=>t("div",{...r,class:w("stack",r.class)},n),Qn=(r,n)=>t("ul",{...r,class:w("steps",r.class)},n),Un=(r,n)=>t("li",{...r,class:w("step",r.class),"data-content":r.dataContent},n),Ar=(r,n)=>t("label",{...r,class:w("swap",r.class)},n),Wr=(r)=>t("input",{type:"checkbox",checked:()=>C(r.value),onchange:(n)=>W(r.value)&&r.value(n.target.checked),class:r.class}),Lr=(r,n)=>t("div",{...r,class:w("swap-on",r.class)},n),Jr=(r,n)=>t("div",{...r,class:w("swap-off",r.class)},n),Kn=(r,n)=>t("table",{...r,class:w("table",r.class)},n),Zn=({items:r,columns:n=[],header:f=!0})=>{let o=f!==!1&&n.some((u)=>u.label)?t("thead",{},t("tr",{},n.map((u)=>t("th",{class:u.class},u.label)))):null,_=t("tbody",{},()=>{return(C(r)||[]).map((a,e)=>t("tr",{},n.map((l)=>{let y=l.render?l.render(a,e):a[l.key];return t("td",{class:l.class},y)})))});return[o,_].filter(Boolean)},Yn=(r,n)=>{if(!r.items){let{class:y,...E}=r;return t("div",{...E,class:w("tabs",y)},n)}let{items:f,activeIndex:o,onClose:_,class:u,...a}=r,e=(y)=>W(y)?y():y,l=_||(W(f)?(y,E)=>{let N=e(f).filter((i,b)=>b!==y);if(f(N),o()>=N.length)o(Math.max(0,N.length-1))}:null);return t("div",{...a,class:w("tabs",u)},()=>{return(e(f)||[]).flatMap((E,s)=>{let N=()=>o()===s,i=t("button",{class:()=>`tab ${N()?"tab-active":""} ${E.class||""}`,onclick:(S)=>{S.preventDefault(),o(s),E.onclick?.(S)}},[G(E),E.closable?t("span",{class:"ml-1 inline-flex items-center justify-center w-4 h-4 rounded-full hover:bg-base-300 text-base-content/60 hover:text-base-content cursor-pointer",onclick:(S)=>{S.stopPropagation(),l?.(s,E)}},t("span",{class:"icon-[lucide--x] w-3 h-3"})):null]),b=t("div",{class:"tab-content bg-base-100 border-base-300 p-6",style:()=>`display: ${N()?"block":"none"};`},W(E.content)?E.content():E.content);return[i,b]})})},gn=(r)=>t("textarea",{...r,class:w("textarea",r.class)}),qn=(r,n)=>t("span",{...r,class:w("text-rotate",r.class)},n),Bn=(r,n)=>t("ul",{...r,class:w("timeline",r.class)},n),In=(r,n="alert-success",f=3500)=>{let o=document.getElementById("sigpro-toast-container");if(!o)o=t("div",{id:"sigpro-toast-container",class:"fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none"}),document.body.appendChild(o);let _=t("div",{style:"display: contents"});o.appendChild(_);let u,a,e,y=nr(()=>{let E=j(!1),s=j(!1);u=()=>{if(s())return;clearTimeout(a),clearTimeout(e),s(!0),setTimeout(()=>{if(y.destroy(),_.remove(),!o.hasChildNodes())o.remove()},300)},e=setTimeout(()=>E(!0),0);let N=typeof r==="function"?C(r):r,i=typeof N==="string"?t("span",{},N):N;return t("div",{class:()=>{if(s())return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-full opacity-0 pointer-events-auto`;if(E())return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-0 opacity-100 pointer-events-auto`;return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto`}},[i,t("button",{class:"btn btn-xs btn-circle btn-ghost",onclick:u},t("span",{class:"icon-[lucide--x]"}))])},_);if(f>0)a=setTimeout(u,f);return u},Vn=(r)=>t("input",{...r,type:"checkbox",class:w("toggle",r.class)}),On=(r,n)=>t("div",{...r,class:w("tooltip",r.class),"data-tip":r.tip},n);var xn={es:{close:"Cerrar",confirm:"Confirmar",cancel:"Cancelar",search:"Buscar...",loading:"Cargando...",nodata:"Sin datos"},en:{close:"Close",confirm:"Confirm",cancel:"Cancel",search:"Search...",loading:"Loading...",nodata:"No data"}},Tr=j("es"),$r=(r)=>Tr(r),kr=(r)=>()=>xn[Tr()][r]||r;var Hn={...tr},Dn={Locale:$r,tt:kr};if(typeof window<"u")Object.entries({...Hn,...Dn}).forEach(([r,n])=>{Object.defineProperty(window,r,{value:n,writable:!1,configurable:!0,enumerable:!0})}),console.log("SigProUI DX installed");export{Dn as Utils,Hn as Components}; +var xt=Object.defineProperty;var qt=(t)=>t;function zt(t,r){this[t]=qt.bind(null,r)}var Kt=(t,r)=>{for(var e in r)xt(t,e,{get:r[e],enumerable:!0,configurable:!0,set:zt.bind(r,e)})};var ot={};Kt(ot,{Tooltip:()=>Zr,Toggle:()=>Yr,Toast:()=>Qr,Timeline:()=>Xr,Textrotate:()=>Ur,Textarea:()=>Pr,Tabs:()=>Mr,TableItems:()=>Gr,Table:()=>Br,SwapToggle:()=>kt,SwapOn:()=>At,SwapOff:()=>$t,Swap:()=>jt,Steps:()=>zr,Step:()=>Kr,Stack:()=>qr,SkeletonText:()=>xr,Skeleton:()=>Wr,Select:()=>Rr,RatingItems:()=>Jr,Rating:()=>Lr,Range:()=>mr,Radio:()=>gr,Radial:()=>$r,Progress:()=>Ar,Navbar:()=>kr,Modal:()=>jr,Menu:()=>Cr,Loading:()=>Tr,ListRows:()=>Sr,List:()=>Nr,Kbd:()=>Er,Input:()=>Ct,Indicator:()=>br,Icon:()=>X,Fileinput:()=>dr,Fieldset:()=>wr,Fab:()=>yr,DropdownContent:()=>Tt,DropdownButton:()=>St,Dropdown:()=>Nt,DrawerToggle:()=>ar,DrawerSide:()=>sr,DrawerOverlay:()=>ir,DrawerContent:()=>ur,Drawer:()=>fr,Divider:()=>_r,Datepicker:()=>lr,Colorpicker:()=>or,ColorPalette:()=>Et,Checkbox:()=>er,ChatImage:()=>nr,ChatHeader:()=>rr,ChatFooter:()=>tr,ChatBubble:()=>pt,Chat:()=>ht,CarouselItem:()=>vt,Carousel:()=>Ft,CardTitle:()=>ct,CardBody:()=>Dt,CardActions:()=>Ht,Card:()=>Vt,Calendar:()=>bt,Button:()=>dt,Badge:()=>Ot,Autocomplete:()=>It,Alert:()=>Zt,Accordion:()=>Yt});var J=(t)=>typeof t==="function",tt=(t)=>t&&typeof t==="object",G=Array.isArray,R=typeof document<"u"?document:null,ft=(t)=>t?._isRuntime?t.container:t instanceof Node?t:R.createTextNode(t==null?"":String(t)),C=null,A=null,Y=!1,I=0,O=new Set,at=new WeakMap,h=Symbol("iter"),p=new WeakMap,K=(t)=>{if(!t||t._disposed)return;t._disposed=!0;let r=[t];while(r.length){let e=r.pop();if(e._cleanups)e._cleanups.forEach((o)=>o()),e._cleanups.clear();if(e._children)e._children.forEach((o)=>r.push(o)),e._children.clear();if(e._deps)e._deps.forEach((o)=>o.delete(e)),e._deps.clear()}},M=(t)=>{if(A)(A._cleanups||=new Set).add(t)},Bt=(t)=>{let r=C;C=null;try{return t()}finally{C=r}},Z=(t,r=!1)=>{let e=()=>{if(e._disposed)return;if(e._deps)e._deps.forEach((u)=>u.delete(e));if(e._cleanups)e._cleanups.forEach((u)=>u()),e._cleanups.clear();let o=C,a=A;C=A=e;try{return e._result=t()}catch(u){console.error("[SigPro]",u)}finally{C=o,A=a}};if(e._deps=e._cleanups=e._children=null,e._disposed=!1,e._isComputed=r,e._depth=C?C._depth+1:0,e._mounts=[],e._parent=A,A)(A._children||=new Set).add(e);return e},st=()=>{if(Y)return;Y=!0;let t=Array.from(O).sort((r,e)=>r._depth-e._depth);O.clear();for(let r of t)if(!r._disposed)r();Y=!1},Gt=(t)=>{I++;try{return t()}finally{if(I--,I===0&&O.size>0&&!Y)st()}},L=(t,r=!1)=>{if(!r&&C&&!C._disposed)t.add(C),(C._deps||=new Set).add(t);else if(r&&t.size>0){let e=!1;for(let o of t){if(o===C||o._disposed)continue;if(o._isComputed){if(o._dirty=!0,o._subs)L(o._subs,!0)}else O.add(o),e=!0}if(e&&!Y&&I===0)queueMicrotask(st)}},S=(t,r=null)=>{let e=new Set;if(J(t)){let o,a=()=>{if(a._dirty){let u=C;C=a;try{let l=t();if(!Object.is(o,l))o=l,L(e,!0)}finally{C=u}a._dirty=!1}return L(e),o};if(a._isComputed=!0,a._subs=e,a._dirty=!0,a._deps=null,a._disposed=!1,a.stop=()=>{},A)M(a.stop);return a}if(r)try{t=JSON.parse(localStorage.getItem(r))??t}catch(o){}return(...o)=>{if(o.length){let a=J(o[0])?o[0](t):o[0];if(!Object.is(t,a)){if(t=a,r)localStorage.setItem(r,JSON.stringify(t));L(e,!0)}}return L(e),t}},it=(t)=>{if(!tt(t))return t;let r=at.get(t);if(r)return r;let e=new Map,o=(u)=>{let l=e.get(u);if(!l)e.set(u,l=new Set);return l},a=new Proxy(t,{get(u,l,f){if(typeof l!=="symbol")L(o(l));return it(Reflect.get(u,l,f))},set(u,l,f,s){let i=Reflect.has(u,l),y=Reflect.get(u,l,s),w=Reflect.set(u,l,f,s);if(w&&!Object.is(y,f)){if(L(o(l),!0),!i)L(o(h),!0)}return w},deleteProperty(u,l){let f=Reflect.deleteProperty(u,l);if(f)L(o(l),!0),L(o(h),!0);return f},ownKeys(u){return L(o(h)),Reflect.ownKeys(u)}});return at.set(t,a),a},B=(t,r)=>{if(r===void 0){let o=Z(t);return o(),()=>K(o)}let e=Z(()=>{let o=Array.isArray(t)?t.map((a)=>a()):t();Bt(()=>r(o))});return e(),()=>K(e)},rt=(t)=>{if(!t)return;if(t._cleanups)t._cleanups.forEach((r)=>r()),t._cleanups.clear();if(t._ownerEffect)K(t._ownerEffect);if(t.childNodes)t.childNodes.forEach((r)=>rt(r))},Mt=/^\s*(javascript|data|vbscript):/i,Pt=(t)=>t==="src"||t==="href"||t.startsWith("on"),ut=(t,r)=>{if(r==null||r===!1)return null;if(Pt(t)){let e=String(r);if(Mt.test(e))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${t}`),"#"}return r},n=(t,r={},e=[])=>{if(r instanceof Node||G(r)||!tt(r))e=r,r={};if(J(t)){let l=Z(()=>{let y=t(r,{children:e,emit:(w,...b)=>r[`on${w[0].toUpperCase()}${w.slice(1)}`]?.(...b)});return l._result=y,y});l();let f=l._result;if(f==null)return null;let s=f instanceof Node||G(f)&&f.every((y)=>y instanceof Node)?f:R.createTextNode(String(f)),i=(y)=>{if(tt(y)&&!y._isRuntime)y._mounts=l._mounts||[],y._cleanups=l._cleanups||new Set,y._ownerEffect=l};return G(s)?s.forEach(i):i(s),s}let o=/^(svg|path|circle|rect|line|poly(line|gon)|g|defs|text(path)?|tspan|use|symbol|image|marker|ellipse)$/i.test(t),a=o?R.createElementNS("http://www.w3.org/2000/svg",t):R.createElement(t);a._cleanups=new Set;for(let l in r){if(!r.hasOwnProperty(l))continue;let f=r[l];if(l==="ref"){J(f)?f(a):f.current=a;continue}if(o&&l.startsWith("xlink:")){f==null?a.removeAttributeNS("http://www.w3.org/1999/xlink",l.slice(6)):a.setAttributeNS("http://www.w3.org/1999/xlink",l.slice(6),f);continue}if(l.startsWith("on")){let s=l.slice(2).toLowerCase();a.addEventListener(s,f);let i=()=>a.removeEventListener(s,f);a._cleanups.add(i),M(i)}else if(J(f)){let s=Z(()=>{let i=ut(l,f());if(l==="class")a.className=i||"";else if(i==null)a.removeAttribute(l);else if(l in a&&!o)a[l]=i;else a.setAttribute(l,i===!0?"":i)});if(s(),a._cleanups.add(()=>K(s)),M(()=>K(s)),/^(INPUT|TEXTAREA|SELECT)$/.test(a.tagName)&&(l==="value"||l==="checked")){let i=l==="checked"?"change":"input";a.addEventListener(i,(y)=>f(y.target[l]))}}else{let s=ut(l,f);if(s!=null)if(l in a&&!o)a[l]=s;else a.setAttribute(l,s===!0?"":s)}}let u=(l)=>{if(G(l))return l.forEach(u);if(J(l)){let f=R.createTextNode("");a.appendChild(f);let s=[],i=Z(()=>{let y=l(),w=(G(y)?y:[y]).map(ft);s.forEach((E)=>{if(E._isRuntime)E.destroy();else rt(E);if(E.parentNode)E.remove()});let b=f;for(let E=w.length-1;E>=0;E--){let d=w[E];if(d.parentNode!==b.parentNode)b.parentNode?.insertBefore(d,b);if(d._mounts)d._mounts.forEach((N)=>N());b=d}s=w});i(),a._cleanups.add(()=>K(i)),M(()=>K(i))}else{let f=ft(l);if(a.appendChild(f),f._mounts)f._mounts.forEach((s)=>s())}};return u(e),a},V=(t)=>{let r=new Set,e=A,o=C,a=R.createElement("div");a.style.display="contents",a.setAttribute("role","presentation"),A={_cleanups:r},C=null;let u=(l)=>{if(!l)return;if(l._isRuntime)r.add(l.destroy),a.appendChild(l.container);else if(G(l))l.forEach(u);else a.appendChild(l instanceof Node?l:R.createTextNode(String(l==null?"":l)))};try{u(t({onCleanup:(l)=>r.add(l)}))}finally{A=e,C=o}return{_isRuntime:!0,container:a,destroy:()=>{r.forEach((l)=>l()),rt(a),a.remove()}}},P=(t,r,e=null)=>{let o=R.createTextNode(""),a=n("div",{style:"display:contents"},[o]),u=null;return B(()=>!!(J(t)?t():t),(l)=>{if(u)u.destroy(),u=null;let f=l?r:e;if(f)u=V(()=>J(f)?f():f),a.insertBefore(u.container,o)}),M(()=>u?.destroy()),a},Ut=({name:t,duration:r=200,scale:e,slide:o,rotate:a,blur:u},l)=>{let f=typeof l==="function"?l():l;if(!(f instanceof Node))return f;if(t)return f.style.animation=`${t}-in ${r}ms`,f;let s=e||o||a||u,i=[e?"scale(0.95)":"",o?"translateY(-10px)":"",a?"rotate(-2deg)":""].filter(Boolean).join(" ");if(f.style.transition=`all ${r}ms ease`,f.style.opacity="0",s)f.style.transform=i;if(u)f.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(f.style.opacity="1",s)f.style.transform="none";if(u)f.style.filter="none"}),f},q=(t,r,e)=>{let o=R.createTextNode(""),a=n("div",{style:"display:contents"},[o]),u=new Map;return B(()=>(J(t)?t():t)||[],(l)=>{let f=new Map,s=[],i=l||[];for(let w=0;wr(b,w));else u.delete(E);f.set(E,d),s.push(d)}u.forEach((w)=>w.destroy());let y=o;for(let w=s.length-1;w>=0;w--){let b=s[w].container;if(b.nextSibling!==y)a.insertBefore(b,y);y=b}u=f}),a},U=(t)=>{let r=()=>window.location.hash.slice(1)||"/",e=S(r()),o=()=>e(r());window.addEventListener("hashchange",o),M(()=>window.removeEventListener("hashchange",o));let a=n("div",{class:"router-hook"}),u=null;return B([e],()=>{let l=e(),f=t.find((s)=>{let i=s.path.split("/").filter(Boolean),y=l.split("/").filter(Boolean);return i.length===y.length&&i.every((w,b)=>w[0]===":"||w===y[b])})||t.find((s)=>s.path==="*");if(f){u?.destroy();let s={};f.path.split("/").filter(Boolean).forEach((i,y)=>{if(i[0]===":")s[i.slice(1)]=l.split("/").filter(Boolean)[y]}),U.params(s),u=V(()=>J(f.component)?f.component(s):f.component),a.replaceChildren(u.container)}}),a};U.params=S({});U.to=(t)=>window.location.hash=t.replace(/^#?\/?/,"#/");U.back=()=>window.history.back();U.path=()=>window.location.hash.replace(/^#/,"")||"/";var Xt=({url:t,method:r="GET",headers:e={}})=>{let o=S(!1),a=S(null),u=S(null),l=null,f=null;return{run:async(s=null)=>{l?.abort(),clearTimeout(f),l=new AbortController,f=setTimeout(()=>l.abort(),1e4),o(!0),a(null);try{let i=s instanceof FormData,y=await fetch(t,{method:r,headers:i?e:{"Content-Type":"application/json",...e},body:i?s:s?JSON.stringify(s):void 0,signal:l.signal}),w=await y.text(),b=w?JSON.parse(w):null;if(!y.ok)throw Error(b?.message||y.statusText);return u(b),b}catch(i){if(i.name!=="AbortError")a(i.message);throw i}finally{o(!1),clearTimeout(f),l=null,f=null}},abort:()=>l?.abort(),loading:o,error:a,data:u}},nt=(t,r)=>{let e=typeof r==="string"?R.querySelector(r):r;if(!e)return;if(p.has(e))p.get(e).destroy();let o=V(J(t)?t:()=>t);return e.replaceChildren(o.container),p.set(e,o),o},Qt=Object.freeze({$:S,$$:it,watch:B,h:n,when:P,each:q,fx:Ut,router:U,req:Xt,mount:nt,batch:Gt});if(typeof window<"u")Object.assign(window,Qt),"a abbr article aside audio b blockquote br button canvas caption cite code col colgroup datalist dd del details dfn dialog div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 header hr i iframe img input ins kbd label legend li main mark meter nav object ol optgroup option output p picture pre progress section select slot small source span strong sub summary sup svg table tbody td template textarea tfoot th thead time tr u ul video".split(" ").forEach((t)=>{window[t]=(r,e)=>n(t,r,e)});var T=(t)=>typeof t==="function"?t():t,x=(t,r="label")=>t&&typeof t==="object"?t[r]:t,_=(...t)=>t.filter(Boolean).join(" ").trim(),j=(t)=>typeof t==="function",_t=(t,r,e="label",o=String(r).toLowerCase())=>!r?T(t):T(t).filter((a)=>String(a&&typeof a==="object"?a[e]:a).toLowerCase().includes(o)),yt=(t)=>`${t}-${Math.random().toString(36).slice(2,9)}`,c=()=>document.activeElement?.blur(),wt=(t,r)=>{let e=$(-1);return{cursor:e,onKey:(a,u)=>{let l=T(t),f=e(),s=l.length;if(!s)return;let i=a.key;i==="ArrowDown"?(a.preventDefault(),r(!0),e(Math.min(f+1,s-1))):i==="ArrowUp"?(a.preventDefault(),e(Math.max(f-1,0))):i==="Enter"?f>=0&&(a.preventDefault(),u(l[f])):i==="Escape"&&(r(!1),e(-1))}}},et=({name:t,duration:r=200,scale:e,slide:o,rotate:a,blur:u},l)=>{let f=typeof l==="function"?l():l;if(!(f instanceof Node))return f;if(t)return f.style.animation=`${t}-in ${r}ms`,f;let s=e||o||a||u,i=[e?"scale(0.95)":"",o?"translateY(-10px)":"",a?"rotate(-2deg)":""].filter(Boolean).join(" ");if(f.style.transition=`all ${r}ms ease`,f.style.opacity="0",s)f.style.transform=i;if(u)f.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(f.style.opacity="1",s)f.style.transform="none";if(u)f.style.filter="none"}),f};var Yt=(t)=>{let r=t.name||yt("acc");return q(t.items,(e)=>{return n("div",{class:_("collapse",t.class)},[n("input",{type:"radio",name:r,checked:e.open||void 0}),e.title?n("div",{class:_("collapse-title",`${e.classTitle??" font-semibold"}`)},e.title):null,e.content?n("div",{class:_("collapse-content text-sm",`${e.classContent??" font-semibold"}`)},e.content):null])})},Zt=(t,r)=>n("div",{...t,class:_("alert",t.class)},r),It=({items:t,value:r,onselect:e,placeholder:o="Buscar...",...a})=>{let u=S(T(r)||""),l=S(!1),f=S(()=>_t(t,u())),{cursor:s,onKey:i}=wt(f,l),y=(w)=>{let b=x(w),E=typeof w==="string"?w:w.value;if(u(b),j(r))r(E);e?.(w),l(!1)};return n("div",{class:"relative w-full"},[Ct({...a,type:"text",placeholder:o,value:u,left:n("span",{class:"icon-[lucide--search]"}),oninput:(w)=>{if(u(w.target.value),j(r))r(w.target.value);l(!0)},onfocus:()=>l(!0),onblur:()=>setTimeout(()=>{l(!1),s(-1)},150),onkeydown:(w)=>i(w,y)}),P(l,()=>et({duration:200,slide:!0},n("ul",{class:"absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap"},[q(f,(w,b)=>n("li",{},[n("a",{class:()=>s()===b?"active bg-primary text-primary-content":"",onmousedown:(E)=>E.preventDefault(),onclick:()=>y(w),onmouseenter:()=>s(b)},x(w))]),(w,b)=>x(w)+b),()=>f().length===0?n("li",{class:"p-4 opacity-50 text-center"},"Sin resultados"):null])))])},Ot=(t,r)=>n("span",{...t,class:_("badge",t.class)},r),dt=(t,r)=>n("button",{...t,class:_("btn",t.class)},r),bt=(t)=>{let r=S(new Date),e=S(null),o=S(0),a=S(0),u=new Date,l=`${u.getFullYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`,f=(d)=>`${d.getFullYear()}-${String(d.getMonth()+1).padStart(2,"0")}-${String(d.getDate()).padStart(2,"0")}`,s=()=>T(t.range)===!0,i=()=>T(t.value),y=(d)=>{let N=f(d),k=i();if(s())if(!k?.start||k.start&&k.end)t.onChange?.({start:N,end:null,...t.hour&&{startHour:o()}});else{let g=k.start,Q=N{let N=r();r(new Date(N.getFullYear(),N.getMonth()+d,1))},b=(d)=>{let N=r();r(new Date(N.getFullYear()+d,N.getMonth(),1))},E=({value:d,onChange:N})=>n("div",{class:"flex-1"},[n("div",{class:"flex gap-2 items-center"},[n("input",{type:"range",min:0,max:23,value:d,class:"range range-xs flex-1",oninput:(k)=>N(+k.target.value)}),n("span",{class:"text-sm font-mono min-w-[48px] text-center"},()=>String(T(d)).padStart(2,"0")+":00")])]);return n("div",{class:_("p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box w-80 select-none",t.class)},[n("div",{class:"flex justify-between items-center mb-4 gap-1"},[n("div",{class:"flex gap-0.5"},[n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>b(-1)},n("span",{class:"icon-[lucide--chevrons-left]"})),n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>w(-1)},n("span",{class:"icon-[lucide--chevron-left]"}))]),n("span",{class:"font-bold uppercase flex-1 text-center"},()=>r().toLocaleString("es-ES",{month:"short",year:"numeric"})),n("div",{class:"flex gap-0.5"},[n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>w(1)},n("span",{class:"icon-[lucide--chevron-right]"})),n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>b(1)},n("span",{class:"icon-[lucide--chevrons-right]"}))])]),n("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>e(null)},[...["L","M","X","J","V","S","D"].map((d)=>n("div",{class:"text-[10px] opacity-40 font-bold text-center"},d)),()=>{let d=r(),N=d.getFullYear(),k=d.getMonth(),g=new Date(N,k,1).getDay(),Q=g===0?6:g-1,Jt=new Date(N,k+1,0).getDate(),D=[];for(let z=0;z{let W=i(),H=e(),Rt=typeof W==="string"?W.split("T")[0]===m:W?.start===m,Wt=W?.end===m,F=!1;if(s()&&W?.start){let v=W.start;if(!W.end&&H)F=m>v&&m<=H||m=H;else if(W.end)F=m>v&&ms()&&e(m),onclick:()=>y(lt)},z.toString()))}return D}]),t.hour?n("div",{class:"mt-3 pt-2 border-t border-base-300"},s()?n("div",{class:"flex gap-4"},[E({value:o,onChange:(d)=>o(d)}),E({value:a,onChange:(d)=>a(d)})]):E({value:o,onChange:(d)=>o(d)})):null,n("div",{class:_("flex gap-2 mt-3 pt-2",!t.hour&&"border-t border-base-300")},[n("button",{type:"button",class:"btn btn-xs flex-1",onclick:()=>c()},X("icon-[lucide--x]"))])])},Vt=(t,r)=>n("div",{...t,class:_("card",t.class)},r),ct=(t,r)=>n("div",{...t,class:_("card-title",t.class)},r),Dt=(t,r)=>n("div",{...t,class:_("card-body",t.class)},r),Ht=(t,r)=>n("div",{...t,class:_("card-actions",t.class)},r),Ft=(t,r)=>n("div",{...t,class:_("carousel",t.class)},r),vt=(t,r)=>n("div",{...t,class:_("carousel-item",t.class)},r),ht=(t,r)=>n("div",{...t,class:_("chat",t.class)},r),pt=(t,r)=>n("div",{...t,class:_("chat-bubble",t.class)},r),tr=(t,r)=>n("div",{...t,class:_("chat-footer",t.class)},r),rr=(t,r)=>n("div",{...t,class:_("chat-header",t.class)},r),nr=(t,r)=>n("div",{...t,class:_("chat-image avatar",t.class)},n("div",{class:"w-10 rounded-full"},typeof r==="string"?n("img",{src:r,alt:"avatar"}):r)),er=(t)=>n("input",{...t,type:"checkbox",class:_("checkbox",t.class)}),or=(t)=>{let r=()=>T(t.value)||"#000000";return Nt({},[St({class:"btn"},[n("div",{class:"size-5 rounded-sm",style:()=>`background-color: ${r()}`}),t.label&&n("span",{},t.label)]),Tt({class:"p-3 bg-base-100 rounded-box shadow-xl w-64"},Et({value:t.value,onchange:(e)=>{j(t.value)?t.value(e):t.onchange?.(e),c()}}))])},Et=(t)=>{let r=()=>T(t.value)||"#000000",e=["#000","#1A1A1A","#333","#4D4D4D","#666","#808080","#B3B3B3","#FFF","#450a0a","#7f1d1d","#991b1b","#b91c1c","#dc2626","#ef4444","#f87171","#fca5a5","#431407","#7c2d12","#9a3412","#c2410c","#ea580c","#f97316","#fb923c","#ffedd5","#713f12","#a16207","#ca8a04","#eab308","#facc15","#fde047","#fef08a","#fff9c4","#064e3b","#065f46","#059669","#10b981","#34d399","#4ade80","#84cc16","#d9f99d","#082f49","#075985","#0284c7","#0ea5e9","#38bdf8","#7dd3fc","#22d3ee","#cffafe","#1e1b4b","#312e81","#4338ca","#4f46e5","#6366f1","#818cf8","#a5b4fc","#e0e7ff","#2e1065","#4c1d95","#6d28d9","#7c3aed","#8b5cf6","#a855f7","#d946ef","#fae8ff"],o=(a)=>j(t.value)?t.value(a):t.onchange?.(a);return[n("div",{class:"grid grid-cols-8 gap-1"},e.map((a)=>n("button",{type:"button",style:`background-color: ${a}`,class:()=>{return`size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${r().toLowerCase()===a.toLowerCase()?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`},onclick:()=>o(a)}))),n("button",{type:"button",class:"btn btn-xs w-full",onclick:()=>c()},X("icon-[lucide--x]"))]},lr=(t)=>{let r=S(!1),e=S(""),o=()=>T(t.range)===!0;B(()=>{let u=T(t.value);if(!u)return e("");let l="";if(typeof u==="string")l=t.hour&&u.includes("T")?u.replace("T"," "):u;else if(u.start&&u.end){let f=t.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start,s=t.hour&&u.endHour!=null?`${u.end} ${String(u.endHour).padStart(2,"0")}:00`:u.end;l=`${f} - ${s}`}else if(u.start)l=`${t.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start}...`;e(l)});let a=(u)=>{if(j(t.value))t.value(u);else t.onChange?.(u);if(!o()||u?.end!=null)r(!1)};return n("div",{class:_("relative w-full",t.class)},[n("label",{class:"input input-bordered w-full",onclick:(u)=>{u.stopPropagation(),r(!r())}},[n("span",{class:"icon-[lucide--calendar]"}),n("input",{...t,type:"text",class:"grow",value:e,readonly:!0,placeholder:t.placeholder||(o()?"Seleccionar rango...":"Seleccionar fecha...")})]),P(r,()=>[n("div",{class:"fixed inset-0 z-[90]",onclick:()=>r(!1)}),n("div",{class:"absolute left-0 mt-2 z-[100]",onclick:(u)=>u.stopPropagation()},bt({value:t.value,range:o(),hour:t.hour,onChange:a}))])])},fr=(t,r)=>div({...t,class:_("drawer",t.class)},r),ar=(t)=>input({...t,type:"checkbox",class:"drawer-toggle",checked:()=>T(t.checked),onchange:(r)=>j(t.checked)&&t.checked(r.target.checked)}),ur=(t,r)=>div({...t,class:_("drawer-content",t.class)},r),sr=(t,r)=>div({...t,class:_("drawer-side",t.class)},r),ir=(t)=>label({...t,for:t.for,class:_("drawer-overlay",t.class)}),_r=(t)=>n("div",{...t,class:_("divider",t.class)}),Nt=(t,r)=>n("div",{...t,class:_("dropdown",t.class)},r),St=(t,r)=>n("div",{...t,tabindex:"0",role:"button",class:_("btn",t.class)},r),Tt=(t,r)=>n("div",{...t,tabindex:"0",class:_("dropdown-content",t.class)},r),yr=(t,r)=>n("div",{class:"fab"},[n("div",{tabindex:"0",role:"button",class:_("btn",t.class)},X(t.icon)),r]),wr=(t,r)=>n("fieldset",{class:_("fieldset",t.class)},[n("legend",{class:"fieldset-legend"},t.label),r]),dr=(t)=>{let r=S([]),e=S(!1),o=S(null),a=(t.max||2)*1024*1024,u=(f)=>{let s=Array.from(f);if(o(null),s.some((y)=>y.size>a)){o(`Máx ${t.max||2}MB`);return}let i=[...r(),...s];if(r(i),j(t.onselect))t.onselect(i);else if(j(t.value))t.value(i)},l=(f)=>{let s=r().filter((i,y)=>y!==f);if(r(s),j(t.onselect))t.onselect(s);else if(j(t.value))t.value(s)};return n("div",{class:_("fieldset w-full p-0",t.class)},[n("label",{class:()=>`relative flex items-center justify-between w-full h-12 px-4 border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200 ${e()?"border-primary bg-primary/10":"border-base-content/20 bg-base-100 hover:bg-base-200"}`,ondragover:(f)=>{f.preventDefault(),e(!0)},ondragleave:()=>e(!1),ondrop:(f)=>{f.preventDefault(),e(!1),u(f.dataTransfer.files)}},[n("div",{class:"flex items-center gap-3 w-full"},[n("span",{class:"icon-[lucide--upload]"}),n("span",{class:"text-sm opacity-70 truncate grow text-left"},"Arrastra o selecciona archivos..."),n("span",{class:"text-[10px] opacity-40 shrink-0"},`Máx ${t.max||2}MB`)]),n("input",{type:"file",multiple:!0,accept:t.accept||"*",class:"hidden",onchange:(f)=>u(f.target.files)})]),()=>o()&&n("span",{class:"text-[10px] text-error mt-1 px-1 font-medium"},o()),P(()=>r().length>0,()=>n("ul",{class:"mt-2 space-y-1"},q(r,(f,s)=>n("li",{class:"flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300"},[n("div",{class:"flex items-center gap-2 truncate"},[n("span",{class:"opacity-50"},"\uD83D\uDCC4"),n("span",{class:"truncate font-medium max-w-[200px]"},f.name),n("span",{class:"text-[9px] opacity-40"},`(${(f.size/1024).toFixed(0)} KB)`)]),n("button",{type:"button",class:"btn btn-ghost btn-xs btn-circle",onclick:(i)=>{i.preventDefault(),l(s)}},n("span",{class:"icon-[lucide--x]"}))]))))])},X=(t)=>n("span",{class:t.startsWith("icon-")?t:""},t.startsWith("icon-")?null:t),br=(t,r)=>n("div",{...t,class:_("indicator",t.class)},[t.value&&n("span",{class:_("indicator-item badge",t.class)},t.value),r]),Ct=(t)=>{let{label:r,icon:e,float:o,placeholder:a,value:u,left:l,right:f,rule:s,hint:i,content:y,...w}=t,b=S(!1),E=S(!1),d=t.type==="password",N=s??null,k=()=>d?T(b)?"text":"password":t.type||"text";return n("div",{class:"input-container",onfocusin:()=>E(!0),onfocusout:(g)=>{if(!g.currentTarget.contains(g.relatedTarget))E(!1)}},[n("label",{class:o?"floating-label":""},[o?n("span",{},r):null,n("label",{pattern:N,class:()=>_("input validator",t.class)},[r&&!o?n("span",{class:"label"},r):null,l??null,n("input",{...w,type:k,class:"grow",pattern:N,placeholder:a||r||" ",value:u}),f??null,d?jt({class:"ml-2"},[kt({value:b,class:"swap-rotate"}),At({},X("icon-[lucide--eye]")),$t({},X("icon-[lucide--eye-off]"))]):null]),i?n("div",{class:"validator-hint"},i):null,P(E,()=>et({duration:300,slide:!0},n("div",{class:"input-content",onmousedown:(g)=>g.preventDefault()},[j(y)?y(E):y])))])])},Er=(t,r)=>n("kbd",{...t,class:_("kbd",t.class)},r),Nr=(t,r)=>n("ul",{...t,class:_("list",t.class)},r),Sr=(t)=>()=>(T(t.items)||[]).map((r,e)=>n("li",{class:_("list-row",t.class,r?.class)},typeof t.render==="function"?t.render(r,e):r)),Tr=(t,r)=>n("span",{...t,class:_("loading loading-spinner",t.class)},r),Cr=(t)=>{if(t.children!==void 0)return n("ul",{class:_("menu",t.class),...t},t.children);let{items:r}=t,e=(o)=>o.children?n("li",{},n("details",{open:o.open||void 0},[n("summary",{},x(o)),n("ul",{},q(()=>T(o.children)||[],e))])):n("li",{},n("a",{href:o.href,onclick:o.onclick?(a)=>{if(!o.href)a.preventDefault();o.onclick(a)}:null},x(o)));return n("ul",{class:_("menu",t.class)},q(()=>T(r)||[],e))},jr=(t)=>{let r=null;B(()=>{let o=T(t.open);if(!r)return;o?r.showModal():r.close()});let e=()=>j(t.open)&&t.open(!1);return n("dialog",{...t,ref:(o)=>r=o,class:_("modal",t.class),onclose:e,oncancel:e},[n("div",{class:"modal-box"},[t.title&&n("h3",{class:"text-lg font-bold"},t.title),t.children,n("div",{class:"modal-action"},[t.actions||dt({class:"btn",onclick:e},"Cerrar")])]),n("form",{method:"dialog",class:"modal-backdrop"},[n("button",{},"close")])])},kr=(t,r)=>n("div",{...t,class:_("navbar",t.class)},r),Ar=(t)=>n("progress",{...t,class:_("progress",t.class)}),$r=(t,r)=>n("div",{...t,class:_("radial-progress",t.class),style:`--value:${t.value??0};${t.style??""}`,role:"progressbar","aria-valuenow":t.value??0},r??`${t.value??0}%`),gr=(t)=>n("input",{...t,type:"radio",class:_("radio",t.class)}),mr=(t)=>n("input",{...t,type:"range",class:_("range",t.class)}),Lr=(t,r)=>n("div",{...t,class:"rating"},r),Jr=(t)=>[...Array(t.count)].map((r,e)=>n("input",{class:_("mask",t.class),name:t.name,type:"radio",checked:()=>T(t.value)===e,onchange:()=>j(t.value)?t.value(e):t.onchange?.(e)})),Rr=(t,r)=>{if(r!==void 0)return n("select",{class:_("select",t.class),...t},r);let{label:e,float:o,placeholder:a,placeholderDisabled:u=!0,value:l,left:f,right:s,hint:i,items:y,keyFn:w,...b}=t,E=()=>{let d=T(y)||[];return[...a?[{disabled:u,label:a,value:""}]:[],...d]};return n("label",{class:o?"floating-label":""},[o?n("span",{},e):null,n("label",{class:_("select",b.class)},[!o&&e?n("span",{class:"label"},e):null,f??null,n("select",{value:()=>T(l),onchange:(d)=>j(l)?l(d.target.value):b.onchange?.(d)},q(E,(d)=>{let N=x(d,d.value!==void 0?"value":void 0),k=x(d,"label");return n("option",{value:N,disabled:d.disabled||void 0},k)})),s??null]),i?n("div",{class:"validator-hint"},i):null])},Wr=(t)=>n("div",{...t,class:_("skeleton",t.class)}),xr=(t)=>n("span",{...t,class:_("skeleton skeleton-text",t.class)}),qr=(t,r)=>n("div",{...t,class:_("stack",t.class)},r),zr=(t,r)=>n("ul",{...t,class:_("steps",t.class)},r),Kr=(t,r)=>n("li",{...t,class:_("step",t.class),"data-content":t.dataContent},r),jt=(t,r)=>n("label",{...t,class:_("swap",t.class)},r),kt=(t)=>n("input",{type:"checkbox",checked:()=>T(t.value),onchange:(r)=>j(t.value)&&t.value(r.target.checked),class:t.class}),At=(t,r)=>n("div",{...t,class:_("swap-on",t.class)},r),$t=(t,r)=>n("div",{...t,class:_("swap-off",t.class)},r),Br=(t,r)=>n("table",{...t,class:_("table",t.class)},r),Gr=({items:t,columns:r=[],header:e=!0})=>{let o=e!==!1&&r.some((u)=>u.label)?n("thead",{},n("tr",{},r.map((u)=>n("th",{class:u.class},u.label)))):null,a=n("tbody",{},()=>{return(T(t)||[]).map((l,f)=>n("tr",{},r.map((s)=>{let i=s.render?s.render(l,f):l[s.key];return n("td",{class:s.class},i)})))});return[o,a].filter(Boolean)},Mr=(t,r)=>{if(!t.items){let{class:i,...y}=t;return n("div",{...y,class:_("tabs",i)},r)}let{items:e,activeIndex:o,onClose:a,class:u,...l}=t,f=(i)=>j(i)?i():i,s=a||(j(e)?(i,y)=>{let b=f(e).filter((E,d)=>d!==i);if(e(b),o()>=b.length)o(Math.max(0,b.length-1))}:null);return n("div",{...l,class:_("tabs",u)},()=>{return(f(e)||[]).flatMap((y,w)=>{let b=()=>o()===w,E=n("button",{class:()=>`tab ${b()?"tab-active":""} ${y.class||""}`,onclick:(N)=>{N.preventDefault(),o(w),y.onclick?.(N)}},[x(y),y.closable?n("span",{class:"ml-1 inline-flex items-center justify-center w-4 h-4 rounded-full hover:bg-base-300 text-base-content/60 hover:text-base-content cursor-pointer",onclick:(N)=>{N.stopPropagation(),s?.(w,y)}},n("span",{class:"icon-[lucide--x] w-3 h-3"})):null]),d=n("div",{class:"tab-content bg-base-100 border-base-300 p-6",style:()=>`display: ${b()?"block":"none"};`},j(y.content)?y.content():y.content);return[E,d]})})},Pr=(t)=>n("textarea",{...t,class:_("textarea",t.class)}),Ur=(t,r)=>n("span",{...t,class:_("text-rotate",t.class)},r),Xr=(t,r)=>n("ul",{...t,class:_("timeline",t.class)},r),Qr=(t,r="alert-success",e=3500)=>{let o=document.getElementById("sigpro-toast-container");if(!o)o=n("div",{id:"sigpro-toast-container",class:"fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none"}),document.body.appendChild(o);let a=n("div",{style:"display: contents"});o.appendChild(a);let u,l,f,i=nt(()=>{let y=S(!1),w=S(!1);u=()=>{if(w())return;clearTimeout(l),clearTimeout(f),w(!0),setTimeout(()=>{if(i.destroy(),a.remove(),!o.hasChildNodes())o.remove()},300)},f=setTimeout(()=>y(!0),0);let b=typeof t==="function"?T(t):t,E=typeof b==="string"?n("span",{},b):b;return n("div",{class:()=>{if(w())return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-full opacity-0 pointer-events-auto`;if(y())return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-0 opacity-100 pointer-events-auto`;return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto`}},[E,n("button",{class:"btn btn-xs btn-circle btn-ghost",onclick:u},n("span",{class:"icon-[lucide--x]"}))])},a);if(e>0)l=setTimeout(u,e);return u},Yr=(t)=>n("input",{...t,type:"checkbox",class:_("toggle",t.class)}),Zr=(t,r)=>n("div",{...t,class:_("tooltip",t.class),"data-tip":t.tip},r);var Ir={es:{close:"Cerrar",confirm:"Confirmar",cancel:"Cancelar",search:"Buscar...",loading:"Cargando...",nodata:"Sin datos"},en:{close:"Close",confirm:"Confirm",cancel:"Cancel",search:"Search...",loading:"Loading...",nodata:"No data"}},gt=S("es"),mt=(t)=>gt(t),Lt=(t)=>()=>Ir[gt()][t]||t;var Or={...ot},Vr={Locale:mt,tt:Lt};if(typeof window<"u")Object.entries({...Or,...Vr}).forEach(([t,r])=>{Object.defineProperty(window,t,{value:r,writable:!1,configurable:!0,enumerable:!0})}),console.log("SigProUI DX installed");export{Vr as Utils,Or as Components}; diff --git a/dist/sigpro-ui.js b/dist/sigpro-ui.js index bf458b8..358a69f 100644 --- a/dist/sigpro-ui.js +++ b/dist/sigpro-ui.js @@ -44,17 +44,9 @@ Components: () => Components }); - // components/All.js - var exports_All = {}; - __export(exports_All, { - rand: () => rand, - listKey: () => listKey, - isFn: () => isFn, - getBy: () => getBy, - get: () => get, - filterBy: () => filterBy, - cls: () => cls, - close: () => close, + // sigpro-components.js + var exports_sigpro_components = {}; + __export(exports_sigpro_components, { Tooltip: () => Tooltip, Toggle: () => Toggle, Toast: () => Toast, @@ -137,7 +129,7 @@ var A = 0; var C = new Set; var D = new WeakMap; - var $ = Symbol("iter"); + var $2 = Symbol("iter"); var B = new WeakMap; var E = (e) => { if (!e || e._disposed) @@ -284,16 +276,16 @@ let u = Reflect.has(c, t), a = Reflect.get(c, t, l), f = Reflect.set(c, t, r, l); if (f && !Object.is(a, r)) { if (w(i(t), true), !u) - w(i($), true); + w(i($2), true); } return f; }, deleteProperty(c, t) { let r = Reflect.deleteProperty(c, t); if (r) - w(i(t), true), w(i($), true); + w(i(t), true), w(i($2), true); return r; }, ownKeys(c) { - return w(i($)), Reflect.ownKeys(c); + return w(i($2)), Reflect.ownKeys(c); } }); return D.set(e, s), s; }; @@ -557,7 +549,7 @@ window[e] = (o, n) => O(e, o, n); }); - // components/All.js + // sigpro-helpers.js var get = (val) => typeof val === "function" ? val() : val; var getBy = (item, field = "label") => item && typeof item === "object" ? item[field] : item; var cls = (...classes) => classes.filter(Boolean).join(" ").trim(); @@ -566,7 +558,7 @@ var rand = (r) => `${r}-${Math.random().toString(36).slice(2, 9)}`; var close = () => document.activeElement?.blur(); var listKey = (items, isOpen) => { - const cursor = S(-1); + const cursor = $(-1); const onKey = (e, select) => { const list = get(items), i = cursor(), len = list.length; if (!len) @@ -576,6 +568,37 @@ }; return { cursor, onKey }; }; + var fx = ({ name, duration = 200, scale, slide, rotate, blur }, child) => { + const el = typeof child === "function" ? child() : child; + if (!(el instanceof Node)) + return el; + if (name) { + el.style.animation = `${name}-in ${duration}ms`; + return el; + } + const hasTransform = scale || slide || rotate || blur; + const initialTransform = [ + scale ? "scale(0.95)" : "", + slide ? "translateY(-10px)" : "", + rotate ? "rotate(-2deg)" : "" + ].filter(Boolean).join(" "); + el.style.transition = `all ${duration}ms ease`; + el.style.opacity = "0"; + if (hasTransform) + el.style.transform = initialTransform; + if (blur) + el.style.filter = "blur(4px)"; + requestAnimationFrame(() => { + el.style.opacity = "1"; + if (hasTransform) + el.style.transform = "none"; + if (blur) + el.style.filter = "none"; + }); + return el; + }; + + // sigpro-components.js var Accordion = (p2) => { const name = p2.name || rand("acc"); return K(p2.items, (it) => { @@ -621,7 +644,7 @@ }, 150), onkeydown: (e) => onKey(e, pick) }), - z(isOpen, () => G({ duration: 200, slide: true }, O("ul", { + z(isOpen, () => fx({ duration: 200, slide: true }, O("ul", { class: "absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap" }, [ K(filtered, (item, idx) => O("li", {}, [ @@ -731,7 +754,14 @@ return cells; } ]), - p2.hour ? O("div", { class: "mt-3 pt-2 border-t border-base-300" }, rangeMode() ? O("div", { class: "flex gap-4" }, [HourSlider({ value: startHour, onChange: (h) => startHour(h) }), HourSlider({ value: endHour, onChange: (h) => endHour(h) })]) : HourSlider({ value: startHour, onChange: (h) => startHour(h) })) : null + p2.hour ? O("div", { class: "mt-3 pt-2 border-t border-base-300" }, rangeMode() ? O("div", { class: "flex gap-4" }, [HourSlider({ value: startHour, onChange: (h) => startHour(h) }), HourSlider({ value: endHour, onChange: (h) => endHour(h) })]) : HourSlider({ value: startHour, onChange: (h) => startHour(h) })) : null, + O("div", { class: cls("flex gap-2 mt-3 pt-2", !p2.hour && "border-t border-base-300") }, [ + O("button", { + type: "button", + class: "btn btn-xs flex-1", + onclick: () => close() + }, Icon("icon-[lucide--x]")) + ]) ]); }; var Card = (p2, c) => O("div", { ...p2, class: cls("card", p2.class) }, c); @@ -828,15 +858,22 @@ "#fae8ff" ]; const pick = (c) => isFn(p2.value) ? p2.value(c) : p2.onchange?.(c); - return O("div", { class: "grid grid-cols-8 gap-1" }, palette.map((c) => O("button", { - type: "button", - style: `background-color: ${c}`, - class: () => { - const act = current().toLowerCase() === c.toLowerCase(); - return `size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${act ? "ring-2 ring-offset-1 ring-primary z-10 scale-110" : ""}`; - }, - onclick: () => pick(c) - }))); + return [ + O("div", { class: "grid grid-cols-8 gap-1" }, palette.map((c) => O("button", { + type: "button", + style: `background-color: ${c}`, + class: () => { + const act = current().toLowerCase() === c.toLowerCase(); + return `size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${act ? "ring-2 ring-offset-1 ring-primary z-10 scale-110" : ""}`; + }, + onclick: () => pick(c) + }))), + O("button", { + type: "button", + class: "btn btn-xs w-full", + onclick: () => close() + }, Icon("icon-[lucide--x]")) + ]; }; var Datepicker = (p2) => { const isOpen = S(false); @@ -1003,7 +1040,7 @@ ]) : null ]), hint ? O("div", { class: "validator-hint" }, hint) : null, - z(isFocused, () => G({ duration: 300, slide: true }, O("div", { class: "input-content", onmousedown: (e) => e.preventDefault() }, [ + z(isFocused, () => fx({ duration: 300, slide: true }, O("div", { class: "input-content", onmousedown: (e) => e.preventDefault() }, [ isFn(content) ? content(isFocused) : content ]))) ]) @@ -1214,7 +1251,7 @@ var Toggle = (p2) => O("input", { ...p2, type: "checkbox", class: cls("toggle", p2.class) }); var Tooltip = (p2, c) => O("div", { ...p2, class: cls("tooltip", p2.class), "data-tip": p2.tip }, c); - // utils.js + // sigpro-locale.js var i18n = { es: { close: "Cerrar", @@ -1239,7 +1276,7 @@ // index.js var Components = { - ...exports_All + ...exports_sigpro_components }; var Utils = { Locale, diff --git a/dist/sigpro-ui.min.css b/dist/sigpro-ui.min.css index 81e87c8..d475ed5 100644 --- a/dist/sigpro-ui.min.css +++ b/dist/sigpro-ui.min.css @@ -1,2 +1,2 @@ /*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */ -@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-7xl:4.5rem;--text-7xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-3xl:1.5rem;--drop-shadow-2xl:0 25px 25px #00000026;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");scrollbar-color:currentColor #0000}@supports (color:color-mix(in lab, red, red)){:root{scrollbar-color:color-mix(in oklch, currentColor 35%, #0000) #0000}}@property --radialprogress{syntax:"";inherits:true;initial-value:0%}:root:not(span){overflow:var(--page-overflow)}:root{background:var(--page-scroll-bg,var(--root-bg));--page-scroll-bg-on:linear-gradient(var(--root-bg,#0000), var(--root-bg,#0000)) var(--root-bg,#0000)}@supports (color:color-mix(in lab, red, red)){:root{--page-scroll-bg-on:linear-gradient(var(--root-bg,#0000), var(--root-bg,#0000)) color-mix(in srgb, var(--root-bg,#0000), oklch(0% 0 0) calc(var(--page-has-backdrop,0) * 40%))}}:root{--page-scroll-transition-on:background-color .3s ease-out;transition:var(--page-scroll-transition);scrollbar-gutter:var(--page-scroll-gutter,unset);scrollbar-gutter:if(style(--page-has-scroll: 1): var(--page-scroll-gutter,unset) ; else: unset)}@keyframes set-page-has-scroll{0%,to{--page-has-scroll:1}}:root,[data-theme]{background:var(--page-scroll-bg,var(--root-bg));color:var(--color-base-content)}:where(:root,[data-theme]){--root-bg:var(--color-base-100)}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(92% 0 0);--color-base-content:oklch(25% .006 285);--color-primary:oklch(25% .006 285);--color-primary-content:oklch(98% 0 0);--color-secondary:oklch(55% .046 257.417);--color-secondary-content:oklch(98% 0 0);--color-accent:oklch(96% 0 0);--color-accent-content:oklch(25% .006 285);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(62% .17 163);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .18 84);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(60% .25 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(15% .005 285.823);--color-base-200:oklch(20% .005 285.823);--color-base-300:oklch(30% .005 285.823);--color-base-content:oklch(92% .004 286.32);--color-primary:oklch(98% 0 0);--color-primary-content:oklch(15% 0 0);--color-secondary:oklch(65% .046 257.417);--color-secondary-content:oklch(15% .005 285.823);--color-accent:oklch(25% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(92% .004 286.32);--color-neutral-content:oklch(14% .005 285.823);--color-info:oklch(70% .1 230);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(65% .15 160);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(85% .15 90);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(55% .2 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(15% .005 285.823);--color-base-200:oklch(20% .005 285.823);--color-base-300:oklch(30% .005 285.823);--color-base-content:oklch(92% .004 286.32);--color-primary:oklch(98% 0 0);--color-primary-content:oklch(15% 0 0);--color-secondary:oklch(65% .046 257.417);--color-secondary-content:oklch(15% .005 285.823);--color-accent:oklch(25% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(92% .004 286.32);--color-neutral-content:oklch(14% .005 285.823);--color-info:oklch(70% .1 230);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(65% .15 160);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(85% .15 90);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(55% .2 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}@layer components;@layer utilities{@layer daisyui.l1.l2.l3{.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:visibility .3s allow-discrete, background-color .3s ease-out, opacity .1s ease-out;overscroll-behavior:contain;z-index:999;scrollbar-gutter:auto;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:clip}.modal::backdrop{display:none}:where(.drawer-side){overflow:hidden}.drawer-side{pointer-events:none;visibility:hidden;z-index:10;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete, visibility .3s ease-out .1s allow-discrete;inset-inline-start:0;background-color:#0000;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0}.drawer-side>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}.drawer-side>*{grid-row-start:1;grid-column-start:1}.drawer-side>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out,width .2s ease-out;translate:-100%}[dir=rtl] :is(.drawer-side>:not(.drawer-overlay)){translate:100%}.fab{pointer-events:none;z-index:999;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;inset-inline-end:1rem;flex-direction:column-reverse;align-items:flex-end;gap:.5rem;display:flex;position:fixed;bottom:1rem}.fab>*{pointer-events:auto;align-items:center;gap:.5rem;display:flex}.fab>:hover,.fab>:has(:focus-visible){z-index:1}.fab>[tabindex]:first-child{transition-property:opacity,visibility,rotate;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:grid;position:relative}.fab .fab-close,.fab .fab-main-action{inset-inline-end:0;position:absolute;bottom:0}:is(.fab:focus-within:has(.fab-close),.fab:focus-within:has(.fab-main-action))>[tabindex]{opacity:0;rotate:90deg}.fab:focus-within>[tabindex]:first-child{pointer-events:none}.fab:focus-within>:nth-child(n+2){visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1}.fab>:nth-child(n+2){visibility:hidden;--tw-scale-x:80%;--tw-scale-y:80%;--tw-scale-z:80%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:0;transition-property:opacity,scale,visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.fab>:nth-child(n+2).fab-main-action,.fab>:nth-child(n+2).fab-close{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.fab>:nth-child(3){transition-delay:30ms}.fab>:nth-child(4){transition-delay:60ms}.fab>:nth-child(5){transition-delay:90ms}.fab>:nth-child(6){transition-delay:.12s}.drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed}:where(.drawer-toggle:checked~.drawer-side){scrollbar-color:currentColor oklch(0 0 0 / calc(var(--page-has-backdrop,0) * .4))}@supports (color:color-mix(in lab, red, red)){:where(.drawer-toggle:checked~.drawer-side){scrollbar-color:color-mix(in oklch, currentColor 35%, #0000) oklch(0 0 0 / calc(var(--page-has-backdrop,0) * .4))}}:where(:root:has(.drawer-toggle:checked)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}.tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative}.tooltip>.tooltip-content,.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);display:block;position:absolute}@media (prefers-reduced-motion:no-preference){.tooltip>.tooltip-content,.tooltip[data-tip]:before,.tooltip:after{transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms}}:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{opacity:1;--tt-pos:0rem}@media (prefers-reduced-motion:no-preference){:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}.tab{cursor:pointer;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;display:inline-flex;position:relative}@media (hover:hover){.tab:hover{color:var(--color-base-content)}}.tab{--tab-p:.75rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));--tab-radius-limit:min(var(--radius-field), var(--tab-radius-min));--tab-radius-grad:#0000 calc(69% - var(--border)), var(--tab-border-color) calc(69% - var(--border) + .25px), var(--tab-border-color) 69%, var(--tab-bg) calc(69% + .25px);order:var(--tab-order);height:var(--tab-height);padding-inline:var(--tab-p);border-color:#0000;font-size:.875rem}.tab:is(input[type=radio]){min-width:fit-content}.tab:is(input[type=radio]):after{--tw-content:attr(aria-label);content:var(--tw-content)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]))+.tab-content{display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:color-mix(in oklab, var(--color-base-content) 50%, transparent)}}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.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(--radius-field);text-align:start;text-wrap:balance;-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;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu details{interpolate-size:allow-keywords;overflow:hidden}.menu details::details-content{block-size:0}@media (prefers-reduced-motion:no-preference){.menu details::details-content{transition-behavior:allow-discrete;transition-property:block-size,content-visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.menu details[open]::details-content{block-size:auto}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{color:var(--color-base-content);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01)}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{outline-offset:2px;outline:2px solid #0000}}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise)}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth) * 3px) -2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li).menu-disabled{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.floating-label{display:block;position:relative}.floating-label input{display:block}.floating-label input::placeholder,.floating-label textarea::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}.floating-label>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem) * 10 / 2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}:is(.floating-label:focus-within,.floating-label:not(:has(input:placeholder-shown,textarea:placeholder-shown))) ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}:is(.floating-label:focus-within,.floating-label:not(:has(input:placeholder-shown,textarea:placeholder-shown)))>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}.floating-label:has(:disabled,[disabled])>span{opacity:0}.floating-label:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem) * 6 / 2);font-size:.6875rem}.floating-label:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem) * 8 / 2);font-size:.75rem}.floating-label:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem) * 10 / 2);font-size:.875rem}.floating-label:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem) * 12 / 2);font-size:1.125rem}.floating-label:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem) * 14 / 2);font-size:1.375rem}.dropdown{position-area:var(--anchor-v,bottom) var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(:has(~[class*=dropdown-content])):focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.dropdown>:not(:has(~[class*=dropdown-content])):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown.dropdown-close .dropdown-content,.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content,.dropdown.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible)~.dropdown-content{transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover],.dropdown .dropdown-content{z-index:999}@media (prefers-reduced-motion:no-preference){.dropdown[popover],.dropdown .dropdown-content{transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}}@starting-style{.dropdown[popover],.dropdown .dropdown-content{opacity:0;scale:.95}}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within) .dropdown-content,.dropdown:not(.dropdown-close).dropdown-hover:hover .dropdown-content{opacity:1;scale:1}.dropdown:is(details) summary::-webkit-details-marker{display:none}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-close{transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}:is(.dropdown[popover].dropdown-close,.dropdown[popover]:not(.dropdown-open,:popover-open)){transform-origin:top;opacity:0;display:none;scale:.95}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0 / calc(var(--depth) * .15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);--size:calc(var(--size-field,.25rem) * 10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:var(--btn-bg);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.btn{--btn-border:color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%))}}.btn{--btn-shadow:0 3px 2px -2px var(--btn-bg), 0 4px 3px -2px var(--btn-bg)}@supports (color:color-mix(in lab, red, red)){.btn{--btn-shadow:0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000), 0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000)}}.btn{--btn-noise:var(--fx-noise)}@media (hover:hover){.btn:hover{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn:hover{--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}}.btn:focus-visible,.btn:has(:focus-visible){isolation:isolate;outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:var(--btn-color,var(--color-base-200));translate:0 .5px}@supports (color:color-mix(in lab, red, red)){.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 5%)}}.btn:active:not(.btn-active){--btn-border:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn:active:not(.btn-active){--btn-border:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}.btn:active:not(.btn-active){--btn-shadow:0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0)}.btn:is(input[type=checkbox],input[type=radio]){appearance:none}.btn:is(input[type=checkbox],input[type=radio])[aria-label]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.btn:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem) * 6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.collapse{transition:grid-template-rows .2s}}.collapse>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;z-index:1;grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close)),.collapse:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){content-visibility:visible;min-height:fit-content}@supports not (content-visibility:visible){.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible}}.collapse:focus-visible,.collapse:has(>input:is([type=checkbox],[type=radio]):focus-visible),.collapse:has(summary:focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}.collapse:not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-close)>.collapse-title{cursor:pointer}:is(.collapse[tabindex]:focus:not(.collapse-close,.collapse[open]),.collapse[tabindex]:focus-within:not(.collapse-close,.collapse[open]))>.collapse-title{cursor:unset}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem}.collapse:is(details){width:100%}@media (prefers-reduced-motion:no-preference){.collapse:is(details)::details-content{transition:content-visibility .2s allow-discrete, visibility .2s allow-discrete, min-height .2s ease-out allow-discrete, padding .1s ease-out 20ms, background-color .2s ease-out, height .2s;interpolate-size:allow-keywords;height:0}.collapse:is(details):where([open])::details-content{height:auto}}.collapse:is(details) summary{display:block;position:relative}.collapse:is(details) summary::-webkit-details-marker{display:none}.collapse:is(details)>.collapse-content{content-visibility:visible}.collapse:is(details) summary{outline:none}.collapse-content{content-visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem}@supports not (content-visibility:hidden){.collapse-content{visibility:hidden}}@media (prefers-reduced-motion:no-preference){.collapse-content{transition:content-visibility .2s allow-discrete, visibility .2s allow-discrete, min-height .2s ease-out allow-discrete, padding .1s ease-out 20ms, background-color .2s ease-out}}.validator-hint{visibility:hidden;margin-top:.5rem;font-size:.75rem}.validator:user-valid{--input-color:var(--color-success)}.validator:user-valid:focus{--input-color:var(--color-success)}.validator:user-valid:checked{--input-color:var(--color-success)}.validator:user-valid[aria-checked=true]{--input-color:var(--color-success)}.validator:user-valid:focus-within{--input-color:var(--color-success)}.validator:has(:user-valid){--input-color:var(--color-success)}.validator:has(:user-valid):focus{--input-color:var(--color-success)}.validator:has(:user-valid):checked{--input-color:var(--color-success)}.validator:has(:user-valid)[aria-checked=true]{--input-color:var(--color-success)}.validator:has(:user-valid):focus-within{--input-color:var(--color-success)}.validator:user-invalid{--input-color:var(--color-error)}.validator:user-invalid:focus{--input-color:var(--color-error)}.validator:user-invalid:checked{--input-color:var(--color-error)}.validator:user-invalid[aria-checked=true]{--input-color:var(--color-error)}.validator:user-invalid:focus-within{--input-color:var(--color-error)}.validator:user-invalid~.validator-hint{visibility:visible;color:var(--color-error)}.validator:has(:user-invalid){--input-color:var(--color-error)}.validator:has(:user-invalid):focus{--input-color:var(--color-error)}.validator:has(:user-invalid):checked{--input-color:var(--color-error)}.validator:has(:user-invalid)[aria-checked=true]{--input-color:var(--color-error)}.validator:has(:user-invalid):focus-within{--input-color:var(--color-error)}.validator:has(:user-invalid)~.validator-hint{visibility:visible;color:var(--color-error)}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))),:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):focus,:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):checked,:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))[aria-checked=true],:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):focus-within{--input-color:var(--color-error)}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))~.validator-hint{visibility:visible;color:var(--color-error)}.radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size) / 10);--radialprogress:calc(var(--value) * 1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative}.radial-progress:before{content:"";background:radial-gradient(farthest-side, currentColor 98%, #0000) top/var(--thickness) var(--thickness) no-repeat, conic-gradient(currentColor var(--radialprogress), #0000 0);webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));-webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));-webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}.radial-progress:after{content:"";inset:calc(50% - var(--thickness) / 2);transform:rotate(calc(var(--value) * 3.6deg - 90deg)) translate(calc(var(--size) / 2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}.list{flex-direction:column;font-size:.875rem;display:flex}.list .list-row{--list-grid-cols:minmax(0, auto) 1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border) solid;inset-inline:var(--radius-box);border-color:var(--color-base-content);position:absolute;bottom:0}@supports (color:color-mix(in lab, red, red)){:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{border-color:color-mix(in oklab, var(--color-base-content) 5%, transparent)}}.toggle{border:var(--border) solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p), var(--radius-selector-max)) + min(var(--border), var(--radius-selector-max)));padding:var(--toggle-p);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;display:inline-grid;position:relative;box-shadow:inset 0 1px}@supports (color:color-mix(in lab, red, red)){.toggle{box-shadow:0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000) inset}}.toggle{--input-color:var(--color-base-content);transition:color .3s,grid-template-columns .2s}@supports (color:color-mix(in lab, red, red)){.toggle{--input-color:color-mix(in oklab, var(--color-base-content) 50%, #0000)}}.toggle{--toggle-p:calc(var(--size) * .125);--size:calc(var(--size-selector,.25rem) * 6);width:calc((var(--size) * 2) - (var(--border) + var(--toggle-p)) * 2);height:var(--size)}.toggle>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:0deg}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:0deg}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);width:100%;height:100%;box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor;background-color:currentColor;grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@supports (color:color-mix(in lab, red, red)){.toggle:before{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000)}}.toggle:before{background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise)}@media (forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px * -1);outline-width:1px}}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border) solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border) solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem), .875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.input{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.input{--size:calc(var(--size-field,.25rem) * 10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.input{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.input:where(input){display:inline-flex}.input :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.input :where(input):focus,.input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.input :where(input[type=url]),.input :where(input[type=email]){direction:ltr}.input :where(input[type=date]){display:inline-flex}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.input:focus,.input:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.input:focus,.input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media (pointer:coarse){@supports (-webkit-touch-callout:none){.input:focus,.input:focus-within{--font-size:1rem}}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{box-shadow:none}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;appearance:none;display:inline-flex}.input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}.indicator{width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%) var(--indicator-y,-50%);position:absolute}.table{border-collapse:separate;--tw-border-spacing-x:calc(.25rem * 0);--tw-border-spacing-y:calc(.25rem * 0);width:100%;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);border-radius:var(--radius-box);text-align:left;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media (hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(thead,tfoot){color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.table :where(thead,tfoot){font-size:.875rem;font-weight:600}.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000)}}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000)}}.steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden}.steps .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid}.steps .step:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);content:"";border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}.steps .step>.step-icon,.steps .step:not(:has(.step-icon)):after{--tw-content:counter(step);content:var(--tw-content);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}.steps .step:first-child:before{--tw-content:none;content:var(--tw-content)}.steps .step[data-content]:after{--tw-content:attr(data-content);content:var(--tw-content)}.range{appearance:none;webkit-appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem) * 6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:currentColor}@supports (color:color-mix(in lab, red, red)){.range{--range-bg:color-mix(in oklab, currentColor 10%, #0000)}}.range{cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden}[dir=rtl] .range{--range-dir:-1}.range:focus{outline:none}.range:focus-visible{outline-offset:2px;outline:2px solid}.range::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size) * .5)}@media (forced-colors:active){.range::-webkit-slider-runnable-track{border:1px solid}.range::-moz-range-track{border:1px solid}}.range::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));background-color:var(--range-thumb);height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p) solid;appearance:none;webkit-appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill));position:relative;top:50%;transform:translateY(-50%)}@supports (color:color-mix(in lab, red, red)){.range::-webkit-slider-thumb{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill))}}.range::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size) * .5)}.range::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p) solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill));background-color:currentColor;position:relative;top:50%}@supports (color:color-mix(in lab, red, red)){.range::-moz-range-thumb{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill))}}.range:disabled{cursor:not-allowed;opacity:.3}.chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative}.chat-bubble:before{background-color:inherit;content:"";width:.75rem;height:.75rem;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-chat);-webkit-mask-image:var(--mask-chat);mask-image:var(--mask-chat);position:absolute;bottom:0;-webkit-mask-position:0 -1px;mask-position:0 -1px;-webkit-mask-size:.8125rem;mask-size:.8125rem}.select{border:var(--border) solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;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-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:.75rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.select{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.select{border-color:var(--input-color);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.select{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.select{--size:calc(var(--size-field,.25rem) * 10)}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}[dir=rtl] .select::picker(select){translate:.5rem}[dir=rtl] .select select::picker(select){translate:.5rem}.select[multiple]{background-image:none;height:auto;padding-block:.75rem;padding-inline-end:.75rem;overflow:auto}.select select{appearance:none;width:calc(100% + 2.75rem);height:calc(100% - calc(var(--border) * 2));background:inherit;border-radius:inherit;border-style:none;align-items:center;margin-inline:-.75rem -1.75rem;padding-inline:.75rem 1.75rem}.select select:focus,.select select:focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.select select:focus,.select select:focus-within{outline-offset:2px;outline:2px solid #0000}}.select select:not(:last-child){background-image:none;margin-inline-end:-1.375rem}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.select:focus,.select:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.select:focus,.select:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}@supports (appearance:base-select){.select,.select select{appearance:base-select}:is(.select,.select select)::picker(select){appearance:base-select}}:is(.select,.select select)::picker(select){color:inherit;border:var(--border) solid var(--color-base-200);border-radius:var(--radius-box);background-color:inherit;max-height:min(24rem,70dvh);box-shadow:0 2px calc(var(--depth) * 3px) -2px oklch(0% 0 0/.2);box-shadow:0 20px 25px -5px rgb(0 0 0/calc(var(--depth) * .1)), 0 8px 10px -6px rgb(0 0 0/calc(var(--depth) * .1));margin-block:.5rem;margin-inline:.5rem;padding:.5rem;translate:-.5rem}:is(.select,.select select)::picker-icon{display:none}:is(.select,.select select) optgroup{padding-top:.5em}:is(.select,.select select) optgroup option:first-child{margin-top:.5em}:is(.select,.select select) option{border-radius:var(--radius-field);white-space:normal;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #0000}}:is(.select,.select select) option:not(:disabled):active{background-color:var(--color-neutral);color:var(--color-neutral-content);box-shadow:0 2px calc(var(--depth) * 3px) -2px var(--color-neutral)}.timeline{display:flex;position:relative}.timeline>li{grid-template-rows:var(--timeline-row-start,minmax(0, 1fr)) auto var(--timeline-row-end,minmax(0, 1fr));grid-template-columns:var(--timeline-col-start,minmax(0, 1fr)) auto var(--timeline-col-end,minmax(0, 1fr));flex-shrink:0;align-items:center;display:grid;position:relative}.timeline>li>hr{border:none;width:100%}.timeline>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline>li>hr:last-child{grid-area:2/3/auto/none}@media print{.timeline>li>hr{border:.1px solid var(--color-base-300)}}.timeline :where(hr){background-color:var(--color-base-300);height:.25rem}.timeline:has(.timeline-middle hr):first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline:has(.timeline-middle hr):last-child,.timeline:not(:has(.timeline-middle)) :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline:not(:has(.timeline-middle)) :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.swap{cursor:pointer;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;place-content:center;display:inline-grid;position:relative}.swap input{appearance:none;border:none}.swap>*{grid-row-start:1;grid-column-start:1}@media (prefers-reduced-motion:no-preference){.swap>*{transition-property:transform,rotate,opacity;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.swap .swap-on,.swap .swap-indeterminate,.swap input:indeterminate~.swap-on,.swap input:is(:checked,:indeterminate)~.swap-off{opacity:0}.swap input:checked~.swap-on,.swap input:indeterminate~.swap-indeterminate{opacity:1;backface-visibility:visible}.collapse-title{grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.avatar{vertical-align:middle;display:inline-flex;position:relative}.avatar>div{aspect-ratio:1;display:block;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.checkbox{border:var(--border) solid var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.checkbox{border:var(--border) solid var(--input-color,color-mix(in oklab, var(--color-base-content) 20%, #0000))}}.checkbox{cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 0 #0000 inset, 0 0 #0000;--size:calc(var(--size-selector,.25rem) * 6);width:var(--size);height:var(--size);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * .1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:0deg}}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:0deg}}.checkbox:indeterminate{background-color:var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.checkbox:indeterminate{background-color:var(--input-color,color-mix(in oklab, var(--color-base-content) 20%, #0000))}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:0deg}.radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border) solid var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative}@supports (color:color-mix(in lab, red, red)){.radio{border:var(--border) solid var(--input-color,color-mix(in srgb, currentColor 20%, #0000))}}.radio{box-shadow:0 1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset;--size:calc(var(--size-selector,.25rem) * 6);width:var(--size);height:var(--size);color:var(--input-color,currentColor)}.radio:before{--tw-content:"";content:var(--tw-content);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}.radio:focus-visible{outline:2px solid}.radio:checked,.radio[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor}@media (prefers-reduced-motion:no-preference){.radio:checked,.radio[aria-checked=true]{animation:.2s ease-out radio}}:is(.radio:checked,.radio[aria-checked=true]):before{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * .1));background-color:currentColor}@media (forced-colors:active){:is(.radio:checked,.radio[aria-checked=true]):before{outline-style:var(--tw-outline-style);outline-offset:calc(1px * -1);outline-width:1px}}@media print{:is(.radio:checked,.radio[aria-checked=true]):before{outline-offset:-1rem;outline:.25rem solid}}.rating{vertical-align:middle;display:inline-flex;position:relative}.rating input{appearance:none;border:none}.rating :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem}@media (prefers-reduced-motion:no-preference){.rating :where(*){animation:.25s ease-out rating}}.rating :where(*):is(input){cursor:pointer}.rating .rating-hidden{background-color:#0000;width:.5rem}.rating input[type=radio]:checked{background-image:none}.rating :checked,.rating [aria-checked=true],.rating [aria-current=true],.rating :has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}.rating :focus-visible{scale:1.1}@media (prefers-reduced-motion:no-preference){.rating :focus-visible{transition:scale .2s ease-out}}.rating :active:focus{animation:none;scale:1.1}.navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative}.card:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.card:focus{outline-offset:2px;outline:2px solid #0000}}.card:focus-visible{outline-color:currentColor}.card :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}.card :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}.card figure{justify-content:center;align-items:center;display:flex}.card:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;-webkit-user-select:none;user-select:none}.card:has(>:checked){outline:2px solid}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.progress{appearance:none;border-radius:var(--radius-box);background-color:currentColor;width:100%;height:.5rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.progress{background-color:color-mix(in oklab, currentcolor 20%, transparent)}}.progress{color:var(--color-base-content)}.progress:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%}@media (prefers-reduced-motion:no-preference){.progress:indeterminate{animation:5s ease-in-out infinite progress}}@supports ((-moz-appearance:none)){.progress:indeterminate::-moz-progress-bar{background-color:#0000}@media (prefers-reduced-motion:no-preference){.progress:indeterminate::-moz-progress-bar{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}.progress::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){.progress::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}.textarea{border:var(--border) solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);min-height:5rem;font-size:max(var(--font-size,.875rem), .875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;flex-shrink:1;padding-block:.5rem;padding-inline:.75rem}@supports (color:color-mix(in lab, red, red)){.textarea{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.textarea{--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.textarea{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.textarea textarea{appearance:none;background-color:#0000;border:none}.textarea textarea:focus,.textarea textarea:focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.textarea textarea:focus,.textarea textarea:focus-within{outline-offset:2px;outline:2px solid #0000}}.textarea:focus,.textarea:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.textarea:focus,.textarea:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.textarea:focus,.textarea:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media (pointer:coarse){@supports (-webkit-touch-callout:none){.textarea:focus,.textarea:focus-within{--font-size:1rem}}}.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]))::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]))::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){box-shadow:none}.textarea:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}.stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid}.stack>*{width:100%;height:100%}.stack>:nth-child(n+2){opacity:.7;width:100%}.stack>:nth-child(2){z-index:2;opacity:.9}.stack>:first-child{z-index:3;width:100%}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.tab-content{order:var(--tabcontent-order);--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box);--tabcontent-order:1;width:100%;height:calc(100% - var(--tab-height) + var(--border));margin:var(--tabcontent-margin);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.stat-figure{grid-row:1/span 3;grid-column-start:2;place-self:center flex-end}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:.95;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.timeline-middle{grid-row-start:2;grid-column-start:2}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab, red, red)){.stat-desc{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.stat-desc{font-size:.75rem}.stat-title{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab, red, red)){.stat-title{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.stat-title{font-size:.75rem}.stat-actions{white-space:nowrap;grid-column-start:1}.chat-image{grid-row:span 2/span 2;align-self:flex-end}.chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:var(--color-base-content);flex-direction:row;align-self:stretch;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.divider{--divider-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.divider:before,.divider:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{--tw-content:"×";content:var(--tw-content)}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.label{white-space:nowrap;color:currentColor;align-items:center;gap:.375rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.label{color:color-mix(in oklab, currentcolor 60%, transparent)}}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border) solid currentColor;margin-inline:-.75rem .75rem}@supports (color:color-mix(in lab, red, red)){.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border) solid color-mix(in oklab, currentColor 10%, #0000)}}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border) solid currentColor;margin-inline:.75rem -.75rem}@supports (color:color-mix(in lab, red, red)){.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border) solid color-mix(in oklab, currentColor 10%, #0000)}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border) solid var(--badge-color,var(--color-base-200));background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem) * 6);width:fit-content;height:var(--size);padding-inline:calc(var(--size) / 2 - var(--border));justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border) solid var(--color-base-content);justify-content:center;align-items:center;padding-inline:.5em;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.kbd{border:var(--border) solid color-mix(in srgb, var(--color-base-content) 20%, #0000)}}.kbd{border-bottom:calc(var(--border) + 1px) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.kbd{border-bottom:calc(var(--border) + 1px) solid color-mix(in srgb, var(--color-base-content) 20%, #0000)}}.kbd{--size:calc(var(--size-selector,.25rem) * 6);height:var(--size);min-width:var(--size);font-size:.875rem}.text-rotate{vertical-align:bottom;white-space:nowrap;--duration:var(--tw-duration);transition-property:none;display:inline-block;overflow:hidden}.text-rotate>*{height:calc(var(--items,1) * 100%);justify-items:start;display:grid}.text-rotate>:has(:nth-child(2)){--items:2;animation:rotator var(--duration,10s) linear(0 0% 49%, .5 50% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(3)){--items:3;animation:rotator var(--duration,10s) linear(0 0% 32%, .333333 33% 65%, .666666 66% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(4)){--items:4;animation:rotator var(--duration,10s) linear(0 0% 24%, .25 25% 49%, .5 50% 74%, .75 75% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(5)){--items:5;animation:rotator var(--duration,10s) linear(0 0% 19%, .2 20% 39%, .4 40% 59%, .6 60% 79%, .8 80% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(6)){--items:6;animation:rotator var(--duration,10s) linear(0 0% 15%, .16666 16% 32%, .333333 33% 49%, .5 50% 65%, .666666 66% 82%, .833333 83% 99%, 1 100% 100%) infinite}.text-rotate>*>*{clip-path:inset(.5px 0);align-content:baseline}.text-rotate>*>:first-child{translate:var(--first-item-position)}.text-rotate:hover>*{animation-play-state:paused}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem) * 10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid}.footer>*{place-items:start;gap:.5rem;display:grid}.footer.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center}.footer.footer-center>*{place-items:center}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border) dashed currentColor}@supports (color:color-mix(in lab, red, red)){.stat:not(:last-child){border-inline-end:var(--border) dashed color-mix(in oklab, currentColor 10%, #0000)}}.stat:not(:last-child){border-block-end:none}.navbar-end{justify-content:flex-end;align-items:center;width:50%;display:inline-flex}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex}.card-body :where(p){flex-grow:1}.fieldset-label{color:var(--color-base-content);align-items:center;gap:.375rem;display:flex}@supports (color:color-mix(in lab, red, red)){.fieldset-label{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.fieldset-label:has(input){cursor:pointer}.carousel{scroll-snap-type:x mandatory;scrollbar-width:none;display:inline-flex;overflow-x:scroll}@media (prefers-reduced-motion:no-preference){.carousel{scroll-behavior:smooth}}.carousel::-webkit-scrollbar{display:none}.alert{--alert-border-color:var(--color-base-200);border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * .08)) inset, 0 1px #000, 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * .08));border-style:solid;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}@supports (color:color-mix(in lab, red, red)){.alert{box-shadow:0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * .08)) inset, 0 1px color-mix(in oklab, color-mix(in oklab, #000 20%, var(--alert-color,var(--color-base-200))) calc(var(--depth) * 20%), #0000), 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * .08))}}.alert:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}.fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");grid-auto-rows:min-content;column-gap:.75rem;padding-block:.25rem;display:grid}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.mask{vertical-align:middle;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.skeleton{border-radius:var(--radius-box);background-color:var(--color-base-300)}@media (prefers-reduced-motion:reduce){.skeleton{transition-duration:15s}}.skeleton{will-change:background-position;background-image:linear-gradient(105deg, #0000 0% 40%, var(--color-base-100) 50%, #0000 60% 100%);background-position-x:-50%;background-size:200%}@media (prefers-reduced-motion:no-preference){.skeleton{animation:1.8s ease-in-out infinite skeleton}}.timeline-box{border:var(--border) solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.btn-neutral{--btn-color:var(--color-neutral);--btn-fg:var(--color-neutral-content)}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}}@layer daisyui.l1.l2{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;transition:visibility 0s allow-discrete, background-color .3s ease-out, opacity .1s ease-out;background-color:oklch(0% 0 0/.4)}:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal) .modal-box{opacity:1;translate:0;scale:1}:root:has(:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}@starting-style{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{opacity:0}}:where(.drawer-toggle:checked~.drawer-side){pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto}:where(.drawer-toggle:checked~.drawer-side)>:not(.drawer-overlay){translate:0%}.drawer-toggle:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off) 50%}.tooltip:after{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail) 50%}.collapse-arrow>.collapse-title:after{width:.5rem;height:.5rem;display:block;position:absolute;transform:translateY(-100%)rotate(45deg)}@media (prefers-reduced-motion:no-preference){.collapse-arrow>.collapse-title:after{transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}}.collapse-arrow>.collapse-title:after{content:"";transform-origin:75% 75%;pointer-events:none;top:50%;inset-inline-end:1.4rem;box-shadow:2px 2px}.btn:disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn:disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn:disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn:disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn:disabled{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}.btn[disabled]:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn[disabled]:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn[disabled]:not(.btn-link,.btn-ghost){box-shadow:none}.btn[disabled]{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn[disabled]{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}.btn-disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn-disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn-disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn-disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn-disabled{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}@media (prefers-reduced-motion:no-preference){.collapse[open].collapse-arrow>.collapse-title:after,.collapse.collapse-open.collapse-arrow>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}.collapse.collapse-open.collapse-plus>.collapse-title:after{--tw-content:"−";content:var(--tw-content)}:is(.collapse[tabindex].collapse-arrow:focus:not(.collapse-close),.collapse.collapse-arrow[tabindex]:focus-within:not(.collapse-close))>.collapse-title:after,.collapse.collapse-arrow:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}.collapse[open].collapse-plus>.collapse-title:after,.collapse[tabindex].collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse.collapse-plus:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{--tw-content:"−";content:var(--tw-content)}.list .list-row:has(.list-col-grow:first-child){--list-grid-cols:1fr}.list .list-row:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row>*{grid-row-start:1}.steps .step-neutral+.step-neutral:before,.steps .step-neutral:after,.steps .step-neutral>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}.steps .step-primary+.step-primary:before,.steps .step-primary:after,.steps .step-primary>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}.steps .step-secondary+.step-secondary:before,.steps .step-secondary:after,.steps .step-secondary>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}.steps .step-accent+.step-accent:before,.steps .step-accent:after,.steps .step-accent>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}.steps .step-info+.step-info:before,.steps .step-info:after,.steps .step-info>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}.steps .step-success+.step-success:before,.steps .step-success:after,.steps .step-success>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}.steps .step-warning+.step-warning:before,.steps .step-warning:after,.steps .step-warning>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}.steps .step-error+.step-error:before,.steps .step-error:after,.steps .step-error>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}.tabs-border>.tab{--tab-border-color:#0000 #0000 var(--tab-border-color) #0000;border-radius:var(--radius-field);position:relative}.tabs-border>.tab:before{content:"";background-color:var(--tab-border-color);border-radius:var(--radius-field);width:80%;height:3px;transition:background-color .2s;position:absolute;bottom:0;left:10%}:is(.tabs-border>.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-border>.tab:is(input:checked),.tabs-border>.tab:is(label:has(:checked))):before{--tab-border-color:currentColor;border-top:3px solid}.checkbox:disabled,.radio:disabled{cursor:not-allowed;opacity:.2}.rating.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}.rating.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}.rating.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}.rating.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}.rating.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}:where(.navbar){position:relative}.tooltip-right>.tooltip-content,.tooltip-right[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem)) translateY(-50%);inset:50% auto auto var(--tt-off)}.tooltip-right:after{transform:translateX(var(--tt-pos,-.25rem)) translateY(-50%) rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}.tooltip-top>.tooltip-content,.tooltip-top[data-tip]:before{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off) 50%}.tooltip-top:after{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail) 50%}.chat-end{grid-template-columns:1fr auto;place-items:end}.chat-end .chat-header,.chat-end .chat-footer{grid-column-start:1}.chat-end .chat-image{grid-column-start:2}.chat-end .chat-bubble{border-end-end-radius:0;grid-column-start:1}.chat-end .chat-bubble:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] :is(.chat-end .chat-bubble):before{transform:rotateY(0)}.chat-start{grid-template-columns:auto 1fr;place-items:start}.chat-start .chat-header,.chat-start .chat-footer{grid-column-start:2}.chat-start .chat-image{grid-column-start:1}.chat-start .chat-bubble{border-end-start-radius:0;grid-column-start:2}.chat-start .chat-bubble:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] :is(.chat-start .chat-bubble):before{transform:rotateY(180deg)}.dropdown-bottom{--anchor-v:bottom}.dropdown-bottom .dropdown-content{transform-origin:top;top:100%;bottom:auto}.btn-active{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn-active{--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}.btn-active{--btn-shadow:0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);isolation:isolate}:is(.stack,.stack.stack-bottom)>*{grid-area:3/3/6/4}:is(.stack,.stack.stack-bottom)>:nth-child(2){grid-area:2/2/5/5}:is(.stack,.stack.stack-bottom)>:first-child{grid-area:1/1/4/6}.stack.stack-top>*{grid-area:1/3/4/4}.stack.stack-top>:nth-child(2){grid-area:2/2/5/5}.stack.stack-top>:first-child{grid-area:3/1/6/6}.stack.stack-start>*{grid-area:3/1/4/4}.stack.stack-start>:nth-child(2){grid-area:2/2/5/5}.stack.stack-start>:first-child{grid-area:1/3/6/6}.stack.stack-end>*{grid-area:3/3/4/6}.stack.stack-end>:nth-child(2){grid-area:2/2/5/5}.stack.stack-end>:first-child{grid-area:1/1/6/4}.tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(3 * var(--radius-field));border-radius:calc(min(var(--tab-height) / 2, var(--radius-field)) + min(.25rem, var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 .5px oklch(0% 0 0 / calc(var(--depth) * .05)) inset;padding:.25rem}.tabs-box>.tab{border-radius:var(--radius-field);border-style:none}.tabs-box>.tab:focus-visible,.tabs-box>.tab:is(label:has(:checked:focus-visible)){outline-offset:2px}.tabs-box>.tab:focus-visible{z-index:1}.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px 1px -1px var(--color-neutral), 0 1px 6px -4px var(--color-neutral)}@supports (color:color-mix(in lab, red, red)){.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){box-shadow:0 1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px 1px -1px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 50%), #0000), 0 1px 6px -4px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 100%), #0000)}}@media (forced-colors:active){.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){border:1px solid}}.tabs-box>.tab-content{height:calc(100% - var(--tab-height) + var(--border) - .5rem);border-radius:calc(min(var(--tab-height) / 2, var(--radius-field)) + min(.25rem, var(--tabs-box-radius)) - var(--border));margin-top:.25rem}.timeline-horizontal{flex-direction:row}.timeline-horizontal>li{align-items:center}.timeline-horizontal>li>hr{width:100%;height:.25rem}.timeline-horizontal>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline-horizontal>li>hr:last-child{grid-area:2/3/auto/none}.timeline-horizontal .timeline-start{grid-area:1/1/2/4;place-self:flex-end center}.timeline-horizontal .timeline-end{grid-area:3/1/4/4;place-self:flex-start center}.timeline-horizontal:has(.timeline-middle)>li>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline-horizontal:has(.timeline-middle)>li>hr:last-child,.timeline-horizontal:not(:has(.timeline-middle)) :first-child>hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline-horizontal:not(:has(.timeline-middle)) :last-child>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline-vertical{flex-direction:column}.timeline-vertical>li{--timeline-row-start:minmax(0, 1fr);--timeline-row-end:minmax(0, 1fr);justify-items:center}.timeline-vertical>li>hr{width:.25rem;height:100%}.timeline-vertical>li>hr:first-child{grid-row-start:1;grid-column-start:2}.timeline-vertical>li>hr:last-child{grid-area:3/2/none}.timeline-vertical .timeline-start{grid-area:1/1/4/2;place-self:center flex-end}.timeline-vertical .timeline-end{grid-area:1/3/4/4;place-self:center flex-start}.timeline-vertical:has(.timeline-middle)>li>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.timeline-vertical:has(.timeline-middle)>li>hr:last-child,.timeline-vertical:not(:has(.timeline-middle)) :first-child>hr:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}.timeline-vertical:not(:has(.timeline-middle)) :last-child>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.timeline-vertical.timeline-snap-icon>li{--timeline-col-start:minmax(0, 1fr);--timeline-row-start:.5rem}.timeline-compact{--timeline-row-start:0}.timeline-compact .timeline-start{grid-area:3/1/4/4;place-self:flex-start center}.timeline-compact li:has(.timeline-start) .timeline-end{grid-row-start:auto;grid-column-start:none}.timeline-compact.timeline-vertical>li{--timeline-col-start:0}.timeline-compact.timeline-vertical .timeline-start{grid-area:1/3/4/4;place-self:center flex-start}.timeline-compact.timeline-vertical li:has(.timeline-start) .timeline-end{grid-row-start:none;grid-column-start:auto}.drawer-end{grid-auto-columns:auto max-content}.drawer-end>.drawer-toggle~.drawer-content{grid-column-start:1}.drawer-end>.drawer-toggle~.drawer-side{grid-column-start:2;justify-items:end}.drawer-end>.drawer-toggle~.drawer-side>:not(.drawer-overlay){translate:100%}[dir=rtl] :is(.drawer-end>.drawer-toggle~.drawer-side>:not(.drawer-overlay)){translate:-100%}.drawer-end>.drawer-toggle:checked~.drawer-side>:not(.drawer-overlay){translate:0%}.input-lg{--size:calc(var(--size-field,.25rem) * 12);font-size:max(var(--font-size,1.125rem), 1.125rem)}.input-lg[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input-sm{--size:calc(var(--size-field,.25rem) * 8);font-size:max(var(--font-size,.75rem), .75rem)}.input-sm[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.input-xs{--size:calc(var(--size-field,.25rem) * 6);font-size:max(var(--font-size,.6875rem), .6875rem)}.input-xs[type=number]::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}.modal-bottom{place-items:end}.modal-bottom .modal-box{--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.btn-block{width:100%}.swap-rotate .swap-on,.swap-rotate input:indeterminate~.swap-on{rotate:45deg}.swap-rotate input:is(:checked,:indeterminate)~.swap-on,.swap-rotate.swap-active .swap-on{rotate:0deg}.swap-rotate input:is(:checked,:indeterminate)~.swap-off,.swap-rotate.swap-active .swap-off{rotate:-45deg}.stats-horizontal{grid-auto-flow:column;overflow-x:auto}.stats-horizontal .stat:not(:last-child){border-inline-end:var(--border) dashed currentColor}@supports (color:color-mix(in lab, red, red)){.stats-horizontal .stat:not(:last-child){border-inline-end:var(--border) dashed color-mix(in oklab, currentColor 10%, #0000)}}.stats-horizontal .stat:not(:last-child){border-block-end:none}.stats-vertical{grid-auto-flow:row;overflow-y:auto}.stats-vertical .stat:not(:last-child){border-inline-end:none;border-block-end:var(--border) dashed currentColor}@supports (color:color-mix(in lab, red, red)){.stats-vertical .stat:not(:last-child){border-block-end:var(--border) dashed color-mix(in oklab, currentColor 10%, #0000)}}.badge-dash{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-style:dashed;border-color:currentColor}.badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.table-zebra tbody tr:where(:nth-child(2n)),.table-zebra tbody tr:where(:nth-child(2n)) :where(.table-pin-cols tr th){background-color:var(--color-base-200)}@media (hover:hover){:is(.table-zebra tbody tr.row-hover,.table-zebra tbody tr.row-hover:where(:nth-child(2n))):hover{background-color:var(--color-base-300)}}.skeleton-text{webkit-background-clip:text;color:#0000;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(105deg, var(--color-base-content) 0% 40%, var(--color-base-content) 50%, var(--color-base-content) 60% 100%)}@supports (color:color-mix(in lab, red, red)){.skeleton-text{background-image:linear-gradient(105deg, color-mix(in oklab, var(--color-base-content) 20%, transparent) 0% 40%, var(--color-base-content) 50%, color-mix(in oklab, var(--color-base-content) 20%, transparent) 60% 100%)}}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.mask-circle{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle fill='black' cx='100' cy='100' r='100' fill-rule='evenodd'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle fill='black' cx='100' cy='100' r='100' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-heart{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e")}.mask-star{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e")}.checkbox-lg{--size:calc(var(--size-selector,.25rem) * 7);padding:.3125rem}.radio-lg{padding:.3125rem}.radio-lg[type=radio]{--size:calc(var(--size-selector,.25rem) * 7)}.select-lg{--size:calc(var(--size-field,.25rem) * 12);font-size:1.125rem}.select-lg option{padding-block:.375rem;padding-inline:1rem}.table-lg :not(thead,tfoot) tr{font-size:1.125rem}.table-lg :where(th,td){padding-block:1rem;padding-inline:1.25rem}.badge-lg{--size:calc(var(--size-selector,.25rem) * 7);font-size:1rem}.alert-error{color:var(--color-error-content);--alert-border-color:var(--color-error);--alert-color:var(--color-error)}.alert-info{color:var(--color-info-content);--alert-border-color:var(--color-info);--alert-color:var(--color-info)}.alert-success{color:var(--color-success-content);--alert-border-color:var(--color-success);--alert-color:var(--color-success)}.alert-warning{color:var(--color-warning-content);--alert-border-color:var(--color-warning);--alert-color:var(--color-warning)}.checkbox-accent{color:var(--color-accent-content);--input-color:var(--color-accent)}.checkbox-error{color:var(--color-error-content);--input-color:var(--color-error)}.range-accent{color:var(--color-accent);--range-thumb:var(--color-accent-content)}.range-error{color:var(--color-error);--range-thumb:var(--color-error-content)}.tooltip-accent{--tt-bg:var(--color-accent)}.tooltip-accent>.tooltip-content,.tooltip-accent[data-tip]:before{color:var(--color-accent-content)}.tooltip-error{--tt-bg:var(--color-error)}.tooltip-error>.tooltip-content,.tooltip-error[data-tip]:before{color:var(--color-error-content)}.swap-active .swap-off{opacity:0}.swap-active .swap-on{opacity:1}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem) * 12)}.btn-md{--fontsize:.875rem;--btn-p:1rem;--size:calc(var(--size-field,.25rem) * 10)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem) * 8)}.btn-xl{--fontsize:1.375rem;--btn-p:1.5rem;--size:calc(var(--size-field,.25rem) * 14)}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem) * 6)}.badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.input-error,.input-error:focus,.input-error:focus-within{--input-color:var(--color-error)}.input-secondary,.input-secondary:focus,.input-secondary:focus-within{--input-color:var(--color-secondary)}.radio-accent{--input-color:var(--color-accent)}.radio-error{--input-color:var(--color-error)}.range-lg{--range-thumb-size:calc(var(--size-selector,.25rem) * 7)}.range-xs{--range-thumb-size:calc(var(--size-selector,.25rem) * 4)}.select-error,.select-error:focus,.select-error:focus-within{--input-color:var(--color-error)}.select-secondary,.select-secondary:focus,.select-secondary:focus-within{--input-color:var(--color-secondary)}.toggle-accent:checked,.toggle-accent[aria-checked=true]{--input-color:var(--color-accent)}.toggle-lg[type=checkbox],.toggle-lg:has([type=checkbox]){--size:calc(var(--size-selector,.25rem) * 7)}}.prose :where(a.btn:not(.btn-link)):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse:not(td,tr,colgroup){visibility:revert-layer}.validator:user-invalid~.validator-hint{display:revert-layer}.validator:has(:user-invalid)~.validator-hint{display:revert-layer}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))~.validator-hint{display:revert-layer}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-10{top:calc(var(--spacing) * 10)}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-1\/4{right:25%}.right-3{right:calc(var(--spacing) * 3)}.right-6{right:calc(var(--spacing) * 6)}.-bottom-5{bottom:calc(var(--spacing) * -5)}.bottom-6{bottom:calc(var(--spacing) * 6)}.bottom-10{bottom:calc(var(--spacing) * 10)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-1\/4{left:25%}.left-3{left:calc(var(--spacing) * 3)}.left-6{left:calc(var(--spacing) * 6)}.-z-0{z-index:calc(0 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-50,.z-\[50\]{z-index:50}.z-\[90\]{z-index:90}.z-\[100\]{z-index:100}.z-\[110\]{z-index:110}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-1{margin:calc(var(--spacing) * 1)}.m-4{margin:calc(var(--spacing) * 4)}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-auto{margin-inline:auto}.my-16{margin-block:calc(var(--spacing) * 16)}.-mt-10{margin-top:calc(var(--spacing) * -10)}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.icon-\[lucide--alert-circle\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 8v4m0 4h.01'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--alert-triangle\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m21.73 18l-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3M12 9v4m0 4h.01'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-center\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M17 12H7m12 6H5M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 12H3m14 6H3M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H9m12 6H7M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--bold\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--calendar\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M8 2v4m8-4v4'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--check-circle\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M21.801 10A10 10 0 1 1 17 3.335'/%3E%3Cpath d='m9 11l3 3L22 4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--check\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevron-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m15 18l-6-6l6-6'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevron-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m9 18l6-6l-6-6'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevrons-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m11 17l-5-5l5-5m7 10l-5-5l5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevrons-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 17l5-5l-5-5m7 10l5-5l-5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--clock\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--code-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m18 16l4-4l-4-4M6 8l-4 4l4 4m8.5-12l-5 16'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eraser\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21m-7.752-9.91l8.828 8.828'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eye-off\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575a1 1 0 0 1 0 .696a10.8 10.8 0 0 1-1.444 2.49m-6.41-.679a3 3 0 0 1-4.242-4.242'/%3E%3Cpath d='M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 4.446-5.143M2 2l20 20'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eye\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--hash\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 9h16M4 15h16M10 3L8 21m8-18l-2 18'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--indent-decrease\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M7 8l-4 4l4 4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--indent-increase\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M3 8l4 4l-4 4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--info\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4m0-4h.01'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--italic\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 4h-9m4 16H5M15 4L9 20'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--link\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--list-ordered\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M11 5h10m-10 7h10m-10 7h10M4 4h1v5M4 9h2m.5 11H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--list\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M3 5h.01M3 12h.01M3 19h.01M8 5h13M8 12h13M8 19h13'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--lock\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='18' height='11' x='3' y='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--mail\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m22 7l-8.991 5.727a2 2 0 0 1-2.009 0L2 7'/%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--moon\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--paperclip\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m16 6l-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--phone\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233a14 14 0 0 0 6.392 6.384'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--quote\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1a6 6 0 0 0 6-6V5a2 2 0 0 0-2-2zM5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1a6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--redo-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m15 14l5-5l-5-5'/%3E%3Cpath d='M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--search\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m21 21l-4.34-4.34'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--smile\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8 14s1.5 2 4 2s4-2 4-2M9 9h.01M15 9h.01'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--sun\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--text\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 18H3M17 6H3m18 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--underline\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 4v6a6 6 0 0 0 12 0V4M4 20h16'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--undo-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M9 14L4 9l5-5'/%3E%3Cpath d='M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--upload\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 3v12m5-7l-5-5l-5 5m14 7v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--user\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--x\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.kbd{box-shadow:none}.text-rotate{height:1lh}.alert{border-width:var(--border);border-color:var(--alert-border-color,var(--color-base-200))}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-12{height:calc(var(--spacing) * 12)}.h-20{height:calc(var(--spacing) * 20)}.h-48{height:calc(var(--spacing) * 48)}.h-96{height:calc(var(--spacing) * 96)}.h-auto{height:auto}.h-full{height:100%}.max-h-60{max-height:calc(var(--spacing) * 60)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[22rem\]{min-height:22rem}.min-h-full{min-height:100%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-10{width:calc(var(--spacing) * 10)}.w-32{width:calc(var(--spacing) * 32)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-52{width:calc(var(--spacing) * 52)}.w-56{width:calc(var(--spacing) * 56)}.w-60{width:calc(var(--spacing) * 60)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-96{width:calc(var(--spacing) * 96)}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.w-xs{width:var(--container-xs)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[200px\]{max-width:200px}.max-w-md{max-width:var(--container-md)}.min-w-\[48px\]{min-width:48px}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-10{--tw-translate-x:calc(var(--spacing) * 10);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-box{border-radius:var(--radius-box);border-radius:var(--radius-box)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}@layer daisyui.l1{.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}.alert-soft{color:var(--alert-color,var(--color-base-content));background:var(--alert-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.alert-soft{background:color-mix(in oklab, var(--alert-color,var(--color-base-content)) 8%, var(--color-base-100))}}.alert-soft{--alert-border-color:var(--alert-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.alert-soft{--alert-border-color:color-mix(in oklab, var(--alert-color,var(--color-base-content)) 10%, var(--color-base-100))}}.alert-soft{box-shadow:none;background-image:none}.btn-link{--btn-border:#0000;--btn-bg:#0000;--btn-noise:none;--btn-shadow:"";outline-color:currentColor;text-decoration-line:underline}.btn-link:not(.btn-disabled,.btn:disabled,.btn[disabled]){--btn-fg:var(--btn-color,var(--color-primary))}.btn-link:is(.btn-active,:hover,:active:focus,:focus-visible){--btn-border:#0000;--btn-bg:#0000}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)):not(:disabled,[disabled],.btn-disabled){--btn-fg:var(--btn-color,currentColor);outline-color:currentColor}@media (hover:none){.btn-ghost:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color,currentColor);--btn-border:#0000;--btn-noise:none;outline-color:currentColor}}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn),:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){.btn-outline:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-base-200\/30{border-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.border-base-200\/30{border-color:color-mix(in oklab, var(--color-base-200) 30%, transparent)}}.border-base-300{border-color:var(--color-base-300)}.border-base-content\/20{border-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.border-base-content\/20{border-color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.border-black\/5{border-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.border-black\/5{border-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.border-black\/10{border-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.border-black\/10{border-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.border-primary{border-color:var(--color-primary)}.bg-base-100,.bg-base-100\/50{background-color:var(--color-base-100)}@supports (color:color-mix(in lab, red, red)){.bg-base-100\/50{background-color:color-mix(in oklab, var(--color-base-100) 50%, transparent)}}.bg-base-200,.bg-base-200\/30{background-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.bg-base-200\/30{background-color:color-mix(in oklab, var(--color-base-200) 30%, transparent)}}.bg-base-200\/50{background-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.bg-base-200\/50{background-color:color-mix(in oklab, var(--color-base-200) 50%, transparent)}}.bg-base-300{background-color:var(--color-base-300)}.bg-primary,.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--color-primary) 10%, transparent)}}.bg-primary\/20{background-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--color-primary) 20%, transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:#0000}.bg-linear-to-r{--tw-gradient-position:to right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-r{--tw-gradient-position:to right in oklab}}.bg-linear-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.from-secondary{--tw-gradient-from:var(--color-secondary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-accent{--tw-gradient-via:var(--color-accent);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-primary{--tw-gradient-to:var(--color-primary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.mask-circle{--tw-mask-radial-shape:circle}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-10{padding-inline:calc(var(--spacing) * 10)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-10{padding-left:calc(var(--spacing) * 10)}.\!text-center{text-align:center!important}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.text-accent{color:var(--color-accent)}.text-base-content,.text-base-content\/60{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.text-base-content\/60{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.text-base-content\/90{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.text-base-content\/90{color:color-mix(in oklab, var(--color-base-content) 90%, transparent)}}.text-error{color:var(--color-error)}.text-primary{color:var(--color-primary)}.text-primary-content{color:var(--color-primary-content)}.text-secondary{color:var(--color-secondary)}.text-secondary-content{color:var(--color-secondary-content)}.text-transparent{color:#0000}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-secondary\/20{--tw-shadow-color:var(--color-secondary)}@supports (color:color-mix(in lab, red, red)){.shadow-secondary\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-secondary) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-primary{--tw-ring-color:var(--color-primary)}.ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.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,)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));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,)}.drop-shadow-2xl{--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}}.before\:z-50:before,.after\:z-50:after{content:var(--tw-content);z-index:50}@media (hover:hover){.hover\:z-10:hover{z-index:10}.hover\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-accent\/40:hover{border-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:border-accent\/40:hover{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.hover\:border-base-content\/20:hover{border-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.hover\:border-base-content\/20:hover{border-color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.hover\:border-primary\/40:hover{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab, var(--color-primary) 40%, transparent)}}.hover\:border-primary\/50:hover{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab, var(--color-primary) 50%, transparent)}}.hover\:border-secondary\/40:hover{border-color:var(--color-secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-secondary\/40:hover{border-color:color-mix(in oklab, var(--color-secondary) 40%, transparent)}}.hover\:bg-base-200:hover{background-color:var(--color-base-200)}.hover\:bg-base-300:hover{background-color:var(--color-base-300)}.hover\:text-base-content:hover{color:var(--color-base-content)}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-100:hover{opacity:1}}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media (min-width:48rem){.md\:h-64{height:calc(var(--spacing) * 64)}.md\:w-64{width:calc(var(--spacing) * 64)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-9xl{font-size:var(--text-9xl);line-height:var(--tw-leading,var(--text-9xl--line-height))}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (hover:hover){.\[\&_\.resizable-img-container\]\:hover\:border-primary .resizable-img-container:hover{border-color:var(--color-primary)}}.\[\&_blockquote\]\:border-l-4 blockquote{border-left-style:var(--tw-border-style);border-left-width:4px}.\[\&_blockquote\]\:border-base-300 blockquote{border-color:var(--color-base-300)}.\[\&_blockquote\]\:pl-4 blockquote{padding-left:calc(var(--spacing) * 4)}.\[\&_blockquote\]\:italic blockquote{font-style:italic}.\[\&_ol\]\:list-decimal ol{list-style-type:decimal}.\[\&_ol\]\:pl-8 ol{padding-left:calc(var(--spacing) * 8)}.\[\&_ul\]\:list-disc ul{list-style-type:disc}.\[\&_ul\]\:pl-8 ul{padding-left:calc(var(--spacing) * 8)}.\[\&\>div\]\:m-0>div{margin:calc(var(--spacing) * 0)}.\[\&\>div\]\:min-h-\[1em\]>div{min-height:1em}.\[\&\>p\]\:m-0>p{margin:calc(var(--spacing) * 0)}@keyframes fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.animate-fade-in{animation:.15s ease-out forwards fade-in}}:root{font-size:14px}.input,.label,.select,.textarea{transition:all .3s cubic-bezier(.4,0,.2,1)}:is(.input,.label,.select,.textarea):focus,:is(.input,.label,.select,.textarea):focus-within{box-shadow:0 0 4px;outline:none!important}:is(.input,.label,.select,.textarea):hover:not(:focus){background-color:oklch(from var(--color-base-100) calc(l - .03) c h)}.floating-label span{color:oklch(30% .01 260);font-size:1.1rem;transition:all .2s}.floating-label:focus-within span{color:oklch(25% .02 260);font-size:1.1rem}.floating-label:has(input:not(:placeholder-shown)) span{color:oklch(28% .01 260);font-size:1.1rem}.tab-content-inner{transform-origin:top;animation:.3s cubic-bezier(.4,0,.2,1) tabFadeIn}.input-container{flex-direction:column;width:100%;display:flex;position:relative}.input-container .input{align-items:center;width:100%;display:flex}.input-content{z-index:50;background:oklch(var(--b1));border:1px solid oklch(var(--bc) / .2);border-radius:var(--rounded-box,1rem);margin-top:.25rem;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a}.input-content .menu{width:100%}@keyframes tabFadeIn{0%{opacity:0;transform:scaleY(.95)}to{opacity:1;transform:scaleY(1)}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes dropdown{0%{opacity:0}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@keyframes rotator{89.9999%,to{--first-item-position:0 0%}90%,99.9999%{--first-item-position:0 calc(var(--items) * 100%)}to{translate:0 -100%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes menu{0%{opacity:0}}@keyframes progress{50%{background-position-x:-115%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes pulse{50%{opacity:.5}} \ No newline at end of file +@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-7xl:4.5rem;--text-7xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-3xl:1.5rem;--drop-shadow-2xl:0 25px 25px #00000026;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");scrollbar-color:currentColor #0000}@supports (color:color-mix(in lab, red, red)){:root{scrollbar-color:color-mix(in oklch, currentColor 35%, #0000) #0000}}@property --radialprogress{syntax:"";inherits:true;initial-value:0%}:root:not(span){overflow:var(--page-overflow)}:root{background:var(--page-scroll-bg,var(--root-bg));--page-scroll-bg-on:linear-gradient(var(--root-bg,#0000), var(--root-bg,#0000)) var(--root-bg,#0000)}@supports (color:color-mix(in lab, red, red)){:root{--page-scroll-bg-on:linear-gradient(var(--root-bg,#0000), var(--root-bg,#0000)) color-mix(in srgb, var(--root-bg,#0000), oklch(0% 0 0) calc(var(--page-has-backdrop,0) * 40%))}}:root{--page-scroll-transition-on:background-color .3s ease-out;transition:var(--page-scroll-transition);scrollbar-gutter:var(--page-scroll-gutter,unset);scrollbar-gutter:if(style(--page-has-scroll: 1): var(--page-scroll-gutter,unset) ; else: unset)}@keyframes set-page-has-scroll{0%,to{--page-has-scroll:1}}:root,[data-theme]{background:var(--page-scroll-bg,var(--root-bg));color:var(--color-base-content)}:where(:root,[data-theme]){--root-bg:var(--color-base-100)}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(92% 0 0);--color-base-content:oklch(25% .006 285);--color-primary:oklch(25% .006 285);--color-primary-content:oklch(98% 0 0);--color-secondary:oklch(55% .046 257.417);--color-secondary-content:oklch(98% 0 0);--color-accent:oklch(96% 0 0);--color-accent-content:oklch(25% .006 285);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(62% .17 163);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .18 84);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(60% .25 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(15% .005 285.823);--color-base-200:oklch(20% .005 285.823);--color-base-300:oklch(30% .005 285.823);--color-base-content:oklch(92% .004 286.32);--color-primary:oklch(98% 0 0);--color-primary-content:oklch(15% 0 0);--color-secondary:oklch(65% .046 257.417);--color-secondary-content:oklch(15% .005 285.823);--color-accent:oklch(25% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(92% .004 286.32);--color-neutral-content:oklch(14% .005 285.823);--color-info:oklch(70% .1 230);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(65% .15 160);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(85% .15 90);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(55% .2 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(15% .005 285.823);--color-base-200:oklch(20% .005 285.823);--color-base-300:oklch(30% .005 285.823);--color-base-content:oklch(92% .004 286.32);--color-primary:oklch(98% 0 0);--color-primary-content:oklch(15% 0 0);--color-secondary:oklch(65% .046 257.417);--color-secondary-content:oklch(15% .005 285.823);--color-accent:oklch(25% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(92% .004 286.32);--color-neutral-content:oklch(14% .005 285.823);--color-info:oklch(70% .1 230);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(65% .15 160);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(85% .15 90);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(55% .2 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}@layer components;@layer utilities{@layer daisyui.l1.l2.l3{.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:visibility .3s allow-discrete, background-color .3s ease-out, opacity .1s ease-out;overscroll-behavior:contain;z-index:999;scrollbar-gutter:auto;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:clip}.modal::backdrop{display:none}:where(.drawer-side){overflow:hidden}.drawer-side{pointer-events:none;visibility:hidden;z-index:10;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete, visibility .3s ease-out .1s allow-discrete;inset-inline-start:0;background-color:#0000;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0}.drawer-side>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}.drawer-side>*{grid-row-start:1;grid-column-start:1}.drawer-side>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out,width .2s ease-out;translate:-100%}[dir=rtl] :is(.drawer-side>:not(.drawer-overlay)){translate:100%}.fab{pointer-events:none;z-index:999;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;inset-inline-end:1rem;flex-direction:column-reverse;align-items:flex-end;gap:.5rem;display:flex;position:fixed;bottom:1rem}.fab>*{pointer-events:auto;align-items:center;gap:.5rem;display:flex}.fab>:hover,.fab>:has(:focus-visible){z-index:1}.fab>[tabindex]:first-child{transition-property:opacity,visibility,rotate;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:grid;position:relative}.fab .fab-close,.fab .fab-main-action{inset-inline-end:0;position:absolute;bottom:0}:is(.fab:focus-within:has(.fab-close),.fab:focus-within:has(.fab-main-action))>[tabindex]{opacity:0;rotate:90deg}.fab:focus-within>[tabindex]:first-child{pointer-events:none}.fab:focus-within>:nth-child(n+2){visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1}.fab>:nth-child(n+2){visibility:hidden;--tw-scale-x:80%;--tw-scale-y:80%;--tw-scale-z:80%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:0;transition-property:opacity,scale,visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.fab>:nth-child(n+2).fab-main-action,.fab>:nth-child(n+2).fab-close{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.fab>:nth-child(3){transition-delay:30ms}.fab>:nth-child(4){transition-delay:60ms}.fab>:nth-child(5){transition-delay:90ms}.fab>:nth-child(6){transition-delay:.12s}.drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed}:where(.drawer-toggle:checked~.drawer-side){scrollbar-color:currentColor oklch(0 0 0 / calc(var(--page-has-backdrop,0) * .4))}@supports (color:color-mix(in lab, red, red)){:where(.drawer-toggle:checked~.drawer-side){scrollbar-color:color-mix(in oklch, currentColor 35%, #0000) oklch(0 0 0 / calc(var(--page-has-backdrop,0) * .4))}}:where(:root:has(.drawer-toggle:checked)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}.tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative}.tooltip>.tooltip-content,.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);display:block;position:absolute}@media (prefers-reduced-motion:no-preference){.tooltip>.tooltip-content,.tooltip[data-tip]:before,.tooltip:after{transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms}}:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{opacity:1;--tt-pos:0rem}@media (prefers-reduced-motion:no-preference){:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}.tab{cursor:pointer;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;display:inline-flex;position:relative}@media (hover:hover){.tab:hover{color:var(--color-base-content)}}.tab{--tab-p:.75rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));--tab-radius-limit:min(var(--radius-field), var(--tab-radius-min));--tab-radius-grad:#0000 calc(69% - var(--border)), var(--tab-border-color) calc(69% - var(--border) + .25px), var(--tab-border-color) 69%, var(--tab-bg) calc(69% + .25px);order:var(--tab-order);height:var(--tab-height);padding-inline:var(--tab-p);border-color:#0000;font-size:.875rem}.tab:is(input[type=radio]){min-width:fit-content}.tab:is(input[type=radio]):after{--tw-content:attr(aria-label);content:var(--tw-content)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]))+.tab-content{display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:color-mix(in oklab, var(--color-base-content) 50%, transparent)}}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.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(--radius-field);text-align:start;text-wrap:balance;-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;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu details{interpolate-size:allow-keywords;overflow:hidden}.menu details::details-content{block-size:0}@media (prefers-reduced-motion:no-preference){.menu details::details-content{transition-behavior:allow-discrete;transition-property:block-size,content-visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.menu details[open]::details-content{block-size:auto}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{color:var(--color-base-content);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01)}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{outline-offset:2px;outline:2px solid #0000}}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise)}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth) * 3px) -2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li).menu-disabled{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.floating-label{display:block;position:relative}.floating-label input{display:block}.floating-label input::placeholder,.floating-label textarea::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}.floating-label>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem) * 10 / 2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}:is(.floating-label:focus-within,.floating-label:not(:has(input:placeholder-shown,textarea:placeholder-shown))) ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}:is(.floating-label:focus-within,.floating-label:not(:has(input:placeholder-shown,textarea:placeholder-shown)))>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}.floating-label:has(:disabled,[disabled])>span{opacity:0}.floating-label:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem) * 6 / 2);font-size:.6875rem}.floating-label:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem) * 8 / 2);font-size:.75rem}.floating-label:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem) * 10 / 2);font-size:.875rem}.floating-label:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem) * 12 / 2);font-size:1.125rem}.floating-label:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem) * 14 / 2);font-size:1.375rem}.dropdown{position-area:var(--anchor-v,bottom) var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(:has(~[class*=dropdown-content])):focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.dropdown>:not(:has(~[class*=dropdown-content])):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown.dropdown-close .dropdown-content,.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content,.dropdown.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible)~.dropdown-content{transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover],.dropdown .dropdown-content{z-index:999}@media (prefers-reduced-motion:no-preference){.dropdown[popover],.dropdown .dropdown-content{transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}}@starting-style{.dropdown[popover],.dropdown .dropdown-content{opacity:0;scale:.95}}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within) .dropdown-content,.dropdown:not(.dropdown-close).dropdown-hover:hover .dropdown-content{opacity:1;scale:1}.dropdown:is(details) summary::-webkit-details-marker{display:none}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-close{transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}:is(.dropdown[popover].dropdown-close,.dropdown[popover]:not(.dropdown-open,:popover-open)){transform-origin:top;opacity:0;display:none;scale:.95}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0 / calc(var(--depth) * .15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);--size:calc(var(--size-field,.25rem) * 10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:var(--btn-bg);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.btn{--btn-border:color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%))}}.btn{--btn-shadow:0 3px 2px -2px var(--btn-bg), 0 4px 3px -2px var(--btn-bg)}@supports (color:color-mix(in lab, red, red)){.btn{--btn-shadow:0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000), 0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000)}}.btn{--btn-noise:var(--fx-noise)}@media (hover:hover){.btn:hover{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn:hover{--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}}.btn:focus-visible,.btn:has(:focus-visible){isolation:isolate;outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:var(--btn-color,var(--color-base-200));translate:0 .5px}@supports (color:color-mix(in lab, red, red)){.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 5%)}}.btn:active:not(.btn-active){--btn-border:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn:active:not(.btn-active){--btn-border:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}.btn:active:not(.btn-active){--btn-shadow:0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0)}.btn:is(input[type=checkbox],input[type=radio]){appearance:none}.btn:is(input[type=checkbox],input[type=radio])[aria-label]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.btn:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem) * 6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.collapse{transition:grid-template-rows .2s}}.collapse>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;z-index:1;grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close)),.collapse:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){content-visibility:visible;min-height:fit-content}@supports not (content-visibility:visible){.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible}}.collapse:focus-visible,.collapse:has(>input:is([type=checkbox],[type=radio]):focus-visible),.collapse:has(summary:focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}.collapse:not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-close)>.collapse-title{cursor:pointer}:is(.collapse[tabindex]:focus:not(.collapse-close,.collapse[open]),.collapse[tabindex]:focus-within:not(.collapse-close,.collapse[open]))>.collapse-title{cursor:unset}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem}.collapse:is(details){width:100%}@media (prefers-reduced-motion:no-preference){.collapse:is(details)::details-content{transition:content-visibility .2s allow-discrete, visibility .2s allow-discrete, min-height .2s ease-out allow-discrete, padding .1s ease-out 20ms, background-color .2s ease-out, height .2s;interpolate-size:allow-keywords;height:0}.collapse:is(details):where([open])::details-content{height:auto}}.collapse:is(details) summary{display:block;position:relative}.collapse:is(details) summary::-webkit-details-marker{display:none}.collapse:is(details)>.collapse-content{content-visibility:visible}.collapse:is(details) summary{outline:none}.collapse-content{content-visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem}@supports not (content-visibility:hidden){.collapse-content{visibility:hidden}}@media (prefers-reduced-motion:no-preference){.collapse-content{transition:content-visibility .2s allow-discrete, visibility .2s allow-discrete, min-height .2s ease-out allow-discrete, padding .1s ease-out 20ms, background-color .2s ease-out}}.validator-hint{visibility:hidden;margin-top:.5rem;font-size:.75rem}.validator:user-valid{--input-color:var(--color-success)}.validator:user-valid:focus{--input-color:var(--color-success)}.validator:user-valid:checked{--input-color:var(--color-success)}.validator:user-valid[aria-checked=true]{--input-color:var(--color-success)}.validator:user-valid:focus-within{--input-color:var(--color-success)}.validator:has(:user-valid){--input-color:var(--color-success)}.validator:has(:user-valid):focus{--input-color:var(--color-success)}.validator:has(:user-valid):checked{--input-color:var(--color-success)}.validator:has(:user-valid)[aria-checked=true]{--input-color:var(--color-success)}.validator:has(:user-valid):focus-within{--input-color:var(--color-success)}.validator:user-invalid{--input-color:var(--color-error)}.validator:user-invalid:focus{--input-color:var(--color-error)}.validator:user-invalid:checked{--input-color:var(--color-error)}.validator:user-invalid[aria-checked=true]{--input-color:var(--color-error)}.validator:user-invalid:focus-within{--input-color:var(--color-error)}.validator:user-invalid~.validator-hint{visibility:visible;color:var(--color-error)}.validator:has(:user-invalid){--input-color:var(--color-error)}.validator:has(:user-invalid):focus{--input-color:var(--color-error)}.validator:has(:user-invalid):checked{--input-color:var(--color-error)}.validator:has(:user-invalid)[aria-checked=true]{--input-color:var(--color-error)}.validator:has(:user-invalid):focus-within{--input-color:var(--color-error)}.validator:has(:user-invalid)~.validator-hint{visibility:visible;color:var(--color-error)}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))),:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):focus,:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):checked,:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))[aria-checked=true],:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):focus-within{--input-color:var(--color-error)}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))~.validator-hint{visibility:visible;color:var(--color-error)}.radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size) / 10);--radialprogress:calc(var(--value) * 1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative}.radial-progress:before{content:"";background:radial-gradient(farthest-side, currentColor 98%, #0000) top/var(--thickness) var(--thickness) no-repeat, conic-gradient(currentColor var(--radialprogress), #0000 0);webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));-webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));-webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}.radial-progress:after{content:"";inset:calc(50% - var(--thickness) / 2);transform:rotate(calc(var(--value) * 3.6deg - 90deg)) translate(calc(var(--size) / 2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}.list{flex-direction:column;font-size:.875rem;display:flex}.list .list-row{--list-grid-cols:minmax(0, auto) 1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border) solid;inset-inline:var(--radius-box);border-color:var(--color-base-content);position:absolute;bottom:0}@supports (color:color-mix(in lab, red, red)){:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{border-color:color-mix(in oklab, var(--color-base-content) 5%, transparent)}}.toggle{border:var(--border) solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p), var(--radius-selector-max)) + min(var(--border), var(--radius-selector-max)));padding:var(--toggle-p);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;display:inline-grid;position:relative;box-shadow:inset 0 1px}@supports (color:color-mix(in lab, red, red)){.toggle{box-shadow:0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000) inset}}.toggle{--input-color:var(--color-base-content);transition:color .3s,grid-template-columns .2s}@supports (color:color-mix(in lab, red, red)){.toggle{--input-color:color-mix(in oklab, var(--color-base-content) 50%, #0000)}}.toggle{--toggle-p:calc(var(--size) * .125);--size:calc(var(--size-selector,.25rem) * 6);width:calc((var(--size) * 2) - (var(--border) + var(--toggle-p)) * 2);height:var(--size)}.toggle>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:0deg}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:0deg}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);width:100%;height:100%;box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor;background-color:currentColor;grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@supports (color:color-mix(in lab, red, red)){.toggle:before{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000)}}.toggle:before{background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise)}@media (forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px * -1);outline-width:1px}}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border) solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border) solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem), .875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.input{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.input{--size:calc(var(--size-field,.25rem) * 10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.input{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.input:where(input){display:inline-flex}.input :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.input :where(input):focus,.input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.input :where(input[type=url]),.input :where(input[type=email]){direction:ltr}.input :where(input[type=date]){display:inline-flex}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.input:focus,.input:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.input:focus,.input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media (pointer:coarse){@supports (-webkit-touch-callout:none){.input:focus,.input:focus-within{--font-size:1rem}}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{box-shadow:none}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;appearance:none;display:inline-flex}.input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}.indicator{width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%) var(--indicator-y,-50%);position:absolute}.table{border-collapse:separate;--tw-border-spacing-x:calc(.25rem * 0);--tw-border-spacing-y:calc(.25rem * 0);width:100%;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);border-radius:var(--radius-box);text-align:left;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media (hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(thead,tfoot){color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.table :where(thead,tfoot){font-size:.875rem;font-weight:600}.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000)}}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000)}}.steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden}.steps .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid}.steps .step:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);content:"";border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}.steps .step>.step-icon,.steps .step:not(:has(.step-icon)):after{--tw-content:counter(step);content:var(--tw-content);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}.steps .step:first-child:before{--tw-content:none;content:var(--tw-content)}.steps .step[data-content]:after{--tw-content:attr(data-content);content:var(--tw-content)}.range{appearance:none;webkit-appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem) * 6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:currentColor}@supports (color:color-mix(in lab, red, red)){.range{--range-bg:color-mix(in oklab, currentColor 10%, #0000)}}.range{cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden}[dir=rtl] .range{--range-dir:-1}.range:focus{outline:none}.range:focus-visible{outline-offset:2px;outline:2px solid}.range::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size) * .5)}@media (forced-colors:active){.range::-webkit-slider-runnable-track{border:1px solid}.range::-moz-range-track{border:1px solid}}.range::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));background-color:var(--range-thumb);height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p) solid;appearance:none;webkit-appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill));position:relative;top:50%;transform:translateY(-50%)}@supports (color:color-mix(in lab, red, red)){.range::-webkit-slider-thumb{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill))}}.range::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size) * .5)}.range::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p) solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill));background-color:currentColor;position:relative;top:50%}@supports (color:color-mix(in lab, red, red)){.range::-moz-range-thumb{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill))}}.range:disabled{cursor:not-allowed;opacity:.3}.chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative}.chat-bubble:before{background-color:inherit;content:"";width:.75rem;height:.75rem;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-chat);-webkit-mask-image:var(--mask-chat);mask-image:var(--mask-chat);position:absolute;bottom:0;-webkit-mask-position:0 -1px;mask-position:0 -1px;-webkit-mask-size:.8125rem;mask-size:.8125rem}.select{border:var(--border) solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;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-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:.75rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.select{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.select{border-color:var(--input-color);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.select{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.select{--size:calc(var(--size-field,.25rem) * 10)}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}[dir=rtl] .select::picker(select){translate:.5rem}[dir=rtl] .select select::picker(select){translate:.5rem}.select[multiple]{background-image:none;height:auto;padding-block:.75rem;padding-inline-end:.75rem;overflow:auto}.select select{appearance:none;width:calc(100% + 2.75rem);height:calc(100% - calc(var(--border) * 2));background:inherit;border-radius:inherit;border-style:none;align-items:center;margin-inline:-.75rem -1.75rem;padding-inline:.75rem 1.75rem}.select select:focus,.select select:focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.select select:focus,.select select:focus-within{outline-offset:2px;outline:2px solid #0000}}.select select:not(:last-child){background-image:none;margin-inline-end:-1.375rem}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.select:focus,.select:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.select:focus,.select:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}@supports (appearance:base-select){.select,.select select{appearance:base-select}:is(.select,.select select)::picker(select){appearance:base-select}}:is(.select,.select select)::picker(select){color:inherit;border:var(--border) solid var(--color-base-200);border-radius:var(--radius-box);background-color:inherit;max-height:min(24rem,70dvh);box-shadow:0 2px calc(var(--depth) * 3px) -2px oklch(0% 0 0/.2);box-shadow:0 20px 25px -5px rgb(0 0 0/calc(var(--depth) * .1)), 0 8px 10px -6px rgb(0 0 0/calc(var(--depth) * .1));margin-block:.5rem;margin-inline:.5rem;padding:.5rem;translate:-.5rem}:is(.select,.select select)::picker-icon{display:none}:is(.select,.select select) optgroup{padding-top:.5em}:is(.select,.select select) optgroup option:first-child{margin-top:.5em}:is(.select,.select select) option{border-radius:var(--radius-field);white-space:normal;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #0000}}:is(.select,.select select) option:not(:disabled):active{background-color:var(--color-neutral);color:var(--color-neutral-content);box-shadow:0 2px calc(var(--depth) * 3px) -2px var(--color-neutral)}.timeline{display:flex;position:relative}.timeline>li{grid-template-rows:var(--timeline-row-start,minmax(0, 1fr)) auto var(--timeline-row-end,minmax(0, 1fr));grid-template-columns:var(--timeline-col-start,minmax(0, 1fr)) auto var(--timeline-col-end,minmax(0, 1fr));flex-shrink:0;align-items:center;display:grid;position:relative}.timeline>li>hr{border:none;width:100%}.timeline>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline>li>hr:last-child{grid-area:2/3/auto/none}@media print{.timeline>li>hr{border:.1px solid var(--color-base-300)}}.timeline :where(hr){background-color:var(--color-base-300);height:.25rem}.timeline:has(.timeline-middle hr):first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline:has(.timeline-middle hr):last-child,.timeline:not(:has(.timeline-middle)) :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline:not(:has(.timeline-middle)) :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.swap{cursor:pointer;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;place-content:center;display:inline-grid;position:relative}.swap input{appearance:none;border:none}.swap>*{grid-row-start:1;grid-column-start:1}@media (prefers-reduced-motion:no-preference){.swap>*{transition-property:transform,rotate,opacity;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.swap .swap-on,.swap .swap-indeterminate,.swap input:indeterminate~.swap-on,.swap input:is(:checked,:indeterminate)~.swap-off{opacity:0}.swap input:checked~.swap-on,.swap input:indeterminate~.swap-indeterminate{opacity:1;backface-visibility:visible}.collapse-title{grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.avatar{vertical-align:middle;display:inline-flex;position:relative}.avatar>div{aspect-ratio:1;display:block;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.checkbox{border:var(--border) solid var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.checkbox{border:var(--border) solid var(--input-color,color-mix(in oklab, var(--color-base-content) 20%, #0000))}}.checkbox{cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 0 #0000 inset, 0 0 #0000;--size:calc(var(--size-selector,.25rem) * 6);width:var(--size);height:var(--size);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * .1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:0deg}}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:0deg}}.checkbox:indeterminate{background-color:var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.checkbox:indeterminate{background-color:var(--input-color,color-mix(in oklab, var(--color-base-content) 20%, #0000))}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:0deg}.radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border) solid var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative}@supports (color:color-mix(in lab, red, red)){.radio{border:var(--border) solid var(--input-color,color-mix(in srgb, currentColor 20%, #0000))}}.radio{box-shadow:0 1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset;--size:calc(var(--size-selector,.25rem) * 6);width:var(--size);height:var(--size);color:var(--input-color,currentColor)}.radio:before{--tw-content:"";content:var(--tw-content);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}.radio:focus-visible{outline:2px solid}.radio:checked,.radio[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor}@media (prefers-reduced-motion:no-preference){.radio:checked,.radio[aria-checked=true]{animation:.2s ease-out radio}}:is(.radio:checked,.radio[aria-checked=true]):before{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * .1));background-color:currentColor}@media (forced-colors:active){:is(.radio:checked,.radio[aria-checked=true]):before{outline-style:var(--tw-outline-style);outline-offset:calc(1px * -1);outline-width:1px}}@media print{:is(.radio:checked,.radio[aria-checked=true]):before{outline-offset:-1rem;outline:.25rem solid}}.rating{vertical-align:middle;display:inline-flex;position:relative}.rating input{appearance:none;border:none}.rating :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem}@media (prefers-reduced-motion:no-preference){.rating :where(*){animation:.25s ease-out rating}}.rating :where(*):is(input){cursor:pointer}.rating .rating-hidden{background-color:#0000;width:.5rem}.rating input[type=radio]:checked{background-image:none}.rating :checked,.rating [aria-checked=true],.rating [aria-current=true],.rating :has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}.rating :focus-visible{scale:1.1}@media (prefers-reduced-motion:no-preference){.rating :focus-visible{transition:scale .2s ease-out}}.rating :active:focus{animation:none;scale:1.1}.navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative}.card:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.card:focus{outline-offset:2px;outline:2px solid #0000}}.card:focus-visible{outline-color:currentColor}.card :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}.card :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}.card figure{justify-content:center;align-items:center;display:flex}.card:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;-webkit-user-select:none;user-select:none}.card:has(>:checked){outline:2px solid}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.progress{appearance:none;border-radius:var(--radius-box);background-color:currentColor;width:100%;height:.5rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.progress{background-color:color-mix(in oklab, currentcolor 20%, transparent)}}.progress{color:var(--color-base-content)}.progress:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%}@media (prefers-reduced-motion:no-preference){.progress:indeterminate{animation:5s ease-in-out infinite progress}}@supports ((-moz-appearance:none)){.progress:indeterminate::-moz-progress-bar{background-color:#0000}@media (prefers-reduced-motion:no-preference){.progress:indeterminate::-moz-progress-bar{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}.progress::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){.progress::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}.textarea{border:var(--border) solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);min-height:5rem;font-size:max(var(--font-size,.875rem), .875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;flex-shrink:1;padding-block:.5rem;padding-inline:.75rem}@supports (color:color-mix(in lab, red, red)){.textarea{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.textarea{--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.textarea{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.textarea textarea{appearance:none;background-color:#0000;border:none}.textarea textarea:focus,.textarea textarea:focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.textarea textarea:focus,.textarea textarea:focus-within{outline-offset:2px;outline:2px solid #0000}}.textarea:focus,.textarea:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.textarea:focus,.textarea:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.textarea:focus,.textarea:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media (pointer:coarse){@supports (-webkit-touch-callout:none){.textarea:focus,.textarea:focus-within{--font-size:1rem}}}.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]))::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]))::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){box-shadow:none}.textarea:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}.stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid}.stack>*{width:100%;height:100%}.stack>:nth-child(n+2){opacity:.7;width:100%}.stack>:nth-child(2){z-index:2;opacity:.9}.stack>:first-child{z-index:3;width:100%}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.tab-content{order:var(--tabcontent-order);--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box);--tabcontent-order:1;width:100%;height:calc(100% - var(--tab-height) + var(--border));margin:var(--tabcontent-margin);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:.95;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.timeline-middle{grid-row-start:2;grid-column-start:2}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab, red, red)){.stat-desc{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.stat-desc{font-size:.75rem}.stat-title{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab, red, red)){.stat-title{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.stat-title{font-size:.75rem}.chat-image{grid-row:span 2/span 2;align-self:flex-end}.chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:var(--color-base-content);flex-direction:row;align-self:stretch;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.divider{--divider-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.divider:before,.divider:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{--tw-content:"×";content:var(--tw-content)}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.label{white-space:nowrap;color:currentColor;align-items:center;gap:.375rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.label{color:color-mix(in oklab, currentcolor 60%, transparent)}}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border) solid currentColor;margin-inline:-.75rem .75rem}@supports (color:color-mix(in lab, red, red)){.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border) solid color-mix(in oklab, currentColor 10%, #0000)}}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border) solid currentColor;margin-inline:.75rem -.75rem}@supports (color:color-mix(in lab, red, red)){.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border) solid color-mix(in oklab, currentColor 10%, #0000)}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border) solid var(--badge-color,var(--color-base-200));background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem) * 6);width:fit-content;height:var(--size);padding-inline:calc(var(--size) / 2 - var(--border));justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border) solid var(--color-base-content);justify-content:center;align-items:center;padding-inline:.5em;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.kbd{border:var(--border) solid color-mix(in srgb, var(--color-base-content) 20%, #0000)}}.kbd{border-bottom:calc(var(--border) + 1px) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.kbd{border-bottom:calc(var(--border) + 1px) solid color-mix(in srgb, var(--color-base-content) 20%, #0000)}}.kbd{--size:calc(var(--size-selector,.25rem) * 6);height:var(--size);min-width:var(--size);font-size:.875rem}.text-rotate{vertical-align:bottom;white-space:nowrap;--duration:var(--tw-duration);transition-property:none;display:inline-block;overflow:hidden}.text-rotate>*{height:calc(var(--items,1) * 100%);justify-items:start;display:grid}.text-rotate>:has(:nth-child(2)){--items:2;animation:rotator var(--duration,10s) linear(0 0% 49%, .5 50% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(3)){--items:3;animation:rotator var(--duration,10s) linear(0 0% 32%, .333333 33% 65%, .666666 66% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(4)){--items:4;animation:rotator var(--duration,10s) linear(0 0% 24%, .25 25% 49%, .5 50% 74%, .75 75% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(5)){--items:5;animation:rotator var(--duration,10s) linear(0 0% 19%, .2 20% 39%, .4 40% 59%, .6 60% 79%, .8 80% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(6)){--items:6;animation:rotator var(--duration,10s) linear(0 0% 15%, .16666 16% 32%, .333333 33% 49%, .5 50% 65%, .666666 66% 82%, .833333 83% 99%, 1 100% 100%) infinite}.text-rotate>*>*{clip-path:inset(.5px 0);align-content:baseline}.text-rotate>*>:first-child{translate:var(--first-item-position)}.text-rotate:hover>*{animation-play-state:paused}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem) * 10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border) dashed currentColor}@supports (color:color-mix(in lab, red, red)){.stat:not(:last-child){border-inline-end:var(--border) dashed color-mix(in oklab, currentColor 10%, #0000)}}.stat:not(:last-child){border-block-end:none}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex}.card-body :where(p){flex-grow:1}.carousel{scroll-snap-type:x mandatory;scrollbar-width:none;display:inline-flex;overflow-x:scroll}@media (prefers-reduced-motion:no-preference){.carousel{scroll-behavior:smooth}}.carousel::-webkit-scrollbar{display:none}.alert{--alert-border-color:var(--color-base-200);border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * .08)) inset, 0 1px #000, 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * .08));border-style:solid;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}@supports (color:color-mix(in lab, red, red)){.alert{box-shadow:0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * .08)) inset, 0 1px color-mix(in oklab, color-mix(in oklab, #000 20%, var(--alert-color,var(--color-base-200))) calc(var(--depth) * 20%), #0000), 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * .08))}}.alert:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}.fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");grid-auto-rows:min-content;column-gap:.75rem;padding-block:.25rem;display:grid}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.mask{vertical-align:middle;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.skeleton{border-radius:var(--radius-box);background-color:var(--color-base-300)}@media (prefers-reduced-motion:reduce){.skeleton{transition-duration:15s}}.skeleton{will-change:background-position;background-image:linear-gradient(105deg, #0000 0% 40%, var(--color-base-100) 50%, #0000 60% 100%);background-position-x:-50%;background-size:200%}@media (prefers-reduced-motion:no-preference){.skeleton{animation:1.8s ease-in-out infinite skeleton}}.timeline-box{border:var(--border) solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}}@layer daisyui.l1.l2{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;transition:visibility 0s allow-discrete, background-color .3s ease-out, opacity .1s ease-out;background-color:oklch(0% 0 0/.4)}:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal) .modal-box{opacity:1;translate:0;scale:1}:root:has(:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}@starting-style{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{opacity:0}}:where(.drawer-toggle:checked~.drawer-side){pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto}:where(.drawer-toggle:checked~.drawer-side)>:not(.drawer-overlay){translate:0%}.drawer-toggle:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off) 50%}.tooltip:after{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail) 50%}.collapse-arrow>.collapse-title:after{width:.5rem;height:.5rem;display:block;position:absolute;transform:translateY(-100%)rotate(45deg)}@media (prefers-reduced-motion:no-preference){.collapse-arrow>.collapse-title:after{transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}}.collapse-arrow>.collapse-title:after{content:"";transform-origin:75% 75%;pointer-events:none;top:50%;inset-inline-end:1.4rem;box-shadow:2px 2px}.btn:disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn:disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn:disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn:disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn:disabled{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}.btn[disabled]:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn[disabled]:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn[disabled]:not(.btn-link,.btn-ghost){box-shadow:none}.btn[disabled]{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn[disabled]{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}@media (prefers-reduced-motion:no-preference){.collapse[open].collapse-arrow>.collapse-title:after,.collapse.collapse-open.collapse-arrow>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}.collapse.collapse-open.collapse-plus>.collapse-title:after{--tw-content:"−";content:var(--tw-content)}:is(.collapse[tabindex].collapse-arrow:focus:not(.collapse-close),.collapse.collapse-arrow[tabindex]:focus-within:not(.collapse-close))>.collapse-title:after,.collapse.collapse-arrow:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}.collapse[open].collapse-plus>.collapse-title:after,.collapse[tabindex].collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse.collapse-plus:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{--tw-content:"−";content:var(--tw-content)}.list .list-row:has(.list-col-grow:first-child){--list-grid-cols:1fr}.list .list-row:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row>*{grid-row-start:1}.steps .step-neutral+.step-neutral:before,.steps .step-neutral:after,.steps .step-neutral>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}.steps .step-primary+.step-primary:before,.steps .step-primary:after,.steps .step-primary>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}.steps .step-secondary+.step-secondary:before,.steps .step-secondary:after,.steps .step-secondary>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}.steps .step-accent+.step-accent:before,.steps .step-accent:after,.steps .step-accent>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}.steps .step-info+.step-info:before,.steps .step-info:after,.steps .step-info>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}.steps .step-success+.step-success:before,.steps .step-success:after,.steps .step-success>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}.steps .step-warning+.step-warning:before,.steps .step-warning:after,.steps .step-warning>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}.steps .step-error+.step-error:before,.steps .step-error:after,.steps .step-error>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}.checkbox:disabled,.radio:disabled{cursor:not-allowed;opacity:.2}.rating.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}.rating.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}.rating.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}.rating.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}.rating.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}:where(.navbar){position:relative}.tooltip-right>.tooltip-content,.tooltip-right[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem)) translateY(-50%);inset:50% auto auto var(--tt-off)}.tooltip-right:after{transform:translateX(var(--tt-pos,-.25rem)) translateY(-50%) rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}.chat-end{grid-template-columns:1fr auto;place-items:end}.chat-end .chat-header,.chat-end .chat-footer{grid-column-start:1}.chat-end .chat-image{grid-column-start:2}.chat-end .chat-bubble{border-end-end-radius:0;grid-column-start:1}.chat-end .chat-bubble:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] :is(.chat-end .chat-bubble):before{transform:rotateY(0)}.chat-start{grid-template-columns:auto 1fr;place-items:start}.chat-start .chat-header,.chat-start .chat-footer{grid-column-start:2}.chat-start .chat-image{grid-column-start:1}.chat-start .chat-bubble{border-end-start-radius:0;grid-column-start:2}.chat-start .chat-bubble:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] :is(.chat-start .chat-bubble):before{transform:rotateY(180deg)}.btn-active{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn-active{--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}.btn-active{--btn-shadow:0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);isolation:isolate}:is(.stack,.stack.stack-bottom)>*{grid-area:3/3/6/4}:is(.stack,.stack.stack-bottom)>:nth-child(2){grid-area:2/2/5/5}:is(.stack,.stack.stack-bottom)>:first-child{grid-area:1/1/4/6}.stack.stack-top>*{grid-area:1/3/4/4}.stack.stack-top>:nth-child(2){grid-area:2/2/5/5}.stack.stack-top>:first-child{grid-area:3/1/6/6}.stack.stack-start>*{grid-area:3/1/4/4}.stack.stack-start>:nth-child(2){grid-area:2/2/5/5}.stack.stack-start>:first-child{grid-area:1/3/6/6}.stack.stack-end>*{grid-area:3/3/4/6}.stack.stack-end>:nth-child(2){grid-area:2/2/5/5}.stack.stack-end>:first-child{grid-area:1/1/6/4}.tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(3 * var(--radius-field));border-radius:calc(min(var(--tab-height) / 2, var(--radius-field)) + min(.25rem, var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 .5px oklch(0% 0 0 / calc(var(--depth) * .05)) inset;padding:.25rem}.tabs-box>.tab{border-radius:var(--radius-field);border-style:none}.tabs-box>.tab:focus-visible,.tabs-box>.tab:is(label:has(:checked:focus-visible)){outline-offset:2px}.tabs-box>.tab:focus-visible{z-index:1}.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px 1px -1px var(--color-neutral), 0 1px 6px -4px var(--color-neutral)}@supports (color:color-mix(in lab, red, red)){.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){box-shadow:0 1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px 1px -1px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 50%), #0000), 0 1px 6px -4px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 100%), #0000)}}@media (forced-colors:active){.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){border:1px solid}}.tabs-box>.tab-content{height:calc(100% - var(--tab-height) + var(--border) - .5rem);border-radius:calc(min(var(--tab-height) / 2, var(--radius-field)) + min(.25rem, var(--tabs-box-radius)) - var(--border));margin-top:.25rem}.drawer-end{grid-auto-columns:auto max-content}.drawer-end>.drawer-toggle~.drawer-content{grid-column-start:1}.drawer-end>.drawer-toggle~.drawer-side{grid-column-start:2;justify-items:end}.drawer-end>.drawer-toggle~.drawer-side>:not(.drawer-overlay){translate:100%}[dir=rtl] :is(.drawer-end>.drawer-toggle~.drawer-side>:not(.drawer-overlay)){translate:-100%}.drawer-end>.drawer-toggle:checked~.drawer-side>:not(.drawer-overlay){translate:0%}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.swap-rotate .swap-on,.swap-rotate input:indeterminate~.swap-on{rotate:45deg}.swap-rotate input:is(:checked,:indeterminate)~.swap-on,.swap-rotate.swap-active .swap-on{rotate:0deg}.swap-rotate input:is(:checked,:indeterminate)~.swap-off,.swap-rotate.swap-active .swap-off{rotate:-45deg}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.table-zebra tbody tr:where(:nth-child(2n)),.table-zebra tbody tr:where(:nth-child(2n)) :where(.table-pin-cols tr th){background-color:var(--color-base-200)}@media (hover:hover){:is(.table-zebra tbody tr.row-hover,.table-zebra tbody tr.row-hover:where(:nth-child(2n))):hover{background-color:var(--color-base-300)}}.skeleton-text{webkit-background-clip:text;color:#0000;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(105deg, var(--color-base-content) 0% 40%, var(--color-base-content) 50%, var(--color-base-content) 60% 100%)}@supports (color:color-mix(in lab, red, red)){.skeleton-text{background-image:linear-gradient(105deg, color-mix(in oklab, var(--color-base-content) 20%, transparent) 0% 40%, var(--color-base-content) 50%, color-mix(in oklab, var(--color-base-content) 20%, transparent) 60% 100%)}}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.mask-heart{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e")}.mask-star{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e")}.alert-error{color:var(--color-error-content);--alert-border-color:var(--color-error);--alert-color:var(--color-error)}.alert-info{color:var(--color-info-content);--alert-border-color:var(--color-info);--alert-color:var(--color-info)}.alert-success{color:var(--color-success-content);--alert-border-color:var(--color-success);--alert-color:var(--color-success)}.alert-warning{color:var(--color-warning-content);--alert-border-color:var(--color-warning);--alert-color:var(--color-warning)}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem) * 12)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem) * 8)}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem) * 6)}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.range-xs{--range-thumb-size:calc(var(--size-selector,.25rem) * 4)}}.prose :where(a.btn:not(.btn-link)):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse:not(td,tr,colgroup){visibility:revert-layer}.validator:user-invalid~.validator-hint{display:revert-layer}.validator:has(:user-invalid)~.validator-hint{display:revert-layer}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))~.validator-hint{display:revert-layer}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-10{top:calc(var(--spacing) * 10)}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-1\/4{right:25%}.bottom-10{bottom:calc(var(--spacing) * 10)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-1\/4{left:25%}.-z-0{z-index:calc(0 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[90\]{z-index:90}.z-\[100\]{z-index:100}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-4{margin:calc(var(--spacing) * 4)}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-auto{margin-inline:auto}.my-16{margin-block:calc(var(--spacing) * 16)}.-mt-10{margin-top:calc(var(--spacing) * -10)}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.icon-\[lucide--align-center\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M17 12H7m12 6H5M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 12H3m14 6H3M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H9m12 6H7M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--bold\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--calendar\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M8 2v4m8-4v4'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--check\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevron-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m15 18l-6-6l6-6'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevron-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m9 18l6-6l-6-6'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevrons-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m11 17l-5-5l5-5m7 10l-5-5l5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevrons-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 17l5-5l-5-5m7 10l5-5l-5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--clock\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--code-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m18 16l4-4l-4-4M6 8l-4 4l4 4m8.5-12l-5 16'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eraser\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21m-7.752-9.91l8.828 8.828'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eye-off\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575a1 1 0 0 1 0 .696a10.8 10.8 0 0 1-1.444 2.49m-6.41-.679a3 3 0 0 1-4.242-4.242'/%3E%3Cpath d='M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 4.446-5.143M2 2l20 20'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eye\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--indent-decrease\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M7 8l-4 4l4 4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--indent-increase\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M3 8l4 4l-4 4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--italic\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 4h-9m4 16H5M15 4L9 20'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--link\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--list-ordered\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M11 5h10m-10 7h10m-10 7h10M4 4h1v5M4 9h2m.5 11H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--list\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M3 5h.01M3 12h.01M3 19h.01M8 5h13M8 12h13M8 19h13'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--lock\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='18' height='11' x='3' y='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--moon\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--paperclip\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m16 6l-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--quote\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1a6 6 0 0 0 6-6V5a2 2 0 0 0-2-2zM5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1a6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--redo-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m15 14l5-5l-5-5'/%3E%3Cpath d='M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--search\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m21 21l-4.34-4.34'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--smile\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8 14s1.5 2 4 2s4-2 4-2M9 9h.01M15 9h.01'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--sun\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--underline\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 4v6a6 6 0 0 0 12 0V4M4 20h16'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--undo-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M9 14L4 9l5-5'/%3E%3Cpath d='M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--upload\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 3v12m5-7l-5-5l-5 5m14 7v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--user\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--x\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.kbd{box-shadow:none}.text-rotate{height:1lh}.alert{border-width:var(--border);border-color:var(--alert-border-color,var(--color-base-200))}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-12{height:calc(var(--spacing) * 12)}.h-20{height:calc(var(--spacing) * 20)}.h-48{height:calc(var(--spacing) * 48)}.h-96{height:calc(var(--spacing) * 96)}.h-auto{height:auto}.h-full{height:100%}.max-h-60{max-height:calc(var(--spacing) * 60)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[22rem\]{min-height:22rem}.min-h-full{min-height:100%}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-10{width:calc(var(--spacing) * 10)}.w-32{width:calc(var(--spacing) * 32)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-52{width:calc(var(--spacing) * 52)}.w-56{width:calc(var(--spacing) * 56)}.w-60{width:calc(var(--spacing) * 60)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-96{width:calc(var(--spacing) * 96)}.w-full{width:100%}.w-px{width:1px}.w-xs{width:var(--container-xs)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[200px\]{max-width:200px}.max-w-md{max-width:var(--container-md)}.min-w-\[48px\]{min-width:48px}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-10{--tw-translate-x:calc(var(--spacing) * 10);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-box{border-radius:var(--radius-box);border-radius:var(--radius-box)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-base-200\/30{border-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.border-base-200\/30{border-color:color-mix(in oklab, var(--color-base-200) 30%, transparent)}}.border-base-300{border-color:var(--color-base-300)}.border-base-content\/20{border-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.border-base-content\/20{border-color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.border-black\/5{border-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.border-black\/5{border-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.border-primary{border-color:var(--color-primary)}.bg-base-100,.bg-base-100\/50{background-color:var(--color-base-100)}@supports (color:color-mix(in lab, red, red)){.bg-base-100\/50{background-color:color-mix(in oklab, var(--color-base-100) 50%, transparent)}}.bg-base-200,.bg-base-200\/30{background-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.bg-base-200\/30{background-color:color-mix(in oklab, var(--color-base-200) 30%, transparent)}}.bg-base-200\/50{background-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.bg-base-200\/50{background-color:color-mix(in oklab, var(--color-base-200) 50%, transparent)}}.bg-base-300{background-color:var(--color-base-300)}.bg-primary,.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--color-primary) 10%, transparent)}}.bg-primary\/20{background-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--color-primary) 20%, transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:#0000}.bg-linear-to-r{--tw-gradient-position:to right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-r{--tw-gradient-position:to right in oklab}}.bg-linear-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}@layer daisyui.l1{.alert-soft{color:var(--alert-color,var(--color-base-content));background:var(--alert-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.alert-soft{background:color-mix(in oklab, var(--alert-color,var(--color-base-content)) 8%, var(--color-base-100))}}.alert-soft{--alert-border-color:var(--alert-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.alert-soft{--alert-border-color:color-mix(in oklab, var(--alert-color,var(--color-base-content)) 10%, var(--color-base-100))}}.alert-soft{box-shadow:none;background-image:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)):not(:disabled,[disabled],.btn-disabled){--btn-fg:var(--btn-color,currentColor);outline-color:currentColor}@media (hover:none){.btn-ghost:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color,currentColor);--btn-border:#0000;--btn-noise:none;outline-color:currentColor}}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn),:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){.btn-outline:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.from-secondary{--tw-gradient-from:var(--color-secondary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-accent{--tw-gradient-via:var(--color-accent);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-primary{--tw-gradient-to:var(--color-primary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-10{padding-inline:calc(var(--spacing) * 10)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.\!text-center{text-align:center!important}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.text-accent{color:var(--color-accent)}.text-base-content,.text-base-content\/60{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.text-base-content\/60{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.text-base-content\/90{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.text-base-content\/90{color:color-mix(in oklab, var(--color-base-content) 90%, transparent)}}.text-error{color:var(--color-error)}.text-primary{color:var(--color-primary)}.text-primary-content{color:var(--color-primary-content)}.text-secondary{color:var(--color-secondary)}.text-secondary-content{color:var(--color-secondary-content)}.text-transparent{color:#0000}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-secondary\/20{--tw-shadow-color:var(--color-secondary)}@supports (color:color-mix(in lab, red, red)){.shadow-secondary\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-secondary) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-primary{--tw-ring-color:var(--color-primary)}.ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.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,)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));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,)}.drop-shadow-2xl{--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));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,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:z-10:hover{z-index:10}.hover\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-accent\/40:hover{border-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:border-accent\/40:hover{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.hover\:border-base-content\/20:hover{border-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.hover\:border-base-content\/20:hover{border-color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.hover\:border-primary\/40:hover{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab, var(--color-primary) 40%, transparent)}}.hover\:border-secondary\/40:hover{border-color:var(--color-secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-secondary\/40:hover{border-color:color-mix(in oklab, var(--color-secondary) 40%, transparent)}}.hover\:bg-base-200:hover{background-color:var(--color-base-200)}.hover\:bg-base-300:hover{background-color:var(--color-base-300)}.hover\:text-base-content:hover{color:var(--color-base-content)}}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media (min-width:48rem){.md\:h-64{height:calc(var(--spacing) * 64)}.md\:w-64{width:calc(var(--spacing) * 64)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-9xl{font-size:var(--text-9xl);line-height:var(--tw-leading,var(--text-9xl--line-height))}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (hover:hover){.\[\&_\.resizable-img-container\]\:hover\:border-primary .resizable-img-container:hover{border-color:var(--color-primary)}}.\[\&_blockquote\]\:border-l-4 blockquote{border-left-style:var(--tw-border-style);border-left-width:4px}.\[\&_blockquote\]\:border-base-300 blockquote{border-color:var(--color-base-300)}.\[\&_blockquote\]\:pl-4 blockquote{padding-left:calc(var(--spacing) * 4)}.\[\&_blockquote\]\:italic blockquote{font-style:italic}.\[\&_ol\]\:list-decimal ol{list-style-type:decimal}.\[\&_ol\]\:pl-8 ol{padding-left:calc(var(--spacing) * 8)}.\[\&_ul\]\:list-disc ul{list-style-type:disc}.\[\&_ul\]\:pl-8 ul{padding-left:calc(var(--spacing) * 8)}.\[\&\>div\]\:m-0>div{margin:calc(var(--spacing) * 0)}.\[\&\>div\]\:min-h-\[1em\]>div{min-height:1em}.\[\&\>p\]\:m-0>p{margin:calc(var(--spacing) * 0)}@keyframes fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.animate-fade-in{animation:.15s ease-out forwards fade-in}}:root{font-size:14px}.input,.label,.select,.textarea{transition:all .3s cubic-bezier(.4,0,.2,1)}:is(.input,.label,.select,.textarea):focus,:is(.input,.label,.select,.textarea):focus-within{box-shadow:0 0 4px;outline:none!important}:is(.input,.label,.select,.textarea):hover:not(:focus){background-color:oklch(from var(--color-base-100) calc(l - .03) c h)}.floating-label span{color:oklch(30% .01 260);font-size:1.1rem;transition:all .2s}.floating-label:focus-within span{color:oklch(25% .02 260);font-size:1.1rem}.floating-label:has(input:not(:placeholder-shown)) span{color:oklch(28% .01 260);font-size:1.1rem}.tab-content-inner{transform-origin:top;animation:.3s cubic-bezier(.4,0,.2,1) tabFadeIn}.input-container{flex-direction:column;width:100%;display:flex;position:relative}.input-container .input{align-items:center;width:100%;display:flex}.input-content{z-index:50;background:oklch(var(--b1));border:1px solid oklch(var(--bc) / .2);border-radius:var(--rounded-box,1rem);margin-top:.25rem;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a}.input-content .menu{width:100%}@keyframes tabFadeIn{0%{opacity:0;transform:scaleY(.95)}to{opacity:1;transform:scaleY(1)}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes dropdown{0%{opacity:0}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@keyframes rotator{89.9999%,to{--first-item-position:0 0%}90%,99.9999%{--first-item-position:0 calc(var(--items) * 100%)}to{translate:0 -100%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes menu{0%{opacity:0}}@keyframes progress{50%{background-position-x:-115%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}} \ No newline at end of file diff --git a/dist/sigpro-ui.min.js b/dist/sigpro-ui.min.js index 0c59a03..079df73 100644 --- a/dist/sigpro-ui.min.js +++ b/dist/sigpro-ui.min.js @@ -1 +1 @@ -(()=>{var{defineProperty:c,getOwnPropertyNames:Zr,getOwnPropertyDescriptor:Yr}=Object,gr=Object.prototype.hasOwnProperty;function qr(r){return this[r]}var Br=(r)=>{var n=(ar??=new WeakMap).get(r),f;if(n)return n;if(n=c({},"__esModule",{value:!0}),r&&typeof r==="object"||typeof r==="function"){for(var o of Zr(r))if(!gr.call(n,o))c(n,o,{get:qr.bind(r,o),enumerable:!(f=Yr(r,o))||f.enumerable})}return ar.set(r,n),n},ar;var Ir=(r)=>r;function Vr(r,n){this[r]=Ir.bind(null,n)}var _r=(r,n)=>{for(var f in n)c(r,f,{get:n[f],enumerable:!0,configurable:!0,set:Vr.bind(n,f)})};var hn={};_r(hn,{Utils:()=>Xr,Components:()=>Gr});var fr={};_r(fr,{rand:()=>sr,listKey:()=>Nr,isFn:()=>W,getBy:()=>G,get:()=>C,filterBy:()=>Er,cls:()=>w,close:()=>br,Tooltip:()=>vn,Toggle:()=>Mn,Toast:()=>mn,Timeline:()=>Fn,Textrotate:()=>dn,Textarea:()=>Dn,Tabs:()=>Hn,TableItems:()=>xn,Table:()=>On,SwapToggle:()=>Tr,SwapOn:()=>$r,SwapOff:()=>kr,Swap:()=>Jr,Steps:()=>In,Step:()=>Vn,Stack:()=>Bn,SkeletonText:()=>qn,Skeleton:()=>gn,Select:()=>Yn,RatingItems:()=>Zn,Rating:()=>Kn,Range:()=>Un,Radio:()=>Qn,Radial:()=>Xn,Progress:()=>Gn,Navbar:()=>Rn,Modal:()=>Pn,Menu:()=>zn,Loading:()=>kn,ListRows:()=>$n,List:()=>Tn,Kbd:()=>Jn,Input:()=>Lr,Indicator:()=>Ln,Icon:()=>d,Fileinput:()=>Wn,Fieldset:()=>An,Fab:()=>Cn,DropdownContent:()=>Wr,DropdownButton:()=>Ar,Dropdown:()=>Cr,DrawerToggle:()=>sn,DrawerSide:()=>Nn,DrawerOverlay:()=>Sn,DrawerContent:()=>bn,Drawer:()=>En,Divider:()=>jn,Datepicker:()=>wn,Colorpicker:()=>yn,ColorPalette:()=>jr,Checkbox:()=>ln,ChatImage:()=>en,ChatHeader:()=>un,ChatFooter:()=>_n,ChatBubble:()=>an,Chat:()=>on,CarouselItem:()=>fn,Carousel:()=>tn,CardTitle:()=>pr,CardBody:()=>rn,CardActions:()=>nn,Card:()=>hr,Calendar:()=>Sr,Button:()=>ir,Badge:()=>cr,Autocomplete:()=>vr,Alert:()=>Mr,Accordion:()=>mr});var z=(r)=>typeof r==="function",rr=(r)=>r&&typeof r==="object",Z=Array.isArray,P=typeof document<"u"?document:null,ur=(r)=>r?._isRuntime?r.container:r instanceof Node?r:P.createTextNode(r==null?"":String(r)),A=null,J=null,I=!1,O=0,x=new Set,er=new WeakMap,h=Symbol("iter"),p=new WeakMap,U=(r)=>{if(!r||r._disposed)return;r._disposed=!0;let n=[r];while(n.length){let f=n.pop();if(f._cleanups)f._cleanups.forEach((o)=>o()),f._cleanups.clear();if(f._children)f._children.forEach((o)=>n.push(o)),f._children.clear();if(f._deps)f._deps.forEach((o)=>o.delete(f)),f._deps.clear()}},Y=(r)=>{if(J)(J._cleanups||=new Set).add(r)},Or=(r)=>{let n=A;A=null;try{return r()}finally{A=n}},V=(r,n=!1)=>{let f=()=>{if(f._disposed)return;if(f._deps)f._deps.forEach((u)=>u.delete(f));if(f._cleanups)f._cleanups.forEach((u)=>u()),f._cleanups.clear();let o=A,_=J;A=J=f;try{return f._result=r()}catch(u){console.error("[SigPro]",u)}finally{A=o,J=_}};if(f._deps=f._cleanups=f._children=null,f._disposed=!1,f._isComputed=n,f._depth=A?A._depth+1:0,f._mounts=[],f._parent=J,J)(J._children||=new Set).add(f);return f},yr=()=>{if(I)return;I=!0;let r=Array.from(x).sort((n,f)=>n._depth-f._depth);x.clear();for(let n of r)if(!n._disposed)n();I=!1},xr=(r)=>{O++;try{return r()}finally{if(O--,O===0&&x.size>0&&!I)yr()}},k=(r,n=!1)=>{if(!n&&A&&!A._disposed)r.add(A),(A._deps||=new Set).add(r);else if(n&&r.size>0){let f=!1;for(let o of r){if(o===A||o._disposed)continue;if(o._isComputed){if(o._dirty=!0,o._subs)k(o._subs,!0)}else x.add(o),f=!0}if(f&&!I&&O===0)queueMicrotask(yr)}},j=(r,n=null)=>{let f=new Set;if(z(r)){let o,_=()=>{if(_._dirty){let u=A;A=_;try{let a=r();if(!Object.is(o,a))o=a,k(f,!0)}finally{A=u}_._dirty=!1}return k(f),o};if(_._isComputed=!0,_._subs=f,_._dirty=!0,_._deps=null,_._disposed=!1,_.stop=()=>{},J)Y(_.stop);return _}if(n)try{r=JSON.parse(localStorage.getItem(n))??r}catch(o){}return(...o)=>{if(o.length){let _=z(o[0])?o[0](r):o[0];if(!Object.is(r,_)){if(r=_,n)localStorage.setItem(n,JSON.stringify(r));k(f,!0)}}return k(f),r}},wr=(r)=>{if(!rr(r))return r;let n=er.get(r);if(n)return n;let f=new Map,o=(u)=>{let a=f.get(u);if(!a)f.set(u,a=new Set);return a},_=new Proxy(r,{get(u,a,e){if(typeof a!=="symbol")k(o(a));return wr(Reflect.get(u,a,e))},set(u,a,e,l){let y=Reflect.has(u,a),E=Reflect.get(u,a,l),s=Reflect.set(u,a,e,l);if(s&&!Object.is(E,e)){if(k(o(a),!0),!y)k(o(h),!0)}return s},deleteProperty(u,a){let e=Reflect.deleteProperty(u,a);if(e)k(o(a),!0),k(o(h),!0);return e},ownKeys(u){return k(o(h)),Reflect.ownKeys(u)}});return er.set(r,_),_},K=(r,n)=>{if(n===void 0){let o=V(r);return o(),()=>U(o)}let f=V(()=>{let o=Array.isArray(r)?r.map((_)=>_()):r();Or(()=>n(o))});return f(),()=>U(f)},nr=(r)=>{if(!r)return;if(r._cleanups)r._cleanups.forEach((n)=>n()),r._cleanups.clear();if(r._ownerEffect)U(r._ownerEffect);if(r.childNodes)r.childNodes.forEach((n)=>nr(n))},Hr=/^\s*(javascript|data|vbscript):/i,Dr=(r)=>r==="src"||r==="href"||r.startsWith("on"),lr=(r,n)=>{if(n==null||n===!1)return null;if(Dr(r)){let f=String(n);if(Hr.test(f))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${r}`),"#"}return n},t=(r,n={},f=[])=>{if(n instanceof Node||Z(n)||!rr(n))f=n,n={};if(z(r)){let a=V(()=>{let E=r(n,{children:f,emit:(s,...N)=>n[`on${s[0].toUpperCase()}${s.slice(1)}`]?.(...N)});return a._result=E,E});a();let e=a._result;if(e==null)return null;let l=e instanceof Node||Z(e)&&e.every((E)=>E instanceof Node)?e:P.createTextNode(String(e)),y=(E)=>{if(rr(E)&&!E._isRuntime)E._mounts=a._mounts||[],E._cleanups=a._cleanups||new Set,E._ownerEffect=a};return Z(l)?l.forEach(y):y(l),l}let o=/^(svg|path|circle|rect|line|poly(line|gon)|g|defs|text(path)?|tspan|use|symbol|image|marker|ellipse)$/i.test(r),_=o?P.createElementNS("http://www.w3.org/2000/svg",r):P.createElement(r);_._cleanups=new Set;for(let a in n){if(!n.hasOwnProperty(a))continue;let e=n[a];if(a==="ref"){z(e)?e(_):e.current=_;continue}if(o&&a.startsWith("xlink:")){e==null?_.removeAttributeNS("http://www.w3.org/1999/xlink",a.slice(6)):_.setAttributeNS("http://www.w3.org/1999/xlink",a.slice(6),e);continue}if(a.startsWith("on")){let l=a.slice(2).toLowerCase();_.addEventListener(l,e);let y=()=>_.removeEventListener(l,e);_._cleanups.add(y),Y(y)}else if(z(e)){let l=V(()=>{let y=lr(a,e());if(a==="class")_.className=y||"";else if(y==null)_.removeAttribute(a);else if(a in _&&!o)_[a]=y;else _.setAttribute(a,y===!0?"":y)});if(l(),_._cleanups.add(()=>U(l)),Y(()=>U(l)),/^(INPUT|TEXTAREA|SELECT)$/.test(_.tagName)&&(a==="value"||a==="checked")){let y=a==="checked"?"change":"input";_.addEventListener(y,(E)=>e(E.target[a]))}}else{let l=lr(a,e);if(l!=null)if(a in _&&!o)_[a]=l;else _.setAttribute(a,l===!0?"":l)}}let u=(a)=>{if(Z(a))return a.forEach(u);if(z(a)){let e=P.createTextNode("");_.appendChild(e);let l=[],y=V(()=>{let E=a(),s=(Z(E)?E:[E]).map(ur);l.forEach((i)=>{if(i._isRuntime)i.destroy();else nr(i);if(i.parentNode)i.remove()});let N=e;for(let i=s.length-1;i>=0;i--){let b=s[i];if(b.parentNode!==N.parentNode)N.parentNode?.insertBefore(b,N);if(b._mounts)b._mounts.forEach((S)=>S());N=b}l=s});y(),_._cleanups.add(()=>U(y)),Y(()=>U(y))}else{let e=ur(a);if(_.appendChild(e),e._mounts)e._mounts.forEach((l)=>l())}};return u(f),_},H=(r)=>{let n=new Set,f=J,o=A,_=P.createElement("div");_.style.display="contents",_.setAttribute("role","presentation"),J={_cleanups:n},A=null;let u=(a)=>{if(!a)return;if(a._isRuntime)n.add(a.destroy),_.appendChild(a.container);else if(Z(a))a.forEach(u);else _.appendChild(a instanceof Node?a:P.createTextNode(String(a==null?"":a)))};try{u(r({onCleanup:(a)=>n.add(a)}))}finally{J=f,A=o}return{_isRuntime:!0,container:_,destroy:()=>{n.forEach((a)=>a()),nr(_),_.remove()}}},g=(r,n,f=null)=>{let o=P.createTextNode(""),_=t("div",{style:"display:contents"},[o]),u=null;return K(()=>!!(z(r)?r():r),(a)=>{if(u)u.destroy(),u=null;let e=a?n:f;if(e)u=H(()=>z(e)?e():e),_.insertBefore(u.container,o)}),Y(()=>u?.destroy()),_},D=({name:r,duration:n=200,scale:f,slide:o,rotate:_,blur:u},a)=>{let e=typeof a==="function"?a():a;if(!(e instanceof Node))return e;if(r)return e.style.animation=`${r}-in ${n}ms`,e;let l=f||o||_||u,y=[f?"scale(0.95)":"",o?"translateY(-10px)":"",_?"rotate(-2deg)":""].filter(Boolean).join(" ");if(e.style.transition=`all ${n}ms ease`,e.style.opacity="0",l)e.style.transform=y;if(u)e.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(e.style.opacity="1",l)e.style.transform="none";if(u)e.style.filter="none"}),e},X=(r,n,f)=>{let o=P.createTextNode(""),_=t("div",{style:"display:contents"},[o]),u=new Map;return K(()=>(z(r)?r():r)||[],(a)=>{let e=new Map,l=[],y=a||[];for(let s=0;sn(N,s));else u.delete(i);e.set(i,b),l.push(b)}u.forEach((s)=>s.destroy());let E=o;for(let s=l.length-1;s>=0;s--){let N=l[s].container;if(N.nextSibling!==E)_.insertBefore(N,E);E=N}u=e}),_},q=(r)=>{let n=()=>window.location.hash.slice(1)||"/",f=j(n()),o=()=>f(n());window.addEventListener("hashchange",o),Y(()=>window.removeEventListener("hashchange",o));let _=t("div",{class:"router-hook"}),u=null;return K([f],()=>{let a=f(),e=r.find((l)=>{let y=l.path.split("/").filter(Boolean),E=a.split("/").filter(Boolean);return y.length===E.length&&y.every((s,N)=>s[0]===":"||s===E[N])})||r.find((l)=>l.path==="*");if(e){u?.destroy();let l={};e.path.split("/").filter(Boolean).forEach((y,E)=>{if(y[0]===":")l[y.slice(1)]=a.split("/").filter(Boolean)[E]}),q.params(l),u=H(()=>z(e.component)?e.component(l):e.component),_.replaceChildren(u.container)}}),_};q.params=j({});q.to=(r)=>window.location.hash=r.replace(/^#?\/?/,"#/");q.back=()=>window.history.back();q.path=()=>window.location.hash.replace(/^#/,"")||"/";var dr=({url:r,method:n="GET",headers:f={}})=>{let o=j(!1),_=j(null),u=j(null),a=null,e=null;return{run:async(l=null)=>{a?.abort(),clearTimeout(e),a=new AbortController,e=setTimeout(()=>a.abort(),1e4),o(!0),_(null);try{let y=l instanceof FormData,E=await fetch(r,{method:n,headers:y?f:{"Content-Type":"application/json",...f},body:y?l:l?JSON.stringify(l):void 0,signal:a.signal}),s=await E.text(),N=s?JSON.parse(s):null;if(!E.ok)throw Error(N?.message||E.statusText);return u(N),N}catch(y){if(y.name!=="AbortError")_(y.message);throw y}finally{o(!1),clearTimeout(e),a=null,e=null}},abort:()=>a?.abort(),loading:o,error:_,data:u}},tr=(r,n)=>{let f=typeof n==="string"?P.querySelector(n):n;if(!f)return;if(p.has(f))p.get(f).destroy();let o=H(z(r)?r:()=>r);return f.replaceChildren(o.container),p.set(f,o),o},Fr=Object.freeze({$:j,$$:wr,watch:K,h:t,when:g,each:X,fx:D,router:q,req:dr,mount:tr,batch:xr});if(typeof window<"u")Object.assign(window,Fr),"a abbr article aside audio b blockquote br button canvas caption cite code col colgroup datalist dd del details dfn dialog div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 header hr i iframe img input ins kbd label legend li main mark meter nav object ol optgroup option output p picture pre progress section select slot small source span strong sub summary sup svg table tbody td template textarea tfoot th thead time tr u ul video".split(" ").forEach((r)=>{window[r]=(n,f)=>t(r,n,f)});var C=(r)=>typeof r==="function"?r():r,G=(r,n="label")=>r&&typeof r==="object"?r[n]:r,w=(...r)=>r.filter(Boolean).join(" ").trim(),W=(r)=>typeof r==="function",Er=(r,n,f="label",o=String(n).toLowerCase())=>!n?C(r):C(r).filter((_)=>String(_&&typeof _==="object"?_[f]:_).toLowerCase().includes(o)),sr=(r)=>`${r}-${Math.random().toString(36).slice(2,9)}`,br=()=>document.activeElement?.blur(),Nr=(r,n)=>{let f=j(-1);return{cursor:f,onKey:(_,u)=>{let a=C(r),e=f(),l=a.length;if(!l)return;let y=_.key;y==="ArrowDown"?(_.preventDefault(),n(!0),f(Math.min(e+1,l-1))):y==="ArrowUp"?(_.preventDefault(),f(Math.max(e-1,0))):y==="Enter"?e>=0&&(_.preventDefault(),u(a[e])):y==="Escape"&&(n(!1),f(-1))}}},mr=(r)=>{let n=r.name||sr("acc");return X(r.items,(f)=>{return t("div",{class:w("collapse",r.class)},[t("input",{type:"radio",name:n,checked:f.open||void 0}),f.title?t("div",{class:w("collapse-title",`${f.classTitle??" font-semibold"}`)},f.title):null,f.content?t("div",{class:w("collapse-content text-sm",`${f.classContent??" font-semibold"}`)},f.content):null])})},Mr=(r,n)=>t("div",{...r,class:w("alert",r.class)},n),vr=({items:r,value:n,onselect:f,placeholder:o="Buscar...",..._})=>{let u=j(C(n)||""),a=j(!1),e=j(()=>Er(r,u())),{cursor:l,onKey:y}=Nr(e,a),E=(s)=>{let N=G(s),i=typeof s==="string"?s:s.value;if(u(N),W(n))n(i);f?.(s),a(!1)};return t("div",{class:"relative w-full"},[Lr({..._,type:"text",placeholder:o,value:u,left:t("span",{class:"icon-[lucide--search]"}),oninput:(s)=>{if(u(s.target.value),W(n))n(s.target.value);a(!0)},onfocus:()=>a(!0),onblur:()=>setTimeout(()=>{a(!1),l(-1)},150),onkeydown:(s)=>y(s,E)}),g(a,()=>D({duration:200,slide:!0},t("ul",{class:"absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap"},[X(e,(s,N)=>t("li",{},[t("a",{class:()=>l()===N?"active bg-primary text-primary-content":"",onmousedown:(i)=>i.preventDefault(),onclick:()=>E(s),onmouseenter:()=>l(N)},G(s))]),(s,N)=>G(s)+N),()=>e().length===0?t("li",{class:"p-4 opacity-50 text-center"},"Sin resultados"):null])))])},cr=(r,n)=>t("span",{...r,class:w("badge",r.class)},n),ir=(r,n)=>t("button",{...r,class:w("btn",r.class)},n),Sr=(r)=>{let n=j(new Date),f=j(null),o=j(0),_=j(0),u=new Date,a=`${u.getFullYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`,e=(b)=>`${b.getFullYear()}-${String(b.getMonth()+1).padStart(2,"0")}-${String(b.getDate()).padStart(2,"0")}`,l=()=>C(r.range)===!0,y=()=>C(r.value),E=(b)=>{let S=e(b),L=y();if(l())if(!L?.start||L.start&&L.end)r.onChange?.({start:S,end:null,...r.hour&&{startHour:o()}});else{let T=L.start,B=S{let S=n();n(new Date(S.getFullYear(),S.getMonth()+b,1))},N=(b)=>{let S=n();n(new Date(S.getFullYear()+b,S.getMonth(),1))},i=({value:b,onChange:S})=>t("div",{class:"flex-1"},[t("div",{class:"flex gap-2 items-center"},[t("input",{type:"range",min:0,max:23,value:b,class:"range range-xs flex-1",oninput:(L)=>S(+L.target.value)}),t("span",{class:"text-sm font-mono min-w-[48px] text-center"},()=>String(C(b)).padStart(2,"0")+":00")])]);return t("div",{class:w("p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box w-80 select-none",r.class)},[t("div",{class:"flex justify-between items-center mb-4 gap-1"},[t("div",{class:"flex gap-0.5"},[t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>N(-1)},t("span",{class:"icon-[lucide--chevrons-left]"})),t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>s(-1)},t("span",{class:"icon-[lucide--chevron-left]"}))]),t("span",{class:"font-bold uppercase flex-1 text-center"},()=>n().toLocaleString("es-ES",{month:"short",year:"numeric"})),t("div",{class:"flex gap-0.5"},[t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>s(1)},t("span",{class:"icon-[lucide--chevron-right]"})),t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>N(1)},t("span",{class:"icon-[lucide--chevrons-right]"}))])]),t("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>f(null)},[...["L","M","X","J","V","S","D"].map((b)=>t("div",{class:"text-[10px] opacity-40 font-bold text-center"},b)),()=>{let b=n(),S=b.getFullYear(),L=b.getMonth(),T=new Date(S,L,1).getDay(),B=T===0?6:T-1,Qr=new Date(S,L+1,0).getDate(),F=[];for(let Q=0;Q{let R=y(),m=f(),Ur=typeof R==="string"?R.split("T")[0]===$:R?.start===$,Kr=R?.end===$,M=!1;if(l()&&R?.start){let v=R.start;if(!R.end&&m)M=$>v&&$<=m||$=m;else if(R.end)M=$>v&&$l()&&f($),onclick:()=>E(or)},Q.toString()))}return F}]),r.hour?t("div",{class:"mt-3 pt-2 border-t border-base-300"},l()?t("div",{class:"flex gap-4"},[i({value:o,onChange:(b)=>o(b)}),i({value:_,onChange:(b)=>_(b)})]):i({value:o,onChange:(b)=>o(b)})):null])},hr=(r,n)=>t("div",{...r,class:w("card",r.class)},n),pr=(r,n)=>t("div",{...r,class:w("card-title",r.class)},n),rn=(r,n)=>t("div",{...r,class:w("card-body",r.class)},n),nn=(r,n)=>t("div",{...r,class:w("card-actions",r.class)},n),tn=(r,n)=>t("div",{...r,class:w("carousel",r.class)},n),fn=(r,n)=>t("div",{...r,class:w("carousel-item",r.class)},n),on=(r,n)=>t("div",{...r,class:w("chat",r.class)},n),an=(r,n)=>t("div",{...r,class:w("chat-bubble",r.class)},n),_n=(r,n)=>t("div",{...r,class:w("chat-footer",r.class)},n),un=(r,n)=>t("div",{...r,class:w("chat-header",r.class)},n),en=(r,n)=>t("div",{...r,class:w("chat-image avatar",r.class)},t("div",{class:"w-10 rounded-full"},typeof n==="string"?t("img",{src:n,alt:"avatar"}):n)),ln=(r)=>t("input",{...r,type:"checkbox",class:w("checkbox",r.class)}),yn=(r)=>{let n=()=>C(r.value)||"#000000";return Cr({},[Ar({class:"btn"},[t("div",{class:"size-5 rounded-sm",style:()=>`background-color: ${n()}`}),r.label&&t("span",{},r.label)]),Wr({class:"p-3 bg-base-100 rounded-box shadow-xl w-64"},jr({value:r.value,onchange:(f)=>{W(r.value)?r.value(f):r.onchange?.(f),br()}}))])},jr=(r)=>{let n=()=>C(r.value)||"#000000",f=["#000","#1A1A1A","#333","#4D4D4D","#666","#808080","#B3B3B3","#FFF","#450a0a","#7f1d1d","#991b1b","#b91c1c","#dc2626","#ef4444","#f87171","#fca5a5","#431407","#7c2d12","#9a3412","#c2410c","#ea580c","#f97316","#fb923c","#ffedd5","#713f12","#a16207","#ca8a04","#eab308","#facc15","#fde047","#fef08a","#fff9c4","#064e3b","#065f46","#059669","#10b981","#34d399","#4ade80","#84cc16","#d9f99d","#082f49","#075985","#0284c7","#0ea5e9","#38bdf8","#7dd3fc","#22d3ee","#cffafe","#1e1b4b","#312e81","#4338ca","#4f46e5","#6366f1","#818cf8","#a5b4fc","#e0e7ff","#2e1065","#4c1d95","#6d28d9","#7c3aed","#8b5cf6","#a855f7","#d946ef","#fae8ff"],o=(_)=>W(r.value)?r.value(_):r.onchange?.(_);return t("div",{class:"grid grid-cols-8 gap-1"},f.map((_)=>t("button",{type:"button",style:`background-color: ${_}`,class:()=>{return`size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${n().toLowerCase()===_.toLowerCase()?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`},onclick:()=>o(_)})))},wn=(r)=>{let n=j(!1),f=j(""),o=()=>C(r.range)===!0;K(()=>{let u=C(r.value);if(!u)return f("");let a="";if(typeof u==="string")a=r.hour&&u.includes("T")?u.replace("T"," "):u;else if(u.start&&u.end){let e=r.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start,l=r.hour&&u.endHour!=null?`${u.end} ${String(u.endHour).padStart(2,"0")}:00`:u.end;a=`${e} - ${l}`}else if(u.start)a=`${r.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start}...`;f(a)});let _=(u)=>{if(W(r.value))r.value(u);else r.onChange?.(u);if(!o()||u?.end!=null)n(!1)};return t("div",{class:w("relative w-full",r.class)},[t("label",{class:"input input-bordered w-full",onclick:(u)=>{u.stopPropagation(),n(!n())}},[t("span",{class:"icon-[lucide--calendar]"}),t("input",{...r,type:"text",class:"grow",value:f,readonly:!0,placeholder:r.placeholder||(o()?"Seleccionar rango...":"Seleccionar fecha...")})]),g(n,()=>[t("div",{class:"fixed inset-0 z-[90]",onclick:()=>n(!1)}),t("div",{class:"absolute left-0 mt-2 z-[100]",onclick:(u)=>u.stopPropagation()},Sr({value:r.value,range:o(),hour:r.hour,onChange:_}))])])},En=(r,n)=>div({...r,class:w("drawer",r.class)},n),sn=(r)=>input({...r,type:"checkbox",class:"drawer-toggle",checked:()=>C(r.checked),onchange:(n)=>W(r.checked)&&r.checked(n.target.checked)}),bn=(r,n)=>div({...r,class:w("drawer-content",r.class)},n),Nn=(r,n)=>div({...r,class:w("drawer-side",r.class)},n),Sn=(r)=>label({...r,for:r.for,class:w("drawer-overlay",r.class)}),jn=(r)=>t("div",{...r,class:w("divider",r.class)}),Cr=(r,n)=>t("div",{...r,class:w("dropdown",r.class)},n),Ar=(r,n)=>t("div",{...r,tabindex:"0",role:"button",class:w("btn",r.class)},n),Wr=(r,n)=>t("div",{...r,tabindex:"0",class:w("dropdown-content",r.class)},n),Cn=(r,n)=>t("div",{class:"fab"},[t("div",{tabindex:"0",role:"button",class:w("btn",r.class)},d(r.icon)),n]),An=(r,n)=>t("fieldset",{class:w("fieldset",r.class)},[t("legend",{class:"fieldset-legend"},r.label),n]),Wn=(r)=>{let n=j([]),f=j(!1),o=j(null),_=(r.max||2)*1024*1024,u=(e)=>{let l=Array.from(e);if(o(null),l.some((E)=>E.size>_)){o(`Máx ${r.max||2}MB`);return}let y=[...n(),...l];if(n(y),W(r.onselect))r.onselect(y);else if(W(r.value))r.value(y)},a=(e)=>{let l=n().filter((y,E)=>E!==e);if(n(l),W(r.onselect))r.onselect(l);else if(W(r.value))r.value(l)};return t("div",{class:w("fieldset w-full p-0",r.class)},[t("label",{class:()=>`relative flex items-center justify-between w-full h-12 px-4 border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200 ${f()?"border-primary bg-primary/10":"border-base-content/20 bg-base-100 hover:bg-base-200"}`,ondragover:(e)=>{e.preventDefault(),f(!0)},ondragleave:()=>f(!1),ondrop:(e)=>{e.preventDefault(),f(!1),u(e.dataTransfer.files)}},[t("div",{class:"flex items-center gap-3 w-full"},[t("span",{class:"icon-[lucide--upload]"}),t("span",{class:"text-sm opacity-70 truncate grow text-left"},"Arrastra o selecciona archivos..."),t("span",{class:"text-[10px] opacity-40 shrink-0"},`Máx ${r.max||2}MB`)]),t("input",{type:"file",multiple:!0,accept:r.accept||"*",class:"hidden",onchange:(e)=>u(e.target.files)})]),()=>o()&&t("span",{class:"text-[10px] text-error mt-1 px-1 font-medium"},o()),g(()=>n().length>0,()=>t("ul",{class:"mt-2 space-y-1"},X(n,(e,l)=>t("li",{class:"flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300"},[t("div",{class:"flex items-center gap-2 truncate"},[t("span",{class:"opacity-50"},"\uD83D\uDCC4"),t("span",{class:"truncate font-medium max-w-[200px]"},e.name),t("span",{class:"text-[9px] opacity-40"},`(${(e.size/1024).toFixed(0)} KB)`)]),t("button",{type:"button",class:"btn btn-ghost btn-xs btn-circle",onclick:(y)=>{y.preventDefault(),a(l)}},t("span",{class:"icon-[lucide--x]"}))]))))])},d=(r)=>t("span",{class:r.startsWith("icon-")?r:""},r.startsWith("icon-")?null:r),Ln=(r,n)=>t("div",{...r,class:w("indicator",r.class)},[r.value&&t("span",{class:w("indicator-item badge",r.class)},r.value),n]),Lr=(r)=>{let{label:n,icon:f,float:o,placeholder:_,value:u,left:a,right:e,rule:l,hint:y,content:E,...s}=r,N=j(!1),i=j(!1),b=r.type==="password",S=l??null,L=()=>b?C(N)?"text":"password":r.type||"text";return t("div",{class:"input-container",onfocusin:()=>i(!0),onfocusout:(T)=>{if(!T.currentTarget.contains(T.relatedTarget))i(!1)}},[t("label",{class:o?"floating-label":""},[o?t("span",{},n):null,t("label",{pattern:S,class:()=>w("input validator",r.class)},[n&&!o?t("span",{class:"label"},n):null,a??null,t("input",{...s,type:L,class:"grow",pattern:S,placeholder:_||n||" ",value:u}),e??null,b?Jr({class:"ml-2"},[Tr({value:N,class:"swap-rotate"}),$r({},d("icon-[lucide--eye]")),kr({},d("icon-[lucide--eye-off]"))]):null]),y?t("div",{class:"validator-hint"},y):null,g(i,()=>D({duration:300,slide:!0},t("div",{class:"input-content",onmousedown:(T)=>T.preventDefault()},[W(E)?E(i):E])))])])},Jn=(r,n)=>t("kbd",{...r,class:w("kbd",r.class)},n),Tn=(r,n)=>t("ul",{...r,class:w("list",r.class)},n),$n=(r)=>()=>(C(r.items)||[]).map((n,f)=>t("li",{class:w("list-row",r.class,n?.class)},typeof r.render==="function"?r.render(n,f):n)),kn=(r,n)=>t("span",{...r,class:w("loading loading-spinner",r.class)},n),zn=(r)=>{if(r.children!==void 0)return t("ul",{class:w("menu",r.class),...r},r.children);let{items:n}=r,f=(o)=>o.children?t("li",{},t("details",{open:o.open||void 0},[t("summary",{},G(o)),t("ul",{},X(()=>C(o.children)||[],f))])):t("li",{},t("a",{href:o.href,onclick:o.onclick?(_)=>{if(!o.href)_.preventDefault();o.onclick(_)}:null},G(o)));return t("ul",{class:w("menu",r.class)},X(()=>C(n)||[],f))},Pn=(r)=>{let n=null;K(()=>{let o=C(r.open);if(!n)return;o?n.showModal():n.close()});let f=()=>W(r.open)&&r.open(!1);return t("dialog",{...r,ref:(o)=>n=o,class:w("modal",r.class),onclose:f,oncancel:f},[t("div",{class:"modal-box"},[r.title&&t("h3",{class:"text-lg font-bold"},r.title),r.children,t("div",{class:"modal-action"},[r.actions||ir({class:"btn",onclick:f},"Cerrar")])]),t("form",{method:"dialog",class:"modal-backdrop"},[t("button",{},"close")])])},Rn=(r,n)=>t("div",{...r,class:w("navbar",r.class)},n),Gn=(r)=>t("progress",{...r,class:w("progress",r.class)}),Xn=(r,n)=>t("div",{...r,class:w("radial-progress",r.class),style:`--value:${r.value??0};${r.style??""}`,role:"progressbar","aria-valuenow":r.value??0},n??`${r.value??0}%`),Qn=(r)=>t("input",{...r,type:"radio",class:w("radio",r.class)}),Un=(r)=>t("input",{...r,type:"range",class:w("range",r.class)}),Kn=(r,n)=>t("div",{...r,class:"rating"},n),Zn=(r)=>[...Array(r.count)].map((n,f)=>t("input",{class:w("mask",r.class),name:r.name,type:"radio",checked:()=>C(r.value)===f,onchange:()=>W(r.value)?r.value(f):r.onchange?.(f)})),Yn=(r,n)=>{if(n!==void 0)return t("select",{class:w("select",r.class),...r},n);let{label:f,float:o,placeholder:_,placeholderDisabled:u=!0,value:a,left:e,right:l,hint:y,items:E,keyFn:s,...N}=r,i=()=>{let b=C(E)||[];return[..._?[{disabled:u,label:_,value:""}]:[],...b]};return t("label",{class:o?"floating-label":""},[o?t("span",{},f):null,t("label",{class:w("select",N.class)},[!o&&f?t("span",{class:"label"},f):null,e??null,t("select",{value:()=>C(a),onchange:(b)=>W(a)?a(b.target.value):N.onchange?.(b)},X(i,(b)=>{let S=G(b,b.value!==void 0?"value":void 0),L=G(b,"label");return t("option",{value:S,disabled:b.disabled||void 0},L)})),l??null]),y?t("div",{class:"validator-hint"},y):null])},gn=(r)=>t("div",{...r,class:w("skeleton",r.class)}),qn=(r)=>t("span",{...r,class:w("skeleton skeleton-text",r.class)}),Bn=(r,n)=>t("div",{...r,class:w("stack",r.class)},n),In=(r,n)=>t("ul",{...r,class:w("steps",r.class)},n),Vn=(r,n)=>t("li",{...r,class:w("step",r.class),"data-content":r.dataContent},n),Jr=(r,n)=>t("label",{...r,class:w("swap",r.class)},n),Tr=(r)=>t("input",{type:"checkbox",checked:()=>C(r.value),onchange:(n)=>W(r.value)&&r.value(n.target.checked),class:r.class}),$r=(r,n)=>t("div",{...r,class:w("swap-on",r.class)},n),kr=(r,n)=>t("div",{...r,class:w("swap-off",r.class)},n),On=(r,n)=>t("table",{...r,class:w("table",r.class)},n),xn=({items:r,columns:n=[],header:f=!0})=>{let o=f!==!1&&n.some((u)=>u.label)?t("thead",{},t("tr",{},n.map((u)=>t("th",{class:u.class},u.label)))):null,_=t("tbody",{},()=>{return(C(r)||[]).map((a,e)=>t("tr",{},n.map((l)=>{let y=l.render?l.render(a,e):a[l.key];return t("td",{class:l.class},y)})))});return[o,_].filter(Boolean)},Hn=(r,n)=>{if(!r.items){let{class:y,...E}=r;return t("div",{...E,class:w("tabs",y)},n)}let{items:f,activeIndex:o,onClose:_,class:u,...a}=r,e=(y)=>W(y)?y():y,l=_||(W(f)?(y,E)=>{let N=e(f).filter((i,b)=>b!==y);if(f(N),o()>=N.length)o(Math.max(0,N.length-1))}:null);return t("div",{...a,class:w("tabs",u)},()=>{return(e(f)||[]).flatMap((E,s)=>{let N=()=>o()===s,i=t("button",{class:()=>`tab ${N()?"tab-active":""} ${E.class||""}`,onclick:(S)=>{S.preventDefault(),o(s),E.onclick?.(S)}},[G(E),E.closable?t("span",{class:"ml-1 inline-flex items-center justify-center w-4 h-4 rounded-full hover:bg-base-300 text-base-content/60 hover:text-base-content cursor-pointer",onclick:(S)=>{S.stopPropagation(),l?.(s,E)}},t("span",{class:"icon-[lucide--x] w-3 h-3"})):null]),b=t("div",{class:"tab-content bg-base-100 border-base-300 p-6",style:()=>`display: ${N()?"block":"none"};`},W(E.content)?E.content():E.content);return[i,b]})})},Dn=(r)=>t("textarea",{...r,class:w("textarea",r.class)}),dn=(r,n)=>t("span",{...r,class:w("text-rotate",r.class)},n),Fn=(r,n)=>t("ul",{...r,class:w("timeline",r.class)},n),mn=(r,n="alert-success",f=3500)=>{let o=document.getElementById("sigpro-toast-container");if(!o)o=t("div",{id:"sigpro-toast-container",class:"fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none"}),document.body.appendChild(o);let _=t("div",{style:"display: contents"});o.appendChild(_);let u,a,e,y=tr(()=>{let E=j(!1),s=j(!1);u=()=>{if(s())return;clearTimeout(a),clearTimeout(e),s(!0),setTimeout(()=>{if(y.destroy(),_.remove(),!o.hasChildNodes())o.remove()},300)},e=setTimeout(()=>E(!0),0);let N=typeof r==="function"?C(r):r,i=typeof N==="string"?t("span",{},N):N;return t("div",{class:()=>{if(s())return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-full opacity-0 pointer-events-auto`;if(E())return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-0 opacity-100 pointer-events-auto`;return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto`}},[i,t("button",{class:"btn btn-xs btn-circle btn-ghost",onclick:u},t("span",{class:"icon-[lucide--x]"}))])},_);if(f>0)a=setTimeout(u,f);return u},Mn=(r)=>t("input",{...r,type:"checkbox",class:w("toggle",r.class)}),vn=(r,n)=>t("div",{...r,class:w("tooltip",r.class),"data-tip":r.tip},n);var cn={es:{close:"Cerrar",confirm:"Confirmar",cancel:"Cancelar",search:"Buscar...",loading:"Cargando...",nodata:"Sin datos"},en:{close:"Close",confirm:"Confirm",cancel:"Cancel",search:"Search...",loading:"Loading...",nodata:"No data"}},zr=j("es"),Pr=(r)=>zr(r),Rr=(r)=>()=>cn[zr()][r]||r;var Gr={...fr},Xr={Locale:Pr,tt:Rr};if(typeof window<"u")Object.entries({...Gr,...Xr}).forEach(([r,n])=>{Object.defineProperty(window,r,{value:n,writable:!1,configurable:!0,enumerable:!0})}),console.log("SigProUI DX installed");})(); +(()=>{var{defineProperty:h,getOwnPropertyNames:Gt,getOwnPropertyDescriptor:Mt}=Object,Pt=Object.prototype.hasOwnProperty;function Ut(t){return this[t]}var Xt=(t)=>{var r=(at??=new WeakMap).get(t),e;if(r)return r;if(r=h({},"__esModule",{value:!0}),t&&typeof t==="object"||typeof t==="function"){for(var o of Gt(t))if(!Pt.call(r,o))h(r,o,{get:Ut.bind(t,o),enumerable:!(e=Mt(t,o))||e.enumerable})}return at.set(t,r),r},at;var Qt=(t)=>t;function Yt(t,r){this[t]=Qt.bind(null,r)}var ut=(t,r)=>{for(var e in r)h(t,e,{get:r[e],enumerable:!0,configurable:!0,set:Yt.bind(r,e)})};var pr={};ut(pr,{Utils:()=>qt,Components:()=>xt});var lt={};ut(lt,{Tooltip:()=>vr,Toggle:()=>Fr,Toast:()=>Hr,Timeline:()=>Dr,Textrotate:()=>cr,Textarea:()=>Vr,Tabs:()=>Or,TableItems:()=>Ir,Table:()=>Zr,SwapToggle:()=>gt,SwapOn:()=>mt,SwapOff:()=>Lt,Swap:()=>$t,Steps:()=>Qr,Step:()=>Yr,Stack:()=>Xr,SkeletonText:()=>Ur,Skeleton:()=>Pr,Select:()=>Mr,RatingItems:()=>Gr,Rating:()=>Br,Range:()=>Kr,Radio:()=>zr,Radial:()=>qr,Progress:()=>xr,Navbar:()=>Wr,Modal:()=>Rr,Menu:()=>Jr,Loading:()=>Lr,ListRows:()=>mr,List:()=>gr,Kbd:()=>$r,Input:()=>At,Indicator:()=>Ar,Icon:()=>X,Fileinput:()=>kr,Fieldset:()=>jr,Fab:()=>Cr,DropdownContent:()=>kt,DropdownButton:()=>jt,Dropdown:()=>Ct,DrawerToggle:()=>br,DrawerSide:()=>Nr,DrawerOverlay:()=>Sr,DrawerContent:()=>Er,Drawer:()=>dr,Divider:()=>Tr,Datepicker:()=>wr,Colorpicker:()=>yr,ColorPalette:()=>Tt,Checkbox:()=>_r,ChatImage:()=>ir,ChatHeader:()=>sr,ChatFooter:()=>ur,ChatBubble:()=>ar,Chat:()=>fr,CarouselItem:()=>lr,Carousel:()=>or,CardTitle:()=>rr,CardBody:()=>nr,CardActions:()=>er,Card:()=>tr,Calendar:()=>St,Button:()=>Nt,Badge:()=>pt,Autocomplete:()=>ht,Alert:()=>vt,Accordion:()=>Ft});var J=(t)=>typeof t==="function",rt=(t)=>t&&typeof t==="object",G=Array.isArray,R=typeof document<"u"?document:null,st=(t)=>t?._isRuntime?t.container:t instanceof Node?t:R.createTextNode(t==null?"":String(t)),C=null,A=null,Y=!1,I=0,O=new Set,it=new WeakMap,p=Symbol("iter"),tt=new WeakMap,K=(t)=>{if(!t||t._disposed)return;t._disposed=!0;let r=[t];while(r.length){let e=r.pop();if(e._cleanups)e._cleanups.forEach((o)=>o()),e._cleanups.clear();if(e._children)e._children.forEach((o)=>r.push(o)),e._children.clear();if(e._deps)e._deps.forEach((o)=>o.delete(e)),e._deps.clear()}},M=(t)=>{if(A)(A._cleanups||=new Set).add(t)},Zt=(t)=>{let r=C;C=null;try{return t()}finally{C=r}},Z=(t,r=!1)=>{let e=()=>{if(e._disposed)return;if(e._deps)e._deps.forEach((u)=>u.delete(e));if(e._cleanups)e._cleanups.forEach((u)=>u()),e._cleanups.clear();let o=C,a=A;C=A=e;try{return e._result=t()}catch(u){console.error("[SigPro]",u)}finally{C=o,A=a}};if(e._deps=e._cleanups=e._children=null,e._disposed=!1,e._isComputed=r,e._depth=C?C._depth+1:0,e._mounts=[],e._parent=A,A)(A._children||=new Set).add(e);return e},yt=()=>{if(Y)return;Y=!0;let t=Array.from(O).sort((r,e)=>r._depth-e._depth);O.clear();for(let r of t)if(!r._disposed)r();Y=!1},It=(t)=>{I++;try{return t()}finally{if(I--,I===0&&O.size>0&&!Y)yt()}},L=(t,r=!1)=>{if(!r&&C&&!C._disposed)t.add(C),(C._deps||=new Set).add(t);else if(r&&t.size>0){let e=!1;for(let o of t){if(o===C||o._disposed)continue;if(o._isComputed){if(o._dirty=!0,o._subs)L(o._subs,!0)}else O.add(o),e=!0}if(e&&!Y&&I===0)queueMicrotask(yt)}},S=(t,r=null)=>{let e=new Set;if(J(t)){let o,a=()=>{if(a._dirty){let u=C;C=a;try{let l=t();if(!Object.is(o,l))o=l,L(e,!0)}finally{C=u}a._dirty=!1}return L(e),o};if(a._isComputed=!0,a._subs=e,a._dirty=!0,a._deps=null,a._disposed=!1,a.stop=()=>{},A)M(a.stop);return a}if(r)try{t=JSON.parse(localStorage.getItem(r))??t}catch(o){}return(...o)=>{if(o.length){let a=J(o[0])?o[0](t):o[0];if(!Object.is(t,a)){if(t=a,r)localStorage.setItem(r,JSON.stringify(t));L(e,!0)}}return L(e),t}},wt=(t)=>{if(!rt(t))return t;let r=it.get(t);if(r)return r;let e=new Map,o=(u)=>{let l=e.get(u);if(!l)e.set(u,l=new Set);return l},a=new Proxy(t,{get(u,l,f){if(typeof l!=="symbol")L(o(l));return wt(Reflect.get(u,l,f))},set(u,l,f,s){let i=Reflect.has(u,l),y=Reflect.get(u,l,s),w=Reflect.set(u,l,f,s);if(w&&!Object.is(y,f)){if(L(o(l),!0),!i)L(o(p),!0)}return w},deleteProperty(u,l){let f=Reflect.deleteProperty(u,l);if(f)L(o(l),!0),L(o(p),!0);return f},ownKeys(u){return L(o(p)),Reflect.ownKeys(u)}});return it.set(t,a),a},B=(t,r)=>{if(r===void 0){let o=Z(t);return o(),()=>K(o)}let e=Z(()=>{let o=Array.isArray(t)?t.map((a)=>a()):t();Zt(()=>r(o))});return e(),()=>K(e)},nt=(t)=>{if(!t)return;if(t._cleanups)t._cleanups.forEach((r)=>r()),t._cleanups.clear();if(t._ownerEffect)K(t._ownerEffect);if(t.childNodes)t.childNodes.forEach((r)=>nt(r))},Ot=/^\s*(javascript|data|vbscript):/i,Vt=(t)=>t==="src"||t==="href"||t.startsWith("on"),_t=(t,r)=>{if(r==null||r===!1)return null;if(Vt(t)){let e=String(r);if(Ot.test(e))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${t}`),"#"}return r},n=(t,r={},e=[])=>{if(r instanceof Node||G(r)||!rt(r))e=r,r={};if(J(t)){let l=Z(()=>{let y=t(r,{children:e,emit:(w,...b)=>r[`on${w[0].toUpperCase()}${w.slice(1)}`]?.(...b)});return l._result=y,y});l();let f=l._result;if(f==null)return null;let s=f instanceof Node||G(f)&&f.every((y)=>y instanceof Node)?f:R.createTextNode(String(f)),i=(y)=>{if(rt(y)&&!y._isRuntime)y._mounts=l._mounts||[],y._cleanups=l._cleanups||new Set,y._ownerEffect=l};return G(s)?s.forEach(i):i(s),s}let o=/^(svg|path|circle|rect|line|poly(line|gon)|g|defs|text(path)?|tspan|use|symbol|image|marker|ellipse)$/i.test(t),a=o?R.createElementNS("http://www.w3.org/2000/svg",t):R.createElement(t);a._cleanups=new Set;for(let l in r){if(!r.hasOwnProperty(l))continue;let f=r[l];if(l==="ref"){J(f)?f(a):f.current=a;continue}if(o&&l.startsWith("xlink:")){f==null?a.removeAttributeNS("http://www.w3.org/1999/xlink",l.slice(6)):a.setAttributeNS("http://www.w3.org/1999/xlink",l.slice(6),f);continue}if(l.startsWith("on")){let s=l.slice(2).toLowerCase();a.addEventListener(s,f);let i=()=>a.removeEventListener(s,f);a._cleanups.add(i),M(i)}else if(J(f)){let s=Z(()=>{let i=_t(l,f());if(l==="class")a.className=i||"";else if(i==null)a.removeAttribute(l);else if(l in a&&!o)a[l]=i;else a.setAttribute(l,i===!0?"":i)});if(s(),a._cleanups.add(()=>K(s)),M(()=>K(s)),/^(INPUT|TEXTAREA|SELECT)$/.test(a.tagName)&&(l==="value"||l==="checked")){let i=l==="checked"?"change":"input";a.addEventListener(i,(y)=>f(y.target[l]))}}else{let s=_t(l,f);if(s!=null)if(l in a&&!o)a[l]=s;else a.setAttribute(l,s===!0?"":s)}}let u=(l)=>{if(G(l))return l.forEach(u);if(J(l)){let f=R.createTextNode("");a.appendChild(f);let s=[],i=Z(()=>{let y=l(),w=(G(y)?y:[y]).map(st);s.forEach((E)=>{if(E._isRuntime)E.destroy();else nt(E);if(E.parentNode)E.remove()});let b=f;for(let E=w.length-1;E>=0;E--){let d=w[E];if(d.parentNode!==b.parentNode)b.parentNode?.insertBefore(d,b);if(d._mounts)d._mounts.forEach((N)=>N());b=d}s=w});i(),a._cleanups.add(()=>K(i)),M(()=>K(i))}else{let f=st(l);if(a.appendChild(f),f._mounts)f._mounts.forEach((s)=>s())}};return u(e),a},V=(t)=>{let r=new Set,e=A,o=C,a=R.createElement("div");a.style.display="contents",a.setAttribute("role","presentation"),A={_cleanups:r},C=null;let u=(l)=>{if(!l)return;if(l._isRuntime)r.add(l.destroy),a.appendChild(l.container);else if(G(l))l.forEach(u);else a.appendChild(l instanceof Node?l:R.createTextNode(String(l==null?"":l)))};try{u(t({onCleanup:(l)=>r.add(l)}))}finally{A=e,C=o}return{_isRuntime:!0,container:a,destroy:()=>{r.forEach((l)=>l()),nt(a),a.remove()}}},P=(t,r,e=null)=>{let o=R.createTextNode(""),a=n("div",{style:"display:contents"},[o]),u=null;return B(()=>!!(J(t)?t():t),(l)=>{if(u)u.destroy(),u=null;let f=l?r:e;if(f)u=V(()=>J(f)?f():f),a.insertBefore(u.container,o)}),M(()=>u?.destroy()),a},ct=({name:t,duration:r=200,scale:e,slide:o,rotate:a,blur:u},l)=>{let f=typeof l==="function"?l():l;if(!(f instanceof Node))return f;if(t)return f.style.animation=`${t}-in ${r}ms`,f;let s=e||o||a||u,i=[e?"scale(0.95)":"",o?"translateY(-10px)":"",a?"rotate(-2deg)":""].filter(Boolean).join(" ");if(f.style.transition=`all ${r}ms ease`,f.style.opacity="0",s)f.style.transform=i;if(u)f.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(f.style.opacity="1",s)f.style.transform="none";if(u)f.style.filter="none"}),f},q=(t,r,e)=>{let o=R.createTextNode(""),a=n("div",{style:"display:contents"},[o]),u=new Map;return B(()=>(J(t)?t():t)||[],(l)=>{let f=new Map,s=[],i=l||[];for(let w=0;wr(b,w));else u.delete(E);f.set(E,d),s.push(d)}u.forEach((w)=>w.destroy());let y=o;for(let w=s.length-1;w>=0;w--){let b=s[w].container;if(b.nextSibling!==y)a.insertBefore(b,y);y=b}u=f}),a},U=(t)=>{let r=()=>window.location.hash.slice(1)||"/",e=S(r()),o=()=>e(r());window.addEventListener("hashchange",o),M(()=>window.removeEventListener("hashchange",o));let a=n("div",{class:"router-hook"}),u=null;return B([e],()=>{let l=e(),f=t.find((s)=>{let i=s.path.split("/").filter(Boolean),y=l.split("/").filter(Boolean);return i.length===y.length&&i.every((w,b)=>w[0]===":"||w===y[b])})||t.find((s)=>s.path==="*");if(f){u?.destroy();let s={};f.path.split("/").filter(Boolean).forEach((i,y)=>{if(i[0]===":")s[i.slice(1)]=l.split("/").filter(Boolean)[y]}),U.params(s),u=V(()=>J(f.component)?f.component(s):f.component),a.replaceChildren(u.container)}}),a};U.params=S({});U.to=(t)=>window.location.hash=t.replace(/^#?\/?/,"#/");U.back=()=>window.history.back();U.path=()=>window.location.hash.replace(/^#/,"")||"/";var Dt=({url:t,method:r="GET",headers:e={}})=>{let o=S(!1),a=S(null),u=S(null),l=null,f=null;return{run:async(s=null)=>{l?.abort(),clearTimeout(f),l=new AbortController,f=setTimeout(()=>l.abort(),1e4),o(!0),a(null);try{let i=s instanceof FormData,y=await fetch(t,{method:r,headers:i?e:{"Content-Type":"application/json",...e},body:i?s:s?JSON.stringify(s):void 0,signal:l.signal}),w=await y.text(),b=w?JSON.parse(w):null;if(!y.ok)throw Error(b?.message||y.statusText);return u(b),b}catch(i){if(i.name!=="AbortError")a(i.message);throw i}finally{o(!1),clearTimeout(f),l=null,f=null}},abort:()=>l?.abort(),loading:o,error:a,data:u}},et=(t,r)=>{let e=typeof r==="string"?R.querySelector(r):r;if(!e)return;if(tt.has(e))tt.get(e).destroy();let o=V(J(t)?t:()=>t);return e.replaceChildren(o.container),tt.set(e,o),o},Ht=Object.freeze({$:S,$$:wt,watch:B,h:n,when:P,each:q,fx:ct,router:U,req:Dt,mount:et,batch:It});if(typeof window<"u")Object.assign(window,Ht),"a abbr article aside audio b blockquote br button canvas caption cite code col colgroup datalist dd del details dfn dialog div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 header hr i iframe img input ins kbd label legend li main mark meter nav object ol optgroup option output p picture pre progress section select slot small source span strong sub summary sup svg table tbody td template textarea tfoot th thead time tr u ul video".split(" ").forEach((t)=>{window[t]=(r,e)=>n(t,r,e)});var T=(t)=>typeof t==="function"?t():t,x=(t,r="label")=>t&&typeof t==="object"?t[r]:t,_=(...t)=>t.filter(Boolean).join(" ").trim(),j=(t)=>typeof t==="function",dt=(t,r,e="label",o=String(r).toLowerCase())=>!r?T(t):T(t).filter((a)=>String(a&&typeof a==="object"?a[e]:a).toLowerCase().includes(o)),bt=(t)=>`${t}-${Math.random().toString(36).slice(2,9)}`,c=()=>document.activeElement?.blur(),Et=(t,r)=>{let e=$(-1);return{cursor:e,onKey:(a,u)=>{let l=T(t),f=e(),s=l.length;if(!s)return;let i=a.key;i==="ArrowDown"?(a.preventDefault(),r(!0),e(Math.min(f+1,s-1))):i==="ArrowUp"?(a.preventDefault(),e(Math.max(f-1,0))):i==="Enter"?f>=0&&(a.preventDefault(),u(l[f])):i==="Escape"&&(r(!1),e(-1))}}},ot=({name:t,duration:r=200,scale:e,slide:o,rotate:a,blur:u},l)=>{let f=typeof l==="function"?l():l;if(!(f instanceof Node))return f;if(t)return f.style.animation=`${t}-in ${r}ms`,f;let s=e||o||a||u,i=[e?"scale(0.95)":"",o?"translateY(-10px)":"",a?"rotate(-2deg)":""].filter(Boolean).join(" ");if(f.style.transition=`all ${r}ms ease`,f.style.opacity="0",s)f.style.transform=i;if(u)f.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(f.style.opacity="1",s)f.style.transform="none";if(u)f.style.filter="none"}),f};var Ft=(t)=>{let r=t.name||bt("acc");return q(t.items,(e)=>{return n("div",{class:_("collapse",t.class)},[n("input",{type:"radio",name:r,checked:e.open||void 0}),e.title?n("div",{class:_("collapse-title",`${e.classTitle??" font-semibold"}`)},e.title):null,e.content?n("div",{class:_("collapse-content text-sm",`${e.classContent??" font-semibold"}`)},e.content):null])})},vt=(t,r)=>n("div",{...t,class:_("alert",t.class)},r),ht=({items:t,value:r,onselect:e,placeholder:o="Buscar...",...a})=>{let u=S(T(r)||""),l=S(!1),f=S(()=>dt(t,u())),{cursor:s,onKey:i}=Et(f,l),y=(w)=>{let b=x(w),E=typeof w==="string"?w:w.value;if(u(b),j(r))r(E);e?.(w),l(!1)};return n("div",{class:"relative w-full"},[At({...a,type:"text",placeholder:o,value:u,left:n("span",{class:"icon-[lucide--search]"}),oninput:(w)=>{if(u(w.target.value),j(r))r(w.target.value);l(!0)},onfocus:()=>l(!0),onblur:()=>setTimeout(()=>{l(!1),s(-1)},150),onkeydown:(w)=>i(w,y)}),P(l,()=>ot({duration:200,slide:!0},n("ul",{class:"absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap"},[q(f,(w,b)=>n("li",{},[n("a",{class:()=>s()===b?"active bg-primary text-primary-content":"",onmousedown:(E)=>E.preventDefault(),onclick:()=>y(w),onmouseenter:()=>s(b)},x(w))]),(w,b)=>x(w)+b),()=>f().length===0?n("li",{class:"p-4 opacity-50 text-center"},"Sin resultados"):null])))])},pt=(t,r)=>n("span",{...t,class:_("badge",t.class)},r),Nt=(t,r)=>n("button",{...t,class:_("btn",t.class)},r),St=(t)=>{let r=S(new Date),e=S(null),o=S(0),a=S(0),u=new Date,l=`${u.getFullYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`,f=(d)=>`${d.getFullYear()}-${String(d.getMonth()+1).padStart(2,"0")}-${String(d.getDate()).padStart(2,"0")}`,s=()=>T(t.range)===!0,i=()=>T(t.value),y=(d)=>{let N=f(d),k=i();if(s())if(!k?.start||k.start&&k.end)t.onChange?.({start:N,end:null,...t.hour&&{startHour:o()}});else{let g=k.start,Q=N{let N=r();r(new Date(N.getFullYear(),N.getMonth()+d,1))},b=(d)=>{let N=r();r(new Date(N.getFullYear()+d,N.getMonth(),1))},E=({value:d,onChange:N})=>n("div",{class:"flex-1"},[n("div",{class:"flex gap-2 items-center"},[n("input",{type:"range",min:0,max:23,value:d,class:"range range-xs flex-1",oninput:(k)=>N(+k.target.value)}),n("span",{class:"text-sm font-mono min-w-[48px] text-center"},()=>String(T(d)).padStart(2,"0")+":00")])]);return n("div",{class:_("p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box w-80 select-none",t.class)},[n("div",{class:"flex justify-between items-center mb-4 gap-1"},[n("div",{class:"flex gap-0.5"},[n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>b(-1)},n("span",{class:"icon-[lucide--chevrons-left]"})),n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>w(-1)},n("span",{class:"icon-[lucide--chevron-left]"}))]),n("span",{class:"font-bold uppercase flex-1 text-center"},()=>r().toLocaleString("es-ES",{month:"short",year:"numeric"})),n("div",{class:"flex gap-0.5"},[n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>w(1)},n("span",{class:"icon-[lucide--chevron-right]"})),n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>b(1)},n("span",{class:"icon-[lucide--chevrons-right]"}))])]),n("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>e(null)},[...["L","M","X","J","V","S","D"].map((d)=>n("div",{class:"text-[10px] opacity-40 font-bold text-center"},d)),()=>{let d=r(),N=d.getFullYear(),k=d.getMonth(),g=new Date(N,k,1).getDay(),Q=g===0?6:g-1,zt=new Date(N,k+1,0).getDate(),D=[];for(let z=0;z{let W=i(),H=e(),Kt=typeof W==="string"?W.split("T")[0]===m:W?.start===m,Bt=W?.end===m,F=!1;if(s()&&W?.start){let v=W.start;if(!W.end&&H)F=m>v&&m<=H||m=H;else if(W.end)F=m>v&&ms()&&e(m),onclick:()=>y(ft)},z.toString()))}return D}]),t.hour?n("div",{class:"mt-3 pt-2 border-t border-base-300"},s()?n("div",{class:"flex gap-4"},[E({value:o,onChange:(d)=>o(d)}),E({value:a,onChange:(d)=>a(d)})]):E({value:o,onChange:(d)=>o(d)})):null,n("div",{class:_("flex gap-2 mt-3 pt-2",!t.hour&&"border-t border-base-300")},[n("button",{type:"button",class:"btn btn-xs flex-1",onclick:()=>c()},X("icon-[lucide--x]"))])])},tr=(t,r)=>n("div",{...t,class:_("card",t.class)},r),rr=(t,r)=>n("div",{...t,class:_("card-title",t.class)},r),nr=(t,r)=>n("div",{...t,class:_("card-body",t.class)},r),er=(t,r)=>n("div",{...t,class:_("card-actions",t.class)},r),or=(t,r)=>n("div",{...t,class:_("carousel",t.class)},r),lr=(t,r)=>n("div",{...t,class:_("carousel-item",t.class)},r),fr=(t,r)=>n("div",{...t,class:_("chat",t.class)},r),ar=(t,r)=>n("div",{...t,class:_("chat-bubble",t.class)},r),ur=(t,r)=>n("div",{...t,class:_("chat-footer",t.class)},r),sr=(t,r)=>n("div",{...t,class:_("chat-header",t.class)},r),ir=(t,r)=>n("div",{...t,class:_("chat-image avatar",t.class)},n("div",{class:"w-10 rounded-full"},typeof r==="string"?n("img",{src:r,alt:"avatar"}):r)),_r=(t)=>n("input",{...t,type:"checkbox",class:_("checkbox",t.class)}),yr=(t)=>{let r=()=>T(t.value)||"#000000";return Ct({},[jt({class:"btn"},[n("div",{class:"size-5 rounded-sm",style:()=>`background-color: ${r()}`}),t.label&&n("span",{},t.label)]),kt({class:"p-3 bg-base-100 rounded-box shadow-xl w-64"},Tt({value:t.value,onchange:(e)=>{j(t.value)?t.value(e):t.onchange?.(e),c()}}))])},Tt=(t)=>{let r=()=>T(t.value)||"#000000",e=["#000","#1A1A1A","#333","#4D4D4D","#666","#808080","#B3B3B3","#FFF","#450a0a","#7f1d1d","#991b1b","#b91c1c","#dc2626","#ef4444","#f87171","#fca5a5","#431407","#7c2d12","#9a3412","#c2410c","#ea580c","#f97316","#fb923c","#ffedd5","#713f12","#a16207","#ca8a04","#eab308","#facc15","#fde047","#fef08a","#fff9c4","#064e3b","#065f46","#059669","#10b981","#34d399","#4ade80","#84cc16","#d9f99d","#082f49","#075985","#0284c7","#0ea5e9","#38bdf8","#7dd3fc","#22d3ee","#cffafe","#1e1b4b","#312e81","#4338ca","#4f46e5","#6366f1","#818cf8","#a5b4fc","#e0e7ff","#2e1065","#4c1d95","#6d28d9","#7c3aed","#8b5cf6","#a855f7","#d946ef","#fae8ff"],o=(a)=>j(t.value)?t.value(a):t.onchange?.(a);return[n("div",{class:"grid grid-cols-8 gap-1"},e.map((a)=>n("button",{type:"button",style:`background-color: ${a}`,class:()=>{return`size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${r().toLowerCase()===a.toLowerCase()?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`},onclick:()=>o(a)}))),n("button",{type:"button",class:"btn btn-xs w-full",onclick:()=>c()},X("icon-[lucide--x]"))]},wr=(t)=>{let r=S(!1),e=S(""),o=()=>T(t.range)===!0;B(()=>{let u=T(t.value);if(!u)return e("");let l="";if(typeof u==="string")l=t.hour&&u.includes("T")?u.replace("T"," "):u;else if(u.start&&u.end){let f=t.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start,s=t.hour&&u.endHour!=null?`${u.end} ${String(u.endHour).padStart(2,"0")}:00`:u.end;l=`${f} - ${s}`}else if(u.start)l=`${t.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start}...`;e(l)});let a=(u)=>{if(j(t.value))t.value(u);else t.onChange?.(u);if(!o()||u?.end!=null)r(!1)};return n("div",{class:_("relative w-full",t.class)},[n("label",{class:"input input-bordered w-full",onclick:(u)=>{u.stopPropagation(),r(!r())}},[n("span",{class:"icon-[lucide--calendar]"}),n("input",{...t,type:"text",class:"grow",value:e,readonly:!0,placeholder:t.placeholder||(o()?"Seleccionar rango...":"Seleccionar fecha...")})]),P(r,()=>[n("div",{class:"fixed inset-0 z-[90]",onclick:()=>r(!1)}),n("div",{class:"absolute left-0 mt-2 z-[100]",onclick:(u)=>u.stopPropagation()},St({value:t.value,range:o(),hour:t.hour,onChange:a}))])])},dr=(t,r)=>div({...t,class:_("drawer",t.class)},r),br=(t)=>input({...t,type:"checkbox",class:"drawer-toggle",checked:()=>T(t.checked),onchange:(r)=>j(t.checked)&&t.checked(r.target.checked)}),Er=(t,r)=>div({...t,class:_("drawer-content",t.class)},r),Nr=(t,r)=>div({...t,class:_("drawer-side",t.class)},r),Sr=(t)=>label({...t,for:t.for,class:_("drawer-overlay",t.class)}),Tr=(t)=>n("div",{...t,class:_("divider",t.class)}),Ct=(t,r)=>n("div",{...t,class:_("dropdown",t.class)},r),jt=(t,r)=>n("div",{...t,tabindex:"0",role:"button",class:_("btn",t.class)},r),kt=(t,r)=>n("div",{...t,tabindex:"0",class:_("dropdown-content",t.class)},r),Cr=(t,r)=>n("div",{class:"fab"},[n("div",{tabindex:"0",role:"button",class:_("btn",t.class)},X(t.icon)),r]),jr=(t,r)=>n("fieldset",{class:_("fieldset",t.class)},[n("legend",{class:"fieldset-legend"},t.label),r]),kr=(t)=>{let r=S([]),e=S(!1),o=S(null),a=(t.max||2)*1024*1024,u=(f)=>{let s=Array.from(f);if(o(null),s.some((y)=>y.size>a)){o(`Máx ${t.max||2}MB`);return}let i=[...r(),...s];if(r(i),j(t.onselect))t.onselect(i);else if(j(t.value))t.value(i)},l=(f)=>{let s=r().filter((i,y)=>y!==f);if(r(s),j(t.onselect))t.onselect(s);else if(j(t.value))t.value(s)};return n("div",{class:_("fieldset w-full p-0",t.class)},[n("label",{class:()=>`relative flex items-center justify-between w-full h-12 px-4 border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200 ${e()?"border-primary bg-primary/10":"border-base-content/20 bg-base-100 hover:bg-base-200"}`,ondragover:(f)=>{f.preventDefault(),e(!0)},ondragleave:()=>e(!1),ondrop:(f)=>{f.preventDefault(),e(!1),u(f.dataTransfer.files)}},[n("div",{class:"flex items-center gap-3 w-full"},[n("span",{class:"icon-[lucide--upload]"}),n("span",{class:"text-sm opacity-70 truncate grow text-left"},"Arrastra o selecciona archivos..."),n("span",{class:"text-[10px] opacity-40 shrink-0"},`Máx ${t.max||2}MB`)]),n("input",{type:"file",multiple:!0,accept:t.accept||"*",class:"hidden",onchange:(f)=>u(f.target.files)})]),()=>o()&&n("span",{class:"text-[10px] text-error mt-1 px-1 font-medium"},o()),P(()=>r().length>0,()=>n("ul",{class:"mt-2 space-y-1"},q(r,(f,s)=>n("li",{class:"flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300"},[n("div",{class:"flex items-center gap-2 truncate"},[n("span",{class:"opacity-50"},"\uD83D\uDCC4"),n("span",{class:"truncate font-medium max-w-[200px]"},f.name),n("span",{class:"text-[9px] opacity-40"},`(${(f.size/1024).toFixed(0)} KB)`)]),n("button",{type:"button",class:"btn btn-ghost btn-xs btn-circle",onclick:(i)=>{i.preventDefault(),l(s)}},n("span",{class:"icon-[lucide--x]"}))]))))])},X=(t)=>n("span",{class:t.startsWith("icon-")?t:""},t.startsWith("icon-")?null:t),Ar=(t,r)=>n("div",{...t,class:_("indicator",t.class)},[t.value&&n("span",{class:_("indicator-item badge",t.class)},t.value),r]),At=(t)=>{let{label:r,icon:e,float:o,placeholder:a,value:u,left:l,right:f,rule:s,hint:i,content:y,...w}=t,b=S(!1),E=S(!1),d=t.type==="password",N=s??null,k=()=>d?T(b)?"text":"password":t.type||"text";return n("div",{class:"input-container",onfocusin:()=>E(!0),onfocusout:(g)=>{if(!g.currentTarget.contains(g.relatedTarget))E(!1)}},[n("label",{class:o?"floating-label":""},[o?n("span",{},r):null,n("label",{pattern:N,class:()=>_("input validator",t.class)},[r&&!o?n("span",{class:"label"},r):null,l??null,n("input",{...w,type:k,class:"grow",pattern:N,placeholder:a||r||" ",value:u}),f??null,d?$t({class:"ml-2"},[gt({value:b,class:"swap-rotate"}),mt({},X("icon-[lucide--eye]")),Lt({},X("icon-[lucide--eye-off]"))]):null]),i?n("div",{class:"validator-hint"},i):null,P(E,()=>ot({duration:300,slide:!0},n("div",{class:"input-content",onmousedown:(g)=>g.preventDefault()},[j(y)?y(E):y])))])])},$r=(t,r)=>n("kbd",{...t,class:_("kbd",t.class)},r),gr=(t,r)=>n("ul",{...t,class:_("list",t.class)},r),mr=(t)=>()=>(T(t.items)||[]).map((r,e)=>n("li",{class:_("list-row",t.class,r?.class)},typeof t.render==="function"?t.render(r,e):r)),Lr=(t,r)=>n("span",{...t,class:_("loading loading-spinner",t.class)},r),Jr=(t)=>{if(t.children!==void 0)return n("ul",{class:_("menu",t.class),...t},t.children);let{items:r}=t,e=(o)=>o.children?n("li",{},n("details",{open:o.open||void 0},[n("summary",{},x(o)),n("ul",{},q(()=>T(o.children)||[],e))])):n("li",{},n("a",{href:o.href,onclick:o.onclick?(a)=>{if(!o.href)a.preventDefault();o.onclick(a)}:null},x(o)));return n("ul",{class:_("menu",t.class)},q(()=>T(r)||[],e))},Rr=(t)=>{let r=null;B(()=>{let o=T(t.open);if(!r)return;o?r.showModal():r.close()});let e=()=>j(t.open)&&t.open(!1);return n("dialog",{...t,ref:(o)=>r=o,class:_("modal",t.class),onclose:e,oncancel:e},[n("div",{class:"modal-box"},[t.title&&n("h3",{class:"text-lg font-bold"},t.title),t.children,n("div",{class:"modal-action"},[t.actions||Nt({class:"btn",onclick:e},"Cerrar")])]),n("form",{method:"dialog",class:"modal-backdrop"},[n("button",{},"close")])])},Wr=(t,r)=>n("div",{...t,class:_("navbar",t.class)},r),xr=(t)=>n("progress",{...t,class:_("progress",t.class)}),qr=(t,r)=>n("div",{...t,class:_("radial-progress",t.class),style:`--value:${t.value??0};${t.style??""}`,role:"progressbar","aria-valuenow":t.value??0},r??`${t.value??0}%`),zr=(t)=>n("input",{...t,type:"radio",class:_("radio",t.class)}),Kr=(t)=>n("input",{...t,type:"range",class:_("range",t.class)}),Br=(t,r)=>n("div",{...t,class:"rating"},r),Gr=(t)=>[...Array(t.count)].map((r,e)=>n("input",{class:_("mask",t.class),name:t.name,type:"radio",checked:()=>T(t.value)===e,onchange:()=>j(t.value)?t.value(e):t.onchange?.(e)})),Mr=(t,r)=>{if(r!==void 0)return n("select",{class:_("select",t.class),...t},r);let{label:e,float:o,placeholder:a,placeholderDisabled:u=!0,value:l,left:f,right:s,hint:i,items:y,keyFn:w,...b}=t,E=()=>{let d=T(y)||[];return[...a?[{disabled:u,label:a,value:""}]:[],...d]};return n("label",{class:o?"floating-label":""},[o?n("span",{},e):null,n("label",{class:_("select",b.class)},[!o&&e?n("span",{class:"label"},e):null,f??null,n("select",{value:()=>T(l),onchange:(d)=>j(l)?l(d.target.value):b.onchange?.(d)},q(E,(d)=>{let N=x(d,d.value!==void 0?"value":void 0),k=x(d,"label");return n("option",{value:N,disabled:d.disabled||void 0},k)})),s??null]),i?n("div",{class:"validator-hint"},i):null])},Pr=(t)=>n("div",{...t,class:_("skeleton",t.class)}),Ur=(t)=>n("span",{...t,class:_("skeleton skeleton-text",t.class)}),Xr=(t,r)=>n("div",{...t,class:_("stack",t.class)},r),Qr=(t,r)=>n("ul",{...t,class:_("steps",t.class)},r),Yr=(t,r)=>n("li",{...t,class:_("step",t.class),"data-content":t.dataContent},r),$t=(t,r)=>n("label",{...t,class:_("swap",t.class)},r),gt=(t)=>n("input",{type:"checkbox",checked:()=>T(t.value),onchange:(r)=>j(t.value)&&t.value(r.target.checked),class:t.class}),mt=(t,r)=>n("div",{...t,class:_("swap-on",t.class)},r),Lt=(t,r)=>n("div",{...t,class:_("swap-off",t.class)},r),Zr=(t,r)=>n("table",{...t,class:_("table",t.class)},r),Ir=({items:t,columns:r=[],header:e=!0})=>{let o=e!==!1&&r.some((u)=>u.label)?n("thead",{},n("tr",{},r.map((u)=>n("th",{class:u.class},u.label)))):null,a=n("tbody",{},()=>{return(T(t)||[]).map((l,f)=>n("tr",{},r.map((s)=>{let i=s.render?s.render(l,f):l[s.key];return n("td",{class:s.class},i)})))});return[o,a].filter(Boolean)},Or=(t,r)=>{if(!t.items){let{class:i,...y}=t;return n("div",{...y,class:_("tabs",i)},r)}let{items:e,activeIndex:o,onClose:a,class:u,...l}=t,f=(i)=>j(i)?i():i,s=a||(j(e)?(i,y)=>{let b=f(e).filter((E,d)=>d!==i);if(e(b),o()>=b.length)o(Math.max(0,b.length-1))}:null);return n("div",{...l,class:_("tabs",u)},()=>{return(f(e)||[]).flatMap((y,w)=>{let b=()=>o()===w,E=n("button",{class:()=>`tab ${b()?"tab-active":""} ${y.class||""}`,onclick:(N)=>{N.preventDefault(),o(w),y.onclick?.(N)}},[x(y),y.closable?n("span",{class:"ml-1 inline-flex items-center justify-center w-4 h-4 rounded-full hover:bg-base-300 text-base-content/60 hover:text-base-content cursor-pointer",onclick:(N)=>{N.stopPropagation(),s?.(w,y)}},n("span",{class:"icon-[lucide--x] w-3 h-3"})):null]),d=n("div",{class:"tab-content bg-base-100 border-base-300 p-6",style:()=>`display: ${b()?"block":"none"};`},j(y.content)?y.content():y.content);return[E,d]})})},Vr=(t)=>n("textarea",{...t,class:_("textarea",t.class)}),cr=(t,r)=>n("span",{...t,class:_("text-rotate",t.class)},r),Dr=(t,r)=>n("ul",{...t,class:_("timeline",t.class)},r),Hr=(t,r="alert-success",e=3500)=>{let o=document.getElementById("sigpro-toast-container");if(!o)o=n("div",{id:"sigpro-toast-container",class:"fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none"}),document.body.appendChild(o);let a=n("div",{style:"display: contents"});o.appendChild(a);let u,l,f,i=et(()=>{let y=S(!1),w=S(!1);u=()=>{if(w())return;clearTimeout(l),clearTimeout(f),w(!0),setTimeout(()=>{if(i.destroy(),a.remove(),!o.hasChildNodes())o.remove()},300)},f=setTimeout(()=>y(!0),0);let b=typeof t==="function"?T(t):t,E=typeof b==="string"?n("span",{},b):b;return n("div",{class:()=>{if(w())return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-full opacity-0 pointer-events-auto`;if(y())return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-0 opacity-100 pointer-events-auto`;return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto`}},[E,n("button",{class:"btn btn-xs btn-circle btn-ghost",onclick:u},n("span",{class:"icon-[lucide--x]"}))])},a);if(e>0)l=setTimeout(u,e);return u},Fr=(t)=>n("input",{...t,type:"checkbox",class:_("toggle",t.class)}),vr=(t,r)=>n("div",{...t,class:_("tooltip",t.class),"data-tip":t.tip},r);var hr={es:{close:"Cerrar",confirm:"Confirmar",cancel:"Cancelar",search:"Buscar...",loading:"Cargando...",nodata:"Sin datos"},en:{close:"Close",confirm:"Confirm",cancel:"Cancel",search:"Search...",loading:"Loading...",nodata:"No data"}},Jt=S("es"),Rt=(t)=>Jt(t),Wt=(t)=>()=>hr[Jt()][t]||t;var xt={...lt},qt={Locale:Rt,tt:Wt};if(typeof window<"u")Object.entries({...xt,...qt}).forEach(([t,r])=>{Object.defineProperty(window,t,{value:r,writable:!1,configurable:!0,enumerable:!0})}),console.log("SigProUI DX installed");})(); diff --git a/docs/sigpro-ui.min.css b/docs/sigpro-ui.min.css index 81e87c8..d475ed5 100644 --- a/docs/sigpro-ui.min.css +++ b/docs/sigpro-ui.min.css @@ -1,2 +1,2 @@ /*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */ -@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-7xl:4.5rem;--text-7xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-3xl:1.5rem;--drop-shadow-2xl:0 25px 25px #00000026;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");scrollbar-color:currentColor #0000}@supports (color:color-mix(in lab, red, red)){:root{scrollbar-color:color-mix(in oklch, currentColor 35%, #0000) #0000}}@property --radialprogress{syntax:"";inherits:true;initial-value:0%}:root:not(span){overflow:var(--page-overflow)}:root{background:var(--page-scroll-bg,var(--root-bg));--page-scroll-bg-on:linear-gradient(var(--root-bg,#0000), var(--root-bg,#0000)) var(--root-bg,#0000)}@supports (color:color-mix(in lab, red, red)){:root{--page-scroll-bg-on:linear-gradient(var(--root-bg,#0000), var(--root-bg,#0000)) color-mix(in srgb, var(--root-bg,#0000), oklch(0% 0 0) calc(var(--page-has-backdrop,0) * 40%))}}:root{--page-scroll-transition-on:background-color .3s ease-out;transition:var(--page-scroll-transition);scrollbar-gutter:var(--page-scroll-gutter,unset);scrollbar-gutter:if(style(--page-has-scroll: 1): var(--page-scroll-gutter,unset) ; else: unset)}@keyframes set-page-has-scroll{0%,to{--page-has-scroll:1}}:root,[data-theme]{background:var(--page-scroll-bg,var(--root-bg));color:var(--color-base-content)}:where(:root,[data-theme]){--root-bg:var(--color-base-100)}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(92% 0 0);--color-base-content:oklch(25% .006 285);--color-primary:oklch(25% .006 285);--color-primary-content:oklch(98% 0 0);--color-secondary:oklch(55% .046 257.417);--color-secondary-content:oklch(98% 0 0);--color-accent:oklch(96% 0 0);--color-accent-content:oklch(25% .006 285);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(62% .17 163);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .18 84);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(60% .25 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(15% .005 285.823);--color-base-200:oklch(20% .005 285.823);--color-base-300:oklch(30% .005 285.823);--color-base-content:oklch(92% .004 286.32);--color-primary:oklch(98% 0 0);--color-primary-content:oklch(15% 0 0);--color-secondary:oklch(65% .046 257.417);--color-secondary-content:oklch(15% .005 285.823);--color-accent:oklch(25% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(92% .004 286.32);--color-neutral-content:oklch(14% .005 285.823);--color-info:oklch(70% .1 230);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(65% .15 160);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(85% .15 90);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(55% .2 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(15% .005 285.823);--color-base-200:oklch(20% .005 285.823);--color-base-300:oklch(30% .005 285.823);--color-base-content:oklch(92% .004 286.32);--color-primary:oklch(98% 0 0);--color-primary-content:oklch(15% 0 0);--color-secondary:oklch(65% .046 257.417);--color-secondary-content:oklch(15% .005 285.823);--color-accent:oklch(25% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(92% .004 286.32);--color-neutral-content:oklch(14% .005 285.823);--color-info:oklch(70% .1 230);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(65% .15 160);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(85% .15 90);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(55% .2 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}@layer components;@layer utilities{@layer daisyui.l1.l2.l3{.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:visibility .3s allow-discrete, background-color .3s ease-out, opacity .1s ease-out;overscroll-behavior:contain;z-index:999;scrollbar-gutter:auto;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:clip}.modal::backdrop{display:none}:where(.drawer-side){overflow:hidden}.drawer-side{pointer-events:none;visibility:hidden;z-index:10;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete, visibility .3s ease-out .1s allow-discrete;inset-inline-start:0;background-color:#0000;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0}.drawer-side>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}.drawer-side>*{grid-row-start:1;grid-column-start:1}.drawer-side>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out,width .2s ease-out;translate:-100%}[dir=rtl] :is(.drawer-side>:not(.drawer-overlay)){translate:100%}.fab{pointer-events:none;z-index:999;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;inset-inline-end:1rem;flex-direction:column-reverse;align-items:flex-end;gap:.5rem;display:flex;position:fixed;bottom:1rem}.fab>*{pointer-events:auto;align-items:center;gap:.5rem;display:flex}.fab>:hover,.fab>:has(:focus-visible){z-index:1}.fab>[tabindex]:first-child{transition-property:opacity,visibility,rotate;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:grid;position:relative}.fab .fab-close,.fab .fab-main-action{inset-inline-end:0;position:absolute;bottom:0}:is(.fab:focus-within:has(.fab-close),.fab:focus-within:has(.fab-main-action))>[tabindex]{opacity:0;rotate:90deg}.fab:focus-within>[tabindex]:first-child{pointer-events:none}.fab:focus-within>:nth-child(n+2){visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1}.fab>:nth-child(n+2){visibility:hidden;--tw-scale-x:80%;--tw-scale-y:80%;--tw-scale-z:80%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:0;transition-property:opacity,scale,visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.fab>:nth-child(n+2).fab-main-action,.fab>:nth-child(n+2).fab-close{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.fab>:nth-child(3){transition-delay:30ms}.fab>:nth-child(4){transition-delay:60ms}.fab>:nth-child(5){transition-delay:90ms}.fab>:nth-child(6){transition-delay:.12s}.drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed}:where(.drawer-toggle:checked~.drawer-side){scrollbar-color:currentColor oklch(0 0 0 / calc(var(--page-has-backdrop,0) * .4))}@supports (color:color-mix(in lab, red, red)){:where(.drawer-toggle:checked~.drawer-side){scrollbar-color:color-mix(in oklch, currentColor 35%, #0000) oklch(0 0 0 / calc(var(--page-has-backdrop,0) * .4))}}:where(:root:has(.drawer-toggle:checked)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}.tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative}.tooltip>.tooltip-content,.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);display:block;position:absolute}@media (prefers-reduced-motion:no-preference){.tooltip>.tooltip-content,.tooltip[data-tip]:before,.tooltip:after{transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms}}:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{opacity:1;--tt-pos:0rem}@media (prefers-reduced-motion:no-preference){:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}.tab{cursor:pointer;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;display:inline-flex;position:relative}@media (hover:hover){.tab:hover{color:var(--color-base-content)}}.tab{--tab-p:.75rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));--tab-radius-limit:min(var(--radius-field), var(--tab-radius-min));--tab-radius-grad:#0000 calc(69% - var(--border)), var(--tab-border-color) calc(69% - var(--border) + .25px), var(--tab-border-color) 69%, var(--tab-bg) calc(69% + .25px);order:var(--tab-order);height:var(--tab-height);padding-inline:var(--tab-p);border-color:#0000;font-size:.875rem}.tab:is(input[type=radio]){min-width:fit-content}.tab:is(input[type=radio]):after{--tw-content:attr(aria-label);content:var(--tw-content)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]))+.tab-content{display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:color-mix(in oklab, var(--color-base-content) 50%, transparent)}}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.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(--radius-field);text-align:start;text-wrap:balance;-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;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu details{interpolate-size:allow-keywords;overflow:hidden}.menu details::details-content{block-size:0}@media (prefers-reduced-motion:no-preference){.menu details::details-content{transition-behavior:allow-discrete;transition-property:block-size,content-visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.menu details[open]::details-content{block-size:auto}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{color:var(--color-base-content);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01)}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{outline-offset:2px;outline:2px solid #0000}}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise)}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth) * 3px) -2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li).menu-disabled{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.floating-label{display:block;position:relative}.floating-label input{display:block}.floating-label input::placeholder,.floating-label textarea::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}.floating-label>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem) * 10 / 2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}:is(.floating-label:focus-within,.floating-label:not(:has(input:placeholder-shown,textarea:placeholder-shown))) ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}:is(.floating-label:focus-within,.floating-label:not(:has(input:placeholder-shown,textarea:placeholder-shown)))>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}.floating-label:has(:disabled,[disabled])>span{opacity:0}.floating-label:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem) * 6 / 2);font-size:.6875rem}.floating-label:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem) * 8 / 2);font-size:.75rem}.floating-label:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem) * 10 / 2);font-size:.875rem}.floating-label:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem) * 12 / 2);font-size:1.125rem}.floating-label:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem) * 14 / 2);font-size:1.375rem}.dropdown{position-area:var(--anchor-v,bottom) var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(:has(~[class*=dropdown-content])):focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.dropdown>:not(:has(~[class*=dropdown-content])):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown.dropdown-close .dropdown-content,.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content,.dropdown.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible)~.dropdown-content{transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover],.dropdown .dropdown-content{z-index:999}@media (prefers-reduced-motion:no-preference){.dropdown[popover],.dropdown .dropdown-content{transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}}@starting-style{.dropdown[popover],.dropdown .dropdown-content{opacity:0;scale:.95}}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within) .dropdown-content,.dropdown:not(.dropdown-close).dropdown-hover:hover .dropdown-content{opacity:1;scale:1}.dropdown:is(details) summary::-webkit-details-marker{display:none}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-close{transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}:is(.dropdown[popover].dropdown-close,.dropdown[popover]:not(.dropdown-open,:popover-open)){transform-origin:top;opacity:0;display:none;scale:.95}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0 / calc(var(--depth) * .15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);--size:calc(var(--size-field,.25rem) * 10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:var(--btn-bg);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.btn{--btn-border:color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%))}}.btn{--btn-shadow:0 3px 2px -2px var(--btn-bg), 0 4px 3px -2px var(--btn-bg)}@supports (color:color-mix(in lab, red, red)){.btn{--btn-shadow:0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000), 0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000)}}.btn{--btn-noise:var(--fx-noise)}@media (hover:hover){.btn:hover{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn:hover{--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}}.btn:focus-visible,.btn:has(:focus-visible){isolation:isolate;outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:var(--btn-color,var(--color-base-200));translate:0 .5px}@supports (color:color-mix(in lab, red, red)){.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 5%)}}.btn:active:not(.btn-active){--btn-border:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn:active:not(.btn-active){--btn-border:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}.btn:active:not(.btn-active){--btn-shadow:0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0)}.btn:is(input[type=checkbox],input[type=radio]){appearance:none}.btn:is(input[type=checkbox],input[type=radio])[aria-label]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.btn:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem) * 6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.collapse{transition:grid-template-rows .2s}}.collapse>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;z-index:1;grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close)),.collapse:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){content-visibility:visible;min-height:fit-content}@supports not (content-visibility:visible){.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible}}.collapse:focus-visible,.collapse:has(>input:is([type=checkbox],[type=radio]):focus-visible),.collapse:has(summary:focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}.collapse:not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-close)>.collapse-title{cursor:pointer}:is(.collapse[tabindex]:focus:not(.collapse-close,.collapse[open]),.collapse[tabindex]:focus-within:not(.collapse-close,.collapse[open]))>.collapse-title{cursor:unset}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem}.collapse:is(details){width:100%}@media (prefers-reduced-motion:no-preference){.collapse:is(details)::details-content{transition:content-visibility .2s allow-discrete, visibility .2s allow-discrete, min-height .2s ease-out allow-discrete, padding .1s ease-out 20ms, background-color .2s ease-out, height .2s;interpolate-size:allow-keywords;height:0}.collapse:is(details):where([open])::details-content{height:auto}}.collapse:is(details) summary{display:block;position:relative}.collapse:is(details) summary::-webkit-details-marker{display:none}.collapse:is(details)>.collapse-content{content-visibility:visible}.collapse:is(details) summary{outline:none}.collapse-content{content-visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem}@supports not (content-visibility:hidden){.collapse-content{visibility:hidden}}@media (prefers-reduced-motion:no-preference){.collapse-content{transition:content-visibility .2s allow-discrete, visibility .2s allow-discrete, min-height .2s ease-out allow-discrete, padding .1s ease-out 20ms, background-color .2s ease-out}}.validator-hint{visibility:hidden;margin-top:.5rem;font-size:.75rem}.validator:user-valid{--input-color:var(--color-success)}.validator:user-valid:focus{--input-color:var(--color-success)}.validator:user-valid:checked{--input-color:var(--color-success)}.validator:user-valid[aria-checked=true]{--input-color:var(--color-success)}.validator:user-valid:focus-within{--input-color:var(--color-success)}.validator:has(:user-valid){--input-color:var(--color-success)}.validator:has(:user-valid):focus{--input-color:var(--color-success)}.validator:has(:user-valid):checked{--input-color:var(--color-success)}.validator:has(:user-valid)[aria-checked=true]{--input-color:var(--color-success)}.validator:has(:user-valid):focus-within{--input-color:var(--color-success)}.validator:user-invalid{--input-color:var(--color-error)}.validator:user-invalid:focus{--input-color:var(--color-error)}.validator:user-invalid:checked{--input-color:var(--color-error)}.validator:user-invalid[aria-checked=true]{--input-color:var(--color-error)}.validator:user-invalid:focus-within{--input-color:var(--color-error)}.validator:user-invalid~.validator-hint{visibility:visible;color:var(--color-error)}.validator:has(:user-invalid){--input-color:var(--color-error)}.validator:has(:user-invalid):focus{--input-color:var(--color-error)}.validator:has(:user-invalid):checked{--input-color:var(--color-error)}.validator:has(:user-invalid)[aria-checked=true]{--input-color:var(--color-error)}.validator:has(:user-invalid):focus-within{--input-color:var(--color-error)}.validator:has(:user-invalid)~.validator-hint{visibility:visible;color:var(--color-error)}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))),:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):focus,:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):checked,:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))[aria-checked=true],:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):focus-within{--input-color:var(--color-error)}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))~.validator-hint{visibility:visible;color:var(--color-error)}.radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size) / 10);--radialprogress:calc(var(--value) * 1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative}.radial-progress:before{content:"";background:radial-gradient(farthest-side, currentColor 98%, #0000) top/var(--thickness) var(--thickness) no-repeat, conic-gradient(currentColor var(--radialprogress), #0000 0);webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));-webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));-webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}.radial-progress:after{content:"";inset:calc(50% - var(--thickness) / 2);transform:rotate(calc(var(--value) * 3.6deg - 90deg)) translate(calc(var(--size) / 2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}.list{flex-direction:column;font-size:.875rem;display:flex}.list .list-row{--list-grid-cols:minmax(0, auto) 1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border) solid;inset-inline:var(--radius-box);border-color:var(--color-base-content);position:absolute;bottom:0}@supports (color:color-mix(in lab, red, red)){:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{border-color:color-mix(in oklab, var(--color-base-content) 5%, transparent)}}.toggle{border:var(--border) solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p), var(--radius-selector-max)) + min(var(--border), var(--radius-selector-max)));padding:var(--toggle-p);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;display:inline-grid;position:relative;box-shadow:inset 0 1px}@supports (color:color-mix(in lab, red, red)){.toggle{box-shadow:0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000) inset}}.toggle{--input-color:var(--color-base-content);transition:color .3s,grid-template-columns .2s}@supports (color:color-mix(in lab, red, red)){.toggle{--input-color:color-mix(in oklab, var(--color-base-content) 50%, #0000)}}.toggle{--toggle-p:calc(var(--size) * .125);--size:calc(var(--size-selector,.25rem) * 6);width:calc((var(--size) * 2) - (var(--border) + var(--toggle-p)) * 2);height:var(--size)}.toggle>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:0deg}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:0deg}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);width:100%;height:100%;box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor;background-color:currentColor;grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@supports (color:color-mix(in lab, red, red)){.toggle:before{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000)}}.toggle:before{background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise)}@media (forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px * -1);outline-width:1px}}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border) solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border) solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem), .875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.input{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.input{--size:calc(var(--size-field,.25rem) * 10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.input{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.input:where(input){display:inline-flex}.input :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.input :where(input):focus,.input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.input :where(input[type=url]),.input :where(input[type=email]){direction:ltr}.input :where(input[type=date]){display:inline-flex}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.input:focus,.input:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.input:focus,.input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media (pointer:coarse){@supports (-webkit-touch-callout:none){.input:focus,.input:focus-within{--font-size:1rem}}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{box-shadow:none}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;appearance:none;display:inline-flex}.input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}.indicator{width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%) var(--indicator-y,-50%);position:absolute}.table{border-collapse:separate;--tw-border-spacing-x:calc(.25rem * 0);--tw-border-spacing-y:calc(.25rem * 0);width:100%;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);border-radius:var(--radius-box);text-align:left;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media (hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(thead,tfoot){color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.table :where(thead,tfoot){font-size:.875rem;font-weight:600}.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000)}}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000)}}.steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden}.steps .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid}.steps .step:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);content:"";border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}.steps .step>.step-icon,.steps .step:not(:has(.step-icon)):after{--tw-content:counter(step);content:var(--tw-content);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}.steps .step:first-child:before{--tw-content:none;content:var(--tw-content)}.steps .step[data-content]:after{--tw-content:attr(data-content);content:var(--tw-content)}.range{appearance:none;webkit-appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem) * 6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:currentColor}@supports (color:color-mix(in lab, red, red)){.range{--range-bg:color-mix(in oklab, currentColor 10%, #0000)}}.range{cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden}[dir=rtl] .range{--range-dir:-1}.range:focus{outline:none}.range:focus-visible{outline-offset:2px;outline:2px solid}.range::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size) * .5)}@media (forced-colors:active){.range::-webkit-slider-runnable-track{border:1px solid}.range::-moz-range-track{border:1px solid}}.range::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));background-color:var(--range-thumb);height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p) solid;appearance:none;webkit-appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill));position:relative;top:50%;transform:translateY(-50%)}@supports (color:color-mix(in lab, red, red)){.range::-webkit-slider-thumb{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill))}}.range::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size) * .5)}.range::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p) solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill));background-color:currentColor;position:relative;top:50%}@supports (color:color-mix(in lab, red, red)){.range::-moz-range-thumb{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill))}}.range:disabled{cursor:not-allowed;opacity:.3}.chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative}.chat-bubble:before{background-color:inherit;content:"";width:.75rem;height:.75rem;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-chat);-webkit-mask-image:var(--mask-chat);mask-image:var(--mask-chat);position:absolute;bottom:0;-webkit-mask-position:0 -1px;mask-position:0 -1px;-webkit-mask-size:.8125rem;mask-size:.8125rem}.select{border:var(--border) solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;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-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:.75rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.select{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.select{border-color:var(--input-color);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.select{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.select{--size:calc(var(--size-field,.25rem) * 10)}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}[dir=rtl] .select::picker(select){translate:.5rem}[dir=rtl] .select select::picker(select){translate:.5rem}.select[multiple]{background-image:none;height:auto;padding-block:.75rem;padding-inline-end:.75rem;overflow:auto}.select select{appearance:none;width:calc(100% + 2.75rem);height:calc(100% - calc(var(--border) * 2));background:inherit;border-radius:inherit;border-style:none;align-items:center;margin-inline:-.75rem -1.75rem;padding-inline:.75rem 1.75rem}.select select:focus,.select select:focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.select select:focus,.select select:focus-within{outline-offset:2px;outline:2px solid #0000}}.select select:not(:last-child){background-image:none;margin-inline-end:-1.375rem}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.select:focus,.select:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.select:focus,.select:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}@supports (appearance:base-select){.select,.select select{appearance:base-select}:is(.select,.select select)::picker(select){appearance:base-select}}:is(.select,.select select)::picker(select){color:inherit;border:var(--border) solid var(--color-base-200);border-radius:var(--radius-box);background-color:inherit;max-height:min(24rem,70dvh);box-shadow:0 2px calc(var(--depth) * 3px) -2px oklch(0% 0 0/.2);box-shadow:0 20px 25px -5px rgb(0 0 0/calc(var(--depth) * .1)), 0 8px 10px -6px rgb(0 0 0/calc(var(--depth) * .1));margin-block:.5rem;margin-inline:.5rem;padding:.5rem;translate:-.5rem}:is(.select,.select select)::picker-icon{display:none}:is(.select,.select select) optgroup{padding-top:.5em}:is(.select,.select select) optgroup option:first-child{margin-top:.5em}:is(.select,.select select) option{border-radius:var(--radius-field);white-space:normal;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #0000}}:is(.select,.select select) option:not(:disabled):active{background-color:var(--color-neutral);color:var(--color-neutral-content);box-shadow:0 2px calc(var(--depth) * 3px) -2px var(--color-neutral)}.timeline{display:flex;position:relative}.timeline>li{grid-template-rows:var(--timeline-row-start,minmax(0, 1fr)) auto var(--timeline-row-end,minmax(0, 1fr));grid-template-columns:var(--timeline-col-start,minmax(0, 1fr)) auto var(--timeline-col-end,minmax(0, 1fr));flex-shrink:0;align-items:center;display:grid;position:relative}.timeline>li>hr{border:none;width:100%}.timeline>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline>li>hr:last-child{grid-area:2/3/auto/none}@media print{.timeline>li>hr{border:.1px solid var(--color-base-300)}}.timeline :where(hr){background-color:var(--color-base-300);height:.25rem}.timeline:has(.timeline-middle hr):first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline:has(.timeline-middle hr):last-child,.timeline:not(:has(.timeline-middle)) :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline:not(:has(.timeline-middle)) :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.swap{cursor:pointer;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;place-content:center;display:inline-grid;position:relative}.swap input{appearance:none;border:none}.swap>*{grid-row-start:1;grid-column-start:1}@media (prefers-reduced-motion:no-preference){.swap>*{transition-property:transform,rotate,opacity;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.swap .swap-on,.swap .swap-indeterminate,.swap input:indeterminate~.swap-on,.swap input:is(:checked,:indeterminate)~.swap-off{opacity:0}.swap input:checked~.swap-on,.swap input:indeterminate~.swap-indeterminate{opacity:1;backface-visibility:visible}.collapse-title{grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.avatar{vertical-align:middle;display:inline-flex;position:relative}.avatar>div{aspect-ratio:1;display:block;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.checkbox{border:var(--border) solid var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.checkbox{border:var(--border) solid var(--input-color,color-mix(in oklab, var(--color-base-content) 20%, #0000))}}.checkbox{cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 0 #0000 inset, 0 0 #0000;--size:calc(var(--size-selector,.25rem) * 6);width:var(--size);height:var(--size);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * .1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:0deg}}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:0deg}}.checkbox:indeterminate{background-color:var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.checkbox:indeterminate{background-color:var(--input-color,color-mix(in oklab, var(--color-base-content) 20%, #0000))}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:0deg}.radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border) solid var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative}@supports (color:color-mix(in lab, red, red)){.radio{border:var(--border) solid var(--input-color,color-mix(in srgb, currentColor 20%, #0000))}}.radio{box-shadow:0 1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset;--size:calc(var(--size-selector,.25rem) * 6);width:var(--size);height:var(--size);color:var(--input-color,currentColor)}.radio:before{--tw-content:"";content:var(--tw-content);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}.radio:focus-visible{outline:2px solid}.radio:checked,.radio[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor}@media (prefers-reduced-motion:no-preference){.radio:checked,.radio[aria-checked=true]{animation:.2s ease-out radio}}:is(.radio:checked,.radio[aria-checked=true]):before{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * .1));background-color:currentColor}@media (forced-colors:active){:is(.radio:checked,.radio[aria-checked=true]):before{outline-style:var(--tw-outline-style);outline-offset:calc(1px * -1);outline-width:1px}}@media print{:is(.radio:checked,.radio[aria-checked=true]):before{outline-offset:-1rem;outline:.25rem solid}}.rating{vertical-align:middle;display:inline-flex;position:relative}.rating input{appearance:none;border:none}.rating :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem}@media (prefers-reduced-motion:no-preference){.rating :where(*){animation:.25s ease-out rating}}.rating :where(*):is(input){cursor:pointer}.rating .rating-hidden{background-color:#0000;width:.5rem}.rating input[type=radio]:checked{background-image:none}.rating :checked,.rating [aria-checked=true],.rating [aria-current=true],.rating :has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}.rating :focus-visible{scale:1.1}@media (prefers-reduced-motion:no-preference){.rating :focus-visible{transition:scale .2s ease-out}}.rating :active:focus{animation:none;scale:1.1}.navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative}.card:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.card:focus{outline-offset:2px;outline:2px solid #0000}}.card:focus-visible{outline-color:currentColor}.card :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}.card :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}.card figure{justify-content:center;align-items:center;display:flex}.card:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;-webkit-user-select:none;user-select:none}.card:has(>:checked){outline:2px solid}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.progress{appearance:none;border-radius:var(--radius-box);background-color:currentColor;width:100%;height:.5rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.progress{background-color:color-mix(in oklab, currentcolor 20%, transparent)}}.progress{color:var(--color-base-content)}.progress:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%}@media (prefers-reduced-motion:no-preference){.progress:indeterminate{animation:5s ease-in-out infinite progress}}@supports ((-moz-appearance:none)){.progress:indeterminate::-moz-progress-bar{background-color:#0000}@media (prefers-reduced-motion:no-preference){.progress:indeterminate::-moz-progress-bar{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}.progress::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){.progress::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}.textarea{border:var(--border) solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);min-height:5rem;font-size:max(var(--font-size,.875rem), .875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;flex-shrink:1;padding-block:.5rem;padding-inline:.75rem}@supports (color:color-mix(in lab, red, red)){.textarea{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.textarea{--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.textarea{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.textarea textarea{appearance:none;background-color:#0000;border:none}.textarea textarea:focus,.textarea textarea:focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.textarea textarea:focus,.textarea textarea:focus-within{outline-offset:2px;outline:2px solid #0000}}.textarea:focus,.textarea:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.textarea:focus,.textarea:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.textarea:focus,.textarea:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media (pointer:coarse){@supports (-webkit-touch-callout:none){.textarea:focus,.textarea:focus-within{--font-size:1rem}}}.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]))::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]))::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){box-shadow:none}.textarea:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}.stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid}.stack>*{width:100%;height:100%}.stack>:nth-child(n+2){opacity:.7;width:100%}.stack>:nth-child(2){z-index:2;opacity:.9}.stack>:first-child{z-index:3;width:100%}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.tab-content{order:var(--tabcontent-order);--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box);--tabcontent-order:1;width:100%;height:calc(100% - var(--tab-height) + var(--border));margin:var(--tabcontent-margin);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.stat-figure{grid-row:1/span 3;grid-column-start:2;place-self:center flex-end}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:.95;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.timeline-middle{grid-row-start:2;grid-column-start:2}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab, red, red)){.stat-desc{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.stat-desc{font-size:.75rem}.stat-title{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab, red, red)){.stat-title{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.stat-title{font-size:.75rem}.stat-actions{white-space:nowrap;grid-column-start:1}.chat-image{grid-row:span 2/span 2;align-self:flex-end}.chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:var(--color-base-content);flex-direction:row;align-self:stretch;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.divider{--divider-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.divider:before,.divider:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{--tw-content:"×";content:var(--tw-content)}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.label{white-space:nowrap;color:currentColor;align-items:center;gap:.375rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.label{color:color-mix(in oklab, currentcolor 60%, transparent)}}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border) solid currentColor;margin-inline:-.75rem .75rem}@supports (color:color-mix(in lab, red, red)){.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border) solid color-mix(in oklab, currentColor 10%, #0000)}}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border) solid currentColor;margin-inline:.75rem -.75rem}@supports (color:color-mix(in lab, red, red)){.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border) solid color-mix(in oklab, currentColor 10%, #0000)}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border) solid var(--badge-color,var(--color-base-200));background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem) * 6);width:fit-content;height:var(--size);padding-inline:calc(var(--size) / 2 - var(--border));justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border) solid var(--color-base-content);justify-content:center;align-items:center;padding-inline:.5em;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.kbd{border:var(--border) solid color-mix(in srgb, var(--color-base-content) 20%, #0000)}}.kbd{border-bottom:calc(var(--border) + 1px) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.kbd{border-bottom:calc(var(--border) + 1px) solid color-mix(in srgb, var(--color-base-content) 20%, #0000)}}.kbd{--size:calc(var(--size-selector,.25rem) * 6);height:var(--size);min-width:var(--size);font-size:.875rem}.text-rotate{vertical-align:bottom;white-space:nowrap;--duration:var(--tw-duration);transition-property:none;display:inline-block;overflow:hidden}.text-rotate>*{height:calc(var(--items,1) * 100%);justify-items:start;display:grid}.text-rotate>:has(:nth-child(2)){--items:2;animation:rotator var(--duration,10s) linear(0 0% 49%, .5 50% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(3)){--items:3;animation:rotator var(--duration,10s) linear(0 0% 32%, .333333 33% 65%, .666666 66% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(4)){--items:4;animation:rotator var(--duration,10s) linear(0 0% 24%, .25 25% 49%, .5 50% 74%, .75 75% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(5)){--items:5;animation:rotator var(--duration,10s) linear(0 0% 19%, .2 20% 39%, .4 40% 59%, .6 60% 79%, .8 80% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(6)){--items:6;animation:rotator var(--duration,10s) linear(0 0% 15%, .16666 16% 32%, .333333 33% 49%, .5 50% 65%, .666666 66% 82%, .833333 83% 99%, 1 100% 100%) infinite}.text-rotate>*>*{clip-path:inset(.5px 0);align-content:baseline}.text-rotate>*>:first-child{translate:var(--first-item-position)}.text-rotate:hover>*{animation-play-state:paused}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem) * 10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid}.footer>*{place-items:start;gap:.5rem;display:grid}.footer.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center}.footer.footer-center>*{place-items:center}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border) dashed currentColor}@supports (color:color-mix(in lab, red, red)){.stat:not(:last-child){border-inline-end:var(--border) dashed color-mix(in oklab, currentColor 10%, #0000)}}.stat:not(:last-child){border-block-end:none}.navbar-end{justify-content:flex-end;align-items:center;width:50%;display:inline-flex}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex}.card-body :where(p){flex-grow:1}.fieldset-label{color:var(--color-base-content);align-items:center;gap:.375rem;display:flex}@supports (color:color-mix(in lab, red, red)){.fieldset-label{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.fieldset-label:has(input){cursor:pointer}.carousel{scroll-snap-type:x mandatory;scrollbar-width:none;display:inline-flex;overflow-x:scroll}@media (prefers-reduced-motion:no-preference){.carousel{scroll-behavior:smooth}}.carousel::-webkit-scrollbar{display:none}.alert{--alert-border-color:var(--color-base-200);border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * .08)) inset, 0 1px #000, 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * .08));border-style:solid;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}@supports (color:color-mix(in lab, red, red)){.alert{box-shadow:0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * .08)) inset, 0 1px color-mix(in oklab, color-mix(in oklab, #000 20%, var(--alert-color,var(--color-base-200))) calc(var(--depth) * 20%), #0000), 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * .08))}}.alert:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}.fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");grid-auto-rows:min-content;column-gap:.75rem;padding-block:.25rem;display:grid}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.mask{vertical-align:middle;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.skeleton{border-radius:var(--radius-box);background-color:var(--color-base-300)}@media (prefers-reduced-motion:reduce){.skeleton{transition-duration:15s}}.skeleton{will-change:background-position;background-image:linear-gradient(105deg, #0000 0% 40%, var(--color-base-100) 50%, #0000 60% 100%);background-position-x:-50%;background-size:200%}@media (prefers-reduced-motion:no-preference){.skeleton{animation:1.8s ease-in-out infinite skeleton}}.timeline-box{border:var(--border) solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.btn-neutral{--btn-color:var(--color-neutral);--btn-fg:var(--color-neutral-content)}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}}@layer daisyui.l1.l2{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;transition:visibility 0s allow-discrete, background-color .3s ease-out, opacity .1s ease-out;background-color:oklch(0% 0 0/.4)}:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal) .modal-box{opacity:1;translate:0;scale:1}:root:has(:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}@starting-style{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{opacity:0}}:where(.drawer-toggle:checked~.drawer-side){pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto}:where(.drawer-toggle:checked~.drawer-side)>:not(.drawer-overlay){translate:0%}.drawer-toggle:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off) 50%}.tooltip:after{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail) 50%}.collapse-arrow>.collapse-title:after{width:.5rem;height:.5rem;display:block;position:absolute;transform:translateY(-100%)rotate(45deg)}@media (prefers-reduced-motion:no-preference){.collapse-arrow>.collapse-title:after{transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}}.collapse-arrow>.collapse-title:after{content:"";transform-origin:75% 75%;pointer-events:none;top:50%;inset-inline-end:1.4rem;box-shadow:2px 2px}.btn:disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn:disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn:disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn:disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn:disabled{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}.btn[disabled]:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn[disabled]:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn[disabled]:not(.btn-link,.btn-ghost){box-shadow:none}.btn[disabled]{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn[disabled]{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}.btn-disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn-disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn-disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn-disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn-disabled{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}@media (prefers-reduced-motion:no-preference){.collapse[open].collapse-arrow>.collapse-title:after,.collapse.collapse-open.collapse-arrow>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}.collapse.collapse-open.collapse-plus>.collapse-title:after{--tw-content:"−";content:var(--tw-content)}:is(.collapse[tabindex].collapse-arrow:focus:not(.collapse-close),.collapse.collapse-arrow[tabindex]:focus-within:not(.collapse-close))>.collapse-title:after,.collapse.collapse-arrow:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}.collapse[open].collapse-plus>.collapse-title:after,.collapse[tabindex].collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse.collapse-plus:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{--tw-content:"−";content:var(--tw-content)}.list .list-row:has(.list-col-grow:first-child){--list-grid-cols:1fr}.list .list-row:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row>*{grid-row-start:1}.steps .step-neutral+.step-neutral:before,.steps .step-neutral:after,.steps .step-neutral>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}.steps .step-primary+.step-primary:before,.steps .step-primary:after,.steps .step-primary>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}.steps .step-secondary+.step-secondary:before,.steps .step-secondary:after,.steps .step-secondary>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}.steps .step-accent+.step-accent:before,.steps .step-accent:after,.steps .step-accent>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}.steps .step-info+.step-info:before,.steps .step-info:after,.steps .step-info>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}.steps .step-success+.step-success:before,.steps .step-success:after,.steps .step-success>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}.steps .step-warning+.step-warning:before,.steps .step-warning:after,.steps .step-warning>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}.steps .step-error+.step-error:before,.steps .step-error:after,.steps .step-error>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}.tabs-border>.tab{--tab-border-color:#0000 #0000 var(--tab-border-color) #0000;border-radius:var(--radius-field);position:relative}.tabs-border>.tab:before{content:"";background-color:var(--tab-border-color);border-radius:var(--radius-field);width:80%;height:3px;transition:background-color .2s;position:absolute;bottom:0;left:10%}:is(.tabs-border>.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-border>.tab:is(input:checked),.tabs-border>.tab:is(label:has(:checked))):before{--tab-border-color:currentColor;border-top:3px solid}.checkbox:disabled,.radio:disabled{cursor:not-allowed;opacity:.2}.rating.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}.rating.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}.rating.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}.rating.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}.rating.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}:where(.navbar){position:relative}.tooltip-right>.tooltip-content,.tooltip-right[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem)) translateY(-50%);inset:50% auto auto var(--tt-off)}.tooltip-right:after{transform:translateX(var(--tt-pos,-.25rem)) translateY(-50%) rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}.tooltip-top>.tooltip-content,.tooltip-top[data-tip]:before{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off) 50%}.tooltip-top:after{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail) 50%}.chat-end{grid-template-columns:1fr auto;place-items:end}.chat-end .chat-header,.chat-end .chat-footer{grid-column-start:1}.chat-end .chat-image{grid-column-start:2}.chat-end .chat-bubble{border-end-end-radius:0;grid-column-start:1}.chat-end .chat-bubble:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] :is(.chat-end .chat-bubble):before{transform:rotateY(0)}.chat-start{grid-template-columns:auto 1fr;place-items:start}.chat-start .chat-header,.chat-start .chat-footer{grid-column-start:2}.chat-start .chat-image{grid-column-start:1}.chat-start .chat-bubble{border-end-start-radius:0;grid-column-start:2}.chat-start .chat-bubble:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] :is(.chat-start .chat-bubble):before{transform:rotateY(180deg)}.dropdown-bottom{--anchor-v:bottom}.dropdown-bottom .dropdown-content{transform-origin:top;top:100%;bottom:auto}.btn-active{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn-active{--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}.btn-active{--btn-shadow:0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);isolation:isolate}:is(.stack,.stack.stack-bottom)>*{grid-area:3/3/6/4}:is(.stack,.stack.stack-bottom)>:nth-child(2){grid-area:2/2/5/5}:is(.stack,.stack.stack-bottom)>:first-child{grid-area:1/1/4/6}.stack.stack-top>*{grid-area:1/3/4/4}.stack.stack-top>:nth-child(2){grid-area:2/2/5/5}.stack.stack-top>:first-child{grid-area:3/1/6/6}.stack.stack-start>*{grid-area:3/1/4/4}.stack.stack-start>:nth-child(2){grid-area:2/2/5/5}.stack.stack-start>:first-child{grid-area:1/3/6/6}.stack.stack-end>*{grid-area:3/3/4/6}.stack.stack-end>:nth-child(2){grid-area:2/2/5/5}.stack.stack-end>:first-child{grid-area:1/1/6/4}.tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(3 * var(--radius-field));border-radius:calc(min(var(--tab-height) / 2, var(--radius-field)) + min(.25rem, var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 .5px oklch(0% 0 0 / calc(var(--depth) * .05)) inset;padding:.25rem}.tabs-box>.tab{border-radius:var(--radius-field);border-style:none}.tabs-box>.tab:focus-visible,.tabs-box>.tab:is(label:has(:checked:focus-visible)){outline-offset:2px}.tabs-box>.tab:focus-visible{z-index:1}.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px 1px -1px var(--color-neutral), 0 1px 6px -4px var(--color-neutral)}@supports (color:color-mix(in lab, red, red)){.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){box-shadow:0 1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px 1px -1px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 50%), #0000), 0 1px 6px -4px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 100%), #0000)}}@media (forced-colors:active){.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){border:1px solid}}.tabs-box>.tab-content{height:calc(100% - var(--tab-height) + var(--border) - .5rem);border-radius:calc(min(var(--tab-height) / 2, var(--radius-field)) + min(.25rem, var(--tabs-box-radius)) - var(--border));margin-top:.25rem}.timeline-horizontal{flex-direction:row}.timeline-horizontal>li{align-items:center}.timeline-horizontal>li>hr{width:100%;height:.25rem}.timeline-horizontal>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline-horizontal>li>hr:last-child{grid-area:2/3/auto/none}.timeline-horizontal .timeline-start{grid-area:1/1/2/4;place-self:flex-end center}.timeline-horizontal .timeline-end{grid-area:3/1/4/4;place-self:flex-start center}.timeline-horizontal:has(.timeline-middle)>li>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline-horizontal:has(.timeline-middle)>li>hr:last-child,.timeline-horizontal:not(:has(.timeline-middle)) :first-child>hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline-horizontal:not(:has(.timeline-middle)) :last-child>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline-vertical{flex-direction:column}.timeline-vertical>li{--timeline-row-start:minmax(0, 1fr);--timeline-row-end:minmax(0, 1fr);justify-items:center}.timeline-vertical>li>hr{width:.25rem;height:100%}.timeline-vertical>li>hr:first-child{grid-row-start:1;grid-column-start:2}.timeline-vertical>li>hr:last-child{grid-area:3/2/none}.timeline-vertical .timeline-start{grid-area:1/1/4/2;place-self:center flex-end}.timeline-vertical .timeline-end{grid-area:1/3/4/4;place-self:center flex-start}.timeline-vertical:has(.timeline-middle)>li>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.timeline-vertical:has(.timeline-middle)>li>hr:last-child,.timeline-vertical:not(:has(.timeline-middle)) :first-child>hr:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}.timeline-vertical:not(:has(.timeline-middle)) :last-child>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.timeline-vertical.timeline-snap-icon>li{--timeline-col-start:minmax(0, 1fr);--timeline-row-start:.5rem}.timeline-compact{--timeline-row-start:0}.timeline-compact .timeline-start{grid-area:3/1/4/4;place-self:flex-start center}.timeline-compact li:has(.timeline-start) .timeline-end{grid-row-start:auto;grid-column-start:none}.timeline-compact.timeline-vertical>li{--timeline-col-start:0}.timeline-compact.timeline-vertical .timeline-start{grid-area:1/3/4/4;place-self:center flex-start}.timeline-compact.timeline-vertical li:has(.timeline-start) .timeline-end{grid-row-start:none;grid-column-start:auto}.drawer-end{grid-auto-columns:auto max-content}.drawer-end>.drawer-toggle~.drawer-content{grid-column-start:1}.drawer-end>.drawer-toggle~.drawer-side{grid-column-start:2;justify-items:end}.drawer-end>.drawer-toggle~.drawer-side>:not(.drawer-overlay){translate:100%}[dir=rtl] :is(.drawer-end>.drawer-toggle~.drawer-side>:not(.drawer-overlay)){translate:-100%}.drawer-end>.drawer-toggle:checked~.drawer-side>:not(.drawer-overlay){translate:0%}.input-lg{--size:calc(var(--size-field,.25rem) * 12);font-size:max(var(--font-size,1.125rem), 1.125rem)}.input-lg[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input-sm{--size:calc(var(--size-field,.25rem) * 8);font-size:max(var(--font-size,.75rem), .75rem)}.input-sm[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.input-xs{--size:calc(var(--size-field,.25rem) * 6);font-size:max(var(--font-size,.6875rem), .6875rem)}.input-xs[type=number]::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}.modal-bottom{place-items:end}.modal-bottom .modal-box{--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.btn-block{width:100%}.swap-rotate .swap-on,.swap-rotate input:indeterminate~.swap-on{rotate:45deg}.swap-rotate input:is(:checked,:indeterminate)~.swap-on,.swap-rotate.swap-active .swap-on{rotate:0deg}.swap-rotate input:is(:checked,:indeterminate)~.swap-off,.swap-rotate.swap-active .swap-off{rotate:-45deg}.stats-horizontal{grid-auto-flow:column;overflow-x:auto}.stats-horizontal .stat:not(:last-child){border-inline-end:var(--border) dashed currentColor}@supports (color:color-mix(in lab, red, red)){.stats-horizontal .stat:not(:last-child){border-inline-end:var(--border) dashed color-mix(in oklab, currentColor 10%, #0000)}}.stats-horizontal .stat:not(:last-child){border-block-end:none}.stats-vertical{grid-auto-flow:row;overflow-y:auto}.stats-vertical .stat:not(:last-child){border-inline-end:none;border-block-end:var(--border) dashed currentColor}@supports (color:color-mix(in lab, red, red)){.stats-vertical .stat:not(:last-child){border-block-end:var(--border) dashed color-mix(in oklab, currentColor 10%, #0000)}}.badge-dash{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-style:dashed;border-color:currentColor}.badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.table-zebra tbody tr:where(:nth-child(2n)),.table-zebra tbody tr:where(:nth-child(2n)) :where(.table-pin-cols tr th){background-color:var(--color-base-200)}@media (hover:hover){:is(.table-zebra tbody tr.row-hover,.table-zebra tbody tr.row-hover:where(:nth-child(2n))):hover{background-color:var(--color-base-300)}}.skeleton-text{webkit-background-clip:text;color:#0000;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(105deg, var(--color-base-content) 0% 40%, var(--color-base-content) 50%, var(--color-base-content) 60% 100%)}@supports (color:color-mix(in lab, red, red)){.skeleton-text{background-image:linear-gradient(105deg, color-mix(in oklab, var(--color-base-content) 20%, transparent) 0% 40%, var(--color-base-content) 50%, color-mix(in oklab, var(--color-base-content) 20%, transparent) 60% 100%)}}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.mask-circle{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle fill='black' cx='100' cy='100' r='100' fill-rule='evenodd'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle fill='black' cx='100' cy='100' r='100' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-heart{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e")}.mask-star{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e")}.checkbox-lg{--size:calc(var(--size-selector,.25rem) * 7);padding:.3125rem}.radio-lg{padding:.3125rem}.radio-lg[type=radio]{--size:calc(var(--size-selector,.25rem) * 7)}.select-lg{--size:calc(var(--size-field,.25rem) * 12);font-size:1.125rem}.select-lg option{padding-block:.375rem;padding-inline:1rem}.table-lg :not(thead,tfoot) tr{font-size:1.125rem}.table-lg :where(th,td){padding-block:1rem;padding-inline:1.25rem}.badge-lg{--size:calc(var(--size-selector,.25rem) * 7);font-size:1rem}.alert-error{color:var(--color-error-content);--alert-border-color:var(--color-error);--alert-color:var(--color-error)}.alert-info{color:var(--color-info-content);--alert-border-color:var(--color-info);--alert-color:var(--color-info)}.alert-success{color:var(--color-success-content);--alert-border-color:var(--color-success);--alert-color:var(--color-success)}.alert-warning{color:var(--color-warning-content);--alert-border-color:var(--color-warning);--alert-color:var(--color-warning)}.checkbox-accent{color:var(--color-accent-content);--input-color:var(--color-accent)}.checkbox-error{color:var(--color-error-content);--input-color:var(--color-error)}.range-accent{color:var(--color-accent);--range-thumb:var(--color-accent-content)}.range-error{color:var(--color-error);--range-thumb:var(--color-error-content)}.tooltip-accent{--tt-bg:var(--color-accent)}.tooltip-accent>.tooltip-content,.tooltip-accent[data-tip]:before{color:var(--color-accent-content)}.tooltip-error{--tt-bg:var(--color-error)}.tooltip-error>.tooltip-content,.tooltip-error[data-tip]:before{color:var(--color-error-content)}.swap-active .swap-off{opacity:0}.swap-active .swap-on{opacity:1}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem) * 12)}.btn-md{--fontsize:.875rem;--btn-p:1rem;--size:calc(var(--size-field,.25rem) * 10)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem) * 8)}.btn-xl{--fontsize:1.375rem;--btn-p:1.5rem;--size:calc(var(--size-field,.25rem) * 14)}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem) * 6)}.badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.input-error,.input-error:focus,.input-error:focus-within{--input-color:var(--color-error)}.input-secondary,.input-secondary:focus,.input-secondary:focus-within{--input-color:var(--color-secondary)}.radio-accent{--input-color:var(--color-accent)}.radio-error{--input-color:var(--color-error)}.range-lg{--range-thumb-size:calc(var(--size-selector,.25rem) * 7)}.range-xs{--range-thumb-size:calc(var(--size-selector,.25rem) * 4)}.select-error,.select-error:focus,.select-error:focus-within{--input-color:var(--color-error)}.select-secondary,.select-secondary:focus,.select-secondary:focus-within{--input-color:var(--color-secondary)}.toggle-accent:checked,.toggle-accent[aria-checked=true]{--input-color:var(--color-accent)}.toggle-lg[type=checkbox],.toggle-lg:has([type=checkbox]){--size:calc(var(--size-selector,.25rem) * 7)}}.prose :where(a.btn:not(.btn-link)):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse:not(td,tr,colgroup){visibility:revert-layer}.validator:user-invalid~.validator-hint{display:revert-layer}.validator:has(:user-invalid)~.validator-hint{display:revert-layer}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))~.validator-hint{display:revert-layer}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-10{top:calc(var(--spacing) * 10)}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-1\/4{right:25%}.right-3{right:calc(var(--spacing) * 3)}.right-6{right:calc(var(--spacing) * 6)}.-bottom-5{bottom:calc(var(--spacing) * -5)}.bottom-6{bottom:calc(var(--spacing) * 6)}.bottom-10{bottom:calc(var(--spacing) * 10)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-1\/4{left:25%}.left-3{left:calc(var(--spacing) * 3)}.left-6{left:calc(var(--spacing) * 6)}.-z-0{z-index:calc(0 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-50,.z-\[50\]{z-index:50}.z-\[90\]{z-index:90}.z-\[100\]{z-index:100}.z-\[110\]{z-index:110}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-1{margin:calc(var(--spacing) * 1)}.m-4{margin:calc(var(--spacing) * 4)}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-auto{margin-inline:auto}.my-16{margin-block:calc(var(--spacing) * 16)}.-mt-10{margin-top:calc(var(--spacing) * -10)}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.icon-\[lucide--alert-circle\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 8v4m0 4h.01'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--alert-triangle\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m21.73 18l-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3M12 9v4m0 4h.01'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-center\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M17 12H7m12 6H5M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 12H3m14 6H3M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H9m12 6H7M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--bold\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--calendar\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M8 2v4m8-4v4'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--check-circle\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M21.801 10A10 10 0 1 1 17 3.335'/%3E%3Cpath d='m9 11l3 3L22 4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--check\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevron-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m15 18l-6-6l6-6'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevron-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m9 18l6-6l-6-6'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevrons-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m11 17l-5-5l5-5m7 10l-5-5l5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevrons-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 17l5-5l-5-5m7 10l5-5l-5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--clock\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--code-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m18 16l4-4l-4-4M6 8l-4 4l4 4m8.5-12l-5 16'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eraser\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21m-7.752-9.91l8.828 8.828'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eye-off\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575a1 1 0 0 1 0 .696a10.8 10.8 0 0 1-1.444 2.49m-6.41-.679a3 3 0 0 1-4.242-4.242'/%3E%3Cpath d='M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 4.446-5.143M2 2l20 20'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eye\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--hash\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 9h16M4 15h16M10 3L8 21m8-18l-2 18'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--indent-decrease\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M7 8l-4 4l4 4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--indent-increase\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M3 8l4 4l-4 4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--info\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4m0-4h.01'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--italic\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 4h-9m4 16H5M15 4L9 20'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--link\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--list-ordered\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M11 5h10m-10 7h10m-10 7h10M4 4h1v5M4 9h2m.5 11H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--list\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M3 5h.01M3 12h.01M3 19h.01M8 5h13M8 12h13M8 19h13'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--lock\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='18' height='11' x='3' y='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--mail\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m22 7l-8.991 5.727a2 2 0 0 1-2.009 0L2 7'/%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--moon\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--paperclip\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m16 6l-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--phone\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233a14 14 0 0 0 6.392 6.384'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--quote\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1a6 6 0 0 0 6-6V5a2 2 0 0 0-2-2zM5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1a6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--redo-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m15 14l5-5l-5-5'/%3E%3Cpath d='M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--search\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m21 21l-4.34-4.34'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--smile\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8 14s1.5 2 4 2s4-2 4-2M9 9h.01M15 9h.01'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--sun\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--text\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 18H3M17 6H3m18 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--underline\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 4v6a6 6 0 0 0 12 0V4M4 20h16'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--undo-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M9 14L4 9l5-5'/%3E%3Cpath d='M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--upload\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 3v12m5-7l-5-5l-5 5m14 7v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--user\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--x\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.kbd{box-shadow:none}.text-rotate{height:1lh}.alert{border-width:var(--border);border-color:var(--alert-border-color,var(--color-base-200))}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-12{height:calc(var(--spacing) * 12)}.h-20{height:calc(var(--spacing) * 20)}.h-48{height:calc(var(--spacing) * 48)}.h-96{height:calc(var(--spacing) * 96)}.h-auto{height:auto}.h-full{height:100%}.max-h-60{max-height:calc(var(--spacing) * 60)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[22rem\]{min-height:22rem}.min-h-full{min-height:100%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-10{width:calc(var(--spacing) * 10)}.w-32{width:calc(var(--spacing) * 32)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-52{width:calc(var(--spacing) * 52)}.w-56{width:calc(var(--spacing) * 56)}.w-60{width:calc(var(--spacing) * 60)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-96{width:calc(var(--spacing) * 96)}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.w-xs{width:var(--container-xs)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[200px\]{max-width:200px}.max-w-md{max-width:var(--container-md)}.min-w-\[48px\]{min-width:48px}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-10{--tw-translate-x:calc(var(--spacing) * 10);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-box{border-radius:var(--radius-box);border-radius:var(--radius-box)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}@layer daisyui.l1{.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}.alert-soft{color:var(--alert-color,var(--color-base-content));background:var(--alert-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.alert-soft{background:color-mix(in oklab, var(--alert-color,var(--color-base-content)) 8%, var(--color-base-100))}}.alert-soft{--alert-border-color:var(--alert-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.alert-soft{--alert-border-color:color-mix(in oklab, var(--alert-color,var(--color-base-content)) 10%, var(--color-base-100))}}.alert-soft{box-shadow:none;background-image:none}.btn-link{--btn-border:#0000;--btn-bg:#0000;--btn-noise:none;--btn-shadow:"";outline-color:currentColor;text-decoration-line:underline}.btn-link:not(.btn-disabled,.btn:disabled,.btn[disabled]){--btn-fg:var(--btn-color,var(--color-primary))}.btn-link:is(.btn-active,:hover,:active:focus,:focus-visible){--btn-border:#0000;--btn-bg:#0000}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)):not(:disabled,[disabled],.btn-disabled){--btn-fg:var(--btn-color,currentColor);outline-color:currentColor}@media (hover:none){.btn-ghost:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color,currentColor);--btn-border:#0000;--btn-noise:none;outline-color:currentColor}}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn),:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){.btn-outline:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-base-200\/30{border-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.border-base-200\/30{border-color:color-mix(in oklab, var(--color-base-200) 30%, transparent)}}.border-base-300{border-color:var(--color-base-300)}.border-base-content\/20{border-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.border-base-content\/20{border-color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.border-black\/5{border-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.border-black\/5{border-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.border-black\/10{border-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.border-black\/10{border-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.border-primary{border-color:var(--color-primary)}.bg-base-100,.bg-base-100\/50{background-color:var(--color-base-100)}@supports (color:color-mix(in lab, red, red)){.bg-base-100\/50{background-color:color-mix(in oklab, var(--color-base-100) 50%, transparent)}}.bg-base-200,.bg-base-200\/30{background-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.bg-base-200\/30{background-color:color-mix(in oklab, var(--color-base-200) 30%, transparent)}}.bg-base-200\/50{background-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.bg-base-200\/50{background-color:color-mix(in oklab, var(--color-base-200) 50%, transparent)}}.bg-base-300{background-color:var(--color-base-300)}.bg-primary,.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--color-primary) 10%, transparent)}}.bg-primary\/20{background-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--color-primary) 20%, transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:#0000}.bg-linear-to-r{--tw-gradient-position:to right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-r{--tw-gradient-position:to right in oklab}}.bg-linear-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.from-secondary{--tw-gradient-from:var(--color-secondary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-accent{--tw-gradient-via:var(--color-accent);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-primary{--tw-gradient-to:var(--color-primary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.mask-circle{--tw-mask-radial-shape:circle}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-10{padding-inline:calc(var(--spacing) * 10)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-10{padding-left:calc(var(--spacing) * 10)}.\!text-center{text-align:center!important}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.text-accent{color:var(--color-accent)}.text-base-content,.text-base-content\/60{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.text-base-content\/60{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.text-base-content\/90{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.text-base-content\/90{color:color-mix(in oklab, var(--color-base-content) 90%, transparent)}}.text-error{color:var(--color-error)}.text-primary{color:var(--color-primary)}.text-primary-content{color:var(--color-primary-content)}.text-secondary{color:var(--color-secondary)}.text-secondary-content{color:var(--color-secondary-content)}.text-transparent{color:#0000}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-secondary\/20{--tw-shadow-color:var(--color-secondary)}@supports (color:color-mix(in lab, red, red)){.shadow-secondary\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-secondary) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-primary{--tw-ring-color:var(--color-primary)}.ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.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,)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));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,)}.drop-shadow-2xl{--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}}.before\:z-50:before,.after\:z-50:after{content:var(--tw-content);z-index:50}@media (hover:hover){.hover\:z-10:hover{z-index:10}.hover\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-accent\/40:hover{border-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:border-accent\/40:hover{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.hover\:border-base-content\/20:hover{border-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.hover\:border-base-content\/20:hover{border-color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.hover\:border-primary\/40:hover{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab, var(--color-primary) 40%, transparent)}}.hover\:border-primary\/50:hover{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab, var(--color-primary) 50%, transparent)}}.hover\:border-secondary\/40:hover{border-color:var(--color-secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-secondary\/40:hover{border-color:color-mix(in oklab, var(--color-secondary) 40%, transparent)}}.hover\:bg-base-200:hover{background-color:var(--color-base-200)}.hover\:bg-base-300:hover{background-color:var(--color-base-300)}.hover\:text-base-content:hover{color:var(--color-base-content)}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-100:hover{opacity:1}}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media (min-width:48rem){.md\:h-64{height:calc(var(--spacing) * 64)}.md\:w-64{width:calc(var(--spacing) * 64)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-9xl{font-size:var(--text-9xl);line-height:var(--tw-leading,var(--text-9xl--line-height))}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (hover:hover){.\[\&_\.resizable-img-container\]\:hover\:border-primary .resizable-img-container:hover{border-color:var(--color-primary)}}.\[\&_blockquote\]\:border-l-4 blockquote{border-left-style:var(--tw-border-style);border-left-width:4px}.\[\&_blockquote\]\:border-base-300 blockquote{border-color:var(--color-base-300)}.\[\&_blockquote\]\:pl-4 blockquote{padding-left:calc(var(--spacing) * 4)}.\[\&_blockquote\]\:italic blockquote{font-style:italic}.\[\&_ol\]\:list-decimal ol{list-style-type:decimal}.\[\&_ol\]\:pl-8 ol{padding-left:calc(var(--spacing) * 8)}.\[\&_ul\]\:list-disc ul{list-style-type:disc}.\[\&_ul\]\:pl-8 ul{padding-left:calc(var(--spacing) * 8)}.\[\&\>div\]\:m-0>div{margin:calc(var(--spacing) * 0)}.\[\&\>div\]\:min-h-\[1em\]>div{min-height:1em}.\[\&\>p\]\:m-0>p{margin:calc(var(--spacing) * 0)}@keyframes fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.animate-fade-in{animation:.15s ease-out forwards fade-in}}:root{font-size:14px}.input,.label,.select,.textarea{transition:all .3s cubic-bezier(.4,0,.2,1)}:is(.input,.label,.select,.textarea):focus,:is(.input,.label,.select,.textarea):focus-within{box-shadow:0 0 4px;outline:none!important}:is(.input,.label,.select,.textarea):hover:not(:focus){background-color:oklch(from var(--color-base-100) calc(l - .03) c h)}.floating-label span{color:oklch(30% .01 260);font-size:1.1rem;transition:all .2s}.floating-label:focus-within span{color:oklch(25% .02 260);font-size:1.1rem}.floating-label:has(input:not(:placeholder-shown)) span{color:oklch(28% .01 260);font-size:1.1rem}.tab-content-inner{transform-origin:top;animation:.3s cubic-bezier(.4,0,.2,1) tabFadeIn}.input-container{flex-direction:column;width:100%;display:flex;position:relative}.input-container .input{align-items:center;width:100%;display:flex}.input-content{z-index:50;background:oklch(var(--b1));border:1px solid oklch(var(--bc) / .2);border-radius:var(--rounded-box,1rem);margin-top:.25rem;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a}.input-content .menu{width:100%}@keyframes tabFadeIn{0%{opacity:0;transform:scaleY(.95)}to{opacity:1;transform:scaleY(1)}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes dropdown{0%{opacity:0}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@keyframes rotator{89.9999%,to{--first-item-position:0 0%}90%,99.9999%{--first-item-position:0 calc(var(--items) * 100%)}to{translate:0 -100%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes menu{0%{opacity:0}}@keyframes progress{50%{background-position-x:-115%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes pulse{50%{opacity:.5}} \ No newline at end of file +@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-7xl:4.5rem;--text-7xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-3xl:1.5rem;--drop-shadow-2xl:0 25px 25px #00000026;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");scrollbar-color:currentColor #0000}@supports (color:color-mix(in lab, red, red)){:root{scrollbar-color:color-mix(in oklch, currentColor 35%, #0000) #0000}}@property --radialprogress{syntax:"";inherits:true;initial-value:0%}:root:not(span){overflow:var(--page-overflow)}:root{background:var(--page-scroll-bg,var(--root-bg));--page-scroll-bg-on:linear-gradient(var(--root-bg,#0000), var(--root-bg,#0000)) var(--root-bg,#0000)}@supports (color:color-mix(in lab, red, red)){:root{--page-scroll-bg-on:linear-gradient(var(--root-bg,#0000), var(--root-bg,#0000)) color-mix(in srgb, var(--root-bg,#0000), oklch(0% 0 0) calc(var(--page-has-backdrop,0) * 40%))}}:root{--page-scroll-transition-on:background-color .3s ease-out;transition:var(--page-scroll-transition);scrollbar-gutter:var(--page-scroll-gutter,unset);scrollbar-gutter:if(style(--page-has-scroll: 1): var(--page-scroll-gutter,unset) ; else: unset)}@keyframes set-page-has-scroll{0%,to{--page-has-scroll:1}}:root,[data-theme]{background:var(--page-scroll-bg,var(--root-bg));color:var(--color-base-content)}:where(:root,[data-theme]){--root-bg:var(--color-base-100)}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(92% 0 0);--color-base-content:oklch(25% .006 285);--color-primary:oklch(25% .006 285);--color-primary-content:oklch(98% 0 0);--color-secondary:oklch(55% .046 257.417);--color-secondary-content:oklch(98% 0 0);--color-accent:oklch(96% 0 0);--color-accent-content:oklch(25% .006 285);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(62% .17 163);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .18 84);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(60% .25 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(15% .005 285.823);--color-base-200:oklch(20% .005 285.823);--color-base-300:oklch(30% .005 285.823);--color-base-content:oklch(92% .004 286.32);--color-primary:oklch(98% 0 0);--color-primary-content:oklch(15% 0 0);--color-secondary:oklch(65% .046 257.417);--color-secondary-content:oklch(15% .005 285.823);--color-accent:oklch(25% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(92% .004 286.32);--color-neutral-content:oklch(14% .005 285.823);--color-info:oklch(70% .1 230);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(65% .15 160);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(85% .15 90);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(55% .2 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(15% .005 285.823);--color-base-200:oklch(20% .005 285.823);--color-base-300:oklch(30% .005 285.823);--color-base-content:oklch(92% .004 286.32);--color-primary:oklch(98% 0 0);--color-primary-content:oklch(15% 0 0);--color-secondary:oklch(65% .046 257.417);--color-secondary-content:oklch(15% .005 285.823);--color-accent:oklch(25% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(92% .004 286.32);--color-neutral-content:oklch(14% .005 285.823);--color-info:oklch(70% .1 230);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(65% .15 160);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(85% .15 90);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(55% .2 27);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.4rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}@layer components;@layer utilities{@layer daisyui.l1.l2.l3{.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:visibility .3s allow-discrete, background-color .3s ease-out, opacity .1s ease-out;overscroll-behavior:contain;z-index:999;scrollbar-gutter:auto;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:clip}.modal::backdrop{display:none}:where(.drawer-side){overflow:hidden}.drawer-side{pointer-events:none;visibility:hidden;z-index:10;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete, visibility .3s ease-out .1s allow-discrete;inset-inline-start:0;background-color:#0000;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0}.drawer-side>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}.drawer-side>*{grid-row-start:1;grid-column-start:1}.drawer-side>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out,width .2s ease-out;translate:-100%}[dir=rtl] :is(.drawer-side>:not(.drawer-overlay)){translate:100%}.fab{pointer-events:none;z-index:999;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;inset-inline-end:1rem;flex-direction:column-reverse;align-items:flex-end;gap:.5rem;display:flex;position:fixed;bottom:1rem}.fab>*{pointer-events:auto;align-items:center;gap:.5rem;display:flex}.fab>:hover,.fab>:has(:focus-visible){z-index:1}.fab>[tabindex]:first-child{transition-property:opacity,visibility,rotate;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:grid;position:relative}.fab .fab-close,.fab .fab-main-action{inset-inline-end:0;position:absolute;bottom:0}:is(.fab:focus-within:has(.fab-close),.fab:focus-within:has(.fab-main-action))>[tabindex]{opacity:0;rotate:90deg}.fab:focus-within>[tabindex]:first-child{pointer-events:none}.fab:focus-within>:nth-child(n+2){visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1}.fab>:nth-child(n+2){visibility:hidden;--tw-scale-x:80%;--tw-scale-y:80%;--tw-scale-z:80%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:0;transition-property:opacity,scale,visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.fab>:nth-child(n+2).fab-main-action,.fab>:nth-child(n+2).fab-close{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.fab>:nth-child(3){transition-delay:30ms}.fab>:nth-child(4){transition-delay:60ms}.fab>:nth-child(5){transition-delay:90ms}.fab>:nth-child(6){transition-delay:.12s}.drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed}:where(.drawer-toggle:checked~.drawer-side){scrollbar-color:currentColor oklch(0 0 0 / calc(var(--page-has-backdrop,0) * .4))}@supports (color:color-mix(in lab, red, red)){:where(.drawer-toggle:checked~.drawer-side){scrollbar-color:color-mix(in oklch, currentColor 35%, #0000) oklch(0 0 0 / calc(var(--page-has-backdrop,0) * .4))}}:where(:root:has(.drawer-toggle:checked)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}.tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative}.tooltip>.tooltip-content,.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);display:block;position:absolute}@media (prefers-reduced-motion:no-preference){.tooltip>.tooltip-content,.tooltip[data-tip]:before,.tooltip:after{transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms}}:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{opacity:1;--tt-pos:0rem}@media (prefers-reduced-motion:no-preference){:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}.tab{cursor:pointer;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;display:inline-flex;position:relative}@media (hover:hover){.tab:hover{color:var(--color-base-content)}}.tab{--tab-p:.75rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));--tab-radius-limit:min(var(--radius-field), var(--tab-radius-min));--tab-radius-grad:#0000 calc(69% - var(--border)), var(--tab-border-color) calc(69% - var(--border) + .25px), var(--tab-border-color) 69%, var(--tab-bg) calc(69% + .25px);order:var(--tab-order);height:var(--tab-height);padding-inline:var(--tab-p);border-color:#0000;font-size:.875rem}.tab:is(input[type=radio]){min-width:fit-content}.tab:is(input[type=radio]):after{--tw-content:attr(aria-label);content:var(--tw-content)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]))+.tab-content{display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:color-mix(in oklab, var(--color-base-content) 50%, transparent)}}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.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(--radius-field);text-align:start;text-wrap:balance;-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;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu details{interpolate-size:allow-keywords;overflow:hidden}.menu details::details-content{block-size:0}@media (prefers-reduced-motion:no-preference){.menu details::details-content{transition-behavior:allow-discrete;transition-property:block-size,content-visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.menu details[open]::details-content{block-size:auto}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{color:var(--color-base-content);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01)}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{outline-offset:2px;outline:2px solid #0000}}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise)}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth) * 3px) -2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.menu :where(li).menu-disabled{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.floating-label{display:block;position:relative}.floating-label input{display:block}.floating-label input::placeholder,.floating-label textarea::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}.floating-label>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem) * 10 / 2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}:is(.floating-label:focus-within,.floating-label:not(:has(input:placeholder-shown,textarea:placeholder-shown))) ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}:is(.floating-label:focus-within,.floating-label:not(:has(input:placeholder-shown,textarea:placeholder-shown)))>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}.floating-label:has(:disabled,[disabled])>span{opacity:0}.floating-label:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem) * 6 / 2);font-size:.6875rem}.floating-label:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem) * 8 / 2);font-size:.75rem}.floating-label:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem) * 10 / 2);font-size:.875rem}.floating-label:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem) * 12 / 2);font-size:1.125rem}.floating-label:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem) * 14 / 2);font-size:1.375rem}.dropdown{position-area:var(--anchor-v,bottom) var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(:has(~[class*=dropdown-content])):focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.dropdown>:not(:has(~[class*=dropdown-content])):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown.dropdown-close .dropdown-content,.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content,.dropdown.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible)~.dropdown-content{transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover],.dropdown .dropdown-content{z-index:999}@media (prefers-reduced-motion:no-preference){.dropdown[popover],.dropdown .dropdown-content{transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}}@starting-style{.dropdown[popover],.dropdown .dropdown-content{opacity:0;scale:.95}}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within) .dropdown-content,.dropdown:not(.dropdown-close).dropdown-hover:hover .dropdown-content{opacity:1;scale:1}.dropdown:is(details) summary::-webkit-details-marker{display:none}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-close{transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:.95}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}:is(.dropdown[popover].dropdown-close,.dropdown[popover]:not(.dropdown-open,:popover-open)){transform-origin:top;opacity:0;display:none;scale:.95}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0 / calc(var(--depth) * .15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);--size:calc(var(--size-field,.25rem) * 10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:var(--btn-bg);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.btn{--btn-border:color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%))}}.btn{--btn-shadow:0 3px 2px -2px var(--btn-bg), 0 4px 3px -2px var(--btn-bg)}@supports (color:color-mix(in lab, red, red)){.btn{--btn-shadow:0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000), 0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000)}}.btn{--btn-noise:var(--fx-noise)}@media (hover:hover){.btn:hover{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn:hover{--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}}.btn:focus-visible,.btn:has(:focus-visible){isolation:isolate;outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:var(--btn-color,var(--color-base-200));translate:0 .5px}@supports (color:color-mix(in lab, red, red)){.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 5%)}}.btn:active:not(.btn-active){--btn-border:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn:active:not(.btn-active){--btn-border:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}.btn:active:not(.btn-active){--btn-shadow:0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0)}.btn:is(input[type=checkbox],input[type=radio]){appearance:none}.btn:is(input[type=checkbox],input[type=radio])[aria-label]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.btn:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem) * 6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.collapse{transition:grid-template-rows .2s}}.collapse>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;z-index:1;grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close)),.collapse:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){content-visibility:visible;min-height:fit-content}@supports not (content-visibility:visible){.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible}}.collapse:focus-visible,.collapse:has(>input:is([type=checkbox],[type=radio]):focus-visible),.collapse:has(summary:focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}.collapse:not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-close)>.collapse-title{cursor:pointer}:is(.collapse[tabindex]:focus:not(.collapse-close,.collapse[open]),.collapse[tabindex]:focus-within:not(.collapse-close,.collapse[open]))>.collapse-title{cursor:unset}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem}.collapse:is(details){width:100%}@media (prefers-reduced-motion:no-preference){.collapse:is(details)::details-content{transition:content-visibility .2s allow-discrete, visibility .2s allow-discrete, min-height .2s ease-out allow-discrete, padding .1s ease-out 20ms, background-color .2s ease-out, height .2s;interpolate-size:allow-keywords;height:0}.collapse:is(details):where([open])::details-content{height:auto}}.collapse:is(details) summary{display:block;position:relative}.collapse:is(details) summary::-webkit-details-marker{display:none}.collapse:is(details)>.collapse-content{content-visibility:visible}.collapse:is(details) summary{outline:none}.collapse-content{content-visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem}@supports not (content-visibility:hidden){.collapse-content{visibility:hidden}}@media (prefers-reduced-motion:no-preference){.collapse-content{transition:content-visibility .2s allow-discrete, visibility .2s allow-discrete, min-height .2s ease-out allow-discrete, padding .1s ease-out 20ms, background-color .2s ease-out}}.validator-hint{visibility:hidden;margin-top:.5rem;font-size:.75rem}.validator:user-valid{--input-color:var(--color-success)}.validator:user-valid:focus{--input-color:var(--color-success)}.validator:user-valid:checked{--input-color:var(--color-success)}.validator:user-valid[aria-checked=true]{--input-color:var(--color-success)}.validator:user-valid:focus-within{--input-color:var(--color-success)}.validator:has(:user-valid){--input-color:var(--color-success)}.validator:has(:user-valid):focus{--input-color:var(--color-success)}.validator:has(:user-valid):checked{--input-color:var(--color-success)}.validator:has(:user-valid)[aria-checked=true]{--input-color:var(--color-success)}.validator:has(:user-valid):focus-within{--input-color:var(--color-success)}.validator:user-invalid{--input-color:var(--color-error)}.validator:user-invalid:focus{--input-color:var(--color-error)}.validator:user-invalid:checked{--input-color:var(--color-error)}.validator:user-invalid[aria-checked=true]{--input-color:var(--color-error)}.validator:user-invalid:focus-within{--input-color:var(--color-error)}.validator:user-invalid~.validator-hint{visibility:visible;color:var(--color-error)}.validator:has(:user-invalid){--input-color:var(--color-error)}.validator:has(:user-invalid):focus{--input-color:var(--color-error)}.validator:has(:user-invalid):checked{--input-color:var(--color-error)}.validator:has(:user-invalid)[aria-checked=true]{--input-color:var(--color-error)}.validator:has(:user-invalid):focus-within{--input-color:var(--color-error)}.validator:has(:user-invalid)~.validator-hint{visibility:visible;color:var(--color-error)}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))),:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):focus,:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):checked,:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))[aria-checked=true],:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false]))):focus-within{--input-color:var(--color-error)}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))~.validator-hint{visibility:visible;color:var(--color-error)}.radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size) / 10);--radialprogress:calc(var(--value) * 1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative}.radial-progress:before{content:"";background:radial-gradient(farthest-side, currentColor 98%, #0000) top/var(--thickness) var(--thickness) no-repeat, conic-gradient(currentColor var(--radialprogress), #0000 0);webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));-webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));-webkit-mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side, #0000 calc(100% - var(--thickness)), #000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}.radial-progress:after{content:"";inset:calc(50% - var(--thickness) / 2);transform:rotate(calc(var(--value) * 3.6deg - 90deg)) translate(calc(var(--size) / 2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}.list{flex-direction:column;font-size:.875rem;display:flex}.list .list-row{--list-grid-cols:minmax(0, auto) 1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border) solid;inset-inline:var(--radius-box);border-color:var(--color-base-content);position:absolute;bottom:0}@supports (color:color-mix(in lab, red, red)){:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{border-color:color-mix(in oklab, var(--color-base-content) 5%, transparent)}}.toggle{border:var(--border) solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p), var(--radius-selector-max)) + min(var(--border), var(--radius-selector-max)));padding:var(--toggle-p);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;display:inline-grid;position:relative;box-shadow:inset 0 1px}@supports (color:color-mix(in lab, red, red)){.toggle{box-shadow:0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000) inset}}.toggle{--input-color:var(--color-base-content);transition:color .3s,grid-template-columns .2s}@supports (color:color-mix(in lab, red, red)){.toggle{--input-color:color-mix(in oklab, var(--color-base-content) 50%, #0000)}}.toggle{--toggle-p:calc(var(--size) * .125);--size:calc(var(--size-selector,.25rem) * 6);width:calc((var(--size) * 2) - (var(--border) + var(--toggle-p)) * 2);height:var(--size)}.toggle>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:0deg}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:0deg}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);width:100%;height:100%;box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor;background-color:currentColor;grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@supports (color:color-mix(in lab, red, red)){.toggle:before{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000)}}.toggle:before{background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise)}@media (forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px * -1);outline-width:1px}}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border) solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border) solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem), .875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.input{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.input{--size:calc(var(--size-field,.25rem) * 10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.input{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.input:where(input){display:inline-flex}.input :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.input :where(input):focus,.input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.input :where(input[type=url]),.input :where(input[type=email]){direction:ltr}.input :where(input[type=date]){display:inline-flex}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.input:focus,.input:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.input:focus,.input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media (pointer:coarse){@supports (-webkit-touch-callout:none){.input:focus,.input:focus-within{--font-size:1rem}}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{box-shadow:none}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;appearance:none;display:inline-flex}.input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}.indicator{width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%) var(--indicator-y,-50%);position:absolute}.table{border-collapse:separate;--tw-border-spacing-x:calc(.25rem * 0);--tw-border-spacing-y:calc(.25rem * 0);width:100%;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);border-radius:var(--radius-box);text-align:left;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media (hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(thead,tfoot){color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.table :where(thead,tfoot){font-size:.875rem;font-weight:600}.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000)}}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000)}}.steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden}.steps .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid}.steps .step:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);content:"";border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}.steps .step>.step-icon,.steps .step:not(:has(.step-icon)):after{--tw-content:counter(step);content:var(--tw-content);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}.steps .step:first-child:before{--tw-content:none;content:var(--tw-content)}.steps .step[data-content]:after{--tw-content:attr(data-content);content:var(--tw-content)}.range{appearance:none;webkit-appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem) * 6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:currentColor}@supports (color:color-mix(in lab, red, red)){.range{--range-bg:color-mix(in oklab, currentColor 10%, #0000)}}.range{cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden}[dir=rtl] .range{--range-dir:-1}.range:focus{outline:none}.range:focus-visible{outline-offset:2px;outline:2px solid}.range::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size) * .5)}@media (forced-colors:active){.range::-webkit-slider-runnable-track{border:1px solid}.range::-moz-range-track{border:1px solid}}.range::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));background-color:var(--range-thumb);height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p) solid;appearance:none;webkit-appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill));position:relative;top:50%;transform:translateY(-50%)}@supports (color:color-mix(in lab, red, red)){.range::-webkit-slider-thumb{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill))}}.range::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size) * .5)}.range::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p) solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill));background-color:currentColor;position:relative;top:50%}@supports (color:color-mix(in lab, red, red)){.range::-moz-range-thumb{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir,1) * -100cqw) - (var(--range-dir,1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill))}}.range:disabled{cursor:not-allowed;opacity:.3}.chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative}.chat-bubble:before{background-color:inherit;content:"";width:.75rem;height:.75rem;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-chat);-webkit-mask-image:var(--mask-chat);mask-image:var(--mask-chat);position:absolute;bottom:0;-webkit-mask-position:0 -1px;mask-position:0 -1px;-webkit-mask-size:.8125rem;mask-size:.8125rem}.select{border:var(--border) solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;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-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:.75rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.select{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.select{border-color:var(--input-color);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.select{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.select{--size:calc(var(--size-field,.25rem) * 10)}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}[dir=rtl] .select::picker(select){translate:.5rem}[dir=rtl] .select select::picker(select){translate:.5rem}.select[multiple]{background-image:none;height:auto;padding-block:.75rem;padding-inline-end:.75rem;overflow:auto}.select select{appearance:none;width:calc(100% + 2.75rem);height:calc(100% - calc(var(--border) * 2));background:inherit;border-radius:inherit;border-style:none;align-items:center;margin-inline:-.75rem -1.75rem;padding-inline:.75rem 1.75rem}.select select:focus,.select select:focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.select select:focus,.select select:focus-within{outline-offset:2px;outline:2px solid #0000}}.select select:not(:last-child){background-image:none;margin-inline-end:-1.375rem}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.select:focus,.select:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.select:focus,.select:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}@supports (appearance:base-select){.select,.select select{appearance:base-select}:is(.select,.select select)::picker(select){appearance:base-select}}:is(.select,.select select)::picker(select){color:inherit;border:var(--border) solid var(--color-base-200);border-radius:var(--radius-box);background-color:inherit;max-height:min(24rem,70dvh);box-shadow:0 2px calc(var(--depth) * 3px) -2px oklch(0% 0 0/.2);box-shadow:0 20px 25px -5px rgb(0 0 0/calc(var(--depth) * .1)), 0 8px 10px -6px rgb(0 0 0/calc(var(--depth) * .1));margin-block:.5rem;margin-inline:.5rem;padding:.5rem;translate:-.5rem}:is(.select,.select select)::picker-icon{display:none}:is(.select,.select select) optgroup{padding-top:.5em}:is(.select,.select select) optgroup option:first-child{margin-top:.5em}:is(.select,.select select) option{border-radius:var(--radius-field);white-space:normal;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #0000}}:is(.select,.select select) option:not(:disabled):active{background-color:var(--color-neutral);color:var(--color-neutral-content);box-shadow:0 2px calc(var(--depth) * 3px) -2px var(--color-neutral)}.timeline{display:flex;position:relative}.timeline>li{grid-template-rows:var(--timeline-row-start,minmax(0, 1fr)) auto var(--timeline-row-end,minmax(0, 1fr));grid-template-columns:var(--timeline-col-start,minmax(0, 1fr)) auto var(--timeline-col-end,minmax(0, 1fr));flex-shrink:0;align-items:center;display:grid;position:relative}.timeline>li>hr{border:none;width:100%}.timeline>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline>li>hr:last-child{grid-area:2/3/auto/none}@media print{.timeline>li>hr{border:.1px solid var(--color-base-300)}}.timeline :where(hr){background-color:var(--color-base-300);height:.25rem}.timeline:has(.timeline-middle hr):first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline:has(.timeline-middle hr):last-child,.timeline:not(:has(.timeline-middle)) :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline:not(:has(.timeline-middle)) :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.swap{cursor:pointer;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;place-content:center;display:inline-grid;position:relative}.swap input{appearance:none;border:none}.swap>*{grid-row-start:1;grid-column-start:1}@media (prefers-reduced-motion:no-preference){.swap>*{transition-property:transform,rotate,opacity;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.swap .swap-on,.swap .swap-indeterminate,.swap input:indeterminate~.swap-on,.swap input:is(:checked,:indeterminate)~.swap-off{opacity:0}.swap input:checked~.swap-on,.swap input:indeterminate~.swap-indeterminate{opacity:1;backface-visibility:visible}.collapse-title{grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.avatar{vertical-align:middle;display:inline-flex;position:relative}.avatar>div{aspect-ratio:1;display:block;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.checkbox{border:var(--border) solid var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.checkbox{border:var(--border) solid var(--input-color,color-mix(in oklab, var(--color-base-content) 20%, #0000))}}.checkbox{cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 0 #0000 inset, 0 0 #0000;--size:calc(var(--size-selector,.25rem) * 6);width:var(--size);height:var(--size);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * .1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:0deg}}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:0deg}}.checkbox:indeterminate{background-color:var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.checkbox:indeterminate{background-color:var(--input-color,color-mix(in oklab, var(--color-base-content) 20%, #0000))}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:0deg}.radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border) solid var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative}@supports (color:color-mix(in lab, red, red)){.radio{border:var(--border) solid var(--input-color,color-mix(in srgb, currentColor 20%, #0000))}}.radio{box-shadow:0 1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset;--size:calc(var(--size-selector,.25rem) * 6);width:var(--size);height:var(--size);color:var(--input-color,currentColor)}.radio:before{--tw-content:"";content:var(--tw-content);background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}.radio:focus-visible{outline:2px solid}.radio:checked,.radio[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor}@media (prefers-reduced-motion:no-preference){.radio:checked,.radio[aria-checked=true]{animation:.2s ease-out radio}}:is(.radio:checked,.radio[aria-checked=true]):before{box-shadow:0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * .1));background-color:currentColor}@media (forced-colors:active){:is(.radio:checked,.radio[aria-checked=true]):before{outline-style:var(--tw-outline-style);outline-offset:calc(1px * -1);outline-width:1px}}@media print{:is(.radio:checked,.radio[aria-checked=true]):before{outline-offset:-1rem;outline:.25rem solid}}.rating{vertical-align:middle;display:inline-flex;position:relative}.rating input{appearance:none;border:none}.rating :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem}@media (prefers-reduced-motion:no-preference){.rating :where(*){animation:.25s ease-out rating}}.rating :where(*):is(input){cursor:pointer}.rating .rating-hidden{background-color:#0000;width:.5rem}.rating input[type=radio]:checked{background-image:none}.rating :checked,.rating [aria-checked=true],.rating [aria-current=true],.rating :has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}.rating :focus-visible{scale:1.1}@media (prefers-reduced-motion:no-preference){.rating :focus-visible{transition:scale .2s ease-out}}.rating :active:focus{animation:none;scale:1.1}.navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative}.card:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.card:focus{outline-offset:2px;outline:2px solid #0000}}.card:focus-visible{outline-color:currentColor}.card :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}.card :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}.card figure{justify-content:center;align-items:center;display:flex}.card:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;-webkit-user-select:none;user-select:none}.card:has(>:checked){outline:2px solid}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.progress{appearance:none;border-radius:var(--radius-box);background-color:currentColor;width:100%;height:.5rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.progress{background-color:color-mix(in oklab, currentcolor 20%, transparent)}}.progress{color:var(--color-base-content)}.progress:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%}@media (prefers-reduced-motion:no-preference){.progress:indeterminate{animation:5s ease-in-out infinite progress}}@supports ((-moz-appearance:none)){.progress:indeterminate::-moz-progress-bar{background-color:#0000}@media (prefers-reduced-motion:no-preference){.progress:indeterminate::-moz-progress-bar{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}.progress::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){.progress::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}.textarea{border:var(--border) solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);min-height:5rem;font-size:max(var(--font-size,.875rem), .875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;flex-shrink:1;padding-block:.5rem;padding-inline:.75rem}@supports (color:color-mix(in lab, red, red)){.textarea{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset}}.textarea{--input-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.textarea{--input-color:color-mix(in oklab, var(--color-base-content) 20%, #0000)}}.textarea textarea{appearance:none;background-color:#0000;border:none}.textarea textarea:focus,.textarea textarea:focus-within{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.textarea textarea:focus,.textarea textarea:focus-within{outline-offset:2px;outline:2px solid #0000}}.textarea:focus,.textarea:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab, red, red)){.textarea:focus,.textarea:focus-within{box-shadow:0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000)}}.textarea:focus,.textarea:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media (pointer:coarse){@supports (-webkit-touch-callout:none){.textarea:focus,.textarea:focus-within{--font-size:1rem}}}.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){color:color-mix(in oklab, var(--color-base-content) 40%, transparent)}}:is(.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]))::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){:is(.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]))::placeholder{color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.textarea:has(>textarea[disabled]),.textarea:is(:disabled,[disabled]){box-shadow:none}.textarea:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}.stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid}.stack>*{width:100%;height:100%}.stack>:nth-child(n+2){opacity:.7;width:100%}.stack>:nth-child(2){z-index:2;opacity:.9}.stack>:first-child{z-index:3;width:100%}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.tab-content{order:var(--tabcontent-order);--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box);--tabcontent-order:1;width:100%;height:calc(100% - var(--tab-height) + var(--border));margin:var(--tabcontent-margin);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:.95;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.timeline-middle{grid-row-start:2;grid-column-start:2}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab, red, red)){.stat-desc{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.stat-desc{font-size:.75rem}.stat-title{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab, red, red)){.stat-title{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.stat-title{font-size:.75rem}.chat-image{grid-row:span 2/span 2;align-self:flex-end}.chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:var(--color-base-content);flex-direction:row;align-self:stretch;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.divider{--divider-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.divider:before,.divider:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{--tw-content:"×";content:var(--tw-content)}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.label{white-space:nowrap;color:currentColor;align-items:center;gap:.375rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.label{color:color-mix(in oklab, currentcolor 60%, transparent)}}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border) solid currentColor;margin-inline:-.75rem .75rem}@supports (color:color-mix(in lab, red, red)){.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border) solid color-mix(in oklab, currentColor 10%, #0000)}}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border) solid currentColor;margin-inline:.75rem -.75rem}@supports (color:color-mix(in lab, red, red)){.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border) solid color-mix(in oklab, currentColor 10%, #0000)}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border) solid var(--badge-color,var(--color-base-200));background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem) * 6);width:fit-content;height:var(--size);padding-inline:calc(var(--size) / 2 - var(--border));justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border) solid var(--color-base-content);justify-content:center;align-items:center;padding-inline:.5em;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.kbd{border:var(--border) solid color-mix(in srgb, var(--color-base-content) 20%, #0000)}}.kbd{border-bottom:calc(var(--border) + 1px) solid var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.kbd{border-bottom:calc(var(--border) + 1px) solid color-mix(in srgb, var(--color-base-content) 20%, #0000)}}.kbd{--size:calc(var(--size-selector,.25rem) * 6);height:var(--size);min-width:var(--size);font-size:.875rem}.text-rotate{vertical-align:bottom;white-space:nowrap;--duration:var(--tw-duration);transition-property:none;display:inline-block;overflow:hidden}.text-rotate>*{height:calc(var(--items,1) * 100%);justify-items:start;display:grid}.text-rotate>:has(:nth-child(2)){--items:2;animation:rotator var(--duration,10s) linear(0 0% 49%, .5 50% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(3)){--items:3;animation:rotator var(--duration,10s) linear(0 0% 32%, .333333 33% 65%, .666666 66% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(4)){--items:4;animation:rotator var(--duration,10s) linear(0 0% 24%, .25 25% 49%, .5 50% 74%, .75 75% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(5)){--items:5;animation:rotator var(--duration,10s) linear(0 0% 19%, .2 20% 39%, .4 40% 59%, .6 60% 79%, .8 80% 99%, 1 100% 100%) infinite}.text-rotate>:has(:nth-child(6)){--items:6;animation:rotator var(--duration,10s) linear(0 0% 15%, .16666 16% 32%, .333333 33% 49%, .5 50% 65%, .666666 66% 82%, .833333 83% 99%, 1 100% 100%) infinite}.text-rotate>*>*{clip-path:inset(.5px 0);align-content:baseline}.text-rotate>*>:first-child{translate:var(--first-item-position)}.text-rotate:hover>*{animation-play-state:paused}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem) * 10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border) dashed currentColor}@supports (color:color-mix(in lab, red, red)){.stat:not(:last-child){border-inline-end:var(--border) dashed color-mix(in oklab, currentColor 10%, #0000)}}.stat:not(:last-child){border-block-end:none}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex}.card-body :where(p){flex-grow:1}.carousel{scroll-snap-type:x mandatory;scrollbar-width:none;display:inline-flex;overflow-x:scroll}@media (prefers-reduced-motion:no-preference){.carousel{scroll-behavior:smooth}}.carousel::-webkit-scrollbar{display:none}.alert{--alert-border-color:var(--color-base-200);border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;background-size:auto, calc(var(--noise) * 100%);background-image:none, var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * .08)) inset, 0 1px #000, 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * .08));border-style:solid;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}@supports (color:color-mix(in lab, red, red)){.alert{box-shadow:0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * .08)) inset, 0 1px color-mix(in oklab, color-mix(in oklab, #000 20%, var(--alert-color,var(--color-base-200))) calc(var(--depth) * 20%), #0000), 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * .08))}}.alert:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}.fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");grid-auto-rows:min-content;column-gap:.75rem;padding-block:.25rem;display:grid}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.mask{vertical-align:middle;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.skeleton{border-radius:var(--radius-box);background-color:var(--color-base-300)}@media (prefers-reduced-motion:reduce){.skeleton{transition-duration:15s}}.skeleton{will-change:background-position;background-image:linear-gradient(105deg, #0000 0% 40%, var(--color-base-100) 50%, #0000 60% 100%);background-position-x:-50%;background-size:200%}@media (prefers-reduced-motion:no-preference){.skeleton{animation:1.8s ease-in-out infinite skeleton}}.timeline-box{border:var(--border) solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}}@layer daisyui.l1.l2{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;transition:visibility 0s allow-discrete, background-color .3s ease-out, opacity .1s ease-out;background-color:oklch(0% 0 0/.4)}:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal) .modal-box{opacity:1;translate:0;scale:1}:root:has(:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}@starting-style{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{opacity:0}}:where(.drawer-toggle:checked~.drawer-side){pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto}:where(.drawer-toggle:checked~.drawer-side)>:not(.drawer-overlay){translate:0%}.drawer-toggle:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off) 50%}.tooltip:after{transform:translateX(-50%) translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail) 50%}.collapse-arrow>.collapse-title:after{width:.5rem;height:.5rem;display:block;position:absolute;transform:translateY(-100%)rotate(45deg)}@media (prefers-reduced-motion:no-preference){.collapse-arrow>.collapse-title:after{transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}}.collapse-arrow>.collapse-title:after{content:"";transform-origin:75% 75%;pointer-events:none;top:50%;inset-inline-end:1.4rem;box-shadow:2px 2px}.btn:disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn:disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn:disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn:disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn:disabled{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}.btn[disabled]:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn[disabled]:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab, var(--color-base-content) 10%, transparent)}}.btn[disabled]:not(.btn-link,.btn-ghost){box-shadow:none}.btn[disabled]{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.btn[disabled]{--btn-fg:color-mix(in oklch, var(--color-base-content) 20%, #0000)}}@media (prefers-reduced-motion:no-preference){.collapse[open].collapse-arrow>.collapse-title:after,.collapse.collapse-open.collapse-arrow>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}.collapse.collapse-open.collapse-plus>.collapse-title:after{--tw-content:"−";content:var(--tw-content)}:is(.collapse[tabindex].collapse-arrow:focus:not(.collapse-close),.collapse.collapse-arrow[tabindex]:focus-within:not(.collapse-close))>.collapse-title:after,.collapse.collapse-arrow:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}.collapse[open].collapse-plus>.collapse-title:after,.collapse[tabindex].collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse.collapse-plus:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{--tw-content:"−";content:var(--tw-content)}.list .list-row:has(.list-col-grow:first-child){--list-grid-cols:1fr}.list .list-row:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr}.list .list-row>*{grid-row-start:1}.steps .step-neutral+.step-neutral:before,.steps .step-neutral:after,.steps .step-neutral>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}.steps .step-primary+.step-primary:before,.steps .step-primary:after,.steps .step-primary>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}.steps .step-secondary+.step-secondary:before,.steps .step-secondary:after,.steps .step-secondary>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}.steps .step-accent+.step-accent:before,.steps .step-accent:after,.steps .step-accent>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}.steps .step-info+.step-info:before,.steps .step-info:after,.steps .step-info>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}.steps .step-success+.step-success:before,.steps .step-success:after,.steps .step-success>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}.steps .step-warning+.step-warning:before,.steps .step-warning:after,.steps .step-warning>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}.steps .step-error+.step-error:before,.steps .step-error:after,.steps .step-error>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}.checkbox:disabled,.radio:disabled{cursor:not-allowed;opacity:.2}.rating.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}.rating.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}.rating.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}.rating.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}.rating.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}:where(.navbar){position:relative}.tooltip-right>.tooltip-content,.tooltip-right[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem)) translateY(-50%);inset:50% auto auto var(--tt-off)}.tooltip-right:after{transform:translateX(var(--tt-pos,-.25rem)) translateY(-50%) rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}.chat-end{grid-template-columns:1fr auto;place-items:end}.chat-end .chat-header,.chat-end .chat-footer{grid-column-start:1}.chat-end .chat-image{grid-column-start:2}.chat-end .chat-bubble{border-end-end-radius:0;grid-column-start:1}.chat-end .chat-bubble:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] :is(.chat-end .chat-bubble):before{transform:rotateY(0)}.chat-start{grid-template-columns:auto 1fr;place-items:start}.chat-start .chat-header,.chat-start .chat-footer{grid-column-start:2}.chat-start .chat-image{grid-column-start:1}.chat-start .chat-bubble{border-end-start-radius:0;grid-column-start:2}.chat-start .chat-bubble:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] :is(.chat-start .chat-bubble):before{transform:rotateY(180deg)}.btn-active{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab, red, red)){.btn-active{--btn-bg:color-mix(in oklab, var(--btn-color,var(--color-base-200)), #000 7%)}}.btn-active{--btn-shadow:0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);isolation:isolate}:is(.stack,.stack.stack-bottom)>*{grid-area:3/3/6/4}:is(.stack,.stack.stack-bottom)>:nth-child(2){grid-area:2/2/5/5}:is(.stack,.stack.stack-bottom)>:first-child{grid-area:1/1/4/6}.stack.stack-top>*{grid-area:1/3/4/4}.stack.stack-top>:nth-child(2){grid-area:2/2/5/5}.stack.stack-top>:first-child{grid-area:3/1/6/6}.stack.stack-start>*{grid-area:3/1/4/4}.stack.stack-start>:nth-child(2){grid-area:2/2/5/5}.stack.stack-start>:first-child{grid-area:1/3/6/6}.stack.stack-end>*{grid-area:3/3/4/6}.stack.stack-end>:nth-child(2){grid-area:2/2/5/5}.stack.stack-end>:first-child{grid-area:1/1/6/4}.tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(3 * var(--radius-field));border-radius:calc(min(var(--tab-height) / 2, var(--radius-field)) + min(.25rem, var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 .5px oklch(0% 0 0 / calc(var(--depth) * .05)) inset;padding:.25rem}.tabs-box>.tab{border-radius:var(--radius-field);border-style:none}.tabs-box>.tab:focus-visible,.tabs-box>.tab:is(label:has(:checked:focus-visible)){outline-offset:2px}.tabs-box>.tab:focus-visible{z-index:1}.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px 1px -1px var(--color-neutral), 0 1px 6px -4px var(--color-neutral)}@supports (color:color-mix(in lab, red, red)){.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){box-shadow:0 1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px 1px -1px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 50%), #0000), 0 1px 6px -4px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 100%), #0000)}}@media (forced-colors:active){.tabs-box>:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]):not(.tab-disabled,[disabled]),.tabs-box>:is(input:checked),.tabs-box>:is(label:has(:checked)){border:1px solid}}.tabs-box>.tab-content{height:calc(100% - var(--tab-height) + var(--border) - .5rem);border-radius:calc(min(var(--tab-height) / 2, var(--radius-field)) + min(.25rem, var(--tabs-box-radius)) - var(--border));margin-top:.25rem}.drawer-end{grid-auto-columns:auto max-content}.drawer-end>.drawer-toggle~.drawer-content{grid-column-start:1}.drawer-end>.drawer-toggle~.drawer-side{grid-column-start:2;justify-items:end}.drawer-end>.drawer-toggle~.drawer-side>:not(.drawer-overlay){translate:100%}[dir=rtl] :is(.drawer-end>.drawer-toggle~.drawer-side>:not(.drawer-overlay)){translate:-100%}.drawer-end>.drawer-toggle:checked~.drawer-side>:not(.drawer-overlay){translate:0%}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.swap-rotate .swap-on,.swap-rotate input:indeterminate~.swap-on{rotate:45deg}.swap-rotate input:is(:checked,:indeterminate)~.swap-on,.swap-rotate.swap-active .swap-on{rotate:0deg}.swap-rotate input:is(:checked,:indeterminate)~.swap-off,.swap-rotate.swap-active .swap-off{rotate:-45deg}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.table-zebra tbody tr:where(:nth-child(2n)),.table-zebra tbody tr:where(:nth-child(2n)) :where(.table-pin-cols tr th){background-color:var(--color-base-200)}@media (hover:hover){:is(.table-zebra tbody tr.row-hover,.table-zebra tbody tr.row-hover:where(:nth-child(2n))):hover{background-color:var(--color-base-300)}}.skeleton-text{webkit-background-clip:text;color:#0000;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(105deg, var(--color-base-content) 0% 40%, var(--color-base-content) 50%, var(--color-base-content) 60% 100%)}@supports (color:color-mix(in lab, red, red)){.skeleton-text{background-image:linear-gradient(105deg, color-mix(in oklab, var(--color-base-content) 20%, transparent) 0% 40%, var(--color-base-content) 50%, color-mix(in oklab, var(--color-base-content) 20%, transparent) 60% 100%)}}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.mask-heart{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e")}.mask-star{-webkit-mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e")}.alert-error{color:var(--color-error-content);--alert-border-color:var(--color-error);--alert-color:var(--color-error)}.alert-info{color:var(--color-info-content);--alert-border-color:var(--color-info);--alert-color:var(--color-info)}.alert-success{color:var(--color-success-content);--alert-border-color:var(--color-success);--alert-color:var(--color-success)}.alert-warning{color:var(--color-warning-content);--alert-border-color:var(--color-warning);--alert-color:var(--color-warning)}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem) * 12)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem) * 8)}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem) * 6)}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.range-xs{--range-thumb-size:calc(var(--size-selector,.25rem) * 4)}}.prose :where(a.btn:not(.btn-link)):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse:not(td,tr,colgroup){visibility:revert-layer}.validator:user-invalid~.validator-hint{display:revert-layer}.validator:has(:user-invalid)~.validator-hint{display:revert-layer}:is(.validator[aria-invalid]:not([aria-invalid=false]),.validator:has([aria-invalid]:not([aria-invalid=false])))~.validator-hint{display:revert-layer}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-10{top:calc(var(--spacing) * 10)}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-1\/4{right:25%}.bottom-10{bottom:calc(var(--spacing) * 10)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-1\/4{left:25%}.-z-0{z-index:calc(0 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[90\]{z-index:90}.z-\[100\]{z-index:100}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-4{margin:calc(var(--spacing) * 4)}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-auto{margin-inline:auto}.my-16{margin-block:calc(var(--spacing) * 16)}.-mt-10{margin-top:calc(var(--spacing) * -10)}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.icon-\[lucide--align-center\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M17 12H7m12 6H5M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 12H3m14 6H3M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--align-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H9m12 6H7M21 6H3'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--bold\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--calendar\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M8 2v4m8-4v4'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--check\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevron-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m15 18l-6-6l6-6'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevron-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m9 18l6-6l-6-6'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevrons-left\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m11 17l-5-5l5-5m7 10l-5-5l5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--chevrons-right\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 17l5-5l-5-5m7 10l5-5l-5-5'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--clock\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--code-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m18 16l4-4l-4-4M6 8l-4 4l4 4m8.5-12l-5 16'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eraser\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21m-7.752-9.91l8.828 8.828'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eye-off\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575a1 1 0 0 1 0 .696a10.8 10.8 0 0 1-1.444 2.49m-6.41-.679a3 3 0 0 1-4.242-4.242'/%3E%3Cpath d='M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 4.446-5.143M2 2l20 20'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--eye\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--indent-decrease\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M7 8l-4 4l4 4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--indent-increase\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 12H11m10 6H11M21 6H11M3 8l4 4l-4 4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--italic\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 4h-9m4 16H5M15 4L9 20'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--link\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--list-ordered\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M11 5h10m-10 7h10m-10 7h10M4 4h1v5M4 9h2m.5 11H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--list\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M3 5h.01M3 12h.01M3 19h.01M8 5h13M8 12h13M8 19h13'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--lock\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='18' height='11' x='3' y='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--moon\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--paperclip\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m16 6l-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--quote\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1a6 6 0 0 0 6-6V5a2 2 0 0 0-2-2zM5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1a6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--redo-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m15 14l5-5l-5-5'/%3E%3Cpath d='M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--search\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m21 21l-4.34-4.34'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--smile\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8 14s1.5 2 4 2s4-2 4-2M9 9h.01M15 9h.01'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--sun\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--underline\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 4v6a6 6 0 0 0 12 0V4M4 20h16'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--undo-2\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M9 14L4 9l5-5'/%3E%3Cpath d='M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--upload\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 3v12m5-7l-5-5l-5 5m14 7v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--user\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/g%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-\[lucide--x\]{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E");background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.kbd{box-shadow:none}.text-rotate{height:1lh}.alert{border-width:var(--border);border-color:var(--alert-border-color,var(--color-base-200))}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-12{height:calc(var(--spacing) * 12)}.h-20{height:calc(var(--spacing) * 20)}.h-48{height:calc(var(--spacing) * 48)}.h-96{height:calc(var(--spacing) * 96)}.h-auto{height:auto}.h-full{height:100%}.max-h-60{max-height:calc(var(--spacing) * 60)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[22rem\]{min-height:22rem}.min-h-full{min-height:100%}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-10{width:calc(var(--spacing) * 10)}.w-32{width:calc(var(--spacing) * 32)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-52{width:calc(var(--spacing) * 52)}.w-56{width:calc(var(--spacing) * 56)}.w-60{width:calc(var(--spacing) * 60)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-96{width:calc(var(--spacing) * 96)}.w-full{width:100%}.w-px{width:1px}.w-xs{width:var(--container-xs)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[200px\]{max-width:200px}.max-w-md{max-width:var(--container-md)}.min-w-\[48px\]{min-width:48px}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-10{--tw-translate-x:calc(var(--spacing) * 10);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-box{border-radius:var(--radius-box);border-radius:var(--radius-box)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-base-200\/30{border-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.border-base-200\/30{border-color:color-mix(in oklab, var(--color-base-200) 30%, transparent)}}.border-base-300{border-color:var(--color-base-300)}.border-base-content\/20{border-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.border-base-content\/20{border-color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.border-black\/5{border-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.border-black\/5{border-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.border-primary{border-color:var(--color-primary)}.bg-base-100,.bg-base-100\/50{background-color:var(--color-base-100)}@supports (color:color-mix(in lab, red, red)){.bg-base-100\/50{background-color:color-mix(in oklab, var(--color-base-100) 50%, transparent)}}.bg-base-200,.bg-base-200\/30{background-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.bg-base-200\/30{background-color:color-mix(in oklab, var(--color-base-200) 30%, transparent)}}.bg-base-200\/50{background-color:var(--color-base-200)}@supports (color:color-mix(in lab, red, red)){.bg-base-200\/50{background-color:color-mix(in oklab, var(--color-base-200) 50%, transparent)}}.bg-base-300{background-color:var(--color-base-300)}.bg-primary,.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--color-primary) 10%, transparent)}}.bg-primary\/20{background-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--color-primary) 20%, transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:#0000}.bg-linear-to-r{--tw-gradient-position:to right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-r{--tw-gradient-position:to right in oklab}}.bg-linear-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}@layer daisyui.l1{.alert-soft{color:var(--alert-color,var(--color-base-content));background:var(--alert-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.alert-soft{background:color-mix(in oklab, var(--alert-color,var(--color-base-content)) 8%, var(--color-base-100))}}.alert-soft{--alert-border-color:var(--alert-color,var(--color-base-content))}@supports (color:color-mix(in lab, red, red)){.alert-soft{--alert-border-color:color-mix(in oklab, var(--alert-color,var(--color-base-content)) 10%, var(--color-base-100))}}.alert-soft{box-shadow:none;background-image:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)):not(:disabled,[disabled],.btn-disabled){--btn-fg:var(--btn-color,currentColor);outline-color:currentColor}@media (hover:none){.btn-ghost:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color,currentColor);--btn-border:#0000;--btn-noise:none;outline-color:currentColor}}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn),:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){.btn-outline:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.from-secondary{--tw-gradient-from:var(--color-secondary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-accent{--tw-gradient-via:var(--color-accent);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-primary{--tw-gradient-to:var(--color-primary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-10{padding-inline:calc(var(--spacing) * 10)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.\!text-center{text-align:center!important}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.text-accent{color:var(--color-accent)}.text-base-content,.text-base-content\/60{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.text-base-content\/60{color:color-mix(in oklab, var(--color-base-content) 60%, transparent)}}.text-base-content\/90{color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.text-base-content\/90{color:color-mix(in oklab, var(--color-base-content) 90%, transparent)}}.text-error{color:var(--color-error)}.text-primary{color:var(--color-primary)}.text-primary-content{color:var(--color-primary-content)}.text-secondary{color:var(--color-secondary)}.text-secondary-content{color:var(--color-secondary-content)}.text-transparent{color:#0000}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-secondary\/20{--tw-shadow-color:var(--color-secondary)}@supports (color:color-mix(in lab, red, red)){.shadow-secondary\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-secondary) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-primary{--tw-ring-color:var(--color-primary)}.ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.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,)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));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,)}.drop-shadow-2xl{--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));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,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:z-10:hover{z-index:10}.hover\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-accent\/40:hover{border-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:border-accent\/40:hover{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.hover\:border-base-content\/20:hover{border-color:var(--color-base-content)}@supports (color:color-mix(in lab, red, red)){.hover\:border-base-content\/20:hover{border-color:color-mix(in oklab, var(--color-base-content) 20%, transparent)}}.hover\:border-primary\/40:hover{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab, var(--color-primary) 40%, transparent)}}.hover\:border-secondary\/40:hover{border-color:var(--color-secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-secondary\/40:hover{border-color:color-mix(in oklab, var(--color-secondary) 40%, transparent)}}.hover\:bg-base-200:hover{background-color:var(--color-base-200)}.hover\:bg-base-300:hover{background-color:var(--color-base-300)}.hover\:text-base-content:hover{color:var(--color-base-content)}}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media (min-width:48rem){.md\:h-64{height:calc(var(--spacing) * 64)}.md\:w-64{width:calc(var(--spacing) * 64)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-9xl{font-size:var(--text-9xl);line-height:var(--tw-leading,var(--text-9xl--line-height))}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (hover:hover){.\[\&_\.resizable-img-container\]\:hover\:border-primary .resizable-img-container:hover{border-color:var(--color-primary)}}.\[\&_blockquote\]\:border-l-4 blockquote{border-left-style:var(--tw-border-style);border-left-width:4px}.\[\&_blockquote\]\:border-base-300 blockquote{border-color:var(--color-base-300)}.\[\&_blockquote\]\:pl-4 blockquote{padding-left:calc(var(--spacing) * 4)}.\[\&_blockquote\]\:italic blockquote{font-style:italic}.\[\&_ol\]\:list-decimal ol{list-style-type:decimal}.\[\&_ol\]\:pl-8 ol{padding-left:calc(var(--spacing) * 8)}.\[\&_ul\]\:list-disc ul{list-style-type:disc}.\[\&_ul\]\:pl-8 ul{padding-left:calc(var(--spacing) * 8)}.\[\&\>div\]\:m-0>div{margin:calc(var(--spacing) * 0)}.\[\&\>div\]\:min-h-\[1em\]>div{min-height:1em}.\[\&\>p\]\:m-0>p{margin:calc(var(--spacing) * 0)}@keyframes fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.animate-fade-in{animation:.15s ease-out forwards fade-in}}:root{font-size:14px}.input,.label,.select,.textarea{transition:all .3s cubic-bezier(.4,0,.2,1)}:is(.input,.label,.select,.textarea):focus,:is(.input,.label,.select,.textarea):focus-within{box-shadow:0 0 4px;outline:none!important}:is(.input,.label,.select,.textarea):hover:not(:focus){background-color:oklch(from var(--color-base-100) calc(l - .03) c h)}.floating-label span{color:oklch(30% .01 260);font-size:1.1rem;transition:all .2s}.floating-label:focus-within span{color:oklch(25% .02 260);font-size:1.1rem}.floating-label:has(input:not(:placeholder-shown)) span{color:oklch(28% .01 260);font-size:1.1rem}.tab-content-inner{transform-origin:top;animation:.3s cubic-bezier(.4,0,.2,1) tabFadeIn}.input-container{flex-direction:column;width:100%;display:flex;position:relative}.input-container .input{align-items:center;width:100%;display:flex}.input-content{z-index:50;background:oklch(var(--b1));border:1px solid oklch(var(--bc) / .2);border-radius:var(--rounded-box,1rem);margin-top:.25rem;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a}.input-content .menu{width:100%}@keyframes tabFadeIn{0%{opacity:0;transform:scaleY(.95)}to{opacity:1;transform:scaleY(1)}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes dropdown{0%{opacity:0}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@keyframes rotator{89.9999%,to{--first-item-position:0 0%}90%,99.9999%{--first-item-position:0 calc(var(--items) * 100%)}to{translate:0 -100%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes menu{0%{opacity:0}}@keyframes progress{50%{background-position-x:-115%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}} \ No newline at end of file diff --git a/docs/sigpro-ui.min.js b/docs/sigpro-ui.min.js index 0c59a03..079df73 100644 --- a/docs/sigpro-ui.min.js +++ b/docs/sigpro-ui.min.js @@ -1 +1 @@ -(()=>{var{defineProperty:c,getOwnPropertyNames:Zr,getOwnPropertyDescriptor:Yr}=Object,gr=Object.prototype.hasOwnProperty;function qr(r){return this[r]}var Br=(r)=>{var n=(ar??=new WeakMap).get(r),f;if(n)return n;if(n=c({},"__esModule",{value:!0}),r&&typeof r==="object"||typeof r==="function"){for(var o of Zr(r))if(!gr.call(n,o))c(n,o,{get:qr.bind(r,o),enumerable:!(f=Yr(r,o))||f.enumerable})}return ar.set(r,n),n},ar;var Ir=(r)=>r;function Vr(r,n){this[r]=Ir.bind(null,n)}var _r=(r,n)=>{for(var f in n)c(r,f,{get:n[f],enumerable:!0,configurable:!0,set:Vr.bind(n,f)})};var hn={};_r(hn,{Utils:()=>Xr,Components:()=>Gr});var fr={};_r(fr,{rand:()=>sr,listKey:()=>Nr,isFn:()=>W,getBy:()=>G,get:()=>C,filterBy:()=>Er,cls:()=>w,close:()=>br,Tooltip:()=>vn,Toggle:()=>Mn,Toast:()=>mn,Timeline:()=>Fn,Textrotate:()=>dn,Textarea:()=>Dn,Tabs:()=>Hn,TableItems:()=>xn,Table:()=>On,SwapToggle:()=>Tr,SwapOn:()=>$r,SwapOff:()=>kr,Swap:()=>Jr,Steps:()=>In,Step:()=>Vn,Stack:()=>Bn,SkeletonText:()=>qn,Skeleton:()=>gn,Select:()=>Yn,RatingItems:()=>Zn,Rating:()=>Kn,Range:()=>Un,Radio:()=>Qn,Radial:()=>Xn,Progress:()=>Gn,Navbar:()=>Rn,Modal:()=>Pn,Menu:()=>zn,Loading:()=>kn,ListRows:()=>$n,List:()=>Tn,Kbd:()=>Jn,Input:()=>Lr,Indicator:()=>Ln,Icon:()=>d,Fileinput:()=>Wn,Fieldset:()=>An,Fab:()=>Cn,DropdownContent:()=>Wr,DropdownButton:()=>Ar,Dropdown:()=>Cr,DrawerToggle:()=>sn,DrawerSide:()=>Nn,DrawerOverlay:()=>Sn,DrawerContent:()=>bn,Drawer:()=>En,Divider:()=>jn,Datepicker:()=>wn,Colorpicker:()=>yn,ColorPalette:()=>jr,Checkbox:()=>ln,ChatImage:()=>en,ChatHeader:()=>un,ChatFooter:()=>_n,ChatBubble:()=>an,Chat:()=>on,CarouselItem:()=>fn,Carousel:()=>tn,CardTitle:()=>pr,CardBody:()=>rn,CardActions:()=>nn,Card:()=>hr,Calendar:()=>Sr,Button:()=>ir,Badge:()=>cr,Autocomplete:()=>vr,Alert:()=>Mr,Accordion:()=>mr});var z=(r)=>typeof r==="function",rr=(r)=>r&&typeof r==="object",Z=Array.isArray,P=typeof document<"u"?document:null,ur=(r)=>r?._isRuntime?r.container:r instanceof Node?r:P.createTextNode(r==null?"":String(r)),A=null,J=null,I=!1,O=0,x=new Set,er=new WeakMap,h=Symbol("iter"),p=new WeakMap,U=(r)=>{if(!r||r._disposed)return;r._disposed=!0;let n=[r];while(n.length){let f=n.pop();if(f._cleanups)f._cleanups.forEach((o)=>o()),f._cleanups.clear();if(f._children)f._children.forEach((o)=>n.push(o)),f._children.clear();if(f._deps)f._deps.forEach((o)=>o.delete(f)),f._deps.clear()}},Y=(r)=>{if(J)(J._cleanups||=new Set).add(r)},Or=(r)=>{let n=A;A=null;try{return r()}finally{A=n}},V=(r,n=!1)=>{let f=()=>{if(f._disposed)return;if(f._deps)f._deps.forEach((u)=>u.delete(f));if(f._cleanups)f._cleanups.forEach((u)=>u()),f._cleanups.clear();let o=A,_=J;A=J=f;try{return f._result=r()}catch(u){console.error("[SigPro]",u)}finally{A=o,J=_}};if(f._deps=f._cleanups=f._children=null,f._disposed=!1,f._isComputed=n,f._depth=A?A._depth+1:0,f._mounts=[],f._parent=J,J)(J._children||=new Set).add(f);return f},yr=()=>{if(I)return;I=!0;let r=Array.from(x).sort((n,f)=>n._depth-f._depth);x.clear();for(let n of r)if(!n._disposed)n();I=!1},xr=(r)=>{O++;try{return r()}finally{if(O--,O===0&&x.size>0&&!I)yr()}},k=(r,n=!1)=>{if(!n&&A&&!A._disposed)r.add(A),(A._deps||=new Set).add(r);else if(n&&r.size>0){let f=!1;for(let o of r){if(o===A||o._disposed)continue;if(o._isComputed){if(o._dirty=!0,o._subs)k(o._subs,!0)}else x.add(o),f=!0}if(f&&!I&&O===0)queueMicrotask(yr)}},j=(r,n=null)=>{let f=new Set;if(z(r)){let o,_=()=>{if(_._dirty){let u=A;A=_;try{let a=r();if(!Object.is(o,a))o=a,k(f,!0)}finally{A=u}_._dirty=!1}return k(f),o};if(_._isComputed=!0,_._subs=f,_._dirty=!0,_._deps=null,_._disposed=!1,_.stop=()=>{},J)Y(_.stop);return _}if(n)try{r=JSON.parse(localStorage.getItem(n))??r}catch(o){}return(...o)=>{if(o.length){let _=z(o[0])?o[0](r):o[0];if(!Object.is(r,_)){if(r=_,n)localStorage.setItem(n,JSON.stringify(r));k(f,!0)}}return k(f),r}},wr=(r)=>{if(!rr(r))return r;let n=er.get(r);if(n)return n;let f=new Map,o=(u)=>{let a=f.get(u);if(!a)f.set(u,a=new Set);return a},_=new Proxy(r,{get(u,a,e){if(typeof a!=="symbol")k(o(a));return wr(Reflect.get(u,a,e))},set(u,a,e,l){let y=Reflect.has(u,a),E=Reflect.get(u,a,l),s=Reflect.set(u,a,e,l);if(s&&!Object.is(E,e)){if(k(o(a),!0),!y)k(o(h),!0)}return s},deleteProperty(u,a){let e=Reflect.deleteProperty(u,a);if(e)k(o(a),!0),k(o(h),!0);return e},ownKeys(u){return k(o(h)),Reflect.ownKeys(u)}});return er.set(r,_),_},K=(r,n)=>{if(n===void 0){let o=V(r);return o(),()=>U(o)}let f=V(()=>{let o=Array.isArray(r)?r.map((_)=>_()):r();Or(()=>n(o))});return f(),()=>U(f)},nr=(r)=>{if(!r)return;if(r._cleanups)r._cleanups.forEach((n)=>n()),r._cleanups.clear();if(r._ownerEffect)U(r._ownerEffect);if(r.childNodes)r.childNodes.forEach((n)=>nr(n))},Hr=/^\s*(javascript|data|vbscript):/i,Dr=(r)=>r==="src"||r==="href"||r.startsWith("on"),lr=(r,n)=>{if(n==null||n===!1)return null;if(Dr(r)){let f=String(n);if(Hr.test(f))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${r}`),"#"}return n},t=(r,n={},f=[])=>{if(n instanceof Node||Z(n)||!rr(n))f=n,n={};if(z(r)){let a=V(()=>{let E=r(n,{children:f,emit:(s,...N)=>n[`on${s[0].toUpperCase()}${s.slice(1)}`]?.(...N)});return a._result=E,E});a();let e=a._result;if(e==null)return null;let l=e instanceof Node||Z(e)&&e.every((E)=>E instanceof Node)?e:P.createTextNode(String(e)),y=(E)=>{if(rr(E)&&!E._isRuntime)E._mounts=a._mounts||[],E._cleanups=a._cleanups||new Set,E._ownerEffect=a};return Z(l)?l.forEach(y):y(l),l}let o=/^(svg|path|circle|rect|line|poly(line|gon)|g|defs|text(path)?|tspan|use|symbol|image|marker|ellipse)$/i.test(r),_=o?P.createElementNS("http://www.w3.org/2000/svg",r):P.createElement(r);_._cleanups=new Set;for(let a in n){if(!n.hasOwnProperty(a))continue;let e=n[a];if(a==="ref"){z(e)?e(_):e.current=_;continue}if(o&&a.startsWith("xlink:")){e==null?_.removeAttributeNS("http://www.w3.org/1999/xlink",a.slice(6)):_.setAttributeNS("http://www.w3.org/1999/xlink",a.slice(6),e);continue}if(a.startsWith("on")){let l=a.slice(2).toLowerCase();_.addEventListener(l,e);let y=()=>_.removeEventListener(l,e);_._cleanups.add(y),Y(y)}else if(z(e)){let l=V(()=>{let y=lr(a,e());if(a==="class")_.className=y||"";else if(y==null)_.removeAttribute(a);else if(a in _&&!o)_[a]=y;else _.setAttribute(a,y===!0?"":y)});if(l(),_._cleanups.add(()=>U(l)),Y(()=>U(l)),/^(INPUT|TEXTAREA|SELECT)$/.test(_.tagName)&&(a==="value"||a==="checked")){let y=a==="checked"?"change":"input";_.addEventListener(y,(E)=>e(E.target[a]))}}else{let l=lr(a,e);if(l!=null)if(a in _&&!o)_[a]=l;else _.setAttribute(a,l===!0?"":l)}}let u=(a)=>{if(Z(a))return a.forEach(u);if(z(a)){let e=P.createTextNode("");_.appendChild(e);let l=[],y=V(()=>{let E=a(),s=(Z(E)?E:[E]).map(ur);l.forEach((i)=>{if(i._isRuntime)i.destroy();else nr(i);if(i.parentNode)i.remove()});let N=e;for(let i=s.length-1;i>=0;i--){let b=s[i];if(b.parentNode!==N.parentNode)N.parentNode?.insertBefore(b,N);if(b._mounts)b._mounts.forEach((S)=>S());N=b}l=s});y(),_._cleanups.add(()=>U(y)),Y(()=>U(y))}else{let e=ur(a);if(_.appendChild(e),e._mounts)e._mounts.forEach((l)=>l())}};return u(f),_},H=(r)=>{let n=new Set,f=J,o=A,_=P.createElement("div");_.style.display="contents",_.setAttribute("role","presentation"),J={_cleanups:n},A=null;let u=(a)=>{if(!a)return;if(a._isRuntime)n.add(a.destroy),_.appendChild(a.container);else if(Z(a))a.forEach(u);else _.appendChild(a instanceof Node?a:P.createTextNode(String(a==null?"":a)))};try{u(r({onCleanup:(a)=>n.add(a)}))}finally{J=f,A=o}return{_isRuntime:!0,container:_,destroy:()=>{n.forEach((a)=>a()),nr(_),_.remove()}}},g=(r,n,f=null)=>{let o=P.createTextNode(""),_=t("div",{style:"display:contents"},[o]),u=null;return K(()=>!!(z(r)?r():r),(a)=>{if(u)u.destroy(),u=null;let e=a?n:f;if(e)u=H(()=>z(e)?e():e),_.insertBefore(u.container,o)}),Y(()=>u?.destroy()),_},D=({name:r,duration:n=200,scale:f,slide:o,rotate:_,blur:u},a)=>{let e=typeof a==="function"?a():a;if(!(e instanceof Node))return e;if(r)return e.style.animation=`${r}-in ${n}ms`,e;let l=f||o||_||u,y=[f?"scale(0.95)":"",o?"translateY(-10px)":"",_?"rotate(-2deg)":""].filter(Boolean).join(" ");if(e.style.transition=`all ${n}ms ease`,e.style.opacity="0",l)e.style.transform=y;if(u)e.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(e.style.opacity="1",l)e.style.transform="none";if(u)e.style.filter="none"}),e},X=(r,n,f)=>{let o=P.createTextNode(""),_=t("div",{style:"display:contents"},[o]),u=new Map;return K(()=>(z(r)?r():r)||[],(a)=>{let e=new Map,l=[],y=a||[];for(let s=0;sn(N,s));else u.delete(i);e.set(i,b),l.push(b)}u.forEach((s)=>s.destroy());let E=o;for(let s=l.length-1;s>=0;s--){let N=l[s].container;if(N.nextSibling!==E)_.insertBefore(N,E);E=N}u=e}),_},q=(r)=>{let n=()=>window.location.hash.slice(1)||"/",f=j(n()),o=()=>f(n());window.addEventListener("hashchange",o),Y(()=>window.removeEventListener("hashchange",o));let _=t("div",{class:"router-hook"}),u=null;return K([f],()=>{let a=f(),e=r.find((l)=>{let y=l.path.split("/").filter(Boolean),E=a.split("/").filter(Boolean);return y.length===E.length&&y.every((s,N)=>s[0]===":"||s===E[N])})||r.find((l)=>l.path==="*");if(e){u?.destroy();let l={};e.path.split("/").filter(Boolean).forEach((y,E)=>{if(y[0]===":")l[y.slice(1)]=a.split("/").filter(Boolean)[E]}),q.params(l),u=H(()=>z(e.component)?e.component(l):e.component),_.replaceChildren(u.container)}}),_};q.params=j({});q.to=(r)=>window.location.hash=r.replace(/^#?\/?/,"#/");q.back=()=>window.history.back();q.path=()=>window.location.hash.replace(/^#/,"")||"/";var dr=({url:r,method:n="GET",headers:f={}})=>{let o=j(!1),_=j(null),u=j(null),a=null,e=null;return{run:async(l=null)=>{a?.abort(),clearTimeout(e),a=new AbortController,e=setTimeout(()=>a.abort(),1e4),o(!0),_(null);try{let y=l instanceof FormData,E=await fetch(r,{method:n,headers:y?f:{"Content-Type":"application/json",...f},body:y?l:l?JSON.stringify(l):void 0,signal:a.signal}),s=await E.text(),N=s?JSON.parse(s):null;if(!E.ok)throw Error(N?.message||E.statusText);return u(N),N}catch(y){if(y.name!=="AbortError")_(y.message);throw y}finally{o(!1),clearTimeout(e),a=null,e=null}},abort:()=>a?.abort(),loading:o,error:_,data:u}},tr=(r,n)=>{let f=typeof n==="string"?P.querySelector(n):n;if(!f)return;if(p.has(f))p.get(f).destroy();let o=H(z(r)?r:()=>r);return f.replaceChildren(o.container),p.set(f,o),o},Fr=Object.freeze({$:j,$$:wr,watch:K,h:t,when:g,each:X,fx:D,router:q,req:dr,mount:tr,batch:xr});if(typeof window<"u")Object.assign(window,Fr),"a abbr article aside audio b blockquote br button canvas caption cite code col colgroup datalist dd del details dfn dialog div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 header hr i iframe img input ins kbd label legend li main mark meter nav object ol optgroup option output p picture pre progress section select slot small source span strong sub summary sup svg table tbody td template textarea tfoot th thead time tr u ul video".split(" ").forEach((r)=>{window[r]=(n,f)=>t(r,n,f)});var C=(r)=>typeof r==="function"?r():r,G=(r,n="label")=>r&&typeof r==="object"?r[n]:r,w=(...r)=>r.filter(Boolean).join(" ").trim(),W=(r)=>typeof r==="function",Er=(r,n,f="label",o=String(n).toLowerCase())=>!n?C(r):C(r).filter((_)=>String(_&&typeof _==="object"?_[f]:_).toLowerCase().includes(o)),sr=(r)=>`${r}-${Math.random().toString(36).slice(2,9)}`,br=()=>document.activeElement?.blur(),Nr=(r,n)=>{let f=j(-1);return{cursor:f,onKey:(_,u)=>{let a=C(r),e=f(),l=a.length;if(!l)return;let y=_.key;y==="ArrowDown"?(_.preventDefault(),n(!0),f(Math.min(e+1,l-1))):y==="ArrowUp"?(_.preventDefault(),f(Math.max(e-1,0))):y==="Enter"?e>=0&&(_.preventDefault(),u(a[e])):y==="Escape"&&(n(!1),f(-1))}}},mr=(r)=>{let n=r.name||sr("acc");return X(r.items,(f)=>{return t("div",{class:w("collapse",r.class)},[t("input",{type:"radio",name:n,checked:f.open||void 0}),f.title?t("div",{class:w("collapse-title",`${f.classTitle??" font-semibold"}`)},f.title):null,f.content?t("div",{class:w("collapse-content text-sm",`${f.classContent??" font-semibold"}`)},f.content):null])})},Mr=(r,n)=>t("div",{...r,class:w("alert",r.class)},n),vr=({items:r,value:n,onselect:f,placeholder:o="Buscar...",..._})=>{let u=j(C(n)||""),a=j(!1),e=j(()=>Er(r,u())),{cursor:l,onKey:y}=Nr(e,a),E=(s)=>{let N=G(s),i=typeof s==="string"?s:s.value;if(u(N),W(n))n(i);f?.(s),a(!1)};return t("div",{class:"relative w-full"},[Lr({..._,type:"text",placeholder:o,value:u,left:t("span",{class:"icon-[lucide--search]"}),oninput:(s)=>{if(u(s.target.value),W(n))n(s.target.value);a(!0)},onfocus:()=>a(!0),onblur:()=>setTimeout(()=>{a(!1),l(-1)},150),onkeydown:(s)=>y(s,E)}),g(a,()=>D({duration:200,slide:!0},t("ul",{class:"absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap"},[X(e,(s,N)=>t("li",{},[t("a",{class:()=>l()===N?"active bg-primary text-primary-content":"",onmousedown:(i)=>i.preventDefault(),onclick:()=>E(s),onmouseenter:()=>l(N)},G(s))]),(s,N)=>G(s)+N),()=>e().length===0?t("li",{class:"p-4 opacity-50 text-center"},"Sin resultados"):null])))])},cr=(r,n)=>t("span",{...r,class:w("badge",r.class)},n),ir=(r,n)=>t("button",{...r,class:w("btn",r.class)},n),Sr=(r)=>{let n=j(new Date),f=j(null),o=j(0),_=j(0),u=new Date,a=`${u.getFullYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`,e=(b)=>`${b.getFullYear()}-${String(b.getMonth()+1).padStart(2,"0")}-${String(b.getDate()).padStart(2,"0")}`,l=()=>C(r.range)===!0,y=()=>C(r.value),E=(b)=>{let S=e(b),L=y();if(l())if(!L?.start||L.start&&L.end)r.onChange?.({start:S,end:null,...r.hour&&{startHour:o()}});else{let T=L.start,B=S{let S=n();n(new Date(S.getFullYear(),S.getMonth()+b,1))},N=(b)=>{let S=n();n(new Date(S.getFullYear()+b,S.getMonth(),1))},i=({value:b,onChange:S})=>t("div",{class:"flex-1"},[t("div",{class:"flex gap-2 items-center"},[t("input",{type:"range",min:0,max:23,value:b,class:"range range-xs flex-1",oninput:(L)=>S(+L.target.value)}),t("span",{class:"text-sm font-mono min-w-[48px] text-center"},()=>String(C(b)).padStart(2,"0")+":00")])]);return t("div",{class:w("p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box w-80 select-none",r.class)},[t("div",{class:"flex justify-between items-center mb-4 gap-1"},[t("div",{class:"flex gap-0.5"},[t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>N(-1)},t("span",{class:"icon-[lucide--chevrons-left]"})),t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>s(-1)},t("span",{class:"icon-[lucide--chevron-left]"}))]),t("span",{class:"font-bold uppercase flex-1 text-center"},()=>n().toLocaleString("es-ES",{month:"short",year:"numeric"})),t("div",{class:"flex gap-0.5"},[t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>s(1)},t("span",{class:"icon-[lucide--chevron-right]"})),t("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>N(1)},t("span",{class:"icon-[lucide--chevrons-right]"}))])]),t("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>f(null)},[...["L","M","X","J","V","S","D"].map((b)=>t("div",{class:"text-[10px] opacity-40 font-bold text-center"},b)),()=>{let b=n(),S=b.getFullYear(),L=b.getMonth(),T=new Date(S,L,1).getDay(),B=T===0?6:T-1,Qr=new Date(S,L+1,0).getDate(),F=[];for(let Q=0;Q{let R=y(),m=f(),Ur=typeof R==="string"?R.split("T")[0]===$:R?.start===$,Kr=R?.end===$,M=!1;if(l()&&R?.start){let v=R.start;if(!R.end&&m)M=$>v&&$<=m||$=m;else if(R.end)M=$>v&&$l()&&f($),onclick:()=>E(or)},Q.toString()))}return F}]),r.hour?t("div",{class:"mt-3 pt-2 border-t border-base-300"},l()?t("div",{class:"flex gap-4"},[i({value:o,onChange:(b)=>o(b)}),i({value:_,onChange:(b)=>_(b)})]):i({value:o,onChange:(b)=>o(b)})):null])},hr=(r,n)=>t("div",{...r,class:w("card",r.class)},n),pr=(r,n)=>t("div",{...r,class:w("card-title",r.class)},n),rn=(r,n)=>t("div",{...r,class:w("card-body",r.class)},n),nn=(r,n)=>t("div",{...r,class:w("card-actions",r.class)},n),tn=(r,n)=>t("div",{...r,class:w("carousel",r.class)},n),fn=(r,n)=>t("div",{...r,class:w("carousel-item",r.class)},n),on=(r,n)=>t("div",{...r,class:w("chat",r.class)},n),an=(r,n)=>t("div",{...r,class:w("chat-bubble",r.class)},n),_n=(r,n)=>t("div",{...r,class:w("chat-footer",r.class)},n),un=(r,n)=>t("div",{...r,class:w("chat-header",r.class)},n),en=(r,n)=>t("div",{...r,class:w("chat-image avatar",r.class)},t("div",{class:"w-10 rounded-full"},typeof n==="string"?t("img",{src:n,alt:"avatar"}):n)),ln=(r)=>t("input",{...r,type:"checkbox",class:w("checkbox",r.class)}),yn=(r)=>{let n=()=>C(r.value)||"#000000";return Cr({},[Ar({class:"btn"},[t("div",{class:"size-5 rounded-sm",style:()=>`background-color: ${n()}`}),r.label&&t("span",{},r.label)]),Wr({class:"p-3 bg-base-100 rounded-box shadow-xl w-64"},jr({value:r.value,onchange:(f)=>{W(r.value)?r.value(f):r.onchange?.(f),br()}}))])},jr=(r)=>{let n=()=>C(r.value)||"#000000",f=["#000","#1A1A1A","#333","#4D4D4D","#666","#808080","#B3B3B3","#FFF","#450a0a","#7f1d1d","#991b1b","#b91c1c","#dc2626","#ef4444","#f87171","#fca5a5","#431407","#7c2d12","#9a3412","#c2410c","#ea580c","#f97316","#fb923c","#ffedd5","#713f12","#a16207","#ca8a04","#eab308","#facc15","#fde047","#fef08a","#fff9c4","#064e3b","#065f46","#059669","#10b981","#34d399","#4ade80","#84cc16","#d9f99d","#082f49","#075985","#0284c7","#0ea5e9","#38bdf8","#7dd3fc","#22d3ee","#cffafe","#1e1b4b","#312e81","#4338ca","#4f46e5","#6366f1","#818cf8","#a5b4fc","#e0e7ff","#2e1065","#4c1d95","#6d28d9","#7c3aed","#8b5cf6","#a855f7","#d946ef","#fae8ff"],o=(_)=>W(r.value)?r.value(_):r.onchange?.(_);return t("div",{class:"grid grid-cols-8 gap-1"},f.map((_)=>t("button",{type:"button",style:`background-color: ${_}`,class:()=>{return`size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${n().toLowerCase()===_.toLowerCase()?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`},onclick:()=>o(_)})))},wn=(r)=>{let n=j(!1),f=j(""),o=()=>C(r.range)===!0;K(()=>{let u=C(r.value);if(!u)return f("");let a="";if(typeof u==="string")a=r.hour&&u.includes("T")?u.replace("T"," "):u;else if(u.start&&u.end){let e=r.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start,l=r.hour&&u.endHour!=null?`${u.end} ${String(u.endHour).padStart(2,"0")}:00`:u.end;a=`${e} - ${l}`}else if(u.start)a=`${r.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start}...`;f(a)});let _=(u)=>{if(W(r.value))r.value(u);else r.onChange?.(u);if(!o()||u?.end!=null)n(!1)};return t("div",{class:w("relative w-full",r.class)},[t("label",{class:"input input-bordered w-full",onclick:(u)=>{u.stopPropagation(),n(!n())}},[t("span",{class:"icon-[lucide--calendar]"}),t("input",{...r,type:"text",class:"grow",value:f,readonly:!0,placeholder:r.placeholder||(o()?"Seleccionar rango...":"Seleccionar fecha...")})]),g(n,()=>[t("div",{class:"fixed inset-0 z-[90]",onclick:()=>n(!1)}),t("div",{class:"absolute left-0 mt-2 z-[100]",onclick:(u)=>u.stopPropagation()},Sr({value:r.value,range:o(),hour:r.hour,onChange:_}))])])},En=(r,n)=>div({...r,class:w("drawer",r.class)},n),sn=(r)=>input({...r,type:"checkbox",class:"drawer-toggle",checked:()=>C(r.checked),onchange:(n)=>W(r.checked)&&r.checked(n.target.checked)}),bn=(r,n)=>div({...r,class:w("drawer-content",r.class)},n),Nn=(r,n)=>div({...r,class:w("drawer-side",r.class)},n),Sn=(r)=>label({...r,for:r.for,class:w("drawer-overlay",r.class)}),jn=(r)=>t("div",{...r,class:w("divider",r.class)}),Cr=(r,n)=>t("div",{...r,class:w("dropdown",r.class)},n),Ar=(r,n)=>t("div",{...r,tabindex:"0",role:"button",class:w("btn",r.class)},n),Wr=(r,n)=>t("div",{...r,tabindex:"0",class:w("dropdown-content",r.class)},n),Cn=(r,n)=>t("div",{class:"fab"},[t("div",{tabindex:"0",role:"button",class:w("btn",r.class)},d(r.icon)),n]),An=(r,n)=>t("fieldset",{class:w("fieldset",r.class)},[t("legend",{class:"fieldset-legend"},r.label),n]),Wn=(r)=>{let n=j([]),f=j(!1),o=j(null),_=(r.max||2)*1024*1024,u=(e)=>{let l=Array.from(e);if(o(null),l.some((E)=>E.size>_)){o(`Máx ${r.max||2}MB`);return}let y=[...n(),...l];if(n(y),W(r.onselect))r.onselect(y);else if(W(r.value))r.value(y)},a=(e)=>{let l=n().filter((y,E)=>E!==e);if(n(l),W(r.onselect))r.onselect(l);else if(W(r.value))r.value(l)};return t("div",{class:w("fieldset w-full p-0",r.class)},[t("label",{class:()=>`relative flex items-center justify-between w-full h-12 px-4 border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200 ${f()?"border-primary bg-primary/10":"border-base-content/20 bg-base-100 hover:bg-base-200"}`,ondragover:(e)=>{e.preventDefault(),f(!0)},ondragleave:()=>f(!1),ondrop:(e)=>{e.preventDefault(),f(!1),u(e.dataTransfer.files)}},[t("div",{class:"flex items-center gap-3 w-full"},[t("span",{class:"icon-[lucide--upload]"}),t("span",{class:"text-sm opacity-70 truncate grow text-left"},"Arrastra o selecciona archivos..."),t("span",{class:"text-[10px] opacity-40 shrink-0"},`Máx ${r.max||2}MB`)]),t("input",{type:"file",multiple:!0,accept:r.accept||"*",class:"hidden",onchange:(e)=>u(e.target.files)})]),()=>o()&&t("span",{class:"text-[10px] text-error mt-1 px-1 font-medium"},o()),g(()=>n().length>0,()=>t("ul",{class:"mt-2 space-y-1"},X(n,(e,l)=>t("li",{class:"flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300"},[t("div",{class:"flex items-center gap-2 truncate"},[t("span",{class:"opacity-50"},"\uD83D\uDCC4"),t("span",{class:"truncate font-medium max-w-[200px]"},e.name),t("span",{class:"text-[9px] opacity-40"},`(${(e.size/1024).toFixed(0)} KB)`)]),t("button",{type:"button",class:"btn btn-ghost btn-xs btn-circle",onclick:(y)=>{y.preventDefault(),a(l)}},t("span",{class:"icon-[lucide--x]"}))]))))])},d=(r)=>t("span",{class:r.startsWith("icon-")?r:""},r.startsWith("icon-")?null:r),Ln=(r,n)=>t("div",{...r,class:w("indicator",r.class)},[r.value&&t("span",{class:w("indicator-item badge",r.class)},r.value),n]),Lr=(r)=>{let{label:n,icon:f,float:o,placeholder:_,value:u,left:a,right:e,rule:l,hint:y,content:E,...s}=r,N=j(!1),i=j(!1),b=r.type==="password",S=l??null,L=()=>b?C(N)?"text":"password":r.type||"text";return t("div",{class:"input-container",onfocusin:()=>i(!0),onfocusout:(T)=>{if(!T.currentTarget.contains(T.relatedTarget))i(!1)}},[t("label",{class:o?"floating-label":""},[o?t("span",{},n):null,t("label",{pattern:S,class:()=>w("input validator",r.class)},[n&&!o?t("span",{class:"label"},n):null,a??null,t("input",{...s,type:L,class:"grow",pattern:S,placeholder:_||n||" ",value:u}),e??null,b?Jr({class:"ml-2"},[Tr({value:N,class:"swap-rotate"}),$r({},d("icon-[lucide--eye]")),kr({},d("icon-[lucide--eye-off]"))]):null]),y?t("div",{class:"validator-hint"},y):null,g(i,()=>D({duration:300,slide:!0},t("div",{class:"input-content",onmousedown:(T)=>T.preventDefault()},[W(E)?E(i):E])))])])},Jn=(r,n)=>t("kbd",{...r,class:w("kbd",r.class)},n),Tn=(r,n)=>t("ul",{...r,class:w("list",r.class)},n),$n=(r)=>()=>(C(r.items)||[]).map((n,f)=>t("li",{class:w("list-row",r.class,n?.class)},typeof r.render==="function"?r.render(n,f):n)),kn=(r,n)=>t("span",{...r,class:w("loading loading-spinner",r.class)},n),zn=(r)=>{if(r.children!==void 0)return t("ul",{class:w("menu",r.class),...r},r.children);let{items:n}=r,f=(o)=>o.children?t("li",{},t("details",{open:o.open||void 0},[t("summary",{},G(o)),t("ul",{},X(()=>C(o.children)||[],f))])):t("li",{},t("a",{href:o.href,onclick:o.onclick?(_)=>{if(!o.href)_.preventDefault();o.onclick(_)}:null},G(o)));return t("ul",{class:w("menu",r.class)},X(()=>C(n)||[],f))},Pn=(r)=>{let n=null;K(()=>{let o=C(r.open);if(!n)return;o?n.showModal():n.close()});let f=()=>W(r.open)&&r.open(!1);return t("dialog",{...r,ref:(o)=>n=o,class:w("modal",r.class),onclose:f,oncancel:f},[t("div",{class:"modal-box"},[r.title&&t("h3",{class:"text-lg font-bold"},r.title),r.children,t("div",{class:"modal-action"},[r.actions||ir({class:"btn",onclick:f},"Cerrar")])]),t("form",{method:"dialog",class:"modal-backdrop"},[t("button",{},"close")])])},Rn=(r,n)=>t("div",{...r,class:w("navbar",r.class)},n),Gn=(r)=>t("progress",{...r,class:w("progress",r.class)}),Xn=(r,n)=>t("div",{...r,class:w("radial-progress",r.class),style:`--value:${r.value??0};${r.style??""}`,role:"progressbar","aria-valuenow":r.value??0},n??`${r.value??0}%`),Qn=(r)=>t("input",{...r,type:"radio",class:w("radio",r.class)}),Un=(r)=>t("input",{...r,type:"range",class:w("range",r.class)}),Kn=(r,n)=>t("div",{...r,class:"rating"},n),Zn=(r)=>[...Array(r.count)].map((n,f)=>t("input",{class:w("mask",r.class),name:r.name,type:"radio",checked:()=>C(r.value)===f,onchange:()=>W(r.value)?r.value(f):r.onchange?.(f)})),Yn=(r,n)=>{if(n!==void 0)return t("select",{class:w("select",r.class),...r},n);let{label:f,float:o,placeholder:_,placeholderDisabled:u=!0,value:a,left:e,right:l,hint:y,items:E,keyFn:s,...N}=r,i=()=>{let b=C(E)||[];return[..._?[{disabled:u,label:_,value:""}]:[],...b]};return t("label",{class:o?"floating-label":""},[o?t("span",{},f):null,t("label",{class:w("select",N.class)},[!o&&f?t("span",{class:"label"},f):null,e??null,t("select",{value:()=>C(a),onchange:(b)=>W(a)?a(b.target.value):N.onchange?.(b)},X(i,(b)=>{let S=G(b,b.value!==void 0?"value":void 0),L=G(b,"label");return t("option",{value:S,disabled:b.disabled||void 0},L)})),l??null]),y?t("div",{class:"validator-hint"},y):null])},gn=(r)=>t("div",{...r,class:w("skeleton",r.class)}),qn=(r)=>t("span",{...r,class:w("skeleton skeleton-text",r.class)}),Bn=(r,n)=>t("div",{...r,class:w("stack",r.class)},n),In=(r,n)=>t("ul",{...r,class:w("steps",r.class)},n),Vn=(r,n)=>t("li",{...r,class:w("step",r.class),"data-content":r.dataContent},n),Jr=(r,n)=>t("label",{...r,class:w("swap",r.class)},n),Tr=(r)=>t("input",{type:"checkbox",checked:()=>C(r.value),onchange:(n)=>W(r.value)&&r.value(n.target.checked),class:r.class}),$r=(r,n)=>t("div",{...r,class:w("swap-on",r.class)},n),kr=(r,n)=>t("div",{...r,class:w("swap-off",r.class)},n),On=(r,n)=>t("table",{...r,class:w("table",r.class)},n),xn=({items:r,columns:n=[],header:f=!0})=>{let o=f!==!1&&n.some((u)=>u.label)?t("thead",{},t("tr",{},n.map((u)=>t("th",{class:u.class},u.label)))):null,_=t("tbody",{},()=>{return(C(r)||[]).map((a,e)=>t("tr",{},n.map((l)=>{let y=l.render?l.render(a,e):a[l.key];return t("td",{class:l.class},y)})))});return[o,_].filter(Boolean)},Hn=(r,n)=>{if(!r.items){let{class:y,...E}=r;return t("div",{...E,class:w("tabs",y)},n)}let{items:f,activeIndex:o,onClose:_,class:u,...a}=r,e=(y)=>W(y)?y():y,l=_||(W(f)?(y,E)=>{let N=e(f).filter((i,b)=>b!==y);if(f(N),o()>=N.length)o(Math.max(0,N.length-1))}:null);return t("div",{...a,class:w("tabs",u)},()=>{return(e(f)||[]).flatMap((E,s)=>{let N=()=>o()===s,i=t("button",{class:()=>`tab ${N()?"tab-active":""} ${E.class||""}`,onclick:(S)=>{S.preventDefault(),o(s),E.onclick?.(S)}},[G(E),E.closable?t("span",{class:"ml-1 inline-flex items-center justify-center w-4 h-4 rounded-full hover:bg-base-300 text-base-content/60 hover:text-base-content cursor-pointer",onclick:(S)=>{S.stopPropagation(),l?.(s,E)}},t("span",{class:"icon-[lucide--x] w-3 h-3"})):null]),b=t("div",{class:"tab-content bg-base-100 border-base-300 p-6",style:()=>`display: ${N()?"block":"none"};`},W(E.content)?E.content():E.content);return[i,b]})})},Dn=(r)=>t("textarea",{...r,class:w("textarea",r.class)}),dn=(r,n)=>t("span",{...r,class:w("text-rotate",r.class)},n),Fn=(r,n)=>t("ul",{...r,class:w("timeline",r.class)},n),mn=(r,n="alert-success",f=3500)=>{let o=document.getElementById("sigpro-toast-container");if(!o)o=t("div",{id:"sigpro-toast-container",class:"fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none"}),document.body.appendChild(o);let _=t("div",{style:"display: contents"});o.appendChild(_);let u,a,e,y=tr(()=>{let E=j(!1),s=j(!1);u=()=>{if(s())return;clearTimeout(a),clearTimeout(e),s(!0),setTimeout(()=>{if(y.destroy(),_.remove(),!o.hasChildNodes())o.remove()},300)},e=setTimeout(()=>E(!0),0);let N=typeof r==="function"?C(r):r,i=typeof N==="string"?t("span",{},N):N;return t("div",{class:()=>{if(s())return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-full opacity-0 pointer-events-auto`;if(E())return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-0 opacity-100 pointer-events-auto`;return`alert alert-soft ${n} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto`}},[i,t("button",{class:"btn btn-xs btn-circle btn-ghost",onclick:u},t("span",{class:"icon-[lucide--x]"}))])},_);if(f>0)a=setTimeout(u,f);return u},Mn=(r)=>t("input",{...r,type:"checkbox",class:w("toggle",r.class)}),vn=(r,n)=>t("div",{...r,class:w("tooltip",r.class),"data-tip":r.tip},n);var cn={es:{close:"Cerrar",confirm:"Confirmar",cancel:"Cancelar",search:"Buscar...",loading:"Cargando...",nodata:"Sin datos"},en:{close:"Close",confirm:"Confirm",cancel:"Cancel",search:"Search...",loading:"Loading...",nodata:"No data"}},zr=j("es"),Pr=(r)=>zr(r),Rr=(r)=>()=>cn[zr()][r]||r;var Gr={...fr},Xr={Locale:Pr,tt:Rr};if(typeof window<"u")Object.entries({...Gr,...Xr}).forEach(([r,n])=>{Object.defineProperty(window,r,{value:n,writable:!1,configurable:!0,enumerable:!0})}),console.log("SigProUI DX installed");})(); +(()=>{var{defineProperty:h,getOwnPropertyNames:Gt,getOwnPropertyDescriptor:Mt}=Object,Pt=Object.prototype.hasOwnProperty;function Ut(t){return this[t]}var Xt=(t)=>{var r=(at??=new WeakMap).get(t),e;if(r)return r;if(r=h({},"__esModule",{value:!0}),t&&typeof t==="object"||typeof t==="function"){for(var o of Gt(t))if(!Pt.call(r,o))h(r,o,{get:Ut.bind(t,o),enumerable:!(e=Mt(t,o))||e.enumerable})}return at.set(t,r),r},at;var Qt=(t)=>t;function Yt(t,r){this[t]=Qt.bind(null,r)}var ut=(t,r)=>{for(var e in r)h(t,e,{get:r[e],enumerable:!0,configurable:!0,set:Yt.bind(r,e)})};var pr={};ut(pr,{Utils:()=>qt,Components:()=>xt});var lt={};ut(lt,{Tooltip:()=>vr,Toggle:()=>Fr,Toast:()=>Hr,Timeline:()=>Dr,Textrotate:()=>cr,Textarea:()=>Vr,Tabs:()=>Or,TableItems:()=>Ir,Table:()=>Zr,SwapToggle:()=>gt,SwapOn:()=>mt,SwapOff:()=>Lt,Swap:()=>$t,Steps:()=>Qr,Step:()=>Yr,Stack:()=>Xr,SkeletonText:()=>Ur,Skeleton:()=>Pr,Select:()=>Mr,RatingItems:()=>Gr,Rating:()=>Br,Range:()=>Kr,Radio:()=>zr,Radial:()=>qr,Progress:()=>xr,Navbar:()=>Wr,Modal:()=>Rr,Menu:()=>Jr,Loading:()=>Lr,ListRows:()=>mr,List:()=>gr,Kbd:()=>$r,Input:()=>At,Indicator:()=>Ar,Icon:()=>X,Fileinput:()=>kr,Fieldset:()=>jr,Fab:()=>Cr,DropdownContent:()=>kt,DropdownButton:()=>jt,Dropdown:()=>Ct,DrawerToggle:()=>br,DrawerSide:()=>Nr,DrawerOverlay:()=>Sr,DrawerContent:()=>Er,Drawer:()=>dr,Divider:()=>Tr,Datepicker:()=>wr,Colorpicker:()=>yr,ColorPalette:()=>Tt,Checkbox:()=>_r,ChatImage:()=>ir,ChatHeader:()=>sr,ChatFooter:()=>ur,ChatBubble:()=>ar,Chat:()=>fr,CarouselItem:()=>lr,Carousel:()=>or,CardTitle:()=>rr,CardBody:()=>nr,CardActions:()=>er,Card:()=>tr,Calendar:()=>St,Button:()=>Nt,Badge:()=>pt,Autocomplete:()=>ht,Alert:()=>vt,Accordion:()=>Ft});var J=(t)=>typeof t==="function",rt=(t)=>t&&typeof t==="object",G=Array.isArray,R=typeof document<"u"?document:null,st=(t)=>t?._isRuntime?t.container:t instanceof Node?t:R.createTextNode(t==null?"":String(t)),C=null,A=null,Y=!1,I=0,O=new Set,it=new WeakMap,p=Symbol("iter"),tt=new WeakMap,K=(t)=>{if(!t||t._disposed)return;t._disposed=!0;let r=[t];while(r.length){let e=r.pop();if(e._cleanups)e._cleanups.forEach((o)=>o()),e._cleanups.clear();if(e._children)e._children.forEach((o)=>r.push(o)),e._children.clear();if(e._deps)e._deps.forEach((o)=>o.delete(e)),e._deps.clear()}},M=(t)=>{if(A)(A._cleanups||=new Set).add(t)},Zt=(t)=>{let r=C;C=null;try{return t()}finally{C=r}},Z=(t,r=!1)=>{let e=()=>{if(e._disposed)return;if(e._deps)e._deps.forEach((u)=>u.delete(e));if(e._cleanups)e._cleanups.forEach((u)=>u()),e._cleanups.clear();let o=C,a=A;C=A=e;try{return e._result=t()}catch(u){console.error("[SigPro]",u)}finally{C=o,A=a}};if(e._deps=e._cleanups=e._children=null,e._disposed=!1,e._isComputed=r,e._depth=C?C._depth+1:0,e._mounts=[],e._parent=A,A)(A._children||=new Set).add(e);return e},yt=()=>{if(Y)return;Y=!0;let t=Array.from(O).sort((r,e)=>r._depth-e._depth);O.clear();for(let r of t)if(!r._disposed)r();Y=!1},It=(t)=>{I++;try{return t()}finally{if(I--,I===0&&O.size>0&&!Y)yt()}},L=(t,r=!1)=>{if(!r&&C&&!C._disposed)t.add(C),(C._deps||=new Set).add(t);else if(r&&t.size>0){let e=!1;for(let o of t){if(o===C||o._disposed)continue;if(o._isComputed){if(o._dirty=!0,o._subs)L(o._subs,!0)}else O.add(o),e=!0}if(e&&!Y&&I===0)queueMicrotask(yt)}},S=(t,r=null)=>{let e=new Set;if(J(t)){let o,a=()=>{if(a._dirty){let u=C;C=a;try{let l=t();if(!Object.is(o,l))o=l,L(e,!0)}finally{C=u}a._dirty=!1}return L(e),o};if(a._isComputed=!0,a._subs=e,a._dirty=!0,a._deps=null,a._disposed=!1,a.stop=()=>{},A)M(a.stop);return a}if(r)try{t=JSON.parse(localStorage.getItem(r))??t}catch(o){}return(...o)=>{if(o.length){let a=J(o[0])?o[0](t):o[0];if(!Object.is(t,a)){if(t=a,r)localStorage.setItem(r,JSON.stringify(t));L(e,!0)}}return L(e),t}},wt=(t)=>{if(!rt(t))return t;let r=it.get(t);if(r)return r;let e=new Map,o=(u)=>{let l=e.get(u);if(!l)e.set(u,l=new Set);return l},a=new Proxy(t,{get(u,l,f){if(typeof l!=="symbol")L(o(l));return wt(Reflect.get(u,l,f))},set(u,l,f,s){let i=Reflect.has(u,l),y=Reflect.get(u,l,s),w=Reflect.set(u,l,f,s);if(w&&!Object.is(y,f)){if(L(o(l),!0),!i)L(o(p),!0)}return w},deleteProperty(u,l){let f=Reflect.deleteProperty(u,l);if(f)L(o(l),!0),L(o(p),!0);return f},ownKeys(u){return L(o(p)),Reflect.ownKeys(u)}});return it.set(t,a),a},B=(t,r)=>{if(r===void 0){let o=Z(t);return o(),()=>K(o)}let e=Z(()=>{let o=Array.isArray(t)?t.map((a)=>a()):t();Zt(()=>r(o))});return e(),()=>K(e)},nt=(t)=>{if(!t)return;if(t._cleanups)t._cleanups.forEach((r)=>r()),t._cleanups.clear();if(t._ownerEffect)K(t._ownerEffect);if(t.childNodes)t.childNodes.forEach((r)=>nt(r))},Ot=/^\s*(javascript|data|vbscript):/i,Vt=(t)=>t==="src"||t==="href"||t.startsWith("on"),_t=(t,r)=>{if(r==null||r===!1)return null;if(Vt(t)){let e=String(r);if(Ot.test(e))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${t}`),"#"}return r},n=(t,r={},e=[])=>{if(r instanceof Node||G(r)||!rt(r))e=r,r={};if(J(t)){let l=Z(()=>{let y=t(r,{children:e,emit:(w,...b)=>r[`on${w[0].toUpperCase()}${w.slice(1)}`]?.(...b)});return l._result=y,y});l();let f=l._result;if(f==null)return null;let s=f instanceof Node||G(f)&&f.every((y)=>y instanceof Node)?f:R.createTextNode(String(f)),i=(y)=>{if(rt(y)&&!y._isRuntime)y._mounts=l._mounts||[],y._cleanups=l._cleanups||new Set,y._ownerEffect=l};return G(s)?s.forEach(i):i(s),s}let o=/^(svg|path|circle|rect|line|poly(line|gon)|g|defs|text(path)?|tspan|use|symbol|image|marker|ellipse)$/i.test(t),a=o?R.createElementNS("http://www.w3.org/2000/svg",t):R.createElement(t);a._cleanups=new Set;for(let l in r){if(!r.hasOwnProperty(l))continue;let f=r[l];if(l==="ref"){J(f)?f(a):f.current=a;continue}if(o&&l.startsWith("xlink:")){f==null?a.removeAttributeNS("http://www.w3.org/1999/xlink",l.slice(6)):a.setAttributeNS("http://www.w3.org/1999/xlink",l.slice(6),f);continue}if(l.startsWith("on")){let s=l.slice(2).toLowerCase();a.addEventListener(s,f);let i=()=>a.removeEventListener(s,f);a._cleanups.add(i),M(i)}else if(J(f)){let s=Z(()=>{let i=_t(l,f());if(l==="class")a.className=i||"";else if(i==null)a.removeAttribute(l);else if(l in a&&!o)a[l]=i;else a.setAttribute(l,i===!0?"":i)});if(s(),a._cleanups.add(()=>K(s)),M(()=>K(s)),/^(INPUT|TEXTAREA|SELECT)$/.test(a.tagName)&&(l==="value"||l==="checked")){let i=l==="checked"?"change":"input";a.addEventListener(i,(y)=>f(y.target[l]))}}else{let s=_t(l,f);if(s!=null)if(l in a&&!o)a[l]=s;else a.setAttribute(l,s===!0?"":s)}}let u=(l)=>{if(G(l))return l.forEach(u);if(J(l)){let f=R.createTextNode("");a.appendChild(f);let s=[],i=Z(()=>{let y=l(),w=(G(y)?y:[y]).map(st);s.forEach((E)=>{if(E._isRuntime)E.destroy();else nt(E);if(E.parentNode)E.remove()});let b=f;for(let E=w.length-1;E>=0;E--){let d=w[E];if(d.parentNode!==b.parentNode)b.parentNode?.insertBefore(d,b);if(d._mounts)d._mounts.forEach((N)=>N());b=d}s=w});i(),a._cleanups.add(()=>K(i)),M(()=>K(i))}else{let f=st(l);if(a.appendChild(f),f._mounts)f._mounts.forEach((s)=>s())}};return u(e),a},V=(t)=>{let r=new Set,e=A,o=C,a=R.createElement("div");a.style.display="contents",a.setAttribute("role","presentation"),A={_cleanups:r},C=null;let u=(l)=>{if(!l)return;if(l._isRuntime)r.add(l.destroy),a.appendChild(l.container);else if(G(l))l.forEach(u);else a.appendChild(l instanceof Node?l:R.createTextNode(String(l==null?"":l)))};try{u(t({onCleanup:(l)=>r.add(l)}))}finally{A=e,C=o}return{_isRuntime:!0,container:a,destroy:()=>{r.forEach((l)=>l()),nt(a),a.remove()}}},P=(t,r,e=null)=>{let o=R.createTextNode(""),a=n("div",{style:"display:contents"},[o]),u=null;return B(()=>!!(J(t)?t():t),(l)=>{if(u)u.destroy(),u=null;let f=l?r:e;if(f)u=V(()=>J(f)?f():f),a.insertBefore(u.container,o)}),M(()=>u?.destroy()),a},ct=({name:t,duration:r=200,scale:e,slide:o,rotate:a,blur:u},l)=>{let f=typeof l==="function"?l():l;if(!(f instanceof Node))return f;if(t)return f.style.animation=`${t}-in ${r}ms`,f;let s=e||o||a||u,i=[e?"scale(0.95)":"",o?"translateY(-10px)":"",a?"rotate(-2deg)":""].filter(Boolean).join(" ");if(f.style.transition=`all ${r}ms ease`,f.style.opacity="0",s)f.style.transform=i;if(u)f.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(f.style.opacity="1",s)f.style.transform="none";if(u)f.style.filter="none"}),f},q=(t,r,e)=>{let o=R.createTextNode(""),a=n("div",{style:"display:contents"},[o]),u=new Map;return B(()=>(J(t)?t():t)||[],(l)=>{let f=new Map,s=[],i=l||[];for(let w=0;wr(b,w));else u.delete(E);f.set(E,d),s.push(d)}u.forEach((w)=>w.destroy());let y=o;for(let w=s.length-1;w>=0;w--){let b=s[w].container;if(b.nextSibling!==y)a.insertBefore(b,y);y=b}u=f}),a},U=(t)=>{let r=()=>window.location.hash.slice(1)||"/",e=S(r()),o=()=>e(r());window.addEventListener("hashchange",o),M(()=>window.removeEventListener("hashchange",o));let a=n("div",{class:"router-hook"}),u=null;return B([e],()=>{let l=e(),f=t.find((s)=>{let i=s.path.split("/").filter(Boolean),y=l.split("/").filter(Boolean);return i.length===y.length&&i.every((w,b)=>w[0]===":"||w===y[b])})||t.find((s)=>s.path==="*");if(f){u?.destroy();let s={};f.path.split("/").filter(Boolean).forEach((i,y)=>{if(i[0]===":")s[i.slice(1)]=l.split("/").filter(Boolean)[y]}),U.params(s),u=V(()=>J(f.component)?f.component(s):f.component),a.replaceChildren(u.container)}}),a};U.params=S({});U.to=(t)=>window.location.hash=t.replace(/^#?\/?/,"#/");U.back=()=>window.history.back();U.path=()=>window.location.hash.replace(/^#/,"")||"/";var Dt=({url:t,method:r="GET",headers:e={}})=>{let o=S(!1),a=S(null),u=S(null),l=null,f=null;return{run:async(s=null)=>{l?.abort(),clearTimeout(f),l=new AbortController,f=setTimeout(()=>l.abort(),1e4),o(!0),a(null);try{let i=s instanceof FormData,y=await fetch(t,{method:r,headers:i?e:{"Content-Type":"application/json",...e},body:i?s:s?JSON.stringify(s):void 0,signal:l.signal}),w=await y.text(),b=w?JSON.parse(w):null;if(!y.ok)throw Error(b?.message||y.statusText);return u(b),b}catch(i){if(i.name!=="AbortError")a(i.message);throw i}finally{o(!1),clearTimeout(f),l=null,f=null}},abort:()=>l?.abort(),loading:o,error:a,data:u}},et=(t,r)=>{let e=typeof r==="string"?R.querySelector(r):r;if(!e)return;if(tt.has(e))tt.get(e).destroy();let o=V(J(t)?t:()=>t);return e.replaceChildren(o.container),tt.set(e,o),o},Ht=Object.freeze({$:S,$$:wt,watch:B,h:n,when:P,each:q,fx:ct,router:U,req:Dt,mount:et,batch:It});if(typeof window<"u")Object.assign(window,Ht),"a abbr article aside audio b blockquote br button canvas caption cite code col colgroup datalist dd del details dfn dialog div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 header hr i iframe img input ins kbd label legend li main mark meter nav object ol optgroup option output p picture pre progress section select slot small source span strong sub summary sup svg table tbody td template textarea tfoot th thead time tr u ul video".split(" ").forEach((t)=>{window[t]=(r,e)=>n(t,r,e)});var T=(t)=>typeof t==="function"?t():t,x=(t,r="label")=>t&&typeof t==="object"?t[r]:t,_=(...t)=>t.filter(Boolean).join(" ").trim(),j=(t)=>typeof t==="function",dt=(t,r,e="label",o=String(r).toLowerCase())=>!r?T(t):T(t).filter((a)=>String(a&&typeof a==="object"?a[e]:a).toLowerCase().includes(o)),bt=(t)=>`${t}-${Math.random().toString(36).slice(2,9)}`,c=()=>document.activeElement?.blur(),Et=(t,r)=>{let e=$(-1);return{cursor:e,onKey:(a,u)=>{let l=T(t),f=e(),s=l.length;if(!s)return;let i=a.key;i==="ArrowDown"?(a.preventDefault(),r(!0),e(Math.min(f+1,s-1))):i==="ArrowUp"?(a.preventDefault(),e(Math.max(f-1,0))):i==="Enter"?f>=0&&(a.preventDefault(),u(l[f])):i==="Escape"&&(r(!1),e(-1))}}},ot=({name:t,duration:r=200,scale:e,slide:o,rotate:a,blur:u},l)=>{let f=typeof l==="function"?l():l;if(!(f instanceof Node))return f;if(t)return f.style.animation=`${t}-in ${r}ms`,f;let s=e||o||a||u,i=[e?"scale(0.95)":"",o?"translateY(-10px)":"",a?"rotate(-2deg)":""].filter(Boolean).join(" ");if(f.style.transition=`all ${r}ms ease`,f.style.opacity="0",s)f.style.transform=i;if(u)f.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(f.style.opacity="1",s)f.style.transform="none";if(u)f.style.filter="none"}),f};var Ft=(t)=>{let r=t.name||bt("acc");return q(t.items,(e)=>{return n("div",{class:_("collapse",t.class)},[n("input",{type:"radio",name:r,checked:e.open||void 0}),e.title?n("div",{class:_("collapse-title",`${e.classTitle??" font-semibold"}`)},e.title):null,e.content?n("div",{class:_("collapse-content text-sm",`${e.classContent??" font-semibold"}`)},e.content):null])})},vt=(t,r)=>n("div",{...t,class:_("alert",t.class)},r),ht=({items:t,value:r,onselect:e,placeholder:o="Buscar...",...a})=>{let u=S(T(r)||""),l=S(!1),f=S(()=>dt(t,u())),{cursor:s,onKey:i}=Et(f,l),y=(w)=>{let b=x(w),E=typeof w==="string"?w:w.value;if(u(b),j(r))r(E);e?.(w),l(!1)};return n("div",{class:"relative w-full"},[At({...a,type:"text",placeholder:o,value:u,left:n("span",{class:"icon-[lucide--search]"}),oninput:(w)=>{if(u(w.target.value),j(r))r(w.target.value);l(!0)},onfocus:()=>l(!0),onblur:()=>setTimeout(()=>{l(!1),s(-1)},150),onkeydown:(w)=>i(w,y)}),P(l,()=>ot({duration:200,slide:!0},n("ul",{class:"absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50 flex-col flex-nowrap"},[q(f,(w,b)=>n("li",{},[n("a",{class:()=>s()===b?"active bg-primary text-primary-content":"",onmousedown:(E)=>E.preventDefault(),onclick:()=>y(w),onmouseenter:()=>s(b)},x(w))]),(w,b)=>x(w)+b),()=>f().length===0?n("li",{class:"p-4 opacity-50 text-center"},"Sin resultados"):null])))])},pt=(t,r)=>n("span",{...t,class:_("badge",t.class)},r),Nt=(t,r)=>n("button",{...t,class:_("btn",t.class)},r),St=(t)=>{let r=S(new Date),e=S(null),o=S(0),a=S(0),u=new Date,l=`${u.getFullYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`,f=(d)=>`${d.getFullYear()}-${String(d.getMonth()+1).padStart(2,"0")}-${String(d.getDate()).padStart(2,"0")}`,s=()=>T(t.range)===!0,i=()=>T(t.value),y=(d)=>{let N=f(d),k=i();if(s())if(!k?.start||k.start&&k.end)t.onChange?.({start:N,end:null,...t.hour&&{startHour:o()}});else{let g=k.start,Q=N{let N=r();r(new Date(N.getFullYear(),N.getMonth()+d,1))},b=(d)=>{let N=r();r(new Date(N.getFullYear()+d,N.getMonth(),1))},E=({value:d,onChange:N})=>n("div",{class:"flex-1"},[n("div",{class:"flex gap-2 items-center"},[n("input",{type:"range",min:0,max:23,value:d,class:"range range-xs flex-1",oninput:(k)=>N(+k.target.value)}),n("span",{class:"text-sm font-mono min-w-[48px] text-center"},()=>String(T(d)).padStart(2,"0")+":00")])]);return n("div",{class:_("p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box w-80 select-none",t.class)},[n("div",{class:"flex justify-between items-center mb-4 gap-1"},[n("div",{class:"flex gap-0.5"},[n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>b(-1)},n("span",{class:"icon-[lucide--chevrons-left]"})),n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>w(-1)},n("span",{class:"icon-[lucide--chevron-left]"}))]),n("span",{class:"font-bold uppercase flex-1 text-center"},()=>r().toLocaleString("es-ES",{month:"short",year:"numeric"})),n("div",{class:"flex gap-0.5"},[n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>w(1)},n("span",{class:"icon-[lucide--chevron-right]"})),n("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>b(1)},n("span",{class:"icon-[lucide--chevrons-right]"}))])]),n("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>e(null)},[...["L","M","X","J","V","S","D"].map((d)=>n("div",{class:"text-[10px] opacity-40 font-bold text-center"},d)),()=>{let d=r(),N=d.getFullYear(),k=d.getMonth(),g=new Date(N,k,1).getDay(),Q=g===0?6:g-1,zt=new Date(N,k+1,0).getDate(),D=[];for(let z=0;z{let W=i(),H=e(),Kt=typeof W==="string"?W.split("T")[0]===m:W?.start===m,Bt=W?.end===m,F=!1;if(s()&&W?.start){let v=W.start;if(!W.end&&H)F=m>v&&m<=H||m=H;else if(W.end)F=m>v&&ms()&&e(m),onclick:()=>y(ft)},z.toString()))}return D}]),t.hour?n("div",{class:"mt-3 pt-2 border-t border-base-300"},s()?n("div",{class:"flex gap-4"},[E({value:o,onChange:(d)=>o(d)}),E({value:a,onChange:(d)=>a(d)})]):E({value:o,onChange:(d)=>o(d)})):null,n("div",{class:_("flex gap-2 mt-3 pt-2",!t.hour&&"border-t border-base-300")},[n("button",{type:"button",class:"btn btn-xs flex-1",onclick:()=>c()},X("icon-[lucide--x]"))])])},tr=(t,r)=>n("div",{...t,class:_("card",t.class)},r),rr=(t,r)=>n("div",{...t,class:_("card-title",t.class)},r),nr=(t,r)=>n("div",{...t,class:_("card-body",t.class)},r),er=(t,r)=>n("div",{...t,class:_("card-actions",t.class)},r),or=(t,r)=>n("div",{...t,class:_("carousel",t.class)},r),lr=(t,r)=>n("div",{...t,class:_("carousel-item",t.class)},r),fr=(t,r)=>n("div",{...t,class:_("chat",t.class)},r),ar=(t,r)=>n("div",{...t,class:_("chat-bubble",t.class)},r),ur=(t,r)=>n("div",{...t,class:_("chat-footer",t.class)},r),sr=(t,r)=>n("div",{...t,class:_("chat-header",t.class)},r),ir=(t,r)=>n("div",{...t,class:_("chat-image avatar",t.class)},n("div",{class:"w-10 rounded-full"},typeof r==="string"?n("img",{src:r,alt:"avatar"}):r)),_r=(t)=>n("input",{...t,type:"checkbox",class:_("checkbox",t.class)}),yr=(t)=>{let r=()=>T(t.value)||"#000000";return Ct({},[jt({class:"btn"},[n("div",{class:"size-5 rounded-sm",style:()=>`background-color: ${r()}`}),t.label&&n("span",{},t.label)]),kt({class:"p-3 bg-base-100 rounded-box shadow-xl w-64"},Tt({value:t.value,onchange:(e)=>{j(t.value)?t.value(e):t.onchange?.(e),c()}}))])},Tt=(t)=>{let r=()=>T(t.value)||"#000000",e=["#000","#1A1A1A","#333","#4D4D4D","#666","#808080","#B3B3B3","#FFF","#450a0a","#7f1d1d","#991b1b","#b91c1c","#dc2626","#ef4444","#f87171","#fca5a5","#431407","#7c2d12","#9a3412","#c2410c","#ea580c","#f97316","#fb923c","#ffedd5","#713f12","#a16207","#ca8a04","#eab308","#facc15","#fde047","#fef08a","#fff9c4","#064e3b","#065f46","#059669","#10b981","#34d399","#4ade80","#84cc16","#d9f99d","#082f49","#075985","#0284c7","#0ea5e9","#38bdf8","#7dd3fc","#22d3ee","#cffafe","#1e1b4b","#312e81","#4338ca","#4f46e5","#6366f1","#818cf8","#a5b4fc","#e0e7ff","#2e1065","#4c1d95","#6d28d9","#7c3aed","#8b5cf6","#a855f7","#d946ef","#fae8ff"],o=(a)=>j(t.value)?t.value(a):t.onchange?.(a);return[n("div",{class:"grid grid-cols-8 gap-1"},e.map((a)=>n("button",{type:"button",style:`background-color: ${a}`,class:()=>{return`size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 p-0 min-h-0 ${r().toLowerCase()===a.toLowerCase()?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`},onclick:()=>o(a)}))),n("button",{type:"button",class:"btn btn-xs w-full",onclick:()=>c()},X("icon-[lucide--x]"))]},wr=(t)=>{let r=S(!1),e=S(""),o=()=>T(t.range)===!0;B(()=>{let u=T(t.value);if(!u)return e("");let l="";if(typeof u==="string")l=t.hour&&u.includes("T")?u.replace("T"," "):u;else if(u.start&&u.end){let f=t.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start,s=t.hour&&u.endHour!=null?`${u.end} ${String(u.endHour).padStart(2,"0")}:00`:u.end;l=`${f} - ${s}`}else if(u.start)l=`${t.hour&&u.startHour!=null?`${u.start} ${String(u.startHour).padStart(2,"0")}:00`:u.start}...`;e(l)});let a=(u)=>{if(j(t.value))t.value(u);else t.onChange?.(u);if(!o()||u?.end!=null)r(!1)};return n("div",{class:_("relative w-full",t.class)},[n("label",{class:"input input-bordered w-full",onclick:(u)=>{u.stopPropagation(),r(!r())}},[n("span",{class:"icon-[lucide--calendar]"}),n("input",{...t,type:"text",class:"grow",value:e,readonly:!0,placeholder:t.placeholder||(o()?"Seleccionar rango...":"Seleccionar fecha...")})]),P(r,()=>[n("div",{class:"fixed inset-0 z-[90]",onclick:()=>r(!1)}),n("div",{class:"absolute left-0 mt-2 z-[100]",onclick:(u)=>u.stopPropagation()},St({value:t.value,range:o(),hour:t.hour,onChange:a}))])])},dr=(t,r)=>div({...t,class:_("drawer",t.class)},r),br=(t)=>input({...t,type:"checkbox",class:"drawer-toggle",checked:()=>T(t.checked),onchange:(r)=>j(t.checked)&&t.checked(r.target.checked)}),Er=(t,r)=>div({...t,class:_("drawer-content",t.class)},r),Nr=(t,r)=>div({...t,class:_("drawer-side",t.class)},r),Sr=(t)=>label({...t,for:t.for,class:_("drawer-overlay",t.class)}),Tr=(t)=>n("div",{...t,class:_("divider",t.class)}),Ct=(t,r)=>n("div",{...t,class:_("dropdown",t.class)},r),jt=(t,r)=>n("div",{...t,tabindex:"0",role:"button",class:_("btn",t.class)},r),kt=(t,r)=>n("div",{...t,tabindex:"0",class:_("dropdown-content",t.class)},r),Cr=(t,r)=>n("div",{class:"fab"},[n("div",{tabindex:"0",role:"button",class:_("btn",t.class)},X(t.icon)),r]),jr=(t,r)=>n("fieldset",{class:_("fieldset",t.class)},[n("legend",{class:"fieldset-legend"},t.label),r]),kr=(t)=>{let r=S([]),e=S(!1),o=S(null),a=(t.max||2)*1024*1024,u=(f)=>{let s=Array.from(f);if(o(null),s.some((y)=>y.size>a)){o(`Máx ${t.max||2}MB`);return}let i=[...r(),...s];if(r(i),j(t.onselect))t.onselect(i);else if(j(t.value))t.value(i)},l=(f)=>{let s=r().filter((i,y)=>y!==f);if(r(s),j(t.onselect))t.onselect(s);else if(j(t.value))t.value(s)};return n("div",{class:_("fieldset w-full p-0",t.class)},[n("label",{class:()=>`relative flex items-center justify-between w-full h-12 px-4 border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200 ${e()?"border-primary bg-primary/10":"border-base-content/20 bg-base-100 hover:bg-base-200"}`,ondragover:(f)=>{f.preventDefault(),e(!0)},ondragleave:()=>e(!1),ondrop:(f)=>{f.preventDefault(),e(!1),u(f.dataTransfer.files)}},[n("div",{class:"flex items-center gap-3 w-full"},[n("span",{class:"icon-[lucide--upload]"}),n("span",{class:"text-sm opacity-70 truncate grow text-left"},"Arrastra o selecciona archivos..."),n("span",{class:"text-[10px] opacity-40 shrink-0"},`Máx ${t.max||2}MB`)]),n("input",{type:"file",multiple:!0,accept:t.accept||"*",class:"hidden",onchange:(f)=>u(f.target.files)})]),()=>o()&&n("span",{class:"text-[10px] text-error mt-1 px-1 font-medium"},o()),P(()=>r().length>0,()=>n("ul",{class:"mt-2 space-y-1"},q(r,(f,s)=>n("li",{class:"flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300"},[n("div",{class:"flex items-center gap-2 truncate"},[n("span",{class:"opacity-50"},"\uD83D\uDCC4"),n("span",{class:"truncate font-medium max-w-[200px]"},f.name),n("span",{class:"text-[9px] opacity-40"},`(${(f.size/1024).toFixed(0)} KB)`)]),n("button",{type:"button",class:"btn btn-ghost btn-xs btn-circle",onclick:(i)=>{i.preventDefault(),l(s)}},n("span",{class:"icon-[lucide--x]"}))]))))])},X=(t)=>n("span",{class:t.startsWith("icon-")?t:""},t.startsWith("icon-")?null:t),Ar=(t,r)=>n("div",{...t,class:_("indicator",t.class)},[t.value&&n("span",{class:_("indicator-item badge",t.class)},t.value),r]),At=(t)=>{let{label:r,icon:e,float:o,placeholder:a,value:u,left:l,right:f,rule:s,hint:i,content:y,...w}=t,b=S(!1),E=S(!1),d=t.type==="password",N=s??null,k=()=>d?T(b)?"text":"password":t.type||"text";return n("div",{class:"input-container",onfocusin:()=>E(!0),onfocusout:(g)=>{if(!g.currentTarget.contains(g.relatedTarget))E(!1)}},[n("label",{class:o?"floating-label":""},[o?n("span",{},r):null,n("label",{pattern:N,class:()=>_("input validator",t.class)},[r&&!o?n("span",{class:"label"},r):null,l??null,n("input",{...w,type:k,class:"grow",pattern:N,placeholder:a||r||" ",value:u}),f??null,d?$t({class:"ml-2"},[gt({value:b,class:"swap-rotate"}),mt({},X("icon-[lucide--eye]")),Lt({},X("icon-[lucide--eye-off]"))]):null]),i?n("div",{class:"validator-hint"},i):null,P(E,()=>ot({duration:300,slide:!0},n("div",{class:"input-content",onmousedown:(g)=>g.preventDefault()},[j(y)?y(E):y])))])])},$r=(t,r)=>n("kbd",{...t,class:_("kbd",t.class)},r),gr=(t,r)=>n("ul",{...t,class:_("list",t.class)},r),mr=(t)=>()=>(T(t.items)||[]).map((r,e)=>n("li",{class:_("list-row",t.class,r?.class)},typeof t.render==="function"?t.render(r,e):r)),Lr=(t,r)=>n("span",{...t,class:_("loading loading-spinner",t.class)},r),Jr=(t)=>{if(t.children!==void 0)return n("ul",{class:_("menu",t.class),...t},t.children);let{items:r}=t,e=(o)=>o.children?n("li",{},n("details",{open:o.open||void 0},[n("summary",{},x(o)),n("ul",{},q(()=>T(o.children)||[],e))])):n("li",{},n("a",{href:o.href,onclick:o.onclick?(a)=>{if(!o.href)a.preventDefault();o.onclick(a)}:null},x(o)));return n("ul",{class:_("menu",t.class)},q(()=>T(r)||[],e))},Rr=(t)=>{let r=null;B(()=>{let o=T(t.open);if(!r)return;o?r.showModal():r.close()});let e=()=>j(t.open)&&t.open(!1);return n("dialog",{...t,ref:(o)=>r=o,class:_("modal",t.class),onclose:e,oncancel:e},[n("div",{class:"modal-box"},[t.title&&n("h3",{class:"text-lg font-bold"},t.title),t.children,n("div",{class:"modal-action"},[t.actions||Nt({class:"btn",onclick:e},"Cerrar")])]),n("form",{method:"dialog",class:"modal-backdrop"},[n("button",{},"close")])])},Wr=(t,r)=>n("div",{...t,class:_("navbar",t.class)},r),xr=(t)=>n("progress",{...t,class:_("progress",t.class)}),qr=(t,r)=>n("div",{...t,class:_("radial-progress",t.class),style:`--value:${t.value??0};${t.style??""}`,role:"progressbar","aria-valuenow":t.value??0},r??`${t.value??0}%`),zr=(t)=>n("input",{...t,type:"radio",class:_("radio",t.class)}),Kr=(t)=>n("input",{...t,type:"range",class:_("range",t.class)}),Br=(t,r)=>n("div",{...t,class:"rating"},r),Gr=(t)=>[...Array(t.count)].map((r,e)=>n("input",{class:_("mask",t.class),name:t.name,type:"radio",checked:()=>T(t.value)===e,onchange:()=>j(t.value)?t.value(e):t.onchange?.(e)})),Mr=(t,r)=>{if(r!==void 0)return n("select",{class:_("select",t.class),...t},r);let{label:e,float:o,placeholder:a,placeholderDisabled:u=!0,value:l,left:f,right:s,hint:i,items:y,keyFn:w,...b}=t,E=()=>{let d=T(y)||[];return[...a?[{disabled:u,label:a,value:""}]:[],...d]};return n("label",{class:o?"floating-label":""},[o?n("span",{},e):null,n("label",{class:_("select",b.class)},[!o&&e?n("span",{class:"label"},e):null,f??null,n("select",{value:()=>T(l),onchange:(d)=>j(l)?l(d.target.value):b.onchange?.(d)},q(E,(d)=>{let N=x(d,d.value!==void 0?"value":void 0),k=x(d,"label");return n("option",{value:N,disabled:d.disabled||void 0},k)})),s??null]),i?n("div",{class:"validator-hint"},i):null])},Pr=(t)=>n("div",{...t,class:_("skeleton",t.class)}),Ur=(t)=>n("span",{...t,class:_("skeleton skeleton-text",t.class)}),Xr=(t,r)=>n("div",{...t,class:_("stack",t.class)},r),Qr=(t,r)=>n("ul",{...t,class:_("steps",t.class)},r),Yr=(t,r)=>n("li",{...t,class:_("step",t.class),"data-content":t.dataContent},r),$t=(t,r)=>n("label",{...t,class:_("swap",t.class)},r),gt=(t)=>n("input",{type:"checkbox",checked:()=>T(t.value),onchange:(r)=>j(t.value)&&t.value(r.target.checked),class:t.class}),mt=(t,r)=>n("div",{...t,class:_("swap-on",t.class)},r),Lt=(t,r)=>n("div",{...t,class:_("swap-off",t.class)},r),Zr=(t,r)=>n("table",{...t,class:_("table",t.class)},r),Ir=({items:t,columns:r=[],header:e=!0})=>{let o=e!==!1&&r.some((u)=>u.label)?n("thead",{},n("tr",{},r.map((u)=>n("th",{class:u.class},u.label)))):null,a=n("tbody",{},()=>{return(T(t)||[]).map((l,f)=>n("tr",{},r.map((s)=>{let i=s.render?s.render(l,f):l[s.key];return n("td",{class:s.class},i)})))});return[o,a].filter(Boolean)},Or=(t,r)=>{if(!t.items){let{class:i,...y}=t;return n("div",{...y,class:_("tabs",i)},r)}let{items:e,activeIndex:o,onClose:a,class:u,...l}=t,f=(i)=>j(i)?i():i,s=a||(j(e)?(i,y)=>{let b=f(e).filter((E,d)=>d!==i);if(e(b),o()>=b.length)o(Math.max(0,b.length-1))}:null);return n("div",{...l,class:_("tabs",u)},()=>{return(f(e)||[]).flatMap((y,w)=>{let b=()=>o()===w,E=n("button",{class:()=>`tab ${b()?"tab-active":""} ${y.class||""}`,onclick:(N)=>{N.preventDefault(),o(w),y.onclick?.(N)}},[x(y),y.closable?n("span",{class:"ml-1 inline-flex items-center justify-center w-4 h-4 rounded-full hover:bg-base-300 text-base-content/60 hover:text-base-content cursor-pointer",onclick:(N)=>{N.stopPropagation(),s?.(w,y)}},n("span",{class:"icon-[lucide--x] w-3 h-3"})):null]),d=n("div",{class:"tab-content bg-base-100 border-base-300 p-6",style:()=>`display: ${b()?"block":"none"};`},j(y.content)?y.content():y.content);return[E,d]})})},Vr=(t)=>n("textarea",{...t,class:_("textarea",t.class)}),cr=(t,r)=>n("span",{...t,class:_("text-rotate",t.class)},r),Dr=(t,r)=>n("ul",{...t,class:_("timeline",t.class)},r),Hr=(t,r="alert-success",e=3500)=>{let o=document.getElementById("sigpro-toast-container");if(!o)o=n("div",{id:"sigpro-toast-container",class:"fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none"}),document.body.appendChild(o);let a=n("div",{style:"display: contents"});o.appendChild(a);let u,l,f,i=et(()=>{let y=S(!1),w=S(!1);u=()=>{if(w())return;clearTimeout(l),clearTimeout(f),w(!0),setTimeout(()=>{if(i.destroy(),a.remove(),!o.hasChildNodes())o.remove()},300)},f=setTimeout(()=>y(!0),0);let b=typeof t==="function"?T(t):t,E=typeof b==="string"?n("span",{},b):b;return n("div",{class:()=>{if(w())return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-full opacity-0 pointer-events-auto`;if(y())return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-0 opacity-100 pointer-events-auto`;return`alert alert-soft ${r} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto`}},[E,n("button",{class:"btn btn-xs btn-circle btn-ghost",onclick:u},n("span",{class:"icon-[lucide--x]"}))])},a);if(e>0)l=setTimeout(u,e);return u},Fr=(t)=>n("input",{...t,type:"checkbox",class:_("toggle",t.class)}),vr=(t,r)=>n("div",{...t,class:_("tooltip",t.class),"data-tip":t.tip},r);var hr={es:{close:"Cerrar",confirm:"Confirmar",cancel:"Cancelar",search:"Buscar...",loading:"Cargando...",nodata:"Sin datos"},en:{close:"Close",confirm:"Confirm",cancel:"Cancel",search:"Search...",loading:"Loading...",nodata:"No data"}},Jt=S("es"),Rt=(t)=>Jt(t),Wt=(t)=>()=>hr[Jt()][t]||t;var xt={...lt},qt={Locale:Rt,tt:Wt};if(typeof window<"u")Object.entries({...xt,...qt}).forEach(([t,r])=>{Object.defineProperty(window,t,{value:r,writable:!1,configurable:!0,enumerable:!0})}),console.log("SigProUI DX installed");})(); diff --git a/index.js b/index.js index e82756e..4ad3b69 100644 --- a/index.js +++ b/index.js @@ -1,96 +1,10 @@ -import * as AllModule from './components/All.js'; -// import * as EditorModule from './components/Editor.js'; -// import * as AccordionModule from './components/accordion.js'; -// import * as AlertModule from './components/alert.js'; -// import * as AutocompleteModule from './components/discarted/Autocomplete.js'; -// import * as BadgeModule from './components/badge.js'; -// import * as ButtonModule from './components/button.js'; -// import * as CalendarModule from './components/Calendar.js'; -// import * as CardModule from './components/card.js'; -// import * as CarouselModule from './components/carousel.js'; -// import * as ChatModule from './components/chat.js'; -// import * as CheckboxModule from './components/checkbox.js'; -// import * as ColorpickerModule from './components/Colorpicker.js'; -// import * as DatepickerModule from './components/Datepicker.js'; -// import * as DrawerModule from './components/drawer.js'; -// import * as DropdownModule from './components/dropdown.js'; -// import * as FabModule from './components/fab.js'; -// import * as FieldsetModule from './components/fieldset.js'; -// import * as FileinputModule from './components/fileinput.js'; -// import * as IconModule from './components/icon.js'; -// import * as IndicatorModule from './components/indicator.js'; -// import * as InputModule from './components/Input.js'; -// import * as KdbModule from './components/kbd.js'; -// import * as ListModule from './components/List.js'; -// import * as LoadingModule from './components/loading.js'; -// import * as MenuModule from './components/menu.js'; -// import * as ModalModule from './components/modal.js'; -// import * as NavbarModule from './components/navbar.js'; -// import * as RadialModule from './components/radial.js'; -// import * as RadioModule from './components/radio.js'; -// import * as RangeModule from './components/range.js'; -// import * as RatingModule from './components/rating.js'; -// import * as SkeletonModule from './components/skeleton.js'; -// import * as SelectModule from './components/discarted/Select.js'; -// import * as StackModule from './components/stack.js'; -// import * as StatModule from './components/stat.js'; -// import * as StepsModule from './components/stat.js'; -// import * as SwapModule from './components/swap.js'; -// import * as TableModule from './components/table.js'; -// import * as TabsModule from './components/tabs.js'; -// import * as TextareaModule from './components/textarea.js'; -// import * as TextrotateModule from './components/textrotate.js'; -// import * as TimelineModule from './components/timeline.js'; -// import * as ToastModule from './components/toast.js'; -// import * as TooltipModule from './components/tooltip.js'; -import { Locale, tt } from './utils.js'; +import * as All from './sigpro-components.js'; +// import * as Editor from './sigpro-editor.js'; +import { Locale, tt } from './sigpro-locale.js'; export const Components = { - ...AllModule, - // ...EditorModule, - // ...AccordionModule, - // ...AlertModule, - // ...AutocompleteModule, - // ...BadgeModule, - // ...ButtonModule, - // ...CalendarModule, - // ...CardModule, - // ...CarouselModule, - // ...ChatModule, - // ...CheckboxModule, - // ...ColorpickerModule, - // ...DatepickerModule, - // ...DrawerModule, - // ...DropdownModule, - // ...FabModule, - // ...FieldsetModule, - // ...FileinputModule, - // ...IconModule, - // ...IndicatorModule, - // ...InputModule, - // ...KdbModule, - // ...ListModule, - // ...LoadingModule, - // ...MenuModule, - // ...ModalModule, - // ...NavbarModule, - // ...RadialModule, - // ...RadioModule, - // ...RangeModule, - // ...RatingModule, - // ...SkeletonModule, - // ...SelectModule, - // ...StackModule, - // ...StatModule, - // ...StepsModule, - // ...SwapModule, - // ...TableModule, - // ...TabsModule, - // ...TextareaModule, - // ...TextrotateModule, - // ...TimelineModule, - // ...ToastModule, - // ...TooltipModule + ...All, + // ...Editor, }; export const Utils = { diff --git a/package.json b/package.json index 0b3768d..e396902 100644 --- a/package.json +++ b/package.json @@ -45,8 +45,8 @@ "scripts": { "del": "bun pm cache rm && rm -f bun.lockb $$ rm -f bun.lock", "clean": "rm -rf ./dist ./css/*.css ./docs/*.js ./docs/*.css", - "build:css": "tailwindcss -i ./sigpro.css -o ./dist/sigpro-ui.css --content './src/**/*.js' && du -h ./dist/sigpro-ui.css", - "build:cssmin": "tailwindcss -i ./sigpro.css -o ./dist/sigpro-ui.min.css --content './src/**/*.js' --minify && du -h ./dist/sigpro-ui.css", + "build:css": "tailwindcss -i ./sigpro-css.css -o ./dist/sigpro-ui.css --content './src/**/*.js' && du -h ./dist/sigpro-ui.css", + "build:cssmin": "tailwindcss -i ./sigpro-css.css -o ./dist/sigpro-ui.min.css --content './src/**/*.js' --minify && du -h ./dist/sigpro-ui.css", "build:js": "bun run build:js:iife && bun run build:js:esm", "build:js:iife": "bun build ./index.js --bundle --outfile=./dist/sigpro-ui.js --format=iife --global-name=SigProUI", "build:js:iife:min": "bun build ./index.js --bundle --outfile=./dist/sigpro-ui.min.js --format=iife --global-name=SigProUI --minify", diff --git a/components/All.js b/sigpro-components.js similarity index 94% rename from components/All.js rename to sigpro-components.js index 3fe9e47..ad7b7c5 100644 --- a/components/All.js +++ b/sigpro-components.js @@ -1,29 +1,7 @@ // All base components -import { h, each, watch, when, fx, mount, $ } from "sigpro"; +import { h, each, watch, when, mount, $ } from "sigpro"; +import { get, getBy, cls, isFn, filterBy, rand, close, listKey, fx } from "./sigpro-helpers.js" -// Helpers -export const get = val => typeof val === "function" ? val() : val; -export const getBy = (item, field = 'label') => (item && typeof item === 'object') ? item[field] : item; -export const cls = (...classes) => classes.filter(Boolean).join(' ').trim(); -export const isFn = f => typeof f === "function"; -export const filterBy = (items, query, field = 'label', q = String(query).toLowerCase()) => !query ? get(items) : get(items).filter(item => String(item && typeof item === 'object' ? item[field] : item).toLowerCase().includes(q)); -export const rand = (r) => `${r}-${Math.random().toString(36).slice(2, 9)}` -export const close = () => document.activeElement?.blur() -export const listKey = (items, isOpen) => { - const cursor = $(-1); - const onKey = (e, select) => { - const list = get(items), i = cursor(), len = list.length; - if (!len) return; - const k = e.key; - k === 'ArrowDown' ? (e.preventDefault(), isOpen(true), cursor(Math.min(i + 1, len - 1))) : - k === 'ArrowUp' ? (e.preventDefault(), cursor(Math.max(i - 1, 0))) : - k === 'Enter' ? (i >= 0 && (e.preventDefault(), select(list[i]))) : - k === 'Escape' ? (isOpen(false), cursor(-1)) : null; - }; - return { cursor, onKey }; -}; - -// Components export const Accordion = (p) => { const name = p.name || rand('acc') return each(p.items, (it) => { @@ -175,7 +153,12 @@ export const Calendar = (p) => { rangeMode() ? h('div', { class: 'flex gap-4' }, [HourSlider({ value: startHour, onChange: h => startHour(h) }), HourSlider({ value: endHour, onChange: h => endHour(h) })]) : HourSlider({ value: startHour, onChange: h => startHour(h) }) - ) : null + ) : null, + h('button', { + type: 'button', + class: 'btn btn-xs w-full', + onclick: () => close() + }, Icon('icon-[lucide--x]')) ]) } export const Card = (p, c) => h('div', { ...p, class: cls('card', p.class) }, c); @@ -198,7 +181,7 @@ export const Colorpicker = (p) => { p.label && h('span', {}, p.label) ]), DropdownContent({ class: 'p-3 bg-base-100 rounded-box shadow-xl w-64' }, - ColorPalette({ value: p.value, onchange: (c) => { isFn(p.value) ? p.value(c) : p.onchange?.(c); close(); } }) + ColorPalette({ value: p.value, onchange: (c) => { isFn(p.value) ? p.value(c) : p.onchange?.(c); } }) ) ]) } @@ -215,9 +198,9 @@ export const ColorPalette = (p) => { '#2e1065', '#4c1d95', '#6d28d9', '#7c3aed', '#8b5cf6', '#a855f7', '#d946ef', '#fae8ff' ] const pick = (c) => isFn(p.value) ? p.value(c) : p.onchange?.(c) - return h('div', { class: 'grid grid-cols-8 gap-1' }, - palette.map(c => - h('button', { + return [ + h('div', { class: 'grid grid-cols-8 gap-1' }, + palette.map(c => h('button', { type: 'button', style: `background-color: ${c}`, class: () => { @@ -226,8 +209,13 @@ export const ColorPalette = (p) => { }, onclick: () => pick(c) }) - ) - ) + ) + ), + h('button', { + type: 'button', + class: 'btn btn-xs w-full', + onclick: () => close() + }, Icon('icon-[lucide--x]'))] } export const Datepicker = (p) => { const isOpen = $(false) diff --git a/sigpro.css b/sigpro-css.css similarity index 100% rename from sigpro.css rename to sigpro-css.css diff --git a/components/Editor.js b/sigpro-editor.js similarity index 99% rename from components/Editor.js rename to sigpro-editor.js index b535f00..8d20a33 100644 --- a/components/Editor.js +++ b/sigpro-editor.js @@ -1,5 +1,5 @@ import { h, $ } from "sigpro" -import { get, cls, isFn } from "./All.js" +import { get, cls, isFn } from "./sigpro-helpers.js" export const Editor = (p) => { const { value, class: extraClass } = p diff --git a/sigpro-helpers.js b/sigpro-helpers.js new file mode 100644 index 0000000..cf8db8f --- /dev/null +++ b/sigpro-helpers.js @@ -0,0 +1,87 @@ +// Helpers +export const get = val => typeof val === "function" ? val() : val; +export const getBy = (item, field = 'label') => (item && typeof item === 'object') ? item[field] : item; +export const cls = (...classes) => classes.filter(Boolean).join(' ').trim(); +export const isFn = f => typeof f === "function"; +export const filterBy = (items, query, field = 'label', q = String(query).toLowerCase()) => !query ? get(items) : get(items).filter(item => String(item && typeof item === 'object' ? item[field] : item).toLowerCase().includes(q)); +export const rand = (r) => `${r}-${Math.random().toString(36).slice(2, 9)}` +export const close = () => document.activeElement?.blur() +export const listKey = (items, isOpen) => { + const cursor = $(-1); + const onKey = (e, select) => { + const list = get(items), i = cursor(), len = list.length; + if (!len) return; + const k = e.key; + k === 'ArrowDown' ? (e.preventDefault(), isOpen(true), cursor(Math.min(i + 1, len - 1))) : + k === 'ArrowUp' ? (e.preventDefault(), cursor(Math.max(i - 1, 0))) : + k === 'Enter' ? (i >= 0 && (e.preventDefault(), select(list[i]))) : + k === 'Escape' ? (isOpen(false), cursor(-1)) : null; + }; + return { cursor, onKey }; +}; +export const fx = ({ name, duration = 200, scale, slide, rotate, blur }, child) => { + const el = typeof child === "function" ? child() : child; + if (!(el instanceof Node)) return el; + if (name) { + el.style.animation = `${name}-in ${duration}ms`; + return el; + } + const hasTransform = scale || slide || rotate || blur; + const initialTransform = [ + scale ? "scale(0.95)" : "", + slide ? "translateY(-10px)" : "", + rotate ? "rotate(-2deg)" : "" + ].filter(Boolean).join(" "); + el.style.transition = `all ${duration}ms ease`; + el.style.opacity = "0"; + if (hasTransform) el.style.transform = initialTransform; + if (blur) el.style.filter = "blur(4px)"; + requestAnimationFrame(() => { + el.style.opacity = "1"; + if (hasTransform) el.style.transform = "none"; + if (blur) el.style.filter = "none"; + }); + return el; +}; +export const req = ({ url, method = 'GET', headers = {} }) => { + const loading = $(false); + const error = $(null); + const data = $(null); + let controller = null; + let timeoutId = null; + + const run = async (body = null) => { + controller?.abort(); + clearTimeout(timeoutId); + controller = new AbortController(); + timeoutId = setTimeout(() => controller.abort(), 10000); + loading(true); + error(null); + try { + const isFormData = body instanceof FormData; + const res = await fetch(url, { + method, + headers: isFormData ? headers : { 'Content-Type': 'application/json', ...headers }, + body: isFormData ? body : (body ? JSON.stringify(body) : undefined), + signal: controller.signal + }); + const text = await res.text(); + const json = text ? JSON.parse(text) : null; + if (!res.ok) throw new Error(json?.message || res.statusText); + data(json); + return json; + } catch (e) { + if (e.name !== 'AbortError') error(e.message); + throw e; + } finally { + loading(false); + clearTimeout(timeoutId); + controller = null; + timeoutId = null; + } + }; + + const abort = () => controller?.abort(); + + return { run, abort, loading, error, data }; +}; \ No newline at end of file diff --git a/utils.js b/sigpro-locale.js similarity index 100% rename from utils.js rename to sigpro-locale.js diff --git a/src/components/Accordion.js b/src/components/Accordion.js deleted file mode 100644 index fad7d6e..0000000 --- a/src/components/Accordion.js +++ /dev/null @@ -1,29 +0,0 @@ -// components/Accordion.js -import { h } from "sigpro"; -import { ui, val } from "../utils.js"; - -/** - * Accordion component - * - * daisyUI classes used: - * - collapse, collapse-arrow, collapse-plus, collapse-title, collapse-content - * - collapse-open, collapse-close - * - bg-base-200, bg-base-100, bg-primary, bg-secondary - * - mb-2, mt-2, rounded-box - */ -export const Accordion = (props, children) => { - const { class: className, title, name, open, ...rest } = props; - - return h("div", { - ...rest, - class: ui('collapse collapse-arrow bg-base-200 mb-2', className), - }, [ - h("input", { - type: name ? "radio" : "checkbox", - name: name, - checked: val(open), - }), - h("div", { class: "collapse-title text-xl font-medium" }, title), - h("div", { class: "collapse-content" }, children), - ]); -}; \ No newline at end of file diff --git a/src/components/Alert.js b/src/components/Alert.js deleted file mode 100644 index 2f6e2da..0000000 --- a/src/components/Alert.js +++ /dev/null @@ -1,42 +0,0 @@ -// components/Alert.js -import { h } from "sigpro"; -import { ui, getIcon } from "../utils.js"; - -/** - * Alert component - * - * daisyUI classes used: - * - alert, alert-info, alert-success, alert-warning, alert-error - * - alert-soft, alert-outline, alert-dash - */ -export const Alert = (props, children) => { - const { class: className, actions, type = 'info', soft = true, ...rest } = props; - - const iconMap = { - info: "icon-[lucide--info]", - success: "icon-[lucide--check-circle]", - warning: "icon-[lucide--alert-triangle]", - error: "icon-[lucide--alert-circle]", - }; - - // Build the complete class string - const typeClass = `alert-${type}`; - const softClass = soft ? 'alert-soft' : ''; - const allClasses = [typeClass, softClass, className].filter(Boolean).join(' '); - - const content = children || props.message; - - return h("div", { - ...rest, - role: "alert", - class: ui('alert', allClasses), - }, () => [ - getIcon(iconMap[type]), - h("div", { class: "flex-1" }, [ - h("span", {}, [typeof content === "function" ? content() : content]) - ]), - actions ? h("div", { class: "flex-none" }, [ - typeof actions === "function" ? actions() : actions - ]) : null, - ].filter(Boolean)); -}; \ No newline at end of file diff --git a/src/components/Autocomplete.js b/src/components/Autocomplete.js deleted file mode 100644 index 304595e..0000000 --- a/src/components/Autocomplete.js +++ /dev/null @@ -1,114 +0,0 @@ -// components/Autocomplete.js -import { $, h, each } from "sigpro"; -import { val } from "../utils.js"; -import { Input } from "./Input.js"; - -/** - * Autocomplete component - * - * daisyUI classes used: - * - input, input-bordered, input-primary, input-secondary - * - menu, menu-dropdown, menu-dropdown-show - * - bg-base-100, rounded-box, shadow-xl, border, border-base-300 - * - absolute, left-0, w-full, mt-1, p-2, max-h-60, overflow-y-auto - * - z-50, active, bg-primary, text-primary-content - */ -export const Autocomplete = (props) => { - const { class: className, items = [], value, onselect, label, placeholder, ...rest } = props; - - // Inicializamos query con el valor actual de la señal recibida o string vacío - const query = $(val(value) || ""); - const isOpen = $(false); - const cursor = $(-1); - - // FIX CRÍTICO: En lugar de una computed automática, usamos una señal manual - // y un watch para garantizar que la lista se actualice SÍNCRONAMENTE. - const list = $([]); - - watch(() => { - const q = String(query()).toLowerCase(); - const data = val(items) || []; - const filtered = q - ? data.filter((o) => (typeof o === "string" ? o : o.label).toLowerCase().includes(q)) - : data; - list(filtered); - }); - - const pick = (opt) => { - const valStr = typeof opt === "string" ? opt : opt.value; - const labelStr = typeof opt === "string" ? opt : opt.label; - - // Actualizamos ambas señales - query(labelStr); - if (typeof value === "function") value(valStr); - - onselect?.(opt); - isOpen(false); - cursor(-1); - }; - - const nav = (e) => { - const currentItems = list(); - if (e.key === "ArrowDown") { - e.preventDefault(); - isOpen(true); - cursor(Math.min(cursor() + 1, currentItems.length - 1)); - } else if (e.key === "ArrowUp") { - e.preventDefault(); - cursor(Math.max(cursor() - 1, 0)); - } else if (e.key === "Enter" && cursor() >= 0) { - e.preventDefault(); - pick(currentItems[cursor()]); - } else if (e.key === "Escape") { - isOpen(false); - } - }; - - return h("div", { class: 'relative w-full' }, [ - input({ - label, - class: className, - placeholder: placeholder, - value: query, // Vinculado a la señal query - onfocus: () => isOpen(true), - onblur: () => setTimeout(() => isOpen(false), 150), - onkeydown: nav, - oninput: (e) => { - const v = e.target.value; - query(v); // Esto dispara el watch de arriba y actualiza 'list' - if (typeof value === "function") value(v); - isOpen(true); - cursor(-1); - }, - ...rest, - }), - h( - "ul", - { - class: "absolute dropdown-menu left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50", - // Usamos una función para que el estilo sea reactivo - style: () => (isOpen() && list().length ? "display:block" : "display:none"), - }, - [ - each( - list, - (opt, i) => - h("li", {}, [ - h( - "a", - { - class: () => `block w-full ${cursor() === i ? "active bg-primary text-primary-content" : ""}`, - onclick: () => pick(opt), - onmouseenter: () => cursor(i), - }, - typeof opt === "string" ? opt : opt.label, - ), - ]), - (opt, i) => (typeof opt === "string" ? opt : opt.value) + i, - ), - // Mensaje de "no hay datos" reactivo - () => (list().length ? null : h("li", { class: "p-2 text-center opacity-50" }, "nodata")), - ], - ), - ]); -}; \ No newline at end of file diff --git a/src/components/Badge.js b/src/components/Badge.js deleted file mode 100644 index 20422a5..0000000 --- a/src/components/Badge.js +++ /dev/null @@ -1,21 +0,0 @@ -// components/Badge.js -import { h } from "sigpro"; -import { ui } from "../utils.js"; - -/** - * Badge component - * - * daisyUI classes used: - * - badge, badge-primary, badge-secondary, badge-accent - * - badge-info, badge-success, badge-warning, badge-error - * - badge-outline, badge-soft, badge-dash - * - badge-xs, badge-sm, badge-md, badge-lg - */ -export const Badge = (props, children) => { - const { class: className, ...rest } = props; - - return h("span", { - ...rest, - class: ui('badge', className), - }, children); -}; \ No newline at end of file diff --git a/src/components/Button.js b/src/components/Button.js deleted file mode 100644 index e78d9ce..0000000 --- a/src/components/Button.js +++ /dev/null @@ -1,24 +0,0 @@ -// components/Button.js -import { h } from "sigpro"; -import { ui, val, getIcon } from "../utils.js"; - -/** - * Button component - * - * daisyUI classes used: - * - btn, btn-primary, btn-secondary, btn-accent, btn-ghost - * - btn-info, btn-success, btn-warning, btn-error, btn-neutral - * - btn-xs, btn-sm, btn-md, btn-lg, btn-xl - * - btn-outline, btn-soft, btn-dash, btn-link - * - btn-circle, btn-square, btn-wide, btn-block - * - btn-active, btn-disabled - */ -export const Button = (props, children) => { - const { class: className, ...rest } = props; - - return h("button", { - ...rest, - class: ui('btn', className), - disabled: () => val(props.disabled), - }, () => children); -}; \ No newline at end of file diff --git a/src/components/Calendar.js b/src/components/Calendar.js deleted file mode 100644 index c1f6a7a..0000000 --- a/src/components/Calendar.js +++ /dev/null @@ -1,181 +0,0 @@ -import { $, h, watch } from "sigpro"; -import { val, getIcon } from "../utils.js"; - -export const Calendar = (props) => { - const { value, range = false, hour = false, onChange, class: className = "" } = props; - - const internalDate = $(new Date()); - const hoverDate = $(null); - const startHour = $(0); - const endHour = $(0); - const isRangeMode = () => range === true; - - const now = new Date(); - const todayStr = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, "0")}-${String(now.getDate()).padStart(2, "0")}`; - - const formatDate = (d) => { - const year = d.getFullYear(); - const month = String(d.getMonth() + 1).padStart(2, "0"); - const day = String(d.getDate()).padStart(2, "0"); - return `${year}-${month}-${day}`; - }; - - const selectDate = (date) => { - const dateStr = formatDate(date); - const current = val(value); - - if (isRangeMode()) { - if (!current?.start || (current.start && current.end)) { - // primera selección - const newValue = { - start: dateStr, - end: null, - ...(hour && { startHour: startHour() }), - }; - onChange?.(newValue); - } else { - // segunda selección - const start = current.start; - let newValue; - if (dateStr < start) { - newValue = { start: dateStr, end: start }; - } else { - newValue = { start, end: dateStr }; - } - if (hour) { - newValue.startHour = current.startHour !== undefined ? current.startHour : startHour(); - newValue.endHour = endHour(); - } - onChange?.(newValue); - } - } else { - // modo fecha simple - const newValue = hour ? `${dateStr}T${String(startHour()).padStart(2, "0")}:00:00` : dateStr; - onChange?.(newValue); - } - }; - - const move = (m) => { - const d = internalDate(); - internalDate(new Date(d.getFullYear(), d.getMonth() + m, 1)); - }; - - const moveYear = (y) => { - const d = internalDate(); - internalDate(new Date(d.getFullYear() + y, d.getMonth(), 1)); - }; - - const HourSlider = ({ value: hVal, onChange: onHourChange }) => { - return h("div", { class: "flex-1" }, [ - h("div", { class: "flex gap-2 items-center" }, [ - h("input", { - type: "range", - min: 0, - max: 23, - value: hVal, - class: "range range-xs flex-1", - oninput: (e) => { - const newHour = parseInt(e.target.value); - onHourChange(newHour); - }, - }), - h("span", { class: "text-sm font-mono min-w-[48px] text-center" }, - () => String(val(hVal)).padStart(2, "0") + ":00" - ), - ]), - ]); - }; - - return h("div", { class: `p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box w-80 select-none ${className}` }, [ - h("div", { class: "flex justify-between items-center mb-4 gap-1" }, [ - h("div", { class: "flex gap-0.5" }, [ - h("button", { type: "button", class: "btn btn-ghost btn-xs px-1", onclick: () => moveYear(-1) }, - getIcon("icon-[lucide--chevrons-left]") - ), - h("button", { type: "button", class: "btn btn-ghost btn-xs px-1", onclick: () => move(-1) }, - getIcon("icon-[lucide--chevron-left]") - ), - ]), - h("span", { class: "font-bold uppercase flex-1 text-center" }, [ - () => internalDate().toLocaleString("es-ES", { month: "short", year: "numeric" }), - ]), - h("div", { class: "flex gap-0.5" }, [ - h("button", { type: "button", class: "btn btn-ghost btn-xs px-1", onclick: () => move(1) }, - getIcon("icon-[lucide--chevron-right]") - ), - h("button", { type: "button", class: "btn btn-ghost btn-xs px-1", onclick: () => moveYear(1) }, - getIcon("icon-[lucide--chevrons-right]") - ), - ]), - ]), - - h("div", { class: "grid grid-cols-7 gap-1", onmouseleave: () => hoverDate(null) }, [ - ...["L", "M", "X", "J", "V", "S", "D"].map((d) => h("div", { class: "text-[10px] opacity-40 font-bold text-center" }, d)), - () => { - const d = internalDate(); - const year = d.getFullYear(); - const month = d.getMonth(); - const firstDay = new Date(year, month, 1).getDay(); - const offset = firstDay === 0 ? 6 : firstDay - 1; - const daysInMonth = new Date(year, month + 1, 0).getDate(); - - const nodes = []; - for (let i = 0; i < offset; i++) nodes.push(h("div")); - - for (let i = 1; i <= daysInMonth; i++) { - const date = new Date(year, month, i); - const dStr = formatDate(date); - - nodes.push( - h("button", { - type: "button", - class: () => { - const v = val(value); - const h = hoverDate(); - const isStart = typeof v === "string" ? v.split("T")[0] === dStr : v?.start === dStr; - const isEnd = v?.end === dStr; - let inRange = false; - - if (isRangeMode() && v?.start) { - const start = v.start; - if (!v.end && h) { - inRange = (dStr > start && dStr <= h) || (dStr < start && dStr >= h); - } else if (v.end) { - inRange = dStr > start && dStr < v.end; - } - } - - const base = "btn btn-xs p-0 aspect-square min-h-0 h-auto font-normal relative"; - const state = isStart || isEnd ? "btn-primary z-10" : inRange ? "bg-primary/20 border-none rounded-none" : "btn-ghost"; - const today = dStr === todayStr ? "ring-1 ring-primary ring-inset font-black text-primary" : ""; - - return `${base} ${state} ${today}`; - }, - onmouseenter: () => { if (isRangeMode()) hoverDate(dStr); }, - onclick: () => selectDate(date), - }, [i.toString()]) - ); - } - return nodes; - }, - ]), - - hour ? h("div", { class: "mt-3 pt-2 border-t border-base-300" }, [ - isRangeMode() - ? h("div", { class: "flex gap-4" }, [ - HourSlider({ - value: startHour, - onChange: (newHour) => startHour(newHour), - }), - HourSlider({ - value: endHour, - onChange: (newHour) => endHour(newHour), - }), - ]) - : HourSlider({ - value: startHour, - onChange: (newHour) => startHour(newHour), - }), - ]) : null, - ]); -}; \ No newline at end of file diff --git a/src/components/Checkbox.js b/src/components/Checkbox.js deleted file mode 100644 index 5ac68eb..0000000 --- a/src/components/Checkbox.js +++ /dev/null @@ -1,30 +0,0 @@ -// components/Checkbox.js -import { h } from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Checkbox component - * - * daisyUI classes used: - * - checkbox, checkbox-primary, checkbox-secondary, checkbox-accent - * - checkbox-info, checkbox-success, checkbox-warning, checkbox-error - * - checkbox-xs, checkbox-sm, checkbox-md, checkbox-lg - * - toggle, toggle-primary, toggle-secondary, toggle-accent - * - toggle-xs, toggle-sm, toggle-md, toggle-lg - * - label, label-text, cursor-pointer - */ -export const Checkbox = (props) => { - const { class: className, value, toggle, label, ...rest } = props; - - const checkEl = h("input", { - ...rest, - type: "checkbox", - class: () => ui(val(toggle) ? "toggle" : "checkbox", className), - checked: value - }); - - return h("label", { class: "label cursor-pointer justify-start gap-3" }, [ - checkEl, - label ? h("span", { class: "label-text" }, label) : null, - ]); -}; \ No newline at end of file diff --git a/src/components/Colorpicker.js b/src/components/Colorpicker.js deleted file mode 100644 index c7c9e97..0000000 --- a/src/components/Colorpicker.js +++ /dev/null @@ -1,92 +0,0 @@ -// components/Colorpicker.js -import { $, h, when} from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Colorpicker component - * - * daisyUI classes used: - * - btn, btn-primary, btn-secondary, btn-accent, btn-ghost - * - bg-base-100, border, border-base-300, shadow-sm, shadow-2xl - * - rounded-box, rounded-sm, fixed, inset-0 - * - z-50, z-110, absolute, left-0, mt-2, p-3, w-64 - * - grid, grid-cols-8, gap-1, ring, ring-offset-1, ring-primary - * - scale-110, transition-all, hover:scale-125, active:scale-95 - */ -export const Colorpicker = (props) => { - const { class: className, value, label, ...rest } = props; - const isOpen = $(false); - - const palette = [ - ...["#000", "#1A1A1A", "#333", "#4D4D4D", "#666", "#808080", "#B3B3B3", "#FFF"], - ...["#450a0a", "#7f1d1d", "#991b1b", "#b91c1c", "#dc2626", "#ef4444", "#f87171", "#fca5a5"], - ...["#431407", "#7c2d12", "#9a3412", "#c2410c", "#ea580c", "#f97316", "#fb923c", "#ffedd5"], - ...["#713f12", "#a16207", "#ca8a04", "#eab308", "#facc15", "#fde047", "#fef08a", "#fff9c4"], - ...["#064e3b", "#065f46", "#059669", "#10b981", "#34d399", "#4ade80", "#84cc16", "#d9f99d"], - ...["#082f49", "#075985", "#0284c7", "#0ea5e9", "#38bdf8", "#7dd3fc", "#22d3ee", "#cffafe"], - ...["#1e1b4b", "#312e81", "#4338ca", "#4f46e5", "#6366f1", "#818cf8", "#a5b4fc", "#e0e7ff"], - ...["#2e1065", "#4c1d95", "#6d28d9", "#7c3aed", "#8b5cf6", "#a855f7", "#d946ef", "#fae8ff"], - ]; - - const getColor = () => val(value) || "#000000"; - - return h("div", { class: ui('relative w-fit', className) }, [ - h( - "button", - { - type: "button", - class: "btn px-3 bg-base-100 border-base-300 hover:border-primary/50 flex items-center gap-2 shadow-sm font-normal normal-case", - onclick: (e) => { - e.stopPropagation(); - isOpen(!isOpen()); - }, - ...rest, - }, - [ - h("div", { - class: "size-5 rounded-sm shadow-inner border border-black/10 shrink-0", - style: () => `background-color: ${getColor()}`, - }), - label ? h("span", { class: "opacity-80" }, label) : null, - ], - ), - - when(isOpen, () => - h( - "div", - { - class: "absolute left-0 mt-2 p-3 bg-base-100 border border-base-300 shadow-2xl rounded-box z-[110] w-64 select-none", - onclick: (e) => e.stopPropagation(), - }, - [ - h( - "div", - { class: "grid grid-cols-8 gap-1" }, - palette.map((c) => - h("button", { - type: "button", - style: `background-color: ${c}`, - class: () => { - const active = getColor().toLowerCase() === c.toLowerCase(); - return `size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5 - ${active ? "ring-2 ring-offset-1 ring-primary z-10 scale-110" : ""}`; - }, - onclick: () => { - if (typeof value === "function") value(c); - isOpen(false); - }, - }), - ), - ), - ], - ), - ), - - when(isOpen, () => - h("div", { - class: "fixed inset-0 z-[100]", - onclick: () => isOpen(false), - }), - ), - ]); -}; \ No newline at end of file diff --git a/src/components/Datepicker.js b/src/components/Datepicker.js deleted file mode 100644 index 238302e..0000000 --- a/src/components/Datepicker.js +++ /dev/null @@ -1,75 +0,0 @@ -import { $, h, when, watch } from "sigpro"; -import { val, ui, getIcon } from "../utils.js"; -import { Input } from "./Input.js"; -import { Calendar } from "./Calendar.js"; - -export const Datepicker = (props) => { - const { class: className, value, range, label, placeholder, hour = false, ...rest } = props; - - const isOpen = $(false); - const isRangeMode = () => val(range) === true; - - // Formatear el valor para mostrarlo en el input - const displayValue = $(""); - - watch(() => { - const v = val(value); - if (!v) { - displayValue(""); - return; - } - let text = ""; - if (typeof v === "string") { - text = (hour && v.includes("T")) ? v.replace("T", " ") : v; - } else if (v.start && v.end) { - const startStr = hour && v.startHour !== undefined ? `${v.start} ${String(v.startHour).padStart(2, "0")}:00` : v.start; - const endStr = hour && v.endHour !== undefined ? `${v.end} ${String(v.endHour).padStart(2, "0")}:00` : v.end; - text = `${startStr} - ${endStr}`; - } else if (v.start) { - const startStr = hour && v.startHour !== undefined ? `${v.start} ${String(v.startHour).padStart(2, "0")}:00` : v.start; - text = `${startStr}...`; - } - displayValue(text); - }); - - const handleCalendarChange = (newValue) => { - if (typeof value === "function") { - value(newValue); - } - // Cerrar el popover si es modo simple o si el rango está completo (end existe) - if (!isRangeMode() || (newValue?.end !== undefined && newValue?.end !== null)) { - isOpen(false); - } - }; - - return h("div", { class: ui('relative w-full', className) }, [ - input({ - label, - placeholder: placeholder || (isRangeMode() ? "Seleccionar rango..." : "Seleccionar fecha..."), - value: displayValue, - readonly: true, - icon: getIcon("icon-[lucide--calendar]"), - onclick: (e) => { - e.stopPropagation(); - isOpen(!isOpen()); - }, - ...rest, - }), - - when(isOpen, () => - h("div", { - class: "absolute left-0 mt-2 z-[100]", - onclick: (e) => e.stopPropagation(), - }, [ - Calendar({ - value, - range: isRangeMode(), - hour, - onChange: handleCalendarChange, - }), - ]) - ), - - when(isOpen, () => h("div", { class: "fixed inset-0 z-[90]", onclick: () => isOpen(false) })), - ]); -}; \ No newline at end of file diff --git a/src/components/Drawer.js b/src/components/Drawer.js deleted file mode 100644 index 19591dc..0000000 --- a/src/components/Drawer.js +++ /dev/null @@ -1,46 +0,0 @@ -// components/Drawer.js -import { h } from "sigpro"; -import { ui } from "../utils.js"; - -/** - * Drawer component - * - * daisyUI classes used: - * - drawer, drawer-toggle, drawer-content, drawer-side, drawer-overlay - * - bg-base-200, w-80, min-h-full - */ -export const Drawer = (props, children) => { - const { class: className, id, open, side, content, ...rest } = props; - - const drawerId = id || `drawer-${Math.random().toString(36).slice(2, 9)}`; - - return h("div", { - ...rest, - class: ui('drawer', className), - }, [ - h("input", { - id: drawerId, - type: "checkbox", - class: "drawer-toggle", - checked: () => typeof open === "function" ? open() : open, - onchange: (e) => { - if (typeof open === "function") open(e.target.checked); - } - }), - h("div", { class: "drawer-content" }, [ - typeof content === "function" ? content() : content - ]), - h("div", { class: "drawer-side" }, [ - h("label", { - for: drawerId, - class: "drawer-overlay", - onclick: () => { - if (typeof open === "function") open(false); - } - }), - h("div", { class: "min-h-full bg-base-200 w-80" }, [ - typeof side === "function" ? side() : side - ]) - ]) - ]); -}; \ No newline at end of file diff --git a/src/components/Dropdown.js b/src/components/Dropdown.js deleted file mode 100644 index cf3cada..0000000 --- a/src/components/Dropdown.js +++ /dev/null @@ -1,78 +0,0 @@ -// components/Dropdown.js -import { h, each, watch } from "sigpro"; -import { ui } from "../utils.js"; - -/** - * Dropdown component - Solo soporta menús (items) - * - * daisyUI classes used: - * - dropdown, dropdown-content, dropdown-end, dropdown-top, dropdown-bottom - * - menu, btn - * - bg-base-100, shadow, rounded-box, border - * - z-50, p-2, w-52 - * - m-1, flex, items-center, gap-2 - */ - -let currentOpen = null; - -if (typeof window !== 'undefined' && !window.__dropdownHandlerRegistered) { - window.addEventListener('click', (e) => { - if (currentOpen && !currentOpen.contains(e.target)) { - currentOpen.open = false; - currentOpen = null; - } - }); - window.__dropdownHandlerRegistered = true; -} - -export const Dropdown = (props) => { - const { class: className, label, icon, items, ...rest } = props; - - return h("details", { - ...rest, - class: ui('dropdown', className), - }, [ - h("summary", { - class: "btn m-1 flex items-center gap-2 list-none cursor-pointer", - style: "display: inline-flex;", - onclick: (e) => { - const details = e.currentTarget.closest('details'); - if (currentOpen && currentOpen !== details) { - currentOpen.open = false; - } - setTimeout(() => { - currentOpen = details.open ? details : null; - }, 0); - } - }, [ - () => icon ? (typeof icon === "function" ? icon() : icon) : null, - () => label ? (typeof label === "function" ? label() : label) : null - ]), - h("ul", { - tabindex: "-1", - class: "dropdown-content z-[50] menu p-2 shadow bg-base-100 rounded-box w-52 border border-base-300" - }, [ - () => { - const currentItems = typeof items === "function" ? items() : (items || []); - return currentItems.map(item => - h("li", {}, [ - h("a", { - class: item.class || "", - onclick: (e) => { - if (item.onclick) item.onclick(e); - const details = e.currentTarget.closest('details'); - if (details) { - details.open = false; - if (currentOpen === details) currentOpen = null; - } - } - }, [ - item.icon ? h("span", {}, item.icon) : null, - h("span", {}, item.label) - ]) - ]) - ); - } - ]) - ]); -}; \ No newline at end of file diff --git a/src/components/Fab.js b/src/components/Fab.js deleted file mode 100644 index 4d37a78..0000000 --- a/src/components/Fab.js +++ /dev/null @@ -1,58 +0,0 @@ -// components/Fab.js -import { h } from "sigpro"; -import { val, ui, getIcon } from "../utils.js"; - -/** - * Fab (Floating Action Button) component - * - * daisyUI classes used: - * - btn, btn-lg, btn-circle, btn-primary - * - shadow-2xl, shadow-lg - * - badge, badge-ghost, shadow-sm, whitespace-nowrap - * - absolute, flex, flex-col-reverse, items-end, gap-3 - * - z-100, transition-all, duration-300 - * - bottom-6, right-6, top-6, left-6 - */ -export const Fab = (props) => { - const { class: className, icon, label, actions = [], position = "bottom-6 right-6", ...rest } = props; - - return h( - "div", - { - ...rest, - class: ui(`fab absolute ${position} flex flex-col-reverse items-end gap-3 z-[100]`, className), - }, - [ - h( - "div", - { - tabindex: 0, - role: "button", - class: "btn btn-lg btn-circle btn-primary shadow-2xl", - }, - [ - icon ? getIcon(icon) : null, - !icon && label ? label : null - ], - ), - - ...val(actions).map((act) => - h("div", { class: "flex items-center gap-3 transition-all duration-300" }, [ - act.label ? h("span", { class: "badge badge-ghost shadow-sm whitespace-nowrap" }, act.label) : null, - h( - "button", - { - type: "button", - class: `btn btn-circle shadow-lg ${act.class || ""}`, - onclick: (e) => { - e.stopPropagation(); - act.onclick?.(e); - }, - }, - [act.icon ? getIcon(act.icon) : act.text || ""], - ), - ]), - ), - ], - ); -}; \ No newline at end of file diff --git a/src/components/Fetch.js b/src/components/Fetch.js deleted file mode 100644 index 9368218..0000000 --- a/src/components/Fetch.js +++ /dev/null @@ -1,53 +0,0 @@ -import { $$, h, isFunc } from "sigpro"; - -const _cache = new Map(); - -const getStore = (key) => { - if (!_cache.has(key)) { - _cache.set(key, $$({ data: null, loading: false, error: null })); - } - return _cache.get(key); -}; - -export const Request = async (key, url, opts = {}) => { - const store = getStore(key); - const { body, ...rest } = opts; - - store.loading = true; - store.error = null; - - try { - const config = { - method: rest.method || 'GET', - headers: { 'Content-Type': 'application/json', ...rest.headers }, - ...rest - }; - - if (body) config.body = typeof body === 'object' ? JSON.stringify(body) : body; - - const res = await fetch(url, config); - if (!res.ok) throw new Error(`HTTP ${res.status}`); - - const result = await res.json(); - store.data = result; - return result; - } catch (err) { - store.error = err.message; - throw err; - } finally { - store.loading = false; - } -}; - -export const Response = ({ name, loading, error }, { children }) => { - const store = getStore(name); - - return h("div", { style: "display:contents" }, [ - () => { - if (store.loading) return loading || "Cargando..."; - if (store.error) return isFunc(error) ? error(store.error) : h("p", {}, store.error); - if (store.data) return isFunc(children[0]) ? children[0](store.data) : children; - return null; - } - ]); -}; \ No newline at end of file diff --git a/src/components/Fieldset.js b/src/components/Fieldset.js deleted file mode 100644 index 2a97456..0000000 --- a/src/components/Fieldset.js +++ /dev/null @@ -1,30 +0,0 @@ -// components/Fieldset.js -import { h } from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Fieldset component - * - * daisyUI classes used: - * - fieldset, fieldset-legend - * - bg-base-200, border, border-base-300 - * - p-4, rounded-lg, font-bold - */ -export const Fieldset = (props, children) => { - const { class: className, legend, ...rest } = props; - - return h( - "fieldset", - { - ...rest, - class: ui('fieldset bg-base-200 border border-base-300 p-4 rounded-lg', className), - }, - [ - () => { - const legendText = val(legend); - return legendText ? h("legend", { class: "fieldset-legend font-bold" }, [legendText]) : null; - }, - children, - ], - ); -}; \ No newline at end of file diff --git a/src/components/Fileinput.js b/src/components/Fileinput.js deleted file mode 100644 index 668fbb1..0000000 --- a/src/components/Fileinput.js +++ /dev/null @@ -1,130 +0,0 @@ -// components/Fileinput.js -import { $, h, when, each } from "sigpro"; -import { ui, getIcon } from "../utils.js"; - -/** - * Fileinput component - * - * daisyUI classes used: - * - fieldset, w-full, p-0 - * - tooltip, tooltip-top, before:z-50, after:z-50 - * - relative, flex, items-center, justify-between, w-full, h-12, px-4 - * - border-2, border-dashed, rounded-lg, cursor-pointer, transition-all, duration-200 - * - border-primary, bg-primary/10, border-base-content/20, bg-base-100, hover:bg-base-200 - * - text-sm, opacity-70, truncate, grow, text-left - * - text-[10px], opacity-40, shrink-0 - * - text-error, text-[10px], mt-1, px-1, font-medium - * - mt-2, space-y-1 - * - flex, items-center, justify-between, p-1.5, pl-3, text-xs, bg-base-200/50, rounded-md, border, border-base-300 - * - gap-2, truncate, opacity-50, font-medium, max-w-[200px] - * - btn, btn-ghost, btn-xs, btn-circle - */ -export const Fileinput = (props) => { - const { class: className, tooltip, max = 2, accept = "*", onselect, ...rest } = props; - - const selectedFiles = $([]); - const isDragging = $(false); - const error = $(null); - const MAX_BYTES = max * 1024 * 1024; - - const handleFiles = (files) => { - const fileList = Array.from(files); - error(null); - const oversized = fileList.find((f) => f.size > MAX_BYTES); - - if (oversized) { - error(`Máx ${max}MB`); - return; - } - - selectedFiles([...selectedFiles(), ...fileList]); - onselect?.(selectedFiles()); - }; - - const removeFile = (index) => { - const updated = selectedFiles().filter((_, i) => i !== index); - selectedFiles(updated); - onselect?.(updated); - }; - - return h("fieldset", { ...rest, class: ui('fieldset w-full p-0', className) }, [ - h( - "div", - { - class: () => `w-full ${tooltip ? "tooltip tooltip-top before:z-50 after:z-50" : ""}`, - "data-tip": tooltip, - }, - [ - h( - "label", - { - class: () => ` - relative flex items-center justify-between w-full h-12 px-4 - border-2 border-dashed rounded-lg cursor-pointer - transition-all duration-200 - ${isDragging() ? "border-primary bg-primary/10" : "border-base-content/20 bg-base-100 hover:bg-base-200"} - `, - ondragover: (e) => { - e.preventDefault(); - isDragging(true); - }, - ondragleave: () => isDragging(false), - ondrop: (e) => { - e.preventDefault(); - isDragging(false); - handleFiles(e.dataTransfer.files); - }, - }, - [ - h("div", { class: "flex items-center gap-3 w-full" }, [ - getIcon("icon-[lucide--upload]"), - h("span", { class: "text-sm opacity-70 truncate grow text-left" }, "Arrastra o selecciona archivos..."), - h("span", { class: "text-[10px] opacity-40 shrink-0" }, `Máx ${max}MB`), - ]), - h("input", { - type: "file", - multiple: true, - accept: accept, - class: "hidden", - onchange: (e) => handleFiles(e.target.files), - }), - ], - ), - ], - ), - - () => (error() ? h("span", { class: "text-[10px] text-error mt-1 px-1 font-medium" }, error()) : null), - - when( - () => selectedFiles().length > 0, - () => - h("ul", { class: "mt-2 space-y-1" }, [ - each( - selectedFiles, - (file, index) => - h("li", { class: "flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300" }, [ - h("div", { class: "flex items-center gap-2 truncate" }, [ - h("span", { class: "opacity-50" }, "📄"), - h("span", { class: "truncate font-medium max-w-[200px]" }, file.name), - h("span", { class: "text-[9px] opacity-40" }, `(${(file.size / 1024).toFixed(0)} KB)`), - ]), - h( - "button", - { - type: "button", - class: "btn btn-ghost btn-xs btn-circle", - onclick: (e) => { - e.preventDefault(); - e.stopPropagation(); - removeFile(index); - }, - }, - [getIcon("icon-[lucide--x]")] - ), - ]), - (file) => file.name + file.lastModified, - ), - ]), - ), - ]); -}; \ No newline at end of file diff --git a/src/components/Icon.js b/src/components/Icon.js deleted file mode 100644 index 21f051c..0000000 --- a/src/components/Icon.js +++ /dev/null @@ -1,7 +0,0 @@ -// components/Icon.js -import { h } from "sigpro"; - -export const Icon = (iconClass) => { - if (!iconClass) return null; - return h("span", { class: iconClass }); -}; diff --git a/src/components/Indicator.js b/src/components/Indicator.js deleted file mode 100644 index f7f868a..0000000 --- a/src/components/Indicator.js +++ /dev/null @@ -1,28 +0,0 @@ -// components/Indicator.js -import { h } from "sigpro"; -import { ui } from "../utils.js"; - -/** - * Indicator component - * - * daisyUI classes used: - * - indicator, indicator-item - * - badge, badge-primary, badge-secondary, badge-accent - * - badge-info, badge-success, badge-warning, badge-error - * - badge-outline, badge-soft, badge-dash - * - badge-xs, badge-sm, badge-md, badge-lg - */ -export const Indicator = (props, children) => { - const { value, class: className, ...rest } = props; - - return h("div", { - ...rest, - class: "indicator" - }, () => [ - // El indicador debe ir PRIMERO (antes que el children) - value ? h("span", { - class: ui('indicator-item badge', className) - }, () => typeof value === "function" ? value() : value) : null, - children - ].filter(Boolean)); -}; \ No newline at end of file diff --git a/src/components/Input.js b/src/components/Input.js deleted file mode 100644 index 9a5ed2c..0000000 --- a/src/components/Input.js +++ /dev/null @@ -1,114 +0,0 @@ -// components/Input.js -import { h } from "sigpro"; -import { val, ui, getIcon } from "../utils.js"; - -/** - * Input component - Input con ícono integrado, toggle password, validación y floating label opcional - * - * daisyUI classes used: - * - input, input-bordered, input-ghost, input-primary, input-secondary - * - input-accent, input-info, input-success, input-warning, input-error - * - input-xs, input-sm, input-md, input-lg - * - floating-label - * - btn, btn-ghost, btn-xs, btn-sm, btn-md, btn-circle - */ -export const Input = (props) => { - const { - class: className, - value, - type = "text", - icon, - oninput, - placeholder, - disabled, - validate, - label, - ...rest - } = props; - - const isPassword = type === "password"; - const visible = $(false); - const errorMsg = $(null); - - const iconMap = { - text: "icon-[lucide--text]", - password: "icon-[lucide--lock]", - date: "icon-[lucide--calendar]", - number: "icon-[lucide--hash]", - email: "icon-[lucide--mail]", - search: "icon-[lucide--search]", - tel: "icon-[lucide--phone]", - url: "icon-[lucide--link]", - }; - - const leftIcon = icon ? getIcon(icon) : (iconMap[type] ? getIcon(iconMap[type]) : null); - const getPasswordIcon = () => getIcon(visible() ? "icon-[lucide--eye-off]" : "icon-[lucide--eye]"); - - const paddingLeft = leftIcon ? "pl-10" : ""; - const paddingRight = isPassword ? "pr-10" : ""; - - const buttonSize = () => { - if (className?.includes('input-xs')) return 'btn-xs'; - if (className?.includes('input-sm')) return 'btn-sm'; - if (className?.includes('input-lg')) return 'btn-lg'; - return 'btn-md'; - }; - - const handleInput = (e) => { - const newValue = e.target.value; - if (validate) { - const result = validate(newValue); - errorMsg(result || null); - } - oninput?.(e); - }; - - const hasError = () => errorMsg() && errorMsg() !== ''; - - const inputClasses = () => { - let classes = `input w-full ${paddingLeft} ${paddingRight}`; - if (className) classes += ` ${className}`; - if (hasError()) classes += ' input-error'; - return classes.trim(); - }; - - const inputElement = h("input", { - ...rest, - type: () => (isPassword ? (visible() ? "text" : "password") : type), - placeholder: placeholder || (label ? " " : placeholder), - class: inputClasses, - value: value, - oninput: handleInput, - disabled: () => val(disabled), - "aria-invalid": () => hasError() ? "true" : "false", - }); - - const inputContent = () => [ - inputElement, - leftIcon ? h("div", { - class: "absolute left-3 inset-y-0 flex items-center pointer-events-none text-base-content/60", - }, leftIcon) : null, - isPassword ? h("button", { - type: "button", - class: ui("absolute right-3 inset-y-0 flex items-center", "btn btn-ghost btn-circle opacity-50 hover:opacity-100", buttonSize()), - onclick: (e) => { - e.preventDefault(); - visible(!visible()); - } - }, () => getPasswordIcon()) : null, - h("div", { - class: "text-error text-xs mt-1 px-3 absolute -bottom-5 left-0", - }, () => hasError() ? errorMsg() : null), - ]; - - // Con floating label - añadir w-full para que ocupe todo el ancho - if (label) { - return h("label", { class: ui("floating-label w-full", className) }, () => [ - h("div", { class: "relative w-full" }, inputContent), - h("span", {}, val(label)) - ]); - } - - // Sin label - return h("div", { class: "relative w-full" }, inputContent); -}; \ No newline at end of file diff --git a/src/components/InputPopover.js b/src/components/InputPopover.js deleted file mode 100644 index 0d9f6e0..0000000 --- a/src/components/InputPopover.js +++ /dev/null @@ -1,44 +0,0 @@ -// components/InputPopover.js -export const InputPopover = (props) => { - const { - signal, - format = (v) => String(v ?? ""), - content, - placeholder, - label, - icon = "icon-[lucide--calendar]", - readonly = false, - class: className = "", - ...rest - } = props; - - const isOpen = $(false); - const displayValue = $(format(val(signal))); - - watch(signal, () => { - displayValue(format(val(signal))); - }); - - const close = () => isOpen(false); - const toggle = () => isOpen(!isOpen()); - - return h("div", { class: ui("relative w-full", className) }, [ - input({ - label, - placeholder, - value: displayValue, - readonly, - icon: getIcon(icon), - onclick: (e) => { e.stopPropagation(); toggle(); }, - onfocus: () => isOpen(true), - ...rest, - }), - when(isOpen, () => h("div", { - class: "absolute left-0 mt-2 z-[100]", - onclick: (e) => e.stopPropagation(), - }, [ - typeof content === "function" ? content({ signal, close }) : content - ])), - when(isOpen, () => h("div", { class: "fixed inset-0 z-[90]", onclick: close })) - ]); -}; \ No newline at end of file diff --git a/src/components/Label.js b/src/components/Label.js deleted file mode 100644 index 762da3a..0000000 --- a/src/components/Label.js +++ /dev/null @@ -1,19 +0,0 @@ -// components/Label.js -import { h } from "sigpro"; -import { ui, val } from "../utils.js"; - -export const Label = (props) => { - const { children, value, floating = false, class: className, ...rest } = props; - - if (floating) { - return h("label", { class: ui("floating-label", className), ...rest }, () => [ - typeof children === 'function' ? children() : children, - value ? h("span", {}, val(value)) : null - ]); - } - - return h("label", { class: ui("label", className), ...rest }, () => [ - value ? h("span", { class: "label-text" }, val(value)) : null, - typeof children === 'function' ? children() : children - ]); -}; \ No newline at end of file diff --git a/src/components/List.js b/src/components/List.js deleted file mode 100644 index 81e2201..0000000 --- a/src/components/List.js +++ /dev/null @@ -1,33 +0,0 @@ -// components/List.js -import { h, when, each } from "sigpro"; -import { ui, val } from "../utils.js"; - -/** - * List component - * - * daisyUI classes used: - * - list, list-row, list-bullet, list-image, list-none - * - bg-base-100, rounded-box, shadow-md - * - p-4, pb-2, text-xs, opacity-60 - * - flex, items-center, gap-2 - */ -export const List = (props) => { - const { class: className, items, header, render = (item) => item, keyFn = (item, index) => item.id ?? index, ...rest } = props; - - const listItems = each( - items, - (item, index) => h("li", { - class: "list-row", - style: "width: 100%; display: block;" - }, [ - h("div", { style: "width: 100%;" }, [render(item, index)]) - ]), - keyFn - ); - - return h("ul", { - ...rest, - style: "display: block; width: 100%;", - class: ui('list bg-base-100 rounded-box shadow-md', className), - }, header ? [when(header, () => h("li", { class: "p-4 pb-2 text-xs opacity-60", style: "width: 100%;" }, [val(header)])), listItems] : listItems); -}; \ No newline at end of file diff --git a/src/components/Menu.js b/src/components/Menu.js deleted file mode 100644 index 9236c1a..0000000 --- a/src/components/Menu.js +++ /dev/null @@ -1,36 +0,0 @@ -// components/Menu.js -import { h, each } from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Menu component - * - * daisyUI classes used: - * - menu, menu-dropdown, menu-dropdown-show - * - bg-base-200, rounded-box - * - details, summary, ul, li, a - * - mr-2, active - */ -export const Menu = (props) => { - const { class: className, items, ...rest } = props; - - const renderItems = (items) => - each( - () => items || [], - (it) => - h("li", {}, [ - it.children - ? h("details", { open: it.open }, [ - h("summary", {}, [it.icon && h("span", { class: "mr-2" }, it.icon), it.label]), - h("ul", {}, renderItems(it.children)), - ]) - : h("a", { class: () => (val(it.active) ? "active" : ""), onclick: it.onclick }, [ - it.icon && h("span", { class: "mr-2" }, it.icon), - it.label, - ]), - ]), - (it, i) => it.label || i, - ); - - return h("ul", { ...rest, class: ui('menu bg-base-200 rounded-box', className) }, renderItems(items)); -}; \ No newline at end of file diff --git a/src/components/Modal.js b/src/components/Modal.js deleted file mode 100644 index 9205a76..0000000 --- a/src/components/Modal.js +++ /dev/null @@ -1,64 +0,0 @@ -// components/Modal.js -import { h, watch } from "sigpro"; -import { ui } from "../utils.js"; -import { Button } from "./Button.js"; - -/** - * Modal component - * - * daisyUI classes used: - * - modal, modal-box, modal-action, modal-backdrop - * - modal-open, modal-middle, modal-top, modal-bottom - * - text-lg, font-bold, mb-4, py-2 - * - flex, gap-2 - */ -export const Modal = (props, children) => { - const { class: className, title, buttons, open, ...rest } = props; - let dialogElement = null; - - const handleOpen = () => { - const isOpen = typeof open === "function" ? open() : open; - if (!dialogElement) return; - - if (isOpen) { - if (!dialogElement.open) dialogElement.showModal(); - } else { - if (dialogElement.open) dialogElement.close(); - } - }; - - watch(() => handleOpen()); - - const close = () => { - if (typeof open === "function") open(false); - }; - - return h("dialog", { - ...rest, - ref: (el) => { - dialogElement = el; - if (el) handleOpen(); - }, - class: ui('modal', className), - onclose: close, - oncancel: close - }, [ - h("div", { class: "modal-box" }, [ - title ? h("h3", { class: "text-lg font-bold mb-4" }, () => - typeof title === "function" ? title() : title - ) : null, - h("div", { class: "py-2" }, [ - typeof children === "function" ? children() : children - ]), - h("div", { class: "modal-action" }, [ - h("form", { method: "dialog", class: "flex gap-2" }, [ - ...(Array.isArray(buttons) ? buttons : [buttons]).filter(Boolean), - button({ type: "submit" }, "close") - ]) - ]) - ]), - h("form", { method: "dialog", class: "modal-backdrop" }, [ - h("button", {}, "close") - ]) - ]); -}; \ No newline at end of file diff --git a/src/components/Navbar.js b/src/components/Navbar.js deleted file mode 100644 index b565a94..0000000 --- a/src/components/Navbar.js +++ /dev/null @@ -1,16 +0,0 @@ -// components/Navbar.js -import { h } from "sigpro"; -import { ui } from "../utils.js"; - -/** - * Navbar component - * - * daisyUI classes used: - * - navbar, navbar-start, navbar-center, navbar-end - * - bg-base-100, shadow-sm, px-4 - */ -export const Navbar = (props, children) => { - const { class: className, ...rest } = props; - - return h("div", { ...rest, class: ui('navbar bg-base-100 shadow-sm px-4', className) }, children); -}; \ No newline at end of file diff --git a/src/components/Radio.js b/src/components/Radio.js deleted file mode 100644 index 486b896..0000000 --- a/src/components/Radio.js +++ /dev/null @@ -1,37 +0,0 @@ -// components/Radio.js -import { h } from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Radio component - * - * daisyUI classes used: - * - radio, radio-primary, radio-secondary, radio-accent - * - radio-info, radio-success, radio-warning, radio-error - * - radio-xs, radio-sm, radio-md, radio-lg - * - label, label-text, cursor-pointer, justify-start, gap-3 - * - tooltip, tooltip-top, tooltip-bottom, tooltip-left, tooltip-right - */ -export const Radio = (props) => { - const { class: className, label, tooltip, value, inputValue, name, ...rest } = props; - - const radioEl = h("input", { - ...rest, - type: "radio", - name: name, - class: ui('radio', className), - checked: () => val(value) === inputValue, - onclick: () => { - if (typeof value === "function") value(inputValue); - }, - }); - - if (!label && !tooltip) return radioEl; - - const layout = h("label", { class: "label cursor-pointer justify-start gap-3" }, [ - radioEl, - label ? h("span", { class: "label-text" }, label) : null, - ]); - - return tooltip ? h("div", { class: "tooltip", "data-tip": tooltip }, layout) : layout; -}; \ No newline at end of file diff --git a/src/components/Range.js b/src/components/Range.js deleted file mode 100644 index bfce465..0000000 --- a/src/components/Range.js +++ /dev/null @@ -1,34 +0,0 @@ -// components/Range.js -import { h } from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Range component - * - * daisyUI classes used: - * - range, range-primary, range-secondary, range-accent - * - range-info, range-success, range-warning, range-error - * - range-xs, range-sm, range-md, range-lg - * - label-text, flex, flex-col, gap-2 - * - tooltip, tooltip-top, tooltip-bottom, tooltip-left, tooltip-right - */ -export const Range = (props) => { - const {class: className, label, tooltip, value, ...rest } = props; - - const rangeEl = h("input", { - ...rest, - type: "range", - class: ui('range', className), - value: value, - disabled: () => val(props.disabled) - }); - - if (!label && !tooltip) return rangeEl; - - const layout = h("div", { class: "flex flex-col gap-2" }, [ - label ? h("span", { class: "label-text" }, label) : null, - rangeEl - ]); - - return tooltip ? h("div", { class: "tooltip", "data-tip": tooltip }, layout) : layout; -}; \ No newline at end of file diff --git a/src/components/Rating.js b/src/components/Rating.js deleted file mode 100644 index f72edf2..0000000 --- a/src/components/Rating.js +++ /dev/null @@ -1,44 +0,0 @@ -// components/Rating.js -import { h } from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Rating component - * - * daisyUI classes used: - * - rating, rating-half, rating-hidden - * - mask, mask-star, mask-star-2, mask-heart, mask-circle - * - pointer-events-none - */ -export const Rating = (props) => { - const { class: className, value, count = 5, mask = "mask-star", readonly = false, onchange, ...rest } = props; - - const ratingGroup = `rating-${Math.random().toString(36).slice(2, 7)}`; - - return h( - "div", - { - ...rest, - class: () => ui(`rating ${val(readonly) ? "pointer-events-none" : ""}`, className), - }, - Array.from({ length: val(count) }, (_, i) => { - const starValue = i + 1; - return h("input", { - type: "radio", - name: ratingGroup, - class: `mask ${mask}`, - checked: () => Math.round(val(value)) === starValue, - onchange: () => { - if (!val(readonly)) { - if (typeof onchange === "function") { - onchange(starValue); - } - else if (typeof value === "function") { - value(starValue); - } - } - }, - }); - }) - ); -}; \ No newline at end of file diff --git a/src/components/Select.js b/src/components/Select.js deleted file mode 100644 index 19757b0..0000000 --- a/src/components/Select.js +++ /dev/null @@ -1,45 +0,0 @@ -// components/Select.js -import { h, each } from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Select component - * - * daisyUI classes used: - * - select, select-bordered, select-primary, select-secondary - * - select-accent, select-info, select-success, select-warning, select-error - * - select-xs, select-sm, select-md, select-lg - * - fieldset-label, flex, flex-col, gap-1, w-full - */ -export const Select = (props) => { - const { class: className, label, items, value, ...rest } = props; - - const selectEl = h( - "select", - { - ...rest, - class: ui('select select-bordered w-full', className), - value: value - }, - each( - () => val(items) || [], - (opt) => - h( - "option", - { - value: opt.value, - $selected: () => String(val(value)) === String(opt.value), - }, - opt.label, - ), - (opt) => opt.value, - ), - ); - - if (!label) return selectEl; - - return h("label", { class: "fieldset-label flex flex-col gap-1" }, [ - h("span", {}, label), - selectEl - ]); -}; \ No newline at end of file diff --git a/src/components/Spinner.js b/src/components/Spinner.js deleted file mode 100644 index afebd7b..0000000 --- a/src/components/Spinner.js +++ /dev/null @@ -1,11 +0,0 @@ -// components/Spinner.js -import { h } from "sigpro"; -import { val } from "../utils.js"; - -export const Spinner = (props) => { - const { value, ...rest } = props; - return when( - () => val(value), - () => h("span", { class: "loading loading-spinner", ...rest }) - ); -}; \ No newline at end of file diff --git a/src/components/Stack.js b/src/components/Stack.js deleted file mode 100644 index 5feda5e..0000000 --- a/src/components/Stack.js +++ /dev/null @@ -1,15 +0,0 @@ -// components/Stack.js -import { h } from "sigpro"; -import { ui } from "../utils.js"; - -/** - * Stack component - * - * daisyUI classes used: - * - stack, stack-top, stack-bottom, stack-start, stack-end - */ -export const Stack = (props, children) => { - const { class: className, ...rest } = props; - - return h("div", { ...rest, class: ui('stack', className) }, children); -}; \ No newline at end of file diff --git a/src/components/Stat.js b/src/components/Stat.js deleted file mode 100644 index 635f9d2..0000000 --- a/src/components/Stat.js +++ /dev/null @@ -1,21 +0,0 @@ -// components/Stat.js -import { h } from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Stat component - * - * daisyUI classes used: - * - stat, stat-figure, stat-title, stat-value, stat-desc - * - text-secondary - */ -export const Stat = (props) => { - const { class: className, icon, label, value, desc, ...rest } = props; - - return h("div", { ...rest, class: ui('stat', className) }, [ - icon && h("div", { class: "stat-figure text-secondary" }, icon), - label && h("div", { class: "stat-title" }, label), - h("div", { class: "stat-value" }, () => val(value) ?? value), - desc && h("div", { class: "stat-desc" }, desc), - ]); -}; \ No newline at end of file diff --git a/src/components/Swap.js b/src/components/Swap.js deleted file mode 100644 index e69ea00..0000000 --- a/src/components/Swap.js +++ /dev/null @@ -1,28 +0,0 @@ -// components/Swap.js -import { h } from "sigpro"; -import { ui, val } from "../utils.js"; - -/** - * Swap component - * - * daisyUI classes used: - * - swap, swap-on, swap-off, swap-active - * - swap-rotate, swap-flip, swap-indeterminate - */ -export const Swap = (props) => { - const { class: className, value, on, off, ...rest } = props; - - return h("label", { ...rest, class: ui('swap', className) }, [ - h("input", { - type: "checkbox", - checked: () => val(value), - onclick: (e) => { - if (typeof value === "function") { - value(e.target.checked); - } - } - }), - h("div", { class: "swap-on" }, on), - h("div", { class: "swap-off" }, off), - ]); -}; \ No newline at end of file diff --git a/src/components/Table.js b/src/components/Table.js deleted file mode 100644 index 9f18362..0000000 --- a/src/components/Table.js +++ /dev/null @@ -1,64 +0,0 @@ -// components/Table.js -import { h, each, when} from "sigpro"; -import { val, ui } from "../utils.js"; - -/** - * Table component - * - * daisyUI classes used: - * - table, table-zebra, table-pin-rows, table-pin-cols - * - table-xs, table-sm, table-md, table-lg - * - overflow-x-auto, w-full, bg-base-100, rounded-box, border, border-base-300 - * - thead, tbody, tfoot, tr, th, td - * - hover, text-center, p-10, opacity-50 - */ -export const Table = (props) => { - const { class: className, items = [], columns = [], keyFn, zebra = false, pinRows = false, empty = "nodata", ...rest } = props; - - const tableClass = () => { - const zebraClass = val(zebra) ? "table-zebra" : ""; - const pinRowsClass = val(pinRows) ? "table-pin-rows" : ""; - return ui('table', className, zebraClass, pinRowsClass); - }; - - const getInternalKeyFn = keyFn || ((item, idx) => item.id || idx); - - return h("div", { class: "overflow-x-auto w-full bg-base-100 rounded-box border border-base-300" }, [ - h("table", { ...rest, class: tableClass }, [ - h("thead", {}, [ - h("tr", {}, - columns.map(col => h("th", { class: col.class || "" }, col.label)) - ) - ]), - h("tbody", {}, [ - each(items, (item, index) => { - - const it = () => { - const currentItems = val(items); - const key = getInternalKeyFn(item, index); - return currentItems.find((u, i) => getInternalKeyFn(u, i) === key) || item; - }; - - return h("tr", { class: "hover" }, - columns.map(col => { - const cellContent = () => { - const latestItem = it(); - if (col.render) return col.render(latestItem, index); - return val(latestItem[col.key]); - }; - return h("td", { class: col.class || "" }, [cellContent]); - }) - ); - }, getInternalKeyFn), - - when(() => val(items).length === 0, () => - h("tr", {}, [ - h("td", { colspan: columns.length, class: "text-center p-10 opacity-50" }, [ - val(empty) - ]) - ]) - ) - ]) - ]) - ]); -}; \ No newline at end of file diff --git a/src/components/Tabs.js b/src/components/Tabs.js deleted file mode 100644 index bb220d6..0000000 --- a/src/components/Tabs.js +++ /dev/null @@ -1,105 +0,0 @@ -// components/Tabs.js -import { $, h, watch } from "sigpro"; -import { val, ui, getIcon } from "../utils.js"; - -/** - * Tabs component - * - * daisyUI classes used: - * - tabs, tabs-box, tabs-lift, tabs-border - * - tab, tab-content - * - bg-base-100, border-base-300, p-6 - */ -export const Tabs = (props) => { - const { items, class: className, onTabClose, ...rest } = props; - const itemsSignal = typeof items === "function" ? items : () => items || []; - const activeIndex = $(0); - - watch(() => { - const list = itemsSignal(); - const idx = list.findIndex(it => val(it.active) === true); - if (idx !== -1 && activeIndex() !== idx) { - activeIndex(idx); - } - }); - - const removeTab = (indexToRemove, item) => { - if (item.onClose) item.onClose(item); - if (onTabClose) onTabClose(item, indexToRemove); - - const currentItems = itemsSignal(); - const newItems = currentItems.filter((_, idx) => idx !== indexToRemove); - const isWritableSignal = typeof items === "function" && !items._isComputed; - if (!isWritableSignal) { - console.warn("Tabs: items must be a writable signal to support closable tabs"); - return; - } - items(newItems); - if (newItems.length === 0) return; - let newActive = activeIndex(); - if (indexToRemove < newActive) newActive--; - else if (indexToRemove === newActive) newActive = Math.min(newActive, newItems.length - 1); - activeIndex(newActive); - }; - - return h("div", { ...rest, class: ui('tabs', className) }, () => { - const list = itemsSignal(); - const elements = []; - - for (let i = 0; i < list.length; i++) { - const item = list[i]; - - const label = val(item.label); - const labelNode = label instanceof Node ? label : document.createTextNode(String(label)); - const buttonChildren = []; - - if (item.closable) { - const closeIcon = getIcon("icon-[lucide--x]"); - closeIcon.classList.add("w-3.5", "h-3.5", "ml-2", "cursor-pointer", "hover:opacity-70"); - closeIcon.onclick = (e) => { - e.stopPropagation(); - removeTab(i, item); - }; - const wrapper = h("span", { class: "flex items-center" }, [labelNode, closeIcon]); - buttonChildren.push(wrapper); - } else { - buttonChildren.push(labelNode); - } - - const buttonBase = h("button", { - class: () => ui("tab", activeIndex() === i ? "tab-active" : ""), - onclick: (e) => { - e.preventDefault(); - if (!val(item.disabled)) { - if (item.onclick) item.onclick(); - activeIndex(i); - } - } - }, buttonChildren); - - const button = item.tip - ? h("div", { class: "tooltip", "data-tip": item.tip }, buttonBase) - : buttonBase; - - elements.push(button); - - let contentNode; - const rawContent = val(item.content); - if (typeof rawContent === "function") { - contentNode = rawContent(); - } else if (rawContent instanceof Node) { - contentNode = rawContent; - } else { - contentNode = document.createTextNode(String(rawContent)); - } - - const inner = h("div", { class: "tab-content-inner" }, contentNode); - const panel = h("div", { - class: "tab-content bg-base-100 border-base-300 p-6", - style: () => activeIndex() === i ? "display: block" : "display: none" - }, inner); - elements.push(panel); - } - return elements; - }); -}; \ No newline at end of file diff --git a/src/components/Timeline.js b/src/components/Timeline.js deleted file mode 100644 index 12e1416..0000000 --- a/src/components/Timeline.js +++ /dev/null @@ -1,59 +0,0 @@ -// components/Timeline.js -import { h } from "sigpro"; -import { val, ui, getIcon } from "../utils.js"; - -/** - * Timeline component - * - * daisyUI classes used: - * - timeline, timeline-vertical, timeline-horizontal, timeline-compact - * - timeline-start, timeline-middle, timeline-end, timeline-box - * - flex-1, shadow-sm - * - hr, bg-primary - */ -export const Timeline = (props) => { - const { class: className, items = [], vertical = true, compact = false, ...rest } = props; - - const iconMap = { - info: "icon-[lucide--info]", - success: "icon-[lucide--check-circle]", - warning: "icon-[lucide--alert-triangle]", - error: "icon-[lucide--alert-circle]", - }; - - return h( - "ul", - { - ...rest, - class: () => ui( - `timeline ${val(vertical) ? "timeline-vertical" : "timeline-horizontal"} ${val(compact) ? "timeline-compact" : ""}`, - className - ), - }, - () => { - const list = (typeof items === "function" ? items() : items) || []; - - return list.map((item, i) => { - const isFirst = i === 0; - const isLast = i === list.length - 1; - const itemType = item.type || "success"; - - const isCompleted = () => val(item.completed); - // Nueva lógica: La línea de entrada se pinta si el ANTERIOR estaba completado - const prevCompleted = () => i > 0 && val(list[i - 1].completed); - - const renderSlot = (content) => (typeof content === "function" ? content() : content); - - return h("li", { class: "flex-1" }, [ - !isFirst ? h("hr", { class: () => prevCompleted() ? "bg-primary" : "" }) : null, - h("div", { class: "timeline-start" }, [() => renderSlot(item.title)]), - h("div", { class: "timeline-middle" }, [ - () => item.icon ? getIcon(item.icon) : getIcon(iconMap[itemType] || iconMap.success) - ]), - h("div", { class: "timeline-end timeline-box shadow-sm" }, [() => renderSlot(item.detail)]), - !isLast ? h("hr", { class: () => isCompleted() ? "bg-primary" : "" }) : null, - ]); - }); - } - ); -}; \ No newline at end of file diff --git a/src/components/Toast.js b/src/components/Toast.js deleted file mode 100644 index f20bdc5..0000000 --- a/src/components/Toast.js +++ /dev/null @@ -1,76 +0,0 @@ -// components/Toast.js -import { h, mount } from "sigpro"; -import { getIcon } from "../utils.js"; -import { Button } from "./Button.js"; - -/** - * Toast (Imperative Function) - * - * daisyUI classes used: - * - alert, alert-soft, alert-info, alert-success, alert-warning, alert-error - * - shadow-lg, transition-all, duration-300 - * - translate-x-10, opacity-0, pointer-events-auto - * - fixed, top-0, right-0, z-[9999], p-4, flex, flex-col, gap-2 - * - btn, btn-xs, btn-circle, btn-ghost - */ -export const Toast = (message, type = "alert-success", duration = 3500) => { - let container = document.getElementById("sigpro-toast-container"); - - if (!container) { - container = h("div", { - id: "sigpro-toast-container", - class: "fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none", - }); - document.body.appendChild(container); - } - - const toastHost = h("div", { style: "display: contents" }); - container.appendChild(toastHost); - - let timeoutId; - - const close = () => { - clearTimeout(timeoutId); - const el = toastHost.firstElementChild; - if (el && !el.classList.contains("opacity-0")) { - el.classList.add("translate-x-full", "opacity-0"); - setTimeout(() => { - instance.destroy(); - toastHost.remove(); - if (!container.hasChildNodes()) container.remove(); - }, 300); - } else { - instance.destroy(); - toastHost.remove(); - } - }; - - const ToastComponent = () => { - const closeIcon = getIcon("icon-[lucide--x]"); - - const el = h( - "div", - { - class: `alert alert-soft ${type} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto`, - }, - [ - h("span", {}, [typeof message === "function" ? message() : message]), - button({ - class: "btn-xs btn-circle btn-ghost", - onclick: close - }, closeIcon) - ], - ); - - requestAnimationFrame(() => el.classList.remove("translate-x-10", "opacity-0")); - return el; - }; - - const instance = mount(ToastComponent, toastHost); - - if (duration > 0) { - timeoutId = setTimeout(close, duration); - } - - return close; -}; \ No newline at end of file diff --git a/src/components/Tooltip.js b/src/components/Tooltip.js deleted file mode 100644 index 53819fa..0000000 --- a/src/components/Tooltip.js +++ /dev/null @@ -1,19 +0,0 @@ -// components/Tooltip.js -import { h } from "sigpro"; -import { ui } from "../utils.js"; - -/** - * Tooltip component - * - * daisyUI classes used: - * - tooltip, tooltip-top, tooltip-bottom, tooltip-left, tooltip-right - * - tooltip-primary, tooltip-secondary, tooltip-accent - * - tooltip-info, tooltip-success, tooltip-warning, tooltip-error - * - tooltip-open - */ -export const Tooltip = (props, children) => - h("div", { - ...props, - class: () => ui('tooltip w-full', props.class), - "data-tip": props.tip, - }, children)