diff --git a/requirements.txt b/requirements.txt index 28d440e..22eec3f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -32,4 +32,5 @@ websockets==13.1 pandas~=2.2.3 numpy~=2.1.1 -requests~=2.32.3 \ No newline at end of file +requests~=2.32.3 +mcp~=1.9.2 \ No newline at end of file diff --git a/src/ai/__init__.py b/src/ai/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/ai/debug_lmm.py b/src/ai/debug_lmm.py new file mode 100644 index 0000000..4d04aee --- /dev/null +++ b/src/ai/debug_lmm.py @@ -0,0 +1,51 @@ +import dataclasses +from dataclasses import field +from typing import Any + + +@dataclasses.dataclass +class DebugTool: + name: str + parameters: dict[str, Any] + result: Any = None + error: str = None + + +@dataclasses.dataclass +class DebugResponse: + extended_prompt: str + response: str = None + error_response: str = None + tools_requested: list[str] = None + tools_called: list[DebugTool] = None + + +@dataclasses.dataclass +class DebugRequestMetadata: + id: str + user_id: str + start_time: int + end_time: int + lmm_model: str + llm_mod: str + use_tools: bool + available_tools: list = None + + +@dataclasses.dataclass +class DebugRequest: + prompt: str + responses: list[DebugResponse] = field(default_factory=list) + metadata: DebugRequestMetadata = None + + + +@dataclasses.dataclass +class DebugConversation: + id: str + start_time: int + initial_prompt: str + requests: list[DebugRequest] = field(default_factory=list) + + def to_dict(self): + return dataclasses.asdict(self) \ No newline at end of file diff --git a/src/ai/mcp_client.py b/src/ai/mcp_client.py new file mode 100644 index 0000000..4d6dc0d --- /dev/null +++ b/src/ai/mcp_client.py @@ -0,0 +1,410 @@ +import json +import logging +from typing import Dict, Any, List + +import httpx + +from ai.debug_lmm import DebugRequest, DebugResponse, DebugTool +from ai.mcp_server import DummyMCPServer + +logger = logging.getLogger("MCPClient") + + +class InProcessMCPClientNativeTools: + """MCP Client that uses the MCP server directly in the same process""" + + ID = "Native Tools" + + def __init__(self, session, settings_manager, ollama_host: str): + self.mcp_server = DummyMCPServer(session, settings_manager) + self.ollama_host = ollama_host + self.available_tools = self.mcp_server.list_tools() + self.system_prompt_1 = ( + "Tu es un assistant intelligent qui simplifie l'utilisation de l'application 'My Managing Tools'. " + "Tu va recevoir des rêquetes sur l'état actuel de l'application, comme la liste des 'repositories' ou la liste des 'tables'." + "Tu devras répondre avec une réponse simple et concise, si possible en une seule phrase. Tu ne dois pas indiquer comment obtenir la réponse. " + "Tu devras juste donner la réponse.") + self.system_prompt_2 = ("You are a helpful AI assistant that provides accurate and concise answers" + " based on the provided context. Do not respond in a long form. Do not hallucinate." + "If you don't know the answer, just say that you don't know.") + + self.conversation_history = [ + {"role": "system", "content": self.system_prompt_1} + ] + + async def generate_with_mcp_context(self, prompt: str, use_tools: bool = True) -> str: + """Generate a response using native function calls""" + + logger.debug(f"Calling LLM with prompt: {prompt}") + self.conversation_history.append({"role": "user", "content": prompt}) + + if use_tools and self.available_tools: + logger.debug(f" Using tools: {self.available_tools.keys()}") + tools = self._format_tools_for_mistral() + response = await self._call_ollama_with_tools(prompt, tools) + logger.debug(f" LLM response: {response}") + + # Process tool calls if present + if "message" in response and "tool_calls" in response['message']: + tool_calls = response['message']["tool_calls"] + logger.debug(f" LLM requested tools: {[tool["function"]["name"] for tool in tool_calls]}") + + tool_results = [] + for tool_call in tool_calls: + result = await self.mcp_server.call_tool(tool_call["function"]["name"], + tool_call["function"]["arguments"]) + tool_results.append(result) + + logger.debug(f" MCP server tools calls: {tool_results}") + + # Generate final response with tool results + final_response = await self._call_ollama_with_tool_results(prompt, + tools, + tool_calls, + tool_results) + logger.debug(f" LLM Final result: {final_response}") + final_response_text = final_response.get("message", {}).get("content", "") + + else: + # no tool requested, just return the response + final_response_text = response.get("message", {}).get("content", "") + + else: + logger.debug(f" Not using tools {use_tools=}, available_tools={self.available_tools.keys()}") + response = await self._call_ollama_simple(prompt) + logger.debug(f" LLM response: {response}") + final_response_text = response.get("message", {}).get("content", "") + + self.conversation_history.append({"role": "assistant", "content": final_response_text}) + return final_response_text + + def _format_tools_for_mistral(self) -> List[Dict[str, Any]]: + """Format MCP tools for Mistral's function calling API""" + tools = [] + for tool_name, tool_info in self.available_tools.items(): + tool_schema = { + "type": "function", + "function": { + "name": tool_name, + "description": tool_info["description"], + "parameters": { + "type": "object", + "properties": {}, # added later + "required": [] + } + } + } + + # Add parameters + schema_parameters = tool_schema["function"]["parameters"] + for param_name, param_info in tool_info["parameters"].items(): + schema_parameters["properties"][param_name] = { + "type": param_info.get("type", "string"), + "description": param_info.get("description", f"Parameter {param_name}") + } + schema_parameters["required"].append(param_name) + + tools.append(tool_schema) + + return tools + + async def _call_ollama_with_tools(self, prompt: str, tools: List[Dict[str, Any]]) -> Dict[str, Any]: + """Call Ollama with function calls support""" + async with httpx.AsyncClient(timeout=30.0) as client: + response = await client.post( + f"{self.ollama_host}/api/chat", + json={ + "model": "mistral", + "messages": [ + {"role": "system", "content": self.system_prompt_1}, + {"role": "user", "content": prompt} + ], + "tools": tools, + "stream": False, + "options": { + "temperature": 0.0 + } + + } + ) + + if response.status_code == 200: + return response.json() + else: + raise Exception(f"Ollama error: {response.status_code}") + + async def _call_ollama_with_tool_results(self, + original_prompt: str, + tools: List[Dict[str, Any]], + tool_calls: List[Dict[str, Any]], + tool_results: List[Dict[str, Any]]) -> Dict[str, Any]: + """Call Ollama with function call results""" + messages = [ + {"role": "system", "content": self.system_prompt_2}, + {"role": "user", "content": original_prompt}, + {"role": "assistant", "tool_calls": tool_calls} + ] + + # Add tool results + for i, (tool_call, result) in enumerate(zip(tool_calls, tool_results)): + messages.append({ + "role": "tool", + "tool_call_id": tool_call.get("id", f"call_{i}"), + "content": json.dumps(result) + }) + + async with httpx.AsyncClient(timeout=30.0) as client: + response = await client.post( + f"{self.ollama_host}/api/chat", + json={ + "model": "mistral", + "messages": messages, + "tools": tools, + "stream": False, + "options": { + "temperature": 0.0 + } + } + ) + + if response.status_code == 200: + return response.json() + else: + raise Exception(f"Ollama error: {response.status_code}") + + async def _call_ollama_simple(self, prompt: str) -> Dict[str, Any]: + """Call Ollama for simple generation without tools""" + async with httpx.AsyncClient(timeout=30.0) as client: + response = await client.post( + f"{self.ollama_host}/api/chat", + json={ + "model": "mistral", + "messages": [ + {"role": "system", "content": self.system_prompt_2}, + {"role": "user", "content": prompt} + ], + "stream": False + } + ) + + if response.status_code == 200: + return response.json() + else: + raise Exception(f"Ollama error: {response.status_code}") + + +class InProcessMCPClientCustomTools: + """MCP Client that uses the MCP server directly in the same process""" + + ID = "Custom Tools" + + def __init__(self, session, settings_manager, ollama_host: str, model: str = "mistral"): + self.mcp_server = DummyMCPServer(session, settings_manager) + self.ollama_host = ollama_host + self.model = model + self.available_tools = self.mcp_server.list_tools() + self.max_tool_iterations = 5 # Prevent infinite loops + + async def generate_with_mcp_context(self, debug: DebugRequest, prompt: str, use_tools: bool = True) -> str: + """Generate response with the LLM potentially using MCP tools""" + + # Enhance prompt with available tools if requested + if use_tools and self.available_tools: + logger.debug(f"Using tools: {list(self.available_tools.keys())}") + debug.available_tools = list(self.available_tools.keys()) + + tools_description = self._format_tools_for_prompt() + enhanced_prompt = f""" +{prompt} + +You have access to the following tools: +{tools_description} + +If you need to use tools, you can use multiple tools in sequence. For each tool, respond with JSON format only: +{{"use_tool": true, "tool_name": "tool_name", "arguments": {{"param": "value"}}}} + +You can chain multiple tool calls by putting each JSON on a separate line. For example: +{{"use_tool": true, "tool_name": "first_tool", "arguments": {{}}}} +{{"use_tool": true, "tool_name": "second_tool", "arguments": {{"param": "value_from_first_tool"}}}} + +When you're done with tools, provide your final answer normally (not in JSON format). +""" + else: + logger.debug(f"Not using tools {use_tools=}, available_tools={list(self.available_tools.keys())}") + enhanced_prompt = prompt + + debug.enhanced_prompt = enhanced_prompt + + # Execute tool chain + if use_tools: + return await self._execute_tool_chain(debug, enhanced_prompt, prompt) + else: + debug_response = DebugResponse(enhanced_prompt) + debug.responses.append(debug_response) + return await self._call_ollama(debug_response, enhanced_prompt) + + async def _execute_tool_chain(self, debug: DebugRequest, enhanced_prompt: str, original_prompt: str) -> str: + """Execute a chain of tool calls until completion""" + current_prompt = enhanced_prompt + tool_results = [] + iteration = 0 + + while iteration < self.max_tool_iterations: + logger.debug(f"Tool chain iteration {iteration}") + + debug_response = DebugResponse(current_prompt) + debug.responses.append(debug_response) + + # Call LLM + llm_response = await self._call_ollama(debug_response, current_prompt) + + # Parse all tool requests from the response + tool_requests = self._parse_multiple_tool_requests(llm_response) + logger.debug(f"Tools requested : {[t["tool_name"] for t in tool_requests]}") + debug_response.tools_requested = [t["tool_name"] for t in tool_requests] + + if not tool_requests: + # No more tools requested, this is the final response + return llm_response + + # Execute all requested tools + current_results = [] + debug_response.tools_called = [] + for tool_request in tool_requests: + if tool_request["tool_name"] not in self.available_tools: + logger.warning(f"Requested tool not available: {tool_request['tool_name']}") + error_msg = f"Sorry, the requested tool '{tool_request['tool_name']}' is not available." + debug_response.error_response = error_msg + return error_msg + + tool_name = tool_request["tool_name"] + tool_args = tool_request.get("arguments", {}) + + debug_tool = DebugTool(tool_name, tool_args) + debug_response.tools_called.append(debug_tool) + + try: + tool_result = await self.mcp_server.call_tool(tool_name, tool_args) + + current_results.append({"tool_name": tool_name, "arguments": tool_args, "result": tool_result}) + debug_tool.result = tool_result + + logger.debug(f"Tool {tool_request['tool_name']} executed successfully with result={tool_result}") + except Exception as e: + error_msg = f"Tool execution failed: {e}" + logger.error(error_msg) + debug_tool.error = error_msg + return f"Sorry, there was an error executing the tool {tool_request['tool_name']}: {str(e)}" + + tool_results.extend(current_results) + + # Prepare prompt for next iteration + current_prompt = self._build_continuation_prompt(original_prompt, tool_results) + + iteration += 1 + + # Max iterations reached, generate final response + logger.warning(f"Max tool iterations ({self.max_tool_iterations}) reached") + final_prompt = self._build_final_prompt(original_prompt, tool_results) + return await self._call_ollama(final_prompt) + + def _parse_multiple_tool_requests(self, response: str) -> List[Dict[str, Any]]: + """Parse LLM response to detect multiple tool requests""" + tool_requests = [] + + try: + # Look for JSON in each line + for line in response.strip().split('\n'): + line = line.strip() + if line.startswith('{') and line.endswith('}'): + try: + parsed = json.loads(line) + if parsed.get("use_tool") and "tool_name" in parsed: + tool_requests.append(parsed) + except json.JSONDecodeError: + continue + except Exception as e: + logger.debug(f"Error parsing tool requests: {e}") + + return tool_requests + + def _build_continuation_prompt(self, original_prompt: str, tool_results: List[Dict]) -> str: + """Build prompt for continuing the tool chain""" + results_text = "" + for result in tool_results: + results_text += f"\nTool: {result['tool_name']} with arguments {result['arguments']}\nResult: {result['result']}\n" + + tools_description = self._format_tools_for_prompt() + + return f""" +Original question: {original_prompt} + +Previous tool results:{results_text} + +Give the final result. It must be concise, with no explanation. A simple sentence is preferred. +""" + + def _build_final_prompt(self, original_prompt: str, tool_results: List[Dict]) -> str: + """Build prompt for final response generation""" + results_text = "" + for result in tool_results: + results_text += f"\nTool: {result['tool_name']} - Result: {result['result']}" + + return f""" +Original question: {original_prompt} +Tool results used:{results_text} + +Generate a concise final response based on this information. +Make it as short as possible. Do not mention the tools used, only the final result. One or two sentences preferred. +""" + + async def _call_ollama(self, debug_response: DebugResponse, prompt: str) -> str: + """Call Ollama to generate a response""" + logger.debug(f"LLM Request {prompt=}") + + try: + async with httpx.AsyncClient(timeout=30.0) as client: + response = await client.post( + f"{self.ollama_host}/api/generate", + json={ + "model": self.model, + "prompt": prompt, + "stream": False, + "options": {"temperature": 0.0} + } + ) + response.raise_for_status() + result = response.json() + logger.debug(f"LLM Response {result=}") + + llm_response = result.get("response", "") + debug_response.response = llm_response # Store the LLM response in the debug object + + return llm_response + except httpx.TimeoutException: + error_msg = "Ollama request timeout" + logger.error(error_msg) + debug_response.error_response = error_msg + raise Exception(error_msg) + except httpx.HTTPStatusError as e: + error_msg = f"Ollama HTTP error: {e.response.status_code}" + logger.error(error_msg) + debug_response.error_response = error_msg + raise Exception(error_msg) + except Exception as e: + error_msg = f"Unexpected Ollama error: {e}" + logger.error(error_msg) + debug_response.error_response = error_msg + raise + + + def _format_tools_for_prompt(self) -> str: + """Format available tools for the prompt""" + tools_list = [] + for tool_name, tool_info in self.available_tools.items(): + params_desc = ", ".join([f"{k}: {v.get('description', k)}" for k, v in tool_info['parameters'].items()]) + tools_list.append(f"- {tool_name}: {tool_info['description']} (params: {params_desc})") + return "\n".join(tools_list) + + +MPC_CLIENTS_IDS = [InProcessMCPClientNativeTools.ID, InProcessMCPClientCustomTools.ID] \ No newline at end of file diff --git a/src/ai/mcp_server.py b/src/ai/mcp_server.py new file mode 100644 index 0000000..1735b6e --- /dev/null +++ b/src/ai/mcp_server.py @@ -0,0 +1,190 @@ +# Configuration MCP +import inspect +import logging +from typing import Dict, Any, Callable + +from components.repositories.components.Repositories import Repositories +from core.instance_manager import InstanceManager + +logger = logging.getLogger("MCPServer") + + +class DummyMCPServer: + def __init__(self, session, settings_manager): + self._session = session + self._settings_manager = settings_manager # will be needed to get info from the db + self.available_tools = {} + self.register_tool("get_current_time", self.get_current_time, "get the current time") + self.register_tool("list_repositories", self.list_repositories, "return the list of available repositories") + self.register_tool("list_tables", self.list_tables, "return the list of tables, for a given repository") + + def list_tools(self): + return self.available_tools + + async def call_tool(self, tool_name: str, arguments: Dict[str, Any]) -> Dict[str, Any]: + logger.debug(f"Calling tool {tool_name} with {arguments=}") + if tool_name not in self.available_tools: + return { + "success": False, + "error": f"Tool '{tool_name}' not found", + "tool_name": tool_name + } + + try: + tool_info = self.available_tools[tool_name] + handler_func = tool_info["handler"] + + arguments = self._validate_arguments(arguments, tool_info) + logger.debug(f" validated arguments {arguments=}") + + # Call handler function directly + if inspect.iscoroutinefunction(handler_func): + result = await handler_func(**arguments) + else: + result = handler_func(**arguments) + + logger.debug(f" {result=}") + return { + "success": True, + "result": result, + "tool_name": tool_name + } + except Exception as e: + logger.error(f" error : {e}") + return { + "success": False, + "error": str(e), + "tool_name": tool_name + } + + def register_tool(self, name: str, handler: Callable, description: str = None): + """Register a tool directly with the client""" + if description is None: + description = f"Tool {name}" + + # Extract function signature + sig = inspect.signature(handler) + params = {} + + # Extract docstring to get parameter descriptions + docstring = inspect.getdoc(handler) or "" + param_docs = {} + + # Simple docstring parser for parameters + # Looking for patterns like ":param param_name: Description" or "Args: param_name: Description" + lines = docstring.split('\n') + in_params_section = False + + for line in lines: + line = line.strip() + # Check for sphinx-style param docs + if line.startswith(':param '): + parts = line[7:].split(':', 1) + if len(parts) == 2: + param_name = parts[0].strip() + param_docs[param_name] = parts[1].strip() + # Check for Google-style docstrings + elif line.lower() == 'args:' or line.lower() == 'parameters:': + in_params_section = True + elif in_params_section: + if not line or line.startswith('Returns') or line.startswith('Raises'): + in_params_section = False + else: + parts = line.split(':', 1) + if len(parts) == 2: + param_name = parts[0].strip() + param_docs[param_name] = parts[1].strip() + + for param_name, param in sig.parameters.items(): + param_type = "string" + # Use docstring description if available, otherwise use a default + param_desc = param_docs.get(param_name, f"Parameter {param_name}") + + # Try to infer type from annotation + if param.annotation != inspect.Parameter.empty: + if param.annotation == int: + param_type = "integer" + elif param.annotation == float: + param_type = "number" + elif param.annotation == bool: + param_type = "boolean" + elif param.annotation == str: + param_type = "string" + + params[param_name] = { + "type": param_type, + "description": param_desc + } + + self.available_tools[name] = { + "name": name, + "handler": handler, + "parameters": params, + "description": description + } + + logger.debug(f"Registered tool {name}, {params=}, {description=}") + return self # For chaining + + @staticmethod + def _validate_arguments(arguments: Dict[str, Any], tool_info: Dict[str, Any]) -> Dict[str, Any]: + """Validate arguments against the tool signature""" + + return {p_name: p_type for p_name, p_type in arguments.items() if p_name in tool_info["parameters"]} + + # ************************************** + # PREDEFINED FUNCTIONS + # ************************************** + @staticmethod + async def get_current_time(format: str = "iso") -> str: + """ + Gets the current time in the specified format. This method provides two format + options: ISO 8601 format or a more human-readable format. By default, it returns + ISO 8601 format, and the function is designed to handle asynchronous execution. + + :param format: The format in which to return the current time. + Acceptable values are: + - "iso" for ISO 8601 format (default) + - "human" for a human-readable format (e.g., 'YYYY-MM-DD HH:MM:SS') + :return: The current time formatted as a string based on the specified input. + :rtype: str + """ + import datetime + now = datetime.datetime.now() + if format == "iso": + return now.isoformat() + elif format == "human": + return now.strftime("%Y-%m-%d %H:%M:%S") + else: + return str(now) + + async def list_repositories(self): + """ + Retrieves a list of repository names. + + This method interacts with the repository manager to fetch all available + repositories and returns their names in a list. + + :return: A list of repository names. + :rtype: list[str] + """ + repository_instance = InstanceManager.get(self._session, Repositories.create_component_id(self._session)) + return [repo.name for repo in repository_instance.db.get_repositories()] + + async def list_tables(self, repository_name: str): + """ + Retrieves a list of tables from the specified repository. + + This function interacts with the database repository + configured for the provided repository name, fetching and returning + a list of tables contained within that repository. + + :param repository_name: The name of the repository from which to retrieve + the list of tables. + :type repository_name: str + :return: A list of tables from the specified repository. + :rtype: list + """ + repository_instance = InstanceManager.get(self._session, Repositories.create_component_id(self._session)) + repo = repository_instance.db.get_repository(repository_name) + return repo.tables diff --git a/src/ai/mcp_tools.py b/src/ai/mcp_tools.py new file mode 100644 index 0000000..9d40cd4 --- /dev/null +++ b/src/ai/mcp_tools.py @@ -0,0 +1,10 @@ +import logging + +logger = logging.getLogger("MCPServerTools") + + +class MCPServerTools: + + @staticmethod + def list_tools(): + return ["get_current_time", "list_repositories", "list_tables"] diff --git a/src/assets/daisyui-5-themes.css b/src/assets/daisyui-5-themes.css new file mode 100644 index 0000000..e168157 --- /dev/null +++ b/src/assets/daisyui-5-themes.css @@ -0,0 +1 @@ +/*! 🌼 daisyUI 5.0.42 - MIT License */ :root,:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=cupcake]:checked),[data-theme=cupcake]{color-scheme:light;--color-base-100:oklch(97.788% .004 56.375);--color-base-200:oklch(93.982% .007 61.449);--color-base-300:oklch(91.586% .006 53.44);--color-base-content:oklch(23.574% .066 313.189);--color-primary:oklch(85% .138 181.071);--color-primary-content:oklch(43% .078 188.216);--color-secondary:oklch(89% .061 343.231);--color-secondary-content:oklch(45% .187 3.815);--color-accent:oklch(90% .076 70.697);--color-accent-content:oklch(47% .157 37.304);--color-neutral:oklch(27% .006 286.033);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(68% .169 237.323);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(69% .17 162.48);--color-success-content:oklch(26% .051 172.552);--color-warning:oklch(79% .184 86.047);--color-warning-content:oklch(28% .066 53.813);--color-error:oklch(64% .246 16.439);--color-error-content:oklch(27% .105 12.094);--radius-selector:1rem;--radius-field:2rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:2px;--depth:1;--noise:0}:root:has(input.theme-controller[value=bumblebee]:checked),[data-theme=bumblebee]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(97% 0 0);--color-base-300:oklch(92% 0 0);--color-base-content:oklch(20% 0 0);--color-primary:oklch(85% .199 91.936);--color-primary-content:oklch(42% .095 57.708);--color-secondary:oklch(75% .183 55.934);--color-secondary-content:oklch(40% .123 38.172);--color-accent:oklch(0% 0 0);--color-accent-content:oklch(100% 0 0);--color-neutral:oklch(37% .01 67.558);--color-neutral-content:oklch(92% .003 48.717);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(39% .09 240.876);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(70% .191 22.216);--color-error-content:oklch(39% .141 25.723);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=emerald]:checked),[data-theme=emerald]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(93% 0 0);--color-base-300:oklch(86% 0 0);--color-base-content:oklch(35.519% .032 262.988);--color-primary:oklch(76.662% .135 153.45);--color-primary-content:oklch(33.387% .04 162.24);--color-secondary:oklch(61.302% .202 261.294);--color-secondary-content:oklch(100% 0 0);--color-accent:oklch(72.772% .149 33.2);--color-accent-content:oklch(0% 0 0);--color-neutral:oklch(35.519% .032 262.988);--color-neutral-content:oklch(98.462% .001 247.838);--color-info:oklch(72.06% .191 231.6);--color-info-content:oklch(0% 0 0);--color-success:oklch(64.8% .15 160);--color-success-content:oklch(0% 0 0);--color-warning:oklch(84.71% .199 83.87);--color-warning-content:oklch(0% 0 0);--color-error:oklch(71.76% .221 22.18);--color-error-content:oklch(0% 0 0);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=corporate]:checked),[data-theme=corporate]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(93% 0 0);--color-base-300:oklch(86% 0 0);--color-base-content:oklch(22.389% .031 278.072);--color-primary:oklch(58% .158 241.966);--color-primary-content:oklch(100% 0 0);--color-secondary:oklch(55% .046 257.417);--color-secondary-content:oklch(100% 0 0);--color-accent:oklch(60% .118 184.704);--color-accent-content:oklch(100% 0 0);--color-neutral:oklch(0% 0 0);--color-neutral-content:oklch(100% 0 0);--color-info:oklch(60% .126 221.723);--color-info-content:oklch(100% 0 0);--color-success:oklch(62% .194 149.214);--color-success-content:oklch(100% 0 0);--color-warning:oklch(85% .199 91.936);--color-warning-content:oklch(0% 0 0);--color-error:oklch(70% .191 22.216);--color-error-content:oklch(0% 0 0);--radius-selector:.25rem;--radius-field:.25rem;--radius-box:.25rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=synthwave]:checked),[data-theme=synthwave]{color-scheme:dark;--color-base-100:oklch(15% .09 281.288);--color-base-200:oklch(20% .09 281.288);--color-base-300:oklch(25% .09 281.288);--color-base-content:oklch(78% .115 274.713);--color-primary:oklch(71% .202 349.761);--color-primary-content:oklch(28% .109 3.907);--color-secondary:oklch(82% .111 230.318);--color-secondary-content:oklch(29% .066 243.157);--color-accent:oklch(75% .183 55.934);--color-accent-content:oklch(26% .079 36.259);--color-neutral:oklch(45% .24 277.023);--color-neutral-content:oklch(87% .065 274.039);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(77% .152 181.912);--color-success-content:oklch(27% .046 192.524);--color-warning:oklch(90% .182 98.111);--color-warning-content:oklch(42% .095 57.708);--color-error:oklch(73.7% .121 32.639);--color-error-content:oklch(23.501% .096 290.329);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=retro]:checked),[data-theme=retro]{color-scheme:light;--color-base-100:oklch(91.637% .034 90.515);--color-base-200:oklch(88.272% .049 91.774);--color-base-300:oklch(84.133% .065 90.856);--color-base-content:oklch(41% .112 45.904);--color-primary:oklch(80% .114 19.571);--color-primary-content:oklch(39% .141 25.723);--color-secondary:oklch(92% .084 155.995);--color-secondary-content:oklch(44% .119 151.328);--color-accent:oklch(68% .162 75.834);--color-accent-content:oklch(41% .112 45.904);--color-neutral:oklch(44% .011 73.639);--color-neutral-content:oklch(86% .005 56.366);--color-info:oklch(58% .158 241.966);--color-info-content:oklch(96% .059 95.617);--color-success:oklch(51% .096 186.391);--color-success-content:oklch(96% .059 95.617);--color-warning:oklch(64% .222 41.116);--color-warning-content:oklch(96% .059 95.617);--color-error:oklch(70% .191 22.216);--color-error-content:oklch(40% .123 38.172);--radius-selector:.25rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=cyberpunk]:checked),[data-theme=cyberpunk]{color-scheme:light;--color-base-100:oklch(94.51% .179 104.32);--color-base-200:oklch(91.51% .179 104.32);--color-base-300:oklch(85.51% .179 104.32);--color-base-content:oklch(0% 0 0);--color-primary:oklch(74.22% .209 6.35);--color-primary-content:oklch(14.844% .041 6.35);--color-secondary:oklch(83.33% .184 204.72);--color-secondary-content:oklch(16.666% .036 204.72);--color-accent:oklch(71.86% .217 310.43);--color-accent-content:oklch(14.372% .043 310.43);--color-neutral:oklch(23.04% .065 269.31);--color-neutral-content:oklch(94.51% .179 104.32);--color-info:oklch(72.06% .191 231.6);--color-info-content:oklch(0% 0 0);--color-success:oklch(64.8% .15 160);--color-success-content:oklch(0% 0 0);--color-warning:oklch(84.71% .199 83.87);--color-warning-content:oklch(0% 0 0);--color-error:oklch(71.76% .221 22.18);--color-error-content:oklch(0% 0 0);--radius-selector:0rem;--radius-field:0rem;--radius-box:0rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=valentine]:checked),[data-theme=valentine]{color-scheme:light;--color-base-100:oklch(97% .014 343.198);--color-base-200:oklch(94% .028 342.258);--color-base-300:oklch(89% .061 343.231);--color-base-content:oklch(52% .223 3.958);--color-primary:oklch(65% .241 354.308);--color-primary-content:oklch(100% 0 0);--color-secondary:oklch(62% .265 303.9);--color-secondary-content:oklch(97% .014 308.299);--color-accent:oklch(82% .111 230.318);--color-accent-content:oklch(39% .09 240.876);--color-neutral:oklch(40% .153 2.432);--color-neutral-content:oklch(89% .061 343.231);--color-info:oklch(86% .127 207.078);--color-info-content:oklch(44% .11 240.79);--color-success:oklch(84% .143 164.978);--color-success-content:oklch(43% .095 166.913);--color-warning:oklch(75% .183 55.934);--color-warning-content:oklch(26% .079 36.259);--color-error:oklch(63% .237 25.331);--color-error-content:oklch(97% .013 17.38);--radius-selector:1rem;--radius-field:2rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=halloween]:checked),[data-theme=halloween]{color-scheme:dark;--color-base-100:oklch(21% .006 56.043);--color-base-200:oklch(14% .004 49.25);--color-base-300:oklch(0% 0 0);--color-base-content:oklch(84.955% 0 0);--color-primary:oklch(77.48% .204 60.62);--color-primary-content:oklch(19.693% .004 196.779);--color-secondary:oklch(45.98% .248 305.03);--color-secondary-content:oklch(89.196% .049 305.03);--color-accent:oklch(64.8% .223 136.073);--color-accent-content:oklch(0% 0 0);--color-neutral:oklch(24.371% .046 65.681);--color-neutral-content:oklch(84.874% .009 65.681);--color-info:oklch(54.615% .215 262.88);--color-info-content:oklch(90.923% .043 262.88);--color-success:oklch(62.705% .169 149.213);--color-success-content:oklch(12.541% .033 149.213);--color-warning:oklch(66.584% .157 58.318);--color-warning-content:oklch(13.316% .031 58.318);--color-error:oklch(65.72% .199 27.33);--color-error-content:oklch(13.144% .039 27.33);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=garden]:checked),[data-theme=garden]{color-scheme:light;--color-base-100:oklch(92.951% .002 17.197);--color-base-200:oklch(86.445% .002 17.197);--color-base-300:oklch(79.938% .001 17.197);--color-base-content:oklch(16.961% .001 17.32);--color-primary:oklch(62.45% .278 3.836);--color-primary-content:oklch(100% 0 0);--color-secondary:oklch(48.495% .11 355.095);--color-secondary-content:oklch(89.699% .022 355.095);--color-accent:oklch(56.273% .054 154.39);--color-accent-content:oklch(100% 0 0);--color-neutral:oklch(24.155% .049 89.07);--color-neutral-content:oklch(92.951% .002 17.197);--color-info:oklch(72.06% .191 231.6);--color-info-content:oklch(0% 0 0);--color-success:oklch(64.8% .15 160);--color-success-content:oklch(0% 0 0);--color-warning:oklch(84.71% .199 83.87);--color-warning-content:oklch(0% 0 0);--color-error:oklch(71.76% .221 22.18);--color-error-content:oklch(0% 0 0);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=forest]:checked),[data-theme=forest]{color-scheme:dark;--color-base-100:oklch(20.84% .008 17.911);--color-base-200:oklch(18.522% .007 17.911);--color-base-300:oklch(16.203% .007 17.911);--color-base-content:oklch(83.768% .001 17.911);--color-primary:oklch(68.628% .185 148.958);--color-primary-content:oklch(0% 0 0);--color-secondary:oklch(69.776% .135 168.327);--color-secondary-content:oklch(13.955% .027 168.327);--color-accent:oklch(70.628% .119 185.713);--color-accent-content:oklch(14.125% .023 185.713);--color-neutral:oklch(30.698% .039 171.364);--color-neutral-content:oklch(86.139% .007 171.364);--color-info:oklch(72.06% .191 231.6);--color-info-content:oklch(0% 0 0);--color-success:oklch(64.8% .15 160);--color-success-content:oklch(0% 0 0);--color-warning:oklch(84.71% .199 83.87);--color-warning-content:oklch(0% 0 0);--color-error:oklch(71.76% .221 22.18);--color-error-content:oklch(0% 0 0);--radius-selector:1rem;--radius-field:2rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=aqua]:checked),[data-theme=aqua]{color-scheme:dark;--color-base-100:oklch(37% .146 265.522);--color-base-200:oklch(28% .091 267.935);--color-base-300:oklch(22% .091 267.935);--color-base-content:oklch(90% .058 230.902);--color-primary:oklch(85.661% .144 198.645);--color-primary-content:oklch(40.124% .068 197.603);--color-secondary:oklch(60.682% .108 309.782);--color-secondary-content:oklch(96% .016 293.756);--color-accent:oklch(93.426% .102 94.555);--color-accent-content:oklch(18.685% .02 94.555);--color-neutral:oklch(27% .146 265.522);--color-neutral-content:oklch(80% .146 265.522);--color-info:oklch(54.615% .215 262.88);--color-info-content:oklch(90.923% .043 262.88);--color-success:oklch(62.705% .169 149.213);--color-success-content:oklch(12.541% .033 149.213);--color-warning:oklch(66.584% .157 58.318);--color-warning-content:oklch(27% .077 45.635);--color-error:oklch(73.95% .19 27.33);--color-error-content:oklch(14.79% .038 27.33);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=lofi]:checked),[data-theme=lofi]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(97% 0 0);--color-base-300:oklch(94% 0 0);--color-base-content:oklch(0% 0 0);--color-primary:oklch(15.906% 0 0);--color-primary-content:oklch(100% 0 0);--color-secondary:oklch(21.455% .001 17.278);--color-secondary-content:oklch(100% 0 0);--color-accent:oklch(26.861% 0 0);--color-accent-content:oklch(100% 0 0);--color-neutral:oklch(0% 0 0);--color-neutral-content:oklch(100% 0 0);--color-info:oklch(79.54% .103 205.9);--color-info-content:oklch(15.908% .02 205.9);--color-success:oklch(90.13% .153 164.14);--color-success-content:oklch(18.026% .03 164.14);--color-warning:oklch(88.37% .135 79.94);--color-warning-content:oklch(17.674% .027 79.94);--color-error:oklch(78.66% .15 28.47);--color-error-content:oklch(15.732% .03 28.47);--radius-selector:2rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=pastel]:checked),[data-theme=pastel]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98.462% .001 247.838);--color-base-300:oklch(92.462% .001 247.838);--color-base-content:oklch(20% 0 0);--color-primary:oklch(90% .063 306.703);--color-primary-content:oklch(49% .265 301.924);--color-secondary:oklch(89% .058 10.001);--color-secondary-content:oklch(51% .222 16.935);--color-accent:oklch(90% .093 164.15);--color-accent-content:oklch(50% .118 165.612);--color-neutral:oklch(55% .046 257.417);--color-neutral-content:oklch(92% .013 255.508);--color-info:oklch(86% .127 207.078);--color-info-content:oklch(52% .105 223.128);--color-success:oklch(87% .15 154.449);--color-success-content:oklch(52% .154 150.069);--color-warning:oklch(83% .128 66.29);--color-warning-content:oklch(55% .195 38.402);--color-error:oklch(80% .114 19.571);--color-error-content:oklch(50% .213 27.518);--radius-selector:1rem;--radius-field:2rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:2px;--depth:0;--noise:0}:root:has(input.theme-controller[value=fantasy]:checked),[data-theme=fantasy]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(93% 0 0);--color-base-300:oklch(86% 0 0);--color-base-content:oklch(27.807% .029 256.847);--color-primary:oklch(37.45% .189 325.02);--color-primary-content:oklch(87.49% .037 325.02);--color-secondary:oklch(53.92% .162 241.36);--color-secondary-content:oklch(90.784% .032 241.36);--color-accent:oklch(75.98% .204 56.72);--color-accent-content:oklch(15.196% .04 56.72);--color-neutral:oklch(27.807% .029 256.847);--color-neutral-content:oklch(85.561% .005 256.847);--color-info:oklch(72.06% .191 231.6);--color-info-content:oklch(0% 0 0);--color-success:oklch(64.8% .15 160);--color-success-content:oklch(0% 0 0);--color-warning:oklch(84.71% .199 83.87);--color-warning-content:oklch(0% 0 0);--color-error:oklch(71.76% .221 22.18);--color-error-content:oklch(0% 0 0);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=wireframe]:checked),[data-theme=wireframe]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(97% 0 0);--color-base-300:oklch(94% 0 0);--color-base-content:oklch(20% 0 0);--color-primary:oklch(87% 0 0);--color-primary-content:oklch(26% 0 0);--color-secondary:oklch(87% 0 0);--color-secondary-content:oklch(26% 0 0);--color-accent:oklch(87% 0 0);--color-accent-content:oklch(26% 0 0);--color-neutral:oklch(87% 0 0);--color-neutral-content:oklch(26% 0 0);--color-info:oklch(44% .11 240.79);--color-info-content:oklch(90% .058 230.902);--color-success:oklch(43% .095 166.913);--color-success-content:oklch(90% .093 164.15);--color-warning:oklch(47% .137 46.201);--color-warning-content:oklch(92% .12 95.746);--color-error:oklch(44% .177 26.899);--color-error-content:oklch(88% .062 18.334);--radius-selector:0rem;--radius-field:.25rem;--radius-box:.25rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=black]:checked),[data-theme=black]{color-scheme:dark;--color-base-100:oklch(0% 0 0);--color-base-200:oklch(19% 0 0);--color-base-300:oklch(22% 0 0);--color-base-content:oklch(87.609% 0 0);--color-primary:oklch(35% 0 0);--color-primary-content:oklch(100% 0 0);--color-secondary:oklch(35% 0 0);--color-secondary-content:oklch(100% 0 0);--color-accent:oklch(35% 0 0);--color-accent-content:oklch(100% 0 0);--color-neutral:oklch(35% 0 0);--color-neutral-content:oklch(100% 0 0);--color-info:oklch(45.201% .313 264.052);--color-info-content:oklch(89.04% .062 264.052);--color-success:oklch(51.975% .176 142.495);--color-success-content:oklch(90.395% .035 142.495);--color-warning:oklch(96.798% .211 109.769);--color-warning-content:oklch(19.359% .042 109.769);--color-error:oklch(62.795% .257 29.233);--color-error-content:oklch(12.559% .051 29.233);--radius-selector:0rem;--radius-field:0rem;--radius-box:0rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=luxury]:checked),[data-theme=luxury]{color-scheme:dark;--color-base-100:oklch(14.076% .004 285.822);--color-base-200:oklch(20.219% .004 308.229);--color-base-300:oklch(23.219% .004 308.229);--color-base-content:oklch(75.687% .123 76.89);--color-primary:oklch(100% 0 0);--color-primary-content:oklch(20% 0 0);--color-secondary:oklch(27.581% .064 261.069);--color-secondary-content:oklch(85.516% .012 261.069);--color-accent:oklch(36.674% .051 338.825);--color-accent-content:oklch(87.334% .01 338.825);--color-neutral:oklch(24.27% .057 59.825);--color-neutral-content:oklch(93.203% .089 90.861);--color-info:oklch(79.061% .121 237.133);--color-info-content:oklch(15.812% .024 237.133);--color-success:oklch(78.119% .192 132.154);--color-success-content:oklch(15.623% .038 132.154);--color-warning:oklch(86.127% .136 102.891);--color-warning-content:oklch(17.225% .027 102.891);--color-error:oklch(71.753% .176 22.568);--color-error-content:oklch(14.35% .035 22.568);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=dracula]:checked),[data-theme=dracula]{color-scheme:dark;--color-base-100:oklch(28.822% .022 277.508);--color-base-200:oklch(26.805% .02 277.508);--color-base-300:oklch(24.787% .019 277.508);--color-base-content:oklch(97.747% .007 106.545);--color-primary:oklch(75.461% .183 346.812);--color-primary-content:oklch(15.092% .036 346.812);--color-secondary:oklch(74.202% .148 301.883);--color-secondary-content:oklch(14.84% .029 301.883);--color-accent:oklch(83.392% .124 66.558);--color-accent-content:oklch(16.678% .024 66.558);--color-neutral:oklch(39.445% .032 275.524);--color-neutral-content:oklch(87.889% .006 275.524);--color-info:oklch(88.263% .093 212.846);--color-info-content:oklch(17.652% .018 212.846);--color-success:oklch(87.099% .219 148.024);--color-success-content:oklch(17.419% .043 148.024);--color-warning:oklch(95.533% .134 112.757);--color-warning-content:oklch(19.106% .026 112.757);--color-error:oklch(68.22% .206 24.43);--color-error-content:oklch(13.644% .041 24.43);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=cmyk]:checked),[data-theme=cmyk]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(95% 0 0);--color-base-300:oklch(90% 0 0);--color-base-content:oklch(20% 0 0);--color-primary:oklch(71.772% .133 239.443);--color-primary-content:oklch(14.354% .026 239.443);--color-secondary:oklch(64.476% .202 359.339);--color-secondary-content:oklch(12.895% .04 359.339);--color-accent:oklch(94.228% .189 105.306);--color-accent-content:oklch(18.845% .037 105.306);--color-neutral:oklch(21.778% 0 0);--color-neutral-content:oklch(84.355% 0 0);--color-info:oklch(68.475% .094 217.284);--color-info-content:oklch(13.695% .018 217.284);--color-success:oklch(46.949% .162 321.406);--color-success-content:oklch(89.389% .032 321.406);--color-warning:oklch(71.236% .159 52.023);--color-warning-content:oklch(14.247% .031 52.023);--color-error:oklch(62.013% .208 28.717);--color-error-content:oklch(12.402% .041 28.717);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=autumn]:checked),[data-theme=autumn]{color-scheme:light;--color-base-100:oklch(95.814% 0 0);--color-base-200:oklch(89.107% 0 0);--color-base-300:oklch(82.4% 0 0);--color-base-content:oklch(19.162% 0 0);--color-primary:oklch(40.723% .161 17.53);--color-primary-content:oklch(88.144% .032 17.53);--color-secondary:oklch(61.676% .169 23.865);--color-secondary-content:oklch(12.335% .033 23.865);--color-accent:oklch(73.425% .094 60.729);--color-accent-content:oklch(14.685% .018 60.729);--color-neutral:oklch(54.367% .037 51.902);--color-neutral-content:oklch(90.873% .007 51.902);--color-info:oklch(69.224% .097 207.284);--color-info-content:oklch(13.844% .019 207.284);--color-success:oklch(60.995% .08 174.616);--color-success-content:oklch(12.199% .016 174.616);--color-warning:oklch(70.081% .164 56.844);--color-warning-content:oklch(14.016% .032 56.844);--color-error:oklch(53.07% .241 24.16);--color-error-content:oklch(90.614% .048 24.16);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=business]:checked),[data-theme=business]{color-scheme:dark;--color-base-100:oklch(24.353% 0 0);--color-base-200:oklch(22.648% 0 0);--color-base-300:oklch(20.944% 0 0);--color-base-content:oklch(84.87% 0 0);--color-primary:oklch(41.703% .099 251.473);--color-primary-content:oklch(88.34% .019 251.473);--color-secondary:oklch(64.092% .027 229.389);--color-secondary-content:oklch(12.818% .005 229.389);--color-accent:oklch(67.271% .167 35.791);--color-accent-content:oklch(13.454% .033 35.791);--color-neutral:oklch(27.441% .013 253.041);--color-neutral-content:oklch(85.488% .002 253.041);--color-info:oklch(62.616% .143 240.033);--color-info-content:oklch(12.523% .028 240.033);--color-success:oklch(70.226% .094 156.596);--color-success-content:oklch(14.045% .018 156.596);--color-warning:oklch(77.482% .115 81.519);--color-warning-content:oklch(15.496% .023 81.519);--color-error:oklch(51.61% .146 29.674);--color-error-content:oklch(90.322% .029 29.674);--radius-selector:0rem;--radius-field:.25rem;--radius-box:.25rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=acid]:checked),[data-theme=acid]{color-scheme:light;--color-base-100:oklch(98% 0 0);--color-base-200:oklch(95% 0 0);--color-base-300:oklch(91% 0 0);--color-base-content:oklch(0% 0 0);--color-primary:oklch(71.9% .357 330.759);--color-primary-content:oklch(14.38% .071 330.759);--color-secondary:oklch(73.37% .224 48.25);--color-secondary-content:oklch(14.674% .044 48.25);--color-accent:oklch(92.78% .264 122.962);--color-accent-content:oklch(18.556% .052 122.962);--color-neutral:oklch(21.31% .128 278.68);--color-neutral-content:oklch(84.262% .025 278.68);--color-info:oklch(60.72% .227 252.05);--color-info-content:oklch(12.144% .045 252.05);--color-success:oklch(85.72% .266 158.53);--color-success-content:oklch(17.144% .053 158.53);--color-warning:oklch(91.01% .212 100.5);--color-warning-content:oklch(18.202% .042 100.5);--color-error:oklch(64.84% .293 29.349);--color-error-content:oklch(12.968% .058 29.349);--radius-selector:1rem;--radius-field:1rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=lemonade]:checked),[data-theme=lemonade]{color-scheme:light;--color-base-100:oklch(98.71% .02 123.72);--color-base-200:oklch(91.8% .018 123.72);--color-base-300:oklch(84.89% .017 123.72);--color-base-content:oklch(19.742% .004 123.72);--color-primary:oklch(58.92% .199 134.6);--color-primary-content:oklch(11.784% .039 134.6);--color-secondary:oklch(77.75% .196 111.09);--color-secondary-content:oklch(15.55% .039 111.09);--color-accent:oklch(85.39% .201 100.73);--color-accent-content:oklch(17.078% .04 100.73);--color-neutral:oklch(30.98% .075 108.6);--color-neutral-content:oklch(86.196% .015 108.6);--color-info:oklch(86.19% .047 224.14);--color-info-content:oklch(17.238% .009 224.14);--color-success:oklch(86.19% .047 157.85);--color-success-content:oklch(17.238% .009 157.85);--color-warning:oklch(86.19% .047 102.15);--color-warning-content:oklch(17.238% .009 102.15);--color-error:oklch(86.19% .047 25.85);--color-error-content:oklch(17.238% .009 25.85);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=night]:checked),[data-theme=night]{color-scheme:dark;--color-base-100:oklch(20.768% .039 265.754);--color-base-200:oklch(19.314% .037 265.754);--color-base-300:oklch(17.86% .034 265.754);--color-base-content:oklch(84.153% .007 265.754);--color-primary:oklch(75.351% .138 232.661);--color-primary-content:oklch(15.07% .027 232.661);--color-secondary:oklch(68.011% .158 276.934);--color-secondary-content:oklch(13.602% .031 276.934);--color-accent:oklch(72.36% .176 350.048);--color-accent-content:oklch(14.472% .035 350.048);--color-neutral:oklch(27.949% .036 260.03);--color-neutral-content:oklch(85.589% .007 260.03);--color-info:oklch(68.455% .148 237.251);--color-info-content:oklch(0% 0 0);--color-success:oklch(78.452% .132 181.911);--color-success-content:oklch(15.69% .026 181.911);--color-warning:oklch(83.242% .139 82.95);--color-warning-content:oklch(16.648% .027 82.95);--color-error:oklch(71.785% .17 13.118);--color-error-content:oklch(14.357% .034 13.118);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=coffee]:checked),[data-theme=coffee]{color-scheme:dark;--color-base-100:oklch(24% .023 329.708);--color-base-200:oklch(21% .021 329.708);--color-base-300:oklch(16% .019 329.708);--color-base-content:oklch(72.354% .092 79.129);--color-primary:oklch(71.996% .123 62.756);--color-primary-content:oklch(14.399% .024 62.756);--color-secondary:oklch(34.465% .029 199.194);--color-secondary-content:oklch(86.893% .005 199.194);--color-accent:oklch(42.621% .074 224.389);--color-accent-content:oklch(88.524% .014 224.389);--color-neutral:oklch(16.51% .015 326.261);--color-neutral-content:oklch(83.302% .003 326.261);--color-info:oklch(79.49% .063 184.558);--color-info-content:oklch(15.898% .012 184.558);--color-success:oklch(74.722% .072 131.116);--color-success-content:oklch(14.944% .014 131.116);--color-warning:oklch(88.15% .14 87.722);--color-warning-content:oklch(17.63% .028 87.722);--color-error:oklch(77.318% .128 31.871);--color-error-content:oklch(15.463% .025 31.871);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=winter]:checked),[data-theme=winter]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(97.466% .011 259.822);--color-base-300:oklch(93.268% .016 262.751);--color-base-content:oklch(41.886% .053 255.824);--color-primary:oklch(56.86% .255 257.57);--color-primary-content:oklch(91.372% .051 257.57);--color-secondary:oklch(42.551% .161 282.339);--color-secondary-content:oklch(88.51% .032 282.339);--color-accent:oklch(59.939% .191 335.171);--color-accent-content:oklch(11.988% .038 335.171);--color-neutral:oklch(19.616% .063 257.651);--color-neutral-content:oklch(83.923% .012 257.651);--color-info:oklch(88.127% .085 214.515);--color-info-content:oklch(17.625% .017 214.515);--color-success:oklch(80.494% .077 197.823);--color-success-content:oklch(16.098% .015 197.823);--color-warning:oklch(89.172% .045 71.47);--color-warning-content:oklch(17.834% .009 71.47);--color-error:oklch(73.092% .11 20.076);--color-error-content:oklch(14.618% .022 20.076);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=dim]:checked),[data-theme=dim]{color-scheme:dark;--color-base-100:oklch(30.857% .023 264.149);--color-base-200:oklch(28.036% .019 264.182);--color-base-300:oklch(26.346% .018 262.177);--color-base-content:oklch(82.901% .031 222.959);--color-primary:oklch(86.133% .141 139.549);--color-primary-content:oklch(17.226% .028 139.549);--color-secondary:oklch(73.375% .165 35.353);--color-secondary-content:oklch(14.675% .033 35.353);--color-accent:oklch(74.229% .133 311.379);--color-accent-content:oklch(14.845% .026 311.379);--color-neutral:oklch(24.731% .02 264.094);--color-neutral-content:oklch(82.901% .031 222.959);--color-info:oklch(86.078% .142 206.182);--color-info-content:oklch(17.215% .028 206.182);--color-success:oklch(86.171% .142 166.534);--color-success-content:oklch(17.234% .028 166.534);--color-warning:oklch(86.163% .142 94.818);--color-warning-content:oklch(17.232% .028 94.818);--color-error:oklch(82.418% .099 33.756);--color-error-content:oklch(16.483% .019 33.756);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=nord]:checked),[data-theme=nord]{color-scheme:light;--color-base-100:oklch(95.127% .007 260.731);--color-base-200:oklch(93.299% .01 261.788);--color-base-300:oklch(89.925% .016 262.749);--color-base-content:oklch(32.437% .022 264.182);--color-primary:oklch(59.435% .077 254.027);--color-primary-content:oklch(11.887% .015 254.027);--color-secondary:oklch(69.651% .059 248.687);--color-secondary-content:oklch(13.93% .011 248.687);--color-accent:oklch(77.464% .062 217.469);--color-accent-content:oklch(15.492% .012 217.469);--color-neutral:oklch(45.229% .035 264.131);--color-neutral-content:oklch(89.925% .016 262.749);--color-info:oklch(69.207% .062 332.664);--color-info-content:oklch(13.841% .012 332.664);--color-success:oklch(76.827% .074 131.063);--color-success-content:oklch(15.365% .014 131.063);--color-warning:oklch(85.486% .089 84.093);--color-warning-content:oklch(17.097% .017 84.093);--color-error:oklch(60.61% .12 15.341);--color-error-content:oklch(12.122% .024 15.341);--radius-selector:1rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=sunset]:checked),[data-theme=sunset]{color-scheme:dark;--color-base-100:oklch(22% .019 237.69);--color-base-200:oklch(20% .019 237.69);--color-base-300:oklch(18% .019 237.69);--color-base-content:oklch(77.383% .043 245.096);--color-primary:oklch(74.703% .158 39.947);--color-primary-content:oklch(14.94% .031 39.947);--color-secondary:oklch(72.537% .177 2.72);--color-secondary-content:oklch(14.507% .035 2.72);--color-accent:oklch(71.294% .166 299.844);--color-accent-content:oklch(14.258% .033 299.844);--color-neutral:oklch(26% .019 237.69);--color-neutral-content:oklch(70% .019 237.69);--color-info:oklch(85.559% .085 206.015);--color-info-content:oklch(17.111% .017 206.015);--color-success:oklch(85.56% .085 144.778);--color-success-content:oklch(17.112% .017 144.778);--color-warning:oklch(85.569% .084 74.427);--color-warning-content:oklch(17.113% .016 74.427);--color-error:oklch(85.511% .078 16.886);--color-error-content:oklch(17.102% .015 16.886);--radius-selector:1rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0}:root:has(input.theme-controller[value=caramellatte]:checked),[data-theme=caramellatte]{color-scheme:light;--color-base-100:oklch(98% .016 73.684);--color-base-200:oklch(95% .038 75.164);--color-base-300:oklch(90% .076 70.697);--color-base-content:oklch(40% .123 38.172);--color-primary:oklch(0% 0 0);--color-primary-content:oklch(100% 0 0);--color-secondary:oklch(22.45% .075 37.85);--color-secondary-content:oklch(90% .076 70.697);--color-accent:oklch(46.44% .111 37.85);--color-accent-content:oklch(90% .076 70.697);--color-neutral:oklch(55% .195 38.402);--color-neutral-content:oklch(98% .016 73.684);--color-info:oklch(42% .199 265.638);--color-info-content:oklch(90% .076 70.697);--color-success:oklch(43% .095 166.913);--color-success-content:oklch(90% .076 70.697);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(70% .191 22.216);--color-error-content:oklch(39% .141 25.723);--radius-selector:2rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:2px;--depth:1;--noise:1}:root:has(input.theme-controller[value=abyss]:checked),[data-theme=abyss]{color-scheme:dark;--color-base-100:oklch(20% .08 209);--color-base-200:oklch(15% .08 209);--color-base-300:oklch(10% .08 209);--color-base-content:oklch(90% .076 70.697);--color-primary:oklch(92% .2653 125);--color-primary-content:oklch(50% .2653 125);--color-secondary:oklch(83.27% .0764 298.3);--color-secondary-content:oklch(43.27% .0764 298.3);--color-accent:oklch(43% 0 0);--color-accent-content:oklch(98% 0 0);--color-neutral:oklch(30% .08 209);--color-neutral-content:oklch(90% .076 70.697);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(79% .209 151.711);--color-success-content:oklch(26% .065 152.934);--color-warning:oklch(84.8% .1962 84.62);--color-warning-content:oklch(44.8% .1962 84.62);--color-error:oklch(65% .1985 24.22);--color-error-content:oklch(27% .1985 24.22);--radius-selector:2rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=silk]:checked),[data-theme=silk]{color-scheme:light;--color-base-100:oklch(97% .0035 67.78);--color-base-200:oklch(95% .0081 61.42);--color-base-300:oklch(90% .0081 61.42);--color-base-content:oklch(40% .0081 61.42);--color-primary:oklch(23.27% .0249 284.3);--color-primary-content:oklch(94.22% .2505 117.44);--color-secondary:oklch(23.27% .0249 284.3);--color-secondary-content:oklch(73.92% .2135 50.94);--color-accent:oklch(23.27% .0249 284.3);--color-accent-content:oklch(88.92% .2061 189.9);--color-neutral:oklch(20% 0 0);--color-neutral-content:oklch(80% .0081 61.42);--color-info:oklch(80.39% .1148 241.68);--color-info-content:oklch(30.39% .1148 241.68);--color-success:oklch(83.92% .0901 136.87);--color-success-content:oklch(23.92% .0901 136.87);--color-warning:oklch(83.92% .1085 80);--color-warning-content:oklch(43.92% .1085 80);--color-error:oklch(75.1% .1814 22.37);--color-error-content:oklch(35.1% .1814 22.37);--radius-selector:2rem;--radius-field:.5rem;--radius-box:1rem;--size-selector:.25rem;--size-field:.25rem;--border:2px;--depth:1;--noise:0} \ No newline at end of file diff --git a/src/assets/daisyui-5.css b/src/assets/daisyui-5.css new file mode 100644 index 0000000..a87602a --- /dev/null +++ b/src/assets/daisyui-5.css @@ -0,0 +1,7 @@ +/** + * Skipped minification because the original files appears to be already minified. + * Original file: /npm/daisyui@5.0.43/daisyui.css + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +/*! 🌼 daisyUI 5.0.42 - MIT License */ @layer base{:root,:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root,[data-theme]{background-color:var(--root-bg,var(--color-base-100));color:var(--color-base-content)}*,:after,::backdrop,:before,::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");-webkit-tap-highlight-color:#0000}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}table{text-indent:0;border-color:inherit;border-collapse:collapse}::file-selector-button,button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}input:where(:not([type=button],[type=reset],[type=submit])),select,textarea{border-width:1px}::file-selector-button,button,input:where([type=button],[type=reset],[type=submit]){appearance:button}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}::-webkit-search-decoration{-webkit-appearance:none}menu,ol,ul{list-style:none}textarea{resize:vertical}::placeholder{opacity:1;color:color-mix(in oklch,currentColor 50%,#0000)}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}@property --radialprogress{syntax: ""; inherits: true; initial-value: 0%;}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E")}:where(:root:has(.modal-open,.modal[open],.modal:target,.modal-toggle:checked,.drawer:not(.drawer-open)>.drawer-toggle:checked)){scrollbar-gutter:stable;background-image:linear-gradient(var(--color-base-100),var(--color-base-100));--root-bg:color-mix(in srgb,var(--color-base-100),oklch(0% 0 0) 40%)}:where(.modal[open],.modal-open,.modal-toggle:checked+.modal):not(.modal-start,.modal-end){scrollbar-gutter:stable}:root{scrollbar-color:color-mix(in oklch,currentColor 35%,#0000)#0000}:root:has(.modal-open,.modal[open],.modal:target,.modal-toggle:checked,.drawer:not([class*=drawer-open])>.drawer-toggle:checked){overflow:hidden}}@layer utilities{.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000);border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);justify-content:center;align-items:center;padding-left:.5em;padding-right:.5em;font-size:.875rem;display:inline-flex}.kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.kbd-md{--size:calc(var(--size-selector,.25rem)*6);font-size:.875rem}.kbd-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.kbd-xl{--size:calc(var(--size-selector,.25rem)*8);font-size:1.125rem}@media (width>=640px){.sm\:kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000);border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);justify-content:center;align-items:center;padding-left:.5em;padding-right:.5em;font-size:.875rem;display:inline-flex}.sm\:kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.sm\:kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.sm\:kbd-md{--size:calc(var(--size-selector,.25rem)*6);font-size:.875rem}.sm\:kbd-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.sm\:kbd-xl{--size:calc(var(--size-selector,.25rem)*8);font-size:1.125rem}}@media (width>=768px){.md\:kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000);border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);justify-content:center;align-items:center;padding-left:.5em;padding-right:.5em;font-size:.875rem;display:inline-flex}.md\:kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.md\:kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.md\:kbd-md{--size:calc(var(--size-selector,.25rem)*6);font-size:.875rem}.md\:kbd-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.md\:kbd-xl{--size:calc(var(--size-selector,.25rem)*8);font-size:1.125rem}}@media (width>=1024px){.lg\:kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000);border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);justify-content:center;align-items:center;padding-left:.5em;padding-right:.5em;font-size:.875rem;display:inline-flex}.lg\:kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.lg\:kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.lg\:kbd-md{--size:calc(var(--size-selector,.25rem)*6);font-size:.875rem}.lg\:kbd-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.lg\:kbd-xl{--size:calc(var(--size-selector,.25rem)*8);font-size:1.125rem}}@media (width>=1280px){.xl\:kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000);border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);justify-content:center;align-items:center;padding-left:.5em;padding-right:.5em;font-size:.875rem;display:inline-flex}.xl\:kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.xl\:kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.xl\:kbd-md{--size:calc(var(--size-selector,.25rem)*6);font-size:.875rem}.xl\:kbd-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.xl\:kbd-xl{--size:calc(var(--size-selector,.25rem)*8);font-size:1.125rem}}@media (width>=1536px){.\32 xl\:kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000);border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);justify-content:center;align-items:center;padding-left:.5em;padding-right:.5em;font-size:.875rem;display:inline-flex}.\32 xl\:kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.\32 xl\:kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.\32 xl\:kbd-md{--size:calc(var(--size-selector,.25rem)*6);font-size:.875rem}.\32 xl\:kbd-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.\32 xl\:kbd-xl{--size:calc(var(--size-selector,.25rem)*8);font-size:1.125rem}}.checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000));cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0/calc(var(--depth)*.1))inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}&:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}&:checked,&[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));&:before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}}&:indeterminate{&:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}}}.checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.checkbox-secondary{color:var(--color-secondary-content);--input-color:var(--color-secondary)}.checkbox-accent{color:var(--color-accent-content);--input-color:var(--color-accent)}.checkbox-neutral{color:var(--color-neutral-content);--input-color:var(--color-neutral)}.checkbox-info{color:var(--color-info-content);--input-color:var(--color-info)}.checkbox-success{color:var(--color-success-content);--input-color:var(--color-success)}.checkbox-warning{color:var(--color-warning-content);--input-color:var(--color-warning)}.checkbox-error{color:var(--color-error-content);--input-color:var(--color-error)}.checkbox:disabled{cursor:not-allowed;opacity:.2}.checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.checkbox-sm{--size:calc(var(--size-selector,.25rem)*5);padding:.1875rem}.checkbox-md{--size:calc(var(--size-selector,.25rem)*6);padding:.25rem}.checkbox-lg{--size:calc(var(--size-selector,.25rem)*7);padding:.3125rem}.checkbox-xl{--size:calc(var(--size-selector,.25rem)*8);padding:.375rem}@media (width>=640px){.sm\:checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000));cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0/calc(var(--depth)*.1))inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}&:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}&:checked,&[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));&:before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}}&:indeterminate{&:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}}}.sm\:checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.sm\:checkbox-secondary{color:var(--color-secondary-content);--input-color:var(--color-secondary)}.sm\:checkbox-accent{color:var(--color-accent-content);--input-color:var(--color-accent)}.sm\:checkbox-neutral{color:var(--color-neutral-content);--input-color:var(--color-neutral)}.sm\:checkbox-info{color:var(--color-info-content);--input-color:var(--color-info)}.sm\:checkbox-success{color:var(--color-success-content);--input-color:var(--color-success)}.sm\:checkbox-warning{color:var(--color-warning-content);--input-color:var(--color-warning)}.sm\:checkbox-error{color:var(--color-error-content);--input-color:var(--color-error)}.sm\:checkbox:disabled{cursor:not-allowed;opacity:.2}.sm\:checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.sm\:checkbox-sm{--size:calc(var(--size-selector,.25rem)*5);padding:.1875rem}.sm\:checkbox-md{--size:calc(var(--size-selector,.25rem)*6);padding:.25rem}.sm\:checkbox-lg{--size:calc(var(--size-selector,.25rem)*7);padding:.3125rem}.sm\:checkbox-xl{--size:calc(var(--size-selector,.25rem)*8);padding:.375rem}}@media (width>=768px){.md\:checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000));cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0/calc(var(--depth)*.1))inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}&:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}&:checked,&[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));&:before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}}&:indeterminate{&:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}}}.md\:checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.md\:checkbox-secondary{color:var(--color-secondary-content);--input-color:var(--color-secondary)}.md\:checkbox-accent{color:var(--color-accent-content);--input-color:var(--color-accent)}.md\:checkbox-neutral{color:var(--color-neutral-content);--input-color:var(--color-neutral)}.md\:checkbox-info{color:var(--color-info-content);--input-color:var(--color-info)}.md\:checkbox-success{color:var(--color-success-content);--input-color:var(--color-success)}.md\:checkbox-warning{color:var(--color-warning-content);--input-color:var(--color-warning)}.md\:checkbox-error{color:var(--color-error-content);--input-color:var(--color-error)}.md\:checkbox:disabled{cursor:not-allowed;opacity:.2}.md\:checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.md\:checkbox-sm{--size:calc(var(--size-selector,.25rem)*5);padding:.1875rem}.md\:checkbox-md{--size:calc(var(--size-selector,.25rem)*6);padding:.25rem}.md\:checkbox-lg{--size:calc(var(--size-selector,.25rem)*7);padding:.3125rem}.md\:checkbox-xl{--size:calc(var(--size-selector,.25rem)*8);padding:.375rem}}@media (width>=1024px){.lg\:checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000));cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0/calc(var(--depth)*.1))inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}&:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}&:checked,&[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));&:before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}}&:indeterminate{&:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}}}.lg\:checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.lg\:checkbox-secondary{color:var(--color-secondary-content);--input-color:var(--color-secondary)}.lg\:checkbox-accent{color:var(--color-accent-content);--input-color:var(--color-accent)}.lg\:checkbox-neutral{color:var(--color-neutral-content);--input-color:var(--color-neutral)}.lg\:checkbox-info{color:var(--color-info-content);--input-color:var(--color-info)}.lg\:checkbox-success{color:var(--color-success-content);--input-color:var(--color-success)}.lg\:checkbox-warning{color:var(--color-warning-content);--input-color:var(--color-warning)}.lg\:checkbox-error{color:var(--color-error-content);--input-color:var(--color-error)}.lg\:checkbox:disabled{cursor:not-allowed;opacity:.2}.lg\:checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.lg\:checkbox-sm{--size:calc(var(--size-selector,.25rem)*5);padding:.1875rem}.lg\:checkbox-md{--size:calc(var(--size-selector,.25rem)*6);padding:.25rem}.lg\:checkbox-lg{--size:calc(var(--size-selector,.25rem)*7);padding:.3125rem}.lg\:checkbox-xl{--size:calc(var(--size-selector,.25rem)*8);padding:.375rem}}@media (width>=1280px){.xl\:checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000));cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0/calc(var(--depth)*.1))inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}&:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}&:checked,&[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));&:before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}}&:indeterminate{&:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}}}.xl\:checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.xl\:checkbox-secondary{color:var(--color-secondary-content);--input-color:var(--color-secondary)}.xl\:checkbox-accent{color:var(--color-accent-content);--input-color:var(--color-accent)}.xl\:checkbox-neutral{color:var(--color-neutral-content);--input-color:var(--color-neutral)}.xl\:checkbox-info{color:var(--color-info-content);--input-color:var(--color-info)}.xl\:checkbox-success{color:var(--color-success-content);--input-color:var(--color-success)}.xl\:checkbox-warning{color:var(--color-warning-content);--input-color:var(--color-warning)}.xl\:checkbox-error{color:var(--color-error-content);--input-color:var(--color-error)}.xl\:checkbox:disabled{cursor:not-allowed;opacity:.2}.xl\:checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.xl\:checkbox-sm{--size:calc(var(--size-selector,.25rem)*5);padding:.1875rem}.xl\:checkbox-md{--size:calc(var(--size-selector,.25rem)*6);padding:.25rem}.xl\:checkbox-lg{--size:calc(var(--size-selector,.25rem)*7);padding:.3125rem}.xl\:checkbox-xl{--size:calc(var(--size-selector,.25rem)*8);padding:.375rem}}@media (width>=1536px){.\32 xl\:checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000));cursor:pointer;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0/calc(var(--depth)*.1))inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}&:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}&:checked,&[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));&:before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media (forced-colors:active){&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{&:before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}}&:indeterminate{&:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}}}.\32 xl\:checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.\32 xl\:checkbox-secondary{color:var(--color-secondary-content);--input-color:var(--color-secondary)}.\32 xl\:checkbox-accent{color:var(--color-accent-content);--input-color:var(--color-accent)}.\32 xl\:checkbox-neutral{color:var(--color-neutral-content);--input-color:var(--color-neutral)}.\32 xl\:checkbox-info{color:var(--color-info-content);--input-color:var(--color-info)}.\32 xl\:checkbox-success{color:var(--color-success-content);--input-color:var(--color-success)}.\32 xl\:checkbox-warning{color:var(--color-warning-content);--input-color:var(--color-warning)}.\32 xl\:checkbox-error{color:var(--color-error-content);--input-color:var(--color-error)}.\32 xl\:checkbox:disabled{cursor:not-allowed;opacity:.2}.\32 xl\:checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.\32 xl\:checkbox-sm{--size:calc(var(--size-selector,.25rem)*5);padding:.1875rem}.\32 xl\:checkbox-md{--size:calc(var(--size-selector,.25rem)*6);padding:.25rem}.\32 xl\:checkbox-lg{--size:calc(var(--size-selector,.25rem)*7);padding:.3125rem}.\32 xl\:checkbox-xl{--size:calc(var(--size-selector,.25rem)*8);padding:.375rem}}.status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:color-mix(in oklab,var(--color-base-content)20%,transparent);vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat;background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);width:.5rem;height:.5rem;box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000);display:inline-block;@supports (color:color-mix(in lab, red, red)){&{color:color-mix(in oklab,var(--color-black)30%,transparent)}}}.status-primary{background-color:var(--color-primary);color:var(--color-primary)}.status-secondary{background-color:var(--color-secondary);color:var(--color-secondary)}.status-accent{background-color:var(--color-accent);color:var(--color-accent)}.status-neutral{background-color:var(--color-neutral);color:var(--color-neutral)}.status-info{background-color:var(--color-info);color:var(--color-info)}.status-success{background-color:var(--color-success);color:var(--color-success)}.status-warning{background-color:var(--color-warning);color:var(--color-warning)}.status-error{background-color:var(--color-error);color:var(--color-error)}.status-xs{width:.125rem;height:.125rem}.status-sm{width:.25rem;height:.25rem}.status-md{width:.5rem;height:.5rem}.status-lg{width:.75rem;height:.75rem}.status-xl{width:1rem;height:1rem}@media (width>=640px){.sm\:status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:color-mix(in oklab,var(--color-base-content)20%,transparent);vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat;background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);width:.5rem;height:.5rem;box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000);display:inline-block;@supports (color:color-mix(in lab, red, red)){&{color:color-mix(in oklab,var(--color-black)30%,transparent)}}}.sm\:status-primary{background-color:var(--color-primary);color:var(--color-primary)}.sm\:status-secondary{background-color:var(--color-secondary);color:var(--color-secondary)}.sm\:status-accent{background-color:var(--color-accent);color:var(--color-accent)}.sm\:status-neutral{background-color:var(--color-neutral);color:var(--color-neutral)}.sm\:status-info{background-color:var(--color-info);color:var(--color-info)}.sm\:status-success{background-color:var(--color-success);color:var(--color-success)}.sm\:status-warning{background-color:var(--color-warning);color:var(--color-warning)}.sm\:status-error{background-color:var(--color-error);color:var(--color-error)}.sm\:status-xs{width:.125rem;height:.125rem}.sm\:status-sm{width:.25rem;height:.25rem}.sm\:status-md{width:.5rem;height:.5rem}.sm\:status-lg{width:.75rem;height:.75rem}.sm\:status-xl{width:1rem;height:1rem}}@media (width>=768px){.md\:status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:color-mix(in oklab,var(--color-base-content)20%,transparent);vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat;background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);width:.5rem;height:.5rem;box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000);display:inline-block;@supports (color:color-mix(in lab, red, red)){&{color:color-mix(in oklab,var(--color-black)30%,transparent)}}}.md\:status-primary{background-color:var(--color-primary);color:var(--color-primary)}.md\:status-secondary{background-color:var(--color-secondary);color:var(--color-secondary)}.md\:status-accent{background-color:var(--color-accent);color:var(--color-accent)}.md\:status-neutral{background-color:var(--color-neutral);color:var(--color-neutral)}.md\:status-info{background-color:var(--color-info);color:var(--color-info)}.md\:status-success{background-color:var(--color-success);color:var(--color-success)}.md\:status-warning{background-color:var(--color-warning);color:var(--color-warning)}.md\:status-error{background-color:var(--color-error);color:var(--color-error)}.md\:status-xs{width:.125rem;height:.125rem}.md\:status-sm{width:.25rem;height:.25rem}.md\:status-md{width:.5rem;height:.5rem}.md\:status-lg{width:.75rem;height:.75rem}.md\:status-xl{width:1rem;height:1rem}}@media (width>=1024px){.lg\:status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:color-mix(in oklab,var(--color-base-content)20%,transparent);vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat;background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);width:.5rem;height:.5rem;box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000);display:inline-block;@supports (color:color-mix(in lab, red, red)){&{color:color-mix(in oklab,var(--color-black)30%,transparent)}}}.lg\:status-primary{background-color:var(--color-primary);color:var(--color-primary)}.lg\:status-secondary{background-color:var(--color-secondary);color:var(--color-secondary)}.lg\:status-accent{background-color:var(--color-accent);color:var(--color-accent)}.lg\:status-neutral{background-color:var(--color-neutral);color:var(--color-neutral)}.lg\:status-info{background-color:var(--color-info);color:var(--color-info)}.lg\:status-success{background-color:var(--color-success);color:var(--color-success)}.lg\:status-warning{background-color:var(--color-warning);color:var(--color-warning)}.lg\:status-error{background-color:var(--color-error);color:var(--color-error)}.lg\:status-xs{width:.125rem;height:.125rem}.lg\:status-sm{width:.25rem;height:.25rem}.lg\:status-md{width:.5rem;height:.5rem}.lg\:status-lg{width:.75rem;height:.75rem}.lg\:status-xl{width:1rem;height:1rem}}@media (width>=1280px){.xl\:status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:color-mix(in oklab,var(--color-base-content)20%,transparent);vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat;background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);width:.5rem;height:.5rem;box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000);display:inline-block;@supports (color:color-mix(in lab, red, red)){&{color:color-mix(in oklab,var(--color-black)30%,transparent)}}}.xl\:status-primary{background-color:var(--color-primary);color:var(--color-primary)}.xl\:status-secondary{background-color:var(--color-secondary);color:var(--color-secondary)}.xl\:status-accent{background-color:var(--color-accent);color:var(--color-accent)}.xl\:status-neutral{background-color:var(--color-neutral);color:var(--color-neutral)}.xl\:status-info{background-color:var(--color-info);color:var(--color-info)}.xl\:status-success{background-color:var(--color-success);color:var(--color-success)}.xl\:status-warning{background-color:var(--color-warning);color:var(--color-warning)}.xl\:status-error{background-color:var(--color-error);color:var(--color-error)}.xl\:status-xs{width:.125rem;height:.125rem}.xl\:status-sm{width:.25rem;height:.25rem}.xl\:status-md{width:.5rem;height:.5rem}.xl\:status-lg{width:.75rem;height:.75rem}.xl\:status-xl{width:1rem;height:1rem}}@media (width>=1536px){.\32 xl\:status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:color-mix(in oklab,var(--color-base-content)20%,transparent);vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat;background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);width:.5rem;height:.5rem;box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000);display:inline-block;@supports (color:color-mix(in lab, red, red)){&{color:color-mix(in oklab,var(--color-black)30%,transparent)}}}.\32 xl\:status-primary{background-color:var(--color-primary);color:var(--color-primary)}.\32 xl\:status-secondary{background-color:var(--color-secondary);color:var(--color-secondary)}.\32 xl\:status-accent{background-color:var(--color-accent);color:var(--color-accent)}.\32 xl\:status-neutral{background-color:var(--color-neutral);color:var(--color-neutral)}.\32 xl\:status-info{background-color:var(--color-info);color:var(--color-info)}.\32 xl\:status-success{background-color:var(--color-success);color:var(--color-success)}.\32 xl\:status-warning{background-color:var(--color-warning);color:var(--color-warning)}.\32 xl\:status-error{background-color:var(--color-error);color:var(--color-error)}.\32 xl\:status-xs{width:.125rem;height:.125rem}.\32 xl\:status-sm{width:.25rem;height:.25rem}.\32 xl\:status-md{width:.5rem;height:.5rem}.\32 xl\:status-lg{width:.75rem;height:.75rem}.\32 xl\:status-xl{width:1rem;height:1rem}}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%))inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%));--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000);--btn-noise:var(--fx-noise);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex;.prose &{text-decoration-line:none}@media (hover:hover){&:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}&:focus-visible{isolation:isolate;outline-width:2px;outline-style:solid}&:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%);--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);translate:0 .5px}&:is(:disabled,[disabled],.btn-disabled){pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000);&:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);box-shadow:none}@media (hover:hover){&:hover{pointer-events:none;background-color:color-mix(in oklab,var(--color-neutral)20%,transparent);--btn-border:#0000;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}&:is(input[type=checkbox],input[type=radio]){appearance:none;&:after{content:attr(aria-label)}}&:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}}.btn-active{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);isolation:isolate}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}.btn-accent{--btn-color:var(--color-accent);--btn-fg:var(--color-accent-content)}.btn-neutral{--btn-color:var(--color-neutral);--btn-fg:var(--color-neutral-content)}.btn-info{--btn-color:var(--color-info);--btn-fg:var(--color-info-content)}.btn-success{--btn-color:var(--color-success);--btn-fg:var(--color-success-content)}.btn-warning{--btn-color:var(--color-warning);--btn-fg:var(--color-warning-content)}.btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.btn-ghost{&:not(.btn-active,:hover,:active:focus,:focus-visible){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;&:not(:disabled,[disabled],.btn-disabled){--btn-fg:currentColor;outline-color:currentColor}}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;--btn-fg:currentColor}}}.btn-link{--btn-border:#0000;--btn-bg:#0000;--btn-fg:var(--color-primary);--btn-noise:none;--btn-shadow:"";outline-color:currentColor;text-decoration-line:underline;&:is(.btn-active,:hover,:active:focus,:focus-visible){--btn-border:#0000;--btn-bg:#0000;text-decoration-line:underline}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){text-decoration-line:none}}}.btn-outline{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.btn-dash{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}}}.btn-soft{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}}}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.btn-md{--fontsize:.875rem;--btn-p:1rem;--size:calc(var(--size-field,.25rem)*10)}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.btn-xl{--fontsize:1.375rem;--btn-p:1.5rem;--size:calc(var(--size-field,.25rem)*14)}.btn-square{width:var(--size);height:var(--size);padding-inline:0}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.btn-wide{width:100%;max-width:16rem}.btn-block{width:100%}@media (width>=640px){:where(.btn){width:unset}.sm\:btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%))inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%));--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000);--btn-noise:var(--fx-noise);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex;.prose &{text-decoration-line:none}@media (hover:hover){&:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}&:focus-visible{isolation:isolate;outline-width:2px;outline-style:solid}&:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%);--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);translate:0 .5px}&:is(:disabled,[disabled],.btn-disabled){pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000);&:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);box-shadow:none}@media (hover:hover){&:hover{pointer-events:none;background-color:color-mix(in oklab,var(--color-neutral)20%,transparent);--btn-border:#0000;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}&:is(input[type=checkbox],input[type=radio]){appearance:none;&:after{content:attr(aria-label)}}&:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}}.sm\:btn-active{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);isolation:isolate}.sm\:btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.sm\:btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}.sm\:btn-accent{--btn-color:var(--color-accent);--btn-fg:var(--color-accent-content)}.sm\:btn-neutral{--btn-color:var(--color-neutral);--btn-fg:var(--color-neutral-content)}.sm\:btn-info{--btn-color:var(--color-info);--btn-fg:var(--color-info-content)}.sm\:btn-success{--btn-color:var(--color-success);--btn-fg:var(--color-success-content)}.sm\:btn-warning{--btn-color:var(--color-warning);--btn-fg:var(--color-warning-content)}.sm\:btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.sm\:btn-ghost{&:not(.btn-active,:hover,:active:focus,:focus-visible){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;&:not(:disabled,[disabled],.btn-disabled){--btn-fg:currentColor;outline-color:currentColor}}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;--btn-fg:currentColor}}}.sm\:btn-link{--btn-border:#0000;--btn-bg:#0000;--btn-fg:var(--color-primary);--btn-noise:none;--btn-shadow:"";outline-color:currentColor;text-decoration-line:underline;&:is(.btn-active,:hover,:active:focus,:focus-visible){--btn-border:#0000;--btn-bg:#0000;text-decoration-line:underline}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){text-decoration-line:none}}}.sm\:btn-outline{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.sm\:btn-dash{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}}}.sm\:btn-soft{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}}}.sm\:btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.sm\:btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.sm\:btn-md{--fontsize:.875rem;--btn-p:1rem;--size:calc(var(--size-field,.25rem)*10)}.sm\:btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.sm\:btn-xl{--fontsize:1.375rem;--btn-p:1.5rem;--size:calc(var(--size-field,.25rem)*14)}.sm\:btn-square{width:var(--size);height:var(--size);padding-inline:0}.sm\:btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.sm\:btn-wide{width:100%;max-width:16rem}.sm\:btn-block{width:100%}}@media (width>=768px){:where(.btn){width:unset}.md\:btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%))inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%));--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000);--btn-noise:var(--fx-noise);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex;.prose &{text-decoration-line:none}@media (hover:hover){&:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}&:focus-visible{isolation:isolate;outline-width:2px;outline-style:solid}&:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%);--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);translate:0 .5px}&:is(:disabled,[disabled],.btn-disabled){pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000);&:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);box-shadow:none}@media (hover:hover){&:hover{pointer-events:none;background-color:color-mix(in oklab,var(--color-neutral)20%,transparent);--btn-border:#0000;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}&:is(input[type=checkbox],input[type=radio]){appearance:none;&:after{content:attr(aria-label)}}&:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}}.md\:btn-active{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);isolation:isolate}.md\:btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.md\:btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}.md\:btn-accent{--btn-color:var(--color-accent);--btn-fg:var(--color-accent-content)}.md\:btn-neutral{--btn-color:var(--color-neutral);--btn-fg:var(--color-neutral-content)}.md\:btn-info{--btn-color:var(--color-info);--btn-fg:var(--color-info-content)}.md\:btn-success{--btn-color:var(--color-success);--btn-fg:var(--color-success-content)}.md\:btn-warning{--btn-color:var(--color-warning);--btn-fg:var(--color-warning-content)}.md\:btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.md\:btn-ghost{&:not(.btn-active,:hover,:active:focus,:focus-visible){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;&:not(:disabled,[disabled],.btn-disabled){--btn-fg:currentColor;outline-color:currentColor}}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;--btn-fg:currentColor}}}.md\:btn-link{--btn-border:#0000;--btn-bg:#0000;--btn-fg:var(--color-primary);--btn-noise:none;--btn-shadow:"";outline-color:currentColor;text-decoration-line:underline;&:is(.btn-active,:hover,:active:focus,:focus-visible){--btn-border:#0000;--btn-bg:#0000;text-decoration-line:underline}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){text-decoration-line:none}}}.md\:btn-outline{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.md\:btn-dash{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}}}.md\:btn-soft{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}}}.md\:btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.md\:btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.md\:btn-md{--fontsize:.875rem;--btn-p:1rem;--size:calc(var(--size-field,.25rem)*10)}.md\:btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.md\:btn-xl{--fontsize:1.375rem;--btn-p:1.5rem;--size:calc(var(--size-field,.25rem)*14)}.md\:btn-square{width:var(--size);height:var(--size);padding-inline:0}.md\:btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.md\:btn-wide{width:100%;max-width:16rem}.md\:btn-block{width:100%}}@media (width>=1024px){:where(.btn){width:unset}.lg\:btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%))inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%));--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000);--btn-noise:var(--fx-noise);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex;.prose &{text-decoration-line:none}@media (hover:hover){&:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}&:focus-visible{isolation:isolate;outline-width:2px;outline-style:solid}&:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%);--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);translate:0 .5px}&:is(:disabled,[disabled],.btn-disabled){pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000);&:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);box-shadow:none}@media (hover:hover){&:hover{pointer-events:none;background-color:color-mix(in oklab,var(--color-neutral)20%,transparent);--btn-border:#0000;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}&:is(input[type=checkbox],input[type=radio]){appearance:none;&:after{content:attr(aria-label)}}&:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}}.lg\:btn-active{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);isolation:isolate}.lg\:btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.lg\:btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}.lg\:btn-accent{--btn-color:var(--color-accent);--btn-fg:var(--color-accent-content)}.lg\:btn-neutral{--btn-color:var(--color-neutral);--btn-fg:var(--color-neutral-content)}.lg\:btn-info{--btn-color:var(--color-info);--btn-fg:var(--color-info-content)}.lg\:btn-success{--btn-color:var(--color-success);--btn-fg:var(--color-success-content)}.lg\:btn-warning{--btn-color:var(--color-warning);--btn-fg:var(--color-warning-content)}.lg\:btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.lg\:btn-ghost{&:not(.btn-active,:hover,:active:focus,:focus-visible){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;&:not(:disabled,[disabled],.btn-disabled){--btn-fg:currentColor;outline-color:currentColor}}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;--btn-fg:currentColor}}}.lg\:btn-link{--btn-border:#0000;--btn-bg:#0000;--btn-fg:var(--color-primary);--btn-noise:none;--btn-shadow:"";outline-color:currentColor;text-decoration-line:underline;&:is(.btn-active,:hover,:active:focus,:focus-visible){--btn-border:#0000;--btn-bg:#0000;text-decoration-line:underline}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){text-decoration-line:none}}}.lg\:btn-outline{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.lg\:btn-dash{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}}}.lg\:btn-soft{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}}}.lg\:btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.lg\:btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.lg\:btn-md{--fontsize:.875rem;--btn-p:1rem;--size:calc(var(--size-field,.25rem)*10)}.lg\:btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.lg\:btn-xl{--fontsize:1.375rem;--btn-p:1.5rem;--size:calc(var(--size-field,.25rem)*14)}.lg\:btn-square{width:var(--size);height:var(--size);padding-inline:0}.lg\:btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.lg\:btn-wide{width:100%;max-width:16rem}.lg\:btn-block{width:100%}}@media (width>=1280px){:where(.btn){width:unset}.xl\:btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%))inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%));--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000);--btn-noise:var(--fx-noise);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex;.prose &{text-decoration-line:none}@media (hover:hover){&:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}&:focus-visible{isolation:isolate;outline-width:2px;outline-style:solid}&:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%);--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);translate:0 .5px}&:is(:disabled,[disabled],.btn-disabled){pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000);&:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);box-shadow:none}@media (hover:hover){&:hover{pointer-events:none;background-color:color-mix(in oklab,var(--color-neutral)20%,transparent);--btn-border:#0000;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}&:is(input[type=checkbox],input[type=radio]){appearance:none;&:after{content:attr(aria-label)}}&:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}}.xl\:btn-active{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);isolation:isolate}.xl\:btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.xl\:btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}.xl\:btn-accent{--btn-color:var(--color-accent);--btn-fg:var(--color-accent-content)}.xl\:btn-neutral{--btn-color:var(--color-neutral);--btn-fg:var(--color-neutral-content)}.xl\:btn-info{--btn-color:var(--color-info);--btn-fg:var(--color-info-content)}.xl\:btn-success{--btn-color:var(--color-success);--btn-fg:var(--color-success-content)}.xl\:btn-warning{--btn-color:var(--color-warning);--btn-fg:var(--color-warning-content)}.xl\:btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.xl\:btn-ghost{&:not(.btn-active,:hover,:active:focus,:focus-visible){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;&:not(:disabled,[disabled],.btn-disabled){--btn-fg:currentColor;outline-color:currentColor}}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;--btn-fg:currentColor}}}.xl\:btn-link{--btn-border:#0000;--btn-bg:#0000;--btn-fg:var(--color-primary);--btn-noise:none;--btn-shadow:"";outline-color:currentColor;text-decoration-line:underline;&:is(.btn-active,:hover,:active:focus,:focus-visible){--btn-border:#0000;--btn-bg:#0000;text-decoration-line:underline}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){text-decoration-line:none}}}.xl\:btn-outline{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.xl\:btn-dash{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}}}.xl\:btn-soft{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}}}.xl\:btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.xl\:btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.xl\:btn-md{--fontsize:.875rem;--btn-p:1rem;--size:calc(var(--size-field,.25rem)*10)}.xl\:btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.xl\:btn-xl{--fontsize:1.375rem;--btn-p:1.5rem;--size:calc(var(--size-field,.25rem)*14)}.xl\:btn-square{width:var(--size);height:var(--size);padding-inline:0}.xl\:btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.xl\:btn-wide{width:100%;max-width:16rem}.xl\:btn-block{width:100%}}@media (width>=1536px){:where(.btn){width:unset}.\32 xl\:btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%))inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%));--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000);--btn-noise:var(--fx-noise);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex;.prose &{text-decoration-line:none}@media (hover:hover){&:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}&:focus-visible{isolation:isolate;outline-width:2px;outline-style:solid}&:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%);--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);translate:0 .5px}&:is(:disabled,[disabled],.btn-disabled){pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000);&:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);box-shadow:none}@media (hover:hover){&:hover{pointer-events:none;background-color:color-mix(in oklab,var(--color-neutral)20%,transparent);--btn-border:#0000;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}&:is(input[type=checkbox],input[type=radio]){appearance:none;&:after{content:attr(aria-label)}}&:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}}.\32 xl\:btn-active{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);isolation:isolate}.\32 xl\:btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.\32 xl\:btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}.\32 xl\:btn-accent{--btn-color:var(--color-accent);--btn-fg:var(--color-accent-content)}.\32 xl\:btn-neutral{--btn-color:var(--color-neutral);--btn-fg:var(--color-neutral-content)}.\32 xl\:btn-info{--btn-color:var(--color-info);--btn-fg:var(--color-info-content)}.\32 xl\:btn-success{--btn-color:var(--color-success);--btn-fg:var(--color-success-content)}.\32 xl\:btn-warning{--btn-color:var(--color-warning);--btn-fg:var(--color-warning-content)}.\32 xl\:btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.\32 xl\:btn-ghost{&:not(.btn-active,:hover,:active:focus,:focus-visible){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;&:not(:disabled,[disabled],.btn-disabled){--btn-fg:currentColor;outline-color:currentColor}}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none;--btn-fg:currentColor}}}.\32 xl\:btn-link{--btn-border:#0000;--btn-bg:#0000;--btn-fg:var(--color-primary);--btn-noise:none;--btn-shadow:"";outline-color:currentColor;text-decoration-line:underline;&:is(.btn-active,:hover,:active:focus,:focus-visible){--btn-border:#0000;--btn-bg:#0000;text-decoration-line:underline}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){text-decoration-line:none}}}.\32 xl\:btn-outline{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.\32 xl\:btn-dash{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled,:checked){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none;border-style:dashed}}}.\32 xl\:btn-soft{&:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}@media (hover:none){&:hover:not(.btn-active,:active,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-fg:var(--btn-color,var(--color-base-content));--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-content))8%,var(--color-base-100));--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-content))10%,var(--color-base-100));--btn-noise:none}}}.\32 xl\:btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.\32 xl\:btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.\32 xl\:btn-md{--fontsize:.875rem;--btn-p:1rem;--size:calc(var(--size-field,.25rem)*10)}.\32 xl\:btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.\32 xl\:btn-xl{--fontsize:1.375rem;--btn-p:1.5rem;--size:calc(var(--size-field,.25rem)*14)}.\32 xl\:btn-square{width:var(--size);height:var(--size);padding-inline:0}.\32 xl\:btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.\32 xl\:btn-wide{width:100%;max-width:16rem}.\32 xl\:btn-block{width:100%}}.footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid;&>*{place-items:start;gap:.5rem;display:grid}&.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center;&>*{place-items:center}}}.footer-title{text-transform:uppercase;opacity:.6;margin-bottom:.5rem;font-weight:600}.footer-horizontal{grid-auto-flow:column;&.footer-center{grid-auto-flow:dense}}.footer-vertical{grid-auto-flow:row;&.footer-center{grid-auto-flow:column dense}}@media (width>=640px){.sm\:footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid;&>*{place-items:start;gap:.5rem;display:grid}&.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center;&>*{place-items:center}}}.sm\:footer-title{text-transform:uppercase;opacity:.6;margin-bottom:.5rem;font-weight:600}.sm\:footer-horizontal{grid-auto-flow:column;&.footer-center{grid-auto-flow:dense}}.sm\:footer-vertical{grid-auto-flow:row;&.footer-center{grid-auto-flow:column dense}}}@media (width>=768px){.md\:footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid;&>*{place-items:start;gap:.5rem;display:grid}&.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center;&>*{place-items:center}}}.md\:footer-title{text-transform:uppercase;opacity:.6;margin-bottom:.5rem;font-weight:600}.md\:footer-horizontal{grid-auto-flow:column;&.footer-center{grid-auto-flow:dense}}.md\:footer-vertical{grid-auto-flow:row;&.footer-center{grid-auto-flow:column dense}}}@media (width>=1024px){.lg\:footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid;&>*{place-items:start;gap:.5rem;display:grid}&.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center;&>*{place-items:center}}}.lg\:footer-title{text-transform:uppercase;opacity:.6;margin-bottom:.5rem;font-weight:600}.lg\:footer-horizontal{grid-auto-flow:column;&.footer-center{grid-auto-flow:dense}}.lg\:footer-vertical{grid-auto-flow:row;&.footer-center{grid-auto-flow:column dense}}}@media (width>=1280px){.xl\:footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid;&>*{place-items:start;gap:.5rem;display:grid}&.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center;&>*{place-items:center}}}.xl\:footer-title{text-transform:uppercase;opacity:.6;margin-bottom:.5rem;font-weight:600}.xl\:footer-horizontal{grid-auto-flow:column;&.footer-center{grid-auto-flow:dense}}.xl\:footer-vertical{grid-auto-flow:row;&.footer-center{grid-auto-flow:column dense}}}@media (width>=1536px){.\32 xl\:footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid;&>*{place-items:start;gap:.5rem;display:grid}&.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center;&>*{place-items:center}}}.\32 xl\:footer-title{text-transform:uppercase;opacity:.6;margin-bottom:.5rem;font-weight:600}.\32 xl\:footer-horizontal{grid-auto-flow:column;&.footer-center{grid-auto-flow:dense}}.\32 xl\:footer-vertical{grid-auto-flow:row;&.footer-center{grid-auto-flow:column dense}}}.validator{&:user-valid,&:has(:user-valid){&,&:focus,&:checked,&[aria-checked=true],&:focus-within{--input-color:var(--color-success)}}&:user-invalid,&:has(:user-invalid),&[aria-invalid]:not([aria-invalid=false]){&,&:focus,&:checked,&[aria-checked=true],&:focus-within{--input-color:var(--color-error)}&~.validator-hint{visibility:visible;color:var(--color-error);display:block}}}.validator-hint{visibility:hidden;margin-top:.5rem;font-size:.75rem}.indicator{width:max-content;display:inline-flex;position:relative;& :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}}.indicator-start{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%;[dir=rtl] &{--indicator-s:auto;--indicator-e:0;--indicator-x:50%}}.indicator-center{--indicator-s:50%;--indicator-e:50%;--indicator-x:-50%;[dir=rtl] &{--indicator-x:50%}}.indicator-end{--indicator-s:auto;--indicator-e:0;--indicator-x:50%;[dir=rtl] &{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%}}.indicator-bottom{--indicator-t:auto;--indicator-b:0;--indicator-y:50%}.indicator-middle{--indicator-t:50%;--indicator-b:50%;--indicator-y:-50%}.indicator-top{--indicator-t:0;--indicator-b:auto;--indicator-y:-50%}@media (width>=640px){.sm\:indicator{width:max-content;display:inline-flex;position:relative;& :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}}.sm\:indicator-start{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%;[dir=rtl] &{--indicator-s:auto;--indicator-e:0;--indicator-x:50%}}.sm\:indicator-center{--indicator-s:50%;--indicator-e:50%;--indicator-x:-50%;[dir=rtl] &{--indicator-x:50%}}.sm\:indicator-end{--indicator-s:auto;--indicator-e:0;--indicator-x:50%;[dir=rtl] &{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%}}.sm\:indicator-bottom{--indicator-t:auto;--indicator-b:0;--indicator-y:50%}.sm\:indicator-middle{--indicator-t:50%;--indicator-b:50%;--indicator-y:-50%}.sm\:indicator-top{--indicator-t:0;--indicator-b:auto;--indicator-y:-50%}}@media (width>=768px){.md\:indicator{width:max-content;display:inline-flex;position:relative;& :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}}.md\:indicator-start{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%;[dir=rtl] &{--indicator-s:auto;--indicator-e:0;--indicator-x:50%}}.md\:indicator-center{--indicator-s:50%;--indicator-e:50%;--indicator-x:-50%;[dir=rtl] &{--indicator-x:50%}}.md\:indicator-end{--indicator-s:auto;--indicator-e:0;--indicator-x:50%;[dir=rtl] &{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%}}.md\:indicator-bottom{--indicator-t:auto;--indicator-b:0;--indicator-y:50%}.md\:indicator-middle{--indicator-t:50%;--indicator-b:50%;--indicator-y:-50%}.md\:indicator-top{--indicator-t:0;--indicator-b:auto;--indicator-y:-50%}}@media (width>=1024px){.lg\:indicator{width:max-content;display:inline-flex;position:relative;& :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}}.lg\:indicator-start{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%;[dir=rtl] &{--indicator-s:auto;--indicator-e:0;--indicator-x:50%}}.lg\:indicator-center{--indicator-s:50%;--indicator-e:50%;--indicator-x:-50%;[dir=rtl] &{--indicator-x:50%}}.lg\:indicator-end{--indicator-s:auto;--indicator-e:0;--indicator-x:50%;[dir=rtl] &{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%}}.lg\:indicator-bottom{--indicator-t:auto;--indicator-b:0;--indicator-y:50%}.lg\:indicator-middle{--indicator-t:50%;--indicator-b:50%;--indicator-y:-50%}.lg\:indicator-top{--indicator-t:0;--indicator-b:auto;--indicator-y:-50%}}@media (width>=1280px){.xl\:indicator{width:max-content;display:inline-flex;position:relative;& :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}}.xl\:indicator-start{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%;[dir=rtl] &{--indicator-s:auto;--indicator-e:0;--indicator-x:50%}}.xl\:indicator-center{--indicator-s:50%;--indicator-e:50%;--indicator-x:-50%;[dir=rtl] &{--indicator-x:50%}}.xl\:indicator-end{--indicator-s:auto;--indicator-e:0;--indicator-x:50%;[dir=rtl] &{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%}}.xl\:indicator-bottom{--indicator-t:auto;--indicator-b:0;--indicator-y:50%}.xl\:indicator-middle{--indicator-t:50%;--indicator-b:50%;--indicator-y:-50%}.xl\:indicator-top{--indicator-t:0;--indicator-b:auto;--indicator-y:-50%}}@media (width>=1536px){.\32 xl\:indicator{width:max-content;display:inline-flex;position:relative;& :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}}.\32 xl\:indicator-start{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%;[dir=rtl] &{--indicator-s:auto;--indicator-e:0;--indicator-x:50%}}.\32 xl\:indicator-center{--indicator-s:50%;--indicator-e:50%;--indicator-x:-50%;[dir=rtl] &{--indicator-x:50%}}.\32 xl\:indicator-end{--indicator-s:auto;--indicator-e:0;--indicator-x:50%;[dir=rtl] &{--indicator-s:0;--indicator-e:auto;--indicator-x:-50%}}.\32 xl\:indicator-bottom{--indicator-t:auto;--indicator-b:0;--indicator-y:50%}.\32 xl\:indicator-middle{--indicator-t:50%;--indicator-b:50%;--indicator-y:-50%}.\32 xl\:indicator-top{--indicator-t:0;--indicator-b:auto;--indicator-y:-50%}}.input{cursor:text;border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;font-size:.875rem;display:inline-flex;position:relative;&:where(input){display:inline-flex}& :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(input[type=url]),& :where(input[type=email]){direction:ltr}& :where(input[type=date]){display:inline-block}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>input[disabled])>input[disabled]{cursor:not-allowed}&::-webkit-date-and-time-value{text-align:inherit}&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}&::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}}.input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.input-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.input-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.input-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.input-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.input-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.input-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.input-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.input-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}}}.input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}}}.input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.input-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-1rem;margin-inline-end:-.75rem}}}@media (width>=640px){.sm\:input{cursor:text;border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;font-size:.875rem;display:inline-flex;position:relative;&:where(input){display:inline-flex}& :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(input[type=url]),& :where(input[type=email]){direction:ltr}& :where(input[type=date]){display:inline-block}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>input[disabled])>input[disabled]{cursor:not-allowed}&::-webkit-date-and-time-value{text-align:inherit}&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}&::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}}.sm\:input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.sm\:input-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.sm\:input-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.sm\:input-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.sm\:input-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.sm\:input-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.sm\:input-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.sm\:input-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.sm\:input-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.sm\:input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}}}.sm\:input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}}}.sm\:input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.sm\:input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.sm\:input-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-1rem;margin-inline-end:-.75rem}}}}@media (width>=768px){.md\:input{cursor:text;border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;font-size:.875rem;display:inline-flex;position:relative;&:where(input){display:inline-flex}& :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(input[type=url]),& :where(input[type=email]){direction:ltr}& :where(input[type=date]){display:inline-block}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>input[disabled])>input[disabled]{cursor:not-allowed}&::-webkit-date-and-time-value{text-align:inherit}&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}&::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}}.md\:input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.md\:input-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.md\:input-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.md\:input-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.md\:input-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.md\:input-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.md\:input-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.md\:input-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.md\:input-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.md\:input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}}}.md\:input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}}}.md\:input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.md\:input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.md\:input-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-1rem;margin-inline-end:-.75rem}}}}@media (width>=1024px){.lg\:input{cursor:text;border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;font-size:.875rem;display:inline-flex;position:relative;&:where(input){display:inline-flex}& :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(input[type=url]),& :where(input[type=email]){direction:ltr}& :where(input[type=date]){display:inline-block}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>input[disabled])>input[disabled]{cursor:not-allowed}&::-webkit-date-and-time-value{text-align:inherit}&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}&::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}}.lg\:input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.lg\:input-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.lg\:input-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.lg\:input-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.lg\:input-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.lg\:input-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.lg\:input-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.lg\:input-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.lg\:input-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.lg\:input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}}}.lg\:input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}}}.lg\:input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.lg\:input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.lg\:input-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-1rem;margin-inline-end:-.75rem}}}}@media (width>=1280px){.xl\:input{cursor:text;border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;font-size:.875rem;display:inline-flex;position:relative;&:where(input){display:inline-flex}& :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(input[type=url]),& :where(input[type=email]){direction:ltr}& :where(input[type=date]){display:inline-block}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>input[disabled])>input[disabled]{cursor:not-allowed}&::-webkit-date-and-time-value{text-align:inherit}&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}&::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}}.xl\:input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.xl\:input-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.xl\:input-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.xl\:input-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.xl\:input-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.xl\:input-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.xl\:input-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.xl\:input-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.xl\:input-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.xl\:input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}}}.xl\:input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}}}.xl\:input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.xl\:input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.xl\:input-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-1rem;margin-inline-end:-.75rem}}}}@media (width>=1536px){.\32 xl\:input{cursor:text;border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;font-size:.875rem;display:inline-flex;position:relative;&:where(input){display:inline-flex}& :where(input){appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(input[type=url]),& :where(input[type=email]){direction:ltr}& :where(input[type=date]){display:inline-block}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>input[disabled])>input[disabled]{cursor:not-allowed}&::-webkit-date-and-time-value{text-align:inherit}&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}&::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}}.\32 xl\:input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.\32 xl\:input-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.\32 xl\:input-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.\32 xl\:input-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.\32 xl\:input-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.\32 xl\:input-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.\32 xl\:input-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.\32 xl\:input-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.\32 xl\:input-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.\32 xl\:input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}}}.\32 xl\:input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}}}.\32 xl\:input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.\32 xl\:input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}}}.\32 xl\:input-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem;&[type=number]{&::-webkit-inner-spin-button{margin-block:-1rem;margin-inline-end:-.75rem}}}}.cally{font-size:.7rem;&::part(container){user-select:none;padding:.5rem 1rem}& ::part(th){block-size:auto;font-weight:400}&::part(header){direction:ltr}& ::part(head){opacity:.5;font-size:.7rem}&::part(button){border-radius:var(--radius-field);background:0 0;border:none;padding:.5rem}&::part(button):hover{background:var(--color-base-200)}& ::part(day){border-radius:var(--radius-field);font-size:.7rem}& ::part(button day today){background:var(--color-primary);color:var(--color-primary-content)}& ::part(selected){color:var(--color-base-100);background:var(--color-base-content);border-radius:var(--radius-field)}& ::part(range-inner){border-radius:0}& ::part(range-start){border-start-end-radius:0;border-end-end-radius:0}& ::part(range-end){border-start-start-radius:0;border-end-start-radius:0}& ::part(range-start range-end){border-radius:var(--radius-field)}& calendar-month{width:100%}}.react-day-picker{user-select:none;background-color:var(--color-base-100);border-radius:var(--radius-box);border:var(--border)solid var(--color-base-200);font-size:.75rem;display:inline-block;position:relative;overflow:clip;&[dir=rtl]{& .rdp-nav{& .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}}}& *{box-sizing:border-box}& .rdp-day{text-align:center;width:2.25rem;height:2.25rem}& .rdp-day_button{cursor:pointer;font:inherit;color:inherit;border-radius:var(--radius-field);background:0 0;border:2px solid #0000;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;margin:0;padding:0;display:flex;&:disabled{cursor:revert}&:hover{background-color:var(--color-base-200)}}& .rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}& .rdp-button_next{border-radius:var(--radius-field);&:hover{background-color:var(--color-base-200)}}& .rdp-button_previous{border-radius:var(--radius-field);&:hover{background-color:var(--color-base-200)}}& .rdp-button_next,& .rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;background:0 0;border:none;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;margin:0;padding:0;display:inline-flex;position:relative;&:disabled{cursor:revert;opacity:.5}}& .rdp-chevron{fill:var(--color-base-content);width:1rem;height:1rem;display:inline-block}& .rdp-dropdowns{align-items:center;gap:.5rem;display:inline-flex;position:relative}& .rdp-dropdown{z-index:2;opacity:0;appearance:none;cursor:inherit;line-height:inherit;border:none;width:100%;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0;&:focus-visible{&~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}}}& .rdp-dropdown_root{align-items:center;display:inline-flex;position:relative;&[data-disabled=true]{& .rdp-chevron{opacity:.5}}}& .rdp-month_caption{height:2.75rem;font-size:.75rem;font-weight:inherit;place-content:center;display:flex}& .rdp-months{flex-wrap:wrap;gap:2rem;max-width:fit-content;padding:.5rem;display:flex;position:relative}& .rdp-month_grid{border-collapse:collapse}& .rdp-nav{inset-block-start:0;inset-inline-end:0;justify-content:space-between;align-items:center;width:100%;height:2.75rem;padding-inline:.5rem;display:flex;position:absolute;top:.25rem}& .rdp-weekday{opacity:.6;text-align:center;padding:.5rem 0;font-size:smaller;font-weight:500}& .rdp-week_number{opacity:.6;text-align:center;border:none;border-radius:100%;width:2.25rem;height:2.25rem;font-size:small;font-weight:400}& .rdp-today:not(.rdp-outside){& .rdp-day_button{background:var(--color-primary);color:var(--color-primary-content)}}& .rdp-selected{font-weight:inherit;font-size:.75rem;& .rdp-day_button{color:var(--color-base-100);background-color:var(--color-base-content);border-radius:var(--radius-field);border:none;&:hover{background-color:var(--color-base-content)}}}& .rdp-outside{opacity:.75}& .rdp-disabled{opacity:.5}& .rdp-hidden{visibility:hidden;color:var(--color-base-content)}& .rdp-range_start{& .rdp-day_button{border-radius:var(--radius-field)0 0 var(--radius-field)}}& .rdp-range_start .rdp-day_button{background-color:var(--color-base-content);color:var(--color-base-100)}& .rdp-range_middle{background-color:var(--color-base-200)}& .rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:inherit}& .rdp-range_end{color:var(--color-base-content);& .rdp-day_button{border-radius:0 var(--radius-field)var(--radius-field)0}}& .rdp-range_end .rdp-day_button{background-color:var(--color-base-content);color:var(--color-base-100)}& .rdp-range_start.rdp-range_end{background:revert}& .rdp-focusable{cursor:pointer}& .rdp-footer{border-top:var(--border)solid var(--color-base-200);padding:.5rem}}.pika-single{&:is(div){user-select:none;z-index:999;color:var(--color-base-content);background-color:var(--color-base-100);border-radius:var(--radius-box);border:var(--border)solid var(--color-base-200);padding:.5rem;font-size:.75rem;display:inline-block;position:relative;&:before,&:after{content:"";display:table}&:after{clear:both}&.is-hidden{display:none}&.is-bound{position:absolute}& .pika-lendar{float:left}& .pika-title{text-align:center;position:relative}& .pika-label{z-index:999;background-color:var(--color-base-100);margin:0;padding:5px 3px;display:inline-block;position:relative;overflow:hidden}& .pika-title{& select{cursor:pointer;z-index:999;opacity:0;margin:0;position:absolute;top:5px;left:0}}& .pika-prev,& .pika-next{cursor:pointer;color:#0000;border-radius:var(--radius-field);border:0;outline:none;width:2.25rem;height:2.25rem;font-size:1.2em;display:block;position:absolute;top:0;&:hover{background-color:var(--color-base-200)}&.is-disabled{cursor:default;opacity:.2}&:before{width:2.25rem;height:2.25rem;color:var(--color-base-content);line-height:2.25;display:inline-block}}& .pika-prev{left:0;&:before{content:"‹"}}& .pika-next{right:0;&:before{content:"›"}}& .pika-select{display:inline-block}& .pika-table{border-collapse:collapse;border-spacing:0;border:0;width:100%}& .pika-table{& th,& td{padding:0}& th{opacity:.6;text-align:center;width:2.25rem;height:2.25rem}}& .pika-button{cursor:pointer;text-align:right;text-align:center;border:0;outline:none;width:2.25rem;height:2.25rem;margin:0;padding:5px;display:block}& .pika-week{color:var(--color-base-content)}& .is-today{& .pika-button{background:var(--color-primary);color:var(--color-primary-content)}}& .is-selected,& .has-event{& .pika-button{&,&:hover{color:var(--color-base-100);background-color:var(--color-base-content);border-radius:var(--radius-field)}}}& .has-event{& .pika-button{background:var(--color-base-primary)}}& .is-disabled,& .is-inrange{& .pika-button{background:var(--color-base-primary)}}& .is-startrange{& .pika-button{color:var(--color-base-100);background:var(--color-base-content);border-radius:var(--radius-field)}}& .is-endrange{& .pika-button{color:var(--color-base-100);background:var(--color-base-content);border-radius:var(--radius-field)}}& .is-disabled{& .pika-button{pointer-events:none;cursor:default;color:var(--color-base-content);opacity:.3}}& .is-outside-current-month{& .pika-button{color:var(--color-base-content);opacity:.3}}& .is-selection-disabled{pointer-events:none;cursor:default}& .pika-button:hover,& .pika-row.pick-whole-week:hover .pika-button{color:var(--color-base-content);background-color:var(--color-base-200);border-radius:var(--radius-field)}& .pika-table abbr{font-weight:400;text-decoration:none}}}.radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size)/10);--radialprogress:calc(var(--value)*1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative;&:before{content:"";background:radial-gradient(farthest-side,currentColor 98%,#0000)top/var(--thickness)var(--thickness)no-repeat,conic-gradient(currentColor var(--radialprogress),#0000 0);-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}&:after{content:"";inset:calc(50% - var(--thickness)/2);transform:rotate(calc(var(--value)*3.6deg - 90deg))translate(calc(var(--size)/2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}}@media (width>=640px){.sm\:radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size)/10);--radialprogress:calc(var(--value)*1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative;&:before{content:"";background:radial-gradient(farthest-side,currentColor 98%,#0000)top/var(--thickness)var(--thickness)no-repeat,conic-gradient(currentColor var(--radialprogress),#0000 0);-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}&:after{content:"";inset:calc(50% - var(--thickness)/2);transform:rotate(calc(var(--value)*3.6deg - 90deg))translate(calc(var(--size)/2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}}}@media (width>=768px){.md\:radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size)/10);--radialprogress:calc(var(--value)*1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative;&:before{content:"";background:radial-gradient(farthest-side,currentColor 98%,#0000)top/var(--thickness)var(--thickness)no-repeat,conic-gradient(currentColor var(--radialprogress),#0000 0);-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}&:after{content:"";inset:calc(50% - var(--thickness)/2);transform:rotate(calc(var(--value)*3.6deg - 90deg))translate(calc(var(--size)/2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}}}@media (width>=1024px){.lg\:radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size)/10);--radialprogress:calc(var(--value)*1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative;&:before{content:"";background:radial-gradient(farthest-side,currentColor 98%,#0000)top/var(--thickness)var(--thickness)no-repeat,conic-gradient(currentColor var(--radialprogress),#0000 0);-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}&:after{content:"";inset:calc(50% - var(--thickness)/2);transform:rotate(calc(var(--value)*3.6deg - 90deg))translate(calc(var(--size)/2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}}}@media (width>=1280px){.xl\:radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size)/10);--radialprogress:calc(var(--value)*1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative;&:before{content:"";background:radial-gradient(farthest-side,currentColor 98%,#0000)top/var(--thickness)var(--thickness)no-repeat,conic-gradient(currentColor var(--radialprogress),#0000 0);-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}&:after{content:"";inset:calc(50% - var(--thickness)/2);transform:rotate(calc(var(--value)*3.6deg - 90deg))translate(calc(var(--size)/2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}}}@media (width>=1536px){.\32 xl\:radial-progress{height:var(--size);width:var(--size);vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size)/10);--radialprogress:calc(var(--value)*1%);background-color:#0000;border-radius:3.40282e38px;place-content:center;transition:--radialprogress .3s linear;display:inline-grid;position:relative;&:before{content:"";background:radial-gradient(farthest-side,currentColor 98%,#0000)top/var(--thickness)var(--thickness)no-repeat,conic-gradient(currentColor var(--radialprogress),#0000 0);-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));mask:radial-gradient(farthest-side,#0000 calc(100% - var(--thickness)),#000 calc(100% + .5px - var(--thickness)));border-radius:3.40282e38px;position:absolute;inset:0}&:after{content:"";inset:calc(50% - var(--thickness)/2);transform:rotate(calc(var(--value)*3.6deg - 90deg))translate(calc(var(--size)/2 - 50%));background-color:currentColor;border-radius:3.40282e38px;transition:transform .3s linear;position:absolute}}}.fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.fieldset-label{color:color-mix(in oklab,var(--color-base-content)60%,transparent);align-items:center;gap:.375rem;display:flex;&:has(input){cursor:pointer}}@media (width>=640px){.sm\:fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.sm\:fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.sm\:fieldset-label{color:color-mix(in oklab,var(--color-base-content)60%,transparent);align-items:center;gap:.375rem;display:flex;&:has(input){cursor:pointer}}}@media (width>=768px){.md\:fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.md\:fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.md\:fieldset-label{color:color-mix(in oklab,var(--color-base-content)60%,transparent);align-items:center;gap:.375rem;display:flex;&:has(input){cursor:pointer}}}@media (width>=1024px){.lg\:fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.lg\:fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.lg\:fieldset-label{color:color-mix(in oklab,var(--color-base-content)60%,transparent);align-items:center;gap:.375rem;display:flex;&:has(input){cursor:pointer}}}@media (width>=1280px){.xl\:fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.xl\:fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.xl\:fieldset-label{color:color-mix(in oklab,var(--color-base-content)60%,transparent);align-items:center;gap:.375rem;display:flex;&:has(input){cursor:pointer}}}@media (width>=1536px){.\32 xl\:fieldset{grid-template-columns:1fr;grid-auto-rows:max-content;gap:.375rem;padding-block:.25rem;font-size:.75rem;display:grid}.\32 xl\:fieldset-legend{color:var(--color-base-content);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:-.25rem;padding-block:.5rem;font-weight:600;display:flex}.\32 xl\:fieldset-label{color:color-mix(in oklab,var(--color-base-content)60%,transparent);align-items:center;gap:.375rem;display:flex;&:has(input){cursor:pointer}}}.hero{background-position:50%;background-size:cover;place-items:center;width:100%;display:grid;&>*{grid-row-start:1;grid-column-start:1}}.hero-overlay{background-color:color-mix(in oklab,var(--color-neutral)50%,transparent);grid-row-start:1;grid-column-start:1;width:100%;height:100%}.hero-content{isolation:isolate;justify-content:center;align-items:center;gap:1rem;max-width:80rem;padding:1rem;display:flex}@media (width>=640px){.sm\:hero{background-position:50%;background-size:cover;place-items:center;width:100%;display:grid;&>*{grid-row-start:1;grid-column-start:1}}.sm\:hero-overlay{background-color:color-mix(in oklab,var(--color-neutral)50%,transparent);grid-row-start:1;grid-column-start:1;width:100%;height:100%}.sm\:hero-content{isolation:isolate;justify-content:center;align-items:center;gap:1rem;max-width:80rem;padding:1rem;display:flex}}@media (width>=768px){.md\:hero{background-position:50%;background-size:cover;place-items:center;width:100%;display:grid;&>*{grid-row-start:1;grid-column-start:1}}.md\:hero-overlay{background-color:color-mix(in oklab,var(--color-neutral)50%,transparent);grid-row-start:1;grid-column-start:1;width:100%;height:100%}.md\:hero-content{isolation:isolate;justify-content:center;align-items:center;gap:1rem;max-width:80rem;padding:1rem;display:flex}}@media (width>=1024px){.lg\:hero{background-position:50%;background-size:cover;place-items:center;width:100%;display:grid;&>*{grid-row-start:1;grid-column-start:1}}.lg\:hero-overlay{background-color:color-mix(in oklab,var(--color-neutral)50%,transparent);grid-row-start:1;grid-column-start:1;width:100%;height:100%}.lg\:hero-content{isolation:isolate;justify-content:center;align-items:center;gap:1rem;max-width:80rem;padding:1rem;display:flex}}@media (width>=1280px){.xl\:hero{background-position:50%;background-size:cover;place-items:center;width:100%;display:grid;&>*{grid-row-start:1;grid-column-start:1}}.xl\:hero-overlay{background-color:color-mix(in oklab,var(--color-neutral)50%,transparent);grid-row-start:1;grid-column-start:1;width:100%;height:100%}.xl\:hero-content{isolation:isolate;justify-content:center;align-items:center;gap:1rem;max-width:80rem;padding:1rem;display:flex}}@media (width>=1536px){.\32 xl\:hero{background-position:50%;background-size:cover;place-items:center;width:100%;display:grid;&>*{grid-row-start:1;grid-column-start:1}}.\32 xl\:hero-overlay{background-color:color-mix(in oklab,var(--color-neutral)50%,transparent);grid-row-start:1;grid-column-start:1;width:100%;height:100%}.\32 xl\:hero-content{isolation:isolate;justify-content:center;align-items:center;gap:1rem;max-width:80rem;padding:1rem;display:flex}}.progress{appearance:none;border-radius:var(--radius-box);background-color:color-mix(in oklab,currentColor 20%,transparent);width:100%;height:.5rem;color:var(--color-base-content);position:relative;overflow:hidden;&:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress;@supports ((-moz-appearance:none)){&::-moz-progress-bar{background-color:#0000;background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}}@supports ((-moz-appearance:none)){&::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){&::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}&::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}}.progress-primary{color:var(--color-primary)}.progress-secondary{color:var(--color-secondary)}.progress-accent{color:var(--color-accent)}.progress-neutral{color:var(--color-neutral)}.progress-info{color:var(--color-info)}.progress-success{color:var(--color-success)}.progress-warning{color:var(--color-warning)}.progress-error{color:var(--color-error)}@keyframes progress{50%{background-position-x:-115%}}@media (width>=640px){.sm\:progress{appearance:none;border-radius:var(--radius-box);background-color:color-mix(in oklab,currentColor 20%,transparent);width:100%;height:.5rem;color:var(--color-base-content);position:relative;overflow:hidden;&:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress;@supports ((-moz-appearance:none)){&::-moz-progress-bar{background-color:#0000;background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}}@supports ((-moz-appearance:none)){&::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){&::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}&::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}}.sm\:progress-primary{color:var(--color-primary)}.sm\:progress-secondary{color:var(--color-secondary)}.sm\:progress-accent{color:var(--color-accent)}.sm\:progress-neutral{color:var(--color-neutral)}.sm\:progress-info{color:var(--color-info)}.sm\:progress-success{color:var(--color-success)}.sm\:progress-warning{color:var(--color-warning)}.sm\:progress-error{color:var(--color-error)}}@media (width>=768px){.md\:progress{appearance:none;border-radius:var(--radius-box);background-color:color-mix(in oklab,currentColor 20%,transparent);width:100%;height:.5rem;color:var(--color-base-content);position:relative;overflow:hidden;&:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress;@supports ((-moz-appearance:none)){&::-moz-progress-bar{background-color:#0000;background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}}@supports ((-moz-appearance:none)){&::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){&::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}&::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}}.md\:progress-primary{color:var(--color-primary)}.md\:progress-secondary{color:var(--color-secondary)}.md\:progress-accent{color:var(--color-accent)}.md\:progress-neutral{color:var(--color-neutral)}.md\:progress-info{color:var(--color-info)}.md\:progress-success{color:var(--color-success)}.md\:progress-warning{color:var(--color-warning)}.md\:progress-error{color:var(--color-error)}}@media (width>=1024px){.lg\:progress{appearance:none;border-radius:var(--radius-box);background-color:color-mix(in oklab,currentColor 20%,transparent);width:100%;height:.5rem;color:var(--color-base-content);position:relative;overflow:hidden;&:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress;@supports ((-moz-appearance:none)){&::-moz-progress-bar{background-color:#0000;background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}}@supports ((-moz-appearance:none)){&::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){&::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}&::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}}.lg\:progress-primary{color:var(--color-primary)}.lg\:progress-secondary{color:var(--color-secondary)}.lg\:progress-accent{color:var(--color-accent)}.lg\:progress-neutral{color:var(--color-neutral)}.lg\:progress-info{color:var(--color-info)}.lg\:progress-success{color:var(--color-success)}.lg\:progress-warning{color:var(--color-warning)}.lg\:progress-error{color:var(--color-error)}}@media (width>=1280px){.xl\:progress{appearance:none;border-radius:var(--radius-box);background-color:color-mix(in oklab,currentColor 20%,transparent);width:100%;height:.5rem;color:var(--color-base-content);position:relative;overflow:hidden;&:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress;@supports ((-moz-appearance:none)){&::-moz-progress-bar{background-color:#0000;background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}}@supports ((-moz-appearance:none)){&::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){&::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}&::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}}.xl\:progress-primary{color:var(--color-primary)}.xl\:progress-secondary{color:var(--color-secondary)}.xl\:progress-accent{color:var(--color-accent)}.xl\:progress-neutral{color:var(--color-neutral)}.xl\:progress-info{color:var(--color-info)}.xl\:progress-success{color:var(--color-success)}.xl\:progress-warning{color:var(--color-warning)}.xl\:progress-error{color:var(--color-error)}}@media (width>=1536px){.\32 xl\:progress{appearance:none;border-radius:var(--radius-box);background-color:color-mix(in oklab,currentColor 20%,transparent);width:100%;height:.5rem;color:var(--color-base-content);position:relative;overflow:hidden;&:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress;@supports ((-moz-appearance:none)){&::-moz-progress-bar{background-color:#0000;background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}}@supports ((-moz-appearance:none)){&::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){&::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}&::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}}.\32 xl\:progress-primary{color:var(--color-primary)}.\32 xl\:progress-secondary{color:var(--color-secondary)}.\32 xl\:progress-accent{color:var(--color-accent)}.\32 xl\:progress-neutral{color:var(--color-neutral)}.\32 xl\:progress-info{color:var(--color-info)}.\32 xl\:progress-success{color:var(--color-success)}.\32 xl\:progress-warning{color:var(--color-warning)}.\32 xl\:progress-error{color:var(--color-error)}}.drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.drawer-side{pointer-events:none;visibility:hidden;inset-inline-start:0;z-index:1;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete,visibility .3s ease-out .1s allow-discrete;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0;overflow:hidden;&>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}&>*{grid-row-start:1;grid-column-start:1}&>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out;translate:-100%;[dir=rtl] &{translate:100%}}}.drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked{&~.drawer-side{pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto;&>:not(.drawer-overlay){translate:0%}}}&:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}}.drawer-end{grid-auto-columns:auto max-content;&>.drawer-toggle{&~.drawer-content{grid-column-start:1}&~.drawer-side{grid-column-start:2;justify-items:end}&~.drawer-side>:not(.drawer-overlay){translate:100%;[dir=rtl] &{translate:-100%}}&:checked~.drawer-side>:not(.drawer-overlay){translate:0%}}}.drawer-open{&>.drawer-side{overflow-y:auto}&>.drawer-toggle{display:none;&~.drawer-side{pointer-events:auto;visibility:visible;overscroll-behavior:auto;opacity:1;width:auto;display:block;position:sticky;&>.drawer-overlay{cursor:default;background-color:#0000}&>:not(.drawer-overlay){translate:0%;[dir=rtl] &{translate:0%}}}&:checked~.drawer-side{pointer-events:auto;visibility:visible}}}@media (width>=640px){.sm\:drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.sm\:drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.sm\:drawer-side{pointer-events:none;visibility:hidden;inset-inline-start:0;z-index:1;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete,visibility .3s ease-out .1s allow-discrete;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0;overflow:hidden;&>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}&>*{grid-row-start:1;grid-column-start:1}&>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out;translate:-100%;[dir=rtl] &{translate:100%}}}.sm\:drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked{&~.drawer-side{pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto;&>:not(.drawer-overlay){translate:0%}}}&:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}}.sm\:drawer-end{grid-auto-columns:auto max-content;&>.drawer-toggle{&~.drawer-content{grid-column-start:1}&~.drawer-side{grid-column-start:2;justify-items:end}&~.drawer-side>:not(.drawer-overlay){translate:100%;[dir=rtl] &{translate:-100%}}&:checked~.drawer-side>:not(.drawer-overlay){translate:0%}}}.sm\:drawer-open{&>.drawer-side{overflow-y:auto}&>.drawer-toggle{display:none;&~.drawer-side{pointer-events:auto;visibility:visible;overscroll-behavior:auto;opacity:1;width:auto;display:block;position:sticky;&>.drawer-overlay{cursor:default;background-color:#0000}&>:not(.drawer-overlay){translate:0%;[dir=rtl] &{translate:0%}}}&:checked~.drawer-side{pointer-events:auto;visibility:visible}}}}@media (width>=768px){.md\:drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.md\:drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.md\:drawer-side{pointer-events:none;visibility:hidden;inset-inline-start:0;z-index:1;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete,visibility .3s ease-out .1s allow-discrete;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0;overflow:hidden;&>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}&>*{grid-row-start:1;grid-column-start:1}&>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out;translate:-100%;[dir=rtl] &{translate:100%}}}.md\:drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked{&~.drawer-side{pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto;&>:not(.drawer-overlay){translate:0%}}}&:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}}.md\:drawer-end{grid-auto-columns:auto max-content;&>.drawer-toggle{&~.drawer-content{grid-column-start:1}&~.drawer-side{grid-column-start:2;justify-items:end}&~.drawer-side>:not(.drawer-overlay){translate:100%;[dir=rtl] &{translate:-100%}}&:checked~.drawer-side>:not(.drawer-overlay){translate:0%}}}.md\:drawer-open{&>.drawer-side{overflow-y:auto}&>.drawer-toggle{display:none;&~.drawer-side{pointer-events:auto;visibility:visible;overscroll-behavior:auto;opacity:1;width:auto;display:block;position:sticky;&>.drawer-overlay{cursor:default;background-color:#0000}&>:not(.drawer-overlay){translate:0%;[dir=rtl] &{translate:0%}}}&:checked~.drawer-side{pointer-events:auto;visibility:visible}}}}@media (width>=1024px){.lg\:drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.lg\:drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.lg\:drawer-side{pointer-events:none;visibility:hidden;inset-inline-start:0;z-index:1;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete,visibility .3s ease-out .1s allow-discrete;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0;overflow:hidden;&>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}&>*{grid-row-start:1;grid-column-start:1}&>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out;translate:-100%;[dir=rtl] &{translate:100%}}}.lg\:drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked{&~.drawer-side{pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto;&>:not(.drawer-overlay){translate:0%}}}&:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}}.lg\:drawer-end{grid-auto-columns:auto max-content;&>.drawer-toggle{&~.drawer-content{grid-column-start:1}&~.drawer-side{grid-column-start:2;justify-items:end}&~.drawer-side>:not(.drawer-overlay){translate:100%;[dir=rtl] &{translate:-100%}}&:checked~.drawer-side>:not(.drawer-overlay){translate:0%}}}.lg\:drawer-open{&>.drawer-side{overflow-y:auto}&>.drawer-toggle{display:none;&~.drawer-side{pointer-events:auto;visibility:visible;overscroll-behavior:auto;opacity:1;width:auto;display:block;position:sticky;&>.drawer-overlay{cursor:default;background-color:#0000}&>:not(.drawer-overlay){translate:0%;[dir=rtl] &{translate:0%}}}&:checked~.drawer-side{pointer-events:auto;visibility:visible}}}}@media (width>=1280px){.xl\:drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.xl\:drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.xl\:drawer-side{pointer-events:none;visibility:hidden;inset-inline-start:0;z-index:1;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete,visibility .3s ease-out .1s allow-discrete;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0;overflow:hidden;&>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}&>*{grid-row-start:1;grid-column-start:1}&>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out;translate:-100%;[dir=rtl] &{translate:100%}}}.xl\:drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked{&~.drawer-side{pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto;&>:not(.drawer-overlay){translate:0%}}}&:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}}.xl\:drawer-end{grid-auto-columns:auto max-content;&>.drawer-toggle{&~.drawer-content{grid-column-start:1}&~.drawer-side{grid-column-start:2;justify-items:end}&~.drawer-side>:not(.drawer-overlay){translate:100%;[dir=rtl] &{translate:-100%}}&:checked~.drawer-side>:not(.drawer-overlay){translate:0%}}}.xl\:drawer-open{&>.drawer-side{overflow-y:auto}&>.drawer-toggle{display:none;&~.drawer-side{pointer-events:auto;visibility:visible;overscroll-behavior:auto;opacity:1;width:auto;display:block;position:sticky;&>.drawer-overlay{cursor:default;background-color:#0000}&>:not(.drawer-overlay){translate:0%;[dir=rtl] &{translate:0%}}}&:checked~.drawer-side{pointer-events:auto;visibility:visible}}}}@media (width>=1536px){.\32 xl\:drawer{grid-auto-columns:max-content auto;width:100%;display:grid;position:relative}.\32 xl\:drawer-content{grid-row-start:1;grid-column-start:2;min-width:0}.\32 xl\:drawer-side{pointer-events:none;visibility:hidden;inset-inline-start:0;z-index:1;overscroll-behavior:contain;opacity:0;width:100%;transition:opacity .2s ease-out .1s allow-discrete,visibility .3s ease-out .1s allow-discrete;grid-template-rows:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,minmax(0,1fr));grid-row-start:1;grid-column-start:1;place-items:flex-start start;height:100dvh;display:grid;position:fixed;top:0;overflow:hidden;&>.drawer-overlay{cursor:pointer;background-color:oklch(0% 0 0/.4);place-self:stretch stretch;position:sticky;top:0}&>*{grid-row-start:1;grid-column-start:1}&>:not(.drawer-overlay){will-change:transform;transition:translate .3s ease-out;translate:-100%;[dir=rtl] &{translate:100%}}}.\32 xl\:drawer-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked{&~.drawer-side{pointer-events:auto;visibility:visible;opacity:1;overflow-y:auto;&>:not(.drawer-overlay){translate:0%}}}&:focus-visible~.drawer-content label.drawer-button{outline-offset:2px;outline:2px solid}}.\32 xl\:drawer-end{grid-auto-columns:auto max-content;&>.drawer-toggle{&~.drawer-content{grid-column-start:1}&~.drawer-side{grid-column-start:2;justify-items:end}&~.drawer-side>:not(.drawer-overlay){translate:100%;[dir=rtl] &{translate:-100%}}&:checked~.drawer-side>:not(.drawer-overlay){translate:0%}}}.\32 xl\:drawer-open{&>.drawer-side{overflow-y:auto}&>.drawer-toggle{display:none;&~.drawer-side{pointer-events:auto;visibility:visible;overscroll-behavior:auto;opacity:1;width:auto;display:block;position:sticky;&>.drawer-overlay{cursor:default;background-color:#0000}&>:not(.drawer-overlay){translate:0%;[dir=rtl] &{translate:0%}}}&:checked~.drawer-side{pointer-events:auto;visibility:visible}}}}.range{-webkit-appearance:none;appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem)*6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:color-mix(in oklab,currentColor 10%,#0000);cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden;[dir=rtl] &{--range-dir:-1}&:focus{outline:none}&:focus-visible{outline-offset:2px;outline:2px solid}&::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-webkit-slider-runnable-track{border:1px solid}}&::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;-webkit-appearance:none;appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%;transform:translateY(-50%)}&::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-moz-range-track{border:1px solid}}&::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%}&:disabled{cursor:not-allowed;opacity:.3}}.range-primary{color:var(--color-primary);--range-thumb:var(--color-primary-content)}.range-secondary{color:var(--color-secondary);--range-thumb:var(--color-secondary-content)}.range-accent{color:var(--color-accent);--range-thumb:var(--color-accent-content)}.range-neutral{color:var(--color-neutral);--range-thumb:var(--color-neutral-content)}.range-success{color:var(--color-success);--range-thumb:var(--color-success-content)}.range-warning{color:var(--color-warning);--range-thumb:var(--color-warning-content)}.range-info{color:var(--color-info);--range-thumb:var(--color-info-content)}.range-error{color:var(--color-error);--range-thumb:var(--color-error-content)}.range-xs{--range-thumb-size:calc(var(--size-selector,.25rem)*4)}.range-sm{--range-thumb-size:calc(var(--size-selector,.25rem)*5)}.range-md{--range-thumb-size:calc(var(--size-selector,.25rem)*6)}.range-lg{--range-thumb-size:calc(var(--size-selector,.25rem)*7)}.range-xl{--range-thumb-size:calc(var(--size-selector,.25rem)*8)}@media (width>=640px){.sm\:range{-webkit-appearance:none;appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem)*6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:color-mix(in oklab,currentColor 10%,#0000);cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden;[dir=rtl] &{--range-dir:-1}&:focus{outline:none}&:focus-visible{outline-offset:2px;outline:2px solid}&::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-webkit-slider-runnable-track{border:1px solid}}&::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;-webkit-appearance:none;appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%;transform:translateY(-50%)}&::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-moz-range-track{border:1px solid}}&::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%}&:disabled{cursor:not-allowed;opacity:.3}}.sm\:range-primary{color:var(--color-primary);--range-thumb:var(--color-primary-content)}.sm\:range-secondary{color:var(--color-secondary);--range-thumb:var(--color-secondary-content)}.sm\:range-accent{color:var(--color-accent);--range-thumb:var(--color-accent-content)}.sm\:range-neutral{color:var(--color-neutral);--range-thumb:var(--color-neutral-content)}.sm\:range-success{color:var(--color-success);--range-thumb:var(--color-success-content)}.sm\:range-warning{color:var(--color-warning);--range-thumb:var(--color-warning-content)}.sm\:range-info{color:var(--color-info);--range-thumb:var(--color-info-content)}.sm\:range-error{color:var(--color-error);--range-thumb:var(--color-error-content)}.sm\:range-xs{--range-thumb-size:calc(var(--size-selector,.25rem)*4)}.sm\:range-sm{--range-thumb-size:calc(var(--size-selector,.25rem)*5)}.sm\:range-md{--range-thumb-size:calc(var(--size-selector,.25rem)*6)}.sm\:range-lg{--range-thumb-size:calc(var(--size-selector,.25rem)*7)}.sm\:range-xl{--range-thumb-size:calc(var(--size-selector,.25rem)*8)}}@media (width>=768px){.md\:range{-webkit-appearance:none;appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem)*6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:color-mix(in oklab,currentColor 10%,#0000);cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden;[dir=rtl] &{--range-dir:-1}&:focus{outline:none}&:focus-visible{outline-offset:2px;outline:2px solid}&::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-webkit-slider-runnable-track{border:1px solid}}&::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;-webkit-appearance:none;appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%;transform:translateY(-50%)}&::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-moz-range-track{border:1px solid}}&::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%}&:disabled{cursor:not-allowed;opacity:.3}}.md\:range-primary{color:var(--color-primary);--range-thumb:var(--color-primary-content)}.md\:range-secondary{color:var(--color-secondary);--range-thumb:var(--color-secondary-content)}.md\:range-accent{color:var(--color-accent);--range-thumb:var(--color-accent-content)}.md\:range-neutral{color:var(--color-neutral);--range-thumb:var(--color-neutral-content)}.md\:range-success{color:var(--color-success);--range-thumb:var(--color-success-content)}.md\:range-warning{color:var(--color-warning);--range-thumb:var(--color-warning-content)}.md\:range-info{color:var(--color-info);--range-thumb:var(--color-info-content)}.md\:range-error{color:var(--color-error);--range-thumb:var(--color-error-content)}.md\:range-xs{--range-thumb-size:calc(var(--size-selector,.25rem)*4)}.md\:range-sm{--range-thumb-size:calc(var(--size-selector,.25rem)*5)}.md\:range-md{--range-thumb-size:calc(var(--size-selector,.25rem)*6)}.md\:range-lg{--range-thumb-size:calc(var(--size-selector,.25rem)*7)}.md\:range-xl{--range-thumb-size:calc(var(--size-selector,.25rem)*8)}}@media (width>=1024px){.lg\:range{-webkit-appearance:none;appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem)*6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:color-mix(in oklab,currentColor 10%,#0000);cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden;[dir=rtl] &{--range-dir:-1}&:focus{outline:none}&:focus-visible{outline-offset:2px;outline:2px solid}&::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-webkit-slider-runnable-track{border:1px solid}}&::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;-webkit-appearance:none;appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%;transform:translateY(-50%)}&::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-moz-range-track{border:1px solid}}&::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%}&:disabled{cursor:not-allowed;opacity:.3}}.lg\:range-primary{color:var(--color-primary);--range-thumb:var(--color-primary-content)}.lg\:range-secondary{color:var(--color-secondary);--range-thumb:var(--color-secondary-content)}.lg\:range-accent{color:var(--color-accent);--range-thumb:var(--color-accent-content)}.lg\:range-neutral{color:var(--color-neutral);--range-thumb:var(--color-neutral-content)}.lg\:range-success{color:var(--color-success);--range-thumb:var(--color-success-content)}.lg\:range-warning{color:var(--color-warning);--range-thumb:var(--color-warning-content)}.lg\:range-info{color:var(--color-info);--range-thumb:var(--color-info-content)}.lg\:range-error{color:var(--color-error);--range-thumb:var(--color-error-content)}.lg\:range-xs{--range-thumb-size:calc(var(--size-selector,.25rem)*4)}.lg\:range-sm{--range-thumb-size:calc(var(--size-selector,.25rem)*5)}.lg\:range-md{--range-thumb-size:calc(var(--size-selector,.25rem)*6)}.lg\:range-lg{--range-thumb-size:calc(var(--size-selector,.25rem)*7)}.lg\:range-xl{--range-thumb-size:calc(var(--size-selector,.25rem)*8)}}@media (width>=1280px){.xl\:range{-webkit-appearance:none;appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem)*6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:color-mix(in oklab,currentColor 10%,#0000);cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden;[dir=rtl] &{--range-dir:-1}&:focus{outline:none}&:focus-visible{outline-offset:2px;outline:2px solid}&::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-webkit-slider-runnable-track{border:1px solid}}&::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;-webkit-appearance:none;appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%;transform:translateY(-50%)}&::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-moz-range-track{border:1px solid}}&::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%}&:disabled{cursor:not-allowed;opacity:.3}}.xl\:range-primary{color:var(--color-primary);--range-thumb:var(--color-primary-content)}.xl\:range-secondary{color:var(--color-secondary);--range-thumb:var(--color-secondary-content)}.xl\:range-accent{color:var(--color-accent);--range-thumb:var(--color-accent-content)}.xl\:range-neutral{color:var(--color-neutral);--range-thumb:var(--color-neutral-content)}.xl\:range-success{color:var(--color-success);--range-thumb:var(--color-success-content)}.xl\:range-warning{color:var(--color-warning);--range-thumb:var(--color-warning-content)}.xl\:range-info{color:var(--color-info);--range-thumb:var(--color-info-content)}.xl\:range-error{color:var(--color-error);--range-thumb:var(--color-error-content)}.xl\:range-xs{--range-thumb-size:calc(var(--size-selector,.25rem)*4)}.xl\:range-sm{--range-thumb-size:calc(var(--size-selector,.25rem)*5)}.xl\:range-md{--range-thumb-size:calc(var(--size-selector,.25rem)*6)}.xl\:range-lg{--range-thumb-size:calc(var(--size-selector,.25rem)*7)}.xl\:range-xl{--range-thumb-size:calc(var(--size-selector,.25rem)*8)}}@media (width>=1536px){.\32 xl\:range{-webkit-appearance:none;appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem)*6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:color-mix(in oklab,currentColor 10%,#0000);cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden;[dir=rtl] &{--range-dir:-1}&:focus{outline:none}&:focus-visible{outline-offset:2px;outline:2px solid}&::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-webkit-slider-runnable-track{border:1px solid}}&::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;-webkit-appearance:none;appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%;transform:translateY(-50%)}&::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){&::-moz-range-track{border:1px solid}}&::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%}&:disabled{cursor:not-allowed;opacity:.3}}.\32 xl\:range-primary{color:var(--color-primary);--range-thumb:var(--color-primary-content)}.\32 xl\:range-secondary{color:var(--color-secondary);--range-thumb:var(--color-secondary-content)}.\32 xl\:range-accent{color:var(--color-accent);--range-thumb:var(--color-accent-content)}.\32 xl\:range-neutral{color:var(--color-neutral);--range-thumb:var(--color-neutral-content)}.\32 xl\:range-success{color:var(--color-success);--range-thumb:var(--color-success-content)}.\32 xl\:range-warning{color:var(--color-warning);--range-thumb:var(--color-warning-content)}.\32 xl\:range-info{color:var(--color-info);--range-thumb:var(--color-info-content)}.\32 xl\:range-error{color:var(--color-error);--range-thumb:var(--color-error-content)}.\32 xl\:range-xs{--range-thumb-size:calc(var(--size-selector,.25rem)*4)}.\32 xl\:range-sm{--range-thumb-size:calc(var(--size-selector,.25rem)*5)}.\32 xl\:range-md{--range-thumb-size:calc(var(--size-selector,.25rem)*6)}.\32 xl\:range-lg{--range-thumb-size:calc(var(--size-selector,.25rem)*7)}.\32 xl\:range-xl{--range-thumb-size:calc(var(--size-selector,.25rem)*8)}}.breadcrumbs{max-width:100%;padding-block:.5rem;overflow-x:auto;&>menu,&>ul,&>ol{white-space:nowrap;align-items:center;min-height:min-content;display:flex;&>li{align-items:center;display:flex;&>*{cursor:pointer;align-items:center;gap:.5rem;display:flex;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}&+:before{content:"";opacity:.4;background-color:#0000;border-top:1px solid;border-right:1px solid;width:.375rem;height:.375rem;margin-left:.5rem;margin-right:.75rem;display:block;rotate:45deg}[dir=rtl] &+:before{rotate:-135deg}}}}@media (width>=640px){.sm\:breadcrumbs{max-width:100%;padding-block:.5rem;overflow-x:auto;&>menu,&>ul,&>ol{white-space:nowrap;align-items:center;min-height:min-content;display:flex;&>li{align-items:center;display:flex;&>*{cursor:pointer;align-items:center;gap:.5rem;display:flex;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}&+:before{content:"";opacity:.4;background-color:#0000;border-top:1px solid;border-right:1px solid;width:.375rem;height:.375rem;margin-left:.5rem;margin-right:.75rem;display:block;rotate:45deg}[dir=rtl] &+:before{rotate:-135deg}}}}}@media (width>=768px){.md\:breadcrumbs{max-width:100%;padding-block:.5rem;overflow-x:auto;&>menu,&>ul,&>ol{white-space:nowrap;align-items:center;min-height:min-content;display:flex;&>li{align-items:center;display:flex;&>*{cursor:pointer;align-items:center;gap:.5rem;display:flex;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}&+:before{content:"";opacity:.4;background-color:#0000;border-top:1px solid;border-right:1px solid;width:.375rem;height:.375rem;margin-left:.5rem;margin-right:.75rem;display:block;rotate:45deg}[dir=rtl] &+:before{rotate:-135deg}}}}}@media (width>=1024px){.lg\:breadcrumbs{max-width:100%;padding-block:.5rem;overflow-x:auto;&>menu,&>ul,&>ol{white-space:nowrap;align-items:center;min-height:min-content;display:flex;&>li{align-items:center;display:flex;&>*{cursor:pointer;align-items:center;gap:.5rem;display:flex;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}&+:before{content:"";opacity:.4;background-color:#0000;border-top:1px solid;border-right:1px solid;width:.375rem;height:.375rem;margin-left:.5rem;margin-right:.75rem;display:block;rotate:45deg}[dir=rtl] &+:before{rotate:-135deg}}}}}@media (width>=1280px){.xl\:breadcrumbs{max-width:100%;padding-block:.5rem;overflow-x:auto;&>menu,&>ul,&>ol{white-space:nowrap;align-items:center;min-height:min-content;display:flex;&>li{align-items:center;display:flex;&>*{cursor:pointer;align-items:center;gap:.5rem;display:flex;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}&+:before{content:"";opacity:.4;background-color:#0000;border-top:1px solid;border-right:1px solid;width:.375rem;height:.375rem;margin-left:.5rem;margin-right:.75rem;display:block;rotate:45deg}[dir=rtl] &+:before{rotate:-135deg}}}}}@media (width>=1536px){.\32 xl\:breadcrumbs{max-width:100%;padding-block:.5rem;overflow-x:auto;&>menu,&>ul,&>ol{white-space:nowrap;align-items:center;min-height:min-content;display:flex;&>li{align-items:center;display:flex;&>*{cursor:pointer;align-items:center;gap:.5rem;display:flex;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}&+:before{content:"";opacity:.4;background-color:#0000;border-top:1px solid;border-right:1px solid;width:.375rem;height:.375rem;margin-left:.5rem;margin-right:.75rem;display:block;rotate:45deg}[dir=rtl] &+:before{rotate:-135deg}}}}}.chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");column-gap:.75rem;padding-block:.25rem;display:grid}.chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative;&:before{background-color:inherit;content:"";width:.75rem;height:.75rem;mask-repeat:no-repeat;mask-image:var(--mask-chat);position:absolute;bottom:0;mask-position:0 -1px;mask-size:13px}}.chat-bubble-primary{background-color:var(--color-primary);color:var(--color-primary-content)}.chat-bubble-secondary{background-color:var(--color-secondary);color:var(--color-secondary-content)}.chat-bubble-accent{background-color:var(--color-accent);color:var(--color-accent-content)}.chat-bubble-neutral{background-color:var(--color-neutral);color:var(--color-neutral-content)}.chat-bubble-info{background-color:var(--color-info);color:var(--color-info-content)}.chat-bubble-success{background-color:var(--color-success);color:var(--color-success-content)}.chat-bubble-warning{background-color:var(--color-warning);color:var(--color-warning-content)}.chat-bubble-error{background-color:var(--color-error);color:var(--color-error-content)}.chat-image{grid-row:span 2/span 2;align-self:flex-end}.chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.chat-start{grid-template-columns:auto 1fr;place-items:start;& .chat-header,& .chat-footer{grid-column-start:2}& .chat-image{grid-column-start:1}& .chat-bubble{border-end-start-radius:0;grid-column-start:2;&:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] &:before{transform:rotateY(180deg)}}}.chat-end{grid-template-columns:1fr auto;place-items:end;& .chat-header,& .chat-footer{grid-column-start:1}& .chat-image{grid-column-start:2}& .chat-bubble{border-end-end-radius:0;grid-column-start:1;&:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] &:before{transform:rotateY(0)}}}@media (width>=640px){.sm\:chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");column-gap:.75rem;padding-block:.25rem;display:grid}.sm\:chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative;&:before{background-color:inherit;content:"";width:.75rem;height:.75rem;mask-repeat:no-repeat;mask-image:var(--mask-chat);position:absolute;bottom:0;mask-position:0 -1px;mask-size:13px}}.sm\:chat-bubble-primary{background-color:var(--color-primary);color:var(--color-primary-content)}.sm\:chat-bubble-secondary{background-color:var(--color-secondary);color:var(--color-secondary-content)}.sm\:chat-bubble-accent{background-color:var(--color-accent);color:var(--color-accent-content)}.sm\:chat-bubble-neutral{background-color:var(--color-neutral);color:var(--color-neutral-content)}.sm\:chat-bubble-info{background-color:var(--color-info);color:var(--color-info-content)}.sm\:chat-bubble-success{background-color:var(--color-success);color:var(--color-success-content)}.sm\:chat-bubble-warning{background-color:var(--color-warning);color:var(--color-warning-content)}.sm\:chat-bubble-error{background-color:var(--color-error);color:var(--color-error-content)}.sm\:chat-image{grid-row:span 2/span 2;align-self:flex-end}.sm\:chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.sm\:chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.sm\:chat-start{grid-template-columns:auto 1fr;place-items:start;& .chat-header,& .chat-footer{grid-column-start:2}& .chat-image{grid-column-start:1}& .chat-bubble{border-end-start-radius:0;grid-column-start:2;&:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] &:before{transform:rotateY(180deg)}}}.sm\:chat-end{grid-template-columns:1fr auto;place-items:end;& .chat-header,& .chat-footer{grid-column-start:1}& .chat-image{grid-column-start:2}& .chat-bubble{border-end-end-radius:0;grid-column-start:1;&:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] &:before{transform:rotateY(0)}}}}@media (width>=768px){.md\:chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");column-gap:.75rem;padding-block:.25rem;display:grid}.md\:chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative;&:before{background-color:inherit;content:"";width:.75rem;height:.75rem;mask-repeat:no-repeat;mask-image:var(--mask-chat);position:absolute;bottom:0;mask-position:0 -1px;mask-size:13px}}.md\:chat-bubble-primary{background-color:var(--color-primary);color:var(--color-primary-content)}.md\:chat-bubble-secondary{background-color:var(--color-secondary);color:var(--color-secondary-content)}.md\:chat-bubble-accent{background-color:var(--color-accent);color:var(--color-accent-content)}.md\:chat-bubble-neutral{background-color:var(--color-neutral);color:var(--color-neutral-content)}.md\:chat-bubble-info{background-color:var(--color-info);color:var(--color-info-content)}.md\:chat-bubble-success{background-color:var(--color-success);color:var(--color-success-content)}.md\:chat-bubble-warning{background-color:var(--color-warning);color:var(--color-warning-content)}.md\:chat-bubble-error{background-color:var(--color-error);color:var(--color-error-content)}.md\:chat-image{grid-row:span 2/span 2;align-self:flex-end}.md\:chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.md\:chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.md\:chat-start{grid-template-columns:auto 1fr;place-items:start;& .chat-header,& .chat-footer{grid-column-start:2}& .chat-image{grid-column-start:1}& .chat-bubble{border-end-start-radius:0;grid-column-start:2;&:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] &:before{transform:rotateY(180deg)}}}.md\:chat-end{grid-template-columns:1fr auto;place-items:end;& .chat-header,& .chat-footer{grid-column-start:1}& .chat-image{grid-column-start:2}& .chat-bubble{border-end-end-radius:0;grid-column-start:1;&:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] &:before{transform:rotateY(0)}}}}@media (width>=1024px){.lg\:chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");column-gap:.75rem;padding-block:.25rem;display:grid}.lg\:chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative;&:before{background-color:inherit;content:"";width:.75rem;height:.75rem;mask-repeat:no-repeat;mask-image:var(--mask-chat);position:absolute;bottom:0;mask-position:0 -1px;mask-size:13px}}.lg\:chat-bubble-primary{background-color:var(--color-primary);color:var(--color-primary-content)}.lg\:chat-bubble-secondary{background-color:var(--color-secondary);color:var(--color-secondary-content)}.lg\:chat-bubble-accent{background-color:var(--color-accent);color:var(--color-accent-content)}.lg\:chat-bubble-neutral{background-color:var(--color-neutral);color:var(--color-neutral-content)}.lg\:chat-bubble-info{background-color:var(--color-info);color:var(--color-info-content)}.lg\:chat-bubble-success{background-color:var(--color-success);color:var(--color-success-content)}.lg\:chat-bubble-warning{background-color:var(--color-warning);color:var(--color-warning-content)}.lg\:chat-bubble-error{background-color:var(--color-error);color:var(--color-error-content)}.lg\:chat-image{grid-row:span 2/span 2;align-self:flex-end}.lg\:chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.lg\:chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.lg\:chat-start{grid-template-columns:auto 1fr;place-items:start;& .chat-header,& .chat-footer{grid-column-start:2}& .chat-image{grid-column-start:1}& .chat-bubble{border-end-start-radius:0;grid-column-start:2;&:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] &:before{transform:rotateY(180deg)}}}.lg\:chat-end{grid-template-columns:1fr auto;place-items:end;& .chat-header,& .chat-footer{grid-column-start:1}& .chat-image{grid-column-start:2}& .chat-bubble{border-end-end-radius:0;grid-column-start:1;&:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] &:before{transform:rotateY(0)}}}}@media (width>=1280px){.xl\:chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");column-gap:.75rem;padding-block:.25rem;display:grid}.xl\:chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative;&:before{background-color:inherit;content:"";width:.75rem;height:.75rem;mask-repeat:no-repeat;mask-image:var(--mask-chat);position:absolute;bottom:0;mask-position:0 -1px;mask-size:13px}}.xl\:chat-bubble-primary{background-color:var(--color-primary);color:var(--color-primary-content)}.xl\:chat-bubble-secondary{background-color:var(--color-secondary);color:var(--color-secondary-content)}.xl\:chat-bubble-accent{background-color:var(--color-accent);color:var(--color-accent-content)}.xl\:chat-bubble-neutral{background-color:var(--color-neutral);color:var(--color-neutral-content)}.xl\:chat-bubble-info{background-color:var(--color-info);color:var(--color-info-content)}.xl\:chat-bubble-success{background-color:var(--color-success);color:var(--color-success-content)}.xl\:chat-bubble-warning{background-color:var(--color-warning);color:var(--color-warning-content)}.xl\:chat-bubble-error{background-color:var(--color-error);color:var(--color-error-content)}.xl\:chat-image{grid-row:span 2/span 2;align-self:flex-end}.xl\:chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.xl\:chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.xl\:chat-start{grid-template-columns:auto 1fr;place-items:start;& .chat-header,& .chat-footer{grid-column-start:2}& .chat-image{grid-column-start:1}& .chat-bubble{border-end-start-radius:0;grid-column-start:2;&:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] &:before{transform:rotateY(180deg)}}}.xl\:chat-end{grid-template-columns:1fr auto;place-items:end;& .chat-header,& .chat-footer{grid-column-start:1}& .chat-image{grid-column-start:2}& .chat-bubble{border-end-end-radius:0;grid-column-start:1;&:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] &:before{transform:rotateY(0)}}}}@media (width>=1536px){.\32 xl\:chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");column-gap:.75rem;padding-block:.25rem;display:grid}.\32 xl\:chat-bubble{border-radius:var(--radius-field);background-color:var(--color-base-300);width:fit-content;color:var(--color-base-content);grid-row-end:3;min-width:2.5rem;max-width:90%;min-height:2rem;padding-block:.5rem;padding-inline:1rem;display:block;position:relative;&:before{background-color:inherit;content:"";width:.75rem;height:.75rem;mask-repeat:no-repeat;mask-image:var(--mask-chat);position:absolute;bottom:0;mask-position:0 -1px;mask-size:13px}}.\32 xl\:chat-bubble-primary{background-color:var(--color-primary);color:var(--color-primary-content)}.\32 xl\:chat-bubble-secondary{background-color:var(--color-secondary);color:var(--color-secondary-content)}.\32 xl\:chat-bubble-accent{background-color:var(--color-accent);color:var(--color-accent-content)}.\32 xl\:chat-bubble-neutral{background-color:var(--color-neutral);color:var(--color-neutral-content)}.\32 xl\:chat-bubble-info{background-color:var(--color-info);color:var(--color-info-content)}.\32 xl\:chat-bubble-success{background-color:var(--color-success);color:var(--color-success-content)}.\32 xl\:chat-bubble-warning{background-color:var(--color-warning);color:var(--color-warning-content)}.\32 xl\:chat-bubble-error{background-color:var(--color-error);color:var(--color-error-content)}.\32 xl\:chat-image{grid-row:span 2/span 2;align-self:flex-end}.\32 xl\:chat-header{grid-row-start:1;gap:.25rem;font-size:.6875rem;display:flex}.\32 xl\:chat-footer{grid-row-start:3;gap:.25rem;font-size:.6875rem;display:flex}.\32 xl\:chat-start{grid-template-columns:auto 1fr;place-items:start;& .chat-header,& .chat-footer{grid-column-start:2}& .chat-image{grid-column-start:1}& .chat-bubble{border-end-start-radius:0;grid-column-start:2;&:before{inset-inline-start:-.75rem;transform:rotateY(0)}[dir=rtl] &:before{transform:rotateY(180deg)}}}.\32 xl\:chat-end{grid-template-columns:1fr auto;place-items:end;& .chat-header,& .chat-footer{grid-column-start:1}& .chat-image{grid-column-start:2}& .chat-bubble{border-end-end-radius:0;grid-column-start:1;&:before{inset-inline-start:100%;transform:rotateY(180deg)}[dir=rtl] &:before{transform:rotateY(0)}}}}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.tab{cursor:pointer;appearance:none;text-align:center;-webkit-user-select:none;user-select:none;--tab-p:1rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));flex-wrap:wrap;order:var(--tab-order);height:var(--tab-height);border-color:#0000;justify-content:center;align-items:center;padding-inline-start:var(--tab-p);padding-inline-end:var(--tab-p);font-size:.875rem;display:inline-flex;position:relative;&:hover{@media (hover:hover){&{color:var(--color-base-content)}}}&:is(input[type=radio]){min-width:fit-content;&:after{content:attr(aria-label)}}&:is(label){position:relative;& input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}}&:checked,&:is(label:has(:checked)),&:is(.tab-active,[aria-selected=true]){&+.tab-content{height:calc(100% - var(--tab-height) + var(--border));display:block}}&:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}&:not(input):empty{cursor:default;flex-grow:1}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}&[disabled]{pointer-events:none;opacity:.4}}.tab-disabled{pointer-events:none;opacity:.4}.tabs-border{& .tab{--tab-border-color:#0000 #0000 var(--tab-border-color)#0000;border-radius:var(--radius-field);position:relative;&:before{--tw-content:"";content:var(--tw-content);background-color:var(--tab-border-color);border-radius:var(--radius-field);width:80%;height:3px;transition:background-color .2s;position:absolute;bottom:0;left:10%}&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){&:before{--tab-border-color:currentColor;border-top:3px solid}}}}.tabs-lift{--tabs-height:auto;--tabs-direction:row;&>.tab{--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;border-width:var(--tab-border);padding:var(--tab-paddings);border-color:var(--tab-border-colors);border-start-start-radius:var(--tab-radius-ss);border-start-end-radius:var(--tab-radius-se);border-end-end-radius:var(--tab-radius-ee);border-end-start-radius:var(--tab-radius-es);&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked,label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--tab-grad:calc(69% - var(--border));--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));background-color:var(--tab-bg);&:before{z-index:1;content:"";width:var(--tab-corner-width);height:var(--tab-corner-height);background-position:var(--tab-corner-position);background-image:var(--radius-start),var(--radius-end);background-size:min(var(--radius-field),var(--tab-radius-min))min(var(--radius-field),var(--tab-radius-min));inset:var(--tab-inset);background-repeat:no-repeat;display:block;position:absolute}&:first-child:before{--radius-start:none}[dir=rtl] &:first-child:before{transform:rotateY(180deg)}&:last-child:before{--radius-end:none}[dir=rtl] &:last-child:before{transform:rotateY(180deg)}}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.tabs-top{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:0;--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-order:1;--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.tabs-bottom{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:1;--tab-border:var(--border)0 0 0;--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:min(var(--radius-field),var(--tab-radius-min));--tab-radius-ee:min(var(--radius-field),var(--tab-radius-min));--tab-border-colors:var(--tab-border-color)#0000 #0000 #0000;--tab-paddings:0 var(--tab-p)var(--border)var(--tab-p);--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:0 var(--border)var(--border)var(--border);--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color);--tab-paddings:var(--border)calc(var(--tab-p) - var(--border))0 calc(var(--tab-p) - var(--border));--tab-inset:0 auto auto auto;--radius-start:radial-gradient(circle at bottom left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at bottom right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color)}}}& .tab-content{--tabcontent-order:0;--tabcontent-margin:0 0 calc(-1*var(--border))0;--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:0;--tabcontent-radius-ee:var(--radius-box)}&>:checked,&>:is(label:has(:checked)),&>:is(.tab-active,[aria-selected=true]){&+.tab-content:not(:nth-child(2)){--tabcontent-radius-es:var(--radius-box)}}}.tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(var(--radius-field) + var(--radius-field) + var(--radius-field));border-radius:calc(var(--radius-field) + min(.25rem,var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 .5px oklch(0% 0 0/calc(var(--depth)*.05))inset;padding:.25rem;& .tab{border-radius:var(--radius-field);border-style:none;&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:2px}}&>:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&>:is(input:checked),&>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px 1px -1px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*50%),#0000),0 1px 6px -4px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*100%),#0000);@media (forced-colors:active){&{border:1px solid}}}}.tab-content{--tabcontent-radius-ss:0;--tabcontent-radius-se:0;--tabcontent-radius-es:0;--tabcontent-radius-ee:0;--tabcontent-order:1;width:100%;margin:var(--tabcontent-margin);order:1;order:var(--tabcontent-order);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.tabs-xs{--tab-height:calc(var(--size-field,.25rem)*6);& :where(.tab){--tab-p:.375rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.75rem}}.tabs-sm{--tab-height:calc(var(--size-field,.25rem)*8);& :where(.tab){--tab-p:.5rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.875rem}}.tabs-md{--tab-height:calc(var(--size-field,.25rem)*10);& :where(.tab){--tab-p:.75rem;--tab-radius-min:calc(.75rem - var(--border));font-size:.875rem}}.tabs-lg{--tab-height:calc(var(--size-field,.25rem)*12);& :where(.tab){--tab-p:1rem;--tab-radius-min:calc(1.5rem - var(--border));font-size:1.125rem}}.tabs-xl{--tab-height:calc(var(--size-field,.25rem)*14);& :where(.tab){--tab-p:1.25rem;--tab-radius-min:calc(2rem - var(--border));font-size:1.125rem}}@media (width>=640px){.sm\:tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.sm\:tab{cursor:pointer;appearance:none;text-align:center;-webkit-user-select:none;user-select:none;--tab-p:1rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));flex-wrap:wrap;order:var(--tab-order);height:var(--tab-height);border-color:#0000;justify-content:center;align-items:center;padding-inline-start:var(--tab-p);padding-inline-end:var(--tab-p);font-size:.875rem;display:inline-flex;position:relative;&:hover{@media (hover:hover){&{color:var(--color-base-content)}}}&:is(input[type=radio]){min-width:fit-content;&:after{content:attr(aria-label)}}&:is(label){position:relative;& input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}}&:checked,&:is(label:has(:checked)),&:is(.tab-active,[aria-selected=true]){&+.tab-content{height:calc(100% - var(--tab-height) + var(--border));display:block}}&:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}&:not(input):empty{cursor:default;flex-grow:1}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}&[disabled]{pointer-events:none;opacity:.4}}.sm\:tab-disabled{pointer-events:none;opacity:.4}.sm\:tabs-border{& .tab{--tab-border-color:#0000 #0000 var(--tab-border-color)#0000;border-radius:var(--radius-field);position:relative;&:before{--tw-content:"";content:var(--tw-content);background-color:var(--tab-border-color);border-radius:var(--radius-field);width:80%;height:3px;transition:background-color .2s;position:absolute;bottom:0;left:10%}&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){&:before{--tab-border-color:currentColor;border-top:3px solid}}}}.sm\:tabs-lift{--tabs-height:auto;--tabs-direction:row;&>.tab{--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;border-width:var(--tab-border);padding:var(--tab-paddings);border-color:var(--tab-border-colors);border-start-start-radius:var(--tab-radius-ss);border-start-end-radius:var(--tab-radius-se);border-end-end-radius:var(--tab-radius-ee);border-end-start-radius:var(--tab-radius-es);&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked,label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--tab-grad:calc(69% - var(--border));--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));background-color:var(--tab-bg);&:before{z-index:1;content:"";width:var(--tab-corner-width);height:var(--tab-corner-height);background-position:var(--tab-corner-position);background-image:var(--radius-start),var(--radius-end);background-size:min(var(--radius-field),var(--tab-radius-min))min(var(--radius-field),var(--tab-radius-min));inset:var(--tab-inset);background-repeat:no-repeat;display:block;position:absolute}&:first-child:before{--radius-start:none}[dir=rtl] &:first-child:before{transform:rotateY(180deg)}&:last-child:before{--radius-end:none}[dir=rtl] &:last-child:before{transform:rotateY(180deg)}}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.sm\:tabs-top{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:0;--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-order:1;--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.sm\:tabs-bottom{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:1;--tab-border:var(--border)0 0 0;--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:min(var(--radius-field),var(--tab-radius-min));--tab-radius-ee:min(var(--radius-field),var(--tab-radius-min));--tab-border-colors:var(--tab-border-color)#0000 #0000 #0000;--tab-paddings:0 var(--tab-p)var(--border)var(--tab-p);--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:0 var(--border)var(--border)var(--border);--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color);--tab-paddings:var(--border)calc(var(--tab-p) - var(--border))0 calc(var(--tab-p) - var(--border));--tab-inset:0 auto auto auto;--radius-start:radial-gradient(circle at bottom left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at bottom right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color)}}}& .tab-content{--tabcontent-order:0;--tabcontent-margin:0 0 calc(-1*var(--border))0;--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:0;--tabcontent-radius-ee:var(--radius-box)}&>:checked,&>:is(label:has(:checked)),&>:is(.tab-active,[aria-selected=true]){&+.tab-content:not(:nth-child(2)){--tabcontent-radius-es:var(--radius-box)}}}.sm\:tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(var(--radius-field) + var(--radius-field) + var(--radius-field));border-radius:calc(var(--radius-field) + min(.25rem,var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 .5px oklch(0% 0 0/calc(var(--depth)*.05))inset;padding:.25rem;& .tab{border-radius:var(--radius-field);border-style:none;&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:2px}}&>:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&>:is(input:checked),&>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px 1px -1px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*50%),#0000),0 1px 6px -4px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*100%),#0000);@media (forced-colors:active){&{border:1px solid}}}}.sm\:tab-content{--tabcontent-radius-ss:0;--tabcontent-radius-se:0;--tabcontent-radius-es:0;--tabcontent-radius-ee:0;--tabcontent-order:1;width:100%;margin:var(--tabcontent-margin);order:1;order:var(--tabcontent-order);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.sm\:tabs-xs{--tab-height:calc(var(--size-field,.25rem)*6);& :where(.tab){--tab-p:.375rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.75rem}}.sm\:tabs-sm{--tab-height:calc(var(--size-field,.25rem)*8);& :where(.tab){--tab-p:.5rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.875rem}}.sm\:tabs-md{--tab-height:calc(var(--size-field,.25rem)*10);& :where(.tab){--tab-p:.75rem;--tab-radius-min:calc(.75rem - var(--border));font-size:.875rem}}.sm\:tabs-lg{--tab-height:calc(var(--size-field,.25rem)*12);& :where(.tab){--tab-p:1rem;--tab-radius-min:calc(1.5rem - var(--border));font-size:1.125rem}}.sm\:tabs-xl{--tab-height:calc(var(--size-field,.25rem)*14);& :where(.tab){--tab-p:1.25rem;--tab-radius-min:calc(2rem - var(--border));font-size:1.125rem}}}@media (width>=768px){.md\:tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.md\:tab{cursor:pointer;appearance:none;text-align:center;-webkit-user-select:none;user-select:none;--tab-p:1rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));flex-wrap:wrap;order:var(--tab-order);height:var(--tab-height);border-color:#0000;justify-content:center;align-items:center;padding-inline-start:var(--tab-p);padding-inline-end:var(--tab-p);font-size:.875rem;display:inline-flex;position:relative;&:hover{@media (hover:hover){&{color:var(--color-base-content)}}}&:is(input[type=radio]){min-width:fit-content;&:after{content:attr(aria-label)}}&:is(label){position:relative;& input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}}&:checked,&:is(label:has(:checked)),&:is(.tab-active,[aria-selected=true]){&+.tab-content{height:calc(100% - var(--tab-height) + var(--border));display:block}}&:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}&:not(input):empty{cursor:default;flex-grow:1}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}&[disabled]{pointer-events:none;opacity:.4}}.md\:tab-disabled{pointer-events:none;opacity:.4}.md\:tabs-border{& .tab{--tab-border-color:#0000 #0000 var(--tab-border-color)#0000;border-radius:var(--radius-field);position:relative;&:before{--tw-content:"";content:var(--tw-content);background-color:var(--tab-border-color);border-radius:var(--radius-field);width:80%;height:3px;transition:background-color .2s;position:absolute;bottom:0;left:10%}&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){&:before{--tab-border-color:currentColor;border-top:3px solid}}}}.md\:tabs-lift{--tabs-height:auto;--tabs-direction:row;&>.tab{--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;border-width:var(--tab-border);padding:var(--tab-paddings);border-color:var(--tab-border-colors);border-start-start-radius:var(--tab-radius-ss);border-start-end-radius:var(--tab-radius-se);border-end-end-radius:var(--tab-radius-ee);border-end-start-radius:var(--tab-radius-es);&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked,label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--tab-grad:calc(69% - var(--border));--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));background-color:var(--tab-bg);&:before{z-index:1;content:"";width:var(--tab-corner-width);height:var(--tab-corner-height);background-position:var(--tab-corner-position);background-image:var(--radius-start),var(--radius-end);background-size:min(var(--radius-field),var(--tab-radius-min))min(var(--radius-field),var(--tab-radius-min));inset:var(--tab-inset);background-repeat:no-repeat;display:block;position:absolute}&:first-child:before{--radius-start:none}[dir=rtl] &:first-child:before{transform:rotateY(180deg)}&:last-child:before{--radius-end:none}[dir=rtl] &:last-child:before{transform:rotateY(180deg)}}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.md\:tabs-top{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:0;--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-order:1;--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.md\:tabs-bottom{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:1;--tab-border:var(--border)0 0 0;--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:min(var(--radius-field),var(--tab-radius-min));--tab-radius-ee:min(var(--radius-field),var(--tab-radius-min));--tab-border-colors:var(--tab-border-color)#0000 #0000 #0000;--tab-paddings:0 var(--tab-p)var(--border)var(--tab-p);--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:0 var(--border)var(--border)var(--border);--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color);--tab-paddings:var(--border)calc(var(--tab-p) - var(--border))0 calc(var(--tab-p) - var(--border));--tab-inset:0 auto auto auto;--radius-start:radial-gradient(circle at bottom left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at bottom right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color)}}}& .tab-content{--tabcontent-order:0;--tabcontent-margin:0 0 calc(-1*var(--border))0;--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:0;--tabcontent-radius-ee:var(--radius-box)}&>:checked,&>:is(label:has(:checked)),&>:is(.tab-active,[aria-selected=true]){&+.tab-content:not(:nth-child(2)){--tabcontent-radius-es:var(--radius-box)}}}.md\:tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(var(--radius-field) + var(--radius-field) + var(--radius-field));border-radius:calc(var(--radius-field) + min(.25rem,var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 .5px oklch(0% 0 0/calc(var(--depth)*.05))inset;padding:.25rem;& .tab{border-radius:var(--radius-field);border-style:none;&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:2px}}&>:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&>:is(input:checked),&>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px 1px -1px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*50%),#0000),0 1px 6px -4px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*100%),#0000);@media (forced-colors:active){&{border:1px solid}}}}.md\:tab-content{--tabcontent-radius-ss:0;--tabcontent-radius-se:0;--tabcontent-radius-es:0;--tabcontent-radius-ee:0;--tabcontent-order:1;width:100%;margin:var(--tabcontent-margin);order:1;order:var(--tabcontent-order);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.md\:tabs-xs{--tab-height:calc(var(--size-field,.25rem)*6);& :where(.tab){--tab-p:.375rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.75rem}}.md\:tabs-sm{--tab-height:calc(var(--size-field,.25rem)*8);& :where(.tab){--tab-p:.5rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.875rem}}.md\:tabs-md{--tab-height:calc(var(--size-field,.25rem)*10);& :where(.tab){--tab-p:.75rem;--tab-radius-min:calc(.75rem - var(--border));font-size:.875rem}}.md\:tabs-lg{--tab-height:calc(var(--size-field,.25rem)*12);& :where(.tab){--tab-p:1rem;--tab-radius-min:calc(1.5rem - var(--border));font-size:1.125rem}}.md\:tabs-xl{--tab-height:calc(var(--size-field,.25rem)*14);& :where(.tab){--tab-p:1.25rem;--tab-radius-min:calc(2rem - var(--border));font-size:1.125rem}}}@media (width>=1024px){.lg\:tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.lg\:tab{cursor:pointer;appearance:none;text-align:center;-webkit-user-select:none;user-select:none;--tab-p:1rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));flex-wrap:wrap;order:var(--tab-order);height:var(--tab-height);border-color:#0000;justify-content:center;align-items:center;padding-inline-start:var(--tab-p);padding-inline-end:var(--tab-p);font-size:.875rem;display:inline-flex;position:relative;&:hover{@media (hover:hover){&{color:var(--color-base-content)}}}&:is(input[type=radio]){min-width:fit-content;&:after{content:attr(aria-label)}}&:is(label){position:relative;& input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}}&:checked,&:is(label:has(:checked)),&:is(.tab-active,[aria-selected=true]){&+.tab-content{height:calc(100% - var(--tab-height) + var(--border));display:block}}&:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}&:not(input):empty{cursor:default;flex-grow:1}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}&[disabled]{pointer-events:none;opacity:.4}}.lg\:tab-disabled{pointer-events:none;opacity:.4}.lg\:tabs-border{& .tab{--tab-border-color:#0000 #0000 var(--tab-border-color)#0000;border-radius:var(--radius-field);position:relative;&:before{--tw-content:"";content:var(--tw-content);background-color:var(--tab-border-color);border-radius:var(--radius-field);width:80%;height:3px;transition:background-color .2s;position:absolute;bottom:0;left:10%}&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){&:before{--tab-border-color:currentColor;border-top:3px solid}}}}.lg\:tabs-lift{--tabs-height:auto;--tabs-direction:row;&>.tab{--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;border-width:var(--tab-border);padding:var(--tab-paddings);border-color:var(--tab-border-colors);border-start-start-radius:var(--tab-radius-ss);border-start-end-radius:var(--tab-radius-se);border-end-end-radius:var(--tab-radius-ee);border-end-start-radius:var(--tab-radius-es);&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked,label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--tab-grad:calc(69% - var(--border));--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));background-color:var(--tab-bg);&:before{z-index:1;content:"";width:var(--tab-corner-width);height:var(--tab-corner-height);background-position:var(--tab-corner-position);background-image:var(--radius-start),var(--radius-end);background-size:min(var(--radius-field),var(--tab-radius-min))min(var(--radius-field),var(--tab-radius-min));inset:var(--tab-inset);background-repeat:no-repeat;display:block;position:absolute}&:first-child:before{--radius-start:none}[dir=rtl] &:first-child:before{transform:rotateY(180deg)}&:last-child:before{--radius-end:none}[dir=rtl] &:last-child:before{transform:rotateY(180deg)}}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.lg\:tabs-top{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:0;--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-order:1;--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.lg\:tabs-bottom{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:1;--tab-border:var(--border)0 0 0;--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:min(var(--radius-field),var(--tab-radius-min));--tab-radius-ee:min(var(--radius-field),var(--tab-radius-min));--tab-border-colors:var(--tab-border-color)#0000 #0000 #0000;--tab-paddings:0 var(--tab-p)var(--border)var(--tab-p);--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:0 var(--border)var(--border)var(--border);--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color);--tab-paddings:var(--border)calc(var(--tab-p) - var(--border))0 calc(var(--tab-p) - var(--border));--tab-inset:0 auto auto auto;--radius-start:radial-gradient(circle at bottom left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at bottom right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color)}}}& .tab-content{--tabcontent-order:0;--tabcontent-margin:0 0 calc(-1*var(--border))0;--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:0;--tabcontent-radius-ee:var(--radius-box)}&>:checked,&>:is(label:has(:checked)),&>:is(.tab-active,[aria-selected=true]){&+.tab-content:not(:nth-child(2)){--tabcontent-radius-es:var(--radius-box)}}}.lg\:tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(var(--radius-field) + var(--radius-field) + var(--radius-field));border-radius:calc(var(--radius-field) + min(.25rem,var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 .5px oklch(0% 0 0/calc(var(--depth)*.05))inset;padding:.25rem;& .tab{border-radius:var(--radius-field);border-style:none;&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:2px}}&>:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&>:is(input:checked),&>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px 1px -1px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*50%),#0000),0 1px 6px -4px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*100%),#0000);@media (forced-colors:active){&{border:1px solid}}}}.lg\:tab-content{--tabcontent-radius-ss:0;--tabcontent-radius-se:0;--tabcontent-radius-es:0;--tabcontent-radius-ee:0;--tabcontent-order:1;width:100%;margin:var(--tabcontent-margin);order:1;order:var(--tabcontent-order);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.lg\:tabs-xs{--tab-height:calc(var(--size-field,.25rem)*6);& :where(.tab){--tab-p:.375rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.75rem}}.lg\:tabs-sm{--tab-height:calc(var(--size-field,.25rem)*8);& :where(.tab){--tab-p:.5rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.875rem}}.lg\:tabs-md{--tab-height:calc(var(--size-field,.25rem)*10);& :where(.tab){--tab-p:.75rem;--tab-radius-min:calc(.75rem - var(--border));font-size:.875rem}}.lg\:tabs-lg{--tab-height:calc(var(--size-field,.25rem)*12);& :where(.tab){--tab-p:1rem;--tab-radius-min:calc(1.5rem - var(--border));font-size:1.125rem}}.lg\:tabs-xl{--tab-height:calc(var(--size-field,.25rem)*14);& :where(.tab){--tab-p:1.25rem;--tab-radius-min:calc(2rem - var(--border));font-size:1.125rem}}}@media (width>=1280px){.xl\:tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.xl\:tab{cursor:pointer;appearance:none;text-align:center;-webkit-user-select:none;user-select:none;--tab-p:1rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));flex-wrap:wrap;order:var(--tab-order);height:var(--tab-height);border-color:#0000;justify-content:center;align-items:center;padding-inline-start:var(--tab-p);padding-inline-end:var(--tab-p);font-size:.875rem;display:inline-flex;position:relative;&:hover{@media (hover:hover){&{color:var(--color-base-content)}}}&:is(input[type=radio]){min-width:fit-content;&:after{content:attr(aria-label)}}&:is(label){position:relative;& input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}}&:checked,&:is(label:has(:checked)),&:is(.tab-active,[aria-selected=true]){&+.tab-content{height:calc(100% - var(--tab-height) + var(--border));display:block}}&:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}&:not(input):empty{cursor:default;flex-grow:1}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}&[disabled]{pointer-events:none;opacity:.4}}.xl\:tab-disabled{pointer-events:none;opacity:.4}.xl\:tabs-border{& .tab{--tab-border-color:#0000 #0000 var(--tab-border-color)#0000;border-radius:var(--radius-field);position:relative;&:before{--tw-content:"";content:var(--tw-content);background-color:var(--tab-border-color);border-radius:var(--radius-field);width:80%;height:3px;transition:background-color .2s;position:absolute;bottom:0;left:10%}&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){&:before{--tab-border-color:currentColor;border-top:3px solid}}}}.xl\:tabs-lift{--tabs-height:auto;--tabs-direction:row;&>.tab{--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;border-width:var(--tab-border);padding:var(--tab-paddings);border-color:var(--tab-border-colors);border-start-start-radius:var(--tab-radius-ss);border-start-end-radius:var(--tab-radius-se);border-end-end-radius:var(--tab-radius-ee);border-end-start-radius:var(--tab-radius-es);&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked,label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--tab-grad:calc(69% - var(--border));--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));background-color:var(--tab-bg);&:before{z-index:1;content:"";width:var(--tab-corner-width);height:var(--tab-corner-height);background-position:var(--tab-corner-position);background-image:var(--radius-start),var(--radius-end);background-size:min(var(--radius-field),var(--tab-radius-min))min(var(--radius-field),var(--tab-radius-min));inset:var(--tab-inset);background-repeat:no-repeat;display:block;position:absolute}&:first-child:before{--radius-start:none}[dir=rtl] &:first-child:before{transform:rotateY(180deg)}&:last-child:before{--radius-end:none}[dir=rtl] &:last-child:before{transform:rotateY(180deg)}}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.xl\:tabs-top{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:0;--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-order:1;--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.xl\:tabs-bottom{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:1;--tab-border:var(--border)0 0 0;--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:min(var(--radius-field),var(--tab-radius-min));--tab-radius-ee:min(var(--radius-field),var(--tab-radius-min));--tab-border-colors:var(--tab-border-color)#0000 #0000 #0000;--tab-paddings:0 var(--tab-p)var(--border)var(--tab-p);--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:0 var(--border)var(--border)var(--border);--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color);--tab-paddings:var(--border)calc(var(--tab-p) - var(--border))0 calc(var(--tab-p) - var(--border));--tab-inset:0 auto auto auto;--radius-start:radial-gradient(circle at bottom left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at bottom right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color)}}}& .tab-content{--tabcontent-order:0;--tabcontent-margin:0 0 calc(-1*var(--border))0;--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:0;--tabcontent-radius-ee:var(--radius-box)}&>:checked,&>:is(label:has(:checked)),&>:is(.tab-active,[aria-selected=true]){&+.tab-content:not(:nth-child(2)){--tabcontent-radius-es:var(--radius-box)}}}.xl\:tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(var(--radius-field) + var(--radius-field) + var(--radius-field));border-radius:calc(var(--radius-field) + min(.25rem,var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 .5px oklch(0% 0 0/calc(var(--depth)*.05))inset;padding:.25rem;& .tab{border-radius:var(--radius-field);border-style:none;&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:2px}}&>:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&>:is(input:checked),&>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px 1px -1px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*50%),#0000),0 1px 6px -4px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*100%),#0000);@media (forced-colors:active){&{border:1px solid}}}}.xl\:tab-content{--tabcontent-radius-ss:0;--tabcontent-radius-se:0;--tabcontent-radius-es:0;--tabcontent-radius-ee:0;--tabcontent-order:1;width:100%;margin:var(--tabcontent-margin);order:1;order:var(--tabcontent-order);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.xl\:tabs-xs{--tab-height:calc(var(--size-field,.25rem)*6);& :where(.tab){--tab-p:.375rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.75rem}}.xl\:tabs-sm{--tab-height:calc(var(--size-field,.25rem)*8);& :where(.tab){--tab-p:.5rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.875rem}}.xl\:tabs-md{--tab-height:calc(var(--size-field,.25rem)*10);& :where(.tab){--tab-p:.75rem;--tab-radius-min:calc(.75rem - var(--border));font-size:.875rem}}.xl\:tabs-lg{--tab-height:calc(var(--size-field,.25rem)*12);& :where(.tab){--tab-p:1rem;--tab-radius-min:calc(1.5rem - var(--border));font-size:1.125rem}}.xl\:tabs-xl{--tab-height:calc(var(--size-field,.25rem)*14);& :where(.tab){--tab-p:1.25rem;--tab-radius-min:calc(2rem - var(--border));font-size:1.125rem}}}@media (width>=1536px){.\32 xl\:tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.\32 xl\:tab{cursor:pointer;appearance:none;text-align:center;-webkit-user-select:none;user-select:none;--tab-p:1rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));flex-wrap:wrap;order:var(--tab-order);height:var(--tab-height);border-color:#0000;justify-content:center;align-items:center;padding-inline-start:var(--tab-p);padding-inline-end:var(--tab-p);font-size:.875rem;display:inline-flex;position:relative;&:hover{@media (hover:hover){&{color:var(--color-base-content)}}}&:is(input[type=radio]){min-width:fit-content;&:after{content:attr(aria-label)}}&:is(label){position:relative;& input{cursor:pointer;appearance:none;opacity:0;position:absolute;inset:0}}&:checked,&:is(label:has(:checked)),&:is(.tab-active,[aria-selected=true]){&+.tab-content{height:calc(100% - var(--tab-height) + var(--border));display:block}}&:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}&:not(input):empty{cursor:default;flex-grow:1}&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}&[disabled]{pointer-events:none;opacity:.4}}.\32 xl\:tab-disabled{pointer-events:none;opacity:.4}.\32 xl\:tabs-border{& .tab{--tab-border-color:#0000 #0000 var(--tab-border-color)#0000;border-radius:var(--radius-field);position:relative;&:before{--tw-content:"";content:var(--tw-content);background-color:var(--tab-border-color);border-radius:var(--radius-field);width:80%;height:3px;transition:background-color .2s;position:absolute;bottom:0;left:10%}&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){&:before{--tab-border-color:currentColor;border-top:3px solid}}}}.\32 xl\:tabs-lift{--tabs-height:auto;--tabs-direction:row;&>.tab{--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;border-width:var(--tab-border);padding:var(--tab-paddings);border-color:var(--tab-border-colors);border-start-start-radius:var(--tab-radius-ss);border-start-end-radius:var(--tab-radius-se);border-end-end-radius:var(--tab-radius-ee);border-end-start-radius:var(--tab-radius-es);&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked,label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--tab-grad:calc(69% - var(--border));--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));background-color:var(--tab-bg);&:before{z-index:1;content:"";width:var(--tab-corner-width);height:var(--tab-corner-height);background-position:var(--tab-corner-position);background-image:var(--radius-start),var(--radius-end);background-size:min(var(--radius-field),var(--tab-radius-min))min(var(--radius-field),var(--tab-radius-min));inset:var(--tab-inset);background-repeat:no-repeat;display:block;position:absolute}&:first-child:before{--radius-start:none}[dir=rtl] &:first-child:before{transform:rotateY(180deg)}&:last-child:before{--radius-end:none}[dir=rtl] &:last-child:before{transform:rotateY(180deg)}}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.\32 xl\:tabs-top{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:0;--tab-border:0 0 var(--border)0;--tab-radius-ss:min(var(--radius-field),var(--tab-radius-min));--tab-radius-se:min(var(--radius-field),var(--tab-radius-min));--tab-radius-es:0;--tab-radius-ee:0;--tab-paddings:var(--border)var(--tab-p)0 var(--tab-p);--tab-border-colors:#0000 #0000 var(--tab-border-color)#0000;--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:var(--border)var(--border)0 var(--border);--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color);--tab-paddings:0 calc(var(--tab-p) - var(--border))var(--border)calc(var(--tab-p) - var(--border));--tab-inset:auto auto 0 auto;--radius-start:radial-gradient(circle at top left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at top right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:var(--tab-border-color)var(--tab-border-color)#0000 var(--tab-border-color)}}}& .tab-content{--tabcontent-order:1;--tabcontent-margin:calc(-1*var(--border))0 0 0;--tabcontent-radius-ss:0;--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:var(--radius-box);--tabcontent-radius-ee:var(--radius-box)}& :checked,& label:has(:checked),& :is(.tab-active,[aria-selected=true]){&+.tab-content{&:first-child,&:nth-child(n+3){--tabcontent-radius-ss:var(--radius-box)}}}}.\32 xl\:tabs-bottom{--tabs-height:auto;--tabs-direction:row;& .tab{--tab-order:1;--tab-border:var(--border)0 0 0;--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:min(var(--radius-field),var(--tab-radius-min));--tab-radius-ee:min(var(--radius-field),var(--tab-radius-min));--tab-border-colors:var(--tab-border-color)#0000 #0000 #0000;--tab-paddings:0 var(--tab-p)var(--border)var(--tab-p);--tab-corner-width:calc(100% + min(var(--radius-field),var(--tab-radius-min))*2);--tab-corner-height:min(var(--radius-field),var(--tab-radius-min));--tab-corner-position:top left,top right;&:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&:is(input:checked),&:is(label:has(:checked)){--tab-border:0 var(--border)var(--border)var(--border);--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color);--tab-paddings:var(--border)calc(var(--tab-p) - var(--border))0 calc(var(--tab-p) - var(--border));--tab-inset:0 auto auto auto;--radius-start:radial-gradient(circle at bottom left,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px));--radius-end:radial-gradient(circle at bottom right,#0000 var(--tab-grad),var(--tab-border-color)calc(var(--tab-grad) + .25px),var(--tab-border-color)calc(var(--tab-grad) + var(--border)),var(--tab-bg)calc(var(--tab-grad) + var(--border) + .25px))}}&:has(.tab-content){&>.tab:first-child{&:not(.tab-active,[aria-selected=true]){--tab-border-colors:#0000 var(--tab-border-color)var(--tab-border-color)var(--tab-border-color)}}}& .tab-content{--tabcontent-order:0;--tabcontent-margin:0 0 calc(-1*var(--border))0;--tabcontent-radius-ss:var(--radius-box);--tabcontent-radius-se:var(--radius-box);--tabcontent-radius-es:0;--tabcontent-radius-ee:var(--radius-box)}&>:checked,&>:is(label:has(:checked)),&>:is(.tab-active,[aria-selected=true]){&+.tab-content:not(:nth-child(2)){--tabcontent-radius-es:var(--radius-box)}}}.\32 xl\:tabs-box{background-color:var(--color-base-200);--tabs-box-radius:calc(var(--radius-field) + var(--radius-field) + var(--radius-field));border-radius:calc(var(--radius-field) + min(.25rem,var(--tabs-box-radius)));box-shadow:0 -.5px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 .5px oklch(0% 0 0/calc(var(--depth)*.05))inset;padding:.25rem;& .tab{border-radius:var(--radius-field);border-style:none;&:focus-visible,&:is(label:has(:checked:focus-visible)){outline-offset:2px}}&>:is(.tab-active,[aria-selected=true]):not(.tab-disabled,[disabled]),&>:is(input:checked),&>:is(label:has(:checked)){background-color:var(--tab-bg,var(--color-base-100));box-shadow:0 1px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px 1px -1px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*50%),#0000),0 1px 6px -4px color-mix(in oklab,var(--color-neutral)calc(var(--depth)*100%),#0000);@media (forced-colors:active){&{border:1px solid}}}}.\32 xl\:tab-content{--tabcontent-radius-ss:0;--tabcontent-radius-se:0;--tabcontent-radius-es:0;--tabcontent-radius-ee:0;--tabcontent-order:1;width:100%;margin:var(--tabcontent-margin);order:1;order:var(--tabcontent-order);border-color:#0000;border-width:var(--border);border-start-start-radius:var(--tabcontent-radius-ss);border-start-end-radius:var(--tabcontent-radius-se);border-end-end-radius:var(--tabcontent-radius-ee);border-end-start-radius:var(--tabcontent-radius-es);display:none}.\32 xl\:tabs-xs{--tab-height:calc(var(--size-field,.25rem)*6);& :where(.tab){--tab-p:.375rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.75rem}}.\32 xl\:tabs-sm{--tab-height:calc(var(--size-field,.25rem)*8);& :where(.tab){--tab-p:.5rem;--tab-radius-min:calc(.5rem - var(--border));font-size:.875rem}}.\32 xl\:tabs-md{--tab-height:calc(var(--size-field,.25rem)*10);& :where(.tab){--tab-p:.75rem;--tab-radius-min:calc(.75rem - var(--border));font-size:.875rem}}.\32 xl\:tabs-lg{--tab-height:calc(var(--size-field,.25rem)*12);& :where(.tab){--tab-p:1rem;--tab-radius-min:calc(1.5rem - var(--border));font-size:1.125rem}}.\32 xl\:tabs-xl{--tab-height:calc(var(--size-field,.25rem)*14);& :where(.tab){--tab-p:1.25rem;--tab-radius-min:calc(2rem - var(--border));font-size:1.125rem}}}.mask{vertical-align:middle;display:inline-block;mask-position:50%;mask-size:contain;mask-repeat:no-repeat}.mask-half-1{mask-position:0;mask-size:200%;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){mask-position:100%}}.mask-half-2{mask-position:100%;mask-size:200%;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){mask-position:0}}.mask-squircle{mask-image:url("data:image/svg+xml,%3csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 0C20 0 0 20 0 100s20 100 100 100 100-20 100-100S180 0 100 0Z'/%3e%3c/svg%3e")}.mask-decagon{mask-image:url("data:image/svg+xml,%3csvg width='192' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 0 58.779 19.098 36.327 50v61.804l-36.327 50L96 200l-58.779-19.098-36.327-50V69.098l36.327-50z' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-diamond{mask-image:url("data:image/svg+xml,%3csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m100 0 100 100-100 100L0 100z' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-heart{mask-image:url("data:image/svg+xml,%3csvg width='200' height='185' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M100 184.606a15.384 15.384 0 0 1-8.653-2.678C53.565 156.28 37.205 138.695 28.182 127.7 8.952 104.264-.254 80.202.005 54.146.308 24.287 24.264 0 53.406 0c21.192 0 35.869 11.937 44.416 21.879a2.884 2.884 0 0 0 4.356 0C110.725 11.927 125.402 0 146.594 0c29.142 0 53.098 24.287 53.4 54.151.26 26.061-8.956 50.122-28.176 73.554-9.023 10.994-25.383 28.58-63.165 54.228a15.384 15.384 0 0 1-8.653 2.673Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e")}.mask-hexagon{mask-image:url("data:image/svg+xml,%3csvg width='182' height='201' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M.3 65.486c0-9.196 6.687-20.063 14.211-25.078l61.86-35.946c8.36-5.016 20.899-5.016 29.258 0l61.86 35.946c8.36 5.015 14.211 15.882 14.211 25.078v71.055c0 9.196-6.687 20.063-14.211 25.079l-61.86 35.945c-8.36 4.18-20.899 4.18-29.258 0L14.51 161.62C6.151 157.44.3 145.737.3 136.54V65.486Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e")}.mask-hexagon-2{mask-image:url("data:image/svg+xml,%3csvg width='200' height='182' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M64.786 181.4c-9.196 0-20.063-6.687-25.079-14.21L3.762 105.33c-5.016-8.36-5.016-20.9 0-29.259l35.945-61.86C44.723 5.851 55.59 0 64.786 0h71.055c9.196 0 20.063 6.688 25.079 14.211l35.945 61.86c4.18 8.36 4.18 20.899 0 29.258l-35.945 61.86c-4.18 8.36-15.883 14.211-25.079 14.211H64.786Z' fill='black' fill-rule='nonzero'/%3e%3c/svg%3e")}.mask-circle{mask-image:url("data:image/svg+xml,%3csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle fill='black' cx='100' cy='100' r='100' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-pentagon{mask-image:url("data:image/svg+xml,%3csvg width='192' height='181' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 0 95.106 69.098-36.327 111.804H37.22L.894 69.098z' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-star{mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 137.263-58.779 42.024 22.163-68.389L.894 68.481l72.476-.243L96 0l22.63 68.238 72.476.243-58.49 42.417 22.163 68.389z' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-star-2{mask-image:url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 153.044-58.779 26.243 7.02-63.513L.894 68.481l63.117-13.01L96 0l31.989 55.472 63.117 13.01-43.347 47.292 7.02 63.513z' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-triangle{mask-image:url("data:image/svg+xml,%3csvg width='174' height='149' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m87 148.476-86.603.185L43.86 74.423 87 0l43.14 74.423 43.463 74.238z' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-triangle-2{mask-image:url("data:image/svg+xml,%3csvg width='174' height='150' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m87 .738 86.603-.184-43.463 74.238L87 149.214 43.86 74.792.397.554z' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-triangle-3{mask-image:url("data:image/svg+xml,%3csvg width='150' height='174' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m149.369 87.107.185 86.603-74.239-43.463L.893 87.107l74.422-43.14L149.554.505z' fill-rule='evenodd'/%3e%3c/svg%3e")}.mask-triangle-4{mask-image:url("data:image/svg+xml,%3csvg width='150' height='174' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M.631 87.107.446.505l74.239 43.462 74.422 43.14-74.422 43.14L.446 173.71z' fill-rule='evenodd'/%3e%3c/svg%3e")}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid;&:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.stat-figure{grid-row:1/span 3;grid-column-start:2;place-self:center flex-end}.stat-title{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.stat-actions{white-space:nowrap;grid-column-start:1}.stats-horizontal{grid-auto-flow:column;overflow-x:auto;& .stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.stats-vertical{grid-auto-flow:row;overflow-y:auto;& .stat:not(:last-child){border-inline-end:none;border-block-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}@media (width>=640px){.sm\:stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.sm\:stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid;&:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.sm\:stat-figure{grid-row:1/span 3;grid-column-start:2;place-self:center flex-end}.sm\:stat-title{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.sm\:stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.sm\:stat-desc{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.sm\:stat-actions{white-space:nowrap;grid-column-start:1}.sm\:stats-horizontal{grid-auto-flow:column;overflow-x:auto;& .stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.sm\:stats-vertical{grid-auto-flow:row;overflow-y:auto;& .stat:not(:last-child){border-inline-end:none;border-block-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}}@media (width>=768px){.md\:stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.md\:stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid;&:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.md\:stat-figure{grid-row:1/span 3;grid-column-start:2;place-self:center flex-end}.md\:stat-title{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.md\:stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.md\:stat-desc{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.md\:stat-actions{white-space:nowrap;grid-column-start:1}.md\:stats-horizontal{grid-auto-flow:column;overflow-x:auto;& .stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.md\:stats-vertical{grid-auto-flow:row;overflow-y:auto;& .stat:not(:last-child){border-inline-end:none;border-block-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}}@media (width>=1024px){.lg\:stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.lg\:stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid;&:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.lg\:stat-figure{grid-row:1/span 3;grid-column-start:2;place-self:center flex-end}.lg\:stat-title{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.lg\:stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.lg\:stat-desc{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.lg\:stat-actions{white-space:nowrap;grid-column-start:1}.lg\:stats-horizontal{grid-auto-flow:column;overflow-x:auto;& .stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.lg\:stats-vertical{grid-auto-flow:row;overflow-y:auto;& .stat:not(:last-child){border-inline-end:none;border-block-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}}@media (width>=1280px){.xl\:stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.xl\:stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid;&:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.xl\:stat-figure{grid-row:1/span 3;grid-column-start:2;place-self:center flex-end}.xl\:stat-title{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.xl\:stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.xl\:stat-desc{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.xl\:stat-actions{white-space:nowrap;grid-column-start:1}.xl\:stats-horizontal{grid-auto-flow:column;overflow-x:auto;& .stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.xl\:stats-vertical{grid-auto-flow:row;overflow-y:auto;& .stat:not(:last-child){border-inline-end:none;border-block-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}}@media (width>=1536px){.\32 xl\:stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.\32 xl\:stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid;&:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.\32 xl\:stat-figure{grid-row:1/span 3;grid-column-start:2;place-self:center flex-end}.\32 xl\:stat-title{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.\32 xl\:stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.\32 xl\:stat-desc{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.\32 xl\:stat-actions{white-space:nowrap;grid-column-start:1}.\32 xl\:stats-horizontal{grid-auto-flow:column;overflow-x:auto;& .stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}}.\32 xl\:stats-vertical{grid-auto-flow:row;overflow-y:auto;& .stat:not(:last-child){border-inline-end:none;border-block-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}}.textarea{border:var(--border)solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;touch-action:manipulation;border-color:var(--input-color);width:clamp(3rem,20rem,100%);min-height:5rem;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);flex-shrink:1;padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;& textarea{appearance:none;background-color:#0000;border:none;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>textarea[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}}.textarea-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.textarea-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.textarea-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.textarea-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.textarea-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.textarea-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.textarea-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.textarea-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.textarea-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.textarea-xs{font-size:.6875rem}.textarea-sm{font-size:.75rem}.textarea-md{font-size:.875rem}.textarea-lg{font-size:1.125rem}.textarea-xl{font-size:1.375rem}@media (width>=640px){.sm\:textarea{border:var(--border)solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;touch-action:manipulation;border-color:var(--input-color);width:clamp(3rem,20rem,100%);min-height:5rem;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);flex-shrink:1;padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;& textarea{appearance:none;background-color:#0000;border:none;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>textarea[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}}.sm\:textarea-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.sm\:textarea-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.sm\:textarea-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.sm\:textarea-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.sm\:textarea-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.sm\:textarea-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.sm\:textarea-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.sm\:textarea-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.sm\:textarea-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.sm\:textarea-xs{font-size:.6875rem}.sm\:textarea-sm{font-size:.75rem}.sm\:textarea-md{font-size:.875rem}.sm\:textarea-lg{font-size:1.125rem}.sm\:textarea-xl{font-size:1.375rem}}@media (width>=768px){.md\:textarea{border:var(--border)solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;touch-action:manipulation;border-color:var(--input-color);width:clamp(3rem,20rem,100%);min-height:5rem;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);flex-shrink:1;padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;& textarea{appearance:none;background-color:#0000;border:none;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>textarea[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}}.md\:textarea-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.md\:textarea-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.md\:textarea-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.md\:textarea-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.md\:textarea-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.md\:textarea-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.md\:textarea-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.md\:textarea-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.md\:textarea-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.md\:textarea-xs{font-size:.6875rem}.md\:textarea-sm{font-size:.75rem}.md\:textarea-md{font-size:.875rem}.md\:textarea-lg{font-size:1.125rem}.md\:textarea-xl{font-size:1.375rem}}@media (width>=1024px){.lg\:textarea{border:var(--border)solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;touch-action:manipulation;border-color:var(--input-color);width:clamp(3rem,20rem,100%);min-height:5rem;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);flex-shrink:1;padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;& textarea{appearance:none;background-color:#0000;border:none;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>textarea[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}}.lg\:textarea-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.lg\:textarea-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.lg\:textarea-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.lg\:textarea-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.lg\:textarea-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.lg\:textarea-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.lg\:textarea-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.lg\:textarea-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.lg\:textarea-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.lg\:textarea-xs{font-size:.6875rem}.lg\:textarea-sm{font-size:.75rem}.lg\:textarea-md{font-size:.875rem}.lg\:textarea-lg{font-size:1.125rem}.lg\:textarea-xl{font-size:1.375rem}}@media (width>=1280px){.xl\:textarea{border:var(--border)solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;touch-action:manipulation;border-color:var(--input-color);width:clamp(3rem,20rem,100%);min-height:5rem;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);flex-shrink:1;padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;& textarea{appearance:none;background-color:#0000;border:none;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>textarea[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}}.xl\:textarea-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.xl\:textarea-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.xl\:textarea-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.xl\:textarea-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.xl\:textarea-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.xl\:textarea-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.xl\:textarea-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.xl\:textarea-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.xl\:textarea-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.xl\:textarea-xs{font-size:.6875rem}.xl\:textarea-sm{font-size:.75rem}.xl\:textarea-md{font-size:.875rem}.xl\:textarea-lg{font-size:1.125rem}.xl\:textarea-xl{font-size:1.375rem}}@media (width>=1536px){.\32 xl\:textarea{border:var(--border)solid #0000;appearance:none;border-radius:var(--radius-field);background-color:var(--color-base-100);vertical-align:middle;touch-action:manipulation;border-color:var(--input-color);width:clamp(3rem,20rem,100%);min-height:5rem;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);flex-shrink:1;padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;& textarea{appearance:none;background-color:#0000;border:none;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>textarea[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none;&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>textarea[disabled])>textarea[disabled]{cursor:not-allowed}}.\32 xl\:textarea-ghost{box-shadow:none;background-color:#0000;border-color:#0000;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.\32 xl\:textarea-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.\32 xl\:textarea-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.\32 xl\:textarea-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.\32 xl\:textarea-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.\32 xl\:textarea-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.\32 xl\:textarea-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.\32 xl\:textarea-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.\32 xl\:textarea-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.\32 xl\:textarea-xs{font-size:.6875rem}.\32 xl\:textarea-sm{font-size:.75rem}.\32 xl\:textarea-md{font-size:.875rem}.\32 xl\:textarea-lg{font-size:1.125rem}.\32 xl\:textarea-xl{font-size:1.375rem}}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-color:currentColor}& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}&:where(.card-border){border:var(--border)solid var(--color-base-200)}&:where(.card-dash){border:var(--border)dashed var(--color-base-200)}&.image-full{display:grid;&>*{grid-row-start:1;grid-column-start:1}&>.card-body{color:var(--color-neutral-content);position:relative}& :where(figure){border-radius:inherit;overflow:hidden}&>figure img{object-fit:cover;filter:brightness(28%);height:100%}}& figure{justify-content:center;align-items:center;display:flex}&:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;user-select:none}&:has(>:checked){outline:2px solid}}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex;& :where(p){flex-grow:1}}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-xs{& .card-body{--card-p:.5rem;--card-fs:.6875rem}& .card-title{--cardtitle-fs:.875rem}}.card-sm{& .card-body{--card-p:1rem;--card-fs:.75rem}& .card-title{--cardtitle-fs:1rem}}.card-md{& .card-body{--card-p:1.5rem;--card-fs:.875rem}& .card-title{--cardtitle-fs:1.125rem}}.card-lg{& .card-body{--card-p:2rem;--card-fs:1rem}& .card-title{--cardtitle-fs:1.25rem}}.card-xl{& .card-body{--card-p:2.5rem;--card-fs:1.125rem}& .card-title{--cardtitle-fs:1.375rem}}.card-side{flex-direction:row;align-items:stretch;& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:unset;border-end-end-radius:unset;border-end-start-radius:inherit;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:unset;overflow:hidden}& figure>*{max-width:unset}& :where(figure>*){object-fit:cover;width:100%;height:100%}}@media (width>=640px){.sm\:card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-color:currentColor}& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}&:where(.card-border){border:var(--border)solid var(--color-base-200)}&:where(.card-dash){border:var(--border)dashed var(--color-base-200)}&.image-full{display:grid;&>*{grid-row-start:1;grid-column-start:1}&>.card-body{color:var(--color-neutral-content);position:relative}& :where(figure){border-radius:inherit;overflow:hidden}&>figure img{object-fit:cover;filter:brightness(28%);height:100%}}& figure{justify-content:center;align-items:center;display:flex}&:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;user-select:none}&:has(>:checked){outline:2px solid}}.sm\:card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.sm\:card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex;& :where(p){flex-grow:1}}.sm\:card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.sm\:card-xs{& .card-body{--card-p:.5rem;--card-fs:.6875rem}& .card-title{--cardtitle-fs:.875rem}}.sm\:card-sm{& .card-body{--card-p:1rem;--card-fs:.75rem}& .card-title{--cardtitle-fs:1rem}}.sm\:card-md{& .card-body{--card-p:1.5rem;--card-fs:.875rem}& .card-title{--cardtitle-fs:1.125rem}}.sm\:card-lg{& .card-body{--card-p:2rem;--card-fs:1rem}& .card-title{--cardtitle-fs:1.25rem}}.sm\:card-xl{& .card-body{--card-p:2.5rem;--card-fs:1.125rem}& .card-title{--cardtitle-fs:1.375rem}}.sm\:card-side{flex-direction:row;align-items:stretch;& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:unset;border-end-end-radius:unset;border-end-start-radius:inherit;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:unset;overflow:hidden}& figure>*{max-width:unset}& :where(figure>*){object-fit:cover;width:100%;height:100%}}}@media (width>=768px){.md\:card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-color:currentColor}& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}&:where(.card-border){border:var(--border)solid var(--color-base-200)}&:where(.card-dash){border:var(--border)dashed var(--color-base-200)}&.image-full{display:grid;&>*{grid-row-start:1;grid-column-start:1}&>.card-body{color:var(--color-neutral-content);position:relative}& :where(figure){border-radius:inherit;overflow:hidden}&>figure img{object-fit:cover;filter:brightness(28%);height:100%}}& figure{justify-content:center;align-items:center;display:flex}&:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;user-select:none}&:has(>:checked){outline:2px solid}}.md\:card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.md\:card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex;& :where(p){flex-grow:1}}.md\:card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.md\:card-xs{& .card-body{--card-p:.5rem;--card-fs:.6875rem}& .card-title{--cardtitle-fs:.875rem}}.md\:card-sm{& .card-body{--card-p:1rem;--card-fs:.75rem}& .card-title{--cardtitle-fs:1rem}}.md\:card-md{& .card-body{--card-p:1.5rem;--card-fs:.875rem}& .card-title{--cardtitle-fs:1.125rem}}.md\:card-lg{& .card-body{--card-p:2rem;--card-fs:1rem}& .card-title{--cardtitle-fs:1.25rem}}.md\:card-xl{& .card-body{--card-p:2.5rem;--card-fs:1.125rem}& .card-title{--cardtitle-fs:1.375rem}}.md\:card-side{flex-direction:row;align-items:stretch;& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:unset;border-end-end-radius:unset;border-end-start-radius:inherit;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:unset;overflow:hidden}& figure>*{max-width:unset}& :where(figure>*){object-fit:cover;width:100%;height:100%}}}@media (width>=1024px){.lg\:card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-color:currentColor}& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}&:where(.card-border){border:var(--border)solid var(--color-base-200)}&:where(.card-dash){border:var(--border)dashed var(--color-base-200)}&.image-full{display:grid;&>*{grid-row-start:1;grid-column-start:1}&>.card-body{color:var(--color-neutral-content);position:relative}& :where(figure){border-radius:inherit;overflow:hidden}&>figure img{object-fit:cover;filter:brightness(28%);height:100%}}& figure{justify-content:center;align-items:center;display:flex}&:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;user-select:none}&:has(>:checked){outline:2px solid}}.lg\:card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.lg\:card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex;& :where(p){flex-grow:1}}.lg\:card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.lg\:card-xs{& .card-body{--card-p:.5rem;--card-fs:.6875rem}& .card-title{--cardtitle-fs:.875rem}}.lg\:card-sm{& .card-body{--card-p:1rem;--card-fs:.75rem}& .card-title{--cardtitle-fs:1rem}}.lg\:card-md{& .card-body{--card-p:1.5rem;--card-fs:.875rem}& .card-title{--cardtitle-fs:1.125rem}}.lg\:card-lg{& .card-body{--card-p:2rem;--card-fs:1rem}& .card-title{--cardtitle-fs:1.25rem}}.lg\:card-xl{& .card-body{--card-p:2.5rem;--card-fs:1.125rem}& .card-title{--cardtitle-fs:1.375rem}}.lg\:card-side{flex-direction:row;align-items:stretch;& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:unset;border-end-end-radius:unset;border-end-start-radius:inherit;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:unset;overflow:hidden}& figure>*{max-width:unset}& :where(figure>*){object-fit:cover;width:100%;height:100%}}}@media (width>=1280px){.xl\:card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-color:currentColor}& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}&:where(.card-border){border:var(--border)solid var(--color-base-200)}&:where(.card-dash){border:var(--border)dashed var(--color-base-200)}&.image-full{display:grid;&>*{grid-row-start:1;grid-column-start:1}&>.card-body{color:var(--color-neutral-content);position:relative}& :where(figure){border-radius:inherit;overflow:hidden}&>figure img{object-fit:cover;filter:brightness(28%);height:100%}}& figure{justify-content:center;align-items:center;display:flex}&:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;user-select:none}&:has(>:checked){outline:2px solid}}.xl\:card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.xl\:card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex;& :where(p){flex-grow:1}}.xl\:card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.xl\:card-xs{& .card-body{--card-p:.5rem;--card-fs:.6875rem}& .card-title{--cardtitle-fs:.875rem}}.xl\:card-sm{& .card-body{--card-p:1rem;--card-fs:.75rem}& .card-title{--cardtitle-fs:1rem}}.xl\:card-md{& .card-body{--card-p:1.5rem;--card-fs:.875rem}& .card-title{--cardtitle-fs:1.125rem}}.xl\:card-lg{& .card-body{--card-p:2rem;--card-fs:1rem}& .card-title{--cardtitle-fs:1.25rem}}.xl\:card-xl{& .card-body{--card-p:2.5rem;--card-fs:1.125rem}& .card-title{--cardtitle-fs:1.375rem}}.xl\:card-side{flex-direction:row;align-items:stretch;& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:unset;border-end-end-radius:unset;border-end-start-radius:inherit;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:unset;overflow:hidden}& figure>*{max-width:unset}& :where(figure>*){object-fit:cover;width:100%;height:100%}}}@media (width>=1536px){.\32 xl\:card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-color:currentColor}& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}&:where(.card-border){border:var(--border)solid var(--color-base-200)}&:where(.card-dash){border:var(--border)dashed var(--color-base-200)}&.image-full{display:grid;&>*{grid-row-start:1;grid-column-start:1}&>.card-body{color:var(--color-neutral-content);position:relative}& :where(figure){border-radius:inherit;overflow:hidden}&>figure img{object-fit:cover;filter:brightness(28%);height:100%}}& figure{justify-content:center;align-items:center;display:flex}&:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;user-select:none}&:has(>:checked){outline:2px solid}}.\32 xl\:card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.\32 xl\:card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex;& :where(p){flex-grow:1}}.\32 xl\:card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.\32 xl\:card-xs{& .card-body{--card-p:.5rem;--card-fs:.6875rem}& .card-title{--cardtitle-fs:.875rem}}.\32 xl\:card-sm{& .card-body{--card-p:1rem;--card-fs:.75rem}& .card-title{--cardtitle-fs:1rem}}.\32 xl\:card-md{& .card-body{--card-p:1.5rem;--card-fs:.875rem}& .card-title{--cardtitle-fs:1.125rem}}.\32 xl\:card-lg{& .card-body{--card-p:2rem;--card-fs:1rem}& .card-title{--cardtitle-fs:1.25rem}}.\32 xl\:card-xl{& .card-body{--card-p:2.5rem;--card-fs:1.125rem}& .card-title{--cardtitle-fs:1.375rem}}.\32 xl\:card-side{flex-direction:row;align-items:stretch;& :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:unset;border-end-end-radius:unset;border-end-start-radius:inherit;overflow:hidden}& :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:unset;overflow:hidden}& figure>*{max-width:unset}& :where(figure>*){object-fit:cover;width:100%;height:100%}}}.list{flex-direction:column;font-size:.875rem;display:flex;& :where(.list-row){--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative;&:has(.list-col-grow:first-child){--list-grid-cols:1fr}&:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}& :not(.list-col-wrap){grid-row-start:1}}&>:not(:last-child){&.list-row,& .list-row{&:after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:color-mix(in oklab,var(--color-base-content)5%,transparent);position:absolute;bottom:0}}}}.list-col-wrap{grid-row-start:2}@media (width>=640px){.sm\:list{flex-direction:column;font-size:.875rem;display:flex;& :where(.list-row){--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative;&:has(.list-col-grow:first-child){--list-grid-cols:1fr}&:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}& :not(.list-col-wrap){grid-row-start:1}}&>:not(:last-child){&.list-row,& .list-row{&:after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:color-mix(in oklab,var(--color-base-content)5%,transparent);position:absolute;bottom:0}}}}.sm\:list-col-wrap{grid-row-start:2}}@media (width>=768px){.md\:list{flex-direction:column;font-size:.875rem;display:flex;& :where(.list-row){--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative;&:has(.list-col-grow:first-child){--list-grid-cols:1fr}&:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}& :not(.list-col-wrap){grid-row-start:1}}&>:not(:last-child){&.list-row,& .list-row{&:after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:color-mix(in oklab,var(--color-base-content)5%,transparent);position:absolute;bottom:0}}}}.md\:list-col-wrap{grid-row-start:2}}@media (width>=1024px){.lg\:list{flex-direction:column;font-size:.875rem;display:flex;& :where(.list-row){--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative;&:has(.list-col-grow:first-child){--list-grid-cols:1fr}&:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}& :not(.list-col-wrap){grid-row-start:1}}&>:not(:last-child){&.list-row,& .list-row{&:after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:color-mix(in oklab,var(--color-base-content)5%,transparent);position:absolute;bottom:0}}}}.lg\:list-col-wrap{grid-row-start:2}}@media (width>=1280px){.xl\:list{flex-direction:column;font-size:.875rem;display:flex;& :where(.list-row){--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative;&:has(.list-col-grow:first-child){--list-grid-cols:1fr}&:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}& :not(.list-col-wrap){grid-row-start:1}}&>:not(:last-child){&.list-row,& .list-row{&:after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:color-mix(in oklab,var(--color-base-content)5%,transparent);position:absolute;bottom:0}}}}.xl\:list-col-wrap{grid-row-start:2}}@media (width>=1536px){.\32 xl\:list{flex-direction:column;font-size:.875rem;display:flex;& :where(.list-row){--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative;&:has(.list-col-grow:first-child){--list-grid-cols:1fr}&:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}&:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}& :not(.list-col-wrap){grid-row-start:1}}&>:not(:last-child){&.list-row,& .list-row{&:after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:color-mix(in oklab,var(--color-base-content)5%,transparent);position:absolute;bottom:0}}}}.\32 xl\:list-col-wrap{grid-row-start:2}}.tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative;&>:where(.tooltip-content),&:where([data-tip]):before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;position:absolute}&:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;mask-position:-1px 0;mask-repeat:no-repeat;mask-image:var(--mask-tooltip);transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;display:block;position:absolute}}.tooltip,.tooltip-top{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}}.tooltip-bottom{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}}.tooltip-left{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}}.tooltip-right{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}}.tooltip{&.tooltip-open,&[data-tip]:not([data-tip=""]):hover,&:not(:has(.tooltip-content:empty)):has(.tooltip-content):hover,&:has(:focus-visible){&>.tooltip-content,&[data-tip]:before,&:after{opacity:1;--tt-pos:0rem;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}}.tooltip,.tooltip-top{&:after{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}}.tooltip-bottom{&:after{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}}.tooltip-left{&:after{transform:translateX(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}}.tooltip-right{&:after{transform:translateX(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}}.tooltip-primary{--tt-bg:var(--color-primary);&>.tooltip-content,&[data-tip]:before{color:var(--color-primary-content)}}.tooltip-secondary{--tt-bg:var(--color-secondary);&>.tooltip-content,&[data-tip]:before{color:var(--color-secondary-content)}}.tooltip-accent{--tt-bg:var(--color-accent);&>.tooltip-content,&[data-tip]:before{color:var(--color-accent-content)}}.tooltip-info{--tt-bg:var(--color-info);&>.tooltip-content,&[data-tip]:before{color:var(--color-info-content)}}.tooltip-success{--tt-bg:var(--color-success);&>.tooltip-content,&[data-tip]:before{color:var(--color-success-content)}}.tooltip-warning{--tt-bg:var(--color-warning);&>.tooltip-content,&[data-tip]:before{color:var(--color-warning-content)}}.tooltip-error{--tt-bg:var(--color-error);&>.tooltip-content,&[data-tip]:before{color:var(--color-error-content)}}@media (width>=640px){.sm\:tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative;&>:where(.tooltip-content),&:where([data-tip]):before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;position:absolute}&:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;mask-position:-1px 0;mask-repeat:no-repeat;mask-image:var(--mask-tooltip);transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;display:block;position:absolute}}.sm\:tooltip,.sm\:tooltip-top{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}}.sm\:tooltip-bottom{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}}.sm\:tooltip-left{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}}.sm\:tooltip-right{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}}.sm\:tooltip{&.tooltip-open,&[data-tip]:not([data-tip=""]):hover,&:not(:has(.tooltip-content:empty)):has(.tooltip-content):hover,&:has(:focus-visible){&>.tooltip-content,&[data-tip]:before,&:after{opacity:1;--tt-pos:0rem;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}}.sm\:tooltip,.sm\:tooltip-top{&:after{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}}.sm\:tooltip-bottom{&:after{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}}.sm\:tooltip-left{&:after{transform:translateX(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}}.sm\:tooltip-right{&:after{transform:translateX(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}}.sm\:tooltip-primary{--tt-bg:var(--color-primary);&>.tooltip-content,&[data-tip]:before{color:var(--color-primary-content)}}.sm\:tooltip-secondary{--tt-bg:var(--color-secondary);&>.tooltip-content,&[data-tip]:before{color:var(--color-secondary-content)}}.sm\:tooltip-accent{--tt-bg:var(--color-accent);&>.tooltip-content,&[data-tip]:before{color:var(--color-accent-content)}}.sm\:tooltip-info{--tt-bg:var(--color-info);&>.tooltip-content,&[data-tip]:before{color:var(--color-info-content)}}.sm\:tooltip-success{--tt-bg:var(--color-success);&>.tooltip-content,&[data-tip]:before{color:var(--color-success-content)}}.sm\:tooltip-warning{--tt-bg:var(--color-warning);&>.tooltip-content,&[data-tip]:before{color:var(--color-warning-content)}}.sm\:tooltip-error{--tt-bg:var(--color-error);&>.tooltip-content,&[data-tip]:before{color:var(--color-error-content)}}}@media (width>=768px){.md\:tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative;&>:where(.tooltip-content),&:where([data-tip]):before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;position:absolute}&:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;mask-position:-1px 0;mask-repeat:no-repeat;mask-image:var(--mask-tooltip);transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;display:block;position:absolute}}.md\:tooltip,.md\:tooltip-top{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}}.md\:tooltip-bottom{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}}.md\:tooltip-left{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}}.md\:tooltip-right{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}}.md\:tooltip{&.tooltip-open,&[data-tip]:not([data-tip=""]):hover,&:not(:has(.tooltip-content:empty)):has(.tooltip-content):hover,&:has(:focus-visible){&>.tooltip-content,&[data-tip]:before,&:after{opacity:1;--tt-pos:0rem;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}}.md\:tooltip,.md\:tooltip-top{&:after{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}}.md\:tooltip-bottom{&:after{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}}.md\:tooltip-left{&:after{transform:translateX(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}}.md\:tooltip-right{&:after{transform:translateX(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}}.md\:tooltip-primary{--tt-bg:var(--color-primary);&>.tooltip-content,&[data-tip]:before{color:var(--color-primary-content)}}.md\:tooltip-secondary{--tt-bg:var(--color-secondary);&>.tooltip-content,&[data-tip]:before{color:var(--color-secondary-content)}}.md\:tooltip-accent{--tt-bg:var(--color-accent);&>.tooltip-content,&[data-tip]:before{color:var(--color-accent-content)}}.md\:tooltip-info{--tt-bg:var(--color-info);&>.tooltip-content,&[data-tip]:before{color:var(--color-info-content)}}.md\:tooltip-success{--tt-bg:var(--color-success);&>.tooltip-content,&[data-tip]:before{color:var(--color-success-content)}}.md\:tooltip-warning{--tt-bg:var(--color-warning);&>.tooltip-content,&[data-tip]:before{color:var(--color-warning-content)}}.md\:tooltip-error{--tt-bg:var(--color-error);&>.tooltip-content,&[data-tip]:before{color:var(--color-error-content)}}}@media (width>=1024px){.lg\:tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative;&>:where(.tooltip-content),&:where([data-tip]):before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;position:absolute}&:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;mask-position:-1px 0;mask-repeat:no-repeat;mask-image:var(--mask-tooltip);transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;display:block;position:absolute}}.lg\:tooltip,.lg\:tooltip-top{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}}.lg\:tooltip-bottom{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}}.lg\:tooltip-left{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}}.lg\:tooltip-right{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}}.lg\:tooltip{&.tooltip-open,&[data-tip]:not([data-tip=""]):hover,&:not(:has(.tooltip-content:empty)):has(.tooltip-content):hover,&:has(:focus-visible){&>.tooltip-content,&[data-tip]:before,&:after{opacity:1;--tt-pos:0rem;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}}.lg\:tooltip,.lg\:tooltip-top{&:after{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}}.lg\:tooltip-bottom{&:after{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}}.lg\:tooltip-left{&:after{transform:translateX(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}}.lg\:tooltip-right{&:after{transform:translateX(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}}.lg\:tooltip-primary{--tt-bg:var(--color-primary);&>.tooltip-content,&[data-tip]:before{color:var(--color-primary-content)}}.lg\:tooltip-secondary{--tt-bg:var(--color-secondary);&>.tooltip-content,&[data-tip]:before{color:var(--color-secondary-content)}}.lg\:tooltip-accent{--tt-bg:var(--color-accent);&>.tooltip-content,&[data-tip]:before{color:var(--color-accent-content)}}.lg\:tooltip-info{--tt-bg:var(--color-info);&>.tooltip-content,&[data-tip]:before{color:var(--color-info-content)}}.lg\:tooltip-success{--tt-bg:var(--color-success);&>.tooltip-content,&[data-tip]:before{color:var(--color-success-content)}}.lg\:tooltip-warning{--tt-bg:var(--color-warning);&>.tooltip-content,&[data-tip]:before{color:var(--color-warning-content)}}.lg\:tooltip-error{--tt-bg:var(--color-error);&>.tooltip-content,&[data-tip]:before{color:var(--color-error-content)}}}@media (width>=1280px){.xl\:tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative;&>:where(.tooltip-content),&:where([data-tip]):before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;position:absolute}&:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;mask-position:-1px 0;mask-repeat:no-repeat;mask-image:var(--mask-tooltip);transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;display:block;position:absolute}}.xl\:tooltip,.xl\:tooltip-top{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}}.xl\:tooltip-bottom{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}}.xl\:tooltip-left{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}}.xl\:tooltip-right{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}}.xl\:tooltip{&.tooltip-open,&[data-tip]:not([data-tip=""]):hover,&:not(:has(.tooltip-content:empty)):has(.tooltip-content):hover,&:has(:focus-visible){&>.tooltip-content,&[data-tip]:before,&:after{opacity:1;--tt-pos:0rem;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}}.xl\:tooltip,.xl\:tooltip-top{&:after{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}}.xl\:tooltip-bottom{&:after{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}}.xl\:tooltip-left{&:after{transform:translateX(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}}.xl\:tooltip-right{&:after{transform:translateX(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}}.xl\:tooltip-primary{--tt-bg:var(--color-primary);&>.tooltip-content,&[data-tip]:before{color:var(--color-primary-content)}}.xl\:tooltip-secondary{--tt-bg:var(--color-secondary);&>.tooltip-content,&[data-tip]:before{color:var(--color-secondary-content)}}.xl\:tooltip-accent{--tt-bg:var(--color-accent);&>.tooltip-content,&[data-tip]:before{color:var(--color-accent-content)}}.xl\:tooltip-info{--tt-bg:var(--color-info);&>.tooltip-content,&[data-tip]:before{color:var(--color-info-content)}}.xl\:tooltip-success{--tt-bg:var(--color-success);&>.tooltip-content,&[data-tip]:before{color:var(--color-success-content)}}.xl\:tooltip-warning{--tt-bg:var(--color-warning);&>.tooltip-content,&[data-tip]:before{color:var(--color-warning-content)}}.xl\:tooltip-error{--tt-bg:var(--color-error);&>.tooltip-content,&[data-tip]:before{color:var(--color-error-content)}}}@media (width>=1536px){.\32 xl\:tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative;&>:where(.tooltip-content),&:where([data-tip]):before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;position:absolute}&:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;mask-position:-1px 0;mask-repeat:no-repeat;mask-image:var(--mask-tooltip);transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;display:block;position:absolute}}.\32 xl\:tooltip,.\32 xl\:tooltip-top{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}}.\32 xl\:tooltip-bottom{&>.tooltip-content,&[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}}.\32 xl\:tooltip-left{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}}.\32 xl\:tooltip-right{&>.tooltip-content,&[data-tip]:before{transform:translateX(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}}.\32 xl\:tooltip{&.tooltip-open,&[data-tip]:not([data-tip=""]):hover,&:not(:has(.tooltip-content:empty)):has(.tooltip-content):hover,&:has(:focus-visible){&>.tooltip-content,&[data-tip]:before,&:after{opacity:1;--tt-pos:0rem;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}}.\32 xl\:tooltip,.\32 xl\:tooltip-top{&:after{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}}.\32 xl\:tooltip-bottom{&:after{transform:translateX(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}}.\32 xl\:tooltip-left{&:after{transform:translateX(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}}.\32 xl\:tooltip-right{&:after{transform:translateX(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}}.\32 xl\:tooltip-primary{--tt-bg:var(--color-primary);&>.tooltip-content,&[data-tip]:before{color:var(--color-primary-content)}}.\32 xl\:tooltip-secondary{--tt-bg:var(--color-secondary);&>.tooltip-content,&[data-tip]:before{color:var(--color-secondary-content)}}.\32 xl\:tooltip-accent{--tt-bg:var(--color-accent);&>.tooltip-content,&[data-tip]:before{color:var(--color-accent-content)}}.\32 xl\:tooltip-info{--tt-bg:var(--color-info);&>.tooltip-content,&[data-tip]:before{color:var(--color-info-content)}}.\32 xl\:tooltip-success{--tt-bg:var(--color-success);&>.tooltip-content,&[data-tip]:before{color:var(--color-success-content)}}.\32 xl\:tooltip-warning{--tt-bg:var(--color-warning);&>.tooltip-content,&[data-tip]:before{color:var(--color-warning-content)}}.\32 xl\:tooltip-error{--tt-bg:var(--color-error);&>.tooltip-content,&[data-tip]:before{color:var(--color-error-content)}}}.radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border)solid var(--input-color,color-mix(in srgb,currentColor 20%,#0000));box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);color:var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}&:focus-visible{outline:2px solid}&:checked,&[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor;animation:.2s ease-out radio;&:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));background-color:currentColor}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}}}.radio-primary{--input-color:var(--color-primary)}.radio-secondary{--input-color:var(--color-secondary)}.radio-accent{--input-color:var(--color-accent)}.radio-neutral{--input-color:var(--color-neutral)}.radio-info{--input-color:var(--color-info)}.radio-success{--input-color:var(--color-success)}.radio-warning{--input-color:var(--color-warning)}.radio-error{--input-color:var(--color-error)}.radio:disabled{cursor:not-allowed;opacity:.2}.radio-xs{padding:.125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*4)}}.radio-sm{padding:.1875rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*5)}}.radio-md{padding:.25rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*6)}}.radio-lg{padding:.3125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*7)}}.radio-xl{padding:.375rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*8)}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@media (width>=640px){.sm\:radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border)solid var(--input-color,color-mix(in srgb,currentColor 20%,#0000));box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);color:var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}&:focus-visible{outline:2px solid}&:checked,&[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor;animation:.2s ease-out radio;&:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));background-color:currentColor}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}}}.sm\:radio-primary{--input-color:var(--color-primary)}.sm\:radio-secondary{--input-color:var(--color-secondary)}.sm\:radio-accent{--input-color:var(--color-accent)}.sm\:radio-neutral{--input-color:var(--color-neutral)}.sm\:radio-info{--input-color:var(--color-info)}.sm\:radio-success{--input-color:var(--color-success)}.sm\:radio-warning{--input-color:var(--color-warning)}.sm\:radio-error{--input-color:var(--color-error)}.sm\:radio:disabled{cursor:not-allowed;opacity:.2}.sm\:radio-xs{padding:.125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*4)}}.sm\:radio-sm{padding:.1875rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*5)}}.sm\:radio-md{padding:.25rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*6)}}.sm\:radio-lg{padding:.3125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*7)}}.sm\:radio-xl{padding:.375rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*8)}}}@media (width>=768px){.md\:radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border)solid var(--input-color,color-mix(in srgb,currentColor 20%,#0000));box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);color:var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}&:focus-visible{outline:2px solid}&:checked,&[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor;animation:.2s ease-out radio;&:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));background-color:currentColor}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}}}.md\:radio-primary{--input-color:var(--color-primary)}.md\:radio-secondary{--input-color:var(--color-secondary)}.md\:radio-accent{--input-color:var(--color-accent)}.md\:radio-neutral{--input-color:var(--color-neutral)}.md\:radio-info{--input-color:var(--color-info)}.md\:radio-success{--input-color:var(--color-success)}.md\:radio-warning{--input-color:var(--color-warning)}.md\:radio-error{--input-color:var(--color-error)}.md\:radio:disabled{cursor:not-allowed;opacity:.2}.md\:radio-xs{padding:.125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*4)}}.md\:radio-sm{padding:.1875rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*5)}}.md\:radio-md{padding:.25rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*6)}}.md\:radio-lg{padding:.3125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*7)}}.md\:radio-xl{padding:.375rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*8)}}}@media (width>=1024px){.lg\:radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border)solid var(--input-color,color-mix(in srgb,currentColor 20%,#0000));box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);color:var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}&:focus-visible{outline:2px solid}&:checked,&[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor;animation:.2s ease-out radio;&:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));background-color:currentColor}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}}}.lg\:radio-primary{--input-color:var(--color-primary)}.lg\:radio-secondary{--input-color:var(--color-secondary)}.lg\:radio-accent{--input-color:var(--color-accent)}.lg\:radio-neutral{--input-color:var(--color-neutral)}.lg\:radio-info{--input-color:var(--color-info)}.lg\:radio-success{--input-color:var(--color-success)}.lg\:radio-warning{--input-color:var(--color-warning)}.lg\:radio-error{--input-color:var(--color-error)}.lg\:radio:disabled{cursor:not-allowed;opacity:.2}.lg\:radio-xs{padding:.125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*4)}}.lg\:radio-sm{padding:.1875rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*5)}}.lg\:radio-md{padding:.25rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*6)}}.lg\:radio-lg{padding:.3125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*7)}}.lg\:radio-xl{padding:.375rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*8)}}}@media (width>=1280px){.xl\:radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border)solid var(--input-color,color-mix(in srgb,currentColor 20%,#0000));box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);color:var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}&:focus-visible{outline:2px solid}&:checked,&[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor;animation:.2s ease-out radio;&:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));background-color:currentColor}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}}}.xl\:radio-primary{--input-color:var(--color-primary)}.xl\:radio-secondary{--input-color:var(--color-secondary)}.xl\:radio-accent{--input-color:var(--color-accent)}.xl\:radio-neutral{--input-color:var(--color-neutral)}.xl\:radio-info{--input-color:var(--color-info)}.xl\:radio-success{--input-color:var(--color-success)}.xl\:radio-warning{--input-color:var(--color-warning)}.xl\:radio-error{--input-color:var(--color-error)}.xl\:radio:disabled{cursor:not-allowed;opacity:.2}.xl\:radio-xs{padding:.125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*4)}}.xl\:radio-sm{padding:.1875rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*5)}}.xl\:radio-md{padding:.25rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*6)}}.xl\:radio-lg{padding:.3125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*7)}}.xl\:radio-xl{padding:.375rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*8)}}}@media (width>=1536px){.\32 xl\:radio{cursor:pointer;appearance:none;vertical-align:middle;border:var(--border)solid var(--input-color,color-mix(in srgb,currentColor 20%,#0000));box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);color:var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;display:inline-block;position:relative;&:before{--tw-content:"";content:var(--tw-content);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}&:focus-visible{outline:2px solid}&:checked,&[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor;animation:.2s ease-out radio;&:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));background-color:currentColor}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}}}.\32 xl\:radio-primary{--input-color:var(--color-primary)}.\32 xl\:radio-secondary{--input-color:var(--color-secondary)}.\32 xl\:radio-accent{--input-color:var(--color-accent)}.\32 xl\:radio-neutral{--input-color:var(--color-neutral)}.\32 xl\:radio-info{--input-color:var(--color-info)}.\32 xl\:radio-success{--input-color:var(--color-success)}.\32 xl\:radio-warning{--input-color:var(--color-warning)}.\32 xl\:radio-error{--input-color:var(--color-error)}.\32 xl\:radio:disabled{cursor:not-allowed;opacity:.2}.\32 xl\:radio-xs{padding:.125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*4)}}.\32 xl\:radio-sm{padding:.1875rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*5)}}.\32 xl\:radio-md{padding:.25rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*6)}}.\32 xl\:radio-lg{padding:.3125rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*7)}}.\32 xl\:radio-xl{padding:.375rem;&[type=radio]{--size:calc(var(--size-selector,.25rem)*8)}}}.diff{-webkit-user-select:none;user-select:none;direction:ltr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size;&:focus-visible,&:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}&:focus-visible{outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content);& .diff-resizer{min-width:90cqi;max-width:90cqi}}&:has(.diff-item-2:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;& .diff-resizer{min-width:10cqi;max-width:10cqi}}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:focus{& .diff-resizer{min-width:10cqi;max-width:10cqi}}&:has(.diff-item-1:focus){& .diff-resizer{min-width:90cqi;max-width:90cqi}}}}.diff-resizer{z-index:1;resize:horizontal;opacity:0;cursor:ew-resize;transform-origin:100% 100%;clip-path:inset(calc(100% - .75rem) 0 0 calc(100% - .75rem));grid-row-start:1;grid-column-start:1;width:50cqi;min-width:1rem;max-width:calc(100cqi - 1rem);height:.5rem;transition:min-width .3s ease-out,max-width .3s ease-out;position:relative;top:50%;overflow:hidden;transform:scaleY(3)translate(.35rem,.08rem)}.diff-item-2{grid-row-start:1;grid-column-start:1;position:relative;&:after{pointer-events:none;z-index:2;background-color:color-mix(in oklab,var(--color-base-100)50%,transparent);border:2px solid var(--color-base-100);content:"";outline:1px solid color-mix(in oklab,var(--color-base-content)5%,#0000);outline-offset:-3px;backdrop-filter:blur(8px);border-radius:3.40282e38px;width:1.2rem;height:1.8rem;position:absolute;top:50%;bottom:0;right:1px;translate:50% -50%;box-shadow:0 1px 2px oklch(0% 0 0/.1)}&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:after{content:none}}}.diff-item-1{z-index:1;border-right:2px solid var(--color-base-100);grid-row-start:1;grid-column-start:1;position:relative;overflow:hidden;&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}}@media (width>=640px){.sm\:diff{-webkit-user-select:none;user-select:none;direction:ltr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size;&:focus-visible,&:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}&:focus-visible{outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content);& .diff-resizer{min-width:90cqi;max-width:90cqi}}&:has(.diff-item-2:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;& .diff-resizer{min-width:10cqi;max-width:10cqi}}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:focus{& .diff-resizer{min-width:10cqi;max-width:10cqi}}&:has(.diff-item-1:focus){& .diff-resizer{min-width:90cqi;max-width:90cqi}}}}.sm\:diff-resizer{z-index:1;resize:horizontal;opacity:0;cursor:ew-resize;transform-origin:100% 100%;clip-path:inset(calc(100% - .75rem) 0 0 calc(100% - .75rem));grid-row-start:1;grid-column-start:1;width:50cqi;min-width:1rem;max-width:calc(100cqi - 1rem);height:.5rem;transition:min-width .3s ease-out,max-width .3s ease-out;position:relative;top:50%;overflow:hidden;transform:scaleY(3)translate(.35rem,.08rem)}.sm\:diff-item-2{grid-row-start:1;grid-column-start:1;position:relative;&:after{pointer-events:none;z-index:2;background-color:color-mix(in oklab,var(--color-base-100)50%,transparent);border:2px solid var(--color-base-100);content:"";outline:1px solid color-mix(in oklab,var(--color-base-content)5%,#0000);outline-offset:-3px;backdrop-filter:blur(8px);border-radius:3.40282e38px;width:1.2rem;height:1.8rem;position:absolute;top:50%;bottom:0;right:1px;translate:50% -50%;box-shadow:0 1px 2px oklch(0% 0 0/.1)}&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:after{content:none}}}.sm\:diff-item-1{z-index:1;border-right:2px solid var(--color-base-100);grid-row-start:1;grid-column-start:1;position:relative;overflow:hidden;&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}}}@media (width>=768px){.md\:diff{-webkit-user-select:none;user-select:none;direction:ltr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size;&:focus-visible,&:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}&:focus-visible{outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content);& .diff-resizer{min-width:90cqi;max-width:90cqi}}&:has(.diff-item-2:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;& .diff-resizer{min-width:10cqi;max-width:10cqi}}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:focus{& .diff-resizer{min-width:10cqi;max-width:10cqi}}&:has(.diff-item-1:focus){& .diff-resizer{min-width:90cqi;max-width:90cqi}}}}.md\:diff-resizer{z-index:1;resize:horizontal;opacity:0;cursor:ew-resize;transform-origin:100% 100%;clip-path:inset(calc(100% - .75rem) 0 0 calc(100% - .75rem));grid-row-start:1;grid-column-start:1;width:50cqi;min-width:1rem;max-width:calc(100cqi - 1rem);height:.5rem;transition:min-width .3s ease-out,max-width .3s ease-out;position:relative;top:50%;overflow:hidden;transform:scaleY(3)translate(.35rem,.08rem)}.md\:diff-item-2{grid-row-start:1;grid-column-start:1;position:relative;&:after{pointer-events:none;z-index:2;background-color:color-mix(in oklab,var(--color-base-100)50%,transparent);border:2px solid var(--color-base-100);content:"";outline:1px solid color-mix(in oklab,var(--color-base-content)5%,#0000);outline-offset:-3px;backdrop-filter:blur(8px);border-radius:3.40282e38px;width:1.2rem;height:1.8rem;position:absolute;top:50%;bottom:0;right:1px;translate:50% -50%;box-shadow:0 1px 2px oklch(0% 0 0/.1)}&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:after{content:none}}}.md\:diff-item-1{z-index:1;border-right:2px solid var(--color-base-100);grid-row-start:1;grid-column-start:1;position:relative;overflow:hidden;&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}}}@media (width>=1024px){.lg\:diff{-webkit-user-select:none;user-select:none;direction:ltr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size;&:focus-visible,&:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}&:focus-visible{outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content);& .diff-resizer{min-width:90cqi;max-width:90cqi}}&:has(.diff-item-2:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;& .diff-resizer{min-width:10cqi;max-width:10cqi}}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:focus{& .diff-resizer{min-width:10cqi;max-width:10cqi}}&:has(.diff-item-1:focus){& .diff-resizer{min-width:90cqi;max-width:90cqi}}}}.lg\:diff-resizer{z-index:1;resize:horizontal;opacity:0;cursor:ew-resize;transform-origin:100% 100%;clip-path:inset(calc(100% - .75rem) 0 0 calc(100% - .75rem));grid-row-start:1;grid-column-start:1;width:50cqi;min-width:1rem;max-width:calc(100cqi - 1rem);height:.5rem;transition:min-width .3s ease-out,max-width .3s ease-out;position:relative;top:50%;overflow:hidden;transform:scaleY(3)translate(.35rem,.08rem)}.lg\:diff-item-2{grid-row-start:1;grid-column-start:1;position:relative;&:after{pointer-events:none;z-index:2;background-color:color-mix(in oklab,var(--color-base-100)50%,transparent);border:2px solid var(--color-base-100);content:"";outline:1px solid color-mix(in oklab,var(--color-base-content)5%,#0000);outline-offset:-3px;backdrop-filter:blur(8px);border-radius:3.40282e38px;width:1.2rem;height:1.8rem;position:absolute;top:50%;bottom:0;right:1px;translate:50% -50%;box-shadow:0 1px 2px oklch(0% 0 0/.1)}&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:after{content:none}}}.lg\:diff-item-1{z-index:1;border-right:2px solid var(--color-base-100);grid-row-start:1;grid-column-start:1;position:relative;overflow:hidden;&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}}}@media (width>=1280px){.xl\:diff{-webkit-user-select:none;user-select:none;direction:ltr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size;&:focus-visible,&:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}&:focus-visible{outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content);& .diff-resizer{min-width:90cqi;max-width:90cqi}}&:has(.diff-item-2:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;& .diff-resizer{min-width:10cqi;max-width:10cqi}}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:focus{& .diff-resizer{min-width:10cqi;max-width:10cqi}}&:has(.diff-item-1:focus){& .diff-resizer{min-width:90cqi;max-width:90cqi}}}}.xl\:diff-resizer{z-index:1;resize:horizontal;opacity:0;cursor:ew-resize;transform-origin:100% 100%;clip-path:inset(calc(100% - .75rem) 0 0 calc(100% - .75rem));grid-row-start:1;grid-column-start:1;width:50cqi;min-width:1rem;max-width:calc(100cqi - 1rem);height:.5rem;transition:min-width .3s ease-out,max-width .3s ease-out;position:relative;top:50%;overflow:hidden;transform:scaleY(3)translate(.35rem,.08rem)}.xl\:diff-item-2{grid-row-start:1;grid-column-start:1;position:relative;&:after{pointer-events:none;z-index:2;background-color:color-mix(in oklab,var(--color-base-100)50%,transparent);border:2px solid var(--color-base-100);content:"";outline:1px solid color-mix(in oklab,var(--color-base-content)5%,#0000);outline-offset:-3px;backdrop-filter:blur(8px);border-radius:3.40282e38px;width:1.2rem;height:1.8rem;position:absolute;top:50%;bottom:0;right:1px;translate:50% -50%;box-shadow:0 1px 2px oklch(0% 0 0/.1)}&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:after{content:none}}}.xl\:diff-item-1{z-index:1;border-right:2px solid var(--color-base-100);grid-row-start:1;grid-column-start:1;position:relative;overflow:hidden;&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}}}@media (width>=1536px){.\32 xl\:diff{-webkit-user-select:none;user-select:none;direction:ltr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size;&:focus-visible,&:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}&:focus-visible{outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content);& .diff-resizer{min-width:90cqi;max-width:90cqi}}&:has(.diff-item-2:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;& .diff-resizer{min-width:10cqi;max-width:10cqi}}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:focus{& .diff-resizer{min-width:10cqi;max-width:10cqi}}&:has(.diff-item-1:focus){& .diff-resizer{min-width:90cqi;max-width:90cqi}}}}.\32 xl\:diff-resizer{z-index:1;resize:horizontal;opacity:0;cursor:ew-resize;transform-origin:100% 100%;clip-path:inset(calc(100% - .75rem) 0 0 calc(100% - .75rem));grid-row-start:1;grid-column-start:1;width:50cqi;min-width:1rem;max-width:calc(100cqi - 1rem);height:.5rem;transition:min-width .3s ease-out,max-width .3s ease-out;position:relative;top:50%;overflow:hidden;transform:scaleY(3)translate(.35rem,.08rem)}.\32 xl\:diff-item-2{grid-row-start:1;grid-column-start:1;position:relative;&:after{pointer-events:none;z-index:2;background-color:color-mix(in oklab,var(--color-base-100)50%,transparent);border:2px solid var(--color-base-100);content:"";outline:1px solid color-mix(in oklab,var(--color-base-content)5%,#0000);outline-offset:-3px;backdrop-filter:blur(8px);border-radius:3.40282e38px;width:1.2rem;height:1.8rem;position:absolute;top:50%;bottom:0;right:1px;translate:50% -50%;box-shadow:0 1px 2px oklch(0% 0 0/.1)}&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){&:after{content:none}}}.\32 xl\:diff-item-1{z-index:1;border-right:2px solid var(--color-base-100);grid-row-start:1;grid-column-start:1;position:relative;overflow:hidden;&>*{pointer-events:none;object-fit:cover;object-position:center;width:100cqi;max-width:none;height:100%;position:absolute;top:0;bottom:0;left:0}}}.stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid;&>*{width:100%;height:100%;&:nth-child(n+2){opacity:.7;width:100%}&:nth-child(2){z-index:2;opacity:.9}&:first-child{z-index:3;width:100%}}&,&.stack-bottom{&>*{grid-area:3/3/6/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/4/6}}}&.stack-top{&>*{grid-area:1/3/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:3/1/6/6}}}&.stack-start{&>*{grid-area:3/1/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/3/6/6}}}&.stack-end{&>*{grid-area:3/3/4/6;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/6/4}}}}@media (width>=640px){.sm\:stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid;&>*{width:100%;height:100%;&:nth-child(n+2){opacity:.7;width:100%}&:nth-child(2){z-index:2;opacity:.9}&:first-child{z-index:3;width:100%}}&,&.stack-bottom{&>*{grid-area:3/3/6/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/4/6}}}&.stack-top{&>*{grid-area:1/3/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:3/1/6/6}}}&.stack-start{&>*{grid-area:3/1/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/3/6/6}}}&.stack-end{&>*{grid-area:3/3/4/6;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/6/4}}}}}@media (width>=768px){.md\:stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid;&>*{width:100%;height:100%;&:nth-child(n+2){opacity:.7;width:100%}&:nth-child(2){z-index:2;opacity:.9}&:first-child{z-index:3;width:100%}}&,&.stack-bottom{&>*{grid-area:3/3/6/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/4/6}}}&.stack-top{&>*{grid-area:1/3/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:3/1/6/6}}}&.stack-start{&>*{grid-area:3/1/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/3/6/6}}}&.stack-end{&>*{grid-area:3/3/4/6;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/6/4}}}}}@media (width>=1024px){.lg\:stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid;&>*{width:100%;height:100%;&:nth-child(n+2){opacity:.7;width:100%}&:nth-child(2){z-index:2;opacity:.9}&:first-child{z-index:3;width:100%}}&,&.stack-bottom{&>*{grid-area:3/3/6/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/4/6}}}&.stack-top{&>*{grid-area:1/3/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:3/1/6/6}}}&.stack-start{&>*{grid-area:3/1/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/3/6/6}}}&.stack-end{&>*{grid-area:3/3/4/6;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/6/4}}}}}@media (width>=1280px){.xl\:stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid;&>*{width:100%;height:100%;&:nth-child(n+2){opacity:.7;width:100%}&:nth-child(2){z-index:2;opacity:.9}&:first-child{z-index:3;width:100%}}&,&.stack-bottom{&>*{grid-area:3/3/6/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/4/6}}}&.stack-top{&>*{grid-area:1/3/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:3/1/6/6}}}&.stack-start{&>*{grid-area:3/1/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/3/6/6}}}&.stack-end{&>*{grid-area:3/3/4/6;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/6/4}}}}}@media (width>=1536px){.\32 xl\:stack{grid-template-rows:3px 4px 1fr 4px 3px;grid-template-columns:3px 4px 1fr 4px 3px;display:inline-grid;&>*{width:100%;height:100%;&:nth-child(n+2){opacity:.7;width:100%}&:nth-child(2){z-index:2;opacity:.9}&:first-child{z-index:3;width:100%}}&,&.stack-bottom{&>*{grid-area:3/3/6/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/4/6}}}&.stack-top{&>*{grid-area:1/3/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:3/1/6/6}}}&.stack-start{&>*{grid-area:3/1/4/4;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/3/6/6}}}&.stack-end{&>*{grid-area:3/3/4/6;&:nth-child(2){grid-area:2/2/5/5}&:first-child{grid-area:1/1/6/4}}}}}.toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)inset;--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000);--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;transition:color .3s,grid-template-columns .2s;display:inline-grid;position:relative;&>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:nth-child(2){color:var(--color-base-100);rotate:none}&:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}}&:has(:checked){&>:nth-child(2){opacity:0;rotate:15deg}&>:nth-child(3){opacity:1;rotate:none}}&:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000);background-color:currentColor;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}&:focus-visible,&:has(:focus-visible){outline-offset:2px;outline:2px solid}&:checked,&[aria-checked=true],&:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr;&:before{background-color:currentColor}@starting-style{&:before{opacity:0}}}&:indeterminate{grid-template-columns:.5fr 1fr .5fr}&:disabled{cursor:not-allowed;opacity:.3;&:before{border:var(--border)solid currentColor;background-color:#0000}}}.toggle-primary{&:checked,&[aria-checked=true]{--input-color:var(--color-primary)}}.toggle-secondary{&:checked,&[aria-checked=true]{--input-color:var(--color-secondary)}}.toggle-accent{&:checked,&[aria-checked=true]{--input-color:var(--color-accent)}}.toggle-neutral{&:checked,&[aria-checked=true]{--input-color:var(--color-neutral)}}.toggle-success{&:checked,&[aria-checked=true]{--input-color:var(--color-success)}}.toggle-warning{&:checked,&[aria-checked=true]{--input-color:var(--color-warning)}}.toggle-info{&:checked,&[aria-checked=true]{--input-color:var(--color-info)}}.toggle-error{&:checked,&[aria-checked=true]{--input-color:var(--color-error)}}.toggle-xs{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.toggle-sm{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}}.toggle-md{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*6)}}.toggle-lg{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}}.toggle-xl{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*8)}}@media (width>=640px){.sm\:toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)inset;--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000);--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;transition:color .3s,grid-template-columns .2s;display:inline-grid;position:relative;&>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:nth-child(2){color:var(--color-base-100);rotate:none}&:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}}&:has(:checked){&>:nth-child(2){opacity:0;rotate:15deg}&>:nth-child(3){opacity:1;rotate:none}}&:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000);background-color:currentColor;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}&:focus-visible,&:has(:focus-visible){outline-offset:2px;outline:2px solid}&:checked,&[aria-checked=true],&:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr;&:before{background-color:currentColor}@starting-style{&:before{opacity:0}}}&:indeterminate{grid-template-columns:.5fr 1fr .5fr}&:disabled{cursor:not-allowed;opacity:.3;&:before{border:var(--border)solid currentColor;background-color:#0000}}}.sm\:toggle-primary{&:checked,&[aria-checked=true]{--input-color:var(--color-primary)}}.sm\:toggle-secondary{&:checked,&[aria-checked=true]{--input-color:var(--color-secondary)}}.sm\:toggle-accent{&:checked,&[aria-checked=true]{--input-color:var(--color-accent)}}.sm\:toggle-neutral{&:checked,&[aria-checked=true]{--input-color:var(--color-neutral)}}.sm\:toggle-success{&:checked,&[aria-checked=true]{--input-color:var(--color-success)}}.sm\:toggle-warning{&:checked,&[aria-checked=true]{--input-color:var(--color-warning)}}.sm\:toggle-info{&:checked,&[aria-checked=true]{--input-color:var(--color-info)}}.sm\:toggle-error{&:checked,&[aria-checked=true]{--input-color:var(--color-error)}}.sm\:toggle-xs{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.sm\:toggle-sm{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}}.sm\:toggle-md{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*6)}}.sm\:toggle-lg{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}}.sm\:toggle-xl{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*8)}}}@media (width>=768px){.md\:toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)inset;--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000);--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;transition:color .3s,grid-template-columns .2s;display:inline-grid;position:relative;&>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:nth-child(2){color:var(--color-base-100);rotate:none}&:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}}&:has(:checked){&>:nth-child(2){opacity:0;rotate:15deg}&>:nth-child(3){opacity:1;rotate:none}}&:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000);background-color:currentColor;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}&:focus-visible,&:has(:focus-visible){outline-offset:2px;outline:2px solid}&:checked,&[aria-checked=true],&:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr;&:before{background-color:currentColor}@starting-style{&:before{opacity:0}}}&:indeterminate{grid-template-columns:.5fr 1fr .5fr}&:disabled{cursor:not-allowed;opacity:.3;&:before{border:var(--border)solid currentColor;background-color:#0000}}}.md\:toggle-primary{&:checked,&[aria-checked=true]{--input-color:var(--color-primary)}}.md\:toggle-secondary{&:checked,&[aria-checked=true]{--input-color:var(--color-secondary)}}.md\:toggle-accent{&:checked,&[aria-checked=true]{--input-color:var(--color-accent)}}.md\:toggle-neutral{&:checked,&[aria-checked=true]{--input-color:var(--color-neutral)}}.md\:toggle-success{&:checked,&[aria-checked=true]{--input-color:var(--color-success)}}.md\:toggle-warning{&:checked,&[aria-checked=true]{--input-color:var(--color-warning)}}.md\:toggle-info{&:checked,&[aria-checked=true]{--input-color:var(--color-info)}}.md\:toggle-error{&:checked,&[aria-checked=true]{--input-color:var(--color-error)}}.md\:toggle-xs{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.md\:toggle-sm{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}}.md\:toggle-md{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*6)}}.md\:toggle-lg{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}}.md\:toggle-xl{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*8)}}}@media (width>=1024px){.lg\:toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)inset;--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000);--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;transition:color .3s,grid-template-columns .2s;display:inline-grid;position:relative;&>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:nth-child(2){color:var(--color-base-100);rotate:none}&:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}}&:has(:checked){&>:nth-child(2){opacity:0;rotate:15deg}&>:nth-child(3){opacity:1;rotate:none}}&:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000);background-color:currentColor;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}&:focus-visible,&:has(:focus-visible){outline-offset:2px;outline:2px solid}&:checked,&[aria-checked=true],&:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr;&:before{background-color:currentColor}@starting-style{&:before{opacity:0}}}&:indeterminate{grid-template-columns:.5fr 1fr .5fr}&:disabled{cursor:not-allowed;opacity:.3;&:before{border:var(--border)solid currentColor;background-color:#0000}}}.lg\:toggle-primary{&:checked,&[aria-checked=true]{--input-color:var(--color-primary)}}.lg\:toggle-secondary{&:checked,&[aria-checked=true]{--input-color:var(--color-secondary)}}.lg\:toggle-accent{&:checked,&[aria-checked=true]{--input-color:var(--color-accent)}}.lg\:toggle-neutral{&:checked,&[aria-checked=true]{--input-color:var(--color-neutral)}}.lg\:toggle-success{&:checked,&[aria-checked=true]{--input-color:var(--color-success)}}.lg\:toggle-warning{&:checked,&[aria-checked=true]{--input-color:var(--color-warning)}}.lg\:toggle-info{&:checked,&[aria-checked=true]{--input-color:var(--color-info)}}.lg\:toggle-error{&:checked,&[aria-checked=true]{--input-color:var(--color-error)}}.lg\:toggle-xs{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.lg\:toggle-sm{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}}.lg\:toggle-md{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*6)}}.lg\:toggle-lg{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}}.lg\:toggle-xl{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*8)}}}@media (width>=1280px){.xl\:toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)inset;--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000);--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;transition:color .3s,grid-template-columns .2s;display:inline-grid;position:relative;&>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:nth-child(2){color:var(--color-base-100);rotate:none}&:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}}&:has(:checked){&>:nth-child(2){opacity:0;rotate:15deg}&>:nth-child(3){opacity:1;rotate:none}}&:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000);background-color:currentColor;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}&:focus-visible,&:has(:focus-visible){outline-offset:2px;outline:2px solid}&:checked,&[aria-checked=true],&:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr;&:before{background-color:currentColor}@starting-style{&:before{opacity:0}}}&:indeterminate{grid-template-columns:.5fr 1fr .5fr}&:disabled{cursor:not-allowed;opacity:.3;&:before{border:var(--border)solid currentColor;background-color:#0000}}}.xl\:toggle-primary{&:checked,&[aria-checked=true]{--input-color:var(--color-primary)}}.xl\:toggle-secondary{&:checked,&[aria-checked=true]{--input-color:var(--color-secondary)}}.xl\:toggle-accent{&:checked,&[aria-checked=true]{--input-color:var(--color-accent)}}.xl\:toggle-neutral{&:checked,&[aria-checked=true]{--input-color:var(--color-neutral)}}.xl\:toggle-success{&:checked,&[aria-checked=true]{--input-color:var(--color-success)}}.xl\:toggle-warning{&:checked,&[aria-checked=true]{--input-color:var(--color-warning)}}.xl\:toggle-info{&:checked,&[aria-checked=true]{--input-color:var(--color-info)}}.xl\:toggle-error{&:checked,&[aria-checked=true]{--input-color:var(--color-error)}}.xl\:toggle-xs{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.xl\:toggle-sm{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}}.xl\:toggle-md{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*6)}}.xl\:toggle-lg{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}}.xl\:toggle-xl{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*8)}}}@media (width>=1536px){.\32 xl\:toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;appearance:none;vertical-align:middle;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)inset;--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000);--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;transition:color .3s,grid-template-columns .2s;display:inline-grid;position:relative;&>*{z-index:1;cursor:pointer;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:nth-child(2){color:var(--color-base-100);rotate:none}&:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}}&:has(:checked){&>:nth-child(2){opacity:0;rotate:15deg}&>:nth-child(3){opacity:1;rotate:none}}&:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000);background-color:currentColor;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@media (forced-colors:active){&:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}@media print{&:before{outline-offset:-1rem;outline:.25rem solid}}&:focus-visible,&:has(:focus-visible){outline-offset:2px;outline:2px solid}&:checked,&[aria-checked=true],&:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr;&:before{background-color:currentColor}@starting-style{&:before{opacity:0}}}&:indeterminate{grid-template-columns:.5fr 1fr .5fr}&:disabled{cursor:not-allowed;opacity:.3;&:before{border:var(--border)solid currentColor;background-color:#0000}}}.\32 xl\:toggle-primary{&:checked,&[aria-checked=true]{--input-color:var(--color-primary)}}.\32 xl\:toggle-secondary{&:checked,&[aria-checked=true]{--input-color:var(--color-secondary)}}.\32 xl\:toggle-accent{&:checked,&[aria-checked=true]{--input-color:var(--color-accent)}}.\32 xl\:toggle-neutral{&:checked,&[aria-checked=true]{--input-color:var(--color-neutral)}}.\32 xl\:toggle-success{&:checked,&[aria-checked=true]{--input-color:var(--color-success)}}.\32 xl\:toggle-warning{&:checked,&[aria-checked=true]{--input-color:var(--color-warning)}}.\32 xl\:toggle-info{&:checked,&[aria-checked=true]{--input-color:var(--color-info)}}.\32 xl\:toggle-error{&:checked,&[aria-checked=true]{--input-color:var(--color-error)}}.\32 xl\:toggle-xs{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.\32 xl\:toggle-sm{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}}.\32 xl\:toggle-md{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*6)}}.\32 xl\:toggle-lg{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}}.\32 xl\:toggle-xl{&[type=checkbox],&:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*8)}}}.label{white-space:nowrap;color:color-mix(in oklab,currentColor 60%,transparent);align-items:center;gap:.375rem;display:inline-flex;&:has(input){cursor:pointer}&:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex;&:first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:-.75rem .75rem}&:last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:.75rem -.75rem}}}.floating-label{display:block;position:relative;& input{display:block;&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}& textarea{&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}&>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem)*10/2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}&:focus-within,&:not(:has(input:placeholder-shown,textarea:placeholder-shown)){& ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}&>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}}&:has(:disabled,[disabled]){&>span{opacity:0}}&:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem)*6/2);font-size:.6875rem}&:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem)*8/2);font-size:.75rem}&:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem)*10/2);font-size:.875rem}&:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem)*12/2);font-size:1.125rem}&:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem)*14/2);font-size:1.375rem}}@media (width>=640px){.sm\:label{white-space:nowrap;color:color-mix(in oklab,currentColor 60%,transparent);align-items:center;gap:.375rem;display:inline-flex;&:has(input){cursor:pointer}&:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex;&:first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:-.75rem .75rem}&:last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:.75rem -.75rem}}}.sm\:floating-label{display:block;position:relative;& input{display:block;&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}& textarea{&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}&>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem)*10/2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}&:focus-within,&:not(:has(input:placeholder-shown,textarea:placeholder-shown)){& ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}&>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}}&:has(:disabled,[disabled]){&>span{opacity:0}}&:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem)*6/2);font-size:.6875rem}&:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem)*8/2);font-size:.75rem}&:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem)*10/2);font-size:.875rem}&:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem)*12/2);font-size:1.125rem}&:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem)*14/2);font-size:1.375rem}}}@media (width>=768px){.md\:label{white-space:nowrap;color:color-mix(in oklab,currentColor 60%,transparent);align-items:center;gap:.375rem;display:inline-flex;&:has(input){cursor:pointer}&:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex;&:first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:-.75rem .75rem}&:last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:.75rem -.75rem}}}.md\:floating-label{display:block;position:relative;& input{display:block;&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}& textarea{&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}&>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem)*10/2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}&:focus-within,&:not(:has(input:placeholder-shown,textarea:placeholder-shown)){& ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}&>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}}&:has(:disabled,[disabled]){&>span{opacity:0}}&:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem)*6/2);font-size:.6875rem}&:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem)*8/2);font-size:.75rem}&:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem)*10/2);font-size:.875rem}&:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem)*12/2);font-size:1.125rem}&:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem)*14/2);font-size:1.375rem}}}@media (width>=1024px){.lg\:label{white-space:nowrap;color:color-mix(in oklab,currentColor 60%,transparent);align-items:center;gap:.375rem;display:inline-flex;&:has(input){cursor:pointer}&:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex;&:first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:-.75rem .75rem}&:last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:.75rem -.75rem}}}.lg\:floating-label{display:block;position:relative;& input{display:block;&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}& textarea{&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}&>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem)*10/2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}&:focus-within,&:not(:has(input:placeholder-shown,textarea:placeholder-shown)){& ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}&>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}}&:has(:disabled,[disabled]){&>span{opacity:0}}&:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem)*6/2);font-size:.6875rem}&:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem)*8/2);font-size:.75rem}&:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem)*10/2);font-size:.875rem}&:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem)*12/2);font-size:1.125rem}&:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem)*14/2);font-size:1.375rem}}}@media (width>=1280px){.xl\:label{white-space:nowrap;color:color-mix(in oklab,currentColor 60%,transparent);align-items:center;gap:.375rem;display:inline-flex;&:has(input){cursor:pointer}&:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex;&:first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:-.75rem .75rem}&:last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:.75rem -.75rem}}}.xl\:floating-label{display:block;position:relative;& input{display:block;&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}& textarea{&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}&>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem)*10/2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}&:focus-within,&:not(:has(input:placeholder-shown,textarea:placeholder-shown)){& ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}&>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}}&:has(:disabled,[disabled]){&>span{opacity:0}}&:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem)*6/2);font-size:.6875rem}&:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem)*8/2);font-size:.75rem}&:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem)*10/2);font-size:.875rem}&:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem)*12/2);font-size:1.125rem}&:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem)*14/2);font-size:1.375rem}}}@media (width>=1536px){.\32 xl\:label{white-space:nowrap;color:color-mix(in oklab,currentColor 60%,transparent);align-items:center;gap:.375rem;display:inline-flex;&:has(input){cursor:pointer}&:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex;&:first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:-.75rem .75rem}&:last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:.75rem -.75rem}}}.\32 xl\:floating-label{display:block;position:relative;& input{display:block;&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}& textarea{&::placeholder{transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out}}&>span{z-index:1;background-color:var(--color-base-100);opacity:0;inset-inline-start:.75rem;top:calc(var(--size-field,.25rem)*10/2);pointer-events:none;border-radius:2px;padding-inline:.25rem;font-size:.875rem;line-height:1;transition:top .1s ease-out,translate .1s ease-out,scale .1s ease-out,opacity .1s ease-out;position:absolute;translate:0 -50%}&:focus-within,&:not(:has(input:placeholder-shown,textarea:placeholder-shown)){& ::placeholder{opacity:0;pointer-events:auto;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}&>span{opacity:1;pointer-events:auto;z-index:2;top:0;translate:-12.5% calc(-50% - .125em);scale:.75}}&:has(:disabled,[disabled]){&>span{opacity:0}}&:has(.input-xs,.select-xs,.textarea-xs) span{top:calc(var(--size-field,.25rem)*6/2);font-size:.6875rem}&:has(.input-sm,.select-sm,.textarea-sm) span{top:calc(var(--size-field,.25rem)*8/2);font-size:.75rem}&:has(.input-md,.select-md,.textarea-md) span{top:calc(var(--size-field,.25rem)*10/2);font-size:.875rem}&:has(.input-lg,.select-lg,.textarea-lg) span{top:calc(var(--size-field,.25rem)*12/2);font-size:1.125rem}&:has(.input-xl,.select-xl,.textarea-xl) span{top:calc(var(--size-field,.25rem)*14/2);font-size:1.375rem}}}.filter{flex-wrap:wrap;display:flex;& input[type=radio]{width:auto}& input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1;&:not(:last-child){margin-inline-end:.25rem}&.filter-reset{aspect-ratio:1;&:after{content:"×"}}}&:not(:has(input:checked:not(.filter-reset))){& .filter-reset,& input[type=reset]{opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}}&:has(input:checked:not(.filter-reset)){& input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}}}.carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;display:inline-flex;overflow-x:scroll;&::-webkit-scrollbar{display:none}}.carousel-vertical{scroll-snap-type:y mandatory;flex-direction:column;overflow-y:scroll}.carousel-horizontal{scroll-snap-type:x mandatory;flex-direction:row;overflow-x:scroll}.carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.carousel-start{& .carousel-item{scroll-snap-align:start}}.carousel-center{& .carousel-item{scroll-snap-align:center}}.carousel-end{& .carousel-item{scroll-snap-align:end}}@media (width>=640px){.sm\:carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;display:inline-flex;overflow-x:scroll;&::-webkit-scrollbar{display:none}}.sm\:carousel-vertical{scroll-snap-type:y mandatory;flex-direction:column;overflow-y:scroll}.sm\:carousel-horizontal{scroll-snap-type:x mandatory;flex-direction:row;overflow-x:scroll}.sm\:carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.sm\:carousel-start{& .carousel-item{scroll-snap-align:start}}.sm\:carousel-center{& .carousel-item{scroll-snap-align:center}}.sm\:carousel-end{& .carousel-item{scroll-snap-align:end}}}@media (width>=768px){.md\:carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;display:inline-flex;overflow-x:scroll;&::-webkit-scrollbar{display:none}}.md\:carousel-vertical{scroll-snap-type:y mandatory;flex-direction:column;overflow-y:scroll}.md\:carousel-horizontal{scroll-snap-type:x mandatory;flex-direction:row;overflow-x:scroll}.md\:carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.md\:carousel-start{& .carousel-item{scroll-snap-align:start}}.md\:carousel-center{& .carousel-item{scroll-snap-align:center}}.md\:carousel-end{& .carousel-item{scroll-snap-align:end}}}@media (width>=1024px){.lg\:carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;display:inline-flex;overflow-x:scroll;&::-webkit-scrollbar{display:none}}.lg\:carousel-vertical{scroll-snap-type:y mandatory;flex-direction:column;overflow-y:scroll}.lg\:carousel-horizontal{scroll-snap-type:x mandatory;flex-direction:row;overflow-x:scroll}.lg\:carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.lg\:carousel-start{& .carousel-item{scroll-snap-align:start}}.lg\:carousel-center{& .carousel-item{scroll-snap-align:center}}.lg\:carousel-end{& .carousel-item{scroll-snap-align:end}}}@media (width>=1280px){.xl\:carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;display:inline-flex;overflow-x:scroll;&::-webkit-scrollbar{display:none}}.xl\:carousel-vertical{scroll-snap-type:y mandatory;flex-direction:column;overflow-y:scroll}.xl\:carousel-horizontal{scroll-snap-type:x mandatory;flex-direction:row;overflow-x:scroll}.xl\:carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.xl\:carousel-start{& .carousel-item{scroll-snap-align:start}}.xl\:carousel-center{& .carousel-item{scroll-snap-align:center}}.xl\:carousel-end{& .carousel-item{scroll-snap-align:end}}}@media (width>=1536px){.\32 xl\:carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;display:inline-flex;overflow-x:scroll;&::-webkit-scrollbar{display:none}}.\32 xl\:carousel-vertical{scroll-snap-type:y mandatory;flex-direction:column;overflow-y:scroll}.\32 xl\:carousel-horizontal{scroll-snap-type:x mandatory;flex-direction:row;overflow-x:scroll}.\32 xl\:carousel-item{box-sizing:content-box;scroll-snap-align:start;flex:none;display:flex}.\32 xl\:carousel-start{& .carousel-item{scroll-snap-align:start}}.\32 xl\:carousel-center{& .carousel-item{scroll-snap-align:center}}.\32 xl\:carousel-end{& .carousel-item{scroll-snap-align:end}}}.avatar-group{display:flex;overflow:hidden;& :where(.avatar){border:4px solid var(--color-base-100);border-radius:3.40282e38px;overflow:hidden}}.avatar{vertical-align:middle;display:inline-flex;position:relative;&>div{aspect-ratio:1;display:block;overflow:hidden}& img{object-fit:cover;width:100%;height:100%}}.avatar-placeholder{&>div{justify-content:center;align-items:center;display:flex}}.avatar-online{&:before{content:"";z-index:1;background-color:var(--color-success);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}.avatar-offline{&:before{content:"";z-index:1;background-color:var(--color-base-300);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}@media (width>=640px){.sm\:avatar-group{display:flex;overflow:hidden;& :where(.avatar){border:4px solid var(--color-base-100);border-radius:3.40282e38px;overflow:hidden}}.sm\:avatar{vertical-align:middle;display:inline-flex;position:relative;&>div{aspect-ratio:1;display:block;overflow:hidden}& img{object-fit:cover;width:100%;height:100%}}.sm\:avatar-placeholder{&>div{justify-content:center;align-items:center;display:flex}}.sm\:avatar-online{&:before{content:"";z-index:1;background-color:var(--color-success);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}.sm\:avatar-offline{&:before{content:"";z-index:1;background-color:var(--color-base-300);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}}@media (width>=768px){.md\:avatar-group{display:flex;overflow:hidden;& :where(.avatar){border:4px solid var(--color-base-100);border-radius:3.40282e38px;overflow:hidden}}.md\:avatar{vertical-align:middle;display:inline-flex;position:relative;&>div{aspect-ratio:1;display:block;overflow:hidden}& img{object-fit:cover;width:100%;height:100%}}.md\:avatar-placeholder{&>div{justify-content:center;align-items:center;display:flex}}.md\:avatar-online{&:before{content:"";z-index:1;background-color:var(--color-success);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}.md\:avatar-offline{&:before{content:"";z-index:1;background-color:var(--color-base-300);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}}@media (width>=1024px){.lg\:avatar-group{display:flex;overflow:hidden;& :where(.avatar){border:4px solid var(--color-base-100);border-radius:3.40282e38px;overflow:hidden}}.lg\:avatar{vertical-align:middle;display:inline-flex;position:relative;&>div{aspect-ratio:1;display:block;overflow:hidden}& img{object-fit:cover;width:100%;height:100%}}.lg\:avatar-placeholder{&>div{justify-content:center;align-items:center;display:flex}}.lg\:avatar-online{&:before{content:"";z-index:1;background-color:var(--color-success);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}.lg\:avatar-offline{&:before{content:"";z-index:1;background-color:var(--color-base-300);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}}@media (width>=1280px){.xl\:avatar-group{display:flex;overflow:hidden;& :where(.avatar){border:4px solid var(--color-base-100);border-radius:3.40282e38px;overflow:hidden}}.xl\:avatar{vertical-align:middle;display:inline-flex;position:relative;&>div{aspect-ratio:1;display:block;overflow:hidden}& img{object-fit:cover;width:100%;height:100%}}.xl\:avatar-placeholder{&>div{justify-content:center;align-items:center;display:flex}}.xl\:avatar-online{&:before{content:"";z-index:1;background-color:var(--color-success);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}.xl\:avatar-offline{&:before{content:"";z-index:1;background-color:var(--color-base-300);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}}@media (width>=1536px){.\32 xl\:avatar-group{display:flex;overflow:hidden;& :where(.avatar){border:4px solid var(--color-base-100);border-radius:3.40282e38px;overflow:hidden}}.\32 xl\:avatar{vertical-align:middle;display:inline-flex;position:relative;&>div{aspect-ratio:1;display:block;overflow:hidden}& img{object-fit:cover;width:100%;height:100%}}.\32 xl\:avatar-placeholder{&>div{justify-content:center;align-items:center;display:flex}}.\32 xl\:avatar-online{&:before{content:"";z-index:1;background-color:var(--color-success);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}.\32 xl\:avatar-offline{&:before{content:"";z-index:1;background-color:var(--color-base-300);outline:2px solid var(--color-base-100);border-radius:3.40282e38px;width:15%;height:15%;display:block;position:absolute;top:7%;right:7%}}}.link{cursor:pointer;text-decoration-line:underline;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}.link-hover{text-decoration-line:none;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}}.link-primary{color:var(--color-primary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-primary)80%,#000)}}}.link-secondary{color:var(--color-secondary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-secondary)80%,#000)}}}.link-accent{color:var(--color-accent);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-accent)80%,#000)}}}.link-neutral{color:var(--color-neutral);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-neutral)80%,#000)}}}.link-success{color:var(--color-success);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-success)80%,#000)}}}.link-info{color:var(--color-info);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-info)80%,#000)}}}.link-warning{color:var(--color-warning);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-warning)80%,#000)}}}.link-error{color:var(--color-error);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-error)80%,#000)}}}@media (width>=640px){.sm\:link{cursor:pointer;text-decoration-line:underline;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}.sm\:link-hover{text-decoration-line:none;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}}.sm\:link-primary{color:var(--color-primary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-primary)80%,#000)}}}.sm\:link-secondary{color:var(--color-secondary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-secondary)80%,#000)}}}.sm\:link-accent{color:var(--color-accent);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-accent)80%,#000)}}}.sm\:link-neutral{color:var(--color-neutral);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-neutral)80%,#000)}}}.sm\:link-success{color:var(--color-success);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-success)80%,#000)}}}.sm\:link-info{color:var(--color-info);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-info)80%,#000)}}}.sm\:link-warning{color:var(--color-warning);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-warning)80%,#000)}}}.sm\:link-error{color:var(--color-error);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-error)80%,#000)}}}}@media (width>=768px){.md\:link{cursor:pointer;text-decoration-line:underline;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}.md\:link-hover{text-decoration-line:none;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}}.md\:link-primary{color:var(--color-primary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-primary)80%,#000)}}}.md\:link-secondary{color:var(--color-secondary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-secondary)80%,#000)}}}.md\:link-accent{color:var(--color-accent);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-accent)80%,#000)}}}.md\:link-neutral{color:var(--color-neutral);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-neutral)80%,#000)}}}.md\:link-success{color:var(--color-success);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-success)80%,#000)}}}.md\:link-info{color:var(--color-info);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-info)80%,#000)}}}.md\:link-warning{color:var(--color-warning);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-warning)80%,#000)}}}.md\:link-error{color:var(--color-error);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-error)80%,#000)}}}}@media (width>=1024px){.lg\:link{cursor:pointer;text-decoration-line:underline;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}.lg\:link-hover{text-decoration-line:none;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}}.lg\:link-primary{color:var(--color-primary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-primary)80%,#000)}}}.lg\:link-secondary{color:var(--color-secondary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-secondary)80%,#000)}}}.lg\:link-accent{color:var(--color-accent);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-accent)80%,#000)}}}.lg\:link-neutral{color:var(--color-neutral);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-neutral)80%,#000)}}}.lg\:link-success{color:var(--color-success);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-success)80%,#000)}}}.lg\:link-info{color:var(--color-info);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-info)80%,#000)}}}.lg\:link-warning{color:var(--color-warning);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-warning)80%,#000)}}}.lg\:link-error{color:var(--color-error);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-error)80%,#000)}}}}@media (width>=1280px){.xl\:link{cursor:pointer;text-decoration-line:underline;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}.xl\:link-hover{text-decoration-line:none;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}}.xl\:link-primary{color:var(--color-primary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-primary)80%,#000)}}}.xl\:link-secondary{color:var(--color-secondary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-secondary)80%,#000)}}}.xl\:link-accent{color:var(--color-accent);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-accent)80%,#000)}}}.xl\:link-neutral{color:var(--color-neutral);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-neutral)80%,#000)}}}.xl\:link-success{color:var(--color-success);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-success)80%,#000)}}}.xl\:link-info{color:var(--color-info);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-info)80%,#000)}}}.xl\:link-warning{color:var(--color-warning);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-warning)80%,#000)}}}.xl\:link-error{color:var(--color-error);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-error)80%,#000)}}}}@media (width>=1536px){.\32 xl\:link{cursor:pointer;text-decoration-line:underline;&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:focus-visible{outline-offset:2px;outline:2px solid}}.\32 xl\:link-hover{text-decoration-line:none;&:hover{@media (hover:hover){&{text-decoration-line:underline}}}}.\32 xl\:link-primary{color:var(--color-primary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-primary)80%,#000)}}}.\32 xl\:link-secondary{color:var(--color-secondary);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-secondary)80%,#000)}}}.\32 xl\:link-accent{color:var(--color-accent);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-accent)80%,#000)}}}.\32 xl\:link-neutral{color:var(--color-neutral);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-neutral)80%,#000)}}}.\32 xl\:link-success{color:var(--color-success);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-success)80%,#000)}}}.\32 xl\:link-info{color:var(--color-info);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-info)80%,#000)}}}.\32 xl\:link-warning{color:var(--color-warning);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-warning)80%,#000)}}}.\32 xl\:link-error{color:var(--color-error);@media (hover:hover){&:hover{color:color-mix(in oklab,var(--color-error)80%,#000)}}}}.alert{border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;border:var(--border)solid var(--color-base-200);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08))inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}&.alert-outline{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none}&.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}&.alert-soft{color:var(--alert-color,var(--color-base-content));background:color-mix(in oklab,var(--alert-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--alert-color,var(--color-base-content))10%,var(--color-base-100));box-shadow:none;background-image:none}}.alert-info{border-color:var(--color-info);color:var(--color-info-content);--alert-color:var(--color-info)}.alert-success{border-color:var(--color-success);color:var(--color-success-content);--alert-color:var(--color-success)}.alert-warning{border-color:var(--color-warning);color:var(--color-warning-content);--alert-color:var(--color-warning)}.alert-error{border-color:var(--color-error);color:var(--color-error-content);--alert-color:var(--color-error)}.alert-vertical{text-align:center;grid-template-columns:auto;grid-auto-flow:row;justify-content:center;justify-items:center;&:has(:nth-child(2)){grid-template-columns:auto}}.alert-horizontal{text-align:start;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;justify-items:start;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}}@media (width>=640px){.sm\:alert{border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;border:var(--border)solid var(--color-base-200);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08))inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}&.alert-outline{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none}&.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}&.alert-soft{color:var(--alert-color,var(--color-base-content));background:color-mix(in oklab,var(--alert-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--alert-color,var(--color-base-content))10%,var(--color-base-100));box-shadow:none;background-image:none}}.sm\:alert-info{border-color:var(--color-info);color:var(--color-info-content);--alert-color:var(--color-info)}.sm\:alert-success{border-color:var(--color-success);color:var(--color-success-content);--alert-color:var(--color-success)}.sm\:alert-warning{border-color:var(--color-warning);color:var(--color-warning-content);--alert-color:var(--color-warning)}.sm\:alert-error{border-color:var(--color-error);color:var(--color-error-content);--alert-color:var(--color-error)}.sm\:alert-vertical{text-align:center;grid-template-columns:auto;grid-auto-flow:row;justify-content:center;justify-items:center;&:has(:nth-child(2)){grid-template-columns:auto}}.sm\:alert-horizontal{text-align:start;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;justify-items:start;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}}}@media (width>=768px){.md\:alert{border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;border:var(--border)solid var(--color-base-200);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08))inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}&.alert-outline{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none}&.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}&.alert-soft{color:var(--alert-color,var(--color-base-content));background:color-mix(in oklab,var(--alert-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--alert-color,var(--color-base-content))10%,var(--color-base-100));box-shadow:none;background-image:none}}.md\:alert-info{border-color:var(--color-info);color:var(--color-info-content);--alert-color:var(--color-info)}.md\:alert-success{border-color:var(--color-success);color:var(--color-success-content);--alert-color:var(--color-success)}.md\:alert-warning{border-color:var(--color-warning);color:var(--color-warning-content);--alert-color:var(--color-warning)}.md\:alert-error{border-color:var(--color-error);color:var(--color-error-content);--alert-color:var(--color-error)}.md\:alert-vertical{text-align:center;grid-template-columns:auto;grid-auto-flow:row;justify-content:center;justify-items:center;&:has(:nth-child(2)){grid-template-columns:auto}}.md\:alert-horizontal{text-align:start;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;justify-items:start;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}}}@media (width>=1024px){.lg\:alert{border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;border:var(--border)solid var(--color-base-200);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08))inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}&.alert-outline{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none}&.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}&.alert-soft{color:var(--alert-color,var(--color-base-content));background:color-mix(in oklab,var(--alert-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--alert-color,var(--color-base-content))10%,var(--color-base-100));box-shadow:none;background-image:none}}.lg\:alert-info{border-color:var(--color-info);color:var(--color-info-content);--alert-color:var(--color-info)}.lg\:alert-success{border-color:var(--color-success);color:var(--color-success-content);--alert-color:var(--color-success)}.lg\:alert-warning{border-color:var(--color-warning);color:var(--color-warning-content);--alert-color:var(--color-warning)}.lg\:alert-error{border-color:var(--color-error);color:var(--color-error-content);--alert-color:var(--color-error)}.lg\:alert-vertical{text-align:center;grid-template-columns:auto;grid-auto-flow:row;justify-content:center;justify-items:center;&:has(:nth-child(2)){grid-template-columns:auto}}.lg\:alert-horizontal{text-align:start;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;justify-items:start;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}}}@media (width>=1280px){.xl\:alert{border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;border:var(--border)solid var(--color-base-200);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08))inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}&.alert-outline{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none}&.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}&.alert-soft{color:var(--alert-color,var(--color-base-content));background:color-mix(in oklab,var(--alert-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--alert-color,var(--color-base-content))10%,var(--color-base-100));box-shadow:none;background-image:none}}.xl\:alert-info{border-color:var(--color-info);color:var(--color-info-content);--alert-color:var(--color-info)}.xl\:alert-success{border-color:var(--color-success);color:var(--color-success-content);--alert-color:var(--color-success)}.xl\:alert-warning{border-color:var(--color-warning);color:var(--color-warning-content);--alert-color:var(--color-warning)}.xl\:alert-error{border-color:var(--color-error);color:var(--color-error-content);--alert-color:var(--color-error)}.xl\:alert-vertical{text-align:center;grid-template-columns:auto;grid-auto-flow:row;justify-content:center;justify-items:center;&:has(:nth-child(2)){grid-template-columns:auto}}.xl\:alert-horizontal{text-align:start;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;justify-items:start;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}}}@media (width>=1536px){.\32 xl\:alert{border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;border:var(--border)solid var(--color-base-200);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08))inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}&.alert-outline{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none}&.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}&.alert-soft{color:var(--alert-color,var(--color-base-content));background:color-mix(in oklab,var(--alert-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--alert-color,var(--color-base-content))10%,var(--color-base-100));box-shadow:none;background-image:none}}.\32 xl\:alert-info{border-color:var(--color-info);color:var(--color-info-content);--alert-color:var(--color-info)}.\32 xl\:alert-success{border-color:var(--color-success);color:var(--color-success-content);--alert-color:var(--color-success)}.\32 xl\:alert-warning{border-color:var(--color-warning);color:var(--color-warning-content);--alert-color:var(--color-warning)}.\32 xl\:alert-error{border-color:var(--color-error);color:var(--color-error-content);--alert-color:var(--color-error)}.\32 xl\:alert-vertical{text-align:center;grid-template-columns:auto;grid-auto-flow:row;justify-content:center;justify-items:center;&:has(:nth-child(2)){grid-template-columns:auto}}.\32 xl\:alert-horizontal{text-align:start;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;justify-items:start;&:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}}}.table{border-radius:var(--radius-box);text-align:left;width:100%;font-size:.875rem;position:relative;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}& tr.row-hover{&,&:nth-child(2n){&:hover{@media (hover:hover){&{background-color:var(--color-base-200)}}}}}& :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}& :where(thead,tfoot){white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);font-size:.875rem;font-weight:600}& :where(tfoot){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}& :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}& :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}& :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}& :where(thead tr,tbody tr:not(:last-child)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.table-zebra{& tbody{& tr{&:where(:nth-child(2n)){background-color:var(--color-base-200);& :where(.table-pin-cols tr th){background-color:var(--color-base-200)}}&.row-hover{&,&:where(:nth-child(2n)){&:hover{@media (hover:hover){&{background-color:var(--color-base-300)}}}}}}}}.table-xs{& :not(thead,tfoot) tr{font-size:.6875rem}& :where(th,td){padding-block:.25rem;padding-inline:.5rem}}.table-sm{& :not(thead,tfoot) tr{font-size:.75rem}& :where(th,td){padding-block:.5rem;padding-inline:.75rem}}.table-md{& :not(thead,tfoot) tr{font-size:.875rem}& :where(th,td){padding-block:.75rem;padding-inline:1rem}}.table-lg{& :not(thead,tfoot) tr{font-size:1.125rem}& :where(th,td){padding-block:1rem;padding-inline:1.25rem}}.table-xl{& :not(thead,tfoot) tr{font-size:1.375rem}& :where(th,td){padding-block:1.25rem;padding-inline:1.5rem}}@media (width>=640px){.sm\:table{border-radius:var(--radius-box);text-align:left;width:100%;font-size:.875rem;position:relative;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}& tr.row-hover{&,&:nth-child(2n){&:hover{@media (hover:hover){&{background-color:var(--color-base-200)}}}}}& :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}& :where(thead,tfoot){white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);font-size:.875rem;font-weight:600}& :where(tfoot){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}& :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}& :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}& :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}& :where(thead tr,tbody tr:not(:last-child)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.sm\:table-zebra{& tbody{& tr{&:where(:nth-child(2n)){background-color:var(--color-base-200);& :where(.table-pin-cols tr th){background-color:var(--color-base-200)}}&.row-hover{&,&:where(:nth-child(2n)){&:hover{@media (hover:hover){&{background-color:var(--color-base-300)}}}}}}}}.sm\:table-xs{& :not(thead,tfoot) tr{font-size:.6875rem}& :where(th,td){padding-block:.25rem;padding-inline:.5rem}}.sm\:table-sm{& :not(thead,tfoot) tr{font-size:.75rem}& :where(th,td){padding-block:.5rem;padding-inline:.75rem}}.sm\:table-md{& :not(thead,tfoot) tr{font-size:.875rem}& :where(th,td){padding-block:.75rem;padding-inline:1rem}}.sm\:table-lg{& :not(thead,tfoot) tr{font-size:1.125rem}& :where(th,td){padding-block:1rem;padding-inline:1.25rem}}.sm\:table-xl{& :not(thead,tfoot) tr{font-size:1.375rem}& :where(th,td){padding-block:1.25rem;padding-inline:1.5rem}}}@media (width>=768px){.md\:table{border-radius:var(--radius-box);text-align:left;width:100%;font-size:.875rem;position:relative;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}& tr.row-hover{&,&:nth-child(2n){&:hover{@media (hover:hover){&{background-color:var(--color-base-200)}}}}}& :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}& :where(thead,tfoot){white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);font-size:.875rem;font-weight:600}& :where(tfoot){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}& :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}& :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}& :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}& :where(thead tr,tbody tr:not(:last-child)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.md\:table-zebra{& tbody{& tr{&:where(:nth-child(2n)){background-color:var(--color-base-200);& :where(.table-pin-cols tr th){background-color:var(--color-base-200)}}&.row-hover{&,&:where(:nth-child(2n)){&:hover{@media (hover:hover){&{background-color:var(--color-base-300)}}}}}}}}.md\:table-xs{& :not(thead,tfoot) tr{font-size:.6875rem}& :where(th,td){padding-block:.25rem;padding-inline:.5rem}}.md\:table-sm{& :not(thead,tfoot) tr{font-size:.75rem}& :where(th,td){padding-block:.5rem;padding-inline:.75rem}}.md\:table-md{& :not(thead,tfoot) tr{font-size:.875rem}& :where(th,td){padding-block:.75rem;padding-inline:1rem}}.md\:table-lg{& :not(thead,tfoot) tr{font-size:1.125rem}& :where(th,td){padding-block:1rem;padding-inline:1.25rem}}.md\:table-xl{& :not(thead,tfoot) tr{font-size:1.375rem}& :where(th,td){padding-block:1.25rem;padding-inline:1.5rem}}}@media (width>=1024px){.lg\:table{border-radius:var(--radius-box);text-align:left;width:100%;font-size:.875rem;position:relative;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}& tr.row-hover{&,&:nth-child(2n){&:hover{@media (hover:hover){&{background-color:var(--color-base-200)}}}}}& :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}& :where(thead,tfoot){white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);font-size:.875rem;font-weight:600}& :where(tfoot){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}& :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}& :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}& :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}& :where(thead tr,tbody tr:not(:last-child)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.lg\:table-zebra{& tbody{& tr{&:where(:nth-child(2n)){background-color:var(--color-base-200);& :where(.table-pin-cols tr th){background-color:var(--color-base-200)}}&.row-hover{&,&:where(:nth-child(2n)){&:hover{@media (hover:hover){&{background-color:var(--color-base-300)}}}}}}}}.lg\:table-xs{& :not(thead,tfoot) tr{font-size:.6875rem}& :where(th,td){padding-block:.25rem;padding-inline:.5rem}}.lg\:table-sm{& :not(thead,tfoot) tr{font-size:.75rem}& :where(th,td){padding-block:.5rem;padding-inline:.75rem}}.lg\:table-md{& :not(thead,tfoot) tr{font-size:.875rem}& :where(th,td){padding-block:.75rem;padding-inline:1rem}}.lg\:table-lg{& :not(thead,tfoot) tr{font-size:1.125rem}& :where(th,td){padding-block:1rem;padding-inline:1.25rem}}.lg\:table-xl{& :not(thead,tfoot) tr{font-size:1.375rem}& :where(th,td){padding-block:1.25rem;padding-inline:1.5rem}}}@media (width>=1280px){.xl\:table{border-radius:var(--radius-box);text-align:left;width:100%;font-size:.875rem;position:relative;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}& tr.row-hover{&,&:nth-child(2n){&:hover{@media (hover:hover){&{background-color:var(--color-base-200)}}}}}& :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}& :where(thead,tfoot){white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);font-size:.875rem;font-weight:600}& :where(tfoot){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}& :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}& :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}& :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}& :where(thead tr,tbody tr:not(:last-child)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.xl\:table-zebra{& tbody{& tr{&:where(:nth-child(2n)){background-color:var(--color-base-200);& :where(.table-pin-cols tr th){background-color:var(--color-base-200)}}&.row-hover{&,&:where(:nth-child(2n)){&:hover{@media (hover:hover){&{background-color:var(--color-base-300)}}}}}}}}.xl\:table-xs{& :not(thead,tfoot) tr{font-size:.6875rem}& :where(th,td){padding-block:.25rem;padding-inline:.5rem}}.xl\:table-sm{& :not(thead,tfoot) tr{font-size:.75rem}& :where(th,td){padding-block:.5rem;padding-inline:.75rem}}.xl\:table-md{& :not(thead,tfoot) tr{font-size:.875rem}& :where(th,td){padding-block:.75rem;padding-inline:1rem}}.xl\:table-lg{& :not(thead,tfoot) tr{font-size:1.125rem}& :where(th,td){padding-block:1rem;padding-inline:1.25rem}}.xl\:table-xl{& :not(thead,tfoot) tr{font-size:1.375rem}& :where(th,td){padding-block:1.25rem;padding-inline:1.5rem}}}@media (width>=1536px){.\32 xl\:table{border-radius:var(--radius-box);text-align:left;width:100%;font-size:.875rem;position:relative;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}& tr.row-hover{&,&:nth-child(2n){&:hover{@media (hover:hover){&{background-color:var(--color-base-200)}}}}}& :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}& :where(thead,tfoot){white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);font-size:.875rem;font-weight:600}& :where(tfoot){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}& :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}& :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}& :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}& :where(thead tr,tbody tr:not(:last-child)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.\32 xl\:table-zebra{& tbody{& tr{&:where(:nth-child(2n)){background-color:var(--color-base-200);& :where(.table-pin-cols tr th){background-color:var(--color-base-200)}}&.row-hover{&,&:where(:nth-child(2n)){&:hover{@media (hover:hover){&{background-color:var(--color-base-300)}}}}}}}}.\32 xl\:table-xs{& :not(thead,tfoot) tr{font-size:.6875rem}& :where(th,td){padding-block:.25rem;padding-inline:.5rem}}.\32 xl\:table-sm{& :not(thead,tfoot) tr{font-size:.75rem}& :where(th,td){padding-block:.5rem;padding-inline:.75rem}}.\32 xl\:table-md{& :not(thead,tfoot) tr{font-size:.875rem}& :where(th,td){padding-block:.75rem;padding-inline:1rem}}.\32 xl\:table-lg{& :not(thead,tfoot) tr{font-size:1.125rem}& :where(th,td){padding-block:1rem;padding-inline:1.25rem}}.\32 xl\:table-xl{& :not(thead,tfoot) tr{font-size:1.375rem}& :where(th,td){padding-block:1.25rem;padding-inline:1.5rem}}}.steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);--tw-content:"";content:var(--tw-content);border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}&>.step-icon,&:not(:has(.step-icon)):after{content:counter(step);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}&:first-child:before{content:none}&[data-content]:after{content:attr(data-content)}}& .step-neutral{&+.step-neutral:before,&:after,&>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}}& .step-primary{&+.step-primary:before,&:after,&>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}}& .step-secondary{&+.step-secondary:before,&:after,&>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}}& .step-accent{&+.step-accent:before,&:after,&>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}}& .step-info{&+.step-info:before,&:after,&>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}}& .step-success{&+.step-success:before,&:after,&>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}}& .step-warning{&+.step-warning:before,&:after,&>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}}& .step-error{&+.step-error:before,&:after,&>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}}}.steps-horizontal{grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{content:"";width:100%;height:.5rem;margin-inline-start:-100%;translate:0}[dir=rtl] &:before{translate:0}}}.steps-vertical{grid-auto-rows:1fr;grid-auto-flow:row;& .step{grid-template-rows:auto;grid-template-columns:40px 1fr;justify-items:start;gap:.5rem;min-height:4rem;display:grid;&:before{width:.5rem;height:100%;margin-inline-start:50%;translate:-50% -50%}[dir=rtl] &:before{translate:50% -50%}}}@media (width>=640px){.sm\:steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);--tw-content:"";content:var(--tw-content);border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}&>.step-icon,&:not(:has(.step-icon)):after{content:counter(step);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}&:first-child:before{content:none}&[data-content]:after{content:attr(data-content)}}& .step-neutral{&+.step-neutral:before,&:after,&>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}}& .step-primary{&+.step-primary:before,&:after,&>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}}& .step-secondary{&+.step-secondary:before,&:after,&>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}}& .step-accent{&+.step-accent:before,&:after,&>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}}& .step-info{&+.step-info:before,&:after,&>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}}& .step-success{&+.step-success:before,&:after,&>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}}& .step-warning{&+.step-warning:before,&:after,&>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}}& .step-error{&+.step-error:before,&:after,&>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}}}.sm\:steps-horizontal{grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{content:"";width:100%;height:.5rem;margin-inline-start:-100%;translate:0}[dir=rtl] &:before{translate:0}}}.sm\:steps-vertical{grid-auto-rows:1fr;grid-auto-flow:row;& .step{grid-template-rows:auto;grid-template-columns:40px 1fr;justify-items:start;gap:.5rem;min-height:4rem;display:grid;&:before{width:.5rem;height:100%;margin-inline-start:50%;translate:-50% -50%}[dir=rtl] &:before{translate:50% -50%}}}}@media (width>=768px){.md\:steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);--tw-content:"";content:var(--tw-content);border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}&>.step-icon,&:not(:has(.step-icon)):after{content:counter(step);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}&:first-child:before{content:none}&[data-content]:after{content:attr(data-content)}}& .step-neutral{&+.step-neutral:before,&:after,&>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}}& .step-primary{&+.step-primary:before,&:after,&>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}}& .step-secondary{&+.step-secondary:before,&:after,&>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}}& .step-accent{&+.step-accent:before,&:after,&>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}}& .step-info{&+.step-info:before,&:after,&>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}}& .step-success{&+.step-success:before,&:after,&>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}}& .step-warning{&+.step-warning:before,&:after,&>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}}& .step-error{&+.step-error:before,&:after,&>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}}}.md\:steps-horizontal{grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{content:"";width:100%;height:.5rem;margin-inline-start:-100%;translate:0}[dir=rtl] &:before{translate:0}}}.md\:steps-vertical{grid-auto-rows:1fr;grid-auto-flow:row;& .step{grid-template-rows:auto;grid-template-columns:40px 1fr;justify-items:start;gap:.5rem;min-height:4rem;display:grid;&:before{width:.5rem;height:100%;margin-inline-start:50%;translate:-50% -50%}[dir=rtl] &:before{translate:50% -50%}}}}@media (width>=1024px){.lg\:steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);--tw-content:"";content:var(--tw-content);border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}&>.step-icon,&:not(:has(.step-icon)):after{content:counter(step);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}&:first-child:before{content:none}&[data-content]:after{content:attr(data-content)}}& .step-neutral{&+.step-neutral:before,&:after,&>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}}& .step-primary{&+.step-primary:before,&:after,&>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}}& .step-secondary{&+.step-secondary:before,&:after,&>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}}& .step-accent{&+.step-accent:before,&:after,&>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}}& .step-info{&+.step-info:before,&:after,&>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}}& .step-success{&+.step-success:before,&:after,&>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}}& .step-warning{&+.step-warning:before,&:after,&>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}}& .step-error{&+.step-error:before,&:after,&>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}}}.lg\:steps-horizontal{grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{content:"";width:100%;height:.5rem;margin-inline-start:-100%;translate:0}[dir=rtl] &:before{translate:0}}}.lg\:steps-vertical{grid-auto-rows:1fr;grid-auto-flow:row;& .step{grid-template-rows:auto;grid-template-columns:40px 1fr;justify-items:start;gap:.5rem;min-height:4rem;display:grid;&:before{width:.5rem;height:100%;margin-inline-start:50%;translate:-50% -50%}[dir=rtl] &:before{translate:50% -50%}}}}@media (width>=1280px){.xl\:steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);--tw-content:"";content:var(--tw-content);border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}&>.step-icon,&:not(:has(.step-icon)):after{content:counter(step);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}&:first-child:before{content:none}&[data-content]:after{content:attr(data-content)}}& .step-neutral{&+.step-neutral:before,&:after,&>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}}& .step-primary{&+.step-primary:before,&:after,&>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}}& .step-secondary{&+.step-secondary:before,&:after,&>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}}& .step-accent{&+.step-accent:before,&:after,&>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}}& .step-info{&+.step-info:before,&:after,&>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}}& .step-success{&+.step-success:before,&:after,&>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}}& .step-warning{&+.step-warning:before,&:after,&>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}}& .step-error{&+.step-error:before,&:after,&>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}}}.xl\:steps-horizontal{grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{content:"";width:100%;height:.5rem;margin-inline-start:-100%;translate:0}[dir=rtl] &:before{translate:0}}}.xl\:steps-vertical{grid-auto-rows:1fr;grid-auto-flow:row;& .step{grid-template-rows:auto;grid-template-columns:40px 1fr;justify-items:start;gap:.5rem;min-height:4rem;display:grid;&:before{width:.5rem;height:100%;margin-inline-start:50%;translate:-50% -50%}[dir=rtl] &:before{translate:50% -50%}}}}@media (width>=1536px){.\32 xl\:steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);--tw-content:"";content:var(--tw-content);border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}&>.step-icon,&:not(:has(.step-icon)):after{content:counter(step);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}&:first-child:before{content:none}&[data-content]:after{content:attr(data-content)}}& .step-neutral{&+.step-neutral:before,&:after,&>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}}& .step-primary{&+.step-primary:before,&:after,&>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}}& .step-secondary{&+.step-secondary:before,&:after,&>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}}& .step-accent{&+.step-accent:before,&:after,&>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}}& .step-info{&+.step-info:before,&:after,&>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}}& .step-success{&+.step-success:before,&:after,&>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}}& .step-warning{&+.step-warning:before,&:after,&>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}}& .step-error{&+.step-error:before,&:after,&>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}}}.\32 xl\:steps-horizontal{grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden;& .step{text-align:center;grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid;&:before{content:"";width:100%;height:.5rem;margin-inline-start:-100%;translate:0}[dir=rtl] &:before{translate:0}}}.\32 xl\:steps-vertical{grid-auto-rows:1fr;grid-auto-flow:row;& .step{grid-template-rows:auto;grid-template-columns:40px 1fr;justify-items:start;gap:.5rem;min-height:4rem;display:grid;&:before{width:.5rem;height:100%;margin-inline-start:50%;translate:-50% -50%}[dir=rtl] &:before{translate:50% -50%}}}}.skeleton{border-radius:var(--radius-box);background-color:var(--color-base-300);will-change:background-position;background-image:linear-gradient(105deg,#0000 0% 40%,var(--color-base-100)50%,#0000 60% 100%);background-position-x:-50%;background-repeat:no-repeat;background-size:200%;animation:1.8s ease-in-out infinite skeleton;@media (prefers-reduced-motion:reduce){&{transition-duration:15s}}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}.mockup-code{border-radius:var(--radius-box);background-color:var(--color-neutral);color:var(--color-neutral-content);direction:ltr;padding-block:1.25rem;font-size:.875rem;position:relative;overflow:auto hidden;&:before{content:"";opacity:.3;border-radius:3.40282e38px;width:.75rem;height:.75rem;margin-bottom:1rem;display:block;box-shadow:1.4em 0,2.8em 0,4.2em 0}& pre{padding-right:1.25rem;&:before{content:"";margin-right:2ch}&[data-prefix]{&:before{content:attr(data-prefix);text-align:right;opacity:.5;width:2rem;display:inline-block}}}}.mockup-window{border-radius:var(--radius-box);flex-direction:column;padding-top:1.25rem;display:flex;position:relative;overflow:auto hidden;&:before{content:"";aspect-ratio:1;opacity:.3;border-radius:3.40282e38px;flex-shrink:0;align-self:flex-start;height:.75rem;margin-bottom:1rem;display:block;box-shadow:1.4em 0,2.8em 0,4.2em 0}[dir=rtl] &:before{align-self:flex-end}& pre[data-prefix]{&:before{content:attr(data-prefix);text-align:right;display:inline-block}}}.mockup-browser{border-radius:var(--radius-box);position:relative;overflow:auto hidden;& pre[data-prefix]{&:before{content:attr(data-prefix);text-align:right;display:inline-block}}& .mockup-browser-toolbar{align-items:center;width:100%;margin-block:.75rem;padding-right:1.4em;display:inline-flex;&:where(:dir(rtl),[dir=rtl],[dir=rtl] *){flex-direction:row-reverse}&:before{content:"";aspect-ratio:1;opacity:.3;border-radius:3.40282e38px;height:.75rem;margin-right:4.8rem;display:inline-block;box-shadow:1.4em 0,2.8em 0,4.2em 0}& .input{background-color:var(--color-base-200);text-overflow:ellipsis;white-space:nowrap;direction:ltr;align-items:center;gap:.5rem;height:100%;margin-inline:auto;font-size:.75rem;display:flex;overflow:hidden;&:before{content:"";opacity:.3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='currentColor' class='size-4'%3E%3Cpath fill-rule='evenodd' d='M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z' clip-rule='evenodd' /%3E%3C/svg%3E%0A");width:1rem;height:1rem}}}}.mockup-phone{background-color:#000;border:6px solid #6b6b6b;border-radius:65px;justify-items:center;padding:11px;display:inline-grid;overflow:hidden}.mockup-phone-camera{z-index:1;background:#000;border-radius:17px;grid-area:1/1/1/1;width:126px;height:32px;margin-top:6px}.mockup-phone-display{border-radius:49px;grid-area:1/1/1/1;width:390px;height:845px;overflow:hidden}.swap{cursor:pointer;vertical-align:middle;-webkit-user-select:none;user-select:none;place-content:center;display:inline-grid;position:relative;& input{appearance:none;border:none}&>*{grid-row-start:1;grid-column-start:1;transition-property:transform,rotate,opacity;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}& .swap-on,& .swap-indeterminate,& input:indeterminate~.swap-on{opacity:0}& input:is(:checked,:indeterminate){&~.swap-off{opacity:0}}& input:checked~.swap-on,& input:indeterminate~.swap-indeterminate{opacity:1;backface-visibility:visible}}.swap-active{& .swap-off{opacity:0}& .swap-on{opacity:1}}.swap-rotate{& .swap-on,& input:indeterminate~.swap-on{rotate:45deg}& input:is(:checked,:indeterminate)~.swap-on,&.swap-active .swap-on{rotate:none}& input:is(:checked,:indeterminate)~.swap-off,&.swap-active .swap-off{rotate:-45deg}}.swap-flip{transform-style:preserve-3d;perspective:20rem;& .swap-on,& .swap-indeterminate,& input:indeterminate~.swap-on{backface-visibility:hidden;transform:rotateY(180deg)}& input:is(:checked,:indeterminate)~.swap-on,&.swap-active .swap-on{transform:rotateY(0)}& input:is(:checked,:indeterminate)~.swap-off,&.swap-active .swap-off{backface-visibility:hidden;opacity:1;transform:rotateY(-180deg)}}.dock{z-index:1;background-color:var(--color-base-100);color:currentColor;border-top:.5px solid color-mix(in oklab,var(--color-base-content)5%,#0000);width:100%;height:4rem;height:calc(4rem + env(safe-area-inset-bottom));padding:.5rem;padding-bottom:env(safe-area-inset-bottom);flex-direction:row;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;&>*{cursor:pointer;border-radius:var(--radius-box);background-color:#0000;flex-direction:column;flex-shrink:1;flex-basis:100%;justify-content:center;align-items:center;gap:1px;max-width:8rem;height:100%;margin-bottom:.5rem;transition:opacity .2s ease-out;display:flex;position:relative;@media (hover:hover){&:hover{opacity:.8}}&[aria-disabled=true],&[disabled]{&,&:hover{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)10%,transparent);opacity:1}}& .dock-label{font-size:.6875rem}&:after{content:"";background-color:#0000;border-top:3px solid #0000;border-radius:3.40282e38px;width:1.5rem;height:.25rem;transition:background-color .1s ease-out,text-color .1s ease-out,width .1s ease-out;position:absolute;bottom:.2rem}}}.dock-active{&:after{color:currentColor;background-color:currentColor;width:2.5rem}}.dock-xs{height:3rem;height:calc(3rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.dock-sm{height:3.5rem;height:calc(3.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.dock-md{height:4rem;height:calc(4rem + env(safe-area-inset-bottom));& .dock-label{font-size:.6875rem}}.dock-lg{height:4.5rem;height:calc(4.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.6875rem}}.dock-xl{height:5rem;height:calc(5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.75rem}}@media (width>=640px){.sm\:dock{z-index:1;background-color:var(--color-base-100);color:currentColor;border-top:.5px solid color-mix(in oklab,var(--color-base-content)5%,#0000);width:100%;height:4rem;height:calc(4rem + env(safe-area-inset-bottom));padding:.5rem;padding-bottom:env(safe-area-inset-bottom);flex-direction:row;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;&>*{cursor:pointer;border-radius:var(--radius-box);background-color:#0000;flex-direction:column;flex-shrink:1;flex-basis:100%;justify-content:center;align-items:center;gap:1px;max-width:8rem;height:100%;margin-bottom:.5rem;transition:opacity .2s ease-out;display:flex;position:relative;@media (hover:hover){&:hover{opacity:.8}}&[aria-disabled=true],&[disabled]{&,&:hover{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)10%,transparent);opacity:1}}& .dock-label{font-size:.6875rem}&:after{content:"";background-color:#0000;border-top:3px solid #0000;border-radius:3.40282e38px;width:1.5rem;height:.25rem;transition:background-color .1s ease-out,text-color .1s ease-out,width .1s ease-out;position:absolute;bottom:.2rem}}}.sm\:dock-active{&:after{color:currentColor;background-color:currentColor;width:2.5rem}}.sm\:dock-xs{height:3rem;height:calc(3rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.sm\:dock-sm{height:3.5rem;height:calc(3.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.sm\:dock-md{height:4rem;height:calc(4rem + env(safe-area-inset-bottom));& .dock-label{font-size:.6875rem}}.sm\:dock-lg{height:4.5rem;height:calc(4.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.6875rem}}.sm\:dock-xl{height:5rem;height:calc(5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.75rem}}}@media (width>=768px){.md\:dock{z-index:1;background-color:var(--color-base-100);color:currentColor;border-top:.5px solid color-mix(in oklab,var(--color-base-content)5%,#0000);width:100%;height:4rem;height:calc(4rem + env(safe-area-inset-bottom));padding:.5rem;padding-bottom:env(safe-area-inset-bottom);flex-direction:row;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;&>*{cursor:pointer;border-radius:var(--radius-box);background-color:#0000;flex-direction:column;flex-shrink:1;flex-basis:100%;justify-content:center;align-items:center;gap:1px;max-width:8rem;height:100%;margin-bottom:.5rem;transition:opacity .2s ease-out;display:flex;position:relative;@media (hover:hover){&:hover{opacity:.8}}&[aria-disabled=true],&[disabled]{&,&:hover{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)10%,transparent);opacity:1}}& .dock-label{font-size:.6875rem}&:after{content:"";background-color:#0000;border-top:3px solid #0000;border-radius:3.40282e38px;width:1.5rem;height:.25rem;transition:background-color .1s ease-out,text-color .1s ease-out,width .1s ease-out;position:absolute;bottom:.2rem}}}.md\:dock-active{&:after{color:currentColor;background-color:currentColor;width:2.5rem}}.md\:dock-xs{height:3rem;height:calc(3rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.md\:dock-sm{height:3.5rem;height:calc(3.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.md\:dock-md{height:4rem;height:calc(4rem + env(safe-area-inset-bottom));& .dock-label{font-size:.6875rem}}.md\:dock-lg{height:4.5rem;height:calc(4.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.6875rem}}.md\:dock-xl{height:5rem;height:calc(5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.75rem}}}@media (width>=1024px){.lg\:dock{z-index:1;background-color:var(--color-base-100);color:currentColor;border-top:.5px solid color-mix(in oklab,var(--color-base-content)5%,#0000);width:100%;height:4rem;height:calc(4rem + env(safe-area-inset-bottom));padding:.5rem;padding-bottom:env(safe-area-inset-bottom);flex-direction:row;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;&>*{cursor:pointer;border-radius:var(--radius-box);background-color:#0000;flex-direction:column;flex-shrink:1;flex-basis:100%;justify-content:center;align-items:center;gap:1px;max-width:8rem;height:100%;margin-bottom:.5rem;transition:opacity .2s ease-out;display:flex;position:relative;@media (hover:hover){&:hover{opacity:.8}}&[aria-disabled=true],&[disabled]{&,&:hover{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)10%,transparent);opacity:1}}& .dock-label{font-size:.6875rem}&:after{content:"";background-color:#0000;border-top:3px solid #0000;border-radius:3.40282e38px;width:1.5rem;height:.25rem;transition:background-color .1s ease-out,text-color .1s ease-out,width .1s ease-out;position:absolute;bottom:.2rem}}}.lg\:dock-active{&:after{color:currentColor;background-color:currentColor;width:2.5rem}}.lg\:dock-xs{height:3rem;height:calc(3rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.lg\:dock-sm{height:3.5rem;height:calc(3.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.lg\:dock-md{height:4rem;height:calc(4rem + env(safe-area-inset-bottom));& .dock-label{font-size:.6875rem}}.lg\:dock-lg{height:4.5rem;height:calc(4.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.6875rem}}.lg\:dock-xl{height:5rem;height:calc(5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.75rem}}}@media (width>=1280px){.xl\:dock{z-index:1;background-color:var(--color-base-100);color:currentColor;border-top:.5px solid color-mix(in oklab,var(--color-base-content)5%,#0000);width:100%;height:4rem;height:calc(4rem + env(safe-area-inset-bottom));padding:.5rem;padding-bottom:env(safe-area-inset-bottom);flex-direction:row;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;&>*{cursor:pointer;border-radius:var(--radius-box);background-color:#0000;flex-direction:column;flex-shrink:1;flex-basis:100%;justify-content:center;align-items:center;gap:1px;max-width:8rem;height:100%;margin-bottom:.5rem;transition:opacity .2s ease-out;display:flex;position:relative;@media (hover:hover){&:hover{opacity:.8}}&[aria-disabled=true],&[disabled]{&,&:hover{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)10%,transparent);opacity:1}}& .dock-label{font-size:.6875rem}&:after{content:"";background-color:#0000;border-top:3px solid #0000;border-radius:3.40282e38px;width:1.5rem;height:.25rem;transition:background-color .1s ease-out,text-color .1s ease-out,width .1s ease-out;position:absolute;bottom:.2rem}}}.xl\:dock-active{&:after{color:currentColor;background-color:currentColor;width:2.5rem}}.xl\:dock-xs{height:3rem;height:calc(3rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.xl\:dock-sm{height:3.5rem;height:calc(3.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.xl\:dock-md{height:4rem;height:calc(4rem + env(safe-area-inset-bottom));& .dock-label{font-size:.6875rem}}.xl\:dock-lg{height:4.5rem;height:calc(4.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.6875rem}}.xl\:dock-xl{height:5rem;height:calc(5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.75rem}}}@media (width>=1536px){.\32 xl\:dock{z-index:1;background-color:var(--color-base-100);color:currentColor;border-top:.5px solid color-mix(in oklab,var(--color-base-content)5%,#0000);width:100%;height:4rem;height:calc(4rem + env(safe-area-inset-bottom));padding:.5rem;padding-bottom:env(safe-area-inset-bottom);flex-direction:row;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;&>*{cursor:pointer;border-radius:var(--radius-box);background-color:#0000;flex-direction:column;flex-shrink:1;flex-basis:100%;justify-content:center;align-items:center;gap:1px;max-width:8rem;height:100%;margin-bottom:.5rem;transition:opacity .2s ease-out;display:flex;position:relative;@media (hover:hover){&:hover{opacity:.8}}&[aria-disabled=true],&[disabled]{&,&:hover{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)10%,transparent);opacity:1}}& .dock-label{font-size:.6875rem}&:after{content:"";background-color:#0000;border-top:3px solid #0000;border-radius:3.40282e38px;width:1.5rem;height:.25rem;transition:background-color .1s ease-out,text-color .1s ease-out,width .1s ease-out;position:absolute;bottom:.2rem}}}.\32 xl\:dock-active{&:after{color:currentColor;background-color:currentColor;width:2.5rem}}.\32 xl\:dock-xs{height:3rem;height:calc(3rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.\32 xl\:dock-sm{height:3.5rem;height:calc(3.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:-.1rem}}& .dock-label{font-size:.625rem}}.\32 xl\:dock-md{height:4rem;height:calc(4rem + env(safe-area-inset-bottom));& .dock-label{font-size:.6875rem}}.\32 xl\:dock-lg{height:4.5rem;height:calc(4.5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.6875rem}}.\32 xl\:dock-xl{height:5rem;height:calc(5rem + env(safe-area-inset-bottom));& .dock-active{&:after{bottom:.4rem}}& .dock-label{font-size:.75rem}}}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem)*6);background-color:currentColor;display:inline-block;mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-position:50%;mask-size:100%;mask-repeat:no-repeat}.loading-spinner{mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.loading-dots{mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='4' cy='12' r='3'%3E%3Canimate attributeName='cy' values='12;6;12;12' keyTimes='0;0.286;0.571;1' dur='1.05s' repeatCount='indefinite' keySplines='.33,0,.66,.33;.33,.66,.66,1'/%3E%3C/circle%3E%3Ccircle cx='12' cy='12' r='3'%3E%3Canimate attributeName='cy' values='12;6;12;12' keyTimes='0;0.286;0.571;1' dur='1.05s' repeatCount='indefinite' keySplines='.33,0,.66,.33;.33,.66,.66,1' begin='0.1s'/%3E%3C/circle%3E%3Ccircle cx='20' cy='12' r='3'%3E%3Canimate attributeName='cy' values='12;6;12;12' keyTimes='0;0.286;0.571;1' dur='1.05s' repeatCount='indefinite' keySplines='.33,0,.66,.33;.33,.66,.66,1' begin='0.2s'/%3E%3C/circle%3E%3C/svg%3E")}.loading-ring{mask-image:url("data:image/svg+xml,%3Csvg width='44' height='44' viewBox='0 0 44 44' xmlns='http://www.w3.org/2000/svg' stroke='white'%3E%3Cg fill='none' fill-rule='evenodd' stroke-width='2'%3E%3Ccircle cx='22' cy='22' r='1'%3E%3Canimate attributeName='r' begin='0s' dur='1.8s' values='1;20' calcMode='spline' keyTimes='0;1' keySplines='0.165,0.84,0.44,1' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-opacity' begin='0s' dur='1.8s' values='1;0' calcMode='spline' keyTimes='0;1' keySplines='0.3,0.61,0.355,1' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='22' cy='22' r='1'%3E%3Canimate attributeName='r' begin='-0.9s' dur='1.8s' values='1;20' calcMode='spline' keyTimes='0;1' keySplines='0.165,0.84,0.44,1' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-opacity' begin='-0.9s' dur='1.8s' values='1;0' calcMode='spline' keyTimes='0;1' keySplines='0.3,0.61,0.355,1' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.loading-ball{mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cellipse cx='12' cy='5' rx='4' ry='4'%3E%3Canimate attributeName='cy' values='5;20;20.5;20;5' keyTimes='0;0.469;0.5;0.531;1' dur='.8s' repeatCount='indefinite' keySplines='.33,0,.66,.33;.33,.66,.66,1'/%3E%3Canimate attributeName='rx' values='4;4;4.8;4;4' keyTimes='0;0.469;0.5;0.531;1' dur='.8s' repeatCount='indefinite'/%3E%3Canimate attributeName='ry' values='4;4;3;4;4' keyTimes='0;0.469;0.5;0.531;1' dur='.8s' repeatCount='indefinite'/%3E%3C/ellipse%3E%3C/svg%3E")}.loading-bars{mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='1' y='1' width='6' height='22'%3E%3Canimate attributeName='y' values='1;5;1' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite'/%3E%3Canimate attributeName='height' values='22;14;22' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='1;0.2;1' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='9' y='1' width='6' height='22'%3E%3Canimate attributeName='y' values='1;5;1' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite' begin='-0.65s'/%3E%3Canimate attributeName='height' values='22;14;22' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite' begin='-0.65s'/%3E%3Canimate attributeName='opacity' values='1;0.2;1' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite' begin='-0.65s'/%3E%3C/rect%3E%3Crect x='17' y='1' width='6' height='22'%3E%3Canimate attributeName='y' values='1;5;1' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite' begin='-0.5s'/%3E%3Canimate attributeName='height' values='22;14;22' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite' begin='-0.5s'/%3E%3Canimate attributeName='opacity' values='1;0.2;1' keyTimes='0;0.938;1' dur='.8s' repeatCount='indefinite' begin='-0.5s'/%3E%3C/rect%3E%3C/svg%3E")}.loading-infinity{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' style='shape-rendering:auto;' width='200px' height='200px' viewBox='0 0 100 100' preserveAspectRatio='xMidYMid'%3E%3Cpath fill='none' stroke='black' stroke-width='10' stroke-dasharray='205.271 51.318' d='M24.3 30C11.4 30 5 43.3 5 50s6.4 20 19.3 20c19.3 0 32.1-40 51.4-40C88.6 30 95 43.3 95 50s-6.4 20-19.3 20C56.4 70 43.6 30 24.3 30z' stroke-linecap='round' style='transform:scale(0.8);transform-origin:50px 50px'%3E%3Canimate attributeName='stroke-dashoffset' repeatCount='indefinite' dur='2s' keyTimes='0;1' values='0;256.589'/%3E%3C/path%3E%3C/svg%3E")}.loading-xs{width:calc(var(--size-selector,.25rem)*4)}.loading-sm{width:calc(var(--size-selector,.25rem)*5)}.loading-md{width:calc(var(--size-selector,.25rem)*6)}.loading-lg{width:calc(var(--size-selector,.25rem)*7)}.loading-xl{width:calc(var(--size-selector,.25rem)*8)}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent);flex-direction:row;align-self:stretch;align-items:center;display:flex;&:before,&:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{&:before,&:after{border:.5px solid}}&:not(:empty){gap:1rem}}.divider-horizontal{--divider-m:0 1rem;&.divider{flex-direction:column;width:1rem;height:auto;&:before,&:after{width:.125rem;height:100%}}}.divider-vertical{--divider-m:1rem 0;&.divider{flex-direction:row;width:auto;height:1rem;&:before,&:after{width:100%;height:.125rem}}}.divider-neutral{&:before,&:after{background-color:var(--color-neutral)}}.divider-primary{&:before,&:after{background-color:var(--color-primary)}}.divider-secondary{&:before,&:after{background-color:var(--color-secondary)}}.divider-accent{&:before,&:after{background-color:var(--color-accent)}}.divider-success{&:before,&:after{background-color:var(--color-success)}}.divider-warning{&:before,&:after{background-color:var(--color-warning)}}.divider-info{&:before,&:after{background-color:var(--color-info)}}.divider-error{&:before,&:after{background-color:var(--color-error)}}.divider-start:before,.divider-end:after{display:none}@media (width>=640px){.sm\:divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent);flex-direction:row;align-self:stretch;align-items:center;display:flex;&:before,&:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{&:before,&:after{border:.5px solid}}&:not(:empty){gap:1rem}}.sm\:divider-horizontal{--divider-m:0 1rem;&.divider{flex-direction:column;width:1rem;height:auto;&:before,&:after{width:.125rem;height:100%}}}.sm\:divider-vertical{--divider-m:1rem 0;&.divider{flex-direction:row;width:auto;height:1rem;&:before,&:after{width:100%;height:.125rem}}}.sm\:divider-neutral{&:before,&:after{background-color:var(--color-neutral)}}.sm\:divider-primary{&:before,&:after{background-color:var(--color-primary)}}.sm\:divider-secondary{&:before,&:after{background-color:var(--color-secondary)}}.sm\:divider-accent{&:before,&:after{background-color:var(--color-accent)}}.sm\:divider-success{&:before,&:after{background-color:var(--color-success)}}.sm\:divider-warning{&:before,&:after{background-color:var(--color-warning)}}.sm\:divider-info{&:before,&:after{background-color:var(--color-info)}}.sm\:divider-error{&:before,&:after{background-color:var(--color-error)}}.sm\:divider-start:before,.sm\:divider-end:after{display:none}}@media (width>=768px){.md\:divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent);flex-direction:row;align-self:stretch;align-items:center;display:flex;&:before,&:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{&:before,&:after{border:.5px solid}}&:not(:empty){gap:1rem}}.md\:divider-horizontal{--divider-m:0 1rem;&.divider{flex-direction:column;width:1rem;height:auto;&:before,&:after{width:.125rem;height:100%}}}.md\:divider-vertical{--divider-m:1rem 0;&.divider{flex-direction:row;width:auto;height:1rem;&:before,&:after{width:100%;height:.125rem}}}.md\:divider-neutral{&:before,&:after{background-color:var(--color-neutral)}}.md\:divider-primary{&:before,&:after{background-color:var(--color-primary)}}.md\:divider-secondary{&:before,&:after{background-color:var(--color-secondary)}}.md\:divider-accent{&:before,&:after{background-color:var(--color-accent)}}.md\:divider-success{&:before,&:after{background-color:var(--color-success)}}.md\:divider-warning{&:before,&:after{background-color:var(--color-warning)}}.md\:divider-info{&:before,&:after{background-color:var(--color-info)}}.md\:divider-error{&:before,&:after{background-color:var(--color-error)}}.md\:divider-start:before,.md\:divider-end:after{display:none}}@media (width>=1024px){.lg\:divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent);flex-direction:row;align-self:stretch;align-items:center;display:flex;&:before,&:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{&:before,&:after{border:.5px solid}}&:not(:empty){gap:1rem}}.lg\:divider-horizontal{--divider-m:0 1rem;&.divider{flex-direction:column;width:1rem;height:auto;&:before,&:after{width:.125rem;height:100%}}}.lg\:divider-vertical{--divider-m:1rem 0;&.divider{flex-direction:row;width:auto;height:1rem;&:before,&:after{width:100%;height:.125rem}}}.lg\:divider-neutral{&:before,&:after{background-color:var(--color-neutral)}}.lg\:divider-primary{&:before,&:after{background-color:var(--color-primary)}}.lg\:divider-secondary{&:before,&:after{background-color:var(--color-secondary)}}.lg\:divider-accent{&:before,&:after{background-color:var(--color-accent)}}.lg\:divider-success{&:before,&:after{background-color:var(--color-success)}}.lg\:divider-warning{&:before,&:after{background-color:var(--color-warning)}}.lg\:divider-info{&:before,&:after{background-color:var(--color-info)}}.lg\:divider-error{&:before,&:after{background-color:var(--color-error)}}.lg\:divider-start:before,.lg\:divider-end:after{display:none}}@media (width>=1280px){.xl\:divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent);flex-direction:row;align-self:stretch;align-items:center;display:flex;&:before,&:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{&:before,&:after{border:.5px solid}}&:not(:empty){gap:1rem}}.xl\:divider-horizontal{--divider-m:0 1rem;&.divider{flex-direction:column;width:1rem;height:auto;&:before,&:after{width:.125rem;height:100%}}}.xl\:divider-vertical{--divider-m:1rem 0;&.divider{flex-direction:row;width:auto;height:1rem;&:before,&:after{width:100%;height:.125rem}}}.xl\:divider-neutral{&:before,&:after{background-color:var(--color-neutral)}}.xl\:divider-primary{&:before,&:after{background-color:var(--color-primary)}}.xl\:divider-secondary{&:before,&:after{background-color:var(--color-secondary)}}.xl\:divider-accent{&:before,&:after{background-color:var(--color-accent)}}.xl\:divider-success{&:before,&:after{background-color:var(--color-success)}}.xl\:divider-warning{&:before,&:after{background-color:var(--color-warning)}}.xl\:divider-info{&:before,&:after{background-color:var(--color-info)}}.xl\:divider-error{&:before,&:after{background-color:var(--color-error)}}.xl\:divider-start:before,.xl\:divider-end:after{display:none}}@media (width>=1536px){.\32 xl\:divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent);flex-direction:row;align-self:stretch;align-items:center;display:flex;&:before,&:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{&:before,&:after{border:.5px solid}}&:not(:empty){gap:1rem}}.\32 xl\:divider-horizontal{--divider-m:0 1rem;&.divider{flex-direction:column;width:1rem;height:auto;&:before,&:after{width:.125rem;height:100%}}}.\32 xl\:divider-vertical{--divider-m:1rem 0;&.divider{flex-direction:row;width:auto;height:1rem;&:before,&:after{width:100%;height:.125rem}}}.\32 xl\:divider-neutral{&:before,&:after{background-color:var(--color-neutral)}}.\32 xl\:divider-primary{&:before,&:after{background-color:var(--color-primary)}}.\32 xl\:divider-secondary{&:before,&:after{background-color:var(--color-secondary)}}.\32 xl\:divider-accent{&:before,&:after{background-color:var(--color-accent)}}.\32 xl\:divider-success{&:before,&:after{background-color:var(--color-success)}}.\32 xl\:divider-warning{&:before,&:after{background-color:var(--color-warning)}}.\32 xl\:divider-info{&:before,&:after{background-color:var(--color-info)}}.\32 xl\:divider-error{&:before,&:after{background-color:var(--color-error)}}.\32 xl\:divider-start:before,.\32 xl\:divider-end:after{display:none}}.dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative;&>:not(summary):focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& .dropdown-content{position:absolute}&:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within){& .dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}}&[popover],& .dropdown-content{z-index:999;transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}@starting-style{&[popover],& .dropdown-content{opacity:0;scale:95%}}&.dropdown-open,&:not(.dropdown-hover):focus,&:focus-within{&>[tabindex]:first-child{pointer-events:none}& .dropdown-content{opacity:1}}&.dropdown-hover:hover{& .dropdown-content{opacity:1;scale:100%}}&:is(details){& summary{&::-webkit-details-marker{display:none}}}&.dropdown-open,&:focus,&:focus-within{& .dropdown-content{scale:100%}}&:where([popover]){background:0 0}&[popover]{color:inherit;position:fixed;@supports not (position-area:bottom){&{margin:auto}&.dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}&::backdrop{background-color:oklab(0% none none/.3)}}&:not(.dropdown-open,:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}}}.dropdown-start{--anchor-h:span-right;& :where(.dropdown-content){inset-inline-end:auto}&.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}&.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}}.dropdown-center{--anchor-h:center;& :where(.dropdown-content){inset-inline-end:50%;translate:50%;[dir=rtl] &{translate:-50%}}&.dropdown-left{--anchor-h:left;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}&.dropdown-right{--anchor-h:right;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}}.dropdown-end{--anchor-h:span-left;& :where(.dropdown-content){inset-inline-end:0;translate:0}&.dropdown-left{--anchor-h:left;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}&.dropdown-right{--anchor-h:right;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}}.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{inset-inline-end:100%;transform-origin:100%;top:0;bottom:auto}}.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{inset-inline-start:100%;transform-origin:0;top:0;bottom:auto}}.dropdown-bottom{--anchor-v:bottom;& .dropdown-content{transform-origin:top;top:100%;bottom:auto}}.dropdown-top{--anchor-v:top;& .dropdown-content{transform-origin:bottom;top:auto;bottom:100%}}@keyframes dropdown{0%{opacity:0}}@media (width>=640px){.sm\:dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative;&>:not(summary):focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& .dropdown-content{position:absolute}&:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within){& .dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}}&[popover],& .dropdown-content{z-index:999;transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}@starting-style{&[popover],& .dropdown-content{opacity:0;scale:95%}}&.dropdown-open,&:not(.dropdown-hover):focus,&:focus-within{&>[tabindex]:first-child{pointer-events:none}& .dropdown-content{opacity:1}}&.dropdown-hover:hover{& .dropdown-content{opacity:1;scale:100%}}&:is(details){& summary{&::-webkit-details-marker{display:none}}}&.dropdown-open,&:focus,&:focus-within{& .dropdown-content{scale:100%}}&:where([popover]){background:0 0}&[popover]{color:inherit;position:fixed;@supports not (position-area:bottom){&{margin:auto}&.dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}&::backdrop{background-color:oklab(0% none none/.3)}}&:not(.dropdown-open,:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}}}.sm\:dropdown-start{--anchor-h:span-right;& :where(.dropdown-content){inset-inline-end:auto}&.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}&.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}}.sm\:dropdown-center{--anchor-h:center;& :where(.dropdown-content){inset-inline-end:50%;translate:50%;[dir=rtl] &{translate:-50%}}&.dropdown-left{--anchor-h:left;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}&.dropdown-right{--anchor-h:right;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}}.sm\:dropdown-end{--anchor-h:span-left;& :where(.dropdown-content){inset-inline-end:0;translate:0}&.dropdown-left{--anchor-h:left;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}&.dropdown-right{--anchor-h:right;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}}.sm\:dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{inset-inline-end:100%;transform-origin:100%;top:0;bottom:auto}}.sm\:dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{inset-inline-start:100%;transform-origin:0;top:0;bottom:auto}}.sm\:dropdown-bottom{--anchor-v:bottom;& .dropdown-content{transform-origin:top;top:100%;bottom:auto}}.sm\:dropdown-top{--anchor-v:top;& .dropdown-content{transform-origin:bottom;top:auto;bottom:100%}}}@media (width>=768px){.md\:dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative;&>:not(summary):focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& .dropdown-content{position:absolute}&:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within){& .dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}}&[popover],& .dropdown-content{z-index:999;transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}@starting-style{&[popover],& .dropdown-content{opacity:0;scale:95%}}&.dropdown-open,&:not(.dropdown-hover):focus,&:focus-within{&>[tabindex]:first-child{pointer-events:none}& .dropdown-content{opacity:1}}&.dropdown-hover:hover{& .dropdown-content{opacity:1;scale:100%}}&:is(details){& summary{&::-webkit-details-marker{display:none}}}&.dropdown-open,&:focus,&:focus-within{& .dropdown-content{scale:100%}}&:where([popover]){background:0 0}&[popover]{color:inherit;position:fixed;@supports not (position-area:bottom){&{margin:auto}&.dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}&::backdrop{background-color:oklab(0% none none/.3)}}&:not(.dropdown-open,:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}}}.md\:dropdown-start{--anchor-h:span-right;& :where(.dropdown-content){inset-inline-end:auto}&.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}&.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}}.md\:dropdown-center{--anchor-h:center;& :where(.dropdown-content){inset-inline-end:50%;translate:50%;[dir=rtl] &{translate:-50%}}&.dropdown-left{--anchor-h:left;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}&.dropdown-right{--anchor-h:right;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}}.md\:dropdown-end{--anchor-h:span-left;& :where(.dropdown-content){inset-inline-end:0;translate:0}&.dropdown-left{--anchor-h:left;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}&.dropdown-right{--anchor-h:right;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}}.md\:dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{inset-inline-end:100%;transform-origin:100%;top:0;bottom:auto}}.md\:dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{inset-inline-start:100%;transform-origin:0;top:0;bottom:auto}}.md\:dropdown-bottom{--anchor-v:bottom;& .dropdown-content{transform-origin:top;top:100%;bottom:auto}}.md\:dropdown-top{--anchor-v:top;& .dropdown-content{transform-origin:bottom;top:auto;bottom:100%}}}@media (width>=1024px){.lg\:dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative;&>:not(summary):focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& .dropdown-content{position:absolute}&:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within){& .dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}}&[popover],& .dropdown-content{z-index:999;transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}@starting-style{&[popover],& .dropdown-content{opacity:0;scale:95%}}&.dropdown-open,&:not(.dropdown-hover):focus,&:focus-within{&>[tabindex]:first-child{pointer-events:none}& .dropdown-content{opacity:1}}&.dropdown-hover:hover{& .dropdown-content{opacity:1;scale:100%}}&:is(details){& summary{&::-webkit-details-marker{display:none}}}&.dropdown-open,&:focus,&:focus-within{& .dropdown-content{scale:100%}}&:where([popover]){background:0 0}&[popover]{color:inherit;position:fixed;@supports not (position-area:bottom){&{margin:auto}&.dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}&::backdrop{background-color:oklab(0% none none/.3)}}&:not(.dropdown-open,:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}}}.lg\:dropdown-start{--anchor-h:span-right;& :where(.dropdown-content){inset-inline-end:auto}&.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}&.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}}.lg\:dropdown-center{--anchor-h:center;& :where(.dropdown-content){inset-inline-end:50%;translate:50%;[dir=rtl] &{translate:-50%}}&.dropdown-left{--anchor-h:left;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}&.dropdown-right{--anchor-h:right;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}}.lg\:dropdown-end{--anchor-h:span-left;& :where(.dropdown-content){inset-inline-end:0;translate:0}&.dropdown-left{--anchor-h:left;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}&.dropdown-right{--anchor-h:right;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}}.lg\:dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{inset-inline-end:100%;transform-origin:100%;top:0;bottom:auto}}.lg\:dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{inset-inline-start:100%;transform-origin:0;top:0;bottom:auto}}.lg\:dropdown-bottom{--anchor-v:bottom;& .dropdown-content{transform-origin:top;top:100%;bottom:auto}}.lg\:dropdown-top{--anchor-v:top;& .dropdown-content{transform-origin:bottom;top:auto;bottom:100%}}}@media (width>=1280px){.xl\:dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative;&>:not(summary):focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& .dropdown-content{position:absolute}&:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within){& .dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}}&[popover],& .dropdown-content{z-index:999;transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}@starting-style{&[popover],& .dropdown-content{opacity:0;scale:95%}}&.dropdown-open,&:not(.dropdown-hover):focus,&:focus-within{&>[tabindex]:first-child{pointer-events:none}& .dropdown-content{opacity:1}}&.dropdown-hover:hover{& .dropdown-content{opacity:1;scale:100%}}&:is(details){& summary{&::-webkit-details-marker{display:none}}}&.dropdown-open,&:focus,&:focus-within{& .dropdown-content{scale:100%}}&:where([popover]){background:0 0}&[popover]{color:inherit;position:fixed;@supports not (position-area:bottom){&{margin:auto}&.dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}&::backdrop{background-color:oklab(0% none none/.3)}}&:not(.dropdown-open,:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}}}.xl\:dropdown-start{--anchor-h:span-right;& :where(.dropdown-content){inset-inline-end:auto}&.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}&.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}}.xl\:dropdown-center{--anchor-h:center;& :where(.dropdown-content){inset-inline-end:50%;translate:50%;[dir=rtl] &{translate:-50%}}&.dropdown-left{--anchor-h:left;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}&.dropdown-right{--anchor-h:right;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}}.xl\:dropdown-end{--anchor-h:span-left;& :where(.dropdown-content){inset-inline-end:0;translate:0}&.dropdown-left{--anchor-h:left;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}&.dropdown-right{--anchor-h:right;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}}.xl\:dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{inset-inline-end:100%;transform-origin:100%;top:0;bottom:auto}}.xl\:dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{inset-inline-start:100%;transform-origin:0;top:0;bottom:auto}}.xl\:dropdown-bottom{--anchor-v:bottom;& .dropdown-content{transform-origin:top;top:100%;bottom:auto}}.xl\:dropdown-top{--anchor-v:top;& .dropdown-content{transform-origin:bottom;top:auto;bottom:100%}}}@media (width>=1536px){.\32 xl\:dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative;&>:not(summary):focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& .dropdown-content{position:absolute}&:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within){& .dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}}&[popover],& .dropdown-content{z-index:999;transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}@starting-style{&[popover],& .dropdown-content{opacity:0;scale:95%}}&.dropdown-open,&:not(.dropdown-hover):focus,&:focus-within{&>[tabindex]:first-child{pointer-events:none}& .dropdown-content{opacity:1}}&.dropdown-hover:hover{& .dropdown-content{opacity:1;scale:100%}}&:is(details){& summary{&::-webkit-details-marker{display:none}}}&.dropdown-open,&:focus,&:focus-within{& .dropdown-content{scale:100%}}&:where([popover]){background:0 0}&[popover]{color:inherit;position:fixed;@supports not (position-area:bottom){&{margin:auto}&.dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}&::backdrop{background-color:oklab(0% none none/.3)}}&:not(.dropdown-open,:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}}}.\32 xl\:dropdown-start{--anchor-h:span-right;& :where(.dropdown-content){inset-inline-end:auto}&.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}&.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{top:0;bottom:auto}}}.\32 xl\:dropdown-center{--anchor-h:center;& :where(.dropdown-content){inset-inline-end:50%;translate:50%;[dir=rtl] &{translate:-50%}}&.dropdown-left{--anchor-h:left;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}&.dropdown-right{--anchor-h:right;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}}.\32 xl\:dropdown-end{--anchor-h:span-left;& :where(.dropdown-content){inset-inline-end:0;translate:0}&.dropdown-left{--anchor-h:left;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}&.dropdown-right{--anchor-h:right;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:0}}}.\32 xl\:dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{inset-inline-end:100%;transform-origin:100%;top:0;bottom:auto}}.\32 xl\:dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{inset-inline-start:100%;transform-origin:0;top:0;bottom:auto}}.\32 xl\:dropdown-bottom{--anchor-v:bottom;& .dropdown-content{transform-origin:top;top:100%;bottom:auto}}.\32 xl\:dropdown-top{--anchor-v:top;& .dropdown-content{transform-origin:bottom;top:auto;bottom:100%}}}.file-input{cursor:pointer;border:var(--border)solid #0000;cursor:pointer;appearance:none;background-color:var(--color-base-100);vertical-align:middle;-webkit-user-select:none;user-select:none;width:clamp(3rem,20rem,100%);height:var(--size);border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));align-items:center;padding-inline-end:.75rem;font-size:.875rem;line-height:2;display:inline-flex;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;height:calc(100% + var(--border)*2);margin-inline-end:1rem;margin-block:calc(var(--border)*-1);color:var(--btn-fg);border-width:var(--border);border-style:solid;border-color:var(--btn-border);background-color:var(--btn-bg);background-size:calc(var(--noise)*100%);background-image:var(--btn-noise);text-shadow:0 .5px oklch(1 0 0/calc(var(--depth)*.15));box-shadow:0 .5px 0 .5px color-mix(in oklab,color-mix(in oklab,white 30%,var(--btn-bg))calc(var(--depth)*20%),#0000)inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-border:color-mix(in oklab,var(--btn-bg),#000 5%);--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)30%,#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)30%,#0000);--btn-noise:var(--fx-noise);border-start-start-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-start-radius:calc(var(--join-es,var(--radius-field) - var(--border)));margin-inline-start:calc(var(--border)*-1);padding-inline:1rem;font-size:.875rem;font-weight:600}&:focus{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)10%,#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);box-shadow:none;color:color-mix(in oklch,var(--color-base-content)20%,#0000);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}&::file-selector-button{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}.file-input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;border-start-end-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-end-radius:calc(var(--join-es,var(--radius-field) - var(--border)));height:100%;margin-block:0;margin-inline:0 1rem;padding-inline:1rem}&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.file-input-neutral{--btn-color:var(--color-neutral);&::file-selector-button{color:var(--color-neutral-content)}&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.file-input-primary{--btn-color:var(--color-primary);&::file-selector-button{color:var(--color-primary-content)}&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.file-input-secondary{--btn-color:var(--color-secondary);&::file-selector-button{color:var(--color-secondary-content)}&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.file-input-accent{--btn-color:var(--color-accent);&::file-selector-button{color:var(--color-accent-content)}&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.file-input-info{--btn-color:var(--color-info);&::file-selector-button{color:var(--color-info-content)}&,&:focus,&:focus-within{--input-color:var(--color-info)}}.file-input-success{--btn-color:var(--color-success);&::file-selector-button{color:var(--color-success-content)}&,&:focus,&:focus-within{--input-color:var(--color-success)}}.file-input-warning{--btn-color:var(--color-warning);&::file-selector-button{color:var(--color-warning-content)}&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.file-input-error{--btn-color:var(--color-error);&::file-selector-button{color:var(--color-error-content)}&,&:focus,&:focus-within{--input-color:var(--color-error)}}.file-input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;line-height:1rem;&::file-selector-button{font-size:.6875rem}}.file-input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;line-height:1.5rem;&::file-selector-button{font-size:.75rem}}.file-input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;line-height:2;&::file-selector-button{font-size:.875rem}}.file-input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;line-height:2.5rem;&::file-selector-button{font-size:1.125rem}}.file-input-xl{--size:calc(var(--size-field,.25rem)*14);padding-inline-end:1.5rem;font-size:1.125rem;line-height:3rem;&::file-selector-button{font-size:1.375rem}}@media (width>=640px){.sm\:file-input{cursor:pointer;border:var(--border)solid #0000;cursor:pointer;appearance:none;background-color:var(--color-base-100);vertical-align:middle;-webkit-user-select:none;user-select:none;width:clamp(3rem,20rem,100%);height:var(--size);border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));align-items:center;padding-inline-end:.75rem;font-size:.875rem;line-height:2;display:inline-flex;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;height:calc(100% + var(--border)*2);margin-inline-end:1rem;margin-block:calc(var(--border)*-1);color:var(--btn-fg);border-width:var(--border);border-style:solid;border-color:var(--btn-border);background-color:var(--btn-bg);background-size:calc(var(--noise)*100%);background-image:var(--btn-noise);text-shadow:0 .5px oklch(1 0 0/calc(var(--depth)*.15));box-shadow:0 .5px 0 .5px color-mix(in oklab,color-mix(in oklab,white 30%,var(--btn-bg))calc(var(--depth)*20%),#0000)inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-border:color-mix(in oklab,var(--btn-bg),#000 5%);--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)30%,#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)30%,#0000);--btn-noise:var(--fx-noise);border-start-start-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-start-radius:calc(var(--join-es,var(--radius-field) - var(--border)));margin-inline-start:calc(var(--border)*-1);padding-inline:1rem;font-size:.875rem;font-weight:600}&:focus{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)10%,#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);box-shadow:none;color:color-mix(in oklch,var(--color-base-content)20%,#0000);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}&::file-selector-button{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}.sm\:file-input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;border-start-end-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-end-radius:calc(var(--join-es,var(--radius-field) - var(--border)));height:100%;margin-block:0;margin-inline:0 1rem;padding-inline:1rem}&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.sm\:file-input-neutral{--btn-color:var(--color-neutral);&::file-selector-button{color:var(--color-neutral-content)}&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.sm\:file-input-primary{--btn-color:var(--color-primary);&::file-selector-button{color:var(--color-primary-content)}&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.sm\:file-input-secondary{--btn-color:var(--color-secondary);&::file-selector-button{color:var(--color-secondary-content)}&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.sm\:file-input-accent{--btn-color:var(--color-accent);&::file-selector-button{color:var(--color-accent-content)}&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.sm\:file-input-info{--btn-color:var(--color-info);&::file-selector-button{color:var(--color-info-content)}&,&:focus,&:focus-within{--input-color:var(--color-info)}}.sm\:file-input-success{--btn-color:var(--color-success);&::file-selector-button{color:var(--color-success-content)}&,&:focus,&:focus-within{--input-color:var(--color-success)}}.sm\:file-input-warning{--btn-color:var(--color-warning);&::file-selector-button{color:var(--color-warning-content)}&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.sm\:file-input-error{--btn-color:var(--color-error);&::file-selector-button{color:var(--color-error-content)}&,&:focus,&:focus-within{--input-color:var(--color-error)}}.sm\:file-input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;line-height:1rem;&::file-selector-button{font-size:.6875rem}}.sm\:file-input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;line-height:1.5rem;&::file-selector-button{font-size:.75rem}}.sm\:file-input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;line-height:2;&::file-selector-button{font-size:.875rem}}.sm\:file-input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;line-height:2.5rem;&::file-selector-button{font-size:1.125rem}}.sm\:file-input-xl{--size:calc(var(--size-field,.25rem)*14);padding-inline-end:1.5rem;font-size:1.125rem;line-height:3rem;&::file-selector-button{font-size:1.375rem}}}@media (width>=768px){.md\:file-input{cursor:pointer;border:var(--border)solid #0000;cursor:pointer;appearance:none;background-color:var(--color-base-100);vertical-align:middle;-webkit-user-select:none;user-select:none;width:clamp(3rem,20rem,100%);height:var(--size);border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));align-items:center;padding-inline-end:.75rem;font-size:.875rem;line-height:2;display:inline-flex;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;height:calc(100% + var(--border)*2);margin-inline-end:1rem;margin-block:calc(var(--border)*-1);color:var(--btn-fg);border-width:var(--border);border-style:solid;border-color:var(--btn-border);background-color:var(--btn-bg);background-size:calc(var(--noise)*100%);background-image:var(--btn-noise);text-shadow:0 .5px oklch(1 0 0/calc(var(--depth)*.15));box-shadow:0 .5px 0 .5px color-mix(in oklab,color-mix(in oklab,white 30%,var(--btn-bg))calc(var(--depth)*20%),#0000)inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-border:color-mix(in oklab,var(--btn-bg),#000 5%);--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)30%,#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)30%,#0000);--btn-noise:var(--fx-noise);border-start-start-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-start-radius:calc(var(--join-es,var(--radius-field) - var(--border)));margin-inline-start:calc(var(--border)*-1);padding-inline:1rem;font-size:.875rem;font-weight:600}&:focus{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)10%,#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);box-shadow:none;color:color-mix(in oklch,var(--color-base-content)20%,#0000);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}&::file-selector-button{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}.md\:file-input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;border-start-end-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-end-radius:calc(var(--join-es,var(--radius-field) - var(--border)));height:100%;margin-block:0;margin-inline:0 1rem;padding-inline:1rem}&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.md\:file-input-neutral{--btn-color:var(--color-neutral);&::file-selector-button{color:var(--color-neutral-content)}&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.md\:file-input-primary{--btn-color:var(--color-primary);&::file-selector-button{color:var(--color-primary-content)}&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.md\:file-input-secondary{--btn-color:var(--color-secondary);&::file-selector-button{color:var(--color-secondary-content)}&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.md\:file-input-accent{--btn-color:var(--color-accent);&::file-selector-button{color:var(--color-accent-content)}&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.md\:file-input-info{--btn-color:var(--color-info);&::file-selector-button{color:var(--color-info-content)}&,&:focus,&:focus-within{--input-color:var(--color-info)}}.md\:file-input-success{--btn-color:var(--color-success);&::file-selector-button{color:var(--color-success-content)}&,&:focus,&:focus-within{--input-color:var(--color-success)}}.md\:file-input-warning{--btn-color:var(--color-warning);&::file-selector-button{color:var(--color-warning-content)}&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.md\:file-input-error{--btn-color:var(--color-error);&::file-selector-button{color:var(--color-error-content)}&,&:focus,&:focus-within{--input-color:var(--color-error)}}.md\:file-input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;line-height:1rem;&::file-selector-button{font-size:.6875rem}}.md\:file-input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;line-height:1.5rem;&::file-selector-button{font-size:.75rem}}.md\:file-input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;line-height:2;&::file-selector-button{font-size:.875rem}}.md\:file-input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;line-height:2.5rem;&::file-selector-button{font-size:1.125rem}}.md\:file-input-xl{--size:calc(var(--size-field,.25rem)*14);padding-inline-end:1.5rem;font-size:1.125rem;line-height:3rem;&::file-selector-button{font-size:1.375rem}}}@media (width>=1024px){.lg\:file-input{cursor:pointer;border:var(--border)solid #0000;cursor:pointer;appearance:none;background-color:var(--color-base-100);vertical-align:middle;-webkit-user-select:none;user-select:none;width:clamp(3rem,20rem,100%);height:var(--size);border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));align-items:center;padding-inline-end:.75rem;font-size:.875rem;line-height:2;display:inline-flex;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;height:calc(100% + var(--border)*2);margin-inline-end:1rem;margin-block:calc(var(--border)*-1);color:var(--btn-fg);border-width:var(--border);border-style:solid;border-color:var(--btn-border);background-color:var(--btn-bg);background-size:calc(var(--noise)*100%);background-image:var(--btn-noise);text-shadow:0 .5px oklch(1 0 0/calc(var(--depth)*.15));box-shadow:0 .5px 0 .5px color-mix(in oklab,color-mix(in oklab,white 30%,var(--btn-bg))calc(var(--depth)*20%),#0000)inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-border:color-mix(in oklab,var(--btn-bg),#000 5%);--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)30%,#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)30%,#0000);--btn-noise:var(--fx-noise);border-start-start-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-start-radius:calc(var(--join-es,var(--radius-field) - var(--border)));margin-inline-start:calc(var(--border)*-1);padding-inline:1rem;font-size:.875rem;font-weight:600}&:focus{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)10%,#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);box-shadow:none;color:color-mix(in oklch,var(--color-base-content)20%,#0000);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}&::file-selector-button{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}.lg\:file-input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;border-start-end-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-end-radius:calc(var(--join-es,var(--radius-field) - var(--border)));height:100%;margin-block:0;margin-inline:0 1rem;padding-inline:1rem}&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.lg\:file-input-neutral{--btn-color:var(--color-neutral);&::file-selector-button{color:var(--color-neutral-content)}&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.lg\:file-input-primary{--btn-color:var(--color-primary);&::file-selector-button{color:var(--color-primary-content)}&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.lg\:file-input-secondary{--btn-color:var(--color-secondary);&::file-selector-button{color:var(--color-secondary-content)}&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.lg\:file-input-accent{--btn-color:var(--color-accent);&::file-selector-button{color:var(--color-accent-content)}&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.lg\:file-input-info{--btn-color:var(--color-info);&::file-selector-button{color:var(--color-info-content)}&,&:focus,&:focus-within{--input-color:var(--color-info)}}.lg\:file-input-success{--btn-color:var(--color-success);&::file-selector-button{color:var(--color-success-content)}&,&:focus,&:focus-within{--input-color:var(--color-success)}}.lg\:file-input-warning{--btn-color:var(--color-warning);&::file-selector-button{color:var(--color-warning-content)}&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.lg\:file-input-error{--btn-color:var(--color-error);&::file-selector-button{color:var(--color-error-content)}&,&:focus,&:focus-within{--input-color:var(--color-error)}}.lg\:file-input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;line-height:1rem;&::file-selector-button{font-size:.6875rem}}.lg\:file-input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;line-height:1.5rem;&::file-selector-button{font-size:.75rem}}.lg\:file-input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;line-height:2;&::file-selector-button{font-size:.875rem}}.lg\:file-input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;line-height:2.5rem;&::file-selector-button{font-size:1.125rem}}.lg\:file-input-xl{--size:calc(var(--size-field,.25rem)*14);padding-inline-end:1.5rem;font-size:1.125rem;line-height:3rem;&::file-selector-button{font-size:1.375rem}}}@media (width>=1280px){.xl\:file-input{cursor:pointer;border:var(--border)solid #0000;cursor:pointer;appearance:none;background-color:var(--color-base-100);vertical-align:middle;-webkit-user-select:none;user-select:none;width:clamp(3rem,20rem,100%);height:var(--size);border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));align-items:center;padding-inline-end:.75rem;font-size:.875rem;line-height:2;display:inline-flex;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;height:calc(100% + var(--border)*2);margin-inline-end:1rem;margin-block:calc(var(--border)*-1);color:var(--btn-fg);border-width:var(--border);border-style:solid;border-color:var(--btn-border);background-color:var(--btn-bg);background-size:calc(var(--noise)*100%);background-image:var(--btn-noise);text-shadow:0 .5px oklch(1 0 0/calc(var(--depth)*.15));box-shadow:0 .5px 0 .5px color-mix(in oklab,color-mix(in oklab,white 30%,var(--btn-bg))calc(var(--depth)*20%),#0000)inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-border:color-mix(in oklab,var(--btn-bg),#000 5%);--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)30%,#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)30%,#0000);--btn-noise:var(--fx-noise);border-start-start-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-start-radius:calc(var(--join-es,var(--radius-field) - var(--border)));margin-inline-start:calc(var(--border)*-1);padding-inline:1rem;font-size:.875rem;font-weight:600}&:focus{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)10%,#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);box-shadow:none;color:color-mix(in oklch,var(--color-base-content)20%,#0000);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}&::file-selector-button{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}.xl\:file-input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;border-start-end-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-end-radius:calc(var(--join-es,var(--radius-field) - var(--border)));height:100%;margin-block:0;margin-inline:0 1rem;padding-inline:1rem}&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.xl\:file-input-neutral{--btn-color:var(--color-neutral);&::file-selector-button{color:var(--color-neutral-content)}&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.xl\:file-input-primary{--btn-color:var(--color-primary);&::file-selector-button{color:var(--color-primary-content)}&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.xl\:file-input-secondary{--btn-color:var(--color-secondary);&::file-selector-button{color:var(--color-secondary-content)}&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.xl\:file-input-accent{--btn-color:var(--color-accent);&::file-selector-button{color:var(--color-accent-content)}&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.xl\:file-input-info{--btn-color:var(--color-info);&::file-selector-button{color:var(--color-info-content)}&,&:focus,&:focus-within{--input-color:var(--color-info)}}.xl\:file-input-success{--btn-color:var(--color-success);&::file-selector-button{color:var(--color-success-content)}&,&:focus,&:focus-within{--input-color:var(--color-success)}}.xl\:file-input-warning{--btn-color:var(--color-warning);&::file-selector-button{color:var(--color-warning-content)}&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.xl\:file-input-error{--btn-color:var(--color-error);&::file-selector-button{color:var(--color-error-content)}&,&:focus,&:focus-within{--input-color:var(--color-error)}}.xl\:file-input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;line-height:1rem;&::file-selector-button{font-size:.6875rem}}.xl\:file-input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;line-height:1.5rem;&::file-selector-button{font-size:.75rem}}.xl\:file-input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;line-height:2;&::file-selector-button{font-size:.875rem}}.xl\:file-input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;line-height:2.5rem;&::file-selector-button{font-size:1.125rem}}.xl\:file-input-xl{--size:calc(var(--size-field,.25rem)*14);padding-inline-end:1.5rem;font-size:1.125rem;line-height:3rem;&::file-selector-button{font-size:1.375rem}}}@media (width>=1536px){.\32 xl\:file-input{cursor:pointer;border:var(--border)solid #0000;cursor:pointer;appearance:none;background-color:var(--color-base-100);vertical-align:middle;-webkit-user-select:none;user-select:none;width:clamp(3rem,20rem,100%);height:var(--size);border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));align-items:center;padding-inline-end:.75rem;font-size:.875rem;line-height:2;display:inline-flex;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;height:calc(100% + var(--border)*2);margin-inline-end:1rem;margin-block:calc(var(--border)*-1);color:var(--btn-fg);border-width:var(--border);border-style:solid;border-color:var(--btn-border);background-color:var(--btn-bg);background-size:calc(var(--noise)*100%);background-image:var(--btn-noise);text-shadow:0 .5px oklch(1 0 0/calc(var(--depth)*.15));box-shadow:0 .5px 0 .5px color-mix(in oklab,color-mix(in oklab,white 30%,var(--btn-bg))calc(var(--depth)*20%),#0000)inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-border:color-mix(in oklab,var(--btn-bg),#000 5%);--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)30%,#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)30%,#0000);--btn-noise:var(--fx-noise);border-start-start-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-start-radius:calc(var(--join-es,var(--radius-field) - var(--border)));margin-inline-start:calc(var(--border)*-1);padding-inline:1rem;font-size:.875rem;font-weight:600}&:focus{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)10%,#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}&:has(>input[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);box-shadow:none;color:color-mix(in oklch,var(--color-base-content)20%,#0000);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}&::file-selector-button{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}}.\32 xl\:file-input-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&::file-selector-button{cursor:pointer;-webkit-user-select:none;user-select:none;border-start-end-radius:calc(var(--join-ss,var(--radius-field) - var(--border)));border-end-end-radius:calc(var(--join-es,var(--radius-field) - var(--border)));height:100%;margin-block:0;margin-inline:0 1rem;padding-inline:1rem}&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.\32 xl\:file-input-neutral{--btn-color:var(--color-neutral);&::file-selector-button{color:var(--color-neutral-content)}&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.\32 xl\:file-input-primary{--btn-color:var(--color-primary);&::file-selector-button{color:var(--color-primary-content)}&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.\32 xl\:file-input-secondary{--btn-color:var(--color-secondary);&::file-selector-button{color:var(--color-secondary-content)}&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.\32 xl\:file-input-accent{--btn-color:var(--color-accent);&::file-selector-button{color:var(--color-accent-content)}&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.\32 xl\:file-input-info{--btn-color:var(--color-info);&::file-selector-button{color:var(--color-info-content)}&,&:focus,&:focus-within{--input-color:var(--color-info)}}.\32 xl\:file-input-success{--btn-color:var(--color-success);&::file-selector-button{color:var(--color-success-content)}&,&:focus,&:focus-within{--input-color:var(--color-success)}}.\32 xl\:file-input-warning{--btn-color:var(--color-warning);&::file-selector-button{color:var(--color-warning-content)}&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.\32 xl\:file-input-error{--btn-color:var(--color-error);&::file-selector-button{color:var(--color-error-content)}&,&:focus,&:focus-within{--input-color:var(--color-error)}}.\32 xl\:file-input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem;line-height:1rem;&::file-selector-button{font-size:.6875rem}}.\32 xl\:file-input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem;line-height:1.5rem;&::file-selector-button{font-size:.75rem}}.\32 xl\:file-input-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem;line-height:2;&::file-selector-button{font-size:.875rem}}.\32 xl\:file-input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem;line-height:2.5rem;&::file-selector-button{font-size:1.125rem}}.\32 xl\:file-input-xl{--size:calc(var(--size-field,.25rem)*14);padding-inline-end:1.5rem;font-size:1.125rem;line-height:3rem;&::file-selector-button{font-size:1.375rem}}}.collapse:not(td,tr,colgroup){visibility:visible}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;width:100%;transition:grid-template-rows .2s;display:grid;position:relative;overflow:hidden;&>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;grid-row-start:1;grid-column-start:1}&:is([open],:focus:not(.collapse-close)),&:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}&:is([open],:focus:not(.collapse-close))>.collapse-content,&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible;min-height:fit-content}&:focus-visible,&:has(>input:is([type=checkbox],[type=radio]):focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}&:not(.collapse-close){&>input[type=checkbox],&>input[type=radio]:not(:checked),&>.collapse-title{cursor:pointer}}&:focus:not(.collapse-close,.collapse[open])>.collapse-title{cursor:unset}&:is([open],:focus:not(.collapse-close))>:where(.collapse-content),&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}&[open]{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-open{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-arrow:focus:not(.collapse-close){&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&.collapse-arrow:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&[open]{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-open{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-plus:focus:not(.collapse-close){&>.collapse-title:after{content:"−"}}&.collapse-plus:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{content:"−"}}&>input:is([type=checkbox],[type=radio]){z-index:1;padding:1rem;width:100%;min-height:1lh;padding-inline-end:3rem;transition:background-color .2s ease-out}}.collapse-title,.collapse-content{grid-row-start:1;grid-column-start:1}.collapse-content{visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem;transition:visibility .2s,padding .2s ease-out,background-color .2s ease-out}.collapse:is(details){width:100%;& summary{display:block;position:relative;&::-webkit-details-marker{display:none}}}.collapse:is(details) summary{outline:none}.collapse-arrow{&>.collapse-title:after{top:1.9rem;content:"";transform-origin:75% 75%;pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem;transform:translateY(-100%)rotate(45deg);box-shadow:2px 2px}}.collapse-plus{&>.collapse-title:after{top:.9rem;content:"+";pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem}}.collapse-title{width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.collapse-open{grid-template-rows:max-content 1fr;&>.collapse-content{visibility:visible;min-height:fit-content;padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}}@media (width>=640px){.sm\:collapse:not(td,tr,colgroup){visibility:visible}.sm\:collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;width:100%;transition:grid-template-rows .2s;display:grid;position:relative;overflow:hidden;&>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;grid-row-start:1;grid-column-start:1}&:is([open],:focus:not(.collapse-close)),&:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}&:is([open],:focus:not(.collapse-close))>.collapse-content,&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible;min-height:fit-content}&:focus-visible,&:has(>input:is([type=checkbox],[type=radio]):focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}&:not(.collapse-close){&>input[type=checkbox],&>input[type=radio]:not(:checked),&>.collapse-title{cursor:pointer}}&:focus:not(.collapse-close,.collapse[open])>.collapse-title{cursor:unset}&:is([open],:focus:not(.collapse-close))>:where(.collapse-content),&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}&[open]{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-open{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-arrow:focus:not(.collapse-close){&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&.collapse-arrow:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&[open]{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-open{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-plus:focus:not(.collapse-close){&>.collapse-title:after{content:"−"}}&.collapse-plus:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{content:"−"}}&>input:is([type=checkbox],[type=radio]){z-index:1;padding:1rem;width:100%;min-height:1lh;padding-inline-end:3rem;transition:background-color .2s ease-out}}.sm\:collapse-title,.sm\:collapse-content{grid-row-start:1;grid-column-start:1}.sm\:collapse-content{visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem;transition:visibility .2s,padding .2s ease-out,background-color .2s ease-out}.sm\:collapse:is(details){width:100%;& summary{display:block;position:relative;&::-webkit-details-marker{display:none}}}.sm\:collapse:is(details) summary{outline:none}.sm\:collapse-arrow{&>.collapse-title:after{top:1.9rem;content:"";transform-origin:75% 75%;pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem;transform:translateY(-100%)rotate(45deg);box-shadow:2px 2px}}.sm\:collapse-plus{&>.collapse-title:after{top:.9rem;content:"+";pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem}}.sm\:collapse-title{width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.sm\:collapse-open{grid-template-rows:max-content 1fr;&>.collapse-content{visibility:visible;min-height:fit-content;padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}}}@media (width>=768px){.md\:collapse:not(td,tr,colgroup){visibility:visible}.md\:collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;width:100%;transition:grid-template-rows .2s;display:grid;position:relative;overflow:hidden;&>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;grid-row-start:1;grid-column-start:1}&:is([open],:focus:not(.collapse-close)),&:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}&:is([open],:focus:not(.collapse-close))>.collapse-content,&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible;min-height:fit-content}&:focus-visible,&:has(>input:is([type=checkbox],[type=radio]):focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}&:not(.collapse-close){&>input[type=checkbox],&>input[type=radio]:not(:checked),&>.collapse-title{cursor:pointer}}&:focus:not(.collapse-close,.collapse[open])>.collapse-title{cursor:unset}&:is([open],:focus:not(.collapse-close))>:where(.collapse-content),&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}&[open]{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-open{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-arrow:focus:not(.collapse-close){&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&.collapse-arrow:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&[open]{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-open{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-plus:focus:not(.collapse-close){&>.collapse-title:after{content:"−"}}&.collapse-plus:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{content:"−"}}&>input:is([type=checkbox],[type=radio]){z-index:1;padding:1rem;width:100%;min-height:1lh;padding-inline-end:3rem;transition:background-color .2s ease-out}}.md\:collapse-title,.md\:collapse-content{grid-row-start:1;grid-column-start:1}.md\:collapse-content{visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem;transition:visibility .2s,padding .2s ease-out,background-color .2s ease-out}.md\:collapse:is(details){width:100%;& summary{display:block;position:relative;&::-webkit-details-marker{display:none}}}.md\:collapse:is(details) summary{outline:none}.md\:collapse-arrow{&>.collapse-title:after{top:1.9rem;content:"";transform-origin:75% 75%;pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem;transform:translateY(-100%)rotate(45deg);box-shadow:2px 2px}}.md\:collapse-plus{&>.collapse-title:after{top:.9rem;content:"+";pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem}}.md\:collapse-title{width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.md\:collapse-open{grid-template-rows:max-content 1fr;&>.collapse-content{visibility:visible;min-height:fit-content;padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}}}@media (width>=1024px){.lg\:collapse:not(td,tr,colgroup){visibility:visible}.lg\:collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;width:100%;transition:grid-template-rows .2s;display:grid;position:relative;overflow:hidden;&>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;grid-row-start:1;grid-column-start:1}&:is([open],:focus:not(.collapse-close)),&:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}&:is([open],:focus:not(.collapse-close))>.collapse-content,&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible;min-height:fit-content}&:focus-visible,&:has(>input:is([type=checkbox],[type=radio]):focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}&:not(.collapse-close){&>input[type=checkbox],&>input[type=radio]:not(:checked),&>.collapse-title{cursor:pointer}}&:focus:not(.collapse-close,.collapse[open])>.collapse-title{cursor:unset}&:is([open],:focus:not(.collapse-close))>:where(.collapse-content),&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}&[open]{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-open{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-arrow:focus:not(.collapse-close){&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&.collapse-arrow:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&[open]{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-open{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-plus:focus:not(.collapse-close){&>.collapse-title:after{content:"−"}}&.collapse-plus:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{content:"−"}}&>input:is([type=checkbox],[type=radio]){z-index:1;padding:1rem;width:100%;min-height:1lh;padding-inline-end:3rem;transition:background-color .2s ease-out}}.lg\:collapse-title,.lg\:collapse-content{grid-row-start:1;grid-column-start:1}.lg\:collapse-content{visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem;transition:visibility .2s,padding .2s ease-out,background-color .2s ease-out}.lg\:collapse:is(details){width:100%;& summary{display:block;position:relative;&::-webkit-details-marker{display:none}}}.lg\:collapse:is(details) summary{outline:none}.lg\:collapse-arrow{&>.collapse-title:after{top:1.9rem;content:"";transform-origin:75% 75%;pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem;transform:translateY(-100%)rotate(45deg);box-shadow:2px 2px}}.lg\:collapse-plus{&>.collapse-title:after{top:.9rem;content:"+";pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem}}.lg\:collapse-title{width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.lg\:collapse-open{grid-template-rows:max-content 1fr;&>.collapse-content{visibility:visible;min-height:fit-content;padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}}}@media (width>=1280px){.xl\:collapse:not(td,tr,colgroup){visibility:visible}.xl\:collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;width:100%;transition:grid-template-rows .2s;display:grid;position:relative;overflow:hidden;&>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;grid-row-start:1;grid-column-start:1}&:is([open],:focus:not(.collapse-close)),&:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}&:is([open],:focus:not(.collapse-close))>.collapse-content,&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible;min-height:fit-content}&:focus-visible,&:has(>input:is([type=checkbox],[type=radio]):focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}&:not(.collapse-close){&>input[type=checkbox],&>input[type=radio]:not(:checked),&>.collapse-title{cursor:pointer}}&:focus:not(.collapse-close,.collapse[open])>.collapse-title{cursor:unset}&:is([open],:focus:not(.collapse-close))>:where(.collapse-content),&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}&[open]{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-open{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-arrow:focus:not(.collapse-close){&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&.collapse-arrow:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&[open]{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-open{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-plus:focus:not(.collapse-close){&>.collapse-title:after{content:"−"}}&.collapse-plus:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{content:"−"}}&>input:is([type=checkbox],[type=radio]){z-index:1;padding:1rem;width:100%;min-height:1lh;padding-inline-end:3rem;transition:background-color .2s ease-out}}.xl\:collapse-title,.xl\:collapse-content{grid-row-start:1;grid-column-start:1}.xl\:collapse-content{visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem;transition:visibility .2s,padding .2s ease-out,background-color .2s ease-out}.xl\:collapse:is(details){width:100%;& summary{display:block;position:relative;&::-webkit-details-marker{display:none}}}.xl\:collapse:is(details) summary{outline:none}.xl\:collapse-arrow{&>.collapse-title:after{top:1.9rem;content:"";transform-origin:75% 75%;pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem;transform:translateY(-100%)rotate(45deg);box-shadow:2px 2px}}.xl\:collapse-plus{&>.collapse-title:after{top:.9rem;content:"+";pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem}}.xl\:collapse-title{width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.xl\:collapse-open{grid-template-rows:max-content 1fr;&>.collapse-content{visibility:visible;min-height:fit-content;padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}}}@media (width>=1536px){.\32 xl\:collapse:not(td,tr,colgroup){visibility:visible}.\32 xl\:collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;width:100%;transition:grid-template-rows .2s;display:grid;position:relative;overflow:hidden;&>input:is([type=checkbox],[type=radio]){appearance:none;opacity:0;grid-row-start:1;grid-column-start:1}&:is([open],:focus:not(.collapse-close)),&:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}&:is([open],:focus:not(.collapse-close))>.collapse-content,&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible;min-height:fit-content}&:focus-visible,&:has(>input:is([type=checkbox],[type=radio]):focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}&:not(.collapse-close){&>input[type=checkbox],&>input[type=radio]:not(:checked),&>.collapse-title{cursor:pointer}}&:focus:not(.collapse-close,.collapse[open])>.collapse-title{cursor:unset}&:is([open],:focus:not(.collapse-close))>:where(.collapse-content),&:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}&[open]{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-open{&.collapse-arrow{&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}}&.collapse-arrow:focus:not(.collapse-close){&>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&.collapse-arrow:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}&[open]{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-open{&.collapse-plus{&>.collapse-title:after{content:"−"}}}&.collapse-plus:focus:not(.collapse-close){&>.collapse-title:after{content:"−"}}&.collapse-plus:not(.collapse-close){&>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{content:"−"}}&>input:is([type=checkbox],[type=radio]){z-index:1;padding:1rem;width:100%;min-height:1lh;padding-inline-end:3rem;transition:background-color .2s ease-out}}.\32 xl\:collapse-title,.\32 xl\:collapse-content{grid-row-start:1;grid-column-start:1}.\32 xl\:collapse-content{visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem;transition:visibility .2s,padding .2s ease-out,background-color .2s ease-out}.\32 xl\:collapse:is(details){width:100%;& summary{display:block;position:relative;&::-webkit-details-marker{display:none}}}.\32 xl\:collapse:is(details) summary{outline:none}.\32 xl\:collapse-arrow{&>.collapse-title:after{top:1.9rem;content:"";transform-origin:75% 75%;pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem;transform:translateY(-100%)rotate(45deg);box-shadow:2px 2px}}.\32 xl\:collapse-plus{&>.collapse-title:after{top:.9rem;content:"+";pointer-events:none;width:.5rem;height:.5rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset-inline-end:1.4rem}}.\32 xl\:collapse-title{width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.\32 xl\:collapse-open{grid-template-rows:max-content 1fr;&>.collapse-content{visibility:visible;min-height:fit-content;padding-bottom:1rem;transition:padding .2s ease-out,background-color .2s ease-out}}}.rating{vertical-align:middle;display:inline-flex;position:relative;& input{appearance:none;border:none}& :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem;animation:.25s ease-out rating;&:is(input){cursor:pointer}}& .rating-hidden{background-color:#0000;width:.5rem}& input[type=radio]:checked{background-image:none}& *{&:checked,&[aria-checked=true],&[aria-current=true],&:has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}&:focus-visible{transition:scale .2s ease-out;scale:1.1}}& :active:focus{animation:none;scale:1.1}&.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}&.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}&.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}&.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}&.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}}.rating-half{& :where(:not(.rating-hidden)){width:.75rem}}.rating-half{&.rating-xs :not(.rating-hidden){width:.5rem}&.rating-sm :not(.rating-hidden){width:.625rem}&.rating-md :not(.rating-hidden){width:.75rem}&.rating-lg :not(.rating-hidden){width:.875rem}&.rating-xl :not(.rating-hidden){width:1rem}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@media (width>=640px){.sm\:rating{vertical-align:middle;display:inline-flex;position:relative;& input{appearance:none;border:none}& :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem;animation:.25s ease-out rating;&:is(input){cursor:pointer}}& .rating-hidden{background-color:#0000;width:.5rem}& input[type=radio]:checked{background-image:none}& *{&:checked,&[aria-checked=true],&[aria-current=true],&:has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}&:focus-visible{transition:scale .2s ease-out;scale:1.1}}& :active:focus{animation:none;scale:1.1}&.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}&.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}&.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}&.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}&.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}}.sm\:rating-half{& :where(:not(.rating-hidden)){width:.75rem}}.sm\:rating-half{&.rating-xs :not(.rating-hidden){width:.5rem}&.rating-sm :not(.rating-hidden){width:.625rem}&.rating-md :not(.rating-hidden){width:.75rem}&.rating-lg :not(.rating-hidden){width:.875rem}&.rating-xl :not(.rating-hidden){width:1rem}}}@media (width>=768px){.md\:rating{vertical-align:middle;display:inline-flex;position:relative;& input{appearance:none;border:none}& :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem;animation:.25s ease-out rating;&:is(input){cursor:pointer}}& .rating-hidden{background-color:#0000;width:.5rem}& input[type=radio]:checked{background-image:none}& *{&:checked,&[aria-checked=true],&[aria-current=true],&:has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}&:focus-visible{transition:scale .2s ease-out;scale:1.1}}& :active:focus{animation:none;scale:1.1}&.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}&.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}&.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}&.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}&.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}}.md\:rating-half{& :where(:not(.rating-hidden)){width:.75rem}}.md\:rating-half{&.rating-xs :not(.rating-hidden){width:.5rem}&.rating-sm :not(.rating-hidden){width:.625rem}&.rating-md :not(.rating-hidden){width:.75rem}&.rating-lg :not(.rating-hidden){width:.875rem}&.rating-xl :not(.rating-hidden){width:1rem}}}@media (width>=1024px){.lg\:rating{vertical-align:middle;display:inline-flex;position:relative;& input{appearance:none;border:none}& :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem;animation:.25s ease-out rating;&:is(input){cursor:pointer}}& .rating-hidden{background-color:#0000;width:.5rem}& input[type=radio]:checked{background-image:none}& *{&:checked,&[aria-checked=true],&[aria-current=true],&:has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}&:focus-visible{transition:scale .2s ease-out;scale:1.1}}& :active:focus{animation:none;scale:1.1}&.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}&.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}&.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}&.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}&.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}}.lg\:rating-half{& :where(:not(.rating-hidden)){width:.75rem}}.lg\:rating-half{&.rating-xs :not(.rating-hidden){width:.5rem}&.rating-sm :not(.rating-hidden){width:.625rem}&.rating-md :not(.rating-hidden){width:.75rem}&.rating-lg :not(.rating-hidden){width:.875rem}&.rating-xl :not(.rating-hidden){width:1rem}}}@media (width>=1280px){.xl\:rating{vertical-align:middle;display:inline-flex;position:relative;& input{appearance:none;border:none}& :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem;animation:.25s ease-out rating;&:is(input){cursor:pointer}}& .rating-hidden{background-color:#0000;width:.5rem}& input[type=radio]:checked{background-image:none}& *{&:checked,&[aria-checked=true],&[aria-current=true],&:has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}&:focus-visible{transition:scale .2s ease-out;scale:1.1}}& :active:focus{animation:none;scale:1.1}&.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}&.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}&.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}&.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}&.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}}.xl\:rating-half{& :where(:not(.rating-hidden)){width:.75rem}}.xl\:rating-half{&.rating-xs :not(.rating-hidden){width:.5rem}&.rating-sm :not(.rating-hidden){width:.625rem}&.rating-md :not(.rating-hidden){width:.75rem}&.rating-lg :not(.rating-hidden){width:.875rem}&.rating-xl :not(.rating-hidden){width:1rem}}}@media (width>=1536px){.\32 xl\:rating{vertical-align:middle;display:inline-flex;position:relative;& input{appearance:none;border:none}& :where(*){background-color:var(--color-base-content);opacity:.2;border-radius:0;width:1.5rem;height:1.5rem;animation:.25s ease-out rating;&:is(input){cursor:pointer}}& .rating-hidden{background-color:#0000;width:.5rem}& input[type=radio]:checked{background-image:none}& *{&:checked,&[aria-checked=true],&[aria-current=true],&:has(~:checked,~[aria-checked=true],~[aria-current=true]){opacity:1}&:focus-visible{transition:scale .2s ease-out;scale:1.1}}& :active:focus{animation:none;scale:1.1}&.rating-xs :where(:not(.rating-hidden)){width:1rem;height:1rem}&.rating-sm :where(:not(.rating-hidden)){width:1.25rem;height:1.25rem}&.rating-md :where(:not(.rating-hidden)){width:1.5rem;height:1.5rem}&.rating-lg :where(:not(.rating-hidden)){width:1.75rem;height:1.75rem}&.rating-xl :where(:not(.rating-hidden)){width:2rem;height:2rem}}.\32 xl\:rating-half{& :where(:not(.rating-hidden)){width:.75rem}}.\32 xl\:rating-half{&.rating-xs :not(.rating-hidden){width:.5rem}&.rating-sm :not(.rating-hidden){width:.625rem}&.rating-md :not(.rating-hidden){width:.75rem}&.rating-lg :not(.rating-hidden){width:.875rem}&.rating-xl :not(.rating-hidden){width:1rem}}}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex;& :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative;&:before{inset-inline-start:0;background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";position:absolute;top:.75rem;bottom:.75rem}}& :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}& :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}& :where(li>details>summary){--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&::-webkit-details-marker{display:none}}& :where(li>details>summary),& :where(li>.menu-dropdown-toggle){&:after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}}& :where(li>details[open]>summary):after,& :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn){&.menu-focus,&:focus-visible{cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);color:var(--color-base-content);--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);--tw-outline-style:none;outline-style:none;box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01);@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}& :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative;& .badge{justify-self:flex-end}&>:not(ul,.menu-title,details,.btn):active,&>:not(ul,.menu-title,details,.btn).menu-active,&>details>summary:active{--tw-outline-style:none;color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&:not(&:active){box-shadow:0 2px calc(var(--depth)*3px)-2px var(--menu-active-bg)}}&.menu-disabled{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}& .dropdown:focus-within{& .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}}& .dropdown-content{margin-top:.5rem;padding:.5rem;&:before{display:none}}}.menu-title{color:color-mix(in oklab,var(--color-base-content)40%,transparent);padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;font-weight:600}.menu-horizontal{flex-direction:row;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:0;margin-top:1rem;padding-block:.5rem;padding-inline-end:.5rem;position:absolute}&>li>details>ul{&:before{content:none}}:where(&>li:not(.menu-title)>details>ul){border-radius:var(--radius-box);background-color:var(--color-base-100);box-shadow:0 1px 3px oklch(0% 0 0/.1),0 1px 2px -1px oklch(0% 0 0/.1)}}.menu-vertical{flex-direction:column;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:1rem;margin-top:0;padding-block:0;padding-inline-end:0;position:relative}}.menu-xs{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.5rem;font-size:.6875rem}& .menu-title{padding-block:.25rem;padding-inline:.5rem}}.menu-sm{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.625rem;font-size:.75rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.menu-md{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:.75rem;font-size:.875rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.menu-lg{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1rem;font-size:1.125rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}.menu-xl{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1.25rem;font-size:1.375rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}@media (width>=640px){.sm\:menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex;& :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative;&:before{inset-inline-start:0;background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";position:absolute;top:.75rem;bottom:.75rem}}& :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}& :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}& :where(li>details>summary){--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&::-webkit-details-marker{display:none}}& :where(li>details>summary),& :where(li>.menu-dropdown-toggle){&:after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}}& :where(li>details[open]>summary):after,& :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn){&.menu-focus,&:focus-visible{cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);color:var(--color-base-content);--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);--tw-outline-style:none;outline-style:none;box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01);@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}& :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative;& .badge{justify-self:flex-end}&>:not(ul,.menu-title,details,.btn):active,&>:not(ul,.menu-title,details,.btn).menu-active,&>details>summary:active{--tw-outline-style:none;color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&:not(&:active){box-shadow:0 2px calc(var(--depth)*3px)-2px var(--menu-active-bg)}}&.menu-disabled{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}& .dropdown:focus-within{& .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}}& .dropdown-content{margin-top:.5rem;padding:.5rem;&:before{display:none}}}.sm\:menu-title{color:color-mix(in oklab,var(--color-base-content)40%,transparent);padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;font-weight:600}.sm\:menu-horizontal{flex-direction:row;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:0;margin-top:1rem;padding-block:.5rem;padding-inline-end:.5rem;position:absolute}&>li>details>ul{&:before{content:none}}:where(&>li:not(.menu-title)>details>ul){border-radius:var(--radius-box);background-color:var(--color-base-100);box-shadow:0 1px 3px oklch(0% 0 0/.1),0 1px 2px -1px oklch(0% 0 0/.1)}}.sm\:menu-vertical{flex-direction:column;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:1rem;margin-top:0;padding-block:0;padding-inline-end:0;position:relative}}.sm\:menu-xs{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.5rem;font-size:.6875rem}& .menu-title{padding-block:.25rem;padding-inline:.5rem}}.sm\:menu-sm{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.625rem;font-size:.75rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.sm\:menu-md{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:.75rem;font-size:.875rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.sm\:menu-lg{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1rem;font-size:1.125rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}.sm\:menu-xl{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1.25rem;font-size:1.375rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}}@media (width>=768px){.md\:menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex;& :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative;&:before{inset-inline-start:0;background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";position:absolute;top:.75rem;bottom:.75rem}}& :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}& :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}& :where(li>details>summary){--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&::-webkit-details-marker{display:none}}& :where(li>details>summary),& :where(li>.menu-dropdown-toggle){&:after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}}& :where(li>details[open]>summary):after,& :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn){&.menu-focus,&:focus-visible{cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);color:var(--color-base-content);--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);--tw-outline-style:none;outline-style:none;box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01);@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}& :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative;& .badge{justify-self:flex-end}&>:not(ul,.menu-title,details,.btn):active,&>:not(ul,.menu-title,details,.btn).menu-active,&>details>summary:active{--tw-outline-style:none;color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&:not(&:active){box-shadow:0 2px calc(var(--depth)*3px)-2px var(--menu-active-bg)}}&.menu-disabled{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}& .dropdown:focus-within{& .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}}& .dropdown-content{margin-top:.5rem;padding:.5rem;&:before{display:none}}}.md\:menu-title{color:color-mix(in oklab,var(--color-base-content)40%,transparent);padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;font-weight:600}.md\:menu-horizontal{flex-direction:row;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:0;margin-top:1rem;padding-block:.5rem;padding-inline-end:.5rem;position:absolute}&>li>details>ul{&:before{content:none}}:where(&>li:not(.menu-title)>details>ul){border-radius:var(--radius-box);background-color:var(--color-base-100);box-shadow:0 1px 3px oklch(0% 0 0/.1),0 1px 2px -1px oklch(0% 0 0/.1)}}.md\:menu-vertical{flex-direction:column;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:1rem;margin-top:0;padding-block:0;padding-inline-end:0;position:relative}}.md\:menu-xs{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.5rem;font-size:.6875rem}& .menu-title{padding-block:.25rem;padding-inline:.5rem}}.md\:menu-sm{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.625rem;font-size:.75rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.md\:menu-md{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:.75rem;font-size:.875rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.md\:menu-lg{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1rem;font-size:1.125rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}.md\:menu-xl{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1.25rem;font-size:1.375rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}}@media (width>=1024px){.lg\:menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex;& :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative;&:before{inset-inline-start:0;background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";position:absolute;top:.75rem;bottom:.75rem}}& :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}& :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}& :where(li>details>summary){--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&::-webkit-details-marker{display:none}}& :where(li>details>summary),& :where(li>.menu-dropdown-toggle){&:after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}}& :where(li>details[open]>summary):after,& :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn){&.menu-focus,&:focus-visible{cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);color:var(--color-base-content);--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);--tw-outline-style:none;outline-style:none;box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01);@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}& :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative;& .badge{justify-self:flex-end}&>:not(ul,.menu-title,details,.btn):active,&>:not(ul,.menu-title,details,.btn).menu-active,&>details>summary:active{--tw-outline-style:none;color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&:not(&:active){box-shadow:0 2px calc(var(--depth)*3px)-2px var(--menu-active-bg)}}&.menu-disabled{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}& .dropdown:focus-within{& .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}}& .dropdown-content{margin-top:.5rem;padding:.5rem;&:before{display:none}}}.lg\:menu-title{color:color-mix(in oklab,var(--color-base-content)40%,transparent);padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;font-weight:600}.lg\:menu-horizontal{flex-direction:row;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:0;margin-top:1rem;padding-block:.5rem;padding-inline-end:.5rem;position:absolute}&>li>details>ul{&:before{content:none}}:where(&>li:not(.menu-title)>details>ul){border-radius:var(--radius-box);background-color:var(--color-base-100);box-shadow:0 1px 3px oklch(0% 0 0/.1),0 1px 2px -1px oklch(0% 0 0/.1)}}.lg\:menu-vertical{flex-direction:column;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:1rem;margin-top:0;padding-block:0;padding-inline-end:0;position:relative}}.lg\:menu-xs{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.5rem;font-size:.6875rem}& .menu-title{padding-block:.25rem;padding-inline:.5rem}}.lg\:menu-sm{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.625rem;font-size:.75rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.lg\:menu-md{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:.75rem;font-size:.875rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.lg\:menu-lg{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1rem;font-size:1.125rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}.lg\:menu-xl{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1.25rem;font-size:1.375rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}}@media (width>=1280px){.xl\:menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex;& :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative;&:before{inset-inline-start:0;background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";position:absolute;top:.75rem;bottom:.75rem}}& :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}& :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}& :where(li>details>summary){--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&::-webkit-details-marker{display:none}}& :where(li>details>summary),& :where(li>.menu-dropdown-toggle){&:after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}}& :where(li>details[open]>summary):after,& :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn){&.menu-focus,&:focus-visible{cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);color:var(--color-base-content);--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);--tw-outline-style:none;outline-style:none;box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01);@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}& :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative;& .badge{justify-self:flex-end}&>:not(ul,.menu-title,details,.btn):active,&>:not(ul,.menu-title,details,.btn).menu-active,&>details>summary:active{--tw-outline-style:none;color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&:not(&:active){box-shadow:0 2px calc(var(--depth)*3px)-2px var(--menu-active-bg)}}&.menu-disabled{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}& .dropdown:focus-within{& .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}}& .dropdown-content{margin-top:.5rem;padding:.5rem;&:before{display:none}}}.xl\:menu-title{color:color-mix(in oklab,var(--color-base-content)40%,transparent);padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;font-weight:600}.xl\:menu-horizontal{flex-direction:row;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:0;margin-top:1rem;padding-block:.5rem;padding-inline-end:.5rem;position:absolute}&>li>details>ul{&:before{content:none}}:where(&>li:not(.menu-title)>details>ul){border-radius:var(--radius-box);background-color:var(--color-base-100);box-shadow:0 1px 3px oklch(0% 0 0/.1),0 1px 2px -1px oklch(0% 0 0/.1)}}.xl\:menu-vertical{flex-direction:column;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:1rem;margin-top:0;padding-block:0;padding-inline-end:0;position:relative}}.xl\:menu-xs{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.5rem;font-size:.6875rem}& .menu-title{padding-block:.25rem;padding-inline:.5rem}}.xl\:menu-sm{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.625rem;font-size:.75rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.xl\:menu-md{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:.75rem;font-size:.875rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.xl\:menu-lg{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1rem;font-size:1.125rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}.xl\:menu-xl{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1.25rem;font-size:1.375rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}}@media (width>=1536px){.\32 xl\:menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex;& :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative;&:before{inset-inline-start:0;background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";position:absolute;top:.75rem;bottom:.75rem}}& :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}& :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}& :where(li>details>summary){--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&::-webkit-details-marker{display:none}}& :where(li>details>summary),& :where(li>.menu-dropdown-toggle){&:after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}}& :where(li>details[open]>summary):after,& :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn){&.menu-focus,&:focus-visible{cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);color:var(--color-base-content);--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}}& :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);--tw-outline-style:none;outline-style:none;box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01);@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}& :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}& :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative;& .badge{justify-self:flex-end}&>:not(ul,.menu-title,details,.btn):active,&>:not(ul,.menu-title,details,.btn).menu-active,&>details>summary:active{--tw-outline-style:none;color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}&:not(&:active){box-shadow:0 2px calc(var(--depth)*3px)-2px var(--menu-active-bg)}}&.menu-disabled{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}& .dropdown:focus-within{& .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}}& .dropdown-content{margin-top:.5rem;padding:.5rem;&:before{display:none}}}.\32 xl\:menu-title{color:color-mix(in oklab,var(--color-base-content)40%,transparent);padding-block:.5rem;padding-inline:.75rem;font-size:.875rem;font-weight:600}.\32 xl\:menu-horizontal{flex-direction:row;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:0;margin-top:1rem;padding-block:.5rem;padding-inline-end:.5rem;position:absolute}&>li>details>ul{&:before{content:none}}:where(&>li:not(.menu-title)>details>ul){border-radius:var(--radius-box);background-color:var(--color-base-100);box-shadow:0 1px 3px oklch(0% 0 0/.1),0 1px 2px -1px oklch(0% 0 0/.1)}}.\32 xl\:menu-vertical{flex-direction:column;display:inline-flex;&>li:not(.menu-title)>details>ul{margin-inline-start:1rem;margin-top:0;padding-block:0;padding-inline-end:0;position:relative}}.\32 xl\:menu-xs{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.5rem;font-size:.6875rem}& .menu-title{padding-block:.25rem;padding-inline:.5rem}}.\32 xl\:menu-sm{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.25rem;padding-inline:.625rem;font-size:.75rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.\32 xl\:menu-md{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:.75rem;font-size:.875rem}& .menu-title{padding-block:.5rem;padding-inline:.75rem}}.\32 xl\:menu-lg{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1rem;font-size:1.125rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}.\32 xl\:menu-xl{& :where(li:not(.menu-title)>:not(ul,details,.menu-title)),& :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);padding-block:.375rem;padding-inline:1.25rem;font-size:1.375rem}& .menu-title{padding-block:.75rem;padding-inline:1.5rem}}}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));width:fit-content;padding-inline:calc(.25rem*3 - var(--border));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.badge-dash{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-style:dashed;border-color:currentColor}.badge-soft{color:var(--badge-color,var(--color-base-content));background-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))10%,var(--color-base-100));background-image:none}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-neutral{--badge-color:var(--color-neutral);--badge-fg:var(--color-neutral-content)}.badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.badge-xs{--size:calc(var(--size-selector,.25rem)*4);padding-inline:calc(.25rem*2 - var(--border));font-size:.625rem}.badge-sm{--size:calc(var(--size-selector,.25rem)*5);padding-inline:calc(.25rem*2.5 - var(--border));font-size:.75rem}.badge-md{--size:calc(var(--size-selector,.25rem)*6);padding-inline:calc(.25rem*3 - var(--border));font-size:.875rem}.badge-lg{--size:calc(var(--size-selector,.25rem)*7);padding-inline:calc(.25rem*3.5 - var(--border));font-size:1rem}.badge-xl{--size:calc(var(--size-selector,.25rem)*8);padding-inline:calc(.25rem*4 - var(--border));font-size:1.125rem}@media (width>=640px){.sm\:badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));width:fit-content;padding-inline:calc(.25rem*3 - var(--border));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.sm\:badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.sm\:badge-dash{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-style:dashed;border-color:currentColor}.sm\:badge-soft{color:var(--badge-color,var(--color-base-content));background-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))10%,var(--color-base-100));background-image:none}.sm\:badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.sm\:badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.sm\:badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.sm\:badge-neutral{--badge-color:var(--color-neutral);--badge-fg:var(--color-neutral-content)}.sm\:badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.sm\:badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.sm\:badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.sm\:badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.sm\:badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.sm\:badge-xs{--size:calc(var(--size-selector,.25rem)*4);padding-inline:calc(.25rem*2 - var(--border));font-size:.625rem}.sm\:badge-sm{--size:calc(var(--size-selector,.25rem)*5);padding-inline:calc(.25rem*2.5 - var(--border));font-size:.75rem}.sm\:badge-md{--size:calc(var(--size-selector,.25rem)*6);padding-inline:calc(.25rem*3 - var(--border));font-size:.875rem}.sm\:badge-lg{--size:calc(var(--size-selector,.25rem)*7);padding-inline:calc(.25rem*3.5 - var(--border));font-size:1rem}.sm\:badge-xl{--size:calc(var(--size-selector,.25rem)*8);padding-inline:calc(.25rem*4 - var(--border));font-size:1.125rem}}@media (width>=768px){.md\:badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));width:fit-content;padding-inline:calc(.25rem*3 - var(--border));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.md\:badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.md\:badge-dash{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-style:dashed;border-color:currentColor}.md\:badge-soft{color:var(--badge-color,var(--color-base-content));background-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))10%,var(--color-base-100));background-image:none}.md\:badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.md\:badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.md\:badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.md\:badge-neutral{--badge-color:var(--color-neutral);--badge-fg:var(--color-neutral-content)}.md\:badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.md\:badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.md\:badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.md\:badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.md\:badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.md\:badge-xs{--size:calc(var(--size-selector,.25rem)*4);padding-inline:calc(.25rem*2 - var(--border));font-size:.625rem}.md\:badge-sm{--size:calc(var(--size-selector,.25rem)*5);padding-inline:calc(.25rem*2.5 - var(--border));font-size:.75rem}.md\:badge-md{--size:calc(var(--size-selector,.25rem)*6);padding-inline:calc(.25rem*3 - var(--border));font-size:.875rem}.md\:badge-lg{--size:calc(var(--size-selector,.25rem)*7);padding-inline:calc(.25rem*3.5 - var(--border));font-size:1rem}.md\:badge-xl{--size:calc(var(--size-selector,.25rem)*8);padding-inline:calc(.25rem*4 - var(--border));font-size:1.125rem}}@media (width>=1024px){.lg\:badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));width:fit-content;padding-inline:calc(.25rem*3 - var(--border));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.lg\:badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.lg\:badge-dash{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-style:dashed;border-color:currentColor}.lg\:badge-soft{color:var(--badge-color,var(--color-base-content));background-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))10%,var(--color-base-100));background-image:none}.lg\:badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.lg\:badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.lg\:badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.lg\:badge-neutral{--badge-color:var(--color-neutral);--badge-fg:var(--color-neutral-content)}.lg\:badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.lg\:badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.lg\:badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.lg\:badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.lg\:badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.lg\:badge-xs{--size:calc(var(--size-selector,.25rem)*4);padding-inline:calc(.25rem*2 - var(--border));font-size:.625rem}.lg\:badge-sm{--size:calc(var(--size-selector,.25rem)*5);padding-inline:calc(.25rem*2.5 - var(--border));font-size:.75rem}.lg\:badge-md{--size:calc(var(--size-selector,.25rem)*6);padding-inline:calc(.25rem*3 - var(--border));font-size:.875rem}.lg\:badge-lg{--size:calc(var(--size-selector,.25rem)*7);padding-inline:calc(.25rem*3.5 - var(--border));font-size:1rem}.lg\:badge-xl{--size:calc(var(--size-selector,.25rem)*8);padding-inline:calc(.25rem*4 - var(--border));font-size:1.125rem}}@media (width>=1280px){.xl\:badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));width:fit-content;padding-inline:calc(.25rem*3 - var(--border));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.xl\:badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.xl\:badge-dash{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-style:dashed;border-color:currentColor}.xl\:badge-soft{color:var(--badge-color,var(--color-base-content));background-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))10%,var(--color-base-100));background-image:none}.xl\:badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.xl\:badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.xl\:badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.xl\:badge-neutral{--badge-color:var(--color-neutral);--badge-fg:var(--color-neutral-content)}.xl\:badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.xl\:badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.xl\:badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.xl\:badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.xl\:badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.xl\:badge-xs{--size:calc(var(--size-selector,.25rem)*4);padding-inline:calc(.25rem*2 - var(--border));font-size:.625rem}.xl\:badge-sm{--size:calc(var(--size-selector,.25rem)*5);padding-inline:calc(.25rem*2.5 - var(--border));font-size:.75rem}.xl\:badge-md{--size:calc(var(--size-selector,.25rem)*6);padding-inline:calc(.25rem*3 - var(--border));font-size:.875rem}.xl\:badge-lg{--size:calc(var(--size-selector,.25rem)*7);padding-inline:calc(.25rem*3.5 - var(--border));font-size:1rem}.xl\:badge-xl{--size:calc(var(--size-selector,.25rem)*8);padding-inline:calc(.25rem*4 - var(--border));font-size:1.125rem}}@media (width>=1536px){.\32 xl\:badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));width:fit-content;padding-inline:calc(.25rem*3 - var(--border));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);height:var(--size);justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.\32 xl\:badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.\32 xl\:badge-dash{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-style:dashed;border-color:currentColor}.\32 xl\:badge-soft{color:var(--badge-color,var(--color-base-content));background-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--badge-color,var(--color-base-content))10%,var(--color-base-100));background-image:none}.\32 xl\:badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.\32 xl\:badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.\32 xl\:badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.\32 xl\:badge-neutral{--badge-color:var(--color-neutral);--badge-fg:var(--color-neutral-content)}.\32 xl\:badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.\32 xl\:badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.\32 xl\:badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.\32 xl\:badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.\32 xl\:badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.\32 xl\:badge-xs{--size:calc(var(--size-selector,.25rem)*4);padding-inline:calc(.25rem*2 - var(--border));font-size:.625rem}.\32 xl\:badge-sm{--size:calc(var(--size-selector,.25rem)*5);padding-inline:calc(.25rem*2.5 - var(--border));font-size:.75rem}.\32 xl\:badge-md{--size:calc(var(--size-selector,.25rem)*6);padding-inline:calc(.25rem*3 - var(--border));font-size:.875rem}.\32 xl\:badge-lg{--size:calc(var(--size-selector,.25rem)*7);padding-inline:calc(.25rem*3.5 - var(--border));font-size:1rem}.\32 xl\:badge-xl{--size:calc(var(--size-selector,.25rem)*8);padding-inline:calc(.25rem*4 - var(--border));font-size:1.125rem}}.navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.navbar-start{justify-content:flex-start;align-items:center;width:50%;display:inline-flex}.navbar-center{flex-shrink:0;align-items:center;display:inline-flex}.navbar-end{justify-content:flex-end;align-items:center;width:50%;display:inline-flex}@media (width>=640px){.sm\:navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.sm\:navbar-start{justify-content:flex-start;align-items:center;width:50%;display:inline-flex}.sm\:navbar-center{flex-shrink:0;align-items:center;display:inline-flex}.sm\:navbar-end{justify-content:flex-end;align-items:center;width:50%;display:inline-flex}}@media (width>=768px){.md\:navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.md\:navbar-start{justify-content:flex-start;align-items:center;width:50%;display:inline-flex}.md\:navbar-center{flex-shrink:0;align-items:center;display:inline-flex}.md\:navbar-end{justify-content:flex-end;align-items:center;width:50%;display:inline-flex}}@media (width>=1024px){.lg\:navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.lg\:navbar-start{justify-content:flex-start;align-items:center;width:50%;display:inline-flex}.lg\:navbar-center{flex-shrink:0;align-items:center;display:inline-flex}.lg\:navbar-end{justify-content:flex-end;align-items:center;width:50%;display:inline-flex}}@media (width>=1280px){.xl\:navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.xl\:navbar-start{justify-content:flex-start;align-items:center;width:50%;display:inline-flex}.xl\:navbar-center{flex-shrink:0;align-items:center;display:inline-flex}.xl\:navbar-end{justify-content:flex-end;align-items:center;width:50%;display:inline-flex}}@media (width>=1536px){.\32 xl\:navbar{align-items:center;width:100%;min-height:4rem;padding:.5rem;display:flex}.\32 xl\:navbar-start{justify-content:flex-start;align-items:center;width:50%;display:inline-flex}.\32 xl\:navbar-center{flex-shrink:0;align-items:center;display:inline-flex}.\32 xl\:navbar-end{justify-content:flex-end;align-items:center;width:50%;display:inline-flex}}.toast{inset-inline:auto 1rem;translate:var(--toast-x,0)var(--toast-y,0);background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem;&>*{animation:.25s ease-out toast}&:where(.toast-start){--toast-x:0;inset-inline:1rem auto}&:where(.toast-center){--toast-x:-50%;inset-inline:50%}&:where(.toast-end){--toast-x:0;inset-inline:auto 1rem}&:where(.toast-bottom){--toast-y:0;top:auto;bottom:1rem}&:where(.toast-middle){--toast-y:-50%;top:50%;bottom:auto}&:where(.toast-top){--toast-y:0;top:1rem;bottom:auto}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@media (width>=640px){.sm\:toast{inset-inline:auto 1rem;translate:var(--toast-x,0)var(--toast-y,0);background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem;&>*{animation:.25s ease-out toast}&:where(.toast-start){--toast-x:0;inset-inline:1rem auto}&:where(.toast-center){--toast-x:-50%;inset-inline:50%}&:where(.toast-end){--toast-x:0;inset-inline:auto 1rem}&:where(.toast-bottom){--toast-y:0;top:auto;bottom:1rem}&:where(.toast-middle){--toast-y:-50%;top:50%;bottom:auto}&:where(.toast-top){--toast-y:0;top:1rem;bottom:auto}}}@media (width>=768px){.md\:toast{inset-inline:auto 1rem;translate:var(--toast-x,0)var(--toast-y,0);background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem;&>*{animation:.25s ease-out toast}&:where(.toast-start){--toast-x:0;inset-inline:1rem auto}&:where(.toast-center){--toast-x:-50%;inset-inline:50%}&:where(.toast-end){--toast-x:0;inset-inline:auto 1rem}&:where(.toast-bottom){--toast-y:0;top:auto;bottom:1rem}&:where(.toast-middle){--toast-y:-50%;top:50%;bottom:auto}&:where(.toast-top){--toast-y:0;top:1rem;bottom:auto}}}@media (width>=1024px){.lg\:toast{inset-inline:auto 1rem;translate:var(--toast-x,0)var(--toast-y,0);background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem;&>*{animation:.25s ease-out toast}&:where(.toast-start){--toast-x:0;inset-inline:1rem auto}&:where(.toast-center){--toast-x:-50%;inset-inline:50%}&:where(.toast-end){--toast-x:0;inset-inline:auto 1rem}&:where(.toast-bottom){--toast-y:0;top:auto;bottom:1rem}&:where(.toast-middle){--toast-y:-50%;top:50%;bottom:auto}&:where(.toast-top){--toast-y:0;top:1rem;bottom:auto}}}@media (width>=1280px){.xl\:toast{inset-inline:auto 1rem;translate:var(--toast-x,0)var(--toast-y,0);background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem;&>*{animation:.25s ease-out toast}&:where(.toast-start){--toast-x:0;inset-inline:1rem auto}&:where(.toast-center){--toast-x:-50%;inset-inline:50%}&:where(.toast-end){--toast-x:0;inset-inline:auto 1rem}&:where(.toast-bottom){--toast-y:0;top:auto;bottom:1rem}&:where(.toast-middle){--toast-y:-50%;top:50%;bottom:auto}&:where(.toast-top){--toast-y:0;top:1rem;bottom:auto}}}@media (width>=1536px){.\32 xl\:toast{inset-inline:auto 1rem;translate:var(--toast-x,0)var(--toast-y,0);background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem;&>*{animation:.25s ease-out toast}&:where(.toast-start){--toast-x:0;inset-inline:1rem auto}&:where(.toast-center){--toast-x:-50%;inset-inline:50%}&:where(.toast-end){--toast-x:0;inset-inline:auto 1rem}&:where(.toast-bottom){--toast-y:0;top:auto;bottom:1rem}&:where(.toast-middle){--toast-y:-50%;top:50%;bottom:auto}&:where(.toast-top){--toast-y:0;top:1rem;bottom:auto}}}.timeline{display:flex;position:relative;&>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative;&>hr{border:none;width:100%;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}@media print{&{border:.1px solid var(--color-base-300)}}}}& :where(hr){background-color:var(--color-base-300);height:.25rem}&:has(.timeline-middle hr){&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}&:not(:has(.timeline-middle)){& :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}& :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}.timeline-box{border:var(--border)solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.timeline-middle{grid-row-start:2;grid-column-start:2}.timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.timeline-compact{--timeline-row-start:0;& .timeline-start{grid-area:3/1/4/4;place-self:flex-start center}& li:has(.timeline-start){& .timeline-end{grid-row-start:auto;grid-column-start:none}}&.timeline-vertical{&>li{--timeline-col-start:0}& .timeline-start{grid-area:1/3/4/4;place-self:center flex-start}& li:has(.timeline-start){& .timeline-end{grid-row-start:none;grid-column-start:auto}}}}.timeline-snap-icon{&>li{--timeline-col-start:.5rem;--timeline-row-start:minmax(0,1fr)}}.timeline-vertical{flex-direction:column;&>li{--timeline-row-start:minmax(0,1fr);--timeline-row-end:minmax(0,1fr);justify-items:center;&>hr{width:.25rem;height:100%;&:first-child{grid-row-start:1;grid-column-start:2}&:last-child{grid-area:3/2/none}}}& .timeline-start{grid-area:1/1/4/2;place-self:center flex-end}& .timeline-end{grid-area:1/3/4/4;place-self:center flex-start}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}&:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}& :last-child{&>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}}}&.timeline-snap-icon{&>li{--timeline-col-start:minmax(0,1fr);--timeline-row-start:.5rem}}}.timeline-horizontal{flex-direction:row;&>li{align-items:center;&>hr{width:100%;height:.25rem;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}}}& .timeline-start{grid-area:1/1/2/4;place-self:flex-end center}& .timeline-end{grid-area:3/1/4/4;place-self:flex-start center}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}& :last-child{&>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}}@media (width>=640px){.sm\:timeline{display:flex;position:relative;&>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative;&>hr{border:none;width:100%;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}@media print{&{border:.1px solid var(--color-base-300)}}}}& :where(hr){background-color:var(--color-base-300);height:.25rem}&:has(.timeline-middle hr){&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}&:not(:has(.timeline-middle)){& :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}& :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}.sm\:timeline-box{border:var(--border)solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.sm\:timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.sm\:timeline-middle{grid-row-start:2;grid-column-start:2}.sm\:timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.sm\:timeline-compact{--timeline-row-start:0;& .timeline-start{grid-area:3/1/4/4;place-self:flex-start center}& li:has(.timeline-start){& .timeline-end{grid-row-start:auto;grid-column-start:none}}&.timeline-vertical{&>li{--timeline-col-start:0}& .timeline-start{grid-area:1/3/4/4;place-self:center flex-start}& li:has(.timeline-start){& .timeline-end{grid-row-start:none;grid-column-start:auto}}}}.sm\:timeline-snap-icon{&>li{--timeline-col-start:.5rem;--timeline-row-start:minmax(0,1fr)}}.sm\:timeline-vertical{flex-direction:column;&>li{--timeline-row-start:minmax(0,1fr);--timeline-row-end:minmax(0,1fr);justify-items:center;&>hr{width:.25rem;height:100%;&:first-child{grid-row-start:1;grid-column-start:2}&:last-child{grid-area:3/2/none}}}& .timeline-start{grid-area:1/1/4/2;place-self:center flex-end}& .timeline-end{grid-area:1/3/4/4;place-self:center flex-start}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}&:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}& :last-child{&>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}}}&.timeline-snap-icon{&>li{--timeline-col-start:minmax(0,1fr);--timeline-row-start:.5rem}}}.sm\:timeline-horizontal{flex-direction:row;&>li{align-items:center;&>hr{width:100%;height:.25rem;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}}}& .timeline-start{grid-area:1/1/2/4;place-self:flex-end center}& .timeline-end{grid-area:3/1/4/4;place-self:flex-start center}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}& :last-child{&>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}}}@media (width>=768px){.md\:timeline{display:flex;position:relative;&>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative;&>hr{border:none;width:100%;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}@media print{&{border:.1px solid var(--color-base-300)}}}}& :where(hr){background-color:var(--color-base-300);height:.25rem}&:has(.timeline-middle hr){&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}&:not(:has(.timeline-middle)){& :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}& :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}.md\:timeline-box{border:var(--border)solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.md\:timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.md\:timeline-middle{grid-row-start:2;grid-column-start:2}.md\:timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.md\:timeline-compact{--timeline-row-start:0;& .timeline-start{grid-area:3/1/4/4;place-self:flex-start center}& li:has(.timeline-start){& .timeline-end{grid-row-start:auto;grid-column-start:none}}&.timeline-vertical{&>li{--timeline-col-start:0}& .timeline-start{grid-area:1/3/4/4;place-self:center flex-start}& li:has(.timeline-start){& .timeline-end{grid-row-start:none;grid-column-start:auto}}}}.md\:timeline-snap-icon{&>li{--timeline-col-start:.5rem;--timeline-row-start:minmax(0,1fr)}}.md\:timeline-vertical{flex-direction:column;&>li{--timeline-row-start:minmax(0,1fr);--timeline-row-end:minmax(0,1fr);justify-items:center;&>hr{width:.25rem;height:100%;&:first-child{grid-row-start:1;grid-column-start:2}&:last-child{grid-area:3/2/none}}}& .timeline-start{grid-area:1/1/4/2;place-self:center flex-end}& .timeline-end{grid-area:1/3/4/4;place-self:center flex-start}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}&:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}& :last-child{&>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}}}&.timeline-snap-icon{&>li{--timeline-col-start:minmax(0,1fr);--timeline-row-start:.5rem}}}.md\:timeline-horizontal{flex-direction:row;&>li{align-items:center;&>hr{width:100%;height:.25rem;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}}}& .timeline-start{grid-area:1/1/2/4;place-self:flex-end center}& .timeline-end{grid-area:3/1/4/4;place-self:flex-start center}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}& :last-child{&>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}}}@media (width>=1024px){.lg\:timeline{display:flex;position:relative;&>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative;&>hr{border:none;width:100%;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}@media print{&{border:.1px solid var(--color-base-300)}}}}& :where(hr){background-color:var(--color-base-300);height:.25rem}&:has(.timeline-middle hr){&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}&:not(:has(.timeline-middle)){& :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}& :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}.lg\:timeline-box{border:var(--border)solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.lg\:timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.lg\:timeline-middle{grid-row-start:2;grid-column-start:2}.lg\:timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.lg\:timeline-compact{--timeline-row-start:0;& .timeline-start{grid-area:3/1/4/4;place-self:flex-start center}& li:has(.timeline-start){& .timeline-end{grid-row-start:auto;grid-column-start:none}}&.timeline-vertical{&>li{--timeline-col-start:0}& .timeline-start{grid-area:1/3/4/4;place-self:center flex-start}& li:has(.timeline-start){& .timeline-end{grid-row-start:none;grid-column-start:auto}}}}.lg\:timeline-snap-icon{&>li{--timeline-col-start:.5rem;--timeline-row-start:minmax(0,1fr)}}.lg\:timeline-vertical{flex-direction:column;&>li{--timeline-row-start:minmax(0,1fr);--timeline-row-end:minmax(0,1fr);justify-items:center;&>hr{width:.25rem;height:100%;&:first-child{grid-row-start:1;grid-column-start:2}&:last-child{grid-area:3/2/none}}}& .timeline-start{grid-area:1/1/4/2;place-self:center flex-end}& .timeline-end{grid-area:1/3/4/4;place-self:center flex-start}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}&:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}& :last-child{&>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}}}&.timeline-snap-icon{&>li{--timeline-col-start:minmax(0,1fr);--timeline-row-start:.5rem}}}.lg\:timeline-horizontal{flex-direction:row;&>li{align-items:center;&>hr{width:100%;height:.25rem;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}}}& .timeline-start{grid-area:1/1/2/4;place-self:flex-end center}& .timeline-end{grid-area:3/1/4/4;place-self:flex-start center}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}& :last-child{&>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}}}@media (width>=1280px){.xl\:timeline{display:flex;position:relative;&>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative;&>hr{border:none;width:100%;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}@media print{&{border:.1px solid var(--color-base-300)}}}}& :where(hr){background-color:var(--color-base-300);height:.25rem}&:has(.timeline-middle hr){&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}&:not(:has(.timeline-middle)){& :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}& :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}.xl\:timeline-box{border:var(--border)solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.xl\:timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.xl\:timeline-middle{grid-row-start:2;grid-column-start:2}.xl\:timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.xl\:timeline-compact{--timeline-row-start:0;& .timeline-start{grid-area:3/1/4/4;place-self:flex-start center}& li:has(.timeline-start){& .timeline-end{grid-row-start:auto;grid-column-start:none}}&.timeline-vertical{&>li{--timeline-col-start:0}& .timeline-start{grid-area:1/3/4/4;place-self:center flex-start}& li:has(.timeline-start){& .timeline-end{grid-row-start:none;grid-column-start:auto}}}}.xl\:timeline-snap-icon{&>li{--timeline-col-start:.5rem;--timeline-row-start:minmax(0,1fr)}}.xl\:timeline-vertical{flex-direction:column;&>li{--timeline-row-start:minmax(0,1fr);--timeline-row-end:minmax(0,1fr);justify-items:center;&>hr{width:.25rem;height:100%;&:first-child{grid-row-start:1;grid-column-start:2}&:last-child{grid-area:3/2/none}}}& .timeline-start{grid-area:1/1/4/2;place-self:center flex-end}& .timeline-end{grid-area:1/3/4/4;place-self:center flex-start}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}&:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}& :last-child{&>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}}}&.timeline-snap-icon{&>li{--timeline-col-start:minmax(0,1fr);--timeline-row-start:.5rem}}}.xl\:timeline-horizontal{flex-direction:row;&>li{align-items:center;&>hr{width:100%;height:.25rem;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}}}& .timeline-start{grid-area:1/1/2/4;place-self:flex-end center}& .timeline-end{grid-area:3/1/4/4;place-self:flex-start center}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}& :last-child{&>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}}}@media (width>=1536px){.\32 xl\:timeline{display:flex;position:relative;&>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative;&>hr{border:none;width:100%;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}@media print{&{border:.1px solid var(--color-base-300)}}}}& :where(hr){background-color:var(--color-base-300);height:.25rem}&:has(.timeline-middle hr){&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}&:not(:has(.timeline-middle)){& :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}& :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}.\32 xl\:timeline-box{border:var(--border)solid;border-radius:var(--radius-box);border-color:var(--color-base-300);background-color:var(--color-base-100);padding-block:.5rem;padding-inline:1rem;font-size:.75rem;box-shadow:0 1px 2px oklch(0% 0 0/.05)}.\32 xl\:timeline-start{grid-area:1/1/2/4;place-self:flex-end center;margin:.25rem}.\32 xl\:timeline-middle{grid-row-start:2;grid-column-start:2}.\32 xl\:timeline-end{grid-area:3/1/4/4;place-self:flex-start center;margin:.25rem}.\32 xl\:timeline-compact{--timeline-row-start:0;& .timeline-start{grid-area:3/1/4/4;place-self:flex-start center}& li:has(.timeline-start){& .timeline-end{grid-row-start:auto;grid-column-start:none}}&.timeline-vertical{&>li{--timeline-col-start:0}& .timeline-start{grid-area:1/3/4/4;place-self:center flex-start}& li:has(.timeline-start){& .timeline-end{grid-row-start:none;grid-column-start:auto}}}}.\32 xl\:timeline-snap-icon{&>li{--timeline-col-start:.5rem;--timeline-row-start:minmax(0,1fr)}}.\32 xl\:timeline-vertical{flex-direction:column;&>li{--timeline-row-start:minmax(0,1fr);--timeline-row-end:minmax(0,1fr);justify-items:center;&>hr{width:.25rem;height:100%;&:first-child{grid-row-start:1;grid-column-start:2}&:last-child{grid-area:3/2/none}}}& .timeline-start{grid-area:1/1/4/2;place-self:center flex-end}& .timeline-end{grid-area:1/3/4/4;place-self:center flex-start}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}&:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector);border-bottom-right-radius:0;border-bottom-left-radius:0}}& :last-child{&>hr:first-child{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}}}&.timeline-snap-icon{&>li{--timeline-col-start:minmax(0,1fr);--timeline-row-start:.5rem}}}.\32 xl\:timeline-horizontal{flex-direction:row;&>li{align-items:center;&>hr{width:100%;height:.25rem;&:first-child{grid-row-start:2;grid-column-start:1}&:last-child{grid-area:2/3/auto/none}}}& .timeline-start{grid-area:1/1/2/4;place-self:flex-end center}& .timeline-end{grid-area:3/1/4/4;place-self:flex-start center}&:has(.timeline-middle){&>li{&>hr{&:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}&:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}}}&:not(:has(.timeline-middle)){& :first-child{&>hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}}& :last-child{&>hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}}}}}.select{border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;text-overflow:ellipsis;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;border-color:var(--input-color);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);--size:calc(var(--size-field,.25rem)*10);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:1rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;[dir=rtl] &{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}& select{appearance:none;background:inherit;border-radius:inherit;border-style:none;width:calc(100% + 2.75rem);height:calc(100% - 2px);margin-inline:-1rem -1.75rem;padding-inline:1rem 1.75rem;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:not(:last-child){background-image:none;margin-inline-end:-1.375rem}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>select[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>select[disabled])>select[disabled]{cursor:not-allowed}}.select-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.select-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.select-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.select-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.select-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.select-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.select-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.select-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.select-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.select-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem}.select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.select-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem}@media (width>=640px){.sm\:select{border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;text-overflow:ellipsis;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;border-color:var(--input-color);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);--size:calc(var(--size-field,.25rem)*10);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:1rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;[dir=rtl] &{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}& select{appearance:none;background:inherit;border-radius:inherit;border-style:none;width:calc(100% + 2.75rem);height:calc(100% - 2px);margin-inline:-1rem -1.75rem;padding-inline:1rem 1.75rem;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:not(:last-child){background-image:none;margin-inline-end:-1.375rem}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>select[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>select[disabled])>select[disabled]{cursor:not-allowed}}.sm\:select-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.sm\:select-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.sm\:select-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.sm\:select-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.sm\:select-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.sm\:select-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.sm\:select-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.sm\:select-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.sm\:select-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.sm\:select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.sm\:select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.sm\:select-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem}.sm\:select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.sm\:select-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem}}@media (width>=768px){.md\:select{border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;text-overflow:ellipsis;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;border-color:var(--input-color);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);--size:calc(var(--size-field,.25rem)*10);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:1rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;[dir=rtl] &{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}& select{appearance:none;background:inherit;border-radius:inherit;border-style:none;width:calc(100% + 2.75rem);height:calc(100% - 2px);margin-inline:-1rem -1.75rem;padding-inline:1rem 1.75rem;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:not(:last-child){background-image:none;margin-inline-end:-1.375rem}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>select[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>select[disabled])>select[disabled]{cursor:not-allowed}}.md\:select-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.md\:select-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.md\:select-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.md\:select-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.md\:select-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.md\:select-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.md\:select-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.md\:select-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.md\:select-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.md\:select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.md\:select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.md\:select-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem}.md\:select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.md\:select-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem}}@media (width>=1024px){.lg\:select{border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;text-overflow:ellipsis;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;border-color:var(--input-color);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);--size:calc(var(--size-field,.25rem)*10);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:1rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;[dir=rtl] &{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}& select{appearance:none;background:inherit;border-radius:inherit;border-style:none;width:calc(100% + 2.75rem);height:calc(100% - 2px);margin-inline:-1rem -1.75rem;padding-inline:1rem 1.75rem;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:not(:last-child){background-image:none;margin-inline-end:-1.375rem}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>select[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>select[disabled])>select[disabled]{cursor:not-allowed}}.lg\:select-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.lg\:select-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.lg\:select-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.lg\:select-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.lg\:select-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.lg\:select-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.lg\:select-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.lg\:select-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.lg\:select-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.lg\:select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.lg\:select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.lg\:select-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem}.lg\:select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.lg\:select-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem}}@media (width>=1280px){.xl\:select{border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;text-overflow:ellipsis;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;border-color:var(--input-color);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);--size:calc(var(--size-field,.25rem)*10);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:1rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;[dir=rtl] &{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}& select{appearance:none;background:inherit;border-radius:inherit;border-style:none;width:calc(100% + 2.75rem);height:calc(100% - 2px);margin-inline:-1rem -1.75rem;padding-inline:1rem 1.75rem;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:not(:last-child){background-image:none;margin-inline-end:-1.375rem}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>select[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>select[disabled])>select[disabled]{cursor:not-allowed}}.xl\:select-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.xl\:select-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.xl\:select-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.xl\:select-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.xl\:select-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.xl\:select-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.xl\:select-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.xl\:select-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.xl\:select-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.xl\:select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.xl\:select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.xl\:select-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem}.xl\:select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.xl\:select-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem}}@media (width>=1536px){.\32 xl\:select{border:var(--border)solid #0000;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;text-overflow:ellipsis;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;border-color:var(--input-color);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);--size:calc(var(--size-field,.25rem)*10);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:1rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;[dir=rtl] &{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}& select{appearance:none;background:inherit;border-radius:inherit;border-style:none;width:calc(100% + 2.75rem);height:calc(100% - 2px);margin-inline:-1rem -1.75rem;padding-inline:1rem 1.75rem;&:focus,&:focus-within{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){&{outline-offset:2px;outline:2px solid #0000}}}&:not(:last-child){background-image:none;margin-inline-end:-1.375rem}}&:focus,&:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate;z-index:1}&:has(>select[disabled]),&:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);&::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}&:has(>select[disabled])>select[disabled]{cursor:not-allowed}}.\32 xl\:select-ghost{box-shadow:none;background-color:#0000;border-color:#0000;transition:background-color .2s;&:focus,&:focus-within{background-color:var(--color-base-100);color:var(--color-base-content);box-shadow:none;border-color:#0000}}.\32 xl\:select-neutral{&,&:focus,&:focus-within{--input-color:var(--color-neutral)}}.\32 xl\:select-primary{&,&:focus,&:focus-within{--input-color:var(--color-primary)}}.\32 xl\:select-secondary{&,&:focus,&:focus-within{--input-color:var(--color-secondary)}}.\32 xl\:select-accent{&,&:focus,&:focus-within{--input-color:var(--color-accent)}}.\32 xl\:select-info{&,&:focus,&:focus-within{--input-color:var(--color-info)}}.\32 xl\:select-success{&,&:focus,&:focus-within{--input-color:var(--color-success)}}.\32 xl\:select-warning{&,&:focus,&:focus-within{--input-color:var(--color-warning)}}.\32 xl\:select-error{&,&:focus,&:focus-within{--input-color:var(--color-error)}}.\32 xl\:select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.\32 xl\:select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.\32 xl\:select-md{--size:calc(var(--size-field,.25rem)*10);font-size:.875rem}.\32 xl\:select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.\32 xl\:select-xl{--size:calc(var(--size-field,.25rem)*14);font-size:1.375rem}}.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:translate .3s ease-out,visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:hidden;&::backdrop{display:none}&.modal-open,&[open],&:target{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&.modal-open,&[open],&:target{visibility:hidden;opacity:0}}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.modal-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&:checked+.modal{visibility:hidden;opacity:0}}}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid;& button{cursor:pointer}}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.modal-top{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 -100%;scale:1}}.modal-middle{place-items:center;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:91.6667%;max-width:32rem;height:auto;max-height:calc(100vh - 5em);translate:0 2%;scale:98%}}.modal-bottom{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}}.modal-start{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:var(--radius-box);width:auto;max-width:none;height:100vh;max-height:none;translate:-100%;scale:1}}.modal-end{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:0;width:auto;max-width:none;height:100vh;max-height:none;translate:100%;scale:1}}@media (width>=640px){.sm\:modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:translate .3s ease-out,visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:hidden;&::backdrop{display:none}&.modal-open,&[open],&:target{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&.modal-open,&[open],&:target{visibility:hidden;opacity:0}}}.sm\:modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.sm\:modal-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&:checked+.modal{visibility:hidden;opacity:0}}}.sm\:modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid;& button{cursor:pointer}}.sm\:modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.sm\:modal-top{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 -100%;scale:1}}.sm\:modal-middle{place-items:center;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:91.6667%;max-width:32rem;height:auto;max-height:calc(100vh - 5em);translate:0 2%;scale:98%}}.sm\:modal-bottom{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}}.sm\:modal-start{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:var(--radius-box);width:auto;max-width:none;height:100vh;max-height:none;translate:-100%;scale:1}}.sm\:modal-end{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:0;width:auto;max-width:none;height:100vh;max-height:none;translate:100%;scale:1}}}@media (width>=768px){.md\:modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:translate .3s ease-out,visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:hidden;&::backdrop{display:none}&.modal-open,&[open],&:target{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&.modal-open,&[open],&:target{visibility:hidden;opacity:0}}}.md\:modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.md\:modal-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&:checked+.modal{visibility:hidden;opacity:0}}}.md\:modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid;& button{cursor:pointer}}.md\:modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.md\:modal-top{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 -100%;scale:1}}.md\:modal-middle{place-items:center;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:91.6667%;max-width:32rem;height:auto;max-height:calc(100vh - 5em);translate:0 2%;scale:98%}}.md\:modal-bottom{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}}.md\:modal-start{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:var(--radius-box);width:auto;max-width:none;height:100vh;max-height:none;translate:-100%;scale:1}}.md\:modal-end{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:0;width:auto;max-width:none;height:100vh;max-height:none;translate:100%;scale:1}}}@media (width>=1024px){.lg\:modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:translate .3s ease-out,visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:hidden;&::backdrop{display:none}&.modal-open,&[open],&:target{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&.modal-open,&[open],&:target{visibility:hidden;opacity:0}}}.lg\:modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.lg\:modal-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&:checked+.modal{visibility:hidden;opacity:0}}}.lg\:modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid;& button{cursor:pointer}}.lg\:modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.lg\:modal-top{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 -100%;scale:1}}.lg\:modal-middle{place-items:center;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:91.6667%;max-width:32rem;height:auto;max-height:calc(100vh - 5em);translate:0 2%;scale:98%}}.lg\:modal-bottom{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}}.lg\:modal-start{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:var(--radius-box);width:auto;max-width:none;height:100vh;max-height:none;translate:-100%;scale:1}}.lg\:modal-end{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:0;width:auto;max-width:none;height:100vh;max-height:none;translate:100%;scale:1}}}@media (width>=1280px){.xl\:modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:translate .3s ease-out,visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:hidden;&::backdrop{display:none}&.modal-open,&[open],&:target{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&.modal-open,&[open],&:target{visibility:hidden;opacity:0}}}.xl\:modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.xl\:modal-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&:checked+.modal{visibility:hidden;opacity:0}}}.xl\:modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid;& button{cursor:pointer}}.xl\:modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.xl\:modal-top{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 -100%;scale:1}}.xl\:modal-middle{place-items:center;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:91.6667%;max-width:32rem;height:auto;max-height:calc(100vh - 5em);translate:0 2%;scale:98%}}.xl\:modal-bottom{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}}.xl\:modal-start{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:var(--radius-box);width:auto;max-width:none;height:100vh;max-height:none;translate:-100%;scale:1}}.xl\:modal-end{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:0;width:auto;max-width:none;height:100vh;max-height:none;translate:100%;scale:1}}}@media (width>=1536px){.\32 xl\:modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:translate .3s ease-out,visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:hidden;&::backdrop{display:none}&.modal-open,&[open],&:target{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&.modal-open,&[open],&:target{visibility:hidden;opacity:0}}}.\32 xl\:modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.\32 xl\:modal-toggle{appearance:none;opacity:0;width:0;height:0;position:fixed;&:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;background-color:oklch(0% 0 0/.4);& .modal-box{opacity:1;translate:0;scale:1}}@starting-style{&:checked+.modal{visibility:hidden;opacity:0}}}.\32 xl\:modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid;& button{cursor:pointer}}.\32 xl\:modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.\32 xl\:modal-top{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 -100%;scale:1}}.\32 xl\:modal-middle{place-items:center;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:91.6667%;max-width:32rem;height:auto;max-height:calc(100vh - 5em);translate:0 2%;scale:98%}}.\32 xl\:modal-bottom{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}}.\32 xl\:modal-start{place-items:start;& :where(.modal-box){--modal-tl:0;--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:var(--radius-box);width:auto;max-width:none;height:100vh;max-height:none;translate:-100%;scale:1}}.\32 xl\:modal-end{place-items:end;& :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:0;--modal-bl:var(--radius-box);--modal-br:0;width:auto;max-width:none;height:100vh;max-height:none;translate:100%;scale:1}}}.countdown{display:inline-flex;&.countdown{line-height:1em}&>*{height:1em;display:inline-block;overflow-y:hidden;&:before{content:"00\a 01\a 02\a 03\a 04\a 05\a 06\a 07\a 08\a 09\a 10\a 11\a 12\a 13\a 14\a 15\a 16\a 17\a 18\a 19\a 20\a 21\a 22\a 23\a 24\a 25\a 26\a 27\a 28\a 29\a 30\a 31\a 32\a 33\a 34\a 35\a 36\a 37\a 38\a 39\a 40\a 41\a 42\a 43\a 44\a 45\a 46\a 47\a 48\a 49\a 50\a 51\a 52\a 53\a 54\a 55\a 56\a 57\a 58\a 59\a 60\a 61\a 62\a 63\a 64\a 65\a 66\a 67\a 68\a 69\a 70\a 71\a 72\a 73\a 74\a 75\a 76\a 77\a 78\a 79\a 80\a 81\a 82\a 83\a 84\a 85\a 86\a 87\a 88\a 89\a 90\a 91\a 92\a 93\a 94\a 95\a 96\a 97\a 98\a 99\a ";white-space:pre;top:calc(var(--value)*-1em);text-align:center;transition:all 1s cubic-bezier(1,0,0,1);position:relative}}}.glass{backdrop-filter:blur(var(--glass-blur,40px));background-color:#0000;background-image:linear-gradient(135deg,oklch(100% 0 0/var(--glass-opacity,30%))0%,oklch(0% 0 0/0) 100%),linear-gradient(var(--glass-reflect-degree,100deg),oklch(100% 0 0/var(--glass-reflect-opacity,5%))25%,oklch(0% 0 0/0) 25%);box-shadow:0 0 0 1px oklch(100% 0 0/var(--glass-border-opacity,20%))inset,0 0 0 2px oklch(0% 0 0/.05);text-shadow:0 1px oklch(0% 0 0/var(--glass-text-shadow-opacity,5%));border:none}:root .prose{--tw-prose-body:color-mix(in oklab,var(--color-base-content)80%,#0000);--tw-prose-headings:var(--color-base-content);--tw-prose-lead:var(--color-base-content);--tw-prose-links:var(--color-base-content);--tw-prose-bold:var(--color-base-content);--tw-prose-counters:var(--color-base-content);--tw-prose-bullets:color-mix(in oklab,var(--color-base-content)50%,#0000);--tw-prose-hr:color-mix(in oklab,var(--color-base-content)20%,#0000);--tw-prose-quotes:var(--color-base-content);--tw-prose-quote-borders:color-mix(in oklab,var(--color-base-content)20%,#0000);--tw-prose-captions:color-mix(in oklab,var(--color-base-content)50%,#0000);--tw-prose-code:var(--color-base-content);--tw-prose-pre-code:var(--color-neutral-content);--tw-prose-pre-bg:var(--color-neutral);--tw-prose-th-borders:color-mix(in oklab,var(--color-base-content)50%,#0000);--tw-prose-td-borders:color-mix(in oklab,var(--color-base-content)20%,#0000);--tw-prose-kbd:color-mix(in oklab,var(--color-base-content)80%,#0000);& :where(code):not(pre>code){background-color:var(--color-base-200);border-radius:var(--radius-selector);border:var(--border)solid var(--color-base-300);font-weight:inherit;padding-inline:.5em;&:before,&:after{display:none}}}.join{--join-ss:0;--join-se:0;--join-es:0;--join-ee:0;align-items:stretch;display:inline-flex;& :where(.join-item){border-start-start-radius:var(--join-ss,0);border-start-end-radius:var(--join-se,0);border-end-end-radius:var(--join-ee,0);border-end-start-radius:var(--join-es,0);& *{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:where(:first-child){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& :where(.join-item){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:where(:last-child){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& :where(.join-item){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:where(:only-child){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& :where(.join-item){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}}.join-item{&:where(:not(:first-child,:disabled,[disabled],.btn-disabled)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}&:where(:is(:disabled,[disabled],.btn-disabled)){border-width:var(--border,1px)0 var(--border,1px)var(--border,1px)}}.join-vertical{flex-direction:column;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:calc(var(--border,1px)*-1);margin-inline-start:0}}}.join-horizontal{flex-direction:row;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}}}@media (width>=640px){.sm\:join{--join-ss:0;--join-se:0;--join-es:0;--join-ee:0;align-items:stretch;display:inline-flex;& :where(.join-item){border-start-start-radius:var(--join-ss,0);border-start-end-radius:var(--join-se,0);border-end-end-radius:var(--join-ee,0);border-end-start-radius:var(--join-es,0);& *{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:where(:first-child){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& :where(.join-item){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:where(:last-child){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& :where(.join-item){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:where(:only-child){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& :where(.join-item){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}}.sm\:join-item{&:where(:not(:first-child,:disabled,[disabled],.btn-disabled)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}&:where(:is(:disabled,[disabled],.btn-disabled)){border-width:var(--border,1px)0 var(--border,1px)var(--border,1px)}}.sm\:join-vertical{flex-direction:column;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:calc(var(--border,1px)*-1);margin-inline-start:0}}}.sm\:join-horizontal{flex-direction:row;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}}}}@media (width>=768px){.md\:join{--join-ss:0;--join-se:0;--join-es:0;--join-ee:0;align-items:stretch;display:inline-flex;& :where(.join-item){border-start-start-radius:var(--join-ss,0);border-start-end-radius:var(--join-se,0);border-end-end-radius:var(--join-ee,0);border-end-start-radius:var(--join-es,0);& *{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:where(:first-child){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& :where(.join-item){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:where(:last-child){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& :where(.join-item){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:where(:only-child){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& :where(.join-item){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}}.md\:join-item{&:where(:not(:first-child,:disabled,[disabled],.btn-disabled)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}&:where(:is(:disabled,[disabled],.btn-disabled)){border-width:var(--border,1px)0 var(--border,1px)var(--border,1px)}}.md\:join-vertical{flex-direction:column;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:calc(var(--border,1px)*-1);margin-inline-start:0}}}.md\:join-horizontal{flex-direction:row;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}}}}@media (width>=1024px){.lg\:join{--join-ss:0;--join-se:0;--join-es:0;--join-ee:0;align-items:stretch;display:inline-flex;& :where(.join-item){border-start-start-radius:var(--join-ss,0);border-start-end-radius:var(--join-se,0);border-end-end-radius:var(--join-ee,0);border-end-start-radius:var(--join-es,0);& *{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:where(:first-child){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& :where(.join-item){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:where(:last-child){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& :where(.join-item){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:where(:only-child){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& :where(.join-item){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}}.lg\:join-item{&:where(:not(:first-child,:disabled,[disabled],.btn-disabled)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}&:where(:is(:disabled,[disabled],.btn-disabled)){border-width:var(--border,1px)0 var(--border,1px)var(--border,1px)}}.lg\:join-vertical{flex-direction:column;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:calc(var(--border,1px)*-1);margin-inline-start:0}}}.lg\:join-horizontal{flex-direction:row;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}}}}@media (width>=1280px){.xl\:join{--join-ss:0;--join-se:0;--join-es:0;--join-ee:0;align-items:stretch;display:inline-flex;& :where(.join-item){border-start-start-radius:var(--join-ss,0);border-start-end-radius:var(--join-se,0);border-end-end-radius:var(--join-ee,0);border-end-start-radius:var(--join-es,0);& *{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:where(:first-child){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& :where(.join-item){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:where(:last-child){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& :where(.join-item){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:where(:only-child){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& :where(.join-item){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}}.xl\:join-item{&:where(:not(:first-child,:disabled,[disabled],.btn-disabled)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}&:where(:is(:disabled,[disabled],.btn-disabled)){border-width:var(--border,1px)0 var(--border,1px)var(--border,1px)}}.xl\:join-vertical{flex-direction:column;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:calc(var(--border,1px)*-1);margin-inline-start:0}}}.xl\:join-horizontal{flex-direction:row;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}}}}@media (width>=1536px){.\32 xl\:join{--join-ss:0;--join-se:0;--join-es:0;--join-ee:0;align-items:stretch;display:inline-flex;& :where(.join-item){border-start-start-radius:var(--join-ss,0);border-start-end-radius:var(--join-se,0);border-end-end-radius:var(--join-ee,0);border-end-start-radius:var(--join-es,0);& *{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:where(:first-child){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& :where(.join-item){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:where(:last-child){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& :where(.join-item){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:where(:only-child){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& :where(.join-item){--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}}.\32 xl\:join-item{&:where(:not(:first-child,:disabled,[disabled],.btn-disabled)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}&:where(:is(:disabled,[disabled],.btn-disabled)){border-width:var(--border,1px)0 var(--border,1px)var(--border,1px)}}.\32 xl\:join-vertical{flex-direction:column;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:0;--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:0;--join-es:var(--radius-field);--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:calc(var(--border,1px)*-1);margin-inline-start:0}}}.\32 xl\:join-horizontal{flex-direction:row;&>.join-item:first-child{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}& :first-child:not(:last-child){& .join-item{--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}}&>.join-item:last-child{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}& :last-child:not(:first-child){& .join-item{--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}}&>.join-item:only-child{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}& :only-child{& .join-item{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}}& .join-item{&:where(:not(:first-child)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}}}}.rounded-box{border-radius:var(--radius-box)}.rounded-field{border-radius:var(--radius-field)}.rounded-selector{border-radius:var(--radius-selector)}.rounded-t-box{border-top-left-radius:var(--radius-box);border-top-right-radius:var(--radius-box)}.rounded-b-box{border-bottom-left-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.rounded-l-box{border-top-left-radius:var(--radius-box);border-bottom-left-radius:var(--radius-box)}.rounded-r-box{border-top-right-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.rounded-tl-box{border-top-left-radius:var(--radius-box)}.rounded-tr-box{border-top-right-radius:var(--radius-box)}.rounded-br-box{border-bottom-right-radius:var(--radius-box)}.rounded-bl-box{border-bottom-left-radius:var(--radius-box)}.rounded-t-field{border-top-left-radius:var(--radius-field);border-top-right-radius:var(--radius-field)}.rounded-b-field{border-bottom-left-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.rounded-l-field{border-top-left-radius:var(--radius-field);border-bottom-left-radius:var(--radius-field)}.rounded-r-field{border-top-right-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.rounded-tl-field{border-top-left-radius:var(--radius-field)}.rounded-tr-field{border-top-right-radius:var(--radius-field)}.rounded-br-field{border-bottom-right-radius:var(--radius-field)}.rounded-bl-field{border-bottom-left-radius:var(--radius-field)}.rounded-t-selector{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector)}.rounded-b-selector{border-bottom-left-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.rounded-l-selector{border-top-left-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.rounded-r-selector{border-top-right-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.rounded-tl-selector{border-top-left-radius:var(--radius-selector)}.rounded-tr-selector{border-top-right-radius:var(--radius-selector)}.rounded-br-selector{border-bottom-right-radius:var(--radius-selector)}.rounded-bl-selector{border-bottom-left-radius:var(--radius-selector)}@media (width>=640px){.sm\:rounded-box{border-radius:var(--radius-box)}.sm\:rounded-field{border-radius:var(--radius-field)}.sm\:rounded-selector{border-radius:var(--radius-selector)}.sm\:rounded-t-box{border-top-left-radius:var(--radius-box);border-top-right-radius:var(--radius-box)}.sm\:rounded-b-box{border-bottom-left-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.sm\:rounded-l-box{border-top-left-radius:var(--radius-box);border-bottom-left-radius:var(--radius-box)}.sm\:rounded-r-box{border-top-right-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.sm\:rounded-tl-box{border-top-left-radius:var(--radius-box)}.sm\:rounded-tr-box{border-top-right-radius:var(--radius-box)}.sm\:rounded-br-box{border-bottom-right-radius:var(--radius-box)}.sm\:rounded-bl-box{border-bottom-left-radius:var(--radius-box)}.sm\:rounded-t-field{border-top-left-radius:var(--radius-field);border-top-right-radius:var(--radius-field)}.sm\:rounded-b-field{border-bottom-left-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.sm\:rounded-l-field{border-top-left-radius:var(--radius-field);border-bottom-left-radius:var(--radius-field)}.sm\:rounded-r-field{border-top-right-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.sm\:rounded-tl-field{border-top-left-radius:var(--radius-field)}.sm\:rounded-tr-field{border-top-right-radius:var(--radius-field)}.sm\:rounded-br-field{border-bottom-right-radius:var(--radius-field)}.sm\:rounded-bl-field{border-bottom-left-radius:var(--radius-field)}.sm\:rounded-t-selector{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector)}.sm\:rounded-b-selector{border-bottom-left-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.sm\:rounded-l-selector{border-top-left-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.sm\:rounded-r-selector{border-top-right-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.sm\:rounded-tl-selector{border-top-left-radius:var(--radius-selector)}.sm\:rounded-tr-selector{border-top-right-radius:var(--radius-selector)}.sm\:rounded-br-selector{border-bottom-right-radius:var(--radius-selector)}.sm\:rounded-bl-selector{border-bottom-left-radius:var(--radius-selector)}}@media (width>=768px){.md\:rounded-box{border-radius:var(--radius-box)}.md\:rounded-field{border-radius:var(--radius-field)}.md\:rounded-selector{border-radius:var(--radius-selector)}.md\:rounded-t-box{border-top-left-radius:var(--radius-box);border-top-right-radius:var(--radius-box)}.md\:rounded-b-box{border-bottom-left-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.md\:rounded-l-box{border-top-left-radius:var(--radius-box);border-bottom-left-radius:var(--radius-box)}.md\:rounded-r-box{border-top-right-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.md\:rounded-tl-box{border-top-left-radius:var(--radius-box)}.md\:rounded-tr-box{border-top-right-radius:var(--radius-box)}.md\:rounded-br-box{border-bottom-right-radius:var(--radius-box)}.md\:rounded-bl-box{border-bottom-left-radius:var(--radius-box)}.md\:rounded-t-field{border-top-left-radius:var(--radius-field);border-top-right-radius:var(--radius-field)}.md\:rounded-b-field{border-bottom-left-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.md\:rounded-l-field{border-top-left-radius:var(--radius-field);border-bottom-left-radius:var(--radius-field)}.md\:rounded-r-field{border-top-right-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.md\:rounded-tl-field{border-top-left-radius:var(--radius-field)}.md\:rounded-tr-field{border-top-right-radius:var(--radius-field)}.md\:rounded-br-field{border-bottom-right-radius:var(--radius-field)}.md\:rounded-bl-field{border-bottom-left-radius:var(--radius-field)}.md\:rounded-t-selector{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector)}.md\:rounded-b-selector{border-bottom-left-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.md\:rounded-l-selector{border-top-left-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.md\:rounded-r-selector{border-top-right-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.md\:rounded-tl-selector{border-top-left-radius:var(--radius-selector)}.md\:rounded-tr-selector{border-top-right-radius:var(--radius-selector)}.md\:rounded-br-selector{border-bottom-right-radius:var(--radius-selector)}.md\:rounded-bl-selector{border-bottom-left-radius:var(--radius-selector)}}@media (width>=1024px){.lg\:rounded-box{border-radius:var(--radius-box)}.lg\:rounded-field{border-radius:var(--radius-field)}.lg\:rounded-selector{border-radius:var(--radius-selector)}.lg\:rounded-t-box{border-top-left-radius:var(--radius-box);border-top-right-radius:var(--radius-box)}.lg\:rounded-b-box{border-bottom-left-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.lg\:rounded-l-box{border-top-left-radius:var(--radius-box);border-bottom-left-radius:var(--radius-box)}.lg\:rounded-r-box{border-top-right-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.lg\:rounded-tl-box{border-top-left-radius:var(--radius-box)}.lg\:rounded-tr-box{border-top-right-radius:var(--radius-box)}.lg\:rounded-br-box{border-bottom-right-radius:var(--radius-box)}.lg\:rounded-bl-box{border-bottom-left-radius:var(--radius-box)}.lg\:rounded-t-field{border-top-left-radius:var(--radius-field);border-top-right-radius:var(--radius-field)}.lg\:rounded-b-field{border-bottom-left-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.lg\:rounded-l-field{border-top-left-radius:var(--radius-field);border-bottom-left-radius:var(--radius-field)}.lg\:rounded-r-field{border-top-right-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.lg\:rounded-tl-field{border-top-left-radius:var(--radius-field)}.lg\:rounded-tr-field{border-top-right-radius:var(--radius-field)}.lg\:rounded-br-field{border-bottom-right-radius:var(--radius-field)}.lg\:rounded-bl-field{border-bottom-left-radius:var(--radius-field)}.lg\:rounded-t-selector{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector)}.lg\:rounded-b-selector{border-bottom-left-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.lg\:rounded-l-selector{border-top-left-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.lg\:rounded-r-selector{border-top-right-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.lg\:rounded-tl-selector{border-top-left-radius:var(--radius-selector)}.lg\:rounded-tr-selector{border-top-right-radius:var(--radius-selector)}.lg\:rounded-br-selector{border-bottom-right-radius:var(--radius-selector)}.lg\:rounded-bl-selector{border-bottom-left-radius:var(--radius-selector)}}@media (width>=1280px){.xl\:rounded-box{border-radius:var(--radius-box)}.xl\:rounded-field{border-radius:var(--radius-field)}.xl\:rounded-selector{border-radius:var(--radius-selector)}.xl\:rounded-t-box{border-top-left-radius:var(--radius-box);border-top-right-radius:var(--radius-box)}.xl\:rounded-b-box{border-bottom-left-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.xl\:rounded-l-box{border-top-left-radius:var(--radius-box);border-bottom-left-radius:var(--radius-box)}.xl\:rounded-r-box{border-top-right-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.xl\:rounded-tl-box{border-top-left-radius:var(--radius-box)}.xl\:rounded-tr-box{border-top-right-radius:var(--radius-box)}.xl\:rounded-br-box{border-bottom-right-radius:var(--radius-box)}.xl\:rounded-bl-box{border-bottom-left-radius:var(--radius-box)}.xl\:rounded-t-field{border-top-left-radius:var(--radius-field);border-top-right-radius:var(--radius-field)}.xl\:rounded-b-field{border-bottom-left-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.xl\:rounded-l-field{border-top-left-radius:var(--radius-field);border-bottom-left-radius:var(--radius-field)}.xl\:rounded-r-field{border-top-right-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.xl\:rounded-tl-field{border-top-left-radius:var(--radius-field)}.xl\:rounded-tr-field{border-top-right-radius:var(--radius-field)}.xl\:rounded-br-field{border-bottom-right-radius:var(--radius-field)}.xl\:rounded-bl-field{border-bottom-left-radius:var(--radius-field)}.xl\:rounded-t-selector{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector)}.xl\:rounded-b-selector{border-bottom-left-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.xl\:rounded-l-selector{border-top-left-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.xl\:rounded-r-selector{border-top-right-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.xl\:rounded-tl-selector{border-top-left-radius:var(--radius-selector)}.xl\:rounded-tr-selector{border-top-right-radius:var(--radius-selector)}.xl\:rounded-br-selector{border-bottom-right-radius:var(--radius-selector)}.xl\:rounded-bl-selector{border-bottom-left-radius:var(--radius-selector)}}@media (width>=1536px){.\32 xl\:rounded-box{border-radius:var(--radius-box)}.\32 xl\:rounded-field{border-radius:var(--radius-field)}.\32 xl\:rounded-selector{border-radius:var(--radius-selector)}.\32 xl\:rounded-t-box{border-top-left-radius:var(--radius-box);border-top-right-radius:var(--radius-box)}.\32 xl\:rounded-b-box{border-bottom-left-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.\32 xl\:rounded-l-box{border-top-left-radius:var(--radius-box);border-bottom-left-radius:var(--radius-box)}.\32 xl\:rounded-r-box{border-top-right-radius:var(--radius-box);border-bottom-right-radius:var(--radius-box)}.\32 xl\:rounded-tl-box{border-top-left-radius:var(--radius-box)}.\32 xl\:rounded-tr-box{border-top-right-radius:var(--radius-box)}.\32 xl\:rounded-br-box{border-bottom-right-radius:var(--radius-box)}.\32 xl\:rounded-bl-box{border-bottom-left-radius:var(--radius-box)}.\32 xl\:rounded-t-field{border-top-left-radius:var(--radius-field);border-top-right-radius:var(--radius-field)}.\32 xl\:rounded-b-field{border-bottom-left-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.\32 xl\:rounded-l-field{border-top-left-radius:var(--radius-field);border-bottom-left-radius:var(--radius-field)}.\32 xl\:rounded-r-field{border-top-right-radius:var(--radius-field);border-bottom-right-radius:var(--radius-field)}.\32 xl\:rounded-tl-field{border-top-left-radius:var(--radius-field)}.\32 xl\:rounded-tr-field{border-top-right-radius:var(--radius-field)}.\32 xl\:rounded-br-field{border-bottom-right-radius:var(--radius-field)}.\32 xl\:rounded-bl-field{border-bottom-left-radius:var(--radius-field)}.\32 xl\:rounded-t-selector{border-top-left-radius:var(--radius-selector);border-top-right-radius:var(--radius-selector)}.\32 xl\:rounded-b-selector{border-bottom-left-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.\32 xl\:rounded-l-selector{border-top-left-radius:var(--radius-selector);border-bottom-left-radius:var(--radius-selector)}.\32 xl\:rounded-r-selector{border-top-right-radius:var(--radius-selector);border-bottom-right-radius:var(--radius-selector)}.\32 xl\:rounded-tl-selector{border-top-left-radius:var(--radius-selector)}.\32 xl\:rounded-tr-selector{border-top-right-radius:var(--radius-selector)}.\32 xl\:rounded-br-selector{border-bottom-right-radius:var(--radius-selector)}.\32 xl\:rounded-bl-selector{border-bottom-left-radius:var(--radius-selector)}}.bg-base-100{background-color:var(--color-base-100)}.bg-base-100\/10{background-color:color-mix(in oklab,var(--color-base-100)10%,#0000)}.bg-base-100\/20{background-color:color-mix(in oklab,var(--color-base-100)20%,#0000)}.bg-base-100\/30{background-color:color-mix(in oklab,var(--color-base-100)30%,#0000)}.bg-base-100\/40{background-color:color-mix(in oklab,var(--color-base-100)40%,#0000)}.bg-base-100\/50{background-color:color-mix(in oklab,var(--color-base-100)50%,#0000)}.bg-base-100\/60{background-color:color-mix(in oklab,var(--color-base-100)60%,#0000)}.bg-base-100\/70{background-color:color-mix(in oklab,var(--color-base-100)70%,#0000)}.bg-base-100\/80{background-color:color-mix(in oklab,var(--color-base-100)80%,#0000)}.bg-base-100\/90{background-color:color-mix(in oklab,var(--color-base-100)90%,#0000)}.text-base-100{color:var(--color-base-100)}.text-base-100\/10{color:color-mix(in oklab,var(--color-base-100)10%,#0000)}.text-base-100\/20{color:color-mix(in oklab,var(--color-base-100)20%,#0000)}.text-base-100\/30{color:color-mix(in oklab,var(--color-base-100)30%,#0000)}.text-base-100\/40{color:color-mix(in oklab,var(--color-base-100)40%,#0000)}.text-base-100\/50{color:color-mix(in oklab,var(--color-base-100)50%,#0000)}.text-base-100\/60{color:color-mix(in oklab,var(--color-base-100)60%,#0000)}.text-base-100\/70{color:color-mix(in oklab,var(--color-base-100)70%,#0000)}.text-base-100\/80{color:color-mix(in oklab,var(--color-base-100)80%,#0000)}.text-base-100\/90{color:color-mix(in oklab,var(--color-base-100)90%,#0000)}.border-base-100{border-color:var(--color-base-100)}.border-base-100\/10{border-color:color-mix(in oklab,var(--color-base-100)10%,#0000)}.border-base-100\/20{border-color:color-mix(in oklab,var(--color-base-100)20%,#0000)}.border-base-100\/30{border-color:color-mix(in oklab,var(--color-base-100)30%,#0000)}.border-base-100\/40{border-color:color-mix(in oklab,var(--color-base-100)40%,#0000)}.border-base-100\/50{border-color:color-mix(in oklab,var(--color-base-100)50%,#0000)}.border-base-100\/60{border-color:color-mix(in oklab,var(--color-base-100)60%,#0000)}.border-base-100\/70{border-color:color-mix(in oklab,var(--color-base-100)70%,#0000)}.border-base-100\/80{border-color:color-mix(in oklab,var(--color-base-100)80%,#0000)}.border-base-100\/90{border-color:color-mix(in oklab,var(--color-base-100)90%,#0000)}.bg-base-200{background-color:var(--color-base-200)}.bg-base-200\/10{background-color:color-mix(in oklab,var(--color-base-200)10%,#0000)}.bg-base-200\/20{background-color:color-mix(in oklab,var(--color-base-200)20%,#0000)}.bg-base-200\/30{background-color:color-mix(in oklab,var(--color-base-200)30%,#0000)}.bg-base-200\/40{background-color:color-mix(in oklab,var(--color-base-200)40%,#0000)}.bg-base-200\/50{background-color:color-mix(in oklab,var(--color-base-200)50%,#0000)}.bg-base-200\/60{background-color:color-mix(in oklab,var(--color-base-200)60%,#0000)}.bg-base-200\/70{background-color:color-mix(in oklab,var(--color-base-200)70%,#0000)}.bg-base-200\/80{background-color:color-mix(in oklab,var(--color-base-200)80%,#0000)}.bg-base-200\/90{background-color:color-mix(in oklab,var(--color-base-200)90%,#0000)}.text-base-200{color:var(--color-base-200)}.text-base-200\/10{color:color-mix(in oklab,var(--color-base-200)10%,#0000)}.text-base-200\/20{color:color-mix(in oklab,var(--color-base-200)20%,#0000)}.text-base-200\/30{color:color-mix(in oklab,var(--color-base-200)30%,#0000)}.text-base-200\/40{color:color-mix(in oklab,var(--color-base-200)40%,#0000)}.text-base-200\/50{color:color-mix(in oklab,var(--color-base-200)50%,#0000)}.text-base-200\/60{color:color-mix(in oklab,var(--color-base-200)60%,#0000)}.text-base-200\/70{color:color-mix(in oklab,var(--color-base-200)70%,#0000)}.text-base-200\/80{color:color-mix(in oklab,var(--color-base-200)80%,#0000)}.text-base-200\/90{color:color-mix(in oklab,var(--color-base-200)90%,#0000)}.border-base-200{border-color:var(--color-base-200)}.border-base-200\/10{border-color:color-mix(in oklab,var(--color-base-200)10%,#0000)}.border-base-200\/20{border-color:color-mix(in oklab,var(--color-base-200)20%,#0000)}.border-base-200\/30{border-color:color-mix(in oklab,var(--color-base-200)30%,#0000)}.border-base-200\/40{border-color:color-mix(in oklab,var(--color-base-200)40%,#0000)}.border-base-200\/50{border-color:color-mix(in oklab,var(--color-base-200)50%,#0000)}.border-base-200\/60{border-color:color-mix(in oklab,var(--color-base-200)60%,#0000)}.border-base-200\/70{border-color:color-mix(in oklab,var(--color-base-200)70%,#0000)}.border-base-200\/80{border-color:color-mix(in oklab,var(--color-base-200)80%,#0000)}.border-base-200\/90{border-color:color-mix(in oklab,var(--color-base-200)90%,#0000)}.bg-base-300{background-color:var(--color-base-300)}.bg-base-300\/10{background-color:color-mix(in oklab,var(--color-base-300)10%,#0000)}.bg-base-300\/20{background-color:color-mix(in oklab,var(--color-base-300)20%,#0000)}.bg-base-300\/30{background-color:color-mix(in oklab,var(--color-base-300)30%,#0000)}.bg-base-300\/40{background-color:color-mix(in oklab,var(--color-base-300)40%,#0000)}.bg-base-300\/50{background-color:color-mix(in oklab,var(--color-base-300)50%,#0000)}.bg-base-300\/60{background-color:color-mix(in oklab,var(--color-base-300)60%,#0000)}.bg-base-300\/70{background-color:color-mix(in oklab,var(--color-base-300)70%,#0000)}.bg-base-300\/80{background-color:color-mix(in oklab,var(--color-base-300)80%,#0000)}.bg-base-300\/90{background-color:color-mix(in oklab,var(--color-base-300)90%,#0000)}.text-base-300{color:var(--color-base-300)}.text-base-300\/10{color:color-mix(in oklab,var(--color-base-300)10%,#0000)}.text-base-300\/20{color:color-mix(in oklab,var(--color-base-300)20%,#0000)}.text-base-300\/30{color:color-mix(in oklab,var(--color-base-300)30%,#0000)}.text-base-300\/40{color:color-mix(in oklab,var(--color-base-300)40%,#0000)}.text-base-300\/50{color:color-mix(in oklab,var(--color-base-300)50%,#0000)}.text-base-300\/60{color:color-mix(in oklab,var(--color-base-300)60%,#0000)}.text-base-300\/70{color:color-mix(in oklab,var(--color-base-300)70%,#0000)}.text-base-300\/80{color:color-mix(in oklab,var(--color-base-300)80%,#0000)}.text-base-300\/90{color:color-mix(in oklab,var(--color-base-300)90%,#0000)}.border-base-300{border-color:var(--color-base-300)}.border-base-300\/10{border-color:color-mix(in oklab,var(--color-base-300)10%,#0000)}.border-base-300\/20{border-color:color-mix(in oklab,var(--color-base-300)20%,#0000)}.border-base-300\/30{border-color:color-mix(in oklab,var(--color-base-300)30%,#0000)}.border-base-300\/40{border-color:color-mix(in oklab,var(--color-base-300)40%,#0000)}.border-base-300\/50{border-color:color-mix(in oklab,var(--color-base-300)50%,#0000)}.border-base-300\/60{border-color:color-mix(in oklab,var(--color-base-300)60%,#0000)}.border-base-300\/70{border-color:color-mix(in oklab,var(--color-base-300)70%,#0000)}.border-base-300\/80{border-color:color-mix(in oklab,var(--color-base-300)80%,#0000)}.border-base-300\/90{border-color:color-mix(in oklab,var(--color-base-300)90%,#0000)}.bg-base-content{background-color:var(--color-base-content)}.bg-base-content\/10{background-color:color-mix(in oklab,var(--color-base-content)10%,#0000)}.bg-base-content\/20{background-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}.bg-base-content\/30{background-color:color-mix(in oklab,var(--color-base-content)30%,#0000)}.bg-base-content\/40{background-color:color-mix(in oklab,var(--color-base-content)40%,#0000)}.bg-base-content\/50{background-color:color-mix(in oklab,var(--color-base-content)50%,#0000)}.bg-base-content\/60{background-color:color-mix(in oklab,var(--color-base-content)60%,#0000)}.bg-base-content\/70{background-color:color-mix(in oklab,var(--color-base-content)70%,#0000)}.bg-base-content\/80{background-color:color-mix(in oklab,var(--color-base-content)80%,#0000)}.bg-base-content\/90{background-color:color-mix(in oklab,var(--color-base-content)90%,#0000)}.text-base-content{color:var(--color-base-content)}.text-base-content\/10{color:color-mix(in oklab,var(--color-base-content)10%,#0000)}.text-base-content\/20{color:color-mix(in oklab,var(--color-base-content)20%,#0000)}.text-base-content\/30{color:color-mix(in oklab,var(--color-base-content)30%,#0000)}.text-base-content\/40{color:color-mix(in oklab,var(--color-base-content)40%,#0000)}.text-base-content\/50{color:color-mix(in oklab,var(--color-base-content)50%,#0000)}.text-base-content\/60{color:color-mix(in oklab,var(--color-base-content)60%,#0000)}.text-base-content\/70{color:color-mix(in oklab,var(--color-base-content)70%,#0000)}.text-base-content\/80{color:color-mix(in oklab,var(--color-base-content)80%,#0000)}.text-base-content\/90{color:color-mix(in oklab,var(--color-base-content)90%,#0000)}.border-base-content{border-color:var(--color-base-content)}.border-base-content\/10{border-color:color-mix(in oklab,var(--color-base-content)10%,#0000)}.border-base-content\/20{border-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}.border-base-content\/30{border-color:color-mix(in oklab,var(--color-base-content)30%,#0000)}.border-base-content\/40{border-color:color-mix(in oklab,var(--color-base-content)40%,#0000)}.border-base-content\/50{border-color:color-mix(in oklab,var(--color-base-content)50%,#0000)}.border-base-content\/60{border-color:color-mix(in oklab,var(--color-base-content)60%,#0000)}.border-base-content\/70{border-color:color-mix(in oklab,var(--color-base-content)70%,#0000)}.border-base-content\/80{border-color:color-mix(in oklab,var(--color-base-content)80%,#0000)}.border-base-content\/90{border-color:color-mix(in oklab,var(--color-base-content)90%,#0000)}.bg-primary{background-color:var(--color-primary)}.bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary)10%,#0000)}.bg-primary\/20{background-color:color-mix(in oklab,var(--color-primary)20%,#0000)}.bg-primary\/30{background-color:color-mix(in oklab,var(--color-primary)30%,#0000)}.bg-primary\/40{background-color:color-mix(in oklab,var(--color-primary)40%,#0000)}.bg-primary\/50{background-color:color-mix(in oklab,var(--color-primary)50%,#0000)}.bg-primary\/60{background-color:color-mix(in oklab,var(--color-primary)60%,#0000)}.bg-primary\/70{background-color:color-mix(in oklab,var(--color-primary)70%,#0000)}.bg-primary\/80{background-color:color-mix(in oklab,var(--color-primary)80%,#0000)}.bg-primary\/90{background-color:color-mix(in oklab,var(--color-primary)90%,#0000)}.text-primary{color:var(--color-primary)}.text-primary\/10{color:color-mix(in oklab,var(--color-primary)10%,#0000)}.text-primary\/20{color:color-mix(in oklab,var(--color-primary)20%,#0000)}.text-primary\/30{color:color-mix(in oklab,var(--color-primary)30%,#0000)}.text-primary\/40{color:color-mix(in oklab,var(--color-primary)40%,#0000)}.text-primary\/50{color:color-mix(in oklab,var(--color-primary)50%,#0000)}.text-primary\/60{color:color-mix(in oklab,var(--color-primary)60%,#0000)}.text-primary\/70{color:color-mix(in oklab,var(--color-primary)70%,#0000)}.text-primary\/80{color:color-mix(in oklab,var(--color-primary)80%,#0000)}.text-primary\/90{color:color-mix(in oklab,var(--color-primary)90%,#0000)}.border-primary{border-color:var(--color-primary)}.border-primary\/10{border-color:color-mix(in oklab,var(--color-primary)10%,#0000)}.border-primary\/20{border-color:color-mix(in oklab,var(--color-primary)20%,#0000)}.border-primary\/30{border-color:color-mix(in oklab,var(--color-primary)30%,#0000)}.border-primary\/40{border-color:color-mix(in oklab,var(--color-primary)40%,#0000)}.border-primary\/50{border-color:color-mix(in oklab,var(--color-primary)50%,#0000)}.border-primary\/60{border-color:color-mix(in oklab,var(--color-primary)60%,#0000)}.border-primary\/70{border-color:color-mix(in oklab,var(--color-primary)70%,#0000)}.border-primary\/80{border-color:color-mix(in oklab,var(--color-primary)80%,#0000)}.border-primary\/90{border-color:color-mix(in oklab,var(--color-primary)90%,#0000)}.bg-primary-content{background-color:var(--color-primary-content)}.bg-primary-content\/10{background-color:color-mix(in oklab,var(--color-primary-content)10%,#0000)}.bg-primary-content\/20{background-color:color-mix(in oklab,var(--color-primary-content)20%,#0000)}.bg-primary-content\/30{background-color:color-mix(in oklab,var(--color-primary-content)30%,#0000)}.bg-primary-content\/40{background-color:color-mix(in oklab,var(--color-primary-content)40%,#0000)}.bg-primary-content\/50{background-color:color-mix(in oklab,var(--color-primary-content)50%,#0000)}.bg-primary-content\/60{background-color:color-mix(in oklab,var(--color-primary-content)60%,#0000)}.bg-primary-content\/70{background-color:color-mix(in oklab,var(--color-primary-content)70%,#0000)}.bg-primary-content\/80{background-color:color-mix(in oklab,var(--color-primary-content)80%,#0000)}.bg-primary-content\/90{background-color:color-mix(in oklab,var(--color-primary-content)90%,#0000)}.text-primary-content{color:var(--color-primary-content)}.text-primary-content\/10{color:color-mix(in oklab,var(--color-primary-content)10%,#0000)}.text-primary-content\/20{color:color-mix(in oklab,var(--color-primary-content)20%,#0000)}.text-primary-content\/30{color:color-mix(in oklab,var(--color-primary-content)30%,#0000)}.text-primary-content\/40{color:color-mix(in oklab,var(--color-primary-content)40%,#0000)}.text-primary-content\/50{color:color-mix(in oklab,var(--color-primary-content)50%,#0000)}.text-primary-content\/60{color:color-mix(in oklab,var(--color-primary-content)60%,#0000)}.text-primary-content\/70{color:color-mix(in oklab,var(--color-primary-content)70%,#0000)}.text-primary-content\/80{color:color-mix(in oklab,var(--color-primary-content)80%,#0000)}.text-primary-content\/90{color:color-mix(in oklab,var(--color-primary-content)90%,#0000)}.border-primary-content{border-color:var(--color-primary-content)}.border-primary-content\/10{border-color:color-mix(in oklab,var(--color-primary-content)10%,#0000)}.border-primary-content\/20{border-color:color-mix(in oklab,var(--color-primary-content)20%,#0000)}.border-primary-content\/30{border-color:color-mix(in oklab,var(--color-primary-content)30%,#0000)}.border-primary-content\/40{border-color:color-mix(in oklab,var(--color-primary-content)40%,#0000)}.border-primary-content\/50{border-color:color-mix(in oklab,var(--color-primary-content)50%,#0000)}.border-primary-content\/60{border-color:color-mix(in oklab,var(--color-primary-content)60%,#0000)}.border-primary-content\/70{border-color:color-mix(in oklab,var(--color-primary-content)70%,#0000)}.border-primary-content\/80{border-color:color-mix(in oklab,var(--color-primary-content)80%,#0000)}.border-primary-content\/90{border-color:color-mix(in oklab,var(--color-primary-content)90%,#0000)}.bg-secondary{background-color:var(--color-secondary)}.bg-secondary\/10{background-color:color-mix(in oklab,var(--color-secondary)10%,#0000)}.bg-secondary\/20{background-color:color-mix(in oklab,var(--color-secondary)20%,#0000)}.bg-secondary\/30{background-color:color-mix(in oklab,var(--color-secondary)30%,#0000)}.bg-secondary\/40{background-color:color-mix(in oklab,var(--color-secondary)40%,#0000)}.bg-secondary\/50{background-color:color-mix(in oklab,var(--color-secondary)50%,#0000)}.bg-secondary\/60{background-color:color-mix(in oklab,var(--color-secondary)60%,#0000)}.bg-secondary\/70{background-color:color-mix(in oklab,var(--color-secondary)70%,#0000)}.bg-secondary\/80{background-color:color-mix(in oklab,var(--color-secondary)80%,#0000)}.bg-secondary\/90{background-color:color-mix(in oklab,var(--color-secondary)90%,#0000)}.text-secondary{color:var(--color-secondary)}.text-secondary\/10{color:color-mix(in oklab,var(--color-secondary)10%,#0000)}.text-secondary\/20{color:color-mix(in oklab,var(--color-secondary)20%,#0000)}.text-secondary\/30{color:color-mix(in oklab,var(--color-secondary)30%,#0000)}.text-secondary\/40{color:color-mix(in oklab,var(--color-secondary)40%,#0000)}.text-secondary\/50{color:color-mix(in oklab,var(--color-secondary)50%,#0000)}.text-secondary\/60{color:color-mix(in oklab,var(--color-secondary)60%,#0000)}.text-secondary\/70{color:color-mix(in oklab,var(--color-secondary)70%,#0000)}.text-secondary\/80{color:color-mix(in oklab,var(--color-secondary)80%,#0000)}.text-secondary\/90{color:color-mix(in oklab,var(--color-secondary)90%,#0000)}.border-secondary{border-color:var(--color-secondary)}.border-secondary\/10{border-color:color-mix(in oklab,var(--color-secondary)10%,#0000)}.border-secondary\/20{border-color:color-mix(in oklab,var(--color-secondary)20%,#0000)}.border-secondary\/30{border-color:color-mix(in oklab,var(--color-secondary)30%,#0000)}.border-secondary\/40{border-color:color-mix(in oklab,var(--color-secondary)40%,#0000)}.border-secondary\/50{border-color:color-mix(in oklab,var(--color-secondary)50%,#0000)}.border-secondary\/60{border-color:color-mix(in oklab,var(--color-secondary)60%,#0000)}.border-secondary\/70{border-color:color-mix(in oklab,var(--color-secondary)70%,#0000)}.border-secondary\/80{border-color:color-mix(in oklab,var(--color-secondary)80%,#0000)}.border-secondary\/90{border-color:color-mix(in oklab,var(--color-secondary)90%,#0000)}.bg-secondary-content{background-color:var(--color-secondary-content)}.bg-secondary-content\/10{background-color:color-mix(in oklab,var(--color-secondary-content)10%,#0000)}.bg-secondary-content\/20{background-color:color-mix(in oklab,var(--color-secondary-content)20%,#0000)}.bg-secondary-content\/30{background-color:color-mix(in oklab,var(--color-secondary-content)30%,#0000)}.bg-secondary-content\/40{background-color:color-mix(in oklab,var(--color-secondary-content)40%,#0000)}.bg-secondary-content\/50{background-color:color-mix(in oklab,var(--color-secondary-content)50%,#0000)}.bg-secondary-content\/60{background-color:color-mix(in oklab,var(--color-secondary-content)60%,#0000)}.bg-secondary-content\/70{background-color:color-mix(in oklab,var(--color-secondary-content)70%,#0000)}.bg-secondary-content\/80{background-color:color-mix(in oklab,var(--color-secondary-content)80%,#0000)}.bg-secondary-content\/90{background-color:color-mix(in oklab,var(--color-secondary-content)90%,#0000)}.text-secondary-content{color:var(--color-secondary-content)}.text-secondary-content\/10{color:color-mix(in oklab,var(--color-secondary-content)10%,#0000)}.text-secondary-content\/20{color:color-mix(in oklab,var(--color-secondary-content)20%,#0000)}.text-secondary-content\/30{color:color-mix(in oklab,var(--color-secondary-content)30%,#0000)}.text-secondary-content\/40{color:color-mix(in oklab,var(--color-secondary-content)40%,#0000)}.text-secondary-content\/50{color:color-mix(in oklab,var(--color-secondary-content)50%,#0000)}.text-secondary-content\/60{color:color-mix(in oklab,var(--color-secondary-content)60%,#0000)}.text-secondary-content\/70{color:color-mix(in oklab,var(--color-secondary-content)70%,#0000)}.text-secondary-content\/80{color:color-mix(in oklab,var(--color-secondary-content)80%,#0000)}.text-secondary-content\/90{color:color-mix(in oklab,var(--color-secondary-content)90%,#0000)}.border-secondary-content{border-color:var(--color-secondary-content)}.border-secondary-content\/10{border-color:color-mix(in oklab,var(--color-secondary-content)10%,#0000)}.border-secondary-content\/20{border-color:color-mix(in oklab,var(--color-secondary-content)20%,#0000)}.border-secondary-content\/30{border-color:color-mix(in oklab,var(--color-secondary-content)30%,#0000)}.border-secondary-content\/40{border-color:color-mix(in oklab,var(--color-secondary-content)40%,#0000)}.border-secondary-content\/50{border-color:color-mix(in oklab,var(--color-secondary-content)50%,#0000)}.border-secondary-content\/60{border-color:color-mix(in oklab,var(--color-secondary-content)60%,#0000)}.border-secondary-content\/70{border-color:color-mix(in oklab,var(--color-secondary-content)70%,#0000)}.border-secondary-content\/80{border-color:color-mix(in oklab,var(--color-secondary-content)80%,#0000)}.border-secondary-content\/90{border-color:color-mix(in oklab,var(--color-secondary-content)90%,#0000)}.bg-accent{background-color:var(--color-accent)}.bg-accent\/10{background-color:color-mix(in oklab,var(--color-accent)10%,#0000)}.bg-accent\/20{background-color:color-mix(in oklab,var(--color-accent)20%,#0000)}.bg-accent\/30{background-color:color-mix(in oklab,var(--color-accent)30%,#0000)}.bg-accent\/40{background-color:color-mix(in oklab,var(--color-accent)40%,#0000)}.bg-accent\/50{background-color:color-mix(in oklab,var(--color-accent)50%,#0000)}.bg-accent\/60{background-color:color-mix(in oklab,var(--color-accent)60%,#0000)}.bg-accent\/70{background-color:color-mix(in oklab,var(--color-accent)70%,#0000)}.bg-accent\/80{background-color:color-mix(in oklab,var(--color-accent)80%,#0000)}.bg-accent\/90{background-color:color-mix(in oklab,var(--color-accent)90%,#0000)}.text-accent{color:var(--color-accent)}.text-accent\/10{color:color-mix(in oklab,var(--color-accent)10%,#0000)}.text-accent\/20{color:color-mix(in oklab,var(--color-accent)20%,#0000)}.text-accent\/30{color:color-mix(in oklab,var(--color-accent)30%,#0000)}.text-accent\/40{color:color-mix(in oklab,var(--color-accent)40%,#0000)}.text-accent\/50{color:color-mix(in oklab,var(--color-accent)50%,#0000)}.text-accent\/60{color:color-mix(in oklab,var(--color-accent)60%,#0000)}.text-accent\/70{color:color-mix(in oklab,var(--color-accent)70%,#0000)}.text-accent\/80{color:color-mix(in oklab,var(--color-accent)80%,#0000)}.text-accent\/90{color:color-mix(in oklab,var(--color-accent)90%,#0000)}.border-accent{border-color:var(--color-accent)}.border-accent\/10{border-color:color-mix(in oklab,var(--color-accent)10%,#0000)}.border-accent\/20{border-color:color-mix(in oklab,var(--color-accent)20%,#0000)}.border-accent\/30{border-color:color-mix(in oklab,var(--color-accent)30%,#0000)}.border-accent\/40{border-color:color-mix(in oklab,var(--color-accent)40%,#0000)}.border-accent\/50{border-color:color-mix(in oklab,var(--color-accent)50%,#0000)}.border-accent\/60{border-color:color-mix(in oklab,var(--color-accent)60%,#0000)}.border-accent\/70{border-color:color-mix(in oklab,var(--color-accent)70%,#0000)}.border-accent\/80{border-color:color-mix(in oklab,var(--color-accent)80%,#0000)}.border-accent\/90{border-color:color-mix(in oklab,var(--color-accent)90%,#0000)}.bg-accent-content{background-color:var(--color-accent-content)}.bg-accent-content\/10{background-color:color-mix(in oklab,var(--color-accent-content)10%,#0000)}.bg-accent-content\/20{background-color:color-mix(in oklab,var(--color-accent-content)20%,#0000)}.bg-accent-content\/30{background-color:color-mix(in oklab,var(--color-accent-content)30%,#0000)}.bg-accent-content\/40{background-color:color-mix(in oklab,var(--color-accent-content)40%,#0000)}.bg-accent-content\/50{background-color:color-mix(in oklab,var(--color-accent-content)50%,#0000)}.bg-accent-content\/60{background-color:color-mix(in oklab,var(--color-accent-content)60%,#0000)}.bg-accent-content\/70{background-color:color-mix(in oklab,var(--color-accent-content)70%,#0000)}.bg-accent-content\/80{background-color:color-mix(in oklab,var(--color-accent-content)80%,#0000)}.bg-accent-content\/90{background-color:color-mix(in oklab,var(--color-accent-content)90%,#0000)}.text-accent-content{color:var(--color-accent-content)}.text-accent-content\/10{color:color-mix(in oklab,var(--color-accent-content)10%,#0000)}.text-accent-content\/20{color:color-mix(in oklab,var(--color-accent-content)20%,#0000)}.text-accent-content\/30{color:color-mix(in oklab,var(--color-accent-content)30%,#0000)}.text-accent-content\/40{color:color-mix(in oklab,var(--color-accent-content)40%,#0000)}.text-accent-content\/50{color:color-mix(in oklab,var(--color-accent-content)50%,#0000)}.text-accent-content\/60{color:color-mix(in oklab,var(--color-accent-content)60%,#0000)}.text-accent-content\/70{color:color-mix(in oklab,var(--color-accent-content)70%,#0000)}.text-accent-content\/80{color:color-mix(in oklab,var(--color-accent-content)80%,#0000)}.text-accent-content\/90{color:color-mix(in oklab,var(--color-accent-content)90%,#0000)}.border-accent-content{border-color:var(--color-accent-content)}.border-accent-content\/10{border-color:color-mix(in oklab,var(--color-accent-content)10%,#0000)}.border-accent-content\/20{border-color:color-mix(in oklab,var(--color-accent-content)20%,#0000)}.border-accent-content\/30{border-color:color-mix(in oklab,var(--color-accent-content)30%,#0000)}.border-accent-content\/40{border-color:color-mix(in oklab,var(--color-accent-content)40%,#0000)}.border-accent-content\/50{border-color:color-mix(in oklab,var(--color-accent-content)50%,#0000)}.border-accent-content\/60{border-color:color-mix(in oklab,var(--color-accent-content)60%,#0000)}.border-accent-content\/70{border-color:color-mix(in oklab,var(--color-accent-content)70%,#0000)}.border-accent-content\/80{border-color:color-mix(in oklab,var(--color-accent-content)80%,#0000)}.border-accent-content\/90{border-color:color-mix(in oklab,var(--color-accent-content)90%,#0000)}.bg-neutral{background-color:var(--color-neutral)}.bg-neutral\/10{background-color:color-mix(in oklab,var(--color-neutral)10%,#0000)}.bg-neutral\/20{background-color:color-mix(in oklab,var(--color-neutral)20%,#0000)}.bg-neutral\/30{background-color:color-mix(in oklab,var(--color-neutral)30%,#0000)}.bg-neutral\/40{background-color:color-mix(in oklab,var(--color-neutral)40%,#0000)}.bg-neutral\/50{background-color:color-mix(in oklab,var(--color-neutral)50%,#0000)}.bg-neutral\/60{background-color:color-mix(in oklab,var(--color-neutral)60%,#0000)}.bg-neutral\/70{background-color:color-mix(in oklab,var(--color-neutral)70%,#0000)}.bg-neutral\/80{background-color:color-mix(in oklab,var(--color-neutral)80%,#0000)}.bg-neutral\/90{background-color:color-mix(in oklab,var(--color-neutral)90%,#0000)}.text-neutral{color:var(--color-neutral)}.text-neutral\/10{color:color-mix(in oklab,var(--color-neutral)10%,#0000)}.text-neutral\/20{color:color-mix(in oklab,var(--color-neutral)20%,#0000)}.text-neutral\/30{color:color-mix(in oklab,var(--color-neutral)30%,#0000)}.text-neutral\/40{color:color-mix(in oklab,var(--color-neutral)40%,#0000)}.text-neutral\/50{color:color-mix(in oklab,var(--color-neutral)50%,#0000)}.text-neutral\/60{color:color-mix(in oklab,var(--color-neutral)60%,#0000)}.text-neutral\/70{color:color-mix(in oklab,var(--color-neutral)70%,#0000)}.text-neutral\/80{color:color-mix(in oklab,var(--color-neutral)80%,#0000)}.text-neutral\/90{color:color-mix(in oklab,var(--color-neutral)90%,#0000)}.border-neutral{border-color:var(--color-neutral)}.border-neutral\/10{border-color:color-mix(in oklab,var(--color-neutral)10%,#0000)}.border-neutral\/20{border-color:color-mix(in oklab,var(--color-neutral)20%,#0000)}.border-neutral\/30{border-color:color-mix(in oklab,var(--color-neutral)30%,#0000)}.border-neutral\/40{border-color:color-mix(in oklab,var(--color-neutral)40%,#0000)}.border-neutral\/50{border-color:color-mix(in oklab,var(--color-neutral)50%,#0000)}.border-neutral\/60{border-color:color-mix(in oklab,var(--color-neutral)60%,#0000)}.border-neutral\/70{border-color:color-mix(in oklab,var(--color-neutral)70%,#0000)}.border-neutral\/80{border-color:color-mix(in oklab,var(--color-neutral)80%,#0000)}.border-neutral\/90{border-color:color-mix(in oklab,var(--color-neutral)90%,#0000)}.bg-neutral-content{background-color:var(--color-neutral-content)}.bg-neutral-content\/10{background-color:color-mix(in oklab,var(--color-neutral-content)10%,#0000)}.bg-neutral-content\/20{background-color:color-mix(in oklab,var(--color-neutral-content)20%,#0000)}.bg-neutral-content\/30{background-color:color-mix(in oklab,var(--color-neutral-content)30%,#0000)}.bg-neutral-content\/40{background-color:color-mix(in oklab,var(--color-neutral-content)40%,#0000)}.bg-neutral-content\/50{background-color:color-mix(in oklab,var(--color-neutral-content)50%,#0000)}.bg-neutral-content\/60{background-color:color-mix(in oklab,var(--color-neutral-content)60%,#0000)}.bg-neutral-content\/70{background-color:color-mix(in oklab,var(--color-neutral-content)70%,#0000)}.bg-neutral-content\/80{background-color:color-mix(in oklab,var(--color-neutral-content)80%,#0000)}.bg-neutral-content\/90{background-color:color-mix(in oklab,var(--color-neutral-content)90%,#0000)}.text-neutral-content{color:var(--color-neutral-content)}.text-neutral-content\/10{color:color-mix(in oklab,var(--color-neutral-content)10%,#0000)}.text-neutral-content\/20{color:color-mix(in oklab,var(--color-neutral-content)20%,#0000)}.text-neutral-content\/30{color:color-mix(in oklab,var(--color-neutral-content)30%,#0000)}.text-neutral-content\/40{color:color-mix(in oklab,var(--color-neutral-content)40%,#0000)}.text-neutral-content\/50{color:color-mix(in oklab,var(--color-neutral-content)50%,#0000)}.text-neutral-content\/60{color:color-mix(in oklab,var(--color-neutral-content)60%,#0000)}.text-neutral-content\/70{color:color-mix(in oklab,var(--color-neutral-content)70%,#0000)}.text-neutral-content\/80{color:color-mix(in oklab,var(--color-neutral-content)80%,#0000)}.text-neutral-content\/90{color:color-mix(in oklab,var(--color-neutral-content)90%,#0000)}.border-neutral-content{border-color:var(--color-neutral-content)}.border-neutral-content\/10{border-color:color-mix(in oklab,var(--color-neutral-content)10%,#0000)}.border-neutral-content\/20{border-color:color-mix(in oklab,var(--color-neutral-content)20%,#0000)}.border-neutral-content\/30{border-color:color-mix(in oklab,var(--color-neutral-content)30%,#0000)}.border-neutral-content\/40{border-color:color-mix(in oklab,var(--color-neutral-content)40%,#0000)}.border-neutral-content\/50{border-color:color-mix(in oklab,var(--color-neutral-content)50%,#0000)}.border-neutral-content\/60{border-color:color-mix(in oklab,var(--color-neutral-content)60%,#0000)}.border-neutral-content\/70{border-color:color-mix(in oklab,var(--color-neutral-content)70%,#0000)}.border-neutral-content\/80{border-color:color-mix(in oklab,var(--color-neutral-content)80%,#0000)}.border-neutral-content\/90{border-color:color-mix(in oklab,var(--color-neutral-content)90%,#0000)}.bg-info{background-color:var(--color-info)}.bg-info\/10{background-color:color-mix(in oklab,var(--color-info)10%,#0000)}.bg-info\/20{background-color:color-mix(in oklab,var(--color-info)20%,#0000)}.bg-info\/30{background-color:color-mix(in oklab,var(--color-info)30%,#0000)}.bg-info\/40{background-color:color-mix(in oklab,var(--color-info)40%,#0000)}.bg-info\/50{background-color:color-mix(in oklab,var(--color-info)50%,#0000)}.bg-info\/60{background-color:color-mix(in oklab,var(--color-info)60%,#0000)}.bg-info\/70{background-color:color-mix(in oklab,var(--color-info)70%,#0000)}.bg-info\/80{background-color:color-mix(in oklab,var(--color-info)80%,#0000)}.bg-info\/90{background-color:color-mix(in oklab,var(--color-info)90%,#0000)}.text-info{color:var(--color-info)}.text-info\/10{color:color-mix(in oklab,var(--color-info)10%,#0000)}.text-info\/20{color:color-mix(in oklab,var(--color-info)20%,#0000)}.text-info\/30{color:color-mix(in oklab,var(--color-info)30%,#0000)}.text-info\/40{color:color-mix(in oklab,var(--color-info)40%,#0000)}.text-info\/50{color:color-mix(in oklab,var(--color-info)50%,#0000)}.text-info\/60{color:color-mix(in oklab,var(--color-info)60%,#0000)}.text-info\/70{color:color-mix(in oklab,var(--color-info)70%,#0000)}.text-info\/80{color:color-mix(in oklab,var(--color-info)80%,#0000)}.text-info\/90{color:color-mix(in oklab,var(--color-info)90%,#0000)}.border-info{border-color:var(--color-info)}.border-info\/10{border-color:color-mix(in oklab,var(--color-info)10%,#0000)}.border-info\/20{border-color:color-mix(in oklab,var(--color-info)20%,#0000)}.border-info\/30{border-color:color-mix(in oklab,var(--color-info)30%,#0000)}.border-info\/40{border-color:color-mix(in oklab,var(--color-info)40%,#0000)}.border-info\/50{border-color:color-mix(in oklab,var(--color-info)50%,#0000)}.border-info\/60{border-color:color-mix(in oklab,var(--color-info)60%,#0000)}.border-info\/70{border-color:color-mix(in oklab,var(--color-info)70%,#0000)}.border-info\/80{border-color:color-mix(in oklab,var(--color-info)80%,#0000)}.border-info\/90{border-color:color-mix(in oklab,var(--color-info)90%,#0000)}.bg-info-content{background-color:var(--color-info-content)}.bg-info-content\/10{background-color:color-mix(in oklab,var(--color-info-content)10%,#0000)}.bg-info-content\/20{background-color:color-mix(in oklab,var(--color-info-content)20%,#0000)}.bg-info-content\/30{background-color:color-mix(in oklab,var(--color-info-content)30%,#0000)}.bg-info-content\/40{background-color:color-mix(in oklab,var(--color-info-content)40%,#0000)}.bg-info-content\/50{background-color:color-mix(in oklab,var(--color-info-content)50%,#0000)}.bg-info-content\/60{background-color:color-mix(in oklab,var(--color-info-content)60%,#0000)}.bg-info-content\/70{background-color:color-mix(in oklab,var(--color-info-content)70%,#0000)}.bg-info-content\/80{background-color:color-mix(in oklab,var(--color-info-content)80%,#0000)}.bg-info-content\/90{background-color:color-mix(in oklab,var(--color-info-content)90%,#0000)}.text-info-content{color:var(--color-info-content)}.text-info-content\/10{color:color-mix(in oklab,var(--color-info-content)10%,#0000)}.text-info-content\/20{color:color-mix(in oklab,var(--color-info-content)20%,#0000)}.text-info-content\/30{color:color-mix(in oklab,var(--color-info-content)30%,#0000)}.text-info-content\/40{color:color-mix(in oklab,var(--color-info-content)40%,#0000)}.text-info-content\/50{color:color-mix(in oklab,var(--color-info-content)50%,#0000)}.text-info-content\/60{color:color-mix(in oklab,var(--color-info-content)60%,#0000)}.text-info-content\/70{color:color-mix(in oklab,var(--color-info-content)70%,#0000)}.text-info-content\/80{color:color-mix(in oklab,var(--color-info-content)80%,#0000)}.text-info-content\/90{color:color-mix(in oklab,var(--color-info-content)90%,#0000)}.border-info-content{border-color:var(--color-info-content)}.border-info-content\/10{border-color:color-mix(in oklab,var(--color-info-content)10%,#0000)}.border-info-content\/20{border-color:color-mix(in oklab,var(--color-info-content)20%,#0000)}.border-info-content\/30{border-color:color-mix(in oklab,var(--color-info-content)30%,#0000)}.border-info-content\/40{border-color:color-mix(in oklab,var(--color-info-content)40%,#0000)}.border-info-content\/50{border-color:color-mix(in oklab,var(--color-info-content)50%,#0000)}.border-info-content\/60{border-color:color-mix(in oklab,var(--color-info-content)60%,#0000)}.border-info-content\/70{border-color:color-mix(in oklab,var(--color-info-content)70%,#0000)}.border-info-content\/80{border-color:color-mix(in oklab,var(--color-info-content)80%,#0000)}.border-info-content\/90{border-color:color-mix(in oklab,var(--color-info-content)90%,#0000)}.bg-success{background-color:var(--color-success)}.bg-success\/10{background-color:color-mix(in oklab,var(--color-success)10%,#0000)}.bg-success\/20{background-color:color-mix(in oklab,var(--color-success)20%,#0000)}.bg-success\/30{background-color:color-mix(in oklab,var(--color-success)30%,#0000)}.bg-success\/40{background-color:color-mix(in oklab,var(--color-success)40%,#0000)}.bg-success\/50{background-color:color-mix(in oklab,var(--color-success)50%,#0000)}.bg-success\/60{background-color:color-mix(in oklab,var(--color-success)60%,#0000)}.bg-success\/70{background-color:color-mix(in oklab,var(--color-success)70%,#0000)}.bg-success\/80{background-color:color-mix(in oklab,var(--color-success)80%,#0000)}.bg-success\/90{background-color:color-mix(in oklab,var(--color-success)90%,#0000)}.text-success{color:var(--color-success)}.text-success\/10{color:color-mix(in oklab,var(--color-success)10%,#0000)}.text-success\/20{color:color-mix(in oklab,var(--color-success)20%,#0000)}.text-success\/30{color:color-mix(in oklab,var(--color-success)30%,#0000)}.text-success\/40{color:color-mix(in oklab,var(--color-success)40%,#0000)}.text-success\/50{color:color-mix(in oklab,var(--color-success)50%,#0000)}.text-success\/60{color:color-mix(in oklab,var(--color-success)60%,#0000)}.text-success\/70{color:color-mix(in oklab,var(--color-success)70%,#0000)}.text-success\/80{color:color-mix(in oklab,var(--color-success)80%,#0000)}.text-success\/90{color:color-mix(in oklab,var(--color-success)90%,#0000)}.border-success{border-color:var(--color-success)}.border-success\/10{border-color:color-mix(in oklab,var(--color-success)10%,#0000)}.border-success\/20{border-color:color-mix(in oklab,var(--color-success)20%,#0000)}.border-success\/30{border-color:color-mix(in oklab,var(--color-success)30%,#0000)}.border-success\/40{border-color:color-mix(in oklab,var(--color-success)40%,#0000)}.border-success\/50{border-color:color-mix(in oklab,var(--color-success)50%,#0000)}.border-success\/60{border-color:color-mix(in oklab,var(--color-success)60%,#0000)}.border-success\/70{border-color:color-mix(in oklab,var(--color-success)70%,#0000)}.border-success\/80{border-color:color-mix(in oklab,var(--color-success)80%,#0000)}.border-success\/90{border-color:color-mix(in oklab,var(--color-success)90%,#0000)}.bg-success-content{background-color:var(--color-success-content)}.bg-success-content\/10{background-color:color-mix(in oklab,var(--color-success-content)10%,#0000)}.bg-success-content\/20{background-color:color-mix(in oklab,var(--color-success-content)20%,#0000)}.bg-success-content\/30{background-color:color-mix(in oklab,var(--color-success-content)30%,#0000)}.bg-success-content\/40{background-color:color-mix(in oklab,var(--color-success-content)40%,#0000)}.bg-success-content\/50{background-color:color-mix(in oklab,var(--color-success-content)50%,#0000)}.bg-success-content\/60{background-color:color-mix(in oklab,var(--color-success-content)60%,#0000)}.bg-success-content\/70{background-color:color-mix(in oklab,var(--color-success-content)70%,#0000)}.bg-success-content\/80{background-color:color-mix(in oklab,var(--color-success-content)80%,#0000)}.bg-success-content\/90{background-color:color-mix(in oklab,var(--color-success-content)90%,#0000)}.text-success-content{color:var(--color-success-content)}.text-success-content\/10{color:color-mix(in oklab,var(--color-success-content)10%,#0000)}.text-success-content\/20{color:color-mix(in oklab,var(--color-success-content)20%,#0000)}.text-success-content\/30{color:color-mix(in oklab,var(--color-success-content)30%,#0000)}.text-success-content\/40{color:color-mix(in oklab,var(--color-success-content)40%,#0000)}.text-success-content\/50{color:color-mix(in oklab,var(--color-success-content)50%,#0000)}.text-success-content\/60{color:color-mix(in oklab,var(--color-success-content)60%,#0000)}.text-success-content\/70{color:color-mix(in oklab,var(--color-success-content)70%,#0000)}.text-success-content\/80{color:color-mix(in oklab,var(--color-success-content)80%,#0000)}.text-success-content\/90{color:color-mix(in oklab,var(--color-success-content)90%,#0000)}.border-success-content{border-color:var(--color-success-content)}.border-success-content\/10{border-color:color-mix(in oklab,var(--color-success-content)10%,#0000)}.border-success-content\/20{border-color:color-mix(in oklab,var(--color-success-content)20%,#0000)}.border-success-content\/30{border-color:color-mix(in oklab,var(--color-success-content)30%,#0000)}.border-success-content\/40{border-color:color-mix(in oklab,var(--color-success-content)40%,#0000)}.border-success-content\/50{border-color:color-mix(in oklab,var(--color-success-content)50%,#0000)}.border-success-content\/60{border-color:color-mix(in oklab,var(--color-success-content)60%,#0000)}.border-success-content\/70{border-color:color-mix(in oklab,var(--color-success-content)70%,#0000)}.border-success-content\/80{border-color:color-mix(in oklab,var(--color-success-content)80%,#0000)}.border-success-content\/90{border-color:color-mix(in oklab,var(--color-success-content)90%,#0000)}.bg-warning{background-color:var(--color-warning)}.bg-warning\/10{background-color:color-mix(in oklab,var(--color-warning)10%,#0000)}.bg-warning\/20{background-color:color-mix(in oklab,var(--color-warning)20%,#0000)}.bg-warning\/30{background-color:color-mix(in oklab,var(--color-warning)30%,#0000)}.bg-warning\/40{background-color:color-mix(in oklab,var(--color-warning)40%,#0000)}.bg-warning\/50{background-color:color-mix(in oklab,var(--color-warning)50%,#0000)}.bg-warning\/60{background-color:color-mix(in oklab,var(--color-warning)60%,#0000)}.bg-warning\/70{background-color:color-mix(in oklab,var(--color-warning)70%,#0000)}.bg-warning\/80{background-color:color-mix(in oklab,var(--color-warning)80%,#0000)}.bg-warning\/90{background-color:color-mix(in oklab,var(--color-warning)90%,#0000)}.text-warning{color:var(--color-warning)}.text-warning\/10{color:color-mix(in oklab,var(--color-warning)10%,#0000)}.text-warning\/20{color:color-mix(in oklab,var(--color-warning)20%,#0000)}.text-warning\/30{color:color-mix(in oklab,var(--color-warning)30%,#0000)}.text-warning\/40{color:color-mix(in oklab,var(--color-warning)40%,#0000)}.text-warning\/50{color:color-mix(in oklab,var(--color-warning)50%,#0000)}.text-warning\/60{color:color-mix(in oklab,var(--color-warning)60%,#0000)}.text-warning\/70{color:color-mix(in oklab,var(--color-warning)70%,#0000)}.text-warning\/80{color:color-mix(in oklab,var(--color-warning)80%,#0000)}.text-warning\/90{color:color-mix(in oklab,var(--color-warning)90%,#0000)}.border-warning{border-color:var(--color-warning)}.border-warning\/10{border-color:color-mix(in oklab,var(--color-warning)10%,#0000)}.border-warning\/20{border-color:color-mix(in oklab,var(--color-warning)20%,#0000)}.border-warning\/30{border-color:color-mix(in oklab,var(--color-warning)30%,#0000)}.border-warning\/40{border-color:color-mix(in oklab,var(--color-warning)40%,#0000)}.border-warning\/50{border-color:color-mix(in oklab,var(--color-warning)50%,#0000)}.border-warning\/60{border-color:color-mix(in oklab,var(--color-warning)60%,#0000)}.border-warning\/70{border-color:color-mix(in oklab,var(--color-warning)70%,#0000)}.border-warning\/80{border-color:color-mix(in oklab,var(--color-warning)80%,#0000)}.border-warning\/90{border-color:color-mix(in oklab,var(--color-warning)90%,#0000)}.bg-warning-content{background-color:var(--color-warning-content)}.bg-warning-content\/10{background-color:color-mix(in oklab,var(--color-warning-content)10%,#0000)}.bg-warning-content\/20{background-color:color-mix(in oklab,var(--color-warning-content)20%,#0000)}.bg-warning-content\/30{background-color:color-mix(in oklab,var(--color-warning-content)30%,#0000)}.bg-warning-content\/40{background-color:color-mix(in oklab,var(--color-warning-content)40%,#0000)}.bg-warning-content\/50{background-color:color-mix(in oklab,var(--color-warning-content)50%,#0000)}.bg-warning-content\/60{background-color:color-mix(in oklab,var(--color-warning-content)60%,#0000)}.bg-warning-content\/70{background-color:color-mix(in oklab,var(--color-warning-content)70%,#0000)}.bg-warning-content\/80{background-color:color-mix(in oklab,var(--color-warning-content)80%,#0000)}.bg-warning-content\/90{background-color:color-mix(in oklab,var(--color-warning-content)90%,#0000)}.text-warning-content{color:var(--color-warning-content)}.text-warning-content\/10{color:color-mix(in oklab,var(--color-warning-content)10%,#0000)}.text-warning-content\/20{color:color-mix(in oklab,var(--color-warning-content)20%,#0000)}.text-warning-content\/30{color:color-mix(in oklab,var(--color-warning-content)30%,#0000)}.text-warning-content\/40{color:color-mix(in oklab,var(--color-warning-content)40%,#0000)}.text-warning-content\/50{color:color-mix(in oklab,var(--color-warning-content)50%,#0000)}.text-warning-content\/60{color:color-mix(in oklab,var(--color-warning-content)60%,#0000)}.text-warning-content\/70{color:color-mix(in oklab,var(--color-warning-content)70%,#0000)}.text-warning-content\/80{color:color-mix(in oklab,var(--color-warning-content)80%,#0000)}.text-warning-content\/90{color:color-mix(in oklab,var(--color-warning-content)90%,#0000)}.border-warning-content{border-color:var(--color-warning-content)}.border-warning-content\/10{border-color:color-mix(in oklab,var(--color-warning-content)10%,#0000)}.border-warning-content\/20{border-color:color-mix(in oklab,var(--color-warning-content)20%,#0000)}.border-warning-content\/30{border-color:color-mix(in oklab,var(--color-warning-content)30%,#0000)}.border-warning-content\/40{border-color:color-mix(in oklab,var(--color-warning-content)40%,#0000)}.border-warning-content\/50{border-color:color-mix(in oklab,var(--color-warning-content)50%,#0000)}.border-warning-content\/60{border-color:color-mix(in oklab,var(--color-warning-content)60%,#0000)}.border-warning-content\/70{border-color:color-mix(in oklab,var(--color-warning-content)70%,#0000)}.border-warning-content\/80{border-color:color-mix(in oklab,var(--color-warning-content)80%,#0000)}.border-warning-content\/90{border-color:color-mix(in oklab,var(--color-warning-content)90%,#0000)}.bg-error{background-color:var(--color-error)}.bg-error\/10{background-color:color-mix(in oklab,var(--color-error)10%,#0000)}.bg-error\/20{background-color:color-mix(in oklab,var(--color-error)20%,#0000)}.bg-error\/30{background-color:color-mix(in oklab,var(--color-error)30%,#0000)}.bg-error\/40{background-color:color-mix(in oklab,var(--color-error)40%,#0000)}.bg-error\/50{background-color:color-mix(in oklab,var(--color-error)50%,#0000)}.bg-error\/60{background-color:color-mix(in oklab,var(--color-error)60%,#0000)}.bg-error\/70{background-color:color-mix(in oklab,var(--color-error)70%,#0000)}.bg-error\/80{background-color:color-mix(in oklab,var(--color-error)80%,#0000)}.bg-error\/90{background-color:color-mix(in oklab,var(--color-error)90%,#0000)}.text-error{color:var(--color-error)}.text-error\/10{color:color-mix(in oklab,var(--color-error)10%,#0000)}.text-error\/20{color:color-mix(in oklab,var(--color-error)20%,#0000)}.text-error\/30{color:color-mix(in oklab,var(--color-error)30%,#0000)}.text-error\/40{color:color-mix(in oklab,var(--color-error)40%,#0000)}.text-error\/50{color:color-mix(in oklab,var(--color-error)50%,#0000)}.text-error\/60{color:color-mix(in oklab,var(--color-error)60%,#0000)}.text-error\/70{color:color-mix(in oklab,var(--color-error)70%,#0000)}.text-error\/80{color:color-mix(in oklab,var(--color-error)80%,#0000)}.text-error\/90{color:color-mix(in oklab,var(--color-error)90%,#0000)}.border-error{border-color:var(--color-error)}.border-error\/10{border-color:color-mix(in oklab,var(--color-error)10%,#0000)}.border-error\/20{border-color:color-mix(in oklab,var(--color-error)20%,#0000)}.border-error\/30{border-color:color-mix(in oklab,var(--color-error)30%,#0000)}.border-error\/40{border-color:color-mix(in oklab,var(--color-error)40%,#0000)}.border-error\/50{border-color:color-mix(in oklab,var(--color-error)50%,#0000)}.border-error\/60{border-color:color-mix(in oklab,var(--color-error)60%,#0000)}.border-error\/70{border-color:color-mix(in oklab,var(--color-error)70%,#0000)}.border-error\/80{border-color:color-mix(in oklab,var(--color-error)80%,#0000)}.border-error\/90{border-color:color-mix(in oklab,var(--color-error)90%,#0000)}.bg-error-content{background-color:var(--color-error-content)}.bg-error-content\/10{background-color:color-mix(in oklab,var(--color-error-content)10%,#0000)}.bg-error-content\/20{background-color:color-mix(in oklab,var(--color-error-content)20%,#0000)}.bg-error-content\/30{background-color:color-mix(in oklab,var(--color-error-content)30%,#0000)}.bg-error-content\/40{background-color:color-mix(in oklab,var(--color-error-content)40%,#0000)}.bg-error-content\/50{background-color:color-mix(in oklab,var(--color-error-content)50%,#0000)}.bg-error-content\/60{background-color:color-mix(in oklab,var(--color-error-content)60%,#0000)}.bg-error-content\/70{background-color:color-mix(in oklab,var(--color-error-content)70%,#0000)}.bg-error-content\/80{background-color:color-mix(in oklab,var(--color-error-content)80%,#0000)}.bg-error-content\/90{background-color:color-mix(in oklab,var(--color-error-content)90%,#0000)}.text-error-content{color:var(--color-error-content)}.text-error-content\/10{color:color-mix(in oklab,var(--color-error-content)10%,#0000)}.text-error-content\/20{color:color-mix(in oklab,var(--color-error-content)20%,#0000)}.text-error-content\/30{color:color-mix(in oklab,var(--color-error-content)30%,#0000)}.text-error-content\/40{color:color-mix(in oklab,var(--color-error-content)40%,#0000)}.text-error-content\/50{color:color-mix(in oklab,var(--color-error-content)50%,#0000)}.text-error-content\/60{color:color-mix(in oklab,var(--color-error-content)60%,#0000)}.text-error-content\/70{color:color-mix(in oklab,var(--color-error-content)70%,#0000)}.text-error-content\/80{color:color-mix(in oklab,var(--color-error-content)80%,#0000)}.text-error-content\/90{color:color-mix(in oklab,var(--color-error-content)90%,#0000)}.border-error-content{border-color:var(--color-error-content)}.border-error-content\/10{border-color:color-mix(in oklab,var(--color-error-content)10%,#0000)}.border-error-content\/20{border-color:color-mix(in oklab,var(--color-error-content)20%,#0000)}.border-error-content\/30{border-color:color-mix(in oklab,var(--color-error-content)30%,#0000)}.border-error-content\/40{border-color:color-mix(in oklab,var(--color-error-content)40%,#0000)}.border-error-content\/50{border-color:color-mix(in oklab,var(--color-error-content)50%,#0000)}.border-error-content\/60{border-color:color-mix(in oklab,var(--color-error-content)60%,#0000)}.border-error-content\/70{border-color:color-mix(in oklab,var(--color-error-content)70%,#0000)}.border-error-content\/80{border-color:color-mix(in oklab,var(--color-error-content)80%,#0000)}.border-error-content\/90{border-color:color-mix(in oklab,var(--color-error-content)90%,#0000)}@media (width>=40rem){.sm\:bg-base-100{background-color:var(--color-base-100)}.sm\:text-base-100{color:var(--color-base-100)}.sm\:border-base-100{border-color:var(--color-base-100)}.sm\:bg-base-200{background-color:var(--color-base-200)}.sm\:text-base-200{color:var(--color-base-200)}.sm\:border-base-200{border-color:var(--color-base-200)}.sm\:bg-base-300{background-color:var(--color-base-300)}.sm\:text-base-300{color:var(--color-base-300)}.sm\:border-base-300{border-color:var(--color-base-300)}.sm\:bg-base-content{background-color:var(--color-base-content)}.sm\:text-base-content{color:var(--color-base-content)}.sm\:border-base-content{border-color:var(--color-base-content)}.sm\:bg-primary{background-color:var(--color-primary)}.sm\:text-primary{color:var(--color-primary)}.sm\:border-primary{border-color:var(--color-primary)}.sm\:bg-primary-content{background-color:var(--color-primary-content)}.sm\:text-primary-content{color:var(--color-primary-content)}.sm\:border-primary-content{border-color:var(--color-primary-content)}.sm\:bg-secondary{background-color:var(--color-secondary)}.sm\:text-secondary{color:var(--color-secondary)}.sm\:border-secondary{border-color:var(--color-secondary)}.sm\:bg-secondary-content{background-color:var(--color-secondary-content)}.sm\:text-secondary-content{color:var(--color-secondary-content)}.sm\:border-secondary-content{border-color:var(--color-secondary-content)}.sm\:bg-accent{background-color:var(--color-accent)}.sm\:text-accent{color:var(--color-accent)}.sm\:border-accent{border-color:var(--color-accent)}.sm\:bg-accent-content{background-color:var(--color-accent-content)}.sm\:text-accent-content{color:var(--color-accent-content)}.sm\:border-accent-content{border-color:var(--color-accent-content)}.sm\:bg-neutral{background-color:var(--color-neutral)}.sm\:text-neutral{color:var(--color-neutral)}.sm\:border-neutral{border-color:var(--color-neutral)}.sm\:bg-neutral-content{background-color:var(--color-neutral-content)}.sm\:text-neutral-content{color:var(--color-neutral-content)}.sm\:border-neutral-content{border-color:var(--color-neutral-content)}.sm\:bg-info{background-color:var(--color-info)}.sm\:text-info{color:var(--color-info)}.sm\:border-info{border-color:var(--color-info)}.sm\:bg-info-content{background-color:var(--color-info-content)}.sm\:text-info-content{color:var(--color-info-content)}.sm\:border-info-content{border-color:var(--color-info-content)}.sm\:bg-success{background-color:var(--color-success)}.sm\:text-success{color:var(--color-success)}.sm\:border-success{border-color:var(--color-success)}.sm\:bg-success-content{background-color:var(--color-success-content)}.sm\:text-success-content{color:var(--color-success-content)}.sm\:border-success-content{border-color:var(--color-success-content)}.sm\:bg-warning{background-color:var(--color-warning)}.sm\:text-warning{color:var(--color-warning)}.sm\:border-warning{border-color:var(--color-warning)}.sm\:bg-warning-content{background-color:var(--color-warning-content)}.sm\:text-warning-content{color:var(--color-warning-content)}.sm\:border-warning-content{border-color:var(--color-warning-content)}.sm\:bg-error{background-color:var(--color-error)}.sm\:text-error{color:var(--color-error)}.sm\:border-error{border-color:var(--color-error)}.sm\:bg-error-content{background-color:var(--color-error-content)}.sm\:text-error-content{color:var(--color-error-content)}.sm\:border-error-content{border-color:var(--color-error-content)}}@media (width>=48rem){.md\:bg-base-100{background-color:var(--color-base-100)}.md\:text-base-100{color:var(--color-base-100)}.md\:border-base-100{border-color:var(--color-base-100)}.md\:bg-base-200{background-color:var(--color-base-200)}.md\:text-base-200{color:var(--color-base-200)}.md\:border-base-200{border-color:var(--color-base-200)}.md\:bg-base-300{background-color:var(--color-base-300)}.md\:text-base-300{color:var(--color-base-300)}.md\:border-base-300{border-color:var(--color-base-300)}.md\:bg-base-content{background-color:var(--color-base-content)}.md\:text-base-content{color:var(--color-base-content)}.md\:border-base-content{border-color:var(--color-base-content)}.md\:bg-primary{background-color:var(--color-primary)}.md\:text-primary{color:var(--color-primary)}.md\:border-primary{border-color:var(--color-primary)}.md\:bg-primary-content{background-color:var(--color-primary-content)}.md\:text-primary-content{color:var(--color-primary-content)}.md\:border-primary-content{border-color:var(--color-primary-content)}.md\:bg-secondary{background-color:var(--color-secondary)}.md\:text-secondary{color:var(--color-secondary)}.md\:border-secondary{border-color:var(--color-secondary)}.md\:bg-secondary-content{background-color:var(--color-secondary-content)}.md\:text-secondary-content{color:var(--color-secondary-content)}.md\:border-secondary-content{border-color:var(--color-secondary-content)}.md\:bg-accent{background-color:var(--color-accent)}.md\:text-accent{color:var(--color-accent)}.md\:border-accent{border-color:var(--color-accent)}.md\:bg-accent-content{background-color:var(--color-accent-content)}.md\:text-accent-content{color:var(--color-accent-content)}.md\:border-accent-content{border-color:var(--color-accent-content)}.md\:bg-neutral{background-color:var(--color-neutral)}.md\:text-neutral{color:var(--color-neutral)}.md\:border-neutral{border-color:var(--color-neutral)}.md\:bg-neutral-content{background-color:var(--color-neutral-content)}.md\:text-neutral-content{color:var(--color-neutral-content)}.md\:border-neutral-content{border-color:var(--color-neutral-content)}.md\:bg-info{background-color:var(--color-info)}.md\:text-info{color:var(--color-info)}.md\:border-info{border-color:var(--color-info)}.md\:bg-info-content{background-color:var(--color-info-content)}.md\:text-info-content{color:var(--color-info-content)}.md\:border-info-content{border-color:var(--color-info-content)}.md\:bg-success{background-color:var(--color-success)}.md\:text-success{color:var(--color-success)}.md\:border-success{border-color:var(--color-success)}.md\:bg-success-content{background-color:var(--color-success-content)}.md\:text-success-content{color:var(--color-success-content)}.md\:border-success-content{border-color:var(--color-success-content)}.md\:bg-warning{background-color:var(--color-warning)}.md\:text-warning{color:var(--color-warning)}.md\:border-warning{border-color:var(--color-warning)}.md\:bg-warning-content{background-color:var(--color-warning-content)}.md\:text-warning-content{color:var(--color-warning-content)}.md\:border-warning-content{border-color:var(--color-warning-content)}.md\:bg-error{background-color:var(--color-error)}.md\:text-error{color:var(--color-error)}.md\:border-error{border-color:var(--color-error)}.md\:bg-error-content{background-color:var(--color-error-content)}.md\:text-error-content{color:var(--color-error-content)}.md\:border-error-content{border-color:var(--color-error-content)}}@media (width>=64rem){.lg\:bg-base-100{background-color:var(--color-base-100)}.lg\:text-base-100{color:var(--color-base-100)}.lg\:border-base-100{border-color:var(--color-base-100)}.lg\:bg-base-200{background-color:var(--color-base-200)}.lg\:text-base-200{color:var(--color-base-200)}.lg\:border-base-200{border-color:var(--color-base-200)}.lg\:bg-base-300{background-color:var(--color-base-300)}.lg\:text-base-300{color:var(--color-base-300)}.lg\:border-base-300{border-color:var(--color-base-300)}.lg\:bg-base-content{background-color:var(--color-base-content)}.lg\:text-base-content{color:var(--color-base-content)}.lg\:border-base-content{border-color:var(--color-base-content)}.lg\:bg-primary{background-color:var(--color-primary)}.lg\:text-primary{color:var(--color-primary)}.lg\:border-primary{border-color:var(--color-primary)}.lg\:bg-primary-content{background-color:var(--color-primary-content)}.lg\:text-primary-content{color:var(--color-primary-content)}.lg\:border-primary-content{border-color:var(--color-primary-content)}.lg\:bg-secondary{background-color:var(--color-secondary)}.lg\:text-secondary{color:var(--color-secondary)}.lg\:border-secondary{border-color:var(--color-secondary)}.lg\:bg-secondary-content{background-color:var(--color-secondary-content)}.lg\:text-secondary-content{color:var(--color-secondary-content)}.lg\:border-secondary-content{border-color:var(--color-secondary-content)}.lg\:bg-accent{background-color:var(--color-accent)}.lg\:text-accent{color:var(--color-accent)}.lg\:border-accent{border-color:var(--color-accent)}.lg\:bg-accent-content{background-color:var(--color-accent-content)}.lg\:text-accent-content{color:var(--color-accent-content)}.lg\:border-accent-content{border-color:var(--color-accent-content)}.lg\:bg-neutral{background-color:var(--color-neutral)}.lg\:text-neutral{color:var(--color-neutral)}.lg\:border-neutral{border-color:var(--color-neutral)}.lg\:bg-neutral-content{background-color:var(--color-neutral-content)}.lg\:text-neutral-content{color:var(--color-neutral-content)}.lg\:border-neutral-content{border-color:var(--color-neutral-content)}.lg\:bg-info{background-color:var(--color-info)}.lg\:text-info{color:var(--color-info)}.lg\:border-info{border-color:var(--color-info)}.lg\:bg-info-content{background-color:var(--color-info-content)}.lg\:text-info-content{color:var(--color-info-content)}.lg\:border-info-content{border-color:var(--color-info-content)}.lg\:bg-success{background-color:var(--color-success)}.lg\:text-success{color:var(--color-success)}.lg\:border-success{border-color:var(--color-success)}.lg\:bg-success-content{background-color:var(--color-success-content)}.lg\:text-success-content{color:var(--color-success-content)}.lg\:border-success-content{border-color:var(--color-success-content)}.lg\:bg-warning{background-color:var(--color-warning)}.lg\:text-warning{color:var(--color-warning)}.lg\:border-warning{border-color:var(--color-warning)}.lg\:bg-warning-content{background-color:var(--color-warning-content)}.lg\:text-warning-content{color:var(--color-warning-content)}.lg\:border-warning-content{border-color:var(--color-warning-content)}.lg\:bg-error{background-color:var(--color-error)}.lg\:text-error{color:var(--color-error)}.lg\:border-error{border-color:var(--color-error)}.lg\:bg-error-content{background-color:var(--color-error-content)}.lg\:text-error-content{color:var(--color-error-content)}.lg\:border-error-content{border-color:var(--color-error-content)}}@media (width>=80rem){.xl\:bg-base-100{background-color:var(--color-base-100)}.xl\:text-base-100{color:var(--color-base-100)}.xl\:border-base-100{border-color:var(--color-base-100)}.xl\:bg-base-200{background-color:var(--color-base-200)}.xl\:text-base-200{color:var(--color-base-200)}.xl\:border-base-200{border-color:var(--color-base-200)}.xl\:bg-base-300{background-color:var(--color-base-300)}.xl\:text-base-300{color:var(--color-base-300)}.xl\:border-base-300{border-color:var(--color-base-300)}.xl\:bg-base-content{background-color:var(--color-base-content)}.xl\:text-base-content{color:var(--color-base-content)}.xl\:border-base-content{border-color:var(--color-base-content)}.xl\:bg-primary{background-color:var(--color-primary)}.xl\:text-primary{color:var(--color-primary)}.xl\:border-primary{border-color:var(--color-primary)}.xl\:bg-primary-content{background-color:var(--color-primary-content)}.xl\:text-primary-content{color:var(--color-primary-content)}.xl\:border-primary-content{border-color:var(--color-primary-content)}.xl\:bg-secondary{background-color:var(--color-secondary)}.xl\:text-secondary{color:var(--color-secondary)}.xl\:border-secondary{border-color:var(--color-secondary)}.xl\:bg-secondary-content{background-color:var(--color-secondary-content)}.xl\:text-secondary-content{color:var(--color-secondary-content)}.xl\:border-secondary-content{border-color:var(--color-secondary-content)}.xl\:bg-accent{background-color:var(--color-accent)}.xl\:text-accent{color:var(--color-accent)}.xl\:border-accent{border-color:var(--color-accent)}.xl\:bg-accent-content{background-color:var(--color-accent-content)}.xl\:text-accent-content{color:var(--color-accent-content)}.xl\:border-accent-content{border-color:var(--color-accent-content)}.xl\:bg-neutral{background-color:var(--color-neutral)}.xl\:text-neutral{color:var(--color-neutral)}.xl\:border-neutral{border-color:var(--color-neutral)}.xl\:bg-neutral-content{background-color:var(--color-neutral-content)}.xl\:text-neutral-content{color:var(--color-neutral-content)}.xl\:border-neutral-content{border-color:var(--color-neutral-content)}.xl\:bg-info{background-color:var(--color-info)}.xl\:text-info{color:var(--color-info)}.xl\:border-info{border-color:var(--color-info)}.xl\:bg-info-content{background-color:var(--color-info-content)}.xl\:text-info-content{color:var(--color-info-content)}.xl\:border-info-content{border-color:var(--color-info-content)}.xl\:bg-success{background-color:var(--color-success)}.xl\:text-success{color:var(--color-success)}.xl\:border-success{border-color:var(--color-success)}.xl\:bg-success-content{background-color:var(--color-success-content)}.xl\:text-success-content{color:var(--color-success-content)}.xl\:border-success-content{border-color:var(--color-success-content)}.xl\:bg-warning{background-color:var(--color-warning)}.xl\:text-warning{color:var(--color-warning)}.xl\:border-warning{border-color:var(--color-warning)}.xl\:bg-warning-content{background-color:var(--color-warning-content)}.xl\:text-warning-content{color:var(--color-warning-content)}.xl\:border-warning-content{border-color:var(--color-warning-content)}.xl\:bg-error{background-color:var(--color-error)}.xl\:text-error{color:var(--color-error)}.xl\:border-error{border-color:var(--color-error)}.xl\:bg-error-content{background-color:var(--color-error-content)}.xl\:text-error-content{color:var(--color-error-content)}.xl\:border-error-content{border-color:var(--color-error-content)}}@media (width>=96rem){.\32 xl\:bg-base-100{background-color:var(--color-base-100)}.\32 xl\:text-base-100{color:var(--color-base-100)}.\32 xl\:border-base-100{border-color:var(--color-base-100)}.\32 xl\:bg-base-200{background-color:var(--color-base-200)}.\32 xl\:text-base-200{color:var(--color-base-200)}.\32 xl\:border-base-200{border-color:var(--color-base-200)}.\32 xl\:bg-base-300{background-color:var(--color-base-300)}.\32 xl\:text-base-300{color:var(--color-base-300)}.\32 xl\:border-base-300{border-color:var(--color-base-300)}.\32 xl\:bg-base-content{background-color:var(--color-base-content)}.\32 xl\:text-base-content{color:var(--color-base-content)}.\32 xl\:border-base-content{border-color:var(--color-base-content)}.\32 xl\:bg-primary{background-color:var(--color-primary)}.\32 xl\:text-primary{color:var(--color-primary)}.\32 xl\:border-primary{border-color:var(--color-primary)}.\32 xl\:bg-primary-content{background-color:var(--color-primary-content)}.\32 xl\:text-primary-content{color:var(--color-primary-content)}.\32 xl\:border-primary-content{border-color:var(--color-primary-content)}.\32 xl\:bg-secondary{background-color:var(--color-secondary)}.\32 xl\:text-secondary{color:var(--color-secondary)}.\32 xl\:border-secondary{border-color:var(--color-secondary)}.\32 xl\:bg-secondary-content{background-color:var(--color-secondary-content)}.\32 xl\:text-secondary-content{color:var(--color-secondary-content)}.\32 xl\:border-secondary-content{border-color:var(--color-secondary-content)}.\32 xl\:bg-accent{background-color:var(--color-accent)}.\32 xl\:text-accent{color:var(--color-accent)}.\32 xl\:border-accent{border-color:var(--color-accent)}.\32 xl\:bg-accent-content{background-color:var(--color-accent-content)}.\32 xl\:text-accent-content{color:var(--color-accent-content)}.\32 xl\:border-accent-content{border-color:var(--color-accent-content)}.\32 xl\:bg-neutral{background-color:var(--color-neutral)}.\32 xl\:text-neutral{color:var(--color-neutral)}.\32 xl\:border-neutral{border-color:var(--color-neutral)}.\32 xl\:bg-neutral-content{background-color:var(--color-neutral-content)}.\32 xl\:text-neutral-content{color:var(--color-neutral-content)}.\32 xl\:border-neutral-content{border-color:var(--color-neutral-content)}.\32 xl\:bg-info{background-color:var(--color-info)}.\32 xl\:text-info{color:var(--color-info)}.\32 xl\:border-info{border-color:var(--color-info)}.\32 xl\:bg-info-content{background-color:var(--color-info-content)}.\32 xl\:text-info-content{color:var(--color-info-content)}.\32 xl\:border-info-content{border-color:var(--color-info-content)}.\32 xl\:bg-success{background-color:var(--color-success)}.\32 xl\:text-success{color:var(--color-success)}.\32 xl\:border-success{border-color:var(--color-success)}.\32 xl\:bg-success-content{background-color:var(--color-success-content)}.\32 xl\:text-success-content{color:var(--color-success-content)}.\32 xl\:border-success-content{border-color:var(--color-success-content)}.\32 xl\:bg-warning{background-color:var(--color-warning)}.\32 xl\:text-warning{color:var(--color-warning)}.\32 xl\:border-warning{border-color:var(--color-warning)}.\32 xl\:bg-warning-content{background-color:var(--color-warning-content)}.\32 xl\:text-warning-content{color:var(--color-warning-content)}.\32 xl\:border-warning-content{border-color:var(--color-warning-content)}.\32 xl\:bg-error{background-color:var(--color-error)}.\32 xl\:text-error{color:var(--color-error)}.\32 xl\:border-error{border-color:var(--color-error)}.\32 xl\:bg-error-content{background-color:var(--color-error-content)}.\32 xl\:text-error-content{color:var(--color-error-content)}.\32 xl\:border-error-content{border-color:var(--color-error-content)}}.hover\:bg-base-100:hover{&:hover{@media (hover:hover){&{background-color:var(--color-base-100)}}}}.hover\:text-base-100:hover{&:hover{@media (hover:hover){&{color:var(--color-base-100)}}}}.hover\:border-base-100:hover{&:hover{@media (hover:hover){&{border-color:var(--color-base-100)}}}}.hover\:bg-base-200:hover{&:hover{@media (hover:hover){&{background-color:var(--color-base-200)}}}}.hover\:text-base-200:hover{&:hover{@media (hover:hover){&{color:var(--color-base-200)}}}}.hover\:border-base-200:hover{&:hover{@media (hover:hover){&{border-color:var(--color-base-200)}}}}.hover\:bg-base-300:hover{&:hover{@media (hover:hover){&{background-color:var(--color-base-300)}}}}.hover\:text-base-300:hover{&:hover{@media (hover:hover){&{color:var(--color-base-300)}}}}.hover\:border-base-300:hover{&:hover{@media (hover:hover){&{border-color:var(--color-base-300)}}}}.hover\:bg-base-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-base-content)}}}}.hover\:text-base-content:hover{&:hover{@media (hover:hover){&{color:var(--color-base-content)}}}}.hover\:border-base-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-base-content)}}}}.hover\:bg-primary:hover{&:hover{@media (hover:hover){&{background-color:var(--color-primary)}}}}.hover\:text-primary:hover{&:hover{@media (hover:hover){&{color:var(--color-primary)}}}}.hover\:border-primary:hover{&:hover{@media (hover:hover){&{border-color:var(--color-primary)}}}}.hover\:bg-primary-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-primary-content)}}}}.hover\:text-primary-content:hover{&:hover{@media (hover:hover){&{color:var(--color-primary-content)}}}}.hover\:border-primary-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-primary-content)}}}}.hover\:bg-secondary:hover{&:hover{@media (hover:hover){&{background-color:var(--color-secondary)}}}}.hover\:text-secondary:hover{&:hover{@media (hover:hover){&{color:var(--color-secondary)}}}}.hover\:border-secondary:hover{&:hover{@media (hover:hover){&{border-color:var(--color-secondary)}}}}.hover\:bg-secondary-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-secondary-content)}}}}.hover\:text-secondary-content:hover{&:hover{@media (hover:hover){&{color:var(--color-secondary-content)}}}}.hover\:border-secondary-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-secondary-content)}}}}.hover\:bg-accent:hover{&:hover{@media (hover:hover){&{background-color:var(--color-accent)}}}}.hover\:text-accent:hover{&:hover{@media (hover:hover){&{color:var(--color-accent)}}}}.hover\:border-accent:hover{&:hover{@media (hover:hover){&{border-color:var(--color-accent)}}}}.hover\:bg-accent-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-accent-content)}}}}.hover\:text-accent-content:hover{&:hover{@media (hover:hover){&{color:var(--color-accent-content)}}}}.hover\:border-accent-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-accent-content)}}}}.hover\:bg-neutral:hover{&:hover{@media (hover:hover){&{background-color:var(--color-neutral)}}}}.hover\:text-neutral:hover{&:hover{@media (hover:hover){&{color:var(--color-neutral)}}}}.hover\:border-neutral:hover{&:hover{@media (hover:hover){&{border-color:var(--color-neutral)}}}}.hover\:bg-neutral-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-neutral-content)}}}}.hover\:text-neutral-content:hover{&:hover{@media (hover:hover){&{color:var(--color-neutral-content)}}}}.hover\:border-neutral-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-neutral-content)}}}}.hover\:bg-info:hover{&:hover{@media (hover:hover){&{background-color:var(--color-info)}}}}.hover\:text-info:hover{&:hover{@media (hover:hover){&{color:var(--color-info)}}}}.hover\:border-info:hover{&:hover{@media (hover:hover){&{border-color:var(--color-info)}}}}.hover\:bg-info-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-info-content)}}}}.hover\:text-info-content:hover{&:hover{@media (hover:hover){&{color:var(--color-info-content)}}}}.hover\:border-info-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-info-content)}}}}.hover\:bg-success:hover{&:hover{@media (hover:hover){&{background-color:var(--color-success)}}}}.hover\:text-success:hover{&:hover{@media (hover:hover){&{color:var(--color-success)}}}}.hover\:border-success:hover{&:hover{@media (hover:hover){&{border-color:var(--color-success)}}}}.hover\:bg-success-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-success-content)}}}}.hover\:text-success-content:hover{&:hover{@media (hover:hover){&{color:var(--color-success-content)}}}}.hover\:border-success-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-success-content)}}}}.hover\:bg-warning:hover{&:hover{@media (hover:hover){&{background-color:var(--color-warning)}}}}.hover\:text-warning:hover{&:hover{@media (hover:hover){&{color:var(--color-warning)}}}}.hover\:border-warning:hover{&:hover{@media (hover:hover){&{border-color:var(--color-warning)}}}}.hover\:bg-warning-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-warning-content)}}}}.hover\:text-warning-content:hover{&:hover{@media (hover:hover){&{color:var(--color-warning-content)}}}}.hover\:border-warning-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-warning-content)}}}}.hover\:bg-error:hover{&:hover{@media (hover:hover){&{background-color:var(--color-error)}}}}.hover\:text-error:hover{&:hover{@media (hover:hover){&{color:var(--color-error)}}}}.hover\:border-error:hover{&:hover{@media (hover:hover){&{border-color:var(--color-error)}}}}.hover\:bg-error-content:hover{&:hover{@media (hover:hover){&{background-color:var(--color-error-content)}}}}.hover\:text-error-content:hover{&:hover{@media (hover:hover){&{color:var(--color-error-content)}}}}.hover\:border-error-content:hover{&:hover{@media (hover:hover){&{border-color:var(--color-error-content)}}}}} \ No newline at end of file diff --git a/src/assets/tailwindcss-browser@4.js b/src/assets/tailwindcss-browser@4.js new file mode 100644 index 0000000..5da40be --- /dev/null +++ b/src/assets/tailwindcss-browser@4.js @@ -0,0 +1,8 @@ +/** + * Minified by jsDelivr using Terser v5.39.0. + * Original file: /npm/@tailwindcss/browser@4.1.10/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,i){let a=i?.from?{file:i.from,code:t}:null;"\ufeff"===t[0]&&(t=" "+t.slice(1));let l,s=[],c=[],u=[],d=null,f=null,p="",h="",m=0;for(let i=0;i0&&t[n]===e[e.length-1]&&(e=e.slice(0,-1))}}let u=n(p,c);if(!u)throw new Error("Invalid custom property, expected a value");a&&(u.src=[a,r,i],u.dst=[a,r,i]),d?d.nodes.push(u):s.push(u),p=""}else if(59===g&&64===p.charCodeAt(0))f=r(p),a&&(f.src=[a,m,i],f.dst=[a,m,i]),d?d.nodes.push(f):s.push(f),p="",f=null;else if(59===g&&")"!==h[h.length-1]){let e=n(p);if(!e)throw 0===p.length?new Error("Unexpected semicolon"):new Error(`Invalid declaration: \`${p.trim()}\``);a&&(e.src=[a,m,i],e.dst=[a,m,i]),d?d.nodes.push(e):s.push(e),p=""}else if(123===g&&")"!==h[h.length-1])h+="}",f=y(p.trim()),a&&(f.src=[a,m,i],f.dst=[a,m,i]),d&&d.nodes.push(f),u.push(d),d=f,p="",f=null;else if(125===g&&")"!==h[h.length-1]){if(""===h)throw new Error("Missing opening {");if(h=h.slice(0,-1),p.length>0)if(64===p.charCodeAt(0))f=r(p),a&&(f.src=[a,m,i],f.dst=[a,m,i]),d?d.nodes.push(f):s.push(f),p="",f=null;else{let e=p.indexOf(":");if(d){let t=n(p,e);if(!t)throw new Error(`Invalid declaration: \`${p.trim()}\``);a&&(t.src=[a,m,i],t.dst=[a,m,i]),d.nodes.push(t)}}let e=u.pop()??null;null===e&&d&&s.push(d),d=e,p="",f=null}else if(40===g)h+=")",p+="(";else if(41===g){if(")"!==h[h.length-1])throw new Error("Missing opening (");h=h.slice(0,-1),p+=")"}else{if(0===p.length&&(32===g||g===e||9===g))continue;""===p&&(m=i),p+=String.fromCharCode(g)}}}if(64===p.charCodeAt(0)){let e=r(p);a&&(e.src=[a,m,t.length],e.dst=[a,m,t.length]),s.push(e)}if(h.length>0&&d){if("rule"===d.kind)throw new Error(`Missing closing } at ${d.selector}`);if("at-rule"===d.kind)throw new Error(`Missing closing } at ${d.name} ${d.params}`)}return c.length>0?c.concat(s):s}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 a(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 l=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 s(e,t){return(l.get(t)??[]).some((t=>e===t||e.startsWith(`${t}-`)))}var c=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)&&(s(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=a(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=l.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(!s(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(${i(this.prefixKey(e))}${r?`, ${r}`:""})`}markUsedVariable(e){let t=a(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)}},u=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 d(e){return{kind:"word",value:e}}function f(e,t){return{kind:"function",value:e,nodes:t}}function p(e){return{kind:"separator",value:e}}function h(e,t,r=null){for(let n=0;n0){let e=d(i);o?o.nodes.push(e):r.push(e),i=""}let n=a,l=a+1;for(;l0){let t=d(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(d(i)),r}function v(e){let t=[];return h(g(e),(e=>{if("function"===e.kind&&"var"===e.value)return h(e.nodes,(e=>{"word"!==e.kind||"-"!==e.value[0]||"-"!==e.value[1]||t.push(e.value)})),1})),t}var w=64;function k(e,t=[]){return{kind:"rule",selector:e,nodes:t}}function b(e,t="",r=[]){return{kind:"at-rule",name:e,params:t,nodes:r}}function y(e,t=[]){return e.charCodeAt(0)===w?r(e,t):k(e,t)}function x(e,t,r=!1){return{kind:"declaration",property:e,value:t,important:r}}function $(e){return{kind:"comment",value:e}}function A(e,t){return{kind:"context",context:e,nodes:t}}function z(e){return{kind:"at-root",nodes:e}}function C(e,t,r=[],n={}){for(let o=0;onew Set)),a=new u((()=>new Set)),l=new Set,s=new Set,c=[],d=[],f=new u((()=>new Set));function p(e,u,h={},m=0){if("declaration"===e.kind){if("--tw-sort"===e.property||void 0===e.value||null===e.value)return;if(h.theme&&"-"===e.property[0]&&"-"===e.property[1]){if("initial"===e.value)return void(e.value=void 0);h.keyframes||i.get(u).add(e)}if(e.value.includes("var("))if(h.theme&&"-"===e.property[0]&&"-"===e.property[1])for(let t of v(e.value))f.get(t).add(e.property);else t.trackUsedVariables(e.value);if("animation"===e.property)for(let t of V(e.value))s.add(t);2&r&&e.value.includes("color-mix(")&&a.get(u).add(e),u.push(e)}else if("rule"===e.kind)if("&"===e.selector)for(let t of e.nodes){let e=[];p(t,e,h,m+1),e.length>0&&u.push(...e)}else{let t={...e,nodes:[]};for(let r of e.nodes)p(r,t.nodes,h,m+1);t.nodes.length>0&&u.push(t)}else if("at-rule"===e.kind&&"@property"===e.name&&0===m){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=x(t,r??"initial");o.src=e.src,n?c.push(o):d.push(o)}o.add(e.params);let t={...e,nodes:[]};for(let r of e.nodes)p(r,t.nodes,h,m+1);u.push(t)}else if("at-rule"===e.kind){"@keyframes"===e.name&&(h={...h,keyframes:!0});let t={...e,nodes:[]};for(let r of e.nodes)p(r,t.nodes,h,m+1);"@keyframes"===e.name&&h.theme&&l.add(t),(t.nodes.length>0||"@layer"===t.name||"@charset"===t.name||"@custom-media"===t.name||"@namespace"===t.name||"@import"===t.name)&&u.push(t)}else if("at-root"===e.kind)for(let t of e.nodes){let e=[];p(t,e,h,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)p(t,u,{...h,...e.context},m)}else"comment"===e.kind&&u.push(e)}let w=[];for(let t of e)p(t,w,{},0);e:for(let[e,r]of i)for(let n of r){if(E(n.property,t.theme,f)){if(n.property.startsWith(t.theme.prefixKey("--animate-")))for(let e of V(n.value))s.add(e);continue}let r=e.indexOf(n);if(e.splice(r,1),0===e.length){let t=K(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=g(n.value),i=!1;if(h(o,((e,{replaceWith:r})=>{if("function"!==e.kind||"color-mix"!==e.value)return;let n=!1,o=!1;if(h(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(")?g(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:m(o)},l=y("@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(c.length>0){let t=y(":root, :host",c);t.src=c[0].src,e.push(t)}if(d.length>0){let t=y("*, ::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=b("@layer","properties",[]);r.src=e[0].src,w.splice(t<0?w.length:t,0,r);let n=y("@layer properties",[b("@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 S(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 K(e,t){let r=[];return C(e,((e,{path:n})=>{if(t(e))return r=[...n],2})),r}function E(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(E(e,t,r,n))return!0}return!1}function V(e){return e.split(/[\s,]+/)}var N=["calc","min","max","clamp","mod","rem","sin","cos","tan","asin","acos","atan","atan2","pow","sqrt","hypot","log","exp","round"];function O(e){return-1!==e.indexOf("(")&&N.some((t=>e.includes(`${t}(`)))}function F(e){if(-1===e.indexOf("("))return W(e);let t=g(e);return U(t),e=function(e){if(!N.some((t=>e.includes(t))))return e;let t="",r=[],n=null,o=null;for(let i=0;i=48&&a<=57||null!==n&&(37===a||a>=97&&a<=122||a>=65&&a<=90)?n=i:(o=n,n=null),40!==a)if(41===a)t+=e[i],r.shift();else{if(44===a&&r[0]){t+=", ";continue}if(32===a&&r[0]&&32===t.charCodeAt(t.length-1))continue;if(43!==a&&42!==a&&47!==a&&45!==a||!r[0])t+=e[i];else{let r=t.trimEnd(),n=r.charCodeAt(r.length-1),a=r.charCodeAt(r.length-2),l=e.charCodeAt(i+1);if((101===n||69===n)&&a>=48&&a<=57){t+=e[i];continue}if(43===n||42===n||47===n||45===n){t+=e[i];continue}if(40===n||44===n){t+=e[i];continue}32===e.charCodeAt(i-1)?t+=`${e[i]} `:t+=n>=48&&n<=57||l>=48&&l<=57||41===n||40===l||43===l||42===l||47===l||45===l||null!==o&&o===i-1?` ${e[i]} `:e[i]}}else{t+=e[i];let n=i;for(let t=i-1;t>=0;t--){let r=e.charCodeAt(t);if(r>=48&&r<=57)n=t;else{if(!(r>=97&&r<=122))break;n=t}}let o=e.slice(n,i);if(N.includes(o)){r.unshift(!0);continue}if(r[0]&&""===o){r.unshift(!0);continue}r.unshift(!1)}}return t}(e=m(t)),e}function W(e,t=!1){let r="";for(let n=0;n0&&o===_[t-1]&&t--;break;case 59:if(0===t)return!1}}return!0}var B=new Uint8Array(256);function L(e,t){let r=0,n=[],o=0,i=e.length,a=t.charCodeAt(0);for(let t=0;t0&&l===B[r-1]&&r--}else n.push(e.slice(o,t)),o=t+1}return n.push(e.slice(o)),n}function I(e){if("["===e[0]&&"]"===e[e.length-1]){let t=F(e.slice(1,-1));return M(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]&&M(e)?{kind:"arbitrary",value:F(e=`var(${e})`)}:null:{kind:"named",value:e}}function*R(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 P(e){if(null===e)return"";let t=X(e.value),r=t?e.value.slice(4,-1):e.value,[n,o]=t?["(",")"]:["[","]"];return"arbitrary"===e.kind?`/${n}${Z(r)}${o}`:"named"===e.kind?`/${e.value}`:""}function q(e){if("static"===e.kind)return e.root;if("arbitrary"===e.kind)return`[${Z(function(e){return Y.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=X(e.value.value),o=n?e.value.value.slice(4,-1):e.value.value,[i,a]=n?["(",")"]:["[","]"];t+=`${r?"-":""}${i}${Z(o)}${a}`}else"named"===e.value.kind&&(t+=`${r?"-":""}${e.value.value}`)}return"compound"===e.kind&&(t+=e.root,t+="-",t+=q(e.variant)),("functional"===e.kind||"compound"===e.kind)&&(t+=P(e.modifier)),t}var H=new u((e=>{let t=g(e),r=new Set;return h(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&&h(t,((e,{replaceWith:t})=>{r.has(e)&&(r.delete(e),t([]))})),G(t),m(t)}));function Z(e){return H.get(e)}var Y=new u((e=>{let t=g(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?m(t[2].nodes):e}));function G(e){for(let t of e)switch(t.kind){case"function":if("url"===t.value||t.value.endsWith("_url")){t.value=ee(t.value);break}if("var"===t.value||t.value.endsWith("_var")||"theme"===t.value||t.value.endsWith("_theme")){t.value=ee(t.value);for(let e=0;e{let t=g(e);return 1===t.length&&"function"===t[0].kind&&"var"===t[0].value}));function X(e){return J.get(e)}function Q(e){throw new Error(`Unexpected value: ${e}`)}function ee(e){return e.replaceAll("_",String.raw`\_`).replaceAll(" ","_")}function te(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 L(e,",")){if("cover"===r||"contain"===r){t+=1;continue}let e=L(r," ");if(1!==e.length&&2!==e.length)return!1;e.every((e=>"auto"===e||ve(e)||he(e)))&&(t+=1)}return t>0},"line-width":function(e){return L(e," ").every((e=>ve(e)||fe(e)||"thin"===e||"medium"===e||"thick"===e))},image:function(e){let t=0;for(let r of L(e,","))if(!r.startsWith("var(")){if(le(r)){t+=1;continue}if(ce.test(r)){t+=1;continue}if(se.test(r)){t+=1;continue}return!1}return t>0},"family-name":function(e){let t=0;for(let r of L(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 we.test(e)},vector:function(e){return ke.test(e)}};function ie(e,t){if(e.startsWith("var("))return null;for(let r of t)if(oe[r]?.(e))return r;return null}var ae=/^url\(.*\)$/;function le(e){return ae.test(e)}var se=/^(?:element|image|cross-fade|image-set)\(/,ce=/^(repeating-)?(conic|linear|radial)-gradient\(/;var ue=/[+-]?\d*\.?\d+(?:[eE][+-]?\d+)?/,de=new RegExp(`^${ue.source}$`);function fe(e){return de.test(e)||O(e)}var pe=new RegExp(`^${ue.source}%$`);function he(e){return pe.test(e)||O(e)}var me=new RegExp(`^${ue.source}s*/s*${ue.source}$`);var ge=new RegExp(`^${ue.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 ve(e){return ge.test(e)||O(e)}var we=new RegExp(`^${ue.source}(${["deg","rad","grad","turn"].join("|")})$`);var ke=new RegExp(`^${ue.source} +${ue.source} +${ue.source}$`);function be(e){let t=Number(e);return Number.isInteger(t)&&t>=0&&String(t)===String(e)}function ye(e){let t=Number(e);return Number.isInteger(t)&&t>0&&String(t)===String(e)}function xe(e){return Ae(e,.25)}function $e(e){return Ae(e,.25)}function Ae(e,t){let r=Number(e);return r>=0&&r%t==0&&String(r)===String(e)}var ze=new Set(["inset","inherit","initial","revert","unset"]),Ce=/^-?(\d+|\.\d+)(.*?)$/g;function je(e,t){return L(e,",").map((e=>{let r=L(e=e.trim()," ").filter((e=>""!==e.trim())),n=null,o=null,i=null;for(let e of r)ze.has(e)||(Ce.test(e)?(null===o?o=e:null===i&&(i=e),Ce.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 Te=/^-?[a-z][a-zA-Z0-9/%._-]*$/,Se=/^-?[a-z][a-zA-Z0-9/%._-]*-\*$/,Ke=["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"],Ee=class{utilities=new u((()=>[]));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 Ve(e,t,r){return b("@property",e,[x("syntax",r?`"${r}"`:'"*"'),x("inherits","false"),...t?[x("initial-value",t)]:[]])}function Ne(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 Oe(e,t){let r=Number(t);return Number.isNaN(r)||(t=100*r+"%"),`oklab(from ${e} l a b / ${t})`}function Fe(e,t,r){if(!t)return e;if("arbitrary"===t.kind)return Ne(e,t.value);let n=r.resolve(t.value,["--opacity"]);return n?Ne(e,n):$e(t.value)?Ne(e,`${t.value}%`):null}function We(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?Fe(n,e.modifier,t):null}var Ue=/(\d+)_(\d+)/g;var De=["number","integer","ratio","percentage"];function _e(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:g(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:g(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:g(t)}}}}}else{if("named"===e.kind&&"word"===n.kind){if(!De.includes(n.value))continue;let t="ratio"===n.value&&"fraction"in e?e.fraction:e.value;if(!t)continue;let r=ie(t,[n.value]);if(null===r)continue;if("ratio"===r){let[e,r]=L(t,"/");if(!be(e)||!be(r))continue}else{if("number"===r&&!xe(t))continue;if("percentage"===r&&!be(t.slice(0,-1)))continue}return{nodes:g(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:g(e.value)};if("dataType"in e&&e.dataType&&e.dataType!==t)continue;if("dataType"in e&&e.dataType)return{nodes:g(e.value)};if(null!==ie(e.value,[t]))return{nodes:g(e.value)}}}}}function Me(e,t,r,n,o=""){let i=!1,a=je(t,(e=>null==r?n(e):e.startsWith("current")?n(Ne(e,r)):((e.startsWith("var(")||r.startsWith("var("))&&(i=!0),n(Oe(e,r)))));function l(e){return o?L(e,",").map((e=>o+e)).join(","):e}return i?[x(e,l(je(t,n))),y("@supports (color: lab(from red l a b))",[x(e,l(a))])]:[x(e,l(a))]}function Be(e,t,r,n,o=""){let i=!1,a=L(t,",").map((e=>je(e,(e=>null==r?n(e):e.startsWith("current")?n(Ne(e,r)):((e.startsWith("var(")||r.startsWith("var("))&&(i=!0),n(Oe(e,r))))))).map((e=>`drop-shadow(${e})`)).join(" ");return i?[x(e,o+L(t,",").map((e=>`drop-shadow(${je(e,n)})`)).join(" ")),y("@supports (color: lab(from red l a b))",[x(e,o+a)])]:[x(e,o+a)]}var Le={"--alpha":function(e,t,r,...n){let[o,i]=L(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 Ne(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=g(i);return function(e,t){h(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),m(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 Ie=new RegExp(Object.keys(Le).map((e=>`${e}\\(`)).join("|"));function Re(e,t){let r=0;return C(e,(e=>{if("declaration"===e.kind&&e.value&&Ie.test(e.value))return r|=8,void(e.value=Pe(e.value,e,t));"at-rule"===e.kind&&("@media"===e.name||"@custom-media"===e.name||"@container"===e.name||"@supports"===e.name)&&Ie.test(e.params)&&(r|=8,e.params=Pe(e.params,e,t))})),r}function Pe(e,t,r){let n=g(e);return h(n,((e,{replaceWith:n})=>{if("function"===e.kind&&e.value in Le){let o=L(m(e.nodes).trim(),",").map((e=>e.trim()));return n(g(Le[e.value](r,t,...o)))}})),m(n)}function qe(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 He=/^\d+\/\d+$/;function Ze(e){let t=new u((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&&He.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)=>qe(e.name,t.name))),function(e){let t=[],r=null,n=new Map,o=new u((()=>[]));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 Ye=/^@?[a-zA-Z0-9_-]*$/,Ge=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=[];C(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);Qe(r,e.nodes),e.nodes=r}),{compounds:Je(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:Je([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 Qe(e,t){C(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([b(e.name,e.params,e.nodes)])),1}))}function et(e){let t=function(e){let t=new Ee;function r(r,n){function*o(t){for(let r of e.keysInNamespaces(t))yield r.replace(Ue,((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():x(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]=L(r.value.fraction,"/");if(!be(e)||!be(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=Fe(r,t.modifier,e)):r=We(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&&xe(t)?`calc(${r} * ${t})`:null},handleNegativeBareValue:({value:t})=>{let r=e.resolve(null,["--spacing"]);return r&&xe(t)?`calc(${r} * -${t})`:null},handle:a}),r(n,(()=>[{values:e.get(["--spacing"])?Ke:[],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=>[x(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})=>be(e)?e:null,themeKeys:["--z-index"],handle:e=>[x("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})=>be(e)?e:null,themeKeys:["--order"],handle:e=>[x("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})=>be(e)?e:null,themeKeys:["--grid-column"],handle:e=>[x("grid-column",e)]}),n("col-span-full",[["grid-column","1 / -1"]]),o("col-span",{handleBareValue:({value:e})=>be(e)?e:null,handle:e=>[x("grid-column",`span ${e} / span ${e}`)]}),n("col-start-auto",[["grid-column-start","auto"]]),o("col-start",{supportsNegative:!0,handleBareValue:({value:e})=>be(e)?e:null,themeKeys:["--grid-column-start"],handle:e=>[x("grid-column-start",e)]}),n("col-end-auto",[["grid-column-end","auto"]]),o("col-end",{supportsNegative:!0,handleBareValue:({value:e})=>be(e)?e:null,themeKeys:["--grid-column-end"],handle:e=>[x("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})=>be(e)?e:null,themeKeys:["--grid-row"],handle:e=>[x("grid-row",e)]}),n("row-span-full",[["grid-row","1 / -1"]]),o("row-span",{themeKeys:[],handleBareValue:({value:e})=>be(e)?e:null,handle:e=>[x("grid-row",`span ${e} / span ${e}`)]}),n("row-start-auto",[["grid-row-start","auto"]]),o("row-start",{supportsNegative:!0,handleBareValue:({value:e})=>be(e)?e:null,themeKeys:["--grid-row-start"],handle:e=>[x("grid-row-start",e)]}),n("row-end-auto",[["grid-row-end","auto"]]),o("row-end",{supportsNegative:!0,handleBareValue:({value:e})=>be(e)?e:null,themeKeys:["--grid-row-end"],handle:e=>[x("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=>[x(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})=>be(e)?e:null,handle:e=>[x("overflow","hidden"),x("display","-webkit-box"),x("-webkit-box-orient","vertical"),x("-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]=L(e,"/");return be(t)&&be(r)?e:null},handle:e=>[x("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=>[x("--tw-sort","size"),x("width",e),x("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=>[x(r,e)]),{supportsFractions:!0});t.static("container",(()=>{let t=[...e.namespace("--breakpoint").values()];t.sort(((e,t)=>te(e,t,"asc")));let r=[x("--tw-sort","--tw-container-component"),x("width","100%")];for(let e of t)r.push(b("@media",`(width >= ${e})`,[x("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:[x("flex",e.value.value)];if(e.value.fraction){let[t,r]=L(e.value.fraction,"/");return be(t)&&be(r)?[x("flex",`calc(${e.value.fraction} * 100%)`)]:void 0}if(be(e.value.value))return e.modifier?void 0:[x("flex",e.value.value)]}})),r("flex",(()=>[{supportsFractions:!0}])),o("shrink",{defaultValue:"1",handleBareValue:({value:e})=>be(e)?e:null,handle:e=>[x("flex-shrink",e)]}),o("grow",{defaultValue:"1",handleBareValue:({value:e})=>be(e)?e:null,handle:e=>[x("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=>[x("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([Ve("--tw-border-spacing-x","0",""),Ve("--tw-border-spacing-y","0","")]);a("border-spacing",["--border-spacing","--spacing"],(e=>[l(),x("--tw-border-spacing-x",e),x("--tw-border-spacing-y",e),x("border-spacing","var(--tw-border-spacing-x) var(--tw-border-spacing-y)")])),a("border-spacing-x",["--border-spacing","--spacing"],(e=>[l(),x("--tw-border-spacing-x",e),x("border-spacing","var(--tw-border-spacing-x) var(--tw-border-spacing-y)")])),a("border-spacing-y",["--border-spacing","--spacing"],(e=>[l(),x("--tw-border-spacing-y",e),x("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=>[x("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=>[x("perspective-origin",e)]}),n("perspective-none",[["perspective","none"]]),o("perspective",{themeKeys:["--perspective"],handle:e=>[x("perspective",e)]});let s=()=>z([Ve("--tw-translate-x","0"),Ve("--tw-translate-y","0"),Ve("--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(),x("--tw-translate-x",e),x("--tw-translate-y",e),x("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(),x(`--tw-translate-${e}`,t),x("translate","var(--tw-translate-x) var(--tw-translate-y)")]),{supportsNegative:!0,supportsFractions:!0});a("translate-z",["--translate","--spacing"],(e=>[s(),x("--tw-translate-z",e),x("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([Ve("--tw-scale-x","1"),Ve("--tw-scale-y","1"),Ve("--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,[x("scale",n)]):(n=e.resolve(r.value.value,["--scale"]),!n&&be(r.value.value)&&(n=`${r.value.value}%`),n?(n=t?`calc(${n} * -1)`:n,[c(),x("--tw-scale-x",n),x("--tw-scale-y",n),x("--tw-scale-z",n),x("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})=>be(e)?`${e}%`:null,handle:t=>[c(),x(`--tw-scale-${e}`,t),x("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??ie(n,["angle","vector"]);if("vector"===e)return[x("rotate",`${n} var(--tw-rotate)`)];if("angle"!==e)return[x("rotate",t?`calc(${n} * -1)`:n)]}else if(n=e.resolve(r.value.value,["--rotate"]),!n&&be(r.value.value)&&(n=`${r.value.value}deg`),!n)return;return[x("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([Ve("--tw-rotate-x"),Ve("--tw-rotate-y"),Ve("--tw-rotate-z"),Ve("--tw-skew-x"),Ve("--tw-skew-y")]);for(let t of["x","y","z"])o(`rotate-${t}`,{supportsNegative:!0,themeKeys:["--rotate"],handleBareValue:({value:e})=>be(e)?`${e}deg`:null,handle:r=>[i(),x(`--tw-rotate-${t}`,`rotate${t.toUpperCase()}(${r})`),x("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})=>be(e)?`${e}deg`:null,handle:t=>[i(),x("--tw-skew-x",`skewX(${t})`),x("--tw-skew-y",`skewY(${t})`),x("transform",e)]}),o("skew-x",{supportsNegative:!0,themeKeys:["--skew"],handleBareValue:({value:e})=>be(e)?`${e}deg`:null,handle:t=>[i(),x("--tw-skew-x",`skewX(${t})`),x("transform",e)]}),o("skew-y",{supportsNegative:!0,themeKeys:["--skew"],handleBareValue:({value:e})=>be(e)?`${e}deg`:null,handle:t=>[i(),x("--tw-skew-y",`skewY(${t})`),x("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(),x("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=>[x("cursor",e)]});for(let e of["auto","none","manipulation"])n(`touch-${e}`,[["touch-action",e]]);let f=()=>z([Ve("--tw-pan-x"),Ve("--tw-pan-y"),Ve("--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([Ve("--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=>[x(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=>[x(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=>[x("list-style-type",e)]}),n("list-image-none",[["list-style-image","none"]]),o("list-image",{themeKeys:["--list-style-image"],handle:e=>[x("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})=>be(e)?e:null,handle:e=>[x("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=>[x("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=>[x("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})=>ye(e)?`repeat(${e}, minmax(0, 1fr))`:null,handle:e=>[x("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})=>ye(e)?`repeat(${e}, minmax(0, 1fr))`:null,handle:e=>[x("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=>[x("gap",e)])),a("gap-x",["--gap","--spacing"],(e=>[x("column-gap",e)])),a("gap-y",["--gap","--spacing"],(e=>[x("row-gap",e)])),a("space-x",["--space","--spacing"],(e=>[z([Ve("--tw-space-x-reverse","0")]),k(":where(& > :not(:last-child))",[x("--tw-sort","row-gap"),x("--tw-space-x-reverse","0"),x("margin-inline-start",`calc(${e} * var(--tw-space-x-reverse))`),x("margin-inline-end",`calc(${e} * calc(1 - var(--tw-space-x-reverse)))`)])]),{supportsNegative:!0}),a("space-y",["--space","--spacing"],(e=>[z([Ve("--tw-space-y-reverse","0")]),k(":where(& > :not(:last-child))",[x("--tw-sort","column-gap"),x("--tw-space-y-reverse","0"),x("margin-block-start",`calc(${e} * var(--tw-space-y-reverse))`),x("margin-block-end",`calc(${e} * calc(1 - var(--tw-space-y-reverse)))`)])]),{supportsNegative:!0}),n("space-x-reverse",[()=>z([Ve("--tw-space-x-reverse","0")]),()=>k(":where(& > :not(:last-child))",[x("--tw-sort","row-gap"),x("--tw-space-x-reverse","1")])]),n("space-y-reverse",[()=>z([Ve("--tw-space-y-reverse","0")]),()=>k(":where(& > :not(:last-child))",[x("--tw-sort","column-gap"),x("--tw-space-y-reverse","1")])]),n("accent-auto",[["accent-color","auto"]]),i("accent",{themeKeys:["--accent-color","--color"],handle:e=>[x("accent-color",e)]}),i("caret",{themeKeys:["--caret-color","--color"],handle:e=>[x("caret-color",e)]}),i("divide",{themeKeys:["--divide-color","--color"],handle:e=>[k(":where(& > :not(:last-child))",[x("--tw-sort","divide-color"),x("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=>x(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??ie(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=Fe(r,t.modifier,e),null===r?void 0:o.color(r)}}{let r=We(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(be(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([Ve("--tw-border-style","solid")]);i("border",{width:e=>[x("border-style","var(--tw-border-style)"),x("border-width",e)],color:e=>[x("border-color",e)]}),i("border-x",{width:e=>[x("border-inline-style","var(--tw-border-style)"),x("border-inline-width",e)],color:e=>[x("border-inline-color",e)]}),i("border-y",{width:e=>[x("border-block-style","var(--tw-border-style)"),x("border-block-width",e)],color:e=>[x("border-block-color",e)]}),i("border-s",{width:e=>[x("border-inline-start-style","var(--tw-border-style)"),x("border-inline-start-width",e)],color:e=>[x("border-inline-start-color",e)]}),i("border-e",{width:e=>[x("border-inline-end-style","var(--tw-border-style)"),x("border-inline-end-width",e)],color:e=>[x("border-inline-end-color",e)]}),i("border-t",{width:e=>[x("border-top-style","var(--tw-border-style)"),x("border-top-width",e)],color:e=>[x("border-top-color",e)]}),i("border-r",{width:e=>[x("border-right-style","var(--tw-border-style)"),x("border-right-width",e)],color:e=>[x("border-right-color",e)]}),i("border-b",{width:e=>[x("border-bottom-style","var(--tw-border-style)"),x("border-bottom-width",e)],color:e=>[x("border-bottom-color",e)]}),i("border-l",{width:e=>[x("border-left-style","var(--tw-border-style)"),x("border-left-width",e)],color:e=>[x("border-left-color",e)]}),o("divide-x",{defaultValue:e.get(["--default-border-width"])??"1px",themeKeys:["--divide-width","--border-width"],handleBareValue:({value:e})=>be(e)?`${e}px`:null,handle:e=>[z([Ve("--tw-divide-x-reverse","0")]),k(":where(& > :not(:last-child))",[x("--tw-sort","divide-x-width"),a(),x("--tw-divide-x-reverse","0"),x("border-inline-style","var(--tw-border-style)"),x("border-inline-start-width",`calc(${e} * var(--tw-divide-x-reverse))`),x("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})=>be(e)?`${e}px`:null,handle:e=>[z([Ve("--tw-divide-y-reverse","0")]),k(":where(& > :not(:last-child))",[x("--tw-sort","divide-y-width"),a(),x("--tw-divide-y-reverse","0"),x("border-bottom-style","var(--tw-border-style)"),x("border-top-style","var(--tw-border-style)"),x("border-top-width",`calc(${e} * var(--tw-divide-y-reverse))`),x("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([Ve("--tw-divide-x-reverse","0")]),()=>k(":where(& > :not(:last-child))",[x("--tw-divide-x-reverse","1")])]),n("divide-y-reverse",[()=>z([Ve("--tw-divide-y-reverse","0")]),()=>k(":where(& > :not(:last-child))",[x("--tw-divide-y-reverse","1")])]);for(let e of["solid","dashed","dotted","double","none"])n(`divide-${e}`,[()=>k(":where(& > :not(:last-child))",[x("--tw-sort","divide-style"),x("--tw-border-style",e),x("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[x("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[x("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??ie(e,["angle"]))?(e=t?`calc(${e} * -1)`:`${e}`,[x("--tw-gradient-position",e),x("background-image",`linear-gradient(var(--tw-gradient-stops,${e}))`)]):t?void 0:[x("--tw-gradient-position",e),x("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(!be(n))return;n=t?`calc(${n}deg * -1)`:`${n}deg`}let o=e(r.modifier);return[x("--tw-gradient-position",`${n}`),y("@supports (background-image: linear-gradient(in lab, red, red))",[x("--tw-gradient-position",`${n} ${o}`)]),x("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[x("--tw-gradient-position",e),x("background-image",`conic-gradient(var(--tw-gradient-stops,${e}))`)]}let n=e(r.modifier);if(!r.value)return[x("--tw-gradient-position",n),x("background-image","conic-gradient(var(--tw-gradient-stops))")];let o=r.value.value;return be(o)?(o=t?`calc(${o}deg * -1)`:`${o}deg`,[x("--tw-gradient-position",`from ${o} ${n}`),x("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[x("--tw-gradient-position",e(t.modifier)),x("background-image","radial-gradient(var(--tw-gradient-stops))")];if("arbitrary"===t.value.kind){if(t.modifier)return;let e=t.value.value;return[x("--tw-gradient-position",e),x("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??ie(r,["image","color","percentage","position","bg-size","length","url"])){case"percentage":case"position":return t.modifier?void 0:[x("background-position",r)];case"bg-size":case"length":case"size":return t.modifier?void 0:[x("background-size",r)];case"image":case"url":return t.modifier?void 0:[x("background-image",r)];default:return r=Fe(r,t.modifier,e),null===r?void 0:[x("background-color",r)]}}{let r=We(t,e,["--background-color","--color"]);if(r)return[x("background-color",r)]}{if(t.modifier)return;let r=e.resolve(t.value.value,["--background-image"]);if(r)return[x("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([Ve("--tw-gradient-position"),Ve("--tw-gradient-from","#0000",""),Ve("--tw-gradient-via","#0000",""),Ve("--tw-gradient-to","#0000",""),Ve("--tw-gradient-stops"),Ve("--tw-gradient-via-stops"),Ve("--tw-gradient-from-position","0%",""),Ve("--tw-gradient-via-position","50%",""),Ve("--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??ie(r,["color","length","percentage"])){case"length":case"percentage":return t.modifier?void 0:o.position(r);default:return r=Fe(r,t.modifier,e),null===r?void 0:o.color(r)}}{let r=We(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]&&be(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(),x("--tw-sort","--tw-gradient-from"),x("--tw-gradient-from",e),x("--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(),x("--tw-gradient-from-position",e)]}),n("via-none",[["--tw-gradient-via-stops","initial"]]),m("via",{color:e=>[h(),x("--tw-sort","--tw-gradient-via"),x("--tw-gradient-via",e),x("--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)"),x("--tw-gradient-stops","var(--tw-gradient-via-stops)")],position:e=>[h(),x("--tw-gradient-via-position",e)]}),m("to",{color:e=>[h(),x("--tw-sort","--tw-gradient-to"),x("--tw-gradient-to",e),x("--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(),x("--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??ie(t,["image","percentage","position","bg-size","length","url"])){case"percentage":case"position":return e.modifier?void 0:[x("mask-position",t)];case"bg-size":case"length":case"size":return[x("mask-size",t)];default:return[x("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[x("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[x("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([Ve("--tw-mask-linear","linear-gradient(#fff, #fff)"),Ve("--tw-mask-radial","linear-gradient(#fff, #fff)"),Ve("--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??ie(r,["length","percentage","color"])){case"color":return r=Fe(r,t.modifier,e),null===r?void 0:o.color(r);case"percentage":return t.modifier||!be(r.slice(0,-1))?void 0:o.position(r);default:return t.modifier?void 0:o.position(r)}}{let r=We(t,e,["--background-color","--color"]);if(r)return o.color(r)}{if(t.modifier)return;let r=ie(t.value.value,["number","percentage"]);if(!r)return;switch(r){case"number":{let r=e.resolve(null,["--spacing"]);return r&&xe(t.value.value)?o.position(`calc(${r} * ${t.value.value})`):void 0}case"percentage":return be(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"])?Ke:[]},{values:["current","inherit","transparent"],valueThemeKeys:["--background-color","--color"],modifiers:Array.from({length:21},((e,t)=>""+5*t))}]))}let w=()=>z([Ve("--tw-mask-left","linear-gradient(#fff, #fff)"),Ve("--tw-mask-right","linear-gradient(#fff, #fff)"),Ve("--tw-mask-bottom","linear-gradient(#fff, #fff)"),Ve("--tw-mask-top","linear-gradient(#fff, #fff)")]);function $(e,t,r){v(e,{color(e){let n=[g(),w(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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(x(`--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([Ve(`--tw-mask-${o}-from-position`,"0%"),Ve(`--tw-mask-${o}-to-position`,"100%"),Ve(`--tw-mask-${o}-from-color`,"black"),Ve(`--tw-mask-${o}-to-color`,"transparent")])),n.push(x(`--tw-mask-${o}-${t}-color`,e)));return n},position(e){let n=[g(),w(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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(x(`--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([Ve(`--tw-mask-${o}-from-position`,"0%"),Ve(`--tw-mask-${o}-to-position`,"100%"),Ve(`--tw-mask-${o}-from-color`,"black"),Ve(`--tw-mask-${o}-to-color`,"transparent")])),n.push(x(`--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([Ve("--tw-mask-linear-position","0deg"),Ve("--tw-mask-linear-from-position","0%"),Ve("--tw-mask-linear-to-position","100%"),Ve("--tw-mask-linear-from-color","black"),Ve("--tw-mask-linear-to-color","transparent")]);o("mask-linear",{defaultValue:null,supportsNegative:!0,supportsFractions:!1,handleBareValue:e=>be(e.value)?`calc(1deg * ${e.value})`:null,handleNegativeBareValue:e=>be(e.value)?`calc(1deg * -${e.value})`:null,handle:e=>[g(),A(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops, var(--tw-mask-linear-position)))"),x("--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(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops))"),x("--tw-mask-linear-from-color",e)],position:e=>[g(),A(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops))"),x("--tw-mask-linear-from-position",e)]}),v("mask-linear-to",{color:e=>[g(),A(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops))"),x("--tw-mask-linear-to-color",e)],position:e=>[g(),A(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-linear","linear-gradient(var(--tw-mask-linear-stops))"),x("--tw-mask-linear-to-position",e)]});let C=()=>z([Ve("--tw-mask-radial-from-position","0%"),Ve("--tw-mask-radial-to-position","100%"),Ve("--tw-mask-radial-from-color","black"),Ve("--tw-mask-radial-to-color","transparent"),Ve("--tw-mask-radial-shape","ellipse"),Ve("--tw-mask-radial-size","farthest-corner"),Ve("--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=>[x("--tw-mask-radial-position",e)]}),o("mask-radial",{defaultValue:null,supportsNegative:!1,supportsFractions:!1,handle:e=>[g(),C(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops, var(--tw-mask-radial-size)))"),x("--tw-mask-radial-size",e)]}),v("mask-radial-from",{color:e=>[g(),C(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops))"),x("--tw-mask-radial-from-color",e)],position:e=>[g(),C(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops))"),x("--tw-mask-radial-from-position",e)]}),v("mask-radial-to",{color:e=>[g(),C(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops))"),x("--tw-mask-radial-to-color",e)],position:e=>[g(),C(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-radial","radial-gradient(var(--tw-mask-radial-stops))"),x("--tw-mask-radial-to-position",e)]});let j=()=>z([Ve("--tw-mask-conic-position","0deg"),Ve("--tw-mask-conic-from-position","0%"),Ve("--tw-mask-conic-to-position","100%"),Ve("--tw-mask-conic-from-color","black"),Ve("--tw-mask-conic-to-color","transparent")]);o("mask-conic",{defaultValue:null,supportsNegative:!0,supportsFractions:!1,handleBareValue:e=>be(e.value)?`calc(1deg * ${e.value})`:null,handleNegativeBareValue:e=>be(e.value)?`calc(1deg * -${e.value})`:null,handle:e=>[g(),j(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops, var(--tw-mask-conic-position)))"),x("--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(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops))"),x("--tw-mask-conic-from-color",e)],position:e=>[g(),j(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops))"),x("--tw-mask-conic-from-position",e)]}),v("mask-conic-to",{color:e=>[g(),j(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops))"),x("--tw-mask-conic-to-color",e)],position:e=>[g(),j(),x("mask-image","var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic)"),x("mask-composite","intersect"),x("--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)"),x("--tw-mask-conic","conic-gradient(var(--tw-mask-conic-stops))"),x("--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=Fe(t.value.value,t.modifier,e);return null===r?void 0:[x("fill",r)]}let r=We(t,e,["--fill","--color"]);return r?[x("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??ie(r,["color","number","length","percentage"])){case"number":case"length":case"percentage":return t.modifier?void 0:[x("stroke-width",r)];default:return r=Fe(t.value.value,t.modifier,e),null===r?void 0:[x("stroke",r)]}}{let r=We(t,e,["--stroke","--color"]);if(r)return[x("stroke",r)]}{let r=e.resolve(t.value.value,["--stroke-width"]);if(r)return[x("stroke-width",r)];if(be(t.value.value))return[x("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=>[x("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=>[x(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=>[x("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=>[x("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??ie(e,["number","generic-name","family-name"])){case"generic-name":case"family-name":return[x("font-family",e)];default:return[z([Ve("--tw-font-weight")]),x("--tw-font-weight",e),x("font-weight",e)]}}{let r=e.resolveWith(t.value.value,["--font"],["--font-feature-settings","--font-variation-settings"]);if(r){let[e,t={}]=r;return[x("font-family",e),x("font-feature-settings",t["--font-feature-settings"]),x("font-variation-settings",t["--font-variation-settings"])]}}{let r=e.resolve(t.value.value,["--font-weight"]);if(r)return[z([Ve("--tw-font-weight")]),x("--tw-font-weight",r),x("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!be(t)||Number.isNaN(t)||t<50||t>200?null:e},handle:e=>[x("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=>[k("&::placeholder",[x("--tw-sort","placeholder-color"),x("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??ie(r,["color","length","percentage"])){case"length":case"percentage":return t.modifier?void 0:[x("text-decoration-thickness",r)];default:return r=Fe(r,t.modifier,e),null===r?void 0:[x("text-decoration-color",r)]}}{let r=e.resolve(t.value.value,["--text-decoration-thickness"]);if(r)return t.modifier?void 0:[x("text-decoration-thickness",r)];if(be(t.value.value))return t.modifier?void 0:[x("text-decoration-thickness",`${t.value.value}px`)]}{let r=We(t,e,["--text-decoration-color","--color"]);if(r)return[x("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=>[x("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([Ve("--tw-blur"),Ve("--tw-brightness"),Ve("--tw-contrast"),Ve("--tw-grayscale"),Ve("--tw-hue-rotate"),Ve("--tw-invert"),Ve("--tw-opacity"),Ve("--tw-saturate"),Ve("--tw-sepia"),Ve("--tw-drop-shadow"),Ve("--tw-drop-shadow-color"),Ve("--tw-drop-shadow-alpha","100%",""),Ve("--tw-drop-shadow-size")]),s=()=>z([Ve("--tw-backdrop-blur"),Ve("--tw-backdrop-brightness"),Ve("--tw-backdrop-contrast"),Ve("--tw-backdrop-grayscale"),Ve("--tw-backdrop-hue-rotate"),Ve("--tw-backdrop-invert"),Ve("--tw-backdrop-opacity"),Ve("--tw-backdrop-saturate"),Ve("--tw-backdrop-sepia")]);t.functional("filter",(e=>{if(!e.modifier){if(null===e.value)return[l(),x("filter",i)];if("arbitrary"===e.value.kind)return[x("filter",e.value.value)];if("none"===e.value.value)return[x("filter","none")]}})),t.functional("backdrop-filter",(e=>{if(!e.modifier){if(null===e.value)return[s(),x("-webkit-backdrop-filter",a),x("backdrop-filter",a)];if("arbitrary"===e.value.kind)return[x("-webkit-backdrop-filter",e.value.value),x("backdrop-filter",e.value.value)];if("none"===e.value.value)return[x("-webkit-backdrop-filter","none"),x("backdrop-filter","none")]}})),o("blur",{themeKeys:["--blur"],handle:e=>[l(),x("--tw-blur",`blur(${e})`),x("filter",i)]}),n("blur-none",[l,["--tw-blur"," "],["filter",i]]),o("backdrop-blur",{themeKeys:["--backdrop-blur","--blur"],handle:e=>[s(),x("--tw-backdrop-blur",`blur(${e})`),x("-webkit-backdrop-filter",a),x("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})=>be(e)?`${e}%`:null,handle:e=>[l(),x("--tw-brightness",`brightness(${e})`),x("filter",i)]}),o("backdrop-brightness",{themeKeys:["--backdrop-brightness","--brightness"],handleBareValue:({value:e})=>be(e)?`${e}%`:null,handle:e=>[s(),x("--tw-backdrop-brightness",`brightness(${e})`),x("-webkit-backdrop-filter",a),x("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})=>be(e)?`${e}%`:null,handle:e=>[l(),x("--tw-contrast",`contrast(${e})`),x("filter",i)]}),o("backdrop-contrast",{themeKeys:["--backdrop-contrast","--contrast"],handleBareValue:({value:e})=>be(e)?`${e}%`:null,handle:e=>[s(),x("--tw-backdrop-contrast",`contrast(${e})`),x("-webkit-backdrop-filter",a),x("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})=>be(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[l(),x("--tw-grayscale",`grayscale(${e})`),x("filter",i)]}),o("backdrop-grayscale",{themeKeys:["--backdrop-grayscale","--grayscale"],handleBareValue:({value:e})=>be(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[s(),x("--tw-backdrop-grayscale",`grayscale(${e})`),x("-webkit-backdrop-filter",a),x("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})=>be(e)?`${e}deg`:null,handle:e=>[l(),x("--tw-hue-rotate",`hue-rotate(${e})`),x("filter",i)]}),o("backdrop-hue-rotate",{supportsNegative:!0,themeKeys:["--backdrop-hue-rotate","--hue-rotate"],handleBareValue:({value:e})=>be(e)?`${e}deg`:null,handle:e=>[s(),x("--tw-backdrop-hue-rotate",`hue-rotate(${e})`),x("-webkit-backdrop-filter",a),x("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})=>be(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[l(),x("--tw-invert",`invert(${e})`),x("filter",i)]}),o("backdrop-invert",{themeKeys:["--backdrop-invert","--invert"],handleBareValue:({value:e})=>be(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[s(),x("--tw-backdrop-invert",`invert(${e})`),x("-webkit-backdrop-filter",a),x("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})=>be(e)?`${e}%`:null,handle:e=>[l(),x("--tw-saturate",`saturate(${e})`),x("filter",i)]}),o("backdrop-saturate",{themeKeys:["--backdrop-saturate","--saturate"],handleBareValue:({value:e})=>be(e)?`${e}%`:null,handle:e=>[s(),x("--tw-backdrop-saturate",`saturate(${e})`),x("-webkit-backdrop-filter",a),x("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})=>be(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[l(),x("--tw-sepia",`sepia(${e})`),x("filter",i)]}),o("backdrop-sepia",{themeKeys:["--backdrop-sepia","--sepia"],handleBareValue:({value:e})=>be(e)?`${e}%`:null,defaultValue:"100%",handle:e=>[s(),x("--tw-backdrop-sepia",`sepia(${e})`),x("-webkit-backdrop-filter",a),x("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:be(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(),x("--tw-drop-shadow-alpha",r),...Be("--tw-drop-shadow-size",t,r,(e=>`var(--tw-drop-shadow-color, ${e})`)),x("--tw-drop-shadow",L(n,",").map((e=>`drop-shadow(${e})`)).join(" ")),x("filter",i)]}if("arbitrary"===t.value.kind){let n=t.value.value;return"color"===(t.value.dataType??ie(n,["color"]))?(n=Fe(n,t.modifier,e),null===n?void 0:[l(),x("--tw-drop-shadow-color",Ne(n,"var(--tw-drop-shadow-alpha)")),x("--tw-drop-shadow","var(--tw-drop-shadow-size)")]):t.modifier&&!r?void 0:[l(),x("--tw-drop-shadow-alpha",r),...Be("--tw-drop-shadow-size",n,r,(e=>`var(--tw-drop-shadow-color, ${e})`)),x("--tw-drop-shadow","var(--tw-drop-shadow-size)"),x("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(),x("--tw-drop-shadow-alpha",r),...Be("--tw-drop-shadow-size",n,r,(e=>`var(--tw-drop-shadow-color, ${e})`)),x("--tw-drop-shadow","var(--tw-drop-shadow-size)"),x("filter",i)]:[l(),x("--tw-drop-shadow-alpha",r),...Be("--tw-drop-shadow-size",n,r,(e=>`var(--tw-drop-shadow-color, ${e})`)),x("--tw-drop-shadow",L(o,",").map((e=>`drop-shadow(${e})`)).join(" ")),x("filter",i)]}{let r=We(t,e,["--drop-shadow-color","--color"]);if(r)return"inherit"===r?[l(),x("--tw-drop-shadow-color","inherit"),x("--tw-drop-shadow","var(--tw-drop-shadow-size)")]:[l(),x("--tw-drop-shadow-color",Ne(r,"var(--tw-drop-shadow-alpha)")),x("--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})=>$e(e)?`${e}%`:null,handle:e=>[s(),x("--tw-backdrop-opacity",`opacity(${e})`),x("-webkit-backdrop-filter",a),x("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=>[x("transition-property",e),x("transition-timing-function",i),x("transition-duration",a)]}),n("transition-discrete",[["transition-behavior","allow-discrete"]]),n("transition-normal",[["transition-behavior","normal"]]),o("delay",{handleBareValue:({value:e})=>be(e)?`${e}ms`:null,themeKeys:["--transition-delay"],handle:e=>[x("transition-delay",e)]});{let r=()=>z([Ve("--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&&be(t.value.value)&&(n=`${t.value.value}ms`)),null!==n?[r(),x("--tw-duration",n),x("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([Ve("--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(),x("--tw-ease",t),x("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=>[x("will-change",e)]}),n("content-none",[["--tw-content","none"],["content","none"]]),o("content",{themeKeys:[],handle:e=>[z([Ve("--tw-content",'""')]),x("--tw-content",e),x("content","var(--tw-content)")]});{let e="var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)",t=()=>z([Ve("--tw-contain-size"),Ve("--tw-contain-layout"),Ve("--tw-contain-paint"),Ve("--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=>[x("contain",e)]})}n("forced-color-adjust-none",[["forced-color-adjust","none"]]),n("forced-color-adjust-auto",[["forced-color-adjust","auto"]]),n("leading-none",[()=>z([Ve("--tw-leading")]),["--tw-leading","1"],["line-height","1"]]),a("leading",["--leading","--spacing"],(e=>[z([Ve("--tw-leading")]),x("--tw-leading",e),x("line-height",e)])),o("tracking",{supportsNegative:!0,themeKeys:["--tracking"],handle:e=>[z([Ve("--tw-tracking")]),x("--tw-tracking",e),x("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([Ve("--tw-ordinal"),Ve("--tw-slashed-zero"),Ve("--tw-numeric-figure"),Ve("--tw-numeric-spacing"),Ve("--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([Ve("--tw-outline-style","solid")]);t.static("outline-hidden",(()=>[x("--tw-outline-style","none"),x("outline-style","none"),b("@media","(forced-colors: active)",[x("outline","2px solid transparent"),x("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(),x("outline-style","var(--tw-outline-style)"),x("outline-width",r)]}if("arbitrary"===t.value.kind){let r=t.value.value;switch(t.value.dataType??ie(r,["color","length","number","percentage"])){case"length":case"number":case"percentage":return t.modifier?void 0:[i(),x("outline-style","var(--tw-outline-style)"),x("outline-width",r)];default:return r=Fe(r,t.modifier,e),null===r?void 0:[x("outline-color",r)]}}{let r=We(t,e,["--outline-color","--color"]);if(r)return[x("outline-color",r)]}{if(t.modifier)return;let r=e.resolve(t.value.value,["--outline-width"]);if(r)return[i(),x("outline-style","var(--tw-outline-style)"),x("outline-width",r)];if(be(t.value.value))return[i(),x("outline-style","var(--tw-outline-style)"),x("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})=>be(e)?`${e}px`:null,handle:e=>[x("outline-offset",e)]}),r("outline-offset",(()=>[{supportsNegative:!0,values:["0","1","2","4","8"],valueThemeKeys:["--outline-offset"]}]))}o("opacity",{themeKeys:["--opacity"],handleBareValue:({value:e})=>$e(e)?`${e}%`:null,handle:e=>[x("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})=>be(e)?`${e}px`:null,handle:e=>[x("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??ie(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&&xe(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?[x("font-size",r),x("line-height",n)]:null}return[x("font-size",r)];default:return r=Fe(r,t.modifier,e),null===r?void 0:[x("color",r)]}}{let r=We(t,e,["--text-color","--color"]);if(r)return[x("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&&xe(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=[x("font-size",n)];return r&&o.push(x("line-height",r)),o}return"string"==typeof o?[x("font-size",n),x("line-height",o)]:[x("font-size",n),x("line-height",o["--line-height"]?`var(--tw-leading, ${o["--line-height"]})`:void 0),x("letter-spacing",o["--letter-spacing"]?`var(--tw-tracking, ${o["--letter-spacing"]})`:void 0),x("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([Ve("--tw-text-shadow-color"),Ve("--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:be(t.modifier.value)&&(r=`${t.modifier.value}%`)),!t.value){let t=e.get(["--text-shadow"]);return null===t?void 0:[T(),x("--tw-text-shadow-alpha",r),...Me("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??ie(n,["color"]))?(n=Fe(n,t.modifier,e),null===n?void 0:[T(),x("--tw-text-shadow-color",Ne(n,"var(--tw-text-shadow-alpha)"))]):[T(),x("--tw-text-shadow-alpha",r),...Me("text-shadow",n,r,(e=>`var(--tw-text-shadow-color, ${e})`))]}switch(t.value.value){case"none":return t.modifier?void 0:[T(),x("text-shadow","none")];case"inherit":return t.modifier?void 0:[T(),x("--tw-text-shadow-color","inherit")]}{let n=e.get([`--text-shadow-${t.value.value}`]);if(n)return[T(),x("--tw-text-shadow-alpha",r),...Me("text-shadow",n,r,(e=>`var(--tw-text-shadow-color, ${e})`))]}{let r=We(t,e,["--text-shadow-color","--color"]);if(r)return[T(),x("--tw-text-shadow-color",Ne(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([Ve("--tw-shadow",l),Ve("--tw-shadow-color"),Ve("--tw-shadow-alpha","100%",""),Ve("--tw-inset-shadow",l),Ve("--tw-inset-shadow-color"),Ve("--tw-inset-shadow-alpha","100%",""),Ve("--tw-ring-color"),Ve("--tw-ring-shadow",l),Ve("--tw-inset-ring-color"),Ve("--tw-inset-ring-shadow",l),Ve("--tw-ring-inset"),Ve("--tw-ring-offset-width","0px",""),Ve("--tw-ring-offset-color","#fff"),Ve("--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:be(t.modifier.value)&&(r=`${t.modifier.value}%`)),!t.value){let t=e.get(["--shadow"]);return null===t?void 0:[s(),x("--tw-shadow-alpha",r),...Me("--tw-shadow",t,r,(e=>`var(--tw-shadow-color, ${e})`)),x("box-shadow",a)]}if("arbitrary"===t.value.kind){let n=t.value.value;return"color"===(t.value.dataType??ie(n,["color"]))?(n=Fe(n,t.modifier,e),null===n?void 0:[s(),x("--tw-shadow-color",Ne(n,"var(--tw-shadow-alpha)"))]):[s(),x("--tw-shadow-alpha",r),...Me("--tw-shadow",n,r,(e=>`var(--tw-shadow-color, ${e})`)),x("box-shadow",a)]}switch(t.value.value){case"none":return t.modifier?void 0:[s(),x("--tw-shadow",l),x("box-shadow",a)];case"inherit":return t.modifier?void 0:[s(),x("--tw-shadow-color","inherit")]}{let n=e.get([`--shadow-${t.value.value}`]);if(n)return[s(),x("--tw-shadow-alpha",r),...Me("--tw-shadow",n,r,(e=>`var(--tw-shadow-color, ${e})`)),x("box-shadow",a)]}{let r=We(t,e,["--box-shadow-color","--color"]);if(r)return[s(),x("--tw-shadow-color",Ne(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:be(t.modifier.value)&&(r=`${t.modifier.value}%`)),!t.value){let t=e.get(["--inset-shadow"]);return null===t?void 0:[s(),x("--tw-inset-shadow-alpha",r),...Me("--tw-inset-shadow",t,r,(e=>`var(--tw-inset-shadow-color, ${e})`)),x("box-shadow",a)]}if("arbitrary"===t.value.kind){let n=t.value.value;return"color"===(t.value.dataType??ie(n,["color"]))?(n=Fe(n,t.modifier,e),null===n?void 0:[s(),x("--tw-inset-shadow-color",Ne(n,"var(--tw-inset-shadow-alpha)"))]):[s(),x("--tw-inset-shadow-alpha",r),...Me("--tw-inset-shadow",n,r,(e=>`var(--tw-inset-shadow-color, ${e})`),"inset "),x("box-shadow",a)]}switch(t.value.value){case"none":return t.modifier?void 0:[s(),x("--tw-inset-shadow",l),x("box-shadow",a)];case"inherit":return t.modifier?void 0:[s(),x("--tw-inset-shadow-color","inherit")]}{let n=e.get([`--inset-shadow-${t.value.value}`]);if(n)return[s(),x("--tw-inset-shadow-alpha",r),...Me("--tw-inset-shadow",n,r,(e=>`var(--tw-inset-shadow-color, ${e})`)),x("box-shadow",a)]}{let r=We(t,e,["--box-shadow-color","--color"]);if(r)return[s(),x("--tw-inset-shadow-color",Ne(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(),x("--tw-ring-shadow",o(r)),x("box-shadow",a)]}if("arbitrary"===t.value.kind){let r=t.value.value;return"length"===(t.value.dataType??ie(r,["color","length"]))?t.modifier?void 0:[s(),x("--tw-ring-shadow",o(r)),x("box-shadow",a)]:(r=Fe(r,t.modifier,e),null===r?void 0:[x("--tw-ring-color",r)])}{let r=We(t,e,["--ring-color","--color"]);if(r)return[x("--tw-ring-color",r)]}{if(t.modifier)return;let r=e.resolve(t.value.value,["--ring-width"]);if(null===r&&be(t.value.value)&&(r=`${t.value.value}px`),r)return[s(),x("--tw-ring-shadow",o(r)),x("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(),x("--tw-inset-ring-shadow",i("1px")),x("box-shadow",a)];if("arbitrary"===t.value.kind){let r=t.value.value;return"length"===(t.value.dataType??ie(r,["color","length"]))?t.modifier?void 0:[s(),x("--tw-inset-ring-shadow",i(r)),x("box-shadow",a)]:(r=Fe(r,t.modifier,e),null===r?void 0:[x("--tw-inset-ring-color",r)])}{let r=We(t,e,["--ring-color","--color"]);if(r)return[x("--tw-inset-ring-color",r)]}{if(t.modifier)return;let r=e.resolve(t.value.value,["--ring-width"]);if(null===r&&be(t.value.value)&&(r=`${t.value.value}px`),r)return[s(),x("--tw-inset-ring-shadow",i(r)),x("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??ie(r,["color","length"]))?t.modifier?void 0:[x("--tw-ring-offset-width",r),x("--tw-ring-offset-shadow",u)]:(r=Fe(r,t.modifier,e),null===r?void 0:[x("--tw-ring-offset-color",r)])}{let r=e.resolve(t.value.value,["--ring-offset-width"]);if(r)return t.modifier?void 0:[x("--tw-ring-offset-width",r),x("--tw-ring-offset-shadow",u)];if(be(t.value.value))return t.modifier?void 0:[x("--tw-ring-offset-width",`${t.value.value}px`),x("--tw-ring-offset-shadow",u)]}{let r=We(t,e,["--ring-offset-color","--color"]);if(r)return[x("--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?[x("container-type",t),x("container-name",e.modifier.value)]:[x("container-type",t)]})),r("@container",(()=>[{values:["normal"],valueThemeKeys:[],hasDefaultValue:!0}])),t}(e),r=function(e){let t=new Ge;function r(e,r,{compounds:n}={}){n=n??Je(r),t.static(e,(e=>{e.nodes=r.map((t=>y(t,e.nodes)))}),{compounds:n})}function n(e,t){return t.map((t=>{let r=L(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=L(e.params,",");return r.length>1?null:(r=n(e.name,r),b(e.name,r.join(", ")))}return null}function a(e){return e.includes("::")?null:`&:not(${L(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 C([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(k(t,[]))}for(let e of o){let t=i(e);if(!t)return r=!1,2;s.push(t)}return Object.assign(e,k("&",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 C([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);L(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 C([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);L(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([b("@property","--tw-content",[x("syntax",'"*"'),x("initial-value",'""'),x("inherits","false")])])};t.static("before",(t=>{t.nodes=[k("&::before",[e(),x("content","var(--tw-content)"),...t.nodes])]}),{compounds:0}),t.static("after",(t=>{t.nodes=[k("&::after",[e(),x("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=[k("&:hover",[b("@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 C([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 C([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=[k(`&[aria-${Xe(t.value.value)}]`,e.nodes)]:e.nodes=[k(`&[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=[k(`&[data-${Xe(t.value.value)}]`,e.nodes)]})),t.functional("nth",((e,t)=>{if(!t.value||t.modifier||"named"===t.value.kind&&!be(t.value.value))return null;e.nodes=[k(`&:nth-child(${t.value.value})`,e.nodes)]})),t.functional("nth-last",((e,t)=>{if(!t.value||t.modifier||"named"===t.value.kind&&!be(t.value.value))return null;e.nodes=[k(`&:nth-last-child(${t.value.value})`,e.nodes)]})),t.functional("nth-of-type",((e,t)=>{if(!t.value||t.modifier||"named"===t.value.kind&&!be(t.value.value))return null;e.nodes=[k(`&: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&&!be(t.value.value))return null;e.nodes=[k(`&: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=[b("@supports",t,e.nodes)]}else r.includes(":")||(r=`${r}: var(--tw)`),("("!==r[0]||")"!==r[r.length-1])&&(r=`(${r})`),e.nodes=[b("@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:te(o,i,r)};{let n=e.namespace("--breakpoint"),o=new u((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=[b("@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=[b("@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=[b("@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 u((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=[b("@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=[b("@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=[b("@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 u((e=>function(e,t){if("["===e[0]&&"]"===e[e.length-1]){if("@"===e[1]&&e.includes("&"))return null;let t=F(e.slice(1,-1));if(!M(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]=L(e,"/");if(o)return null;let i=R(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:I(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=F(r.slice(1,-1));return M(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=F(r.slice(1,-1));return M(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:I(n);return null!==n&&null===i?null:{kind:"compound",root:e,modifier:i,variant:o}}}}return null}(e,s))),o=new u((e=>Array.from(function*(e,t){let r=L(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]=L(n,"/");if(s)return;let c,u=null===l?null:I(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=L(n,":"),i=null;if(2===o.length&&(i=o[0],n=o[1]),"-"!==n[0]||"-"!==n[1]||!M(n))return;c=[[r,null===i?`[var(${n})]`:`[${i}:var(${n})]`]]}else c=R(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=F(r.slice(e+1,-1));if(!M(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=F(a.slice(r+1));if(!M(l))return;yield{kind:"arbitrary",property:n,value:l,modifier:u,variants:o,important:i,raw:e}}}(e,s)))),a=new u((e=>{let t=function(e,t){let r=function(e,t){if("arbitrary"===e.kind){let r=e.value;return e.modifier&&(r=Fe(r,e.modifier,t.theme)),null===r?[]:[[x(e.property,r)]]}let r=t.utilities.get(e.root)??[],n=[],o=r.filter((e=>!ot(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=>ot(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=[],o=`.${i(e.raw)}`;for(let i of r){let r=at(i);(e.important||t.important)&&it(i);let a={kind:"rule",selector:o,nodes:i};for(let r of e.variants)if(null===nt(a,r,t.variants))return[];n.push({node:a,propertySort:r})}return n}(e,s);try{Re(t.map((({node:e})=>e)),s)}catch{return[]}return t})),l=new u((t=>{for(let r of v(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}=rt([r],this,{onInvalidCandidate(){e=!0}});n=T(n,s,0),0===n.length||e?t.push(null):t.push(S(n))}return t},getClassOrder(e){return function(e,t){let{astNodes:r,nodeSorting:n}=rt(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 Ze(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=k(".__placeholder__",[]);if(null===nt(l,a,e.variants))return[];let s=[];return j(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=>o.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(q(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=X(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}:${Z(r)}${i}`:n+=`-${o}${Z(r)}${i}`}}else"named"===t.value.kind&&(n+=`-${t.value.value}`);return"arbitrary"===t.kind&&(n+=`[${t.property}:${Z(t.value)}]`),("arbitrary"===t.kind||"functional"===t.kind)&&(n+=P(t.modifier)),t.important&&(n+="!"),r.push(n),r.join(":")}(s,e),printVariant:e=>q(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?Ne(i,o):i},trackUsedVariables(e){l.get(e)}};return s}var tt=["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 rt(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 C(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 ot(e){let t=e.options?.types??[];return t.length>1&&t.includes("any")}function it(e){for(let t of e)"at-root"!==t.kind&&("declaration"===t.kind?t.important=!0:("rule"===t.kind||"at-rule"===t.kind)&&it(t.nodes))}function at(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=tt.indexOf(e.value??"");if(-1!==r){t.add(r),o=!0;continue}}let n=tt.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 lt(e,t){let r=0,n=y("&",e),o=new Set,i=new u((()=>new Set)),a=new u((()=>new Set));C([n],((e,{parent:n,path:l})=>{if("at-rule"===e.kind){if("@keyframes"===e.name)return C(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 C(e.nodes,(r=>{if("at-rule"===r.kind&&"@apply"===r.name){o.add(e);for(let n of st(r,t))i.get(e).add(n)}}))}if("@apply"===e.name){if(null===n)return;r|=1,o.add(n);for(let r of st(e,t))for(let t of l)t!==e&&o.has(t)&&i.get(t).add(r)}}}));let l=new Set,s=[],c=new Set;function d(e,r=[]){if(!l.has(e)){if(c.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&&C(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${S([e])}\nRelies on:\n\n${S([n])}`)}c.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),c.delete(e),s.push(e)}}for(let e of o)d(e);for(let e of s)"nodes"in e&&C(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=rt(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=L(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 C([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,C([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*st(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 ct(e,r,n,o=0,i=!1){let a=0,l=[];return C(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 ct(l,a.base,n,o+1,i),h.nodes=function(e,t,r,n,o){let i=t;if(null!==r){let t=b("@layer",r,i);t.src=e.src,i=[t]}if(null!==n){let t=b("@media",n,i);t.src=e.src,i=[t]}if(null!==o){let t=b("@supports","("===o[0]?o:`(${o})`,i);t.src=e.src,i=[t]}return i}(e,[A({base:a.base},l)],d,f,p)})()),s(h),1}})),l.length>0&&await Promise.all(l),a}function ut(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 dt(e,{theme:t},r){for(let t of r){let r=pt([t]);r&&e.theme.clearNamespace(`--${r}`,4)}for(let[r,n]of function(e){let t=[];return ht(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=pt(r);t&&e.theme.add(`--${t}`,""+n,7)}if(Object.hasOwn(t,"fontFamily")){let r=5;{let n=ut(t.fontFamily.sans);n&&e.theme.hasDefault("--font-sans")&&(e.theme.add("--default-font-family",n,r),e.theme.add("--default-font-feature-settings",ut(t.fontFamily.sans,"fontFeatureSettings")??"normal",r),e.theme.add("--default-font-variation-settings",ut(t.fontFamily.sans,"fontVariationSettings")??"normal",r))}{let n=ut(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",ut(t.fontFamily.mono,"fontFeatureSettings")??"normal",r),e.theme.add("--default-mono-font-variation-settings",ut(t.fontFamily.mono,"fontVariationSettings")??"normal",r))}}return t}var ft=/^[a-zA-Z0-9-_%/\.]+$/;function pt(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(!ft.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 ht(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===ht(o,i,r))return 2}}}function mt(e){let t=[];for(let r of L(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 gt(e){if("[object Object]"!==Object.prototype.toString.call(e))return!1;let t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}function vt(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:gt(e[t])&>(o[t])?e[t]=vt({},[e[t],o[t]],r,n):e[t]=o[t],n.pop()}return e}function wt(e,t,r){return function(n,o){let i=n.lastIndexOf("/"),l=null;-1!==i&&(l=n.slice(i+1).trim(),n=n.slice(0,i).trim());let s=(()=>{let o=mt(n),[i,l]=function(e,t){if(1===t.length&&t[0].startsWith("--"))return[e.get([t[0]]),e.getOptions(t[0])];let r=pt(t),n=new Map,o=new u((()=>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={},c={};for(let[e,t]of n)bt(s,[e??"DEFAULT"],t);for(let[e,t]of a)bt(c,[e??"DEFAULT"],t);return"DEFAULT"===t[t.length-1]?[s?.DEFAULT??null,c.DEFAULT??0]:"DEFAULT"in s&&1===Object.keys(s).length?[s.DEFAULT,c.DEFAULT??0]:(s.__CSS_VALUES__=c,[s,c])}(e.theme,o),s=r(kt(t()??{},o)??null);if("string"==typeof s&&(s=s.replace("","1")),"object"!=typeof i)return"object"!=typeof l&&4&l?s??i:i;if(null!==s&&"object"==typeof s&&!Array.isArray(s)){let e=vt({},[s],((e,t)=>t));if(null===i&&Object.hasOwn(s,"__CSS_VALUES__")){let t={};for(let r in s.__CSS_VALUES__)t[r]=s[r],delete e[r];i=t}for(let t in i)"__CSS_VALUES__"!==t&&(4&s?.__CSS_VALUES__?.[t]&&void 0!==kt(e,t.split("-"))||(e[a(t)]=i[t]));return e}if(Array.isArray(i)&&Array.isArray(l)&&Array.isArray(s)){let e=i[0],t=i[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 i??s})();return l&&"string"==typeof s&&(s=Ne(s,l)),s??o}}function kt(e,t){for(let r=0;r0){let e=$t(i);o?o.nodes.push(e):r.push(e),i=""}let n=a,l=a+1;for(;l0){let t=$t(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=$t(i);o?o.nodes.push(e):r.push(e)}i=String.fromCharCode(l);break;case 91:{if(i.length>0){let e=$t(i);o?o.nodes.push(e):r.push(e)}i="";let n=a,l=0;for(let r=a+1;r0&&r.push($t(i)),r}var St=/^[a-z@][a-zA-Z0-9/%._-]*$/;function Kt({designSystem:e,ast:t,resolvedConfig:r,featuresRef:n,referenceMode:o}){let i={addBase(r){if(o)return;let i=Et(r);n.current|=Re(i,e),t.push(b("@layer","base",i))},addVariant(t,r){if(!Ye.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=Vt(r,e.nodes)}),{compounds:Je("string"==typeof r?[r]:r)}):"object"==typeof r&&e.variants.fromAst(t,Et(r))},matchVariant(t,r,n){function o(e,t,n){return Vt(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])=>L(e,",").map((e=>[e.trim(),t]))));let a=new u((()=>[]));for(let[e,r]of i){if(e.startsWith("@keyframes ")){o||t.push(y(e,Et(r)));continue}let n=Tt(e),i=!1;if(Ct(n,(e=>{if("selector"===e.kind&&"."===e.value[0]&&St.test(e.value.slice(1))){let t=e.value;e.value="&";let o=jt(n),l=t.slice(1),s="&"===o?Et(r):[y(o,Et(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&&C(r,(t=>{if("rule"===t.kind){let r=Tt(t.selector);Ct(r,(t=>{"selector"===t.kind&&"."===t.value[0]&&(t.value=`.${e.theme.prefix}\\:${t.value.slice(1)}`)})),t.selector=jt(r)}})),e.utilities.static(t,(o=>{let i=structuredClone(r);return Nt(i,t,o.raw),n.current|=lt(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&&!ie(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=Ne(u,s)),t&&(u=`calc(${u} * -1)`);let f=Et(a(u,{modifier:s}));return Nt(f,i,l.raw),n.current|=lt(f,e),f}};if(!St.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:wt(e,(()=>r.theme??{}),(e=>e)),prefix:e=>e,config(e,t){let n=r;if(!e)return n;let o=mt(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(y(e,[b("@slot")]));continue}e=e.replace(/([A-Z])/g,"-$1").toLowerCase()}t.push(x(e,String(n)))}else if(Array.isArray(n))for(let r of n)"string"==typeof r?t.push(x(e,r)):t.push(y(e,Et(r)));else null!==n&&t.push(y(e,Et(n)));return t}function Vt(e,r){return("string"==typeof e?[e]:e).flatMap((e=>{if(e.trim().endsWith("}")){let n=t(e.replace("}","{@slot}}"));return Qe(n,r),n}return y(e,r)}))}function Nt(e,t,r){C(e,(e=>{if("rule"===e.kind){let n=Tt(e.selector);Ct(n,(e=>{"selector"===e.kind&&e.value===`.${t}`&&(e.value=`.${i(r)}`)})),e.selector=jt(n)}}))}function Ot(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(b("@keyframes",r,Et(n)));return t}(t))e.theme.addKeyframes(r)}var Ft={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 Wt(e){return{__BARE_VALUE__:e}}var Ut=Wt((e=>{if(be(e.value))return e.value})),Dt=Wt((e=>{if(be(e.value))return`${e.value}%`})),_t=Wt((e=>{if(be(e.value))return`${e.value}px`})),Mt=Wt((e=>{if(be(e.value))return`${e.value}ms`})),Bt=Wt((e=>{if(be(e.value))return`${e.value}deg`})),Lt=Wt((e=>{if(null===e.fraction)return;let[t,r]=L(e.fraction,"/");return be(t)&&be(r)?e.fraction:void 0})),It=Wt((e=>{if(be(Number(e.value)))return`repeat(${e.value}, minmax(0, 1fr))`})),Rt={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",...Lt},backdropBlur:({theme:e})=>e("blur"),backdropBrightness:({theme:e})=>({...e("brightness"),...Dt}),backdropContrast:({theme:e})=>({...e("contrast"),...Dt}),backdropGrayscale:({theme:e})=>({...e("grayscale"),...Dt}),backdropHueRotate:({theme:e})=>({...e("hueRotate"),...Bt}),backdropInvert:({theme:e})=>({...e("invert"),...Dt}),backdropOpacity:({theme:e})=>({...e("opacity"),...Dt}),backdropSaturate:({theme:e})=>({...e("saturate"),...Dt}),backdropSepia:({theme:e})=>({...e("sepia"),...Dt}),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",..._t},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",...Dt},caretColor:({theme:e})=>e("colors"),colors:()=>({...Ft}),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",...Ut},container:{},content:{none:"none"},contrast:{0:"0",50:".5",75:".75",100:"1",125:"1.25",150:"1.5",200:"2",...Dt},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"),..._t}),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",...Ut},flexShrink:{0:"0",DEFAULT:"1",...Ut},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%",...Dt},grayscale:{0:"0",DEFAULT:"100%",...Dt},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",...Ut},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",...Ut},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",...Ut},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",...Ut},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))",...It},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))",...It},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",...Bt},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%",...Dt},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",...Ut},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",...Dt},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",...Ut},outlineColor:({theme:e})=>e("colors"),outlineOffset:{0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",..._t},outlineWidth:{0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",..._t},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",..._t},ringOpacity:({theme:e})=>({DEFAULT:"0.5",...e("opacity")}),ringWidth:{DEFAULT:"3px",0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",..._t},rotate:{0:"0deg",1:"1deg",2:"2deg",3:"3deg",6:"6deg",12:"12deg",45:"45deg",90:"90deg",180:"180deg",...Bt},saturate:{0:"0",50:".5",100:"1",150:"1.5",200:"2",...Dt},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",...Dt},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%",...Dt},skew:{0:"0deg",1:"1deg",2:"2deg",3:"3deg",6:"6deg",12:"12deg",...Bt},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",...Ut},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",..._t},textIndent:({theme:e})=>e("spacing"),textOpacity:({theme:e})=>e("opacity"),textUnderlineOffset:{auto:"auto",0:"0px",1:"1px",2:"2px",4:"4px",8:"8px",..._t},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",...Mt},transitionDuration:{DEFAULT:"150ms",0:"0s",75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms",...Mt},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",...Ut}};function Pt(e){return{theme:{...Rt,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 qt={blocklist:[],future:{},prefix:"",important:!1,darkMode:null,theme:{},plugins:[],content:{files:[]}};function Ht(e,t){let r={design:e,configs:[],plugins:[],content:{files:[]},theme:{},extend:{},result:structuredClone(qt)};for(let e of t)Yt(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=wt(e.design,(()=>e.theme),o),n=Object.assign(r,{theme:r,colors:Ft});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]=()=>vt({},r.map(o),Zt)}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 Zt(e,t){return Array.isArray(e)&>(e[0])?e.concat(t):Array.isArray(t)&>(t[0])&>(e)?[e,...t]:Array.isArray(t)?t:void 0}function Yt(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??[])Yt(e,{path:n,base:r,config:i,reference:o});for(let t of i)e.plugins.push(t),t.config&&Yt(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 Gt(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(x("margin-inline","auto")),("string"==typeof t||"object"==typeof t&&null!==t&&"DEFAULT"in t)&&o.push(x("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)=>te(e[1],t[1],"asc"))),e.length>0){let[t]=e[0];o.push(b("@media",`(width >= --theme(--breakpoint-${t}))`,[x("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,b("@media",`(width >= ${t})`,[x("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)=>te(e[1],t[1],"asc")));for(let[t,,r]of e)if(i&&i.has(t))i.get(t).nodes.push(x("padding-inline",r));else{if(i)continue;o.push(b("@media",`(width >= theme(--breakpoint-${t}))`,[x("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 Jt({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 Xt(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 Qt=/^[a-z]+$/;async function er({designSystem:e,base:t,ast:r,loadModule:n,sources:o}){let i=0,a=[],l=[];C(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${S([t])}\n\n\`@plugin\` options must be a flat list of declarations.`);if(void 0===t.value)continue;let e=L(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 \`${S([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}`,(()=>[x("--tw-gradient-position",`to ${r} in oklab`),x("background-image","linear-gradient(var(--tw-gradient-stops))")]));e.utilities.static("bg-left-top",(()=>[x("background-position","left top")])),e.utilities.static("bg-right-top",(()=>[x("background-position","right top")])),e.utilities.static("bg-left-bottom",(()=>[x("background-position","left bottom")])),e.utilities.static("bg-right-bottom",(()=>[x("background-position","right bottom")])),e.utilities.static("object-left-top",(()=>[x("object-position","left top")])),e.utilities.static("object-right-top",(()=>[x("object-position","right top")])),e.utilities.static("object-left-bottom",(()=>[x("object-position","left bottom")])),e.utilities.static("object-right-bottom",(()=>[x("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?[x("max-width",r)]:void 0})),e.utilities.static("overflow-ellipsis",(()=>[x("text-overflow","ellipsis")])),e.utilities.static("decoration-slice",(()=>[x("-webkit-box-decoration-break","slice"),x("box-decoration-break","slice")])),e.utilities.static("decoration-clone",(()=>[x("-webkit-box-decoration-break","clone"),x("box-decoration-break","clone")])),e.utilities.functional("flex-shrink",(e=>{if(!e.modifier){if(!e.value)return[x("flex-shrink","1")];if("arbitrary"===e.value.kind)return[x("flex-shrink",e.value.value)];if(be(e.value.value))return[x("flex-shrink",e.value.value)]}})),e.utilities.functional("flex-grow",(e=>{if(!e.modifier){if(!e.value)return[x("flex-grow","1")];if("arbitrary"===e.value.kind)return[x("flex-grow",e.value.value)];if(be(e.value.value))return[x("flex-grow",e.value.value)]}})),e.utilities.static("order-none",(()=>[x("order","0")]))}(e);let s=e.resolveThemeValue;if(e.resolveThemeValue=function(n,a){return n.startsWith("--")?s(n,a):(i|=tr({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|=tr({designSystem:e,base:t,ast:r,sources:o,configs:c,pluginDetails:u}),i}function tr({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}=Ht(e,[{config:Pt(e.theme),base:t,reference:!0},...l,{config:{plugins:[Jt]},base:t,reference:!0}]),{resolvedConfig:c,replacedThemeKeys:u}=Ht(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=Kt({...p,referenceMode:!1});for(let{handler:e,reference:t}of s.plugins)t?(f||=Kt({...p,referenceMode:!0}),e(f)):e(h);if(dt(e,c,u),Ot(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=[b("@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=Xt(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),Gt(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.`)),!Qt.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;C(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(k(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 rr({ast:e}){let t=new u((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 u((e=>({url:e.file,content:e.code,ignore:!1}))),n={file:null,sources:[],mappings:[]};C(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 nr=/^(-?\d+)\.\.(-?\d+)(?:\.\.(-?\d+))?$/;function or(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):L(s,","),l=l.flatMap((e=>or(e)));let u=or(c);for(let e of u)for(let t of l)r.push(n+t+e);return r}var ir=/^[a-z]+$/;function ar(){throw new Error("No `loadModule` function provided to `compile`")}function lr(){throw new Error("No `loadStylesheet` function provided to `compile`")}async function sr(e,{base:t="",from:r,loadModule:n=ar,loadStylesheet:o=lr}={}){let l=0;e=[A({base:t},e)],l|=await ct(e,t,o,0,void 0!==r);let s=null,u=new c,d=[],f=[],p=null,v=null,w=[],$=[],j=[],T=[],K=null;C(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=L(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 Se.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}};C(e.nodes,(e=>{if("declaration"!==e.kind||!e.value||!e.value.includes("--value(")&&!e.value.includes("--modifier("))return;let t=g(e.value);h(t,(e=>{if("function"!==e.kind)return;if(!("--spacing"!==e.value||n["--modifier"].usedSpacingNumber&&n["--value"].usedSpacingNumber))return h(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=L(m(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=g(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])&&!De.includes(t.value)){console.warn(`Unsupported bare value data type: "${t.value}".\nOnly valid data types are: ${De.map((e=>`"${e}"`)).join(", ")}.\n`);let r=t.value,n=structuredClone(e),o="¶";h(n.nodes,((e,{replaceWith:t})=>{"word"===e.kind&&e.value===r&&t({kind:"word",value:o})}));let i="^".repeat(m([t]).length),a=m([n]).indexOf(o),l=["```css",m([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=m(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(C([n],((e,{parent:t,replaceWith:n})=>{if("rule"!==t?.kind&&"at-rule"!==t?.kind||"declaration"!==e.kind||!e.value)return;let f=g(e.value);0===(h(f,((f,{replaceWith:p})=>{if("function"===f.kind){if("--value"===f.value){a=!0;let i=_e(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=_e(i,f,r);return e?(c=!0,p(e.nodes),1):(s||=!1,n([]),2)}}}))??0)&&(e.value=m(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(...Ke);else if(l)for(let e of Ke)be(e)&&o.push(e);for(let e of r.theme.keysInNamespaces(s))o.push(e.replace(Ue,((e,t,r)=>`${t}.${r}`)))}return[{values:e,modifiers:t}]}))}:Te.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?T:j,t=L(l," ");for(let r of t)for(let t of or(r))e.push(t)}else $.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":(C(e.nodes,(t=>{if("at-rule"===t.kind&&"@slot"===t.name)return e.name="@custom-variant",2})),"@variant"===e.name&&w.push(e)):w.push(e)),"@custom-variant"===e.name){if(null!==t)throw new Error("`@custom-variant` cannot be nested.");r([]);let[n,o]=L(e.params," ");if(!Ye.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=L(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(k(r.join(", "),e.nodes));for(let r of t)n.push(y(r,e.nodes));e.nodes=n}),{compounds:Je([...r,...t])})}))}return void d.push((t=>{t.variants.fromAst(n,e.nodes)}))}if("@media"===e.name){let t=L(e.params," "),o=[];for(let r of t)if(r.startsWith("source(")){let t=r.slice(7,-1);C(e.nodes,((e,{replaceWith:r})=>{if("at-rule"===e.kind&&"@tailwind"===e.name&&"utilities"===e.params)return e.params+=` source(${t})`,r([A({sourceBase:n.base},[e])]),2}))}else if(r.startsWith("theme(")){let t=r.slice(6,-1),n=t.includes("reference");C(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);C(e.nodes,(e=>{if("at-rule"===e.kind&&"@theme"===e.name)return e.params+=` prefix(${t})`,1}))}else"important"===r?s=!0:"reference"===r?e.nodes=[A({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 L(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(!ir.test(o))throw new Error(`The prefix "${o}" is invalid. Prefixes must be lowercase ASCII letters (a-z) only.`);u.prefix=o}return C(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(a(r.property),r.value??"",t,r.src);let n=S([b(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}`)})),p?r([]):(p=k(":root, :host",[]),p.src=e.src,r([p])),1}}}));let E=et(u);if(s&&(E.important=s),T.length>0)for(let e of T)E.invalidCandidates.add(e);l|=await er({designSystem:E,base:t,ast:e,loadModule:n,sources:$});for(let e of d)e(E);for(let e of f)e(E);if(p){let t=[];for(let[e,r]of E.theme.entries()){if(2&r.options)continue;let n=x(i(e),r.value);n.src=r.src,t.push(n)}let r=E.theme.getKeyframes();for(let t of r)e.push(A({theme:!0},[z([t])]));p.nodes=[A({theme:!0},t)]}if(w.length>0){for(let e of w){let t=k("&",e.nodes),r=e.params,n=E.parseVariant(r);if(null===n)throw new Error(`Cannot use \`@variant\` with unknown variant: ${r}`);if(null===nt(t,n,E.variants))throw new Error(`Cannot use \`@variant\` with variant: ${r}`);Object.assign(e,t)}l|=32}if(l|=Re(e,E),l|=lt(e,E),v){let e=v;e.kind="context",e.context={}}return C(e,((e,{replaceWith:t})=>{if("at-rule"===e.kind)return"@utility"===e.name&&t([]),1})),{designSystem:E,ast:e,sources:$,root:K,utilitiesNode:v,features:l,inlineCandidates:j}}async function cr(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 sr(e,t);function c(e){r.invalidCandidates.add(e)}n.unshift($("! tailwindcss v4.1.10 | 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??=T(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??=T(n,r,t.polyfills),d;let m=rt(u,r,{onInvalidCandidate:c}).astNodes;return t.from&&C(m,(e=>{e.src??=a.src})),s||f!==m.length?(f=m.length,a.nodes=m,d=T(n,r,t.polyfills),d):(d??=T(n,r,t.polyfills),d)}}}(n,r),i=n,a=e;return{...o,build(e){let t=o.build(e);return t===i||(a=S(t,!!r.from),i=t),a},buildSourceMap:()=>rr({ast:i})}}var ur={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 dr,fr="text/tailwindcss",pr=new Set,hr="",mr=document.createElement("style"),gr=Promise.resolve(),vr=1,wr=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 kr(e,t){try{let r=function(){if("tailwindcss"===e)return{path:"virtual:tailwindcss/index.css",base:t,content:ur.index};if("tailwindcss/preflight"===e||"tailwindcss/preflight.css"===e||"./preflight.css"===e)return{path:"virtual:tailwindcss/preflight.css",base:t,content:ur.preflight};if("tailwindcss/theme"===e||"tailwindcss/theme.css"===e||"./theme.css"===e)return{path:"virtual:tailwindcss/theme.css",base:t,content:ur.theme};if("tailwindcss/utilities"===e||"tailwindcss/utilities.css"===e||"./utilities.css"===e)return{path:"virtual:tailwindcss/utilities.css",base:t,content:ur.utilities};throw new Error(`The browser build does not support @import for "${e}"`)}();return wr.hit("Loaded stylesheet",{id:e,base:t,size:r.content.length}),r}catch(r){throw wr.hit("Failed to load stylesheet",{id:e,base:t,error:r.message??r}),r}}async function br(){throw new Error("The browser build does not support plugins or config files.")}function yr(e){gr=gr.then((async function(){if(!dr&&"full"!==e)return;let t=vr++;wr.start(`Build #${t} (${e})`),"full"===e&&await async function(){wr.start("Create compiler"),wr.start("Reading Stylesheets");let e=document.querySelectorAll(`style[type="${fr}"]`),t="";for(let r of e)$r(r),t+=r.textContent+"\n";if(t.includes("@import")||(t=`@import "tailwindcss";${t}`),wr.end("Reading Stylesheets",{size:t.length,changed:hr!==t}),hr!==t){hr=t,wr.start("Compile CSS");try{dr=await cr(t,{base:"/",loadStylesheet:kr,loadModule:br})}finally{wr.end("Compile CSS"),wr.end("Create compiler")}pr.clear()}}(),wr.start("Build"),await async function(e){if(!dr)return;let t=new Set;wr.start("Collect classes");for(let e of document.querySelectorAll("[class]"))for(let r of e.classList)pr.has(r)||(pr.add(r),t.add(r));wr.end("Collect classes",{count:t.size}),(0!==t.size||"incremental"!==e)&&(wr.start("Build utilities"),mr.textContent=dr.build(Array.from(t)),wr.end("Build utilities"))}(e),wr.end("Build"),wr.end(`Build #${t} (${e})`)})).catch((e=>wr.error(e)))}var xr=new MutationObserver((()=>yr("full")));function $r(e){xr.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")===fr&&($r(e),t++);for(let e of n.addedNodes)1===e.nodeType&&e!==mr&&r++;"attributes"===n.type&&r++}return t>0?yr("full"):r>0?yr("incremental"):void 0})).observe(document.documentElement,{attributes:!0,attributeFilter:["class"],childList:!0,subtree:!0}),yr("full"),document.head.append(mr)})(); +//# sourceMappingURL=/sm/9c145d7e749b2e511c6391d6e25ebf7e7310e690b2ac66928f74b80d2f306a17.map \ No newline at end of file diff --git a/src/auth/auth_manager.py b/src/auth/auth_manager.py index 8d68e4f..183bb43 100644 --- a/src/auth/auth_manager.py +++ b/src/auth/auth_manager.py @@ -121,3 +121,13 @@ class AuthManager: return None return session["user_id"] + + @staticmethod + def admin_session(): + return { + "user_id": "0", + "username": "Admin", + "user_email": "admin@mmt.com", + "is_admin": True + } + \ No newline at end of file diff --git a/src/components/BaseComponent.py b/src/components/BaseComponent.py index eae43c6..20109af 100644 --- a/src/components/BaseComponent.py +++ b/src/components/BaseComponent.py @@ -1,3 +1,6 @@ +from core.utils import get_user_id + + class BaseComponent: """ Base class for all components that need to have a session and an id @@ -13,6 +16,9 @@ class BaseComponent: def get_session(self): return self._session + def get_user_id(self): + return get_user_id(self._session) + def __repr__(self): return self._id diff --git a/src/components/admin/AdminApp.py b/src/components/admin/AdminApp.py new file mode 100644 index 0000000..272b853 --- /dev/null +++ b/src/components/admin/AdminApp.py @@ -0,0 +1,51 @@ +import json +import logging + +from fasthtml.fastapp import fast_app + +from components.admin.constants import Routes +from core.instance_manager import debug_session, InstanceManager + +admin_app, rt = fast_app() + +logger = logging.getLogger("admin") + + +@rt(Routes.AiBuddy) +def get(session, _id: str, boundaries: str): + logger.debug(f"Entering {Routes.AiBuddy} - GET with args {debug_session(session)}, {_id=}, {boundaries=}") + instance = InstanceManager.get(session, _id) + return instance.show_ai_buddy_form(json.loads(boundaries) if boundaries else None) + + +@rt(Routes.AiBuddy) +def post(session, _id: str, args: dict): + logger.debug(f"Entering {Routes.AiBuddy} - POST with args {debug_session(session)}, {_id=}, {args=}") + instance = InstanceManager.get(session, _id) + return instance.update_ai_buddy_settings(args) + +@rt(Routes.AiBuddyCancel) +def post(session, _id: str): + logger.debug(f"Entering {Routes.AiBuddyCancel} with args {debug_session(session)}, {_id=}") + instance = InstanceManager.get(session, _id) + return instance.cancel_ai_buddy_settings() + + +@rt(Routes.ImportHolidays) +def get(session, _id: str, boundaries: str): + logger.debug(f"Entering {Routes.ImportHolidays} - GET with args {debug_session(session)}, {_id=}, {boundaries=}") + instance = InstanceManager.get(session, _id) + return instance.show_import_holidays_form(json.loads(boundaries) if boundaries else None) + + +@rt(Routes.PasteHolidays) +def post(session, _id: str, content: str): + logger.debug(f"Entering {Routes.PasteHolidays} with args {debug_session(session)}, {_id=}") + instance = InstanceManager.get(session, _id) + return instance.on_paste(content) + +@rt(Routes.ImportHolidays) +def post(session, _id: str): + logger.debug(f"Entering {Routes.ImportHolidays} with args {debug_session(session)}, {_id=}") + instance = InstanceManager.get(session, _id) + return instance.import_holidays() \ No newline at end of file diff --git a/src/components/admin/__init__.py b/src/components/admin/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/admin/admin_db_manager.py b/src/components/admin/admin_db_manager.py new file mode 100644 index 0000000..6c00b5f --- /dev/null +++ b/src/components/admin/admin_db_manager.py @@ -0,0 +1,39 @@ +from dataclasses import dataclass, field + +from ai.mcp_client import InProcessMCPClientCustomTools +from ai.mcp_tools import MCPServerTools +from auth.auth_manager import AuthManager +from components.admin.constants import ADMIN_SETTINGS_ENTRY +from config import OLLAMA_HOST +from core.settings_management import SettingsManager, NestedSettingsManager +from core.utils import split_host_port + + +@dataclass +class AiBuddySettingsEntry: + ollama_ip: str = "" + ollama_port: int = 11434 + ollama_model: str = "mistral" + llm_mode: str = InProcessMCPClientCustomTools.ID + available_tools: list = field(default_factory=MCPServerTools.list_tools) + + def __post_init__(self): + host, port = split_host_port(OLLAMA_HOST) + self.ollama_ip = host + self.ollama_port = port + + +@dataclass +class AdminSettings: + ai_buddy: AiBuddySettingsEntry = field(default_factory=AiBuddySettingsEntry) + + +class AdminDbManager: + def __init__(self, session: dict, settings_manager: SettingsManager): + self._session = session + self._settings_manager = settings_manager + self.ai_buddy = NestedSettingsManager(AuthManager.admin_session(), + settings_manager, + ADMIN_SETTINGS_ENTRY, + AdminSettings, + "ai_buddy") diff --git a/src/components/admin/assets/Admin.css b/src/components/admin/assets/Admin.css new file mode 100644 index 0000000..94bf042 --- /dev/null +++ b/src/components/admin/assets/Admin.css @@ -0,0 +1,8 @@ +.adm-items-group { + border: 1px solid color-mix(in oklab, var(--color-base-content) 20%, #0000); + border-radius: .25rem; + padding: 4px; + background-color: var(--color-base-100); + align-items: center; + padding-inline: .75rem; +} \ No newline at end of file diff --git a/src/components/admin/assets/__init__.py b/src/components/admin/assets/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/admin/commands.py b/src/components/admin/commands.py new file mode 100644 index 0000000..1173059 --- /dev/null +++ b/src/components/admin/commands.py @@ -0,0 +1,62 @@ +from components.BaseCommandManager import BaseCommandManager +from components.admin.constants import ROUTE_ROOT, Routes + + +class AdminCommandManager(BaseCommandManager): + def __init__(self, owner): + super().__init__(owner) + + def show_ai_buddy(self): + return { + "hx-get": f"{ROUTE_ROOT}{Routes.AiBuddy}", + "hx-target": f"#{self._owner.tabs_manager.get_id()}", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}", boundaries: getTabContentBoundaries("{self._owner.tabs_manager.get_id()}")}}', + } + + def save_ai_buddy(self): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.AiBuddy}", + "hx-target": f"#{self._owner.tabs_manager.get_id()}", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}"}}', + # The form adds the rest + } + + def cancel_ai_buddy(self): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.AiBuddyCancel}", + "hx-target": f"#{self._owner.tabs_manager.get_id()}", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}"}}', + } + + def show_import_holidays(self): + return { + "hx-get": f"{ROUTE_ROOT}{Routes.ImportHolidays}", + "hx-target": f"#{self._owner.tabs_manager.get_id()}", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}", boundaries: getTabContentBoundaries("{self._owner.tabs_manager.get_id()}")}}', + } + + +class ImportHolidaysCommandManager(BaseCommandManager): + def __init__(self, owner): + super().__init__(owner) + + def on_paste(self): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.PasteHolidays}", + "hx-target": f"#{self._owner.datagrid.get_id()}", + "hx_trigger": "keydown[ctrlKey && key=='Enter']", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}"}}', + } + + def import_holidays(self): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.ImportHolidays}", + "hx-target": f"#{self._owner.datagrid.get_id()}", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}"}}', + } \ No newline at end of file diff --git a/src/components/admin/components/Admin.py b/src/components/admin/components/Admin.py new file mode 100644 index 0000000..2e3fee3 --- /dev/null +++ b/src/components/admin/components/Admin.py @@ -0,0 +1,136 @@ +from fasthtml.components import * + +from ai.mcp_client import MPC_CLIENTS_IDS +from ai.mcp_tools import MCPServerTools +from components.BaseComponent import BaseComponent +from components.admin.admin_db_manager import AdminDbManager +from components.admin.commands import AdminCommandManager +from components.admin.components.AdminForm import AdminFormItem, AdminFormType, AdminForm +from components.admin.components.ImportHolidays import ImportHolidays +from components.admin.constants import ADMIN_INSTANCE_ID, ADMIN_AI_BUDDY_INSTANCE_ID, ADMIN_IMPORT_HOLIDAYS_INSTANCE_ID +from components.aibuddy.assets.icons import icon_brain_ok +from components.hoildays.assets.icons import icon_holidays +from components.tabs.components.MyTabs import MyTabs +from components_helpers import mk_ellipsis, mk_icon +from core.instance_manager import InstanceManager + + +class Admin(BaseComponent): + def __init__(self, session, _id: str = None, settings_manager=None, tabs_manager: MyTabs = None): + super().__init__(session, _id) + self.settings_manager = settings_manager + self.tabs_manager = tabs_manager + self.commands = AdminCommandManager(self) + self.db = AdminDbManager(session, settings_manager) + + def show_ai_buddy_form(self, boundaries): + fields = [ + AdminFormItem('ollama_ip', "Ollama IP", "IP address of the Ollama server.", AdminFormType.TEXT), + AdminFormItem("ollama_port", "Ollama Port", "Port of the Ollama server.", AdminFormType.NUMBER), + AdminFormItem("ollama_model", "LLM Model", "Model to use for Ollama.", AdminFormType.SELECT, ["mistral"]), + AdminFormItem("llm_mode", "LLM Mode", "Type of LLM to use (Dev)", AdminFormType.SELECT, MPC_CLIENTS_IDS), + AdminFormItem("available_tools", "Available Tools", "Possible tools", AdminFormType.CHECKBOX, + MCPServerTools.list_tools()), + ] + hooks = { + "on_ok": self.commands.save_ai_buddy(), + "on_cancel": self.commands.cancel_ai_buddy(), + "ok_title": "Apply" + } + form = InstanceManager.get(self._session, + AdminForm.create_component_id(self._session, prefix=self._id), + AdminForm, + owner=self, + title="AI Buddy Configuration Page", + obj=self.db.ai_buddy, + form_fields=fields, + hooks=hooks, + key=ADMIN_AI_BUDDY_INSTANCE_ID, + boundaries=boundaries) + + return self._add_tab(ADMIN_AI_BUDDY_INSTANCE_ID, "Admin - AI Buddy", form) + + def show_import_holidays_form(self, boundaries): + form = InstanceManager.get(self._session, + ImportHolidays.create_component_id(self._session, prefix=self._id), + ImportHolidays, + settings_manager=self.settings_manager, + boundaries=boundaries) + + return self._add_tab(ADMIN_AI_BUDDY_INSTANCE_ID, "Admin - Import Holidays", form) + + def update_ai_buddy_settings(self, values: dict): + values = self.manage_lists(values) + self.db.ai_buddy.update(values, ignore_missing=True) + return self.tabs_manager.render() + + def cancel_ai_buddy_settings(self): + tab_id = self.tabs_manager.get_tab_id(ADMIN_AI_BUDDY_INSTANCE_ID) + self.tabs_manager.remove_tab(tab_id) + return self.tabs_manager.render() + + def __ft__(self): + return Div( + Div(cls="divider"), + Div(mk_ellipsis("Admin", cls="text-sm font-medium mb-1 mr-3")), + # + Div( + mk_icon(icon_brain_ok, can_select=False), + mk_ellipsis("AI Buddy", cls="text-sm", **self.commands.show_ai_buddy()), + cls="flex p-0 min-h-0 truncate", + ), + Div( + mk_icon(icon_holidays, can_select=False), + mk_ellipsis("holidays", cls="text-sm", **self.commands.show_import_holidays()), + cls="flex p-0 min-h-0 truncate", + ), + # + # cls=""), + # Script(f"bindAdmin('{self._id}')"), + id=f"{self._id}" + ) + + def _add_tab(self, tab_key, title, content): + self.tabs_manager.add_tab(title, content, key=tab_key) + return self.tabs_manager.render() + + @staticmethod + def create_component_id(session): + return f"{ADMIN_INSTANCE_ID}{session['user_id']}" + + @staticmethod + def manage_lists(data_dict): + """ + Processes a dictionary of key-value pairs to reorganize keys based on specific + criteria. If a key ends with its corresponding string value, the method extracts + the prefix of the key (the portion of the key before the value) and groups the + value under this prefix in a list. Otherwise, the original key-value pair is + preserved in the resulting dictionary. + + :param data_dict: Dictionary where each key is a string and its corresponding + value can be of any type. + :type data_dict: dict + :return: A dictionary where the keys have been categorized into groups + based on whether they end with the same string value, reorganized into + lists, while preserving other key-value pairs as they are. + :rtype: dict + """ + + result_dict = {} + + for key, value in data_dict.items(): + # Check if the value is a string and the key ends with the value + if isinstance(value, str) and key.endswith(value): + # Find the beginning part of the key (before the value) + prefix = key.replace(value, '').rstrip('_') + + # Add the value to the list under the prefix key + if prefix not in result_dict: + result_dict[prefix] = [] + + result_dict[prefix].append(value) + + else: + result_dict[key] = value + + return result_dict diff --git a/src/components/admin/components/AdminForm.py b/src/components/admin/components/AdminForm.py new file mode 100644 index 0000000..b7a96d8 --- /dev/null +++ b/src/components/admin/components/AdminForm.py @@ -0,0 +1,121 @@ +from dataclasses import dataclass +from typing import Any + +from fasthtml.components import * + +from components.BaseComponent import BaseComponent +from components_helpers import set_boundaries, mk_dialog_buttons, safe_get_dialog_buttons_parameters +from core.utils import get_unique_id + + +class AdminFormType: + TEXT = "text" + NUMBER = "number" + DATE = "date" + SELECT = "select" + CHECKBOX = "checkbox" + RADIO = "radio" + TEXTAREA = "textarea" + + +@dataclass +class AdminFormItem: + name: str + title: str + description: str + type: str + possible_values: list[str] = None + + +class AdminForm(BaseComponent): + def __init__(self, session, _id, owner, title: str, obj: Any, form_fields: list[AdminFormItem], hooks=None, key=None, + boundaries=None): + super().__init__(session, _id) + self._owner = owner + self._hooks = hooks + self._key = key + self._boundaries = boundaries + self.title = title + self.obj = obj + self.form_fields = form_fields + + def mk_input(self, item: AdminFormItem): + return Input( + type=item.type, + value=getattr(self.obj, item.name), + id=item.name, + cls="input" + ) + + def mk_checkbox(self, item: AdminFormItem): + if not item.possible_values: + return Div("No options available") + + current_values = getattr(self.obj, item.name, []) + + checkbox_items = [Div( + Input( + Label(value), + type="checkbox", + value=value, + id=f"{item.name}_{value}", + cls="checkbox checkbox-xs", + checked=value in current_values + ), + + cls="checkbox-item") for value in item.possible_values] + + return Div(*checkbox_items, cls="adm-items-group") + + def mk_select(self, item: AdminFormItem): + if not item.possible_values: + return Div("No options available") + + current_value = getattr(self.obj, item.name, "") + + options = [ + Option( + value, + value=value, + selected=value == current_value + ) for value in item.possible_values + ] + + return Select( + *options, + id=item.name, + cls="select select-bordered w-full" + ) + + def mk_item(self, item: AdminFormItem): + if item.type == AdminFormType.CHECKBOX: + return self.mk_checkbox(item) + elif item.type == AdminFormType.SELECT: + return self.mk_select(item) + else: + return self.mk_input(item) + + def __ft__(self): + return Form( + Fieldset(Legend(self.title, cls="fieldset-legend"), + *[ + Div( + Label(item.title, cls="label"), + self.mk_item(item), + P(item.description, cls="label"), + ) + + for item in self.form_fields + ], + mk_dialog_buttons(**safe_get_dialog_buttons_parameters(self._hooks)), + **set_boundaries(self._boundaries), + cls="fieldset bg-base-200 border-base-300 rounded-box w-xs border p-4" + ) + ) + + @staticmethod + def create_component_id(session, prefix=None, suffix=None): + if suffix is None: + suffix = get_unique_id() + + return f"{prefix}{suffix}" diff --git a/src/components/admin/components/ImportHolidays.py b/src/components/admin/components/ImportHolidays.py new file mode 100644 index 0000000..2d43069 --- /dev/null +++ b/src/components/admin/components/ImportHolidays.py @@ -0,0 +1,59 @@ +from fasthtml.components import * +from pandas import DataFrame + +from components.BaseComponent import BaseComponent +from helpers.ComponentsInstancesHelper import ComponentsInstancesHelper +from components.admin.commands import ImportHolidaysCommandManager +from components.admin.constants import ADMIN_IMPORT_HOLIDAYS_INSTANCE_ID +from components.datagrid_new.components.DataGrid import DataGrid +from components.datagrid_new.settings import DataGridSettings +from components.hoildays.helpers.nibelisparser import NibelisParser +from components.repositories.constants import USERS_REPOSITORY_NAME, HOLIDAYS_TABLE_NAME +from components_helpers import mk_dialog_buttons, set_boundaries +from conftest import session +from core.instance_manager import InstanceManager + + +class ImportHolidays(BaseComponent): + def __init__(self, session, _id, settings_manager, boundaries=None): + super().__init__(session, _id) + self._settings_manager = settings_manager + self._boundaries = boundaries + self.commands = ImportHolidaysCommandManager(self) + self.datagrid = InstanceManager.get(session, + DataGrid.create_component_id(session), + DataGrid, + grid_settings=DataGridSettings(views_visible=False, + open_file_visible=False, + open_settings_visible=False)) + + def on_paste(self, content): + parser = NibelisParser(content) + holidays = parser.parse() + self.datagrid.init_from_dataframe(DataFrame(holidays)) + return self.datagrid + + def import_holidays(self): + repositories = ComponentsInstancesHelper.get_repositories(self._session) + key = repositories.db.ensure_exists(USERS_REPOSITORY_NAME, HOLIDAYS_TABLE_NAME) + datagrid = DataGrid(self._session, DataGrid.create_component_id(self._session), key, self._settings_manager) + datagrid.init_from_dataframe(self.datagrid.get_dataframe(), save_state=True) + return repositories.refresh() + + def __ft__(self): + return Div( + Div("Import holidays...", cls="mb-2"), + Textarea(name="content", + cls="textarea", + placeholder="Paste the content.\nCtl+Enter when done.", + **self.commands.on_paste()), + Div(self.datagrid, cls="mt-2"), + mk_dialog_buttons(ok_title="Import", cls="mt-2", on_ok=self.commands.import_holidays()), + id=self._id, + cls="m-2", + **set_boundaries(self._boundaries, other=26), + ) + + @staticmethod + def create_component_id(session, prefix=None, suffix=None): + return f"{ADMIN_IMPORT_HOLIDAYS_INSTANCE_ID}{session['user_id']}" diff --git a/src/components/admin/components/__init__.py b/src/components/admin/components/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/admin/constants.py b/src/components/admin/constants.py new file mode 100644 index 0000000..397b15b --- /dev/null +++ b/src/components/admin/constants.py @@ -0,0 +1,11 @@ +ADMIN_INSTANCE_ID = "__Admin__" +ADMIN_AI_BUDDY_INSTANCE_ID = "__AdminAIBuddy__" +ADMIN_IMPORT_HOLIDAYS_INSTANCE_ID = "__AdminImportHolidays__" +ROUTE_ROOT = "/admin" +ADMIN_SETTINGS_ENTRY = "Admin" + +class Routes: + AiBuddy = "/ai-buddy" + AiBuddyCancel = "/ai-buddy-cancel" + ImportHolidays = "/import-holidays" + PasteHolidays = "/paste-holidays" \ No newline at end of file diff --git a/src/components/admin/settings.py b/src/components/admin/settings.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/aibuddy/AIBuddyApp.py b/src/components/aibuddy/AIBuddyApp.py new file mode 100644 index 0000000..d8ed0a6 --- /dev/null +++ b/src/components/aibuddy/AIBuddyApp.py @@ -0,0 +1,39 @@ +import logging + +from fasthtml.fastapp import fast_app + +from components.aibuddy.constants import Routes +from core.instance_manager import debug_session, InstanceManager + +ai_buddy_app, rt = fast_app() + +logger = logging.getLogger("AIBuddy") + + +@rt(Routes.Request) +def get(session, _id: str): + logger.debug(f"Entering {Routes.Request} - GET with args {debug_session(session)}, {_id=}") + instance = InstanceManager.get(session, _id) + return instance.show_request_form() + + +@rt(Routes.Request) +async def post(session, _id: str, q: str): + logger.debug(f"Entering {Routes.Request} - POST with args {debug_session(session)}, {_id=}, {q=}") + instance = InstanceManager.get(session, _id) + res = await instance.make_async_ai_request(q) + return res + + +@rt(Routes.ResetRequest) +def post(session, _id: str): + logger.debug(f"Entering {Routes.ResetRequest} with args {debug_session(session)}, {_id=}") + instance = InstanceManager.get(session, _id) + return instance.reset_ai_request() + + +@rt(Routes.LlmStatus) +def get(session, _id: str): + logger.debug(f"Entering {Routes.LlmStatus} - GET with args {debug_session(session)}, {_id=}") + instance = InstanceManager.get(session, _id) + return instance.get_llm_status() diff --git a/src/components/aibuddy/Readme.md b/src/components/aibuddy/Readme.md new file mode 100644 index 0000000..8c9b711 --- /dev/null +++ b/src/components/aibuddy/Readme.md @@ -0,0 +1,11 @@ +# id + +**Datagrid ids**: + +using `AIBuddy(id=my_id)` + +| Name | value | +|----------------------------|----------------| +| Status icon | `s_{self._id}` | +| Question (input) component | `q_{self._id}` | +| Answer component | `a_{self._id}` | \ No newline at end of file diff --git a/src/components/aibuddy/__init__.py b/src/components/aibuddy/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/aibuddy/assets/AIBuddy.js b/src/components/aibuddy/assets/AIBuddy.js new file mode 100644 index 0000000..1552e9a --- /dev/null +++ b/src/components/aibuddy/assets/AIBuddy.js @@ -0,0 +1,52 @@ +function bindAIBuddy(elementId) { + console.debug("bindAIBuddy on element " + elementId); + + const aiBuddy = document.getElementById(elementId); + + if (!aiBuddy) { + console.error(`AIBuddy with id "${elementId}" not found.`); + return; + } + + let lastShiftPress = 0; + const doublePressDelay = 300; + + const makeAIRequest = () => { + const targetID = "q_" + elementId; + + htmx.ajax('GET', '/ai/request', { + target: `#${targetID}`, + headers: {"Content-Type": "application/x-www-form-urlencoded"}, + swap: "outerHTML", + values: { + _id: elementId, + } + }); + + // Listen for the htmx:afterSwap event to focus on the input + document.addEventListener('htmx:afterSwap', function(event) { + if (event.target.id === targetID) { + event.target.focus(); + } + + // Remove this event listener after it's been triggered + document.removeEventListener('htmx:afterSwap', arguments.callee); + }); + }; + + document.addEventListener('keydown', (event) => { + if (event.ctrlKey && event.key === 'k') { + event.preventDefault(); + makeAIRequest(); + } + + if (event.key === 'Shift') { + const currentTime = new Date().getTime(); + if (currentTime - lastShiftPress <= doublePressDelay) { + event.preventDefault(); + makeAIRequest(); + } + lastShiftPress = currentTime; + } + }); +} \ No newline at end of file diff --git a/src/components/aibuddy/assets/__init__.py b/src/components/aibuddy/assets/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/aibuddy/assets/icons.py b/src/components/aibuddy/assets/icons.py new file mode 100644 index 0000000..4fed54d --- /dev/null +++ b/src/components/aibuddy/assets/icons.py @@ -0,0 +1,17 @@ +from fastcore.basics import NotStr + +# Fluent BrainCircuit20Regular +icon_brain_ok = NotStr(""" + + + + +""") + +# Fluent Warning20Regular +icon_brain_warning = NotStr(""" + + + + +""") \ No newline at end of file diff --git a/src/components/aibuddy/commands.py b/src/components/aibuddy/commands.py new file mode 100644 index 0000000..2069621 --- /dev/null +++ b/src/components/aibuddy/commands.py @@ -0,0 +1,32 @@ +from components.BaseCommandManager import BaseCommandManager +from components.aibuddy.constants import ROUTE_ROOT, Routes + + +class AIBuddyCommandManager(BaseCommandManager): + def __init__(self, owner): + super().__init__(owner) + + def make_request(self): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.Request}", + "hx-target": f"#a_{self._id}", + "hx-swap": "outerHTML", + "hx-vals": f'{{"_id": "{self._id}"}}', + } + + def reset_request(self): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.ResetRequest}", + "hx-target": f"#q_{self._id}", + "hx-swap": "outerHTML", + "hx-vals": f'{{"_id": "{self._id}"}}', + } + + def get_llm_status(self): + return { + "hx-get": f"{ROUTE_ROOT}{Routes.LlmStatus}", + "hx-target": f"#s_{self._id}", + "hx-trigger": "every 2s", + "hx-swap": "outerHTML", + "hx-vals": f'{{"_id": "{self._id}"}}', + } diff --git a/src/components/aibuddy/components/AIBuddy.py b/src/components/aibuddy/components/AIBuddy.py new file mode 100644 index 0000000..4a09f4d --- /dev/null +++ b/src/components/aibuddy/components/AIBuddy.py @@ -0,0 +1,217 @@ +import asyncio +import threading +from datetime import datetime + +import httpx +from fasthtml.components import * +from fasthtml.xtend import Script + +from ai.debug_lmm import DebugRequest, DebugRequestMetadata, DebugConversation +from ai.mcp_client import InProcessMCPClientCustomTools, InProcessMCPClientNativeTools +from assets.icons import icon_dismiss_regular +from components.BaseComponent import BaseComponent +from components.aibuddy.assets.icons import icon_brain_ok, icon_brain_warning +from components.aibuddy.commands import AIBuddyCommandManager +from components.aibuddy.constants import * +from components.aibuddy.settings import AI_BUDDY_SETTINGS_ENTRY, AIBuddySettings +from components_helpers import mk_ellipsis, mk_icon, mk_tooltip +from config import OLLAMA_HOST +from core.settings_management import GenericDbManager + + +class AIBuddy(BaseComponent): + def __init__(self, session, _id: str = None, settings_manager=None, tabs_manager=None): + super().__init__(session, _id) + self.settings_manager = settings_manager + self.db = GenericDbManager(session, settings_manager, AI_BUDDY_SETTINGS_ENTRY, AIBuddySettings) + self.tabs_manager = tabs_manager + self.commands = AIBuddyCommandManager(self) + self.llm_status = None + self.mcp_clients = { + InProcessMCPClientNativeTools.ID: InProcessMCPClientNativeTools(session, settings_manager, OLLAMA_HOST), + InProcessMCPClientCustomTools.ID: InProcessMCPClientCustomTools(session, settings_manager, OLLAMA_HOST) + } + # self.db.mcp_client_mod + # self.db.llm_use_tools + self.conversations: list[DebugConversation] = self.db.conversations + + # Check LLM status once at initialization in a background thread + threading.Thread(target=self._initial_status_check, daemon=True).start() + + def _initial_status_check(self): + """Check LLM status once in a background thread""" + try: + # Run the async function in a new event loop + loop = asyncio.new_event_loop() + self.llm_status = loop.run_until_complete(self.async_check_llm_active()) + loop.close() + except Exception as e: + self.llm_status = f"Error checking LLM status: {e}" + + def get_conversations(self): + return self.conversations + + def show_request_form(self): + return self.mk_input() + + def register_components(self): + return [ + (self.mk_input(), "TOP"), + (self.mk_response(), "BOTTOM"), + ] + + async def make_async_ai_request(self, request): + if len(self.conversations) == 0: + start = datetime.now() + conversation = DebugConversation(f"{self.get_user_id()}{start.timestamp()}", + int(start.timestamp()), + request) + self.conversations.append(conversation) + else: + conversation = self.conversations[-1] + + debug = DebugRequest(request) + conversation.requests.append(debug) + + mcp_client = self.mcp_clients[self.db.mcp_client_mod] + start = datetime.now() # datetime.now().strftime("%Y-%m-%d %H:%M:%S") + response = await mcp_client.generate_with_mcp_context(debug, request, self.db.llm_use_tools) + + request_metadata = DebugRequestMetadata(f"{self.get_user_id()}{start.timestamp()}", + self.get_user_id(), + int(start.timestamp()), + int(datetime.now().timestamp()), + mcp_client.model, + self.db.mcp_client_mod, + self.db.llm_use_tools, + self._debug_available_tools(mcp_client.available_tools)) + debug.metadata = request_metadata + + self.db.conversations = self.conversations + + return self.mk_response(response) + + def reset_ai_request(self): + return self.mk_input(True), self.mk_response(None, True) + + def get_llm_status(self): + return self.mk_status(), self.mk_input(True) + + def mk_status(self): + # Non-blocking, simply returns UI based on the current status + if self.llm_status is None: + return Span(cls="loading loading-infinity loading-sm", id=f"s_{self._id}", **self.commands.get_llm_status()) + elif self.llm_status is not True: + return mk_tooltip(mk_icon(icon_brain_warning), self.llm_status, id=f"s_{self._id}") + else: + return mk_icon(icon_brain_ok, id=f"s_{self._id}") + + def mk_input(self, oob=False): + if self.llm_status is True: + return self._mk_input_ok(oob) + else: + return Div(id=f"q_{self._id}", hx_swap_oob="true" if oob else None) + + def mk_response(self, response=None, oob=False): + if self.llm_status is True: + return self._mk_response_ok(response, oob=oob) + else: + return Div(id=f"a_{self._id}", + hx_swap_oob="true") + + def _mk_input_ok(self, oob=False): + return Div( + Label( + mk_icon(icon_brain_ok), + Input( + name="q", + placeholder="Ask me anything...", + tabindex="1", + **self.commands.make_request() + ), + cls="input", + ), + mk_icon(icon_dismiss_regular, cls="ml-2", tooltip="Reset question", **self.commands.reset_request()), + cls="flex", + id=f"q_{self._id}", + hx_swap_oob="true" if oob else None, + ) + + def _mk_response_ok(self, response=None, oob=False): + return Div(response or "Your response will appear here.", + cls="w-full px-4 py-2 border border-gray-300 rounded-md", + id=f"a_{self._id}", + hx_swap_oob="true" if oob else None, + ) + + @staticmethod + def _debug_available_tools(available_tools): + return [ + {"name": tool["name"], + "parameters": tool["parameters"], + "description": tool["description"]} + for name, tool in available_tools.items() + ] + + def __ft__(self): + return Div( + Div(cls="divider"), + Div( + mk_ellipsis("AI Buddy", cls="text-sm font-medium mb-1 mr-3"), + self.mk_status(), + cls="flex items-center"), + Script(f"bindAIBuddy('{self._id}')"), + id=f"{self._id}" + ) + + @staticmethod + def create_component_id(session): + return f"{AI_BUDDY_INSTANCE_ID}{session['user_id']}" + + @staticmethod + async def async_check_llm_active(): + """Asynchronous LLM status check""" + try: + async with httpx.AsyncClient(timeout=5.0) as client: + response = await client.post( + f"{OLLAMA_HOST}/api/pull", + json={"name": "mistral"} + ) + response.raise_for_status() + return True + except Exception as e: + return f"Error pulling Mistral model: {e}" + + def query_mistral(self, prompt): + """Send a query to the Mistral model via Ollama API""" + try: + with httpx.Client(timeout=30.0) as client: + response = client.post( + f"{OLLAMA_HOST}/api/generate", + json={ + "model": "mistral", + "prompt": prompt, + "stream": False + } + ) + response.raise_for_status() + return response.json() + except Exception as e: + return {"error": str(e), "response": f"Error querying model: {e}"} + + async def async_query_mistral(self, prompt): + """Asynchronous version of query_mistral""" + try: + async with httpx.AsyncClient(timeout=30.0) as client: + response = await client.post( + f"{OLLAMA_HOST}/api/generate", + json={ + "model": "mistral", + "prompt": prompt, + "stream": False + } + ) + response.raise_for_status() + return response.json() + except Exception as e: + return {"error": str(e), "response": f"Error querying model: {e}"} diff --git a/src/components/aibuddy/components/__init__.py b/src/components/aibuddy/components/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/aibuddy/constants.py b/src/components/aibuddy/constants.py new file mode 100644 index 0000000..dd68771 --- /dev/null +++ b/src/components/aibuddy/constants.py @@ -0,0 +1,8 @@ +AI_BUDDY_INSTANCE_ID = "__AIBuddy__" +ROUTE_ROOT = "/ai" + + +class Routes: + Request = "/request" + ResetRequest = "/reset-request" + LlmStatus = "/llm-status" diff --git a/src/components/aibuddy/settings.py b/src/components/aibuddy/settings.py new file mode 100644 index 0000000..10abfa3 --- /dev/null +++ b/src/components/aibuddy/settings.py @@ -0,0 +1,16 @@ +import dataclasses + +from ai.debug_lmm import DebugConversation +from ai.mcp_client import InProcessMCPClientCustomTools +from core.settings_objects import BaseSettingObj + +AI_BUDDY_SETTINGS_ENTRY = "AIBuddy" + + +@dataclasses.dataclass +class AIBuddySettings(BaseSettingObj): + __ENTRY_NAME__ = AI_BUDDY_SETTINGS_ENTRY + + mcp_client_mod: str = InProcessMCPClientCustomTools.ID + llm_use_tools: bool = True + conversations: list[DebugConversation] = dataclasses.field(default_factory=list) diff --git a/src/components/applications/ApplicationsApp.py b/src/components/applications/ApplicationsApp.py new file mode 100644 index 0000000..3b9099d --- /dev/null +++ b/src/components/applications/ApplicationsApp.py @@ -0,0 +1,16 @@ +import logging + +from fasthtml.fastapp import fast_app + +from components.applications.constants import Routes +from core.instance_manager import InstanceManager + +logger = logging.getLogger("Applications") + +applications_app, rt = fast_app() + +@rt(Routes.Open) +def post(session, _id: str, app: str, boundaries: str): + logger.debug(f"Entering post with args {_id=}, {app=}, {boundaries=}") + instance = InstanceManager.get(session, _id) + return instance.open_application(app, boundaries) \ No newline at end of file diff --git a/src/components/applications/__init__.py b/src/components/applications/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/applications/assets/__init__.py b/src/components/applications/assets/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/applications/commands.py b/src/components/applications/commands.py new file mode 100644 index 0000000..bf68637 --- /dev/null +++ b/src/components/applications/commands.py @@ -0,0 +1,16 @@ +from components.BaseCommandManager import BaseCommandManager +from components.applications.constants import ROUTE_ROOT, Routes + + +class Commands(BaseCommandManager): + def __init__(self, owner): + super().__init__(owner) + + def open_application(self, app_name: str): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.Open}", + "hx-target": f"#{self._owner.tabs_manager.get_id()}", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}", "app": "{app_name}", boundaries: getTabContentBoundaries("{self._owner.tabs_manager.get_id()}")}}', + } + \ No newline at end of file diff --git a/src/components/applications/components/Applications.py b/src/components/applications/components/Applications.py new file mode 100644 index 0000000..71c937c --- /dev/null +++ b/src/components/applications/components/Applications.py @@ -0,0 +1,47 @@ +from fasthtml.components import * + +from components.BaseComponent import BaseComponent +from components.applications.commands import Commands +from components.applications.constants import APPLICATION_INSTANCE_ID +from components.hoildays.assets.icons import icon_holidays +from components.hoildays.components.HolidaysViewer import HolidaysViewer +from components.hoildays.constants import HOLIDAYS_VIEWER_INSTANCE_ID +from components_helpers import mk_ellipsis, mk_icon +from core.instance_manager import InstanceManager + + +class Applications(BaseComponent): + def __init__(self, session: dict, _id: str, settings_manager=None, tabs_manager=None): + super().__init__(session, _id) + self.tabs_manager = tabs_manager + self.settings_manager = settings_manager + self.commands = Commands(self) + + def open_application(self, app_name, boundaries): + if app_name == "holidays": + holiday = InstanceManager.get(self._session, + HolidaysViewer.create_component_id(self._session), + HolidaysViewer, + settings_manager=self.settings_manager, + boundaries=boundaries, + ) + self.tabs_manager.add_tab("holidays", holiday, key=HOLIDAYS_VIEWER_INSTANCE_ID) + return self.tabs_manager.render() + + raise NotImplementedError(app_name) + + def __ft__(self): + return Div( + Div(cls="divider"), + + mk_ellipsis("Applications", cls="text-sm font-medium mb-1"), + Div( + mk_icon(icon_holidays, can_select=False), mk_ellipsis("Holidays"), + cls="p-0 min-h-0 flex truncate", + **self.commands.open_application("holidays") + ), + ) + + @staticmethod + def create_component_id(session): + return f"{APPLICATION_INSTANCE_ID}{session['user_id']}" diff --git a/src/components/applications/components/__init__.py b/src/components/applications/components/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/applications/constants.py b/src/components/applications/constants.py new file mode 100644 index 0000000..b18cd95 --- /dev/null +++ b/src/components/applications/constants.py @@ -0,0 +1,6 @@ +APPLICATION_INSTANCE_ID = "__Applications__" +ROUTE_ROOT = "/apps" + + +class Routes: + Open = "/open" diff --git a/src/components/datagrid_new/DataGridApp.py b/src/components/datagrid_new/DataGridApp.py index b6a7982..fda1ed0 100644 --- a/src/components/datagrid_new/DataGridApp.py +++ b/src/components/datagrid_new/DataGridApp.py @@ -125,13 +125,14 @@ def post(session, _id: str, key: str, arg: str = None): @rt(Routes.OnClick) -def post(session, _id: str, cell_id: str = None, modifier: str = None, boundaries: str=None): +def post(session, _id: str, cell_id: str = None, modifier: str = None, boundaries: str = None): logger.debug(f"Entering on_click with args {_id=}, {cell_id=}, {modifier=}, {boundaries=}") instance = InstanceManager.get(session, _id) return instance.manage_click(cell_id, modifier, json.loads(boundaries) if boundaries else None) + @rt(Routes.UpdateState) def post(session, _id: str, state: str, args: str = None): logger.debug(f"Entering on_state_changed with args {_id=}, {state=}, {args=}") instance = InstanceManager.get(session, _id) - return instance.manage_state_changed(state, args) \ No newline at end of file + return instance.manage_state_changed(state, args) diff --git a/src/components/datagrid_new/Readme.md b/src/components/datagrid_new/Readme.md index e7e43c7..a081a7f 100644 --- a/src/components/datagrid_new/Readme.md +++ b/src/components/datagrid_new/Readme.md @@ -10,6 +10,7 @@ using `Datagrid(id=my_id)` | filter all | `fa_{datagrid_id}` | | file upload | `fu_{datagrid_id}` | | footer menu | `fm_{datagrid_id}` | +| main | `m_{datagrid_id}` | | sidebar | `sb_{datagrid_id}` | | scroll bars | `scb_{datagrid_id}` | | Settings columns | `scol_{datagrid_id}` | diff --git a/src/components/datagrid_new/assets/Datagrid.js b/src/components/datagrid_new/assets/Datagrid.js index 62e4e19..ca9c43a 100644 --- a/src/components/datagrid_new/assets/Datagrid.js +++ b/src/components/datagrid_new/assets/Datagrid.js @@ -469,12 +469,14 @@ function getClickModifier(event) { } function validateOnClickRequest(datagridId, event) { - if (event.target.id !== datagridId) { // only try to cancel event sent by the datagrid + console.debug("validateOnClickRequest : event", event) + if (event.target.id !== "m_" + datagridId) { // only try to cancel event sent by the datagrid return; } const triggeringElt = event.detail.requestConfig.triggeringEvent.target const sidebar = triggeringElt.closest('.dt2-sidebar'); + console.debug("sidebar", sidebar) if (sidebar) { event.preventDefault(); } diff --git a/src/components/datagrid_new/components/DataGrid.py b/src/components/datagrid_new/components/DataGrid.py index ca9071d..4709ac6 100644 --- a/src/components/datagrid_new/components/DataGrid.py +++ b/src/components/datagrid_new/components/DataGrid.py @@ -21,6 +21,7 @@ from components.datagrid_new.settings import DataGridRowState, DataGridColumnSta DataGridFooterConf, DataGridState, DataGridSettings, DatagridView from components_helpers import mk_icon, mk_ellipsis from core.instance_manager import InstanceManager +from core.settings_management import SettingsManager from core.utils import get_unique_id, make_safe_id logger = logging.getLogger("DataGrid") @@ -32,7 +33,13 @@ class DataGrid(BaseComponent): like filtering, column management, and view management. """ - def __init__(self, session, _id: str = None, key: Any = None, settings_manager=None, boundaries=None): + def __init__(self, + session, + _id: str = None, + key: Any = None, + settings_manager: SettingsManager = None, + grid_settings: DataGridSettings = None, + boundaries: dict = None): """ Initialize the DataGrid component. @@ -50,17 +57,17 @@ class DataGrid(BaseComponent): # Load state and data self._state: DataGridState = self._db.load_state() - self._settings: DataGridSettings = self._db.load_settings() + self._settings: DataGridSettings = grid_settings or self._db.load_settings() self._df: DataFrame | None = self._db.load_dataframe() # update boundaries if possible self.set_boundaries(boundaries) # Create child components - self._file_upload = self._create_component(FileUpload, f"fu_{self._id}") - self._filter_all = self._create_component(FilterAll, f"fa_{self._id}") + self._file_upload = self._create_component(FileUpload, f"fu_{self._id}", permission="open_file") + self._filter_all = self._create_component(FilterAll, f"fa_{self._id}", permission="filter_all") self._columns_settings = self._create_component(ColumnsSettings, f"scol_{self._id}") - self._views = self._create_component(Views, f"v_{self._id}") + self._views = self._create_component(Views, f"v_{self._id}", permission="views") # Initial setup self.close_sidebar() @@ -69,10 +76,6 @@ class DataGrid(BaseComponent): if len(self._state.footers) == 0: self._state.footers.append(DataGridFooterConf()) - # ---------------------- - # Initialization Methods - # ---------------------- - def init_from_excel(self): """ Initialize the DataGrid from an Excel file uploaded by the user. @@ -344,6 +347,9 @@ class DataGrid(BaseComponent): def get_settings(self) -> DataGridSettings: return self._settings + def get_dataframe(self) -> DataFrame: + return self._df + def get_table_id(self): return f"t_{self._id}" @@ -625,14 +631,20 @@ class DataGrid(BaseComponent): # self.mk_selection_mode_button(), # self.mk_resize_table_button(), # self.mk_reset_filter_button(), - self.mk_download_button(), - self.mk_settings_button(), + self.mk_button(self.mk_download_button(), permission="open_file"), + self.mk_button(self.mk_settings_button(), permission="open_settings"), cls="flex mr-2", name="dt-menu", id=f"cm_{self._id}", hx_swap_oob='true' if oob else None, ) + def mk_button(self, button, permission=None): + if not self._validate_permission(permission): + return None + + return button + def mk_download_button(self): return mk_icon(icon_open, **self.commands.download()) @@ -775,7 +787,10 @@ class DataGrid(BaseComponent): df = df[df[col_id].astype(str).isin(values)] return df - def _create_component(self, component_type: type, component_id: str): + def _create_component(self, component_type: type, component_id: str, permission=None): + if not self._validate_permission(permission): + return None + safe_create_component_id = getattr(component_type, "create_component_id") return InstanceManager.get(self._session, safe_create_component_id(self._session, component_id, ""), @@ -797,6 +812,16 @@ class DataGrid(BaseComponent): return max_height + def _validate_permission(self, permission): + if permission is None: + return True + + settings_attr = permission + "_visible" + if hasattr(self._settings, settings_attr) and not getattr(self._settings, settings_attr): + return False + + return True + def __ft__(self): return Div( Div( @@ -810,11 +835,20 @@ class DataGrid(BaseComponent): ), Script(f"bindDatagrid('{self._id}', false);"), - **self.commands.on_click() + **self.commands.on_click(), + id=f"m_{self._id}", ), id=f"{self._id}" ) + @staticmethod + def new(session, data, index=None): + datagrid = DataGrid(session, DataGrid.create_component_id(session)) + #dataframe = DataFrame(data, index=index) + dataframe = DataFrame(data) + datagrid.init_from_dataframe(dataframe) + return datagrid + @staticmethod def create_component_id(session): prefix = f"{DATAGRID_INSTANCE_ID}{session['user_id']}" diff --git a/src/components/datagrid_new/db_management.py b/src/components/datagrid_new/db_management.py index 597bc5d..ee8f685 100644 --- a/src/components/datagrid_new/db_management.py +++ b/src/components/datagrid_new/db_management.py @@ -26,7 +26,7 @@ class DataframeWrapper: class DataGridDbManager: - def __init__(self, session: dict, settings_manager: SettingsManager, key: str): + def __init__(self, session: dict, settings_manager: SettingsManager, key: tuple): self._session = session self._settings_manager = settings_manager self._key = "#".join(make_safe_id(item) for item in key) if key else "" diff --git a/src/components/datagrid_new/settings.py b/src/components/datagrid_new/settings.py index 2b56cb4..4a036af 100644 --- a/src/components/datagrid_new/settings.py +++ b/src/components/datagrid_new/settings.py @@ -54,6 +54,10 @@ class DataGridSettings: file_name: str = None selected_sheet_name: str = None header_visible: bool = True + filter_all_visible: bool = True + views_visible: bool = True + open_file_visible: bool = True + open_settings_visible: bool = True views: list[DatagridView] = dataclasses.field(default_factory=list) @staticmethod diff --git a/src/components/debugger/DebuggerApp.py b/src/components/debugger/DebuggerApp.py index 16afa2d..fbbdd38 100644 --- a/src/components/debugger/DebuggerApp.py +++ b/src/components/debugger/DebuggerApp.py @@ -1,3 +1,4 @@ +import json import logging from fasthtml.fastapp import fast_app @@ -14,7 +15,28 @@ logger = logging.getLogger("Debugger") def post(session, _id: str, user_id: str, digest: str = None): logger.debug(f"Entering {Routes.DbEngineData} with args {debug_session(session)}, {_id=}, {user_id=}, {digest=}") instance = InstanceManager.get(session, _id) - return instance.add_tab(user_id, digest) + return instance.db_engine_headers(user_id, digest) + + +@rt(Routes.DbEngineDigest) +def post(session, _id: str, user_id: str, digest: str): + logger.debug(f"Entering {Routes.DbEngineDigest} with args {debug_session(session)}, {_id=}, {user_id=}, {digest=}") + instance = InstanceManager.get(session, _id) + return instance.open_digest(user_id, digest) + + +@rt(Routes.IaBuddyRequests) +def post(session, _id: str, boundaries: str = None): + logger.debug(f"Entering {Routes.IaBuddyRequests} with args {debug_session(session)}, {_id=}, {boundaries=}") + instance = InstanceManager.get(session, _id) + return instance.ia_requests(json.loads(boundaries) if boundaries else None) + + +@rt(Routes.IaBuddyRequest) +def post(session, _id: str, request: str, boundaries: str = None): + logger.debug(f"Entering {Routes.IaBuddyRequest} with args {debug_session(session)}, {_id=}, {request=}") + instance = InstanceManager.get(session, _id) + return instance.ia_request(request, json.loads(boundaries) if boundaries else None) @rt(Routes.JsonViewerFold) @@ -23,10 +45,3 @@ def post(session, _id: str, node_id: str, folding: str): instance = InstanceManager.get(session, _id) instance.set_node_folding(node_id, folding) return instance.render_node(node_id) - -@rt(Routes.JsonOpenDigest) -def post(session, _id: str, user_id: str, digest: str): - logger.debug(f"Entering {Routes.JsonOpenDigest} with args {debug_session(session)}, {_id=}, {user_id=}, {digest=}") - instance = InstanceManager.get(session, _id) - return instance.open_digest(user_id, digest) - \ No newline at end of file diff --git a/src/components/debugger/assets/Debugger.css b/src/components/debugger/assets/Debugger.css index 00a9788..cb06a20 100644 --- a/src/components/debugger/assets/Debugger.css +++ b/src/components/debugger/assets/Debugger.css @@ -33,6 +33,9 @@ .mmt-jsonviewer { font-family: 'Consolas', 'Monaco', 'Courier New', monospace; font-size: 14px; + overflow-y: auto; + overflow-x: auto; + max-height: 100% } /* Use inherited CSS variables for your custom theme */ diff --git a/src/components/debugger/commands.py b/src/components/debugger/commands.py index 8b64625..83116ff 100644 --- a/src/components/debugger/commands.py +++ b/src/components/debugger/commands.py @@ -11,7 +11,7 @@ class Commands: "hx-post": f"{ROUTE_ROOT}{Routes.DbEngineData}", "hx-target": f"#{self._owner.tabs_manager.get_id()}", "hx-swap": "outerHTML", - "hx-vals": f'{{"_id": "{self._id}", "user_id": "{user_id}"}}', + "hx-vals": f'js:{{"_id": "{self._id}", "user_id": "{user_id}", "boundaries": getTabContentBoundaries("{self._owner.tabs_manager.get_id()}")}}', } def db_engine_refs(self, ref_id: str | None): @@ -19,7 +19,23 @@ class Commands: "hx-post": f"{ROUTE_ROOT}{Routes.DbEngineRefs}", "hx-target": f"#{self._owner.tabs_manager.get_id()}", "hx-swap": "outerHTML", - "hx-vals": f'{{"_id": "{self._id}", "ref_id": "{ref_id}"}}', + "hx-vals": f'js:{{"_id": "{self._id}", "ref_id": "{ref_id}", "boundaries": getTabContentBoundaries("{self._owner.tabs_manager.get_id()}")}}', + } + + def ia_buddy_requests(self): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.IaBuddyRequests}", + "hx-target": f"#{self._owner.tabs_manager.get_id()}", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}", "boundaries": getTabContentBoundaries("{self._owner.tabs_manager.get_id()}")}}', + } + + def ia_buddy_request(self, request_id: str | None): + return { + "hx-post": f"{ROUTE_ROOT}{Routes.IaBuddyRequest}", + "hx-target": f"#{self._owner.tabs_manager.get_id()}", + "hx-swap": "outerHTML", + "hx-vals": f'js:{{"_id": "{self._id}", "request": "{request_id}", "boundaries": getTabContentBoundaries("{self._owner.tabs_manager.get_id()}")}}', } @@ -38,7 +54,7 @@ class JsonViewerCommands: def open_digest(self, user_id, digest): return { - "hx-post": f"{ROUTE_ROOT}{Routes.JsonOpenDigest}", + "hx-post": f"{ROUTE_ROOT}{Routes.DbEngineDigest}", "hx-target": f"#{self._owner.get_owner().tabs_manager.get_id()}", "hx-swap": "outerHTML", "hx-vals": f'{{"_id": "{self._id}", "user_id": "{user_id}", "digest": "{digest}"}}', diff --git a/src/components/debugger/components/Debugger.py b/src/components/debugger/components/Debugger.py index a6a0120..7beb8ca 100644 --- a/src/components/debugger/components/Debugger.py +++ b/src/components/debugger/components/Debugger.py @@ -1,13 +1,17 @@ import logging +from datetime import datetime from fasthtml.components import * +from ai.debug_lmm import DebugConversation from components.BaseComponent import BaseComponent +from components.aibuddy.assets.icons import icon_brain_ok +from components.aibuddy.components.AIBuddy import AIBuddy from components.debugger.assets.icons import icon_dbengine from components.debugger.commands import Commands from components.debugger.components.JsonViewer import JsonViewer from components.debugger.constants import DBENGINE_DEBUGGER_INSTANCE_ID -from components_helpers import mk_ellipsis, mk_icon +from components_helpers import mk_ellipsis, mk_accordion_section from core.instance_manager import InstanceManager from core.utils import get_unique_id @@ -22,43 +26,83 @@ class Debugger(BaseComponent): self.tabs_manager = tabs_manager self.commands = Commands(self) - def add_tab(self, user_id, digest): - content = self.mk_db_engine_object(user_id, digest) + def ia_requests(self, boundaries: dict): + def _mk_span(conversation, helper): + return Span( + f"{datetime.fromtimestamp(conversation.start_time).strftime('%Y-%m-%d %H:%M:%S')} - {conversation.initial_prompt}", + cls=helper.class_string, + **self.commands.ia_buddy_request(conversation.id)) + + ia_buddy = InstanceManager.get(self._session, AIBuddy.create_component_id(self._session)) + conversations = ia_buddy.get_conversations() + + logger.debug(f"mk_ia_requests_object: {conversations}") + + hook = (lambda key, node, helper: isinstance(node.value, DebugConversation), + lambda key, node, helper: _mk_span(node.value, helper)) + + jsonviewer = InstanceManager.get(self._session, + JsonViewer.create_component_id(self._session, prefix=self._id), + JsonViewer, + owner=self, + user_id=None, + data=ia_buddy.get_conversations(), + hooks=[hook], + boundaries=boundaries) + return self._add_tab(f"debugger-iabuddy-requests", "AI requests", jsonviewer) + + def ia_request(self, request_id, boundaries: dict): + def _mk_text_area(value, helper): + return Textarea(value, cls="textarea textarea-sm w-full p-2", disabled=True) + + ia_buddy = InstanceManager.get(self._session, AIBuddy.create_component_id(self._session)) + requests = ia_buddy.get_conversations() + request = next((req for req in requests if req.id == request_id), None) + + logger.debug(f"request: {request}") + if request is None: + return None + + hook = (lambda key, node, helper: key in ("extended_prompt", "response"), + lambda key, node, helper: _mk_text_area(node.value, helper)) + + jsonviewer = InstanceManager.get(self._session, + JsonViewer.create_component_id(self._session, prefix=self._id), + JsonViewer, + owner=self, + user_id=None, + data=request.to_dict(), + hooks=[hook], + boundaries=boundaries) + return self._add_tab(f"debugger-iabuddy-{request_id}", f"Request {request.initial_prompt}", jsonviewer) + + def db_engine_headers(self, user_id, digest): + data = self.db_engine.debug_load(user_id, digest) if digest else self.db_engine.debug_head(user_id) + logger.debug(f"mk_db_engine: {data}") + tab_key = f"debugger-dbengine-{digest}" title = f"DBEngine-{digest if digest else 'head'}" - self.tabs_manager.add_tab(title, content, key=tab_key) - return self.tabs_manager.render() - - def mk_db_engine_object(self, user_id, digest): - data = self.db_engine.debug_load(user_id, digest) if digest else self.db_engine.debug_head(user_id) - - logger.debug(f"mk_db_engine: {data}") - return InstanceManager.get(self._session, - JsonViewer.create_component_id(self._session, prefix=self._id), - JsonViewer, - owner=self, - user_id=user_id, - data=data) + jsonviewer = InstanceManager.get(self._session, + JsonViewer.create_component_id(self._session, prefix=self._id), + JsonViewer, + owner=self, + user_id=user_id, + data=data, + key=tab_key) + return self._add_tab(tab_key, title, jsonviewer) def mk_db_engine(self, selected): - return Div( - Input(type="radio", - name=f"dbengine-accordion-{self._id}", - checked="checked" if selected else None, - cls="p-0! min-h-0!", - ), - Div( - mk_icon(icon_dbengine, can_select=False), mk_ellipsis("DbEngine", cls="text-sm"), - cls="collapse-title p-0 min-h-0 flex truncate", - ), - Div( - *[Div(user_id, **self.commands.db_engine_data(user_id)) for user_id in self.db_engine.debug_users()], - Div("refs", **self.commands.db_engine_refs(None)), - cls="collapse-content pr-0! truncate", - ), - cls="collapse mb-2", - id=f"db_engine_{self._id}", - ) + content = [Div(user_id, **self.commands.db_engine_data(user_id)) for user_id in self.db_engine.debug_users()] + content.append(Div("refs", **self.commands.db_engine_refs(None))) + return mk_accordion_section(self._id, "DBEngine", icon_dbengine, content, selected) + + def mk_ia(self, selected): + ia_request = Div("requests", **self.commands.ia_buddy_requests()) + return mk_accordion_section(self._id, "IABuddy", icon_brain_ok, [ia_request], selected) + + def _add_tab(self, tab_key, title, content): + self.tabs_manager.add_tab(title, content, key=tab_key) + return self.tabs_manager.render() def __ft__(self): return Div( @@ -66,7 +110,7 @@ class Debugger(BaseComponent): mk_ellipsis("Debugger", cls="text-sm font-medium mb-1"), Div( self.mk_db_engine(True), - cls="flex truncate", + self.mk_ia(False), ), id=self._id, diff --git a/src/components/debugger/components/JsonViewer.py b/src/components/debugger/components/JsonViewer.py index de9ef16..4ef8611 100644 --- a/src/components/debugger/components/JsonViewer.py +++ b/src/components/debugger/components/JsonViewer.py @@ -9,6 +9,7 @@ from components.datagrid_new.components.DataGrid import DataGrid from components.debugger.assets.icons import icon_expanded, icon_collapsed, icon_class from components.debugger.commands import JsonViewerCommands from components.debugger.constants import INDENT_SIZE, MAX_TEXT_LENGTH, NODE_OBJECT, NODES_KEYS_TO_NOT_EXPAND +from components_helpers import set_boundaries from core.serializer import TAG_OBJECT from core.utils import get_unique_id @@ -42,13 +43,31 @@ class DictNode(Node): children: dict[str, Node] = dataclasses.field(default_factory=dict) +class JsonViewerHelper: + class_string = f"mmt-jsonviewer-string" + class_bool = f"mmt-jsonviewer-bool" + class_number = f"mmt-jsonviewer-number" + class_null = f"mmt-jsonviewer-null" + class_digest = f"mmt-jsonviewer-digest" + class_object = f"mmt-jsonviewer-object" + class_dataframe = f"mmt-jsonviewer-dataframe" + + @staticmethod + def is_sha256(_value): + return (isinstance(_value, str) and + len(_value) == 64 and + all(c in '0123456789abcdefABCDEF' for c in _value)) + + class JsonViewer(BaseComponent): - def __init__(self, session, _id, owner, user_id, data): + def __init__(self, session, _id, owner, user_id, data, hooks=None, key=None, boundaries=None): super().__init__(session, _id) + self._key = key self._owner = owner # debugger component self.user_id = user_id self.data = data self._node_id = -1 + self._boundaries = boundaries if boundaries else {"height": "600"} self._commands = JsonViewerCommands(self) # A little explanation on how the folding / unfolding work @@ -62,6 +81,12 @@ class JsonViewer(BaseComponent): self._nodes_by_id = {} self.node = self._create_node(None, data) + + # hooks are used to define specific rendering + # They are tuple (Predicate, Element to render (eg Div)) + self.hooks = hooks or [] + + self._helper = JsonViewerHelper() def set_node_folding(self, node_id, folding): if folding == self._folding_mode: @@ -84,7 +109,7 @@ class JsonViewer(BaseComponent): return self._owner def open_digest(self, user_id: str, digest: str): - return self._owner.add_tab(user_id, digest) + return self._owner.db_engine_headers(user_id, digest) def _create_node(self, key, data, level=0): if isinstance(data, list): @@ -115,17 +140,18 @@ class JsonViewer(BaseComponent): return node def _must_expand(self, node): + if not isinstance(node, (ListNode, DictNode)): + return None + if self._folding_mode == FoldingMode.COLLAPSE: return node.node_id in self._nodes_to_track else: return node.node_id not in self._nodes_to_track - def _mk_folding(self, node: Node): - if not isinstance(node, (ListNode, DictNode)): + def _mk_folding(self, node: Node, must_expand: bool | None): + if must_expand is None: return None - must_expand = self._must_expand(node) - return Span(icon_expanded if must_expand else icon_collapsed, cls="icon-16-inline mmt-jsonviewer-folding", style=f"margin-left: -{INDENT_SIZE}px;", @@ -136,15 +162,20 @@ class JsonViewer(BaseComponent): self._node_id += 1 return f"{self._id}-{self._node_id}" - def _render_value(self, node): - def _is_sha256(_value): - return isinstance(_value, str) and len(_value) == 64 and all( - c in '0123456789abcdefABCDEF' for c in _value) + def _render_value(self, key, node, must_expand): + if must_expand is False: + return Span("[...]" if isinstance(node, ListNode) else "{...}", + id=node.node_id, + **self._commands.fold(node.node_id, FoldingMode.EXPAND)) + + for predicate, renderer in self.hooks: + if predicate(key, node, self._helper): + return renderer(key, node, self._helper) if isinstance(node, DictNode): - return self._render_dict(node) + return self._render_dict(key, node) elif isinstance(node, ListNode): - return self._render_list(node) + return self._render_list(key, node) else: data_tooltip = None htmx_params = {} @@ -159,7 +190,7 @@ class JsonViewer(BaseComponent): elif node.value is None: str_value = "null" data_class = "null" - elif _is_sha256(node.value): + elif self._helper.is_sha256(node.value): str_value = str(node.value) data_class = "digest" htmx_params = self._commands.open_digest(self.user_id, node.value) @@ -194,24 +225,22 @@ class JsonViewer(BaseComponent): return Span(str_value, cls=cls, data_tooltip=data_tooltip, **htmx_params) - def _render_dict(self, node: DictNode): - if self._must_expand(node): - return Span("{", - *[ - self._render_node(key, value) - for key, value in node.children.items() - ], - Div("}"), - id=node.node_id) - else: - return Span("{...}", id=node.node_id) + def _render_dict(self, key, node: DictNode): + return Span("{", + *[ + self._render_node(child_key, value) + for child_key, value in node.children.items() + ], + Div("}"), + id=node.node_id) - def _render_list(self, node: ListNode): - def _all_the_same(_node): + def _render_list(self, key, node: ListNode): + def _all_the_same(_key, _node): if len(_node.children) == 0: return False - sample_value = _node.children[0].value + sample_node = _node.children[0] + sample_value = sample_node.value if sample_value is None: return False @@ -220,6 +249,11 @@ class JsonViewer(BaseComponent): if type_ in (int, float, str, bool, list, dict, ValueNode): return False + # a specific rendering is specified + for predicate, renderer in self.hooks: + if predicate(_key, sample_node, self._helper): + return False + return all(type(item.value) == type_ for item in _node.children) def _render_as_grid(_node): @@ -244,27 +278,40 @@ class JsonViewer(BaseComponent): Div("]"), ) - if self._must_expand(node): - if _all_the_same(node): - return _render_as_grid(node) - return _render_as_list(node) - else: - return Span("[...]", id=node.node_id) + return _render_as_grid(node) if _all_the_same(key, node) else _render_as_list(node) def _render_node(self, key, node): + must_expand = self._must_expand(node) # to be able to update the folding when the node is updated return Div( - self._mk_folding(node), + + self._mk_folding(node, must_expand), Span(f'{key} : ') if key is not None else None, - self._render_value(node), + self._render_value(key, node, must_expand), + style=f"margin-left: {INDENT_SIZE}px;", id=node.node_id if hasattr(node, "node_id") else None, ) def __ft__(self): return Div( - Div(self._render_node(None, self.node), id=f"{self._id}-root"), + Div(self._render_node(None, self.node), + id=f"{self._id}-root", + style="margin-left: 0px;"), cls="mmt-jsonviewer", - id=f"{self._id}") + id=f"{self._id}", + **set_boundaries(self._boundaries), + ) + + def __eq__(self, other): + if type(other) is type(self): + return self._key is not None and self._key == other._key + else: + return False + + def __hash__(self): + return hash(self._key) if self._key is not None else super().__hash__() + + @staticmethod def add_quotes(value: str): diff --git a/src/components/debugger/constants.py b/src/components/debugger/constants.py index 5774f1f..6cf06fe 100644 --- a/src/components/debugger/constants.py +++ b/src/components/debugger/constants.py @@ -10,5 +10,7 @@ NODES_KEYS_TO_NOT_EXPAND = ["Dataframe", "__parent__"] class Routes: DbEngineData = "/dbengine-data" DbEngineRefs = "/dbengine-refs" + DbEngineDigest = "/dbengine-digest" + IaBuddyRequests = "/iabuddy-requests" + IaBuddyRequest = "/iabuddy-request" JsonViewerFold = "/jsonviewer-fold" - JsonOpenDigest = "/jsonviewer-open-digest" diff --git a/src/components/drawerlayout/components/DrawerLayout.py b/src/components/drawerlayout/components/DrawerLayout.py index df32445..747057a 100644 --- a/src/components/drawerlayout/components/DrawerLayout.py +++ b/src/components/drawerlayout/components/DrawerLayout.py @@ -3,6 +3,9 @@ from fasthtml.xtend import Script from components.BaseComponent import BaseComponent from components.addstuff.components.AddStuffMenu import AddStuffMenu +from components.admin.components.Admin import Admin +from components.aibuddy.components.AIBuddy import AIBuddy +from components.applications.components.Applications import Applications from components.debugger.components.Debugger import Debugger from components.drawerlayout.assets.icons import icon_panel_contract_regular, icon_panel_expand_regular from components.drawerlayout.constants import DRAWER_LAYOUT_INSTANCE_ID @@ -23,13 +26,22 @@ class DrawerLayout(BaseComponent): self._repositories = self._create_component(Repositories) self._debugger = self._create_component(Debugger) self._add_stuff = self._create_component(AddStuffMenu) + self._ai_buddy = self._create_component(AIBuddy) + self._admin = self._create_component(Admin) + self._applications = self._create_component(Applications) + + self.top_components = self._get_sub_components("TOP", [self._ai_buddy]) + self.bottom_components = self._get_sub_components("BOTTOM", [self._ai_buddy]) def __ft__(self): return Div( Div( Div( self._add_stuff, + self._ai_buddy, + self._applications, self._repositories, + self._admin, self._debugger, ), Div(cls="dl-splitter", id=f"splitter_{self._id}"), @@ -45,8 +57,10 @@ class DrawerLayout(BaseComponent): icon_panel_expand_regular, cls="swap", ), - + Div(*[component for component in self.top_components], name="top", cls='dl-top'), Div(self._tabs, id=f"page_{self._id}", name="page", cls='dl-page'), + Div(*[component for component in self.bottom_components], name="bottom", cls='dl-bottom'), + cls='dl-main', tabindex="0", ), @@ -64,3 +78,15 @@ class DrawerLayout(BaseComponent): @staticmethod def create_component_id(session, suffix: str = ""): return f"{DRAWER_LAYOUT_INSTANCE_ID}{session['user_id']}{suffix}" + + @staticmethod + def _get_sub_components(location, components): + sub_components = [] + for component in components: + if hasattr(component, "register_components"): + sub_components.extend([ + sub_component for sub_component, loc in component.register_components() + if loc == location + ]) + + return sub_components diff --git a/src/components/hoildays/__init__.py b/src/components/hoildays/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/hoildays/assets/Holidays.css b/src/components/hoildays/assets/Holidays.css new file mode 100644 index 0000000..e69de29 diff --git a/src/components/hoildays/assets/__init__.py b/src/components/hoildays/assets/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/hoildays/assets/icons.py b/src/components/hoildays/assets/icons.py new file mode 100644 index 0000000..76ac0a6 --- /dev/null +++ b/src/components/hoildays/assets/icons.py @@ -0,0 +1,8 @@ +from fastcore.basics import NotStr + +# Material - HolidayVillageTwotone +icon_holidays = NotStr(""" + + + +""") \ No newline at end of file diff --git a/src/components/hoildays/commands.py b/src/components/hoildays/commands.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/hoildays/components/HolidaysViewer.py b/src/components/hoildays/components/HolidaysViewer.py new file mode 100644 index 0000000..9349528 --- /dev/null +++ b/src/components/hoildays/components/HolidaysViewer.py @@ -0,0 +1,33 @@ +from fasthtml.components import * + +from components.BaseComponent import BaseComponent +from components.hoildays.constants import HOLIDAYS_VIEWER_INSTANCE_ID +from components.datagrid_new.components.DataGrid import DataGrid +from components.hoildays.helpers.calendar_helper import CalendarHelper +from components.hoildays.helpers.nibelisparser import OffPeriodDetails +from components.repositories.constants import USERS_REPOSITORY_NAME, HOLIDAYS_TABLE_NAME +from helpers.Datahelper import DataHelper + + +class HolidaysViewer(BaseComponent): + def __init__(self, session, _id, settings_manager, boundaries=None): + super().__init__(session, _id) + self._settings_manager = settings_manager + self._boundaries = boundaries + + def __ft__(self): + records = DataHelper.get(self._session, + self._settings_manager, + USERS_REPOSITORY_NAME, + HOLIDAYS_TABLE_NAME, + OffPeriodDetails) + names, holidays = CalendarHelper.create_calendar(records) + calendar = DataGrid.new(self._session, holidays, index=names) + return Div( + calendar, + cls="mt-2", + ) + + @staticmethod + def create_component_id(session): + return f"{HOLIDAYS_VIEWER_INSTANCE_ID}{session['user_id']}" diff --git a/src/components/hoildays/components/__init__.py b/src/components/hoildays/components/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/hoildays/constants.py b/src/components/hoildays/constants.py new file mode 100644 index 0000000..ae6d47c --- /dev/null +++ b/src/components/hoildays/constants.py @@ -0,0 +1 @@ +HOLIDAYS_VIEWER_INSTANCE_ID = "__HolidaysViewer__" diff --git a/src/components/hoildays/helpers/__init__.py b/src/components/hoildays/helpers/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/components/hoildays/helpers/calendar_helper.py b/src/components/hoildays/helpers/calendar_helper.py new file mode 100644 index 0000000..78024c9 --- /dev/null +++ b/src/components/hoildays/helpers/calendar_helper.py @@ -0,0 +1,81 @@ +from datetime import date, timedelta + +from components.hoildays.helpers.nibelisparser import OffPeriodDetails + + +class CalendarHelper: + @staticmethod + def create_calendar(records: list[OffPeriodDetails], start_date: date | None = None, end_date: date | None = None): + """ + + :param records: + :param start_date: + :param end_date: + :return: + """ + # multiple algorithms possible. The chosen one + # two steps + # step one + # create a dict [date, [name, holiday]] for all record in records + # in the loop, records all the names + # + # step two + # create a dict [date, list[holiday]] according to the sorted list names + + # step 1 + temp = {} + names = set() + for record in records: + full_name = record.first_name + " " + record.last_name + names.add(full_name) + duration = CalendarHelper.get_period(record.start_date, record.end_date) + last_index = len(duration) - 1 + for index, current_date in enumerate(duration): + calendar = temp.setdefault(current_date, {}) + if full_name in calendar: + calendar[full_name].append(CalendarHelper.get_reason(record, index == 0, index == last_index)) + else: + calendar[full_name] = [CalendarHelper.get_reason(record, index == 0, index == last_index)] + + res = {} + names = list(sorted(names)) + start_date_to_use = start_date or min(temp.keys()) + end_date_to_use = end_date or max(temp.keys()) + + for current_date in CalendarHelper.get_period(start_date_to_use, end_date_to_use): + if current_date in temp: + values = [] + res[current_date] = values + for name in names: + if name in temp[current_date]: + values.append(temp[current_date][name]) + else: + values.append(None) + + else: + res[current_date] = [None] * len(names) + + return names, res + + @staticmethod + def get_reason(record: OffPeriodDetails, is_start, is_end): + suffix = "" + if is_start and record.start_am_pm: + suffix += "_" + record.start_am_pm + if is_end and record.end_am_pm: + suffix += "_" + record.end_am_pm + + return record.reason + suffix + + @staticmethod + def get_period(start_date: date, end_date: date): + if end_date < start_date: + raise ValueError("end date is before start date.") + + current_date = start_date + res = [current_date] + while current_date < end_date: + current_date = current_date + timedelta(days=1) + res.append(current_date) + + return res diff --git a/src/components/hoildays/helpers/nibelisparser.py b/src/components/hoildays/helpers/nibelisparser.py new file mode 100644 index 0000000..f36be8a --- /dev/null +++ b/src/components/hoildays/helpers/nibelisparser.py @@ -0,0 +1,240 @@ +import dataclasses +import datetime +from typing import Literal + + +@dataclasses.dataclass +class ParsingError: + def __init__(self, reason: str, parser): + self.reason = reason + self.pos = parser.pos + self.line = parser.line + self.column = parser.column + + +@dataclasses.dataclass +class OffPeriodDetails: + first_name: str + last_name: str + start_date: datetime.date + start_am_pm: Literal["am", "pm"] | None + end_date: datetime.date + end_am_pm: Literal["am", "pm"] | None + total: float + reason: str + date_import: datetime.date + + def get_key(self): + return (f"{self.first_name}|{self.last_name}|" + f"{self.start_date}|{self.start_am_pm}|" + f"{self.end_date}|{self.end_am_pm}") + + +class NibelisParser: + def __init__(self, data: str): + self.data = data + self.pos = 0 + self.line = 1 + self.column = 1 + self.error_sink: list[ParsingError] = [] + + def parse(self): + return self.read_input() + + def read_input(self): + # self.data = self.data.replace("\n\t\n", "\t\n") + + while (line := self.read_line().rstrip("\t")) != "Demandes qualifiées" and line is not None: + pass + + res = [] + + try: + while True: + if (detail := self.read_detail()) is not None: + res.append(detail) + except StopIteration: + pass + + return res + + def read_detail(self): + start = self.read_line() # Détail de la demande + if start is None: + raise StopIteration() + + if start.strip() == "" or start == "Demandes qualifiées": + return None + + if start != "Détail de la demande": + self.error_sink.append(ParsingError("'Détail de la demande' not found.", self)) + return None + + try: + self.read_word() # ENGI402 + names = [] + while (token := self.read_word()) not in ["Le", "Du"]: + names.append(token) + first_name, last_name = self.get_first_name_last_name(names) + + if token == "Le": + start_date, start_am_pm, end_date, end_am_pm = self.read_one_date() + else: + start_date, start_am_pm, end_date, end_am_pm = self.read_period() + total = self.read_total() + reason = " ".join([self.read_word(), self.read_word()]) + self.read_line() # finish the line + + return OffPeriodDetails(first_name, + last_name, + start_date, + start_am_pm, + end_date, + end_am_pm, + total, + reason, + datetime.date.today()) + + except Exception as ex: + self.error_sink.append(ParsingError(str(ex), self)) + self.read_line() # finish the line + return None + + def read_one_date(self): + """ + + :return: + """ + # ... Le] lundi 20/05/2024 [0.50 J. ... + # ... Le] jeudi 04/01/2024 après-midi exclu [0.50 J. ... + # ... Le] lundi 29/01/2024 matin exclu [0.50 J. ... + + self.read_word() # read day + date_as_str = self.read_word() + start_date = datetime.datetime.strptime(date_as_str, "%d/%m/%Y").date() + end_date = start_date + datetime.timedelta(days=1) + am_pm_as_str = self.read_until(lambda c: c.isdigit(), "").strip() + am_pm = self.decode_am_pm(am_pm_as_str) + return start_date, am_pm, end_date, am_pm + + def read_period(self): + """ + + :return: + """ + # ... Du] <= lundi 27/05/2024 au mardi 28/05/2024 => [3.50 J. .. + # ... Du] <= lundi 19/02/2024 matin inclus au mardi 20/02/2024 après-midi exclu => [3.50 J. .. + # ... Du] <= mardi 20/02/2024 matin exclu au vendredi 23/02/2024 après-midi inclus => [3.50 J. .. + self.read_word() # read day + date_as_str = self.read_word() + start_am_pm_content = self.read_words_until(["au"]) + self.read_word() # read day + end_as_str = self.read_word() + end_am_pm_content = self.read_until(lambda c: c.isdigit()) + + start_date = datetime.datetime.strptime(date_as_str, "%d/%m/%Y").date() + end_date = datetime.datetime.strptime(end_as_str, "%d/%m/%Y").date() + end_date = end_date + datetime.timedelta(days=1) + start_am_pm = self.decode_am_pm(start_am_pm_content) + end_am_pm = self.decode_am_pm(end_am_pm_content) + + return start_date, start_am_pm, end_date, end_am_pm + + def read_total(self): + total_as_str = self.read_word() + self.read_word() # parse J. + return float(total_as_str) + + def read_line(self, strip=False): + return self._read_content(["\n"], strip=strip) + + def read_word(self, strip=True): + return self._read_content(["\n", "\t", " "], strip=strip) + + def read_words_until(self, words: list): + names = [] + while True: + token = self.read_word() + if token is None or token in words: + break + names.append(token) + + return names + + def read_until(self, predicate, default=None): + if self.pos == len(self.data): + return default + + buffer = "" + while self.pos < len(self.data) and not predicate(self.data[self.pos]): + buffer += self.data[self.pos] + self._move_forward() + + return buffer + + def _read_content(self, tokens: list, strip): + if self.pos >= len(self.data): + return None + + buffer = "" + while self.pos < len(self.data) and self.data[self.pos] not in tokens: + buffer += self.data[self.pos] + self._move_forward() + + # eat the token + self._move_forward() + + if strip: + while self.pos < len(self.data) and self.data[self.pos] in tokens: + self._move_forward() + + return buffer + + def _move_forward(self): + self.pos += 1 + try: + if self.data[self.pos - 1] == "\n": # \n is a 'new line', so it's counted in the new line + self.line += 1 + self.column = 1 + + else: + self.column += 1 + except IndexError: + return False + + return True + + @staticmethod + def get_first_name_last_name(names: list[str]): + if names[0][0].isdigit(): + names.pop(0) # sometimes, the code (ex PROD134) is in two parts + + for i, name in enumerate(names): + if name.isupper(): + break + + return " ".join(names[:i]), " ".join(names[i:]) + + @staticmethod + def decode_am_pm(input_): + if not input_: + return None + + if isinstance(input_, list): + input_ = " ".join(input_) + else: + input_ = input_.replace("\t", " ") + input_ = input_.strip() + input_ = " ".join(input_.split()) + + match input_: + case "matin inclus": + return "am" + case "matin exclu": + return "pm" + case "après-midi inclus": + return "pm" + case "après-midi exclu": + return "am" + case _: + return None diff --git a/src/components/repositories/constants.py b/src/components/repositories/constants.py index 930b70b..d0c27a0 100644 --- a/src/components/repositories/constants.py +++ b/src/components/repositories/constants.py @@ -1,5 +1,7 @@ REPOSITORIES_INSTANCE_ID = "__Repositories__" ROUTE_ROOT = "/repositories" +USERS_REPOSITORY_NAME = "__USERS___" +HOLIDAYS_TABLE_NAME = "__HOLIDAYS__" class Routes: AddRepository = "/add-repo" diff --git a/src/components/repositories/db_management.py b/src/components/repositories/db_management.py index 07e72ea..c666e84 100644 --- a/src/components/repositories/db_management.py +++ b/src/components/repositories/db_management.py @@ -97,6 +97,13 @@ class RepositoriesDbManager: self.settings_manager.save(self.session, REPOSITORIES_SETTINGS_ENTRY, settings) return repository + def exists_repository(self, repository_name): + if repository_name is None or repository_name == "": + raise ValueError("Repository name cannot be empty.") + + settings = self._get_settings() + return repository_name in [repo.name for repo in settings.repositories] + def get_repositories(self): return self._get_settings().repositories @@ -141,6 +148,36 @@ class RepositoriesDbManager: repository.tables.remove(table_name) self.settings_manager.save(self.session, REPOSITORIES_SETTINGS_ENTRY, settings) + def exists_table(self, repository_name: str, table_name: str): + if repository_name is None or repository_name == "": + raise ValueError("Repository name cannot be empty.") + + if table_name is None or table_name == "": + raise ValueError("Table name cannot be empty.") + + settings = self._get_settings() + repository = next(filter(lambda r: r.name == repository_name, settings.repositories), None) + if repository is None: + return False + + return table_name in repository.tables + + def ensure_exists(self, repository_name: str, table_name: str): + """ + + :param repository_name: + :param table_name: + :return: + """ + try: + if not self.exists_table(repository_name, table_name): + self.add_table(repository_name, table_name) + + except NameError: + self.add_repository(repository_name, [table_name]) + + return repository_name, table_name + def select_repository(self, repository_name: str): """ Select and save the specified repository name in the current session's settings. @@ -172,12 +209,12 @@ class RepositoriesDbManager: settings = self._get_settings() repository = next(filter(lambda r: r.name == repository_name, settings.repositories), None) if repository is None: - raise ValueError(f"Repository '{repository_name}' does not exist.") + raise NameError(f"Repository '{repository_name}' does not exist.") for table_name, must_exist in zip(tables_names, [t1_must_exists, t2_must_exists]): if must_exist: if table_name not in repository.tables: - raise ValueError(f"Table '{table_name}' does not exist in repository '{repository_name}'.") + raise NameError(f"Table '{table_name}' does not exist in repository '{repository_name}'.") else: if table_name in repository.tables: raise ValueError(f"Table '{table_name}' already exists in repository '{repository_name}'.") diff --git a/src/components/tabs/components/MyTabs.py b/src/components/tabs/components/MyTabs.py index 1ba773f..e37dcb2 100644 --- a/src/components/tabs/components/MyTabs.py +++ b/src/components/tabs/components/MyTabs.py @@ -59,6 +59,9 @@ class MyTabs(BaseComponent): if key in self.tabs_by_key: self.select_tab_by_id(self.tabs_by_key[key].id) + def get_tab_id(self, tab_key): + return self.tabs_by_key[tab_key].id + def remove_tab(self, tab_id): """ Removes a tab with the specified ID from the current list of tabs. diff --git a/src/components_helpers.py b/src/components_helpers.py index aea6d5a..cb6b45f 100644 --- a/src/components_helpers.py +++ b/src/components_helpers.py @@ -3,12 +3,12 @@ from fasthtml.components import * from core.utils import merge_classes -def mk_icon(icon, size=20, can_select=True, cls='', **kwargs): +def mk_icon(icon, size=20, can_select=True, cls='', tooltip=None, **kwargs): merged_cls = merge_classes(f"icon-{size}", 'icon-btn' if can_select else '', cls, kwargs) - return Div(icon, cls=merged_cls, **kwargs) + return mk_tooltip(icon, tooltip, cls=merged_cls, **kwargs) if tooltip else Div(icon, cls=merged_cls, **kwargs) def mk_ellipsis(txt: str, cls='', **kwargs): @@ -18,11 +18,22 @@ def mk_ellipsis(txt: str, cls='', **kwargs): return Div(txt, cls=merged_cls, data_tooltip=txt, **kwargs) +def mk_tooltip(element, tooltip: str, cls='', **kwargs): + merged_cls = merge_classes("mmt-tooltip", + cls, + kwargs) + return Div(element, cls=merged_cls, data_tooltip=tooltip, **kwargs) + + def mk_tooltip_container(component_id): return Div(id=f"tt_{component_id}", style="position: fixed; z-index: 1000;", cls="mmt-tooltip-container") -def mk_dialog_buttons(ok_title: str = "OK", cancel_title: str = "Cancel", on_ok: dict = None, on_cancel: dict = None): +def mk_dialog_buttons(ok_title: str = "OK", + cancel_title: str = "Cancel", + on_ok: dict = None, + on_cancel: dict = None, + cls=None): if on_ok is None: on_ok = {} if on_cancel is None: @@ -34,7 +45,7 @@ def mk_dialog_buttons(ok_title: str = "OK", cancel_title: str = "Cancel", on_ok: Button(cancel_title, cls="btn btn-ghost btn-sm", **on_cancel), cls="flex justify-end" ), - cls="flex justify-end w-full" + cls=merge_classes("flex justify-end w-full", cls) ) @@ -48,3 +59,49 @@ def mk_select_option(option: str, value=None, selected_value: str = None, select attrs["disabled"] = True return Option(option, **attrs) + + +def mk_accordion_section(component_id, title, icon, content, selected=False): + return Div( + Input(type="radio", + name=f"debugger-accordion-{component_id}", + checked="checked" if selected else None, + cls="p-0! min-h-0!", + ), + Div( + mk_icon(icon, can_select=False), mk_ellipsis(title, cls="text-sm"), + cls="collapse-title p-0 min-h-0 flex truncate", + ), + Div( + *content, + cls="collapse-content pr-0! truncate", + ), + cls="collapse mb-2", + id=f"{component_id}", + ) + + +def set_boundaries(boundaries, remove_margin=True, other=0): + if isinstance(boundaries, int): + max_height = boundaries + else: + max_height = int(boundaries["height"]) + + if remove_margin: + max_height -= 8 + + max_height -= other + + return {"style": f"max-height:{max_height}px;"} + + +def safe_get_dialog_buttons_parameters(buttons_dict): + res = {} + if buttons_dict is None: + return res + + for param in ["ok_title", "cancel_title", "on_ok", "on_cancel"]: + if param in buttons_dict: + res[param] = buttons_dict[param] + + return res diff --git a/src/config.py b/src/config.py index 02982ce..a526112 100644 --- a/src/config.py +++ b/src/config.py @@ -8,12 +8,6 @@ logger = logging.getLogger("config") # Load environment variables from .env file load_dotenv() -# # API configuration -# OPENROUTER_API_KEY = os.getenv("OPENROUTER_API_KEY") -# OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1" -# -# # Default model to use -# DEFAULT_MODEL = os.getenv("DEFAULT_MODEL", "openai/gpt-3.5-turbo") # Database settings DB_PATH = os.getenv("DB_PATH", "tools.db") @@ -22,13 +16,8 @@ logger.info(f"{DB_PATH=}") # Authentication settings SECRET_KEY = os.getenv("SECRET_KEY", "your-secret-key-change-in-production") -# # GitHub OAuth settings -# GITHUB_CLIENT_ID = os.getenv("GITHUB_CLIENT_ID") -# GITHUB_CLIENT_SECRET = os.getenv("GITHUB_CLIENT_SECRET") -# GITHUB_REDIRECT_URI = os.getenv("GITHUB_REDIRECT_URI", "/auth/github/callback") - # Admin user (created on first run if provided) -ADMIN_EMAIL = os.getenv("ADMIN_EMAIL", "admin") +ADMIN_EMAIL = os.getenv("ADMIN_EMAIL", "admin@mmt.com") ADMIN_PASSWORD = os.getenv("ADMIN_PASSWORD", "admin") logger.info(f"{ADMIN_EMAIL=}") @@ -37,7 +26,13 @@ SESSION_EXPIRY = int(os.getenv("SESSION_EXPIRY", "604800")) # 7 days default logger.info(f"{SESSION_EXPIRY=}") # Application settings -DEBUG = os.getenv("DEBUG", "True").lower() == "true" +DEBUG = os.getenv("DEBUG", "true").lower() == "true" logger.info(f"{DEBUG=}") APP_NAME = "My Managing Tools" + +APP_PORT = os.getenv("PORT", 5001) +logger.info(f"{APP_PORT=}") + +OLLAMA_HOST = os.environ.get('OLLAMA_HOST', "http://172.31.240.1:11434") +logger.info(f"{OLLAMA_HOST=}") diff --git a/src/constants.py b/src/constants.py index 160e6b6..aabae3a 100644 --- a/src/constants.py +++ b/src/constants.py @@ -1,3 +1,7 @@ +SESSION_USER_ID_KEY = "user_id" +NO_SESSION = "__NO_SESSION__" +NOT_LOGGED = "__NOT_LOGGED__" + class Routes: Root = "/" Logout = "/logout" diff --git a/src/core/instance_manager.py b/src/core/instance_manager.py index 6334deb..8f6cd2d 100644 --- a/src/core/instance_manager.py +++ b/src/core/instance_manager.py @@ -1,10 +1,8 @@ import logging from components.BaseComponent import BaseComponent - -SESSION_ID_KEY = "user_id" -NO_SESSION = "__NO_SESSION__" -NOT_LOGGED = "__NOT_LOGGED__" +from constants import NO_SESSION +from core.utils import get_user_id logger = logging.getLogger("InstanceManager") @@ -14,7 +12,8 @@ def debug_session(session): return f"session={NO_SESSION}" else: return f"session={InstanceManager.get_session_id(session)}" - + + class InstanceManager: _instances = {} @@ -45,7 +44,7 @@ class InstanceManager: if issubclass(instance_type, BaseComponent) \ else instance_type(instance_id, **kwargs) InstanceManager._instances[key] = new_instance - + return InstanceManager._instances[key] @staticmethod @@ -103,6 +102,4 @@ class InstanceManager: @staticmethod def get_session_id(session: dict | None): - return session[SESSION_ID_KEY] if session else NOT_LOGGED - - + return get_user_id(session) diff --git a/src/core/settings_management.py b/src/core/settings_management.py index 4258984..9726c5d 100644 --- a/src/core/settings_management.py +++ b/src/core/settings_management.py @@ -1,8 +1,8 @@ import logging from datetime import datetime +from constants import NOT_LOGGED, NO_SESSION from core.dbengine import DbEngine, TAG_PARENT, TAG_USER, TAG_DATE, DbException -from core.instance_manager import NO_SESSION, NOT_LOGGED from core.settings_objects import * load_settings_obj() # needed to make sure that the import of core is not removed @@ -13,6 +13,10 @@ logger = logging.getLogger(__name__) class NoDefaultCls: + """ + No Default value class + Return when no default value is provided. + """ pass @@ -155,6 +159,14 @@ class SettingsTransaction: class GenericDbManager: + """ + Given an obj_entry (entry in DbEngine) and obj_type (object to serialize), + >>> db = GenericDbManager(session, settings_manager, obj_entry, obj_type) + >>> db.prop_name = value # will save the value to the database. + >>> db.prop_name # will load the value from the database. + + """ + def __init__(self, session, settings_manager: SettingsManager, obj_entry, obj_type): self.__dict__["_session"] = session self.__dict__["_settings_manager"] = settings_manager @@ -167,7 +179,7 @@ class GenericDbManager: settings = self._settings_manager.load(self._session, self._obj_entry, self._obj_type()) if not (hasattr(settings, key)): - raise AttributeError(f"Settings {self._obj_entry.__name__} has no attribute {key}") + raise AttributeError(f"Settings '{self._obj_entry}' has no attribute '{key}'.") setattr(settings, key, value) self._settings_manager.save(self._session, self._obj_entry, settings) @@ -178,6 +190,68 @@ class GenericDbManager: settings = self._settings_manager.load(self._session, self._obj_entry, self._obj_type()) if not (hasattr(settings, item)): - raise AttributeError(f"Settings {self._obj_entry.__name__} has no attribute {item}") + raise AttributeError(f"Settings '{self._obj_entry}' has no attribute '{item}'.") return getattr(settings, item) + + +class NestedSettingsManager: + """ + Manages access and modification of a specific subset of persistent settings. + + The GenericSubDbManager class provides mechanisms to dynamically get and set + attributes for a specified settings object accessed through a session. It + handles the retrieval, modification, and persistence of settings using a + settings manager, ensuring that only valid attributes can be managed. + + Given an obj_entry (entry in DbEngine) and obj_type (object to serialize), + >>> db = NestedSettingsManager(session, settings_manager, obj_entry, obj_type, obj_attribute) + >>> db.prop_name = value # will save obj_type.obj_attribute.prop_name in database + >>> db.prop_name # will load obj_type.obj_attribute.prop_name from database + """ + + def __init__(self, session: dict, settings_manager: SettingsManager, obj_entry, obj_type, obj_attribute): + self.__dict__["_session"] = session + self.__dict__["_settings_manager"] = settings_manager + self.__dict__["_obj_entry"] = obj_entry + self.__dict__["_obj_type"] = obj_type + self.__dict__["_obj_attribute"] = obj_attribute + + def __getattr__(self, item): + if item.startswith("_"): + return super().__getattribute__(item) + + settings, obj = self._get_settings_and_object() + + if not hasattr(obj, item): + raise AttributeError(f"Settings '{self._obj_attribute}' has no attribute '{item}'.") + + return getattr(obj, item) + + def __setattr__(self, key, value): + if key.startswith("_"): + super().__setattr__(key, value) + + settings, obj = self._get_settings_and_object() + if not (hasattr(obj, key)): + raise AttributeError(f"Settings '{self._obj_attribute}', from '{self._obj_entry}' has no attribute '{key}'.") + + setattr(obj, key, value) + self._settings_manager.save(self._session, self._obj_entry, settings) + + def update(self, values: dict, ignore_missing=False): + settings, obj = self._get_settings_and_object() + for k, v in values.items(): + if hasattr(obj, k): + setattr(obj, k, v) + elif not ignore_missing: + raise AttributeError(f"Settings '{self._obj_attribute}', from '{self._obj_entry}' has no attribute '{k}'.") + + self._settings_manager.save(self._session, self._obj_entry, settings) + + def _get_settings_and_object(self): + settings = self._settings_manager.load(self._session, self._obj_entry, self._obj_type()) + if not hasattr(settings, self._obj_attribute): + raise AttributeError(f"Settings '{self._obj_entry}' has no attribute '{self._obj_attribute}'.") + + return settings, getattr(settings, self._obj_attribute) diff --git a/src/core/utils.py b/src/core/utils.py index 2db6064..73b300d 100644 --- a/src/core/utils.py +++ b/src/core/utils.py @@ -8,9 +8,12 @@ import types import uuid from enum import Enum from io import BytesIO +from urllib.parse import urlparse import pandas as pd +from constants import SESSION_USER_ID_KEY, NOT_LOGGED, NO_SESSION + PRIMITIVES = (str, bool, type(None), int, float) @@ -378,3 +381,39 @@ def merge_classes(*args): return " ".join(unique_elements) else: return None + + +def get_user_id(session: dict | None): + return str(session.get(SESSION_USER_ID_KEY, NOT_LOGGED)) if session is not None else NO_SESSION + + +def split_host_port(url): + """ + Split a URL into host and port components. + + Args: + url (str): The full URL to split + + Returns: + tuple: (host, port) where port is an integer if specified, otherwise None + """ + parsed_url = urlparse(url) + + # Get netloc (host:port part) + netloc = parsed_url.netloc + + # Split netloc by ':' to separate host and port + if ':' in netloc: + host, port_str = netloc.split(':', 1) + port = int(port_str) + else: + host = netloc + # Use default ports based on scheme if port is not specified + if parsed_url.scheme == 'http': + port = 80 + elif parsed_url.scheme == 'https': + port = 443 + else: + port = None + + return host, port diff --git a/src/helpers/ComponentsInstancesHelper.py b/src/helpers/ComponentsInstancesHelper.py new file mode 100644 index 0000000..89a6136 --- /dev/null +++ b/src/helpers/ComponentsInstancesHelper.py @@ -0,0 +1,8 @@ +from components.repositories.components.Repositories import Repositories +from core.instance_manager import InstanceManager + + +class ComponentsInstancesHelper: + @staticmethod + def get_repositories(session): + return InstanceManager.get(session, Repositories.create_component_id(session)) diff --git a/src/helpers/Datahelper.py b/src/helpers/Datahelper.py new file mode 100644 index 0000000..3cdcfa7 --- /dev/null +++ b/src/helpers/Datahelper.py @@ -0,0 +1,20 @@ +from dataclasses import is_dataclass + +from components.datagrid_new.db_management import DataGridDbManager + + +class DataHelper: + @staticmethod + def get(session, settings_manager, repository_name, table_name, object_type=None): + key = repository_name, table_name + datagrid_db = DataGridDbManager(session, settings_manager, key) + dataframe = datagrid_db.load_dataframe() + + if object_type: + if is_dataclass(object_type): + return [object_type(**row) for row in dataframe.to_dict(orient="records")] + else: + raise ValueError("object_type must be a dataclass type") + + else: + return dataframe diff --git a/src/helpers/__init__.py b/src/helpers/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/logging.yaml b/src/logging.yaml index 00002f8..214389c 100644 --- a/src/logging.yaml +++ b/src/logging.yaml @@ -21,7 +21,14 @@ loggers: level: INFO handlers: [console] propagate: False - + httpcore: + level: ERROR + handlers: [ console ] + propagate: False + httpx: + level: INFO + handlers: [ console ] + propagate: False watchfiles.main: level: ERROR handlers: [console] diff --git a/src/main.py b/src/main.py index 959c785..51bcb49 100644 --- a/src/main.py +++ b/src/main.py @@ -1,7 +1,7 @@ # global layout +import asyncio import logging.config -import requests import yaml from fasthtml.common import * @@ -18,6 +18,7 @@ from components.page_layout_new import page_layout_new, page_layout_lite from components.register.components.Register import Register from components.register.constants import ROUTE_ROOT as REGISTER_ROUTE_ROOT from components.register.constants import Routes as RegisterRoutes +from config import APP_PORT from constants import Routes from core.dbengine import DbException from core.instance_manager import InstanceManager @@ -45,9 +46,13 @@ logger = logging.getLogger("MainApp") links = [ # start with daisyui - Link(href="https://cdn.jsdelivr.net/npm/daisyui@5", rel="stylesheet", type="text/css"), - Link(href="https://cdn.jsdelivr.net/npm/daisyui@5/themes.css", rel="stylesheet", type="text/css"), - Script(src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"), + # Link(href="https://cdn.jsdelivr.net/npm/daisyui@5", rel="stylesheet", type="text/css"), + # Link(href="https://cdn.jsdelivr.net/npm/daisyui@5/themes.css", rel="stylesheet", type="text/css"), + # Script(src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"), + + Link(href="./assets/daisyui-5.css", rel="stylesheet", type="text/css"), + Link(href="./assets/daisyui-5-themes.css", rel="stylesheet", type="text/css"), + Script(src="./assets/tailwindcss-browser@4.js"), # Old drawer layout Script(src="./assets/DrawerLayout.js", defer=True), @@ -131,21 +136,9 @@ def register_component(name, path, app_module_name): links.extend(component_links) except ImportError: - logging.error(f"Could not import module {path}") - - -def query_mistral(prompt): - """Send a query to the Mistral model via Ollama API""" - ollama_host = os.environ.get('OLLAMA_HOST', 'http://localhost:11434') - response = requests.post( - f"{ollama_host}/api/generate", - json={ - "model": "mistral", - "prompt": prompt, - "stream": False - } - ) - return response.json() + logger.error(f"Could not import module {path}. Failed to register component {name}.") + except AttributeError as ex: + logger.error(f"Error: {ex}. Failed to register component {name}.") register_component("login", "components.login", "LoginApp") @@ -153,11 +146,14 @@ register_component("register", "components.register", "RegisterApp") register_component("theme_controller", "components.themecontroller", "ThemeControllerApp") register_component("main_layout", "components.drawerlayout", "DrawerLayoutApp") register_component("tabs", "components.tabs", "TabsApp") # before repositories +register_component("applications", "components.applications", "ApplicationsApp") register_component("repositories", "components.repositories", "RepositoriesApp") register_component("add_stuff", "components.addstuff", None) register_component("form", "components.form", "FormApp") register_component("datagrid_new", "components.datagrid_new", "DataGridApp") register_component("debugger", "components.debugger", "DebuggerApp") +register_component("ai_buddy", "components.aibuddy", "AIBuddyApp") +register_component("admin", "components.admin", "AdminApp") routes.extend([ # old stuffs @@ -288,19 +284,17 @@ def get(session): return Titled("I like toast") +async def main(): + logger.info(f" Starting FastHTML server on http://localhost:{APP_PORT}") + serve(port=APP_PORT) + + if __name__ == "__main__": - # Start your application - print("Application starting...") - - print("Checking if Mistral model is available...") - try: - requests.post( - f"{os.environ.get('OLLAMA_HOST', 'http://localhost:11434')}/api/pull", - json={"name": "mistral"} - ) - print("Mistral model is ready") - except Exception as e: - print(f"Error pulling Mistral model: {e}") - - - serve(port=5001) + # Start your application + logger.info("Application starting...") + try: + asyncio.run(main()) + except KeyboardInterrupt: + logger.info("\nStopping application...") + except Exception as e: + logger.error(f"Error: {e}") diff --git a/tests/helpers.py b/tests/helpers.py index 3d7a777..71a8779 100644 --- a/tests/helpers.py +++ b/tests/helpers.py @@ -2,6 +2,7 @@ import dataclasses import json import re from collections import OrderedDict +from typing import Any import numpy import pandas as pd @@ -43,6 +44,54 @@ class Contains: s: str +@dataclasses.dataclass +class JsonViewerNode: + is_expanded: bool | None + key: str + value: Any + debug_key: Any = None + debug_folding: Any = None + + def find(self, path): + """ + Finds and returns a node in a hierarchical structure based on a dot-delimited path. + + The method uses a recursive helper function to navigate through a tree-like + hierarchical node structure. Each node in the structure is assumed to potentially + have a "children" attribute, which is iterated to find matching keys in the path. + If, at any point, a node does not have the expected structure or the key is not + found within the children, the method will return None. + + :param path: A dot-delimited string representing the hierarchical path to + the desired node (e.g., "root.child.subchild"). + :return: The node in the hierarchy that matches the specified path or None + if no such node exists. + """ + + def _find(node, path_parts): + if len(path_parts) == 0: + return node + + element = node.value # to deal with ft element + + if not hasattr(element, "children"): + return None + + to_find = path_parts[0] + + for child in element.children: + child_node = extract_jsonviewer_node(child) + if child_node is not None and child_node.key == to_find: + return _find(child_node, path_parts[1:]) + + return None + + path_parts = path.split(".") + return _find(self, path_parts) + + def text_value(self): + return str(self.value.children[0]) + Empty = EmptyElement() @@ -424,6 +473,37 @@ def matches(actual, expected, path=""): return True +def contains(lst, element, recursive=False): + """ + Check if any item in the list matches the given element pattern + using the existing matches() function. + + Args: + lst: List of elements to search through + element: Element pattern to match against + recursive: If True, also search in children of each element + + Returns: + bool: True if a match is found, False otherwise + """ + if not lst: + return False + + for item in lst: + try: + if matches(item, element): + return True + except AssertionError: + pass + + # If recursive is True, check children too + if recursive and hasattr(item, "children") and item.children: + if contains(item.children, element, recursive=True): + return True + + return False + + def get_selected(return_elements): assert isinstance(return_elements, list), "result must be a list" for element in return_elements: @@ -616,6 +696,42 @@ def extract_popup_content(element, filter_input=True) -> OrderedDict: return res +def extract_jsonviewer_node(element): + # This structure of the Jsonview Node is + # 3 children + # 1st : Span(NotStr(name="expanded|collapse")) or None + # 2nd : Span("key : ") or None (None is possible only for the root node) + # 3rd : Span(value) + + if not hasattr(element, "children") or len(element.children) != 3: + return None + + debug_folding = element.children[0] + debug_key = element.children[1] + value = element.children[2] + + if contains([debug_folding], span_icon("expanded")): + is_expanded = True + elif contains([debug_folding], span_icon("collapsed")): + is_expanded = False + else: + is_expanded = None + + if debug_key is not None: + assert hasattr(debug_key, "tag") and debug_key.tag == "span", "debug_key must be a span" + key = debug_key.children[0].split(" : ")[0] + else: + key = None + + return JsonViewerNode( + is_expanded, + key, + value, + debug_key, + debug_folding + ) + + def to_array(dataframe: pd.DataFrame) -> list: return [[val for val in row] for _, row in dataframe.iterrows()] diff --git a/tests/test_calendar_helper.py b/tests/test_calendar_helper.py new file mode 100644 index 0000000..2ecdaf2 --- /dev/null +++ b/tests/test_calendar_helper.py @@ -0,0 +1,132 @@ +from datetime import datetime, timedelta + +import pytest + +from components.hoildays.helpers.calendar_helper import CalendarHelper +from components.hoildays.helpers.nibelisparser import OffPeriodDetails + + +def test_get_period_end_before_start(): + with pytest.raises(ValueError) as err: + CalendarHelper.get_period(datetime.today(), datetime.today() - timedelta(days=1)) + + assert str(err.value) == "end date is before start date." + + +def test_get_period(): + start = datetime.today() + res = CalendarHelper.get_period(start, start + timedelta(days=3)) + + assert res == [ + start, + start + timedelta(days=1), + start + timedelta(days=2), + start + timedelta(days=3) + ] + + +@pytest.mark.parametrize("start_am_pm, end_am_pm, is_start, is_end, expected", [ + ("am", None, True, False, "reason_am"), + ("pm", None, True, False, "reason_pm"), + (None, "am", False, True, "reason_am"), + (None, "pm", False, True, "reason_pm"), + ("am", "pm", True, True, "reason_am_pm"), +]) +def test_get_reason(start_am_pm, end_am_pm, is_start, is_end, expected): + record = OffPeriodDetails( + first_name="first_name", + last_name="last_name", + start_date=datetime.today(), + start_am_pm=start_am_pm, + end_date=datetime.today() + timedelta(days=1), + end_am_pm=end_am_pm, + total=2, + reason="reason", + date_import=datetime.today(), + ) + actual = CalendarHelper.get_reason(record, is_start, is_end) + + assert actual == expected + + +def test_create_calendar_one_user(): + records = [ + OffPeriodDetails("john", "doo", datetime(2025, 6, 19), None, datetime(2025, 6, 20), None, 1, "CP", datetime.now()) + ] + + names, calendar = CalendarHelper.create_calendar(records, datetime(2025, 6, 18), datetime(2025, 6, 21)) + expected_calendar = { + datetime(2025, 6, 18): [None], + datetime(2025, 6, 19): [["CP"]], + datetime(2025, 6, 20): [["CP"]], + datetime(2025, 6, 21): [None], + } + + assert names == ["john doo"] + assert calendar == expected_calendar + + +def test_create_calendar_multiple_users(): + now = datetime.now() + records = [ + OffPeriodDetails("john", "doo", datetime(2025, 6, 19), None, datetime(2025, 6, 20), None, 1, "CP", now), + OffPeriodDetails("jane", "doo", datetime(2025, 6, 18), None, datetime(2025, 6, 19), None, 1, "CP", now) + ] + + names, calendar = CalendarHelper.create_calendar(records, datetime(2025, 6, 18), datetime(2025, 6, 21)) + expected_calendar = { + datetime(2025, 6, 18): [["CP"], None], + datetime(2025, 6, 19): [["CP"], ["CP"]], + datetime(2025, 6, 20): [None, ["CP"]], + datetime(2025, 6, 21): [None, None], + } + + assert names == ["jane doo", "john doo"] + assert calendar == expected_calendar + + +def test_create_calendar_end_is_missing(): + records = [ + OffPeriodDetails("john", "doo", datetime(2025, 6, 19), None, datetime(2025, 6, 20), None, 1, "CP", datetime.now()) + ] + + names, calendar = CalendarHelper.create_calendar(records, datetime(2025, 6, 18)) + expected_calendar = { + datetime(2025, 6, 18): [None], + datetime(2025, 6, 19): [["CP"]], + datetime(2025, 6, 20): [["CP"]], + } + + assert names == ["john doo"] + assert calendar == expected_calendar + + +def test_create_calendar_start_is_missing(): + records = [ + OffPeriodDetails("john", "doo", datetime(2025, 6, 19), None, datetime(2025, 6, 20), None, 1, "CP", datetime.now()) + ] + + names, calendar = CalendarHelper.create_calendar(records, None, datetime(2025, 6, 21)) + expected_calendar = { + datetime(2025, 6, 19): [["CP"]], + datetime(2025, 6, 20): [["CP"]], + datetime(2025, 6, 21): [None], + } + + assert names == ["john doo"] + assert calendar == expected_calendar + + +def test_create_calendar_start_and_end_are_missing(): + records = [ + OffPeriodDetails("john", "doo", datetime(2025, 6, 19), None, datetime(2025, 6, 20), None, 1, "CP", datetime.now()) + ] + + names, calendar = CalendarHelper.create_calendar(records) + expected_calendar = { + datetime(2025, 6, 19): [["CP"]], + datetime(2025, 6, 20): [["CP"]], + } + + assert names == ["john doo"] + assert calendar == expected_calendar diff --git a/tests/test_helpers.py b/tests/test_helpers.py index 4a27869..6b59633 100644 --- a/tests/test_helpers.py +++ b/tests/test_helpers.py @@ -1,15 +1,9 @@ -from collections import OrderedDict - -import pandas as pd import pytest -from fastcore.basics import NotStr -from fastcore.xml import to_xml from fasthtml.components import * from components.datagrid.DataGrid import DataGrid -from helpers import matches, search_elements_by_name, search_elements_by_path, extract_table_values, get_from_html, \ - extract_popup_content, \ - Empty, get_path_attributes, find_first_match, StartsWith, search_first_with_attribute, Contains +from components.debugger.components.JsonViewer import JsonViewer +from helpers import * @pytest.fixture @@ -329,3 +323,118 @@ def test_i_can_search_first_with_attribute(tag, attr, expected, sample_structure assert result.tag == expected[0] assert attr in result.attrs assert result.attrs[attr] == expected[1] + + +# Add tests for extract_jsonviewer_node +def test_extract_jsonviewer_node(): + # Create a valid JsonViewer node element + element = Div( + span_icon("expanded"), + Span("key : "), + Span("value") + ) + + result = extract_jsonviewer_node(element) + + assert result is not None + assert result.is_expanded is True + assert result.key == "key" + assert result.value == element.children[2] + assert result.debug_key == element.children[1] + assert result.debug_folding == element.children[0] + + +def test_extract_jsonviewer_node_collapsed(): + # Create a collapsed JsonViewer node element + element = Div( + span_icon("collapsed"), + Span("key : "), + Span("value") + ) + + result = extract_jsonviewer_node(element) + + assert result is not None + assert result.is_expanded is False + assert result.key == "key" + assert result.value == element.children[2] + + +def test_extract_jsonviewer_node_no_expansion_state(): + # Create a JsonViewer node with no expansion state + element = Div( + Span(), + Span("key : "), + Span("value") + ) + + result = extract_jsonviewer_node(element) + + assert result is not None + assert result.is_expanded is None + assert result.key == "key" + assert result.value == element.children[2] + + +def test_extract_jsonviewer_node_root_node(): + # Create a root JsonViewer node (no key) + element = Div( + span_icon("expanded"), + None, + Span("value") + ) + + result = extract_jsonviewer_node(element) + + assert result is not None + assert result.is_expanded is True + assert result.key is None + assert result.value == element.children[2] + + +def test_extract_jsonviewer_node_invalid_structure(): + # Test with invalid node structure (not enough children) + element = Div( + span_icon("expanded"), + Span("key : ") + ) + + result = extract_jsonviewer_node(element) + + assert result is None + + # Test with element that has no children attribute + element = "not an element with children" + + result = extract_jsonviewer_node(element) + + assert result is None + + +def test_json_viewer_find(): + value = {"a": [1, 2, 3], "b": {"x": "y", "z": True}} + jsonviewer = JsonViewer(None, None, None, None, value) + elements = jsonviewer.__ft__() + root_div = search_elements_by_name(elements, "div", attrs={"id": f"{jsonviewer.get_id()}-root"})[0] + first_level_div = root_div.children[0] + + as_node = extract_jsonviewer_node(first_level_div) + child_b = as_node.find("b") + + assert isinstance(child_b, JsonViewerNode) + assert child_b.key == "b" + + +def test_json_viewer_find_with_path(): + value = {"a": {"x": None, "y": ["first", "second"], "z": True}} + jsonviewer = JsonViewer(None, None, None, None, value) + jsonviewer.set_folding_mode("expand") + elements = jsonviewer.__ft__() + root_div = search_elements_by_name(elements, "div", attrs={"id": f"{jsonviewer.get_id()}-root"})[0] + first_level_div = root_div.children[0] + + as_node = extract_jsonviewer_node(first_level_div) + child = as_node.find("a.y.0") + + assert isinstance(child, JsonViewerNode) + assert child.key == "0" diff --git a/tests/test_instance_manager.py b/tests/test_instance_manager.py index 1c099c3..20a2fe5 100644 --- a/tests/test_instance_manager.py +++ b/tests/test_instance_manager.py @@ -1,7 +1,8 @@ import pytest from components.BaseComponent import BaseComponent -from core.instance_manager import InstanceManager, SESSION_ID_KEY, NOT_LOGGED # Adjust import path as needed +from constants import NO_SESSION, SESSION_USER_ID_KEY, NOT_LOGGED +from core.instance_manager import InstanceManager class MockBaseComponent(BaseComponent): @@ -52,7 +53,7 @@ def session(): """ Fixture to provide a default mocked session dictionary with a fixed user_id. """ - return {SESSION_ID_KEY: "test_user"} + return {SESSION_USER_ID_KEY: "test_user"} @pytest.fixture @@ -140,7 +141,7 @@ def test_register_registers_instance(session, base_component_instance): """ InstanceManager.register(session, base_component_instance) - key = (session[SESSION_ID_KEY], base_component_instance._id) + key = (session[SESSION_USER_ID_KEY], base_component_instance._id) assert key in InstanceManager._instances assert InstanceManager._instances[key] == base_component_instance @@ -167,7 +168,7 @@ def test_register_fetches_id_from_instance_attribute(session): instance = MockInstanceWithId() InstanceManager.register(session, instance) - key = (session[SESSION_ID_KEY], instance._id) # `_id` value taken from the instance + key = (session[SESSION_USER_ID_KEY], instance._id) # `_id` value taken from the instance assert key in InstanceManager._instances assert InstanceManager._instances[key] == instance @@ -181,8 +182,8 @@ def test_register_many_without_session(): InstanceManager.register_many(instance1, instance2) - key1 = (NOT_LOGGED, "id1") - key2 = (NOT_LOGGED, "id2") + key1 = (NO_SESSION, "id1") + key2 = (NO_SESSION, "id2") assert key1 in InstanceManager._instances assert InstanceManager._instances[key1] == instance1 assert key2 in InstanceManager._instances @@ -197,7 +198,7 @@ def test_remove_registered_instance(session, instance_id): InstanceManager.register(session, instance) InstanceManager.remove(session, instance_id) - key = (session[SESSION_ID_KEY], instance_id) + key = (session[SESSION_USER_ID_KEY], instance_id) assert key not in InstanceManager._instances @@ -210,7 +211,7 @@ def test_remove_with_dispose_method(session, instance_id): InstanceManager.remove(session, instance_id) assert hasattr(instance, "disposed") and instance.disposed - key = (session[SESSION_ID_KEY], instance_id) + key = (session[SESSION_USER_ID_KEY], instance_id) assert key not in InstanceManager._instances @@ -230,7 +231,7 @@ def test_get_session_id_returns_logged_in_user_id(session): Test that _get_session_id extracts the session ID correctly. """ session_id = InstanceManager.get_session_id(session) - assert session_id == session[SESSION_ID_KEY] + assert session_id == session[SESSION_USER_ID_KEY] def test_get_session_id_returns_default_logged_out_value(): @@ -238,4 +239,7 @@ def test_get_session_id_returns_default_logged_out_value(): Test that _get_session_id returns NOT_LOGGED when session is None. """ session_id = InstanceManager.get_session_id(None) + assert session_id == NO_SESSION + + session_id = InstanceManager.get_session_id({}) assert session_id == NOT_LOGGED diff --git a/tests/test_jsonviewer.py b/tests/test_jsonviewer.py index b27f4f3..3b05921 100644 --- a/tests/test_jsonviewer.py +++ b/tests/test_jsonviewer.py @@ -1,8 +1,7 @@ import pytest -from fasthtml.components import * -from components.debugger.components.JsonViewer import JsonViewer, DictNode, ListNode, ValueNode -from helpers import matches, span_icon, search_elements_by_name +from components.debugger.components.JsonViewer import * +from helpers import matches, span_icon, search_elements_by_name, extract_jsonviewer_node JSON_VIEWER_INSTANCE_ID = "json_viewer" ML_20 = "margin-left: 20px;" @@ -19,6 +18,11 @@ def json_viewer(session): return JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, {}) +@pytest.fixture() +def helper(): + return JsonViewerHelper() + + def jv_id(x): return f"{JSON_VIEWER_INSTANCE_ID}-{x}" @@ -61,7 +65,7 @@ def test_i_can_render(json_viewer): def test_i_can_render_simple_value(session, value, expected_inner): jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, value) actual = jsonv.__ft__() - to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id("root")}"})[0] + to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] expected = Div( Div( @@ -70,7 +74,7 @@ def test_i_can_render_simple_value(session, value, expected_inner): expected_inner, style=ML_20), - id=f"{jv_id("root")}") + id=f"{jv_id('root')}") assert matches(to_compare, expected) @@ -78,21 +82,25 @@ def test_i_can_render_simple_value(session, value, expected_inner): def test_i_can_render_expanded_list_node(session): value = [1, "hello", True] jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, value) + # Force expansion of the node + jsonv.set_folding_mode("expand") + actual = jsonv.__ft__() - to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id("root")}"})[0] + to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] to_compare = to_compare.children[0] # I want to compare what is inside the div expected_inner = Span("[", - Div(None, Span("0 : "), Span('1'), style=ML_20), - Div(None, Span("1 : "), Span('"hello"'), style=ML_20), - Div(None, Span("2 : "), Span('true'), style=ML_20), - Div("]")), + Div(None, Span("0 : "), Span('1', cls=f"{CLS_PREFIX}-number"), style=ML_20), + Div(None, Span("1 : "), Span('"hello"', cls=f"{CLS_PREFIX}-string"), style=ML_20), + Div(None, Span("2 : "), Span('true', cls=f"{CLS_PREFIX}-bool"), style=ML_20), + Div("]")) expected = Div( span_icon("expanded"), None, # 'key :' is missing for the first node expected_inner, - style=ML_20) + style=ML_20, + id=jv_id(0)) assert matches(to_compare, expected) @@ -100,21 +108,25 @@ def test_i_can_render_expanded_list_node(session): def test_i_can_render_expanded_dict_node(session): value = {"a": 1, "b": "hello", "c": True} jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, value) + # Force expansion of the node + jsonv.set_folding_mode("expand") + actual = jsonv.__ft__() - to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id("root")}"})[0] + to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] to_compare = to_compare.children[0] # I want to compare what is inside the div expected_inner = Span("{", - Div(None, Span("a : "), Span('1'), style=ML_20), - Div(None, Span("b : "), Span('"hello"'), style=ML_20), - Div(None, Span("c : "), Span('true'), style=ML_20), + Div(None, Span("a : "), Span('1', cls=f"{CLS_PREFIX}-number"), style=ML_20), + Div(None, Span("b : "), Span('"hello"', cls=f"{CLS_PREFIX}-string"), style=ML_20), + Div(None, Span("c : "), Span('true', cls=f"{CLS_PREFIX}-bool"), style=ML_20), Div("}")) expected = Div( span_icon("expanded"), None, # 'key :' is missing for the first node expected_inner, - style=ML_20) + style=ML_20, + id=jv_id(0)) assert matches(to_compare, expected) @@ -122,8 +134,11 @@ def test_i_can_render_expanded_dict_node(session): def test_i_can_render_expanded_list_of_dict_node(session): value = [{"a": 1, "b": "hello"}] jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, value) + # Force expansion of all nodes + jsonv.set_folding_mode("expand") + actual = jsonv.__ft__() - to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id("root")}"})[0] + to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] to_compare = to_compare.children[0] # I want to compare what is inside the div expected_inner = Span("[", @@ -131,9 +146,10 @@ def test_i_can_render_expanded_list_of_dict_node(session): Div(span_icon("expanded"), Span("0 : "), Span("{", - Div(None, Span("a : "), Span('1'), style=ML_20), - Div(None, Span("b : "), Span('"hello"'), style=ML_20), + Div(None, Span("a : "), Span('1', cls=f"{CLS_PREFIX}-number"), style=ML_20), + Div(None, Span("b : "), Span('"hello"', cls=f"{CLS_PREFIX}-string"), style=ML_20), Div("}")), + style=ML_20, id=f"{jv_id(1)}"), Div("]")) @@ -142,11 +158,193 @@ def test_i_can_render_expanded_list_of_dict_node(session): span_icon("expanded"), None, # 'key :' is missing for the first node expected_inner, - style=ML_20) + style=ML_20, + id=jv_id(0)) assert matches(to_compare, expected) +def test_render_with_collapse_folding_mode(session): + # Create a nested structure to test collapse rendering + value = {"a": [1, 2, 3], "b": {"x": "y", "z": True}} + jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, value) + + # Ensure folding mode is set to collapse (should be default) + jsonv.set_folding_mode("collapse") + assert jsonv.get_folding_mode() == "collapse" + + actual = jsonv.__ft__() + root_div = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] + + # In collapse mode, the first level should show collapsed representations + # The dict node should be rendered as "{...}" + first_level_div = root_div.children[0] + + # Verify that the first level shows a collapsed view + expected_first_level = Div( + span_icon("collapsed"), + None, # No key for the root node + Span("{...}", id=jv_id(0)), + style=ML_20, + id=jv_id(0) + ) + + assert matches(first_level_div, expected_first_level) + + +def test_render_with_specific_node_expanded_in_collapse_mode(session): + # Create a nested structure to test mixed collapse/expand rendering + value = {"a": [1, 2, 3], "b": {"x": "y", "z": True}} + jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, value) + + # Ensure folding mode is set to collapse + jsonv.set_folding_mode(FoldingMode.COLLAPSE) + + # Manually expand the root node + jsonv.set_node_folding(f"{JSON_VIEWER_INSTANCE_ID}-0", "expand") + + actual = jsonv.__ft__() + root_div = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] + first_level_div = root_div.children[0] + + as_node = extract_jsonviewer_node(first_level_div) + + # The first level should now be expanded but children should be collapsed + assert as_node.is_expanded is True + + # Find div with "a" key + a_node = as_node.find("a") + b_node = as_node.find("b") + + # Verify that both a and b nodes show collapsed representations + assert a_node is not None + assert b_node is not None + + assert a_node.is_expanded is False + assert a_node.text_value() == "[...]" + + assert b_node.is_expanded is False + assert b_node.text_value() == "{...}" + + +def test_multiple_folding_levels_in_collapse_mode(session): + # Create a deeply nested structure + value = {"level1": {"level2": {"level3": [1, 2, 3]}}} + jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, value) + + # Set folding mode to collapse + jsonv.set_folding_mode(FoldingMode.COLLAPSE) + + # Expand the first two levels + jsonv.set_node_folding(f"{jsonv.get_id()}-0", FoldingMode.EXPAND) # top level + jsonv.set_node_folding(f"{jsonv.get_id()}-1", FoldingMode.EXPAND) # level1 + jsonv.set_node_folding(f"{jsonv.get_id()}-2", FoldingMode.EXPAND) # level2 + + actual = jsonv.__ft__() + root_div = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] + + # Navigate to level3 to verify it's still collapsed + first_level_div = root_div.children[0] + first_level_node = extract_jsonviewer_node(first_level_div) + assert first_level_node.is_expanded is True + + # Find level2 in the rendered structure + level2_node = first_level_node.find("level1.level2") + assert level2_node is not None + assert level2_node.is_expanded is True + + # Find level3 in the rendered structure + level3_node = level2_node.find("level3") + assert level3_node is not None + assert level3_node.is_expanded is False + assert level3_node.text_value() == "[...]" + + +def test_toggle_between_folding_modes(session): + value = {"a": [1, 2, 3], "b": {"x": "y"}} + jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, value) + + # Start with collapse mode + jsonv.set_folding_mode("collapse") + + # Expand specific node + jsonv.set_node_folding(f"{JSON_VIEWER_INSTANCE_ID}-0", "expand") + + # Verify node is in tracked nodes (exceptions to collapse mode) + assert f"{JSON_VIEWER_INSTANCE_ID}-0" in jsonv._nodes_to_track + + # Now switch to expand mode + jsonv.set_folding_mode("expand") + + # Tracked nodes should be cleared + assert len(jsonv._nodes_to_track) == 0 + + # Collapse specific node + jsonv.set_node_folding(f"{JSON_VIEWER_INSTANCE_ID}-0", "collapse") + + # Verify node is in tracked nodes (exceptions to expand mode) + assert f"{JSON_VIEWER_INSTANCE_ID}-0" in jsonv._nodes_to_track + + # Render and verify the output + actual = jsonv.__ft__() + root_div = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] + first_level_div = root_div.children[0] + + # First level should be collapsed in an otherwise expanded tree + as_node = extract_jsonviewer_node(first_level_div) + assert as_node.is_expanded is False + assert as_node.text_value() == "{...}" + + +def test_custom_hook_rendering(session, helper): + # Define a custom hook for testing + def custom_predicate(key, node, h): + return isinstance(node.value, str) and node.value == "custom_hook_test" + + def custom_renderer(key, node, h): + return Span("CUSTOM_HOOK_RENDER", cls="custom-hook-class") + + hooks = [(custom_predicate, custom_renderer)] + + # Create JsonViewer with the custom hook + jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, "custom_hook_test", hooks=hooks) + + actual = jsonv.__ft__() + to_compare = search_elements_by_name(actual, "div", attrs={"id": f"{jv_id('root')}"})[0] + + expected = Div( + Div( + None, + None, + Span("CUSTOM_HOOK_RENDER", cls="custom-hook-class"), + style=ML_20), + id=f"{jv_id('root')}") + + assert matches(to_compare, expected) + + +def test_folding_mode_operations(session): + jsonv = JsonViewer(session, JSON_VIEWER_INSTANCE_ID, None, USER_ID, {"a": [1, 2, 3]}) + + # Check default folding mode + assert jsonv.get_folding_mode() == "collapse" + + # Change folding mode + jsonv.set_folding_mode("expand") + assert jsonv.get_folding_mode() == "expand" + + # Set node folding + node_id = f"{JSON_VIEWER_INSTANCE_ID}-0" + jsonv.set_node_folding(node_id, "collapse") + + # Node should be in tracked nodes since it differs from the default mode + assert node_id in jsonv._nodes_to_track + + # Restore to match default mode + jsonv.set_node_folding(node_id, "expand") + assert node_id not in jsonv._nodes_to_track + + @pytest.mark.parametrize("input_value, expected_output", [ ('Hello World', '"Hello World"'), # No quotes in input ('Hello "World"', "'Hello \"World\"'"), # Contains double quotes @@ -157,3 +355,16 @@ def test_i_can_render_expanded_list_of_dict_node(session): def test_add_quotes(input_value, expected_output): result = JsonViewer.add_quotes(input_value) assert result == expected_output + + +def test_helper_is_sha256(helper): + # Valid SHA256 + assert helper.is_sha256("a" * 64) + assert helper.is_sha256("0123456789abcdef" * 4) + assert helper.is_sha256("0123456789ABCDEF" * 4) + + # Invalid cases + assert not helper.is_sha256("a" * 63) # Too short + assert not helper.is_sha256("a" * 65) # Too long + assert not helper.is_sha256("g" * 64) # Invalid character + assert not helper.is_sha256("test") # Not a hash diff --git a/tests/test_mcp_server.py b/tests/test_mcp_server.py new file mode 100644 index 0000000..8a046b5 --- /dev/null +++ b/tests/test_mcp_server.py @@ -0,0 +1,248 @@ +import pytest +import inspect +from typing import Dict, Any, List, Optional, Callable + +from ai.mcp_server import DummyMCPServer + + +@pytest.fixture +def mcp_server(session): + return DummyMCPServer(session, None) + + +def test_register_tool_basic(mcp_server): + """Test basic tool registration""" + + # Define a simple test function + def test_func(param1: str, param2: int): + return f"Test {param1} {param2}" + + # Register the tool + result = mcp_server.register_tool("test_tool", test_func) + + # Verify the tool was registered + assert "test_tool" in mcp_server.available_tools + assert mcp_server.available_tools["test_tool"]["name"] == "test_tool" + assert mcp_server.available_tools["test_tool"]["handler"] == test_func + + # Verify method chaining works + assert result is mcp_server + + +def test_register_tool_with_description(mcp_server): + """Test tool registration with a custom description""" + + def test_func(): + return "test" + + mcp_server.register_tool("test_tool", test_func, description="Custom description") + + assert mcp_server.available_tools["test_tool"]["description"] == "Custom description" + + +def test_register_tool_without_description(mcp_server): + """Test tool registration without a description""" + + def test_func(): + return "test" + + mcp_server.register_tool("test_tool", test_func) + + assert mcp_server.available_tools["test_tool"]["description"] == "Tool test_tool" + + +def test_register_tool_parameter_types(mcp_server): + """Test parameter type inference""" + + def test_func(str_param: str, int_param: int, float_param: float, bool_param: bool, untyped_param): + return "test" + + mcp_server.register_tool("test_tool", test_func) + + params = mcp_server.available_tools["test_tool"]["parameters"] + + assert params["str_param"]["type"] == "string" + assert params["int_param"]["type"] == "integer" + assert params["float_param"]["type"] == "number" + assert params["bool_param"]["type"] == "boolean" + assert params["untyped_param"]["type"] == "string" # Default type for untyped parameters + + +def test_register_tool_parameter_descriptions(mcp_server): + """Test parameter descriptions""" + + def test_func(param1, param2): + return "test" + + mcp_server.register_tool("test_tool", test_func) + + params = mcp_server.available_tools["test_tool"]["parameters"] + + assert params["param1"]["description"] == "Parameter param1" + assert params["param2"]["description"] == "Parameter param2" + + +def test_register_tool_with_sphinx_docstring(mcp_server): + """Test parameter descriptions from Sphinx-style docstrings""" + + def test_func(name: str, age: int): + """Test function with Sphinx docstring + + :param name: The person's name + :param age: The person's age in years + :return: A greeting message + """ + return f"Hello {name}, you are {age} years old!" + + mcp_server.register_tool("sphinx_doc_tool", test_func) + + params = mcp_server.available_tools["sphinx_doc_tool"]["parameters"] + + assert params["name"]["description"] == "The person's name" + assert params["age"]["description"] == "The person's age in years" + + +def test_register_tool_with_google_docstring(mcp_server): + """Test parameter descriptions from Google-style docstrings""" + + def test_func(name: str, age: int, height: float): + """Test function with Google-style docstring + + Args: + name: The person's name + age: The person's age in years + height: The person's height in meters + + Returns: + A greeting message + """ + return f"Hello {name}, you are {age} years old and {height}m tall!" + + mcp_server.register_tool("google_doc_tool", test_func) + + params = mcp_server.available_tools["google_doc_tool"]["parameters"] + + assert params["name"]["description"] == "The person's name" + assert params["age"]["description"] == "The person's age in years" + assert params["height"]["description"] == "The person's height in meters" + + +def test_register_tool_with_parameters_keyword(mcp_server): + """Test parameter descriptions with 'Parameters:' keyword instead of 'Args:'""" + + def test_func(x: int, y: int): + """Test function with Parameters keyword + + Parameters: + x: The x coordinate + y: The y coordinate + + Returns: + The sum of coordinates + """ + return x + y + + mcp_server.register_tool("parameters_doc_tool", test_func) + + params = mcp_server.available_tools["parameters_doc_tool"]["parameters"] + + assert params["x"]["description"] == "The x coordinate" + assert params["y"]["description"] == "The y coordinate" + + +def test_register_tool_with_mixed_docstrings(mcp_server): + """Test parameter descriptions with mixed docstring styles""" + + def test_func(a: int, b: str, c: float): + """Test function with mixed docstring styles + + :param a: Parameter a from Sphinx style + + Args: + b: Parameter b from Google style + c: Parameter c from Google style + """ + return f"{a} {b} {c}" + + mcp_server.register_tool("mixed_doc_tool", test_func) + + params = mcp_server.available_tools["mixed_doc_tool"]["parameters"] + + assert params["a"]["description"] == "Parameter a from Sphinx style" + assert params["b"]["description"] == "Parameter b from Google style" + assert params["c"]["description"] == "Parameter c from Google style" + + +def test_register_tool_with_missing_docstrings(mcp_server): + """Test parameter descriptions when some parameters are missing from docstring""" + + def test_func(a: int, b: str, c: float): + """Test function with incomplete docstring + + Args: + a: Parameter a description + """ + return f"{a} {b} {c}" + + mcp_server.register_tool("incomplete_doc_tool", test_func) + + params = mcp_server.available_tools["incomplete_doc_tool"]["parameters"] + + assert params["a"]["description"] == "Parameter a description" + assert params["b"]["description"] == "Parameter b" # Default description + assert params["c"]["description"] == "Parameter c" # Default description + + +async def test_tool_can_be_called(mcp_server): + """Test that a registered tool can be called through call_tool method""" + + # Define a simple test function + def test_func(value: int): + return value * 2 + + # Register the tool + mcp_server.register_tool("multiply", test_func) + + # Call the tool + result = await mcp_server.call_tool("multiply", {"value": 5}) + + # Verify the result + assert result["success"] is True + assert result["result"] == 10 + assert result["tool_name"] == "multiply" + + +async def test_async_tool_can_be_called(mcp_server): + """Test that a registered async tool can be called through call_tool method""" + + # Define an async test function + async def async_test_func(value: int): + return value * 3 + + # Register the async tool + mcp_server.register_tool("async_multiply", async_test_func) + + # Call the async tool + result = await mcp_server.call_tool("async_multiply", {"value": 5}) + + # Verify the result + assert result["success"] is True + assert result["result"] == 15 + assert result["tool_name"] == "async_multiply" + + +def test_multiple_tools_registration(mcp_server): + """Test registering multiple tools""" + + def tool1(): return "tool1" + + def tool2(): return "tool2" + + nb_internal_tools = len(mcp_server.available_tools) + mcp_server.register_tool("tool1", tool1) + mcp_server.register_tool("tool2", tool2) + + # Check both tools were registered + assert "tool1" in mcp_server.available_tools + assert "tool2" in mcp_server.available_tools + assert len(mcp_server.available_tools) == nb_internal_tools + 2 \ No newline at end of file diff --git a/tests/test_repositories_db_manager.py b/tests/test_repositories_db_manager.py index 4c6d7c1..58b96d3 100644 --- a/tests/test_repositories_db_manager.py +++ b/tests/test_repositories_db_manager.py @@ -176,7 +176,7 @@ def test_add_table_success(db, settings_manager_with_existing_repo): def test_add_table_repository_not_found(db): """Test adding a table to a non-existent repository.""" - with pytest.raises(ValueError, match="Repository 'NonExistentRepo' does not exist."): + with pytest.raises(NameError, match="Repository 'NonExistentRepo' does not exist."): db.add_table("NonExistentRepo", "NewTable") @@ -210,13 +210,13 @@ def test_modify_table_success(db, settings_manager_with_existing_repo): def test_modify_table_repository_not_found(db): """Test modifying a table in a non-existent repository.""" - with pytest.raises(ValueError, match="Repository 'NonExistentRepo' does not exist."): + with pytest.raises(NameError, match="Repository 'NonExistentRepo' does not exist."): db.modify_table("NonExistentRepo", "Table1", "NewTable") def test_modify_table_not_found(db, settings_manager_with_existing_repo): """Test modifying a non-existent table.""" - with pytest.raises(ValueError, match="Table 'NonExistentTable' does not exist in repository 'ExistingRepo'."): + with pytest.raises(NameError, match="Table 'NonExistentTable' does not exist in repository 'ExistingRepo'."): db.modify_table("ExistingRepo", "NonExistentTable", "NewTable") @@ -249,13 +249,13 @@ def test_remove_table_success(db, settings_manager_with_existing_repo): def test_remove_table_repository_not_found(db): """Test removing a table from a non-existent repository.""" - with pytest.raises(ValueError, match="Repository 'NonExistentRepo' does not exist."): + with pytest.raises(NameError, match="Repository 'NonExistentRepo' does not exist."): db.remove_table("NonExistentRepo", "Table1") def test_remove_table_not_found(db, settings_manager_with_existing_repo): """Test removing a non-existent table.""" - with pytest.raises(ValueError, match="Table 'NonExistentTable' does not exist in repository 'ExistingRepo'."): + with pytest.raises(NameError, match="Table 'NonExistentTable' does not exist in repository 'ExistingRepo'."): db.remove_table("ExistingRepo", "NonExistentTable") @@ -273,3 +273,41 @@ def test_remove_table_empty_repository_name(db): db.remove_table("", "Table1") with pytest.raises(ValueError, match="Repository name cannot be empty."): db.remove_table(None, "Table1") + +def test_repository_exists(db, settings_manager): + assert db.exists_repository("SomeRepo") is False + + settings = RepositoriesSettings() + repo = Repository(name="SomeRepo", tables=["Table1"]) + settings.repositories.append(repo) + settings_manager.save(db.session, REPOSITORIES_SETTINGS_ENTRY, settings) + + assert db.exists_repository("SomeRepo") is True + + +def test_repository_table(db, settings_manager_with_existing_repo): + assert db.exists_table("ExistingRepo", "SomeTable") is False + + db.add_table("ExistingRepo", "SomeTable") + + assert db.exists_table("ExistingRepo", "SomeTable") is True + +def test_exists_table_fails_when_repo_doesnt_exist(db): + assert db.exists_table("NonExistentRepo", "SomeTable") is False + +def test_ensure_exists(db, settings_manager): + settings = settings_manager.load(db.session, REPOSITORIES_SETTINGS_ENTRY, default=RepositoriesSettings()) + assert len(settings.repositories) == 0 + + db.ensure_exists("SomeRepo", "SomeTable") + + settings = settings_manager.load(db.session, REPOSITORIES_SETTINGS_ENTRY) + assert len(settings.repositories) == 1 + assert settings.repositories[0].name == "SomeRepo" + assert settings.repositories[0].tables == ["SomeTable"] + + db.ensure_exists("SomeRepo", "SomeTable") # as no effect when called twice + settings = settings_manager.load(db.session, REPOSITORIES_SETTINGS_ENTRY) + assert len(settings.repositories) == 1 + assert settings.repositories[0].name == "SomeRepo" + assert settings.repositories[0].tables == ["SomeTable"] diff --git a/tests/test_settingsmanager.py b/tests/test_settingsmanager.py index 9ca8ade..265d08c 100644 --- a/tests/test_settingsmanager.py +++ b/tests/test_settingsmanager.py @@ -2,7 +2,7 @@ import dataclasses import pytest -from core.settings_management import SettingsManager, MemoryDbEngine +from core.settings_management import SettingsManager, MemoryDbEngine, GenericDbManager, NestedSettingsManager FAKE_USER_ID = "FakeUserId" @@ -20,6 +20,19 @@ class DummySettings: prop2: str +@dataclasses.dataclass +class DummyObjectWithDefault: + a: int = 5 + b: str = "default_b" + c: bool = False + + +@dataclasses.dataclass +class DummySettingsWithDefault: + prop1: DummyObjectWithDefault = dataclasses.field(default_factory=DummyObjectWithDefault) + prop2: str = "prop2" + + @pytest.fixture() def manager(): return SettingsManager(MemoryDbEngine()) @@ -33,6 +46,16 @@ def settings(): ) +@pytest.fixture() +def generic_db_manager(session, manager): + return GenericDbManager(session, manager, "TestSettings", DummySettingsWithDefault) + + +@pytest.fixture() +def nested_settings_manager(session, manager): + return NestedSettingsManager(session, manager, "TestSettings", DummySettingsWithDefault, "prop1") + + def test_i_can_save_and_load_settings(session, manager, settings): manager.save(session, "MyEntry", settings) @@ -86,3 +109,213 @@ def test_i_can_put_many_items_list(session, manager): assert loaded['key1'] == 'value1' assert loaded['key2'] == 'value2' assert loaded['key3'] == 'value3' + + +# Tests for GenericDbManager + +def test_generic_db_manager_get_attribute(generic_db_manager, manager, session): + # Setup initial settings + initial_settings = DummySettingsWithDefault( + prop1=DummyObjectWithDefault(1, "2", True), + prop2="initial_value" + ) + manager.save(session, "TestSettings", initial_settings) + + # Get attribute via GenericDbManager + assert generic_db_manager.prop2 == "initial_value" + assert generic_db_manager.prop1.a == 1 + assert generic_db_manager.prop1.b == "2" + assert generic_db_manager.prop1.c is True + + +def test_generic_db_manager_set_attribute(generic_db_manager, manager, session): + # Setup initial settings + initial_settings = DummySettingsWithDefault( + prop1=DummyObjectWithDefault(1, "2", True), + prop2="initial_value" + ) + manager.save(session, "TestSettings", initial_settings) + + # Set attribute via GenericDbManager + generic_db_manager.prop2 = "updated_value" + + # Verify that the change was saved to the database + loaded_settings = manager.load(session, "TestSettings") + assert loaded_settings.prop2 == "updated_value" + + # Also verify direct access works + assert generic_db_manager.prop2 == "updated_value" + + +def test_generic_db_manager_set_nested_attribute(generic_db_manager, manager, session): + # Setup initial settings + initial_settings = DummySettingsWithDefault( + prop1=DummyObjectWithDefault(1, "2", True), + prop2="initial_value" + ) + manager.save(session, "TestSettings", initial_settings) + + # Set nested attribute + generic_db_manager.prop1.a = 42 + generic_db_manager.prop1.b = "modified" + generic_db_manager.prop1.c = False + + # Verify the changes were saved + loaded_settings = manager.load(session, "TestSettings") + assert loaded_settings.prop1.a == 42 + assert loaded_settings.prop1.b == "modified" + assert loaded_settings.prop1.c is False + + +def test_generic_db_manager_attribute_error(generic_db_manager): + # Test that accessing a non-existent attribute raises AttributeError + with pytest.raises(AttributeError) as excinfo: + generic_db_manager.non_existent_attribute + + assert "has no attribute 'non_existent_attribute'." in str(excinfo.value) + + +def test_generic_db_manager_set_attribute_error(generic_db_manager): + # Test that setting a non-existent attribute raises AttributeError + with pytest.raises(AttributeError) as excinfo: + generic_db_manager.non_existent_attribute = "value" + + assert "has no attribute 'non_existent_attribute'." in str(excinfo.value) + + +def test_generic_db_manager_no_initialization(session, manager): + # Test initialization with default object + db_manager = GenericDbManager(session, manager, "TestSettings", DummySettingsWithDefault) + + value = db_manager.prop2 # Accessing an attribute will create a new entry + assert value == "prop2" + + +def test_generic_db_manager_no_initialization_set(session, manager): + db_manager = GenericDbManager(session, manager, "TestSettings", DummySettingsWithDefault) + + db_manager.prop2 = "new_value" + + # Verify that a default object was created and saved + loaded_settings = manager.load(session, "TestSettings") + assert isinstance(loaded_settings, DummySettingsWithDefault) + + # The attributes should have their default values + assert loaded_settings.prop1.a == 5 + assert loaded_settings.prop1.b == "default_b" + assert loaded_settings.prop1.c is False + assert loaded_settings.prop2 == "new_value" + + +# Tests for NestedSettingsManager + +def test_nested_settings_manager_get_attribute(nested_settings_manager, manager, session): + # Setup initial settings + initial_settings = DummySettingsWithDefault( + prop1=DummyObjectWithDefault(10, "test_value", True), + prop2="initial_value" + ) + manager.save(session, "TestSettings", initial_settings) + + # Get attributes via NestedSettingsManager + assert nested_settings_manager.a == 10 + assert nested_settings_manager.b == "test_value" + assert nested_settings_manager.c is True + + +def test_nested_settings_manager_set_attribute(nested_settings_manager, manager, session): + # Setup initial settings + initial_settings = DummySettingsWithDefault( + prop1=DummyObjectWithDefault(10, "test_value", True), + prop2="initial_value" + ) + manager.save(session, "TestSettings", initial_settings) + + # Set attribute via NestedSettingsManager + nested_settings_manager.a = 99 + nested_settings_manager.b = "updated_nested_value" + nested_settings_manager.c = False + + # Verify that the changes were saved to the database + loaded_settings = manager.load(session, "TestSettings") + assert loaded_settings.prop1.a == 99 + assert loaded_settings.prop1.b == "updated_nested_value" + assert loaded_settings.prop1.c is False + + # Also verify direct access works + assert nested_settings_manager.a == 99 + assert nested_settings_manager.b == "updated_nested_value" + assert nested_settings_manager.c is False + + +def test_nested_settings_manager_attribute_error(nested_settings_manager): + # Test that accessing a non-existent attribute raises AttributeError + with pytest.raises(AttributeError) as excinfo: + nested_settings_manager.non_existent_attribute + + assert "has no attribute 'non_existent_attribute'" in str(excinfo.value) + + +def test_nested_settings_manager_set_attribute_error(nested_settings_manager): + # Test that setting a non-existent attribute raises AttributeError + with pytest.raises(AttributeError) as excinfo: + nested_settings_manager.non_existent_attribute = "value" + + assert "has no attribute 'non_existent_attribute'" in str(excinfo.value) + + +def test_nested_settings_manager_no_initialization(session, manager): + # Test initialization with default object + nested_db_manager = NestedSettingsManager(session, manager, "TestSettings", DummySettingsWithDefault, "prop1") + + # Accessing an attribute will create a new entry with default values + assert nested_db_manager.a == 5 + assert nested_db_manager.b == "default_b" + assert nested_db_manager.c is False + + +def test_nested_settings_manager_no_initialization_set(session, manager): + nested_db_manager = NestedSettingsManager(session, manager, "TestSettings", DummySettingsWithDefault, "prop1") + + # Set attribute will create a new entry with the modified value + nested_db_manager.a = 42 + + # Verify that a default object was created and saved + loaded_settings = manager.load(session, "TestSettings") + assert isinstance(loaded_settings, DummySettingsWithDefault) + + # The specified attribute should be updated, while others retain default values + assert loaded_settings.prop1.a == 42 + assert loaded_settings.prop1.b == "default_b" + assert loaded_settings.prop1.c is False + assert loaded_settings.prop2 == "prop2" + + +def test_nested_settings_manager_invalid_nested_attribute(session, manager): + # Test with an invalid nested attribute + invalid_nested_manager = NestedSettingsManager(session, manager, "TestSettings", DummySettingsWithDefault, + "non_existent") + + # Accessing any attribute should raise an AttributeError + with pytest.raises(AttributeError) as excinfo: + invalid_nested_manager.a + + assert "has no attribute 'non_existent'" in str(excinfo.value) + + +def test_i_can_update_nested_settings(nested_settings_manager, session, manager): + new_values = { + "a": 10, + "b": "new_value", + "c": True, + } + nested_settings_manager.update(new_values) + + # Verify that a default object was created and saved + loaded_settings = manager.load(session, "TestSettings") + assert isinstance(loaded_settings, DummySettingsWithDefault) + + # The specified attribute should be updated, while others retain default values + assert loaded_settings.prop1.a == 10 + assert loaded_settings.prop1.b == "new_value" + assert loaded_settings.prop1.c is True