+
+
+
+
+
+
+
+
+
+
Clear Statistics History
+
This action removes every statistics entry for this server.
+
+
+
+
All automatic and manual statistics snapshots will be permanently deleted.
+
This cannot be undone.
+
+
+
+ Cancel
+
+
+
+
+ Clear History
+
+
+ Clearing...
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Nothing to Export
+
We couldn't find any rows to include in the export.
+
+
+
{{ $exportInfoMessage }}
+
+
+ Close
+
+
+
+
+
+
+
+ @script
+
+ @endscript
+
+
+
+
\ No newline at end of file
diff --git a/extensions/Servers/Proxmox/views/subdomain.blade.php b/extensions/Servers/Proxmox/views/subdomain.blade.php
new file mode 100644
index 000000000..feef4592f
--- /dev/null
+++ b/extensions/Servers/Proxmox/views/subdomain.blade.php
@@ -0,0 +1,461 @@
+
+
+
+
+
Subdomain Management
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Subdomain Management
+
+
+
+ Create and manage DNS subdomains for your virtual machine. Each subdomain points to one of your assigned public IP addresses and is automatically configured with A and AAAA records.
+
+
+
+ Limitations: Only A and AAAA records are created. One subdomain per public IP address. Wildcard subdomains (*) are automatically created for each subdomain.
+
+
+ DNS Propagation: Changes may take a few minutes to propagate across DNS servers worldwide.
+
+
+
+
+
+
+
Create and manage subdomains for dns.virtnet.host
+
+
+
+
+
+
+
+
+
+
Subdomain Configuration Notice
+
+
+
+
+
+
+ Only A and AAAA records are created. For any subdomain created, its child wildcard (*) subdomain is also automatically created. One subdomain per public IP address can be created. Under no circumstances will PTR, MX, NS, or other record types be added. These restrictions are in place to minimize abuse of the subdomain system.
+
+
+
+
+
+
+
+
+
+
+
+
Create Subdomain
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Create Subdomain
+
+
+
+ Create a new subdomain that points to one of your assigned public IP addresses. The subdomain will be created under the dns.virtnet.host domain.
+
+
+
+ Subdomain Name: Choose a unique name for your subdomain. Only alphanumeric characters and hyphens are allowed.
+
+
+ IP Address: Select which public IP address this subdomain should point to. Each IP can only have one subdomain.
+
+
+ A wildcard subdomain (*.yourname.dns.virtnet.host) will be automatically created along with your subdomain.
+
+
+
+
+
+
+
+
+ Create Subdomain
+
+
+ @if(count($this->availableIpsForSubdomain) === 0)
+
All available public IP addresses already have subdomains assigned.
+ @else
+
You can create {{ count($this->availableIpsForSubdomain) }} more subdomain(s).
+ @endif
+
+
+
+
+
+
Your Subdomains
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Your Subdomains
+
+
+
+ Lists all subdomains you have created for this virtual machine. Each subdomain shows its full domain name, associated IP address, and automatically created wildcard record.
+
+
+
+ Delete: Removes the subdomain and all associated DNS records. This action cannot be undone.
+
+
+ Wildcard Records: Each subdomain automatically includes a wildcard (*) record that matches all subdomains under your chosen name.
+
+
+
+
+
+
+ @if(count($serverZones) === 0)
+
No subdomains created yet.
+ @else
+
+ @foreach($serverZones as $zone)
+
+
+
+
{{ $zone['subdomain'] }}.dns.virtnet.host
+
IP: {{ $zone['ipAddress'] }}
+ @php
+ $hasWildcard = false;
+ $wildcardType = null;
+ if (isset($zone['records']) && is_array($zone['records'])) {
+ foreach ($zone['records'] as $record) {
+ if (($record['name'] ?? '') === '*') {
+ $hasWildcard = true;
+ $wildcardType = $record['type'] ?? 'A';
+ break;
+ }
+ }
+ }
+ @endphp
+ @if($hasWildcard)
+
Wildcard: *.{{ $zone['subdomain'] }}.dns.virtnet.host ({{ $wildcardType }})
+ @endif
+
+
+
+
+ Delete
+
+
+
+
+ @endforeach
+
+ @endif
+
+
+
+
+ @if($showCreateModal)
+
+
+
+
Create New Subdomain
+
+
+
+
+
+
+
+
+ Subdomain Name
+
+
+ Random
+
+
+
+
Will create: {{ $newSubdomain ? $newSubdomain . '.dns.virtnet.host' : 'subdomain.dns.virtnet.host' }}
+ @error('newSubdomain')
+
{{ $message }}
+ @enderror
+
+
+
+
IP Address
+
+ Select an IP address
+ @foreach($this->availableIpsForSubdomain as $ip)
+ {{ $ip->ip }}
+ @endforeach
+
+ @error('selectedIpId')
+
{{ $message }}
+ @enderror
+
+
+
+ Cancel
+
+
+ Create
+ Creating...
+
+
+
+
+
+ @endif
+
+
+ @if($showRecordModal && $selectedZone)
+
+
+
+
DNS Records for {{ $selectedZone }}.dns.virtnet.host
+
+
+
+
+
+
+
+
Add DNS Record
+
+
+
Name (use @ for root, * for wildcard)
+
+ @error('recordName')
+
{{ $message }}
+ @enderror
+
+
+
+ Type
+
+ A (IPv4)
+ AAAA (IPv6)
+
+
+
+
+
IP Address
+
+ @error('recordRdata')
+
{{ $message }}
+ @enderror
+
+
+
+
TTL (seconds)
+
+ @error('recordTtl')
+
{{ $message }}
+ @enderror
+
+
+
+
+
+ Add Record
+ Adding...
+
+
+
+
+
+
+
Existing Records
+ @if(empty($zoneRecords) || count($zoneRecords) === 0)
+
No DNS records found.
+ @else
+
+
+
+
+ Name
+ Type
+ IP Address
+ TTL
+ Actions
+
+
+
+ @foreach($zoneRecords as $index => $record)
+
+ {{ $record['name'] ?? '@' }}
+ {{ $record['type'] ?? 'A' }}
+ {{ $record['rdata'] ?? $record['ipAddress'] ?? '' }}
+ {{ $record['ttl'] ?? 3600 }}
+
+
+
+
+
+
+ @endforeach
+
+
+
+ @endif
+
+
+
+ @endif
+
+
+ @if($showDeleteModal && $subdomainToDelete)
+
+
+
+
Delete Subdomain
+
+
+
+
+
+
+
Are you sure you want to delete the following subdomain?
+
{{ $subdomainToDeleteFull }}
+
This action cannot be undone. All DNS records associated with this subdomain will be deleted.
+
+
+
+ Cancel
+
+
+ Delete
+ Deleting...
+
+
+
+
+ @endif
+
+
diff --git a/extensions/Servers/Proxmox/views/system.blade.php b/extensions/Servers/Proxmox/views/system.blade.php
new file mode 100644
index 000000000..42edec092
--- /dev/null
+++ b/extensions/Servers/Proxmox/views/system.blade.php
@@ -0,0 +1,558 @@
+
+
+
+
+
System Configuration
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ System Configuration
+
+
+
+ Configure low-level system settings including firmware type, CPU model, machine type, and virtualization features. These settings affect how the virtual machine hardware is presented to the guest operating system.
+
+
+
+ Firmware & Machine: Select the chipset architecture (Q35 or i440fx) and firmware type (SeaBIOS or OVMF/UEFI).
+
+
+ CPU & Virtualization: Configure the CPU model and enable/disable hardware virtualization features like KVM.
+
+
+ Changes to these settings typically require a VM restart to take effect.
+
+
+
+
+
+
+
Manage firmware, CPU, SMBIOS, and trusted module devices exposed to this VPS.
+
+
+
+
+
+
+
+
Firmware & Machine
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Firmware & Machine
+
+
+
+ Configure the virtual machine's chipset architecture and firmware type. These settings determine the hardware interface presented to the guest operating system.
+
+
+
+ Machine Type: Q35 offers PCIe and UEFI-friendly layout, while i440fx mirrors legacy Intel chipsets for maximum compatibility.
+
+
+ BIOS/Firmware: SeaBIOS for legacy installs, OVMF for UEFI-capable operating systems. UEFI is required for secure boot and modern Windows installations.
+
+
+ ACPI: Required for power management and graceful shutdown in most modern operating systems.
+
+
+
+
+
+
+
Select the chipset, firmware, and power-management features available to the guest.
+
+ @if($this->firmwareMachineSynced)
+
Synced
+ @else
+
Unsynced
+ @endif
+
+
+
+
+
Machine Type
+
+ Default (node)
+ @foreach($suggestedMachines as $machine)
+ {{ $machine['label'] }}
+ @endforeach
+ @if(count($availableMachines))
+
+ @foreach($availableMachines as $machine)
+ {{ $machine['label'] }}
+ @endforeach
+
+ @endif
+
+
Q35 offers PCIe and UEFI-friendly layout, while i440fx mirrors legacy Intel chipsets.
+
+
+
+
BIOS / Firmware
+
+ @foreach($availableBiosOptions as $bios)
+ {{ $bios['label'] }}
+ @endforeach
+
+
Choose SeaBIOS for legacy installs or OVMF for UEFI-capable operating systems.
+
+
+
+
SMBIOS Settings
+
+
Provide SMBIOS key/value pairs (comma separated) to expose to the guest.
+
+
+
+
+
+
+
Enable ACPI support
+
ACPI (Advanced Configuration and Power Interface) enables power management, device configuration, and graceful shutdown. Required for most modern operating systems.
+
+
+
+
+
+
Enable KVM virtualization
+
KVM (Kernel-based Virtual Machine) uses hardware-assisted virtualization on the host CPU for improved performance. Disable only if you need software emulation compatibility.
+
+
+
+
+
+
+
+
+
+
+
CPU & Virtualization
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ CPU & Virtualization
+
+
+
+ Configure the virtual CPU model and hardware-assisted virtualization features. These settings affect CPU performance and compatibility with the guest operating system.
+
+
+
+ CPU Type: Select a specific CPU model or use "host" to expose all host CPU features. "host" offers best performance but may reduce portability.
+
+
+ KVM: Hardware-assisted virtualization using the host CPU. Disable only if you need software emulation compatibility.
+
+
+ CPU Flags: Additional CPU feature flags can be enabled or disabled to fine-tune compatibility and performance.
+
+
+
+
+
+
+
Tune the virtual CPU model and host feature flags exposed to the guest OS.
+
+ @if($this->cpuVirtualizationSynced)
+
Synced
+ @else
+
Unsynced
+ @endif
+
+
+
+
+
CPU Type
+
+ @foreach($availableCpuTypes as $cpu)
+ {{ $cpu['label'] }}
+ @endforeach
+
+
KVM64 is the default for most guests.
+
+
+
+
CPU Flags
+
+ @foreach($flagOptions as $flag => $label)
+
+
+ {{ $label }}
+
+ @endforeach
+
+
Toggle one or more flags to enable those CPU capabilities for this VPS.
+
+
+
+
Warning: These flags may not be supported by all CPUs.
+
+
+
+
+
+
+
+
+
+
+
+
EFI Disks
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EFI (Extensible Firmware Interface) disks provide non-volatile storage for UEFI firmware variables. These are required for UEFI-based virtual machines to store boot configuration and Secure Boot keys.
+
+
+
+ Purpose: UEFI guests require an EFI storage chip to store firmware variables, boot entries, and Secure Boot configuration.
+
+
+ Storage: EFI disks are automatically provisioned on cephpool storage with a fixed 4MB size in raw format. Each entry maps to an efidisk slot in the QEMU configuration.
+
+
+ Preenroll Keys: When enabled, Secure Boot keys are pre-enrolled during EFI disk creation, enabling Secure Boot by default for UEFI guests.
+
+
+
+
+
+
+
UEFI guests require an EFI storage chip. Each entry maps to an efidisk slot.
+
+ @if($this->efiDisksSynced)
+
Synced
+ @else
+
Unsynced
+ @endif
+
+
+
+ @forelse($efiDisks as $slot => $definition)
+
+
+
{{ strtoupper($slot) }}
+
+ Remove
+
+
+
{{ $definition }}
+
+ @empty
+
+ No EFI disks attached.
+
+ @endforelse
+
+
+ @if(empty($efiDisks))
+
+
Add EFI Disk
+
+
EFI disks are provisioned automatically on cephpool with a fixed 4M size in raw format.
+
+
+
+ Preenroll keys
+
+
Pre-enroll Secure Boot keys during EFI disk creation. Enables Secure Boot by default. Useful for UEFI guests requiring Secure Boot support.
+
+
+
+ Add EFI Disk
+
+
+
+ @endif
+
+
+
+
+
+
+
TPM Devices
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ TPM Devices
+
+
+
+ TPM (Trusted Platform Module) devices provide hardware-based security features for virtual machines. They enable secure boot, BitLocker encryption, and other security features that require TPM functionality.
+
+
+
+ Purpose: Virtual TPM devices expose TPM functionality to the guest OS, enabling features like Secure Boot, BitLocker disk encryption, and Windows Device Guard.
+
+
+ Storage: TPM devices are provisioned on cephpool storage with a fixed 4MB state file that stores the TPM's persistent state and keys.
+
+
+ Versions: TPM v2.0 is recommended for modern operating systems and provides better security features. TPM v1.2 is available for legacy compatibility.
+
+
+
+
+
+
+
Expose virtual TPM state chips for secure boot or BitLocker workloads.
+
+ @if($this->tpmDevicesSynced)
+
Synced
+ @else
+
Unsynced
+ @endif
+
+
+
+ @forelse($tpmDevices as $slot => $definition)
+
+
+
{{ strtoupper($slot) }}
+
+ Remove
+
+
+
{{ $definition }}
+
+ @empty
+
+ No TPM devices configured.
+
+ @endforelse
+
+
+ @if(empty($tpmDevices))
+
+
Add TPM Device
+
+
TPM devices are provisioned on cephpool with a fixed 4M state file.
+
+ Version
+
+ v1.2
+ v2.0
+
+
+
+
+ Add TPM Device
+
+
+
+ @endif
+
+
+
+
+
+
+ Refresh
+
+
+ Reset
+
+
+
+ Save Settings
+
+
+
+
+
diff --git a/extensions/Servers/Proxmox/views/vnc.blade.php b/extensions/Servers/Proxmox/views/vnc.blade.php
new file mode 100644
index 000000000..08f2ab22a
--- /dev/null
+++ b/extensions/Servers/Proxmox/views/vnc.blade.php
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/extensions/Servers/Proxmox/views/xterm.blade.php b/extensions/Servers/Proxmox/views/xterm.blade.php
new file mode 100644
index 000000000..a0697cc16
--- /dev/null
+++ b/extensions/Servers/Proxmox/views/xterm.blade.php
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/extensions/Servers/Pterodactyl/Pterodactyl.php b/extensions/Servers/Pterodactyl/Pterodactyl.php
new file mode 100644
index 000000000..a0abfa843
--- /dev/null
+++ b/extensions/Servers/Pterodactyl/Pterodactyl.php
@@ -0,0 +1,660 @@
+ 'host',
+ 'label' => 'Pterodactyl URL',
+ 'type' => 'text',
+ 'description' => 'Pterodactyl URL',
+ 'required' => true,
+ 'validation' => 'url',
+ ],
+ [
+ 'name' => 'api_key',
+ 'label' => 'Pterodactyl API Key',
+ 'type' => 'text',
+ 'description' => 'Pterodactyl API Key',
+ 'required' => true,
+ 'encrypted' => true,
+ ],
+ ];
+ }
+
+ public function testConfig(): bool|string
+ {
+ try {
+ $this->request('/api/application/servers', 'GET');
+ } catch (\Exception $e) {
+ return $e->getMessage();
+ }
+
+ return true;
+ }
+
+ public function request($url, $method = 'get', $data = []): array
+ {
+ // Trim any leading slashes from the base url and add the path URL to it
+ $req_url = rtrim($this->config('host'), '/') . $url;
+ $response = Http::withHeaders([
+ 'Authorization' => 'Bearer ' . $this->config('api_key'),
+ 'Accept' => 'application/json',
+ ])->$method($req_url, $data);
+
+ if (!$response->successful()) {
+ throw new \Exception($response->json()['errors'][0]['detail']);
+ }
+
+ return $response->json() ?? [];
+ }
+
+ public function getProductConfig($values = []): array
+ {
+ $nodes = $this->request('/api/application/nodes');
+ $nodeList = [];
+ foreach ($nodes['data'] as $node) {
+ $nodeList[$node['attributes']['id']] = $node['attributes']['name'];
+ }
+
+ $location = $this->request('/api/application/locations');
+ $locationList = [];
+ foreach ($location['data'] as $location) {
+ $locationList[$location['attributes']['id']] = $location['attributes']['short'];
+ }
+
+ $nests = $this->request('/api/application/nests');
+ $nestList = [];
+ foreach ($nests['data'] as $nest) {
+ $nestList[$nest['attributes']['id']] = $nest['attributes']['name'];
+ }
+
+ $eggList = [];
+ if (isset($values['nest_id'])) {
+ $eggs = $this->request('/api/application/nests/' . $values['nest_id'] . '/eggs');
+ foreach ($eggs['data'] as $egg) {
+ $eggList[$egg['attributes']['id']] = $egg['attributes']['name'];
+ }
+ }
+
+ $using_port_array = isset($values['port_array']) && $values['port_array'] !== '';
+
+ return [
+ [
+ 'name' => 'location_ids',
+ 'label' => 'Location(s)',
+ 'type' => 'select',
+ 'description' => 'Location(s) where the server will be installed',
+ 'options' => $locationList,
+ 'multiple' => true,
+ 'database_type' => 'array',
+ 'required' => false,
+ ],
+ [
+ 'name' => 'node',
+ 'label' => 'Node',
+ 'type' => 'select',
+ 'description' => 'Fill in to install the server on a specific node',
+ 'options' => $nodeList,
+ ],
+ [
+ 'name' => 'nest_id',
+ 'label' => 'Nest ID',
+ 'type' => 'select',
+ 'options' => $nestList,
+ 'description' => 'Nest ID to fetch the eggs from',
+ 'required' => true,
+ // Lets fetch the eggs every time the nest id changes
+ 'live' => true,
+ ],
+ [
+ 'name' => 'egg_id',
+ 'label' => 'Egg ID',
+ 'type' => 'select',
+ 'options' => $eggList,
+ 'required' => true,
+ ],
+ [
+ 'name' => 'memory',
+ 'label' => 'Memory',
+ 'type' => 'number',
+ 'suffix' => 'MiB',
+ 'required' => true,
+ 'validation' => 'numeric',
+ 'min_value' => 0,
+ 'description' => 'Set to 0 for unlimited',
+ ],
+ [
+ 'name' => 'swap',
+ 'label' => 'Swap',
+ 'type' => 'number',
+ 'min_value' => -1,
+ 'suffix' => 'MiB',
+ 'required' => true,
+ 'description' => 'Set to -1 for unlimited, or to 0 to disable swap',
+ ],
+ [
+ 'name' => 'disk',
+ 'label' => 'Disk',
+ 'type' => 'number',
+ 'suffix' => 'MiB',
+ 'required' => true,
+ 'min_value' => 0,
+ 'description' => 'Set to 0 for unlimited',
+ ],
+ [
+ 'name' => 'io',
+ 'label' => 'IO Weight',
+ 'type' => 'number',
+ 'required' => true,
+ 'default' => 500,
+ 'min_value' => 10,
+ 'max_value' => 1000,
+ 'description' => 'The IO Weight is the priority given to this server for disk access.',
+ 'hint' => new HtmlString('
Documentation '),
+ ],
+ [
+ 'name' => 'cpu',
+ 'label' => 'CPU Limit',
+ 'type' => 'number',
+ 'required' => true,
+ 'min_value' => 0,
+ 'suffix' => '%',
+ 'description' => 'Set to 0 for unlimited',
+ ],
+ [
+ 'name' => 'cpu_pinning',
+ 'label' => 'CPU Pinning',
+ 'type' => 'text',
+ 'description' => 'Leave empty for no pinning. Used to specify what threads should be used. Example: 0,2-4,5,6',
+ 'validation' => 'regex:/^[0-9]+(?:-[0-9]+)?(?:,[0-9]+(?:-[0-9]+)?)*$/',
+ ],
+ [
+ 'name' => 'databases',
+ 'label' => 'Databases',
+ 'type' => 'number',
+ 'required' => true,
+ 'min_value' => 0,
+ ],
+ [
+ 'name' => 'backups',
+ 'label' => 'Backups',
+ 'type' => 'number',
+ 'required' => true,
+ 'min_value' => 0,
+ ],
+ [
+ 'name' => 'additional_allocations',
+ 'label' => 'Additional Allocations',
+ 'type' => 'number',
+ 'required' => true,
+ 'min_value' => 0,
+ ],
+ [
+ 'name' => 'port_array',
+ 'label' => 'Port Array',
+ 'type' => 'text',
+ 'description' => 'Used to assign ports to egg variables.',
+ 'hint' => new HtmlString('
Documentation '),
+ 'live' => true,
+ 'validation' => 'json',
+ ],
+ [
+ 'name' => 'port_range',
+ 'label' => 'Port ranges',
+ 'type' => 'tags',
+ 'description' => '',
+ 'database_type' => 'array',
+ 'required' => false,
+ 'disabled' => $using_port_array,
+ ],
+ [
+ 'name' => 'skip_scripts',
+ 'label' => 'Skip Egg Install Script',
+ 'description' => 'If the selected Egg has an install script attached to it, the script will run during the install. If you would like to skip this step, check this box.',
+ 'type' => 'checkbox',
+ ],
+ [
+ 'name' => 'dedicated_ip',
+ 'label' => 'Dedicated IP',
+ 'description' => 'Assigns the server an allocation whose IP is not being used by any other server.',
+ 'type' => 'checkbox',
+ 'disabled' => $using_port_array,
+ ],
+ [
+ 'name' => 'start_on_completion',
+ 'label' => 'Start on completion',
+ 'description' => 'Start server automatically after installation.',
+ 'type' => 'checkbox',
+ ],
+ [
+ 'name' => 'oom_killer',
+ 'label' => 'Enable OOM Killer',
+ 'description' => 'Terminates the server if it breaches the memory limits. Enabling OOM killer may cause server processes to exit unexpectedly.',
+ 'type' => 'checkbox',
+ ],
+ ];
+ }
+
+ public function createServer(Service $service, $settings, $properties)
+ {
+ if ($this->getServer($service->id, failIfNotFound: false)) {
+ throw new \Exception('Server already exists');
+ }
+ // Smash the properties into the settings
+ $settings = array_merge($settings, $properties);
+
+ $eggData = $this->request('/api/application/nests/' . $settings['nest_id'] . '/eggs/' . $settings['egg_id'], data: ['include' => 'variables']);
+ if (!isset($eggData['attributes'])) {
+ throw new \Exception('Could not fetch egg data');
+ }
+ $environment = [];
+ foreach ($eggData['attributes']['relationships']['variables']['data'] as $variable) {
+ $environment[$variable['attributes']['env_variable']] = $settings[$variable['attributes']['env_variable']] ?? $variable['attributes']['default_value'];
+ }
+
+ $orderUser = $service->user;
+ // Get the user id if one already exists...
+ $user = $this->request('/api/application/users', 'get', ['filter' => ['email' => $orderUser->email]])['data'][0]['attributes']['id'] ?? null;
+
+ // Otherwise create a new user
+ if (!$user) {
+ $user = $this->request('/api/application/users', 'post', [
+ 'email' => $orderUser->email,
+ 'username' => (preg_replace('/[^a-zA-Z0-9]/', '', strtolower(Str::transliterate($orderUser->name))) ?? Str::random(8)) . '_' . Str::random(4),
+ 'first_name' => $orderUser->first_name ?? '',
+ 'last_name' => $orderUser->last_name ?? '',
+ ])['attributes']['id'];
+
+ $returnData['created_user'] = true;
+ }
+
+ $deploymentData = $this->generateDeploymentData($settings, $environment);
+
+ $serverCreationData = [
+ 'external_id' => (string) $service->id,
+ 'name' => isset($settings['servername']) ? $settings['servername'] : $service->product->name . ' #' . $service->id,
+ 'user' => (int) $user,
+ 'egg' => $settings['egg_id'],
+ 'docker_image' => $eggData['attributes']['docker_image'],
+ 'startup' => $eggData['attributes']['startup'],
+ 'environment' => $deploymentData['environment'],
+ 'skip_scripts' => $settings['skip_scripts'] ?? false,
+ 'oom_disabled' => !($settings['oom_killer'] ?? false),
+ 'limits' => [
+ 'memory' => (int) $settings['memory'],
+ 'swap' => (int) $settings['swap'],
+ 'disk' => (int) $settings['disk'],
+ 'io' => (int) $settings['io'],
+ 'threads' => $settings['cpu_pinning'] ?? null,
+ 'cpu' => (int) $settings['cpu'],
+ ],
+ 'feature_limits' => [
+ 'databases' => (int) $settings['databases'],
+ 'allocations' => $deploymentData['allocations_needed'] + (int) $settings['additional_allocations'],
+ 'backups' => (int) $settings['backups'],
+ ],
+ 'start_on_completion' => $settings['start_on_completion'] ?? false,
+ ];
+ if ($deploymentData['auto_deploy']) {
+ $serverCreationData['deploy'] = [
+ 'locations' => isset($settings['location'])
+ ? [$settings['location']]
+ : (array) $settings['location_ids'],
+ 'dedicated_ip' => $settings['dedicated_ip'] ?? false,
+ 'port_range' => $settings['port_range'] ?? [],
+ ];
+ } else {
+ $serverCreationData['allocation'] = $deploymentData['allocation'];
+ }
+
+ $server = $this->request('/api/application/servers', 'post', $serverCreationData);
+
+ return [
+ 'server' => $server['attributes']['id'],
+ 'link' => $this->config('host') . '/server/' . $server['attributes']['identifier'],
+ ];
+ }
+
+ private function generateDeploymentData($settings, $environment)
+ {
+ if (!isset($settings['port_array']) || $settings['port_array'] === '') {
+ if ($settings['node']) {
+ // Only get one allocation from the node
+ $nodes = $this->request('/api/application/nodes/deployable', 'get', [
+ 'memory' => $settings['memory'],
+ 'disk' => $settings['disk'],
+ 'location_ids' => $settings['location_ids'] ?? [],
+ 'include' => ['allocations'],
+ ]);
+ $nodes = collect($nodes['data']);
+ $nodes_by_id = $nodes->mapWithKeys(fn ($node) => [$node['attributes']['id'] => $node['attributes']]);
+
+ if (!$nodes_by_id->has($settings['node'])) {
+ throw new \Exception('Node is not suitable for deployment.');
+ }
+ $node = $nodes_by_id->get($settings['node']);
+ $availablePorts = collect($node['relationships']['allocations']['data']);
+ $availablePorts = $availablePorts
+ ->filter(fn ($port) => !$port['attributes']['assigned'])
+ ->map(
+ fn ($port) => [
+ 'port' => $port['attributes']['port'],
+ 'id' => $port['attributes']['id'],
+ ]
+ );
+ if ($availablePorts->isEmpty()) {
+ throw new \Exception('No available allocations found on the selected node.');
+ }
+ $allocation = $availablePorts->first();
+ $environment['SERVER_PORT'] = $allocation['port'];
+
+ // Return the allocation id for the SERVER_PORT
+ return [
+ 'auto_deploy' => false,
+ 'environment' => $environment,
+ 'allocations_needed' => 1,
+ 'allocation' => [
+ 'default' => $allocation['id'],
+ 'additional' => [],
+ ],
+ ];
+ }
+
+ return [
+ 'auto_deploy' => true,
+ 'environment' => $environment,
+ 'allocations_needed' => 1,
+ ];
+ }
+
+ try {
+ // Example: {"SERVER_PORT": 7777, "NONE": [7778, 7779], "QUERY_PORT": 2701, "RCON_PORT": 27020}
+ $port_array = json_decode($settings['port_array'], true);
+ if (json_last_error() !== JSON_ERROR_NONE) {
+ throw new \Exception('JSON decode error: ' . json_last_error_msg());
+ }
+ } catch (\Exception $e) {
+ throw new \Exception('Invalid JSON in port array');
+ }
+
+ if (!is_array($port_array)) {
+ throw new \Exception('Port array must be an array');
+ }
+
+ $nodes = $this->request('/api/application/nodes/deployable', 'get', [
+ 'memory' => $settings['memory'],
+ 'disk' => $settings['disk'],
+ 'location_ids' => $settings['location_ids'] ?? [],
+ 'include' => ['allocations'],
+ ]);
+ $nodes = collect($nodes['data']);
+ $nodes_by_id = $nodes->mapWithKeys(fn ($node) => [$node['attributes']['id'] => $node['attributes']]);
+
+ if ($settings['node']) {
+ // If the product's node id is not in the deployable nodes array, throw error.
+ if (!$nodes_by_id->has($settings['node'])) {
+ throw new \Exception('Node is not suitable for deployment.');
+ }
+
+ $node = $nodes_by_id->get($settings['node']);
+ $availablePorts = collect($node['relationships']['allocations']['data']);
+ $availablePorts = $availablePorts
+ ->filter(fn ($port) => !$port['attributes']['assigned'])
+ ->map(
+ fn ($port) => [
+ 'port' => $port['attributes']['port'],
+ 'id' => $port['attributes']['id'],
+ ]
+ );
+
+ $free_allocations_needed = 0;
+ foreach ($port_array as $key => $value) {
+ $free_allocations_needed += is_array($value) ? count($value) : 1;
+ }
+
+ if (count($availablePorts) < $free_allocations_needed) {
+ throw new \Exception("Not enough allocations found for deployment. Found: {$availablePorts->count()}, Required: {$free_allocations_needed}");
+ }
+ } else {
+ foreach ($nodes as $index => $node) {
+ $availablePorts = collect($node['attributes']['relationships']['allocations']['data']);
+ $availablePorts = $availablePorts
+ ->filter(fn ($port) => !$port['attributes']['assigned'])
+ ->map(
+ fn ($port) => [
+ 'port' => $port['attributes']['port'],
+ 'id' => $port['attributes']['id'],
+ ]
+ );
+
+ $free_allocations_needed = 0;
+ foreach ($port_array as $key => $value) {
+ $free_allocations_needed += is_array($value) ? count($value) : 1;
+ }
+
+ if (count($availablePorts) < $free_allocations_needed) {
+ // If this was last viable node, throw error
+ if ($index == $nodes->count() - 1) {
+ throw new \Exception('No nodes with suitable allocations found for deployment');
+ }
+
+ // Else move onto next viable node
+ continue;
+ }
+ break;
+ }
+ }
+
+ $allocations = [];
+ foreach ($port_array as $key => $value) {
+ if (is_array($value)) {
+ foreach ($value as $port) {
+ $allocation = $availablePorts->where('port', $port)->first();
+ if (!$allocation) {
+ // try to assign a higher port, if that fails try a random port
+ $allocation = $availablePorts->where('port', '>', $port)->first();
+ if (!$allocation) {
+ $allocation = $availablePorts->random();
+ }
+ if (!$allocation) {
+ throw new \Exception('Could not find a port to assign');
+ }
+ }
+ $allocations[$key][] = $allocation;
+
+ // Remove the port from the available ports
+ $availablePorts = $availablePorts->reject(function ($port) use ($allocation) {
+ return $port['id'] == $allocation['id'];
+ });
+ }
+ } else {
+ $allocation = $availablePorts->where('port', $value)->first();
+ if (!$allocation) {
+ // try to assign a higher port, if that fails try a random port
+ $allocation = $availablePorts->where('port', '>', $value)->first();
+ if (!$allocation) {
+ $allocation = $availablePorts->random();
+ }
+ if (!$allocation) {
+ throw new \Exception('Could not find a port to assign');
+ }
+ }
+ $allocations[$key] = $allocation;
+
+ // Remove the port from the available ports
+ $availablePorts = $availablePorts->reject(function ($port) use ($allocation) {
+ return $port['id'] == $allocation['id'];
+ });
+ }
+ }
+
+ $allocationIds = [];
+
+ foreach ($allocations as $key => $value) {
+ // Assign the allocations to the environment
+ if ($key !== 'NONE') {
+ if (isset($environment[$key])) {
+ $environment[$key] = $value['port'];
+ }
+ }
+
+ // Set allocations to a array with only the ids
+ if ($key !== 'SERVER_PORT') {
+ if (is_array($value) && isset($value[0])) {
+ foreach ($value as $v) {
+ $allocationIds[] = $v['id'];
+ }
+ } else {
+ $allocationIds[] = $value['id'];
+ }
+ }
+ }
+
+ return [
+ 'auto_deploy' => false,
+ 'allocations_needed' => $free_allocations_needed,
+ 'environment' => $environment,
+ 'allocation' => [
+ 'default' => $allocations['SERVER_PORT']['id'],
+ 'additional' => $allocationIds,
+ ],
+ ];
+ }
+
+ private function getServer($id, $failIfNotFound = true, $raw = false)
+ {
+ try {
+ $response = $this->request('/api/application/servers/external/' . $id);
+ } catch (\Exception $e) {
+ if ($failIfNotFound) {
+ throw new \Exception('Server not found');
+ } else {
+ return false;
+ }
+ }
+ if ($raw) {
+ return $response;
+ }
+
+ return $response['attributes']['id'] ?? false;
+ }
+
+ public function suspendServer(Service $service, $settings, $properties)
+ {
+ $server = $this->getServer($service->id);
+
+ $this->request('/api/application/servers/' . $server . '/suspend', 'post');
+
+ return true;
+ }
+
+ public function unsuspendServer(Service $service, $settings, $properties)
+ {
+ $server = $this->getServer($service->id);
+
+ $this->request('/api/application/servers/' . $server . '/unsuspend', 'post');
+
+ return true;
+ }
+
+ public function terminateServer(Service $service, $settings, $properties)
+ {
+ $server = $this->getServer($service->id);
+
+ $this->request('/api/application/servers/' . $server, 'delete');
+
+ return true;
+ }
+
+ public function upgradeServer(Service $service, $settings, $properties)
+ {
+ $server = $this->getServer($service->id, raw: true);
+
+ $settings = array_merge($settings, $properties);
+
+ $updateServerData = [
+ 'allocation' => $server['attributes']['allocation'],
+ 'memory' => (int) $settings['memory'],
+ 'swap' => (int) $settings['swap'],
+ 'disk' => (int) $settings['disk'],
+ 'io' => (int) $settings['io'],
+ 'cpu' => (int) $settings['cpu'],
+ 'threads' => $settings['cpu_pinning'] ?? null,
+ 'feature_limits' => [
+ 'databases' => $settings['databases'],
+ 'allocations' => $settings['additional_allocations'],
+ 'backups' => $settings['backups'],
+ ],
+ ];
+
+ $this->request('/api/application/servers/' . $server['attributes']['id'] . '/build', 'patch', $updateServerData);
+
+ $eggData = $this->request('/api/application/nests/' . $settings['nest_id'] . '/eggs/' . $settings['egg_id'], data: ['include' => 'variables']);
+
+ if (!isset($eggData['attributes'])) {
+ throw new \Exception('Could not fetch egg data');
+ }
+
+ $environment = [];
+
+ foreach ($eggData['attributes']['relationships']['variables']['data'] as $variable) {
+ // Check if variable has been set on server
+ if (isset($server['attributes']['container']['environment'][$variable['attributes']['env_variable']])) {
+ $environment[$variable['attributes']['env_variable']] = $server['attributes']['container']['environment'][$variable['attributes']['env_variable']];
+ } else {
+ $environment[$variable['attributes']['env_variable']] = $settings[$variable['attributes']['env_variable']] ?? $variable['attributes']['default_value'];
+ }
+ }
+
+ $updateServerData = [
+ 'environment' => $environment,
+ 'skip_scripts' => $settings['skip_scripts'] ?? false,
+ 'oom_disabled' => !($settings['oom_killer'] ?? false),
+ 'egg' => $settings['egg_id'],
+ 'image' => $server['attributes']['container']['image'] ?? $eggData['attributes']['docker_image'],
+ 'startup' => $server['attributes']['container']['startup_command'] ?? $settings['startup'] ?? $eggData['attributes']['startup'],
+ ];
+
+ $this->request('/api/application/servers/' . $server['attributes']['id'] . '/startup', 'patch', $updateServerData);
+
+ return true;
+ }
+
+ public function getActions(Service $service)
+ {
+ $server = $this->getServer($service->id, raw: true);
+
+ return [
+ [
+ 'type' => 'button',
+ 'label' => 'Go to server',
+ 'url' => $this->config('host') . '/server/' . $server['attributes']['identifier'],
+ ],
+ ];
+ }
+
+ public function migrateOption(string $key, ?string $value)
+ {
+ return match ($key) {
+ 'egg' => ['key' => 'egg_id', 'value' => $value],
+ 'nest' => ['key' => 'nest_id', 'value' => $value],
+ 'allocation' => ['key' => 'additional_allocations', 'value' => $value],
+ 'location' => ['key' => 'location_ids', 'value' => json_encode([$value]), 'type' => 'array'],
+ default => ['key' => $key, 'value' => $value]
+ };
+ }
+}
diff --git a/extensions/Servers/Virtfusion/Virtfusion.php b/extensions/Servers/Virtfusion/Virtfusion.php
new file mode 100644
index 000000000..6248fed55
--- /dev/null
+++ b/extensions/Servers/Virtfusion/Virtfusion.php
@@ -0,0 +1,258 @@
+ 'host',
+ 'type' => 'text',
+ 'label' => 'Hostname',
+ 'required' => true,
+ 'validation' => 'url',
+ ],
+ [
+ 'name' => 'apikey',
+ 'type' => 'text',
+ 'label' => 'API key',
+ 'required' => true,
+ 'encrypted' => true,
+ ],
+ ];
+ }
+
+ /**
+ * Get product config
+ *
+ * @param array $values
+ */
+ public function getProductConfig($values = []): array
+ {
+ $apiPackages = $this->request('/packages');
+ $packages = [];
+ foreach ($apiPackages['data'] as $package) {
+ $packages[$package['id']] = $package['name'];
+ }
+
+ // We need to wait for a virtfusion update to get hypervisors
+ $apiHypervisors = $this->request('/compute/hypervisors/groups');
+ $hypervisors = [];
+ foreach ($apiHypervisors['data'] as $hypervisor) {
+ $hypervisors[$hypervisor['id']] = $hypervisor['name'];
+ }
+
+ return [
+ [
+ 'name' => 'package',
+ 'type' => 'select',
+ 'label' => 'Package',
+ 'required' => true,
+ 'options' => $packages,
+ ],
+ [
+ 'name' => 'hypervisor',
+ 'type' => 'select',
+ 'label' => 'Hypervisor Group ID',
+ 'required' => true,
+ 'description' => 'The default Hypervisor group ID',
+ 'options' => $hypervisors,
+ ],
+ [
+ 'name' => 'ipv4',
+ 'type' => 'number',
+ 'label' => 'Default IPv4',
+ 'description' => 'The default amount of IPv4 addresses to assign to the server',
+ 'required' => true,
+ 'validation' => 'integer|min:1',
+ ],
+ ];
+ }
+
+ /**
+ * Check if currenct configuration is valid
+ */
+ public function testConfig(): bool|string
+ {
+ try {
+ $this->request('/connect');
+ } catch (\Exception $e) {
+ return $e->getMessage();
+ }
+
+ return true;
+ }
+
+ /**
+ * Do a request to the Virtfusion API
+ *
+ * @param string $url
+ * @param string $method
+ * @param array $data
+ */
+ public function request($url, $method = 'get', $data = []): array
+ {
+ // Trim any leading slashes from the base url and add the path URL to it
+ $req_url = rtrim($this->config('host'), '/') . '/api/v1' . $url;
+ $response = Http::withHeaders([
+ 'Authorization' => 'Bearer ' . $this->config('apikey'),
+ 'Accept' => 'application/json',
+ ])->$method($req_url, $data);
+
+ if (!$response->successful()) {
+ throw new \Exception('An error occurred, got status code ' . $response->status() . ' on ' . $req_url);
+ }
+
+ return $response->json() ?? [];
+ }
+
+ /**
+ * Get or create a user on VirtFusion
+ */
+ public function getUser(Service $service): string
+ {
+ try {
+ $response = $this->request('/users/' . $service->user->id . '/byExtRelation');
+ } catch (\Exception $e) {
+ try {
+ $response = $this->request('/users', 'post', [
+ 'email' => $service->user->email,
+ 'name' => $service->user->name,
+ 'extRelationId' => $service->user->id,
+ ]);
+ } catch (\Exception $e) {
+ throw new \Exception('Failed to create user, this is probably due to a wrong extRelationId');
+ }
+ }
+
+ return $response['data']['id'] ?? '';
+ }
+
+ /**
+ * Create a server
+ *
+ * @param array $settings (product settings)
+ * @param array $properties (checkout options)
+ * @return bool
+ */
+ public function createServer(Service $service, $settings, $properties)
+ {
+ if (isset($properties['server_id'])) {
+ throw new \Exception('Server already exists');
+ }
+
+ $data = [
+ 'packageId' => $settings['package'],
+ 'userId' => $this->getUser($service),
+ 'hypervisorId' => $settings['hypervisor'],
+ 'ipv4' => $settings['ipv4'],
+ ];
+ // Allowed data to be overwritten
+ $allowed = ['ipv4', 'packageId', 'hypervisorId', 'storage', 'memory', 'traffic', 'networkSpeedInbound', 'networkSpeedOutbound', 'cpuCores', 'networkProfile', 'storageProfile'];
+ $settings = array_merge($settings, $properties);
+ $settings = array_intersect_key($settings, array_flip($allowed));
+ $data = array_merge($data, $settings);
+
+ $response = $this->request('/servers', 'post', $data);
+
+ $service->properties()->updateOrCreate([
+ 'key' => 'server_id',
+ ], [
+ 'name' => 'VirtFusion Server ID',
+ 'value' => $response['data']['id'],
+ ]);
+
+ return $response['data'];
+ }
+
+ /**
+ * Suspend a server
+ *
+ * @param array $settings (product settings)
+ * @param array $properties (checkout options)
+ * @return bool
+ */
+ public function suspendServer(Service $service, $settings, $properties)
+ {
+ if (!isset($properties['server_id'])) {
+ throw new \Exception('Server does not exist');
+ }
+
+ $this->request('/servers/' . $properties['server_id'] . '/suspend', 'post');
+
+ return true;
+ }
+
+ /**
+ * Unsuspend a server
+ *
+ * @param array $settings (product settings)
+ * @param array $properties (checkout options)
+ * @return bool
+ */
+ public function unsuspendServer(Service $service, $settings, $properties)
+ {
+ if (!isset($properties['server_id'])) {
+ throw new \Exception('Server does not exist');
+ }
+
+ $this->request('/servers/' . $properties['server_id'] . '/unsuspend', 'post');
+
+ return true;
+ }
+
+ /**
+ * Terminate a server
+ *
+ * @param array $settings (product settings)
+ * @param array $properties (checkout options)
+ * @return bool
+ */
+ public function terminateServer(Service $service, $settings, $properties)
+ {
+ if (!isset($properties['server_id'])) {
+ throw new \Exception('Server does not exist');
+ }
+
+ $this->request('/servers/' . $properties['server_id'], 'delete');
+
+ return true;
+ }
+
+ public function getActions(Service $service): array
+ {
+ return [
+ [
+ 'type' => 'button',
+ 'label' => 'Go to Server',
+ 'function' => 'ssoLink',
+ ],
+ ];
+ }
+
+ public function ssoLink(Service $service): string
+ {
+ $data = $this->request('/users/' . $service->user->id . '/authenticationTokens', 'post');
+
+ return rtrim($this->config('host'), '/') . $data['data']['authentication']['endpoint_complete'];
+ }
+
+ public function migrateOption(string $key, ?string $value)
+ {
+ return match ($key) {
+ 'ips' => ['key' => 'ipv4', 'value' => $value],
+ default => ['key' => $key, 'value' => $value]
+ };
+ }
+}
diff --git a/extensions/Servers/Virtualizor/Virtualizor.php b/extensions/Servers/Virtualizor/Virtualizor.php
new file mode 100644
index 000000000..3dfd2c745
--- /dev/null
+++ b/extensions/Servers/Virtualizor/Virtualizor.php
@@ -0,0 +1,390 @@
+config('ip') . ':' . $this->config('client_port') . '/index.php?api=json&adminapikey=' . $this->config('key') . '&adminapipass=' . $this->config('password') . '&act=' . $act;
+ } else {
+ $url = 'https://' . $this->config('ip') . ':' . $this->config('port') . '/index.php?api=json&adminapikey=' . $this->config('key') . '&adminapipass=' . $this->config('password') . '&act=' . $act;
+ }
+
+ if ($method == 'get') {
+ $url .= '&' . http_build_query($data);
+ $response = Http::withoutVerifying()->get($url)
+ ->throw();
+ } elseif ($method == 'post') {
+ $response = Http::withoutVerifying()->asForm()->$method($url, $data)
+ ->throw();
+ }
+
+ if (!$response->successful()) {
+ throw new \Exception('Failed to connect to Virtualizor API');
+ }
+
+ return $response->json();
+ }
+
+ /**
+ * Get all the configuration for the extension
+ *
+ * @param array $values
+ */
+ public function getConfig($values = []): array
+ {
+ return [
+ [
+ 'name' => 'key',
+ 'type' => 'text',
+ 'label' => 'API Key',
+ 'required' => true,
+ ],
+ [
+ 'name' => 'password',
+ 'type' => 'text',
+ 'label' => 'API Password',
+ 'required' => true,
+ ],
+ [
+ 'name' => 'ip',
+ 'type' => 'text',
+ 'label' => 'IP Address',
+ 'required' => true,
+ ],
+ [
+ 'name' => 'port',
+ 'type' => 'text',
+ 'label' => 'Port',
+ 'required' => true,
+ 'default' => '4085',
+ ],
+ [
+ 'name' => 'client_port',
+ 'type' => 'text',
+ 'label' => 'Client Port (normally 4083)',
+ 'default' => '4083',
+ 'required' => true,
+ ],
+ ];
+ }
+
+ /**
+ * Get product config
+ *
+ * @param array $values
+ */
+ public function getProductConfig($values = []): array
+ {
+ // Get Plan list
+ $plans = $this->request('plans');
+ $allplans = [];
+ foreach ($plans['plans'] as $plan) {
+ $allplans[$plan['plan_name']] = $plan['plan_name'];
+ }
+
+ return [
+ [
+ 'name' => 'virt',
+ 'label' => 'Virtualizon Type',
+ 'type' => 'select',
+ 'required' => true,
+ 'options' => $this->request('config')['globals']['virts'],
+ ],
+ [
+ 'name' => 'planname',
+ 'label' => 'Plan Name',
+ 'type' => 'select',
+ 'required' => true,
+ 'options' => $allplans,
+ ],
+ ];
+ }
+
+ public function getCheckoutConfig(Product $product)
+ {
+ $os = $this->request('os');
+ if (!isset($os['oslist'][$product->settings()->where('key', 'virt')->first()->value])) {
+ throw new \Exception('Invalid OS');
+ }
+ $allOs = [];
+ foreach ($os['oslist'][$product->settings()->where('key', 'virt')->first()->value] as $o) {
+ foreach ($o as $osId => $osName) {
+ $allOs[$osId] = $osName['name'];
+ }
+ }
+
+ return [
+ [
+ 'name' => 'hostname',
+ 'type' => 'text',
+ 'validation' => 'regex:/^(?!:\/\/)(?=.{1,255}$)((.{1,63}\.){1,127}(?![0-9]*$)[a-z0-9-]+\.?)$/i',
+ 'label' => 'Hostname',
+ 'placeholder' => 'example.com',
+ 'required' => true,
+ ],
+ [
+ 'name' => 'os',
+ 'type' => 'select',
+ 'friendlyName' => 'Operating System',
+ 'required' => true,
+ 'options' => $allOs,
+ ],
+ ];
+ }
+
+ /**
+ * Check if currenct configuration is valid
+ */
+ public function testConfig(): bool|string
+ {
+ try {
+ $this->request('users');
+ } catch (\Exception $e) {
+ return $e->getMessage();
+ }
+
+ return true;
+ }
+
+ private function getUser(User $user)
+ {
+ $users = $this->request('users', data: ['email' => $user->email]);
+ if (!empty($users['users'])) {
+ return $users['users'][key($users['users'])];
+ }
+ $password = Str::password(16);
+ // Create user
+ $data = [
+ 'adduser' => 1,
+ 'priority' => 0,
+ 'newpass' => $password,
+ 'newemail' => $user->email,
+ 'fname' => $user->first_name,
+ 'lname' => $user->last_name,
+ ];
+ $response = $this->request('adduser', 'post', $data);
+
+ if (!$response['done']) {
+ throw new \Exception('Failed to create user');
+ }
+
+ $users = $this->request('users', data: ['email' => $user->email]);
+ $user = $users['users'][key($users['users'])];
+ $user['password'] = $password;
+
+ return $user;
+ }
+
+ /**
+ * Create a server
+ *
+ * @param array $settings (product settings)
+ * @param array $properties (checkout options)
+ * @return bool
+ */
+ public function createServer(Service $service, $settings, $properties)
+ {
+ $settings = array_merge($settings, $properties);
+ $data = [
+ 'planname' => $settings['planname'],
+ 'ptype' => $settings['virt'],
+ ];
+ $plans = $this->request('plans', 'get', $data);
+ // Check if plan exists
+ if (empty($plans['plans'])) {
+ throw new \Exception('Invalid plan OR Virtualization type');
+ }
+ $plan = $plans['plans'][key($plans['plans'])];
+ $password = Str::random(12);
+
+ // Create user
+ $user = $this->getUser($service->user);
+
+ $data = [
+ 'addvps' => 1,
+ 'node_select' => 1,
+ 'virt' => $settings['virt'],
+ 'uid' => $user['uid'],
+ 'osid' => $settings['os'],
+ 'hostname' => $settings['hostname'],
+ 'rootpass' => $password,
+ 'num_ips6' => isset($settings['ips6']) ? $settings['ips6'] : $plan['ips6'],
+ 'num_ips6_subnet' => isset($settings['ips6_subnet']) ? $settings['ips6_subnet'] : $plan['ips6_subnet'],
+ 'num_ips' => isset($settings['ips']) ? $settings['ips'] : $plan['ips'],
+ 'ram' => isset($settings['ram']) ? $settings['ram'] : $plan['ram'],
+ 'swapram' => isset($settings['swap']) ? $settings['swap'] : $plan['swap'],
+ 'bandwidth' => isset($settings['bandwidth']) ? $settings['bandwidth'] : $plan['bandwidth'],
+ 'network_speed' => isset($settings['network_speed']) ? $settings['network_speed'] : $plan['network_speed'],
+ 'cpu' => isset($settings['cpu']) ? $settings['cpu'] : $plan['cpu'],
+ 'cores' => isset($settings['cores']) ? $settings['cores'] : $plan['cores'],
+ 'cpu_percent' => isset($settings['cpu_percent']) ? $settings['cpu_percent'] : $plan['cpu_percent'],
+ 'vnc' => isset($settings['vnc']) ? $settings['vnc'] : $plan['vnc'],
+ 'kvm_cache' => $plan['kvm_cache'],
+ 'io_mode' => $plan['io_mode'],
+ 'vnc_keymap' => $plan['vnc_keymap'],
+ 'nic_type' => $plan['nic_type'],
+ 'osreinstall_limit' => isset($settings['osreinstall_limit']) ? $settings['osreinstall_limit'] : $plan['osreinstall_limit'],
+ 'space' => isset($settings['space']) ? $settings['space'] : $plan['space'],
+ 'plid' => $plan['plid'],
+ ];
+
+ $response = $this->request('addvs', 'post', $data);
+
+ if (isset($response['error']) && !empty($response['error'])) {
+ throw new \Exception('Failed to create server with error: ' . implode(', ', $response['error']));
+ }
+
+ $service->properties()->updateOrCreate([
+ 'key' => 'server_id',
+ ], [
+ 'name' => 'Virtualizor Server ID',
+ 'value' => $response['newvs']['vpsid'],
+ ]);
+
+ return [
+ 'vps' => $response['newvs'],
+ 'user' => $user,
+ ];
+ }
+
+ /**
+ * Suspend a server
+ *
+ * @param array $settings (product settings)
+ * @param array $properties (checkout options)
+ * @return bool
+ */
+ public function suspendServer(Service $service, $settings, $properties)
+ {
+ if (!isset($properties['server_id'])) {
+ throw new \Exception('Server does not exist');
+ }
+
+ // Suspend server
+ $this->request('vs', 'get', ['suspend' => $properties['server_id']]);
+
+ return true;
+ }
+
+ /**
+ * Unsuspend a server
+ *
+ * @param array $settings (product settings)
+ * @param array $properties (checkout options)
+ * @return bool
+ */
+ public function unsuspendServer(Service $service, $settings, $properties)
+ {
+ if (!isset($properties['server_id'])) {
+ throw new \Exception('Server does not exist');
+ }
+
+ // Unsuspend server
+ $this->request('vs', 'get', ['unsuspend' => $properties['server_id']]);
+
+ return true;
+ }
+
+ /**
+ * Terminate a server
+ *
+ * @param array $settings (product settings)
+ * @param array $properties (checkout options)
+ * @return bool
+ */
+ public function terminateServer(Service $service, $settings, $properties)
+ {
+ if (!isset($properties['server_id'])) {
+ throw new \Exception('Server does not exist');
+ }
+
+ // Terminate server
+ $request = $this->request('vs', 'post', ['delete' => $properties['server_id']]);
+
+ if (empty($request['done']) || !$request['done']) {
+ throw new \Exception('Failed to terminate server');
+ }
+
+ // Remove server id
+ $service->properties()->where('key', 'server_id')->delete();
+
+ return true;
+ }
+
+ public function getActions(Service $service, $settings, $properties): array
+ {
+ if (!isset($properties['server_id'])) {
+ return [];
+ }
+
+ return [
+ [
+ 'type' => 'button',
+ 'label' => 'Go to Server',
+ 'function' => 'ssoLink',
+ ],
+ ];
+ }
+
+ public function ssoLink(Service $service, $settings, $properties): string
+ {
+ if (!isset($properties['server_id'])) {
+ throw new \Exception('Server does not exist');
+ }
+
+ $response = $this->request('sso', data: ['svs' => $properties['server_id']], clientApi: true);
+
+ if (!isset($response['sid'])) {
+ throw new \Exception('Failed to get VNC link');
+ }
+
+ return 'https://' . $this->config('ip') . ':' . $this->config('client_port') . '/' . $response['token_key'] . '/?as=' . $response['sid'] . '&svs=' . $properties['server_id'];
+ }
+
+ public function upgradeServer(Service $service, $settings, $properties)
+ {
+ if (!isset($properties['server_id'])) {
+ throw new \Exception('Server does not exist');
+ }
+
+ $settings = array_merge($settings, $properties);
+
+ // Get plid from planname
+ $plans = $this->request('plans');
+ $plid = null;
+ foreach ($plans['plans'] as $plan) {
+ if ($plan['plan_name'] === $settings['planname']) {
+ $plid = $plan['plid'];
+ break;
+ }
+ }
+ if (!$plid) {
+ throw new \Exception('Plan not found');
+ }
+
+ $editData = [
+ 'vpsid' => $properties['server_id'],
+ 'plid' => $plid,
+ 'theme_edit' => 1, // Boolean
+ 'editvps' => 1, // Boolean
+ ];
+
+ $response = $this->request('managevps', 'post', $editData);
+
+ if (empty($response['done'])) {
+ throw new \Exception('Failed to upgrade server');
+ }
+
+ return true;
+ }
+}
diff --git a/gitsync.sh b/gitsync.sh
new file mode 100755
index 000000000..a2c1c790f
--- /dev/null
+++ b/gitsync.sh
@@ -0,0 +1 @@
+ systemctl restart php8.3-fpm.service && ./cache.sh
diff --git a/icons.tsv.temp b/icons.tsv.temp
new file mode 100644
index 000000000..47dd78310
--- /dev/null
+++ b/icons.tsv.temp
@@ -0,0 +1,131 @@
+offset name id
+0 Alpine alpine
+1 AOSC OS aosc
+2 Apple apple
+3 Arch Linux archlinux
+4 CentOS centos
+5 CoreOS coreos
+6 Debian debian
+7 Devuan devuan
+8 Docker docker
+9 elementary OS elementary
+10 Fedora fedora
+11 Fedora (inverse) fedora-inverse
+12 FreeBSD freebsd
+13 Gentoo gentoo
+14 Linux Mint linuxmint
+15 Linux Mint (inverse) linuxmint-inverse
+16 Mageia mageia
+17 Mandriva mandriva
+18 Manjaro manjaro
+19 NixOS nixos
+20 OpenSUSE opensuse
+21 Raspberry pi raspberry-pi
+22 Red Hat redhat
+23 Sabayon sabayon
+24 Slackware slackware
+25 Slackware (inverse) slackware-inverse
+26 Tux tux
+27 Ubuntu ubuntu
+28 Ubuntu (inverse) ubuntu-inverse
+29 Alma Linux almalinux
+30 ArchLabs archlabs
+31 Artix Linux artix
+32 Budgie budgie
+33 Deepin deepin
+34 Endeavour OS endeavour
+35 Ferris ferris
+36 Flathub flathub
+37 GNU Guix gnu-guix
+38 illumos illumos
+39 Kali Linux kali-linux
+40 OpenBSD openbsd
+41 Parrot OS parrot
+42 Pop!_OS pop-os
+43 Rocky Linux rocky-linux
+44 Snappy snappy
+45 Solus solus
+46 Void void
+47 Zorin OS zorin
+48 Codeberg codeberg
+49 KDE Neon kde-neon
+50 KDE Plasma kde-plasma
+51 Kubuntu kubuntu
+52 Kubuntu (inverse) kubuntu-inverse
+53 Forgejo forgejo
+54 FreeCAD freecad
+55 Garuda Linux garuda
+56 GIMP gimp
+57 Gitea gitea
+58 Hyperbola GNU/Linux-libre hyperbola
+59 Inkscape inkscape
+60 Kdenlive kdenlive
+61 Krita krita
+62 LXLE Linux lxle
+63 MX Linux mxlinux
+64 Parabola GNU/Linux-libre parabola
+65 Puppy Linux puppy
+66 QubesOS qubesos
+67 Tails tails
+68 Trisquel GNU/Linux trisquel
+69 Archcraft archcraft
+70 ArcoLinux arcolinux
+71 BigLinux biglinux
+72 Crystal Linux crystal
+73 Loc-OS locos
+74 XeroLinux xerolinux
+75 Arduino arduino
+76 KiCad kicad
+77 Octoprint octoprint
+78 OpenSCAD openscad
+79 OSH osh
+80 OSHWA oshwa
+81 Prusa Slicer prusaslicer
+82 RepRap reprap
+83 RISC-V riscv
+84 Awesome WM awesome
+85 bspwm bspwm
+86 dwm dwm
+87 Enlightenment enlightenment
+88 Fluxbox fluxbox
+89 Hyprland hyprland
+90 i3 i3
+91 JWM jwm
+92 Qtile qtile
+93 Sway sway
+94 Xmonad xmonad
+95 Cinnamon cinnamon
+96 freedesktop.org freedesktop
+97 GNOME gnome
+98 GTK gtk
+99 LXDE lxde
+100 LXQt lxqt
+101 MATE mate
+102 Vanilla OS vanilla
+103 Wayland wayland
+104 XFCE xfce
+105 Xorg xorg
+106 F-droid fdroid
+107 FOSDEM fosdem
+108 OSI osi
+109 Wikimedia wikimedia
+110 mpv mpv
+111 Neovim neovim
+112 Thunderbird thunderbird
+113 Tor Browser tor
+114 VS Codium vscodium
+115 KDE kde
+116 PostmarketOS postmarketos
+117 Qt qt
+118 LibreOffice libreoffice
+119 LibreOffice Base libreofficebase
+120 LibreOffice Calc libreofficecalc
+121 LibreOffice Draw libreofficedraw
+122 LibreOffice Impress libreofficeimpress
+123 LibreOffice Math libreofficemath
+124 LibreOffice Writer libreofficewriter
+125 openSUSE Tumbleweed tumbleweed
+126 openSUSE Leap leap
+127 Typst typst
+128 Nobara Linux nobara
+129 River river
diff --git a/lang/ar/account.php b/lang/ar/account.php
new file mode 100644
index 000000000..12e1cfb3b
--- /dev/null
+++ b/lang/ar/account.php
@@ -0,0 +1,52 @@
+ 'الحساب',
+ 'personal_details' => 'البيانات الشخصية',
+ 'security' => 'الأمان',
+ 'credits' => 'الرصيد',
+
+ 'change_password' => 'تغيير كلمة المرور',
+
+ 'two_factor_authentication' => 'المصادقة الثنائية',
+ 'two_factor_authentication_description' => 'أضف طبقة إضافية من الأمان إلى حسابك بتفعيل المصادقة الثنائية.',
+ 'two_factor_authentication_enabled' => 'تم تمكين المصادقة الثنائية لحسابك.',
+ 'two_factor_authentication_enable' => 'تمكين المصادقة الثنائية',
+ 'two_factor_authentication_disable' => 'تعطيل المصادقة الثنائية',
+ 'two_factor_authentication_enable_description' => 'لتمكين المصادقة الثنائية، تحتاج إلى مسح رمز QR أدناه باستخدام تطبيق مصادقة مثل Google Authenticator أو Authy.',
+ 'two_factor_authentication_qr_code' => 'أفحص رمز QR أدناه باستخدام تطبيق المصادقة الخاص بك:',
+ 'two_factor_authentication_secret' => 'أو أدخل الرمز التالي يدويًا:',
+
+ 'sessions' => 'الجلسات',
+ 'sessions_description' => 'إدارة وتسجيل الخروج من جلساتك النشطة على المتصفحات والأجهزة الأخرى.',
+ 'logout_sessions' => 'تسجيل خروج هذه الجلسة',
+
+ 'input' => [
+ 'current_password' => 'كلمة المرور الحالية',
+ 'current_password_placeholder' => 'كلمة مرورك الحالية',
+ 'new_password' => 'كلمة المرور الجديدة',
+ 'new_password_placeholder' => 'كلمة مرورك الجديدة',
+ 'confirm_password' => 'تأكيد كلمة المرور',
+ 'confirm_password_placeholder' => 'تأكيد كلمة مرورك الجديدة',
+
+ 'two_factor_code' => 'أدخل الرمز من تطبيق المصادقة الخاص بك',
+ 'two_factor_code_placeholder' => 'رمز المصادقة الثنائية الخاص بك',
+
+ 'currency' => 'العملة',
+ 'amount' => 'المبلغ',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'تم تغيير كلمة المرور.',
+ 'password_incorrect' => 'كلمة المرور الحالية غير صحيحة.',
+ 'two_factor_enabled' => 'تم تمكين المصادقة الثنائية.',
+ 'two_factor_disabled' => 'تم تعطيل المصادقة الثنائية.',
+ 'two_factor_code_incorrect' => 'الرمز غير صحيح.',
+ 'session_logged_out' => 'تم تسجيل خروج الجلسة.',
+ ],
+
+ 'no_credit' => 'ليس لديك أي رصيد.',
+ 'add_credit' => 'إضافة رصيد',
+ 'credit_deposit' => 'إيداع رصيد (:currency)',
+
+];
diff --git a/lang/ar/auth.php b/lang/ar/auth.php
new file mode 100644
index 000000000..c911dae0e
--- /dev/null
+++ b/lang/ar/auth.php
@@ -0,0 +1,55 @@
+ 'هذه البيانات لا تتطابق مع سجلاتنا.',
+ 'password' => 'كلمة المرور المدخلة غير صحيحة.',
+ 'throttle' => 'عدد كبير جدا من محاولات تسجيل الدخول. الرجاء المحاولة مرة أخرى بعد :seconds ثواني.',
+
+ 'sign_in' => 'تسجيل الدخول',
+ 'sign_in_title' => 'قم بتسجيل الدخول إلى حسابك',
+ 'or_sign_in_with' => 'أو سجل الدخول باستخدام',
+ 'forgot_password' => 'نسيت كلمة المرور؟',
+ 'dont_have_account' => 'ليس لديك حساب؟',
+ 'already_have_account' => 'لديك حساب بالفعل؟',
+
+ 'sign_up' => 'تسجيل',
+ 'sign_up_title' => 'أنشئ حسابك',
+
+ 'logout' => 'تسجيل الخروج',
+
+ 'input' => [
+ 'email' => 'البريد الإلكتروني',
+ 'email_label' => 'عنوان البريد الإلكتروني',
+ 'password' => 'كلمة المرور',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'لم يتم التحقق من حساب ديسكورد الخاص بك.',
+ 'account_not_registered' => 'أنت غير مسجل في هذا الموقع.',
+ ],
+
+ 'reset_password' => 'إعادة تعيين كلمة المرور',
+
+ 'verify_2fa' => 'التحقق عبر المصادقة الثنائية',
+ 'verify' => 'التحقق',
+
+ 'verification' => [
+ 'notice' => 'تحقق من عنوان بريدك الإلكتروني',
+ 'sent' => 'تم إرسال رابط تحقق جديد إلى عنوان بريدك الإلكتروني.',
+ 'check_your_email' => 'قبل المتابعة، يرجى التحقق من بريدك الإلكتروني عبر الرابط المرسل.',
+ 'not_received' => 'إذا لم تستلم رابط التحقق يمكنك طلب رسالة تحقق أخرى.',
+ 'request_another' => 'إعادة إرسال رابط التحقق إلى البريد الإلكتروني',
+ ],
+];
diff --git a/lang/ar/dashboard.php b/lang/ar/dashboard.php
new file mode 100644
index 000000000..ef8f1a432
--- /dev/null
+++ b/lang/ar/dashboard.php
@@ -0,0 +1,11 @@
+ 'لوحة المعلومات',
+ 'welcome_back' => 'مرحبا بعودتك، :name!',
+ 'dashboard_description' => 'أدر خدماتك النشطة، الفواتير، التذاكر، وأبقى على اطلاع دائم بالمستجدات هنا.',
+ 'open_tickets' => 'التذاكر المفتوحة',
+ 'unpaid_invoices' => 'فواتير غير مدفوعة',
+ 'active_services' => 'الخدمات النشطة',
+ 'view_all' => 'عرض الكل',
+];
diff --git a/lang/ar/general.php b/lang/ar/general.php
new file mode 100644
index 000000000..8a5eee26c
--- /dev/null
+++ b/lang/ar/general.php
@@ -0,0 +1,36 @@
+ 'عرض',
+
+ 'input' => [
+ 'first_name' => 'الاسم الأول',
+ 'first_name_placeholder' => 'اسمك الأول',
+ 'last_name' => 'الاسم الأخير',
+ 'last_name_placeholder' => 'اسمك الأخير',
+ 'email' => 'البريد الإلكتروني',
+ 'email_placeholder' => 'عنوان بريدك الإلكتروني',
+ 'phone' => 'الهاتف',
+ 'phone_placeholder' => 'رقم هاتفك',
+ 'company_name' => 'اسم الشركة',
+ 'company_name_placeholder' => 'اسم شركتك',
+ 'country' => 'الدولة',
+ 'country_placeholder' => 'دولتك',
+ 'city' => 'المدينة',
+ 'city_placeholder' => 'مدينتك',
+ 'address' => 'العنوان',
+ 'address_placeholder' => 'عنوانك',
+ 'address2' => 'العنوان الثاني',
+ 'address2_placeholder' => 'عنوانك الثاني',
+ 'zip' => 'الرمز البريدي',
+ 'zip_placeholder' => 'رمزك البريدي',
+ 'state' => 'الولاية أو المحافظة',
+ 'state_placeholder' => 'ولايتك أو محافظتك',
+
+ 'password' => 'كلمة المرور',
+ 'password_placeholder' => 'كلمة مرورك',
+ ],
+
+ 'all_rights_reserved' => 'جميع الحقوق محفوظة.',
+ 'update' => 'تحديث',
+];
diff --git a/lang/ar/invoices.php b/lang/ar/invoices.php
new file mode 100644
index 000000000..fbfe7a420
--- /dev/null
+++ b/lang/ar/invoices.php
@@ -0,0 +1,33 @@
+ 'الفواتير',
+ 'product' => 'المنتج',
+ 'price' => 'السعر',
+ 'status' => 'الحالة',
+ 'actions' => 'الإجراءات',
+ 'view' => 'عرض',
+ 'id' => 'المعرّف',
+ 'total' => 'الإجمالي',
+ 'subtotal' => 'المجموع الجزئي',
+ 'invoice' => 'الفاتورة #:id',
+ 'unit_price' => 'سعر الوحدة',
+ 'bill_to' => '',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'مدفوعة',
+ 'payment_pending' => 'في انتظار الدفع',
+ 'checking_payment' => 'الدفع قيد التحقق',
+ 'invoice_date' => 'تاريخ الفاتورة',
+ 'invoice_no' => 'رقم الفاتورة',
+ 'tax_id' => 'الرقم الضريبي',
+ 'company_id' => 'معرّف الشركة',
+ 'item' => 'عنصر',
+ 'quantity' => 'الكمية',
+ 'transactions' => 'المعاملات',
+ 'transaction_id' => 'معرف المعاملة',
+ 'gateway' => 'بوابة الدفع',
+ 'payment_date' => 'تاريخ الدفع',
+ 'payment_method' => 'طريقة الدفع',
+ 'amount' => 'المبلغ',
+ 'date' => 'التاريخ',
+];
diff --git a/lang/ar/navigation.php b/lang/ar/navigation.php
new file mode 100644
index 000000000..d96acf504
--- /dev/null
+++ b/lang/ar/navigation.php
@@ -0,0 +1,17 @@
+ 'الصفحة الرئيسية',
+ 'shop' => 'المتجر',
+ 'cart' => 'السلة',
+ 'login' => 'تسجيل الدخول',
+ 'register' => 'التسجيل',
+ 'services' => 'الخدمات',
+ 'invoices' => 'الفواتير',
+ 'account' => 'الحساب',
+ 'personal_details' => 'البيانات الشخصية',
+ 'security' => 'الأمان',
+ 'dashboard' => 'لوحة المعلومات',
+ 'tickets' => 'التذاكر',
+ 'admin' => 'الإدارة',
+];
diff --git a/lang/ar/pagination.php b/lang/ar/pagination.php
new file mode 100644
index 000000000..2eee353ef
--- /dev/null
+++ b/lang/ar/pagination.php
@@ -0,0 +1,19 @@
+ '« السابق',
+ 'next' => 'التالي »',
+
+];
diff --git a/lang/ar/passwords.php b/lang/ar/passwords.php
new file mode 100644
index 000000000..41bc1e714
--- /dev/null
+++ b/lang/ar/passwords.php
@@ -0,0 +1,11 @@
+ 'تم إعادة تعيين كلمة المرور الخاصة بك.',
+ 'sent' => 'لقد أرسلنا رابط إعادة تعيين كلمة المرور إلى البريد الإلكتروني.',
+ 'throttled' => 'الرجاء الانتظار قبل إعادة المحاولة.',
+ 'token' => 'رابط إعادة تعيين كلمة المرور غير صالح.',
+ 'user' => 'لا يمكننا العثور على مستخدم بهذا البريد الإلكتروني.',
+
+];
diff --git a/lang/ar/product.php b/lang/ar/product.php
new file mode 100644
index 000000000..09a645c77
--- /dev/null
+++ b/lang/ar/product.php
@@ -0,0 +1,29 @@
+ 'إضافة إلى السلة',
+ 'view' => 'عرض',
+ 'checkout' => 'الدفع',
+ 'remove' => 'إزالة',
+ 'empty_cart' => 'سلة التسوق فارغة',
+ 'total_today' => 'المجموع اليوم',
+ 'subtotal' => 'المجموع الجزئي',
+ 'total' => 'الإجمالي',
+
+ 'then_after_x' => 'ثم بعد :time',
+ 'order_summary' => 'ملخص الطلب',
+ 'edit' => 'تعديل',
+
+ 'apply' => 'تطبيق',
+ 'price' => 'السعر',
+ 'setup_fee' => 'رسوم التثبيت',
+
+ 'in_stock' => 'متوفر',
+ 'out_of_stock' => 'المنتج :product غير متوفر',
+ 'user_limit' => 'لقد وصلت إلى الحد الأقصى من :product',
+ 'payment_method' => 'طريقة الدفع',
+ 'use_credits' => 'إستخدم الرصيد',
+ 'tos' => 'أنا أوافق على ',
+ 'tos_link' => 'شروط الخدمة',
+ 'tos_required' => 'يجب عليك الموافقة على شروط الخدمة',
+];
diff --git a/lang/ar/services.php b/lang/ar/services.php
new file mode 100644
index 000000000..cfd3fb564
--- /dev/null
+++ b/lang/ar/services.php
@@ -0,0 +1,32 @@
+ 'الخدمات',
+ 'product' => 'المنتجات',
+ 'price' => 'السعر',
+ 'status' => 'الحالة',
+ 'name' => 'الاسم',
+ 'actions' => 'الإجراءات',
+ 'view' => 'عرض',
+
+ 'product_details' => 'تفاصيل المنتج',
+ 'billing_cycle' => 'الفوترة',
+ 'cancel' => 'إلغاء',
+ 'cancellation' => 'إلغاء :Service',
+ 'cancel_are_you_sure' => 'هل أنت متأكد من أنك تريد إلغاء هذه الخدمة؟',
+ 'cancel_reason' => 'سبب الإلغاء',
+ 'cancel_type' => 'نوع الإلغاء',
+ 'cancel_immediate' => 'إلغاء فوري',
+ 'cancel_end_of_period' => 'إلغاء في نهاية فترة الفاتورة',
+ 'cancel_immediate_warning' => 'عند الضغط على الزر أدناه، سيتم إلغاء الخدمة فورًا ولن تتمكن من استخدامها بعد الآن.',
+ 'cancellation_requested' => 'تم طلب الإلغاء',
+
+ 'current_plan' => 'الخطة الحالية',
+ 'new_plan' => 'الخطة الجديدة',
+ 'change_plan' => 'تغيير الخطة',
+ 'current_price' => 'السعر الحالي',
+ 'new_price' => 'السعر الجديد',
+ 'upgrade' => 'الترقية',
+ 'upgrade_summary' => 'ملخص الترقية',
+ 'total_today' => 'إجمالي اليوم',
+];
diff --git a/lang/ar/ticket.php b/lang/ar/ticket.php
new file mode 100644
index 000000000..1a9f7167f
--- /dev/null
+++ b/lang/ar/ticket.php
@@ -0,0 +1,25 @@
+ 'تفاصيل التذكرة',
+ 'tickets' => 'التذاكر',
+ 'subject' => 'الموضوع',
+ 'status' => 'الحالة',
+ 'priority' => 'الأولوية',
+ 'department' => 'القسم',
+ 'created_at' => 'أنشئت في',
+ 'reply' => 'ردّ',
+
+ 'create_ticket' => 'إنشاء تذكرة',
+ 'select_department' => 'اختر القسم',
+ 'select_priority' => 'اختر الأولوية',
+ 'low' => 'منخفضة',
+ 'medium' => 'متوسطة',
+ 'high' => 'عالية',
+
+ 'last_activity' => 'آخر نشاط',
+
+ 'service' => 'الخدمة',
+ 'select_service' => 'اختر الخدمة',
+ 'create' => 'أنشئ',
+];
diff --git a/lang/ar/validation.php b/lang/ar/validation.php
new file mode 100644
index 000000000..35f90f937
--- /dev/null
+++ b/lang/ar/validation.php
@@ -0,0 +1,192 @@
+ 'يجب قبول الحقل :attribute.',
+ 'accepted_if' => 'يجب قبول الحقل :attribute عندما يكون :other :value.',
+ 'active_url' => 'يجب أن يكون الحقل :attribute عنوان URL صالح.',
+ 'after' => 'يجب أن يكون الحقل :attribute تاريخًا بعد :date.',
+ 'after_or_equal' => 'يجب أن يكون الحقل :attribute تاريخًا بعد أو يساوي :date.',
+ 'alpha' => 'يجب أن يحتوي الحقل :attribute على أحرف فقط.',
+ 'alpha_dash' => 'يجب أن يحتوي الحقل :attribute على أحرف وأرقام وشرطات سفلية فقط.',
+ 'alpha_num' => 'يجب أن يحتوي الحقل :attribute على أحرف وأرقام فقط.',
+ 'array' => 'يجب أن يكون الحقل :attribute مصفوفة.',
+ 'ascii' => 'يجب أن يحتوي الحقل :attribute فقط على أحرف أبجدية رقمية ورموز.',
+ 'before' => 'يجب أن يكون الحقل :attribute تاريخ قبل :date.',
+ 'before_or_equal' => 'يجب أن يكون الحقل :attribute تاريخًا قبل أو يساوي :date.',
+ 'between' => [
+ 'array' => 'يجب أن يحتوي الحقل :attribute على ما بين :min و :max عنصرًا.',
+ 'file' => 'يجب أن يكون الحقل :attribute بين :min و :max كيلوبايت.',
+ 'numeric' => 'يجب أن يكون الحقل :attribute بين :min و :max.',
+ 'string' => 'يجب أن يكون الحقل :attribute بين :min و :max أحرف.',
+ ],
+ 'boolean' => 'يجب أن يكون الحقل :attribute صحيحًا أو خاطئًا.',
+ 'can' => 'يحتوي الحقل :attribute على قيمة غير مصرح بها.',
+ 'confirmed' => 'تأكيد الحقل :attribute غير متطابق.',
+ 'current_password' => 'كلمة المرور غير صحيحة.',
+ 'date' => 'يجب أن يكون الحقل :attribute تاريخًا صالحًا.',
+ 'date_equals' => 'يجب أن يكون الحقل :attribute تاريخًا يساوي :date.',
+ 'date_format' => 'يجب أن يتطابق الحقل :attribute مع تنسيق :format.',
+ 'decimal' => 'يجب أن يحتوي الحقل :attribute على :decimal منازل عشرية.',
+ 'declined' => 'يجب رفض الحقل :attribute.',
+ 'declined_if' => 'يجب رفض الحقل :attribute عندما يكون :other :value.',
+ 'different' => 'يجب أن يكون الحقل :attribute و :other مختلفين.',
+ 'digits' => 'يجب أن يكون الحقل :attribute :digits أرقام .',
+ 'digits_between' => 'يجب أن يكون الحقل :attribute بين :min و :max رقم.',
+ 'dimensions' => 'الحقل :attribute له أبعاد صورة غير صالحة.',
+ 'distinct' => 'يحتوي الحقل :attribute على قيمة مكررة.',
+ 'doesnt_end_with' => 'يجب ألا ينتهي الحقل :attribute بواحد مما يلي: :values.',
+ 'doesnt_start_with' => 'يجب ألا يبدأ حقل :attribute بواحد مما يلي: :values.',
+ 'email' => 'يجب أن يكون الحقل :attribute عنوان بريد إلكتروني صالح.',
+ 'ends_with' => 'يجب أن ينتهي الحقل :attribute بواحد مما يلي: :values.',
+ 'enum' => ':attribute المحدد غير صالح.',
+ 'exists' => ':attribute المحدد غير صالح.',
+ 'extensions' => 'يجب أن يحتوي الحقل :attribute على أحد الإضافات التالية: :values.',
+ 'file' => 'يجب أن يكون الحقل :attribute ملف.',
+ 'filled' => 'يجب أن يكون للحقل :attribute قيمة.',
+ 'gt' => [
+ 'array' => 'يجب أن يحتوي الحقل :attribute على أكثر من :value عنصرًا.',
+ 'file' => 'يجب أن يكون الحقل :attribute أكبر من :value كيلوبايت.',
+ 'numeric' => 'يجب أن يكون الحقل :attribute أكبر من :value.',
+ 'string' => 'يجب أن يكون الحقل :attribute أكبر من :value أحرف.',
+ ],
+ 'gte' => [
+ 'array' => 'يجب أن يحتوي الحقل :attribute على :value عنصرًا أو أكثر.',
+ 'file' => 'يجب أن يكون الحقل :attribute أكبر من أو يساوي :value كيلوبايت.',
+ 'numeric' => 'يجب أن يكون الحقل :attribute أكبر أو يساوي :value.',
+ 'string' => 'يجب أن يكون الحقل :attribute أكبر من أو يساوي :value أحرف.',
+ ],
+ 'hex_color' => 'يجب أن يكون الحقل :attribute لون سداسي عشري صالح.',
+ 'image' => 'يجب أن يكون الحقل :attribute صورة.',
+ 'in' => ':attribute المحدد غير صالح.',
+ 'in_array' => 'يجب أن يكون الحقل :attribute موجودًا في :other.',
+ 'integer' => 'يجب أن يكون الحقل :attribute عددا صحيحًا.',
+ 'ip' => 'يجب أن يكون الحقل :attribute عنوان IP صالح.',
+ 'ipv4' => 'يجب أن يكون الحقل :attribute عنوان IPv4 صالح.',
+ 'ipv6' => 'يجب أن يكون الحقل :attribute عنوان IPv6 صالح.',
+ 'json' => 'يجب أن يكون الحقل :attribute سلسلة JSON صالحة.',
+ 'list' => 'يجب أن يكون الحقل :attribute قائمة.',
+ 'lowercase' => 'يجب أن يكون الحقل :attribute أحرف صغيرة.',
+ 'lt' => [
+ 'array' => 'يجب أن يحتوي الحقل :attribute على أقل من :value عنصرًا.',
+ 'file' => 'يجب أن يكون الحقل :attribute أقل من :value كيلوبايت.',
+ 'numeric' => 'يجب أن يكون الحقل :attribute أقل من :value.',
+ 'string' => 'يجب أن يكون الحقل :attribute أقل من :value أحرف.',
+ ],
+ 'lte' => [
+ 'array' => 'يجب أن لا يحتوي الحقل :attribute على أكثر من :value عنصرًا.',
+ 'file' => 'يجب أن يكون الحقل :attribute أقل من أو يساوي :value كيلوبايت.',
+ 'numeric' => 'يجب أن يكون الحقل :attribute أقل من أو يساوي :value.',
+ 'string' => 'يجب أن يكون الحقل :attribute أقل من أو يساوي :value أحرف.',
+ ],
+ 'mac_address' => 'يجب أن يكون الحقل :attribute عنوان MAC صالح.',
+ 'max' => [
+ 'array' => 'يجب أن لا يحتوي الحقل :attribute على أكثر من :max عنصرًا.',
+ 'file' => 'يجب أن لا يكون الحقل :attribute أكبر من :max كيلوبايت.',
+ 'numeric' => 'يجب ألا يكون الحقل :attribute أكبر من :max.',
+ 'string' => 'يجب ألا يكون الحقل :attribute أكبر من :max أحرف.',
+ ],
+ 'max_digits' => 'يجب ألا يحتوي الحقل :attribute على أكثر من :max رقم.',
+ 'mimes' => 'يجب أن يكون الحقل :attribute ملف من نوع: :values.',
+ 'mimetypes' => 'يجب أن يكون الحقل :attribute ملف من نوع: :values.',
+ 'min' => [
+ 'array' => 'يجب أن يحتوي الحقل :attribute على الأقل :min عنصرًا.',
+ 'file' => 'يجب أن يكون الحقل :attribute على الأقل :min كيلوبايت.',
+ 'numeric' => 'يجب أن يكون الحقل :attribute على الأقل :min.',
+ 'string' => 'يجب أن يكون الحقل :attribute على الأقل :min أحرف.',
+ ],
+ 'min_digits' => 'يجب أن يحتوي الحقل :attribute على الأقل :min رقم.',
+ 'missing' => 'يجب أن يكون الحقل :attribute مفقودا.',
+ 'missing_if' => 'يجب أن يكون الحقل :attribute مفقودا عندما يكون :other :value.',
+ 'missing_unless' => 'يجب أن يكون الحقل :attribute مفقودا ما لم يكن :other :value.',
+ 'missing_with' => 'يجب أن يكون الحقل :attribute مفقودا عندما يكون :values موجودًا.',
+ 'missing_with_all' => 'يجب أن يكون الحقل :attribute مفقودا عند وجود :value.',
+ 'multiple_of' => 'يجب أن يكون الحقل :attribute من مضاعفات :value.',
+ 'not_in' => ':attribute المحدد غير صالح.',
+ 'not_regex' => 'صيغة الحقل :attribute غير صالحة.',
+ 'numeric' => 'يجب أن يكون الحقل :attribute رقم.',
+ 'password' => [
+ 'letters' => 'يجب أن يحتوي الحقل :attribute على حرف واحد على الأقل.',
+ 'mixed' => 'يجب أن يحتوي الحقل :attribute على حرف كبير واحد وحرف صغير واحد على الأقل.',
+ 'numbers' => 'يجب أن يحتوي الحقل :attribute على رقم واحد على الأقل.',
+ 'symbols' => 'يجب أن يحتوي الحقل :attribute على رمز خاص واحد على الأقل.',
+ 'uncompromised' => 'لقد ظهر :attribute المدخل في تسريب بيانات. الرجاء اختيار :attribute آخر.',
+ ],
+ 'present' => 'يجب أن يكون الحقل :attribute موجودا.',
+ 'present_if' => 'يجب أن يكون الحقل :attribute موجودا عندما يكون :other :value.',
+ 'present_unless' => 'يجب أن يكون الحقل :attribute موجوداً ما لم يكن :other :value.',
+ 'present_with' => 'يجب أن يكون الحقل :attribute موجودا عند وجود :value.',
+ 'present_with_all' => 'يجب أن يكون الحقل :attribute موجودا عند وجود :value.',
+ 'prohibited' => 'الحقل :attribute محظور.',
+ 'prohibited_if' => 'الحقل :attribute محظور عندما يكون :other :value.',
+ 'prohibited_unless' => 'الحقل :attribute محظور ما لم يكن :other في :values.',
+ 'prohibits' => 'الحقل :attribute يمنع من تواجد :other.',
+ 'regex' => 'صيغة الحقل :attribute غير صالحة.',
+ 'required' => 'الحقل :attribute مطلوب.',
+ 'required_array_keys' => 'يجب أن يحتوي الحقل :attribute على إدخالات لـ:values.',
+ 'required_if' => 'الحقل :attribute مطلوب عندما يكون :other :value.',
+ 'required_if_accepted' => 'الحقل :attribute مطلوب عند قبول :other.',
+ 'required_unless' => 'الحقل :attribute مطلوب ما لم يكن :other في :values.',
+ 'required_with' => 'الحقل :attribute مطلوب عندما يكون :values موجودًا.',
+ 'required_with_all' => 'الحقل :attribute مطلوب عندما تكون :values موجوده.',
+ 'required_without' => 'الحقل :attribute مطلوب عندما لا يكون :values موجود.',
+ 'required_without_all' => 'حقل :attribute مطلوب عندما لا يكون أي من :values موجودة.',
+ 'same' => 'يجب أن يتطابق الحقل :attribute مع :other.',
+ 'size' => [
+ 'array' => 'يجب أن يحتوي الحقل :attribute على :size عنصرًا.',
+ 'file' => 'يجب أن يكون الحقل :attribute :size كيلوبايت.',
+ 'numeric' => 'يجب أن يكون الحقل :attribute بحجم :size.',
+ 'string' => 'يجب أن يكون الحقل :attribute :size أحرف.',
+ ],
+ 'starts_with' => 'يجب أن يبدأ الحقل :attribute بواحد مما يلي: :values.',
+ 'string' => 'يجب أن يكون الحقل :attribute سلسلة نصية.',
+ 'timezone' => 'يجب أن يكون الحقل :attribute منطقة زمنية صالحة.',
+ 'unique' => ':attribute تم أخذه بالفعل.',
+ 'uploaded' => 'فشل رفع :attribute.',
+ 'uppercase' => 'يجب أن يكون الحقل :attribute حروف كبيرة.',
+ 'url' => 'يجب أن يكون الحقل :attribute عنوان URL صالح.',
+ 'ulid' => 'يجب أن يكون الحقل :attribute ULID صالح.',
+ 'uuid' => 'يجب أن يكون الحقل :attribute UUID صالح.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'رسالة مخصصة',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/bn/account.php b/lang/bn/account.php
new file mode 100644
index 000000000..6da7131e6
--- /dev/null
+++ b/lang/bn/account.php
@@ -0,0 +1,52 @@
+ 'অ্যাকাউন্ট',
+ 'personal_details' => 'আমার তথ্য',
+ 'security' => 'সুরক্ষা',
+ 'credits' => 'ব্যালেন্স',
+
+ 'change_password' => 'পাসওয়ার্ড পরিবর্তন করুন',
+
+ 'two_factor_authentication' => 'টু-ফ্যাক্টর অথেন্টিকেশন',
+ 'two_factor_authentication_description' => 'টু-ফ্যাক্টর অথেন্টিকেশন চালু করে আপনার অ্যাকাউন্টে আরও একটি সুরক্ষা স্তর যোগ করুন।',
+ 'two_factor_authentication_enabled' => 'টু-ফ্যাক্টর অথেন্টিকেশন আপনার অ্যাকাউন্টে চালু আছে।',
+ 'two_factor_authentication_enable' => 'টু-ফ্যাক্টর অথেন্টিকেশন চালু করুন',
+ 'two_factor_authentication_disable' => 'টু-ফ্যাক্টর অথেন্টিকেশন বন্ধ করুন',
+ 'two_factor_authentication_enable_description' => 'টু-ফ্যাক্টর অথেন্টিকেশন চালু করতে, নিচের কিউআর কোড Google Authenticator বা Authy অ্যাপ দিয়ে স্ক্যান করুন।',
+ 'two_factor_authentication_qr_code' => 'নিচের কিউআর কোড আপনার অথেন্টিকেটর অ্যাপ দিয়ে স্ক্যান করুন:',
+ 'two_factor_authentication_secret' => 'অথবা নিচের কোড ম্যানুয়ালি লিখে দিন:',
+
+ 'sessions' => 'সেশনস',
+ 'sessions_description' => 'অন্যান্য ব্রাউজার এবং ডিভাইস থেকে আপনার সক্রিয় সেশনস পরিচালনা করুন এবং লগআউট করুন।',
+ 'logout_sessions' => 'এই সেশন থেকে লগআউট করুন',
+
+ 'input' => [
+ 'current_password' => 'বর্তমান পাসওয়ার্ড',
+ 'current_password_placeholder' => 'আপনার বর্তমান পাসওয়ার্ড',
+ 'new_password' => 'নতুন পাসওয়ার্ড',
+ 'new_password_placeholder' => 'আপনার নতুন পাসওয়ার্ড',
+ 'confirm_password' => 'পাসওয়ার্ড নিশ্চিত করুন',
+ 'confirm_password_placeholder' => 'আপনার নতুন পাসওয়ার্ড নিশ্চিত করুন',
+
+ 'two_factor_code' => 'আপনার অথেন্টিকেটর অ্যাপ থেকে কোডটি লিখুন',
+ 'two_factor_code_placeholder' => 'আপনার টু-ফ্যাক্টর অথেন্টিকেশন কোড',
+
+ 'currency' => 'মুদ্রা',
+ 'amount' => 'পরিমাণ',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'পাসওয়ার্ড পরিবর্তন করা হয়েছে।',
+ 'password_incorrect' => 'বর্তমান পাসওয়ার্ড ভুল।',
+ 'two_factor_enabled' => 'টু-ফ্যাক্টর অথেন্টিকেশন চালু হয়েছে।',
+ 'two_factor_disabled' => 'টু-ফ্যাক্টর অথেন্টিকেশন বন্ধ হয়েছে।',
+ 'two_factor_code_incorrect' => 'কোড ভুল।',
+ 'session_logged_out' => 'সেশন থেকে লগআউট হয়েছে।',
+ ],
+
+ 'no_credit' => 'আপনার ব্যালেন্স নেই।',
+ 'add_credit' => 'ক্রেডিট যোগ করুন',
+ 'credit_deposit' => 'ক্রেডিট জমা (:currency)',
+
+];
diff --git a/lang/bn/auth.php b/lang/bn/auth.php
new file mode 100644
index 000000000..ceeb64417
--- /dev/null
+++ b/lang/bn/auth.php
@@ -0,0 +1,55 @@
+ 'এই তথ্য আমাদের রেকর্ডের সাথে মেলে না।',
+ 'password' => 'দেওয়া পাসওয়ার্ডটি ভুল।',
+ 'throttle' => 'অনেকবার লগইন চেষ্টা করা হয়েছে। অনুগ্রহ করে :seconds সেকেন্ড পর আবার চেষ্টা করুন।',
+
+ 'sign_in' => 'সাইন ইন করুন',
+ 'sign_in_title' => 'আপনার অ্যাকাউন্টে সাইন ইন করুন',
+ 'or_sign_in_with' => 'অথবা দিয়ে সাইন ইন করুন',
+ 'forgot_password' => 'পাসওয়ার্ড ভুলে গেছেন?',
+ 'dont_have_account' => 'অ্যাকাউন্ট নেই?',
+ 'already_have_account' => 'আগে থেকেই অ্যাকাউন্ট আছে?',
+
+ 'sign_up' => 'সাইন আপ করুন',
+ 'sign_up_title' => 'আপনার অ্যাকাউন্ট তৈরি করুন',
+
+ 'logout' => 'লগআউট করুন',
+
+ 'input' => [
+ 'email' => 'ইমেইল',
+ 'email_label' => 'ইমেইল ঠিকানা',
+ 'password' => 'পাসওয়ার্ড',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Your Discord account is not verified.',
+ 'account_not_registered' => 'You are not registered on this site.',
+ ],
+
+ 'reset_password' => 'Reset password',
+
+ 'verify_2fa' => 'Verify 2FA',
+ 'verify' => 'Verify',
+
+ 'verification' => [
+ 'notice' => 'Verify your email address',
+ 'sent' => 'A new verification link has been sent to your email address.',
+ 'check_your_email' => 'Before proceeding, please check your email for a verification link.',
+ 'not_received' => 'If you did not receive the email you can request another verification email.',
+ 'request_another' => 'Resend verification email',
+ ],
+];
diff --git a/lang/bn/dashboard.php b/lang/bn/dashboard.php
new file mode 100644
index 000000000..eb7002ea0
--- /dev/null
+++ b/lang/bn/dashboard.php
@@ -0,0 +1,11 @@
+ 'Dashboard',
+ 'welcome_back' => 'Welcome back, :name!',
+ 'dashboard_description' => 'Manage your active services, invoices, tickets, and stay updated here.',
+ 'open_tickets' => 'Open Tickets',
+ 'unpaid_invoices' => 'Unpaid Invoices',
+ 'active_services' => 'Active Services',
+ 'view_all' => 'View All',
+];
diff --git a/lang/bn/general.php b/lang/bn/general.php
new file mode 100644
index 000000000..4793f6356
--- /dev/null
+++ b/lang/bn/general.php
@@ -0,0 +1,36 @@
+ 'View',
+
+ 'input' => [
+ 'first_name' => 'First name',
+ 'first_name_placeholder' => 'Your first name',
+ 'last_name' => 'Last name',
+ 'last_name_placeholder' => 'Your last name',
+ 'email' => 'Email',
+ 'email_placeholder' => 'Your email address',
+ 'phone' => 'Phone',
+ 'phone_placeholder' => 'Your phone number',
+ 'company_name' => 'Company name',
+ 'company_name_placeholder' => 'Your company name',
+ 'country' => 'Country',
+ 'country_placeholder' => 'Your country',
+ 'city' => 'City',
+ 'city_placeholder' => 'Your city',
+ 'address' => 'Address',
+ 'address_placeholder' => 'Your address',
+ 'address2' => 'Address 2',
+ 'address2_placeholder' => 'Your address 2',
+ 'zip' => 'ZIP',
+ 'zip_placeholder' => 'Your ZIP code',
+ 'state' => 'State',
+ 'state_placeholder' => 'Your state',
+
+ 'password' => 'Password',
+ 'password_placeholder' => 'Your password',
+ ],
+
+ 'all_rights_reserved' => 'All rights reserved.',
+ 'update' => 'Update',
+];
diff --git a/lang/bn/invoices.php b/lang/bn/invoices.php
new file mode 100644
index 000000000..c9e2a2a24
--- /dev/null
+++ b/lang/bn/invoices.php
@@ -0,0 +1,33 @@
+ 'Invoices',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Subtotal',
+ 'invoice' => 'Invoice #:id',
+ 'unit_price' => 'Unit Price',
+ 'bill_to' => 'Bill To',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Paid',
+ 'payment_pending' => 'Payment Pending',
+ 'checking_payment' => 'Checking Payment',
+ 'invoice_date' => 'Invoice Date',
+ 'invoice_no' => 'Invoice No',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Item',
+ 'quantity' => 'Quantity',
+ 'transactions' => 'Transactions',
+ 'transaction_id' => 'Transaction ID',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Payment Date',
+ 'payment_method' => 'Payment Method',
+ 'amount' => 'Amount',
+ 'date' => 'Date',
+];
diff --git a/lang/bn/navigation.php b/lang/bn/navigation.php
new file mode 100644
index 000000000..57443b9bc
--- /dev/null
+++ b/lang/bn/navigation.php
@@ -0,0 +1,17 @@
+ 'Home',
+ 'shop' => 'Shop',
+ 'cart' => 'Cart',
+ 'login' => 'Login',
+ 'register' => 'Register',
+ 'services' => 'Services',
+ 'invoices' => 'Invoices',
+ 'account' => 'Account',
+ 'personal_details' => 'Personal Details',
+ 'security' => 'Security',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/bn/pagination.php b/lang/bn/pagination.php
new file mode 100644
index 000000000..d48141187
--- /dev/null
+++ b/lang/bn/pagination.php
@@ -0,0 +1,19 @@
+ '« Previous',
+ 'next' => 'Next »',
+
+];
diff --git a/lang/bn/passwords.php b/lang/bn/passwords.php
new file mode 100644
index 000000000..2cea577ef
--- /dev/null
+++ b/lang/bn/passwords.php
@@ -0,0 +1,11 @@
+ 'Your password has been reset.',
+ 'sent' => 'We have emailed your password reset link.',
+ 'throttled' => 'Please wait before retrying.',
+ 'token' => 'This password reset token is invalid.',
+ 'user' => "We can't find a user with that email address.",
+
+];
diff --git a/lang/bn/product.php b/lang/bn/product.php
new file mode 100644
index 000000000..15bea8c70
--- /dev/null
+++ b/lang/bn/product.php
@@ -0,0 +1,29 @@
+ 'Add to cart',
+ 'view' => 'View',
+ 'checkout' => 'Checkout',
+ 'remove' => 'Remove',
+ 'empty_cart' => 'Your cart is empty',
+ 'total_today' => 'Total today',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Then after :time',
+ 'order_summary' => 'Order Summary',
+ 'edit' => 'Edit',
+
+ 'apply' => 'Apply',
+ 'price' => 'Price',
+ 'setup_fee' => 'Setup fee',
+
+ 'in_stock' => 'In stock',
+ 'out_of_stock' => 'Product :product is out of stock',
+ 'user_limit' => 'You have reached the limit of :product',
+ 'payment_method' => 'Payment method',
+ 'use_credits' => 'Use credits',
+ 'tos' => 'I agree to the ',
+ 'tos_link' => 'Terms of Service',
+ 'tos_required' => 'You must agree to the Terms of Service',
+];
diff --git a/lang/bn/services.php b/lang/bn/services.php
new file mode 100644
index 000000000..3e7dba052
--- /dev/null
+++ b/lang/bn/services.php
@@ -0,0 +1,32 @@
+ 'Services',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'name' => 'Name',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+
+ 'product_details' => 'Product Details',
+ 'billing_cycle' => 'Billing Cycle',
+ 'cancel' => 'Cancel',
+ 'cancellation' => 'Cancellation of :service',
+ 'cancel_are_you_sure' => 'Are you sure you want to cancel this service?',
+ 'cancel_reason' => 'Reason for cancellation',
+ 'cancel_type' => 'Cancellation Type',
+ 'cancel_immediate' => 'Cancel immediate',
+ 'cancel_end_of_period' => 'Cancel at the end of the billing period',
+ 'cancel_immediate_warning' => 'When you press the button below, the service will be cancelled immediately and you will not be able to use it anymore.',
+ 'cancellation_requested' => 'Cancellation requested',
+
+ 'current_plan' => 'Current Plan',
+ 'new_plan' => 'New Plan',
+ 'change_plan' => 'Change Plan',
+ 'current_price' => 'Current Price',
+ 'new_price' => 'New Price',
+ 'upgrade' => 'Upgrade',
+ 'upgrade_summary' => 'Upgrade Summary',
+ 'total_today' => 'Total Today',
+];
diff --git a/lang/bn/ticket.php b/lang/bn/ticket.php
new file mode 100644
index 000000000..ce39439fa
--- /dev/null
+++ b/lang/bn/ticket.php
@@ -0,0 +1,25 @@
+ 'Ticket Details',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Subject',
+ 'status' => 'Status',
+ 'priority' => 'Priority',
+ 'department' => 'Department',
+ 'created_at' => 'Created At',
+ 'reply' => 'Reply',
+
+ 'create_ticket' => 'Create Ticket',
+ 'select_department' => 'Select Department',
+ 'select_priority' => 'Select Priority',
+ 'low' => 'Low',
+ 'medium' => 'Medium',
+ 'high' => 'High',
+
+ 'last_activity' => 'Last activity',
+
+ 'service' => 'Service',
+ 'select_service' => 'Select Service',
+ 'create' => 'Create',
+];
diff --git a/lang/bn/validation.php b/lang/bn/validation.php
new file mode 100644
index 000000000..aea190d40
--- /dev/null
+++ b/lang/bn/validation.php
@@ -0,0 +1,192 @@
+ 'The :attribute field must be accepted.',
+ 'accepted_if' => 'The :attribute field must be accepted when :other is :value.',
+ 'active_url' => 'The :attribute field must be a valid URL.',
+ 'after' => 'The :attribute field must be a date after :date.',
+ 'after_or_equal' => 'The :attribute field must be a date after or equal to :date.',
+ 'alpha' => 'The :attribute field must only contain letters.',
+ 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.',
+ 'alpha_num' => 'The :attribute field must only contain letters and numbers.',
+ 'array' => 'The :attribute field must be an array.',
+ 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.',
+ 'before' => 'The :attribute field must be a date before :date.',
+ 'before_or_equal' => 'The :attribute field must be a date before or equal to :date.',
+ 'between' => [
+ 'array' => 'The :attribute field must have between :min and :max items.',
+ 'file' => 'The :attribute field must be between :min and :max kilobytes.',
+ 'numeric' => 'The :attribute field must be between :min and :max.',
+ 'string' => 'The :attribute field must be between :min and :max characters.',
+ ],
+ 'boolean' => 'The :attribute field must be true or false.',
+ 'can' => 'The :attribute field contains an unauthorized value.',
+ 'confirmed' => 'The :attribute field confirmation does not match.',
+ 'current_password' => 'The password is incorrect.',
+ 'date' => 'The :attribute field must be a valid date.',
+ 'date_equals' => 'The :attribute field must be a date equal to :date.',
+ 'date_format' => 'The :attribute field must match the format :format.',
+ 'decimal' => 'The :attribute field must have :decimal decimal places.',
+ 'declined' => 'The :attribute field must be declined.',
+ 'declined_if' => 'The :attribute field must be declined when :other is :value.',
+ 'different' => 'The :attribute field and :other must be different.',
+ 'digits' => 'The :attribute field must be :digits digits.',
+ 'digits_between' => 'The :attribute field must be between :min and :max digits.',
+ 'dimensions' => 'The :attribute field has invalid image dimensions.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.',
+ 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.',
+ 'email' => 'The :attribute field must be a valid email address.',
+ 'ends_with' => 'The :attribute field must end with one of the following: :values.',
+ 'enum' => 'The selected :attribute is invalid.',
+ 'exists' => 'The selected :attribute is invalid.',
+ 'extensions' => 'The :attribute field must have one of the following extensions: :values.',
+ 'file' => 'The :attribute field must be a file.',
+ 'filled' => 'The :attribute field must have a value.',
+ 'gt' => [
+ 'array' => 'The :attribute field must have more than :value items.',
+ 'file' => 'The :attribute field must be greater than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than :value.',
+ 'string' => 'The :attribute field must be greater than :value characters.',
+ ],
+ 'gte' => [
+ 'array' => 'The :attribute field must have :value items or more.',
+ 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than or equal to :value.',
+ 'string' => 'The :attribute field must be greater than or equal to :value characters.',
+ ],
+ 'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
+ 'image' => 'The :attribute field must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field must exist in :other.',
+ 'integer' => 'The :attribute field must be an integer.',
+ 'ip' => 'The :attribute field must be a valid IP address.',
+ 'ipv4' => 'The :attribute field must be a valid IPv4 address.',
+ 'ipv6' => 'The :attribute field must be a valid IPv6 address.',
+ 'json' => 'The :attribute field must be a valid JSON string.',
+ 'list' => 'The :attribute field must be a list.',
+ 'lowercase' => 'The :attribute field must be lowercase.',
+ 'lt' => [
+ 'array' => 'The :attribute field must have less than :value items.',
+ 'file' => 'The :attribute field must be less than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than :value.',
+ 'string' => 'The :attribute field must be less than :value characters.',
+ ],
+ 'lte' => [
+ 'array' => 'The :attribute field must not have more than :value items.',
+ 'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than or equal to :value.',
+ 'string' => 'The :attribute field must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'The :attribute field must be a valid MAC address.',
+ 'max' => [
+ 'array' => 'The :attribute field must not have more than :max items.',
+ 'file' => 'The :attribute field must not be greater than :max kilobytes.',
+ 'numeric' => 'The :attribute field must not be greater than :max.',
+ 'string' => 'The :attribute field must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'The :attribute field must not have more than :max digits.',
+ 'mimes' => 'The :attribute field must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute field must be a file of type: :values.',
+ 'min' => [
+ 'array' => 'The :attribute field must have at least :min items.',
+ 'file' => 'The :attribute field must be at least :min kilobytes.',
+ 'numeric' => 'The :attribute field must be at least :min.',
+ 'string' => 'The :attribute field must be at least :min characters.',
+ ],
+ 'min_digits' => 'The :attribute field must have at least :min digits.',
+ 'missing' => 'The :attribute field must be missing.',
+ 'missing_if' => 'The :attribute field must be missing when :other is :value.',
+ 'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
+ 'missing_with' => 'The :attribute field must be missing when :values is present.',
+ 'missing_with_all' => 'The :attribute field must be missing when :values are present.',
+ 'multiple_of' => 'The :attribute field must be a multiple of :value.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute field format is invalid.',
+ 'numeric' => 'The :attribute field must be a number.',
+ 'password' => [
+ 'letters' => 'The :attribute field must contain at least one letter.',
+ 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
+ 'numbers' => 'The :attribute field must contain at least one number.',
+ 'symbols' => 'The :attribute field must contain at least one symbol.',
+ 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
+ ],
+ 'present' => 'The :attribute field must be present.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'The :attribute field is prohibited.',
+ 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'The :attribute field prohibits :other from being present.',
+ 'regex' => 'The :attribute field format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
+ 'same' => 'The :attribute field must match :other.',
+ 'size' => [
+ 'array' => 'The :attribute field must contain :size items.',
+ 'file' => 'The :attribute field must be :size kilobytes.',
+ 'numeric' => 'The :attribute field must be :size.',
+ 'string' => 'The :attribute field must be :size characters.',
+ ],
+ 'starts_with' => 'The :attribute field must start with one of the following: :values.',
+ 'string' => 'The :attribute field must be a string.',
+ 'timezone' => 'The :attribute field must be a valid timezone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'The :attribute failed to upload.',
+ 'uppercase' => 'The :attribute field must be uppercase.',
+ 'url' => 'The :attribute field must be a valid URL.',
+ 'ulid' => 'The :attribute field must be a valid ULID.',
+ 'uuid' => 'The :attribute field must be a valid UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'custom-message',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/de/account.php b/lang/de/account.php
new file mode 100644
index 000000000..e5f2b9325
--- /dev/null
+++ b/lang/de/account.php
@@ -0,0 +1,52 @@
+ 'Benutzerkonto',
+ 'personal_details' => 'Persönliche Informationen',
+ 'security' => 'Sicherheit',
+ 'credits' => 'Guthaben',
+
+ 'change_password' => 'Passwort ändern',
+
+ 'two_factor_authentication' => 'Zwei-Faktor-Authentifizierung',
+ 'two_factor_authentication_description' => 'Sichere dein Konto, indem du Zwei-Faktor-Authentifizierung aktivierst.',
+ 'two_factor_authentication_enabled' => 'Zwei-Faktor-Authentifizierung wurde deinem Account hinzugefügt.',
+ 'two_factor_authentication_enable' => 'Zwei-Faktor-Authentifizierung aktivieren',
+ 'two_factor_authentication_disable' => 'Zwei-Faktor-Authentifizierung deaktivieren',
+ 'two_factor_authentication_enable_description' => 'Zur Aktivierung der Zwei-Faktor-Authentifizierung, müssen Sie den folgenden QR-Code mit einer Authenticator App, wie Google Auth oder Authy, scannen.',
+ 'two_factor_authentication_qr_code' => 'Scanne den folgenden QR-Code mit deiner Authenticator App:',
+ 'two_factor_authentication_secret' => 'Oder gib den folgenden Code manuell ein:',
+
+ 'sessions' => 'Sitzungen',
+ 'sessions_description' => 'Verwalte und melde deine aktiven Sitzungen auf anderen Browsern und Geräten ab.',
+ 'logout_sessions' => 'Diese Sitzung abmelden',
+
+ 'input' => [
+ 'current_password' => 'Aktuelles Passwort',
+ 'current_password_placeholder' => 'Dein aktuelles Passwort',
+ 'new_password' => 'Neues Passwort',
+ 'new_password_placeholder' => 'Neues Passwort',
+ 'confirm_password' => 'Passwort bestätigen',
+ 'confirm_password_placeholder' => 'Bestätige dein neues Passwort',
+
+ 'two_factor_code' => 'Gib den Code aus deiner Authentifizierungs-App ein',
+ 'two_factor_code_placeholder' => 'Dein Zwei-Faktor-Authentifizierungscode',
+
+ 'currency' => 'Währung',
+ 'amount' => 'Anzahl',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Passwort wurde erfolgreich geändert.',
+ 'password_incorrect' => 'Das aktuelle Passwort ist nicht korrekt.',
+ 'two_factor_enabled' => 'Zwei-Faktor-Authentifizierung wurde aktiviert.',
+ 'two_factor_disabled' => 'Zwei-Faktor-Authentifizierung wurde deaktiviert.',
+ 'two_factor_code_incorrect' => 'Der Code war falsch.',
+ 'session_logged_out' => 'Sitzung wurde abgemeldet.',
+ ],
+
+ 'no_credit' => 'Du hast kein Guthaben.',
+ 'add_credit' => 'Guthaben hinzufügen',
+ 'credit_deposit' => 'Guthabeneinzahlung (:currency)',
+
+];
diff --git a/lang/de/auth.php b/lang/de/auth.php
new file mode 100644
index 000000000..957c2017b
--- /dev/null
+++ b/lang/de/auth.php
@@ -0,0 +1,55 @@
+ 'Falscher Benutzername und/oder falsches Passwort.',
+ 'password' => 'Das angegebene Passwort ist falsch.',
+ 'throttle' => 'Zu viele Login-Versuche. Bitte versuche es in :seconds Sekunden erneut.',
+
+ 'sign_in' => 'Anmelden',
+ 'sign_in_title' => 'Mit deinem Account anmelden',
+ 'or_sign_in_with' => 'Oder anmelden mit',
+ 'forgot_password' => 'Passwort vergessen?',
+ 'dont_have_account' => 'Du hast noch kein Konto?',
+ 'already_have_account' => 'Du hast bereits ein Konto?',
+
+ 'sign_up' => 'Konto erstellen',
+ 'sign_up_title' => 'Erstelle dein Konto',
+
+ 'logout' => 'Abmelden',
+
+ 'input' => [
+ 'email' => 'E-Mail',
+ 'email_label' => 'E-Mail Adresse',
+ 'password' => 'Passwort',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Dein Discord Account ist nicht verifiziert.',
+ 'account_not_registered' => 'Du bist nicht auf dieser Seite registriert.',
+ ],
+
+ 'reset_password' => 'Passwort zurücksetzen',
+
+ 'verify_2fa' => '2FA verifizieren',
+ 'verify' => 'Überprüfen',
+
+ 'verification' => [
+ 'notice' => 'Bestätige deine E-Mail-Adresse',
+ 'sent' => 'Ein neuer Bestätigungslink wurde an deine E-Mail-Adresse versendet.',
+ 'check_your_email' => 'Bitte überprüfe dein E-Mail Postfach auf eine Nachricht mit dem Bestätigungslink.',
+ 'not_received' => 'Wenn du die E-Mail nicht erhalten hast, kannst du eine neue anfordern.',
+ 'request_another' => 'Bestätigungsmail erneut senden',
+ ],
+];
diff --git a/lang/de/dashboard.php b/lang/de/dashboard.php
new file mode 100644
index 000000000..ffe2a1d4b
--- /dev/null
+++ b/lang/de/dashboard.php
@@ -0,0 +1,11 @@
+ 'Übersicht',
+ 'welcome_back' => 'Willkommen zurück :name!',
+ 'dashboard_description' => 'Verwalte deine aktiven Dienste, Rechnungen, Tickets und bleibe auf dem Laufendem.',
+ 'open_tickets' => 'Offene Tickets',
+ 'unpaid_invoices' => 'Offene Rechnungen',
+ 'active_services' => 'Aktive Dienste',
+ 'view_all' => 'Alles anzeigen',
+];
diff --git a/lang/de/general.php b/lang/de/general.php
new file mode 100644
index 000000000..9093b0351
--- /dev/null
+++ b/lang/de/general.php
@@ -0,0 +1,36 @@
+ 'Anzeigen',
+
+ 'input' => [
+ 'first_name' => 'Vorname',
+ 'first_name_placeholder' => 'Dein Vorname',
+ 'last_name' => 'Nachname',
+ 'last_name_placeholder' => 'Dein Nachname',
+ 'email' => 'E-Mail',
+ 'email_placeholder' => 'Deine E-Mail-Adresse',
+ 'phone' => 'Telefon',
+ 'phone_placeholder' => 'Deine Telefonnummer',
+ 'company_name' => 'Firmenname',
+ 'company_name_placeholder' => 'Dein Firmenname',
+ 'country' => 'Land',
+ 'country_placeholder' => 'Dein Land',
+ 'city' => 'Stadt',
+ 'city_placeholder' => 'Deine Stadt',
+ 'address' => 'Adresse',
+ 'address_placeholder' => 'Deine Adresse',
+ 'address2' => 'Adresszusatz',
+ 'address2_placeholder' => 'Dein Adresszusatz',
+ 'zip' => 'PLZ',
+ 'zip_placeholder' => 'Deine Postleitzahl',
+ 'state' => 'Bundesland',
+ 'state_placeholder' => 'Dein Bundesland',
+
+ 'password' => 'Passwort',
+ 'password_placeholder' => 'Dein Passwort',
+ ],
+
+ 'all_rights_reserved' => 'Alle Rechte vorbehalten.',
+ 'update' => 'Aktualisierung',
+];
diff --git a/lang/de/invoices.php b/lang/de/invoices.php
new file mode 100644
index 000000000..944a68b8c
--- /dev/null
+++ b/lang/de/invoices.php
@@ -0,0 +1,33 @@
+ 'Rechnungen',
+ 'product' => 'Produkt',
+ 'price' => 'Preis',
+ 'status' => 'Status',
+ 'actions' => 'Aktionen',
+ 'view' => 'Anzeigen',
+ 'id' => 'ID',
+ 'total' => 'Gesamt',
+ 'subtotal' => 'Zwischensumme',
+ 'invoice' => 'Rechnung #:id',
+ 'unit_price' => 'Einzelpreis',
+ 'bill_to' => 'Rechnung an',
+ 'issued_to' => 'Ausgestellt auf',
+ 'paid' => 'Bezahlt',
+ 'payment_pending' => 'Zahlung ausstehend',
+ 'checking_payment' => 'Zahlung wird geprüft',
+ 'invoice_date' => 'Rechnungsdatum',
+ 'invoice_no' => 'Rechnungsnummer',
+ 'tax_id' => 'Steuer-ID',
+ 'company_id' => 'Unternehmens-ID',
+ 'item' => 'Artikel',
+ 'quantity' => 'Menge',
+ 'transactions' => 'Transaktionen',
+ 'transaction_id' => 'Transaktions-ID',
+ 'gateway' => 'Schnittstelle',
+ 'payment_date' => 'Zahlungsdatum',
+ 'payment_method' => 'Zahlungsmethode',
+ 'amount' => 'Anzahl',
+ 'date' => 'Datum',
+];
diff --git a/lang/de/navigation.php b/lang/de/navigation.php
new file mode 100644
index 000000000..6e73fa856
--- /dev/null
+++ b/lang/de/navigation.php
@@ -0,0 +1,17 @@
+ 'Startseite',
+ 'shop' => 'Shop',
+ 'cart' => 'Warenkorb',
+ 'login' => 'Login',
+ 'register' => 'Registrieren',
+ 'services' => 'Dienstleistungen',
+ 'invoices' => 'Rechnungen',
+ 'account' => 'Benutzerkonto',
+ 'personal_details' => 'Persönliche Informationen',
+ 'security' => 'Sicherheit',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/de/pagination.php b/lang/de/pagination.php
new file mode 100644
index 000000000..a08736d9d
--- /dev/null
+++ b/lang/de/pagination.php
@@ -0,0 +1,19 @@
+ '« Zurück',
+ 'next' => 'Weiter »',
+
+];
diff --git a/lang/de/passwords.php b/lang/de/passwords.php
new file mode 100644
index 000000000..732162188
--- /dev/null
+++ b/lang/de/passwords.php
@@ -0,0 +1,11 @@
+ 'Dein Passwort wurde zurückgesetzt.',
+ 'sent' => 'Die E-Mail zum Zurücksetzen des Passwortes wurde Versand.',
+ 'throttled' => 'Bitte warte, bevor du es erneut versuchst.',
+ 'token' => 'Der Passwort-Wiederherstellungs-Schlüssel ist ungültig oder abgelaufen.',
+ 'user' => 'Es konnte leider kein Nutzer mit dieser E-Mail-Adresse gefunden werden.',
+
+];
diff --git a/lang/de/product.php b/lang/de/product.php
new file mode 100644
index 000000000..a322b296d
--- /dev/null
+++ b/lang/de/product.php
@@ -0,0 +1,29 @@
+ 'Zum Warenkorb hinzufügen',
+ 'view' => 'Anzeigen',
+ 'checkout' => 'Zur Kasse',
+ 'remove' => 'Entfernen',
+ 'empty_cart' => 'Dein Warenkorb ist leer',
+ 'total_today' => 'Heute zu bezahlender Betrag',
+ 'subtotal' => 'Zwischensumme',
+ 'total' => 'Gesamtpreis',
+
+ 'then_after_x' => 'Anschließend nach :time',
+ 'order_summary' => 'Bestellübersicht',
+ 'edit' => 'Bearbeiten',
+
+ 'apply' => 'Anwenden',
+ 'price' => 'Preis',
+ 'setup_fee' => 'Einrichtungsgebühr',
+
+ 'in_stock' => 'Auf Lager',
+ 'out_of_stock' => 'Produkt :product ist nicht auf Lager',
+ 'user_limit' => 'Du hast das Limit von :product erreicht',
+ 'payment_method' => 'Zahlungsmethode',
+ 'use_credits' => 'Credits benutzen',
+ 'tos' => 'Ich stimme folgendem zu ',
+ 'tos_link' => 'Nutzungsbedingungen',
+ 'tos_required' => 'Du musst die Nutzungsbedingungen akzeptieren',
+];
diff --git a/lang/de/services.php b/lang/de/services.php
new file mode 100644
index 000000000..a0b5c0a6b
--- /dev/null
+++ b/lang/de/services.php
@@ -0,0 +1,32 @@
+ 'Leistungen',
+ 'product' => 'Produkt',
+ 'price' => 'Preis',
+ 'status' => 'Status',
+ 'name' => 'Name',
+ 'actions' => 'Aktionen',
+ 'view' => 'Anzeigen',
+
+ 'product_details' => 'Produktdetails',
+ 'billing_cycle' => 'Abrechnungszeitraum',
+ 'cancel' => 'Kündigen',
+ 'cancellation' => 'Kündigung von :service',
+ 'cancel_are_you_sure' => 'Sind Sie sicher, dass Sie diesen Dienst kündigen möchten?',
+ 'cancel_reason' => 'Grund der Kündigung',
+ 'cancel_type' => 'Kündigungsart',
+ 'cancel_immediate' => 'Sofort kündigen',
+ 'cancel_end_of_period' => 'Am Ende des Abrechnungszeitraums kündigen',
+ 'cancel_immediate_warning' => 'Wenn du den Button drückst, wird der Dienst sofort gekündigt und du kannst ihn nicht mehr nutzen.',
+ 'cancellation_requested' => 'Kündigung angefragt',
+
+ 'current_plan' => 'Aktuelles Paket',
+ 'new_plan' => 'Neues Paket',
+ 'change_plan' => 'Paket ändern',
+ 'current_price' => 'Derzeitiger Preis',
+ 'new_price' => 'Neuer Preis',
+ 'upgrade' => 'Upgrade',
+ 'upgrade_summary' => 'Upgrade-Zusammenfassung',
+ 'total_today' => 'Heute zu bezahlender Betrag',
+];
diff --git a/lang/de/ticket.php b/lang/de/ticket.php
new file mode 100644
index 000000000..588a8191d
--- /dev/null
+++ b/lang/de/ticket.php
@@ -0,0 +1,25 @@
+ 'Ticketdetails',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Betreff',
+ 'status' => 'Status',
+ 'priority' => 'Priorität',
+ 'department' => 'Abteilung',
+ 'created_at' => 'Erstellt am',
+ 'reply' => 'Antworten',
+
+ 'create_ticket' => 'Ticket erstellen',
+ 'select_department' => 'Abteilung wählen',
+ 'select_priority' => 'Priorität wählen',
+ 'low' => 'Niedrig',
+ 'medium' => 'Mittel',
+ 'high' => 'Hoch',
+
+ 'last_activity' => 'Letzte Aktivität',
+
+ 'service' => 'Dienst',
+ 'select_service' => 'Dienst wählen',
+ 'create' => 'Erstellen',
+];
diff --git a/lang/de/validation.php b/lang/de/validation.php
new file mode 100644
index 000000000..096122900
--- /dev/null
+++ b/lang/de/validation.php
@@ -0,0 +1,192 @@
+ ':attribute muss akzeptiert werden.',
+ 'accepted_if' => 'Das :attribute muss akzeptiert werden, wenn :other :value ist.',
+ 'active_url' => ':Attribute muss eine URL sein.',
+ 'after' => ':attribute muss ein Datum nach dem :date sein.',
+ 'after_or_equal' => ':attribute muss ein Datum nach :date oder gleich :date sein.',
+ 'alpha' => ':attribute darf nur aus Buchstaben bestehen.',
+ 'alpha_dash' => ':Attribute darf nur aus Buchstaben, Zahlen, Binde- und Unterstrichen bestehen.',
+ 'alpha_num' => ':Attribute darf nur aus Buchstaben und Zahlen bestehen.',
+ 'array' => ':attribute muss ein Array sein.',
+ 'ascii' => ':attribute darf nur alphanumerische Zeichen und Symbole enthalten.',
+ 'before' => ':attribute muss ein Datum vor dem :date sein.',
+ 'before_or_equal' => ':attribute muss ein Datum vor dem :date oder gleich dem :date sein.',
+ 'between' => [
+ 'array' => ':attribute muss zwischen :min & :max Elemente haben.',
+ 'file' => ':attribute muss zwischen :min & :max Kilobytes groß sein.',
+ 'numeric' => ':Attribute muss zwischen :min & :max liegen.',
+ 'string' => ':attribute muss zwischen :min & :max Zeichen lang sein.',
+ ],
+ 'boolean' => 'Das :attribute muss wahr oder falsch sein.',
+ 'can' => ':attribute enthält einen unzulässigen Wert.',
+ 'confirmed' => ':Attribute stimmt nicht mit der Bestätigung überein.',
+ 'current_password' => 'Das Passwort ist falsch.',
+ 'date' => ':attribute muss ein gültiges Datum sein.',
+ 'date_equals' => ':attribute muss ein Datum gleich :date sein.',
+ 'date_format' => ':attribute entspricht nicht dem gültigen Format für :format.',
+ 'decimal' => 'Die :attribute muss :decimal Dezimalstellen haben.',
+ 'declined' => 'Das :attribute muss abgelehnt werden.',
+ 'declined_if' => 'Das Feld „:attribute“ muss abgelehnt werden, wenn „:other“ den Wert „:value“ hat.',
+ 'different' => ':Attribute und :other müssen sich unterscheiden.',
+ 'digits' => ':attribute muss :digits Stellen haben.',
+ 'digits_between' => ':attribute muss zwischen :min und :max Stellen haben.',
+ 'dimensions' => 'Das Feld :attribute hat ungültige Bildabmessungen.',
+ 'distinct' => 'Der Wert von :attribute existiert bereits.',
+ 'doesnt_end_with' => ':Attribute darf nicht mit einem der folgenden Werte enden: :values.',
+ 'doesnt_start_with' => 'Das :attribute-Feld darf nicht mit einem der folgenden Werte beginnen: :values.',
+ 'email' => ':attribute muss eine gültige E-Mail-Adresse sein.',
+ 'ends_with' => 'Das :attribute-Feld muss mit einem der folgenden Werte enden: :values.',
+ 'enum' => 'Das ausgewählte :attribute ist ungültig.',
+ 'exists' => 'Das ausgewählte :attribute ist ungültig.',
+ 'extensions' => 'Das Feld :attribute muss eine der folgenden Erweiterungen haben: :values.',
+ 'file' => 'Das :attribute Feld muss eine Datei sein.',
+ 'filled' => ':attribute muss ausgefüllt sein.',
+ 'gt' => [
+ 'array' => ':attribute muss mehr als :value Elemente haben.',
+ 'file' => ':attribute muss größer als :value Kilobytes sein.',
+ 'numeric' => ':attribute muss größer als :value sein.',
+ 'string' => ':attribute muss länger als :value Zeichen sein.',
+ ],
+ 'gte' => [
+ 'array' => ':attribute muss mindestens :value Elemente haben.',
+ 'file' => ':attribute muss größer oder gleich :value Kilobytes sein.',
+ 'numeric' => ': attribute muss größer oder gleich :value sein.',
+ 'string' => ':attribute muss mindestens :value Zeichen lang sein.',
+ ],
+ 'hex_color' => ':attribute muss eine gültige hexadezimale Farbe sein.',
+ 'image' => ':attribute muss ein Bild sein.',
+ 'in' => 'Das ausgewählte :attribute ist ungültig.',
+ 'in_array' => 'Der gewählte Wert für :attribute kommt nicht in :other vor.',
+ 'integer' => ':attribute muss eine ganze Zahl sein.',
+ 'ip' => ':attribute muss eine gültige IP-Adresse sein.',
+ 'ipv4' => ':attribute muss eine gültige IPv4-Adresse sein.',
+ 'ipv6' => ':attribute muss eine gültige IPv6-Adresse sein.',
+ 'json' => ':attribute muss ein gültiger JSON-String sein.',
+ 'list' => ':attribute muss eine Liste sein.',
+ 'lowercase' => ':attribute muss in Kleinbuchstaben sein.',
+ 'lt' => [
+ 'array' => ':attribute muss weniger als :value Elemente haben.',
+ 'file' => ':attribute muss kleiner als :value Kilobytes sein.',
+ 'numeric' => ':attribute muss kleiner als :value sein.',
+ 'string' => ':attribute muss kürzer als :value Zeichen sein.',
+ ],
+ 'lte' => [
+ 'array' => ':attribute darf maximal :value Elemente haben.',
+ 'file' => ':attribute muss kleiner als :value Kilobytes sein.',
+ 'numeric' => ':attribute muss kleiner als :value sein.',
+ 'string' => ':attribute darf maximal :value Zeichen lang sein.',
+ ],
+ 'mac_address' => 'Der Wert muss eine gültige MAC-Adresse sein.',
+ 'max' => [
+ 'array' => ':attribute darf maximal :max Elemente haben.',
+ 'file' => ':attribute darf maximal :max Kilobytes groß sein.',
+ 'numeric' => ':attribute darf maximal :max sein.',
+ 'string' => ':attribute darf maximal :max Zeichen haben.',
+ ],
+ 'max_digits' => ':attribute darf maximal :max Ziffern lang sein.',
+ 'mimes' => ':attribute muss den Dateityp :values haben.',
+ 'mimetypes' => ':attribute muss den Dateityp :values haben.',
+ 'min' => [
+ 'array' => ':attribute muss mindestens :min Elemente haben.',
+ 'file' => ':attribute muss mindestens :min Kilobytes groß sein.',
+ 'numeric' => ':attribute muss mindestens :min sein.',
+ 'string' => ':attribute muss mindestens :min Zeichen lang sein.',
+ ],
+ 'min_digits' => ':attribute muss mindestens :min Ziffern lang sein.',
+ 'missing' => 'Das :attribute muss abgelehnt werden.',
+ 'missing_if' => 'Das :attribute muss fehlen, wenn :other gleich :value ist.',
+ 'missing_unless' => 'Das :attribute muss fehlen, es sei denn, :other ist :value.',
+ 'missing_with' => 'Das :attribute muss fehlen, wenn „:values“ vorhanden ist.',
+ 'missing_with_all' => 'Das :attribute muss fehlen, wenn :values vorhanden sind.',
+ 'multiple_of' => ':attribute muss ein Vielfaches von :value sein.',
+ 'not_in' => 'Das ausgewählte :attribute ist ungültig.',
+ 'not_regex' => ':attribute hat ein ungültiges Format.',
+ 'numeric' => ':attribute muss eine Zahl sein.',
+ 'password' => [
+ 'letters' => ':attribute muss mindestens einen Buchstaben beinhalten.',
+ 'mixed' => ':attribute muss mindestens einen Großbuchstaben und einen Kleinbuchstaben beinhalten.',
+ 'numbers' => ':attribute muss mindestens eine Zahl beinhalten.',
+ 'symbols' => ':attribute muss mindestens ein Sonderzeichen beinhalten.',
+ 'uncompromised' => 'Das :attribute ist bereits in einem Datenleck aufgetaucht. Bitte wähle ein anderes :attribute.',
+ ],
+ 'present' => ':attribute muss vorhanden sein.',
+ 'present_if' => ':attribute muss vorhanden sein, wenn :other gleich :value ist.',
+ 'present_unless' => ':attribute muss vorhanden sein, es sei denn, :other ist :value.',
+ 'present_with' => ':attribute muss vorhanden sein, wenn :values vorhanden ist.',
+ 'present_with_all' => ':attribute muss vorhanden sein, wenn :values vorhanden sind.',
+ 'prohibited' => ':attribute ist unzulässig.',
+ 'prohibited_if' => ':attribute ist unzulässig, wenn :other :value ist.',
+ 'prohibited_unless' => ':attribute ist nicht erlaubt, es sei denn, :other ist in :values enthalten.',
+ 'prohibits' => ':attribute verbietet die Angabe von :other.',
+ 'regex' => ':attribute hat ein ungültiges Format.',
+ 'required' => ':attribute ist erforderlich.',
+ 'required_array_keys' => ':attribute muss Einträge für :values enthalten.',
+ 'required_if' => ':attribute wird benötigt wenn :other :value entspricht.',
+ 'required_if_accepted' => ':attribute ist erforderlich, wenn :other akzeptiert wird.',
+ 'required_unless' => ':attribute ist erforderlich, außer :other ist in :values enthalten.',
+ 'required_with' => ':attribute ist erforderlich, wenn :values vorhanden ist.',
+ 'required_with_all' => ':attribute ist erforderlich wenn :values vorhanden sind.',
+ 'required_without' => ':attribute muss angegeben werden, wenn :values nicht ausgefüllt wurde.',
+ 'required_without_all' => ':attribute ist erforderlich, wenn keiner von :values vorhanden sind.',
+ 'same' => ':attribute und :other müssen übereinstimmen.',
+ 'size' => [
+ 'array' => ':attribute muss :size Elemente enthalten.',
+ 'file' => ':sttribute muss :size Kilobyte groß sein.',
+ 'numeric' => ':attribute-Feld muss :size sein.',
+ 'string' => ':attribute muss :size Zeichen enthalten.',
+ ],
+ 'starts_with' => ':attribute muss mit einem der folgenden Werte beginnen: :values.',
+ 'string' => ':attribute muss ein String sein.',
+ 'timezone' => ':attribute muss eine gültige Zeitzone sein.',
+ 'unique' => ':attribute ist schon vergeben.',
+ 'uploaded' => ':attribute konnte nicht hochgeladen werden.',
+ 'uppercase' => ':attribute muss in Großbuchstaben sein.',
+ 'url' => ':attribute muss eine gültige URL sein.',
+ 'ulid' => ':attribute muss eine gültige ULID sein.',
+ 'uuid' => ':attribute muss eine gültige UUID sein.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'individuelle Nachricht',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/en/account.php b/lang/en/account.php
new file mode 100644
index 000000000..b32858cd1
--- /dev/null
+++ b/lang/en/account.php
@@ -0,0 +1,52 @@
+ 'Account',
+ 'personal_details' => 'Personal details',
+ 'security' => 'Security',
+ 'credits' => 'Credits',
+
+ 'change_password' => 'Change password',
+
+ 'two_factor_authentication' => 'Two-factor authentication',
+ 'two_factor_authentication_description' => 'Add an extra layer of security to your account by enabling two-factor authentication.',
+ 'two_factor_authentication_enabled' => 'Two-factor authentication is enabled for your account.',
+ 'two_factor_authentication_enable' => 'Enable two-factor authentication',
+ 'two_factor_authentication_disable' => 'Disable two-factor authentication',
+ 'two_factor_authentication_enable_description' => 'To enable two factor authentication, you need to scan the QR code below with an authenticator app like Google Authenticator or Authy.',
+ 'two_factor_authentication_qr_code' => 'Scan the QR code below with your authenticator app:',
+ 'two_factor_authentication_secret' => 'Or enter the following code manually:',
+
+ 'sessions' => 'Sessions',
+ 'sessions_description' => 'Manage and log out your active sessions on other browsers and devices.',
+ 'logout_sessions' => 'Log this session out',
+
+ 'input' => [
+ 'current_password' => 'Current password',
+ 'current_password_placeholder' => 'Your current password',
+ 'new_password' => 'New password',
+ 'new_password_placeholder' => 'Your new password',
+ 'confirm_password' => 'Confirm password',
+ 'confirm_password_placeholder' => 'Confirm your new password',
+
+ 'two_factor_code' => 'Enter the code from your authenticator app',
+ 'two_factor_code_placeholder' => 'Your two-factor authentication code',
+
+ 'currency' => 'Currency',
+ 'amount' => 'Amount',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Password has been changed.',
+ 'password_incorrect' => 'The current password is incorrect.',
+ 'two_factor_enabled' => 'Two-factor authentication has been enabled.',
+ 'two_factor_disabled' => 'Two-factor authentication has been disabled.',
+ 'two_factor_code_incorrect' => 'The code is incorrect.',
+ 'session_logged_out' => 'Session has been logged out.',
+ ],
+
+ 'no_credit' => 'You have no credits.',
+ 'add_credit' => 'Add credit',
+ 'credit_deposit' => 'Credit deposit (:currency)',
+
+];
diff --git a/lang/en/auth.php b/lang/en/auth.php
new file mode 100644
index 000000000..724e099f7
--- /dev/null
+++ b/lang/en/auth.php
@@ -0,0 +1,55 @@
+ 'These credentials do not match our records.',
+ 'password' => 'The provided password is incorrect.',
+ 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
+
+ 'sign_in' => 'Sign in',
+ 'sign_in_title' => 'Sign in to your account',
+ 'or_sign_in_with' => 'Or sign in with',
+ 'forgot_password' => 'Forgot your password?',
+ 'dont_have_account' => 'Don\'t have an account?',
+ 'already_have_account' => 'Already have an account?',
+
+ 'sign_up' => 'Sign up',
+ 'sign_up_title' => 'Create your account',
+
+ 'logout' => 'Logout',
+
+ 'input' => [
+ 'email' => 'Email',
+ 'email_label' => 'Email Address',
+ 'password' => 'Password',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Your Discord account is not verified.',
+ 'account_not_registered' => 'You are not registered on this site.',
+ ],
+
+ 'reset_password' => 'Reset password',
+
+ 'verify_2fa' => 'Verify 2FA',
+ 'verify' => 'Verify',
+
+ 'verification' => [
+ 'notice' => 'Verify your email address',
+ 'sent' => 'A new verification link has been sent to your email address.',
+ 'check_your_email' => 'Before proceeding, please check your email for a verification link.',
+ 'not_received' => 'If you did not receive the email you can request another verification email.',
+ 'request_another' => 'Resend verification email',
+ ],
+];
diff --git a/lang/en/dashboard.php b/lang/en/dashboard.php
new file mode 100644
index 000000000..eb7002ea0
--- /dev/null
+++ b/lang/en/dashboard.php
@@ -0,0 +1,11 @@
+ 'Dashboard',
+ 'welcome_back' => 'Welcome back, :name!',
+ 'dashboard_description' => 'Manage your active services, invoices, tickets, and stay updated here.',
+ 'open_tickets' => 'Open Tickets',
+ 'unpaid_invoices' => 'Unpaid Invoices',
+ 'active_services' => 'Active Services',
+ 'view_all' => 'View All',
+];
diff --git a/lang/en/general.php b/lang/en/general.php
new file mode 100644
index 000000000..4793f6356
--- /dev/null
+++ b/lang/en/general.php
@@ -0,0 +1,36 @@
+ 'View',
+
+ 'input' => [
+ 'first_name' => 'First name',
+ 'first_name_placeholder' => 'Your first name',
+ 'last_name' => 'Last name',
+ 'last_name_placeholder' => 'Your last name',
+ 'email' => 'Email',
+ 'email_placeholder' => 'Your email address',
+ 'phone' => 'Phone',
+ 'phone_placeholder' => 'Your phone number',
+ 'company_name' => 'Company name',
+ 'company_name_placeholder' => 'Your company name',
+ 'country' => 'Country',
+ 'country_placeholder' => 'Your country',
+ 'city' => 'City',
+ 'city_placeholder' => 'Your city',
+ 'address' => 'Address',
+ 'address_placeholder' => 'Your address',
+ 'address2' => 'Address 2',
+ 'address2_placeholder' => 'Your address 2',
+ 'zip' => 'ZIP',
+ 'zip_placeholder' => 'Your ZIP code',
+ 'state' => 'State',
+ 'state_placeholder' => 'Your state',
+
+ 'password' => 'Password',
+ 'password_placeholder' => 'Your password',
+ ],
+
+ 'all_rights_reserved' => 'All rights reserved.',
+ 'update' => 'Update',
+];
diff --git a/lang/en/invoices.php b/lang/en/invoices.php
new file mode 100644
index 000000000..f94b652ff
--- /dev/null
+++ b/lang/en/invoices.php
@@ -0,0 +1,33 @@
+ 'Invoices',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Subtotal',
+ 'invoice' => 'Invoice #:id',
+ 'unit_price' => 'Unit Price',
+ 'bill_to' => 'Vendor',
+ 'issued_to' => 'Responsible Party',
+ 'paid' => 'Paid',
+ 'payment_pending' => 'Payment Pending',
+ 'checking_payment' => 'Checking Payment',
+ 'invoice_date' => 'Invoice Date',
+ 'invoice_no' => 'Invoice No',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Item',
+ 'quantity' => 'Quantity',
+ 'transactions' => 'Transactions',
+ 'transaction_id' => 'Transaction ID',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Payment Date',
+ 'payment_method' => 'Payment Method',
+ 'amount' => 'Amount',
+ 'date' => 'Date',
+];
diff --git a/lang/en/navigation.php b/lang/en/navigation.php
new file mode 100644
index 000000000..57443b9bc
--- /dev/null
+++ b/lang/en/navigation.php
@@ -0,0 +1,17 @@
+ 'Home',
+ 'shop' => 'Shop',
+ 'cart' => 'Cart',
+ 'login' => 'Login',
+ 'register' => 'Register',
+ 'services' => 'Services',
+ 'invoices' => 'Invoices',
+ 'account' => 'Account',
+ 'personal_details' => 'Personal Details',
+ 'security' => 'Security',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/en/pagination.php b/lang/en/pagination.php
new file mode 100644
index 000000000..d48141187
--- /dev/null
+++ b/lang/en/pagination.php
@@ -0,0 +1,19 @@
+ '« Previous',
+ 'next' => 'Next »',
+
+];
diff --git a/lang/en/passwords.php b/lang/en/passwords.php
new file mode 100644
index 000000000..2cea577ef
--- /dev/null
+++ b/lang/en/passwords.php
@@ -0,0 +1,11 @@
+ 'Your password has been reset.',
+ 'sent' => 'We have emailed your password reset link.',
+ 'throttled' => 'Please wait before retrying.',
+ 'token' => 'This password reset token is invalid.',
+ 'user' => "We can't find a user with that email address.",
+
+];
diff --git a/lang/en/product.php b/lang/en/product.php
new file mode 100644
index 000000000..183e65fbd
--- /dev/null
+++ b/lang/en/product.php
@@ -0,0 +1,29 @@
+ 'Add to cart',
+ 'view' => 'View',
+ 'checkout' => 'Checkout',
+ 'remove' => 'Remove',
+ 'empty_cart' => 'Your cart is empty',
+ 'total_today' => 'Total today',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Then after :time',
+ 'order_summary' => 'Order Summary',
+ 'edit' => 'Edit',
+
+ 'apply' => 'Apply',
+ 'price' => 'Price',
+ 'setup_fee' => 'Setup fee',
+
+ 'in_stock' => 'In stock',
+ 'out_of_stock' => 'Out of stock.',
+ 'user_limit' => 'You have reached the limit of :product',
+ 'payment_method' => 'Payment method',
+ 'use_credits' => 'Use credits',
+ 'tos' => 'I agree to the ',
+ 'tos_link' => 'Terms of Service',
+ 'tos_required' => 'You must agree to the Terms of Service',
+];
diff --git a/lang/en/services.php b/lang/en/services.php
new file mode 100644
index 000000000..3594ee1b8
--- /dev/null
+++ b/lang/en/services.php
@@ -0,0 +1,57 @@
+ 'Services',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'name' => 'Name',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+
+ 'product_details' => 'Product Details',
+ 'billing_cycle' => 'Billing Cycle',
+ 'cancel' => 'Cancel',
+ 'cancellation' => 'Cancellation of :service',
+ 'cancel_are_you_sure' => 'Are you sure you want to cancel this service?',
+ 'cancel_reason' => 'Reason for cancellation',
+ 'cancel_type' => 'Cancellation Type',
+ 'cancel_immediate' => 'Cancel immediate',
+ 'cancel_end_of_period' => 'Cancel at the end of the billing period',
+ 'cancel_immediate_warning' => 'When you press the button below, the service will be cancelled immediately and you will not be able to use it anymore.',
+ 'cancellation_requested' => 'Cancellation requested',
+
+ 'current_plan' => 'Current Plan',
+ 'new_plan' => 'New Plan',
+ 'change_plan' => 'Change Plan',
+ 'current_price' => 'Current Price',
+ 'new_price' => 'New Price',
+ 'upgrade' => 'Upgrade',
+ 'upgrade_summary' => 'Upgrade Summary',
+ 'total_today' => 'Total Today',
+ 'upgrade_service' => 'Upgrade Service',
+ 'upgrade_choose_product' => 'Choose a product to upgrade to',
+ 'upgrade_choose_config' => 'Choose the configuration for the upgrade',
+ 'next_step' => 'Next Step',
+
+ 'upgrade_pending' => 'You cannot upgrade whilst there is already an upgrade / downgrade invoice open',
+
+ 'outstanding_invoice' => 'You have an outstanding invoice.',
+ 'view_and_pay' => 'Click here to view and pay',
+
+ 'statuses' => [
+ 'pending' => 'Pending',
+ 'active' => 'Active',
+ 'cancelled' => 'Cancelled',
+ 'suspended' => 'Suspended',
+ ],
+ 'billing_cycles' => [
+ 'day' => 'day|days',
+ 'week' => 'week|weeks',
+ 'month' => 'month|months',
+ 'year' => 'year|years',
+ ],
+ 'every_period' => 'Every :period :unit',
+ 'price_every_period' => ':price per :period :unit',
+ 'expires_at' => 'Expires at',
+];
diff --git a/lang/en/ticket.php b/lang/en/ticket.php
new file mode 100644
index 000000000..ce39439fa
--- /dev/null
+++ b/lang/en/ticket.php
@@ -0,0 +1,25 @@
+ 'Ticket Details',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Subject',
+ 'status' => 'Status',
+ 'priority' => 'Priority',
+ 'department' => 'Department',
+ 'created_at' => 'Created At',
+ 'reply' => 'Reply',
+
+ 'create_ticket' => 'Create Ticket',
+ 'select_department' => 'Select Department',
+ 'select_priority' => 'Select Priority',
+ 'low' => 'Low',
+ 'medium' => 'Medium',
+ 'high' => 'High',
+
+ 'last_activity' => 'Last activity',
+
+ 'service' => 'Service',
+ 'select_service' => 'Select Service',
+ 'create' => 'Create',
+];
diff --git a/lang/en/validation.php b/lang/en/validation.php
new file mode 100644
index 000000000..aea190d40
--- /dev/null
+++ b/lang/en/validation.php
@@ -0,0 +1,192 @@
+ 'The :attribute field must be accepted.',
+ 'accepted_if' => 'The :attribute field must be accepted when :other is :value.',
+ 'active_url' => 'The :attribute field must be a valid URL.',
+ 'after' => 'The :attribute field must be a date after :date.',
+ 'after_or_equal' => 'The :attribute field must be a date after or equal to :date.',
+ 'alpha' => 'The :attribute field must only contain letters.',
+ 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.',
+ 'alpha_num' => 'The :attribute field must only contain letters and numbers.',
+ 'array' => 'The :attribute field must be an array.',
+ 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.',
+ 'before' => 'The :attribute field must be a date before :date.',
+ 'before_or_equal' => 'The :attribute field must be a date before or equal to :date.',
+ 'between' => [
+ 'array' => 'The :attribute field must have between :min and :max items.',
+ 'file' => 'The :attribute field must be between :min and :max kilobytes.',
+ 'numeric' => 'The :attribute field must be between :min and :max.',
+ 'string' => 'The :attribute field must be between :min and :max characters.',
+ ],
+ 'boolean' => 'The :attribute field must be true or false.',
+ 'can' => 'The :attribute field contains an unauthorized value.',
+ 'confirmed' => 'The :attribute field confirmation does not match.',
+ 'current_password' => 'The password is incorrect.',
+ 'date' => 'The :attribute field must be a valid date.',
+ 'date_equals' => 'The :attribute field must be a date equal to :date.',
+ 'date_format' => 'The :attribute field must match the format :format.',
+ 'decimal' => 'The :attribute field must have :decimal decimal places.',
+ 'declined' => 'The :attribute field must be declined.',
+ 'declined_if' => 'The :attribute field must be declined when :other is :value.',
+ 'different' => 'The :attribute field and :other must be different.',
+ 'digits' => 'The :attribute field must be :digits digits.',
+ 'digits_between' => 'The :attribute field must be between :min and :max digits.',
+ 'dimensions' => 'The :attribute field has invalid image dimensions.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.',
+ 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.',
+ 'email' => 'The :attribute field must be a valid email address.',
+ 'ends_with' => 'The :attribute field must end with one of the following: :values.',
+ 'enum' => 'The selected :attribute is invalid.',
+ 'exists' => 'The selected :attribute is invalid.',
+ 'extensions' => 'The :attribute field must have one of the following extensions: :values.',
+ 'file' => 'The :attribute field must be a file.',
+ 'filled' => 'The :attribute field must have a value.',
+ 'gt' => [
+ 'array' => 'The :attribute field must have more than :value items.',
+ 'file' => 'The :attribute field must be greater than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than :value.',
+ 'string' => 'The :attribute field must be greater than :value characters.',
+ ],
+ 'gte' => [
+ 'array' => 'The :attribute field must have :value items or more.',
+ 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than or equal to :value.',
+ 'string' => 'The :attribute field must be greater than or equal to :value characters.',
+ ],
+ 'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
+ 'image' => 'The :attribute field must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field must exist in :other.',
+ 'integer' => 'The :attribute field must be an integer.',
+ 'ip' => 'The :attribute field must be a valid IP address.',
+ 'ipv4' => 'The :attribute field must be a valid IPv4 address.',
+ 'ipv6' => 'The :attribute field must be a valid IPv6 address.',
+ 'json' => 'The :attribute field must be a valid JSON string.',
+ 'list' => 'The :attribute field must be a list.',
+ 'lowercase' => 'The :attribute field must be lowercase.',
+ 'lt' => [
+ 'array' => 'The :attribute field must have less than :value items.',
+ 'file' => 'The :attribute field must be less than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than :value.',
+ 'string' => 'The :attribute field must be less than :value characters.',
+ ],
+ 'lte' => [
+ 'array' => 'The :attribute field must not have more than :value items.',
+ 'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than or equal to :value.',
+ 'string' => 'The :attribute field must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'The :attribute field must be a valid MAC address.',
+ 'max' => [
+ 'array' => 'The :attribute field must not have more than :max items.',
+ 'file' => 'The :attribute field must not be greater than :max kilobytes.',
+ 'numeric' => 'The :attribute field must not be greater than :max.',
+ 'string' => 'The :attribute field must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'The :attribute field must not have more than :max digits.',
+ 'mimes' => 'The :attribute field must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute field must be a file of type: :values.',
+ 'min' => [
+ 'array' => 'The :attribute field must have at least :min items.',
+ 'file' => 'The :attribute field must be at least :min kilobytes.',
+ 'numeric' => 'The :attribute field must be at least :min.',
+ 'string' => 'The :attribute field must be at least :min characters.',
+ ],
+ 'min_digits' => 'The :attribute field must have at least :min digits.',
+ 'missing' => 'The :attribute field must be missing.',
+ 'missing_if' => 'The :attribute field must be missing when :other is :value.',
+ 'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
+ 'missing_with' => 'The :attribute field must be missing when :values is present.',
+ 'missing_with_all' => 'The :attribute field must be missing when :values are present.',
+ 'multiple_of' => 'The :attribute field must be a multiple of :value.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute field format is invalid.',
+ 'numeric' => 'The :attribute field must be a number.',
+ 'password' => [
+ 'letters' => 'The :attribute field must contain at least one letter.',
+ 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
+ 'numbers' => 'The :attribute field must contain at least one number.',
+ 'symbols' => 'The :attribute field must contain at least one symbol.',
+ 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
+ ],
+ 'present' => 'The :attribute field must be present.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'The :attribute field is prohibited.',
+ 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'The :attribute field prohibits :other from being present.',
+ 'regex' => 'The :attribute field format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
+ 'same' => 'The :attribute field must match :other.',
+ 'size' => [
+ 'array' => 'The :attribute field must contain :size items.',
+ 'file' => 'The :attribute field must be :size kilobytes.',
+ 'numeric' => 'The :attribute field must be :size.',
+ 'string' => 'The :attribute field must be :size characters.',
+ ],
+ 'starts_with' => 'The :attribute field must start with one of the following: :values.',
+ 'string' => 'The :attribute field must be a string.',
+ 'timezone' => 'The :attribute field must be a valid timezone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'The :attribute failed to upload.',
+ 'uppercase' => 'The :attribute field must be uppercase.',
+ 'url' => 'The :attribute field must be a valid URL.',
+ 'ulid' => 'The :attribute field must be a valid ULID.',
+ 'uuid' => 'The :attribute field must be a valid UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'custom-message',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/es/account.php b/lang/es/account.php
new file mode 100644
index 000000000..f230c18de
--- /dev/null
+++ b/lang/es/account.php
@@ -0,0 +1,52 @@
+ 'Cuenta',
+ 'personal_details' => 'Datos personales',
+ 'security' => 'Seguridad',
+ 'credits' => 'Créditos',
+
+ 'change_password' => 'Cambiar contraseña',
+
+ 'two_factor_authentication' => 'Autenticación de doble factor',
+ 'two_factor_authentication_description' => 'Añade una capa adicional de seguridad a tu cuenta activando la autenticación de dos factores.',
+ 'two_factor_authentication_enabled' => 'La autenticación de dos factores está activada en tu cuenta.',
+ 'two_factor_authentication_enable' => 'Activar la autenticación de doble factor',
+ 'two_factor_authentication_disable' => 'Desactivar la autenticación de dos factores',
+ 'two_factor_authentication_enable_description' => 'Para habilitar la autenticación de dos factores, debes escanear el código QR a continuación con una aplicación de autenticación como Google Authenticator o Authy.',
+ 'two_factor_authentication_qr_code' => 'Escanea el código QR a continuación con tu aplicación de autenticación:',
+ 'two_factor_authentication_secret' => 'O introduce el siguiente código manualmente:',
+
+ 'sessions' => 'Sesiones',
+ 'sessions_description' => 'Administra y cierra sesión en tus sesiones activas en otros navegadores y dispositivos.',
+ 'logout_sessions' => 'Cerrar sesión en esta sesión',
+
+ 'input' => [
+ 'current_password' => 'Contraseña actual',
+ 'current_password_placeholder' => 'Tu contraseña actual',
+ 'new_password' => 'Nueva contraseña',
+ 'new_password_placeholder' => 'Tu nueva contraseña',
+ 'confirm_password' => 'Confirmar la contraseña',
+ 'confirm_password_placeholder' => 'Confirma tu nueva contraseña',
+
+ 'two_factor_code' => 'Ingresa el código de tu aplicación de autenticación',
+ 'two_factor_code_placeholder' => 'Tu código de autenticación de dos factores',
+
+ 'currency' => 'Divisa',
+ 'amount' => 'Importe',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'La contraseña ha sido cambiada.',
+ 'password_incorrect' => 'La contraseña actual es incorrecta.',
+ 'two_factor_enabled' => 'La autenticación de dos factores ha sido habilitada.',
+ 'two_factor_disabled' => 'La autenticación de dos factores ha sido deshabilitada.',
+ 'two_factor_code_incorrect' => 'El código es incorrecto.',
+ 'session_logged_out' => 'La sesión ha sido cerrada.',
+ ],
+
+ 'no_credit' => 'No tienes créditos.',
+ 'add_credit' => 'Añadir crédito',
+ 'credit_deposit' => 'Depósito de crédito (:currency)',
+
+];
diff --git a/lang/es/auth.php b/lang/es/auth.php
new file mode 100644
index 000000000..dfc5bb01a
--- /dev/null
+++ b/lang/es/auth.php
@@ -0,0 +1,55 @@
+ 'Estas credenciales no coinciden con nuestros registros.',
+ 'password' => 'La contraseña introducida es incorrecta.',
+ 'throttle' => 'Demasiados intentos de inicio de sesión. Por favor, inténtalo de nuevo en :seconds segundos.',
+
+ 'sign_in' => 'Inicia sesión',
+ 'sign_in_title' => 'Inicia sesión en tu cuenta',
+ 'or_sign_in_with' => 'O inicia sesión con',
+ 'forgot_password' => '¿Has olvidado tu contraseña?',
+ 'dont_have_account' => '¿No tienes una cuenta?',
+ 'already_have_account' => '¿Ya tienes una cuenta?',
+
+ 'sign_up' => 'Regístrate',
+ 'sign_up_title' => 'Crear una cuenta',
+
+ 'logout' => 'Cerrar sesión',
+
+ 'input' => [
+ 'email' => 'Email',
+ 'email_label' => 'Correo electrónico',
+ 'password' => 'Contraseña',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Tu cuenta de Discord no está verificada.',
+ 'account_not_registered' => 'No estás registrado en este sitio.',
+ ],
+
+ 'reset_password' => 'Restablecer contraseña',
+
+ 'verify_2fa' => 'Verificar 2FA',
+ 'verify' => 'Verificar',
+
+ 'verification' => [
+ 'notice' => 'Verificar tu dirección de correo electrónico',
+ 'sent' => 'Un nuevo enlace de verificación ha sido enviado a tu dirección de correo electrónico.',
+ 'check_your_email' => 'Antes de proceder, por favor revisa tu correo electrónico para ver un enlace de verificación.',
+ 'not_received' => 'Si no recibiste el correo electrónico, puedes solicitar otro correo de verificación.',
+ 'request_another' => 'Reenviar correo de verificación',
+ ],
+];
diff --git a/lang/es/dashboard.php b/lang/es/dashboard.php
new file mode 100644
index 000000000..aa7036aee
--- /dev/null
+++ b/lang/es/dashboard.php
@@ -0,0 +1,11 @@
+ 'Panel de control',
+ 'welcome_back' => '¡Bienvenido de nuevo, :name!',
+ 'dashboard_description' => 'Administre sus servicios activos, facturas, tickets y manténgase actualizado aquí.',
+ 'open_tickets' => 'Tickets abiertos',
+ 'unpaid_invoices' => 'Facturas Pendientes de Pago',
+ 'active_services' => 'Servicios Activos',
+ 'view_all' => 'Ver todo',
+];
diff --git a/lang/es/general.php b/lang/es/general.php
new file mode 100644
index 000000000..b5bdb3ad7
--- /dev/null
+++ b/lang/es/general.php
@@ -0,0 +1,36 @@
+ 'Ver',
+
+ 'input' => [
+ 'first_name' => 'Primer Nombre',
+ 'first_name_placeholder' => 'Tu primer nombre',
+ 'last_name' => 'Apellido',
+ 'last_name_placeholder' => 'Tu apellido',
+ 'email' => 'Correo electrónico',
+ 'email_placeholder' => 'Tu dirección de correo electrónico',
+ 'phone' => 'Teléfono',
+ 'phone_placeholder' => 'Tu número de teléfono',
+ 'company_name' => 'Nombre de la empresa',
+ 'company_name_placeholder' => 'El nombre de su empresa',
+ 'country' => 'País',
+ 'country_placeholder' => 'Tu país',
+ 'city' => 'Ciudad',
+ 'city_placeholder' => 'Tu ciudad',
+ 'address' => 'Dirección',
+ 'address_placeholder' => 'Tu dirección',
+ 'address2' => 'Dirección 2',
+ 'address2_placeholder' => 'Tu dirección 2',
+ 'zip' => 'Código postal',
+ 'zip_placeholder' => 'Tu código postal',
+ 'state' => 'Estado/región',
+ 'state_placeholder' => 'Tu estado/región',
+
+ 'password' => 'Contraseña',
+ 'password_placeholder' => 'Tu contraseña',
+ ],
+
+ 'all_rights_reserved' => 'Todos los derechos reservados.',
+ 'update' => 'Actualizar',
+];
diff --git a/lang/es/invoices.php b/lang/es/invoices.php
new file mode 100644
index 000000000..128093a76
--- /dev/null
+++ b/lang/es/invoices.php
@@ -0,0 +1,33 @@
+ 'Facturas',
+ 'product' => 'Producto',
+ 'price' => 'Precio',
+ 'status' => 'Estado',
+ 'actions' => 'Acciones',
+ 'view' => 'Ver',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Subtotal',
+ 'invoice' => 'Factura #:id',
+ 'unit_price' => 'Precio por unidad',
+ 'bill_to' => 'Facturar a',
+ 'issued_to' => 'Emitida a',
+ 'paid' => 'Pagado',
+ 'payment_pending' => 'Pago pendiente',
+ 'checking_payment' => 'Comprobando pago',
+ 'invoice_date' => 'Fecha de factura',
+ 'invoice_no' => 'Número de factura',
+ 'tax_id' => 'ID del impuesto',
+ 'company_id' => 'ID de la compañía',
+ 'item' => 'Artículo',
+ 'quantity' => 'Cantidad',
+ 'transactions' => 'Transacciones',
+ 'transaction_id' => 'Núm. de la transacción',
+ 'gateway' => 'Pasarela de pago',
+ 'payment_date' => 'Fecha de pago',
+ 'payment_method' => 'Método Pago',
+ 'amount' => 'Cantidad',
+ 'date' => 'Fecha',
+];
diff --git a/lang/es/navigation.php b/lang/es/navigation.php
new file mode 100644
index 000000000..8ebb34765
--- /dev/null
+++ b/lang/es/navigation.php
@@ -0,0 +1,17 @@
+ 'Inicio',
+ 'shop' => 'Tienda',
+ 'cart' => 'Carrito',
+ 'login' => 'Iniciar sesión',
+ 'register' => 'Registro',
+ 'services' => 'Servicios',
+ 'invoices' => 'Facturas',
+ 'account' => 'Cuenta',
+ 'personal_details' => 'Datos personales',
+ 'security' => 'Seguridad',
+ 'dashboard' => 'Panel',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/es/pagination.php b/lang/es/pagination.php
new file mode 100644
index 000000000..f8f044e19
--- /dev/null
+++ b/lang/es/pagination.php
@@ -0,0 +1,19 @@
+ '« Anterior',
+ 'next' => 'Siguiente »',
+
+];
diff --git a/lang/es/passwords.php b/lang/es/passwords.php
new file mode 100644
index 000000000..21f4f9af8
--- /dev/null
+++ b/lang/es/passwords.php
@@ -0,0 +1,11 @@
+ 'Tu contraseña ha sido restablecida.',
+ 'sent' => 'Te hemos enviado el enlace para restablecer tu contraseña por correo electrónico.',
+ 'throttled' => 'Por favor, espera antes de reintentarlo.',
+ 'token' => 'La clave de enlace para cambiar la contraseña no es válida.',
+ 'user' => 'No podemos encontrar un usuario con esa dirección de correo electrónico.',
+
+];
diff --git a/lang/es/product.php b/lang/es/product.php
new file mode 100644
index 000000000..0e4368870
--- /dev/null
+++ b/lang/es/product.php
@@ -0,0 +1,29 @@
+ 'Añadir al carrito',
+ 'view' => 'Ver',
+ 'checkout' => 'Completar pedido',
+ 'remove' => 'Eliminar',
+ 'empty_cart' => 'Tu carrito está vacío',
+ 'total_today' => 'Total hoy',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Después de :time',
+ 'order_summary' => 'Resumen del pedido',
+ 'edit' => 'Editar',
+
+ 'apply' => 'Aplicar',
+ 'price' => 'Precio',
+ 'setup_fee' => 'Tarifa de instalación',
+
+ 'in_stock' => 'En stock',
+ 'out_of_stock' => 'Producto :product está fuera de stock',
+ 'user_limit' => 'Has alcanzado el límite de :product',
+ 'payment_method' => 'Método de pago',
+ 'use_credits' => 'Usar créditos',
+ 'tos' => 'Yo acepto ',
+ 'tos_link' => 'Términos del Servicio',
+ 'tos_required' => 'Debes aceptar los Términos del Servicio',
+];
diff --git a/lang/es/services.php b/lang/es/services.php
new file mode 100644
index 000000000..99c1610f3
--- /dev/null
+++ b/lang/es/services.php
@@ -0,0 +1,32 @@
+ 'Servicios',
+ 'product' => 'Producto',
+ 'price' => 'Precio',
+ 'status' => 'Estado',
+ 'name' => 'Nombre',
+ 'actions' => 'Acciones',
+ 'view' => 'Ver',
+
+ 'product_details' => 'Detalles del producto',
+ 'billing_cycle' => 'Ciclo de facturación',
+ 'cancel' => 'Cancelar',
+ 'cancellation' => 'Cancelación de :service',
+ 'cancel_are_you_sure' => '¿Estás seguro de que quieres cancelar este servicio?',
+ 'cancel_reason' => 'Razón de la cancelación',
+ 'cancel_type' => 'Tipo de cancelación',
+ 'cancel_immediate' => 'Cancelar de inmediato',
+ 'cancel_end_of_period' => 'Cancelar al final del período de facturación',
+ 'cancel_immediate_warning' => 'Al pulsar el botón de abajo, el servicio se cancelará inmediatamente y ya no podrá utilizarlo.',
+ 'cancellation_requested' => 'Cancelación solicitada',
+
+ 'current_plan' => 'Plan actual',
+ 'new_plan' => 'Nuevo plan',
+ 'change_plan' => 'Cambiar plan',
+ 'current_price' => 'Precio actual',
+ 'new_price' => 'Nuevo precio',
+ 'upgrade' => 'Actualizar',
+ 'upgrade_summary' => 'Resumen de actualización',
+ 'total_today' => 'Total hoy',
+];
diff --git a/lang/es/ticket.php b/lang/es/ticket.php
new file mode 100644
index 000000000..e07a3f241
--- /dev/null
+++ b/lang/es/ticket.php
@@ -0,0 +1,25 @@
+ 'Detalles del ticket',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Asunto',
+ 'status' => 'Estado',
+ 'priority' => 'Prioridad',
+ 'department' => 'Departamento',
+ 'created_at' => 'Creado en',
+ 'reply' => 'Responder',
+
+ 'create_ticket' => 'Crear un ticket',
+ 'select_department' => 'Seleccionar Departamento',
+ 'select_priority' => 'Seleccionar Prioridad',
+ 'low' => 'Bajo',
+ 'medium' => 'Mediano',
+ 'high' => 'Alto',
+
+ 'last_activity' => 'Última actividad',
+
+ 'service' => 'Servicio',
+ 'select_service' => 'Seleccionar servicio',
+ 'create' => 'Crear',
+];
diff --git a/lang/es/validation.php b/lang/es/validation.php
new file mode 100644
index 000000000..26c499aae
--- /dev/null
+++ b/lang/es/validation.php
@@ -0,0 +1,192 @@
+ 'El campo :attribute debe ser aceptado.',
+ 'accepted_if' => 'El campo :attribute deber ser aceptado cuando :other sea :value.',
+ 'active_url' => 'El campo :attribute deber ser una URL válida.',
+ 'after' => 'El campo :attribute debe ser una fecha posterior a :date.',
+ 'after_or_equal' => 'El campo :attribute debe ser una fecha posterior o igual a :date.',
+ 'alpha' => 'El campo :attribute solo debe contener letras.',
+ 'alpha_dash' => 'El campo :attribute solo debe contener letras, números, guiones, y guiones bajos.',
+ 'alpha_num' => 'El campo :attribute solo debe contener letras y números.',
+ 'array' => 'El campo :attribute debe ser un array.',
+ 'ascii' => 'El campo :attribute solo debe contener símbolos y caracteres alfanuméricos de un solo-byte.',
+ 'before' => 'El campo :attribute debe ser una fecha anterior a :date.',
+ 'before_or_equal' => 'El campo :attribute debe ser una fecha anterior o igual a :date.',
+ 'between' => [
+ 'array' => 'El campo :attribute debe contener entre :min y :max elementos.',
+ 'file' => 'El campo :attribute debe estar entre :min y :max kilobytes.',
+ 'numeric' => 'El campo :attribute debe ser un valor entre :min y :max.',
+ 'string' => 'El campo :attribute tiene que tener entre :min - :max caracteres.',
+ ],
+ 'boolean' => 'El campo :attribute deber ser verdadero o falso.',
+ 'can' => 'El campo :attribute contiene un valor no autorizado.',
+ 'confirmed' => 'La confirmación del campo :attribute no coincide.',
+ 'current_password' => 'La contraseña es incorrecta.',
+ 'date' => 'El campo :attribute deber ser una fecha válida.',
+ 'date_equals' => 'El campo :attribute deber ser una fecha igual a :date.',
+ 'date_format' => 'El campo :attribute debe coincidir con el formato :format.',
+ 'decimal' => 'El campo :attribute debe tener :decimal cifras decimales.',
+ 'declined' => 'El campo :attribute debe ser rechazado.',
+ 'declined_if' => 'El campo :attribute debe ser rechazado cuando :other es :value.',
+ 'different' => 'Los campos :attribute y :other deben ser diferentes.',
+ 'digits' => 'El campo :attribute debe tener :digits dígitos.',
+ 'digits_between' => 'El campo :attribute debe tener entre :min y :max dígitos.',
+ 'dimensions' => 'Las dimensiones de la imagen :attribute no son válidas.',
+ 'distinct' => 'El campo :attribute tiene un valor duplicado.',
+ 'doesnt_end_with' => 'El campo :attribute no debe finalizar con uno de los siguientes: :values.',
+ 'doesnt_start_with' => 'El campo :attribute no debe comenzar con uno de los siguientes: :values.',
+ 'email' => 'El campo :attribute debe ser un correo electrónico válido.',
+ 'ends_with' => 'El campo :attribute debe finalizar con uno de los siguientes :values.',
+ 'enum' => 'El :attribute seleccionado no es válido.',
+ 'exists' => 'El :attribute seleccionado es inválido.',
+ 'extensions' => 'El campo :attribute debe tener una de las siguientes extensiones: :values.',
+ 'file' => 'El campo :attribute debe ser un archivo.',
+ 'filled' => 'El campo :attribute debe tener un valor.',
+ 'gt' => [
+ 'array' => 'El campo :attribute debe tener más de :value artículos.',
+ 'file' => 'El campo :attribute debe ser más de :value kilobytes.',
+ 'numeric' => 'El campo :attribute debe ser mayor que :value.',
+ 'string' => 'El campo :attribute debe ser mayor que :value caracteres.',
+ ],
+ 'gte' => [
+ 'array' => 'El campo :attribute debe tener :value artículos o más.',
+ 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than or equal to :value.',
+ 'string' => 'The :attribute field must be greater than or equal to :value characters.',
+ ],
+ 'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
+ 'image' => 'The :attribute field must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field must exist in :other.',
+ 'integer' => 'The :attribute field must be an integer.',
+ 'ip' => 'The :attribute field must be a valid IP address.',
+ 'ipv4' => 'The :attribute field must be a valid IPv4 address.',
+ 'ipv6' => 'The :attribute field must be a valid IPv6 address.',
+ 'json' => 'The :attribute field must be a valid JSON string.',
+ 'list' => 'The :attribute field must be a list.',
+ 'lowercase' => 'The :attribute field must be lowercase.',
+ 'lt' => [
+ 'array' => 'The :attribute field must have less than :value items.',
+ 'file' => 'The :attribute field must be less than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than :value.',
+ 'string' => 'The :attribute field must be less than :value characters.',
+ ],
+ 'lte' => [
+ 'array' => 'The :attribute field must not have more than :value items.',
+ 'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than or equal to :value.',
+ 'string' => 'The :attribute field must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'The :attribute field must be a valid MAC address.',
+ 'max' => [
+ 'array' => 'The :attribute field must not have more than :max items.',
+ 'file' => 'The :attribute field must not be greater than :max kilobytes.',
+ 'numeric' => 'The :attribute field must not be greater than :max.',
+ 'string' => 'The :attribute field must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'El campo :attribute no debe tener más de :max dígitos.',
+ 'mimes' => 'The :attribute field must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute field must be a file of type: :values.',
+ 'min' => [
+ 'array' => 'The :attribute field must have at least :min items.',
+ 'file' => 'The :attribute field must be at least :min kilobytes.',
+ 'numeric' => 'The :attribute field must be at least :min.',
+ 'string' => 'The :attribute field must be at least :min characters.',
+ ],
+ 'min_digits' => 'The :attribute field must have at least :min digits.',
+ 'missing' => 'The :attribute field must be missing.',
+ 'missing_if' => 'The :attribute field must be missing when :other is :value.',
+ 'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
+ 'missing_with' => 'The :attribute field must be missing when :values is present.',
+ 'missing_with_all' => 'The :attribute field must be missing when :values are present.',
+ 'multiple_of' => 'The :attribute field must be a multiple of :value.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute field format is invalid.',
+ 'numeric' => 'The :attribute field must be a number.',
+ 'password' => [
+ 'letters' => 'The :attribute field must contain at least one letter.',
+ 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
+ 'numbers' => 'The :attribute field must contain at least one number.',
+ 'symbols' => 'The :attribute field must contain at least one symbol.',
+ 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
+ ],
+ 'present' => 'The :attribute field must be present.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'The :attribute field is prohibited.',
+ 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'The :attribute field prohibits :other from being present.',
+ 'regex' => 'The :attribute field format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
+ 'same' => 'The :attribute field must match :other.',
+ 'size' => [
+ 'array' => 'The :attribute field must contain :size items.',
+ 'file' => 'The :attribute field must be :size kilobytes.',
+ 'numeric' => 'The :attribute field must be :size.',
+ 'string' => 'The :attribute field must be :size characters.',
+ ],
+ 'starts_with' => 'The :attribute field must start with one of the following: :values.',
+ 'string' => 'The :attribute field must be a string.',
+ 'timezone' => 'The :attribute field must be a valid timezone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'El :attribute no se ha podido subir.',
+ 'uppercase' => 'El campo :attribute debe estar en mayúscula.',
+ 'url' => 'El campo :attribute deber ser una URL válida.',
+ 'ulid' => 'El campo :attribute debe ser un ULID válido.',
+ 'uuid' => 'El campo :attribute debe ser un UUID válido.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'mensaje-personalizado ',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/fi/account.php b/lang/fi/account.php
new file mode 100644
index 000000000..356f36d56
--- /dev/null
+++ b/lang/fi/account.php
@@ -0,0 +1,52 @@
+ 'Käyttäjä',
+ 'personal_details' => 'Henkilökohtaiset tiedot',
+ 'security' => 'Turvallisuus',
+ 'credits' => 'Krediitit',
+
+ 'change_password' => 'Vaihda salasana',
+
+ 'two_factor_authentication' => 'Kaksivaiheinen tunnistautuminen',
+ 'two_factor_authentication_description' => 'Lisää ylimääräinen suojauskerros tilillesi ottamalla käyttöön kaksivaiheisen tunnistautumisen.',
+ 'two_factor_authentication_enabled' => 'Kaksivaiheinen todennus on käytössä tililläsi.',
+ 'two_factor_authentication_enable' => 'Ota käyttöön kaksivaiheinen tunnistautuminen',
+ 'two_factor_authentication_disable' => 'Poista käytöstä kaksivaiheinen tunnistautuminen',
+ 'two_factor_authentication_enable_description' => 'Ottaaksesi käyttöön kaksivaiheisen todennuksen, sinun täytyy skannata alla oleva QR-koodi autentikointisovelluksella, kuten Google Authenticator tai Authy.',
+ 'two_factor_authentication_qr_code' => 'Skannaa alla oleva QR-koodi tunnistautumissovelluksellasi:',
+ 'two_factor_authentication_secret' => 'Tai kirjoita seuraava koodi manuaalisesti:',
+
+ 'sessions' => 'Istunnot',
+ 'sessions_description' => 'Hallitse ja kirjaudu ulos aktiivisista istunnoistasi muissa selaimissa ja laitteissa.',
+ 'logout_sessions' => 'Kirjaudu ulos tästä istunnosta',
+
+ 'input' => [
+ 'current_password' => 'Nykyinen salasana',
+ 'current_password_placeholder' => 'Nykyinen salasanasi',
+ 'new_password' => 'Uusi salasana',
+ 'new_password_placeholder' => 'Sinun uusi salasanasi',
+ 'confirm_password' => 'Vahvista salasana',
+ 'confirm_password_placeholder' => 'Vahvista uusi salasanasi',
+
+ 'two_factor_code' => 'Syötä todennussovelluksen näyttämä koodi',
+ 'two_factor_code_placeholder' => 'Kaksivaiheinen tunnistautumiskoodi',
+
+ 'currency' => 'Valuutta',
+ 'amount' => 'Summa',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Salasanasi on vaihdettu.',
+ 'password_incorrect' => 'Nykyinen salasana on väärin.',
+ 'two_factor_enabled' => 'Kaksivaiheinen tunnistautuminen on otettu käyttöön.',
+ 'two_factor_disabled' => 'Kaksivaiheinen tunnistautuminen on poistettu käytöstä.',
+ 'two_factor_code_incorrect' => 'Koodi on virheellinen.',
+ 'session_logged_out' => 'Istunto on kirjauduttu ulos.',
+ ],
+
+ 'no_credit' => 'Sinulla ei ole yhtään krediittejä.',
+ 'add_credit' => 'Lisää krediittejä',
+ 'credit_deposit' => 'Krediittien talletus (:currency)',
+
+];
diff --git a/lang/fi/auth.php b/lang/fi/auth.php
new file mode 100644
index 000000000..44393cb88
--- /dev/null
+++ b/lang/fi/auth.php
@@ -0,0 +1,55 @@
+ 'Annettuja käyttäjätietoja ei löytynyt.',
+ 'password' => 'Annettu salasana on virheellinen.',
+ 'throttle' => 'Liian monta kirjautumisyritystä. Yritä uudelleen :seconds sekunnin kuluttua.',
+
+ 'sign_in' => 'Kirjaudu sisään',
+ 'sign_in_title' => 'Kirjaudu sisään tilillesi',
+ 'or_sign_in_with' => 'Tai kirjaudu käyttäen',
+ 'forgot_password' => 'Unohditko salasanasi?',
+ 'dont_have_account' => 'Eikö sinulla ole tiliä?',
+ 'already_have_account' => 'Onko sinulla jo tili?',
+
+ 'sign_up' => 'Rekisteröidy',
+ 'sign_up_title' => 'Luo tilisi',
+
+ 'logout' => 'Kirjaudu ulos',
+
+ 'input' => [
+ 'email' => 'Sähköposti',
+ 'email_label' => 'Sähköpostiosoite',
+ 'password' => 'Salasana',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Discord-tiliäsi ei ole vahvistettu.',
+ 'account_not_registered' => 'Et ole rekisteröitynyt tälle sivustolle.',
+ ],
+
+ 'reset_password' => 'Nollaa salasana',
+
+ 'verify_2fa' => 'Vahvista 2FA',
+ 'verify' => 'Vahvista',
+
+ 'verification' => [
+ 'notice' => 'Vahvista sähköpostiosoitteesi',
+ 'sent' => 'Uusi vahvistuslinkki on lähetetty sinun sähköpostiosoitteeseesi.',
+ 'check_your_email' => 'Ennen kuin jatkat, tarkista sähköpostisi vahvistuslinkiltä.',
+ 'not_received' => 'Jos et ole saanut sähköpostia, voit pyytää toisen vahvistussähköpostin.',
+ 'request_another' => 'Lähetä vahvistussähköposti uudelleen',
+ ],
+];
diff --git a/lang/fi/dashboard.php b/lang/fi/dashboard.php
new file mode 100644
index 000000000..65319c5b3
--- /dev/null
+++ b/lang/fi/dashboard.php
@@ -0,0 +1,11 @@
+ 'Kotinäkymä',
+ 'welcome_back' => 'Tervetuloa takaisin, :name!',
+ 'dashboard_description' => 'Hallitse aktiivisia palveluita, laskuja, tukipyyntöjä sekä pysy ajan tasalla täällä.',
+ 'open_tickets' => 'Avoimet tukipyynnöt',
+ 'unpaid_invoices' => 'Maksamattomat laskut',
+ 'active_services' => 'Aktiiviset palvelut',
+ 'view_all' => 'Näytä Kaikki',
+];
diff --git a/lang/fi/general.php b/lang/fi/general.php
new file mode 100644
index 000000000..f6ad7f5d0
--- /dev/null
+++ b/lang/fi/general.php
@@ -0,0 +1,36 @@
+ 'Näytä',
+
+ 'input' => [
+ 'first_name' => 'Etunimi',
+ 'first_name_placeholder' => 'Etunimesi',
+ 'last_name' => 'Sukunimi',
+ 'last_name_placeholder' => 'Sukunimesi',
+ 'email' => 'Sähköposti',
+ 'email_placeholder' => 'Sähköpostiosoitteesi',
+ 'phone' => 'Puhelinnumero',
+ 'phone_placeholder' => 'Puhelinnumerosi',
+ 'company_name' => 'Yrityksen nimi',
+ 'company_name_placeholder' => 'Yrityksesi nimi',
+ 'country' => 'Maa',
+ 'country_placeholder' => 'Sinun maasi',
+ 'city' => 'Paikkakunta',
+ 'city_placeholder' => 'Paikkakuntasi',
+ 'address' => 'Osoite',
+ 'address_placeholder' => 'Osoitteesi',
+ 'address2' => 'Osoite 2',
+ 'address2_placeholder' => 'Osoitteesi 2',
+ 'zip' => 'Postinumero',
+ 'zip_placeholder' => 'Sinun postinumerosi',
+ 'state' => 'Osavaltio',
+ 'state_placeholder' => 'Osavaltiosi',
+
+ 'password' => 'Salasana',
+ 'password_placeholder' => 'Salasanasi',
+ ],
+
+ 'all_rights_reserved' => 'Kaikki oikeudet pidätetään.',
+ 'update' => 'Päivitä',
+];
diff --git a/lang/fi/invoices.php b/lang/fi/invoices.php
new file mode 100644
index 000000000..a35cb708e
--- /dev/null
+++ b/lang/fi/invoices.php
@@ -0,0 +1,33 @@
+ 'Laskut',
+ 'product' => 'Tuote',
+ 'price' => 'Hinta',
+ 'status' => 'Tilanne',
+ 'actions' => 'Toiminnot',
+ 'view' => 'Näytä',
+ 'id' => 'Tunnus',
+ 'total' => 'Yhteensä',
+ 'subtotal' => 'Välisumma',
+ 'invoice' => 'Lasku #:id',
+ 'unit_price' => 'Yksikköhinta',
+ 'bill_to' => 'Laskutusosoite',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Maksettu',
+ 'payment_pending' => 'Odottaa maksua',
+ 'checking_payment' => 'Checking Payment',
+ 'invoice_date' => 'Laskun päiväys',
+ 'invoice_no' => 'Laskun nro',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Tuote',
+ 'quantity' => 'Määrä',
+ 'transactions' => 'Maksutapahtumat',
+ 'transaction_id' => 'Tapahtuman tunnus',
+ 'gateway' => 'Välittäjä',
+ 'payment_date' => 'Maksupäivä',
+ 'payment_method' => 'Maksutapa',
+ 'amount' => 'Summa',
+ 'date' => 'Päivämäärä',
+];
diff --git a/lang/fi/navigation.php b/lang/fi/navigation.php
new file mode 100644
index 000000000..366b302bb
--- /dev/null
+++ b/lang/fi/navigation.php
@@ -0,0 +1,17 @@
+ 'Koti',
+ 'shop' => 'Kauppa',
+ 'cart' => 'Ostoskori',
+ 'login' => 'Kirjaudu sisään',
+ 'register' => 'Rekisteröidy',
+ 'services' => 'Palvelut',
+ 'invoices' => 'Laskut',
+ 'account' => 'Käyttäjätili',
+ 'personal_details' => 'Omat tiedot',
+ 'security' => 'Turvallisuus',
+ 'dashboard' => 'Kotinäkymä',
+ 'tickets' => 'Tukipyynnöt',
+ 'admin' => 'Ylläpitäjä',
+];
diff --git a/lang/fi/pagination.php b/lang/fi/pagination.php
new file mode 100644
index 000000000..1650dd370
--- /dev/null
+++ b/lang/fi/pagination.php
@@ -0,0 +1,19 @@
+ '« Edellinen',
+ 'next' => 'Seuraava »',
+
+];
diff --git a/lang/fi/passwords.php b/lang/fi/passwords.php
new file mode 100644
index 000000000..cd1a095b5
--- /dev/null
+++ b/lang/fi/passwords.php
@@ -0,0 +1,11 @@
+ 'Salasanasi on vaihdettu.',
+ 'sent' => 'Olemme lähettäneet salasanan nollauslinkin sähköpostiisi.',
+ 'throttled' => 'Odota hetki ennen kuin yrität uudelleen.',
+ 'token' => 'Salasanan palautusavain on virheellinen.',
+ 'user' => 'Emme löydä käyttäjää, jolla on kyseinen sähköpostiosoite.',
+
+];
diff --git a/lang/fi/product.php b/lang/fi/product.php
new file mode 100644
index 000000000..ee329220a
--- /dev/null
+++ b/lang/fi/product.php
@@ -0,0 +1,29 @@
+ 'Lisää ostoskoriin',
+ 'view' => 'Näytä',
+ 'checkout' => 'Ostoskori',
+ 'remove' => 'Poista',
+ 'empty_cart' => 'Ostoskorisi on tyhjä',
+ 'total_today' => 'Yhteensä tänään',
+ 'subtotal' => 'Välisumma',
+ 'total' => 'Yhteensä',
+
+ 'then_after_x' => ':time jälkeen',
+ 'order_summary' => 'Tilauksen yhteenveto',
+ 'edit' => 'Muokkaa',
+
+ 'apply' => 'Käytä',
+ 'price' => 'Hinta',
+ 'setup_fee' => 'Asennusmaksu',
+
+ 'in_stock' => 'Varastossa',
+ 'out_of_stock' => 'Tuote :product on loppunut varastosta',
+ 'user_limit' => 'Olet saavuttanut :product tuotteen maksimirajan',
+ 'payment_method' => 'Payment method',
+ 'use_credits' => 'Use credits',
+ 'tos' => 'I agree to the ',
+ 'tos_link' => 'Terms of Service',
+ 'tos_required' => 'You must agree to the Terms of Service',
+];
diff --git a/lang/fi/services.php b/lang/fi/services.php
new file mode 100644
index 000000000..ea7adbad7
--- /dev/null
+++ b/lang/fi/services.php
@@ -0,0 +1,32 @@
+ 'Palvelut',
+ 'product' => 'Tuote',
+ 'price' => 'Hinta',
+ 'status' => 'Tilanne',
+ 'name' => 'Nimi',
+ 'actions' => 'Toiminnot',
+ 'view' => 'Näytä',
+
+ 'product_details' => 'Tuotetiedot',
+ 'billing_cycle' => 'Laskutusjakso',
+ 'cancel' => 'Peruuta',
+ 'cancellation' => 'Palvelun :service peruminen',
+ 'cancel_are_you_sure' => 'Oletko varma, että haluat perua tämän palvelen?',
+ 'cancel_reason' => 'Perumisen syy',
+ 'cancel_type' => 'Perumisen tyyppi',
+ 'cancel_immediate' => 'Peruuta välittömästi',
+ 'cancel_end_of_period' => 'Peruuta tilaus laskutusjakson päättyessä',
+ 'cancel_immediate_warning' => 'Kun painat alla olevaa painiketta, palvelu perutaan välittömästi, etkä voi enää käyttää sitä.',
+ 'cancellation_requested' => 'Peruutusta pyydetty',
+
+ 'current_plan' => 'Tämänhetkinen tilaus',
+ 'new_plan' => 'Uusi tilaus',
+ 'change_plan' => 'Muuta tilausta',
+ 'current_price' => 'Nykyinen hinta',
+ 'new_price' => 'Uusi hinta',
+ 'upgrade' => 'Päivitä',
+ 'upgrade_summary' => 'Päivityksen yhteenveto',
+ 'total_today' => 'Yhteensä tänään',
+];
diff --git a/lang/fi/ticket.php b/lang/fi/ticket.php
new file mode 100644
index 000000000..43280e03d
--- /dev/null
+++ b/lang/fi/ticket.php
@@ -0,0 +1,25 @@
+ 'Tukipyynnön tiedot',
+ 'tickets' => 'Tukipyynnöt',
+ 'subject' => 'Aihe',
+ 'status' => 'Tilanne',
+ 'priority' => 'Prioriteetti',
+ 'department' => 'Osasto',
+ 'created_at' => 'Luotu',
+ 'reply' => 'Vastaa',
+
+ 'create_ticket' => 'Luo uusi tukipyyntö',
+ 'select_department' => 'Valitse osasto',
+ 'select_priority' => 'Valitse pioriteetti',
+ 'low' => 'Alhainen',
+ 'medium' => 'Keskikokoinen',
+ 'high' => 'Korkea',
+
+ 'last_activity' => 'Viimeisin tapahtuma',
+
+ 'service' => 'Palvelu',
+ 'select_service' => 'Valitse palvelu',
+ 'create' => 'Luo',
+];
diff --git a/lang/fi/validation.php b/lang/fi/validation.php
new file mode 100644
index 000000000..aea190d40
--- /dev/null
+++ b/lang/fi/validation.php
@@ -0,0 +1,192 @@
+ 'The :attribute field must be accepted.',
+ 'accepted_if' => 'The :attribute field must be accepted when :other is :value.',
+ 'active_url' => 'The :attribute field must be a valid URL.',
+ 'after' => 'The :attribute field must be a date after :date.',
+ 'after_or_equal' => 'The :attribute field must be a date after or equal to :date.',
+ 'alpha' => 'The :attribute field must only contain letters.',
+ 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.',
+ 'alpha_num' => 'The :attribute field must only contain letters and numbers.',
+ 'array' => 'The :attribute field must be an array.',
+ 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.',
+ 'before' => 'The :attribute field must be a date before :date.',
+ 'before_or_equal' => 'The :attribute field must be a date before or equal to :date.',
+ 'between' => [
+ 'array' => 'The :attribute field must have between :min and :max items.',
+ 'file' => 'The :attribute field must be between :min and :max kilobytes.',
+ 'numeric' => 'The :attribute field must be between :min and :max.',
+ 'string' => 'The :attribute field must be between :min and :max characters.',
+ ],
+ 'boolean' => 'The :attribute field must be true or false.',
+ 'can' => 'The :attribute field contains an unauthorized value.',
+ 'confirmed' => 'The :attribute field confirmation does not match.',
+ 'current_password' => 'The password is incorrect.',
+ 'date' => 'The :attribute field must be a valid date.',
+ 'date_equals' => 'The :attribute field must be a date equal to :date.',
+ 'date_format' => 'The :attribute field must match the format :format.',
+ 'decimal' => 'The :attribute field must have :decimal decimal places.',
+ 'declined' => 'The :attribute field must be declined.',
+ 'declined_if' => 'The :attribute field must be declined when :other is :value.',
+ 'different' => 'The :attribute field and :other must be different.',
+ 'digits' => 'The :attribute field must be :digits digits.',
+ 'digits_between' => 'The :attribute field must be between :min and :max digits.',
+ 'dimensions' => 'The :attribute field has invalid image dimensions.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.',
+ 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.',
+ 'email' => 'The :attribute field must be a valid email address.',
+ 'ends_with' => 'The :attribute field must end with one of the following: :values.',
+ 'enum' => 'The selected :attribute is invalid.',
+ 'exists' => 'The selected :attribute is invalid.',
+ 'extensions' => 'The :attribute field must have one of the following extensions: :values.',
+ 'file' => 'The :attribute field must be a file.',
+ 'filled' => 'The :attribute field must have a value.',
+ 'gt' => [
+ 'array' => 'The :attribute field must have more than :value items.',
+ 'file' => 'The :attribute field must be greater than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than :value.',
+ 'string' => 'The :attribute field must be greater than :value characters.',
+ ],
+ 'gte' => [
+ 'array' => 'The :attribute field must have :value items or more.',
+ 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than or equal to :value.',
+ 'string' => 'The :attribute field must be greater than or equal to :value characters.',
+ ],
+ 'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
+ 'image' => 'The :attribute field must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field must exist in :other.',
+ 'integer' => 'The :attribute field must be an integer.',
+ 'ip' => 'The :attribute field must be a valid IP address.',
+ 'ipv4' => 'The :attribute field must be a valid IPv4 address.',
+ 'ipv6' => 'The :attribute field must be a valid IPv6 address.',
+ 'json' => 'The :attribute field must be a valid JSON string.',
+ 'list' => 'The :attribute field must be a list.',
+ 'lowercase' => 'The :attribute field must be lowercase.',
+ 'lt' => [
+ 'array' => 'The :attribute field must have less than :value items.',
+ 'file' => 'The :attribute field must be less than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than :value.',
+ 'string' => 'The :attribute field must be less than :value characters.',
+ ],
+ 'lte' => [
+ 'array' => 'The :attribute field must not have more than :value items.',
+ 'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than or equal to :value.',
+ 'string' => 'The :attribute field must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'The :attribute field must be a valid MAC address.',
+ 'max' => [
+ 'array' => 'The :attribute field must not have more than :max items.',
+ 'file' => 'The :attribute field must not be greater than :max kilobytes.',
+ 'numeric' => 'The :attribute field must not be greater than :max.',
+ 'string' => 'The :attribute field must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'The :attribute field must not have more than :max digits.',
+ 'mimes' => 'The :attribute field must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute field must be a file of type: :values.',
+ 'min' => [
+ 'array' => 'The :attribute field must have at least :min items.',
+ 'file' => 'The :attribute field must be at least :min kilobytes.',
+ 'numeric' => 'The :attribute field must be at least :min.',
+ 'string' => 'The :attribute field must be at least :min characters.',
+ ],
+ 'min_digits' => 'The :attribute field must have at least :min digits.',
+ 'missing' => 'The :attribute field must be missing.',
+ 'missing_if' => 'The :attribute field must be missing when :other is :value.',
+ 'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
+ 'missing_with' => 'The :attribute field must be missing when :values is present.',
+ 'missing_with_all' => 'The :attribute field must be missing when :values are present.',
+ 'multiple_of' => 'The :attribute field must be a multiple of :value.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute field format is invalid.',
+ 'numeric' => 'The :attribute field must be a number.',
+ 'password' => [
+ 'letters' => 'The :attribute field must contain at least one letter.',
+ 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
+ 'numbers' => 'The :attribute field must contain at least one number.',
+ 'symbols' => 'The :attribute field must contain at least one symbol.',
+ 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
+ ],
+ 'present' => 'The :attribute field must be present.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'The :attribute field is prohibited.',
+ 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'The :attribute field prohibits :other from being present.',
+ 'regex' => 'The :attribute field format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
+ 'same' => 'The :attribute field must match :other.',
+ 'size' => [
+ 'array' => 'The :attribute field must contain :size items.',
+ 'file' => 'The :attribute field must be :size kilobytes.',
+ 'numeric' => 'The :attribute field must be :size.',
+ 'string' => 'The :attribute field must be :size characters.',
+ ],
+ 'starts_with' => 'The :attribute field must start with one of the following: :values.',
+ 'string' => 'The :attribute field must be a string.',
+ 'timezone' => 'The :attribute field must be a valid timezone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'The :attribute failed to upload.',
+ 'uppercase' => 'The :attribute field must be uppercase.',
+ 'url' => 'The :attribute field must be a valid URL.',
+ 'ulid' => 'The :attribute field must be a valid ULID.',
+ 'uuid' => 'The :attribute field must be a valid UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'custom-message',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/fr/account.php b/lang/fr/account.php
new file mode 100644
index 000000000..63b804a57
--- /dev/null
+++ b/lang/fr/account.php
@@ -0,0 +1,52 @@
+ 'Compte',
+ 'personal_details' => 'Détails personnels',
+ 'security' => 'Sécurité',
+ 'credits' => 'Crédits',
+
+ 'change_password' => 'Modifier le mot de passe',
+
+ 'two_factor_authentication' => 'Double authentification',
+ 'two_factor_authentication_description' => 'Ajoutez un niveau de sécurité supplémentaire à votre compte en activant la double authentification.',
+ 'two_factor_authentication_enabled' => 'La double authentification est maintenant activée pour votre compte.',
+ 'two_factor_authentication_enable' => 'Activer la double authentification',
+ 'two_factor_authentication_disable' => 'Désactiver la double authentification',
+ 'two_factor_authentication_enable_description' => 'Pour activer la double authentification, vous devez scanner le QR code ci-dessous avec une application d\'authentification comme Google Authenticator ou Authy.',
+ 'two_factor_authentication_qr_code' => 'Scannez le QR code ci-dessous avec votre app d\'authentification :',
+ 'two_factor_authentication_secret' => 'Ou saisissez le code suivant manuellement :',
+
+ 'sessions' => 'Sessions',
+ 'sessions_description' => 'Gérer et déconnecter vos sessions actives sur les autres navigateurs et appareils.',
+ 'logout_sessions' => 'Déconnecter cette session',
+
+ 'input' => [
+ 'current_password' => 'Mot de passe actuel',
+ 'current_password_placeholder' => 'Votre mot de passe actuel',
+ 'new_password' => 'Nouveau mot de passe',
+ 'new_password_placeholder' => 'Votre nouveau mot de passe',
+ 'confirm_password' => 'Confirmation du mot de passe',
+ 'confirm_password_placeholder' => 'Confirmez votre nouveau mot de passe',
+
+ 'two_factor_code' => 'Entrez le code de votre application d\'authentification',
+ 'two_factor_code_placeholder' => 'Votre code de double authentification',
+
+ 'currency' => 'Devise',
+ 'amount' => 'Montant',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Le mot de passe a été modifié.',
+ 'password_incorrect' => 'Le mot de passe actuel est incorrect.',
+ 'two_factor_enabled' => 'La double authentification a été activée.',
+ 'two_factor_disabled' => 'La double authentification a été désactivée.',
+ 'two_factor_code_incorrect' => 'Le code est incorrect.',
+ 'session_logged_out' => 'La session a été déconnectée.',
+ ],
+
+ 'no_credit' => 'Vous n\'avez aucun crédit.',
+ 'add_credit' => 'Ajouter des crédits',
+ 'credit_deposit' => 'Déposer des crédits (:currency)',
+
+];
diff --git a/lang/fr/auth.php b/lang/fr/auth.php
new file mode 100644
index 000000000..4625767a1
--- /dev/null
+++ b/lang/fr/auth.php
@@ -0,0 +1,55 @@
+ 'Ces identifiants n\'existent pas dans notre base.',
+ 'password' => 'Le mot de passe saisi est incorrect.',
+ 'throttle' => 'Trop de tentatives de connexion. S’il vous plaît essayer à nouveau dans :seconds secondes.',
+
+ 'sign_in' => 'Connexion',
+ 'sign_in_title' => 'Connectez-vous à votre compte',
+ 'or_sign_in_with' => 'Ou connectez-vous avec',
+ 'forgot_password' => 'Mot de passe oublié ?',
+ 'dont_have_account' => 'Vous n\'avez pas de compte ?',
+ 'already_have_account' => 'Vous avez déjà un compte ?',
+
+ 'sign_up' => 'Inscription',
+ 'sign_up_title' => 'Créez votre compte',
+
+ 'logout' => 'Déconnexion',
+
+ 'input' => [
+ 'email' => 'E-mail',
+ 'email_label' => 'Adresse mail',
+ 'password' => 'Mot de passe',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Votre compte Discord n\'est pas vérifié.',
+ 'account_not_registered' => 'Vous n\'êtes pas inscrit sur ce site.',
+ ],
+
+ 'reset_password' => 'Réinitialiser le mot de passe',
+
+ 'verify_2fa' => 'Vérifier l’authentification 2FA',
+ 'verify' => 'Vérifier',
+
+ 'verification' => [
+ 'notice' => 'Vérifiez votre adresse e-mail',
+ 'sent' => 'Un nouveau lien de vérification a été envoyé sur votre adresse e-mail.',
+ 'check_your_email' => 'Avant de continuer, veuillez vérifier vos emails, vous devriez avoir reçu un lien de vérification.',
+ 'not_received' => 'Si vous n\'avez pas reçu l\'e-mail, vous pouvez demander un autre e-mail de vérification.',
+ 'request_another' => 'Renvoyer un mail de vérification',
+ ],
+];
diff --git a/lang/fr/dashboard.php b/lang/fr/dashboard.php
new file mode 100644
index 000000000..aa3e87da9
--- /dev/null
+++ b/lang/fr/dashboard.php
@@ -0,0 +1,11 @@
+ 'Tableau de bord',
+ 'welcome_back' => 'Heureux de vous revoir, :name !',
+ 'dashboard_description' => 'Gérez vos services actifs, vos factures, vos tickets et obtenez les dernières informations ici.',
+ 'open_tickets' => 'Tickets Ouverts',
+ 'unpaid_invoices' => 'Factures impayées',
+ 'active_services' => 'Services Actifs',
+ 'view_all' => 'Voir tout',
+];
diff --git a/lang/fr/general.php b/lang/fr/general.php
new file mode 100644
index 000000000..2c609ca06
--- /dev/null
+++ b/lang/fr/general.php
@@ -0,0 +1,36 @@
+ 'Afficher',
+
+ 'input' => [
+ 'first_name' => 'Prénom',
+ 'first_name_placeholder' => 'Votre prénom',
+ 'last_name' => 'Nom de famille',
+ 'last_name_placeholder' => 'Votre nom',
+ 'email' => 'E-mail',
+ 'email_placeholder' => 'Votre adresse e-mail',
+ 'phone' => 'Téléphone',
+ 'phone_placeholder' => 'Numéro de téléphone',
+ 'company_name' => 'Nom de la société',
+ 'company_name_placeholder' => 'Le nom de votre société',
+ 'country' => 'Pays',
+ 'country_placeholder' => 'Votre pays',
+ 'city' => 'Ville',
+ 'city_placeholder' => 'Votre ville',
+ 'address' => 'Adresse',
+ 'address_placeholder' => 'Votre adresse',
+ 'address2' => 'Adresse 2',
+ 'address2_placeholder' => 'Votre adresse 2',
+ 'zip' => 'Code postal',
+ 'zip_placeholder' => 'Votre code postal',
+ 'state' => 'Région',
+ 'state_placeholder' => 'Votre région',
+
+ 'password' => 'Mot de passe',
+ 'password_placeholder' => 'Votre mot de passe',
+ ],
+
+ 'all_rights_reserved' => 'Tous droits réservés.',
+ 'update' => 'Mettre à jour',
+];
diff --git a/lang/fr/invoices.php b/lang/fr/invoices.php
new file mode 100644
index 000000000..43712e10f
--- /dev/null
+++ b/lang/fr/invoices.php
@@ -0,0 +1,33 @@
+ 'Factures',
+ 'product' => 'Produit',
+ 'price' => 'Prix',
+ 'status' => 'État',
+ 'actions' => 'Actions',
+ 'view' => 'Afficher',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Sous-total',
+ 'invoice' => 'Facture #:id',
+ 'unit_price' => 'Prix unitaire',
+ 'bill_to' => 'Facturer à',
+ 'issued_to' => 'Adresser à',
+ 'paid' => 'Payé',
+ 'payment_pending' => 'Paiement en attente',
+ 'checking_payment' => 'Vérification du paiement',
+ 'invoice_date' => 'Date de facturation',
+ 'invoice_no' => 'N° de facture',
+ 'tax_id' => 'ID d\'impôt',
+ 'company_id' => 'ID d\'entreprise',
+ 'item' => 'Articles',
+ 'quantity' => 'Quantité',
+ 'transactions' => 'Transactions',
+ 'transaction_id' => 'ID de la Transaction',
+ 'gateway' => 'Plateforme de paiement',
+ 'payment_date' => 'Date du paiement',
+ 'payment_method' => 'Mode de paiement',
+ 'amount' => 'Montant',
+ 'date' => 'Date',
+];
diff --git a/lang/fr/navigation.php b/lang/fr/navigation.php
new file mode 100644
index 000000000..18a05f783
--- /dev/null
+++ b/lang/fr/navigation.php
@@ -0,0 +1,17 @@
+ 'Accueil',
+ 'shop' => 'Boutique',
+ 'cart' => 'Panier',
+ 'login' => 'Connexion',
+ 'register' => 'S\'inscrire',
+ 'services' => 'Services',
+ 'invoices' => 'Factures',
+ 'account' => 'Compte',
+ 'personal_details' => 'Informations personnelles',
+ 'security' => 'Sécurité',
+ 'dashboard' => 'Tableau de bord',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/fr/pagination.php b/lang/fr/pagination.php
new file mode 100644
index 000000000..8eff37464
--- /dev/null
+++ b/lang/fr/pagination.php
@@ -0,0 +1,19 @@
+ '« Précédent',
+ 'next' => 'Suivant »',
+
+];
diff --git a/lang/fr/passwords.php b/lang/fr/passwords.php
new file mode 100644
index 000000000..1cb5bb9a1
--- /dev/null
+++ b/lang/fr/passwords.php
@@ -0,0 +1,11 @@
+ 'Votre mot de passe a été réinitialisé.',
+ 'sent' => 'Nous avons envoyé par mail votre lien de réinitialisation de mot de passe.',
+ 'throttled' => 'Veuillez patienter avant de réessayer.',
+ 'token' => 'Le jeton de réinitialisation de mot de passe est invalide.',
+ 'user' => "Nous n'avons pas trouvé d'utilisateur lié à cette adresse mail.",
+
+];
diff --git a/lang/fr/product.php b/lang/fr/product.php
new file mode 100644
index 000000000..8fbde025b
--- /dev/null
+++ b/lang/fr/product.php
@@ -0,0 +1,29 @@
+ 'Ajouter au panier',
+ 'view' => 'Afficher',
+ 'checkout' => 'Paiement',
+ 'remove' => 'Retirer',
+ 'empty_cart' => 'Votre panier est vide',
+ 'total_today' => 'Montant total aujourd\'hui',
+ 'subtotal' => 'Sous-total',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Ensuite, après :time',
+ 'order_summary' => 'Récapitulatif de la commande',
+ 'edit' => 'Éditer',
+
+ 'apply' => 'Appliquer',
+ 'price' => 'Prix',
+ 'setup_fee' => 'Frais d\'installation',
+
+ 'in_stock' => 'En stock',
+ 'out_of_stock' => 'Le produit :product est en rupture de stock',
+ 'user_limit' => 'Vous avez atteint la limite de :product',
+ 'payment_method' => 'Méthode de paiement',
+ 'use_credits' => 'Utiliser des crédits',
+ 'tos' => 'J\'accepte les ',
+ 'tos_link' => 'Conditions générales d\'utilisation',
+ 'tos_required' => 'Vous devez accepter les conditions d\'utilisation',
+];
diff --git a/lang/fr/services.php b/lang/fr/services.php
new file mode 100644
index 000000000..a574774ce
--- /dev/null
+++ b/lang/fr/services.php
@@ -0,0 +1,32 @@
+ 'Services',
+ 'product' => 'Produit',
+ 'price' => 'Prix',
+ 'status' => 'État',
+ 'name' => 'Nom',
+ 'actions' => 'Actions',
+ 'view' => 'Afficher',
+
+ 'product_details' => 'Détails du produit',
+ 'billing_cycle' => 'Cycle de facturation',
+ 'cancel' => 'Annuler',
+ 'cancellation' => 'Annulation de :service',
+ 'cancel_are_you_sure' => 'Êtes-vous sûr de vouloir annuler ce service ?',
+ 'cancel_reason' => 'Raison de l\'annulation',
+ 'cancel_type' => 'Type d’annulation',
+ 'cancel_immediate' => 'Annuler immédiatement',
+ 'cancel_end_of_period' => 'Annuler à la fin de la période de facturation',
+ 'cancel_immediate_warning' => 'Lorsque vous appuyez sur le bouton ci-dessous, le service sera annulé immédiatement et vous ne pourrez plus l\'utiliser.',
+ 'cancellation_requested' => 'Annulation demandée',
+
+ 'current_plan' => 'Abonnement actuel',
+ 'new_plan' => 'Nouvel abonnement',
+ 'change_plan' => 'Changer d\'abonnement',
+ 'current_price' => 'Prix actuel',
+ 'new_price' => 'Nouveau prix',
+ 'upgrade' => 'Mettre à niveau',
+ 'upgrade_summary' => 'Résumé de la mise à niveau',
+ 'total_today' => 'Total aujourd\'hui',
+];
diff --git a/lang/fr/ticket.php b/lang/fr/ticket.php
new file mode 100644
index 000000000..ca27320a7
--- /dev/null
+++ b/lang/fr/ticket.php
@@ -0,0 +1,25 @@
+ 'Détails du ticket',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Sujet',
+ 'status' => 'Status',
+ 'priority' => 'Priorité',
+ 'department' => 'Service',
+ 'created_at' => 'Créé le',
+ 'reply' => 'Répondre',
+
+ 'create_ticket' => 'Créer un ticket',
+ 'select_department' => 'Sélectionnez le service',
+ 'select_priority' => 'Sélectionnez la priorité',
+ 'low' => 'Basse',
+ 'medium' => 'Moyenne',
+ 'high' => 'Élevée',
+
+ 'last_activity' => 'Dernière activité',
+
+ 'service' => 'Service',
+ 'select_service' => 'Sélectionnez le service',
+ 'create' => 'Créer',
+];
diff --git a/lang/fr/validation.php b/lang/fr/validation.php
new file mode 100644
index 000000000..95c2b13a6
--- /dev/null
+++ b/lang/fr/validation.php
@@ -0,0 +1,192 @@
+ 'Le champ :attribute doit être accepté.',
+ 'accepted_if' => 'Le champ :attribute doit être accepté lorsque :other est :value.',
+ 'active_url' => 'Le champ :attribute doit être une URL valide.',
+ 'after' => 'Le champ :attribute doit être une date après le :date.',
+ 'after_or_equal' => 'Le champ :attribute doit être une date postérieure ou égale au :date.',
+ 'alpha' => 'Le champ :attribute doit contenir uniquement des lettres.',
+ 'alpha_dash' => 'Le champ :attribute ne doit contenir que des lettres, des chiffres, des tirets et des traits de soulignement.',
+ 'alpha_num' => 'Le champ :attribut ne doit contenir que des lettres et des chiffres.',
+ 'array' => 'Le champ :attribute doit être un tableau.',
+ 'ascii' => 'Le champ :attribute ne doit contenir que des caractères alphanumériques et des symboles d\'un seul octet.',
+ 'before' => 'Le champ :attribute doit être une date antérieure à :date.',
+ 'before_or_equal' => 'Le champ :attribute doit être une date avant ou égale au :date.',
+ 'between' => [
+ 'array' => 'Le champ :attribute doit comporter entre :min et :max éléments.',
+ 'file' => 'La taille du fichier de :attribute doit être comprise entre :min et :max kilo-octets.',
+ 'numeric' => 'Le champ :attribute doit être compris entre :min et :max.',
+ 'string' => 'Le champ :attribute doit contenir entre :min et :max caractères.',
+ ],
+ 'boolean' => 'Le champ :attribute doit être vrai ou faux.',
+ 'can' => 'Le champ :attribute contient une valeur non autorisée.',
+ 'confirmed' => 'La confirmation du champ :attribute ne correspond pas.',
+ 'current_password' => 'Le mot de passe est incorrect.',
+ 'date' => 'Le champ :attribute doit être une date valide.',
+ 'date_equals' => 'Le champ :attribute doit être une date égale à :date.',
+ 'date_format' => 'Le champ :attribute doit correspondre au format :format.',
+ 'decimal' => 'Le champ :attribute doit avoir :decimal chiffres après la virgule.',
+ 'declined' => 'Le champ :attribute doit être refusé.',
+ 'declined_if' => 'Le champ :attribute doit être refusé quand :other a la valeur :value.',
+ 'different' => 'Le champ :attribute et :other doivent être différents.',
+ 'digits' => 'Le champ :attribute doit être composé de :digits chiffres.',
+ 'digits_between' => 'Le champ :attribute doit être compris entre :min et :max chiffres.',
+ 'dimensions' => 'Le champ :attribute a des dimensions d\'image non valides.',
+ 'distinct' => 'Le champ :attribute a une valeur dupliquée.',
+ 'doesnt_end_with' => 'Le champ :attribute ne doit pas se terminer avec une des valeurs suivantes : :values.',
+ 'doesnt_start_with' => 'Le champ :attribute ne doit pas commencer par l\'une des valeurs suivantes : :values.',
+ 'email' => 'Le champ :attribute doit être une adresse mail valide.',
+ 'ends_with' => 'Le champ :attribute doit se terminer par l\'un des éléments suivants : :values.',
+ 'enum' => 'Le champ :attribute sélectionné est invalide.',
+ 'exists' => 'Le champ :attribute sélectionné est invalide.',
+ 'extensions' => 'Le champ :attribute doit avoir une des extensions suivantes : :values.',
+ 'file' => 'Le champ :attribute doit être un fichier.',
+ 'filled' => 'Le champ :attribute doit avoir une valeur.',
+ 'gt' => [
+ 'array' => 'Le champ :attribute doit avoir plus de :value objets.',
+ 'file' => 'La taille du fichier de :attribute doit être supérieure à :value kilo-octets.',
+ 'numeric' => 'La valeur du champ :attribute doit être supérieure à :value.',
+ 'string' => 'Le champ :attribute doit contenir plus de :value caractères.',
+ ],
+ 'gte' => [
+ 'array' => 'Le champ :attribute doit contenir des éléments :value ou plus.',
+ 'file' => 'La taille du fichier de :attribute doit être supérieure ou égale à :value kilo-octets.',
+ 'numeric' => 'Le champ :attribute doit être supérieur ou égal à :value.',
+ 'string' => 'Le champ :attribute doit être supérieur ou égal aux caractères :value.',
+ ],
+ 'hex_color' => 'Le champ :attribute doit être un code couleur hexadécimal valide.',
+ 'image' => 'Le champ :attribute doit être une image.',
+ 'in' => 'Le champ :attribute sélectionné est invalide.',
+ 'in_array' => 'Le champ :attribute doit exister dans :other.',
+ 'integer' => 'Le champ :attribute doit être un nombre entier.',
+ 'ip' => 'Le champ :attribute doit être une adresse IP valide.',
+ 'ipv4' => 'Le champ :attribute doit être une adresse IPv4 valide.',
+ 'ipv6' => 'Le champ :attribute doit être une adresse IPv6 valide.',
+ 'json' => 'Le champ :attribute doit être un fichier JSON valide.',
+ 'list' => 'Le champ :attribute doit être une liste.',
+ 'lowercase' => 'Le champ :attribute doit être en minuscule.',
+ 'lt' => [
+ 'array' => 'Le tableau :attribute doit contenir moins de :value éléments.',
+ 'file' => 'La taille du fichier de :attribute doit être inférieure à :value kilo-octets.',
+ 'numeric' => 'La valeur de :attribute doit être inférieure à :value.',
+ 'string' => 'Le texte :attribute doit contenir moins de :value caractères.',
+ ],
+ 'lte' => [
+ 'array' => 'Le champ :attribute ne doit pas avoir plus de :value éléments.',
+ 'file' => 'Le champ :attribute doit être inférieur ou égal à :value kilo-octets.',
+ 'numeric' => 'Le champ :attribute doit être inférieur ou égal à :value.',
+ 'string' => 'Le champ :attribute doit être inférieur ou égal à :value caractères.',
+ ],
+ 'mac_address' => 'Le champ :attribute doit être une adresse MAC valide.',
+ 'max' => [
+ 'array' => 'Le tableau :attribute ne peut pas contenir plus que :max éléments.',
+ 'file' => 'Le champ :attribute ne doit pas être supérieur à :max kilo-octets.',
+ 'numeric' => 'Le champ :attribute ne doit pas être supérieur à :max.',
+ 'string' => 'Le champ :attribute ne doit pas dépasser :max caractères.',
+ ],
+ 'max_digits' => 'Le champ :attribute ne doit pas contenir plus de :max chiffres.',
+ 'mimes' => 'Le champ :attribute doit être un fichier de type : :values.',
+ 'mimetypes' => 'Le champ :attribute doit être un fichier de type : :values.',
+ 'min' => [
+ 'array' => 'Le tableau :attribute doit contenir au moins :min éléments.',
+ 'file' => 'Le champ :attribute doit avoir une taille minimale de :min kilo-octets.',
+ 'numeric' => 'Le champ :attribute doit être d\'au moins :min.',
+ 'string' => 'Le champ :attribute doit contenir au moins :min caractères.',
+ ],
+ 'min_digits' => 'Le champ :attribute doit comporter au moins :min chiffres.',
+ 'missing' => 'Le champ :attribute est vide.',
+ 'missing_if' => 'Le champ :attribute doit être vide quand :other a la valeur :value.',
+ 'missing_unless' => 'Le champ :attribute doit être vide tant que :other n\'est pas :value.',
+ 'missing_with' => 'Le champ :attribute doit être vide lorsque :values est présent.',
+ 'missing_with_all' => 'Le champ :attribute doit être vide lorsque :values est présent.',
+ 'multiple_of' => 'Le champ :attribute doit être un multiple de :value.',
+ 'not_in' => 'Le champ :attribute sélectionné est invalide.',
+ 'not_regex' => 'Le format du champ :attribute n\'est pas valide.',
+ 'numeric' => 'Le champ :attribute doit contenir un nombre.',
+ 'password' => [
+ 'letters' => 'Le champ :attribute doit contenir au moins une lettre.',
+ 'mixed' => 'Le champ :attribute doit contenir au moins une lettre majuscule et une lettre minuscule.',
+ 'numbers' => 'Le champ :attribute doit contenir au moins un chiffre.',
+ 'symbols' => 'Le champ :attribute doit contenir au moins un symbole.',
+ 'uncompromised' => 'La valeur du champ :attribute est apparue dans une fuite de données. Veuillez choisir une valeur différente.',
+ ],
+ 'present' => 'Le champ :attribute doit être présent.',
+ 'present_if' => 'Le champ :attribute doit être présent quand :other est :value.',
+ 'present_unless' => 'Le champ :attribute doit être présent sauf si :other est :value.',
+ 'present_with' => 'Le champ :attribute doit être présent quand :values est présent.',
+ 'present_with_all' => 'Le champ :attribute doit être présent lorsque :values sont présents.',
+ 'prohibited' => 'Le champ :attribute est interdit.',
+ 'prohibited_if' => 'Le champ :attribute est interdit lorsque :other vaut :value.',
+ 'prohibited_unless' => 'Le champ :attribute est interdit à moins que :other est l\'une des valeurs :values.',
+ 'prohibits' => 'Le champ :attribute interdit la présence de :other.',
+ 'regex' => 'Le format du champ :attribute n\'est pas valide.',
+ 'required' => 'Le champ :attribute est requis.',
+ 'required_array_keys' => 'Le champ :attribute doit contenir des entrées pour : :values.',
+ 'required_if' => 'Le champ :attribute est obligatoire quand la valeur de :other est :value.',
+ 'required_if_accepted' => 'Le champ :attribute est obligatoire quand le champ :other a été accepté.',
+ 'required_unless' => 'Le champ :attribute est requis à moins que :other ne soit en :values.',
+ 'required_with' => 'Le champ :attribute est requis quand :values est présent.',
+ 'required_with_all' => 'Le champ :attribute est obligatoire lorsque :values est présent.',
+ 'required_without' => 'Le champ :attribute est obligatoire quand :values n\'est pas présent.',
+ 'required_without_all' => 'Le champ de l\'attribut :attribute est nécessaire lorsque aucun :values n\'est présent.',
+ 'same' => 'Le champ :attribute doit correspondre à :other.',
+ 'size' => [
+ 'array' => 'Le tableau :attribute doit contenir :size éléments.',
+ 'file' => 'La taille du fichier de :attribute doit être de :size kilo-octets.',
+ 'numeric' => 'La valeur du champ :attribute doit être de :size.',
+ 'string' => 'Le champ :attribute doit être :size caractères.',
+ ],
+ 'starts_with' => 'Le champ :attribute doit commencer par l\'une des valeurs suivantes : :values.',
+ 'string' => 'Le champ :attribute doit être une chaîne de caractères.',
+ 'timezone' => 'Le champ :attribute doit être un fuseau horaire valide.',
+ 'unique' => 'La valeur du champ :attribute est déjà utilisée.',
+ 'uploaded' => 'L\'envoi de :attribute à échoué.',
+ 'uppercase' => 'Le champ :attribute doit être en majuscules.',
+ 'url' => 'Le champ :attribute doit être une URL valide.',
+ 'ulid' => 'Le champ :attribute doit être un ULID valide.',
+ 'uuid' => 'Le champ :attribute doit être une UUID valide.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'message personnalisé',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/hi/account.php b/lang/hi/account.php
new file mode 100644
index 000000000..9ad9fc4f4
--- /dev/null
+++ b/lang/hi/account.php
@@ -0,0 +1,52 @@
+ 'खाता',
+ 'personal_details' => 'व्यक्तिगत विवरण',
+ 'security' => 'सुरक्षा',
+ 'credits' => 'क्रेडिट्स',
+
+ 'change_password' => 'पासवर्ड बदलें',
+
+ 'two_factor_authentication' => 'दो-चरणीय प्रमाणीकरण',
+ 'two_factor_authentication_description' => 'दो-चरणीय प्रमाणीकरण सक्षम करके अपने खाते की सुरक्षा को और मजबूत करें।',
+ 'two_factor_authentication_enabled' => 'आपके खाते के लिए दो-चरणीय प्रमाणीकरण सक्षम है।',
+ 'two_factor_authentication_enable' => 'दो-चरणीय प्रमाणीकरण सक्षम करें',
+ 'two_factor_authentication_disable' => 'दो-चरणीय प्रमाणीकरण अक्षम करें',
+ 'two_factor_authentication_enable_description' => 'दो-चरणीय प्रमाणीकरण सक्षम करने के लिए, नीचे दिए गए QR कोड को Google Authenticator या Authy जैसे ऐप से स्कैन करें।',
+ 'two_factor_authentication_qr_code' => 'अपने प्रमाणीकरण ऐप से नीचे दिए गए QR कोड को स्कैन करें:',
+ 'two_factor_authentication_secret' => 'या नीचे दिए गए कोड को मैन्युअली दर्ज करें:',
+
+ 'sessions' => 'सेशंस',
+ 'sessions_description' => 'अन्य ब्राउज़र और डिवाइस पर अपनी सक्रिय सेशंस को प्रबंधित करें और लॉग आउट करें।',
+ 'logout_sessions' => 'इस सेशन को लॉग आउट करें',
+
+ 'input' => [
+ 'current_password' => 'वर्तमान पासवर्ड',
+ 'current_password_placeholder' => 'आपका वर्तमान पासवर्ड',
+ 'new_password' => 'नया पासवर्ड',
+ 'new_password_placeholder' => 'आपका नया पासवर्ड',
+ 'confirm_password' => 'पासवर्ड की पुष्टि करें',
+ 'confirm_password_placeholder' => 'अपने नए पासवर्ड की पुष्टि करें',
+
+ 'two_factor_code' => 'अपने प्रमाणीकरण ऐप से कोड दर्ज करें',
+ 'two_factor_code_placeholder' => 'आपका दो-चरणीय प्रमाणीकरण कोड',
+
+ 'currency' => 'मुद्रा',
+ 'amount' => 'राशि',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'पासवर्ड बदल दिया गया है।',
+ 'password_incorrect' => 'वर्तमान पासवर्ड गलत है।',
+ 'two_factor_enabled' => 'दो-चरणीय प्रमाणीकरण सक्षम किया गया है।',
+ 'two_factor_disabled' => 'दो-चरणीय प्रमाणीकरण अक्षम कर दिया गया है।',
+ 'two_factor_code_incorrect' => 'कोड गलत है।',
+ 'session_logged_out' => 'सेशन को लॉग आउट कर दिया गया है।',
+ ],
+
+ 'no_credit' => 'आपके पास कोई क्रेडिट नहीं है।',
+ 'add_credit' => 'क्रेडिट जोड़ें',
+ 'credit_deposit' => 'क्रेडिट जमा (:currency)',
+
+];
diff --git a/lang/hi/auth.php b/lang/hi/auth.php
new file mode 100644
index 000000000..6f61c9946
--- /dev/null
+++ b/lang/hi/auth.php
@@ -0,0 +1,55 @@
+ 'ये प्रमाण-पत्र हमारे रिकॉर्ड से मेल नहीं खाते।',
+ 'password' => 'दिया गया पासवर्ड गलत है।',
+ 'throttle' => 'बहुत अधिक लॉगिन प्रयास किए गए हैं। कृपया :seconds सेकंड में पुनः प्रयास करें।',
+
+ 'sign_in' => 'साइन इन करें',
+ 'sign_in_title' => 'अपने खाते में साइन इन करें',
+ 'or_sign_in_with' => 'या इससे साइन इन करें',
+ 'forgot_password' => 'पासवर्ड भूल गए?',
+ 'dont_have_account' => 'क्या आपका खाता नहीं है?',
+ 'already_have_account' => 'क्या पहले से खाता है?',
+
+ 'sign_up' => 'साइन अप करें',
+ 'sign_up_title' => 'अपना खाता बनाएं',
+
+ 'logout' => 'लॉगआउट',
+
+ 'input' => [
+ 'email' => 'ईमेल',
+ 'email_label' => 'ईमेल पता',
+ 'password' => 'पासवर्ड',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'आपका Discord खाता सत्यापित नहीं है।',
+ 'account_not_registered' => 'आप इस साइट पर पंजीकृत नहीं हैं।',
+ ],
+
+ 'reset_password' => 'पासवर्ड रीसेट करें',
+
+ 'verify_2fa' => '2FA सत्यापित करें',
+ 'verify' => 'सत्यापित करें',
+
+ 'verification' => [
+ 'notice' => 'अपना ईमेल पता सत्यापित करें',
+ 'sent' => 'आपके ईमेल पते पर एक नया सत्यापन लिंक भेजा गया है।',
+ 'check_your_email' => 'आगे बढ़ने से पहले, कृपया अपने ईमेल में सत्यापन लिंक की जांच करें।',
+ 'not_received' => 'यदि आपको ईमेल प्राप्त नहीं हुआ है, तो आप एक और सत्यापन ईमेल का अनुरोध कर सकते हैं।',
+ 'request_another' => 'सत्यापन ईमेल पुनः भेजें',
+ ],
+];
diff --git a/lang/hi/dashboard.php b/lang/hi/dashboard.php
new file mode 100644
index 000000000..cf5985449
--- /dev/null
+++ b/lang/hi/dashboard.php
@@ -0,0 +1,11 @@
+ 'डैशबोर्ड',
+ 'welcome_back' => 'वापसी पर स्वागत है, :name!',
+ 'dashboard_description' => 'अपने सक्रिय सेवाओं, इनवॉइस, टिकट्स को प्रबंधित करें और यहां अपडेट रहें।',
+ 'open_tickets' => 'खुले टिकट्स',
+ 'unpaid_invoices' => 'बकाया इनवॉइस',
+ 'active_services' => 'सक्रिय सेवाएं',
+ 'view_all' => 'सभी देखें',
+];
diff --git a/lang/hi/general.php b/lang/hi/general.php
new file mode 100644
index 000000000..3cfad4211
--- /dev/null
+++ b/lang/hi/general.php
@@ -0,0 +1,36 @@
+ 'देखें',
+
+ 'input' => [
+ 'first_name' => 'पहला नाम',
+ 'first_name_placeholder' => 'आपका पहला नाम',
+ 'last_name' => 'अंतिम नाम',
+ 'last_name_placeholder' => 'आपका अंतिम नाम',
+ 'email' => 'ईमेल',
+ 'email_placeholder' => 'आपका ईमेल पता',
+ 'phone' => 'फ़ोन',
+ 'phone_placeholder' => 'आपका फ़ोन नंबर',
+ 'company_name' => 'कंपनी का नाम',
+ 'company_name_placeholder' => 'आपकी कंपनी का नाम',
+ 'country' => 'देश',
+ 'country_placeholder' => 'आपका देश',
+ 'city' => 'शहर',
+ 'city_placeholder' => 'आपका शहर',
+ 'address' => 'पता',
+ 'address_placeholder' => 'आपका पता',
+ 'address2' => 'पता 2',
+ 'address2_placeholder' => 'आपका दूसरा पता',
+ 'zip' => 'ज़िप कोड',
+ 'zip_placeholder' => 'आपका ज़िप कोड',
+ 'state' => 'राज्य',
+ 'state_placeholder' => 'आपका राज्य',
+
+ 'password' => 'पासवर्ड',
+ 'password_placeholder' => 'आपका पासवर्ड',
+ ],
+
+ 'all_rights_reserved' => 'सर्वाधिकार सुरक्षित।',
+ 'update' => 'अपडेट करें',
+];
diff --git a/lang/hi/invoices.php b/lang/hi/invoices.php
new file mode 100644
index 000000000..7b11b9d2e
--- /dev/null
+++ b/lang/hi/invoices.php
@@ -0,0 +1,33 @@
+ 'इनवॉइस',
+ 'product' => 'उत्पाद',
+ 'price' => 'मूल्य',
+ 'status' => 'स्थिति',
+ 'actions' => 'क्रियाएं',
+ 'view' => 'देखें',
+ 'id' => 'आईडी',
+ 'total' => 'कुल',
+ 'subtotal' => 'उप-योग',
+ 'invoice' => 'इनवॉइस #:id',
+ 'unit_price' => 'इकाई मूल्य',
+ 'bill_to' => 'बिल प्राप्तकर्ता',
+ 'issued_to' => 'प्राप्तकर्ता',
+ 'paid' => 'भुगतान किया गया',
+ 'payment_pending' => 'भुगतान लंबित',
+ 'checking_payment' => 'भुगतान की जाँच की जा रही है',
+ 'invoice_date' => 'इनवॉइस तिथि',
+ 'invoice_no' => 'इनवॉइस नंबर',
+ 'tax_id' => 'टैक्स आईडी',
+ 'company_id' => 'कंपनी आईडी',
+ 'item' => 'आइटम',
+ 'quantity' => 'मात्रा',
+ 'transactions' => 'लेन-देन',
+ 'transaction_id' => 'लेन-देन आईडी',
+ 'gateway' => 'गेटवे',
+ 'payment_date' => 'भुगतान तिथि',
+ 'payment_method' => 'भुगतान का तरीका',
+ 'amount' => 'राशि',
+ 'date' => 'तारीख',
+];
diff --git a/lang/hi/navigation.php b/lang/hi/navigation.php
new file mode 100644
index 000000000..986152682
--- /dev/null
+++ b/lang/hi/navigation.php
@@ -0,0 +1,17 @@
+ 'होम',
+ 'shop' => 'दुकान',
+ 'cart' => 'कार्ट',
+ 'login' => 'लॉगिन',
+ 'register' => 'रजिस्टर',
+ 'services' => 'सेवाएं',
+ 'invoices' => 'इनवॉइस',
+ 'account' => 'खाता',
+ 'personal_details' => 'व्यक्तिगत विवरण',
+ 'security' => 'सुरक्षा',
+ 'dashboard' => 'डैशबोर्ड',
+ 'tickets' => 'टिकट्स',
+ 'admin' => 'एडमिन',
+];
diff --git a/lang/hi/pagination.php b/lang/hi/pagination.php
new file mode 100644
index 000000000..6d016d464
--- /dev/null
+++ b/lang/hi/pagination.php
@@ -0,0 +1,19 @@
+ '« पिछला',
+ 'next' => 'अगला »',
+
+];
diff --git a/lang/hi/passwords.php b/lang/hi/passwords.php
new file mode 100644
index 000000000..49605949d
--- /dev/null
+++ b/lang/hi/passwords.php
@@ -0,0 +1,11 @@
+ 'आपका पासवर्ड रीसेट कर दिया गया है।',
+ 'sent' => 'हमने आपके पासवर्ड रीसेट लिंक को ईमेल कर दिया है।',
+ 'throttled' => 'कृपया पुनः प्रयास करने से पहले प्रतीक्षा करें।',
+ 'token' => 'यह पासवर्ड रीसेट टोकन अमान्य है।',
+ 'user' => 'हम उस ईमेल पते से कोई उपयोगकर्ता नहीं ढूंढ पाए।',
+
+];
diff --git a/lang/hi/product.php b/lang/hi/product.php
new file mode 100644
index 000000000..35667f757
--- /dev/null
+++ b/lang/hi/product.php
@@ -0,0 +1,29 @@
+ 'कार्ट में जोड़ें',
+ 'view' => 'देखें',
+ 'checkout' => 'चेकआउट',
+ 'remove' => 'हटाएं',
+ 'empty_cart' => 'आपका कार्ट खाली है',
+ 'total_today' => 'आज का कुल',
+ 'subtotal' => 'उप-योग',
+ 'total' => 'कुल',
+
+ 'then_after_x' => 'फिर :time के बाद',
+ 'order_summary' => 'ऑर्डर सारांश',
+ 'edit' => 'संपादित करें',
+
+ 'apply' => 'लागू करें',
+ 'price' => 'मूल्य',
+ 'setup_fee' => 'सेटअप शुल्क',
+
+ 'in_stock' => 'स्टॉक में उपलब्ध',
+ 'out_of_stock' => 'उत्पाद :product स्टॉक से बाहर है',
+ 'user_limit' => 'आपने :product की सीमा तक पहुंच प्राप्त कर ली है',
+ 'payment_method' => 'भुगतान विधि',
+ 'use_credits' => 'क्रेडिट का उपयोग करें',
+ 'tos' => 'मैं सहमत हूँ ',
+ 'tos_link' => 'सेवा की शर्तें',
+ 'tos_required' => 'आपको सेवा की शर्तों से सहमत होना होगा',
+];
diff --git a/lang/hi/services.php b/lang/hi/services.php
new file mode 100644
index 000000000..2d88094d5
--- /dev/null
+++ b/lang/hi/services.php
@@ -0,0 +1,32 @@
+ 'सेवाएँ',
+ 'product' => 'उत्पाद',
+ 'price' => 'मूल्य',
+ 'status' => 'स्थिति',
+ 'name' => 'नाम',
+ 'actions' => 'कार्य',
+ 'view' => 'देखें',
+
+ 'product_details' => 'उत्पाद विवरण',
+ 'billing_cycle' => 'बिलिंग चक्र',
+ 'cancel' => 'रद्द करें',
+ 'cancellation' => ':service की रद्दीकरण',
+ 'cancel_are_you_sure' => 'क्या आप सच में इस सेवा को रद्द करना चाहते हैं?',
+ 'cancel_reason' => 'रद्द करने का कारण',
+ 'cancel_type' => 'रद्दीकरण प्रकार',
+ 'cancel_immediate' => 'तुरंत रद्द करें',
+ 'cancel_end_of_period' => 'बिलिंग अवधि के अंत में रद्द करें',
+ 'cancel_immediate_warning' => 'नीचे दिए गए बटन को दबाने पर सेवा तुरंत रद्द हो जाएगी और आप इसे फिर से उपयोग नहीं कर पाएंगे।',
+ 'cancellation_requested' => 'रद्दीकरण अनुरोध किया गया',
+
+ 'current_plan' => 'वर्तमान योजना',
+ 'new_plan' => 'नई योजना',
+ 'change_plan' => 'योजना बदलें',
+ 'current_price' => 'वर्तमान मूल्य',
+ 'new_price' => 'नई मूल्य',
+ 'upgrade' => 'उन्नति',
+ 'upgrade_summary' => 'उन्नति सारांश',
+ 'total_today' => 'आज का कुल',
+];
diff --git a/lang/hi/ticket.php b/lang/hi/ticket.php
new file mode 100644
index 000000000..4af460c0b
--- /dev/null
+++ b/lang/hi/ticket.php
@@ -0,0 +1,25 @@
+ 'टिकट विवरण',
+ 'tickets' => 'टिकट्स',
+ 'subject' => 'विषय',
+ 'status' => 'स्थिति',
+ 'priority' => 'प्राथमिकता',
+ 'department' => 'विभाग',
+ 'created_at' => 'निर्मित समय',
+ 'reply' => 'उत्तर',
+
+ 'create_ticket' => 'टिकट बनाएं',
+ 'select_department' => 'विभाग चुनें',
+ 'select_priority' => 'प्राथमिकता चुनें',
+ 'low' => 'कम',
+ 'medium' => 'मध्यम',
+ 'high' => 'उच्च',
+
+ 'last_activity' => 'अंतिम गतिविधि',
+
+ 'service' => 'सेवा',
+ 'select_service' => 'सेवा चुनें',
+ 'create' => 'बनाएं',
+];
diff --git a/lang/hi/validation.php b/lang/hi/validation.php
new file mode 100644
index 000000000..0ac23054e
--- /dev/null
+++ b/lang/hi/validation.php
@@ -0,0 +1,192 @@
+ ':attribute फ़ील्ड को स्वीकार किया जाना चाहिए।',
+ 'accepted_if' => ':attribute फ़ील्ड को स्वीकार किया जाना चाहिए जब :other :value हो।',
+ 'active_url' => ':attribute फ़ील्ड एक वैध URL होना चाहिए।',
+ 'after' => ':attribute फ़ील्ड को :date के बाद की तिथि होनी चाहिए।',
+ 'after_or_equal' => ':attribute फ़ील्ड को :date के बाद या बराबर की तिथि होनी चाहिए।',
+ 'alpha' => ':attribute फ़ील्ड में केवल अक्षर होने चाहिए।',
+ 'alpha_dash' => ':attribute फ़ील्ड में केवल अक्षर, संख्याएँ, डैश और अंडरस्कोर होने चाहिए।',
+ 'alpha_num' => ':attribute फ़ील्ड में केवल अक्षर और संख्याएँ होनी चाहिए।',
+ 'array' => ':attribute फ़ील्ड को एक ऐरे होना चाहिए।',
+ 'ascii' => ':attribute फ़ील्ड में केवल एकल-बाइट अल्फ़ान्यूमेरिक कैरेक्टर और प्रतीक होने चाहिए।',
+ 'before' => ':attribute फ़ील्ड को :date से पहले की तिथि होनी चाहिए।',
+ 'before_or_equal' => ':attribute फ़ील्ड को :date से पहले या बराबर की तिथि होनी चाहिए।',
+ 'between' => [
+ 'array' => ':attribute फ़ील्ड में :min और :max आइटम होने चाहिए।',
+ 'file' => ':attribute फ़ील्ड का आकार :min और :max किलोबाइट्स के बीच होना चाहिए।',
+ 'numeric' => ':attribute फ़ील्ड :min और :max के बीच होना चाहिए।',
+ 'string' => ':attribute फ़ील्ड में :min और :max कैरेक्टर होने चाहिए।',
+ ],
+ 'boolean' => ':attribute फ़ील्ड को सही या गलत होना चाहिए।',
+ 'can' => ':attribute फ़ील्ड में एक अवैध मान है।',
+ 'confirmed' => ':attribute फ़ील्ड की पुष्टि मेल नहीं खाती।',
+ 'current_password' => 'पासवर्ड गलत है।',
+ 'date' => ':attribute फ़ील्ड एक वैध तिथि होनी चाहिए।',
+ 'date_equals' => ':attribute फ़ील्ड को :date के बराबर की तिथि होनी चाहिए।',
+ 'date_format' => ':attribute फ़ील्ड को :format प्रारूप से मेल खाना चाहिए।',
+ 'decimal' => ':attribute फ़ील्ड में :decimal दशमलव स्थान होने चाहिए।',
+ 'declined' => ':attribute फ़ील्ड को अस्वीकार किया जाना चाहिए।',
+ 'declined_if' => ':attribute फ़ील्ड को अस्वीकार किया जाना चाहिए जब :other :value हो।',
+ 'different' => ':attribute फ़ील्ड और :other अलग होने चाहिए।',
+ 'digits' => ':attribute फ़ील्ड में :digits अंक होने चाहिए।',
+ 'digits_between' => ':attribute फ़ील्ड में :min और :max अंक होने चाहिए।',
+ 'dimensions' => ':attribute फ़ील्ड का चित्र आयाम अवैध है।',
+ 'distinct' => ':attribute फ़ील्ड में एक डुप्लिकेट मान है।',
+ 'doesnt_end_with' => ':attribute फ़ील्ड को निम्नलिखित में से किसी के साथ समाप्त नहीं होना चाहिए: :values।',
+ 'doesnt_start_with' => ':attribute फ़ील्ड को निम्नलिखित में से किसी के साथ शुरू नहीं होना चाहिए: :values।',
+ 'email' => ':attribute फ़ील्ड एक वैध ईमेल पता होना चाहिए।',
+ 'ends_with' => ':attribute फ़ील्ड को निम्नलिखित में से किसी के साथ समाप्त होना चाहिए: :values।',
+ 'enum' => 'चुना गया :attribute अवैध है।',
+ 'exists' => 'चुना गया :attribute अवैध है।',
+ 'extensions' => ':attribute फ़ील्ड को निम्नलिखित एक्सटेंशन में से एक होना चाहिए: :values।',
+ 'file' => ':attribute फ़ील्ड को एक फ़ाइल होना चाहिए।',
+ 'filled' => ':attribute फ़ील्ड में एक मान होना चाहिए।',
+ 'gt' => [
+ 'array' => ':attribute फ़ील्ड में :value से अधिक आइटम होने चाहिए।',
+ 'file' => ':attribute फ़ील्ड का आकार :value किलोबाइट्स से अधिक होना चाहिए।',
+ 'numeric' => ':attribute फ़ील्ड :value से अधिक होना चाहिए।',
+ 'string' => ':attribute फ़ील्ड में :value से अधिक कैरेक्टर होने चाहिए।',
+ ],
+ 'gte' => [
+ 'array' => ':attribute फ़ील्ड में :value या अधिक आइटम होने चाहिए।',
+ 'file' => ':attribute फ़ील्ड का आकार :value किलोबाइट्स या अधिक होना चाहिए।',
+ 'numeric' => ':attribute फ़ील्ड :value या अधिक होना चाहिए।',
+ 'string' => ':attribute फ़ील्ड में :value या अधिक कैरेक्टर होने चाहिए।',
+ ],
+ 'hex_color' => ':attribute फ़ील्ड एक वैध हेक्साडेसिमल रंग होना चाहिए।',
+ 'image' => ':attribute फ़ील्ड एक चित्र होना चाहिए।',
+ 'in' => 'चुना गया :attribute अवैध है।',
+ 'in_array' => ':attribute फ़ील्ड को :other में होना चाहिए।',
+ 'integer' => ':attribute फ़ील्ड को एक पूर्णांक होना चाहिए।',
+ 'ip' => ':attribute फ़ील्ड को एक वैध IP पता होना चाहिए।',
+ 'ipv4' => ':attribute फ़ील्ड को एक वैध IPv4 पता होना चाहिए।',
+ 'ipv6' => ':attribute फ़ील्ड को एक वैध IPv6 पता होना चाहिए।',
+ 'json' => ':attribute फ़ील्ड को एक वैध JSON स्ट्रिंग होना चाहिए।',
+ 'list' => ':attribute फ़ील्ड को एक सूची होना चाहिए।',
+ 'lowercase' => ':attribute फ़ील्ड को लोअरकेस होना चाहिए।',
+ 'lt' => [
+ 'array' => ':attribute फ़ील्ड में :value से कम आइटम होने चाहिए।',
+ 'file' => ':attribute फ़ील्ड का आकार :value किलोबाइट्स से कम होना चाहिए।',
+ 'numeric' => ':attribute फ़ील्ड :value से कम होना चाहिए।',
+ 'string' => ':attribute फ़ील्ड में :value से कम कैरेक्टर होने चाहिए।',
+ ],
+ 'lte' => [
+ 'array' => ':attribute फ़ील्ड में :value या कम आइटम होने चाहिए।',
+ 'file' => ':attribute फ़ील्ड का आकार :value किलोबाइट्स या कम होना चाहिए।',
+ 'numeric' => ':attribute फ़ील्ड :value या कम होना चाहिए।',
+ 'string' => ':attribute फ़ील्ड में :value या कम कैरेक्टर होने चाहिए।',
+ ],
+ 'mac_address' => ':attribute फ़ील्ड को एक वैध MAC पता होना चाहिए।',
+ 'max' => [
+ 'array' => ':attribute फ़ील्ड में :max से अधिक आइटम नहीं होने चाहिए।',
+ 'file' => ':attribute फ़ील्ड का आकार :max किलोबाइट्स से अधिक नहीं होना चाहिए।',
+ 'numeric' => ':attribute फ़ील्ड :max से अधिक नहीं होना चाहिए।',
+ 'string' => ':attribute फ़ील्ड में :max से अधिक कैरेक्टर नहीं होने चाहिए।',
+ ],
+ 'max_digits' => ':attribute फ़ील्ड में :max से अधिक अंक नहीं होने चाहिए।',
+ 'mimes' => ':attribute फ़ील्ड को प्रकार की फ़ाइल होनी चाहिए: :values।',
+ 'mimetypes' => ':attribute फ़ील्ड को प्रकार की फ़ाइल होनी चाहिए: :values।',
+ 'min' => [
+ 'array' => ':attribute फ़ील्ड में कम से कम :min आइटम होने चाहिए।',
+ 'file' => ':attribute फ़ील्ड का आकार कम से कम :min किलोबाइट्स होना चाहिए।',
+ 'numeric' => ':attribute फ़ील्ड कम से कम :min होना चाहिए।',
+ 'string' => ':attribute फ़ील्ड में कम से कम :min कैरेक्टर होने चाहिए।',
+ ],
+ 'min_digits' => ':attribute फ़ील्ड में कम से कम :min अंक होने चाहिए।',
+ 'missing' => ':attribute फ़ील्ड गायब होना चाहिए।',
+ 'missing_if' => ':attribute फ़ील्ड गायब होना चाहिए जब :other :value हो।',
+ 'missing_unless' => ':attribute फ़ील्ड गायब होना चाहिए जब तक :other :value न हो।',
+ 'missing_with' => ':attribute फ़ील्ड गायब होना चाहिए जब :values मौजूद हों।',
+ 'missing_with_all' => ':attribute फ़ील्ड गायब होना चाहिए जब :values मौजूद हों।',
+ 'multiple_of' => ':attribute फ़ील्ड को :value का गुणांक होना चाहिए।',
+ 'not_in' => 'चुना गया :attribute अवैध है।',
+ 'not_regex' => ':attribute फ़ील्ड का प्रारूप अवैध है।',
+ 'numeric' => ':attribute फ़ील्ड को एक संख्या होना चाहिए।',
+ 'password' => [
+ 'letters' => ':attribute फ़ील्ड में कम से कम एक अक्षर होना चाहिए।',
+ 'mixed' => ':attribute फ़ील्ड में कम से कम एक बड़ा और एक छोटा अक्षर होना चाहिए।',
+ 'numbers' => ':attribute फ़ील्ड में कम से कम एक अंक होना चाहिए।',
+ 'symbols' => ':attribute फ़ील्ड में कम से कम एक प्रतीक होना चाहिए।',
+ 'uncompromised' => 'दिया गया :attribute पहले ही उल्लंघन में है। कृपया एक अलग :attribute चुनें।',
+ ],
+ 'present' => ':attribute फ़ील्ड मौजूद होना चाहिए।',
+ 'present_if' => 'जब :other :value हो तो :attribute फ़ील्ड अवश्य मौजूद होना चाहिए।',
+ 'present_unless' => ':attribute फ़ील्ड तब तक मौजूद रहना चाहिए जब तक :other :value न हो।',
+ 'present_with' => ':values मौजूद होने पर :attribute फ़ील्ड मौजूद होना चाहिए।',
+ 'present_with_all' => 'जब :values मौजूद हों तो :attribute फ़ील्ड मौजूद होना चाहिए.जब :values मौजूद हों तो :attribute फ़ील्ड मौजूद होना चाहिए.',
+ 'prohibited' => ':attribute फ़ील्ड प्रतिबंधित है।',
+ 'prohibited_if' => ':attribute फ़ील्ड को :other के :value होने पर प्रतिबंधित किया गया है।',
+ 'prohibited_unless' => ':attribute फ़ील्ड को :other के :value होने तक प्रतिबंधित किया गया है।',
+ 'prohibits' => ':attribute फ़ील्ड :other को उपस्थित होने से रोकता है।',
+ 'regex' => ':attribute फ़ील्ड का प्रारूप अवैध है।',
+ 'required' => ':attribute फ़ील्ड आवश्यक है।',
+ 'required_array_keys' => ':attribute फ़ील्ड में :values के लिए प्रविष्टियाँ होनी चाहिए।',
+ 'required_if' => ':attribute फ़ील्ड आवश्यक है जब :other :value हो।',
+ 'required_if_accepted' => 'जब :other स्वीकार किया जाता है तो :attribute फ़ील्ड आवश्यक है।',
+ 'required_unless' => ':attribute फ़ील्ड आवश्यक है जब तक :other :value न हो।',
+ 'required_with' => ':attribute फ़ील्ड आवश्यक है जब :values मौजूद हों।',
+ 'required_with_all' => ':attribute फ़ील्ड आवश्यक है जब :values मौजूद हों।',
+ 'required_without' => ':attribute फ़ील्ड आवश्यक है जब :values मौजूद न हों।',
+ 'required_without_all' => ':attribute फ़ील्ड आवश्यक है जब कोई भी :values मौजूद न हों।',
+ 'same' => ':attribute और :other मेल खाने चाहिए।',
+ 'size' => [
+ 'array' => ':attribute फ़ील्ड में :size आइटम होने चाहिए।',
+ 'file' => ':attribute फ़ील्ड का आकार :size किलोबाइट्स होना चाहिए।',
+ 'numeric' => ':attribute फ़ील्ड :size होना चाहिए।',
+ 'string' => ':attribute फ़ील्ड में :size कैरेक्टर होने चाहिए।',
+ ],
+ 'starts_with' => ':attribute फ़ील्ड को निम्नलिखित में से किसी के साथ शुरू होना चाहिए: :values।',
+ 'string' => ':attribute फ़ील्ड को एक स्ट्रिंग होना चाहिए।',
+ 'timezone' => ':attribute फ़ील्ड एक वैध टाइम ज़ोन होना चाहिए।',
+ 'unique' => ':attribute पहले ही लिया जा चुका है।',
+ 'uploaded' => ':attribute को अपलोड करने में विफल।',
+ 'uppercase' => ':attribute फ़ील्ड बड़े अक्षरों में होनी चाहिए।',
+ 'url' => ':attribute फ़ील्ड एक वैध URL होना चाहिए।',
+ 'ulid' => ':attribute फ़ील्ड एक वैध ULID होना चाहिए।',
+ 'uuid' => ':attribute फ़ील्ड को एक वैध UUID होना चाहिए।',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'सीमा शुल्क संदेश',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/id/account.php b/lang/id/account.php
new file mode 100644
index 000000000..0424bf5ac
--- /dev/null
+++ b/lang/id/account.php
@@ -0,0 +1,52 @@
+ 'Akun',
+ 'personal_details' => 'Data pribadi',
+ 'security' => 'Keamanan',
+ 'credits' => 'Kredit',
+
+ 'change_password' => 'Ubah kata sandi',
+
+ 'two_factor_authentication' => 'Autentikasi dua faktor',
+ 'two_factor_authentication_description' => 'Tambahkan lapisan keamanan ekstra ke akun Anda dengan mengaktifkan autentikasi dua faktor.',
+ 'two_factor_authentication_enabled' => 'Autentikasi dua faktor diaktifkan untuk akun Anda.',
+ 'two_factor_authentication_enable' => 'Aktifkan autentikasi dua faktor',
+ 'two_factor_authentication_disable' => 'Nonaktifkan autentikasi dua faktor',
+ 'two_factor_authentication_enable_description' => 'Untuk mengaktifkan autentikasi dua faktor, Anda perlu memindai kode QR di bawah ini menggunakan aplikasi autentikator seperti Google Authenticator atau Authy.',
+ 'two_factor_authentication_qr_code' => 'Pindah kode QR di bawah ini menggunakan aplikasi autentikator anda:',
+ 'two_factor_authentication_secret' => 'Atau masukkan kode berikut secara manual:',
+
+ 'sessions' => 'Sesi',
+ 'sessions_description' => 'Kelola dan keluar dari sesi aktif Anda pada browser dan perangkat lain.',
+ 'logout_sessions' => 'Keluar dari sesi ini',
+
+ 'input' => [
+ 'current_password' => 'Kata sandi saat ini',
+ 'current_password_placeholder' => 'Kata sandi Anda saat ini',
+ 'new_password' => 'Kata sandi baru',
+ 'new_password_placeholder' => 'Kata sandi baru Anda',
+ 'confirm_password' => 'Konfirmasi kata sandi',
+ 'confirm_password_placeholder' => 'Konfirmasi kata sandi baru Anda',
+
+ 'two_factor_code' => 'Masukkan kode dari aplikasi autentikator Anda',
+ 'two_factor_code_placeholder' => 'Kode autentikasi dua faktor Anda',
+
+ 'currency' => 'Mata Uang',
+ 'amount' => 'Jumlah',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Kata sandi telah diubah.',
+ 'password_incorrect' => 'Kata sandi saat ini salah.',
+ 'two_factor_enabled' => 'Autentikasi dua langkah telah diaktifkan.',
+ 'two_factor_disabled' => 'Autentikasi dua langkah telah dinonaktifkan.',
+ 'two_factor_code_incorrect' => 'Kode yang Anda berikan salah.',
+ 'session_logged_out' => 'Sesi telah dikeluarkan.',
+ ],
+
+ 'no_credit' => 'Anda tidak memiliki kredit.',
+ 'add_credit' => 'Tambahkan kredit',
+ 'credit_deposit' => 'Deposit kredit (:currency)',
+
+];
diff --git a/lang/id/auth.php b/lang/id/auth.php
new file mode 100644
index 000000000..fb1a5d78a
--- /dev/null
+++ b/lang/id/auth.php
@@ -0,0 +1,55 @@
+ 'Kredensial ini tidak sesuai dengan data di dalam sistem kami.',
+ 'password' => 'Kata sandi yand diberikan salah.',
+ 'throttle' => 'Terlalu banyak upaya login. Silakan coba lagi dalam :seconds detik.',
+
+ 'sign_in' => 'Masuk',
+ 'sign_in_title' => 'Masuk ke akun Anda',
+ 'or_sign_in_with' => 'Atau masuk dengan',
+ 'forgot_password' => 'Lupa kata sandi Anda?',
+ 'dont_have_account' => 'Tidak memiliki akun?',
+ 'already_have_account' => 'Sudah memiliki akun?',
+
+ 'sign_up' => 'Daftar',
+ 'sign_up_title' => 'Buat akun',
+
+ 'logout' => 'Keluar',
+
+ 'input' => [
+ 'email' => 'Email',
+ 'email_label' => 'Alamat Email',
+ 'password' => 'Kata Sandi',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => '.',
+ 'account_not_registered' => 'Anda tidak terdaftar di situs ini.',
+ ],
+
+ 'reset_password' => 'Atur ulang kata sandi',
+
+ 'verify_2fa' => 'Verifikasi 2FA',
+ 'verify' => 'Verifikasi',
+
+ 'verification' => [
+ 'notice' => 'Verifikasi alamat email Anda',
+ 'sent' => 'Tautan verifikasi baru telah dikirim ke alamat email kamu.',
+ 'check_your_email' => 'Sebelum melanjutkan, periksa email kamu untuk tautan verifikasi.',
+ 'not_received' => 'Jika Anda tidak menerima email, Anda dapat meminta email verifikasi baru.',
+ 'request_another' => 'Kirim ulang email verifikasi',
+ ],
+];
diff --git a/lang/id/dashboard.php b/lang/id/dashboard.php
new file mode 100644
index 000000000..e91335b87
--- /dev/null
+++ b/lang/id/dashboard.php
@@ -0,0 +1,11 @@
+ 'Dasbor',
+ 'welcome_back' => 'Selamat datang, {name}.',
+ 'dashboard_description' => 'Kelola layanan aktif, faktur, tiket Anda, dan tetap update disini.',
+ 'open_tickets' => 'Tiket Terbuka',
+ 'unpaid_invoices' => 'Tagihan belum dibayar',
+ 'active_services' => 'Layanan Aktif',
+ 'view_all' => 'Lihat Semua',
+];
diff --git a/lang/id/general.php b/lang/id/general.php
new file mode 100644
index 000000000..5ed1567a0
--- /dev/null
+++ b/lang/id/general.php
@@ -0,0 +1,36 @@
+ 'Lihat',
+
+ 'input' => [
+ 'first_name' => 'Nama depan',
+ 'first_name_placeholder' => 'Nama depan Anda',
+ 'last_name' => 'Nama belakang',
+ 'last_name_placeholder' => 'Nama belakang Anda',
+ 'email' => 'Email',
+ 'email_placeholder' => 'Email Anda',
+ 'phone' => 'Nomor Handphone',
+ 'phone_placeholder' => 'Nomor Handphone Anda',
+ 'company_name' => 'Nama Perusahaan',
+ 'company_name_placeholder' => 'Nama Perusahaan Anda',
+ 'country' => 'Negara',
+ 'country_placeholder' => 'Negara Anda',
+ 'city' => 'Kota',
+ 'city_placeholder' => 'Kota Anda',
+ 'address' => 'Alamat',
+ 'address_placeholder' => 'Alamat Anda',
+ 'address2' => 'Alamat 2',
+ 'address2_placeholder' => 'Alamat 2 Anda',
+ 'zip' => 'Kode Pos',
+ 'zip_placeholder' => 'Kode Pos Anda',
+ 'state' => 'Provinsi',
+ 'state_placeholder' => 'Provinsi Anda',
+
+ 'password' => 'Kata Sandi',
+ 'password_placeholder' => 'Kata Sandi Anda',
+ ],
+
+ 'all_rights_reserved' => 'Hak cipta dilindungi.',
+ 'update' => 'Pembaruan',
+];
diff --git a/lang/id/invoices.php b/lang/id/invoices.php
new file mode 100644
index 000000000..800475f3d
--- /dev/null
+++ b/lang/id/invoices.php
@@ -0,0 +1,33 @@
+ 'Faktur',
+ 'product' => 'Produk',
+ 'price' => 'Harga',
+ 'status' => 'Status',
+ 'actions' => 'Aksi',
+ 'view' => 'Lihat',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Subtotal',
+ 'invoice' => 'Faktur #:id',
+ 'unit_price' => 'Harga Unit',
+ 'bill_to' => 'Ditagihkan Kepada',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Lunas',
+ 'payment_pending' => 'Menunggu Pembayaran',
+ 'checking_payment' => 'Checking Payment',
+ 'invoice_date' => 'Tanggal Faktur',
+ 'invoice_no' => 'No. Faktur',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Item',
+ 'quantity' => 'Kuantitas',
+ 'transactions' => 'Transaksi',
+ 'transaction_id' => 'ID Transaksi',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Tanggal Pembayaran',
+ 'payment_method' => 'Metode Pembayaran',
+ 'amount' => 'Jumlah',
+ 'date' => 'Tanggal',
+];
diff --git a/lang/id/navigation.php b/lang/id/navigation.php
new file mode 100644
index 000000000..c7a18f008
--- /dev/null
+++ b/lang/id/navigation.php
@@ -0,0 +1,17 @@
+ 'Beranda',
+ 'shop' => 'Belanja',
+ 'cart' => 'Keranjang',
+ 'login' => 'Masuk',
+ 'register' => 'Daftar',
+ 'services' => 'Layanan',
+ 'invoices' => 'Faktur',
+ 'account' => 'Akun',
+ 'personal_details' => 'Data Pribadi',
+ 'security' => 'Keamanan',
+ 'dashboard' => 'Dasbor',
+ 'tickets' => 'Tiket',
+ 'admin' => 'Admin',
+];
diff --git a/lang/id/pagination.php b/lang/id/pagination.php
new file mode 100644
index 000000000..954627596
--- /dev/null
+++ b/lang/id/pagination.php
@@ -0,0 +1,19 @@
+ '« Sebelumnya',
+ 'next' => 'Selanjutnya »',
+
+];
diff --git a/lang/id/passwords.php b/lang/id/passwords.php
new file mode 100644
index 000000000..220ee7497
--- /dev/null
+++ b/lang/id/passwords.php
@@ -0,0 +1,11 @@
+ 'Kata sandi Anda telah disetel ulang.',
+ 'sent' => 'Kami telah mengirimkan email tautan pengaturan ulang kata sandi kamu!',
+ 'throttled' => 'Harap tunggu sebelum mencoba kembali.',
+ 'token' => 'Token reset kata sandi ini tidak valid.',
+ 'user' => 'Kami tidak dapat menemukan pengguna dengan alamat email tersebut.',
+
+];
diff --git a/lang/id/product.php b/lang/id/product.php
new file mode 100644
index 000000000..c7d59e493
--- /dev/null
+++ b/lang/id/product.php
@@ -0,0 +1,29 @@
+ 'Tambah ke keranjang',
+ 'view' => 'Lihat',
+ 'checkout' => 'Checkout',
+ 'remove' => 'Hapus',
+ 'empty_cart' => 'Keranjang Anda kosong',
+ 'total_today' => 'Total hari ini',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Setelah pukul :waktu',
+ 'order_summary' => 'Ringkasan Pesanan',
+ 'edit' => 'Ubah',
+
+ 'apply' => 'Terapkan',
+ 'price' => 'Harga',
+ 'setup_fee' => 'Biaya Setup',
+
+ 'in_stock' => 'Tersedia',
+ 'out_of_stock' => 'Produk : produk tidak tersedia',
+ 'user_limit' => 'Anda telah mencapai batas untuk : produk',
+ 'payment_method' => 'Metode pembayaran',
+ 'use_credits' => 'Gunakan Kredit',
+ 'tos' => 'I agree to the ',
+ 'tos_link' => 'Terms of Service',
+ 'tos_required' => 'You must agree to the Terms of Service',
+];
diff --git a/lang/id/services.php b/lang/id/services.php
new file mode 100644
index 000000000..d1c6dc1d3
--- /dev/null
+++ b/lang/id/services.php
@@ -0,0 +1,32 @@
+ 'Layanan',
+ 'product' => 'Produk',
+ 'price' => 'Harga',
+ 'status' => 'Status',
+ 'name' => 'Nama',
+ 'actions' => 'Aksi',
+ 'view' => 'Lihat',
+
+ 'product_details' => 'Rincian Produk',
+ 'billing_cycle' => 'Siklus Tagihan',
+ 'cancel' => 'Batalkan',
+ 'cancellation' => 'Pembatalan Layanan :service',
+ 'cancel_are_you_sure' => 'Apakah Anda yakin ingin membatalkan layanan ini?',
+ 'cancel_reason' => 'Alasan Pembatalan',
+ 'cancel_type' => 'Jenis Pembatalan',
+ 'cancel_immediate' => 'Batalkan Segera',
+ 'cancel_end_of_period' => 'Batalkan pada akhir periode tagihan',
+ 'cancel_immediate_warning' => 'Ketika anda menekan tombol dibawah, layanan ini akan langsung dibatalkan dan Anda tidak akan bisa menggunakannya lagi.',
+ 'cancellation_requested' => 'Permintaan Pembatalan telah dikirimkan',
+
+ 'current_plan' => 'Paket Saat Ini',
+ 'new_plan' => 'Paket Baru',
+ 'change_plan' => 'Ubah Paket',
+ 'current_price' => 'Harga Saat Ini',
+ 'new_price' => 'Harga Baru',
+ 'upgrade' => 'Upgrade',
+ 'upgrade_summary' => 'Ringkasan Upgrade',
+ 'total_today' => 'Total Hari Ini',
+];
diff --git a/lang/id/ticket.php b/lang/id/ticket.php
new file mode 100644
index 000000000..8deb9b652
--- /dev/null
+++ b/lang/id/ticket.php
@@ -0,0 +1,25 @@
+ 'Rincian Tiket',
+ 'tickets' => 'Tiket',
+ 'subject' => 'Subjek',
+ 'status' => 'Status',
+ 'priority' => 'Prioritas',
+ 'department' => 'Departemen',
+ 'created_at' => 'Dibuat Pada',
+ 'reply' => 'Balas',
+
+ 'create_ticket' => 'Buat Tiket',
+ 'select_department' => 'Pilih Departemen',
+ 'select_priority' => 'Pilih Prioritas',
+ 'low' => 'Rendah',
+ 'medium' => 'Sedang',
+ 'high' => 'Tinggi',
+
+ 'last_activity' => 'Aktivitas terakhir',
+
+ 'service' => 'Layanan',
+ 'select_service' => 'Pilih Layanan',
+ 'create' => 'Buat',
+];
diff --git a/lang/id/validation.php b/lang/id/validation.php
new file mode 100644
index 000000000..5a76264d0
--- /dev/null
+++ b/lang/id/validation.php
@@ -0,0 +1,192 @@
+ 'Kolom :attribute harus diterima.',
+ 'accepted_if' => 'Kolom :attribute harus diterima jika :other adalah :value.',
+ 'active_url' => 'Kolom :attribute harus berupa URL yang valid.',
+ 'after' => 'Kolom :attribute harus berupa tanggal setelah :date.',
+ 'after_or_equal' => 'Kolom :attribute harus berupa tanggal setelah atau sama dengan :date.',
+ 'alpha' => 'Kolom :attribute hanya boleh berisi huruf.',
+ 'alpha_dash' => 'Kolom :attribute hanya boleh berisi huruf, angka, tanda hubung, dan garis bawah.',
+ 'alpha_num' => 'Kolom :attribute hanya boleh berisi huruf dan angka.',
+ 'array' => 'Kolom :attribute harus berupa array.',
+ 'ascii' => 'Kolom :attribute hanya boleh berisi karakter alfanumerik dan simbol satu byte.',
+ 'before' => 'Kolom :attribute harus berupa tanggal sebelum :date.',
+ 'before_or_equal' => 'Kolom :attribute harus berupa tanggal sebelum atau sama dengan :date.',
+ 'between' => [
+ 'array' => 'Kolom :attribute harus memiliki antara :min dan :max item.',
+ 'file' => 'Kolom :attribute harus antara :min dan :max kilobyte.',
+ 'numeric' => 'Kolom :attribute harus antara :min dan :max.',
+ 'string' => 'Kolom :attribute harus memiliki panjang diantara :min dan :max karakter.',
+ ],
+ 'boolean' => 'Kolom :attribute harus true atau false.',
+ 'can' => 'Kolom :attribute berisi nilai yang tidak sah.',
+ 'confirmed' => 'Kolom konfirmasi :attribute tidak sesuai.',
+ 'current_password' => 'Kata sandi salah.',
+ 'date' => 'Kolom :attribute harus berupa tanggal yang valid.',
+ 'date_equals' => 'Kolom :attribute harus berupa tanggal yang sama dengan :date.',
+ 'date_format' => 'Kolom :attribute harus sesuai dengan format :format.',
+ 'decimal' => 'Kolom :attribute harus memiliki :decimal angka di belakang koma.',
+ 'declined' => 'Kolom :attribute harus ditolak.',
+ 'declined_if' => 'Kolom :attribute harus ditolak jika :other adalah :value.',
+ 'different' => 'Kolom :attribute dan :other harus berbeda.',
+ 'digits' => 'Kolom :attribute harus terdiri dari :digits digit.',
+ 'digits_between' => 'Kolom :attribute harus terdiri dari antara :min dan :max digit.',
+ 'dimensions' => 'Kolom :attribute memiliki dimensi gambar yang tidak valid.',
+ 'distinct' => 'Kolom :attribute memiliki nilai duplikat.',
+ 'doesnt_end_with' => 'Kolom :attribute tidak boleh diakhiri dengan salah satu dari berikut ini: :values.',
+ 'doesnt_start_with' => 'Kolom :attribute tidak boleh dimulai dengan salah satu dari berikut ini: :values.',
+ 'email' => 'Kolom :attribute harus alamat email yang valid.',
+ 'ends_with' => 'Kolom :attribute harus diakhiri dengan salah satu dari berikut: :values.',
+ 'enum' => 'Kolom :attribute yang telah dipilih tidak valid.',
+ 'exists' => 'Kolom :attribute yang telah dipilih tidak valid.',
+ 'extensions' => 'Kolom :attribute harus memiliki salah satu ekstensi berikut: :values.',
+ 'file' => 'Kolom :attribute harus berupa sebuah file.',
+ 'filled' => 'Kolom :attribute harus memiliki nilai.',
+ 'gt' => [
+ 'array' => 'Kolom :attribute harus berjumlah lebih dari :value item.',
+ 'file' => 'Kolom :attribute harus memiliki ukuran yang lebih besar dari :value kilobytes.',
+ 'numeric' => 'Kolom :attribute harus lebih besar dari :value.',
+ 'string' => 'Kolom :attribute harus lebih panjang dari :value karakter.',
+ ],
+ 'gte' => [
+ 'array' => 'Kolom :attribute harus memiliki :value item atau lebih.',
+ 'file' => 'Kolom :attribute harus lebih besar dari atau sama dengan :value kilobyte.',
+ 'numeric' => 'Kolom :attribute harus lebih dari atau sama dengan :value.',
+ 'string' => 'Kolom :attribute harus lebih atau sama dengan :value karakter.',
+ ],
+ 'hex_color' => 'Kolom :attribute harus berupa kode warna heksadesimal yang valid.',
+ 'image' => 'Kolom :attribute harus berupa gambar.',
+ 'in' => 'Kolom :attribute yang telah dipilih tidak valid.',
+ 'in_array' => 'Kolom :attribute harus tersedia di :other.',
+ 'integer' => 'Kolom :attribute harus berupa angka.',
+ 'ip' => 'Kolom :attribute harus berupa alamat IP.',
+ 'ipv4' => 'Kolom :attribute harus berupa alamat IPv4.',
+ 'ipv6' => 'Kolom :attribute harus berupa alamat IPv6.',
+ 'json' => 'Kolom :attribute harus berupa string JSON.',
+ 'list' => 'Kolom :attribute harus berupa sebuah list.',
+ 'lowercase' => 'Kolom :attribute harus huruf kecil.',
+ 'lt' => [
+ 'array' => 'Kolom :attribute harus berjumlah kurang dari :value item.',
+ 'file' => 'Kolom :attribute harus memiliki ukuran yang lebih kecil dari :value kilobytes.',
+ 'numeric' => 'Kolom :attribute harus lebih kecil dari :value.',
+ 'string' => 'Kolom :attribute harus harus lebih pendek dari :value karakter.',
+ ],
+ 'lte' => [
+ 'array' => 'Kolom :attribute harus memiliki :value item atau kurang.',
+ 'file' => 'Kolom :attribute harus lebih kecil atau sama dengan :value kilobyte.',
+ 'numeric' => 'Kolom :attribute harus lebih kecil atau sama dengan :value.',
+ 'string' => 'Kolom :attribute harus lebih kecil atau sama dengan :value karakter.',
+ ],
+ 'mac_address' => 'Kolom :attribute harus berupa alamat MAC.',
+ 'max' => [
+ 'array' => 'Kolom :attribute tidak boleh lebih dari :max item.',
+ 'file' => 'Kolom :attribute tidak boleh lebih dari :max kilobyte.',
+ 'numeric' => 'Kolom :attribute tidak boleh lebih dari :max.',
+ 'string' => 'Kolom :attribute tidak boleh lebih dari :max karakter.',
+ ],
+ 'max_digits' => 'Kolom :attribute tidak boleh lebih dari :max digit.',
+ 'mimes' => 'Kolom :attribute harus berupa file dengan tipe: values.',
+ 'mimetypes' => 'Kolom :attribute harus berupa file dengan tipe: values.',
+ 'min' => [
+ 'array' => 'Kolom :attribute tidak boleh kurang dari :min item.',
+ 'file' => 'Kolom :attribute tidak boleh kurang dari :min kilobyte.',
+ 'numeric' => 'Kolom :attribute tidak boleh kurang dari :min.',
+ 'string' => 'Kolom :attribute tidak boleh kurang dari :min karakter.',
+ ],
+ 'min_digits' => 'Kolom :attribute tidak boleh kurang dari :min digit.',
+ 'missing' => 'Kolom :attribute harus kosong.',
+ 'missing_if' => 'Kolom :attribute harus kosong ketika :other adalah :value.',
+ 'missing_unless' => 'Kolom :attribute harus kosong kecuali :other adalah :value.',
+ 'missing_with' => 'Kolom :attribute harus kosong ketika :values ada.',
+ 'missing_with_all' => 'Kolom :attribute harus kosong ketika :values ada.',
+ 'multiple_of' => 'Kolom :attribute harus kelipatan dari :value.',
+ 'not_in' => 'Kolom :attribute yang telah dipilih tidak valid.',
+ 'not_regex' => 'Kolom :attribute memiliki format yang tidak valid.',
+ 'numeric' => 'Kolom :attribute harus berupa angka.',
+ 'password' => [
+ 'letters' => 'Kolom :attribute harus berisi minimal satu huruf.',
+ 'mixed' => 'Kolom :attribute harus berisi minimal satu huruf besar dan satu huruf kecil.',
+ 'numbers' => 'Kolom :attribute harus berisi minimal satu angka.',
+ 'symbols' => 'Kolom :attribute harus berisi minimal satu simbol.',
+ 'uncompromised' => 'Kolom :attribute yang diberikan muncul dalam kebocoran data. Silahkan pilih :attribute yang lain.',
+ ],
+ 'present' => 'Kolom :attribute harus ada.',
+ 'present_if' => 'Kolom :attribute harus ada saat :other adalah :value.',
+ 'present_unless' => 'Kolom :attribute harus ada kecuali :other adalah :value.',
+ 'present_with' => 'Kolom :attribute harus ada saat :values ada.',
+ 'present_with_all' => 'Kolom :attribute harus ada saat :values ada.',
+ 'prohibited' => 'Kolom :attribute dilarang.',
+ 'prohibited_if' => 'Kolom :attribute dilarang saat :other adalah :value.',
+ 'prohibited_unless' => 'Kolom :attribute dilarang kecuali :other ada di dalam :values.',
+ 'prohibits' => 'Kolom :attribute melarang :other untuk ada.',
+ 'regex' => 'Kolom :attribute memiliki format yang tidak valid.',
+ 'required' => 'Kolom :attribute harus diisi.',
+ 'required_array_keys' => 'Kolom :attribute harus berisi entri untuk: :values.',
+ 'required_if' => 'Kolom :attribute harus diisi saat :other adalah :value.',
+ 'required_if_accepted' => 'Kolom :attribute harus diisi saat :other diterima.',
+ 'required_unless' => 'Kolom :attribute harus diisi kecuali :other adalah :values.',
+ 'required_with' => 'Kolom :attribute harus diisi saat :values ada.',
+ 'required_with_all' => 'Kolom :attribute harus diisi saat :values ada.',
+ 'required_without' => 'Kolom :attribute harus diisi saat :values tidak ada.',
+ 'required_without_all' => 'Kolom :attribute harus diisi saat :values tidak ada.',
+ 'same' => 'Kolom :attribute harus cocok dengan :other.',
+ 'size' => [
+ 'array' => 'Kolom :attribute harus berisi :size item.',
+ 'file' => 'Kolom :attribute harus berukuran :size kilobyte.',
+ 'numeric' => 'Kolom :attribute harus bernilai :size.',
+ 'string' => 'Kolom :attribute harus berjumlah :size karakter.',
+ ],
+ 'starts_with' => 'Kolom :attribute harus dimulai dengan salah satu: values.',
+ 'string' => 'Kolom :attribute harus berupa string.',
+ 'timezone' => 'Kolom :attribute harus berupa zona waktu.',
+ 'unique' => 'Kolom :attribute sudah digunakan. ',
+ 'uploaded' => 'Kolom :attribute gagal diunggah.',
+ 'uppercase' => 'Kolom :attribute harus huruf besar.',
+ 'url' => 'Kolom :attribute harus berupa URL.',
+ 'ulid' => 'Kolom :attribute harus berupa ULID',
+ 'uuid' => 'Kolom :attribute harus berupa UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'custom-message',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/it/account.php b/lang/it/account.php
new file mode 100644
index 000000000..af0c1da09
--- /dev/null
+++ b/lang/it/account.php
@@ -0,0 +1,52 @@
+ 'Profilo',
+ 'personal_details' => 'Dati Personali',
+ 'security' => 'Sicurezza',
+ 'credits' => 'Crediti',
+
+ 'change_password' => 'Cambia Password',
+
+ 'two_factor_authentication' => 'Autenticazione a due fattori (2FA)',
+ 'two_factor_authentication_description' => 'Aggiungi un ulteriore livello di sicurezza al tuo account abilitando l\'autenticazione a due fattori.',
+ 'two_factor_authentication_enabled' => 'L\'autenticazione a più fattori è abilitata per il tuo account.',
+ 'two_factor_authentication_enable' => 'Abilita autenticazione 2FA',
+ 'two_factor_authentication_disable' => 'Disabilita l\'autenticazione a due fattori',
+ 'two_factor_authentication_enable_description' => 'Per abilitare l\'autenticazione a due fattori, è necessario eseguire la scansione del codice QR qui sotto con un\'app di autenticazione come Google Authenticator o Authy.',
+ 'two_factor_authentication_qr_code' => 'Scansiona il codice QR qui sotto con la tua app di autenticazione:',
+ 'two_factor_authentication_secret' => 'Oppure inserisci manualmente il seguente codice:',
+
+ 'sessions' => 'Sessioni',
+ 'sessions_description' => 'Gestisci e disconnetti le sessioni attive su altri browser e dispositivi.',
+ 'logout_sessions' => 'Disconnetti questa sessione',
+
+ 'input' => [
+ 'current_password' => 'Password attuale',
+ 'current_password_placeholder' => 'Password corrente',
+ 'new_password' => 'Nuova Password',
+ 'new_password_placeholder' => 'La tua nuova password',
+ 'confirm_password' => 'Conferma la password',
+ 'confirm_password_placeholder' => 'Conferma la tua nuova password',
+
+ 'two_factor_code' => 'Inserisci il codice dalla tua app di autenticazione',
+ 'two_factor_code_placeholder' => 'Il tuo codice di autenticazione a due fattori',
+
+ 'currency' => 'Valuta',
+ 'amount' => 'Quantità',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'La password è stata modificata.',
+ 'password_incorrect' => 'La password attuale è sbagliata.',
+ 'two_factor_enabled' => 'L\'autenticazione a due fattori è stata abilitata.',
+ 'two_factor_disabled' => 'L\'autenticazione a due fattori è stata disabilitata.',
+ 'two_factor_code_incorrect' => 'Il codice non è corretto ',
+ 'session_logged_out' => 'Sessione disconnessa.',
+ ],
+
+ 'no_credit' => 'Non hai crediti.',
+ 'add_credit' => 'Aggiungi accredito',
+ 'credit_deposit' => 'Deposito di credito (:currency)',
+
+];
diff --git a/lang/it/auth.php b/lang/it/auth.php
new file mode 100644
index 000000000..29a7edc8b
--- /dev/null
+++ b/lang/it/auth.php
@@ -0,0 +1,55 @@
+ 'Queste credenziali non sono corrette.',
+ 'password' => 'La password inserita non è corretta.',
+ 'throttle' => 'Troppi tentativi di accesso. Per favore riprova tra :seconds secondi.',
+
+ 'sign_in' => 'Accedi',
+ 'sign_in_title' => 'Accedi al tuo account',
+ 'or_sign_in_with' => 'Oppure accedere con',
+ 'forgot_password' => 'Password dimenticata?',
+ 'dont_have_account' => 'Non hai un account?',
+ 'already_have_account' => 'Hai già un account?',
+
+ 'sign_up' => 'Registrati',
+ 'sign_up_title' => 'Crea il tuo account',
+
+ 'logout' => 'Disconnettiti',
+
+ 'input' => [
+ 'email' => 'Email',
+ 'email_label' => 'Indirizzo email',
+ 'password' => 'Password',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Il tuo account Discord non è stato verificato.',
+ 'account_not_registered' => 'Non sei registrato su questo sito.',
+ ],
+
+ 'reset_password' => 'Resetta la password',
+
+ 'verify_2fa' => 'Verifica 2FA',
+ 'verify' => 'Verifica',
+
+ 'verification' => [
+ 'notice' => 'Verifica il tuo indirizzo e-mail',
+ 'sent' => 'Un nuovo link di verifica è stato inviato al vostro indirizzo email.',
+ 'check_your_email' => 'Prima di procedere, controlla la tua email per trovare un link di verifica.',
+ 'not_received' => 'Se non hai ricevuto l\'email puoi richiedere un\'altra email di verifica.',
+ 'request_another' => 'Rinvia email di verifica',
+ ],
+];
diff --git a/lang/it/dashboard.php b/lang/it/dashboard.php
new file mode 100644
index 000000000..ce87b4de4
--- /dev/null
+++ b/lang/it/dashboard.php
@@ -0,0 +1,11 @@
+ 'Dashboard',
+ 'welcome_back' => 'Bentornato, {name}!',
+ 'dashboard_description' => 'Gestisci i servizi attivi, le fatture, i biglietti e rimani aggiornato qui.',
+ 'open_tickets' => 'Ticket Aperti',
+ 'unpaid_invoices' => ' Fatture non pagate',
+ 'active_services' => 'Servizi attivi',
+ 'view_all' => 'Mostra tutti',
+];
diff --git a/lang/it/general.php b/lang/it/general.php
new file mode 100644
index 000000000..63c501a3d
--- /dev/null
+++ b/lang/it/general.php
@@ -0,0 +1,36 @@
+ 'Vedi',
+
+ 'input' => [
+ 'first_name' => 'Nome',
+ 'first_name_placeholder' => 'Il tuo nome',
+ 'last_name' => 'Cognome',
+ 'last_name_placeholder' => 'Il tuo cognome',
+ 'email' => 'Email',
+ 'email_placeholder' => 'Il tuo indirizzo e-mail',
+ 'phone' => 'Telefono',
+ 'phone_placeholder' => 'Il tuo numero di telefono',
+ 'company_name' => 'Nome dell\'azienda',
+ 'company_name_placeholder' => 'Il nome della tua azienda',
+ 'country' => 'Paese',
+ 'country_placeholder' => 'Il tuo paese',
+ 'city' => 'Città',
+ 'city_placeholder' => 'La tua città',
+ 'address' => 'Indirizzo',
+ 'address_placeholder' => 'Il tuo indirizzo',
+ 'address2' => 'Indirizzo 2',
+ 'address2_placeholder' => 'Il tuo indirizzo 2',
+ 'zip' => 'CAP',
+ 'zip_placeholder' => 'Il tuo CAP',
+ 'state' => 'Stato',
+ 'state_placeholder' => 'Il tuo stato',
+
+ 'password' => 'Password',
+ 'password_placeholder' => 'La tua password',
+ ],
+
+ 'all_rights_reserved' => 'Tutti i diritti riservati.',
+ 'update' => 'Aggiorna',
+];
diff --git a/lang/it/invoices.php b/lang/it/invoices.php
new file mode 100644
index 000000000..352d586b6
--- /dev/null
+++ b/lang/it/invoices.php
@@ -0,0 +1,33 @@
+ 'Fatture',
+ 'product' => 'Prodotto',
+ 'price' => 'Prezzo',
+ 'status' => 'Stato',
+ 'actions' => 'Azioni',
+ 'view' => 'Vista',
+ 'id' => 'ID',
+ 'total' => 'Totale',
+ 'subtotal' => 'Subtotale',
+ 'invoice' => 'Fattura #:id',
+ 'unit_price' => 'Prezzo unitario',
+ 'bill_to' => 'Fattura a',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Pagato',
+ 'payment_pending' => 'Pagamento in sospeso',
+ 'checking_payment' => 'Controllo Pagamento',
+ 'invoice_date' => 'Data fattura',
+ 'invoice_no' => 'Fattura n.',
+ 'tax_id' => 'Partita IVA',
+ 'company_id' => 'ID società',
+ 'item' => 'Articolo',
+ 'quantity' => 'Quantità',
+ 'transactions' => 'Transazioni',
+ 'transaction_id' => 'ID transazione',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Data pagamento',
+ 'payment_method' => 'Metodo di Pagamento',
+ 'amount' => 'Quantità',
+ 'date' => 'Data',
+];
diff --git a/lang/it/navigation.php b/lang/it/navigation.php
new file mode 100644
index 000000000..1ad81ce4c
--- /dev/null
+++ b/lang/it/navigation.php
@@ -0,0 +1,17 @@
+ 'Inizio',
+ 'shop' => 'Negozio',
+ 'cart' => 'Carrello',
+ 'login' => 'Accedi',
+ 'register' => 'Registrati',
+ 'services' => 'Servizi',
+ 'invoices' => 'Fatture',
+ 'account' => 'Profilo',
+ 'personal_details' => 'Dati personali',
+ 'security' => 'Sicurezza',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/it/pagination.php b/lang/it/pagination.php
new file mode 100644
index 000000000..9d6a2e2bc
--- /dev/null
+++ b/lang/it/pagination.php
@@ -0,0 +1,19 @@
+ '« Precedente',
+ 'next' => 'Successivo »',
+
+];
diff --git a/lang/it/passwords.php b/lang/it/passwords.php
new file mode 100644
index 000000000..6118439f3
--- /dev/null
+++ b/lang/it/passwords.php
@@ -0,0 +1,11 @@
+ 'La password è stata reimpostata.',
+ 'sent' => 'Ti abbiamo inviato una email con il link per il reset della password!',
+ 'throttled' => 'Per favore, attendi prima di riprovare.',
+ 'token' => 'Questo token per reimpostare la password non è valido.',
+ 'user' => 'Non riusciamo a trovare un utente con questo indirizzo email.',
+
+];
diff --git a/lang/it/product.php b/lang/it/product.php
new file mode 100644
index 000000000..3243fe0a3
--- /dev/null
+++ b/lang/it/product.php
@@ -0,0 +1,29 @@
+ 'Aggiungi al carrello',
+ 'view' => 'Visualizza',
+ 'checkout' => 'Checkout',
+ 'remove' => 'Rimuovi',
+ 'empty_cart' => 'Il tuo carrello è vuoto',
+ 'total_today' => 'Totale oggi:',
+ 'subtotal' => 'Subtotale',
+ 'total' => 'Totale',
+
+ 'then_after_x' => 'Poi dopo :time',
+ 'order_summary' => 'Riepilogo dell\'ordine',
+ 'edit' => 'Modifica',
+
+ 'apply' => 'Applica',
+ 'price' => 'Prezzo',
+ 'setup_fee' => 'Costo d\'installazione',
+
+ 'in_stock' => 'Disponibile',
+ 'out_of_stock' => 'Prodotto :product non disponibile',
+ 'user_limit' => 'Hai raggiunto il limite di :product',
+ 'payment_method' => 'Metodo di pagamento',
+ 'use_credits' => 'Usa crediti',
+ 'tos' => 'Sono d\'accordo con i ',
+ 'tos_link' => 'Termini di servizio',
+ 'tos_required' => 'Devi accettare i Termini di Servizio.',
+];
diff --git a/lang/it/services.php b/lang/it/services.php
new file mode 100644
index 000000000..a4e730439
--- /dev/null
+++ b/lang/it/services.php
@@ -0,0 +1,32 @@
+ 'Servizi',
+ 'product' => 'Prodotto',
+ 'price' => 'Prezzo',
+ 'status' => 'Stato',
+ 'name' => 'Nome',
+ 'actions' => 'Azioni',
+ 'view' => 'Vista',
+
+ 'product_details' => 'Dettagli del prodotto',
+ 'billing_cycle' => 'Ciclo di fatturazione',
+ 'cancel' => 'Annulla',
+ 'cancellation' => 'Cancellazione di :service',
+ 'cancel_are_you_sure' => 'Confermi di voler annullare il servizio?',
+ 'cancel_reason' => 'Motivo della cancellazione',
+ 'cancel_type' => 'Tipo di annullamento',
+ 'cancel_immediate' => 'Cancella immediatamente',
+ 'cancel_end_of_period' => 'Annulla alla fine del periodo di fatturazione',
+ 'cancel_immediate_warning' => 'Quando si preme il pulsante qui sotto, il servizio verrà immediatamente annullato e non sarà più in grado di utilizzarlo.',
+ 'cancellation_requested' => 'Richiesta di cancellazione',
+
+ 'current_plan' => 'Piano corrente',
+ 'new_plan' => 'Nuovo Piano',
+ 'change_plan' => 'Cambia Piano',
+ 'current_price' => 'Prezzo attuale',
+ 'new_price' => 'Nuovo prezzo',
+ 'upgrade' => 'Migliora',
+ 'upgrade_summary' => 'Riepilogo Aggiornamento',
+ 'total_today' => 'Totale Di Oggi',
+];
diff --git a/lang/it/ticket.php b/lang/it/ticket.php
new file mode 100644
index 000000000..0f15c4f02
--- /dev/null
+++ b/lang/it/ticket.php
@@ -0,0 +1,25 @@
+ 'Dettaglio ticket',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Oggetto',
+ 'status' => 'Stato',
+ 'priority' => 'Priorità',
+ 'department' => 'Reparto',
+ 'created_at' => 'Creato A',
+ 'reply' => 'Rispondi',
+
+ 'create_ticket' => 'Crea ticket',
+ 'select_department' => 'Seleziona Dipartimento',
+ 'select_priority' => 'Seleziona priorità',
+ 'low' => 'Basso',
+ 'medium' => 'Medio',
+ 'high' => 'Alto',
+
+ 'last_activity' => 'Ultima attività',
+
+ 'service' => 'Servizio',
+ 'select_service' => 'Seleziona servizio',
+ 'create' => 'Crea',
+];
diff --git a/lang/it/validation.php b/lang/it/validation.php
new file mode 100644
index 000000000..1eae5c9e7
--- /dev/null
+++ b/lang/it/validation.php
@@ -0,0 +1,192 @@
+ ':attribute deve essere accettato.',
+ 'accepted_if' => 'Il campo :attribute deve essere accettato quando :other è :value.',
+ 'active_url' => 'Il campo :attribute deve essere un URL valido.',
+ 'after' => ':attribute deve essere una data successiva al :date.',
+ 'after_or_equal' => ':attribute deve essere una data successiva o uguale al :date.',
+ 'alpha' => 'Il campo :attribute deve contenere solo lettere.',
+ 'alpha_dash' => 'Il campo :attribute deve contenere solo lettere, numeri, trattini e trattini bassi.',
+ 'alpha_num' => 'Il campo :attribute deve contenere solo lettere e numeri.',
+ 'array' => ':attribute deve essere un array.',
+ 'ascii' => ':attribute deve contenere solo caratteri alfanumerici single-byte e simboli.',
+ 'before' => 'Il campo :attribute deve essere una data precedente il :date.',
+ 'before_or_equal' => ':attribute deve essere una data precedente o uguale al :date.',
+ 'between' => [
+ 'array' => ':attribute deve avere tra :min - :max elementi.',
+ 'file' => 'Il campo :attribute deve essere tra :min e :max kilobyte.',
+ 'numeric' => 'Il campo :attribute deve essere compreso tra :min e :max.',
+ 'string' => 'Il campo :attribute deve essere compreso tra :min e :max caratteri.',
+ ],
+ 'boolean' => ':attribute deve essere vero o falso.',
+ 'can' => 'Il campo :attribute contiene un valore non autorizzato.',
+ 'confirmed' => 'La conferma del campo :attribute non corrisponde.',
+ 'current_password' => 'La password è sbagliata.',
+ 'date' => 'Il campo :attribute deve essere una data valida.',
+ 'date_equals' => 'Il campo :attribute deve essere una data uguale a :date.',
+ 'date_format' => 'Il campo :attribute deve corrispondere al formato :format.',
+ 'decimal' => ':attribute deve avere :decimal cifre decimali.',
+ 'declined' => 'Il campo :attribute deve essere rifiutato.',
+ 'declined_if' => 'Il campo :attribute deve essere rifiutato quando :other è :value.',
+ 'different' => ':attribute e :other devono essere differenti.',
+ 'digits' => 'Il campo :attribute deve contenere :digits numeri.',
+ 'digits_between' => 'Il campo :attribute deve essere compreso tra :min e :max cifre.',
+ 'dimensions' => 'Le dimensioni dell\'immagine di :attribute non sono valide.',
+ 'distinct' => 'Il campo :attribute ha un valore duplicato.',
+ 'doesnt_end_with' => ':attribute non può terminare con uno dei seguenti valori: :values.',
+ 'doesnt_start_with' => 'Il campo :attribute non deve iniziare con uno dei seguenti: :values.',
+ 'email' => 'Il campo :attribute deve essere un indirizzo email valido.',
+ 'ends_with' => 'Il campo :attribute deve terminare con uno dei seguenti: :values.',
+ 'enum' => 'Il :attribute scelto non è valido.',
+ 'exists' => 'Il :attribute scelto non è valido.',
+ 'extensions' => 'Il campo :attribute deve avere una delle seguenti estensioni: :values.',
+ 'file' => 'Il campo :attribute deve essere un file.',
+ 'filled' => 'Il campo :attribute deve contenere un valore.',
+ 'gt' => [
+ 'array' => ':attribute deve contenere più di :value elementi.',
+ 'file' => ':attribute deve essere maggiore di :value kilobyte.',
+ 'numeric' => 'Il campo :attribute deve essere maggiore di :value.',
+ 'string' => ':attribute deve contenere più di :value caratteri.',
+ ],
+ 'gte' => [
+ 'array' => 'Il campo :attribute deve contenere elementi :value o più.',
+ 'file' => 'Il campo :attribute deve essere maggiore o uguale a :value kilobytes.',
+ 'numeric' => 'Il campo :attribute deve essere maggiore o uguale a :value.',
+ 'string' => 'Il campo :attribute deve essere maggiore o uguale ai caratteri :value.',
+ ],
+ 'hex_color' => 'Il campo :attribute deve essere un colore esadecimale valido.',
+ 'image' => 'Il campo :attribute deve essere un\'immagine.',
+ 'in' => 'Il :attribute scelto non è valido.',
+ 'in_array' => 'Il valore del campo :attribute non esiste in :other.',
+ 'integer' => 'Il campo :attribute deve essere un numero intero.',
+ 'ip' => 'Il campo :attribute deve essere un indirizzo IP valido.',
+ 'ipv4' => 'Il campo :attribute deve essere un indirizzo IPv4 valido.',
+ 'ipv6' => 'Il campo :attribute deve essere un indirizzo IPv6 valido.',
+ 'json' => 'Il campo :attribute deve essere una stringa JSON valida.',
+ 'list' => 'Il campo :attribute deve essere una lista.',
+ 'lowercase' => 'Il campo :attribute deve essere minuscolo.',
+ 'lt' => [
+ 'array' => ':attribute deve contenere meno di :value elementi.',
+ 'file' => ':attribute deve essere minore di :value kilobyte.',
+ 'numeric' => ':attribute deve essere minore di :value.',
+ 'string' => 'Il campo :attribute deve contenere meno di :value caratteri.',
+ ],
+ 'lte' => [
+ 'array' => ':attribute deve contenere un numero di elementi minore o uguale a :value.',
+ 'file' => 'The :attribute must be less than or equal to :value kilobytes.',
+ 'numeric' => ':attribute deve essere minore o uguale a :value.',
+ 'string' => 'The :attribute must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'Il campo :attribute deve essere un indirizzo MAC valido.',
+ 'max' => [
+ 'array' => ':attribute non può avere più di :max elementi.',
+ 'file' => 'Il campo :attribute non deve essere maggiore di :max kilobyte.',
+ 'numeric' => 'Il campo :attribute non deve essere maggiore di :max.',
+ 'string' => 'The :attribute must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'Il campo :attribute non deve contenere più di :max cifre.',
+ 'mimes' => 'Il campo :attribute deve essere un file di tipo: :values.',
+ 'mimetypes' => 'Il campo :attribute deve essere un file di tipo: :values.',
+ 'min' => [
+ 'array' => ':attribute deve avere almeno :min elementi.',
+ 'file' => ':attribute deve essere almeno di :min kilobyte.',
+ 'numeric' => 'Il campo :attributo deve essere almeno :min.',
+ 'string' => ':attribute deve contenere almeno :min caratteri.',
+ ],
+ 'min_digits' => 'Il campo :attribute deve contenere almeno :min cifre.',
+ 'missing' => 'Il campo :attribute deve mancare.',
+ 'missing_if' => 'Il campo :attribute deve mancare quando :other è :value.',
+ 'missing_unless' => 'Il campo :attribute deve essere mancante a meno che :other sia :value.',
+ 'missing_with' => 'Il campo :attribute deve mancare quando è presente :values.',
+ 'missing_with_all' => 'Il campo :attribute deve mancare quando sono presenti :values.',
+ 'multiple_of' => ':attribute deve essere un multiplo di :value',
+ 'not_in' => 'Il :attribute scelto non è valido.',
+ 'not_regex' => 'Il formato di :attribute non è valido.',
+ 'numeric' => 'Il campo :attribute deve essere un numero.',
+ 'password' => [
+ 'letters' => 'Il campo :attribute deve contenere almeno una lettera.',
+ 'mixed' => 'Il campo :attribute deve contenere almeno una lettera maiuscola e una minuscola.',
+ 'numbers' => 'Il campo :attribute deve contenere almeno un numero.',
+ 'symbols' => 'Il campo :attribute deve contenere almeno un simbolo.',
+ 'uncompromised' => ':attribute sembra che faccia parte di un archivio con dati rubati. Per piacere, utilizza un valore differente.',
+ ],
+ 'present' => 'Il campo :attribute deve essere presente.',
+ 'present_if' => 'Il campo :attribute deve essere presente quando :other è :value.',
+ 'present_unless' => 'Il campo :attribute deve essere presente a meno che :other non sia :value.',
+ 'present_with' => 'Il campo :attribute deve essere presente quando :values è presente.',
+ 'present_with_all' => 'Il campo :attribute deve essere presente quando :values sono presenti.',
+ 'prohibited' => '\':attribute\' è proibito.',
+ 'prohibited_if' => 'Il campo :attribute è vietato quando :other è :value.',
+ 'prohibited_unless' => 'Il campo :attribute è vietato a meno che :other non sia in :values.',
+ 'prohibits' => ':Attribute impedisce a :other di essere presente.',
+ 'regex' => 'Il formato di :attribute non è valido.',
+ 'required' => 'Il campo :attribute è necessario.',
+ 'required_array_keys' => 'Il campo :attribute deve contenere voci per: :values.',
+ 'required_if' => 'Il campo :attribute è obbligatorio quando :other è :value.',
+ 'required_if_accepted' => ':attribute è richiesto quando :other è accettato.',
+ 'required_unless' => 'Il campo :attribute è richiesto a meno che :other sia in :values.',
+ 'required_with' => 'Il campo :attribute è obbligatorio quando :values è presente.',
+ 'required_with_all' => 'Il campo :attribute è obbligatorio quando :values è presente.',
+ 'required_without' => 'Il campo :attribute è obbligatorio quando :values non è presente.',
+ 'required_without_all' => 'Il campo :attribute è obbligatorio quando nessuno dei :values è presente.',
+ 'same' => 'Il campo :attribute deve corrispondere a :other.',
+ 'size' => [
+ 'array' => ':attribute deve contenere :size elementi.',
+ 'file' => ':attribute deve essere :size kilobyte.',
+ 'numeric' => 'Il campo :attribute deve essere :size.',
+ 'string' => ':attribute deve contenere :size caratteri.',
+ ],
+ 'starts_with' => 'Il campo :attribute deve iniziare con uno dei seguenti: :values.',
+ 'string' => 'Il campo :attribute deve essere una stringa.',
+ 'timezone' => 'Il campo :attribute deve essere un fuso orario valido.',
+ 'unique' => ':attribute è stato già utilizzato.',
+ 'uploaded' => ':attribute non è stato caricato.',
+ 'uppercase' => 'Il campo :attribute deve essere maiuscolo.',
+ 'url' => 'Il campo :attribute deve essere un URL valido.',
+ 'ulid' => 'Il campo :attribute deve essere un ULID valido.',
+ 'uuid' => 'Il campo :attribute deve essere un UUID valido.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'messaggio personalizzato',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/ko/account.php b/lang/ko/account.php
new file mode 100644
index 000000000..b32858cd1
--- /dev/null
+++ b/lang/ko/account.php
@@ -0,0 +1,52 @@
+ 'Account',
+ 'personal_details' => 'Personal details',
+ 'security' => 'Security',
+ 'credits' => 'Credits',
+
+ 'change_password' => 'Change password',
+
+ 'two_factor_authentication' => 'Two-factor authentication',
+ 'two_factor_authentication_description' => 'Add an extra layer of security to your account by enabling two-factor authentication.',
+ 'two_factor_authentication_enabled' => 'Two-factor authentication is enabled for your account.',
+ 'two_factor_authentication_enable' => 'Enable two-factor authentication',
+ 'two_factor_authentication_disable' => 'Disable two-factor authentication',
+ 'two_factor_authentication_enable_description' => 'To enable two factor authentication, you need to scan the QR code below with an authenticator app like Google Authenticator or Authy.',
+ 'two_factor_authentication_qr_code' => 'Scan the QR code below with your authenticator app:',
+ 'two_factor_authentication_secret' => 'Or enter the following code manually:',
+
+ 'sessions' => 'Sessions',
+ 'sessions_description' => 'Manage and log out your active sessions on other browsers and devices.',
+ 'logout_sessions' => 'Log this session out',
+
+ 'input' => [
+ 'current_password' => 'Current password',
+ 'current_password_placeholder' => 'Your current password',
+ 'new_password' => 'New password',
+ 'new_password_placeholder' => 'Your new password',
+ 'confirm_password' => 'Confirm password',
+ 'confirm_password_placeholder' => 'Confirm your new password',
+
+ 'two_factor_code' => 'Enter the code from your authenticator app',
+ 'two_factor_code_placeholder' => 'Your two-factor authentication code',
+
+ 'currency' => 'Currency',
+ 'amount' => 'Amount',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Password has been changed.',
+ 'password_incorrect' => 'The current password is incorrect.',
+ 'two_factor_enabled' => 'Two-factor authentication has been enabled.',
+ 'two_factor_disabled' => 'Two-factor authentication has been disabled.',
+ 'two_factor_code_incorrect' => 'The code is incorrect.',
+ 'session_logged_out' => 'Session has been logged out.',
+ ],
+
+ 'no_credit' => 'You have no credits.',
+ 'add_credit' => 'Add credit',
+ 'credit_deposit' => 'Credit deposit (:currency)',
+
+];
diff --git a/lang/ko/auth.php b/lang/ko/auth.php
new file mode 100644
index 000000000..f3cac8000
--- /dev/null
+++ b/lang/ko/auth.php
@@ -0,0 +1,55 @@
+ '로그인 정보가 올바르지 않습니다.',
+ 'password' => '비밀번호가 올바르지 않습니다.',
+ 'throttle' => '로그인 시도가 너무 많습니다. :seconds 초 후에 다시 시도해주세요.',
+
+ 'sign_in' => '로그인',
+ 'sign_in_title' => '계정에 로그인',
+ 'or_sign_in_with' => '또는 다음을 사용하여 로그인하세요:',
+ 'forgot_password' => '비밀번호를 잊으셨나요?',
+ 'dont_have_account' => '계정이 없으신가요?',
+ 'already_have_account' => '이미 계정이 있으신가요?',
+
+ 'sign_up' => '회원가입',
+ 'sign_up_title' => '계정 생성하기',
+
+ 'logout' => '로그아웃',
+
+ 'input' => [
+ 'email' => '이메일',
+ 'email_label' => '이메일 주소',
+ 'password' => '비밀번호',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Discord 계정이 인증되지 않았습니다.',
+ 'account_not_registered' => '이 사이트에 가입되어 있지 않습니다.',
+ ],
+
+ 'reset_password' => '비밀번호 재설정',
+
+ 'verify_2fa' => '2단계 인증',
+ 'verify' => '인증',
+
+ 'verification' => [
+ 'notice' => '이메일 주소 인증',
+ 'sent' => '새 인증 링크가 이메일로 전송되었습니다.',
+ 'check_your_email' => '진행하기 전에, 이메일로 인증 링크가 왔는지 확인해주세요.',
+ 'not_received' => '이메일을 받지 못했다면 새 인증 이메일을 요청할 수 있습니다.',
+ 'request_another' => '인증 이메일 재전송',
+ ],
+];
diff --git a/lang/ko/dashboard.php b/lang/ko/dashboard.php
new file mode 100644
index 000000000..9cd888db6
--- /dev/null
+++ b/lang/ko/dashboard.php
@@ -0,0 +1,11 @@
+ '대시보드',
+ 'welcome_back' => '환영합니다, {name}!',
+ 'dashboard_description' => 'Manage your active services, invoices, tickets, and stay updated here.',
+ 'open_tickets' => '티켓 열기',
+ 'unpaid_invoices' => '미납된 청구서',
+ 'active_services' => 'Active Services',
+ 'view_all' => '전체 보기',
+];
diff --git a/lang/ko/general.php b/lang/ko/general.php
new file mode 100644
index 000000000..4793f6356
--- /dev/null
+++ b/lang/ko/general.php
@@ -0,0 +1,36 @@
+ 'View',
+
+ 'input' => [
+ 'first_name' => 'First name',
+ 'first_name_placeholder' => 'Your first name',
+ 'last_name' => 'Last name',
+ 'last_name_placeholder' => 'Your last name',
+ 'email' => 'Email',
+ 'email_placeholder' => 'Your email address',
+ 'phone' => 'Phone',
+ 'phone_placeholder' => 'Your phone number',
+ 'company_name' => 'Company name',
+ 'company_name_placeholder' => 'Your company name',
+ 'country' => 'Country',
+ 'country_placeholder' => 'Your country',
+ 'city' => 'City',
+ 'city_placeholder' => 'Your city',
+ 'address' => 'Address',
+ 'address_placeholder' => 'Your address',
+ 'address2' => 'Address 2',
+ 'address2_placeholder' => 'Your address 2',
+ 'zip' => 'ZIP',
+ 'zip_placeholder' => 'Your ZIP code',
+ 'state' => 'State',
+ 'state_placeholder' => 'Your state',
+
+ 'password' => 'Password',
+ 'password_placeholder' => 'Your password',
+ ],
+
+ 'all_rights_reserved' => 'All rights reserved.',
+ 'update' => 'Update',
+];
diff --git a/lang/ko/invoices.php b/lang/ko/invoices.php
new file mode 100644
index 000000000..c9e2a2a24
--- /dev/null
+++ b/lang/ko/invoices.php
@@ -0,0 +1,33 @@
+ 'Invoices',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Subtotal',
+ 'invoice' => 'Invoice #:id',
+ 'unit_price' => 'Unit Price',
+ 'bill_to' => 'Bill To',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Paid',
+ 'payment_pending' => 'Payment Pending',
+ 'checking_payment' => 'Checking Payment',
+ 'invoice_date' => 'Invoice Date',
+ 'invoice_no' => 'Invoice No',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Item',
+ 'quantity' => 'Quantity',
+ 'transactions' => 'Transactions',
+ 'transaction_id' => 'Transaction ID',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Payment Date',
+ 'payment_method' => 'Payment Method',
+ 'amount' => 'Amount',
+ 'date' => 'Date',
+];
diff --git a/lang/ko/navigation.php b/lang/ko/navigation.php
new file mode 100644
index 000000000..57443b9bc
--- /dev/null
+++ b/lang/ko/navigation.php
@@ -0,0 +1,17 @@
+ 'Home',
+ 'shop' => 'Shop',
+ 'cart' => 'Cart',
+ 'login' => 'Login',
+ 'register' => 'Register',
+ 'services' => 'Services',
+ 'invoices' => 'Invoices',
+ 'account' => 'Account',
+ 'personal_details' => 'Personal Details',
+ 'security' => 'Security',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/ko/pagination.php b/lang/ko/pagination.php
new file mode 100644
index 000000000..d48141187
--- /dev/null
+++ b/lang/ko/pagination.php
@@ -0,0 +1,19 @@
+ '« Previous',
+ 'next' => 'Next »',
+
+];
diff --git a/lang/ko/passwords.php b/lang/ko/passwords.php
new file mode 100644
index 000000000..2cea577ef
--- /dev/null
+++ b/lang/ko/passwords.php
@@ -0,0 +1,11 @@
+ 'Your password has been reset.',
+ 'sent' => 'We have emailed your password reset link.',
+ 'throttled' => 'Please wait before retrying.',
+ 'token' => 'This password reset token is invalid.',
+ 'user' => "We can't find a user with that email address.",
+
+];
diff --git a/lang/ko/product.php b/lang/ko/product.php
new file mode 100644
index 000000000..15bea8c70
--- /dev/null
+++ b/lang/ko/product.php
@@ -0,0 +1,29 @@
+ 'Add to cart',
+ 'view' => 'View',
+ 'checkout' => 'Checkout',
+ 'remove' => 'Remove',
+ 'empty_cart' => 'Your cart is empty',
+ 'total_today' => 'Total today',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Then after :time',
+ 'order_summary' => 'Order Summary',
+ 'edit' => 'Edit',
+
+ 'apply' => 'Apply',
+ 'price' => 'Price',
+ 'setup_fee' => 'Setup fee',
+
+ 'in_stock' => 'In stock',
+ 'out_of_stock' => 'Product :product is out of stock',
+ 'user_limit' => 'You have reached the limit of :product',
+ 'payment_method' => 'Payment method',
+ 'use_credits' => 'Use credits',
+ 'tos' => 'I agree to the ',
+ 'tos_link' => 'Terms of Service',
+ 'tos_required' => 'You must agree to the Terms of Service',
+];
diff --git a/lang/ko/services.php b/lang/ko/services.php
new file mode 100644
index 000000000..3e7dba052
--- /dev/null
+++ b/lang/ko/services.php
@@ -0,0 +1,32 @@
+ 'Services',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'name' => 'Name',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+
+ 'product_details' => 'Product Details',
+ 'billing_cycle' => 'Billing Cycle',
+ 'cancel' => 'Cancel',
+ 'cancellation' => 'Cancellation of :service',
+ 'cancel_are_you_sure' => 'Are you sure you want to cancel this service?',
+ 'cancel_reason' => 'Reason for cancellation',
+ 'cancel_type' => 'Cancellation Type',
+ 'cancel_immediate' => 'Cancel immediate',
+ 'cancel_end_of_period' => 'Cancel at the end of the billing period',
+ 'cancel_immediate_warning' => 'When you press the button below, the service will be cancelled immediately and you will not be able to use it anymore.',
+ 'cancellation_requested' => 'Cancellation requested',
+
+ 'current_plan' => 'Current Plan',
+ 'new_plan' => 'New Plan',
+ 'change_plan' => 'Change Plan',
+ 'current_price' => 'Current Price',
+ 'new_price' => 'New Price',
+ 'upgrade' => 'Upgrade',
+ 'upgrade_summary' => 'Upgrade Summary',
+ 'total_today' => 'Total Today',
+];
diff --git a/lang/ko/ticket.php b/lang/ko/ticket.php
new file mode 100644
index 000000000..ce39439fa
--- /dev/null
+++ b/lang/ko/ticket.php
@@ -0,0 +1,25 @@
+ 'Ticket Details',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Subject',
+ 'status' => 'Status',
+ 'priority' => 'Priority',
+ 'department' => 'Department',
+ 'created_at' => 'Created At',
+ 'reply' => 'Reply',
+
+ 'create_ticket' => 'Create Ticket',
+ 'select_department' => 'Select Department',
+ 'select_priority' => 'Select Priority',
+ 'low' => 'Low',
+ 'medium' => 'Medium',
+ 'high' => 'High',
+
+ 'last_activity' => 'Last activity',
+
+ 'service' => 'Service',
+ 'select_service' => 'Select Service',
+ 'create' => 'Create',
+];
diff --git a/lang/ko/validation.php b/lang/ko/validation.php
new file mode 100644
index 000000000..aea190d40
--- /dev/null
+++ b/lang/ko/validation.php
@@ -0,0 +1,192 @@
+ 'The :attribute field must be accepted.',
+ 'accepted_if' => 'The :attribute field must be accepted when :other is :value.',
+ 'active_url' => 'The :attribute field must be a valid URL.',
+ 'after' => 'The :attribute field must be a date after :date.',
+ 'after_or_equal' => 'The :attribute field must be a date after or equal to :date.',
+ 'alpha' => 'The :attribute field must only contain letters.',
+ 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.',
+ 'alpha_num' => 'The :attribute field must only contain letters and numbers.',
+ 'array' => 'The :attribute field must be an array.',
+ 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.',
+ 'before' => 'The :attribute field must be a date before :date.',
+ 'before_or_equal' => 'The :attribute field must be a date before or equal to :date.',
+ 'between' => [
+ 'array' => 'The :attribute field must have between :min and :max items.',
+ 'file' => 'The :attribute field must be between :min and :max kilobytes.',
+ 'numeric' => 'The :attribute field must be between :min and :max.',
+ 'string' => 'The :attribute field must be between :min and :max characters.',
+ ],
+ 'boolean' => 'The :attribute field must be true or false.',
+ 'can' => 'The :attribute field contains an unauthorized value.',
+ 'confirmed' => 'The :attribute field confirmation does not match.',
+ 'current_password' => 'The password is incorrect.',
+ 'date' => 'The :attribute field must be a valid date.',
+ 'date_equals' => 'The :attribute field must be a date equal to :date.',
+ 'date_format' => 'The :attribute field must match the format :format.',
+ 'decimal' => 'The :attribute field must have :decimal decimal places.',
+ 'declined' => 'The :attribute field must be declined.',
+ 'declined_if' => 'The :attribute field must be declined when :other is :value.',
+ 'different' => 'The :attribute field and :other must be different.',
+ 'digits' => 'The :attribute field must be :digits digits.',
+ 'digits_between' => 'The :attribute field must be between :min and :max digits.',
+ 'dimensions' => 'The :attribute field has invalid image dimensions.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.',
+ 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.',
+ 'email' => 'The :attribute field must be a valid email address.',
+ 'ends_with' => 'The :attribute field must end with one of the following: :values.',
+ 'enum' => 'The selected :attribute is invalid.',
+ 'exists' => 'The selected :attribute is invalid.',
+ 'extensions' => 'The :attribute field must have one of the following extensions: :values.',
+ 'file' => 'The :attribute field must be a file.',
+ 'filled' => 'The :attribute field must have a value.',
+ 'gt' => [
+ 'array' => 'The :attribute field must have more than :value items.',
+ 'file' => 'The :attribute field must be greater than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than :value.',
+ 'string' => 'The :attribute field must be greater than :value characters.',
+ ],
+ 'gte' => [
+ 'array' => 'The :attribute field must have :value items or more.',
+ 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than or equal to :value.',
+ 'string' => 'The :attribute field must be greater than or equal to :value characters.',
+ ],
+ 'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
+ 'image' => 'The :attribute field must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field must exist in :other.',
+ 'integer' => 'The :attribute field must be an integer.',
+ 'ip' => 'The :attribute field must be a valid IP address.',
+ 'ipv4' => 'The :attribute field must be a valid IPv4 address.',
+ 'ipv6' => 'The :attribute field must be a valid IPv6 address.',
+ 'json' => 'The :attribute field must be a valid JSON string.',
+ 'list' => 'The :attribute field must be a list.',
+ 'lowercase' => 'The :attribute field must be lowercase.',
+ 'lt' => [
+ 'array' => 'The :attribute field must have less than :value items.',
+ 'file' => 'The :attribute field must be less than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than :value.',
+ 'string' => 'The :attribute field must be less than :value characters.',
+ ],
+ 'lte' => [
+ 'array' => 'The :attribute field must not have more than :value items.',
+ 'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than or equal to :value.',
+ 'string' => 'The :attribute field must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'The :attribute field must be a valid MAC address.',
+ 'max' => [
+ 'array' => 'The :attribute field must not have more than :max items.',
+ 'file' => 'The :attribute field must not be greater than :max kilobytes.',
+ 'numeric' => 'The :attribute field must not be greater than :max.',
+ 'string' => 'The :attribute field must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'The :attribute field must not have more than :max digits.',
+ 'mimes' => 'The :attribute field must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute field must be a file of type: :values.',
+ 'min' => [
+ 'array' => 'The :attribute field must have at least :min items.',
+ 'file' => 'The :attribute field must be at least :min kilobytes.',
+ 'numeric' => 'The :attribute field must be at least :min.',
+ 'string' => 'The :attribute field must be at least :min characters.',
+ ],
+ 'min_digits' => 'The :attribute field must have at least :min digits.',
+ 'missing' => 'The :attribute field must be missing.',
+ 'missing_if' => 'The :attribute field must be missing when :other is :value.',
+ 'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
+ 'missing_with' => 'The :attribute field must be missing when :values is present.',
+ 'missing_with_all' => 'The :attribute field must be missing when :values are present.',
+ 'multiple_of' => 'The :attribute field must be a multiple of :value.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute field format is invalid.',
+ 'numeric' => 'The :attribute field must be a number.',
+ 'password' => [
+ 'letters' => 'The :attribute field must contain at least one letter.',
+ 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
+ 'numbers' => 'The :attribute field must contain at least one number.',
+ 'symbols' => 'The :attribute field must contain at least one symbol.',
+ 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
+ ],
+ 'present' => 'The :attribute field must be present.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'The :attribute field is prohibited.',
+ 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'The :attribute field prohibits :other from being present.',
+ 'regex' => 'The :attribute field format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
+ 'same' => 'The :attribute field must match :other.',
+ 'size' => [
+ 'array' => 'The :attribute field must contain :size items.',
+ 'file' => 'The :attribute field must be :size kilobytes.',
+ 'numeric' => 'The :attribute field must be :size.',
+ 'string' => 'The :attribute field must be :size characters.',
+ ],
+ 'starts_with' => 'The :attribute field must start with one of the following: :values.',
+ 'string' => 'The :attribute field must be a string.',
+ 'timezone' => 'The :attribute field must be a valid timezone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'The :attribute failed to upload.',
+ 'uppercase' => 'The :attribute field must be uppercase.',
+ 'url' => 'The :attribute field must be a valid URL.',
+ 'ulid' => 'The :attribute field must be a valid ULID.',
+ 'uuid' => 'The :attribute field must be a valid UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'custom-message',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/lv/account.php b/lang/lv/account.php
new file mode 100644
index 000000000..a632cdd8c
--- /dev/null
+++ b/lang/lv/account.php
@@ -0,0 +1,52 @@
+ 'Account',
+ 'personal_details' => 'Personal details',
+ 'security' => 'Security',
+ 'credits' => 'Credits',
+
+ 'change_password' => 'Change password',
+
+ 'two_factor_authentication' => 'Two-factor authentication',
+ 'two_factor_authentication_description' => 'Add an extra layer of security to your account by enabling two-factor authentication.',
+ 'two_factor_authentication_enabled' => 'Two-factor authentication is enabled for your account.',
+ 'two_factor_authentication_enable' => 'Enable two-factor authentication',
+ 'two_factor_authentication_disable' => 'Disable two-factor authentication',
+ 'two_factor_authentication_enable_description' => 'Lai iespējotu divfaktoru autentifikāciju, jums vajag skenēt QR kodu kas norādīts zemāk ar jūsu autentifikatoru piemēram, Google Autentifikators vai Authy lietotni.',
+ 'two_factor_authentication_qr_code' => 'Scan the QR code below with your authenticator app:',
+ 'two_factor_authentication_secret' => 'Or enter the following code manually:',
+
+ 'sessions' => 'Sessions',
+ 'sessions_description' => 'Manage and log out your active sessions on other browsers and devices.',
+ 'logout_sessions' => 'Log this session out',
+
+ 'input' => [
+ 'current_password' => 'Current password',
+ 'current_password_placeholder' => 'Your current password',
+ 'new_password' => 'New password',
+ 'new_password_placeholder' => 'Your new password',
+ 'confirm_password' => 'Confirm password',
+ 'confirm_password_placeholder' => 'Confirm your new password',
+
+ 'two_factor_code' => 'Enter the code from your authenticator app',
+ 'two_factor_code_placeholder' => 'Your two-factor authentication code',
+
+ 'currency' => 'Currency',
+ 'amount' => 'Amount',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Password has been changed.',
+ 'password_incorrect' => 'The current password is incorrect.',
+ 'two_factor_enabled' => 'Two-factor authentication has been enabled.',
+ 'two_factor_disabled' => 'Two-factor authentication has been disabled.',
+ 'two_factor_code_incorrect' => 'The code is incorrect.',
+ 'session_logged_out' => 'Session has been logged out.',
+ ],
+
+ 'no_credit' => 'You have no credits.',
+ 'add_credit' => 'Add credit',
+ 'credit_deposit' => 'Credit deposit (:currency)',
+
+];
diff --git a/lang/lv/auth.php b/lang/lv/auth.php
new file mode 100644
index 000000000..724e099f7
--- /dev/null
+++ b/lang/lv/auth.php
@@ -0,0 +1,55 @@
+ 'These credentials do not match our records.',
+ 'password' => 'The provided password is incorrect.',
+ 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
+
+ 'sign_in' => 'Sign in',
+ 'sign_in_title' => 'Sign in to your account',
+ 'or_sign_in_with' => 'Or sign in with',
+ 'forgot_password' => 'Forgot your password?',
+ 'dont_have_account' => 'Don\'t have an account?',
+ 'already_have_account' => 'Already have an account?',
+
+ 'sign_up' => 'Sign up',
+ 'sign_up_title' => 'Create your account',
+
+ 'logout' => 'Logout',
+
+ 'input' => [
+ 'email' => 'Email',
+ 'email_label' => 'Email Address',
+ 'password' => 'Password',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Your Discord account is not verified.',
+ 'account_not_registered' => 'You are not registered on this site.',
+ ],
+
+ 'reset_password' => 'Reset password',
+
+ 'verify_2fa' => 'Verify 2FA',
+ 'verify' => 'Verify',
+
+ 'verification' => [
+ 'notice' => 'Verify your email address',
+ 'sent' => 'A new verification link has been sent to your email address.',
+ 'check_your_email' => 'Before proceeding, please check your email for a verification link.',
+ 'not_received' => 'If you did not receive the email you can request another verification email.',
+ 'request_another' => 'Resend verification email',
+ ],
+];
diff --git a/lang/lv/dashboard.php b/lang/lv/dashboard.php
new file mode 100644
index 000000000..d76cec452
--- /dev/null
+++ b/lang/lv/dashboard.php
@@ -0,0 +1,11 @@
+ 'Dashboard',
+ 'welcome_back' => 'Welcome back, :name!',
+ 'dashboard_description' => 'Manage your active services, invoices, tickets, and stay updated here.',
+ 'open_tickets' => 'Open Tickets',
+ 'unpaid_invoices' => 'Unpaid Invoices',
+ 'active_services' => 'Active Services',
+ 'view_all' => 'Pārskatīt visu',
+];
diff --git a/lang/lv/general.php b/lang/lv/general.php
new file mode 100644
index 000000000..a4ca082f8
--- /dev/null
+++ b/lang/lv/general.php
@@ -0,0 +1,36 @@
+ 'View',
+
+ 'input' => [
+ 'first_name' => 'First name',
+ 'first_name_placeholder' => 'Your first name',
+ 'last_name' => 'Last name',
+ 'last_name_placeholder' => 'Your last name',
+ 'email' => 'Email',
+ 'email_placeholder' => 'Your email address',
+ 'phone' => 'Phone',
+ 'phone_placeholder' => 'Your phone number',
+ 'company_name' => 'Company name',
+ 'company_name_placeholder' => 'Your company name',
+ 'country' => 'Country',
+ 'country_placeholder' => 'Your country',
+ 'city' => 'City',
+ 'city_placeholder' => 'Your city',
+ 'address' => 'Address',
+ 'address_placeholder' => 'Your address',
+ 'address2' => 'Address 2',
+ 'address2_placeholder' => 'Your address 2',
+ 'zip' => 'ZIP',
+ 'zip_placeholder' => 'Your ZIP code',
+ 'state' => 'State',
+ 'state_placeholder' => 'Your state',
+
+ 'password' => 'Password',
+ 'password_placeholder' => 'Your password',
+ ],
+
+ 'all_rights_reserved' => 'All rights reserved.',
+ 'update' => 'Atjaunināt',
+];
diff --git a/lang/lv/invoices.php b/lang/lv/invoices.php
new file mode 100644
index 000000000..6f94368dc
--- /dev/null
+++ b/lang/lv/invoices.php
@@ -0,0 +1,33 @@
+ 'Invoices',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Subtotal',
+ 'invoice' => 'Invoice #:id',
+ 'unit_price' => 'Unit Price',
+ 'bill_to' => 'Bill To',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Paid',
+ 'payment_pending' => 'Payment Pending',
+ 'checking_payment' => 'Checking Payment',
+ 'invoice_date' => 'Invoice Date',
+ 'invoice_no' => 'Invoice No',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Item',
+ 'quantity' => 'Quantity',
+ 'transactions' => 'Transactions',
+ 'transaction_id' => 'Transaction ID',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Payment Date',
+ 'payment_method' => 'Payment Method',
+ 'amount' => 'Amount',
+ 'date' => 'Datums',
+];
diff --git a/lang/lv/navigation.php b/lang/lv/navigation.php
new file mode 100644
index 000000000..e536db4f5
--- /dev/null
+++ b/lang/lv/navigation.php
@@ -0,0 +1,17 @@
+ 'Home',
+ 'shop' => 'Shop',
+ 'cart' => 'Cart',
+ 'login' => 'Login',
+ 'register' => 'Register',
+ 'services' => 'Services',
+ 'invoices' => 'Invoices',
+ 'account' => 'Account',
+ 'personal_details' => 'Personal Details',
+ 'security' => 'Security',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Administrators',
+];
diff --git a/lang/lv/pagination.php b/lang/lv/pagination.php
new file mode 100644
index 000000000..30398d8c1
--- /dev/null
+++ b/lang/lv/pagination.php
@@ -0,0 +1,19 @@
+ '« Previous',
+ 'next' => 'Nākamais »',
+
+];
diff --git a/lang/lv/passwords.php b/lang/lv/passwords.php
new file mode 100644
index 000000000..bc7a09586
--- /dev/null
+++ b/lang/lv/passwords.php
@@ -0,0 +1,11 @@
+ 'Jūsu parole tika atjaunota.',
+ 'sent' => 'E-pastā esam nosūtījuši jūsu paroles atjaunošanas saiti!',
+ 'throttled' => 'Lūdzu uzgaidiet pirms mēģināt vēlreiz',
+ 'token' => 'Paroles atjaunošanas žetons ir nederīga.',
+ 'user' => 'Mēs nevaram atrast lietotāju ar šādu e-pasta adresi.',
+
+];
diff --git a/lang/lv/product.php b/lang/lv/product.php
new file mode 100644
index 000000000..15bea8c70
--- /dev/null
+++ b/lang/lv/product.php
@@ -0,0 +1,29 @@
+ 'Add to cart',
+ 'view' => 'View',
+ 'checkout' => 'Checkout',
+ 'remove' => 'Remove',
+ 'empty_cart' => 'Your cart is empty',
+ 'total_today' => 'Total today',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Then after :time',
+ 'order_summary' => 'Order Summary',
+ 'edit' => 'Edit',
+
+ 'apply' => 'Apply',
+ 'price' => 'Price',
+ 'setup_fee' => 'Setup fee',
+
+ 'in_stock' => 'In stock',
+ 'out_of_stock' => 'Product :product is out of stock',
+ 'user_limit' => 'You have reached the limit of :product',
+ 'payment_method' => 'Payment method',
+ 'use_credits' => 'Use credits',
+ 'tos' => 'I agree to the ',
+ 'tos_link' => 'Terms of Service',
+ 'tos_required' => 'You must agree to the Terms of Service',
+];
diff --git a/lang/lv/services.php b/lang/lv/services.php
new file mode 100644
index 000000000..3e7dba052
--- /dev/null
+++ b/lang/lv/services.php
@@ -0,0 +1,32 @@
+ 'Services',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'name' => 'Name',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+
+ 'product_details' => 'Product Details',
+ 'billing_cycle' => 'Billing Cycle',
+ 'cancel' => 'Cancel',
+ 'cancellation' => 'Cancellation of :service',
+ 'cancel_are_you_sure' => 'Are you sure you want to cancel this service?',
+ 'cancel_reason' => 'Reason for cancellation',
+ 'cancel_type' => 'Cancellation Type',
+ 'cancel_immediate' => 'Cancel immediate',
+ 'cancel_end_of_period' => 'Cancel at the end of the billing period',
+ 'cancel_immediate_warning' => 'When you press the button below, the service will be cancelled immediately and you will not be able to use it anymore.',
+ 'cancellation_requested' => 'Cancellation requested',
+
+ 'current_plan' => 'Current Plan',
+ 'new_plan' => 'New Plan',
+ 'change_plan' => 'Change Plan',
+ 'current_price' => 'Current Price',
+ 'new_price' => 'New Price',
+ 'upgrade' => 'Upgrade',
+ 'upgrade_summary' => 'Upgrade Summary',
+ 'total_today' => 'Total Today',
+];
diff --git a/lang/lv/ticket.php b/lang/lv/ticket.php
new file mode 100644
index 000000000..ce39439fa
--- /dev/null
+++ b/lang/lv/ticket.php
@@ -0,0 +1,25 @@
+ 'Ticket Details',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Subject',
+ 'status' => 'Status',
+ 'priority' => 'Priority',
+ 'department' => 'Department',
+ 'created_at' => 'Created At',
+ 'reply' => 'Reply',
+
+ 'create_ticket' => 'Create Ticket',
+ 'select_department' => 'Select Department',
+ 'select_priority' => 'Select Priority',
+ 'low' => 'Low',
+ 'medium' => 'Medium',
+ 'high' => 'High',
+
+ 'last_activity' => 'Last activity',
+
+ 'service' => 'Service',
+ 'select_service' => 'Select Service',
+ 'create' => 'Create',
+];
diff --git a/lang/lv/validation.php b/lang/lv/validation.php
new file mode 100644
index 000000000..aea190d40
--- /dev/null
+++ b/lang/lv/validation.php
@@ -0,0 +1,192 @@
+ 'The :attribute field must be accepted.',
+ 'accepted_if' => 'The :attribute field must be accepted when :other is :value.',
+ 'active_url' => 'The :attribute field must be a valid URL.',
+ 'after' => 'The :attribute field must be a date after :date.',
+ 'after_or_equal' => 'The :attribute field must be a date after or equal to :date.',
+ 'alpha' => 'The :attribute field must only contain letters.',
+ 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.',
+ 'alpha_num' => 'The :attribute field must only contain letters and numbers.',
+ 'array' => 'The :attribute field must be an array.',
+ 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.',
+ 'before' => 'The :attribute field must be a date before :date.',
+ 'before_or_equal' => 'The :attribute field must be a date before or equal to :date.',
+ 'between' => [
+ 'array' => 'The :attribute field must have between :min and :max items.',
+ 'file' => 'The :attribute field must be between :min and :max kilobytes.',
+ 'numeric' => 'The :attribute field must be between :min and :max.',
+ 'string' => 'The :attribute field must be between :min and :max characters.',
+ ],
+ 'boolean' => 'The :attribute field must be true or false.',
+ 'can' => 'The :attribute field contains an unauthorized value.',
+ 'confirmed' => 'The :attribute field confirmation does not match.',
+ 'current_password' => 'The password is incorrect.',
+ 'date' => 'The :attribute field must be a valid date.',
+ 'date_equals' => 'The :attribute field must be a date equal to :date.',
+ 'date_format' => 'The :attribute field must match the format :format.',
+ 'decimal' => 'The :attribute field must have :decimal decimal places.',
+ 'declined' => 'The :attribute field must be declined.',
+ 'declined_if' => 'The :attribute field must be declined when :other is :value.',
+ 'different' => 'The :attribute field and :other must be different.',
+ 'digits' => 'The :attribute field must be :digits digits.',
+ 'digits_between' => 'The :attribute field must be between :min and :max digits.',
+ 'dimensions' => 'The :attribute field has invalid image dimensions.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.',
+ 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.',
+ 'email' => 'The :attribute field must be a valid email address.',
+ 'ends_with' => 'The :attribute field must end with one of the following: :values.',
+ 'enum' => 'The selected :attribute is invalid.',
+ 'exists' => 'The selected :attribute is invalid.',
+ 'extensions' => 'The :attribute field must have one of the following extensions: :values.',
+ 'file' => 'The :attribute field must be a file.',
+ 'filled' => 'The :attribute field must have a value.',
+ 'gt' => [
+ 'array' => 'The :attribute field must have more than :value items.',
+ 'file' => 'The :attribute field must be greater than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than :value.',
+ 'string' => 'The :attribute field must be greater than :value characters.',
+ ],
+ 'gte' => [
+ 'array' => 'The :attribute field must have :value items or more.',
+ 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than or equal to :value.',
+ 'string' => 'The :attribute field must be greater than or equal to :value characters.',
+ ],
+ 'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
+ 'image' => 'The :attribute field must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field must exist in :other.',
+ 'integer' => 'The :attribute field must be an integer.',
+ 'ip' => 'The :attribute field must be a valid IP address.',
+ 'ipv4' => 'The :attribute field must be a valid IPv4 address.',
+ 'ipv6' => 'The :attribute field must be a valid IPv6 address.',
+ 'json' => 'The :attribute field must be a valid JSON string.',
+ 'list' => 'The :attribute field must be a list.',
+ 'lowercase' => 'The :attribute field must be lowercase.',
+ 'lt' => [
+ 'array' => 'The :attribute field must have less than :value items.',
+ 'file' => 'The :attribute field must be less than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than :value.',
+ 'string' => 'The :attribute field must be less than :value characters.',
+ ],
+ 'lte' => [
+ 'array' => 'The :attribute field must not have more than :value items.',
+ 'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than or equal to :value.',
+ 'string' => 'The :attribute field must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'The :attribute field must be a valid MAC address.',
+ 'max' => [
+ 'array' => 'The :attribute field must not have more than :max items.',
+ 'file' => 'The :attribute field must not be greater than :max kilobytes.',
+ 'numeric' => 'The :attribute field must not be greater than :max.',
+ 'string' => 'The :attribute field must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'The :attribute field must not have more than :max digits.',
+ 'mimes' => 'The :attribute field must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute field must be a file of type: :values.',
+ 'min' => [
+ 'array' => 'The :attribute field must have at least :min items.',
+ 'file' => 'The :attribute field must be at least :min kilobytes.',
+ 'numeric' => 'The :attribute field must be at least :min.',
+ 'string' => 'The :attribute field must be at least :min characters.',
+ ],
+ 'min_digits' => 'The :attribute field must have at least :min digits.',
+ 'missing' => 'The :attribute field must be missing.',
+ 'missing_if' => 'The :attribute field must be missing when :other is :value.',
+ 'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
+ 'missing_with' => 'The :attribute field must be missing when :values is present.',
+ 'missing_with_all' => 'The :attribute field must be missing when :values are present.',
+ 'multiple_of' => 'The :attribute field must be a multiple of :value.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute field format is invalid.',
+ 'numeric' => 'The :attribute field must be a number.',
+ 'password' => [
+ 'letters' => 'The :attribute field must contain at least one letter.',
+ 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
+ 'numbers' => 'The :attribute field must contain at least one number.',
+ 'symbols' => 'The :attribute field must contain at least one symbol.',
+ 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
+ ],
+ 'present' => 'The :attribute field must be present.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'The :attribute field is prohibited.',
+ 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'The :attribute field prohibits :other from being present.',
+ 'regex' => 'The :attribute field format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
+ 'same' => 'The :attribute field must match :other.',
+ 'size' => [
+ 'array' => 'The :attribute field must contain :size items.',
+ 'file' => 'The :attribute field must be :size kilobytes.',
+ 'numeric' => 'The :attribute field must be :size.',
+ 'string' => 'The :attribute field must be :size characters.',
+ ],
+ 'starts_with' => 'The :attribute field must start with one of the following: :values.',
+ 'string' => 'The :attribute field must be a string.',
+ 'timezone' => 'The :attribute field must be a valid timezone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'The :attribute failed to upload.',
+ 'uppercase' => 'The :attribute field must be uppercase.',
+ 'url' => 'The :attribute field must be a valid URL.',
+ 'ulid' => 'The :attribute field must be a valid ULID.',
+ 'uuid' => 'The :attribute field must be a valid UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'custom-message',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/nl/account.php b/lang/nl/account.php
new file mode 100644
index 000000000..edbfe0a24
--- /dev/null
+++ b/lang/nl/account.php
@@ -0,0 +1,52 @@
+ 'Account',
+ 'personal_details' => 'Persoonlijke gegevens',
+ 'security' => 'Beveiliging',
+ 'credits' => 'Krediet',
+
+ 'change_password' => 'Wachtwoord wijzigen',
+
+ 'two_factor_authentication' => 'Tweestapsverificatie',
+ 'two_factor_authentication_description' => 'Voeg een extra beveiligingslaag toe aan je account door tweestapsverificatie in te schakelen.',
+ 'two_factor_authentication_enabled' => 'Tweestapsverificatie is ingeschakeld voor uw account.',
+ 'two_factor_authentication_enable' => 'Schakel tweestapsverificatie in',
+ 'two_factor_authentication_disable' => 'Schakel tweestapsverificatie uit',
+ 'two_factor_authentication_enable_description' => 'Om tweestapsverificatie in te schakelen, moet u onderstaande QR-code scannen met een authenticatie-app zoals Google Authenticator of Authy.',
+ 'two_factor_authentication_qr_code' => 'Scan de onderstaande QR-code met uw authenticatie-app:',
+ 'two_factor_authentication_secret' => 'Of voer de volgende code handmatig in:',
+
+ 'sessions' => 'Sessies',
+ 'sessions_description' => 'Beheer en log uw actieve sessies op andere browsers en apparaten uit.',
+ 'logout_sessions' => 'Deze sessie afmelden',
+
+ 'input' => [
+ 'current_password' => 'Huidig wachtwoord',
+ 'current_password_placeholder' => 'Uw huidige wachtwoord',
+ 'new_password' => 'Nieuw wachtwoord',
+ 'new_password_placeholder' => 'Uw nieuwe wachtwoord',
+ 'confirm_password' => 'Wachtwoord bevestigen',
+ 'confirm_password_placeholder' => 'Bevestig uw nieuwe wachtwoord',
+
+ 'two_factor_code' => 'Voer de code uit uw authenticatie-app in',
+ 'two_factor_code_placeholder' => 'Uw tweestapsverificatiecode',
+
+ 'currency' => 'Valuta',
+ 'amount' => 'Hoeveelheid',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Wachtwoord is gewijzigd.',
+ 'password_incorrect' => 'Het huidige wachtwoord is niet correct.',
+ 'two_factor_enabled' => 'Tweestapsverificatie is ingeschakeld.',
+ 'two_factor_disabled' => 'Tweestapsverificatie is uitgeschakeld.',
+ 'two_factor_code_incorrect' => 'De code is incorrect.',
+ 'session_logged_out' => 'De sessie is uitgelogd.',
+ ],
+
+ 'no_credit' => 'Je hebt geen krediet.',
+ 'add_credit' => 'Krediet toevoegen',
+ 'credit_deposit' => 'Kredietstorting (:currency)',
+
+];
diff --git a/lang/nl/auth.php b/lang/nl/auth.php
new file mode 100644
index 000000000..501ceb3b9
--- /dev/null
+++ b/lang/nl/auth.php
@@ -0,0 +1,55 @@
+ 'Deze combinatie van email en wachtwoord is niet geldig.',
+ 'password' => 'Het opgegeven wachtwoord is incorrect.',
+ 'throttle' => 'Te veel inlogpogingen. Probeer het over :seconds seconden opnieuw.',
+
+ 'sign_in' => 'Inloggen',
+ 'sign_in_title' => 'Log in op uw account',
+ 'or_sign_in_with' => 'Of log in met',
+ 'forgot_password' => 'Wachtwoord vergeten?',
+ 'dont_have_account' => 'Heeft u nog geen account?',
+ 'already_have_account' => 'Heeft u al een account?',
+
+ 'sign_up' => 'Registreren',
+ 'sign_up_title' => 'Maak uw account aan',
+
+ 'logout' => 'Uitloggen',
+
+ 'input' => [
+ 'email' => 'E-mail',
+ 'email_label' => 'E-mailadres',
+ 'password' => 'Wachtwoord',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Je Discord-account is niet geverifieerd.',
+ 'account_not_registered' => 'U bent niet geregistreerd op deze site.',
+ ],
+
+ 'reset_password' => 'Wachtwoord resetten',
+
+ 'verify_2fa' => '2FA verifiëren',
+ 'verify' => 'Verifiëren',
+
+ 'verification' => [
+ 'notice' => 'Verifieer uw e-mailadres',
+ 'sent' => 'Een nieuwe verificatie link naar je e-mailadres gestuurd.',
+ 'check_your_email' => 'Controleer voordat u verder gaat uw e-mail voor een verificatielink.',
+ 'not_received' => 'Als je de e-mail niet hebt ontvangen, kan je nog een verificatielink aanvragen.',
+ 'request_another' => 'Verificatie e-mail opnieuw versturen',
+ ],
+];
diff --git a/lang/nl/dashboard.php b/lang/nl/dashboard.php
new file mode 100644
index 000000000..cd2da13a9
--- /dev/null
+++ b/lang/nl/dashboard.php
@@ -0,0 +1,11 @@
+ 'Dashboard',
+ 'welcome_back' => 'Welkom terug, :name!',
+ 'dashboard_description' => 'Beheer uw actieve diensten, facturen en tickets.',
+ 'open_tickets' => 'Open tickets',
+ 'unpaid_invoices' => 'Onbetaalde facturen',
+ 'active_services' => 'Actieve services',
+ 'view_all' => 'Bekijk alle',
+];
diff --git a/lang/nl/general.php b/lang/nl/general.php
new file mode 100644
index 000000000..86a43ec5f
--- /dev/null
+++ b/lang/nl/general.php
@@ -0,0 +1,36 @@
+ 'Weergeven',
+
+ 'input' => [
+ 'first_name' => 'Voornaam',
+ 'first_name_placeholder' => 'Uw voornaam',
+ 'last_name' => 'Achternaam',
+ 'last_name_placeholder' => 'Uw achternaam',
+ 'email' => 'E-mail',
+ 'email_placeholder' => 'Uw e-mailadres',
+ 'phone' => 'Telefoonnummer',
+ 'phone_placeholder' => 'Uw telefoonnummer',
+ 'company_name' => 'Bedrijfsnaam',
+ 'company_name_placeholder' => 'Naam van uw bedrijf',
+ 'country' => 'Land',
+ 'country_placeholder' => 'Uw land',
+ 'city' => 'Stad',
+ 'city_placeholder' => 'Uw stad',
+ 'address' => 'Adres',
+ 'address_placeholder' => 'Uw adres',
+ 'address2' => 'Adres 2',
+ 'address2_placeholder' => 'Uw tweede adres',
+ 'zip' => 'Postcode',
+ 'zip_placeholder' => 'Uw postcode',
+ 'state' => 'Provincie',
+ 'state_placeholder' => 'Uw provincie',
+
+ 'password' => 'Wachtwoord',
+ 'password_placeholder' => 'Uw wachtwoord',
+ ],
+
+ 'all_rights_reserved' => 'Alle rechten voorbehouden.',
+ 'update' => 'Update',
+];
diff --git a/lang/nl/invoices.php b/lang/nl/invoices.php
new file mode 100644
index 000000000..6a380677d
--- /dev/null
+++ b/lang/nl/invoices.php
@@ -0,0 +1,33 @@
+ 'Facturen',
+ 'product' => 'Product',
+ 'price' => 'Prijs',
+ 'status' => 'Status',
+ 'actions' => 'Acties',
+ 'view' => 'Weergeven',
+ 'id' => 'ID',
+ 'total' => 'Totaal',
+ 'subtotal' => 'Subtotaal',
+ 'invoice' => 'Factuur #:id',
+ 'unit_price' => 'Prijs per stuk',
+ 'bill_to' => 'Factuur aan',
+ 'issued_to' => 'Op naam van',
+ 'paid' => 'Betaald',
+ 'payment_pending' => 'Betaling in afwachting',
+ 'checking_payment' => 'Betaling controleren',
+ 'invoice_date' => 'Factuurdatum',
+ 'invoice_no' => 'Factuurnummer',
+ 'tax_id' => 'BTW. nummer',
+ 'company_id' => 'KVK nummer',
+ 'item' => 'Artikel',
+ 'quantity' => 'Aantal',
+ 'transactions' => 'Transacties',
+ 'transaction_id' => 'Transactie-ID',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Betaaldatum',
+ 'payment_method' => 'Betaalmethode',
+ 'amount' => 'Bedrag',
+ 'date' => 'Datum',
+];
diff --git a/lang/nl/navigation.php b/lang/nl/navigation.php
new file mode 100644
index 000000000..ed5b38ffd
--- /dev/null
+++ b/lang/nl/navigation.php
@@ -0,0 +1,17 @@
+ 'Home',
+ 'shop' => 'Shop',
+ 'cart' => 'Winkelwagen',
+ 'login' => 'Inloggen',
+ 'register' => 'Registreren',
+ 'services' => 'Diensten',
+ 'invoices' => 'Facturen',
+ 'account' => 'Account',
+ 'personal_details' => 'Persoonlijke gegevens',
+ 'security' => 'Beveiliging',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/nl/pagination.php b/lang/nl/pagination.php
new file mode 100644
index 000000000..16ce4007c
--- /dev/null
+++ b/lang/nl/pagination.php
@@ -0,0 +1,19 @@
+ '« Terug',
+ 'next' => 'Volgende »',
+
+];
diff --git a/lang/nl/passwords.php b/lang/nl/passwords.php
new file mode 100644
index 000000000..3fa807ce0
--- /dev/null
+++ b/lang/nl/passwords.php
@@ -0,0 +1,11 @@
+ 'Uw wachtwoord is gereset.',
+ 'sent' => 'We hebben je een e-mail gestuurd met een link om je wachtwoord te resetten.',
+ 'throttled' => 'Wacht even voordat je het opnieuw probeert.',
+ 'token' => 'Dit wachtwoord reset token is ongeldig.',
+ 'user' => 'We kunnen geen gebruiker met dat e-mailadres vinden.',
+
+];
diff --git a/lang/nl/product.php b/lang/nl/product.php
new file mode 100644
index 000000000..e193232c6
--- /dev/null
+++ b/lang/nl/product.php
@@ -0,0 +1,29 @@
+ 'Aan winkelwagen toevoegen',
+ 'view' => 'Weergeven',
+ 'checkout' => 'Afrekenen',
+ 'remove' => 'Verwijder',
+ 'empty_cart' => 'Uw winkelwagen is leeg',
+ 'total_today' => 'Totale prijs vandaag',
+ 'subtotal' => 'Subtotaal',
+ 'total' => 'Totaal',
+
+ 'then_after_x' => 'Vervolgens na :time',
+ 'order_summary' => 'Besteloverzicht',
+ 'edit' => 'Bewerken',
+
+ 'apply' => 'Toepassen',
+ 'price' => 'Prijs',
+ 'setup_fee' => 'Eenmalige kosten',
+
+ 'in_stock' => 'Op voorraad',
+ 'out_of_stock' => 'Product :product is niet op voorraad',
+ 'user_limit' => 'U heeft het limiet van :product bereikt',
+ 'payment_method' => 'Betaalmethode',
+ 'use_credits' => 'Krediet gebruiken',
+ 'tos' => '',
+ 'tos_link' => 'Algemene voorwaarden',
+ 'tos_required' => 'U moet akkoord gaan met de algemene voorwaarden',
+];
diff --git a/lang/nl/services.php b/lang/nl/services.php
new file mode 100644
index 000000000..fc47bb040
--- /dev/null
+++ b/lang/nl/services.php
@@ -0,0 +1,47 @@
+ 'Diensten',
+ 'product' => 'Product',
+ 'price' => 'Prijs',
+ 'status' => 'Status',
+ 'name' => 'Naam',
+ 'actions' => 'Acties',
+ 'view' => 'Weergeven',
+
+ 'product_details' => 'Productinformatie',
+ 'billing_cycle' => 'Factuurperiode',
+ 'cancel' => 'Opzeggen',
+ 'cancellation' => 'Opzegging van :service',
+ 'cancel_are_you_sure' => 'Weet u zeker dat u deze dienst wilt opzeggen?',
+ 'cancel_reason' => 'Reden voor opzegging',
+ 'cancel_type' => 'Type opzegging',
+ 'cancel_immediate' => 'Direct opzeggen',
+ 'cancel_end_of_period' => 'Opzeggen aan het einde van de factureringsperiode',
+ 'cancel_immediate_warning' => 'Wanneer u op onderstaande knop drukt, wordt de service onmiddellijk geannuleerd en kunt u hem niet meer gebruiken.',
+ 'cancellation_requested' => 'Opzeggingsverzoek',
+
+ 'current_plan' => 'Huidig pakket',
+ 'new_plan' => 'Nieuw pakket',
+ 'change_plan' => 'Pakket veranderen',
+ 'current_price' => 'Huidige prijs',
+ 'new_price' => 'Nieuwe prijs',
+ 'upgrade' => 'Upgrade',
+ 'upgrade_summary' => 'Upgrade Overzicht',
+ 'total_today' => 'Totale prijs vandaag',
+
+ 'statuses' => [
+ 'pending' => 'In afwachting',
+ 'active' => 'Actief',
+ 'cancelled' => 'Geannuleerd',
+ 'suspended' => 'Gepauzeerd',
+ ],
+ 'billing_cycles' => [
+ 'day' => 'dag|dagen',
+ 'week' => 'week|weken',
+ 'month' => 'maand|maanden',
+ 'year' => 'jaar|jaren',
+ ],
+ 'every_period' => 'Elke :period :unit',
+ 'price_every_period' => ':price per :period :unit',
+];
diff --git a/lang/nl/ticket.php b/lang/nl/ticket.php
new file mode 100644
index 000000000..4de796263
--- /dev/null
+++ b/lang/nl/ticket.php
@@ -0,0 +1,25 @@
+ 'Ticket Informatie',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Onderwerp',
+ 'status' => 'Status',
+ 'priority' => 'Prioriteit',
+ 'department' => 'Afdeling',
+ 'created_at' => 'Aangemaakt op',
+ 'reply' => 'Reageren',
+
+ 'create_ticket' => 'Ticket Aanmaken',
+ 'select_department' => 'Selecteer Afdeling',
+ 'select_priority' => 'Selecteer Prioriteit',
+ 'low' => 'Laag',
+ 'medium' => 'Gemiddeld',
+ 'high' => 'Hoog',
+
+ 'last_activity' => 'Laatste activiteit',
+
+ 'service' => 'Dienst',
+ 'select_service' => 'Selecteer Service',
+ 'create' => 'Creëer',
+];
diff --git a/lang/nl/validation.php b/lang/nl/validation.php
new file mode 100644
index 000000000..4aeedfe4f
--- /dev/null
+++ b/lang/nl/validation.php
@@ -0,0 +1,192 @@
+ ':attribute moet worden geaccepteerd.',
+ 'accepted_if' => ':attribute moet worden geaccepteerd als :other :value is.',
+ 'active_url' => ':attribute moet een geldige URL zijn.',
+ 'after' => ':attribute moet een datum na :date zijn.',
+ 'after_or_equal' => ':attribute moet een datum na of gelijk aan :date zijn.',
+ 'alpha' => ':attribute mag alleen letters bevatten.',
+ 'alpha_dash' => ':attribute mag alleen letters, nummers, underscores (_) en streepjes (-) bevatten.',
+ 'alpha_num' => ':attribute mag alleen letters en nummers bevatten.',
+ 'array' => ':attribute moet een reeks zijn.',
+ 'ascii' => ':attribute mag alleen alfanumerieke tekens en symbolen van één byte bevatten.',
+ 'before' => ':attribute moet een datum vóór :date zijn.',
+ 'before_or_equal' => ':attribute moet een datum vóór of gelijk aan :date zijn.',
+ 'between' => [
+ 'array' => ':attribute moet tussen :min en :max items bevatten.',
+ 'file' => ':attribute moet tussen :min en :max kilobytes zijn.',
+ 'numeric' => ':attribute moet tussen :min en :max zijn.',
+ 'string' => ':attribute moet tussen :min en :max karakters zijn.',
+ ],
+ 'boolean' => ':attribute moet ja of nee zijn.',
+ 'can' => ':attribute bevat een ongeldige waarde.',
+ 'confirmed' => 'Bevestiging van :attribute komt niet overeen.',
+ 'current_password' => 'Het wachtwoord is onjuist.',
+ 'date' => ':attribute dient een geldige datum te bevatten.',
+ 'date_equals' => ':attribute moet een datum gelijk aan :date zijn.',
+ 'date_format' => ':attribute dient overeen te komen met het format :format.',
+ 'decimal' => ':attribute moet :decimal decimalen hebben.',
+ 'declined' => ':attribute moet afgewezen worden.',
+ 'declined_if' => ':attribute moet afgewezen worden wanneer :other gelijk is aan :value.',
+ 'different' => ':attribute en :other mogen niet hetzelfde zijn.',
+ 'digits' => ':attribute moet bestaan uit :digits cijfers.',
+ 'digits_between' => ':attribute moet tussen :min en :max cijfers zijn.',
+ 'dimensions' => ':attribute heeft een ongeldig afbeeldingsformaat.',
+ 'distinct' => ':attribute heeft een dubbele waarde.',
+ 'doesnt_end_with' => ':attribute mag niet eindigen met één van de volgende waarden: :values.',
+ 'doesnt_start_with' => ':attribute mag niet beginnen met één van de volgende waarden: :values.',
+ 'email' => ':attribute dient een geldig e-mailadres te zijn.',
+ 'ends_with' => ':attribute moet met één van de volgende waarden eindigen: :values.',
+ 'enum' => 'Geselecteerde :attribute is ongeldig.',
+ 'exists' => 'Geselecteerde :attribute is ongeldig.',
+ 'extensions' => ':attribute moet een van de volgende extensies hebben: :values.',
+ 'file' => ':attribute moet een bestand zijn.',
+ 'filled' => ':attribute moet een waarde hebben.',
+ 'gt' => [
+ 'array' => ':attribute moet meer dan :value waardes bevatten.',
+ 'file' => ':attribute moet groter zijn dan :value kilobytes.',
+ 'numeric' => ':attribute moet groter zijn dan :value.',
+ 'string' => ':attribute moet meer dan :value tekens bevatten.',
+ ],
+ 'gte' => [
+ 'array' => ':attribute moet :value of meer waardes bevatten.',
+ 'file' => ':attribute moet groter of gelijk zijn aan :value kilobytes.',
+ 'numeric' => ':attribute moet groter of gelijk zijn aan :value.',
+ 'string' => ':attribute moet groter of gelijk zijn aan :value tekens.',
+ ],
+ 'hex_color' => ':attribute moet een geldige hexadecimale kleurcode zijn.',
+ 'image' => ':attribute moet een afbeelding zijn.',
+ 'in' => 'De geselecteerde :attribute is ongeldig.',
+ 'in_array' => ':attribute dient te bestaan in :other.',
+ 'integer' => ':attribute moet een getal zijn.',
+ 'ip' => ':attribute moet een geldig IP-adres zijn.',
+ 'ipv4' => ':ttribute moet een geldig IPv4-adres zijn.',
+ 'ipv6' => ':attribute moet een geldig IPv6-adres zijn.',
+ 'json' => ':attribute moet een geldige JSON-string zijn.',
+ 'list' => ':attribute moet een lijst zijn.',
+ 'lowercase' => ':attribute mag alleen kleine letters bevatten.',
+ 'lt' => [
+ 'array' => ':attribute moet minder dan :value waardes bevatten.',
+ 'file' => ':attribute moet kleiner zijn dan :value kilobytes.',
+ 'numeric' => ':attribute moet kleiner zijn dan :value.',
+ 'string' => ':attribute moet minder dan :value tekens bevatten.',
+ ],
+ 'lte' => [
+ 'array' => ':attribute moet :value of minder waardes bevatten.',
+ 'file' => ':attribute moet kleiner of gelijk zijn aan :value kilobytes.',
+ 'numeric' => ':attribute moet kleiner of gelijk zijn aan :value.',
+ 'string' => ':attribute mag maximaal :value tekens bevatten.',
+ ],
+ 'mac_address' => ':attribute moet een geldig MAC-adres zijn.',
+ 'max' => [
+ 'array' => ':attribute mag niet meer dan :max waardes bevatten.',
+ 'file' => ':attribute mag niet meer dan :max kilobytes zijn.',
+ 'numeric' => ':attribute mag niet hoger dan :max zijn.',
+ 'string' => ':attribute mag niet uit meer dan :max tekens bestaan.',
+ ],
+ 'max_digits' => ':attribute mag niet meer dan :max cijfers bevatten.',
+ 'mimes' => ':attribute moet een bestand zijn van het type: :values.',
+ 'mimetypes' => ':attribute moet een bestand zijn van het type: :values.',
+ 'min' => [
+ 'array' => ':attribute moet minimaal :min waardes bevatten.',
+ 'file' => ':attribute moet minimaal :min kilobytes zijn.',
+ 'numeric' => ':attribute moet minimaal :min zijn.',
+ 'string' => ':attribute moet minimaal :min tekens zijn.',
+ ],
+ 'min_digits' => ':attribute moet minimaal uit :min cijfers bestaan.',
+ 'missing' => ':attribute moet leeg zijn.',
+ 'missing_if' => ':attribute moet leeg zijn als :other :value is.',
+ 'missing_unless' => ':attribute moet leeg zijn tenzij :other :value is.',
+ 'missing_with' => ':attribute moet leeg zijn wanneer :values aanwezig is.',
+ 'missing_with_all' => ':attribute moet leeg zijn als :values aanwezig zijn.',
+ 'multiple_of' => ':attribute moet een veelvoud van :value zijn.',
+ 'not_in' => 'De geselecteerde :attribute is ongeldig.',
+ 'not_regex' => 'Het formaat van :attribute is ongeldig.',
+ 'numeric' => ':attribute moet een getal zijn.',
+ 'password' => [
+ 'letters' => ':attribute moet minimaal één letter bevatten.',
+ 'mixed' => ':attribute moet minimaal één kleine letter en één hoofdletter bevatten.',
+ 'numbers' => ':attribute moet minimaal één cijfer bevatten.',
+ 'symbols' => ':attribute moet minimaal één symbool bevatten.',
+ 'uncompromised' => 'De opgegeven :attribute komt voor in een datalek. Kies een ander :attribute.',
+ ],
+ 'present' => ':attribute mag niet leeg zijn.',
+ 'present_if' => ':attribute mag niet leeg zijn als :other :value is.',
+ 'present_unless' => ':attribute mag niet leeg zijn tenzij :other :value is.',
+ 'present_with' => ':attribute mag niet leeg zijn als :values aanwezig is.',
+ 'present_with_all' => ':attribute mag niet leeg zijn als :values aanwezig zijn.',
+ 'prohibited' => ':attribute is verboden.',
+ 'prohibited_if' => ':attribute is verboden wanneer :other :value is.',
+ 'prohibited_unless' => ':attribute is verboden tenzij :other in :values staat.',
+ 'prohibits' => ':attribute is niet toegestaan in combinatie met :other.',
+ 'regex' => 'Het formaat van :attribute is ongeldig.',
+ 'required' => ':attribute is verplicht.',
+ 'required_array_keys' => ':attribute moet waardes bevatten voor :values.',
+ 'required_if' => ':attribute is verplicht indien :other gelijk is aan :value.',
+ 'required_if_accepted' => ':attribute is verplicht indien :other is geaccepteerd.',
+ 'required_unless' => ':attribute is verplicht tenzij :other gelijk is aan :values.',
+ 'required_with' => ':attribute mag niet leeg zijn als :values aanwezig is.',
+ 'required_with_all' => ':attribute mag niet leeg zijn als :values aanwezig zijn.',
+ 'required_without' => ':attribute mag niet leeg zijn als :values niet ingevuld is.',
+ 'required_without_all' => ':attribute mag niet leeg zijn wanneer geen van :values aanwezig zijn.',
+ 'same' => ':attribute en :other moeten overeenkomen.',
+ 'size' => [
+ 'array' => ':attribute moet :size waardes bevatten.',
+ 'file' => ':attribute moet :size kilobytes groot zijn.',
+ 'numeric' => ':attribute moet :size zijn.',
+ 'string' => ':attribute moet :size tekens zijn.',
+ ],
+ 'starts_with' => ':attribute moet beginnen met een van de volgende: :values.',
+ 'string' => ':attribute moet een tekst zijn.',
+ 'timezone' => ':attribute moet een geldige tijdzone zijn.',
+ 'unique' => ':attribute is al in gebruik.',
+ 'uploaded' => 'Het uploaden van :attribute is mislukt.',
+ 'uppercase' => ':Attribute mag alleen hoofdletters bevatten.',
+ 'url' => ':attribute moet een geldige URL zijn.',
+ 'ulid' => ':attribute moet een geldige ULID zijn.',
+ 'uuid' => ':attribute moet een geldige UUID zijn.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'custom-message',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/no/account.php b/lang/no/account.php
new file mode 100644
index 000000000..a5ab98d14
--- /dev/null
+++ b/lang/no/account.php
@@ -0,0 +1,52 @@
+ 'Konto',
+ 'personal_details' => 'Personlige opplysninger',
+ 'security' => 'Sikkerhet',
+ 'credits' => 'Kreditt',
+
+ 'change_password' => 'Endre passord',
+
+ 'two_factor_authentication' => 'Tofaktor autentisering',
+ 'two_factor_authentication_description' => 'Legg til et ekstra sikkerhetslag for kontoen din ved å aktivere to-faktor autentisering.',
+ 'two_factor_authentication_enabled' => 'To-faktor autentisering er aktivert for kontoen din.',
+ 'two_factor_authentication_enable' => 'Aktiver to-faktor autentisering',
+ 'two_factor_authentication_disable' => 'Deaktiver to-faktor autentisering',
+ 'two_factor_authentication_enable_description' => 'For å aktivere to-faktor autentisering, må du skanne QR-koden nedenfor med en autentiseringsapp som Google Authenticator eller Authy.',
+ 'two_factor_authentication_qr_code' => 'Skann QR-koden nedenfor med din autentiseringsapp:',
+ 'two_factor_authentication_secret' => 'Eller skriv inn følgende kode manuelt:',
+
+ 'sessions' => 'Økter',
+ 'sessions_description' => 'Administrer og logg ut dine aktive økter i andre nettlesere og enheter.',
+ 'logout_sessions' => 'Logg ut denne økten',
+
+ 'input' => [
+ 'current_password' => 'Nåværende passord',
+ 'current_password_placeholder' => 'Ditt nåværende passord',
+ 'new_password' => 'Nytt passord',
+ 'new_password_placeholder' => 'Ditt nye passord',
+ 'confirm_password' => 'Bekreft passord',
+ 'confirm_password_placeholder' => 'Bekreft nytt passord',
+
+ 'two_factor_code' => 'Skriv inn koden fra autentiseringsappen',
+ 'two_factor_code_placeholder' => 'Din to-faktor autentiseringskode',
+
+ 'currency' => 'Valuta',
+ 'amount' => 'Beløp',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Passordet er endret.',
+ 'password_incorrect' => 'Oppgitt passord er feil.',
+ 'two_factor_enabled' => 'To-faktor autentisering er aktivert.',
+ 'two_factor_disabled' => 'To-faktor autentisering er deaktivert.',
+ 'two_factor_code_incorrect' => 'Koden er feil.',
+ 'session_logged_out' => 'Økten har blitt logget ut.',
+ ],
+
+ 'no_credit' => 'Du har ingen kreditter.',
+ 'add_credit' => 'Legg til kreditt',
+ 'credit_deposit' => 'Kredit innskudd (:currency)',
+
+];
diff --git a/lang/no/auth.php b/lang/no/auth.php
new file mode 100644
index 000000000..cb6ad133a
--- /dev/null
+++ b/lang/no/auth.php
@@ -0,0 +1,55 @@
+ 'Disse opplysningene samsvarer ikke med våre registre.',
+ 'password' => 'Oppgitt passord er feil.',
+ 'throttle' => 'For mange påloggingsforsøk. Prøv igjen om :seconds sekunder.',
+
+ 'sign_in' => 'Logg inn',
+ 'sign_in_title' => 'Logg på kontoen din',
+ 'or_sign_in_with' => 'Eller logg på med',
+ 'forgot_password' => 'Glemt passordet?',
+ 'dont_have_account' => 'Har du ikke en konto?',
+ 'already_have_account' => 'Har du allerede en konto?',
+
+ 'sign_up' => 'Registrer deg',
+ 'sign_up_title' => 'Opprett konto',
+
+ 'logout' => 'Logg ut',
+
+ 'input' => [
+ 'email' => 'Epost',
+ 'email_label' => 'Epostadresse',
+ 'password' => 'Passord',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Din Discord konto er ikke bekreftet.',
+ 'account_not_registered' => 'Du er ikke registrert på dette nettstedet.',
+ ],
+
+ 'reset_password' => 'Tilbakestill passord',
+
+ 'verify_2fa' => 'Verifiser 2FA',
+ 'verify' => 'Bekreft',
+
+ 'verification' => [
+ 'notice' => 'Bekreft eposten din',
+ 'sent' => 'En bekreftelseslenke har blitt sendt til din epostadresse.',
+ 'check_your_email' => 'Før du fortsetter må du sjekke eposten din for verifiseringslenken.',
+ 'not_received' => 'Hvis du ikke mottok eposten kan du be om en annen bekreftelse på e-post.',
+ 'request_another' => 'Send bekreftelse på nytt',
+ ],
+];
diff --git a/lang/no/dashboard.php b/lang/no/dashboard.php
new file mode 100644
index 000000000..203980bab
--- /dev/null
+++ b/lang/no/dashboard.php
@@ -0,0 +1,11 @@
+ 'Skrivebord',
+ 'welcome_back' => 'Velkommen tilbake, :name!',
+ 'dashboard_description' => 'Behandle dine aktive tjenester, fakturaer, saker, og hold deg oppdatert her.',
+ 'open_tickets' => 'Åpne saker',
+ 'unpaid_invoices' => 'Ubetalte fakturaer',
+ 'active_services' => 'Aktive tjenester',
+ 'view_all' => 'Vis alle',
+];
diff --git a/lang/no/general.php b/lang/no/general.php
new file mode 100644
index 000000000..c4051c1f6
--- /dev/null
+++ b/lang/no/general.php
@@ -0,0 +1,36 @@
+ 'Vis',
+
+ 'input' => [
+ 'first_name' => 'Fornavn',
+ 'first_name_placeholder' => 'Ditt fornavn',
+ 'last_name' => 'Etternavn',
+ 'last_name_placeholder' => 'Ditt etternavn ',
+ 'email' => 'Epost',
+ 'email_placeholder' => 'Din epost adresse',
+ 'phone' => 'Telefon',
+ 'phone_placeholder' => 'Telefonnummeret ditt',
+ 'company_name' => 'Firma navn',
+ 'company_name_placeholder' => 'Ditt firma navn',
+ 'country' => 'Land',
+ 'country_placeholder' => 'Ditt land',
+ 'city' => 'By',
+ 'city_placeholder' => 'Byen din',
+ 'address' => 'Adresse',
+ 'address_placeholder' => 'Din adresse',
+ 'address2' => 'Adresse 2',
+ 'address2_placeholder' => 'Din adresse 2',
+ 'zip' => 'Postnummer',
+ 'zip_placeholder' => 'Ditt postnummer',
+ 'state' => 'Fylke',
+ 'state_placeholder' => 'Ditt fylke',
+
+ 'password' => 'Passord',
+ 'password_placeholder' => 'Ditt passord',
+ ],
+
+ 'all_rights_reserved' => 'Alle rettigheter reservert.',
+ 'update' => 'Oppdater',
+];
diff --git a/lang/no/invoices.php b/lang/no/invoices.php
new file mode 100644
index 000000000..f62843c71
--- /dev/null
+++ b/lang/no/invoices.php
@@ -0,0 +1,33 @@
+ 'Fakturaer',
+ 'product' => 'Produkt',
+ 'price' => 'Pris',
+ 'status' => 'Status',
+ 'actions' => 'Handlinger',
+ 'view' => 'Vis',
+ 'id' => 'ID',
+ 'total' => 'Totalt',
+ 'subtotal' => 'Delsum',
+ 'invoice' => 'Faktura #:id',
+ 'unit_price' => 'Enhetspris',
+ 'bill_to' => 'Fakturer Til',
+ 'issued_to' => 'Utstedt til',
+ 'paid' => 'Betalt',
+ 'payment_pending' => 'Venter på betaling',
+ 'checking_payment' => 'Kontrollerer betaling',
+ 'invoice_date' => 'Fakturadato',
+ 'invoice_no' => 'Faktura nr',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Produkt',
+ 'quantity' => 'Antall',
+ 'transactions' => 'Transaksjoner',
+ 'transaction_id' => 'Transaksjons ID',
+ 'gateway' => 'Betalingsløsning',
+ 'payment_date' => 'Betalingsdato',
+ 'payment_method' => 'Betalingsløsning',
+ 'amount' => 'Beløp',
+ 'date' => 'Dato',
+];
diff --git a/lang/no/navigation.php b/lang/no/navigation.php
new file mode 100644
index 000000000..81cc51718
--- /dev/null
+++ b/lang/no/navigation.php
@@ -0,0 +1,17 @@
+ 'Hjem',
+ 'shop' => 'Butikk',
+ 'cart' => 'Handlevogn',
+ 'login' => 'Logg inn',
+ 'register' => 'Registrer',
+ 'services' => 'Tjenester',
+ 'invoices' => 'Fakturaer',
+ 'account' => 'Konto',
+ 'personal_details' => 'Personopplysninger',
+ 'security' => 'Sikkerhet',
+ 'dashboard' => 'Kontrollpanel',
+ 'tickets' => 'Saker',
+ 'admin' => 'Administrator',
+];
diff --git a/lang/no/pagination.php b/lang/no/pagination.php
new file mode 100644
index 000000000..bdbb2f660
--- /dev/null
+++ b/lang/no/pagination.php
@@ -0,0 +1,19 @@
+ '« Forrige',
+ 'next' => 'Neste »',
+
+];
diff --git a/lang/no/passwords.php b/lang/no/passwords.php
new file mode 100644
index 000000000..db290c953
--- /dev/null
+++ b/lang/no/passwords.php
@@ -0,0 +1,11 @@
+ 'Ditt passord er tilbakestilt.',
+ 'sent' => 'Vi har sendt deg en epost med lenken for tilbakestilling av passord.',
+ 'throttled' => 'Vennligst vent før du prøver igjen.',
+ 'token' => 'Denne tilbakestillings nøkkelen er ugyldig.',
+ 'user' => 'Vi finner ingen bruker med den epostadressen.',
+
+];
diff --git a/lang/no/product.php b/lang/no/product.php
new file mode 100644
index 000000000..f5576d60c
--- /dev/null
+++ b/lang/no/product.php
@@ -0,0 +1,29 @@
+ 'Legg i handlekurv',
+ 'view' => 'Vis',
+ 'checkout' => 'Til kassen',
+ 'remove' => 'Fjern',
+ 'empty_cart' => 'Handlevognen er tom',
+ 'total_today' => 'Totalt i dag',
+ 'subtotal' => 'Delsum',
+ 'total' => 'Totalt',
+
+ 'then_after_x' => 'Så etter :time',
+ 'order_summary' => 'Ordreoversikt',
+ 'edit' => 'Redigere',
+
+ 'apply' => 'Bruk',
+ 'price' => 'Pris',
+ 'setup_fee' => 'Oppsett gebyr',
+
+ 'in_stock' => 'På lager',
+ 'out_of_stock' => 'Produktet :product er ikke på lager',
+ 'user_limit' => 'Du har nådd grensen for :product',
+ 'payment_method' => 'Betalingsmetode',
+ 'use_credits' => 'Bruk kreditt',
+ 'tos' => 'Jeg samtykker til',
+ 'tos_link' => 'Vilkår for bruk ',
+ 'tos_required' => 'Du må godta vilkårene for bruk',
+];
diff --git a/lang/no/services.php b/lang/no/services.php
new file mode 100644
index 000000000..1bde88a7e
--- /dev/null
+++ b/lang/no/services.php
@@ -0,0 +1,32 @@
+ 'Tjenester',
+ 'product' => 'Produkt',
+ 'price' => 'Pris',
+ 'status' => 'Status',
+ 'name' => 'Navn',
+ 'actions' => 'Handlinger',
+ 'view' => 'Vis',
+
+ 'product_details' => 'Produkt detaljer',
+ 'billing_cycle' => 'Fakturering intervall',
+ 'cancel' => 'Kanseller',
+ 'cancellation' => 'Kansellering av :service',
+ 'cancel_are_you_sure' => 'Er du sikker på at du vil avbestille denne tjenesten?',
+ 'cancel_reason' => 'Årsak til avbestilling',
+ 'cancel_type' => 'Avbestillings Type',
+ 'cancel_immediate' => 'Avbryt øyeblikkelig',
+ 'cancel_end_of_period' => 'Avbryt ved slutten av betalings perioden',
+ 'cancel_immediate_warning' => 'Når du trykker på knappen nedenfor, vil tjenesten kanselleres umiddelbart, og du vil ikke kunne bruke den lenger.',
+ 'cancellation_requested' => 'Avbestilling forespurt',
+
+ 'current_plan' => 'Gjeldende abonnement',
+ 'new_plan' => 'Ny abonnement',
+ 'change_plan' => 'Endre abonnement',
+ 'current_price' => 'Nåværende pris',
+ 'new_price' => 'Ny pris',
+ 'upgrade' => 'Oppgrader',
+ 'upgrade_summary' => 'Oppgrader sammendrag',
+ 'total_today' => 'Totalt i dag',
+];
diff --git a/lang/no/ticket.php b/lang/no/ticket.php
new file mode 100644
index 000000000..fde1c707f
--- /dev/null
+++ b/lang/no/ticket.php
@@ -0,0 +1,25 @@
+ 'Saksdetaljer',
+ 'tickets' => 'Saker',
+ 'subject' => 'Emne',
+ 'status' => 'Status',
+ 'priority' => 'Prioritet',
+ 'department' => 'Avdeling',
+ 'created_at' => 'Opprettet',
+ 'reply' => 'Svar',
+
+ 'create_ticket' => 'Opprett sak',
+ 'select_department' => 'Velg avdeling',
+ 'select_priority' => 'Velg prioritet',
+ 'low' => 'Lav',
+ 'medium' => 'Middels',
+ 'high' => 'Høy',
+
+ 'last_activity' => 'Siste aktivitet',
+
+ 'service' => 'Tjeneste',
+ 'select_service' => 'Velg tjeneste',
+ 'create' => 'Opprett',
+];
diff --git a/lang/no/validation.php b/lang/no/validation.php
new file mode 100644
index 000000000..aeffb388f
--- /dev/null
+++ b/lang/no/validation.php
@@ -0,0 +1,192 @@
+ ':attribute feltet må aksepteres.',
+ 'accepted_if' => 'Feltet :attribute må aksepteres når :other er :value.',
+ 'active_url' => ':attribute feltet må være en gyldig URL.',
+ 'after' => ':attribute feltet må være en dato etter :date.',
+ 'after_or_equal' => ':attribute må være en dato etter eller lik :date.',
+ 'alpha' => ':attribute må kun inneholde bokstaver.',
+ 'alpha_dash' => ':attribute kan kun inneholde bokstaver, tall, bindestreker og understreker.',
+ 'alpha_num' => ':attribute feltet må kun inneholde bokstaver og tall.',
+ 'array' => 'Attributtfeltet må være en liste.',
+ 'ascii' => 'Attributtfeltet kan bare inneholde alfabetiske tegn og symboler.',
+ 'before' => ':attribute feltet må være en dato før :date.',
+ 'before_or_equal' => ':attribute feltet må være en dato før eller lik :date.',
+ 'between' => [
+ 'array' => ':attribute feltet må ha mellom :min og :max elementer.',
+ 'file' => ':attribute feltet må være mellom :min og :max kilobytes.',
+ 'numeric' => '',
+ 'string' => ':attribute må være mellom :min og :max tegn.',
+ ],
+ 'boolean' => ':attribute må være sann eller usann.',
+ 'can' => ':attribute feltet inneholder en uautorisert verdi.',
+ 'confirmed' => ':attribute bekreftelsen er ikke like.',
+ 'current_password' => 'Passordet er feil.',
+ 'date' => ':attribute må være en gyldig dato.',
+ 'date_equals' => ':attribute feltet må være en dato lik :date.',
+ 'date_format' => ':attribute må samsvare med formatet :format.',
+ 'decimal' => ':attribute må ha :decimal tegn.',
+ 'declined' => ':attribute må reduseres.',
+ 'declined_if' => ':attribute må avvises når :other er :value',
+ 'different' => ':attribute og :other er forskjellig.',
+ 'digits' => ':attribute må være :digits sifre.',
+ 'digits_between' => ':attribute må være mellom :min og :max sifre.',
+ 'dimensions' => ':attribute har ugyldige bildedimensjoner.',
+ 'distinct' => ':attribute har en duplikat verdi.',
+ 'doesnt_end_with' => ':attribute må ikke slutte med en av følgende: :values',
+ 'doesnt_start_with' => ':attribute må ikke starte med en av følgende: :values.',
+ 'email' => ':attribute må være en gyldig e-postadresse.',
+ 'ends_with' => ':attribute må ende med én av følgende: :values.',
+ 'enum' => 'Den valgte :attribute er ugyldig.',
+ 'exists' => 'Den valgte :attribute er ugyldig.',
+ 'extensions' => ':attribute må ha en av følgende utvidelser: :values.',
+ 'file' => ':attribute må være en fil.',
+ 'filled' => ':attribute må ha en verdi.',
+ 'gt' => [
+ 'array' => ':attribute må inneholde mer enn :value elementer.',
+ 'file' => ':attribute må være større enn :value kilobyte.',
+ 'numeric' => ':attribute må være større enn :value.',
+ 'string' => ':attribute må være større enn :value tegn.',
+ ],
+ 'gte' => [
+ 'array' => ':attribute må ha :value elementer eller mer.',
+ 'file' => ':attribute må være større enn eller lik :value kilobyte.',
+ 'numeric' => ':attribute må være større enn eller lik :value.',
+ 'string' => ':attribute må være større eller lik :value tegn.',
+ ],
+ 'hex_color' => ':attribute må være en gyldig heksadesimalfarge.',
+ 'image' => ':attribute må være et bilde.',
+ 'in' => 'Den valgte :attribute er ugyldig.',
+ 'in_array' => ':attribute må finnes i :other.',
+ 'integer' => ':attribute må være et heltall.',
+ 'ip' => ':attribute må være en gyldig IP adresse.',
+ 'ipv4' => ':attribute må være en gyldig IPv4 adresse.',
+ 'ipv6' => ':attribute må være en gyldig IPv6 adresse.',
+ 'json' => ':attribute må være en gyldig JSON streng.',
+ 'list' => ':attribute må være en liste.',
+ 'lowercase' => ':attribute feltet må være små bokstaver.',
+ 'lt' => [
+ 'array' => ':attribute må ha mindre enn :value elementer.',
+ 'file' => ':attribute må være mindre enn :value kilobytes.',
+ 'numeric' => ':attribute må være mindre enn :value.',
+ 'string' => ':attribute må være mindre enn :value tegn.',
+ ],
+ 'lte' => [
+ 'array' => ':attribute må ikke inneholde mer enn :value elementer.',
+ 'file' => ':attribute må være mindre enn eller lik :value kilobytes.',
+ 'numeric' => ':attribute må være mindre enn eller lik :value.',
+ 'string' => ':attribute må være mindre enn eller lik :value tegn.',
+ ],
+ 'mac_address' => ':attribute må være en gyldig MAC adresse.',
+ 'max' => [
+ 'array' => ':attribute må ikke inneholde mer enn :max elementer.',
+ 'file' => ':attribute må ikke være større enn :max kilobytes.',
+ 'numeric' => ':attribute må ikke være større enn :max.',
+ 'string' => ':attribute kan ikke være større enn :max tegn.',
+ ],
+ 'max_digits' => ':attribute må ikke inneholde mer enn :max sifre.',
+ 'mimes' => ':attribute må være en fil av typen: :values.',
+ 'mimetypes' => ':attribute må være en fil av typen: :values.',
+ 'min' => [
+ 'array' => ':attribute må ha minst :min elementer.',
+ 'file' => ':attribute må være minst :min kilobytes.',
+ 'numeric' => ':attribute må være minst :min.',
+ 'string' => ':attribute må være minst :min tegn.',
+ ],
+ 'min_digits' => ':attribute må ha minst :min sifre.',
+ 'missing' => ':attribute feltet mangler.',
+ 'missing_if' => ':attribute mangler når :other er :value.',
+ 'missing_unless' => ':attribute mangler når :other er :value.',
+ 'missing_with' => ':attribute mangler når :values er tilstede.',
+ 'missing_with_all' => ':attribute mangler når :values er tilstede.',
+ 'multiple_of' => ':attribute må være et flere av :value.',
+ 'not_in' => 'Valgt :attribute er ugyldig.',
+ 'not_regex' => ':attribute er ugyldig.',
+ 'numeric' => ':attribute må være et nummer.',
+ 'password' => [
+ 'letters' => ':attribute må inneholde minst én bokstav.',
+ 'mixed' => ':attribute må inneholde minst en stor bokstav og en liten bokstav.',
+ 'numbers' => ':attribute må inneholde minst ett nummer.',
+ 'symbols' => ':attribute må inneholde minst ett symbol.',
+ 'uncompromised' => ':attribute har dukket opp i en datalekkasje. Velg et annet :attributt.',
+ ],
+ 'present' => ':attribute må være tilstede.',
+ 'present_if' => ':attribute må finnes når :other er :value',
+ 'present_unless' => ':attribute må finnes med mindre :other er :value.',
+ 'present_with' => ':attribute må finnes når :values er tilstede.',
+ 'present_with_all' => ':attribute må finnes når :values er tilstede.',
+ 'prohibited' => ':attribute er forbudt.',
+ 'prohibited_if' => ':attribute er forbudt når :other er :value.',
+ 'prohibited_unless' => ':attribute er forbudt med mindre :other er i :values.',
+ 'prohibits' => ':attribute forbyr :other fra å være tilstede.',
+ 'regex' => ':attribute er ugyldig.',
+ 'required' => ':attribute er påkrevd.',
+ 'required_array_keys' => ':attribute må inneholde enheter for: :values.',
+ 'required_if' => ':attribute er påkrevd når :other er :value.',
+ 'required_if_accepted' => ':attribute feltet kreves når :other er godkjent.',
+ 'required_unless' => ' :attribute er påkrevd med mindre :other er i :values.',
+ 'required_with' => ':attribute er påkrevd når :values er tilstede.',
+ 'required_with_all' => ':attribute er påkrevd når :values er tilstede.',
+ 'required_without' => ':attribute er påkrevd når :values ikke er tilstede.',
+ 'required_without_all' => ':attribute er påkrevd når ingen av :values er tilstede.',
+ 'same' => ':attribute må samsvare med :other.',
+ 'size' => [
+ 'array' => ':attribute må inneholde :size elementer.',
+ 'file' => ':attribute må være :size kilobytes.',
+ 'numeric' => ':attribute må være :size.',
+ 'string' => ':attribute må være :size tegn.',
+ ],
+ 'starts_with' => ':attribute må starte med en av følgende: :values.',
+ 'string' => ':attribute må være en tekst.',
+ 'timezone' => ':attribute må være en gyldig tidssone.',
+ 'unique' => ':attribute er allerede brukt.',
+ 'uploaded' => ':attribute opplasting feilet.',
+ 'uppercase' => ':attribute må være store bokstaver.',
+ 'url' => ':attribute må være en gyldig URL.',
+ 'ulid' => ':attribute må være en gyldig ULID.',
+ 'uuid' => ':attribute må være en gyldig UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'egendefinert-melding',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/pl/account.php b/lang/pl/account.php
new file mode 100644
index 000000000..13dd55d2e
--- /dev/null
+++ b/lang/pl/account.php
@@ -0,0 +1,52 @@
+ 'Konto',
+ 'personal_details' => 'Dane osobowe',
+ 'security' => 'Bezpieczeństwo',
+ 'credits' => 'Kredyty',
+
+ 'change_password' => 'Zmień hasło',
+
+ 'two_factor_authentication' => 'Uwierzytelnianie dwuskładnikowe',
+ 'two_factor_authentication_description' => 'Dodaj dodatkową warstwę zabezpieczeń do swojego konta poprzez włączenie uwierzytelniania dwuskładnikowego.',
+ 'two_factor_authentication_enabled' => 'Uwierzytelnianie dwuskładnikowe jest włączone dla Twojego konta.',
+ 'two_factor_authentication_enable' => 'Włącz uwierzytelnianie dwuskładnikowe',
+ 'two_factor_authentication_disable' => 'Wyłącz uwierzytelnianie dwuskładnikowe',
+ 'two_factor_authentication_enable_description' => 'Aby włączyć uwierzytelnianie dwuskładnikowe, musisz zeskanować poniższy kod QR za pomocą aplikacji uwierzytelniającej, takiej jak Google Authenticator lub Authy.',
+ 'two_factor_authentication_qr_code' => 'Zeskanuj poniższy kod QR za pomocą aplikacji uwierzytelniającej:',
+ 'two_factor_authentication_secret' => 'Lub wprowadź ręcznie następujący kod:',
+
+ 'sessions' => 'Sesje',
+ 'sessions_description' => 'Zarządzaj i wyloguj swoje aktywne sesje na innych przeglądarkach i urządzeniach.',
+ 'logout_sessions' => 'Wyloguj tę sesję',
+
+ 'input' => [
+ 'current_password' => 'Obecne hasło',
+ 'current_password_placeholder' => 'Twoje obecne hasło',
+ 'new_password' => 'Nowe hasło',
+ 'new_password_placeholder' => 'Twoje nowe hasło',
+ 'confirm_password' => 'Potwierdź hasło',
+ 'confirm_password_placeholder' => 'Potwierdź swoje nowe hasło',
+
+ 'two_factor_code' => 'Wprowadź kod z aplikacji uwierzytelniającej',
+ 'two_factor_code_placeholder' => 'Twój kod uwierzytelniania dwuskładnikowego',
+
+ 'currency' => 'Waluta',
+ 'amount' => 'Ilość',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Hasło zostało zmienione.',
+ 'password_incorrect' => 'Bieżące hasło jest nieprawidłowe.',
+ 'two_factor_enabled' => 'Uwierzytelnianie dwustopniowe zostało włączone.',
+ 'two_factor_disabled' => 'Wyłączono uwierzytelnianie dwuetapowe.',
+ 'two_factor_code_incorrect' => 'Ten kod jest nieprawidłowy.',
+ 'session_logged_out' => 'Sesja została wylogowana.',
+ ],
+
+ 'no_credit' => 'Nie masz żadnych kredytów.',
+ 'add_credit' => 'Dodaj środki',
+ 'credit_deposit' => 'Depozyt kredytowy (:currency)',
+
+];
diff --git a/lang/pl/auth.php b/lang/pl/auth.php
new file mode 100644
index 000000000..331e2f844
--- /dev/null
+++ b/lang/pl/auth.php
@@ -0,0 +1,55 @@
+ 'Błędny login lub hasło.',
+ 'password' => 'Wprowadzone hasło jest nieprawidłowe.',
+ 'throttle' => 'Zbyt wiele prób logowanie. Spróbuj ponownie za :seconds sekund.',
+
+ 'sign_in' => 'Zaloguj się',
+ 'sign_in_title' => 'Zaloguj się na swoje konto',
+ 'or_sign_in_with' => 'Lub zaloguj się za pomocą',
+ 'forgot_password' => 'Zapomniałeś hasła?',
+ 'dont_have_account' => 'Nie masz jeszcze konta?',
+ 'already_have_account' => 'Posiadasz już konto?',
+
+ 'sign_up' => 'Zarejestruj się',
+ 'sign_up_title' => 'Utwórz swoje konto',
+
+ 'logout' => 'Wyloguj się',
+
+ 'input' => [
+ 'email' => 'Email',
+ 'email_label' => 'Adres Email',
+ 'password' => 'Hasło',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Twoje konto Discord nie jest zweryfikowane.',
+ 'account_not_registered' => 'Nie jesteś zarejestrowany na tej stronie.',
+ ],
+
+ 'reset_password' => 'Zresetuj hasło',
+
+ 'verify_2fa' => 'Zweryfikuj 2FA',
+ 'verify' => 'Weryfikacja',
+
+ 'verification' => [
+ 'notice' => 'Zweryfikuj swój adres e-mail',
+ 'sent' => 'Nowy link weryfikacyjny został wysłany na Twój adres e-mail.',
+ 'check_your_email' => 'Przed kontynuowanie, sprawdź swoją pocztę w poszukiwaniu linku weryfikacyjnego.',
+ 'not_received' => 'Jeśli nie otrzymałeś wiadomości e-mail, możesz poprosić o inny e-mail weryfikacyjny.',
+ 'request_another' => 'Wyślij email weryfikacyjny ponownie',
+ ],
+];
diff --git a/lang/pl/dashboard.php b/lang/pl/dashboard.php
new file mode 100644
index 000000000..9ade162c7
--- /dev/null
+++ b/lang/pl/dashboard.php
@@ -0,0 +1,11 @@
+ 'Panel',
+ 'welcome_back' => 'Witaj z powrotem, {name}!',
+ 'dashboard_description' => 'Zarządzaj aktywnymi usługami, fakturami, zgłoszeniami i bądź tutaj na bieżąco.',
+ 'open_tickets' => 'Otwarte zgłoszenia',
+ 'unpaid_invoices' => 'Nieopłacone faktury',
+ 'active_services' => 'Aktywne usługi',
+ 'view_all' => 'Zobacz wszystkie',
+];
diff --git a/lang/pl/general.php b/lang/pl/general.php
new file mode 100644
index 000000000..a8866c9bd
--- /dev/null
+++ b/lang/pl/general.php
@@ -0,0 +1,36 @@
+ 'Wyświetl',
+
+ 'input' => [
+ 'first_name' => 'Imię',
+ 'first_name_placeholder' => 'Twoje pierwsze imię',
+ 'last_name' => 'Nazwisko',
+ 'last_name_placeholder' => 'Twoje nazwisko',
+ 'email' => 'Adres e-mail',
+ 'email_placeholder' => 'Twój adres email',
+ 'phone' => 'Telefon',
+ 'phone_placeholder' => 'Twój numer telefonu',
+ 'company_name' => 'Nazwa firmy',
+ 'company_name_placeholder' => 'Nazwa Twojej firmy',
+ 'country' => 'Kraj',
+ 'country_placeholder' => 'Twój kraj',
+ 'city' => 'Miasto',
+ 'city_placeholder' => 'Twoje miasto',
+ 'address' => 'Adres',
+ 'address_placeholder' => 'Twój adres',
+ 'address2' => 'Adres 2',
+ 'address2_placeholder' => 'Twój adres 2',
+ 'zip' => 'Kod pocztowy',
+ 'zip_placeholder' => 'Twój kod pocztowy',
+ 'state' => 'Województwo',
+ 'state_placeholder' => 'Twoje województwo',
+
+ 'password' => 'Hasło',
+ 'password_placeholder' => 'Twoje hasło',
+ ],
+
+ 'all_rights_reserved' => 'Wszelkie prawa zastrzeżone.',
+ 'update' => 'Aktualizacja',
+];
diff --git a/lang/pl/invoices.php b/lang/pl/invoices.php
new file mode 100644
index 000000000..b0e200368
--- /dev/null
+++ b/lang/pl/invoices.php
@@ -0,0 +1,33 @@
+ 'Faktury',
+ 'product' => 'Produkt',
+ 'price' => 'Cena',
+ 'status' => 'Status',
+ 'actions' => 'Akcje',
+ 'view' => 'Wyświetl',
+ 'id' => 'Identyfikator',
+ 'total' => 'Razem',
+ 'subtotal' => 'Suma częściowa',
+ 'invoice' => 'Faktura #:id',
+ 'unit_price' => 'Cena jednostkowa',
+ 'bill_to' => 'Wystawiono dla',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Zapłacono',
+ 'payment_pending' => 'Płatności oczekujące',
+ 'checking_payment' => 'Sprawdzanie płatności',
+ 'invoice_date' => 'Data faktury',
+ 'invoice_no' => 'Nr Faktury',
+ 'tax_id' => 'NIP nabywcy',
+ 'company_id' => 'Identyfikator firmy',
+ 'item' => 'Przedmiot',
+ 'quantity' => 'Ilość',
+ 'transactions' => 'Transakcje',
+ 'transaction_id' => 'ID transakcji',
+ 'gateway' => 'Brama',
+ 'payment_date' => 'Data płatności',
+ 'payment_method' => 'Metoda płatności',
+ 'amount' => 'Ilość',
+ 'date' => 'Data',
+];
diff --git a/lang/pl/navigation.php b/lang/pl/navigation.php
new file mode 100644
index 000000000..e3a2f1ffa
--- /dev/null
+++ b/lang/pl/navigation.php
@@ -0,0 +1,17 @@
+ 'Strona główna',
+ 'shop' => 'Sklep',
+ 'cart' => 'Koszyk',
+ 'login' => 'Logowanie',
+ 'register' => 'Rejestracja',
+ 'services' => 'Usługi',
+ 'invoices' => 'Faktury',
+ 'account' => 'Konto',
+ 'personal_details' => 'Dane osobowe',
+ 'security' => 'Bezpieczeństwo',
+ 'dashboard' => 'Kokpit',
+ 'tickets' => 'Zgłoszenia',
+ 'admin' => 'Administrator',
+];
diff --git a/lang/pl/pagination.php b/lang/pl/pagination.php
new file mode 100644
index 000000000..6ba76b321
--- /dev/null
+++ b/lang/pl/pagination.php
@@ -0,0 +1,19 @@
+ '« Poprzednia',
+ 'next' => 'Następny »',
+
+];
diff --git a/lang/pl/passwords.php b/lang/pl/passwords.php
new file mode 100644
index 000000000..8abf4e17c
--- /dev/null
+++ b/lang/pl/passwords.php
@@ -0,0 +1,11 @@
+ 'Hasło zostało zresetowane.',
+ 'sent' => 'Właśnie wysłaliśmy wiadomość na Twój adres e-mail z linkiem do zmiany hasła.',
+ 'throttled' => 'Proszę poczekać przed ponownym próbą.',
+ 'token' => 'Ten token resetowania hasła jest nieprawidłowy.',
+ 'user' => 'Nie możemy znaleźć użytkownika z tym adresem e-mail.',
+
+];
diff --git a/lang/pl/product.php b/lang/pl/product.php
new file mode 100644
index 000000000..b409a3e9a
--- /dev/null
+++ b/lang/pl/product.php
@@ -0,0 +1,29 @@
+ 'Dodaj do koszyka',
+ 'view' => 'Wyświetl',
+ 'checkout' => 'Checkout',
+ 'remove' => 'Usuń',
+ 'empty_cart' => 'Twój koszyk jest pusty',
+ 'total_today' => 'Łącznie dzisiaj',
+ 'subtotal' => 'Suma częściowa',
+ 'total' => 'Razem',
+
+ 'then_after_x' => 'Następnie po :time',
+ 'order_summary' => 'Podsumowanie zamówienia',
+ 'edit' => 'Edytuj',
+
+ 'apply' => 'Zastosuj',
+ 'price' => 'Cena',
+ 'setup_fee' => 'Opłata konfiguracyjna',
+
+ 'in_stock' => 'Na stanie',
+ 'out_of_stock' => 'Produkt :produkt jest niedostępny',
+ 'user_limit' => 'Osiągnąłeś limit :product',
+ 'payment_method' => 'Metoda płatności',
+ 'use_credits' => 'Użyj kredytów',
+ 'tos' => 'Zgadzam się na warunki licencji ',
+ 'tos_link' => 'Warunki korzystania z usługi',
+ 'tos_required' => 'Musisz zaakceptować warunki korzystania z usługi',
+];
diff --git a/lang/pl/services.php b/lang/pl/services.php
new file mode 100644
index 000000000..ab18878a4
--- /dev/null
+++ b/lang/pl/services.php
@@ -0,0 +1,32 @@
+ 'Usługi',
+ 'product' => 'Produkt',
+ 'price' => 'Cena',
+ 'status' => 'Status',
+ 'name' => 'Nazwa',
+ 'actions' => 'Akcje',
+ 'view' => 'Wyświetl',
+
+ 'product_details' => 'Szczegóły produktu',
+ 'billing_cycle' => 'Cykl rozliczeniowy',
+ 'cancel' => 'Anuluj',
+ 'cancellation' => 'Rezygnacja z usługi',
+ 'cancel_are_you_sure' => 'Czy na pewno chcesz anulować tę usługę?',
+ 'cancel_reason' => 'Powód anulowania',
+ 'cancel_type' => 'Typ anulowania',
+ 'cancel_immediate' => 'Anuluj natychmiastowo',
+ 'cancel_end_of_period' => 'Anuluj pod koniec okresu rozliczeniowego',
+ 'cancel_immediate_warning' => 'Gdy naciśniesz poniższy przycisk, usługa zostanie natychmiast anulowana i nie będziesz już mógł jej używać.',
+ 'cancellation_requested' => 'Prośba o anulowanie',
+
+ 'current_plan' => 'Obecny plan',
+ 'new_plan' => 'Nowy Plan',
+ 'change_plan' => 'Zmień plan',
+ 'current_price' => 'Aktualna Cena',
+ 'new_price' => 'Nowa cena',
+ 'upgrade' => 'Ulepsz',
+ 'upgrade_summary' => 'Podsumowanie aktualizacji',
+ 'total_today' => 'Łącznie dzisiaj',
+];
diff --git a/lang/pl/ticket.php b/lang/pl/ticket.php
new file mode 100644
index 000000000..61377ba17
--- /dev/null
+++ b/lang/pl/ticket.php
@@ -0,0 +1,25 @@
+ 'Szczegóły zgłoszenia',
+ 'tickets' => 'Zgłoszenia',
+ 'subject' => 'Temat',
+ 'status' => 'Status',
+ 'priority' => 'Priorytet',
+ 'department' => 'Departament',
+ 'created_at' => 'Data utworzenia',
+ 'reply' => 'Odpowiedz',
+
+ 'create_ticket' => 'Utwórz Bilet',
+ 'select_department' => 'Wybierz dział',
+ 'select_priority' => 'Wybierz Priorytet',
+ 'low' => 'Niski',
+ 'medium' => 'Średni',
+ 'high' => 'Wysoki',
+
+ 'last_activity' => 'Ostatnia aktywność',
+
+ 'service' => 'Usługa',
+ 'select_service' => 'Wybierz usługę',
+ 'create' => 'Utwórz',
+];
diff --git a/lang/pl/validation.php b/lang/pl/validation.php
new file mode 100644
index 000000000..0333add55
--- /dev/null
+++ b/lang/pl/validation.php
@@ -0,0 +1,192 @@
+ 'Pole :attribute musi być zaakceptowane.',
+ 'accepted_if' => 'Pole :attribute musi być zaakceptowane, gdy :other jest :value.',
+ 'active_url' => 'Pole :attribute musi zawierać prawidłowy URL.',
+ 'after' => 'Pole :attribute musi być datą po :date.',
+ 'after_or_equal' => 'To :attribute pole musi być data po lub równa :date.',
+ 'alpha' => 'Pole :attribute może zawierać jedynie litery.',
+ 'alpha_dash' => 'Pole :attribute może zawierać jedynie litery, cyfry, myślniki i podkreślenia.',
+ 'alpha_num' => 'To :attribute pole musi zawierać tylko litery i cyfry.',
+ 'array' => 'Pole :attribute może być jedynie zbiorem.',
+ 'ascii' => 'To :attribute pole musi zawierać tylko jednobajtowe znaki alfanumeryczne i symbole.',
+ 'before' => ':attribute musi być datą wcześniejszą niż :date.',
+ 'before_or_equal' => 'Pole :attribute musi być datą wcześniejszą lub tą samą co :date.',
+ 'between' => [
+ 'array' => 'To :attribute pole musi być pomiędzy :min and :max pozycje.',
+ 'file' => 'Pole :attribute musi zawierać się w przedziale od :min do :max kilobajtów.',
+ 'numeric' => 'Pole :attribute musi zawierać się pomiędzy :min a :max.',
+ 'string' => 'Pole :attribute musi zawierać pomiędzy :min a :max znaków.',
+ ],
+ 'boolean' => ':attribute musi mieć wartość prawda albo fałsz.',
+ 'can' => 'Pole :attribute zawiera nieautoryzowaną wartość.',
+ 'confirmed' => 'Potwierdzenie :attribute nie pasuje.',
+ 'current_password' => 'Hasło jest nieprawidłowe.',
+ 'date' => 'Pole :attribute musi zawierać prawidłową datę.',
+ 'date_equals' => ':attribute musi być datą równą :date.',
+ 'date_format' => 'Pole :attribute musi być zgodne z formatem :format.',
+ 'decimal' => ':attribute musi mieć :decimal miejsc dziesiętnych.',
+ 'declined' => 'To :attribute pole musi zostać odrzucone.',
+ 'declined_if' => 'Pole :attribute musi zostać odrzucone, gdy :other jest :value.',
+ 'different' => ':attribute i :other muszą być różne.',
+ 'digits' => 'To :attribute pole musi być :digits digits.',
+ 'digits_between' => 'Pole :attribute musi zawierać się między :min a :max cyframi.',
+ 'dimensions' => ':attribute ma nieprawidłowe wymiary obrazu.',
+ 'distinct' => 'Pole :attribute zawiera zduplikowaną wartość.',
+ 'doesnt_end_with' => ':attribute nie może kończyć się jednym z następujących elementów: :values.',
+ 'doesnt_start_with' => ':attribute nie może kończyć się jednym z następujących elementów: :values.',
+ 'email' => 'Pole :attribute musi zawierać prawidłową datę.',
+ 'ends_with' => 'Pole :attribute musi kończyć się jedną z następujących :values.',
+ 'enum' => 'Zaznaczony :attribute jest nieprawidłowy.',
+ 'exists' => 'Zaznaczony :attribute jest nieprawidłowy.',
+ 'extensions' => 'To :attribute pole musi mieć jedno z następujących rozszerzeń: :values.',
+ 'file' => ':attribute musi być plikiem.',
+ 'filled' => 'Pole :attribute nie może być puste.',
+ 'gt' => [
+ 'array' => 'To :attribute pole musi mieć więcej niż :value pozycji.',
+ 'file' => 'Rozmiar pliku dla :attribute musi być większy niż :value kilobajtów.',
+ 'numeric' => 'To :attribute pole musi być większe niż :value.',
+ 'string' => 'To :attribute pole musi być większa niż :value znaki.',
+ ],
+ 'gte' => [
+ 'array' => ':attribute musi mieć :value elementów lub więcej.',
+ 'file' => 'To :attribute pole musi być większe lub równe :value kilobajty.',
+ 'numeric' => ':attribute musi być równy lub większy niż :value.',
+ 'string' => 'Pole :attribute musi być większe lub równe :value znakom.',
+ ],
+ 'hex_color' => 'Pole :attribute musi mieć podany prawidłowy kolor w formacie szesnastkowym.',
+ 'image' => ':attribute musi być obrazem.',
+ 'in' => 'Zaznaczony :attribute jest nieprawidłowy.',
+ 'in_array' => 'Pole :attribute nie istnieje w :other.',
+ 'integer' => 'To :attribute pole musi być liczbą całkowitą.',
+ 'ip' => 'Pole :attribute musi być poprawnym adresem IP.',
+ 'ipv4' => 'Pole :attribute musi być poprawnym adresem IPv4.',
+ 'ipv6' => ':attribute musi być prawidłowym adresem IPv6.',
+ 'json' => ':attribute musi być prawidłowym łańcuchem JSON.',
+ 'list' => ':attribute musi być plikiem.',
+ 'lowercase' => 'To :attribute pole musi być małymi literami.',
+ 'lt' => [
+ 'array' => ':attribute musi mieć mniej niż :value elementów.',
+ 'file' => 'To :attribute pole musi być mniej niż :value kilobajty.',
+ 'numeric' => 'To :attribute pole musi być mniej niż :value.',
+ 'string' => ':attribute musi mieć mniej niż :value znaków.',
+ ],
+ 'lte' => [
+ 'array' => ':attribute nie może mieć więcej niż :value elementów.',
+ 'file' => 'To :attribute pole musi być mniej lub równa niż :value kilobajty.',
+ 'numeric' => ':attribute musi być mniejszy lub równy :value.',
+ 'string' => 'Pole :attribute musi być mniejsze lub równe :value znakom.',
+ ],
+ 'mac_address' => 'To :attribute pole musi być prawidłowym adresem MAC.',
+ 'max' => [
+ 'array' => ':attribute nie może mieć więcej niż :max elementów.',
+ 'file' => 'To :pole atrybutu nie może być większe niż :max kilobajty.',
+ 'numeric' => 'To :attribute pole nie może być większe niż :max.',
+ 'string' => ':attribute nie może mieć więcej niż :max znaków.',
+ ],
+ 'max_digits' => ':attribute nie może mieć więcej niż :max cyfr.',
+ 'mimes' => 'Pole :attribute musi być plikiem typu: :values.',
+ 'mimetypes' => 'Pole :attribute musi być plikiem typu: :values.',
+ 'min' => [
+ 'array' => 'To :attribute pole musi mieć co najmniej :min pozycji.',
+ 'file' => 'To :attribute pole musi być co najmniej :min kilobajty.',
+ 'numeric' => 'Pole :attribute musi być przynajmniej :min.',
+ 'string' => ':attribute musi mieć przynajmniej :min znaków.',
+ ],
+ 'min_digits' => 'To :attribute pole musi zawierać co najmniej :min cyfry.',
+ 'missing' => 'Pole :attribute musi być puste.',
+ 'missing_if' => 'Pole :attribute musi być puste, gdy :other to :value.',
+ 'missing_unless' => 'Pole :attribute musi zostać puste, chyba że :other jest :value.',
+ 'missing_with' => 'Pole :attribute musi być puste, gdy :values jest obecny.',
+ 'missing_with_all' => 'To :attribute pole musi być brakujące, gdy :values są obecne.',
+ 'multiple_of' => ':attribute musi być wielokrotnością :value.',
+ 'not_in' => 'Zaznaczony :attribute jest nieprawidłowy.',
+ 'not_regex' => 'Format :attribute jest nieprawidłowy.',
+ 'numeric' => ':attribute musi być liczbą.',
+ 'password' => [
+ 'letters' => ':attribute musi zawierać przynajmniej jedną literę.',
+ 'mixed' => 'To :attribute pole musi zawierać co najmniej jedną wielka i jedną małą literę.',
+ 'numbers' => 'To :attribute pole musi zawierać co najmniej jedną cyfrę.',
+ 'symbols' => ':attribute musi zawierać przynajmniej jeden symbol.',
+ 'uncompromised' => 'Podany :attribute pojawił się w wycieku danych. Wybierz inny :attribute.',
+ ],
+ 'present' => 'Pole :attribute musi być wypełnione.',
+ 'present_if' => 'Pole :attribute musi być obecne jeżeli :other ma wartość :value.',
+ 'present_unless' => 'To :attribute pole musi być obecne, chyba że :other is :value.',
+ 'present_with' => 'Pole :attribute musi być obecne kiedy :values jest podany/a.',
+ 'present_with_all' => 'Pole :attribute musi być obecne kiedy :values są podane.',
+ 'prohibited' => 'Pole :attribute jest zabronione.',
+ 'prohibited_if' => 'Pole :attribute jest niedozwolone gdy :other to :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'Pole :attribute zabrania :other obecności .',
+ 'regex' => 'Format :attribute jest nieprawidłowy.',
+ 'required' => 'Pole :attribute jest wymagane.',
+ 'required_array_keys' => 'Pole :attribute musi zawierać wartości: :values.',
+ 'required_if' => 'Pole :attribute jest wymagane gdy :other jest :value.',
+ 'required_if_accepted' => 'Pole :attribute jest wymagane, gdy akceptowane jest pole :other.',
+ 'required_unless' => ':attribute jest wymagany jeżeli :other nie znajduje się w :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'Pole :attribute jest wymagane gdy wszystkie :values są obecne.',
+ 'required_without' => 'The :attribute field is required when :values is present.',
+ 'required_without_all' => 'Pole :attribute jest wymagane gdy żadne z :values nie są obecne.',
+ 'same' => 'To :attribute pole musi odpowiadać :other.',
+ 'size' => [
+ 'array' => 'To :attribute pole musi zawierać :size pozycji.',
+ 'file' => 'Rozmiar pliku dla :attribute musi wynosić :size kilobajtów.',
+ 'numeric' => ':attribute musi być plikiem.',
+ 'string' => ':attribute musi mieć przynajmniej :min znaków.',
+ ],
+ 'starts_with' => 'Pole :attribute musi zaczynać się jedną z następujących :values.',
+ 'string' => ':attribute musi być ciągiem znaków.',
+ 'timezone' => 'To :attribute pole musi być prawidłową strefą czasową.',
+ 'unique' => 'Taki :attribute został zajęty.',
+ 'uploaded' => ':attribute nie udało się przesłać.',
+ 'uppercase' => 'Pole :attribute musi być pisane wielkimi literami.',
+ 'url' => 'Pole :attribute musi zawierać prawidłowy URL.',
+ 'ulid' => 'To :attribute pole musi być ważnym ULID.',
+ 'uuid' => 'Pole :attribute musi być poprawnym identyfikatorem UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'niestandardowa-wiadomość',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/pt/account.php b/lang/pt/account.php
new file mode 100644
index 000000000..94c21dc7e
--- /dev/null
+++ b/lang/pt/account.php
@@ -0,0 +1,52 @@
+ 'Conta',
+ 'personal_details' => 'Dados pessoais',
+ 'security' => 'Segurança',
+ 'credits' => 'Créditos',
+
+ 'change_password' => 'Alterar senha',
+
+ 'two_factor_authentication' => 'Autenticação de dois fatores (2FA)',
+ 'two_factor_authentication_description' => 'Adicione uma camada extra de segurança à sua conta, ativando a autenticação de dois fatores.',
+ 'two_factor_authentication_enabled' => 'A autenticação de dois fatores está habilitada para sua conta.',
+ 'two_factor_authentication_enable' => 'Ativar autenticação de dois fatores (2FA)',
+ 'two_factor_authentication_disable' => 'Desativar autenticação de dois fatores',
+ 'two_factor_authentication_enable_description' => 'Para habilitar a autenticação de dois fatores, você precisa digitalizar o código QR abaixo com um aplicativo autenticador, como o Autenticador do Google ou Authy.',
+ 'two_factor_authentication_qr_code' => 'Escaneie o código QR abaixo com o seu aplicativo de autenticação:',
+ 'two_factor_authentication_secret' => 'Ou insira o seguinte código manualmente:',
+
+ 'sessions' => 'Sessões',
+ 'sessions_description' => 'Gerencie e desconecte suas sessões ativas em outros navegadores e dispositivos.',
+ 'logout_sessions' => 'Desconectar esta sessão',
+
+ 'input' => [
+ 'current_password' => 'Senha atual',
+ 'current_password_placeholder' => 'Sua senha atual',
+ 'new_password' => 'Nova senha',
+ 'new_password_placeholder' => 'A sua nova senha',
+ 'confirm_password' => 'Confirme a senha',
+ 'confirm_password_placeholder' => 'Confirme a sua nova senha',
+
+ 'two_factor_code' => 'Insira o código do seu aplicativo autenticador',
+ 'two_factor_code_placeholder' => 'Seu código de autenticação de dois fatores',
+
+ 'currency' => 'Moeda',
+ 'amount' => 'Quantidade',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'A senha foi alterada.',
+ 'password_incorrect' => 'Senha incorreta.',
+ 'two_factor_enabled' => 'A autenticação de dois fatores foi ativada.',
+ 'two_factor_disabled' => 'A autenticação de dois fatores foi desativada.',
+ 'two_factor_code_incorrect' => 'O código está incorreto.',
+ 'session_logged_out' => 'A sessão foi desconectada.',
+ ],
+
+ 'no_credit' => 'Você não tem créditos.',
+ 'add_credit' => 'Adicionar crédito',
+ 'credit_deposit' => 'Depósito de crédito (:currency)',
+
+];
diff --git a/lang/pt/auth.php b/lang/pt/auth.php
new file mode 100644
index 000000000..6ce82c287
--- /dev/null
+++ b/lang/pt/auth.php
@@ -0,0 +1,55 @@
+ 'As credenciais de login fornecidas estão incorretas.',
+ 'password' => 'A senha fornecida está incorreta.',
+ 'throttle' => 'Muitas tentativas de login. Tente novamente em :seconds segundos.',
+
+ 'sign_in' => 'Entrar',
+ 'sign_in_title' => 'Entre na sua conta',
+ 'or_sign_in_with' => 'Ou entrar com',
+ 'forgot_password' => 'Esqueceu sua senha?',
+ 'dont_have_account' => 'Ainda não possui uma conta?',
+ 'already_have_account' => 'Já tem uma conta?',
+
+ 'sign_up' => 'Cadastre-se',
+ 'sign_up_title' => 'Crie a sua conta',
+
+ 'logout' => 'Sair da sua conta',
+
+ 'input' => [
+ 'email' => 'E-mail',
+ 'email_label' => 'Endereço de E-mail',
+ 'password' => 'Senha',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Sua conta do Discord não está verificada.',
+ 'account_not_registered' => 'Você não está registrado neste site.',
+ ],
+
+ 'reset_password' => 'Redefinir senha',
+
+ 'verify_2fa' => 'Verificar autenticação de dois fatores (2FA)',
+ 'verify' => 'Verificar',
+
+ 'verification' => [
+ 'notice' => 'Verifique seu endereço de e-mail',
+ 'sent' => 'Um novo link de verificação foi enviado para o seu endereço de e-mail.',
+ 'check_your_email' => 'Antes de avançar, por favor clique no link de verificação enviado para o seu e-mail.',
+ 'not_received' => 'Se você não recebeu o e-mail, você pode solicitar outro e-mail de verificação.',
+ 'request_another' => 'Reenviar e-mail de verificação',
+ ],
+];
diff --git a/lang/pt/dashboard.php b/lang/pt/dashboard.php
new file mode 100644
index 000000000..ea15472ec
--- /dev/null
+++ b/lang/pt/dashboard.php
@@ -0,0 +1,11 @@
+ 'Painel de controle',
+ 'welcome_back' => 'Bem-vindo(a) de volta, :name!',
+ 'dashboard_description' => 'Gerenciar seus serviços ativos, faturas, tickets e fique atualizado aqui.',
+ 'open_tickets' => 'Tickets Abertos',
+ 'unpaid_invoices' => 'Faturas não pagas',
+ 'active_services' => 'Serviços Ativos',
+ 'view_all' => 'Ver todos',
+];
diff --git a/lang/pt/general.php b/lang/pt/general.php
new file mode 100644
index 000000000..1674aae01
--- /dev/null
+++ b/lang/pt/general.php
@@ -0,0 +1,36 @@
+ 'Visualizar',
+
+ 'input' => [
+ 'first_name' => 'Primeiro nome',
+ 'first_name_placeholder' => 'Seu primeiro nome',
+ 'last_name' => 'Sobrenome',
+ 'last_name_placeholder' => 'Seu sobrenome',
+ 'email' => 'E-mail',
+ 'email_placeholder' => 'Seu endereço de e-mail',
+ 'phone' => 'Telefone',
+ 'phone_placeholder' => 'Seu número de telefone',
+ 'company_name' => 'Nome da empresa',
+ 'company_name_placeholder' => 'Nome da sua empresa',
+ 'country' => 'País',
+ 'country_placeholder' => 'Seu país',
+ 'city' => 'Cidade',
+ 'city_placeholder' => 'Sua cidade',
+ 'address' => 'Endereço',
+ 'address_placeholder' => 'Seu endereço',
+ 'address2' => 'Complemento',
+ 'address2_placeholder' => 'Seu complemento',
+ 'zip' => 'CEP',
+ 'zip_placeholder' => 'Seu CEP',
+ 'state' => 'Estado',
+ 'state_placeholder' => 'Seu Estado',
+
+ 'password' => 'Senha',
+ 'password_placeholder' => 'Sua senha',
+ ],
+
+ 'all_rights_reserved' => 'Todos os direitos reservados.',
+ 'update' => 'Atualizar',
+];
diff --git a/lang/pt/invoices.php b/lang/pt/invoices.php
new file mode 100644
index 000000000..c61f4eee9
--- /dev/null
+++ b/lang/pt/invoices.php
@@ -0,0 +1,33 @@
+ 'Faturas',
+ 'product' => 'Produto',
+ 'price' => 'Preço',
+ 'status' => 'Situação',
+ 'actions' => 'Ações',
+ 'view' => 'Visualizar',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Subtotal',
+ 'invoice' => 'Fatura #:id',
+ 'unit_price' => 'Preço unitário',
+ 'bill_to' => 'Cobrar para',
+ 'issued_to' => 'Emitido para',
+ 'paid' => 'Pago',
+ 'payment_pending' => 'Pagamento pendente',
+ 'checking_payment' => 'Verificando pagamento',
+ 'invoice_date' => 'Data da fatura',
+ 'invoice_no' => 'Fatura N.º',
+ 'tax_id' => 'CPF',
+ 'company_id' => 'CNPJ',
+ 'item' => 'Item',
+ 'quantity' => 'Quantidade',
+ 'transactions' => 'Transações',
+ 'transaction_id' => 'ID da transação',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Data de pagamento',
+ 'payment_method' => 'Forma de pagamento',
+ 'amount' => 'Quantidade',
+ 'date' => 'Data',
+];
diff --git a/lang/pt/navigation.php b/lang/pt/navigation.php
new file mode 100644
index 000000000..1348d994d
--- /dev/null
+++ b/lang/pt/navigation.php
@@ -0,0 +1,17 @@
+ 'Início',
+ 'shop' => 'Loja',
+ 'cart' => 'Carrinho',
+ 'login' => 'Entrar',
+ 'register' => 'Registrar',
+ 'services' => 'Serviços',
+ 'invoices' => 'Faturas',
+ 'account' => 'Conta',
+ 'personal_details' => 'Dados pessoais',
+ 'security' => 'Segurança',
+ 'dashboard' => 'Painel',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Painel de Administração',
+];
diff --git a/lang/pt/pagination.php b/lang/pt/pagination.php
new file mode 100644
index 000000000..4deabd6fb
--- /dev/null
+++ b/lang/pt/pagination.php
@@ -0,0 +1,19 @@
+ '« Anterior',
+ 'next' => 'Próximo »',
+
+];
diff --git a/lang/pt/passwords.php b/lang/pt/passwords.php
new file mode 100644
index 000000000..400163702
--- /dev/null
+++ b/lang/pt/passwords.php
@@ -0,0 +1,11 @@
+ 'A sua senha foi redefinida.',
+ 'sent' => 'Enviamos o link de redefinição de senha para seu e-mail.',
+ 'throttled' => 'Por favor, aguarde antes de tentar novamente.',
+ 'token' => 'O token de redefinição de senha é inválido.',
+ 'user' => 'Não foi encontrado nenhum usuário com este endereço de e-mail.',
+
+];
diff --git a/lang/pt/product.php b/lang/pt/product.php
new file mode 100644
index 000000000..4aa26c0d1
--- /dev/null
+++ b/lang/pt/product.php
@@ -0,0 +1,29 @@
+ 'Adicionar ao carrinho',
+ 'view' => 'Visualizar',
+ 'checkout' => 'Finalizar compra',
+ 'remove' => 'Remover',
+ 'empty_cart' => 'Seu carrinho está vazio',
+ 'total_today' => 'Total hoje',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Depois de :time',
+ 'order_summary' => 'Resumo do pedido',
+ 'edit' => 'Editar',
+
+ 'apply' => 'Confirmar',
+ 'price' => 'Preço',
+ 'setup_fee' => 'Taxa de instalação',
+
+ 'in_stock' => 'Em estoque',
+ 'out_of_stock' => 'Produto :product está fora de estoque',
+ 'user_limit' => 'Você atingiu o limite de :product',
+ 'payment_method' => 'Método de pagamento',
+ 'use_credits' => 'Usar créditos',
+ 'tos' => 'Eu concordo com os ',
+ 'tos_link' => 'Termos de Serviço',
+ 'tos_required' => 'Você deve concordar com os Termos de Serviço',
+];
diff --git a/lang/pt/services.php b/lang/pt/services.php
new file mode 100644
index 000000000..a8473562f
--- /dev/null
+++ b/lang/pt/services.php
@@ -0,0 +1,32 @@
+ 'Serviços',
+ 'product' => 'Produto',
+ 'price' => 'Preço',
+ 'status' => 'Situação',
+ 'name' => 'Nome',
+ 'actions' => 'Ações',
+ 'view' => 'Visualizar',
+
+ 'product_details' => 'Detalhes do produto',
+ 'billing_cycle' => 'Ciclo de pagamento',
+ 'cancel' => 'Cancelar',
+ 'cancellation' => 'Cancelamento do serviço :service',
+ 'cancel_are_you_sure' => 'Você tem certeza que deseja cancelar este serviço?',
+ 'cancel_reason' => 'Motivo do cancelamento',
+ 'cancel_type' => 'Tipo de cancelamento',
+ 'cancel_immediate' => 'Cancelar imediato',
+ 'cancel_end_of_period' => 'Cancelar no fim do período de faturamento',
+ 'cancel_immediate_warning' => 'Ao clicar no botão abaixo, o serviço será cancelado imediatamente e você não poderá mais usá-lo.',
+ 'cancellation_requested' => 'Cancelamento solicitado',
+
+ 'current_plan' => 'Plano atual',
+ 'new_plan' => 'Novo plano',
+ 'change_plan' => 'Alterar plano',
+ 'current_price' => 'Preço atual',
+ 'new_price' => 'Novo Preço',
+ 'upgrade' => 'Atualizar',
+ 'upgrade_summary' => 'Resumo da atualização',
+ 'total_today' => 'Total hoje',
+];
diff --git a/lang/pt/ticket.php b/lang/pt/ticket.php
new file mode 100644
index 000000000..a7aa55763
--- /dev/null
+++ b/lang/pt/ticket.php
@@ -0,0 +1,25 @@
+ 'Detalhes do Ticket',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Assunto',
+ 'status' => 'Situação',
+ 'priority' => 'Prioridade',
+ 'department' => 'Departamento',
+ 'created_at' => 'Criado em',
+ 'reply' => 'Responder',
+
+ 'create_ticket' => 'Criar ticket',
+ 'select_department' => 'Selecionar departamento',
+ 'select_priority' => 'Selecione a prioridade',
+ 'low' => 'Baixa',
+ 'medium' => 'Média',
+ 'high' => 'Alta',
+
+ 'last_activity' => 'Última atividade',
+
+ 'service' => 'Serviço',
+ 'select_service' => 'Selecionar serviço',
+ 'create' => 'Criar',
+];
diff --git a/lang/pt/validation.php b/lang/pt/validation.php
new file mode 100644
index 000000000..d3e5f363b
--- /dev/null
+++ b/lang/pt/validation.php
@@ -0,0 +1,192 @@
+ 'O campo :attribute deve ser válido.',
+ 'accepted_if' => 'O campo :attribute deve ser aceito quando o campo :other for :value.',
+ 'active_url' => 'O campo :attribute deve ser um URL válido.',
+ 'after' => 'O campo :attribute deve ser uma data após :date.',
+ 'after_or_equal' => 'O campo :attribute deve ser uma data posterior ou igual a :date.',
+ 'alpha' => 'O campo :attribute deve conter apenas letras.',
+ 'alpha_dash' => 'O campo :attribute só pode conter letras, números, traços e sublinhados.',
+ 'alpha_num' => 'O campo :attribute pode conter apenas letras e números.',
+ 'array' => 'O campo :attribute deve ser uma matriz.',
+ 'ascii' => 'O campo :attribute deve conter apenas caracteres alfanuméricos e símbolos.',
+ 'before' => 'O campo :attribute deve ser uma data anterior a :date.',
+ 'before_or_equal' => 'O campo :attribute deve ser uma data anterior ou igual a :date.',
+ 'between' => [
+ 'array' => 'O campo :attribute deve estar entre :min e :max itens.',
+ 'file' => 'O arquivo :attribute deve ter entre :min e :max kb.',
+ 'numeric' => 'O campo :attribute deve estar entre :min e :max.',
+ 'string' => 'O campo :attribute deve ter entre :min e :max caracteres.',
+ ],
+ 'boolean' => 'O campo :attribute deve conter o valor verdadeiro ou falso.',
+ 'can' => 'O campo :attribute contém um valor não autorizado.',
+ 'confirmed' => 'A confirmação do campo :attribute não corresponde.',
+ 'current_password' => 'A senha está incorreta.',
+ 'date' => 'O campo :attribute deve ser uma data válida.',
+ 'date_equals' => 'The :attribute field must be a date equal to :date.',
+ 'date_format' => 'O campo :attribute deve ser igual ao formato :format.',
+ 'decimal' => 'O campo :attribute deve ter :decimal casas decimais.',
+ 'declined' => 'O campo :attribute deve ser recusado.',
+ 'declined_if' => 'O campo :attribute deve ser recusado quando campo :other é :value.',
+ 'different' => 'O campo :attribute e :other devem ser diferentes.',
+ 'digits' => 'O campo :attribute deve conter :digits dígitos.',
+ 'digits_between' => 'O campo :attribute deve estar entre :min e :max dígitos.',
+ 'dimensions' => 'A imagem :attribute tem dimensões inválidas.',
+ 'distinct' => 'O campo :attribute contém um valor duplicado.',
+ 'doesnt_end_with' => 'O campo :attribute não deve terminar com um dos seguintes valores: :values.',
+ 'doesnt_start_with' => 'O campo :attribute não pode começar com um dos seguintes: :values.',
+ 'email' => 'O campo :attribute deve ser um endereço de e-mail válido.',
+ 'ends_with' => 'O campo :attribute deve terminar com um dos seguintes: valores :values.',
+ 'enum' => 'O valor selecionado para o campo :attribute é inválido.',
+ 'exists' => 'O valor selecionado para o campo :attribute é inválido.',
+ 'extensions' => 'O campo :attribute deve ter uma das seguintes extensões: :values.',
+ 'file' => 'O campo :attribute deve ser um arquivo.',
+ 'filled' => 'O campo :attribute é obrigatório.',
+ 'gt' => [
+ 'array' => 'O campo :attribute deve ter mais do que :value itens.',
+ 'file' => 'O arquivo :attribute deve ser maior que :value kb.',
+ 'numeric' => 'O campo :attribute deve ser maior que :value.',
+ 'string' => 'O campo :attribute deve ser maior que :value caracteres.',
+ ],
+ 'gte' => [
+ 'array' => 'O campo :attribute deve ter :value items ou mais.',
+ 'file' => 'O arquivo :attribute deve ser maior ou igual a :value kb.',
+ 'numeric' => 'O campo :attribute deve ser maior ou igual a :value.',
+ 'string' => 'O campo :attribute deve ser maior ou igual a :value caracteres.',
+ ],
+ 'hex_color' => 'O campo :attribute deve ser uma cor hexadecimal válida.',
+ 'image' => 'O campo :attribute deve ser uma imagem.',
+ 'in' => 'O campo :attribute selecionado é inválido.',
+ 'in_array' => 'O campo :attribute deve existir no campo :other.',
+ 'integer' => 'O campo :attribute deve ser um número inteiro.',
+ 'ip' => 'O campo :attribute deve ser um endereço IP válido.',
+ 'ipv4' => 'O campo :attribute deve ser um endereço IPv4 válido.',
+ 'ipv6' => 'O campo :attribute deve ser um endereço IPv6 válido.',
+ 'json' => 'O campo :attribute deve ser conter uma linha JSON válida.',
+ 'list' => 'O campo :attribute deve ser uma lista.',
+ 'lowercase' => 'O campo :attribute deve estar em letras minúsculas.',
+ 'lt' => [
+ 'array' => 'O :attribute deve ter menos de :value itens.',
+ 'file' => 'O tamanho do arquivo :attribute deve ser menor que :value kb.',
+ 'numeric' => 'O campo :attribute deve ser menor que :value.',
+ 'string' => 'O campo :attribute deve ser menor que :value caracteres.',
+ ],
+ 'lte' => [
+ 'array' => 'O campo :attribute não deve ter mais do que :value itens.',
+ 'file' => 'O tamanho do arquivo :attribute deve ser menor ou igual que :value kb.',
+ 'numeric' => 'O campo :attribute deve ser menor ou igual que :value.',
+ 'string' => 'O campo :attribute deve ser menor ou igual que :value caracteres.',
+ ],
+ 'mac_address' => 'O campo :attribute deve ser um endereço MAC válido.',
+ 'max' => [
+ 'array' => 'O campo :attribute não pode ser maior que :max itens.',
+ 'file' => 'O tamanho do arquivo :attribute não pode ser maior que :max kb.',
+ 'numeric' => 'O campo :attribute não pode ser maior que :max.',
+ 'string' => 'O campo :attribute não pode ser maior que :max caracteres.',
+ ],
+ 'max_digits' => 'O campo :attribute não deve ter mais do que :max dígitos.',
+ 'mimes' => 'O campo :attribute deve ser um arquivo do tipo: :values.',
+ 'mimetypes' => 'O campo :attribute deve ser um arquivo do tipo: :values.',
+ 'min' => [
+ 'array' => 'O campo :attribute deve ter pelo menos :min itens.',
+ 'file' => 'O arquivo :attribute deve ter pelo menos :min kb.',
+ 'numeric' => 'O campo :attribute deve ter pelo menos :min.',
+ 'string' => 'O campo :attribute deve ter pelo menos :min caracteres.',
+ ],
+ 'min_digits' => 'O campo :attribute deve ter pelo menos :min dígitos.',
+ 'missing' => 'O campo :attribute deve estar ausente.',
+ 'missing_if' => 'O campo :attribute deve estar ausente quando o campo :other é :value.',
+ 'missing_unless' => 'O campo :attribute deve estar ausente, a menos que o campo :other seja :value.',
+ 'missing_with' => 'O campo :attribute deve estar ausente quando :values estiver presente.',
+ 'missing_with_all' => 'O campo :attribute deve estar ausente quando :values estiverem presentes.',
+ 'multiple_of' => 'O campo :attribute deve ser um múltiplo de :value.',
+ 'not_in' => 'O campo :attribute selecionado é inválido.',
+ 'not_regex' => 'O formato do campo :attribute é inválido.',
+ 'numeric' => 'O campo :attribute deve ser um número.',
+ 'password' => [
+ 'letters' => 'O campo :attribute deve conter pelo menos uma letra.',
+ 'mixed' => 'O campo :attribute deve conter pelo menos uma letra maiúscula e uma minúscula.',
+ 'numbers' => 'O campo :attribute deve conter pelo menos um número.',
+ 'symbols' => 'O campo :attribute deve conter pelo menos um símbolo.',
+ 'uncompromised' => 'A :attribute apareceu em um vazamento de dados. Por favor, escolha outra :attribute.',
+ ],
+ 'present' => 'O campo do :attribute deve estar presente.',
+ 'present_if' => 'O campo :attribute deve estar presente quando o campo :other for :value.',
+ 'present_unless' => 'O campo :attribute deve estar presente, a menos que o campo :other seja :value.',
+ 'present_with' => 'O campo :attribute deve estar presente quando :values estiver presente.',
+ 'present_with_all' => 'O campo :attribute deve estar presente quando :values estiverem presentes.',
+ 'prohibited' => 'O campo :attribute é proibido.',
+ 'prohibited_if' => 'O campo :attribute é inválido quando o campo :other é :value.',
+ 'prohibited_unless' => 'O campo :attribute é inválido a menos que o campo :other esteja presente em :values.',
+ 'prohibits' => 'O campo :attribute é inválido quando o campo :other está preenchido.',
+ 'regex' => 'O formato do campo :attribute é inválido.',
+ 'required' => 'O campo do :attribute é obrigatório.',
+ 'required_array_keys' => 'O campo :attribute deve conter entradas para: :values.',
+ 'required_if' => 'O campo :attribute é obrigatório quando o campo :other é :value.',
+ 'required_if_accepted' => 'O campo :attribute é obrigatório quando o campo :other for aceito.',
+ 'required_unless' => 'O campo :attribute é obrigatório, a menos que o campo :other esteja em :values.',
+ 'required_with' => 'O campo :attribute é obrigatório quando :values está presente.',
+ 'required_with_all' => 'O campo :attribute é obrigatório quando :values estão presentes.',
+ 'required_without' => 'O campo :attribute é obrigatório quando :values não está presente.',
+ 'required_without_all' => 'O campo :attribute é obrigatório quando nenhum dos :values está presente.',
+ 'same' => 'O campo :attribute deve ser igual ao campo :other.',
+ 'size' => [
+ 'array' => 'O campo :attribute deve conter :size itens.',
+ 'file' => 'O arquivo :attribute deve ter :size kb.',
+ 'numeric' => 'O campo :attribute deve ser :size.',
+ 'string' => 'O campo :attribute deve ter :size caracteres.',
+ ],
+ 'starts_with' => 'O campo :attribute deve começar com um dos seguintes valores: :values.',
+ 'string' => 'O campo :attribute deve ser um texto.',
+ 'timezone' => 'O campo :attribute deve ser um fuso horário válido.',
+ 'unique' => 'O valor informado para o campo :attribute já está em uso.',
+ 'uploaded' => 'Falha no upload do arquivo :attribute.',
+ 'uppercase' => 'O campo :attribute deve estar em letras maiúsculas.',
+ 'url' => 'O campo :attribute deve ser um URL válido.',
+ 'ulid' => 'O campo :attribute deve ser um ULID válido.',
+ 'uuid' => 'O campo :attribute deve ser um UUID válido.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'mensagem personalizada',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/sr/account.php b/lang/sr/account.php
new file mode 100644
index 000000000..b32858cd1
--- /dev/null
+++ b/lang/sr/account.php
@@ -0,0 +1,52 @@
+ 'Account',
+ 'personal_details' => 'Personal details',
+ 'security' => 'Security',
+ 'credits' => 'Credits',
+
+ 'change_password' => 'Change password',
+
+ 'two_factor_authentication' => 'Two-factor authentication',
+ 'two_factor_authentication_description' => 'Add an extra layer of security to your account by enabling two-factor authentication.',
+ 'two_factor_authentication_enabled' => 'Two-factor authentication is enabled for your account.',
+ 'two_factor_authentication_enable' => 'Enable two-factor authentication',
+ 'two_factor_authentication_disable' => 'Disable two-factor authentication',
+ 'two_factor_authentication_enable_description' => 'To enable two factor authentication, you need to scan the QR code below with an authenticator app like Google Authenticator or Authy.',
+ 'two_factor_authentication_qr_code' => 'Scan the QR code below with your authenticator app:',
+ 'two_factor_authentication_secret' => 'Or enter the following code manually:',
+
+ 'sessions' => 'Sessions',
+ 'sessions_description' => 'Manage and log out your active sessions on other browsers and devices.',
+ 'logout_sessions' => 'Log this session out',
+
+ 'input' => [
+ 'current_password' => 'Current password',
+ 'current_password_placeholder' => 'Your current password',
+ 'new_password' => 'New password',
+ 'new_password_placeholder' => 'Your new password',
+ 'confirm_password' => 'Confirm password',
+ 'confirm_password_placeholder' => 'Confirm your new password',
+
+ 'two_factor_code' => 'Enter the code from your authenticator app',
+ 'two_factor_code_placeholder' => 'Your two-factor authentication code',
+
+ 'currency' => 'Currency',
+ 'amount' => 'Amount',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Password has been changed.',
+ 'password_incorrect' => 'The current password is incorrect.',
+ 'two_factor_enabled' => 'Two-factor authentication has been enabled.',
+ 'two_factor_disabled' => 'Two-factor authentication has been disabled.',
+ 'two_factor_code_incorrect' => 'The code is incorrect.',
+ 'session_logged_out' => 'Session has been logged out.',
+ ],
+
+ 'no_credit' => 'You have no credits.',
+ 'add_credit' => 'Add credit',
+ 'credit_deposit' => 'Credit deposit (:currency)',
+
+];
diff --git a/lang/sr/auth.php b/lang/sr/auth.php
new file mode 100644
index 000000000..4cb4b264c
--- /dev/null
+++ b/lang/sr/auth.php
@@ -0,0 +1,55 @@
+ 'These credentials do not match our records.',
+ 'password' => 'The provided password is incorrect.',
+ 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
+
+ 'sign_in' => 'Sign in',
+ 'sign_in_title' => 'Sign in to your account',
+ 'or_sign_in_with' => 'Or sign in with',
+ 'forgot_password' => 'Forgot your password?',
+ 'dont_have_account' => 'Don\'t have an account?',
+ 'already_have_account' => 'Already have an account?',
+
+ 'sign_up' => 'Sign up',
+ 'sign_up_title' => 'Create your account',
+
+ 'logout' => 'Logout',
+
+ 'input' => [
+ 'email' => 'Email',
+ 'email_label' => 'Email Address',
+ 'password' => 'Lozinka',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Your Discord account is not verified.',
+ 'account_not_registered' => 'You are not registered on this site.',
+ ],
+
+ 'reset_password' => 'Reset password',
+
+ 'verify_2fa' => 'Verify 2FA',
+ 'verify' => 'Verify',
+
+ 'verification' => [
+ 'notice' => 'Verifikujte svoju email adresu',
+ 'sent' => 'A new verification link has been sent to your email address.',
+ 'check_your_email' => 'Before proceeding, please check your email for a verification link.',
+ 'not_received' => 'If you did not receive the email you can request another verification email.',
+ 'request_another' => 'Resend verification email',
+ ],
+];
diff --git a/lang/sr/dashboard.php b/lang/sr/dashboard.php
new file mode 100644
index 000000000..eb7002ea0
--- /dev/null
+++ b/lang/sr/dashboard.php
@@ -0,0 +1,11 @@
+ 'Dashboard',
+ 'welcome_back' => 'Welcome back, :name!',
+ 'dashboard_description' => 'Manage your active services, invoices, tickets, and stay updated here.',
+ 'open_tickets' => 'Open Tickets',
+ 'unpaid_invoices' => 'Unpaid Invoices',
+ 'active_services' => 'Active Services',
+ 'view_all' => 'View All',
+];
diff --git a/lang/sr/general.php b/lang/sr/general.php
new file mode 100644
index 000000000..4793f6356
--- /dev/null
+++ b/lang/sr/general.php
@@ -0,0 +1,36 @@
+ 'View',
+
+ 'input' => [
+ 'first_name' => 'First name',
+ 'first_name_placeholder' => 'Your first name',
+ 'last_name' => 'Last name',
+ 'last_name_placeholder' => 'Your last name',
+ 'email' => 'Email',
+ 'email_placeholder' => 'Your email address',
+ 'phone' => 'Phone',
+ 'phone_placeholder' => 'Your phone number',
+ 'company_name' => 'Company name',
+ 'company_name_placeholder' => 'Your company name',
+ 'country' => 'Country',
+ 'country_placeholder' => 'Your country',
+ 'city' => 'City',
+ 'city_placeholder' => 'Your city',
+ 'address' => 'Address',
+ 'address_placeholder' => 'Your address',
+ 'address2' => 'Address 2',
+ 'address2_placeholder' => 'Your address 2',
+ 'zip' => 'ZIP',
+ 'zip_placeholder' => 'Your ZIP code',
+ 'state' => 'State',
+ 'state_placeholder' => 'Your state',
+
+ 'password' => 'Password',
+ 'password_placeholder' => 'Your password',
+ ],
+
+ 'all_rights_reserved' => 'All rights reserved.',
+ 'update' => 'Update',
+];
diff --git a/lang/sr/invoices.php b/lang/sr/invoices.php
new file mode 100644
index 000000000..c9e2a2a24
--- /dev/null
+++ b/lang/sr/invoices.php
@@ -0,0 +1,33 @@
+ 'Invoices',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+ 'id' => 'ID',
+ 'total' => 'Total',
+ 'subtotal' => 'Subtotal',
+ 'invoice' => 'Invoice #:id',
+ 'unit_price' => 'Unit Price',
+ 'bill_to' => 'Bill To',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Paid',
+ 'payment_pending' => 'Payment Pending',
+ 'checking_payment' => 'Checking Payment',
+ 'invoice_date' => 'Invoice Date',
+ 'invoice_no' => 'Invoice No',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Item',
+ 'quantity' => 'Quantity',
+ 'transactions' => 'Transactions',
+ 'transaction_id' => 'Transaction ID',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Payment Date',
+ 'payment_method' => 'Payment Method',
+ 'amount' => 'Amount',
+ 'date' => 'Date',
+];
diff --git a/lang/sr/navigation.php b/lang/sr/navigation.php
new file mode 100644
index 000000000..57443b9bc
--- /dev/null
+++ b/lang/sr/navigation.php
@@ -0,0 +1,17 @@
+ 'Home',
+ 'shop' => 'Shop',
+ 'cart' => 'Cart',
+ 'login' => 'Login',
+ 'register' => 'Register',
+ 'services' => 'Services',
+ 'invoices' => 'Invoices',
+ 'account' => 'Account',
+ 'personal_details' => 'Personal Details',
+ 'security' => 'Security',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/sr/pagination.php b/lang/sr/pagination.php
new file mode 100644
index 000000000..d48141187
--- /dev/null
+++ b/lang/sr/pagination.php
@@ -0,0 +1,19 @@
+ '« Previous',
+ 'next' => 'Next »',
+
+];
diff --git a/lang/sr/passwords.php b/lang/sr/passwords.php
new file mode 100644
index 000000000..2cea577ef
--- /dev/null
+++ b/lang/sr/passwords.php
@@ -0,0 +1,11 @@
+ 'Your password has been reset.',
+ 'sent' => 'We have emailed your password reset link.',
+ 'throttled' => 'Please wait before retrying.',
+ 'token' => 'This password reset token is invalid.',
+ 'user' => "We can't find a user with that email address.",
+
+];
diff --git a/lang/sr/product.php b/lang/sr/product.php
new file mode 100644
index 000000000..15bea8c70
--- /dev/null
+++ b/lang/sr/product.php
@@ -0,0 +1,29 @@
+ 'Add to cart',
+ 'view' => 'View',
+ 'checkout' => 'Checkout',
+ 'remove' => 'Remove',
+ 'empty_cart' => 'Your cart is empty',
+ 'total_today' => 'Total today',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Then after :time',
+ 'order_summary' => 'Order Summary',
+ 'edit' => 'Edit',
+
+ 'apply' => 'Apply',
+ 'price' => 'Price',
+ 'setup_fee' => 'Setup fee',
+
+ 'in_stock' => 'In stock',
+ 'out_of_stock' => 'Product :product is out of stock',
+ 'user_limit' => 'You have reached the limit of :product',
+ 'payment_method' => 'Payment method',
+ 'use_credits' => 'Use credits',
+ 'tos' => 'I agree to the ',
+ 'tos_link' => 'Terms of Service',
+ 'tos_required' => 'You must agree to the Terms of Service',
+];
diff --git a/lang/sr/services.php b/lang/sr/services.php
new file mode 100644
index 000000000..3e7dba052
--- /dev/null
+++ b/lang/sr/services.php
@@ -0,0 +1,32 @@
+ 'Services',
+ 'product' => 'Product',
+ 'price' => 'Price',
+ 'status' => 'Status',
+ 'name' => 'Name',
+ 'actions' => 'Actions',
+ 'view' => 'View',
+
+ 'product_details' => 'Product Details',
+ 'billing_cycle' => 'Billing Cycle',
+ 'cancel' => 'Cancel',
+ 'cancellation' => 'Cancellation of :service',
+ 'cancel_are_you_sure' => 'Are you sure you want to cancel this service?',
+ 'cancel_reason' => 'Reason for cancellation',
+ 'cancel_type' => 'Cancellation Type',
+ 'cancel_immediate' => 'Cancel immediate',
+ 'cancel_end_of_period' => 'Cancel at the end of the billing period',
+ 'cancel_immediate_warning' => 'When you press the button below, the service will be cancelled immediately and you will not be able to use it anymore.',
+ 'cancellation_requested' => 'Cancellation requested',
+
+ 'current_plan' => 'Current Plan',
+ 'new_plan' => 'New Plan',
+ 'change_plan' => 'Change Plan',
+ 'current_price' => 'Current Price',
+ 'new_price' => 'New Price',
+ 'upgrade' => 'Upgrade',
+ 'upgrade_summary' => 'Upgrade Summary',
+ 'total_today' => 'Total Today',
+];
diff --git a/lang/sr/ticket.php b/lang/sr/ticket.php
new file mode 100644
index 000000000..ce39439fa
--- /dev/null
+++ b/lang/sr/ticket.php
@@ -0,0 +1,25 @@
+ 'Ticket Details',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Subject',
+ 'status' => 'Status',
+ 'priority' => 'Priority',
+ 'department' => 'Department',
+ 'created_at' => 'Created At',
+ 'reply' => 'Reply',
+
+ 'create_ticket' => 'Create Ticket',
+ 'select_department' => 'Select Department',
+ 'select_priority' => 'Select Priority',
+ 'low' => 'Low',
+ 'medium' => 'Medium',
+ 'high' => 'High',
+
+ 'last_activity' => 'Last activity',
+
+ 'service' => 'Service',
+ 'select_service' => 'Select Service',
+ 'create' => 'Create',
+];
diff --git a/lang/sr/validation.php b/lang/sr/validation.php
new file mode 100644
index 000000000..aea190d40
--- /dev/null
+++ b/lang/sr/validation.php
@@ -0,0 +1,192 @@
+ 'The :attribute field must be accepted.',
+ 'accepted_if' => 'The :attribute field must be accepted when :other is :value.',
+ 'active_url' => 'The :attribute field must be a valid URL.',
+ 'after' => 'The :attribute field must be a date after :date.',
+ 'after_or_equal' => 'The :attribute field must be a date after or equal to :date.',
+ 'alpha' => 'The :attribute field must only contain letters.',
+ 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.',
+ 'alpha_num' => 'The :attribute field must only contain letters and numbers.',
+ 'array' => 'The :attribute field must be an array.',
+ 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.',
+ 'before' => 'The :attribute field must be a date before :date.',
+ 'before_or_equal' => 'The :attribute field must be a date before or equal to :date.',
+ 'between' => [
+ 'array' => 'The :attribute field must have between :min and :max items.',
+ 'file' => 'The :attribute field must be between :min and :max kilobytes.',
+ 'numeric' => 'The :attribute field must be between :min and :max.',
+ 'string' => 'The :attribute field must be between :min and :max characters.',
+ ],
+ 'boolean' => 'The :attribute field must be true or false.',
+ 'can' => 'The :attribute field contains an unauthorized value.',
+ 'confirmed' => 'The :attribute field confirmation does not match.',
+ 'current_password' => 'The password is incorrect.',
+ 'date' => 'The :attribute field must be a valid date.',
+ 'date_equals' => 'The :attribute field must be a date equal to :date.',
+ 'date_format' => 'The :attribute field must match the format :format.',
+ 'decimal' => 'The :attribute field must have :decimal decimal places.',
+ 'declined' => 'The :attribute field must be declined.',
+ 'declined_if' => 'The :attribute field must be declined when :other is :value.',
+ 'different' => 'The :attribute field and :other must be different.',
+ 'digits' => 'The :attribute field must be :digits digits.',
+ 'digits_between' => 'The :attribute field must be between :min and :max digits.',
+ 'dimensions' => 'The :attribute field has invalid image dimensions.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.',
+ 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.',
+ 'email' => 'The :attribute field must be a valid email address.',
+ 'ends_with' => 'The :attribute field must end with one of the following: :values.',
+ 'enum' => 'The selected :attribute is invalid.',
+ 'exists' => 'The selected :attribute is invalid.',
+ 'extensions' => 'The :attribute field must have one of the following extensions: :values.',
+ 'file' => 'The :attribute field must be a file.',
+ 'filled' => 'The :attribute field must have a value.',
+ 'gt' => [
+ 'array' => 'The :attribute field must have more than :value items.',
+ 'file' => 'The :attribute field must be greater than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than :value.',
+ 'string' => 'The :attribute field must be greater than :value characters.',
+ ],
+ 'gte' => [
+ 'array' => 'The :attribute field must have :value items or more.',
+ 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than or equal to :value.',
+ 'string' => 'The :attribute field must be greater than or equal to :value characters.',
+ ],
+ 'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
+ 'image' => 'The :attribute field must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field must exist in :other.',
+ 'integer' => 'The :attribute field must be an integer.',
+ 'ip' => 'The :attribute field must be a valid IP address.',
+ 'ipv4' => 'The :attribute field must be a valid IPv4 address.',
+ 'ipv6' => 'The :attribute field must be a valid IPv6 address.',
+ 'json' => 'The :attribute field must be a valid JSON string.',
+ 'list' => 'The :attribute field must be a list.',
+ 'lowercase' => 'The :attribute field must be lowercase.',
+ 'lt' => [
+ 'array' => 'The :attribute field must have less than :value items.',
+ 'file' => 'The :attribute field must be less than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than :value.',
+ 'string' => 'The :attribute field must be less than :value characters.',
+ ],
+ 'lte' => [
+ 'array' => 'The :attribute field must not have more than :value items.',
+ 'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than or equal to :value.',
+ 'string' => 'The :attribute field must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'The :attribute field must be a valid MAC address.',
+ 'max' => [
+ 'array' => 'The :attribute field must not have more than :max items.',
+ 'file' => 'The :attribute field must not be greater than :max kilobytes.',
+ 'numeric' => 'The :attribute field must not be greater than :max.',
+ 'string' => 'The :attribute field must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'The :attribute field must not have more than :max digits.',
+ 'mimes' => 'The :attribute field must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute field must be a file of type: :values.',
+ 'min' => [
+ 'array' => 'The :attribute field must have at least :min items.',
+ 'file' => 'The :attribute field must be at least :min kilobytes.',
+ 'numeric' => 'The :attribute field must be at least :min.',
+ 'string' => 'The :attribute field must be at least :min characters.',
+ ],
+ 'min_digits' => 'The :attribute field must have at least :min digits.',
+ 'missing' => 'The :attribute field must be missing.',
+ 'missing_if' => 'The :attribute field must be missing when :other is :value.',
+ 'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
+ 'missing_with' => 'The :attribute field must be missing when :values is present.',
+ 'missing_with_all' => 'The :attribute field must be missing when :values are present.',
+ 'multiple_of' => 'The :attribute field must be a multiple of :value.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute field format is invalid.',
+ 'numeric' => 'The :attribute field must be a number.',
+ 'password' => [
+ 'letters' => 'The :attribute field must contain at least one letter.',
+ 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
+ 'numbers' => 'The :attribute field must contain at least one number.',
+ 'symbols' => 'The :attribute field must contain at least one symbol.',
+ 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
+ ],
+ 'present' => 'The :attribute field must be present.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'The :attribute field is prohibited.',
+ 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'The :attribute field prohibits :other from being present.',
+ 'regex' => 'The :attribute field format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
+ 'same' => 'The :attribute field must match :other.',
+ 'size' => [
+ 'array' => 'The :attribute field must contain :size items.',
+ 'file' => 'The :attribute field must be :size kilobytes.',
+ 'numeric' => 'The :attribute field must be :size.',
+ 'string' => 'The :attribute field must be :size characters.',
+ ],
+ 'starts_with' => 'The :attribute field must start with one of the following: :values.',
+ 'string' => 'The :attribute field must be a string.',
+ 'timezone' => 'The :attribute field must be a valid timezone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'The :attribute failed to upload.',
+ 'uppercase' => 'The :attribute field must be uppercase.',
+ 'url' => 'The :attribute field must be a valid URL.',
+ 'ulid' => 'The :attribute field must be a valid ULID.',
+ 'uuid' => 'The :attribute field must be a valid UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'custom-message',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/sv/account.php b/lang/sv/account.php
new file mode 100644
index 000000000..0a5cf4804
--- /dev/null
+++ b/lang/sv/account.php
@@ -0,0 +1,52 @@
+ 'Konto',
+ 'personal_details' => 'Personuppgifter',
+ 'security' => 'Säkerhet',
+ 'credits' => 'Krediter',
+
+ 'change_password' => 'Ändra lösenord',
+
+ 'two_factor_authentication' => 'Tvåfaktorautentisering',
+ 'two_factor_authentication_description' => 'Lägg till ett extra säkerhetslager till ditt konto genom att aktivera tvåfaktorsautentisering.',
+ 'two_factor_authentication_enabled' => 'Tvåfaktorsautentisering är aktiverat för ditt konto.',
+ 'two_factor_authentication_enable' => 'Aktivera tvåfaktorsautentisering',
+ 'two_factor_authentication_disable' => 'Inaktivera tvåfaktorsautentisering',
+ 'two_factor_authentication_enable_description' => 'För att aktivera tvåfaktorsautentisering måste du skanna QR-koden nedan med en autentiseringsapp som Google Authenticator eller Authy.',
+ 'two_factor_authentication_qr_code' => 'Skanna QR-koden nedan med din autentiseringsapp:',
+ 'two_factor_authentication_secret' => 'Eller ange följande kod manuellt:',
+
+ 'sessions' => 'Sessioner',
+ 'sessions_description' => 'Hantera och logga ut dina aktiva sessioner på andra webbläsare och enheter.',
+ 'logout_sessions' => 'Logga ut denna session',
+
+ 'input' => [
+ 'current_password' => 'Nuvarande lösenord',
+ 'current_password_placeholder' => 'Ditt nuvarande lösenord',
+ 'new_password' => 'Nytt lösenord',
+ 'new_password_placeholder' => 'Ditt nya lösenord',
+ 'confirm_password' => 'Bekräfta lösenord',
+ 'confirm_password_placeholder' => 'Bekräfta ditt nya lösenord',
+
+ 'two_factor_code' => 'Ange koden från din autentiseringsapp',
+ 'two_factor_code_placeholder' => 'Din tvåfaktorsautentiseringskod',
+
+ 'currency' => 'Valuta',
+ 'amount' => 'Belopp',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Lösenordet har ändrats.',
+ 'password_incorrect' => 'Det nuvarande lösenord är felaktigt.',
+ 'two_factor_enabled' => 'Tvåfaktorsautentisering har aktiverats.',
+ 'two_factor_disabled' => 'Tvåfaktorsautentisering har inaktiverats.',
+ 'two_factor_code_incorrect' => 'Koden är felaktig.',
+ 'session_logged_out' => 'Sessionen har loggats ut.',
+ ],
+
+ 'no_credit' => 'Du har inga krediter.',
+ 'add_credit' => 'Lägg till kredit',
+ 'credit_deposit' => 'Kredit insättning (:currency)',
+
+];
diff --git a/lang/sv/auth.php b/lang/sv/auth.php
new file mode 100644
index 000000000..537e72f47
--- /dev/null
+++ b/lang/sv/auth.php
@@ -0,0 +1,55 @@
+ 'Ett konto med dessa uppgifter kunde ej hittas.',
+ 'password' => 'Det angivna lösenordet är felaktigt.',
+ 'throttle' => 'För många inloggningsförsök. Vänligen försök igen om :seconds sekunder.',
+
+ 'sign_in' => 'Logga in',
+ 'sign_in_title' => 'Logga in till ditt konto',
+ 'or_sign_in_with' => 'Eller logga in med',
+ 'forgot_password' => 'Glömt ditt lösenord?',
+ 'dont_have_account' => 'Har du inget konto?',
+ 'already_have_account' => 'Har du redan ett konto?',
+
+ 'sign_up' => 'Registrera dig',
+ 'sign_up_title' => 'Skapa ditt konto',
+
+ 'logout' => 'Logga ut',
+
+ 'input' => [
+ 'email' => 'E-post',
+ 'email_label' => 'E-postadress',
+ 'password' => 'Lösenord',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Ditt Discord-konto är inte verifierat.',
+ 'account_not_registered' => 'Du är inte registrerad på denna webbplats.',
+ ],
+
+ 'reset_password' => 'Återställ lösenord',
+
+ 'verify_2fa' => 'Verifiera 2FA',
+ 'verify' => 'Verifiera',
+
+ 'verification' => [
+ 'notice' => 'Verifiera din e-postadress',
+ 'sent' => 'En ny verifieringslänk har skickats till din e-postadress.',
+ 'check_your_email' => 'Innan du fortsätter, kontrollera din e-post efter en verifieringslänk.',
+ 'not_received' => 'Om du inte fick e-postmeddelandet kan du begära ett till verifieringsmail.',
+ 'request_another' => 'Skicka verifieringsmail igen',
+ ],
+];
diff --git a/lang/sv/dashboard.php b/lang/sv/dashboard.php
new file mode 100644
index 000000000..03881638b
--- /dev/null
+++ b/lang/sv/dashboard.php
@@ -0,0 +1,11 @@
+ 'Kontrollpanel',
+ 'welcome_back' => 'Välkommen tillbaka :name!',
+ 'dashboard_description' => 'Hantera dina aktiva tjänster, fakturor, biljetter och håll dig uppdaterad här.',
+ 'open_tickets' => 'Öppna ärenden',
+ 'unpaid_invoices' => ' Obetalda fakturor',
+ 'active_services' => 'Aktiva tjänster',
+ 'view_all' => 'Visa Alla',
+];
diff --git a/lang/sv/general.php b/lang/sv/general.php
new file mode 100644
index 000000000..f6edb130c
--- /dev/null
+++ b/lang/sv/general.php
@@ -0,0 +1,36 @@
+ 'Visa',
+
+ 'input' => [
+ 'first_name' => 'Förnamn',
+ 'first_name_placeholder' => 'Ditt förnamn',
+ 'last_name' => 'Efternamn',
+ 'last_name_placeholder' => 'Ditt efternamn',
+ 'email' => 'E-post',
+ 'email_placeholder' => 'Din e-postadress',
+ 'phone' => 'Telefon',
+ 'phone_placeholder' => 'Ditt telefonnummer',
+ 'company_name' => 'Företagsnamn',
+ 'company_name_placeholder' => 'Ditt företagsnamn',
+ 'country' => 'Land',
+ 'country_placeholder' => 'Ditt land',
+ 'city' => 'Stad',
+ 'city_placeholder' => 'Din stad',
+ 'address' => 'Adress',
+ 'address_placeholder' => 'Din adress',
+ 'address2' => 'Adress 2',
+ 'address2_placeholder' => 'Din adress 2',
+ 'zip' => 'Postnummer',
+ 'zip_placeholder' => 'Ditt postnummer',
+ 'state' => 'Län',
+ 'state_placeholder' => 'Ditt län',
+
+ 'password' => 'Lösenord',
+ 'password_placeholder' => 'Ditt lösenord',
+ ],
+
+ 'all_rights_reserved' => 'Alla rättigheter reserverade.',
+ 'update' => 'Uppdatera',
+];
diff --git a/lang/sv/invoices.php b/lang/sv/invoices.php
new file mode 100644
index 000000000..4321989a2
--- /dev/null
+++ b/lang/sv/invoices.php
@@ -0,0 +1,33 @@
+ 'Fakturor',
+ 'product' => 'Produkter',
+ 'price' => 'Pris',
+ 'status' => 'Status',
+ 'actions' => 'Åtgärder',
+ 'view' => 'Visa',
+ 'id' => 'ID',
+ 'total' => 'Totalt',
+ 'subtotal' => 'Delsumma',
+ 'invoice' => 'Faktura #:id',
+ 'unit_price' => 'Styckpris',
+ 'bill_to' => 'Faktura till',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Betald',
+ 'payment_pending' => 'Betalning behandlas',
+ 'checking_payment' => 'Kontrollerar betalning',
+ 'invoice_date' => 'Fakturadatum',
+ 'invoice_no' => 'Faktura nr',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Artikel',
+ 'quantity' => 'Kvantitet',
+ 'transactions' => 'Transaktioner',
+ 'transaction_id' => 'Transaktions-ID',
+ 'gateway' => 'Gateway',
+ 'payment_date' => 'Betalningsdatum',
+ 'payment_method' => 'Betalningsmetod',
+ 'amount' => 'Summa',
+ 'date' => 'Datum',
+];
diff --git a/lang/sv/navigation.php b/lang/sv/navigation.php
new file mode 100644
index 000000000..6fe585bea
--- /dev/null
+++ b/lang/sv/navigation.php
@@ -0,0 +1,17 @@
+ 'Hem',
+ 'shop' => 'Butik',
+ 'cart' => 'Varukorg',
+ 'login' => 'Logga in',
+ 'register' => 'Registrera',
+ 'services' => 'Tjänster',
+ 'invoices' => 'Fakturor',
+ 'account' => 'Konto',
+ 'personal_details' => 'Personuppgifter',
+ 'security' => 'Säkerhet',
+ 'dashboard' => 'Kontrollpanel',
+ 'tickets' => 'Ärenden',
+ 'admin' => 'Admin',
+];
diff --git a/lang/sv/pagination.php b/lang/sv/pagination.php
new file mode 100644
index 000000000..f48366d47
--- /dev/null
+++ b/lang/sv/pagination.php
@@ -0,0 +1,19 @@
+ '« Föregående',
+ 'next' => 'Nästa »',
+
+];
diff --git a/lang/sv/passwords.php b/lang/sv/passwords.php
new file mode 100644
index 000000000..4d2d9c1be
--- /dev/null
+++ b/lang/sv/passwords.php
@@ -0,0 +1,11 @@
+ 'Ditt lösenord har återställts.',
+ 'sent' => 'Vi har skickat ett e-post till dig med en återställningslänk för ditt lösenord.',
+ 'throttled' => 'Vänta innan du försöker igen.',
+ 'token' => 'Återställningskoden är ogiltig.',
+ 'user' => 'Vi kan inte hitta en användare med den e-postadressen.',
+
+];
diff --git a/lang/sv/product.php b/lang/sv/product.php
new file mode 100644
index 000000000..b1efcf11c
--- /dev/null
+++ b/lang/sv/product.php
@@ -0,0 +1,29 @@
+ 'Lägg till i varukorg',
+ 'view' => 'Visa',
+ 'checkout' => 'Checka ut',
+ 'remove' => 'Ta bort',
+ 'empty_cart' => 'Din varukorg är tom',
+ 'total_today' => 'Totalt idag',
+ 'subtotal' => 'Delsumma',
+ 'total' => 'Totalt',
+
+ 'then_after_x' => 'Sedan efter :time',
+ 'order_summary' => 'Ordersammanfattning',
+ 'edit' => 'Ändra',
+
+ 'apply' => 'Tillämpa',
+ 'price' => 'Pris',
+ 'setup_fee' => 'Installationsavgift',
+
+ 'in_stock' => 'I lager',
+ 'out_of_stock' => 'Produkten :product är slut i lager',
+ 'user_limit' => 'Du har nått gränsen för :product',
+ 'payment_method' => 'Betalningsmetod',
+ 'use_credits' => 'Använd kredit',
+ 'tos' => 'Jag samtycker till',
+ 'tos_link' => 'Användarvillkor',
+ 'tos_required' => 'Du måste acceptera användarvillkoren',
+];
diff --git a/lang/sv/services.php b/lang/sv/services.php
new file mode 100644
index 000000000..819890c67
--- /dev/null
+++ b/lang/sv/services.php
@@ -0,0 +1,32 @@
+ 'Tjänster',
+ 'product' => 'Produkt',
+ 'price' => 'Pris',
+ 'status' => 'Status',
+ 'name' => 'Namn',
+ 'actions' => 'Åtgärder',
+ 'view' => 'Visa',
+
+ 'product_details' => 'Produktdetaljer',
+ 'billing_cycle' => 'Faktureringsperiod',
+ 'cancel' => 'Avbryt',
+ 'cancellation' => 'Annullering av :service',
+ 'cancel_are_you_sure' => 'Är du säker på att du vill avbryta den här tjänsten?',
+ 'cancel_reason' => 'Anledning till annullering',
+ 'cancel_type' => 'Annulleringstyp',
+ 'cancel_immediate' => 'Avbryt omedelbart',
+ 'cancel_end_of_period' => 'Avbryt i slutet av faktureringsperioden',
+ 'cancel_immediate_warning' => 'När du trycker på knappen nedan kommer tjänsten att avbrytas omedelbart och du kommer inte att kunna använda den längre.',
+ 'cancellation_requested' => 'Annullering begärd',
+
+ 'current_plan' => 'Nuvarande Plan',
+ 'new_plan' => 'Ny Plan',
+ 'change_plan' => 'Ändra Plan',
+ 'current_price' => 'Nuvarande pris',
+ 'new_price' => 'Nytt pris',
+ 'upgrade' => 'Uppgradera',
+ 'upgrade_summary' => 'Sammanfattning av uppgradering',
+ 'total_today' => 'Totalt idag',
+];
diff --git a/lang/sv/ticket.php b/lang/sv/ticket.php
new file mode 100644
index 000000000..186094f4c
--- /dev/null
+++ b/lang/sv/ticket.php
@@ -0,0 +1,25 @@
+ 'Ärendeuppgifter',
+ 'tickets' => 'Ärenden',
+ 'subject' => 'Ämne',
+ 'status' => 'Status',
+ 'priority' => 'Prioritet',
+ 'department' => 'Avdelning',
+ 'created_at' => 'Skapad på',
+ 'reply' => 'Svara',
+
+ 'create_ticket' => 'Skapa ärende',
+ 'select_department' => 'Välj avdelning',
+ 'select_priority' => 'Välj prioritet',
+ 'low' => 'Låg',
+ 'medium' => 'Mellan',
+ 'high' => 'Hög',
+
+ 'last_activity' => 'Senaste aktiviteten',
+
+ 'service' => 'Tjänst',
+ 'select_service' => 'Välj tjänst',
+ 'create' => 'Skapa',
+];
diff --git a/lang/sv/validation.php b/lang/sv/validation.php
new file mode 100644
index 000000000..275e83fc7
--- /dev/null
+++ b/lang/sv/validation.php
@@ -0,0 +1,192 @@
+ 'Fältet :attribute måste accepteras.',
+ 'accepted_if' => 'The :attribute field must be accepted when :other is :value.',
+ 'active_url' => 'The :attribute field must be a valid URL.',
+ 'after' => 'The :attribute field must be a date after :date.',
+ 'after_or_equal' => 'The :attribute field must be a date after or equal to :date.',
+ 'alpha' => 'The :attribute field must only contain letters.',
+ 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.',
+ 'alpha_num' => 'The :attribute field must only contain letters and numbers.',
+ 'array' => 'The :attribute field must be an array.',
+ 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.',
+ 'before' => 'The :attribute field must be a date before :date.',
+ 'before_or_equal' => 'The :attribute field must be a date before or equal to :date.',
+ 'between' => [
+ 'array' => 'The :attribute field must have between :min and :max items.',
+ 'file' => 'The :attribute field must be between :min and :max kilobytes.',
+ 'numeric' => 'The :attribute field must be between :min and :max.',
+ 'string' => 'The :attribute field must be between :min and :max characters.',
+ ],
+ 'boolean' => 'The :attribute field must be true or false.',
+ 'can' => 'The :attribute field contains an unauthorized value.',
+ 'confirmed' => 'The :attribute field confirmation does not match.',
+ 'current_password' => 'The password is incorrect.',
+ 'date' => 'The :attribute field must be a valid date.',
+ 'date_equals' => 'The :attribute field must be a date equal to :date.',
+ 'date_format' => 'The :attribute field must match the format :format.',
+ 'decimal' => 'The :attribute field must have :decimal decimal places.',
+ 'declined' => 'The :attribute field must be declined.',
+ 'declined_if' => ':attribute fältet måste nekas när :other är :value.',
+ 'different' => 'The :attribute field and :other must be different.',
+ 'digits' => 'The :attribute field must be :digits digits.',
+ 'digits_between' => 'The :attribute field must be between :min and :max digits.',
+ 'dimensions' => 'The :attribute field has invalid image dimensions.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.',
+ 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.',
+ 'email' => 'The :attribute field must be a valid email address.',
+ 'ends_with' => 'The :attribute field must end with one of the following: :values.',
+ 'enum' => 'The selected :attribute is invalid.',
+ 'exists' => 'The selected :attribute is invalid.',
+ 'extensions' => 'The :attribute field must have one of the following extensions: :values.',
+ 'file' => 'The :attribute field must be a file.',
+ 'filled' => 'The :attribute field must have a value.',
+ 'gt' => [
+ 'array' => 'The :attribute field must have more than :value items.',
+ 'file' => 'The :attribute field must be greater than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than :value.',
+ 'string' => 'The :attribute field must be greater than :value characters.',
+ ],
+ 'gte' => [
+ 'array' => 'The :attribute field must have :value items or more.',
+ 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be greater than or equal to :value.',
+ 'string' => 'The :attribute field must be greater than or equal to :value characters.',
+ ],
+ 'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
+ 'image' => 'The :attribute field must be an image.',
+ 'in' => 'Det valda :attribute är ogiltigt.',
+ 'in_array' => 'The :attribute field must exist in :other.',
+ 'integer' => ':attribute fältet måste vara ett heltal.',
+ 'ip' => ':attribute fältet måste vara en giltig IP-adress.',
+ 'ipv4' => ':attribute fältet måste vara en giltig IPv4-adress.',
+ 'ipv6' => ':attribute fältet måste vara en giltig IPv6-adress.',
+ 'json' => ':attribute fältet måste vara en giltig JSON-sträng.',
+ 'list' => ':attribute fältet måste vara en lista.',
+ 'lowercase' => ':attribute fältet måste vara liten bokstav.',
+ 'lt' => [
+ 'array' => 'The :attribute field must have less than :value items.',
+ 'file' => 'The :attribute field must be less than :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than :value.',
+ 'string' => 'The :attribute field must be less than :value characters.',
+ ],
+ 'lte' => [
+ 'array' => 'The :attribute field must not have more than :value items.',
+ 'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
+ 'numeric' => 'The :attribute field must be less than or equal to :value.',
+ 'string' => 'The :attribute field must be less than or equal to :value characters.',
+ ],
+ 'mac_address' => 'The :attribute field must be a valid MAC address.',
+ 'max' => [
+ 'array' => 'The :attribute field must not have more than :max items.',
+ 'file' => 'The :attribute field must not be greater than :max kilobytes.',
+ 'numeric' => 'The :attribute field must not be greater than :max.',
+ 'string' => 'The :attribute field must not be greater than :max characters.',
+ ],
+ 'max_digits' => 'The :attribute field must not have more than :max digits.',
+ 'mimes' => 'The :attribute field must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute field must be a file of type: :values.',
+ 'min' => [
+ 'array' => 'The :attribute field must have at least :min items.',
+ 'file' => 'The :attribute field must be at least :min kilobytes.',
+ 'numeric' => 'The :attribute field must be at least :min.',
+ 'string' => 'The :attribute field must be at least :min characters.',
+ ],
+ 'min_digits' => 'The :attribute field must have at least :min digits.',
+ 'missing' => 'The :attribute field must be missing.',
+ 'missing_if' => 'The :attribute field must be missing when :other is :value.',
+ 'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
+ 'missing_with' => 'The :attribute field must be missing when :values is present.',
+ 'missing_with_all' => 'The :attribute field must be missing when :values are present.',
+ 'multiple_of' => 'The :attribute field must be a multiple of :value.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute field format is invalid.',
+ 'numeric' => 'The :attribute field must be a number.',
+ 'password' => [
+ 'letters' => 'The :attribute field must contain at least one letter.',
+ 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
+ 'numbers' => 'The :attribute field must contain at least one number.',
+ 'symbols' => 'The :attribute field must contain at least one symbol.',
+ 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
+ ],
+ 'present' => 'The :attribute field must be present.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'The :attribute field is prohibited.',
+ 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
+ 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
+ 'prohibits' => 'The :attribute field prohibits :other from being present.',
+ 'regex' => 'The :attribute field format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
+ 'same' => 'The :attribute field must match :other.',
+ 'size' => [
+ 'array' => 'The :attribute field must contain :size items.',
+ 'file' => 'The :attribute field must be :size kilobytes.',
+ 'numeric' => 'The :attribute field must be :size.',
+ 'string' => 'The :attribute field must be :size characters.',
+ ],
+ 'starts_with' => 'The :attribute field must start with one of the following: :values.',
+ 'string' => 'The :attribute field must be a string.',
+ 'timezone' => 'The :attribute field must be a valid timezone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'The :attribute failed to upload.',
+ 'uppercase' => 'The :attribute field must be uppercase.',
+ 'url' => 'The :attribute field must be a valid URL.',
+ 'ulid' => ':attribute fältet måste vara en korrekt ULID.',
+ 'uuid' => ':attribute fältet måste vara en korrekt UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'anpassat meddelande',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/uk/account.php b/lang/uk/account.php
new file mode 100644
index 000000000..e16644c6d
--- /dev/null
+++ b/lang/uk/account.php
@@ -0,0 +1,52 @@
+ 'Account',
+ 'personal_details' => 'Особисті дані',
+ 'security' => 'Безпека',
+ 'credits' => 'Credits',
+
+ 'change_password' => 'Змінити пароль',
+
+ 'two_factor_authentication' => 'Двофакторна автентифікація',
+ 'two_factor_authentication_description' => 'Додайте додатковий рівень безпеки до вашого облікового запису, ввімкнувши двофакторну автентифікацію.',
+ 'two_factor_authentication_enabled' => 'Двофакторна автентифікація ввімкнена для вашого облікового запису.',
+ 'two_factor_authentication_enable' => 'Увімкнути двофакторну автентифікацію',
+ 'two_factor_authentication_disable' => 'Вимкнути двофакторну автентифікацію',
+ 'two_factor_authentication_enable_description' => 'Щоб увімкнути двофакторну автентифікацію, проскануйте QR-код нижче за допомогою додатка для автентифікації, наприклад, Google Authenticator або Authy.',
+ 'two_factor_authentication_qr_code' => 'Скануйте QR-код нижче у вашому додатку для автентифікації:',
+ 'two_factor_authentication_secret' => 'Або введіть наступний код вручну:',
+
+ 'sessions' => 'Сесії',
+ 'sessions_description' => 'Керуйте та виходьте зі своїх активних сесій на інших браузерах і пристроях.',
+ 'logout_sessions' => 'Вийти з цієї сесії',
+
+ 'input' => [
+ 'current_password' => 'Поточний пароль',
+ 'current_password_placeholder' => 'Ваш поточний пароль',
+ 'new_password' => 'Новий пароль',
+ 'new_password_placeholder' => 'Ваш новий пароль',
+ 'confirm_password' => 'Підтвердити пароль',
+ 'confirm_password_placeholder' => 'Підтвердьте ваш новий пароль',
+
+ 'two_factor_code' => 'Введіть код з вашого додатка для автентифікації',
+ 'two_factor_code_placeholder' => 'Ваш код двофакторної автентифікації',
+
+ 'currency' => 'Currency',
+ 'amount' => 'Amount',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => 'Пароль змінено.',
+ 'password_incorrect' => 'Поточний пароль невірний.',
+ 'two_factor_enabled' => 'Двофакторна автентифікація ввімкнена.',
+ 'two_factor_disabled' => 'Двофакторна автентифікація вимкнена.',
+ 'two_factor_code_incorrect' => 'Код невірний.',
+ 'session_logged_out' => 'Сесію завершено.',
+ ],
+
+ 'no_credit' => 'You have no credits.',
+ 'add_credit' => 'Add credit',
+ 'credit_deposit' => 'Credit deposit (:currency)',
+
+];
diff --git a/lang/uk/auth.php b/lang/uk/auth.php
new file mode 100644
index 000000000..008bc5813
--- /dev/null
+++ b/lang/uk/auth.php
@@ -0,0 +1,55 @@
+ 'Ці облікові дані не відповідають нашим записам.',
+ 'password' => 'Наданий пароль є невірним.',
+ 'throttle' => 'Забагато спроб входу. Будь ласка, спробуйте знову через :seconds секунд.',
+
+ 'sign_in' => 'Вхід',
+ 'sign_in_title' => 'Увійдіть у свій обліковий запис',
+ 'or_sign_in_with' => 'Або увійдіть через',
+ 'forgot_password' => 'Забули пароль?',
+ 'dont_have_account' => 'Немає облікового запису?',
+ 'already_have_account' => 'Already have an account?',
+
+ 'sign_up' => 'Реєстрація',
+ 'sign_up_title' => 'Створіть свій обліковий запис',
+
+ 'logout' => 'Вийти',
+
+ 'input' => [
+ 'email' => 'Email',
+ 'email_label' => 'Адреса електронної пошти',
+ 'password' => 'Пароль',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => 'Ваш Discord-акаунт не підтверджено.',
+ 'account_not_registered' => 'Ви не зареєстровані на цьому сайті.',
+ ],
+
+ 'reset_password' => 'Reset password',
+
+ 'verify_2fa' => 'Підтвердити 2FA',
+ 'verify' => 'Підтвердити',
+
+ 'verification' => [
+ 'notice' => 'Підтвердьте свою електронну адресу',
+ 'sent' => 'Новий лист з підтвердженням надіслано на вашу електронну адресу.',
+ 'check_your_email' => 'Перш ніж продовжити, будь ласка, перевірте свою електронну пошту на наявність листа з посиланням для підтвердження.',
+ 'not_received' => 'Якщо ви не отримали листа, ви можете запросити ще один лист з підтвердженням.',
+ 'request_another' => 'Надіслати лист з підтвердженням ще раз',
+ ],
+];
diff --git a/lang/uk/dashboard.php b/lang/uk/dashboard.php
new file mode 100644
index 000000000..d47cc23f2
--- /dev/null
+++ b/lang/uk/dashboard.php
@@ -0,0 +1,11 @@
+ 'Dashboard',
+ 'welcome_back' => 'Welcome back, :name!',
+ 'dashboard_description' => 'Manage your active services, invoices, tickets, and stay updated here.',
+ 'open_tickets' => 'Відкриті тікети',
+ 'unpaid_invoices' => 'Неоплачені рахунки',
+ 'active_services' => 'Активні послуги',
+ 'view_all' => 'View All',
+];
diff --git a/lang/uk/general.php b/lang/uk/general.php
new file mode 100644
index 000000000..01213421f
--- /dev/null
+++ b/lang/uk/general.php
@@ -0,0 +1,36 @@
+ 'Переглянути',
+
+ 'input' => [
+ 'first_name' => 'Ім\'я',
+ 'first_name_placeholder' => 'Ваше ім\'я',
+ 'last_name' => 'Прізвище',
+ 'last_name_placeholder' => 'Ваше прізвище',
+ 'email' => 'Email',
+ 'email_placeholder' => 'Ваша електронна адреса',
+ 'phone' => 'Телефон',
+ 'phone_placeholder' => 'Ваш номер телефону',
+ 'company_name' => 'Назва компанії',
+ 'company_name_placeholder' => 'Назва вашої компанії',
+ 'country' => 'Країна',
+ 'country_placeholder' => 'Ваша країна',
+ 'city' => 'Місто',
+ 'city_placeholder' => 'Ваше місто',
+ 'address' => 'Адреса',
+ 'address_placeholder' => 'Ваша адреса',
+ 'address2' => 'Додаткова адреса',
+ 'address2_placeholder' => 'Ваша додаткова адреса',
+ 'zip' => 'Поштовий індекс',
+ 'zip_placeholder' => 'Ваш поштовий індекс',
+ 'state' => 'Штат/Область',
+ 'state_placeholder' => 'Ваш штат/область',
+
+ 'password' => 'Пароль',
+ 'password_placeholder' => 'Ваш пароль',
+ ],
+
+ 'all_rights_reserved' => 'Всі права захищені.',
+ 'update' => 'Оновити',
+];
diff --git a/lang/uk/invoices.php b/lang/uk/invoices.php
new file mode 100644
index 000000000..5015636b4
--- /dev/null
+++ b/lang/uk/invoices.php
@@ -0,0 +1,33 @@
+ 'Рахунки',
+ 'product' => 'Продукт',
+ 'price' => 'Ціна',
+ 'status' => 'Статус',
+ 'actions' => 'Дії',
+ 'view' => 'Переглянути',
+ 'id' => 'ID',
+ 'total' => 'Підсумок',
+ 'subtotal' => 'Проміжний підсумок',
+ 'invoice' => 'Рахунок №:id',
+ 'unit_price' => 'Ціна за одиницю',
+ 'bill_to' => 'Bill To',
+ 'issued_to' => 'Issued To',
+ 'paid' => 'Paid',
+ 'payment_pending' => 'Payment Pending',
+ 'checking_payment' => 'Checking Payment',
+ 'invoice_date' => 'Дата рахунку',
+ 'invoice_no' => 'Номер рахунку',
+ 'tax_id' => 'Tax ID',
+ 'company_id' => 'Company ID',
+ 'item' => 'Позиція',
+ 'quantity' => 'Кількість',
+ 'transactions' => 'Transactions',
+ 'transaction_id' => 'ID транзакції',
+ 'gateway' => 'Платіжний шлюз',
+ 'payment_date' => 'Дата оплати',
+ 'payment_method' => 'Спосіб оплати',
+ 'amount' => 'Сума',
+ 'date' => 'Date',
+];
diff --git a/lang/uk/navigation.php b/lang/uk/navigation.php
new file mode 100644
index 000000000..4585833aa
--- /dev/null
+++ b/lang/uk/navigation.php
@@ -0,0 +1,17 @@
+ 'Home',
+ 'shop' => 'Shop',
+ 'cart' => 'Корзина',
+ 'login' => 'Увійти',
+ 'register' => 'Зареєструватись',
+ 'services' => 'Services',
+ 'invoices' => 'Invoices',
+ 'account' => 'Account',
+ 'personal_details' => 'Personal Details',
+ 'security' => 'Security',
+ 'dashboard' => 'Dashboard',
+ 'tickets' => 'Tickets',
+ 'admin' => 'Admin',
+];
diff --git a/lang/uk/pagination.php b/lang/uk/pagination.php
new file mode 100644
index 000000000..54e5a82b5
--- /dev/null
+++ b/lang/uk/pagination.php
@@ -0,0 +1,19 @@
+ '« Попередня',
+ 'next' => 'Наступна »',
+
+];
diff --git a/lang/uk/passwords.php b/lang/uk/passwords.php
new file mode 100644
index 000000000..cfc83740f
--- /dev/null
+++ b/lang/uk/passwords.php
@@ -0,0 +1,11 @@
+ 'Ваш пароль було скинуто.',
+ 'sent' => 'Ми надіслали вам посилання для скидання пароля на електронну пошту.',
+ 'throttled' => 'Будь ласка, зачекайте перед повторною спробою.',
+ 'token' => 'Цей токен для скидання пароля є недійсним.',
+ 'user' => 'Не вдалося знайти користувача з цією електронною адресою.',
+
+];
diff --git a/lang/uk/product.php b/lang/uk/product.php
new file mode 100644
index 000000000..542b5061b
--- /dev/null
+++ b/lang/uk/product.php
@@ -0,0 +1,29 @@
+ 'Додати до кошика',
+ 'view' => 'Переглянути',
+ 'checkout' => 'Оформити замовлення',
+ 'remove' => 'Видалити',
+ 'empty_cart' => 'Ваш кошик порожній',
+ 'total_today' => 'Сума на сьогодні',
+ 'subtotal' => 'Subtotal',
+ 'total' => 'Total',
+
+ 'then_after_x' => 'Потім після :time',
+ 'order_summary' => 'Зведення замовлення',
+ 'edit' => 'Редагувати',
+
+ 'apply' => 'Застосувати',
+ 'price' => 'Ціна',
+ 'setup_fee' => 'Плата за налаштування',
+
+ 'in_stock' => 'В наявності',
+ 'out_of_stock' => 'Продукт :product відсутній на складі',
+ 'user_limit' => 'Ви досягли ліміту для :product',
+ 'payment_method' => 'Payment method',
+ 'use_credits' => 'Use credits',
+ 'tos' => 'I agree to the ',
+ 'tos_link' => 'Terms of Service',
+ 'tos_required' => 'You must agree to the Terms of Service',
+];
diff --git a/lang/uk/services.php b/lang/uk/services.php
new file mode 100644
index 000000000..5b6b75e78
--- /dev/null
+++ b/lang/uk/services.php
@@ -0,0 +1,32 @@
+ 'Послуги',
+ 'product' => 'Продукт',
+ 'price' => 'Ціна',
+ 'status' => 'Статус',
+ 'name' => 'Ім\'я',
+ 'actions' => 'Дії',
+ 'view' => 'Переглянути',
+
+ 'product_details' => 'Деталі продукту',
+ 'billing_cycle' => 'Цикл оплати',
+ 'cancel' => 'Скасувати',
+ 'cancellation' => 'Скасування :service',
+ 'cancel_are_you_sure' => 'Ви впевнені, що хочете скасувати цю послугу?',
+ 'cancel_reason' => 'Причина скасування',
+ 'cancel_type' => 'Тип скасування',
+ 'cancel_immediate' => 'Скасувати негайно',
+ 'cancel_end_of_period' => 'Скасувати наприкінці платіжного періоду',
+ 'cancel_immediate_warning' => 'Коли ви натиснете кнопку нижче, послуга буде скасована негайно, і ви не зможете її більше використовувати.',
+ 'cancellation_requested' => 'Запит на скасування надіслано',
+
+ 'current_plan' => 'Поточний план',
+ 'new_plan' => 'Новий план',
+ 'change_plan' => 'Змінити план',
+ 'current_price' => 'Поточна ціна',
+ 'new_price' => 'Нова ціна',
+ 'upgrade' => 'Підвищити',
+ 'upgrade_summary' => 'Зведення підвищення',
+ 'total_today' => 'Сума на сьогодні',
+];
diff --git a/lang/uk/ticket.php b/lang/uk/ticket.php
new file mode 100644
index 000000000..c5b56f73e
--- /dev/null
+++ b/lang/uk/ticket.php
@@ -0,0 +1,25 @@
+ 'Деталі тікету',
+ 'tickets' => 'Tickets',
+ 'subject' => 'Тема',
+ 'status' => 'Статус',
+ 'priority' => 'Пріоритет',
+ 'department' => 'Відділ',
+ 'created_at' => 'Створено',
+ 'reply' => 'Відповідь',
+
+ 'create_ticket' => 'Створити тікет',
+ 'select_department' => 'Оберіть відділ',
+ 'select_priority' => 'Оберіть пріоритет',
+ 'low' => 'Низький',
+ 'medium' => 'Середній',
+ 'high' => 'Високий',
+
+ 'last_activity' => 'Остання активність',
+
+ 'service' => 'Послуга',
+ 'select_service' => 'Оберіть послугу',
+ 'create' => 'Створити',
+];
diff --git a/lang/uk/validation.php b/lang/uk/validation.php
new file mode 100644
index 000000000..178bd8d2c
--- /dev/null
+++ b/lang/uk/validation.php
@@ -0,0 +1,192 @@
+ 'Поле :attribute повинно бути прийнято.',
+ 'accepted_if' => 'Поле :attribute повинно бути прийнято, коли :other є :value.',
+ 'active_url' => 'Поле :attribute повинно бути дійсною URL-адресою.',
+ 'after' => 'Поле :attribute повинно бути датою після :date.',
+ 'after_or_equal' => 'Поле :attribute повинно бути датою після або рівною :date.',
+ 'alpha' => 'Поле :attribute повинно містити лише літери.',
+ 'alpha_dash' => 'Поле :attribute повинно містити лише літери, цифри, дефіси та підкреслення.',
+ 'alpha_num' => 'Поле :attribute повинно містити лише літери та цифри.',
+ 'array' => 'Поле :attribute повинно бути масивом.',
+ 'ascii' => 'Поле :attribute повинно містити лише одно байтові алфавітно-цифрові символи та символи.',
+ 'before' => 'Поле :attribute повинно бути датою перед :date.',
+ 'before_or_equal' => 'Поле :attribute повинно бути датою перед або рівною :date.',
+ 'between' => [
+ 'array' => 'Поле :attribute повинно мати від :min до :max елементів.',
+ 'file' => 'Поле :attribute повинно бути між :min і :max кілобайтами.',
+ 'numeric' => 'Поле :attribute повинно бути між :min і :max.',
+ 'string' => 'Поле :attribute повинно містити від :min до :max символів.',
+ ],
+ 'boolean' => 'Поле :attribute повинно бути true або false.',
+ 'can' => 'Поле :attribute містить несанкціоноване значення.',
+ 'confirmed' => 'Підтвердження поля :attribute не збігається.',
+ 'current_password' => 'Пароль введено неправильно.',
+ 'date' => 'Поле :attribute повинно бути дійсною датою.',
+ 'date_equals' => 'Поле :attribute повинно бути датою, рівною :date.',
+ 'date_format' => 'Поле :attribute повинно відповідати формату :format.',
+ 'decimal' => 'Поле :attribute повинно мати :decimal десяткових знаків.',
+ 'declined' => 'Поле :attribute повинно бути відхилене.',
+ 'declined_if' => 'Поле :attribute повинно бути відхилене, коли :other є :value.',
+ 'different' => 'Поле :attribute та :other повинні бути різними.',
+ 'digits' => 'Поле :attribute повинно бути :digits цифрами.',
+ 'digits_between' => 'Поле :attribute повинно бути між :min і :max цифрами.',
+ 'dimensions' => 'Поле :attribute має недійсні розміри зображення.',
+ 'distinct' => 'Поле :attribute має повторюване значення.',
+ 'doesnt_end_with' => 'Поле :attribute не повинно закінчуватися на одне з наступного: :values.',
+ 'doesnt_start_with' => 'Поле :attribute не повинно починатися з одного з наступного: :values.',
+ 'email' => 'Поле :attribute повинно бути дійсною адресою електронної пошти.',
+ 'ends_with' => 'Поле :attribute повинно закінчуватися на одне з наступного: :values.',
+ 'enum' => 'Вибране :attribute є недійсним.',
+ 'exists' => 'Вибране :attribute є недійсним.',
+ 'extensions' => 'Поле :attribute повинно мати одне з наступних розширень: :values.',
+ 'file' => 'Поле :attribute повинно бути файлом.',
+ 'filled' => 'Поле :attribute повинно мати значення.',
+ 'gt' => [
+ 'array' => 'Поле :attribute повинно мати більше ніж :value елементів.',
+ 'file' => 'Поле :attribute повинно бути більше ніж :value кілобайт.',
+ 'numeric' => 'Поле :attribute повинно бути більшим за :value.',
+ 'string' => 'Поле :attribute повинно бути більшим за :value символів.',
+ ],
+ 'gte' => [
+ 'array' => 'Поле :attribute повинно мати :value елементів або більше.',
+ 'file' => 'Поле :attribute повинно бути більшим або рівним :value кілобайт.',
+ 'numeric' => 'Поле :attribute повинно бути більшим або рівним :value.',
+ 'string' => 'Поле :attribute повинно бути більшим або рівним :value символів.',
+ ],
+ 'hex_color' => 'Поле :attribute повинно бути дійсним шістнадцятковим кольором.',
+ 'image' => 'Поле :attribute повинно бути зображенням.',
+ 'in' => 'Вибране :attribute є недійсним.',
+ 'in_array' => 'Поле :attribute повинно існувати в :other.',
+ 'integer' => 'Поле :attribute повинно бути цілим числом.',
+ 'ip' => 'Поле :attribute повинно бути дійсною IP-адресою.',
+ 'ipv4' => 'Поле :attribute повинно бути дійсною адресою IPv4.',
+ 'ipv6' => 'Поле :attribute повинно бути дійсною адресою IPv6.',
+ 'json' => 'Поле :attribute повинно бути дійсним JSON рядком.',
+ 'list' => 'Поле :attribute повинно бути списком.',
+ 'lowercase' => 'Поле :attribute повинно бути в нижньому регістрі.',
+ 'lt' => [
+ 'array' => 'Поле :attribute повинно мати менше ніж :value елементів.',
+ 'file' => 'Поле :attribute повинно бути менше ніж :value кілобайт.',
+ 'numeric' => 'Поле :attribute повинно бути меншим за :value.',
+ 'string' => 'Поле :attribute повинно бути меншим за :value символів.',
+ ],
+ 'lte' => [
+ 'array' => 'Поле :attribute не повинно мати більше ніж :value елементів.',
+ 'file' => 'Поле :attribute повинно бути менше або рівним :value кілобайт.',
+ 'numeric' => 'Поле :attribute повинно бути меншим або рівним :value.',
+ 'string' => 'Поле :attribute повинно бути меншим або рівним :value символів.',
+ ],
+ 'mac_address' => 'Поле :attribute повинно бути дійсною MAC-адресою.',
+ 'max' => [
+ 'array' => 'Поле :attribute не повинно мати більше ніж :max елементів.',
+ 'file' => 'Поле :attribute не повинно перевищувати :max кілобайт.',
+ 'numeric' => 'Поле :attribute не повинно перевищувати :max.',
+ 'string' => 'Поле :attribute не повинно перевищувати :max символів.',
+ ],
+ 'max_digits' => 'Поле :attribute не повинно мати більше ніж :max цифр.',
+ 'mimes' => 'Поле :attribute повинно бути файлом типу: :values.',
+ 'mimetypes' => 'Поле :attribute повинно бути файлом типу: :values.',
+ 'min' => [
+ 'array' => 'Поле :attribute повинно мати щонайменше :min елементів.',
+ 'file' => 'Поле :attribute повинно бути принаймні :min кілобайт.',
+ 'numeric' => 'Поле :attribute повинно бути принаймні :min.',
+ 'string' => 'Поле :attribute повинно містити принаймні :min символів.',
+ ],
+ 'min_digits' => 'Поле :attribute повинно мати щонайменше :min цифр.',
+ 'missing' => 'Поле :attribute повинно бути відсутнім.',
+ 'missing_if' => 'Поле :attribute повинно бути відсутнім, коли :other є :value.',
+ 'missing_unless' => 'Поле :attribute повинно бути відсутнім, якщо :other не є :value.',
+ 'missing_with' => 'Поле :attribute повинно бути відсутнім, коли :values присутні.',
+ 'missing_with_all' => 'Поле :attribute повинно бути відсутнім, коли :values присутні.',
+ 'multiple_of' => 'Поле :attribute повинно бути кратним :value.',
+ 'not_in' => 'Вибране :attribute є недійсним.',
+ 'not_regex' => 'Формат поля :attribute є недійсним.',
+ 'numeric' => 'Поле :attribute повинно бути числом.',
+ 'password' => [
+ 'letters' => 'Поле :attribute повинно містити принаймні одну літеру.',
+ 'mixed' => 'Поле :attribute повинно містити принаймні одну велику та одну малу літеру.',
+ 'numbers' => 'Поле :attribute повинно містити принаймні одну цифру.',
+ 'symbols' => 'Поле :attribute повинно містити принаймні один символ.',
+ 'uncompromised' => 'Дане :attribute зламали. Виберіть інше.',
+ ],
+ 'present' => 'Поле :attribute повинно бути присутнім.',
+ 'present_if' => 'The :attribute field must be present when :other is :value.',
+ 'present_unless' => 'The :attribute field must be present unless :other is :value.',
+ 'present_with' => 'The :attribute field must be present when :values is present.',
+ 'present_with_all' => 'The :attribute field must be present when :values are present.',
+ 'prohibited' => 'Поле :attribute заборонено.',
+ 'prohibited_if' => 'Поле :attribute заборонено, коли :other є :value.',
+ 'prohibited_unless' => 'Поле :attribute заборонено, якщо :other не є в :values.',
+ 'prohibits' => 'Поле :attribute забороняє присутність :other.',
+ 'regex' => 'Формат поля :attribute є недійсним.',
+ 'required' => 'Поле :attribute є обов\'язковим.',
+ 'required_array_keys' => 'The :attribute field must contain entries for: :values.',
+ 'required_if' => 'Поле :attribute є обов\'язковим, коли :other є :value.',
+ 'required_if_accepted' => 'Поле :attribute є обов\'язковим, коли :other прийнято.',
+ 'required_unless' => 'Поле :attribute є обов\'язковим, якщо :other не є в :values.',
+ 'required_with' => 'Поле :attribute є обов\'язковим, коли :values присутні.',
+ 'required_with_all' => 'Поле :attribute є обов\'язковим, коли :values присутні.',
+ 'required_without' => 'Поле :attribute є обов\'язковим, коли :values відсутні.',
+ 'required_without_all' => 'Поле :attribute є обов\'язковим, коли жодне з :values не присутнє.',
+ 'same' => 'Поле :attribute та :other повинні збігатися.',
+ 'size' => [
+ 'array' => 'Поле :attribute повинно містити :size елементів.',
+ 'file' => 'Поле :attribute повинно бути :size кілобайт.',
+ 'numeric' => 'Поле :attribute повинно бути :size.',
+ 'string' => 'Поле :attribute повинно бути :size символів.',
+ ],
+ 'starts_with' => 'Поле :attribute повинно починатися з одного з наступного: :values.',
+ 'string' => 'Поле :attribute повинно бути рядком.',
+ 'timezone' => 'Поле :attribute повинно бути дійсною зоною.',
+ 'unique' => 'Значення поля :attribute вже зайняте.',
+ 'uploaded' => 'Не вдалося завантажити поле :attribute.',
+ 'uppercase' => 'The :attribute field must be uppercase.',
+ 'url' => 'Формат поля :attribute є недійсним.',
+ 'ulid' => 'The :attribute field must be a valid ULID.',
+ 'uuid' => 'Поле :attribute повинно бути дійсним UUID.',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => 'спеціальне повідомлення',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/lang/zh/account.php b/lang/zh/account.php
new file mode 100644
index 000000000..8bc984cd1
--- /dev/null
+++ b/lang/zh/account.php
@@ -0,0 +1,52 @@
+ '帳戶',
+ 'personal_details' => '個人資料',
+ 'security' => '安全性',
+ 'credits' => '點數',
+
+ 'change_password' => '變更密碼',
+
+ 'two_factor_authentication' => '兩步驟驗證',
+ 'two_factor_authentication_description' => '啟用兩步驟驗證,為您的帳戶增加多一層安全保護。',
+ 'two_factor_authentication_enabled' => '您的帳戶已啟用兩步驟驗證。',
+ 'two_factor_authentication_enable' => '啟用兩步驟驗證',
+ 'two_factor_authentication_disable' => '停用兩步驟驗證',
+ 'two_factor_authentication_enable_description' => '若要啟用兩步驟驗證,您需要使用像 Google Authenticator 或 Authy 這類的驗證應用程式掃描下方的 QR Code。',
+ 'two_factor_authentication_qr_code' => '使用您的驗證應用程式掃描下方的 QR Code:',
+ 'two_factor_authentication_secret' => '或手動輸入以下代碼:',
+
+ 'sessions' => '工作階段',
+ 'sessions_description' => '管理並登出您在其他瀏覽器和裝置上的活動工作階段。',
+ 'logout_sessions' => '登出此工作階段',
+
+ 'input' => [
+ 'current_password' => '目前密碼',
+ 'current_password_placeholder' => '您目前的密碼',
+ 'new_password' => '新密碼',
+ 'new_password_placeholder' => '您的新密碼',
+ 'confirm_password' => '確認密碼',
+ 'confirm_password_placeholder' => '確認您的新密碼',
+
+ 'two_factor_code' => '輸入您的驗證應用程式中的代碼',
+ 'two_factor_code_placeholder' => '您的兩步驟驗證代碼',
+
+ 'currency' => '貨幣',
+ 'amount' => '金額',
+ ],
+
+ 'notifications' => [
+ 'password_changed' => '密碼已變更。',
+ 'password_incorrect' => '目前密碼不正確。',
+ 'two_factor_enabled' => '兩步驟驗證已啟用。',
+ 'two_factor_disabled' => '兩步驟驗證已停用。',
+ 'two_factor_code_incorrect' => '代碼不正確。',
+ 'session_logged_out' => '工作階段已登出。',
+ ],
+
+ 'no_credit' => '您沒有點數。',
+ 'add_credit' => '新增點數',
+ 'credit_deposit' => '點數儲值 (:currency)',
+
+];
diff --git a/lang/zh/auth.php b/lang/zh/auth.php
new file mode 100644
index 000000000..dfb9adac3
--- /dev/null
+++ b/lang/zh/auth.php
@@ -0,0 +1,55 @@
+ '這些憑證與我們的記錄不符。',
+ 'password' => '提供的密碼不正確。',
+ 'throttle' => '登入嘗試次數過多。請在 :seconds 秒後再試。',
+
+ 'sign_in' => '登入',
+ 'sign_in_title' => '登入您的帳戶',
+ 'or_sign_in_with' => '或使用以下方式登入',
+ 'forgot_password' => '忘記密碼?',
+ 'dont_have_account' => '還沒有帳戶?',
+ 'already_have_account' => '已經有帳戶了?',
+
+ 'sign_up' => '註冊',
+ 'sign_up_title' => '建立您的帳戶',
+
+ 'logout' => '登出',
+
+ 'input' => [
+ 'email' => '電子郵件',
+ 'email_label' => '電子郵件地址',
+ 'password' => '密碼',
+ ],
+
+ 'oauth' => [
+ 'unverified_discord_account' => '您的 Discord 帳戶尚未驗證。',
+ 'account_not_registered' => '您尚未在本站註冊。',
+ ],
+
+ 'reset_password' => '重設密碼',
+
+ 'verify_2fa' => '驗證兩步驟驗證',
+ 'verify' => '驗證',
+
+ 'verification' => [
+ 'notice' => '驗證您的電子郵件地址',
+ 'sent' => '新的驗證連結已發送到您的電子郵件地址。',
+ 'check_your_email' => '在繼續之前,請檢查您的電子郵件以獲取驗證連結。',
+ 'not_received' => '如果您沒有收到電子郵件,您可以要求重新發送驗證郵件。',
+ 'request_another' => '重新發送驗證郵件',
+ ],
+];
diff --git a/lang/zh/dashboard.php b/lang/zh/dashboard.php
new file mode 100644
index 000000000..65659e0dc
--- /dev/null
+++ b/lang/zh/dashboard.php
@@ -0,0 +1,11 @@
+ '客戶中心',
+ 'welcome_back' => '歡迎回來,{name}!',
+ 'dashboard_description' => '在這裡管理您啟用中的服務、帳單、服務單,並保持最新狀態。',
+ 'open_tickets' => '處理中的服務單',
+ 'unpaid_invoices' => '未付款的帳單',
+ 'active_services' => '啟用中的服務',
+ 'view_all' => '檢視全部',
+];
diff --git a/lang/zh/general.php b/lang/zh/general.php
new file mode 100644
index 000000000..6f949f6c9
--- /dev/null
+++ b/lang/zh/general.php
@@ -0,0 +1,36 @@
+ '檢視',
+
+ 'input' => [
+ 'first_name' => '名字',
+ 'first_name_placeholder' => '您的名字',
+ 'last_name' => '姓氏',
+ 'last_name_placeholder' => '您的姓氏',
+ 'email' => '電子郵件',
+ 'email_placeholder' => '您的電子郵件地址',
+ 'phone' => '電話',
+ 'phone_placeholder' => '您的電話號碼',
+ 'company_name' => '公司名稱',
+ 'company_name_placeholder' => '您的公司名稱',
+ 'country' => '國家',
+ 'country_placeholder' => '您的國家',
+ 'city' => '城市',
+ 'city_placeholder' => '您所在的城市',
+ 'address' => '地址',
+ 'address_placeholder' => '您的地址',
+ 'address2' => '地址 2',
+ 'address2_placeholder' => '您的地址 2',
+ 'zip' => '郵遞區號',
+ 'zip_placeholder' => '您的郵遞區號',
+ 'state' => '州/省',
+ 'state_placeholder' => '您所在的州/省',
+
+ 'password' => '密碼',
+ 'password_placeholder' => '您的密碼',
+ ],
+
+ 'all_rights_reserved' => '版權所有。',
+ 'update' => '更新',
+];
diff --git a/lang/zh/invoices.php b/lang/zh/invoices.php
new file mode 100644
index 000000000..52965b950
--- /dev/null
+++ b/lang/zh/invoices.php
@@ -0,0 +1,33 @@
+ '發票',
+ 'product' => '產品',
+ 'price' => '價格',
+ 'status' => '狀態',
+ 'actions' => '操作',
+ 'view' => '檢視',
+ 'id' => '編號',
+ 'total' => '總計',
+ 'subtotal' => '小計',
+ 'invoice' => '發票 #:id',
+ 'unit_price' => '單價',
+ 'bill_to' => '帳單寄送至',
+ 'issued_to' => 'Issued To',
+ 'paid' => '已付款',
+ 'payment_pending' => '等待付款',
+ 'checking_payment' => '確認付款中',
+ 'invoice_date' => '發票日期',
+ 'invoice_no' => '發票號碼',
+ 'tax_id' => '稅務編號',
+ 'company_id' => '公司編號',
+ 'item' => '項目',
+ 'quantity' => '數量',
+ 'transactions' => '交易紀錄',
+ 'transaction_id' => '交易編號',
+ 'gateway' => '付款閘道',
+ 'payment_date' => '付款日期',
+ 'payment_method' => '付款方式',
+ 'amount' => '金額',
+ 'date' => '日期',
+];
diff --git a/lang/zh/navigation.php b/lang/zh/navigation.php
new file mode 100644
index 000000000..bfd9ef1dd
--- /dev/null
+++ b/lang/zh/navigation.php
@@ -0,0 +1,17 @@
+ '首頁',
+ 'shop' => '商店',
+ 'cart' => '購物車',
+ 'login' => '登入',
+ 'register' => '註冊',
+ 'services' => '服務',
+ 'invoices' => '發票',
+ 'account' => '帳戶',
+ 'personal_details' => '個人資料',
+ 'security' => '安全性',
+ 'dashboard' => '控制面板',
+ 'tickets' => '服務單',
+ 'admin' => '管理員',
+];
diff --git a/lang/zh/pagination.php b/lang/zh/pagination.php
new file mode 100644
index 000000000..cca0a8930
--- /dev/null
+++ b/lang/zh/pagination.php
@@ -0,0 +1,19 @@
+ '« 上一頁',
+ 'next' => '下一頁 »',
+
+];
diff --git a/lang/zh/passwords.php b/lang/zh/passwords.php
new file mode 100644
index 000000000..c8f31da25
--- /dev/null
+++ b/lang/zh/passwords.php
@@ -0,0 +1,11 @@
+ '您的密碼已重設。',
+ 'sent' => '我們已將密碼重設連結寄至您的電子郵件信箱。',
+ 'throttled' => '請稍候再試。',
+ 'token' => '此密碼重設權杖無效。',
+ 'user' => '我們找不到使用該電子郵件信箱的使用者。',
+
+];
diff --git a/lang/zh/product.php b/lang/zh/product.php
new file mode 100644
index 000000000..609c2ed0e
--- /dev/null
+++ b/lang/zh/product.php
@@ -0,0 +1,29 @@
+ '加入購物車',
+ 'view' => '檢視',
+ 'checkout' => '結帳',
+ 'remove' => '移除',
+ 'empty_cart' => '您的購物車是空的',
+ 'total_today' => '今日總計',
+ 'subtotal' => '小計',
+ 'total' => '總計',
+
+ 'then_after_x' => '之後每 :time',
+ 'order_summary' => '訂單摘要',
+ 'edit' => '編輯',
+
+ 'apply' => '套用',
+ 'price' => '價格',
+ 'setup_fee' => '設定費',
+
+ 'in_stock' => '有現貨',
+ 'out_of_stock' => '產品 :product 已售罄',
+ 'user_limit' => '您已達到 :product 的購買上限',
+ 'payment_method' => '付款方式',
+ 'use_credits' => '使用點數',
+ 'tos' => '我同意 ',
+ 'tos_link' => '服務條款',
+ 'tos_required' => '您必須同意服務條款',
+];
diff --git a/lang/zh/services.php b/lang/zh/services.php
new file mode 100644
index 000000000..347592304
--- /dev/null
+++ b/lang/zh/services.php
@@ -0,0 +1,32 @@
+ '服務',
+ 'product' => '產品',
+ 'price' => '價格',
+ 'status' => '狀態',
+ 'name' => '名稱',
+ 'actions' => '操作',
+ 'view' => '檢視',
+
+ 'product_details' => '產品詳情',
+ 'billing_cycle' => '計費週期',
+ 'cancel' => '取消',
+ 'cancellation' => ':service 的取消',
+ 'cancel_are_you_sure' => '您確定要取消此服務嗎?',
+ 'cancel_reason' => '取消原因',
+ 'cancel_type' => '取消類型',
+ 'cancel_immediate' => '立即取消',
+ 'cancel_end_of_period' => '在計費週期結束時取消',
+ 'cancel_immediate_warning' => '當您按下下方的按鈕後,服務將立即取消,您將無法再使用。',
+ 'cancellation_requested' => '已請求取消',
+
+ 'current_plan' => '目前方案',
+ 'new_plan' => '新方案',
+ 'change_plan' => '變更方案',
+ 'current_price' => '目前價格',
+ 'new_price' => '新價格',
+ 'upgrade' => '升級',
+ 'upgrade_summary' => '升級摘要',
+ 'total_today' => '今日總計',
+];
diff --git a/lang/zh/ticket.php b/lang/zh/ticket.php
new file mode 100644
index 000000000..cd68f71dd
--- /dev/null
+++ b/lang/zh/ticket.php
@@ -0,0 +1,25 @@
+ '服務單詳情',
+ 'tickets' => '服務單',
+ 'subject' => '主旨',
+ 'status' => '狀態',
+ 'priority' => '優先順序',
+ 'department' => '部門',
+ 'created_at' => '建立時間',
+ 'reply' => '回覆',
+
+ 'create_ticket' => '建立工單',
+ 'select_department' => '選擇部門',
+ 'select_priority' => '選擇優先順序',
+ 'low' => '低',
+ 'medium' => '中',
+ 'high' => '高',
+
+ 'last_activity' => '最後活動',
+
+ 'service' => '服務',
+ 'select_service' => '選擇服務',
+ 'create' => '建立',
+];
diff --git a/lang/zh/validation.php b/lang/zh/validation.php
new file mode 100644
index 000000000..c12e9ec65
--- /dev/null
+++ b/lang/zh/validation.php
@@ -0,0 +1,192 @@
+ ':attribute 欄位必須被接受。',
+ 'accepted_if' => ':attribute 欄位在 :other 為 :value 時必須被接受。',
+ 'active_url' => ':attribute 欄位必須是有效的 URL。',
+ 'after' => ':attribute 欄位必須是在 :date 之後的日期。',
+ 'after_or_equal' => ':attribute 欄位必須是在 :date 之後或等於 :date 的日期。',
+ 'alpha' => ':attribute 欄位只能包含字母。',
+ 'alpha_dash' => ':attribute 欄位只能包含字母、數字、破折號和底線。',
+ 'alpha_num' => ':attribute 欄位只能包含字母和數字。',
+ 'array' => ':attribute 欄位必須是陣列。',
+ 'ascii' => ':attribute 欄位只能包含單位元組英數字元和符號。',
+ 'before' => ':attribute 欄位必須是在 :date 之前的日期。',
+ 'before_or_equal' => ':attribute 欄位必須是在 :date 之前或等於 :date 的日期。',
+ 'between' => [
+ 'array' => ':attribute 欄位必須有 :min 到 :max 個項目。',
+ 'file' => ':attribute 欄位的大小必須介於 :min 到 :max KB 之間。',
+ 'numeric' => ':attribute 欄位的值必須介於 :min 到 :max 之間。',
+ 'string' => ':attribute 欄位的長度必須介於 :min 到 :max 個字元之間。',
+ ],
+ 'boolean' => ':attribute 欄位必須是 true 或 false。',
+ 'can' => ':attribute 欄位包含未授權的值。',
+ 'confirmed' => ':attribute 欄位的確認不符。',
+ 'current_password' => '目前的密碼不正確。',
+ 'date' => ':attribute 欄位必須是有效的日期。',
+ 'date_equals' => ':attribute 欄位必須是等於 :date 的日期。',
+ 'date_format' => ':attribute 欄位必須符合 :format 的格式。',
+ 'decimal' => ':attribute 欄位必須有 :decimal 位小數。',
+ 'declined' => ':attribute 欄位必須被拒絕。',
+ 'declined_if' => ':attribute 欄位在 :other 為 :value 時必須被拒絕。',
+ 'different' => ':attribute 欄位和 :other 必須不同。',
+ 'digits' => ':attribute 欄位必須是 :digits 位數字。',
+ 'digits_between' => ':attribute 欄位必須介於 :min 到 :max 位數字。',
+ 'dimensions' => ':attribute 欄位的圖片尺寸無效。',
+ 'distinct' => ':attribute 欄位有重複的值。',
+ 'doesnt_end_with' => ':attribute 欄位不能以 :values 其中之一結尾。',
+ 'doesnt_start_with' => ':attribute 欄位不能以 :values 其中之一開頭。',
+ 'email' => ':attribute 欄位必須是有效的電子郵件地址。',
+ 'ends_with' => ':attribute 欄位必須以 :values 其中之一結尾。',
+ 'enum' => '所選的 :attribute 無效。',
+ 'exists' => '所選的 :attribute 無效。',
+ 'extensions' => ':attribute 欄位必須是 :values 其中一種副檔名。',
+ 'file' => ':attribute 欄位必須是檔案。',
+ 'filled' => ':attribute 欄位必須有值。',
+ 'gt' => [
+ 'array' => ':attribute 欄位必須多於 :value 個項目。',
+ 'file' => ':attribute 欄位的大小必須大於 :value KB。',
+ 'numeric' => ':attribute 欄位的值必須大於 :value。',
+ 'string' => ':attribute 欄位的長度必須大於 :value 個字元。',
+ ],
+ 'gte' => [
+ 'array' => ':attribute 欄位必須有 :value 個或更多項目。',
+ 'file' => ':attribute 欄位的大小必須大於或等於 :value KB。',
+ 'numeric' => ':attribute 欄位的值必須大於或等於 :value。',
+ 'string' => ':attribute 欄位的長度必須大於或等於 :value 個字元。',
+ ],
+ 'hex_color' => ':attribute 欄位必須是有效的十六進位顏色。',
+ 'image' => ':attribute 欄位必須是圖片。',
+ 'in' => '所選的 :attribute 無效。',
+ 'in_array' => ':attribute 欄位必須存在於 :other 中。',
+ 'integer' => ':attribute 欄位必須是整數。',
+ 'ip' => ':attribute 欄位必須是有效的 IP 位址。',
+ 'ipv4' => ':attribute 欄位必須是有效的 IPv4 位址。',
+ 'ipv6' => ':attribute 欄位必須是有效的 IPv6 位址。',
+ 'json' => ':attribute 欄位必須是有效的 JSON 字串。',
+ 'list' => ':attribute 欄位必須是列表。',
+ 'lowercase' => ':attribute 欄位必須是小寫。',
+ 'lt' => [
+ 'array' => ':attribute 欄位必須少於 :value 個項目。',
+ 'file' => ':attribute 欄位的大小必須小於 :value KB。',
+ 'numeric' => ':attribute 欄位的值必須小於 :value。',
+ 'string' => ':attribute 欄位的長度必須小於 :value 個字元。',
+ ],
+ 'lte' => [
+ 'array' => ':attribute 欄位不能多於 :value 個項目。',
+ 'file' => ':attribute 欄位的大小必須小於或等於 :value KB。',
+ 'numeric' => ':attribute 欄位的值必須小於或等於 :value。',
+ 'string' => ':attribute 欄位的長度必須小於或等於 :value 個字元。',
+ ],
+ 'mac_address' => ':attribute 欄位必須是有效的 MAC 位址。',
+ 'max' => [
+ 'array' => ':attribute 欄位不能多於 :max 個項目。',
+ 'file' => ':attribute 欄位的大小不能大於 :max KB。',
+ 'numeric' => ':attribute 欄位的值不能大於 :max。',
+ 'string' => ':attribute 欄位的長度不能大於 :max 個字元。',
+ ],
+ 'max_digits' => ':attribute 欄位不能超過 :max 位數字。',
+ 'mimes' => ':attribute 欄位必須是 :values 類型的檔案。',
+ 'mimetypes' => ':attribute 欄位必須是 :values 類型的檔案。',
+ 'min' => [
+ 'array' => ':attribute 欄位至少要有 :min 個項目。',
+ 'file' => ':attribute 欄位的大小至少要有 :min KB。',
+ 'numeric' => ':attribute 欄位的值至少要有 :min。',
+ 'string' => ':attribute 欄位的長度至少要有 :min 個字元。',
+ ],
+ 'min_digits' => ':attribute 欄位至少要有 :min 位數字。',
+ 'missing' => ':attribute 欄位必須不存在。',
+ 'missing_if' => '當 :other 為 :value 時,:attribute 欄位必須不存在。',
+ 'missing_unless' => '除非 :other 為 :value,否則 :attribute 欄位必須不存在。',
+ 'missing_with' => '當 :values 存在時,:attribute 欄位必須不存在。',
+ 'missing_with_all' => '當所有 :values 都存在時,:attribute 欄位必須不存在。',
+ 'multiple_of' => ':attribute 欄位必須是 :value 的倍數。',
+ 'not_in' => '所選的 :attribute 無效。',
+ 'not_regex' => ':attribute 欄位的格式無效。',
+ 'numeric' => ':attribute 欄位必須是數字。',
+ 'password' => [
+ 'letters' => ':attribute 欄位必須包含至少一個字母。',
+ 'mixed' => ':attribute 欄位必須包含至少一個大寫字母和一個小寫字母。',
+ 'numbers' => ':attribute 欄位必須包含至少一個數字。',
+ 'symbols' => ':attribute 欄位必須包含至少一個符號。',
+ 'uncompromised' => '指定的 :attribute 已出現在資料外洩中。請選擇不同的 :attribute。',
+ ],
+ 'present' => ':attribute 欄位必須存在。',
+ 'present_if' => '當 :other 為 :value 時,:attribute 欄位必須存在。',
+ 'present_unless' => '除非 :other 為 :value,否則 :attribute 欄位必須存在。',
+ 'present_with' => '當 :values 存在時,:attribute 欄位必須存在。',
+ 'present_with_all' => '當所有 :values 都存在時,:attribute 欄位必須存在。',
+ 'prohibited' => ':attribute 欄位被禁止。',
+ 'prohibited_if' => '當 :other 為 :value 時,:attribute 欄位被禁止。',
+ 'prohibited_unless' => '除非 :other 在 :values 中,否則 :attribute 欄位被禁止。',
+ 'prohibits' => ':attribute 欄位禁止 :other 出現。',
+ 'regex' => ':attribute 欄位的格式無效。',
+ 'required' => ':attribute 欄位是必填的。',
+ 'required_array_keys' => ':attribute 欄位必須包含 :values 的項目。',
+ 'required_if' => '當 :other 為 :value 時,:attribute 欄位是必填的。',
+ 'required_if_accepted' => '當 :other 被接受時,:attribute 欄位是必填的。',
+ 'required_unless' => '除非 :other 在 :values 中,否則 :attribute 欄位是必填的。',
+ 'required_with' => '當 :values 存在時,:attribute 欄位是必填的。',
+ 'required_with_all' => '當所有 :values 都存在時,:attribute 欄位是必填的。',
+ 'required_without' => '當 :values 不存在時,:attribute 欄位是必填的。',
+ 'required_without_all' => '當所有 :values 都不存在時,:attribute 欄位是必填的。',
+ 'same' => ':attribute 欄位必須與 :other 相符。',
+ 'size' => [
+ 'array' => ':attribute 欄位必須包含 :size 個項目。',
+ 'file' => ':attribute 欄位的大小必須是 :size KB。',
+ 'numeric' => ':attribute 欄位的值必須是 :size。',
+ 'string' => ':attribute 欄位的長度必須是 :size 個字元。',
+ ],
+ 'starts_with' => ':attribute 欄位必須以 :values 其中之一開頭。',
+ 'string' => ':attribute 欄位必須是字串。',
+ 'timezone' => ':attribute 欄位必須是有效的時區。',
+ 'unique' => ':attribute 已經被使用。',
+ 'uploaded' => ':attribute 上傳失敗。',
+ 'uppercase' => ':attribute 欄位必須是大寫。',
+ 'url' => ':attribute 欄位必須是有效的 URL。',
+ 'ulid' => ':attribute 欄位必須是有效的 ULID。',
+ 'uuid' => ':attribute 欄位必須是有效的 UUID。',
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Language Lines
+ |--------------------------------------------------------------------------
+ |
+ | Here you may specify custom validation messages for attributes using the
+ | convention "attribute.rule" to name the lines. This makes it quick to
+ | specify a specific custom language line for a given attribute rule.
+ |
+ */
+
+ 'custom' => [
+ 'attribute-name' => [
+ 'rule-name' => '自訂訊息',
+ ],
+ ],
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | The following language lines are used to swap our attribute placeholder
+ | with something more reader friendly such as "E-Mail Address" instead
+ | of "email". This simply helps us make our message more expressive.
+ |
+ */
+
+ 'attributes' => [],
+
+];
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 000000000..e43a65cb3
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,1774 @@
+{
+ "name": "paymenter",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "devDependencies": {
+ "@tailwindcss/forms": "^0.5.10",
+ "@tailwindcss/typography": "^0.5.16",
+ "@tailwindcss/vite": "^4.0.6",
+ "laravel-vite-plugin": "^1.0",
+ "tailwindcss": "^4.0.6",
+ "vite": "^6.3"
+ }
+ },
+ "node_modules/@esbuild/aix-ppc64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.3.tgz",
+ "integrity": "sha512-W8bFfPA8DowP8l//sxjJLSLkD8iEjMc7cBVyP+u4cEv9sM7mdUCkgsj+t0n/BWPFtv7WWCN5Yzj0N6FJNUUqBQ==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "aix"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/android-arm": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.3.tgz",
+ "integrity": "sha512-PuwVXbnP87Tcff5I9ngV0lmiSu40xw1At6i3GsU77U7cjDDB4s0X2cyFuBiDa1SBk9DnvWwnGvVaGBqoFWPb7A==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/android-arm64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.3.tgz",
+ "integrity": "sha512-XelR6MzjlZuBM4f5z2IQHK6LkK34Cvv6Rj2EntER3lwCBFdg6h2lKbtRjpTTsdEjD/WSe1q8UyPBXP1x3i/wYQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/android-x64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.3.tgz",
+ "integrity": "sha512-ogtTpYHT/g1GWS/zKM0cc/tIebFjm1F9Aw1boQ2Y0eUQ+J89d0jFY//s9ei9jVIlkYi8AfOjiixcLJSGNSOAdQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/darwin-arm64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.3.tgz",
+ "integrity": "sha512-eESK5yfPNTqpAmDfFWNsOhmIOaQA59tAcF/EfYvo5/QWQCzXn5iUSOnqt3ra3UdzBv073ykTtmeLJZGt3HhA+w==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/darwin-x64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.3.tgz",
+ "integrity": "sha512-Kd8glo7sIZtwOLcPbW0yLpKmBNWMANZhrC1r6K++uDR2zyzb6AeOYtI6udbtabmQpFaxJ8uduXMAo1gs5ozz8A==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.3.tgz",
+ "integrity": "sha512-EJiyS70BYybOBpJth3M0KLOus0n+RRMKTYzhYhFeMwp7e/RaajXvP+BWlmEXNk6uk+KAu46j/kaQzr6au+JcIw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/freebsd-x64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.3.tgz",
+ "integrity": "sha512-Q+wSjaLpGxYf7zC0kL0nDlhsfuFkoN+EXrx2KSB33RhinWzejOd6AvgmP5JbkgXKmjhmpfgKZq24pneodYqE8Q==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-arm": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.3.tgz",
+ "integrity": "sha512-dUOVmAUzuHy2ZOKIHIKHCm58HKzFqd+puLaS424h6I85GlSDRZIA5ycBixb3mFgM0Jdh+ZOSB6KptX30DD8YOQ==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-arm64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.3.tgz",
+ "integrity": "sha512-xCUgnNYhRD5bb1C1nqrDV1PfkwgbswTTBRbAd8aH5PhYzikdf/ddtsYyMXFfGSsb/6t6QaPSzxtbfAZr9uox4A==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-ia32": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.3.tgz",
+ "integrity": "sha512-yplPOpczHOO4jTYKmuYuANI3WhvIPSVANGcNUeMlxH4twz/TeXuzEP41tGKNGWJjuMhotpGabeFYGAOU2ummBw==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.3.tgz",
+ "integrity": "sha512-P4BLP5/fjyihmXCELRGrLd793q/lBtKMQl8ARGpDxgzgIKJDRJ/u4r1A/HgpBpKpKZelGct2PGI4T+axcedf6g==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-mips64el": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.3.tgz",
+ "integrity": "sha512-eRAOV2ODpu6P5divMEMa26RRqb2yUoYsuQQOuFUexUoQndm4MdpXXDBbUoKIc0iPa4aCO7gIhtnYomkn2x+bag==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-ppc64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.3.tgz",
+ "integrity": "sha512-ZC4jV2p7VbzTlnl8nZKLcBkfzIf4Yad1SJM4ZMKYnJqZFD4rTI+pBG65u8ev4jk3/MPwY9DvGn50wi3uhdaghg==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-riscv64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.3.tgz",
+ "integrity": "sha512-LDDODcFzNtECTrUUbVCs6j9/bDVqy7DDRsuIXJg6so+mFksgwG7ZVnTruYi5V+z3eE5y+BJZw7VvUadkbfg7QA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-s390x": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.3.tgz",
+ "integrity": "sha512-s+w/NOY2k0yC2p9SLen+ymflgcpRkvwwa02fqmAwhBRI3SC12uiS10edHHXlVWwfAagYSY5UpmT/zISXPMW3tQ==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.3.tgz",
+ "integrity": "sha512-nQHDz4pXjSDC6UfOE1Fw9Q8d6GCAd9KdvMZpfVGWSJztYCarRgSDfOVBY5xwhQXseiyxapkiSJi/5/ja8mRFFA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/netbsd-arm64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.3.tgz",
+ "integrity": "sha512-1QaLtOWq0mzK6tzzp0jRN3eccmN3hezey7mhLnzC6oNlJoUJz4nym5ZD7mDnS/LZQgkrhEbEiTn515lPeLpgWA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/netbsd-x64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.3.tgz",
+ "integrity": "sha512-i5Hm68HXHdgv8wkrt+10Bc50zM0/eonPb/a/OFVfB6Qvpiirco5gBA5bz7S2SHuU+Y4LWn/zehzNX14Sp4r27g==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/openbsd-arm64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.3.tgz",
+ "integrity": "sha512-zGAVApJEYTbOC6H/3QBr2mq3upG/LBEXr85/pTtKiv2IXcgKV0RT0QA/hSXZqSvLEpXeIxah7LczB4lkiYhTAQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/openbsd-x64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.3.tgz",
+ "integrity": "sha512-fpqctI45NnCIDKBH5AXQBsD0NDPbEFczK98hk/aa6HJxbl+UtLkJV2+Bvy5hLSLk3LHmqt0NTkKNso1A9y1a4w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/sunos-x64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.3.tgz",
+ "integrity": "sha512-ROJhm7d8bk9dMCUZjkS8fgzsPAZEjtRJqCAmVgB0gMrvG7hfmPmz9k1rwO4jSiblFjYmNvbECL9uhaPzONMfgA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/win32-arm64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.3.tgz",
+ "integrity": "sha512-YWcow8peiHpNBiIXHwaswPnAXLsLVygFwCB3A7Bh5jRkIBFWHGmNQ48AlX4xDvQNoMZlPYzjVOQDYEzWCqufMQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/win32-ia32": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.3.tgz",
+ "integrity": "sha512-qspTZOIGoXVS4DpNqUYUs9UxVb04khS1Degaw/MnfMe7goQ3lTfQ13Vw4qY/Nj0979BGvMRpAYbs/BAxEvU8ew==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@esbuild/win32-x64": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.3.tgz",
+ "integrity": "sha512-ICgUR+kPimx0vvRzf+N/7L7tVSQeE3BYY+NhHRHXS1kBuPO7z2+7ea2HbhDyZdTephgvNvKrlDDKUexuCVBVvg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@rollup/rollup-android-arm-eabi": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.0.tgz",
+ "integrity": "sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ]
+ },
+ "node_modules/@rollup/rollup-android-arm64": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.0.tgz",
+ "integrity": "sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ]
+ },
+ "node_modules/@rollup/rollup-darwin-arm64": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.0.tgz",
+ "integrity": "sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ]
+ },
+ "node_modules/@rollup/rollup-darwin-x64": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.0.tgz",
+ "integrity": "sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ]
+ },
+ "node_modules/@rollup/rollup-freebsd-arm64": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.0.tgz",
+ "integrity": "sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ]
+ },
+ "node_modules/@rollup/rollup-freebsd-x64": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.0.tgz",
+ "integrity": "sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.0.tgz",
+ "integrity": "sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-arm-musleabihf": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.0.tgz",
+ "integrity": "sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-arm64-gnu": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.0.tgz",
+ "integrity": "sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-arm64-musl": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.0.tgz",
+ "integrity": "sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-loongarch64-gnu": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.0.tgz",
+ "integrity": "sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.0.tgz",
+ "integrity": "sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-riscv64-gnu": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.0.tgz",
+ "integrity": "sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-riscv64-musl": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.0.tgz",
+ "integrity": "sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-s390x-gnu": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.0.tgz",
+ "integrity": "sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-x64-gnu": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.0.tgz",
+ "integrity": "sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-x64-musl": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.0.tgz",
+ "integrity": "sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-win32-arm64-msvc": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.0.tgz",
+ "integrity": "sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/@rollup/rollup-win32-ia32-msvc": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.0.tgz",
+ "integrity": "sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/@rollup/rollup-win32-x64-msvc": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.0.tgz",
+ "integrity": "sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/@tailwindcss/forms": {
+ "version": "0.5.10",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.10.tgz",
+ "integrity": "sha512-utI1ONF6uf/pPNO68kmN1b8rEwNXv3czukalo8VtJH8ksIkZXr3Q3VYudZLkCsDd4Wku120uF02hYK25XGPorw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "mini-svg-data-uri": "^1.2.3"
+ },
+ "peerDependencies": {
+ "tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1 || >= 4.0.0-alpha.20 || >= 4.0.0-beta.1"
+ }
+ },
+ "node_modules/@tailwindcss/node": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.4.tgz",
+ "integrity": "sha512-MT5118zaiO6x6hNA04OWInuAiP1YISXql8Z+/Y8iisV5nuhM8VXlyhRuqc2PEviPszcXI66W44bCIk500Oolhw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "enhanced-resolve": "^5.18.1",
+ "jiti": "^2.4.2",
+ "lightningcss": "1.29.2",
+ "tailwindcss": "4.1.4"
+ }
+ },
+ "node_modules/@tailwindcss/oxide": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.4.tgz",
+ "integrity": "sha512-p5wOpXyOJx7mKh5MXh5oKk+kqcz8T+bA3z/5VWWeQwFrmuBItGwz8Y2CHk/sJ+dNb9B0nYFfn0rj/cKHZyjahQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 10"
+ },
+ "optionalDependencies": {
+ "@tailwindcss/oxide-android-arm64": "4.1.4",
+ "@tailwindcss/oxide-darwin-arm64": "4.1.4",
+ "@tailwindcss/oxide-darwin-x64": "4.1.4",
+ "@tailwindcss/oxide-freebsd-x64": "4.1.4",
+ "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.4",
+ "@tailwindcss/oxide-linux-arm64-gnu": "4.1.4",
+ "@tailwindcss/oxide-linux-arm64-musl": "4.1.4",
+ "@tailwindcss/oxide-linux-x64-gnu": "4.1.4",
+ "@tailwindcss/oxide-linux-x64-musl": "4.1.4",
+ "@tailwindcss/oxide-wasm32-wasi": "4.1.4",
+ "@tailwindcss/oxide-win32-arm64-msvc": "4.1.4",
+ "@tailwindcss/oxide-win32-x64-msvc": "4.1.4"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-android-arm64": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.4.tgz",
+ "integrity": "sha512-xMMAe/SaCN/vHfQYui3fqaBDEXMu22BVwQ33veLc8ep+DNy7CWN52L+TTG9y1K397w9nkzv+Mw+mZWISiqhmlA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-darwin-arm64": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.4.tgz",
+ "integrity": "sha512-JGRj0SYFuDuAGilWFBlshcexev2hOKfNkoX+0QTksKYq2zgF9VY/vVMq9m8IObYnLna0Xlg+ytCi2FN2rOL0Sg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-darwin-x64": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.4.tgz",
+ "integrity": "sha512-sdDeLNvs3cYeWsEJ4H1DvjOzaGios4QbBTNLVLVs0XQ0V95bffT3+scptzYGPMjm7xv4+qMhCDrkHwhnUySEzA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-freebsd-x64": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.4.tgz",
+ "integrity": "sha512-VHxAqxqdghM83HslPhRsNhHo91McsxRJaEnShJOMu8mHmEj9Ig7ToHJtDukkuLWLzLboh2XSjq/0zO6wgvykNA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.4.tgz",
+ "integrity": "sha512-OTU/m/eV4gQKxy9r5acuesqaymyeSCnsx1cFto/I1WhPmi5HDxX1nkzb8KYBiwkHIGg7CTfo/AcGzoXAJBxLfg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-arm64-gnu": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.4.tgz",
+ "integrity": "sha512-hKlLNvbmUC6z5g/J4H+Zx7f7w15whSVImokLPmP6ff1QqTVE+TxUM9PGuNsjHvkvlHUtGTdDnOvGNSEUiXI1Ww==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-arm64-musl": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.4.tgz",
+ "integrity": "sha512-X3As2xhtgPTY/m5edUtddmZ8rCruvBvtxYLMw9OsZdH01L2gS2icsHRwxdU0dMItNfVmrBezueXZCHxVeeb7Aw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-x64-gnu": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.4.tgz",
+ "integrity": "sha512-2VG4DqhGaDSmYIu6C4ua2vSLXnJsb/C9liej7TuSO04NK+JJJgJucDUgmX6sn7Gw3Cs5ZJ9ZLrnI0QRDOjLfNQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-x64-musl": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.4.tgz",
+ "integrity": "sha512-v+mxVgH2kmur/X5Mdrz9m7TsoVjbdYQT0b4Z+dr+I4RvreCNXyCFELZL/DO0M1RsidZTrm6O1eMnV6zlgEzTMQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-wasm32-wasi": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.4.tgz",
+ "integrity": "sha512-2TLe9ir+9esCf6Wm+lLWTMbgklIjiF0pbmDnwmhR9MksVOq+e8aP3TSsXySnBDDvTTVd/vKu1aNttEGj3P6l8Q==",
+ "bundleDependencies": [
+ "@napi-rs/wasm-runtime",
+ "@emnapi/core",
+ "@emnapi/runtime",
+ "@tybys/wasm-util",
+ "@emnapi/wasi-threads",
+ "tslib"
+ ],
+ "cpu": [
+ "wasm32"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@emnapi/core": "^1.4.0",
+ "@emnapi/runtime": "^1.4.0",
+ "@emnapi/wasi-threads": "^1.0.1",
+ "@napi-rs/wasm-runtime": "^0.2.8",
+ "@tybys/wasm-util": "^0.9.0",
+ "tslib": "^2.8.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/core": {
+ "version": "1.4.0",
+ "dev": true,
+ "inBundle": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@emnapi/wasi-threads": "1.0.1",
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/runtime": {
+ "version": "1.4.0",
+ "dev": true,
+ "inBundle": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/wasi-threads": {
+ "version": "1.0.1",
+ "dev": true,
+ "inBundle": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@napi-rs/wasm-runtime": {
+ "version": "0.2.8",
+ "dev": true,
+ "inBundle": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@emnapi/core": "^1.4.0",
+ "@emnapi/runtime": "^1.4.0",
+ "@tybys/wasm-util": "^0.9.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@tybys/wasm-util": {
+ "version": "0.9.0",
+ "dev": true,
+ "inBundle": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/tslib": {
+ "version": "2.8.0",
+ "dev": true,
+ "inBundle": true,
+ "license": "0BSD",
+ "optional": true
+ },
+ "node_modules/@tailwindcss/oxide-win32-arm64-msvc": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.4.tgz",
+ "integrity": "sha512-VlnhfilPlO0ltxW9/BgfLI5547PYzqBMPIzRrk4W7uupgCt8z6Trw/tAj6QUtF2om+1MH281Pg+HHUJoLesmng==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-win32-x64-msvc": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.4.tgz",
+ "integrity": "sha512-+7S63t5zhYjslUGb8NcgLpFXD+Kq1F/zt5Xv5qTv7HaFTG/DHyHD9GA6ieNAxhgyA4IcKa/zy7Xx4Oad2/wuhw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@tailwindcss/typography": {
+ "version": "0.5.16",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.16.tgz",
+ "integrity": "sha512-0wDLwCVF5V3x3b1SGXPCDcdsbDHMBe+lkFzBRaHeLvNi+nrrnZ1lA18u+OTWO8iSWU2GxUOCvlXtDuqftc1oiA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "lodash.castarray": "^4.4.0",
+ "lodash.isplainobject": "^4.0.6",
+ "lodash.merge": "^4.6.2",
+ "postcss-selector-parser": "6.0.10"
+ },
+ "peerDependencies": {
+ "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1"
+ }
+ },
+ "node_modules/@tailwindcss/vite": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.1.4.tgz",
+ "integrity": "sha512-4UQeMrONbvrsXKXXp/uxmdEN5JIJ9RkH7YVzs6AMxC/KC1+Np7WZBaNIco7TEjlkthqxZbt8pU/ipD+hKjm80A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@tailwindcss/node": "4.1.4",
+ "@tailwindcss/oxide": "4.1.4",
+ "tailwindcss": "4.1.4"
+ },
+ "peerDependencies": {
+ "vite": "^5.2.0 || ^6"
+ }
+ },
+ "node_modules/@types/estree": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz",
+ "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/cssesc": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "cssesc": "bin/cssesc"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/detect-libc": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz",
+ "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/enhanced-resolve": {
+ "version": "5.18.1",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz",
+ "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "graceful-fs": "^4.2.4",
+ "tapable": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/esbuild": {
+ "version": "0.25.3",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.3.tgz",
+ "integrity": "sha512-qKA6Pvai73+M2FtftpNKRxJ78GIjmFXFxd/1DVBqGo/qNhLSfv+G12n9pNoWdytJC8U00TrViOwpjT0zgqQS8Q==",
+ "dev": true,
+ "hasInstallScript": true,
+ "license": "MIT",
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "optionalDependencies": {
+ "@esbuild/aix-ppc64": "0.25.3",
+ "@esbuild/android-arm": "0.25.3",
+ "@esbuild/android-arm64": "0.25.3",
+ "@esbuild/android-x64": "0.25.3",
+ "@esbuild/darwin-arm64": "0.25.3",
+ "@esbuild/darwin-x64": "0.25.3",
+ "@esbuild/freebsd-arm64": "0.25.3",
+ "@esbuild/freebsd-x64": "0.25.3",
+ "@esbuild/linux-arm": "0.25.3",
+ "@esbuild/linux-arm64": "0.25.3",
+ "@esbuild/linux-ia32": "0.25.3",
+ "@esbuild/linux-loong64": "0.25.3",
+ "@esbuild/linux-mips64el": "0.25.3",
+ "@esbuild/linux-ppc64": "0.25.3",
+ "@esbuild/linux-riscv64": "0.25.3",
+ "@esbuild/linux-s390x": "0.25.3",
+ "@esbuild/linux-x64": "0.25.3",
+ "@esbuild/netbsd-arm64": "0.25.3",
+ "@esbuild/netbsd-x64": "0.25.3",
+ "@esbuild/openbsd-arm64": "0.25.3",
+ "@esbuild/openbsd-x64": "0.25.3",
+ "@esbuild/sunos-x64": "0.25.3",
+ "@esbuild/win32-arm64": "0.25.3",
+ "@esbuild/win32-ia32": "0.25.3",
+ "@esbuild/win32-x64": "0.25.3"
+ }
+ },
+ "node_modules/fdir": {
+ "version": "6.4.4",
+ "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.4.tgz",
+ "integrity": "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "picomatch": "^3 || ^4"
+ },
+ "peerDependenciesMeta": {
+ "picomatch": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
+ "dev": true,
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/jiti": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz",
+ "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "jiti": "lib/jiti-cli.mjs"
+ }
+ },
+ "node_modules/laravel-vite-plugin": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/laravel-vite-plugin/-/laravel-vite-plugin-1.2.0.tgz",
+ "integrity": "sha512-R0pJ+IcTVeqEMoKz/B2Ij57QVq3sFTABiFmb06gAwFdivbOgsUtuhX6N2MGLEArajrS3U5JbberzwOe7uXHMHQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "picocolors": "^1.0.0",
+ "vite-plugin-full-reload": "^1.1.0"
+ },
+ "bin": {
+ "clean-orphaned-assets": "bin/clean.js"
+ },
+ "engines": {
+ "node": "^18.0.0 || ^20.0.0 || >=22.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^5.0.0 || ^6.0.0"
+ }
+ },
+ "node_modules/lightningcss": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.29.2.tgz",
+ "integrity": "sha512-6b6gd/RUXKaw5keVdSEtqFVdzWnU5jMxTUjA2bVcMNPLwSQ08Sv/UodBVtETLCn7k4S1Ibxwh7k68IwLZPgKaA==",
+ "dev": true,
+ "license": "MPL-2.0",
+ "dependencies": {
+ "detect-libc": "^2.0.3"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ },
+ "optionalDependencies": {
+ "lightningcss-darwin-arm64": "1.29.2",
+ "lightningcss-darwin-x64": "1.29.2",
+ "lightningcss-freebsd-x64": "1.29.2",
+ "lightningcss-linux-arm-gnueabihf": "1.29.2",
+ "lightningcss-linux-arm64-gnu": "1.29.2",
+ "lightningcss-linux-arm64-musl": "1.29.2",
+ "lightningcss-linux-x64-gnu": "1.29.2",
+ "lightningcss-linux-x64-musl": "1.29.2",
+ "lightningcss-win32-arm64-msvc": "1.29.2",
+ "lightningcss-win32-x64-msvc": "1.29.2"
+ }
+ },
+ "node_modules/lightningcss-darwin-arm64": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.29.2.tgz",
+ "integrity": "sha512-cK/eMabSViKn/PG8U/a7aCorpeKLMlK0bQeNHmdb7qUnBkNPnL+oV5DjJUo0kqWsJUapZsM4jCfYItbqBDvlcA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-darwin-x64": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.29.2.tgz",
+ "integrity": "sha512-j5qYxamyQw4kDXX5hnnCKMf3mLlHvG44f24Qyi2965/Ycz829MYqjrVg2H8BidybHBp9kom4D7DR5VqCKDXS0w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-freebsd-x64": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.29.2.tgz",
+ "integrity": "sha512-wDk7M2tM78Ii8ek9YjnY8MjV5f5JN2qNVO+/0BAGZRvXKtQrBC4/cn4ssQIpKIPP44YXw6gFdpUF+Ps+RGsCwg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-arm-gnueabihf": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.29.2.tgz",
+ "integrity": "sha512-IRUrOrAF2Z+KExdExe3Rz7NSTuuJ2HvCGlMKoquK5pjvo2JY4Rybr+NrKnq0U0hZnx5AnGsuFHjGnNT14w26sg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-arm64-gnu": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.29.2.tgz",
+ "integrity": "sha512-KKCpOlmhdjvUTX/mBuaKemp0oeDIBBLFiU5Fnqxh1/DZ4JPZi4evEH7TKoSBFOSOV3J7iEmmBaw/8dpiUvRKlQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-arm64-musl": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.29.2.tgz",
+ "integrity": "sha512-Q64eM1bPlOOUgxFmoPUefqzY1yV3ctFPE6d/Vt7WzLW4rKTv7MyYNky+FWxRpLkNASTnKQUaiMJ87zNODIrrKQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-x64-gnu": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.29.2.tgz",
+ "integrity": "sha512-0v6idDCPG6epLXtBH/RPkHvYx74CVziHo6TMYga8O2EiQApnUPZsbR9nFNrg2cgBzk1AYqEd95TlrsL7nYABQg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-x64-musl": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.29.2.tgz",
+ "integrity": "sha512-rMpz2yawkgGT8RULc5S4WiZopVMOFWjiItBT7aSfDX4NQav6M44rhn5hjtkKzB+wMTRlLLqxkeYEtQ3dd9696w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-win32-arm64-msvc": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.29.2.tgz",
+ "integrity": "sha512-nL7zRW6evGQqYVu/bKGK+zShyz8OVzsCotFgc7judbt6wnB2KbiKKJwBE4SGoDBQ1O94RjW4asrCjQL4i8Fhbw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-win32-x64-msvc": {
+ "version": "1.29.2",
+ "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.29.2.tgz",
+ "integrity": "sha512-EdIUW3B2vLuHmv7urfzMI/h2fmlnOQBk1xlsDxkN1tCWKjNFjfLhGxYk8C8mzpSfr+A6jFFIi8fU6LbQGsRWjA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lodash.castarray": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz",
+ "integrity": "sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/lodash.isplainobject": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
+ "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/lodash.merge": {
+ "version": "4.6.2",
+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/mini-svg-data-uri": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz",
+ "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "mini-svg-data-uri": "cli.js"
+ }
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.11",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
+ "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/picocolors": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/picomatch": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
+ "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/postcss": {
+ "version": "8.5.3",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz",
+ "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/postcss"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "nanoid": "^3.3.8",
+ "picocolors": "^1.1.1",
+ "source-map-js": "^1.2.1"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/postcss-selector-parser": {
+ "version": "6.0.10",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz",
+ "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/rollup": {
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.40.0.tgz",
+ "integrity": "sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/estree": "1.0.7"
+ },
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=18.0.0",
+ "npm": ">=8.0.0"
+ },
+ "optionalDependencies": {
+ "@rollup/rollup-android-arm-eabi": "4.40.0",
+ "@rollup/rollup-android-arm64": "4.40.0",
+ "@rollup/rollup-darwin-arm64": "4.40.0",
+ "@rollup/rollup-darwin-x64": "4.40.0",
+ "@rollup/rollup-freebsd-arm64": "4.40.0",
+ "@rollup/rollup-freebsd-x64": "4.40.0",
+ "@rollup/rollup-linux-arm-gnueabihf": "4.40.0",
+ "@rollup/rollup-linux-arm-musleabihf": "4.40.0",
+ "@rollup/rollup-linux-arm64-gnu": "4.40.0",
+ "@rollup/rollup-linux-arm64-musl": "4.40.0",
+ "@rollup/rollup-linux-loongarch64-gnu": "4.40.0",
+ "@rollup/rollup-linux-powerpc64le-gnu": "4.40.0",
+ "@rollup/rollup-linux-riscv64-gnu": "4.40.0",
+ "@rollup/rollup-linux-riscv64-musl": "4.40.0",
+ "@rollup/rollup-linux-s390x-gnu": "4.40.0",
+ "@rollup/rollup-linux-x64-gnu": "4.40.0",
+ "@rollup/rollup-linux-x64-musl": "4.40.0",
+ "@rollup/rollup-win32-arm64-msvc": "4.40.0",
+ "@rollup/rollup-win32-ia32-msvc": "4.40.0",
+ "@rollup/rollup-win32-x64-msvc": "4.40.0",
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
+ "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/tailwindcss": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.4.tgz",
+ "integrity": "sha512-1ZIUqtPITFbv/DxRmDr5/agPqJwF69d24m9qmM1939TJehgY539CtzeZRjbLt5G6fSy/7YqqYsfvoTEw9xUI2A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/tapable": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
+ "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/tinyglobby": {
+ "version": "0.2.13",
+ "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz",
+ "integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "fdir": "^6.4.4",
+ "picomatch": "^4.0.2"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/SuperchupuDev"
+ }
+ },
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/vite": {
+ "version": "6.3.4",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.4.tgz",
+ "integrity": "sha512-BiReIiMS2fyFqbqNT/Qqt4CVITDU9M9vE+DKcVAsB+ZV0wvTKd+3hMbkpxz1b+NmEDMegpVbisKiAZOnvO92Sw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "esbuild": "^0.25.0",
+ "fdir": "^6.4.4",
+ "picomatch": "^4.0.2",
+ "postcss": "^8.5.3",
+ "rollup": "^4.34.9",
+ "tinyglobby": "^0.2.13"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^18.0.0 || ^20.0.0 || >=22.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/vitejs/vite?sponsor=1"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.3"
+ },
+ "peerDependencies": {
+ "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0",
+ "jiti": ">=1.21.0",
+ "less": "*",
+ "lightningcss": "^1.21.0",
+ "sass": "*",
+ "sass-embedded": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.16.0",
+ "tsx": "^4.8.1",
+ "yaml": "^2.4.2"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "jiti": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "lightningcss": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "sass-embedded": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ },
+ "tsx": {
+ "optional": true
+ },
+ "yaml": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vite-plugin-full-reload": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/vite-plugin-full-reload/-/vite-plugin-full-reload-1.2.0.tgz",
+ "integrity": "sha512-kz18NW79x0IHbxRSHm0jttP4zoO9P9gXh+n6UTwlNKnviTTEpOlum6oS9SmecrTtSr+muHEn5TUuC75UovQzcA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "picocolors": "^1.0.0",
+ "picomatch": "^2.3.1"
+ }
+ },
+ "node_modules/vite-plugin-full-reload/node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
new file mode 100644
index 000000000..0a2bb3e06
--- /dev/null
+++ b/package.json
@@ -0,0 +1,18 @@
+{
+ "private": true,
+ "type": "module",
+ "scripts": {
+ "dev": "node vite.js dev",
+ "build": "node vite.js",
+ "dev:admin": "npx tailwindcss --input ./resources/css/filament/admin/theme.css --output ./public/css/filament/admin/theme.css --config ./resources/css/filament/admin/tailwind.config.js --watch",
+ "build:admin": "npx tailwindcss --input ./resources/css/filament/admin/theme.css --output ./public/css/filament/admin/theme.css --config ./resources/css/filament/admin/tailwind.config.js --minify"
+ },
+ "devDependencies": {
+ "@tailwindcss/forms": "^0.5.10",
+ "@tailwindcss/typography": "^0.5.16",
+ "@tailwindcss/vite": "^4.0.6",
+ "laravel-vite-plugin": "^1.0",
+ "tailwindcss": "^4.0.6",
+ "vite": "^6.3"
+ }
+}
diff --git a/pint.json b/pint.json
new file mode 100644
index 000000000..ce295d764
--- /dev/null
+++ b/pint.json
@@ -0,0 +1,9 @@
+{
+ "preset": "laravel",
+ "rules": {
+ "concat_space": {
+ "spacing": "one"
+ },
+ "not_operator_with_successor_space": false
+ }
+}
\ No newline at end of file
diff --git a/public/.htaccess b/public/.htaccess
new file mode 100644
index 000000000..3aec5e27e
--- /dev/null
+++ b/public/.htaccess
@@ -0,0 +1,21 @@
+
+
+ Options -MultiViews -Indexes
+
+
+ RewriteEngine On
+
+ # Handle Authorization Header
+ RewriteCond %{HTTP:Authorization} .
+ RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
+
+ # Redirect Trailing Slashes If Not A Folder...
+ RewriteCond %{REQUEST_FILENAME} !-d
+ RewriteCond %{REQUEST_URI} (.+)/$
+ RewriteRule ^ %1 [L,R=301]
+
+ # Send Requests To Front Controller...
+ RewriteCond %{REQUEST_FILENAME} !-d
+ RewriteCond %{REQUEST_FILENAME} !-f
+ RewriteRule ^ index.php [L]
+
diff --git a/public/assets/images/bg.webp b/public/assets/images/bg.webp
new file mode 100644
index 000000000..73b3808e6
Binary files /dev/null and b/public/assets/images/bg.webp differ
diff --git a/public/assets/images/bgalt.jpg b/public/assets/images/bgalt.jpg
new file mode 100644
index 000000000..4ce3035db
Binary files /dev/null and b/public/assets/images/bgalt.jpg differ
diff --git a/public/assets/images/bgalt.webp b/public/assets/images/bgalt.webp
new file mode 100644
index 000000000..92b07271d
Binary files /dev/null and b/public/assets/images/bgalt.webp differ
diff --git a/public/assets/images/bgcompress.webp b/public/assets/images/bgcompress.webp
new file mode 100644
index 000000000..07245d7e2
Binary files /dev/null and b/public/assets/images/bgcompress.webp differ
diff --git a/public/assets/images/bgptools.png b/public/assets/images/bgptools.png
new file mode 100644
index 000000000..e1360a307
Binary files /dev/null and b/public/assets/images/bgptools.png differ
diff --git a/public/assets/images/discord-dark.svg b/public/assets/images/discord-dark.svg
new file mode 100644
index 000000000..5e8158a80
--- /dev/null
+++ b/public/assets/images/discord-dark.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/public/assets/images/discord-light.svg b/public/assets/images/discord-light.svg
new file mode 100644
index 000000000..488253a39
--- /dev/null
+++ b/public/assets/images/discord-light.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/public/assets/images/dns.jpeg b/public/assets/images/dns.jpeg
new file mode 100644
index 000000000..afa812748
Binary files /dev/null and b/public/assets/images/dns.jpeg differ
diff --git a/public/assets/images/github-dark.svg b/public/assets/images/github-dark.svg
new file mode 100644
index 000000000..d5e649185
--- /dev/null
+++ b/public/assets/images/github-dark.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/public/assets/images/github-light.svg b/public/assets/images/github-light.svg
new file mode 100644
index 000000000..37fa923df
--- /dev/null
+++ b/public/assets/images/github-light.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/public/assets/images/google-dark.svg b/public/assets/images/google-dark.svg
new file mode 100644
index 000000000..e6426d046
--- /dev/null
+++ b/public/assets/images/google-dark.svg
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/public/assets/images/google-light.svg b/public/assets/images/google-light.svg
new file mode 100644
index 000000000..e6426d046
--- /dev/null
+++ b/public/assets/images/google-light.svg
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/public/assets/images/logo.png b/public/assets/images/logo.png
new file mode 100644
index 000000000..962371bf6
Binary files /dev/null and b/public/assets/images/logo.png differ
diff --git a/public/assets/images/main.png b/public/assets/images/main.png
new file mode 100644
index 000000000..cb69668c9
Binary files /dev/null and b/public/assets/images/main.png differ
diff --git a/public/assets/images/manrs.png b/public/assets/images/manrs.png
new file mode 100644
index 000000000..b6f776286
Binary files /dev/null and b/public/assets/images/manrs.png differ
diff --git a/public/assets/images/paymenter.svg b/public/assets/images/paymenter.svg
new file mode 100644
index 000000000..c7943a481
--- /dev/null
+++ b/public/assets/images/paymenter.svg
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/public/assets/images/peerdb.png b/public/assets/images/peerdb.png
new file mode 100644
index 000000000..fe567e796
Binary files /dev/null and b/public/assets/images/peerdb.png differ
diff --git a/public/assets/images/ripencc.png b/public/assets/images/ripencc.png
new file mode 100644
index 000000000..8d47aff9e
Binary files /dev/null and b/public/assets/images/ripencc.png differ
diff --git a/public/assets/images/status.jpg b/public/assets/images/status.jpg
new file mode 100644
index 000000000..2ab155d00
Binary files /dev/null and b/public/assets/images/status.jpg differ
diff --git a/public/assets/images/windows.jpg b/public/assets/images/windows.jpg
new file mode 100644
index 000000000..4973f6417
Binary files /dev/null and b/public/assets/images/windows.jpg differ
diff --git a/public/assets/os/ARL.png b/public/assets/os/ARL.png
new file mode 100644
index 000000000..52863df87
Binary files /dev/null and b/public/assets/os/ARL.png differ
diff --git a/public/assets/os/BSD.png b/public/assets/os/BSD.png
new file mode 100644
index 000000000..3df444f9a
Binary files /dev/null and b/public/assets/os/BSD.png differ
diff --git a/public/assets/os/CES.png b/public/assets/os/CES.png
new file mode 100644
index 000000000..32dd1d6fa
Binary files /dev/null and b/public/assets/os/CES.png differ
diff --git a/public/assets/os/DEB.png b/public/assets/os/DEB.png
new file mode 100644
index 000000000..0bcedc70f
Binary files /dev/null and b/public/assets/os/DEB.png differ
diff --git a/public/assets/os/DFB.png b/public/assets/os/DFB.png
new file mode 100644
index 000000000..508d8c641
Binary files /dev/null and b/public/assets/os/DFB.png differ
diff --git a/public/assets/os/FED.png b/public/assets/os/FED.png
new file mode 100644
index 000000000..568881914
Binary files /dev/null and b/public/assets/os/FED.png differ
diff --git a/public/assets/os/GNT.png b/public/assets/os/GNT.png
new file mode 100644
index 000000000..f0cb9d591
Binary files /dev/null and b/public/assets/os/GNT.png differ
diff --git a/public/assets/os/LIN.png b/public/assets/os/LIN.png
new file mode 100644
index 000000000..a3542fb9b
Binary files /dev/null and b/public/assets/os/LIN.png differ
diff --git a/public/assets/os/NBS.png b/public/assets/os/NBS.png
new file mode 100644
index 000000000..51439bb6b
Binary files /dev/null and b/public/assets/os/NBS.png differ
diff --git a/public/assets/os/OBS.png b/public/assets/os/OBS.png
new file mode 100644
index 000000000..da2526bf6
Binary files /dev/null and b/public/assets/os/OBS.png differ
diff --git a/public/assets/os/RHT.png b/public/assets/os/RHT.png
new file mode 100644
index 000000000..6909ae918
Binary files /dev/null and b/public/assets/os/RHT.png differ
diff --git a/public/assets/os/SSE.png b/public/assets/os/SSE.png
new file mode 100644
index 000000000..250ade67d
Binary files /dev/null and b/public/assets/os/SSE.png differ
diff --git a/public/assets/os/UBT.png b/public/assets/os/UBT.png
new file mode 100644
index 000000000..03d4438ad
Binary files /dev/null and b/public/assets/os/UBT.png differ
diff --git a/public/assets/os/WIN.png b/public/assets/os/WIN.png
new file mode 100644
index 000000000..df1d22534
Binary files /dev/null and b/public/assets/os/WIN.png differ
diff --git a/public/assets/os/almalinux.svg b/public/assets/os/almalinux.svg
new file mode 100644
index 000000000..5a6de1878
--- /dev/null
+++ b/public/assets/os/almalinux.svg
@@ -0,0 +1,15 @@
+
+
+
+
+
diff --git a/public/assets/os/alpine.svg b/public/assets/os/alpine.svg
new file mode 100644
index 000000000..065823c5e
--- /dev/null
+++ b/public/assets/os/alpine.svg
@@ -0,0 +1,31 @@
+
+
image/svg+xml
\ No newline at end of file
diff --git a/public/assets/os/amazonlinux.png b/public/assets/os/amazonlinux.png
new file mode 100644
index 000000000..2a814be4d
Binary files /dev/null and b/public/assets/os/amazonlinux.png differ
diff --git a/public/assets/os/archlinux.svg b/public/assets/os/archlinux.svg
new file mode 100644
index 000000000..ab7f4cc5d
--- /dev/null
+++ b/public/assets/os/archlinux.svg
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
diff --git a/public/assets/os/centos.svg b/public/assets/os/centos.svg
new file mode 100644
index 000000000..a52e4875c
--- /dev/null
+++ b/public/assets/os/centos.svg
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/public/assets/os/debian.svg b/public/assets/os/debian.svg
new file mode 100644
index 000000000..c2898488f
--- /dev/null
+++ b/public/assets/os/debian.svg
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
diff --git a/public/assets/os/fedora.svg b/public/assets/os/fedora.svg
new file mode 100644
index 000000000..d3afbd1d6
--- /dev/null
+++ b/public/assets/os/fedora.svg
@@ -0,0 +1,28 @@
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
diff --git a/public/assets/os/freebsd.svg b/public/assets/os/freebsd.svg
new file mode 100644
index 000000000..a4fa32307
--- /dev/null
+++ b/public/assets/os/freebsd.svg
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
diff --git a/public/assets/os/gentoo.svg b/public/assets/os/gentoo.svg
new file mode 100644
index 000000000..c01685290
--- /dev/null
+++ b/public/assets/os/gentoo.svg
@@ -0,0 +1,75 @@
+
+
+ Gentoo Logo Dark v1.0
+
+
+
+
+ image/svg+xml
+
+ Gentoo Logo Dark v1.0
+ 2011-06-03
+
+
+ Sebastian Pipping <sping@gentoo.org>
+
+
+
+
+ Lennart Andre Rolland, Gentoo Foundation Inc.
+
+
+
+
+ Gentoo Foundation Inc.
+
+
+
+
+ Lennart Andre Rolland for original vector version, idea for dark version and specific RGB value by unknown person
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/public/assets/os/openbsd.svg b/public/assets/os/openbsd.svg
new file mode 100644
index 000000000..7c4f557ec
--- /dev/null
+++ b/public/assets/os/openbsd.svg
@@ -0,0 +1 @@
+
diff --git a/public/assets/os/opensuse.svg b/public/assets/os/opensuse.svg
new file mode 100644
index 000000000..3b9b5b265
--- /dev/null
+++ b/public/assets/os/opensuse.svg
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/public/assets/os/proxmox.png b/public/assets/os/proxmox.png
new file mode 100644
index 000000000..0e4452ceb
Binary files /dev/null and b/public/assets/os/proxmox.png differ
diff --git a/public/assets/os/redhat.svg b/public/assets/os/redhat.svg
new file mode 100644
index 000000000..649f58527
--- /dev/null
+++ b/public/assets/os/redhat.svg
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/public/assets/os/rocky-linux.svg b/public/assets/os/rocky-linux.svg
new file mode 100644
index 000000000..a7fbecc7c
--- /dev/null
+++ b/public/assets/os/rocky-linux.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/public/assets/os/tux.svg b/public/assets/os/tux.svg
new file mode 100644
index 000000000..0051619d9
--- /dev/null
+++ b/public/assets/os/tux.svg
@@ -0,0 +1 @@
+
diff --git a/public/assets/os/ubuntu.svg b/public/assets/os/ubuntu.svg
new file mode 100644
index 000000000..84dfb51a8
--- /dev/null
+++ b/public/assets/os/ubuntu.svg
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/public/cookiebanner/assets/app-a07Nb_RE.css b/public/cookiebanner/assets/app-a07Nb_RE.css
new file mode 100644
index 000000000..359f00615
--- /dev/null
+++ b/public/cookiebanner/assets/app-a07Nb_RE.css
@@ -0,0 +1 @@
+/*! tailwindcss v4.1.4 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-text-shadow-color:initial;--tw-text-shadow-alpha:100%;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"Nunito",ui-sans-serif,system-ui,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-orange-50:oklch(98% .016 73.684);--color-orange-200:oklch(90.1% .076 70.697);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-orange-900:oklch(40.8% .123 38.172);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-900:oklch(42.1% .095 57.708);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-indigo-800:oklch(39.8% .195 277.366);--color-indigo-900:oklch(35.9% .144 278.697);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-300:oklch(82.7% .119 306.383);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-purple-800:oklch(43.8% .218 303.724);--color-purple-900:oklch(38.1% .176 304.987);--color-pink-50:oklch(97.1% .014 343.198);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-500:oklch(65.6% .241 354.308);--color-pink-600:oklch(59.2% .249 .584);--color-pink-900:oklch(40.8% .153 2.432);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-gray-950:oklch(13% .028 261.692);--color-neutral-300:oklch(87% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--drop-shadow-lg:0 4px 4px #00000026;--drop-shadow-2xl:0 25px 25px #00000026;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur-xs:4px;--blur-sm:8px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:hsl(var(--color-primary));--color-secondary:hsl(var(--color-secondary));--color-neutral:hsl(var(--color-neutral));--color-base:hsl(var(--color-base));--color-muted:hsl(var(--color-muted));--color-inverted:hsl(var(--color-inverted));--color-success:hsl(var(--color-success));--color-error:hsl(var(--color-error));--color-warning:hsl(var(--color-warning));--color-inactive:hsl(var(--color-inactive));--color-info:hsl(var(--color-info));--color-background:hsl(var(--color-background));--color-background-secondary:hsl(var(--color-background-secondary))}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:after,:before,::backdrop{border-color:var(--color-gray-200,currentColor)}::file-selector-button{border-color:var(--color-gray-200,currentColor)}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.start-1{inset-inline-start:calc(var(--spacing)*1)}.-top-1{top:calc(var(--spacing)*-1)}.-top-2{top:calc(var(--spacing)*-2)}.-top-8{top:calc(var(--spacing)*-8)}.top-0{top:calc(var(--spacing)*0)}.top-1{top:calc(var(--spacing)*1)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.top-4{top:calc(var(--spacing)*4)}.top-6{top:calc(var(--spacing)*6)}.top-8{top:calc(var(--spacing)*8)}.top-16{top:calc(var(--spacing)*16)}.top-20{top:calc(var(--spacing)*20)}.top-\[25\%\]{top:25%}.top-\[30\%\]{top:30%}.top-\[50\%\]{top:50%}.top-full{top:100%}.-right-0\.5{right:calc(var(--spacing)*-.5)}.-right-1{right:calc(var(--spacing)*-1)}.-right-2{right:calc(var(--spacing)*-2)}.-right-10{right:calc(var(--spacing)*-10)}.-right-12{right:calc(var(--spacing)*-12)}.right-0{right:calc(var(--spacing)*0)}.right-2{right:calc(var(--spacing)*2)}.right-2\.5{right:calc(var(--spacing)*2.5)}.right-3{right:calc(var(--spacing)*3)}.right-4{right:calc(var(--spacing)*4)}.right-\[15\%\]{right:15%}.right-\[30\%\]{right:30%}.right-full{right:100%}.-bottom-0\.5{bottom:calc(var(--spacing)*-.5)}.-bottom-1{bottom:calc(var(--spacing)*-1)}.-bottom-24{bottom:calc(var(--spacing)*-24)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-2{bottom:calc(var(--spacing)*2)}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-5{bottom:calc(var(--spacing)*5)}.bottom-\[15\%\]{bottom:15%}.bottom-full{bottom:100%}.-left-10{left:calc(var(--spacing)*-10)}.-left-12{left:calc(var(--spacing)*-12)}.-left-24{left:calc(var(--spacing)*-24)}.left-0{left:calc(var(--spacing)*0)}.left-1{left:calc(var(--spacing)*1)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-2\.5{left:calc(var(--spacing)*2.5)}.left-3{left:calc(var(--spacing)*3)}.left-4{left:calc(var(--spacing)*4)}.left-6{left:calc(var(--spacing)*6)}.left-\[25\%\]{left:25%}.left-\[50\%\]{left:50%}.left-full{left:100%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[60\]{z-index:60}.z-\[99\]{z-index:99}.z-\[9999\]{z-index:9999}.z-\[10000\]{z-index:10000}.order-1{order:1}.order-2{order:2}.order-first{order:-9999}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-span-9{grid-column:span 9/span 9}.col-span-full{grid-column:1/-1}.float-right{float:right}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.-mx-2{margin-inline:calc(var(--spacing)*-2)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3{margin-inline:calc(var(--spacing)*3)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-6{margin-inline:calc(var(--spacing)*6)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.my-2{margin-block:calc(var(--spacing)*2)}.my-3{margin-block:calc(var(--spacing)*3)}.my-4{margin-block:calc(var(--spacing)*4)}.my-5{margin-block:calc(var(--spacing)*5)}.my-6{margin-block:calc(var(--spacing)*6)}.my-8{margin-block:calc(var(--spacing)*8)}.ms-auto{margin-inline-start:auto}.me-2{margin-inline-end:calc(var(--spacing)*2)}.me-auto{margin-inline-end:auto}.prose{color:var(--tw-prose-body);--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:NaN NaN NaN;--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:255 255 255;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);max-width:65ch;font-size:1rem;line-height:1.75}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%),0 3px rgb(var(--tw-prose-kbd-shadows)/10%);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.71429}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.888889em;margin-bottom:.888889em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em;padding-inline-start:1.11111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:.8em;font-size:2.14286em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:.8em;font-size:1.42857em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.55556em;margin-bottom:.444444em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.42857em;margin-bottom:.571429em;line-height:1.42857}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.142857em;padding-inline-end:.357143em;padding-bottom:.142857em;border-radius:.3125rem;padding-inline-start:.357143em;font-size:.857143em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;border-radius:.25rem;margin-top:1.66667em;margin-bottom:1.66667em;padding-inline-start:1em;font-size:.857143em;line-height:1.66667}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em;padding-inline-start:1.57143em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;margin-bottom:.285714em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.428571em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;padding-inline-start:1.57143em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.85714em;margin-bottom:2.85714em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.666667em;font-size:.857143em;line-height:1.33333}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.\!mt-0{margin-top:calc(var(--spacing)*0)!important}.-mt-16{margin-top:calc(var(--spacing)*-16)}.-mt-20{margin-top:calc(var(--spacing)*-20)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-10{margin-top:calc(var(--spacing)*10)}.mt-12{margin-top:calc(var(--spacing)*12)}.mt-14{margin-top:calc(var(--spacing)*14)}.mt-16{margin-top:calc(var(--spacing)*16)}.mt-24{margin-top:calc(var(--spacing)*24)}.mt-44{margin-top:calc(var(--spacing)*44)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-1\.5{margin-right:calc(var(--spacing)*1.5)}.mr-2{margin-right:calc(var(--spacing)*2)}.mr-3{margin-right:calc(var(--spacing)*3)}.mr-4{margin-right:calc(var(--spacing)*4)}.mr-6{margin-right:calc(var(--spacing)*6)}.mr-10{margin-right:calc(var(--spacing)*10)}.mr-12{margin-right:calc(var(--spacing)*12)}.mr-auto{margin-right:auto}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-9{margin-bottom:calc(var(--spacing)*9)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.mb-20{margin-bottom:calc(var(--spacing)*20)}.-ml-1{margin-left:calc(var(--spacing)*-1)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-6{margin-left:calc(var(--spacing)*6)}.ml-7{margin-left:calc(var(--spacing)*7)}.ml-8{margin-left:calc(var(--spacing)*8)}.ml-10{margin-left:calc(var(--spacing)*10)}.ml-12{margin-left:calc(var(--spacing)*12)}.ml-14{margin-left:calc(var(--spacing)*14)}.ml-auto{margin-left:auto}.form-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;vertical-align:middle;-webkit-user-select:none;user-select:none;color:#155dfc;--tw-shadow:0 0 #0000;background-color:#fff;background-origin:border-box;border-width:1px;border-color:#6a7282;border-radius:0;flex-shrink:0;width:1rem;height:1rem;padding:0;display:inline-block}.form-checkbox:focus{outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:oklch(54.6% .245 262.881);--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline:2px solid #0000}.form-checkbox:checked{background-color:currentColor;background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#0000}@media (forced-colors:active){.form-checkbox:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}.form-checkbox:checked:hover,.form-checkbox:checked:focus{background-color:currentColor;border-color:#0000}.form-checkbox:indeterminate{background-color:currentColor;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#0000}@media (forced-colors:active){.form-checkbox:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}.form-checkbox:indeterminate:hover,.form-checkbox:indeterminate:focus{background-color:currentColor;border-color:#0000}.form-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;vertical-align:middle;-webkit-user-select:none;user-select:none;color:#155dfc;--tw-shadow:0 0 #0000;background-color:#fff;background-origin:border-box;border-width:1px;border-color:#6a7282;border-radius:100%;flex-shrink:0;width:1rem;height:1rem;padding:0;display:inline-block}.form-radio:focus{outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:oklch(54.6% .245 262.881);--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline:2px solid #0000}.form-radio:checked{background-color:currentColor;background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#0000}@media (forced-colors:active){.form-radio:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}.form-radio:checked:hover,.form-radio:checked:focus{background-color:currentColor;border-color:#0000}.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;--tw-shadow:0 0 #0000;background-color:#fff;border-width:1px;border-color:#6a7282;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem}.form-input:focus{outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:oklch(54.6% .245 262.881);--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#155dfc;outline:2px solid #0000}.form-input::placeholder{color:#6a7282;opacity:1}.form-input::-webkit-datetime-edit-fields-wrapper{padding:0}.form-input::-webkit-date-and-time-value{min-height:1.5em}.form-input::-webkit-date-and-time-value{text-align:inherit}.form-input::-webkit-datetime-edit{display:inline-flex}.form-input::-webkit-datetime-edit{padding-top:0;padding-bottom:0}.form-input::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}.form-input::-webkit-datetime-edit-month-field{padding-top:0;padding-bottom:0}.form-input::-webkit-datetime-edit-day-field{padding-top:0;padding-bottom:0}.form-input::-webkit-datetime-edit-hour-field{padding-top:0;padding-bottom:0}.form-input::-webkit-datetime-edit-minute-field{padding-top:0;padding-bottom:0}.form-input::-webkit-datetime-edit-second-field{padding-top:0;padding-bottom:0}.form-input::-webkit-datetime-edit-millisecond-field{padding-top:0;padding-bottom:0}.form-input::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.size-1{width:calc(var(--spacing)*1);height:calc(var(--spacing)*1)}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-5{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-7{width:calc(var(--spacing)*7);height:calc(var(--spacing)*7)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.size-12{width:calc(var(--spacing)*12);height:calc(var(--spacing)*12)}.size-14{width:calc(var(--spacing)*14);height:calc(var(--spacing)*14)}.size-16{width:calc(var(--spacing)*16);height:calc(var(--spacing)*16)}.h-0\.5{height:calc(var(--spacing)*.5)}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-3\/4{height:75%}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9\/10{height:90%}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-14{height:calc(var(--spacing)*14)}.h-16{height:calc(var(--spacing)*16)}.h-20{height:calc(var(--spacing)*20)}.h-24{height:calc(var(--spacing)*24)}.h-28{height:calc(var(--spacing)*28)}.h-32{height:calc(var(--spacing)*32)}.h-36{height:calc(var(--spacing)*36)}.h-40{height:calc(var(--spacing)*40)}.h-48{height:calc(var(--spacing)*48)}.h-56{height:calc(var(--spacing)*56)}.h-64{height:calc(var(--spacing)*64)}.h-72{height:calc(var(--spacing)*72)}.h-96{height:calc(var(--spacing)*96)}.h-\[1\.75rem\]{height:1.75rem}.h-\[150px\]{height:150px}.h-\[300px\]{height:300px}.h-\[790\]{height:790px}.h-\[calc\(100vh-2rem\)\]{height:calc(100vh - 2rem)}.h-auto{height:auto}.h-fit{height:fit-content}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-28{max-height:calc(var(--spacing)*28)}.max-h-32{max-height:calc(var(--spacing)*32)}.max-h-48{max-height:calc(var(--spacing)*48)}.max-h-60{max-height:calc(var(--spacing)*60)}.max-h-64{max-height:calc(var(--spacing)*64)}.max-h-96{max-height:calc(var(--spacing)*96)}.max-h-\[60vh\]{max-height:60vh}.max-h-screen{max-height:100vh}.\!min-h-0{min-height:calc(var(--spacing)*0)!important}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[7rem\]{min-height:7rem}.min-h-\[38px\]{min-height:38px}.min-h-\[100vh\]{min-height:100vh}.min-h-\[790\]{min-height:790px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.\!w-14{width:calc(var(--spacing)*14)!important}.\!w-auto{width:auto!important}.\!w-fit{width:fit-content!important}.w-1{width:calc(var(--spacing)*1)}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-14{width:calc(var(--spacing)*14)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-32{width:calc(var(--spacing)*32)}.w-40{width:calc(var(--spacing)*40)}.w-48{width:calc(var(--spacing)*48)}.w-56{width:calc(var(--spacing)*56)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-80{width:calc(var(--spacing)*80)}.w-96{width:calc(var(--spacing)*96)}.w-\[150px\]{width:150px}.w-\[160px\]{width:160px}.w-\[300px\]{width:300px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-40{max-width:calc(var(--spacing)*40)}.max-w-64{max-width:calc(var(--spacing)*64)}.max-w-\[65\%\]{max-width:65%}.max-w-\[75\%\]{max-width:75%}.max-w-\[80\%\]{max-width:80%}.max-w-\[120px\]{max-width:120px}.max-w-\[180px\]{max-width:180px}.max-w-\[200px\]{max-width:200px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.\!min-w-0{min-width:calc(var(--spacing)*0)!important}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\[1\.5rem\]{min-width:1.5rem}.min-w-\[140px\]{min-width:140px}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-auto{flex:auto}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-2{--tw-translate-y:calc(var(--spacing)*-2);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-0{--tw-translate-y:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-4{--tw-translate-y:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-full{--tw-translate-y:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-50{--tw-scale-x:50%;--tw-scale-y:50%;--tw-scale-z:50%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.-rotate-45{rotate:-45deg}.-rotate-90{rotate:-90deg}.-rotate-180{rotate:-180deg}.rotate-0{rotate:none}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform\!{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)!important}.animate-bounce{animation:var(--animate-bounce)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;--tw-shadow:0 0 #0000;-webkit-print-color-adjust:exact;print-color-adjust:exact;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='oklch(55.1%25 0.027 264.364)' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border-width:1px;border-color:#6a7282;border-radius:0;padding:.5rem 2.5rem .5rem .75rem;font-size:1rem;line-height:1.5rem}.form-select:focus{outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:oklch(54.6% .245 262.881);--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#155dfc;outline:2px solid #0000}.form-select:where([size]:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;-webkit-print-color-adjust:unset;print-color-adjust:unset;padding-right:.75rem}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(160px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}.gap-12{gap:calc(var(--spacing)*12)}.gap-16{gap:calc(var(--spacing)*16)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing)*2)}.gap-x-3{column-gap:calc(var(--spacing)*3)}.gap-x-4{column-gap:calc(var(--spacing)*4)}.gap-x-6{column-gap:calc(var(--spacing)*6)}:where(.-space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*-1)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*-1)*calc(1 - var(--tw-space-x-reverse)))}:where(.-space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*-2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*-2)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*1)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-3>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*3)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*4)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-6>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*6)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-8>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*8)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:calc(var(--spacing)*1)}.gap-y-2{row-gap:calc(var(--spacing)*2)}.gap-y-7{row-gap:calc(var(--spacing)*7)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)}:where(.divide-gray-700>:not(:last-child)){border-color:var(--color-gray-700)}:where(.divide-gray-800>:not(:last-child)){border-color:var(--color-gray-800)}:where(.divide-neutral\/10>:not(:last-child)){border-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){:where(.divide-neutral\/10>:not(:last-child)){border-color:color-mix(in oklab,hsl(var(--color-neutral))10%,transparent)}}:where(.divide-neutral\/50>:not(:last-child)){border-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){:where(.divide-neutral\/50>:not(:last-child)){border-color:color-mix(in oklab,hsl(var(--color-neutral))50%,transparent)}}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-l-lg{border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.rounded-tl{border-top-left-radius:.25rem}.rounded-r-lg{border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.rounded-b-md{border-bottom-right-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-3{border-style:var(--tw-border-style);border-width:3px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-2{border-right-style:var(--tw-border-style);border-right-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.\!border-yellow-600{border-color:var(--color-yellow-600)!important}.border-\[\#4667FF\]\/20{border-color:#4667ff33}.border-background{border-color:hsl(var(--color-background))}.border-background-secondary{border-color:hsl(var(--color-background-secondary))}.border-base{border-color:hsl(var(--color-base))}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-300{border-color:var(--color-blue-300)}.border-blue-500{border-color:var(--color-blue-500)}.border-blue-500\/20{border-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.border-blue-500\/20{border-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.border-blue-500\/30{border-color:#3080ff4d}@supports (color:color-mix(in lab,red,red)){.border-blue-500\/30{border-color:color-mix(in oklab,var(--color-blue-500)30%,transparent)}}.border-blue-600{border-color:var(--color-blue-600)}.border-error\/30{border-color:color-mix(in srgb,hsl(hsl(var(--color-error)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-error\/30{border-color:color-mix(in oklab,hsl(var(--color-error))30%,transparent)}}.border-error\/50{border-color:color-mix(in srgb,hsl(hsl(var(--color-error)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-error\/50{border-color:color-mix(in oklab,hsl(var(--color-error))50%,transparent)}}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-100\/50{border-color:#f3f4f680}@supports (color:color-mix(in lab,red,red)){.border-gray-100\/50{border-color:color-mix(in oklab,var(--color-gray-100)50%,transparent)}}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-400{border-color:var(--color-gray-400)}.border-gray-500{border-color:var(--color-gray-500)}.border-gray-600{border-color:var(--color-gray-600)}.border-gray-600\/30{border-color:#4a55654d}@supports (color:color-mix(in lab,red,red)){.border-gray-600\/30{border-color:color-mix(in oklab,var(--color-gray-600)30%,transparent)}}.border-gray-600\/40{border-color:#4a556566}@supports (color:color-mix(in lab,red,red)){.border-gray-600\/40{border-color:color-mix(in oklab,var(--color-gray-600)40%,transparent)}}.border-gray-600\/50{border-color:#4a556580}@supports (color:color-mix(in lab,red,red)){.border-gray-600\/50{border-color:color-mix(in oklab,var(--color-gray-600)50%,transparent)}}.border-gray-700\/50{border-color:#36415380}@supports (color:color-mix(in lab,red,red)){.border-gray-700\/50{border-color:color-mix(in oklab,var(--color-gray-700)50%,transparent)}}.border-green-200{border-color:var(--color-green-200)}.border-green-500{border-color:var(--color-green-500)}.border-green-500\/20{border-color:#00c75833}@supports (color:color-mix(in lab,red,red)){.border-green-500\/20{border-color:color-mix(in oklab,var(--color-green-500)20%,transparent)}}.border-inactive\/30{border-color:color-mix(in srgb,hsl(hsl(var(--color-inactive)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-inactive\/30{border-color:color-mix(in oklab,hsl(var(--color-inactive))30%,transparent)}}.border-inactive\/50{border-color:color-mix(in srgb,hsl(hsl(var(--color-inactive)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-inactive\/50{border-color:color-mix(in oklab,hsl(var(--color-inactive))50%,transparent)}}.border-info\/30{border-color:color-mix(in srgb,hsl(hsl(var(--color-info)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-info\/30{border-color:color-mix(in oklab,hsl(var(--color-info))30%,transparent)}}.border-neutral{border-color:hsl(var(--color-neutral))}.border-neutral-700{border-color:var(--color-neutral-700)}.border-neutral\/10{border-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-neutral\/10{border-color:color-mix(in oklab,hsl(var(--color-neutral))10%,transparent)}}.border-neutral\/20{border-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-neutral\/20{border-color:color-mix(in oklab,hsl(var(--color-neutral))20%,transparent)}}.border-neutral\/30{border-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-neutral\/30{border-color:color-mix(in oklab,hsl(var(--color-neutral))30%,transparent)}}.border-neutral\/50{border-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-neutral\/50{border-color:color-mix(in oklab,hsl(var(--color-neutral))50%,transparent)}}.border-orange-500{border-color:var(--color-orange-500)}.border-orange-500\/30{border-color:#fe6e004d}@supports (color:color-mix(in lab,red,red)){.border-orange-500\/30{border-color:color-mix(in oklab,var(--color-orange-500)30%,transparent)}}.border-primary{border-color:hsl(var(--color-primary))}.border-primary\/20{border-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/20{border-color:color-mix(in oklab,hsl(var(--color-primary))20%,transparent)}}.border-primary\/30{border-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,hsl(var(--color-primary))30%,transparent)}}.border-primary\/40{border-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/40{border-color:color-mix(in oklab,hsl(var(--color-primary))40%,transparent)}}.border-primary\/50{border-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/50{border-color:color-mix(in oklab,hsl(var(--color-primary))50%,transparent)}}.border-purple-200{border-color:var(--color-purple-200)}.border-purple-500{border-color:var(--color-purple-500)}.border-purple-500\/20{border-color:#ac4bff33}@supports (color:color-mix(in lab,red,red)){.border-purple-500\/20{border-color:color-mix(in oklab,var(--color-purple-500)20%,transparent)}}.border-purple-500\/30{border-color:#ac4bff4d}@supports (color:color-mix(in lab,red,red)){.border-purple-500\/30{border-color:color-mix(in oklab,var(--color-purple-500)30%,transparent)}}.border-purple-600{border-color:var(--color-purple-600)}.border-red-200{border-color:var(--color-red-200)}.border-red-500{border-color:var(--color-red-500)}.border-red-700{border-color:var(--color-red-700)}.border-secondary\/20{border-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-secondary\/20{border-color:color-mix(in oklab,hsl(var(--color-secondary))20%,transparent)}}.border-secondary\/30{border-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-secondary\/30{border-color:color-mix(in oklab,hsl(var(--color-secondary))30%,transparent)}}.border-success\/20{border-color:color-mix(in srgb,hsl(hsl(var(--color-success)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-success\/20{border-color:color-mix(in oklab,hsl(var(--color-success))20%,transparent)}}.border-success\/30{border-color:color-mix(in srgb,hsl(hsl(var(--color-success)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-success\/30{border-color:color-mix(in oklab,hsl(var(--color-success))30%,transparent)}}.border-success\/40{border-color:color-mix(in srgb,hsl(hsl(var(--color-success)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-success\/40{border-color:color-mix(in oklab,hsl(var(--color-success))40%,transparent)}}.border-success\/50{border-color:color-mix(in srgb,hsl(hsl(var(--color-success)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-success\/50{border-color:color-mix(in oklab,hsl(var(--color-success))50%,transparent)}}.border-transparent{border-color:#0000}.border-warning\/30{border-color:color-mix(in srgb,hsl(hsl(var(--color-warning)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-warning\/30{border-color:color-mix(in oklab,hsl(var(--color-warning))30%,transparent)}}.border-warning\/50{border-color:color-mix(in srgb,hsl(hsl(var(--color-warning)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-warning\/50{border-color:color-mix(in oklab,hsl(var(--color-warning))50%,transparent)}}.border-white{border-color:var(--color-white)}.border-white\/30{border-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.border-white\/30{border-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.border-yellow-500{border-color:var(--color-yellow-500)}.border-yellow-500\/30{border-color:#edb2004d}@supports (color:color-mix(in lab,red,red)){.border-yellow-500\/30{border-color:color-mix(in oklab,var(--color-yellow-500)30%,transparent)}}.border-t-blue-500{border-top-color:var(--color-blue-500)}.border-l-blue-500{border-left-color:var(--color-blue-500)}.border-l-transparent{border-left-color:#0000}.\!bg-background-secondary{background-color:hsl(var(--color-background-secondary))!important}.bg-\[\#1c1c1c\]\/\[var\(--bg-opacity\)\]{background-color:#1c1c1c}@supports (color:color-mix(in lab,red,red)){.bg-\[\#1c1c1c\]\/\[var\(--bg-opacity\)\]{background-color:color-mix(in oklab,#1c1c1c var(--bg-opacity),transparent)}}.bg-background{background-color:hsl(var(--color-background))}.bg-background-secondary{background-color:hsl(var(--color-background-secondary))}.bg-background-secondary\/30{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background-secondary\/30{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))30%,transparent)}}.bg-background-secondary\/40{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background-secondary\/40{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))40%,transparent)}}.bg-background-secondary\/50{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background-secondary\/50{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))50%,transparent)}}.bg-background-secondary\/70{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))70%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background-secondary\/70{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))70%,transparent)}}.bg-background-secondary\/80{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background-secondary\/80{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))80%,transparent)}}.bg-background-secondary\/90{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))90%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background-secondary\/90{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))90%,transparent)}}.bg-background\/10{background-color:color-mix(in srgb,hsl(hsl(var(--color-background)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background\/10{background-color:color-mix(in oklab,hsl(var(--color-background))10%,transparent)}}.bg-background\/40{background-color:color-mix(in srgb,hsl(hsl(var(--color-background)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background\/40{background-color:color-mix(in oklab,hsl(var(--color-background))40%,transparent)}}.bg-background\/50{background-color:color-mix(in srgb,hsl(hsl(var(--color-background)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background\/50{background-color:color-mix(in oklab,hsl(var(--color-background))50%,transparent)}}.bg-background\/80{background-color:color-mix(in srgb,hsl(hsl(var(--color-background)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background\/80{background-color:color-mix(in oklab,hsl(var(--color-background))80%,transparent)}}.bg-base{background-color:hsl(var(--color-base))}.bg-black{background-color:var(--color-black)}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black)40%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black)60%,transparent)}}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black)70%,transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-400\/50{background-color:#54a2ff80}@supports (color:color-mix(in lab,red,red)){.bg-blue-400\/50{background-color:color-mix(in oklab,var(--color-blue-400)50%,transparent)}}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/10{background-color:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.bg-blue-500\/20{background-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/20{background-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-800\/30{background-color:#193cb84d}@supports (color:color-mix(in lab,red,red)){.bg-blue-800\/30{background-color:color-mix(in oklab,var(--color-blue-800)30%,transparent)}}.bg-error\/10{background-color:color-mix(in srgb,hsl(hsl(var(--color-error)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-error\/10{background-color:color-mix(in oklab,hsl(var(--color-error))10%,transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-100\/30{background-color:#f3f4f64d}@supports (color:color-mix(in lab,red,red)){.bg-gray-100\/30{background-color:color-mix(in oklab,var(--color-gray-100)30%,transparent)}}.bg-gray-100\/50{background-color:#f3f4f680}@supports (color:color-mix(in lab,red,red)){.bg-gray-100\/50{background-color:color-mix(in oklab,var(--color-gray-100)50%,transparent)}}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-200\/50{background-color:#e5e7eb80}@supports (color:color-mix(in lab,red,red)){.bg-gray-200\/50{background-color:color-mix(in oklab,var(--color-gray-200)50%,transparent)}}.bg-gray-300{background-color:var(--color-gray-300)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-gray-600{background-color:var(--color-gray-600)}.bg-gray-700{background-color:var(--color-gray-700)}.bg-gray-700\/30{background-color:#3641534d}@supports (color:color-mix(in lab,red,red)){.bg-gray-700\/30{background-color:color-mix(in oklab,var(--color-gray-700)30%,transparent)}}.bg-gray-700\/40{background-color:#36415366}@supports (color:color-mix(in lab,red,red)){.bg-gray-700\/40{background-color:color-mix(in oklab,var(--color-gray-700)40%,transparent)}}.bg-gray-700\/50{background-color:#36415380}@supports (color:color-mix(in lab,red,red)){.bg-gray-700\/50{background-color:color-mix(in oklab,var(--color-gray-700)50%,transparent)}}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-800\/25{background-color:#1e293940}@supports (color:color-mix(in lab,red,red)){.bg-gray-800\/25{background-color:color-mix(in oklab,var(--color-gray-800)25%,transparent)}}.bg-gray-800\/50{background-color:#1e293980}@supports (color:color-mix(in lab,red,red)){.bg-gray-800\/50{background-color:color-mix(in oklab,var(--color-gray-800)50%,transparent)}}.bg-gray-800\/90{background-color:#1e2939e6}@supports (color:color-mix(in lab,red,red)){.bg-gray-800\/90{background-color:color-mix(in oklab,var(--color-gray-800)90%,transparent)}}.bg-gray-900{background-color:var(--color-gray-900)}.bg-gray-900\/25{background-color:#10182840}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/25{background-color:color-mix(in oklab,var(--color-gray-900)25%,transparent)}}.bg-gray-900\/30{background-color:#1018284d}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/30{background-color:color-mix(in oklab,var(--color-gray-900)30%,transparent)}}.bg-gray-900\/50{background-color:#10182880}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/50{background-color:color-mix(in oklab,var(--color-gray-900)50%,transparent)}}.bg-gray-900\/70{background-color:#101828b3}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/70{background-color:color-mix(in oklab,var(--color-gray-900)70%,transparent)}}.bg-gray-900\/80{background-color:#101828cc}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/80{background-color:color-mix(in oklab,var(--color-gray-900)80%,transparent)}}.bg-green-50{background-color:var(--color-green-50)}.bg-green-200{background-color:var(--color-green-200)}.bg-green-400{background-color:var(--color-green-400)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-500\/10{background-color:#00c7581a}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/10{background-color:color-mix(in oklab,var(--color-green-500)10%,transparent)}}.bg-green-600{background-color:var(--color-green-600)}.bg-green-600\/20{background-color:#00a54433}@supports (color:color-mix(in lab,red,red)){.bg-green-600\/20{background-color:color-mix(in oklab,var(--color-green-600)20%,transparent)}}.bg-green-800{background-color:var(--color-green-800)}.bg-green-900{background-color:var(--color-green-900)}.bg-inactive\/10{background-color:color-mix(in srgb,hsl(hsl(var(--color-inactive)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-inactive\/10{background-color:color-mix(in oklab,hsl(var(--color-inactive))10%,transparent)}}.bg-inactive\/20{background-color:color-mix(in srgb,hsl(hsl(var(--color-inactive)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-inactive\/20{background-color:color-mix(in oklab,hsl(var(--color-inactive))20%,transparent)}}.bg-indigo-600{background-color:var(--color-indigo-600)}.bg-info\/10{background-color:color-mix(in srgb,hsl(hsl(var(--color-info)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-info\/10{background-color:color-mix(in oklab,hsl(var(--color-info))10%,transparent)}}.bg-info\/20{background-color:color-mix(in srgb,hsl(hsl(var(--color-info)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-info\/20{background-color:color-mix(in oklab,hsl(var(--color-info))20%,transparent)}}.bg-neutral{background-color:hsl(var(--color-neutral))}.bg-neutral-300{background-color:var(--color-neutral-300)}.bg-neutral-700{background-color:var(--color-neutral-700)}.bg-neutral\/20{background-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-neutral\/20{background-color:color-mix(in oklab,hsl(var(--color-neutral))20%,transparent)}}.bg-neutral\/30{background-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-neutral\/30{background-color:color-mix(in oklab,hsl(var(--color-neutral))30%,transparent)}}.bg-neutral\/50{background-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-neutral\/50{background-color:color-mix(in oklab,hsl(var(--color-neutral))50%,transparent)}}.bg-orange-50{background-color:var(--color-orange-50)}.bg-orange-500{background-color:var(--color-orange-500)}.bg-orange-500\/10{background-color:#fe6e001a}@supports (color:color-mix(in lab,red,red)){.bg-orange-500\/10{background-color:color-mix(in oklab,var(--color-orange-500)10%,transparent)}}.bg-orange-500\/20{background-color:#fe6e0033}@supports (color:color-mix(in lab,red,red)){.bg-orange-500\/20{background-color:color-mix(in oklab,var(--color-orange-500)20%,transparent)}}.bg-orange-700{background-color:var(--color-orange-700)}.bg-primary{background-color:hsl(var(--color-primary))}.bg-primary\/5{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))5%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/5{background-color:color-mix(in oklab,hsl(var(--color-primary))5%,transparent)}}.bg-primary\/10{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,hsl(var(--color-primary))10%,transparent)}}.bg-primary\/20{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/20{background-color:color-mix(in oklab,hsl(var(--color-primary))20%,transparent)}}.bg-primary\/30{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/30{background-color:color-mix(in oklab,hsl(var(--color-primary))30%,transparent)}}.bg-primary\/50{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/50{background-color:color-mix(in oklab,hsl(var(--color-primary))50%,transparent)}}.bg-primary\/60{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))60%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/60{background-color:color-mix(in oklab,hsl(var(--color-primary))60%,transparent)}}.bg-purple-50{background-color:var(--color-purple-50)}.bg-purple-500{background-color:var(--color-purple-500)}.bg-purple-500\/20{background-color:#ac4bff33}@supports (color:color-mix(in lab,red,red)){.bg-purple-500\/20{background-color:color-mix(in oklab,var(--color-purple-500)20%,transparent)}}.bg-purple-600{background-color:var(--color-purple-600)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-50\/80{background-color:#fef2f2cc}@supports (color:color-mix(in lab,red,red)){.bg-red-50\/80{background-color:color-mix(in oklab,var(--color-red-50)80%,transparent)}}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/20{background-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/20{background-color:color-mix(in oklab,var(--color-red-500)20%,transparent)}}.bg-red-600{background-color:var(--color-red-600)}.bg-red-600\/20{background-color:#e4001433}@supports (color:color-mix(in lab,red,red)){.bg-red-600\/20{background-color:color-mix(in oklab,var(--color-red-600)20%,transparent)}}.bg-red-700{background-color:var(--color-red-700)}.bg-red-800{background-color:var(--color-red-800)}.bg-red-900{background-color:var(--color-red-900)}.bg-red-900\/20{background-color:#82181a33}@supports (color:color-mix(in lab,red,red)){.bg-red-900\/20{background-color:color-mix(in oklab,var(--color-red-900)20%,transparent)}}.bg-secondary{background-color:hsl(var(--color-secondary))}.bg-secondary\/10{background-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-secondary\/10{background-color:color-mix(in oklab,hsl(var(--color-secondary))10%,transparent)}}.bg-success\/10{background-color:color-mix(in srgb,hsl(hsl(var(--color-success)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,hsl(var(--color-success))10%,transparent)}}.bg-success\/20{background-color:color-mix(in srgb,hsl(hsl(var(--color-success)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-success\/20{background-color:color-mix(in oklab,hsl(var(--color-success))20%,transparent)}}.bg-transparent{background-color:#0000}.bg-warning\/10{background-color:color-mix(in srgb,hsl(hsl(var(--color-warning)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,hsl(var(--color-warning))10%,transparent)}}.bg-warning\/20{background-color:color-mix(in srgb,hsl(hsl(var(--color-warning)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/20{background-color:color-mix(in oklab,hsl(var(--color-warning))20%,transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.bg-white\/5{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.bg-white\/20{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.bg-white\/20{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.bg-yellow-500{background-color:var(--color-yellow-500)}.bg-yellow-600{background-color:var(--color-yellow-600)}.bg-yellow-600\/10{background-color:#cd89001a}@supports (color:color-mix(in lab,red,red)){.bg-yellow-600\/10{background-color:color-mix(in oklab,var(--color-yellow-600)10%,transparent)}}.bg-yellow-600\/20{background-color:#cd890033}@supports (color:color-mix(in lab,red,red)){.bg-yellow-600\/20{background-color:color-mix(in oklab,var(--color-yellow-600)20%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-bl{--tw-gradient-position:to bottom left in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-tr{--tw-gradient-position:to top right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-none{background-image:none}.from-\[\#4667FF\]\/10{--tw-gradient-from:oklab(58.1845% -.00505582 -.227877/.1);--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))}.from-background{--tw-gradient-from:hsl(var(--color-background));--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))}.from-background-secondary{--tw-gradient-from:hsl(var(--color-background-secondary));--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-background-secondary\/50{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))50%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-background-secondary\/50{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-background-secondary))50%,transparent)}}.from-background-secondary\/80{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))80%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-background-secondary\/80{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-background-secondary))80%,transparent)}}.from-background\/50{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-background)))50%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-background\/50{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-background))50%,transparent)}}.from-background\/60{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-background)))60%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-background\/60{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-background))60%,transparent)}}.from-background\/80{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-background)))80%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-background\/80{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-background))80%,transparent)}}.from-black\/20{--tw-gradient-from:#0003;--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))}@supports (color:color-mix(in lab,red,red)){.from-black\/20{--tw-gradient-from:color-mix(in oklab,var(--color-black)20%,transparent)}}.from-blue-50{--tw-gradient-from:var(--color-blue-50);--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))}.from-blue-400{--tw-gradient-from:var(--color-blue-400);--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))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--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))}.from-blue-500\/10{--tw-gradient-from:#3080ff1a;--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))}@supports (color:color-mix(in lab,red,red)){.from-blue-500\/10{--tw-gradient-from:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.from-blue-500\/20{--tw-gradient-from:#3080ff33;--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))}@supports (color:color-mix(in lab,red,red)){.from-blue-500\/20{--tw-gradient-from:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.from-blue-600{--tw-gradient-from:var(--color-blue-600);--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))}.from-blue-600\/20{--tw-gradient-from:#155dfc33;--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))}@supports (color:color-mix(in lab,red,red)){.from-blue-600\/20{--tw-gradient-from:color-mix(in oklab,var(--color-blue-600)20%,transparent)}}.from-emerald-500{--tw-gradient-from:var(--color-emerald-500);--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))}.from-error{--tw-gradient-from:hsl(var(--color-error));--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))}.from-error\/20{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-error)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-error\/20{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-error))20%,transparent)}}.from-gray-50{--tw-gradient-from:var(--color-gray-50);--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))}.from-green-400{--tw-gradient-from:var(--color-green-400);--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))}.from-green-500\/10{--tw-gradient-from:#00c7581a;--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))}@supports (color:color-mix(in lab,red,red)){.from-green-500\/10{--tw-gradient-from:color-mix(in oklab,var(--color-green-500)10%,transparent)}}.from-inactive\/20{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-inactive)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-inactive\/20{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-inactive))20%,transparent)}}.from-info\/20{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-info)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-info\/20{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-info))20%,transparent)}}.from-primary{--tw-gradient-from:hsl(var(--color-primary));--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-primary\/5{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-primary)))5%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-primary\/5{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-primary))5%,transparent)}}.from-primary\/8{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-primary)))8%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-primary\/8{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-primary))8%,transparent)}}.from-primary\/10{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-primary)))10%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-primary\/10{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-primary))10%,transparent)}}.from-primary\/20{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-primary)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-primary\/20{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-primary))20%,transparent)}}.from-primary\/30{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-primary)))30%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-primary\/30{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-primary))30%,transparent)}}.from-purple-50{--tw-gradient-from:var(--color-purple-50);--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))}.from-purple-400{--tw-gradient-from:var(--color-purple-400);--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))}.from-purple-500{--tw-gradient-from:var(--color-purple-500);--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))}.from-purple-500\/10{--tw-gradient-from:#ac4bff1a;--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))}@supports (color:color-mix(in lab,red,red)){.from-purple-500\/10{--tw-gradient-from:color-mix(in oklab,var(--color-purple-500)10%,transparent)}}.from-red-500{--tw-gradient-from:var(--color-red-500);--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))}.from-red-500\/5{--tw-gradient-from:#fb2c360d;--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))}@supports (color:color-mix(in lab,red,red)){.from-red-500\/5{--tw-gradient-from:color-mix(in oklab,var(--color-red-500)5%,transparent)}}.from-red-600{--tw-gradient-from:var(--color-red-600);--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))}.from-secondary{--tw-gradient-from:hsl(var(--color-secondary));--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-secondary\/20{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-secondary)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-secondary\/20{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-secondary))20%,transparent)}}.from-success{--tw-gradient-from:hsl(var(--color-success));--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))}.from-success\/20{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-success)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-success\/20{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-success))20%,transparent)}}.from-warning\/20{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-warning)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-warning\/20{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-warning))20%,transparent)}}.from-warning\/80{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-warning)))80%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.from-warning\/80{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-warning))80%,transparent)}}.from-white{--tw-gradient-from:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-background-secondary\/90{--tw-gradient-via:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))90%,transparent);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}@supports (color:color-mix(in lab,red,red)){.via-background-secondary\/90{--tw-gradient-via:color-mix(in oklab,hsl(var(--color-background-secondary))90%,transparent)}}.via-primary\/4{--tw-gradient-via:color-mix(in srgb,hsl(hsl(var(--color-primary)))4%,transparent);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}@supports (color:color-mix(in lab,red,red)){.via-primary\/4{--tw-gradient-via:color-mix(in oklab,hsl(var(--color-primary))4%,transparent)}}.via-primary\/5{--tw-gradient-via:color-mix(in srgb,hsl(hsl(var(--color-primary)))5%,transparent);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}@supports (color:color-mix(in lab,red,red)){.via-primary\/5{--tw-gradient-via:color-mix(in oklab,hsl(var(--color-primary))5%,transparent)}}.via-primary\/15{--tw-gradient-via:color-mix(in srgb,hsl(hsl(var(--color-primary)))15%,transparent);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}@supports (color:color-mix(in lab,red,red)){.via-primary\/15{--tw-gradient-via:color-mix(in oklab,hsl(var(--color-primary))15%,transparent)}}.via-purple-500{--tw-gradient-via:var(--color-purple-500);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-secondary{--tw-gradient-via:hsl(var(--color-secondary));--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-20\%{--tw-gradient-via-position:20%}.via-50\%{--tw-gradient-via-position:50%}.to-\[\#4667FF\]\/20{--tw-gradient-to:oklab(58.1845% -.00505582 -.227877/.2);--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))}.to-\[\#5573FD80\]{--tw-gradient-to:#5573fd80;--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))}.to-background-secondary\/30{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))30%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-background-secondary\/30{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-background-secondary))30%,transparent)}}.to-background-secondary\/40{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))40%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-background-secondary\/40{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-background-secondary))40%,transparent)}}.to-background-secondary\/70{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))70%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-background-secondary\/70{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-background-secondary))70%,transparent)}}.to-background\/20{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-background)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-background\/20{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-background))20%,transparent)}}.to-background\/40{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-background)))40%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-background\/40{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-background))40%,transparent)}}.to-background\/60{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-background)))60%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-background\/60{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-background))60%,transparent)}}.to-background\/80{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-background)))80%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-background\/80{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-background))80%,transparent)}}.to-blue-400{--tw-gradient-to:var(--color-blue-400);--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))}.to-blue-500\/10{--tw-gradient-to:#3080ff1a;--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))}@supports (color:color-mix(in lab,red,red)){.to-blue-500\/10{--tw-gradient-to:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.to-blue-600{--tw-gradient-to:var(--color-blue-600);--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))}.to-emerald-600{--tw-gradient-to:var(--color-emerald-600);--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))}.to-error\/10{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-error)))10%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-error\/10{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-error))10%,transparent)}}.to-error\/80{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-error)))80%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-error\/80{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-error))80%,transparent)}}.to-gray-100{--tw-gradient-to:var(--color-gray-100);--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))}.to-gray-300{--tw-gradient-to:var(--color-gray-300);--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))}.to-inactive\/10{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-inactive)))10%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-inactive\/10{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-inactive))10%,transparent)}}.to-indigo-50{--tw-gradient-to:var(--color-indigo-50);--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))}.to-info\/10{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-info)))10%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-info\/10{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-info))10%,transparent)}}.to-pink-50{--tw-gradient-to:var(--color-pink-50);--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))}.to-pink-400{--tw-gradient-to:var(--color-pink-400);--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))}.to-pink-500\/10{--tw-gradient-to:#f6339a1a;--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))}@supports (color:color-mix(in lab,red,red)){.to-pink-500\/10{--tw-gradient-to:color-mix(in oklab,var(--color-pink-500)10%,transparent)}}.to-pink-600{--tw-gradient-to:var(--color-pink-600);--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))}.to-primary{--tw-gradient-to:hsl(var(--color-primary));--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-primary\/5{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-primary)))5%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-primary\/5{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-primary))5%,transparent)}}.to-primary\/10{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-primary)))10%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-primary\/10{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-primary))10%,transparent)}}.to-primary\/40{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-primary)))40%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-primary\/40{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-primary))40%,transparent)}}.to-primary\/60{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-primary)))60%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-primary\/60{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-primary))60%,transparent)}}.to-primary\/80{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-primary)))80%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-primary\/80{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-primary))80%,transparent)}}.to-purple-400{--tw-gradient-to:var(--color-purple-400);--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))}.to-purple-500\/10{--tw-gradient-to:#ac4bff1a;--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))}@supports (color:color-mix(in lab,red,red)){.to-purple-500\/10{--tw-gradient-to:color-mix(in oklab,var(--color-purple-500)10%,transparent)}}.to-purple-500\/20{--tw-gradient-to:#ac4bff33;--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))}@supports (color:color-mix(in lab,red,red)){.to-purple-500\/20{--tw-gradient-to:color-mix(in oklab,var(--color-purple-500)20%,transparent)}}.to-purple-600{--tw-gradient-to:var(--color-purple-600);--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))}.to-purple-600\/20{--tw-gradient-to:#9810fa33;--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))}@supports (color:color-mix(in lab,red,red)){.to-purple-600\/20{--tw-gradient-to:color-mix(in oklab,var(--color-purple-600)20%,transparent)}}.to-red-500\/10{--tw-gradient-to:#fb2c361a;--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))}@supports (color:color-mix(in lab,red,red)){.to-red-500\/10{--tw-gradient-to:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.to-red-600{--tw-gradient-to:var(--color-red-600);--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))}.to-red-700{--tw-gradient-to:var(--color-red-700);--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))}.to-secondary{--tw-gradient-to:hsl(var(--color-secondary));--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-secondary\/10{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-secondary)))10%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-secondary\/10{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-secondary))10%,transparent)}}.to-secondary\/20{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-secondary)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-secondary\/20{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-secondary))20%,transparent)}}.to-secondary\/80{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-secondary)))80%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-secondary\/80{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-secondary))80%,transparent)}}.to-success\/10{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-success)))10%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-success\/10{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-success))10%,transparent)}}.to-success\/40{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-success)))40%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-success\/40{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-success))40%,transparent)}}.to-success\/80{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-success)))80%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-success\/80{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-success))80%,transparent)}}.to-transparent{--tw-gradient-to:transparent;--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))}.to-warning\/10{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-warning)))10%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-warning\/10{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-warning))10%,transparent)}}.to-warning\/60{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-warning)))60%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.to-warning\/60{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-warning))60%,transparent)}}.to-white{--tw-gradient-to:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.\!fill-primary{fill:hsl(var(--color-primary))!important}.\!fill-white{fill:var(--color-white)!important}.fill-background{fill:hsl(var(--color-background))}.fill-base\/50{fill:color-mix(in srgb,hsl(hsl(var(--color-base)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.fill-base\/50{fill:color-mix(in oklab,hsl(var(--color-base))50%,transparent)}}.fill-black{fill:var(--color-black)}.fill-current{fill:currentColor}.fill-secondary{fill:hsl(var(--color-secondary))}.stroke-current{stroke:currentColor}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-center{object-position:center}.p-0{padding:calc(var(--spacing)*0)}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-2\.5{padding:calc(var(--spacing)*2.5)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-10{padding:calc(var(--spacing)*10)}.p-12{padding:calc(var(--spacing)*12)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-4\.5{padding-inline:calc(var(--spacing)*4.5)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.px-10{padding-inline:calc(var(--spacing)*10)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.py-16{padding-block:calc(var(--spacing)*16)}.py-20{padding-block:calc(var(--spacing)*20)}.py-24{padding-block:calc(var(--spacing)*24)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-10{padding-top:calc(var(--spacing)*10)}.pt-\[6px\]{padding-top:6px}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-4{padding-right:calc(var(--spacing)*4)}.pr-10{padding-right:calc(var(--spacing)*10)}.pr-44{padding-right:calc(var(--spacing)*44)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pb-7{padding-bottom:calc(var(--spacing)*7)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.pb-10{padding-bottom:calc(var(--spacing)*10)}.pb-20{padding-bottom:calc(var(--spacing)*20)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-8{padding-left:calc(var(--spacing)*8)}.text-center{text-align:center}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[15px\]{font-size:15px}.text-\[70\%\]{font-size:70%}.leading-6{--tw-leading:calc(var(--spacing)*6);line-height:calc(var(--spacing)*6)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.6em\]{--tw-tracking:.6em;letter-spacing:.6em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-nowrap{text-wrap:nowrap}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#4667FF\]\/70{color:#4667ffb3}.text-base{color:hsl(var(--color-base))}.text-base\/20{color:color-mix(in srgb,hsl(hsl(var(--color-base)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-base\/20{color:color-mix(in oklab,hsl(var(--color-base))20%,transparent)}}.text-base\/40{color:color-mix(in srgb,hsl(hsl(var(--color-base)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-base\/40{color:color-mix(in oklab,hsl(var(--color-base))40%,transparent)}}.text-base\/50{color:color-mix(in srgb,hsl(hsl(var(--color-base)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-base\/50{color:color-mix(in oklab,hsl(var(--color-base))50%,transparent)}}.text-base\/60{color:color-mix(in srgb,hsl(hsl(var(--color-base)))60%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-base\/60{color:color-mix(in oklab,hsl(var(--color-base))60%,transparent)}}.text-base\/70{color:color-mix(in srgb,hsl(hsl(var(--color-base)))70%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-base\/70{color:color-mix(in oklab,hsl(var(--color-base))70%,transparent)}}.text-base\/75{color:color-mix(in srgb,hsl(hsl(var(--color-base)))75%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-base\/75{color:color-mix(in oklab,hsl(var(--color-base))75%,transparent)}}.text-base\/80{color:color-mix(in srgb,hsl(hsl(var(--color-base)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-base\/80{color:color-mix(in oklab,hsl(var(--color-base))80%,transparent)}}.text-blue-300{color:var(--color-blue-300)}.text-blue-400{color:var(--color-blue-400)}.text-blue-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-900{color:var(--color-blue-900)}.text-current{color:currentColor}.text-error{color:hsl(var(--color-error))}.text-error\/80{color:color-mix(in srgb,hsl(hsl(var(--color-error)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-error\/80{color:color-mix(in oklab,hsl(var(--color-error))80%,transparent)}}.text-gray-100{color:var(--color-gray-100)}.text-gray-200{color:var(--color-gray-200)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-gray-950{color:var(--color-gray-950)}.text-green-100{color:var(--color-green-100)}.text-green-300{color:var(--color-green-300)}.text-green-400{color:var(--color-green-400)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-800{color:var(--color-green-800)}.text-green-900{color:var(--color-green-900)}.text-inactive{color:hsl(var(--color-inactive))}.text-indigo-600{color:var(--color-indigo-600)}.text-info{color:hsl(var(--color-info))}.text-neutral-400{color:var(--color-neutral-400)}.text-orange-500{color:var(--color-orange-500)}.text-orange-600{color:var(--color-orange-600)}.text-orange-900{color:var(--color-orange-900)}.text-primary{color:hsl(var(--color-primary))}.text-primary\/75{color:color-mix(in srgb,hsl(hsl(var(--color-primary)))75%,transparent)}@supports (color:color-mix(in lab,red,red)){.text-primary\/75{color:color-mix(in oklab,hsl(var(--color-primary))75%,transparent)}}.text-purple-500{color:var(--color-purple-500)}.text-purple-600{color:var(--color-purple-600)}.text-purple-700{color:var(--color-purple-700)}.text-purple-900{color:var(--color-purple-900)}.text-red-100{color:var(--color-red-100)}.text-red-300{color:var(--color-red-300)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-red-900{color:var(--color-red-900)}.text-secondary{color:hsl(var(--color-secondary))}.text-success{color:hsl(var(--color-success))}.text-transparent{color:#0000}.text-warning{color:hsl(var(--color-warning))}.text-white{color:var(--color-white)}.text-white\/70{color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.text-white\/70{color:color-mix(in oklab,var(--color-white)70%,transparent)}}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab,red,red)){.text-white\/80{color:color-mix(in oklab,var(--color-white)80%,transparent)}}.text-white\/90{color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.text-white\/90{color:color-mix(in oklab,var(--color-white)90%,transparent)}}.text-yellow-200\/80{color:#fff085cc}@supports (color:color-mix(in lab,red,red)){.text-yellow-200\/80{color:color-mix(in oklab,var(--color-yellow-200)80%,transparent)}}.text-yellow-300{color:var(--color-yellow-300)}.text-yellow-400{color:var(--color-yellow-400)}.text-yellow-500{color:var(--color-yellow-500)}.text-yellow-600{color:var(--color-yellow-600)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.placeholder-gray-400::placeholder{color:var(--color-gray-400)}.placeholder-gray-500::placeholder{color:var(--color-gray-500)}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-15{opacity:.15}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-85{opacity:.85}.opacity-90{opacity:.9}.opacity-100{opacity:1}.mix-blend-multiply{mix-blend-mode:multiply}.mix-blend-normal{mix-blend-mode:normal}.mix-blend-screen{mix-blend-mode:screen}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-4{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-blue-500\/20{--tw-shadow-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.shadow-blue-500\/20{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-blue-500)20%,transparent)var(--tw-shadow-alpha),transparent)}}.shadow-blue-500\/25{--tw-shadow-color:#3080ff40}@supports (color:color-mix(in lab,red,red)){.shadow-blue-500\/25{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-blue-500)25%,transparent)var(--tw-shadow-alpha),transparent)}}.ring-blue-400{--tw-ring-color:var(--color-blue-400)}.ring-blue-500{--tw-ring-color:var(--color-blue-500)}.ring-blue-500\/20{--tw-ring-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.ring-blue-500\/20{--tw-ring-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.ring-gray-600\/20{--tw-ring-color:#4a556533}@supports (color:color-mix(in lab,red,red)){.ring-gray-600\/20{--tw-ring-color:color-mix(in oklab,var(--color-gray-600)20%,transparent)}}.ring-gray-600\/30{--tw-ring-color:#4a55654d}@supports (color:color-mix(in lab,red,red)){.ring-gray-600\/30{--tw-ring-color:color-mix(in oklab,var(--color-gray-600)30%,transparent)}}.ring-gray-950\/5{--tw-ring-color:#0307120d}@supports (color:color-mix(in lab,red,red)){.ring-gray-950\/5{--tw-ring-color:color-mix(in oklab,var(--color-gray-950)5%,transparent)}}.ring-neutral-800{--tw-ring-color:var(--color-neutral-800)}.ring-purple-500\/20{--tw-ring-color:#ac4bff33}@supports (color:color-mix(in lab,red,red)){.ring-purple-500\/20{--tw-ring-color:color-mix(in oklab,var(--color-purple-500)20%,transparent)}}.ring-white{--tw-ring-color:var(--color-white)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.ring-offset-\[\#1c1c1c\]{--tw-ring-offset-color:#1c1c1c}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-2xl{--tw-blur:blur(var(--blur-2xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[40px\]{--tw-blur:blur(40px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[60px\]{--tw-blur:blur(60px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[70px\]{--tw-blur:blur(70px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[80px\]{--tw-blur:blur(80px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-sm{--tw-blur:blur(var(--blur-sm));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-xl{--tw-blur:blur(var(--blur-xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.brightness-125{--tw-brightness:brightness(125%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a)drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-2xl{--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.sepia{--tw-sepia:sepia(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter\!{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)!important}.backdrop-blur-lg{--tw-backdrop-blur:blur(var(--blur-lg));-webkit-backdrop-filter: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,);backdrop-filter: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,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter: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,);backdrop-filter: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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter: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,);backdrop-filter: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,)}.backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter: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,);backdrop-filter: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,)}.backdrop-filter{-webkit-backdrop-filter: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,);backdrop-filter: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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-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:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-150{transition-delay:.15s}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.prose-invert{--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.\[--bg-opacity\:25\%\]{--bg-opacity:25%}.\[--bg-opacity\:75\%\]{--bg-opacity:75%}.text-shadow-lg{text-shadow:0px 1px 2px var(--tw-text-shadow-color,#0000001a),0px 3px 2px var(--tw-text-shadow-color,#0000001a),0px 4px 8px var(--tw-text-shadow-color,#0000001a)}@media (hover:hover){.group-hover\:-translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:rotate-0:is(:where(.group):hover *){rotate:none}.group-hover\:rotate-90:is(:where(.group):hover *){rotate:90deg}.group-hover\:border-blue-500:is(:where(.group):hover *){border-color:var(--color-blue-500)}.group-hover\:border-primary:is(:where(.group):hover *){border-color:hsl(var(--color-primary))}.group-hover\:bg-primary\/20:is(:where(.group):hover *){background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-primary\/20:is(:where(.group):hover *){background-color:color-mix(in oklab,hsl(var(--color-primary))20%,transparent)}}.group-hover\:text-\[\#4667FF\]:is(:where(.group):hover *){color:#4667ff}.group-hover\:text-gray-50:is(:where(.group):hover *){color:var(--color-gray-50)}.group-hover\:text-primary:is(:where(.group):hover *){color:hsl(var(--color-primary))}.group-hover\:text-secondary:is(:where(.group):hover *){color:hsl(var(--color-secondary))}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/btn\:translate-x-1:is(:where(.group\/btn):hover *){--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\/btn\:scale-110:is(:where(.group\/btn):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\/nav\:translate-x-1:is(:where(.group\/nav):hover *){--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\/nav\:opacity-100:is(:where(.group\/nav):hover *){opacity:1}}.peer-checked\:border-primary:is(:where(.peer):checked~*){border-color:hsl(var(--color-primary))}.peer-checked\:border-secondary:is(:where(.peer):checked~*){border-color:hsl(var(--color-secondary))}.peer-checked\:bg-primary\/5:is(:where(.peer):checked~*){background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))5%,transparent)}@supports (color:color-mix(in lab,red,red)){.peer-checked\:bg-primary\/5:is(:where(.peer):checked~*){background-color:color-mix(in oklab,hsl(var(--color-primary))5%,transparent)}}.peer-checked\:bg-secondary\/5:is(:where(.peer):checked~*){background-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))5%,transparent)}@supports (color:color-mix(in lab,red,red)){.peer-checked\:bg-secondary\/5:is(:where(.peer):checked~*){background-color:color-mix(in oklab,hsl(var(--color-secondary))5%,transparent)}}.peer-checked\:ring-2:is(:where(.peer):checked~*){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.peer-checked\:ring-primary:is(:where(.peer):checked~*){--tw-ring-color:hsl(var(--color-primary))}.peer-checked\:ring-secondary:is(:where(.peer):checked~*){--tw-ring-color:hsl(var(--color-secondary))}.file\:mr-4::file-selector-button{margin-right:calc(var(--spacing)*4)}.file\:cursor-pointer::file-selector-button{cursor:pointer}.file\:rounded-lg::file-selector-button{border-radius:var(--radius-lg)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-blue-50::file-selector-button{background-color:var(--color-blue-50)}.file\:bg-blue-600::file-selector-button{background-color:var(--color-blue-600)}.file\:bg-purple-600::file-selector-button{background-color:var(--color-purple-600)}.file\:px-4::file-selector-button{padding-inline:calc(var(--spacing)*4)}.file\:py-2::file-selector-button{padding-block:calc(var(--spacing)*2)}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:font-semibold::file-selector-button{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.file\:text-blue-700::file-selector-button{color:var(--color-blue-700)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-0:before{content:var(--tw-content);inset:calc(var(--spacing)*0)}.before\:bg-primary:before{content:var(--tw-content);background-color:hsl(var(--color-primary))}.before\:\[mask-image\:_linear-gradient\(to_right\,theme\(colors\.white\)\,theme\(colors\.white\)_var\(--progress\)\,transparent_var\(--progress\)\)\]:before{content:var(--tw-content);-webkit-mask-image:linear-gradient(to right,#fff,#fff var(--progress),transparent var(--progress));mask-image:linear-gradient(to right,#fff,#fff var(--progress),transparent var(--progress))}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing)*-.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:-translate-y-3:hover{--tw-translate-y:calc(var(--spacing)*-3);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:scale-\[1\.01\]:hover{scale:1.01}.hover\:scale-\[1\.02\]:hover{scale:1.02}.hover\:scale-\[1\.005\]:hover{scale:1.005}.hover\:border-\[\#4667FF\]\/40:hover{border-color:#4667ff66}.hover\:border-blue-300:hover{border-color:var(--color-blue-300)}.hover\:border-blue-400\/50:hover{border-color:#54a2ff80}@supports (color:color-mix(in lab,red,red)){.hover\:border-blue-400\/50:hover{border-color:color-mix(in oklab,var(--color-blue-400)50%,transparent)}}.hover\:border-error\/50:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-error)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-error\/50:hover{border-color:color-mix(in oklab,hsl(var(--color-error))50%,transparent)}}.hover\:border-gray-600:hover{border-color:var(--color-gray-600)}.hover\:border-green-300:hover{border-color:var(--color-green-300)}.hover\:border-info\/50:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-info)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-info\/50:hover{border-color:color-mix(in oklab,hsl(var(--color-info))50%,transparent)}}.hover\:border-neutral\/30:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-neutral\/30:hover{border-color:color-mix(in oklab,hsl(var(--color-neutral))30%,transparent)}}.hover\:border-orange-500\/50:hover{border-color:#fe6e0080}@supports (color:color-mix(in lab,red,red)){.hover\:border-orange-500\/50:hover{border-color:color-mix(in oklab,var(--color-orange-500)50%,transparent)}}.hover\:border-primary:hover{border-color:hsl(var(--color-primary))}.hover\:border-primary\/30:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/30:hover{border-color:color-mix(in oklab,hsl(var(--color-primary))30%,transparent)}}.hover\:border-primary\/40:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab,hsl(var(--color-primary))40%,transparent)}}.hover\:border-primary\/50:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab,hsl(var(--color-primary))50%,transparent)}}.hover\:border-purple-500\/50:hover{border-color:#ac4bff80}@supports (color:color-mix(in lab,red,red)){.hover\:border-purple-500\/50:hover{border-color:color-mix(in oklab,var(--color-purple-500)50%,transparent)}}.hover\:border-red-300:hover{border-color:var(--color-red-300)}.hover\:border-secondary:hover{border-color:hsl(var(--color-secondary))}.hover\:border-secondary\/40:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-secondary\/40:hover{border-color:color-mix(in oklab,hsl(var(--color-secondary))40%,transparent)}}.hover\:border-secondary\/50:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-secondary\/50:hover{border-color:color-mix(in oklab,hsl(var(--color-secondary))50%,transparent)}}.hover\:border-success\/40:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-success)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-success\/40:hover{border-color:color-mix(in oklab,hsl(var(--color-success))40%,transparent)}}.hover\:border-success\/50:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-success)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-success\/50:hover{border-color:color-mix(in oklab,hsl(var(--color-success))50%,transparent)}}.hover\:border-warning\/50:hover{border-color:color-mix(in srgb,hsl(hsl(var(--color-warning)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-warning\/50:hover{border-color:color-mix(in oklab,hsl(var(--color-warning))50%,transparent)}}.hover\:border-yellow-300:hover{border-color:var(--color-yellow-300)}.hover\:bg-background:hover{background-color:hsl(var(--color-background))}.hover\:bg-background-secondary:hover{background-color:hsl(var(--color-background-secondary))}.hover\:bg-background-secondary\/50:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-background-secondary\/50:hover{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))50%,transparent)}}.hover\:bg-background-secondary\/60:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))60%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-background-secondary\/60:hover{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))60%,transparent)}}.hover\:bg-background-secondary\/80:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-background-secondary\/80:hover{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))80%,transparent)}}.hover\:bg-background\/50:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-background)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-background\/50:hover{background-color:color-mix(in oklab,hsl(var(--color-background))50%,transparent)}}.hover\:bg-black\/70:hover{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.hover\:bg-black\/70:hover{background-color:color-mix(in oklab,var(--color-black)70%,transparent)}}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-200:hover{background-color:var(--color-blue-200)}.hover\:bg-blue-600:hover{background-color:var(--color-blue-600)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-gray-300:hover{background-color:var(--color-gray-300)}.hover\:bg-gray-300\/70:hover{background-color:#d1d5dcb3}@supports (color:color-mix(in lab,red,red)){.hover\:bg-gray-300\/70:hover{background-color:color-mix(in oklab,var(--color-gray-300)70%,transparent)}}.hover\:bg-gray-400:hover{background-color:var(--color-gray-400)}.hover\:bg-gray-600:hover{background-color:var(--color-gray-600)}.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.hover\:bg-gray-700\/70:hover{background-color:#364153b3}@supports (color:color-mix(in lab,red,red)){.hover\:bg-gray-700\/70:hover{background-color:color-mix(in oklab,var(--color-gray-700)70%,transparent)}}.hover\:bg-green-50:hover{background-color:var(--color-green-50)}.hover\:bg-green-300:hover{background-color:var(--color-green-300)}.hover\:bg-green-700:hover{background-color:var(--color-green-700)}.hover\:bg-indigo-700:hover{background-color:var(--color-indigo-700)}.hover\:bg-neutral:hover{background-color:hsl(var(--color-neutral))}.hover\:bg-neutral-700:hover{background-color:var(--color-neutral-700)}.hover\:bg-neutral\/10:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-neutral\/10:hover{background-color:color-mix(in oklab,hsl(var(--color-neutral))10%,transparent)}}.hover\:bg-neutral\/20:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-neutral\/20:hover{background-color:color-mix(in oklab,hsl(var(--color-neutral))20%,transparent)}}.hover\:bg-neutral\/30:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-neutral\/30:hover{background-color:color-mix(in oklab,hsl(var(--color-neutral))30%,transparent)}}.hover\:bg-neutral\/50:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-neutral\/50:hover{background-color:color-mix(in oklab,hsl(var(--color-neutral))50%,transparent)}}.hover\:bg-primary:hover{background-color:hsl(var(--color-primary))}.hover\:bg-primary\/5:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))5%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/5:hover{background-color:color-mix(in oklab,hsl(var(--color-primary))5%,transparent)}}.hover\:bg-primary\/10:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))10%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/10:hover{background-color:color-mix(in oklab,hsl(var(--color-primary))10%,transparent)}}.hover\:bg-primary\/80:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab,hsl(var(--color-primary))80%,transparent)}}.hover\:bg-primary\/90:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))90%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,hsl(var(--color-primary))90%,transparent)}}.hover\:bg-purple-100:hover{background-color:var(--color-purple-100)}.hover\:bg-purple-700:hover{background-color:var(--color-purple-700)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-red-600:hover{background-color:var(--color-red-600)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:bg-secondary:hover{background-color:hsl(var(--color-secondary))}.hover\:bg-secondary\/25:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))25%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/25:hover{background-color:color-mix(in oklab,hsl(var(--color-secondary))25%,transparent)}}.hover\:bg-transparent:hover{background-color:#0000}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.hover\:bg-white\/30:hover{background-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/30:hover{background-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.hover\:bg-yellow-50:hover{background-color:var(--color-yellow-50)}.hover\:bg-yellow-700:hover{background-color:var(--color-yellow-700)}.hover\:from-\[\#4667FF\]\/20:hover{--tw-gradient-from:oklab(58.1845% -.00505582 -.227877/.2);--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))}.hover\:from-blue-600:hover{--tw-gradient-from:var(--color-blue-600);--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))}.hover\:from-blue-600\/30:hover{--tw-gradient-from:#155dfc4d;--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-blue-600\/30:hover{--tw-gradient-from:color-mix(in oklab,var(--color-blue-600)30%,transparent)}}.hover\:from-blue-700:hover{--tw-gradient-from:var(--color-blue-700);--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))}.hover\:from-emerald-600:hover{--tw-gradient-from:var(--color-emerald-600);--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))}.hover\:from-error\/30:hover{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-error)))30%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-error\/30:hover{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-error))30%,transparent)}}.hover\:from-info\/30:hover{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-info)))30%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-info\/30:hover{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-info))30%,transparent)}}.hover\:from-primary\/30:hover{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-primary)))30%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-primary\/30:hover{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-primary))30%,transparent)}}.hover\:from-primary\/50:hover{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-primary)))50%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-primary\/50:hover{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-primary))50%,transparent)}}.hover\:from-primary\/90:hover{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-primary)))90%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-primary\/90:hover{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-primary))90%,transparent)}}.hover\:from-purple-600:hover{--tw-gradient-from:var(--color-purple-600);--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))}.hover\:from-red-700:hover{--tw-gradient-from:var(--color-red-700);--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))}.hover\:from-secondary\/30:hover{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-secondary)))30%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-secondary\/30:hover{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-secondary))30%,transparent)}}.hover\:from-success\/30:hover{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-success)))30%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-success\/30:hover{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-success))30%,transparent)}}.hover\:from-warning\/30:hover{--tw-gradient-from:color-mix(in srgb,hsl(hsl(var(--color-warning)))30%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:from-warning\/30:hover{--tw-gradient-from:color-mix(in oklab,hsl(var(--color-warning))30%,transparent)}}.hover\:to-\[\#4667FF\]\/30:hover{--tw-gradient-to:oklab(58.1845% -.00505582 -.227877/.3);--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))}.hover\:to-blue-700:hover{--tw-gradient-to:var(--color-blue-700);--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))}.hover\:to-emerald-700:hover{--tw-gradient-to:var(--color-emerald-700);--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))}.hover\:to-error\/20:hover{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-error)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:to-error\/20:hover{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-error))20%,transparent)}}.hover\:to-info\/20:hover{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-info)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:to-info\/20:hover{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-info))20%,transparent)}}.hover\:to-primary:hover{--tw-gradient-to:hsl(var(--color-primary));--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-primary\/20:hover{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-primary)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:to-primary\/20:hover{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-primary))20%,transparent)}}.hover\:to-purple-600\/30:hover{--tw-gradient-to:#9810fa4d;--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))}@supports (color:color-mix(in lab,red,red)){.hover\:to-purple-600\/30:hover{--tw-gradient-to:color-mix(in oklab,var(--color-purple-600)30%,transparent)}}.hover\:to-purple-700:hover{--tw-gradient-to:var(--color-purple-700);--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))}.hover\:to-red-800:hover{--tw-gradient-to:var(--color-red-800);--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))}.hover\:to-secondary\/20:hover{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-secondary)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:to-secondary\/20:hover{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-secondary))20%,transparent)}}.hover\:to-secondary\/50:hover{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-secondary)))50%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:to-secondary\/50:hover{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-secondary))50%,transparent)}}.hover\:to-success\/20:hover{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-success)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:to-success\/20:hover{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-success))20%,transparent)}}.hover\:to-warning\/20:hover{--tw-gradient-to:color-mix(in srgb,hsl(hsl(var(--color-warning)))20%,transparent);--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))}@supports (color:color-mix(in lab,red,red)){.hover\:to-warning\/20:hover{--tw-gradient-to:color-mix(in oklab,hsl(var(--color-warning))20%,transparent)}}.hover\:text-base:hover{color:hsl(var(--color-base))}.hover\:text-base\/80:hover{color:color-mix(in srgb,hsl(hsl(var(--color-base)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:text-base\/80:hover{color:color-mix(in oklab,hsl(var(--color-base))80%,transparent)}}.hover\:text-blue-200:hover{color:var(--color-blue-200)}.hover\:text-blue-300:hover{color:var(--color-blue-300)}.hover\:text-blue-500:hover{color:var(--color-blue-500)}.hover\:text-blue-600:hover{color:var(--color-blue-600)}.hover\:text-blue-700:hover{color:var(--color-blue-700)}.hover\:text-blue-900:hover{color:var(--color-blue-900)}.hover\:text-error:hover{color:hsl(var(--color-error))}.hover\:text-gray-200:hover{color:var(--color-gray-200)}.hover\:text-gray-500:hover{color:var(--color-gray-500)}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-gray-800:hover{color:var(--color-gray-800)}.hover\:text-green-700:hover{color:var(--color-green-700)}.hover\:text-indigo-500:hover{color:var(--color-indigo-500)}.hover\:text-indigo-800:hover{color:var(--color-indigo-800)}.hover\:text-orange-700:hover{color:var(--color-orange-700)}.hover\:text-primary:hover{color:hsl(var(--color-primary))}.hover\:text-primary\/80:hover{color:color-mix(in srgb,hsl(hsl(var(--color-primary)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab,hsl(var(--color-primary))80%,transparent)}}.hover\:text-red-300:hover{color:var(--color-red-300)}.hover\:text-red-500:hover{color:var(--color-red-500)}.hover\:text-red-700:hover{color:var(--color-red-700)}.hover\:text-red-800:hover{color:var(--color-red-800)}.hover\:text-secondary:hover{color:hsl(var(--color-secondary))}.hover\:text-warning\/80:hover{color:color-mix(in srgb,hsl(hsl(var(--color-warning)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:text-warning\/80:hover{color:color-mix(in oklab,hsl(var(--color-warning))80%,transparent)}}.hover\:text-white:hover{color:var(--color-white)}.hover\:text-yellow-100:hover{color:var(--color-yellow-100)}.hover\:text-yellow-200:hover{color:var(--color-yellow-200)}.hover\:text-yellow-600:hover{color:var(--color-yellow-600)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-2xl:hover{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-blue-500\/30:hover{--tw-shadow-color:#3080ff4d}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-blue-500\/30:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-blue-500)30%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-emerald-500\/30:hover{--tw-shadow-color:#00bb7f4d}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-emerald-500\/30:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-emerald-500)30%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-error\/20:hover{--tw-shadow-color:color-mix(in srgb,hsl(hsl(var(--color-error)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-error\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,hsl(var(--color-error))20%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-info\/20:hover{--tw-shadow-color:color-mix(in srgb,hsl(hsl(var(--color-info)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-info\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,hsl(var(--color-info))20%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-orange-500\/20:hover{--tw-shadow-color:#fe6e0033}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-orange-500\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-orange-500)20%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-primary\/20:hover{--tw-shadow-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-primary\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,hsl(var(--color-primary))20%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-primary\/30:hover{--tw-shadow-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-primary\/30:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,hsl(var(--color-primary))30%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-purple-500\/20:hover{--tw-shadow-color:#ac4bff33}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-purple-500\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-purple-500)20%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-purple-500\/30:hover{--tw-shadow-color:#ac4bff4d}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-purple-500\/30:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-purple-500)30%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-secondary\/20:hover{--tw-shadow-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-secondary\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,hsl(var(--color-secondary))20%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-secondary\/30:hover{--tw-shadow-color:color-mix(in srgb,hsl(hsl(var(--color-secondary)))30%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-secondary\/30:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,hsl(var(--color-secondary))30%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-success\/20:hover{--tw-shadow-color:color-mix(in srgb,hsl(hsl(var(--color-success)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-success\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,hsl(var(--color-success))20%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:shadow-warning\/20:hover{--tw-shadow-color:color-mix(in srgb,hsl(hsl(var(--color-warning)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-warning\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,hsl(var(--color-warning))20%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\:blur-none:hover{--tw-blur: ;filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.hover\:file\:bg-blue-100:hover::file-selector-button{background-color:var(--color-blue-100)}.hover\:file\:bg-blue-700:hover::file-selector-button{background-color:var(--color-blue-700)}.hover\:file\:bg-purple-700:hover::file-selector-button{background-color:var(--color-purple-700)}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:border-indigo-300:focus{border-color:var(--color-indigo-300)}.focus\:border-indigo-500:focus{border-color:var(--color-indigo-500)}.focus\:border-primary:focus{border-color:hsl(var(--color-primary))}.focus\:border-red-500\/50:focus{border-color:#fb2c3680}@supports (color:color-mix(in lab,red,red)){.focus\:border-red-500\/50:focus{border-color:color-mix(in oklab,var(--color-red-500)50%,transparent)}}.focus\:border-secondary:focus{border-color:hsl(var(--color-secondary))}.focus\:border-transparent:focus{border-color:#0000}.focus\:bg-blue-700:focus{background-color:var(--color-blue-700)}.focus\:bg-white:focus{background-color:var(--color-white)}.focus\:text-blue-600:focus{color:var(--color-blue-600)}.focus\:ring:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-4:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:ring-gray-500\/50:focus{--tw-ring-color:#6a728280}@supports (color:color-mix(in lab,red,red)){.focus\:ring-gray-500\/50:focus{--tw-ring-color:color-mix(in oklab,var(--color-gray-500)50%,transparent)}}.focus\:ring-indigo-200:focus{--tw-ring-color:var(--color-indigo-200)}.focus\:ring-indigo-500:focus{--tw-ring-color:var(--color-indigo-500)}.focus\:ring-neutral-800:focus{--tw-ring-color:var(--color-neutral-800)}.focus\:ring-primary:focus{--tw-ring-color:hsl(var(--color-primary))}.focus\:ring-primary\/20:focus{--tw-ring-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))20%,transparent)}@supports (color:color-mix(in lab,red,red)){.focus\:ring-primary\/20:focus{--tw-ring-color:color-mix(in oklab,hsl(var(--color-primary))20%,transparent)}}.focus\:ring-primary\/50:focus{--tw-ring-color:color-mix(in srgb,hsl(hsl(var(--color-primary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.focus\:ring-primary\/50:focus{--tw-ring-color:color-mix(in oklab,hsl(var(--color-primary))50%,transparent)}}.focus\:ring-purple-500:focus{--tw-ring-color:var(--color-purple-500)}.focus\:ring-red-500\/50:focus{--tw-ring-color:#fb2c3680}@supports (color:color-mix(in lab,red,red)){.focus\:ring-red-500\/50:focus{--tw-ring-color:color-mix(in oklab,var(--color-red-500)50%,transparent)}}.focus\:ring-secondary:focus{--tw-ring-color:hsl(var(--color-secondary))}.focus\:ring-white\/50:focus{--tw-ring-color:#ffffff80}@supports (color:color-mix(in lab,red,red)){.focus\:ring-white\/50:focus{--tw-ring-color:color-mix(in oklab,var(--color-white)50%,transparent)}}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:ring-offset-gray-800:focus{--tw-ring-offset-color:var(--color-gray-800)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:bg-gray-100:focus-visible{background-color:var(--color-gray-100)}.active\:bg-blue-900:active{background-color:var(--color-blue-900)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-background-secondary\/50:disabled{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.disabled\:bg-background-secondary\/50:disabled{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))50%,transparent)}}.disabled\:bg-gray-400:disabled{background-color:var(--color-gray-400)}.disabled\:bg-secondary:disabled{background-color:hsl(var(--color-secondary))}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (hover:hover){.disabled\:hover\:border-gray-200:disabled:hover{border-color:var(--color-gray-200)}.disabled\:hover\:bg-white:disabled:hover{background-color:var(--color-white)}}@media (min-width:40rem){.sm\:col-auto{grid-column:auto}.sm\:col-span-3{grid-column:span 3/span 3}.sm\:mt-0{margin-top:calc(var(--spacing)*0)}.sm\:ml-auto{margin-left:auto}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:h-36{height:calc(var(--spacing)*36)}.sm\:h-48{height:calc(var(--spacing)*48)}.sm\:h-60{height:calc(var(--spacing)*60)}.sm\:h-\[200px\]{height:200px}.sm\:h-\[400px\]{height:400px}.sm\:w-36{width:calc(var(--spacing)*36)}.sm\:w-48{width:calc(var(--spacing)*48)}.sm\:w-60{width:calc(var(--spacing)*60)}.sm\:w-72{width:calc(var(--spacing)*72)}.sm\:w-96{width:calc(var(--spacing)*96)}.sm\:w-\[200px\]{width:200px}.sm\:w-\[400px\]{width:400px}.sm\:w-auto{width:auto}.sm\:max-w-md{max-width:var(--container-md)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:justify-center{justify-content:center}:where(.sm\:space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*0)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*0)*calc(1 - var(--tw-space-y-reverse)))}:where(.sm\:space-x-5>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*5)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*5)*calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius-lg)}.sm\:p-0{padding:calc(var(--spacing)*0)}.sm\:p-6{padding:calc(var(--spacing)*6)}.sm\:p-8{padding:calc(var(--spacing)*8)}.sm\:p-12{padding:calc(var(--spacing)*12)}.sm\:px-5{padding-inline:calc(var(--spacing)*5)}.sm\:px-6{padding-inline:calc(var(--spacing)*6)}.sm\:px-14{padding-inline:calc(var(--spacing)*14)}.sm\:pt-0{padding-top:calc(var(--spacing)*0)}.sm\:text-left{text-align:left}.sm\:text-right{text-align:right}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-base{color:hsl(var(--color-base))}.sm\:mix-blend-screen{mix-blend-mode:screen}.sm\:blur-\[90px\]{--tw-blur:blur(90px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.sm\:blur-\[100px\]{--tw-blur:blur(100px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.sm\:blur-\[120px\]{--tw-blur:blur(120px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}}@media (min-width:48rem){.md\:top-20{top:calc(var(--spacing)*20)}.md\:right-auto{right:auto}.md\:left-8{left:calc(var(--spacing)*8)}.md\:order-1{order:1}.md\:order-2{order:2}.md\:order-last{order:9999}.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-3{grid-column:span 3/span 3}.md\:mx-auto{margin-inline:auto}.md\:mt-0{margin-top:calc(var(--spacing)*0)}.md\:mt-4{margin-top:calc(var(--spacing)*4)}.md\:mb-0{margin-bottom:calc(var(--spacing)*0)}.md\:ml-64{margin-left:calc(var(--spacing)*64)}.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:inline{display:inline}.md\:inline-block{display:inline-block}.md\:h-14{height:calc(var(--spacing)*14)}.md\:h-16{height:calc(var(--spacing)*16)}.md\:h-60{height:calc(var(--spacing)*60)}.md\:h-96{height:calc(var(--spacing)*96)}.md\:w-\[420px\]{width:420px}.md\:w-auto{width:auto}.md\:w-fit{width:fit-content}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-col{flex-direction:column}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:items-start{align-items:flex-start}.md\:justify-between{justify-content:space-between}.md\:gap-5{gap:calc(var(--spacing)*5)}.md\:gap-8{gap:calc(var(--spacing)*8)}:where(.md\:space-x-6>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*6)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-x-reverse)))}.md\:p-8{padding:calc(var(--spacing)*8)}.md\:px-4{padding-inline:calc(var(--spacing)*4)}.md\:px-8{padding-inline:calc(var(--spacing)*8)}.md\:text-left{text-align:left}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-9{grid-column:span 9/span 9}.lg\:mt-72{margin-top:calc(var(--spacing)*72)}.lg\:mb-0{margin-bottom:calc(var(--spacing)*0)}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:inline{display:inline}.lg\:h-72{height:calc(var(--spacing)*72)}.lg\:h-96{height:calc(var(--spacing)*96)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:justify-start{justify-content:flex-start}.lg\:gap-6{gap:calc(var(--spacing)*6)}.lg\:gap-12{gap:calc(var(--spacing)*12)}.lg\:self-end{align-self:flex-end}.lg\:p-6{padding:calc(var(--spacing)*6)}.lg\:p-8{padding:calc(var(--spacing)*8)}.lg\:p-10{padding:calc(var(--spacing)*10)}.lg\:p-12{padding:calc(var(--spacing)*12)}.lg\:px-4{padding-inline:calc(var(--spacing)*4)}.lg\:px-8{padding-inline:calc(var(--spacing)*8)}.lg\:px-10{padding-inline:calc(var(--spacing)*10)}.lg\:px-16{padding-inline:calc(var(--spacing)*16)}.lg\:py-2{padding-block:calc(var(--spacing)*2)}.lg\:py-6{padding-block:calc(var(--spacing)*6)}.lg\:py-24{padding-block:calc(var(--spacing)*24)}.lg\:py-28{padding-block:calc(var(--spacing)*28)}.lg\:text-left{text-align:left}.lg\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.lg\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.lg\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.lg\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.lg\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media (min-width:80rem){.xl\:col-span-2{grid-column:span 2/span 2}.xl\:col-span-3{grid-column:span 3/span 3}.xl\:col-span-6{grid-column:span 6/span 6}.xl\:col-span-7{grid-column:span 7/span 7}.xl\:max-w-\[40\%\]{max-width:40%}.xl\:max-w-\[60\%\]{max-width:60%}.xl\:max-w-\[700px\]{max-width:700px}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.rtl\:right-0:where(:dir(rtl),[dir=rtl],[dir=rtl] *){right:calc(var(--spacing)*0)}.rtl\:ml-0:where(:dir(rtl),[dir=rtl],[dir=rtl] *){margin-left:calc(var(--spacing)*0)}.rtl\:ml-2:where(:dir(rtl),[dir=rtl],[dir=rtl] *){margin-left:calc(var(--spacing)*2)}@media (min-width:48rem){.rtl\:md\:mr-64:where(:dir(rtl),[dir=rtl],[dir=rtl] *){margin-right:calc(var(--spacing)*64)}}.dark\:block:where(.dark,.dark *){display:block}.dark\:hidden:where(.dark,.dark *){display:none}:where(.dark\:divide-gray-700:where(.dark,.dark *)>:not(:last-child)){border-color:var(--color-gray-700)}.dark\:border-blue-600:where(.dark,.dark *){border-color:var(--color-blue-600)}.dark\:border-blue-800:where(.dark,.dark *){border-color:var(--color-blue-800)}.dark\:border-blue-800\/30:where(.dark,.dark *){border-color:#193cb84d}@supports (color:color-mix(in lab,red,red)){.dark\:border-blue-800\/30:where(.dark,.dark *){border-color:color-mix(in oklab,var(--color-blue-800)30%,transparent)}}.dark\:border-blue-800\/50:where(.dark,.dark *){border-color:#193cb880}@supports (color:color-mix(in lab,red,red)){.dark\:border-blue-800\/50:where(.dark,.dark *){border-color:color-mix(in oklab,var(--color-blue-800)50%,transparent)}}.dark\:border-gray-600:where(.dark,.dark *){border-color:var(--color-gray-600)}.dark\:border-gray-700:where(.dark,.dark *){border-color:var(--color-gray-700)}.dark\:border-gray-800:where(.dark,.dark *){border-color:var(--color-gray-800)}.dark\:border-green-800:where(.dark,.dark *){border-color:var(--color-green-800)}.dark\:border-neutral\/50:where(.dark,.dark *){border-color:color-mix(in srgb,hsl(hsl(var(--color-neutral)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.dark\:border-neutral\/50:where(.dark,.dark *){border-color:color-mix(in oklab,hsl(var(--color-neutral))50%,transparent)}}.dark\:border-purple-800:where(.dark,.dark *){border-color:var(--color-purple-800)}.dark\:border-red-800:where(.dark,.dark *){border-color:var(--color-red-800)}.dark\:border-red-800\/50:where(.dark,.dark *){border-color:#9f071280}@supports (color:color-mix(in lab,red,red)){.dark\:border-red-800\/50:where(.dark,.dark *){border-color:color-mix(in oklab,var(--color-red-800)50%,transparent)}}.dark\:bg-background:where(.dark,.dark *){background-color:hsl(var(--color-background))}.dark\:bg-background-secondary\/50:where(.dark,.dark *){background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-background-secondary\/50:where(.dark,.dark *){background-color:color-mix(in oklab,hsl(var(--color-background-secondary))50%,transparent)}}.dark\:bg-background-secondary\/60:where(.dark,.dark *){background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))60%,transparent)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-background-secondary\/60:where(.dark,.dark *){background-color:color-mix(in oklab,hsl(var(--color-background-secondary))60%,transparent)}}.dark\:bg-background-secondary\/80:where(.dark,.dark *){background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-background-secondary\/80:where(.dark,.dark *){background-color:color-mix(in oklab,hsl(var(--color-background-secondary))80%,transparent)}}.dark\:bg-black\/20:where(.dark,.dark *){background-color:#0003}@supports (color:color-mix(in lab,red,red)){.dark\:bg-black\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-black)20%,transparent)}}.dark\:bg-blue-500\/20:where(.dark,.dark *){background-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-500\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.dark\:bg-blue-900:where(.dark,.dark *){background-color:var(--color-blue-900)}.dark\:bg-blue-900\/20:where(.dark,.dark *){background-color:#1c398e33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-blue-900)20%,transparent)}}.dark\:bg-blue-900\/30:where(.dark,.dark *){background-color:#1c398e4d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/30:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-blue-900)30%,transparent)}}.dark\:bg-gray-600:where(.dark,.dark *){background-color:var(--color-gray-600)}.dark\:bg-gray-700:where(.dark,.dark *){background-color:var(--color-gray-700)}.dark\:bg-gray-700\/50:where(.dark,.dark *){background-color:#36415380}@supports (color:color-mix(in lab,red,red)){.dark\:bg-gray-700\/50:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-gray-700)50%,transparent)}}.dark\:bg-gray-800:where(.dark,.dark *){background-color:var(--color-gray-800)}.dark\:bg-gray-800\/25:where(.dark,.dark *){background-color:#1e293940}@supports (color:color-mix(in lab,red,red)){.dark\:bg-gray-800\/25:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-gray-800)25%,transparent)}}.dark\:bg-gray-800\/50:where(.dark,.dark *){background-color:#1e293980}@supports (color:color-mix(in lab,red,red)){.dark\:bg-gray-800\/50:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-gray-800)50%,transparent)}}.dark\:bg-gray-900:where(.dark,.dark *){background-color:var(--color-gray-900)}.dark\:bg-green-900\/20:where(.dark,.dark *){background-color:#0d542b33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-green-900)20%,transparent)}}.dark\:bg-orange-900\/20:where(.dark,.dark *){background-color:#7e2a0c33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-orange-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-orange-900)20%,transparent)}}.dark\:bg-purple-900\/20:where(.dark,.dark *){background-color:#59168b33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-purple-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-purple-900)20%,transparent)}}.dark\:bg-red-900\/20:where(.dark,.dark *){background-color:#82181a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-red-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-red-900)20%,transparent)}}.dark\:bg-red-900\/30:where(.dark,.dark *){background-color:#82181a4d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-red-900\/30:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-red-900)30%,transparent)}}.dark\:bg-white\/5:where(.dark,.dark *){background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/5:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.dark\:from-blue-900\/10:where(.dark,.dark *){--tw-gradient-from:#1c398e1a;--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))}@supports (color:color-mix(in lab,red,red)){.dark\:from-blue-900\/10:where(.dark,.dark *){--tw-gradient-from:color-mix(in oklab,var(--color-blue-900)10%,transparent)}}.dark\:from-gray-700\/30:where(.dark,.dark *){--tw-gradient-from:#3641534d;--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))}@supports (color:color-mix(in lab,red,red)){.dark\:from-gray-700\/30:where(.dark,.dark *){--tw-gradient-from:color-mix(in oklab,var(--color-gray-700)30%,transparent)}}.dark\:from-gray-900:where(.dark,.dark *){--tw-gradient-from:var(--color-gray-900);--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))}.dark\:from-purple-900\/20:where(.dark,.dark *){--tw-gradient-from:#59168b33;--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))}@supports (color:color-mix(in lab,red,red)){.dark\:from-purple-900\/20:where(.dark,.dark *){--tw-gradient-from:color-mix(in oklab,var(--color-purple-900)20%,transparent)}}.dark\:to-gray-800:where(.dark,.dark *){--tw-gradient-to:var(--color-gray-800);--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))}.dark\:to-gray-800\/30:where(.dark,.dark *){--tw-gradient-to:#1e29394d;--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))}@supports (color:color-mix(in lab,red,red)){.dark\:to-gray-800\/30:where(.dark,.dark *){--tw-gradient-to:color-mix(in oklab,var(--color-gray-800)30%,transparent)}}.dark\:to-indigo-900\/10:where(.dark,.dark *){--tw-gradient-to:#312c851a;--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))}@supports (color:color-mix(in lab,red,red)){.dark\:to-indigo-900\/10:where(.dark,.dark *){--tw-gradient-to:color-mix(in oklab,var(--color-indigo-900)10%,transparent)}}.dark\:to-pink-900\/20:where(.dark,.dark *){--tw-gradient-to:#86104333;--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))}@supports (color:color-mix(in lab,red,red)){.dark\:to-pink-900\/20:where(.dark,.dark *){--tw-gradient-to:color-mix(in oklab,var(--color-pink-900)20%,transparent)}}.dark\:fill-white:where(.dark,.dark *){fill:var(--color-white)}.dark\:text-base:where(.dark,.dark *){color:hsl(var(--color-base))}.dark\:text-base\/40:where(.dark,.dark *){color:color-mix(in srgb,hsl(hsl(var(--color-base)))40%,transparent)}@supports (color:color-mix(in lab,red,red)){.dark\:text-base\/40:where(.dark,.dark *){color:color-mix(in oklab,hsl(var(--color-base))40%,transparent)}}.dark\:text-base\/50:where(.dark,.dark *){color:color-mix(in srgb,hsl(hsl(var(--color-base)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.dark\:text-base\/50:where(.dark,.dark *){color:color-mix(in oklab,hsl(var(--color-base))50%,transparent)}}.dark\:text-blue-100:where(.dark,.dark *){color:var(--color-blue-100)}.dark\:text-blue-200:where(.dark,.dark *){color:var(--color-blue-200)}.dark\:text-blue-300:where(.dark,.dark *){color:var(--color-blue-300)}.dark\:text-blue-400:where(.dark,.dark *){color:var(--color-blue-400)}.dark\:text-gray-100:where(.dark,.dark *){color:var(--color-gray-100)}.dark\:text-gray-200:where(.dark,.dark *){color:var(--color-gray-200)}.dark\:text-gray-300:where(.dark,.dark *){color:var(--color-gray-300)}.dark\:text-gray-400:where(.dark,.dark *){color:var(--color-gray-400)}.dark\:text-gray-500:where(.dark,.dark *){color:var(--color-gray-500)}.dark\:text-green-200:where(.dark,.dark *){color:var(--color-green-200)}.dark\:text-green-400:where(.dark,.dark *){color:var(--color-green-400)}.dark\:text-indigo-400:where(.dark,.dark *){color:var(--color-indigo-400)}.dark\:text-orange-200:where(.dark,.dark *){color:var(--color-orange-200)}.dark\:text-orange-400:where(.dark,.dark *){color:var(--color-orange-400)}.dark\:text-purple-200:where(.dark,.dark *){color:var(--color-purple-200)}.dark\:text-purple-300:where(.dark,.dark *){color:var(--color-purple-300)}.dark\:text-purple-400:where(.dark,.dark *){color:var(--color-purple-400)}.dark\:text-red-200:where(.dark,.dark *){color:var(--color-red-200)}.dark\:text-red-300:where(.dark,.dark *){color:var(--color-red-300)}.dark\:text-red-400:where(.dark,.dark *){color:var(--color-red-400)}.dark\:text-white:where(.dark,.dark *){color:var(--color-white)}.dark\:text-yellow-400:where(.dark,.dark *){color:var(--color-yellow-400)}.dark\:placeholder-gray-400:where(.dark,.dark *)::placeholder{color:var(--color-gray-400)}.dark\:ring-gray-800:where(.dark,.dark *){--tw-ring-color:var(--color-gray-800)}.dark\:ring-white\/10:where(.dark,.dark *){--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:ring-white\/10:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.dark\:prose-invert:where(.dark,.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.dark\:file\:bg-blue-900:where(.dark,.dark *)::file-selector-button{background-color:var(--color-blue-900)}.dark\:file\:text-blue-300:where(.dark,.dark *)::file-selector-button{color:var(--color-blue-300)}@media (hover:hover){.dark\:hover\:border-blue-500:where(.dark,.dark *):hover{border-color:var(--color-blue-500)}.dark\:hover\:border-green-500:where(.dark,.dark *):hover{border-color:var(--color-green-500)}.dark\:hover\:border-red-500:where(.dark,.dark *):hover{border-color:var(--color-red-500)}.dark\:hover\:border-yellow-500:where(.dark,.dark *):hover{border-color:var(--color-yellow-500)}.dark\:hover\:bg-blue-900\/20:where(.dark,.dark *):hover{background-color:#1c398e33}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-blue-900\/20:where(.dark,.dark *):hover{background-color:color-mix(in oklab,var(--color-blue-900)20%,transparent)}}.dark\:hover\:bg-gray-500:where(.dark,.dark *):hover{background-color:var(--color-gray-500)}.dark\:hover\:bg-gray-600:where(.dark,.dark *):hover{background-color:var(--color-gray-600)}.dark\:hover\:bg-gray-700:where(.dark,.dark *):hover{background-color:var(--color-gray-700)}.dark\:hover\:bg-gray-700\/50:where(.dark,.dark *):hover{background-color:#36415380}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-gray-700\/50:where(.dark,.dark *):hover{background-color:color-mix(in oklab,var(--color-gray-700)50%,transparent)}}.dark\:hover\:bg-gray-800:where(.dark,.dark *):hover{background-color:var(--color-gray-800)}.dark\:hover\:bg-green-900\/20:where(.dark,.dark *):hover{background-color:#0d542b33}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-green-900\/20:where(.dark,.dark *):hover{background-color:color-mix(in oklab,var(--color-green-900)20%,transparent)}}.dark\:hover\:bg-purple-900\/30:where(.dark,.dark *):hover{background-color:#59168b4d}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-purple-900\/30:where(.dark,.dark *):hover{background-color:color-mix(in oklab,var(--color-purple-900)30%,transparent)}}.dark\:hover\:bg-red-900\/20:where(.dark,.dark *):hover{background-color:#82181a33}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-red-900\/20:where(.dark,.dark *):hover{background-color:color-mix(in oklab,var(--color-red-900)20%,transparent)}}.dark\:hover\:bg-white\/5:where(.dark,.dark *):hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-white\/5:where(.dark,.dark *):hover{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.dark\:hover\:bg-yellow-900\/20:where(.dark,.dark *):hover{background-color:#733e0a33}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-yellow-900\/20:where(.dark,.dark *):hover{background-color:color-mix(in oklab,var(--color-yellow-900)20%,transparent)}}.dark\:hover\:text-blue-100:where(.dark,.dark *):hover{color:var(--color-blue-100)}.dark\:hover\:text-blue-300:where(.dark,.dark *):hover{color:var(--color-blue-300)}.dark\:hover\:text-blue-400:where(.dark,.dark *):hover{color:var(--color-blue-400)}.dark\:hover\:text-gray-200:where(.dark,.dark *):hover{color:var(--color-gray-200)}.dark\:hover\:text-gray-300:where(.dark,.dark *):hover{color:var(--color-gray-300)}.dark\:hover\:text-indigo-300:where(.dark,.dark *):hover{color:var(--color-indigo-300)}.dark\:hover\:text-red-300:where(.dark,.dark *):hover{color:var(--color-red-300)}}.dark\:focus\:bg-gray-600:where(.dark,.dark *):focus{background-color:var(--color-gray-600)}.dark\:focus-visible\:bg-white\/5:where(.dark,.dark *):focus-visible{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:bg-white\/5:where(.dark,.dark *):focus-visible{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}@media (hover:hover){.dark\:disabled\:hover\:border-gray-600:where(.dark,.dark *):disabled:hover{border-color:var(--color-gray-600)}.dark\:disabled\:hover\:bg-background-secondary\/50:where(.dark,.dark *):disabled:hover{background-color:color-mix(in srgb,hsl(hsl(var(--color-background-secondary)))50%,transparent)}@supports (color:color-mix(in lab,red,red)){.dark\:disabled\:hover\:bg-background-secondary\/50:where(.dark,.dark *):disabled:hover{background-color:color-mix(in oklab,hsl(var(--color-background-secondary))50%,transparent)}}}.prose-headings\:text-base :where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *)){color:hsl(var(--color-base))}.prose-p\:text-base\/60 :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){color:color-mix(in srgb,hsl(hsl(var(--color-base)))60%,transparent)}@supports (color:color-mix(in lab,red,red)){.prose-p\:text-base\/60 :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){color:color-mix(in oklab,hsl(var(--color-base))60%,transparent)}}.prose-a\:text-primary :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:hsl(var(--color-primary))}.prose-a\:no-underline :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}@media (hover:hover){.hover\:prose-a\:text-primary\/80:hover :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:color-mix(in srgb,hsl(hsl(var(--color-primary)))80%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:prose-a\:text-primary\/80:hover :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:color-mix(in oklab,hsl(var(--color-primary))80%,transparent)}}.hover\:prose-a\:underline:hover :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:underline}}.\[\&\:\:-moz-range-thumb\]\:h-5::-moz-range-thumb{height:calc(var(--spacing)*5)}.\[\&\:\:-moz-range-thumb\]\:w-5::-moz-range-thumb{width:calc(var(--spacing)*5)}.\[\&\:\:-moz-range-thumb\]\:rounded-full::-moz-range-thumb{border-radius:3.40282e38px}.\[\&\:\:-moz-range-thumb\]\:border-none::-moz-range-thumb{--tw-border-style:none;border-style:none}.\[\&\:\:-moz-range-thumb\]\:bg-base::-moz-range-thumb{background-color:hsl(var(--color-base))}.\[\&\:\:-moz-range-thumb\]\:shadow-none::-moz-range-thumb{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\[\&\:\:-moz-range-thumb\]\:focus\:ring-0::-moz-range-thumb:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\[\&\:\:-webkit-slider-thumb\]\:h-5::-webkit-slider-thumb{height:calc(var(--spacing)*5)}.\[\&\:\:-webkit-slider-thumb\]\:w-5::-webkit-slider-thumb{width:calc(var(--spacing)*5)}.\[\&\:\:-webkit-slider-thumb\]\:appearance-none::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none}.\[\&\:\:-webkit-slider-thumb\]\:rounded-full::-webkit-slider-thumb{border-radius:3.40282e38px}.\[\&\:\:-webkit-slider-thumb\]\:bg-white::-webkit-slider-thumb{background-color:var(--color-white)}.\[\&\:\:-webkit-slider-thumb\]\:shadow-none::-webkit-slider-thumb{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\[\&\:\:-webkit-slider-thumb\]\:focus\:ring-0::-webkit-slider-thumb:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\[\&\>option\]\:bg-background-secondary>option{background-color:hsl(var(--color-background-secondary))}.dark\:\[\&\>option\]\:bg-gray-800:where(.dark,.dark *)>option{background-color:var(--color-gray-800)}.dark\:\[\&\>option\]\:text-gray-100:where(.dark,.dark *)>option{color:var(--color-gray-100)}.\[\&\>strong\]\:mb-0\.5>strong{margin-bottom:calc(var(--spacing)*.5)}.\[\&\>strong\]\:block>strong{display:block}.\[\&\>strong\]\:font-semibold>strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&\>strong\]\:text-blue-700>strong{color:var(--color-blue-700)}.\[\&\>strong\]\:dark\:text-blue-300>strong:where(.dark,.dark *){color:var(--color-blue-300)}.\[\&\[x-cloak\]\]\:hidden[x-cloak]{display:none}}.EasyMDEContainer .editor-statusbar{display:none}.EasyMDEContainer .editor-toolbar .separator{border-style:none;width:.25rem;margin:0!important}.EasyMDEContainer .cm-s-easymde .cm-formatting-code+.cm-comment:not(.cm-formatting-code){background-color:hsl(var(--color-background-secondary)/var(--tw-text-opacity));color:hsl(var(--color-base)/var(--tw-text-opacity))}.EasyMDEContainer .cm-s-easymde .cm-comment{background-image:none}.EasyMDEContainer .cm-s-easymde .cm-formatting-code-block,.EasyMDEContainer .cm-s-easymde .cm-tab+.cm-comment{border-style:var(--tw-border-style);border-width:0;border-color:hsl(var(--color-neutral));background-color:hsl(var(--color-background-secondary));color:inherit}.EasyMDEContainer .CodeMirror{background-color:hsl(var(--color-background-secondary));padding-inline:calc(var(--spacing)*3);padding-block:calc(var(--spacing)*1.5);color:inherit;border-bottom-right-radius:var(--radius-lg)!important;border-bottom-left-radius:var(--radius-lg)!important;border-style:var(--tw-border-style)!important;border-width:0!important}.EasyMDEContainer .CodeMirror-scroll{height:auto}.EasyMDEContainer .editor-toolbar{column-gap:calc(var(--spacing)*1);border-radius:0;border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:0;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:hsl(var(--color-neutral));background-color:hsl(var(--color-background-secondary));padding-inline:calc(var(--spacing)*2.5);padding-block:calc(var(--spacing)*2);display:flex;overflow-x:auto}.EasyMDEContainer .editor-toolbar button{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8);cursor:pointer;border-radius:var(--radius-lg);--tw-border-style:none;padding:calc(var(--spacing)*0);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:75ms;border-style:none;place-content:center;transition-duration:75ms;display:grid}@media (hover:hover){.EasyMDEContainer .editor-toolbar button:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.EasyMDEContainer .editor-toolbar button:hover{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}}.EasyMDEContainer .editor-toolbar button:focus-visible{background-color:var(--color-gray-50)}.EasyMDEContainer .editor-toolbar button:where(.dark,.dark *):focus-visible{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.EasyMDEContainer .editor-toolbar button:where(.dark,.dark *):focus-visible{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.EasyMDEContainer .editor-toolbar button.active{background-color:hsl(var(--color-neutral))}.EasyMDEContainer .editor-toolbar button:before{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4);background-color:hsl(var(--color-background-secondary));content:"";background-color:hsl(var(--color-base));width:1rem;height:1rem;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.EasyMDEContainer .editor-toolbar .bold:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M321.1 242.4c19-22.3 30.9-50.8 30.9-82.4 0-70.59-57.42-128-128-128l-192 .01c-17.67 0-32 14.31-32 32s14.33 32 32 32h16v320H32c-17.67 0-32 14.31-32 32s14.33 32 32 32h224c70.58 0 128-57.41 128-128 0-46.71-25.4-87.21-62.9-109.61zM112 96.01h112c35.3 0 64 28.72 64 64s-28.7 64-64 64H112v-128zM256 416H112V288h144c35.3 0 64 28.71 64 63.1S291.3 416 256 416z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M321.1 242.4c19-22.3 30.9-50.8 30.9-82.4 0-70.59-57.42-128-128-128l-192 .01c-17.67 0-32 14.31-32 32s14.33 32 32 32h16v320H32c-17.67 0-32 14.31-32 32s14.33 32 32 32h224c70.58 0 128-57.41 128-128 0-46.71-25.4-87.21-62.9-109.61zM112 96.01h112c35.3 0 64 28.72 64 64s-28.7 64-64 64H112v-128zM256 416H112V288h144c35.3 0 64 28.71 64 63.1S291.3 416 256 416z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .italic:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M384 64.01c0 17.69-14.31 32-32 32h-58.67l-133.3 320H224c17.69 0 32 14.31 32 32s-14.31 32-32 32H32c-17.69 0-32-14.31-32-32s14.31-32 32-32h58.67l133.3-320H160c-17.69 0-32-14.31-32-32s14.31-32 32-32h192c17.7 0 32 14.32 32 32z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M384 64.01c0 17.69-14.31 32-32 32h-58.67l-133.3 320H224c17.69 0 32 14.31 32 32s-14.31 32-32 32H32c-17.69 0-32-14.31-32-32s14.31-32 32-32h58.67l133.3-320H160c-17.69 0-32-14.31-32-32s14.31-32 32-32h192c17.7 0 32 14.32 32 32z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .strikethrough:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M332.2 319.9c17.22 12.17 22.33 26.51 18.61 48.21-3.031 17.59-10.88 29.34-24.72 36.99-35.44 19.75-108.5 11.96-186-19.68-16.34-6.686-35.03 1.156-41.72 17.53s1.188 35.05 17.53 41.71c31.75 12.93 95.69 35.37 157.6 35.37 29.62 0 58.81-5.156 83.72-18.96 30.81-17.09 50.44-45.46 56.72-82.11 3.998-23.27 2.168-42.58-3.488-59.05H332.2zm155.8-80-176.5-.03c-15.85-5.614-31.83-10.34-46.7-14.62-85.47-24.62-110.9-39.05-103.7-81.33 2.5-14.53 10.16-25.96 22.72-34.03 20.47-13.15 64.06-23.84 155.4.343 17.09 4.53 34.59-5.654 39.13-22.74 4.531-17.09-5.656-34.59-22.75-39.12-91.31-24.18-160.7-21.62-206.3 7.654C121.8 73.72 103.6 101.1 98.09 133.1c-8.83 51.4 9.81 84.2 39.11 106.8H24c-13.25 0-24 10.75-24 23.1 0 13.25 10.75 23.1 24 23.1h464c13.25 0 24-10.75 24-23.1 0-12.3-10.7-23.1-24-23.1z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M332.2 319.9c17.22 12.17 22.33 26.51 18.61 48.21-3.031 17.59-10.88 29.34-24.72 36.99-35.44 19.75-108.5 11.96-186-19.68-16.34-6.686-35.03 1.156-41.72 17.53s1.188 35.05 17.53 41.71c31.75 12.93 95.69 35.37 157.6 35.37 29.62 0 58.81-5.156 83.72-18.96 30.81-17.09 50.44-45.46 56.72-82.11 3.998-23.27 2.168-42.58-3.488-59.05H332.2zm155.8-80-176.5-.03c-15.85-5.614-31.83-10.34-46.7-14.62-85.47-24.62-110.9-39.05-103.7-81.33 2.5-14.53 10.16-25.96 22.72-34.03 20.47-13.15 64.06-23.84 155.4.343 17.09 4.53 34.59-5.654 39.13-22.74 4.531-17.09-5.656-34.59-22.75-39.12-91.31-24.18-160.7-21.62-206.3 7.654C121.8 73.72 103.6 101.1 98.09 133.1c-8.83 51.4 9.81 84.2 39.11 106.8H24c-13.25 0-24 10.75-24 23.1 0 13.25 10.75 23.1 24 23.1h464c13.25 0 24-10.75 24-23.1 0-12.3-10.7-23.1-24-23.1z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .link:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M598.6 41.41C570.1 13.8 534.8 0 498.6 0s-72.36 13.8-99.96 41.41l-43.36 43.36c15.11 8.012 29.47 17.58 41.91 30.02 3.146 3.146 5.898 6.518 8.742 9.838l37.96-37.96C458.5 72.05 477.1 64 498.6 64c20.67 0 40.1 8.047 54.71 22.66 14.61 14.61 22.66 34.04 22.66 54.71s-8.049 40.1-22.66 54.71l-133.3 133.3C405.5 343.1 386 352 365.4 352s-40.1-8.048-54.71-22.66C296 314.7 287.1 295.3 287.1 274.6s8.047-40.1 22.66-54.71l4.44-3.49c-2.1-3.9-4.3-7.9-7.5-11.1-8.6-8.6-19.9-13.3-32.1-13.3-11.93 0-23.1 4.664-31.61 12.97-30.71 53.96-23.63 123.6 22.39 169.6C293 402.2 329.2 416 365.4 416c36.18 0 72.36-13.8 99.96-41.41L598.6 241.3c28.45-28.45 42.24-66.01 41.37-103.3-.87-35.9-14.57-69.84-41.37-96.59zM234 387.4l-37.9 37.9C181.5 439.1 162 448 141.4 448c-20.67 0-40.1-8.047-54.71-22.66-14.61-14.61-22.66-34.04-22.66-54.71s8.049-40.1 22.66-54.71l133.3-133.3C234.5 168 253.1 160 274.6 160s40.1 8.048 54.71 22.66c14.62 14.61 22.66 34.04 22.66 54.71s-8.047 40.1-22.66 54.71l-3.51 3.52c2.094 3.939 4.219 7.895 7.465 11.15C341.9 315.3 353.3 320 365.4 320c11.93 0 23.1-4.664 31.61-12.97 30.71-53.96 23.63-123.6-22.39-169.6C346.1 109.8 310.8 96 274.6 96c-36.2 0-72.3 13.8-99.9 41.4L41.41 270.7C13.81 298.3 0 334.48 0 370.66c0 36.18 13.8 72.36 41.41 99.97C69.01 498.2 105.2 512 141.4 512c36.18 0 72.36-13.8 99.96-41.41l43.36-43.36c-15.11-8.012-29.47-17.58-41.91-30.02-3.21-3.11-5.91-6.51-8.81-9.81z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M598.6 41.41C570.1 13.8 534.8 0 498.6 0s-72.36 13.8-99.96 41.41l-43.36 43.36c15.11 8.012 29.47 17.58 41.91 30.02 3.146 3.146 5.898 6.518 8.742 9.838l37.96-37.96C458.5 72.05 477.1 64 498.6 64c20.67 0 40.1 8.047 54.71 22.66 14.61 14.61 22.66 34.04 22.66 54.71s-8.049 40.1-22.66 54.71l-133.3 133.3C405.5 343.1 386 352 365.4 352s-40.1-8.048-54.71-22.66C296 314.7 287.1 295.3 287.1 274.6s8.047-40.1 22.66-54.71l4.44-3.49c-2.1-3.9-4.3-7.9-7.5-11.1-8.6-8.6-19.9-13.3-32.1-13.3-11.93 0-23.1 4.664-31.61 12.97-30.71 53.96-23.63 123.6 22.39 169.6C293 402.2 329.2 416 365.4 416c36.18 0 72.36-13.8 99.96-41.41L598.6 241.3c28.45-28.45 42.24-66.01 41.37-103.3-.87-35.9-14.57-69.84-41.37-96.59zM234 387.4l-37.9 37.9C181.5 439.1 162 448 141.4 448c-20.67 0-40.1-8.047-54.71-22.66-14.61-14.61-22.66-34.04-22.66-54.71s8.049-40.1 22.66-54.71l133.3-133.3C234.5 168 253.1 160 274.6 160s40.1 8.048 54.71 22.66c14.62 14.61 22.66 34.04 22.66 54.71s-8.047 40.1-22.66 54.71l-3.51 3.52c2.094 3.939 4.219 7.895 7.465 11.15C341.9 315.3 353.3 320 365.4 320c11.93 0 23.1-4.664 31.61-12.97 30.71-53.96 23.63-123.6-22.39-169.6C346.1 109.8 310.8 96 274.6 96c-36.2 0-72.3 13.8-99.9 41.4L41.41 270.7C13.81 298.3 0 334.48 0 370.66c0 36.18 13.8 72.36 41.41 99.97C69.01 498.2 105.2 512 141.4 512c36.18 0 72.36-13.8 99.96-41.41l43.36-43.36c-15.11-8.012-29.47-17.58-41.91-30.02-3.21-3.11-5.91-6.51-8.81-9.81z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .heading:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M0 64c0-17.7 14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32h-16v112h224V96h-16c-17.7 0-32-14.3-32-32s14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32h-16v320h16c17.7 0 32 14.3 32 32s-14.3 32-32 32h-96c-17.7 0-32-14.3-32-32s14.3-32 32-32h16V272H112v144h16c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h16V96H32C14.3 96 0 81.7 0 64z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M0 64c0-17.7 14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32h-16v112h224V96h-16c-17.7 0-32-14.3-32-32s14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32h-16v320h16c17.7 0 32 14.3 32 32s-14.3 32-32 32h-96c-17.7 0-32-14.3-32-32s14.3-32 32-32h16V272H112v144h16c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h16V96H32C14.3 96 0 81.7 0 64z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .quote:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M96 224c-11.28 0-21.95 2.3-32 5.9V224c0-35.3 28.7-64 64-64 17.67 0 32-14.33 32-32s-14.3-32-32-32C57.42 96 0 153.4 0 224v96c0 53.02 42.98 96 96 96s96-42.98 96-96-43-96-96-96zm256 0c-11.28 0-21.95 2.305-32 5.879V224c0-35.3 28.7-64 64-64 17.67 0 32-14.33 32-32s-14.33-32-32-32c-70.58 0-128 57.42-128 128v96c0 53.02 42.98 96 96 96s96-42.98 96-96-43-96-96-96z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M96 224c-11.28 0-21.95 2.3-32 5.9V224c0-35.3 28.7-64 64-64 17.67 0 32-14.33 32-32s-14.3-32-32-32C57.42 96 0 153.4 0 224v96c0 53.02 42.98 96 96 96s96-42.98 96-96-43-96-96-96zm256 0c-11.28 0-21.95 2.305-32 5.879V224c0-35.3 28.7-64 64-64 17.67 0 32-14.33 32-32s-14.33-32-32-32c-70.58 0-128 57.42-128 128v96c0 53.02 42.98 96 96 96s96-42.98 96-96-43-96-96-96z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .code:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M416 31.94C416 21.75 408.1 0 384.1 0c-13.98 0-26.87 9.072-30.89 23.18l-128 448a31.933 31.933 0 0 0-1.241 8.801C223.1 490.3 232 512 256 512c13.92 0 26.73-9.157 30.75-23.22l128-448c.85-2.97 1.25-5.93 1.25-8.84zM176 143.1c0-18.28-14.95-32-32-32-8.188 0-16.38 3.125-22.62 9.376l-112 112C3.125 239.6 0 247.8 0 255.1s3.125 17.3 9.375 23.5l112 112c6.225 6.3 14.425 8.5 22.625 8.5 17.05 0 32-13.73 32-32 0-8.188-3.125-16.38-9.375-22.63L77.25 255.1l89.38-89.38c6.27-5.42 9.37-13.52 9.37-22.62zm464 112c0-8.188-3.125-16.38-9.375-22.63l-112-112C512.4 115.1 504.2 111.1 496 111.1c-17.05 0-32 13.73-32 32 0 8.188 3.125 16.38 9.375 22.63l89.38 89.38-89.38 89.38C467.1 351.6 464 359.8 464 367.1c0 18.28 14.95 32 32 32 8.188 0 16.38-3.125 22.62-9.376l112-112C636.9 272.4 640 264.2 640 255.1z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M416 31.94C416 21.75 408.1 0 384.1 0c-13.98 0-26.87 9.072-30.89 23.18l-128 448a31.933 31.933 0 0 0-1.241 8.801C223.1 490.3 232 512 256 512c13.92 0 26.73-9.157 30.75-23.22l128-448c.85-2.97 1.25-5.93 1.25-8.84zM176 143.1c0-18.28-14.95-32-32-32-8.188 0-16.38 3.125-22.62 9.376l-112 112C3.125 239.6 0 247.8 0 255.1s3.125 17.3 9.375 23.5l112 112c6.225 6.3 14.425 8.5 22.625 8.5 17.05 0 32-13.73 32-32 0-8.188-3.125-16.38-9.375-22.63L77.25 255.1l89.38-89.38c6.27-5.42 9.37-13.52 9.37-22.62zm464 112c0-8.188-3.125-16.38-9.375-22.63l-112-112C512.4 115.1 504.2 111.1 496 111.1c-17.05 0-32 13.73-32 32 0 8.188 3.125 16.38 9.375 22.63l89.38 89.38-89.38 89.38C467.1 351.6 464 359.8 464 367.1c0 18.28 14.95 32 32 32 8.188 0 16.38-3.125 22.62-9.376l112-112C636.9 272.4 640 264.2 640 255.1z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .unordered-list:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M16 96c0-26.51 21.49-48 48-48s48 21.49 48 48c0 26.5-21.49 48-48 48s-48-21.5-48-48zm464-32c17.7 0 32 14.33 32 32 0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32 0-17.67 14.3-32 32-32h288zm0 160c17.7 0 32 14.3 32 32s-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32h288zm0 160c17.7 0 32 14.3 32 32s-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32h288zM16 416c0-26.5 21.49-48 48-48s48 21.5 48 48-21.49 48-48 48-48-21.5-48-48zm96-160c0 26.5-21.49 48-48 48s-48-21.5-48-48 21.49-48 48-48 48 21.5 48 48z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M16 96c0-26.51 21.49-48 48-48s48 21.49 48 48c0 26.5-21.49 48-48 48s-48-21.5-48-48zm464-32c17.7 0 32 14.33 32 32 0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32 0-17.67 14.3-32 32-32h288zm0 160c17.7 0 32 14.3 32 32s-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32h288zm0 160c17.7 0 32 14.3 32 32s-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32h288zM16 416c0-26.5 21.49-48 48-48s48 21.5 48 48-21.49 48-48 48-48-21.5-48-48zm96-160c0 26.5-21.49 48-48 48s-48-21.5-48-48 21.49-48 48-48 48 21.5 48 48z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .ordered-list:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M55.1 56.04c0-13.26 11.64-24 24-24h32c14.2 0 24 10.74 24 24V176h16c14.2 0 24 10.8 24 24 0 13.3-9.8 24-24 24h-80c-12.36 0-24-10.7-24-24 0-13.2 11.64-24 24-24h16V80.04h-8c-12.36 0-24-10.75-24-24zm63.6 285.16c-6.6-7.4-18.3-6.9-24.05 1.2l-11.12 15.5c-7.7 10.8-22.69 13.3-33.48 5.6-10.79-7.7-13.28-22.7-5.58-33.4l11.12-15.6c23.74-33.3 72.31-35.7 99.21-4.9 21.3 23.5 20.8 60.9-1.1 84.7L118.8 432H152c13.3 0 24 10.7 24 24s-10.7 24-24 24H64c-9.53 0-18.16-5.6-21.98-14.4-3.83-8.7-2.12-18.9 4.34-25.9l72.04-78c5.3-5.8 5.4-14.6.3-20.5zM512 64c17.7 0 32 14.33 32 32 0 17.7-14.3 32-32 32H256c-17.7 0-32-14.3-32-32 0-17.67 14.3-32 32-32h256zm0 160c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32s14.3-32 32-32h256zm0 160c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32s14.3-32 32-32h256z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M55.1 56.04c0-13.26 11.64-24 24-24h32c14.2 0 24 10.74 24 24V176h16c14.2 0 24 10.8 24 24 0 13.3-9.8 24-24 24h-80c-12.36 0-24-10.7-24-24 0-13.2 11.64-24 24-24h16V80.04h-8c-12.36 0-24-10.75-24-24zm63.6 285.16c-6.6-7.4-18.3-6.9-24.05 1.2l-11.12 15.5c-7.7 10.8-22.69 13.3-33.48 5.6-10.79-7.7-13.28-22.7-5.58-33.4l11.12-15.6c23.74-33.3 72.31-35.7 99.21-4.9 21.3 23.5 20.8 60.9-1.1 84.7L118.8 432H152c13.3 0 24 10.7 24 24s-10.7 24-24 24H64c-9.53 0-18.16-5.6-21.98-14.4-3.83-8.7-2.12-18.9 4.34-25.9l72.04-78c5.3-5.8 5.4-14.6.3-20.5zM512 64c17.7 0 32 14.33 32 32 0 17.7-14.3 32-32 32H256c-17.7 0-32-14.3-32-32 0-17.67 14.3-32 32-32h256zm0 160c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32s14.3-32 32-32h256zm0 160c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32s14.3-32 32-32h256z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .table:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 1792'%3E%3Cpath d='M576 1376v-192q0-14-9-23t-23-9H224q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm0-384V800q0-14-9-23t-23-9H224q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384v-192q0-14-9-23t-23-9H736q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zM576 608V416q0-14-9-23t-23-9H224q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384V800q0-14-9-23t-23-9H736q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm-512-768V416q0-14-9-23t-23-9H736q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384V800q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm0-384V416q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm128-320v1088q0 66-47 113t-113 47H224q-66 0-113-47t-47-113V288q0-66 47-113t113-47h1344q66 0 113 47t47 113z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 1792'%3E%3Cpath d='M576 1376v-192q0-14-9-23t-23-9H224q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm0-384V800q0-14-9-23t-23-9H224q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384v-192q0-14-9-23t-23-9H736q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zM576 608V416q0-14-9-23t-23-9H224q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384V800q0-14-9-23t-23-9H736q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm-512-768V416q0-14-9-23t-23-9H736q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384V800q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm0-384V416q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm128-320v1088q0 66-47 113t-113 47H224q-66 0-113-47t-47-113V288q0-66 47-113t113-47h1344q66 0 113 47t47 113z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .upload-image:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M447.1 32h-484C28.64 32-.01 60.65-.01 96v320c0 35.35 28.65 64 63.1 64h384c35.35 0 64-28.65 64-64V96c.01-35.35-27.79-64-63.99-64zm-336 64c26.51 0 48 21.49 48 48s-20.6 48-48 48-48-21.49-48-48 22.38-48 48-48zm335 311.6c-2.8 5.2-8.2 8.4-14.1 8.4H82.01a15.993 15.993 0 0 1-14.26-8.75 16 16 0 0 1 1.334-16.68l70-96C142.1 290.4 146.9 288 152 288s9.916 2.441 12.93 6.574l32.46 44.51 93.3-139.1C293.7 194.7 298.7 192 304 192s10.35 2.672 13.31 7.125l128 192c3.29 4.875 3.59 11.175.79 16.475z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M447.1 32h-484C28.64 32-.01 60.65-.01 96v320c0 35.35 28.65 64 63.1 64h384c35.35 0 64-28.65 64-64V96c.01-35.35-27.79-64-63.99-64zm-336 64c26.51 0 48 21.49 48 48s-20.6 48-48 48-48-21.49-48-48 22.38-48 48-48zm335 311.6c-2.8 5.2-8.2 8.4-14.1 8.4H82.01a15.993 15.993 0 0 1-14.26-8.75 16 16 0 0 1 1.334-16.68l70-96C142.1 290.4 146.9 288 152 288s9.916 2.441 12.93 6.574l32.46 44.51 93.3-139.1C293.7 194.7 298.7 192 304 192s10.35 2.672 13.31 7.125l128 192c3.29 4.875 3.59 11.175.79 16.475z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .undo:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M480 256c0 123.4-100.5 223.9-223.9 223.9-48.84 0-95.17-15.58-134.2-44.86-14.12-10.59-16.97-30.66-6.375-44.81 10.59-14.12 30.62-16.94 44.81-6.375 27.84 20.91 61 31.94 95.88 31.94C344.3 415.8 416 344.1 416 256S344.31 96.2 256.2 96.2c-37.46 0-73.09 13.49-101.3 36.64l45.12 45.14c17.01 17.02 4.955 46.1-19.1 46.1H35.17C24.58 224.1 16 215.5 16 204.9V59.04C16 35 45.07 22.96 62.07 39.97l47.6 47.63C149.9 52.71 201.5 32.11 256.1 32.11 379.5 32.11 480 132.6 480 256z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M480 256c0 123.4-100.5 223.9-223.9 223.9-48.84 0-95.17-15.58-134.2-44.86-14.12-10.59-16.97-30.66-6.375-44.81 10.59-14.12 30.62-16.94 44.81-6.375 27.84 20.91 61 31.94 95.88 31.94C344.3 415.8 416 344.1 416 256S344.31 96.2 256.2 96.2c-37.46 0-73.09 13.49-101.3 36.64l45.12 45.14c17.01 17.02 4.955 46.1-19.1 46.1H35.17C24.58 224.1 16 215.5 16 204.9V59.04C16 35 45.07 22.96 62.07 39.97l47.6 47.63C149.9 52.71 201.5 32.11 256.1 32.11 379.5 32.11 480 132.6 480 256z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .redo:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M468.9 32.11c13.87 0 27.18 10.77 27.18 27.04v145.9c0 10.59-8.584 19.17-19.17 19.17h-145.7c-16.28 0-27.06-13.32-27.06-27.2 0-6.634 2.461-13.4 7.96-18.9l45.12-45.14c-28.22-23.14-63.85-36.64-101.3-36.64-88.09 0-159.8 71.69-159.8 159.8S167.8 415.9 255.9 415.9c73.14 0 89.44-38.31 115.1-38.31 18.48 0 31.97 15.04 31.97 31.96 0 35.04-81.59 70.41-147 70.41-123.4 0-223.9-100.5-223.9-223.9S132.6 32.44 256 32.44c54.6 0 106.2 20.39 146.4 55.26L450 40.07c5.5-5.5 12.3-7.96 18.9-7.96z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M468.9 32.11c13.87 0 27.18 10.77 27.18 27.04v145.9c0 10.59-8.584 19.17-19.17 19.17h-145.7c-16.28 0-27.06-13.32-27.06-27.2 0-6.634 2.461-13.4 7.96-18.9l45.12-45.14c-28.22-23.14-63.85-36.64-101.3-36.64-88.09 0-159.8 71.69-159.8 159.8S167.8 415.9 255.9 415.9c73.14 0 89.44-38.31 115.1-38.31 18.48 0 31.97 15.04 31.97 31.96 0 35.04-81.59 70.41-147 70.41-123.4 0-223.9-100.5-223.9-223.9S132.6 32.44 256 32.44c54.6 0 106.2 20.39 146.4 55.26L450 40.07c5.5-5.5 12.3-7.96 18.9-7.96z'/%3E%3C/svg%3E")}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"
";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-text-shadow-color{syntax:"*";inherits:false}@property --tw-text-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
diff --git a/public/cookiebanner/assets/app-rZxx_yNx.js b/public/cookiebanner/assets/app-rZxx_yNx.js
new file mode 100644
index 000000000..4e43d3ffd
--- /dev/null
+++ b/public/cookiebanner/assets/app-rZxx_yNx.js
@@ -0,0 +1 @@
+document.addEventListener("livewire:init",()=>{Livewire.hook("request",({fail:i})=>{i(({status:e,preventDefault:t})=>{e===419&&(window.location.reload(),t())})})});Alpine.store("notifications",{init(){Livewire.on("notify",i=>{Alpine.store("notifications").addNotification(i)})},notifications:[],addNotification(i){i=i[0],i.show=!1,i.id=Date.now()+Math.floor(Math.random()*1e3),this.notifications.push(i),Alpine.nextTick(()=>{this.notifications=this.notifications.map(e=>(e.id===e.id&&(e.show=!0),e))}),setTimeout(()=>{this.removeNotification(i.id)},i.timeout||5e3)},removeNotification(i){this.notifications=this.notifications.map(e=>(e.id===i&&(e.show=!1),e)).filter(e=>e.show)}});
diff --git a/public/cookiebanner/manifest.json b/public/cookiebanner/manifest.json
new file mode 100644
index 000000000..2f2d1af65
--- /dev/null
+++ b/public/cookiebanner/manifest.json
@@ -0,0 +1,13 @@
+{
+ "themes/cookiebanner/css/app.css": {
+ "file": "assets/app-a07Nb_RE.css",
+ "src": "themes/cookiebanner/css/app.css",
+ "isEntry": true
+ },
+ "themes/cookiebanner/js/app.js": {
+ "file": "assets/app-rZxx_yNx.js",
+ "name": "app",
+ "src": "themes/cookiebanner/js/app.js",
+ "isEntry": true
+ }
+}
\ No newline at end of file
diff --git a/public/css/filament/admin/theme.css b/public/css/filament/admin/theme.css
new file mode 100644
index 000000000..09bebee45
--- /dev/null
+++ b/public/css/filament/admin/theme.css
@@ -0,0 +1 @@
+*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border-width:0;border-style:solid;border-color:rgba(var(--gray-200),1)}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-family),ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:rgba(var(--gray-400),1)}input::placeholder,textarea::placeholder{opacity:1;color:rgba(var(--gray-400),1)}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:rgba(var(--gray-500),var(--tw-border-opacity,1));border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:rgba(var(--gray-500),var(--tw-text-opacity,1));opacity:1}input::placeholder,textarea::placeholder{color:rgba(var(--gray-500),var(--tw-text-opacity,1));opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:rgba(var(--gray-500),var(--tw-border-opacity,1));border-width:1px;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=radio]:checked:focus,[type=radio]:checked:hover{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}@media (forced-colors:active) {[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}:root.dark{color-scheme:dark}[data-field-wrapper]{scroll-margin-top:8rem}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"\201C""\201D""\2018""\2019";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%),0 3px 0 rgb(var(--tw-prose-kbd-shadows)/10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:17 24 39;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:255 255 255;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgba(0,0,0,.5);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-top:.8888889em;margin-bottom:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;margin-top:0;margin-bottom:.8em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;margin-top:1.6em;margin-bottom:.8em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;margin-top:1.5555556em;margin-bottom:.4444444em;line-height:1.5555556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.4285714em;margin-bottom:.5714286em;line-height:1.4285714}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;border-radius:.3125rem;padding-top:.1428571em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.6666667;margin-top:1.6666667em;margin-bottom:1.6666667em;border-radius:.25rem;padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;margin-bottom:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.8571429em;margin-bottom:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-base{font-size:1rem;line-height:1.75}.prose-base :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose-base :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose-base :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose-base :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose-base :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose-base :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose-base :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-base :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-base :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-base :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-base :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose-base :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-base :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-base :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-base :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose-base :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose-base :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose-base :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose-base :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-base :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-base :where(.prose-base>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose-base :where(.prose-base>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose-base>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(.prose-base>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose-base>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose-base :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose-base :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose-base :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:3em;margin-bottom:3em}.prose-base :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857}.prose-base :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose-base :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-base :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-base :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose-base :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-base :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-base :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-base :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-base :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose-base :where(.prose-base>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(.prose-base>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-lg{font-size:1.125rem;line-height:1.7777778}.prose-lg :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em}.prose-lg :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2222222em;line-height:1.4545455;margin-top:1.0909091em;margin-bottom:1.0909091em}.prose-lg :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6666667em;margin-bottom:1.6666667em;padding-inline-start:1em}.prose-lg :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.6666667em;margin-top:0;margin-bottom:.8333333em;line-height:1}.prose-lg :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.6666667em;margin-top:1.8666667em;margin-bottom:1.0666667em;line-height:1.3333333}.prose-lg :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.3333333em;margin-top:1.6666667em;margin-bottom:.6666667em;line-height:1.5}.prose-lg :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:.4444444em;line-height:1.5555556}.prose-lg :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:1.7777778em}.prose-lg :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:1.7777778em}.prose-lg :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-lg :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:1.7777778em}.prose-lg :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;border-radius:.3125rem;padding-top:.2222222em;padding-inline-end:.4444444em;padding-bottom:.2222222em;padding-inline-start:.4444444em}.prose-lg :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-lg :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8666667em}.prose-lg :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-lg :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.75;margin-top:2em;margin-bottom:2em;border-radius:.375rem;padding-top:1em;padding-inline-end:1.5em;padding-bottom:1em;padding-inline-start:1.5em}.prose-lg :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.5555556em}.prose-lg :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.5555556em}.prose-lg :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6666667em;margin-bottom:.6666667em}.prose-lg :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.prose-lg :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.prose-lg :where(.prose-lg>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.8888889em;margin-bottom:.8888889em}.prose-lg :where(.prose-lg>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose-lg>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(.prose-lg>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose-lg>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.8888889em;margin-bottom:.8888889em}.prose-lg :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em}.prose-lg :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6666667em;padding-inline-start:1.5555556em}.prose-lg :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:3.1111111em;margin-bottom:3.1111111em}.prose-lg :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5}.prose-lg :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.prose-lg :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.75em;padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.prose-lg :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:1.7777778em}.prose-lg :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-lg :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5;margin-top:1em}.prose-lg :where(.prose-lg>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(.prose-lg>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.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}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-4{inset:1rem}.inset-x-0{left:0;right:0}.inset-x-4{left:1rem;right:1rem}.inset-y-0{top:0;bottom:0}.-bottom-1\/2{bottom:-50%}.-top-1{top:-.25rem}.-top-1\/2{top:-50%}.-top-2{top:-.5rem}.-top-3{top:-.75rem}.bottom-0{bottom:0}.bottom-1\/2{bottom:50%}.end-0{inset-inline-end:0}.end-4{inset-inline-end:1rem}.end-6{inset-inline-end:1.5rem}.left-3{left:.75rem}.start-0{inset-inline-start:0}.start-full{inset-inline-start:100%}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-6{top:1.5rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.order-first{order:-9999}.col-\[--col-span-default\]{grid-column:var(--col-span-default)}.col-span-3{grid-column:span 3/span 3}.col-span-full{grid-column:1/-1}.col-start-2{grid-column-start:2}.col-start-3{grid-column-start:3}.col-start-\[--col-start-default\]{grid-column-start:var(--col-start-default)}.row-start-2{grid-row-start:2}.-m-0\.5{margin:-.125rem}.-m-1{margin:-.25rem}.-m-1\.5{margin:-.375rem}.-m-2{margin:-.5rem}.-m-2\.5{margin:-.625rem}.-m-3{margin:-.75rem}.-m-3\.5{margin:-.875rem}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.-mx-4{margin-left:-1rem;margin-right:-1rem}.-mx-6{margin-left:-1.5rem;margin-right:-1.5rem}.-my-1{margin-top:-.25rem;margin-bottom:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.my-16{margin-top:4rem;margin-bottom:4rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-auto{margin-top:auto;margin-bottom:auto}.\!mt-0{margin-top:0!important}.-mb-4{margin-bottom:-1rem}.-mb-6{margin-bottom:-1.5rem}.-me-2{margin-inline-end:-.5rem}.-ms-0\.5{margin-inline-start:-.125rem}.-ms-1{margin-inline-start:-.25rem}.-ms-2{margin-inline-start:-.5rem}.-mt-3{margin-top:-.75rem}.-mt-4{margin-top:-1rem}.-mt-6{margin-top:-1.5rem}.-mt-7{margin-top:-1.75rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.me-1{margin-inline-end:.25rem}.me-3{margin-inline-end:.75rem}.me-4{margin-inline-end:1rem}.me-6{margin-inline-end:1.5rem}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.ms-1{margin-inline-start:.25rem}.ms-6{margin-inline-start:1.5rem}.ms-auto{margin-inline-start:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-\[--line-clamp\]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--line-clamp)}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.inline-grid{display:inline-grid}.contents{display:contents}.hidden{display:none}.h-0{height:0}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[100dvh\],.h-dvh{height:100dvh}.h-full{height:100%}.h-screen{height:100vh}.max-h-96{max-height:24rem}.max-h-\[60vh\]{max-height:60vh}.min-h-\[theme\(spacing\.48\)\]{min-height:12rem}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-16{width:4rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[--sidebar-width\]{width:var(--sidebar-width)}.w-\[calc\(100\%\+2rem\)\]{width:calc(100% + 2rem)}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.w-screen{width:100vw}.min-w-0{min-width:0}.min-w-48{min-width:12rem}.min-w-\[theme\(spacing\.4\)\]{min-width:1rem}.min-w-\[theme\(spacing\.5\)\]{min-width:1.25rem}.min-w-\[theme\(spacing\.6\)\]{min-width:1.5rem}.min-w-\[theme\(spacing\.8\)\]{min-width:2rem}.\!max-w-2xl{max-width:42rem!important}.\!max-w-3xl{max-width:48rem!important}.\!max-w-4xl{max-width:56rem!important}.\!max-w-5xl{max-width:64rem!important}.\!max-w-6xl{max-width:72rem!important}.\!max-w-7xl{max-width:80rem!important}.\!max-w-\[14rem\]{max-width:14rem!important}.\!max-w-lg{max-width:32rem!important}.\!max-w-md{max-width:28rem!important}.\!max-w-sm{max-width:24rem!important}.\!max-w-xl{max-width:36rem!important}.\!max-w-xs{max-width:20rem!important}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[80\%\]{max-width:80%}.max-w-fit{max-width:-moz-fit-content;max-width:fit-content}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-max{max-width:-moz-max-content;max-width:max-content}.max-w-md{max-width:28rem}.max-w-min{max-width:-moz-min-content;max-width:min-content}.max-w-none{max-width:none}.max-w-prose{max-width:65ch}.max-w-screen-2xl{max-width:1536px}.max-w-screen-lg{max-width:1024px}.max-w-screen-md{max-width:768px}.max-w-screen-sm{max-width:640px}.max-w-screen-xl{max-width:1280px}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.table-auto{table-layout:auto}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-x-1\/4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\/4{--tw-translate-x:-25%}.-translate-x-12{--tw-translate-x:-3rem}.-translate-x-12,.-translate-x-5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-5{--tw-translate-x:-1.25rem}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-12{--tw-translate-y:-3rem}.-translate-y-12,.-translate-y-3\/4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-3\/4{--tw-translate-y:-75%}.translate-x-0{--tw-translate-x:0px}.translate-x-0,.translate-x-12{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-12{--tw-translate-x:3rem}.translate-x-5{--tw-translate-x:1.25rem}.translate-x-5,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.translate-y-12{--tw-translate-y:3rem}.-rotate-180,.translate-y-12{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-180{--tw-rotate:-180deg}.rotate-180{--tw-rotate:180deg}.rotate-180,.scale-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.scale-95,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-move{cursor:move}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.scroll-mt-9{scroll-margin-top:2.25rem}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.columns-\[--cols-default\]{-moz-columns:var(--cols-default);columns:var(--cols-default)}.break-inside-avoid{-moz-column-break-inside:avoid;break-inside:avoid}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.grid-flow-col{grid-auto-flow:column}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-\[--cols-default\]{grid-template-columns:var(--cols-default)}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.grid-cols-\[repeat\(7\2c minmax\(theme\(spacing\.7\)\2c 1fr\)\)\]{grid-template-columns:repeat(7,minmax(1.75rem,1fr))}.grid-cols-\[repeat\(auto-fit\2c minmax\(0\2c 1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.grid-rows-\[1fr_auto_1fr\]{grid-template-rows:1fr auto 1fr}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-items-start{justify-items:start}.justify-items-center{justify-items:center}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-2\.5{-moz-column-gap:.625rem;column-gap:.625rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-4{row-gap:1rem}.gap-y-6{row-gap:1.5rem}.gap-y-7{row-gap:1.75rem}.gap-y-8{row-gap:2rem}.gap-y-px{row-gap:1px}.-space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-.25rem*var(--tw-space-x-reverse));margin-left:calc(-.25rem*(1 - var(--tw-space-x-reverse)))}.-space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-.5rem*var(--tw-space-x-reverse));margin-left:calc(-.5rem*(1 - var(--tw-space-x-reverse)))}.-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-.75rem*var(--tw-space-x-reverse));margin-left:calc(-.75rem*(1 - var(--tw-space-x-reverse)))}.-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-1rem*var(--tw-space-x-reverse));margin-left:calc(-1rem*(1 - var(--tw-space-x-reverse)))}.-space-x-5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-1.25rem*var(--tw-space-x-reverse));margin-left:calc(-1.25rem*(1 - var(--tw-space-x-reverse)))}.-space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-1.5rem*var(--tw-space-x-reverse));margin-left:calc(-1.5rem*(1 - var(--tw-space-x-reverse)))}.-space-x-7>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-1.75rem*var(--tw-space-x-reverse));margin-left:calc(-1.75rem*(1 - var(--tw-space-x-reverse)))}.-space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-2rem*var(--tw-space-x-reverse));margin-left:calc(-2rem*(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-right-width:calc(1px*var(--tw-divide-x-reverse));border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgba(var(--gray-100),var(--tw-divide-opacity,1))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgba(var(--gray-200),var(--tw-divide-opacity,1))}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-x-clip{overflow-x:clip}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-x-\[0\.5px\]{border-left-width:.5px;border-right-width:.5px}.border-y{border-top-width:1px;border-bottom-width:1px}.\!border-t-0{border-top-width:0!important}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0}.border-e{border-inline-end-width:1px}.border-s{border-inline-start-width:1px}.border-t{border-top-width:1px}.\!border-none{border-style:none!important}.border-none{border-style:none}.border-gray-100{--tw-border-opacity:1;border-color:rgba(var(--gray-100),var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(var(--gray-200),var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(var(--gray-300),var(--tw-border-opacity,1))}.border-gray-600{--tw-border-opacity:1;border-color:rgba(var(--gray-600),var(--tw-border-opacity,1))}.border-primary-500{--tw-border-opacity:1;border-color:rgba(var(--primary-500),var(--tw-border-opacity,1))}.border-primary-600{--tw-border-opacity:1;border-color:rgba(var(--primary-600),var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.border-t-gray-200{--tw-border-opacity:1;border-top-color:rgba(var(--gray-200),var(--tw-border-opacity,1))}.\!bg-gray-50{--tw-bg-opacity:1!important;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))!important}.\!bg-gray-700{--tw-bg-opacity:1!important;background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1))!important}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-custom-100{--tw-bg-opacity:1;background-color:rgba(var(--c-100),var(--tw-bg-opacity,1))}.bg-custom-50{--tw-bg-opacity:1;background-color:rgba(var(--c-50),var(--tw-bg-opacity,1))}.bg-custom-600{--tw-bg-opacity:1;background-color:rgba(var(--c-600),var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(var(--gray-100),var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgba(var(--gray-200),var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgba(var(--gray-300),var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgba(var(--gray-400),var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.bg-gray-700{--tw-bg-opacity:1;background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1))}.bg-gray-950\/50{background-color:rgba(var(--gray-950),.5)}.bg-primary-500{--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1))}.bg-primary-600{--tw-bg-opacity:1;background-color:rgba(var(--primary-600),var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/0{background-color:hsla(0,0%,100%,0)}.bg-white\/5{background-color:hsla(0,0%,100%,.05)}.\!bg-none{background-image:none!important}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pe-0{padding-inline-end:0}.pe-1{padding-inline-end:.25rem}.pe-2{padding-inline-end:.5rem}.pe-3{padding-inline-end:.75rem}.pe-4{padding-inline-end:1rem}.pe-6{padding-inline-end:1.5rem}.pe-8{padding-inline-end:2rem}.pr-4{padding-right:1rem}.ps-0{padding-inline-start:0}.ps-1{padding-inline-start:.25rem}.ps-2{padding-inline-start:.5rem}.ps-3{padding-inline-start:.75rem}.ps-4{padding-inline-start:1rem}.ps-\[5\.25rem\]{padding-inline-start:5.25rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\[6px\]{padding-top:6px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-start{text-align:start}.text-end{text-align:end}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:var(--font-family),ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"}.font-serif{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-extralight{font-weight:200}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.font-thin{font-weight:100}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-loose{line-height:2}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.text-custom-400{--tw-text-opacity:1;color:rgba(var(--c-400),var(--tw-text-opacity,1))}.text-custom-50{--tw-text-opacity:1;color:rgba(var(--c-50),var(--tw-text-opacity,1))}.text-custom-500{--tw-text-opacity:1;color:rgba(var(--c-500),var(--tw-text-opacity,1))}.text-custom-600{--tw-text-opacity:1;color:rgba(var(--c-600),var(--tw-text-opacity,1))}.text-custom-700\/50{color:rgba(var(--c-700),.5)}.text-danger-600{--tw-text-opacity:1;color:rgba(var(--danger-600),var(--tw-text-opacity,1))}.text-gray-100{--tw-text-opacity:1;color:rgba(var(--gray-100),var(--tw-text-opacity,1))}.text-gray-200{--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgba(var(--gray-600),var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.text-gray-700\/50{color:rgba(var(--gray-700),.5)}.text-gray-950{--tw-text-opacity:1;color:rgba(var(--gray-950),var(--tw-text-opacity,1))}.text-green-300{--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.text-primary-400{--tw-text-opacity:1;color:rgba(var(--primary-400),var(--tw-text-opacity,1))}.text-primary-500{--tw-text-opacity:1;color:rgba(var(--primary-500),var(--tw-text-opacity,1))}.text-primary-600{--tw-text-opacity:1;color:rgba(var(--primary-600),var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-0{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-4{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-inset{--tw-ring-inset:inset}.ring-custom-600{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--c-600),var(--tw-ring-opacity,1))}.ring-custom-600\/10{--tw-ring-color:rgba(var(--c-600),0.1)}.ring-custom-600\/20{--tw-ring-color:rgba(var(--c-600),0.2)}.ring-danger-600{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-600),var(--tw-ring-opacity,1))}.ring-gray-200{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-200),var(--tw-ring-opacity,1))}.ring-gray-300{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-300),var(--tw-ring-opacity,1))}.ring-gray-600\/10{--tw-ring-color:rgba(var(--gray-600),0.1)}.ring-gray-900\/10{--tw-ring-color:rgba(var(--gray-900),0.1)}.ring-gray-950\/10{--tw-ring-color:rgba(var(--gray-950),0.1)}.ring-gray-950\/5{--tw-ring-color:rgba(var(--gray-950),0.05)}.ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.ring-white\/10{--tw-ring-color:hsla(0,0%,100%,.1)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-100{transition-delay:.1s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-75{transition-duration:75ms}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[transform\:translateZ\(0\)\]{transform:translateZ(0)}.dark\:prose-invert:is(.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-y-0:before{content:var(--tw-content);top:0;bottom:0}.before\:start-0:before{content:var(--tw-content);inset-inline-start:0}.before\:h-full:before{content:var(--tw-content);height:100%}.before\:w-0\.5:before{content:var(--tw-content);width:.125rem}.before\:bg-primary-600:before{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgba(var(--primary-600),var(--tw-bg-opacity,1))}.first\:border-s-0:first-child{border-inline-start-width:0}.first\:border-t-0:first-child{border-top-width:0}.last\:border-e-0:last-child{border-inline-end-width:0}.first-of-type\:ps-1:first-of-type{padding-inline-start:.25rem}.last-of-type\:pe-1:last-of-type{padding-inline-end:.25rem}.checked\:ring-0:checked{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:bg-gray-50:focus-within{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.hover\:bg-custom-400\/10:hover{background-color:rgba(var(--c-400),.1)}.hover\:bg-custom-50:hover{--tw-bg-opacity:1;background-color:rgba(var(--c-50),var(--tw-bg-opacity,1))}.hover\:bg-custom-500:hover{--tw-bg-opacity:1;background-color:rgba(var(--c-500),var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgba(var(--gray-100),var(--tw-bg-opacity,1))}.hover\:bg-gray-400\/10:hover{background-color:rgba(var(--gray-400),.1)}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.hover\:text-custom-600:hover{--tw-text-opacity:1;color:rgba(var(--c-600),var(--tw-text-opacity,1))}.hover\:text-custom-700\/75:hover{color:rgba(var(--c-700),.75)}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.hover\:text-gray-700\/75:hover{color:rgba(var(--gray-700),.75)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.focus\:ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-0:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-danger-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-600),var(--tw-ring-opacity,1))}.focus\:ring-primary-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-600),var(--tw-ring-opacity,1))}.focus\:ring-offset-0:focus{--tw-ring-offset-width:0px}.checked\:focus\:ring-danger-500\/50:focus:checked{--tw-ring-color:rgba(var(--danger-500),0.5)}.checked\:focus\:ring-primary-500\/50:focus:checked{--tw-ring-color:rgba(var(--primary-500),0.5)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-primary-500:focus-visible{--tw-border-opacity:1;border-color:rgba(var(--primary-500),var(--tw-border-opacity,1))}.focus-visible\:bg-custom-50:focus-visible{--tw-bg-opacity:1;background-color:rgba(var(--c-50),var(--tw-bg-opacity,1))}.focus-visible\:bg-gray-100:focus-visible{--tw-bg-opacity:1;background-color:rgba(var(--gray-100),var(--tw-bg-opacity,1))}.focus-visible\:bg-gray-50:focus-visible{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.focus-visible\:text-custom-700\/75:focus-visible{color:rgba(var(--c-700),.75)}.focus-visible\:text-gray-500:focus-visible{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.focus-visible\:text-gray-700\/75:focus-visible{color:rgba(var(--gray-700),.75)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-inset:focus-visible{--tw-ring-inset:inset}.focus-visible\:ring-custom-500\/50:focus-visible{--tw-ring-color:rgba(var(--c-500),0.5)}.focus-visible\:ring-custom-600:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--c-600),var(--tw-ring-opacity,1))}.focus-visible\:ring-gray-400\/40:focus-visible{--tw-ring-color:rgba(var(--gray-400),0.4)}.focus-visible\:ring-primary-500:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-500),var(--tw-ring-opacity,1))}.focus-visible\:ring-primary-600:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-600),var(--tw-ring-opacity,1))}.enabled\:cursor-wait:enabled{cursor:wait}.enabled\:opacity-70:enabled{opacity:.7}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:bg-gray-50:disabled{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.disabled\:text-gray-50:disabled{--tw-text-opacity:1;color:rgba(var(--gray-50),var(--tw-text-opacity,1))}.disabled\:text-gray-500:disabled{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.disabled\:opacity-70:disabled{opacity:.7}.disabled\:\[-webkit-text-fill-color\:theme\(colors\.gray\.500\)\]:disabled{-webkit-text-fill-color:rgba(var(--gray-500),1)}.disabled\:placeholder\:\[-webkit-text-fill-color\:theme\(colors\.gray\.400\)\]:disabled::-moz-placeholder{-webkit-text-fill-color:rgba(var(--gray-400),1)}.disabled\:placeholder\:\[-webkit-text-fill-color\:theme\(colors\.gray\.400\)\]:disabled::placeholder{-webkit-text-fill-color:rgba(var(--gray-400),1)}.disabled\:checked\:bg-gray-400:checked:disabled{--tw-bg-opacity:1;background-color:rgba(var(--gray-400),var(--tw-bg-opacity,1))}.disabled\:checked\:text-gray-400:checked:disabled{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.group\/item:first-child .group-first\/item\:rounded-s-lg{border-start-start-radius:.5rem;border-end-start-radius:.5rem}.group\/item:last-child .group-last\/item\:rounded-e-lg{border-start-end-radius:.5rem;border-end-end-radius:.5rem}.group:hover .group-hover\:text-gray-500,.group\/button:hover .group-hover\/button\:text-gray-500{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.group:hover .group-hover\:text-gray-700{--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.group\/item:hover .group-hover\/item\:underline,.group\/link:hover .group-hover\/link\:underline{text-decoration-line:underline}.group:focus-visible .group-focus-visible\:text-gray-500{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.group:focus-visible .group-focus-visible\:text-gray-700{--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.group\/item:focus-visible .group-focus-visible\/item\:underline{text-decoration-line:underline}.group\/link:focus-visible .group-focus-visible\/link\:underline{text-decoration-line:underline}.dark\:flex:is(.dark *){display:flex}.dark\:hidden:is(.dark *){display:none}.dark\:divide-white\/10:is(.dark *)>:not([hidden])~:not([hidden]){border-color:hsla(0,0%,100%,.1)}.dark\:divide-white\/5:is(.dark *)>:not([hidden])~:not([hidden]){border-color:hsla(0,0%,100%,.05)}.dark\:border-gray-600:is(.dark *){--tw-border-opacity:1;border-color:rgba(var(--gray-600),var(--tw-border-opacity,1))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity:1;border-color:rgba(var(--gray-700),var(--tw-border-opacity,1))}.dark\:border-primary-500:is(.dark *){--tw-border-opacity:1;border-color:rgba(var(--primary-500),var(--tw-border-opacity,1))}.dark\:border-white\/10:is(.dark *){border-color:hsla(0,0%,100%,.1)}.dark\:border-white\/5:is(.dark *){border-color:hsla(0,0%,100%,.05)}.dark\:border-t-white\/10:is(.dark *){border-top-color:hsla(0,0%,100%,.1)}.dark\:\!bg-gray-700:is(.dark *){--tw-bg-opacity:1!important;background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1))!important}.dark\:bg-custom-400\/10:is(.dark *){background-color:rgba(var(--c-400),.1)}.dark\:bg-custom-500:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--c-500),var(--tw-bg-opacity,1))}.dark\:bg-custom-500\/20:is(.dark *){background-color:rgba(var(--c-500),.2)}.dark\:bg-gray-400\/10:is(.dark *){background-color:rgba(var(--gray-400),.1)}.dark\:bg-gray-500:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-500),var(--tw-bg-opacity,1))}.dark\:bg-gray-500\/20:is(.dark *){background-color:rgba(var(--gray-500),.2)}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-600),var(--tw-bg-opacity,1))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-800),var(--tw-bg-opacity,1))}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-900),var(--tw-bg-opacity,1))}.dark\:bg-gray-900\/30:is(.dark *){background-color:rgba(var(--gray-900),.3)}.dark\:bg-gray-950:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-950),var(--tw-bg-opacity,1))}.dark\:bg-gray-950\/75:is(.dark *){background-color:rgba(var(--gray-950),.75)}.dark\:bg-primary-400:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--primary-400),var(--tw-bg-opacity,1))}.dark\:bg-primary-500:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1))}.dark\:bg-transparent:is(.dark *){background-color:transparent}.dark\:bg-white\/10:is(.dark *){background-color:hsla(0,0%,100%,.1)}.dark\:bg-white\/5:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:text-custom-300\/50:is(.dark *){color:rgba(var(--c-300),.5)}.dark\:text-custom-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--c-400),var(--tw-text-opacity,1))}.dark\:text-custom-400\/10:is(.dark *){color:rgba(var(--c-400),.1)}.dark\:text-danger-300:is(.dark *){--tw-text-opacity:1;color:rgba(var(--danger-300),var(--tw-text-opacity,1))}.dark\:text-danger-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--danger-400),var(--tw-text-opacity,1))}.dark\:text-danger-500:is(.dark *){--tw-text-opacity:1;color:rgba(var(--danger-500),var(--tw-text-opacity,1))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.dark\:text-gray-300\/50:is(.dark *){color:rgba(var(--gray-300),.5)}.dark\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.dark\:text-gray-700:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.dark\:text-gray-800:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-800),var(--tw-text-opacity,1))}.dark\:text-primary-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--primary-400),var(--tw-text-opacity,1))}.dark\:text-primary-500:is(.dark *){--tw-text-opacity:1;color:rgba(var(--primary-500),var(--tw-text-opacity,1))}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:text-white\/5:is(.dark *){color:hsla(0,0%,100%,.05)}.dark\:ring-custom-400\/30:is(.dark *){--tw-ring-color:rgba(var(--c-400),0.3)}.dark\:ring-custom-500:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--c-500),var(--tw-ring-opacity,1))}.dark\:ring-danger-500:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-500),var(--tw-ring-opacity,1))}.dark\:ring-gray-400\/20:is(.dark *){--tw-ring-color:rgba(var(--gray-400),0.2)}.dark\:ring-gray-50\/10:is(.dark *){--tw-ring-color:rgba(var(--gray-50),0.1)}.dark\:ring-gray-700:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-700),var(--tw-ring-opacity,1))}.dark\:ring-gray-900:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-900),var(--tw-ring-opacity,1))}.dark\:ring-white\/10:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.1)}.dark\:ring-white\/20:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.2)}.dark\:placeholder\:text-gray-500:is(.dark *)::-moz-placeholder{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.dark\:placeholder\:text-gray-500:is(.dark *)::placeholder{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.dark\:before\:bg-primary-500:is(.dark *):before{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1))}.dark\:checked\:bg-danger-500:checked:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--danger-500),var(--tw-bg-opacity,1))}.dark\:checked\:bg-primary-500:checked:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1))}.dark\:focus-within\:bg-white\/5:focus-within:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:hover\:bg-custom-400:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--c-400),var(--tw-bg-opacity,1))}.dark\:hover\:bg-custom-400\/10:hover:is(.dark *){background-color:rgba(var(--c-400),.1)}.dark\:hover\:bg-white\/10:hover:is(.dark *){background-color:hsla(0,0%,100%,.1)}.dark\:hover\:bg-white\/5:hover:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:hover\:text-custom-300:hover:is(.dark *){--tw-text-opacity:1;color:rgba(var(--c-300),var(--tw-text-opacity,1))}.dark\:hover\:text-custom-300\/75:hover:is(.dark *){color:rgba(var(--c-300),.75)}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.dark\:hover\:text-gray-300\/75:hover:is(.dark *){color:rgba(var(--gray-300),.75)}.dark\:hover\:text-gray-400:hover:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.dark\:hover\:ring-white\/20:hover:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.2)}.dark\:focus\:ring-danger-500:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-500),var(--tw-ring-opacity,1))}.dark\:focus\:ring-primary-500:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-500),var(--tw-ring-opacity,1))}.dark\:checked\:focus\:ring-danger-400\/50:focus:checked:is(.dark *){--tw-ring-color:rgba(var(--danger-400),0.5)}.dark\:checked\:focus\:ring-primary-400\/50:focus:checked:is(.dark *){--tw-ring-color:rgba(var(--primary-400),0.5)}.dark\:focus-visible\:border-primary-500:focus-visible:is(.dark *){--tw-border-opacity:1;border-color:rgba(var(--primary-500),var(--tw-border-opacity,1))}.dark\:focus-visible\:bg-custom-400\/10:focus-visible:is(.dark *){background-color:rgba(var(--c-400),.1)}.dark\:focus-visible\:bg-white\/5:focus-visible:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:focus-visible\:text-custom-300\/75:focus-visible:is(.dark *){color:rgba(var(--c-300),.75)}.dark\:focus-visible\:text-gray-300\/75:focus-visible:is(.dark *){color:rgba(var(--gray-300),.75)}.dark\:focus-visible\:text-gray-400:focus-visible:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.dark\:focus-visible\:ring-custom-400\/50:focus-visible:is(.dark *){--tw-ring-color:rgba(var(--c-400),0.5)}.dark\:focus-visible\:ring-custom-500:focus-visible:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--c-500),var(--tw-ring-opacity,1))}.dark\:focus-visible\:ring-primary-500:focus-visible:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-500),var(--tw-ring-opacity,1))}.dark\:disabled\:bg-transparent:disabled:is(.dark *){background-color:transparent}.dark\:disabled\:text-gray-400:disabled:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.dark\:disabled\:ring-white\/10:disabled:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.1)}.dark\:disabled\:\[-webkit-text-fill-color\:theme\(colors\.gray\.400\)\]:disabled:is(.dark *){-webkit-text-fill-color:rgba(var(--gray-400),1)}.dark\:disabled\:placeholder\:\[-webkit-text-fill-color\:theme\(colors\.gray\.500\)\]:disabled:is(.dark *)::-moz-placeholder{-webkit-text-fill-color:rgba(var(--gray-500),1)}.dark\:disabled\:placeholder\:\[-webkit-text-fill-color\:theme\(colors\.gray\.500\)\]:disabled:is(.dark *)::placeholder{-webkit-text-fill-color:rgba(var(--gray-500),1)}.dark\:disabled\:checked\:bg-gray-600:checked:disabled:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-600),var(--tw-bg-opacity,1))}.group\/button:hover .dark\:group-hover\/button\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.group:hover .dark\:group-hover\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.group:hover .dark\:group-hover\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.group:focus-visible .dark\:group-focus-visible\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.group:focus-visible .dark\:group-focus-visible\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:relative{position:relative}.sm\:inset-x-auto{left:auto;right:auto}.sm\:end-0{inset-inline-end:0}.sm\:col-\[--col-span-sm\]{grid-column:var(--col-span-sm)}.sm\:col-auto{grid-column:auto}.sm\:col-span-2{grid-column:span 2/span 2}.sm\:col-start-\[--col-start-sm\]{grid-column-start:var(--col-start-sm)}.sm\:-mx-6{margin-left:-1.5rem;margin-right:-1.5rem}.sm\:-my-2{margin-top:-.5rem;margin-bottom:-.5rem}.sm\:ms-auto{margin-inline-start:auto}.sm\:mt-7{margin-top:1.75rem}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:table-cell{display:table-cell}.sm\:grid{display:grid}.sm\:inline-grid{display:inline-grid}.sm\:hidden{display:none}.sm\:w-\[calc\(100\%\+3rem\)\]{width:calc(100% + 3rem)}.sm\:w-screen{width:100vw}.sm\:max-w-sm{max-width:24rem}.sm\:columns-\[--cols-sm\]{-moz-columns:var(--cols-sm);columns:var(--cols-sm)}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[--cols-sm\]{grid-template-columns:var(--cols-sm)}.sm\:grid-cols-\[repeat\(auto-fit\2c minmax\(0\2c 1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.sm\:grid-rows-\[1fr_auto_3fr\]{grid-template-rows:1fr auto 3fr}.sm\:flex-row{flex-direction:row}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-1{gap:.25rem}.sm\:gap-3{gap:.75rem}.sm\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.sm\:rounded-xl{border-radius:.75rem}.sm\:p-10{padding:2.5rem}.sm\:px-12{padding-left:3rem;padding-right:3rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.sm\:pe-3{padding-inline-end:.75rem}.sm\:pe-6{padding-inline-end:1.5rem}.sm\:ps-3{padding-inline-start:.75rem}.sm\:ps-6{padding-inline-start:1.5rem}.sm\:pt-1\.5{padding-top:.375rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:leading-6{line-height:1.5rem}.sm\:first-of-type\:ps-3:first-of-type{padding-inline-start:.75rem}.sm\:first-of-type\:ps-6:first-of-type{padding-inline-start:1.5rem}.sm\:last-of-type\:pe-3:last-of-type{padding-inline-end:.75rem}.sm\:last-of-type\:pe-6:last-of-type{padding-inline-end:1.5rem}}@media (min-width:768px){.md\:bottom-4{bottom:1rem}.md\:order-first{order:-9999}.md\:order-last{order:9999}.md\:col-\[--col-span-md\]{grid-column:var(--col-span-md)}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-3{grid-column:span 3/span 3}.md\:col-start-\[--col-start-md\]{grid-column-start:var(--col-start-md)}.md\:block{display:block}.md\:flex{display:flex}.md\:table-cell{display:table-cell}.md\:grid{display:grid}.md\:inline-grid{display:inline-grid}.md\:hidden{display:none}.md\:w-max{width:-moz-max-content;width:max-content}.md\:max-w-60{max-width:15rem}.md\:columns-\[--cols-md\]{-moz-columns:var(--cols-md);columns:var(--cols-md)}.md\:grid-flow-col{grid-auto-flow:column}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[--cols-md\]{grid-template-columns:var(--cols-md)}.md\:flex-row{flex-direction:row}.md\:items-start{align-items:flex-start}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:gap-1{gap:.25rem}.md\:gap-3{gap:.75rem}.md\:divide-y-0>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(0px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(0px*var(--tw-divide-y-reverse))}.md\:overflow-x-auto{overflow-x:auto}.md\:rounded-xl{border-radius:.75rem}.md\:p-20{padding:5rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:pe-6{padding-inline-end:1.5rem}.md\:ps-3{padding-inline-start:.75rem}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:z-0{z-index:0}.lg\:col-\[--col-span-lg\]{grid-column:var(--col-span-lg)}.lg\:col-start-\[--col-start-lg\]{grid-column-start:var(--col-start-lg)}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:table-cell{display:table-cell}.lg\:inline-grid{display:inline-grid}.lg\:hidden{display:none}.lg\:h-full{height:100%}.lg\:max-w-xs{max-width:20rem}.lg\:-translate-x-full{--tw-translate-x:-100%}.lg\:-translate-x-full,.lg\:translate-x-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:translate-x-0{--tw-translate-x:0px}.lg\:columns-\[--cols-lg\]{-moz-columns:var(--cols-lg);columns:var(--cols-lg)}.lg\:grid-cols-\[--cols-lg\]{grid-template-columns:var(--cols-lg)}.lg\:flex-row{flex-direction:row}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:gap-1{gap:.25rem}.lg\:gap-3{gap:.75rem}.lg\:bg-transparent{background-color:transparent}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:pe-8{padding-inline-end:2rem}.lg\:shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.lg\:shadow-none,.lg\:shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.lg\:shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.lg\:ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.lg\:transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.lg\:transition-none{transition-property:none}.lg\:delay-100{transition-delay:.1s}.dark\:lg\:bg-transparent:is(.dark *){background-color:transparent}}@media (min-width:1280px){.xl\:col-\[--col-span-xl\]{grid-column:var(--col-span-xl)}.xl\:col-start-\[--col-start-xl\]{grid-column-start:var(--col-start-xl)}.xl\:block{display:block}.xl\:table-cell{display:table-cell}.xl\:inline-grid{display:inline-grid}.xl\:hidden{display:none}.xl\:columns-\[--cols-xl\]{-moz-columns:var(--cols-xl);columns:var(--cols-xl)}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-\[--cols-xl\]{grid-template-columns:var(--cols-xl)}.xl\:flex-row{flex-direction:row}.xl\:items-start{align-items:flex-start}.xl\:items-end{align-items:flex-end}.xl\:items-center{align-items:center}.xl\:gap-1{gap:.25rem}.xl\:gap-3{gap:.75rem}}@media (min-width:1536px){.\32xl\:col-\[--col-span-2xl\]{grid-column:var(--col-span-2xl)}.\32xl\:col-start-\[--col-start-2xl\]{grid-column-start:var(--col-start-2xl)}.\32xl\:block{display:block}.\32xl\:table-cell{display:table-cell}.\32xl\:inline-grid{display:inline-grid}.\32xl\:hidden{display:none}.\32xl\:columns-\[--cols-2xl\]{-moz-columns:var(--cols-2xl);columns:var(--cols-2xl)}.\32xl\:grid-cols-\[--cols-2xl\]{grid-template-columns:var(--cols-2xl)}.\32xl\:flex-row{flex-direction:row}.\32xl\:items-start{align-items:flex-start}.\32xl\:items-end{align-items:flex-end}.\32xl\:items-center{align-items:center}.\32xl\:gap-1{gap:.25rem}.\32xl\:gap-3{gap:.75rem}}.ltr\:hidden:where([dir=ltr],[dir=ltr] *){display:none}.rtl\:hidden:where([dir=rtl],[dir=rtl] *){display:none}.rtl\:-translate-x-0:where([dir=rtl],[dir=rtl] *){--tw-translate-x:-0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:-translate-x-5:where([dir=rtl],[dir=rtl] *){--tw-translate-x:-1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:-translate-x-full:where([dir=rtl],[dir=rtl] *){--tw-translate-x:-100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:translate-x-1\/2:where([dir=rtl],[dir=rtl] *){--tw-translate-x:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:translate-x-1\/4:where([dir=rtl],[dir=rtl] *){--tw-translate-x:25%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:translate-x-full:where([dir=rtl],[dir=rtl] *){--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:rotate-180:where([dir=rtl],[dir=rtl] *){--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:flex-row-reverse:where([dir=rtl],[dir=rtl] *){flex-direction:row-reverse}.rtl\:divide-x-reverse:where([dir=rtl],[dir=rtl] *)>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:1}@media (min-width:1024px){.rtl\:lg\:-translate-x-0:where([dir=rtl],[dir=rtl] *){--tw-translate-x:-0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:lg\:translate-x-full:where([dir=rtl],[dir=rtl] *){--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}.\[\&\.trix-active\]\:bg-gray-50.trix-active{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.\[\&\.trix-active\]\:text-primary-600.trix-active{--tw-text-opacity:1;color:rgba(var(--primary-600),var(--tw-text-opacity,1))}.dark\:\[\&\.trix-active\]\:bg-white\/5.trix-active:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:\[\&\.trix-active\]\:text-primary-400.trix-active:is(.dark *){--tw-text-opacity:1;color:rgba(var(--primary-400),var(--tw-text-opacity,1))}.\[\&\:\:-ms-reveal\]\:hidden::-ms-reveal{display:none}.\[\&\:not\(\:first-of-type\)\]\:border-s:not(:first-of-type){border-inline-start-width:1px}.\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-2:focus-within:not(:has(.fi-ac-action:focus)){--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-danger-600:focus-within:not(:has(.fi-ac-action:focus)){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-600),var(--tw-ring-opacity,1))}.\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-primary-600:focus-within:not(:has(.fi-ac-action:focus)){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-600),var(--tw-ring-opacity,1))}.dark\:\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-danger-500:focus-within:not(:has(.fi-ac-action:focus)):is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-500),var(--tw-ring-opacity,1))}.dark\:\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-primary-500:focus-within:not(:has(.fi-ac-action:focus)):is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-500),var(--tw-ring-opacity,1))}.\[\&\:not\(\:last-of-type\)\]\:border-e:not(:last-of-type){border-inline-end-width:1px}.\[\&\:not\(\:nth-child\(1_of_\.fi-btn\)\)\]\:shadow-\[-1px_0_0_0_theme\(colors\.gray\.200\)\]:not(:nth-child(1 of .fi-btn)){--tw-shadow:-1px 0 0 0 rgba(var(--gray-200),1);--tw-shadow-colored:-1px 0 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.dark\:\[\&\:not\(\:nth-child\(1_of_\.fi-btn\)\)\]\:shadow-\[-1px_0_0_0_theme\(colors\.white\/20\%\)\]:not(:nth-child(1 of .fi-btn)):is(.dark *){--tw-shadow:-1px 0 0 0 hsla(0,0%,100%,.2);--tw-shadow-colored:-1px 0 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.\[\&\:not\(\:nth-last-child\(1_of_\.fi-btn\)\)\]\:me-px:not(:nth-last-child(1 of .fi-btn)){margin-inline-end:1px}.\[\&\:nth-child\(1_of_\.fi-btn\)\]\:rounded-s-lg:nth-child(1 of .fi-btn){border-start-start-radius:.5rem;border-end-start-radius:.5rem}.\[\&\:nth-last-child\(1_of_\.fi-btn\)\]\:rounded-e-lg:nth-last-child(1 of .fi-btn){border-start-end-radius:.5rem;border-end-end-radius:.5rem}.\[\&\>\*\:first-child\]\:relative>:first-child{position:relative}.\[\&\>\*\:first-child\]\:mt-0>:first-child{margin-top:0}.\[\&\>\*\:first-child\]\:before\:absolute>:first-child:before{content:var(--tw-content);position:absolute}.\[\&\>\*\:first-child\]\:before\:inset-y-0>:first-child:before{content:var(--tw-content);top:0;bottom:0}.\[\&\>\*\:first-child\]\:before\:start-0>:first-child:before{content:var(--tw-content);inset-inline-start:0}.\[\&\>\*\:first-child\]\:before\:w-0\.5>:first-child:before{content:var(--tw-content);width:.125rem}.\[\&\>\*\:first-child\]\:before\:bg-primary-600>:first-child:before{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgba(var(--primary-600),var(--tw-bg-opacity,1))}.\[\&\>\*\:first-child\]\:dark\:before\:bg-primary-500:is(.dark *)>:first-child:before{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1))}.\[\&\>\*\:last-child\]\:mb-0>:last-child{margin-bottom:0}.\[\&_\.choices\\_\\_inner\]\:ps-0 .choices__inner{padding-inline-start:0}.\[\&_\.fi-badge-delete-button\]\:hidden .fi-badge-delete-button{display:none}.\[\&_\.filepond--root\]\:font-sans .filepond--root{font-family:var(--font-family),ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"}.\[\&_optgroup\]\:bg-white optgroup{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.\[\&_optgroup\]\:dark\:bg-gray-900:is(.dark *) optgroup{--tw-bg-opacity:1;background-color:rgba(var(--gray-900),var(--tw-bg-opacity,1))}.\[\&_option\]\:bg-white option{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.\[\&_option\]\:dark\:bg-gray-900:is(.dark *) option{--tw-bg-opacity:1;background-color:rgba(var(--gray-900),var(--tw-bg-opacity,1))}:checked+*>.\[\:checked\+\*\>\&\]\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}@media(hover:hover){.\[\@media\(hover\:hover\)\]\:transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\[\@media\(hover\:hover\)\]\:duration-75{transition-duration:75ms}}input:checked+.\[input\:checked\+\&\]\:bg-custom-600{--tw-bg-opacity:1;background-color:rgba(var(--c-600),var(--tw-bg-opacity,1))}input:checked+.\[input\:checked\+\&\]\:bg-gray-400{--tw-bg-opacity:1;background-color:rgba(var(--gray-400),var(--tw-bg-opacity,1))}input:checked+.\[input\:checked\+\&\]\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}input:checked+.\[input\:checked\+\&\]\:ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}input:checked+.\[input\:checked\+\&\]\:hover\:bg-custom-500:hover{--tw-bg-opacity:1;background-color:rgba(var(--c-500),var(--tw-bg-opacity,1))}input:checked+.\[input\:checked\+\&\]\:hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgba(var(--gray-300),var(--tw-bg-opacity,1))}input:checked+.dark\:\[input\:checked\+\&\]\:bg-custom-500:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--c-500),var(--tw-bg-opacity,1))}input:checked+.dark\:\[input\:checked\+\&\]\:bg-gray-600:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-600),var(--tw-bg-opacity,1))}input:checked+.dark\:\[input\:checked\+\&\]\:hover\:bg-custom-400:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--c-400),var(--tw-bg-opacity,1))}input:checked+.dark\:\[input\:checked\+\&\]\:hover\:bg-gray-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-500),var(--tw-bg-opacity,1))}input:checked:focus-visible+.\[input\:checked\:focus-visible\+\&\]\:ring-custom-500\/50{--tw-ring-color:rgba(var(--c-500),0.5)}input:checked:focus-visible+.dark\:\[input\:checked\:focus-visible\+\&\]\:ring-custom-400\/50:is(.dark *){--tw-ring-color:rgba(var(--c-400),0.5)}input:focus-visible+.\[input\:focus-visible\+\&\]\:z-10{z-index:10}input:focus-visible+.\[input\:focus-visible\+\&\]\:ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}input:focus-visible+.\[input\:focus-visible\+\&\]\:ring-gray-950\/10{--tw-ring-color:rgba(var(--gray-950),0.1)}input:focus-visible+.dark\:\[input\:focus-visible\+\&\]\:ring-white\/20:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.2)}
\ No newline at end of file
diff --git a/public/css/filament/filament/app.css b/public/css/filament/filament/app.css
new file mode 100644
index 000000000..3491f2db2
--- /dev/null
+++ b/public/css/filament/filament/app.css
@@ -0,0 +1 @@
+*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{border-color:rgba(var(--gray-200),1);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:var(--font-family),ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:rgba(var(--gray-400),1);opacity:1}input::placeholder,textarea::placeholder{color:rgba(var(--gray-400),1);opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{--tw-shadow:0 0 #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:rgba(var(--gray-500),var(--tw-border-opacity,1));border-radius:0;border-width:1px;font-size:1rem;line-height:1.5rem;padding:.5rem .75rem}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);border-color:#2563eb;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}input::-moz-placeholder,textarea::-moz-placeholder{color:rgba(var(--gray-500),var(--tw-text-opacity,1));opacity:1}input::placeholder,textarea::placeholder{color:rgba(var(--gray-500),var(--tw-text-opacity,1));opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-bottom:0;padding-top:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{--tw-shadow:0 0 #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-origin:border-box;border-color:rgba(var(--gray-500),var(--tw-border-opacity,1));border-width:1px;color:#2563eb;display:inline-block;flex-shrink:0;height:1rem;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:1rem}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}[type=checkbox]:checked,[type=radio]:checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=radio]:checked:focus,[type=radio]:checked:hover{background-color:currentColor;border-color:transparent}[type=checkbox]:indeterminate{background-color:currentColor;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}@media (forced-colors:active) {[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{background-color:currentColor;border-color:transparent}[type=file]{background:unset;border-color:inherit;border-radius:0;border-width:0;font-size:unset;line-height:inherit;padding:0}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}:root.dark{color-scheme:dark}[data-field-wrapper]{scroll-margin-top:8rem}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-bottom:3em;margin-top:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){border-inline-start-color:var(--tw-prose-quote-borders);border-inline-start-width:.25rem;color:var(--tw-prose-quotes);font-style:italic;font-weight:500;margin-bottom:1.6em;margin-top:1.6em;padding-inline-start:1em;quotes:"\201C""\201D""\2018""\2019"}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:2.25em;font-weight:800;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.5em;font-weight:700;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.25em;font-weight:600;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-bottom:2em;margin-top:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%),0 3px 0 rgb(var(--tw-prose-kbd-shadows)/10%);color:var(--tw-prose-kbd);font-family:inherit;font-size:.875em;font-weight:500;padding-inline-end:.375em;padding-bottom:.1875em;padding-top:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:var(--tw-prose-pre-bg);border-radius:.375rem;color:var(--tw-prose-pre-code);font-size:.875em;font-weight:400;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;overflow-x:auto;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-top:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-radius:0;border-width:0;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857;margin-bottom:2em;margin-top:2em;table-layout:auto;width:100%}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-color:var(--tw-prose-th-borders);border-bottom-width:1px}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em;vertical-align:bottom}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-color:var(--tw-prose-td-borders);border-bottom-width:1px}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-color:var(--tw-prose-th-borders);border-top-width:1px}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:17 24 39;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:255 255 255;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgba(0,0,0,.5);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-top:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-bottom:.8888889em;margin-top:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;line-height:1.2;margin-bottom:.8em;margin-top:0}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;line-height:1.4;margin-bottom:.8em;margin-top:1.6em}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.5555556em}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.4285714;margin-bottom:.5714286em;margin-top:1.4285714em}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.8571429em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-top:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.25rem;font-size:.8571429em;line-height:1.6666667;margin-bottom:1.6666667em;margin-top:1.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-top:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.2857143em;margin-top:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5714286em;margin-top:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5714286em;margin-top:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2.8571429em;margin-top:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-top:.6666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-base{font-size:1rem;line-height:1.75}.prose-base :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose-base :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose-base :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.6em;margin-top:1.6em;padding-inline-start:1em}.prose-base :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.25em;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose-base :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.5em;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose-base :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose-base :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-base :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-top:.1875em;padding-inline-start:.375em}.prose-base :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-base :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-base :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-base :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.375rem;font-size:.875em;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-top:.8571429em;padding-inline-start:1.1428571em}.prose-base :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose-base :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose-base :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose-base :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-base :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-base :where(.prose-base>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose-base :where(.prose-base>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose-base>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(.prose-base>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose-base>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose-base :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose-base :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose-base :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:3em;margin-top:3em}.prose-base :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857}.prose-base :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose-base :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-base :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-base :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-top:.5714286em;padding-inline-start:.5714286em}.prose-base :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-base :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-base :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-base :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose-base :where(.prose-base>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(.prose-base>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-lg{font-size:1.125rem;line-height:1.7777778}.prose-lg :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-lg :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2222222em;line-height:1.4545455;margin-bottom:1.0909091em;margin-top:1.0909091em}.prose-lg :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.6666667em;margin-top:1.6666667em;padding-inline-start:1em}.prose-lg :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.6666667em;line-height:1;margin-bottom:.8333333em;margin-top:0}.prose-lg :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.6666667em;line-height:1.3333333;margin-bottom:1.0666667em;margin-top:1.8666667em}.prose-lg :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.3333333em;line-height:1.5;margin-bottom:.6666667em;margin-top:1.6666667em}.prose-lg :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.7777778em}.prose-lg :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-lg :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.8888889em;padding-inline-end:.4444444em;padding-bottom:.2222222em;padding-top:.2222222em;padding-inline-start:.4444444em}.prose-lg :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-lg :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8666667em}.prose-lg :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-lg :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.375rem;font-size:.8888889em;line-height:1.75;margin-bottom:2em;margin-top:2em;padding-inline-end:1.5em;padding-bottom:1em;padding-top:1em;padding-inline-start:1.5em}.prose-lg :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-inline-start:1.5555556em}.prose-lg :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-inline-start:1.5555556em}.prose-lg :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.6666667em;margin-top:.6666667em}.prose-lg :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.prose-lg :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.prose-lg :where(.prose-lg>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(.prose-lg>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose-lg>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(.prose-lg>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose-lg>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-lg :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6666667em;padding-inline-start:1.5555556em}.prose-lg :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:3.1111111em;margin-top:3.1111111em}.prose-lg :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5}.prose-lg :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.prose-lg :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-top:.75em;padding-inline-start:.75em}.prose-lg :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-lg :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5;margin-top:1em}.prose-lg :where(.prose-lg>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(.prose-lg>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-4{inset:1rem}.inset-x-0{left:0;right:0}.inset-x-4{left:1rem;right:1rem}.inset-y-0{bottom:0;top:0}.-bottom-1\/2{bottom:-50%}.-top-1{top:-.25rem}.-top-1\/2{top:-50%}.-top-2{top:-.5rem}.-top-3{top:-.75rem}.bottom-0{bottom:0}.bottom-1\/2{bottom:50%}.end-0{inset-inline-end:0}.end-4{inset-inline-end:1rem}.end-6{inset-inline-end:1.5rem}.left-3{left:.75rem}.start-0{inset-inline-start:0}.start-full{inset-inline-start:100%}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-6{top:1.5rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.order-first{order:-9999}.col-\[--col-span-default\]{grid-column:var(--col-span-default)}.col-span-full{grid-column:1/-1}.col-start-2{grid-column-start:2}.col-start-3{grid-column-start:3}.col-start-\[--col-start-default\]{grid-column-start:var(--col-start-default)}.row-start-2{grid-row-start:2}.-m-0\.5{margin:-.125rem}.-m-1{margin:-.25rem}.-m-1\.5{margin:-.375rem}.-m-2{margin:-.5rem}.-m-2\.5{margin:-.625rem}.-m-3{margin:-.75rem}.-m-3\.5{margin:-.875rem}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.-mx-4{margin-left:-1rem;margin-right:-1rem}.-mx-6{margin-left:-1.5rem;margin-right:-1.5rem}.-my-1{margin-bottom:-.25rem;margin-top:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.my-16{margin-bottom:4rem;margin-top:4rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-4{margin-bottom:1rem;margin-top:1rem}.my-auto{margin-bottom:auto;margin-top:auto}.\!mt-0{margin-top:0!important}.-mb-4{margin-bottom:-1rem}.-mb-6{margin-bottom:-1.5rem}.-me-2{margin-inline-end:-.5rem}.-ms-0\.5{margin-inline-start:-.125rem}.-ms-1{margin-inline-start:-.25rem}.-ms-2{margin-inline-start:-.5rem}.-mt-3{margin-top:-.75rem}.-mt-4{margin-top:-1rem}.-mt-6{margin-top:-1.5rem}.-mt-7{margin-top:-1.75rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.me-1{margin-inline-end:.25rem}.me-3{margin-inline-end:.75rem}.me-4{margin-inline-end:1rem}.me-6{margin-inline-end:1.5rem}.ml-auto{margin-left:auto}.ms-1{margin-inline-start:.25rem}.ms-6{margin-inline-start:1.5rem}.ms-auto{margin-inline-start:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-\[--line-clamp\]{-webkit-box-orient:vertical;-webkit-line-clamp:var(--line-clamp);display:-webkit-box;overflow:hidden}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.inline-grid{display:inline-grid}.contents{display:contents}.hidden{display:none}.h-0{height:0}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[100dvh\],.h-dvh{height:100dvh}.h-full{height:100%}.h-screen{height:100vh}.max-h-96{max-height:24rem}.min-h-\[theme\(spacing\.48\)\]{min-height:12rem}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-16{width:4rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[--sidebar-width\]{width:var(--sidebar-width)}.w-\[calc\(100\%\+2rem\)\]{width:calc(100% + 2rem)}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.w-screen{width:100vw}.min-w-0{min-width:0}.min-w-48{min-width:12rem}.min-w-\[theme\(spacing\.4\)\]{min-width:1rem}.min-w-\[theme\(spacing\.5\)\]{min-width:1.25rem}.min-w-\[theme\(spacing\.6\)\]{min-width:1.5rem}.min-w-\[theme\(spacing\.8\)\]{min-width:2rem}.\!max-w-2xl{max-width:42rem!important}.\!max-w-3xl{max-width:48rem!important}.\!max-w-4xl{max-width:56rem!important}.\!max-w-5xl{max-width:64rem!important}.\!max-w-6xl{max-width:72rem!important}.\!max-w-7xl{max-width:80rem!important}.\!max-w-\[14rem\]{max-width:14rem!important}.\!max-w-lg{max-width:32rem!important}.\!max-w-md{max-width:28rem!important}.\!max-w-sm{max-width:24rem!important}.\!max-w-xl{max-width:36rem!important}.\!max-w-xs{max-width:20rem!important}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-fit{max-width:-moz-fit-content;max-width:fit-content}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-max{max-width:-moz-max-content;max-width:max-content}.max-w-md{max-width:28rem}.max-w-min{max-width:-moz-min-content;max-width:min-content}.max-w-none{max-width:none}.max-w-prose{max-width:65ch}.max-w-screen-2xl{max-width:1536px}.max-w-screen-lg{max-width:1024px}.max-w-screen-md{max-width:768px}.max-w-screen-sm{max-width:640px}.max-w-screen-xl{max-width:1280px}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.table-auto{table-layout:auto}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-x-1\/4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\/4{--tw-translate-x:-25%}.-translate-x-12{--tw-translate-x:-3rem}.-translate-x-12,.-translate-x-5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-5{--tw-translate-x:-1.25rem}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-12{--tw-translate-y:-3rem}.-translate-y-12,.-translate-y-3\/4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-3\/4{--tw-translate-y:-75%}.translate-x-0{--tw-translate-x:0px}.translate-x-0,.translate-x-12{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-12{--tw-translate-x:3rem}.translate-x-5{--tw-translate-x:1.25rem}.translate-x-5,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.translate-y-12{--tw-translate-y:3rem}.-rotate-180,.translate-y-12{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-180{--tw-rotate:-180deg}.rotate-180{--tw-rotate:180deg}.rotate-180,.scale-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.scale-95,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-move{cursor:move}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.scroll-mt-9{scroll-margin-top:2.25rem}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.columns-\[--cols-default\]{-moz-columns:var(--cols-default);columns:var(--cols-default)}.break-inside-avoid{-moz-column-break-inside:avoid;break-inside:avoid}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.grid-flow-col{grid-auto-flow:column}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-\[--cols-default\]{grid-template-columns:var(--cols-default)}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.grid-cols-\[repeat\(7\2c minmax\(theme\(spacing\.7\)\2c 1fr\)\)\]{grid-template-columns:repeat(7,minmax(1.75rem,1fr))}.grid-cols-\[repeat\(auto-fit\2c minmax\(0\2c 1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.grid-rows-\[1fr_auto_1fr\]{grid-template-rows:1fr auto 1fr}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-items-start{justify-items:start}.justify-items-center{justify-items:center}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-2\.5{-moz-column-gap:.625rem;column-gap:.625rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-4{row-gap:1rem}.gap-y-6{row-gap:1.5rem}.gap-y-7{row-gap:1.75rem}.gap-y-8{row-gap:2rem}.gap-y-px{row-gap:1px}.-space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(-.25rem*var(--tw-space-x-reverse))}.-space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(-.5rem*var(--tw-space-x-reverse))}.-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(-.75rem*var(--tw-space-x-reverse))}.-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(-1rem*var(--tw-space-x-reverse))}.-space-x-5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-1.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(-1.25rem*var(--tw-space-x-reverse))}.-space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(-1.5rem*var(--tw-space-x-reverse))}.-space-x-7>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-1.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(-1.75rem*var(--tw-space-x-reverse))}.-space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-2rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(-2rem*var(--tw-space-x-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)));border-right-width:calc(1px*var(--tw-divide-x-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgba(var(--gray-100),var(--tw-divide-opacity,1))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgba(var(--gray-200),var(--tw-divide-opacity,1))}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-x-clip{overflow-x:clip}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-b-xl{border-bottom-left-radius:.75rem;border-bottom-right-radius:.75rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-x-\[0\.5px\]{border-left-width:.5px;border-right-width:.5px}.border-y{border-bottom-width:1px;border-top-width:1px}.\!border-t-0{border-top-width:0!important}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0}.border-e{border-inline-end-width:1px}.border-s{border-inline-start-width:1px}.border-t{border-top-width:1px}.\!border-none{border-style:none!important}.border-none{border-style:none}.border-gray-100{--tw-border-opacity:1;border-color:rgba(var(--gray-100),var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(var(--gray-200),var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(var(--gray-300),var(--tw-border-opacity,1))}.border-gray-600{--tw-border-opacity:1;border-color:rgba(var(--gray-600),var(--tw-border-opacity,1))}.border-primary-500{--tw-border-opacity:1;border-color:rgba(var(--primary-500),var(--tw-border-opacity,1))}.border-primary-600{--tw-border-opacity:1;border-color:rgba(var(--primary-600),var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.border-t-gray-200{--tw-border-opacity:1;border-top-color:rgba(var(--gray-200),var(--tw-border-opacity,1))}.\!bg-gray-50{--tw-bg-opacity:1!important;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))!important}.\!bg-gray-700{--tw-bg-opacity:1!important;background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1))!important}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-custom-100{--tw-bg-opacity:1;background-color:rgba(var(--c-100),var(--tw-bg-opacity,1))}.bg-custom-50{--tw-bg-opacity:1;background-color:rgba(var(--c-50),var(--tw-bg-opacity,1))}.bg-custom-600{--tw-bg-opacity:1;background-color:rgba(var(--c-600),var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(var(--gray-100),var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgba(var(--gray-200),var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgba(var(--gray-300),var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgba(var(--gray-400),var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.bg-gray-950\/50{background-color:rgba(var(--gray-950),.5)}.bg-primary-500{--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1))}.bg-primary-600{--tw-bg-opacity:1;background-color:rgba(var(--primary-600),var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/0{background-color:hsla(0,0%,100%,0)}.bg-white\/5{background-color:hsla(0,0%,100%,.05)}.\!bg-none{background-image:none!important}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-3\.5{padding-bottom:.875rem;padding-top:.875rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pe-0{padding-inline-end:0}.pe-1{padding-inline-end:.25rem}.pe-2{padding-inline-end:.5rem}.pe-3{padding-inline-end:.75rem}.pe-4{padding-inline-end:1rem}.pe-6{padding-inline-end:1.5rem}.pe-8{padding-inline-end:2rem}.ps-0{padding-inline-start:0}.ps-1{padding-inline-start:.25rem}.ps-2{padding-inline-start:.5rem}.ps-3{padding-inline-start:.75rem}.ps-4{padding-inline-start:1rem}.ps-\[5\.25rem\]{padding-inline-start:5.25rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-start{text-align:start}.text-end{text-align:end}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:var(--font-family),ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"}.font-serif{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-extralight{font-weight:200}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.font-thin{font-weight:100}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-loose{line-height:2}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.text-custom-400{--tw-text-opacity:1;color:rgba(var(--c-400),var(--tw-text-opacity,1))}.text-custom-50{--tw-text-opacity:1;color:rgba(var(--c-50),var(--tw-text-opacity,1))}.text-custom-500{--tw-text-opacity:1;color:rgba(var(--c-500),var(--tw-text-opacity,1))}.text-custom-600{--tw-text-opacity:1;color:rgba(var(--c-600),var(--tw-text-opacity,1))}.text-custom-700\/50{color:rgba(var(--c-700),.5)}.text-danger-600{--tw-text-opacity:1;color:rgba(var(--danger-600),var(--tw-text-opacity,1))}.text-gray-100{--tw-text-opacity:1;color:rgba(var(--gray-100),var(--tw-text-opacity,1))}.text-gray-200{--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgba(var(--gray-600),var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.text-gray-700\/50{color:rgba(var(--gray-700),.5)}.text-gray-950{--tw-text-opacity:1;color:rgba(var(--gray-950),var(--tw-text-opacity,1))}.text-primary-400{--tw-text-opacity:1;color:rgba(var(--primary-400),var(--tw-text-opacity,1))}.text-primary-500{--tw-text-opacity:1;color:rgba(var(--primary-500),var(--tw-text-opacity,1))}.text-primary-600{--tw-text-opacity:1;color:rgba(var(--primary-600),var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-0{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-4{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-inset{--tw-ring-inset:inset}.ring-custom-600{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--c-600),var(--tw-ring-opacity,1))}.ring-custom-600\/10{--tw-ring-color:rgba(var(--c-600),0.1)}.ring-custom-600\/20{--tw-ring-color:rgba(var(--c-600),0.2)}.ring-danger-600{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-600),var(--tw-ring-opacity,1))}.ring-gray-200{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-200),var(--tw-ring-opacity,1))}.ring-gray-300{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-300),var(--tw-ring-opacity,1))}.ring-gray-600\/10{--tw-ring-color:rgba(var(--gray-600),0.1)}.ring-gray-900\/10{--tw-ring-color:rgba(var(--gray-900),0.1)}.ring-gray-950\/10{--tw-ring-color:rgba(var(--gray-950),0.1)}.ring-gray-950\/5{--tw-ring-color:rgba(var(--gray-950),0.05)}.ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.ring-white\/10{--tw-ring-color:hsla(0,0%,100%,.1)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.delay-100{transition-delay:.1s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-75{transition-duration:75ms}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[transform\:translateZ\(0\)\]{transform:translateZ(0)}.dark\:prose-invert:is(.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-y-0:before{bottom:0;content:var(--tw-content);top:0}.before\:start-0:before{content:var(--tw-content);inset-inline-start:0}.before\:h-full:before{content:var(--tw-content);height:100%}.before\:w-0\.5:before{content:var(--tw-content);width:.125rem}.before\:bg-primary-600:before{--tw-bg-opacity:1;background-color:rgba(var(--primary-600),var(--tw-bg-opacity,1));content:var(--tw-content)}.first\:border-s-0:first-child{border-inline-start-width:0}.first\:border-t-0:first-child{border-top-width:0}.last\:border-e-0:last-child{border-inline-end-width:0}.first-of-type\:ps-1:first-of-type{padding-inline-start:.25rem}.last-of-type\:pe-1:last-of-type{padding-inline-end:.25rem}.checked\:ring-0:checked{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:bg-gray-50:focus-within{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.hover\:bg-custom-400\/10:hover{background-color:rgba(var(--c-400),.1)}.hover\:bg-custom-50:hover{--tw-bg-opacity:1;background-color:rgba(var(--c-50),var(--tw-bg-opacity,1))}.hover\:bg-custom-500:hover{--tw-bg-opacity:1;background-color:rgba(var(--c-500),var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgba(var(--gray-100),var(--tw-bg-opacity,1))}.hover\:bg-gray-400\/10:hover{background-color:rgba(var(--gray-400),.1)}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.hover\:text-custom-600:hover{--tw-text-opacity:1;color:rgba(var(--c-600),var(--tw-text-opacity,1))}.hover\:text-custom-700\/75:hover{color:rgba(var(--c-700),.75)}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.hover\:text-gray-700\/75:hover{color:rgba(var(--gray-700),.75)}.hover\:opacity-100:hover{opacity:1}.focus\:ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-0:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-danger-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-600),var(--tw-ring-opacity,1))}.focus\:ring-primary-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-600),var(--tw-ring-opacity,1))}.focus\:ring-offset-0:focus{--tw-ring-offset-width:0px}.checked\:focus\:ring-danger-500\/50:focus:checked{--tw-ring-color:rgba(var(--danger-500),0.5)}.checked\:focus\:ring-primary-500\/50:focus:checked{--tw-ring-color:rgba(var(--primary-500),0.5)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-primary-500:focus-visible{--tw-border-opacity:1;border-color:rgba(var(--primary-500),var(--tw-border-opacity,1))}.focus-visible\:bg-custom-50:focus-visible{--tw-bg-opacity:1;background-color:rgba(var(--c-50),var(--tw-bg-opacity,1))}.focus-visible\:bg-gray-100:focus-visible{--tw-bg-opacity:1;background-color:rgba(var(--gray-100),var(--tw-bg-opacity,1))}.focus-visible\:bg-gray-50:focus-visible{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.focus-visible\:text-custom-700\/75:focus-visible{color:rgba(var(--c-700),.75)}.focus-visible\:text-gray-500:focus-visible{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.focus-visible\:text-gray-700\/75:focus-visible{color:rgba(var(--gray-700),.75)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-inset:focus-visible{--tw-ring-inset:inset}.focus-visible\:ring-custom-500\/50:focus-visible{--tw-ring-color:rgba(var(--c-500),0.5)}.focus-visible\:ring-custom-600:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--c-600),var(--tw-ring-opacity,1))}.focus-visible\:ring-gray-400\/40:focus-visible{--tw-ring-color:rgba(var(--gray-400),0.4)}.focus-visible\:ring-primary-500:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-500),var(--tw-ring-opacity,1))}.focus-visible\:ring-primary-600:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-600),var(--tw-ring-opacity,1))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px}.enabled\:cursor-wait:enabled{cursor:wait}.enabled\:opacity-70:enabled{opacity:.7}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:bg-gray-50:disabled{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.disabled\:text-gray-50:disabled{--tw-text-opacity:1;color:rgba(var(--gray-50),var(--tw-text-opacity,1))}.disabled\:text-gray-500:disabled{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.disabled\:opacity-70:disabled{opacity:.7}.disabled\:\[-webkit-text-fill-color\:theme\(colors\.gray\.500\)\]:disabled{-webkit-text-fill-color:rgba(var(--gray-500),1)}.disabled\:placeholder\:\[-webkit-text-fill-color\:theme\(colors\.gray\.400\)\]:disabled::-moz-placeholder{-webkit-text-fill-color:rgba(var(--gray-400),1)}.disabled\:placeholder\:\[-webkit-text-fill-color\:theme\(colors\.gray\.400\)\]:disabled::placeholder{-webkit-text-fill-color:rgba(var(--gray-400),1)}.disabled\:checked\:bg-gray-400:checked:disabled{--tw-bg-opacity:1;background-color:rgba(var(--gray-400),var(--tw-bg-opacity,1))}.disabled\:checked\:text-gray-400:checked:disabled{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.group\/item:first-child .group-first\/item\:rounded-s-lg{border-end-start-radius:.5rem;border-start-start-radius:.5rem}.group\/item:last-child .group-last\/item\:rounded-e-lg{border-end-end-radius:.5rem;border-start-end-radius:.5rem}.group:hover .group-hover\:text-gray-500,.group\/button:hover .group-hover\/button\:text-gray-500{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.group:hover .group-hover\:text-gray-700{--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.group\/item:hover .group-hover\/item\:underline,.group\/link:hover .group-hover\/link\:underline{text-decoration-line:underline}.group:focus-visible .group-focus-visible\:text-gray-500{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.group:focus-visible .group-focus-visible\:text-gray-700{--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.group\/item:focus-visible .group-focus-visible\/item\:underline{text-decoration-line:underline}.group\/link:focus-visible .group-focus-visible\/link\:underline{text-decoration-line:underline}.dark\:flex:is(.dark *){display:flex}.dark\:hidden:is(.dark *){display:none}.dark\:divide-white\/10:is(.dark *)>:not([hidden])~:not([hidden]){border-color:hsla(0,0%,100%,.1)}.dark\:divide-white\/5:is(.dark *)>:not([hidden])~:not([hidden]){border-color:hsla(0,0%,100%,.05)}.dark\:border-gray-600:is(.dark *){--tw-border-opacity:1;border-color:rgba(var(--gray-600),var(--tw-border-opacity,1))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity:1;border-color:rgba(var(--gray-700),var(--tw-border-opacity,1))}.dark\:border-primary-500:is(.dark *){--tw-border-opacity:1;border-color:rgba(var(--primary-500),var(--tw-border-opacity,1))}.dark\:border-white\/10:is(.dark *){border-color:hsla(0,0%,100%,.1)}.dark\:border-white\/5:is(.dark *){border-color:hsla(0,0%,100%,.05)}.dark\:border-t-white\/10:is(.dark *){border-top-color:hsla(0,0%,100%,.1)}.dark\:\!bg-gray-700:is(.dark *){--tw-bg-opacity:1!important;background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1))!important}.dark\:bg-custom-400\/10:is(.dark *){background-color:rgba(var(--c-400),.1)}.dark\:bg-custom-500:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--c-500),var(--tw-bg-opacity,1))}.dark\:bg-custom-500\/20:is(.dark *){background-color:rgba(var(--c-500),.2)}.dark\:bg-gray-400\/10:is(.dark *){background-color:rgba(var(--gray-400),.1)}.dark\:bg-gray-500:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-500),var(--tw-bg-opacity,1))}.dark\:bg-gray-500\/20:is(.dark *){background-color:rgba(var(--gray-500),.2)}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-600),var(--tw-bg-opacity,1))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-800),var(--tw-bg-opacity,1))}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-900),var(--tw-bg-opacity,1))}.dark\:bg-gray-900\/30:is(.dark *){background-color:rgba(var(--gray-900),.3)}.dark\:bg-gray-950:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-950),var(--tw-bg-opacity,1))}.dark\:bg-gray-950\/75:is(.dark *){background-color:rgba(var(--gray-950),.75)}.dark\:bg-primary-400:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--primary-400),var(--tw-bg-opacity,1))}.dark\:bg-primary-500:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1))}.dark\:bg-transparent:is(.dark *){background-color:transparent}.dark\:bg-white\/10:is(.dark *){background-color:hsla(0,0%,100%,.1)}.dark\:bg-white\/5:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:text-custom-300\/50:is(.dark *){color:rgba(var(--c-300),.5)}.dark\:text-custom-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--c-400),var(--tw-text-opacity,1))}.dark\:text-custom-400\/10:is(.dark *){color:rgba(var(--c-400),.1)}.dark\:text-danger-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--danger-400),var(--tw-text-opacity,1))}.dark\:text-danger-500:is(.dark *){--tw-text-opacity:1;color:rgba(var(--danger-500),var(--tw-text-opacity,1))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.dark\:text-gray-300\/50:is(.dark *){color:rgba(var(--gray-300),.5)}.dark\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.dark\:text-gray-700:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-700),var(--tw-text-opacity,1))}.dark\:text-gray-800:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-800),var(--tw-text-opacity,1))}.dark\:text-primary-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--primary-400),var(--tw-text-opacity,1))}.dark\:text-primary-500:is(.dark *){--tw-text-opacity:1;color:rgba(var(--primary-500),var(--tw-text-opacity,1))}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:text-white\/5:is(.dark *){color:hsla(0,0%,100%,.05)}.dark\:ring-custom-400\/30:is(.dark *){--tw-ring-color:rgba(var(--c-400),0.3)}.dark\:ring-custom-500:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--c-500),var(--tw-ring-opacity,1))}.dark\:ring-danger-500:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-500),var(--tw-ring-opacity,1))}.dark\:ring-gray-400\/20:is(.dark *){--tw-ring-color:rgba(var(--gray-400),0.2)}.dark\:ring-gray-50\/10:is(.dark *){--tw-ring-color:rgba(var(--gray-50),0.1)}.dark\:ring-gray-700:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-700),var(--tw-ring-opacity,1))}.dark\:ring-gray-900:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-900),var(--tw-ring-opacity,1))}.dark\:ring-white\/10:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.1)}.dark\:ring-white\/20:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.2)}.dark\:placeholder\:text-gray-500:is(.dark *)::-moz-placeholder{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.dark\:placeholder\:text-gray-500:is(.dark *)::placeholder{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.dark\:before\:bg-primary-500:is(.dark *):before{--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1));content:var(--tw-content)}.dark\:checked\:bg-danger-500:checked:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--danger-500),var(--tw-bg-opacity,1))}.dark\:checked\:bg-primary-500:checked:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1))}.dark\:focus-within\:bg-white\/5:focus-within:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:hover\:bg-custom-400:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--c-400),var(--tw-bg-opacity,1))}.dark\:hover\:bg-custom-400\/10:hover:is(.dark *){background-color:rgba(var(--c-400),.1)}.dark\:hover\:bg-white\/10:hover:is(.dark *){background-color:hsla(0,0%,100%,.1)}.dark\:hover\:bg-white\/5:hover:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:hover\:text-custom-300:hover:is(.dark *){--tw-text-opacity:1;color:rgba(var(--c-300),var(--tw-text-opacity,1))}.dark\:hover\:text-custom-300\/75:hover:is(.dark *){color:rgba(var(--c-300),.75)}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.dark\:hover\:text-gray-300\/75:hover:is(.dark *){color:rgba(var(--gray-300),.75)}.dark\:hover\:text-gray-400:hover:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.dark\:hover\:ring-white\/20:hover:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.2)}.dark\:focus\:ring-danger-500:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-500),var(--tw-ring-opacity,1))}.dark\:focus\:ring-primary-500:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-500),var(--tw-ring-opacity,1))}.dark\:checked\:focus\:ring-danger-400\/50:focus:checked:is(.dark *){--tw-ring-color:rgba(var(--danger-400),0.5)}.dark\:checked\:focus\:ring-primary-400\/50:focus:checked:is(.dark *){--tw-ring-color:rgba(var(--primary-400),0.5)}.dark\:focus-visible\:border-primary-500:focus-visible:is(.dark *){--tw-border-opacity:1;border-color:rgba(var(--primary-500),var(--tw-border-opacity,1))}.dark\:focus-visible\:bg-custom-400\/10:focus-visible:is(.dark *){background-color:rgba(var(--c-400),.1)}.dark\:focus-visible\:bg-white\/5:focus-visible:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:focus-visible\:text-custom-300\/75:focus-visible:is(.dark *){color:rgba(var(--c-300),.75)}.dark\:focus-visible\:text-gray-300\/75:focus-visible:is(.dark *){color:rgba(var(--gray-300),.75)}.dark\:focus-visible\:text-gray-400:focus-visible:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.dark\:focus-visible\:ring-custom-400\/50:focus-visible:is(.dark *){--tw-ring-color:rgba(var(--c-400),0.5)}.dark\:focus-visible\:ring-custom-500:focus-visible:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--c-500),var(--tw-ring-opacity,1))}.dark\:focus-visible\:ring-primary-500:focus-visible:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-500),var(--tw-ring-opacity,1))}.dark\:focus-visible\:ring-offset-gray-900:focus-visible:is(.dark *){--tw-ring-offset-color:rgba(var(--gray-900),1)}.dark\:disabled\:bg-transparent:disabled:is(.dark *){background-color:transparent}.dark\:disabled\:text-gray-400:disabled:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.dark\:disabled\:ring-white\/10:disabled:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.1)}.dark\:disabled\:\[-webkit-text-fill-color\:theme\(colors\.gray\.400\)\]:disabled:is(.dark *){-webkit-text-fill-color:rgba(var(--gray-400),1)}.dark\:disabled\:placeholder\:\[-webkit-text-fill-color\:theme\(colors\.gray\.500\)\]:disabled:is(.dark *)::-moz-placeholder{-webkit-text-fill-color:rgba(var(--gray-500),1)}.dark\:disabled\:placeholder\:\[-webkit-text-fill-color\:theme\(colors\.gray\.500\)\]:disabled:is(.dark *)::placeholder{-webkit-text-fill-color:rgba(var(--gray-500),1)}.dark\:disabled\:checked\:bg-gray-600:checked:disabled:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-600),var(--tw-bg-opacity,1))}.group\/button:hover .dark\:group-hover\/button\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.group:hover .dark\:group-hover\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.group:hover .dark\:group-hover\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.group:focus-visible .dark\:group-focus-visible\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-200),var(--tw-text-opacity,1))}.group:focus-visible .dark\:group-focus-visible\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:relative{position:relative}.sm\:inset-x-auto{left:auto;right:auto}.sm\:end-0{inset-inline-end:0}.sm\:col-\[--col-span-sm\]{grid-column:var(--col-span-sm)}.sm\:col-span-2{grid-column:span 2/span 2}.sm\:col-start-\[--col-start-sm\]{grid-column-start:var(--col-start-sm)}.sm\:-mx-6{margin-left:-1.5rem;margin-right:-1.5rem}.sm\:-my-2{margin-bottom:-.5rem;margin-top:-.5rem}.sm\:ms-auto{margin-inline-start:auto}.sm\:mt-7{margin-top:1.75rem}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:table-cell{display:table-cell}.sm\:grid{display:grid}.sm\:inline-grid{display:inline-grid}.sm\:hidden{display:none}.sm\:w-\[calc\(100\%\+3rem\)\]{width:calc(100% + 3rem)}.sm\:w-screen{width:100vw}.sm\:max-w-sm{max-width:24rem}.sm\:columns-\[--cols-sm\]{-moz-columns:var(--cols-sm);columns:var(--cols-sm)}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[--cols-sm\]{grid-template-columns:var(--cols-sm)}.sm\:grid-cols-\[repeat\(auto-fit\2c minmax\(0\2c 1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.sm\:grid-rows-\[1fr_auto_3fr\]{grid-template-rows:1fr auto 3fr}.sm\:flex-row{flex-direction:row}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-1{gap:.25rem}.sm\:gap-3{gap:.75rem}.sm\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.sm\:rounded-xl{border-radius:.75rem}.sm\:p-10{padding:2.5rem}.sm\:px-12{padding-left:3rem;padding-right:3rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.sm\:pe-3{padding-inline-end:.75rem}.sm\:pe-6{padding-inline-end:1.5rem}.sm\:ps-3{padding-inline-start:.75rem}.sm\:ps-6{padding-inline-start:1.5rem}.sm\:pt-1\.5{padding-top:.375rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:leading-6{line-height:1.5rem}.sm\:first-of-type\:ps-3:first-of-type{padding-inline-start:.75rem}.sm\:first-of-type\:ps-6:first-of-type{padding-inline-start:1.5rem}.sm\:last-of-type\:pe-3:last-of-type{padding-inline-end:.75rem}.sm\:last-of-type\:pe-6:last-of-type{padding-inline-end:1.5rem}}@media (min-width:768px){.md\:bottom-4{bottom:1rem}.md\:order-first{order:-9999}.md\:col-\[--col-span-md\]{grid-column:var(--col-span-md)}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-start-\[--col-start-md\]{grid-column-start:var(--col-start-md)}.md\:block{display:block}.md\:flex{display:flex}.md\:table-cell{display:table-cell}.md\:inline-grid{display:inline-grid}.md\:hidden{display:none}.md\:w-max{width:-moz-max-content;width:max-content}.md\:max-w-60{max-width:15rem}.md\:columns-\[--cols-md\]{-moz-columns:var(--cols-md);columns:var(--cols-md)}.md\:grid-flow-col{grid-auto-flow:column}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[--cols-md\]{grid-template-columns:var(--cols-md)}.md\:flex-row{flex-direction:row}.md\:items-start{align-items:flex-start}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:gap-1{gap:.25rem}.md\:gap-3{gap:.75rem}.md\:divide-y-0>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(0px*var(--tw-divide-y-reverse));border-top-width:calc(0px*(1 - var(--tw-divide-y-reverse)))}.md\:overflow-x-auto{overflow-x:auto}.md\:rounded-xl{border-radius:.75rem}.md\:p-20{padding:5rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:pe-6{padding-inline-end:1.5rem}.md\:ps-3{padding-inline-start:.75rem}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:z-0{z-index:0}.lg\:col-\[--col-span-lg\]{grid-column:var(--col-span-lg)}.lg\:col-start-\[--col-start-lg\]{grid-column-start:var(--col-start-lg)}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:table-cell{display:table-cell}.lg\:inline-grid{display:inline-grid}.lg\:hidden{display:none}.lg\:h-full{height:100%}.lg\:max-w-xs{max-width:20rem}.lg\:-translate-x-full{--tw-translate-x:-100%}.lg\:-translate-x-full,.lg\:translate-x-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:translate-x-0{--tw-translate-x:0px}.lg\:columns-\[--cols-lg\]{-moz-columns:var(--cols-lg);columns:var(--cols-lg)}.lg\:grid-cols-\[--cols-lg\]{grid-template-columns:var(--cols-lg)}.lg\:flex-row{flex-direction:row}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:gap-1{gap:.25rem}.lg\:gap-3{gap:.75rem}.lg\:bg-transparent{background-color:transparent}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:pe-8{padding-inline-end:2rem}.lg\:shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.lg\:shadow-none,.lg\:shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.lg\:shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.lg\:ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.lg\:transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.lg\:transition-none{transition-property:none}.lg\:delay-100{transition-delay:.1s}.dark\:lg\:bg-transparent:is(.dark *){background-color:transparent}}@media (min-width:1280px){.xl\:col-\[--col-span-xl\]{grid-column:var(--col-span-xl)}.xl\:col-start-\[--col-start-xl\]{grid-column-start:var(--col-start-xl)}.xl\:block{display:block}.xl\:table-cell{display:table-cell}.xl\:inline-grid{display:inline-grid}.xl\:hidden{display:none}.xl\:columns-\[--cols-xl\]{-moz-columns:var(--cols-xl);columns:var(--cols-xl)}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-\[--cols-xl\]{grid-template-columns:var(--cols-xl)}.xl\:flex-row{flex-direction:row}.xl\:items-start{align-items:flex-start}.xl\:items-end{align-items:flex-end}.xl\:items-center{align-items:center}.xl\:gap-1{gap:.25rem}.xl\:gap-3{gap:.75rem}}@media (min-width:1536px){.\32xl\:col-\[--col-span-2xl\]{grid-column:var(--col-span-2xl)}.\32xl\:col-start-\[--col-start-2xl\]{grid-column-start:var(--col-start-2xl)}.\32xl\:block{display:block}.\32xl\:table-cell{display:table-cell}.\32xl\:inline-grid{display:inline-grid}.\32xl\:hidden{display:none}.\32xl\:columns-\[--cols-2xl\]{-moz-columns:var(--cols-2xl);columns:var(--cols-2xl)}.\32xl\:grid-cols-\[--cols-2xl\]{grid-template-columns:var(--cols-2xl)}.\32xl\:flex-row{flex-direction:row}.\32xl\:items-start{align-items:flex-start}.\32xl\:items-end{align-items:flex-end}.\32xl\:items-center{align-items:center}.\32xl\:gap-1{gap:.25rem}.\32xl\:gap-3{gap:.75rem}}.ltr\:hidden:where([dir=ltr],[dir=ltr] *){display:none}.rtl\:hidden:where([dir=rtl],[dir=rtl] *){display:none}.rtl\:-translate-x-0:where([dir=rtl],[dir=rtl] *){--tw-translate-x:-0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:-translate-x-5:where([dir=rtl],[dir=rtl] *){--tw-translate-x:-1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:-translate-x-full:where([dir=rtl],[dir=rtl] *){--tw-translate-x:-100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:translate-x-1\/2:where([dir=rtl],[dir=rtl] *){--tw-translate-x:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:translate-x-1\/4:where([dir=rtl],[dir=rtl] *){--tw-translate-x:25%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:translate-x-full:where([dir=rtl],[dir=rtl] *){--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:rotate-180:where([dir=rtl],[dir=rtl] *){--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:flex-row-reverse:where([dir=rtl],[dir=rtl] *){flex-direction:row-reverse}.rtl\:divide-x-reverse:where([dir=rtl],[dir=rtl] *)>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:1}@media (min-width:1024px){.rtl\:lg\:-translate-x-0:where([dir=rtl],[dir=rtl] *){--tw-translate-x:-0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:lg\:translate-x-full:where([dir=rtl],[dir=rtl] *){--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}.\[\&\.trix-active\]\:bg-gray-50.trix-active{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.\[\&\.trix-active\]\:text-primary-600.trix-active{--tw-text-opacity:1;color:rgba(var(--primary-600),var(--tw-text-opacity,1))}.dark\:\[\&\.trix-active\]\:bg-white\/5.trix-active:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:\[\&\.trix-active\]\:text-primary-400.trix-active:is(.dark *){--tw-text-opacity:1;color:rgba(var(--primary-400),var(--tw-text-opacity,1))}.\[\&\:\:-ms-reveal\]\:hidden::-ms-reveal{display:none}.\[\&\:not\(\:first-of-type\)\]\:border-s:not(:first-of-type){border-inline-start-width:1px}.\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-2:focus-within:not(:has(.fi-ac-action:focus)){--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-danger-600:focus-within:not(:has(.fi-ac-action:focus)){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-600),var(--tw-ring-opacity,1))}.\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-primary-600:focus-within:not(:has(.fi-ac-action:focus)){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-600),var(--tw-ring-opacity,1))}.dark\:\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-danger-500:focus-within:not(:has(.fi-ac-action:focus)):is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--danger-500),var(--tw-ring-opacity,1))}.dark\:\[\&\:not\(\:has\(\.fi-ac-action\:focus\)\)\]\:focus-within\:ring-primary-500:focus-within:not(:has(.fi-ac-action:focus)):is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-500),var(--tw-ring-opacity,1))}.\[\&\:not\(\:last-of-type\)\]\:border-e:not(:last-of-type){border-inline-end-width:1px}.\[\&\:not\(\:nth-child\(1_of_\.fi-btn\)\)\]\:shadow-\[-1px_0_0_0_theme\(colors\.gray\.200\)\]:not(:nth-child(1 of .fi-btn)){--tw-shadow:-1px 0 0 0 rgba(var(--gray-200),1);--tw-shadow-colored:-1px 0 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.dark\:\[\&\:not\(\:nth-child\(1_of_\.fi-btn\)\)\]\:shadow-\[-1px_0_0_0_theme\(colors\.white\/20\%\)\]:not(:nth-child(1 of .fi-btn)):is(.dark *){--tw-shadow:-1px 0 0 0 hsla(0,0%,100%,.2);--tw-shadow-colored:-1px 0 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.\[\&\:not\(\:nth-last-child\(1_of_\.fi-btn\)\)\]\:me-px:not(:nth-last-child(1 of .fi-btn)){margin-inline-end:1px}.\[\&\:nth-child\(1_of_\.fi-btn\)\]\:rounded-s-lg:nth-child(1 of .fi-btn){border-end-start-radius:.5rem;border-start-start-radius:.5rem}.\[\&\:nth-last-child\(1_of_\.fi-btn\)\]\:rounded-e-lg:nth-last-child(1 of .fi-btn){border-end-end-radius:.5rem;border-start-end-radius:.5rem}.\[\&\>\*\:first-child\]\:relative>:first-child{position:relative}.\[\&\>\*\:first-child\]\:mt-0>:first-child{margin-top:0}.\[\&\>\*\:first-child\]\:before\:absolute>:first-child:before{content:var(--tw-content);position:absolute}.\[\&\>\*\:first-child\]\:before\:inset-y-0>:first-child:before{bottom:0;content:var(--tw-content);top:0}.\[\&\>\*\:first-child\]\:before\:start-0>:first-child:before{content:var(--tw-content);inset-inline-start:0}.\[\&\>\*\:first-child\]\:before\:w-0\.5>:first-child:before{content:var(--tw-content);width:.125rem}.\[\&\>\*\:first-child\]\:before\:bg-primary-600>:first-child:before{--tw-bg-opacity:1;background-color:rgba(var(--primary-600),var(--tw-bg-opacity,1));content:var(--tw-content)}.\[\&\>\*\:first-child\]\:dark\:before\:bg-primary-500:is(.dark *)>:first-child:before{--tw-bg-opacity:1;background-color:rgba(var(--primary-500),var(--tw-bg-opacity,1));content:var(--tw-content)}.\[\&\>\*\:last-child\]\:mb-0>:last-child{margin-bottom:0}.\[\&_\.choices\\_\\_inner\]\:ps-0 .choices__inner{padding-inline-start:0}.\[\&_\.fi-badge-delete-button\]\:hidden .fi-badge-delete-button{display:none}.\[\&_\.filepond--root\]\:font-sans .filepond--root{font-family:var(--font-family),ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"}.\[\&_optgroup\]\:bg-white optgroup{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.\[\&_optgroup\]\:dark\:bg-gray-900:is(.dark *) optgroup{--tw-bg-opacity:1;background-color:rgba(var(--gray-900),var(--tw-bg-opacity,1))}.\[\&_option\]\:bg-white option{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.\[\&_option\]\:dark\:bg-gray-900:is(.dark *) option{--tw-bg-opacity:1;background-color:rgba(var(--gray-900),var(--tw-bg-opacity,1))}:checked+*>.\[\:checked\+\*\>\&\]\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}@media(hover:hover){.\[\@media\(hover\:hover\)\]\:transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\[\@media\(hover\:hover\)\]\:duration-75{transition-duration:75ms}}input:checked+.\[input\:checked\+\&\]\:bg-custom-600{--tw-bg-opacity:1;background-color:rgba(var(--c-600),var(--tw-bg-opacity,1))}input:checked+.\[input\:checked\+\&\]\:bg-gray-400{--tw-bg-opacity:1;background-color:rgba(var(--gray-400),var(--tw-bg-opacity,1))}input:checked+.\[input\:checked\+\&\]\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}input:checked+.\[input\:checked\+\&\]\:ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}input:checked+.\[input\:checked\+\&\]\:hover\:bg-custom-500:hover{--tw-bg-opacity:1;background-color:rgba(var(--c-500),var(--tw-bg-opacity,1))}input:checked+.\[input\:checked\+\&\]\:hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgba(var(--gray-300),var(--tw-bg-opacity,1))}input:checked+.dark\:\[input\:checked\+\&\]\:bg-custom-500:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--c-500),var(--tw-bg-opacity,1))}input:checked+.dark\:\[input\:checked\+\&\]\:bg-gray-600:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-600),var(--tw-bg-opacity,1))}input:checked+.dark\:\[input\:checked\+\&\]\:hover\:bg-custom-400:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--c-400),var(--tw-bg-opacity,1))}input:checked+.dark\:\[input\:checked\+\&\]\:hover\:bg-gray-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-500),var(--tw-bg-opacity,1))}input:checked:focus-visible+.\[input\:checked\:focus-visible\+\&\]\:ring-custom-500\/50{--tw-ring-color:rgba(var(--c-500),0.5)}input:checked:focus-visible+.dark\:\[input\:checked\:focus-visible\+\&\]\:ring-custom-400\/50:is(.dark *){--tw-ring-color:rgba(var(--c-400),0.5)}input:focus-visible+.\[input\:focus-visible\+\&\]\:z-10{z-index:10}input:focus-visible+.\[input\:focus-visible\+\&\]\:ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}input:focus-visible+.\[input\:focus-visible\+\&\]\:ring-gray-950\/10{--tw-ring-color:rgba(var(--gray-950),0.1)}input:focus-visible+.dark\:\[input\:focus-visible\+\&\]\:ring-white\/20:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.2)}
\ No newline at end of file
diff --git a/public/css/filament/forms/forms.css b/public/css/filament/forms/forms.css
new file mode 100644
index 000000000..253f60063
--- /dev/null
+++ b/public/css/filament/forms/forms.css
@@ -0,0 +1,49 @@
+input::-webkit-datetime-edit{display:block;padding:0}.cropper-container{-webkit-touch-callout:none;direction:ltr;font-size:0;line-height:0;position:relative;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cropper-container img{backface-visibility:hidden;display:block;height:100%;image-orientation:0deg;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;width:100%}.cropper-canvas,.cropper-crop-box,.cropper-drag-box,.cropper-modal,.cropper-wrap-box{inset:0;position:absolute}.cropper-canvas,.cropper-wrap-box{overflow:hidden}.cropper-drag-box{background-color:#fff;opacity:0}.cropper-modal{background-color:#000;opacity:.5}.cropper-view-box{display:block;height:100%;outline:1px solid #39f;outline-color:#3399ffbf;overflow:hidden;width:100%}.cropper-dashed{border:0 dashed #eee;display:block;opacity:.5;position:absolute}.cropper-dashed.dashed-h{border-bottom-width:1px;border-top-width:1px;height:33.33333%;left:0;top:33.33333%;width:100%}.cropper-dashed.dashed-v{border-left-width:1px;border-right-width:1px;height:100%;left:33.33333%;top:0;width:33.33333%}.cropper-center{display:block;height:0;left:50%;opacity:.75;position:absolute;top:50%;width:0}.cropper-center:after,.cropper-center:before{background-color:#eee;content:" ";display:block;position:absolute}.cropper-center:before{height:1px;left:-3px;top:0;width:7px}.cropper-center:after{height:7px;left:0;top:-3px;width:1px}.cropper-face,.cropper-line,.cropper-point{display:block;height:100%;opacity:.1;position:absolute;width:100%}.cropper-face{background-color:#fff;left:0;top:0}.cropper-line{background-color:#39f}.cropper-line.line-e{cursor:ew-resize;right:-3px;top:0;width:5px}.cropper-line.line-n{cursor:ns-resize;height:5px;left:0;top:-3px}.cropper-line.line-w{cursor:ew-resize;left:-3px;top:0;width:5px}.cropper-line.line-s{bottom:-3px;cursor:ns-resize;height:5px;left:0}.cropper-point{background-color:#39f;height:5px;opacity:.75;width:5px}.cropper-point.point-e{cursor:ew-resize;margin-top:-3px;right:-3px;top:50%}.cropper-point.point-n{cursor:ns-resize;left:50%;margin-left:-3px;top:-3px}.cropper-point.point-w{cursor:ew-resize;left:-3px;margin-top:-3px;top:50%}.cropper-point.point-s{bottom:-3px;cursor:s-resize;left:50%;margin-left:-3px}.cropper-point.point-ne{cursor:nesw-resize;right:-3px;top:-3px}.cropper-point.point-nw{cursor:nwse-resize;left:-3px;top:-3px}.cropper-point.point-sw{bottom:-3px;cursor:nesw-resize;left:-3px}.cropper-point.point-se{bottom:-3px;cursor:nwse-resize;height:20px;opacity:1;right:-3px;width:20px}@media (min-width:768px){.cropper-point.point-se{height:15px;width:15px}}@media (min-width:992px){.cropper-point.point-se{height:10px;width:10px}}@media (min-width:1200px){.cropper-point.point-se{height:5px;opacity:.75;width:5px}}.cropper-point.point-se:before{background-color:#39f;bottom:-50%;content:" ";display:block;height:200%;opacity:0;position:absolute;right:-50%;width:200%}.cropper-invisible{opacity:0}.cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC)}.cropper-hide{display:block;height:0;position:absolute;width:0}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-drag-box,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed}.filepond--assistant{clip:rect(1px,1px,1px,1px);border:0;clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.filepond--browser.filepond--browser{font-size:0;left:1em;margin:0;opacity:0;padding:0;position:absolute;top:1.75em;width:calc(100% - 2em)}.filepond--data{border:none;contain:strict;height:0;margin:0;padding:0;visibility:hidden;width:0}.filepond--data,.filepond--drip{pointer-events:none;position:absolute}.filepond--drip{background:#00000003;border-radius:.5em;inset:0;opacity:.1;overflow:hidden}.filepond--drip-blob{background:#292625;border-radius:50%;height:8em;margin-left:-4em;margin-top:-4em;transform-origin:center center;width:8em}.filepond--drip-blob,.filepond--drop-label{left:0;position:absolute;top:0;will-change:transform,opacity}.filepond--drop-label{align-items:center;color:#4f4f4f;display:flex;height:0;justify-content:center;margin:0;right:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.filepond--drop-label.filepond--drop-label label{display:block;margin:0;padding:.5em}.filepond--drop-label label{cursor:default;font-size:.875em;font-weight:400;line-height:1.5;text-align:center}.filepond--label-action{-webkit-text-decoration-skip:ink;cursor:pointer;text-decoration:underline;text-decoration-color:#a7a4a4;text-decoration-skip-ink:auto}.filepond--root[data-disabled] .filepond--drop-label label{opacity:.5}.filepond--file-action-button.filepond--file-action-button{border:none;font-family:inherit;font-size:1em;height:1.625em;line-height:inherit;margin:0;outline:none;padding:0;width:1.625em;will-change:transform,opacity}.filepond--file-action-button.filepond--file-action-button span{clip:rect(1px,1px,1px,1px);border:0;clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.filepond--file-action-button.filepond--file-action-button svg{height:100%;width:100%}.filepond--file-action-button.filepond--file-action-button:after{content:"";inset:-.75em;position:absolute}.filepond--file-action-button{background-color:#00000080;background-image:none;border-radius:50%;box-shadow:0 0 #fff0;color:#fff;cursor:auto;transition:box-shadow .25s ease-in}.filepond--file-action-button:focus,.filepond--file-action-button:hover{box-shadow:0 0 0 .125em #ffffffe6}.filepond--file-action-button[disabled]{background-color:#00000040;color:#ffffff80}.filepond--file-action-button[hidden]{display:none}.filepond--file-info{align-items:flex-start;display:flex;flex:1;flex-direction:column;margin:0 .5em 0 0;min-width:0;pointer-events:none;position:static;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform,opacity}.filepond--file-info *{margin:0}.filepond--file-info .filepond--file-info-main{font-size:.75em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.filepond--file-info .filepond--file-info-sub{font-size:.625em;opacity:.5;transition:opacity .25s ease-in-out;white-space:nowrap}.filepond--file-info .filepond--file-info-sub:empty{display:none}.filepond--file-status{align-items:flex-end;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;margin:0;min-width:2.25em;pointer-events:none;position:static;text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform,opacity}.filepond--file-status *{margin:0;white-space:nowrap}.filepond--file-status .filepond--file-status-main{font-size:.75em;line-height:1.2}.filepond--file-status .filepond--file-status-sub{font-size:.625em;opacity:.5;transition:opacity .25s ease-in-out}.filepond--file-wrapper.filepond--file-wrapper{border:none;height:100%;margin:0;min-width:0;padding:0}.filepond--file-wrapper.filepond--file-wrapper>legend{clip:rect(1px,1px,1px,1px);border:0;clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.filepond--file{align-items:flex-start;border-radius:.5em;color:#fff;display:flex;height:100%;padding:.5625em;position:static}.filepond--file .filepond--file-status{margin-left:auto;margin-right:2.25em}.filepond--file .filepond--processing-complete-indicator{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:3}.filepond--file .filepond--file-action-button,.filepond--file .filepond--processing-complete-indicator,.filepond--file .filepond--progress-indicator{position:absolute}.filepond--file [data-align*=left]{left:.5625em}.filepond--file [data-align*=right]{right:.5625em}.filepond--file [data-align*=center]{left:calc(50% - .8125em)}.filepond--file [data-align*=bottom]{bottom:1.125em}.filepond--file [data-align=center]{top:calc(50% - .8125em)}.filepond--file .filepond--progress-indicator{margin-top:.1875em}.filepond--file .filepond--progress-indicator[data-align*=right]{margin-right:.1875em}.filepond--file .filepond--progress-indicator[data-align*=left]{margin-left:.1875em}[data-filepond-item-state*=error] .filepond--file-info,[data-filepond-item-state*=invalid] .filepond--file-info,[data-filepond-item-state=cancelled] .filepond--file-info{margin-right:2.25em}[data-filepond-item-state~=processing] .filepond--file-status-sub{opacity:0}[data-filepond-item-state~=processing] .filepond--action-abort-item-processing~.filepond--file-status .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-error] .filepond--file-status-sub{opacity:0}[data-filepond-item-state=processing-error] .filepond--action-retry-item-processing~.filepond--file-status .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-complete] .filepond--action-revert-item-processing svg{animation:fall .5s linear .125s both}[data-filepond-item-state=processing-complete] .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-complete] .filepond--file-info-sub,[data-filepond-item-state=processing-complete] .filepond--processing-complete-indicator:not([style*=hidden])~.filepond--file-status .filepond--file-status-sub{opacity:0}[data-filepond-item-state=processing-complete] .filepond--action-revert-item-processing~.filepond--file-info .filepond--file-info-sub{opacity:.5}[data-filepond-item-state*=error] .filepond--file-wrapper,[data-filepond-item-state*=error] .filepond--panel,[data-filepond-item-state*=invalid] .filepond--file-wrapper,[data-filepond-item-state*=invalid] .filepond--panel{animation:shake .65s linear both}[data-filepond-item-state*=busy] .filepond--progress-indicator svg{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes shake{10%,90%{transform:translate(-.0625em)}20%,80%{transform:translate(.125em)}30%,50%,70%{transform:translate(-.25em)}40%,60%{transform:translate(.25em)}}@keyframes fall{0%{animation-timing-function:ease-out;opacity:0;transform:scale(.5)}70%{animation-timing-function:ease-in-out;opacity:1;transform:scale(1.1)}to{animation-timing-function:ease-out;transform:scale(1)}}.filepond--hopper[data-hopper-state=drag-over]>*{pointer-events:none}.filepond--hopper[data-hopper-state=drag-over]:after{content:"";inset:0;position:absolute;z-index:100}.filepond--progress-indicator{z-index:103}.filepond--file-action-button{z-index:102}.filepond--file-status{z-index:101}.filepond--file-info{z-index:100}.filepond--item{left:0;margin:.25em;padding:0;position:absolute;right:0;top:0;touch-action:auto;will-change:transform,opacity;z-index:1}.filepond--item>.filepond--panel{z-index:-1}.filepond--item>.filepond--panel .filepond--panel-bottom{box-shadow:0 .0625em .125em -.0625em #00000040}.filepond--item>.filepond--file-wrapper,.filepond--item>.filepond--panel{transition:opacity .15s ease-out}.filepond--item[data-drag-state]{cursor:grab}.filepond--item[data-drag-state]>.filepond--panel{box-shadow:0 0 0 transparent;transition:box-shadow .125s ease-in-out}.filepond--item[data-drag-state=drag]{cursor:grabbing}.filepond--item[data-drag-state=drag]>.filepond--panel{box-shadow:0 .125em .3125em #00000053}.filepond--item[data-drag-state]:not([data-drag-state=idle]){z-index:2}.filepond--item-panel{background-color:#64605e}[data-filepond-item-state=processing-complete] .filepond--item-panel{background-color:#369763}[data-filepond-item-state*=error] .filepond--item-panel,[data-filepond-item-state*=invalid] .filepond--item-panel{background-color:#c44e47}.filepond--item-panel{border-radius:.5em;transition:background-color .25s}.filepond--list-scroller{left:0;margin:0;position:absolute;right:0;top:0;will-change:transform}.filepond--list-scroller[data-state=overflow] .filepond--list{bottom:0;right:0}.filepond--list-scroller[data-state=overflow]{-webkit-overflow-scrolling:touch;-webkit-mask:linear-gradient(180deg,#000 calc(100% - .5em),transparent);mask:linear-gradient(180deg,#000 calc(100% - .5em),transparent);overflow-x:hidden;overflow-y:scroll}.filepond--list-scroller::-webkit-scrollbar{background:transparent}.filepond--list-scroller::-webkit-scrollbar:vertical{width:1em}.filepond--list-scroller::-webkit-scrollbar:horizontal{height:0}.filepond--list-scroller::-webkit-scrollbar-thumb{background-clip:content-box;background-color:#0000004d;border:.3125em solid transparent;border-radius:99999px}.filepond--list.filepond--list{list-style-type:none;margin:0;padding:0;position:absolute;top:0;will-change:transform}.filepond--list{left:.75em;right:.75em}.filepond--root[data-style-panel-layout~=integrated]{height:100%;margin:0;max-width:none;width:100%}.filepond--root[data-style-panel-layout~=circle] .filepond--panel-root,.filepond--root[data-style-panel-layout~=integrated] .filepond--panel-root{border-radius:0}.filepond--root[data-style-panel-layout~=circle] .filepond--panel-root>*,.filepond--root[data-style-panel-layout~=integrated] .filepond--panel-root>*{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--drop-label,.filepond--root[data-style-panel-layout~=integrated] .filepond--drop-label{align-items:center;bottom:0;display:flex;height:auto;justify-content:center;z-index:7}.filepond--root[data-style-panel-layout~=circle] .filepond--item-panel,.filepond--root[data-style-panel-layout~=integrated] .filepond--item-panel{display:none}.filepond--root[data-style-panel-layout~=compact] .filepond--list-scroller,.filepond--root[data-style-panel-layout~=integrated] .filepond--list-scroller{height:100%;margin-bottom:0;margin-top:0;overflow:hidden}.filepond--root[data-style-panel-layout~=compact] .filepond--list,.filepond--root[data-style-panel-layout~=integrated] .filepond--list{height:100%;left:0;right:0}.filepond--root[data-style-panel-layout~=compact] .filepond--item,.filepond--root[data-style-panel-layout~=integrated] .filepond--item{margin:0}.filepond--root[data-style-panel-layout~=compact] .filepond--file-wrapper,.filepond--root[data-style-panel-layout~=integrated] .filepond--file-wrapper{height:100%}.filepond--root[data-style-panel-layout~=compact] .filepond--drop-label,.filepond--root[data-style-panel-layout~=integrated] .filepond--drop-label{z-index:7}.filepond--root[data-style-panel-layout~=circle]{border-radius:99999rem;overflow:hidden}.filepond--root[data-style-panel-layout~=circle]>.filepond--panel{border-radius:inherit}.filepond--root[data-style-panel-layout~=circle] .filepond--file-info,.filepond--root[data-style-panel-layout~=circle] .filepond--file-status,.filepond--root[data-style-panel-layout~=circle]>.filepond--panel>*{display:none}@media not all and (min-resolution:.001dpcm){@supports (-webkit-appearance:none) and (stroke-color:transparent){.filepond--root[data-style-panel-layout~=circle]{will-change:transform}}}.filepond--panel-root{background-color:#f1f0ef;border-radius:.5em}.filepond--panel{height:100%!important;left:0;margin:0;pointer-events:none;position:absolute;right:0;top:0}.filepond-panel:not([data-scalable=false]){height:auto!important}.filepond--panel[data-scalable=false]>div{display:none}.filepond--panel[data-scalable=true]{background-color:transparent!important;border:none!important;transform-style:preserve-3d}.filepond--panel-bottom,.filepond--panel-center,.filepond--panel-top{left:0;margin:0;padding:0;position:absolute;right:0;top:0}.filepond--panel-bottom,.filepond--panel-top{height:.5em}.filepond--panel-top{border-bottom:none!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.filepond--panel-top:after{background-color:inherit;bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.filepond--panel-bottom,.filepond--panel-center{backface-visibility:hidden;transform:translate3d(0,.5em,0);transform-origin:left top;will-change:transform}.filepond--panel-bottom{border-top:none!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.filepond--panel-bottom:before{background-color:inherit;content:"";height:2px;left:0;position:absolute;right:0;top:-1px}.filepond--panel-center{border-bottom:none!important;border-radius:0!important;border-top:none!important;height:100px!important}.filepond--panel-center:not([style]){visibility:hidden}.filepond--progress-indicator{color:#fff;height:1.25em;margin:0;pointer-events:none;position:static;width:1.25em;will-change:transform,opacity}.filepond--progress-indicator svg{height:100%;transform-box:fill-box;vertical-align:top;width:100%}.filepond--progress-indicator path{fill:none;stroke:currentColor}.filepond--list-scroller{z-index:6}.filepond--drop-label{z-index:5}.filepond--drip{z-index:3}.filepond--root>.filepond--panel{z-index:2}.filepond--browser{z-index:1}.filepond--root{box-sizing:border-box;contain:layout style size;direction:ltr;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:1rem;font-weight:450;line-height:normal;margin-bottom:1em;position:relative;text-align:left;text-rendering:optimizeLegibility}.filepond--root *{box-sizing:inherit;line-height:inherit}.filepond--root :not(text){font-size:inherit}.filepond--root[data-disabled]{pointer-events:none}.filepond--root[data-disabled] .filepond--list-scroller{pointer-events:all}.filepond--root[data-disabled] .filepond--list{pointer-events:none}.filepond--root .filepond--drop-label{min-height:4.75em}.filepond--root .filepond--list-scroller{margin-bottom:1em;margin-top:1em}.filepond--root .filepond--credits{bottom:-14px;color:inherit;font-size:11px;line-height:.85;opacity:.4;position:absolute;right:0;text-decoration:none;z-index:3}.filepond--root .filepond--credits[style]{bottom:auto;margin-top:14px;top:0}.filepond--action-edit-item.filepond--action-edit-item{height:2em;padding:.1875em;width:2em}.filepond--action-edit-item.filepond--action-edit-item[data-align*=center]{margin-left:-.1875em}.filepond--action-edit-item.filepond--action-edit-item[data-align*=bottom]{margin-bottom:-.1875em}.filepond--action-edit-item-alt{background:transparent;border:none;color:inherit;font-family:inherit;line-height:inherit;margin:0 0 0 .25em;outline:none;padding:0;pointer-events:all;position:absolute}.filepond--action-edit-item-alt svg{height:1.3125em;width:1.3125em}.filepond--action-edit-item-alt span{font-size:0;opacity:0}.filepond--root[data-style-panel-layout~=circle] .filepond--action-edit-item{opacity:1!important;visibility:visible!important}.filepond--image-preview-markup{left:0;position:absolute;top:0}.filepond--image-preview-wrapper{z-index:2}.filepond--image-preview-overlay{display:block;left:0;margin:0;max-height:7rem;min-height:5rem;opacity:0;pointer-events:none;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;z-index:2}.filepond--image-preview-overlay svg{color:inherit;height:auto;max-height:inherit;width:100%}.filepond--image-preview-overlay-idle{color:#282828d9;mix-blend-mode:multiply}.filepond--image-preview-overlay-success{color:#369763;mix-blend-mode:normal}.filepond--image-preview-overlay-failure{color:#c44e47;mix-blend-mode:normal}@supports (-webkit-marquee-repetition:infinite) and ((-o-object-fit:fill) or (object-fit:fill)){.filepond--image-preview-overlay-idle{mix-blend-mode:normal}}.filepond--image-preview-wrapper{background:#00000003;border-radius:.45em;height:100%;left:0;margin:0;overflow:hidden;position:absolute;right:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.filepond--image-preview{align-items:center;background:#222;display:flex;height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;will-change:transform,opacity;z-index:1}.filepond--image-clip{margin:0 auto;overflow:hidden;position:relative}.filepond--image-clip[data-transparency-indicator=grid] canvas,.filepond--image-clip[data-transparency-indicator=grid] img{background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' fill='%23eee'%3E%3Cpath d='M0 0h50v50H0M50 50h50v50H50'/%3E%3C/svg%3E");background-size:1.25em 1.25em}.filepond--image-bitmap,.filepond--image-vector{left:0;position:absolute;top:0;will-change:transform}.filepond--root[data-style-panel-layout~=integrated] .filepond--image-preview-wrapper{border-radius:0}.filepond--root[data-style-panel-layout~=integrated] .filepond--image-preview{align-items:center;display:flex;height:100%;justify-content:center}.filepond--root[data-style-panel-layout~=circle] .filepond--image-preview-wrapper{border-radius:99999rem}.filepond--root[data-style-panel-layout~=circle] .filepond--image-preview-overlay{bottom:0;top:auto;transform:scaleY(-1)}.filepond--root[data-style-panel-layout~=circle] .filepond--file .filepond--file-action-button[data-align*=bottom]:not([data-align*=center]){margin-bottom:.325em}.filepond--root[data-style-panel-layout~=circle] .filepond--file [data-align*=left]{left:calc(50% - 3em)}.filepond--root[data-style-panel-layout~=circle] .filepond--file [data-align*=right]{right:calc(50% - 3em)}.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=left],.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=right]{margin-bottom:.5125em}.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=center]{margin-bottom:.1875em;margin-left:.1875em;margin-top:0}.filepond--media-preview audio{display:none}.filepond--media-preview .audioplayer{margin:2.3em auto auto;width:calc(100% - 1.4em)}.filepond--media-preview .playpausebtn{background-position:50%;background-repeat:no-repeat;border:none;border-radius:25px;cursor:pointer;float:left;height:25px;margin-right:.3em;margin-top:.3em;outline:none;width:25px}.filepond--media-preview .playpausebtn:hover{background-color:#00000080}.filepond--media-preview .play{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAyElEQVQ4T9XUsWoCQRRG4XPaFL5SfIy8gKYKBCysrax8Ahs7qzQ2qVIFOwsrsbEWLEK6EBFGBrIQhN2d3dnGgalm+Jh7789Ix8uOPe4YDCH0gZ66atKW0pJDCE/AEngDXtRjCpwCRucbGANzNVTBqWBhfAJDdV+GNgWj8wtM41bPt3AbsDB2f69d/0dzwC0wUDe54A8wAWbqJbfkD+BZPeQO5QsYqYu6LKb0MIb7VT3VYfG8CnwEHtT3FKi4c8e/TZMyk3LYFrwCgMdHFbRDKS8AAAAASUVORK5CYII=)}.filepond--media-preview .pause{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAh0lEQVQ4T+2UsQkCURBE30PLMbAMMResQrAPsQ0TK9AqDKxGZeTLD74aGNwlhzfZssvADDMrPcOe+RggYZIJcG2s2KinMidZAvu6u6uzT8u+JCeZArfmcKUeK+EaONTdQy23bxgJX8aPHvIHsSnVuzTx36rn2pQFsGuqN//ZlK7vbIDvq6vkJ9yteBXzecYbAAAAAElFTkSuQmCC)}.filepond--media-preview .timeline{background:#ffffff4d;border-radius:15px;float:left;height:3px;margin-top:1em;width:calc(100% - 2.5em)}.filepond--media-preview .playhead{background:#fff;border-radius:50%;height:13px;margin-top:-5px;width:13px}.filepond--media-preview-wrapper{background:#00000003;border-radius:.45em;height:100%;left:0;margin:0;overflow:hidden;pointer-events:auto;position:absolute;right:0;top:0}.filepond--media-preview-wrapper:before{background:linear-gradient(180deg,#000,#0000);content:" ";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#00000000",GradientType=0);height:2em;position:absolute;width:100%;z-index:3}.filepond--media-preview{display:block;height:100%;position:relative;transform-origin:center center;width:100%;will-change:transform,opacity;z-index:1}.filepond--media-preview audio,.filepond--media-preview video{width:100%;will-change:transform}.filepond--root{--tw-bg-opacity:1;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:rgba(var(--gray-950),0.1);background-color:rgb(255 255 255/var(--tw-bg-opacity,1));border-radius:.5rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);margin-bottom:0}.filepond--root:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.2);background-color:hsla(0,0%,100%,.05)}.filepond--root[data-disabled=disabled]{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.filepond--root[data-disabled=disabled]:is(.dark *){--tw-ring-color:hsla(0,0%,100%,.1);background-color:transparent}.filepond--panel-root{background-color:transparent}.filepond--drop-label label{--tw-text-opacity:1;color:rgba(var(--gray-600),var(--tw-text-opacity,1));font-size:.875rem;line-height:1.25rem;padding:.75rem!important}.filepond--drop-label label:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.filepond--label-action{--tw-text-opacity:1;color:rgba(var(--primary-600),var(--tw-text-opacity,1));font-weight:500;text-decoration-line:none;transition-duration:75ms;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.filepond--label-action:hover{--tw-text-opacity:1;color:rgba(var(--primary-500),var(--tw-text-opacity,1))}.filepond--label-action:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.filepond--label-action:hover:is(.dark *){--tw-text-opacity:1;color:rgba(var(--primary-500),var(--tw-text-opacity,1))}.filepond--drip-blob{--tw-bg-opacity:1;background-color:rgba(var(--gray-400),var(--tw-bg-opacity,1))}.filepond--drip-blob:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-500),var(--tw-bg-opacity,1))}.filepond--root[data-style-panel-layout=grid] .filepond--item{display:inline;width:calc(50% - .5rem)}@media (min-width:1024px){.filepond--root[data-style-panel-layout=grid] .filepond--item{width:calc(33.33% - .5rem)}}.filepond--download-icon{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));display:inline-block;height:1rem;margin-inline-end:.25rem;pointer-events:auto;vertical-align:bottom;width:1rem}.filepond--download-icon:hover{background-color:hsla(0,0%,100%,.7)}.filepond--download-icon{-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0iZmVhdGhlciBmZWF0aGVyLWRvd25sb2FkIj48cGF0aCBkPSJNMjEgMTV2NGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtNE03IDEwbDUgNSA1LTVNMTIgMTVWMyIvPjwvc3ZnPg==);mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0iZmVhdGhlciBmZWF0aGVyLWRvd25sb2FkIj48cGF0aCBkPSJNMjEgMTV2NGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtNE03IDEwbDUgNSA1LTVNMTIgMTVWMyIvPjwvc3ZnPg==);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100%;mask-size:100%}.filepond--open-icon{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));display:inline-block;height:1rem;margin-inline-end:.25rem;pointer-events:auto;vertical-align:bottom;width:1rem}.filepond--open-icon:hover{background-color:hsla(0,0%,100%,.7)}.filepond--open-icon{-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJoLTYgdy02IiBmaWxsPSJub25lIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZD0iTTEwIDZINmEyIDIgMCAwIDAtMiAydjEwYTIgMiAwIDAgMCAyIDJoMTBhMiAyIDAgMCAwIDItMnYtNE0xNCA0aDZtMCAwdjZtMC02TDEwIDE0Ii8+PC9zdmc+);mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJoLTYgdy02IiBmaWxsPSJub25lIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZD0iTTEwIDZINmEyIDIgMCAwIDAtMiAydjEwYTIgMiAwIDAgMCAyIDJoMTBhMiAyIDAgMCAwIDItMnYtNE0xNCA0aDZtMCAwdjZtMC02TDEwIDE0Ii8+PC9zdmc+);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100%;mask-size:100%}.filepond--file-action-button.filepond--action-edit-item{background-color:rgba(0,0,0,.5)}.cropper-drag-box.cropper-crop.cropper-modal{background-color:rgba(var(--gray-100),.5);opacity:1}.cropper-drag-box.cropper-crop.cropper-modal:is(.dark *){background-color:rgba(var(--gray-900),.8)}.fi-fo-file-upload-circle-cropper .cropper-face,.fi-fo-file-upload-circle-cropper .cropper-view-box{border-radius:50%}.CodeMirror{color:#000;direction:ltr;font-family:monospace;height:300px}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{background-color:#f7f7f7;border-right:1px solid #ddd;white-space:nowrap}.CodeMirror-linenumber{color:#999;min-width:20px;padding:0 3px 0 5px;text-align:right;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{background:#7e7;border:0!important;width:auto}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:0 0}.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:0 0}.cm-fat-cursor{caret-color:transparent}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{inset:-50px 0 0;overflow:hidden;position:absolute}.CodeMirror-ruler{border-left:1px solid #ccc;bottom:0;position:absolute;top:0}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-invalidchar,.cm-s-default .cm-error{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:#ff96004d}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{background:#fff;overflow:hidden;position:relative}.CodeMirror-scroll{height:100%;margin-bottom:-50px;margin-right:-50px;outline:0;overflow:scroll!important;padding-bottom:50px;position:relative;z-index:0}.CodeMirror-sizer{border-right:50px solid transparent;position:relative}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{display:none;outline:0;position:absolute;z-index:6}.CodeMirror-vscrollbar{overflow-x:hidden;overflow-y:scroll;right:0;top:0}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-x:scroll;overflow-y:hidden}.CodeMirror-scrollbar-filler{bottom:0;right:0}.CodeMirror-gutter-filler{bottom:0;left:0}.CodeMirror-gutters{left:0;min-height:100%;position:absolute;top:0;z-index:3}.CodeMirror-gutter{display:inline-block;height:100%;margin-bottom:-50px;vertical-align:top;white-space:normal}.CodeMirror-gutter-wrapper{background:0 0!important;border:none!important;position:absolute;z-index:4}.CodeMirror-gutter-background{bottom:0;position:absolute;top:0;z-index:4}.CodeMirror-gutter-elt{cursor:default;position:absolute;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{word-wrap:normal;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:0;border-width:0;color:inherit;font-family:inherit;font-size:inherit;font-variant-ligatures:contextual;line-height:inherit;margin:0;overflow:visible;position:relative;white-space:pre;z-index:2}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{inset:0;position:absolute;z-index:0}.CodeMirror-linewidget{padding:.1px;position:relative;z-index:2}.CodeMirror-code{outline:0}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{box-sizing:content-box}.CodeMirror-measure{height:0;overflow:hidden;position:absolute;visibility:hidden;width:100%}.CodeMirror-cursor{pointer-events:none;position:absolute}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{position:relative;visibility:hidden;z-index:3}.CodeMirror-focused div.CodeMirror-cursors,div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:#ff06}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:0 0}.EasyMDEContainer{display:block}.CodeMirror-rtl pre{direction:rtl}.EasyMDEContainer.sided--no-fullscreen{display:flex;flex-direction:row;flex-wrap:wrap}.EasyMDEContainer .CodeMirror{word-wrap:break-word;border:1px solid #ced4da;border-bottom-left-radius:4px;border-bottom-right-radius:4px;box-sizing:border-box;font:inherit;height:auto;padding:10px;z-index:0}.EasyMDEContainer .CodeMirror-scroll{cursor:text}.EasyMDEContainer .CodeMirror-fullscreen{background:#fff;border-bottom-right-radius:0!important;border-right:none!important;height:auto;inset:50px 0 0;position:fixed!important;z-index:8}.EasyMDEContainer .CodeMirror-sided{width:50%!important}.EasyMDEContainer.sided--no-fullscreen .CodeMirror-sided{border-bottom-right-radius:0;border-right:none!important;flex:1 1 auto;position:relative}.EasyMDEContainer .CodeMirror-placeholder{opacity:.5}.EasyMDEContainer .CodeMirror-focused .CodeMirror-selected{background:#d9d9d9}.editor-toolbar{border-left:1px solid #ced4da;border-right:1px solid #ced4da;border-top:1px solid #ced4da;border-top-left-radius:4px;border-top-right-radius:4px;padding:9px 10px;position:relative;-webkit-user-select:none;-moz-user-select:none;-o-user-select:none;user-select:none}.editor-toolbar.fullscreen{background:#fff;border:0;box-sizing:border-box;height:50px;left:0;opacity:1;padding-bottom:10px;padding-top:10px;position:fixed;top:0;width:100%;z-index:9}.editor-toolbar.fullscreen:before{background:linear-gradient(90deg,#fff 0,#fff0);height:50px;left:0;margin:0;padding:0;position:fixed;top:0;width:20px}.editor-toolbar.fullscreen:after{background:linear-gradient(90deg,#fff0 0,#fff);height:50px;margin:0;padding:0;position:fixed;right:0;top:0;width:20px}.EasyMDEContainer.sided--no-fullscreen .editor-toolbar{width:100%}.editor-toolbar .easymde-dropdown,.editor-toolbar button{background:0 0;border:1px solid transparent;border-radius:3px;cursor:pointer;display:inline-block;height:30px;margin:0;padding:0;text-align:center;text-decoration:none!important}.editor-toolbar button{font-weight:700;min-width:30px;padding:0 6px;white-space:nowrap}.editor-toolbar button.active,.editor-toolbar button:hover{background:#fcfcfc;border-color:#95a5a6}.editor-toolbar i.separator{border-left:1px solid #d9d9d9;border-right:1px solid #fff;color:transparent;display:inline-block;margin:0 6px;text-indent:-10px;width:0}.editor-toolbar button:after{font-family:Arial,Helvetica Neue,Helvetica,sans-serif;font-size:65%;position:relative;top:2px;vertical-align:text-bottom}.editor-toolbar button.heading-1:after{content:"1"}.editor-toolbar button.heading-2:after{content:"2"}.editor-toolbar button.heading-3:after{content:"3"}.editor-toolbar button.heading-bigger:after{content:"\25b2"}.editor-toolbar button.heading-smaller:after{content:"\25bc"}.editor-toolbar.disabled-for-preview button:not(.no-disable){opacity:.6;pointer-events:none}@media only screen and (max-width:700px){.editor-toolbar i.no-mobile{display:none}}.editor-statusbar{color:#959694;font-size:12px;padding:8px 10px;text-align:right}.EasyMDEContainer.sided--no-fullscreen .editor-statusbar{width:100%}.editor-statusbar span{display:inline-block;margin-left:1em;min-width:4em}.editor-statusbar .lines:before{content:"lines: "}.editor-statusbar .words:before{content:"words: "}.editor-statusbar .characters:before{content:"characters: "}.editor-preview-full{height:100%;left:0;position:absolute;top:0;width:100%;z-index:7}.editor-preview-full,.editor-preview-side{box-sizing:border-box;display:none;overflow:auto}.editor-preview-side{word-wrap:break-word;border:1px solid #ddd;bottom:0;position:fixed;right:0;top:50px;width:50%;z-index:9}.editor-preview-active-side{display:block}.EasyMDEContainer.sided--no-fullscreen .editor-preview-active-side{flex:1 1 auto;height:auto;position:static}.editor-preview-active{display:block}.editor-preview{background:#fafafa;padding:10px}.editor-preview>p{margin-top:0}.editor-preview pre{background:#eee;margin-bottom:10px}.editor-preview table td,.editor-preview table th{border:1px solid #ddd;padding:5px}.cm-s-easymde .cm-tag{color:#63a35c}.cm-s-easymde .cm-attribute{color:#795da3}.cm-s-easymde .cm-string{color:#183691}.cm-s-easymde .cm-header-1{font-size:calc(1.375rem + 1.5vw)}.cm-s-easymde .cm-header-2{font-size:calc(1.325rem + .9vw)}.cm-s-easymde .cm-header-3{font-size:calc(1.3rem + .6vw)}.cm-s-easymde .cm-header-4{font-size:calc(1.275rem + .3vw)}.cm-s-easymde .cm-header-5{font-size:1.25rem}.cm-s-easymde .cm-header-6{font-size:1rem}.cm-s-easymde .cm-header-1,.cm-s-easymde .cm-header-2,.cm-s-easymde .cm-header-3,.cm-s-easymde .cm-header-4,.cm-s-easymde .cm-header-5,.cm-s-easymde .cm-header-6{line-height:1.2;margin-bottom:.5rem}.cm-s-easymde .cm-comment{background:#0000000d;border-radius:2px}.cm-s-easymde .cm-link{color:#7f8c8d}.cm-s-easymde .cm-url{color:#aab2b3}.cm-s-easymde .cm-quote{color:#7f8c8d;font-style:italic}.editor-toolbar .easymde-dropdown{border:1px solid #fff;border-radius:0;position:relative}.editor-toolbar .easymde-dropdown,.editor-toolbar .easymde-dropdown:hover{background:linear-gradient(to bottom right,#fff 0 84%,#333 50% 100%)}.easymde-dropdown-content{background-color:#f9f9f9;box-shadow:0 8px 16px #0003;display:block;padding:8px;position:absolute;top:30px;visibility:hidden;z-index:2}.easymde-dropdown:active .easymde-dropdown-content,.easymde-dropdown:focus .easymde-dropdown-content,.easymde-dropdown:focus-within .easymde-dropdown-content{visibility:visible}.easymde-dropdown-content button{display:block}span[data-img-src]:after{background-image:var(--bg-image);background-repeat:no-repeat;background-size:contain;content:"";display:block;height:0;max-height:100%;max-width:100%;padding-top:var(--height);width:var(--width)}.CodeMirror .cm-spell-error:not(.cm-url):not(.cm-comment):not(.cm-tag):not(.cm-word){background:#ff000026}:root{--color-cm-red:#991b1b;--color-cm-orange:#9a3412;--color-cm-amber:#92400e;--color-cm-yellow:#854d0e;--color-cm-lime:#3f6212;--color-cm-green:#166534;--color-cm-emerald:#065f46;--color-cm-teal:#115e59;--color-cm-cyan:#155e75;--color-cm-sky:#075985;--color-cm-blue:#1e40af;--color-cm-indigo:#3730a3;--color-cm-violet:#5b21b6;--color-cm-purple:#6b21a8;--color-cm-fuchsia:#86198f;--color-cm-pink:#9d174d;--color-cm-rose:#9f1239;--color-cm-gray:#18181b;--color-cm-gray-muted:#71717a;--color-cm-gray-background:#e4e4e7}.dark{--color-cm-red:#f87171;--color-cm-orange:#fb923c;--color-cm-amber:#fbbf24;--color-cm-yellow:#facc15;--color-cm-lime:#a3e635;--color-cm-green:#4ade80;--color-cm-emerald:#4ade80;--color-cm-teal:#2dd4bf;--color-cm-cyan:#22d3ee;--color-cm-sky:#38bdf8;--color-cm-blue:#60a5fa;--color-cm-indigo:#818cf8;--color-cm-violet:#a78bfa;--color-cm-purple:#c084fc;--color-cm-fuchsia:#e879f9;--color-cm-pink:#f472b6;--color-cm-rose:#fb7185;--color-cm-gray:#fafafa;--color-cm-gray-muted:#a1a1aa;--color-cm-gray-background:#52525b}.cm-s-easymde .cm-comment{background-color:transparent;color:var(--color-cm-gray-muted)}.EasyMDEContainer .CodeMirror-cursor{border-color:currentColor}.dark .EasyMDEContainer .cm-s-easymde span.CodeMirror-selectedtext{filter:invert(100%)}.EasyMDEContainer .cm-s-easymde .cm-keyword{color:var(--color-cm-violet)}.EasyMDEContainer .cm-s-easymde .cm-atom{color:var(--color-cm-blue)}.EasyMDEContainer .cm-s-easymde .cm-number{color:var(--color-cm-green)}.EasyMDEContainer .cm-s-easymde .cm-def{color:var(--color-cm-blue)}.EasyMDEContainer .cm-s-easymde .cm-variable{color:var(--color-cm-yellow)}.EasyMDEContainer .cm-s-easymde .cm-variable-2{color:var(--color-cm-blue)}.EasyMDEContainer .cm-s-easymde .cm-variable-3{color:var(--color-cm-emerald)}.EasyMDEContainer .cm-s-easymde .cm-operator,.EasyMDEContainer .cm-s-easymde .cm-property{color:var(--color-cm-gray)}.EasyMDEContainer .cm-s-easymde .cm-string,.EasyMDEContainer .cm-s-easymde .cm-string-2{color:var(--color-cm-rose)}.EasyMDEContainer .cm-s-easymde .cm-meta{color:var(--color-cm-gray-muted)}.EasyMDEContainer .cm-s-easymde .cm-error{color:var(--color-cm-red)}.EasyMDEContainer .cm-s-easymde .cm-qualifier{color:var(--color-cm-gray-muted)}.EasyMDEContainer .cm-s-easymde .cm-builtin{color:var(--color-cm-violet)}.EasyMDEContainer .cm-s-easymde .cm-bracket{color:var(--color-cm-gray-muted)}.EasyMDEContainer .cm-s-easymde .cm-tag{color:var(--color-cm-green)}.EasyMDEContainer .cm-s-easymde .cm-attribute{color:var(--color-cm-blue)}.EasyMDEContainer .cm-s-easymde .cm-hr{color:var(--color-cm-gray-muted)}.EasyMDEContainer .cm-s-easymde .cm-formatting-quote{color:var(--color-cm-sky)}.EasyMDEContainer .cm-s-easymde .cm-formatting-quote+.cm-quote{color:var(--color-cm-gray-muted)}.EasyMDEContainer .cm-s-easymde .cm-formatting-list,.EasyMDEContainer .cm-s-easymde .cm-formatting-list+.cm-variable-2,.EasyMDEContainer .cm-s-easymde .cm-tab+.cm-variable-2{color:var(--color-cm-gray)}.EasyMDEContainer .cm-s-easymde .cm-link{color:var(--color-cm-blue)}.EasyMDEContainer .cm-s-easymde .cm-tag{color:var(--color-cm-red)}.EasyMDEContainer .cm-s-easymde .cm-attribute{color:var(--color-cm-amber)}.EasyMDEContainer .cm-s-easymde .cm-attribute+.cm-string{color:var(--color-cm-green)}.EasyMDEContainer .cm-s-easymde .cm-formatting-code+.cm-comment:not(.cm-formatting-code){background-color:var(--color-cm-gray-background);color:var(--color-cm-gray)}.EasyMDEContainer .cm-s-easymde .cm-header-1{font-size:1.875rem;line-height:2.25rem}.EasyMDEContainer .cm-s-easymde .cm-header-2{font-size:1.5rem;line-height:2rem}.EasyMDEContainer .cm-s-easymde .cm-header-3{font-size:1.25rem;line-height:1.75rem}.EasyMDEContainer .cm-s-easymde .cm-header-4{font-size:1.125rem;line-height:1.75rem}.EasyMDEContainer .cm-s-easymde .cm-header-5{font-size:1rem;line-height:1.5rem}.EasyMDEContainer .cm-s-easymde .cm-header-6{font-size:.875rem;line-height:1.25rem}.EasyMDEContainer .cm-s-easymde .cm-comment{background-image:none}.EasyMDEContainer .CodeMirror,.EasyMDEContainer .cm-s-easymde .cm-formatting-code-block,.EasyMDEContainer .cm-s-easymde .cm-tab+.cm-comment{background-color:transparent;color:inherit}.EasyMDEContainer .CodeMirror{border-style:none;padding:.375rem .75rem}.EasyMDEContainer .CodeMirror-scroll{height:auto}.EasyMDEContainer .editor-toolbar{--tw-border-opacity:1;border-color:rgba(var(--gray-200),var(--tw-border-opacity,1));border-radius:0;border-width:0 0 1px;-moz-column-gap:.25rem;column-gap:.25rem;display:flex;overflow-x:auto;padding:.5rem .625rem}.EasyMDEContainer .editor-toolbar:is(.dark *){border-color:hsla(0,0%,100%,.1)}.EasyMDEContainer .editor-toolbar button{border-radius:.5rem;border-style:none;cursor:pointer;display:grid;height:2rem;padding:0;place-content:center;transition-duration:75ms;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);width:2rem}.EasyMDEContainer .editor-toolbar button:hover{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.EasyMDEContainer .editor-toolbar button:focus-visible{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.EasyMDEContainer .editor-toolbar button:hover:is(.dark *){background-color:hsla(0,0%,100%,.05)}.EasyMDEContainer .editor-toolbar button:focus-visible:is(.dark *){background-color:hsla(0,0%,100%,.05)}.EasyMDEContainer .editor-toolbar button.active{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.EasyMDEContainer .editor-toolbar button.active:is(.dark *){background-color:hsla(0,0%,100%,.05)}.EasyMDEContainer .editor-toolbar button:before{--tw-bg-opacity:1;background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1));display:block;height:1.25rem;width:1.25rem}.EasyMDEContainer .editor-toolbar button:is(.dark *):before{--tw-bg-opacity:1;background-color:rgba(var(--gray-300),var(--tw-bg-opacity,1))}.EasyMDEContainer .editor-toolbar button:before{content:"";-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.EasyMDEContainer .editor-toolbar button.active:before{--tw-bg-opacity:1;background-color:rgba(var(--primary-600),var(--tw-bg-opacity,1))}.EasyMDEContainer .editor-toolbar button.active:is(.dark *):before{--tw-bg-opacity:1;background-color:rgba(var(--primary-400),var(--tw-bg-opacity,1))}.EasyMDEContainer .editor-toolbar .separator{border-style:none;margin:0!important;width:.25rem}.EasyMDEContainer .editor-toolbar .bold:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M4 3a1 1 0 0 1 1-1h6a4.5 4.5 0 0 1 3.274 7.587A4.75 4.75 0 0 1 11.25 18H5a1 1 0 0 1-1-1V3Zm2.5 5.5v-4H11a2 2 0 1 1 0 4H6.5Zm0 2.5v4.5h4.75a2.25 2.25 0 0 0 0-4.5H6.5Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M4 3a1 1 0 0 1 1-1h6a4.5 4.5 0 0 1 3.274 7.587A4.75 4.75 0 0 1 11.25 18H5a1 1 0 0 1-1-1V3Zm2.5 5.5v-4H11a2 2 0 1 1 0 4H6.5Zm0 2.5v4.5h4.75a2.25 2.25 0 0 0 0-4.5H6.5Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .italic:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M8 2.75A.75.75 0 0 1 8.75 2h7.5a.75.75 0 0 1 0 1.5h-3.215l-4.483 13h2.698a.75.75 0 0 1 0 1.5h-7.5a.75.75 0 0 1 0-1.5h3.215l4.483-13H8.75A.75.75 0 0 1 8 2.75Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M8 2.75A.75.75 0 0 1 8.75 2h7.5a.75.75 0 0 1 0 1.5h-3.215l-4.483 13h2.698a.75.75 0 0 1 0 1.5h-7.5a.75.75 0 0 1 0-1.5h3.215l4.483-13H8.75A.75.75 0 0 1 8 2.75Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .strikethrough:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M11.617 3.963c-1.186-.318-2.418-.323-3.416.015-.992.336-1.49.91-1.642 1.476-.152.566-.007 1.313.684 2.1.528.6 1.273 1.1 2.128 1.446h7.879a.75.75 0 0 1 0 1.5H2.75a.75.75 0 0 1 0-1.5h3.813a5.976 5.976 0 0 1-.447-.456C5.18 7.479 4.798 6.231 5.11 5.066c.312-1.164 1.268-2.055 2.61-2.509 1.336-.451 2.877-.42 4.286-.043.856.23 1.684.592 2.409 1.074a.75.75 0 1 1-.83 1.25 6.723 6.723 0 0 0-1.968-.875Zm1.909 8.123a.75.75 0 0 1 1.015.309c.53.99.607 2.062.18 3.01-.421.94-1.289 1.648-2.441 2.038-1.336.452-2.877.42-4.286.043-1.409-.377-2.759-1.121-3.69-2.18a.75.75 0 1 1 1.127-.99c.696.791 1.765 1.403 2.952 1.721 1.186.318 2.418.323 3.416-.015.853-.288 1.34-.756 1.555-1.232.21-.467.205-1.049-.136-1.69a.75.75 0 0 1 .308-1.014Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M11.617 3.963c-1.186-.318-2.418-.323-3.416.015-.992.336-1.49.91-1.642 1.476-.152.566-.007 1.313.684 2.1.528.6 1.273 1.1 2.128 1.446h7.879a.75.75 0 0 1 0 1.5H2.75a.75.75 0 0 1 0-1.5h3.813a5.976 5.976 0 0 1-.447-.456C5.18 7.479 4.798 6.231 5.11 5.066c.312-1.164 1.268-2.055 2.61-2.509 1.336-.451 2.877-.42 4.286-.043.856.23 1.684.592 2.409 1.074a.75.75 0 1 1-.83 1.25 6.723 6.723 0 0 0-1.968-.875Zm1.909 8.123a.75.75 0 0 1 1.015.309c.53.99.607 2.062.18 3.01-.421.94-1.289 1.648-2.441 2.038-1.336.452-2.877.42-4.286.043-1.409-.377-2.759-1.121-3.69-2.18a.75.75 0 1 1 1.127-.99c.696.791 1.765 1.403 2.952 1.721 1.186.318 2.418.323 3.416-.015.853-.288 1.34-.756 1.555-1.232.21-.467.205-1.049-.136-1.69a.75.75 0 0 1 .308-1.014Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .link:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath d='M12.232 4.232a2.5 2.5 0 0 1 3.536 3.536l-1.225 1.224a.75.75 0 0 0 1.061 1.06l1.224-1.224a4 4 0 0 0-5.656-5.656l-3 3a4 4 0 0 0 .225 5.865.75.75 0 0 0 .977-1.138 2.5 2.5 0 0 1-.142-3.667l3-3Z'/%3E%3Cpath d='M11.603 7.963a.75.75 0 0 0-.977 1.138 2.5 2.5 0 0 1 .142 3.667l-3 3a2.5 2.5 0 0 1-3.536-3.536l1.225-1.224a.75.75 0 0 0-1.061-1.06l-1.224 1.224a4 4 0 1 0 5.656 5.656l3-3a4 4 0 0 0-.225-5.865Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath d='M12.232 4.232a2.5 2.5 0 0 1 3.536 3.536l-1.225 1.224a.75.75 0 0 0 1.061 1.06l1.224-1.224a4 4 0 0 0-5.656-5.656l-3 3a4 4 0 0 0 .225 5.865.75.75 0 0 0 .977-1.138 2.5 2.5 0 0 1-.142-3.667l3-3Z'/%3E%3Cpath d='M11.603 7.963a.75.75 0 0 0-.977 1.138 2.5 2.5 0 0 1 .142 3.667l-3 3a2.5 2.5 0 0 1-3.536-3.536l1.225-1.224a.75.75 0 0 0-1.061-1.06l-1.224 1.224a4 4 0 1 0 5.656 5.656l3-3a4 4 0 0 0-.225-5.865Z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .heading:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M2.75 4a.75.75 0 0 1 .75.75v4.5h5v-4.5a.75.75 0 0 1 1.5 0v10.5a.75.75 0 0 1-1.5 0v-4.5h-5v4.5a.75.75 0 0 1-1.5 0V4.75A.75.75 0 0 1 2.75 4ZM13 8.75a.75.75 0 0 1 .75-.75h1.75a.75.75 0 0 1 .75.75v5.75h1a.75.75 0 0 1 0 1.5h-3.5a.75.75 0 0 1 0-1.5h1v-5h-1a.75.75 0 0 1-.75-.75Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M2.75 4a.75.75 0 0 1 .75.75v4.5h5v-4.5a.75.75 0 0 1 1.5 0v10.5a.75.75 0 0 1-1.5 0v-4.5h-5v4.5a.75.75 0 0 1-1.5 0V4.75A.75.75 0 0 1 2.75 4ZM13 8.75a.75.75 0 0 1 .75-.75h1.75a.75.75 0 0 1 .75.75v5.75h1a.75.75 0 0 1 0 1.5h-3.5a.75.75 0 0 1 0-1.5h1v-5h-1a.75.75 0 0 1-.75-.75Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .quote:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M10 2c-2.236 0-4.43.18-6.57.524C1.993 2.755 1 4.014 1 5.426v5.148c0 1.413.993 2.67 2.43 2.902 1.168.188 2.352.327 3.55.414.28.02.521.18.642.413l1.713 3.293a.75.75 0 0 0 1.33 0l1.713-3.293a.783.783 0 0 1 .642-.413 41.102 41.102 0 0 0 3.55-.414c1.437-.231 2.43-1.49 2.43-2.902V5.426c0-1.413-.993-2.67-2.43-2.902A41.289 41.289 0 0 0 10 2ZM6.75 6a.75.75 0 0 0 0 1.5h6.5a.75.75 0 0 0 0-1.5h-6.5Zm0 2.5a.75.75 0 0 0 0 1.5h3.5a.75.75 0 0 0 0-1.5h-3.5Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M10 2c-2.236 0-4.43.18-6.57.524C1.993 2.755 1 4.014 1 5.426v5.148c0 1.413.993 2.67 2.43 2.902 1.168.188 2.352.327 3.55.414.28.02.521.18.642.413l1.713 3.293a.75.75 0 0 0 1.33 0l1.713-3.293a.783.783 0 0 1 .642-.413 41.102 41.102 0 0 0 3.55-.414c1.437-.231 2.43-1.49 2.43-2.902V5.426c0-1.413-.993-2.67-2.43-2.902A41.289 41.289 0 0 0 10 2ZM6.75 6a.75.75 0 0 0 0 1.5h6.5a.75.75 0 0 0 0-1.5h-6.5Zm0 2.5a.75.75 0 0 0 0 1.5h3.5a.75.75 0 0 0 0-1.5h-3.5Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .code:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M6.28 5.22a.75.75 0 0 1 0 1.06L2.56 10l3.72 3.72a.75.75 0 0 1-1.06 1.06L.97 10.53a.75.75 0 0 1 0-1.06l4.25-4.25a.75.75 0 0 1 1.06 0Zm7.44 0a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L17.44 10l-3.72-3.72a.75.75 0 0 1 0-1.06Zm-2.343-3.209a.75.75 0 0 1 .612.867l-2.5 14.5a.75.75 0 0 1-1.478-.255l2.5-14.5a.75.75 0 0 1 .866-.612Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M6.28 5.22a.75.75 0 0 1 0 1.06L2.56 10l3.72 3.72a.75.75 0 0 1-1.06 1.06L.97 10.53a.75.75 0 0 1 0-1.06l4.25-4.25a.75.75 0 0 1 1.06 0Zm7.44 0a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L17.44 10l-3.72-3.72a.75.75 0 0 1 0-1.06Zm-2.343-3.209a.75.75 0 0 1 .612.867l-2.5 14.5a.75.75 0 0 1-1.478-.255l2.5-14.5a.75.75 0 0 1 .866-.612Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .unordered-list:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M6 4.75A.75.75 0 0 1 6.75 4h10.5a.75.75 0 0 1 0 1.5H6.75A.75.75 0 0 1 6 4.75ZM6 10a.75.75 0 0 1 .75-.75h10.5a.75.75 0 0 1 0 1.5H6.75A.75.75 0 0 1 6 10Zm0 5.25a.75.75 0 0 1 .75-.75h10.5a.75.75 0 0 1 0 1.5H6.75a.75.75 0 0 1-.75-.75ZM1.99 4.75a1 1 0 0 1 1-1H3a1 1 0 0 1 1 1v.01a1 1 0 0 1-1 1h-.01a1 1 0 0 1-1-1v-.01Zm0 10.5a1 1 0 0 1 1-1H3a1 1 0 0 1 1 1v.01a1 1 0 0 1-1 1h-.01a1 1 0 0 1-1-1v-.01Zm0-5.25a1 1 0 0 1 1-1H3a1 1 0 0 1 1 1v.01a1 1 0 0 1-1 1h-.01a1 1 0 0 1-1-1V10Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M6 4.75A.75.75 0 0 1 6.75 4h10.5a.75.75 0 0 1 0 1.5H6.75A.75.75 0 0 1 6 4.75ZM6 10a.75.75 0 0 1 .75-.75h10.5a.75.75 0 0 1 0 1.5H6.75A.75.75 0 0 1 6 10Zm0 5.25a.75.75 0 0 1 .75-.75h10.5a.75.75 0 0 1 0 1.5H6.75a.75.75 0 0 1-.75-.75ZM1.99 4.75a1 1 0 0 1 1-1H3a1 1 0 0 1 1 1v.01a1 1 0 0 1-1 1h-.01a1 1 0 0 1-1-1v-.01Zm0 10.5a1 1 0 0 1 1-1H3a1 1 0 0 1 1 1v.01a1 1 0 0 1-1 1h-.01a1 1 0 0 1-1-1v-.01Zm0-5.25a1 1 0 0 1 1-1H3a1 1 0 0 1 1 1v.01a1 1 0 0 1-1 1h-.01a1 1 0 0 1-1-1V10Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .ordered-list:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath d='M3 1.25a.75.75 0 0 0 0 1.5h.25v2.5a.75.75 0 0 0 1.5 0V2A.75.75 0 0 0 4 1.25H3Zm-.03 7.404a3.5 3.5 0 0 1 1.524-.12.034.034 0 0 1-.012.012L2.415 9.579A.75.75 0 0 0 2 10.25v1c0 .414.336.75.75.75h2.5a.75.75 0 0 0 0-1.5H3.927l1.225-.613c.52-.26.848-.79.848-1.371 0-.647-.429-1.327-1.193-1.451a5.03 5.03 0 0 0-2.277.155.75.75 0 0 0 .44 1.434ZM7.75 3a.75.75 0 0 0 0 1.5h9.5a.75.75 0 0 0 0-1.5h-9.5Zm0 6.25a.75.75 0 0 0 0 1.5h9.5a.75.75 0 0 0 0-1.5h-9.5Zm0 6.25a.75.75 0 0 0 0 1.5h9.5a.75.75 0 0 0 0-1.5h-9.5Zm-5.125-1.625a.75.75 0 0 0 0 1.5h1.5a.125.125 0 0 1 0 .25H3.5a.75.75 0 0 0 0 1.5h.625a.125.125 0 0 1 0 .25h-1.5a.75.75 0 0 0 0 1.5h1.5a1.625 1.625 0 0 0 1.37-2.5 1.625 1.625 0 0 0-1.37-2.5h-1.5Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath d='M3 1.25a.75.75 0 0 0 0 1.5h.25v2.5a.75.75 0 0 0 1.5 0V2A.75.75 0 0 0 4 1.25H3Zm-.03 7.404a3.5 3.5 0 0 1 1.524-.12.034.034 0 0 1-.012.012L2.415 9.579A.75.75 0 0 0 2 10.25v1c0 .414.336.75.75.75h2.5a.75.75 0 0 0 0-1.5H3.927l1.225-.613c.52-.26.848-.79.848-1.371 0-.647-.429-1.327-1.193-1.451a5.03 5.03 0 0 0-2.277.155.75.75 0 0 0 .44 1.434ZM7.75 3a.75.75 0 0 0 0 1.5h9.5a.75.75 0 0 0 0-1.5h-9.5Zm0 6.25a.75.75 0 0 0 0 1.5h9.5a.75.75 0 0 0 0-1.5h-9.5Zm0 6.25a.75.75 0 0 0 0 1.5h9.5a.75.75 0 0 0 0-1.5h-9.5Zm-5.125-1.625a.75.75 0 0 0 0 1.5h1.5a.125.125 0 0 1 0 .25H3.5a.75.75 0 0 0 0 1.5h.625a.125.125 0 0 1 0 .25h-1.5a.75.75 0 0 0 0 1.5h1.5a1.625 1.625 0 0 0 1.37-2.5 1.625 1.625 0 0 0-1.37-2.5h-1.5Z'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .table:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M.99 5.24A2.25 2.25 0 0 1 3.25 3h13.5A2.25 2.25 0 0 1 19 5.25l.01 9.5A2.25 2.25 0 0 1 16.76 17H3.26A2.267 2.267 0 0 1 1 14.74l-.01-9.5Zm8.26 9.52v-.625a.75.75 0 0 0-.75-.75H3.25a.75.75 0 0 0-.75.75v.615c0 .414.336.75.75.75h5.373a.75.75 0 0 0 .627-.74Zm1.5 0a.75.75 0 0 0 .627.74h5.373a.75.75 0 0 0 .75-.75v-.615a.75.75 0 0 0-.75-.75H11.5a.75.75 0 0 0-.75.75v.625Zm6.75-3.63v-.625a.75.75 0 0 0-.75-.75H11.5a.75.75 0 0 0-.75.75v.625c0 .414.336.75.75.75h5.25a.75.75 0 0 0 .75-.75Zm-8.25 0v-.625a.75.75 0 0 0-.75-.75H3.25a.75.75 0 0 0-.75.75v.625c0 .414.336.75.75.75H8.5a.75.75 0 0 0 .75-.75ZM17.5 7.5v-.625a.75.75 0 0 0-.75-.75H11.5a.75.75 0 0 0-.75.75V7.5c0 .414.336.75.75.75h5.25a.75.75 0 0 0 .75-.75Zm-8.25 0v-.625a.75.75 0 0 0-.75-.75H3.25a.75.75 0 0 0-.75.75V7.5c0 .414.336.75.75.75H8.5a.75.75 0 0 0 .75-.75Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M.99 5.24A2.25 2.25 0 0 1 3.25 3h13.5A2.25 2.25 0 0 1 19 5.25l.01 9.5A2.25 2.25 0 0 1 16.76 17H3.26A2.267 2.267 0 0 1 1 14.74l-.01-9.5Zm8.26 9.52v-.625a.75.75 0 0 0-.75-.75H3.25a.75.75 0 0 0-.75.75v.615c0 .414.336.75.75.75h5.373a.75.75 0 0 0 .627-.74Zm1.5 0a.75.75 0 0 0 .627.74h5.373a.75.75 0 0 0 .75-.75v-.615a.75.75 0 0 0-.75-.75H11.5a.75.75 0 0 0-.75.75v.625Zm6.75-3.63v-.625a.75.75 0 0 0-.75-.75H11.5a.75.75 0 0 0-.75.75v.625c0 .414.336.75.75.75h5.25a.75.75 0 0 0 .75-.75Zm-8.25 0v-.625a.75.75 0 0 0-.75-.75H3.25a.75.75 0 0 0-.75.75v.625c0 .414.336.75.75.75H8.5a.75.75 0 0 0 .75-.75ZM17.5 7.5v-.625a.75.75 0 0 0-.75-.75H11.5a.75.75 0 0 0-.75.75V7.5c0 .414.336.75.75.75h5.25a.75.75 0 0 0 .75-.75Zm-8.25 0v-.625a.75.75 0 0 0-.75-.75H3.25a.75.75 0 0 0-.75.75V7.5c0 .414.336.75.75.75H8.5a.75.75 0 0 0 .75-.75Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .upload-image:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M1 5.25A2.25 2.25 0 0 1 3.25 3h13.5A2.25 2.25 0 0 1 19 5.25v9.5A2.25 2.25 0 0 1 16.75 17H3.25A2.25 2.25 0 0 1 1 14.75v-9.5Zm1.5 5.81v3.69c0 .414.336.75.75.75h13.5a.75.75 0 0 0 .75-.75v-2.69l-2.22-2.219a.75.75 0 0 0-1.06 0l-1.91 1.909.47.47a.75.75 0 1 1-1.06 1.06L6.53 8.091a.75.75 0 0 0-1.06 0l-2.97 2.97ZM12 7a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M1 5.25A2.25 2.25 0 0 1 3.25 3h13.5A2.25 2.25 0 0 1 19 5.25v9.5A2.25 2.25 0 0 1 16.75 17H3.25A2.25 2.25 0 0 1 1 14.75v-9.5Zm1.5 5.81v3.69c0 .414.336.75.75.75h13.5a.75.75 0 0 0 .75-.75v-2.69l-2.22-2.219a.75.75 0 0 0-1.06 0l-1.91 1.909.47.47a.75.75 0 1 1-1.06 1.06L6.53 8.091a.75.75 0 0 0-1.06 0l-2.97 2.97ZM12 7a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .undo:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M7.793 2.232a.75.75 0 0 1-.025 1.06L3.622 7.25h10.003a5.375 5.375 0 0 1 0 10.75H10.75a.75.75 0 0 1 0-1.5h2.875a3.875 3.875 0 0 0 0-7.75H3.622l4.146 3.957a.75.75 0 0 1-1.036 1.085l-5.5-5.25a.75.75 0 0 1 0-1.085l5.5-5.25a.75.75 0 0 1 1.06.025Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M7.793 2.232a.75.75 0 0 1-.025 1.06L3.622 7.25h10.003a5.375 5.375 0 0 1 0 10.75H10.75a.75.75 0 0 1 0-1.5h2.875a3.875 3.875 0 0 0 0-7.75H3.622l4.146 3.957a.75.75 0 0 1-1.036 1.085l-5.5-5.25a.75.75 0 0 1 0-1.085l5.5-5.25a.75.75 0 0 1 1.06.025Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-toolbar .redo:before{-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M12.207 2.232a.75.75 0 0 0 .025 1.06l4.146 3.958H6.375a5.375 5.375 0 0 0 0 10.75H9.25a.75.75 0 0 0 0-1.5H6.375a3.875 3.875 0 0 1 0-7.75h10.003l-4.146 3.957a.75.75 0 0 0 1.036 1.085l5.5-5.25a.75.75 0 0 0 0-1.085l-5.5-5.25a.75.75 0 0 0-1.06.025Z' clip-rule='evenodd'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor' class='size-5'%3E%3Cpath fill-rule='evenodd' d='M12.207 2.232a.75.75 0 0 0 .025 1.06l4.146 3.958H6.375a5.375 5.375 0 0 0 0 10.75H9.25a.75.75 0 0 0 0-1.5H6.375a3.875 3.875 0 0 1 0-7.75h10.003l-4.146 3.957a.75.75 0 0 0 1.036 1.085l5.5-5.25a.75.75 0 0 0 0-1.085l-5.5-5.25a.75.75 0 0 0-1.06.025Z' clip-rule='evenodd'/%3E%3C/svg%3E")}.EasyMDEContainer .editor-statusbar{display:none}.fi-fo-rich-editor trix-toolbar .trix-dialogs{position:relative}.fi-fo-rich-editor trix-toolbar .trix-dialog{--tw-bg-opacity:1;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1));border-radius:.5rem;bottom:auto;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);left:0;padding:.5rem;position:absolute;right:0;top:1rem}.fi-fo-rich-editor trix-toolbar .trix-dialog:is(.dark *){--tw-bg-opacity:1;background-color:rgba(var(--gray-800),var(--tw-bg-opacity,1))}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields{display:flex;flex-direction:column;gap:.5rem;width:100%}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-button-group{display:flex;gap:.5rem}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input{--tw-bg-opacity:1;--tw-text-opacity:1;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:rgba(var(--gray-950),0.1);background-color:rgb(255 255 255/var(--tw-bg-opacity,1));border-radius:.375rem;border-style:none;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);color:rgba(var(--gray-950),var(--tw-text-opacity,1));display:block;font-size:.875rem;line-height:1.25rem;outline:2px solid transparent;outline-offset:2px;padding-bottom:.375rem;padding-inline-end:.75rem;padding-top:.375rem;padding-inline-start:.75rem;transition-duration:75ms;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input::-moz-placeholder{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input::placeholder{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-600),var(--tw-ring-opacity,1))}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input:is(.dark *){--tw-bg-opacity:1;--tw-text-opacity:1;--tw-ring-color:hsla(0,0%,100%,.2);background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1));color:rgb(255 255 255/var(--tw-text-opacity,1))}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input:is(.dark *)::-moz-placeholder{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input:is(.dark *)::placeholder{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input:focus-within:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgba(var(--primary-600),var(--tw-ring-opacity,1))}@media (min-width:640px){.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-input{font-size:.875rem;line-height:1.5rem}}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-button-group .trix-button{--tw-bg-opacity:1;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-200),var(--tw-ring-opacity,1));background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1));border-radius:.375rem;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);font-size:.75rem;line-height:1rem;padding:.125rem .5rem}.fi-fo-rich-editor trix-toolbar .trix-dialog__link-fields .trix-button-group .trix-button:is(.dark *){--tw-bg-opacity:1;--tw-ring-opacity:1;--tw-ring-color:rgba(var(--gray-600),var(--tw-ring-opacity,1));background-color:rgba(var(--gray-700),var(--tw-bg-opacity,1))}.fi-fo-rich-editor trix-editor:empty:before{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.fi-fo-rich-editor trix-editor:empty:is(.dark *):before{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.fi-fo-rich-editor trix-editor:empty:before{content:attr(placeholder)}.fi-fo-rich-editor trix-editor.prose :where(ol):not(:where([class~=not-prose] *)),.fi-fo-rich-editor trix-editor.prose :where(ul):not(:where([class~=not-prose] *)){padding-inline-end:0!important;padding-inline-start:1.625em!important}.fi-fo-rich-editor trix-editor.prose :where(ul>li):not(:where([class~=not-prose] *)){padding-inline-end:0!important;padding-inline-start:.375em!important}select:not(.choices){background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E")}[dir=rtl] select{background-position:left .5rem center!important}.choices{outline:2px solid transparent;outline-offset:2px;position:relative}.choices [hidden]{display:none!important}.choices[data-type*=select-one] .has-no-choices{display:none}.choices[data-type*=select-one] .choices__input{display:block;margin:0;width:100%}.choices__inner{background-repeat:no-repeat;outline:2px solid transparent;outline-offset:2px;padding-bottom:.375rem;padding-inline-end:2rem;padding-top:.375rem;padding-inline-start:.75rem}@media (min-width:640px){.choices__inner{font-size:.875rem;line-height:1.5rem}}.choices__inner{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-size:1.5em 1.5em;&:has(.choices__button){padding-inline-end:3.5rem}}.choices.is-disabled .choices__inner{cursor:default}[dir=rtl] .choices__inner{background-position:left .5rem center}.choices__list--single{display:inline-block}.choices__list--single .choices__item{--tw-text-opacity:1;color:rgba(var(--gray-950),var(--tw-text-opacity,1))}.choices__list--single .choices__item:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.choices.is-disabled .choices__list--single .choices__item{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.choices.is-disabled .choices__list--single .choices__item:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.choices__list--multiple{display:flex;flex-wrap:wrap;gap:.375rem}.choices__list--multiple:not(:empty){margin-bottom:.25rem;margin-left:-.25rem;margin-right:-.25rem;padding-bottom:.125rem;padding-top:.125rem}.choices__list--multiple .choices__item{--tw-bg-opacity:1;--tw-text-opacity:1;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-inset:inset;--tw-ring-color:rgba(var(--primary-600),0.1);align-items:center;background-color:rgba(var(--primary-50),var(--tw-bg-opacity,1));border-radius:.375rem;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);color:rgba(var(--primary-600),var(--tw-text-opacity,1));display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;line-height:1rem;padding:.25rem .5rem;word-break:break-all}.choices__list--multiple .choices__item:is(.dark *){--tw-text-opacity:1;--tw-ring-color:rgba(var(--primary-400),0.3);background-color:rgba(var(--primary-400),.1);color:rgba(var(--primary-400),var(--tw-text-opacity,1))}.choices__list--dropdown,.choices__list[aria-expanded]{--tw-bg-opacity:1;--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:rgba(var(--gray-950),0.05);background-color:rgb(255 255 255/var(--tw-bg-opacity,1));border-radius:.5rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);display:none;font-size:.875rem;line-height:1.25rem;margin-top:.5rem;overflow:hidden;overflow-wrap:break-word;position:absolute;top:100%;width:100%;will-change:visibility;z-index:10}.choices__list--dropdown:is(.dark *),.choices__list[aria-expanded]:is(.dark *){--tw-bg-opacity:1;--tw-ring-color:hsla(0,0%,100%,.1);background-color:rgba(var(--gray-900),var(--tw-bg-opacity,1))}.is-active.choices__list--dropdown,.is-active.choices__list[aria-expanded]{display:block;padding:.25rem}.choices__list--dropdown .choices__list,.choices__list[aria-expanded] .choices__list{max-height:15rem;overflow:auto;will-change:scroll-position}.choices__item--choice{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1));padding:.5rem;transition-duration:75ms;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.choices__item--choice:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.choices__item--choice.choices__item--selectable{--tw-text-opacity:1;border-radius:.375rem;color:rgba(var(--gray-950),var(--tw-text-opacity,1))}.choices__item--choice.choices__item--selectable:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.choices__list--dropdown .choices__item--selectable.is-highlighted,.choices__list[aria-expanded] .choices__item--selectable.is-highlighted{--tw-bg-opacity:1;background-color:rgba(var(--gray-50),var(--tw-bg-opacity,1))}.choices__list--dropdown .choices__item--selectable.is-highlighted:is(.dark *),.choices__list[aria-expanded] .choices__item--selectable.is-highlighted:is(.dark *){background-color:hsla(0,0%,100%,.05)}.choices__item{cursor:default}.choices__item--disabled{pointer-events:none}.choices__item--disabled:disabled{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.choices__item--disabled:disabled:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.choices.is-disabled .choices__placeholder.choices__item,.choices__placeholder.choices__item{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1));cursor:default}.choices.is-disabled .choices__placeholder.choices__item:is(.dark *),.choices__placeholder.choices__item:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.choices__button{background-color:transparent;background-position:50%;background-repeat:no-repeat;border-width:0;outline:2px solid transparent;outline-offset:2px;text-indent:-9999px}.choices[data-type*=select-one] .choices__button{height:1rem;inset-inline-end:0;margin-inline-end:2.25rem;opacity:.5;padding:0;position:absolute;transition-duration:75ms;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);width:1rem}.choices[data-type*=select-one] .choices__button:is(.dark *){opacity:.4}.choices[data-type*=select-one] .choices__button{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJtMi41OTIuMDQ0IDE4LjM2NCAxOC4zNjQtMi41NDggMi41NDhMLjA0NCAyLjU5MnoiLz48cGF0aCBkPSJNMCAxOC4zNjQgMTguMzY0IDBsMi41NDggMi41NDhMMi41NDggMjAuOTEyeiIvPjwvZz48L3N2Zz4=);background-size:.7142em .7142em;top:calc(50% - .5714em)}.dark .choices[data-type*=select-one] .choices__button{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJtMi41OTIuMDQ0IDE4LjM2NCAxOC4zNjQtMi41NDggMi41NDhMLjA0NCAyLjU5MnoiLz48cGF0aCBkPSJNMCAxOC4zNjQgMTguMzY0IDBsMi41NDggMi41NDhMMi41NDggMjAuOTEyeiIvPjwvZz48L3N2Zz4=)}.choices[data-type*=select-multiple] .choices__button{height:1rem;opacity:.5;width:1rem}.choices[data-type*=select-multiple] .choices__button:is(.dark *){opacity:.4}.choices[data-type*=select-multiple] .choices__button{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJtMi41OTIuMDQ0IDE4LjM2NCAxOC4zNjQtMi41NDggMi41NDhMLjA0NCAyLjU5MnoiLz48cGF0aCBkPSJNMCAxOC4zNjQgMTguMzY0IDBsMi41NDggMi41NDhMMi41NDggMjAuOTEyeiIvPjwvZz48L3N2Zz4=);background-size:.7142em .7142em}.dark .choices[data-type*=select-multiple] .choices__button{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJtMi41OTIuMDQ0IDE4LjM2NCAxOC4zNjQtMi41NDggMi41NDhMLjA0NCAyLjU5MnoiLz48cGF0aCBkPSJNMCAxOC4zNjQgMTguMzY0IDBsMi41NDggMi41NDhMMi41NDggMjAuOTEyeiIvPjwvZz48L3N2Zz4=)}.choices[data-type*=select-multiple] .choices__button:focus-visible,.choices[data-type*=select-multiple] .choices__button:hover,.choices[data-type*=select-one] .choices__button:focus-visible,.choices[data-type*=select-one] .choices__button:hover{opacity:.7}.choices[data-type*=select-multiple] .choices__button:focus-visible:is(.dark *),.choices[data-type*=select-multiple] .choices__button:hover:is(.dark *),.choices[data-type*=select-one] .choices__button:focus-visible:is(.dark *),.choices[data-type*=select-one] .choices__button:hover:is(.dark *){opacity:.6}.choices.is-disabled .choices__button,.choices[data-type*=select-one] .choices__item[data-value=""] .choices__button{display:none}.choices__input{--tw-text-opacity:1;background-color:transparent!important;border-style:none;color:rgba(var(--gray-950),var(--tw-text-opacity,1));font-size:1rem!important;line-height:1.5rem!important;padding:0!important;transition-duration:75ms;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.choices__input::-moz-placeholder{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.choices__input::placeholder{--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.choices__input:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}.choices__input:disabled{--tw-text-opacity:1;-webkit-text-fill-color:rgba(var(--gray-500),1);color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.choices__input:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.choices__input:is(.dark *)::-moz-placeholder{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.choices__input:is(.dark *)::placeholder{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1))}.choices__input:disabled:is(.dark *){--tw-text-opacity:1;-webkit-text-fill-color:rgba(var(--gray-400),1);color:rgba(var(--gray-400),var(--tw-text-opacity,1))}@media (min-width:640px){.choices__input{font-size:.875rem!important;line-height:1.5rem}}.choices__list--dropdown .choices__input{padding:.5rem!important}.choices__input::-webkit-search-cancel-button,.choices__input::-webkit-search-decoration,.choices__input::-webkit-search-results-button,.choices__input::-webkit-search-results-decoration{display:none}.choices__input::-ms-clear,.choices__input::-ms-reveal{display:none;height:0;width:0}.choices__group{--tw-text-opacity:1;color:rgba(var(--gray-500),var(--tw-text-opacity,1));padding:1rem .5rem .5rem}.choices__group:first-child{padding-top:.5rem}.choices__group:is(.dark *){--tw-text-opacity:1;color:rgba(var(--gray-400),var(--tw-text-opacity,1))}.webkit-calendar-picker-indicator\:opacity-0::-webkit-calendar-picker-indicator{opacity:0}/*! Bundled license information:
+
+cropperjs/dist/cropper.min.css:
+ (*!
+ * Cropper.js v1.6.2
+ * https://fengyuanchen.github.io/cropperjs
+ *
+ * Copyright 2015-present Chen Fengyuan
+ * Released under the MIT license
+ *
+ * Date: 2024-04-21T07:43:02.731Z
+ *)
+
+filepond/dist/filepond.min.css:
+ (*!
+ * FilePond 4.32.8
+ * Licensed under MIT, https://opensource.org/licenses/MIT/
+ * Please visit https://pqina.nl/filepond/ for details.
+ *)
+
+filepond-plugin-image-edit/dist/filepond-plugin-image-edit.css:
+ (*!
+ * FilePondPluginImageEdit 1.6.3
+ * Licensed under MIT, https://opensource.org/licenses/MIT/
+ * Please visit https://pqina.nl/filepond/ for details.
+ *)
+
+filepond-plugin-image-preview/dist/filepond-plugin-image-preview.css:
+ (*!
+ * FilePondPluginImagePreview 4.6.12
+ * Licensed under MIT, https://opensource.org/licenses/MIT/
+ * Please visit https://pqina.nl/filepond/ for details.
+ *)
+
+filepond-plugin-media-preview/dist/filepond-plugin-media-preview.css:
+ (*!
+ * FilePondPluginmediaPreview 1.0.11
+ * Licensed under MIT, https://opensource.org/licenses/MIT/
+ * Please visit undefined for details.
+ *)
+
+easymde/dist/easymde.min.css:
+ (**
+ * easymde v2.20.0
+ * Copyright Jeroen Akkerman
+ * @link https://github.com/ionaru/easy-markdown-editor
+ * @license MIT
+ *)
+*/
\ No newline at end of file
diff --git a/public/css/filament/support/support.css b/public/css/filament/support/support.css
new file mode 100644
index 000000000..a80d070c8
--- /dev/null
+++ b/public/css/filament/support/support.css
@@ -0,0 +1 @@
+.fi-pagination-items,.fi-pagination-overview,.fi-pagination-records-per-page-select:not(.fi-compact){display:none}@supports (container-type:inline-size){.fi-pagination{container-type:inline-size}@container (min-width: 28rem){.fi-pagination-records-per-page-select.fi-compact{display:none}.fi-pagination-records-per-page-select:not(.fi-compact){display:inline}}@container (min-width: 56rem){.fi-pagination:not(.fi-simple)>.fi-pagination-previous-btn{display:none}.fi-pagination-overview{display:inline}.fi-pagination:not(.fi-simple)>.fi-pagination-next-btn{display:none}.fi-pagination-items{display:flex}}}@supports not (container-type:inline-size){@media (min-width:640px){.fi-pagination-records-per-page-select.fi-compact{display:none}.fi-pagination-records-per-page-select:not(.fi-compact){display:inline}}@media (min-width:768px){.fi-pagination:not(.fi-simple)>.fi-pagination-previous-btn{display:none}.fi-pagination-overview{display:inline}.fi-pagination:not(.fi-simple)>.fi-pagination-next-btn{display:none}.fi-pagination-items{display:flex}}}.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{background-color:#333;border-radius:4px;color:#fff;font-size:14px;line-height:1.4;outline:0;position:relative;transition-property:transform,visibility,opacity;white-space:normal}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{border-top-color:initial;border-width:8px 8px 0;bottom:-7px;left:0;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:initial;border-width:0 8px 8px;left:0;top:-7px;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-left-color:initial;border-width:8px 0 8px 8px;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{border-right-color:initial;border-width:8px 8px 8px 0;left:-7px;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{color:#333;height:16px;width:16px}.tippy-arrow:before{border-color:transparent;border-style:solid;content:"";position:absolute}.tippy-content{padding:5px 9px;position:relative;z-index:1}.tippy-box[data-theme~=light]{background-color:#fff;box-shadow:0 0 20px 4px #9aa1b126,0 4px 80px -8px #24282f40,0 4px 4px -2px #5b5e6926;color:#26323d}.tippy-box[data-theme~=light][data-placement^=top]>.tippy-arrow:before{border-top-color:#fff}.tippy-box[data-theme~=light][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:#fff}.tippy-box[data-theme~=light][data-placement^=left]>.tippy-arrow:before{border-left-color:#fff}.tippy-box[data-theme~=light][data-placement^=right]>.tippy-arrow:before{border-right-color:#fff}.tippy-box[data-theme~=light]>.tippy-backdrop{background-color:#fff}.tippy-box[data-theme~=light]>.tippy-svg-arrow{fill:#fff}.fi-sortable-ghost{opacity:.3}
\ No newline at end of file
diff --git a/public/favicon.ico b/public/favicon.ico
new file mode 100644
index 000000000..e69de29bb
diff --git a/public/index.php b/public/index.php
new file mode 100644
index 000000000..86bfe7898
--- /dev/null
+++ b/public/index.php
@@ -0,0 +1,20 @@
+handleRequest(Request::capture());
diff --git a/public/js/filament/filament/app.js b/public/js/filament/filament/app.js
new file mode 100644
index 000000000..9ff5c439e
--- /dev/null
+++ b/public/js/filament/filament/app.js
@@ -0,0 +1 @@
+(()=>{var Z=Object.create,L=Object.defineProperty,ee=Object.getPrototypeOf,te=Object.prototype.hasOwnProperty,re=Object.getOwnPropertyNames,ne=Object.getOwnPropertyDescriptor,ae=s=>L(s,"__esModule",{value:!0}),ie=(s,n)=>()=>(n||(n={exports:{}},s(n.exports,n)),n.exports),oe=(s,n,p)=>{if(n&&typeof n=="object"||typeof n=="function")for(let d of re(n))!te.call(s,d)&&d!=="default"&&L(s,d,{get:()=>n[d],enumerable:!(p=ne(n,d))||p.enumerable});return s},se=s=>oe(ae(L(s!=null?Z(ee(s)):{},"default",s&&s.__esModule&&"default"in s?{get:()=>s.default,enumerable:!0}:{value:s,enumerable:!0})),s),fe=ie((s,n)=>{(function(p,d,M){if(!p)return;for(var h={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",224:"meta"},g={106:"*",107:"+",109:"-",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},y={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"},q={option:"alt",command:"meta",return:"enter",escape:"esc",plus:"+",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"},S,w=1;w<20;++w)h[111+w]="f"+w;for(w=0;w<=9;++w)h[w+96]=w.toString();function C(e,t,a){if(e.addEventListener){e.addEventListener(t,a,!1);return}e.attachEvent("on"+t,a)}function T(e){if(e.type=="keypress"){var t=String.fromCharCode(e.which);return e.shiftKey||(t=t.toLowerCase()),t}return h[e.which]?h[e.which]:g[e.which]?g[e.which]:String.fromCharCode(e.which).toLowerCase()}function V(e,t){return e.sort().join(",")===t.sort().join(",")}function $(e){var t=[];return e.shiftKey&&t.push("shift"),e.altKey&&t.push("alt"),e.ctrlKey&&t.push("ctrl"),e.metaKey&&t.push("meta"),t}function B(e){if(e.preventDefault){e.preventDefault();return}e.returnValue=!1}function H(e){if(e.stopPropagation){e.stopPropagation();return}e.cancelBubble=!0}function O(e){return e=="shift"||e=="ctrl"||e=="alt"||e=="meta"}function J(){if(!S){S={};for(var e in h)e>95&&e<112||h.hasOwnProperty(e)&&(S[h[e]]=e)}return S}function U(e,t,a){return a||(a=J()[e]?"keydown":"keypress"),a=="keypress"&&t.length&&(a="keydown"),a}function X(e){return e==="+"?["+"]:(e=e.replace(/\+{2}/g,"+plus"),e.split("+"))}function I(e,t){var a,c,b,P=[];for(a=X(e),b=0;b1){z(r,m,o,l);return}f=I(r,l),t._callbacks[f.key]=t._callbacks[f.key]||[],j(f.key,f.modifiers,{type:f.action},i,r,u),t._callbacks[f.key][i?"unshift":"push"]({callback:o,modifiers:f.modifiers,action:f.action,seq:i,level:u,combo:r})}t._bindMultiple=function(r,o,l){for(var i=0;i-1||D(t,a.target))return!1;if("composedPath"in e&&typeof e.composedPath=="function"){var c=e.composedPath()[0];c!==e.target&&(t=c)}return t.tagName=="INPUT"||t.tagName=="SELECT"||t.tagName=="TEXTAREA"||t.isContentEditable},v.prototype.handleKey=function(){var e=this;return e._handleKey.apply(e,arguments)},v.addKeycodes=function(e){for(var t in e)e.hasOwnProperty(t)&&(h[t]=e[t]);S=null},v.init=function(){var e=v(d);for(var t in e)t.charAt(0)!=="_"&&(v[t]=function(a){return function(){return e[a].apply(e,arguments)}}(t))},v.init(),p.Mousetrap=v,typeof n<"u"&&n.exports&&(n.exports=v),typeof define=="function"&&define.amd&&define(function(){return v})})(typeof window<"u"?window:null,typeof window<"u"?document:null)}),R=se(fe());(function(s){if(s){var n={},p=s.prototype.stopCallback;s.prototype.stopCallback=function(d,M,h,g){var y=this;return y.paused?!0:n[h]||n[g]?!1:p.call(y,d,M,h)},s.prototype.bindGlobal=function(d,M,h){var g=this;if(g.bind(d,M,h),d instanceof Array){for(var y=0;y{s.directive("mousetrap",(n,{modifiers:p,expression:d},{evaluate:M})=>{let h=()=>d?M(d):n.click();p=p.map(g=>g.replace(/--/g," ").replace(/-/g,"+").replace(/\bslash\b/g,"/")),p.includes("global")&&(p=p.filter(g=>g!=="global"),R.default.bindGlobal(p,g=>{g.preventDefault(),h()})),R.default.bind(p,g=>{g.preventDefault(),h()})})},F=le;document.addEventListener("alpine:init",()=>{window.Alpine.plugin(F),window.Alpine.store("sidebar",{isOpen:window.Alpine.$persist(!0).as("isOpen"),collapsedGroups:window.Alpine.$persist(null).as("collapsedGroups"),groupIsCollapsed:function(n){return this.collapsedGroups.includes(n)},collapseGroup:function(n){this.collapsedGroups.includes(n)||(this.collapsedGroups=this.collapsedGroups.concat(n))},toggleCollapsedGroup:function(n){this.collapsedGroups=this.collapsedGroups.includes(n)?this.collapsedGroups.filter(p=>p!==n):this.collapsedGroups.concat(n)},close:function(){this.isOpen=!1},open:function(){this.isOpen=!0}});let s=localStorage.getItem("theme")??getComputedStyle(document.documentElement).getPropertyValue("--default-theme-mode");window.Alpine.store("theme",s==="dark"||s==="system"&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),window.addEventListener("theme-changed",n=>{let p=n.detail;localStorage.setItem("theme",p),p==="system"&&(p=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),window.Alpine.store("theme",p)}),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",n=>{localStorage.getItem("theme")==="system"&&window.Alpine.store("theme",n.matches?"dark":"light")}),window.Alpine.effect(()=>{window.Alpine.store("theme")==="dark"?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")})});})();
diff --git a/public/js/filament/filament/echo.js b/public/js/filament/filament/echo.js
new file mode 100644
index 000000000..65edaf5eb
--- /dev/null
+++ b/public/js/filament/filament/echo.js
@@ -0,0 +1,13 @@
+(()=>{var Ci=Object.create;var he=Object.defineProperty;var Ti=Object.getOwnPropertyDescriptor;var Pi=Object.getOwnPropertyNames;var xi=Object.getPrototypeOf,Oi=Object.prototype.hasOwnProperty;var Ai=(l,h)=>()=>(h||l((h={exports:{}}).exports,h),h.exports);var Ei=(l,h,a,c)=>{if(h&&typeof h=="object"||typeof h=="function")for(let s of Pi(h))!Oi.call(l,s)&&s!==a&&he(l,s,{get:()=>h[s],enumerable:!(c=Ti(h,s))||c.enumerable});return l};var Li=(l,h,a)=>(a=l!=null?Ci(xi(l)):{},Ei(h||!l||!l.__esModule?he(a,"default",{value:l,enumerable:!0}):a,l));var me=Ai((vt,It)=>{(function(h,a){typeof vt=="object"&&typeof It=="object"?It.exports=a():typeof define=="function"&&define.amd?define([],a):typeof vt=="object"?vt.Pusher=a():h.Pusher=a()})(window,function(){return function(l){var h={};function a(c){if(h[c])return h[c].exports;var s=h[c]={i:c,l:!1,exports:{}};return l[c].call(s.exports,s,s.exports,a),s.l=!0,s.exports}return a.m=l,a.c=h,a.d=function(c,s,f){a.o(c,s)||Object.defineProperty(c,s,{enumerable:!0,get:f})},a.r=function(c){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(c,"__esModule",{value:!0})},a.t=function(c,s){if(s&1&&(c=a(c)),s&8||s&4&&typeof c=="object"&&c&&c.__esModule)return c;var f=Object.create(null);if(a.r(f),Object.defineProperty(f,"default",{enumerable:!0,value:c}),s&2&&typeof c!="string")for(var d in c)a.d(f,d,function(N){return c[N]}.bind(null,d));return f},a.n=function(c){var s=c&&c.__esModule?function(){return c.default}:function(){return c};return a.d(s,"a",s),s},a.o=function(c,s){return Object.prototype.hasOwnProperty.call(c,s)},a.p="",a(a.s=2)}([function(l,h,a){"use strict";var c=this&&this.__extends||function(){var b=function(v,y){return b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(w,O){w.__proto__=O}||function(w,O){for(var I in O)O.hasOwnProperty(I)&&(w[I]=O[I])},b(v,y)};return function(v,y){b(v,y);function w(){this.constructor=v}v.prototype=y===null?Object.create(y):(w.prototype=y.prototype,new w)}}();Object.defineProperty(h,"__esModule",{value:!0});var s=256,f=function(){function b(v){v===void 0&&(v="="),this._paddingCharacter=v}return b.prototype.encodedLength=function(v){return this._paddingCharacter?(v+2)/3*4|0:(v*8+5)/6|0},b.prototype.encode=function(v){for(var y="",w=0;w>>3*6&63),y+=this._encodeByte(O>>>2*6&63),y+=this._encodeByte(O>>>1*6&63),y+=this._encodeByte(O>>>0*6&63)}var I=v.length-w;if(I>0){var O=v[w]<<16|(I===2?v[w+1]<<8:0);y+=this._encodeByte(O>>>3*6&63),y+=this._encodeByte(O>>>2*6&63),I===2?y+=this._encodeByte(O>>>1*6&63):y+=this._paddingCharacter||"",y+=this._paddingCharacter||""}return y},b.prototype.maxDecodedLength=function(v){return this._paddingCharacter?v/4*3|0:(v*6+7)/8|0},b.prototype.decodedLength=function(v){return this.maxDecodedLength(v.length-this._getPaddingLength(v))},b.prototype.decode=function(v){if(v.length===0)return new Uint8Array(0);for(var y=this._getPaddingLength(v),w=v.length-y,O=new Uint8Array(this.maxDecodedLength(w)),I=0,q=0,M=0,J=0,F=0,z=0,B=0;q>>4,O[I++]=F<<4|z>>>2,O[I++]=z<<6|B,M|=J&s,M|=F&s,M|=z&s,M|=B&s;if(q>>4,M|=J&s,M|=F&s),q>>2,M|=z&s),q>>8&6,y+=51-v>>>8&-75,y+=61-v>>>8&-15,y+=62-v>>>8&3,String.fromCharCode(y)},b.prototype._decodeChar=function(v){var y=s;return y+=(42-v&v-44)>>>8&-s+v-43+62,y+=(46-v&v-48)>>>8&-s+v-47+63,y+=(47-v&v-58)>>>8&-s+v-48+52,y+=(64-v&v-91)>>>8&-s+v-65+0,y+=(96-v&v-123)>>>8&-s+v-97+26,y},b.prototype._getPaddingLength=function(v){var y=0;if(this._paddingCharacter){for(var w=v.length-1;w>=0&&v[w]===this._paddingCharacter;w--)y++;if(v.length<4||y>2)throw new Error("Base64Coder: incorrect padding")}return y},b}();h.Coder=f;var d=new f;function N(b){return d.encode(b)}h.encode=N;function P(b){return d.decode(b)}h.decode=P;var T=function(b){c(v,b);function v(){return b!==null&&b.apply(this,arguments)||this}return v.prototype._encodeByte=function(y){var w=y;return w+=65,w+=25-y>>>8&6,w+=51-y>>>8&-75,w+=61-y>>>8&-13,w+=62-y>>>8&49,String.fromCharCode(w)},v.prototype._decodeChar=function(y){var w=s;return w+=(44-y&y-46)>>>8&-s+y-45+62,w+=(94-y&y-96)>>>8&-s+y-95+63,w+=(47-y&y-58)>>>8&-s+y-48+52,w+=(64-y&y-91)>>>8&-s+y-65+0,w+=(96-y&y-123)>>>8&-s+y-97+26,w},v}(f);h.URLSafeCoder=T;var S=new T;function C(b){return S.encode(b)}h.encodeURLSafe=C;function x(b){return S.decode(b)}h.decodeURLSafe=x,h.encodedLength=function(b){return d.encodedLength(b)},h.maxDecodedLength=function(b){return d.maxDecodedLength(b)},h.decodedLength=function(b){return d.decodedLength(b)}},function(l,h,a){"use strict";Object.defineProperty(h,"__esModule",{value:!0});var c="utf8: invalid string",s="utf8: invalid source encoding";function f(P){for(var T=new Uint8Array(d(P)),S=0,C=0;C>6,T[S++]=128|x&63):x<55296?(T[S++]=224|x>>12,T[S++]=128|x>>6&63,T[S++]=128|x&63):(C++,x=(x&1023)<<10,x|=P.charCodeAt(C)&1023,x+=65536,T[S++]=240|x>>18,T[S++]=128|x>>12&63,T[S++]=128|x>>6&63,T[S++]=128|x&63)}return T}h.encode=f;function d(P){for(var T=0,S=0;S=P.length-1)throw new Error(c);S++,T+=4}else throw new Error(c)}return T}h.encodedLength=d;function N(P){for(var T=[],S=0;S=P.length)throw new Error(s);var b=P[++S];if((b&192)!==128)throw new Error(s);C=(C&31)<<6|b&63,x=128}else if(C<240){if(S>=P.length-1)throw new Error(s);var b=P[++S],v=P[++S];if((b&192)!==128||(v&192)!==128)throw new Error(s);C=(C&15)<<12|(b&63)<<6|v&63,x=2048}else if(C<248){if(S>=P.length-2)throw new Error(s);var b=P[++S],v=P[++S],y=P[++S];if((b&192)!==128||(v&192)!==128||(y&192)!==128)throw new Error(s);C=(C&15)<<18|(b&63)<<12|(v&63)<<6|y&63,x=65536}else throw new Error(s);if(C=55296&&C<=57343)throw new Error(s);if(C>=65536){if(C>1114111)throw new Error(s);C-=65536,T.push(String.fromCharCode(55296|C>>10)),C=56320|C&1023}}T.push(String.fromCharCode(C))}return T.join("")}h.decode=N},function(l,h,a){l.exports=a(3).default},function(l,h,a){"use strict";a.r(h);var c=function(){function e(t,n){this.lastId=0,this.prefix=t,this.name=n}return e.prototype.create=function(t){this.lastId++;var n=this.lastId,r=this.prefix+n,i=this.name+"["+n+"]",o=!1,u=function(){o||(t.apply(null,arguments),o=!0)};return this[n]=u,{number:n,id:r,name:i,callback:u}},e.prototype.remove=function(t){delete this[t.number]},e}(),s=new c("_pusher_script_","Pusher.ScriptReceivers"),f={VERSION:"7.6.0",PROTOCOL:7,wsPort:80,wssPort:443,wsPath:"",httpHost:"sockjs.pusher.com",httpPort:80,httpsPort:443,httpPath:"/pusher",stats_host:"stats.pusher.com",authEndpoint:"/pusher/auth",authTransport:"ajax",activityTimeout:12e4,pongTimeout:3e4,unavailableTimeout:1e4,cluster:"mt1",userAuthentication:{endpoint:"/pusher/user-auth",transport:"ajax"},channelAuthorization:{endpoint:"/pusher/auth",transport:"ajax"},cdn_http:"http://js.pusher.com",cdn_https:"https://js.pusher.com",dependency_suffix:""},d=f,N=function(){function e(t){this.options=t,this.receivers=t.receivers||s,this.loading={}}return e.prototype.load=function(t,n,r){var i=this;if(i.loading[t]&&i.loading[t].length>0)i.loading[t].push(r);else{i.loading[t]=[r];var o=m.createScriptRequest(i.getPath(t,n)),u=i.receivers.create(function(p){if(i.receivers.remove(u),i.loading[t]){var _=i.loading[t];delete i.loading[t];for(var g=function(E){E||o.cleanup()},k=0;k<_.length;k++)_[k](p,g)}});o.send(u)}},e.prototype.getRoot=function(t){var n,r=m.getDocument().location.protocol;return t&&t.useTLS||r==="https:"?n=this.options.cdn_https:n=this.options.cdn_http,n.replace(/\/*$/,"")+"/"+this.options.version},e.prototype.getPath=function(t,n){return this.getRoot(n)+"/"+t+this.options.suffix+".js"},e}(),P=N,T=new c("_pusher_dependencies","Pusher.DependenciesReceivers"),S=new P({cdn_http:d.cdn_http,cdn_https:d.cdn_https,version:d.VERSION,suffix:d.dependency_suffix,receivers:T}),C={baseUrl:"https://pusher.com",urls:{authenticationEndpoint:{path:"/docs/channels/server_api/authenticating_users"},authorizationEndpoint:{path:"/docs/channels/server_api/authorizing-users/"},javascriptQuickStart:{path:"/docs/javascript_quick_start"},triggeringClientEvents:{path:"/docs/client_api_guide/client_events#trigger-events"},encryptedChannelSupport:{fullUrl:"https://github.com/pusher/pusher-js/tree/cc491015371a4bde5743d1c87a0fbac0feb53195#encrypted-channel-support"}}},x=function(e){var t="See:",n=C.urls[e];if(!n)return"";var r;return n.fullUrl?r=n.fullUrl:n.path&&(r=C.baseUrl+n.path),r?t+" "+r:""},b={buildLogSuffix:x},v;(function(e){e.UserAuthentication="user-authentication",e.ChannelAuthorization="channel-authorization"})(v||(v={}));var y=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)i.hasOwnProperty(o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),w=function(e){y(t,e);function t(n){var r=this.constructor,i=e.call(this,n)||this;return Object.setPrototypeOf(i,r.prototype),i}return t}(Error),O=function(e){y(t,e);function t(n){var r=this.constructor,i=e.call(this,n)||this;return Object.setPrototypeOf(i,r.prototype),i}return t}(Error),I=function(e){y(t,e);function t(n){var r=this.constructor,i=e.call(this,n)||this;return Object.setPrototypeOf(i,r.prototype),i}return t}(Error),q=function(e){y(t,e);function t(n){var r=this.constructor,i=e.call(this,n)||this;return Object.setPrototypeOf(i,r.prototype),i}return t}(Error),M=function(e){y(t,e);function t(n){var r=this.constructor,i=e.call(this,n)||this;return Object.setPrototypeOf(i,r.prototype),i}return t}(Error),J=function(e){y(t,e);function t(n){var r=this.constructor,i=e.call(this,n)||this;return Object.setPrototypeOf(i,r.prototype),i}return t}(Error),F=function(e){y(t,e);function t(n){var r=this.constructor,i=e.call(this,n)||this;return Object.setPrototypeOf(i,r.prototype),i}return t}(Error),z=function(e){y(t,e);function t(n){var r=this.constructor,i=e.call(this,n)||this;return Object.setPrototypeOf(i,r.prototype),i}return t}(Error),B=function(e){y(t,e);function t(n,r){var i=this.constructor,o=e.call(this,r)||this;return o.status=n,Object.setPrototypeOf(o,i.prototype),o}return t}(Error),ke=function(e,t,n,r,i){var o=m.createXHR();o.open("POST",n.endpoint,!0),o.setRequestHeader("Content-Type","application/x-www-form-urlencoded");for(var u in n.headers)o.setRequestHeader(u,n.headers[u]);if(n.headersProvider!=null){var p=n.headersProvider();for(var u in p)o.setRequestHeader(u,p[u])}return o.onreadystatechange=function(){if(o.readyState===4)if(o.status===200){var _=void 0,g=!1;try{_=JSON.parse(o.responseText),g=!0}catch{i(new B(200,"JSON returned from "+r.toString()+" endpoint was invalid, yet status code was 200. Data was: "+o.responseText),null)}g&&i(null,_)}else{var k="";switch(r){case v.UserAuthentication:k=b.buildLogSuffix("authenticationEndpoint");break;case v.ChannelAuthorization:k="Clients must be authorized to join private or presence channels. "+b.buildLogSuffix("authorizationEndpoint");break}i(new B(o.status,"Unable to retrieve auth string from "+r.toString()+" endpoint - "+("received status: "+o.status+" from "+n.endpoint+". "+k)),null)}},o.send(t),o},Se=ke;function Ce(e){return Ee(Oe(e))}for(var nt=String.fromCharCode,Z="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Te={},ct=0,Pe=Z.length;ct>>6)+nt(128|t&63):nt(224|t>>>12&15)+nt(128|t>>>6&63)+nt(128|t&63)},Oe=function(e){return e.replace(/[^\x00-\x7F]/g,xe)},Ae=function(e){var t=[0,2,1][e.length%3],n=e.charCodeAt(0)<<16|(e.length>1?e.charCodeAt(1):0)<<8|(e.length>2?e.charCodeAt(2):0),r=[Z.charAt(n>>>18),Z.charAt(n>>>12&63),t>=2?"=":Z.charAt(n>>>6&63),t>=1?"=":Z.charAt(n&63)];return r.join("")},Ee=window.btoa||function(e){return e.replace(/[\s\S]{1,3}/g,Ae)},Le=function(){function e(t,n,r,i){var o=this;this.clear=n,this.timer=t(function(){o.timer&&(o.timer=i(o.timer))},r)}return e.prototype.isRunning=function(){return this.timer!==null},e.prototype.ensureAborted=function(){this.timer&&(this.clear(this.timer),this.timer=null)},e}(),jt=Le,Nt=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)i.hasOwnProperty(o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}();function Re(e){window.clearTimeout(e)}function Ie(e){window.clearInterval(e)}var Q=function(e){Nt(t,e);function t(n,r){return e.call(this,setTimeout,Re,n,function(i){return r(),null})||this}return t}(jt),je=function(e){Nt(t,e);function t(n,r){return e.call(this,setInterval,Ie,n,function(i){return r(),i})||this}return t}(jt),Ne={now:function(){return Date.now?Date.now():new Date().valueOf()},defer:function(e){return new Q(0,e)},method:function(e){for(var t=[],n=1;n0)for(var i=0;i=1002&&e.code<=1004?"backoff":null:e.code===4e3?"tls_only":e.code<4100?"refused":e.code<4200?"backoff":e.code<4300?"retry":"refused"},getCloseError:function(e){return e.code!==1e3&&e.code!==1001?{type:"PusherError",data:{code:e.code,message:e.reason||e.message}}:null}},K=Vt,Cn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)i.hasOwnProperty(o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),Tn=function(e){Cn(t,e);function t(n,r){var i=e.call(this)||this;return i.id=n,i.transport=r,i.activityTimeout=r.activityTimeout,i.bindListeners(),i}return t.prototype.handlesActivityChecks=function(){return this.transport.handlesActivityChecks()},t.prototype.send=function(n){return this.transport.send(n)},t.prototype.send_event=function(n,r,i){var o={event:n,data:r};return i&&(o.channel=i),A.debug("Event sent",o),this.send(K.encodeMessage(o))},t.prototype.ping=function(){this.transport.supportsPing()?this.transport.ping():this.send_event("pusher:ping",{})},t.prototype.close=function(){this.transport.close()},t.prototype.bindListeners=function(){var n=this,r={message:function(o){var u;try{u=K.decodeMessage(o)}catch(p){n.emit("error",{type:"MessageParseError",error:p,data:o.data})}if(u!==void 0){switch(A.debug("Event recd",u),u.event){case"pusher:error":n.emit("error",{type:"PusherError",data:u.data});break;case"pusher:ping":n.emit("ping");break;case"pusher:pong":n.emit("pong");break}n.emit("message",u)}},activity:function(){n.emit("activity")},error:function(o){n.emit("error",o)},closed:function(o){i(),o&&o.code&&n.handleCloseEvent(o),n.transport=null,n.emit("closed")}},i=function(){W(r,function(o,u){n.transport.unbind(u,o)})};W(r,function(o,u){n.transport.bind(u,o)})},t.prototype.handleCloseEvent=function(n){var r=K.getCloseAction(n),i=K.getCloseError(n);i&&this.emit("error",i),r&&this.emit(r,{action:r,error:i})},t}(V),Pn=Tn,xn=function(){function e(t,n){this.transport=t,this.callback=n,this.bindListeners()}return e.prototype.close=function(){this.unbindListeners(),this.transport.close()},e.prototype.bindListeners=function(){var t=this;this.onMessage=function(n){t.unbindListeners();var r;try{r=K.processHandshake(n)}catch(i){t.finish("error",{error:i}),t.transport.close();return}r.action==="connected"?t.finish("connected",{connection:new Pn(r.id,t.transport),activityTimeout:r.activityTimeout}):(t.finish(r.action,{error:r.error}),t.transport.close())},this.onClosed=function(n){t.unbindListeners();var r=K.getCloseAction(n)||"backoff",i=K.getCloseError(n);t.finish(r,{error:i})},this.transport.bind("message",this.onMessage),this.transport.bind("closed",this.onClosed)},e.prototype.unbindListeners=function(){this.transport.unbind("message",this.onMessage),this.transport.unbind("closed",this.onClosed)},e.prototype.finish=function(t,n){this.callback(U({transport:this.transport,action:t},n))},e}(),On=xn,An=function(){function e(t,n){this.timeline=t,this.options=n||{}}return e.prototype.send=function(t,n){this.timeline.isEmpty()||this.timeline.send(m.TimelineTransport.getAgent(this,t),n)},e}(),En=An,Ln=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)i.hasOwnProperty(o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),Rn=function(e){Ln(t,e);function t(n,r){var i=e.call(this,function(o,u){A.debug("No callbacks on "+n+" for "+o)})||this;return i.name=n,i.pusher=r,i.subscribed=!1,i.subscriptionPending=!1,i.subscriptionCancelled=!1,i}return t.prototype.authorize=function(n,r){return r(null,{auth:""})},t.prototype.trigger=function(n,r){if(n.indexOf("client-")!==0)throw new w("Event '"+n+"' does not start with 'client-'");if(!this.subscribed){var i=b.buildLogSuffix("triggeringClientEvents");A.warn("Client event triggered before channel 'subscription_succeeded' event . "+i)}return this.pusher.send_event(n,r,this.name)},t.prototype.disconnect=function(){this.subscribed=!1,this.subscriptionPending=!1},t.prototype.handleEvent=function(n){var r=n.event,i=n.data;if(r==="pusher_internal:subscription_succeeded")this.handleSubscriptionSucceededEvent(n);else if(r==="pusher_internal:subscription_count")this.handleSubscriptionCountEvent(n);else if(r.indexOf("pusher_internal:")!==0){var o={};this.emit(r,i,o)}},t.prototype.handleSubscriptionSucceededEvent=function(n){this.subscriptionPending=!1,this.subscribed=!0,this.subscriptionCancelled?this.pusher.unsubscribe(this.name):this.emit("pusher:subscription_succeeded",n.data)},t.prototype.handleSubscriptionCountEvent=function(n){n.data.subscription_count&&(this.subscriptionCount=n.data.subscription_count),this.emit("pusher:subscription_count",n.data)},t.prototype.subscribe=function(){var n=this;this.subscribed||(this.subscriptionPending=!0,this.subscriptionCancelled=!1,this.authorize(this.pusher.connection.socket_id,function(r,i){r?(n.subscriptionPending=!1,A.error(r.toString()),n.emit("pusher:subscription_error",Object.assign({},{type:"AuthError",error:r.message},r instanceof B?{status:r.status}:{}))):n.pusher.send_event("pusher:subscribe",{auth:i.auth,channel_data:i.channel_data,channel:n.name})}))},t.prototype.unsubscribe=function(){this.subscribed=!1,this.pusher.send_event("pusher:unsubscribe",{channel:this.name})},t.prototype.cancelSubscription=function(){this.subscriptionCancelled=!0},t.prototype.reinstateSubscription=function(){this.subscriptionCancelled=!1},t}(V),bt=Rn,In=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)i.hasOwnProperty(o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),jn=function(e){In(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.authorize=function(n,r){return this.pusher.config.channelAuthorizer({channelName:this.name,socketId:n},r)},t}(bt),mt=jn,Nn=function(){function e(){this.reset()}return e.prototype.get=function(t){return Object.prototype.hasOwnProperty.call(this.members,t)?{id:t,info:this.members[t]}:null},e.prototype.each=function(t){var n=this;W(this.members,function(r,i){t(n.get(i))})},e.prototype.setMyID=function(t){this.myID=t},e.prototype.onSubscription=function(t){this.members=t.presence.hash,this.count=t.presence.count,this.me=this.get(this.myID)},e.prototype.addMember=function(t){return this.get(t.user_id)===null&&this.count++,this.members[t.user_id]=t.user_info,this.get(t.user_id)},e.prototype.removeMember=function(t){var n=this.get(t.user_id);return n&&(delete this.members[t.user_id],this.count--),n},e.prototype.reset=function(){this.members={},this.count=0,this.myID=null,this.me=null},e}(),qn=Nn,Un=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)i.hasOwnProperty(o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),Dn=function(e,t,n,r){function i(o){return o instanceof n?o:new n(function(u){u(o)})}return new(n||(n=Promise))(function(o,u){function p(k){try{g(r.next(k))}catch(E){u(E)}}function _(k){try{g(r.throw(k))}catch(E){u(E)}}function g(k){k.done?o(k.value):i(k.value).then(p,_)}g((r=r.apply(e,t||[])).next())})},Hn=function(e,t){var n={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},r,i,o,u;return u={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(u[Symbol.iterator]=function(){return this}),u;function p(g){return function(k){return _([g,k])}}function _(g){if(r)throw new TypeError("Generator is already executing.");for(;n;)try{if(r=1,i&&(o=g[0]&2?i.return:g[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,g[1])).done)return o;switch(i=0,o&&(g=[g[0]&2,o.value]),g[0]){case 0:case 1:o=g;break;case 4:return n.label++,{value:g[1],done:!1};case 5:n.label++,i=g[1],g=[0];continue;case 7:g=n.ops.pop(),n.trys.pop();continue;default:if(o=n.trys,!(o=o.length>0&&o[o.length-1])&&(g[0]===6||g[0]===2)){n=0;continue}if(g[0]===3&&(!o||g[1]>o[0]&&g[1]0&&this.emit("connecting_in",Math.round(n/1e3)),this.retryTimer=new Q(n||0,function(){r.disconnectInternally(),r.connect()})},t.prototype.clearRetryTimer=function(){this.retryTimer&&(this.retryTimer.ensureAborted(),this.retryTimer=null)},t.prototype.setUnavailableTimer=function(){var n=this;this.unavailableTimer=new Q(this.options.unavailableTimeout,function(){n.updateState("unavailable")})},t.prototype.clearUnavailableTimer=function(){this.unavailableTimer&&this.unavailableTimer.ensureAborted()},t.prototype.sendActivityCheck=function(){var n=this;this.stopActivityCheck(),this.connection.ping(),this.activityTimer=new Q(this.options.pongTimeout,function(){n.timeline.error({pong_timed_out:n.options.pongTimeout}),n.retryIn(0)})},t.prototype.resetActivityCheck=function(){var n=this;this.stopActivityCheck(),this.connection&&!this.connection.handlesActivityChecks()&&(this.activityTimer=new Q(this.activityTimeout,function(){n.sendActivityCheck()}))},t.prototype.stopActivityCheck=function(){this.activityTimer&&this.activityTimer.ensureAborted()},t.prototype.buildConnectionCallbacks=function(n){var r=this;return U({},n,{message:function(i){r.resetActivityCheck(),r.emit("message",i)},ping:function(){r.send_event("pusher:pong",{})},activity:function(){r.resetActivityCheck()},error:function(i){r.emit("error",i)},closed:function(){r.abandonConnection(),r.shouldRetry()&&r.retryIn(1e3)}})},t.prototype.buildHandshakeCallbacks=function(n){var r=this;return U({},n,{connected:function(i){r.activityTimeout=Math.min(r.options.activityTimeout,i.activityTimeout,i.connection.activityTimeout||1/0),r.clearUnavailableTimer(),r.setConnection(i.connection),r.socket_id=r.connection.id,r.updateState("connected",{socket_id:r.socket_id})}})},t.prototype.buildErrorCallbacks=function(){var n=this,r=function(i){return function(o){o.error&&n.emit("error",{type:"WebSocketError",error:o.error}),i(o)}};return{tls_only:r(function(){n.usingTLS=!0,n.updateStrategy(),n.retryIn(0)}),refused:r(function(){n.disconnect()}),backoff:r(function(){n.retryIn(1e3)}),retry:r(function(){n.retryIn(0)})}},t.prototype.setConnection=function(n){this.connection=n;for(var r in this.connectionCallbacks)this.connection.bind(r,this.connectionCallbacks[r]);this.resetActivityCheck()},t.prototype.abandonConnection=function(){if(this.connection){this.stopActivityCheck();for(var n in this.connectionCallbacks)this.connection.unbind(n,this.connectionCallbacks[n]);var r=this.connection;return this.connection=null,r}},t.prototype.updateState=function(n,r){var i=this.state;if(this.state=n,i!==n){var o=n;o==="connected"&&(o+=" with new socket ID "+r.socket_id),A.debug("State changed",i+" -> "+o),this.timeline.info({state:n,params:r}),this.emit("state_change",{previous:i,current:n}),this.emit(n,r)}},t.prototype.shouldRetry=function(){return this.state==="connecting"||this.state==="connected"},t}(V),Gn=Vn,Qn=function(){function e(){this.channels={}}return e.prototype.add=function(t,n){return this.channels[t]||(this.channels[t]=Yn(t,n)),this.channels[t]},e.prototype.all=function(){return Ue(this.channels)},e.prototype.find=function(t){return this.channels[t]},e.prototype.remove=function(t){var n=this.channels[t];return delete this.channels[t],n},e.prototype.disconnect=function(){W(this.channels,function(t){t.disconnect()})},e}(),Kn=Qn;function Yn(e,t){if(e.indexOf("private-encrypted-")===0){if(t.config.nacl)return G.createEncryptedChannel(e,t,t.config.nacl);var n="Tried to subscribe to a private-encrypted- channel but no nacl implementation available",r=b.buildLogSuffix("encryptedChannelSupport");throw new J(n+". "+r)}else{if(e.indexOf("private-")===0)return G.createPrivateChannel(e,t);if(e.indexOf("presence-")===0)return G.createPresenceChannel(e,t);if(e.indexOf("#")===0)throw new O('Cannot create a channel with name "'+e+'".');return G.createChannel(e,t)}}var $n={createChannels:function(){return new Kn},createConnectionManager:function(e,t){return new Gn(e,t)},createChannel:function(e,t){return new bt(e,t)},createPrivateChannel:function(e,t){return new mt(e,t)},createPresenceChannel:function(e,t){return new zn(e,t)},createEncryptedChannel:function(e,t,n){return new Jn(e,t,n)},createTimelineSender:function(e,t){return new En(e,t)},createHandshake:function(e,t){return new On(e,t)},createAssistantToTheTransportManager:function(e,t,n){return new Sn(e,t,n)}},G=$n,Zn=function(){function e(t){this.options=t||{},this.livesLeft=this.options.lives||1/0}return e.prototype.getAssistant=function(t){return G.createAssistantToTheTransportManager(this,t,{minPingDelay:this.options.minPingDelay,maxPingDelay:this.options.maxPingDelay})},e.prototype.isAlive=function(){return this.livesLeft>0},e.prototype.reportDeath=function(){this.livesLeft-=1},e}(),Gt=Zn,tr=function(){function e(t,n){this.strategies=t,this.loop=!!n.loop,this.failFast=!!n.failFast,this.timeout=n.timeout,this.timeoutLimit=n.timeoutLimit}return e.prototype.isSupported=function(){return zt(this.strategies,j.method("isSupported"))},e.prototype.connect=function(t,n){var r=this,i=this.strategies,o=0,u=this.timeout,p=null,_=function(g,k){k?n(null,k):(o=o+1,r.loop&&(o=o%i.length),o0&&(o=new Q(r.timeout,function(){u.abort(),i(!0)})),u=t.connect(n,function(p,_){p&&o&&o.isRunning()&&!r.failFast||(o&&o.ensureAborted(),i(p,_))}),{abort:function(){o&&o.ensureAborted(),u.abort()},forceMinPriority:function(p){u.forceMinPriority(p)}}},e}(),Y=tr,er=function(){function e(t){this.strategies=t}return e.prototype.isSupported=function(){return zt(this.strategies,j.method("isSupported"))},e.prototype.connect=function(t,n){return nr(this.strategies,t,function(r,i){return function(o,u){if(i[r].error=o,o){rr(i)&&n(!0);return}rt(i,function(p){p.forceMinPriority(u.transport.priority)}),n(null,u)}})},e}(),kt=er;function nr(e,t,n){var r=Dt(e,function(i,o,u,p){return i.connect(t,n(o,p))});return{abort:function(){rt(r,ir)},forceMinPriority:function(i){rt(r,function(o){o.forceMinPriority(i)})}}}function rr(e){return Me(e,function(t){return!!t.error})}function ir(e){!e.error&&!e.aborted&&(e.abort(),e.aborted=!0)}var or=function(){function e(t,n,r){this.strategy=t,this.transports=n,this.ttl=r.ttl||1800*1e3,this.usingTLS=r.useTLS,this.timeline=r.timeline}return e.prototype.isSupported=function(){return this.strategy.isSupported()},e.prototype.connect=function(t,n){var r=this.usingTLS,i=ar(r),o=[this.strategy];if(i&&i.timestamp+this.ttl>=j.now()){var u=this.transports[i.transport];u&&(this.timeline.info({cached:!0,transport:i.transport,latency:i.latency}),o.push(new Y([u],{timeout:i.latency*2+1e3,failFast:!0})))}var p=j.now(),_=o.pop().connect(t,function g(k,E){k?(Qt(r),o.length>0?(p=j.now(),_=o.pop().connect(t,g)):n(k)):(cr(r,E.transport.name,j.now()-p),n(null,E))});return{abort:function(){_.abort()},forceMinPriority:function(g){t=g,_&&_.forceMinPriority(g)}}},e}(),sr=or;function St(e){return"pusherTransport"+(e?"TLS":"NonTLS")}function ar(e){var t=m.getLocalStorage();if(t)try{var n=t[St(e)];if(n)return JSON.parse(n)}catch{Qt(e)}return null}function cr(e,t,n){var r=m.getLocalStorage();if(r)try{r[St(e)]=ut({timestamp:j.now(),transport:t,latency:n})}catch{}}function Qt(e){var t=m.getLocalStorage();if(t)try{delete t[St(e)]}catch{}}var ur=function(){function e(t,n){var r=n.delay;this.strategy=t,this.options={delay:r}}return e.prototype.isSupported=function(){return this.strategy.isSupported()},e.prototype.connect=function(t,n){var r=this.strategy,i,o=new Q(this.options.delay,function(){i=r.connect(t,n)});return{abort:function(){o.ensureAborted(),i&&i.abort()},forceMinPriority:function(u){t=u,i&&i.forceMinPriority(u)}}},e}(),lt=ur,hr=function(){function e(t,n,r){this.test=t,this.trueBranch=n,this.falseBranch=r}return e.prototype.isSupported=function(){var t=this.test()?this.trueBranch:this.falseBranch;return t.isSupported()},e.prototype.connect=function(t,n){var r=this.test()?this.trueBranch:this.falseBranch;return r.connect(t,n)},e}(),it=hr,lr=function(){function e(t){this.strategy=t}return e.prototype.isSupported=function(){return this.strategy.isSupported()},e.prototype.connect=function(t,n){var r=this.strategy.connect(t,function(i,o){o&&r.abort(),n(i,o)});return r},e}(),fr=lr;function ot(e){return function(){return e.isSupported()}}var pr=function(e,t,n){var r={};function i(ce,mi,wi,ki,Si){var ue=n(e,ce,mi,wi,ki,Si);return r[ce]=ue,ue}var o=Object.assign({},t,{hostNonTLS:e.wsHost+":"+e.wsPort,hostTLS:e.wsHost+":"+e.wssPort,httpPath:e.wsPath}),u=Object.assign({},o,{useTLS:!0}),p=Object.assign({},t,{hostNonTLS:e.httpHost+":"+e.httpPort,hostTLS:e.httpHost+":"+e.httpsPort,httpPath:e.httpPath}),_={loop:!0,timeout:15e3,timeoutLimit:6e4},g=new Gt({lives:2,minPingDelay:1e4,maxPingDelay:e.activityTimeout}),k=new Gt({lives:2,minPingDelay:1e4,maxPingDelay:e.activityTimeout}),E=i("ws","ws",3,o,g),X=i("wss","ws",3,u,g),vi=i("sockjs","sockjs",1,p),ne=i("xhr_streaming","xhr_streaming",1,p,k),yi=i("xdr_streaming","xdr_streaming",1,p,k),re=i("xhr_polling","xhr_polling",1,p),gi=i("xdr_polling","xdr_polling",1,p),ie=new Y([E],_),_i=new Y([X],_),bi=new Y([vi],_),oe=new Y([new it(ot(ne),ne,yi)],_),se=new Y([new it(ot(re),re,gi)],_),ae=new Y([new it(ot(oe),new kt([oe,new lt(se,{delay:4e3})]),se)],_),xt=new it(ot(ae),ae,bi),Ot;return t.useTLS?Ot=new kt([ie,new lt(xt,{delay:2e3})]):Ot=new kt([ie,new lt(_i,{delay:2e3}),new lt(xt,{delay:5e3})]),new sr(new fr(new it(ot(E),Ot,xt)),r,{ttl:18e5,timeline:t.timeline,useTLS:t.useTLS})},dr=pr,vr=function(){var e=this;e.timeline.info(e.buildTimelineMessage({transport:e.name+(e.options.useTLS?"s":"")})),e.hooks.isInitialized()?e.changeState("initialized"):e.hooks.file?(e.changeState("initializing"),S.load(e.hooks.file,{useTLS:e.options.useTLS},function(t,n){e.hooks.isInitialized()?(e.changeState("initialized"),n(!0)):(t&&e.onError(t),e.onClose(),n(!1))})):e.onClose()},yr={getRequest:function(e){var t=new window.XDomainRequest;return t.ontimeout=function(){e.emit("error",new I),e.close()},t.onerror=function(n){e.emit("error",n),e.close()},t.onprogress=function(){t.responseText&&t.responseText.length>0&&e.onChunk(200,t.responseText)},t.onload=function(){t.responseText&&t.responseText.length>0&&e.onChunk(200,t.responseText),e.emit("finished",200),e.close()},t},abortRequest:function(e){e.ontimeout=e.onerror=e.onprogress=e.onload=null,e.abort()}},gr=yr,_r=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)i.hasOwnProperty(o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),br=256*1024,mr=function(e){_r(t,e);function t(n,r,i){var o=e.call(this)||this;return o.hooks=n,o.method=r,o.url=i,o}return t.prototype.start=function(n){var r=this;this.position=0,this.xhr=this.hooks.getRequest(this),this.unloader=function(){r.close()},m.addUnloadListener(this.unloader),this.xhr.open(this.method,this.url,!0),this.xhr.setRequestHeader&&this.xhr.setRequestHeader("Content-Type","application/json"),this.xhr.send(n)},t.prototype.close=function(){this.unloader&&(m.removeUnloadListener(this.unloader),this.unloader=null),this.xhr&&(this.hooks.abortRequest(this.xhr),this.xhr=null)},t.prototype.onChunk=function(n,r){for(;;){var i=this.advanceBuffer(r);if(i)this.emit("chunk",{status:n,data:i});else break}this.isBufferTooLong(r)&&this.emit("buffer_too_long")},t.prototype.advanceBuffer=function(n){var r=n.slice(this.position),i=r.indexOf(`
+`);return i!==-1?(this.position+=i+1,r.slice(0,i)):null},t.prototype.isBufferTooLong=function(n){return this.position===n.length&&n.length>br},t}(V),wr=mr,Ct;(function(e){e[e.CONNECTING=0]="CONNECTING",e[e.OPEN=1]="OPEN",e[e.CLOSED=3]="CLOSED"})(Ct||(Ct={}));var $=Ct,kr=1,Sr=function(){function e(t,n){this.hooks=t,this.session=Yt(1e3)+"/"+xr(8),this.location=Cr(n),this.readyState=$.CONNECTING,this.openStream()}return e.prototype.send=function(t){return this.sendRaw(JSON.stringify([t]))},e.prototype.ping=function(){this.hooks.sendHeartbeat(this)},e.prototype.close=function(t,n){this.onClose(t,n,!0)},e.prototype.sendRaw=function(t){if(this.readyState===$.OPEN)try{return m.createSocketRequest("POST",Kt(Tr(this.location,this.session))).start(t),!0}catch{return!1}else return!1},e.prototype.reconnect=function(){this.closeStream(),this.openStream()},e.prototype.onClose=function(t,n,r){this.closeStream(),this.readyState=$.CLOSED,this.onclose&&this.onclose({code:t,reason:n,wasClean:r})},e.prototype.onChunk=function(t){if(t.status===200){this.readyState===$.OPEN&&this.onActivity();var n,r=t.data.slice(0,1);switch(r){case"o":n=JSON.parse(t.data.slice(1)||"{}"),this.onOpen(n);break;case"a":n=JSON.parse(t.data.slice(1)||"[]");for(var i=0;i0&&e.onChunk(n.status,n.responseText);break;case 4:n.responseText&&n.responseText.length>0&&e.onChunk(n.status,n.responseText),e.emit("finished",n.status),e.close();break}},n},abortRequest:function(e){e.onreadystatechange=null,e.abort()}},jr=Ir,Nr={createStreamingSocket:function(e){return this.createSocket(Er,e)},createPollingSocket:function(e){return this.createSocket(Rr,e)},createSocket:function(e,t){return new Or(e,t)},createXHR:function(e,t){return this.createRequest(jr,e,t)},createRequest:function(e,t,n){return new wr(e,t,n)}},$t=Nr;$t.createXDR=function(e,t){return this.createRequest(gr,e,t)};var qr=$t,Ur={nextAuthCallbackID:1,auth_callbacks:{},ScriptReceivers:s,DependenciesReceivers:T,getDefaultStrategy:dr,Transports:_n,transportConnectionInitializer:vr,HTTPFactory:qr,TimelineTransport:Ze,getXHRAPI:function(){return window.XMLHttpRequest},getWebSocketAPI:function(){return window.WebSocket||window.MozWebSocket},setup:function(e){var t=this;window.Pusher=e;var n=function(){t.onDocumentBody(e.ready)};window.JSON?n():S.load("json2",{},n)},getDocument:function(){return document},getProtocol:function(){return this.getDocument().location.protocol},getAuthorizers:function(){return{ajax:Se,jsonp:We}},onDocumentBody:function(e){var t=this;document.body?e():setTimeout(function(){t.onDocumentBody(e)},0)},createJSONPRequest:function(e,t){return new Ke(e,t)},createScriptRequest:function(e){return new Ge(e)},getLocalStorage:function(){try{return window.localStorage}catch{return}},createXHR:function(){return this.getXHRAPI()?this.createXMLHttpRequest():this.createMicrosoftXHR()},createXMLHttpRequest:function(){var e=this.getXHRAPI();return new e},createMicrosoftXHR:function(){return new ActiveXObject("Microsoft.XMLHTTP")},getNetwork:function(){return wn},createWebSocket:function(e){var t=this.getWebSocketAPI();return new t(e)},createSocketRequest:function(e,t){if(this.isXHRSupported())return this.HTTPFactory.createXHR(e,t);if(this.isXDRSupported(t.indexOf("https:")===0))return this.HTTPFactory.createXDR(e,t);throw"Cross-origin HTTP requests are not supported"},isXHRSupported:function(){var e=this.getXHRAPI();return!!e&&new e().withCredentials!==void 0},isXDRSupported:function(e){var t=e?"https:":"http:",n=this.getProtocol();return!!window.XDomainRequest&&n===t},addUnloadListener:function(e){window.addEventListener!==void 0?window.addEventListener("unload",e,!1):window.attachEvent!==void 0&&window.attachEvent("onunload",e)},removeUnloadListener:function(e){window.addEventListener!==void 0?window.removeEventListener("unload",e,!1):window.detachEvent!==void 0&&window.detachEvent("onunload",e)},randomInt:function(e){var t=function(){var n=window.crypto||window.msCrypto,r=n.getRandomValues(new Uint32Array(1))[0];return r/Math.pow(2,32)};return Math.floor(t()*e)}},m=Ur,Tt;(function(e){e[e.ERROR=3]="ERROR",e[e.INFO=6]="INFO",e[e.DEBUG=7]="DEBUG"})(Tt||(Tt={}));var ft=Tt,Dr=function(){function e(t,n,r){this.key=t,this.session=n,this.events=[],this.options=r||{},this.sent=0,this.uniqueID=0}return e.prototype.log=function(t,n){t<=this.options.level&&(this.events.push(U({},n,{timestamp:j.now()})),this.options.limit&&this.events.length>this.options.limit&&this.events.shift())},e.prototype.error=function(t){this.log(ft.ERROR,t)},e.prototype.info=function(t){this.log(ft.INFO,t)},e.prototype.debug=function(t){this.log(ft.DEBUG,t)},e.prototype.isEmpty=function(){return this.events.length===0},e.prototype.send=function(t,n){var r=this,i=U({session:this.session,bundle:this.sent+1,key:this.key,lib:"js",version:this.options.version,cluster:this.options.cluster,features:this.options.features,timeline:this.events},this.options.params);return this.events=[],t(i,function(o,u){o||r.sent++,n&&n(o,u)}),!0},e.prototype.generateUniqueID=function(){return this.uniqueID++,this.uniqueID},e}(),Hr=Dr,Mr=function(){function e(t,n,r,i){this.name=t,this.priority=n,this.transport=r,this.options=i||{}}return e.prototype.isSupported=function(){return this.transport.isSupported({useTLS:this.options.useTLS})},e.prototype.connect=function(t,n){var r=this;if(this.isSupported()){if(this.priority"u")throw"'"+e.transport+"' is not a recognized auth transport";return function(t,n){var r=Jr(t,e);m.getAuthorizers()[e.transport](m,r,e,v.UserAuthentication,n)}},Vr=Wr,Gr=function(e,t){var n="socket_id="+encodeURIComponent(e.socketId);n+="&channel_name="+encodeURIComponent(e.channelName);for(var r in t.params)n+="&"+encodeURIComponent(r)+"="+encodeURIComponent(t.params[r]);if(t.paramsProvider!=null){var i=t.paramsProvider();for(var r in i)n+="&"+encodeURIComponent(r)+"="+encodeURIComponent(i[r])}return n},Qr=function(e){if(typeof m.getAuthorizers()[e.transport]>"u")throw"'"+e.transport+"' is not a recognized auth transport";return function(t,n){var r=Gr(t,e);m.getAuthorizers()[e.transport](m,r,e,v.ChannelAuthorization,n)}},Kr=Qr,Yr=function(e,t,n){var r={authTransport:t.transport,authEndpoint:t.endpoint,auth:{params:t.params,headers:t.headers}};return function(i,o){var u=e.channel(i.channelName),p=n(u,r);p.authorize(i.socketId,o)}},et=function(){return et=Object.assign||function(e){for(var t,n=1,r=arguments.length;n"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Ii(l){if(l===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return l}function ji(l,h){if(h&&(typeof h=="object"||typeof h=="function"))return h;if(h!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Ii(l)}function H(l){var h=Ri();return function(){var c=pt(l),s;if(h){var f=pt(this).constructor;s=Reflect.construct(c,arguments,f)}else s=c.apply(this,arguments);return ji(this,s)}}var Et=function(){function l(){L(this,l)}return R(l,[{key:"listenForWhisper",value:function(a,c){return this.listen(".client-"+a,c)}},{key:"notification",value:function(a){return this.listen(".Illuminate\\Notifications\\Events\\BroadcastNotificationCreated",a)}},{key:"stopListeningForWhisper",value:function(a,c){return this.stopListening(".client-"+a,c)}}]),l}(),de=function(){function l(h){L(this,l),this.namespace=h}return R(l,[{key:"format",value:function(a){return[".","\\"].includes(a.charAt(0))?a.substring(1):(this.namespace&&(a=this.namespace+"."+a),a.replace(/\./g,"\\"))}},{key:"setNamespace",value:function(a){this.namespace=a}}]),l}();function Ni(l){try{new l}catch(h){if(h.message.includes("is not a constructor"))return!1}return!0}var Lt=function(l){D(a,l);var h=H(a);function a(c,s,f){var d;return L(this,a),d=h.call(this),d.name=s,d.pusher=c,d.options=f,d.eventFormatter=new de(d.options.namespace),d.subscribe(),d}return R(a,[{key:"subscribe",value:function(){this.subscription=this.pusher.subscribe(this.name)}},{key:"unsubscribe",value:function(){this.pusher.unsubscribe(this.name)}},{key:"listen",value:function(s,f){return this.on(this.eventFormatter.format(s),f),this}},{key:"listenToAll",value:function(s){var f=this;return this.subscription.bind_global(function(d,N){if(!d.startsWith("pusher:")){var P=f.options.namespace.replace(/\./g,"\\"),T=d.startsWith(P)?d.substring(P.length+1):"."+d;s(T,N)}}),this}},{key:"stopListening",value:function(s,f){return f?this.subscription.unbind(this.eventFormatter.format(s),f):this.subscription.unbind(this.eventFormatter.format(s)),this}},{key:"stopListeningToAll",value:function(s){return s?this.subscription.unbind_global(s):this.subscription.unbind_global(),this}},{key:"subscribed",value:function(s){return this.on("pusher:subscription_succeeded",function(){s()}),this}},{key:"error",value:function(s){return this.on("pusher:subscription_error",function(f){s(f)}),this}},{key:"on",value:function(s,f){return this.subscription.bind(s,f),this}}]),a}(Et),ve=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"whisper",value:function(s,f){return this.pusher.channels.channels[this.name].trigger("client-".concat(s),f),this}}]),a}(Lt),qi=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"whisper",value:function(s,f){return this.pusher.channels.channels[this.name].trigger("client-".concat(s),f),this}}]),a}(Lt),Ui=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"here",value:function(s){return this.on("pusher:subscription_succeeded",function(f){s(Object.keys(f.members).map(function(d){return f.members[d]}))}),this}},{key:"joining",value:function(s){return this.on("pusher:member_added",function(f){s(f.info)}),this}},{key:"whisper",value:function(s,f){return this.pusher.channels.channels[this.name].trigger("client-".concat(s),f),this}},{key:"leaving",value:function(s){return this.on("pusher:member_removed",function(f){s(f.info)}),this}}]),a}(ve),ye=function(l){D(a,l);var h=H(a);function a(c,s,f){var d;return L(this,a),d=h.call(this),d.events={},d.listeners={},d.name=s,d.socket=c,d.options=f,d.eventFormatter=new de(d.options.namespace),d.subscribe(),d}return R(a,[{key:"subscribe",value:function(){this.socket.emit("subscribe",{channel:this.name,auth:this.options.auth||{}})}},{key:"unsubscribe",value:function(){this.unbind(),this.socket.emit("unsubscribe",{channel:this.name,auth:this.options.auth||{}})}},{key:"listen",value:function(s,f){return this.on(this.eventFormatter.format(s),f),this}},{key:"stopListening",value:function(s,f){return this.unbindEvent(this.eventFormatter.format(s),f),this}},{key:"subscribed",value:function(s){return this.on("connect",function(f){s(f)}),this}},{key:"error",value:function(s){return this}},{key:"on",value:function(s,f){var d=this;return this.listeners[s]=this.listeners[s]||[],this.events[s]||(this.events[s]=function(N,P){d.name===N&&d.listeners[s]&&d.listeners[s].forEach(function(T){return T(P)})},this.socket.on(s,this.events[s])),this.listeners[s].push(f),this}},{key:"unbind",value:function(){var s=this;Object.keys(this.events).forEach(function(f){s.unbindEvent(f)})}},{key:"unbindEvent",value:function(s,f){this.listeners[s]=this.listeners[s]||[],f&&(this.listeners[s]=this.listeners[s].filter(function(d){return d!==f})),(!f||this.listeners[s].length===0)&&(this.events[s]&&(this.socket.removeListener(s,this.events[s]),delete this.events[s]),delete this.listeners[s])}}]),a}(Et),ge=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"whisper",value:function(s,f){return this.socket.emit("client event",{channel:this.name,event:"client-".concat(s),data:f}),this}}]),a}(ye),Di=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"here",value:function(s){return this.on("presence:subscribed",function(f){s(f.map(function(d){return d.user_info}))}),this}},{key:"joining",value:function(s){return this.on("presence:joining",function(f){return s(f.user_info)}),this}},{key:"whisper",value:function(s,f){return this.socket.emit("client event",{channel:this.name,event:"client-".concat(s),data:f}),this}},{key:"leaving",value:function(s){return this.on("presence:leaving",function(f){return s(f.user_info)}),this}}]),a}(ge),dt=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"subscribe",value:function(){}},{key:"unsubscribe",value:function(){}},{key:"listen",value:function(s,f){return this}},{key:"listenToAll",value:function(s){return this}},{key:"stopListening",value:function(s,f){return this}},{key:"subscribed",value:function(s){return this}},{key:"error",value:function(s){return this}},{key:"on",value:function(s,f){return this}}]),a}(Et),_e=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"whisper",value:function(s,f){return this}}]),a}(dt),Hi=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"whisper",value:function(s,f){return this}}]),a}(dt),Mi=function(l){D(a,l);var h=H(a);function a(){return L(this,a),h.apply(this,arguments)}return R(a,[{key:"here",value:function(s){return this}},{key:"joining",value:function(s){return this}},{key:"whisper",value:function(s,f){return this}},{key:"leaving",value:function(s){return this}}]),a}(_e),Rt=function(){function l(h){L(this,l),this._defaultOptions={auth:{headers:{}},authEndpoint:"/broadcasting/auth",userAuthentication:{endpoint:"/broadcasting/user-auth",headers:{}},broadcaster:"pusher",csrfToken:null,bearerToken:null,host:null,key:null,namespace:"App.Events"},this.setOptions(h),this.connect()}return R(l,[{key:"setOptions",value:function(a){this.options=at(this._defaultOptions,a);var c=this.csrfToken();return c&&(this.options.auth.headers["X-CSRF-TOKEN"]=c,this.options.userAuthentication.headers["X-CSRF-TOKEN"]=c),c=this.options.bearerToken,c&&(this.options.auth.headers.Authorization="Bearer "+c,this.options.userAuthentication.headers.Authorization="Bearer "+c),a}},{key:"csrfToken",value:function(){var a;return typeof window<"u"&&window.Laravel&&window.Laravel.csrfToken?window.Laravel.csrfToken:this.options.csrfToken?this.options.csrfToken:typeof document<"u"&&typeof document.querySelector=="function"&&(a=document.querySelector('meta[name="csrf-token"]'))?a.getAttribute("content"):null}}]),l}(),fe=function(l){D(a,l);var h=H(a);function a(){var c;return L(this,a),c=h.apply(this,arguments),c.channels={},c}return R(a,[{key:"connect",value:function(){typeof this.options.client<"u"?this.pusher=this.options.client:this.options.Pusher?this.pusher=new this.options.Pusher(this.options.key,this.options):this.pusher=new Pusher(this.options.key,this.options)}},{key:"signin",value:function(){this.pusher.signin()}},{key:"listen",value:function(s,f,d){return this.channel(s).listen(f,d)}},{key:"channel",value:function(s){return this.channels[s]||(this.channels[s]=new Lt(this.pusher,s,this.options)),this.channels[s]}},{key:"privateChannel",value:function(s){return this.channels["private-"+s]||(this.channels["private-"+s]=new ve(this.pusher,"private-"+s,this.options)),this.channels["private-"+s]}},{key:"encryptedPrivateChannel",value:function(s){return this.channels["private-encrypted-"+s]||(this.channels["private-encrypted-"+s]=new qi(this.pusher,"private-encrypted-"+s,this.options)),this.channels["private-encrypted-"+s]}},{key:"presenceChannel",value:function(s){return this.channels["presence-"+s]||(this.channels["presence-"+s]=new Ui(this.pusher,"presence-"+s,this.options)),this.channels["presence-"+s]}},{key:"leave",value:function(s){var f=this,d=[s,"private-"+s,"private-encrypted-"+s,"presence-"+s];d.forEach(function(N,P){f.leaveChannel(N)})}},{key:"leaveChannel",value:function(s){this.channels[s]&&(this.channels[s].unsubscribe(),delete this.channels[s])}},{key:"socketId",value:function(){return this.pusher.connection.socket_id}},{key:"disconnect",value:function(){this.pusher.disconnect()}}]),a}(Rt),pe=function(l){D(a,l);var h=H(a);function a(){var c;return L(this,a),c=h.apply(this,arguments),c.channels={},c}return R(a,[{key:"connect",value:function(){var s=this,f=this.getSocketIO();return this.socket=f(this.options.host,this.options),this.socket.on("reconnect",function(){Object.values(s.channels).forEach(function(d){d.subscribe()})}),this.socket}},{key:"getSocketIO",value:function(){if(typeof this.options.client<"u")return this.options.client;if(typeof io<"u")return io;throw new Error("Socket.io client not found. Should be globally available or passed via options.client")}},{key:"listen",value:function(s,f,d){return this.channel(s).listen(f,d)}},{key:"channel",value:function(s){return this.channels[s]||(this.channels[s]=new ye(this.socket,s,this.options)),this.channels[s]}},{key:"privateChannel",value:function(s){return this.channels["private-"+s]||(this.channels["private-"+s]=new ge(this.socket,"private-"+s,this.options)),this.channels["private-"+s]}},{key:"presenceChannel",value:function(s){return this.channels["presence-"+s]||(this.channels["presence-"+s]=new Di(this.socket,"presence-"+s,this.options)),this.channels["presence-"+s]}},{key:"leave",value:function(s){var f=this,d=[s,"private-"+s,"presence-"+s];d.forEach(function(N){f.leaveChannel(N)})}},{key:"leaveChannel",value:function(s){this.channels[s]&&(this.channels[s].unsubscribe(),delete this.channels[s])}},{key:"socketId",value:function(){return this.socket.id}},{key:"disconnect",value:function(){this.socket.disconnect()}}]),a}(Rt),zi=function(l){D(a,l);var h=H(a);function a(){var c;return L(this,a),c=h.apply(this,arguments),c.channels={},c}return R(a,[{key:"connect",value:function(){}},{key:"listen",value:function(s,f,d){return new dt}},{key:"channel",value:function(s){return new dt}},{key:"privateChannel",value:function(s){return new _e}},{key:"encryptedPrivateChannel",value:function(s){return new Hi}},{key:"presenceChannel",value:function(s){return new Mi}},{key:"leave",value:function(s){}},{key:"leaveChannel",value:function(s){}},{key:"socketId",value:function(){return"fake-socket-id"}},{key:"disconnect",value:function(){}}]),a}(Rt),be=function(){function l(h){L(this,l),this.options=h,this.connect(),this.options.withoutInterceptors||this.registerInterceptors()}return R(l,[{key:"channel",value:function(a){return this.connector.channel(a)}},{key:"connect",value:function(){if(this.options.broadcaster=="reverb")this.connector=new fe(at(at({},this.options),{cluster:""}));else if(this.options.broadcaster=="pusher")this.connector=new fe(this.options);else if(this.options.broadcaster=="socket.io")this.connector=new pe(this.options);else if(this.options.broadcaster=="null")this.connector=new zi(this.options);else if(typeof this.options.broadcaster=="function"&&Ni(this.options.broadcaster))this.connector=new this.options.broadcaster(this.options);else throw new Error("Broadcaster ".concat(st(this.options.broadcaster)," ").concat(this.options.broadcaster," is not supported."))}},{key:"disconnect",value:function(){this.connector.disconnect()}},{key:"join",value:function(a){return this.connector.presenceChannel(a)}},{key:"leave",value:function(a){this.connector.leave(a)}},{key:"leaveChannel",value:function(a){this.connector.leaveChannel(a)}},{key:"leaveAllChannels",value:function(){for(var a in this.connector.channels)this.leaveChannel(a)}},{key:"listen",value:function(a,c,s){return this.connector.listen(a,c,s)}},{key:"private",value:function(a){return this.connector.privateChannel(a)}},{key:"encryptedPrivate",value:function(a){if(this.connector instanceof pe)throw new Error("Broadcaster ".concat(st(this.options.broadcaster)," ").concat(this.options.broadcaster," does not support encrypted private channels."));return this.connector.encryptedPrivateChannel(a)}},{key:"socketId",value:function(){return this.connector.socketId()}},{key:"registerInterceptors",value:function(){typeof Vue=="function"&&Vue.http&&this.registerVueRequestInterceptor(),typeof axios=="function"&&this.registerAxiosRequestInterceptor(),typeof jQuery=="function"&&this.registerjQueryAjaxSetup(),(typeof Turbo>"u"?"undefined":st(Turbo))==="object"&&this.registerTurboRequestInterceptor()}},{key:"registerVueRequestInterceptor",value:function(){var a=this;Vue.http.interceptors.push(function(c,s){a.socketId()&&c.headers.set("X-Socket-ID",a.socketId()),s()})}},{key:"registerAxiosRequestInterceptor",value:function(){var a=this;axios.interceptors.request.use(function(c){return a.socketId()&&(c.headers["X-Socket-Id"]=a.socketId()),c})}},{key:"registerjQueryAjaxSetup",value:function(){var a=this;typeof jQuery.ajax<"u"&&jQuery.ajaxPrefilter(function(c,s,f){a.socketId()&&f.setRequestHeader("X-Socket-Id",a.socketId())})}},{key:"registerTurboRequestInterceptor",value:function(){var a=this;document.addEventListener("turbo:before-fetch-request",function(c){c.detail.fetchOptions.headers["X-Socket-Id"]=a.socketId()})}}]),l}();var we=Li(me(),1);window.EchoFactory=be;window.Pusher=we.default;})();
+/*! Bundled license information:
+
+pusher-js/dist/web/pusher.js:
+ (*!
+ * Pusher JavaScript Library v7.6.0
+ * https://pusher.com/
+ *
+ * Copyright 2020, Pusher
+ * Released under the MIT licence.
+ *)
+*/
diff --git a/public/js/filament/forms/components/color-picker.js b/public/js/filament/forms/components/color-picker.js
new file mode 100644
index 000000000..6d807128c
--- /dev/null
+++ b/public/js/filament/forms/components/color-picker.js
@@ -0,0 +1 @@
+var c=(e,t=0,r=1)=>e>r?r:eMath.round(r*e)/r;var nt={grad:360/400,turn:360,rad:360/(Math.PI*2)},F=e=>G(v(e)),v=e=>(e[0]==="#"&&(e=e.substring(1)),e.length<6?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?n(parseInt(e[3]+e[3],16)/255,2):1}:{r:parseInt(e.substring(0,2),16),g:parseInt(e.substring(2,4),16),b:parseInt(e.substring(4,6),16),a:e.length===8?n(parseInt(e.substring(6,8),16)/255,2):1}),at=(e,t="deg")=>Number(e)*(nt[t]||1),it=e=>{let r=/hsla?\(?\s*(-?\d*\.?\d+)(deg|rad|grad|turn)?[,\s]+(-?\d*\.?\d+)%?[,\s]+(-?\d*\.?\d+)%?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(e);return r?lt({h:at(r[1],r[2]),s:Number(r[3]),l:Number(r[4]),a:r[5]===void 0?1:Number(r[5])/(r[6]?100:1)}):{h:0,s:0,v:0,a:1}},J=it,lt=({h:e,s:t,l:r,a:o})=>(t*=(r<50?r:100-r)/100,{h:e,s:t>0?2*t/(r+t)*100:0,v:r+t,a:o}),X=e=>ct(A(e)),Y=({h:e,s:t,v:r,a:o})=>{let s=(200-t)*r/100;return{h:n(e),s:n(s>0&&s<200?t*r/100/(s<=100?s:200-s)*100:0),l:n(s/2),a:n(o,2)}};var d=e=>{let{h:t,s:r,l:o}=Y(e);return`hsl(${t}, ${r}%, ${o}%)`},$=e=>{let{h:t,s:r,l:o,a:s}=Y(e);return`hsla(${t}, ${r}%, ${o}%, ${s})`},A=({h:e,s:t,v:r,a:o})=>{e=e/360*6,t=t/100,r=r/100;let s=Math.floor(e),a=r*(1-t),i=r*(1-(e-s)*t),l=r*(1-(1-e+s)*t),q=s%6;return{r:n([r,i,a,a,l,r][q]*255),g:n([l,r,r,i,a,a][q]*255),b:n([a,a,l,r,r,i][q]*255),a:n(o,2)}},B=e=>{let{r:t,g:r,b:o}=A(e);return`rgb(${t}, ${r}, ${o})`},D=e=>{let{r:t,g:r,b:o,a:s}=A(e);return`rgba(${t}, ${r}, ${o}, ${s})`};var I=e=>{let r=/rgba?\(?\s*(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(e);return r?G({r:Number(r[1])/(r[2]?100/255:1),g:Number(r[3])/(r[4]?100/255:1),b:Number(r[5])/(r[6]?100/255:1),a:r[7]===void 0?1:Number(r[7])/(r[8]?100:1)}):{h:0,s:0,v:0,a:1}},U=I,b=e=>{let t=e.toString(16);return t.length<2?"0"+t:t},ct=({r:e,g:t,b:r,a:o})=>{let s=o<1?b(n(o*255)):"";return"#"+b(e)+b(t)+b(r)+s},G=({r:e,g:t,b:r,a:o})=>{let s=Math.max(e,t,r),a=s-Math.min(e,t,r),i=a?s===e?(t-r)/a:s===t?2+(r-e)/a:4+(e-t)/a:0;return{h:n(60*(i<0?i+6:i)),s:n(s?a/s*100:0),v:n(s/255*100),a:o}};var L=(e,t)=>{if(e===t)return!0;for(let r in e)if(e[r]!==t[r])return!1;return!0},h=(e,t)=>e.replace(/\s/g,"")===t.replace(/\s/g,""),K=(e,t)=>e.toLowerCase()===t.toLowerCase()?!0:L(v(e),v(t));var Q={},H=e=>{let t=Q[e];return t||(t=document.createElement("template"),t.innerHTML=e,Q[e]=t),t},f=(e,t,r)=>{e.dispatchEvent(new CustomEvent(t,{bubbles:!0,detail:r}))};var m=!1,O=e=>"touches"in e,pt=e=>m&&!O(e)?!1:(m||(m=O(e)),!0),W=(e,t)=>{let r=O(t)?t.touches[0]:t,o=e.el.getBoundingClientRect();f(e.el,"move",e.getMove({x:c((r.pageX-(o.left+window.pageXOffset))/o.width),y:c((r.pageY-(o.top+window.pageYOffset))/o.height)}))},ut=(e,t)=>{let r=t.keyCode;r>40||e.xy&&r<37||r<33||(t.preventDefault(),f(e.el,"move",e.getMove({x:r===39?.01:r===37?-.01:r===34?.05:r===33?-.05:r===35?1:r===36?-1:0,y:r===40?.01:r===38?-.01:0},!0)))},u=class{constructor(t,r,o,s){let a=H(``);t.appendChild(a.content.cloneNode(!0));let i=t.querySelector(`[part=${r}]`);i.addEventListener("mousedown",this),i.addEventListener("touchstart",this),i.addEventListener("keydown",this),this.el=i,this.xy=s,this.nodes=[i.firstChild,i]}set dragging(t){let r=t?document.addEventListener:document.removeEventListener;r(m?"touchmove":"mousemove",this),r(m?"touchend":"mouseup",this)}handleEvent(t){switch(t.type){case"mousedown":case"touchstart":if(t.preventDefault(),!pt(t)||!m&&t.button!=0)return;this.el.focus(),W(this,t),this.dragging=!0;break;case"mousemove":case"touchmove":t.preventDefault(),W(this,t);break;case"mouseup":case"touchend":this.dragging=!1;break;case"keydown":ut(this,t);break}}style(t){t.forEach((r,o)=>{for(let s in r)this.nodes[o].style.setProperty(s,r[s])})}};var S=class extends u{constructor(t){super(t,"hue",'aria-label="Hue" aria-valuemin="0" aria-valuemax="360"',!1)}update({h:t}){this.h=t,this.style([{left:`${t/360*100}%`,color:d({h:t,s:100,v:100,a:1})}]),this.el.setAttribute("aria-valuenow",`${n(t)}`)}getMove(t,r){return{h:r?c(this.h+t.x*360,0,360):360*t.x}}};var T=class extends u{constructor(t){super(t,"saturation",'aria-label="Color"',!0)}update(t){this.hsva=t,this.style([{top:`${100-t.v}%`,left:`${t.s}%`,color:d(t)},{"background-color":d({h:t.h,s:100,v:100,a:1})}]),this.el.setAttribute("aria-valuetext",`Saturation ${n(t.s)}%, Brightness ${n(t.v)}%`)}getMove(t,r){return{s:r?c(this.hsva.s+t.x*100,0,100):t.x*100,v:r?c(this.hsva.v-t.y*100,0,100):Math.round(100-t.y*100)}}};var Z=':host{display:flex;flex-direction:column;position:relative;width:200px;height:200px;user-select:none;-webkit-user-select:none;cursor:default}:host([hidden]){display:none!important}[role=slider]{position:relative;touch-action:none;user-select:none;-webkit-user-select:none;outline:0}[role=slider]:last-child{border-radius:0 0 8px 8px}[part$=pointer]{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;display:flex;place-content:center center;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}[part$=pointer]::after{content:"";width:100%;height:100%;border-radius:inherit;background-color:currentColor}[role=slider]:focus [part$=pointer]{transform:translate(-50%,-50%) scale(1.1)}';var tt="[part=hue]{flex:0 0 24px;background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}[part=hue-pointer]{top:50%;z-index:2}";var rt="[part=saturation]{flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,rgba(255,255,255,0));box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}[part=saturation-pointer]{z-index:3}";var w=Symbol("same"),R=Symbol("color"),et=Symbol("hsva"),_=Symbol("update"),ot=Symbol("parts"),g=Symbol("css"),x=Symbol("sliders"),p=class extends HTMLElement{static get observedAttributes(){return["color"]}get[g](){return[Z,tt,rt]}get[x](){return[T,S]}get color(){return this[R]}set color(t){if(!this[w](t)){let r=this.colorModel.toHsva(t);this[_](r),this[R]=t}}constructor(){super();let t=H(``),r=this.attachShadow({mode:"open"});r.appendChild(t.content.cloneNode(!0)),r.addEventListener("move",this),this[ot]=this[x].map(o=>new o(r))}connectedCallback(){if(this.hasOwnProperty("color")){let t=this.color;delete this.color,this.color=t}else this.color||(this.color=this.colorModel.defaultColor)}attributeChangedCallback(t,r,o){let s=this.colorModel.fromAttr(o);this[w](s)||(this.color=s)}handleEvent(t){let r=this[et],o={...r,...t.detail};this[_](o);let s;!L(o,r)&&!this[w](s=this.colorModel.fromHsva(o))&&(this[R]=s,f(this,"color-changed",{value:s}))}[w](t){return this.color&&this.colorModel.equal(t,this.color)}[_](t){this[et]=t,this[ot].forEach(r=>r.update(t))}};var dt={defaultColor:"#000",toHsva:F,fromHsva:({h:e,s:t,v:r})=>X({h:e,s:t,v:r,a:1}),equal:K,fromAttr:e=>e},y=class extends p{get colorModel(){return dt}};var P=class extends y{};customElements.define("hex-color-picker",P);var ht={defaultColor:"hsl(0, 0%, 0%)",toHsva:J,fromHsva:d,equal:h,fromAttr:e=>e},M=class extends p{get colorModel(){return ht}};var z=class extends M{};customElements.define("hsl-string-color-picker",z);var mt={defaultColor:"rgb(0, 0, 0)",toHsva:U,fromHsva:B,equal:h,fromAttr:e=>e},C=class extends p{get colorModel(){return mt}};var V=class extends C{};customElements.define("rgb-string-color-picker",V);var k=class extends u{constructor(t){super(t,"alpha",'aria-label="Alpha" aria-valuemin="0" aria-valuemax="1"',!1)}update(t){this.hsva=t;let r=$({...t,a:0}),o=$({...t,a:1}),s=t.a*100;this.style([{left:`${s}%`,color:$(t)},{"--gradient":`linear-gradient(90deg, ${r}, ${o}`}]);let a=n(s);this.el.setAttribute("aria-valuenow",`${a}`),this.el.setAttribute("aria-valuetext",`${a}%`)}getMove(t,r){return{a:r?c(this.hsva.a+t.x):t.x}}};var st=`[part=alpha]{flex:0 0 24px}[part=alpha]::after{display:block;content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;background-image:var(--gradient);box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}[part^=alpha]{background-color:#fff;background-image:url('data:image/svg+xml, ')}[part=alpha-pointer]{top:50%}`;var E=class extends p{get[g](){return[...super[g],st]}get[x](){return[...super[x],k]}};var ft={defaultColor:"rgba(0, 0, 0, 1)",toHsva:I,fromHsva:D,equal:h,fromAttr:e=>e},N=class extends E{get colorModel(){return ft}};var j=class extends N{};customElements.define("rgba-string-color-picker",j);function gt({isAutofocused:e,isDisabled:t,isLive:r,isLiveDebounced:o,isLiveOnBlur:s,liveDebounce:a,state:i}){return{state:i,init:function(){this.state===null||this.state===""||this.setState(this.state),e&&this.togglePanelVisibility(this.$refs.input),this.$refs.input.addEventListener("change",l=>{this.setState(l.target.value)}),this.$refs.panel.addEventListener("color-changed",l=>{this.setState(l.detail.value),!(s||!(r||o))&&setTimeout(()=>{this.state===l.detail.value&&this.commitState()},o?a:250)}),(r||o||s)&&new MutationObserver(()=>this.isOpen()?null:this.commitState()).observe(this.$refs.panel,{attributes:!0,childList:!0})},togglePanelVisibility:function(){t||this.$refs.panel.toggle(this.$refs.input)},setState:function(l){this.state=l,this.$refs.input.value=l,this.$refs.panel.color=l},isOpen:function(){return this.$refs.panel.style.display==="block"},commitState:function(){JSON.stringify(this.$wire.__instance.canonical)!==JSON.stringify(this.$wire.__instance.ephemeral)&&this.$wire.$commit()}}}export{gt as default};
diff --git a/public/js/filament/forms/components/date-time-picker.js b/public/js/filament/forms/components/date-time-picker.js
new file mode 100644
index 000000000..8a9b5d117
--- /dev/null
+++ b/public/js/filament/forms/components/date-time-picker.js
@@ -0,0 +1 @@
+var bi=Object.create;var mn=Object.defineProperty;var ki=Object.getOwnPropertyDescriptor;var ji=Object.getOwnPropertyNames;var Hi=Object.getPrototypeOf,Ti=Object.prototype.hasOwnProperty;var b=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports);var wi=(n,t,s,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of ji(t))!Ti.call(n,e)&&e!==s&&mn(n,e,{get:()=>t[e],enumerable:!(i=ki(t,e))||i.enumerable});return n};var de=(n,t,s)=>(s=n!=null?bi(Hi(n)):{},wi(t||!n||!n.__esModule?mn(s,"default",{value:n,enumerable:!0}):s,n));var jn=b((je,He)=>{(function(n,t){typeof je=="object"&&typeof He<"u"?He.exports=t():typeof define=="function"&&define.amd?define(t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_plugin_advancedFormat=t()})(je,function(){"use strict";return function(n,t){var s=t.prototype,i=s.format;s.format=function(e){var r=this,a=this.$locale();if(!this.isValid())return i.bind(this)(e);var u=this.$utils(),o=(e||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(d){switch(d){case"Q":return Math.ceil((r.$M+1)/3);case"Do":return a.ordinal(r.$D);case"gggg":return r.weekYear();case"GGGG":return r.isoWeekYear();case"wo":return a.ordinal(r.week(),"W");case"w":case"ww":return u.s(r.week(),d==="w"?1:2,"0");case"W":case"WW":return u.s(r.isoWeek(),d==="W"?1:2,"0");case"k":case"kk":return u.s(String(r.$H===0?24:r.$H),d==="k"?1:2,"0");case"X":return Math.floor(r.$d.getTime()/1e3);case"x":return r.$d.getTime();case"z":return"["+r.offsetName()+"]";case"zzz":return"["+r.offsetName("long")+"]";default:return d}});return i.bind(this)(o)}}})});var Hn=b((Te,we)=>{(function(n,t){typeof Te=="object"&&typeof we<"u"?we.exports=t():typeof define=="function"&&define.amd?define(t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_plugin_customParseFormat=t()})(Te,function(){"use strict";var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,s=/\d/,i=/\d\d/,e=/\d\d?/,r=/\d*[^-_:/,()\s\d]+/,a={},u=function(m){return(m=+m)+(m>68?1900:2e3)},o=function(m){return function(Y){this[m]=+Y}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(m){(this.zone||(this.zone={})).offset=function(Y){if(!Y||Y==="Z")return 0;var L=Y.match(/([+-]|\d\d)/g),D=60*L[1]+(+L[2]||0);return D===0?0:L[0]==="+"?-D:D}(m)}],_=function(m){var Y=a[m];return Y&&(Y.indexOf?Y:Y.s.concat(Y.f))},y=function(m,Y){var L,D=a.meridiem;if(D){for(var w=1;w<=24;w+=1)if(m.indexOf(D(w,0,Y))>-1){L=w>12;break}}else L=m===(Y?"pm":"PM");return L},l={A:[r,function(m){this.afternoon=y(m,!1)}],a:[r,function(m){this.afternoon=y(m,!0)}],Q:[s,function(m){this.month=3*(m-1)+1}],S:[s,function(m){this.milliseconds=100*+m}],SS:[i,function(m){this.milliseconds=10*+m}],SSS:[/\d{3}/,function(m){this.milliseconds=+m}],s:[e,o("seconds")],ss:[e,o("seconds")],m:[e,o("minutes")],mm:[e,o("minutes")],H:[e,o("hours")],h:[e,o("hours")],HH:[e,o("hours")],hh:[e,o("hours")],D:[e,o("day")],DD:[i,o("day")],Do:[r,function(m){var Y=a.ordinal,L=m.match(/\d+/);if(this.day=L[0],Y)for(var D=1;D<=31;D+=1)Y(D).replace(/\[|\]/g,"")===m&&(this.day=D)}],w:[e,o("week")],ww:[i,o("week")],M:[e,o("month")],MM:[i,o("month")],MMM:[r,function(m){var Y=_("months"),L=(_("monthsShort")||Y.map(function(D){return D.slice(0,3)})).indexOf(m)+1;if(L<1)throw new Error;this.month=L%12||L}],MMMM:[r,function(m){var Y=_("months").indexOf(m)+1;if(Y<1)throw new Error;this.month=Y%12||Y}],Y:[/[+-]?\d+/,o("year")],YY:[i,function(m){this.year=u(m)}],YYYY:[/\d{4}/,o("year")],Z:d,ZZ:d};function f(m){var Y,L;Y=m,L=a&&a.formats;for(var D=(m=Y.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function($,j,W){var U=W&&W.toUpperCase();return j||L[W]||n[W]||L[U].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(v,h,c){return h||c.slice(1)})})).match(t),w=D.length,g=0;g-1)return new Date((M==="X"?1e3:1)*p);var T=f(M)(p),I=T.year,N=T.month,E=T.day,P=T.hours,B=T.minutes,Q=T.seconds,re=T.milliseconds,Z=T.zone,J=T.week,G=new Date,X=E||(I||N?1:G.getDate()),ee=I||G.getFullYear(),le=0;I&&!N||(le=N>0?N-1:G.getMonth());var me,pe=P||0,De=B||0,Le=Q||0,ve=re||0;return Z?new Date(Date.UTC(ee,le,X,pe,De,Le,ve+60*Z.offset*1e3)):S?new Date(Date.UTC(ee,le,X,pe,De,Le,ve)):(me=new Date(ee,le,X,pe,De,Le,ve),J&&(me=k(me).week(J).toDate()),me)}catch{return new Date("")}}(C,x,A,L),this.init(),U&&U!==!0&&(this.$L=this.locale(U).$L),W&&C!=this.format(x)&&(this.$d=new Date("")),a={}}else if(x instanceof Array)for(var v=x.length,h=1;h<=v;h+=1){q[1]=x[h-1];var c=L.apply(this,q);if(c.isValid()){this.$d=c.$d,this.$L=c.$L,this.init();break}h===v&&(this.$d=new Date(""))}else w.call(this,g)}}})});var Tn=b(($e,Ce)=>{(function(n,t){typeof $e=="object"&&typeof Ce<"u"?Ce.exports=t():typeof define=="function"&&define.amd?define(t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_plugin_localeData=t()})($e,function(){"use strict";return function(n,t,s){var i=t.prototype,e=function(d){return d&&(d.indexOf?d:d.s)},r=function(d,_,y,l,f){var m=d.name?d:d.$locale(),Y=e(m[_]),L=e(m[y]),D=Y||L.map(function(g){return g.slice(0,l)});if(!f)return D;var w=m.weekStart;return D.map(function(g,C){return D[(C+(w||0))%7]})},a=function(){return s.Ls[s.locale()]},u=function(d,_){return d.formats[_]||function(y){return y.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(l,f,m){return f||m.slice(1)})}(d.formats[_.toUpperCase()])},o=function(){var d=this;return{months:function(_){return _?_.format("MMMM"):r(d,"months")},monthsShort:function(_){return _?_.format("MMM"):r(d,"monthsShort","months",3)},firstDayOfWeek:function(){return d.$locale().weekStart||0},weekdays:function(_){return _?_.format("dddd"):r(d,"weekdays")},weekdaysMin:function(_){return _?_.format("dd"):r(d,"weekdaysMin","weekdays",2)},weekdaysShort:function(_){return _?_.format("ddd"):r(d,"weekdaysShort","weekdays",3)},longDateFormat:function(_){return u(d.$locale(),_)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};i.localeData=function(){return o.bind(this)()},s.localeData=function(){var d=a();return{firstDayOfWeek:function(){return d.weekStart||0},weekdays:function(){return s.weekdays()},weekdaysShort:function(){return s.weekdaysShort()},weekdaysMin:function(){return s.weekdaysMin()},months:function(){return s.months()},monthsShort:function(){return s.monthsShort()},longDateFormat:function(_){return u(d,_)},meridiem:d.meridiem,ordinal:d.ordinal}},s.months=function(){return r(a(),"months")},s.monthsShort=function(){return r(a(),"monthsShort","months",3)},s.weekdays=function(d){return r(a(),"weekdays",null,null,d)},s.weekdaysShort=function(d){return r(a(),"weekdaysShort","weekdays",3,d)},s.weekdaysMin=function(d){return r(a(),"weekdaysMin","weekdays",2,d)}}})});var wn=b((Oe,ze)=>{(function(n,t){typeof Oe=="object"&&typeof ze<"u"?ze.exports=t():typeof define=="function"&&define.amd?define(t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_plugin_timezone=t()})(Oe,function(){"use strict";var n={year:0,month:1,day:2,hour:3,minute:4,second:5},t={};return function(s,i,e){var r,a=function(_,y,l){l===void 0&&(l={});var f=new Date(_),m=function(Y,L){L===void 0&&(L={});var D=L.timeZoneName||"short",w=Y+"|"+D,g=t[w];return g||(g=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:Y,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:D}),t[w]=g),g}(y,l);return m.formatToParts(f)},u=function(_,y){for(var l=a(_,y),f=[],m=0;m=0&&(f[w]=parseInt(D,10))}var g=f[3],C=g===24?0:g,A=f[0]+"-"+f[1]+"-"+f[2]+" "+C+":"+f[4]+":"+f[5]+":000",q=+_;return(e.utc(A).valueOf()-(q-=q%1e3))/6e4},o=i.prototype;o.tz=function(_,y){_===void 0&&(_=r);var l,f=this.utcOffset(),m=this.toDate(),Y=m.toLocaleString("en-US",{timeZone:_}),L=Math.round((m-new Date(Y))/1e3/60),D=15*-Math.round(m.getTimezoneOffset()/15)-L;if(!Number(D))l=this.utcOffset(0,y);else if(l=e(Y,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(D,!0),y){var w=l.utcOffset();l=l.add(f-w,"minute")}return l.$x.$timezone=_,l},o.offsetName=function(_){var y=this.$x.$timezone||e.tz.guess(),l=a(this.valueOf(),y,{timeZoneName:_}).find(function(f){return f.type.toLowerCase()==="timezonename"});return l&&l.value};var d=o.startOf;o.startOf=function(_,y){if(!this.$x||!this.$x.$timezone)return d.call(this,_,y);var l=e(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return d.call(l,_,y).tz(this.$x.$timezone,!0)},e.tz=function(_,y,l){var f=l&&y,m=l||y||r,Y=u(+e(),m);if(typeof _!="string")return e(_).tz(m);var L=function(C,A,q){var x=C-60*A*1e3,$=u(x,q);if(A===$)return[x,A];var j=u(x-=60*($-A)*1e3,q);return $===j?[x,$]:[C-60*Math.min($,j)*1e3,Math.max($,j)]}(e.utc(_,f).valueOf(),Y,m),D=L[0],w=L[1],g=e(D).utcOffset(w);return g.$x.$timezone=m,g},e.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},e.tz.setDefault=function(_){r=_}}})});var $n=b((Ae,Ie)=>{(function(n,t){typeof Ae=="object"&&typeof Ie<"u"?Ie.exports=t():typeof define=="function"&&define.amd?define(t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_plugin_utc=t()})(Ae,function(){"use strict";var n="minute",t=/[+-]\d\d(?::?\d\d)?/g,s=/([+-]|\d\d)/g;return function(i,e,r){var a=e.prototype;r.utc=function(f){var m={date:f,utc:!0,args:arguments};return new e(m)},a.utc=function(f){var m=r(this.toDate(),{locale:this.$L,utc:!0});return f?m.add(this.utcOffset(),n):m},a.local=function(){return r(this.toDate(),{locale:this.$L,utc:!1})};var u=a.parse;a.parse=function(f){f.utc&&(this.$u=!0),this.$utils().u(f.$offset)||(this.$offset=f.$offset),u.call(this,f)};var o=a.init;a.init=function(){if(this.$u){var f=this.$d;this.$y=f.getUTCFullYear(),this.$M=f.getUTCMonth(),this.$D=f.getUTCDate(),this.$W=f.getUTCDay(),this.$H=f.getUTCHours(),this.$m=f.getUTCMinutes(),this.$s=f.getUTCSeconds(),this.$ms=f.getUTCMilliseconds()}else o.call(this)};var d=a.utcOffset;a.utcOffset=function(f,m){var Y=this.$utils().u;if(Y(f))return this.$u?0:Y(this.$offset)?d.call(this):this.$offset;if(typeof f=="string"&&(f=function(g){g===void 0&&(g="");var C=g.match(t);if(!C)return null;var A=(""+C[0]).match(s)||["-",0,0],q=A[0],x=60*+A[1]+ +A[2];return x===0?0:q==="+"?x:-x}(f),f===null))return this;var L=Math.abs(f)<=16?60*f:f,D=this;if(m)return D.$offset=L,D.$u=f===0,D;if(f!==0){var w=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(D=this.local().add(L+w,n)).$offset=L,D.$x.$localOffset=w}else D=this.utc();return D};var _=a.format;a.format=function(f){var m=f||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return _.call(this,m)},a.valueOf=function(){var f=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*f},a.isUTC=function(){return!!this.$u},a.toISOString=function(){return this.toDate().toISOString()},a.toString=function(){return this.toDate().toUTCString()};var y=a.toDate;a.toDate=function(f){return f==="s"&&this.$offset?r(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():y.call(this)};var l=a.diff;a.diff=function(f,m,Y){if(f&&this.$u===f.$u)return l.call(this,f,m,Y);var L=this.local(),D=r(f).local();return l.call(L,D,m,Y)}}})});var H=b((qe,xe)=>{(function(n,t){typeof qe=="object"&&typeof xe<"u"?xe.exports=t():typeof define=="function"&&define.amd?define(t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs=t()})(qe,function(){"use strict";var n=1e3,t=6e4,s=36e5,i="millisecond",e="second",r="minute",a="hour",u="day",o="week",d="month",_="quarter",y="year",l="date",f="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,Y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,L={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(v){var h=["th","st","nd","rd"],c=v%100;return"["+v+(h[(c-20)%10]||h[c]||h[0])+"]"}},D=function(v,h,c){var p=String(v);return!p||p.length>=h?v:""+Array(h+1-p.length).join(c)+v},w={s:D,z:function(v){var h=-v.utcOffset(),c=Math.abs(h),p=Math.floor(c/60),M=c%60;return(h<=0?"+":"-")+D(p,2,"0")+":"+D(M,2,"0")},m:function v(h,c){if(h.date()1)return v(k[0])}else{var T=h.name;C[T]=h,M=T}return!p&&M&&(g=M),M||!p&&g},$=function(v,h){if(q(v))return v.clone();var c=typeof h=="object"?h:{};return c.date=v,c.args=arguments,new W(c)},j=w;j.l=x,j.i=q,j.w=function(v,h){return $(v,{locale:h.$L,utc:h.$u,x:h.$x,$offset:h.$offset})};var W=function(){function v(c){this.$L=x(c.locale,null,!0),this.parse(c),this.$x=this.$x||c.x||{},this[A]=!0}var h=v.prototype;return h.parse=function(c){this.$d=function(p){var M=p.date,S=p.utc;if(M===null)return new Date(NaN);if(j.u(M))return new Date;if(M instanceof Date)return new Date(M);if(typeof M=="string"&&!/Z$/i.test(M)){var k=M.match(m);if(k){var T=k[2]-1||0,I=(k[7]||"0").substring(0,3);return S?new Date(Date.UTC(k[1],T,k[3]||1,k[4]||0,k[5]||0,k[6]||0,I)):new Date(k[1],T,k[3]||1,k[4]||0,k[5]||0,k[6]||0,I)}}return new Date(M)}(c),this.init()},h.init=function(){var c=this.$d;this.$y=c.getFullYear(),this.$M=c.getMonth(),this.$D=c.getDate(),this.$W=c.getDay(),this.$H=c.getHours(),this.$m=c.getMinutes(),this.$s=c.getSeconds(),this.$ms=c.getMilliseconds()},h.$utils=function(){return j},h.isValid=function(){return this.$d.toString()!==f},h.isSame=function(c,p){var M=$(c);return this.startOf(p)<=M&&M<=this.endOf(p)},h.isAfter=function(c,p){return $(c){(function(n,t){typeof Ne=="object"&&typeof Ee<"u"?Ee.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_ar=t(n.dayjs)})(Ne,function(n){"use strict";function t(u){return u&&typeof u=="object"&&"default"in u?u:{default:u}}var s=t(n),i="\u064A\u0646\u0627\u064A\u0631_\u0641\u0628\u0631\u0627\u064A\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064A\u0644_\u0645\u0627\u064A\u0648_\u064A\u0648\u0646\u064A\u0648_\u064A\u0648\u0644\u064A\u0648_\u0623\u063A\u0633\u0637\u0633_\u0633\u0628\u062A\u0645\u0628\u0631_\u0623\u0643\u062A\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062F\u064A\u0633\u0645\u0628\u0631".split("_"),e={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},r={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},a={name:"ar",weekdays:"\u0627\u0644\u0623\u062D\u062F_\u0627\u0644\u0625\u062B\u0646\u064A\u0646_\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062E\u0645\u064A\u0633_\u0627\u0644\u062C\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062A".split("_"),weekdaysShort:"\u0623\u062D\u062F_\u0625\u062B\u0646\u064A\u0646_\u062B\u0644\u0627\u062B\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062E\u0645\u064A\u0633_\u062C\u0645\u0639\u0629_\u0633\u0628\u062A".split("_"),weekdaysMin:"\u062D_\u0646_\u062B_\u0631_\u062E_\u062C_\u0633".split("_"),months:i,monthsShort:i,weekStart:6,meridiem:function(u){return u>12?"\u0645":"\u0635"},relativeTime:{future:"\u0628\u0639\u062F %s",past:"\u0645\u0646\u0630 %s",s:"\u062B\u0627\u0646\u064A\u0629 \u0648\u0627\u062D\u062F\u0629",m:"\u062F\u0642\u064A\u0642\u0629 \u0648\u0627\u062D\u062F\u0629",mm:"%d \u062F\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629 \u0648\u0627\u062D\u062F\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062A",d:"\u064A\u0648\u0645 \u0648\u0627\u062D\u062F",dd:"%d \u0623\u064A\u0627\u0645",M:"\u0634\u0647\u0631 \u0648\u0627\u062D\u062F",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0639\u0627\u0645 \u0648\u0627\u062D\u062F",yy:"%d \u0623\u0639\u0648\u0627\u0645"},preparse:function(u){return u.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(o){return r[o]}).replace(/،/g,",")},postformat:function(u){return u.replace(/\d/g,function(o){return e[o]}).replace(/,/g,"\u060C")},ordinal:function(u){return u},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200FM/\u200FYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"}};return s.default.locale(a,null,!0),a})});var On=b((Fe,Je)=>{(function(n,t){typeof Fe=="object"&&typeof Je<"u"?Je.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_bs=t(n.dayjs)})(Fe,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"bs",weekdays:"nedjelja_ponedjeljak_utorak_srijeda_\u010Detvrtak_petak_subota".split("_"),months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),weekStart:1,weekdaysShort:"ned._pon._uto._sri._\u010Det._pet._sub.".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),weekdaysMin:"ne_po_ut_sr_\u010De_pe_su".split("_"),ordinal:function(e){return e},formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"}};return s.default.locale(i,null,!0),i})});var zn=b((We,Ue)=>{(function(n,t){typeof We=="object"&&typeof Ue<"u"?Ue.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_ca=t(n.dayjs)})(We,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"ca",weekdays:"Diumenge_Dilluns_Dimarts_Dimecres_Dijous_Divendres_Dissabte".split("_"),weekdaysShort:"Dg._Dl._Dt._Dc._Dj._Dv._Ds.".split("_"),weekdaysMin:"Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"),months:"Gener_Febrer_Mar\xE7_Abril_Maig_Juny_Juliol_Agost_Setembre_Octubre_Novembre_Desembre".split("_"),monthsShort:"Gen._Febr._Mar\xE7_Abr._Maig_Juny_Jul._Ag._Set._Oct._Nov._Des.".split("_"),weekStart:1,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",LLL:"D MMMM [de] YYYY [a les] H:mm",LLLL:"dddd D MMMM [de] YYYY [a les] H:mm",ll:"D MMM YYYY",lll:"D MMM YYYY, H:mm",llll:"ddd D MMM YYYY, H:mm"},relativeTime:{future:"d'aqu\xED %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinal:function(e){return""+e+(e===1||e===3?"r":e===2?"n":e===4?"t":"\xE8")}};return s.default.locale(i,null,!0),i})});var Pe=b((Ye,An)=>{(function(n,t){typeof Ye=="object"&&typeof An<"u"?t(Ye,H()):typeof define=="function"&&define.amd?define(["exports","dayjs"],t):t((n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_ku={},n.dayjs)})(Ye,function(n,t){"use strict";function s(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var i=s(t),e={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},r={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},a=["\u06A9\u0627\u0646\u0648\u0648\u0646\u06CC \u062F\u0648\u0648\u06D5\u0645","\u0634\u0648\u0628\u0627\u062A","\u0626\u0627\u062F\u0627\u0631","\u0646\u06CC\u0633\u0627\u0646","\u0626\u0627\u06CC\u0627\u0631","\u062D\u0648\u0632\u06D5\u06CC\u0631\u0627\u0646","\u062A\u06D5\u0645\u0645\u0648\u0648\u0632","\u0626\u0627\u0628","\u0626\u06D5\u06CC\u0644\u0648\u0648\u0644","\u062A\u0634\u0631\u06CC\u0646\u06CC \u06CC\u06D5\u06A9\u06D5\u0645","\u062A\u0634\u0631\u06CC\u0646\u06CC \u062F\u0648\u0648\u06D5\u0645","\u06A9\u0627\u0646\u0648\u0648\u0646\u06CC \u06CC\u06D5\u06A9\u06D5\u0645"],u={name:"ku",months:a,monthsShort:a,weekdays:"\u06CC\u06D5\u06A9\u0634\u06D5\u0645\u0645\u06D5_\u062F\u0648\u0648\u0634\u06D5\u0645\u0645\u06D5_\u0633\u06CE\u0634\u06D5\u0645\u0645\u06D5_\u0686\u0648\u0627\u0631\u0634\u06D5\u0645\u0645\u06D5_\u067E\u06CE\u0646\u062C\u0634\u06D5\u0645\u0645\u06D5_\u0647\u06D5\u06CC\u0646\u06CC_\u0634\u06D5\u0645\u0645\u06D5".split("_"),weekdaysShort:"\u06CC\u06D5\u06A9\u0634\u06D5\u0645_\u062F\u0648\u0648\u0634\u06D5\u0645_\u0633\u06CE\u0634\u06D5\u0645_\u0686\u0648\u0627\u0631\u0634\u06D5\u0645_\u067E\u06CE\u0646\u062C\u0634\u06D5\u0645_\u0647\u06D5\u06CC\u0646\u06CC_\u0634\u06D5\u0645\u0645\u06D5".split("_"),weekStart:6,weekdaysMin:"\u06CC_\u062F_\u0633_\u0686_\u067E_\u0647\u0640_\u0634".split("_"),preparse:function(o){return o.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(d){return r[d]}).replace(/،/g,",")},postformat:function(o){return o.replace(/\d/g,function(d){return e[d]}).replace(/,/g,"\u060C")},ordinal:function(o){return o},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiem:function(o){return o<12?"\u067E.\u0646":"\u062F.\u0646"},relativeTime:{future:"\u0644\u06D5 %s",past:"\u0644\u06D5\u0645\u06D5\u0648\u067E\u06CE\u0634 %s",s:"\u0686\u06D5\u0646\u062F \u0686\u0631\u06A9\u06D5\u06CC\u06D5\u06A9",m:"\u06CC\u06D5\u06A9 \u062E\u0648\u0644\u06D5\u06A9",mm:"%d \u062E\u0648\u0644\u06D5\u06A9",h:"\u06CC\u06D5\u06A9 \u06A9\u0627\u062A\u0698\u0645\u06CE\u0631",hh:"%d \u06A9\u0627\u062A\u0698\u0645\u06CE\u0631",d:"\u06CC\u06D5\u06A9 \u0695\u06C6\u0698",dd:"%d \u0695\u06C6\u0698",M:"\u06CC\u06D5\u06A9 \u0645\u0627\u0646\u06AF",MM:"%d \u0645\u0627\u0646\u06AF",y:"\u06CC\u06D5\u06A9 \u0633\u0627\u06B5",yy:"%d \u0633\u0627\u06B5"}};i.default.locale(u,null,!0),n.default=u,n.englishToArabicNumbersMap=e,Object.defineProperty(n,"__esModule",{value:!0})})});var In=b((Re,Ge)=>{(function(n,t){typeof Re=="object"&&typeof Ge<"u"?Ge.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_cs=t(n.dayjs)})(Re,function(n){"use strict";function t(a){return a&&typeof a=="object"&&"default"in a?a:{default:a}}var s=t(n);function i(a){return a>1&&a<5&&~~(a/10)!=1}function e(a,u,o,d){var _=a+" ";switch(o){case"s":return u||d?"p\xE1r sekund":"p\xE1r sekundami";case"m":return u?"minuta":d?"minutu":"minutou";case"mm":return u||d?_+(i(a)?"minuty":"minut"):_+"minutami";case"h":return u?"hodina":d?"hodinu":"hodinou";case"hh":return u||d?_+(i(a)?"hodiny":"hodin"):_+"hodinami";case"d":return u||d?"den":"dnem";case"dd":return u||d?_+(i(a)?"dny":"dn\xED"):_+"dny";case"M":return u||d?"m\u011Bs\xEDc":"m\u011Bs\xEDcem";case"MM":return u||d?_+(i(a)?"m\u011Bs\xEDce":"m\u011Bs\xEDc\u016F"):_+"m\u011Bs\xEDci";case"y":return u||d?"rok":"rokem";case"yy":return u||d?_+(i(a)?"roky":"let"):_+"lety"}}var r={name:"cs",weekdays:"ned\u011Ble_pond\u011Bl\xED_\xFAter\xFD_st\u0159eda_\u010Dtvrtek_p\xE1tek_sobota".split("_"),weekdaysShort:"ne_po_\xFAt_st_\u010Dt_p\xE1_so".split("_"),weekdaysMin:"ne_po_\xFAt_st_\u010Dt_p\xE1_so".split("_"),months:"leden_\xFAnor_b\u0159ezen_duben_kv\u011Bten_\u010Derven_\u010Dervenec_srpen_z\xE1\u0159\xED_\u0159\xEDjen_listopad_prosinec".split("_"),monthsShort:"led_\xFAno_b\u0159e_dub_kv\u011B_\u010Dvn_\u010Dvc_srp_z\xE1\u0159_\u0159\xEDj_lis_pro".split("_"),weekStart:1,yearStart:4,ordinal:function(a){return a+"."},formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},relativeTime:{future:"za %s",past:"p\u0159ed %s",s:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e}};return s.default.locale(r,null,!0),r})});var qn=b((Ze,Ve)=>{(function(n,t){typeof Ze=="object"&&typeof Ve<"u"?Ve.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_cy=t(n.dayjs)})(Ze,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"cy",weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),weekStart:1,weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},relativeTime:{future:"mewn %s",past:"%s yn \xF4l",s:"ychydig eiliadau",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"}};return s.default.locale(i,null,!0),i})});var xn=b((Ke,Qe)=>{(function(n,t){typeof Ke=="object"&&typeof Qe<"u"?Qe.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_da=t(n.dayjs)})(Ke,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"da",weekdays:"s\xF8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xF8rdag".split("_"),weekdaysShort:"s\xF8n._man._tirs._ons._tors._fre._l\xF8r.".split("_"),weekdaysMin:"s\xF8._ma._ti._on._to._fr._l\xF8.".split("_"),months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj_juni_juli_aug._sept._okt._nov._dec.".split("_"),weekStart:1,yearStart:4,ordinal:function(e){return e+"."},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},relativeTime:{future:"om %s",past:"%s siden",s:"f\xE5 sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en m\xE5ned",MM:"%d m\xE5neder",y:"et \xE5r",yy:"%d \xE5r"}};return s.default.locale(i,null,!0),i})});var Nn=b((Xe,Be)=>{(function(n,t){typeof Xe=="object"&&typeof Be<"u"?Be.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_de=t(n.dayjs)})(Xe,function(n){"use strict";function t(a){return a&&typeof a=="object"&&"default"in a?a:{default:a}}var s=t(n),i={s:"ein paar Sekunden",m:["eine Minute","einer Minute"],mm:"%d Minuten",h:["eine Stunde","einer Stunde"],hh:"%d Stunden",d:["ein Tag","einem Tag"],dd:["%d Tage","%d Tagen"],M:["ein Monat","einem Monat"],MM:["%d Monate","%d Monaten"],y:["ein Jahr","einem Jahr"],yy:["%d Jahre","%d Jahren"]};function e(a,u,o){var d=i[o];return Array.isArray(d)&&(d=d[u?0:1]),d.replace("%d",a)}var r={name:"de",weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),months:"Januar_Februar_M\xE4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xE4rz_Apr._Mai_Juni_Juli_Aug._Sept._Okt._Nov._Dez.".split("_"),ordinal:function(a){return a+"."},weekStart:1,yearStart:4,formats:{LTS:"HH:mm:ss",LT:"HH:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},relativeTime:{future:"in %s",past:"vor %s",s:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e}};return s.default.locale(r,null,!0),r})});var En=b((et,tt)=>{(function(n,t){typeof et=="object"&&typeof tt<"u"?tt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_el=t(n.dayjs)})(et,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"el",weekdays:"\u039A\u03C5\u03C1\u03B9\u03B1\u03BA\u03AE_\u0394\u03B5\u03C5\u03C4\u03AD\u03C1\u03B1_\u03A4\u03C1\u03AF\u03C4\u03B7_\u03A4\u03B5\u03C4\u03AC\u03C1\u03C4\u03B7_\u03A0\u03AD\u03BC\u03C0\u03C4\u03B7_\u03A0\u03B1\u03C1\u03B1\u03C3\u03BA\u03B5\u03C5\u03AE_\u03A3\u03AC\u03B2\u03B2\u03B1\u03C4\u03BF".split("_"),weekdaysShort:"\u039A\u03C5\u03C1_\u0394\u03B5\u03C5_\u03A4\u03C1\u03B9_\u03A4\u03B5\u03C4_\u03A0\u03B5\u03BC_\u03A0\u03B1\u03C1_\u03A3\u03B1\u03B2".split("_"),weekdaysMin:"\u039A\u03C5_\u0394\u03B5_\u03A4\u03C1_\u03A4\u03B5_\u03A0\u03B5_\u03A0\u03B1_\u03A3\u03B1".split("_"),months:"\u0399\u03B1\u03BD\u03BF\u03C5\u03AC\u03C1\u03B9\u03BF\u03C2_\u03A6\u03B5\u03B2\u03C1\u03BF\u03C5\u03AC\u03C1\u03B9\u03BF\u03C2_\u039C\u03AC\u03C1\u03C4\u03B9\u03BF\u03C2_\u0391\u03C0\u03C1\u03AF\u03BB\u03B9\u03BF\u03C2_\u039C\u03AC\u03B9\u03BF\u03C2_\u0399\u03BF\u03CD\u03BD\u03B9\u03BF\u03C2_\u0399\u03BF\u03CD\u03BB\u03B9\u03BF\u03C2_\u0391\u03CD\u03B3\u03BF\u03C5\u03C3\u03C4\u03BF\u03C2_\u03A3\u03B5\u03C0\u03C4\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2_\u039F\u03BA\u03C4\u03CE\u03B2\u03C1\u03B9\u03BF\u03C2_\u039D\u03BF\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2_\u0394\u03B5\u03BA\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2".split("_"),monthsShort:"\u0399\u03B1\u03BD_\u03A6\u03B5\u03B2_\u039C\u03B1\u03C1_\u0391\u03C0\u03C1_\u039C\u03B1\u03B9_\u0399\u03BF\u03C5\u03BD_\u0399\u03BF\u03C5\u03BB_\u0391\u03C5\u03B3_\u03A3\u03B5\u03C0\u03C4_\u039F\u03BA\u03C4_\u039D\u03BF\u03B5_\u0394\u03B5\u03BA".split("_"),ordinal:function(e){return e},weekStart:1,relativeTime:{future:"\u03C3\u03B5 %s",past:"\u03C0\u03C1\u03B9\u03BD %s",s:"\u03BC\u03B5\u03C1\u03B9\u03BA\u03AC \u03B4\u03B5\u03C5\u03C4\u03B5\u03C1\u03CC\u03BB\u03B5\u03C0\u03C4\u03B1",m:"\u03AD\u03BD\u03B1 \u03BB\u03B5\u03C0\u03C4\u03CC",mm:"%d \u03BB\u03B5\u03C0\u03C4\u03AC",h:"\u03BC\u03AF\u03B1 \u03CE\u03C1\u03B1",hh:"%d \u03CE\u03C1\u03B5\u03C2",d:"\u03BC\u03AF\u03B1 \u03BC\u03AD\u03C1\u03B1",dd:"%d \u03BC\u03AD\u03C1\u03B5\u03C2",M:"\u03AD\u03BD\u03B1 \u03BC\u03AE\u03BD\u03B1",MM:"%d \u03BC\u03AE\u03BD\u03B5\u03C2",y:"\u03AD\u03BD\u03B1 \u03C7\u03C1\u03CC\u03BD\u03BF",yy:"%d \u03C7\u03C1\u03CC\u03BD\u03B9\u03B1"},formats:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"}};return s.default.locale(i,null,!0),i})});var Fn=b((nt,it)=>{(function(n,t){typeof nt=="object"&&typeof it<"u"?it.exports=t():typeof define=="function"&&define.amd?define(t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_en=t()})(nt,function(){"use strict";return{name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(n){var t=["th","st","nd","rd"],s=n%100;return"["+n+(t[(s-20)%10]||t[s]||t[0])+"]"}}})});var Jn=b((st,rt)=>{(function(n,t){typeof st=="object"&&typeof rt<"u"?rt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_es=t(n.dayjs)})(st,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"es",monthsShort:"ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),weekStart:1,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},ordinal:function(e){return e+"\xBA"}};return s.default.locale(i,null,!0),i})});var Wn=b((at,ut)=>{(function(n,t){typeof at=="object"&&typeof ut<"u"?ut.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_et=t(n.dayjs)})(at,function(n){"use strict";function t(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}var s=t(n);function i(r,a,u,o){var d={s:["m\xF5ne sekundi","m\xF5ni sekund","paar sekundit"],m:["\xFChe minuti","\xFCks minut"],mm:["%d minuti","%d minutit"],h:["\xFChe tunni","tund aega","\xFCks tund"],hh:["%d tunni","%d tundi"],d:["\xFChe p\xE4eva","\xFCks p\xE4ev"],M:["kuu aja","kuu aega","\xFCks kuu"],MM:["%d kuu","%d kuud"],y:["\xFChe aasta","aasta","\xFCks aasta"],yy:["%d aasta","%d aastat"]};return a?(d[u][2]?d[u][2]:d[u][1]).replace("%d",r):(o?d[u][0]:d[u][1]).replace("%d",r)}var e={name:"et",weekdays:"p\xFChap\xE4ev_esmasp\xE4ev_teisip\xE4ev_kolmap\xE4ev_neljap\xE4ev_reede_laup\xE4ev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),months:"jaanuar_veebruar_m\xE4rts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_m\xE4rts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),ordinal:function(r){return r+"."},weekStart:1,relativeTime:{future:"%s p\xE4rast",past:"%s tagasi",s:i,m:i,mm:i,h:i,hh:i,d:i,dd:"%d p\xE4eva",M:i,MM:i,y:i,yy:i},formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"}};return s.default.locale(e,null,!0),e})});var Un=b((ot,dt)=>{(function(n,t){typeof ot=="object"&&typeof dt<"u"?dt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_fa=t(n.dayjs)})(ot,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"fa",weekdays:"\u06CC\u06A9\u200C\u0634\u0646\u0628\u0647_\u062F\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200C\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067E\u0646\u062C\u200C\u0634\u0646\u0628\u0647_\u062C\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysShort:"\u06CC\u06A9\u200C\u0634\u0646\u0628\u0647_\u062F\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200C\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067E\u0646\u062C\u200C\u0634\u0646\u0628\u0647_\u062C\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysMin:"\u06CC_\u062F_\u0633_\u0686_\u067E_\u062C_\u0634".split("_"),weekStart:6,months:"\u0698\u0627\u0646\u0648\u06CC\u0647_\u0641\u0648\u0631\u06CC\u0647_\u0645\u0627\u0631\u0633_\u0622\u0648\u0631\u06CC\u0644_\u0645\u0647_\u0698\u0648\u0626\u0646_\u0698\u0648\u0626\u06CC\u0647_\u0627\u0648\u062A_\u0633\u067E\u062A\u0627\u0645\u0628\u0631_\u0627\u06A9\u062A\u0628\u0631_\u0646\u0648\u0627\u0645\u0628\u0631_\u062F\u0633\u0627\u0645\u0628\u0631".split("_"),monthsShort:"\u0698\u0627\u0646\u0648\u06CC\u0647_\u0641\u0648\u0631\u06CC\u0647_\u0645\u0627\u0631\u0633_\u0622\u0648\u0631\u06CC\u0644_\u0645\u0647_\u0698\u0648\u0626\u0646_\u0698\u0648\u0626\u06CC\u0647_\u0627\u0648\u062A_\u0633\u067E\u062A\u0627\u0645\u0628\u0631_\u0627\u06A9\u062A\u0628\u0631_\u0646\u0648\u0627\u0645\u0628\u0631_\u062F\u0633\u0627\u0645\u0628\u0631".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},relativeTime:{future:"\u062F\u0631 %s",past:"%s \u067E\u06CC\u0634",s:"\u0686\u0646\u062F \u062B\u0627\u0646\u06CC\u0647",m:"\u06CC\u06A9 \u062F\u0642\u06CC\u0642\u0647",mm:"%d \u062F\u0642\u06CC\u0642\u0647",h:"\u06CC\u06A9 \u0633\u0627\u0639\u062A",hh:"%d \u0633\u0627\u0639\u062A",d:"\u06CC\u06A9 \u0631\u0648\u0632",dd:"%d \u0631\u0648\u0632",M:"\u06CC\u06A9 \u0645\u0627\u0647",MM:"%d \u0645\u0627\u0647",y:"\u06CC\u06A9 \u0633\u0627\u0644",yy:"%d \u0633\u0627\u0644"}};return s.default.locale(i,null,!0),i})});var Pn=b((_t,ft)=>{(function(n,t){typeof _t=="object"&&typeof ft<"u"?ft.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_fi=t(n.dayjs)})(_t,function(n){"use strict";function t(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}var s=t(n);function i(r,a,u,o){var d={s:"muutama sekunti",m:"minuutti",mm:"%d minuuttia",h:"tunti",hh:"%d tuntia",d:"p\xE4iv\xE4",dd:"%d p\xE4iv\xE4\xE4",M:"kuukausi",MM:"%d kuukautta",y:"vuosi",yy:"%d vuotta",numbers:"nolla_yksi_kaksi_kolme_nelj\xE4_viisi_kuusi_seitsem\xE4n_kahdeksan_yhdeks\xE4n".split("_")},_={s:"muutaman sekunnin",m:"minuutin",mm:"%d minuutin",h:"tunnin",hh:"%d tunnin",d:"p\xE4iv\xE4n",dd:"%d p\xE4iv\xE4n",M:"kuukauden",MM:"%d kuukauden",y:"vuoden",yy:"%d vuoden",numbers:"nollan_yhden_kahden_kolmen_nelj\xE4n_viiden_kuuden_seitsem\xE4n_kahdeksan_yhdeks\xE4n".split("_")},y=o&&!a?_:d,l=y[u];return r<10?l.replace("%d",y.numbers[r]):l.replace("%d",r)}var e={name:"fi",weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kes\xE4kuu_hein\xE4kuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kes\xE4_hein\xE4_elo_syys_loka_marras_joulu".split("_"),ordinal:function(r){return r+"."},weekStart:1,yearStart:4,relativeTime:{future:"%s p\xE4\xE4st\xE4",past:"%s sitten",s:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i},formats:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM[ta] YYYY",LLL:"D. MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, D. MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"D. MMM YYYY",lll:"D. MMM YYYY, [klo] HH.mm",llll:"ddd, D. MMM YYYY, [klo] HH.mm"}};return s.default.locale(e,null,!0),e})});var Rn=b((lt,mt)=>{(function(n,t){typeof lt=="object"&&typeof mt<"u"?mt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_fr=t(n.dayjs)})(lt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"fr",weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),months:"janvier_f\xE9vrier_mars_avril_mai_juin_juillet_ao\xFBt_septembre_octobre_novembre_d\xE9cembre".split("_"),monthsShort:"janv._f\xE9vr._mars_avr._mai_juin_juil._ao\xFBt_sept._oct._nov._d\xE9c.".split("_"),weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(e){return""+e+(e===1?"er":"")}};return s.default.locale(i,null,!0),i})});var Gn=b((ct,ht)=>{(function(n,t){typeof ct=="object"&&typeof ht<"u"?ht.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_hi=t(n.dayjs)})(ct,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"hi",weekdays:"\u0930\u0935\u093F\u0935\u093E\u0930_\u0938\u094B\u092E\u0935\u093E\u0930_\u092E\u0902\u0917\u0932\u0935\u093E\u0930_\u092C\u0941\u0927\u0935\u093E\u0930_\u0917\u0941\u0930\u0942\u0935\u093E\u0930_\u0936\u0941\u0915\u094D\u0930\u0935\u093E\u0930_\u0936\u0928\u093F\u0935\u093E\u0930".split("_"),months:"\u091C\u0928\u0935\u0930\u0940_\u092B\u093C\u0930\u0935\u0930\u0940_\u092E\u093E\u0930\u094D\u091A_\u0905\u092A\u094D\u0930\u0948\u0932_\u092E\u0908_\u091C\u0942\u0928_\u091C\u0941\u0932\u093E\u0908_\u0905\u0917\u0938\u094D\u0924_\u0938\u093F\u0924\u092E\u094D\u092C\u0930_\u0905\u0915\u094D\u091F\u0942\u092C\u0930_\u0928\u0935\u092E\u094D\u092C\u0930_\u0926\u093F\u0938\u092E\u094D\u092C\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093F_\u0938\u094B\u092E_\u092E\u0902\u0917\u0932_\u092C\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094D\u0930_\u0936\u0928\u093F".split("_"),monthsShort:"\u091C\u0928._\u092B\u093C\u0930._\u092E\u093E\u0930\u094D\u091A_\u0905\u092A\u094D\u0930\u0948._\u092E\u0908_\u091C\u0942\u0928_\u091C\u0941\u0932._\u0905\u0917._\u0938\u093F\u0924._\u0905\u0915\u094D\u091F\u0942._\u0928\u0935._\u0926\u093F\u0938.".split("_"),weekdaysMin:"\u0930_\u0938\u094B_\u092E\u0902_\u092C\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),ordinal:function(e){return e},formats:{LT:"A h:mm \u092C\u091C\u0947",LTS:"A h:mm:ss \u092C\u091C\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u092C\u091C\u0947",LLLL:"dddd, D MMMM YYYY, A h:mm \u092C\u091C\u0947"},relativeTime:{future:"%s \u092E\u0947\u0902",past:"%s \u092A\u0939\u0932\u0947",s:"\u0915\u0941\u091B \u0939\u0940 \u0915\u094D\u0937\u0923",m:"\u090F\u0915 \u092E\u093F\u0928\u091F",mm:"%d \u092E\u093F\u0928\u091F",h:"\u090F\u0915 \u0918\u0902\u091F\u093E",hh:"%d \u0918\u0902\u091F\u0947",d:"\u090F\u0915 \u0926\u093F\u0928",dd:"%d \u0926\u093F\u0928",M:"\u090F\u0915 \u092E\u0939\u0940\u0928\u0947",MM:"%d \u092E\u0939\u0940\u0928\u0947",y:"\u090F\u0915 \u0935\u0930\u094D\u0937",yy:"%d \u0935\u0930\u094D\u0937"}};return s.default.locale(i,null,!0),i})});var Zn=b((Mt,yt)=>{(function(n,t){typeof Mt=="object"&&typeof yt<"u"?yt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_hu=t(n.dayjs)})(Mt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"hu",weekdays:"vas\xE1rnap_h\xE9tf\u0151_kedd_szerda_cs\xFCt\xF6rt\xF6k_p\xE9ntek_szombat".split("_"),weekdaysShort:"vas_h\xE9t_kedd_sze_cs\xFCt_p\xE9n_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),months:"janu\xE1r_febru\xE1r_m\xE1rcius_\xE1prilis_m\xE1jus_j\xFAnius_j\xFAlius_augusztus_szeptember_okt\xF3ber_november_december".split("_"),monthsShort:"jan_feb_m\xE1rc_\xE1pr_m\xE1j_j\xFAn_j\xFAl_aug_szept_okt_nov_dec".split("_"),ordinal:function(e){return e+"."},weekStart:1,relativeTime:{future:"%s m\xFAlva",past:"%s",s:function(e,r,a,u){return"n\xE9h\xE1ny m\xE1sodperc"+(u||r?"":"e")},m:function(e,r,a,u){return"egy perc"+(u||r?"":"e")},mm:function(e,r,a,u){return e+" perc"+(u||r?"":"e")},h:function(e,r,a,u){return"egy "+(u||r?"\xF3ra":"\xF3r\xE1ja")},hh:function(e,r,a,u){return e+" "+(u||r?"\xF3ra":"\xF3r\xE1ja")},d:function(e,r,a,u){return"egy "+(u||r?"nap":"napja")},dd:function(e,r,a,u){return e+" "+(u||r?"nap":"napja")},M:function(e,r,a,u){return"egy "+(u||r?"h\xF3nap":"h\xF3napja")},MM:function(e,r,a,u){return e+" "+(u||r?"h\xF3nap":"h\xF3napja")},y:function(e,r,a,u){return"egy "+(u||r?"\xE9v":"\xE9ve")},yy:function(e,r,a,u){return e+" "+(u||r?"\xE9v":"\xE9ve")}},formats:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"}};return s.default.locale(i,null,!0),i})});var Vn=b((Yt,pt)=>{(function(n,t){typeof Yt=="object"&&typeof pt<"u"?pt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_hy_am=t(n.dayjs)})(Yt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"hy-am",weekdays:"\u056F\u056B\u0580\u0561\u056F\u056B_\u0565\u0580\u056F\u0578\u0582\u0577\u0561\u0562\u0569\u056B_\u0565\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056B_\u0579\u0578\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056B_\u0570\u056B\u0576\u0563\u0577\u0561\u0562\u0569\u056B_\u0578\u0582\u0580\u0562\u0561\u0569_\u0577\u0561\u0562\u0561\u0569".split("_"),months:"\u0570\u0578\u0582\u0576\u057E\u0561\u0580\u056B_\u0583\u0565\u057F\u0580\u057E\u0561\u0580\u056B_\u0574\u0561\u0580\u057F\u056B_\u0561\u057A\u0580\u056B\u056C\u056B_\u0574\u0561\u0575\u056B\u057D\u056B_\u0570\u0578\u0582\u0576\u056B\u057D\u056B_\u0570\u0578\u0582\u056C\u056B\u057D\u056B_\u0585\u0563\u0578\u057D\u057F\u0578\u057D\u056B_\u057D\u0565\u057A\u057F\u0565\u0574\u0562\u0565\u0580\u056B_\u0570\u0578\u056F\u057F\u0565\u0574\u0562\u0565\u0580\u056B_\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580\u056B_\u0564\u0565\u056F\u057F\u0565\u0574\u0562\u0565\u0580\u056B".split("_"),weekStart:1,weekdaysShort:"\u056F\u0580\u056F_\u0565\u0580\u056F_\u0565\u0580\u0584_\u0579\u0580\u0584_\u0570\u0576\u0563_\u0578\u0582\u0580\u0562_\u0577\u0562\u0569".split("_"),monthsShort:"\u0570\u0576\u057E_\u0583\u057F\u0580_\u0574\u0580\u057F_\u0561\u057A\u0580_\u0574\u0575\u057D_\u0570\u0576\u057D_\u0570\u056C\u057D_\u0585\u0563\u057D_\u057D\u057A\u057F_\u0570\u056F\u057F_\u0576\u0574\u0562_\u0564\u056F\u057F".split("_"),weekdaysMin:"\u056F\u0580\u056F_\u0565\u0580\u056F_\u0565\u0580\u0584_\u0579\u0580\u0584_\u0570\u0576\u0563_\u0578\u0582\u0580\u0562_\u0577\u0562\u0569".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0569.",LLL:"D MMMM YYYY \u0569., HH:mm",LLLL:"dddd, D MMMM YYYY \u0569., HH:mm"},relativeTime:{future:"%s \u0570\u0565\u057F\u0578",past:"%s \u0561\u057C\u0561\u057B",s:"\u0574\u056B \u0584\u0561\u0576\u056B \u057E\u0561\u0575\u0580\u056F\u0575\u0561\u0576",m:"\u0580\u0578\u057A\u0565",mm:"%d \u0580\u0578\u057A\u0565",h:"\u056A\u0561\u0574",hh:"%d \u056A\u0561\u0574",d:"\u0585\u0580",dd:"%d \u0585\u0580",M:"\u0561\u0574\u056B\u057D",MM:"%d \u0561\u0574\u056B\u057D",y:"\u057F\u0561\u0580\u056B",yy:"%d \u057F\u0561\u0580\u056B"}};return s.default.locale(i,null,!0),i})});var Kn=b((Dt,Lt)=>{(function(n,t){typeof Dt=="object"&&typeof Lt<"u"?Lt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_id=t(n.dayjs)})(Dt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"id",weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),weekStart:1,formats:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},ordinal:function(e){return e+"."}};return s.default.locale(i,null,!0),i})});var Qn=b((vt,gt)=>{(function(n,t){typeof vt=="object"&&typeof gt<"u"?gt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_it=t(n.dayjs)})(vt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"it",weekdays:"domenica_luned\xEC_marted\xEC_mercoled\xEC_gioved\xEC_venerd\xEC_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),weekStart:1,monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"tra %s",past:"%s fa",s:"qualche secondo",m:"un minuto",mm:"%d minuti",h:"un' ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinal:function(e){return e+"\xBA"}};return s.default.locale(i,null,!0),i})});var Xn=b((St,bt)=>{(function(n,t){typeof St=="object"&&typeof bt<"u"?bt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_ja=t(n.dayjs)})(St,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"ja",weekdays:"\u65E5\u66DC\u65E5_\u6708\u66DC\u65E5_\u706B\u66DC\u65E5_\u6C34\u66DC\u65E5_\u6728\u66DC\u65E5_\u91D1\u66DC\u65E5_\u571F\u66DC\u65E5".split("_"),weekdaysShort:"\u65E5_\u6708_\u706B_\u6C34_\u6728_\u91D1_\u571F".split("_"),weekdaysMin:"\u65E5_\u6708_\u706B_\u6C34_\u6728_\u91D1_\u571F".split("_"),months:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),ordinal:function(e){return e+"\u65E5"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5E74M\u6708D\u65E5",LLL:"YYYY\u5E74M\u6708D\u65E5 HH:mm",LLLL:"YYYY\u5E74M\u6708D\u65E5 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY\u5E74M\u6708D\u65E5",lll:"YYYY\u5E74M\u6708D\u65E5 HH:mm",llll:"YYYY\u5E74M\u6708D\u65E5(ddd) HH:mm"},meridiem:function(e){return e<12?"\u5348\u524D":"\u5348\u5F8C"},relativeTime:{future:"%s\u5F8C",past:"%s\u524D",s:"\u6570\u79D2",m:"1\u5206",mm:"%d\u5206",h:"1\u6642\u9593",hh:"%d\u6642\u9593",d:"1\u65E5",dd:"%d\u65E5",M:"1\u30F6\u6708",MM:"%d\u30F6\u6708",y:"1\u5E74",yy:"%d\u5E74"}};return s.default.locale(i,null,!0),i})});var Bn=b((kt,jt)=>{(function(n,t){typeof kt=="object"&&typeof jt<"u"?jt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_ka=t(n.dayjs)})(kt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"ka",weekdays:"\u10D9\u10D5\u10D8\u10E0\u10D0_\u10DD\u10E0\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10E1\u10D0\u10DB\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10DD\u10D7\u10EE\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10EE\u10E3\u10D7\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10DE\u10D0\u10E0\u10D0\u10E1\u10D9\u10D4\u10D5\u10D8_\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8".split("_"),weekdaysShort:"\u10D9\u10D5\u10D8_\u10DD\u10E0\u10E8_\u10E1\u10D0\u10DB_\u10DD\u10D7\u10EE_\u10EE\u10E3\u10D7_\u10DE\u10D0\u10E0_\u10E8\u10D0\u10D1".split("_"),weekdaysMin:"\u10D9\u10D5_\u10DD\u10E0_\u10E1\u10D0_\u10DD\u10D7_\u10EE\u10E3_\u10DE\u10D0_\u10E8\u10D0".split("_"),months:"\u10D8\u10D0\u10DC\u10D5\u10D0\u10E0\u10D8_\u10D7\u10D4\u10D1\u10D4\u10E0\u10D5\u10D0\u10DA\u10D8_\u10DB\u10D0\u10E0\u10E2\u10D8_\u10D0\u10DE\u10E0\u10D8\u10DA\u10D8_\u10DB\u10D0\u10D8\u10E1\u10D8_\u10D8\u10D5\u10DC\u10D8\u10E1\u10D8_\u10D8\u10D5\u10DA\u10D8\u10E1\u10D8_\u10D0\u10D2\u10D5\u10D8\u10E1\u10E2\u10DD_\u10E1\u10D4\u10E5\u10E2\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8_\u10DD\u10E5\u10E2\u10DD\u10DB\u10D1\u10D4\u10E0\u10D8_\u10DC\u10DD\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8_\u10D3\u10D4\u10D9\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8".split("_"),monthsShort:"\u10D8\u10D0\u10DC_\u10D7\u10D4\u10D1_\u10DB\u10D0\u10E0_\u10D0\u10DE\u10E0_\u10DB\u10D0\u10D8_\u10D8\u10D5\u10DC_\u10D8\u10D5\u10DA_\u10D0\u10D2\u10D5_\u10E1\u10D4\u10E5_\u10DD\u10E5\u10E2_\u10DC\u10DD\u10D4_\u10D3\u10D4\u10D9".split("_"),weekStart:1,formats:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},relativeTime:{future:"%s \u10E8\u10D4\u10DB\u10D3\u10D4\u10D2",past:"%s \u10EC\u10D8\u10DC",s:"\u10EC\u10D0\u10DB\u10D8",m:"\u10EC\u10E3\u10D7\u10D8",mm:"%d \u10EC\u10E3\u10D7\u10D8",h:"\u10E1\u10D0\u10D0\u10D7\u10D8",hh:"%d \u10E1\u10D0\u10D0\u10D7\u10D8\u10E1",d:"\u10D3\u10E6\u10D4\u10E1",dd:"%d \u10D3\u10E6\u10D8\u10E1 \u10D2\u10D0\u10DC\u10DB\u10D0\u10D5\u10DA\u10DD\u10D1\u10D0\u10E8\u10D8",M:"\u10D7\u10D5\u10D8\u10E1",MM:"%d \u10D7\u10D5\u10D8\u10E1",y:"\u10EC\u10D4\u10DA\u10D8",yy:"%d \u10EC\u10DA\u10D8\u10E1"},ordinal:function(e){return e}};return s.default.locale(i,null,!0),i})});var ei=b((Ht,Tt)=>{(function(n,t){typeof Ht=="object"&&typeof Tt<"u"?Tt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_km=t(n.dayjs)})(Ht,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"km",weekdays:"\u17A2\u17B6\u1791\u17B7\u178F\u17D2\u1799_\u1785\u17D0\u1793\u17D2\u1791_\u17A2\u1784\u17D2\u1782\u17B6\u179A_\u1796\u17BB\u1792_\u1796\u17D2\u179A\u17A0\u179F\u17D2\u1794\u178F\u17B7\u17CD_\u179F\u17BB\u1780\u17D2\u179A_\u179F\u17C5\u179A\u17CD".split("_"),months:"\u1798\u1780\u179A\u17B6_\u1780\u17BB\u1798\u17D2\u1797\u17C8_\u1798\u17B8\u1793\u17B6_\u1798\u17C1\u179F\u17B6_\u17A7\u179F\u1797\u17B6_\u1798\u17B7\u1790\u17BB\u1793\u17B6_\u1780\u1780\u17D2\u1780\u178A\u17B6_\u179F\u17B8\u17A0\u17B6_\u1780\u1789\u17D2\u1789\u17B6_\u178F\u17BB\u179B\u17B6_\u179C\u17B7\u1785\u17D2\u1786\u17B7\u1780\u17B6_\u1792\u17D2\u1793\u17BC".split("_"),weekStart:1,weekdaysShort:"\u17A2\u17B6_\u1785_\u17A2_\u1796_\u1796\u17D2\u179A_\u179F\u17BB_\u179F".split("_"),monthsShort:"\u1798\u1780\u179A\u17B6_\u1780\u17BB\u1798\u17D2\u1797\u17C8_\u1798\u17B8\u1793\u17B6_\u1798\u17C1\u179F\u17B6_\u17A7\u179F\u1797\u17B6_\u1798\u17B7\u1790\u17BB\u1793\u17B6_\u1780\u1780\u17D2\u1780\u178A\u17B6_\u179F\u17B8\u17A0\u17B6_\u1780\u1789\u17D2\u1789\u17B6_\u178F\u17BB\u179B\u17B6_\u179C\u17B7\u1785\u17D2\u1786\u17B7\u1780\u17B6_\u1792\u17D2\u1793\u17BC".split("_"),weekdaysMin:"\u17A2\u17B6_\u1785_\u17A2_\u1796_\u1796\u17D2\u179A_\u179F\u17BB_\u179F".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},relativeTime:{future:"%s\u1791\u17C0\u178F",past:"%s\u1798\u17BB\u1793",s:"\u1794\u17C9\u17BB\u1793\u17D2\u1798\u17B6\u1793\u179C\u17B7\u1793\u17B6\u1791\u17B8",m:"\u1798\u17BD\u1799\u1793\u17B6\u1791\u17B8",mm:"%d \u1793\u17B6\u1791\u17B8",h:"\u1798\u17BD\u1799\u1798\u17C9\u17C4\u1784",hh:"%d \u1798\u17C9\u17C4\u1784",d:"\u1798\u17BD\u1799\u1790\u17D2\u1784\u17C3",dd:"%d \u1790\u17D2\u1784\u17C3",M:"\u1798\u17BD\u1799\u1781\u17C2",MM:"%d \u1781\u17C2",y:"\u1798\u17BD\u1799\u1786\u17D2\u1793\u17B6\u17C6",yy:"%d \u1786\u17D2\u1793\u17B6\u17C6"}};return s.default.locale(i,null,!0),i})});var ti=b((wt,$t)=>{(function(n,t){typeof wt=="object"&&typeof $t<"u"?$t.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_lt=t(n.dayjs)})(wt,function(n){"use strict";function t(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var s=t(n),i="sausio_vasario_kovo_baland\u017Eio_gegu\u017E\u0117s_bir\u017Eelio_liepos_rugpj\u016B\u010Dio_rugs\u0117jo_spalio_lapkri\u010Dio_gruod\u017Eio".split("_"),e="sausis_vasaris_kovas_balandis_gegu\u017E\u0117_bir\u017Eelis_liepa_rugpj\u016Btis_rugs\u0117jis_spalis_lapkritis_gruodis".split("_"),r=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/,a=function(o,d){return r.test(d)?i[o.month()]:e[o.month()]};a.s=e,a.f=i;var u={name:"lt",weekdays:"sekmadienis_pirmadienis_antradienis_tre\u010Diadienis_ketvirtadienis_penktadienis_\u0161e\u0161tadienis".split("_"),weekdaysShort:"sek_pir_ant_tre_ket_pen_\u0161e\u0161".split("_"),weekdaysMin:"s_p_a_t_k_pn_\u0161".split("_"),months:a,monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),ordinal:function(o){return o+"."},weekStart:1,relativeTime:{future:"u\u017E %s",past:"prie\u0161 %s",s:"kelias sekundes",m:"minut\u0119",mm:"%d minutes",h:"valand\u0105",hh:"%d valandas",d:"dien\u0105",dd:"%d dienas",M:"m\u0117nes\u012F",MM:"%d m\u0117nesius",y:"metus",yy:"%d metus"},format:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"}};return s.default.locale(u,null,!0),u})});var ni=b((Ct,Ot)=>{(function(n,t){typeof Ct=="object"&&typeof Ot<"u"?Ot.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_lv=t(n.dayjs)})(Ct,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"lv",weekdays:"sv\u0113tdiena_pirmdiena_otrdiena_tre\u0161diena_ceturtdiena_piektdiena_sestdiena".split("_"),months:"janv\u0101ris_febru\u0101ris_marts_apr\u012Blis_maijs_j\u016Bnijs_j\u016Blijs_augusts_septembris_oktobris_novembris_decembris".split("_"),weekStart:1,weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),monthsShort:"jan_feb_mar_apr_mai_j\u016Bn_j\u016Bl_aug_sep_okt_nov_dec".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},relativeTime:{future:"p\u0113c %s",past:"pirms %s",s:"da\u017E\u0101m sekund\u0113m",m:"min\u016Btes",mm:"%d min\u016Bt\u0113m",h:"stundas",hh:"%d stund\u0101m",d:"dienas",dd:"%d dien\u0101m",M:"m\u0113ne\u0161a",MM:"%d m\u0113ne\u0161iem",y:"gada",yy:"%d gadiem"}};return s.default.locale(i,null,!0),i})});var ii=b((zt,At)=>{(function(n,t){typeof zt=="object"&&typeof At<"u"?At.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_ms=t(n.dayjs)})(zt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"ms",weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekStart:1,formats:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH.mm",LLLL:"dddd, D MMMM YYYY HH.mm"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},ordinal:function(e){return e+"."}};return s.default.locale(i,null,!0),i})});var si=b((It,qt)=>{(function(n,t){typeof It=="object"&&typeof qt<"u"?qt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_my=t(n.dayjs)})(It,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"my",weekdays:"\u1010\u1014\u1004\u103A\u1039\u1002\u1014\u103D\u1031_\u1010\u1014\u1004\u103A\u1039\u101C\u102C_\u1021\u1004\u103A\u1039\u1002\u102B_\u1017\u102F\u1012\u1039\u1013\u101F\u1030\u1038_\u1000\u103C\u102C\u101E\u1015\u1010\u1031\u1038_\u101E\u1031\u102C\u1000\u103C\u102C_\u1005\u1014\u1031".split("_"),months:"\u1007\u1014\u103A\u1014\u101D\u102B\u101B\u102E_\u1016\u1031\u1016\u1031\u102C\u103A\u101D\u102B\u101B\u102E_\u1019\u1010\u103A_\u1027\u1015\u103C\u102E_\u1019\u1031_\u1007\u103D\u1014\u103A_\u1007\u1030\u101C\u102D\u102F\u1004\u103A_\u101E\u103C\u1002\u102F\u1010\u103A_\u1005\u1000\u103A\u1010\u1004\u103A\u1018\u102C_\u1021\u1031\u102C\u1000\u103A\u1010\u102D\u102F\u1018\u102C_\u1014\u102D\u102F\u101D\u1004\u103A\u1018\u102C_\u1012\u102E\u1007\u1004\u103A\u1018\u102C".split("_"),weekStart:1,weekdaysShort:"\u1014\u103D\u1031_\u101C\u102C_\u1002\u102B_\u101F\u1030\u1038_\u1000\u103C\u102C_\u101E\u1031\u102C_\u1014\u1031".split("_"),monthsShort:"\u1007\u1014\u103A_\u1016\u1031_\u1019\u1010\u103A_\u1015\u103C\u102E_\u1019\u1031_\u1007\u103D\u1014\u103A_\u101C\u102D\u102F\u1004\u103A_\u101E\u103C_\u1005\u1000\u103A_\u1021\u1031\u102C\u1000\u103A_\u1014\u102D\u102F_\u1012\u102E".split("_"),weekdaysMin:"\u1014\u103D\u1031_\u101C\u102C_\u1002\u102B_\u101F\u1030\u1038_\u1000\u103C\u102C_\u101E\u1031\u102C_\u1014\u1031".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"\u101C\u102C\u1019\u100A\u103A\u1037 %s \u1019\u103E\u102C",past:"\u101C\u103D\u1014\u103A\u1001\u1032\u1037\u101E\u1031\u102C %s \u1000",s:"\u1005\u1000\u1039\u1000\u1014\u103A.\u1021\u1014\u100A\u103A\u1038\u1004\u101A\u103A",m:"\u1010\u1005\u103A\u1019\u102D\u1014\u1005\u103A",mm:"%d \u1019\u102D\u1014\u1005\u103A",h:"\u1010\u1005\u103A\u1014\u102C\u101B\u102E",hh:"%d \u1014\u102C\u101B\u102E",d:"\u1010\u1005\u103A\u101B\u1000\u103A",dd:"%d \u101B\u1000\u103A",M:"\u1010\u1005\u103A\u101C",MM:"%d \u101C",y:"\u1010\u1005\u103A\u1014\u103E\u1005\u103A",yy:"%d \u1014\u103E\u1005\u103A"}};return s.default.locale(i,null,!0),i})});var ri=b((xt,Nt)=>{(function(n,t){typeof xt=="object"&&typeof Nt<"u"?Nt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_nl=t(n.dayjs)})(xt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"nl",weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),ordinal:function(e){return"["+e+(e===1||e===8||e>=20?"ste":"de")+"]"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"een minuut",mm:"%d minuten",h:"een uur",hh:"%d uur",d:"een dag",dd:"%d dagen",M:"een maand",MM:"%d maanden",y:"een jaar",yy:"%d jaar"}};return s.default.locale(i,null,!0),i})});var ai=b((Et,Ft)=>{(function(n,t){typeof Et=="object"&&typeof Ft<"u"?Ft.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_nb=t(n.dayjs)})(Et,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"nb",weekdays:"s\xF8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xF8rdag".split("_"),weekdaysShort:"s\xF8._ma._ti._on._to._fr._l\xF8.".split("_"),weekdaysMin:"s\xF8_ma_ti_on_to_fr_l\xF8".split("_"),months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"),ordinal:function(e){return e+"."},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en m\xE5ned",MM:"%d m\xE5neder",y:"ett \xE5r",yy:"%d \xE5r"}};return s.default.locale(i,null,!0),i})});var ui=b((Jt,Wt)=>{(function(n,t){typeof Jt=="object"&&typeof Wt<"u"?Wt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_pl=t(n.dayjs)})(Jt,function(n){"use strict";function t(_){return _&&typeof _=="object"&&"default"in _?_:{default:_}}var s=t(n);function i(_){return _%10<5&&_%10>1&&~~(_/10)%10!=1}function e(_,y,l){var f=_+" ";switch(l){case"m":return y?"minuta":"minut\u0119";case"mm":return f+(i(_)?"minuty":"minut");case"h":return y?"godzina":"godzin\u0119";case"hh":return f+(i(_)?"godziny":"godzin");case"MM":return f+(i(_)?"miesi\u0105ce":"miesi\u0119cy");case"yy":return f+(i(_)?"lata":"lat")}}var r="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrze\u015Bnia_pa\u017Adziernika_listopada_grudnia".split("_"),a="stycze\u0144_luty_marzec_kwiecie\u0144_maj_czerwiec_lipiec_sierpie\u0144_wrzesie\u0144_pa\u017Adziernik_listopad_grudzie\u0144".split("_"),u=/D MMMM/,o=function(_,y){return u.test(y)?r[_.month()]:a[_.month()]};o.s=a,o.f=r;var d={name:"pl",weekdays:"niedziela_poniedzia\u0142ek_wtorek_\u015Broda_czwartek_pi\u0105tek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_\u015Br_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_\u015Ar_Cz_Pt_So".split("_"),months:o,monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_pa\u017A_lis_gru".split("_"),ordinal:function(_){return _+"."},weekStart:1,yearStart:4,relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:e,mm:e,h:e,hh:e,d:"1 dzie\u0144",dd:"%d dni",M:"miesi\u0105c",MM:e,y:"rok",yy:e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"}};return s.default.locale(d,null,!0),d})});var oi=b((Ut,Pt)=>{(function(n,t){typeof Ut=="object"&&typeof Pt<"u"?Pt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_pt_br=t(n.dayjs)})(Ut,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"pt-br",weekdays:"domingo_segunda-feira_ter\xE7a-feira_quarta-feira_quinta-feira_sexta-feira_s\xE1bado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_s\xE1b".split("_"),weekdaysMin:"Do_2\xAA_3\xAA_4\xAA_5\xAA_6\xAA_S\xE1".split("_"),months:"janeiro_fevereiro_mar\xE7o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),ordinal:function(e){return e+"\xBA"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [\xE0s] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [\xE0s] HH:mm"},relativeTime:{future:"em %s",past:"h\xE1 %s",s:"poucos segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xEAs",MM:"%d meses",y:"um ano",yy:"%d anos"}};return s.default.locale(i,null,!0),i})});var di=b((Rt,Gt)=>{(function(n,t){typeof Rt=="object"&&typeof Gt<"u"?Gt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_pt=t(n.dayjs)})(Rt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"pt",weekdays:"domingo_segunda-feira_ter\xE7a-feira_quarta-feira_quinta-feira_sexta-feira_s\xE1bado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sab".split("_"),weekdaysMin:"Do_2\xAA_3\xAA_4\xAA_5\xAA_6\xAA_Sa".split("_"),months:"janeiro_fevereiro_mar\xE7o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),ordinal:function(e){return e+"\xBA"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [\xE0s] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [\xE0s] HH:mm"},relativeTime:{future:"em %s",past:"h\xE1 %s",s:"alguns segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xEAs",MM:"%d meses",y:"um ano",yy:"%d anos"}};return s.default.locale(i,null,!0),i})});var _i=b((Zt,Vt)=>{(function(n,t){typeof Zt=="object"&&typeof Vt<"u"?Vt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_ro=t(n.dayjs)})(Zt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"ro",weekdays:"Duminic\u0103_Luni_Mar\u021Bi_Miercuri_Joi_Vineri_S\xE2mb\u0103t\u0103".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_S\xE2m".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_S\xE2".split("_"),months:"Ianuarie_Februarie_Martie_Aprilie_Mai_Iunie_Iulie_August_Septembrie_Octombrie_Noiembrie_Decembrie".split("_"),monthsShort:"Ian._Febr._Mart._Apr._Mai_Iun._Iul._Aug._Sept._Oct._Nov._Dec.".split("_"),weekStart:1,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},relativeTime:{future:"peste %s",past:"acum %s",s:"c\xE2teva secunde",m:"un minut",mm:"%d minute",h:"o or\u0103",hh:"%d ore",d:"o zi",dd:"%d zile",M:"o lun\u0103",MM:"%d luni",y:"un an",yy:"%d ani"},ordinal:function(e){return e}};return s.default.locale(i,null,!0),i})});var fi=b((Kt,Qt)=>{(function(n,t){typeof Kt=="object"&&typeof Qt<"u"?Qt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_ru=t(n.dayjs)})(Kt,function(n){"use strict";function t(l){return l&&typeof l=="object"&&"default"in l?l:{default:l}}var s=t(n),i="\u044F\u043D\u0432\u0430\u0440\u044F_\u0444\u0435\u0432\u0440\u0430\u043B\u044F_\u043C\u0430\u0440\u0442\u0430_\u0430\u043F\u0440\u0435\u043B\u044F_\u043C\u0430\u044F_\u0438\u044E\u043D\u044F_\u0438\u044E\u043B\u044F_\u0430\u0432\u0433\u0443\u0441\u0442\u0430_\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044F_\u043E\u043A\u0442\u044F\u0431\u0440\u044F_\u043D\u043E\u044F\u0431\u0440\u044F_\u0434\u0435\u043A\u0430\u0431\u0440\u044F".split("_"),e="\u044F\u043D\u0432\u0430\u0440\u044C_\u0444\u0435\u0432\u0440\u0430\u043B\u044C_\u043C\u0430\u0440\u0442_\u0430\u043F\u0440\u0435\u043B\u044C_\u043C\u0430\u0439_\u0438\u044E\u043D\u044C_\u0438\u044E\u043B\u044C_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044C_\u043E\u043A\u0442\u044F\u0431\u0440\u044C_\u043D\u043E\u044F\u0431\u0440\u044C_\u0434\u0435\u043A\u0430\u0431\u0440\u044C".split("_"),r="\u044F\u043D\u0432._\u0444\u0435\u0432\u0440._\u043C\u0430\u0440._\u0430\u043F\u0440._\u043C\u0430\u044F_\u0438\u044E\u043D\u044F_\u0438\u044E\u043B\u044F_\u0430\u0432\u0433._\u0441\u0435\u043D\u0442._\u043E\u043A\u0442._\u043D\u043E\u044F\u0431._\u0434\u0435\u043A.".split("_"),a="\u044F\u043D\u0432._\u0444\u0435\u0432\u0440._\u043C\u0430\u0440\u0442_\u0430\u043F\u0440._\u043C\u0430\u0439_\u0438\u044E\u043D\u044C_\u0438\u044E\u043B\u044C_\u0430\u0432\u0433._\u0441\u0435\u043D\u0442._\u043E\u043A\u0442._\u043D\u043E\u044F\u0431._\u0434\u0435\u043A.".split("_"),u=/D[oD]?(\[[^[\]]*\]|\s)+MMMM?/;function o(l,f,m){var Y,L;return m==="m"?f?"\u043C\u0438\u043D\u0443\u0442\u0430":"\u043C\u0438\u043D\u0443\u0442\u0443":l+" "+(Y=+l,L={mm:f?"\u043C\u0438\u043D\u0443\u0442\u0430_\u043C\u0438\u043D\u0443\u0442\u044B_\u043C\u0438\u043D\u0443\u0442":"\u043C\u0438\u043D\u0443\u0442\u0443_\u043C\u0438\u043D\u0443\u0442\u044B_\u043C\u0438\u043D\u0443\u0442",hh:"\u0447\u0430\u0441_\u0447\u0430\u0441\u0430_\u0447\u0430\u0441\u043E\u0432",dd:"\u0434\u0435\u043D\u044C_\u0434\u043D\u044F_\u0434\u043D\u0435\u0439",MM:"\u043C\u0435\u0441\u044F\u0446_\u043C\u0435\u0441\u044F\u0446\u0430_\u043C\u0435\u0441\u044F\u0446\u0435\u0432",yy:"\u0433\u043E\u0434_\u0433\u043E\u0434\u0430_\u043B\u0435\u0442"}[m].split("_"),Y%10==1&&Y%100!=11?L[0]:Y%10>=2&&Y%10<=4&&(Y%100<10||Y%100>=20)?L[1]:L[2])}var d=function(l,f){return u.test(f)?i[l.month()]:e[l.month()]};d.s=e,d.f=i;var _=function(l,f){return u.test(f)?r[l.month()]:a[l.month()]};_.s=a,_.f=r;var y={name:"ru",weekdays:"\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435_\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A_\u0432\u0442\u043E\u0440\u043D\u0438\u043A_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043F\u044F\u0442\u043D\u0438\u0446\u0430_\u0441\u0443\u0431\u0431\u043E\u0442\u0430".split("_"),weekdaysShort:"\u0432\u0441\u043A_\u043F\u043D\u0434_\u0432\u0442\u0440_\u0441\u0440\u0434_\u0447\u0442\u0432_\u043F\u0442\u043D_\u0441\u0431\u0442".split("_"),weekdaysMin:"\u0432\u0441_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),months:d,monthsShort:_,weekStart:1,yearStart:4,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., H:mm",LLLL:"dddd, D MMMM YYYY \u0433., H:mm"},relativeTime:{future:"\u0447\u0435\u0440\u0435\u0437 %s",past:"%s \u043D\u0430\u0437\u0430\u0434",s:"\u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0441\u0435\u043A\u0443\u043D\u0434",m:o,mm:o,h:"\u0447\u0430\u0441",hh:o,d:"\u0434\u0435\u043D\u044C",dd:o,M:"\u043C\u0435\u0441\u044F\u0446",MM:o,y:"\u0433\u043E\u0434",yy:o},ordinal:function(l){return l},meridiem:function(l){return l<4?"\u043D\u043E\u0447\u0438":l<12?"\u0443\u0442\u0440\u0430":l<17?"\u0434\u043D\u044F":"\u0432\u0435\u0447\u0435\u0440\u0430"}};return s.default.locale(y,null,!0),y})});var li=b((Xt,Bt)=>{(function(n,t){typeof Xt=="object"&&typeof Bt<"u"?Bt.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_sv=t(n.dayjs)})(Xt,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"sv",weekdays:"s\xF6ndag_m\xE5ndag_tisdag_onsdag_torsdag_fredag_l\xF6rdag".split("_"),weekdaysShort:"s\xF6n_m\xE5n_tis_ons_tor_fre_l\xF6r".split("_"),weekdaysMin:"s\xF6_m\xE5_ti_on_to_fr_l\xF6".split("_"),months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekStart:1,yearStart:4,ordinal:function(e){var r=e%10;return"["+e+(r===1||r===2?"a":"e")+"]"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},relativeTime:{future:"om %s",past:"f\xF6r %s sedan",s:"n\xE5gra sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en m\xE5nad",MM:"%d m\xE5nader",y:"ett \xE5r",yy:"%d \xE5r"}};return s.default.locale(i,null,!0),i})});var mi=b((en,tn)=>{(function(n,t){typeof en=="object"&&typeof tn<"u"?tn.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_th=t(n.dayjs)})(en,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"th",weekdays:"\u0E2D\u0E32\u0E17\u0E34\u0E15\u0E22\u0E4C_\u0E08\u0E31\u0E19\u0E17\u0E23\u0E4C_\u0E2D\u0E31\u0E07\u0E04\u0E32\u0E23_\u0E1E\u0E38\u0E18_\u0E1E\u0E24\u0E2B\u0E31\u0E2A\u0E1A\u0E14\u0E35_\u0E28\u0E38\u0E01\u0E23\u0E4C_\u0E40\u0E2A\u0E32\u0E23\u0E4C".split("_"),weekdaysShort:"\u0E2D\u0E32\u0E17\u0E34\u0E15\u0E22\u0E4C_\u0E08\u0E31\u0E19\u0E17\u0E23\u0E4C_\u0E2D\u0E31\u0E07\u0E04\u0E32\u0E23_\u0E1E\u0E38\u0E18_\u0E1E\u0E24\u0E2B\u0E31\u0E2A_\u0E28\u0E38\u0E01\u0E23\u0E4C_\u0E40\u0E2A\u0E32\u0E23\u0E4C".split("_"),weekdaysMin:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),months:"\u0E21\u0E01\u0E23\u0E32\u0E04\u0E21_\u0E01\u0E38\u0E21\u0E20\u0E32\u0E1E\u0E31\u0E19\u0E18\u0E4C_\u0E21\u0E35\u0E19\u0E32\u0E04\u0E21_\u0E40\u0E21\u0E29\u0E32\u0E22\u0E19_\u0E1E\u0E24\u0E29\u0E20\u0E32\u0E04\u0E21_\u0E21\u0E34\u0E16\u0E38\u0E19\u0E32\u0E22\u0E19_\u0E01\u0E23\u0E01\u0E0E\u0E32\u0E04\u0E21_\u0E2A\u0E34\u0E07\u0E2B\u0E32\u0E04\u0E21_\u0E01\u0E31\u0E19\u0E22\u0E32\u0E22\u0E19_\u0E15\u0E38\u0E25\u0E32\u0E04\u0E21_\u0E1E\u0E24\u0E28\u0E08\u0E34\u0E01\u0E32\u0E22\u0E19_\u0E18\u0E31\u0E19\u0E27\u0E32\u0E04\u0E21".split("_"),monthsShort:"\u0E21.\u0E04._\u0E01.\u0E1E._\u0E21\u0E35.\u0E04._\u0E40\u0E21.\u0E22._\u0E1E.\u0E04._\u0E21\u0E34.\u0E22._\u0E01.\u0E04._\u0E2A.\u0E04._\u0E01.\u0E22._\u0E15.\u0E04._\u0E1E.\u0E22._\u0E18.\u0E04.".split("_"),formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm",LLLL:"\u0E27\u0E31\u0E19dddd\u0E17\u0E35\u0E48 D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm"},relativeTime:{future:"\u0E2D\u0E35\u0E01 %s",past:"%s\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27",s:"\u0E44\u0E21\u0E48\u0E01\u0E35\u0E48\u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",m:"1 \u0E19\u0E32\u0E17\u0E35",mm:"%d \u0E19\u0E32\u0E17\u0E35",h:"1 \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",hh:"%d \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",d:"1 \u0E27\u0E31\u0E19",dd:"%d \u0E27\u0E31\u0E19",M:"1 \u0E40\u0E14\u0E37\u0E2D\u0E19",MM:"%d \u0E40\u0E14\u0E37\u0E2D\u0E19",y:"1 \u0E1B\u0E35",yy:"%d \u0E1B\u0E35"},ordinal:function(e){return e+"."}};return s.default.locale(i,null,!0),i})});var ci=b((nn,sn)=>{(function(n,t){typeof nn=="object"&&typeof sn<"u"?sn.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_tr=t(n.dayjs)})(nn,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"tr",weekdays:"Pazar_Pazartesi_Sal\u0131_\xC7ar\u015Famba_Per\u015Fembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_\xC7ar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_\xC7a_Pe_Cu_Ct".split("_"),months:"Ocak_\u015Eubat_Mart_Nisan_May\u0131s_Haziran_Temmuz_A\u011Fustos_Eyl\xFCl_Ekim_Kas\u0131m_Aral\u0131k".split("_"),monthsShort:"Oca_\u015Eub_Mar_Nis_May_Haz_Tem_A\u011Fu_Eyl_Eki_Kas_Ara".split("_"),weekStart:1,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},relativeTime:{future:"%s sonra",past:"%s \xF6nce",s:"birka\xE7 saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir g\xFCn",dd:"%d g\xFCn",M:"bir ay",MM:"%d ay",y:"bir y\u0131l",yy:"%d y\u0131l"},ordinal:function(e){return e+"."}};return s.default.locale(i,null,!0),i})});var hi=b((rn,an)=>{(function(n,t){typeof rn=="object"&&typeof an<"u"?an.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_uk=t(n.dayjs)})(rn,function(n){"use strict";function t(d){return d&&typeof d=="object"&&"default"in d?d:{default:d}}var s=t(n),i="\u0441\u0456\u0447\u043D\u044F_\u043B\u044E\u0442\u043E\u0433\u043E_\u0431\u0435\u0440\u0435\u0437\u043D\u044F_\u043A\u0432\u0456\u0442\u043D\u044F_\u0442\u0440\u0430\u0432\u043D\u044F_\u0447\u0435\u0440\u0432\u043D\u044F_\u043B\u0438\u043F\u043D\u044F_\u0441\u0435\u0440\u043F\u043D\u044F_\u0432\u0435\u0440\u0435\u0441\u043D\u044F_\u0436\u043E\u0432\u0442\u043D\u044F_\u043B\u0438\u0441\u0442\u043E\u043F\u0430\u0434\u0430_\u0433\u0440\u0443\u0434\u043D\u044F".split("_"),e="\u0441\u0456\u0447\u0435\u043D\u044C_\u043B\u044E\u0442\u0438\u0439_\u0431\u0435\u0440\u0435\u0437\u0435\u043D\u044C_\u043A\u0432\u0456\u0442\u0435\u043D\u044C_\u0442\u0440\u0430\u0432\u0435\u043D\u044C_\u0447\u0435\u0440\u0432\u0435\u043D\u044C_\u043B\u0438\u043F\u0435\u043D\u044C_\u0441\u0435\u0440\u043F\u0435\u043D\u044C_\u0432\u0435\u0440\u0435\u0441\u0435\u043D\u044C_\u0436\u043E\u0432\u0442\u0435\u043D\u044C_\u043B\u0438\u0441\u0442\u043E\u043F\u0430\u0434_\u0433\u0440\u0443\u0434\u0435\u043D\u044C".split("_"),r=/D[oD]?(\[[^[\]]*\]|\s)+MMMM?/;function a(d,_,y){var l,f;return y==="m"?_?"\u0445\u0432\u0438\u043B\u0438\u043D\u0430":"\u0445\u0432\u0438\u043B\u0438\u043D\u0443":y==="h"?_?"\u0433\u043E\u0434\u0438\u043D\u0430":"\u0433\u043E\u0434\u0438\u043D\u0443":d+" "+(l=+d,f={ss:_?"\u0441\u0435\u043A\u0443\u043D\u0434\u0430_\u0441\u0435\u043A\u0443\u043D\u0434\u0438_\u0441\u0435\u043A\u0443\u043D\u0434":"\u0441\u0435\u043A\u0443\u043D\u0434\u0443_\u0441\u0435\u043A\u0443\u043D\u0434\u0438_\u0441\u0435\u043A\u0443\u043D\u0434",mm:_?"\u0445\u0432\u0438\u043B\u0438\u043D\u0430_\u0445\u0432\u0438\u043B\u0438\u043D\u0438_\u0445\u0432\u0438\u043B\u0438\u043D":"\u0445\u0432\u0438\u043B\u0438\u043D\u0443_\u0445\u0432\u0438\u043B\u0438\u043D\u0438_\u0445\u0432\u0438\u043B\u0438\u043D",hh:_?"\u0433\u043E\u0434\u0438\u043D\u0430_\u0433\u043E\u0434\u0438\u043D\u0438_\u0433\u043E\u0434\u0438\u043D":"\u0433\u043E\u0434\u0438\u043D\u0443_\u0433\u043E\u0434\u0438\u043D\u0438_\u0433\u043E\u0434\u0438\u043D",dd:"\u0434\u0435\u043D\u044C_\u0434\u043D\u0456_\u0434\u043D\u0456\u0432",MM:"\u043C\u0456\u0441\u044F\u0446\u044C_\u043C\u0456\u0441\u044F\u0446\u0456_\u043C\u0456\u0441\u044F\u0446\u0456\u0432",yy:"\u0440\u0456\u043A_\u0440\u043E\u043A\u0438_\u0440\u043E\u043A\u0456\u0432"}[y].split("_"),l%10==1&&l%100!=11?f[0]:l%10>=2&&l%10<=4&&(l%100<10||l%100>=20)?f[1]:f[2])}var u=function(d,_){return r.test(_)?i[d.month()]:e[d.month()]};u.s=e,u.f=i;var o={name:"uk",weekdays:"\u043D\u0435\u0434\u0456\u043B\u044F_\u043F\u043E\u043D\u0435\u0434\u0456\u043B\u043E\u043A_\u0432\u0456\u0432\u0442\u043E\u0440\u043E\u043A_\u0441\u0435\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440_\u043F\u2019\u044F\u0442\u043D\u0438\u0446\u044F_\u0441\u0443\u0431\u043E\u0442\u0430".split("_"),weekdaysShort:"\u043D\u0434\u043B_\u043F\u043D\u0434_\u0432\u0442\u0440_\u0441\u0440\u0434_\u0447\u0442\u0432_\u043F\u0442\u043D_\u0441\u0431\u0442".split("_"),weekdaysMin:"\u043D\u0434_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),months:u,monthsShort:"\u0441\u0456\u0447_\u043B\u044E\u0442_\u0431\u0435\u0440_\u043A\u0432\u0456\u0442_\u0442\u0440\u0430\u0432_\u0447\u0435\u0440\u0432_\u043B\u0438\u043F_\u0441\u0435\u0440\u043F_\u0432\u0435\u0440_\u0436\u043E\u0432\u0442_\u043B\u0438\u0441\u0442_\u0433\u0440\u0443\u0434".split("_"),weekStart:1,relativeTime:{future:"\u0437\u0430 %s",past:"%s \u0442\u043E\u043C\u0443",s:"\u0434\u0435\u043A\u0456\u043B\u044C\u043A\u0430 \u0441\u0435\u043A\u0443\u043D\u0434",m:a,mm:a,h:a,hh:a,d:"\u0434\u0435\u043D\u044C",dd:a,M:"\u043C\u0456\u0441\u044F\u0446\u044C",MM:a,y:"\u0440\u0456\u043A",yy:a},ordinal:function(d){return d},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0440.",LLL:"D MMMM YYYY \u0440., HH:mm",LLLL:"dddd, D MMMM YYYY \u0440., HH:mm"}};return s.default.locale(o,null,!0),o})});var Mi=b((un,on)=>{(function(n,t){typeof un=="object"&&typeof on<"u"?on.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_vi=t(n.dayjs)})(un,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"vi",weekdays:"ch\u1EE7 nh\u1EADt_th\u1EE9 hai_th\u1EE9 ba_th\u1EE9 t\u01B0_th\u1EE9 n\u0103m_th\u1EE9 s\xE1u_th\u1EE9 b\u1EA3y".split("_"),months:"th\xE1ng 1_th\xE1ng 2_th\xE1ng 3_th\xE1ng 4_th\xE1ng 5_th\xE1ng 6_th\xE1ng 7_th\xE1ng 8_th\xE1ng 9_th\xE1ng 10_th\xE1ng 11_th\xE1ng 12".split("_"),weekStart:1,weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [n\u0103m] YYYY",LLL:"D MMMM [n\u0103m] YYYY HH:mm",LLLL:"dddd, D MMMM [n\u0103m] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},relativeTime:{future:"%s t\u1EDBi",past:"%s tr\u01B0\u1EDBc",s:"v\xE0i gi\xE2y",m:"m\u1ED9t ph\xFAt",mm:"%d ph\xFAt",h:"m\u1ED9t gi\u1EDD",hh:"%d gi\u1EDD",d:"m\u1ED9t ng\xE0y",dd:"%d ng\xE0y",M:"m\u1ED9t th\xE1ng",MM:"%d th\xE1ng",y:"m\u1ED9t n\u0103m",yy:"%d n\u0103m"}};return s.default.locale(i,null,!0),i})});var yi=b((dn,_n)=>{(function(n,t){typeof dn=="object"&&typeof _n<"u"?_n.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_zh_cn=t(n.dayjs)})(dn,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"zh-cn",weekdays:"\u661F\u671F\u65E5_\u661F\u671F\u4E00_\u661F\u671F\u4E8C_\u661F\u671F\u4E09_\u661F\u671F\u56DB_\u661F\u671F\u4E94_\u661F\u671F\u516D".split("_"),weekdaysShort:"\u5468\u65E5_\u5468\u4E00_\u5468\u4E8C_\u5468\u4E09_\u5468\u56DB_\u5468\u4E94_\u5468\u516D".split("_"),weekdaysMin:"\u65E5_\u4E00_\u4E8C_\u4E09_\u56DB_\u4E94_\u516D".split("_"),months:"\u4E00\u6708_\u4E8C\u6708_\u4E09\u6708_\u56DB\u6708_\u4E94\u6708_\u516D\u6708_\u4E03\u6708_\u516B\u6708_\u4E5D\u6708_\u5341\u6708_\u5341\u4E00\u6708_\u5341\u4E8C\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),ordinal:function(e,r){return r==="W"?e+"\u5468":e+"\u65E5"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5E74M\u6708D\u65E5",LLL:"YYYY\u5E74M\u6708D\u65E5Ah\u70B9mm\u5206",LLLL:"YYYY\u5E74M\u6708D\u65E5ddddAh\u70B9mm\u5206",l:"YYYY/M/D",ll:"YYYY\u5E74M\u6708D\u65E5",lll:"YYYY\u5E74M\u6708D\u65E5 HH:mm",llll:"YYYY\u5E74M\u6708D\u65E5dddd HH:mm"},relativeTime:{future:"%s\u5185",past:"%s\u524D",s:"\u51E0\u79D2",m:"1 \u5206\u949F",mm:"%d \u5206\u949F",h:"1 \u5C0F\u65F6",hh:"%d \u5C0F\u65F6",d:"1 \u5929",dd:"%d \u5929",M:"1 \u4E2A\u6708",MM:"%d \u4E2A\u6708",y:"1 \u5E74",yy:"%d \u5E74"},meridiem:function(e,r){var a=100*e+r;return a<600?"\u51CC\u6668":a<900?"\u65E9\u4E0A":a<1100?"\u4E0A\u5348":a<1300?"\u4E2D\u5348":a<1800?"\u4E0B\u5348":"\u665A\u4E0A"}};return s.default.locale(i,null,!0),i})});var Yi=b((fn,ln)=>{(function(n,t){typeof fn=="object"&&typeof ln<"u"?ln.exports=t(H()):typeof define=="function"&&define.amd?define(["dayjs"],t):(n=typeof globalThis<"u"?globalThis:n||self).dayjs_locale_zh_tw=t(n.dayjs)})(fn,function(n){"use strict";function t(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var s=t(n),i={name:"zh-tw",weekdays:"\u661F\u671F\u65E5_\u661F\u671F\u4E00_\u661F\u671F\u4E8C_\u661F\u671F\u4E09_\u661F\u671F\u56DB_\u661F\u671F\u4E94_\u661F\u671F\u516D".split("_"),weekdaysShort:"\u9031\u65E5_\u9031\u4E00_\u9031\u4E8C_\u9031\u4E09_\u9031\u56DB_\u9031\u4E94_\u9031\u516D".split("_"),weekdaysMin:"\u65E5_\u4E00_\u4E8C_\u4E09_\u56DB_\u4E94_\u516D".split("_"),months:"\u4E00\u6708_\u4E8C\u6708_\u4E09\u6708_\u56DB\u6708_\u4E94\u6708_\u516D\u6708_\u4E03\u6708_\u516B\u6708_\u4E5D\u6708_\u5341\u6708_\u5341\u4E00\u6708_\u5341\u4E8C\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),ordinal:function(e,r){return r==="W"?e+"\u9031":e+"\u65E5"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5E74M\u6708D\u65E5",LLL:"YYYY\u5E74M\u6708D\u65E5 HH:mm",LLLL:"YYYY\u5E74M\u6708D\u65E5dddd HH:mm",l:"YYYY/M/D",ll:"YYYY\u5E74M\u6708D\u65E5",lll:"YYYY\u5E74M\u6708D\u65E5 HH:mm",llll:"YYYY\u5E74M\u6708D\u65E5dddd HH:mm"},relativeTime:{future:"%s\u5167",past:"%s\u524D",s:"\u5E7E\u79D2",m:"1 \u5206\u9418",mm:"%d \u5206\u9418",h:"1 \u5C0F\u6642",hh:"%d \u5C0F\u6642",d:"1 \u5929",dd:"%d \u5929",M:"1 \u500B\u6708",MM:"%d \u500B\u6708",y:"1 \u5E74",yy:"%d \u5E74"},meridiem:function(e,r){var a=100*e+r;return a<600?"\u51CC\u6668":a<900?"\u65E9\u4E0A":a<1100?"\u4E0A\u5348":a<1300?"\u4E2D\u5348":a<1800?"\u4E0B\u5348":"\u665A\u4E0A"}};return s.default.locale(i,null,!0),i})});var cn=60,hn=cn*60,Mn=hn*24,$i=Mn*7,ae=1e3,ce=cn*ae,ge=hn*ae,yn=Mn*ae,Yn=$i*ae,_e="millisecond",te="second",ne="minute",ie="hour",V="day",oe="week",R="month",he="quarter",K="year",se="date",pn="YYYY-MM-DDTHH:mm:ssZ",Se="Invalid Date",Dn=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,Ln=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g;var gn={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var s=["th","st","nd","rd"],i=t%100;return"["+t+(s[(i-20)%10]||s[i]||s[0])+"]"}};var be=function(t,s,i){var e=String(t);return!e||e.length>=s?t:""+Array(s+1-e.length).join(i)+t},Ci=function(t){var s=-t.utcOffset(),i=Math.abs(s),e=Math.floor(i/60),r=i%60;return(s<=0?"+":"-")+be(e,2,"0")+":"+be(r,2,"0")},Oi=function n(t,s){if(t.date()1)return n(a[0])}else{var u=t.name;ue[u]=t,e=u}return!i&&e&&(fe=e),e||!i&&fe},F=function(t,s){if(ke(t))return t.clone();var i=typeof s=="object"?s:{};return i.date=t,i.args=arguments,new ye(i)},qi=function(t,s){return F(t,{locale:s.$L,utc:s.$u,x:s.$x,$offset:s.$offset})},z=Sn;z.l=Me;z.i=ke;z.w=qi;var xi=function(t){var s=t.date,i=t.utc;if(s===null)return new Date(NaN);if(z.u(s))return new Date;if(s instanceof Date)return new Date(s);if(typeof s=="string"&&!/Z$/i.test(s)){var e=s.match(Dn);if(e){var r=e[2]-1||0,a=(e[7]||"0").substring(0,3);return i?new Date(Date.UTC(e[1],r,e[3]||1,e[4]||0,e[5]||0,e[6]||0,a)):new Date(e[1],r,e[3]||1,e[4]||0,e[5]||0,e[6]||0,a)}}return new Date(s)},ye=function(){function n(s){this.$L=Me(s.locale,null,!0),this.parse(s),this.$x=this.$x||s.x||{},this[bn]=!0}var t=n.prototype;return t.parse=function(i){this.$d=xi(i),this.init()},t.init=function(){var i=this.$d;this.$y=i.getFullYear(),this.$M=i.getMonth(),this.$D=i.getDate(),this.$W=i.getDay(),this.$H=i.getHours(),this.$m=i.getMinutes(),this.$s=i.getSeconds(),this.$ms=i.getMilliseconds()},t.$utils=function(){return z},t.isValid=function(){return this.$d.toString()!==Se},t.isSame=function(i,e){var r=F(i);return this.startOf(e)<=r&&r<=this.endOf(e)},t.isAfter=function(i,e){return F(i){this.focusedDate??(this.focusedDate=O().tz(a)),this.focusedMonth??(this.focusedMonth=this.focusedDate.month()),this.focusedYear??(this.focusedYear=this.focusedDate.year())});let u=this.getSelectedDate()??O().tz(a).hour(0).minute(0).second(0);(this.getMaxDate()!==null&&u.isAfter(this.getMaxDate())||this.getMinDate()!==null&&u.isBefore(this.getMinDate()))&&(u=null),this.hour=u?.hour()??0,this.minute=u?.minute()??0,this.second=u?.second()??0,this.setDisplayText(),this.setMonths(),this.setDayLabels(),s&&this.$nextTick(()=>this.togglePanelVisibility(this.$refs.button)),this.$watch("focusedMonth",()=>{this.focusedMonth=+this.focusedMonth,this.focusedDate.month()!==this.focusedMonth&&(this.focusedDate=this.focusedDate.month(this.focusedMonth))}),this.$watch("focusedYear",()=>{if(this.focusedYear?.length>4&&(this.focusedYear=this.focusedYear.substring(0,4)),!this.focusedYear||this.focusedYear?.length!==4)return;let o=+this.focusedYear;Number.isInteger(o)||(o=O().tz(a).year(),this.focusedYear=o),this.focusedDate.year()!==o&&(this.focusedDate=this.focusedDate.year(o))}),this.$watch("focusedDate",()=>{let o=this.focusedDate.month(),d=this.focusedDate.year();this.focusedMonth!==o&&(this.focusedMonth=o),this.focusedYear!==d&&(this.focusedYear=d),this.setupDaysGrid()}),this.$watch("hour",()=>{let o=+this.hour;if(Number.isInteger(o)?o>23?this.hour=0:o<0?this.hour=23:this.hour=o:this.hour=0,this.isClearingState)return;let d=this.getSelectedDate()??this.focusedDate;this.setState(d.hour(this.hour??0))}),this.$watch("minute",()=>{let o=+this.minute;if(Number.isInteger(o)?o>59?this.minute=0:o<0?this.minute=59:this.minute=o:this.minute=0,this.isClearingState)return;let d=this.getSelectedDate()??this.focusedDate;this.setState(d.minute(this.minute??0))}),this.$watch("second",()=>{let o=+this.second;if(Number.isInteger(o)?o>59?this.second=0:o<0?this.second=59:this.second=o:this.second=0,this.isClearingState)return;let d=this.getSelectedDate()??this.focusedDate;this.setState(d.second(this.second??0))}),this.$watch("state",()=>{if(this.state===void 0)return;let o=this.getSelectedDate();if(o===null){this.clearState();return}this.getMaxDate()!==null&&o?.isAfter(this.getMaxDate())&&(o=null),this.getMinDate()!==null&&o?.isBefore(this.getMinDate())&&(o=null);let d=o?.hour()??0;this.hour!==d&&(this.hour=d);let _=o?.minute()??0;this.minute!==_&&(this.minute=_);let y=o?.second()??0;this.second!==y&&(this.second=y),this.setDisplayText()})},clearState:function(){this.isClearingState=!0,this.setState(null),this.hour=0,this.minute=0,this.second=0,this.$nextTick(()=>this.isClearingState=!1)},dateIsDisabled:function(u){return!!(this.$refs?.disabledDates&&JSON.parse(this.$refs.disabledDates.value??[]).some(o=>(o=O(o),o.isValid()?o.isSame(u,"day"):!1))||this.getMaxDate()&&u.isAfter(this.getMaxDate(),"day")||this.getMinDate()&&u.isBefore(this.getMinDate(),"day"))},dayIsDisabled:function(u){return this.focusedDate??(this.focusedDate=O().tz(a)),this.dateIsDisabled(this.focusedDate.date(u))},dayIsSelected:function(u){let o=this.getSelectedDate();return o===null?!1:(this.focusedDate??(this.focusedDate=O().tz(a)),o.date()===u&&o.month()===this.focusedDate.month()&&o.year()===this.focusedDate.year())},dayIsToday:function(u){let o=O().tz(a);return this.focusedDate??(this.focusedDate=o),o.date()===u&&o.month()===this.focusedDate.month()&&o.year()===this.focusedDate.year()},focusPreviousDay:function(){this.focusedDate??(this.focusedDate=O().tz(a)),this.focusedDate=this.focusedDate.subtract(1,"day")},focusPreviousWeek:function(){this.focusedDate??(this.focusedDate=O().tz(a)),this.focusedDate=this.focusedDate.subtract(1,"week")},focusNextDay:function(){this.focusedDate??(this.focusedDate=O().tz(a)),this.focusedDate=this.focusedDate.add(1,"day")},focusNextWeek:function(){this.focusedDate??(this.focusedDate=O().tz(a)),this.focusedDate=this.focusedDate.add(1,"week")},getDayLabels:function(){let u=O.weekdaysShort();return t===0?u:[...u.slice(t),...u.slice(0,t)]},getMaxDate:function(){let u=O(this.$refs.maxDate?.value);return u.isValid()?u:null},getMinDate:function(){let u=O(this.$refs.minDate?.value);return u.isValid()?u:null},getSelectedDate:function(){if(this.state===void 0||this.state===null)return null;let u=O(this.state);return u.isValid()?u:null},togglePanelVisibility:function(){this.isOpen()||(this.focusedDate=this.getSelectedDate()??this.focusedDate??this.getMinDate()??O().tz(a),this.setupDaysGrid()),this.$refs.panel.toggle(this.$refs.button)},selectDate:function(u=null){u&&this.setFocusedDay(u),this.focusedDate??(this.focusedDate=O().tz(a)),this.setState(this.focusedDate),e&&this.togglePanelVisibility()},setDisplayText:function(){this.displayText=this.getSelectedDate()?this.getSelectedDate().format(n):""},setMonths:function(){this.months=O.months()},setDayLabels:function(){this.dayLabels=this.getDayLabels()},setupDaysGrid:function(){this.focusedDate??(this.focusedDate=O().tz(a)),this.emptyDaysInFocusedMonth=Array.from({length:this.focusedDate.date(8-t).day()},(u,o)=>o+1),this.daysInFocusedMonth=Array.from({length:this.focusedDate.daysInMonth()},(u,o)=>o+1)},setFocusedDay:function(u){this.focusedDate=(this.focusedDate??O().tz(a)).date(u)},setState:function(u){if(u===null){this.state=null,this.setDisplayText();return}this.dateIsDisabled(u)||(this.state=u.hour(this.hour??0).minute(this.minute??0).second(this.second??0).format("YYYY-MM-DD HH:mm:ss"),this.setDisplayText())},isOpen:function(){return this.$refs.panel?.style.display==="block"}}}var pi={ar:Cn(),bs:On(),ca:zn(),ckb:Pe(),cs:In(),cy:qn(),da:xn(),de:Nn(),el:En(),en:Fn(),es:Jn(),et:Wn(),fa:Un(),fi:Pn(),fr:Rn(),hi:Gn(),hu:Zn(),hy:Vn(),id:Kn(),it:Qn(),ja:Xn(),ka:Bn(),km:ei(),ku:Pe(),lt:ti(),lv:ni(),ms:ii(),my:si(),nl:ri(),no:ai(),pl:ui(),pt_BR:oi(),pt_PT:di(),ro:_i(),ru:fi(),sv:li(),th:mi(),tr:ci(),uk:hi(),vi:Mi(),zh_CN:yi(),zh_TW:Yi()};export{Ni as default};
diff --git a/public/js/filament/forms/components/file-upload.js b/public/js/filament/forms/components/file-upload.js
new file mode 100644
index 000000000..44d17905c
--- /dev/null
+++ b/public/js/filament/forms/components/file-upload.js
@@ -0,0 +1,123 @@
+var mr=Object.defineProperty;var ur=(e,t)=>{for(var i in t)mr(e,i,{get:t[i],enumerable:!0})};var la={};ur(la,{FileOrigin:()=>Ct,FileStatus:()=>Et,OptionTypes:()=>Ui,Status:()=>ll,create:()=>gt,destroy:()=>ft,find:()=>Hi,getOptions:()=>ji,parse:()=>Wi,registerPlugin:()=>ve,setOptions:()=>Ft,supported:()=>Gi});var gr=e=>e instanceof HTMLElement,fr=(e,t=[],i=[])=>{let a={...e},n=[],l=[],o=()=>({...a}),r=()=>{let g=[...n];return n.length=0,g},s=()=>{let g=[...l];l.length=0,g.forEach(({type:f,data:h})=>{p(f,h)})},p=(g,f,h)=>{if(h&&!document.hidden){l.push({type:g,data:f});return}u[g]&&u[g](f),n.push({type:g,data:f})},c=(g,...f)=>m[g]?m[g](...f):null,d={getState:o,processActionQueue:r,processDispatchQueue:s,dispatch:p,query:c},m={};t.forEach(g=>{m={...g(a),...m}});let u={};return i.forEach(g=>{u={...g(p,c,a),...u}}),d},hr=(e,t,i)=>{if(typeof i=="function"){e[t]=i;return}Object.defineProperty(e,t,{...i})},te=(e,t)=>{for(let i in e)e.hasOwnProperty(i)&&t(i,e[i])},We=e=>{let t={};return te(e,i=>{hr(t,i,e[i])}),t},se=(e,t,i=null)=>{if(i===null)return e.getAttribute(t)||e.hasAttribute(t);e.setAttribute(t,i)},br="http://www.w3.org/2000/svg",Er=["svg","path"],za=e=>Er.includes(e),li=(e,t,i={})=>{typeof t=="object"&&(i=t,t=null);let a=za(e)?document.createElementNS(br,e):document.createElement(e);return t&&(za(e)?se(a,"class",t):a.className=t),te(i,(n,l)=>{se(a,n,l)}),a},Tr=e=>(t,i)=>{typeof i<"u"&&e.children[i]?e.insertBefore(t,e.children[i]):e.appendChild(t)},Ir=(e,t)=>(i,a)=>(typeof a<"u"?t.splice(a,0,i):t.push(i),i),vr=(e,t)=>i=>(t.splice(t.indexOf(i),1),i.element.parentNode&&e.removeChild(i.element),i),xr=typeof window<"u"&&typeof window.document<"u",En=()=>xr,yr=En()?li("svg"):{},Rr="children"in yr?e=>e.children.length:e=>e.childNodes.length,Tn=(e,t,i,a)=>{let n=i[0]||e.left,l=i[1]||e.top,o=n+e.width,r=l+e.height*(a[1]||1),s={element:{...e},inner:{left:e.left,top:e.top,right:e.right,bottom:e.bottom},outer:{left:n,top:l,right:o,bottom:r}};return t.filter(p=>!p.isRectIgnored()).map(p=>p.rect).forEach(p=>{Oa(s.inner,{...p.inner}),Oa(s.outer,{...p.outer})}),Fa(s.inner),s.outer.bottom+=s.element.marginBottom,s.outer.right+=s.element.marginRight,Fa(s.outer),s},Oa=(e,t)=>{t.top+=e.top,t.right+=e.left,t.bottom+=e.top,t.left+=e.left,t.bottom>e.bottom&&(e.bottom=t.bottom),t.right>e.right&&(e.right=t.right)},Fa=e=>{e.width=e.right-e.left,e.height=e.bottom-e.top},$e=e=>typeof e=="number",Sr=(e,t,i,a=.001)=>Math.abs(e-t){let a=null,n=null,l=0,o=!1,p=We({interpolate:(c,d)=>{if(o)return;if(!($e(a)&&$e(n))){o=!0,l=0;return}let m=-(n-a)*e;l+=m/i,n+=l,l*=t,Sr(n,a,l)||d?(n=a,l=0,o=!0,p.onupdate(n),p.oncomplete(n)):p.onupdate(n)},target:{set:c=>{if($e(c)&&!$e(n)&&(n=c),a===null&&(a=c,n=c),a=c,n===a||typeof a>"u"){o=!0,l=0,p.onupdate(n),p.oncomplete(n);return}o=!1},get:()=>a},resting:{get:()=>o},onupdate:c=>{},oncomplete:c=>{}});return p};var wr=e=>e<.5?2*e*e:-1+(4-2*e)*e,Lr=({duration:e=500,easing:t=wr,delay:i=0}={})=>{let a=null,n,l,o=!0,r=!1,s=null,c=We({interpolate:(d,m)=>{o||s===null||(a===null&&(a=d),!(d-a=e||m?(n=1,l=r?0:1,c.onupdate(l*s),c.oncomplete(l*s),o=!0):(l=n/e,c.onupdate((n>=0?t(r?1-l:l):0)*s))))},target:{get:()=>r?0:s,set:d=>{if(s===null){s=d,c.onupdate(d),c.oncomplete(d);return}do},onupdate:d=>{},oncomplete:d=>{}});return c},Da={spring:_r,tween:Lr},Mr=(e,t,i)=>{let a=e[t]&&typeof e[t][i]=="object"?e[t][i]:e[t]||e,n=typeof a=="string"?a:a.type,l=typeof a=="object"?{...a}:{};return Da[n]?Da[n](l):null},Yi=(e,t,i,a=!1)=>{t=Array.isArray(t)?t:[t],t.forEach(n=>{e.forEach(l=>{let o=l,r=()=>i[l],s=p=>i[l]=p;typeof l=="object"&&(o=l.key,r=l.getter||r,s=l.setter||s),!(n[o]&&!a)&&(n[o]={get:r,set:s})})})},Ar=({mixinConfig:e,viewProps:t,viewInternalAPI:i,viewExternalAPI:a})=>{let n={...t},l=[];return te(e,(o,r)=>{let s=Mr(r);if(!s)return;s.onupdate=c=>{t[o]=c},s.target=n[o],Yi([{key:o,setter:c=>{s.target!==c&&(s.target=c)},getter:()=>t[o]}],[i,a],t,!0),l.push(s)}),{write:o=>{let r=document.hidden,s=!0;return l.forEach(p=>{p.resting||(s=!1),p.interpolate(o,r)}),s},destroy:()=>{}}},Pr=e=>(t,i)=>{e.addEventListener(t,i)},zr=e=>(t,i)=>{e.removeEventListener(t,i)},Or=({mixinConfig:e,viewProps:t,viewInternalAPI:i,viewExternalAPI:a,viewState:n,view:l})=>{let o=[],r=Pr(l.element),s=zr(l.element);return a.on=(p,c)=>{o.push({type:p,fn:c}),r(p,c)},a.off=(p,c)=>{o.splice(o.findIndex(d=>d.type===p&&d.fn===c),1),s(p,c)},{write:()=>!0,destroy:()=>{o.forEach(p=>{s(p.type,p.fn)})}}},Fr=({mixinConfig:e,viewProps:t,viewExternalAPI:i})=>{Yi(e,i,t)},ue=e=>e!=null,Dr={opacity:1,scaleX:1,scaleY:1,translateX:0,translateY:0,rotateX:0,rotateY:0,rotateZ:0,originX:0,originY:0},Cr=({mixinConfig:e,viewProps:t,viewInternalAPI:i,viewExternalAPI:a,view:n})=>{let l={...t},o={};Yi(e,[i,a],t);let r=()=>[t.translateX||0,t.translateY||0],s=()=>[t.scaleX||0,t.scaleY||0],p=()=>n.rect?Tn(n.rect,n.childViews,r(),s()):null;return i.rect={get:p},a.rect={get:p},e.forEach(c=>{t[c]=typeof l[c]>"u"?Dr[c]:l[c]}),{write:()=>{if(Br(o,t))return Nr(n.element,t),Object.assign(o,{...t}),!0},destroy:()=>{}}},Br=(e,t)=>{if(Object.keys(e).length!==Object.keys(t).length)return!0;for(let i in t)if(t[i]!==e[i])return!0;return!1},Nr=(e,{opacity:t,perspective:i,translateX:a,translateY:n,scaleX:l,scaleY:o,rotateX:r,rotateY:s,rotateZ:p,originX:c,originY:d,width:m,height:u})=>{let g="",f="";(ue(c)||ue(d))&&(f+=`transform-origin: ${c||0}px ${d||0}px;`),ue(i)&&(g+=`perspective(${i}px) `),(ue(a)||ue(n))&&(g+=`translate3d(${a||0}px, ${n||0}px, 0) `),(ue(l)||ue(o))&&(g+=`scale3d(${ue(l)?l:1}, ${ue(o)?o:1}, 1) `),ue(p)&&(g+=`rotateZ(${p}rad) `),ue(r)&&(g+=`rotateX(${r}rad) `),ue(s)&&(g+=`rotateY(${s}rad) `),g.length&&(f+=`transform:${g};`),ue(t)&&(f+=`opacity:${t};`,t===0&&(f+="visibility:hidden;"),t<1&&(f+="pointer-events:none;")),ue(u)&&(f+=`height:${u}px;`),ue(m)&&(f+=`width:${m}px;`);let h=e.elementCurrentStyle||"";(f.length!==h.length||f!==h)&&(e.style.cssText=f,e.elementCurrentStyle=f)},kr={styles:Cr,listeners:Or,animations:Ar,apis:Fr},Ca=(e={},t={},i={})=>(t.layoutCalculated||(e.paddingTop=parseInt(i.paddingTop,10)||0,e.marginTop=parseInt(i.marginTop,10)||0,e.marginRight=parseInt(i.marginRight,10)||0,e.marginBottom=parseInt(i.marginBottom,10)||0,e.marginLeft=parseInt(i.marginLeft,10)||0,t.layoutCalculated=!0),e.left=t.offsetLeft||0,e.top=t.offsetTop||0,e.width=t.offsetWidth||0,e.height=t.offsetHeight||0,e.right=e.left+e.width,e.bottom=e.top+e.height,e.scrollTop=t.scrollTop,e.hidden=t.offsetParent===null,e),ne=({tag:e="div",name:t=null,attributes:i={},read:a=()=>{},write:n=()=>{},create:l=()=>{},destroy:o=()=>{},filterFrameActionsForChild:r=(u,g)=>g,didCreateView:s=()=>{},didWriteView:p=()=>{},ignoreRect:c=!1,ignoreRectUpdate:d=!1,mixins:m=[]}={})=>(u,g={})=>{let f=li(e,`filepond--${t}`,i),h=window.getComputedStyle(f,null),I=Ca(),b=null,T=!1,v=[],y=[],E={},_={},x=[n],R=[a],z=[o],P=()=>f,A=()=>v.concat(),B=()=>E,w=k=>(H,Y)=>H(k,Y),O=()=>b||(b=Tn(I,v,[0,0],[1,1]),b),S=()=>h,L=()=>{b=null,v.forEach(Y=>Y._read()),!(d&&I.width&&I.height)&&Ca(I,f,h);let H={root:K,props:g,rect:I};R.forEach(Y=>Y(H))},D=(k,H,Y)=>{let oe=H.length===0;return x.forEach(ee=>{ee({props:g,root:K,actions:H,timestamp:k,shouldOptimize:Y})===!1&&(oe=!1)}),y.forEach(ee=>{ee.write(k)===!1&&(oe=!1)}),v.filter(ee=>!!ee.element.parentNode).forEach(ee=>{ee._write(k,r(ee,H),Y)||(oe=!1)}),v.forEach((ee,dt)=>{ee.element.parentNode||(K.appendChild(ee.element,dt),ee._read(),ee._write(k,r(ee,H),Y),oe=!1)}),T=oe,p({props:g,root:K,actions:H,timestamp:k}),oe},F=()=>{y.forEach(k=>k.destroy()),z.forEach(k=>{k({root:K,props:g})}),v.forEach(k=>k._destroy())},G={element:{get:P},style:{get:S},childViews:{get:A}},C={...G,rect:{get:O},ref:{get:B},is:k=>t===k,appendChild:Tr(f),createChildView:w(u),linkView:k=>(v.push(k),k),unlinkView:k=>{v.splice(v.indexOf(k),1)},appendChildView:Ir(f,v),removeChildView:vr(f,v),registerWriter:k=>x.push(k),registerReader:k=>R.push(k),registerDestroyer:k=>z.push(k),invalidateLayout:()=>f.layoutCalculated=!1,dispatch:u.dispatch,query:u.query},q={element:{get:P},childViews:{get:A},rect:{get:O},resting:{get:()=>T},isRectIgnored:()=>c,_read:L,_write:D,_destroy:F},X={...G,rect:{get:()=>I}};Object.keys(m).sort((k,H)=>k==="styles"?1:H==="styles"?-1:0).forEach(k=>{let H=kr[k]({mixinConfig:m[k],viewProps:g,viewState:_,viewInternalAPI:C,viewExternalAPI:q,view:We(X)});H&&y.push(H)});let K=We(C);l({root:K,props:g});let pe=Rr(f);return v.forEach((k,H)=>{K.appendChild(k.element,pe+H)}),s(K),We(q)},Vr=(e,t,i=60)=>{let a="__framePainter";if(window[a]){window[a].readers.push(e),window[a].writers.push(t);return}window[a]={readers:[e],writers:[t]};let n=window[a],l=1e3/i,o=null,r=null,s=null,p=null,c=()=>{document.hidden?(s=()=>window.setTimeout(()=>d(performance.now()),l),p=()=>window.clearTimeout(r)):(s=()=>window.requestAnimationFrame(d),p=()=>window.cancelAnimationFrame(r))};document.addEventListener("visibilitychange",()=>{p&&p(),c(),d(performance.now())});let d=m=>{r=s(d),o||(o=m);let u=m-o;u<=l||(o=m-u%l,n.readers.forEach(g=>g()),n.writers.forEach(g=>g(m)))};return c(),d(performance.now()),{pause:()=>{p(r)}}},fe=(e,t)=>({root:i,props:a,actions:n=[],timestamp:l,shouldOptimize:o})=>{n.filter(r=>e[r.type]).forEach(r=>e[r.type]({root:i,props:a,action:r.data,timestamp:l,shouldOptimize:o})),t&&t({root:i,props:a,actions:n,timestamp:l,shouldOptimize:o})},Ba=(e,t)=>t.parentNode.insertBefore(e,t),Na=(e,t)=>t.parentNode.insertBefore(e,t.nextSibling),ci=e=>Array.isArray(e),ke=e=>e==null,Gr=e=>e.trim(),di=e=>""+e,Ur=(e,t=",")=>ke(e)?[]:ci(e)?e:di(e).split(t).map(Gr).filter(i=>i.length),In=e=>typeof e=="boolean",vn=e=>In(e)?e:e==="true",ge=e=>typeof e=="string",xn=e=>$e(e)?e:ge(e)?di(e).replace(/[a-z]+/gi,""):0,ni=e=>parseInt(xn(e),10),ka=e=>parseFloat(xn(e)),bt=e=>$e(e)&&isFinite(e)&&Math.floor(e)===e,Va=(e,t=1e3)=>{if(bt(e))return e;let i=di(e).trim();return/MB$/i.test(i)?(i=i.replace(/MB$i/,"").trim(),ni(i)*t*t):/KB/i.test(i)?(i=i.replace(/KB$i/,"").trim(),ni(i)*t):ni(i)},Xe=e=>typeof e=="function",Wr=e=>{let t=self,i=e.split("."),a=null;for(;a=i.shift();)if(t=t[a],!t)return null;return t},Ga={process:"POST",patch:"PATCH",revert:"DELETE",fetch:"GET",restore:"GET",load:"GET"},Hr=e=>{let t={};return t.url=ge(e)?e:e.url||"",t.timeout=e.timeout?parseInt(e.timeout,10):0,t.headers=e.headers?e.headers:{},te(Ga,i=>{t[i]=jr(i,e[i],Ga[i],t.timeout,t.headers)}),t.process=e.process||ge(e)||e.url?t.process:null,t.remove=e.remove||null,delete t.headers,t},jr=(e,t,i,a,n)=>{if(t===null)return null;if(typeof t=="function")return t;let l={url:i==="GET"||i==="PATCH"?`?${e}=`:"",method:i,headers:n,withCredentials:!1,timeout:a,onload:null,ondata:null,onerror:null};if(ge(t))return l.url=t,l;if(Object.assign(l,t),ge(l.headers)){let o=l.headers.split(/:(.+)/);l.headers={header:o[0],value:o[1]}}return l.withCredentials=vn(l.withCredentials),l},Yr=e=>Hr(e),qr=e=>e===null,ce=e=>typeof e=="object"&&e!==null,$r=e=>ce(e)&&ge(e.url)&&ce(e.process)&&ce(e.revert)&&ce(e.restore)&&ce(e.fetch),Oi=e=>ci(e)?"array":qr(e)?"null":bt(e)?"int":/^[0-9]+ ?(?:GB|MB|KB)$/gi.test(e)?"bytes":$r(e)?"api":typeof e,Xr=e=>e.replace(/{\s*'/g,'{"').replace(/'\s*}/g,'"}').replace(/'\s*:/g,'":').replace(/:\s*'/g,':"').replace(/,\s*'/g,',"').replace(/'\s*,/g,'",'),Kr={array:Ur,boolean:vn,int:e=>Oi(e)==="bytes"?Va(e):ni(e),number:ka,float:ka,bytes:Va,string:e=>Xe(e)?e:di(e),function:e=>Wr(e),serverapi:Yr,object:e=>{try{return JSON.parse(Xr(e))}catch{return null}}},Qr=(e,t)=>Kr[t](e),yn=(e,t,i)=>{if(e===t)return e;let a=Oi(e);if(a!==i){let n=Qr(e,i);if(a=Oi(n),n===null)throw`Trying to assign value with incorrect type to "${option}", allowed type: "${i}"`;e=n}return e},Zr=(e,t)=>{let i=e;return{enumerable:!0,get:()=>i,set:a=>{i=yn(a,e,t)}}},Jr=e=>{let t={};return te(e,i=>{let a=e[i];t[i]=Zr(a[0],a[1])}),We(t)},es=e=>({items:[],listUpdateTimeout:null,itemUpdateTimeout:null,processingQueue:[],options:Jr(e)}),pi=(e,t="-")=>e.split(/(?=[A-Z])/).map(i=>i.toLowerCase()).join(t),ts=(e,t)=>{let i={};return te(t,a=>{i[a]={get:()=>e.getState().options[a],set:n=>{e.dispatch(`SET_${pi(a,"_").toUpperCase()}`,{value:n})}}}),i},is=e=>(t,i,a)=>{let n={};return te(e,l=>{let o=pi(l,"_").toUpperCase();n[`SET_${o}`]=r=>{try{a.options[l]=r.value}catch{}t(`DID_SET_${o}`,{value:a.options[l]})}}),n},as=e=>t=>{let i={};return te(e,a=>{i[`GET_${pi(a,"_").toUpperCase()}`]=n=>t.options[a]}),i},Re={API:1,DROP:2,BROWSE:3,PASTE:4,NONE:5},qi=()=>Math.random().toString(36).substring(2,11),$i=(e,t)=>e.splice(t,1),ns=(e,t)=>{t?e():document.hidden?Promise.resolve(1).then(e):setTimeout(e,0)},mi=()=>{let e=[],t=(a,n)=>{$i(e,e.findIndex(l=>l.event===a&&(l.cb===n||!n)))},i=(a,n,l)=>{e.filter(o=>o.event===a).map(o=>o.cb).forEach(o=>ns(()=>o(...n),l))};return{fireSync:(a,...n)=>{i(a,n,!0)},fire:(a,...n)=>{i(a,n,!1)},on:(a,n)=>{e.push({event:a,cb:n})},onOnce:(a,n)=>{e.push({event:a,cb:(...l)=>{t(a,n),n(...l)}})},off:t}},Rn=(e,t,i)=>{Object.getOwnPropertyNames(e).filter(a=>!i.includes(a)).forEach(a=>Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(e,a)))},ls=["fire","process","revert","load","on","off","onOnce","retryLoad","extend","archive","archived","release","released","requestProcessing","freeze"],he=e=>{let t={};return Rn(e,t,ls),t},os=e=>{e.forEach((t,i)=>{t.released&&$i(e,i)})},U={INIT:1,IDLE:2,PROCESSING_QUEUED:9,PROCESSING:3,PROCESSING_COMPLETE:5,PROCESSING_ERROR:6,PROCESSING_REVERT_ERROR:10,LOADING:7,LOAD_ERROR:8},re={INPUT:1,LIMBO:2,LOCAL:3},Sn=e=>/[^0-9]+/.exec(e),_n=()=>Sn(1.1.toLocaleString())[0],rs=()=>{let e=_n(),t=1e3.toLocaleString();return t!=="1000"?Sn(t)[0]:e==="."?",":"."},M={BOOLEAN:"boolean",INT:"int",NUMBER:"number",STRING:"string",ARRAY:"array",OBJECT:"object",FUNCTION:"function",ACTION:"action",SERVER_API:"serverapi",REGEX:"regex"},Xi=[],Ae=(e,t,i)=>new Promise((a,n)=>{let l=Xi.filter(r=>r.key===e).map(r=>r.cb);if(l.length===0){a(t);return}let o=l.shift();l.reduce((r,s)=>r.then(p=>s(p,i)),o(t,i)).then(r=>a(r)).catch(r=>n(r))}),tt=(e,t,i)=>Xi.filter(a=>a.key===e).map(a=>a.cb(t,i)),ss=(e,t)=>Xi.push({key:e,cb:t}),cs=e=>Object.assign(pt,e),oi=()=>({...pt}),ds=e=>{te(e,(t,i)=>{pt[t]&&(pt[t][0]=yn(i,pt[t][0],pt[t][1]))})},pt={id:[null,M.STRING],name:["filepond",M.STRING],disabled:[!1,M.BOOLEAN],className:[null,M.STRING],required:[!1,M.BOOLEAN],captureMethod:[null,M.STRING],allowSyncAcceptAttribute:[!0,M.BOOLEAN],allowDrop:[!0,M.BOOLEAN],allowBrowse:[!0,M.BOOLEAN],allowPaste:[!0,M.BOOLEAN],allowMultiple:[!1,M.BOOLEAN],allowReplace:[!0,M.BOOLEAN],allowRevert:[!0,M.BOOLEAN],allowRemove:[!0,M.BOOLEAN],allowProcess:[!0,M.BOOLEAN],allowReorder:[!1,M.BOOLEAN],allowDirectoriesOnly:[!1,M.BOOLEAN],storeAsFile:[!1,M.BOOLEAN],forceRevert:[!1,M.BOOLEAN],maxFiles:[null,M.INT],checkValidity:[!1,M.BOOLEAN],itemInsertLocationFreedom:[!0,M.BOOLEAN],itemInsertLocation:["before",M.STRING],itemInsertInterval:[75,M.INT],dropOnPage:[!1,M.BOOLEAN],dropOnElement:[!0,M.BOOLEAN],dropValidation:[!1,M.BOOLEAN],ignoredFiles:[[".ds_store","thumbs.db","desktop.ini"],M.ARRAY],instantUpload:[!0,M.BOOLEAN],maxParallelUploads:[2,M.INT],allowMinimumUploadDuration:[!0,M.BOOLEAN],chunkUploads:[!1,M.BOOLEAN],chunkForce:[!1,M.BOOLEAN],chunkSize:[5e6,M.INT],chunkRetryDelays:[[500,1e3,3e3],M.ARRAY],server:[null,M.SERVER_API],fileSizeBase:[1e3,M.INT],labelFileSizeBytes:["bytes",M.STRING],labelFileSizeKilobytes:["KB",M.STRING],labelFileSizeMegabytes:["MB",M.STRING],labelFileSizeGigabytes:["GB",M.STRING],labelDecimalSeparator:[_n(),M.STRING],labelThousandsSeparator:[rs(),M.STRING],labelIdle:['Drag & Drop your files or Browse ',M.STRING],labelInvalidField:["Field contains invalid files",M.STRING],labelFileWaitingForSize:["Waiting for size",M.STRING],labelFileSizeNotAvailable:["Size not available",M.STRING],labelFileCountSingular:["file in list",M.STRING],labelFileCountPlural:["files in list",M.STRING],labelFileLoading:["Loading",M.STRING],labelFileAdded:["Added",M.STRING],labelFileLoadError:["Error during load",M.STRING],labelFileRemoved:["Removed",M.STRING],labelFileRemoveError:["Error during remove",M.STRING],labelFileProcessing:["Uploading",M.STRING],labelFileProcessingComplete:["Upload complete",M.STRING],labelFileProcessingAborted:["Upload cancelled",M.STRING],labelFileProcessingError:["Error during upload",M.STRING],labelFileProcessingRevertError:["Error during revert",M.STRING],labelTapToCancel:["tap to cancel",M.STRING],labelTapToRetry:["tap to retry",M.STRING],labelTapToUndo:["tap to undo",M.STRING],labelButtonRemoveItem:["Remove",M.STRING],labelButtonAbortItemLoad:["Abort",M.STRING],labelButtonRetryItemLoad:["Retry",M.STRING],labelButtonAbortItemProcessing:["Cancel",M.STRING],labelButtonUndoItemProcessing:["Undo",M.STRING],labelButtonRetryItemProcessing:["Retry",M.STRING],labelButtonProcessItem:["Upload",M.STRING],iconRemove:[' ',M.STRING],iconProcess:[' ',M.STRING],iconRetry:[' ',M.STRING],iconUndo:[' ',M.STRING],iconDone:[' ',M.STRING],oninit:[null,M.FUNCTION],onwarning:[null,M.FUNCTION],onerror:[null,M.FUNCTION],onactivatefile:[null,M.FUNCTION],oninitfile:[null,M.FUNCTION],onaddfilestart:[null,M.FUNCTION],onaddfileprogress:[null,M.FUNCTION],onaddfile:[null,M.FUNCTION],onprocessfilestart:[null,M.FUNCTION],onprocessfileprogress:[null,M.FUNCTION],onprocessfileabort:[null,M.FUNCTION],onprocessfilerevert:[null,M.FUNCTION],onprocessfile:[null,M.FUNCTION],onprocessfiles:[null,M.FUNCTION],onremovefile:[null,M.FUNCTION],onpreparefile:[null,M.FUNCTION],onupdatefiles:[null,M.FUNCTION],onreorderfiles:[null,M.FUNCTION],beforeDropFile:[null,M.FUNCTION],beforeAddFile:[null,M.FUNCTION],beforeRemoveFile:[null,M.FUNCTION],beforePrepareFile:[null,M.FUNCTION],stylePanelLayout:[null,M.STRING],stylePanelAspectRatio:[null,M.STRING],styleItemPanelAspectRatio:[null,M.STRING],styleButtonRemoveItemPosition:["left",M.STRING],styleButtonProcessItemPosition:["right",M.STRING],styleLoadIndicatorPosition:["right",M.STRING],styleProgressIndicatorPosition:["right",M.STRING],styleButtonRemoveItemAlign:[!1,M.BOOLEAN],files:[[],M.ARRAY],credits:[["https://pqina.nl/","Powered by PQINA"],M.ARRAY]},Ke=(e,t)=>ke(t)?e[0]||null:bt(t)?e[t]||null:(typeof t=="object"&&(t=t.id),e.find(i=>i.id===t)||null),wn=e=>{if(ke(e))return e;if(/:/.test(e)){let t=e.split(":");return t[1]/t[0]}return parseFloat(e)},Pe=e=>e.filter(t=>!t.archived),Ln={EMPTY:0,IDLE:1,ERROR:2,BUSY:3,READY:4},Zt=null,ps=()=>{if(Zt===null)try{let e=new DataTransfer;e.items.add(new File(["hello world"],"This_Works.txt"));let t=document.createElement("input");t.setAttribute("type","file"),t.files=e.files,Zt=t.files.length===1}catch{Zt=!1}return Zt},ms=[U.LOAD_ERROR,U.PROCESSING_ERROR,U.PROCESSING_REVERT_ERROR],us=[U.LOADING,U.PROCESSING,U.PROCESSING_QUEUED,U.INIT],gs=[U.PROCESSING_COMPLETE],fs=e=>ms.includes(e.status),hs=e=>us.includes(e.status),bs=e=>gs.includes(e.status),Ua=e=>ce(e.options.server)&&(ce(e.options.server.process)||Xe(e.options.server.process)),Es=e=>({GET_STATUS:()=>{let t=Pe(e.items),{EMPTY:i,ERROR:a,BUSY:n,IDLE:l,READY:o}=Ln;return t.length===0?i:t.some(fs)?a:t.some(hs)?n:t.some(bs)?o:l},GET_ITEM:t=>Ke(e.items,t),GET_ACTIVE_ITEM:t=>Ke(Pe(e.items),t),GET_ACTIVE_ITEMS:()=>Pe(e.items),GET_ITEMS:()=>e.items,GET_ITEM_NAME:t=>{let i=Ke(e.items,t);return i?i.filename:null},GET_ITEM_SIZE:t=>{let i=Ke(e.items,t);return i?i.fileSize:null},GET_STYLES:()=>Object.keys(e.options).filter(t=>/^style/.test(t)).map(t=>({name:t,value:e.options[t]})),GET_PANEL_ASPECT_RATIO:()=>/circle/.test(e.options.stylePanelLayout)?1:wn(e.options.stylePanelAspectRatio),GET_ITEM_PANEL_ASPECT_RATIO:()=>e.options.styleItemPanelAspectRatio,GET_ITEMS_BY_STATUS:t=>Pe(e.items).filter(i=>i.status===t),GET_TOTAL_ITEMS:()=>Pe(e.items).length,SHOULD_UPDATE_FILE_INPUT:()=>e.options.storeAsFile&&ps()&&!Ua(e),IS_ASYNC:()=>Ua(e),GET_FILE_SIZE_LABELS:t=>({labelBytes:t("GET_LABEL_FILE_SIZE_BYTES")||void 0,labelKilobytes:t("GET_LABEL_FILE_SIZE_KILOBYTES")||void 0,labelMegabytes:t("GET_LABEL_FILE_SIZE_MEGABYTES")||void 0,labelGigabytes:t("GET_LABEL_FILE_SIZE_GIGABYTES")||void 0})}),Ts=e=>{let t=Pe(e.items).length;if(!e.options.allowMultiple)return t===0;let i=e.options.maxFiles;return i===null||tMath.max(Math.min(i,e),t),Is=(e,t,i)=>e.splice(t,0,i),vs=(e,t,i)=>ke(t)?null:typeof i>"u"?(e.push(t),t):(i=Mn(i,0,e.length),Is(e,i,t),t),Fi=e=>/^\s*data:([a-z]+\/[a-z0-9-+.]+(;[a-z-]+=[a-z0-9-]+)?)?(;base64)?,([a-z0-9!$&',()*+;=\-._~:@\/?%\s]*)\s*$/i.test(e),Dt=e=>`${e}`.split("/").pop().split("?").shift(),ui=e=>e.split(".").pop(),xs=e=>{if(typeof e!="string")return"";let t=e.split("/").pop();return/svg/.test(t)?"svg":/zip|compressed/.test(t)?"zip":/plain/.test(t)?"txt":/msword/.test(t)?"doc":/[a-z]+/.test(t)?t==="jpeg"?"jpg":t:""},At=(e,t="")=>(t+e).slice(-t.length),An=(e=new Date)=>`${e.getFullYear()}-${At(e.getMonth()+1,"00")}-${At(e.getDate(),"00")}_${At(e.getHours(),"00")}-${At(e.getMinutes(),"00")}-${At(e.getSeconds(),"00")}`,ht=(e,t,i=null,a=null)=>{let n=typeof i=="string"?e.slice(0,e.size,i):e.slice(0,e.size,e.type);return n.lastModifiedDate=new Date,e._relativePath&&(n._relativePath=e._relativePath),ge(t)||(t=An()),t&&a===null&&ui(t)?n.name=t:(a=a||xs(n.type),n.name=t+(a?"."+a:"")),n},ys=()=>window.BlobBuilder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,Pn=(e,t)=>{let i=ys();if(i){let a=new i;return a.append(e),a.getBlob(t)}return new Blob([e],{type:t})},Rs=(e,t)=>{let i=new ArrayBuffer(e.length),a=new Uint8Array(i);for(let n=0;n(/^data:(.+);/.exec(e)||[])[1]||null,Ss=e=>e.split(",")[1].replace(/\s/g,""),_s=e=>atob(Ss(e)),ws=e=>{let t=zn(e),i=_s(e);return Rs(i,t)},Ls=(e,t,i)=>ht(ws(e),t,null,i),Ms=e=>{if(!/^content-disposition:/i.test(e))return null;let t=e.split(/filename=|filename\*=.+''/).splice(1).map(i=>i.trim().replace(/^["']|[;"']{0,2}$/g,"")).filter(i=>i.length);return t.length?decodeURI(t[t.length-1]):null},As=e=>{if(/content-length:/i.test(e)){let t=e.match(/[0-9]+/)[0];return t?parseInt(t,10):null}return null},Ps=e=>/x-content-transfer-id:/i.test(e)&&(e.split(":")[1]||"").trim()||null,Ki=e=>{let t={source:null,name:null,size:null},i=e.split(`
+`);for(let a of i){let n=Ms(a);if(n){t.name=n;continue}let l=As(a);if(l){t.size=l;continue}let o=Ps(a);if(o){t.source=o;continue}}return t},zs=e=>{let t={source:null,complete:!1,progress:0,size:null,timestamp:null,duration:0,request:null},i=()=>t.progress,a=()=>{t.request&&t.request.abort&&t.request.abort()},n=()=>{let r=t.source;o.fire("init",r),r instanceof File?o.fire("load",r):r instanceof Blob?o.fire("load",ht(r,r.name)):Fi(r)?o.fire("load",Ls(r)):l(r)},l=r=>{if(!e){o.fire("error",{type:"error",body:"Can't load URL",code:400});return}t.timestamp=Date.now(),t.request=e(r,s=>{t.duration=Date.now()-t.timestamp,t.complete=!0,s instanceof Blob&&(s=ht(s,s.name||Dt(r))),o.fire("load",s instanceof Blob?s:s?s.body:null)},s=>{o.fire("error",typeof s=="string"?{type:"error",code:0,body:s}:s)},(s,p,c)=>{if(c&&(t.size=c),t.duration=Date.now()-t.timestamp,!s){t.progress=null;return}t.progress=p/c,o.fire("progress",t.progress)},()=>{o.fire("abort")},s=>{let p=Ki(typeof s=="string"?s:s.headers);o.fire("meta",{size:t.size||p.size,filename:p.name,source:p.source})})},o={...mi(),setSource:r=>t.source=r,getProgress:i,abort:a,load:n};return o},Wa=e=>/GET|HEAD/.test(e),Qe=(e,t,i)=>{let a={onheaders:()=>{},onprogress:()=>{},onload:()=>{},ontimeout:()=>{},onerror:()=>{},onabort:()=>{},abort:()=>{n=!0,o.abort()}},n=!1,l=!1;i={method:"POST",headers:{},withCredentials:!1,...i},t=encodeURI(t),Wa(i.method)&&e&&(t=`${t}${encodeURIComponent(typeof e=="string"?e:JSON.stringify(e))}`);let o=new XMLHttpRequest,r=Wa(i.method)?o:o.upload;return r.onprogress=s=>{n||a.onprogress(s.lengthComputable,s.loaded,s.total)},o.onreadystatechange=()=>{o.readyState<2||o.readyState===4&&o.status===0||l||(l=!0,a.onheaders(o))},o.onload=()=>{o.status>=200&&o.status<300?a.onload(o):a.onerror(o)},o.onerror=()=>a.onerror(o),o.onabort=()=>{n=!0,a.onabort()},o.ontimeout=()=>a.ontimeout(o),o.open(i.method,t,!0),bt(i.timeout)&&(o.timeout=i.timeout),Object.keys(i.headers).forEach(s=>{let p=unescape(encodeURIComponent(i.headers[s]));o.setRequestHeader(s,p)}),i.responseType&&(o.responseType=i.responseType),i.withCredentials&&(o.withCredentials=!0),o.send(e),a},ie=(e,t,i,a)=>({type:e,code:t,body:i,headers:a}),Ze=e=>t=>{e(ie("error",0,"Timeout",t.getAllResponseHeaders()))},Ha=e=>/\?/.test(e),Ot=(...e)=>{let t="";return e.forEach(i=>{t+=Ha(t)&&Ha(i)?i.replace(/\?/,"&"):i}),t},wi=(e="",t)=>{if(typeof t=="function")return t;if(!t||!ge(t.url))return null;let i=t.onload||(n=>n),a=t.onerror||(n=>null);return(n,l,o,r,s,p)=>{let c=Qe(n,Ot(e,t.url),{...t,responseType:"blob"});return c.onload=d=>{let m=d.getAllResponseHeaders(),u=Ki(m).name||Dt(n);l(ie("load",d.status,t.method==="HEAD"?null:ht(i(d.response),u),m))},c.onerror=d=>{o(ie("error",d.status,a(d.response)||d.statusText,d.getAllResponseHeaders()))},c.onheaders=d=>{p(ie("headers",d.status,null,d.getAllResponseHeaders()))},c.ontimeout=Ze(o),c.onprogress=r,c.onabort=s,c}},xe={QUEUED:0,COMPLETE:1,PROCESSING:2,ERROR:3,WAITING:4},Os=(e,t,i,a,n,l,o,r,s,p,c)=>{let d=[],{chunkTransferId:m,chunkServer:u,chunkSize:g,chunkRetryDelays:f}=c,h={serverId:m,aborted:!1},I=t.ondata||(w=>w),b=t.onload||((w,O)=>O==="HEAD"?w.getResponseHeader("Upload-Offset"):w.response),T=t.onerror||(w=>null),v=w=>{let O=new FormData;ce(n)&&O.append(i,JSON.stringify(n));let S=typeof t.headers=="function"?t.headers(a,n):{...t.headers,"Upload-Length":a.size},L={...t,headers:S},D=Qe(I(O),Ot(e,t.url),L);D.onload=F=>w(b(F,L.method)),D.onerror=F=>o(ie("error",F.status,T(F.response)||F.statusText,F.getAllResponseHeaders())),D.ontimeout=Ze(o)},y=w=>{let O=Ot(e,u.url,h.serverId),L={headers:typeof t.headers=="function"?t.headers(h.serverId):{...t.headers},method:"HEAD"},D=Qe(null,O,L);D.onload=F=>w(b(F,L.method)),D.onerror=F=>o(ie("error",F.status,T(F.response)||F.statusText,F.getAllResponseHeaders())),D.ontimeout=Ze(o)},E=Math.floor(a.size/g);for(let w=0;w<=E;w++){let O=w*g,S=a.slice(O,O+g,"application/offset+octet-stream");d[w]={index:w,size:S.size,offset:O,data:S,file:a,progress:0,retries:[...f],status:xe.QUEUED,error:null,request:null,timeout:null}}let _=()=>l(h.serverId),x=w=>w.status===xe.QUEUED||w.status===xe.ERROR,R=w=>{if(h.aborted)return;if(w=w||d.find(x),!w){d.every(C=>C.status===xe.COMPLETE)&&_();return}w.status=xe.PROCESSING,w.progress=null;let O=u.ondata||(C=>C),S=u.onerror||(C=>null),L=u.onload||(()=>{}),D=Ot(e,u.url,h.serverId),F=typeof u.headers=="function"?u.headers(w):{...u.headers,"Content-Type":"application/offset+octet-stream","Upload-Offset":w.offset,"Upload-Length":a.size,"Upload-Name":a.name},G=w.request=Qe(O(w.data),D,{...u,headers:F});G.onload=C=>{L(C,w.index,d.length),w.status=xe.COMPLETE,w.request=null,A()},G.onprogress=(C,q,X)=>{w.progress=C?q:null,P()},G.onerror=C=>{w.status=xe.ERROR,w.request=null,w.error=S(C.response)||C.statusText,z(w)||o(ie("error",C.status,S(C.response)||C.statusText,C.getAllResponseHeaders()))},G.ontimeout=C=>{w.status=xe.ERROR,w.request=null,z(w)||Ze(o)(C)},G.onabort=()=>{w.status=xe.QUEUED,w.request=null,s()}},z=w=>w.retries.length===0?!1:(w.status=xe.WAITING,clearTimeout(w.timeout),w.timeout=setTimeout(()=>{R(w)},w.retries.shift()),!0),P=()=>{let w=d.reduce((S,L)=>S===null||L.progress===null?null:S+L.progress,0);if(w===null)return r(!1,0,0);let O=d.reduce((S,L)=>S+L.size,0);r(!0,w,O)},A=()=>{d.filter(O=>O.status===xe.PROCESSING).length>=1||R()},B=()=>{d.forEach(w=>{clearTimeout(w.timeout),w.request&&w.request.abort()})};return h.serverId?y(w=>{h.aborted||(d.filter(O=>O.offset{O.status=xe.COMPLETE,O.progress=O.size}),A())}):v(w=>{h.aborted||(p(w),h.serverId=w,A())}),{abort:()=>{h.aborted=!0,B()}}},Fs=(e,t,i,a)=>(n,l,o,r,s,p,c)=>{if(!n)return;let d=a.chunkUploads,m=d&&n.size>a.chunkSize,u=d&&(m||a.chunkForce);if(n instanceof Blob&&u)return Os(e,t,i,n,l,o,r,s,p,c,a);let g=t.ondata||(y=>y),f=t.onload||(y=>y),h=t.onerror||(y=>null),I=typeof t.headers=="function"?t.headers(n,l)||{}:{...t.headers},b={...t,headers:I};var T=new FormData;ce(l)&&T.append(i,JSON.stringify(l)),(n instanceof Blob?[{name:null,file:n}]:n).forEach(y=>{T.append(i,y.file,y.name===null?y.file.name:`${y.name}${y.file.name}`)});let v=Qe(g(T),Ot(e,t.url),b);return v.onload=y=>{o(ie("load",y.status,f(y.response),y.getAllResponseHeaders()))},v.onerror=y=>{r(ie("error",y.status,h(y.response)||y.statusText,y.getAllResponseHeaders()))},v.ontimeout=Ze(r),v.onprogress=s,v.onabort=p,v},Ds=(e="",t,i,a)=>typeof t=="function"?(...n)=>t(i,...n,a):!t||!ge(t.url)?null:Fs(e,t,i,a),Pt=(e="",t)=>{if(typeof t=="function")return t;if(!t||!ge(t.url))return(n,l)=>l();let i=t.onload||(n=>n),a=t.onerror||(n=>null);return(n,l,o)=>{let r=Qe(n,e+t.url,t);return r.onload=s=>{l(ie("load",s.status,i(s.response),s.getAllResponseHeaders()))},r.onerror=s=>{o(ie("error",s.status,a(s.response)||s.statusText,s.getAllResponseHeaders()))},r.ontimeout=Ze(o),r}},On=(e=0,t=1)=>e+Math.random()*(t-e),Cs=(e,t=1e3,i=0,a=25,n=250)=>{let l=null,o=Date.now(),r=()=>{let s=Date.now()-o,p=On(a,n);s+p>t&&(p=s+p-t);let c=s/t;if(c>=1||document.hidden){e(1);return}e(c),l=setTimeout(r,p)};return t>0&&r(),{clear:()=>{clearTimeout(l)}}},Bs=(e,t)=>{let i={complete:!1,perceivedProgress:0,perceivedPerformanceUpdater:null,progress:null,timestamp:null,perceivedDuration:0,duration:0,request:null,response:null},{allowMinimumUploadDuration:a}=t,n=(c,d)=>{let m=()=>{i.duration===0||i.progress===null||p.fire("progress",p.getProgress())},u=()=>{i.complete=!0,p.fire("load-perceived",i.response.body)};p.fire("start"),i.timestamp=Date.now(),i.perceivedPerformanceUpdater=Cs(g=>{i.perceivedProgress=g,i.perceivedDuration=Date.now()-i.timestamp,m(),i.response&&i.perceivedProgress===1&&!i.complete&&u()},a?On(750,1500):0),i.request=e(c,d,g=>{i.response=ce(g)?g:{type:"load",code:200,body:`${g}`,headers:{}},i.duration=Date.now()-i.timestamp,i.progress=1,p.fire("load",i.response.body),(!a||a&&i.perceivedProgress===1)&&u()},g=>{i.perceivedPerformanceUpdater.clear(),p.fire("error",ce(g)?g:{type:"error",code:0,body:`${g}`})},(g,f,h)=>{i.duration=Date.now()-i.timestamp,i.progress=g?f/h:null,m()},()=>{i.perceivedPerformanceUpdater.clear(),p.fire("abort",i.response?i.response.body:null)},g=>{p.fire("transfer",g)})},l=()=>{i.request&&(i.perceivedPerformanceUpdater.clear(),i.request.abort&&i.request.abort(),i.complete=!0)},o=()=>{l(),i.complete=!1,i.perceivedProgress=0,i.progress=0,i.timestamp=null,i.perceivedDuration=0,i.duration=0,i.request=null,i.response=null},r=a?()=>i.progress?Math.min(i.progress,i.perceivedProgress):null:()=>i.progress||null,s=a?()=>Math.min(i.duration,i.perceivedDuration):()=>i.duration,p={...mi(),process:n,abort:l,getProgress:r,getDuration:s,reset:o};return p},Fn=e=>e.substring(0,e.lastIndexOf("."))||e,Ns=e=>{let t=[e.name,e.size,e.type];return e instanceof Blob||Fi(e)?t[0]=e.name||An():Fi(e)?(t[1]=e.length,t[2]=zn(e)):ge(e)&&(t[0]=Dt(e),t[1]=0,t[2]="application/octet-stream"),{name:t[0],size:t[1],type:t[2]}},Je=e=>!!(e instanceof File||e instanceof Blob&&e.name),Dn=e=>{if(!ce(e))return e;let t=ci(e)?[]:{};for(let i in e){if(!e.hasOwnProperty(i))continue;let a=e[i];t[i]=a&&ce(a)?Dn(a):a}return t},ks=(e=null,t=null,i=null)=>{let a=qi(),n={archived:!1,frozen:!1,released:!1,source:null,file:i,serverFileReference:t,transferId:null,processingAborted:!1,status:t?U.PROCESSING_COMPLETE:U.INIT,activeLoader:null,activeProcessor:null},l=null,o={},r=x=>n.status=x,s=(x,...R)=>{n.released||n.frozen||E.fire(x,...R)},p=()=>ui(n.file.name),c=()=>n.file.type,d=()=>n.file.size,m=()=>n.file,u=(x,R,z)=>{if(n.source=x,E.fireSync("init"),n.file){E.fireSync("load-skip");return}n.file=Ns(x),R.on("init",()=>{s("load-init")}),R.on("meta",P=>{n.file.size=P.size,n.file.filename=P.filename,P.source&&(e=re.LIMBO,n.serverFileReference=P.source,n.status=U.PROCESSING_COMPLETE),s("load-meta")}),R.on("progress",P=>{r(U.LOADING),s("load-progress",P)}),R.on("error",P=>{r(U.LOAD_ERROR),s("load-request-error",P)}),R.on("abort",()=>{r(U.INIT),s("load-abort")}),R.on("load",P=>{n.activeLoader=null;let A=w=>{n.file=Je(w)?w:n.file,e===re.LIMBO&&n.serverFileReference?r(U.PROCESSING_COMPLETE):r(U.IDLE),s("load")},B=w=>{n.file=P,s("load-meta"),r(U.LOAD_ERROR),s("load-file-error",w)};if(n.serverFileReference){A(P);return}z(P,A,B)}),R.setSource(x),n.activeLoader=R,R.load()},g=()=>{n.activeLoader&&n.activeLoader.load()},f=()=>{if(n.activeLoader){n.activeLoader.abort();return}r(U.INIT),s("load-abort")},h=(x,R)=>{if(n.processingAborted){n.processingAborted=!1;return}if(r(U.PROCESSING),l=null,!(n.file instanceof Blob)){E.on("load",()=>{h(x,R)});return}x.on("load",A=>{n.transferId=null,n.serverFileReference=A}),x.on("transfer",A=>{n.transferId=A}),x.on("load-perceived",A=>{n.activeProcessor=null,n.transferId=null,n.serverFileReference=A,r(U.PROCESSING_COMPLETE),s("process-complete",A)}),x.on("start",()=>{s("process-start")}),x.on("error",A=>{n.activeProcessor=null,r(U.PROCESSING_ERROR),s("process-error",A)}),x.on("abort",A=>{n.activeProcessor=null,n.serverFileReference=A,r(U.IDLE),s("process-abort"),l&&l()}),x.on("progress",A=>{s("process-progress",A)});let z=A=>{n.archived||x.process(A,{...o})},P=console.error;R(n.file,z,P),n.activeProcessor=x},I=()=>{n.processingAborted=!1,r(U.PROCESSING_QUEUED)},b=()=>new Promise(x=>{if(!n.activeProcessor){n.processingAborted=!0,r(U.IDLE),s("process-abort"),x();return}l=()=>{x()},n.activeProcessor.abort()}),T=(x,R)=>new Promise((z,P)=>{let A=n.serverFileReference!==null?n.serverFileReference:n.transferId;if(A===null){z();return}x(A,()=>{n.serverFileReference=null,n.transferId=null,z()},B=>{if(!R){z();return}r(U.PROCESSING_REVERT_ERROR),s("process-revert-error"),P(B)}),r(U.IDLE),s("process-revert")}),v=(x,R,z)=>{let P=x.split("."),A=P[0],B=P.pop(),w=o;P.forEach(O=>w=w[O]),JSON.stringify(w[B])!==JSON.stringify(R)&&(w[B]=R,s("metadata-update",{key:A,value:o[A],silent:z}))},E={id:{get:()=>a},origin:{get:()=>e,set:x=>e=x},serverId:{get:()=>n.serverFileReference},transferId:{get:()=>n.transferId},status:{get:()=>n.status},filename:{get:()=>n.file.name},filenameWithoutExtension:{get:()=>Fn(n.file.name)},fileExtension:{get:p},fileType:{get:c},fileSize:{get:d},file:{get:m},relativePath:{get:()=>n.file._relativePath},source:{get:()=>n.source},getMetadata:x=>Dn(x?o[x]:o),setMetadata:(x,R,z)=>{if(ce(x)){let P=x;return Object.keys(P).forEach(A=>{v(A,P[A],R)}),x}return v(x,R,z),R},extend:(x,R)=>_[x]=R,abortLoad:f,retryLoad:g,requestProcessing:I,abortProcessing:b,load:u,process:h,revert:T,...mi(),freeze:()=>n.frozen=!0,release:()=>n.released=!0,released:{get:()=>n.released},archive:()=>n.archived=!0,archived:{get:()=>n.archived},setFile:x=>n.file=x},_=We(E);return _},Vs=(e,t)=>ke(t)?0:ge(t)?e.findIndex(i=>i.id===t):-1,ja=(e,t)=>{let i=Vs(e,t);if(!(i<0))return e[i]||null},Ya=(e,t,i,a,n,l)=>{let o=Qe(null,e,{method:"GET",responseType:"blob"});return o.onload=r=>{let s=r.getAllResponseHeaders(),p=Ki(s).name||Dt(e);t(ie("load",r.status,ht(r.response,p),s))},o.onerror=r=>{i(ie("error",r.status,r.statusText,r.getAllResponseHeaders()))},o.onheaders=r=>{l(ie("headers",r.status,null,r.getAllResponseHeaders()))},o.ontimeout=Ze(i),o.onprogress=a,o.onabort=n,o},qa=e=>(e.indexOf("//")===0&&(e=location.protocol+e),e.toLowerCase().replace("blob:","").replace(/([a-z])?:\/\//,"$1").split("/")[0]),Gs=e=>(e.indexOf(":")>-1||e.indexOf("//")>-1)&&qa(location.href)!==qa(e),Jt=e=>(...t)=>Xe(e)?e(...t):e,Us=e=>!Je(e.file),Li=(e,t)=>{clearTimeout(t.listUpdateTimeout),t.listUpdateTimeout=setTimeout(()=>{e("DID_UPDATE_ITEMS",{items:Pe(t.items)})},0)},$a=(e,...t)=>new Promise(i=>{if(!e)return i(!0);let a=e(...t);if(a==null)return i(!0);if(typeof a=="boolean")return i(a);typeof a.then=="function"&&a.then(i)}),Mi=(e,t)=>{e.items.sort((i,a)=>t(he(i),he(a)))},ye=(e,t)=>({query:i,success:a=()=>{},failure:n=()=>{},...l}={})=>{let o=Ke(e.items,i);if(!o){n({error:ie("error",0,"Item not found"),file:null});return}t(o,a,n,l||{})},Ws=(e,t,i)=>({ABORT_ALL:()=>{Pe(i.items).forEach(a=>{a.freeze(),a.abortLoad(),a.abortProcessing()})},DID_SET_FILES:({value:a=[]})=>{let n=a.map(o=>({source:o.source?o.source:o,options:o.options})),l=Pe(i.items);l.forEach(o=>{n.find(r=>r.source===o.source||r.source===o.file)||e("REMOVE_ITEM",{query:o,remove:!1})}),l=Pe(i.items),n.forEach((o,r)=>{l.find(s=>s.source===o.source||s.file===o.source)||e("ADD_ITEM",{...o,interactionMethod:Re.NONE,index:r})})},DID_UPDATE_ITEM_METADATA:({id:a,action:n,change:l})=>{l.silent||(clearTimeout(i.itemUpdateTimeout),i.itemUpdateTimeout=setTimeout(()=>{let o=ja(i.items,a);if(!t("IS_ASYNC")){Ae("SHOULD_PREPARE_OUTPUT",!1,{item:o,query:t,action:n,change:l}).then(c=>{let d=t("GET_BEFORE_PREPARE_FILE");d&&(c=d(o,c)),c&&e("REQUEST_PREPARE_OUTPUT",{query:a,item:o,success:m=>{e("DID_PREPARE_OUTPUT",{id:a,file:m})}},!0)});return}o.origin===re.LOCAL&&e("DID_LOAD_ITEM",{id:o.id,error:null,serverFileReference:o.source});let r=()=>{setTimeout(()=>{e("REQUEST_ITEM_PROCESSING",{query:a})},32)},s=c=>{o.revert(Pt(i.options.server.url,i.options.server.revert),t("GET_FORCE_REVERT")).then(c?r:()=>{}).catch(()=>{})},p=c=>{o.abortProcessing().then(c?r:()=>{})};if(o.status===U.PROCESSING_COMPLETE)return s(i.options.instantUpload);if(o.status===U.PROCESSING)return p(i.options.instantUpload);i.options.instantUpload&&r()},0))},MOVE_ITEM:({query:a,index:n})=>{let l=Ke(i.items,a);if(!l)return;let o=i.items.indexOf(l);n=Mn(n,0,i.items.length-1),o!==n&&i.items.splice(n,0,i.items.splice(o,1)[0])},SORT:({compare:a})=>{Mi(i,a),e("DID_SORT_ITEMS",{items:t("GET_ACTIVE_ITEMS")})},ADD_ITEMS:({items:a,index:n,interactionMethod:l,success:o=()=>{},failure:r=()=>{}})=>{let s=n;if(n===-1||typeof n>"u"){let u=t("GET_ITEM_INSERT_LOCATION"),g=t("GET_TOTAL_ITEMS");s=u==="before"?0:g}let p=t("GET_IGNORED_FILES"),c=u=>Je(u)?!p.includes(u.name.toLowerCase()):!ke(u),m=a.filter(c).map(u=>new Promise((g,f)=>{e("ADD_ITEM",{interactionMethod:l,source:u.source||u,success:g,failure:f,index:s++,options:u.options||{}})}));Promise.all(m).then(o).catch(r)},ADD_ITEM:({source:a,index:n=-1,interactionMethod:l,success:o=()=>{},failure:r=()=>{},options:s={}})=>{if(ke(a)){r({error:ie("error",0,"No source"),file:null});return}if(Je(a)&&i.options.ignoredFiles.includes(a.name.toLowerCase()))return;if(!Ts(i)){if(i.options.allowMultiple||!i.options.allowMultiple&&!i.options.allowReplace){let b=ie("warning",0,"Max files");e("DID_THROW_MAX_FILES",{source:a,error:b}),r({error:b,file:null});return}let I=Pe(i.items)[0];if(I.status===U.PROCESSING_COMPLETE||I.status===U.PROCESSING_REVERT_ERROR){let b=t("GET_FORCE_REVERT");if(I.revert(Pt(i.options.server.url,i.options.server.revert),b).then(()=>{b&&e("ADD_ITEM",{source:a,index:n,interactionMethod:l,success:o,failure:r,options:s})}).catch(()=>{}),b)return}e("REMOVE_ITEM",{query:I.id})}let p=s.type==="local"?re.LOCAL:s.type==="limbo"?re.LIMBO:re.INPUT,c=ks(p,p===re.INPUT?null:a,s.file);Object.keys(s.metadata||{}).forEach(I=>{c.setMetadata(I,s.metadata[I])}),tt("DID_CREATE_ITEM",c,{query:t,dispatch:e});let d=t("GET_ITEM_INSERT_LOCATION");i.options.itemInsertLocationFreedom||(n=d==="before"?-1:i.items.length),vs(i.items,c,n),Xe(d)&&a&&Mi(i,d);let m=c.id;c.on("init",()=>{e("DID_INIT_ITEM",{id:m})}),c.on("load-init",()=>{e("DID_START_ITEM_LOAD",{id:m})}),c.on("load-meta",()=>{e("DID_UPDATE_ITEM_META",{id:m})}),c.on("load-progress",I=>{e("DID_UPDATE_ITEM_LOAD_PROGRESS",{id:m,progress:I})}),c.on("load-request-error",I=>{let b=Jt(i.options.labelFileLoadError)(I);if(I.code>=400&&I.code<500){e("DID_THROW_ITEM_INVALID",{id:m,error:I,status:{main:b,sub:`${I.code} (${I.body})`}}),r({error:I,file:he(c)});return}e("DID_THROW_ITEM_LOAD_ERROR",{id:m,error:I,status:{main:b,sub:i.options.labelTapToRetry}})}),c.on("load-file-error",I=>{e("DID_THROW_ITEM_INVALID",{id:m,error:I.status,status:I.status}),r({error:I.status,file:he(c)})}),c.on("load-abort",()=>{e("REMOVE_ITEM",{query:m})}),c.on("load-skip",()=>{c.on("metadata-update",I=>{Je(c.file)&&e("DID_UPDATE_ITEM_METADATA",{id:m,change:I})}),e("COMPLETE_LOAD_ITEM",{query:m,item:c,data:{source:a,success:o}})}),c.on("load",()=>{let I=b=>{if(!b){e("REMOVE_ITEM",{query:m});return}c.on("metadata-update",T=>{e("DID_UPDATE_ITEM_METADATA",{id:m,change:T})}),Ae("SHOULD_PREPARE_OUTPUT",!1,{item:c,query:t}).then(T=>{let v=t("GET_BEFORE_PREPARE_FILE");v&&(T=v(c,T));let y=()=>{e("COMPLETE_LOAD_ITEM",{query:m,item:c,data:{source:a,success:o}}),Li(e,i)};if(T){e("REQUEST_PREPARE_OUTPUT",{query:m,item:c,success:E=>{e("DID_PREPARE_OUTPUT",{id:m,file:E}),y()}},!0);return}y()})};Ae("DID_LOAD_ITEM",c,{query:t,dispatch:e}).then(()=>{$a(t("GET_BEFORE_ADD_FILE"),he(c)).then(I)}).catch(b=>{if(!b||!b.error||!b.status)return I(!1);e("DID_THROW_ITEM_INVALID",{id:m,error:b.error,status:b.status})})}),c.on("process-start",()=>{e("DID_START_ITEM_PROCESSING",{id:m})}),c.on("process-progress",I=>{e("DID_UPDATE_ITEM_PROCESS_PROGRESS",{id:m,progress:I})}),c.on("process-error",I=>{e("DID_THROW_ITEM_PROCESSING_ERROR",{id:m,error:I,status:{main:Jt(i.options.labelFileProcessingError)(I),sub:i.options.labelTapToRetry}})}),c.on("process-revert-error",I=>{e("DID_THROW_ITEM_PROCESSING_REVERT_ERROR",{id:m,error:I,status:{main:Jt(i.options.labelFileProcessingRevertError)(I),sub:i.options.labelTapToRetry}})}),c.on("process-complete",I=>{e("DID_COMPLETE_ITEM_PROCESSING",{id:m,error:null,serverFileReference:I}),e("DID_DEFINE_VALUE",{id:m,value:I})}),c.on("process-abort",()=>{e("DID_ABORT_ITEM_PROCESSING",{id:m})}),c.on("process-revert",()=>{e("DID_REVERT_ITEM_PROCESSING",{id:m}),e("DID_DEFINE_VALUE",{id:m,value:null})}),e("DID_ADD_ITEM",{id:m,index:n,interactionMethod:l}),Li(e,i);let{url:u,load:g,restore:f,fetch:h}=i.options.server||{};c.load(a,zs(p===re.INPUT?ge(a)&&Gs(a)&&h?wi(u,h):Ya:p===re.LIMBO?wi(u,f):wi(u,g)),(I,b,T)=>{Ae("LOAD_FILE",I,{query:t}).then(b).catch(T)})},REQUEST_PREPARE_OUTPUT:({item:a,success:n,failure:l=()=>{}})=>{let o={error:ie("error",0,"Item not found"),file:null};if(a.archived)return l(o);Ae("PREPARE_OUTPUT",a.file,{query:t,item:a}).then(r=>{Ae("COMPLETE_PREPARE_OUTPUT",r,{query:t,item:a}).then(s=>{if(a.archived)return l(o);n(s)})})},COMPLETE_LOAD_ITEM:({item:a,data:n})=>{let{success:l,source:o}=n,r=t("GET_ITEM_INSERT_LOCATION");if(Xe(r)&&o&&Mi(i,r),e("DID_LOAD_ITEM",{id:a.id,error:null,serverFileReference:a.origin===re.INPUT?null:o}),l(he(a)),a.origin===re.LOCAL){e("DID_LOAD_LOCAL_ITEM",{id:a.id});return}if(a.origin===re.LIMBO){e("DID_COMPLETE_ITEM_PROCESSING",{id:a.id,error:null,serverFileReference:o}),e("DID_DEFINE_VALUE",{id:a.id,value:a.serverId||o});return}t("IS_ASYNC")&&i.options.instantUpload&&e("REQUEST_ITEM_PROCESSING",{query:a.id})},RETRY_ITEM_LOAD:ye(i,a=>{a.retryLoad()}),REQUEST_ITEM_PREPARE:ye(i,(a,n,l)=>{e("REQUEST_PREPARE_OUTPUT",{query:a.id,item:a,success:o=>{e("DID_PREPARE_OUTPUT",{id:a.id,file:o}),n({file:a,output:o})},failure:l},!0)}),REQUEST_ITEM_PROCESSING:ye(i,(a,n,l)=>{if(!(a.status===U.IDLE||a.status===U.PROCESSING_ERROR)){let r=()=>e("REQUEST_ITEM_PROCESSING",{query:a,success:n,failure:l}),s=()=>document.hidden?r():setTimeout(r,32);a.status===U.PROCESSING_COMPLETE||a.status===U.PROCESSING_REVERT_ERROR?a.revert(Pt(i.options.server.url,i.options.server.revert),t("GET_FORCE_REVERT")).then(s).catch(()=>{}):a.status===U.PROCESSING&&a.abortProcessing().then(s);return}a.status!==U.PROCESSING_QUEUED&&(a.requestProcessing(),e("DID_REQUEST_ITEM_PROCESSING",{id:a.id}),e("PROCESS_ITEM",{query:a,success:n,failure:l},!0))}),PROCESS_ITEM:ye(i,(a,n,l)=>{let o=t("GET_MAX_PARALLEL_UPLOADS");if(t("GET_ITEMS_BY_STATUS",U.PROCESSING).length===o){i.processingQueue.push({id:a.id,success:n,failure:l});return}if(a.status===U.PROCESSING)return;let s=()=>{let c=i.processingQueue.shift();if(!c)return;let{id:d,success:m,failure:u}=c,g=Ke(i.items,d);if(!g||g.archived){s();return}e("PROCESS_ITEM",{query:d,success:m,failure:u},!0)};a.onOnce("process-complete",()=>{n(he(a)),s();let c=i.options.server;if(i.options.instantUpload&&a.origin===re.LOCAL&&Xe(c.remove)){let u=()=>{};a.origin=re.LIMBO,i.options.server.remove(a.source,u,u)}t("GET_ITEMS_BY_STATUS",U.PROCESSING_COMPLETE).length===i.items.length&&e("DID_COMPLETE_ITEM_PROCESSING_ALL")}),a.onOnce("process-error",c=>{l({error:c,file:he(a)}),s()});let p=i.options;a.process(Bs(Ds(p.server.url,p.server.process,p.name,{chunkTransferId:a.transferId,chunkServer:p.server.patch,chunkUploads:p.chunkUploads,chunkForce:p.chunkForce,chunkSize:p.chunkSize,chunkRetryDelays:p.chunkRetryDelays}),{allowMinimumUploadDuration:t("GET_ALLOW_MINIMUM_UPLOAD_DURATION")}),(c,d,m)=>{Ae("PREPARE_OUTPUT",c,{query:t,item:a}).then(u=>{e("DID_PREPARE_OUTPUT",{id:a.id,file:u}),d(u)}).catch(m)})}),RETRY_ITEM_PROCESSING:ye(i,a=>{e("REQUEST_ITEM_PROCESSING",{query:a})}),REQUEST_REMOVE_ITEM:ye(i,a=>{$a(t("GET_BEFORE_REMOVE_FILE"),he(a)).then(n=>{n&&e("REMOVE_ITEM",{query:a})})}),RELEASE_ITEM:ye(i,a=>{a.release()}),REMOVE_ITEM:ye(i,(a,n,l,o)=>{let r=()=>{let p=a.id;ja(i.items,p).archive(),e("DID_REMOVE_ITEM",{error:null,id:p,item:a}),Li(e,i),n(he(a))},s=i.options.server;a.origin===re.LOCAL&&s&&Xe(s.remove)&&o.remove!==!1?(e("DID_START_ITEM_REMOVE",{id:a.id}),s.remove(a.source,()=>r(),p=>{e("DID_THROW_ITEM_REMOVE_ERROR",{id:a.id,error:ie("error",0,p,null),status:{main:Jt(i.options.labelFileRemoveError)(p),sub:i.options.labelTapToRetry}})})):((o.revert&&a.origin!==re.LOCAL&&a.serverId!==null||i.options.chunkUploads&&a.file.size>i.options.chunkSize||i.options.chunkUploads&&i.options.chunkForce)&&a.revert(Pt(i.options.server.url,i.options.server.revert),t("GET_FORCE_REVERT")),r())}),ABORT_ITEM_LOAD:ye(i,a=>{a.abortLoad()}),ABORT_ITEM_PROCESSING:ye(i,a=>{if(a.serverId){e("REVERT_ITEM_PROCESSING",{id:a.id});return}a.abortProcessing().then(()=>{i.options.instantUpload&&e("REMOVE_ITEM",{query:a.id})})}),REQUEST_REVERT_ITEM_PROCESSING:ye(i,a=>{if(!i.options.instantUpload){e("REVERT_ITEM_PROCESSING",{query:a});return}let n=r=>{r&&e("REVERT_ITEM_PROCESSING",{query:a})},l=t("GET_BEFORE_REMOVE_FILE");if(!l)return n(!0);let o=l(he(a));if(o==null)return n(!0);if(typeof o=="boolean")return n(o);typeof o.then=="function"&&o.then(n)}),REVERT_ITEM_PROCESSING:ye(i,a=>{a.revert(Pt(i.options.server.url,i.options.server.revert),t("GET_FORCE_REVERT")).then(()=>{(i.options.instantUpload||Us(a))&&e("REMOVE_ITEM",{query:a.id})}).catch(()=>{})}),SET_OPTIONS:({options:a})=>{let n=Object.keys(a),l=Hs.filter(r=>n.includes(r));[...l,...Object.keys(a).filter(r=>!l.includes(r))].forEach(r=>{e(`SET_${pi(r,"_").toUpperCase()}`,{value:a[r]})})}}),Hs=["server"],Qi=e=>e,Ve=e=>document.createElement(e),ae=(e,t)=>{let i=e.childNodes[0];i?t!==i.nodeValue&&(i.nodeValue=t):(i=document.createTextNode(t),e.appendChild(i))},Xa=(e,t,i,a)=>{let n=(a%360-90)*Math.PI/180;return{x:e+i*Math.cos(n),y:t+i*Math.sin(n)}},js=(e,t,i,a,n,l)=>{let o=Xa(e,t,i,n),r=Xa(e,t,i,a);return["M",o.x,o.y,"A",i,i,0,l,0,r.x,r.y].join(" ")},Ys=(e,t,i,a,n)=>{let l=1;return n>a&&n-a<=.5&&(l=0),a>n&&a-n>=.5&&(l=0),js(e,t,i,Math.min(.9999,a)*360,Math.min(.9999,n)*360,l)},qs=({root:e,props:t})=>{t.spin=!1,t.progress=0,t.opacity=0;let i=li("svg");e.ref.path=li("path",{"stroke-width":2,"stroke-linecap":"round"}),i.appendChild(e.ref.path),e.ref.svg=i,e.appendChild(i)},$s=({root:e,props:t})=>{if(t.opacity===0)return;t.align&&(e.element.dataset.align=t.align);let i=parseInt(se(e.ref.path,"stroke-width"),10),a=e.rect.element.width*.5,n=0,l=0;t.spin?(n=0,l=.5):(n=0,l=t.progress);let o=Ys(a,a,a-i,n,l);se(e.ref.path,"d",o),se(e.ref.path,"stroke-opacity",t.spin||t.progress>0?1:0)},Ka=ne({tag:"div",name:"progress-indicator",ignoreRectUpdate:!0,ignoreRect:!0,create:qs,write:$s,mixins:{apis:["progress","spin","align"],styles:["opacity"],animations:{opacity:{type:"tween",duration:500},progress:{type:"spring",stiffness:.95,damping:.65,mass:10}}}}),Xs=({root:e,props:t})=>{e.element.innerHTML=(t.icon||"")+`${t.label} `,t.isDisabled=!1},Ks=({root:e,props:t})=>{let{isDisabled:i}=t,a=e.query("GET_DISABLED")||t.opacity===0;a&&!i?(t.isDisabled=!0,se(e.element,"disabled","disabled")):!a&&i&&(t.isDisabled=!1,e.element.removeAttribute("disabled"))},Cn=ne({tag:"button",attributes:{type:"button"},ignoreRect:!0,ignoreRectUpdate:!0,name:"file-action-button",mixins:{apis:["label"],styles:["translateX","translateY","scaleX","scaleY","opacity"],animations:{scaleX:"spring",scaleY:"spring",translateX:"spring",translateY:"spring",opacity:{type:"tween",duration:250}},listeners:!0},create:Xs,write:Ks}),Bn=(e,t=".",i=1e3,a={})=>{let{labelBytes:n="bytes",labelKilobytes:l="KB",labelMegabytes:o="MB",labelGigabytes:r="GB"}=a;e=Math.round(Math.abs(e));let s=i,p=i*i,c=i*i*i;return ee.toFixed(t).split(".").filter(a=>a!=="0").join(i),Qs=({root:e,props:t})=>{let i=Ve("span");i.className="filepond--file-info-main",se(i,"aria-hidden","true"),e.appendChild(i),e.ref.fileName=i;let a=Ve("span");a.className="filepond--file-info-sub",e.appendChild(a),e.ref.fileSize=a,ae(a,e.query("GET_LABEL_FILE_WAITING_FOR_SIZE")),ae(i,Qi(e.query("GET_ITEM_NAME",t.id)))},Di=({root:e,props:t})=>{ae(e.ref.fileSize,Bn(e.query("GET_ITEM_SIZE",t.id),".",e.query("GET_FILE_SIZE_BASE"),e.query("GET_FILE_SIZE_LABELS",e.query))),ae(e.ref.fileName,Qi(e.query("GET_ITEM_NAME",t.id)))},Za=({root:e,props:t})=>{if(bt(e.query("GET_ITEM_SIZE",t.id))){Di({root:e,props:t});return}ae(e.ref.fileSize,e.query("GET_LABEL_FILE_SIZE_NOT_AVAILABLE"))},Zs=ne({name:"file-info",ignoreRect:!0,ignoreRectUpdate:!0,write:fe({DID_LOAD_ITEM:Di,DID_UPDATE_ITEM_META:Di,DID_THROW_ITEM_LOAD_ERROR:Za,DID_THROW_ITEM_INVALID:Za}),didCreateView:e=>{tt("CREATE_VIEW",{...e,view:e})},create:Qs,mixins:{styles:["translateX","translateY"],animations:{translateX:"spring",translateY:"spring"}}}),Nn=e=>Math.round(e*100),Js=({root:e})=>{let t=Ve("span");t.className="filepond--file-status-main",e.appendChild(t),e.ref.main=t;let i=Ve("span");i.className="filepond--file-status-sub",e.appendChild(i),e.ref.sub=i,kn({root:e,action:{progress:null}})},kn=({root:e,action:t})=>{let i=t.progress===null?e.query("GET_LABEL_FILE_LOADING"):`${e.query("GET_LABEL_FILE_LOADING")} ${Nn(t.progress)}%`;ae(e.ref.main,i),ae(e.ref.sub,e.query("GET_LABEL_TAP_TO_CANCEL"))},ec=({root:e,action:t})=>{let i=t.progress===null?e.query("GET_LABEL_FILE_PROCESSING"):`${e.query("GET_LABEL_FILE_PROCESSING")} ${Nn(t.progress)}%`;ae(e.ref.main,i),ae(e.ref.sub,e.query("GET_LABEL_TAP_TO_CANCEL"))},tc=({root:e})=>{ae(e.ref.main,e.query("GET_LABEL_FILE_PROCESSING")),ae(e.ref.sub,e.query("GET_LABEL_TAP_TO_CANCEL"))},ic=({root:e})=>{ae(e.ref.main,e.query("GET_LABEL_FILE_PROCESSING_ABORTED")),ae(e.ref.sub,e.query("GET_LABEL_TAP_TO_RETRY"))},ac=({root:e})=>{ae(e.ref.main,e.query("GET_LABEL_FILE_PROCESSING_COMPLETE")),ae(e.ref.sub,e.query("GET_LABEL_TAP_TO_UNDO"))},Ja=({root:e})=>{ae(e.ref.main,""),ae(e.ref.sub,"")},zt=({root:e,action:t})=>{ae(e.ref.main,t.status.main),ae(e.ref.sub,t.status.sub)},nc=ne({name:"file-status",ignoreRect:!0,ignoreRectUpdate:!0,write:fe({DID_LOAD_ITEM:Ja,DID_REVERT_ITEM_PROCESSING:Ja,DID_REQUEST_ITEM_PROCESSING:tc,DID_ABORT_ITEM_PROCESSING:ic,DID_COMPLETE_ITEM_PROCESSING:ac,DID_UPDATE_ITEM_PROCESS_PROGRESS:ec,DID_UPDATE_ITEM_LOAD_PROGRESS:kn,DID_THROW_ITEM_LOAD_ERROR:zt,DID_THROW_ITEM_INVALID:zt,DID_THROW_ITEM_PROCESSING_ERROR:zt,DID_THROW_ITEM_PROCESSING_REVERT_ERROR:zt,DID_THROW_ITEM_REMOVE_ERROR:zt}),didCreateView:e=>{tt("CREATE_VIEW",{...e,view:e})},create:Js,mixins:{styles:["translateX","translateY","opacity"],animations:{opacity:{type:"tween",duration:250},translateX:"spring",translateY:"spring"}}}),Ci={AbortItemLoad:{label:"GET_LABEL_BUTTON_ABORT_ITEM_LOAD",action:"ABORT_ITEM_LOAD",className:"filepond--action-abort-item-load",align:"LOAD_INDICATOR_POSITION"},RetryItemLoad:{label:"GET_LABEL_BUTTON_RETRY_ITEM_LOAD",action:"RETRY_ITEM_LOAD",icon:"GET_ICON_RETRY",className:"filepond--action-retry-item-load",align:"BUTTON_PROCESS_ITEM_POSITION"},RemoveItem:{label:"GET_LABEL_BUTTON_REMOVE_ITEM",action:"REQUEST_REMOVE_ITEM",icon:"GET_ICON_REMOVE",className:"filepond--action-remove-item",align:"BUTTON_REMOVE_ITEM_POSITION"},ProcessItem:{label:"GET_LABEL_BUTTON_PROCESS_ITEM",action:"REQUEST_ITEM_PROCESSING",icon:"GET_ICON_PROCESS",className:"filepond--action-process-item",align:"BUTTON_PROCESS_ITEM_POSITION"},AbortItemProcessing:{label:"GET_LABEL_BUTTON_ABORT_ITEM_PROCESSING",action:"ABORT_ITEM_PROCESSING",className:"filepond--action-abort-item-processing",align:"BUTTON_PROCESS_ITEM_POSITION"},RetryItemProcessing:{label:"GET_LABEL_BUTTON_RETRY_ITEM_PROCESSING",action:"RETRY_ITEM_PROCESSING",icon:"GET_ICON_RETRY",className:"filepond--action-retry-item-processing",align:"BUTTON_PROCESS_ITEM_POSITION"},RevertItemProcessing:{label:"GET_LABEL_BUTTON_UNDO_ITEM_PROCESSING",action:"REQUEST_REVERT_ITEM_PROCESSING",icon:"GET_ICON_UNDO",className:"filepond--action-revert-item-processing",align:"BUTTON_PROCESS_ITEM_POSITION"}},Bi=[];te(Ci,e=>{Bi.push(e)});var Ie=e=>{if(Ni(e)==="right")return 0;let t=e.ref.buttonRemoveItem.rect.element;return t.hidden?null:t.width+t.left},lc=e=>e.ref.buttonAbortItemLoad.rect.element.width,ei=e=>Math.floor(e.ref.buttonRemoveItem.rect.element.height/4),oc=e=>Math.floor(e.ref.buttonRemoveItem.rect.element.left/2),rc=e=>e.query("GET_STYLE_LOAD_INDICATOR_POSITION"),sc=e=>e.query("GET_STYLE_PROGRESS_INDICATOR_POSITION"),Ni=e=>e.query("GET_STYLE_BUTTON_REMOVE_ITEM_POSITION"),cc={buttonAbortItemLoad:{opacity:0},buttonRetryItemLoad:{opacity:0},buttonRemoveItem:{opacity:0},buttonProcessItem:{opacity:0},buttonAbortItemProcessing:{opacity:0},buttonRetryItemProcessing:{opacity:0},buttonRevertItemProcessing:{opacity:0},loadProgressIndicator:{opacity:0,align:rc},processProgressIndicator:{opacity:0,align:sc},processingCompleteIndicator:{opacity:0,scaleX:.75,scaleY:.75},info:{translateX:0,translateY:0,opacity:0},status:{translateX:0,translateY:0,opacity:0}},en={buttonRemoveItem:{opacity:1},buttonProcessItem:{opacity:1},info:{translateX:Ie},status:{translateX:Ie}},Ai={buttonAbortItemProcessing:{opacity:1},processProgressIndicator:{opacity:1},status:{opacity:1}},mt={DID_THROW_ITEM_INVALID:{buttonRemoveItem:{opacity:1},info:{translateX:Ie},status:{translateX:Ie,opacity:1}},DID_START_ITEM_LOAD:{buttonAbortItemLoad:{opacity:1},loadProgressIndicator:{opacity:1},status:{opacity:1}},DID_THROW_ITEM_LOAD_ERROR:{buttonRetryItemLoad:{opacity:1},buttonRemoveItem:{opacity:1},info:{translateX:Ie},status:{opacity:1}},DID_START_ITEM_REMOVE:{processProgressIndicator:{opacity:1,align:Ni},info:{translateX:Ie},status:{opacity:0}},DID_THROW_ITEM_REMOVE_ERROR:{processProgressIndicator:{opacity:0,align:Ni},buttonRemoveItem:{opacity:1},info:{translateX:Ie},status:{opacity:1,translateX:Ie}},DID_LOAD_ITEM:en,DID_LOAD_LOCAL_ITEM:{buttonRemoveItem:{opacity:1},info:{translateX:Ie},status:{translateX:Ie}},DID_START_ITEM_PROCESSING:Ai,DID_REQUEST_ITEM_PROCESSING:Ai,DID_UPDATE_ITEM_PROCESS_PROGRESS:Ai,DID_COMPLETE_ITEM_PROCESSING:{buttonRevertItemProcessing:{opacity:1},info:{opacity:1},status:{opacity:1}},DID_THROW_ITEM_PROCESSING_ERROR:{buttonRemoveItem:{opacity:1},buttonRetryItemProcessing:{opacity:1},status:{opacity:1},info:{translateX:Ie}},DID_THROW_ITEM_PROCESSING_REVERT_ERROR:{buttonRevertItemProcessing:{opacity:1},status:{opacity:1},info:{opacity:1}},DID_ABORT_ITEM_PROCESSING:{buttonRemoveItem:{opacity:1},buttonProcessItem:{opacity:1},info:{translateX:Ie},status:{opacity:1}},DID_REVERT_ITEM_PROCESSING:en},dc=ne({create:({root:e})=>{e.element.innerHTML=e.query("GET_ICON_DONE")},name:"processing-complete-indicator",ignoreRect:!0,mixins:{styles:["scaleX","scaleY","opacity"],animations:{scaleX:"spring",scaleY:"spring",opacity:{type:"tween",duration:250}}}}),pc=({root:e,props:t})=>{let i=Object.keys(Ci).reduce((g,f)=>(g[f]={...Ci[f]},g),{}),{id:a}=t,n=e.query("GET_ALLOW_REVERT"),l=e.query("GET_ALLOW_REMOVE"),o=e.query("GET_ALLOW_PROCESS"),r=e.query("GET_INSTANT_UPLOAD"),s=e.query("IS_ASYNC"),p=e.query("GET_STYLE_BUTTON_REMOVE_ITEM_ALIGN"),c;s?o&&!n?c=g=>!/RevertItemProcessing/.test(g):!o&&n?c=g=>!/ProcessItem|RetryItemProcessing|AbortItemProcessing/.test(g):!o&&!n&&(c=g=>!/Process/.test(g)):c=g=>!/Process/.test(g);let d=c?Bi.filter(c):Bi.concat();if(r&&n&&(i.RevertItemProcessing.label="GET_LABEL_BUTTON_REMOVE_ITEM",i.RevertItemProcessing.icon="GET_ICON_REMOVE"),s&&!n){let g=mt.DID_COMPLETE_ITEM_PROCESSING;g.info.translateX=oc,g.info.translateY=ei,g.status.translateY=ei,g.processingCompleteIndicator={opacity:1,scaleX:1,scaleY:1}}if(s&&!o&&(["DID_START_ITEM_PROCESSING","DID_REQUEST_ITEM_PROCESSING","DID_UPDATE_ITEM_PROCESS_PROGRESS","DID_THROW_ITEM_PROCESSING_ERROR"].forEach(g=>{mt[g].status.translateY=ei}),mt.DID_THROW_ITEM_PROCESSING_ERROR.status.translateX=lc),p&&n){i.RevertItemProcessing.align="BUTTON_REMOVE_ITEM_POSITION";let g=mt.DID_COMPLETE_ITEM_PROCESSING;g.info.translateX=Ie,g.status.translateY=ei,g.processingCompleteIndicator={opacity:1,scaleX:1,scaleY:1}}l||(i.RemoveItem.disabled=!0),te(i,(g,f)=>{let h=e.createChildView(Cn,{label:e.query(f.label),icon:e.query(f.icon),opacity:0});d.includes(g)&&e.appendChildView(h),f.disabled&&(h.element.setAttribute("disabled","disabled"),h.element.setAttribute("hidden","hidden")),h.element.dataset.align=e.query(`GET_STYLE_${f.align}`),h.element.classList.add(f.className),h.on("click",I=>{I.stopPropagation(),!f.disabled&&e.dispatch(f.action,{query:a})}),e.ref[`button${g}`]=h}),e.ref.processingCompleteIndicator=e.appendChildView(e.createChildView(dc)),e.ref.processingCompleteIndicator.element.dataset.align=e.query("GET_STYLE_BUTTON_PROCESS_ITEM_POSITION"),e.ref.info=e.appendChildView(e.createChildView(Zs,{id:a})),e.ref.status=e.appendChildView(e.createChildView(nc,{id:a}));let m=e.appendChildView(e.createChildView(Ka,{opacity:0,align:e.query("GET_STYLE_LOAD_INDICATOR_POSITION")}));m.element.classList.add("filepond--load-indicator"),e.ref.loadProgressIndicator=m;let u=e.appendChildView(e.createChildView(Ka,{opacity:0,align:e.query("GET_STYLE_PROGRESS_INDICATOR_POSITION")}));u.element.classList.add("filepond--process-indicator"),e.ref.processProgressIndicator=u,e.ref.activeStyles=[]},mc=({root:e,actions:t,props:i})=>{uc({root:e,actions:t,props:i});let a=t.concat().filter(n=>/^DID_/.test(n.type)).reverse().find(n=>mt[n.type]);if(a){e.ref.activeStyles=[];let n=mt[a.type];te(cc,(l,o)=>{let r=e.ref[l];te(o,(s,p)=>{let c=n[l]&&typeof n[l][s]<"u"?n[l][s]:p;e.ref.activeStyles.push({control:r,key:s,value:c})})})}e.ref.activeStyles.forEach(({control:n,key:l,value:o})=>{n[l]=typeof o=="function"?o(e):o})},uc=fe({DID_SET_LABEL_BUTTON_ABORT_ITEM_PROCESSING:({root:e,action:t})=>{e.ref.buttonAbortItemProcessing.label=t.value},DID_SET_LABEL_BUTTON_ABORT_ITEM_LOAD:({root:e,action:t})=>{e.ref.buttonAbortItemLoad.label=t.value},DID_SET_LABEL_BUTTON_ABORT_ITEM_REMOVAL:({root:e,action:t})=>{e.ref.buttonAbortItemRemoval.label=t.value},DID_REQUEST_ITEM_PROCESSING:({root:e})=>{e.ref.processProgressIndicator.spin=!0,e.ref.processProgressIndicator.progress=0},DID_START_ITEM_LOAD:({root:e})=>{e.ref.loadProgressIndicator.spin=!0,e.ref.loadProgressIndicator.progress=0},DID_START_ITEM_REMOVE:({root:e})=>{e.ref.processProgressIndicator.spin=!0,e.ref.processProgressIndicator.progress=0},DID_UPDATE_ITEM_LOAD_PROGRESS:({root:e,action:t})=>{e.ref.loadProgressIndicator.spin=!1,e.ref.loadProgressIndicator.progress=t.progress},DID_UPDATE_ITEM_PROCESS_PROGRESS:({root:e,action:t})=>{e.ref.processProgressIndicator.spin=!1,e.ref.processProgressIndicator.progress=t.progress}}),gc=ne({create:pc,write:mc,didCreateView:e=>{tt("CREATE_VIEW",{...e,view:e})},name:"file"}),fc=({root:e,props:t})=>{e.ref.fileName=Ve("legend"),e.appendChild(e.ref.fileName),e.ref.file=e.appendChildView(e.createChildView(gc,{id:t.id})),e.ref.data=!1},hc=({root:e,props:t})=>{ae(e.ref.fileName,Qi(e.query("GET_ITEM_NAME",t.id)))},bc=ne({create:fc,ignoreRect:!0,write:fe({DID_LOAD_ITEM:hc}),didCreateView:e=>{tt("CREATE_VIEW",{...e,view:e})},tag:"fieldset",name:"file-wrapper"}),tn={type:"spring",damping:.6,mass:7},Ec=({root:e,props:t})=>{[{name:"top"},{name:"center",props:{translateY:null,scaleY:null},mixins:{animations:{scaleY:tn},styles:["translateY","scaleY"]}},{name:"bottom",props:{translateY:null},mixins:{animations:{translateY:tn},styles:["translateY"]}}].forEach(i=>{Tc(e,i,t.name)}),e.element.classList.add(`filepond--${t.name}`),e.ref.scalable=null},Tc=(e,t,i)=>{let a=ne({name:`panel-${t.name} filepond--${i}`,mixins:t.mixins,ignoreRectUpdate:!0}),n=e.createChildView(a,t.props);e.ref[t.name]=e.appendChildView(n)},Ic=({root:e,props:t})=>{if((e.ref.scalable===null||t.scalable!==e.ref.scalable)&&(e.ref.scalable=In(t.scalable)?t.scalable:!0,e.element.dataset.scalable=e.ref.scalable),!t.height)return;let i=e.ref.top.rect.element,a=e.ref.bottom.rect.element,n=Math.max(i.height+a.height,t.height);e.ref.center.translateY=i.height,e.ref.center.scaleY=(n-i.height-a.height)/100,e.ref.bottom.translateY=n-a.height},Vn=ne({name:"panel",read:({root:e,props:t})=>t.heightCurrent=e.ref.bottom.translateY,write:Ic,create:Ec,ignoreRect:!0,mixins:{apis:["height","heightCurrent","scalable"]}}),vc=e=>{let t=e.map(a=>a.id),i;return{setIndex:a=>{i=a},getIndex:()=>i,getItemIndex:a=>t.indexOf(a.id)}},an={type:"spring",stiffness:.75,damping:.45,mass:10},nn="spring",ln={DID_START_ITEM_LOAD:"busy",DID_UPDATE_ITEM_LOAD_PROGRESS:"loading",DID_THROW_ITEM_INVALID:"load-invalid",DID_THROW_ITEM_LOAD_ERROR:"load-error",DID_LOAD_ITEM:"idle",DID_THROW_ITEM_REMOVE_ERROR:"remove-error",DID_START_ITEM_REMOVE:"busy",DID_START_ITEM_PROCESSING:"busy processing",DID_REQUEST_ITEM_PROCESSING:"busy processing",DID_UPDATE_ITEM_PROCESS_PROGRESS:"processing",DID_COMPLETE_ITEM_PROCESSING:"processing-complete",DID_THROW_ITEM_PROCESSING_ERROR:"processing-error",DID_THROW_ITEM_PROCESSING_REVERT_ERROR:"processing-revert-error",DID_ABORT_ITEM_PROCESSING:"cancelled",DID_REVERT_ITEM_PROCESSING:"idle"},xc=({root:e,props:t})=>{if(e.ref.handleClick=a=>e.dispatch("DID_ACTIVATE_ITEM",{id:t.id}),e.element.id=`filepond--item-${t.id}`,e.element.addEventListener("click",e.ref.handleClick),e.ref.container=e.appendChildView(e.createChildView(bc,{id:t.id})),e.ref.panel=e.appendChildView(e.createChildView(Vn,{name:"item-panel"})),e.ref.panel.height=null,t.markedForRemoval=!1,!e.query("GET_ALLOW_REORDER"))return;e.element.dataset.dragState="idle";let i=a=>{if(!a.isPrimary)return;let n=!1,l={x:a.pageX,y:a.pageY};t.dragOrigin={x:e.translateX,y:e.translateY},t.dragCenter={x:a.offsetX,y:a.offsetY};let o=vc(e.query("GET_ACTIVE_ITEMS"));e.dispatch("DID_GRAB_ITEM",{id:t.id,dragState:o});let r=d=>{if(!d.isPrimary)return;d.stopPropagation(),d.preventDefault(),t.dragOffset={x:d.pageX-l.x,y:d.pageY-l.y},t.dragOffset.x*t.dragOffset.x+t.dragOffset.y*t.dragOffset.y>16&&!n&&(n=!0,e.element.removeEventListener("click",e.ref.handleClick)),e.dispatch("DID_DRAG_ITEM",{id:t.id,dragState:o})},s=d=>{d.isPrimary&&(t.dragOffset={x:d.pageX-l.x,y:d.pageY-l.y},c())},p=()=>{c()},c=()=>{document.removeEventListener("pointercancel",p),document.removeEventListener("pointermove",r),document.removeEventListener("pointerup",s),e.dispatch("DID_DROP_ITEM",{id:t.id,dragState:o}),n&&setTimeout(()=>e.element.addEventListener("click",e.ref.handleClick),0)};document.addEventListener("pointercancel",p),document.addEventListener("pointermove",r),document.addEventListener("pointerup",s)};e.element.addEventListener("pointerdown",i)},yc=fe({DID_UPDATE_PANEL_HEIGHT:({root:e,action:t})=>{e.height=t.height}}),Rc=fe({DID_GRAB_ITEM:({root:e,props:t})=>{t.dragOrigin={x:e.translateX,y:e.translateY}},DID_DRAG_ITEM:({root:e})=>{e.element.dataset.dragState="drag"},DID_DROP_ITEM:({root:e,props:t})=>{t.dragOffset=null,t.dragOrigin=null,e.element.dataset.dragState="drop"}},({root:e,actions:t,props:i,shouldOptimize:a})=>{e.element.dataset.dragState==="drop"&&e.scaleX<=1&&(e.element.dataset.dragState="idle");let n=t.concat().filter(o=>/^DID_/.test(o.type)).reverse().find(o=>ln[o.type]);n&&n.type!==i.currentState&&(i.currentState=n.type,e.element.dataset.filepondItemState=ln[i.currentState]||"");let l=e.query("GET_ITEM_PANEL_ASPECT_RATIO")||e.query("GET_PANEL_ASPECT_RATIO");l?a||(e.height=e.rect.element.width*l):(yc({root:e,actions:t,props:i}),!e.height&&e.ref.container.rect.element.height>0&&(e.height=e.ref.container.rect.element.height)),a&&(e.ref.panel.height=null),e.ref.panel.height=e.height}),Sc=ne({create:xc,write:Rc,destroy:({root:e,props:t})=>{e.element.removeEventListener("click",e.ref.handleClick),e.dispatch("RELEASE_ITEM",{query:t.id})},tag:"li",name:"item",mixins:{apis:["id","interactionMethod","markedForRemoval","spawnDate","dragCenter","dragOrigin","dragOffset"],styles:["translateX","translateY","scaleX","scaleY","opacity","height"],animations:{scaleX:nn,scaleY:nn,translateX:an,translateY:an,opacity:{type:"tween",duration:150}}}}),Zi=(e,t)=>Math.max(1,Math.floor((e+1)/t)),Ji=(e,t,i)=>{if(!i)return;let a=e.rect.element.width,n=t.length,l=null;if(n===0||i.topb){if(i.left{se(e.element,"role","list"),e.ref.lastItemSpanwDate=Date.now()},wc=({root:e,action:t})=>{let{id:i,index:a,interactionMethod:n}=t;e.ref.addIndex=a;let l=Date.now(),o=l,r=1;if(n!==Re.NONE){r=0;let s=e.query("GET_ITEM_INSERT_INTERVAL"),p=l-e.ref.lastItemSpanwDate;o=p{e.dragOffset?(e.translateX=null,e.translateY=null,e.translateX=e.dragOrigin.x+e.dragOffset.x,e.translateY=e.dragOrigin.y+e.dragOffset.y,e.scaleX=1.025,e.scaleY=1.025):(e.translateX=t,e.translateY=i,Date.now()>e.spawnDate&&(e.opacity===0&&Lc(e,t,i,a,n),e.scaleX=1,e.scaleY=1,e.opacity=1))},Lc=(e,t,i,a,n)=>{e.interactionMethod===Re.NONE?(e.translateX=null,e.translateX=t,e.translateY=null,e.translateY=i):e.interactionMethod===Re.DROP?(e.translateX=null,e.translateX=t-a*20,e.translateY=null,e.translateY=i-n*10,e.scaleX=.8,e.scaleY=.8):e.interactionMethod===Re.BROWSE?(e.translateY=null,e.translateY=i-30):e.interactionMethod===Re.API&&(e.translateX=null,e.translateX=t-30,e.translateY=null)},Mc=({root:e,action:t})=>{let{id:i}=t,a=e.childViews.find(n=>n.id===i);a&&(a.scaleX=.9,a.scaleY=.9,a.opacity=0,a.markedForRemoval=!0)},Pi=e=>e.rect.element.height+e.rect.element.marginBottom*.5+e.rect.element.marginTop*.5,Ac=e=>e.rect.element.width+e.rect.element.marginLeft*.5+e.rect.element.marginRight*.5,Pc=({root:e,action:t})=>{let{id:i,dragState:a}=t,n=e.query("GET_ITEM",{id:i}),l=e.childViews.find(h=>h.id===i),o=e.childViews.length,r=a.getItemIndex(n);if(!l)return;let s={x:l.dragOrigin.x+l.dragOffset.x+l.dragCenter.x,y:l.dragOrigin.y+l.dragOffset.y+l.dragCenter.y},p=Pi(l),c=Ac(l),d=Math.floor(e.rect.outer.width/c);d>o&&(d=o);let m=Math.floor(o/d+1);ti.setHeight=p*m,ti.setWidth=c*d;var u={y:Math.floor(s.y/p),x:Math.floor(s.x/c),getGridIndex:function(){return s.y>ti.getHeight||s.y<0||s.x>ti.getWidth||s.x<0?r:this.y*d+this.x},getColIndex:function(){let I=e.query("GET_ACTIVE_ITEMS"),b=e.childViews.filter(P=>P.rect.element.height),T=I.map(P=>b.find(A=>A.id===P.id)),v=T.findIndex(P=>P===l),y=Pi(l),E=T.length,_=E,x=0,R=0,z=0;for(let P=0;PP){if(s.y1?u.getGridIndex():u.getColIndex();e.dispatch("MOVE_ITEM",{query:l,index:g});let f=a.getIndex();if(f===void 0||f!==g){if(a.setIndex(g),f===void 0)return;e.dispatch("DID_REORDER_ITEMS",{items:e.query("GET_ACTIVE_ITEMS"),origin:r,target:g})}},zc=fe({DID_ADD_ITEM:wc,DID_REMOVE_ITEM:Mc,DID_DRAG_ITEM:Pc}),Oc=({root:e,props:t,actions:i,shouldOptimize:a})=>{zc({root:e,props:t,actions:i});let{dragCoordinates:n}=t,l=e.rect.element.width,o=e.childViews.filter(T=>T.rect.element.height),r=e.query("GET_ACTIVE_ITEMS").map(T=>o.find(v=>v.id===T.id)).filter(T=>T),s=n?Ji(e,r,n):null,p=e.ref.addIndex||null;e.ref.addIndex=null;let c=0,d=0,m=0;if(r.length===0)return;let u=r[0].rect.element,g=u.marginTop+u.marginBottom,f=u.marginLeft+u.marginRight,h=u.width+f,I=u.height+g,b=Zi(l,h);if(b===1){let T=0,v=0;r.forEach((y,E)=>{if(s){let R=E-s;R===-2?v=-g*.25:R===-1?v=-g*.75:R===0?v=g*.75:R===1?v=g*.25:v=0}a&&(y.translateX=null,y.translateY=null),y.markedForRemoval||on(y,0,T+v);let x=(y.rect.element.height+g)*(y.markedForRemoval?y.opacity:1);T+=x})}else{let T=0,v=0;r.forEach((y,E)=>{E===s&&(c=1),E===p&&(m+=1),y.markedForRemoval&&y.opacity<.5&&(d-=1);let _=E+m+c+d,x=_%b,R=Math.floor(_/b),z=x*h,P=R*I,A=Math.sign(z-T),B=Math.sign(P-v);T=z,v=P,!y.markedForRemoval&&(a&&(y.translateX=null,y.translateY=null),on(y,z,P,A,B))})}},Fc=(e,t)=>t.filter(i=>i.data&&i.data.id?e.id===i.data.id:!0),Dc=ne({create:_c,write:Oc,tag:"ul",name:"list",didWriteView:({root:e})=>{e.childViews.filter(t=>t.markedForRemoval&&t.opacity===0&&t.resting).forEach(t=>{t._destroy(),e.removeChildView(t)})},filterFrameActionsForChild:Fc,mixins:{apis:["dragCoordinates"]}}),Cc=({root:e,props:t})=>{e.ref.list=e.appendChildView(e.createChildView(Dc)),t.dragCoordinates=null,t.overflowing=!1},Bc=({root:e,props:t,action:i})=>{e.query("GET_ITEM_INSERT_LOCATION_FREEDOM")&&(t.dragCoordinates={left:i.position.scopeLeft-e.ref.list.rect.element.left,top:i.position.scopeTop-(e.rect.outer.top+e.rect.element.marginTop+e.rect.element.scrollTop)})},Nc=({props:e})=>{e.dragCoordinates=null},kc=fe({DID_DRAG:Bc,DID_END_DRAG:Nc}),Vc=({root:e,props:t,actions:i})=>{if(kc({root:e,props:t,actions:i}),e.ref.list.dragCoordinates=t.dragCoordinates,t.overflowing&&!t.overflow&&(t.overflowing=!1,e.element.dataset.state="",e.height=null),t.overflow){let a=Math.round(t.overflow);a!==e.height&&(t.overflowing=!0,e.element.dataset.state="overflow",e.height=a)}},Gc=ne({create:Cc,write:Vc,name:"list-scroller",mixins:{apis:["overflow","dragCoordinates"],styles:["height","translateY"],animations:{translateY:"spring"}}}),ze=(e,t,i,a="")=>{i?se(e,t,a):e.removeAttribute(t)},Uc=e=>{if(!(!e||e.value==="")){try{e.value=""}catch{}if(e.value){let t=Ve("form"),i=e.parentNode,a=e.nextSibling;t.appendChild(e),t.reset(),a?i.insertBefore(e,a):i.appendChild(e)}}},Wc=({root:e,props:t})=>{e.element.id=`filepond--browser-${t.id}`,se(e.element,"name",e.query("GET_NAME")),se(e.element,"aria-controls",`filepond--assistant-${t.id}`),se(e.element,"aria-labelledby",`filepond--drop-label-${t.id}`),Gn({root:e,action:{value:e.query("GET_ACCEPTED_FILE_TYPES")}}),Un({root:e,action:{value:e.query("GET_ALLOW_MULTIPLE")}}),Wn({root:e,action:{value:e.query("GET_ALLOW_DIRECTORIES_ONLY")}}),ki({root:e}),Hn({root:e,action:{value:e.query("GET_REQUIRED")}}),jn({root:e,action:{value:e.query("GET_CAPTURE_METHOD")}}),e.ref.handleChange=i=>{if(!e.element.value)return;let a=Array.from(e.element.files).map(n=>(n._relativePath=n.webkitRelativePath,n));setTimeout(()=>{t.onload(a),Uc(e.element)},250)},e.element.addEventListener("change",e.ref.handleChange)},Gn=({root:e,action:t})=>{e.query("GET_ALLOW_SYNC_ACCEPT_ATTRIBUTE")&&ze(e.element,"accept",!!t.value,t.value?t.value.join(","):"")},Un=({root:e,action:t})=>{ze(e.element,"multiple",t.value)},Wn=({root:e,action:t})=>{ze(e.element,"webkitdirectory",t.value)},ki=({root:e})=>{let t=e.query("GET_DISABLED"),i=e.query("GET_ALLOW_BROWSE"),a=t||!i;ze(e.element,"disabled",a)},Hn=({root:e,action:t})=>{t.value?e.query("GET_TOTAL_ITEMS")===0&&ze(e.element,"required",!0):ze(e.element,"required",!1)},jn=({root:e,action:t})=>{ze(e.element,"capture",!!t.value,t.value===!0?"":t.value)},rn=({root:e})=>{let{element:t}=e;if(e.query("GET_TOTAL_ITEMS")>0){ze(t,"required",!1),ze(t,"name",!1);let i=e.query("GET_ACTIVE_ITEMS"),a=!1;for(let n=0;n{e.query("GET_CHECK_VALIDITY")&&e.element.setCustomValidity(e.query("GET_LABEL_INVALID_FIELD"))},jc=ne({tag:"input",name:"browser",ignoreRect:!0,ignoreRectUpdate:!0,attributes:{type:"file"},create:Wc,destroy:({root:e})=>{e.element.removeEventListener("change",e.ref.handleChange)},write:fe({DID_LOAD_ITEM:rn,DID_REMOVE_ITEM:rn,DID_THROW_ITEM_INVALID:Hc,DID_SET_DISABLED:ki,DID_SET_ALLOW_BROWSE:ki,DID_SET_ALLOW_DIRECTORIES_ONLY:Wn,DID_SET_ALLOW_MULTIPLE:Un,DID_SET_ACCEPTED_FILE_TYPES:Gn,DID_SET_CAPTURE_METHOD:jn,DID_SET_REQUIRED:Hn})}),sn={ENTER:13,SPACE:32},Yc=({root:e,props:t})=>{let i=Ve("label");se(i,"for",`filepond--browser-${t.id}`),se(i,"id",`filepond--drop-label-${t.id}`),e.ref.handleKeyDown=a=>{(a.keyCode===sn.ENTER||a.keyCode===sn.SPACE)&&(a.preventDefault(),e.ref.label.click())},e.ref.handleClick=a=>{a.target===i||i.contains(a.target)||e.ref.label.click()},i.addEventListener("keydown",e.ref.handleKeyDown),e.element.addEventListener("click",e.ref.handleClick),Yn(i,t.caption),e.appendChild(i),e.ref.label=i},Yn=(e,t)=>{e.innerHTML=t;let i=e.querySelector(".filepond--label-action");return i&&se(i,"tabindex","0"),t},qc=ne({name:"drop-label",ignoreRect:!0,create:Yc,destroy:({root:e})=>{e.ref.label.addEventListener("keydown",e.ref.handleKeyDown),e.element.removeEventListener("click",e.ref.handleClick)},write:fe({DID_SET_LABEL_IDLE:({root:e,action:t})=>{Yn(e.ref.label,t.value)}}),mixins:{styles:["opacity","translateX","translateY"],animations:{opacity:{type:"tween",duration:150},translateX:"spring",translateY:"spring"}}}),$c=ne({name:"drip-blob",ignoreRect:!0,mixins:{styles:["translateX","translateY","scaleX","scaleY","opacity"],animations:{scaleX:"spring",scaleY:"spring",translateX:"spring",translateY:"spring",opacity:{type:"tween",duration:250}}}}),Xc=({root:e})=>{let t=e.rect.element.width*.5,i=e.rect.element.height*.5;e.ref.blob=e.appendChildView(e.createChildView($c,{opacity:0,scaleX:2.5,scaleY:2.5,translateX:t,translateY:i}))},Kc=({root:e,action:t})=>{if(!e.ref.blob){Xc({root:e});return}e.ref.blob.translateX=t.position.scopeLeft,e.ref.blob.translateY=t.position.scopeTop,e.ref.blob.scaleX=1,e.ref.blob.scaleY=1,e.ref.blob.opacity=1},Qc=({root:e})=>{e.ref.blob&&(e.ref.blob.opacity=0)},Zc=({root:e})=>{e.ref.blob&&(e.ref.blob.scaleX=2.5,e.ref.blob.scaleY=2.5,e.ref.blob.opacity=0)},Jc=({root:e,props:t,actions:i})=>{ed({root:e,props:t,actions:i});let{blob:a}=e.ref;i.length===0&&a&&a.opacity===0&&(e.removeChildView(a),e.ref.blob=null)},ed=fe({DID_DRAG:Kc,DID_DROP:Zc,DID_END_DRAG:Qc}),td=ne({ignoreRect:!0,ignoreRectUpdate:!0,name:"drip",write:Jc}),qn=(e,t)=>{try{let i=new DataTransfer;t.forEach(a=>{a instanceof File?i.items.add(a):i.items.add(new File([a],a.name,{type:a.type}))}),e.files=i.files}catch{return!1}return!0},id=({root:e})=>{e.ref.fields={};let t=document.createElement("legend");t.textContent="Files",e.element.appendChild(t)},gi=(e,t)=>e.ref.fields[t],ea=e=>{e.query("GET_ACTIVE_ITEMS").forEach(t=>{e.ref.fields[t.id]&&e.element.appendChild(e.ref.fields[t.id])})},cn=({root:e})=>ea(e),ad=({root:e,action:t})=>{let n=!(e.query("GET_ITEM",t.id).origin===re.LOCAL)&&e.query("SHOULD_UPDATE_FILE_INPUT"),l=Ve("input");l.type=n?"file":"hidden",l.name=e.query("GET_NAME"),e.ref.fields[t.id]=l,ea(e)},nd=({root:e,action:t})=>{let i=gi(e,t.id);if(!i||(t.serverFileReference!==null&&(i.value=t.serverFileReference),!e.query("SHOULD_UPDATE_FILE_INPUT")))return;let a=e.query("GET_ITEM",t.id);qn(i,[a.file])},ld=({root:e,action:t})=>{e.query("SHOULD_UPDATE_FILE_INPUT")&&setTimeout(()=>{let i=gi(e,t.id);i&&qn(i,[t.file])},0)},od=({root:e})=>{e.element.disabled=e.query("GET_DISABLED")},rd=({root:e,action:t})=>{let i=gi(e,t.id);i&&(i.parentNode&&i.parentNode.removeChild(i),delete e.ref.fields[t.id])},sd=({root:e,action:t})=>{let i=gi(e,t.id);i&&(t.value===null?i.removeAttribute("value"):i.type!="file"&&(i.value=t.value),ea(e))},cd=fe({DID_SET_DISABLED:od,DID_ADD_ITEM:ad,DID_LOAD_ITEM:nd,DID_REMOVE_ITEM:rd,DID_DEFINE_VALUE:sd,DID_PREPARE_OUTPUT:ld,DID_REORDER_ITEMS:cn,DID_SORT_ITEMS:cn}),dd=ne({tag:"fieldset",name:"data",create:id,write:cd,ignoreRect:!0}),pd=e=>"getRootNode"in e?e.getRootNode():document,md=["jpg","jpeg","png","gif","bmp","webp","svg","tiff"],ud=["css","csv","html","txt"],gd={zip:"zip|compressed",epub:"application/epub+zip"},$n=(e="")=>(e=e.toLowerCase(),md.includes(e)?"image/"+(e==="jpg"?"jpeg":e==="svg"?"svg+xml":e):ud.includes(e)?"text/"+e:gd[e]||""),ta=e=>new Promise((t,i)=>{let a=xd(e);if(a.length&&!fd(e))return t(a);hd(e).then(t)}),fd=e=>e.files?e.files.length>0:!1,hd=e=>new Promise((t,i)=>{let a=(e.items?Array.from(e.items):[]).filter(n=>bd(n)).map(n=>Ed(n));if(!a.length){t(e.files?Array.from(e.files):[]);return}Promise.all(a).then(n=>{let l=[];n.forEach(o=>{l.push.apply(l,o)}),t(l.filter(o=>o).map(o=>(o._relativePath||(o._relativePath=o.webkitRelativePath),o)))}).catch(console.error)}),bd=e=>{if(Xn(e)){let t=ia(e);if(t)return t.isFile||t.isDirectory}return e.kind==="file"},Ed=e=>new Promise((t,i)=>{if(vd(e)){Td(ia(e)).then(t).catch(i);return}t([e.getAsFile()])}),Td=e=>new Promise((t,i)=>{let a=[],n=0,l=0,o=()=>{l===0&&n===0&&t(a)},r=s=>{n++;let p=s.createReader(),c=()=>{p.readEntries(d=>{if(d.length===0){n--,o();return}d.forEach(m=>{m.isDirectory?r(m):(l++,m.file(u=>{let g=Id(u);m.fullPath&&(g._relativePath=m.fullPath),a.push(g),l--,o()}))}),c()},i)};c()};r(e)}),Id=e=>{if(e.type.length)return e;let t=e.lastModifiedDate,i=e.name,a=$n(ui(e.name));return a.length&&(e=e.slice(0,e.size,a),e.name=i,e.lastModifiedDate=t),e},vd=e=>Xn(e)&&(ia(e)||{}).isDirectory,Xn=e=>"webkitGetAsEntry"in e,ia=e=>e.webkitGetAsEntry(),xd=e=>{let t=[];try{if(t=Rd(e),t.length)return t;t=yd(e)}catch{}return t},yd=e=>{let t=e.getData("url");return typeof t=="string"&&t.length?[t]:[]},Rd=e=>{let t=e.getData("text/html");if(typeof t=="string"&&t.length){let i=t.match(/src\s*=\s*"(.+?)"/);if(i)return[i[1]]}return[]},ri=[],et=e=>({pageLeft:e.pageX,pageTop:e.pageY,scopeLeft:e.offsetX||e.layerX,scopeTop:e.offsetY||e.layerY}),Sd=(e,t,i)=>{let a=_d(t),n={element:e,filterElement:i,state:null,ondrop:()=>{},onenter:()=>{},ondrag:()=>{},onexit:()=>{},onload:()=>{},allowdrop:()=>{}};return n.destroy=a.addListener(n),n},_d=e=>{let t=ri.find(a=>a.element===e);if(t)return t;let i=wd(e);return ri.push(i),i},wd=e=>{let t=[],i={dragenter:Md,dragover:Ad,dragleave:zd,drop:Pd},a={};te(i,(l,o)=>{a[l]=o(e,t),e.addEventListener(l,a[l],!1)});let n={element:e,addListener:l=>(t.push(l),()=>{t.splice(t.indexOf(l),1),t.length===0&&(ri.splice(ri.indexOf(n),1),te(i,o=>{e.removeEventListener(o,a[o],!1)}))})};return n},Ld=(e,t)=>("elementFromPoint"in e||(e=document),e.elementFromPoint(t.x,t.y)),aa=(e,t)=>{let i=pd(t),a=Ld(i,{x:e.pageX-window.pageXOffset,y:e.pageY-window.pageYOffset});return a===t||t.contains(a)},Kn=null,ii=(e,t)=>{try{e.dropEffect=t}catch{}},Md=(e,t)=>i=>{i.preventDefault(),Kn=i.target,t.forEach(a=>{let{element:n,onenter:l}=a;aa(i,n)&&(a.state="enter",l(et(i)))})},Ad=(e,t)=>i=>{i.preventDefault();let a=i.dataTransfer;ta(a).then(n=>{let l=!1;t.some(o=>{let{filterElement:r,element:s,onenter:p,onexit:c,ondrag:d,allowdrop:m}=o;ii(a,"copy");let u=m(n);if(!u){ii(a,"none");return}if(aa(i,s)){if(l=!0,o.state===null){o.state="enter",p(et(i));return}if(o.state="over",r&&!u){ii(a,"none");return}d(et(i))}else r&&!l&&ii(a,"none"),o.state&&(o.state=null,c(et(i)))})})},Pd=(e,t)=>i=>{i.preventDefault();let a=i.dataTransfer;ta(a).then(n=>{t.forEach(l=>{let{filterElement:o,element:r,ondrop:s,onexit:p,allowdrop:c}=l;if(l.state=null,!(o&&!aa(i,r))){if(!c(n))return p(et(i));s(et(i),n)}})})},zd=(e,t)=>i=>{Kn===i.target&&t.forEach(a=>{let{onexit:n}=a;a.state=null,n(et(i))})},Od=(e,t,i)=>{e.classList.add("filepond--hopper");let{catchesDropsOnPage:a,requiresDropOnElement:n,filterItems:l=c=>c}=i,o=Sd(e,a?document.documentElement:e,n),r="",s="";o.allowdrop=c=>t(l(c)),o.ondrop=(c,d)=>{let m=l(d);if(!t(m)){p.ondragend(c);return}s="drag-drop",p.onload(m,c)},o.ondrag=c=>{p.ondrag(c)},o.onenter=c=>{s="drag-over",p.ondragstart(c)},o.onexit=c=>{s="drag-exit",p.ondragend(c)};let p={updateHopperState:()=>{r!==s&&(e.dataset.hopperState=s,r=s)},onload:()=>{},ondragstart:()=>{},ondrag:()=>{},ondragend:()=>{},destroy:()=>{o.destroy()}};return p},Vi=!1,ut=[],Qn=e=>{let t=document.activeElement;if(t&&(/textarea|input/i.test(t.nodeName)||t.getAttribute("contenteditable")==="true"||t.getAttribute("contenteditable")==="")){let a=!1,n=t;for(;n!==document.body;){if(n.classList.contains("filepond--root")){a=!0;break}n=n.parentNode}if(!a)return}ta(e.clipboardData).then(a=>{a.length&&ut.forEach(n=>n(a))})},Fd=e=>{ut.includes(e)||(ut.push(e),!Vi&&(Vi=!0,document.addEventListener("paste",Qn)))},Dd=e=>{$i(ut,ut.indexOf(e)),ut.length===0&&(document.removeEventListener("paste",Qn),Vi=!1)},Cd=()=>{let e=i=>{t.onload(i)},t={destroy:()=>{Dd(e)},onload:()=>{}};return Fd(e),t},Bd=({root:e,props:t})=>{e.element.id=`filepond--assistant-${t.id}`,se(e.element,"role","alert"),se(e.element,"aria-live","polite"),se(e.element,"aria-relevant","additions")},dn=null,pn=null,zi=[],fi=(e,t)=>{e.element.textContent=t},Nd=e=>{e.element.textContent=""},Zn=(e,t,i)=>{let a=e.query("GET_TOTAL_ITEMS");fi(e,`${i} ${t}, ${a} ${a===1?e.query("GET_LABEL_FILE_COUNT_SINGULAR"):e.query("GET_LABEL_FILE_COUNT_PLURAL")}`),clearTimeout(pn),pn=setTimeout(()=>{Nd(e)},1500)},Jn=e=>e.element.parentNode.contains(document.activeElement),kd=({root:e,action:t})=>{if(!Jn(e))return;e.element.textContent="";let i=e.query("GET_ITEM",t.id);zi.push(i.filename),clearTimeout(dn),dn=setTimeout(()=>{Zn(e,zi.join(", "),e.query("GET_LABEL_FILE_ADDED")),zi.length=0},750)},Vd=({root:e,action:t})=>{if(!Jn(e))return;let i=t.item;Zn(e,i.filename,e.query("GET_LABEL_FILE_REMOVED"))},Gd=({root:e,action:t})=>{let a=e.query("GET_ITEM",t.id).filename,n=e.query("GET_LABEL_FILE_PROCESSING_COMPLETE");fi(e,`${a} ${n}`)},mn=({root:e,action:t})=>{let a=e.query("GET_ITEM",t.id).filename,n=e.query("GET_LABEL_FILE_PROCESSING_ABORTED");fi(e,`${a} ${n}`)},ai=({root:e,action:t})=>{let a=e.query("GET_ITEM",t.id).filename;fi(e,`${t.status.main} ${a} ${t.status.sub}`)},Ud=ne({create:Bd,ignoreRect:!0,ignoreRectUpdate:!0,write:fe({DID_LOAD_ITEM:kd,DID_REMOVE_ITEM:Vd,DID_COMPLETE_ITEM_PROCESSING:Gd,DID_ABORT_ITEM_PROCESSING:mn,DID_REVERT_ITEM_PROCESSING:mn,DID_THROW_ITEM_REMOVE_ERROR:ai,DID_THROW_ITEM_LOAD_ERROR:ai,DID_THROW_ITEM_INVALID:ai,DID_THROW_ITEM_PROCESSING_ERROR:ai}),tag:"span",name:"assistant"}),el=(e,t="-")=>e.replace(new RegExp(`${t}.`,"g"),i=>i.charAt(1).toUpperCase()),tl=(e,t=16,i=!0)=>{let a=Date.now(),n=null;return(...l)=>{clearTimeout(n);let o=Date.now()-a,r=()=>{a=Date.now(),e(...l)};oe.preventDefault(),Hd=({root:e,props:t})=>{let i=e.query("GET_ID");i&&(e.element.id=i);let a=e.query("GET_CLASS_NAME");a&&a.split(" ").filter(s=>s.length).forEach(s=>{e.element.classList.add(s)}),e.ref.label=e.appendChildView(e.createChildView(qc,{...t,translateY:null,caption:e.query("GET_LABEL_IDLE")})),e.ref.list=e.appendChildView(e.createChildView(Gc,{translateY:null})),e.ref.panel=e.appendChildView(e.createChildView(Vn,{name:"panel-root"})),e.ref.assistant=e.appendChildView(e.createChildView(Ud,{...t})),e.ref.data=e.appendChildView(e.createChildView(dd,{...t})),e.ref.measure=Ve("div"),e.ref.measure.style.height="100%",e.element.appendChild(e.ref.measure),e.ref.bounds=null,e.query("GET_STYLES").filter(s=>!ke(s.value)).map(({name:s,value:p})=>{e.element.dataset[s]=p}),e.ref.widthPrevious=null,e.ref.widthUpdated=tl(()=>{e.ref.updateHistory=[],e.dispatch("DID_RESIZE_ROOT")},250),e.ref.previousAspectRatio=null,e.ref.updateHistory=[];let n=window.matchMedia("(pointer: fine) and (hover: hover)").matches,l="PointerEvent"in window;e.query("GET_ALLOW_REORDER")&&l&&!n&&(e.element.addEventListener("touchmove",si,{passive:!1}),e.element.addEventListener("gesturestart",si));let o=e.query("GET_CREDITS");if(o.length===2){let s=document.createElement("a");s.className="filepond--credits",s.href=o[0],s.tabIndex=-1,s.target="_blank",s.rel="noopener noreferrer nofollow",s.textContent=o[1],e.element.appendChild(s),e.ref.credits=s}},jd=({root:e,props:t,actions:i})=>{if(Kd({root:e,props:t,actions:i}),i.filter(E=>/^DID_SET_STYLE_/.test(E.type)).filter(E=>!ke(E.data.value)).map(({type:E,data:_})=>{let x=el(E.substring(8).toLowerCase(),"_");e.element.dataset[x]=_.value,e.invalidateLayout()}),e.rect.element.hidden)return;e.rect.element.width!==e.ref.widthPrevious&&(e.ref.widthPrevious=e.rect.element.width,e.ref.widthUpdated());let a=e.ref.bounds;a||(a=e.ref.bounds=$d(e),e.element.removeChild(e.ref.measure),e.ref.measure=null);let{hopper:n,label:l,list:o,panel:r}=e.ref;n&&n.updateHopperState();let s=e.query("GET_PANEL_ASPECT_RATIO"),p=e.query("GET_ALLOW_MULTIPLE"),c=e.query("GET_TOTAL_ITEMS"),d=p?e.query("GET_MAX_FILES")||Wd:1,m=c===d,u=i.find(E=>E.type==="DID_ADD_ITEM");if(m&&u){let E=u.data.interactionMethod;l.opacity=0,p?l.translateY=-40:E===Re.API?l.translateX=40:E===Re.BROWSE?l.translateY=40:l.translateY=30}else m||(l.opacity=1,l.translateX=0,l.translateY=0);let g=Yd(e),f=qd(e),h=l.rect.element.height,I=!p||m?0:h,b=m?o.rect.element.marginTop:0,T=c===0?0:o.rect.element.marginBottom,v=I+b+f.visual+T,y=I+b+f.bounds+T;if(o.translateY=Math.max(0,I-o.rect.element.marginTop)-g.top,s){let E=e.rect.element.width,_=E*s;s!==e.ref.previousAspectRatio&&(e.ref.previousAspectRatio=s,e.ref.updateHistory=[]);let x=e.ref.updateHistory;x.push(E);let R=2;if(x.length>R*2){let P=x.length,A=P-10,B=0;for(let w=P;w>=A;w--)if(x[w]===x[w-2]&&B++,B>=R)return}r.scalable=!1,r.height=_;let z=_-I-(T-g.bottom)-(m?b:0);f.visual>z?o.overflow=z:o.overflow=null,e.height=_}else if(a.fixedHeight){r.scalable=!1;let E=a.fixedHeight-I-(T-g.bottom)-(m?b:0);f.visual>E?o.overflow=E:o.overflow=null}else if(a.cappedHeight){let E=v>=a.cappedHeight,_=Math.min(a.cappedHeight,v);r.scalable=!0,r.height=E?_:_-g.top-g.bottom;let x=_-I-(T-g.bottom)-(m?b:0);v>a.cappedHeight&&f.visual>x?o.overflow=x:o.overflow=null,e.height=Math.min(a.cappedHeight,y-g.top-g.bottom)}else{let E=c>0?g.top+g.bottom:0;r.scalable=!0,r.height=Math.max(h,v-E),e.height=Math.max(h,y-E)}e.ref.credits&&r.heightCurrent&&(e.ref.credits.style.transform=`translateY(${r.heightCurrent}px)`)},Yd=e=>{let t=e.ref.list.childViews[0].childViews[0];return t?{top:t.rect.element.marginTop,bottom:t.rect.element.marginBottom}:{top:0,bottom:0}},qd=e=>{let t=0,i=0,a=e.ref.list,n=a.childViews[0],l=n.childViews.filter(b=>b.rect.element.height),o=e.query("GET_ACTIVE_ITEMS").map(b=>l.find(T=>T.id===b.id)).filter(b=>b);if(o.length===0)return{visual:t,bounds:i};let r=n.rect.element.width,s=Ji(n,o,a.dragCoordinates),p=o[0].rect.element,c=p.marginTop+p.marginBottom,d=p.marginLeft+p.marginRight,m=p.width+d,u=p.height+c,g=typeof s<"u"&&s>=0?1:0,f=o.find(b=>b.markedForRemoval&&b.opacity<.45)?-1:0,h=o.length+g+f,I=Zi(r,m);return I===1?o.forEach(b=>{let T=b.rect.element.height+c;i+=T,t+=T*b.opacity}):(i=Math.ceil(h/I)*u,t=i),{visual:t,bounds:i}},$d=e=>{let t=e.ref.measureHeight||null;return{cappedHeight:parseInt(e.style.maxHeight,10)||null,fixedHeight:t===0?null:t}},na=(e,t)=>{let i=e.query("GET_ALLOW_REPLACE"),a=e.query("GET_ALLOW_MULTIPLE"),n=e.query("GET_TOTAL_ITEMS"),l=e.query("GET_MAX_FILES"),o=t.length;return!a&&o>1?(e.dispatch("DID_THROW_MAX_FILES",{source:t,error:ie("warning",0,"Max files")}),!0):(l=a?l:1,!a&&i?!1:bt(l)&&n+o>l?(e.dispatch("DID_THROW_MAX_FILES",{source:t,error:ie("warning",0,"Max files")}),!0):!1)},Xd=(e,t,i)=>{let a=e.childViews[0];return Ji(a,t,{left:i.scopeLeft-a.rect.element.left,top:i.scopeTop-(e.rect.outer.top+e.rect.element.marginTop+e.rect.element.scrollTop)})},un=e=>{let t=e.query("GET_ALLOW_DROP"),i=e.query("GET_DISABLED"),a=t&&!i;if(a&&!e.ref.hopper){let n=Od(e.element,l=>{let o=e.query("GET_BEFORE_DROP_FILE")||(()=>!0);return e.query("GET_DROP_VALIDATION")?l.every(s=>tt("ALLOW_HOPPER_ITEM",s,{query:e.query}).every(p=>p===!0)&&o(s)):!0},{filterItems:l=>{let o=e.query("GET_IGNORED_FILES");return l.filter(r=>Je(r)?!o.includes(r.name.toLowerCase()):!0)},catchesDropsOnPage:e.query("GET_DROP_ON_PAGE"),requiresDropOnElement:e.query("GET_DROP_ON_ELEMENT")});n.onload=(l,o)=>{let s=e.ref.list.childViews[0].childViews.filter(c=>c.rect.element.height),p=e.query("GET_ACTIVE_ITEMS").map(c=>s.find(d=>d.id===c.id)).filter(c=>c);Ae("ADD_ITEMS",l,{dispatch:e.dispatch}).then(c=>{if(na(e,c))return!1;e.dispatch("ADD_ITEMS",{items:c,index:Xd(e.ref.list,p,o),interactionMethod:Re.DROP})}),e.dispatch("DID_DROP",{position:o}),e.dispatch("DID_END_DRAG",{position:o})},n.ondragstart=l=>{e.dispatch("DID_START_DRAG",{position:l})},n.ondrag=tl(l=>{e.dispatch("DID_DRAG",{position:l})}),n.ondragend=l=>{e.dispatch("DID_END_DRAG",{position:l})},e.ref.hopper=n,e.ref.drip=e.appendChildView(e.createChildView(td))}else!a&&e.ref.hopper&&(e.ref.hopper.destroy(),e.ref.hopper=null,e.removeChildView(e.ref.drip))},gn=(e,t)=>{let i=e.query("GET_ALLOW_BROWSE"),a=e.query("GET_DISABLED"),n=i&&!a;n&&!e.ref.browser?e.ref.browser=e.appendChildView(e.createChildView(jc,{...t,onload:l=>{Ae("ADD_ITEMS",l,{dispatch:e.dispatch}).then(o=>{if(na(e,o))return!1;e.dispatch("ADD_ITEMS",{items:o,index:-1,interactionMethod:Re.BROWSE})})}}),0):!n&&e.ref.browser&&(e.removeChildView(e.ref.browser),e.ref.browser=null)},fn=e=>{let t=e.query("GET_ALLOW_PASTE"),i=e.query("GET_DISABLED"),a=t&&!i;a&&!e.ref.paster?(e.ref.paster=Cd(),e.ref.paster.onload=n=>{Ae("ADD_ITEMS",n,{dispatch:e.dispatch}).then(l=>{if(na(e,l))return!1;e.dispatch("ADD_ITEMS",{items:l,index:-1,interactionMethod:Re.PASTE})})}):!a&&e.ref.paster&&(e.ref.paster.destroy(),e.ref.paster=null)},Kd=fe({DID_SET_ALLOW_BROWSE:({root:e,props:t})=>{gn(e,t)},DID_SET_ALLOW_DROP:({root:e})=>{un(e)},DID_SET_ALLOW_PASTE:({root:e})=>{fn(e)},DID_SET_DISABLED:({root:e,props:t})=>{un(e),fn(e),gn(e,t),e.query("GET_DISABLED")?e.element.dataset.disabled="disabled":e.element.removeAttribute("data-disabled")}}),Qd=ne({name:"root",read:({root:e})=>{e.ref.measure&&(e.ref.measureHeight=e.ref.measure.offsetHeight)},create:Hd,write:jd,destroy:({root:e})=>{e.ref.paster&&e.ref.paster.destroy(),e.ref.hopper&&e.ref.hopper.destroy(),e.element.removeEventListener("touchmove",si),e.element.removeEventListener("gesturestart",si)},mixins:{styles:["height"]}}),Zd=(e={})=>{let t=null,i=oi(),a=fr(es(i),[Es,as(i)],[Ws,is(i)]);a.dispatch("SET_OPTIONS",{options:e});let n=()=>{document.hidden||a.dispatch("KICK")};document.addEventListener("visibilitychange",n);let l=null,o=!1,r=!1,s=null,p=null,c=()=>{o||(o=!0),clearTimeout(l),l=setTimeout(()=>{o=!1,s=null,p=null,r&&(r=!1,a.dispatch("DID_STOP_RESIZE"))},500)};window.addEventListener("resize",c);let d=Qd(a,{id:qi()}),m=!1,u=!1,g={_read:()=>{o&&(p=window.innerWidth,s||(s=p),!r&&p!==s&&(a.dispatch("DID_START_RESIZE"),r=!0)),u&&m&&(m=d.element.offsetParent===null),!m&&(d._read(),u=d.rect.element.hidden)},_write:S=>{let L=a.processActionQueue().filter(D=>!/^SET_/.test(D.type));m&&!L.length||(b(L),m=d._write(S,L,r),os(a.query("GET_ITEMS")),m&&a.processDispatchQueue())}},f=S=>L=>{let D={type:S};if(!L)return D;if(L.hasOwnProperty("error")&&(D.error=L.error?{...L.error}:null),L.status&&(D.status={...L.status}),L.file&&(D.output=L.file),L.source)D.file=L.source;else if(L.item||L.id){let F=L.item?L.item:a.query("GET_ITEM",L.id);D.file=F?he(F):null}return L.items&&(D.items=L.items.map(he)),/progress/.test(S)&&(D.progress=L.progress),L.hasOwnProperty("origin")&&L.hasOwnProperty("target")&&(D.origin=L.origin,D.target=L.target),D},h={DID_DESTROY:f("destroy"),DID_INIT:f("init"),DID_THROW_MAX_FILES:f("warning"),DID_INIT_ITEM:f("initfile"),DID_START_ITEM_LOAD:f("addfilestart"),DID_UPDATE_ITEM_LOAD_PROGRESS:f("addfileprogress"),DID_LOAD_ITEM:f("addfile"),DID_THROW_ITEM_INVALID:[f("error"),f("addfile")],DID_THROW_ITEM_LOAD_ERROR:[f("error"),f("addfile")],DID_THROW_ITEM_REMOVE_ERROR:[f("error"),f("removefile")],DID_PREPARE_OUTPUT:f("preparefile"),DID_START_ITEM_PROCESSING:f("processfilestart"),DID_UPDATE_ITEM_PROCESS_PROGRESS:f("processfileprogress"),DID_ABORT_ITEM_PROCESSING:f("processfileabort"),DID_COMPLETE_ITEM_PROCESSING:f("processfile"),DID_COMPLETE_ITEM_PROCESSING_ALL:f("processfiles"),DID_REVERT_ITEM_PROCESSING:f("processfilerevert"),DID_THROW_ITEM_PROCESSING_ERROR:[f("error"),f("processfile")],DID_REMOVE_ITEM:f("removefile"),DID_UPDATE_ITEMS:f("updatefiles"),DID_ACTIVATE_ITEM:f("activatefile"),DID_REORDER_ITEMS:f("reorderfiles")},I=S=>{let L={pond:O,...S};delete L.type,d.element.dispatchEvent(new CustomEvent(`FilePond:${S.type}`,{detail:L,bubbles:!0,cancelable:!0,composed:!0}));let D=[];S.hasOwnProperty("error")&&D.push(S.error),S.hasOwnProperty("file")&&D.push(S.file);let F=["type","error","file"];Object.keys(S).filter(C=>!F.includes(C)).forEach(C=>D.push(S[C])),O.fire(S.type,...D);let G=a.query(`GET_ON${S.type.toUpperCase()}`);G&&G(...D)},b=S=>{S.length&&S.filter(L=>h[L.type]).forEach(L=>{let D=h[L.type];(Array.isArray(D)?D:[D]).forEach(F=>{L.type==="DID_INIT_ITEM"?I(F(L.data)):setTimeout(()=>{I(F(L.data))},0)})})},T=S=>a.dispatch("SET_OPTIONS",{options:S}),v=S=>a.query("GET_ACTIVE_ITEM",S),y=S=>new Promise((L,D)=>{a.dispatch("REQUEST_ITEM_PREPARE",{query:S,success:F=>{L(F)},failure:F=>{D(F)}})}),E=(S,L={})=>new Promise((D,F)=>{R([{source:S,options:L}],{index:L.index}).then(G=>D(G&&G[0])).catch(F)}),_=S=>S.file&&S.id,x=(S,L)=>(typeof S=="object"&&!_(S)&&!L&&(L=S,S=void 0),a.dispatch("REMOVE_ITEM",{...L,query:S}),a.query("GET_ACTIVE_ITEM",S)===null),R=(...S)=>new Promise((L,D)=>{let F=[],G={};if(ci(S[0]))F.push.apply(F,S[0]),Object.assign(G,S[1]||{});else{let C=S[S.length-1];typeof C=="object"&&!(C instanceof Blob)&&Object.assign(G,S.pop()),F.push(...S)}a.dispatch("ADD_ITEMS",{items:F,index:G.index,interactionMethod:Re.API,success:L,failure:D})}),z=()=>a.query("GET_ACTIVE_ITEMS"),P=S=>new Promise((L,D)=>{a.dispatch("REQUEST_ITEM_PROCESSING",{query:S,success:F=>{L(F)},failure:F=>{D(F)}})}),A=(...S)=>{let L=Array.isArray(S[0])?S[0]:S,D=L.length?L:z();return Promise.all(D.map(y))},B=(...S)=>{let L=Array.isArray(S[0])?S[0]:S;if(!L.length){let D=z().filter(F=>!(F.status===U.IDLE&&F.origin===re.LOCAL)&&F.status!==U.PROCESSING&&F.status!==U.PROCESSING_COMPLETE&&F.status!==U.PROCESSING_REVERT_ERROR);return Promise.all(D.map(P))}return Promise.all(L.map(P))},w=(...S)=>{let L=Array.isArray(S[0])?S[0]:S,D;typeof L[L.length-1]=="object"?D=L.pop():Array.isArray(S[0])&&(D=S[1]);let F=z();return L.length?L.map(C=>$e(C)?F[C]?F[C].id:null:C).filter(C=>C).map(C=>x(C,D)):Promise.all(F.map(C=>x(C,D)))},O={...mi(),...g,...ts(a,i),setOptions:T,addFile:E,addFiles:R,getFile:v,processFile:P,prepareFile:y,removeFile:x,moveFile:(S,L)=>a.dispatch("MOVE_ITEM",{query:S,index:L}),getFiles:z,processFiles:B,removeFiles:w,prepareFiles:A,sort:S=>a.dispatch("SORT",{compare:S}),browse:()=>{var S=d.element.querySelector("input[type=file]");S&&S.click()},destroy:()=>{O.fire("destroy",d.element),a.dispatch("ABORT_ALL"),d._destroy(),window.removeEventListener("resize",c),document.removeEventListener("visibilitychange",n),a.dispatch("DID_DESTROY")},insertBefore:S=>Ba(d.element,S),insertAfter:S=>Na(d.element,S),appendTo:S=>S.appendChild(d.element),replaceElement:S=>{Ba(d.element,S),S.parentNode.removeChild(S),t=S},restoreElement:()=>{t&&(Na(t,d.element),d.element.parentNode.removeChild(d.element),t=null)},isAttachedTo:S=>d.element===S||t===S,element:{get:()=>d.element},status:{get:()=>a.query("GET_STATUS")}};return a.dispatch("DID_INIT"),We(O)},il=(e={})=>{let t={};return te(oi(),(a,n)=>{t[a]=n[0]}),Zd({...t,...e})},Jd=e=>e.charAt(0).toLowerCase()+e.slice(1),ep=e=>el(e.replace(/^data-/,"")),al=(e,t)=>{te(t,(i,a)=>{te(e,(n,l)=>{let o=new RegExp(i);if(!o.test(n)||(delete e[n],a===!1))return;if(ge(a)){e[a]=l;return}let s=a.group;ce(a)&&!e[s]&&(e[s]={}),e[s][Jd(n.replace(o,""))]=l}),a.mapping&&al(e[a.group],a.mapping)})},tp=(e,t={})=>{let i=[];te(e.attributes,n=>{i.push(e.attributes[n])});let a=i.filter(n=>n.name).reduce((n,l)=>{let o=se(e,l.name);return n[ep(l.name)]=o===l.name?!0:o,n},{});return al(a,t),a},ip=(e,t={})=>{let i={"^class$":"className","^multiple$":"allowMultiple","^capture$":"captureMethod","^webkitdirectory$":"allowDirectoriesOnly","^server":{group:"server",mapping:{"^process":{group:"process"},"^revert":{group:"revert"},"^fetch":{group:"fetch"},"^restore":{group:"restore"},"^load":{group:"load"}}},"^type$":!1,"^files$":!1};tt("SET_ATTRIBUTE_TO_OPTION_MAP",i);let a={...t},n=tp(e.nodeName==="FIELDSET"?e.querySelector("input[type=file]"):e,i);Object.keys(n).forEach(o=>{ce(n[o])?(ce(a[o])||(a[o]={}),Object.assign(a[o],n[o])):a[o]=n[o]}),a.files=(t.files||[]).concat(Array.from(e.querySelectorAll("input:not([type=file])")).map(o=>({source:o.value,options:{type:o.dataset.type}})));let l=il(a);return e.files&&Array.from(e.files).forEach(o=>{l.addFile(o)}),l.replaceElement(e),l},ap=(...e)=>gr(e[0])?ip(...e):il(...e),np=["fire","_read","_write"],hn=e=>{let t={};return Rn(e,t,np),t},lp=(e,t)=>e.replace(/(?:{([a-zA-Z]+)})/g,(i,a)=>t[a]),op=e=>{let t=new Blob(["(",e.toString(),")()"],{type:"application/javascript"}),i=URL.createObjectURL(t),a=new Worker(i);return{transfer:(n,l)=>{},post:(n,l,o)=>{let r=qi();a.onmessage=s=>{s.data.id===r&&l(s.data.message)},a.postMessage({id:r,message:n},o)},terminate:()=>{a.terminate(),URL.revokeObjectURL(i)}}},rp=e=>new Promise((t,i)=>{let a=new Image;a.onload=()=>{t(a)},a.onerror=n=>{i(n)},a.src=e}),nl=(e,t)=>{let i=e.slice(0,e.size,e.type);return i.lastModifiedDate=e.lastModifiedDate,i.name=t,i},sp=e=>nl(e,e.name),bn=[],cp=e=>{if(bn.includes(e))return;bn.push(e);let t=e({addFilter:ss,utils:{Type:M,forin:te,isString:ge,isFile:Je,toNaturalFileSize:Bn,replaceInString:lp,getExtensionFromFilename:ui,getFilenameWithoutExtension:Fn,guesstimateMimeType:$n,getFileFromBlob:ht,getFilenameFromURL:Dt,createRoute:fe,createWorker:op,createView:ne,createItemAPI:he,loadImage:rp,copyFile:sp,renameFile:nl,createBlob:Pn,applyFilterChain:Ae,text:ae,getNumericAspectRatioFromString:wn},views:{fileActionButton:Cn}});cs(t.options)},dp=()=>Object.prototype.toString.call(window.operamini)==="[object OperaMini]",pp=()=>"Promise"in window,mp=()=>"slice"in Blob.prototype,up=()=>"URL"in window&&"createObjectURL"in window.URL,gp=()=>"visibilityState"in document,fp=()=>"performance"in window,hp=()=>"supports"in(window.CSS||{}),bp=()=>/MSIE|Trident/.test(window.navigator.userAgent),Gi=(()=>{let e=En()&&!dp()&&gp()&&pp()&&mp()&&up()&&fp()&&(hp()||bp());return()=>e})(),Ue={apps:[]},Ep="filepond",it=()=>{},ll={},Et={},Ct={},Ui={},gt=it,ft=it,Wi=it,Hi=it,ve=it,ji=it,Ft=it;if(Gi()){Vr(()=>{Ue.apps.forEach(i=>i._read())},i=>{Ue.apps.forEach(a=>a._write(i))});let e=()=>{document.dispatchEvent(new CustomEvent("FilePond:loaded",{detail:{supported:Gi,create:gt,destroy:ft,parse:Wi,find:Hi,registerPlugin:ve,setOptions:Ft}})),document.removeEventListener("DOMContentLoaded",e)};document.readyState!=="loading"?setTimeout(()=>e(),0):document.addEventListener("DOMContentLoaded",e);let t=()=>te(oi(),(i,a)=>{Ui[i]=a[1]});ll={...Ln},Ct={...re},Et={...U},Ui={},t(),gt=(...i)=>{let a=ap(...i);return a.on("destroy",ft),Ue.apps.push(a),hn(a)},ft=i=>{let a=Ue.apps.findIndex(n=>n.isAttachedTo(i));return a>=0?(Ue.apps.splice(a,1)[0].restoreElement(),!0):!1},Wi=i=>Array.from(i.querySelectorAll(`.${Ep}`)).filter(l=>!Ue.apps.find(o=>o.isAttachedTo(l))).map(l=>gt(l)),Hi=i=>{let a=Ue.apps.find(n=>n.isAttachedTo(i));return a?hn(a):null},ve=(...i)=>{i.forEach(cp),t()},ji=()=>{let i={};return te(oi(),(a,n)=>{i[a]=n[0]}),i},Ft=i=>(ce(i)&&(Ue.apps.forEach(a=>{a.setOptions(i)}),ds(i)),ji())}function ol(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),i.push.apply(i,a)}return i}function xl(e){for(var t=1;te.length)&&(t=e.length);for(var i=0,a=new Array(t);i
',Cp=Number.isNaN||De.isNaN;function j(e){return typeof e=="number"&&!Cp(e)}var Tl=function(t){return t>0&&t<1/0};function oa(e){return typeof e>"u"}function lt(e){return sa(e)==="object"&&e!==null}var Bp=Object.prototype.hasOwnProperty;function It(e){if(!lt(e))return!1;try{var t=e.constructor,i=t.prototype;return t&&i&&Bp.call(i,"isPrototypeOf")}catch{return!1}}function be(e){return typeof e=="function"}var Np=Array.prototype.slice;function zl(e){return Array.from?Array.from(e):Np.call(e)}function le(e,t){return e&&be(t)&&(Array.isArray(e)||j(e.length)?zl(e).forEach(function(i,a){t.call(e,i,a,e)}):lt(e)&&Object.keys(e).forEach(function(i){t.call(e,e[i],i,e)})),e}var J=Object.assign||function(t){for(var i=arguments.length,a=new Array(i>1?i-1:0),n=1;n