From 77a5e61a31ac15790e422cbc9a595c6c9c7700b3 Mon Sep 17 00:00:00 2001 From: thomashamburg Date: Wed, 15 Oct 2025 21:46:18 +0200 Subject: [PATCH] added mvac --- .gitignore | 2 + ...itor _ Mermaid Chart-2025-06-02-073938.svg | 1 + mvac/Makefile | 5 + mvac/basic/main.go | 73 ++ mvac/datastar.md | 133 ++ mvac/datastar/consts.go | 115 ++ mvac/datastar/execute-script-sugar.go | 234 ++++ mvac/datastar/execute.go | 112 ++ mvac/datastar/fragments-sugar.go | 190 +++ mvac/datastar/fragments.go | 190 +++ mvac/datastar/fragments_test.go | 20 + mvac/datastar/signals-sugar.go | 42 + mvac/datastar/signals.go | 147 +++ mvac/datastar/sse-compression.go | 294 +++++ mvac/datastar/sse.go | 212 +++ mvac/datastar/types.go | 15 + mvac/frontend/datastar/datastar.js | 47 + mvac/frontend/datastar/datastar.js.map | 1150 +++++++++++++++++ mvac/frontend/index copy.html | 18 + mvac/frontend/index.html | 409 ++++++ mvac/frontend/landing_page.html | 380 ++++++ mvac/frontend/tailwind/tailwind.js | 8 + mvac/frontend/unocss/tailwind_reset.css | 8 + mvac/frontend/unocss/unocss.js | 17 + mvac/go.mod | 22 + mvac/go.sum | 77 ++ mvac/main_dev.go | 252 ++++ mvac/main_prod.go | 252 ++++ mvac/readme.md | 3 + mvac/routes.go | 25 + mvac/sqlite/database.go | 614 +++++++++ 31 files changed, 5067 insertions(+) create mode 100644 mvac/Editor _ Mermaid Chart-2025-06-02-073938.svg create mode 100644 mvac/Makefile create mode 100644 mvac/basic/main.go create mode 100644 mvac/datastar.md create mode 100644 mvac/datastar/consts.go create mode 100644 mvac/datastar/execute-script-sugar.go create mode 100644 mvac/datastar/execute.go create mode 100644 mvac/datastar/fragments-sugar.go create mode 100644 mvac/datastar/fragments.go create mode 100644 mvac/datastar/fragments_test.go create mode 100644 mvac/datastar/signals-sugar.go create mode 100644 mvac/datastar/signals.go create mode 100644 mvac/datastar/sse-compression.go create mode 100644 mvac/datastar/sse.go create mode 100644 mvac/datastar/types.go create mode 100644 mvac/frontend/datastar/datastar.js create mode 100644 mvac/frontend/datastar/datastar.js.map create mode 100644 mvac/frontend/index copy.html create mode 100644 mvac/frontend/index.html create mode 100644 mvac/frontend/landing_page.html create mode 100644 mvac/frontend/tailwind/tailwind.js create mode 100644 mvac/frontend/unocss/tailwind_reset.css create mode 100644 mvac/frontend/unocss/unocss.js create mode 100644 mvac/go.mod create mode 100644 mvac/go.sum create mode 100644 mvac/main_dev.go create mode 100644 mvac/main_prod.go create mode 100644 mvac/readme.md create mode 100644 mvac/routes.go create mode 100644 mvac/sqlite/database.go diff --git a/.gitignore b/.gitignore index af68f4b..3b94aca 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,5 @@ go.work static.go rawdata + +mva diff --git a/mvac/Editor _ Mermaid Chart-2025-06-02-073938.svg b/mvac/Editor _ Mermaid Chart-2025-06-02-073938.svg new file mode 100644 index 0000000..04ee90b --- /dev/null +++ b/mvac/Editor _ Mermaid Chart-2025-06-02-073938.svg @@ -0,0 +1 @@ +Go Backend (datastar package)Browser (datastar.js)Go Backend (datastar package)Browser (datastar.js)UserInteracts with UISends HTTP Request (optional state)Processes Request (Business Logic)Sends SSE Updates (HTML, data, scripts)Receives UpdatesUpdates DOM & Local State (Signals)Client-side Reactivity updates UI based on state changesUI UpdatedUser \ No newline at end of file diff --git a/mvac/Makefile b/mvac/Makefile new file mode 100644 index 0000000..382134c --- /dev/null +++ b/mvac/Makefile @@ -0,0 +1,5 @@ +run: + go run . + +build: + go build -tags prod . \ No newline at end of file diff --git a/mvac/basic/main.go b/mvac/basic/main.go new file mode 100644 index 0000000..1f8dfa1 --- /dev/null +++ b/mvac/basic/main.go @@ -0,0 +1,73 @@ +package main + +import ( + "crypto/rand" + "encoding/hex" + "fmt" + "log/slog" + "net/http" + "time" + + "github.com/starfederation/datastar/sdk/go/datastar" +) + +const ( + cdn = "https://cdn.jsdelivr.net/gh/starfederation/datastar@develop/bundles/datastar.js" + port = 9001 +) + +func main() { + mux := http.NewServeMux() + + style := "display:flex;flex-direction:column;background-color:oklch(25.3267% 0.015896 252.417568);height:100vh;justify-content:center;align-items:center;font-family:ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';" + + page := []byte(fmt.Sprintf(` + + + + + + + + + + + + + + `, cdn, style, datastar.GetSSE("/stream"))) + + mux.HandleFunc("GET /", func(w http.ResponseWriter, r *http.Request) { + w.Write(page) + }) + + mux.HandleFunc("GET /stream", func(w http.ResponseWriter, r *http.Request) { + ticker := time.NewTicker(100 * time.Millisecond) + defer ticker.Stop() + + sse := datastar.NewSSE(w, r) + for { + select { + case <-r.Context().Done(): + slog.Debug("Client connection closed") + return + case <-ticker.C: + bytes := make([]byte, 3) + + if _, err := rand.Read(bytes); err != nil { + slog.Error("Error generating random bytes: ", slog.String("error", err.Error())) + return + } + hexString := hex.EncodeToString(bytes) + frag := fmt.Sprintf(`%s`, hexString, hexString, hexString) + + sse.MergeFragments(frag) + } + } + }) + + slog.Info(fmt.Sprintf("Server starting at 0.0.0.0:%d", port)) + if err := http.ListenAndServe(fmt.Sprintf("0.0.0.0:%d", port), mux); err != nil { + slog.Error("Error starting server:", slog.String("error", err.Error())) + } +} diff --git a/mvac/datastar.md b/mvac/datastar.md new file mode 100644 index 0000000..9442408 --- /dev/null +++ b/mvac/datastar.md @@ -0,0 +1,133 @@ +# Understanding Datastar: Backend and Frontend Synergy + +You've got it! Understanding how the Go `datastar` package on the server and `datastar.js` in the browser collaborate is key to grasping the "whole picture." Let's break down this synergistic relationship. + +## The Big Idea: Server-Driven Interactivity with Client-Side Reactivity + +Datastar enables you to build dynamic web UIs where the server often dictates changes, sending HTML fragments or instructions over Server-Sent Events (SSE). The client-side datastar.js intelligently applies these updates, manages a local reactive state (called "signals"), and provides declarative ways to bind this state and behavior to your HTML. + +## Step-by-Step Flow + +Here's a step-by-step flow and explanation of how they work together: + +### 1. Initial Page Load & Client-Side Setup (`datastar.js`) + +* **HTML Served**: Your Go application serves an initial HTML page. +* **`datastar.js` Execution**: The browser loads and executes `datastar.js`. +* **DOM Scan & Initialization** (`rt`, `Ie`, `dr` in `datastar.js`): + * `datastar.js` scans the DOM for special attributes (e.g., `data-datastar-show`, `data-datastar-on-click`, `data-datastar-bind`, `data-datastar-signals`). The prefix (`datastar-`) can be aliased using `Kt` (e.g., to just `data-`). + * For each recognized attribute, it initializes the corresponding client-side plugin: + * `data-signals`: Populates the client-side reactive "signal" store with initial values. Signals are like JavaScript variables, but when they change, parts of the UI that depend on them can automatically update. + * `data-computed`: Defines signals whose values are calculated from other signals. + * `data-show`, `data-text`, `data-attr`, `data-class`: These attributes take JavaScript-like expressions. `datastar.js` sets up "effects" that watch the signals mentioned in these expressions. When a relevant signal changes, the expression is re-evaluated, and the DOM is updated accordingly (e.g., an element is shown/hidden, its text content changes). + * `data-bind`: Creates two-way data binding between form input elements and signals. Changes in the input update the signal, and changes to the signal update the input's value. + * `data-on-{event}` (e.g., `data-on-click`): Attaches event listeners. The attribute's value is an expression that gets executed when the event fires. This expression can call "actions." + * `data-ref`: Stores a reference to the DOM element itself in a signal. +* **MutationObserver**: `datastar.js` sets up a `MutationObserver` to automatically initialize any new HTML content that gets added to the page later (e.g., through Datastar's own fragment merging). + +### 2. Client Interaction & Request to Server (`datastar.js` actions) + +* **User Action**: A user interacts with an element, for example, clicks a button: +html + +Action Triggered: The data-on-click directive executes its expression. +@post Action (cn plugin in datastar.js): +The @post(...) syntax calls a registered "action" plugin. datastar.js has built-in actions for HTTP methods (@get, @post, @put, @patch, @delete). +This action initiates an HTTP request to the specified URL (/api/submit-data). +Sending Data to Server (B function in datastar.js): +Headers: A Datastar-Request: true header is added to signal to the server that this is a Datastar-initiated request. The Accept header indicates preference for text/event-stream among others. +Payload: +If contentType: 'json' (default for POST/PUT/PATCH), datastar.js can automatically collect the current values of its signals, JSON-stringify them, and send them in the request body (unless excludeSignals: true). The Go server can then use datastar.ReadSignals() to parse this. +If contentType: 'form', it finds the closest
(or one specified by a selector option), gathers its FormData, and sends that. +For @get requests, signals (if included) are typically sent as a datastar query parameter. +3. Server-Side Processing (Go datastar package) + +Request Handling: Your Go HTTP handler (e.g., in main.go or routes.go) receives the request. +Reading Client Data: +If the client sent signal data, the server can use datastar.ReadSignals(r, &myStruct) to unmarshal it into a Go struct. +Business Logic: The server performs its logic (database queries, calculations, etc.). +Preparing SSE Stream (datastar.NewSSE): +To send updates back, the handler calls sse := datastar.NewSSE(w, r, ...options). +This function: +Sets HTTP headers appropriate for SSE (Content-Type: text/event-stream, Cache-Control: no-cache, Connection: keep-alive). +Can apply compression (e.g., gzip, brotli) to the SSE stream if configured with options like datastar.WithCompression(datastar.WithBrotli()). +Returns a ServerSentEventGenerator (the sse object). +Sending Updates via SSE (sse.Send and sugar methods): The server now uses the sse object to send various types of events to the client: +sse.MergeFragments(htmlString, opts...): +Sends an HTML snippet to the client. +opts can include: +datastar.WithSelector("#target-id") or datastar.WithSelectorf(".css-class-%s", "foo"): Specifies where to merge the HTML. If omitted, Datastar expects the fragment itself to have an ID and will target an element with the same ID. +datastar.WithMergeMode(datastar.FragmentMergeModeInner): How to merge (e.g., morph (default, uses idiomorph-like diffing), inner (innerHTML), outer (replace element), append, prepend, etc.). +datastar.WithViewTransitions(true): To use the browser's View Transition API for smoother updates. +This sends an SSE event with event: datastar-merge-fragments and data lines for the selector, merge mode, and the HTML fragments. +sse.MergeSignals(jsonBytes, opts...) or sse.MarshalAndMergeSignals(goStruct, opts...): +Sends JSON data to update the client's signal store. +opts can include datastar.WithOnlyIfMissing(true). +Sends an SSE event with event: datastar-merge-signals and data lines for the signals JSON. +sse.ExecuteScript(scriptContent, opts...): +Sends JavaScript code for the client to execute. +opts can include datastar.WithExecuteScriptAutoRemove(false) (to keep the script tag) or datastar.WithExecuteScriptAttributes("type module", "defer"). +Sends an SSE event with event: datastar-execute-script and data lines for the script, attributes, and auto-remove flag. +Convenience methods like sse.ConsoleLog("message"), sse.Redirect("/new-page"), sse.DispatchCustomEvent("my-event", detail) are built on top of ExecuteScript. +sse.RemoveFragments(selector, opts...): +Instructs the client to remove DOM elements matching the CSS selector. +Sends an SSE event with event: datastar-remove-fragments. +sse.RemoveSignals(path1, path2, ...): +Instructs the client to remove specified signals from its store. +Sends an SSE event with event: datastar-remove-signals. +Templating Integration: Methods like sse.MergeFragmentTempl(myTemplComponent) allow rendering Go templates (like Templ) directly into an HTML fragment string before sending. +4. Client-Side Reception & DOM/State Update (datastar.js watchers) + +SSE Connection (Er in datastar.js): datastar.js maintains the SSE connection established by an action (like @post). +Event Parsing (hr, vr in datastar.js): When an SSE message arrives: +It's parsed into its components (event type, data lines, id, retry). +An internal Datastar event is dispatched (e.g., ne(ge, s, F) which corresponds to datastar-merge-fragments). +Watcher Plugins Handle Events: Specific "watcher" plugins in datastar.js listen for these internal events: +datastar-merge-fragments (handled by An plugin): +Parses the selector, mergeMode, fragments, and useViewTransition from the event data. +Locates the target DOM element(s). +If useViewTransition is enabled, it wraps the DOM update in document.startViewTransition(...). +Applies the fragment using the specified mergeMode: +morph (xr function): This is the most sophisticated mode. It uses an algorithm similar to idiomorph to diff the existing DOM with the new fragment and apply only the necessary changes. This is efficient and helps preserve things like input focus and scroll position. It respects data-datastar-ignore-morph attributes. +Others (inner, outer, append, etc.): Perform straightforward DOM manipulations. +Crucially, after merging, it re-scans the modified/new elements (ce(o, Ie)) to initialize any Datastar attributes within them, ensuring new content is also reactive. +datastar-merge-signals (handled by wn plugin): +Parses the JSON payload of signals. +Updates the client-side signal store (ke function). This is batched (Pe function) to optimize updates. +datastar-execute-script (handled by fn plugin): +Creates a + + + + + + + + + + + \ No newline at end of file diff --git a/mvac/frontend/index.html b/mvac/frontend/index.html new file mode 100644 index 0000000..059c8e1 --- /dev/null +++ b/mvac/frontend/index.html @@ -0,0 +1,409 @@ + + + + + + + Modern Landing Page + + + + + + + + + + + + + + + + +
+
+
+

+ Build Something + Amazing +

+

+ We help businesses create exceptional digital experiences that drive growth and engage customers + like never before. +

+
+ + +
+
+
+
+ + +
+
+
+ +

Why Choose Us

+
+ +
+

+ We deliver exceptional results through innovation, expertise, and dedication to your success. +

+
+
+
+
+ + + +
+

Lightning Fast

+

Optimized performance that delivers results in milliseconds, not minutes. +

+
+
+
+ + + +
+

Reliable

+

99.9% uptime guarantee with enterprise-grade security and support.

+
+
+
+ + + + +
+

User Focused!!

+

Designed with your users in mind for the best possible experience.

+
+
+
+
+ + +
+
+
+
+

About Our Company

+

+ With over a decade of experience in digital innovation, we've helped hundreds of companies + transform their ideas into successful digital products. +

+

+ Our team of experts combines creativity with technical excellence to deliver solutions that not + only meet your needs but exceed your expectations. +

+
+
+
+ 10+ Years of Experience +
+
+
+ 500+ Successful Projects +
+
+
+ 24/7 Customer Support +
+
+
+
+
+
🚀
+

Innovation at Its Best

+
+
+
+
+
+ + +
+
+
+

Our Services

+

+ Comprehensive solutions tailored to meet your unique business needs and drive growth. +

+
+
+
+
+ + + +
+

Web Development

+

Custom web applications built with modern technologies and best practices. +

+
+
+
+ + + +
+

Mobile Apps

+

Native and cross-platform mobile applications for iOS and Android.

+
+
+
+ + + + +
+

UI/UX Design

+

Beautiful, intuitive designs that enhance user experience and engagement. +

+
+
+
+
+ + +
+
+
+

Get In Touch

+

+ Ready to start your next project? We'd love to hear from you and discuss how we can help. +

+
+
+
+

Contact Information

+
+
+
+ + + + +
+
+

Email

+

hello@yourbrand.com

+
+
+
+
+ + + + +
+
+

Phone

+

+1 (555) 123-4567

+
+
+
+
+ + + + + +
+
+

Address

+

123 Business St, City, State 12345

+
+
+
+
+
+ +
+ +
+
+ +
+
+ +
+ + +
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/mvac/frontend/landing_page.html b/mvac/frontend/landing_page.html new file mode 100644 index 0000000..5e10b09 --- /dev/null +++ b/mvac/frontend/landing_page.html @@ -0,0 +1,380 @@ + + + + + + + Modern Landing Page + + + + + + + + + + + + +
+
+
+

+ Build Something + Amazing +

+

+ We help businesses create exceptional digital experiences that drive growth and engage customers + like never before. +

+
+ + +
+
+
+
+ + +
+
+
+ +

Why Choose Us

+
+ +
+

+ We deliver exceptional results through innovation, expertise, and dedication to your success. +

+
+
+
+
+ + + +
+

Lightning Fast

+

Optimized performance that delivers results in milliseconds, not minutes. +

+
+
+
+ + + +
+

Reliable

+

99.9% uptime guarantee with enterprise-grade security and support.

+
+
+
+ + + + +
+

User Focused!!

+

Designed with your users in mind for the best possible experience.

+
+
+
+
+ + +
+
+
+
+

About Our Company

+

+ With over a decade of experience in digital innovation, we've helped hundreds of companies + transform their ideas into successful digital products. +

+

+ Our team of experts combines creativity with technical excellence to deliver solutions that not + only meet your needs but exceed your expectations. +

+
+
+
+ 10+ Years of Experience +
+
+
+ 500+ Successful Projects +
+
+
+ 24/7 Customer Support +
+
+
+
+
+
🚀
+

Innovation at Its Best

+
+
+
+
+
+ + +
+
+
+

Our Services

+

+ Comprehensive solutions tailored to meet your unique business needs and drive growth. +

+
+
+
+
+ + + +
+

Web Development

+

Custom web applications built with modern technologies and best practices. +

+
+
+
+ + + +
+

Mobile Apps

+

Native and cross-platform mobile applications for iOS and Android.

+
+
+
+ + + + +
+

UI/UX Design

+

Beautiful, intuitive designs that enhance user experience and engagement. +

+
+
+
+
+ + +
+
+
+

Get In Touch

+

+ Ready to start your next project? We'd love to hear from you and discuss how we can help. +

+
+
+
+

Contact Information

+
+
+
+ + + + +
+
+

Email

+

hello@yourbrand.com

+
+
+
+
+ + + + +
+
+

Phone

+

+1 (555) 123-4567

+
+
+
+
+ + + + + +
+
+

Address

+

123 Business St, City, State 12345

+
+
+
+
+
+
+
+ +
+
+ +
+
+ +
+ +
+
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/mvac/frontend/tailwind/tailwind.js b/mvac/frontend/tailwind/tailwind.js new file mode 100644 index 0000000..70f9c0b --- /dev/null +++ b/mvac/frontend/tailwind/tailwind.js @@ -0,0 +1,8 @@ +/** + * Minified by jsDelivr using Terser v5.39.0. + * Original file: /npm/@tailwindcss/browser@4.1.8/dist/index.global.js + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +"use strict";(()=>{var e=10;function t(t,o){let i=o?.from?{file:o.from,code:t}:null;"\ufeff"===t[0]&&(t=" "+t.slice(1));let a,l=[],s=[],c=[],u=null,d=null,f="",p="",h=0;for(let o=0;o0&&t[n]===e[e.length-1]&&(e=e.slice(0,-1))}}let c=n(f,s);if(!c)throw new Error("Invalid custom property, expected a value");i&&(c.src=[i,r,o],c.dst=[i,r,o]),u?u.nodes.push(c):l.push(c),f=""}else if(59===m&&64===f.charCodeAt(0))d=r(f),i&&(d.src=[i,h,o],d.dst=[i,h,o]),u?u.nodes.push(d):l.push(d),f="",d=null;else if(59===m&&")"!==p[p.length-1]){let e=n(f);if(!e)throw 0===f.length?new Error("Unexpected semicolon"):new Error(`Invalid declaration: \`${f.trim()}\``);i&&(e.src=[i,h,o],e.dst=[i,h,o]),u?u.nodes.push(e):l.push(e),f=""}else if(123===m&&")"!==p[p.length-1])p+="}",d=b(f.trim()),i&&(d.src=[i,h,o],d.dst=[i,h,o]),u&&u.nodes.push(d),c.push(u),u=d,f="",d=null;else if(125===m&&")"!==p[p.length-1]){if(""===p)throw new Error("Missing opening {");if(p=p.slice(0,-1),f.length>0)if(64===f.charCodeAt(0))d=r(f),i&&(d.src=[i,h,o],d.dst=[i,h,o]),u?u.nodes.push(d):l.push(d),f="",d=null;else{let e=f.indexOf(":");if(u){let t=n(f,e);if(!t)throw new Error(`Invalid declaration: \`${f.trim()}\``);i&&(t.src=[i,h,o],t.dst=[i,h,o]),u.nodes.push(t)}}let e=c.pop()??null;null===e&&u&&l.push(u),u=e,f="",d=null}else if(40===m)p+=")",f+="(";else if(41===m){if(")"!==p[p.length-1])throw new Error("Missing opening (");p=p.slice(0,-1),f+=")"}else{if(0===f.length&&(32===m||m===e||9===m))continue;""===f&&(h=o),f+=String.fromCharCode(m)}}}if(64===f.charCodeAt(0)){let e=r(f);i&&(e.src=[i,h,t.length],e.dst=[i,h,t.length]),l.push(e)}if(p.length>0&&u){if("rule"===u.kind)throw new Error(`Missing closing } at ${u.selector}`);if("at-rule"===u.kind)throw new Error(`Missing closing } at ${u.name} ${u.params}`)}return s.length>0?s.concat(l):l}function r(e,t=[]){let r=e,n="";for(let t=5;t=1&&t<=31||127===t||0===o&&t>=48&&t<=57||1===o&&t>=48&&t<=57&&45===a?"\\"+t.toString(16)+" ":t>=128||45===t||95===t||t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122?r.charAt(o):"\\"+r.charAt(o):"�";return i}function i(e){return e.replace(/\\([\dA-Fa-f]{1,6}[\t\n\f\r ]?|[\S\s])/g,(e=>e.length>2?String.fromCodePoint(Number.parseInt(e.slice(1).trim(),16)):e[1]))}var a=new Map([["--font",["--font-weight","--font-size"]],["--inset",["--inset-shadow","--inset-ring"]],["--text",["--text-color","--text-decoration-color","--text-decoration-thickness","--text-indent","--text-shadow","--text-underline-offset"]]]);function l(e,t){return(a.get(t)??[]).some((t=>e===t||e.startsWith(`${t}-`)))}var s=class{constructor(e=new Map,t=new Set([])){this.values=e,this.keyframes=t}prefix=null;get size(){return this.values.size}add(e,t,r=0,n){if(e.endsWith("-*")){if("initial"!==t)throw new Error(`Invalid theme value \`${t}\` for namespace \`${e}\``);"--*"===e?this.values.clear():this.clearNamespace(e.slice(0,-2),0)}if(4&r){let t=this.values.get(e);if(t&&!(4&t.options))return}"initial"===t?this.values.delete(e):this.values.set(e,{value:t,options:r,src:n})}keysInNamespaces(e){let t=[];for(let r of e){let e=`${r}-`;for(let n of this.values.keys())n.startsWith(e)&&-1===n.indexOf("--",2)&&(l(n,r)||t.push(n.slice(e.length)))}return t}get(e){for(let t of e){let e=this.values.get(t);if(e)return e.value}return null}hasDefault(e){return!(4&~this.getOptions(e))}getOptions(e){return e=i(this.#e(e)),this.values.get(e)?.options??0}entries(){return this.prefix?Array.from(this.values,(e=>(e[0]=this.prefixKey(e[0]),e))):this.values.entries()}prefixKey(e){return this.prefix?`--${this.prefix}-${e.slice(2)}`:e}#e(e){return this.prefix?`--${e.slice(3+this.prefix.length)}`:e}clearNamespace(e,t){let r=a.get(e)??[];e:for(let n of this.values.keys())if(n.startsWith(e)){if(0!==t&&(this.getOptions(n)&t)!==t)continue;for(let e of r)if(n.startsWith(e))continue e;this.values.delete(n)}}#t(e,t){for(let r of t){let t=null!==e?`${r}-${e}`:r;if(!this.values.has(t)){if(null===e||!e.includes("."))continue;if(t=`${r}-${e.replaceAll(".","_")}`,!this.values.has(t))continue}if(!l(t,r))return t}return null}#r(e){let t=this.values.get(e);if(!t)return null;let r=null;return 2&t.options&&(r=t.value),`var(${o(this.prefixKey(e))}${r?`, ${r}`:""})`}markUsedVariable(e){let t=i(this.#e(e)),r=this.values.get(t);if(!r)return!1;let n=16&r.options;return r.options|=16,!n}resolve(e,t,r=0){let n=this.#t(e,t);if(!n)return null;let o=this.values.get(n);return 1&(r|o.options)?o.value:this.#r(n)}resolveValue(e,t){let r=this.#t(e,t);return r?this.values.get(r).value:null}resolveWith(e,t,r=[]){let n=this.#t(e,t);if(!n)return null;let o={};for(let e of r){let t=`${n}${e}`,r=this.values.get(t);r&&(1&r.options?o[e]=r.value:o[e]=this.#r(t))}let i=this.values.get(n);return 1&i.options?[i.value,o]:[this.#r(n),o]}namespace(e){let t=new Map,r=`${e}-`;for(let[n,o]of this.values)n===e?t.set(null,o.value):n.startsWith(`${r}-`)?t.set(n.slice(e.length),o.value):n.startsWith(r)&&t.set(n.slice(r.length),o.value);return t}addKeyframes(e){this.keyframes.add(e)}getKeyframes(){return Array.from(this.keyframes)}},c=class extends Map{constructor(e){super(),this.factory=e}get(e){let t=super.get(e);return void 0===t&&(t=this.factory(e,this),this.set(e,t)),t}};function u(e){return{kind:"word",value:e}}function d(e,t){return{kind:"function",value:e,nodes:t}}function f(e){return{kind:"separator",value:e}}function p(e,t,r=null){for(let n=0;n0){let e=u(i);o?o.nodes.push(e):r.push(e),i=""}let n=a,l=a+1;for(;l0){let t=u(i);e?.nodes.push(t),i=""}o=n.length>0?n[n.length-1]:null;break}default:i+=String.fromCharCode(l)}}return i.length>0&&r.push(u(i)),r}function g(e){let t=[];return p(m(e),(e=>{if("function"===e.kind&&"var"===e.value)return p(e.nodes,(e=>{"word"!==e.kind||"-"!==e.value[0]||"-"!==e.value[1]||t.push(e.value)})),1})),t}var v=64;function w(e,t=[]){return{kind:"rule",selector:e,nodes:t}}function k(e,t="",r=[]){return{kind:"at-rule",name:e,params:t,nodes:r}}function b(e,t=[]){return e.charCodeAt(0)===v?r(e,t):w(e,t)}function y(e,t,r=!1){return{kind:"declaration",property:e,value:t,important:r}}function x(e){return{kind:"comment",value:e}}function $(e,t){return{kind:"context",context:e,nodes:t}}function z(e){return{kind:"at-root",nodes:e}}function A(e,t,r=[],n={}){for(let o=0;onew Set)),a=new c((()=>new Set)),l=new Set,s=new Set,u=[],d=[],f=new c((()=>new Set));function v(e,c,p={},h=0){if("declaration"===e.kind){if("--tw-sort"===e.property||void 0===e.value||null===e.value)return;if(p.theme&&"-"===e.property[0]&&"-"===e.property[1]){if("initial"===e.value)return void(e.value=void 0);p.keyframes||i.get(c).add(e)}if(e.value.includes("var("))if(p.theme&&"-"===e.property[0]&&"-"===e.property[1])for(let t of g(e.value))f.get(t).add(e.property);else t.trackUsedVariables(e.value);if("animation"===e.property)for(let t of E(e.value))s.add(t);2&r&&e.value.includes("color-mix(")&&a.get(c).add(e),c.push(e)}else if("rule"===e.kind)if("&"===e.selector)for(let t of e.nodes){let e=[];v(t,e,p,h+1),e.length>0&&c.push(...e)}else{let t={...e,nodes:[]};for(let r of e.nodes)v(r,t.nodes,p,h+1);t.nodes.length>0&&c.push(t)}else if("at-rule"===e.kind&&"@property"===e.name&&0===h){if(o.has(e.params))return;if(1&r){let t=e.params,r=null,n=!1;for(let t of e.nodes)"declaration"===t.kind&&("initial-value"===t.property?r=t.value:"inherits"===t.property&&(n="true"===t.value));let o=y(t,r??"initial");o.src=e.src,n?u.push(o):d.push(o)}o.add(e.params);let t={...e,nodes:[]};for(let r of e.nodes)v(r,t.nodes,p,h+1);c.push(t)}else if("at-rule"===e.kind){"@keyframes"===e.name&&(p={...p,keyframes:!0});let t={...e,nodes:[]};for(let r of e.nodes)v(r,t.nodes,p,h+1);"@keyframes"===e.name&&p.theme&&l.add(t),(t.nodes.length>0||"@layer"===t.name||"@charset"===t.name||"@custom-media"===t.name||"@namespace"===t.name||"@import"===t.name)&&c.push(t)}else if("at-root"===e.kind)for(let t of e.nodes){let e=[];v(t,e,p,0);for(let t of e)n.push(t)}else if("context"===e.kind){if(e.context.reference)return;for(let t of e.nodes)v(t,c,{...p,...e.context},h)}else"comment"===e.kind&&c.push(e)}let w=[];for(let t of e)v(t,w,{},0);e:for(let[e,r]of i)for(let n of r){if(K(n.property,t.theme,f)){if(n.property.startsWith(t.theme.prefixKey("--animate-")))for(let e of E(n.value))s.add(e);continue}let r=e.indexOf(n);if(e.splice(r,1),0===e.length){let t=S(w,(t=>"rule"===t.kind&&t.nodes===e));if(!t||0===t.length)continue e;for(t.unshift({kind:"at-root",nodes:w});;){let e=t.pop();if(!e)break;let r=t[t.length-1];if(!r||"at-root"!==r.kind&&"at-rule"!==r.kind)break;let n=r.nodes.indexOf(e);if(-1===n)break;r.nodes.splice(n,1)}continue e}}for(let e of l)if(!s.has(e.params)){let t=n.indexOf(e);n.splice(t,1)}if(w=w.concat(n),2&r)for(let[e,r]of a)for(let n of r){let r=e.indexOf(n);if(-1===r||null==n.value)continue;let o=m(n.value),i=!1;if(p(o,((e,{replaceWith:r})=>{if("function"!==e.kind||"color-mix"!==e.value)return;let n=!1,o=!1;if(p(e.nodes,((e,{replaceWith:r})=>{if("word"==e.kind&&"currentcolor"===e.value.toLowerCase())return o=!0,void(i=!0);let a=e,l=null,s=new Set;do{if("function"!==a.kind||"var"!==a.value)return;let e=a.nodes[0];if(!e||"word"!==e.kind)return;let r=e.value;if(s.has(r))return void(n=!0);if(s.add(r),i=!0,l=t.theme.resolveValue(null,[e.value]),!l)return void(n=!0);if("currentcolor"===l.toLowerCase())return void(o=!0);a=l.startsWith("var(")?m(l)[0]:null}while(a);r({kind:"word",value:l})})),n||o){let t=e.nodes.findIndex((e=>"separator"===e.kind&&e.value.trim().includes(",")));if(-1===t)return;let n=e.nodes.length>t?e.nodes[t+1]:null;if(!n)return;r(n)}else if(i){let t=e.nodes[2];"word"===t.kind&&("oklab"===t.value||"oklch"===t.value||"lab"===t.value||"lch"===t.value)&&(t.value="srgb")}})),!i)continue;let a={...n,value:h(o)},l=b("@supports (color: color-mix(in lab, red, red))",[n]);l.src=n.src,e.splice(r,1,a,l)}if(1&r){let e=[];if(u.length>0){let t=b(":root, :host",u);t.src=u[0].src,e.push(t)}if(d.length>0){let t=b("*, ::before, ::after, ::backdrop",d);t.src=d[0].src,e.push(t)}if(e.length>0){let t=w.findIndex((e=>!("comment"===e.kind||"at-rule"===e.kind&&("@charset"===e.name||"@import"===e.name)))),r=k("@layer","properties",[]);r.src=e[0].src,w.splice(t<0?w.length:t,0,r);let n=b("@layer properties",[k("@supports","((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b))))",e)]);n.src=e[0].src,n.nodes[0].src=e[0].src,w.push(n)}}return w}function T(e,t){let r=0,n={file:null,code:""};function o(e,i=0){let a="",l=" ".repeat(i);if("declaration"===e.kind){if(a+=`${l}${e.property}: ${e.value}${e.important?" !important":""};\n`,t){r+=l.length;let t=r;r+=e.property.length,r+=2,r+=e.value?.length??0,e.important&&(r+=11);let o=r;r+=2,e.dst=[n,t,o]}}else if("rule"===e.kind){if(a+=`${l}${e.selector} {\n`,t){r+=l.length;let t=r;r+=e.selector.length,r+=1;let o=r;e.dst=[n,t,o],r+=2}for(let t of e.nodes)a+=o(t,i+1);a+=`${l}}\n`,t&&(r+=l.length,r+=2)}else if("at-rule"===e.kind){if(0===e.nodes.length){let o=`${l}${e.name} ${e.params};\n`;if(t){r+=l.length;let t=r;r+=e.name.length,r+=1,r+=e.params.length;let o=r;r+=2,e.dst=[n,t,o]}return o}if(a+=`${l}${e.name}${e.params?` ${e.params} `:" "}{\n`,t){r+=l.length;let t=r;r+=e.name.length,e.params&&(r+=1,r+=e.params.length),r+=1;let o=r;e.dst=[n,t,o],r+=2}for(let t of e.nodes)a+=o(t,i+1);a+=`${l}}\n`,t&&(r+=l.length,r+=2)}else if("comment"===e.kind){if(a+=`${l}/*${e.value}*/\n`,t){r+=l.length;let t=r;r+=2+e.value.length+2;let o=r;e.dst=[n,t,o],r+=1}}else if("context"===e.kind||"at-root"===e.kind)return"";return a}let i="";for(let t of e)i+=o(t,0);return n.code=i,i}function S(e,t){let r=[];return A(e,((e,{path:n})=>{if(t(e))return r=[...n],2})),r}function K(e,t,r,n=new Set){if(n.has(e)||(n.add(e),24&t.getOptions(e)))return!0;{let o=r.get(e)??[];for(let e of o)if(K(e,t,r,n))return!0}return!1}function E(e){return e.split(/[\s,]+/)}var V=["calc","min","max","clamp","mod","rem","sin","cos","tan","asin","acos","atan","atan2","pow","sqrt","hypot","log","exp","round"],N=["anchor-size"],O=new RegExp(`(${N.join("|")})\\(`,"g");function F(e){return-1!==e.indexOf("(")&&V.some((t=>e.includes(`${t}(`)))}function W(e){if(-1===e.indexOf("("))return U(e);let t=m(e);return D(t),e=function(e){if(!V.some((t=>e.includes(t))))return e;let t=!1;N.some((t=>e.includes(t)))&&(O.lastIndex=0,e=e.replace(O,((e,r)=>(t=!0,`$${N.indexOf(r)}$(`))));let r="",n=[];for(let t=0;t=0;r--){let t=e.charCodeAt(r);if(t>=48&&t<=57)i=r;else{if(!(t>=97&&t<=122))break;i=r}}let a=e.slice(i,t);if(V.includes(a)){n.unshift(!0);continue}if(n[0]&&""===a){n.unshift(!0);continue}n.unshift(!1)}}return t?r.replace(/\$(\d+)\$/g,((e,t)=>N[t]??e)):r}(e=h(t)),e}function U(e,t=!1){let r="";for(let n=0;n0&&o===M[t-1]&&t--;break;case 59:if(0===t)return!1}}return!0}var L=new Uint8Array(256);function I(e,t){let r=0,n=[],o=0,i=e.length,a=t.charCodeAt(0);for(let t=0;t0&&l===L[r-1]&&r--}else n.push(e.slice(o,t)),o=t+1}return n.push(e.slice(o)),n}function R(e){if("["===e[0]&&"]"===e[e.length-1]){let t=W(e.slice(1,-1));return B(t)&&0!==t.length&&0!==t.trim().length?{kind:"arbitrary",value:t}:null}return"("===e[0]&&")"===e[e.length-1]?"-"===(e=e.slice(1,-1))[0]&&"-"===e[1]&&B(e)?{kind:"arbitrary",value:W(e=`var(${e})`)}:null:{kind:"named",value:e}}function*P(e,t){t(e)&&(yield[e,null]);let r=e.lastIndexOf("-");for(;r>0;){let n=e.slice(0,r);if(t(n)){let t=[n,e.slice(r+1)];if(""===t[1])break;yield t}r=e.lastIndexOf("-",r-1)}"@"===e[0]&&t("@")&&(yield["@",e.slice(1)])}function q(e){if(null===e)return"";let t=Q(e.value),r=t?e.value.slice(4,-1):e.value,[n,o]=t?["(",")"]:["[","]"];return"arbitrary"===e.kind?`/${n}${Y(r)}${o}`:"named"===e.kind?`/${e.value}`:""}function H(e){if("static"===e.kind)return e.root;if("arbitrary"===e.kind)return`[${Y(function(e){return G.get(e)}(e.selector))}]`;let t="";if("functional"===e.kind){t+=e.root;let r="@"!==e.root;if(e.value)if("arbitrary"===e.value.kind){let n=Q(e.value.value),o=n?e.value.value.slice(4,-1):e.value.value,[i,a]=n?["(",")"]:["[","]"];t+=`${r?"-":""}${i}${Y(o)}${a}`}else"named"===e.value.kind&&(t+=`${r?"-":""}${e.value.value}`)}return"compound"===e.kind&&(t+=e.root,t+="-",t+=H(e.variant)),("functional"===e.kind||"compound"===e.kind)&&(t+=q(e.modifier)),t}var Z=new c((e=>{let t=m(e),r=new Set;return p(t,((e,{parent:n})=>{let o=null===n?t:n.nodes??[];if("word"!==e.kind||"+"!==e.value&&"-"!==e.value&&"*"!==e.value&&"/"!==e.value)"separator"===e.kind&&"/"===e.value.trim()?e.value="/":"separator"===e.kind&&e.value.length>0&&""===e.value.trim()?(o[0]===e||o[o.length-1]===e)&&r.add(e):"separator"===e.kind&&","===e.value.trim()&&(e.value=",");else{let t=o.indexOf(e)??-1;if(-1===t)return;let n=o[t-1];if("separator"!==n?.kind||" "!==n.value)return;let i=o[t+1];if("separator"!==i?.kind||" "!==i.value)return;r.add(n),r.add(i)}})),r.size>0&&p(t,((e,{replaceWith:t})=>{r.has(e)&&(r.delete(e),t([]))})),J(t),h(t)}));function Y(e){return Z.get(e)}var G=new c((e=>{let t=m(e);return 3===t.length&&"word"===t[0].kind&&"&"===t[0].value&&"separator"===t[1].kind&&":"===t[1].value&&"function"===t[2].kind&&"is"===t[2].value?h(t[2].nodes):e}));function J(e){for(let t of e)switch(t.kind){case"function":if("url"===t.value||t.value.endsWith("_url")){t.value=te(t.value);break}if("var"===t.value||t.value.endsWith("_var")||"theme"===t.value||t.value.endsWith("_theme")){t.value=te(t.value);for(let e=0;e{let t=m(e);return 1===t.length&&"function"===t[0].kind&&"var"===t[0].value}));function Q(e){return X.get(e)}function ee(e){throw new Error(`Unexpected value: ${e}`)}function te(e){return e.replaceAll("_",String.raw`\_`).replaceAll(" ","_")}function re(e,t,r){if(e===t)return 0;let n=e.indexOf("("),o=t.indexOf("("),i=-1===n?e.replace(/[\d.]+/g,""):e.slice(0,n),a=-1===o?t.replace(/[\d.]+/g,""):t.slice(0,o),l=(i===a?0:i0},"bg-size":function(e){let t=0;for(let r of I(e,",")){if("cover"===r||"contain"===r){t+=1;continue}let e=I(r," ");if(1!==e.length&&2!==e.length)return!1;e.every((e=>"auto"===e||we(e)||me(e)))&&(t+=1)}return t>0},"line-width":function(e){return I(e," ").every((e=>we(e)||pe(e)||"thin"===e||"medium"===e||"thick"===e))},image:function(e){let t=0;for(let r of I(e,","))if(!r.startsWith("var(")){if(se(r)){t+=1;continue}if(ue.test(r)){t+=1;continue}if(ce.test(r)){t+=1;continue}return!1}return t>0},"family-name":function(e){let t=0;for(let r of I(e,",")){let e=r.charCodeAt(0);if(e>=48&&e<=57)return!1;r.startsWith("var(")||(t+=1)}return t>0},"generic-name":function(e){return"serif"===e||"sans-serif"===e||"monospace"===e||"cursive"===e||"fantasy"===e||"system-ui"===e||"ui-serif"===e||"ui-sans-serif"===e||"ui-monospace"===e||"ui-rounded"===e||"math"===e||"emoji"===e||"fangsong"===e},"absolute-size":function(e){return"xx-small"===e||"x-small"===e||"small"===e||"medium"===e||"large"===e||"x-large"===e||"xx-large"===e||"xxx-large"===e},"relative-size":function(e){return"larger"===e||"smaller"===e},angle:function(e){return ke.test(e)},vector:function(e){return be.test(e)}};function ae(e,t){if(e.startsWith("var("))return null;for(let r of t)if(ie[r]?.(e))return r;return null}var le=/^url\(.*\)$/;function se(e){return le.test(e)}var ce=/^(?:element|image|cross-fade|image-set)\(/,ue=/^(repeating-)?(conic|linear|radial)-gradient\(/;var de=/[+-]?\d*\.?\d+(?:[eE][+-]?\d+)?/,fe=new RegExp(`^${de.source}$`);function pe(e){return fe.test(e)||F(e)}var he=new RegExp(`^${de.source}%$`);function me(e){return he.test(e)||F(e)}var ge=new RegExp(`^${de.source}s*/s*${de.source}$`);var ve=new RegExp(`^${de.source}(${["cm","mm","Q","in","pc","pt","px","em","ex","ch","rem","lh","rlh","vw","vh","vmin","vmax","vb","vi","svw","svh","lvw","lvh","dvw","dvh","cqw","cqh","cqi","cqb","cqmin","cqmax"].join("|")})$`);function we(e){return ve.test(e)||F(e)}var ke=new RegExp(`^${de.source}(${["deg","rad","grad","turn"].join("|")})$`);var be=new RegExp(`^${de.source} +${de.source} +${de.source}$`);function ye(e){let t=Number(e);return Number.isInteger(t)&&t>=0&&String(t)===String(e)}function xe(e){let t=Number(e);return Number.isInteger(t)&&t>0&&String(t)===String(e)}function $e(e){return Ae(e,.25)}function ze(e){return Ae(e,.25)}function Ae(e,t){let r=Number(e);return r>=0&&r%t==0&&String(r)===String(e)}var Ce=new Set(["inset","inherit","initial","revert","unset"]),je=/^-?(\d+|\.\d+)(.*?)$/g;function Te(e,t){return I(e,",").map((e=>{let r=I(e=e.trim()," ").filter((e=>""!==e.trim())),n=null,o=null,i=null;for(let e of r)Ce.has(e)||(je.test(e)?(null===o?o=e:null===i&&(i=e),je.lastIndex=0):null===n&&(n=e));if(null===o||null===i)return e;let a=t(n??"currentcolor");return null!==n?e.replace(n,a):`${e} ${a}`})).join(", ")}var Se=/^-?[a-z][a-zA-Z0-9/%._-]*$/,Ke=/^-?[a-z][a-zA-Z0-9/%._-]*-\*$/,Ee=["0","0.5","1","1.5","2","2.5","3","3.5","4","5","6","7","8","9","10","11","12","14","16","20","24","28","32","36","40","44","48","52","56","60","64","72","80","96"],Ve=class{utilities=new c((()=>[]));completions=new Map;static(e,t){this.utilities.get(e).push({kind:"static",compileFn:t})}functional(e,t,r){this.utilities.get(e).push({kind:"functional",compileFn:t,options:r})}has(e,t){return this.utilities.has(e)&&this.utilities.get(e).some((e=>e.kind===t))}get(e){return this.utilities.has(e)?this.utilities.get(e):[]}getCompletions(e){return this.completions.get(e)?.()??[]}suggest(e,t){this.completions.set(e,t)}keys(e){let t=[];for(let[r,n]of this.utilities.entries())for(let o of n)if(o.kind===e){t.push(r);break}return t}};function Ne(e,t,r){return k("@property",e,[y("syntax",r?`"${r}"`:'"*"'),y("inherits","false"),...t?[y("initial-value",t)]:[]])}function Oe(e,t){if(null===t)return e;let r=Number(t);return Number.isNaN(r)||(t=100*r+"%"),"100%"===t?e:`color-mix(in oklab, ${e} ${t}, transparent)`}function Fe(e,t){let r=Number(t);return Number.isNaN(r)||(t=100*r+"%"),`oklab(from ${e} l a b / ${t})`}function We(e,t,r){if(!t)return e;if("arbitrary"===t.kind)return Oe(e,t.value);let n=r.resolve(t.value,["--opacity"]);return n?Oe(e,n):ze(t.value)?Oe(e,`${t.value}%`):null}function Ue(e,t,r){let n=null;switch(e.value.value){case"inherit":n="inherit";break;case"transparent":n="transparent";break;case"current":n="currentcolor";break;default:n=t.resolve(e.value.value,r)}return n?We(n,e.modifier,t):null}var De=/(\d+)_(\d+)/g;var _e=["number","integer","ratio","percentage"];function Me(e,t,r){for(let n of t.nodes){if("named"===e.kind&&"word"===n.kind&&("'"===n.value[0]||'"'===n.value[0])&&n.value[n.value.length-1]===n.value[0]&&n.value.slice(1,-1)===e.value)return{nodes:m(e.value)};if("named"===e.kind&&"word"===n.kind&&"-"===n.value[0]&&"-"===n.value[1]){let t=n.value;if(t.endsWith("-*")){t=t.slice(0,-2);let n=r.theme.resolve(e.value,[t]);if(n)return{nodes:m(n)}}else{let n=t.split("-*");if(n.length<=1)continue;let o=[n.shift()],i=r.theme.resolveWith(e.value,o,n);if(i){let[,e={}]=i;{let t=e[n.pop()];if(t)return{nodes:m(t)}}}}}else{if("named"===e.kind&&"word"===n.kind){if(!_e.includes(n.value))continue;let t="ratio"===n.value&&"fraction"in e?e.fraction:e.value;if(!t)continue;let r=ae(t,[n.value]);if(null===r)continue;if("ratio"===r){let[e,r]=I(t,"/");if(!ye(e)||!ye(r))continue}else{if("number"===r&&!$e(t))continue;if("percentage"===r&&!ye(t.slice(0,-1)))continue}return{nodes:m(t),ratio:"ratio"===r}}if("arbitrary"===e.kind&&"word"===n.kind&&"["===n.value[0]&&"]"===n.value[n.value.length-1]){let t=n.value.slice(1,-1);if("*"===t)return{nodes:m(e.value)};if("dataType"in e&&e.dataType&&e.dataType!==t)continue;if("dataType"in e&&e.dataType)return{nodes:m(e.value)};if(null!==ae(e.value,[t]))return{nodes:m(e.value)}}}}}function Be(e,t,r,n,o=""){let i=!1,a=Te(t,(e=>null==r?n(e):e.startsWith("current")?n(Oe(e,r)):((e.startsWith("var(")||r.startsWith("var("))&&(i=!0),n(Fe(e,r)))));function l(e){return o?I(e,",").map((e=>o+e)).join(","):e}return i?[y(e,l(Te(t,n))),b("@supports (color: lab(from red l a b))",[y(e,l(a))])]:[y(e,l(a))]}function Le(e,t,r,n,o=""){let i=!1,a=I(t,",").map((e=>Te(e,(e=>null==r?n(e):e.startsWith("current")?n(Oe(e,r)):((e.startsWith("var(")||r.startsWith("var("))&&(i=!0),n(Fe(e,r))))))).map((e=>`drop-shadow(${e})`)).join(" ");return i?[y(e,o+I(t,",").map((e=>`drop-shadow(${Te(e,n)})`)).join(" ")),b("@supports (color: lab(from red l a b))",[y(e,o+a)])]:[y(e,o+a)]}var Ie={"--alpha":function(e,t,r,...n){let[o,i]=I(r,"/").map((e=>e.trim()));if(!o||!i)throw new Error(`The --alpha(…) function requires a color and an alpha value, e.g.: \`--alpha(${o||"var(--my-color)"} / ${i||"50%"})\``);if(n.length>0)throw new Error(`The --alpha(…) function only accepts one argument, e.g.: \`--alpha(${o||"var(--my-color)"} / ${i||"50%"})\``);return Oe(o,i)},"--spacing":function(e,t,r,...n){if(!r)throw new Error("The --spacing(…) function requires an argument, but received none.");if(n.length>0)throw new Error(`The --spacing(…) function only accepts a single argument, but received ${n.length+1}.`);let o=e.theme.resolve(null,["--spacing"]);if(!o)throw new Error("The --spacing(…) function requires that the `--spacing` theme variable exists, but it was not found.");return`calc(${o} * ${r})`},"--theme":function(e,t,r,...n){if(!r.startsWith("--"))throw new Error("The --theme(…) function can only be used with CSS variables from your theme.");let o=!1;r.endsWith(" inline")&&(o=!0,r=r.slice(0,-7)),"at-rule"===t.kind&&(o=!0);let i=e.resolveThemeValue(r,o);if(!i){if(n.length>0)return n.join(", ");throw new Error(`Could not resolve value for theme function: \`theme(${r})\`. Consider checking if the variable name is correct or provide a fallback value to silence this error.`)}if(0===n.length)return i;let a=n.join(", ");if("initial"===a)return i;if("initial"===i)return a;if(i.startsWith("var(")||i.startsWith("theme(")||i.startsWith("--theme(")){let e=m(i);return function(e,t){p(e,(e=>{if("function"===e.kind&&("var"===e.value||"theme"===e.value||"--theme"===e.value))if(1===e.nodes.length)e.nodes.push({kind:"word",value:`, ${t}`});else{let r=e.nodes[e.nodes.length-1];"word"===r.kind&&"initial"===r.value&&(r.value=t)}}))}(e,a),h(e)}return i},theme:function(e,t,r,...n){r=function(e){if("'"!==e[0]&&'"'!==e[0])return e;let t="",r=e[0];for(let n=1;n0)return n.join(", ");if(!o)throw new Error(`Could not resolve value for theme function: \`theme(${r})\`. Consider checking if the path is correct or provide a fallback value to silence this error.`);return o}};var Re=new RegExp(Object.keys(Ie).map((e=>`${e}\\(`)).join("|"));function Pe(e,t){let r=0;return A(e,(e=>{if("declaration"===e.kind&&e.value&&Re.test(e.value))return r|=8,void(e.value=qe(e.value,e,t));"at-rule"===e.kind&&("@media"===e.name||"@custom-media"===e.name||"@container"===e.name||"@supports"===e.name)&&Re.test(e.params)&&(r|=8,e.params=qe(e.params,e,t))})),r}function qe(e,t,r){let n=m(e);return p(n,((e,{replaceWith:n})=>{if("function"===e.kind&&e.value in Ie){let o=I(h(e.nodes).trim(),",").map((e=>e.trim()));return n(m(Ie[e.value](r,t,...o)))}})),h(n)}function He(e,t){let r=e.length,n=t.length,o=r=48&&n<=57&&o>=48&&o<=57){let i=r,a=r+1,l=r,s=r+1;for(n=e.charCodeAt(a);n>=48&&n<=57;)n=e.charCodeAt(++a);for(o=t.charCodeAt(s);o>=48&&o<=57;)o=t.charCodeAt(++s);let c=e.slice(i,a),u=t.slice(l,s),d=Number(c)-Number(u);if(d)return d;if(cu)return 1}else if(n!==o)return n-o}return e.length-t.length}var Ze=/^\d+\/\d+$/;function Ye(e){let t=new c((e=>({name:e,utility:e,fraction:!1,modifiers:[]})));for(let r of e.utilities.keys("static")){let e=t.get(r);e.fraction=!1,e.modifiers=[]}for(let r of e.utilities.keys("functional")){let n=e.utilities.getCompletions(r);for(let e of n)for(let n of e.values){let o=null!==n&&Ze.test(n),i=null===n?r:`${r}-${n}`,a=t.get(i);if(a.utility=r,a.fraction||=o,a.modifiers.push(...e.modifiers),e.supportsNegative){let n=t.get(`-${i}`);n.utility=`-${r}`,n.fraction||=o,n.modifiers.push(...e.modifiers)}}}if(0===t.size)return[];let r=Array.from(t.values());return r.sort(((e,t)=>He(e.name,t.name))),function(e){let t=[],r=null,n=new Map,o=new c((()=>[]));for(let i of e){let{utility:e,fraction:a}=i;r||(r={utility:e,items:[]},n.set(e,r)),e!==r.utility&&(t.push(r),r={utility:e,items:[]},n.set(e,r)),a?o.get(e).push(i):r.items.push(i)}r&&t[t.length-1]!==r&&t.push(r);for(let[e,t]of o){let r=n.get(e);r&&r.items.push(...t)}let i=[];for(let e of t)for(let t of e.items)i.push([t.name,{modifiers:t.modifiers}]);return i}(r)}var Ge=/^@?[a-zA-Z0-9_-]*$/,Je=class{compareFns=new Map;variants=new Map;completions=new Map;groupOrder=null;lastOrder=0;static(e,t,{compounds:r,order:n}={}){this.set(e,{kind:"static",applyFn:t,compoundsWith:0,compounds:r??2,order:n})}fromAst(e,t){let r=[];A(t,(e=>{"rule"===e.kind?r.push(e.selector):"at-rule"===e.kind&&"@slot"!==e.name&&r.push(`${e.name} ${e.params}`)})),this.static(e,(e=>{let r=structuredClone(t);et(r,e.nodes),e.nodes=r}),{compounds:Xe(r)})}functional(e,t,{compounds:r,order:n}={}){this.set(e,{kind:"functional",applyFn:t,compoundsWith:0,compounds:r??2,order:n})}compound(e,t,r,{compounds:n,order:o}={}){this.set(e,{kind:"compound",applyFn:r,compoundsWith:t,compounds:n??2,order:o})}group(e,t){this.groupOrder=this.nextOrder(),t&&this.compareFns.set(this.groupOrder,t),e(),this.groupOrder=null}has(e){return this.variants.has(e)}get(e){return this.variants.get(e)}kind(e){return this.variants.get(e)?.kind}compoundsWith(e,t){let r=this.variants.get(e),n="string"==typeof t?this.variants.get(t):"arbitrary"===t.kind?{compounds:Xe([t.selector])}:this.variants.get(t.root);return!!(r&&n&&"compound"===r.kind&&0!==n.compounds&&0!==r.compoundsWith&&r.compoundsWith&n.compounds)}suggest(e,t){this.completions.set(e,t)}getCompletions(e){return this.completions.get(e)?.()??[]}compare(e,t){if(e===t)return 0;if(null===e)return-1;if(null===t)return 1;if("arbitrary"===e.kind&&"arbitrary"===t.kind)return e.selector1){let e=n[n.length-1];if(" "===n[n.length-2]&&("i"===e||"I"===e||"s"===e||"S"===e))return`${t}="${n.slice(0,-2)}" ${e}`}return`${t}="${n}"`}return e}function et(e,t){A(e,((e,{replaceWith:r})=>{if("at-rule"===e.kind&&"@slot"===e.name)r(t);else if("at-rule"===e.kind&&("@keyframes"===e.name||"@property"===e.name))return Object.assign(e,z([k(e.name,e.params,e.nodes)])),1}))}function tt(e){let t=function(e){let t=new Ve;function r(r,n){function*o(t){for(let r of e.keysInNamespaces(t))yield r.replace(De,((e,t,r)=>`${t}.${r}`))}let i=["1/2","1/3","2/3","1/4","2/4","3/4","1/5","2/5","3/5","4/5","1/6","2/6","3/6","4/6","5/6","1/12","2/12","3/12","4/12","5/12","6/12","7/12","8/12","9/12","10/12","11/12"];t.suggest(r,(()=>{let e=[];for(let t of n()){if("string"==typeof t){e.push({values:[t],modifiers:[]});continue}let r=[...t.values??[],...o(t.valueThemeKeys??[])],n=[...t.modifiers??[],...o(t.modifierThemeKeys??[])];t.supportsFractions&&r.push(...i),t.hasDefaultValue&&r.unshift(null),e.push({supportsNegative:t.supportsNegative,values:r,modifiers:n})}return e}))}function n(e,r){t.static(e,(()=>r.map((e=>"function"==typeof e?e():y(e[0],e[1])))))}function o(n,o){function i({negative:t}){return r=>{let n=null,i=null;if(r.value)if("arbitrary"===r.value.kind){if(r.modifier)return;n=r.value.value,i=r.value.dataType}else{if(n=e.resolve(r.value.fraction??r.value.value,o.themeKeys??[]),null===n&&o.supportsFractions&&r.value.fraction){let[e,t]=I(r.value.fraction,"/");if(!ye(e)||!ye(t))return;n=`calc(${r.value.fraction} * 100%)`}if(null===n&&t&&o.handleNegativeBareValue){if(n=o.handleNegativeBareValue(r.value),!n?.includes("/")&&r.modifier)return;if(null!==n)return o.handle(n,null)}if(null===n&&o.handleBareValue&&(n=o.handleBareValue(r.value),!n?.includes("/")&&r.modifier))return}else{if(r.modifier)return;n=void 0!==o.defaultValue?o.defaultValue:e.resolve(null,o.themeKeys??[])}if(null!==n)return o.handle(t?`calc(${n} * -1)`:n,i)}}o.supportsNegative&&t.functional(`-${n}`,i({negative:!0})),t.functional(n,i({negative:!1})),r(n,(()=>[{supportsNegative:o.supportsNegative,valueThemeKeys:o.themeKeys??[],hasDefaultValue:void 0!==o.defaultValue&&null!==o.defaultValue,supportsFractions:o.supportsFractions}]))}function i(n,o){t.functional(n,(t=>{if(!t.value)return;let r=null;return"arbitrary"===t.value.kind?(r=t.value.value,r=We(r,t.modifier,e)):r=Ue(t,e,o.themeKeys),null!==r?o.handle(r):void 0})),r(n,(()=>[{values:["current","inherit","transparent"],valueThemeKeys:o.themeKeys,modifiers:Array.from({length:21},((e,t)=>""+5*t))}]))}function a(n,i,a,{supportsNegative:l=!1,supportsFractions:s=!1}={}){l&&t.static(`-${n}-px`,(()=>a("-1px"))),t.static(`${n}-px`,(()=>a("1px"))),o(n,{themeKeys:i,supportsFractions:s,supportsNegative:l,defaultValue:null,handleBareValue:({value:t})=>{let r=e.resolve(null,["--spacing"]);return r&&$e(t)?`calc(${r} * ${t})`:null},handleNegativeBareValue:({value:t})=>{let r=e.resolve(null,["--spacing"]);return r&&$e(t)?`calc(${r} * -${t})`:null},handle:a}),r(n,(()=>[{values:e.get(["--spacing"])?Ee:[],supportsNegative:l,supportsFractions:s,valueThemeKeys:i}]))}n("sr-only",[["position","absolute"],["width","1px"],["height","1px"],["padding","0"],["margin","-1px"],["overflow","hidden"],["clip","rect(0, 0, 0, 0)"],["white-space","nowrap"],["border-width","0"]]),n("not-sr-only",[["position","static"],["width","auto"],["height","auto"],["padding","0"],["margin","0"],["overflow","visible"],["clip","auto"],["white-space","normal"]]),n("pointer-events-none",[["pointer-events","none"]]),n("pointer-events-auto",[["pointer-events","auto"]]),n("visible",[["visibility","visible"]]),n("invisible",[["visibility","hidden"]]),n("collapse",[["visibility","collapse"]]),n("static",[["position","static"]]),n("fixed",[["position","fixed"]]),n("absolute",[["position","absolute"]]),n("relative",[["position","relative"]]),n("sticky",[["position","sticky"]]);for(let[e,t]of[["inset","inset"],["inset-x","inset-inline"],["inset-y","inset-block"],["start","inset-inline-start"],["end","inset-inline-end"],["top","top"],["right","right"],["bottom","bottom"],["left","left"]])n(`${e}-auto`,[[t,"auto"]]),n(`${e}-full`,[[t,"100%"]]),n(`-${e}-full`,[[t,"-100%"]]),a(e,["--inset","--spacing"],(e=>[y(t,e)]),{supportsNegative:!0,supportsFractions:!0});n("isolate",[["isolation","isolate"]]),n("isolation-auto",[["isolation","auto"]]),n("z-auto",[["z-index","auto"]]),o("z",{supportsNegative:!0,handleBareValue:({value:e})=>ye(e)?e:null,themeKeys:["--z-index"],handle:e=>[y("z-index",e)]}),r("z",(()=>[{supportsNegative:!0,values:["0","10","20","30","40","50"],valueThemeKeys:["--z-index"]}])),n("order-first",[["order","-9999"]]),n("order-last",[["order","9999"]]),o("order",{supportsNegative:!0,handleBareValue:({value:e})=>ye(e)?e:null,themeKeys:["--order"],handle:e=>[y("order",e)]}),r("order",(()=>[{supportsNegative:!0,values:Array.from({length:12},((e,t)=>`${t+1}`)),valueThemeKeys:["--order"]}])),n("col-auto",[["grid-column","auto"]]),o("col",{supportsNegative:!0,handleBareValue:({value:e})=>ye(e)?e:null,themeKeys:["--grid-column"],handle:e=>[y("grid-column",e)]}),n("col-span-full",[["grid-column","1 / -1"]]),o("col-span",{handleBareValue:({value:e})=>ye(e)?e:null,handle:e=>[y("grid-column",`span ${e} / span ${e}`)]}),n("col-start-auto",[["grid-column-start","auto"]]),o("col-start",{supportsNegative:!0,handleBareValue:({value:e})=>ye(e)?e:null,themeKeys:["--grid-column-start"],handle:e=>[y("grid-column-start",e)]}),n("col-end-auto",[["grid-column-end","auto"]]),o("col-end",{supportsNegative:!0,handleBareValue:({value:e})=>ye(e)?e:null,themeKeys:["--grid-column-end"],handle:e=>[y("grid-column-end",e)]}),r("col-span",(()=>[{values:Array.from({length:12},((e,t)=>`${t+1}`)),valueThemeKeys:[]}])),r("col-start",(()=>[{supportsNegative:!0,values:Array.from({length:13},((e,t)=>`${t+1}`)),valueThemeKeys:["--grid-column-start"]}])),r("col-end",(()=>[{supportsNegative:!0,values:Array.from({length:13},((e,t)=>`${t+1}`)),valueThemeKeys:["--grid-column-end"]}])),n("row-auto",[["grid-row","auto"]]),o("row",{supportsNegative:!0,handleBareValue:({value:e})=>ye(e)?e:null,themeKeys:["--grid-row"],handle:e=>[y("grid-row",e)]}),n("row-span-full",[["grid-row","1 / -1"]]),o("row-span",{themeKeys:[],handleBareValue:({value:e})=>ye(e)?e:null,handle:e=>[y("grid-row",`span ${e} / span ${e}`)]}),n("row-start-auto",[["grid-row-start","auto"]]),o("row-start",{supportsNegative:!0,handleBareValue:({value:e})=>ye(e)?e:null,themeKeys:["--grid-row-start"],handle:e=>[y("grid-row-start",e)]}),n("row-end-auto",[["grid-row-end","auto"]]),o("row-end",{supportsNegative:!0,handleBareValue:({value:e})=>ye(e)?e:null,themeKeys:["--grid-row-end"],handle:e=>[y("grid-row-end",e)]}),r("row-span",(()=>[{values:Array.from({length:12},((e,t)=>`${t+1}`)),valueThemeKeys:[]}])),r("row-start",(()=>[{supportsNegative:!0,values:Array.from({length:13},((e,t)=>`${t+1}`)),valueThemeKeys:["--grid-row-start"]}])),r("row-end",(()=>[{supportsNegative:!0,values:Array.from({length:13},((e,t)=>`${t+1}`)),valueThemeKeys:["--grid-row-end"]}])),n("float-start",[["float","inline-start"]]),n("float-end",[["float","inline-end"]]),n("float-right",[["float","right"]]),n("float-left",[["float","left"]]),n("float-none",[["float","none"]]),n("clear-start",[["clear","inline-start"]]),n("clear-end",[["clear","inline-end"]]),n("clear-right",[["clear","right"]]),n("clear-left",[["clear","left"]]),n("clear-both",[["clear","both"]]),n("clear-none",[["clear","none"]]);for(let[e,t]of[["m","margin"],["mx","margin-inline"],["my","margin-block"],["ms","margin-inline-start"],["me","margin-inline-end"],["mt","margin-top"],["mr","margin-right"],["mb","margin-bottom"],["ml","margin-left"]])n(`${e}-auto`,[[t,"auto"]]),a(e,["--margin","--spacing"],(e=>[y(t,e)]),{supportsNegative:!0});n("box-border",[["box-sizing","border-box"]]),n("box-content",[["box-sizing","content-box"]]),n("line-clamp-none",[["overflow","visible"],["display","block"],["-webkit-box-orient","horizontal"],["-webkit-line-clamp","unset"]]),o("line-clamp",{themeKeys:["--line-clamp"],handleBareValue:({value:e})=>ye(e)?e:null,handle:e=>[y("overflow","hidden"),y("display","-webkit-box"),y("-webkit-box-orient","vertical"),y("-webkit-line-clamp",e)]}),r("line-clamp",(()=>[{values:["1","2","3","4","5","6"],valueThemeKeys:["--line-clamp"]}])),n("block",[["display","block"]]),n("inline-block",[["display","inline-block"]]),n("inline",[["display","inline"]]),n("hidden",[["display","none"]]),n("inline-flex",[["display","inline-flex"]]),n("table",[["display","table"]]),n("inline-table",[["display","inline-table"]]),n("table-caption",[["display","table-caption"]]),n("table-cell",[["display","table-cell"]]),n("table-column",[["display","table-column"]]),n("table-column-group",[["display","table-column-group"]]),n("table-footer-group",[["display","table-footer-group"]]),n("table-header-group",[["display","table-header-group"]]),n("table-row-group",[["display","table-row-group"]]),n("table-row",[["display","table-row"]]),n("flow-root",[["display","flow-root"]]),n("flex",[["display","flex"]]),n("grid",[["display","grid"]]),n("inline-grid",[["display","inline-grid"]]),n("contents",[["display","contents"]]),n("list-item",[["display","list-item"]]),n("field-sizing-content",[["field-sizing","content"]]),n("field-sizing-fixed",[["field-sizing","fixed"]]),n("aspect-auto",[["aspect-ratio","auto"]]),n("aspect-square",[["aspect-ratio","1 / 1"]]),o("aspect",{themeKeys:["--aspect"],handleBareValue:({fraction:e})=>{if(null===e)return null;let[t,r]=I(e,"/");return ye(t)&&ye(r)?e:null},handle:e=>[y("aspect-ratio",e)]});for(let[e,t]of[["full","100%"],["svw","100svw"],["lvw","100lvw"],["dvw","100dvw"],["svh","100svh"],["lvh","100lvh"],["dvh","100dvh"],["min","min-content"],["max","max-content"],["fit","fit-content"]])n(`size-${e}`,[["--tw-sort","size"],["width",t],["height",t]]),n(`w-${e}`,[["width",t]]),n(`h-${e}`,[["height",t]]),n(`min-w-${e}`,[["min-width",t]]),n(`min-h-${e}`,[["min-height",t]]),n(`max-w-${e}`,[["max-width",t]]),n(`max-h-${e}`,[["max-height",t]]);n("size-auto",[["--tw-sort","size"],["width","auto"],["height","auto"]]),n("w-auto",[["width","auto"]]),n("h-auto",[["height","auto"]]),n("min-w-auto",[["min-width","auto"]]),n("min-h-auto",[["min-height","auto"]]),n("h-lh",[["height","1lh"]]),n("min-h-lh",[["min-height","1lh"]]),n("max-h-lh",[["max-height","1lh"]]),n("w-screen",[["width","100vw"]]),n("min-w-screen",[["min-width","100vw"]]),n("max-w-screen",[["max-width","100vw"]]),n("h-screen",[["height","100vh"]]),n("min-h-screen",[["min-height","100vh"]]),n("max-h-screen",[["max-height","100vh"]]),n("max-w-none",[["max-width","none"]]),n("max-h-none",[["max-height","none"]]),a("size",["--size","--spacing"],(e=>[y("--tw-sort","size"),y("width",e),y("height",e)]),{supportsFractions:!0});for(let[e,t,r]of[["w",["--width","--spacing","--container"],"width"],["min-w",["--min-width","--spacing","--container"],"min-width"],["max-w",["--max-width","--spacing","--container"],"max-width"],["h",["--height","--spacing"],"height"],["min-h",["--min-height","--height","--spacing"],"min-height"],["max-h",["--max-height","--height","--spacing"],"max-height"]])a(e,t,(e=>[y(r,e)]),{supportsFractions:!0});t.static("container",(()=>{let t=[...e.namespace("--breakpoint").values()];t.sort(((e,t)=>re(e,t,"asc")));let r=[y("--tw-sort","--tw-container-component"),y("width","100%")];for(let e of t)r.push(k("@media",`(width >= ${e})`,[y("max-width",e)]));return r})),n("flex-auto",[["flex","auto"]]),n("flex-initial",[["flex","0 auto"]]),n("flex-none",[["flex","none"]]),t.functional("flex",(e=>{if(e.value){if("arbitrary"===e.value.kind)return e.modifier?void 0:[y("flex",e.value.value)];if(e.value.fraction){let[t,r]=I(e.value.fraction,"/");return ye(t)&&ye(r)?[y("flex",`calc(${e.value.fraction} * 100%)`)]:void 0}if(ye(e.value.value))return e.modifier?void 0:[y("flex",e.value.value)]}})),r("flex",(()=>[{supportsFractions:!0}])),o("shrink",{defaultValue:"1",handleBareValue:({value:e})=>ye(e)?e:null,handle:e=>[y("flex-shrink",e)]}),o("grow",{defaultValue:"1",handleBareValue:({value:e})=>ye(e)?e:null,handle:e=>[y("flex-grow",e)]}),r("shrink",(()=>[{values:["0"],valueThemeKeys:[],hasDefaultValue:!0}])),r("grow",(()=>[{values:["0"],valueThemeKeys:[],hasDefaultValue:!0}])),n("basis-auto",[["flex-basis","auto"]]),n("basis-full",[["flex-basis","100%"]]),a("basis",["--flex-basis","--spacing","--container"],(e=>[y("flex-basis",e)]),{supportsFractions:!0}),n("table-auto",[["table-layout","auto"]]),n("table-fixed",[["table-layout","fixed"]]),n("caption-top",[["caption-side","top"]]),n("caption-bottom",[["caption-side","bottom"]]),n("border-collapse",[["border-collapse","collapse"]]),n("border-separate",[["border-collapse","separate"]]);let l=()=>z([Ne("--tw-border-spacing-x","0",""),Ne("--tw-border-spacing-y","0","")]);a("border-spacing",["--border-spacing","--spacing"],(e=>[l(),y("--tw-border-spacing-x",e),y("--tw-border-spacing-y",e),y("border-spacing","var(--tw-border-spacing-x) var(--tw-border-spacing-y)")])),a("border-spacing-x",["--border-spacing","--spacing"],(e=>[l(),y("--tw-border-spacing-x",e),y("border-spacing","var(--tw-border-spacing-x) var(--tw-border-spacing-y)")])),a("border-spacing-y",["--border-spacing","--spacing"],(e=>[l(),y("--tw-border-spacing-y",e),y("border-spacing","var(--tw-border-spacing-x) var(--tw-border-spacing-y)")])),n("origin-center",[["transform-origin","center"]]),n("origin-top",[["transform-origin","top"]]),n("origin-top-right",[["transform-origin","top right"]]),n("origin-right",[["transform-origin","right"]]),n("origin-bottom-right",[["transform-origin","bottom right"]]),n("origin-bottom",[["transform-origin","bottom"]]),n("origin-bottom-left",[["transform-origin","bottom left"]]),n("origin-left",[["transform-origin","left"]]),n("origin-top-left",[["transform-origin","top left"]]),o("origin",{themeKeys:["--transform-origin"],handle:e=>[y("transform-origin",e)]}),n("perspective-origin-center",[["perspective-origin","center"]]),n("perspective-origin-top",[["perspective-origin","top"]]),n("perspective-origin-top-right",[["perspective-origin","top right"]]),n("perspective-origin-right",[["perspective-origin","right"]]),n("perspective-origin-bottom-right",[["perspective-origin","bottom right"]]),n("perspective-origin-bottom",[["perspective-origin","bottom"]]),n("perspective-origin-bottom-left",[["perspective-origin","bottom left"]]),n("perspective-origin-left",[["perspective-origin","left"]]),n("perspective-origin-top-left",[["perspective-origin","top left"]]),o("perspective-origin",{themeKeys:["--perspective-origin"],handle:e=>[y("perspective-origin",e)]}),n("perspective-none",[["perspective","none"]]),o("perspective",{themeKeys:["--perspective"],handle:e=>[y("perspective",e)]});let s=()=>z([Ne("--tw-translate-x","0"),Ne("--tw-translate-y","0"),Ne("--tw-translate-z","0")]);n("translate-none",[["translate","none"]]),n("-translate-full",[s,["--tw-translate-x","-100%"],["--tw-translate-y","-100%"],["translate","var(--tw-translate-x) var(--tw-translate-y)"]]),n("translate-full",[s,["--tw-translate-x","100%"],["--tw-translate-y","100%"],["translate","var(--tw-translate-x) var(--tw-translate-y)"]]),a("translate",["--translate","--spacing"],(e=>[s(),y("--tw-translate-x",e),y("--tw-translate-y",e),y("translate","var(--tw-translate-x) var(--tw-translate-y)")]),{supportsNegative:!0,supportsFractions:!0});for(let e of["x","y"])n(`-translate-${e}-full`,[s,[`--tw-translate-${e}`,"-100%"],["translate","var(--tw-translate-x) var(--tw-translate-y)"]]),n(`translate-${e}-full`,[s,[`--tw-translate-${e}`,"100%"],["translate","var(--tw-translate-x) var(--tw-translate-y)"]]),a(`translate-${e}`,["--translate","--spacing"],(t=>[s(),y(`--tw-translate-${e}`,t),y("translate","var(--tw-translate-x) var(--tw-translate-y)")]),{supportsNegative:!0,supportsFractions:!0});a("translate-z",["--translate","--spacing"],(e=>[s(),y("--tw-translate-z",e),y("translate","var(--tw-translate-x) var(--tw-translate-y) var(--tw-translate-z)")]),{supportsNegative:!0}),n("translate-3d",[s,["translate","var(--tw-translate-x) var(--tw-translate-y) var(--tw-translate-z)"]]);let c=()=>z([Ne("--tw-scale-x","1"),Ne("--tw-scale-y","1"),Ne("--tw-scale-z","1")]);function u({negative:t}){return r=>{if(!r.value||r.modifier)return;let n;return"arbitrary"===r.value.kind?(n=r.value.value,n=t?`calc(${n} * -1)`:n,[y("scale",n)]):(n=e.resolve(r.value.value,["--scale"]),!n&&ye(r.value.value)&&(n=`${r.value.value}%`),n?(n=t?`calc(${n} * -1)`:n,[c(),y("--tw-scale-x",n),y("--tw-scale-y",n),y("--tw-scale-z",n),y("scale","var(--tw-scale-x) var(--tw-scale-y)")]):void 0)}}n("scale-none",[["scale","none"]]),t.functional("-scale",u({negative:!0})),t.functional("scale",u({negative:!1})),r("scale",(()=>[{supportsNegative:!0,values:["0","50","75","90","95","100","105","110","125","150","200"],valueThemeKeys:["--scale"]}]));for(let e of["x","y","z"])o(`scale-${e}`,{supportsNegative:!0,themeKeys:["--scale"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,handle:t=>[c(),y(`--tw-scale-${e}`,t),y("scale","var(--tw-scale-x) var(--tw-scale-y)"+("z"===e?" var(--tw-scale-z)":""))]}),r(`scale-${e}`,(()=>[{supportsNegative:!0,values:["0","50","75","90","95","100","105","110","125","150","200"],valueThemeKeys:["--scale"]}]));function d({negative:t}){return r=>{if(!r.value||r.modifier)return;let n;if("arbitrary"===r.value.kind){n=r.value.value;let e=r.value.dataType??ae(n,["angle","vector"]);if("vector"===e)return[y("rotate",`${n} var(--tw-rotate)`)];if("angle"!==e)return[y("rotate",t?`calc(${n} * -1)`:n)]}else if(n=e.resolve(r.value.value,["--rotate"]),!n&&ye(r.value.value)&&(n=`${r.value.value}deg`),!n)return;return[y("rotate",t?`calc(${n} * -1)`:n)]}}n("scale-3d",[c,["scale","var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z)"]]),n("rotate-none",[["rotate","none"]]),t.functional("-rotate",d({negative:!0})),t.functional("rotate",d({negative:!1})),r("rotate",(()=>[{supportsNegative:!0,values:["0","1","2","3","6","12","45","90","180"],valueThemeKeys:["--rotate"]}]));{let e=["var(--tw-rotate-x,)","var(--tw-rotate-y,)","var(--tw-rotate-z,)","var(--tw-skew-x,)","var(--tw-skew-y,)"].join(" "),i=()=>z([Ne("--tw-rotate-x"),Ne("--tw-rotate-y"),Ne("--tw-rotate-z"),Ne("--tw-skew-x"),Ne("--tw-skew-y")]);for(let t of["x","y","z"])o(`rotate-${t}`,{supportsNegative:!0,themeKeys:["--rotate"],handleBareValue:({value:e})=>ye(e)?`${e}deg`:null,handle:r=>[i(),y(`--tw-rotate-${t}`,`rotate${t.toUpperCase()}(${r})`),y("transform",e)]}),r(`rotate-${t}`,(()=>[{supportsNegative:!0,values:["0","1","2","3","6","12","45","90","180"],valueThemeKeys:["--rotate"]}]));o("skew",{supportsNegative:!0,themeKeys:["--skew"],handleBareValue:({value:e})=>ye(e)?`${e}deg`:null,handle:t=>[i(),y("--tw-skew-x",`skewX(${t})`),y("--tw-skew-y",`skewY(${t})`),y("transform",e)]}),o("skew-x",{supportsNegative:!0,themeKeys:["--skew"],handleBareValue:({value:e})=>ye(e)?`${e}deg`:null,handle:t=>[i(),y("--tw-skew-x",`skewX(${t})`),y("transform",e)]}),o("skew-y",{supportsNegative:!0,themeKeys:["--skew"],handleBareValue:({value:e})=>ye(e)?`${e}deg`:null,handle:t=>[i(),y("--tw-skew-y",`skewY(${t})`),y("transform",e)]}),r("skew",(()=>[{supportsNegative:!0,values:["0","1","2","3","6","12"],valueThemeKeys:["--skew"]}])),r("skew-x",(()=>[{supportsNegative:!0,values:["0","1","2","3","6","12"],valueThemeKeys:["--skew"]}])),r("skew-y",(()=>[{supportsNegative:!0,values:["0","1","2","3","6","12"],valueThemeKeys:["--skew"]}])),t.functional("transform",(t=>{if(t.modifier)return;let r=null;return t.value?"arbitrary"===t.value.kind&&(r=t.value.value):r=e,null!==r?[i(),y("transform",r)]:void 0})),r("transform",(()=>[{hasDefaultValue:!0}])),n("transform-cpu",[["transform",e]]),n("transform-gpu",[["transform",`translateZ(0) ${e}`]]),n("transform-none",[["transform","none"]])}n("transform-flat",[["transform-style","flat"]]),n("transform-3d",[["transform-style","preserve-3d"]]),n("transform-content",[["transform-box","content-box"]]),n("transform-border",[["transform-box","border-box"]]),n("transform-fill",[["transform-box","fill-box"]]),n("transform-stroke",[["transform-box","stroke-box"]]),n("transform-view",[["transform-box","view-box"]]),n("backface-visible",[["backface-visibility","visible"]]),n("backface-hidden",[["backface-visibility","hidden"]]);for(let e of["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out"])n(`cursor-${e}`,[["cursor",e]]);o("cursor",{themeKeys:["--cursor"],handle:e=>[y("cursor",e)]});for(let e of["auto","none","manipulation"])n(`touch-${e}`,[["touch-action",e]]);let f=()=>z([Ne("--tw-pan-x"),Ne("--tw-pan-y"),Ne("--tw-pinch-zoom")]);for(let e of["x","left","right"])n(`touch-pan-${e}`,[f,["--tw-pan-x",`pan-${e}`],["touch-action","var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)"]]);for(let e of["y","up","down"])n(`touch-pan-${e}`,[f,["--tw-pan-y",`pan-${e}`],["touch-action","var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)"]]);n("touch-pinch-zoom",[f,["--tw-pinch-zoom","pinch-zoom"],["touch-action","var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)"]]);for(let e of["none","text","all","auto"])n(`select-${e}`,[["-webkit-user-select",e],["user-select",e]]);n("resize-none",[["resize","none"]]),n("resize-x",[["resize","horizontal"]]),n("resize-y",[["resize","vertical"]]),n("resize",[["resize","both"]]),n("snap-none",[["scroll-snap-type","none"]]);let p=()=>z([Ne("--tw-scroll-snap-strictness","proximity","*")]);for(let e of["x","y","both"])n(`snap-${e}`,[p,["scroll-snap-type",`${e} var(--tw-scroll-snap-strictness)`]]);n("snap-mandatory",[p,["--tw-scroll-snap-strictness","mandatory"]]),n("snap-proximity",[p,["--tw-scroll-snap-strictness","proximity"]]),n("snap-align-none",[["scroll-snap-align","none"]]),n("snap-start",[["scroll-snap-align","start"]]),n("snap-end",[["scroll-snap-align","end"]]),n("snap-center",[["scroll-snap-align","center"]]),n("snap-normal",[["scroll-snap-stop","normal"]]),n("snap-always",[["scroll-snap-stop","always"]]);for(let[e,t]of[["scroll-m","scroll-margin"],["scroll-mx","scroll-margin-inline"],["scroll-my","scroll-margin-block"],["scroll-ms","scroll-margin-inline-start"],["scroll-me","scroll-margin-inline-end"],["scroll-mt","scroll-margin-top"],["scroll-mr","scroll-margin-right"],["scroll-mb","scroll-margin-bottom"],["scroll-ml","scroll-margin-left"]])a(e,["--scroll-margin","--spacing"],(e=>[y(t,e)]),{supportsNegative:!0});for(let[e,t]of[["scroll-p","scroll-padding"],["scroll-px","scroll-padding-inline"],["scroll-py","scroll-padding-block"],["scroll-ps","scroll-padding-inline-start"],["scroll-pe","scroll-padding-inline-end"],["scroll-pt","scroll-padding-top"],["scroll-pr","scroll-padding-right"],["scroll-pb","scroll-padding-bottom"],["scroll-pl","scroll-padding-left"]])a(e,["--scroll-padding","--spacing"],(e=>[y(t,e)]));n("list-inside",[["list-style-position","inside"]]),n("list-outside",[["list-style-position","outside"]]),n("list-none",[["list-style-type","none"]]),n("list-disc",[["list-style-type","disc"]]),n("list-decimal",[["list-style-type","decimal"]]),o("list",{themeKeys:["--list-style-type"],handle:e=>[y("list-style-type",e)]}),n("list-image-none",[["list-style-image","none"]]),o("list-image",{themeKeys:["--list-style-image"],handle:e=>[y("list-style-image",e)]}),n("appearance-none",[["appearance","none"]]),n("appearance-auto",[["appearance","auto"]]),n("scheme-normal",[["color-scheme","normal"]]),n("scheme-dark",[["color-scheme","dark"]]),n("scheme-light",[["color-scheme","light"]]),n("scheme-light-dark",[["color-scheme","light dark"]]),n("scheme-only-dark",[["color-scheme","only dark"]]),n("scheme-only-light",[["color-scheme","only light"]]),n("columns-auto",[["columns","auto"]]),o("columns",{themeKeys:["--columns","--container"],handleBareValue:({value:e})=>ye(e)?e:null,handle:e=>[y("columns",e)]}),r("columns",(()=>[{values:Array.from({length:12},((e,t)=>`${t+1}`)),valueThemeKeys:["--columns","--container"]}]));for(let e of["auto","avoid","all","avoid-page","page","left","right","column"])n(`break-before-${e}`,[["break-before",e]]);for(let e of["auto","avoid","avoid-page","avoid-column"])n(`break-inside-${e}`,[["break-inside",e]]);for(let e of["auto","avoid","all","avoid-page","page","left","right","column"])n(`break-after-${e}`,[["break-after",e]]);n("grid-flow-row",[["grid-auto-flow","row"]]),n("grid-flow-col",[["grid-auto-flow","column"]]),n("grid-flow-dense",[["grid-auto-flow","dense"]]),n("grid-flow-row-dense",[["grid-auto-flow","row dense"]]),n("grid-flow-col-dense",[["grid-auto-flow","column dense"]]),n("auto-cols-auto",[["grid-auto-columns","auto"]]),n("auto-cols-min",[["grid-auto-columns","min-content"]]),n("auto-cols-max",[["grid-auto-columns","max-content"]]),n("auto-cols-fr",[["grid-auto-columns","minmax(0, 1fr)"]]),o("auto-cols",{themeKeys:["--grid-auto-columns"],handle:e=>[y("grid-auto-columns",e)]}),n("auto-rows-auto",[["grid-auto-rows","auto"]]),n("auto-rows-min",[["grid-auto-rows","min-content"]]),n("auto-rows-max",[["grid-auto-rows","max-content"]]),n("auto-rows-fr",[["grid-auto-rows","minmax(0, 1fr)"]]),o("auto-rows",{themeKeys:["--grid-auto-rows"],handle:e=>[y("grid-auto-rows",e)]}),n("grid-cols-none",[["grid-template-columns","none"]]),n("grid-cols-subgrid",[["grid-template-columns","subgrid"]]),o("grid-cols",{themeKeys:["--grid-template-columns"],handleBareValue:({value:e})=>xe(e)?`repeat(${e}, minmax(0, 1fr))`:null,handle:e=>[y("grid-template-columns",e)]}),n("grid-rows-none",[["grid-template-rows","none"]]),n("grid-rows-subgrid",[["grid-template-rows","subgrid"]]),o("grid-rows",{themeKeys:["--grid-template-rows"],handleBareValue:({value:e})=>xe(e)?`repeat(${e}, minmax(0, 1fr))`:null,handle:e=>[y("grid-template-rows",e)]}),r("grid-cols",(()=>[{values:Array.from({length:12},((e,t)=>`${t+1}`)),valueThemeKeys:["--grid-template-columns"]}])),r("grid-rows",(()=>[{values:Array.from({length:12},((e,t)=>`${t+1}`)),valueThemeKeys:["--grid-template-rows"]}])),n("flex-row",[["flex-direction","row"]]),n("flex-row-reverse",[["flex-direction","row-reverse"]]),n("flex-col",[["flex-direction","column"]]),n("flex-col-reverse",[["flex-direction","column-reverse"]]),n("flex-wrap",[["flex-wrap","wrap"]]),n("flex-nowrap",[["flex-wrap","nowrap"]]),n("flex-wrap-reverse",[["flex-wrap","wrap-reverse"]]),n("place-content-center",[["place-content","center"]]),n("place-content-start",[["place-content","start"]]),n("place-content-end",[["place-content","end"]]),n("place-content-center-safe",[["place-content","safe center"]]),n("place-content-end-safe",[["place-content","safe end"]]),n("place-content-between",[["place-content","space-between"]]),n("place-content-around",[["place-content","space-around"]]),n("place-content-evenly",[["place-content","space-evenly"]]),n("place-content-baseline",[["place-content","baseline"]]),n("place-content-stretch",[["place-content","stretch"]]),n("place-items-center",[["place-items","center"]]),n("place-items-start",[["place-items","start"]]),n("place-items-end",[["place-items","end"]]),n("place-items-center-safe",[["place-items","safe center"]]),n("place-items-end-safe",[["place-items","safe end"]]),n("place-items-baseline",[["place-items","baseline"]]),n("place-items-stretch",[["place-items","stretch"]]),n("content-normal",[["align-content","normal"]]),n("content-center",[["align-content","center"]]),n("content-start",[["align-content","flex-start"]]),n("content-end",[["align-content","flex-end"]]),n("content-center-safe",[["align-content","safe center"]]),n("content-end-safe",[["align-content","safe flex-end"]]),n("content-between",[["align-content","space-between"]]),n("content-around",[["align-content","space-around"]]),n("content-evenly",[["align-content","space-evenly"]]),n("content-baseline",[["align-content","baseline"]]),n("content-stretch",[["align-content","stretch"]]),n("items-center",[["align-items","center"]]),n("items-start",[["align-items","flex-start"]]),n("items-end",[["align-items","flex-end"]]),n("items-center-safe",[["align-items","safe center"]]),n("items-end-safe",[["align-items","safe flex-end"]]),n("items-baseline",[["align-items","baseline"]]),n("items-baseline-last",[["align-items","last baseline"]]),n("items-stretch",[["align-items","stretch"]]),n("justify-normal",[["justify-content","normal"]]),n("justify-center",[["justify-content","center"]]),n("justify-start",[["justify-content","flex-start"]]),n("justify-end",[["justify-content","flex-end"]]),n("justify-center-safe",[["justify-content","safe center"]]),n("justify-end-safe",[["justify-content","safe flex-end"]]),n("justify-between",[["justify-content","space-between"]]),n("justify-around",[["justify-content","space-around"]]),n("justify-evenly",[["justify-content","space-evenly"]]),n("justify-baseline",[["justify-content","baseline"]]),n("justify-stretch",[["justify-content","stretch"]]),n("justify-items-normal",[["justify-items","normal"]]),n("justify-items-center",[["justify-items","center"]]),n("justify-items-start",[["justify-items","start"]]),n("justify-items-end",[["justify-items","end"]]),n("justify-items-center-safe",[["justify-items","safe center"]]),n("justify-items-end-safe",[["justify-items","safe end"]]),n("justify-items-stretch",[["justify-items","stretch"]]),a("gap",["--gap","--spacing"],(e=>[y("gap",e)])),a("gap-x",["--gap","--spacing"],(e=>[y("column-gap",e)])),a("gap-y",["--gap","--spacing"],(e=>[y("row-gap",e)])),a("space-x",["--space","--spacing"],(e=>[z([Ne("--tw-space-x-reverse","0")]),w(":where(& > :not(:last-child))",[y("--tw-sort","row-gap"),y("--tw-space-x-reverse","0"),y("margin-inline-start",`calc(${e} * var(--tw-space-x-reverse))`),y("margin-inline-end",`calc(${e} * calc(1 - var(--tw-space-x-reverse)))`)])]),{supportsNegative:!0}),a("space-y",["--space","--spacing"],(e=>[z([Ne("--tw-space-y-reverse","0")]),w(":where(& > :not(:last-child))",[y("--tw-sort","column-gap"),y("--tw-space-y-reverse","0"),y("margin-block-start",`calc(${e} * var(--tw-space-y-reverse))`),y("margin-block-end",`calc(${e} * calc(1 - var(--tw-space-y-reverse)))`)])]),{supportsNegative:!0}),n("space-x-reverse",[()=>z([Ne("--tw-space-x-reverse","0")]),()=>w(":where(& > :not(:last-child))",[y("--tw-sort","row-gap"),y("--tw-space-x-reverse","1")])]),n("space-y-reverse",[()=>z([Ne("--tw-space-y-reverse","0")]),()=>w(":where(& > :not(:last-child))",[y("--tw-sort","column-gap"),y("--tw-space-y-reverse","1")])]),n("accent-auto",[["accent-color","auto"]]),i("accent",{themeKeys:["--accent-color","--color"],handle:e=>[y("accent-color",e)]}),i("caret",{themeKeys:["--caret-color","--color"],handle:e=>[y("caret-color",e)]}),i("divide",{themeKeys:["--divide-color","--color"],handle:e=>[w(":where(& > :not(:last-child))",[y("--tw-sort","divide-color"),y("border-color",e)])]}),n("place-self-auto",[["place-self","auto"]]),n("place-self-start",[["place-self","start"]]),n("place-self-end",[["place-self","end"]]),n("place-self-center",[["place-self","center"]]),n("place-self-end-safe",[["place-self","safe end"]]),n("place-self-center-safe",[["place-self","safe center"]]),n("place-self-stretch",[["place-self","stretch"]]),n("self-auto",[["align-self","auto"]]),n("self-start",[["align-self","flex-start"]]),n("self-end",[["align-self","flex-end"]]),n("self-center",[["align-self","center"]]),n("self-end-safe",[["align-self","safe flex-end"]]),n("self-center-safe",[["align-self","safe center"]]),n("self-stretch",[["align-self","stretch"]]),n("self-baseline",[["align-self","baseline"]]),n("self-baseline-last",[["align-self","last baseline"]]),n("justify-self-auto",[["justify-self","auto"]]),n("justify-self-start",[["justify-self","flex-start"]]),n("justify-self-end",[["justify-self","flex-end"]]),n("justify-self-center",[["justify-self","center"]]),n("justify-self-end-safe",[["justify-self","safe flex-end"]]),n("justify-self-center-safe",[["justify-self","safe center"]]),n("justify-self-stretch",[["justify-self","stretch"]]);for(let e of["auto","hidden","clip","visible","scroll"])n(`overflow-${e}`,[["overflow",e]]),n(`overflow-x-${e}`,[["overflow-x",e]]),n(`overflow-y-${e}`,[["overflow-y",e]]);for(let e of["auto","contain","none"])n(`overscroll-${e}`,[["overscroll-behavior",e]]),n(`overscroll-x-${e}`,[["overscroll-behavior-x",e]]),n(`overscroll-y-${e}`,[["overscroll-behavior-y",e]]);n("scroll-auto",[["scroll-behavior","auto"]]),n("scroll-smooth",[["scroll-behavior","smooth"]]),n("truncate",[["overflow","hidden"],["text-overflow","ellipsis"],["white-space","nowrap"]]),n("text-ellipsis",[["text-overflow","ellipsis"]]),n("text-clip",[["text-overflow","clip"]]),n("hyphens-none",[["-webkit-hyphens","none"],["hyphens","none"]]),n("hyphens-manual",[["-webkit-hyphens","manual"],["hyphens","manual"]]),n("hyphens-auto",[["-webkit-hyphens","auto"],["hyphens","auto"]]),n("whitespace-normal",[["white-space","normal"]]),n("whitespace-nowrap",[["white-space","nowrap"]]),n("whitespace-pre",[["white-space","pre"]]),n("whitespace-pre-line",[["white-space","pre-line"]]),n("whitespace-pre-wrap",[["white-space","pre-wrap"]]),n("whitespace-break-spaces",[["white-space","break-spaces"]]),n("text-wrap",[["text-wrap","wrap"]]),n("text-nowrap",[["text-wrap","nowrap"]]),n("text-balance",[["text-wrap","balance"]]),n("text-pretty",[["text-wrap","pretty"]]),n("break-normal",[["overflow-wrap","normal"],["word-break","normal"]]),n("break-words",[["overflow-wrap","break-word"]]),n("break-all",[["word-break","break-all"]]),n("break-keep",[["word-break","keep-all"]]),n("wrap-anywhere",[["overflow-wrap","anywhere"]]),n("wrap-break-word",[["overflow-wrap","break-word"]]),n("wrap-normal",[["overflow-wrap","normal"]]);for(let[e,t]of[["rounded",["border-radius"]],["rounded-s",["border-start-start-radius","border-end-start-radius"]],["rounded-e",["border-start-end-radius","border-end-end-radius"]],["rounded-t",["border-top-left-radius","border-top-right-radius"]],["rounded-r",["border-top-right-radius","border-bottom-right-radius"]],["rounded-b",["border-bottom-right-radius","border-bottom-left-radius"]],["rounded-l",["border-top-left-radius","border-bottom-left-radius"]],["rounded-ss",["border-start-start-radius"]],["rounded-se",["border-start-end-radius"]],["rounded-ee",["border-end-end-radius"]],["rounded-es",["border-end-start-radius"]],["rounded-tl",["border-top-left-radius"]],["rounded-tr",["border-top-right-radius"]],["rounded-br",["border-bottom-right-radius"]],["rounded-bl",["border-bottom-left-radius"]]])n(`${e}-none`,t.map((e=>[e,"0"]))),n(`${e}-full`,t.map((e=>[e,"calc(infinity * 1px)"]))),o(e,{themeKeys:["--radius"],handle:e=>t.map((t=>y(t,e)))});n("border-solid",[["--tw-border-style","solid"],["border-style","solid"]]),n("border-dashed",[["--tw-border-style","dashed"],["border-style","dashed"]]),n("border-dotted",[["--tw-border-style","dotted"],["border-style","dotted"]]),n("border-double",[["--tw-border-style","double"],["border-style","double"]]),n("border-hidden",[["--tw-border-style","hidden"],["border-style","hidden"]]),n("border-none",[["--tw-border-style","none"],["border-style","none"]]);{let i=function(n,o){t.functional(n,(t=>{if(!t.value){if(t.modifier)return;let r=e.get(["--default-border-width"])??"1px",n=o.width(r);return n?[a(),...n]:void 0}if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ae(r,["color","line-width","length"])){case"line-width":case"length":{if(t.modifier)return;let e=o.width(r);return e?[a(),...e]:void 0}default:return r=We(r,t.modifier,e),null===r?void 0:o.color(r)}}{let r=Ue(t,e,["--border-color","--color"]);if(r)return o.color(r)}{if(t.modifier)return;let r=e.resolve(t.value.value,["--border-width"]);if(r){let e=o.width(r);return e?[a(),...e]:void 0}if(ye(t.value.value)){let e=o.width(`${t.value.value}px`);return e?[a(),...e]:void 0}}})),r(n,(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--border-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t)),hasDefaultValue:!0},{values:["0","2","4","8"],valueThemeKeys:["--border-width"]}]))},a=()=>z([Ne("--tw-border-style","solid")]);i("border",{width:e=>[y("border-style","var(--tw-border-style)"),y("border-width",e)],color:e=>[y("border-color",e)]}),i("border-x",{width:e=>[y("border-inline-style","var(--tw-border-style)"),y("border-inline-width",e)],color:e=>[y("border-inline-color",e)]}),i("border-y",{width:e=>[y("border-block-style","var(--tw-border-style)"),y("border-block-width",e)],color:e=>[y("border-block-color",e)]}),i("border-s",{width:e=>[y("border-inline-start-style","var(--tw-border-style)"),y("border-inline-start-width",e)],color:e=>[y("border-inline-start-color",e)]}),i("border-e",{width:e=>[y("border-inline-end-style","var(--tw-border-style)"),y("border-inline-end-width",e)],color:e=>[y("border-inline-end-color",e)]}),i("border-t",{width:e=>[y("border-top-style","var(--tw-border-style)"),y("border-top-width",e)],color:e=>[y("border-top-color",e)]}),i("border-r",{width:e=>[y("border-right-style","var(--tw-border-style)"),y("border-right-width",e)],color:e=>[y("border-right-color",e)]}),i("border-b",{width:e=>[y("border-bottom-style","var(--tw-border-style)"),y("border-bottom-width",e)],color:e=>[y("border-bottom-color",e)]}),i("border-l",{width:e=>[y("border-left-style","var(--tw-border-style)"),y("border-left-width",e)],color:e=>[y("border-left-color",e)]}),o("divide-x",{defaultValue:e.get(["--default-border-width"])??"1px",themeKeys:["--divide-width","--border-width"],handleBareValue:({value:e})=>ye(e)?`${e}px`:null,handle:e=>[z([Ne("--tw-divide-x-reverse","0")]),w(":where(& > :not(:last-child))",[y("--tw-sort","divide-x-width"),a(),y("--tw-divide-x-reverse","0"),y("border-inline-style","var(--tw-border-style)"),y("border-inline-start-width",`calc(${e} * var(--tw-divide-x-reverse))`),y("border-inline-end-width",`calc(${e} * calc(1 - var(--tw-divide-x-reverse)))`)])]}),o("divide-y",{defaultValue:e.get(["--default-border-width"])??"1px",themeKeys:["--divide-width","--border-width"],handleBareValue:({value:e})=>ye(e)?`${e}px`:null,handle:e=>[z([Ne("--tw-divide-y-reverse","0")]),w(":where(& > :not(:last-child))",[y("--tw-sort","divide-y-width"),a(),y("--tw-divide-y-reverse","0"),y("border-bottom-style","var(--tw-border-style)"),y("border-top-style","var(--tw-border-style)"),y("border-top-width",`calc(${e} * var(--tw-divide-y-reverse))`),y("border-bottom-width",`calc(${e} * calc(1 - var(--tw-divide-y-reverse)))`)])]}),r("divide-x",(()=>[{values:["0","2","4","8"],valueThemeKeys:["--divide-width","--border-width"],hasDefaultValue:!0}])),r("divide-y",(()=>[{values:["0","2","4","8"],valueThemeKeys:["--divide-width","--border-width"],hasDefaultValue:!0}])),n("divide-x-reverse",[()=>z([Ne("--tw-divide-x-reverse","0")]),()=>w(":where(& > :not(:last-child))",[y("--tw-divide-x-reverse","1")])]),n("divide-y-reverse",[()=>z([Ne("--tw-divide-y-reverse","0")]),()=>w(":where(& > :not(:last-child))",[y("--tw-divide-y-reverse","1")])]);for(let e of["solid","dashed","dotted","double","none"])n(`divide-${e}`,[()=>w(":where(& > :not(:last-child))",[y("--tw-sort","divide-style"),y("--tw-border-style",e),y("border-style",e)])])}n("bg-auto",[["background-size","auto"]]),n("bg-cover",[["background-size","cover"]]),n("bg-contain",[["background-size","contain"]]),o("bg-size",{handle(e){if(e)return[y("background-size",e)]}}),n("bg-fixed",[["background-attachment","fixed"]]),n("bg-local",[["background-attachment","local"]]),n("bg-scroll",[["background-attachment","scroll"]]),n("bg-top",[["background-position","top"]]),n("bg-top-left",[["background-position","left top"]]),n("bg-top-right",[["background-position","right top"]]),n("bg-bottom",[["background-position","bottom"]]),n("bg-bottom-left",[["background-position","left bottom"]]),n("bg-bottom-right",[["background-position","right bottom"]]),n("bg-left",[["background-position","left"]]),n("bg-right",[["background-position","right"]]),n("bg-center",[["background-position","center"]]),o("bg-position",{handle(e){if(e)return[y("background-position",e)]}}),n("bg-repeat",[["background-repeat","repeat"]]),n("bg-no-repeat",[["background-repeat","no-repeat"]]),n("bg-repeat-x",[["background-repeat","repeat-x"]]),n("bg-repeat-y",[["background-repeat","repeat-y"]]),n("bg-repeat-round",[["background-repeat","round"]]),n("bg-repeat-space",[["background-repeat","space"]]),n("bg-none",[["background-image","none"]]);{let e=function(e){let t="in oklab";if("named"===e?.kind)switch(e.value){case"longer":case"shorter":case"increasing":case"decreasing":t=`in oklch ${e.value} hue`;break;default:t=`in ${e.value}`}else"arbitrary"===e?.kind&&(t=e.value);return t},n=function({negative:t}){return r=>{if(!r.value)return;if("arbitrary"===r.value.kind){if(r.modifier)return;let e=r.value.value;return"angle"===(r.value.dataType??ae(e,["angle"]))?(e=t?`calc(${e} * -1)`:`${e}`,[y("--tw-gradient-position",e),y("background-image",`linear-gradient(var(--tw-gradient-stops,${e}))`)]):t?void 0:[y("--tw-gradient-position",e),y("background-image",`linear-gradient(var(--tw-gradient-stops,${e}))`)]}let n=r.value.value;if(!t&&a.has(n))n=a.get(n);else{if(!ye(n))return;n=t?`calc(${n}deg * -1)`:`${n}deg`}let o=e(r.modifier);return[y("--tw-gradient-position",`${n}`),b("@supports (background-image: linear-gradient(in lab, red, red))",[y("--tw-gradient-position",`${n} ${o}`)]),y("background-image","linear-gradient(var(--tw-gradient-stops))")]}},o=function({negative:t}){return r=>{if("arbitrary"===r.value?.kind){if(r.modifier)return;let e=r.value.value;return[y("--tw-gradient-position",e),y("background-image",`conic-gradient(var(--tw-gradient-stops,${e}))`)]}let n=e(r.modifier);if(!r.value)return[y("--tw-gradient-position",n),y("background-image","conic-gradient(var(--tw-gradient-stops))")];let o=r.value.value;return ye(o)?(o=t?`calc(${o}deg * -1)`:`${o}deg`,[y("--tw-gradient-position",`from ${o} ${n}`),y("background-image","conic-gradient(var(--tw-gradient-stops))")]):void 0}},i=["oklab","oklch","srgb","hsl","longer","shorter","increasing","decreasing"],a=new Map([["to-t","to top"],["to-tr","to top right"],["to-r","to right"],["to-br","to bottom right"],["to-b","to bottom"],["to-bl","to bottom left"],["to-l","to left"],["to-tl","to top left"]]);t.functional("-bg-linear",n({negative:!0})),t.functional("bg-linear",n({negative:!1})),r("bg-linear",(()=>[{values:[...a.keys()],modifiers:i},{values:["0","30","60","90","120","150","180","210","240","270","300","330"],supportsNegative:!0,modifiers:i}])),t.functional("-bg-conic",o({negative:!0})),t.functional("bg-conic",o({negative:!1})),r("bg-conic",(()=>[{hasDefaultValue:!0,modifiers:i},{values:["0","30","60","90","120","150","180","210","240","270","300","330"],supportsNegative:!0,modifiers:i}])),t.functional("bg-radial",(t=>{if(!t.value)return[y("--tw-gradient-position",e(t.modifier)),y("background-image","radial-gradient(var(--tw-gradient-stops))")];if("arbitrary"===t.value.kind){if(t.modifier)return;let e=t.value.value;return[y("--tw-gradient-position",e),y("background-image",`radial-gradient(var(--tw-gradient-stops,${e}))`)]}})),r("bg-radial",(()=>[{hasDefaultValue:!0,modifiers:i}]))}t.functional("bg",(t=>{if(t.value){if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ae(r,["image","color","percentage","position","bg-size","length","url"])){case"percentage":case"position":return t.modifier?void 0:[y("background-position",r)];case"bg-size":case"length":case"size":return t.modifier?void 0:[y("background-size",r)];case"image":case"url":return t.modifier?void 0:[y("background-image",r)];default:return r=We(r,t.modifier,e),null===r?void 0:[y("background-color",r)]}}{let r=Ue(t,e,["--background-color","--color"]);if(r)return[y("background-color",r)]}{if(t.modifier)return;let r=e.resolve(t.value.value,["--background-image"]);if(r)return[y("background-image",r)]}}})),r("bg",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--background-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:[],valueThemeKeys:["--background-image"]}]));let h=()=>z([Ne("--tw-gradient-position"),Ne("--tw-gradient-from","#0000",""),Ne("--tw-gradient-via","#0000",""),Ne("--tw-gradient-to","#0000",""),Ne("--tw-gradient-stops"),Ne("--tw-gradient-via-stops"),Ne("--tw-gradient-from-position","0%",""),Ne("--tw-gradient-via-position","50%",""),Ne("--tw-gradient-to-position","100%","")]);function m(n,o){t.functional(n,(t=>{if(t.value){if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ae(r,["color","length","percentage"])){case"length":case"percentage":return t.modifier?void 0:o.position(r);default:return r=We(r,t.modifier,e),null===r?void 0:o.color(r)}}{let r=Ue(t,e,["--background-color","--color"]);if(r)return o.color(r)}{if(t.modifier)return;let r=e.resolve(t.value.value,["--gradient-color-stop-positions"]);if(r)return o.position(r);if("%"===t.value.value[t.value.value.length-1]&&ye(t.value.value.slice(0,-1)))return o.position(t.value.value)}}})),r(n,(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--background-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:Array.from({length:21},((e,t)=>5*t+"%")),valueThemeKeys:["--gradient-color-stop-positions"]}]))}m("from",{color:e=>[h(),y("--tw-sort","--tw-gradient-from"),y("--tw-gradient-from",e),y("--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))")],position:e=>[h(),y("--tw-gradient-from-position",e)]}),n("via-none",[["--tw-gradient-via-stops","initial"]]),m("via",{color:e=>[h(),y("--tw-sort","--tw-gradient-via"),y("--tw-gradient-via",e),y("--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)"),y("--tw-gradient-stops","var(--tw-gradient-via-stops)")],position:e=>[h(),y("--tw-gradient-via-position",e)]}),m("to",{color:e=>[h(),y("--tw-sort","--tw-gradient-to"),y("--tw-gradient-to",e),y("--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))")],position:e=>[h(),y("--tw-gradient-to-position",e)]}),n("mask-none",[["mask-image","none"]]),t.functional("mask",(e=>{if(!e.value||e.modifier||"arbitrary"!==e.value.kind)return;let t=e.value.value;switch(e.value.dataType??ae(t,["image","percentage","position","bg-size","length","url"])){case"percentage":case"position":return e.modifier?void 0:[y("mask-position",t)];case"bg-size":case"length":case"size":return[y("mask-size",t)];default:return[y("mask-image",t)]}})),n("mask-add",[["mask-composite","add"]]),n("mask-subtract",[["mask-composite","subtract"]]),n("mask-intersect",[["mask-composite","intersect"]]),n("mask-exclude",[["mask-composite","exclude"]]),n("mask-alpha",[["mask-mode","alpha"]]),n("mask-luminance",[["mask-mode","luminance"]]),n("mask-match",[["mask-mode","match-source"]]),n("mask-type-alpha",[["mask-type","alpha"]]),n("mask-type-luminance",[["mask-type","luminance"]]),n("mask-auto",[["mask-size","auto"]]),n("mask-cover",[["mask-size","cover"]]),n("mask-contain",[["mask-size","contain"]]),o("mask-size",{handle(e){if(e)return[y("mask-size",e)]}}),n("mask-top",[["mask-position","top"]]),n("mask-top-left",[["mask-position","left top"]]),n("mask-top-right",[["mask-position","right top"]]),n("mask-bottom",[["mask-position","bottom"]]),n("mask-bottom-left",[["mask-position","left bottom"]]),n("mask-bottom-right",[["mask-position","right bottom"]]),n("mask-left",[["mask-position","left"]]),n("mask-right",[["mask-position","right"]]),n("mask-center",[["mask-position","center"]]),o("mask-position",{handle(e){if(e)return[y("mask-position",e)]}}),n("mask-repeat",[["mask-repeat","repeat"]]),n("mask-no-repeat",[["mask-repeat","no-repeat"]]),n("mask-repeat-x",[["mask-repeat","repeat-x"]]),n("mask-repeat-y",[["mask-repeat","repeat-y"]]),n("mask-repeat-round",[["mask-repeat","round"]]),n("mask-repeat-space",[["mask-repeat","space"]]),n("mask-clip-border",[["mask-clip","border-box"]]),n("mask-clip-padding",[["mask-clip","padding-box"]]),n("mask-clip-content",[["mask-clip","content-box"]]),n("mask-clip-fill",[["mask-clip","fill-box"]]),n("mask-clip-stroke",[["mask-clip","stroke-box"]]),n("mask-clip-view",[["mask-clip","view-box"]]),n("mask-no-clip",[["mask-clip","no-clip"]]),n("mask-origin-border",[["mask-origin","border-box"]]),n("mask-origin-padding",[["mask-origin","padding-box"]]),n("mask-origin-content",[["mask-origin","content-box"]]),n("mask-origin-fill",[["mask-origin","fill-box"]]),n("mask-origin-stroke",[["mask-origin","stroke-box"]]),n("mask-origin-view",[["mask-origin","view-box"]]);let g=()=>z([Ne("--tw-mask-linear","linear-gradient(#fff, #fff)"),Ne("--tw-mask-radial","linear-gradient(#fff, #fff)"),Ne("--tw-mask-conic","linear-gradient(#fff, #fff)")]);function v(n,o){t.functional(n,(t=>{if(t.value){if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ae(r,["length","percentage","color"])){case"color":return r=We(r,t.modifier,e),null===r?void 0:o.color(r);case"percentage":return t.modifier||!ye(r.slice(0,-1))?void 0:o.position(r);default:return t.modifier?void 0:o.position(r)}}{let r=Ue(t,e,["--background-color","--color"]);if(r)return o.color(r)}{if(t.modifier)return;let r=ae(t.value.value,["number","percentage"]);if(!r)return;switch(r){case"number":{let r=e.resolve(null,["--spacing"]);return r&&$e(t.value.value)?o.position(`calc(${r} * ${t.value.value})`):void 0}case"percentage":return ye(t.value.value.slice(0,-1))?o.position(t.value.value):void 0;default:return}}}})),r(n,(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--background-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:Array.from({length:21},((e,t)=>5*t+"%")),valueThemeKeys:["--gradient-color-stop-positions"]}])),r(n,(()=>[{values:Array.from({length:21},((e,t)=>5*t+"%"))},{values:e.get(["--spacing"])?Ee:[]},{values:["current","inherit","transparent"],valueThemeKeys:["--background-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))}]))}let x=()=>z([Ne("--tw-mask-left","linear-gradient(#fff, #fff)"),Ne("--tw-mask-right","linear-gradient(#fff, #fff)"),Ne("--tw-mask-bottom","linear-gradient(#fff, #fff)"),Ne("--tw-mask-top","linear-gradient(#fff, #fff)")]);function $(e,t,r){v(e,{color(e){let n=[g(),x(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-linear","var(--tw-mask-left), var(--tw-mask-right), var(--tw-mask-bottom), var(--tw-mask-top)")];for(let o of["top","right","bottom","left"])r[o]&&(n.push(y(`--tw-mask-${o}`,`linear-gradient(to ${o}, var(--tw-mask-${o}-from-color) var(--tw-mask-${o}-from-position), var(--tw-mask-${o}-to-color) var(--tw-mask-${o}-to-position))`)),n.push(z([Ne(`--tw-mask-${o}-from-position`,"0%"),Ne(`--tw-mask-${o}-to-position`,"100%"),Ne(`--tw-mask-${o}-from-color`,"black"),Ne(`--tw-mask-${o}-to-color`,"transparent")])),n.push(y(`--tw-mask-${o}-${t}-color`,e)));return n},position(e){let n=[g(),x(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-linear","var(--tw-mask-left), var(--tw-mask-right), var(--tw-mask-bottom), var(--tw-mask-top)")];for(let o of["top","right","bottom","left"])r[o]&&(n.push(y(`--tw-mask-${o}`,`linear-gradient(to ${o}, var(--tw-mask-${o}-from-color) var(--tw-mask-${o}-from-position), var(--tw-mask-${o}-to-color) var(--tw-mask-${o}-to-position))`)),n.push(z([Ne(`--tw-mask-${o}-from-position`,"0%"),Ne(`--tw-mask-${o}-to-position`,"100%"),Ne(`--tw-mask-${o}-from-color`,"black"),Ne(`--tw-mask-${o}-to-color`,"transparent")])),n.push(y(`--tw-mask-${o}-${t}-position`,e)));return n}})}$("mask-x-from","from",{top:!1,right:!0,bottom:!1,left:!0}),$("mask-x-to","to",{top:!1,right:!0,bottom:!1,left:!0}),$("mask-y-from","from",{top:!0,right:!1,bottom:!0,left:!1}),$("mask-y-to","to",{top:!0,right:!1,bottom:!0,left:!1}),$("mask-t-from","from",{top:!0,right:!1,bottom:!1,left:!1}),$("mask-t-to","to",{top:!0,right:!1,bottom:!1,left:!1}),$("mask-r-from","from",{top:!1,right:!0,bottom:!1,left:!1}),$("mask-r-to","to",{top:!1,right:!0,bottom:!1,left:!1}),$("mask-b-from","from",{top:!1,right:!1,bottom:!0,left:!1}),$("mask-b-to","to",{top:!1,right:!1,bottom:!0,left:!1}),$("mask-l-from","from",{top:!1,right:!1,bottom:!1,left:!0}),$("mask-l-to","to",{top:!1,right:!1,bottom:!1,left:!0});let A=()=>z([Ne("--tw-mask-linear-position","0deg"),Ne("--tw-mask-linear-from-position","0%"),Ne("--tw-mask-linear-to-position","100%"),Ne("--tw-mask-linear-from-color","black"),Ne("--tw-mask-linear-to-color","transparent")]);o("mask-linear",{defaultValue:null,supportsNegative:!0,supportsFractions:!1,handleBareValue:e=>ye(e.value)?`calc(1deg * ${e.value})`:null,handleNegativeBareValue:e=>ye(e.value)?`calc(1deg * -${e.value})`:null,handle:e=>[g(),A(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops, var(--tw-mask-linear-position)))"),y("--tw-mask-linear-position",e)]}),r("mask-linear",(()=>[{supportsNegative:!0,values:["0","1","2","3","6","12","45","90","180"]}])),v("mask-linear-from",{color:e=>[g(),A(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-linear-stops","var(--tw-mask-linear-position), var(--tw-mask-linear-from-color) var(--tw-mask-linear-from-position), var(--tw-mask-linear-to-color) var(--tw-mask-linear-to-position)"),y("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops))"),y("--tw-mask-linear-from-color",e)],position:e=>[g(),A(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-linear-stops","var(--tw-mask-linear-position), var(--tw-mask-linear-from-color) var(--tw-mask-linear-from-position), var(--tw-mask-linear-to-color) var(--tw-mask-linear-to-position)"),y("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops))"),y("--tw-mask-linear-from-position",e)]}),v("mask-linear-to",{color:e=>[g(),A(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-linear-stops","var(--tw-mask-linear-position), var(--tw-mask-linear-from-color) var(--tw-mask-linear-from-position), var(--tw-mask-linear-to-color) var(--tw-mask-linear-to-position)"),y("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops))"),y("--tw-mask-linear-to-color",e)],position:e=>[g(),A(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-linear-stops","var(--tw-mask-linear-position), var(--tw-mask-linear-from-color) var(--tw-mask-linear-from-position), var(--tw-mask-linear-to-color) var(--tw-mask-linear-to-position)"),y("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops))"),y("--tw-mask-linear-to-position",e)]});let C=()=>z([Ne("--tw-mask-radial-from-position","0%"),Ne("--tw-mask-radial-to-position","100%"),Ne("--tw-mask-radial-from-color","black"),Ne("--tw-mask-radial-to-color","transparent"),Ne("--tw-mask-radial-shape","ellipse"),Ne("--tw-mask-radial-size","farthest-corner"),Ne("--tw-mask-radial-position","center")]);n("mask-circle",[["--tw-mask-radial-shape","circle"]]),n("mask-ellipse",[["--tw-mask-radial-shape","ellipse"]]),n("mask-radial-closest-side",[["--tw-mask-radial-size","closest-side"]]),n("mask-radial-farthest-side",[["--tw-mask-radial-size","farthest-side"]]),n("mask-radial-closest-corner",[["--tw-mask-radial-size","closest-corner"]]),n("mask-radial-farthest-corner",[["--tw-mask-radial-size","farthest-corner"]]),n("mask-radial-at-top",[["--tw-mask-radial-position","top"]]),n("mask-radial-at-top-left",[["--tw-mask-radial-position","top left"]]),n("mask-radial-at-top-right",[["--tw-mask-radial-position","top right"]]),n("mask-radial-at-bottom",[["--tw-mask-radial-position","bottom"]]),n("mask-radial-at-bottom-left",[["--tw-mask-radial-position","bottom left"]]),n("mask-radial-at-bottom-right",[["--tw-mask-radial-position","bottom right"]]),n("mask-radial-at-left",[["--tw-mask-radial-position","left"]]),n("mask-radial-at-right",[["--tw-mask-radial-position","right"]]),n("mask-radial-at-center",[["--tw-mask-radial-position","center"]]),o("mask-radial-at",{defaultValue:null,supportsNegative:!1,supportsFractions:!1,handle:e=>[y("--tw-mask-radial-position",e)]}),o("mask-radial",{defaultValue:null,supportsNegative:!1,supportsFractions:!1,handle:e=>[g(),C(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops, var(--tw-mask-radial-size)))"),y("--tw-mask-radial-size",e)]}),v("mask-radial-from",{color:e=>[g(),C(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-radial-stops","var(--tw-mask-radial-shape) var(--tw-mask-radial-size) at var(--tw-mask-radial-position), var(--tw-mask-radial-from-color) var(--tw-mask-radial-from-position), var(--tw-mask-radial-to-color) var(--tw-mask-radial-to-position)"),y("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops))"),y("--tw-mask-radial-from-color",e)],position:e=>[g(),C(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-radial-stops","var(--tw-mask-radial-shape) var(--tw-mask-radial-size) at var(--tw-mask-radial-position), var(--tw-mask-radial-from-color) var(--tw-mask-radial-from-position), var(--tw-mask-radial-to-color) var(--tw-mask-radial-to-position)"),y("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops))"),y("--tw-mask-radial-from-position",e)]}),v("mask-radial-to",{color:e=>[g(),C(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-radial-stops","var(--tw-mask-radial-shape) var(--tw-mask-radial-size) at var(--tw-mask-radial-position), var(--tw-mask-radial-from-color) var(--tw-mask-radial-from-position), var(--tw-mask-radial-to-color) var(--tw-mask-radial-to-position)"),y("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops))"),y("--tw-mask-radial-to-color",e)],position:e=>[g(),C(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-radial-stops","var(--tw-mask-radial-shape) var(--tw-mask-radial-size) at var(--tw-mask-radial-position), var(--tw-mask-radial-from-color) var(--tw-mask-radial-from-position), var(--tw-mask-radial-to-color) var(--tw-mask-radial-to-position)"),y("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops))"),y("--tw-mask-radial-to-position",e)]});let j=()=>z([Ne("--tw-mask-conic-position","0deg"),Ne("--tw-mask-conic-from-position","0%"),Ne("--tw-mask-conic-to-position","100%"),Ne("--tw-mask-conic-from-color","black"),Ne("--tw-mask-conic-to-color","transparent")]);o("mask-conic",{defaultValue:null,supportsNegative:!0,supportsFractions:!1,handleBareValue:e=>ye(e.value)?`calc(1deg * ${e.value})`:null,handleNegativeBareValue:e=>ye(e.value)?`calc(1deg * -${e.value})`:null,handle:e=>[g(),j(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops, var(--tw-mask-conic-position)))"),y("--tw-mask-conic-position",e)]}),r("mask-conic",(()=>[{supportsNegative:!0,values:["0","1","2","3","6","12","45","90","180"]}])),v("mask-conic-from",{color:e=>[g(),j(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-conic-stops","from var(--tw-mask-conic-position), var(--tw-mask-conic-from-color) var(--tw-mask-conic-from-position), var(--tw-mask-conic-to-color) var(--tw-mask-conic-to-position)"),y("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops))"),y("--tw-mask-conic-from-color",e)],position:e=>[g(),j(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-conic-stops","from var(--tw-mask-conic-position), var(--tw-mask-conic-from-color) var(--tw-mask-conic-from-position), var(--tw-mask-conic-to-color) var(--tw-mask-conic-to-position)"),y("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops))"),y("--tw-mask-conic-from-position",e)]}),v("mask-conic-to",{color:e=>[g(),j(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-conic-stops","from var(--tw-mask-conic-position), var(--tw-mask-conic-from-color) var(--tw-mask-conic-from-position), var(--tw-mask-conic-to-color) var(--tw-mask-conic-to-position)"),y("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops))"),y("--tw-mask-conic-to-color",e)],position:e=>[g(),j(),y("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),y("mask-composite","intersect"),y("--tw-mask-conic-stops","from var(--tw-mask-conic-position), var(--tw-mask-conic-from-color) var(--tw-mask-conic-from-position), var(--tw-mask-conic-to-color) var(--tw-mask-conic-to-position)"),y("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops))"),y("--tw-mask-conic-to-position",e)]}),n("box-decoration-slice",[["-webkit-box-decoration-break","slice"],["box-decoration-break","slice"]]),n("box-decoration-clone",[["-webkit-box-decoration-break","clone"],["box-decoration-break","clone"]]),n("bg-clip-text",[["background-clip","text"]]),n("bg-clip-border",[["background-clip","border-box"]]),n("bg-clip-padding",[["background-clip","padding-box"]]),n("bg-clip-content",[["background-clip","content-box"]]),n("bg-origin-border",[["background-origin","border-box"]]),n("bg-origin-padding",[["background-origin","padding-box"]]),n("bg-origin-content",[["background-origin","content-box"]]);for(let e of["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"])n(`bg-blend-${e}`,[["background-blend-mode",e]]),n(`mix-blend-${e}`,[["mix-blend-mode",e]]);n("mix-blend-plus-darker",[["mix-blend-mode","plus-darker"]]),n("mix-blend-plus-lighter",[["mix-blend-mode","plus-lighter"]]),n("fill-none",[["fill","none"]]),t.functional("fill",(t=>{if(!t.value)return;if("arbitrary"===t.value.kind){let r=We(t.value.value,t.modifier,e);return null===r?void 0:[y("fill",r)]}let r=Ue(t,e,["--fill","--color"]);return r?[y("fill",r)]:void 0})),r("fill",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--fill","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))}])),n("stroke-none",[["stroke","none"]]),t.functional("stroke",(t=>{if(t.value){if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ae(r,["color","number","length","percentage"])){case"number":case"length":case"percentage":return t.modifier?void 0:[y("stroke-width",r)];default:return r=We(t.value.value,t.modifier,e),null===r?void 0:[y("stroke",r)]}}{let r=Ue(t,e,["--stroke","--color"]);if(r)return[y("stroke",r)]}{let r=e.resolve(t.value.value,["--stroke-width"]);if(r)return[y("stroke-width",r)];if(ye(t.value.value))return[y("stroke-width",t.value.value)]}}})),r("stroke",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--stroke","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:["0","1","2","3"],valueThemeKeys:["--stroke-width"]}])),n("object-contain",[["object-fit","contain"]]),n("object-cover",[["object-fit","cover"]]),n("object-fill",[["object-fit","fill"]]),n("object-none",[["object-fit","none"]]),n("object-scale-down",[["object-fit","scale-down"]]),n("object-top",[["object-position","top"]]),n("object-top-left",[["object-position","left top"]]),n("object-top-right",[["object-position","right top"]]),n("object-bottom",[["object-position","bottom"]]),n("object-bottom-left",[["object-position","left bottom"]]),n("object-bottom-right",[["object-position","right bottom"]]),n("object-left",[["object-position","left"]]),n("object-right",[["object-position","right"]]),n("object-center",[["object-position","center"]]),o("object",{themeKeys:["--object-position"],handle:e=>[y("object-position",e)]});for(let[e,t]of[["p","padding"],["px","padding-inline"],["py","padding-block"],["ps","padding-inline-start"],["pe","padding-inline-end"],["pt","padding-top"],["pr","padding-right"],["pb","padding-bottom"],["pl","padding-left"]])a(e,["--padding","--spacing"],(e=>[y(t,e)]));n("text-left",[["text-align","left"]]),n("text-center",[["text-align","center"]]),n("text-right",[["text-align","right"]]),n("text-justify",[["text-align","justify"]]),n("text-start",[["text-align","start"]]),n("text-end",[["text-align","end"]]),a("indent",["--text-indent","--spacing"],(e=>[y("text-indent",e)]),{supportsNegative:!0}),n("align-baseline",[["vertical-align","baseline"]]),n("align-top",[["vertical-align","top"]]),n("align-middle",[["vertical-align","middle"]]),n("align-bottom",[["vertical-align","bottom"]]),n("align-text-top",[["vertical-align","text-top"]]),n("align-text-bottom",[["vertical-align","text-bottom"]]),n("align-sub",[["vertical-align","sub"]]),n("align-super",[["vertical-align","super"]]),o("align",{themeKeys:[],handle:e=>[y("vertical-align",e)]}),t.functional("font",(t=>{if(t.value&&!t.modifier){if("arbitrary"===t.value.kind){let e=t.value.value;switch(t.value.dataType??ae(e,["number","generic-name","family-name"])){case"generic-name":case"family-name":return[y("font-family",e)];default:return[z([Ne("--tw-font-weight")]),y("--tw-font-weight",e),y("font-weight",e)]}}{let r=e.resolveWith(t.value.value,["--font"],["--font-feature-settings","--font-variation-settings"]);if(r){let[e,t={}]=r;return[y("font-family",e),y("font-feature-settings",t["--font-feature-settings"]),y("font-variation-settings",t["--font-variation-settings"])]}}{let r=e.resolve(t.value.value,["--font-weight"]);if(r)return[z([Ne("--tw-font-weight")]),y("--tw-font-weight",r),y("font-weight",r)]}}})),r("font",(()=>[{values:[],valueThemeKeys:["--font"]},{values:[],valueThemeKeys:["--font-weight"]}])),n("uppercase",[["text-transform","uppercase"]]),n("lowercase",[["text-transform","lowercase"]]),n("capitalize",[["text-transform","capitalize"]]),n("normal-case",[["text-transform","none"]]),n("italic",[["font-style","italic"]]),n("not-italic",[["font-style","normal"]]),n("underline",[["text-decoration-line","underline"]]),n("overline",[["text-decoration-line","overline"]]),n("line-through",[["text-decoration-line","line-through"]]),n("no-underline",[["text-decoration-line","none"]]),n("font-stretch-normal",[["font-stretch","normal"]]),n("font-stretch-ultra-condensed",[["font-stretch","ultra-condensed"]]),n("font-stretch-extra-condensed",[["font-stretch","extra-condensed"]]),n("font-stretch-condensed",[["font-stretch","condensed"]]),n("font-stretch-semi-condensed",[["font-stretch","semi-condensed"]]),n("font-stretch-semi-expanded",[["font-stretch","semi-expanded"]]),n("font-stretch-expanded",[["font-stretch","expanded"]]),n("font-stretch-extra-expanded",[["font-stretch","extra-expanded"]]),n("font-stretch-ultra-expanded",[["font-stretch","ultra-expanded"]]),o("font-stretch",{handleBareValue:({value:e})=>{if(!e.endsWith("%"))return null;let t=Number(e.slice(0,-1));return!ye(t)||Number.isNaN(t)||t<50||t>200?null:e},handle:e=>[y("font-stretch",e)]}),r("font-stretch",(()=>[{values:["50%","75%","90%","95%","100%","105%","110%","125%","150%","200%"]}])),i("placeholder",{themeKeys:["--background-color","--color"],handle:e=>[w("&::placeholder",[y("--tw-sort","placeholder-color"),y("color",e)])]}),n("decoration-solid",[["text-decoration-style","solid"]]),n("decoration-double",[["text-decoration-style","double"]]),n("decoration-dotted",[["text-decoration-style","dotted"]]),n("decoration-dashed",[["text-decoration-style","dashed"]]),n("decoration-wavy",[["text-decoration-style","wavy"]]),n("decoration-auto",[["text-decoration-thickness","auto"]]),n("decoration-from-font",[["text-decoration-thickness","from-font"]]),t.functional("decoration",(t=>{if(t.value){if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ae(r,["color","length","percentage"])){case"length":case"percentage":return t.modifier?void 0:[y("text-decoration-thickness",r)];default:return r=We(r,t.modifier,e),null===r?void 0:[y("text-decoration-color",r)]}}{let r=e.resolve(t.value.value,["--text-decoration-thickness"]);if(r)return t.modifier?void 0:[y("text-decoration-thickness",r)];if(ye(t.value.value))return t.modifier?void 0:[y("text-decoration-thickness",`${t.value.value}px`)]}{let r=Ue(t,e,["--text-decoration-color","--color"]);if(r)return[y("text-decoration-color",r)]}}})),r("decoration",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--text-decoration-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:["0","1","2"],valueThemeKeys:["--text-decoration-thickness"]}])),n("animate-none",[["animation","none"]]),o("animate",{themeKeys:["--animate"],handle:e=>[y("animation",e)]});{let i=["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,)"].join(" "),a=["var(--tw-backdrop-blur,)","var(--tw-backdrop-brightness,)","var(--tw-backdrop-contrast,)","var(--tw-backdrop-grayscale,)","var(--tw-backdrop-hue-rotate,)","var(--tw-backdrop-invert,)","var(--tw-backdrop-opacity,)","var(--tw-backdrop-saturate,)","var(--tw-backdrop-sepia,)"].join(" "),l=()=>z([Ne("--tw-blur"),Ne("--tw-brightness"),Ne("--tw-contrast"),Ne("--tw-grayscale"),Ne("--tw-hue-rotate"),Ne("--tw-invert"),Ne("--tw-opacity"),Ne("--tw-saturate"),Ne("--tw-sepia"),Ne("--tw-drop-shadow"),Ne("--tw-drop-shadow-color"),Ne("--tw-drop-shadow-alpha","100%",""),Ne("--tw-drop-shadow-size")]),s=()=>z([Ne("--tw-backdrop-blur"),Ne("--tw-backdrop-brightness"),Ne("--tw-backdrop-contrast"),Ne("--tw-backdrop-grayscale"),Ne("--tw-backdrop-hue-rotate"),Ne("--tw-backdrop-invert"),Ne("--tw-backdrop-opacity"),Ne("--tw-backdrop-saturate"),Ne("--tw-backdrop-sepia")]);t.functional("filter",(e=>{if(!e.modifier){if(null===e.value)return[l(),y("filter",i)];if("arbitrary"===e.value.kind)return[y("filter",e.value.value)];if("none"===e.value.value)return[y("filter","none")]}})),t.functional("backdrop-filter",(e=>{if(!e.modifier){if(null===e.value)return[s(),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)];if("arbitrary"===e.value.kind)return[y("-webkit-backdrop-filter",e.value.value),y("backdrop-filter",e.value.value)];if("none"===e.value.value)return[y("-webkit-backdrop-filter","none"),y("backdrop-filter","none")]}})),o("blur",{themeKeys:["--blur"],handle:e=>[l(),y("--tw-blur",`blur(${e})`),y("filter",i)]}),n("blur-none",[l,["--tw-blur"," "],["filter",i]]),o("backdrop-blur",{themeKeys:["--backdrop-blur","--blur"],handle:e=>[s(),y("--tw-backdrop-blur",`blur(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),n("backdrop-blur-none",[s,["--tw-backdrop-blur"," "],["-webkit-backdrop-filter",a],["backdrop-filter",a]]),o("brightness",{themeKeys:["--brightness"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,handle:e=>[l(),y("--tw-brightness",`brightness(${e})`),y("filter",i)]}),o("backdrop-brightness",{themeKeys:["--backdrop-brightness","--brightness"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,handle:e=>[s(),y("--tw-backdrop-brightness",`brightness(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),r("brightness",(()=>[{values:["0","50","75","90","95","100","105","110","125","150","200"],valueThemeKeys:["--brightness"]}])),r("backdrop-brightness",(()=>[{values:["0","50","75","90","95","100","105","110","125","150","200"],valueThemeKeys:["--backdrop-brightness","--brightness"]}])),o("contrast",{themeKeys:["--contrast"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,handle:e=>[l(),y("--tw-contrast",`contrast(${e})`),y("filter",i)]}),o("backdrop-contrast",{themeKeys:["--backdrop-contrast","--contrast"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,handle:e=>[s(),y("--tw-backdrop-contrast",`contrast(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),r("contrast",(()=>[{values:["0","50","75","100","125","150","200"],valueThemeKeys:["--contrast"]}])),r("backdrop-contrast",(()=>[{values:["0","50","75","100","125","150","200"],valueThemeKeys:["--backdrop-contrast","--contrast"]}])),o("grayscale",{themeKeys:["--grayscale"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[l(),y("--tw-grayscale",`grayscale(${e})`),y("filter",i)]}),o("backdrop-grayscale",{themeKeys:["--backdrop-grayscale","--grayscale"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[s(),y("--tw-backdrop-grayscale",`grayscale(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),r("grayscale",(()=>[{values:["0","25","50","75","100"],valueThemeKeys:["--grayscale"],hasDefaultValue:!0}])),r("backdrop-grayscale",(()=>[{values:["0","25","50","75","100"],valueThemeKeys:["--backdrop-grayscale","--grayscale"],hasDefaultValue:!0}])),o("hue-rotate",{supportsNegative:!0,themeKeys:["--hue-rotate"],handleBareValue:({value:e})=>ye(e)?`${e}deg`:null,handle:e=>[l(),y("--tw-hue-rotate",`hue-rotate(${e})`),y("filter",i)]}),o("backdrop-hue-rotate",{supportsNegative:!0,themeKeys:["--backdrop-hue-rotate","--hue-rotate"],handleBareValue:({value:e})=>ye(e)?`${e}deg`:null,handle:e=>[s(),y("--tw-backdrop-hue-rotate",`hue-rotate(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),r("hue-rotate",(()=>[{values:["0","15","30","60","90","180"],valueThemeKeys:["--hue-rotate"]}])),r("backdrop-hue-rotate",(()=>[{values:["0","15","30","60","90","180"],valueThemeKeys:["--backdrop-hue-rotate","--hue-rotate"]}])),o("invert",{themeKeys:["--invert"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[l(),y("--tw-invert",`invert(${e})`),y("filter",i)]}),o("backdrop-invert",{themeKeys:["--backdrop-invert","--invert"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[s(),y("--tw-backdrop-invert",`invert(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),r("invert",(()=>[{values:["0","25","50","75","100"],valueThemeKeys:["--invert"],hasDefaultValue:!0}])),r("backdrop-invert",(()=>[{values:["0","25","50","75","100"],valueThemeKeys:["--backdrop-invert","--invert"],hasDefaultValue:!0}])),o("saturate",{themeKeys:["--saturate"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,handle:e=>[l(),y("--tw-saturate",`saturate(${e})`),y("filter",i)]}),o("backdrop-saturate",{themeKeys:["--backdrop-saturate","--saturate"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,handle:e=>[s(),y("--tw-backdrop-saturate",`saturate(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),r("saturate",(()=>[{values:["0","50","100","150","200"],valueThemeKeys:["--saturate"]}])),r("backdrop-saturate",(()=>[{values:["0","50","100","150","200"],valueThemeKeys:["--backdrop-saturate","--saturate"]}])),o("sepia",{themeKeys:["--sepia"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[l(),y("--tw-sepia",`sepia(${e})`),y("filter",i)]}),o("backdrop-sepia",{themeKeys:["--backdrop-sepia","--sepia"],handleBareValue:({value:e})=>ye(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[s(),y("--tw-backdrop-sepia",`sepia(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),r("sepia",(()=>[{values:["0","50","100"],valueThemeKeys:["--sepia"],hasDefaultValue:!0}])),r("backdrop-sepia",(()=>[{values:["0","50","100"],valueThemeKeys:["--backdrop-sepia","--sepia"],hasDefaultValue:!0}])),n("drop-shadow-none",[l,["--tw-drop-shadow"," "],["filter",i]]),t.functional("drop-shadow",(t=>{let r;if(t.modifier&&("arbitrary"===t.modifier.kind?r=t.modifier.value:ye(t.modifier.value)&&(r=`${t.modifier.value}%`)),!t.value){let t=e.get(["--drop-shadow"]),n=e.resolve(null,["--drop-shadow"]);return null===t||null===n?void 0:[l(),y("--tw-drop-shadow-alpha",r),...Le("--tw-drop-shadow-size",t,r,(e=>`var(--tw-drop-shadow-color, ${e})`)),y("--tw-drop-shadow",I(n,",").map((e=>`drop-shadow(${e})`)).join(" ")),y("filter",i)]}if("arbitrary"===t.value.kind){let n=t.value.value;return"color"===(t.value.dataType??ae(n,["color"]))?(n=We(n,t.modifier,e),null===n?void 0:[l(),y("--tw-drop-shadow-color",Oe(n,"var(--tw-drop-shadow-alpha)")),y("--tw-drop-shadow","var(--tw-drop-shadow-size)")]):t.modifier&&!r?void 0:[l(),y("--tw-drop-shadow-alpha",r),...Le("--tw-drop-shadow-size",n,r,(e=>`var(--tw-drop-shadow-color, ${e})`)),y("--tw-drop-shadow","var(--tw-drop-shadow-size)"),y("filter",i)]}{let n=e.get([`--drop-shadow-${t.value.value}`]),o=e.resolve(t.value.value,["--drop-shadow"]);if(n&&o)return t.modifier&&!r?void 0:r?[l(),y("--tw-drop-shadow-alpha",r),...Le("--tw-drop-shadow-size",n,r,(e=>`var(--tw-drop-shadow-color, ${e})`)),y("--tw-drop-shadow","var(--tw-drop-shadow-size)"),y("filter",i)]:[l(),y("--tw-drop-shadow-alpha",r),...Le("--tw-drop-shadow-size",n,r,(e=>`var(--tw-drop-shadow-color, ${e})`)),y("--tw-drop-shadow",I(o,",").map((e=>`drop-shadow(${e})`)).join(" ")),y("filter",i)]}{let r=Ue(t,e,["--drop-shadow-color","--color"]);if(r)return"inherit"===r?[l(),y("--tw-drop-shadow-color","inherit"),y("--tw-drop-shadow","var(--tw-drop-shadow-size)")]:[l(),y("--tw-drop-shadow-color",Oe(r,"var(--tw-drop-shadow-alpha)")),y("--tw-drop-shadow","var(--tw-drop-shadow-size)")]}})),r("drop-shadow",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--drop-shadow-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{valueThemeKeys:["--drop-shadow"]}])),o("backdrop-opacity",{themeKeys:["--backdrop-opacity","--opacity"],handleBareValue:({value:e})=>ze(e)?`${e}%`:null,handle:e=>[s(),y("--tw-backdrop-opacity",`opacity(${e})`),y("-webkit-backdrop-filter",a),y("backdrop-filter",a)]}),r("backdrop-opacity",(()=>[{values:Array.from({length:21},((e,t)=>""+5*t)),valueThemeKeys:["--backdrop-opacity","--opacity"]}]))}{let i=`var(--tw-ease, ${e.resolve(null,["--default-transition-timing-function"])??"ease"})`,a=`var(--tw-duration, ${e.resolve(null,["--default-transition-duration"])??"0s"})`;n("transition-none",[["transition-property","none"]]),n("transition-all",[["transition-property","all"],["transition-timing-function",i],["transition-duration",a]]),n("transition-colors",[["transition-property","color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to"],["transition-timing-function",i],["transition-duration",a]]),n("transition-opacity",[["transition-property","opacity"],["transition-timing-function",i],["transition-duration",a]]),n("transition-shadow",[["transition-property","box-shadow"],["transition-timing-function",i],["transition-duration",a]]),n("transition-transform",[["transition-property","transform, translate, scale, rotate"],["transition-timing-function",i],["transition-duration",a]]),o("transition",{defaultValue:"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, visibility, content-visibility, overlay, pointer-events",themeKeys:["--transition-property"],handle:e=>[y("transition-property",e),y("transition-timing-function",i),y("transition-duration",a)]}),n("transition-discrete",[["transition-behavior","allow-discrete"]]),n("transition-normal",[["transition-behavior","normal"]]),o("delay",{handleBareValue:({value:e})=>ye(e)?`${e}ms`:null,themeKeys:["--transition-delay"],handle:e=>[y("transition-delay",e)]});{let r=()=>z([Ne("--tw-duration")]);n("duration-initial",[r,["--tw-duration","initial"]]),t.functional("duration",(t=>{if(t.modifier||!t.value)return;let n=null;return"arbitrary"===t.value.kind?n=t.value.value:(n=e.resolve(t.value.fraction??t.value.value,["--transition-duration"]),null===n&&ye(t.value.value)&&(n=`${t.value.value}ms`)),null!==n?[r(),y("--tw-duration",n),y("transition-duration",n)]:void 0}))}r("delay",(()=>[{values:["75","100","150","200","300","500","700","1000"],valueThemeKeys:["--transition-delay"]}])),r("duration",(()=>[{values:["75","100","150","200","300","500","700","1000"],valueThemeKeys:["--transition-duration"]}]))}{let e=()=>z([Ne("--tw-ease")]);n("ease-initial",[e,["--tw-ease","initial"]]),n("ease-linear",[e,["--tw-ease","linear"],["transition-timing-function","linear"]]),o("ease",{themeKeys:["--ease"],handle:t=>[e(),y("--tw-ease",t),y("transition-timing-function",t)]})}n("will-change-auto",[["will-change","auto"]]),n("will-change-scroll",[["will-change","scroll-position"]]),n("will-change-contents",[["will-change","contents"]]),n("will-change-transform",[["will-change","transform"]]),o("will-change",{themeKeys:[],handle:e=>[y("will-change",e)]}),n("content-none",[["--tw-content","none"],["content","none"]]),o("content",{themeKeys:[],handle:e=>[z([Ne("--tw-content",'""')]),y("--tw-content",e),y("content","var(--tw-content)")]});{let e="var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)",t=()=>z([Ne("--tw-contain-size"),Ne("--tw-contain-layout"),Ne("--tw-contain-paint"),Ne("--tw-contain-style")]);n("contain-none",[["contain","none"]]),n("contain-content",[["contain","content"]]),n("contain-strict",[["contain","strict"]]),n("contain-size",[t,["--tw-contain-size","size"],["contain",e]]),n("contain-inline-size",[t,["--tw-contain-size","inline-size"],["contain",e]]),n("contain-layout",[t,["--tw-contain-layout","layout"],["contain",e]]),n("contain-paint",[t,["--tw-contain-paint","paint"],["contain",e]]),n("contain-style",[t,["--tw-contain-style","style"],["contain",e]]),o("contain",{themeKeys:[],handle:e=>[y("contain",e)]})}n("forced-color-adjust-none",[["forced-color-adjust","none"]]),n("forced-color-adjust-auto",[["forced-color-adjust","auto"]]),n("leading-none",[()=>z([Ne("--tw-leading")]),["--tw-leading","1"],["line-height","1"]]),a("leading",["--leading","--spacing"],(e=>[z([Ne("--tw-leading")]),y("--tw-leading",e),y("line-height",e)])),o("tracking",{supportsNegative:!0,themeKeys:["--tracking"],handle:e=>[z([Ne("--tw-tracking")]),y("--tw-tracking",e),y("letter-spacing",e)]}),n("antialiased",[["-webkit-font-smoothing","antialiased"],["-moz-osx-font-smoothing","grayscale"]]),n("subpixel-antialiased",[["-webkit-font-smoothing","auto"],["-moz-osx-font-smoothing","auto"]]);{let e="var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)",t=()=>z([Ne("--tw-ordinal"),Ne("--tw-slashed-zero"),Ne("--tw-numeric-figure"),Ne("--tw-numeric-spacing"),Ne("--tw-numeric-fraction")]);n("normal-nums",[["font-variant-numeric","normal"]]),n("ordinal",[t,["--tw-ordinal","ordinal"],["font-variant-numeric",e]]),n("slashed-zero",[t,["--tw-slashed-zero","slashed-zero"],["font-variant-numeric",e]]),n("lining-nums",[t,["--tw-numeric-figure","lining-nums"],["font-variant-numeric",e]]),n("oldstyle-nums",[t,["--tw-numeric-figure","oldstyle-nums"],["font-variant-numeric",e]]),n("proportional-nums",[t,["--tw-numeric-spacing","proportional-nums"],["font-variant-numeric",e]]),n("tabular-nums",[t,["--tw-numeric-spacing","tabular-nums"],["font-variant-numeric",e]]),n("diagonal-fractions",[t,["--tw-numeric-fraction","diagonal-fractions"],["font-variant-numeric",e]]),n("stacked-fractions",[t,["--tw-numeric-fraction","stacked-fractions"],["font-variant-numeric",e]])}{let i=()=>z([Ne("--tw-outline-style","solid")]);t.static("outline-hidden",(()=>[y("--tw-outline-style","none"),y("outline-style","none"),k("@media","(forced-colors: active)",[y("outline","2px solid transparent"),y("outline-offset","2px")])])),n("outline-none",[["--tw-outline-style","none"],["outline-style","none"]]),n("outline-solid",[["--tw-outline-style","solid"],["outline-style","solid"]]),n("outline-dashed",[["--tw-outline-style","dashed"],["outline-style","dashed"]]),n("outline-dotted",[["--tw-outline-style","dotted"],["outline-style","dotted"]]),n("outline-double",[["--tw-outline-style","double"],["outline-style","double"]]),t.functional("outline",(t=>{if(null===t.value){if(t.modifier)return;let r=e.get(["--default-outline-width"])??"1px";return[i(),y("outline-style","var(--tw-outline-style)"),y("outline-width",r)]}if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ae(r,["color","length","number","percentage"])){case"length":case"number":case"percentage":return t.modifier?void 0:[i(),y("outline-style","var(--tw-outline-style)"),y("outline-width",r)];default:return r=We(r,t.modifier,e),null===r?void 0:[y("outline-color",r)]}}{let r=Ue(t,e,["--outline-color","--color"]);if(r)return[y("outline-color",r)]}{if(t.modifier)return;let r=e.resolve(t.value.value,["--outline-width"]);if(r)return[i(),y("outline-style","var(--tw-outline-style)"),y("outline-width",r)];if(ye(t.value.value))return[i(),y("outline-style","var(--tw-outline-style)"),y("outline-width",`${t.value.value}px`)]}})),r("outline",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--outline-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t)),hasDefaultValue:!0},{values:["0","1","2","4","8"],valueThemeKeys:["--outline-width"]}])),o("outline-offset",{supportsNegative:!0,themeKeys:["--outline-offset"],handleBareValue:({value:e})=>ye(e)?`${e}px`:null,handle:e=>[y("outline-offset",e)]}),r("outline-offset",(()=>[{supportsNegative:!0,values:["0","1","2","4","8"],valueThemeKeys:["--outline-offset"]}]))}o("opacity",{themeKeys:["--opacity"],handleBareValue:({value:e})=>ze(e)?`${e}%`:null,handle:e=>[y("opacity",e)]}),r("opacity",(()=>[{values:Array.from({length:21},((e,t)=>""+5*t)),valueThemeKeys:["--opacity"]}])),n("underline-offset-auto",[["text-underline-offset","auto"]]),o("underline-offset",{supportsNegative:!0,themeKeys:["--text-underline-offset"],handleBareValue:({value:e})=>ye(e)?`${e}px`:null,handle:e=>[y("text-underline-offset",e)]}),r("underline-offset",(()=>[{supportsNegative:!0,values:["0","1","2","4","8"],valueThemeKeys:["--text-underline-offset"]}])),t.functional("text",(t=>{if(t.value){if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ae(r,["color","length","percentage","absolute-size","relative-size"])){case"size":case"length":case"percentage":case"absolute-size":case"relative-size":if(t.modifier){let n="arbitrary"===t.modifier.kind?t.modifier.value:e.resolve(t.modifier.value,["--leading"]);if(!n&&$e(t.modifier.value)){let r=e.resolve(null,["--spacing"]);if(!r)return null;n=`calc(${r} * ${t.modifier.value})`}return!n&&"none"===t.modifier.value&&(n="1"),n?[y("font-size",r),y("line-height",n)]:null}return[y("font-size",r)];default:return r=We(r,t.modifier,e),null===r?void 0:[y("color",r)]}}{let r=Ue(t,e,["--text-color","--color"]);if(r)return[y("color",r)]}{let r=e.resolveWith(t.value.value,["--text"],["--line-height","--letter-spacing","--font-weight"]);if(r){let[n,o={}]=Array.isArray(r)?r:[r];if(t.modifier){let r="arbitrary"===t.modifier.kind?t.modifier.value:e.resolve(t.modifier.value,["--leading"]);if(!r&&$e(t.modifier.value)){let n=e.resolve(null,["--spacing"]);if(!n)return null;r=`calc(${n} * ${t.modifier.value})`}if(!r&&"none"===t.modifier.value&&(r="1"),!r)return null;let o=[y("font-size",n)];return r&&o.push(y("line-height",r)),o}return"string"==typeof o?[y("font-size",n),y("line-height",o)]:[y("font-size",n),y("line-height",o["--line-height"]?`var(--tw-leading, ${o["--line-height"]})`:void 0),y("letter-spacing",o["--letter-spacing"]?`var(--tw-tracking, ${o["--letter-spacing"]})`:void 0),y("font-weight",o["--font-weight"]?`var(--tw-font-weight, ${o["--font-weight"]})`:void 0)]}}}})),r("text",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--text-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:[],valueThemeKeys:["--text"],modifiers:[],modifierThemeKeys:["--leading"]}]));let T=()=>z([Ne("--tw-text-shadow-color"),Ne("--tw-text-shadow-alpha","100%","")]);n("text-shadow-initial",[T,["--tw-text-shadow-color","initial"]]),t.functional("text-shadow",(t=>{let r;if(t.modifier&&("arbitrary"===t.modifier.kind?r=t.modifier.value:ye(t.modifier.value)&&(r=`${t.modifier.value}%`)),!t.value){let t=e.get(["--text-shadow"]);return null===t?void 0:[T(),y("--tw-text-shadow-alpha",r),...Be("text-shadow",t,r,(e=>`var(--tw-text-shadow-color, ${e})`))]}if("arbitrary"===t.value.kind){let n=t.value.value;return"color"===(t.value.dataType??ae(n,["color"]))?(n=We(n,t.modifier,e),null===n?void 0:[T(),y("--tw-text-shadow-color",Oe(n,"var(--tw-text-shadow-alpha)"))]):[T(),y("--tw-text-shadow-alpha",r),...Be("text-shadow",n,r,(e=>`var(--tw-text-shadow-color, ${e})`))]}switch(t.value.value){case"none":return t.modifier?void 0:[T(),y("text-shadow","none")];case"inherit":return t.modifier?void 0:[T(),y("--tw-text-shadow-color","inherit")]}{let n=e.get([`--text-shadow-${t.value.value}`]);if(n)return[T(),y("--tw-text-shadow-alpha",r),...Be("text-shadow",n,r,(e=>`var(--tw-text-shadow-color, ${e})`))]}{let r=Ue(t,e,["--text-shadow-color","--color"]);if(r)return[T(),y("--tw-text-shadow-color",Oe(r,"var(--tw-text-shadow-alpha)"))]}})),r("text-shadow",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--text-shadow-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:["none"]},{valueThemeKeys:["--text-shadow"],modifiers:Array.from({length:21},((e,t)=>""+5*t)),hasDefaultValue:null!==e.get(["--text-shadow"])}]));{let o=function(e){return`var(--tw-ring-inset,) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color, ${c})`},i=function(e){return`inset 0 0 0 ${e} var(--tw-inset-ring-color, currentcolor)`},a=["var(--tw-inset-shadow)","var(--tw-inset-ring-shadow)","var(--tw-ring-offset-shadow)","var(--tw-ring-shadow)","var(--tw-shadow)"].join(", "),l="0 0 #0000",s=()=>z([Ne("--tw-shadow",l),Ne("--tw-shadow-color"),Ne("--tw-shadow-alpha","100%",""),Ne("--tw-inset-shadow",l),Ne("--tw-inset-shadow-color"),Ne("--tw-inset-shadow-alpha","100%",""),Ne("--tw-ring-color"),Ne("--tw-ring-shadow",l),Ne("--tw-inset-ring-color"),Ne("--tw-inset-ring-shadow",l),Ne("--tw-ring-inset"),Ne("--tw-ring-offset-width","0px",""),Ne("--tw-ring-offset-color","#fff"),Ne("--tw-ring-offset-shadow",l)]);n("shadow-initial",[s,["--tw-shadow-color","initial"]]),t.functional("shadow",(t=>{let r;if(t.modifier&&("arbitrary"===t.modifier.kind?r=t.modifier.value:ye(t.modifier.value)&&(r=`${t.modifier.value}%`)),!t.value){let t=e.get(["--shadow"]);return null===t?void 0:[s(),y("--tw-shadow-alpha",r),...Be("--tw-shadow",t,r,(e=>`var(--tw-shadow-color, ${e})`)),y("box-shadow",a)]}if("arbitrary"===t.value.kind){let n=t.value.value;return"color"===(t.value.dataType??ae(n,["color"]))?(n=We(n,t.modifier,e),null===n?void 0:[s(),y("--tw-shadow-color",Oe(n,"var(--tw-shadow-alpha)"))]):[s(),y("--tw-shadow-alpha",r),...Be("--tw-shadow",n,r,(e=>`var(--tw-shadow-color, ${e})`)),y("box-shadow",a)]}switch(t.value.value){case"none":return t.modifier?void 0:[s(),y("--tw-shadow",l),y("box-shadow",a)];case"inherit":return t.modifier?void 0:[s(),y("--tw-shadow-color","inherit")]}{let n=e.get([`--shadow-${t.value.value}`]);if(n)return[s(),y("--tw-shadow-alpha",r),...Be("--tw-shadow",n,r,(e=>`var(--tw-shadow-color, ${e})`)),y("box-shadow",a)]}{let r=Ue(t,e,["--box-shadow-color","--color"]);if(r)return[s(),y("--tw-shadow-color",Oe(r,"var(--tw-shadow-alpha)"))]}})),r("shadow",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--box-shadow-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:["none"]},{valueThemeKeys:["--shadow"],modifiers:Array.from({length:21},((e,t)=>""+5*t)),hasDefaultValue:null!==e.get(["--shadow"])}])),n("inset-shadow-initial",[s,["--tw-inset-shadow-color","initial"]]),t.functional("inset-shadow",(t=>{let r;if(t.modifier&&("arbitrary"===t.modifier.kind?r=t.modifier.value:ye(t.modifier.value)&&(r=`${t.modifier.value}%`)),!t.value){let t=e.get(["--inset-shadow"]);return null===t?void 0:[s(),y("--tw-inset-shadow-alpha",r),...Be("--tw-inset-shadow",t,r,(e=>`var(--tw-inset-shadow-color, ${e})`)),y("box-shadow",a)]}if("arbitrary"===t.value.kind){let n=t.value.value;return"color"===(t.value.dataType??ae(n,["color"]))?(n=We(n,t.modifier,e),null===n?void 0:[s(),y("--tw-inset-shadow-color",Oe(n,"var(--tw-inset-shadow-alpha)"))]):[s(),y("--tw-inset-shadow-alpha",r),...Be("--tw-inset-shadow",n,r,(e=>`var(--tw-inset-shadow-color, ${e})`),"inset "),y("box-shadow",a)]}switch(t.value.value){case"none":return t.modifier?void 0:[s(),y("--tw-inset-shadow",l),y("box-shadow",a)];case"inherit":return t.modifier?void 0:[s(),y("--tw-inset-shadow-color","inherit")]}{let n=e.get([`--inset-shadow-${t.value.value}`]);if(n)return[s(),y("--tw-inset-shadow-alpha",r),...Be("--tw-inset-shadow",n,r,(e=>`var(--tw-inset-shadow-color, ${e})`)),y("box-shadow",a)]}{let r=Ue(t,e,["--box-shadow-color","--color"]);if(r)return[s(),y("--tw-inset-shadow-color",Oe(r,"var(--tw-inset-shadow-alpha)"))]}})),r("inset-shadow",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--box-shadow-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:["none"]},{valueThemeKeys:["--inset-shadow"],modifiers:Array.from({length:21},((e,t)=>""+5*t)),hasDefaultValue:null!==e.get(["--inset-shadow"])}])),n("ring-inset",[s,["--tw-ring-inset","inset"]]);let c=e.get(["--default-ring-color"])??"currentcolor";t.functional("ring",(t=>{if(!t.value){if(t.modifier)return;let r=e.get(["--default-ring-width"])??"1px";return[s(),y("--tw-ring-shadow",o(r)),y("box-shadow",a)]}if("arbitrary"===t.value.kind){let r=t.value.value;return"length"===(t.value.dataType??ae(r,["color","length"]))?t.modifier?void 0:[s(),y("--tw-ring-shadow",o(r)),y("box-shadow",a)]:(r=We(r,t.modifier,e),null===r?void 0:[y("--tw-ring-color",r)])}{let r=Ue(t,e,["--ring-color","--color"]);if(r)return[y("--tw-ring-color",r)]}{if(t.modifier)return;let r=e.resolve(t.value.value,["--ring-width"]);if(null===r&&ye(t.value.value)&&(r=`${t.value.value}px`),r)return[s(),y("--tw-ring-shadow",o(r)),y("box-shadow",a)]}})),r("ring",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--ring-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:["0","1","2","4","8"],valueThemeKeys:["--ring-width"],hasDefaultValue:!0}])),t.functional("inset-ring",(t=>{if(!t.value)return t.modifier?void 0:[s(),y("--tw-inset-ring-shadow",i("1px")),y("box-shadow",a)];if("arbitrary"===t.value.kind){let r=t.value.value;return"length"===(t.value.dataType??ae(r,["color","length"]))?t.modifier?void 0:[s(),y("--tw-inset-ring-shadow",i(r)),y("box-shadow",a)]:(r=We(r,t.modifier,e),null===r?void 0:[y("--tw-inset-ring-color",r)])}{let r=Ue(t,e,["--ring-color","--color"]);if(r)return[y("--tw-inset-ring-color",r)]}{if(t.modifier)return;let r=e.resolve(t.value.value,["--ring-width"]);if(null===r&&ye(t.value.value)&&(r=`${t.value.value}px`),r)return[s(),y("--tw-inset-ring-shadow",i(r)),y("box-shadow",a)]}})),r("inset-ring",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--ring-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:["0","1","2","4","8"],valueThemeKeys:["--ring-width"],hasDefaultValue:!0}]));let u="var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)";t.functional("ring-offset",(t=>{if(t.value){if("arbitrary"===t.value.kind){let r=t.value.value;return"length"===(t.value.dataType??ae(r,["color","length"]))?t.modifier?void 0:[y("--tw-ring-offset-width",r),y("--tw-ring-offset-shadow",u)]:(r=We(r,t.modifier,e),null===r?void 0:[y("--tw-ring-offset-color",r)])}{let r=e.resolve(t.value.value,["--ring-offset-width"]);if(r)return t.modifier?void 0:[y("--tw-ring-offset-width",r),y("--tw-ring-offset-shadow",u)];if(ye(t.value.value))return t.modifier?void 0:[y("--tw-ring-offset-width",`${t.value.value}px`),y("--tw-ring-offset-shadow",u)]}{let r=Ue(t,e,["--ring-offset-color","--color"]);if(r)return[y("--tw-ring-offset-color",r)]}}}))}return r("ring-offset",(()=>[{values:["current","inherit","transparent"],valueThemeKeys:["--ring-offset-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))},{values:["0","1","2","4","8"],valueThemeKeys:["--ring-offset-width"]}])),t.functional("@container",(e=>{let t=null;if(null===e.value?t="inline-size":"arbitrary"===e.value.kind?t=e.value.value:"named"===e.value.kind&&"normal"===e.value.value&&(t="normal"),null!==t)return e.modifier?[y("container-type",t),y("container-name",e.modifier.value)]:[y("container-type",t)]})),r("@container",(()=>[{values:["normal"],valueThemeKeys:[],hasDefaultValue:!0}])),t}(e),r=function(e){let t=new Je;function r(e,r,{compounds:n}={}){n=n??Xe(r),t.static(e,(e=>{e.nodes=r.map((t=>b(t,e.nodes)))}),{compounds:n})}function n(e,t){return t.map((t=>{let r=I(t=t.trim()," ");return"not"===r[0]?r.slice(1).join(" "):"@container"===e?"("===r[0][0]?`not ${t}`:"not"===r[1]?`${r[0]} ${r.slice(2).join(" ")}`:`${r[0]} not ${r.slice(1).join(" ")}`:`not ${t}`}))}r("*",[":is(& > *)"],{compounds:0}),r("**",[":is(& *)"],{compounds:0});let o=["@media","@supports","@container"];function i(e){for(let t of o){if(t!==e.name)continue;let r=I(e.params,",");return r.length>1?null:(r=n(e.name,r),k(e.name,r.join(", ")))}return null}function a(e){return e.includes("::")?null:`&:not(${I(e,",").map((e=>e.replaceAll("&","*"))).join(", ")})`}t.compound("not",3,((e,t)=>{if("arbitrary"===t.variant.kind&&t.variant.relative||t.modifier)return null;let r=!1;return A([e],((t,{path:n})=>{if("rule"!==t.kind&&"at-rule"!==t.kind)return 0;if(t.nodes.length>0)return 0;let o=[],l=[];for(let e of n)"at-rule"===e.kind?o.push(e):"rule"===e.kind&&l.push(e);if(o.length>1)return 2;if(l.length>1)return 2;let s=[];for(let e of l){let t=a(e.selector);if(!t)return r=!1,2;s.push(w(t,[]))}for(let e of o){let t=i(e);if(!t)return r=!1,2;s.push(t)}return Object.assign(e,w("&",s)),r=!0,1})),"rule"===e.kind&&"&"===e.selector&&1===e.nodes.length&&Object.assign(e,e.nodes[0]),r?void 0:null})),t.suggest("not",(()=>Array.from(t.keys()).filter((e=>t.compoundsWith("not",e))))),t.compound("group",2,((t,r)=>{if("arbitrary"===r.variant.kind&&r.variant.relative)return null;let n=r.modifier?`:where(.${e.prefix?`${e.prefix}\\:`:""}group\\/${r.modifier.value})`:`:where(.${e.prefix?`${e.prefix}\\:`:""}group)`,o=!1;return A([t],((e,{path:t})=>{if("rule"!==e.kind)return 0;for(let e of t.slice(0,-1))if("rule"===e.kind)return o=!1,2;let r=e.selector.replaceAll("&",n);I(r,",").length>1&&(r=`:is(${r})`),e.selector=`&:is(${r} *)`,o=!0})),o?void 0:null})),t.suggest("group",(()=>Array.from(t.keys()).filter((e=>t.compoundsWith("group",e))))),t.compound("peer",2,((t,r)=>{if("arbitrary"===r.variant.kind&&r.variant.relative)return null;let n=r.modifier?`:where(.${e.prefix?`${e.prefix}\\:`:""}peer\\/${r.modifier.value})`:`:where(.${e.prefix?`${e.prefix}\\:`:""}peer)`,o=!1;return A([t],((e,{path:t})=>{if("rule"!==e.kind)return 0;for(let e of t.slice(0,-1))if("rule"===e.kind)return o=!1,2;let r=e.selector.replaceAll("&",n);I(r,",").length>1&&(r=`:is(${r})`),e.selector=`&:is(${r} ~ *)`,o=!0})),o?void 0:null})),t.suggest("peer",(()=>Array.from(t.keys()).filter((e=>t.compoundsWith("peer",e))))),r("first-letter",["&::first-letter"]),r("first-line",["&::first-line"]),r("marker",["& *::marker","&::marker","& *::-webkit-details-marker","&::-webkit-details-marker"]),r("selection",["& *::selection","&::selection"]),r("file",["&::file-selector-button"]),r("placeholder",["&::placeholder"]),r("backdrop",["&::backdrop"]),r("details-content",["&::details-content"]);{let e=function(){return z([k("@property","--tw-content",[y("syntax",'"*"'),y("initial-value",'""'),y("inherits","false")])])};t.static("before",(t=>{t.nodes=[w("&::before",[e(),y("content","var(--tw-content)"),...t.nodes])]}),{compounds:0}),t.static("after",(t=>{t.nodes=[w("&::after",[e(),y("content","var(--tw-content)"),...t.nodes])]}),{compounds:0})}r("first",["&:first-child"]),r("last",["&:last-child"]),r("only",["&:only-child"]),r("odd",["&:nth-child(odd)"]),r("even",["&:nth-child(even)"]),r("first-of-type",["&:first-of-type"]),r("last-of-type",["&:last-of-type"]),r("only-of-type",["&:only-of-type"]),r("visited",["&:visited"]),r("target",["&:target"]),r("open",["&:is([open], :popover-open, :open)"]),r("default",["&:default"]),r("checked",["&:checked"]),r("indeterminate",["&:indeterminate"]),r("placeholder-shown",["&:placeholder-shown"]),r("autofill",["&:autofill"]),r("optional",["&:optional"]),r("required",["&:required"]),r("valid",["&:valid"]),r("invalid",["&:invalid"]),r("user-valid",["&:user-valid"]),r("user-invalid",["&:user-invalid"]),r("in-range",["&:in-range"]),r("out-of-range",["&:out-of-range"]),r("read-only",["&:read-only"]),r("empty",["&:empty"]),r("focus-within",["&:focus-within"]),t.static("hover",(e=>{e.nodes=[w("&:hover",[k("@media","(hover: hover)",e.nodes)])]})),r("focus",["&:focus"]),r("focus-visible",["&:focus-visible"]),r("active",["&:active"]),r("enabled",["&:enabled"]),r("disabled",["&:disabled"]),r("inert",["&:is([inert], [inert] *)"]),t.compound("in",2,((e,t)=>{if(t.modifier)return null;let r=!1;return A([e],((e,{path:t})=>{if("rule"!==e.kind)return 0;for(let e of t.slice(0,-1))if("rule"===e.kind)return r=!1,2;e.selector=`:where(${e.selector.replaceAll("&","*")}) &`,r=!0})),r?void 0:null})),t.suggest("in",(()=>Array.from(t.keys()).filter((e=>t.compoundsWith("in",e))))),t.compound("has",2,((e,t)=>{if(t.modifier)return null;let r=!1;return A([e],((e,{path:t})=>{if("rule"!==e.kind)return 0;for(let e of t.slice(0,-1))if("rule"===e.kind)return r=!1,2;e.selector=`&:has(${e.selector.replaceAll("&","*")})`,r=!0})),r?void 0:null})),t.suggest("has",(()=>Array.from(t.keys()).filter((e=>t.compoundsWith("has",e))))),t.functional("aria",((e,t)=>{if(!t.value||t.modifier)return null;"arbitrary"===t.value.kind?e.nodes=[w(`&[aria-${Qe(t.value.value)}]`,e.nodes)]:e.nodes=[w(`&[aria-${t.value.value}="true"]`,e.nodes)]})),t.suggest("aria",(()=>["busy","checked","disabled","expanded","hidden","pressed","readonly","required","selected"])),t.functional("data",((e,t)=>{if(!t.value||t.modifier)return null;e.nodes=[w(`&[data-${Qe(t.value.value)}]`,e.nodes)]})),t.functional("nth",((e,t)=>{if(!t.value||t.modifier||"named"===t.value.kind&&!ye(t.value.value))return null;e.nodes=[w(`&:nth-child(${t.value.value})`,e.nodes)]})),t.functional("nth-last",((e,t)=>{if(!t.value||t.modifier||"named"===t.value.kind&&!ye(t.value.value))return null;e.nodes=[w(`&:nth-last-child(${t.value.value})`,e.nodes)]})),t.functional("nth-of-type",((e,t)=>{if(!t.value||t.modifier||"named"===t.value.kind&&!ye(t.value.value))return null;e.nodes=[w(`&:nth-of-type(${t.value.value})`,e.nodes)]})),t.functional("nth-last-of-type",((e,t)=>{if(!t.value||t.modifier||"named"===t.value.kind&&!ye(t.value.value))return null;e.nodes=[w(`&:nth-last-of-type(${t.value.value})`,e.nodes)]})),t.functional("supports",((e,t)=>{if(!t.value||t.modifier)return null;let r=t.value.value;if(null===r)return null;if(/^[\w-]*\s*\(/.test(r)){let t=r.replace(/\b(and|or|not)\b/g," $1 ");e.nodes=[k("@supports",t,e.nodes)]}else r.includes(":")||(r=`${r}: var(--tw)`),("("!==r[0]||")"!==r[r.length-1])&&(r=`(${r})`),e.nodes=[k("@supports",r,e.nodes)]}),{compounds:1}),r("motion-safe",["@media (prefers-reduced-motion: no-preference)"]),r("motion-reduce",["@media (prefers-reduced-motion: reduce)"]),r("contrast-more",["@media (prefers-contrast: more)"]),r("contrast-less",["@media (prefers-contrast: less)"]);{let r=function(e,t,r,n){if(e===t)return 0;let o=n.get(e);if(null===o)return"asc"===r?-1:1;let i=n.get(t);return null===i?"asc"===r?1:-1:re(o,i,r)};{let n=e.namespace("--breakpoint"),o=new c((t=>{switch(t.kind){case"static":return e.resolveValue(t.root,["--breakpoint"])??null;case"functional":{if(!t.value||t.modifier)return null;let r=null;return"arbitrary"===t.value.kind?r=t.value.value:"named"===t.value.kind&&(r=e.resolveValue(t.value.value,["--breakpoint"])),!r||r.includes("var(")?null:r}case"arbitrary":case"compound":return null}}));t.group((()=>{t.functional("max",((e,t)=>{if(t.modifier)return null;let r=o.get(t);if(null===r)return null;e.nodes=[k("@media",`(width < ${r})`,e.nodes)]}),{compounds:1})}),((e,t)=>r(e,t,"desc",o))),t.suggest("max",(()=>Array.from(n.keys()).filter((e=>null!==e)))),t.group((()=>{for(let[r,n]of e.namespace("--breakpoint"))null!==r&&t.static(r,(e=>{e.nodes=[k("@media",`(width >= ${n})`,e.nodes)]}),{compounds:1});t.functional("min",((e,t)=>{if(t.modifier)return null;let r=o.get(t);if(null===r)return null;e.nodes=[k("@media",`(width >= ${r})`,e.nodes)]}),{compounds:1})}),((e,t)=>r(e,t,"asc",o))),t.suggest("min",(()=>Array.from(n.keys()).filter((e=>null!==e))))}{let n=e.namespace("--container"),o=new c((t=>{switch(t.kind){case"functional":{if(null===t.value)return null;let r=null;return"arbitrary"===t.value.kind?r=t.value.value:"named"===t.value.kind&&(r=e.resolveValue(t.value.value,["--container"])),!r||r.includes("var(")?null:r}case"static":case"arbitrary":case"compound":return null}}));t.group((()=>{t.functional("@max",((e,t)=>{let r=o.get(t);if(null===r)return null;e.nodes=[k("@container",t.modifier?`${t.modifier.value} (width < ${r})`:`(width < ${r})`,e.nodes)]}),{compounds:1})}),((e,t)=>r(e,t,"desc",o))),t.suggest("@max",(()=>Array.from(n.keys()).filter((e=>null!==e)))),t.group((()=>{t.functional("@",((e,t)=>{let r=o.get(t);if(null===r)return null;e.nodes=[k("@container",t.modifier?`${t.modifier.value} (width >= ${r})`:`(width >= ${r})`,e.nodes)]}),{compounds:1}),t.functional("@min",((e,t)=>{let r=o.get(t);if(null===r)return null;e.nodes=[k("@container",t.modifier?`${t.modifier.value} (width >= ${r})`:`(width >= ${r})`,e.nodes)]}),{compounds:1})}),((e,t)=>r(e,t,"asc",o))),t.suggest("@min",(()=>Array.from(n.keys()).filter((e=>null!==e)))),t.suggest("@",(()=>Array.from(n.keys()).filter((e=>null!==e))))}}return r("portrait",["@media (orientation: portrait)"]),r("landscape",["@media (orientation: landscape)"]),r("ltr",['&:where(:dir(ltr), [dir="ltr"], [dir="ltr"] *)']),r("rtl",['&:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *)']),r("dark",["@media (prefers-color-scheme: dark)"]),r("starting",["@starting-style"]),r("print",["@media print"]),r("forced-colors",["@media (forced-colors: active)"]),r("inverted-colors",["@media (inverted-colors: inverted)"]),r("pointer-none",["@media (pointer: none)"]),r("pointer-coarse",["@media (pointer: coarse)"]),r("pointer-fine",["@media (pointer: fine)"]),r("any-pointer-none",["@media (any-pointer: none)"]),r("any-pointer-coarse",["@media (any-pointer: coarse)"]),r("any-pointer-fine",["@media (any-pointer: fine)"]),r("noscript",["@media (scripting: none)"]),t}(e),n=new c((e=>function(e,t){if("["===e[0]&&"]"===e[e.length-1]){if("@"===e[1]&&e.includes("&"))return null;let t=W(e.slice(1,-1));if(!B(t)||0===t.length||0===t.trim().length)return null;let r=">"===t[0]||"+"===t[0]||"~"===t[0];return!r&&"@"!==t[0]&&!t.includes("&")&&(t=`&:is(${t})`),{kind:"arbitrary",selector:t,relative:r}}{let[r,n=null,o]=I(e,"/");if(o)return null;let i=P(r,(e=>t.variants.has(e)));for(let[e,r]of i)switch(t.variants.kind(e)){case"static":return null!==r||null!==n?null:{kind:"static",root:e};case"functional":{let t=null===n?null:R(n);if(null!==n&&null===t)return null;if(null===r)return{kind:"functional",root:e,modifier:t,value:null};if("]"===r[r.length-1]){if("["!==r[0])continue;let n=W(r.slice(1,-1));return B(n)&&0!==n.length&&0!==n.trim().length?{kind:"functional",root:e,modifier:t,value:{kind:"arbitrary",value:n}}:null}if(")"===r[r.length-1]){if("("!==r[0])continue;let n=W(r.slice(1,-1));return B(n)&&0!==n.length&&0!==n.trim().length&&"-"===n[0]&&"-"===n[1]?{kind:"functional",root:e,modifier:t,value:{kind:"arbitrary",value:`var(${n})`}}:null}return{kind:"functional",root:e,modifier:t,value:{kind:"named",value:r}}}case"compound":{if(null===r)return null;let o=t.parseVariant(r);if(null===o||!t.variants.compoundsWith(e,o))return null;let i=null===n?null:R(n);return null!==n&&null===i?null:{kind:"compound",root:e,modifier:i,variant:o}}}}return null}(e,s))),i=new c((e=>Array.from(function*(e,t){let r=I(e,":");if(t.theme.prefix){if(1===r.length||r[0]!==t.theme.prefix)return null;r.shift()}let n=r.pop(),o=[];for(let e=r.length-1;e>=0;--e){let n=t.parseVariant(r[e]);if(null===n)return;o.push(n)}let i=!1;"!"===n[n.length-1]?(i=!0,n=n.slice(0,-1)):"!"===n[0]&&(i=!0,n=n.slice(1)),t.utilities.has(n,"static")&&!n.includes("[")&&(yield{kind:"static",root:n,variants:o,important:i,raw:e});let[a,l=null,s]=I(n,"/");if(s)return;let c,u=null===l?null:R(l);if(null===l||null!==u)if("["!==a[0]){if("]"===a[a.length-1]){let e=a.indexOf("-[");if(-1===e)return;let r=a.slice(0,e);if(!t.utilities.has(r,"functional"))return;c=[[r,a.slice(e+1)]]}else if(")"===a[a.length-1]){let e=a.indexOf("-(");if(-1===e)return;let r=a.slice(0,e);if(!t.utilities.has(r,"functional"))return;let n=a.slice(e+2,-1),o=I(n,":"),i=null;if(2===o.length&&(i=o[0],n=o[1]),"-"!==n[0]||"-"!==n[1]||!B(n))return;c=[[r,null===i?`[var(${n})]`:`[${i}:var(${n})]`]]}else c=P(a,(e=>t.utilities.has(e,"functional")));for(let[t,r]of c){let n={kind:"functional",root:t,modifier:u,value:null,variants:o,important:i,raw:e};if(null!==r){{let e=r.indexOf("[");if(-1!==e){if("]"!==r[r.length-1])return;let t=W(r.slice(e+1,-1));if(!B(t))continue;let o="";for(let e=0;e=97&&r<=122))break}if(0===t.length||0===t.trim().length)continue;n.value={kind:"arbitrary",dataType:o||null,value:t}}else{let e=null===l||"arbitrary"===n.modifier?.kind?null:`${r}/${l}`;n.value={kind:"named",value:r,fraction:e}}}yield n}else yield n}}else{if("]"!==a[a.length-1])return;let t=a.charCodeAt(1);if(45!==t&&!(t>=97&&t<=122))return;a=a.slice(1,-1);let r=a.indexOf(":");if(-1===r||0===r||r===a.length-1)return;let n=a.slice(0,r),l=W(a.slice(r+1));if(!B(l))return;yield{kind:"arbitrary",property:n,value:l,modifier:u,variants:o,important:i,raw:e}}}(e,s)))),a=new c((e=>{let t=function(e,t){let r=function(e,t){if("arbitrary"===e.kind){let r=e.value;return e.modifier&&(r=We(r,e.modifier,t.theme)),null===r?[]:[[y(e.property,r)]]}let r=t.utilities.get(e.root)??[],n=[],o=r.filter((e=>!it(e)));for(let t of o){if(t.kind!==e.kind)continue;let r=t.compileFn(e);if(void 0!==r){if(null===r)return n;n.push(r)}}if(n.length>0)return n;let i=r.filter((e=>it(e)));for(let t of i){if(t.kind!==e.kind)continue;let r=t.compileFn(e);if(void 0!==r){if(null===r)return n;n.push(r)}}return n}(e,t);if(0===r.length)return[];let n=[],i=`.${o(e.raw)}`;for(let o of r){let r=lt(o);(e.important||t.important)&&at(o);let a={kind:"rule",selector:i,nodes:o};for(let r of e.variants)if(null===ot(a,r,t.variants))return[];n.push({node:a,propertySort:r})}return n}(e,s);try{Pe(t.map((({node:e})=>e)),s)}catch{return[]}return t})),l=new c((t=>{for(let r of g(t))e.markUsedVariable(r)})),s={theme:e,utilities:t,variants:r,invalidCandidates:new Set,important:!1,candidatesToCss(e){let t=[];for(let r of e){let e=!1,{astNodes:n}=nt([r],this,{onInvalidCandidate(){e=!0}});n=j(n,s,0),0===n.length||e?t.push(null):t.push(T(n))}return t},getClassOrder(e){return function(e,t){let{astNodes:r,nodeSorting:n}=nt(Array.from(t),e),o=new Map(t.map((e=>[e,null]))),i=0n;for(let e of r){let t=n.get(e)?.candidate;t&&o.set(t,o.get(t)??i++)}return t.map((e=>[e,o.get(e)??null]))}(this,e)},getClassList(){return Ye(this)},getVariants(){return function(e){let t=[];for(let[r,n]of e.variants.entries()){let o=function({value:t,modifier:n}={}){let o=r;t&&(o+=i?`-${t}`:t),n&&(o+=`/${n}`);let a=e.parseVariant(o);if(!a)return[];let l=w(".__placeholder__",[]);if(null===ot(l,a,e.variants))return[];let s=[];return C(l.nodes,((e,{path:t})=>{if("rule"!==e.kind&&"at-rule"!==e.kind||e.nodes.length>0)return;t.sort(((e,t)=>{let r="at-rule"===e.kind,n="at-rule"===t.kind;return r&&!n?-1:!r&&n?1:0}));let r=t.flatMap((e=>"rule"===e.kind?"&"===e.selector?[]:[e.selector]:"at-rule"===e.kind?[`${e.name} ${e.params}`]:[])),n="";for(let e=r.length-1;e>=0;e--)n=""===n?r[e]:`${r[e]} { ${n} }`;s.push(n)})),s};if("arbitrary"===n.kind)continue;let i="@"!==r,a=e.variants.getCompletions(r);switch(n.kind){case"static":t.push({name:r,values:a,isArbitrary:!1,hasDash:i,selectors:o});break;case"functional":case"compound":t.push({name:r,values:a,isArbitrary:!0,hasDash:i,selectors:o})}}return t}(this)},parseCandidate:e=>i.get(e),parseVariant:e=>n.get(e),compileAstNodes:e=>a.get(e),printCandidate:e=>function(e,t){let r=[];for(let e of t.variants)r.unshift(H(e));e.theme.prefix&&r.unshift(e.theme.prefix);let n="";if("static"===t.kind&&(n+=t.root),"functional"===t.kind&&(n+=t.root,t.value))if("arbitrary"===t.value.kind){if(null!==t.value){let e=Q(t.value.value),r=e?t.value.value.slice(4,-1):t.value.value,[o,i]=e?["(",")"]:["[","]"];t.value.dataType?n+=`-${o}${t.value.dataType}:${Y(r)}${i}`:n+=`-${o}${Y(r)}${i}`}}else"named"===t.value.kind&&(n+=`-${t.value.value}`);return"arbitrary"===t.kind&&(n+=`[${t.property}:${Y(t.value)}]`),("arbitrary"===t.kind||"functional"===t.kind)&&(n+=q(t.modifier)),t.important&&(n+="!"),r.push(n),r.join(":")}(s,e),printVariant:e=>H(e),getVariantOrder(){let e=Array.from(n.values());e.sort(((e,t)=>this.variants.compare(e,t)));let t,r=new Map,o=0;for(let n of e)null!==n&&(void 0!==t&&0!==this.variants.compare(t,n)&&o++,r.set(n,o),t=n);return r},resolveThemeValue(t,r=!0){let n=t.lastIndexOf("/"),o=null;-1!==n&&(o=t.slice(n+1).trim(),t=t.slice(0,n).trim());let i=e.resolve(null,[t],r?1:0)??void 0;return o&&i?Oe(i,o):i},trackUsedVariables(e){l.get(e)}};return s}var rt=["container-type","pointer-events","visibility","position","inset","inset-inline","inset-block","inset-inline-start","inset-inline-end","top","right","bottom","left","isolation","z-index","order","grid-column","grid-column-start","grid-column-end","grid-row","grid-row-start","grid-row-end","float","clear","--tw-container-component","margin","margin-inline","margin-block","margin-inline-start","margin-inline-end","margin-top","margin-right","margin-bottom","margin-left","box-sizing","display","field-sizing","aspect-ratio","height","max-height","min-height","width","max-width","min-width","flex","flex-shrink","flex-grow","flex-basis","table-layout","caption-side","border-collapse","border-spacing","transform-origin","translate","--tw-translate-x","--tw-translate-y","--tw-translate-z","scale","--tw-scale-x","--tw-scale-y","--tw-scale-z","rotate","--tw-rotate-x","--tw-rotate-y","--tw-rotate-z","--tw-skew-x","--tw-skew-y","transform","animation","cursor","touch-action","--tw-pan-x","--tw-pan-y","--tw-pinch-zoom","resize","scroll-snap-type","--tw-scroll-snap-strictness","scroll-snap-align","scroll-snap-stop","scroll-margin","scroll-margin-inline","scroll-margin-block","scroll-margin-inline-start","scroll-margin-inline-end","scroll-margin-top","scroll-margin-right","scroll-margin-bottom","scroll-margin-left","scroll-padding","scroll-padding-inline","scroll-padding-block","scroll-padding-inline-start","scroll-padding-inline-end","scroll-padding-top","scroll-padding-right","scroll-padding-bottom","scroll-padding-left","list-style-position","list-style-type","list-style-image","appearance","columns","break-before","break-inside","break-after","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-template-columns","grid-template-rows","flex-direction","flex-wrap","place-content","place-items","align-content","align-items","justify-content","justify-items","gap","column-gap","row-gap","--tw-space-x-reverse","--tw-space-y-reverse","divide-x-width","divide-y-width","--tw-divide-y-reverse","divide-style","divide-color","place-self","align-self","justify-self","overflow","overflow-x","overflow-y","overscroll-behavior","overscroll-behavior-x","overscroll-behavior-y","scroll-behavior","border-radius","border-start-radius","border-end-radius","border-top-radius","border-right-radius","border-bottom-radius","border-left-radius","border-start-start-radius","border-start-end-radius","border-end-end-radius","border-end-start-radius","border-top-left-radius","border-top-right-radius","border-bottom-right-radius","border-bottom-left-radius","border-width","border-inline-width","border-block-width","border-inline-start-width","border-inline-end-width","border-top-width","border-right-width","border-bottom-width","border-left-width","border-style","border-inline-style","border-block-style","border-inline-start-style","border-inline-end-style","border-top-style","border-right-style","border-bottom-style","border-left-style","border-color","border-inline-color","border-block-color","border-inline-start-color","border-inline-end-color","border-top-color","border-right-color","border-bottom-color","border-left-color","background-color","background-image","--tw-gradient-position","--tw-gradient-stops","--tw-gradient-via-stops","--tw-gradient-from","--tw-gradient-from-position","--tw-gradient-via","--tw-gradient-via-position","--tw-gradient-to","--tw-gradient-to-position","mask-image","--tw-mask-top","--tw-mask-top-from-color","--tw-mask-top-from-position","--tw-mask-top-to-color","--tw-mask-top-to-position","--tw-mask-right","--tw-mask-right-from-color","--tw-mask-right-from-position","--tw-mask-right-to-color","--tw-mask-right-to-position","--tw-mask-bottom","--tw-mask-bottom-from-color","--tw-mask-bottom-from-position","--tw-mask-bottom-to-color","--tw-mask-bottom-to-position","--tw-mask-left","--tw-mask-left-from-color","--tw-mask-left-from-position","--tw-mask-left-to-color","--tw-mask-left-to-position","--tw-mask-linear","--tw-mask-linear-position","--tw-mask-linear-from-color","--tw-mask-linear-from-position","--tw-mask-linear-to-color","--tw-mask-linear-to-position","--tw-mask-radial","--tw-mask-radial-shape","--tw-mask-radial-size","--tw-mask-radial-position","--tw-mask-radial-from-color","--tw-mask-radial-from-position","--tw-mask-radial-to-color","--tw-mask-radial-to-position","--tw-mask-conic","--tw-mask-conic-position","--tw-mask-conic-from-color","--tw-mask-conic-from-position","--tw-mask-conic-to-color","--tw-mask-conic-to-position","box-decoration-break","background-size","background-attachment","background-clip","background-position","background-repeat","background-origin","mask-composite","mask-mode","mask-type","mask-size","mask-clip","mask-position","mask-repeat","mask-origin","fill","stroke","stroke-width","object-fit","object-position","padding","padding-inline","padding-block","padding-inline-start","padding-inline-end","padding-top","padding-right","padding-bottom","padding-left","text-align","text-indent","vertical-align","font-family","font-size","line-height","font-weight","letter-spacing","text-wrap","overflow-wrap","word-break","text-overflow","hyphens","white-space","color","text-transform","font-style","font-stretch","font-variant-numeric","text-decoration-line","text-decoration-color","text-decoration-style","text-decoration-thickness","text-underline-offset","-webkit-font-smoothing","placeholder-color","caret-color","accent-color","color-scheme","opacity","background-blend-mode","mix-blend-mode","box-shadow","--tw-shadow","--tw-shadow-color","--tw-ring-shadow","--tw-ring-color","--tw-inset-shadow","--tw-inset-shadow-color","--tw-inset-ring-shadow","--tw-inset-ring-color","--tw-ring-offset-width","--tw-ring-offset-color","outline","outline-width","outline-offset","outline-color","--tw-blur","--tw-brightness","--tw-contrast","--tw-drop-shadow","--tw-grayscale","--tw-hue-rotate","--tw-invert","--tw-saturate","--tw-sepia","filter","--tw-backdrop-blur","--tw-backdrop-brightness","--tw-backdrop-contrast","--tw-backdrop-grayscale","--tw-backdrop-hue-rotate","--tw-backdrop-invert","--tw-backdrop-opacity","--tw-backdrop-saturate","--tw-backdrop-sepia","backdrop-filter","transition-property","transition-behavior","transition-delay","transition-duration","transition-timing-function","will-change","contain","content","forced-color-adjust"];function nt(e,t,{onInvalidCandidate:r}={}){let n=new Map,o=[],i=new Map;for(let n of e){if(t.invalidCandidates.has(n)){r?.(n);continue}let e=t.parseCandidate(n);0!==e.length?i.set(n,e):r?.(n)}let a=t.getVariantOrder();for(let[e,l]of i){let i=!1;for(let r of l){let l=t.compileAstNodes(r);if(0!==l.length){i=!0;for(let{node:t,propertySort:i}of l){let l=0n;for(let e of r.variants)l|=1n<{let r=n.get(e),o=n.get(t);if(r.variants-o.variants!==0n)return Number(r.variants-o.variants);let i=0;for(;i1)return null;for(let e of i.nodes)if("rule"!==e.kind&&"at-rule"!==e.kind||null===o(e,t))return null;return A(i.nodes,(t=>{if(("rule"===t.kind||"at-rule"===t.kind)&&t.nodes.length<=0)return t.nodes=e.nodes,1})),void(e.nodes=i.nodes)}return null===o(e,t)?null:void 0}function it(e){let t=e.options?.types??[];return t.length>1&&t.includes("any")}function at(e){for(let t of e)"at-root"!==t.kind&&("declaration"===t.kind?t.important=!0:("rule"===t.kind||"at-rule"===t.kind)&&at(t.nodes))}function lt(e){let t=new Set,r=0,n=e.slice(),o=!1;for(;n.length>0;){let e=n.shift();if("declaration"===e.kind){if(void 0===e.value||(r++,o))continue;if("--tw-sort"===e.property){let r=rt.indexOf(e.value??"");if(-1!==r){t.add(r),o=!0;continue}}let n=rt.indexOf(e.property);-1!==n&&t.add(n)}else if("rule"===e.kind||"at-rule"===e.kind)for(let t of e.nodes)n.push(t)}return{order:Array.from(t).sort(((e,t)=>e-t)),count:r}}function st(e,t){let r=0,n=b("&",e),o=new Set,i=new c((()=>new Set)),a=new c((()=>new Set));A([n],((e,{parent:n,path:l})=>{if("at-rule"===e.kind){if("@keyframes"===e.name)return A(e.nodes,(e=>{if("at-rule"===e.kind&&"@apply"===e.name)throw new Error("You cannot use `@apply` inside `@keyframes`.")})),1;if("@utility"===e.name){let r=e.params.replace(/-\*$/,"");return a.get(r).add(e),void A(e.nodes,(r=>{if("at-rule"===r.kind&&"@apply"===r.name){o.add(e);for(let n of ct(r,t))i.get(e).add(n)}}))}if("@apply"===e.name){if(null===n)return;r|=1,o.add(n);for(let r of ct(e,t))for(let t of l)t!==e&&o.has(t)&&i.get(t).add(r)}}}));let l=new Set,s=[],u=new Set;function d(e,r=[]){if(!l.has(e)){if(u.has(e)){let n=r[(r.indexOf(e)+1)%r.length];throw"at-rule"===e.kind&&"@utility"===e.name&&"at-rule"===n.kind&&"@utility"===n.name&&A(e.nodes,(e=>{if("at-rule"!==e.kind||"@apply"!==e.name)return;let r=e.params.split(/\s+/g);for(let e of r)for(let r of t.parseCandidate(e))switch(r.kind){case"arbitrary":break;case"static":case"functional":if(n.params.replace(/-\*$/,"")===r.root)throw new Error(`You cannot \`@apply\` the \`${e}\` utility here because it creates a circular dependency.`)}})),new Error(`Circular dependency detected:\n\n${T([e])}\nRelies on:\n\n${T([n])}`)}u.add(e);for(let t of i.get(e))for(let n of a.get(t))r.push(e),d(n,r),r.pop();l.add(e),u.delete(e),s.push(e)}}for(let e of o)d(e);for(let e of s)"nodes"in e&&A(e.nodes,((e,{replaceWith:r})=>{if("at-rule"!==e.kind||"@apply"!==e.name)return;let n=e.params.split(/(\s+)/g),o={},i=0;for(let[e,t]of n.entries())e%2==0&&(o[t]=i),i+=t.length;{let n=nt(Object.keys(o),t,{onInvalidCandidate:e=>{if(t.theme.prefix&&!e.startsWith(t.theme.prefix))throw new Error(`Cannot apply unprefixed utility class \`${e}\`. Did you mean \`${t.theme.prefix}:${e}\`?`);if(t.invalidCandidates.has(e))throw new Error(`Cannot apply utility class \`${e}\` because it has been explicitly disabled: https://tailwindcss.com/docs/detecting-classes-in-source-files#explicitly-excluding-classes`);let r=I(e,":");if(r.length>1){let n=r.pop();if(t.candidatesToCss([n])[0]){let n=t.candidatesToCss(r.map((e=>`${e}:[--tw-variant-check:1]`))),o=r.filter(((e,t)=>null===n[t]));if(o.length>0){if(1===o.length)throw new Error(`Cannot apply utility class \`${e}\` because the ${o.map((e=>`\`${e}\``))} variant does not exist.`);{let t=new Intl.ListFormat("en",{style:"long",type:"conjunction"});throw new Error(`Cannot apply utility class \`${e}\` because the ${t.format(o.map((e=>`\`${e}\``)))} variants do not exist.`)}}}}throw 0===t.theme.size?new Error(`Cannot apply unknown utility class \`${e}\`. Are you using CSS modules or similar and missing \`@reference\`? https://tailwindcss.com/docs/functions-and-directives#reference-directive`):new Error(`Cannot apply unknown utility class \`${e}\``)}}),i=e.src,a=n.astNodes.map((e=>{let t=n.nodeSorting.get(e)?.candidate,r=t?o[t]:void 0;if(e=structuredClone(e),!i||!t||void 0===r)return A([e],(e=>{e.src=i})),e;let a=[i[0],i[1],i[2]];return a[1]+=7+r,a[2]=a[1]+t.length,A([e],(e=>{e.src=a})),e})),l=[];for(let e of a)if("rule"===e.kind)for(let t of e.nodes)l.push(t);else l.push(e);r(l)}}));return r}function*ct(e,t){for(let r of e.params.split(/\s+/g))for(let e of t.parseCandidate(r))switch(e.kind){case"arbitrary":break;case"static":case"functional":yield e.root}}async function ut(e,r,n,o=0,i=!1){let a=0,l=[];return A(e,((e,{replaceWith:s})=>{if("at-rule"===e.kind&&("@import"===e.name||"@reference"===e.name)){let c=function(e){let t,r=null,n=null,o=null;for(let i=0;i{if(o>100)throw new Error(`Exceeded maximum recursion depth while resolving \`${u}\` in \`${r}\`)`);let a=await n(u,r),l=t(a.content,{from:i?a.path:void 0});await ut(l,a.base,n,o+1,i),g.nodes=function(e,t,r,n,o){let i=t;if(null!==r){let t=k("@layer",r,i);t.src=e.src,i=[t]}if(null!==n){let t=k("@media",n,i);t.src=e.src,i=[t]}if(null!==o){let t=k("@supports","("===o[0]?o:`(${o})`,i);t.src=e.src,i=[t]}return i}(e,[$({base:a.base},l)],d,f,p)})()),s(g),1}})),l.length>0&&await Promise.all(l),a}function dt(e,t=null){return Array.isArray(e)&&2===e.length&&"object"==typeof e[1]&&null!==typeof e[1]?t?e[1][t]??null:e[0]:Array.isArray(e)&&null===t?e.join(", "):"string"==typeof e&&null===t?e:null}function ft(e,{theme:t},r){for(let t of r){let r=ht([t]);r&&e.theme.clearNamespace(`--${r}`,4)}for(let[r,n]of function(e){let t=[];return mt(e,[],((e,r)=>{if(function(e){return"number"==typeof e||"string"==typeof e}(e))return t.push([r,e]),1;if(function(e){if(!Array.isArray(e)||2!==e.length||"string"!=typeof e[0]&&"number"!=typeof e[0]||void 0===e[1]||null===e[1]||"object"!=typeof e[1])return!1;for(let t of Reflect.ownKeys(e[1]))if("string"!=typeof t||"string"!=typeof e[1][t]&&"number"!=typeof e[1][t])return!1;return!0}(e)){t.push([r,e[0]]);for(let n of Reflect.ownKeys(e[1]))t.push([[...r,`-${n}`],e[1][n]]);return 1}return Array.isArray(e)&&e.every((e=>"string"==typeof e))?("fontSize"===r[0]?(t.push([r,e[0]]),e.length>=2&&t.push([[...r,"-line-height"],e[1]])):t.push([r,e.join(", ")]),1):void 0})),t}(t)){if("string"!=typeof n&&"number"!=typeof n)continue;if("string"==typeof n&&(n=n.replace(//g,"1")),"opacity"===r[0]&&("number"==typeof n||"string"==typeof n)){let e="string"==typeof n?parseFloat(n):n;e>=0&&e<=1&&(n=100*e+"%")}let t=ht(r);t&&e.theme.add(`--${t}`,""+n,7)}if(Object.hasOwn(t,"fontFamily")){let r=5;{let n=dt(t.fontFamily.sans);n&&e.theme.hasDefault("--font-sans")&&(e.theme.add("--default-font-family",n,r),e.theme.add("--default-font-feature-settings",dt(t.fontFamily.sans,"fontFeatureSettings")??"normal",r),e.theme.add("--default-font-variation-settings",dt(t.fontFamily.sans,"fontVariationSettings")??"normal",r))}{let n=dt(t.fontFamily.mono);n&&e.theme.hasDefault("--font-mono")&&(e.theme.add("--default-mono-font-family",n,r),e.theme.add("--default-mono-font-feature-settings",dt(t.fontFamily.mono,"fontFeatureSettings")??"normal",r),e.theme.add("--default-mono-font-variation-settings",dt(t.fontFamily.mono,"fontVariationSettings")??"normal",r))}}return t}var pt=/^[a-zA-Z0-9-_%/\.]+$/;function ht(e){if("container"===e[0])return null;"animation"===(e=structuredClone(e))[0]&&(e[0]="animate"),"aspectRatio"===e[0]&&(e[0]="aspect"),"borderRadius"===e[0]&&(e[0]="radius"),"boxShadow"===e[0]&&(e[0]="shadow"),"colors"===e[0]&&(e[0]="color"),"containers"===e[0]&&(e[0]="container"),"fontFamily"===e[0]&&(e[0]="font"),"fontSize"===e[0]&&(e[0]="text"),"letterSpacing"===e[0]&&(e[0]="tracking"),"lineHeight"===e[0]&&(e[0]="leading"),"maxWidth"===e[0]&&(e[0]="container"),"screens"===e[0]&&(e[0]="breakpoint"),"transitionTimingFunction"===e[0]&&(e[0]="ease");for(let t of e)if(!pt.test(t))return null;return e.map(((e,t,r)=>"1"===e&&t!==r.length-1?"":e)).map((e=>e.replaceAll(".","_").replace(/([a-z])([A-Z])/g,((e,t,r)=>`${t}-${r.toLowerCase()}`)))).filter(((t,r)=>"DEFAULT"!==t||r!==e.length-1)).join("-")}function mt(e,t=[],r){for(let n of Reflect.ownKeys(e)){let o=e[n];if(null==o)continue;let i=[...t,n],a=r(o,i)??0;if(1!==a){if(2===a)return 2;if((Array.isArray(o)||"object"==typeof o)&&2===mt(o,i,r))return 2}}}function gt(e){let t=[];for(let r of I(e,".")){if(!r.includes("[")){t.push(r);continue}let e=0;for(;;){let n=r.indexOf("[",e),o=r.indexOf("]",n);if(-1===n||-1===o)break;n>e&&t.push(r.slice(e,n)),t.push(r.slice(n+1,o)),e=o+1}e<=r.length-1&&t.push(r.slice(e))}return t}function vt(e){if("[object Object]"!==Object.prototype.toString.call(e))return!1;let t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}function wt(e,t,r,n=[]){for(let o of t)if(null!=o)for(let t of Reflect.ownKeys(o)){n.push(t);let i=r(e[t],o[t],n);void 0!==i?e[t]=i:vt(e[t])&&vt(o[t])?e[t]=wt({},[e[t],o[t]],r,n):e[t]=o[t],n.pop()}return e}function kt(e,t,r){return function(n,o){let a=n.lastIndexOf("/"),l=null;-1!==a&&(l=n.slice(a+1).trim(),n=n.slice(0,a).trim());let s=(()=>{let o=gt(n),[a,l]=function(e,t){if(1===t.length&&t[0].startsWith("--"))return[e.get([t[0]]),e.getOptions(t[0])];let r=ht(t),n=new Map,o=new c((()=>new Map)),i=e.namespace(`--${r}`);if(0===i.size)return[null,0];let a=new Map;for(let[t,l]of i){if(!t||!t.includes("--")){n.set(t,l),a.set(t,e.getOptions(t?`--${r}-${t}`:`--${r}`));continue}let i=t.indexOf("--"),s=t.slice(0,i),c=t.slice(i+2);c=c.replace(/-([a-z])/g,((e,t)=>t.toUpperCase())),o.get(""===s?null:s).set(c,[l,e.getOptions(`--${r}${t}`)])}let l=e.getOptions(`--${r}`);for(let[e,t]of o){let r=n.get(e);if("string"!=typeof r)continue;let o={},i={};for(let[e,[r,n]]of t)o[e]=r,i[e]=n;n.set(e,[r,o]),a.set(e,[l,i])}let s={},u={};for(let[e,t]of n)yt(s,[e??"DEFAULT"],t);for(let[e,t]of a)yt(u,[e??"DEFAULT"],t);return"DEFAULT"===t[t.length-1]?[s?.DEFAULT??null,u.DEFAULT??0]:"DEFAULT"in s&&1===Object.keys(s).length?[s.DEFAULT,u.DEFAULT??0]:(s.__CSS_VALUES__=u,[s,u])}(e.theme,o),s=r(bt(t()??{},o)??null);if("string"==typeof s&&(s=s.replace("","1")),"object"!=typeof a)return"object"!=typeof l&&4&l?s??a:a;if(null!==s&&"object"==typeof s&&!Array.isArray(s)){let e=wt({},[s],((e,t)=>t));if(null===a&&Object.hasOwn(s,"__CSS_VALUES__")){let t={};for(let r in s.__CSS_VALUES__)t[r]=s[r],delete e[r];a=t}for(let t in a)"__CSS_VALUES__"!==t&&(4&s?.__CSS_VALUES__?.[t]&&void 0!==bt(e,t.split("-"))||(e[i(t)]=a[t]));return e}if(Array.isArray(a)&&Array.isArray(l)&&Array.isArray(s)){let e=a[0],t=a[1];4&l[0]&&(e=s[0]??e);for(let e of Object.keys(t))4&l[1][e]&&(t[e]=s[1][e]??t[e]);return[e,t]}return a??s})();return l&&"string"==typeof s&&(s=Oe(s,l)),s??o}}function bt(e,t){for(let r=0;r0){let e=zt(i);o?o.nodes.push(e):r.push(e),i=""}let n=a,l=a+1;for(;l0){let t=zt(i);e.nodes.push(t),i=""}o=n.length>0?n[n.length-1]:null;break}case 46:case 58:case 35:if(i.length>0){let e=zt(i);o?o.nodes.push(e):r.push(e)}i=String.fromCharCode(l);break;case 91:{if(i.length>0){let e=zt(i);o?o.nodes.push(e):r.push(e)}i="";let n=a,l=0;for(let r=a+1;r0&&r.push(zt(i)),r}var Kt=/^[a-z@][a-zA-Z0-9/%._-]*$/;function Et({designSystem:e,ast:t,resolvedConfig:r,featuresRef:n,referenceMode:o}){let i={addBase(r){if(o)return;let i=Vt(r);n.current|=Pe(i,e),t.push(k("@layer","base",i))},addVariant(t,r){if(!Ge.test(t))throw new Error(`\`addVariant('${t}')\` defines an invalid variant name. Variants should only contain alphanumeric, dashes or underscore characters.`);if("string"==typeof r){if(r.includes(":merge("))return}else if(Array.isArray(r)){if(r.some((e=>e.includes(":merge("))))return}else if("object"==typeof r){let e=function(t,r){return Object.entries(t).some((([t,n])=>t.includes(r)||"object"==typeof n&&e(n,r)))};if(e(r,":merge("))return}"string"==typeof r||Array.isArray(r)?e.variants.static(t,(e=>{e.nodes=Nt(r,e.nodes)}),{compounds:Xe("string"==typeof r?[r]:r)}):"object"==typeof r&&e.variants.fromAst(t,Vt(r))},matchVariant(t,r,n){function o(e,t,n){return Nt(r(e,{modifier:t?.value??null}),n)}try{let e=r("a",{modifier:null});if("string"==typeof e&&e.includes(":merge("))return;if(Array.isArray(e)&&e.some((e=>e.includes(":merge("))))return}catch{}let i=Object.keys(n?.values??{});e.variants.group((()=>{e.variants.functional(t,((e,t)=>{if(!t.value)return n?.values&&"DEFAULT"in n.values?void(e.nodes=o(n.values.DEFAULT,t.modifier,e.nodes)):null;if("arbitrary"===t.value.kind)e.nodes=o(t.value.value,t.modifier,e.nodes);else if("named"===t.value.kind&&n?.values){let r=n.values[t.value.value];if("string"!=typeof r)return;e.nodes=o(r,t.modifier,e.nodes)}}))}),((e,t)=>{if("functional"!==e.kind||"functional"!==t.kind)return 0;let r=e.value?e.value.value:"DEFAULT",o=t.value?t.value.value:"DEFAULT",a=n?.values?.[r]??r,l=n?.values?.[o]??o;if(n&&"function"==typeof n.sort)return n.sort({value:a,modifier:e.modifier?.value??null},{value:l,modifier:t.modifier?.value??null});let s=i.indexOf(r),c=i.indexOf(o);return s=-1===s?i.length:s,c=-1===c?i.length:c,s!==c?s-c:aObject.entries(e)));i=i.flatMap((([e,t])=>I(e,",").map((e=>[e.trim(),t]))));let a=new c((()=>[]));for(let[e,r]of i){if(e.startsWith("@keyframes ")){o||t.push(b(e,Vt(r)));continue}let n=St(e),i=!1;if(jt(n,(e=>{if("selector"===e.kind&&"."===e.value[0]&&Kt.test(e.value.slice(1))){let t=e.value;e.value="&";let o=Tt(n),l=t.slice(1),s="&"===o?Vt(r):[b(o,Vt(r))];return a.get(l).push(...s),i=!0,void(e.value=t)}if("function"===e.kind&&":not"===e.value)return 1})),!i)throw new Error(`\`addUtilities({ '${e}' : … })\` defines an invalid utility selector. Utilities must be a single class name and start with a lowercase letter, eg. \`.scrollbar-none\`.`)}for(let[t,r]of a)e.theme.prefix&&A(r,(t=>{if("rule"===t.kind){let r=St(t.selector);jt(r,(t=>{"selector"===t.kind&&"."===t.value[0]&&(t.value=`.${e.theme.prefix}\\:${t.value.slice(1)}`)})),t.selector=Tt(r)}})),e.utilities.static(t,(o=>{let i=structuredClone(r);return Ot(i,t,o.raw),n.current|=st(i,e),i}))},matchUtilities(t,r){let o=r?.type?Array.isArray(r?.type)?r.type:[r.type]:["any"];for(let[i,a]of Object.entries(t)){let t=function({negative:t}){return l=>{if("arbitrary"===l.value?.kind&&o.length>0&&!o.includes("any")&&(l.value.dataType&&!o.includes(l.value.dataType)||!l.value.dataType&&!ae(l.value.value,o)))return;let s,c=o.includes("color"),u=null,d=!1;{let e=r?.values??{};c&&(e=Object.assign({inherit:"inherit",transparent:"transparent",current:"currentcolor"},e)),l.value?"arbitrary"===l.value.kind?u=l.value.value:l.value.fraction&&e[l.value.fraction]?(u=e[l.value.fraction],d=!0):e[l.value.value]?u=e[l.value.value]:e.__BARE_VALUE__&&(u=e.__BARE_VALUE__(l.value)??null,d=(null!==l.value.fraction&&u?.includes("/"))??!1):u=e.DEFAULT??null}if(null===u)return;{let e=r?.modifiers??null;s=l.modifier?"any"===e||"arbitrary"===l.modifier.kind?l.modifier.value:e?.[l.modifier.value]?e[l.modifier.value]:c&&!Number.isNaN(Number(l.modifier.value))?`${l.modifier.value}%`:null:null}if(l.modifier&&null===s&&!d)return"arbitrary"===l.value?.kind?null:void 0;c&&null!==s&&(u=Oe(u,s)),t&&(u=`calc(${u} * -1)`);let f=Vt(a(u,{modifier:s}));return Ot(f,i,l.raw),n.current|=st(f,e),f}};if(!Kt.test(i))throw new Error(`\`matchUtilities({ '${i}' : … })\` defines an invalid utility name. Utilities should be alphanumeric and start with a lowercase letter, eg. \`scrollbar\`.`);r?.supportsNegativeValues&&e.utilities.functional(`-${i}`,t({negative:!0}),{types:o}),e.utilities.functional(i,t({negative:!1}),{types:o}),e.utilities.suggest(i,(()=>{let e=r?.values??{},t=new Set(Object.keys(e));t.delete("__BARE_VALUE__"),t.has("DEFAULT")&&(t.delete("DEFAULT"),t.add(null));let n=r?.modifiers??{},o="any"===n?[]:Object.keys(n);return[{supportsNegative:r?.supportsNegativeValues??!1,values:Array.from(t),modifiers:o}]}))}},addComponents(e,t){this.addUtilities(e,t)},matchComponents(e,t){this.matchUtilities(e,t)},theme:kt(e,(()=>r.theme??{}),(e=>e)),prefix:e=>e,config(e,t){let n=r;if(!e)return n;let o=gt(e);for(let e=0;eObject.entries(e)));for(let[e,n]of r)if("object"!=typeof n){if(!e.startsWith("--")){if("@slot"===n){t.push(b(e,[k("@slot")]));continue}e=e.replace(/([A-Z])/g,"-$1").toLowerCase()}t.push(y(e,String(n)))}else if(Array.isArray(n))for(let r of n)"string"==typeof r?t.push(y(e,r)):t.push(b(e,Vt(r)));else null!==n&&t.push(b(e,Vt(n)));return t}function Nt(e,r){return("string"==typeof e?[e]:e).flatMap((e=>{if(e.trim().endsWith("}")){let n=t(e.replace("}","{@slot}}"));return et(n,r),n}return b(e,r)}))}function Ot(e,t,r){A(e,(e=>{if("rule"===e.kind){let n=St(e.selector);jt(n,(e=>{"selector"===e.kind&&e.value===`.${t}`&&(e.value=`.${o(r)}`)})),e.selector=Tt(n)}}))}function Ft(e,t,r){for(let r of function(e){let t=[];if("keyframes"in e.theme)for(let[r,n]of Object.entries(e.theme.keyframes))t.push(k("@keyframes",r,Vt(n)));return t}(t))e.theme.addKeyframes(r)}var Wt={inherit:"inherit",current:"currentcolor",transparent:"transparent",black:"#000",white:"#fff",slate:{50:"oklch(98.4% 0.003 247.858)",100:"oklch(96.8% 0.007 247.896)",200:"oklch(92.9% 0.013 255.508)",300:"oklch(86.9% 0.022 252.894)",400:"oklch(70.4% 0.04 256.788)",500:"oklch(55.4% 0.046 257.417)",600:"oklch(44.6% 0.043 257.281)",700:"oklch(37.2% 0.044 257.287)",800:"oklch(27.9% 0.041 260.031)",900:"oklch(20.8% 0.042 265.755)",950:"oklch(12.9% 0.042 264.695)"},gray:{50:"oklch(98.5% 0.002 247.839)",100:"oklch(96.7% 0.003 264.542)",200:"oklch(92.8% 0.006 264.531)",300:"oklch(87.2% 0.01 258.338)",400:"oklch(70.7% 0.022 261.325)",500:"oklch(55.1% 0.027 264.364)",600:"oklch(44.6% 0.03 256.802)",700:"oklch(37.3% 0.034 259.733)",800:"oklch(27.8% 0.033 256.848)",900:"oklch(21% 0.034 264.665)",950:"oklch(13% 0.028 261.692)"},zinc:{50:"oklch(98.5% 0 0)",100:"oklch(96.7% 0.001 286.375)",200:"oklch(92% 0.004 286.32)",300:"oklch(87.1% 0.006 286.286)",400:"oklch(70.5% 0.015 286.067)",500:"oklch(55.2% 0.016 285.938)",600:"oklch(44.2% 0.017 285.786)",700:"oklch(37% 0.013 285.805)",800:"oklch(27.4% 0.006 286.033)",900:"oklch(21% 0.006 285.885)",950:"oklch(14.1% 0.005 285.823)"},neutral:{50:"oklch(98.5% 0 0)",100:"oklch(97% 0 0)",200:"oklch(92.2% 0 0)",300:"oklch(87% 0 0)",400:"oklch(70.8% 0 0)",500:"oklch(55.6% 0 0)",600:"oklch(43.9% 0 0)",700:"oklch(37.1% 0 0)",800:"oklch(26.9% 0 0)",900:"oklch(20.5% 0 0)",950:"oklch(14.5% 0 0)"},stone:{50:"oklch(98.5% 0.001 106.423)",100:"oklch(97% 0.001 106.424)",200:"oklch(92.3% 0.003 48.717)",300:"oklch(86.9% 0.005 56.366)",400:"oklch(70.9% 0.01 56.259)",500:"oklch(55.3% 0.013 58.071)",600:"oklch(44.4% 0.011 73.639)",700:"oklch(37.4% 0.01 67.558)",800:"oklch(26.8% 0.007 34.298)",900:"oklch(21.6% 0.006 56.043)",950:"oklch(14.7% 0.004 49.25)"},red:{50:"oklch(97.1% 0.013 17.38)",100:"oklch(93.6% 0.032 17.717)",200:"oklch(88.5% 0.062 18.334)",300:"oklch(80.8% 0.114 19.571)",400:"oklch(70.4% 0.191 22.216)",500:"oklch(63.7% 0.237 25.331)",600:"oklch(57.7% 0.245 27.325)",700:"oklch(50.5% 0.213 27.518)",800:"oklch(44.4% 0.177 26.899)",900:"oklch(39.6% 0.141 25.723)",950:"oklch(25.8% 0.092 26.042)"},orange:{50:"oklch(98% 0.016 73.684)",100:"oklch(95.4% 0.038 75.164)",200:"oklch(90.1% 0.076 70.697)",300:"oklch(83.7% 0.128 66.29)",400:"oklch(75% 0.183 55.934)",500:"oklch(70.5% 0.213 47.604)",600:"oklch(64.6% 0.222 41.116)",700:"oklch(55.3% 0.195 38.402)",800:"oklch(47% 0.157 37.304)",900:"oklch(40.8% 0.123 38.172)",950:"oklch(26.6% 0.079 36.259)"},amber:{50:"oklch(98.7% 0.022 95.277)",100:"oklch(96.2% 0.059 95.617)",200:"oklch(92.4% 0.12 95.746)",300:"oklch(87.9% 0.169 91.605)",400:"oklch(82.8% 0.189 84.429)",500:"oklch(76.9% 0.188 70.08)",600:"oklch(66.6% 0.179 58.318)",700:"oklch(55.5% 0.163 48.998)",800:"oklch(47.3% 0.137 46.201)",900:"oklch(41.4% 0.112 45.904)",950:"oklch(27.9% 0.077 45.635)"},yellow:{50:"oklch(98.7% 0.026 102.212)",100:"oklch(97.3% 0.071 103.193)",200:"oklch(94.5% 0.129 101.54)",300:"oklch(90.5% 0.182 98.111)",400:"oklch(85.2% 0.199 91.936)",500:"oklch(79.5% 0.184 86.047)",600:"oklch(68.1% 0.162 75.834)",700:"oklch(55.4% 0.135 66.442)",800:"oklch(47.6% 0.114 61.907)",900:"oklch(42.1% 0.095 57.708)",950:"oklch(28.6% 0.066 53.813)"},lime:{50:"oklch(98.6% 0.031 120.757)",100:"oklch(96.7% 0.067 122.328)",200:"oklch(93.8% 0.127 124.321)",300:"oklch(89.7% 0.196 126.665)",400:"oklch(84.1% 0.238 128.85)",500:"oklch(76.8% 0.233 130.85)",600:"oklch(64.8% 0.2 131.684)",700:"oklch(53.2% 0.157 131.589)",800:"oklch(45.3% 0.124 130.933)",900:"oklch(40.5% 0.101 131.063)",950:"oklch(27.4% 0.072 132.109)"},green:{50:"oklch(98.2% 0.018 155.826)",100:"oklch(96.2% 0.044 156.743)",200:"oklch(92.5% 0.084 155.995)",300:"oklch(87.1% 0.15 154.449)",400:"oklch(79.2% 0.209 151.711)",500:"oklch(72.3% 0.219 149.579)",600:"oklch(62.7% 0.194 149.214)",700:"oklch(52.7% 0.154 150.069)",800:"oklch(44.8% 0.119 151.328)",900:"oklch(39.3% 0.095 152.535)",950:"oklch(26.6% 0.065 152.934)"},emerald:{50:"oklch(97.9% 0.021 166.113)",100:"oklch(95% 0.052 163.051)",200:"oklch(90.5% 0.093 164.15)",300:"oklch(84.5% 0.143 164.978)",400:"oklch(76.5% 0.177 163.223)",500:"oklch(69.6% 0.17 162.48)",600:"oklch(59.6% 0.145 163.225)",700:"oklch(50.8% 0.118 165.612)",800:"oklch(43.2% 0.095 166.913)",900:"oklch(37.8% 0.077 168.94)",950:"oklch(26.2% 0.051 172.552)"},teal:{50:"oklch(98.4% 0.014 180.72)",100:"oklch(95.3% 0.051 180.801)",200:"oklch(91% 0.096 180.426)",300:"oklch(85.5% 0.138 181.071)",400:"oklch(77.7% 0.152 181.912)",500:"oklch(70.4% 0.14 182.503)",600:"oklch(60% 0.118 184.704)",700:"oklch(51.1% 0.096 186.391)",800:"oklch(43.7% 0.078 188.216)",900:"oklch(38.6% 0.063 188.416)",950:"oklch(27.7% 0.046 192.524)"},cyan:{50:"oklch(98.4% 0.019 200.873)",100:"oklch(95.6% 0.045 203.388)",200:"oklch(91.7% 0.08 205.041)",300:"oklch(86.5% 0.127 207.078)",400:"oklch(78.9% 0.154 211.53)",500:"oklch(71.5% 0.143 215.221)",600:"oklch(60.9% 0.126 221.723)",700:"oklch(52% 0.105 223.128)",800:"oklch(45% 0.085 224.283)",900:"oklch(39.8% 0.07 227.392)",950:"oklch(30.2% 0.056 229.695)"},sky:{50:"oklch(97.7% 0.013 236.62)",100:"oklch(95.1% 0.026 236.824)",200:"oklch(90.1% 0.058 230.902)",300:"oklch(82.8% 0.111 230.318)",400:"oklch(74.6% 0.16 232.661)",500:"oklch(68.5% 0.169 237.323)",600:"oklch(58.8% 0.158 241.966)",700:"oklch(50% 0.134 242.749)",800:"oklch(44.3% 0.11 240.79)",900:"oklch(39.1% 0.09 240.876)",950:"oklch(29.3% 0.066 243.157)"},blue:{50:"oklch(97% 0.014 254.604)",100:"oklch(93.2% 0.032 255.585)",200:"oklch(88.2% 0.059 254.128)",300:"oklch(80.9% 0.105 251.813)",400:"oklch(70.7% 0.165 254.624)",500:"oklch(62.3% 0.214 259.815)",600:"oklch(54.6% 0.245 262.881)",700:"oklch(48.8% 0.243 264.376)",800:"oklch(42.4% 0.199 265.638)",900:"oklch(37.9% 0.146 265.522)",950:"oklch(28.2% 0.091 267.935)"},indigo:{50:"oklch(96.2% 0.018 272.314)",100:"oklch(93% 0.034 272.788)",200:"oklch(87% 0.065 274.039)",300:"oklch(78.5% 0.115 274.713)",400:"oklch(67.3% 0.182 276.935)",500:"oklch(58.5% 0.233 277.117)",600:"oklch(51.1% 0.262 276.966)",700:"oklch(45.7% 0.24 277.023)",800:"oklch(39.8% 0.195 277.366)",900:"oklch(35.9% 0.144 278.697)",950:"oklch(25.7% 0.09 281.288)"},violet:{50:"oklch(96.9% 0.016 293.756)",100:"oklch(94.3% 0.029 294.588)",200:"oklch(89.4% 0.057 293.283)",300:"oklch(81.1% 0.111 293.571)",400:"oklch(70.2% 0.183 293.541)",500:"oklch(60.6% 0.25 292.717)",600:"oklch(54.1% 0.281 293.009)",700:"oklch(49.1% 0.27 292.581)",800:"oklch(43.2% 0.232 292.759)",900:"oklch(38% 0.189 293.745)",950:"oklch(28.3% 0.141 291.089)"},purple:{50:"oklch(97.7% 0.014 308.299)",100:"oklch(94.6% 0.033 307.174)",200:"oklch(90.2% 0.063 306.703)",300:"oklch(82.7% 0.119 306.383)",400:"oklch(71.4% 0.203 305.504)",500:"oklch(62.7% 0.265 303.9)",600:"oklch(55.8% 0.288 302.321)",700:"oklch(49.6% 0.265 301.924)",800:"oklch(43.8% 0.218 303.724)",900:"oklch(38.1% 0.176 304.987)",950:"oklch(29.1% 0.149 302.717)"},fuchsia:{50:"oklch(97.7% 0.017 320.058)",100:"oklch(95.2% 0.037 318.852)",200:"oklch(90.3% 0.076 319.62)",300:"oklch(83.3% 0.145 321.434)",400:"oklch(74% 0.238 322.16)",500:"oklch(66.7% 0.295 322.15)",600:"oklch(59.1% 0.293 322.896)",700:"oklch(51.8% 0.253 323.949)",800:"oklch(45.2% 0.211 324.591)",900:"oklch(40.1% 0.17 325.612)",950:"oklch(29.3% 0.136 325.661)"},pink:{50:"oklch(97.1% 0.014 343.198)",100:"oklch(94.8% 0.028 342.258)",200:"oklch(89.9% 0.061 343.231)",300:"oklch(82.3% 0.12 346.018)",400:"oklch(71.8% 0.202 349.761)",500:"oklch(65.6% 0.241 354.308)",600:"oklch(59.2% 0.249 0.584)",700:"oklch(52.5% 0.223 3.958)",800:"oklch(45.9% 0.187 3.815)",900:"oklch(40.8% 0.153 2.432)",950:"oklch(28.4% 0.109 3.907)"},rose:{50:"oklch(96.9% 0.015 12.422)",100:"oklch(94.1% 0.03 12.58)",200:"oklch(89.2% 0.058 10.001)",300:"oklch(81% 0.117 11.638)",400:"oklch(71.2% 0.194 13.428)",500:"oklch(64.5% 0.246 16.439)",600:"oklch(58.6% 0.253 17.585)",700:"oklch(51.4% 0.222 16.935)",800:"oklch(45.5% 0.188 13.697)",900:"oklch(41% 0.159 10.272)",950:"oklch(27.1% 0.105 12.094)"}};function Ut(e){return{__BARE_VALUE__:e}}var Dt=Ut((e=>{if(ye(e.value))return e.value})),_t=Ut((e=>{if(ye(e.value))return`${e.value}%`})),Mt=Ut((e=>{if(ye(e.value))return`${e.value}px`})),Bt=Ut((e=>{if(ye(e.value))return`${e.value}ms`})),Lt=Ut((e=>{if(ye(e.value))return`${e.value}deg`})),It=Ut((e=>{if(null===e.fraction)return;let[t,r]=I(e.fraction,"/");return ye(t)&&ye(r)?e.fraction:void 0})),Rt=Ut((e=>{if(ye(Number(e.value)))return`repeat(${e.value}, minmax(0, 1fr))`})),Pt={accentColor:({theme:e})=>e("colors"),animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0, 0, 0.2, 1) infinite",pulse:"pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite",bounce:"bounce 1s infinite"},aria:{busy:'busy="true"',checked:'checked="true"',disabled:'disabled="true"',expanded:'expanded="true"',hidden:'hidden="true"',pressed:'pressed="true"',readonly:'readonly="true"',required:'required="true"',selected:'selected="true"'},aspectRatio:{auto:"auto",square:"1 / 1",video:"16 / 9",...It},backdropBlur:({theme:e})=>e("blur"),backdropBrightness:({theme:e})=>({...e("brightness"),..._t}),backdropContrast:({theme:e})=>({...e("contrast"),..._t}),backdropGrayscale:({theme:e})=>({...e("grayscale"),..._t}),backdropHueRotate:({theme:e})=>({...e("hueRotate"),...Lt}),backdropInvert:({theme:e})=>({...e("invert"),..._t}),backdropOpacity:({theme:e})=>({...e("opacity"),..._t}),backdropSaturate:({theme:e})=>({...e("saturate"),..._t}),backdropSepia:({theme:e})=>({...e("sepia"),..._t}),backgroundColor:({theme:e})=>e("colors"),backgroundImage:{none:"none","gradient-to-t":"linear-gradient(to top, var(--tw-gradient-stops))","gradient-to-tr":"linear-gradient(to top right, var(--tw-gradient-stops))","gradient-to-r":"linear-gradient(to right, var(--tw-gradient-stops))","gradient-to-br":"linear-gradient(to bottom right, var(--tw-gradient-stops))","gradient-to-b":"linear-gradient(to bottom, var(--tw-gradient-stops))","gradient-to-bl":"linear-gradient(to bottom left, var(--tw-gradient-stops))","gradient-to-l":"linear-gradient(to left, var(--tw-gradient-stops))","gradient-to-tl":"linear-gradient(to top left, var(--tw-gradient-stops))"},backgroundOpacity:({theme:e})=>e("opacity"),backgroundPosition:{bottom:"bottom",center:"center",left:"left","left-bottom":"left bottom","left-top":"left top",right:"right","right-bottom":"right bottom","right-top":"right top",top:"top"},backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{0:"0",none:"",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},borderColor:({theme:e})=>({DEFAULT:"currentcolor",...e("colors")}),borderOpacity:({theme:e})=>e("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},borderSpacing:({theme:e})=>e("spacing"),borderWidth:{DEFAULT:"1px",0:"0px",2:"2px",4:"4px",8:"8px",...Mt},boxShadow:{sm:"0 1px 2px 0 rgb(0 0 0 / 0.05)",DEFAULT:"0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)",md:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)","2xl":"0 25px 50px -12px rgb(0 0 0 / 0.25)",inner:"inset 0 2px 4px 0 rgb(0 0 0 / 0.05)",none:"none"},boxShadowColor:({theme:e})=>e("colors"),brightness:{0:"0",50:".5",75:".75",90:".9",95:".95",100:"1",105:"1.05",110:"1.1",125:"1.25",150:"1.5",200:"2",..._t},caretColor:({theme:e})=>e("colors"),colors:()=>({...Wt}),columns:{auto:"auto",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",10:"10",11:"11",12:"12","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",...Dt},container:{},content:{none:"none"},contrast:{0:"0",50:".5",75:".75",100:"1",125:"1.25",150:"1.5",200:"2",..._t},cursor:{auto:"auto",default:"default",pointer:"pointer",wait:"wait",text:"text",move:"move",help:"help","not-allowed":"not-allowed",none:"none","context-menu":"context-menu",progress:"progress",cell:"cell",crosshair:"crosshair","vertical-text":"vertical-text",alias:"alias",copy:"copy","no-drop":"no-drop",grab:"grab",grabbing:"grabbing","all-scroll":"all-scroll","col-resize":"col-resize","row-resize":"row-resize","n-resize":"n-resize","e-resize":"e-resize","s-resize":"s-resize","w-resize":"w-resize","ne-resize":"ne-resize","nw-resize":"nw-resize","se-resize":"se-resize","sw-resize":"sw-resize","ew-resize":"ew-resize","ns-resize":"ns-resize","nesw-resize":"nesw-resize","nwse-resize":"nwse-resize","zoom-in":"zoom-in","zoom-out":"zoom-out"},divideColor:({theme:e})=>e("borderColor"),divideOpacity:({theme:e})=>e("borderOpacity"),divideWidth:({theme:e})=>({...e("borderWidth"),...Mt}),dropShadow:{sm:"0 1px 1px rgb(0 0 0 / 0.05)",DEFAULT:["0 1px 2px rgb(0 0 0 / 0.1)","0 1px 1px rgb(0 0 0 / 0.06)"],md:["0 4px 3px rgb(0 0 0 / 0.07)","0 2px 2px rgb(0 0 0 / 0.06)"],lg:["0 10px 8px rgb(0 0 0 / 0.04)","0 4px 3px rgb(0 0 0 / 0.1)"],xl:["0 20px 13px rgb(0 0 0 / 0.03)","0 8px 5px rgb(0 0 0 / 0.08)"],"2xl":"0 25px 25px rgb(0 0 0 / 0.15)",none:"0 0 #0000"},fill:({theme:e})=>e("colors"),flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({auto:"auto","1/2":"50%","1/3":"33.333333%","2/3":"66.666667%","1/4":"25%","2/4":"50%","3/4":"75%","1/5":"20%","2/5":"40%","3/5":"60%","4/5":"80%","1/6":"16.666667%","2/6":"33.333333%","3/6":"50%","4/6":"66.666667%","5/6":"83.333333%","1/12":"8.333333%","2/12":"16.666667%","3/12":"25%","4/12":"33.333333%","5/12":"41.666667%","6/12":"50%","7/12":"58.333333%","8/12":"66.666667%","9/12":"75%","10/12":"83.333333%","11/12":"91.666667%",full:"100%",...e("spacing")}),flexGrow:{0:"0",DEFAULT:"1",...Dt},flexShrink:{0:"0",DEFAULT:"1",...Dt},fontFamily:{sans:["ui-sans-serif","system-ui","sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:["ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"]},fontSize:{xs:["0.75rem",{lineHeight:"1rem"}],sm:["0.875rem",{lineHeight:"1.25rem"}],base:["1rem",{lineHeight:"1.5rem"}],lg:["1.125rem",{lineHeight:"1.75rem"}],xl:["1.25rem",{lineHeight:"1.75rem"}],"2xl":["1.5rem",{lineHeight:"2rem"}],"3xl":["1.875rem",{lineHeight:"2.25rem"}],"4xl":["2.25rem",{lineHeight:"2.5rem"}],"5xl":["3rem",{lineHeight:"1"}],"6xl":["3.75rem",{lineHeight:"1"}],"7xl":["4.5rem",{lineHeight:"1"}],"8xl":["6rem",{lineHeight:"1"}],"9xl":["8rem",{lineHeight:"1"}]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:({theme:e})=>e("spacing"),gradientColorStops:({theme:e})=>e("colors"),gradientColorStopPositions:{"0%":"0%","5%":"5%","10%":"10%","15%":"15%","20%":"20%","25%":"25%","30%":"30%","35%":"35%","40%":"40%","45%":"45%","50%":"50%","55%":"55%","60%":"60%","65%":"65%","70%":"70%","75%":"75%","80%":"80%","85%":"85%","90%":"90%","95%":"95%","100%":"100%",..._t},grayscale:{0:"0",DEFAULT:"100%",..._t},gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0, 1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0, 1fr)"},gridColumn:{auto:"auto","span-1":"span 1 / span 1","span-2":"span 2 / span 2","span-3":"span 3 / span 3","span-4":"span 4 / span 4","span-5":"span 5 / span 5","span-6":"span 6 / span 6","span-7":"span 7 / span 7","span-8":"span 8 / span 8","span-9":"span 9 / span 9","span-10":"span 10 / span 10","span-11":"span 11 / span 11","span-12":"span 12 / span 12","span-full":"1 / -1"},gridColumnEnd:{auto:"auto",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",10:"10",11:"11",12:"12",13:"13",...Dt},gridColumnStart:{auto:"auto",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",10:"10",11:"11",12:"12",13:"13",...Dt},gridRow:{auto:"auto","span-1":"span 1 / span 1","span-2":"span 2 / span 2","span-3":"span 3 / span 3","span-4":"span 4 / span 4","span-5":"span 5 / span 5","span-6":"span 6 / span 6","span-7":"span 7 / span 7","span-8":"span 8 / span 8","span-9":"span 9 / span 9","span-10":"span 10 / span 10","span-11":"span 11 / span 11","span-12":"span 12 / span 12","span-full":"1 / -1"},gridRowEnd:{auto:"auto",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",10:"10",11:"11",12:"12",13:"13",...Dt},gridRowStart:{auto:"auto",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",10:"10",11:"11",12:"12",13:"13",...Dt},gridTemplateColumns:{none:"none",subgrid:"subgrid",1:"repeat(1, minmax(0, 1fr))",2:"repeat(2, minmax(0, 1fr))",3:"repeat(3, minmax(0, 1fr))",4:"repeat(4, minmax(0, 1fr))",5:"repeat(5, minmax(0, 1fr))",6:"repeat(6, minmax(0, 1fr))",7:"repeat(7, minmax(0, 1fr))",8:"repeat(8, minmax(0, 1fr))",9:"repeat(9, minmax(0, 1fr))",10:"repeat(10, minmax(0, 1fr))",11:"repeat(11, minmax(0, 1fr))",12:"repeat(12, minmax(0, 1fr))",...Rt},gridTemplateRows:{none:"none",subgrid:"subgrid",1:"repeat(1, minmax(0, 1fr))",2:"repeat(2, minmax(0, 1fr))",3:"repeat(3, minmax(0, 1fr))",4:"repeat(4, minmax(0, 1fr))",5:"repeat(5, minmax(0, 1fr))",6:"repeat(6, minmax(0, 1fr))",7:"repeat(7, minmax(0, 1fr))",8:"repeat(8, minmax(0, 1fr))",9:"repeat(9, minmax(0, 1fr))",10:"repeat(10, minmax(0, 1fr))",11:"repeat(11, minmax(0, 1fr))",12:"repeat(12, minmax(0, 1fr))",...Rt},height:({theme:e})=>({auto:"auto","1/2":"50%","1/3":"33.333333%","2/3":"66.666667%","1/4":"25%","2/4":"50%","3/4":"75%","1/5":"20%","2/5":"40%","3/5":"60%","4/5":"80%","1/6":"16.666667%","2/6":"33.333333%","3/6":"50%","4/6":"66.666667%","5/6":"83.333333%",full:"100%",screen:"100vh",svh:"100svh",lvh:"100lvh",dvh:"100dvh",min:"min-content",max:"max-content",fit:"fit-content",...e("spacing")}),hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg",...Lt},inset:({theme:e})=>({auto:"auto","1/2":"50%","1/3":"33.333333%","2/3":"66.666667%","1/4":"25%","2/4":"50%","3/4":"75%",full:"100%",...e("spacing")}),invert:{0:"0",DEFAULT:"100%",..._t},keyframes:{spin:{to:{transform:"rotate(360deg)"}},ping:{"75%, 100%":{transform:"scale(2)",opacity:"0"}},pulse:{"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2",3:".75rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem"},listStyleType:{none:"none",disc:"disc",decimal:"decimal"},listStyleImage:{none:"none"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),lineClamp:{1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",...Dt},maxHeight:({theme:e})=>({none:"none",full:"100%",screen:"100vh",svh:"100svh",lvh:"100lvh",dvh:"100dvh",min:"min-content",max:"max-content",fit:"fit-content",...e("spacing")}),maxWidth:({theme:e})=>({none:"none",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch",...e("spacing")}),minHeight:({theme:e})=>({full:"100%",screen:"100vh",svh:"100svh",lvh:"100lvh",dvh:"100dvh",min:"min-content",max:"max-content",fit:"fit-content",...e("spacing")}),minWidth:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",...e("spacing")}),objectPosition:{bottom:"bottom",center:"center",left:"left","left-bottom":"left bottom","left-top":"left top",right:"right","right-bottom":"right bottom","right-top":"right top",top:"top"},opacity:{0:"0",5:"0.05",10:"0.1",15:"0.15",20:"0.2",25:"0.25",30:"0.3",35:"0.35",40:"0.4",45:"0.45",50:"0.5",55:"0.55",60:"0.6",65:"0.65",70:"0.7",75:"0.75",80:"0.8",85:"0.85",90:"0.9",95:"0.95",100:"1",..._t},order:{first:"-9999",last:"9999",none:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",10:"10",11:"11",12:"12",...Dt},outlineColor:({theme:e})=>e("colors"),outlineOffset:{0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",...Mt},outlineWidth:{0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",...Mt},padding:({theme:e})=>e("spacing"),placeholderColor:({theme:e})=>e("colors"),placeholderOpacity:({theme:e})=>e("opacity"),ringColor:({theme:e})=>({DEFAULT:"currentcolor",...e("colors")}),ringOffsetColor:({theme:e})=>e("colors"),ringOffsetWidth:{0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",...Mt},ringOpacity:({theme:e})=>({DEFAULT:"0.5",...e("opacity")}),ringWidth:{DEFAULT:"3px",0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",...Mt},rotate:{0:"0deg",1:"1deg",2:"2deg",3:"3deg",6:"6deg",12:"12deg",45:"45deg",90:"90deg",180:"180deg",...Lt},saturate:{0:"0",50:".5",100:"1",150:"1.5",200:"2",..._t},scale:{0:"0",50:".5",75:".75",90:".9",95:".95",100:"1",105:"1.05",110:"1.1",125:"1.25",150:"1.5",..._t},screens:{sm:"40rem",md:"48rem",lg:"64rem",xl:"80rem","2xl":"96rem"},scrollMargin:({theme:e})=>e("spacing"),scrollPadding:({theme:e})=>e("spacing"),sepia:{0:"0",DEFAULT:"100%",..._t},skew:{0:"0deg",1:"1deg",2:"2deg",3:"3deg",6:"6deg",12:"12deg",...Lt},space:({theme:e})=>e("spacing"),spacing:{px:"1px",0:"0px",.5:"0.125rem",1:"0.25rem",1.5:"0.375rem",2:"0.5rem",2.5:"0.625rem",3:"0.75rem",3.5:"0.875rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem",11:"2.75rem",12:"3rem",14:"3.5rem",16:"4rem",20:"5rem",24:"6rem",28:"7rem",32:"8rem",36:"9rem",40:"10rem",44:"11rem",48:"12rem",52:"13rem",56:"14rem",60:"15rem",64:"16rem",72:"18rem",80:"20rem",96:"24rem"},stroke:({theme:e})=>({none:"none",...e("colors")}),strokeWidth:{0:"0",1:"1",2:"2",...Dt},supports:{},data:{},textColor:({theme:e})=>e("colors"),textDecorationColor:({theme:e})=>e("colors"),textDecorationThickness:{auto:"auto","from-font":"from-font",0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",...Mt},textIndent:({theme:e})=>e("spacing"),textOpacity:({theme:e})=>e("opacity"),textUnderlineOffset:{auto:"auto",0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",...Mt},transformOrigin:{center:"center",top:"top","top-right":"top right",right:"right","bottom-right":"bottom right",bottom:"bottom","bottom-left":"bottom left",left:"left","top-left":"top left"},transitionDelay:{0:"0s",75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms",...Bt},transitionDuration:{DEFAULT:"150ms",0:"0s",75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms",...Bt},transitionProperty:{none:"none",all:"all",DEFAULT:"color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter",colors:"color, background-color, border-color, outline-color, text-decoration-color, fill, stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4, 0, 0.2, 1)",linear:"linear",in:"cubic-bezier(0.4, 0, 1, 1)",out:"cubic-bezier(0, 0, 0.2, 1)","in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},translate:({theme:e})=>({"1/2":"50%","1/3":"33.333333%","2/3":"66.666667%","1/4":"25%","2/4":"50%","3/4":"75%",full:"100%",...e("spacing")}),size:({theme:e})=>({auto:"auto","1/2":"50%","1/3":"33.333333%","2/3":"66.666667%","1/4":"25%","2/4":"50%","3/4":"75%","1/5":"20%","2/5":"40%","3/5":"60%","4/5":"80%","1/6":"16.666667%","2/6":"33.333333%","3/6":"50%","4/6":"66.666667%","5/6":"83.333333%","1/12":"8.333333%","2/12":"16.666667%","3/12":"25%","4/12":"33.333333%","5/12":"41.666667%","6/12":"50%","7/12":"58.333333%","8/12":"66.666667%","9/12":"75%","10/12":"83.333333%","11/12":"91.666667%",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",...e("spacing")}),width:({theme:e})=>({auto:"auto","1/2":"50%","1/3":"33.333333%","2/3":"66.666667%","1/4":"25%","2/4":"50%","3/4":"75%","1/5":"20%","2/5":"40%","3/5":"60%","4/5":"80%","1/6":"16.666667%","2/6":"33.333333%","3/6":"50%","4/6":"66.666667%","5/6":"83.333333%","1/12":"8.333333%","2/12":"16.666667%","3/12":"25%","4/12":"33.333333%","5/12":"41.666667%","6/12":"50%","7/12":"58.333333%","8/12":"66.666667%","9/12":"75%","10/12":"83.333333%","11/12":"91.666667%",full:"100%",screen:"100vw",svw:"100svw",lvw:"100lvw",dvw:"100dvw",min:"min-content",max:"max-content",fit:"fit-content",...e("spacing")}),willChange:{auto:"auto",scroll:"scroll-position",contents:"contents",transform:"transform"},zIndex:{auto:"auto",0:"0",10:"10",20:"20",30:"30",40:"40",50:"50",...Dt}};function qt(e){return{theme:{...Pt,colors:({theme:e})=>e("color",{}),extend:{fontSize:({theme:e})=>({...e("text",{})}),boxShadow:({theme:e})=>({...e("shadow",{})}),animation:({theme:e})=>({...e("animate",{})}),aspectRatio:({theme:e})=>({...e("aspect",{})}),borderRadius:({theme:e})=>({...e("radius",{})}),screens:({theme:e})=>({...e("breakpoint",{})}),letterSpacing:({theme:e})=>({...e("tracking",{})}),lineHeight:({theme:e})=>({...e("leading",{})}),transitionDuration:{DEFAULT:e.get(["--default-transition-duration"])??null},transitionTimingFunction:{DEFAULT:e.get(["--default-transition-timing-function"])??null},maxWidth:({theme:e})=>({...e("container",{})})}}}}var Ht={blocklist:[],future:{},prefix:"",important:!1,darkMode:null,theme:{},plugins:[],content:{files:[]}};function Zt(e,t){let r={design:e,configs:[],plugins:[],content:{files:[]},theme:{},extend:{},result:structuredClone(Ht)};for(let e of t)Gt(r,e);for(let e of r.configs)"darkMode"in e&&void 0!==e.darkMode&&(r.result.darkMode=e.darkMode??null),"prefix"in e&&void 0!==e.prefix&&(r.result.prefix=e.prefix??""),"blocklist"in e&&void 0!==e.blocklist&&(r.result.blocklist=e.blocklist??[]),"important"in e&&void 0!==e.important&&(r.result.important=e.important??!1);let n=function(e){let t=new Set,r=kt(e.design,(()=>e.theme),o),n=Object.assign(r,{theme:r,colors:Wt});function o(e){return"function"==typeof e?e(n)??null:e??null}for(let r of e.configs){let n=r.theme??{},o=n.extend??{};for(let e in n)"extend"!==e&&t.add(e);Object.assign(e.theme,n);for(let t in o)e.extend[t]??=[],e.extend[t].push(o[t])}delete e.theme.extend;for(let t in e.extend){let r=[e.theme[t],...e.extend[t]];e.theme[t]=()=>wt({},r.map(o),Yt)}for(let t in e.theme)e.theme[t]=o(e.theme[t]);if(e.theme.screens&&"object"==typeof e.theme.screens)for(let t of Object.keys(e.theme.screens)){let r=e.theme.screens[t];r&&"object"==typeof r&&("raw"in r||"max"in r||"min"in r&&(e.theme.screens[t]=r.min))}return t}(r);return{resolvedConfig:{...r.result,content:r.content,theme:r.theme,plugins:r.plugins},replacedThemeKeys:n}}function Yt(e,t){return Array.isArray(e)&&vt(e[0])?e.concat(t):Array.isArray(t)&&vt(t[0])&&vt(e)?[e,...t]:Array.isArray(t)?t:void 0}function Gt(e,{config:t,base:r,path:n,reference:o}){let i=[];for(let e of t.plugins??[])"__isOptionsFunction"in e?i.push({...e(),reference:o}):"handler"in e?i.push({...e,reference:o}):i.push({handler:e,reference:o});if(Array.isArray(t.presets)&&0===t.presets.length)throw new Error("Error in the config file/plugin/preset. An empty preset (`preset: []`) is not currently supported.");for(let i of t.presets??[])Gt(e,{path:n,base:r,config:i,reference:o});for(let t of i)e.plugins.push(t),t.config&&Gt(e,{path:n,base:r,config:t.config,reference:!!t.reference});let a=t.content??[],l=Array.isArray(a)?a:a.files;for(let t of l)e.content.files.push("object"==typeof t?t:{base:r,pattern:t});e.configs.push(t)}function Jt(e,t){let r=e.theme.container||{};if("object"!=typeof r||null===r)return;let n=function({center:e,padding:t,screens:r},n){let o=[],i=null;if(e&&o.push(y("margin-inline","auto")),("string"==typeof t||"object"==typeof t&&null!==t&&"DEFAULT"in t)&&o.push(y("padding-inline","string"==typeof t?t:t.DEFAULT)),"object"==typeof r&&null!==r){i=new Map;let e=Array.from(n.theme.namespace("--breakpoint").entries());if(e.sort(((e,t)=>re(e[1],t[1],"asc"))),e.length>0){let[t]=e[0];o.push(k("@media",`(width >= --theme(--breakpoint-${t}))`,[y("max-width","none")]))}for(let[e,t]of Object.entries(r)){if("object"==typeof t){if(!("min"in t))continue;t=t.min}i.set(e,k("@media",`(width >= ${t})`,[y("max-width",t)]))}}if("object"==typeof t&&null!==t){let e=Object.entries(t).filter((([e])=>"DEFAULT"!==e)).map((([e,t])=>[e,n.theme.resolveValue(e,["--breakpoint"]),t])).filter(Boolean);e.sort(((e,t)=>re(e[1],t[1],"asc")));for(let[t,,r]of e)if(i&&i.has(t))i.get(t).nodes.push(y("padding-inline",r));else{if(i)continue;o.push(k("@media",`(width >= theme(--breakpoint-${t}))`,[y("padding-inline",r)]))}}if(i)for(let[,e]of i)o.push(e);return o}(r,t);0!==n.length&&t.utilities.static("container",(()=>structuredClone(n)))}function Xt({addVariant:e,config:t}){let r=t("darkMode",null),[n,o=".dark"]=Array.isArray(r)?r:[r];if("variant"===n){let e;if(Array.isArray(o)||"function"==typeof o?e=o:"string"==typeof o&&(e=[o]),Array.isArray(e))for(let t of e)".dark"===t?(n=!1,console.warn('When using `variant` for `darkMode`, you must provide a selector.\nExample: `darkMode: ["variant", ".your-selector &"]`')):t.includes("&")||(n=!1,console.warn('When using `variant` for `darkMode`, your selector must contain `&`.\nExample `darkMode: ["variant", ".your-selector &"]`'));o=e}null===n||("selector"===n?e("dark",`&:where(${o}, ${o} *)`):"media"===n?e("dark","@media (prefers-color-scheme: dark)"):"variant"===n?e("dark",o):"class"===n&&e("dark",`&:is(${o} *)`))}function Qt(e){return(Array.isArray(e)?e:[e]).map((e=>"string"==typeof e?{min:e}:e&&"object"==typeof e?e:null)).map((e=>{if(null===e)return null;if("raw"in e)return e.raw;let t="";return void 0!==e.max&&(t+=`${e.max} >= `),t+="width",void 0!==e.min&&(t+=` >= ${e.min}`),`(${t})`})).filter(Boolean).join(", ")}var er=/^[a-z]+$/;async function tr({designSystem:e,base:t,ast:r,loadModule:n,sources:o}){let i=0,a=[],l=[];A(r,((e,{parent:t,replaceWith:r,context:n})=>{if("at-rule"===e.kind){if("@plugin"===e.name){if(null!==t)throw new Error("`@plugin` cannot be nested.");let o=e.params.slice(1,-1);if(0===o.length)throw new Error("`@plugin` must have a path.");let l={};for(let t of e.nodes??[]){if("declaration"!==t.kind)throw new Error(`Unexpected \`@plugin\` option:\n\n${T([t])}\n\n\`@plugin\` options must be a flat list of declarations.`);if(void 0===t.value)continue;let e=I(t.value,",").map((e=>{if("null"===(e=e.trim()))return null;if("true"===e)return!0;if("false"===e)return!1;if(!Number.isNaN(Number(e)))return Number(e);if('"'===e[0]&&'"'===e[e.length-1]||"'"===e[0]&&"'"===e[e.length-1])return e.slice(1,-1);if("{"===e[0]&&"}"===e[e.length-1])throw new Error(`Unexpected \`@plugin\` option: Value of declaration \`${T([t]).trim()}\` is not supported.\n\nUsing an object as a plugin option is currently only supported in JavaScript configuration files.`);return e}));l[t.property]=1===e.length?e[0]:e}return a.push([{id:o,base:n.base,reference:!!n.reference},Object.keys(l).length>0?l:null]),r([]),void(i|=4)}if("@config"===e.name){if(e.nodes.length>0)throw new Error("`@config` cannot have a body.");if(null!==t)throw new Error("`@config` cannot be nested.");return l.push({id:e.params.slice(1,-1),base:n.base,reference:!!n.reference}),r([]),void(i|=4)}}})),function(e){for(let[t,r]of[["t","top"],["tr","top right"],["r","right"],["br","bottom right"],["b","bottom"],["bl","bottom left"],["l","left"],["tl","top left"]])e.utilities.static(`bg-gradient-to-${t}`,(()=>[y("--tw-gradient-position",`to ${r} in oklab`),y("background-image","linear-gradient(var(--tw-gradient-stops))")]));e.utilities.static("bg-left-top",(()=>[y("background-position","left top")])),e.utilities.static("bg-right-top",(()=>[y("background-position","right top")])),e.utilities.static("bg-left-bottom",(()=>[y("background-position","left bottom")])),e.utilities.static("bg-right-bottom",(()=>[y("background-position","right bottom")])),e.utilities.static("object-left-top",(()=>[y("object-position","left top")])),e.utilities.static("object-right-top",(()=>[y("object-position","right top")])),e.utilities.static("object-left-bottom",(()=>[y("object-position","left bottom")])),e.utilities.static("object-right-bottom",(()=>[y("object-position","right bottom")])),e.utilities.functional("max-w-screen",(t=>{if(!t.value||"arbitrary"===t.value.kind)return;let r=e.theme.resolve(t.value.value,["--breakpoint"]);return r?[y("max-width",r)]:void 0})),e.utilities.static("overflow-ellipsis",(()=>[y("text-overflow","ellipsis")])),e.utilities.static("decoration-slice",(()=>[y("-webkit-box-decoration-break","slice"),y("box-decoration-break","slice")])),e.utilities.static("decoration-clone",(()=>[y("-webkit-box-decoration-break","clone"),y("box-decoration-break","clone")])),e.utilities.functional("flex-shrink",(e=>{if(!e.modifier){if(!e.value)return[y("flex-shrink","1")];if("arbitrary"===e.value.kind)return[y("flex-shrink",e.value.value)];if(ye(e.value.value))return[y("flex-shrink",e.value.value)]}})),e.utilities.functional("flex-grow",(e=>{if(!e.modifier){if(!e.value)return[y("flex-grow","1")];if("arbitrary"===e.value.kind)return[y("flex-grow",e.value.value)];if(ye(e.value.value))return[y("flex-grow",e.value.value)]}})),e.utilities.static("order-none",(()=>[y("order","0")]))}(e);let s=e.resolveThemeValue;if(e.resolveThemeValue=function(n,a){return n.startsWith("--")?s(n,a):(i|=rr({designSystem:e,base:t,ast:r,sources:o,configs:[],pluginDetails:[]}),e.resolveThemeValue(n,a))},!a.length&&!l.length)return 0;let[c,u]=await Promise.all([Promise.all(l.map((async({id:e,base:t,reference:r})=>{let o=await n(e,t,"config");return{path:e,base:o.base,config:o.module,reference:r}}))),Promise.all(a.map((async([{id:e,base:t,reference:r},o])=>{let i=await n(e,t,"plugin");return{path:e,base:i.base,plugin:i.module,options:o,reference:r}})))]);return i|=rr({designSystem:e,base:t,ast:r,sources:o,configs:c,pluginDetails:u}),i}function rr({designSystem:e,base:t,ast:r,sources:n,configs:o,pluginDetails:i}){let a=0,l=[...i.map((e=>{if(!e.options)return{config:{plugins:[e.plugin]},base:e.base,reference:e.reference};if("__isOptionsFunction"in e.plugin)return{config:{plugins:[e.plugin(e.options)]},base:e.base,reference:e.reference};throw new Error(`The plugin "${e.path}" does not accept options`)})),...o],{resolvedConfig:s}=Zt(e,[{config:qt(e.theme),base:t,reference:!0},...l,{config:{plugins:[Xt]},base:t,reference:!0}]),{resolvedConfig:c,replacedThemeKeys:u}=Zt(e,l),d=e.resolveThemeValue;e.resolveThemeValue=function(e,t){if("-"===e[0]&&"-"===e[1])return d(e,t);let r=h.theme(e,void 0);return Array.isArray(r)&&2===r.length?r[0]:Array.isArray(r)?r.join(", "):"string"==typeof r?r:void 0};let f,p={designSystem:e,ast:r,resolvedConfig:s,featuresRef:{set current(e){a|=e}}},h=Et({...p,referenceMode:!1});for(let{handler:e,reference:t}of s.plugins)t?(f||=Et({...p,referenceMode:!0}),e(f)):e(h);if(ft(e,c,u),Ft(e,c),function(e,t){let r=e.theme.aria||{},n=e.theme.supports||{},o=e.theme.data||{};if(Object.keys(r).length>0){let e=t.variants.get("aria"),n=e?.applyFn,o=e?.compounds;t.variants.functional("aria",((e,t)=>{let o=t.value;return o&&"named"===o.kind&&o.value in r?n?.(e,{...t,value:{kind:"arbitrary",value:r[o.value]}}):n?.(e,t)}),{compounds:o})}if(Object.keys(n).length>0){let e=t.variants.get("supports"),r=e?.applyFn,o=e?.compounds;t.variants.functional("supports",((e,t)=>{let o=t.value;return o&&"named"===o.kind&&o.value in n?r?.(e,{...t,value:{kind:"arbitrary",value:n[o.value]}}):r?.(e,t)}),{compounds:o})}if(Object.keys(o).length>0){let e=t.variants.get("data"),r=e?.applyFn,n=e?.compounds;t.variants.functional("data",((e,t)=>{let n=t.value;return n&&"named"===n.kind&&n.value in o?r?.(e,{...t,value:{kind:"arbitrary",value:o[n.value]}}):r?.(e,t)}),{compounds:n})}}(c,e),function(e,t){let r=e.theme.screens||{},n=t.variants.get("min")?.order??0,o=[];for(let[e,i]of Object.entries(r)){let r=function(r){t.variants.static(e,(e=>{e.nodes=[k("@media",c,e.nodes)]}),{order:r})},a=t.variants.get(e),l=t.theme.resolveValue(e,["--breakpoint"]);if(a&&l&&!t.theme.hasDefault(`--breakpoint-${e}`))continue;let s=!0;"string"==typeof i&&(s=!1);let c=Qt(i);s?o.push(r):r(n)}if(0!==o.length){for(let[,e]of t.variants.variants)e.order>n&&(e.order+=o.length);t.variants.compareFns=new Map(Array.from(t.variants.compareFns).map((([e,t])=>(e>n&&(e+=o.length),[e,t]))));for(let[e,t]of o.entries())t(n+e+1)}}(c,e),Jt(c,e),!e.theme.prefix&&s.prefix){if(s.prefix.endsWith("-")&&(s.prefix=s.prefix.slice(0,-1),console.warn(`The prefix "${s.prefix}" is invalid. Prefixes must be lowercase ASCII letters (a-z) only and is written as a variant before all utilities. We have fixed up the prefix for you. Remove the trailing \`-\` to silence this warning.`)),!er.test(s.prefix))throw new Error(`The prefix "${s.prefix}" is invalid. Prefixes must be lowercase ASCII letters (a-z) only.`);e.theme.prefix=s.prefix}if(!e.important&&!0===s.important&&(e.important=!0),"string"==typeof s.important){let e=s.important;A(r,((t,{replaceWith:r,parent:n})=>{if("at-rule"===t.kind&&"@tailwind"===t.name&&"utilities"===t.params)return"rule"===n?.kind&&n.selector===e||r(w(e,[t])),2}))}for(let t of s.blocklist)e.invalidCandidates.add(t);for(let e of s.content.files){if("raw"in e)throw new Error(`Error in the config file/plugin/preset. The \`content\` key contains a \`raw\` entry:\n\n${JSON.stringify(e,null,2)}\n\nThis feature is not currently supported.`);let t=!1;"!"==e.pattern[0]&&(t=!0,e.pattern=e.pattern.slice(1)),n.push({...e,negated:t})}return a}function nr({ast:e}){let t=new c((e=>function(e){let t=[0];for(let r=0;r0;){let o=n>>1,i=r+o;t[i]<=e?(r=i+1,n=n-o-1):n=o}return r-=1,{line:r+1,column:e-t[r]}},findOffset:function({line:e,column:r}){e-=1,e=Math.min(Math.max(e,0),t.length-1);let n=t[e],o=t[e+1]??n;return Math.min(Math.max(n+r,0),o)}}}(e.code))),r=new c((e=>({url:e.file,content:e.code,ignore:!1}))),n={file:null,sources:[],mappings:[]};A(e,(e=>{if(!e.src||!e.dst)return;let o=r.get(e.src[0]);if(!o.content)return;let i=t.get(e.src[0]),a=t.get(e.dst[0]),l=o.content.slice(e.src[1],e.src[2]),s=0;for(let t of l.split("\n")){if(""!==t.trim()){let t=i.find(e.src[1]+s),r=a.find(e.dst[1]);n.mappings.push({name:null,originalPosition:{source:o,...t},generatedPosition:r})}s+=t.length,s+=1}let c=i.find(e.src[2]),u=a.find(e.dst[2]);n.mappings.push({name:null,originalPosition:{source:o,...c},generatedPosition:u})}));for(let e of t.keys())n.sources.push(r.get(e));return n.mappings.sort(((e,t)=>e.generatedPosition.line-t.generatedPosition.line||e.generatedPosition.column-t.generatedPosition.column||(e.originalPosition?.line??0)-(t.originalPosition?.line??0)||(e.originalPosition?.column??0)-(t.originalPosition?.column??0))),n}var or=/^(-?\d+)\.\.(-?\d+)(?:\.\.(-?\d+))?$/;function ir(e){let t=e.indexOf("{");if(-1===t)return[e];let r=[],n=e.slice(0,t),o=e.slice(t),i=0,a=o.lastIndexOf("}");for(let e=0;e0&&(i=-i);for(let r=e;o?r<=t:r>=t;r+=i)a.push(r.toString())}return a}(s):I(s,","),l=l.flatMap((e=>ir(e)));let u=ir(c);for(let e of u)for(let t of l)r.push(n+t+e);return r}var ar=/^[a-z]+$/;function lr(){throw new Error("No `loadModule` function provided to `compile`")}function sr(){throw new Error("No `loadStylesheet` function provided to `compile`")}async function cr(e,{base:t="",from:r,loadModule:n=lr,loadStylesheet:a=sr}={}){let l=0;e=[$({base:t},e)],l|=await ut(e,t,a,0,void 0!==r);let c=null,u=new s,d=[],f=[],g=null,v=null,x=[],C=[],j=[],S=[],K=null;A(e,((e,{parent:t,replaceWith:r,context:n})=>{if("at-rule"===e.kind){if("@tailwind"===e.name&&("utilities"===e.params||e.params.startsWith("utilities"))){if(null!==v)return void r([]);if(n.reference)return void r([]);let t=I(e.params," ");for(let e of t)if(e.startsWith("source(")){let t=e.slice(7,-1);if("none"===t){K=t;continue}if('"'===t[0]&&'"'!==t[t.length-1]||"'"===t[0]&&"'"!==t[t.length-1]||"'"!==t[0]&&'"'!==t[0])throw new Error("`source(…)` paths must be quoted.");K={base:n.sourceBase??n.base,pattern:t.slice(1,-1)}}v=e,l|=16}if("@utility"===e.name){if(null!==t)throw new Error("`@utility` cannot be nested.");if(0===e.nodes.length)throw new Error(`\`@utility ${e.params}\` is empty. Utilities should include at least one property.`);let r=function(e){let t=e.params;return Ke.test(t)?r=>{let n={"--value":{usedSpacingInteger:!1,usedSpacingNumber:!1,themeKeys:new Set,literals:new Set},"--modifier":{usedSpacingInteger:!1,usedSpacingNumber:!1,themeKeys:new Set,literals:new Set}};A(e.nodes,(e=>{if("declaration"!==e.kind||!e.value||!e.value.includes("--value(")&&!e.value.includes("--modifier("))return;let t=m(e.value);p(t,(e=>{if("function"!==e.kind)return;if(!("--spacing"!==e.value||n["--modifier"].usedSpacingNumber&&n["--value"].usedSpacingNumber))return p(e.nodes,(e=>{if("function"!==e.kind||"--value"!==e.value&&"--modifier"!==e.value)return;let t=e.value;for(let r of e.nodes)if("word"===r.kind)if("integer"===r.value)n[t].usedSpacingInteger||=!0;else if("number"===r.value&&(n[t].usedSpacingNumber||=!0,n["--modifier"].usedSpacingNumber&&n["--value"].usedSpacingNumber))return 2})),0;if("--value"!==e.value&&"--modifier"!==e.value)return;let t=I(h(e.nodes),",");for(let[e,r]of t.entries())r=r.replace(/\\\*/g,"*"),r=r.replace(/--(.*?)\s--(.*?)/g,"--$1-*--$2"),r=r.replace(/\s+/g,""),r=r.replace(/(-\*){2,}/g,"-*"),"-"===r[0]&&"-"===r[1]&&!r.includes("-*")&&(r+="-*"),t[e]=r;e.nodes=m(t.join(","));for(let t of e.nodes)if("word"!==t.kind||'"'!==t.value[0]&&"'"!==t.value[0]||t.value[0]!==t.value[t.value.length-1]){if("word"===t.kind&&"-"===t.value[0]&&"-"===t.value[1]){let r=t.value.replace(/-\*.*$/g,"");n[e.value].themeKeys.add(r)}else if("word"===t.kind&&("["!==t.value[0]||"]"!==t.value[t.value.length-1])&&!_e.includes(t.value)){console.warn(`Unsupported bare value data type: "${t.value}".\nOnly valid data types are: ${_e.map((e=>`"${e}"`)).join(", ")}.\n`);let r=t.value,n=structuredClone(e),o="¶";p(n.nodes,((e,{replaceWith:t})=>{"word"===e.kind&&e.value===r&&t({kind:"word",value:o})}));let i="^".repeat(h([t]).length),a=h([n]).indexOf(o),l=["```css",h([e])," ".repeat(a)+i,"```"].join("\n");console.warn(l)}}else{let r=t.value.slice(1,-1);n[e.value].literals.add(r)}})),e.value=h(t)})),r.utilities.functional(t.slice(0,-2),(t=>{let n=structuredClone(e),o=t.value,i=t.modifier;if(null===o)return;let a=!1,l=!1,s=!1,c=!1,u=new Map,d=!1;if(A([n],((e,{parent:t,replaceWith:n})=>{if("rule"!==t?.kind&&"at-rule"!==t?.kind||"declaration"!==e.kind||!e.value)return;let f=m(e.value);0===(p(f,((f,{replaceWith:p})=>{if("function"===f.kind){if("--value"===f.value){a=!0;let i=Me(o,f,r);return i?(l=!0,i.ratio?d=!0:u.set(e,t),p(i.nodes),1):(a||=!1,n([]),2)}if("--modifier"===f.value){if(null===i)return n([]),2;s=!0;let e=Me(i,f,r);return e?(c=!0,p(e.nodes),1):(s||=!1,n([]),2)}}}))??0)&&(e.value=h(f))})),a&&!l||s&&!c||d&&c||i&&!d&&!c)return null;if(d)for(let[e,t]of u){let r=t.nodes.indexOf(e);-1!==r&&t.nodes.splice(r,1)}return n.nodes})),r.utilities.suggest(t.slice(0,-2),(()=>{let e=[],t=[];for(let[o,{literals:i,usedSpacingNumber:a,usedSpacingInteger:l,themeKeys:s}]of[[e,n["--value"]],[t,n["--modifier"]]]){for(let e of i)o.push(e);if(a)o.push(...Ee);else if(l)for(let e of Ee)ye(e)&&o.push(e);for(let e of r.theme.keysInNamespaces(s))o.push(e.replace(De,((e,t,r)=>`${t}.${r}`)))}return[{values:e,modifiers:t}]}))}:Se.test(t)?r=>{r.utilities.static(t,(()=>structuredClone(e.nodes)))}:null}(e);if(null===r)throw new Error(`\`@utility ${e.params}\` defines an invalid utility name. Utilities should be alphanumeric and start with a lowercase letter.`);f.push(r)}if("@source"===e.name){if(e.nodes.length>0)throw new Error("`@source` cannot have a body.");if(null!==t)throw new Error("`@source` cannot be nested.");let o=!1,i=!1,a=e.params;if("n"===a[0]&&a.startsWith("not ")&&(o=!0,a=a.slice(4)),"i"===a[0]&&a.startsWith("inline(")&&(i=!0,a=a.slice(7,-1)),'"'===a[0]&&'"'!==a[a.length-1]||"'"===a[0]&&"'"!==a[a.length-1]||"'"!==a[0]&&'"'!==a[0])throw new Error("`@source` paths must be quoted.");let l=a.slice(1,-1);if(i){let e=o?S:j,t=I(l," ");for(let r of t)for(let t of ir(r))e.push(t)}else C.push({base:n.base,pattern:l,negated:o});return void r([])}if("@variant"===e.name&&(null===t?0===e.nodes.length?e.name="@custom-variant":(A(e.nodes,(t=>{if("at-rule"===t.kind&&"@slot"===t.name)return e.name="@custom-variant",2})),"@variant"===e.name&&x.push(e)):x.push(e)),"@custom-variant"===e.name){if(null!==t)throw new Error("`@custom-variant` cannot be nested.");r([]);let[n,o]=I(e.params," ");if(!Ge.test(n))throw new Error(`\`@custom-variant ${n}\` defines an invalid variant name. Variants should only contain alphanumeric, dashes or underscore characters.`);if(e.nodes.length>0&&o)throw new Error(`\`@custom-variant ${n}\` cannot have both a selector and a body.`);if(0===e.nodes.length){if(!o)throw new Error(`\`@custom-variant ${n}\` has no selector or body.`);let e=I(o.slice(1,-1),",");if(0===e.length||e.some((e=>""===e.trim())))throw new Error(`\`@custom-variant ${n} (${e.join(",")})\` selector is invalid.`);let t=[],r=[];for(let n of e)n=n.trim(),"@"===n[0]?t.push(n):r.push(n);return void d.push((e=>{e.variants.static(n,(e=>{let n=[];r.length>0&&n.push(w(r.join(", "),e.nodes));for(let r of t)n.push(b(r,e.nodes));e.nodes=n}),{compounds:Xe([...r,...t])})}))}return void d.push((t=>{t.variants.fromAst(n,e.nodes)}))}if("@media"===e.name){let t=I(e.params," "),o=[];for(let r of t)if(r.startsWith("source(")){let t=r.slice(7,-1);A(e.nodes,((e,{replaceWith:r})=>{if("at-rule"===e.kind&&"@tailwind"===e.name&&"utilities"===e.params)return e.params+=` source(${t})`,r([$({sourceBase:n.base},[e])]),2}))}else if(r.startsWith("theme(")){let t=r.slice(6,-1),n=t.includes("reference");A(e.nodes,(e=>{if("at-rule"!==e.kind){if(n)throw new Error('Files imported with `@import "…" theme(reference)` must only contain `@theme` blocks.\nUse `@reference "…";` instead.');return 0}if("@theme"===e.name)return e.params+=" "+t,1}))}else if(r.startsWith("prefix(")){let t=r.slice(7,-1);A(e.nodes,(e=>{if("at-rule"===e.kind&&"@theme"===e.name)return e.params+=` prefix(${t})`,1}))}else"important"===r?c=!0:"reference"===r?e.nodes=[$({reference:!0},e.nodes)]:o.push(r);o.length>0?e.params=o.join(" "):t.length>0&&r(e.nodes)}if("@theme"===e.name){let[t,o]=function(e){let t=0,r=null;for(let n of I(e," "))"reference"===n?t|=2:"inline"===n?t|=1:"default"===n?t|=4:"static"===n?t|=8:n.startsWith("prefix(")&&n.endsWith(")")&&(r=n.slice(7,-1));return[t,r]}(e.params);if(n.reference&&(t|=2),o){if(!ar.test(o))throw new Error(`The prefix "${o}" is invalid. Prefixes must be lowercase ASCII letters (a-z) only.`);u.prefix=o}return A(e.nodes,(r=>{if("at-rule"===r.kind&&"@keyframes"===r.name)return u.addKeyframes(r),1;if("comment"===r.kind)return;if("declaration"===r.kind&&r.property.startsWith("--"))return void u.add(i(r.property),r.value??"",t,r.src);let n=T([k(e.name,e.params,[r])]).split("\n").map(((e,t,r)=>`${0===t||t>=r.length-2?" ":">"} ${e}`)).join("\n");throw new Error(`\`@theme\` blocks must only contain custom properties or \`@keyframes\`.\n\n${n}`)})),g?r([]):(g=w(":root, :host",[]),g.src=e.src,r([g])),1}}}));let E=tt(u);if(c&&(E.important=c),S.length>0)for(let e of S)E.invalidCandidates.add(e);l|=await tr({designSystem:E,base:t,ast:e,loadModule:n,sources:C});for(let e of d)e(E);for(let e of f)e(E);if(g){let t=[];for(let[e,r]of E.theme.entries()){if(2&r.options)continue;let n=y(o(e),r.value);n.src=r.src,t.push(n)}let r=E.theme.getKeyframes();for(let t of r)e.push($({theme:!0},[z([t])]));g.nodes=[$({theme:!0},t)]}if(x.length>0){for(let e of x){let t=w("&",e.nodes),r=e.params,n=E.parseVariant(r);if(null===n)throw new Error(`Cannot use \`@variant\` with unknown variant: ${r}`);if(null===ot(t,n,E.variants))throw new Error(`Cannot use \`@variant\` with variant: ${r}`);Object.assign(e,t)}l|=32}if(l|=Pe(e,E),l|=st(e,E),v){let e=v;e.kind="context",e.context={}}return A(e,((e,{replaceWith:t})=>{if("at-rule"===e.kind)return"@utility"===e.name&&t([]),1})),{designSystem:E,ast:e,sources:C,root:K,utilitiesNode:v,features:l,inlineCandidates:j}}async function ur(e,r={}){let n=t(e,{from:r.from}),o=await async function(e,t={}){let{designSystem:r,ast:n,sources:o,root:i,utilitiesNode:a,features:l,inlineCandidates:s}=await cr(e,t);function c(e){r.invalidCandidates.add(e)}n.unshift(x("! tailwindcss v4.1.8 | MIT License | https://tailwindcss.com "));let u=new Set,d=null,f=0,p=!1;for(let e of s)r.invalidCandidates.has(e)||(u.add(e),p=!0);return{sources:o,root:i,features:l,build(o){if(0===l)return e;if(!a)return d??=j(n,r,t.polyfills),d;let i=p,s=!1;p=!1;let h=u.size;for(let e of o)if(!r.invalidCandidates.has(e))if("-"===e[0]&&"-"===e[1]){let t=r.theme.markUsedVariable(e);i||=t,s||=t}else u.add(e),i||=u.size!==h;if(!i)return d??=j(n,r,t.polyfills),d;let m=nt(u,r,{onInvalidCandidate:c}).astNodes;return t.from&&A(m,(e=>{e.src??=a.src})),s||f!==m.length?(f=m.length,a.nodes=m,d=j(n,r,t.polyfills),d):(d??=j(n,r,t.polyfills),d)}}}(n,r),i=n,a=e;return{...o,build(e){let t=o.build(e);return t===i||(a=T(t,!!r.from),i=t),a},buildSourceMap:()=>nr({ast:i})}}var dr={index:"@layer theme, base, components, utilities;\n\n@import './theme.css' layer(theme);\n@import './preflight.css' layer(base);\n@import './utilities.css' layer(utilities);\n",preflight:"/*\n 1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n 2. Remove default margins and padding\n 3. Reset all borders.\n*/\n\n*,\n::after,\n::before,\n::backdrop,\n::file-selector-button {\n box-sizing: border-box; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 2 */\n border: 0 solid; /* 3 */\n}\n\n/*\n 1. Use a consistent sensible line-height in all browsers.\n 2. Prevent adjustments of font size after orientation changes in iOS.\n 3. Use a more readable tab size.\n 4. Use the user's configured `sans` font-family by default.\n 5. Use the user's configured `sans` font-feature-settings by default.\n 6. Use the user's configured `sans` font-variation-settings by default.\n 7. Disable tap highlights on iOS.\n*/\n\nhtml,\n:host {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n tab-size: 4; /* 3 */\n font-family: --theme(\n --default-font-family,\n ui-sans-serif,\n system-ui,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol',\n 'Noto Color Emoji'\n ); /* 4 */\n font-feature-settings: --theme(--default-font-feature-settings, normal); /* 5 */\n font-variation-settings: --theme(--default-font-variation-settings, normal); /* 6 */\n -webkit-tap-highlight-color: transparent; /* 7 */\n}\n\n/*\n 1. Add the correct height in Firefox.\n 2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n 3. Reset the default border style to a 1px solid border.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\n Add the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\n Remove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\n Reset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n}\n\n/*\n Add the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n 1. Use the user's configured `mono` font-family by default.\n 2. Use the user's configured `mono` font-feature-settings by default.\n 3. Use the user's configured `mono` font-variation-settings by default.\n 4. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: --theme(\n --default-mono-font-family,\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n 'Liberation Mono',\n 'Courier New',\n monospace\n ); /* 1 */\n font-feature-settings: --theme(--default-mono-font-feature-settings, normal); /* 2 */\n font-variation-settings: --theme(--default-mono-font-variation-settings, normal); /* 3 */\n font-size: 1em; /* 4 */\n}\n\n/*\n Add the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\n Prevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n 1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n 2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n 3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n Use the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\n Add the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\n Add the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\n Make lists unstyled by default.\n*/\n\nol,\nul,\nmenu {\n list-style: none;\n}\n\n/*\n 1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n 2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\n Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/*\n 1. Inherit font styles in all browsers.\n 2. Remove border radius in all browsers.\n 3. Remove background color in all browsers.\n 4. Ensure consistent opacity for disabled states in all browsers.\n*/\n\nbutton,\ninput,\nselect,\noptgroup,\ntextarea,\n::file-selector-button {\n font: inherit; /* 1 */\n font-feature-settings: inherit; /* 1 */\n font-variation-settings: inherit; /* 1 */\n letter-spacing: inherit; /* 1 */\n color: inherit; /* 1 */\n border-radius: 0; /* 2 */\n background-color: transparent; /* 3 */\n opacity: 1; /* 4 */\n}\n\n/*\n Restore default font weight.\n*/\n\n:where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n}\n\n/*\n Restore indentation.\n*/\n\n:where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n}\n\n/*\n Restore space after button.\n*/\n\n::file-selector-button {\n margin-inline-end: 4px;\n}\n\n/*\n Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n*/\n\n::placeholder {\n opacity: 1;\n}\n\n/*\n Set the default placeholder color to a semi-transparent version of the current text color in browsers that do not\n crash when using `color-mix(…)` with `currentcolor`. (https://github.com/tailwindlabs/tailwindcss/issues/17194)\n*/\n\n@supports (not (-webkit-appearance: -apple-pay-button)) /* Not Safari */ or\n (contain-intrinsic-size: 1px) /* Safari 17+ */ {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n}\n\n/*\n Prevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n Remove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n 1. Ensure date/time inputs have the same height when empty in iOS Safari.\n 2. Ensure text alignment can be changed on date/time inputs in iOS Safari.\n*/\n\n::-webkit-date-and-time-value {\n min-height: 1lh; /* 1 */\n text-align: inherit; /* 2 */\n}\n\n/*\n Prevent height from changing on date/time inputs in macOS Safari when the input is set to `display: block`.\n*/\n\n::-webkit-datetime-edit {\n display: inline-flex;\n}\n\n/*\n Remove excess padding from pseudo-elements in date/time inputs to ensure consistent height across browsers.\n*/\n\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n}\n\n::-webkit-datetime-edit,\n::-webkit-datetime-edit-year-field,\n::-webkit-datetime-edit-month-field,\n::-webkit-datetime-edit-day-field,\n::-webkit-datetime-edit-hour-field,\n::-webkit-datetime-edit-minute-field,\n::-webkit-datetime-edit-second-field,\n::-webkit-datetime-edit-millisecond-field,\n::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n}\n\n/*\n Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\n Correct the inability to style the border radius in iOS Safari.\n*/\n\nbutton,\ninput:where([type='button'], [type='reset'], [type='submit']),\n::file-selector-button {\n appearance: button;\n}\n\n/*\n Correct the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n Make elements with the HTML hidden attribute stay hidden by default.\n*/\n\n[hidden]:where(:not([hidden='until-found'])) {\n display: none !important;\n}\n",theme:"@theme default {\n --font-sans:\n ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',\n 'Noto Color Emoji';\n --font-serif: ui-serif, Georgia, Cambria, 'Times New Roman', Times, serif;\n --font-mono:\n ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',\n monospace;\n\n --color-red-50: oklch(97.1% 0.013 17.38);\n --color-red-100: oklch(93.6% 0.032 17.717);\n --color-red-200: oklch(88.5% 0.062 18.334);\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-red-400: oklch(70.4% 0.191 22.216);\n --color-red-500: oklch(63.7% 0.237 25.331);\n --color-red-600: oklch(57.7% 0.245 27.325);\n --color-red-700: oklch(50.5% 0.213 27.518);\n --color-red-800: oklch(44.4% 0.177 26.899);\n --color-red-900: oklch(39.6% 0.141 25.723);\n --color-red-950: oklch(25.8% 0.092 26.042);\n\n --color-orange-50: oklch(98% 0.016 73.684);\n --color-orange-100: oklch(95.4% 0.038 75.164);\n --color-orange-200: oklch(90.1% 0.076 70.697);\n --color-orange-300: oklch(83.7% 0.128 66.29);\n --color-orange-400: oklch(75% 0.183 55.934);\n --color-orange-500: oklch(70.5% 0.213 47.604);\n --color-orange-600: oklch(64.6% 0.222 41.116);\n --color-orange-700: oklch(55.3% 0.195 38.402);\n --color-orange-800: oklch(47% 0.157 37.304);\n --color-orange-900: oklch(40.8% 0.123 38.172);\n --color-orange-950: oklch(26.6% 0.079 36.259);\n\n --color-amber-50: oklch(98.7% 0.022 95.277);\n --color-amber-100: oklch(96.2% 0.059 95.617);\n --color-amber-200: oklch(92.4% 0.12 95.746);\n --color-amber-300: oklch(87.9% 0.169 91.605);\n --color-amber-400: oklch(82.8% 0.189 84.429);\n --color-amber-500: oklch(76.9% 0.188 70.08);\n --color-amber-600: oklch(66.6% 0.179 58.318);\n --color-amber-700: oklch(55.5% 0.163 48.998);\n --color-amber-800: oklch(47.3% 0.137 46.201);\n --color-amber-900: oklch(41.4% 0.112 45.904);\n --color-amber-950: oklch(27.9% 0.077 45.635);\n\n --color-yellow-50: oklch(98.7% 0.026 102.212);\n --color-yellow-100: oklch(97.3% 0.071 103.193);\n --color-yellow-200: oklch(94.5% 0.129 101.54);\n --color-yellow-300: oklch(90.5% 0.182 98.111);\n --color-yellow-400: oklch(85.2% 0.199 91.936);\n --color-yellow-500: oklch(79.5% 0.184 86.047);\n --color-yellow-600: oklch(68.1% 0.162 75.834);\n --color-yellow-700: oklch(55.4% 0.135 66.442);\n --color-yellow-800: oklch(47.6% 0.114 61.907);\n --color-yellow-900: oklch(42.1% 0.095 57.708);\n --color-yellow-950: oklch(28.6% 0.066 53.813);\n\n --color-lime-50: oklch(98.6% 0.031 120.757);\n --color-lime-100: oklch(96.7% 0.067 122.328);\n --color-lime-200: oklch(93.8% 0.127 124.321);\n --color-lime-300: oklch(89.7% 0.196 126.665);\n --color-lime-400: oklch(84.1% 0.238 128.85);\n --color-lime-500: oklch(76.8% 0.233 130.85);\n --color-lime-600: oklch(64.8% 0.2 131.684);\n --color-lime-700: oklch(53.2% 0.157 131.589);\n --color-lime-800: oklch(45.3% 0.124 130.933);\n --color-lime-900: oklch(40.5% 0.101 131.063);\n --color-lime-950: oklch(27.4% 0.072 132.109);\n\n --color-green-50: oklch(98.2% 0.018 155.826);\n --color-green-100: oklch(96.2% 0.044 156.743);\n --color-green-200: oklch(92.5% 0.084 155.995);\n --color-green-300: oklch(87.1% 0.15 154.449);\n --color-green-400: oklch(79.2% 0.209 151.711);\n --color-green-500: oklch(72.3% 0.219 149.579);\n --color-green-600: oklch(62.7% 0.194 149.214);\n --color-green-700: oklch(52.7% 0.154 150.069);\n --color-green-800: oklch(44.8% 0.119 151.328);\n --color-green-900: oklch(39.3% 0.095 152.535);\n --color-green-950: oklch(26.6% 0.065 152.934);\n\n --color-emerald-50: oklch(97.9% 0.021 166.113);\n --color-emerald-100: oklch(95% 0.052 163.051);\n --color-emerald-200: oklch(90.5% 0.093 164.15);\n --color-emerald-300: oklch(84.5% 0.143 164.978);\n --color-emerald-400: oklch(76.5% 0.177 163.223);\n --color-emerald-500: oklch(69.6% 0.17 162.48);\n --color-emerald-600: oklch(59.6% 0.145 163.225);\n --color-emerald-700: oklch(50.8% 0.118 165.612);\n --color-emerald-800: oklch(43.2% 0.095 166.913);\n --color-emerald-900: oklch(37.8% 0.077 168.94);\n --color-emerald-950: oklch(26.2% 0.051 172.552);\n\n --color-teal-50: oklch(98.4% 0.014 180.72);\n --color-teal-100: oklch(95.3% 0.051 180.801);\n --color-teal-200: oklch(91% 0.096 180.426);\n --color-teal-300: oklch(85.5% 0.138 181.071);\n --color-teal-400: oklch(77.7% 0.152 181.912);\n --color-teal-500: oklch(70.4% 0.14 182.503);\n --color-teal-600: oklch(60% 0.118 184.704);\n --color-teal-700: oklch(51.1% 0.096 186.391);\n --color-teal-800: oklch(43.7% 0.078 188.216);\n --color-teal-900: oklch(38.6% 0.063 188.416);\n --color-teal-950: oklch(27.7% 0.046 192.524);\n\n --color-cyan-50: oklch(98.4% 0.019 200.873);\n --color-cyan-100: oklch(95.6% 0.045 203.388);\n --color-cyan-200: oklch(91.7% 0.08 205.041);\n --color-cyan-300: oklch(86.5% 0.127 207.078);\n --color-cyan-400: oklch(78.9% 0.154 211.53);\n --color-cyan-500: oklch(71.5% 0.143 215.221);\n --color-cyan-600: oklch(60.9% 0.126 221.723);\n --color-cyan-700: oklch(52% 0.105 223.128);\n --color-cyan-800: oklch(45% 0.085 224.283);\n --color-cyan-900: oklch(39.8% 0.07 227.392);\n --color-cyan-950: oklch(30.2% 0.056 229.695);\n\n --color-sky-50: oklch(97.7% 0.013 236.62);\n --color-sky-100: oklch(95.1% 0.026 236.824);\n --color-sky-200: oklch(90.1% 0.058 230.902);\n --color-sky-300: oklch(82.8% 0.111 230.318);\n --color-sky-400: oklch(74.6% 0.16 232.661);\n --color-sky-500: oklch(68.5% 0.169 237.323);\n --color-sky-600: oklch(58.8% 0.158 241.966);\n --color-sky-700: oklch(50% 0.134 242.749);\n --color-sky-800: oklch(44.3% 0.11 240.79);\n --color-sky-900: oklch(39.1% 0.09 240.876);\n --color-sky-950: oklch(29.3% 0.066 243.157);\n\n --color-blue-50: oklch(97% 0.014 254.604);\n --color-blue-100: oklch(93.2% 0.032 255.585);\n --color-blue-200: oklch(88.2% 0.059 254.128);\n --color-blue-300: oklch(80.9% 0.105 251.813);\n --color-blue-400: oklch(70.7% 0.165 254.624);\n --color-blue-500: oklch(62.3% 0.214 259.815);\n --color-blue-600: oklch(54.6% 0.245 262.881);\n --color-blue-700: oklch(48.8% 0.243 264.376);\n --color-blue-800: oklch(42.4% 0.199 265.638);\n --color-blue-900: oklch(37.9% 0.146 265.522);\n --color-blue-950: oklch(28.2% 0.091 267.935);\n\n --color-indigo-50: oklch(96.2% 0.018 272.314);\n --color-indigo-100: oklch(93% 0.034 272.788);\n --color-indigo-200: oklch(87% 0.065 274.039);\n --color-indigo-300: oklch(78.5% 0.115 274.713);\n --color-indigo-400: oklch(67.3% 0.182 276.935);\n --color-indigo-500: oklch(58.5% 0.233 277.117);\n --color-indigo-600: oklch(51.1% 0.262 276.966);\n --color-indigo-700: oklch(45.7% 0.24 277.023);\n --color-indigo-800: oklch(39.8% 0.195 277.366);\n --color-indigo-900: oklch(35.9% 0.144 278.697);\n --color-indigo-950: oklch(25.7% 0.09 281.288);\n\n --color-violet-50: oklch(96.9% 0.016 293.756);\n --color-violet-100: oklch(94.3% 0.029 294.588);\n --color-violet-200: oklch(89.4% 0.057 293.283);\n --color-violet-300: oklch(81.1% 0.111 293.571);\n --color-violet-400: oklch(70.2% 0.183 293.541);\n --color-violet-500: oklch(60.6% 0.25 292.717);\n --color-violet-600: oklch(54.1% 0.281 293.009);\n --color-violet-700: oklch(49.1% 0.27 292.581);\n --color-violet-800: oklch(43.2% 0.232 292.759);\n --color-violet-900: oklch(38% 0.189 293.745);\n --color-violet-950: oklch(28.3% 0.141 291.089);\n\n --color-purple-50: oklch(97.7% 0.014 308.299);\n --color-purple-100: oklch(94.6% 0.033 307.174);\n --color-purple-200: oklch(90.2% 0.063 306.703);\n --color-purple-300: oklch(82.7% 0.119 306.383);\n --color-purple-400: oklch(71.4% 0.203 305.504);\n --color-purple-500: oklch(62.7% 0.265 303.9);\n --color-purple-600: oklch(55.8% 0.288 302.321);\n --color-purple-700: oklch(49.6% 0.265 301.924);\n --color-purple-800: oklch(43.8% 0.218 303.724);\n --color-purple-900: oklch(38.1% 0.176 304.987);\n --color-purple-950: oklch(29.1% 0.149 302.717);\n\n --color-fuchsia-50: oklch(97.7% 0.017 320.058);\n --color-fuchsia-100: oklch(95.2% 0.037 318.852);\n --color-fuchsia-200: oklch(90.3% 0.076 319.62);\n --color-fuchsia-300: oklch(83.3% 0.145 321.434);\n --color-fuchsia-400: oklch(74% 0.238 322.16);\n --color-fuchsia-500: oklch(66.7% 0.295 322.15);\n --color-fuchsia-600: oklch(59.1% 0.293 322.896);\n --color-fuchsia-700: oklch(51.8% 0.253 323.949);\n --color-fuchsia-800: oklch(45.2% 0.211 324.591);\n --color-fuchsia-900: oklch(40.1% 0.17 325.612);\n --color-fuchsia-950: oklch(29.3% 0.136 325.661);\n\n --color-pink-50: oklch(97.1% 0.014 343.198);\n --color-pink-100: oklch(94.8% 0.028 342.258);\n --color-pink-200: oklch(89.9% 0.061 343.231);\n --color-pink-300: oklch(82.3% 0.12 346.018);\n --color-pink-400: oklch(71.8% 0.202 349.761);\n --color-pink-500: oklch(65.6% 0.241 354.308);\n --color-pink-600: oklch(59.2% 0.249 0.584);\n --color-pink-700: oklch(52.5% 0.223 3.958);\n --color-pink-800: oklch(45.9% 0.187 3.815);\n --color-pink-900: oklch(40.8% 0.153 2.432);\n --color-pink-950: oklch(28.4% 0.109 3.907);\n\n --color-rose-50: oklch(96.9% 0.015 12.422);\n --color-rose-100: oklch(94.1% 0.03 12.58);\n --color-rose-200: oklch(89.2% 0.058 10.001);\n --color-rose-300: oklch(81% 0.117 11.638);\n --color-rose-400: oklch(71.2% 0.194 13.428);\n --color-rose-500: oklch(64.5% 0.246 16.439);\n --color-rose-600: oklch(58.6% 0.253 17.585);\n --color-rose-700: oklch(51.4% 0.222 16.935);\n --color-rose-800: oklch(45.5% 0.188 13.697);\n --color-rose-900: oklch(41% 0.159 10.272);\n --color-rose-950: oklch(27.1% 0.105 12.094);\n\n --color-slate-50: oklch(98.4% 0.003 247.858);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-slate-200: oklch(92.9% 0.013 255.508);\n --color-slate-300: oklch(86.9% 0.022 252.894);\n --color-slate-400: oklch(70.4% 0.04 256.788);\n --color-slate-500: oklch(55.4% 0.046 257.417);\n --color-slate-600: oklch(44.6% 0.043 257.281);\n --color-slate-700: oklch(37.2% 0.044 257.287);\n --color-slate-800: oklch(27.9% 0.041 260.031);\n --color-slate-900: oklch(20.8% 0.042 265.755);\n --color-slate-950: oklch(12.9% 0.042 264.695);\n\n --color-gray-50: oklch(98.5% 0.002 247.839);\n --color-gray-100: oklch(96.7% 0.003 264.542);\n --color-gray-200: oklch(92.8% 0.006 264.531);\n --color-gray-300: oklch(87.2% 0.01 258.338);\n --color-gray-400: oklch(70.7% 0.022 261.325);\n --color-gray-500: oklch(55.1% 0.027 264.364);\n --color-gray-600: oklch(44.6% 0.03 256.802);\n --color-gray-700: oklch(37.3% 0.034 259.733);\n --color-gray-800: oklch(27.8% 0.033 256.848);\n --color-gray-900: oklch(21% 0.034 264.665);\n --color-gray-950: oklch(13% 0.028 261.692);\n\n --color-zinc-50: oklch(98.5% 0 0);\n --color-zinc-100: oklch(96.7% 0.001 286.375);\n --color-zinc-200: oklch(92% 0.004 286.32);\n --color-zinc-300: oklch(87.1% 0.006 286.286);\n --color-zinc-400: oklch(70.5% 0.015 286.067);\n --color-zinc-500: oklch(55.2% 0.016 285.938);\n --color-zinc-600: oklch(44.2% 0.017 285.786);\n --color-zinc-700: oklch(37% 0.013 285.805);\n --color-zinc-800: oklch(27.4% 0.006 286.033);\n --color-zinc-900: oklch(21% 0.006 285.885);\n --color-zinc-950: oklch(14.1% 0.005 285.823);\n\n --color-neutral-50: oklch(98.5% 0 0);\n --color-neutral-100: oklch(97% 0 0);\n --color-neutral-200: oklch(92.2% 0 0);\n --color-neutral-300: oklch(87% 0 0);\n --color-neutral-400: oklch(70.8% 0 0);\n --color-neutral-500: oklch(55.6% 0 0);\n --color-neutral-600: oklch(43.9% 0 0);\n --color-neutral-700: oklch(37.1% 0 0);\n --color-neutral-800: oklch(26.9% 0 0);\n --color-neutral-900: oklch(20.5% 0 0);\n --color-neutral-950: oklch(14.5% 0 0);\n\n --color-stone-50: oklch(98.5% 0.001 106.423);\n --color-stone-100: oklch(97% 0.001 106.424);\n --color-stone-200: oklch(92.3% 0.003 48.717);\n --color-stone-300: oklch(86.9% 0.005 56.366);\n --color-stone-400: oklch(70.9% 0.01 56.259);\n --color-stone-500: oklch(55.3% 0.013 58.071);\n --color-stone-600: oklch(44.4% 0.011 73.639);\n --color-stone-700: oklch(37.4% 0.01 67.558);\n --color-stone-800: oklch(26.8% 0.007 34.298);\n --color-stone-900: oklch(21.6% 0.006 56.043);\n --color-stone-950: oklch(14.7% 0.004 49.25);\n\n --color-black: #000;\n --color-white: #fff;\n\n --spacing: 0.25rem;\n\n --breakpoint-sm: 40rem;\n --breakpoint-md: 48rem;\n --breakpoint-lg: 64rem;\n --breakpoint-xl: 80rem;\n --breakpoint-2xl: 96rem;\n\n --container-3xs: 16rem;\n --container-2xs: 18rem;\n --container-xs: 20rem;\n --container-sm: 24rem;\n --container-md: 28rem;\n --container-lg: 32rem;\n --container-xl: 36rem;\n --container-2xl: 42rem;\n --container-3xl: 48rem;\n --container-4xl: 56rem;\n --container-5xl: 64rem;\n --container-6xl: 72rem;\n --container-7xl: 80rem;\n\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-base: 1rem;\n --text-base--line-height: calc(1.5 / 1);\n --text-lg: 1.125rem;\n --text-lg--line-height: calc(1.75 / 1.125);\n --text-xl: 1.25rem;\n --text-xl--line-height: calc(1.75 / 1.25);\n --text-2xl: 1.5rem;\n --text-2xl--line-height: calc(2 / 1.5);\n --text-3xl: 1.875rem;\n --text-3xl--line-height: calc(2.25 / 1.875);\n --text-4xl: 2.25rem;\n --text-4xl--line-height: calc(2.5 / 2.25);\n --text-5xl: 3rem;\n --text-5xl--line-height: 1;\n --text-6xl: 3.75rem;\n --text-6xl--line-height: 1;\n --text-7xl: 4.5rem;\n --text-7xl--line-height: 1;\n --text-8xl: 6rem;\n --text-8xl--line-height: 1;\n --text-9xl: 8rem;\n --text-9xl--line-height: 1;\n\n --font-weight-thin: 100;\n --font-weight-extralight: 200;\n --font-weight-light: 300;\n --font-weight-normal: 400;\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --font-weight-extrabold: 800;\n --font-weight-black: 900;\n\n --tracking-tighter: -0.05em;\n --tracking-tight: -0.025em;\n --tracking-normal: 0em;\n --tracking-wide: 0.025em;\n --tracking-wider: 0.05em;\n --tracking-widest: 0.1em;\n\n --leading-tight: 1.25;\n --leading-snug: 1.375;\n --leading-normal: 1.5;\n --leading-relaxed: 1.625;\n --leading-loose: 2;\n\n --radius-xs: 0.125rem;\n --radius-sm: 0.25rem;\n --radius-md: 0.375rem;\n --radius-lg: 0.5rem;\n --radius-xl: 0.75rem;\n --radius-2xl: 1rem;\n --radius-3xl: 1.5rem;\n --radius-4xl: 2rem;\n\n --shadow-2xs: 0 1px rgb(0 0 0 / 0.05);\n --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n\n --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / 0.05);\n --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.05);\n --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / 0.05);\n\n --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / 0.05);\n --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);\n --drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);\n --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 0.15);\n --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / 0.1);\n --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / 0.15);\n\n --text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / 0.15);\n --text-shadow-xs: 0px 1px 1px rgb(0 0 0 / 0.2);\n --text-shadow-sm:\n 0px 1px 0px rgb(0 0 0 / 0.075), 0px 1px 1px rgb(0 0 0 / 0.075), 0px 2px 2px rgb(0 0 0 / 0.075);\n --text-shadow-md:\n 0px 1px 1px rgb(0 0 0 / 0.1), 0px 1px 2px rgb(0 0 0 / 0.1), 0px 2px 4px rgb(0 0 0 / 0.1);\n --text-shadow-lg:\n 0px 1px 2px rgb(0 0 0 / 0.1), 0px 3px 2px rgb(0 0 0 / 0.1), 0px 4px 8px rgb(0 0 0 / 0.1);\n\n --ease-in: cubic-bezier(0.4, 0, 1, 1);\n --ease-out: cubic-bezier(0, 0, 0.2, 1);\n --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n\n --animate-spin: spin 1s linear infinite;\n --animate-ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;\n --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n --animate-bounce: bounce 1s infinite;\n\n @keyframes spin {\n to {\n transform: rotate(360deg);\n }\n }\n\n @keyframes ping {\n 75%,\n 100% {\n transform: scale(2);\n opacity: 0;\n }\n }\n\n @keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n }\n\n @keyframes bounce {\n 0%,\n 100% {\n transform: translateY(-25%);\n animation-timing-function: cubic-bezier(0.8, 0, 1, 1);\n }\n\n 50% {\n transform: none;\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n }\n }\n\n --blur-xs: 4px;\n --blur-sm: 8px;\n --blur-md: 12px;\n --blur-lg: 16px;\n --blur-xl: 24px;\n --blur-2xl: 40px;\n --blur-3xl: 64px;\n\n --perspective-dramatic: 100px;\n --perspective-near: 300px;\n --perspective-normal: 500px;\n --perspective-midrange: 800px;\n --perspective-distant: 1200px;\n\n --aspect-video: 16 / 9;\n\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: --theme(--font-sans, initial);\n --default-font-feature-settings: --theme(--font-sans--font-feature-settings, initial);\n --default-font-variation-settings: --theme(--font-sans--font-variation-settings, initial);\n --default-mono-font-family: --theme(--font-mono, initial);\n --default-mono-font-feature-settings: --theme(--font-mono--font-feature-settings, initial);\n --default-mono-font-variation-settings: --theme(--font-mono--font-variation-settings, initial);\n}\n\n/* Deprecated */\n@theme default inline reference {\n --blur: 8px;\n --shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);\n --drop-shadow: 0 1px 2px rgb(0 0 0 / 0.1), 0 1px 1px rgb(0 0 0 / 0.06);\n --radius: 0.25rem;\n --max-width-prose: 65ch;\n}\n",utilities:"@tailwind utilities;\n"};console.warn("The browser build of Tailwind CSS should not be used in production. To use Tailwind CSS in production, use the Tailwind CLI, Vite plugin, or PostCSS plugin: https://tailwindcss.com/docs/installation");var fr,pr="text/tailwindcss",hr=new Set,mr="",gr=document.createElement("style"),vr=Promise.resolve(),wr=1,kr=new class{start(e){performance.mark(`${e} (start)`)}end(e,t){performance.mark(`${e} (end)`),performance.measure(e,{start:`${e} (start)`,end:`${e} (end)`,detail:t})}hit(e,t){performance.mark(e,{detail:t})}error(e){throw performance.mark("(error)",{detail:{error:`${e}`}}),e}};async function br(e,t){try{let r=function(){if("tailwindcss"===e)return{path:"virtual:tailwindcss/index.css",base:t,content:dr.index};if("tailwindcss/preflight"===e||"tailwindcss/preflight.css"===e||"./preflight.css"===e)return{path:"virtual:tailwindcss/preflight.css",base:t,content:dr.preflight};if("tailwindcss/theme"===e||"tailwindcss/theme.css"===e||"./theme.css"===e)return{path:"virtual:tailwindcss/theme.css",base:t,content:dr.theme};if("tailwindcss/utilities"===e||"tailwindcss/utilities.css"===e||"./utilities.css"===e)return{path:"virtual:tailwindcss/utilities.css",base:t,content:dr.utilities};throw new Error(`The browser build does not support @import for "${e}"`)}();return kr.hit("Loaded stylesheet",{id:e,base:t,size:r.content.length}),r}catch(r){throw kr.hit("Failed to load stylesheet",{id:e,base:t,error:r.message??r}),r}}async function yr(){throw new Error("The browser build does not support plugins or config files.")}function xr(e){vr=vr.then((async function(){if(!fr&&"full"!==e)return;let t=wr++;kr.start(`Build #${t} (${e})`),"full"===e&&await async function(){kr.start("Create compiler"),kr.start("Reading Stylesheets");let e=document.querySelectorAll(`style[type="${pr}"]`),t="";for(let r of e)zr(r),t+=r.textContent+"\n";if(t.includes("@import")||(t=`@import "tailwindcss";${t}`),kr.end("Reading Stylesheets",{size:t.length,changed:mr!==t}),mr!==t){mr=t,kr.start("Compile CSS");try{fr=await ur(t,{base:"/",loadStylesheet:br,loadModule:yr})}finally{kr.end("Compile CSS"),kr.end("Create compiler")}hr.clear()}}(),kr.start("Build"),await async function(e){if(!fr)return;let t=new Set;kr.start("Collect classes");for(let e of document.querySelectorAll("[class]"))for(let r of e.classList)hr.has(r)||(hr.add(r),t.add(r));kr.end("Collect classes",{count:t.size}),(0!==t.size||"incremental"!==e)&&(kr.start("Build utilities"),gr.textContent=fr.build(Array.from(t)),kr.end("Build utilities"))}(e),kr.end("Build"),kr.end(`Build #${t} (${e})`)})).catch((e=>kr.error(e)))}var $r=new MutationObserver((()=>xr("full")));function zr(e){$r.observe(e,{attributes:!0,attributeFilter:["type"],characterData:!0,subtree:!0,childList:!0})}new MutationObserver((e=>{let t=0,r=0;for(let n of e){for(let e of n.addedNodes)e.nodeType===Node.ELEMENT_NODE&&"STYLE"===e.tagName&&e.getAttribute("type")===pr&&(zr(e),t++);for(let e of n.addedNodes)1===e.nodeType&&e!==gr&&r++;"attributes"===n.type&&r++}return t>0?xr("full"):r>0?xr("incremental"):void 0})).observe(document.documentElement,{attributes:!0,attributeFilter:["class"],childList:!0,subtree:!0}),xr("full"),document.head.append(gr)})(); +//# sourceMappingURL=/sm/3e939f8b5fa56a773791cb5f5d3084a0ef1244da520b676a8ece53c45a91b186.map \ No newline at end of file diff --git a/mvac/frontend/unocss/tailwind_reset.css b/mvac/frontend/unocss/tailwind_reset.css new file mode 100644 index 0000000..1184689 --- /dev/null +++ b/mvac/frontend/unocss/tailwind_reset.css @@ -0,0 +1,8 @@ +/** + * Minified by jsDelivr using clean-css v5.3.3. + * Original file: /npm/@unocss/reset@66.1.2/tailwind.css + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +*,::after,::before{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color,#e5e7eb)}::after,::before{--un-content:''}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none} +/*# sourceMappingURL=/sm/f313dd8f516db176bb3bc52901eb0cbd46e85903faf39d220fe82788a3a65d7d.map */ \ No newline at end of file diff --git a/mvac/frontend/unocss/unocss.js b/mvac/frontend/unocss/unocss.js new file mode 100644 index 0000000..d627c01 --- /dev/null +++ b/mvac/frontend/unocss/unocss.js @@ -0,0 +1,17 @@ +/** + * Skipped minification because the original files appears to be already minified. + * Original file: /npm/@unocss/runtime@66.1.2/uno.global.js + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +"use strict";(()=>{var Ku=Object.defineProperty;var Gu=(e,t)=>{for(var r in t)Ku(e,r,{get:t[r],enumerable:!0})};var Je="default",Nt="preflights",Hu="shortcuts",qu="imports",Mo={[qu]:-200,[Nt]:-100,[Hu]:-10,[Je]:0};var Kt=/[\\:]?[\s'"`;{}]+/g;function Yu(e){return e.split(Kt)}var Gt={name:"@unocss/core/extractor-split",order:0,extract({code:e}){return Yu(e)}};function C(e=[]){return Array.isArray(e)?e:[e]}function ne(e){return Array.from(new Set(e))}function yn(e,t){return e.reduce((r,n)=>(r.findIndex(i=>t(n,i))===-1&&r.push(n),r),[])}function V(e){return typeof e=="string"}var Qe=class extends Set{_map=new Map;constructor(t){if(super(),t)for(let r of t)this.add(r)}add(t){return this._map.set(t,(this._map.get(t)??0)+1),super.add(t)}delete(t){return this._map.has(t)?(this._map.delete(t),super.delete(t)):!1}clear(){this._map.clear(),super.clear()}getCount(t){return this._map.get(t)??0}setCount(t,r){return this._map.set(t,r),super.add(t)}};function Ht(e){return e instanceof Qe}function ue(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Q(e){let t=e.length,r=-1,n,o="",i=e.charCodeAt(0);for(;++r=1&&n<=31||n===127||r===0&&n>=48&&n<=57||r===1&&n>=48&&n<=57&&i===45){o+=`\\${n.toString(16)} `;continue}if(r===0&&t===1&&n===45){o+=`\\${e.charAt(r)}`;continue}if(n>=128||n===45||n===95||n>=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122){o+=e.charAt(r);continue}o+=`\\${e.charAt(r)}`}return o}var qt=Q;function Fo(){return{events:{},emit(e,...t){(this.events[e]||[]).forEach(r=>r(...t))},on(e,t){return(this.events[e]=this.events[e]||[]).push(t),()=>this.events[e]=(this.events[e]||[]).filter(r=>r!==t)}}}var Xu=/[\w\u00A0-\uFFFF%-?]/;function _o(e=""){return Xu.test(e)}function Lo(e){return typeof e=="function"?{match:e}:e}function $n(e){return e.length===3}function Yt(e){return e!=null}function Wo(){}var Xt=class{_map=new Map;get(t,r){let n=this._map.get(t);if(n)return n.get(r)}getFallback(t,r,n){let o=this._map.get(t);return o||(o=new Map,this._map.set(t,o)),o.has(r)||o.set(r,n),o.get(r)}set(t,r,n){let o=this._map.get(t);return o||(o=new Map,this._map.set(t,o)),o.set(r,n),this}has(t,r){return this._map.get(t)?.has(r)}delete(t,r){return this._map.get(t)?.delete(r)||!1}deleteTop(t){return this._map.delete(t)}map(t){return Array.from(this._map.entries()).flatMap(([r,n])=>Array.from(n.entries()).map(([o,i])=>t(i,r,o)))}},Zt=class extends Map{getFallback(t,r){let n=this.get(t);return n===void 0?(this.set(t,r),r):n}map(t){let r=[];return this.forEach((n,o)=>{r.push(t(n,o))}),r}flatMap(t){let r=[];return this.forEach((n,o)=>{r.push(...t(n,o))}),r}};function tt(e){return V(e)?e:(Array.isArray(e)?e:Object.entries(e)).filter(t=>t[1]!=null)}function vn(e){return Array.isArray(e)?e.find(t=>!Array.isArray(t)||Array.isArray(t[0]))?e.map(t=>tt(t)):[e]:[tt(e)]}function Zu(e){return e.filter(([t,r],n)=>{if(t.startsWith("$$"))return!1;for(let o=n-1;o>=0;o--)if(e[o][0]===t&&e[o][1]===r)return!1;return!0})}function We(e){return e==null?"":Zu(e).map(([t,r])=>r!=null&&typeof r!="function"?`${t}:${r};`:void 0).filter(Boolean).join("")}function Jt(e){return e&&typeof e=="object"&&!Array.isArray(e)}function wn(e,t,r=!1){let n=e,o=t;if(Array.isArray(o))return r&&Array.isArray(o)?[...n,...o]:[...o];let i={...n};return Jt(n)&&Jt(o)&&Object.keys(o).forEach(s=>{Jt(n[s])&&Jt(o[s])||Array.isArray(n[s])&&Array.isArray(o[s])?i[s]=wn(n[s],o[s],r):Object.assign(i,{[s]:o[s]})}),i}function et(e){let t,r,n;if(Array.isArray(e)){for(r=Array.from({length:t=e.length});t--;)r[t]=(n=e[t])&&typeof n=="object"?et(n):n;return r}if(Object.prototype.toString.call(e)==="[object Object]"){r={};for(t in e)t==="__proto__"?Object.defineProperty(r,t,{value:et(e[t]),configurable:!0,enumerable:!0,writable:!0}):r[t]=(n=e[t])&&typeof n=="object"?et(n):n;return r}return e}function Uo(e){return V(e[0])}function Bo(e){return V(e[0])}var Qt={};function Ju(e=["-",":"]){let t=e.join("|");return Qt[t]||(Qt[t]=new RegExp(`((?:[!@<~\\w+:_-]|\\[&?>?:?\\S*\\])+?)(${t})\\(((?:[~!<>\\w\\s:/\\\\,%#.$?-]|\\[[^\\]]*?\\])+?)\\)(?!\\s*?=>)`,"gm")),Qt[t].lastIndex=0,Qt[t]}function Qu(e,t=["-",":"],r=5){let n=Ju(t),o,i=e.toString(),s=new Set,a=new Map;do o=!1,i=i.replace(n,(l,p,d,h,m)=>{if(!t.includes(d))return l;o=!0,s.add(p+d);let g=m+p.length+d.length+1,b={length:l.length,items:[]};a.set(m,b);for(let $ of[...h.matchAll(/\S+/g)]){let R=g+$.index,v=a.get(R)?.items;v?a.delete(R):v=[{offset:R,length:$[0].length,className:$[0]}];for(let T of v)T.className=T.className==="~"?p:T.className.replace(/^(!?)(.*)/,`$1${p}${d}$2`),b.items.push(T)}return"$".repeat(l.length)}),r-=1;while(o&&r);let c;if(typeof e=="string"){c="";let l=0;for(let[p,d]of a)c+=e.slice(l,p),c+=d.items.map(h=>h.className).join(" "),l=p+d.length;c+=e.slice(l)}else{c=e;for(let[l,p]of a)c.overwrite(l,l+p.length,p.items.map(d=>d.className).join(" "))}return{prefixes:Array.from(s),hasChanged:o,groupsByOffset:a,get expanded(){return c.toString()}}}function Do(e,t=["-",":"],r=5){let n=Qu(e,t,r);return typeof e=="string"?n.expanded:e}var Io=new Set;function No(e){Io.has(e)||(console.warn("[unocss]",e),Io.add(e))}function Ho(e){return C(e).flatMap(t=>Array.isArray(t)?[t]:Object.entries(t))}var Ko="_uno_resolved";async function ef(e){let t=typeof e=="function"?await e():await e;if(Ko in t)return t;t={...t},Object.defineProperty(t,Ko,{value:!0,enumerable:!1});let r=t.shortcuts?Ho(t.shortcuts):void 0;if(t.shortcuts=r,t.prefix||t.layer){let n=o=>{o[2]||(o[2]={});let i=o[2];i.prefix==null&&t.prefix&&(i.prefix=C(t.prefix)),i.layer==null&&t.layer&&(i.layer=t.layer)};r?.forEach(n),t.rules?.forEach(n)}return t}async function qo(e){let t=await ef(e);if(!t.presets)return[t];let r=(await Promise.all((t.presets||[]).flatMap(C).flatMap(qo))).flat();return[t,...r]}function tf(e){if(e.length===0)return{};let t=[],r=[],n=!1,o=[],i=[],s=[];for(let c of e){if(c.pipeline===!1){n=!0;break}else c.pipeline?.include&&t.push(c.pipeline.include),c.pipeline?.exclude&&r.push(c.pipeline.exclude);c.filesystem&&o.push(c.filesystem),c.inline&&i.push(c.inline),c.plain&&s.push(c.plain)}let a={pipeline:n?!1:{include:ne(Go(...t)),exclude:ne(Go(...r))}};return o.length&&(a.filesystem=ne(o.flat())),i.length&&(a.inline=ne(i.flat())),s.length&&(a.plain=ne(s.flat())),a}async function kn(e={},t={}){let r=Object.assign({},t,e),n=yn((await Promise.all((r.presets||[]).flatMap(C).flatMap(qo))).flat(),(y,x)=>y.name===x.name),o=[...n.filter(y=>y.enforce==="pre"),...n.filter(y=>!y.enforce),...n.filter(y=>y.enforce==="post")],i=[...o,r],s=[...i].reverse(),a=Object.assign({},Mo,...i.map(y=>y.layers));function c(y){return ne(i.flatMap(x=>C(x[y]||[])))}let l=c("extractors"),p=s.find(y=>y.extractorDefault!==void 0)?.extractorDefault;p===void 0&&(p=Gt),p&&!l.includes(p)&&l.unshift(p),l.sort((y,x)=>(y.order||0)-(x.order||0));let d=c("rules"),h={},m=d.length,g=d.filter(y=>Uo(y)?(C(y[2]?.prefix||"").forEach(w=>{h[w+y[0]]=y}),!1):!0).reverse(),b=rf(i.map(y=>y.theme)),$=c("extendTheme");for(let y of $)b=y(b)||b;let R={templates:ne(i.flatMap(y=>C(y.autocomplete?.templates))),extractors:i.flatMap(y=>C(y.autocomplete?.extractors)).sort((y,x)=>(y.order||0)-(x.order||0)),shorthands:nf(i.map(y=>y.autocomplete?.shorthands||{}))},v=c("separators");v.length||(v=[":","-"]);let T=c("content"),H=tf(T),P={mergeSelectors:!0,warn:!0,sortLayers:y=>y,...r,blocklist:c("blocklist"),presets:o,envMode:r.envMode||"build",shortcutsLayer:r.shortcutsLayer||"shortcuts",layers:a,theme:b,rules:d,rulesSize:m,rulesDynamic:g,rulesStaticMap:h,preprocess:c("preprocess"),postprocess:c("postprocess"),preflights:c("preflights"),autocomplete:R,variants:c("variants").map(Lo).sort((y,x)=>(y.order||0)-(x.order||0)),shortcuts:Ho(c("shortcuts")).reverse(),extractors:l,safelist:c("safelist"),separators:v,details:r.details??r.envMode==="dev",content:H,transformers:yn(c("transformers"),(y,x)=>y.name===x.name)};for(let y of i)y?.configResolved?.(P);return P}function rf(e){return e.map(t=>t?et(t):{}).reduce((t,r)=>wn(t,r),{})}function nf(e){return e.reduce((t,r)=>{let n={};for(let o in r){let i=r[o];Array.isArray(i)?n[o]=`(${i.join("|")})`:n[o]=i}return{...t,...n}},{})}function Go(...e){return e.flatMap(of)}function of(e){return Array.isArray(e)?e:e?[e]:[]}var Yo="66.1.2";var $e={shortcutsNoMerge:"$$symbol-shortcut-no-merge",noMerge:"$$symbol-no-merge",variants:"$$symbol-variants",parent:"$$symbol-parent",selector:"$$symbol-selector",layer:"$$symbol-layer",sort:"$$symbol-sort"},Sn=class e{constructor(t={},r={}){this.userConfig=t;this.defaults=r}version=Yo;events=Fo();config=void 0;cache=new Map;blocked=new Set;parentOrders=new Map;activatedRules=new Set;static async create(t={},r={}){let n=new e(t,r);return n.config=await kn(n.userConfig,n.defaults),n.events.emit("config",n.config),n}async setConfig(t,r){t&&(r&&(this.defaults=r),this.userConfig=t,this.blocked.clear(),this.parentOrders.clear(),this.activatedRules.clear(),this.cache.clear(),this.config=await kn(t,this.defaults),this.events.emit("config",this.config))}async applyExtractors(t,r,n=new Set){let o={original:t,code:t,id:r,extracted:n,envMode:this.config.envMode};for(let i of this.config.extractors){let s=await i.extract?.(o);if(s)if(Ht(s)&&Ht(n))for(let a of s)n.setCount(a,n.getCount(a)+s.getCount(a));else for(let a of s)n.add(a)}return n}makeContext(t,r){let n={rawSelector:t,currentSelector:r[1],theme:this.config.theme,generator:this,symbols:$e,variantHandlers:r[2],constructCSS:(...o)=>this.constructCustomCSS(n,...o),variantMatch:r};return n}async parseToken(t,r){if(this.blocked.has(t))return;let n=`${t}${r?` ${r}`:""}`;if(this.cache.has(n))return this.cache.get(n);let o=t;for(let c of this.config.preprocess)o=c(t);if(this.isBlocked(o)){this.blocked.add(t),this.cache.set(n,null);return}let i=await this.matchVariants(t,o);if(i.every(c=>!c||this.isBlocked(c[1]))){this.blocked.add(t),this.cache.set(n,null);return}let s=async c=>{let l=this.makeContext(t,[r||c[0],c[1],c[2],c[3]]);this.config.details&&(l.variants=[...c[3]]);let p=await this.expandShortcut(l.currentSelector,l);return p?await this.stringifyShortcuts(l.variantMatch,l,p[0],p[1]):(await this.parseUtil(l.variantMatch,l))?.map(h=>this.stringifyUtil(h,l)).filter(Yt)},a=(await Promise.all(i.map(c=>s(c)))).flat().filter(c=>!!c);if(a?.length)return this.cache.set(n,a),a;this.cache.set(n,null)}async generate(t,r={}){let{id:n,scope:o,preflights:i=!0,safelist:s=!0,minify:a=!1,extendedInfo:c=!1}=r,l=V(t)?await this.applyExtractors(t,n,c?new Qe:new Set):Array.isArray(t)?new Set(t):t;if(s){let x={generator:this,theme:this.config.theme};this.config.safelist.flatMap(w=>typeof w=="function"?w(x):w).forEach(w=>{let S=w.trim();S&&!l.has(S)&&l.add(S)})}let p=a?"":` +`,d=new Set([Je]),h=c?new Map:new Set,m=new Map,g={},b=Array.from(l).map(async x=>{if(h.has(x))return;let w=await this.parseToken(x);if(w!=null){h instanceof Map?h.set(x,{data:w,count:Ht(l)?l.getCount(x):-1}):h.add(x);for(let S of w){let Z=S[3]||"",J=S[4]?.layer;m.has(Z)||m.set(Z,[]),m.get(Z).push(S),J&&d.add(J)}}});await Promise.all(b),await(async()=>{if(!i)return;let x={generator:this,theme:this.config.theme},w=new Set([]);this.config.preflights.forEach(({layer:S=Nt})=>{d.add(S),w.add(S)}),g=Object.fromEntries(await Promise.all(Array.from(w).map(async S=>{let J=(await Promise.all(this.config.preflights.filter(ce=>(ce.layer||Nt)===S).map(async ce=>await ce.getCSS(x)))).filter(Boolean).join(p);return[S,J]})))})();let $=this.config.sortLayers(Array.from(d).sort((x,w)=>(this.config.layers[x]??0)-(this.config.layers[w]??0)||x.localeCompare(w))),R={},v=this.config.outputToCssLayers,T=x=>{let w=x;return typeof v=="object"&&(w=v.cssLayerName?.(x)),w===null?null:w??x},H=(x=Je)=>{if(R[x])return R[x];let w=Array.from(m).sort((J,ce)=>(this.parentOrders.get(J[0])??0)-(this.parentOrders.get(ce[0])??0)||J[0]?.localeCompare(ce[0]||"")||0).map(([J,ce])=>{let E=ce.length,A=ce.filter(B=>(B[4]?.layer||Je)===x).sort((B,le)=>B[0]-le[0]||(B[4]?.sort||0)-(le[4]?.sort||0)||B[5]?.currentSelector?.localeCompare(le[5]?.currentSelector??"")||B[1]?.localeCompare(le[1]||"")||B[2]?.localeCompare(le[2]||"")||0).map(([,B,le,,It,,bn])=>[[[(B&&cf(B,o))??"",It?.sort??0]],le,!!(bn??It?.noMerge)]);if(!A.length)return;let U=A.reverse().map(([B,le,It],bn)=>{if(!It&&this.config.mergeSelectors)for(let Re=bn+1;ReRe[1]-me[1]||Re[0]?.localeCompare(me[0]||"")||0).map(Re=>Re[0]).filter(Boolean)):[];return xn.length?`${xn.join(`,${p}`)}{${le}}`:le}).filter(Boolean),D=Array.from(new Set(U)).reverse().join(p);if(!J)return D;let X=J.split(" $$ ");return`${X.join("{")}{${p}${D}${p}${"}".repeat(X.length)}`}).filter(Boolean).join(p);i&&(w=[g[x],w].filter(Boolean).join(p));let S;v&&w&&(S=T(x),S!==null&&(w=`@layer ${S}{${p}${w}${p}}`));let Z=a?"":`/* layer: ${x}${S&&S!==x?`, alias: ${S}`:""} */${p}`;return R[x]=w?Z+w:""},P=(x=$,w)=>{let S=x.filter(Z=>!w?.includes(Z));return[v&&S.length>0?`@layer ${S.map(T).filter(Yt).join(", ")};`:void 0,...S.map(Z=>H(Z)||"")].filter(Boolean).join(p)};return{get css(){return P()},layers:$,matched:h,getLayers:P,getLayer:H,setLayer:async(x,w)=>{let S=await w(H(x));return R[x]=S,S}}}async matchVariants(t,r){let n={rawSelector:t,theme:this.config.theme,generator:this},o=async i=>{let s=!0,[,,a,c]=i;for(;s;){s=!1;let l=i[1];for(let p of this.config.variants){if(!p.multiPass&&c.has(p))continue;let d=await p.match(l,n);if(d){if(V(d)){if(d===l)continue;d={matcher:d}}if(Array.isArray(d)){if(!d.length)continue;if(d.length===1)d=d[0];else{if(p.multiPass)throw new Error("multiPass can not be used together with array return variants");let h=d.map(m=>{let g=m.matcher??l,b=[m,...a],$=new Set(c);return $.add(p),[i[0],g,b,$]});return(await Promise.all(h.map(m=>o(m)))).flat()}}i[1]=d.matcher??l,a.unshift(d),c.add(p),s=!0;break}}if(!s)break;if(a.length>500)throw new Error(`Too many variants applied to "${t}"`)}return[i]};return await o([t,r||t,[],new Set])}applyVariants(t,r=t[4],n=t[1]){let i=r.slice().sort((l,p)=>(l.order||0)-(p.order||0)).reduceRight((l,p)=>d=>{let h=p.body?.(d.entries)||d.entries,m=Array.isArray(p.parent)?p.parent:[p.parent,void 0],g=p.selector?.(d.selector,h);return(p.handle??uf)({...d,entries:h,selector:g||d.selector,parent:m[0]||d.parent,parentOrder:m[1]||d.parentOrder,layer:p.layer||d.layer,sort:p.sort||d.sort},l)},l=>l)({prefix:"",selector:lf(n),pseudo:"",entries:t[2]}),{parent:s,parentOrder:a}=i;s!=null&&a!=null&&this.parentOrders.set(s,a);let c={selector:[i.prefix,i.selector,i.pseudo].join(""),entries:i.entries,parent:s,layer:i.layer,sort:i.sort,noMerge:i.noMerge};for(let l of this.config.postprocess)l(c);return c}constructCustomCSS(t,r,n){let o=tt(r);if(V(o))return o;let{selector:i,entries:s,parent:a}=this.applyVariants([0,n||t.rawSelector,o,void 0,t.variantHandlers]),c=`${i}{${We(s)}}`;return a?`${a}{${c}}`:c}async parseUtil(t,r,n=!1,o){let i=V(t)?await this.matchVariants(t):[t],s=async([c,l,p])=>{this.config.details&&(r.rules=r.rules??[]);let d=this.config.rulesStaticMap[l];if(d&&d[1]&&(n||!d[2]?.internal)){this.config.details&&r.rules.push(d);let m=this.config.rules.indexOf(d),g=vn(d[1]).filter($=>$.length),b=d[2];if(g.length)return r.generator.activatedRules.add(d),g.map($=>V($)?[m,$,b]:[m,c,$,b,p])}r.variantHandlers=p;let{rulesDynamic:h}=this.config;for(let m of h){let[g,b,$]=m;if($?.internal&&!n)continue;let R=l;if($?.prefix){let P=C($.prefix);if(o){let y=C(o);if(!P.some(x=>y.includes(x)))continue}else{let y=P.find(x=>l.startsWith(x));if(y==null)continue;R=l.slice(y.length)}}let v=R.match(g);if(!v)continue;let T=await b(v,r);if(!T)continue;if(this.config.details&&r.rules.push(m),typeof T!="string")if(Symbol.asyncIterator in T){let P=[];for await(let y of T)y&&P.push(y);T=P}else Symbol.iterator in T&&!Array.isArray(T)&&(T=Array.from(T).filter(Yt));let H=vn(T).filter(P=>P.length);if(H.length){r.generator.activatedRules.add(m);let P=this.config.rules.indexOf(m);return H.map(y=>{if(V(y))return[P,y,$];let x=p,w=$;for(let S of y)S[0]===$e.variants?typeof S[1]=="function"?x=S[1](x)||x:x=[...C(S[1]),...x]:S[0]===$e.parent?x=[{parent:S[1]},...x]:S[0]===$e.selector?x=[{selector:S[1]},...x]:S[0]===$e.layer?x=[{layer:S[1]},...x]:S[0]===$e.sort?w={...w,sort:S[1]}:S[0]===$e.noMerge&&(w={...w,noMerge:S[1]});return[P,c,y,w,x]})}}},a=(await Promise.all(i.map(c=>s(c)))).flat().filter(c=>!!c);if(a.length)return a}stringifyUtil(t,r){if(!t)return;if($n(t))return[t[0],void 0,t[1],void 0,t[2],this.config.details?r:void 0,void 0];let{selector:n,entries:o,parent:i,layer:s,sort:a,noMerge:c}=this.applyVariants(t),l=We(o);if(!l)return;let{layer:p,sort:d,...h}=t[3]??{},m={...h,layer:s??p,sort:a??d};return[t[0],n,l,i,m,this.config.details?r:void 0,c]}async expandShortcut(t,r,n=5){if(n===0)return;let o=this.config.details?l=>{r.shortcuts=r.shortcuts??[],r.shortcuts.push(l)}:Wo,i,s,a,c;for(let l of this.config.shortcuts){let p=t;if(l[2]?.prefix){let h=C(l[2].prefix).find(m=>t.startsWith(m));if(h==null)continue;p=t.slice(h.length)}if(Bo(l)){if(l[0]===p){i=i||l[2],s=l[1],o(l);break}}else{let d=p.match(l[0]);if(d&&(s=l[1](d,r)),s){i=i||l[2],o(l);break}}}if(s&&(a=ne(C(s).filter(V).map(l=>Do(l.trim()).split(/\s+/g)).flat()),c=C(s).filter(l=>!V(l)).map(l=>({handles:[],value:l}))),!s){let l=V(t)?await this.matchVariants(t):[t];for(let p of l){let[d,h,m]=p;if(d!==h){let g=await this.expandShortcut(h,r,n-1);g&&(a=g[0].filter(V).map(b=>d.replace(h,b)),c=g[0].filter(b=>!V(b)).map(b=>({handles:[...b.handles,...m],value:b.value})))}}}if(!(!a?.length&&!c?.length))return[[await Promise.all(C(a).map(async l=>(await this.expandShortcut(l,r,n-1))?.[0]||[l])),c].flat(2).filter(l=>!!l),i]}async stringifyShortcuts(t,r,n,o={layer:this.config.shortcutsLayer}){let i=new Zt,s=(await Promise.all(ne(n).map(async p=>{let d=V(p)?await this.parseUtil(p,r,!0,o.prefix):[[Number.POSITIVE_INFINITY,"{inline}",tt(p.value),void 0,p.handles]];return!d&&this.config.warn&&No(`unmatched utility "${p}" in shortcut "${t[1]}"`),d||[]}))).flat(1).filter(Boolean).sort((p,d)=>p[0]-d[0]),[a,,c]=t,l=[];for(let p of s){if($n(p)){l.push([p[0],void 0,p[1],void 0,p[2],r,void 0]);continue}let{selector:d,entries:h,parent:m,sort:g,noMerge:b,layer:$}=this.applyVariants(p,[...p[4],...c],a);i.getFallback($??o.layer,new Xt).getFallback(d,m,[[],p[0]])[0].push([h,!!(b??p[3]?.noMerge),g??0])}return l.concat(i.flatMap((p,d)=>p.map(([h,m],g,b)=>{let $=(v,T,H)=>{let P=Math.max(...H.map(x=>x[1])),y=H.map(x=>x[0]);return(v?[y.flat(1)]:y).map(x=>{let w=We(x);if(w)return[m,g,w,b,{...o,noMerge:T,sort:P,layer:d},r,void 0]})};return[[h.filter(([,v])=>v).map(([v,,T])=>[v,T]),!0],[h.filter(([,v])=>!v).map(([v,,T])=>[v,T]),!1]].map(([v,T])=>[...$(!1,T,v.filter(([H])=>H.some(P=>P[0]===$e.shortcutsNoMerge))),...$(!0,T,v.filter(([H])=>H.every(P=>P[0]!==$e.shortcutsNoMerge)))])}).flat(2).filter(Boolean)))}isBlocked(t){return!t||this.config.blocklist.map(r=>Array.isArray(r)?r[0]:r).some(r=>typeof r=="function"?r(t):V(r)?r===t:r.test(t))}getBlocked(t){let r=this.config.blocklist.find(n=>{let o=Array.isArray(n)?n[0]:n;return typeof o=="function"?o(t):V(o)?o===t:o.test(t)});return r?Array.isArray(r)?r:[r,void 0]:void 0}};async function Zo(e,t){return await Sn.create(e,t)}var Jo=/\s\$\$\s+/g;function af(e){return Jo.test(e)}function cf(e,t){return af(e)?e.replace(Jo,t?` ${t} `:" "):t?`${t} ${e}`:e}var Xo=/^\[(.+?)(~?=)"(.*)"\]$/;function lf(e){return Xo.test(e)?e.replace(Xo,(t,r,n,o)=>`[${qt(r)}${n}"${qt(o)}"]`):`.${qt(e)}`}function uf(e,t){return t(e)}function ff(e){let t,r,n=2166136261;for(t=0,r=e.length;t>>0).toString(36)}`.slice(-6)}function Qo(e,t,r,n){for(let o of Array.from(e.matchAll(r)))if(o!=null){let i=o[0],s=`${n}${ff(i)}`;t.set(s,i),e=e.replace(i,s)}return e}function ei(e,t){for(let[r,n]of t.entries())e=e.replaceAll(r,n);return e}var pf=/\/\/#\s*sourceMappingURL=.*\n?/g;function ti(e){return e.includes("sourceMappingURL=")?e.replace(pf,""):e}var df=/(?:[\w&:[\]-]|\[\S{1,64}=\S{1,64}\]){1,64}\[\\?['"]?\S{1,64}?['"]\]\]?[\w:-]{0,64}/g,mf=/\[(\\\W|[\w-]){1,64}:[^\s:]{0,64}?("\S{1,64}?"|'\S{1,64}?'|`\S{1,64}?`|[^\s:]{1,64}?)[^\s:]{0,64}?\)?\]/g,hf=/^\[(?:\\\W|[\w-]){1,64}:['"]?\S{1,64}?['"]?\]$/;function gf(e){let t=[];for(let o of e.matchAll(mf))o.index!==0&&!/^[\s'"`]/.test(e[o.index-1]??"")||t.push(o[0]);for(let o of e.matchAll(df))t.push(o[0]);let r=new Map,n="@unocss-skip-arbitrary-brackets";return e=Qo(e,r,/-\[(?!&.+?;)[^\]]*\]/g,n),e&&e.split(Kt).forEach(o=>{o.includes(n)&&(o=ei(o,r)),_o(o)&&!hf.test(o)&&t.push(o)}),t}function ri(){return{name:"@unocss/extractor-arbitrary-variants",order:0,extract({code:e}){return gf(ti(e))}}}function ni(e){if(e.preflight)return[{layer:"preflights",getCSS({theme:t,generator:r}){if(t.preflightBase){let n=Object.entries(t.preflightBase);if(e.preflight==="on-demand"){let o=new Set(Array.from(r.activatedRules).map(i=>i[2]?.custom?.preflightKeys).filter(Boolean).flat());n=n.filter(([i])=>o.has(i))}if(n.length>0){let o=We(n);return e.variablePrefix!=="un-"&&(o=o.replace(/--un-/g,`--${e.variablePrefix}`)),C(t.preflightRoot??["*,::before,::after","::backdrop"]).map(s=>`${s}{${o}}`).join("")}}}}]}function ve(e,t,r){if(e==="")return;let n=e.length,o=0,i=!1,s=0;for(let a=0;ar)return;let i=fe(e,"(",")",t);if(!i)return;let[s,a]=i;n.push(s),e=a}if(n.length>0)return n}var Cn=["hsl","hsla","hwb","lab","lch","oklab","oklch","rgb","rgba"],oi=["%alpha",""],bf=new RegExp(oi.map(e=>ue(e)).join("|"),"g");function q(e=""){let t=xf(e);if(t==null||t===!1)return;let{type:r,components:n,alpha:o}=t,i=r.toLowerCase();if(n.length!==0&&!(Cn.includes(i)&&![1,3].includes(n.length)))return{type:i,components:n.map(s=>typeof s=="string"?s.trim():s),alpha:typeof o=="string"?o.trim():o}}function oe(e){let t=e.alpha??1;return typeof t=="string"&&oi.includes(t)?1:t}function z(e,t){if(typeof e=="string")return e.replace(bf,`${t??1}`);let{components:r}=e,{alpha:n,type:o}=e;return n=t??n,o=o.toLowerCase(),["hsla","rgba"].includes(o)?`${o}(${r.join(", ")}${n==null?"":`, ${n}`})`:(n=n==null?"":` / ${n}`,Cn.includes(o)?`${o}(${r.join(" ")}${n})`:`color(${o} ${r.join(" ")}${n})`)}function xf(e){if(!e)return;let t=yf(e);if(t!=null||(t=$f(e),t!=null)||(t=vf(e),t!=null)||(t=kf(e),t!=null)||(t=Sf(e),t!=null))return t}function yf(e){let[,t]=e.match(/^#([\da-f]+)$/i)||[];if(t)switch(t.length){case 3:case 4:let r=Array.from(t,o=>Number.parseInt(o,16)).map(o=>o<<4|o);return{type:"rgb",components:r.slice(0,3),alpha:t.length===3?void 0:Math.round(r[3]/255*100)/100};case 6:case 8:let n=Number.parseInt(t,16);return{type:"rgb",components:t.length===6?[n>>16&255,n>>8&255,n&255]:[n>>24&255,n>>16&255,n>>8&255],alpha:t.length===6?void 0:Math.round((n&255)/255*100)/100}}}function $f(e){let t={rebeccapurple:[102,51,153,1]}[e];if(t!=null)return{type:"rgb",components:t.slice(0,3),alpha:t[3]}}function vf(e){let t=e.match(/^(rgb|rgba|hsl|hsla)\((.+)\)$/i);if(!t)return;let[,r,n]=t,o=Ee(n,",",5);if(o){if([3,4].includes(o.length))return{type:r,components:o.slice(0,3),alpha:o[3]};if(o.length!==1)return!1}}var wf=new RegExp(`^(${Cn.join("|")})\\((.+)\\)$`,"i");function kf(e){let t=e.match(wf);if(!t)return;let[,r,n]=t,o=ii(`${r} ${n}`);if(o){let{alpha:i,components:[s,...a]}=o;return{type:s,components:a,alpha:i}}}function Sf(e){let t=e.match(/^color\((.+)\)$/);if(!t)return;let r=ii(t[1]);if(r){let{alpha:n,components:[o,...i]}=r;return{type:o,components:i,alpha:n}}}function ii(e){let t=Ee(e," ");if(!t)return;let r=t.length;if(t[r-2]==="/")return{components:t.slice(0,r-2),alpha:t[r-1]};if(t[r-2]!=null&&(t[r-2].endsWith("/")||t[r-1].startsWith("/"))){let i=t.splice(r-2);t.push(i.join(" ")),--r}let n=Ee(t[r-1],"/",2);if(!n)return;if(n.length===1||n[n.length-1]==="")return{components:t};let o=n.pop();return t[r-1]=n.join("/"),{components:t,alpha:o}}function er(e){let t=function(n){let o=this.__options?.sequence||[];this.__options.sequence=[];for(let i of o){let s=e[i](n);if(s!=null)return s}};function r(n,o){return n.__options||(n.__options={sequence:[]}),n.__options.sequence.push(o),n}for(let n of Object.keys(e))Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get(){return r(this,n)}});return t}var si="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",li=new Uint8Array(64),Cf=new Uint8Array(128);for(let e=0;e>>=5,n>0&&(o|=32),e.write(li[o])}while(n>0);return t}var ai=1024*16,ci=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(e){return Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString()}}:{decode(e){let t="";for(let r=0;r0?r+ci.decode(t.subarray(0,n)):r}};function ui(e){let t=new Rn,r=0,n=0,o=0,i=0;for(let s=0;s0&&t.write(59),a.length===0)continue;let c=0;for(let l=0;l0&&t.write(44),c=rt(t,p[0],c),p.length!==1&&(r=rt(t,p[1],r),n=rt(t,p[2],n),o=rt(t,p[3],o),p.length!==4&&(i=rt(t,p[4],i)))}}return t.flush()}var tr=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}},rr=class e{constructor(t,r,n){this.start=t,this.end=r,this.original=n,this.intro="",this.outro="",this.content=n,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.startglobalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var Ef=Rf(),En=class{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=ui(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+Ef(this.toString())}};function Tf(e){let t=e.split(` +`),r=t.filter(i=>/^\t+/.test(i)),n=t.filter(i=>/^ {2,}/.test(i));if(r.length===0&&n.length===0)return null;if(r.length>=n.length)return" ";let o=n.reduce((i,s)=>{let a=/^ +/.exec(s)[0].length;return Math.min(a,i)},1/0);return new Array(o+1).join(" ")}function jf(e,t){let r=e.split(/[/\\]/),n=t.split(/[/\\]/);for(r.pop();r[0]===n[0];)r.shift(),n.shift();if(r.length){let o=r.length;for(;o--;)r[o]=".."}return r.concat(n).join("/")}var zf=Object.prototype.toString;function Af(e){return zf.call(e)==="[object Object]"}function fi(e){let t=e.split(` +`),r=[];for(let n=0,o=0;n>1;o=0&&i>s;){let l=[this.generatedCodeColumn,t,n.line,n.column];o>=0&&l.push(o),this.rawSegments.push(l),this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,a=s,s=r.indexOf(` +`,s+1)}let c=[this.generatedCodeColumn,t,n.line,n.column];o>=0&&c.push(o),this.rawSegments.push(c),this.advance(r.slice(a+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(r));this.pending=null}addUneditedChunk(t,r,n,o,i){let s=r.start,a=!0,c=!1;for(;s1){for(let n=0;n{let a=i(s.start);s.intro.length&&o.advance(s.intro),s.edited?o.addEdit(r,s.content,a,s.storeName?n.indexOf(s.original):-1):o.addUneditedChunk(r,s,this.original,a,this.sourcemapLocations),s.outro.length&&o.advance(s.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?jf(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:n,mappings:o.raw,x_google_ignoreList:this.ignoreList?[r]:void 0}}generateMap(t){return new En(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=Tf(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,r){let n=/^[^\r\n]/gm;if(Af(t)&&(r=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;r=r||{};let o={};r.exclude&&(typeof r.exclude[0]=="number"?[r.exclude]:r.exclude).forEach(p=>{for(let d=p[0];di?`${t}${l}`:(i=!0,l);this.intro=this.intro.replace(n,s);let a=0,c=this.firstChunk;for(;c;){let l=c.end;if(c.edited)o[a]||(c.content=c.content.replace(n,s),c.content.length&&(i=c.content[c.content.length-1]===` +`));else for(a=c.start;a=t&&n<=r)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(r),this._split(n);let o=this.byStart[t],i=this.byEnd[r],s=o.previous,a=i.next,c=this.byStart[n];if(!c&&i===this.lastChunk)return this;let l=c?c.previous:this.lastChunk;return s&&(s.next=a),a&&(a.previous=s),l&&(l.next=o),c&&(c.previous=i),o.previous||(this.firstChunk=i.next),i.next||(this.lastChunk=o.previous,this.lastChunk.next=null),o.previous=l,i.next=c||null,l||(this.firstChunk=o),c||(this.lastChunk=i),this}overwrite(t,r,n,o){return o=o||{},this.update(t,r,n,{...o,overwrite:!o.contentOnly})}update(t,r,n,o){if(t=t+this.offset,r=r+this.offset,typeof n!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(r>this.original.length)throw new Error("end is out of bounds");if(t===r)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(r),o===!0&&(Ue.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),Ue.storeName=!0),o={storeName:!0});let i=o!==void 0?o.storeName:!1,s=o!==void 0?o.overwrite:!1;if(i){let l=this.original.slice(t,r);Object.defineProperty(this.storedNames,l,{writable:!0,value:!0,enumerable:!0})}let a=this.byStart[t],c=this.byEnd[r];if(a){let l=a;for(;l!==c;){if(l.next!==this.byStart[l.end])throw new Error("Cannot overwrite across a split point");l=l.next,l.edit("",!1)}a.edit(n,i,!s)}else{let l=new rr(t,r,"").edit(n,i);c.next=l,l.previous=c}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byEnd[t];return n?n.prependLeft(r):this.intro=r+this.intro,this}prependRight(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byStart[t];return n?n.prependRight(r):this.outro=r+this.outro,this}remove(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.intro="",n.outro="",n.edit(""),n=r>n.end?this.byStart[n.end]:null;return this}reset(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.reset(),n=r>n.end?this.byStart[n.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(nt);if(t!==-1)return this.outro.substr(t+1);let r=this.outro,n=this.lastChunk;do{if(n.outro.length>0){if(t=n.outro.lastIndexOf(nt),t!==-1)return n.outro.substr(t+1)+r;r=n.outro+r}if(n.content.length>0){if(t=n.content.lastIndexOf(nt),t!==-1)return n.content.substr(t+1)+r;r=n.content+r}if(n.intro.length>0){if(t=n.intro.lastIndexOf(nt),t!==-1)return n.intro.substr(t+1)+r;r=n.intro+r}}while(n=n.previous);return t=this.intro.lastIndexOf(nt),t!==-1?this.intro.substr(t+1)+r:this.intro+r}slice(t=0,r=this.original.length-this.offset){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}let n="",o=this.firstChunk;for(;o&&(o.start>t||o.end<=t);){if(o.start=r)return n;o=o.next}if(o&&o.edited&&o.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);let i=o;for(;o;){o.intro&&(i!==o||o.start===t)&&(n+=o.intro);let s=o.start=r;if(s&&o.edited&&o.end!==r)throw new Error(`Cannot use replaced character ${r} as slice end anchor.`);let a=i===o?t-o.start:0,c=s?o.content.length+r-o.end:o.content.length;if(n+=o.content.slice(a,c),o.outro&&(!s||o.end===r)&&(n+=o.outro),s)break;o=o.next}return n}snip(t,r){let n=this.clone();return n.remove(0,t),n.remove(r,n.original.length),n}_split(t){if(this.byStart[t]||this.byEnd[t])return;let r=this.lastSearchedChunk,n=t>r.end;for(;r;){if(r.contains(t))return this._splitChunk(r,t);r=n?this.byStart[r.end]:this.byEnd[r.start]}}_splitChunk(t,r){if(t.edited&&t.content.length){let o=fi(this.original)(r);throw new Error(`Cannot split a chunk that has already been edited (${o.line}:${o.column} \u2013 "${t.original}")`)}let n=t.split(r);return this.byEnd[r]=t,this.byStart[r]=n,this.byEnd[n.end]=n,t===this.lastChunk&&(this.lastChunk=n),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,r=this.firstChunk;for(;r;)t+=r.toString(),r=r.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,r=0;do r+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return r}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){let r=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(r,""),this.outro.length)return!0;let n=this.lastChunk;do{let o=n.end,i=n.trimEnd(r);if(n.end!==o&&(this.lastChunk===n&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),i)return!0;n=n.previous}while(n);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),this.intro.length)return!0;let n=this.firstChunk;do{let o=n.end,i=n.trimStart(r);if(n.end!==o&&(n===this.lastChunk&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),i)return!0;n=n.next}while(n);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,r){function n(i,s){return typeof r=="string"?r.replace(/\$(\$|&|\d+)/g,(a,c)=>c==="$"?"$":c==="&"?i[0]:+c{if(s.index!=null){let a=n(s,this.original);a!==s[0]&&this.overwrite(s.index,s.index+s[0].length,a)}});else{let i=this.original.match(t);if(i&&i.index!=null){let s=n(i,this.original);s!==i[0]&&this.overwrite(i.index,i.index+i[0].length,s)}}return this}_replaceString(t,r){let{original:n}=this,o=n.indexOf(t);return o!==-1&&this.overwrite(o,o+t.length,r),this}replace(t,r){return typeof t=="string"?this._replaceString(t,r):this._replaceRegexp(t,r)}_replaceAllString(t,r){let{original:n}=this,o=t.length;for(let i=n.indexOf(t);i!==-1;i=n.indexOf(t,i+o))n.slice(i,i+o)!==r&&this.overwrite(i,i+o,r);return this}replaceAll(t,r){if(typeof t=="string")return this._replaceAllString(t,r);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,r)}};var Pf=/theme\(\s*(['"])?(.*?)\1?\s*\)/g;function or(e){return e.includes("theme(")&&e.includes(")")}function ir(e,t,r=!0){let n=Array.from(e.toString().matchAll(Pf));if(!n.length)return e;let o=new nr(e);for(let i of n){let s=i[2];if(!s)throw new Error("theme() expect exact one argument, but got 0");let a=Vf(s,t,r);a&&o.overwrite(i.index,i.index+i[0].length,a)}return o.toString()}function Vf(e,t,r=!0){let[n,o]=e.split("/"),s=n.trim().split(".").reduce((a,c)=>a?.[c],t);if(typeof s=="object"&&(s=s.DEFAULT),typeof s=="string"){if(o){let a=q(s);a&&(s=z(a,o))}return s}else if(r)throw new Error(`theme of "${e}" did not found`)}function I(e,t){let r;return{name:e,match(n,o){r||(r=new RegExp(`^${ue(e)}(?:${o.generator.config.separators.join("|")})`));let i=n.match(r);if(i){let s=n.slice(i[0].length),a=C(t).map(c=>({matcher:s,handle:(l,p)=>p({...l,...c(l)})}));return a.length===1?a[0]:a}},autocomplete:`${e}:`}}function N(e,t){let r;return{name:e,match(n,o){r||(r=new RegExp(`^${ue(e)}(?:${o.generator.config.separators.join("|")})`));let i=n.match(r);if(i)return{matcher:n.slice(i[0].length),handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}${t}`})}},autocomplete:`${e}:`}}function ee(e,t,r){if(t.startsWith(`${e}[`)){let[n,o]=ve(t.slice(e.length),"[","]")??[];if(n&&o){for(let i of r)if(o.startsWith(i))return[n,o.slice(i.length),i];return[n,o,""]}}}function M(e,t,r){for(let n of C(e))if(t.startsWith(n)){let o=ee(n,t,r);if(o){let[i="",s=o[1]]=M("/",o[1],r)??[];return[o[0],s,i]}for(let i of r.filter(s=>s!=="/")){let s=t.indexOf(i,n.length);if(s!==-1){let a=t.indexOf("/",n.length),c=a===-1||s<=a;return[t.slice(n.length,c?s:a),t.slice(s+i.length),c?"":t.slice(a+1,s)]}}}}var Vn={};Gu(Vn,{auto:()=>_f,bracket:()=>If,bracketOfColor:()=>Nf,bracketOfLength:()=>Kf,bracketOfPosition:()=>Gf,cssvar:()=>Hf,degree:()=>Yf,fraction:()=>Df,global:()=>Xf,number:()=>Uf,numberWithUnit:()=>Ff,percent:()=>Bf,position:()=>Jf,properties:()=>Zf,px:()=>Wf,rem:()=>Lf,time:()=>qf});var te={l:["-left"],r:["-right"],t:["-top"],b:["-bottom"],s:["-inline-start"],e:["-inline-end"],x:["-left","-right"],y:["-top","-bottom"],"":[""],bs:["-block-start"],be:["-block-end"],is:["-inline-start"],ie:["-inline-end"],block:["-block-start","-block-end"],inline:["-inline-start","-inline-end"]},jn={...te,s:["-inset-inline-start"],start:["-inset-inline-start"],e:["-inset-inline-end"],end:["-inset-inline-end"],bs:["-inset-block-start"],be:["-inset-block-end"],is:["-inset-inline-start"],ie:["-inset-inline-end"],block:["-inset-block-start","-inset-block-end"],inline:["-inset-inline-start","-inset-inline-end"]},zn={l:["-top-left","-bottom-left"],r:["-top-right","-bottom-right"],t:["-top-left","-top-right"],b:["-bottom-left","-bottom-right"],tl:["-top-left"],lt:["-top-left"],tr:["-top-right"],rt:["-top-right"],bl:["-bottom-left"],lb:["-bottom-left"],br:["-bottom-right"],rb:["-bottom-right"],"":[""],bs:["-start-start","-start-end"],be:["-end-start","-end-end"],s:["-end-start","-start-start"],is:["-end-start","-start-start"],e:["-start-end","-end-end"],ie:["-start-end","-end-end"],ss:["-start-start"],"bs-is":["-start-start"],"is-bs":["-start-start"],se:["-start-end"],"bs-ie":["-start-end"],"ie-bs":["-start-end"],es:["-end-start"],"be-is":["-end-start"],"is-be":["-end-start"],ee:["-end-end"],"be-ie":["-end-end"],"ie-be":["-end-end"]},di={x:["-x"],y:["-y"],z:["-z"],"":["-x","-y"]},mi=["x","y","z"],pi=["top","top center","top left","top right","bottom","bottom center","bottom left","bottom right","left","left center","left top","left bottom","right","right center","right top","right bottom","center","center top","center bottom","center left","center right","center center"],ot=Object.assign({},...pi.map(e=>({[e.replace(/ /,"-")]:e})),...pi.map(e=>({[e.replace(/\b(\w)\w+/g,"$1").replace(/ /,"")]:e}))),F=["inherit","initial","revert","revert-layer","unset"],it=/^(calc|clamp|min|max)\s*\((.+)\)(.*)/,sr=/^(var)\s*\((.+)\)(.*)/;var Be=/^(-?\d*(?:\.\d+)?)(px|pt|pc|%|r?(?:em|ex|lh|cap|ch|ic)|(?:[sld]?v|cq)(?:[whib]|min|max)|in|cm|mm|rpx)?$/i,An=/^(-?\d*(?:\.\d+)?)$/,On=/^(px|[sld]?v[wh])$/i,Pn={px:1,vw:100,vh:100,svw:100,svh:100,dvw:100,dvh:100,lvh:100,lvw:100},ar=/^\[(color|image|length|size|position|quoted|string):/i,hi=/,(?![^()]*\))/g;var Mf=["color","border-color","background-color","outline-color","text-decoration-color","flex-grow","flex","flex-shrink","caret-color","font","gap","opacity","visibility","z-index","font-weight","zoom","text-shadow","transform","box-shadow","border","background-position","left","right","top","bottom","object-position","max-height","min-height","max-width","min-width","height","width","border-width","margin","padding","outline-width","outline-offset","font-size","line-height","text-indent","vertical-align","border-spacing","letter-spacing","word-spacing","stroke","filter","backdrop-filter","fill","mask","mask-size","mask-border","clip-path","clip","border-radius"];function ie(e){return+e.toFixed(10)}function Ff(e){let t=e.match(Be);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(n&&!Number.isNaN(o))return`${ie(o)}${n}`}function _f(e){if(e==="auto"||e==="a")return"auto"}function Lf(e){if(!e)return;if(On.test(e))return`${Pn[e]}${e}`;let t=e.match(Be);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(!Number.isNaN(o))return o===0?"0":n?`${ie(o)}${n}`:`${ie(o/4)}rem`}function Wf(e){if(On.test(e))return`${Pn[e]}${e}`;let t=e.match(Be);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(!Number.isNaN(o))return n?`${ie(o)}${n}`:`${ie(o)}px`}function Uf(e){if(!An.test(e))return;let t=Number.parseFloat(e);if(!Number.isNaN(t))return ie(t)}function Bf(e){if(e.endsWith("%")&&(e=e.slice(0,-1)),!An.test(e))return;let t=Number.parseFloat(e);if(!Number.isNaN(t))return`${ie(t/100)}`}function Df(e){if(!e)return;if(e==="full")return"100%";let[t,r]=e.split("/"),n=Number.parseFloat(t)/Number.parseFloat(r);if(!Number.isNaN(n))return n===0?"0":`${ie(n*100)}%`}function cr(e,t){if(e&&e.startsWith("[")&&e.endsWith("]")){let r,n,o=e.match(ar);if(o?(t||(n=o[1]),r=e.slice(o[0].length,-1)):r=e.slice(1,-1),!r||r==='=""')return;r.startsWith("--")&&(r=`var(${r})`);let i=0;for(let s of r)if(s==="[")i+=1;else if(s==="]"&&(i-=1,i<0))return;if(i)return;switch(n){case"string":return r.replace(/(^|[^\\])_/g,"$1 ").replace(/\\_/g,"_");case"quoted":return r.replace(/(^|[^\\])_/g,"$1 ").replace(/\\_/g,"_").replace(/(["\\])/g,"\\$1").replace(/^(.+)$/,'"$1"')}return r.replace(/(url\(.*?\))/g,s=>s.replace(/_/g,"\\_")).replace(/(^|[^\\])_/g,"$1 ").replace(/\\_/g,"_").replace(/(?:calc|clamp|max|min)\((.*)/g,s=>{let a=[];return s.replace(/var\((--.+?)[,)]/g,(c,l)=>(a.push(l),c.replace(l,"--un-calc"))).replace(/(-?\d*\.?\d(?!-\d.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 ").replace(/--un-calc/g,()=>a.shift())})}}function If(e){return cr(e)}function Nf(e){return cr(e,"color")}function Kf(e){return cr(e,"length")}function Gf(e){return cr(e,"position")}function Hf(e){if(/^\$[^\s'"`;{}]/.test(e)){let[t,r]=e.slice(1).split(",");return`var(--${Q(t)}${r?`, ${r}`:""})`}}function qf(e){let t=e.match(/^(-?[0-9.]+)(s|ms)?$/i);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(!Number.isNaN(o))return o===0&&!n?"0s":n?`${ie(o)}${n}`:`${ie(o)}ms`}function Yf(e){let t=e.match(/^(-?[0-9.]+)(deg|rad|grad|turn)?$/i);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(!Number.isNaN(o))return o===0?"0":n?`${ie(o)}${n}`:`${ie(o)}deg`}function Xf(e){if(F.includes(e))return e}function Zf(e){if(e.split(",").every(t=>Mf.includes(t)))return e}function Jf(e){if(["top","left","right","bottom","center"].includes(e))return e}var Qf=er(Vn),f=Qf;var gi={mid:"middle",base:"baseline",btm:"bottom",baseline:"baseline",top:"top",start:"top",middle:"middle",bottom:"bottom",end:"bottom","text-top":"text-top","text-bottom":"text-bottom",sub:"sub",super:"super",...Object.fromEntries(F.map(e=>[e,e]))},xi=[[/^(?:vertical|align|v)-([-\w]+%?)$/,([,e])=>({"vertical-align":gi[e]??f.numberWithUnit(e)}),{autocomplete:[`(vertical|align|v)-(${Object.keys(gi).join("|")})`,"(vertical|align|v)-"]}]],bi=["center","left","right","justify","start","end"],yi=[...bi.map(e=>[`text-${e}`,{"text-align":e}]),...[...F,...bi].map(e=>[`text-align-${e}`,{"text-align":e}])];var ki="$$mini-no-negative";function re(e){return([t,r,n],{theme:o})=>{let i=o.spacing?.[n||"DEFAULT"]??f.bracket.cssvar.global.auto.fraction.rem(n);if(i!=null)return te[r].map(s=>[`${e}${s}`,i]);if(n?.startsWith("-")){let s=o.spacing?.[n.slice(1)];if(s!=null)return te[r].map(a=>[`${e}${a}`,`calc(${s} * -1)`])}}}function $i(e,t,r="colors"){let n=e[r],o=-1;for(let i of t){if(o+=1,n&&typeof n!="string"){let s=t.slice(o).join("-").replace(/(-[a-z])/g,a=>a.slice(1).toUpperCase());if(n[s])return n[s];if(n[i]){n=n[i];continue}}return}return n}function vi(e,t,r){return $i(e,t,r)||$i(e,t,"colors")}function Fn(e,t){let[r,n]=fe(e,"[","]",["/",":"])??[];if(r!=null){let o=(r.match(ar)??[])[1];if(o==null||o===t)return[r,n]}}function lr(e,t,r){let n=Fn(e,"color");if(!n)return;let[o,i]=n,s=o.replace(/([a-z])(\d)/g,"$1-$2").split(/-/g),[a]=s;if(!a)return;let c,l=f.bracketOfColor(o),p=l||o;if(f.numberWithUnit(p))return;if(/^#[\da-f]+$/i.test(p)?c=p:/^hex-[\da-fA-F]+$/.test(p)?c=`#${p.slice(4)}`:o.startsWith("$")&&(c=f.cssvar(o)),c=c||l,!c){let h=vi(t,[o],r);typeof h=="string"&&(c=h)}let d="DEFAULT";if(!c){let h=s,m,[g]=s.slice(-1);/^\d+$/.test(g)&&(d=m=g,h=s.slice(0,-1));let b=vi(t,h,r);typeof b=="object"?c=b[m??d]:typeof b=="string"&&!m&&(c=b)}return{opacity:i,name:a,no:d,color:c,cssColor:q(c),alpha:f.bracket.cssvar.percent(i??"")}}function K(e,t,r,n){return([,o],{theme:i,generator:s})=>{let a=lr(o??"",i,r);if(!a)return;let{alpha:c,color:l,cssColor:p}=a,h=s.config.envMode==="dev"&&l?` /* ${l} */`:"",m={};if(p)if(c!=null)m[e]=z(p,c)+h;else{let g=`--un-${t}-opacity`,b=z(p,`var(${g})`);b.includes(g)&&(m[g]=oe(p)),m[e]=b+h}else if(l)if(c!=null)m[e]=z(l,c)+h;else{let g=`--un-${t}-opacity`,b=z(l,`var(${g})`);b.includes(g)&&(m[g]=1),m[e]=b+h}if(n?.(m)!==!1)return m}}function ur(e,t){let r=[];e=C(e);for(let n=0;nNumber.parseInt(i[1].replace(wi,""))-Number.parseInt(s[1].replace(wi,""))).map(([i,s])=>({point:i,size:s}));return Mn.set(e,o),o}function L(e,t){return F.map(r=>[`${e}-${r}`,{[t??e]:r}])}function se(e){return e!=null&&it.test(e)}function Si(e){return e[0]==="["&&e.slice(-1)==="]"&&(e=e.slice(1,-1)),it.test(e)||Be.test(e)}function dr(e,t,r){let n=t.split(hi);return e||!e&&n.length===1?di[e].map(o=>[`--un-${r}${o}`,t]):n.map((o,i)=>[`--un-${r}-${mi[i]}`,o])}var Ci=[[/^outline-(?:width-|size-)?(.+)$/,Ri,{autocomplete:"outline-(width|size)-"}],[/^outline-(?:color-)?(.+)$/,ep,{autocomplete:"outline-$colors"}],[/^outline-offset-(.+)$/,([,e],{theme:t})=>({"outline-offset":t.lineWidth?.[e]??f.bracket.cssvar.global.px(e)}),{autocomplete:"outline-(offset)-"}],["outline",{"outline-style":"solid"}],...["auto","dashed","dotted","double","hidden","solid","groove","ridge","inset","outset",...F].map(e=>[`outline-${e}`,{"outline-style":e}]),["outline-none",{outline:"2px solid transparent","outline-offset":"2px"}]];function Ri([,e],{theme:t}){return{"outline-width":t.lineWidth?.[e]??f.bracket.cssvar.global.px(e)}}function ep(e,t){return se(f.bracket(e[1]))?Ri(e,t):K("outline-color","outline-color","borderColor")(e,t)}var Ei=[["appearance-auto",{"-webkit-appearance":"auto",appearance:"auto"}],["appearance-none",{"-webkit-appearance":"none",appearance:"none"}]];function tp(e){return f.properties.auto.global(e)??{contents:"contents",scroll:"scroll-position"}[e]}var Ti=[[/^will-change-(.+)/,([,e])=>({"will-change":tp(e)})]];var ut=["solid","dashed","dotted","double","hidden","none","groove","ridge","inset","outset",...F],zi=[[/^(?:border|b)()(?:-(.+))?$/,pe,{autocomplete:"(border|b)-"}],[/^(?:border|b)-([xy])(?:-(.+))?$/,pe],[/^(?:border|b)-([rltbse])(?:-(.+))?$/,pe],[/^(?:border|b)-(block|inline)(?:-(.+))?$/,pe],[/^(?:border|b)-([bi][se])(?:-(.+))?$/,pe],[/^(?:border|b)-()(?:width|size)-(.+)$/,pe,{autocomplete:["(border|b)-","(border|b)--"]}],[/^(?:border|b)-([xy])-(?:width|size)-(.+)$/,pe],[/^(?:border|b)-([rltbse])-(?:width|size)-(.+)$/,pe],[/^(?:border|b)-(block|inline)-(?:width|size)-(.+)$/,pe],[/^(?:border|b)-([bi][se])-(?:width|size)-(.+)$/,pe],[/^(?:border|b)-()(?:color-)?(.+)$/,st,{autocomplete:["(border|b)-$colors","(border|b)--$colors"]}],[/^(?:border|b)-([xy])-(?:color-)?(.+)$/,st],[/^(?:border|b)-([rltbse])-(?:color-)?(.+)$/,st],[/^(?:border|b)-(block|inline)-(?:color-)?(.+)$/,st],[/^(?:border|b)-([bi][se])-(?:color-)?(.+)$/,st],[/^(?:border|b)-()op(?:acity)?-?(.+)$/,at,{autocomplete:"(border|b)-(op|opacity)-"}],[/^(?:border|b)-([xy])-op(?:acity)?-?(.+)$/,at],[/^(?:border|b)-([rltbse])-op(?:acity)?-?(.+)$/,at],[/^(?:border|b)-(block|inline)-op(?:acity)?-?(.+)$/,at],[/^(?:border|b)-([bi][se])-op(?:acity)?-?(.+)$/,at],[/^(?:border-|b-)?(?:rounded|rd)()(?:-(.+))?$/,ct,{autocomplete:["(border|b)-(rounded|rd)","(border|b)-(rounded|rd)-$borderRadius","(rounded|rd)","(rounded|rd)-$borderRadius"]}],[/^(?:border-|b-)?(?:rounded|rd)-([rltbse])(?:-(.+))?$/,ct],[/^(?:border-|b-)?(?:rounded|rd)-([rltb]{2})(?:-(.+))?$/,ct],[/^(?:border-|b-)?(?:rounded|rd)-([bise][se])(?:-(.+))?$/,ct],[/^(?:border-|b-)?(?:rounded|rd)-([bi][se]-[bi][se])(?:-(.+))?$/,ct],[/^(?:border|b)-(?:style-)?()(.+)$/,lt,{autocomplete:["(border|b)-style",`(border|b)-(${ut.join("|")})`,"(border|b)--style",`(border|b)--(${ut.join("|")})`,`(border|b)--style-(${ut.join("|")})`,`(border|b)-style-(${ut.join("|")})`]}],[/^(?:border|b)-([xy])-(?:style-)?(.+)$/,lt],[/^(?:border|b)-([rltbse])-(?:style-)?(.+)$/,lt],[/^(?:border|b)-(block|inline)-(?:style-)?(.+)$/,lt],[/^(?:border|b)-([bi][se])-(?:style-)?(.+)$/,lt]];function ji(e,t,r){if(t!=null)return{[`border${r}-color`]:z(e,t)};if(r===""){let n={},o="--un-border-opacity",i=z(e,`var(${o})`);return i.includes(o)&&(n[o]=typeof e=="string"?1:oe(e)),n["border-color"]=i,n}else{let n={},o="--un-border-opacity",i=`--un-border${r}-opacity`,s=z(e,`var(${i})`);return s.includes(i)&&(n[o]=typeof e=="string"?1:oe(e),n[i]=`var(${o})`),n[`border${r}-color`]=s,n}}function rp(e){return([,t],r)=>{let n=lr(t,r,"borderColor");if(!n)return;let{alpha:o,color:i,cssColor:s}=n;if(s)return ji(s,o,e);if(i)return ji(i,o,e)}}function pe([,e="",t],{theme:r}){let n=r.lineWidth?.[t||"DEFAULT"]??f.bracket.cssvar.global.px(t||"1");if(e in te&&n!=null)return te[e].map(o=>[`border${o}-width`,n])}function st([,e="",t],r){if(e in te){if(se(f.bracket(t)))return pe(["",e,t],r);if(fr(t,r.theme,"borderColor"))return Object.assign({},...te[e].map(n=>rp(n)(["",t],r.theme)))}}function at([,e="",t]){let r=f.bracket.percent.cssvar(t);if(e in te&&r!=null)return te[e].map(n=>[`--un-border${n}-opacity`,r])}function ct([,e="",t],{theme:r}){let n=r.borderRadius?.[t||"DEFAULT"]||f.bracket.cssvar.global.fraction.rem(t||"1");if(e in zn&&n!=null)return zn[e].map(o=>[`border${o}-radius`,n])}function lt([,e="",t]){if(ut.includes(t)&&e in te)return te[e].map(r=>[`border${r}-style`,t])}var Ai=[[/^op(?:acity)?-?(.+)$/,([,e])=>({opacity:f.bracket.percent.cssvar(e)})]],np=/^\[url\(.+\)\]$/,op=/^\[(?:length|size):.+\]$/,ip=/^\[position:.+\]$/,sp=/^\[(?:linear|conic|radial)-gradient\(.+\)\]$/,ap=/^\[image:.+\]$/,Oi=[[/^bg-(.+)$/,(...e)=>{let t=e[0][1];if(np.test(t))return{"--un-url":f.bracket(t),"background-image":"var(--un-url)"};if(op.test(t)&&f.bracketOfLength(t)!=null)return{"background-size":f.bracketOfLength(t).split(" ").map(r=>f.fraction.auto.px.cssvar(r)??r).join(" ")};if((Si(t)||ip.test(t))&&f.bracketOfPosition(t)!=null)return{"background-position":f.bracketOfPosition(t).split(" ").map(r=>f.position.fraction.auto.px.cssvar(r)??r).join(" ")};if(sp.test(t)||ap.test(t)){let r=f.bracket(t);if(r)return{"background-image":(r.startsWith("http")?`url(${r})`:f.cssvar(r))??r}}return K("background-color","bg","backgroundColor")(...e)},{autocomplete:"bg-$colors"}],[/^bg-op(?:acity)?-?(.+)$/,([,e])=>({"--un-bg-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"bg-(op|opacity)-"}]],Pi=[[/^color-scheme-(\w+)$/,([,e])=>({"color-scheme":e})]];var Vi=[[/^@container(?:\/(\w+))?(?:-(normal|inline-size|size))?$/,([,e,t])=>({"container-type":t??"inline-size","container-name":e})]];var Mi=["solid","double","dotted","dashed","wavy",...F],Fi=[[/^(?:decoration-)?(underline|overline|line-through)$/,([,e])=>({"text-decoration-line":e}),{autocomplete:"decoration-(underline|overline|line-through)"}],[/^(?:underline|decoration)-(?:size-)?(.+)$/,_i,{autocomplete:"(underline|decoration)-"}],[/^(?:underline|decoration)-(auto|from-font)$/,([,e])=>({"text-decoration-thickness":e}),{autocomplete:"(underline|decoration)-(auto|from-font)"}],[/^(?:underline|decoration)-(.+)$/,cp,{autocomplete:"(underline|decoration)-$colors"}],[/^(?:underline|decoration)-op(?:acity)?-?(.+)$/,([,e])=>({"--un-line-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"(underline|decoration)-(op|opacity)-"}],[/^(?:underline|decoration)-offset-(.+)$/,([,e],{theme:t})=>({"text-underline-offset":t.lineWidth?.[e]??f.auto.bracket.cssvar.global.px(e)}),{autocomplete:"(underline|decoration)-(offset)-"}],...Mi.map(e=>[`underline-${e}`,{"text-decoration-style":e}]),...Mi.map(e=>[`decoration-${e}`,{"text-decoration-style":e}]),["no-underline",{"text-decoration":"none"}],["decoration-none",{"text-decoration":"none"}]];function _i([,e],{theme:t}){return{"text-decoration-thickness":t.lineWidth?.[e]??f.bracket.cssvar.global.px(e)}}function cp(e,t){if(se(f.bracket(e[1])))return _i(e,t);let r=K("text-decoration-color","line","borderColor")(e,t);if(r)return{"-webkit-text-decoration-color":r["text-decoration-color"],...r}}var Li=[["flex",{display:"flex"}],["inline-flex",{display:"inline-flex"}],["flex-inline",{display:"inline-flex"}],[/^flex-(.*)$/,([,e])=>({flex:f.bracket(e)!=null?f.bracket(e).split(" ").map(t=>f.cssvar.fraction(t)??t).join(" "):f.cssvar.fraction(e)})],["flex-1",{flex:"1 1 0%"}],["flex-auto",{flex:"1 1 auto"}],["flex-initial",{flex:"0 1 auto"}],["flex-none",{flex:"none"}],[/^(?:flex-)?shrink(?:-(.*))?$/,([,e=""])=>({"flex-shrink":f.bracket.cssvar.number(e)??1}),{autocomplete:["flex-shrink-","shrink-"]}],[/^(?:flex-)?grow(?:-(.*))?$/,([,e=""])=>({"flex-grow":f.bracket.cssvar.number(e)??1}),{autocomplete:["flex-grow-","grow-"]}],[/^(?:flex-)?basis-(.+)$/,([,e],{theme:t})=>({"flex-basis":t.spacing?.[e]??f.bracket.cssvar.auto.fraction.rem(e)}),{autocomplete:["flex-basis-$spacing","basis-$spacing"]}],["flex-row",{"flex-direction":"row"}],["flex-row-reverse",{"flex-direction":"row-reverse"}],["flex-col",{"flex-direction":"column"}],["flex-col-reverse",{"flex-direction":"column-reverse"}],["flex-wrap",{"flex-wrap":"wrap"}],["flex-wrap-reverse",{"flex-wrap":"wrap-reverse"}],["flex-nowrap",{"flex-wrap":"nowrap"}]];var lp={"":"",x:"column-",y:"row-",col:"column-",row:"row-"};function _n([,e="",t],{theme:r}){let n=r.spacing?.[t]??f.bracket.cssvar.global.rem(t);if(n!=null)return{[`${lp[e]}gap`]:n}}var Wi=[[/^(?:flex-|grid-)?gap-?()(.+)$/,_n,{autocomplete:["gap-$spacing","gap-"]}],[/^(?:flex-|grid-)?gap-([xy])-?(.+)$/,_n,{autocomplete:["gap-(x|y)-$spacing","gap-(x|y)-"]}],[/^(?:flex-|grid-)?gap-(col|row)-?(.+)$/,_n,{autocomplete:["gap-(col|row)-$spacing","gap-(col|row)-"]}]];function he(e){return e.replace("col","column")}function Ln(e){return e[0]==="r"?"Row":"Column"}function up(e,t,r){let n=t[`gridAuto${Ln(e)}`]?.[r];if(n!=null)return n;switch(r){case"min":return"min-content";case"max":return"max-content";case"fr":return"minmax(0,1fr)"}return f.bracket.cssvar.auto.rem(r)}var Ui=[["grid",{display:"grid"}],["inline-grid",{display:"inline-grid"}],[/^(?:grid-)?(row|col)-(.+)$/,([,e,t],{theme:r})=>({[`grid-${he(e)}`]:r[`grid${Ln(e)}`]?.[t]??f.bracket.cssvar.auto(t)})],[/^(?:grid-)?(row|col)-span-(.+)$/,([,e,t])=>{if(t==="full")return{[`grid-${he(e)}`]:"1/-1"};let r=f.bracket.number(t);if(r!=null)return{[`grid-${he(e)}`]:`span ${r}/span ${r}`}},{autocomplete:"(grid-row|grid-col|row|col)-span-"}],[/^(?:grid-)?(row|col)-start-(.+)$/,([,e,t])=>({[`grid-${he(e)}-start`]:f.bracket.cssvar(t)??t})],[/^(?:grid-)?(row|col)-end-(.+)$/,([,e,t])=>({[`grid-${he(e)}-end`]:f.bracket.cssvar(t)??t}),{autocomplete:"(grid-row|grid-col|row|col)-(start|end)-"}],[/^(?:grid-)?auto-(rows|cols)-(.+)$/,([,e,t],{theme:r})=>({[`grid-auto-${he(e)}`]:up(e,r,t)}),{autocomplete:"(grid-auto|auto)-(rows|cols)-"}],[/^(?:grid-auto-flow|auto-flow|grid-flow)-(.+)$/,([,e])=>({"grid-auto-flow":f.bracket.cssvar(e)})],[/^(?:grid-auto-flow|auto-flow|grid-flow)-(row|col|dense|row-dense|col-dense)$/,([,e])=>({"grid-auto-flow":he(e).replace("-"," ")}),{autocomplete:["(grid-auto-flow|auto-flow|grid-flow)-(row|col|dense|row-dense|col-dense)"]}],[/^(?:grid-)?(rows|cols)-(.+)$/,([,e,t],{theme:r})=>({[`grid-template-${he(e)}`]:r[`gridTemplate${Ln(e)}`]?.[t]??f.bracket.cssvar(t)})],[/^(?:grid-)?(rows|cols)-minmax-([\w.-]+)$/,([,e,t])=>({[`grid-template-${he(e)}`]:`repeat(auto-fill,minmax(${t},1fr))`})],[/^(?:grid-)?(rows|cols)-(\d+)$/,([,e,t])=>({[`grid-template-${he(e)}`]:`repeat(${t},minmax(0,1fr))`}),{autocomplete:"(grid-rows|grid-cols|rows|cols)-"}],[/^grid-area(s)?-(.+)$/,([,e,t])=>e!=null?{"grid-template-areas":f.cssvar(t)??t.split("-").map(r=>`"${f.bracket(r)}"`).join(" ")}:{"grid-area":f.bracket.cssvar(t)}],["grid-rows-none",{"grid-template-rows":"none"}],["grid-cols-none",{"grid-template-columns":"none"}],["grid-rows-subgrid",{"grid-template-rows":"subgrid"}],["grid-cols-subgrid",{"grid-template-columns":"subgrid"}]];var mr=["auto","hidden","clip","visible","scroll","overlay",...F],Bi=[[/^(?:overflow|of)-(.+)$/,([,e])=>mr.includes(e)?{overflow:e}:void 0,{autocomplete:[`(overflow|of)-(${mr.join("|")})`,`(overflow|of)-(x|y)-(${mr.join("|")})`]}],[/^(?:overflow|of)-([xy])-(.+)$/,([,e,t])=>mr.includes(t)?{[`overflow-${e}`]:t}:void 0]];var Di=[[/^(?:position-|pos-)?(relative|absolute|fixed|sticky)$/,([,e])=>({position:e}),{autocomplete:["(position|pos)-","(position|pos)-",""]}],[/^(?:position-|pos-)([-\w]+)$/,([,e])=>F.includes(e)?{position:e}:void 0],[/^(?:position-|pos-)?(static)$/,([,e])=>({position:e})]],Un=[["justify-start",{"justify-content":"flex-start"}],["justify-end",{"justify-content":"flex-end"}],["justify-center",{"justify-content":"center"}],["justify-between",{"justify-content":"space-between"}],["justify-around",{"justify-content":"space-around"}],["justify-evenly",{"justify-content":"space-evenly"}],["justify-stretch",{"justify-content":"stretch"}],["justify-left",{"justify-content":"left"}],["justify-right",{"justify-content":"right"}],...L("justify","justify-content"),["justify-items-start",{"justify-items":"start"}],["justify-items-end",{"justify-items":"end"}],["justify-items-center",{"justify-items":"center"}],["justify-items-stretch",{"justify-items":"stretch"}],...L("justify-items"),["justify-self-auto",{"justify-self":"auto"}],["justify-self-start",{"justify-self":"start"}],["justify-self-end",{"justify-self":"end"}],["justify-self-center",{"justify-self":"center"}],["justify-self-stretch",{"justify-self":"stretch"}],...L("justify-self")],Ii=[[/^order-(.+)$/,([,e])=>({order:f.bracket.cssvar.number(e)})],["order-first",{order:"-9999"}],["order-last",{order:"9999"}],["order-none",{order:"0"}]],Bn=[["content-center",{"align-content":"center"}],["content-start",{"align-content":"flex-start"}],["content-end",{"align-content":"flex-end"}],["content-between",{"align-content":"space-between"}],["content-around",{"align-content":"space-around"}],["content-evenly",{"align-content":"space-evenly"}],...L("content","align-content"),["items-start",{"align-items":"flex-start"}],["items-end",{"align-items":"flex-end"}],["items-center",{"align-items":"center"}],["items-baseline",{"align-items":"baseline"}],["items-stretch",{"align-items":"stretch"}],...L("items","align-items"),["self-auto",{"align-self":"auto"}],["self-start",{"align-self":"flex-start"}],["self-end",{"align-self":"flex-end"}],["self-center",{"align-self":"center"}],["self-stretch",{"align-self":"stretch"}],["self-baseline",{"align-self":"baseline"}],...L("self","align-self")],Dn=[["place-content-center",{"place-content":"center"}],["place-content-start",{"place-content":"start"}],["place-content-end",{"place-content":"end"}],["place-content-between",{"place-content":"space-between"}],["place-content-around",{"place-content":"space-around"}],["place-content-evenly",{"place-content":"space-evenly"}],["place-content-stretch",{"place-content":"stretch"}],...L("place-content"),["place-items-start",{"place-items":"start"}],["place-items-end",{"place-items":"end"}],["place-items-center",{"place-items":"center"}],["place-items-stretch",{"place-items":"stretch"}],...L("place-items"),["place-self-auto",{"place-self":"auto"}],["place-self-start",{"place-self":"start"}],["place-self-end",{"place-self":"end"}],["place-self-center",{"place-self":"center"}],["place-self-stretch",{"place-self":"stretch"}],...L("place-self")],Ni=[...Un,...Bn,...Dn].flatMap(([e,t])=>[[`flex-${e}`,t],[`grid-${e}`,t]]);function Wn(e,{theme:t}){return t.spacing?.[e]??f.bracket.cssvar.global.auto.fraction.rem(e)}function ft([,e,t],r){let n=Wn(t,r);if(n!=null&&e in jn)return jn[e].map(o=>[o.slice(1),n])}var Ki=[[/^(?:position-|pos-)?inset-(.+)$/,([,e],t)=>({inset:Wn(e,t)}),{autocomplete:["(position|pos)-inset--$spacing","(position|pos)-inset-(block|inline)-$spacing","(position|pos)-inset-(bs|be|is|ie)-$spacing","(position|pos)-(top|left|right|bottom)-$spacing"]}],[/^(?:position-|pos-)?(start|end)-(.+)$/,ft],[/^(?:position-|pos-)?inset-([xy])-(.+)$/,ft],[/^(?:position-|pos-)?inset-([rltbse])-(.+)$/,ft],[/^(?:position-|pos-)?inset-(block|inline)-(.+)$/,ft],[/^(?:position-|pos-)?inset-([bi][se])-(.+)$/,ft],[/^(?:position-|pos-)?(top|left|right|bottom)-(.+)$/,([,e,t],r)=>({[e]:Wn(t,r)})]],Gi=[["float-left",{float:"left"}],["float-right",{float:"right"}],["float-start",{float:"inline-start"}],["float-end",{float:"inline-end"}],["float-none",{float:"none"}],...L("float"),["clear-left",{clear:"left"}],["clear-right",{clear:"right"}],["clear-both",{clear:"both"}],["clear-start",{clear:"inline-start"}],["clear-end",{clear:"inline-end"}],["clear-none",{clear:"none"}],...L("clear")],Hi=[[/^(?:position-|pos-)?z([\d.]+)$/,([,e])=>({"z-index":f.number(e)})],[/^(?:position-|pos-)?z-(.+)$/,([,e],{theme:t})=>({"z-index":t.zIndex?.[e]??f.bracket.cssvar.global.auto.number(e)}),{autocomplete:"z-"}]],qi=[["box-border",{"box-sizing":"border-box"}],["box-content",{"box-sizing":"content-box"}],...L("box","box-sizing")];var Yi=[[/^(where|\?)$/,(e,{constructCSS:t,generator:r})=>{if(r.userConfig.envMode==="dev")return`@keyframes __un_qm{0%{box-shadow:inset 4px 4px #ff1e90, inset -4px -4px #ff1e90}100%{box-shadow:inset 8px 8px #3399ff, inset -8px -8px #3399ff}} ${t({animation:"__un_qm 0.5s ease-in-out alternate infinite"})}`}]];var fp=["auto","default","none","context-menu","help","pointer","progress","wait","cell","crosshair","text","vertical-text","alias","copy","move","no-drop","not-allowed","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out"],pp=["none","strict","content","size","inline-size","layout","style","paint"],hr=" ",Xi=[["inline",{display:"inline"}],["block",{display:"block"}],["inline-block",{display:"inline-block"}],["contents",{display:"contents"}],["flow-root",{display:"flow-root"}],["list-item",{display:"list-item"}],["hidden",{display:"none"}],[/^display-(.+)$/,([,e])=>({display:f.bracket.cssvar.global(e)})]],Zi=[["visible",{visibility:"visible"}],["invisible",{visibility:"hidden"}],["backface-visible",{"backface-visibility":"visible"}],["backface-hidden",{"backface-visibility":"hidden"}],...L("backface","backface-visibility")],Ji=[[/^cursor-(.+)$/,([,e])=>({cursor:f.bracket.cssvar.global(e)})],...fp.map(e=>[`cursor-${e}`,{cursor:e}])],Qi=[[/^contain-(.*)$/,([,e])=>f.bracket(e)!=null?{contain:f.bracket(e).split(" ").map(t=>f.cssvar.fraction(t)??t).join(" ")}:pp.includes(e)?{contain:e}:void 0]],es=[["pointer-events-auto",{"pointer-events":"auto"}],["pointer-events-none",{"pointer-events":"none"}],...L("pointer-events")],ts=[["resize-x",{resize:"horizontal"}],["resize-y",{resize:"vertical"}],["resize",{resize:"both"}],["resize-none",{resize:"none"}],...L("resize")],rs=[["select-auto",{"-webkit-user-select":"auto","user-select":"auto"}],["select-all",{"-webkit-user-select":"all","user-select":"all"}],["select-text",{"-webkit-user-select":"text","user-select":"text"}],["select-none",{"-webkit-user-select":"none","user-select":"none"}],...L("select","user-select")],ns=[[/^(?:whitespace-|ws-)([-\w]+)$/,([,e])=>["normal","nowrap","pre","pre-line","pre-wrap","break-spaces",...F].includes(e)?{"white-space":e}:void 0,{autocomplete:"(whitespace|ws)-(normal|nowrap|pre|pre-line|pre-wrap|break-spaces)"}]],os=[[/^intrinsic-size-(.+)$/,([,e])=>({"contain-intrinsic-size":f.bracket.cssvar.global.fraction.rem(e)}),{autocomplete:"intrinsic-size-"}],["content-visibility-visible",{"content-visibility":"visible"}],["content-visibility-hidden",{"content-visibility":"hidden"}],["content-visibility-auto",{"content-visibility":"auto"}],...L("content-visibility")],is=[[/^content-(.+)$/,([,e])=>({content:f.bracket.cssvar(e)})],["content-empty",{content:'""'}],["content-none",{content:"none"}]],ss=[["break-normal",{"overflow-wrap":"normal","word-break":"normal"}],["break-words",{"overflow-wrap":"break-word"}],["break-all",{"word-break":"break-all"}],["break-keep",{"word-break":"keep-all"}],["break-anywhere",{"overflow-wrap":"anywhere"}]],as=[["text-wrap",{"text-wrap":"wrap"}],["text-nowrap",{"text-wrap":"nowrap"}],["text-balance",{"text-wrap":"balance"}],["text-pretty",{"text-wrap":"pretty"}]],cs=[["truncate",{overflow:"hidden","text-overflow":"ellipsis","white-space":"nowrap"}],["text-truncate",{overflow:"hidden","text-overflow":"ellipsis","white-space":"nowrap"}],["text-ellipsis",{"text-overflow":"ellipsis"}],["text-clip",{"text-overflow":"clip"}]],ls=[["case-upper",{"text-transform":"uppercase"}],["case-lower",{"text-transform":"lowercase"}],["case-capital",{"text-transform":"capitalize"}],["case-normal",{"text-transform":"none"}],...L("case","text-transform")],us=[["italic",{"font-style":"italic"}],["not-italic",{"font-style":"normal"}],["font-italic",{"font-style":"italic"}],["font-not-italic",{"font-style":"normal"}],["oblique",{"font-style":"oblique"}],["not-oblique",{"font-style":"normal"}],["font-oblique",{"font-style":"oblique"}],["font-not-oblique",{"font-style":"normal"}]],fs=[["antialiased",{"-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale"}],["subpixel-antialiased",{"-webkit-font-smoothing":"auto","-moz-osx-font-smoothing":"auto"}]],ps=[["field-sizing-fixed",{"field-sizing":"fixed"}],["field-sizing-content",{"field-sizing":"content"}]];var In={"--un-ring-inset":hr,"--un-ring-offset-width":"0px","--un-ring-offset-color":"#fff","--un-ring-width":"0px","--un-ring-color":"rgb(147 197 253 / 0.5)","--un-shadow":"0 0 rgb(0 0 0 / 0)"},dp=Object.keys(In),ds=[[/^ring(?:-(.+))?$/,([,e],{theme:t})=>{let r=t.ringWidth?.[e||"DEFAULT"]??f.px(e||"1");if(r)return{"--un-ring-width":r,"--un-ring-offset-shadow":"var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color)","--un-ring-shadow":"var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color)","box-shadow":"var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow)"}},{custom:{preflightKeys:dp},autocomplete:"ring-$ringWidth"}],[/^ring-(?:width-|size-)(.+)$/,ms,{autocomplete:"ring-(width|size)-$lineWidth"}],["ring-offset",{"--un-ring-offset-width":"1px"}],[/^ring-offset-(?:width-|size-)?(.+)$/,([,e],{theme:t})=>({"--un-ring-offset-width":t.lineWidth?.[e]??f.bracket.cssvar.px(e)}),{autocomplete:"ring-offset-(width|size)-$lineWidth"}],[/^ring-(.+)$/,mp,{autocomplete:"ring-$colors"}],[/^ring-op(?:acity)?-?(.+)$/,([,e])=>({"--un-ring-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"ring-(op|opacity)-"}],[/^ring-offset-(.+)$/,K("--un-ring-offset-color","ring-offset","borderColor"),{autocomplete:"ring-offset-$colors"}],[/^ring-offset-op(?:acity)?-?(.+)$/,([,e])=>({"--un-ring-offset-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"ring-offset-(op|opacity)-"}],["ring-inset",{"--un-ring-inset":"inset"}]];function ms([,e],{theme:t}){return{"--un-ring-width":t.ringWidth?.[e]??f.bracket.cssvar.px(e)}}function mp(e,t){return se(f.bracket(e[1]))?ms(e,t):K("--un-ring-color","ring","borderColor")(e,t)}var Nn={"--un-ring-offset-shadow":"0 0 rgb(0 0 0 / 0)","--un-ring-shadow":"0 0 rgb(0 0 0 / 0)","--un-shadow-inset":hr,"--un-shadow":"0 0 rgb(0 0 0 / 0)"},hp=Object.keys(Nn),hs=[[/^shadow(?:-(.+))?$/,(e,t)=>{let[,r]=e,{theme:n}=t,o=n.boxShadow?.[r||"DEFAULT"],i=r?f.bracket.cssvar(r):void 0;return(o!=null||i!=null)&&!fr(i,n,"shadowColor")?{"--un-shadow":ur(o||i,"--un-shadow-color").join(","),"box-shadow":"var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow)"}:K("--un-shadow-color","shadow","shadowColor")(e,t)},{custom:{preflightKeys:hp},autocomplete:["shadow-$colors","shadow-$boxShadow"]}],[/^shadow-op(?:acity)?-?(.+)$/,([,e])=>({"--un-shadow-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"shadow-(op|opacity)-"}],["shadow-inset",{"--un-shadow-inset":"inset"}]];var gp={h:"height",w:"width",inline:"inline-size",block:"block-size"};function Oe(e,t){return`${e||""}${gp[t]}`}function gr(e,t,r,n){let o=Oe(e,t).replace(/-(\w)/g,(s,a)=>a.toUpperCase()),i=r[o]?.[n];if(i!=null)return i;switch(n){case"fit":case"max":case"min":return`${n}-content`}return f.bracket.cssvar.global.auto.fraction.rem(n)}var bs=[[/^size-(min-|max-)?(.+)$/,([,e,t],{theme:r})=>({[Oe(e,"w")]:gr(e,"w",r,t),[Oe(e,"h")]:gr(e,"h",r,t)})],[/^(?:size-)?(min-|max-)?([wh])-?(.+)$/,([,e,t,r],{theme:n})=>({[Oe(e,t)]:gr(e,t,n,r)})],[/^(?:size-)?(min-|max-)?(block|inline)-(.+)$/,([,e,t,r],{theme:n})=>({[Oe(e,t)]:gr(e,t,n,r)}),{autocomplete:["(w|h)-$width|height|maxWidth|maxHeight|minWidth|minHeight|inlineSize|blockSize|maxInlineSize|maxBlockSize|minInlineSize|minBlockSize","(block|inline)-$width|height|maxWidth|maxHeight|minWidth|minHeight|inlineSize|blockSize|maxInlineSize|maxBlockSize|minInlineSize|minBlockSize","(max|min)-(w|h|block|inline)","(max|min)-(w|h|block|inline)-$width|height|maxWidth|maxHeight|minWidth|minHeight|inlineSize|blockSize|maxInlineSize|maxBlockSize|minInlineSize|minBlockSize","(w|h)-full","(max|min)-(w|h)-full"]}],[/^(?:size-)?(min-|max-)?(h)-screen-(.+)$/,([,e,t,r],n)=>({[Oe(e,t)]:gs(n,r,"verticalBreakpoints")})],[/^(?:size-)?(min-|max-)?(w)-screen-(.+)$/,([,e,t,r],n)=>({[Oe(e,t)]:gs(n,r)}),{autocomplete:["(w|h)-screen","(min|max)-(w|h)-screen","h-screen-$verticalBreakpoints","(min|max)-h-screen-$verticalBreakpoints","w-screen-$breakpoints","(min|max)-w-screen-$breakpoints"]}]];function gs(e,t,r="breakpoints"){let n=pr(e,r);if(n)return n.find(o=>o.point===t)?.size}function bp(e){if(/^\d+\/\d+$/.test(e))return e;switch(e){case"square":return"1/1";case"video":return"16/9"}return f.bracket.cssvar.global.auto.number(e)}var xs=[[/^(?:size-)?aspect-(?:ratio-)?(.+)$/,([,e])=>({"aspect-ratio":bp(e)}),{autocomplete:["aspect-(square|video|ratio)","aspect-ratio-(square|video)"]}]];var ys=[[/^pa?()-?(.+)$/,re("padding"),{autocomplete:["(m|p)","(m|p)-"]}],[/^p-?xy()()$/,re("padding"),{autocomplete:"(m|p)-(xy)"}],[/^p-?([xy])(?:-?(.+))?$/,re("padding")],[/^p-?([rltbse])(?:-?(.+))?$/,re("padding"),{autocomplete:"(m|p)-"}],[/^p-(block|inline)(?:-(.+))?$/,re("padding"),{autocomplete:"(m|p)-(block|inline)-"}],[/^p-?([bi][se])(?:-?(.+))?$/,re("padding"),{autocomplete:"(m|p)-(bs|be|is|ie)-"}]],$s=[[/^ma?()-?(.+)$/,re("margin")],[/^m-?xy()()$/,re("margin")],[/^m-?([xy])(?:-?(.+))?$/,re("margin")],[/^m-?([rltbse])(?:-?(.+))?$/,re("margin")],[/^m-(block|inline)(?:-(.+))?$/,re("margin")],[/^m-?([bi][se])(?:-?(.+))?$/,re("margin")]];var vs=[[/^fill-(.+)$/,K("fill","fill","backgroundColor"),{autocomplete:"fill-$colors"}],[/^fill-op(?:acity)?-?(.+)$/,([,e])=>({"--un-fill-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"fill-(op|opacity)-"}],["fill-none",{fill:"none"}],[/^stroke-(?:width-|size-)?(.+)$/,ws,{autocomplete:["stroke-width-$lineWidth","stroke-size-$lineWidth"]}],[/^stroke-dash-(.+)$/,([,e])=>({"stroke-dasharray":f.bracket.cssvar.number(e)}),{autocomplete:"stroke-dash-"}],[/^stroke-offset-(.+)$/,([,e],{theme:t})=>({"stroke-dashoffset":t.lineWidth?.[e]??f.bracket.cssvar.px.numberWithUnit(e)}),{autocomplete:"stroke-offset-$lineWidth"}],[/^stroke-(.+)$/,xp,{autocomplete:"stroke-$colors"}],[/^stroke-op(?:acity)?-?(.+)$/,([,e])=>({"--un-stroke-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"stroke-(op|opacity)-"}],["stroke-cap-square",{"stroke-linecap":"square"}],["stroke-cap-round",{"stroke-linecap":"round"}],["stroke-cap-auto",{"stroke-linecap":"butt"}],["stroke-join-arcs",{"stroke-linejoin":"arcs"}],["stroke-join-bevel",{"stroke-linejoin":"bevel"}],["stroke-join-clip",{"stroke-linejoin":"miter-clip"}],["stroke-join-round",{"stroke-linejoin":"round"}],["stroke-join-auto",{"stroke-linejoin":"miter"}],["stroke-none",{stroke:"none"}]];function ws([,e],{theme:t}){return{"stroke-width":t.lineWidth?.[e]??f.bracket.cssvar.fraction.px.number(e)}}function xp(e,t){return se(f.bracket(e[1]))?ws(e,t):K("stroke","stroke","borderColor")(e,t)}var br=["translate","rotate","scale"],yp=["translateX(var(--un-translate-x))","translateY(var(--un-translate-y))","rotate(var(--un-rotate))","rotateZ(var(--un-rotate-z))","skewX(var(--un-skew-x))","skewY(var(--un-skew-y))","scaleX(var(--un-scale-x))","scaleY(var(--un-scale-y))"].join(" "),De=["translateX(var(--un-translate-x))","translateY(var(--un-translate-y))","translateZ(var(--un-translate-z))","rotate(var(--un-rotate))","rotateX(var(--un-rotate-x))","rotateY(var(--un-rotate-y))","rotateZ(var(--un-rotate-z))","skewX(var(--un-skew-x))","skewY(var(--un-skew-y))","scaleX(var(--un-scale-x))","scaleY(var(--un-scale-y))","scaleZ(var(--un-scale-z))"].join(" "),$p=["translate3d(var(--un-translate-x), var(--un-translate-y), var(--un-translate-z))","rotate(var(--un-rotate))","rotateX(var(--un-rotate-x))","rotateY(var(--un-rotate-y))","rotateZ(var(--un-rotate-z))","skewX(var(--un-skew-x))","skewY(var(--un-skew-y))","scaleX(var(--un-scale-x))","scaleY(var(--un-scale-y))","scaleZ(var(--un-scale-z))"].join(" "),Kn={"--un-rotate":0,"--un-rotate-x":0,"--un-rotate-y":0,"--un-rotate-z":0,"--un-scale-x":1,"--un-scale-y":1,"--un-scale-z":1,"--un-skew-x":0,"--un-skew-y":0,"--un-translate-x":0,"--un-translate-y":0,"--un-translate-z":0},ge=Object.keys(Kn),Es=[[/^(?:transform-)?origin-(.+)$/,([,e])=>({"transform-origin":ot[e]??f.bracket.cssvar(e)}),{autocomplete:[`transform-origin-(${Object.keys(ot).join("|")})`,`origin-(${Object.keys(ot).join("|")})`]}],[/^(?:transform-)?perspect(?:ive)?-(.+)$/,([,e])=>{let t=f.bracket.cssvar.px.numberWithUnit(e);if(t!=null)return{"-webkit-perspective":t,perspective:t}}],[/^(?:transform-)?perspect(?:ive)?-origin-(.+)$/,([,e])=>{let t=f.bracket.cssvar(e)??(e.length>=3?ot[e]:void 0);if(t!=null)return{"-webkit-perspective-origin":t,"perspective-origin":t}}],[/^(?:transform-)?translate-()(.+)$/,ks,{custom:{preflightKeys:ge}}],[/^(?:transform-)?translate-([xyz])-(.+)$/,ks,{custom:{preflightKeys:ge}}],[/^(?:transform-)?rotate-()(.+)$/,Cs,{custom:{preflightKeys:ge}}],[/^(?:transform-)?rotate-([xyz])-(.+)$/,Cs,{custom:{preflightKeys:ge}}],[/^(?:transform-)?skew-()(.+)$/,Rs,{custom:{preflightKeys:ge}}],[/^(?:transform-)?skew-([xy])-(.+)$/,Rs,{custom:{preflightKeys:ge},autocomplete:["transform-skew-(x|y)-","skew-(x|y)-"]}],[/^(?:transform-)?scale-()(.+)$/,Ss,{custom:{preflightKeys:ge}}],[/^(?:transform-)?scale-([xyz])-(.+)$/,Ss,{custom:{preflightKeys:ge},autocomplete:[`transform-(${br.join("|")})-`,`transform-(${br.join("|")})-(x|y|z)-`,`(${br.join("|")})-`,`(${br.join("|")})-(x|y|z)-`]}],[/^(?:transform-)?preserve-3d$/,()=>({"transform-style":"preserve-3d"})],[/^(?:transform-)?preserve-flat$/,()=>({"transform-style":"flat"})],["transform",{transform:De},{custom:{preflightKeys:ge}}],["transform-cpu",{transform:yp},{custom:{preflightKeys:["--un-translate-x","--un-translate-y","--un-rotate","--un-rotate-z","--un-skew-x","--un-skew-y","--un-scale-x","--un-scale-y"]}}],["transform-gpu",{transform:$p},{custom:{preflightKeys:ge}}],["transform-none",{transform:"none"}],...L("transform")];function ks([,e,t],{theme:r}){let n=r.spacing?.[t]??f.bracket.cssvar.fraction.rem(t);if(n!=null)return[...dr(e,n,"translate"),["transform",De]]}function Ss([,e,t]){let r=f.bracket.cssvar.fraction.percent(t);if(r!=null)return[...dr(e,r,"scale"),["transform",De]]}function Cs([,e="",t]){let r=f.bracket.cssvar.degree(t);if(r!=null)return e?{"--un-rotate":0,[`--un-rotate-${e}`]:r,transform:De}:{"--un-rotate-x":0,"--un-rotate-y":0,"--un-rotate-z":0,"--un-rotate":r,transform:De}}function Rs([,e,t]){let r=f.bracket.cssvar.degree(t);if(r!=null)return[...dr(e,r,"skew"),["transform",De]]}function Ts(e,t){let r;if(f.cssvar(e)!=null)r=f.cssvar(e);else{e.startsWith("[")&&e.endsWith("]")&&(e=e.slice(1,-1));let n=e.split(",").map(o=>t.transitionProperty?.[o]??f.properties(o));n.every(Boolean)&&(r=n.join(","))}return r}var js=[[/^transition(?:-(\D+?))?(?:-(\d+))?$/,([,e,t],{theme:r})=>{if(!e&&!t)return{"transition-property":r.transitionProperty?.DEFAULT,"transition-timing-function":r.easing?.DEFAULT,"transition-duration":r.duration?.DEFAULT??f.time("150")};if(e!=null){let n=Ts(e,r),o=r.duration?.[t||"DEFAULT"]??f.time(t||"150");if(n)return{"transition-property":n,"transition-timing-function":r.easing?.DEFAULT,"transition-duration":o}}else if(t!=null)return{"transition-property":r.transitionProperty?.DEFAULT,"transition-timing-function":r.easing?.DEFAULT,"transition-duration":r.duration?.[t]??f.time(t)}},{autocomplete:"transition-$transitionProperty-$duration"}],[/^(?:transition-)?duration-(.+)$/,([,e],{theme:t})=>({"transition-duration":t.duration?.[e||"DEFAULT"]??f.bracket.cssvar.time(e)}),{autocomplete:["transition-duration-$duration","duration-$duration"]}],[/^(?:transition-)?delay-(.+)$/,([,e],{theme:t})=>({"transition-delay":t.duration?.[e||"DEFAULT"]??f.bracket.cssvar.time(e)}),{autocomplete:["transition-delay-$duration","delay-$duration"]}],[/^(?:transition-)?ease(?:-(.+))?$/,([,e],{theme:t})=>({"transition-timing-function":t.easing?.[e||"DEFAULT"]??f.bracket.cssvar(e)}),{autocomplete:["transition-ease-(linear|in|out|in-out|DEFAULT)","ease-(linear|in|out|in-out|DEFAULT)"]}],[/^(?:transition-)?property-(.+)$/,([,e],{theme:t})=>{let r=f.global(e)||Ts(e,t);if(r)return{"transition-property":r}},{autocomplete:[`transition-property-(${[...F].join("|")})`,"transition-property-$transitionProperty","property-$transitionProperty"]}],["transition-none",{transition:"none"}],...L("transition"),["transition-discrete",{"transition-behavior":"allow-discrete"}],["transition-normal",{"transition-behavior":"normal"}]];var zs=[[/^text-(.+)$/,wp,{autocomplete:"text-$fontSize"}],[/^(?:text|font)-size-(.+)$/,Ms,{autocomplete:"text-size-$fontSize"}],[/^text-(?:color-)?(.+)$/,vp,{autocomplete:"text-$colors"}],[/^(?:color|c)-(.+)$/,K("color","text","textColor"),{autocomplete:"(color|c)-$colors"}],[/^(?:text|color|c)-(.+)$/,([,e])=>F.includes(e)?{color:e}:void 0,{autocomplete:`(text|color|c)-(${F.join("|")})`}],[/^(?:text|color|c)-op(?:acity)?-?(.+)$/,([,e])=>({"--un-text-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"(text|color|c)-(op|opacity)-"}],[/^(?:font|fw)-?([^-]+)$/,([,e],{theme:t})=>({"font-weight":t.fontWeight?.[e]||f.bracket.global.number(e)}),{autocomplete:["(font|fw)-(100|200|300|400|500|600|700|800|900)","(font|fw)-$fontWeight"]}],[/^(?:font-)?(?:leading|lh|line-height)-(.+)$/,([,e],{theme:t})=>({"line-height":Gn(e,t,"lineHeight")}),{autocomplete:"(leading|lh|line-height)-$lineHeight"}],["font-synthesis-weight",{"font-synthesis":"weight"}],["font-synthesis-style",{"font-synthesis":"style"}],["font-synthesis-small-caps",{"font-synthesis":"small-caps"}],["font-synthesis-none",{"font-synthesis":"none"}],[/^font-synthesis-(.+)$/,([,e])=>({"font-synthesis":f.bracket.cssvar.global(e)})],[/^(?:font-)?tracking-(.+)$/,([,e],{theme:t})=>({"letter-spacing":t.letterSpacing?.[e]||f.bracket.cssvar.global.rem(e)}),{autocomplete:"tracking-$letterSpacing"}],[/^(?:font-)?word-spacing-(.+)$/,([,e],{theme:t})=>({"word-spacing":t.wordSpacing?.[e]||f.bracket.cssvar.global.rem(e)}),{autocomplete:"word-spacing-$wordSpacing"}],["font-stretch-normal",{"font-stretch":"normal"}],["font-stretch-ultra-condensed",{"font-stretch":"ultra-condensed"}],["font-stretch-extra-condensed",{"font-stretch":"extra-condensed"}],["font-stretch-condensed",{"font-stretch":"condensed"}],["font-stretch-semi-condensed",{"font-stretch":"semi-condensed"}],["font-stretch-semi-expanded",{"font-stretch":"semi-expanded"}],["font-stretch-expanded",{"font-stretch":"expanded"}],["font-stretch-extra-expanded",{"font-stretch":"extra-expanded"}],["font-stretch-ultra-expanded",{"font-stretch":"ultra-expanded"}],[/^font-stretch-(.+)$/,([,e])=>({"font-stretch":f.bracket.cssvar.fraction.global(e)}),{autocomplete:"font-stretch-"}],[/^font-(.+)$/,([,e],{theme:t})=>({"font-family":t.fontFamily?.[e]||f.bracket.cssvar.global(e)}),{autocomplete:"font-$fontFamily"}]],As=[[/^tab(?:-(.+))?$/,([,e])=>{let t=f.bracket.cssvar.global.number(e||"4");if(t!=null)return{"-moz-tab-size":t,"-o-tab-size":t,"tab-size":t}}]],Os=[[/^indent(?:-(.+))?$/,([,e],{theme:t})=>({"text-indent":t.textIndent?.[e||"DEFAULT"]||f.bracket.cssvar.global.fraction.rem(e)}),{autocomplete:"indent-$textIndent"}]],Ps=[[/^text-stroke(?:-(.+))?$/,([,e],{theme:t})=>({"-webkit-text-stroke-width":t.textStrokeWidth?.[e||"DEFAULT"]||f.bracket.cssvar.px(e)}),{autocomplete:"text-stroke-$textStrokeWidth"}],[/^text-stroke-(.+)$/,K("-webkit-text-stroke-color","text-stroke","borderColor"),{autocomplete:"text-stroke-$colors"}],[/^text-stroke-op(?:acity)?-?(.+)$/,([,e])=>({"--un-text-stroke-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"text-stroke-(op|opacity)-"}]],Vs=[[/^text-shadow(?:-(.+))?$/,([,e],{theme:t})=>{let r=t.textShadow?.[e||"DEFAULT"];return r!=null?{"--un-text-shadow":ur(r,"--un-text-shadow-color").join(","),"text-shadow":"var(--un-text-shadow)"}:{"text-shadow":f.bracket.cssvar.global(e)}},{autocomplete:"text-shadow-$textShadow"}],[/^text-shadow-color-(.+)$/,K("--un-text-shadow-color","text-shadow","shadowColor"),{autocomplete:"text-shadow-color-$colors"}],[/^text-shadow-color-op(?:acity)?-?(.+)$/,([,e])=>({"--un-text-shadow-opacity":f.bracket.percent.cssvar(e)}),{autocomplete:"text-shadow-color-(op|opacity)-"}]];function Gn(e,t,r){return t[r]?.[e]||f.bracket.cssvar.global.rem(e)}function Ms([,e],{theme:t}){let n=C(t.fontSize?.[e])?.[0]??f.bracket.cssvar.global.rem(e);if(n!=null)return{"font-size":n}}function vp(e,t){return se(f.bracket(e[1]))?Ms(e,t):K("color","text","textColor")(e,t)}function wp([,e="base"],{theme:t}){let r=Fn(e,"length");if(!r)return;let[n,o]=r,i=C(t.fontSize?.[n]),s=o?Gn(o,t,"lineHeight"):void 0;if(i?.[0]){let[c,l,p]=i;return typeof l=="object"?{"font-size":c,...l}:{"font-size":c,"line-height":s??l??"1","letter-spacing":p?Gn(p,t,"letterSpacing"):void 0}}let a=f.bracketOfLength.rem(n);return s&&a?{"font-size":a,"line-height":s}:{"font-size":f.bracketOfLength.rem(e)}}var kp={backface:"backface-visibility",break:"word-break",case:"text-transform",content:"align-content",fw:"font-weight",items:"align-items",justify:"justify-content",select:"user-select",self:"align-self",vertical:"vertical-align",visible:"visibility",whitespace:"white-space",ws:"white-space"},Fs=[[/^(.+?)-(\$.+)$/,([,e,t])=>{let r=kp[e];if(r)return{[r]:f.cssvar(t)}}]],_s=[[/^\[(.*)\]$/,([e,t])=>{if(!t.includes(":"))return;let[r,...n]=t.split(":"),o=n.join(":");if(!Cp(t)&&/^[a-z-_]+$/i.test(r)&&Sp(o)){let i=f.bracket(`[${o}]`);if(i)return{[r]:i}}}]];function Sp(e){let t=0;function r(n){for(;t{typeof e!="string"&&e!==void 0&&(e.DEFAULT=e.DEFAULT||e[400],Object.keys(e).forEach(t=>{let r=+t/100;r===Math.round(r)&&(e[r]=e[t])}))});var Us={DEFAULT:"8px",0:"0",sm:"4px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},Bs={DEFAULT:["0 1px 2px rgb(0 0 0 / 0.1)","0 1px 1px rgb(0 0 0 / 0.06)"],sm:"0 1px 1px rgb(0 0 0 / 0.05)",md:["0 4px 3px rgb(0 0 0 / 0.07)","0 2px 2px rgb(0 0 0 / 0.06)"],lg:["0 10px 8px rgb(0 0 0 / 0.04)","0 4px 3px rgb(0 0 0 / 0.1)"],xl:["0 20px 13px rgb(0 0 0 / 0.03)","0 8px 5px rgb(0 0 0 / 0.08)"],"2xl":"0 25px 25px rgb(0 0 0 / 0.15)",none:"0 0 rgb(0 0 0 / 0)"};var Ds={sans:["ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'].join(","),serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"].join(","),mono:["ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"].join(",")},Is={xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},Ns={DEFAULT:"1.5rem",xs:"0.5rem",sm:"1rem",md:"1.5rem",lg:"2rem",xl:"2.5rem","2xl":"3rem","3xl":"4rem"},Ks={DEFAULT:"1.5rem",none:"0",sm:"thin",md:"medium",lg:"thick"},Gs={DEFAULT:["0 0 1px rgb(0 0 0 / 0.2)","0 0 1px rgb(1 0 5 / 0.1)"],none:"0 0 rgb(0 0 0 / 0)",sm:"1px 1px 3px rgb(36 37 47 / 0.25)",md:["0 1px 2px rgb(30 29 39 / 0.19)","1px 2px 4px rgb(54 64 147 / 0.18)"],lg:["3px 3px 6px rgb(0 0 0 / 0.26)","0 0 5px rgb(15 3 86 / 0.22)"],xl:["1px 1px 3px rgb(0 0 0 / 0.29)","2px 4px 7px rgb(73 64 125 / 0.35)"]},Hs={none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},qn={tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},qs={thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},Ys=qn;var Yn={sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},Xs={...Yn},Zs={DEFAULT:"1px",none:"0"},Js={DEFAULT:"1rem",none:"0",xs:"0.75rem",sm:"0.875rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem","6xl":"3.75rem","7xl":"4.5rem","8xl":"6rem","9xl":"8rem"},Qs={DEFAULT:"150ms",none:"0s",75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},ea={DEFAULT:"0.25rem",none:"0",sm:"0.125rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},ta={DEFAULT:["var(--un-shadow-inset) 0 1px 3px 0 rgb(0 0 0 / 0.1)","var(--un-shadow-inset) 0 1px 2px -1px rgb(0 0 0 / 0.1)"],none:"0 0 rgb(0 0 0 / 0)",sm:"var(--un-shadow-inset) 0 1px 2px 0 rgb(0 0 0 / 0.05)",md:["var(--un-shadow-inset) 0 4px 6px -1px rgb(0 0 0 / 0.1)","var(--un-shadow-inset) 0 2px 4px -2px rgb(0 0 0 / 0.1)"],lg:["var(--un-shadow-inset) 0 10px 15px -3px rgb(0 0 0 / 0.1)","var(--un-shadow-inset) 0 4px 6px -4px rgb(0 0 0 / 0.1)"],xl:["var(--un-shadow-inset) 0 20px 25px -5px rgb(0 0 0 / 0.1)","var(--un-shadow-inset) 0 8px 10px -6px rgb(0 0 0 / 0.1)"],"2xl":"var(--un-shadow-inset) 0 25px 50px -12px rgb(0 0 0 / 0.25)",inner:"inset 0 2px 4px 0 rgb(0 0 0 / 0.05)"},ra={DEFAULT:"3px",none:"0"},na={auto:"auto"},oa={mouse:"(hover) and (pointer: fine)"};var ia={...Kn,...Nn,...In};var we={xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",prose:"65ch"},sa={auto:"auto",...we,screen:"100vw"},Xn={none:"none",...we,screen:"100vw"},aa={auto:"auto",...we,screen:"100vb"},ca={auto:"auto",...we,screen:"100vi"},la={auto:"auto",...we,screen:"100vh"},Zn={none:"none",...we,screen:"100vh"},Jn={none:"none",...we,screen:"100vb"},Qn={none:"none",...we,screen:"100vi"},ua={...we};var fa={DEFAULT:"cubic-bezier(0.4, 0, 0.2, 1)",linear:"linear",in:"cubic-bezier(0.4, 0, 1, 1)",out:"cubic-bezier(0, 0, 0.2, 1)","in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},pa={none:"none",all:"all",colors:["color","background-color","border-color","text-decoration-color","fill","stroke"].join(","),opacity:"opacity",shadow:"box-shadow",transform:"transform",get DEFAULT(){return[this.colors,"opacity","box-shadow","transform","filter","backdrop-filter"].join(",")}};var da={width:sa,height:la,maxWidth:Xn,maxHeight:Zn,minWidth:Xn,minHeight:Zn,inlineSize:ca,blockSize:aa,maxInlineSize:Qn,maxBlockSize:Jn,minInlineSize:Qn,minBlockSize:Jn,colors:Hn,fontFamily:Ds,fontSize:Is,fontWeight:qs,breakpoints:Yn,verticalBreakpoints:Xs,borderRadius:ea,lineHeight:Hs,letterSpacing:qn,wordSpacing:Ys,boxShadow:ta,textIndent:Ns,textShadow:Gs,textStrokeWidth:Ks,blur:Us,dropShadow:Bs,easing:fa,transitionProperty:pa,lineWidth:Zs,spacing:Js,duration:Qs,ringWidth:ra,preflightBase:ia,containers:ua,zIndex:na,media:oa};var ma={name:"aria",match(e,t){let r=M("aria-",e,t.generator.config.separators);if(r){let[n,o]=r,i=f.bracket(n)??t.theme.aria?.[n]??"";if(i)return{matcher:o,selector:s=>`${s}[aria-${i}]`}}},multiPass:!0};function xr(e){return{name:`${e}-aria`,match(t,r){let n=M(`${e}-aria-`,t,r.generator.config.separators);if(n){let[o,i]=n,s=f.bracket(o)??r.theme.aria?.[o]??"";if(s)return{matcher:`${e}-[[aria-${s}]]:${i}`}}}}}var ha=[xr("group"),xr("peer"),xr("parent"),xr("previous")];function ga(e){let t=e.match(/^-?\d+\.?\d*/)?.[0]||"",r=e.slice(t.length);if(r==="px"){let n=Number.parseFloat(t)-.1;return Number.isNaN(n)?e:`${n}${r}`}return`calc(${e} - 0.1px)`}var ba=/(max|min)-\[([^\]]*)\]:/;function xa(){let e={};return{name:"breakpoints",match(t,r){if(ba.test(t)){let o=t.match(ba);return{matcher:t.replace(o[0],""),handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}@media (${o[1]}-width: ${o[2]})`})}}let n=(pr(r)??[]).map(({point:o,size:i},s)=>[o,i,s]);for(let[o,i,s]of n){e[o]||(e[o]=new RegExp(`^((?:([al]t-|[<~]|max-))?${o}(?:${r.generator.config.separators.join("|")}))`));let a=t.match(e[o]);if(!a)continue;let[,c]=a,l=t.slice(c.length);if(l==="container")continue;let p=c.startsWith("lt-")||c.startsWith("<")||c.startsWith("max-"),d=c.startsWith("at-")||c.startsWith("~"),h=3e3;return p?(h-=s+1,{matcher:l,handle:(m,g)=>g({...m,parent:`${m.parent?`${m.parent} $$ `:""}@media (max-width: ${ga(i)})`,parentOrder:h})}):(h+=s+1,d&&sg({...m,parent:`${m.parent?`${m.parent} $$ `:""}@media (min-width: ${i}) and (max-width: ${ga(n[s+1][1])})`,parentOrder:h})}:{matcher:l,handle:(m,g)=>g({...m,parent:`${m.parent?`${m.parent} $$ `:""}@media (min-width: ${i})`,parentOrder:h})})}},multiPass:!0,autocomplete:"(at-|lt-|max-|)$breakpoints:"}}var ya=[I("*",e=>({selector:`${e.selector} > *`}))];function pt(e,t){return{name:`combinator:${e}`,match(r,n){if(!r.startsWith(e))return;let o=n.generator.config.separators,i=ee(`${e}-`,r,o);if(!i){for(let a of o)if(r.startsWith(`${e}${a}`)){i=["",r.slice(e.length+a.length)];break}if(!i)return}let s=f.bracket(i[0])??"";return s===""&&(s="*"),{matcher:i[1],selector:a=>`${a}${t}${s}`}},multiPass:!0}}var $a=[pt("all"," "),pt("children",">"),pt("next","+"),pt("sibling","+"),pt("siblings","~")];var va={name:"@",match(e,t){if(e.startsWith("@container"))return;let r=M("@",e,t.generator.config.separators);if(r){let[n,o,i]=r,s=f.bracket(n),a;if(s?a=f.numberWithUnit(s):a=t.theme.containers?.[n]??"",a){let c=1e3+Object.keys(t.theme.containers??{}).indexOf(n);return i&&(c+=1e3),{matcher:o,handle:(l,p)=>p({...l,parent:`${l.parent?`${l.parent} $$ `:""}@container${i?` ${i} `:" "}(min-width: ${a})`,parentOrder:c})}}}},multiPass:!0};function wa(e={}){if(e?.dark==="class"||typeof e.dark=="object"){let{dark:t=".dark",light:r=".light"}=typeof e.dark=="string"?{}:e.dark;return[I("dark",C(t).map(n=>o=>({prefix:`${n} $$ ${o.prefix}`}))),I("light",C(r).map(n=>o=>({prefix:`${n} $$ ${o.prefix}`})))]}return[N("dark","@media (prefers-color-scheme: dark)"),N("light","@media (prefers-color-scheme: light)")]}var ka={name:"data",match(e,t){let r=M("data-",e,t.generator.config.separators);if(r){let[n,o]=r,i=f.bracket(n)??t.theme.data?.[n]??"";if(i)return{matcher:o,selector:s=>`${s}[data-${i}]`}}},multiPass:!0};function yr(e){return{name:`${e}-data`,match(t,r){let n=M(`${e}-data-`,t,r.generator.config.separators);if(n){let[o,i,s]=n,a=f.bracket(o)??r.theme.data?.[o]??"";if(a)return{matcher:`${e}-[[data-${a}]]${s?`/${s}`:""}:${i}`}}}}}var Sa=[yr("group"),yr("peer"),yr("parent"),yr("previous")];var Ca=[I("rtl",e=>({prefix:`[dir="rtl"] $$ ${e.prefix}`})),I("ltr",e=>({prefix:`[dir="ltr"] $$ ${e.prefix}`}))];function Ra(){let e;return{name:"important",match(t,r){e||(e=new RegExp(`^(important(?:${r.generator.config.separators.join("|")})|!)`));let n,o=t.match(e);if(o?n=t.slice(o[0].length):t.endsWith("!")&&(n=t.slice(0,-1)),n)return{matcher:n,body:i=>(i.forEach(s=>{s[1]!=null&&(s[1]+=" !important")}),i)}}}}var Ea=N("print","@media print"),Ta={name:"media",match(e,t){let r=M("media-",e,t.generator.config.separators);if(r){let[n,o]=r,i=f.bracket(n)??"";if(i===""&&(i=t.theme.media?.[n]??""),i)return{matcher:o,handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}@media ${i}`})}}},multiPass:!0};var ja={name:"selector",match(e,t){let r=ee("selector-",e,t.generator.config.separators);if(r){let[n,o]=r,i=f.bracket(n);if(i)return{matcher:o,selector:()=>i}}}},za={name:"layer",match(e,t){let r=M("layer-",e,t.generator.config.separators);if(r){let[n,o]=r,i=f.bracket(n)??n;if(i)return{matcher:o,handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}@layer ${i}`})}}}},Aa={name:"uno-layer",match(e,t){let r=M("uno-layer-",e,t.generator.config.separators);if(r){let[n,o]=r,i=f.bracket(n)??n;if(i)return{matcher:o,layer:i}}}},Oa={name:"scope",match(e,t){let r=ee("scope-",e,t.generator.config.separators);if(r){let[n,o]=r,i=f.bracket(n);if(i)return{matcher:o,selector:s=>`${i} $$ ${s}`}}}},Pa={name:"variables",match(e,t){if(!e.startsWith("["))return;let[r,n]=ve(e,"[","]")??[];if(!(r&&n))return;let o;for(let a of t.generator.config.separators)if(n.startsWith(a)){o=n.slice(a.length);break}if(o==null)return;let i=f.bracket(r)??"",s=i.startsWith("@");if(s||i.includes("&"))return{matcher:o,handle(a,c){let l=s?{parent:`${a.parent?`${a.parent} $$ `:""}${i}`}:{selector:i.replace(/&/g,a.selector)};return c({...a,...l})}}},multiPass:!0},Va={name:"theme-variables",match(e,t){if(or(e))return{matcher:e,handle(r,n){return n({...r,entries:JSON.parse(ir(JSON.stringify(r.entries),t.theme))})}}}};var Ma=/^-?[0-9.]+(?:[a-z]+|%)?$/,Fa=/-?[0-9.]+(?:[a-z]+|%)?/,Rp=[/\b(opacity|color|flex|backdrop-filter|^filter|transform)\b/];function Ep(e){let t=e.match(it)||e.match(sr);if(t){let[r,n]=fe(`(${t[2]})${t[3]}`,"(",")"," ")??[];if(r)return`calc(${t[1]}${r} * -1)${n?` ${n}`:""}`}}var Tp=/\b(hue-rotate)\s*(\(.*)/;function jp(e){let t=e.match(Tp);if(t){let[r,n]=fe(t[2],"(",")"," ")??[];if(r){let o=Ma.test(r.slice(1,-1))?r.replace(Fa,i=>i.startsWith("-")?i.slice(1):`-${i}`):`(calc(${r} * -1))`;return`${t[1]}${o}${n?` ${n}`:""}`}}}var _a={name:"negative",match(e){if(e.startsWith("-"))return{matcher:e.slice(1),body:t=>{if(t.find(n=>n[0]===ki))return;let r=!1;return t.forEach(n=>{let o=n[1]?.toString();if(!o||o==="0"||Rp.some(a=>a.test(n[0])))return;let i=Ep(o);if(i){n[1]=i,r=!0;return}let s=jp(o);if(s){n[1]=s,r=!0;return}Ma.test(o)&&(n[1]=o.replace(Fa,a=>a.startsWith("-")?a.slice(1):`-${a}`),r=!0)}),r?t:[]}}}};var Ba="__pseudo_placeholder__",Ie=Object.fromEntries([["first-letter","::first-letter"],["first-line","::first-line"],"any-link","link","visited","target",["open","[open]"],"default","checked","indeterminate","placeholder-shown","autofill","optional","required","valid","invalid","user-valid","user-invalid","in-range","out-of-range","read-only","read-write","empty","focus-within","hover","focus","focus-visible","active","enabled","disabled","popover-open","root","empty",["even-of-type",":nth-of-type(even)"],["even",":nth-child(even)"],["odd-of-type",":nth-of-type(odd)"],["odd",":nth-child(odd)"],["nth",`:nth-child(${Ba})`],"first-of-type",["first",":first-child"],"last-of-type",["last",":last-child"],"only-child","only-of-type",["backdrop-element","::backdrop"],["placeholder","::placeholder"],["before","::before"],["after","::after"],["file","::file-selector-button"]].map(e=>Array.isArray(e)?e:[e,`:${e}`])),Da=Object.keys(Ie),Ne=Object.fromEntries([["backdrop","::backdrop"]].map(e=>Array.isArray(e)?e:[e,`:${e}`])),Ia=Object.keys(Ne),zp=["not","is","where","has"],Na=Object.fromEntries([["selection",["::selection"," *::selection"]],["marker",["::marker"," *::marker"]]]),eo=Object.entries(Ie).filter(([,e])=>!e.startsWith("::")).map(([e])=>e).sort((e,t)=>t.length-e.length).join("|"),to=Object.entries(Ne).filter(([,e])=>!e.startsWith("::")).map(([e])=>e).sort((e,t)=>t.length-e.length).join("|"),Pe=zp.join("|"),La=Object.keys(Na).sort((e,t)=>t.length-e.length).join("|");function Ap(e,t,r){let n=new RegExp(`^(${ue(t)}:)(\\S+)${ue(r)}\\1`),o,i,s,a,c=d=>{let h=ee(`${e}-`,d,[]);if(!h)return;let[m,g]=h,b=f.bracket(m);if(b==null)return;let $=g.split(o,1)?.[0]??"",R=`${t}${Q($)}`;return[$,d.slice(d.length-(g.length-$.length-1)),b.includes("&")?b.replace(/&/g,R):`${R}${b}`]},l=d=>{let h=d.match(i)||d.match(s);if(!h)return;let[m,g,b]=h,$=h[3]??"",R=Ie[b]||Ne[b]||`:${b}`;return g&&(R=`:${g}(${R})`),[$,d.slice(m.length),`${t}${Q($)}${R}`,b]},p=d=>{let h=d.match(a);if(!h)return;let[m,g,b]=h,$=h[3]??"",R=`:${g}(${b})`;return[$,d.slice(m.length),`${t}${Q($)}${R}`]};return{name:`pseudo:${e}`,match(d,h){if(o&&i&&s||(o=new RegExp(`(?:${h.generator.config.separators.join("|")})`),i=new RegExp(`^${e}-(?:(?:(${Pe})-)?(${eo}))(?:(/[\\w-]+))?(?:${h.generator.config.separators.join("|")})`),s=new RegExp(`^${e}-(?:(?:(${Pe})-)?(${to}))(?:(/[\\w-]+))?(?:${h.generator.config.separators.filter(v=>v!=="-").join("|")})`),a=new RegExp(`^${e}-(?:(${Pe})-)?\\[(.+)\\](?:(/[\\w-]+))?(?:${h.generator.config.separators.filter(v=>v!=="-").join("|")})`)),!d.startsWith(e))return;let m=c(d)||l(d)||p(d);if(!m)return;let[g,b,$,R=""]=m;return{matcher:b,handle:(v,T)=>T({...v,prefix:`${$}${r}${v.prefix}`.replace(n,"$1$2:"),sort:Da.indexOf(R)??Ia.indexOf(R)})}},multiPass:!0}}var Op=["::-webkit-resizer","::-webkit-scrollbar","::-webkit-scrollbar-button","::-webkit-scrollbar-corner","::-webkit-scrollbar-thumb","::-webkit-scrollbar-track","::-webkit-scrollbar-track-piece","::file-selector-button"],Wa=Object.entries(Ie).map(([e])=>e).sort((e,t)=>t.length-e.length).join("|"),Ua=Object.entries(Ne).map(([e])=>e).sort((e,t)=>t.length-e.length).join("|");function Ka(){let e,t,r;return[{name:"pseudo",match(n,o){e&&t||(e=new RegExp(`^(${Wa})(?:-(\\[\\w+\\]))?(?:${o.generator.config.separators.join("|")})`),t=new RegExp(`^(${Ua})(?:${o.generator.config.separators.filter(s=>s!=="-").join("|")})`));let i=n.match(e)||n.match(t);if(i){let s=Ie[i[1]]||Ne[i[1]]||`:${i[1]}`;if(i[2]){let c=f.bracket(i[2]);c&&(s=s.replace(Ba,c))}let a=Da.indexOf(i[1]);return a===-1&&(a=Ia.indexOf(i[1])),a===-1&&(a=void 0),{matcher:n.slice(i[0].length),handle:(c,l)=>{let p=s.includes("::")&&!Op.includes(s)?{pseudo:`${c.pseudo}${s}`}:{selector:`${c.selector}${s}`};return l({...c,...p,sort:a,noMerge:!0})}}}},multiPass:!0,autocomplete:`(${Wa}|${Ua}):`},{name:"pseudo:multi",match(n,o){r||(r=new RegExp(`^(${La})(?:${o.generator.config.separators.join("|")})`));let i=n.match(r);if(i)return Na[i[1]].map(a=>({matcher:n.slice(i[0].length),handle:(c,l)=>l({...c,pseudo:`${c.pseudo}${a}`})}))},multiPass:!1,autocomplete:`(${La}):`}]}function Ga(){let e,t,r;return{match(n,o){e&&t||(e=new RegExp(`^(${Pe})-(${eo})(?:${o.generator.config.separators.join("|")})`),t=new RegExp(`^(${Pe})-(${to})(?:${o.generator.config.separators.filter(s=>s!=="-").join("|")})`),r=new RegExp(`^(${Pe})-(\\[.+\\])(?:${o.generator.config.separators.filter(s=>s!=="-").join("|")})`));let i=n.match(e)||n.match(t)||n.match(r);if(i){let s=i[1],c=ve(i[2],"[","]")?f.bracket(i[2]):Ie[i[2]]||Ne[i[2]]||`:${i[2]}`;return{matcher:n.slice(i[0].length),selector:l=>`${l}:${s}(${c})`}}},multiPass:!0,autocomplete:`(${Pe})-(${eo}|${to}):`}}function Ha(e={}){let t=!!e?.attributifyPseudo,r=e?.prefix??"";r=(Array.isArray(r)?r:[r]).filter(Boolean)[0]??"";let n=(o,i)=>Ap(o,t?`[${r}${o}=""]`:`.${r}${o}`,i);return[n("group"," "),n("peer","~"),n("parent",">"),n("previous","+"),n("group-aria"," "),n("peer-aria","~"),n("parent-aria",">"),n("previous-aria","+")]}var Pp=/(part-\[(.+)\]:)(.+)/,qa={match(e){let t=e.match(Pp);if(t){let r=`part(${t[2]})`;return{matcher:e.slice(t[1].length),selector:n=>`${n}::${r}`}}},multiPass:!0};var Ya={name:"starting",match(e){if(e.startsWith("starting:"))return{matcher:e.slice(9),handle:(t,r)=>r({...t,parent:"@starting-style"})}}};var Xa={name:"supports",match(e,t){let r=M("supports-",e,t.generator.config.separators);if(r){let[n,o]=r,i=f.bracket(n)??"";if(i===""&&(i=t.theme.supports?.[n]??""),i)return{matcher:o,handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}@supports ${i}`})}}},multiPass:!0};function Za(e){return[ma,ka,za,ja,Aa,_a,Ya,Ra(),Xa,Ea,Ta,xa(),...$a,...Ka(),Ga(),...Ha(e),qa,...wa(e),...Ca,Oa,...ya,va,Pa,...Sa,...ha,Va]}var ro=(e={})=>(e.dark=e.dark??"class",e.attributifyPseudo=e.attributifyPseudo??!1,e.preflight=e.preflight??!0,e.variablePrefix=e.variablePrefix??"un-",{name:"@unocss/preset-mini",theme:da,rules:Ls,variants:Za(e),options:e,prefix:e.prefix,postprocess:Vp(e.variablePrefix),preflights:ni(e),extractorDefault:e.arbitraryVariants===!1?void 0:ri(),autocomplete:{shorthands:Ws}}),Ja=ro;function Vp(e){if(e!=="un-")return t=>{t.entries.forEach(r=>{r[0]=r[0].replace(/^--un-/,`--${e}`),typeof r[1]=="string"&&(r[1]=r[1].replace(/var\(--un-/g,`var(--${e}`))})}}function Qa(e){if(e==null||e===!1)return[];let t=r=>r.startsWith(":is(")&&r.endsWith(")")?r:r.includes("::")?r.replace(/(.*?)((?:\s\*)?::.*)/,":is($1)$2"):`:is(${r})`;return[e===!0?r=>{r.entries.forEach(n=>{n[1]!=null&&!String(n[1]).endsWith("!important")&&(n[1]+=" !important")})}:r=>{r.selector.startsWith(e)||(r.selector=`${e} ${t(r.selector)}`)}]}function ec(e){return[...C(Ja(e).postprocess),...Qa(e.important)]}var Y={l:["-left"],r:["-right"],t:["-top"],b:["-bottom"],s:["-inline-start"],e:["-inline-end"],x:["-left","-right"],y:["-top","-bottom"],"":[""],bs:["-block-start"],be:["-block-end"],is:["-inline-start"],ie:["-inline-end"],block:["-block-start","-block-end"],inline:["-inline-start","-inline-end"]},$r={...Y,s:["-inset-inline-start"],start:["-inset-inline-start"],e:["-inset-inline-end"],end:["-inset-inline-end"],bs:["-inset-block-start"],be:["-inset-block-end"],is:["-inset-inline-start"],ie:["-inset-inline-end"],block:["-inset-block-start","-inset-block-end"],inline:["-inset-inline-start","-inset-inline-end"]},vr={l:["-top-left","-bottom-left"],r:["-top-right","-bottom-right"],t:["-top-left","-top-right"],b:["-bottom-left","-bottom-right"],tl:["-top-left"],lt:["-top-left"],tr:["-top-right"],rt:["-top-right"],bl:["-bottom-left"],lb:["-bottom-left"],br:["-bottom-right"],rb:["-bottom-right"],"":[""],bs:["-start-start","-start-end"],be:["-end-start","-end-end"],s:["-end-start","-start-start"],is:["-end-start","-start-start"],e:["-start-end","-end-end"],ie:["-start-end","-end-end"],ss:["-start-start"],"bs-is":["-start-start"],"is-bs":["-start-start"],se:["-start-end"],"bs-ie":["-start-end"],"ie-bs":["-start-end"],es:["-end-start"],"be-is":["-end-start"],"is-be":["-end-start"],ee:["-end-end"],"be-ie":["-end-end"],"ie-be":["-end-end"]},ic={x:["-x"],y:["-y"],z:["-z"],"":["-x","-y"]},sc=["x","y","z"],tc=["top","top center","top left","top right","bottom","bottom center","bottom left","bottom right","left","left center","left top","left bottom","right","right center","right top","right bottom","center","center top","center bottom","center left","center right","center center"],G=Object.assign({},...tc.map(e=>({[e.replace(/ /,"-")]:e})),...tc.map(e=>({[e.replace(/\b(\w)\w+/g,"$1").replace(/ /,"")]:e}))),O=["inherit","initial","revert","revert-layer","unset"],dt=/^(calc|clamp|min|max)\s*\((.+)\)(.*)/,wr=/^(var)\s*\((.+)\)(.*)/,kr=/^(-?\d*(?:\.\d+)?)(px|pt|pc|%|r?(?:em|ex|lh|cap|ch|ic)|(?:[sld]?v|cq)(?:[whib]|min|max)|in|cm|mm|rpx)?$/i,ac=/^(-?\d*(?:\.\d+)?)$/,cc=/^(px|[sld]?v[wh])$/i,lc={px:1,vw:100,vh:100,svw:100,svh:100,dvw:100,dvh:100,lvh:100,lvw:100},uc=/^\[(color|image|length|size|position|quoted|string):/i,Mp=/,(?![^()]*\))/g,Fp=["color","border-color","background-color","outline-color","text-decoration-color","flex-grow","flex","flex-shrink","caret-color","font","gap","opacity","visibility","z-index","font-weight","zoom","text-shadow","transform","box-shadow","border","background-position","left","right","top","bottom","object-position","max-height","min-height","max-width","min-width","height","width","border-width","margin","padding","outline-width","outline-offset","font-size","line-height","text-indent","vertical-align","border-spacing","letter-spacing","word-spacing","stroke","filter","backdrop-filter","fill","mask","mask-size","mask-border","clip-path","clip","border-radius"];function ae(e){return+e.toFixed(10)}function _p(e){let t=e.match(kr);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(n&&!Number.isNaN(o))return`${ae(o)}${n}`}function Lp(e){if(e==="auto"||e==="a")return"auto"}function Wp(e){if(!e)return;if(cc.test(e))return`${lc[e]}${e}`;let t=e.match(kr);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(!Number.isNaN(o))return o===0?"0":n?`${ae(o)}${n}`:`${ae(o/4)}rem`}function Up(e){if(cc.test(e))return`${lc[e]}${e}`;let t=e.match(kr);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(!Number.isNaN(o))return n?`${ae(o)}${n}`:`${ae(o)}px`}function Bp(e){if(!ac.test(e))return;let t=Number.parseFloat(e);if(!Number.isNaN(t))return ae(t)}function Dp(e){if(e.endsWith("%")&&(e=e.slice(0,-1)),!ac.test(e))return;let t=Number.parseFloat(e);if(!Number.isNaN(t))return`${ae(t/100)}`}function Ip(e){if(!e)return;if(e==="full")return"100%";let[t,r]=e.split("/"),n=Number.parseFloat(t)/Number.parseFloat(r);if(!Number.isNaN(n))return n===0?"0":`${ae(n*100)}%`}function Sr(e,t){if(e&&e.startsWith("[")&&e.endsWith("]")){let r,n,o=e.match(uc);if(o?(t||(n=o[1]),r=e.slice(o[0].length,-1)):r=e.slice(1,-1),!r||r==='=""')return;r.startsWith("--")&&(r=`var(${r})`);let i=0;for(let s of r)if(s==="[")i+=1;else if(s==="]"&&(i-=1,i<0))return;if(i)return;switch(n){case"string":return r.replace(/(^|[^\\])_/g,"$1 ").replace(/\\_/g,"_");case"quoted":return r.replace(/(^|[^\\])_/g,"$1 ").replace(/\\_/g,"_").replace(/(["\\])/g,"\\$1").replace(/^(.+)$/,'"$1"')}return r.replace(/(url\(.*?\))/g,s=>s.replace(/_/g,"\\_")).replace(/(^|[^\\])_/g,"$1 ").replace(/\\_/g,"_").replace(/(?:calc|clamp|max|min)\((.*)/g,s=>{let a=[];return s.replace(/var\((--.+?)[,)]/g,(c,l)=>(a.push(l),c.replace(l,"--un-calc"))).replace(/(-?\d*\.?\d(?!-\d.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 ").replace(/--un-calc/g,()=>a.shift())})}}function Np(e){return Sr(e)}function Kp(e){return Sr(e,"color")}function Gp(e){return Sr(e,"length")}function Hp(e){return Sr(e,"position")}function qp(e){if(/^\$[^\s'"`;{}]/.test(e)){let[t,r]=e.slice(1).split(",");return`var(--${Q(t)}${r?`, ${r}`:""})`}}function Yp(e){let t=e.match(/^(-?[0-9.]+)(s|ms)?$/i);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(!Number.isNaN(o))return o===0&&!n?"0s":n?`${ae(o)}${n}`:`${ae(o)}ms`}function Xp(e){let t=e.match(/^(-?[0-9.]+)(deg|rad|grad|turn)?$/i);if(!t)return;let[,r,n]=t,o=Number.parseFloat(r);if(!Number.isNaN(o))return o===0?"0":n?`${ae(o)}${n}`:`${ae(o)}deg`}function Zp(e){if(O.includes(e))return e}function Jp(e){if(e.split(",").every(t=>Fp.includes(t)))return e}function Qp(e){if(["top","left","right","bottom","center"].includes(e))return e}var fc={__proto__:null,auto:Lp,bracket:Np,bracketOfColor:Kp,bracketOfLength:Gp,bracketOfPosition:Hp,cssvar:qp,degree:Xp,fraction:Ip,global:Zp,number:Bp,numberWithUnit:_p,percent:Dp,position:Qp,properties:Jp,px:Up,rem:Wp,time:Yp},pc=er(fc),u=pc,oo="$$mini-no-negative";function _(e){return([t,r,n],{theme:o})=>{let i=o.spacing?.[n||"DEFAULT"]??u.bracket.cssvar.global.auto.fraction.rem(n);if(i!=null)return Y[r].map(s=>[`${e}${s}`,i]);if(n?.startsWith("-")){let s=o.spacing?.[n.slice(1)];if(s!=null)return Y[r].map(a=>[`${e}${a}`,`calc(${s} * -1)`])}}}function rc(e,t,r="colors"){let n=e[r],o=-1;for(let i of t){if(o+=1,n&&typeof n!="string"){let s=t.slice(o).join("-").replace(/(-[a-z])/g,a=>a.slice(1).toUpperCase());if(n[s])return n[s];if(n[i]){n=n[i];continue}}return}return n}function nc(e,t,r){return rc(e,t,r)||rc(e,t,"colors")}function Cr(e,t){let[r,n]=fe(e,"[","]",["/",":"])??[];if(r!=null){let o=(r.match(uc)??[])[1];if(o==null||o===t)return[r,n]}}function Ve(e,t,r){let n=Cr(e,"color");if(!n)return;let[o,i]=n,s=o.replace(/([a-z])(\d)/g,"$1-$2").split(/-/g),[a]=s;if(!a)return;let c,l=u.bracketOfColor(o),p=l||o;if(u.numberWithUnit(p))return;if(/^#[\da-f]+$/i.test(p)?c=p:/^hex-[\da-fA-F]+$/.test(p)?c=`#${p.slice(4)}`:o.startsWith("$")&&(c=u.cssvar(o)),c=c||l,!c){let h=nc(t,[o],r);typeof h=="string"&&(c=h)}let d="DEFAULT";if(!c){let h=s,m,[g]=s.slice(-1);/^\d+$/.test(g)&&(d=m=g,h=s.slice(0,-1));let b=nc(t,h,r);typeof b=="object"?c=b[m??d]:typeof b=="string"&&!m&&(c=b)}return{opacity:i,name:a,no:d,color:c,cssColor:q(c),alpha:u.bracket.cssvar.percent(i??"")}}function W(e,t,r,n){return([,o],{theme:i,generator:s})=>{let a=Ve(o??"",i,r);if(!a)return;let{alpha:c,color:l,cssColor:p}=a,h=s.config.envMode==="dev"&&l?` /* ${l} */`:"",m={};if(p)if(c!=null)m[e]=z(p,c)+h;else{let g=`--un-${t}-opacity`,b=z(p,`var(${g})`);b.includes(g)&&(m[g]=oe(p)),m[e]=b+h}else if(l)if(c!=null)m[e]=z(l,c)+h;else{let g=`--un-${t}-opacity`,b=z(l,`var(${g})`);b.includes(g)&&(m[g]=1),m[e]=b+h}if(n?.(m)!==!1)return m}}function Me(e,t){let r=[];e=C(e);for(let n=0;nNumber.parseInt(i[1].replace(oc,""))-Number.parseInt(s[1].replace(oc,""))).map(([i,s])=>({point:i,size:s}));return no.set(e,o),o}function k(e,t){return O.map(r=>[`${e}-${r}`,{[t??e]:r}])}function ke(e){return e!=null&&dt.test(e)}function io(e){return e[0]==="["&&e.slice(-1)==="]"&&(e=e.slice(1,-1)),dt.test(e)||kr.test(e)}function mt(e,t,r){let n=t.split(Mp);return e||!e&&n.length===1?ic[e].map(o=>[`--un-${r}${o}`,t]):n.map((o,i)=>[`--un-${r}-${sc[i]}`,o])}var dc=[[/^(?:animate-)?keyframes-(.+)$/,([,e],{theme:t})=>{let r=t.animation?.keyframes?.[e];if(r)return[`@keyframes ${e}${r}`,{animation:e}]},{autocomplete:["animate-keyframes-$animation.keyframes","keyframes-$animation.keyframes"]}],[/^animate-(.+)$/,([,e],{theme:t})=>{let r=t.animation?.keyframes?.[e];if(r){let n=t.animation?.durations?.[e]??"1s",o=t.animation?.timingFns?.[e]??"linear",i=t.animation?.counts?.[e]??1,s=t.animation?.properties?.[e];return[`@keyframes ${e}${r}`,{animation:`${e} ${n} ${o} ${i}`,...s}]}return{animation:u.bracket.cssvar(e)}},{autocomplete:"animate-$animation.keyframes"}],[/^animate-name-(.+)/,([,e])=>({"animation-name":u.bracket.cssvar(e)??e})],[/^animate-duration-(.+)$/,([,e],{theme:t})=>({"animation-duration":t.duration?.[e||"DEFAULT"]??u.bracket.cssvar.time(e)}),{autocomplete:["animate-duration","animate-duration-$duration"]}],[/^animate-delay-(.+)$/,([,e],{theme:t})=>({"animation-delay":t.duration?.[e||"DEFAULT"]??u.bracket.cssvar.time(e)}),{autocomplete:["animate-delay","animate-delay-$duration"]}],[/^animate-ease(?:-(.+))?$/,([,e],{theme:t})=>({"animation-timing-function":t.easing?.[e||"DEFAULT"]??u.bracket.cssvar(e)}),{autocomplete:["animate-ease","animate-ease-$easing"]}],[/^animate-(fill-mode-|fill-|mode-)?(.+)$/,([,e,t])=>["none","forwards","backwards","both",e?O:[]].includes(t)?{"animation-fill-mode":t}:void 0,{autocomplete:["animate-(fill|mode|fill-mode)","animate-(fill|mode|fill-mode)-(none|forwards|backwards|both|inherit|initial|revert|revert-layer|unset)","animate-(none|forwards|backwards|both|inherit|initial|revert|revert-layer|unset)"]}],[/^animate-(direction-)?(.+)$/,([,e,t])=>["normal","reverse","alternate","alternate-reverse",e?O:[]].includes(t)?{"animation-direction":t}:void 0,{autocomplete:["animate-direction","animate-direction-(normal|reverse|alternate|alternate-reverse|inherit|initial|revert|revert-layer|unset)","animate-(normal|reverse|alternate|alternate-reverse|inherit|initial|revert|revert-layer|unset)"]}],[/^animate-(?:iteration-count-|iteration-|count-)(.+)$/,([,e])=>({"animation-iteration-count":u.bracket.cssvar(e)??e.replace(/-/g,",")}),{autocomplete:["animate-(iteration|count|iteration-count)","animate-(iteration|count|iteration-count)-"]}],[/^animate-(play-state-|play-|state-)?(.+)$/,([,e,t])=>["paused","running",e?O:[]].includes(t)?{"animation-play-state":t}:void 0,{autocomplete:["animate-(play|state|play-state)","animate-(play|state|play-state)-(paused|running|inherit|initial|revert|revert-layer|unset)","animate-(paused|running|inherit|initial|revert|revert-layer|unset)"]}],["animate-none",{animation:"none"}],...k("animate","animation")];function mc(e){return e?z(e,0):"rgb(255 255 255 / 0)"}function ed(e,t,r,n){return t?n!=null?z(t,n):z(t,`var(--un-${e}-opacity, ${oe(t)})`):z(r,n)}function so(){return([,e,t],{theme:r})=>{let n=Ve(t,r,"backgroundColor");if(!n)return;let{alpha:o,color:i,cssColor:s}=n;if(!i)return;let a=ed(e,s,i,o);switch(e){case"from":return{"--un-gradient-from-position":"0%","--un-gradient-from":`${a} var(--un-gradient-from-position)`,"--un-gradient-to-position":"100%","--un-gradient-to":`${mc(s)} var(--un-gradient-to-position)`,"--un-gradient-stops":"var(--un-gradient-from), var(--un-gradient-to)"};case"via":return{"--un-gradient-via-position":"50%","--un-gradient-to":mc(s),"--un-gradient-stops":`var(--un-gradient-from), ${a} var(--un-gradient-via-position), var(--un-gradient-to)`};case"to":return{"--un-gradient-to-position":"100%","--un-gradient-to":`${a} var(--un-gradient-to-position)`}}}}function td(){return([,e,t])=>({[`--un-gradient-${e}-position`]:`${Number(u.bracket.cssvar.percent(t))*100}%`})}var hc=[[/^bg-gradient-(.+)$/,([,e])=>({"--un-gradient":u.bracket(e)}),{autocomplete:["bg-gradient","bg-gradient-(from|to|via)","bg-gradient-(from|to|via)-$colors","bg-gradient-(from|to|via)-(op|opacity)","bg-gradient-(from|to|via)-(op|opacity)-"]}],[/^(?:bg-gradient-)?stops-(\[.+\])$/,([,e])=>({"--un-gradient-stops":u.bracket(e)})],[/^(?:bg-gradient-)?(from)-(.+)$/,so()],[/^(?:bg-gradient-)?(via)-(.+)$/,so()],[/^(?:bg-gradient-)?(to)-(.+)$/,so()],[/^(?:bg-gradient-)?(from|via|to)-op(?:acity)?-?(.+)$/,([,e,t])=>({[`--un-${e}-opacity`]:u.bracket.percent(t)})],[/^(from|via|to)-([\d.]+)%$/,td()],[/^bg-gradient-((?:repeating-)?(?:linear|radial|conic))$/,([,e])=>({"background-image":`${e}-gradient(var(--un-gradient, var(--un-gradient-stops, rgb(255 255 255 / 0))))`}),{autocomplete:["bg-gradient-repeating","bg-gradient-(linear|radial|conic)","bg-gradient-repeating-(linear|radial|conic)"]}],[/^bg-gradient-to-([rltb]{1,2})$/,([,e])=>{if(e in G)return{"--un-gradient-shape":`to ${G[e]} in oklch`,"--un-gradient":"var(--un-gradient-shape), var(--un-gradient-stops)","background-image":"linear-gradient(var(--un-gradient))"}},{autocomplete:`bg-gradient-to-(${Object.keys(G).filter(e=>e.length<=2&&Array.from(e).every(t=>"rltb".includes(t))).join("|")})`}],[/^(?:bg-gradient-)?shape-(.+)$/,([,e])=>{let t=e in G?`to ${G[e]}`:u.bracket(e);if(t!=null)return{"--un-gradient-shape":`${t} in oklch`,"--un-gradient":"var(--un-gradient-shape), var(--un-gradient-stops)"}},{autocomplete:["bg-gradient-shape",`bg-gradient-shape-(${Object.keys(G).join("|")})`,`shape-(${Object.keys(G).join("|")})`]}],["bg-none",{"background-image":"none"}],["box-decoration-slice",{"box-decoration-break":"slice"}],["box-decoration-clone",{"box-decoration-break":"clone"}],...k("box-decoration","box-decoration-break"),["bg-auto",{"background-size":"auto"}],["bg-cover",{"background-size":"cover"}],["bg-contain",{"background-size":"contain"}],["bg-fixed",{"background-attachment":"fixed"}],["bg-local",{"background-attachment":"local"}],["bg-scroll",{"background-attachment":"scroll"}],["bg-clip-border",{"-webkit-background-clip":"border-box","background-clip":"border-box"}],["bg-clip-content",{"-webkit-background-clip":"content-box","background-clip":"content-box"}],["bg-clip-padding",{"-webkit-background-clip":"padding-box","background-clip":"padding-box"}],["bg-clip-text",{"-webkit-background-clip":"text","background-clip":"text"}],...O.map(e=>[`bg-clip-${e}`,{"-webkit-background-clip":e,"background-clip":e}]),[/^bg-([-\w]{3,})$/,([,e])=>({"background-position":G[e]})],["bg-repeat",{"background-repeat":"repeat"}],["bg-no-repeat",{"background-repeat":"no-repeat"}],["bg-repeat-x",{"background-repeat":"repeat-x"}],["bg-repeat-y",{"background-repeat":"repeat-y"}],["bg-repeat-round",{"background-repeat":"round"}],["bg-repeat-space",{"background-repeat":"space"}],...k("bg-repeat","background-repeat"),["bg-origin-border",{"background-origin":"border-box"}],["bg-origin-padding",{"background-origin":"padding-box"}],["bg-origin-content",{"background-origin":"content-box"}],...k("bg-origin","background-origin")];var ao={disc:"disc",circle:"circle",square:"square",decimal:"decimal","zero-decimal":"decimal-leading-zero",greek:"lower-greek",roman:"lower-roman","upper-roman":"upper-roman",alpha:"lower-alpha","upper-alpha":"upper-alpha",latin:"lower-latin","upper-latin":"upper-latin"},gc=[[/^list-(.+?)(?:-(outside|inside))?$/,([,e,t])=>{let r=ao[e];if(r)return t?{"list-style-position":t,"list-style-type":r}:{"list-style-type":r}},{autocomplete:[`list-(${Object.keys(ao).join("|")})`,`list-(${Object.keys(ao).join("|")})-(outside|inside)`]}],["list-outside",{"list-style-position":"outside"}],["list-inside",{"list-style-position":"inside"}],["list-none",{"list-style-type":"none"}],[/^list-image-(.+)$/,([,e])=>{if(/^\[url\(.+\)\]$/.test(e))return{"list-style-image":u.bracket(e)}}],["list-image-none",{"list-style-image":"none"}],...k("list","list-style-type")],bc=[[/^accent-(.+)$/,W("accent-color","accent","accentColor"),{autocomplete:"accent-$colors"}],[/^accent-op(?:acity)?-?(.+)$/,([,e])=>({"--un-accent-opacity":u.bracket.percent(e)}),{autocomplete:["accent-(op|opacity)","accent-(op|opacity)-"]}]],xc=[[/^caret-(.+)$/,W("caret-color","caret","textColor"),{autocomplete:"caret-$colors"}],[/^caret-op(?:acity)?-?(.+)$/,([,e])=>({"--un-caret-opacity":u.bracket.percent(e)}),{autocomplete:["caret-(op|opacity)","caret-(op|opacity)-"]}]],yc=[["image-render-auto",{"image-rendering":"auto"}],["image-render-edge",{"image-rendering":"crisp-edges"}],["image-render-pixel",[["-ms-interpolation-mode","nearest-neighbor"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-pixelated"],["image-rendering","pixelated"]]]],$c=[["overscroll-auto",{"overscroll-behavior":"auto"}],["overscroll-contain",{"overscroll-behavior":"contain"}],["overscroll-none",{"overscroll-behavior":"none"}],...k("overscroll","overscroll-behavior"),["overscroll-x-auto",{"overscroll-behavior-x":"auto"}],["overscroll-x-contain",{"overscroll-behavior-x":"contain"}],["overscroll-x-none",{"overscroll-behavior-x":"none"}],...k("overscroll-x","overscroll-behavior-x"),["overscroll-y-auto",{"overscroll-behavior-y":"auto"}],["overscroll-y-contain",{"overscroll-behavior-y":"contain"}],["overscroll-y-none",{"overscroll-behavior-y":"none"}],...k("overscroll-y","overscroll-behavior-y")],vc=[["scroll-auto",{"scroll-behavior":"auto"}],["scroll-smooth",{"scroll-behavior":"smooth"}],...k("scroll","scroll-behavior")];var wc=[[/^columns-(.+)$/,([,e])=>({columns:u.bracket.global.number.auto.numberWithUnit(e)}),{autocomplete:"columns-"}],["break-before-auto",{"break-before":"auto"}],["break-before-avoid",{"break-before":"avoid"}],["break-before-all",{"break-before":"all"}],["break-before-avoid-page",{"break-before":"avoid-page"}],["break-before-page",{"break-before":"page"}],["break-before-left",{"break-before":"left"}],["break-before-right",{"break-before":"right"}],["break-before-column",{"break-before":"column"}],...k("break-before"),["break-inside-auto",{"break-inside":"auto"}],["break-inside-avoid",{"break-inside":"avoid"}],["break-inside-avoid-page",{"break-inside":"avoid-page"}],["break-inside-avoid-column",{"break-inside":"avoid-column"}],...k("break-inside"),["break-after-auto",{"break-after":"auto"}],["break-after-avoid",{"break-after":"avoid"}],["break-after-all",{"break-after":"all"}],["break-after-avoid-page",{"break-after":"avoid-page"}],["break-after-page",{"break-after":"page"}],["break-after-left",{"break-after":"left"}],["break-after-right",{"break-after":"right"}],["break-after-column",{"break-after":"column"}],...k("break-after")];var rd=/@media \(min-width: (.+)\)/,kc=[[/^__container$/,(e,t)=>{let{theme:r,variantHandlers:n}=t,o=r.container?.padding,i;V(o)?i=o:i=o?.DEFAULT;let s=r.container?.maxWidth,a;for(let l of n){let p=l.handle?.({},d=>d)?.parent;if(V(p)){let d=p.match(rd)?.[1];if(d){let m=(Te(t)??[]).find(g=>g.size===d)?.point;s?m&&(a=s?.[m]):a=d,m&&!V(o)&&(i=o?.[m]??i)}}}let c={"max-width":a};return n.length||(c.width="100%"),r.container?.center&&(c["margin-left"]="auto",c["margin-right"]="auto"),o&&(c["padding-left"]=i,c["padding-right"]=i),c},{internal:!0}]],Sc=[[/^(?:(\w+)[:-])?container$/,([,e],t)=>{let r=(Te(t)??[]).map(o=>o.point);if(e){if(!r.includes(e))return;r=r.slice(r.indexOf(e))}let n=r.map(o=>`${o}:__container`);return e||n.unshift("__container"),n}]];var nd=["auto","default","none","context-menu","help","pointer","progress","wait","cell","crosshair","text","vertical-text","alias","copy","move","no-drop","not-allowed","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out"],od=["none","strict","content","size","inline-size","layout","style","paint"],j=" ",ht=[["inline",{display:"inline"}],["block",{display:"block"}],["inline-block",{display:"inline-block"}],["contents",{display:"contents"}],["flow-root",{display:"flow-root"}],["list-item",{display:"list-item"}],["hidden",{display:"none"}],[/^display-(.+)$/,([,e])=>({display:u.bracket.cssvar.global(e)})]],gt=[["visible",{visibility:"visible"}],["invisible",{visibility:"hidden"}],["backface-visible",{"backface-visibility":"visible"}],["backface-hidden",{"backface-visibility":"hidden"}],...k("backface","backface-visibility")],bt=[[/^cursor-(.+)$/,([,e])=>({cursor:u.bracket.cssvar.global(e)})],...nd.map(e=>[`cursor-${e}`,{cursor:e}])],xt=[[/^contain-(.*)$/,([,e])=>u.bracket(e)!=null?{contain:u.bracket(e).split(" ").map(t=>u.cssvar.fraction(t)??t).join(" ")}:od.includes(e)?{contain:e}:void 0]],yt=[["pointer-events-auto",{"pointer-events":"auto"}],["pointer-events-none",{"pointer-events":"none"}],...k("pointer-events")],$t=[["resize-x",{resize:"horizontal"}],["resize-y",{resize:"vertical"}],["resize",{resize:"both"}],["resize-none",{resize:"none"}],...k("resize")],vt=[["select-auto",{"-webkit-user-select":"auto","user-select":"auto"}],["select-all",{"-webkit-user-select":"all","user-select":"all"}],["select-text",{"-webkit-user-select":"text","user-select":"text"}],["select-none",{"-webkit-user-select":"none","user-select":"none"}],...k("select","user-select")],wt=[[/^(?:whitespace-|ws-)([-\w]+)$/,([,e])=>["normal","nowrap","pre","pre-line","pre-wrap","break-spaces",...O].includes(e)?{"white-space":e}:void 0,{autocomplete:"(whitespace|ws)-(normal|nowrap|pre|pre-line|pre-wrap|break-spaces)"}]],kt=[[/^intrinsic-size-(.+)$/,([,e])=>({"contain-intrinsic-size":u.bracket.cssvar.global.fraction.rem(e)}),{autocomplete:"intrinsic-size-"}],["content-visibility-visible",{"content-visibility":"visible"}],["content-visibility-hidden",{"content-visibility":"hidden"}],["content-visibility-auto",{"content-visibility":"auto"}],...k("content-visibility")],St=[[/^content-(.+)$/,([,e])=>({content:u.bracket.cssvar(e)})],["content-empty",{content:'""'}],["content-none",{content:"none"}]],Ct=[["break-normal",{"overflow-wrap":"normal","word-break":"normal"}],["break-words",{"overflow-wrap":"break-word"}],["break-all",{"word-break":"break-all"}],["break-keep",{"word-break":"keep-all"}],["break-anywhere",{"overflow-wrap":"anywhere"}]],Rt=[["text-wrap",{"text-wrap":"wrap"}],["text-nowrap",{"text-wrap":"nowrap"}],["text-balance",{"text-wrap":"balance"}],["text-pretty",{"text-wrap":"pretty"}]],Et=[["truncate",{overflow:"hidden","text-overflow":"ellipsis","white-space":"nowrap"}],["text-truncate",{overflow:"hidden","text-overflow":"ellipsis","white-space":"nowrap"}],["text-ellipsis",{"text-overflow":"ellipsis"}],["text-clip",{"text-overflow":"clip"}]],Tt=[["case-upper",{"text-transform":"uppercase"}],["case-lower",{"text-transform":"lowercase"}],["case-capital",{"text-transform":"capitalize"}],["case-normal",{"text-transform":"none"}],...k("case","text-transform")],jt=[["italic",{"font-style":"italic"}],["not-italic",{"font-style":"normal"}],["font-italic",{"font-style":"italic"}],["font-not-italic",{"font-style":"normal"}],["oblique",{"font-style":"oblique"}],["not-oblique",{"font-style":"normal"}],["font-oblique",{"font-style":"oblique"}],["font-not-oblique",{"font-style":"normal"}]],zt=[["antialiased",{"-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale"}],["subpixel-antialiased",{"-webkit-font-smoothing":"auto","-moz-osx-font-smoothing":"auto"}]],At=[["field-sizing-fixed",{"field-sizing":"fixed"}],["field-sizing-content",{"field-sizing":"content"}]],Ge={"--un-ring-inset":j,"--un-ring-offset-width":"0px","--un-ring-offset-color":"#fff","--un-ring-width":"0px","--un-ring-color":"rgb(147 197 253 / 0.5)","--un-shadow":"0 0 rgb(0 0 0 / 0)"},id=Object.keys(Ge),Ot=[[/^ring(?:-(.+))?$/,([,e],{theme:t})=>{let r=t.ringWidth?.[e||"DEFAULT"]??u.px(e||"1");if(r)return{"--un-ring-width":r,"--un-ring-offset-shadow":"var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color)","--un-ring-shadow":"var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color)","box-shadow":"var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow)"}},{custom:{preflightKeys:id},autocomplete:"ring-$ringWidth"}],[/^ring-(?:width-|size-)(.+)$/,jc,{autocomplete:"ring-(width|size)-$lineWidth"}],["ring-offset",{"--un-ring-offset-width":"1px"}],[/^ring-offset-(?:width-|size-)?(.+)$/,([,e],{theme:t})=>({"--un-ring-offset-width":t.lineWidth?.[e]??u.bracket.cssvar.px(e)}),{autocomplete:"ring-offset-(width|size)-$lineWidth"}],[/^ring-(.+)$/,sd,{autocomplete:"ring-$colors"}],[/^ring-op(?:acity)?-?(.+)$/,([,e])=>({"--un-ring-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"ring-(op|opacity)-"}],[/^ring-offset-(.+)$/,W("--un-ring-offset-color","ring-offset","borderColor"),{autocomplete:"ring-offset-$colors"}],[/^ring-offset-op(?:acity)?-?(.+)$/,([,e])=>({"--un-ring-offset-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"ring-offset-(op|opacity)-"}],["ring-inset",{"--un-ring-inset":"inset"}]];function jc([,e],{theme:t}){return{"--un-ring-width":t.ringWidth?.[e]??u.bracket.cssvar.px(e)}}function sd(e,t){return ke(u.bracket(e[1]))?jc(e,t):W("--un-ring-color","ring","borderColor")(e,t)}var He={"--un-ring-offset-shadow":"0 0 rgb(0 0 0 / 0)","--un-ring-shadow":"0 0 rgb(0 0 0 / 0)","--un-shadow-inset":j,"--un-shadow":"0 0 rgb(0 0 0 / 0)"},ad=Object.keys(He),Pt=[[/^shadow(?:-(.+))?$/,(e,t)=>{let[,r]=e,{theme:n}=t,o=n.boxShadow?.[r||"DEFAULT"],i=r?u.bracket.cssvar(r):void 0;return(o!=null||i!=null)&&!Fe(i,n,"shadowColor")?{"--un-shadow":Me(o||i,"--un-shadow-color").join(","),"box-shadow":"var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow)"}:W("--un-shadow-color","shadow","shadowColor")(e,t)},{custom:{preflightKeys:ad},autocomplete:["shadow-$colors","shadow-$boxShadow"]}],[/^shadow-op(?:acity)?-?(.+)$/,([,e])=>({"--un-shadow-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"shadow-(op|opacity)-"}],["shadow-inset",{"--un-shadow-inset":"inset"}]],Rr=["translate","rotate","scale"],cd=["translateX(var(--un-translate-x))","translateY(var(--un-translate-y))","rotate(var(--un-rotate))","rotateZ(var(--un-rotate-z))","skewX(var(--un-skew-x))","skewY(var(--un-skew-y))","scaleX(var(--un-scale-x))","scaleY(var(--un-scale-y))"].join(" "),Ke=["translateX(var(--un-translate-x))","translateY(var(--un-translate-y))","translateZ(var(--un-translate-z))","rotate(var(--un-rotate))","rotateX(var(--un-rotate-x))","rotateY(var(--un-rotate-y))","rotateZ(var(--un-rotate-z))","skewX(var(--un-skew-x))","skewY(var(--un-skew-y))","scaleX(var(--un-scale-x))","scaleY(var(--un-scale-y))","scaleZ(var(--un-scale-z))"].join(" "),ld=["translate3d(var(--un-translate-x), var(--un-translate-y), var(--un-translate-z))","rotate(var(--un-rotate))","rotateX(var(--un-rotate-x))","rotateY(var(--un-rotate-y))","rotateZ(var(--un-rotate-z))","skewX(var(--un-skew-x))","skewY(var(--un-skew-y))","scaleX(var(--un-scale-x))","scaleY(var(--un-scale-y))","scaleZ(var(--un-scale-z))"].join(" "),qe={"--un-rotate":0,"--un-rotate-x":0,"--un-rotate-y":0,"--un-rotate-z":0,"--un-scale-x":1,"--un-scale-y":1,"--un-scale-z":1,"--un-skew-x":0,"--un-skew-y":0,"--un-translate-x":0,"--un-translate-y":0,"--un-translate-z":0},be=Object.keys(qe),Vt=[[/^(?:transform-)?origin-(.+)$/,([,e])=>({"transform-origin":G[e]??u.bracket.cssvar(e)}),{autocomplete:[`transform-origin-(${Object.keys(G).join("|")})`,`origin-(${Object.keys(G).join("|")})`]}],[/^(?:transform-)?perspect(?:ive)?-(.+)$/,([,e])=>{let t=u.bracket.cssvar.px.numberWithUnit(e);if(t!=null)return{"-webkit-perspective":t,perspective:t}}],[/^(?:transform-)?perspect(?:ive)?-origin-(.+)$/,([,e])=>{let t=u.bracket.cssvar(e)??(e.length>=3?G[e]:void 0);if(t!=null)return{"-webkit-perspective-origin":t,"perspective-origin":t}}],[/^(?:transform-)?translate-()(.+)$/,Cc,{custom:{preflightKeys:be}}],[/^(?:transform-)?translate-([xyz])-(.+)$/,Cc,{custom:{preflightKeys:be}}],[/^(?:transform-)?rotate-()(.+)$/,Ec,{custom:{preflightKeys:be}}],[/^(?:transform-)?rotate-([xyz])-(.+)$/,Ec,{custom:{preflightKeys:be}}],[/^(?:transform-)?skew-()(.+)$/,Tc,{custom:{preflightKeys:be}}],[/^(?:transform-)?skew-([xy])-(.+)$/,Tc,{custom:{preflightKeys:be},autocomplete:["transform-skew-(x|y)-","skew-(x|y)-"]}],[/^(?:transform-)?scale-()(.+)$/,Rc,{custom:{preflightKeys:be}}],[/^(?:transform-)?scale-([xyz])-(.+)$/,Rc,{custom:{preflightKeys:be},autocomplete:[`transform-(${Rr.join("|")})-`,`transform-(${Rr.join("|")})-(x|y|z)-`,`(${Rr.join("|")})-`,`(${Rr.join("|")})-(x|y|z)-`]}],[/^(?:transform-)?preserve-3d$/,()=>({"transform-style":"preserve-3d"})],[/^(?:transform-)?preserve-flat$/,()=>({"transform-style":"flat"})],["transform",{transform:Ke},{custom:{preflightKeys:be}}],["transform-cpu",{transform:cd},{custom:{preflightKeys:["--un-translate-x","--un-translate-y","--un-rotate","--un-rotate-z","--un-skew-x","--un-skew-y","--un-scale-x","--un-scale-y"]}}],["transform-gpu",{transform:ld},{custom:{preflightKeys:be}}],["transform-none",{transform:"none"}],...k("transform")];function Cc([,e,t],{theme:r}){let n=r.spacing?.[t]??u.bracket.cssvar.fraction.rem(t);if(n!=null)return[...mt(e,n,"translate"),["transform",Ke]]}function Rc([,e,t]){let r=u.bracket.cssvar.fraction.percent(t);if(r!=null)return[...mt(e,r,"scale"),["transform",Ke]]}function Ec([,e="",t]){let r=u.bracket.cssvar.degree(t);if(r!=null)return e?{"--un-rotate":0,[`--un-rotate-${e}`]:r,transform:Ke}:{"--un-rotate-x":0,"--un-rotate-y":0,"--un-rotate-z":0,"--un-rotate":r,transform:Ke}}function Tc([,e,t]){let r=u.bracket.cssvar.degree(t);if(r!=null)return[...mt(e,r,"skew"),["transform",Ke]]}var zc={mid:"middle",base:"baseline",btm:"bottom",baseline:"baseline",top:"top",start:"top",middle:"middle",bottom:"bottom",end:"bottom","text-top":"text-top","text-bottom":"text-bottom",sub:"sub",super:"super",...Object.fromEntries(O.map(e=>[e,e]))},jr=[[/^(?:vertical|align|v)-([-\w]+%?)$/,([,e])=>({"vertical-align":zc[e]??u.numberWithUnit(e)}),{autocomplete:[`(vertical|align|v)-(${Object.keys(zc).join("|")})`,"(vertical|align|v)-"]}]],Ac=["center","left","right","justify","start","end"],zr=[...Ac.map(e=>[`text-${e}`,{"text-align":e}]),...[...O,...Ac].map(e=>[`text-align-${e}`,{"text-align":e}])],Ar=[[/^outline-(?:width-|size-)?(.+)$/,Fc,{autocomplete:"outline-(width|size)-"}],[/^outline-(?:color-)?(.+)$/,ud,{autocomplete:"outline-$colors"}],[/^outline-offset-(.+)$/,([,e],{theme:t})=>({"outline-offset":t.lineWidth?.[e]??u.bracket.cssvar.global.px(e)}),{autocomplete:"outline-(offset)-"}],["outline",{"outline-style":"solid"}],...["auto","dashed","dotted","double","hidden","solid","groove","ridge","inset","outset",...O].map(e=>[`outline-${e}`,{"outline-style":e}]),["outline-none",{outline:"2px solid transparent","outline-offset":"2px"}]];function Fc([,e],{theme:t}){return{"outline-width":t.lineWidth?.[e]??u.bracket.cssvar.global.px(e)}}function ud(e,t){return ke(u.bracket(e[1]))?Fc(e,t):W("outline-color","outline-color","borderColor")(e,t)}var Or=[["appearance-auto",{"-webkit-appearance":"auto",appearance:"auto"}],["appearance-none",{"-webkit-appearance":"none",appearance:"none"}]];function fd(e){return u.properties.auto.global(e)??{contents:"contents",scroll:"scroll-position"}[e]}var Pr=[[/^will-change-(.+)/,([,e])=>({"will-change":fd(e)})]],je=["solid","dashed","dotted","double","hidden","none","groove","ridge","inset","outset",...O],Vr=[[/^(?:border|b)()(?:-(.+))?$/,de,{autocomplete:"(border|b)-"}],[/^(?:border|b)-([xy])(?:-(.+))?$/,de],[/^(?:border|b)-([rltbse])(?:-(.+))?$/,de],[/^(?:border|b)-(block|inline)(?:-(.+))?$/,de],[/^(?:border|b)-([bi][se])(?:-(.+))?$/,de],[/^(?:border|b)-()(?:width|size)-(.+)$/,de,{autocomplete:["(border|b)-","(border|b)--"]}],[/^(?:border|b)-([xy])-(?:width|size)-(.+)$/,de],[/^(?:border|b)-([rltbse])-(?:width|size)-(.+)$/,de],[/^(?:border|b)-(block|inline)-(?:width|size)-(.+)$/,de],[/^(?:border|b)-([bi][se])-(?:width|size)-(.+)$/,de],[/^(?:border|b)-()(?:color-)?(.+)$/,Mt,{autocomplete:["(border|b)-$colors","(border|b)--$colors"]}],[/^(?:border|b)-([xy])-(?:color-)?(.+)$/,Mt],[/^(?:border|b)-([rltbse])-(?:color-)?(.+)$/,Mt],[/^(?:border|b)-(block|inline)-(?:color-)?(.+)$/,Mt],[/^(?:border|b)-([bi][se])-(?:color-)?(.+)$/,Mt],[/^(?:border|b)-()op(?:acity)?-?(.+)$/,Ft,{autocomplete:"(border|b)-(op|opacity)-"}],[/^(?:border|b)-([xy])-op(?:acity)?-?(.+)$/,Ft],[/^(?:border|b)-([rltbse])-op(?:acity)?-?(.+)$/,Ft],[/^(?:border|b)-(block|inline)-op(?:acity)?-?(.+)$/,Ft],[/^(?:border|b)-([bi][se])-op(?:acity)?-?(.+)$/,Ft],[/^(?:border-|b-)?(?:rounded|rd)()(?:-(.+))?$/,_t,{autocomplete:["(border|b)-(rounded|rd)","(border|b)-(rounded|rd)-$borderRadius","(rounded|rd)","(rounded|rd)-$borderRadius"]}],[/^(?:border-|b-)?(?:rounded|rd)-([rltbse])(?:-(.+))?$/,_t],[/^(?:border-|b-)?(?:rounded|rd)-([rltb]{2})(?:-(.+))?$/,_t],[/^(?:border-|b-)?(?:rounded|rd)-([bise][se])(?:-(.+))?$/,_t],[/^(?:border-|b-)?(?:rounded|rd)-([bi][se]-[bi][se])(?:-(.+))?$/,_t],[/^(?:border|b)-(?:style-)?()(.+)$/,Ye,{autocomplete:["(border|b)-style",`(border|b)-(${je.join("|")})`,"(border|b)--style",`(border|b)--(${je.join("|")})`,`(border|b)--style-(${je.join("|")})`,`(border|b)-style-(${je.join("|")})`]}],[/^(?:border|b)-([xy])-(?:style-)?(.+)$/,Ye],[/^(?:border|b)-([rltbse])-(?:style-)?(.+)$/,Ye],[/^(?:border|b)-(block|inline)-(?:style-)?(.+)$/,Ye],[/^(?:border|b)-([bi][se])-(?:style-)?(.+)$/,Ye]];function Oc(e,t,r){if(t!=null)return{[`border${r}-color`]:z(e,t)};if(r===""){let n={},o="--un-border-opacity",i=z(e,`var(${o})`);return i.includes(o)&&(n[o]=typeof e=="string"?1:oe(e)),n["border-color"]=i,n}else{let n={},o="--un-border-opacity",i=`--un-border${r}-opacity`,s=z(e,`var(${i})`);return s.includes(i)&&(n[o]=typeof e=="string"?1:oe(e),n[i]=`var(${o})`),n[`border${r}-color`]=s,n}}function pd(e){return([,t],r)=>{let n=Ve(t,r,"borderColor");if(!n)return;let{alpha:o,color:i,cssColor:s}=n;if(s)return Oc(s,o,e);if(i)return Oc(i,o,e)}}function de([,e="",t],{theme:r}){let n=r.lineWidth?.[t||"DEFAULT"]??u.bracket.cssvar.global.px(t||"1");if(e in Y&&n!=null)return Y[e].map(o=>[`border${o}-width`,n])}function Mt([,e="",t],r){if(e in Y){if(ke(u.bracket(t)))return de(["",e,t],r);if(Fe(t,r.theme,"borderColor"))return Object.assign({},...Y[e].map(n=>pd(n)(["",t],r.theme)))}}function Ft([,e="",t]){let r=u.bracket.percent.cssvar(t);if(e in Y&&r!=null)return Y[e].map(n=>[`--un-border${n}-opacity`,r])}function _t([,e="",t],{theme:r}){let n=r.borderRadius?.[t||"DEFAULT"]||u.bracket.cssvar.global.fraction.rem(t||"1");if(e in vr&&n!=null)return vr[e].map(o=>[`border${o}-radius`,n])}function Ye([,e="",t]){if(je.includes(t)&&e in Y)return Y[e].map(r=>[`border${r}-style`,t])}var Mr=[[/^op(?:acity)?-?(.+)$/,([,e])=>({opacity:u.bracket.percent.cssvar(e)})]],dd=/^\[url\(.+\)\]$/,md=/^\[(?:length|size):.+\]$/,hd=/^\[position:.+\]$/,gd=/^\[(?:linear|conic|radial)-gradient\(.+\)\]$/,bd=/^\[image:.+\]$/,Fr=[[/^bg-(.+)$/,(...e)=>{let t=e[0][1];if(dd.test(t))return{"--un-url":u.bracket(t),"background-image":"var(--un-url)"};if(md.test(t)&&u.bracketOfLength(t)!=null)return{"background-size":u.bracketOfLength(t).split(" ").map(r=>u.fraction.auto.px.cssvar(r)??r).join(" ")};if((io(t)||hd.test(t))&&u.bracketOfPosition(t)!=null)return{"background-position":u.bracketOfPosition(t).split(" ").map(r=>u.position.fraction.auto.px.cssvar(r)??r).join(" ")};if(gd.test(t)||bd.test(t)){let r=u.bracket(t);if(r)return{"background-image":(r.startsWith("http")?`url(${r})`:u.cssvar(r))??r}}return W("background-color","bg","backgroundColor")(...e)},{autocomplete:"bg-$colors"}],[/^bg-op(?:acity)?-?(.+)$/,([,e])=>({"--un-bg-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"bg-(op|opacity)-"}]],_r=[[/^color-scheme-(\w+)$/,([,e])=>({"color-scheme":e})]],Lr=[[/^@container(?:\/(\w+))?(?:-(normal|inline-size|size))?$/,([,e,t])=>({"container-type":t??"inline-size","container-name":e})]],Pc=["solid","double","dotted","dashed","wavy",...O],Wr=[[/^(?:decoration-)?(underline|overline|line-through)$/,([,e])=>({"text-decoration-line":e}),{autocomplete:"decoration-(underline|overline|line-through)"}],[/^(?:underline|decoration)-(?:size-)?(.+)$/,_c,{autocomplete:"(underline|decoration)-"}],[/^(?:underline|decoration)-(auto|from-font)$/,([,e])=>({"text-decoration-thickness":e}),{autocomplete:"(underline|decoration)-(auto|from-font)"}],[/^(?:underline|decoration)-(.+)$/,xd,{autocomplete:"(underline|decoration)-$colors"}],[/^(?:underline|decoration)-op(?:acity)?-?(.+)$/,([,e])=>({"--un-line-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"(underline|decoration)-(op|opacity)-"}],[/^(?:underline|decoration)-offset-(.+)$/,([,e],{theme:t})=>({"text-underline-offset":t.lineWidth?.[e]??u.auto.bracket.cssvar.global.px(e)}),{autocomplete:"(underline|decoration)-(offset)-"}],...Pc.map(e=>[`underline-${e}`,{"text-decoration-style":e}]),...Pc.map(e=>[`decoration-${e}`,{"text-decoration-style":e}]),["no-underline",{"text-decoration":"none"}],["decoration-none",{"text-decoration":"none"}]];function _c([,e],{theme:t}){return{"text-decoration-thickness":t.lineWidth?.[e]??u.bracket.cssvar.global.px(e)}}function xd(e,t){if(ke(u.bracket(e[1])))return _c(e,t);let r=W("text-decoration-color","line","borderColor")(e,t);if(r)return{"-webkit-text-decoration-color":r["text-decoration-color"],...r}}var Ur=[["flex",{display:"flex"}],["inline-flex",{display:"inline-flex"}],["flex-inline",{display:"inline-flex"}],[/^flex-(.*)$/,([,e])=>({flex:u.bracket(e)!=null?u.bracket(e).split(" ").map(t=>u.cssvar.fraction(t)??t).join(" "):u.cssvar.fraction(e)})],["flex-1",{flex:"1 1 0%"}],["flex-auto",{flex:"1 1 auto"}],["flex-initial",{flex:"0 1 auto"}],["flex-none",{flex:"none"}],[/^(?:flex-)?shrink(?:-(.*))?$/,([,e=""])=>({"flex-shrink":u.bracket.cssvar.number(e)??1}),{autocomplete:["flex-shrink-","shrink-"]}],[/^(?:flex-)?grow(?:-(.*))?$/,([,e=""])=>({"flex-grow":u.bracket.cssvar.number(e)??1}),{autocomplete:["flex-grow-","grow-"]}],[/^(?:flex-)?basis-(.+)$/,([,e],{theme:t})=>({"flex-basis":t.spacing?.[e]??u.bracket.cssvar.auto.fraction.rem(e)}),{autocomplete:["flex-basis-$spacing","basis-$spacing"]}],["flex-row",{"flex-direction":"row"}],["flex-row-reverse",{"flex-direction":"row-reverse"}],["flex-col",{"flex-direction":"column"}],["flex-col-reverse",{"flex-direction":"column-reverse"}],["flex-wrap",{"flex-wrap":"wrap"}],["flex-wrap-reverse",{"flex-wrap":"wrap-reverse"}],["flex-nowrap",{"flex-wrap":"nowrap"}]],yd={"":"",x:"column-",y:"row-",col:"column-",row:"row-"};function co([,e="",t],{theme:r}){let n=r.spacing?.[t]??u.bracket.cssvar.global.rem(t);if(n!=null)return{[`${yd[e]}gap`]:n}}var Br=[[/^(?:flex-|grid-)?gap-?()(.+)$/,co,{autocomplete:["gap-$spacing","gap-"]}],[/^(?:flex-|grid-)?gap-([xy])-?(.+)$/,co,{autocomplete:["gap-(x|y)-$spacing","gap-(x|y)-"]}],[/^(?:flex-|grid-)?gap-(col|row)-?(.+)$/,co,{autocomplete:["gap-(col|row)-$spacing","gap-(col|row)-"]}]];function xe(e){return e.replace("col","column")}function lo(e){return e[0]==="r"?"Row":"Column"}function $d(e,t,r){let n=t[`gridAuto${lo(e)}`]?.[r];if(n!=null)return n;switch(r){case"min":return"min-content";case"max":return"max-content";case"fr":return"minmax(0,1fr)"}return u.bracket.cssvar.auto.rem(r)}var Dr=[["grid",{display:"grid"}],["inline-grid",{display:"inline-grid"}],[/^(?:grid-)?(row|col)-(.+)$/,([,e,t],{theme:r})=>({[`grid-${xe(e)}`]:r[`grid${lo(e)}`]?.[t]??u.bracket.cssvar.auto(t)})],[/^(?:grid-)?(row|col)-span-(.+)$/,([,e,t])=>{if(t==="full")return{[`grid-${xe(e)}`]:"1/-1"};let r=u.bracket.number(t);if(r!=null)return{[`grid-${xe(e)}`]:`span ${r}/span ${r}`}},{autocomplete:"(grid-row|grid-col|row|col)-span-"}],[/^(?:grid-)?(row|col)-start-(.+)$/,([,e,t])=>({[`grid-${xe(e)}-start`]:u.bracket.cssvar(t)??t})],[/^(?:grid-)?(row|col)-end-(.+)$/,([,e,t])=>({[`grid-${xe(e)}-end`]:u.bracket.cssvar(t)??t}),{autocomplete:"(grid-row|grid-col|row|col)-(start|end)-"}],[/^(?:grid-)?auto-(rows|cols)-(.+)$/,([,e,t],{theme:r})=>({[`grid-auto-${xe(e)}`]:$d(e,r,t)}),{autocomplete:"(grid-auto|auto)-(rows|cols)-"}],[/^(?:grid-auto-flow|auto-flow|grid-flow)-(.+)$/,([,e])=>({"grid-auto-flow":u.bracket.cssvar(e)})],[/^(?:grid-auto-flow|auto-flow|grid-flow)-(row|col|dense|row-dense|col-dense)$/,([,e])=>({"grid-auto-flow":xe(e).replace("-"," ")}),{autocomplete:["(grid-auto-flow|auto-flow|grid-flow)-(row|col|dense|row-dense|col-dense)"]}],[/^(?:grid-)?(rows|cols)-(.+)$/,([,e,t],{theme:r})=>({[`grid-template-${xe(e)}`]:r[`gridTemplate${lo(e)}`]?.[t]??u.bracket.cssvar(t)})],[/^(?:grid-)?(rows|cols)-minmax-([\w.-]+)$/,([,e,t])=>({[`grid-template-${xe(e)}`]:`repeat(auto-fill,minmax(${t},1fr))`})],[/^(?:grid-)?(rows|cols)-(\d+)$/,([,e,t])=>({[`grid-template-${xe(e)}`]:`repeat(${t},minmax(0,1fr))`}),{autocomplete:"(grid-rows|grid-cols|rows|cols)-"}],[/^grid-area(s)?-(.+)$/,([,e,t])=>e!=null?{"grid-template-areas":u.cssvar(t)??t.split("-").map(r=>`"${u.bracket(r)}"`).join(" ")}:{"grid-area":u.bracket.cssvar(t)}],["grid-rows-none",{"grid-template-rows":"none"}],["grid-cols-none",{"grid-template-columns":"none"}],["grid-rows-subgrid",{"grid-template-rows":"subgrid"}],["grid-cols-subgrid",{"grid-template-columns":"subgrid"}]],Er=["auto","hidden","clip","visible","scroll","overlay",...O],Ir=[[/^(?:overflow|of)-(.+)$/,([,e])=>Er.includes(e)?{overflow:e}:void 0,{autocomplete:[`(overflow|of)-(${Er.join("|")})`,`(overflow|of)-(x|y)-(${Er.join("|")})`]}],[/^(?:overflow|of)-([xy])-(.+)$/,([,e,t])=>Er.includes(t)?{[`overflow-${e}`]:t}:void 0]],Nr=[[/^(?:position-|pos-)?(relative|absolute|fixed|sticky)$/,([,e])=>({position:e}),{autocomplete:["(position|pos)-","(position|pos)-",""]}],[/^(?:position-|pos-)([-\w]+)$/,([,e])=>O.includes(e)?{position:e}:void 0],[/^(?:position-|pos-)?(static)$/,([,e])=>({position:e})]],Wt=[["justify-start",{"justify-content":"flex-start"}],["justify-end",{"justify-content":"flex-end"}],["justify-center",{"justify-content":"center"}],["justify-between",{"justify-content":"space-between"}],["justify-around",{"justify-content":"space-around"}],["justify-evenly",{"justify-content":"space-evenly"}],["justify-stretch",{"justify-content":"stretch"}],["justify-left",{"justify-content":"left"}],["justify-right",{"justify-content":"right"}],...k("justify","justify-content"),["justify-items-start",{"justify-items":"start"}],["justify-items-end",{"justify-items":"end"}],["justify-items-center",{"justify-items":"center"}],["justify-items-stretch",{"justify-items":"stretch"}],...k("justify-items"),["justify-self-auto",{"justify-self":"auto"}],["justify-self-start",{"justify-self":"start"}],["justify-self-end",{"justify-self":"end"}],["justify-self-center",{"justify-self":"center"}],["justify-self-stretch",{"justify-self":"stretch"}],...k("justify-self")],Kr=[[/^order-(.+)$/,([,e])=>({order:u.bracket.cssvar.number(e)})],["order-first",{order:"-9999"}],["order-last",{order:"9999"}],["order-none",{order:"0"}]],Ut=[["content-center",{"align-content":"center"}],["content-start",{"align-content":"flex-start"}],["content-end",{"align-content":"flex-end"}],["content-between",{"align-content":"space-between"}],["content-around",{"align-content":"space-around"}],["content-evenly",{"align-content":"space-evenly"}],...k("content","align-content"),["items-start",{"align-items":"flex-start"}],["items-end",{"align-items":"flex-end"}],["items-center",{"align-items":"center"}],["items-baseline",{"align-items":"baseline"}],["items-stretch",{"align-items":"stretch"}],...k("items","align-items"),["self-auto",{"align-self":"auto"}],["self-start",{"align-self":"flex-start"}],["self-end",{"align-self":"flex-end"}],["self-center",{"align-self":"center"}],["self-stretch",{"align-self":"stretch"}],["self-baseline",{"align-self":"baseline"}],...k("self","align-self")],Bt=[["place-content-center",{"place-content":"center"}],["place-content-start",{"place-content":"start"}],["place-content-end",{"place-content":"end"}],["place-content-between",{"place-content":"space-between"}],["place-content-around",{"place-content":"space-around"}],["place-content-evenly",{"place-content":"space-evenly"}],["place-content-stretch",{"place-content":"stretch"}],...k("place-content"),["place-items-start",{"place-items":"start"}],["place-items-end",{"place-items":"end"}],["place-items-center",{"place-items":"center"}],["place-items-stretch",{"place-items":"stretch"}],...k("place-items"),["place-self-auto",{"place-self":"auto"}],["place-self-start",{"place-self":"start"}],["place-self-end",{"place-self":"end"}],["place-self-center",{"place-self":"center"}],["place-self-stretch",{"place-self":"stretch"}],...k("place-self")],Gr=[...Wt,...Ut,...Bt].flatMap(([e,t])=>[[`flex-${e}`,t],[`grid-${e}`,t]]);function uo(e,{theme:t}){return t.spacing?.[e]??u.bracket.cssvar.global.auto.fraction.rem(e)}function Lt([,e,t],r){let n=uo(t,r);if(n!=null&&e in $r)return $r[e].map(o=>[o.slice(1),n])}var Hr=[[/^(?:position-|pos-)?inset-(.+)$/,([,e],t)=>({inset:uo(e,t)}),{autocomplete:["(position|pos)-inset--$spacing","(position|pos)-inset-(block|inline)-$spacing","(position|pos)-inset-(bs|be|is|ie)-$spacing","(position|pos)-(top|left|right|bottom)-$spacing"]}],[/^(?:position-|pos-)?(start|end)-(.+)$/,Lt],[/^(?:position-|pos-)?inset-([xy])-(.+)$/,Lt],[/^(?:position-|pos-)?inset-([rltbse])-(.+)$/,Lt],[/^(?:position-|pos-)?inset-(block|inline)-(.+)$/,Lt],[/^(?:position-|pos-)?inset-([bi][se])-(.+)$/,Lt],[/^(?:position-|pos-)?(top|left|right|bottom)-(.+)$/,([,e,t],r)=>({[e]:uo(t,r)})]],qr=[["float-left",{float:"left"}],["float-right",{float:"right"}],["float-start",{float:"inline-start"}],["float-end",{float:"inline-end"}],["float-none",{float:"none"}],...k("float"),["clear-left",{clear:"left"}],["clear-right",{clear:"right"}],["clear-both",{clear:"both"}],["clear-start",{clear:"inline-start"}],["clear-end",{clear:"inline-end"}],["clear-none",{clear:"none"}],...k("clear")],Yr=[[/^(?:position-|pos-)?z([\d.]+)$/,([,e])=>({"z-index":u.number(e)})],[/^(?:position-|pos-)?z-(.+)$/,([,e],{theme:t})=>({"z-index":t.zIndex?.[e]??u.bracket.cssvar.global.auto.number(e)}),{autocomplete:"z-"}]],Xr=[["box-border",{"box-sizing":"border-box"}],["box-content",{"box-sizing":"content-box"}],...k("box","box-sizing")],Zr=[[/^(where|\?)$/,(e,{constructCSS:t,generator:r})=>{if(r.userConfig.envMode==="dev")return`@keyframes __un_qm{0%{box-shadow:inset 4px 4px #ff1e90, inset -4px -4px #ff1e90}100%{box-shadow:inset 8px 8px #3399ff, inset -8px -8px #3399ff}} ${t({animation:"__un_qm 0.5s ease-in-out alternate infinite"})}`}]],vd={h:"height",w:"width",inline:"inline-size",block:"block-size"};function _e(e,t){return`${e||""}${vd[t]}`}function Tr(e,t,r,n){let o=_e(e,t).replace(/-(\w)/g,(s,a)=>a.toUpperCase()),i=r[o]?.[n];if(i!=null)return i;switch(n){case"fit":case"max":case"min":return`${n}-content`}return u.bracket.cssvar.global.auto.fraction.rem(n)}var Jr=[[/^size-(min-|max-)?(.+)$/,([,e,t],{theme:r})=>({[_e(e,"w")]:Tr(e,"w",r,t),[_e(e,"h")]:Tr(e,"h",r,t)})],[/^(?:size-)?(min-|max-)?([wh])-?(.+)$/,([,e,t,r],{theme:n})=>({[_e(e,t)]:Tr(e,t,n,r)})],[/^(?:size-)?(min-|max-)?(block|inline)-(.+)$/,([,e,t,r],{theme:n})=>({[_e(e,t)]:Tr(e,t,n,r)}),{autocomplete:["(w|h)-$width|height|maxWidth|maxHeight|minWidth|minHeight|inlineSize|blockSize|maxInlineSize|maxBlockSize|minInlineSize|minBlockSize","(block|inline)-$width|height|maxWidth|maxHeight|minWidth|minHeight|inlineSize|blockSize|maxInlineSize|maxBlockSize|minInlineSize|minBlockSize","(max|min)-(w|h|block|inline)","(max|min)-(w|h|block|inline)-$width|height|maxWidth|maxHeight|minWidth|minHeight|inlineSize|blockSize|maxInlineSize|maxBlockSize|minInlineSize|minBlockSize","(w|h)-full","(max|min)-(w|h)-full"]}],[/^(?:size-)?(min-|max-)?(h)-screen-(.+)$/,([,e,t,r],n)=>({[_e(e,t)]:Vc(n,r,"verticalBreakpoints")})],[/^(?:size-)?(min-|max-)?(w)-screen-(.+)$/,([,e,t,r],n)=>({[_e(e,t)]:Vc(n,r)}),{autocomplete:["(w|h)-screen","(min|max)-(w|h)-screen","h-screen-$verticalBreakpoints","(min|max)-h-screen-$verticalBreakpoints","w-screen-$breakpoints","(min|max)-w-screen-$breakpoints"]}]];function Vc(e,t,r="breakpoints"){let n=Te(e,r);if(n)return n.find(o=>o.point===t)?.size}function wd(e){if(/^\d+\/\d+$/.test(e))return e;switch(e){case"square":return"1/1";case"video":return"16/9"}return u.bracket.cssvar.global.auto.number(e)}var Qr=[[/^(?:size-)?aspect-(?:ratio-)?(.+)$/,([,e])=>({"aspect-ratio":wd(e)}),{autocomplete:["aspect-(square|video|ratio)","aspect-ratio-(square|video)"]}]],en=[[/^pa?()-?(.+)$/,_("padding"),{autocomplete:["(m|p)","(m|p)-"]}],[/^p-?xy()()$/,_("padding"),{autocomplete:"(m|p)-(xy)"}],[/^p-?([xy])(?:-?(.+))?$/,_("padding")],[/^p-?([rltbse])(?:-?(.+))?$/,_("padding"),{autocomplete:"(m|p)-"}],[/^p-(block|inline)(?:-(.+))?$/,_("padding"),{autocomplete:"(m|p)-(block|inline)-"}],[/^p-?([bi][se])(?:-?(.+))?$/,_("padding"),{autocomplete:"(m|p)-(bs|be|is|ie)-"}]],tn=[[/^ma?()-?(.+)$/,_("margin")],[/^m-?xy()()$/,_("margin")],[/^m-?([xy])(?:-?(.+))?$/,_("margin")],[/^m-?([rltbse])(?:-?(.+))?$/,_("margin")],[/^m-(block|inline)(?:-(.+))?$/,_("margin")],[/^m-?([bi][se])(?:-?(.+))?$/,_("margin")]],rn=[[/^fill-(.+)$/,W("fill","fill","backgroundColor"),{autocomplete:"fill-$colors"}],[/^fill-op(?:acity)?-?(.+)$/,([,e])=>({"--un-fill-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"fill-(op|opacity)-"}],["fill-none",{fill:"none"}],[/^stroke-(?:width-|size-)?(.+)$/,Lc,{autocomplete:["stroke-width-$lineWidth","stroke-size-$lineWidth"]}],[/^stroke-dash-(.+)$/,([,e])=>({"stroke-dasharray":u.bracket.cssvar.number(e)}),{autocomplete:"stroke-dash-"}],[/^stroke-offset-(.+)$/,([,e],{theme:t})=>({"stroke-dashoffset":t.lineWidth?.[e]??u.bracket.cssvar.px.numberWithUnit(e)}),{autocomplete:"stroke-offset-$lineWidth"}],[/^stroke-(.+)$/,kd,{autocomplete:"stroke-$colors"}],[/^stroke-op(?:acity)?-?(.+)$/,([,e])=>({"--un-stroke-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"stroke-(op|opacity)-"}],["stroke-cap-square",{"stroke-linecap":"square"}],["stroke-cap-round",{"stroke-linecap":"round"}],["stroke-cap-auto",{"stroke-linecap":"butt"}],["stroke-join-arcs",{"stroke-linejoin":"arcs"}],["stroke-join-bevel",{"stroke-linejoin":"bevel"}],["stroke-join-clip",{"stroke-linejoin":"miter-clip"}],["stroke-join-round",{"stroke-linejoin":"round"}],["stroke-join-auto",{"stroke-linejoin":"miter"}],["stroke-none",{stroke:"none"}]];function Lc([,e],{theme:t}){return{"stroke-width":t.lineWidth?.[e]??u.bracket.cssvar.fraction.px.number(e)}}function kd(e,t){return ke(u.bracket(e[1]))?Lc(e,t):W("stroke","stroke","borderColor")(e,t)}function Mc(e,t){let r;if(u.cssvar(e)!=null)r=u.cssvar(e);else{e.startsWith("[")&&e.endsWith("]")&&(e=e.slice(1,-1));let n=e.split(",").map(o=>t.transitionProperty?.[o]??u.properties(o));n.every(Boolean)&&(r=n.join(","))}return r}var nn=[[/^transition(?:-(\D+?))?(?:-(\d+))?$/,([,e,t],{theme:r})=>{if(!e&&!t)return{"transition-property":r.transitionProperty?.DEFAULT,"transition-timing-function":r.easing?.DEFAULT,"transition-duration":r.duration?.DEFAULT??u.time("150")};if(e!=null){let n=Mc(e,r),o=r.duration?.[t||"DEFAULT"]??u.time(t||"150");if(n)return{"transition-property":n,"transition-timing-function":r.easing?.DEFAULT,"transition-duration":o}}else if(t!=null)return{"transition-property":r.transitionProperty?.DEFAULT,"transition-timing-function":r.easing?.DEFAULT,"transition-duration":r.duration?.[t]??u.time(t)}},{autocomplete:"transition-$transitionProperty-$duration"}],[/^(?:transition-)?duration-(.+)$/,([,e],{theme:t})=>({"transition-duration":t.duration?.[e||"DEFAULT"]??u.bracket.cssvar.time(e)}),{autocomplete:["transition-duration-$duration","duration-$duration"]}],[/^(?:transition-)?delay-(.+)$/,([,e],{theme:t})=>({"transition-delay":t.duration?.[e||"DEFAULT"]??u.bracket.cssvar.time(e)}),{autocomplete:["transition-delay-$duration","delay-$duration"]}],[/^(?:transition-)?ease(?:-(.+))?$/,([,e],{theme:t})=>({"transition-timing-function":t.easing?.[e||"DEFAULT"]??u.bracket.cssvar(e)}),{autocomplete:["transition-ease-(linear|in|out|in-out|DEFAULT)","ease-(linear|in|out|in-out|DEFAULT)"]}],[/^(?:transition-)?property-(.+)$/,([,e],{theme:t})=>{let r=u.global(e)||Mc(e,t);if(r)return{"transition-property":r}},{autocomplete:[`transition-property-(${[...O].join("|")})`,"transition-property-$transitionProperty","property-$transitionProperty"]}],["transition-none",{transition:"none"}],...k("transition"),["transition-discrete",{"transition-behavior":"allow-discrete"}],["transition-normal",{"transition-behavior":"normal"}]],on=[[/^text-(.+)$/,Cd,{autocomplete:"text-$fontSize"}],[/^(?:text|font)-size-(.+)$/,Wc,{autocomplete:"text-size-$fontSize"}],[/^text-(?:color-)?(.+)$/,Sd,{autocomplete:"text-$colors"}],[/^(?:color|c)-(.+)$/,W("color","text","textColor"),{autocomplete:"(color|c)-$colors"}],[/^(?:text|color|c)-(.+)$/,([,e])=>O.includes(e)?{color:e}:void 0,{autocomplete:`(text|color|c)-(${O.join("|")})`}],[/^(?:text|color|c)-op(?:acity)?-?(.+)$/,([,e])=>({"--un-text-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"(text|color|c)-(op|opacity)-"}],[/^(?:font|fw)-?([^-]+)$/,([,e],{theme:t})=>({"font-weight":t.fontWeight?.[e]||u.bracket.global.number(e)}),{autocomplete:["(font|fw)-(100|200|300|400|500|600|700|800|900)","(font|fw)-$fontWeight"]}],[/^(?:font-)?(?:leading|lh|line-height)-(.+)$/,([,e],{theme:t})=>({"line-height":fo(e,t,"lineHeight")}),{autocomplete:"(leading|lh|line-height)-$lineHeight"}],["font-synthesis-weight",{"font-synthesis":"weight"}],["font-synthesis-style",{"font-synthesis":"style"}],["font-synthesis-small-caps",{"font-synthesis":"small-caps"}],["font-synthesis-none",{"font-synthesis":"none"}],[/^font-synthesis-(.+)$/,([,e])=>({"font-synthesis":u.bracket.cssvar.global(e)})],[/^(?:font-)?tracking-(.+)$/,([,e],{theme:t})=>({"letter-spacing":t.letterSpacing?.[e]||u.bracket.cssvar.global.rem(e)}),{autocomplete:"tracking-$letterSpacing"}],[/^(?:font-)?word-spacing-(.+)$/,([,e],{theme:t})=>({"word-spacing":t.wordSpacing?.[e]||u.bracket.cssvar.global.rem(e)}),{autocomplete:"word-spacing-$wordSpacing"}],["font-stretch-normal",{"font-stretch":"normal"}],["font-stretch-ultra-condensed",{"font-stretch":"ultra-condensed"}],["font-stretch-extra-condensed",{"font-stretch":"extra-condensed"}],["font-stretch-condensed",{"font-stretch":"condensed"}],["font-stretch-semi-condensed",{"font-stretch":"semi-condensed"}],["font-stretch-semi-expanded",{"font-stretch":"semi-expanded"}],["font-stretch-expanded",{"font-stretch":"expanded"}],["font-stretch-extra-expanded",{"font-stretch":"extra-expanded"}],["font-stretch-ultra-expanded",{"font-stretch":"ultra-expanded"}],[/^font-stretch-(.+)$/,([,e])=>({"font-stretch":u.bracket.cssvar.fraction.global(e)}),{autocomplete:"font-stretch-"}],[/^font-(.+)$/,([,e],{theme:t})=>({"font-family":t.fontFamily?.[e]||u.bracket.cssvar.global(e)}),{autocomplete:"font-$fontFamily"}]],sn=[[/^tab(?:-(.+))?$/,([,e])=>{let t=u.bracket.cssvar.global.number(e||"4");if(t!=null)return{"-moz-tab-size":t,"-o-tab-size":t,"tab-size":t}}]],an=[[/^indent(?:-(.+))?$/,([,e],{theme:t})=>({"text-indent":t.textIndent?.[e||"DEFAULT"]||u.bracket.cssvar.global.fraction.rem(e)}),{autocomplete:"indent-$textIndent"}]],cn=[[/^text-stroke(?:-(.+))?$/,([,e],{theme:t})=>({"-webkit-text-stroke-width":t.textStrokeWidth?.[e||"DEFAULT"]||u.bracket.cssvar.px(e)}),{autocomplete:"text-stroke-$textStrokeWidth"}],[/^text-stroke-(.+)$/,W("-webkit-text-stroke-color","text-stroke","borderColor"),{autocomplete:"text-stroke-$colors"}],[/^text-stroke-op(?:acity)?-?(.+)$/,([,e])=>({"--un-text-stroke-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"text-stroke-(op|opacity)-"}]],ln=[[/^text-shadow(?:-(.+))?$/,([,e],{theme:t})=>{let r=t.textShadow?.[e||"DEFAULT"];return r!=null?{"--un-text-shadow":Me(r,"--un-text-shadow-color").join(","),"text-shadow":"var(--un-text-shadow)"}:{"text-shadow":u.bracket.cssvar.global(e)}},{autocomplete:"text-shadow-$textShadow"}],[/^text-shadow-color-(.+)$/,W("--un-text-shadow-color","text-shadow","shadowColor"),{autocomplete:"text-shadow-color-$colors"}],[/^text-shadow-color-op(?:acity)?-?(.+)$/,([,e])=>({"--un-text-shadow-opacity":u.bracket.percent.cssvar(e)}),{autocomplete:"text-shadow-color-(op|opacity)-"}]];function fo(e,t,r){return t[r]?.[e]||u.bracket.cssvar.global.rem(e)}function Wc([,e],{theme:t}){let n=C(t.fontSize?.[e])?.[0]??u.bracket.cssvar.global.rem(e);if(n!=null)return{"font-size":n}}function Sd(e,t){return ke(u.bracket(e[1]))?Wc(e,t):W("color","text","textColor")(e,t)}function Cd([,e="base"],{theme:t}){let r=Cr(e,"length");if(!r)return;let[n,o]=r,i=C(t.fontSize?.[n]),s=o?fo(o,t,"lineHeight"):void 0;if(i?.[0]){let[c,l,p]=i;return typeof l=="object"?{"font-size":c,...l}:{"font-size":c,"line-height":s??l??"1","letter-spacing":p?fo(p,t,"letterSpacing"):void 0}}let a=u.bracketOfLength.rem(n);return s&&a?{"font-size":a,"line-height":s}:{"font-size":u.bracketOfLength.rem(e)}}var Rd={backface:"backface-visibility",break:"word-break",case:"text-transform",content:"align-content",fw:"font-weight",items:"align-items",justify:"justify-content",select:"user-select",self:"align-self",vertical:"vertical-align",visible:"visibility",whitespace:"white-space",ws:"white-space"},un=[[/^(.+?)-(\$.+)$/,([,e,t])=>{let r=Rd[e];if(r)return{[r]:u.cssvar(t)}}]],fn=[[/^\[(.*)\]$/,([e,t])=>{if(!t.includes(":"))return;let[r,...n]=t.split(":"),o=n.join(":");if(!Td(t)&&/^[a-z-_]+$/i.test(r)&&Ed(o)){let i=u.bracket(`[${o}]`);if(i)return{[r]:i}}}]];function Ed(e){let t=0;function r(n){for(;t({[`--un-divide-${e}-reverse`]:1})],[/^divide-(block|inline)$/,pn],[/^divide-(block|inline)-(.+)$/,pn],[/^divide-(block|inline)-reverse$/,([,e])=>({[`--un-divide-${e}-reverse`]:1})],[/^divide-(.+)$/,W("border-color","divide","borderColor"),{autocomplete:"divide-$colors"}],[/^divide-op(?:acity)?-?(.+)$/,([,e])=>({"--un-divide-opacity":u.bracket.percent(e)}),{autocomplete:["divide-(op|opacity)","divide-(op|opacity)-"]}],...je.map(e=>[`divide-${e}`,{"border-style":e}])];function pn([,e,t],{theme:r}){let n=r.lineWidth?.[t||"DEFAULT"]??u.bracket.cssvar.px(t||"1");if(n!=null){n==="0"&&(n="0px");let o=Y[e].map(i=>{let s=`border${i}-width`,a=i.endsWith("right")||i.endsWith("bottom")?`calc(${n} * var(--un-divide-${e}-reverse))`:`calc(${n} * calc(1 - var(--un-divide-${e}-reverse)))`;return[s,a]});if(o)return[[`--un-divide-${e}-reverse`,0],...o]}}var mo={"--un-blur":j,"--un-brightness":j,"--un-contrast":j,"--un-drop-shadow":j,"--un-grayscale":j,"--un-hue-rotate":j,"--un-invert":j,"--un-saturate":j,"--un-sepia":j},Dc=Object.keys(mo),Bc={preflightKeys:Dc},dn="var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)",ho={"--un-backdrop-blur":j,"--un-backdrop-brightness":j,"--un-backdrop-contrast":j,"--un-backdrop-grayscale":j,"--un-backdrop-hue-rotate":j,"--un-backdrop-invert":j,"--un-backdrop-opacity":j,"--un-backdrop-saturate":j,"--un-backdrop-sepia":j},Ic=Object.keys(ho),Ad={preflightKeys:Ic},mn="var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)",Se={preflightKeys:[...Dc,...Ic]};function po(e){let t=u.bracket.cssvar(e||"");if(t!=null||(t=e?u.percent(e):"1",t!=null&&Number.parseFloat(t)<=1))return t}function Ce(e,t){return([,r,n],{theme:o})=>{let i=t(n,o)??(n==="none"?"0":"");if(i!=="")return r?{[`--un-${r}${e}`]:`${e}(${i})`,"-webkit-backdrop-filter":mn,"backdrop-filter":mn}:{[`--un-${e}`]:`${e}(${i})`,filter:dn}}}function Od([,e],{theme:t}){let r=t.dropShadow?.[e||"DEFAULT"];if(r!=null)return{"--un-drop-shadow":`drop-shadow(${Me(r,"--un-drop-shadow-color").join(") drop-shadow(")})`,filter:dn};if(r=u.bracket.cssvar(e),r!=null)return{"--un-drop-shadow":`drop-shadow(${r})`,filter:dn}}var Nc=[[/^(?:(backdrop-)|filter-)?blur(?:-(.+))?$/,Ce("blur",(e,t)=>t.blur?.[e||"DEFAULT"]||u.bracket.cssvar.px(e)),{custom:Se,autocomplete:["(backdrop|filter)-blur-$blur","blur-$blur","filter-blur"]}],[/^(?:(backdrop-)|filter-)?brightness-(.+)$/,Ce("brightness",e=>u.bracket.cssvar.percent(e)),{custom:Se,autocomplete:["(backdrop|filter)-brightness-","brightness-"]}],[/^(?:(backdrop-)|filter-)?contrast-(.+)$/,Ce("contrast",e=>u.bracket.cssvar.percent(e)),{custom:Se,autocomplete:["(backdrop|filter)-contrast-","contrast-"]}],[/^(?:filter-)?drop-shadow(?:-(.+))?$/,Od,{custom:Bc,autocomplete:["filter-drop","filter-drop-shadow","filter-drop-shadow-color","drop-shadow","drop-shadow-color","filter-drop-shadow-$dropShadow","drop-shadow-$dropShadow","filter-drop-shadow-color-$colors","drop-shadow-color-$colors","filter-drop-shadow-color-(op|opacity)","drop-shadow-color-(op|opacity)","filter-drop-shadow-color-(op|opacity)-","drop-shadow-color-(op|opacity)-"]}],[/^(?:filter-)?drop-shadow-color-(.+)$/,W("--un-drop-shadow-color","drop-shadow","shadowColor")],[/^(?:filter-)?drop-shadow-color-op(?:acity)?-?(.+)$/,([,e])=>({"--un-drop-shadow-opacity":u.bracket.percent(e)})],[/^(?:(backdrop-)|filter-)?grayscale(?:-(.+))?$/,Ce("grayscale",po),{custom:Se,autocomplete:["(backdrop|filter)-grayscale","(backdrop|filter)-grayscale-","grayscale-"]}],[/^(?:(backdrop-)|filter-)?hue-rotate-(.+)$/,Ce("hue-rotate",e=>u.bracket.cssvar.degree(e)),{custom:Se}],[/^(?:(backdrop-)|filter-)?invert(?:-(.+))?$/,Ce("invert",po),{custom:Se,autocomplete:["(backdrop|filter)-invert","(backdrop|filter)-invert-","invert-"]}],[/^(backdrop-)op(?:acity)?-(.+)$/,Ce("opacity",e=>u.bracket.cssvar.percent(e)),{custom:Se,autocomplete:["backdrop-(op|opacity)","backdrop-(op|opacity)-"]}],[/^(?:(backdrop-)|filter-)?saturate-(.+)$/,Ce("saturate",e=>u.bracket.cssvar.percent(e)),{custom:Se,autocomplete:["(backdrop|filter)-saturate","(backdrop|filter)-saturate-","saturate-"]}],[/^(?:(backdrop-)|filter-)?sepia(?:-(.+))?$/,Ce("sepia",po),{custom:Se,autocomplete:["(backdrop|filter)-sepia","(backdrop|filter)-sepia-","sepia-"]}],["filter",{filter:dn},{custom:Bc}],["backdrop-filter",{"-webkit-backdrop-filter":mn,"backdrop-filter":mn},{custom:Ad}],["filter-none",{filter:"none"}],["backdrop-filter-none",{"-webkit-backdrop-filter":"none","backdrop-filter":"none"}],...O.map(e=>[`filter-${e}`,{filter:e}]),...O.map(e=>[`backdrop-filter-${e}`,{"-webkit-backdrop-filter":e,"backdrop-filter":e}])];var Kc=[[/^line-clamp-(\d+)$/,([,e])=>({overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":e,"line-clamp":e}),{autocomplete:["line-clamp","line-clamp-"]}],...["none",...O].map(e=>[`line-clamp-${e}`,{overflow:"visible",display:"block","-webkit-box-orient":"horizontal","-webkit-line-clamp":e,"line-clamp":e}])];var Gc=[[/^\$ placeholder-(.+)$/,W("color","placeholder","accentColor"),{autocomplete:"placeholder-$colors"}],[/^\$ placeholder-op(?:acity)?-?(.+)$/,([,e])=>({"--un-placeholder-opacity":u.bracket.percent(e)}),{autocomplete:["placeholder-(op|opacity)","placeholder-(op|opacity)-"]}]];var go={"--un-scroll-snap-strictness":"proximity"},Hc={preflightKeys:Object.keys(go)},qc=[[/^snap-(x|y)$/,([,e])=>({"scroll-snap-type":`${e} var(--un-scroll-snap-strictness)`}),{custom:Hc,autocomplete:"snap-(x|y|both)"}],[/^snap-both$/,()=>({"scroll-snap-type":"both var(--un-scroll-snap-strictness)"}),{custom:Hc}],["snap-mandatory",{"--un-scroll-snap-strictness":"mandatory"}],["snap-proximity",{"--un-scroll-snap-strictness":"proximity"}],["snap-none",{"scroll-snap-type":"none"}],["snap-start",{"scroll-snap-align":"start"}],["snap-end",{"scroll-snap-align":"end"}],["snap-center",{"scroll-snap-align":"center"}],["snap-align-none",{"scroll-snap-align":"none"}],["snap-normal",{"scroll-snap-stop":"normal"}],["snap-always",{"scroll-snap-stop":"always"}],[/^scroll-ma?()-?(.+)$/,_("scroll-margin"),{autocomplete:["scroll-(m|p|ma|pa|block|inline)","scroll-(m|p|ma|pa|block|inline)-$spacing","scroll-(m|p|ma|pa|block|inline)-(x|y|r|l|t|b|bs|be|is|ie)","scroll-(m|p|ma|pa|block|inline)-(x|y|r|l|t|b|bs|be|is|ie)-$spacing"]}],[/^scroll-m-?([xy])-?(.+)$/,_("scroll-margin")],[/^scroll-m-?([rltb])-?(.+)$/,_("scroll-margin")],[/^scroll-m-(block|inline)-(.+)$/,_("scroll-margin")],[/^scroll-m-?([bi][se])-?(.+)$/,_("scroll-margin")],[/^scroll-pa?()-?(.+)$/,_("scroll-padding")],[/^scroll-p-?([xy])-?(.+)$/,_("scroll-padding")],[/^scroll-p-?([rltb])-?(.+)$/,_("scroll-padding")],[/^scroll-p-(block|inline)-(.+)$/,_("scroll-padding")],[/^scroll-p-?([bi][se])-?(.+)$/,_("scroll-padding")]];var Xc=[[/^space-([xy])-(.+)$/,Yc,{autocomplete:["space-(x|y|block|inline)","space-(x|y|block|inline)-reverse","space-(x|y|block|inline)-$spacing"]}],[/^space-([xy])-reverse$/,([,e])=>({[`--un-space-${e}-reverse`]:1})],[/^space-(block|inline)-(.+)$/,Yc],[/^space-(block|inline)-reverse$/,([,e])=>({[`--un-space-${e}-reverse`]:1})]];function Yc([,e,t],{theme:r}){let n=r.spacing?.[t||"DEFAULT"]??u.bracket.cssvar.auto.fraction.rem(t||"1");if(n!=null){n==="0"&&(n="0px");let o=Y[e].map(i=>{let s=`margin${i}`,a=i.endsWith("right")||i.endsWith("bottom")?`calc(${n} * var(--un-space-${e}-reverse))`:`calc(${n} * calc(1 - var(--un-space-${e}-reverse)))`;return[s,a]});if(o)return[[`--un-space-${e}-reverse`,0],...o]}}var Zc=[["uppercase",{"text-transform":"uppercase"}],["lowercase",{"text-transform":"lowercase"}],["capitalize",{"text-transform":"capitalize"}],["normal-case",{"text-transform":"none"}]],Jc=[...["manual","auto","none",...O].map(e=>[`hyphens-${e}`,{"-webkit-hyphens":e,"-ms-hyphens":e,hyphens:e}])],Qc=[["write-vertical-right",{"writing-mode":"vertical-rl"}],["write-vertical-left",{"writing-mode":"vertical-lr"}],["write-normal",{"writing-mode":"horizontal-tb"}],...k("write","writing-mode")],el=[["write-orient-mixed",{"text-orientation":"mixed"}],["write-orient-sideways",{"text-orientation":"sideways"}],["write-orient-upright",{"text-orientation":"upright"}],...k("write-orient","text-orientation")],tl=[["sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)","white-space":"nowrap","border-width":0}],["not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",clip:"auto","white-space":"normal"}]],rl=[["isolate",{isolation:"isolate"}],["isolate-auto",{isolation:"auto"}],["isolation-auto",{isolation:"auto"}]],nl=[["object-cover",{"object-fit":"cover"}],["object-contain",{"object-fit":"contain"}],["object-fill",{"object-fit":"fill"}],["object-scale-down",{"object-fit":"scale-down"}],["object-none",{"object-fit":"none"}],[/^object-(.+)$/,([,e])=>{if(G[e])return{"object-position":G[e]};if(u.bracketOfPosition(e)!=null)return{"object-position":u.bracketOfPosition(e).split(" ").map(t=>u.position.fraction.auto.px.cssvar(t)??t).join(" ")}},{autocomplete:`object-(${Object.keys(G).join("|")})`}]],ol=[["bg-blend-multiply",{"background-blend-mode":"multiply"}],["bg-blend-screen",{"background-blend-mode":"screen"}],["bg-blend-overlay",{"background-blend-mode":"overlay"}],["bg-blend-darken",{"background-blend-mode":"darken"}],["bg-blend-lighten",{"background-blend-mode":"lighten"}],["bg-blend-color-dodge",{"background-blend-mode":"color-dodge"}],["bg-blend-color-burn",{"background-blend-mode":"color-burn"}],["bg-blend-hard-light",{"background-blend-mode":"hard-light"}],["bg-blend-soft-light",{"background-blend-mode":"soft-light"}],["bg-blend-difference",{"background-blend-mode":"difference"}],["bg-blend-exclusion",{"background-blend-mode":"exclusion"}],["bg-blend-hue",{"background-blend-mode":"hue"}],["bg-blend-saturation",{"background-blend-mode":"saturation"}],["bg-blend-color",{"background-blend-mode":"color"}],["bg-blend-luminosity",{"background-blend-mode":"luminosity"}],["bg-blend-normal",{"background-blend-mode":"normal"}],...k("bg-blend","background-blend")],il=[["mix-blend-multiply",{"mix-blend-mode":"multiply"}],["mix-blend-screen",{"mix-blend-mode":"screen"}],["mix-blend-overlay",{"mix-blend-mode":"overlay"}],["mix-blend-darken",{"mix-blend-mode":"darken"}],["mix-blend-lighten",{"mix-blend-mode":"lighten"}],["mix-blend-color-dodge",{"mix-blend-mode":"color-dodge"}],["mix-blend-color-burn",{"mix-blend-mode":"color-burn"}],["mix-blend-hard-light",{"mix-blend-mode":"hard-light"}],["mix-blend-soft-light",{"mix-blend-mode":"soft-light"}],["mix-blend-difference",{"mix-blend-mode":"difference"}],["mix-blend-exclusion",{"mix-blend-mode":"exclusion"}],["mix-blend-hue",{"mix-blend-mode":"hue"}],["mix-blend-saturation",{"mix-blend-mode":"saturation"}],["mix-blend-color",{"mix-blend-mode":"color"}],["mix-blend-luminosity",{"mix-blend-mode":"luminosity"}],["mix-blend-plus-lighter",{"mix-blend-mode":"plus-lighter"}],["mix-blend-normal",{"mix-blend-mode":"normal"}],...k("mix-blend")],sl=[["min-h-dvh",{"min-height":"100dvh"}],["min-h-svh",{"min-height":"100svh"}],["min-h-lvh",{"min-height":"100lvh"}],["h-dvh",{height:"100dvh"}],["h-svh",{height:"100svh"}],["h-lvh",{height:"100lvh"}],["max-h-dvh",{"max-height":"100dvh"}],["max-h-svh",{"max-height":"100svh"}],["max-h-lvh",{"max-height":"100lvh"}]];var bo={"--un-border-spacing-x":0,"--un-border-spacing-y":0},al={preflightKeys:Object.keys(bo)},cl="var(--un-border-spacing-x) var(--un-border-spacing-y)",ll=[["inline-table",{display:"inline-table"}],["table",{display:"table"}],["table-caption",{display:"table-caption"}],["table-cell",{display:"table-cell"}],["table-column",{display:"table-column"}],["table-column-group",{display:"table-column-group"}],["table-footer-group",{display:"table-footer-group"}],["table-header-group",{display:"table-header-group"}],["table-row",{display:"table-row"}],["table-row-group",{display:"table-row-group"}],["border-collapse",{"border-collapse":"collapse"}],["border-separate",{"border-collapse":"separate"}],[/^border-spacing-(.+)$/,([,e],{theme:t})=>{let r=t.spacing?.[e]??u.bracket.cssvar.global.auto.fraction.rem(e);if(r!=null)return{"--un-border-spacing-x":r,"--un-border-spacing-y":r,"border-spacing":cl}},{custom:al,autocomplete:["border-spacing","border-spacing-$spacing"]}],[/^border-spacing-([xy])-(.+)$/,([,e,t],{theme:r})=>{let n=r.spacing?.[t]??u.bracket.cssvar.global.auto.fraction.rem(t);if(n!=null)return{[`--un-border-spacing-${e}`]:n,"border-spacing":cl}},{custom:al,autocomplete:["border-spacing-(x|y)","border-spacing-(x|y)-$spacing"]}],["caption-top",{"caption-side":"top"}],["caption-bottom",{"caption-side":"bottom"}],["table-auto",{"table-layout":"auto"}],["table-fixed",{"table-layout":"fixed"}],["table-empty-cells-visible",{"empty-cells":"show"}],["table-empty-cells-hidden",{"empty-cells":"hide"}]];var $o={"--un-pan-x":j,"--un-pan-y":j,"--un-pinch-zoom":j},xo={preflightKeys:Object.keys($o)},yo="var(--un-pan-x) var(--un-pan-y) var(--un-pinch-zoom)",ul=[[/^touch-pan-(x|left|right)$/,([,e])=>({"--un-pan-x":`pan-${e}`,"touch-action":yo}),{custom:xo,autocomplete:["touch-pan","touch-pan-(x|left|right|y|up|down)"]}],[/^touch-pan-(y|up|down)$/,([,e])=>({"--un-pan-y":`pan-${e}`,"touch-action":yo}),{custom:xo}],["touch-pinch-zoom",{"--un-pinch-zoom":"pinch-zoom","touch-action":yo},{custom:xo}],["touch-auto",{"touch-action":"auto"}],["touch-manipulation",{"touch-action":"manipulation"}],["touch-none",{"touch-action":"none"}],...k("touch","touch-action")];var vo={"--un-ordinal":j,"--un-slashed-zero":j,"--un-numeric-figure":j,"--un-numeric-spacing":j,"--un-numeric-fraction":j},ze={preflightKeys:Object.keys(vo)};function Ae(e){return{...e,"font-variant-numeric":"var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)"}}var fl=[[/^ordinal$/,()=>Ae({"--un-ordinal":"ordinal"}),{custom:ze,autocomplete:"ordinal"}],[/^slashed-zero$/,()=>Ae({"--un-slashed-zero":"slashed-zero"}),{custom:ze,autocomplete:"slashed-zero"}],[/^lining-nums$/,()=>Ae({"--un-numeric-figure":"lining-nums"}),{custom:ze,autocomplete:"lining-nums"}],[/^oldstyle-nums$/,()=>Ae({"--un-numeric-figure":"oldstyle-nums"}),{custom:ze,autocomplete:"oldstyle-nums"}],[/^proportional-nums$/,()=>Ae({"--un-numeric-spacing":"proportional-nums"}),{custom:ze,autocomplete:"proportional-nums"}],[/^tabular-nums$/,()=>Ae({"--un-numeric-spacing":"tabular-nums"}),{custom:ze,autocomplete:"tabular-nums"}],[/^diagonal-fractions$/,()=>Ae({"--un-numeric-fraction":"diagonal-fractions"}),{custom:ze,autocomplete:"diagonal-fractions"}],[/^stacked-fractions$/,()=>Ae({"--un-numeric-fraction":"stacked-fractions"}),{custom:ze,autocomplete:"stacked-fractions"}],["normal-nums",{"font-variant-numeric":"normal"}]];var Pd={"bg-blend":"background-blend-mode","bg-clip":"-webkit-background-clip","bg-gradient":"linear-gradient","bg-image":"background-image","bg-origin":"background-origin","bg-position":"background-position","bg-repeat":"background-repeat","bg-size":"background-size","mix-blend":"mix-blend-mode",object:"object-fit","object-position":"object-position",write:"writing-mode","write-orient":"text-orientation"},pl=[[/^(.+?)-(\$.+)$/,([,e,t])=>{let r=Pd[e];if(r)return{[r]:u.cssvar(t)}}]];var dl=[[/^view-transition-([\w-]+)$/,([,e])=>({"view-transition-name":e})]];var ml=[un,pl,fn,kc,xt,tl,yt,gt,Nr,Hr,Kc,rl,Yr,Kr,Dr,qr,tn,Xr,ht,Qr,Jr,Ur,ll,Vt,dc,bt,ul,vt,$t,qc,gc,Or,wc,Bt,Ut,Wt,Br,Gr,Xc,Uc,Ir,$c,vc,Et,wt,Ct,Vr,Fr,hc,_r,rn,nl,en,zr,an,Rt,jr,on,Tt,Zc,jt,fl,Wr,zt,sn,cn,ln,Jc,Qc,el,xc,bc,Mr,ol,il,Pt,Ar,Ot,yc,Nc,nn,Pr,kt,St,Gc,Lr,dl,sl,At,Zr].flat(1);var hl=[...Sc];var wo={inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",rose:{50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337",950:"#4c0519"},pink:{50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843",950:"#500724"},fuchsia:{50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75",950:"#4a044e"},purple:{50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87",950:"#3b0764"},violet:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},indigo:{50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81",950:"#1e1b4b"},blue:{50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"},sky:{50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e",950:"#082f49"},cyan:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},teal:{50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a",950:"#042f2e"},emerald:{50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b",950:"#022c22"},green:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d",950:"#052e16"},lime:{50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314",950:"#1a2e05"},yellow:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12",950:"#422006"},amber:{50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f",950:"#451a03"},orange:{50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12",950:"#431407"},red:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d",950:"#450a0a"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},slate:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a",950:"#020617"},zinc:{50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b",950:"#09090b"},neutral:{50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717",950:"#0a0a0a"},stone:{50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917",950:"#0c0a09"},light:{50:"#fdfdfd",100:"#fcfcfc",200:"#fafafa",300:"#f8f9fa",400:"#f6f6f6",500:"#f2f2f2",600:"#f1f3f5",700:"#e9ecef",800:"#dee2e6",900:"#dde1e3",950:"#d8dcdf"},dark:{50:"#4a4a4a",100:"#3c3c3c",200:"#323232",300:"#2d2d2d",400:"#222222",500:"#1f1f1f",600:"#1c1c1e",700:"#1b1b1b",800:"#181818",900:"#0f0f0f",950:"#080808"},get lightblue(){return this.sky},get lightBlue(){return this.sky},get warmgray(){return this.stone},get warmGray(){return this.stone},get truegray(){return this.neutral},get trueGray(){return this.neutral},get coolgray(){return this.gray},get coolGray(){return this.gray},get bluegray(){return this.slate},get blueGray(){return this.slate}};Object.values(wo).forEach(e=>{typeof e!="string"&&e!==void 0&&(e.DEFAULT=e.DEFAULT||e[400],Object.keys(e).forEach(t=>{let r=+t/100;r===Math.round(r)&&(e[r]=e[t])}))});var gl={DEFAULT:"8px",0:"0",sm:"4px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},bl={DEFAULT:["0 1px 2px rgb(0 0 0 / 0.1)","0 1px 1px rgb(0 0 0 / 0.06)"],sm:"0 1px 1px rgb(0 0 0 / 0.05)",md:["0 4px 3px rgb(0 0 0 / 0.07)","0 2px 2px rgb(0 0 0 / 0.06)"],lg:["0 10px 8px rgb(0 0 0 / 0.04)","0 4px 3px rgb(0 0 0 / 0.1)"],xl:["0 20px 13px rgb(0 0 0 / 0.03)","0 8px 5px rgb(0 0 0 / 0.08)"],"2xl":"0 25px 25px rgb(0 0 0 / 0.15)",none:"0 0 rgb(0 0 0 / 0)"},xl={sans:["ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'].join(","),serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"].join(","),mono:["ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"].join(",")},yl={xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},$l={DEFAULT:"1.5rem",xs:"0.5rem",sm:"1rem",md:"1.5rem",lg:"2rem",xl:"2.5rem","2xl":"3rem","3xl":"4rem"},vl={DEFAULT:"1.5rem",none:"0",sm:"thin",md:"medium",lg:"thick"},wl={DEFAULT:["0 0 1px rgb(0 0 0 / 0.2)","0 0 1px rgb(1 0 5 / 0.1)"],none:"0 0 rgb(0 0 0 / 0)",sm:"1px 1px 3px rgb(36 37 47 / 0.25)",md:["0 1px 2px rgb(30 29 39 / 0.19)","1px 2px 4px rgb(54 64 147 / 0.18)"],lg:["3px 3px 6px rgb(0 0 0 / 0.26)","0 0 5px rgb(15 3 86 / 0.22)"],xl:["1px 1px 3px rgb(0 0 0 / 0.29)","2px 4px 7px rgb(73 64 125 / 0.35)"]},kl={none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},Eo={tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},Sl={thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},Cl=Eo,To={sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},Rl={...To},El={DEFAULT:"1px",none:"0"},Tl={DEFAULT:"1rem",none:"0",xs:"0.75rem",sm:"0.875rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem","6xl":"3.75rem","7xl":"4.5rem","8xl":"6rem","9xl":"8rem"},jl={DEFAULT:"150ms",none:"0s",75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},zl={DEFAULT:"0.25rem",none:"0",sm:"0.125rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},Al={DEFAULT:["var(--un-shadow-inset) 0 1px 3px 0 rgb(0 0 0 / 0.1)","var(--un-shadow-inset) 0 1px 2px -1px rgb(0 0 0 / 0.1)"],none:"0 0 rgb(0 0 0 / 0)",sm:"var(--un-shadow-inset) 0 1px 2px 0 rgb(0 0 0 / 0.05)",md:["var(--un-shadow-inset) 0 4px 6px -1px rgb(0 0 0 / 0.1)","var(--un-shadow-inset) 0 2px 4px -2px rgb(0 0 0 / 0.1)"],lg:["var(--un-shadow-inset) 0 10px 15px -3px rgb(0 0 0 / 0.1)","var(--un-shadow-inset) 0 4px 6px -4px rgb(0 0 0 / 0.1)"],xl:["var(--un-shadow-inset) 0 20px 25px -5px rgb(0 0 0 / 0.1)","var(--un-shadow-inset) 0 8px 10px -6px rgb(0 0 0 / 0.1)"],"2xl":"var(--un-shadow-inset) 0 25px 50px -12px rgb(0 0 0 / 0.25)",inner:"inset 0 2px 4px 0 rgb(0 0 0 / 0.05)"},Ol={DEFAULT:"3px",none:"0"},Pl={auto:"auto"},Vl={mouse:"(hover) and (pointer: fine)"},Ml={...qe,...He,...Ge},ye={xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",prose:"65ch"},Fl={auto:"auto",...ye,screen:"100vw"},ko={none:"none",...ye,screen:"100vw"},_l={auto:"auto",...ye,screen:"100vb"},Ll={auto:"auto",...ye,screen:"100vi"},Wl={auto:"auto",...ye,screen:"100vh"},So={none:"none",...ye,screen:"100vh"},Co={none:"none",...ye,screen:"100vb"},Ro={none:"none",...ye,screen:"100vi"},Ul={...ye},Vd={DEFAULT:"cubic-bezier(0.4, 0, 0.2, 1)",linear:"linear",in:"cubic-bezier(0.4, 0, 1, 1)",out:"cubic-bezier(0, 0, 0.2, 1)","in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},Md={none:"none",all:"all",colors:["color","background-color","border-color","text-decoration-color","fill","stroke"].join(","),opacity:"opacity",shadow:"box-shadow",transform:"transform",get DEFAULT(){return[this.colors,"opacity","box-shadow","transform","filter","backdrop-filter"].join(",")}},jo={width:Fl,height:Wl,maxWidth:ko,maxHeight:So,minWidth:ko,minHeight:So,inlineSize:Ll,blockSize:_l,maxInlineSize:Ro,maxBlockSize:Co,minInlineSize:Ro,minBlockSize:Co,colors:wo,fontFamily:xl,fontSize:yl,fontWeight:Sl,breakpoints:To,verticalBreakpoints:Rl,borderRadius:zl,lineHeight:kl,letterSpacing:Eo,wordSpacing:Cl,boxShadow:Al,textIndent:$l,textShadow:wl,textStrokeWidth:vl,blur:gl,dropShadow:bl,easing:Vd,transitionProperty:Md,lineWidth:El,spacing:Tl,duration:jl,ringWidth:Ol,preflightBase:Ml,containers:Ul,zIndex:Pl,media:Vl};var Bl={...jo,aria:{busy:'busy="true"',checked:'checked="true"',disabled:'disabled="true"',expanded:'expanded="true"',hidden:'hidden="true"',pressed:'pressed="true"',readonly:'readonly="true"',required:'required="true"',selected:'selected="true"'},animation:{keyframes:{pulse:"{0%, 100% {opacity:1} 50% {opacity:.5}}",bounce:"{0%, 100% {transform:translateY(-25%);animation-timing-function:cubic-bezier(0.8,0,1,1)} 50% {transform:translateY(0);animation-timing-function:cubic-bezier(0,0,0.2,1)}}",spin:"{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}",ping:"{0%{transform:scale(1);opacity:1}75%,100%{transform:scale(2);opacity:0}}","bounce-alt":"{from,20%,53%,80%,to{animation-timing-function:cubic-bezier(0.215,0.61,0.355,1);transform:translate3d(0,0,0)}40%,43%{animation-timing-function:cubic-bezier(0.755,0.05,0.855,0.06);transform:translate3d(0,-30px,0)}70%{animation-timing-function:cubic-bezier(0.755,0.05,0.855,0.06);transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}",flash:"{from,50%,to{opacity:1}25%,75%{opacity:0}}","pulse-alt":"{from{transform:scale3d(1,1,1)}50%{transform:scale3d(1.05,1.05,1.05)}to{transform:scale3d(1,1,1)}}","rubber-band":"{from{transform:scale3d(1,1,1)}30%{transform:scale3d(1.25,0.75,1)}40%{transform:scale3d(0.75,1.25,1)}50%{transform:scale3d(1.15,0.85,1)}65%{transform:scale3d(0.95,1.05,1)}75%{transform:scale3d(1.05,0.95,1)}to{transform:scale3d(1,1,1)}}","shake-x":"{from,to{transform:translate3d(0,0,0)}10%,30%,50%,70%,90%{transform:translate3d(-10px,0,0)}20%,40%,60%,80%{transform:translate3d(10px,0,0)}}","shake-y":"{from,to{transform:translate3d(0,0,0)}10%,30%,50%,70%,90%{transform:translate3d(0,-10px,0)}20%,40%,60%,80%{transform:translate3d(0,10px,0)}}","head-shake":"{0%{transform:translateX(0)}6.5%{transform:translateX(-6px) rotateY(-9deg)}18.5%{transform:translateX(5px) rotateY(7deg)}31.5%{transform:translateX(-3px) rotateY(-5deg)}43.5%{transform:translateX(2px) rotateY(3deg)}50%{transform:translateX(0)}}",swing:"{20%{transform:rotate3d(0,0,1,15deg)}40%{transform:rotate3d(0,0,1,-10deg)}60%{transform:rotate3d(0,0,1,5deg)}80%{transform:rotate3d(0,0,1,-5deg)}to{transform:rotate3d(0,0,1,0deg)}}",tada:"{from{transform:scale3d(1,1,1)}10%,20%{transform:scale3d(0.9,0.9,0.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}to{transform:scale3d(1,1,1)}}",wobble:"{from{transform:translate3d(0,0,0)}15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}to{transform:translate3d(0,0,0)}}",jello:"{from,11.1%,to{transform:translate3d(0,0,0)}22.2%{transform:skewX(-12.5deg) skewY(-12.5deg)}33.3%{transform:skewX(6.25deg) skewY(6.25deg)}44.4%{transform:skewX(-3.125deg)skewY(-3.125deg)}55.5%{transform:skewX(1.5625deg) skewY(1.5625deg)}66.6%{transform:skewX(-0.78125deg) skewY(-0.78125deg)}77.7%{transform:skewX(0.390625deg) skewY(0.390625deg)}88.8%{transform:skewX(-0.1953125deg) skewY(-0.1953125deg)}}","heart-beat":"{0%{transform:scale(1)}14%{transform:scale(1.3)}28%{transform:scale(1)}42%{transform:scale(1.3)}70%{transform:scale(1)}}",hinge:"{0%{transform-origin:top left;animation-timing-function:ease-in-out}20%,60%{transform:rotate3d(0,0,1,80deg);transform-origin:top left;animation-timing-function:ease-in-out}40%,80%{transform:rotate3d(0,0,1,60deg);transform-origin:top left;animation-timing-function:ease-in-out}to{transform:translate3d(0,700px,0);opacity:0}}","jack-in-the-box":"{from{opacity:0;transform-origin:center bottom;transform:scale(0.1) rotate(30deg)}50%{transform:rotate(-10deg)}70%{transform:rotate(3deg)}to{transform:scale(1)}}","light-speed-in-left":"{from{opacity:0;transform:translate3d(-100%,0,0) skewX(-30deg)}60%{opacity:1;transform:skewX(20deg)}80%{transform:skewX(-5deg)}to{transform:translate3d(0,0,0)}}","light-speed-in-right":"{from{opacity:0;transform:translate3d(100%,0,0) skewX(-30deg)}60%{opacity:1;transform:skewX(20deg)}80%{transform:skewX(-5deg)}to{transform:translate3d(0,0,0)}}","light-speed-out-left":"{from{opacity:1}to{opacity:0;transform:translate3d(-100%,0,0) skewX(30deg)}}","light-speed-out-right":"{from{opacity:1}to{opacity:0;transform:translate3d(100%,0,0) skewX(30deg)}}",flip:"{from{transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,-360deg);animation-timing-function:ease-out}40%{transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);animation-timing-function:ease-out}50%{transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);animation-timing-function:ease-in}80%{transform:perspective(400px) scale3d(0.95,0.95,0.95) translate3d(0,0,0) rotate3d(0,1,0,0deg);animation-timing-function:ease-in}to{transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,0deg);animation-timing-function:ease-in}}","flip-in-x":"{from{transform:perspective(400px) rotate3d(1,0,0,90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(1,0,0,-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{transform:perspective(400px)}}","flip-in-y":"{from{transform:perspective(400px) rotate3d(0,1,0,90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(0,1,0,-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(0,1,0,10deg);opacity:1}80%{transform:perspective(400px) rotate3d(0,1,0,-5deg)}to{transform:perspective(400px)}}","flip-out-x":"{from{transform:perspective(400px)}30%{transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}","flip-out-y":"{from{transform:perspective(400px)}30%{transform:perspective(400px) rotate3d(0,1,0,-15deg);opacity:1}to{transform:perspective(400px) rotate3d(0,1,0,90deg);opacity:0}}","rotate-in":"{from{transform-origin:center;transform:rotate3d(0,0,1,-200deg);opacity:0}to{transform-origin:center;transform:translate3d(0,0,0);opacity:1}}","rotate-in-down-left":"{from{transform-origin:left bottom;transform:rotate3d(0,0,1,-45deg);opacity:0}to{transform-origin:left bottom;transform:translate3d(0,0,0);opacity:1}}","rotate-in-down-right":"{from{transform-origin:right bottom;transform:rotate3d(0,0,1,45deg);opacity:0}to{transform-origin:right bottom;transform:translate3d(0,0,0);opacity:1}}","rotate-in-up-left":"{from{transform-origin:left top;transform:rotate3d(0,0,1,45deg);opacity:0}to{transform-origin:left top;transform:translate3d(0,0,0);opacity:1}}","rotate-in-up-right":"{from{transform-origin:right bottom;transform:rotate3d(0,0,1,-90deg);opacity:0}to{transform-origin:right bottom;transform:translate3d(0,0,0);opacity:1}}","rotate-out":"{from{transform-origin:center;opacity:1}to{transform-origin:center;transform:rotate3d(0,0,1,200deg);opacity:0}}","rotate-out-down-left":"{from{transform-origin:left bottom;opacity:1}to{transform-origin:left bottom;transform:rotate3d(0,0,1,45deg);opacity:0}}","rotate-out-down-right":"{from{transform-origin:right bottom;opacity:1}to{transform-origin:right bottom;transform:rotate3d(0,0,1,-45deg);opacity:0}}","rotate-out-up-left":"{from{transform-origin:left bottom;opacity:1}to{transform-origin:left bottom;transform:rotate3d(0,0,1,-45deg);opacity:0}}","rotate-out-up-right":"{from{transform-origin:right bottom;opacity:1}to{transform-origin:left bottom;transform:rotate3d(0,0,1,90deg);opacity:0}}","roll-in":"{from{opacity:0;transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;transform:translate3d(0,0,0)}}","roll-out":"{from{opacity:1}to{opacity:0;transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg)}}","zoom-in":"{from{opacity:0;transform:scale3d(0.3,0.3,0.3)}50%{opacity:1}}","zoom-in-down":"{from{opacity:0;transform:scale3d(0.1,0.1,0.1) translate3d(0,-1000px,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}60%{opacity:1;transform:scale3d(0.475,0.475,0.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}","zoom-in-left":"{from{opacity:0;transform:scale3d(0.1,0.1,0.1) translate3d(-1000px,0,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}60%{opacity:1;transform:scale3d(0.475,0.475,0.475) translate3d(10px,0,0);animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}","zoom-in-right":"{from{opacity:0;transform:scale3d(0.1,0.1,0.1) translate3d(1000px,0,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}60%{opacity:1;transform:scale3d(0.475,0.475,0.475) translate3d(-10px,0,0);animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}","zoom-in-up":"{from{opacity:0;transform:scale3d(0.1,0.1,0.1) translate3d(0,1000px,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}60%{opacity:1;transform:scale3d(0.475,0.475,0.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}","zoom-out":"{from{opacity:1}50%{opacity:0;transform:scale3d(0.3,0.3,0.3)}to{opacity:0}}","zoom-out-down":"{40%{opacity:1;transform:scale3d(0.475,0.475,0.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}to{opacity:0;transform:scale3d(0.1,0.1,0.1) translate3d(0,2000px,0);transform-origin:center bottom;animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}","zoom-out-left":"{40%{opacity:1;transform:scale3d(0.475,0.475,0.475) translate3d(42px,0,0)}to{opacity:0;transform:scale(0.1) translate3d(-2000px,0,0);transform-origin:left center}}","zoom-out-right":"{40%{opacity:1;transform:scale3d(0.475,0.475,0.475) translate3d(-42px,0,0)}to{opacity:0;transform:scale(0.1) translate3d(2000px,0,0);transform-origin:right center}}","zoom-out-up":"{40%{opacity:1;transform:scale3d(0.475,0.475,0.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}to{opacity:0;transform:scale3d(0.1,0.1,0.1) translate3d(0,-2000px,0);transform-origin:center bottom;animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}","bounce-in":"{from,20%,40%,60%,80%,to{animation-timing-function:ease-in-out}0%{opacity:0;transform:scale3d(0.3,0.3,0.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(0.9,0.9,0.9)}60%{transform:scale3d(1.03,1.03,1.03);opacity:1}80%{transform:scale3d(0.97,0.97,0.97)}to{opacity:1;transform:scale3d(1,1,1)}}","bounce-in-down":"{from,60%,75%,90%,to{animation-timing-function:cubic-bezier(0.215,0.61,0.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:translate3d(0,0,0)}}","bounce-in-left":"{from,60%,75%,90%,to{animation-timing-function:cubic-bezier(0.215,0.61,0.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:translate3d(0,0,0)}}","bounce-in-right":"{from,60%,75%,90%,to{animation-timing-function:cubic-bezier(0.215,0.61,0.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:translate3d(0,0,0)}}","bounce-in-up":"{from,60%,75%,90%,to{animation-timing-function:cubic-bezier(0.215,0.61,0.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translate3d(0,0,0)}}","bounce-out":"{20%{transform:scale3d(0.9,0.9,0.9)}50%,55%{opacity:1;transform:scale3d(1.1,1.1,1.1)}to{opacity:0;transform:scale3d(0.3,0.3,0.3)}}","bounce-out-down":"{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}","bounce-out-left":"{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}","bounce-out-right":"{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}","bounce-out-up":"{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}","slide-in-down":"{from{transform:translate3d(0,-100%,0);visibility:visible}to{transform:translate3d(0,0,0)}}","slide-in-left":"{from{transform:translate3d(-100%,0,0);visibility:visible}to{transform:translate3d(0,0,0)}}","slide-in-right":"{from{transform:translate3d(100%,0,0);visibility:visible}to{transform:translate3d(0,0,0)}}","slide-in-up":"{from{transform:translate3d(0,100%,0);visibility:visible}to{transform:translate3d(0,0,0)}}","slide-out-down":"{from{transform:translate3d(0,0,0)}to{visibility:hidden;transform:translate3d(0,100%,0)}}","slide-out-left":"{from{transform:translate3d(0,0,0)}to{visibility:hidden;transform:translate3d(-100%,0,0)}}","slide-out-right":"{from{transform:translate3d(0,0,0)}to{visibility:hidden;transform:translate3d(100%,0,0)}}","slide-out-up":"{from{transform:translate3d(0,0,0)}to{visibility:hidden;transform:translate3d(0,-100%,0)}}","fade-in":"{from{opacity:0}to{opacity:1}}","fade-in-down":"{from{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-down-big":"{from{opacity:0;transform:translate3d(0,-2000px,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-left":"{from{opacity:0;transform:translate3d(-100%,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-left-big":"{from{opacity:0;transform:translate3d(-2000px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-right":"{from{opacity:0;transform:translate3d(100%,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-right-big":"{from{opacity:0;transform:translate3d(2000px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-up":"{from{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-up-big":"{from{opacity:0;transform:translate3d(0,2000px,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-top-left":"{from{opacity:0;transform:translate3d(-100%,-100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-top-right":"{from{opacity:0;transform:translate3d(100%,-100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-bottom-left":"{from{opacity:0;transform:translate3d(-100%,100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-in-bottom-right":"{from{opacity:0;transform:translate3d(100%,100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}","fade-out":"{from{opacity:1}to{opacity:0}}","fade-out-down":"{from{opacity:1}to{opacity:0;transform:translate3d(0,100%,0)}}","fade-out-down-big":"{from{opacity:1}to{opacity:0;transform:translate3d(0,2000px,0)}}","fade-out-left":"{from{opacity:1}to{opacity:0;transform:translate3d(-100%,0,0)}}","fade-out-left-big":"{from{opacity:1}to{opacity:0;transform:translate3d(-2000px,0,0)}}","fade-out-right":"{from{opacity:1}to{opacity:0;transform:translate3d(100%,0,0)}}","fade-out-right-big":"{from{opacity:1}to{opacity:0;transform:translate3d(2000px,0,0)}}","fade-out-up":"{from{opacity:1}to{opacity:0;transform:translate3d(0,-100%,0)}}","fade-out-up-big":"{from{opacity:1}to{opacity:0;transform:translate3d(0,-2000px,0)}}","fade-out-top-left":"{from{opacity:1;transform:translate3d(0,0,0)}to{opacity:0;transform:translate3d(-100%,-100%,0)}}","fade-out-top-right":"{from{opacity:1;transform:translate3d(0,0,0)}to{opacity:0;transform:translate3d(100%,-100%,0)}}","fade-out-bottom-left":"{from{opacity:1;transform:translate3d(0,0,0)}to{opacity:0;transform:translate3d(-100%,100%,0)}}","fade-out-bottom-right":"{from{opacity:1;transform:translate3d(0,0,0)}to{opacity:0;transform:translate3d(100%,100%,0)}}","back-in-up":"{0%{opacity:0.7;transform:translateY(1200px) scale(0.7)}80%{opacity:0.7;transform:translateY(0px) scale(0.7)}100%{opacity:1;transform:scale(1)}}","back-in-down":"{0%{opacity:0.7;transform:translateY(-1200px) scale(0.7)}80%{opacity:0.7;transform:translateY(0px) scale(0.7)}100%{opacity:1;transform:scale(1)}}","back-in-right":"{0%{opacity:0.7;transform:translateX(2000px) scale(0.7)}80%{opacity:0.7;transform:translateY(0px) scale(0.7)}100%{opacity:1;transform:scale(1)}}","back-in-left":"{0%{opacity:0.7;transform:translateX(-2000px) scale(0.7)}80%{opacity:0.7;transform:translateX(0px) scale(0.7)}100%{opacity:1;transform:scale(1)}}","back-out-up":"{0%{opacity:1;transform:scale(1)}80%{opacity:0.7;transform:translateY(0px) scale(0.7)}100%{opacity:0.7;transform:translateY(-700px) scale(0.7)}}","back-out-down":"{0%{opacity:1;transform:scale(1)}80%{opacity:0.7;transform:translateY(0px) scale(0.7)}100%{opacity:0.7;transform:translateY(700px) scale(0.7)}}","back-out-right":"{0%{opacity:1;transform:scale(1)}80%{opacity:0.7;transform:translateY(0px) scale(0.7)}100%{opacity:0.7;transform:translateX(2000px) scale(0.7)}}","back-out-left":"{0%{opacity:1;transform:scale(1)}80%{opacity:0.7;transform:translateX(-2000px) scale(0.7)}100%{opacity:0.7;transform:translateY(-700px) scale(0.7)}}"},durations:{pulse:"2s","heart-beat":"1.3s","bounce-in":"0.75s","bounce-out":"0.75s","flip-out-x":"0.75s","flip-out-y":"0.75s",hinge:"2s"},timingFns:{pulse:"cubic-bezier(0.4,0,.6,1)",ping:"cubic-bezier(0,0,.2,1)","head-shake":"ease-in-out","heart-beat":"ease-in-out","pulse-alt":"ease-in-out","light-speed-in-left":"ease-out","light-speed-in-right":"ease-out","light-speed-out-left":"ease-in","light-speed-out-right":"ease-in"},properties:{"bounce-alt":{"transform-origin":"center bottom"},jello:{"transform-origin":"center"},swing:{"transform-origin":"top center"},flip:{"backface-visibility":"visible"},"flip-in-x":{"backface-visibility":"visible !important"},"flip-in-y":{"backface-visibility":"visible !important"},"flip-out-x":{"backface-visibility":"visible !important"},"flip-out-y":{"backface-visibility":"visible !important"},"rotate-in":{"transform-origin":"center"},"rotate-in-down-left":{"transform-origin":"left bottom"},"rotate-in-down-right":{"transform-origin":"right bottom"},"rotate-in-up-left":{"transform-origin":"left bottom"},"rotate-in-up-right":{"transform-origin":"right bottom"},"rotate-out":{"transform-origin":"center"},"rotate-out-down-left":{"transform-origin":"left bottom"},"rotate-out-down-right":{"transform-origin":"right bottom"},"rotate-out-up-left":{"transform-origin":"left bottom"},"rotate-out-up-right":{"transform-origin":"right bottom"},hinge:{"transform-origin":"top left"},"zoom-out-down":{"transform-origin":"center bottom"},"zoom-out-left":{"transform-origin":"left center"},"zoom-out-right":{"transform-origin":"right center"},"zoom-out-up":{"transform-origin":"center bottom"}},counts:{spin:"infinite",ping:"infinite",pulse:"infinite","pulse-alt":"infinite",bounce:"infinite","bounce-alt":"infinite"},category:{pulse:"Attention Seekers",bounce:"Attention Seekers",spin:"Attention Seekers",ping:"Attention Seekers","bounce-alt":"Attention Seekers",flash:"Attention Seekers","pulse-alt":"Attention Seekers","rubber-band":"Attention Seekers","shake-x":"Attention Seekers","shake-y":"Attention Seekers","head-shake":"Attention Seekers",swing:"Attention Seekers",tada:"Attention Seekers",wobble:"Attention Seekers",jello:"Attention Seekers","heart-beat":"Attention Seekers",hinge:"Specials","jack-in-the-box":"Specials","light-speed-in-left":"Lightspeed","light-speed-in-right":"Lightspeed","light-speed-out-left":"Lightspeed","light-speed-out-right":"Lightspeed",flip:"Flippers","flip-in-x":"Flippers","flip-in-y":"Flippers","flip-out-x":"Flippers","flip-out-y":"Flippers","rotate-in":"Rotating Entrances","rotate-in-down-left":"Rotating Entrances","rotate-in-down-right":"Rotating Entrances","rotate-in-up-left":"Rotating Entrances","rotate-in-up-right":"Rotating Entrances","rotate-out":"Rotating Exits","rotate-out-down-left":"Rotating Exits","rotate-out-down-right":"Rotating Exits","rotate-out-up-left":"Rotating Exits","rotate-out-up-right":"Rotating Exits","roll-in":"Specials","roll-out":"Specials","zoom-in":"Zooming Entrances","zoom-in-down":"Zooming Entrances","zoom-in-left":"Zooming Entrances","zoom-in-right":"Zooming Entrances","zoom-in-up":"Zooming Entrances","zoom-out":"Zooming Exits","zoom-out-down":"Zooming Exits","zoom-out-left":"Zooming Exits","zoom-out-right":"Zooming Exits","zoom-out-up":"Zooming Exits","bounce-in":"Bouncing Entrances","bounce-in-down":"Bouncing Entrances","bounce-in-left":"Bouncing Entrances","bounce-in-right":"Bouncing Entrances","bounce-in-up":"Bouncing Entrances","bounce-out":"Bouncing Exits","bounce-out-down":"Bouncing Exits","bounce-out-left":"Bouncing Exits","bounce-out-right":"Bouncing Exits","bounce-out-up":"Bouncing Exits","slide-in-down":"Sliding Entrances","slide-in-left":"Sliding Entrances","slide-in-right":"Sliding Entrances","slide-in-up":"Sliding Entrances","slide-out-down":"Sliding Exits","slide-out-left":"Sliding Exits","slide-out-right":"Sliding Exits","slide-out-up":"Sliding Exits","fade-in":"Fading Entrances","fade-in-down":"Fading Entrances","fade-in-down-big":"Fading Entrances","fade-in-left":"Fading Entrances","fade-in-left-big":"Fading Entrances","fade-in-right":"Fading Entrances","fade-in-right-big":"Fading Entrances","fade-in-up":"Fading Entrances","fade-in-up-big":"Fading Entrances","fade-in-top-left":"Fading Entrances","fade-in-top-right":"Fading Entrances","fade-in-bottom-left":"Fading Entrances","fade-in-bottom-right":"Fading Entrances","fade-out":"Fading Exits","fade-out-down":"Fading Exits","fade-out-down-big":"Fading Exits","fade-out-left":"Fading Exits","fade-out-left-big":"Fading Exits","fade-out-right":"Fading Exits","fade-out-right-big":"Fading Exits","fade-out-up":"Fading Exits","fade-out-up-big":"Fading Exits","fade-out-top-left":"Fading Exits","fade-out-top-right":"Fading Exits","fade-out-bottom-left":"Fading Exits","fade-out-bottom-right":"Fading Exits","back-in-up":"Back Entrances","back-in-down":"Back Entrances","back-in-right":"Back Entrances","back-in-left":"Back Entrances","back-out-up":"Back Exits","back-out-down":"Back Exits","back-out-right":"Back Exits","back-out-left":"Back Exits"}},media:{portrait:"(orientation: portrait)",landscape:"(orientation: landscape)",os_dark:"(prefers-color-scheme: dark)",os_light:"(prefers-color-scheme: light)",motion_ok:"(prefers-reduced-motion: no-preference)",motion_not_ok:"(prefers-reduced-motion: reduce)",high_contrast:"(prefers-contrast: high)",low_contrast:"(prefers-contrast: low)",opacity_ok:"(prefers-reduced-transparency: no-preference)",opacity_not_ok:"(prefers-reduced-transparency: reduce)",use_data_ok:"(prefers-reduced-data: no-preference)",use_data_not_ok:"(prefers-reduced-data: reduce)",touch:"(hover: none) and (pointer: coarse)",stylus:"(hover: none) and (pointer: fine)",pointer:"(hover) and (pointer: coarse)",mouse:"(hover) and (pointer: fine)",hd_color:"(dynamic-range: high)"},supports:{grid:"(display: grid)"},preflightBase:{...qe,...$o,...go,...vo,...bo,...He,...Ge,...mo,...ho}};var Dl=[I("svg",e=>({selector:`${e.selector} svg`}))];var Il=[I(".dark",e=>({prefix:`.dark $$ ${e.prefix}`})),I(".light",e=>({prefix:`.light $$ ${e.prefix}`})),N("@dark","@media (prefers-color-scheme: dark)"),N("@light","@media (prefers-color-scheme: light)")];var ql={name:"aria",match(e,t){let r=M("aria-",e,t.generator.config.separators);if(r){let[n,o]=r,i=u.bracket(n)??t.theme.aria?.[n]??"";if(i)return{matcher:o,selector:s=>`${s}[aria-${i}]`}}},multiPass:!0};function hn(e){return{name:`${e}-aria`,match(t,r){let n=M(`${e}-aria-`,t,r.generator.config.separators);if(n){let[o,i]=n,s=u.bracket(o)??r.theme.aria?.[o]??"";if(s)return{matcher:`${e}-[[aria-${s}]]:${i}`}}}}}var Yl=[hn("group"),hn("peer"),hn("parent"),hn("previous")];function zo(e){let t=e.match(/^-?\d+\.?\d*/)?.[0]||"",r=e.slice(t.length);if(r==="px"){let n=Number.parseFloat(t)-.1;return Number.isNaN(n)?e:`${n}${r}`}return`calc(${e} - 0.1px)`}var Nl=/(max|min)-\[([^\]]*)\]:/;function Xl(){let e={};return{name:"breakpoints",match(t,r){if(Nl.test(t)){let o=t.match(Nl);return{matcher:t.replace(o[0],""),handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}@media (${o[1]}-width: ${o[2]})`})}}let n=(Te(r)??[]).map(({point:o,size:i},s)=>[o,i,s]);for(let[o,i,s]of n){e[o]||(e[o]=new RegExp(`^((?:([al]t-|[<~]|max-))?${o}(?:${r.generator.config.separators.join("|")}))`));let a=t.match(e[o]);if(!a)continue;let[,c]=a,l=t.slice(c.length);if(l==="container")continue;let p=c.startsWith("lt-")||c.startsWith("<")||c.startsWith("max-"),d=c.startsWith("at-")||c.startsWith("~"),h=3e3;return p?(h-=s+1,{matcher:l,handle:(m,g)=>g({...m,parent:`${m.parent?`${m.parent} $$ `:""}@media (max-width: ${zo(i)})`,parentOrder:h})}):(h+=s+1,d&&sg({...m,parent:`${m.parent?`${m.parent} $$ `:""}@media (min-width: ${i}) and (max-width: ${zo(n[s+1][1])})`,parentOrder:h})}:{matcher:l,handle:(m,g)=>g({...m,parent:`${m.parent?`${m.parent} $$ `:""}@media (min-width: ${i})`,parentOrder:h})})}},multiPass:!0,autocomplete:"(at-|lt-|max-|)$breakpoints:"}}var Zl=[I("*",e=>({selector:`${e.selector} > *`}))];function Dt(e,t){return{name:`combinator:${e}`,match(r,n){if(!r.startsWith(e))return;let o=n.generator.config.separators,i=ee(`${e}-`,r,o);if(!i){for(let a of o)if(r.startsWith(`${e}${a}`)){i=["",r.slice(e.length+a.length)];break}if(!i)return}let s=u.bracket(i[0])??"";return s===""&&(s="*"),{matcher:i[1],selector:a=>`${a}${t}${s}`}},multiPass:!0}}var Jl=[Dt("all"," "),Dt("children",">"),Dt("next","+"),Dt("sibling","+"),Dt("siblings","~")],Ql={name:"@",match(e,t){if(e.startsWith("@container"))return;let r=M("@",e,t.generator.config.separators);if(r){let[n,o,i]=r,s=u.bracket(n),a;if(s?a=u.numberWithUnit(s):a=t.theme.containers?.[n]??"",a){let c=1e3+Object.keys(t.theme.containers??{}).indexOf(n);return i&&(c+=1e3),{matcher:o,handle:(l,p)=>p({...l,parent:`${l.parent?`${l.parent} $$ `:""}@container${i?` ${i} `:" "}(min-width: ${a})`,parentOrder:c})}}}},multiPass:!0};function eu(e={}){if(e?.dark==="class"||typeof e.dark=="object"){let{dark:t=".dark",light:r=".light"}=typeof e.dark=="string"?{}:e.dark;return[I("dark",C(t).map(n=>o=>({prefix:`${n} $$ ${o.prefix}`}))),I("light",C(r).map(n=>o=>({prefix:`${n} $$ ${o.prefix}`})))]}return[N("dark","@media (prefers-color-scheme: dark)"),N("light","@media (prefers-color-scheme: light)")]}var tu={name:"data",match(e,t){let r=M("data-",e,t.generator.config.separators);if(r){let[n,o]=r,i=u.bracket(n)??t.theme.data?.[n]??"";if(i)return{matcher:o,selector:s=>`${s}[data-${i}]`}}},multiPass:!0};function gn(e){return{name:`${e}-data`,match(t,r){let n=M(`${e}-data-`,t,r.generator.config.separators);if(n){let[o,i,s]=n,a=u.bracket(o)??r.theme.data?.[o]??"";if(a)return{matcher:`${e}-[[data-${a}]]${s?`/${s}`:""}:${i}`}}}}}var ru=[gn("group"),gn("peer"),gn("parent"),gn("previous")],nu=[I("rtl",e=>({prefix:`[dir="rtl"] $$ ${e.prefix}`})),I("ltr",e=>({prefix:`[dir="ltr"] $$ ${e.prefix}`}))];function ou(){let e;return{name:"important",match(t,r){e||(e=new RegExp(`^(important(?:${r.generator.config.separators.join("|")})|!)`));let n,o=t.match(e);if(o?n=t.slice(o[0].length):t.endsWith("!")&&(n=t.slice(0,-1)),n)return{matcher:n,body:i=>(i.forEach(s=>{s[1]!=null&&(s[1]+=" !important")}),i)}}}}var iu=N("print","@media print"),su={name:"media",match(e,t){let r=M("media-",e,t.generator.config.separators);if(r){let[n,o]=r,i=u.bracket(n)??"";if(i===""&&(i=t.theme.media?.[n]??""),i)return{matcher:o,handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}@media ${i}`})}}},multiPass:!0},au={name:"selector",match(e,t){let r=ee("selector-",e,t.generator.config.separators);if(r){let[n,o]=r,i=u.bracket(n);if(i)return{matcher:o,selector:()=>i}}}},cu={name:"layer",match(e,t){let r=M("layer-",e,t.generator.config.separators);if(r){let[n,o]=r,i=u.bracket(n)??n;if(i)return{matcher:o,handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}@layer ${i}`})}}}},lu={name:"uno-layer",match(e,t){let r=M("uno-layer-",e,t.generator.config.separators);if(r){let[n,o]=r,i=u.bracket(n)??n;if(i)return{matcher:o,layer:i}}}},uu={name:"scope",match(e,t){let r=ee("scope-",e,t.generator.config.separators);if(r){let[n,o]=r,i=u.bracket(n);if(i)return{matcher:o,selector:s=>`${i} $$ ${s}`}}}},fu={name:"variables",match(e,t){if(!e.startsWith("["))return;let[r,n]=ve(e,"[","]")??[];if(!(r&&n))return;let o;for(let a of t.generator.config.separators)if(n.startsWith(a)){o=n.slice(a.length);break}if(o==null)return;let i=u.bracket(r)??"",s=i.startsWith("@");if(s||i.includes("&"))return{matcher:o,handle(a,c){let l=s?{parent:`${a.parent?`${a.parent} $$ `:""}${i}`}:{selector:i.replace(/&/g,a.selector)};return c({...a,...l})}}},multiPass:!0},pu={name:"theme-variables",match(e,t){if(or(e))return{matcher:e,handle(r,n){return n({...r,entries:JSON.parse(ir(JSON.stringify(r.entries),t.theme))})}}}},du=/^-?[0-9.]+(?:[a-z]+|%)?$/,mu=/-?[0-9.]+(?:[a-z]+|%)?/,Fd=[/\b(opacity|color|flex|backdrop-filter|^filter|transform)\b/];function _d(e){let t=e.match(dt)||e.match(wr);if(t){let[r,n]=fe(`(${t[2]})${t[3]}`,"(",")"," ")??[];if(r)return`calc(${t[1]}${r} * -1)${n?` ${n}`:""}`}}var Ld=/\b(hue-rotate)\s*(\(.*)/;function Wd(e){let t=e.match(Ld);if(t){let[r,n]=fe(t[2],"(",")"," ")??[];if(r){let o=du.test(r.slice(1,-1))?r.replace(mu,i=>i.startsWith("-")?i.slice(1):`-${i}`):`(calc(${r} * -1))`;return`${t[1]}${o}${n?` ${n}`:""}`}}}var hu={name:"negative",match(e){if(e.startsWith("-"))return{matcher:e.slice(1),body:t=>{if(t.find(n=>n[0]===oo))return;let r=!1;return t.forEach(n=>{let o=n[1]?.toString();if(!o||o==="0"||Fd.some(a=>a.test(n[0])))return;let i=_d(o);if(i){n[1]=i,r=!0;return}let s=Wd(o);if(s){n[1]=s,r=!0;return}du.test(o)&&(n[1]=o.replace(mu,a=>a.startsWith("-")?a.slice(1):`-${a}`),r=!0)}),r?t:[]}}}},gu="__pseudo_placeholder__",Xe=Object.fromEntries([["first-letter","::first-letter"],["first-line","::first-line"],"any-link","link","visited","target",["open","[open]"],"default","checked","indeterminate","placeholder-shown","autofill","optional","required","valid","invalid","user-valid","user-invalid","in-range","out-of-range","read-only","read-write","empty","focus-within","hover","focus","focus-visible","active","enabled","disabled","popover-open","root","empty",["even-of-type",":nth-of-type(even)"],["even",":nth-child(even)"],["odd-of-type",":nth-of-type(odd)"],["odd",":nth-child(odd)"],["nth",`:nth-child(${gu})`],"first-of-type",["first",":first-child"],"last-of-type",["last",":last-child"],"only-child","only-of-type",["backdrop-element","::backdrop"],["placeholder","::placeholder"],["before","::before"],["after","::after"],["file","::file-selector-button"]].map(e=>Array.isArray(e)?e:[e,`:${e}`])),bu=Object.keys(Xe),Ze=Object.fromEntries([["backdrop","::backdrop"]].map(e=>Array.isArray(e)?e:[e,`:${e}`])),xu=Object.keys(Ze),Ud=["not","is","where","has"],yu=Object.fromEntries([["selection",["::selection"," *::selection"]],["marker",["::marker"," *::marker"]]]),Ao=Object.entries(Xe).filter(([,e])=>!e.startsWith("::")).map(([e])=>e).sort((e,t)=>t.length-e.length).join("|"),Oo=Object.entries(Ze).filter(([,e])=>!e.startsWith("::")).map(([e])=>e).sort((e,t)=>t.length-e.length).join("|"),Le=Ud.join("|"),Kl=Object.keys(yu).sort((e,t)=>t.length-e.length).join("|");function Bd(e,t,r){let n=new RegExp(`^(${ue(t)}:)(\\S+)${ue(r)}\\1`),o,i,s,a,c=d=>{let h=ee(`${e}-`,d,[]);if(!h)return;let[m,g]=h,b=u.bracket(m);if(b==null)return;let $=g.split(o,1)?.[0]??"",R=`${t}${Q($)}`;return[$,d.slice(d.length-(g.length-$.length-1)),b.includes("&")?b.replace(/&/g,R):`${R}${b}`]},l=d=>{let h=d.match(i)||d.match(s);if(!h)return;let[m,g,b]=h,$=h[3]??"",R=Xe[b]||Ze[b]||`:${b}`;return g&&(R=`:${g}(${R})`),[$,d.slice(m.length),`${t}${Q($)}${R}`,b]},p=d=>{let h=d.match(a);if(!h)return;let[m,g,b]=h,$=h[3]??"",R=`:${g}(${b})`;return[$,d.slice(m.length),`${t}${Q($)}${R}`]};return{name:`pseudo:${e}`,match(d,h){if(o&&i&&s||(o=new RegExp(`(?:${h.generator.config.separators.join("|")})`),i=new RegExp(`^${e}-(?:(?:(${Le})-)?(${Ao}))(?:(/[\\w-]+))?(?:${h.generator.config.separators.join("|")})`),s=new RegExp(`^${e}-(?:(?:(${Le})-)?(${Oo}))(?:(/[\\w-]+))?(?:${h.generator.config.separators.filter(v=>v!=="-").join("|")})`),a=new RegExp(`^${e}-(?:(${Le})-)?\\[(.+)\\](?:(/[\\w-]+))?(?:${h.generator.config.separators.filter(v=>v!=="-").join("|")})`)),!d.startsWith(e))return;let m=c(d)||l(d)||p(d);if(!m)return;let[g,b,$,R=""]=m;return{matcher:b,handle:(v,T)=>T({...v,prefix:`${$}${r}${v.prefix}`.replace(n,"$1$2:"),sort:bu.indexOf(R)??xu.indexOf(R)})}},multiPass:!0}}var Dd=["::-webkit-resizer","::-webkit-scrollbar","::-webkit-scrollbar-button","::-webkit-scrollbar-corner","::-webkit-scrollbar-thumb","::-webkit-scrollbar-track","::-webkit-scrollbar-track-piece","::file-selector-button"],Gl=Object.entries(Xe).map(([e])=>e).sort((e,t)=>t.length-e.length).join("|"),Hl=Object.entries(Ze).map(([e])=>e).sort((e,t)=>t.length-e.length).join("|");function $u(){let e,t,r;return[{name:"pseudo",match(n,o){e&&t||(e=new RegExp(`^(${Gl})(?:-(\\[\\w+\\]))?(?:${o.generator.config.separators.join("|")})`),t=new RegExp(`^(${Hl})(?:${o.generator.config.separators.filter(s=>s!=="-").join("|")})`));let i=n.match(e)||n.match(t);if(i){let s=Xe[i[1]]||Ze[i[1]]||`:${i[1]}`;if(i[2]){let c=u.bracket(i[2]);c&&(s=s.replace(gu,c))}let a=bu.indexOf(i[1]);return a===-1&&(a=xu.indexOf(i[1])),a===-1&&(a=void 0),{matcher:n.slice(i[0].length),handle:(c,l)=>{let p=s.includes("::")&&!Dd.includes(s)?{pseudo:`${c.pseudo}${s}`}:{selector:`${c.selector}${s}`};return l({...c,...p,sort:a,noMerge:!0})}}}},multiPass:!0,autocomplete:`(${Gl}|${Hl}):`},{name:"pseudo:multi",match(n,o){r||(r=new RegExp(`^(${Kl})(?:${o.generator.config.separators.join("|")})`));let i=n.match(r);if(i)return yu[i[1]].map(a=>({matcher:n.slice(i[0].length),handle:(c,l)=>l({...c,pseudo:`${c.pseudo}${a}`})}))},multiPass:!1,autocomplete:`(${Kl}):`}]}function vu(){let e,t,r;return{match(n,o){e&&t||(e=new RegExp(`^(${Le})-(${Ao})(?:${o.generator.config.separators.join("|")})`),t=new RegExp(`^(${Le})-(${Oo})(?:${o.generator.config.separators.filter(s=>s!=="-").join("|")})`),r=new RegExp(`^(${Le})-(\\[.+\\])(?:${o.generator.config.separators.filter(s=>s!=="-").join("|")})`));let i=n.match(e)||n.match(t)||n.match(r);if(i){let s=i[1],c=ve(i[2],"[","]")?u.bracket(i[2]):Xe[i[2]]||Ze[i[2]]||`:${i[2]}`;return{matcher:n.slice(i[0].length),selector:l=>`${l}:${s}(${c})`}}},multiPass:!0,autocomplete:`(${Le})-(${Ao}|${Oo}):`}}function wu(e={}){let t=!!e?.attributifyPseudo,r=e?.prefix??"";r=(Array.isArray(r)?r:[r]).filter(Boolean)[0]??"";let n=(o,i)=>Bd(o,t?`[${r}${o}=""]`:`.${r}${o}`,i);return[n("group"," "),n("peer","~"),n("parent",">"),n("previous","+"),n("group-aria"," "),n("peer-aria","~"),n("parent-aria",">"),n("previous-aria","+")]}var Id=/(part-\[(.+)\]:)(.+)/,ku={match(e){let t=e.match(Id);if(t){let r=`part(${t[2]})`;return{matcher:e.slice(t[1].length),selector:n=>`${n}::${r}`}}},multiPass:!0},Su={name:"starting",match(e){if(e.startsWith("starting:"))return{matcher:e.slice(9),handle:(t,r)=>r({...t,parent:"@starting-style"})}}},Cu={name:"supports",match(e,t){let r=M("supports-",e,t.generator.config.separators);if(r){let[n,o]=r,i=u.bracket(n)??"";if(i===""&&(i=t.theme.supports?.[n]??""),i)return{matcher:o,handle:(s,a)=>a({...s,parent:`${s.parent?`${s.parent} $$ `:""}@supports ${i}`})}}},multiPass:!0};function Po(e){return[ql,tu,cu,au,lu,hu,Su,ou(),Cu,iu,su,Xl(),...Jl,...$u(),vu(),...wu(e),ku,...eu(e),...nu,uu,...Zl,Ql,fu,...ru,...Yl,pu]}var Ru=[N("contrast-more","@media (prefers-contrast: more)"),N("contrast-less","@media (prefers-contrast: less)")],Eu=[N("motion-reduce","@media (prefers-reduced-motion: reduce)"),N("motion-safe","@media (prefers-reduced-motion: no-preference)")],Tu=[N("landscape","@media (orientation: landscape)"),N("portrait","@media (orientation: portrait)")];var ju=e=>{if(!e.startsWith("_")&&(/space-[xy]-.+$/.test(e)||/divide-/.test(e)))return{matcher:e,selector:t=>{let r=">:not([hidden])~:not([hidden])";return t.includes(r)?t:`${t}${r}`}}},zu=[I("@hover",e=>({parent:`${e.parent?`${e.parent} $$ `:""}@media (hover: hover) and (pointer: fine)`,selector:`${e.selector||""}:hover`}))];function Au(e,t,r){return`calc(${t} + (${e} - ${t}) * ${r} / 100)`}function Ou(e,t,r){let n=[e,t],o=[];for(let s=0;s<2;s++){let a=typeof n[s]=="string"?q(n[s]):n[s];if(!a||!["rgb","rgba"].includes(a.type))return;o.push(a)}let i=[];for(let s=0;s<3;s++)i.push(Au(o[0].components[s],o[1].components[s],r));return{type:"rgb",components:i,alpha:Au(o[0].alpha??1,o[1].alpha??1,r)}}function Pu(e,t){return Ou("#fff",e,t)}function Vu(e,t){return Ou("#000",e,t)}function Nd(e,t){let r=Number.parseFloat(`${t}`);if(!Number.isNaN(r))return r>0?Vu(e,t):Pu(e,-r)}var Kd={tint:Pu,shade:Vu,shift:Nd};function Mu(){let e;return{name:"mix",match(t,r){e||(e=new RegExp(`^mix-(tint|shade|shift)-(-?\\d{1,3})(?:${r.generator.config.separators.join("|")})`));let n=t.match(e);if(n)return{matcher:t.slice(n[0].length),body:o=>(o.forEach(i=>{if(i[1]){let s=q(`${i[1]}`);if(s){let a=Kd[n[1]](s,n[2]);a&&(i[1]=z(a))}}}),o)}}}}var Fu=(e,{theme:t})=>{let r=e.match(/^(.*)\b(placeholder-)(.+)$/);if(r){let[,n="",o,i]=r;if(Fe(i,t,"accentColor")||Gd(i))return{matcher:`${n}placeholder-$ ${o}${i}`}}};function Gd(e){let t=e.match(/^op(?:acity)?-?(.+)$/);return t&&t[1]!=null?u.bracket.percent(t[1])!=null:!1}function _u(e){return[Fu,ju,...Po(e),...Ru,...Tu,...Eu,...Dl,...Il,...zu,Mu()]}var Lu=(e={})=>(e.important=e.important??!1,{...ro(e),name:"@unocss/preset-wind3",theme:Bl,rules:ml,shortcuts:hl,variants:_u(e),postprocess:ec(e)});var Hd=(e={})=>({...Lu(e),name:"@unocss/preset-uno"}),Wu=Hd;function qd(e){return e.replace(/-(\w)/g,(t,r)=>r?r.toUpperCase():"")}function Uu(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Bu(e){return e.replace(/(?:^|\B)([A-Z])/g,"-$1").toLowerCase()}var Du=["Webkit","Moz","ms"];function Iu(e){let t={};function r(n){let o=t[n];if(o)return o;let i=qd(n);if(i!=="filter"&&i in e)return t[n]=Bu(i);i=Uu(i);for(let s=0;sn.forEach(o=>{o[0].startsWith("--")||(o[0]=r(o[0]))})}function Nu(e){return e.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<")}async function Vo(e={}){if(typeof window>"u"){console.warn("@unocss/runtime been used in non-browser environment, skipped.");return}let t=window,r=window.document,n=()=>r.documentElement,o=t.__unocss||{},i=Object.assign({},e,o.runtime),s=i.defaults||{},a=i.cloakAttribute??"un-cloak";i.autoPrefix&&(s.postprocess=C(s.postprocess)).unshift(Iu(r.createElement("div").style)),i.configResolved?.(o,s);let c=await Zo(o,s),l=E=>i.inject?i.inject(E):n().prepend(E),p=()=>i.rootElement?i.rootElement():r.body,d=new Map,h=!0,m=new Set,g,b,$=[],R=()=>new Promise(E=>{$.push(E),b!=null&&clearTimeout(b),b=setTimeout(()=>H().then(()=>{let A=$;$=[],A.forEach(U=>U())}),0)});function v(E,A=!1){if(E.nodeType!==1)return;let U=E;U.hasAttribute(a)&&U.removeAttribute(a),A&&U.querySelectorAll(`[${a}]`).forEach(D=>{D.removeAttribute(a)})}function T(E,A){let U=d.get(E);if(!U)if(U=r.createElement("style"),U.setAttribute("data-unocss-runtime-layer",E),d.set(E,U),A==null)l(U);else{let D=T(A),X=D.parentNode;X?X.insertBefore(U,D.nextSibling):l(U)}return U}async function H(){let E=[...m],A=await c.generate(E);return A.layers.reduce((D,X)=>(T(X,D).innerHTML=A.getLayer(X)??"",X),void 0),E.filter(D=>!A.matched.has(D)).forEach(D=>m.delete(D)),{...A,getStyleElement:D=>d.get(D),getStyleElements:()=>d}}async function P(E){let A=m.size;await c.applyExtractors(E,void 0,m),A!==m.size&&await R()}async function y(E=p()){let A=E&&E.outerHTML;A&&(await P(`${A} ${Nu(A)}`),v(n()),v(E,!0))}let x=new MutationObserver(E=>{h||E.forEach(async A=>{if(A.target.nodeType!==1)return;let U=A.target;for(let D of d)if(U===D[1])return;if(A.type==="childList")A.addedNodes.forEach(async D=>{if(D.nodeType!==1)return;let X=D;g&&!g(X)||(await P(X.outerHTML),v(X))});else{if(g&&!g(U))return;if(A.attributeName!==a){let D=Array.from(U.attributes).map(B=>B.value?`${B.name}="${B.value}"`:B.name).join(" "),X=`<${U.tagName.toLowerCase()} ${D}>`;await P(X)}v(U)}})}),w=!1;function S(){if(w)return;let E=i.observer?.target?i.observer.target():p();E&&(x.observe(E,{childList:!0,subtree:!0,attributes:!0,attributeFilter:i.observer?.attributeFilter}),w=!0)}function Z(){i.bypassDefined&&Yd(c.blocked),y(),S()}function J(){r.readyState==="loading"?t.addEventListener("DOMContentLoaded",Z):Z()}let ce=t.__unocss_runtime=t.__unocss_runtime={version:c.version,uno:c,async extract(E){V(E)||(E.forEach(A=>m.add(A)),E=""),await P(E)},extractAll:y,inspect(E){g=E},toggleObserver(E){E===void 0?h=!h:h=!!E,!w&&!h&&J()},update:H,presets:t.__unocss_runtime?.presets??{}};i.ready?.(ce)!==!1&&(h=!1,J())}function Yd(e=new Set){for(let t=0;to.selectorText?.split(/,/g)||[]).forEach(o=>{o&&(o=o.trim(),o.startsWith(".")&&(o=o.slice(1)),e.add(o))})}catch{continue}}return e}Vo({defaults:{presets:[Wu()]}});})(); diff --git a/mvac/go.mod b/mvac/go.mod new file mode 100644 index 0000000..26738f9 --- /dev/null +++ b/mvac/go.mod @@ -0,0 +1,22 @@ +module mva + +go 1.24.3 + +require modernc.org/sqlite v1.37.1 + +require ( + github.com/CAFxX/httpcompression v0.0.9 // indirect + github.com/andybalholm/brotli v1.0.5 // indirect + github.com/dustin/go-humanize v1.0.1 // indirect + github.com/google/uuid v1.6.0 // indirect + github.com/klauspost/compress v1.18.0 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect + github.com/ncruces/go-strftime v0.1.9 // indirect + github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect + github.com/valyala/bytebufferpool v1.0.0 // indirect + golang.org/x/exp v0.0.0-20250506013437-ce4c2cf36ca6 // indirect + golang.org/x/sys v0.33.0 // indirect + modernc.org/libc v1.65.8 // indirect + modernc.org/mathutil v1.7.1 // indirect + modernc.org/memory v1.11.0 // indirect +) diff --git a/mvac/go.sum b/mvac/go.sum new file mode 100644 index 0000000..280b924 --- /dev/null +++ b/mvac/go.sum @@ -0,0 +1,77 @@ +github.com/CAFxX/httpcompression v0.0.9 h1:0ue2X8dOLEpxTm8tt+OdHcgA+gbDge0OqFQWGKSqgrg= +github.com/CAFxX/httpcompression v0.0.9/go.mod h1:XX8oPZA+4IDcfZ0A71Hz0mZsv/YJOgYygkFhizVPilM= +github.com/andybalholm/brotli v1.0.5 h1:8uQZIdzKmjc/iuPu7O2ioW48L81FgatrcpfFmiq/cCs= +github.com/andybalholm/brotli v1.0.5/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= +github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= +github.com/google/brotli/go/cbrotli v0.0.0-20230829110029-ed738e842d2f/go.mod h1:nOPhAkwVliJdNTkj3gXpljmWhjc4wCaVqbMJcPKWP4s= +github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e h1:ijClszYn+mADRFY17kjQEVQ1XRhq2/JR1M3sGqeJoxs= +github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/klauspost/compress v1.16.7/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= +github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo= +github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ= +github.com/klauspost/pgzip v1.2.6/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/ncruces/go-strftime v0.1.9 h1:bY0MQC28UADQmHmaF5dgpLmImcShSi2kHU9XLdhx/f4= +github.com/ncruces/go-strftime v0.1.9/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls= +github.com/pierrec/lz4/v4 v4.1.18/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE= +github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/ulikunitz/xz v0.5.11/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= +github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= +github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= +github.com/valyala/gozstd v1.20.1/go.mod h1:y5Ew47GLlP37EkTB+B4s7r6A5rdaeB7ftbl9zoYiIPQ= +golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0 h1:R84qjqJb5nVJMxqWYb3np9L5ZsaDtB+a39EqjV0JSUM= +golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0/go.mod h1:S9Xr4PYopiDyqSyp5NjCrhFrqg6A5zA2E/iPHPhqnS8= +golang.org/x/exp v0.0.0-20250506013437-ce4c2cf36ca6 h1:y5zboxd6LQAqYIhHnB48p0ByQ/GnQx2BE33L8BOHQkI= +golang.org/x/exp v0.0.0-20250506013437-ce4c2cf36ca6/go.mod h1:U6Lno4MTRCDY+Ba7aCcauB9T60gsv5s4ralQzP72ZoQ= +golang.org/x/mod v0.24.0 h1:ZfthKaKaT4NrhGVZHO1/WDTwGES4De8KtWO0SIbNJMU= +golang.org/x/mod v0.24.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww= +golang.org/x/sync v0.14.0 h1:woo0S4Yywslg6hp4eUFjTVOyKt0RookbpAHG4c1HmhQ= +golang.org/x/sync v0.14.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw= +golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc= +golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +modernc.org/cc/v4 v4.26.1 h1:+X5NtzVBn0KgsBCBe+xkDC7twLb/jNVj9FPgiwSQO3s= +modernc.org/cc/v4 v4.26.1/go.mod h1:uVtb5OGqUKpoLWhqwNQo/8LwvoiEBLvZXIQ/SmO6mL0= +modernc.org/ccgo/v4 v4.28.0 h1:rjznn6WWehKq7dG4JtLRKxb52Ecv8OUGah8+Z/SfpNU= +modernc.org/ccgo/v4 v4.28.0/go.mod h1:JygV3+9AV6SmPhDasu4JgquwU81XAKLd3OKTUDNOiKE= +modernc.org/fileutil v1.3.1 h1:8vq5fe7jdtEvoCf3Zf9Nm0Q05sH6kGx0Op2CPx1wTC8= +modernc.org/fileutil v1.3.1/go.mod h1:HxmghZSZVAz/LXcMNwZPA/DRrQZEVP9VX0V4LQGQFOc= +modernc.org/gc/v2 v2.6.5 h1:nyqdV8q46KvTpZlsw66kWqwXRHdjIlJOhG6kxiV/9xI= +modernc.org/gc/v2 v2.6.5/go.mod h1:YgIahr1ypgfe7chRuJi2gD7DBQiKSLMPgBQe9oIiito= +modernc.org/libc v1.65.7 h1:Ia9Z4yzZtWNtUIuiPuQ7Qf7kxYrxP1/jeHZzG8bFu00= +modernc.org/libc v1.65.7/go.mod h1:011EQibzzio/VX3ygj1qGFt5kMjP0lHb0qCW5/D/pQU= +modernc.org/libc v1.65.8 h1:7PXRJai0TXZ8uNA3srsmYzmTyrLoHImV5QxHeni108Q= +modernc.org/libc v1.65.8/go.mod h1:011EQibzzio/VX3ygj1qGFt5kMjP0lHb0qCW5/D/pQU= +modernc.org/mathutil v1.7.1 h1:GCZVGXdaN8gTqB1Mf/usp1Y/hSqgI2vAGGP4jZMCxOU= +modernc.org/mathutil v1.7.1/go.mod h1:4p5IwJITfppl0G4sUEDtCr4DthTaT47/N3aT6MhfgJg= +modernc.org/memory v1.11.0 h1:o4QC8aMQzmcwCK3t3Ux/ZHmwFPzE6hf2Y5LbkRs+hbI= +modernc.org/memory v1.11.0/go.mod h1:/JP4VbVC+K5sU2wZi9bHoq2MAkCnrt2r98UGeSK7Mjw= +modernc.org/opt v0.1.4 h1:2kNGMRiUjrp4LcaPuLY2PzUfqM/w9N23quVwhKt5Qm8= +modernc.org/opt v0.1.4/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns= +modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w= +modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE= +modernc.org/sqlite v1.37.1 h1:EgHJK/FPoqC+q2YBXg7fUmES37pCHFc97sI7zSayBEs= +modernc.org/sqlite v1.37.1/go.mod h1:XwdRtsE1MpiBcL54+MbKcaDvcuej+IYSMfLN6gSKV8g= +modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0= +modernc.org/strutil v1.2.1/go.mod h1:EHkiggD70koQxjVdSBM3JKM7k6L0FbGE5eymy9i3B9A= +modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y= +modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= diff --git a/mvac/main_dev.go b/mvac/main_dev.go new file mode 100644 index 0000000..1291d46 --- /dev/null +++ b/mvac/main_dev.go @@ -0,0 +1,252 @@ +//go:build !prod +// +build !prod + +package main + +import ( + "context" + "crypto/rand" + "embed" + "encoding/hex" + "fmt" + "io/fs" + "log" + "log/slog" + "mva/datastar" + "mva/sqlite" + "net/http" + "os" + "os/signal" + "path/filepath" + "strings" + "sync" + "time" +) + +const ( + exitCodeErr = 1 + exitCodeInterrupt = 2 +) + +//go:embed frontend +var frontend embed.FS + +// //go:embed templates +// var templates embed.FS + +// var templ = template.Must(template.ParseFS(templates, "templates/*.html")) + +// main is the entry point of the application. +// Its task is to check wether all execution conditions are fullfilled. +// Collecting information from the environment: flags, environment vars, configs. +// Calling the run() function. +func main() { + + fmt.Println("Developement mode") + + ctx := context.Background() + + // logging + logFileName := "./mva.log" + logFile, err := os.OpenFile(logFileName, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666) + if err != nil { + log.Printf("error opening file: %v", err) + os.Exit(exitCodeErr) + } + defer logFile.Close() + log.SetOutput(logFile) + + // database + dbName := "./database/advendtureworks.db" + db := sqlite.New(dbName) + if err != nil { + log.Printf("Failed to open %s database: %v", dbName, err) + os.Exit(exitCodeErr) + } + + // run the app + if err := run(db, ctx); err != nil { + fmt.Fprintf(os.Stderr, "%s\n", err) + os.Exit(exitCodeErr) + } + +} + +// Setting up all dependencies +// Creating the server (a central http handler) +func run(db *sqlite.Database, ctx context.Context) error { + + ctx, cancel := signal.NotifyContext(ctx, os.Interrupt) + defer cancel() + + err := db.Open(ctx) + if err != nil { + log.Printf("Failed to open %s database: %v", db.Name(), err) + os.Exit(exitCodeErr) + } + defer db.Close() + + server := NewServer(db) + + httpServer := &http.Server{ + Addr: ":8080", + Handler: server, + } + + go func() { + log.Printf("listening on %s\n", httpServer.Addr) + if err := httpServer.ListenAndServe(); err != nil && err != http.ErrServerClosed { + fmt.Fprintf(os.Stderr, "error listening and serving: %s\n", err) + } + }() + + var wg sync.WaitGroup + wg.Add(1) + go func() { + defer wg.Done() + <-ctx.Done() + // make a new context for the Shutdown (thanks Alessandro Rosetti) + // shutdownCtx := context.Background() + shutdownCtx, cancel := context.WithTimeout(ctx, 10*time.Second) + defer cancel() + if err := httpServer.Shutdown(shutdownCtx); err != nil { + fmt.Fprintf(os.Stderr, "error shutting down http server: %s\n", err) + } + log.Printf("shut down http server on %s\n", httpServer.Addr) + }() + wg.Wait() + return nil +} + +// The NewServer constructor is responsible for all the top-level HTTP stuff that applies to all endpoints, like CORS, auth middleware, and logging: +func NewServer(db *sqlite.Database) http.Handler { + mux := http.NewServeMux() + + static, err := fs.Sub(frontend, "frontend") + if err != nil { + log.Fatal(err) + } + + // Print the embedded filesystem tree + fmt.Println("Embedded frontend filesystem tree:") + err = printFSTree(static, ".", 0) + if err != nil { + log.Printf("Error printing filesystem tree: %v\n", err) + } + fmt.Println("--- End of tree ---") + + addRoutes( + mux, + static, + nil, // templ + ) + + + mux.HandleFunc("GET /stream", func(w http.ResponseWriter, r *http.Request) { + ticker := time.NewTicker(1000 * time.Millisecond) + + // original: defer ticker.Stop() + + defer func() { + fmt.Println("defer executed") + ticker.Stop() + }() + + sse := datastar.NewSSE(w, r) + for { + select { + case <-r.Context().Done(): + slog.Debug("Client connection closed") + return + case <-ticker.C: + bytes := make([]byte, 3) + + if _, err := rand.Read(bytes); err != nil { + slog.Error("Error generating random bytes: ", slog.String("error", err.Error())) + return + } + hexString := hex.EncodeToString(bytes) + frag := fmt.Sprintf(`%s`, hexString, hexString, hexString) + + sse.MergeFragments(frag) + } + } + }) + + + + var handler http.Handler = mux + + // handler = authMiddleware(handler) + handler = headerMiddleware(handler) + + return handler +} + +// printFSTree prints a tree-like structure of the given filesystem. +func printFSTree(efs fs.FS, root string, indentLevel int) error { + return fs.WalkDir(efs, root, func(path string, d fs.DirEntry, err error) error { + if err != nil { + return err + } + + // Skip the root directory itself for cleaner output if it's "." + if path == "." && root == "." { + return nil + } + + indent := strings.Repeat("│ ", indentLevel) + connector := "├── " + // For the last item in a directory, use a different connector. + // This requires knowing if it's the last item, which fs.WalkDir doesn't directly provide. + // For simplicity, we'll use the same connector for all items. + // A more sophisticated approach would involve reading directory entries first. + + fmt.Printf("%s%s%s\n", indent, connector, filepath.Base(path)) + + if d.IsDir() && path != root { // Avoid infinite recursion for the root itself if not handled carefully + // The WalkDir function handles recursion, so we don't need to call printFSTree recursively here. + // We adjust indentLevel based on path depth for visual representation. + // This simple indentation based on WalkDir's path might not be perfect for deep structures + // but gives a good overview. + } + return nil + }) +} + +// authMiddleware is a simple authentication middleware +// func authMiddleware(next http.Handler) http.Handler { +// return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { +// user, pass, ok := r.BasicAuth() +// if !ok || !validateUser(user, pass) { +// w.Header().Set("WWW-Authenticate", `Basic realm="Please enter your credentials"`) +// http.Error(w, "Unauthorized", http.StatusUnauthorized) +// return +// } +// next.ServeHTTP(w, r) +// }) +// } + +// authMiddleware is a simple authentication middleware +func headerMiddleware(next http.Handler) http.Handler { + return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + fmt.Println("Request URL:", r.URL.String()) + fmt.Println("Request Headers:") + for key, values := range r.Header { + for _, value := range values { + if key == "Referer" || strings.HasPrefix(key, "Hx") { + + fmt.Printf("%s: %s\n", key, value) + } + } + } + fmt.Println() + next.ServeHTTP(w, r) + }) +} + +// validateUser validates the user credentials +func validateUser(username, password string) bool { + // In a real application, these credentials should be stored securely. + return strings.EqualFold(username, "admin") && password == "password" +} diff --git a/mvac/main_prod.go b/mvac/main_prod.go new file mode 100644 index 0000000..d839ef1 --- /dev/null +++ b/mvac/main_prod.go @@ -0,0 +1,252 @@ +//go:build prod +// +build prod + +package main + +import ( + "context" + "crypto/rand" + "embed" + "encoding/hex" + "fmt" + "io/fs" + "log" + "log/slog" + "mva/datastar" + "mva/sqlite" + "net/http" + "os" + "os/signal" + "path/filepath" + "strings" + "sync" + "time" +) + +const ( + exitCodeErr = 1 + exitCodeInterrupt = 2 +) + +//go:embed frontend +var frontend embed.FS + +// //go:embed templates +// var templates embed.FS + +// var templ = template.Must(template.ParseFS(templates, "templates/*.html")) + +// main is the entry point of the application. +// Its task is to check wether all execution conditions are fullfilled. +// Collecting information from the environment: flags, environment vars, configs. +// Calling the run() function. +func main() { + + fmt.Println("Production mode") + + ctx := context.Background() + + // logging + logFileName := "./mva.log" + logFile, err := os.OpenFile(logFileName, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666) + if err != nil { + log.Printf("error opening file: %v", err) + os.Exit(exitCodeErr) + } + defer logFile.Close() + log.SetOutput(logFile) + + // database + dbName := "./database/advendtureworks.db" + db := sqlite.New(dbName) + if err != nil { + log.Printf("Failed to open %s database: %v", dbName, err) + os.Exit(exitCodeErr) + } + + // run the app + if err := run(db, ctx); err != nil { + fmt.Fprintf(os.Stderr, "%s\n", err) + os.Exit(exitCodeErr) + } + +} + +// Setting up all dependencies +// Creating the server (a central http handler) +func run(db *sqlite.Database, ctx context.Context) error { + + ctx, cancel := signal.NotifyContext(ctx, os.Interrupt) + defer cancel() + + err := db.Open(ctx) + if err != nil { + log.Printf("Failed to open %s database: %v", db.Name(), err) + os.Exit(exitCodeErr) + } + defer db.Close() + + server := NewServer(db) + + httpServer := &http.Server{ + Addr: ":8080", + Handler: server, + } + + go func() { + log.Printf("listening on %s\n", httpServer.Addr) + if err := httpServer.ListenAndServe(); err != nil && err != http.ErrServerClosed { + fmt.Fprintf(os.Stderr, "error listening and serving: %s\n", err) + } + }() + + var wg sync.WaitGroup + wg.Add(1) + go func() { + defer wg.Done() + <-ctx.Done() + // make a new context for the Shutdown (thanks Alessandro Rosetti) + // shutdownCtx := context.Background() + shutdownCtx, cancel := context.WithTimeout(ctx, 10*time.Second) + defer cancel() + if err := httpServer.Shutdown(shutdownCtx); err != nil { + fmt.Fprintf(os.Stderr, "error shutting down http server: %s\n", err) + } + log.Printf("shut down http server on %s\n", httpServer.Addr) + }() + wg.Wait() + return nil +} + +// The NewServer constructor is responsible for all the top-level HTTP stuff that applies to all endpoints, like CORS, auth middleware, and logging: +func NewServer(db *sqlite.Database) http.Handler { + mux := http.NewServeMux() + + static, err := fs.Sub(frontend, "frontend") + if err != nil { + log.Fatal(err) + } + + // Print the embedded filesystem tree + fmt.Println("Embedded frontend filesystem tree:") + err = printFSTree(static, ".", 0) + if err != nil { + log.Printf("Error printing filesystem tree: %v\n", err) + } + fmt.Println("--- End of tree ---") + + addRoutes( + mux, + static, + nil, // templ + ) + + + mux.HandleFunc("GET /stream", func(w http.ResponseWriter, r *http.Request) { + ticker := time.NewTicker(1000 * time.Millisecond) + + // original: defer ticker.Stop() + + defer func() { + fmt.Println("defer executed") + ticker.Stop() + }() + + sse := datastar.NewSSE(w, r) + for { + select { + case <-r.Context().Done(): + slog.Debug("Client connection closed") + return + case <-ticker.C: + bytes := make([]byte, 3) + + if _, err := rand.Read(bytes); err != nil { + slog.Error("Error generating random bytes: ", slog.String("error", err.Error())) + return + } + hexString := hex.EncodeToString(bytes) + frag := fmt.Sprintf(`%s`, hexString, hexString, hexString) + + sse.MergeFragments(frag) + } + } + }) + + + + var handler http.Handler = mux + + // handler = authMiddleware(handler) + handler = headerMiddleware(handler) + + return handler +} + +// printFSTree prints a tree-like structure of the given filesystem. +func printFSTree(efs fs.FS, root string, indentLevel int) error { + return fs.WalkDir(efs, root, func(path string, d fs.DirEntry, err error) error { + if err != nil { + return err + } + + // Skip the root directory itself for cleaner output if it's "." + if path == "." && root == "." { + return nil + } + + indent := strings.Repeat("│ ", indentLevel) + connector := "├── " + // For the last item in a directory, use a different connector. + // This requires knowing if it's the last item, which fs.WalkDir doesn't directly provide. + // For simplicity, we'll use the same connector for all items. + // A more sophisticated approach would involve reading directory entries first. + + fmt.Printf("%s%s%s\n", indent, connector, filepath.Base(path)) + + if d.IsDir() && path != root { // Avoid infinite recursion for the root itself if not handled carefully + // The WalkDir function handles recursion, so we don't need to call printFSTree recursively here. + // We adjust indentLevel based on path depth for visual representation. + // This simple indentation based on WalkDir's path might not be perfect for deep structures + // but gives a good overview. + } + return nil + }) +} + +// authMiddleware is a simple authentication middleware +// func authMiddleware(next http.Handler) http.Handler { +// return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { +// user, pass, ok := r.BasicAuth() +// if !ok || !validateUser(user, pass) { +// w.Header().Set("WWW-Authenticate", `Basic realm="Please enter your credentials"`) +// http.Error(w, "Unauthorized", http.StatusUnauthorized) +// return +// } +// next.ServeHTTP(w, r) +// }) +// } + +// authMiddleware is a simple authentication middleware +func headerMiddleware(next http.Handler) http.Handler { + return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + fmt.Println("Request URL:", r.URL.String()) + fmt.Println("Request Headers:") + for key, values := range r.Header { + for _, value := range values { + if key == "Referer" || strings.HasPrefix(key, "Hx") { + + fmt.Printf("%s: %s\n", key, value) + } + } + } + fmt.Println() + next.ServeHTTP(w, r) + }) +} + +// validateUser validates the user credentials +func validateUser(username, password string) bool { + // In a real application, these credentials should be stored securely. + return strings.EqualFold(username, "admin") && password == "password" +} diff --git a/mvac/readme.md b/mvac/readme.md new file mode 100644 index 0000000..307400d --- /dev/null +++ b/mvac/readme.md @@ -0,0 +1,3 @@ +# History + +this is going to be an upgrade to the latest datastar version diff --git a/mvac/routes.go b/mvac/routes.go new file mode 100644 index 0000000..0a2e3c4 --- /dev/null +++ b/mvac/routes.go @@ -0,0 +1,25 @@ +package main + +// This file is the one place in your application where all routes are listed. + +import ( + "html/template" + "io/fs" + "net/http" +) + +// addRoutes combines the URL endpoints with the applications's services +// and dependencies and required middleware +func addRoutes( + mux *http.ServeMux, + // database *sqlite.Database, + static fs.FS, + templ *template.Template, +) { + mux.Handle("GET /", http.FileServer(http.FS(static))) + // mux.Handle("GET /tables", api.TableList(database)) + // mux.Handle("GET /count", api.ProductCount(database)) + // mux.Handle("GET /nutriments/{page}", api.DataNutriments(database, templ)) + // mux.Handle("GET /products/{page}", api.DataProducts(database, templ)) + // mux.Handle("GET /brandowner/{page}", api.DataBrandOwner(database, templ)) +} diff --git a/mvac/sqlite/database.go b/mvac/sqlite/database.go new file mode 100644 index 0000000..73de4e3 --- /dev/null +++ b/mvac/sqlite/database.go @@ -0,0 +1,614 @@ +package sqlite // name the package as you see fit, it is intended to be vendored + +import ( + "bytes" + "database/sql" + "errors" + "context" + "fmt" + "os" + "strconv" + "text/template" + + _ "modernc.org/sqlite" +) + +/* +Package sqlite provides a simplified wrapper around the modernc.org/sqlite driver. + +It aims to provide a convenient, developer-friendly interface for common database +operations, prioritizing ease of use with a map-based data exchange format (Record). + +Key Concepts: + +- Database Instance: A single `Database` struct instance manages the connection to + a specific database file or an in-memory database. +- Lifecycle: Use `New()` to create an instance, `Open()` or `OpenInMemory()` + to establish the connection, and `defer Close()` to release resources. +- Record Type: `type Record = map[string]any` is the primary type for exchanging + data with the database. Column names become map keys. +- Underlying DB Access: The `DB()` method provides access to the raw `*sql.DB` + object for operations not covered by the wrapper. + +Features: + +- Reading Data: + - `ReadTable(tablename string)`: Reads all rows and columns from a specified table. + - `ReadRecords(query string, args ...any)`: Executes a custom SQL SELECT query + with parameterized arguments and returns multiple records. + - `GetRecord(tablename string, idfield string, key any)`: Retrieves a single + record from a table based on a unique identifier. +- Writing Data: + - `UpsertRecord(tablename string, idfield string, record Record)`: Inserts a new + record or updates an existing one based on the value of the `idfield`. + Uses SQLite's `ON CONFLICT` clause. + - Supports partial updates: Only include fields you want to insert/update in the `Record`. + - Returns the full resulting record (including auto-generated IDs) using `RETURNING *`. +- Deleting Data: + - `DeleteRecord(tablename string, idfield string, id any)`: Deletes a single + record from a table based on its identifier. +- Metadata: + - `TableList()`: Lists all tables in the database. + - `Version()`: Gets the SQLite library version. + - `UserVersion()`: Gets the database's user_version PRAGMA. + +Transaction Handling: + +- `Begin()`: Starts a new database transaction, returning a `*Transaction` object. +- Chaining: Transaction methods (`GetRecord`, `UpsertRecord`, `DeleteRecord`, `Next`) + return the `*Transaction` object, allowing operations to be chained. +- Error Propagation: If any operation within a transaction chain fails, the error + is stored in the `Transaction` object (`tx.Err()`), and subsequent chained + operations become no-ops. +- `Next(action Action)`: Allows executing custom logic within the transaction + by providing a function that receives the raw `*sql.Tx`. +- `End()`: Finalizes the transaction. If `tx.Err()` is non-nil, it performs a + ROLLBACK; otherwise, it performs a COMMIT. Returns the accumulated error. + +Helper Functions: + +- `ValueT any`: A generic helper to safely extract + and type-assert a value from a `Record` map. +- `NoRowsOk([]Record, error)`: A helper to wrap calls that might return + `sql.ErrNoRows` and treat that specific error as a non-error case, returning + nil records and a nil error. + +Prerequisites: + +- For `UpsertRecord` to function correctly, the target table must have a unique + index defined on the specified `idfield`. +- It is highly recommended that the `idfield` is an `INTEGER PRIMARY KEY AUTOINCREMENT` + to leverage SQLite's built-in ID generation and efficient lookups. + +Shortcomings and Important Considerations: + +- SQL Injection Risk: + - Identifiers: Table names, field names, and record keys (used as field names) + are validated to contain only alphanumeric characters and underscores. They are + also quoted by the library. This significantly mitigates SQL injection risks + through identifiers. However, the caller MUST still ensure that these identifiers + refer to the *intended* database objects. + - Query Structure: For `ReadRecords` and `Transaction.Next` actions, if the raw + SQL query string itself is constructed from untrusted user input, it remains a + potential SQL injection vector. Parameterization is used by this library (and + `database/sql`) only for *values*, not for the query structure or identifiers + within a user-provided query string. + +- Simplicity over Edge Cases: This is a simplified layer. More complex scenarios + or advanced SQLite features might require using the underlying `*sql.DB` object + via the `DB()` method. +- Room for Improvement: As a fresh implementation, there is potential for + further optimization and refinement. + +Implementation Details: + +- Uses the `modernc.org/sqlite` driver. +- SQL commands for `UpsertRecord` are dynamically generated using Go's `text/template`. +- Internal interfaces (`iquery`, `iExec`) are used to allow functions like `upsert` + and `deleteRecord` to work seamlessly with both `*sql.DB` and `*sql.Tx`. + +Unit Tests: + +- The package includes unit tests (`database_test.go`, `transaction_test.go`, `helpers_test.go`) + covering core functionality and transaction handling. +*/ + +// ErrInvalidIdentifier is returned when a table or column name contains disallowed characters. +var ErrInvalidIdentifier = errors.New("invalid identifier: contains disallowed characters") + +// This is the data type to exchange data with the database +type Record = map[string]any + +type Database struct { + databaseName string + database *sql.DB +} + +func New(DBName string) *Database { + return &Database{databaseName: DBName} +} + +func (d *Database) Close() error { + return d.database.Close() +} + +// provides access to the internal database object +func (d *Database) DB() *sql.DB { + return d.database +} + +func (d *Database) Name() string { + return d.databaseName +} + +// basePragmas returns a string of common PRAGMA settings for SQLite. +// It excludes user_version, which is typically managed by schema migrations. +func basePragmas() string { + return ` + PRAGMA page_size = 4096; + PRAGMA synchronous = NORMAL; + PRAGMA foreign_keys = ON; + PRAGMA journal_mode = WAL; + ` +} + +func (d *Database) Open(ctx context.Context) (err error) { + d.database, err = openSqliteDB(ctx, d.databaseName) + return err +} + +func (d *Database) OpenInMemory(ctx context.Context) (err error) { + db, err := sql.Open("sqlite", ":memory:") + if err != nil { + return err + } + // Apply base PRAGMAs for consistency in in-memory databases. + _, err = db.ExecContext(ctx, basePragmas()) + d.database = db + return err +} + +func openSqliteDB(ctx context.Context, databasefilename string) (*sql.DB, error) { + + _, err := os.Stat(databasefilename) + if errors.Is(err, os.ErrNotExist) { + return createDB(ctx, databasefilename) + } + if err != nil { + return nil, err + } + return sql.Open("sqlite", databasefilename) + +} + +func createDB(ctx context.Context, dbfileName string) (*sql.DB, error) { + // Apply base pragmas and set initial user_version for new database files. + query := basePragmas() + "PRAGMA user_version = 1;\n" + db, err := sql.Open("sqlite", dbfileName) + if err != nil { + return nil, err + } + _, err = db.ExecContext(ctx, query) + if err != nil { + db.Close() // Best effort to close if ExecContext fails + os.Remove(dbfileName) // Best effort to remove partially created file + return nil, err + } + return db, nil +} + +func (d *Database) TableList(ctx context.Context) (result []Record, err error) { + return d.ReadRecords(ctx, "select name from sqlite_master where type='table';") +} + +func (d *Database) ReadTable(ctx context.Context, tablename string) (result []Record, err error) { + if !isValidIdentifier(tablename) { + return nil, fmt.Errorf("ReadTable: %w: table name '%s'", ErrInvalidIdentifier, tablename) + } + return d.ReadRecords(ctx, fmt.Sprintf("select * from \"%s\";", tablename)) // Use double quotes for identifiers +} + +func (d *Database) ReadRecords(ctx context.Context, query string, args ...any) (result []Record, err error) { + // Note: For ReadRecords, the query string itself is provided by the caller. + // The library cannot validate the structure of this query beyond what the driver does. + // The SQL injection caveat for arbitrary query strings remains critical here. + rows, err := d.DB().QueryContext(ctx, query, args...) + if err != nil { + return result, err + } + defer rows.Close() + return Rows2records(rows) +} + +func (d *Database) GetRecord(ctx context.Context, tablename string, idfield string, key any) (result Record, err error) { + if !isValidIdentifier(tablename) { + return nil, fmt.Errorf("GetRecord: %w: table name '%s'", ErrInvalidIdentifier, tablename) + } + if !isValidIdentifier(idfield) { + return nil, fmt.Errorf("GetRecord: %w: id field '%s'", ErrInvalidIdentifier, idfield) + } + + query := fmt.Sprintf("select * from \"%s\" where \"%s\" = ?;", tablename, idfield) // Quote identifiers + res, err := d.DB().QueryContext(ctx, query, key) + if err != nil { + return result, err + } + defer res.Close() + return Rows2record(res) + +} + +func (d *Database) UpsertRecord(ctx context.Context, tablename string, idfield string, record Record) (result Record, err error) { + if !isValidIdentifier(tablename) { + return nil, fmt.Errorf("UpsertRecord: %w: table name '%s'", ErrInvalidIdentifier, tablename) + } + if !isValidIdentifier(idfield) { + return nil, fmt.Errorf("UpsertRecord: %w: id field '%s'", ErrInvalidIdentifier, idfield) + } + return upsert(ctx, d.DB(), tablename, idfield, record) + +} + +func (d *Database) DeleteRecord(ctx context.Context, tablename string, idfield string, id any) (err error) { + // Validation for tablename and idfield will be done by deleteRecord internal helper + // to ensure consistency for both Database and Transaction calls. + return deleteRecord(ctx, d.DB(), tablename, idfield, id) + +} + +// *sql.DB and *sql.Tx both have a method named 'Query', +// this way they can both be passed into upsert and deleteRecord function +type iqueryContext interface { + QueryContext(ctx context.Context, query string, args ...any) (*sql.Rows, error) +} + +// iExec is an interface satisfied by both *sql.DB and *sql.Tx for Exec method +type iExecContext interface { + ExecContext(ctx context.Context, query string, args ...any) (sql.Result, error) +} + +func upsert(ctx context.Context, q iqueryContext, tablename string, idfield string, record Record) (result Record, err error) { + // tablename and idfield are assumed to be validated by the public-facing methods (Database.UpsertRecord, Transaction.UpsertRecord) + + fields := []string{} + data := []any{} + for k, v := range record { + if !isValidIdentifier(k) { + return nil, fmt.Errorf("upsert: %w: field name '%s'", ErrInvalidIdentifier, k) + } + fields = append(fields, k) + data = append(data, v) + } + // Ensure idfield is part of the record if it's used for conflict and update, + // or handle cases where it might only be for conflict target and not in SET. + // The current buildUpsertCommand uses all fields from the record for the SET clause. + if _, present := record[idfield]; !present && len(record) > 0 { + // This situation is complex: if idfield is not in the record, + // it implies it might be auto-generated on INSERT, but for UPDATE, + // it's needed to identify the row. The ON CONFLICT target uses idfield. + // The current template includes all record fields in the SET clause. + // If idfield is not in record, it won't be in the SET clause unless explicitly added. + // For simplicity and current template, we assume if idfield is for update, it should be in the record. + } + if len(fields) == 0 { + return nil, errors.New("UpsertRecord: input record cannot be empty") + } + query, err := buildUpsertCommand(tablename, idfield, fields) + if err != nil { + return result, err + } + res, err := q.QueryContext(ctx, query, data...) // res contains the full record - see SQLite: RETURNING * + if err != nil { + return result, err + } + defer res.Close() + return Rows2record(res) +} + +func deleteRecord(ctx context.Context, e iExecContext, tablename string, idfield string, id any) (err error) { + if !isValidIdentifier(tablename) { + return fmt.Errorf("deleteRecord: %w: table name '%s'", ErrInvalidIdentifier, tablename) + } + if !isValidIdentifier(idfield) { + return fmt.Errorf("deleteRecord: %w: id field '%s'", ErrInvalidIdentifier, idfield) + } + + query := fmt.Sprintf("DELETE FROM \"%s\" WHERE \"%s\" = ?;", tablename, idfield) + _, err = e.ExecContext(ctx, query, id) + // Note: err could be sql.ErrNoRows if the driver/db supports it for Exec, + // or nil if delete affected 0 rows. Caller might want to check result.RowsAffected(). + // For simplicity here, we just return the error from Exec. + return err + +} + +func buildUpsertCommand(tablename string, idfield string, fields []string) (result string, err error) { + // Assumes tablename, idfield, and all elements in fields are already validated + // by the calling function (e.g., upsert). + // And that fields is not empty. + + pname := map[string]string{} // assign correct index for parameter name + // parameter position, starts at 1 in sql! So it needs to be calculated by function pname inside template + + for i, k := range fields { + pname[k] = strconv.Itoa(i + 1) + } + funcMap := template.FuncMap{ + "pname": func(fieldname string) string { + return pname[fieldname] + }, + } + tableDef := struct { + Tablename string + KeyField string + LastField int + FieldNames []string + }{ + Tablename: tablename, + KeyField: idfield, + LastField: len(fields) - 1, + FieldNames: fields, + } + var templString = `{{$last := .LastField}}INSERT INTO "{{ .Tablename }}"({{ range $i,$el := .FieldNames }} "{{$el}}"{{if ne $i $last}},{{end}}{{end}}) + VALUES({{ range $i,$el := .FieldNames }} ?{{pname $el}}{{if ne $i $last}},{{end}}{{end}}) + ON CONFLICT("{{ .Tablename }}"."{{.KeyField}}") + DO UPDATE SET {{ range $i,$el := .FieldNames }}"{{$el}}"= ?{{pname $el}}{{if ne $i $last}},{{end}}{{end}} + RETURNING *;` + + dbTempl, err := template.New("upsertDB").Funcs(funcMap).Parse(templString) + if err != nil { + return result, err + } + var templBytes bytes.Buffer + err = dbTempl.Execute(&templBytes, tableDef) + if err != nil { + return result, err + } + return templBytes.String(), nil +} + +func Rows2record(rows *sql.Rows) (Record, error) { + columns, err := rows.Columns() + if err != nil { + return nil, err + } + values := make([]any, len(columns)) + valuePtrs := make([]any, len(columns)) + for i := range values { + valuePtrs[i] = &values[i] + } + result := Record{} + + if !rows.Next() { + if err := rows.Err(); err != nil { // Check for errors during iteration attempt + return nil, err + } + return nil, sql.ErrNoRows // Standard error for no rows + } + + if err := rows.Scan(valuePtrs...); err != nil { + return nil, err + } + for i, col := range columns { + result[col] = values[i] + } + + // Check for errors encountered during iteration (e.g., if Next() was called multiple times). + if err := rows.Err(); err != nil { + return nil, err + } + + return result, nil +} + +func Rows2records(rows *sql.Rows) ([]Record, error) { + columns, err := rows.Columns() + if err != nil { + return nil, err + } + recLength := len(columns) + results := []Record{} + for rows.Next() { + valuePtrs := make([]any, recLength) + values := make([]any, recLength) + for i := range values { + valuePtrs[i] = &values[i] + } + record := Record{} + if err := rows.Scan(valuePtrs...); err != nil { + return nil, err + } + for i, col := range columns { + record[col] = values[i] + } + results = append(results, record) + } + // Check for errors encountered during iteration. + if err := rows.Err(); err != nil { + return nil, err + } + + if len(results) == 0 { + // For a function returning a slice, an empty slice and nil error is often preferred for "no rows". + // However, if the expectation is that Rows2records is used where rows *should* exist, sql.ErrNoRows is appropriate. + return nil, sql.ErrNoRows // Or: return []Record{}, nil if empty slice is the desired "no rows" outcome + } + return results, nil +} + +func (d *Database) Version(ctx context.Context) (string, error) { + var version string + err := d.DB().QueryRowContext(ctx, "SELECT sqlite_version();").Scan(&version) + return version, err +} + +func (d *Database) UserVersion(ctx context.Context) (int64, error) { + var result int64 + // PRAGMA user_version; returns a single row with a single column named "user_version". + // QueryRow().Scan() is appropriate here. + err := d.DB().QueryRowContext(ctx, "PRAGMA user_version;").Scan(&result) + return result, err +} + +func (d *Database) BeginTx(ctx context.Context, opts *sql.TxOptions) *Transaction { + tx, err := d.database.BeginTx(ctx, opts) + return &Transaction{tx, err} +} + +type Transaction struct { + tx *sql.Tx + err error +} + +// Err returns the current error state of the transaction. +func (t *Transaction) Err() error { + return t.err +} + +type Action func(ctx context.Context, tx *sql.Tx) error + +func (t *Transaction) Next(ctx context.Context, action Action) *Transaction { + if t.err != nil { + return t + } + t.err = action(ctx, t.tx) + return t +} + +func (t *Transaction) End() error { + if t.tx == nil { // Transaction was never begun or already ended + return t.err // Return any prior error + } + if t.err != nil { + err := t.tx.Rollback() // Rollback does not take context + if err != nil { + t.err = errors.Join(t.err, err) + } + return t.err + } + t.err = t.tx.Commit() + return t.err +} + +func (t *Transaction) GetRecord(ctx context.Context, tablename string, idfield string, key any, output Record) *Transaction { + if !isValidIdentifier(tablename) { + t.err = fmt.Errorf("Transaction.GetRecord: %w: table name '%s'", ErrInvalidIdentifier, tablename) + return t + } + if !isValidIdentifier(idfield) { + t.err = fmt.Errorf("Transaction.GetRecord: %w: id field '%s'", ErrInvalidIdentifier, idfield) + return t + } + + if t.err != nil { + return t + } + query := fmt.Sprintf("select * from \"%s\" where \"%s\" = ?;", tablename, idfield) // Quote identifiers + res, err := t.tx.QueryContext(ctx, query, key) + if err != nil { + t.err = err + return t + } + defer res.Close() + result, err := Rows2record(res) + if err != nil { + t.err = err + return t + } + for k := range output { + delete(output, k) + } + for k, v := range result { + output[k] = v + } + return t +} + +func (t *Transaction) UpsertRecord(ctx context.Context, tablename string, idfield string, record Record, output Record) *Transaction { + if !isValidIdentifier(tablename) { + t.err = fmt.Errorf("Transaction.UpsertRecord: %w: table name '%s'", ErrInvalidIdentifier, tablename) + return t + } + if !isValidIdentifier(idfield) { + t.err = fmt.Errorf("Transaction.UpsertRecord: %w: id field '%s'", ErrInvalidIdentifier, idfield) + return t + } + + if t.err != nil { + return t + } + result, err := upsert(ctx, t.tx, tablename, idfield, record) + if err != nil { + t.err = err + return t + } + for k := range output { + delete(output, k) + } + for k, v := range result { + output[k] = v + } + return t +} + +func (t *Transaction) DeleteRecord(ctx context.Context, tablename string, idfield string, id any) *Transaction { + // Validation will be done by the internal deleteRecord helper + // if !isValidIdentifier(tablename) { + // t.err = fmt.Errorf("Transaction.DeleteRecord: %w: table name '%s'", ErrInvalidIdentifier, tablename) + // return t + // } + // if !isValidIdentifier(idfield) { + // t.err = fmt.Errorf("Transaction.DeleteRecord: %w: id field '%s'", ErrInvalidIdentifier, idfield) + // return t + // } + + if t.err != nil { + return t + } + err := deleteRecord(ctx, t.tx, tablename, idfield, id) // t.tx satisfies iExecContext + if err != nil { + t.err = err + } + return t +} + +// returns a value of the provided type, if the field exist and if it can be cast into the provided type parameter +func Value[T any](rec Record, field string) (value T, ok bool) { + var v any + // No validation for 'field' here as it's used to access a map key from an existing Record, + // not to construct SQL. + if v, ok = rec[field]; ok { + value, ok = v.(T) + } + return +} + +// don't report an error if there are simply just 'no rows found' +func NoRowsOk(recs []Record, err error) ([]Record, error) { + if err != nil { + if errors.Is(err, sql.ErrNoRows) { + // Return an empty, non-nil slice and nil error to indicate "no rows found, but that's okay". + // This makes it safer for callers to immediately use len() or range over the result. + return []Record{}, nil + } + return recs, err + } + return recs, nil +} + +// isValidIdentifier checks if the given string is a safe identifier. +// Allows alphanumeric characters and underscores. Must not be empty. +func isValidIdentifier(identifier string) bool { + if len(identifier) == 0 { + return false + } + for _, r := range identifier { + if !((r >= 'a' && r <= 'z') || + (r >= 'A' && r <= 'Z') || + (r >= '0' && r <= '9') || + r == '_') { + return false + } + } + return true +}