diff --git a/plugins/multiview/__init__.py b/plugins/multiview/__init__.py index 3d74832..ed0d399 100644 --- a/plugins/multiview/__init__.py +++ b/plugins/multiview/__init__.py @@ -165,13 +165,21 @@ def _autostart(self): @property def fields(self): """Regenerate fields from current DB settings on every request.""" + config_mod = _config() try: from apps.plugins.models import PluginConfig cfg = PluginConfig.objects.get(key=PLUGIN_DB_KEY) - settings = cfg.settings + settings, changed1 = config_mod.ensure_layout_order(cfg.settings) + settings, changed2 = config_mod.reconcile_layout_count(settings) + settings, changed3 = config_mod.ensure_custom_layout_order(settings) + if changed1 or changed2 or changed3: + cfg.settings = settings + cfg.save() except Exception: - settings = {} - return _config().build_plugin_fields(settings) + settings, _changed = config_mod.ensure_layout_order({}) + settings, _changed = config_mod.reconcile_layout_count(settings) + settings, _changed = config_mod.ensure_custom_layout_order(settings) + return config_mod.build_plugin_fields(settings) # Action dispatcher @@ -192,20 +200,28 @@ def _deps(): # generate_m3u def _generate_m3u(self) -> dict: + config_mod = _config() try: from apps.plugins.models import PluginConfig cfg = PluginConfig.objects.get(key=PLUGIN_DB_KEY) - settings = cfg.settings + settings, changed1 = config_mod.ensure_layout_order(cfg.settings) + settings, changed2 = config_mod.reconcile_layout_count(settings) + settings, changed3 = config_mod.ensure_custom_layout_order(settings) + if changed1 or changed2 or changed3: + cfg.settings = settings + cfg.save() except Exception: - settings = {} - mv_count = max(1, int(settings.get("multiview_count", 1))) + settings, _changed = config_mod.ensure_layout_order({}) + settings, _changed = config_mod.reconcile_layout_count(settings) + settings, _changed = config_mod.ensure_custom_layout_order(settings) + order = settings.get("multiview_order", []) lines = ["#EXTM3U"] - for n in range(1, mv_count + 1): + for n in order: name = settings.get(f"multiview_{n}_name", f"Multiview {n}") or f"Multiview {n}" safe_name = name.replace('"', "'") # quotes break EXTINF attribute parsing stream_url = f"http://127.0.0.1:{DEFAULT_SERVER_PORT}/stream/{n}" - lines.append(f'#EXTINF:-1 tvg-id="multiview_{n}" tvg-name="{safe_name}",{safe_name}') + lines.append(f'#EXTINF:-1 tvg-id="mv-{n}" tvg-name="{safe_name}",{safe_name}') lines.append(stream_url) m3u_content = "\n".join(lines) + "\n" @@ -248,30 +264,28 @@ def _generate_m3u(self) -> dict: } def _refresh_epg_then_m3u(self, account_id, source_id) -> None: - """Refresh EPG first, then M3U, in sequence. - - Firing both refreshes at once collides on Dispatcharr's shared celery DB - connection ("the last operation didn't produce records (command status: - INSERT 0 N)"). A celery chain serializes them; EPG first so program data - is current before the M3U account sync runs. - - refresh_single_m3u_account internally calls refresh_m3u_groups(full_refresh=True) - which calls process_groups, which hits a Python 3.13 / Django ORM incompatibility - (StopIteration raised inside QuerySet.__iter__ generator -> RuntimeError). - Calling refresh_m3u_groups directly with full_refresh=False skips process_groups - and avoids the crash. + """Refresh EPG first, then M3U, once EPG finishes (success OR error). + + Firing both at once collides on Dispatcharr's shared celery DB connection + ("the last operation didn't produce records (command status: INSERT 0 N)"), + so M3U must wait for EPG to finish. A plain celery chain achieves that but + aborts the M3U task if EPG raises -- which silently skipped the M3U refresh + (and all its Dispatcharr-side websocket progress) whenever EPG refresh + failed. link_error() also fires the M3U task on EPG's failure path, so it + always runs once EPG is done, regardless of outcome. """ try: from celery import chain from apps.m3u.tasks import refresh_single_m3u_account if source_id is not None: from apps.epg.tasks import refresh_epg_data - chain(refresh_epg_data.si(source_id), - refresh_single_m3u_account.si(account_id)).delay() + epg_sig = refresh_epg_data.si(source_id) + epg_sig.link_error(refresh_single_m3u_account.si(account_id)) + chain(epg_sig, refresh_single_m3u_account.si(account_id)).delay() else: refresh_single_m3u_account.delay(account_id) except Exception as e: # noqa: BLE001 - logger.warning(f"Could not trigger EPG/M3U refresh chain: {e}") + logger.warning(f"Could not trigger EPG/M3U refresh: {e}") # start_server diff --git a/plugins/multiview/channel.py b/plugins/multiview/channel.py index a911a10..2b2547f 100644 --- a/plugins/multiview/channel.py +++ b/plugins/multiview/channel.py @@ -87,21 +87,28 @@ def _even(v): def fit_into_tile(frame, w, h, valign="center", halign="center"): - """Scale a decoded frame into a w x h yuv420p tile, preserving aspect - ratio (content is never cropped). Letterbox/pillarbox padding is - centered by default, or pushed to one edge via valign ("center"/"top"/ - "bottom") and halign ("center"/"left"/"right") so a tile's content can - be made to touch an adjacent tile's content with no gap at the shared - edge, leaving any padding on the outer edge instead.""" + """Scale a decoded frame preserving aspect ratio (content is never + cropped). Letterbox/pillarbox padding is centered by default, or pushed + to one edge via valign ("center"/"top"/"bottom") and halign + ("center"/"left"/"right") so a tile's content can be made to touch an + adjacent tile's content with no gap at the shared edge, leaving any + padding on the outer edge instead. + + Returns (Y, U, V, ox, oy, tw, th) -- the content-sized planes and their + placement within the w x h tile -- rather than a full w x h buffer with + black padding baked in, so the compositor can blit only the real content + and leave letterbox/pillarbox padding alone (showing whatever's already + on the persistent canvas, e.g. the background image, instead of painting + opaque black over it every frame). + """ sw, sh = frame.width, frame.height if sw <= 0 or sh <= 0: - return black_planes(w, h) + return (*black_planes(w, h), 0, 0, w, h) scale = min(w / sw, h / sh) tw, th = _even(sw * scale), _even(sh * scale) tw, th = min(tw, w), min(th, h) sf = frame.reformat(width=tw, height=th, format="yuv420p") sy, su, sv = yuv_planes_from_frame(sf, tw, th) - Y, U, V = black_planes(w, h) if halign == "left": ox = 0 elif halign == "right": @@ -114,10 +121,7 @@ def fit_into_tile(frame, w, h, valign="center", halign="center"): oy = (h - th) & ~1 else: oy = ((h - th) // 2) & ~1 - Y[oy:oy + th, ox:ox + tw] = sy - U[oy // 2:oy // 2 + th // 2, ox // 2:ox // 2 + tw // 2] = su - V[oy // 2:oy // 2 + th // 2, ox // 2:ox // 2 + tw // 2] = sv - return (Y, U, V) + return (sy, su, sv, ox, oy, tw, th) class Channel: @@ -136,7 +140,7 @@ def __init__(self, spec): self.featured = bool(spec.get("featured", False)) self.valign = spec.get("valign", "center") self.halign = spec.get("halign", "center") - self.fallback = black_planes(self.w, self.h) + self.fallback = (*black_planes(self.w, self.h), 0, 0, self.w, self.h) self.latest = self.fallback self.fresh_until = 0.0 logo = spec.get("logo") @@ -188,7 +192,7 @@ def _make_fallback(self, logo): break except Exception as e: # noqa: BLE001 log(f"logo decode failed for {self.name}: {e}") - return (Y, U, V) + return (Y, U, V, 0, 0, self.w, self.h) def _load_logo(self, logo): """Load logo in background and swap self.fallback when ready.""" diff --git a/plugins/multiview/compositor_worker.py b/plugins/multiview/compositor_worker.py index 279430b..52c1236 100644 --- a/plugins/multiview/compositor_worker.py +++ b/plugins/multiview/compositor_worker.py @@ -22,8 +22,9 @@ # channel.py sets up the vendored PyAV sys.path as a side effect of import; # numpy must be imported after so it finds the vendored build. -from channel import Channel, AUDIO_RATE, AUDIO_LAYOUT, log, _yuv_planes # noqa: E402 +from channel import Channel, AUDIO_RATE, AUDIO_LAYOUT, log, _yuv_planes, yuv_planes_from_frame, _even # noqa: E402 +import av # noqa: E402 (vendored, already on sys.path via the channel import above) import numpy as np # noqa: E402 from parameters import fps_fraction, build_encoder_cmd, validate_encoder # noqa: E402 @@ -121,6 +122,31 @@ def audio_feeder(track, fd, stop): time.sleep(0.02) +# ---------------------------------------------------------------- background image + +def _load_background(path, out_w, out_h): + """Decode a still image and scale+center-crop it to exactly out_w x out_h + (aspect-preserving cover, like CSS background-size: cover), returning + (Y, U, V) planes ready to seed the canvas once at startup. Same PyAV + decode-to-YUV technique as channel.py's _make_fallback (logo image), + just cover-fit instead of contain-fit since this fills the whole frame + rather than a small padded tile. + """ + with av.open(path) as c: + for frame in c.decode(video=0): + scale = max(out_w / frame.width, out_h / frame.height) + sw, sh = _even(round(frame.width * scale)), _even(round(frame.height * scale)) + rf = frame.reformat(width=sw, height=sh, format="yuv420p") + y, u, v = yuv_planes_from_frame(rf, sw, sh) + ox = ((sw - out_w) // 2) & ~1 + oy = ((sh - out_h) // 2) & ~1 + Y = np.ascontiguousarray(y[oy:oy + out_h, ox:ox + out_w]) + U = np.ascontiguousarray(u[oy // 2:(oy + out_h) // 2, ox // 2:(ox + out_w) // 2]) + V = np.ascontiguousarray(v[oy // 2:(oy + out_h) // 2, ox // 2:(ox + out_w) // 2]) + return (Y, U, V) + return None + + # ---------------------------------------------------------------- main def main(): @@ -181,6 +207,24 @@ def pump_out(): Uc[:] = 128 Vc[:] = 128 + # Seed the canvas with a background image once, if configured. Kept as + # an immutable reference copy (bg_buf) alongside the live canvas: each + # frame, every tile's rect is restored from this copy before its actual + # content is blitted on top, so letterbox/pillarbox padding (and any + # gap a layout leaves uncovered) shows the background instead of a + # stale opaque-black bar painted over it by a previous frame. + bg_path = cfg.get("background") + if bg_path: + try: + bg = _load_background(bg_path, out_w, out_h) + if bg: + Yc[:], Uc[:], Vc[:] = bg + except Exception as e: # noqa: BLE001 + log(f"background image load failed ({bg_path}): {e}") + + bg_buf = cbuf.copy() + bg_Y, bg_U, bg_V = _yuv_planes(bg_buf, out_w, out_h) + start = time.monotonic() n = 0 log_at = start + 30.0 @@ -190,11 +234,15 @@ def pump_out(): try: while not stop.is_set(): for t in channels: - Yt, Ut, Vt = t.current() + Yt, Ut, Vt, ox, oy, tw, th = t.current() x, y, w, h = t.x, t.y, t.w, t.h - Yc[y:y + h, x:x + w] = Yt - Uc[y // 2:(y + h) // 2, x // 2:(x + w) // 2] = Ut - Vc[y // 2:(y + h) // 2, x // 2:(x + w) // 2] = Vt + Yc[y:y + h, x:x + w] = bg_Y[y:y + h, x:x + w] + Uc[y // 2:(y + h) // 2, x // 2:(x + w) // 2] = bg_U[y // 2:(y + h) // 2, x // 2:(x + w) // 2] + Vc[y // 2:(y + h) // 2, x // 2:(x + w) // 2] = bg_V[y // 2:(y + h) // 2, x // 2:(x + w) // 2] + px, py = x + ox, y + oy + Yc[py:py + th, px:px + tw] = Yt + Uc[py // 2:(py + th) // 2, px // 2:(px + tw) // 2] = Ut + Vc[py // 2:(py + th) // 2, px // 2:(px + tw) // 2] = Vt if not _write_all(video_w, memoryview(cbuf)): break n += 1 diff --git a/plugins/multiview/config.py b/plugins/multiview/config.py index 8e8d17e..826dde3 100644 --- a/plugins/multiview/config.py +++ b/plugins/multiview/config.py @@ -1,7 +1,9 @@ """Plugin configuration and field definitions for Dispatcharr Multiview.""" +import datetime import json import os +import secrets def _load_plugin_config() -> dict: @@ -33,14 +35,28 @@ def _load_plugin_config() -> dict: {"value": "enabled", "label": "Enabled"}, ], "description": ( - "Serves a mobile-friendly PWA dashboard at http://:9292/dash/ " - "for editing settings and managing active streams without the " - "Dispatcharr admin UI. Off by default. You may need to add " - "9292:9292 to your docker-compose.yml ports to reach it from " - "outside the container. Changing this setting requires a " + "Serves a mobile-friendly PWA dashboard on port 9292 (fixed -- " + "shared with the multiview stream output itself, not " + "configurable) for editing settings and managing active streams " + "without the Dispatcharr admin UI. Off by default. You may need " + "to add 9292:9292 to your docker-compose.yml ports to reach it " + "from outside the container. Changing this setting requires a " "plugin/Dispatcharr reload (e.g. restart Dispatcharr) to take effect." ), }, + { + "id": "dash_path", + "label": "Dashboard Mount Path", + "type": "string", + "default": "/dash", + "placeholder": "/dash", + "description": ( + "URL path the dashboard is served under, e.g. '/dash' gives " + "http://:9292/dash/. Takes effect immediately, no restart " + "needed. Avoid '/stream' and '/internal', which are reserved for " + "the plugin's own streaming endpoints." + ), + }, { "id": "epg_refresh_hours", "label": "Auto-Refresh Interval (hours)", @@ -199,7 +215,9 @@ def _vaapi_fields() -> list: "min": 1, "description": ( "How many multiview streams to define. " - "After changing this value, save and refresh to see the new layout blocks" + "After changing this value, save and reload the plugin to see the new layout blocks. " + "Our own dashboard (/dash) manages layouts directly and hides this field -- " + "it's only needed when adding a layout from this native settings page." ), "placeholder": "1", } @@ -213,6 +231,179 @@ def _vaapi_fields() -> list: ] +def _new_layout_id() -> str: + return secrets.token_hex(4) + + +_BACKUP_KEYS = ("multiview_pre_migration_backup", "multiview_pre_reconcile_backup") + + +def _snapshot_before(settings: dict, backup_key: str) -> dict: + """Stash a single most-recent copy of *settings* under backup_key before a + destructive change (legacy migration rename, or reconcile_layout_count's + shrink path deleting layout keys). Manual-recovery safety net only, not a + version history -- overwrites any prior snapshot under the same key. + + Recovery (Django shell): + from apps.plugins.models import PluginConfig + cfg = PluginConfig.objects.get(key="multiview") + cfg.settings = cfg.settings["multiview_pre_reconcile_backup"]["settings"] + cfg.save() + """ + clean = {k: v for k, v in settings.items() if k not in _BACKUP_KEYS} + new_settings = dict(settings) + new_settings[backup_key] = { + "timestamp": datetime.datetime.utcnow().isoformat() + "Z", + "settings": clean, + } + return new_settings + + +def _backfill_layout_names(settings: dict) -> tuple: + """Fill in a missing multiview_{id}_name for any layout already in + multiview_order. Covers layouts that migrated under an earlier build of + this migration (before it started persisting the name explicitly) -- + without this, a layout stuck in that state would stay nameless forever, + since ensure_layout_order's migration branch only ever runs once. + """ + order = settings.get("multiview_order", []) + missing = [ + (idx, layout_id) for idx, layout_id in enumerate(order) + if f"multiview_{layout_id}_name" not in settings + ] + if not missing: + return settings, False + new_settings = dict(settings) + for idx, layout_id in missing: + new_settings[f"multiview_{layout_id}_name"] = f"Multiview {idx + 1}" + return new_settings, True + + +def ensure_layout_order(settings: dict) -> tuple: + """Ensure *settings* has a `multiview_order` list of stable layout ids. + + Position used to be identity (`multiview_{n}_*`, n = 1..multiview_count), + but n is baked into the live stream URL and M3U tvg-id, so renumbering on + delete/reorder silently swapped a viewer's stream on reconnect. This + migrates any legacy numeric-keyed install to `multiview_{id}_*` keys plus + an explicit `multiview_order` (a JSON list of ids) that's the only place + position is recorded, or bootstraps a single fresh layout for a brand new + install. Runs at most once per install -- a no-op once `multiview_order` + exists. + + Returns (settings, changed). Callers must persist `settings` back to the + DB when changed=True, since the migration must not silently re-run (and + generate different ids) on every request. + """ + if "multiview_order" in settings: + return _backfill_layout_names(settings) + + new_settings = dict(settings) + + legacy_count = settings.get("multiview_count") + is_legacy = legacy_count is not None or any(k.startswith("multiview_1_") for k in settings) + if is_legacy: + new_settings = _snapshot_before(new_settings, "multiview_pre_migration_backup") + count = max(1, int(legacy_count or 1)) + order = [] + for n in range(1, count + 1): + new_id = _new_layout_id() + prefix = f"multiview_{n}_" + for key in list(new_settings.keys()): + if key.startswith(prefix): + suffix = key[len(prefix):] + new_settings[f"multiview_{new_id}_{suffix}"] = new_settings.pop(key) + # The name field is only ever filled in client-side from the + # field default -- persist it for real so it survives migration + # instead of depending on that client-side illusion. + name_key = f"multiview_{new_id}_name" + if name_key not in new_settings: + new_settings[name_key] = f"Multiview {n}" + order.append(new_id) + new_settings["multiview_order"] = order + new_settings["multiview_count"] = len(order) + return new_settings, True + + # Brand new install: bootstrap a single empty layout, same as the old + # `max(1, int(settings.get("multiview_count", 1)))` default. + new_settings["multiview_order"] = [_new_layout_id()] + new_settings["multiview_count"] = 1 + return new_settings, True + + +def reconcile_layout_count(settings: dict) -> tuple: + """Grow/shrink multiview_order to match multiview_count. + + multiview_count is the only layout-management control exposed on + Dispatcharr's native plugin settings page. That page fully overwrites + PluginConfig.settings on save (PluginManager.update_settings()) with no + visibility into multiview_order, so a native-page edit to the count is + reconciled here, lazily, the next time any of our own settings-read call + sites runs (mirrors ensure_layout_order's own call pattern -- call this + right after it, persist if either reports a change). + """ + order = list(settings.get("multiview_order", [])) + desired = settings.get("multiview_count") + if desired is None: + return settings, False + desired = max(1, int(desired)) + if desired == len(order): + return settings, False + + new_settings = dict(settings) + if desired > len(order): + for _ in range(desired - len(order)): + new_id = _new_layout_id() + position = len(order) + 1 + new_settings[f"multiview_{new_id}_name"] = f"Multiview {position}" + new_settings[f"multiview_{new_id}_layout"] = "auto" + new_settings[f"multiview_{new_id}_selector_type"] = "classic" + new_settings[f"multiview_{new_id}_channel_count"] = 4 + new_settings[f"multiview_{new_id}_epg_source_mode"] = "dummy" + order.append(new_id) + else: + new_settings = _snapshot_before(new_settings, "multiview_pre_reconcile_backup") + while len(order) > desired: + removed_id = order.pop() + prefix = f"multiview_{removed_id}_" + for key in list(new_settings.keys()): + if key.startswith(prefix): + new_settings.pop(key, None) + + new_settings["multiview_order"] = order + new_settings["multiview_count"] = len(order) + return new_settings, True + + +def ensure_custom_layout_order(settings: dict) -> tuple: + """Ensure *settings* has a `multiview_custom_layouts_order` list of + style ids, mirroring `ensure_layout_order`'s rationale: dict key order + on `multiview_custom_layouts` isn't a reliable place to record display + order (not guaranteed to round-trip through JSON storage), so an + explicit ordered id list is kept alongside it instead. Migrates once + from the dict's existing keys if the order list is missing, and appends + any "orphan" ids present in the dict but absent from the order list + (e.g. a style added directly via API without going through this path). + + Returns (settings, changed). Callers must persist `settings` back to + the DB when changed=True. + """ + layouts = settings.get("multiview_custom_layouts", {}) + order = settings.get("multiview_custom_layouts_order") + if order is None: + new_settings = dict(settings) + new_settings["multiview_custom_layouts_order"] = list(layouts.keys()) + return new_settings, True + + orphans = [style_id for style_id in layouts.keys() if style_id not in order] + if not orphans: + return settings, False + + new_settings = dict(settings) + new_settings["multiview_custom_layouts_order"] = [*order, *orphans] + return new_settings, True + + def _get_multiview_profile_params() -> str: """Return the ffmpeg parameters string for the globally-enabled default stream profile.""" try: @@ -278,10 +469,10 @@ def _build_warnings_fields(settings: dict) -> list: encoder = settings.get("video_encoder", "libx264") if encoder == "libx264": - mv_count = max(1, int(settings.get("multiview_count", 1))) + order = settings.get("multiview_order", []) heavy_layouts = [ - n for n in range(1, mv_count + 1) - if max(2, int(settings.get(f"multiview_{n}_channel_count", 4))) > 3 + idx + 1 for idx, layout_id in enumerate(order) + if max(2, int(settings.get(f"multiview_{layout_id}_channel_count", 4))) > 3 ] if heavy_layouts: layout_str = ", ".join(f"Layout {n}" for n in heavy_layouts) @@ -362,8 +553,8 @@ def _build_channel_options() -> list: return opts -def _build_layout_channel_options(n: int, settings: dict, ch_count: int, selector_type: str, regex_pattern: str) -> list: - """Return channel options scoped to the channels actually in layout n.""" +def _build_layout_channel_options(layout_id: str, settings: dict, ch_count: int, selector_type: str, regex_pattern: str) -> list: + """Return channel options scoped to the channels actually in this layout.""" opts = [{"value": "_none", "label": "Select a channel"}] seen = set() try: @@ -382,7 +573,7 @@ def _build_layout_channel_options(n: int, settings: dict, ch_count: int, selecto opts.append({"value": str(ch["id"]), "label": f"{num} - {ch['name']}"}) else: for m in range(1, ch_count + 1): - ch_id = settings.get(f"multiview_{n}_channel_{m}", "_none") + ch_id = settings.get(f"multiview_{layout_id}_channel_{m}", "_none") if ch_id and ch_id != "_none" and ch_id not in seen: try: ch = Channel.objects.values("id", "name", "channel_number").get(id=int(ch_id)) @@ -396,19 +587,25 @@ def _build_layout_channel_options(n: int, settings: dict, ch_count: int, selecto return opts -def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic", regex_pattern: str = "", epg_source_mode: str = "dummy", layout_channel_options: list = None) -> list: - """Return the list of fields for multiview layout block *n* with *ch_count* channel slots.""" +def _build_multiview_block(layout_id: str, position: int, ch_count: int, selector_type: str = "classic", regex_pattern: str = "", epg_source_mode: str = "dummy", layout_channel_options: list = None, layout_style_options: list = None) -> list: + """Return the list of fields for multiview layout *layout_id* with *ch_count* channel slots. + + *position* is only for human-readable labels ("Layout 2 Name") -- the + stable *layout_id* is what's baked into field ids/settings keys, so + reordering/deleting other layouts never renames this one's keys. + """ is_regex = selector_type == "regex" + n = position # short alias for the label text below fields = [ { - "id": f"multiview_{n}_header", + "id": f"multiview_{layout_id}_header", "label": f"── Layout {n} ──────────────────────", "type": "info", "description": "", }, { - "id": f"multiview_{n}_name", + "id": f"multiview_{layout_id}_name", "label": f"Layout {n} Name", "type": "string", "default": f"Multiview {n}", @@ -416,18 +613,18 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" "placeholder": f"Multiview {n}", }, { - "id": f"multiview_{n}_layout", + "id": f"multiview_{layout_id}_layout", "label": f"Layout {n} Style", "type": "select", "default": "auto", - "options": _LAYOUT_OPTIONS, + "options": layout_style_options or _LAYOUT_OPTIONS, "description": ( "Auto Grid: square-ish tile grid sized automatically from channel count. " "Featured: first channel large on the left, remaining channels stacked on the right" ), }, { - "id": f"multiview_{n}_selector_type", + "id": f"multiview_{layout_id}_selector_type", "label": f"Layout {n} Channel Selection", "type": "select", "default": "classic", @@ -442,7 +639,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" ), }, { - "id": f"multiview_{n}_channel_count", + "id": f"multiview_{layout_id}_channel_count", "label": f"Layout {n} Max Channels" if is_regex else f"Layout {n} Channel Count", "type": "number", "default": 4, @@ -463,7 +660,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" if is_regex: fields.append( { - "id": f"multiview_{n}_regex_pattern", + "id": f"multiview_{layout_id}_regex_pattern", "label": f"Layout {n} Channel Pattern", "type": "string", "default": "", @@ -485,7 +682,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" for m in range(1, ch_count + 1): fields.append( { - "id": f"multiview_{n}_channel_{m}", + "id": f"multiview_{layout_id}_channel_{m}", "label": f"Layout {n}: Channel {m}", "type": "select", "default": "_none", @@ -500,7 +697,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" fields.append( { - "id": f"multiview_{n}_audio_source", + "id": f"multiview_{layout_id}_audio_source", "label": f"Layout {n} Audio Source", "type": "select", "default": audio_default, @@ -515,7 +712,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" fields.append( { - "id": f"multiview_{n}_epg_source_mode", + "id": f"multiview_{layout_id}_epg_source_mode", "label": f"Layout {n} EPG Source", "type": "select", "default": "dummy", @@ -534,7 +731,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" if epg_source_mode == "forward": fields.append( { - "id": f"multiview_{n}_epg_forward_channel", + "id": f"multiview_{layout_id}_epg_forward_channel", "label": f"Layout {n} EPG Source Channel", "type": "select", "default": "_none", @@ -548,7 +745,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" else: fields += [ { - "id": f"multiview_{n}_epg_title", + "id": f"multiview_{layout_id}_epg_title", "label": f"Layout {n} EPG Title", "type": "string", "default": "", @@ -556,7 +753,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" "description": "Program title shown in the EPG. Leave blank to use the layout name.", }, { - "id": f"multiview_{n}_epg_subtitle", + "id": f"multiview_{layout_id}_epg_subtitle", "label": f"Layout {n} EPG Subtitle", "type": "string", "default": "", @@ -564,7 +761,7 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" "description": "Optional subtitle shown below the title in the EPG.", }, { - "id": f"multiview_{n}_epg_categories", + "id": f"multiview_{layout_id}_epg_categories", "label": f"Layout {n} EPG Categories", "type": "string", "default": "", @@ -595,17 +792,32 @@ def _build_multiview_block(n: int, ch_count: int, selector_type: str = "classic" def build_plugin_fields(settings: dict) -> list: - """Build the full field list based on current settings.""" - mv_count = max(1, int(settings.get("multiview_count", 1))) + """Build the full field list based on current settings. + + Callers must run `ensure_layout_order()` on *settings* (and persist it if + changed) before calling this -- this function just renders whatever + `multiview_order` is already there. + """ + order = settings.get("multiview_order", []) encoder = settings.get("video_encoder", "libx264") + custom_layouts = settings.get("multiview_custom_layouts", {}) + layout_style_options = _LAYOUT_OPTIONS + [ + {"value": f"custom:{style_id}", "label": f"Custom: {info.get('name') or style_id}"} + for style_id, info in custom_layouts.items() + if info.get("elements") + ] + enc_field = dict(_VIDEO_ENCODER_FIELD) enc_field["options"] = _ENCODER_OPTIONS + count_field = dict(_MULTIVIEW_COUNT_FIELD) + count_field["default"] = len(order) + fields = _build_warnings_fields(settings) fields.append(_GLOBAL_SETTINGS_HEADER) fields.extend(_GLOBAL_SETTINGS_FIELDS) - fields.append(_MULTIVIEW_COUNT_FIELD) + fields.append(count_field) fields.append(_VIDEO_SETTINGS_HEADER) fields.extend(_VIDEO_OUTPUT_FIELDS) fields.append(enc_field) @@ -613,13 +825,14 @@ def build_plugin_fields(settings: dict) -> list: extra_fn = _ENCODER_EXTRA_FIELDS.get(encoder, _x264_fields) fields.extend(extra_fn()) - for n in range(1, mv_count + 1): - ch_count = max(2, int(settings.get(f"multiview_{n}_channel_count", 4))) - selector_type = settings.get(f"multiview_{n}_selector_type", "classic") - regex_pattern = settings.get(f"multiview_{n}_regex_pattern", "") - epg_source_mode = settings.get(f"multiview_{n}_epg_source_mode", "dummy") - layout_ch_opts = _build_layout_channel_options(n, settings, ch_count, selector_type, regex_pattern) - fields.extend(_build_multiview_block(n, ch_count, selector_type, regex_pattern, epg_source_mode, layout_ch_opts)) + for idx, layout_id in enumerate(order): + position = idx + 1 + ch_count = max(2, int(settings.get(f"multiview_{layout_id}_channel_count", 4))) + selector_type = settings.get(f"multiview_{layout_id}_selector_type", "classic") + regex_pattern = settings.get(f"multiview_{layout_id}_regex_pattern", "") + epg_source_mode = settings.get(f"multiview_{layout_id}_epg_source_mode", "dummy") + layout_ch_opts = _build_layout_channel_options(layout_id, settings, ch_count, selector_type, regex_pattern) + fields.extend(_build_multiview_block(layout_id, position, ch_count, selector_type, regex_pattern, epg_source_mode, layout_ch_opts, layout_style_options)) return fields diff --git a/plugins/multiview/dash/api.py b/plugins/multiview/dash/api.py index 9acac27..29c5eb8 100644 --- a/plugins/multiview/dash/api.py +++ b/plugins/multiview/dash/api.py @@ -1,13 +1,19 @@ -"""REST API handlers for /api/* and static file serving for /dash/*.""" +"""REST API handlers for /api/* and static file serving under the dashboard's +runtime-configurable mount path (dash_path setting, default /dash).""" +import base64 import json import logging import mimetypes import os +import re logger = logging.getLogger(__name__) _STATIC_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "static") +_PLUGIN_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) +_BACKGROUNDS_DIR = os.path.join(_PLUGIN_DIR, "style_backgrounds") +_MAX_BACKGROUND_BYTES = 5 * 1024 * 1024 _PLUGIN_KEY = "multiview" _CORS_HEADERS = [ @@ -62,11 +68,23 @@ def _verify_token(environ) -> bool: def _get_settings() -> dict: + config_mod = _get_config_mod() try: from apps.plugins.models import PluginConfig - return PluginConfig.objects.get(key=_PLUGIN_KEY).settings + cfg = PluginConfig.objects.get(key=_PLUGIN_KEY) except Exception: - return {} + settings, _ = config_mod.ensure_layout_order({}) + settings, _ = config_mod.reconcile_layout_count(settings) + settings, _ = config_mod.ensure_custom_layout_order(settings) + return settings + + settings, changed1 = config_mod.ensure_layout_order(cfg.settings) + settings, changed2 = config_mod.reconcile_layout_count(settings) + settings, changed3 = config_mod.ensure_custom_layout_order(settings) + if changed1 or changed2 or changed3: + cfg.settings = settings + cfg.save() + return settings def _save_settings(updates: dict): @@ -77,6 +95,13 @@ def _save_settings(updates: dict): cfg.settings.pop(k, None) else: cfg.settings[k] = v + # Keep the legacy multiview_count field (still authoritative for + # reconcile_layout_count, which detects native-settings-page edits) in + # sync whenever the dashboard itself changes multiview_order -- otherwise + # reconcile_layout_count treats the dashboard's own change as drift and + # deletes it back out on the very next settings read. + if updates.get("multiview_order") is not None: + cfg.settings["multiview_count"] = len(cfg.settings.get("multiview_order") or []) cfg.save() @@ -117,6 +142,49 @@ def handle_auth_token(environ, start_response): return _json_error(start_response, "500 Internal Server Error", f"Token error: {e}") +def handle_auth_refresh(environ, start_response): + if environ.get("REQUEST_METHOD") == "OPTIONS": + return cors_preflight(start_response) + if environ.get("REQUEST_METHOD") != "POST": + return _json_error(start_response, "405 Method Not Allowed", "POST only") + + try: + data = json.loads(_read_body(environ)) + except Exception: + return _json_error(start_response, "400 Bad Request", "Invalid JSON") + + refresh_str = data.get("refresh", "") + if not refresh_str: + return _json_error(start_response, "400 Bad Request", "refresh required") + + try: + from rest_framework_simplejwt.tokens import RefreshToken + from rest_framework_simplejwt.exceptions import TokenError + token = RefreshToken(refresh_str) + return _json_ok(start_response, {"access": str(token.access_token)}) + except TokenError: + return _json_error(start_response, "401 Unauthorized", "Refresh token invalid or expired") + + +def _plugin_version() -> str: + try: + with open(os.path.join(_PLUGIN_DIR, "plugin.json")) as f: + return json.load(f).get("version", "") + except Exception: + return "" + + +def _dispatcharr_version() -> str: + # Dispatcharr's version lives in a plain top-level `version.py` module + # (not under the `dispatcharr` package) -- not a stable public API, so + # this is defensive: a future Dispatcharr release could move/remove it. + try: + import version as _dv + return getattr(_dv, "__version__", "") + except Exception: + return "" + + def handle_config(environ, start_response): if environ.get("REQUEST_METHOD") == "OPTIONS": return cors_preflight(start_response) @@ -127,8 +195,13 @@ def handle_config(environ, start_response): if method == "GET": settings = _get_settings() - mv_count = max(1, int(settings.get("multiview_count", 1))) - return _json_ok(start_response, {"settings": settings, "layout_count": mv_count}) + layout_count = len(settings.get("multiview_order", [])) + return _json_ok(start_response, { + "settings": settings, + "layout_count": layout_count, + "plugin_version": _plugin_version(), + "dispatcharr_version": _dispatcharr_version(), + }) if method in ("PATCH", "POST"): try: @@ -253,9 +326,9 @@ def handle_streams_restart(environ, start_response): channel_idx = data.get("channel_idx") if n is not None and channel_idx is not None: # Reconnect a specific channel within a layout (non-destructive) - ok = server.reconnect_channel(int(n), int(channel_idx)) + ok = server.reconnect_channel(n, int(channel_idx)) return _json_ok(start_response, {"status": "ok", "reconnected": ok}) - killed = server.kill_stream(int(n)) if n is not None else server.kill_active_streams() + killed = server.kill_stream(n) if n is not None else server.kill_active_streams() return _json_ok(start_response, {"status": "ok", "killed": killed}) except Exception as e: logger.error(f"Streams restart failed: {e}", exc_info=True) @@ -301,6 +374,161 @@ def _get_config_mod(): return mod +def _get_layouts_mod(): + """Return the already-loaded layouts module, or load it standalone. + + dash/api.py isn't always imported under the plugin's own package (see + _get_config_mod's docstring for why that dance is needed there), so a + plain top-level `from . import layouts` here can fail the same way even + though layouts.py itself has no relative imports of its own. + """ + import importlib.util + import sys + + for mod in sys.modules.values(): + if hasattr(mod, 'tile_rects') and hasattr(mod, '_even'): + return mod + + layouts_path = os.path.normpath( + os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "layouts.py") + ) + mod_name = f"mv_layouts_{_PLUGIN_KEY}" + if mod_name in sys.modules: + return sys.modules[mod_name] + + spec = importlib.util.spec_from_file_location(mod_name, layouts_path) + mod = importlib.util.module_from_spec(spec) + sys.modules[mod_name] = mod + spec.loader.exec_module(mod) + return mod + + +def handle_styles_preview(environ, start_response): + if environ.get("REQUEST_METHOD") == "OPTIONS": + return cors_preflight(start_response) + if not _verify_token(environ): + return _json_error(start_response, "401 Unauthorized", "Authentication required") + if environ.get("REQUEST_METHOD") != "GET": + return _json_error(start_response, "405 Method Not Allowed", "GET only") + + try: + from urllib.parse import parse_qs + qs = parse_qs(environ.get("QUERY_STRING", "")) + layout = (qs.get("layout") or ["auto"])[0] + channel_count = int((qs.get("channel_count") or ["4"])[0]) + except Exception: + return _json_error(start_response, "400 Bad Request", "Invalid layout/channel_count") + + try: + layouts_mod = _get_layouts_mod() + # Fixed dummy canvas -- only the fractions matter, geometry is + # resolution-independent by construction (tile_rects rounds to even + # pixels, so a larger canvas keeps more precision). + out_w, out_h = 1920, 1080 + rects = layouts_mod.tile_rects(layout, channel_count, out_w, out_h) + tiles = [ + [x / out_w, y / out_h, w / out_w, h / out_h, valign, halign] + for (x, y, w, h, valign, halign) in rects + ] + return _json_ok(start_response, {"tiles": tiles}) + except Exception as e: + logger.error(f"Style preview failed: {e}", exc_info=True) + return _json_error(start_response, "500 Internal Server Error", str(e)) + + +def _sanitize_filename(name: str) -> str: + base = os.path.basename(name or "background") + base = re.sub(r"[^A-Za-z0-9._-]", "_", base) + return base or "background" + + +def handle_style_background(environ, start_response): + """GET serves a style's saved background image; POST uploads/replaces one. + + Uploads are base64-in-JSON, not multipart -- this raw WSGI app has no + form-parsing anywhere, matching every other endpoint's json-in/json-out + convention. Image validity is only checked lightly (size cap) rather than + decoded here: PyAV must never be imported into this gevent-patched + process (compositor_worker.py runs it in a separate plain-CPython + subprocess specifically to avoid that conflict) -- a bad file just fails + gracefully later when the worker tries to decode it, same as the + existing per-channel logo fallback already handles decode failures. + """ + if environ.get("REQUEST_METHOD") == "OPTIONS": + return cors_preflight(start_response) + if not _verify_token(environ): + return _json_error(start_response, "401 Unauthorized", "Authentication required") + + method = environ.get("REQUEST_METHOD", "GET") + + if method == "GET": + from urllib.parse import parse_qs + qs = parse_qs(environ.get("QUERY_STRING", "")) + style_id = (qs.get("style_id") or [""])[0] + if not style_id: + return _json_error(start_response, "400 Bad Request", "style_id required") + settings = _get_settings() + style = settings.get("multiview_custom_layouts", {}).get(style_id) + filename = style.get("background_image") if style else None + if not filename: + return _json_error(start_response, "404 Not Found", "No background image set") + path = os.path.join(_BACKGROUNDS_DIR, filename) + if not os.path.isfile(path): + return _json_error(start_response, "404 Not Found", "Background image file missing") + try: + with open(path, "rb") as f: + data = f.read() + except OSError as e: + return _json_error(start_response, "500 Internal Server Error", str(e)) + content_type = mimetypes.guess_type(filename)[0] or "application/octet-stream" + start_response("200 OK", [ + ("Content-Type", content_type), + ("Content-Length", str(len(data))), + ] + _CORS_HEADERS) + return [data] + + if method == "POST": + try: + body = json.loads(_read_body(environ)) + except Exception: + return _json_error(start_response, "400 Bad Request", "Invalid JSON") + style_id = body.get("style_id") + filename = body.get("filename") + data_b64 = body.get("data_base64") + if not style_id or not filename or not data_b64: + return _json_error(start_response, "400 Bad Request", "style_id, filename, data_base64 required") + + try: + raw = base64.b64decode(data_b64) + except Exception: + return _json_error(start_response, "400 Bad Request", "Invalid base64 data") + if len(raw) > _MAX_BACKGROUND_BYTES: + return _json_error(start_response, "400 Bad Request", f"Image too large (max {_MAX_BACKGROUND_BYTES // (1024*1024)}MB)") + + stored_name = f"{style_id}_{_sanitize_filename(filename)}" + try: + os.makedirs(_BACKGROUNDS_DIR, exist_ok=True) + with open(os.path.join(_BACKGROUNDS_DIR, stored_name), "wb") as f: + f.write(raw) + except OSError as e: + return _json_error(start_response, "500 Internal Server Error", f"Failed to save image: {e}") + + try: + settings = _get_settings() + custom_layouts = dict(settings.get("multiview_custom_layouts", {})) + style = dict(custom_layouts.get(style_id, {})) + style["background_image"] = stored_name + custom_layouts[style_id] = style + _save_settings({"multiview_custom_layouts": custom_layouts}) + except Exception as e: + logger.error(f"Failed to save background_image reference: {e}", exc_info=True) + return _json_error(start_response, "500 Internal Server Error", str(e)) + + return _json_ok(start_response, {"status": "ok", "filename": stored_name}) + + return _json_error(start_response, "405 Method Not Allowed", "GET or POST only") + + def handle_fields(environ, start_response): if environ.get("REQUEST_METHOD") == "OPTIONS": return cors_preflight(start_response) @@ -314,8 +542,9 @@ def handle_fields(environ, start_response): settings = _get_settings() config_mod = _get_config_mod() all_fields = config_mod.build_plugin_fields(settings) + order = settings.get("multiview_order", []) - layout_re = re.compile(r"^multiview_(\d+)_") + layout_re = re.compile(r"^multiview_([0-9a-f]{8})_") global_fields = [] warnings = [] layout_fields = {} @@ -325,21 +554,22 @@ def handle_fields(environ, start_response): if fid.startswith("_warn") and fid != "_warnings_header": warnings.append(f) elif fid.startswith("_") or fid == "multiview_count": - continue # skip section headers and the implicit count field + continue # skip section headers and the native-page-only count field else: m = layout_re.match(fid) if m: - n = int(m.group(1)) - layout_fields.setdefault(n, []).append(f) + layout_fields.setdefault(m.group(1), []).append(f) else: global_fields.append(f) - mv_count = max(1, int(settings.get("multiview_count", 1))) return _json_ok(start_response, { "warnings": warnings, "global": global_fields, - "layouts": [{"n": n, "fields": fs} for n, fs in sorted(layout_fields.items())], - "layout_count": mv_count, + "layouts": [ + {"n": layout_id, "position": idx + 1, "fields": layout_fields.get(layout_id, [])} + for idx, layout_id in enumerate(order) + ], + "layout_count": len(order), }) except Exception as e: @@ -347,9 +577,13 @@ def handle_fields(environ, start_response): return _json_error(start_response, "500 Internal Server Error", str(e)) -def serve_static(path: str, start_response): - """Serve files from src/dash/static/.""" - rel = path[len("/dash/"):] or "index.html" +def serve_static(mount_path: str, sub_path: str, start_response): + """Serve files from dash/static/, under a runtime-configurable mount path. + + mount_path: normalized prefix the server routed on, e.g. "/dash". + sub_path: request path relative to mount_path, e.g. "/", "/assets/index-x.js". + """ + rel = sub_path.lstrip("/") or "index.html" # Block path traversal safe = os.path.normpath(rel) @@ -367,11 +601,21 @@ def serve_static(path: str, start_response): mime, _ = mimetypes.guess_type(file_path) mime = mime or "application/octet-stream" - cache_control = "no-cache" if mime == "text/html" else "public, max-age=3600" with open(file_path, "rb") as f: data = f.read() + if mime == "text/html": + # The SPA build uses relative asset paths (base: './'), so it doesn't + # know its own mount path at build time. Inject it at request time so + # the frontend can build correct API/asset URLs. + base = (mount_path or "") + "/" + snippet = f''.encode() + data = data.replace(b"", b"" + snippet, 1) + cache_control = "no-cache" + else: + cache_control = "public, max-age=3600" + start_response("200 OK", [ ("Content-Type", mime), ("Content-Length", str(len(data))), diff --git a/plugins/multiview/dash/static/assets/index-BHGMNXvw.css b/plugins/multiview/dash/static/assets/index-BHGMNXvw.css new file mode 100644 index 0000000..22ad9e7 --- /dev/null +++ b/plugins/multiview/dash/static/assets/index-BHGMNXvw.css @@ -0,0 +1 @@ +:root{color-scheme:var(--mantine-color-scheme)}*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}body{margin:0;font-family:var(--mantine-font-family);font-size:var(--mantine-font-size-md);line-height:var(--mantine-line-height);background-color:var(--mantine-color-body);color:var(--mantine-color-text);-webkit-font-smoothing:var(--mantine-webkit-font-smoothing);-moz-osx-font-smoothing:var(--mantine-moz-font-smoothing)}@media screen and (max-device-width:31.25em){body{-webkit-text-size-adjust:100%}}@media(prefers-reduced-motion:reduce){[data-respect-reduced-motion] [data-reduce-motion]{transition:none;animation:none}}[data-mantine-color-scheme=light] .mantine-light-hidden,[data-mantine-color-scheme=dark] .mantine-dark-hidden{display:none}.mantine-focus-auto:focus-visible{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-always:focus{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-never:focus{outline:none}.mantine-active:active{transform:translateY(calc(.0625rem * var(--mantine-scale)))}fieldset:disabled .mantine-active:active{transform:none}:where([dir=rtl]) .mantine-rotate-rtl{transform:rotate(180deg)}:root{--mantine-z-index-app: 100;--mantine-z-index-modal: 200;--mantine-z-index-popover: 300;--mantine-z-index-overlay: 400;--mantine-z-index-max: 9999;--mantine-scale: 1;--mantine-cursor-type: default;--mantine-webkit-font-smoothing: antialiased;--mantine-moz-font-smoothing: grayscale;--mantine-color-white: #fff;--mantine-color-black: #000;--mantine-line-height: 1.55;--mantine-font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-font-family-monospace: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;--mantine-font-family-headings: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-heading-font-weight: 700;--mantine-heading-text-wrap: wrap;--mantine-radius-default: calc(.25rem * var(--mantine-scale));--mantine-primary-color-filled: var(--mantine-color-blue-filled);--mantine-primary-color-filled-hover: var(--mantine-color-blue-filled-hover);--mantine-primary-color-light: var(--mantine-color-blue-light);--mantine-primary-color-light-hover: var(--mantine-color-blue-light-hover);--mantine-primary-color-light-color: var(--mantine-color-blue-light-color);--mantine-breakpoint-xs: 36em;--mantine-breakpoint-sm: 48em;--mantine-breakpoint-md: 62em;--mantine-breakpoint-lg: 75em;--mantine-breakpoint-xl: 88em;--mantine-spacing-xs: calc(.625rem * var(--mantine-scale));--mantine-spacing-sm: calc(.75rem * var(--mantine-scale));--mantine-spacing-md: calc(1rem * var(--mantine-scale));--mantine-spacing-lg: calc(1.25rem * var(--mantine-scale));--mantine-spacing-xl: calc(2rem * var(--mantine-scale));--mantine-font-size-xs: calc(.75rem * var(--mantine-scale));--mantine-font-size-sm: calc(.875rem * var(--mantine-scale));--mantine-font-size-md: calc(1rem * var(--mantine-scale));--mantine-font-size-lg: calc(1.125rem * var(--mantine-scale));--mantine-font-size-xl: calc(1.25rem * var(--mantine-scale));--mantine-line-height-xs: 1.4;--mantine-line-height-sm: 1.45;--mantine-line-height-md: 1.55;--mantine-line-height-lg: 1.6;--mantine-line-height-xl: 1.65;--mantine-shadow-xs: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), 0 calc(.0625rem * var(--mantine-scale)) calc(.125rem * var(--mantine-scale)) rgba(0, 0, 0, .1);--mantine-shadow-sm: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(.625rem * var(--mantine-scale)) calc(.9375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.4375rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-md: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.25rem * var(--mantine-scale)) calc(1.5625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.625rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-lg: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.75rem * var(--mantine-scale)) calc(1.4375rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.75rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-shadow-xl: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(2.25rem * var(--mantine-scale)) calc(1.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(1.0625rem * var(--mantine-scale)) calc(1.0625rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-radius-xs: calc(.125rem * var(--mantine-scale));--mantine-radius-sm: calc(.25rem * var(--mantine-scale));--mantine-radius-md: calc(.5rem * var(--mantine-scale));--mantine-radius-lg: calc(1rem * var(--mantine-scale));--mantine-radius-xl: calc(2rem * var(--mantine-scale));--mantine-primary-color-0: var(--mantine-color-blue-0);--mantine-primary-color-1: var(--mantine-color-blue-1);--mantine-primary-color-2: var(--mantine-color-blue-2);--mantine-primary-color-3: var(--mantine-color-blue-3);--mantine-primary-color-4: var(--mantine-color-blue-4);--mantine-primary-color-5: var(--mantine-color-blue-5);--mantine-primary-color-6: var(--mantine-color-blue-6);--mantine-primary-color-7: var(--mantine-color-blue-7);--mantine-primary-color-8: var(--mantine-color-blue-8);--mantine-primary-color-9: var(--mantine-color-blue-9);--mantine-color-dark-0: #c9c9c9;--mantine-color-dark-1: #b8b8b8;--mantine-color-dark-2: #828282;--mantine-color-dark-3: #696969;--mantine-color-dark-4: #424242;--mantine-color-dark-5: #3b3b3b;--mantine-color-dark-6: #2e2e2e;--mantine-color-dark-7: #242424;--mantine-color-dark-8: #1f1f1f;--mantine-color-dark-9: #141414;--mantine-color-gray-0: #f8f9fa;--mantine-color-gray-1: #f1f3f5;--mantine-color-gray-2: #e9ecef;--mantine-color-gray-3: #dee2e6;--mantine-color-gray-4: #ced4da;--mantine-color-gray-5: #adb5bd;--mantine-color-gray-6: #868e96;--mantine-color-gray-7: #495057;--mantine-color-gray-8: #343a40;--mantine-color-gray-9: #212529;--mantine-color-red-0: #fff5f5;--mantine-color-red-1: #ffe3e3;--mantine-color-red-2: #ffc9c9;--mantine-color-red-3: #ffa8a8;--mantine-color-red-4: #ff8787;--mantine-color-red-5: #ff6b6b;--mantine-color-red-6: #fa5252;--mantine-color-red-7: #f03e3e;--mantine-color-red-8: #e03131;--mantine-color-red-9: #c92a2a;--mantine-color-pink-0: #fff0f6;--mantine-color-pink-1: #ffdeeb;--mantine-color-pink-2: #fcc2d7;--mantine-color-pink-3: #faa2c1;--mantine-color-pink-4: #f783ac;--mantine-color-pink-5: #f06595;--mantine-color-pink-6: #e64980;--mantine-color-pink-7: #d6336c;--mantine-color-pink-8: #c2255c;--mantine-color-pink-9: #a61e4d;--mantine-color-grape-0: #f8f0fc;--mantine-color-grape-1: #f3d9fa;--mantine-color-grape-2: #eebefa;--mantine-color-grape-3: #e599f7;--mantine-color-grape-4: #da77f2;--mantine-color-grape-5: #cc5de8;--mantine-color-grape-6: #be4bdb;--mantine-color-grape-7: #ae3ec9;--mantine-color-grape-8: #9c36b5;--mantine-color-grape-9: #862e9c;--mantine-color-violet-0: #f3f0ff;--mantine-color-violet-1: #e5dbff;--mantine-color-violet-2: #d0bfff;--mantine-color-violet-3: #b197fc;--mantine-color-violet-4: #9775fa;--mantine-color-violet-5: #845ef7;--mantine-color-violet-6: #7950f2;--mantine-color-violet-7: #7048e8;--mantine-color-violet-8: #6741d9;--mantine-color-violet-9: #5f3dc4;--mantine-color-indigo-0: #edf2ff;--mantine-color-indigo-1: #dbe4ff;--mantine-color-indigo-2: #bac8ff;--mantine-color-indigo-3: #91a7ff;--mantine-color-indigo-4: #748ffc;--mantine-color-indigo-5: #5c7cfa;--mantine-color-indigo-6: #4c6ef5;--mantine-color-indigo-7: #4263eb;--mantine-color-indigo-8: #3b5bdb;--mantine-color-indigo-9: #364fc7;--mantine-color-blue-0: #e7f5ff;--mantine-color-blue-1: #d0ebff;--mantine-color-blue-2: #a5d8ff;--mantine-color-blue-3: #74c0fc;--mantine-color-blue-4: #4dabf7;--mantine-color-blue-5: #339af0;--mantine-color-blue-6: #228be6;--mantine-color-blue-7: #1c7ed6;--mantine-color-blue-8: #1971c2;--mantine-color-blue-9: #1864ab;--mantine-color-cyan-0: #e3fafc;--mantine-color-cyan-1: #c5f6fa;--mantine-color-cyan-2: #99e9f2;--mantine-color-cyan-3: #66d9e8;--mantine-color-cyan-4: #3bc9db;--mantine-color-cyan-5: #22b8cf;--mantine-color-cyan-6: #15aabf;--mantine-color-cyan-7: #1098ad;--mantine-color-cyan-8: #0c8599;--mantine-color-cyan-9: #0b7285;--mantine-color-teal-0: #e6fcf5;--mantine-color-teal-1: #c3fae8;--mantine-color-teal-2: #96f2d7;--mantine-color-teal-3: #63e6be;--mantine-color-teal-4: #38d9a9;--mantine-color-teal-5: #20c997;--mantine-color-teal-6: #12b886;--mantine-color-teal-7: #0ca678;--mantine-color-teal-8: #099268;--mantine-color-teal-9: #087f5b;--mantine-color-green-0: #ebfbee;--mantine-color-green-1: #d3f9d8;--mantine-color-green-2: #b2f2bb;--mantine-color-green-3: #8ce99a;--mantine-color-green-4: #69db7c;--mantine-color-green-5: #51cf66;--mantine-color-green-6: #40c057;--mantine-color-green-7: #37b24d;--mantine-color-green-8: #2f9e44;--mantine-color-green-9: #2b8a3e;--mantine-color-lime-0: #f4fce3;--mantine-color-lime-1: #e9fac8;--mantine-color-lime-2: #d8f5a2;--mantine-color-lime-3: #c0eb75;--mantine-color-lime-4: #a9e34b;--mantine-color-lime-5: #94d82d;--mantine-color-lime-6: #82c91e;--mantine-color-lime-7: #74b816;--mantine-color-lime-8: #66a80f;--mantine-color-lime-9: #5c940d;--mantine-color-yellow-0: #fff9db;--mantine-color-yellow-1: #fff3bf;--mantine-color-yellow-2: #ffec99;--mantine-color-yellow-3: #ffe066;--mantine-color-yellow-4: #ffd43b;--mantine-color-yellow-5: #fcc419;--mantine-color-yellow-6: #fab005;--mantine-color-yellow-7: #f59f00;--mantine-color-yellow-8: #f08c00;--mantine-color-yellow-9: #e67700;--mantine-color-orange-0: #fff4e6;--mantine-color-orange-1: #ffe8cc;--mantine-color-orange-2: #ffd8a8;--mantine-color-orange-3: #ffc078;--mantine-color-orange-4: #ffa94d;--mantine-color-orange-5: #ff922b;--mantine-color-orange-6: #fd7e14;--mantine-color-orange-7: #f76707;--mantine-color-orange-8: #e8590c;--mantine-color-orange-9: #d9480f;--mantine-h1-font-size: calc(2.125rem * var(--mantine-scale));--mantine-h1-line-height: 1.3;--mantine-h1-font-weight: 700;--mantine-h2-font-size: calc(1.625rem * var(--mantine-scale));--mantine-h2-line-height: 1.35;--mantine-h2-font-weight: 700;--mantine-h3-font-size: calc(1.375rem * var(--mantine-scale));--mantine-h3-line-height: 1.4;--mantine-h3-font-weight: 700;--mantine-h4-font-size: calc(1.125rem * var(--mantine-scale));--mantine-h4-line-height: 1.45;--mantine-h4-font-weight: 700;--mantine-h5-font-size: calc(1rem * var(--mantine-scale));--mantine-h5-line-height: 1.5;--mantine-h5-font-weight: 700;--mantine-h6-font-size: calc(.875rem * var(--mantine-scale));--mantine-h6-line-height: 1.5;--mantine-h6-font-weight: 700}:root[data-mantine-color-scheme=dark]{--mantine-color-scheme: dark;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-white);--mantine-color-text: var(--mantine-color-dark-0);--mantine-color-body: var(--mantine-color-dark-7);--mantine-color-error: var(--mantine-color-red-8);--mantine-color-placeholder: var(--mantine-color-dark-3);--mantine-color-anchor: var(--mantine-color-blue-4);--mantine-color-default: var(--mantine-color-dark-6);--mantine-color-default-hover: var(--mantine-color-dark-5);--mantine-color-default-color: var(--mantine-color-white);--mantine-color-default-border: var(--mantine-color-dark-4);--mantine-color-dimmed: var(--mantine-color-dark-2);--mantine-color-disabled: var(--mantine-color-dark-6);--mantine-color-disabled-color: var(--mantine-color-dark-3);--mantine-color-disabled-border: var(--mantine-color-gray-6);--mantine-color-dark-text: var(--mantine-color-dark-4);--mantine-color-dark-filled: var(--mantine-color-dark-8);--mantine-color-dark-filled-hover: var(--mantine-color-dark-9);--mantine-color-dark-light: rgba(46, 46, 46, .15);--mantine-color-dark-light-hover: rgba(46, 46, 46, .2);--mantine-color-dark-light-color: var(--mantine-color-dark-3);--mantine-color-dark-outline: var(--mantine-color-dark-4);--mantine-color-dark-outline-hover: rgba(66, 66, 66, .05);--mantine-color-gray-text: var(--mantine-color-gray-4);--mantine-color-gray-filled: var(--mantine-color-gray-8);--mantine-color-gray-filled-hover: var(--mantine-color-gray-9);--mantine-color-gray-light: rgba(134, 142, 150, .15);--mantine-color-gray-light-hover: rgba(134, 142, 150, .2);--mantine-color-gray-light-color: var(--mantine-color-gray-3);--mantine-color-gray-outline: var(--mantine-color-gray-4);--mantine-color-gray-outline-hover: rgba(206, 212, 218, .05);--mantine-color-red-text: var(--mantine-color-red-4);--mantine-color-red-filled: var(--mantine-color-red-8);--mantine-color-red-filled-hover: var(--mantine-color-red-9);--mantine-color-red-light: rgba(250, 82, 82, .15);--mantine-color-red-light-hover: rgba(250, 82, 82, .2);--mantine-color-red-light-color: var(--mantine-color-red-3);--mantine-color-red-outline: var(--mantine-color-red-4);--mantine-color-red-outline-hover: rgba(255, 135, 135, .05);--mantine-color-pink-text: var(--mantine-color-pink-4);--mantine-color-pink-filled: var(--mantine-color-pink-8);--mantine-color-pink-filled-hover: var(--mantine-color-pink-9);--mantine-color-pink-light: rgba(230, 73, 128, .15);--mantine-color-pink-light-hover: rgba(230, 73, 128, .2);--mantine-color-pink-light-color: var(--mantine-color-pink-3);--mantine-color-pink-outline: var(--mantine-color-pink-4);--mantine-color-pink-outline-hover: rgba(247, 131, 172, .05);--mantine-color-grape-text: var(--mantine-color-grape-4);--mantine-color-grape-filled: var(--mantine-color-grape-8);--mantine-color-grape-filled-hover: var(--mantine-color-grape-9);--mantine-color-grape-light: rgba(190, 75, 219, .15);--mantine-color-grape-light-hover: rgba(190, 75, 219, .2);--mantine-color-grape-light-color: var(--mantine-color-grape-3);--mantine-color-grape-outline: var(--mantine-color-grape-4);--mantine-color-grape-outline-hover: rgba(218, 119, 242, .05);--mantine-color-violet-text: var(--mantine-color-violet-4);--mantine-color-violet-filled: var(--mantine-color-violet-8);--mantine-color-violet-filled-hover: var(--mantine-color-violet-9);--mantine-color-violet-light: rgba(121, 80, 242, .15);--mantine-color-violet-light-hover: rgba(121, 80, 242, .2);--mantine-color-violet-light-color: var(--mantine-color-violet-3);--mantine-color-violet-outline: var(--mantine-color-violet-4);--mantine-color-violet-outline-hover: rgba(151, 117, 250, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-4);--mantine-color-indigo-filled: var(--mantine-color-indigo-8);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-9);--mantine-color-indigo-light: rgba(76, 110, 245, .15);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .2);--mantine-color-indigo-light-color: var(--mantine-color-indigo-3);--mantine-color-indigo-outline: var(--mantine-color-indigo-4);--mantine-color-indigo-outline-hover: rgba(116, 143, 252, .05);--mantine-color-blue-text: var(--mantine-color-blue-4);--mantine-color-blue-filled: var(--mantine-color-blue-8);--mantine-color-blue-filled-hover: var(--mantine-color-blue-9);--mantine-color-blue-light: rgba(34, 139, 230, .15);--mantine-color-blue-light-hover: rgba(34, 139, 230, .2);--mantine-color-blue-light-color: var(--mantine-color-blue-3);--mantine-color-blue-outline: var(--mantine-color-blue-4);--mantine-color-blue-outline-hover: rgba(77, 171, 247, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-4);--mantine-color-cyan-filled: var(--mantine-color-cyan-8);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-9);--mantine-color-cyan-light: rgba(21, 170, 191, .15);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .2);--mantine-color-cyan-light-color: var(--mantine-color-cyan-3);--mantine-color-cyan-outline: var(--mantine-color-cyan-4);--mantine-color-cyan-outline-hover: rgba(59, 201, 219, .05);--mantine-color-teal-text: var(--mantine-color-teal-4);--mantine-color-teal-filled: var(--mantine-color-teal-8);--mantine-color-teal-filled-hover: var(--mantine-color-teal-9);--mantine-color-teal-light: rgba(18, 184, 134, .15);--mantine-color-teal-light-hover: rgba(18, 184, 134, .2);--mantine-color-teal-light-color: var(--mantine-color-teal-3);--mantine-color-teal-outline: var(--mantine-color-teal-4);--mantine-color-teal-outline-hover: rgba(56, 217, 169, .05);--mantine-color-green-text: var(--mantine-color-green-4);--mantine-color-green-filled: var(--mantine-color-green-8);--mantine-color-green-filled-hover: var(--mantine-color-green-9);--mantine-color-green-light: rgba(64, 192, 87, .15);--mantine-color-green-light-hover: rgba(64, 192, 87, .2);--mantine-color-green-light-color: var(--mantine-color-green-3);--mantine-color-green-outline: var(--mantine-color-green-4);--mantine-color-green-outline-hover: rgba(105, 219, 124, .05);--mantine-color-lime-text: var(--mantine-color-lime-4);--mantine-color-lime-filled: var(--mantine-color-lime-8);--mantine-color-lime-filled-hover: var(--mantine-color-lime-9);--mantine-color-lime-light: rgba(130, 201, 30, .15);--mantine-color-lime-light-hover: rgba(130, 201, 30, .2);--mantine-color-lime-light-color: var(--mantine-color-lime-3);--mantine-color-lime-outline: var(--mantine-color-lime-4);--mantine-color-lime-outline-hover: rgba(169, 227, 75, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-4);--mantine-color-yellow-filled: var(--mantine-color-yellow-8);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-9);--mantine-color-yellow-light: rgba(250, 176, 5, .15);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .2);--mantine-color-yellow-light-color: var(--mantine-color-yellow-3);--mantine-color-yellow-outline: var(--mantine-color-yellow-4);--mantine-color-yellow-outline-hover: rgba(255, 212, 59, .05);--mantine-color-orange-text: var(--mantine-color-orange-4);--mantine-color-orange-filled: var(--mantine-color-orange-8);--mantine-color-orange-filled-hover: var(--mantine-color-orange-9);--mantine-color-orange-light: rgba(253, 126, 20, .15);--mantine-color-orange-light-hover: rgba(253, 126, 20, .2);--mantine-color-orange-light-color: var(--mantine-color-orange-3);--mantine-color-orange-outline: var(--mantine-color-orange-4);--mantine-color-orange-outline-hover: rgba(255, 169, 77, .05)}:root[data-mantine-color-scheme=light]{--mantine-color-scheme: light;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-black);--mantine-color-text: #000;--mantine-color-body: #fff;--mantine-color-error: var(--mantine-color-red-6);--mantine-color-placeholder: var(--mantine-color-gray-5);--mantine-color-anchor: var(--mantine-color-blue-6);--mantine-color-default: var(--mantine-color-white);--mantine-color-default-hover: var(--mantine-color-gray-0);--mantine-color-default-color: var(--mantine-color-black);--mantine-color-default-border: var(--mantine-color-gray-4);--mantine-color-dimmed: var(--mantine-color-gray-6);--mantine-color-disabled: var(--mantine-color-gray-2);--mantine-color-disabled-color: var(--mantine-color-gray-5);--mantine-color-disabled-border: var(--mantine-color-gray-3);--mantine-color-dark-text: var(--mantine-color-dark-filled);--mantine-color-dark-filled: var(--mantine-color-dark-6);--mantine-color-dark-filled-hover: var(--mantine-color-dark-7);--mantine-color-dark-light: rgba(46, 46, 46, .1);--mantine-color-dark-light-hover: rgba(46, 46, 46, .12);--mantine-color-dark-light-color: var(--mantine-color-dark-6);--mantine-color-dark-outline: var(--mantine-color-dark-6);--mantine-color-dark-outline-hover: rgba(46, 46, 46, .05);--mantine-color-gray-text: var(--mantine-color-gray-filled);--mantine-color-gray-filled: var(--mantine-color-gray-6);--mantine-color-gray-filled-hover: var(--mantine-color-gray-7);--mantine-color-gray-light: rgba(134, 142, 150, .1);--mantine-color-gray-light-hover: rgba(134, 142, 150, .12);--mantine-color-gray-light-color: var(--mantine-color-gray-6);--mantine-color-gray-outline: var(--mantine-color-gray-6);--mantine-color-gray-outline-hover: rgba(134, 142, 150, .05);--mantine-color-red-text: var(--mantine-color-red-filled);--mantine-color-red-filled: var(--mantine-color-red-6);--mantine-color-red-filled-hover: var(--mantine-color-red-7);--mantine-color-red-light: rgba(250, 82, 82, .1);--mantine-color-red-light-hover: rgba(250, 82, 82, .12);--mantine-color-red-light-color: var(--mantine-color-red-6);--mantine-color-red-outline: var(--mantine-color-red-6);--mantine-color-red-outline-hover: rgba(250, 82, 82, .05);--mantine-color-pink-text: var(--mantine-color-pink-filled);--mantine-color-pink-filled: var(--mantine-color-pink-6);--mantine-color-pink-filled-hover: var(--mantine-color-pink-7);--mantine-color-pink-light: rgba(230, 73, 128, .1);--mantine-color-pink-light-hover: rgba(230, 73, 128, .12);--mantine-color-pink-light-color: var(--mantine-color-pink-6);--mantine-color-pink-outline: var(--mantine-color-pink-6);--mantine-color-pink-outline-hover: rgba(230, 73, 128, .05);--mantine-color-grape-text: var(--mantine-color-grape-filled);--mantine-color-grape-filled: var(--mantine-color-grape-6);--mantine-color-grape-filled-hover: var(--mantine-color-grape-7);--mantine-color-grape-light: rgba(190, 75, 219, .1);--mantine-color-grape-light-hover: rgba(190, 75, 219, .12);--mantine-color-grape-light-color: var(--mantine-color-grape-6);--mantine-color-grape-outline: var(--mantine-color-grape-6);--mantine-color-grape-outline-hover: rgba(190, 75, 219, .05);--mantine-color-violet-text: var(--mantine-color-violet-filled);--mantine-color-violet-filled: var(--mantine-color-violet-6);--mantine-color-violet-filled-hover: var(--mantine-color-violet-7);--mantine-color-violet-light: rgba(121, 80, 242, .1);--mantine-color-violet-light-hover: rgba(121, 80, 242, .12);--mantine-color-violet-light-color: var(--mantine-color-violet-6);--mantine-color-violet-outline: var(--mantine-color-violet-6);--mantine-color-violet-outline-hover: rgba(121, 80, 242, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-filled);--mantine-color-indigo-filled: var(--mantine-color-indigo-6);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-7);--mantine-color-indigo-light: rgba(76, 110, 245, .1);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .12);--mantine-color-indigo-light-color: var(--mantine-color-indigo-6);--mantine-color-indigo-outline: var(--mantine-color-indigo-6);--mantine-color-indigo-outline-hover: rgba(76, 110, 245, .05);--mantine-color-blue-text: var(--mantine-color-blue-filled);--mantine-color-blue-filled: var(--mantine-color-blue-6);--mantine-color-blue-filled-hover: var(--mantine-color-blue-7);--mantine-color-blue-light: rgba(34, 139, 230, .1);--mantine-color-blue-light-hover: rgba(34, 139, 230, .12);--mantine-color-blue-light-color: var(--mantine-color-blue-6);--mantine-color-blue-outline: var(--mantine-color-blue-6);--mantine-color-blue-outline-hover: rgba(34, 139, 230, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-filled);--mantine-color-cyan-filled: var(--mantine-color-cyan-6);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-7);--mantine-color-cyan-light: rgba(21, 170, 191, .1);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .12);--mantine-color-cyan-light-color: var(--mantine-color-cyan-6);--mantine-color-cyan-outline: var(--mantine-color-cyan-6);--mantine-color-cyan-outline-hover: rgba(21, 170, 191, .05);--mantine-color-teal-text: var(--mantine-color-teal-filled);--mantine-color-teal-filled: var(--mantine-color-teal-6);--mantine-color-teal-filled-hover: var(--mantine-color-teal-7);--mantine-color-teal-light: rgba(18, 184, 134, .1);--mantine-color-teal-light-hover: rgba(18, 184, 134, .12);--mantine-color-teal-light-color: var(--mantine-color-teal-6);--mantine-color-teal-outline: var(--mantine-color-teal-6);--mantine-color-teal-outline-hover: rgba(18, 184, 134, .05);--mantine-color-green-text: var(--mantine-color-green-filled);--mantine-color-green-filled: var(--mantine-color-green-6);--mantine-color-green-filled-hover: var(--mantine-color-green-7);--mantine-color-green-light: rgba(64, 192, 87, .1);--mantine-color-green-light-hover: rgba(64, 192, 87, .12);--mantine-color-green-light-color: var(--mantine-color-green-6);--mantine-color-green-outline: var(--mantine-color-green-6);--mantine-color-green-outline-hover: rgba(64, 192, 87, .05);--mantine-color-lime-text: var(--mantine-color-lime-filled);--mantine-color-lime-filled: var(--mantine-color-lime-6);--mantine-color-lime-filled-hover: var(--mantine-color-lime-7);--mantine-color-lime-light: rgba(130, 201, 30, .1);--mantine-color-lime-light-hover: rgba(130, 201, 30, .12);--mantine-color-lime-light-color: var(--mantine-color-lime-6);--mantine-color-lime-outline: var(--mantine-color-lime-6);--mantine-color-lime-outline-hover: rgba(130, 201, 30, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-filled);--mantine-color-yellow-filled: var(--mantine-color-yellow-6);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-7);--mantine-color-yellow-light: rgba(250, 176, 5, .1);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .12);--mantine-color-yellow-light-color: var(--mantine-color-yellow-6);--mantine-color-yellow-outline: var(--mantine-color-yellow-6);--mantine-color-yellow-outline-hover: rgba(250, 176, 5, .05);--mantine-color-orange-text: var(--mantine-color-orange-filled);--mantine-color-orange-filled: var(--mantine-color-orange-6);--mantine-color-orange-filled-hover: var(--mantine-color-orange-7);--mantine-color-orange-light: rgba(253, 126, 20, .1);--mantine-color-orange-light-hover: rgba(253, 126, 20, .12);--mantine-color-orange-light-color: var(--mantine-color-orange-6);--mantine-color-orange-outline: var(--mantine-color-orange-6);--mantine-color-orange-outline-hover: rgba(253, 126, 20, .05)}.m_d57069b5{--scrollarea-scrollbar-size: calc(.75rem * var(--mantine-scale));position:relative;overflow:hidden}.m_c0783ff9{scrollbar-width:none;overscroll-behavior:var(--scrollarea-over-scroll-behavior);-ms-overflow-style:none;-webkit-overflow-scrolling:touch;width:100%;height:100%}.m_c0783ff9::-webkit-scrollbar{display:none}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):where([data-vertical-hidden]){padding-inline-end:0;padding-inline-start:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):not([data-vertical-hidden]){padding-inline-end:var(--scrollarea-scrollbar-size);padding-inline-start:unset}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):where([data-horizontal-hidden]){padding-bottom:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):not([data-horizontal-hidden]){padding-bottom:var(--scrollarea-scrollbar-size)}.m_f8f631dd{min-width:100%;display:table}.m_c44ba933{-webkit-user-select:none;user-select:none;touch-action:none;box-sizing:border-box;transition:background-color .15s ease,opacity .15s ease;padding:calc(var(--scrollarea-scrollbar-size) / 5);display:flex;background-color:transparent;flex-direction:row}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_c44ba933:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:hover>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover>.m_d8b5e363{background-color:#ffffff80}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_c44ba933:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:active>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active>.m_d8b5e363{background-color:#ffffff80}}.m_c44ba933:where([data-hidden],[data-state=hidden]){display:none}.m_c44ba933:where([data-orientation=vertical]){width:var(--scrollarea-scrollbar-size);top:0;bottom:var(--sa-corner-width);inset-inline-end:0}.m_c44ba933:where([data-orientation=horizontal]){height:var(--scrollarea-scrollbar-size);flex-direction:column;bottom:0;inset-inline-start:0;inset-inline-end:var(--sa-corner-width)}.m_d8b5e363{flex:1;border-radius:var(--scrollarea-scrollbar-size);position:relative;transition:background-color .15s ease;overflow:hidden;opacity:var(--thumb-opacity)}.m_d8b5e363:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:calc(2.75rem * var(--mantine-scale));min-height:calc(2.75rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d8b5e363{background-color:#0006}:where([data-mantine-color-scheme=dark]) .m_d8b5e363{background-color:#fff6}.m_21657268{position:absolute;opacity:0;transition:opacity .15s ease;display:block;inset-inline-end:0;bottom:0}:where([data-mantine-color-scheme=light]) .m_21657268{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_21657268{background-color:var(--mantine-color-dark-8)}.m_21657268:where([data-hovered]){opacity:1}.m_21657268:where([data-hidden]){display:none}.m_b1336c6{min-width:100%}.m_87cf2631{background-color:transparent;cursor:pointer;border:0;padding:0;appearance:none;font-size:var(--mantine-font-size-md);text-align:left;text-decoration:none;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}:where([dir=rtl]) .m_87cf2631{text-align:right}.m_515a97f8{border:0;clip:rect(0 0 0 0);height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));margin:calc(-.0625rem * var(--mantine-scale));overflow:hidden;padding:0;position:absolute;white-space:nowrap}.m_1b7284a3{--paper-radius: var(--mantine-radius-default);outline:0;-webkit-tap-highlight-color:transparent;display:block;touch-action:manipulation;text-decoration:none;border-radius:var(--paper-radius);box-shadow:var(--paper-shadow);background-color:var(--mantine-color-body)}[data-mantine-color-scheme=light] .m_1b7284a3{--paper-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_1b7284a3{--paper-border-color: var(--mantine-color-dark-4)}.m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--paper-border-color)}.m_9814e45f{inset:0;position:absolute;background:var(--overlay-bg, rgba(0, 0, 0, .6));backdrop-filter:var(--overlay-filter);-webkit-backdrop-filter:var(--overlay-filter);border-radius:var(--overlay-radius, 0);z-index:var(--overlay-z-index)}.m_9814e45f:where([data-fixed]){position:fixed}.m_9814e45f:where([data-center]){display:flex;align-items:center;justify-content:center}.m_38a85659{position:absolute;border:1px solid var(--popover-border-color);padding:var(--mantine-spacing-sm) var(--mantine-spacing-md);box-shadow:var(--popover-shadow, none);border-radius:var(--popover-radius, var(--mantine-radius-default))}.m_38a85659:where([data-fixed]){position:fixed}.m_38a85659:focus{outline:none}:where([data-mantine-color-scheme=light]) .m_38a85659{--popover-border-color: var(--mantine-color-gray-2);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_38a85659{--popover-border-color: var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_a31dc6c1{background-color:inherit;border:1px solid var(--popover-border-color);z-index:1}.m_3d7bc908{position:fixed;inset:0}.m_5ae2e3c{--loader-size-xs: calc(1.125rem * var(--mantine-scale));--loader-size-sm: calc(1.375rem * var(--mantine-scale));--loader-size-md: calc(2.25rem * var(--mantine-scale));--loader-size-lg: calc(2.75rem * var(--mantine-scale));--loader-size-xl: calc(3.625rem * var(--mantine-scale));--loader-size: var(--loader-size-md);--loader-color: var(--mantine-primary-color-filled)}@keyframes m_5d2b3b9d{0%{transform:scale(.6);opacity:0}50%,to{transform:scale(1)}}.m_7a2bd4cd{position:relative;width:var(--loader-size);height:var(--loader-size);display:flex;gap:calc(var(--loader-size) / 5)}.m_870bb79{flex:1;background:var(--loader-color);animation:m_5d2b3b9d 1.2s cubic-bezier(0,.5,.5,1) infinite;border-radius:calc(.125rem * var(--mantine-scale))}.m_870bb79:nth-of-type(1){animation-delay:-.24s}.m_870bb79:nth-of-type(2){animation-delay:-.12s}.m_870bb79:nth-of-type(3){animation-delay:0}@keyframes m_aac34a1{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.5}}.m_4e3f22d7{display:flex;justify-content:center;align-items:center;gap:calc(var(--loader-size) / 10);position:relative;width:var(--loader-size);height:var(--loader-size)}.m_870c4af{width:calc(var(--loader-size) / 3 - var(--loader-size) / 15);height:calc(var(--loader-size) / 3 - var(--loader-size) / 15);border-radius:50%;background:var(--loader-color);animation:m_aac34a1 .8s infinite linear}.m_870c4af:nth-child(2){animation-delay:.4s}@keyframes m_f8e89c4b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.m_b34414df{display:inline-block;width:var(--loader-size);height:var(--loader-size)}.m_b34414df:after{content:"";display:block;width:var(--loader-size);height:var(--loader-size);border-radius:calc(625rem * var(--mantine-scale));border-width:calc(var(--loader-size) / 8);border-style:solid;border-color:var(--loader-color) var(--loader-color) var(--loader-color) transparent;animation:m_f8e89c4b 1.2s linear infinite}.m_8d3f4000{--ai-size-xs: calc(1.125rem * var(--mantine-scale));--ai-size-sm: calc(1.375rem * var(--mantine-scale));--ai-size-md: calc(1.75rem * var(--mantine-scale));--ai-size-lg: calc(2.125rem * var(--mantine-scale));--ai-size-xl: calc(2.75rem * var(--mantine-scale));--ai-size-input-xs: calc(1.875rem * var(--mantine-scale));--ai-size-input-sm: calc(2.25rem * var(--mantine-scale));--ai-size-input-md: calc(2.625rem * var(--mantine-scale));--ai-size-input-lg: calc(3.125rem * var(--mantine-scale));--ai-size-input-xl: calc(3.75rem * var(--mantine-scale));--ai-size: var(--ai-size-md);--ai-color: var(--mantine-color-white);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden;width:var(--ai-size);height:var(--ai-size);min-width:var(--ai-size);min-height:var(--ai-size);border-radius:var(--ai-radius, var(--mantine-radius-default));background:var(--ai-bg, var(--mantine-primary-color-filled));color:var(--ai-color, var(--mantine-color-white));border:var(--ai-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);cursor:pointer}@media(hover:hover){.m_8d3f4000:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}@media(hover:none){.m_8d3f4000:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}.m_8d3f4000[data-loading]{cursor:not-allowed}.m_8d3f4000[data-loading] .m_8d3afb97{opacity:0;transform:translateY(100%)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-disabled-color);background-color:var(--mantine-color-disabled)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])):active{transform:none}.m_302b9fb1{inset:calc(-.0625rem * var(--mantine-scale));position:absolute;border-radius:var(--ai-radius, var(--mantine-radius-default));display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_302b9fb1{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_302b9fb1{background-color:#00000026}.m_1a0f1b21{--ai-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_1a0f1b21 :where(*):focus{position:relative;z-index:1}.m_1a0f1b21[data-orientation=horizontal]{flex-direction:row}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical]{flex-direction:column}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2);border-top-width:calc(var(--ai-border-width) / 2)}.m_8d3afb97{display:flex;align-items:center;justify-content:center;transition:transform .15s ease,opacity .1s ease;width:100%;height:100%}.m_437b6484{--section-height-xs: calc(1.125rem * var(--mantine-scale));--section-height-sm: calc(1.375rem * var(--mantine-scale));--section-height-md: calc(1.75rem * var(--mantine-scale));--section-height-lg: calc(2.125rem * var(--mantine-scale));--section-height-xl: calc(2.75rem * var(--mantine-scale));--section-height-input-xs: calc(1.875rem * var(--mantine-scale));--section-height-input-sm: calc(2.25rem * var(--mantine-scale));--section-height-input-md: calc(2.625rem * var(--mantine-scale));--section-height-input-lg: calc(3.125rem * var(--mantine-scale));--section-height-input-xl: calc(3.75rem * var(--mantine-scale));--section-padding-x-xs: calc(.375rem * var(--mantine-scale));--section-padding-x-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-md: calc(.625rem * var(--mantine-scale));--section-padding-x-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-xl: calc(1rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_86a44da5{--cb-size-xs: calc(1.125rem * var(--mantine-scale));--cb-size-sm: calc(1.375rem * var(--mantine-scale));--cb-size-md: calc(1.75rem * var(--mantine-scale));--cb-size-lg: calc(2.125rem * var(--mantine-scale));--cb-size-xl: calc(2.75rem * var(--mantine-scale));--cb-size: var(--cb-size-md);--cb-icon-size: 70%;--cb-radius: var(--mantine-radius-default);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;-webkit-user-select:none;user-select:none;width:var(--cb-size);height:var(--cb-size);min-width:var(--cb-size);min-height:var(--cb-size);border-radius:var(--cb-radius)}:where([data-mantine-color-scheme=light]) .m_86a44da5{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_86a44da5{color:var(--mantine-color-dark-1)}.m_86a44da5[data-disabled],.m_86a44da5:disabled{cursor:not-allowed;opacity:.6}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-dark-6)}}.m_4081bf90{display:flex;flex-direction:row;flex-wrap:var(--group-wrap, wrap);justify-content:var(--group-justify, flex-start);align-items:var(--group-align, center);gap:var(--group-gap, var(--mantine-spacing-md))}.m_4081bf90:where([data-grow])>*{flex-grow:1;max-width:var(--group-child-width)}.m_615af6c9{line-height:1;padding:0;margin:0;font-weight:400;font-size:var(--mantine-font-size-md)}.m_b5489c3c{display:flex;justify-content:space-between;align-items:center;padding:var(--mb-padding, var(--mantine-spacing-md));padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) - calc(.3125rem * var(--mantine-scale)));position:sticky;top:0;background-color:var(--mantine-color-body);z-index:1000;min-height:calc(3.75rem * var(--mantine-scale));transition:padding-inline-end .1s}.m_60c222c7{position:fixed;width:100%;top:0;bottom:0;z-index:var(--mb-z-index);pointer-events:none}.m_fd1ab0aa{pointer-events:all;box-shadow:var(--mb-shadow, var(--mantine-shadow-xl))}.m_fd1ab0aa [data-mantine-scrollbar]{z-index:1001}[data-offset-scrollbars] .m_fd1ab0aa:has([data-mantine-scrollbar]) .m_b5489c3c{padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) + calc(.3125rem * var(--mantine-scale)))}.m_606cb269{margin-inline-start:auto}.m_5df29311{padding:var(--mb-padding, var(--mantine-spacing-md));padding-top:var(--mb-padding, var(--mantine-spacing-md))}.m_5df29311:where(:not(:only-child)){padding-top:0}.m_6c018570{position:relative;margin-top:var(--input-margin-top, 0rem);margin-bottom:var(--input-margin-bottom, 0rem);--input-height-xs: calc(1.875rem * var(--mantine-scale));--input-height-sm: calc(2.25rem * var(--mantine-scale));--input-height-md: calc(2.625rem * var(--mantine-scale));--input-height-lg: calc(3.125rem * var(--mantine-scale));--input-height-xl: calc(3.75rem * var(--mantine-scale));--input-padding-y-xs: calc(.3125rem * var(--mantine-scale));--input-padding-y-sm: calc(.375rem * var(--mantine-scale));--input-padding-y-md: calc(.5rem * var(--mantine-scale));--input-padding-y-lg: calc(.625rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-height: var(--input-height-sm);--input-radius: var(--mantine-radius-default);--input-cursor: text;--input-text-align: left;--input-line-height: calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));--input-padding: calc(var(--input-height) / 3);--input-padding-inline-start: var(--input-padding);--input-padding-inline-end: var(--input-padding);--input-placeholder-color: var(--mantine-color-placeholder);--input-color: var(--mantine-color-text);--input-disabled-bg: var(--mantine-color-disabled);--input-disabled-color: var(--mantine-color-disabled-color);--input-left-section-size: var(--input-left-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))));--input-right-section-size: var( --input-right-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))) );--input-size: var(--input-height);--section-y: calc(.0625rem * var(--mantine-scale));--left-section-start: calc(.0625rem * var(--mantine-scale));--left-section-border-radius: var(--input-radius) 0 0 var(--input-radius);--right-section-end: calc(.0625rem * var(--mantine-scale));--right-section-border-radius: 0 var(--input-radius) var(--input-radius) 0}.m_6c018570[data-variant=unstyled]{--input-padding: 0;--input-padding-y: 0;--input-padding-inline-start: 0;--input-padding-inline-end: 0}.m_6c018570[data-pointer]{--input-cursor: pointer}.m_6c018570[data-multiline]{--input-padding-y-xs: calc(.28125rem * var(--mantine-scale));--input-padding-y-sm: calc(.34375rem * var(--mantine-scale));--input-padding-y-md: calc(.4375rem * var(--mantine-scale));--input-padding-y-lg: calc(.59375rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-size: auto;--input-line-height: var(--mantine-line-height);--input-padding-y: var(--input-padding-y-sm)}.m_6c018570[data-with-left-section]{--input-padding-inline-start: var(--input-left-section-size)}.m_6c018570[data-with-right-section]{--input-padding-inline-end: var(--input-right-section-size)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-gray-4);--input-bg: var(--mantine-color-white);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-gray-1);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-dark-4);--input-bg: var(--mantine-color-dark-6);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-dark-5);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme] .m_6c018570[data-error]:not([data-variant=unstyled]){--input-bd: var(--mantine-color-error)}[data-mantine-color-scheme] .m_6c018570[data-error]{--input-color: var(--mantine-color-error);--input-placeholder-color: var(--mantine-color-error);--input-section-color: var(--mantine-color-error)}:where([dir=rtl]) .m_6c018570{--input-text-align: right;--left-section-border-radius: 0 var(--input-radius) var(--input-radius) 0;--right-section-border-radius: var(--input-radius) 0 0 var(--input-radius)}.m_8fb7ebe7{-webkit-tap-highlight-color:transparent;appearance:none;resize:var(--input-resize, none);display:block;width:100%;transition:border-color .1s ease;text-align:var(--input-text-align);color:var(--input-color);border:calc(.0625rem * var(--mantine-scale)) solid var(--input-bd);background-color:var(--input-bg);font-family:var(--input-font-family, var(--mantine-font-family));height:var(--input-size);min-height:var(--input-height);line-height:var(--input-line-height);font-size:var(--input-fz, var(--input-fz, var(--mantine-font-size-sm)));border-radius:var(--input-radius);padding-inline-start:var(--input-padding-inline-start);padding-inline-end:var(--input-padding-inline-end);padding-top:var(--input-padding-y, 0rem);padding-bottom:var(--input-padding-y, 0rem);cursor:var(--input-cursor);overflow:var(--input-overflow)}.m_8fb7ebe7[data-no-overflow]{--input-overflow: hidden}.m_8fb7ebe7[data-monospace]{--input-font-family: var(--mantine-font-family-monospace);--input-fz: calc(var(--input-fz, var(--mantine-font-size-sm)) - calc(.125rem * var(--mantine-scale)))}.m_8fb7ebe7:focus,.m_8fb7ebe7:focus-within{outline:none;--input-bd: var(--input-bd-focus)}[data-error] .m_8fb7ebe7:focus,[data-error] .m_8fb7ebe7:focus-within{--input-bd: var(--mantine-color-error)}.m_8fb7ebe7::placeholder{color:var(--input-placeholder-color);opacity:1}.m_8fb7ebe7::-webkit-inner-spin-button,.m_8fb7ebe7::-webkit-outer-spin-button,.m_8fb7ebe7::-webkit-search-decoration,.m_8fb7ebe7::-webkit-search-cancel-button,.m_8fb7ebe7::-webkit-search-results-button,.m_8fb7ebe7::-webkit-search-results-decoration{appearance:none}.m_8fb7ebe7[type=number]{-moz-appearance:textfield}.m_8fb7ebe7:disabled,.m_8fb7ebe7[data-disabled]{cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7:has(input:disabled){cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_82577fc2{pointer-events:var(--section-pointer-events);position:absolute;z-index:1;inset-inline-start:var(--section-start);inset-inline-end:var(--section-end);bottom:var(--section-y);top:var(--section-y);display:flex;align-items:center;justify-content:center;width:var(--section-size);border-radius:var(--section-border-radius);color:var(--input-section-color, var(--mantine-color-dimmed))}.m_82577fc2[data-position=right]{--section-pointer-events: var(--input-right-section-pointer-events);--section-end: var(--right-section-end);--section-size: var(--input-right-section-size);--section-border-radius: var(--right-section-border-radius)}.m_82577fc2[data-position=left]{--section-pointer-events: var(--input-left-section-pointer-events);--section-start: var(--left-section-start);--section-size: var(--input-left-section-size);--section-border-radius: var(--left-section-border-radius)}.m_88bacfd0{color:var(--input-placeholder-color, var(--mantine-color-placeholder))}[data-error] .m_88bacfd0{--input-placeholder-color: var(--input-color, var(--mantine-color-placeholder))}.m_46b77525{line-height:var(--mantine-line-height)}.m_8fdc1311{display:inline-block;font-weight:500;word-break:break-word;cursor:default;-webkit-tap-highlight-color:transparent;font-size:var(--input-label-size, var(--mantine-font-size-sm))}.m_78a94662{color:var(--input-asterisk-color, var(--mantine-color-error))}.m_8f816625,.m_fe47ce59{word-wrap:break-word;line-height:1.2;display:block;margin:0;padding:0}.m_8f816625{color:var(--mantine-color-error);font-size:var(--input-error-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_fe47ce59{color:var(--mantine-color-dimmed);font-size:var(--input-description-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_8bffd616{display:flex}.m_96b553a6{--transition-duration: .15s;top:0;left:0;position:absolute;z-index:0;transition-property:transform,width,height;transition-timing-function:ease;transition-duration:0ms}.m_96b553a6:where([data-initialized]){transition-duration:var(--transition-duration)}.m_96b553a6:where([data-hidden]){background-color:red;display:none}.m_9bdbb667{--accordion-radius: var(--mantine-radius-default)}.m_df78851f{word-break:break-word}.m_4ba554d4{padding:var(--mantine-spacing-md);padding-top:calc(var(--mantine-spacing-xs) / 2)}.m_8fa820a0{margin:0;padding:0}.m_4ba585b8{width:100%;display:flex;align-items:center;flex-direction:row-reverse;padding-inline:var(--mantine-spacing-md);opacity:1;cursor:pointer;background-color:transparent}.m_4ba585b8:where([data-chevron-position=left]){flex-direction:row;padding-inline-start:0}:where([data-mantine-color-scheme=light]) .m_4ba585b8{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_4ba585b8{color:var(--mantine-color-dark-0)}.m_4ba585b8:where(:disabled,[data-disabled]){opacity:.4;cursor:not-allowed}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-dark-6)}}.m_df3ffa0f{color:inherit;font-weight:400;flex:1;overflow:hidden;text-overflow:ellipsis;padding-top:var(--mantine-spacing-sm);padding-bottom:var(--mantine-spacing-sm)}.m_3f35ae96{display:flex;align-items:center;justify-content:flex-start;transition:transform var(--accordion-transition-duration, .2s) ease;width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));min-width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));transform:rotate(0)}.m_3f35ae96:where([data-rotate]){transform:rotate(180deg)}.m_3f35ae96:where([data-position=left]){margin-inline-end:var(--mantine-spacing-md);margin-inline-start:var(--mantine-spacing-md)}.m_9bd771fe{display:flex;align-items:center;justify-content:center;margin-inline-end:var(--mantine-spacing-sm)}.m_9bd771fe:where([data-chevron-position=left]){margin-inline-end:0;margin-inline-start:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_9bd7b098{--item-border-color: var(--mantine-color-gray-3);--item-filled-color: var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_9bd7b098{--item-border-color: var(--mantine-color-dark-4);--item-filled-color: var(--mantine-color-dark-6)}.m_fe19b709{border-bottom:1px solid var(--item-border-color)}.m_1f921b3b{border:1px solid var(--item-border-color);transition:background-color .15s ease}.m_1f921b3b:where([data-active]){background-color:var(--item-filled-color)}.m_1f921b3b:first-of-type{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:first-of-type>[data-accordion-control]{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type>[data-accordion-control]{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b+.m_1f921b3b{border-top:0}.m_2cdf939a{border-radius:var(--accordion-radius)}.m_2cdf939a:where([data-active]){background-color:var(--item-filled-color)}.m_9f59b069{background-color:var(--item-filled-color);border-radius:var(--accordion-radius);border:calc(.0625rem * var(--mantine-scale)) solid transparent;transition:background-color .15s ease}.m_9f59b069[data-active]{border-color:var(--item-border-color)}:where([data-mantine-color-scheme=light]) .m_9f59b069[data-active]{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_9f59b069[data-active]{background-color:var(--mantine-color-dark-7)}.m_9f59b069+.m_9f59b069{margin-top:var(--mantine-spacing-md)}.m_7f854edf{position:fixed;z-index:var(--affix-z-index);inset-inline-start:var(--affix-left);inset-inline-end:var(--affix-right);top:var(--affix-top);bottom:var(--affix-bottom)}.m_66836ed3{--alert-radius: var(--mantine-radius-default);--alert-bg: var(--mantine-primary-color-light);--alert-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--alert-color: var(--mantine-primary-color-light-color);padding:var(--mantine-spacing-md) var(--mantine-spacing-md);border-radius:var(--alert-radius);position:relative;overflow:hidden;background-color:var(--alert-bg);border:var(--alert-bd);color:var(--alert-color)}.m_a5d60502{display:flex}.m_667c2793{flex:1;display:flex;flex-direction:column;gap:var(--mantine-spacing-xs)}.m_6a03f287{display:flex;align-items:center;justify-content:space-between;font-size:var(--mantine-font-size-sm);font-weight:700}.m_6a03f287:where([data-with-close-button]){padding-inline-end:var(--mantine-spacing-md)}.m_698f4f23{display:block;overflow:hidden;text-overflow:ellipsis}.m_667f2a6a{line-height:1;width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));display:flex;align-items:center;justify-content:flex-start;margin-inline-end:var(--mantine-spacing-md);margin-top:calc(.0625rem * var(--mantine-scale))}.m_7fa78076{text-overflow:ellipsis;overflow:hidden;font-size:var(--mantine-font-size-sm)}:where([data-mantine-color-scheme=light]) .m_7fa78076{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_7fa78076{color:var(--mantine-color-white)}.m_7fa78076:where([data-variant=filled]){color:var(--alert-color)}.m_7fa78076:where([data-variant=white]){color:var(--mantine-color-black)}.m_87f54839{width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));color:var(--alert-color)}.m_b6d8b162{-webkit-tap-highlight-color:transparent;text-decoration:none;font-size:var(--text-fz, var(--mantine-font-size-md));line-height:var(--text-lh, var(--mantine-line-height-md));font-weight:400;margin:0;padding:0;color:var(--text-color)}.m_b6d8b162:where([data-truncate]){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m_b6d8b162:where([data-truncate=start]){direction:rtl;text-align:right}:where([dir=rtl]) .m_b6d8b162:where([data-truncate=start]){direction:ltr;text-align:left}.m_b6d8b162:where([data-variant=gradient]){background-image:var(--text-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.m_b6d8b162:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--text-line-clamp);-webkit-box-orient:vertical}.m_b6d8b162:where([data-inherit]){line-height:inherit;font-weight:inherit;font-size:inherit}.m_b6d8b162:where([data-inline]){line-height:1}.m_849cf0da{color:var(--mantine-color-anchor);text-decoration:none;appearance:none;border:none;display:inline;padding:0;margin:0;background-color:transparent;cursor:pointer}@media(hover:hover){.m_849cf0da:where([data-underline=hover]):hover{text-decoration:underline}}@media(hover:none){.m_849cf0da:where([data-underline=hover]):active{text-decoration:underline}}.m_849cf0da:where([data-underline=not-hover]){text-decoration:underline}@media(hover:hover){.m_849cf0da:where([data-underline=not-hover]):hover{text-decoration:none}}@media(hover:none){.m_849cf0da:where([data-underline=not-hover]):active{text-decoration:none}}.m_849cf0da:where([data-underline=always]){text-decoration:underline}.m_849cf0da:where([data-variant=gradient]),.m_849cf0da:where([data-variant=gradient]):hover{text-decoration:none}.m_849cf0da:where([data-line-clamp]){display:-webkit-box}.m_48204f9b{width:var(--slider-size);height:var(--slider-size);position:relative;border-radius:100%;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.m_48204f9b:focus-within{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_48204f9b{--slider-size: calc(3.75rem * var(--mantine-scale));--thumb-size: calc(var(--slider-size) / 5)}:where([data-mantine-color-scheme=light]) .m_48204f9b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_48204f9b{background-color:var(--mantine-color-dark-5)}.m_bb9cdbad{position:absolute;inset:calc(.0625rem * var(--mantine-scale));border-radius:var(--slider-size);pointer-events:none}.m_481dd586{width:calc(.125rem * var(--mantine-scale));position:absolute;top:0;bottom:0;left:calc(50% - 1px);transform:rotate(var(--angle))}.m_481dd586:before{content:"";position:absolute;top:calc(var(--thumb-size) / 3);left:calc(.03125rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));height:calc(var(--thumb-size) / 1.5);transform:translate(-50%,-50%)}:where([data-mantine-color-scheme=light]) .m_481dd586:before{background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_481dd586:before{background-color:var(--mantine-color-dark-3)}.m_481dd586[data-label]:after{min-width:calc(1.125rem * var(--mantine-scale));text-align:center;content:attr(data-label);position:absolute;top:calc(-1.5rem * var(--mantine-scale));left:calc(-.4375rem * var(--mantine-scale));transform:rotate(calc(360deg - var(--angle)));font-size:var(--mantine-font-size-xs)}.m_bc02ba3d{position:absolute;inset-block:0;inset-inline-start:calc(50% - 1.5px);inset-inline-end:0;height:100%;width:calc(.1875rem * var(--mantine-scale));outline:none;pointer-events:none}.m_bc02ba3d:before{content:"";position:absolute;right:0;top:0;height:min(var(--thumb-size),calc(var(--slider-size) / 2));width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_bc02ba3d:before{background-color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_bc02ba3d:before{background-color:var(--mantine-color-dark-1)}.m_bb8e875b{font-size:var(--mantine-font-size-xs)}.m_89ab340[data-resizing]{--app-shell-transition-duration: 0ms !important}.m_89ab340[data-disabled]{--app-shell-header-offset: 0rem !important;--app-shell-navbar-offset: 0rem !important;--app-shell-aside-offset: 0rem !important;--app-shell-footer-offset: 0rem !important}[data-mantine-color-scheme=light] .m_89ab340{--app-shell-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89ab340{--app-shell-border-color: var(--mantine-color-dark-4)}.m_45252eee,.m_9cdde9a,.m_3b16f56b,.m_8983817,.m_3840c879{transition-duration:var(--app-shell-transition-duration);transition-timing-function:var(--app-shell-transition-timing-function)}.m_45252eee,.m_9cdde9a{position:fixed;display:flex;flex-direction:column;top:var(--app-shell-header-offset, 0rem);height:calc(100dvh - var(--app-shell-header-offset, 0rem) - var(--app-shell-footer-offset, 0rem));background-color:var(--mantine-color-body);transition-property:transform,top,height}:where([data-layout=alt]) .m_45252eee,:where([data-layout=alt]) .m_9cdde9a{top:0rem;height:100dvh}.m_45252eee{inset-inline-start:0;width:var(--app-shell-navbar-width);transition-property:transform,top,height;transform:var(--app-shell-navbar-transform);z-index:var(--app-shell-navbar-z-index)}:where([dir=rtl]) .m_45252eee{transform:var(--app-shell-navbar-transform-rtl)}.m_45252eee:where([data-with-border]){border-inline-end:1px solid var(--app-shell-border-color)}.m_9cdde9a{inset-inline-end:0;width:var(--app-shell-aside-width);transform:var(--app-shell-aside-transform);z-index:var(--app-shell-aside-z-index)}:where([dir=rtl]) .m_9cdde9a{transform:var(--app-shell-aside-transform-rtl)}.m_9cdde9a:where([data-with-border]){border-inline-start:1px solid var(--app-shell-border-color)}.m_8983817{padding-inline-start:calc(var(--app-shell-navbar-offset, 0rem) + var(--app-shell-padding));padding-inline-end:calc(var(--app-shell-aside-offset, 0rem) + var(--app-shell-padding));padding-top:calc(var(--app-shell-header-offset, 0rem) + var(--app-shell-padding));padding-bottom:calc(var(--app-shell-footer-offset, 0rem) + var(--app-shell-padding));min-height:100dvh;transition-property:padding}.m_3b16f56b,.m_3840c879{position:fixed;inset-inline:0;transition-property:transform,left,right;background-color:var(--mantine-color-body)}:where([data-layout=alt]) .m_3b16f56b,:where([data-layout=alt]) .m_3840c879{inset-inline-start:var(--app-shell-navbar-offset, 0rem);inset-inline-end:var(--app-shell-aside-offset, 0rem)}.m_3b16f56b{top:0;height:var(--app-shell-header-height);background-color:var(--mantine-color-body);transform:var(--app-shell-header-transform);z-index:var(--app-shell-header-z-index)}.m_3b16f56b:where([data-with-border]){border-bottom:1px solid var(--app-shell-border-color)}.m_3840c879{bottom:0;height:calc(var(--app-shell-footer-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);transform:var(--app-shell-footer-transform);z-index:var(--app-shell-footer-z-index)}.m_3840c879:where([data-with-border]){border-top:1px solid var(--app-shell-border-color)}.m_6dcfc7c7{flex-grow:0}.m_6dcfc7c7:where([data-grow]){flex-grow:1}.m_71ac47fc{--ar-ratio: 1;max-width:100%}.m_71ac47fc>:where(*:not(style)){aspect-ratio:var(--ar-ratio);width:100%}.m_71ac47fc>:where(img,video){object-fit:cover}.m_88b62a41{--combobox-padding: calc(.25rem * var(--mantine-scale));padding:var(--combobox-padding)}.m_88b62a41:has([data-mantine-scrollbar]) .m_985517d8{max-width:calc(100% + var(--combobox-padding))}.m_88b62a41[data-composed]{padding-inline-end:0}.m_88b62a41[data-hidden]{display:none}.m_88b62a41,.m_b2821a6e{--combobox-option-padding-xs: calc(.25rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));--combobox-option-padding-sm: calc(.375rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--combobox-option-padding-md: calc(.5rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale));--combobox-option-padding-lg: calc(.625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--combobox-option-padding-xl: calc(.875rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--combobox-option-padding: var(--combobox-option-padding-sm)}.m_92253aa5{padding:var(--combobox-option-padding);font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border-radius:var(--mantine-radius-default);background-color:transparent;color:inherit;cursor:pointer;word-break:break-word}.m_92253aa5:where([data-combobox-selected]){background-color:var(--mantine-primary-color-filled);color:var(--mantine-color-white)}.m_92253aa5:where([data-combobox-disabled]){cursor:not-allowed;opacity:.35}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}.m_985517d8{margin-inline:calc(var(--combobox-padding) * -1);margin-top:calc(var(--combobox-padding) * -1);width:calc(100% + var(--combobox-padding) * 2);border-top-width:0;border-inline-width:0;border-end-start-radius:0;border-end-end-radius:0;margin-bottom:var(--combobox-padding);position:relative}:where([data-mantine-color-scheme=light]) .m_985517d8,:where([data-mantine-color-scheme=light]) .m_985517d8:focus{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_985517d8,:where([data-mantine-color-scheme=dark]) .m_985517d8:focus{border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=light]) .m_985517d8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_985517d8{background-color:var(--mantine-color-dark-7)}.m_2530cd1d{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));text-align:center;padding:var(--combobox-option-padding);color:var(--mantine-color-dimmed)}.m_858f94bd,.m_82b967cb{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border:0 solid transparent;margin-inline:calc(var(--combobox-padding) * -1);padding:var(--combobox-option-padding)}:where([data-mantine-color-scheme=light]) .m_858f94bd,:where([data-mantine-color-scheme=light]) .m_82b967cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_858f94bd,:where([data-mantine-color-scheme=dark]) .m_82b967cb{border-color:var(--mantine-color-dark-4)}.m_82b967cb{border-top-width:calc(.0625rem * var(--mantine-scale));margin-top:var(--combobox-padding);margin-bottom:calc(var(--combobox-padding) * -1)}.m_858f94bd{border-bottom-width:calc(.0625rem * var(--mantine-scale));margin-bottom:var(--combobox-padding);margin-top:calc(var(--combobox-padding) * -1)}.m_254f3e4f:has(.m_2bb2e9e5:only-child){display:none}.m_2bb2e9e5{color:var(--mantine-color-dimmed);font-size:calc(var(--combobox-option-fz, var(--mantine-font-size-sm)) * .85);padding:var(--combobox-option-padding);font-weight:500;position:relative;display:flex;align-items:center}.m_2bb2e9e5:after{content:"";flex:1;inset-inline:0;height:calc(.0625rem * var(--mantine-scale));margin-inline-start:var(--mantine-spacing-xs)}:where([data-mantine-color-scheme=light]) .m_2bb2e9e5:after{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_2bb2e9e5:after{background-color:var(--mantine-color-dark-4)}.m_2bb2e9e5:only-child{display:none}.m_2943220b{--combobox-chevron-size-xs: calc(.875rem * var(--mantine-scale));--combobox-chevron-size-sm: calc(1.125rem * var(--mantine-scale));--combobox-chevron-size-md: calc(1.25rem * var(--mantine-scale));--combobox-chevron-size-lg: calc(1.5rem * var(--mantine-scale));--combobox-chevron-size-xl: calc(1.75rem * var(--mantine-scale));--combobox-chevron-size: var(--combobox-chevron-size-sm)}:where([data-mantine-color-scheme=light]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-gray-6))}:where([data-mantine-color-scheme=dark]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-dark-3))}.m_2943220b{width:var(--combobox-chevron-size);height:var(--combobox-chevron-size);color:var(--_combobox-chevron-color)}.m_2943220b:where([data-error]){color:var(--combobox-chevron-color, var(--mantine-color-error))}.m_390b5f4{display:flex;align-items:center;gap:calc(.5rem * var(--mantine-scale))}.m_390b5f4:where([data-reverse]){justify-content:space-between}.m_8ee53fc2{opacity:.4;width:.8em;min-width:.8em;height:.8em}:where([data-combobox-selected]) .m_8ee53fc2{opacity:1}.m_5f75b09e{--label-lh-xs: calc(1rem * var(--mantine-scale));--label-lh-sm: calc(1.25rem * var(--mantine-scale));--label-lh-md: calc(1.5rem * var(--mantine-scale));--label-lh-lg: calc(1.875rem * var(--mantine-scale));--label-lh-xl: calc(2.25rem * var(--mantine-scale));--label-lh: var(--label-lh-sm)}.m_5f75b09e[data-label-position=left]{--label-order: 1;--label-offset-end: var(--mantine-spacing-sm);--label-offset-start: 0}.m_5f75b09e[data-label-position=right]{--label-order: 2;--label-offset-end: 0;--label-offset-start: var(--mantine-spacing-sm)}.m_5f6e695e{display:flex}.m_d3ea56bb{--label-cursor: var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:inline-flex;flex-direction:column;font-size:var(--label-fz, var(--mantine-font-size-sm));line-height:var(--label-lh);cursor:var(--label-cursor);order:var(--label-order)}fieldset:disabled .m_d3ea56bb,.m_d3ea56bb[data-disabled]{--label-cursor: not-allowed}.m_8ee546b8{cursor:var(--label-cursor);color:inherit;padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}fieldset:disabled .m_8ee546b8,.m_8ee546b8:where([data-disabled]){color:var(--mantine-color-disabled-color)}.m_328f68c0,.m_8e8a99cc{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}.m_26775b0a{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_26775b0a :where(*){cursor:inherit}.m_26775b0a:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_5e5256ee{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled);--checkbox-icon-color: var(--mantine-color-white);position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);min-width:var(--checkbox-size);height:var(--checkbox-size);min-height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_5e5256ee{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_5e5256ee[data-indeterminate],.m_5e5256ee[data-checked]{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_5e5256ee[data-indeterminate]>.m_1b1c543a,.m_5e5256ee[data-checked]>.m_1b1c543a{opacity:1;transform:none;color:var(--checkbox-icon-color)}.m_5e5256ee[data-disabled]{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}[data-mantine-color-scheme=light] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-dark-3)}.m_76e20374[data-indeterminate]:not([data-disabled]),.m_76e20374[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--checkbox-color)}.m_76e20374[data-indeterminate]:not([data-disabled])>.m_1b1c543a,.m_76e20374[data-checked]:not([data-disabled])>.m_1b1c543a{color:var(--checkbox-color);opacity:1;transform:none}.m_1b1c543a{display:block;width:60%;color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_bf2d988c{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled);--checkbox-icon-color: var(--mantine-color-white)}.m_26062bec{position:relative;width:var(--checkbox-size);height:var(--checkbox-size);order:1}.m_26062bec:where([data-label-position=left]){order:2}.m_26063560{appearance:none;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));padding:0;display:block;margin:0;transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_26063560{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_26063560{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_26063560:where([data-error]){border-color:var(--mantine-color-error)}.m_26063560[data-indeterminate],.m_26063560:checked{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_26063560[data-indeterminate]+.m_bf295423,.m_26063560:checked+.m_bf295423{opacity:1;transform:none}.m_26063560:disabled{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}.m_26063560:disabled+.m_bf295423{color:var(--mantine-color-disabled-color)}.m_215c4542+.m_bf295423{color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled),.m_215c4542:checked:not(:disabled){background-color:transparent;border-color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled)+.m_bf295423,.m_215c4542:checked:not(:disabled)+.m_bf295423{color:var(--checkbox-color);opacity:1;transform:none}.m_bf295423{position:absolute;inset:0;width:60%;margin:auto;color:var(--checkbox-icon-color);pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:0;transition:transform .1s ease,opacity .1s ease}.m_11def92b{--ag-spacing: var(--mantine-spacing-sm);--ag-offset: calc(var(--ag-spacing) * -1);display:flex;padding-inline-start:var(--ag-spacing)}.m_f85678b6{--avatar-size-xs: calc(1rem * var(--mantine-scale));--avatar-size-sm: calc(1.625rem * var(--mantine-scale));--avatar-size-md: calc(2.375rem * var(--mantine-scale));--avatar-size-lg: calc(3.5rem * var(--mantine-scale));--avatar-size-xl: calc(5.25rem * var(--mantine-scale));--avatar-size: var(--avatar-size-md);--avatar-radius: calc(62.5rem * var(--mantine-scale));--avatar-bg: var(--mantine-color-gray-light);--avatar-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--avatar-color: var(--mantine-color-gray-light-color);--avatar-placeholder-fz: calc(var(--avatar-size) / 2.5);-webkit-tap-highlight-color:transparent;position:relative;display:block;-webkit-user-select:none;user-select:none;overflow:hidden;border-radius:var(--avatar-radius);text-decoration:none;padding:0;width:var(--avatar-size);height:var(--avatar-size);min-width:var(--avatar-size)}.m_f85678b6:where([data-within-group]){margin-inline-start:var(--ag-offset);border:2px solid var(--mantine-color-body);background:var(--mantine-color-body)}.m_11f8ac07{object-fit:cover;width:100%;height:100%;display:block}.m_104cd71f{font-weight:700;display:flex;align-items:center;justify-content:center;width:100%;height:100%;-webkit-user-select:none;user-select:none;border-radius:var(--avatar-radius);font-size:var(--avatar-placeholder-fz);background:var(--avatar-bg);border:var(--avatar-bd);color:var(--avatar-color)}.m_104cd71f>[data-avatar-placeholder-icon]{width:70%;height:70%}.m_2ce0de02{background-size:cover;background-position:center;display:block;width:100%;border:0;text-decoration:none;border-radius:var(--bi-radius, 0)}.m_347db0ec{--badge-height-xs: calc(1rem * var(--mantine-scale));--badge-height-sm: calc(1.125rem * var(--mantine-scale));--badge-height-md: calc(1.25rem * var(--mantine-scale));--badge-height-lg: calc(1.625rem * var(--mantine-scale));--badge-height-xl: calc(2rem * var(--mantine-scale));--badge-fz-xs: calc(.5625rem * var(--mantine-scale));--badge-fz-sm: calc(.625rem * var(--mantine-scale));--badge-fz-md: calc(.6875rem * var(--mantine-scale));--badge-fz-lg: calc(.8125rem * var(--mantine-scale));--badge-fz-xl: calc(1rem * var(--mantine-scale));--badge-padding-x-xs: calc(.375rem * var(--mantine-scale));--badge-padding-x-sm: calc(.5rem * var(--mantine-scale));--badge-padding-x-md: calc(.625rem * var(--mantine-scale));--badge-padding-x-lg: calc(.75rem * var(--mantine-scale));--badge-padding-x-xl: calc(1rem * var(--mantine-scale));--badge-height: var(--badge-height-md);--badge-fz: var(--badge-fz-md);--badge-padding-x: var(--badge-padding-x-md);--badge-radius: calc(62.5rem * var(--mantine-scale));--badge-lh: calc(var(--badge-height) - calc(.125rem * var(--mantine-scale)));--badge-color: var(--mantine-color-white);--badge-bg: var(--mantine-primary-color-filled);--badge-border-width: calc(.0625rem * var(--mantine-scale));--badge-bd: var(--badge-border-width) solid transparent;-webkit-tap-highlight-color:transparent;font-size:var(--badge-fz);border-radius:var(--badge-radius);height:var(--badge-height);line-height:var(--badge-lh);text-decoration:none;padding:0 var(--badge-padding-x);display:inline-grid;align-items:center;justify-content:center;width:fit-content;text-transform:uppercase;font-weight:700;letter-spacing:calc(.015625rem * var(--mantine-scale));cursor:default;text-overflow:ellipsis;overflow:hidden;color:var(--badge-color);background:var(--badge-bg);border:var(--badge-bd)}.m_347db0ec:where([data-with-left-section],[data-variant=dot]){grid-template-columns:auto 1fr}.m_347db0ec:where([data-with-right-section]){grid-template-columns:1fr auto}.m_347db0ec:where([data-with-left-section][data-with-right-section],[data-variant=dot][data-with-right-section]){grid-template-columns:auto 1fr auto}.m_347db0ec:where([data-block]){display:flex;width:100%}.m_347db0ec:where([data-circle]){padding-inline:calc(.125rem * var(--mantine-scale));display:flex;width:var(--badge-height)}.m_fbd81e3d{--badge-dot-size: calc(var(--badge-height) / 3.4)}:where([data-mantine-color-scheme=light]) .m_fbd81e3d{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fbd81e3d{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_fbd81e3d:before{content:"";display:block;width:var(--badge-dot-size);height:var(--badge-dot-size);border-radius:var(--badge-dot-size);background-color:var(--badge-dot-color);margin-inline-end:var(--badge-dot-size)}.m_5add502a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;cursor:inherit}.m_91fdda9b{--badge-section-margin: calc(var(--mantine-spacing-xs) / 2);display:inline-flex;justify-content:center;align-items:center;max-height:calc(var(--badge-height) - var(--badge-border-width) * 2)}.m_91fdda9b:where([data-position=left]){margin-inline-end:var(--badge-section-margin)}.m_91fdda9b:where([data-position=right]){margin-inline-start:var(--badge-section-margin)}.m_ddec01c0{--blockquote-border: 3px solid var(--bq-bd);position:relative;margin:0;border-inline-start:var(--blockquote-border);border-start-end-radius:var(--bq-radius);border-end-end-radius:var(--bq-radius);padding:var(--mantine-spacing-xl) calc(2.375rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_ddec01c0{background-color:var(--bq-bg-light)}:where([data-mantine-color-scheme=dark]) .m_ddec01c0{background-color:var(--bq-bg-dark)}.m_dde7bd57{--blockquote-icon-offset: calc(var(--bq-icon-size) / -2);position:absolute;color:var(--bq-bd);background-color:var(--mantine-color-body);display:flex;align-items:center;justify-content:center;top:var(--blockquote-icon-offset);inset-inline-start:var(--blockquote-icon-offset);width:var(--bq-icon-size);height:var(--bq-icon-size);border-radius:var(--bq-icon-size)}.m_dde51a35{display:block;margin-top:var(--mantine-spacing-md);opacity:.6;font-size:85%}.m_8b3717df{display:flex;align-items:center;flex-wrap:wrap}.m_f678d540{line-height:1;white-space:nowrap;-webkit-tap-highlight-color:transparent}.m_3b8f2208{margin-inline:var(--bc-separator-margin, var(--mantine-spacing-xs));line-height:1;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_3b8f2208{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_3b8f2208{color:var(--mantine-color-dark-2)}.m_fea6bf1a{--burger-size-xs: calc(.75rem * var(--mantine-scale));--burger-size-sm: calc(1.125rem * var(--mantine-scale));--burger-size-md: calc(1.5rem * var(--mantine-scale));--burger-size-lg: calc(2.125rem * var(--mantine-scale));--burger-size-xl: calc(2.625rem * var(--mantine-scale));--burger-size: var(--burger-size-md);--burger-line-size: calc(var(--burger-size) / 12);width:calc(var(--burger-size) + var(--mantine-spacing-xs));height:calc(var(--burger-size) + var(--mantine-spacing-xs));padding:calc(var(--mantine-spacing-xs) / 2);cursor:pointer}:where([data-mantine-color-scheme=light]) .m_fea6bf1a{--burger-color: var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fea6bf1a{--burger-color: var(--mantine-color-white)}.m_d4fb9cad{position:relative;-webkit-user-select:none;user-select:none}.m_d4fb9cad,.m_d4fb9cad:before,.m_d4fb9cad:after{display:block;width:var(--burger-size);height:var(--burger-line-size);background-color:var(--burger-color);outline:calc(.0625rem * var(--mantine-scale)) solid transparent;transition-property:background-color,transform;transition-duration:var(--burger-transition-duration, .3s);transition-timing-function:var(--burger-transition-timing-function, ease)}.m_d4fb9cad:before,.m_d4fb9cad:after{position:absolute;content:"";inset-inline-start:0}.m_d4fb9cad:before{top:calc(var(--burger-size) / -3)}.m_d4fb9cad:after{top:calc(var(--burger-size) / 3)}.m_d4fb9cad[data-opened]{background-color:transparent}.m_d4fb9cad[data-opened]:before{transform:translateY(calc(var(--burger-size) / 3)) rotate(45deg)}.m_d4fb9cad[data-opened]:after{transform:translateY(calc(var(--burger-size) / -3)) rotate(-45deg)}.m_77c9d27d{--button-height-xs: calc(1.875rem * var(--mantine-scale));--button-height-sm: calc(2.25rem * var(--mantine-scale));--button-height-md: calc(2.625rem * var(--mantine-scale));--button-height-lg: calc(3.125rem * var(--mantine-scale));--button-height-xl: calc(3.75rem * var(--mantine-scale));--button-height-compact-xs: calc(1.375rem * var(--mantine-scale));--button-height-compact-sm: calc(1.625rem * var(--mantine-scale));--button-height-compact-md: calc(1.875rem * var(--mantine-scale));--button-height-compact-lg: calc(2.125rem * var(--mantine-scale));--button-height-compact-xl: calc(2.5rem * var(--mantine-scale));--button-padding-x-xs: calc(.875rem * var(--mantine-scale));--button-padding-x-sm: calc(1.125rem * var(--mantine-scale));--button-padding-x-md: calc(1.375rem * var(--mantine-scale));--button-padding-x-lg: calc(1.625rem * var(--mantine-scale));--button-padding-x-xl: calc(2rem * var(--mantine-scale));--button-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--button-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--button-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--button-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--button-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--button-height: var(--button-height-sm);--button-padding-x: var(--button-padding-x-sm);--button-color: var(--mantine-color-white);-webkit-user-select:none;user-select:none;font-weight:600;position:relative;line-height:1;text-align:center;overflow:hidden;width:auto;cursor:pointer;display:inline-block;border-radius:var(--button-radius, var(--mantine-radius-default));font-size:var(--button-fz, var(--mantine-font-size-sm));background:var(--button-bg, var(--mantine-primary-color-filled));border:var(--button-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--button-color, var(--mantine-color-white));height:var(--button-height, var(--button-height-sm));padding-inline:var(--button-padding-x, var(--button-padding-x-sm));vertical-align:middle}.m_77c9d27d:where([data-block]){display:block;width:100%}.m_77c9d27d:where([data-with-left-section]){padding-inline-start:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where([data-with-right-section]){padding-inline-end:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;transform:none;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_77c9d27d:before{content:"";pointer-events:none;position:absolute;inset:calc(-.0625rem * var(--mantine-scale));border-radius:var(--button-radius, var(--mantine-radius-default));transform:translateY(-100%);opacity:0;filter:blur(12px);transition:transform .15s ease,opacity .1s ease}:where([data-mantine-color-scheme=light]) .m_77c9d27d:before{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:before{background-color:#00000026}.m_77c9d27d:where([data-loading]){cursor:not-allowed;transform:none}.m_77c9d27d:where([data-loading]):before{transform:translateY(0);opacity:1}.m_77c9d27d:where([data-loading]) .m_80f1301b{opacity:0;transform:translateY(100%)}@media(hover:hover){.m_77c9d27d:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}@media(hover:none){.m_77c9d27d:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}.m_80f1301b{display:flex;align-items:center;justify-content:var(--button-justify, center);height:100%;overflow:visible;transition:transform .15s ease,opacity .1s ease}.m_811560b9{white-space:nowrap;height:100%;overflow:hidden;display:flex;align-items:center;opacity:1}.m_811560b9:where([data-loading]){opacity:.2}.m_a74036a{display:flex;align-items:center}.m_a74036a:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_a74036a:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_a25b86ee{position:absolute;left:50%;top:50%}.m_80d6d844{--button-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_80d6d844 :where(.m_77c9d27d):focus{position:relative;z-index:1}.m_80d6d844[data-orientation=horizontal]{flex-direction:row}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical]{flex-direction:column}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--button-border-width) / 2);border-top-width:calc(var(--button-border-width) / 2)}.m_70be2a01{--section-height-xs: calc(1.875rem * var(--mantine-scale));--section-height-sm: calc(2.25rem * var(--mantine-scale));--section-height-md: calc(2.625rem * var(--mantine-scale));--section-height-lg: calc(3.125rem * var(--mantine-scale));--section-height-xl: calc(3.75rem * var(--mantine-scale));--section-height-compact-xs: calc(1.375rem * var(--mantine-scale));--section-height-compact-sm: calc(1.625rem * var(--mantine-scale));--section-height-compact-md: calc(1.875rem * var(--mantine-scale));--section-height-compact-lg: calc(2.125rem * var(--mantine-scale));--section-height-compact-xl: calc(2.5rem * var(--mantine-scale));--section-padding-x-xs: calc(.875rem * var(--mantine-scale));--section-padding-x-sm: calc(1.125rem * var(--mantine-scale));--section-padding-x-md: calc(1.375rem * var(--mantine-scale));--section-padding-x-lg: calc(1.625rem * var(--mantine-scale));--section-padding-x-xl: calc(2rem * var(--mantine-scale));--section-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--section-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--section-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_e615b15f{--card-padding: var(--mantine-spacing-md);position:relative;overflow:hidden;display:flex;flex-direction:column;padding:var(--card-padding);color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_e615b15f{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_e615b15f{background-color:var(--mantine-color-dark-6)}.m_599a2148{display:block;margin-inline:calc(var(--card-padding) * -1)}.m_599a2148:where(:first-child){margin-top:calc(var(--card-padding) * -1);border-top:none!important}.m_599a2148:where(:last-child){margin-bottom:calc(var(--card-padding) * -1);border-bottom:none!important}.m_599a2148:where([data-inherit-padding]){padding-inline:var(--card-padding)}.m_599a2148:where([data-with-border]){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-bottom:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_599a2148{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_599a2148{border-color:var(--mantine-color-dark-4)}.m_599a2148+.m_599a2148{border-top:none!important}.m_4451eb3a{display:flex;align-items:center;justify-content:center}.m_4451eb3a:where([data-inline]){display:inline-flex}.m_f59ffda3{--chip-size-xs: calc(1.4375rem * var(--mantine-scale));--chip-size-sm: calc(1.75rem * var(--mantine-scale));--chip-size-md: calc(2rem * var(--mantine-scale));--chip-size-lg: calc(2.25rem * var(--mantine-scale));--chip-size-xl: calc(2.5rem * var(--mantine-scale));--chip-icon-size-xs: calc(.625rem * var(--mantine-scale));--chip-icon-size-sm: calc(.75rem * var(--mantine-scale));--chip-icon-size-md: calc(.875rem * var(--mantine-scale));--chip-icon-size-lg: calc(1rem * var(--mantine-scale));--chip-icon-size-xl: calc(1.125rem * var(--mantine-scale));--chip-padding-xs: calc(1rem * var(--mantine-scale));--chip-padding-sm: calc(1.25rem * var(--mantine-scale));--chip-padding-md: calc(1.5rem * var(--mantine-scale));--chip-padding-lg: calc(1.75rem * var(--mantine-scale));--chip-padding-xl: calc(2rem * var(--mantine-scale));--chip-checked-padding-xs: calc(.46875rem * var(--mantine-scale));--chip-checked-padding-sm: calc(.625rem * var(--mantine-scale));--chip-checked-padding-md: calc(.73125rem * var(--mantine-scale));--chip-checked-padding-lg: calc(.84375rem * var(--mantine-scale));--chip-checked-padding-xl: calc(.98125rem * var(--mantine-scale));--chip-spacing-xs: calc(.625rem * var(--mantine-scale));--chip-spacing-sm: calc(.75rem * var(--mantine-scale));--chip-spacing-md: calc(1rem * var(--mantine-scale));--chip-spacing-lg: calc(1.25rem * var(--mantine-scale));--chip-spacing-xl: calc(1.375rem * var(--mantine-scale));--chip-size: var(--chip-size-sm);--chip-icon-size: var(--chip-icon-size-sm);--chip-padding: var(--chip-padding-sm);--chip-spacing: var(--chip-spacing-sm);--chip-checked-padding: var(--chip-checked-padding-sm);--chip-bg: var(--mantine-primary-color-filled);--chip-hover: var(--mantine-primary-color-filled-hover);--chip-color: var(--mantine-color-white);--chip-bd: calc(.0625rem * var(--mantine-scale)) solid transparent}.m_be049a53{display:inline-flex;align-items:center;-webkit-user-select:none;user-select:none;border-radius:var(--chip-radius, 1000rem);height:var(--chip-size);font-size:var(--chip-fz, var(--mantine-font-size-sm));line-height:calc(var(--chip-size) - calc(.125rem * var(--mantine-scale)));padding-inline:var(--chip-padding);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}.m_be049a53:where([data-checked]){padding:var(--chip-checked-padding)}.m_be049a53:where([data-disabled]){cursor:not-allowed;background-color:var(--mantine-color-disabled);color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-white);border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-dark-6);border:1px solid var(--mantine-color-dark-4)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-dark-5)}}.m_3904c1af:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);border:var(--chip-bd)}@media(hover:hover){.m_3904c1af:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_3904c1af:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_fa109255:not([data-disabled]),.m_f7e165c3:not([data-disabled]){border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-dark-5)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-dark-4)}}.m_fa109255:not([data-disabled]):where([data-checked]),.m_f7e165c3:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);color:var(--chip-color);background-color:var(--chip-bg)}@media(hover:hover){.m_fa109255:not([data-disabled]):where([data-checked]):hover,.m_f7e165c3:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_fa109255:not([data-disabled]):where([data-checked]):active,.m_f7e165c3:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_9ac86df9{width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));max-width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));height:var(--chip-icon-size);display:flex;align-items:center;overflow:hidden}.m_d6d72580{width:var(--chip-icon-size);height:var(--chip-icon-size);display:block;color:var(--chip-icon-color, inherit)}.m_bde07329{width:0;height:0;padding:0;opacity:0;margin:0}.m_bde07329:focus-visible+.m_be049a53{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_b183c0a2{font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);padding:2px calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);font-size:var(--mantine-font-size-xs);margin:0;overflow:auto}:where([data-mantine-color-scheme=light]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-gray-0))}:where([data-mantine-color-scheme=dark]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-dark-6))}.m_b183c0a2[data-block]{padding:var(--mantine-spacing-xs)}.m_de3d2490{--cs-size: calc(1.75rem * var(--mantine-scale));--cs-radius: calc(62.5rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;border:none;appearance:none;display:block;line-height:1;position:relative;width:var(--cs-size);height:var(--cs-size);min-width:var(--cs-size);min-height:var(--cs-size);border-radius:var(--cs-radius);color:inherit;text-decoration:none}[data-mantine-color-scheme=light] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-gray-3);--alpha-overlay-bg: var(--mantine-color-white)}[data-mantine-color-scheme=dark] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-dark-4);--alpha-overlay-bg: var(--mantine-color-dark-7)}.m_862f3d1b{position:absolute;inset:0;border-radius:var(--cs-radius)}.m_98ae7f22{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:1;box-shadow:#0000001a 0 0 0 calc(.0625rem * var(--mantine-scale)) inset,#00000026 0 0 calc(.25rem * var(--mantine-scale)) inset}.m_95709ac0{position:absolute;inset:0;border-radius:var(--cs-radius);background-size:calc(.5rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));background-position:0 0,0 calc(.25rem * var(--mantine-scale)),calc(.25rem * var(--mantine-scale)) calc(-.25rem * var(--mantine-scale)),calc(-.25rem * var(--mantine-scale)) 0;background-image:linear-gradient(45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(-45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--alpha-overlay-color) 75%),linear-gradient(-45deg,var(--alpha-overlay-bg) 75%,var(--alpha-overlay-color) 75%)}.m_93e74e3{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:2;display:flex;align-items:center;justify-content:center}.m_fee9c77{--cp-width-xs: calc(11.25rem * var(--mantine-scale));--cp-width-sm: calc(12.5rem * var(--mantine-scale));--cp-width-md: calc(15rem * var(--mantine-scale));--cp-width-lg: calc(17.5rem * var(--mantine-scale));--cp-width-xl: calc(20rem * var(--mantine-scale));--cp-preview-size-xs: calc(1.625rem * var(--mantine-scale));--cp-preview-size-sm: calc(2.125rem * var(--mantine-scale));--cp-preview-size-md: calc(2.625rem * var(--mantine-scale));--cp-preview-size-lg: calc(3.125rem * var(--mantine-scale));--cp-preview-size-xl: calc(3.375rem * var(--mantine-scale));--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-saturation-height-xs: calc(6.25rem * var(--mantine-scale));--cp-saturation-height-sm: calc(6.875rem * var(--mantine-scale));--cp-saturation-height-md: calc(7.5rem * var(--mantine-scale));--cp-saturation-height-lg: calc(8.75rem * var(--mantine-scale));--cp-saturation-height-xl: calc(10rem * var(--mantine-scale));--cp-preview-size: var(--cp-preview-size-sm);--cp-thumb-size: var(--cp-thumb-size-sm);--cp-saturation-height: var(--cp-saturation-height-sm);--cp-width: var(--cp-width-sm);--cp-body-spacing: var(--mantine-spacing-sm);width:var(--cp-width);padding:calc(.0625rem * var(--mantine-scale))}.m_fee9c77:where([data-full-width]){width:100%}.m_9dddfbac{width:var(--cp-preview-size);height:var(--cp-preview-size)}.m_bffecc3e{display:flex;padding-top:calc(var(--cp-body-spacing) / 2)}.m_3283bb96{flex:1}.m_3283bb96:not(:only-child){margin-inline-end:var(--mantine-spacing-xs)}.m_40d572ba{overflow:hidden;position:absolute;box-shadow:0 0 1px #0009;border:2px solid var(--mantine-color-white);width:var(--cp-thumb-size);height:var(--cp-thumb-size);border-radius:var(--cp-thumb-size);left:calc(var(--thumb-x-offset) - var(--cp-thumb-size) / 2);top:calc(var(--thumb-y-offset) - var(--cp-thumb-size) / 2)}.m_d8ee6fd8{height:unset!important;width:unset!important;min-width:0!important;min-height:0!important;margin:calc(.125rem * var(--mantine-scale));cursor:pointer;padding-bottom:calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)));flex:0 0 calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)))}.m_5711e686{margin-top:calc(.3125rem * var(--mantine-scale));margin-inline:calc(-.125rem * var(--mantine-scale));display:flex;flex-wrap:wrap}.m_202a296e{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;position:relative;height:var(--cp-saturation-height);border-radius:var(--mantine-radius-sm);margin:calc(var(--cp-thumb-size) / 2)}.m_202a296e:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_202a296e:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_11b3db02{position:absolute;border-radius:var(--mantine-radius-sm);inset:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)))}.m_d856d47d{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-thumb-size: var(--cp-thumb-size, calc(.75rem * var(--mantine-scale)));position:relative;height:calc(var(--cp-thumb-size) + calc(.125rem * var(--mantine-scale)));margin-inline:calc(var(--cp-thumb-size) / 2);outline:none}.m_d856d47d+.m_d856d47d{margin-top:calc(.375rem * var(--mantine-scale))}.m_d856d47d:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_d856d47d:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}:where([data-mantine-color-scheme=light]) .m_d856d47d{--slider-checkers: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d856d47d{--slider-checkers: var(--mantine-color-dark-4)}.m_8f327113{position:absolute;top:0;bottom:0;inset-inline:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)));border-radius:10000rem}.m_b077c2bc{--ci-eye-dropper-icon-size-xs: calc(.875rem * var(--mantine-scale));--ci-eye-dropper-icon-size-sm: calc(1rem * var(--mantine-scale));--ci-eye-dropper-icon-size-md: calc(1.125rem * var(--mantine-scale));--ci-eye-dropper-icon-size-lg: calc(1.25rem * var(--mantine-scale));--ci-eye-dropper-icon-size-xl: calc(1.375rem * var(--mantine-scale));--ci-eye-dropper-icon-size: var(--ci-eye-dropper-icon-size-sm)}.m_c5ccdcab{--ci-preview-size-xs: calc(1rem * var(--mantine-scale));--ci-preview-size-sm: calc(1.125rem * var(--mantine-scale));--ci-preview-size-md: calc(1.375rem * var(--mantine-scale));--ci-preview-size-lg: calc(1.75rem * var(--mantine-scale));--ci-preview-size-xl: calc(2.25rem * var(--mantine-scale));--ci-preview-size: var(--ci-preview-size-sm)}.m_5ece2cd7{padding:calc(.5rem * var(--mantine-scale))}.m_7485cace{--container-size-xs: calc(33.75rem * var(--mantine-scale));--container-size-sm: calc(45rem * var(--mantine-scale));--container-size-md: calc(60rem * var(--mantine-scale));--container-size-lg: calc(71.25rem * var(--mantine-scale));--container-size-xl: calc(82.5rem * var(--mantine-scale));--container-size: var(--container-size-md);max-width:var(--container-size);padding-inline:var(--mantine-spacing-md);margin-inline:auto}.m_7485cace:where([data-fluid]){max-width:100%}.m_e2125a27{--dialog-size-xs: calc(10rem * var(--mantine-scale));--dialog-size-sm: calc(12.5rem * var(--mantine-scale));--dialog-size-md: calc(21.25rem * var(--mantine-scale));--dialog-size-lg: calc(25rem * var(--mantine-scale));--dialog-size-xl: calc(31.25rem * var(--mantine-scale));--dialog-size: var(--dialog-size-md);position:relative;width:var(--dialog-size);max-width:calc(100vw - var(--mantine-spacing-xl) * 2);min-height:calc(3.125rem * var(--mantine-scale))}.m_5abab665{position:absolute;top:calc(var(--mantine-spacing-md) / 2);inset-inline-end:calc(var(--mantine-spacing-md) / 2)}.m_3eebeb36{--divider-size-xs: calc(.0625rem * var(--mantine-scale));--divider-size-sm: calc(.125rem * var(--mantine-scale));--divider-size-md: calc(.1875rem * var(--mantine-scale));--divider-size-lg: calc(.25rem * var(--mantine-scale));--divider-size-xl: calc(.3125rem * var(--mantine-scale));--divider-size: var(--divider-size-xs)}:where([data-mantine-color-scheme=light]) .m_3eebeb36{--divider-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3eebeb36{--divider-color: var(--mantine-color-dark-4)}.m_3eebeb36:where([data-orientation=horizontal]){border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color)}.m_3eebeb36:where([data-orientation=vertical]){border-inline-start:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);height:auto;align-self:stretch}.m_3eebeb36:where([data-with-label]){border:0}.m_9e365f20{display:flex;align-items:center;font-size:var(--mantine-font-size-xs);color:var(--mantine-color-dimmed);white-space:nowrap}.m_9e365f20:where([data-position=left]):before{display:none}.m_9e365f20:where([data-position=right]):after{display:none}.m_9e365f20:before{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-end:var(--mantine-spacing-xs)}.m_9e365f20:after{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-start:var(--mantine-spacing-xs)}.m_f11b401e{--drawer-size-xs: calc(20rem * var(--mantine-scale));--drawer-size-sm: calc(23.75rem * var(--mantine-scale));--drawer-size-md: calc(27.5rem * var(--mantine-scale));--drawer-size-lg: calc(38.75rem * var(--mantine-scale));--drawer-size-xl: calc(48.75rem * var(--mantine-scale));--drawer-size: var(--drawer-size-md);--drawer-offset: 0rem}.m_5a7c2c9{z-index:1000}.m_b8a05bbd{flex:var(--drawer-flex, 0 0 var(--drawer-size));height:var(--drawer-height, calc(100% - var(--drawer-offset) * 2));margin:var(--drawer-offset);max-width:calc(100% - var(--drawer-offset) * 2);max-height:calc(100% - var(--drawer-offset) * 2);overflow-y:auto}.m_b8a05bbd[data-hidden]{opacity:0!important;pointer-events:none}.m_31cd769a{display:flex;justify-content:var(--drawer-justify, flex-start);align-items:var(--drawer-align, flex-start)}.m_e9408a47{padding:var(--mantine-spacing-lg);padding-top:var(--mantine-spacing-xs);border-radius:var(--fieldset-radius, var(--mantine-radius-default));min-inline-size:auto}.m_84c9523a{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_84c9523a{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_84c9523a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-7)}.m_ef274e49{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_ef274e49{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_ef274e49{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_eda993d3{padding:0;border:0;border-radius:0}.m_90794832{font-size:var(--mantine-font-size-sm)}.m_74ca27fe{padding:0;margin-bottom:var(--mantine-spacing-sm)}.m_8478a6da{container:mantine-grid / inline-size}.m_410352e9{--grid-overflow: visible;--grid-margin: calc(var(--grid-gutter) / -2);--grid-col-padding: calc(var(--grid-gutter) / 2);overflow:var(--grid-overflow)}.m_dee7bd2f{width:calc(100% + var(--grid-gutter));display:flex;flex-wrap:wrap;justify-content:var(--grid-justify);align-items:var(--grid-align);margin:var(--grid-margin)}.m_96bdd299{--col-flex-grow: 0;--col-offset: 0rem;flex-shrink:0;order:var(--col-order);flex-basis:var(--col-flex-basis);width:var(--col-width);max-width:var(--col-max-width);flex-grow:var(--col-flex-grow);margin-inline-start:var(--col-offset);padding:var(--grid-col-padding)}.m_bcb3f3c2{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=light]) .m_bcb3f3c2{background-color:var(--mark-bg-light)}:where([data-mantine-color-scheme=dark]) .m_bcb3f3c2{background-color:var(--mark-bg-dark)}.m_9e117634{display:block;object-fit:var(--image-object-fit, cover);width:100%;border-radius:var(--image-radius, 0)}@keyframes m_885901b1{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(2.8)}}.m_e5262200{--indicator-size: calc(.625rem * var(--mantine-scale));--indicator-color: var(--mantine-primary-color-filled);position:relative;display:block}.m_e5262200:where([data-inline]){display:inline-block}.m_760d1fb1{position:absolute;top:var(--indicator-top);left:var(--indicator-left);right:var(--indicator-right);bottom:var(--indicator-bottom);transform:translate(var(--indicator-translate-x),var(--indicator-translate-y));min-width:var(--indicator-size);height:var(--indicator-size);border-radius:var(--indicator-radius, 1000rem);z-index:var(--indicator-z-index, 200);display:flex;align-items:center;justify-content:center;font-size:var(--mantine-font-size-xs);background-color:var(--indicator-color);color:var(--indicator-text-color, var(--mantine-color-white));white-space:nowrap}.m_760d1fb1:before{content:"";position:absolute;inset:0;background-color:var(--indicator-color);border-radius:var(--indicator-radius, 1000rem);z-index:-1}.m_760d1fb1:where([data-with-label]){padding-inline:calc(var(--mantine-spacing-xs) / 2)}.m_760d1fb1:where([data-with-border]){border:2px solid var(--mantine-color-body)}.m_760d1fb1[data-processing]:before{animation:m_885901b1 1s linear infinite}.m_dc6f14e2{--kbd-fz-xs: calc(.625rem * var(--mantine-scale));--kbd-fz-sm: calc(.75rem * var(--mantine-scale));--kbd-fz-md: calc(.875rem * var(--mantine-scale));--kbd-fz-lg: calc(1rem * var(--mantine-scale));--kbd-fz-xl: calc(1.25rem * var(--mantine-scale));--kbd-fz: var(--kbd-fz-sm);font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale));unicode-bidi:embed;text-align:center;padding:.12em .45em}:where([data-mantine-color-scheme=light]) .m_dc6f14e2{border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_dc6f14e2{border-color:var(--mantine-color-dark-4);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-6)}.m_abbac491{--list-fz: var(--mantine-font-size-md);--list-lh: var(--mantine-line-height-md);list-style-position:inside;font-size:var(--list-fz);line-height:var(--list-lh);margin:0;padding:0}.m_abbac491:where([data-with-padding]){padding-inline-start:var(--mantine-spacing-md)}.m_abb6bec2{white-space:nowrap;line-height:var(--list-lh)}.m_abb6bec2:where([data-with-icon]){list-style:none}.m_abb6bec2:where([data-with-icon]) .m_75cd9f71{--li-direction: row;--li-align: center}.m_abb6bec2:where(:not(:first-of-type)){margin-top:var(--list-spacing, 0)}.m_abb6bec2:where([data-centered]){line-height:1}.m_75cd9f71{display:inline-flex;flex-direction:var(--li-direction, column);align-items:var(--li-align, flex-start);white-space:normal}.m_60f83e5b{display:inline-block;vertical-align:middle;margin-inline-end:var(--mantine-spacing-sm)}.m_6e45937b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:var(--lo-z-index)}.m_e8eb006c{position:relative;z-index:calc(var(--lo-z-index) + 1)}.m_df587f17{z-index:var(--lo-z-index)}.m_dc9b7c9f{padding:calc(.25rem * var(--mantine-scale))}.m_9bfac126{color:var(--mantine-color-dimmed);font-weight:500;font-size:var(--mantine-font-size-xs);padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-sm);cursor:default}.m_efdf90cb{margin-top:calc(.25rem * var(--mantine-scale));margin-bottom:calc(.25rem * var(--mantine-scale));border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_efdf90cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_efdf90cb{border-color:var(--mantine-color-dark-4)}.m_99ac2aa1{font-size:var(--mantine-font-size-sm);width:100%;padding:calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-sm);border-radius:var(--popover-radius, var(--mantine-radius-default));color:var(--menu-item-color, var(--mantine-color-text));display:flex;align-items:center;-webkit-user-select:none;user-select:none}.m_99ac2aa1:where([data-disabled],:disabled){color:var(--mantine-color-disabled-color);opacity:.6;cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-gray-1))}:where([data-mantine-color-scheme=dark]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-dark-4))}.m_99ac2aa1:where([data-sub-menu-item]){padding-inline-end:calc(.3125rem * var(--mantine-scale))}.m_5476e0d3{flex:1}.m_8b75e504{display:flex;justify-content:center;align-items:center}.m_8b75e504:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_8b75e504:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_b85b0bed{transform:rotate(-90deg)}:where([dir=rtl]) .m_b85b0bed{transform:rotate(90deg)}.m_9df02822{--modal-size-xs: calc(20rem * var(--mantine-scale));--modal-size-sm: calc(23.75rem * var(--mantine-scale));--modal-size-md: calc(27.5rem * var(--mantine-scale));--modal-size-lg: calc(38.75rem * var(--mantine-scale));--modal-size-xl: calc(48.75rem * var(--mantine-scale));--modal-size: var(--modal-size-md);--modal-y-offset: 5dvh;--modal-x-offset: 5vw}.m_9df02822[data-full-screen]{--modal-border-radius: 0 !important}.m_9df02822[data-full-screen] .m_54c44539{--modal-content-flex: 0 0 100%;--modal-content-max-height: auto;--modal-content-height: 100dvh}.m_9df02822[data-full-screen] .m_1f958f16{--modal-inner-y-offset: 0;--modal-inner-x-offset: 0}.m_9df02822[data-centered] .m_1f958f16{--modal-inner-align: center}.m_d0e2b9cd{border-start-start-radius:var(--modal-radius, var(--mantine-radius-default));border-start-end-radius:var(--modal-radius, var(--mantine-radius-default))}.m_54c44539{flex:var(--modal-content-flex, 0 0 var(--modal-size));max-width:100%;max-height:var(--modal-content-max-height, calc(100dvh - var(--modal-y-offset) * 2));height:var(--modal-content-height, auto);overflow-y:auto}.m_54c44539[data-full-screen]{border-radius:0}.m_54c44539[data-hidden]{opacity:0!important;pointer-events:none}.m_1f958f16{display:flex;justify-content:center;align-items:var(--modal-inner-align, flex-start);padding-top:var(--modal-inner-y-offset, var(--modal-y-offset));padding-bottom:var(--modal-inner-y-offset, var(--modal-y-offset));padding-inline:var(--modal-inner-x-offset, var(--modal-x-offset))}.m_7cda1cd6{--pill-fz-xs: calc(.625rem * var(--mantine-scale));--pill-fz-sm: calc(.75rem * var(--mantine-scale));--pill-fz-md: calc(.875rem * var(--mantine-scale));--pill-fz-lg: calc(1rem * var(--mantine-scale));--pill-fz-xl: calc(1.125rem * var(--mantine-scale));--pill-height-xs: calc(1.125rem * var(--mantine-scale));--pill-height-sm: calc(1.375rem * var(--mantine-scale));--pill-height-md: calc(1.5625rem * var(--mantine-scale));--pill-height-lg: calc(1.75rem * var(--mantine-scale));--pill-height-xl: calc(2rem * var(--mantine-scale));--pill-fz: var(--pill-fz-sm);--pill-height: var(--pill-height-sm);font-size:var(--pill-fz);flex:0;height:var(--pill-height);padding-inline:.8em;display:inline-flex;align-items:center;border-radius:var(--pill-radius, 1000rem);line-height:1;white-space:nowrap;user-select:none;-webkit-user-select:none;max-width:100%}:where([data-mantine-color-scheme=dark]) .m_7cda1cd6{background-color:var(--mantine-color-dark-7);color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_7cda1cd6{color:var(--mantine-color-black)}.m_7cda1cd6:where([data-with-remove]:not(:has(button:disabled))){padding-inline-end:0}.m_7cda1cd6:where([data-disabled],:has(button:disabled)){cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_44da308b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=light]) .m_44da308b:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}:where([data-mantine-color-scheme=light]) .m_e3a01f8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=light]) .m_e3a01f8:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}.m_1e0e6180{cursor:inherit;overflow:hidden;height:100%;line-height:var(--pill-height);text-overflow:ellipsis}.m_ae386778{color:inherit;font-size:inherit;height:100%;min-height:unset;min-width:2em;width:unset;border-radius:0;padding-inline-start:.1em;padding-inline-end:.3em;flex:0;border-end-end-radius:var(--pill-radius, 50%);border-start-end-radius:var(--pill-radius, 50%)}.m_7cda1cd6[data-disabled]>.m_ae386778,.m_ae386778:disabled{display:none;background-color:transparent;width:.8em;min-width:.8em;padding:0;cursor:not-allowed}.m_7cda1cd6[data-disabled]>.m_ae386778>svg,.m_ae386778:disabled>svg{display:none}.m_ae386778>svg{pointer-events:none}.m_1dcfd90b{--pg-gap-xs: calc(.375rem * var(--mantine-scale));--pg-gap-sm: calc(.5rem * var(--mantine-scale));--pg-gap-md: calc(.625rem * var(--mantine-scale));--pg-gap-lg: calc(.75rem * var(--mantine-scale));--pg-gap-xl: calc(.75rem * var(--mantine-scale));--pg-gap: var(--pg-gap-sm);display:flex;align-items:center;gap:var(--pg-gap);flex-wrap:wrap}.m_45c4369d{background-color:transparent;appearance:none;min-width:calc(6.25rem * var(--mantine-scale));flex:1;border:0;font-size:inherit;height:1.6em;color:inherit;padding:0}.m_45c4369d::placeholder{color:var(--input-placeholder-color);opacity:1}.m_45c4369d:where([data-type=hidden],[data-type=auto]){height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));top:0;left:0;pointer-events:none;position:absolute;opacity:0}.m_45c4369d:focus{outline:none}.m_45c4369d:where([data-type=auto]:focus){height:1.6em;visibility:visible;opacity:1;position:static}.m_45c4369d:where([data-pointer]:not([data-disabled],:disabled)){cursor:pointer}.m_45c4369d:where([data-disabled],:disabled){cursor:not-allowed}.m_f0824112{--nl-bg: var(--mantine-primary-color-light);--nl-hover: var(--mantine-primary-color-light-hover);--nl-color: var(--mantine-primary-color-light-color);display:flex;align-items:center;width:100%;padding:8px var(--mantine-spacing-sm);-webkit-user-select:none;user-select:none}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_f0824112:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_f0824112:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:active{background-color:var(--mantine-color-dark-6)}}.m_f0824112:where([data-disabled]){opacity:.4;pointer-events:none}.m_f0824112:where([data-active],[aria-current=page]){background-color:var(--nl-bg);color:var(--nl-color)}@media(hover:hover){.m_f0824112:where([data-active],[aria-current=page]):hover{background-color:var(--nl-hover)}}@media(hover:none){.m_f0824112:where([data-active],[aria-current=page]):active{background-color:var(--nl-hover)}}.m_f0824112:where([data-active],[aria-current=page]) .m_57492dcc{--description-opacity: .9;--description-color: var(--nl-color)}.m_690090b5{display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.m_690090b5>svg{display:block}.m_690090b5:where([data-position=left]){margin-inline-end:var(--mantine-spacing-sm)}.m_690090b5:where([data-position=right]){margin-inline-start:var(--mantine-spacing-sm)}.m_690090b5:where([data-rotate]){transform:rotate(90deg)}.m_1f6ac4c4{font-size:var(--mantine-font-size-sm)}.m_f07af9d2{flex:1;overflow:hidden;text-overflow:ellipsis}.m_f07af9d2:where([data-no-wrap]){white-space:nowrap}.m_57492dcc{display:block;font-size:var(--mantine-font-size-xs);opacity:var(--description-opacity, 1);color:var(--description-color, var(--mantine-color-dimmed));overflow:hidden;text-overflow:ellipsis}:where([data-no-wrap]) .m_57492dcc{white-space:nowrap}.m_e17b862f{padding-inline-start:var(--nl-offset, var(--mantine-spacing-lg))}.m_1fd8a00b{transform:rotate(-90deg)}.m_a513464{--notification-radius: var(--mantine-radius-default);--notification-color: var(--mantine-primary-color-filled);overflow:hidden;box-sizing:border-box;position:relative;display:flex;align-items:center;padding-inline-start:calc(1.375rem * var(--mantine-scale));padding-inline-end:var(--mantine-spacing-xs);padding-top:var(--mantine-spacing-xs);padding-bottom:var(--mantine-spacing-xs);border-radius:var(--notification-radius);box-shadow:var(--mantine-shadow-lg)}.m_a513464:before{content:"";display:block;position:absolute;width:calc(.375rem * var(--mantine-scale));top:var(--notification-radius);bottom:var(--notification-radius);inset-inline-start:calc(.25rem * var(--mantine-scale));border-radius:var(--notification-radius);background-color:var(--notification-color)}:where([data-mantine-color-scheme=light]) .m_a513464{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_a513464{background-color:var(--mantine-color-dark-6)}.m_a513464:where([data-with-icon]):before{display:none}:where([data-mantine-color-scheme=light]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-dark-4)}.m_a4ceffb{box-sizing:border-box;margin-inline-end:var(--mantine-spacing-md);width:calc(1.75rem * var(--mantine-scale));height:calc(1.75rem * var(--mantine-scale));border-radius:calc(1.75rem * var(--mantine-scale));display:flex;align-items:center;justify-content:center;background-color:var(--notification-color);color:var(--mantine-color-white)}.m_b0920b15{margin-inline-end:var(--mantine-spacing-md)}.m_a49ed24{flex:1;overflow:hidden;margin-inline-end:var(--mantine-spacing-xs)}.m_3feedf16{margin-bottom:calc(.125rem * var(--mantine-scale));overflow:hidden;text-overflow:ellipsis;font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);font-weight:500}:where([data-mantine-color-scheme=light]) .m_3feedf16{color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_3feedf16{color:var(--mantine-color-white)}.m_3d733a3a{font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);overflow:hidden;text-overflow:ellipsis}:where([data-mantine-color-scheme=light]) .m_3d733a3a{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a{color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-dark-2)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_919a4d88:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:hover{background-color:var(--mantine-color-dark-8)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_919a4d88:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:active{background-color:var(--mantine-color-dark-8)}}.m_e2f5cd4e{--ni-right-section-width-xs: calc(1.0625rem * var(--mantine-scale));--ni-right-section-width-sm: calc(1.5rem * var(--mantine-scale));--ni-right-section-width-md: calc(1.6875rem * var(--mantine-scale));--ni-right-section-width-lg: calc(1.9375rem * var(--mantine-scale));--ni-right-section-width-xl: calc(2.125rem * var(--mantine-scale))}.m_95e17d22{--ni-chevron-size-xs: calc(.625rem * var(--mantine-scale));--ni-chevron-size-sm: calc(.875rem * var(--mantine-scale));--ni-chevron-size-md: calc(1rem * var(--mantine-scale));--ni-chevron-size-lg: calc(1.125rem * var(--mantine-scale));--ni-chevron-size-xl: calc(1.25rem * var(--mantine-scale));--ni-chevron-size: var(--ni-chevron-size-sm);display:flex;flex-direction:column;width:100%;height:calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));max-width:calc(var(--ni-chevron-size) * 1.7);margin-inline-start:auto}.m_80b4b171{--control-border: 1px solid var(--input-bd);--control-radius: calc(var(--input-radius) - calc(.0625rem * var(--mantine-scale)));flex:0 0 50%;width:100%;padding:0;height:calc(var(--input-height) / 2 - calc(.0625rem * var(--mantine-scale)));border-inline-start:var(--control-border);display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text);background-color:transparent;cursor:pointer}.m_80b4b171:where(:disabled){background-color:transparent;cursor:not-allowed;opacity:.6;color:var(--mantine-color-disabled-color)}.m_e2f5cd4e[data-error] :where(.m_80b4b171){color:var(--mantine-color-error)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_80b4b171:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_80b4b171:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:active{background-color:var(--mantine-color-dark-4)}}.m_80b4b171:where(:first-of-type){border-radius:0;border-start-end-radius:var(--control-radius)}.m_80b4b171:last-of-type{border-radius:0;border-end-end-radius:var(--control-radius)}.m_4addd315{--pagination-control-size-xs: calc(1.375rem * var(--mantine-scale));--pagination-control-size-sm: calc(1.625rem * var(--mantine-scale));--pagination-control-size-md: calc(2rem * var(--mantine-scale));--pagination-control-size-lg: calc(2.375rem * var(--mantine-scale));--pagination-control-size-xl: calc(2.75rem * var(--mantine-scale));--pagination-control-size: var(--pagination-control-size-md);--pagination-control-fz: var(--mantine-font-size-md);--pagination-active-bg: var(--mantine-primary-color-filled)}.m_326d024a{display:flex;align-items:center;justify-content:center;border:calc(.0625rem * var(--mantine-scale)) solid;cursor:pointer;color:var(--mantine-color-text);height:var(--pagination-control-size);min-width:var(--pagination-control-size);font-size:var(--pagination-control-fz);line-height:1;border-radius:var(--pagination-control-radius, var(--mantine-radius-default))}.m_326d024a:where([data-with-padding]){padding:calc(var(--pagination-control-size) / 4)}.m_326d024a:where(:disabled,[data-disabled]){cursor:not-allowed;opacity:.4}:where([data-mantine-color-scheme=light]) .m_326d024a{border-color:var(--mantine-color-gray-4);background-color:var(--mantine-color-white)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}:where([data-mantine-color-scheme=dark]) .m_326d024a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}@media(hover:hover){:where([data-mantine-color-scheme=dark]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=dark]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}.m_326d024a:where([data-active]){background-color:var(--pagination-active-bg);border-color:var(--pagination-active-bg);color:var(--pagination-active-color, var(--mantine-color-white))}@media(hover:hover){.m_326d024a:where([data-active]):hover{background-color:var(--pagination-active-bg)}}@media(hover:none){.m_326d024a:where([data-active]):active{background-color:var(--pagination-active-bg)}}.m_4ad7767d{height:var(--pagination-control-size);min-width:var(--pagination-control-size);display:flex;align-items:center;justify-content:center;pointer-events:none}.m_f61ca620{--psi-button-size-xs: calc(1.375rem * var(--mantine-scale));--psi-button-size-sm: calc(1.625rem * var(--mantine-scale));--psi-button-size-md: calc(1.75rem * var(--mantine-scale));--psi-button-size-lg: calc(2rem * var(--mantine-scale));--psi-button-size-xl: calc(2.5rem * var(--mantine-scale));--psi-icon-size-xs: calc(.75rem * var(--mantine-scale));--psi-icon-size-sm: calc(.9375rem * var(--mantine-scale));--psi-icon-size-md: calc(1.0625rem * var(--mantine-scale));--psi-icon-size-lg: calc(1.1875rem * var(--mantine-scale));--psi-icon-size-xl: calc(1.3125rem * var(--mantine-scale));--psi-button-size: var(--psi-button-size-sm);--psi-icon-size: var(--psi-icon-size-sm)}.m_ccf8da4c{position:relative;overflow:hidden}.m_f2d85dd2{font-family:var(--mantine-font-family);background-color:transparent;border:0;padding-inline-end:var(--input-padding-inline-end);padding-inline-start:var(--input-padding-inline-start);position:absolute;inset:0;outline:0;font-size:inherit;line-height:var(--mantine-line-height);height:100%;width:100%;color:inherit}.m_ccf8da4c[data-disabled] .m_f2d85dd2,.m_f2d85dd2:disabled{cursor:not-allowed}.m_f2d85dd2::placeholder{color:var(--input-placeholder-color);opacity:1}.m_f2d85dd2::-ms-reveal{display:none}.m_b1072d44{width:var(--psi-button-size);height:var(--psi-button-size);min-width:var(--psi-button-size);min-height:var(--psi-button-size)}.m_b1072d44:disabled{display:none}.m_f1cb205a{--pin-input-size-xs: calc(1.875rem * var(--mantine-scale));--pin-input-size-sm: calc(2.25rem * var(--mantine-scale));--pin-input-size-md: calc(2.625rem * var(--mantine-scale));--pin-input-size-lg: calc(3.125rem * var(--mantine-scale));--pin-input-size-xl: calc(3.75rem * var(--mantine-scale));--pin-input-size: var(--pin-input-size-sm)}.m_cb288ead{width:var(--pin-input-size);height:var(--pin-input-size)}@keyframes m_81a374bd{0%{background-position:0 0}to{background-position:calc(2.5rem * var(--mantine-scale)) 0}}.m_db6d6462{--progress-radius: var(--mantine-radius-default);--progress-size: var(--progress-size-md);--progress-size-xs: calc(.1875rem * var(--mantine-scale));--progress-size-sm: calc(.3125rem * var(--mantine-scale));--progress-size-md: calc(.5rem * var(--mantine-scale));--progress-size-lg: calc(.75rem * var(--mantine-scale));--progress-size-xl: calc(1rem * var(--mantine-scale));position:relative;height:var(--progress-size);border-radius:var(--progress-radius);overflow:hidden;display:flex}:where([data-mantine-color-scheme=light]) .m_db6d6462{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_db6d6462{background-color:var(--mantine-color-dark-4)}.m_2242eb65{background-color:var(--progress-section-color);height:100%;width:var(--progress-section-width);display:flex;align-items:center;justify-content:center;overflow:hidden;background-size:calc(1.25rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));transition:width var(--progress-transition-duration, .1s) ease}.m_2242eb65:where([data-striped]){background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_2242eb65:where([data-animated]){animation:m_81a374bd 1s linear infinite}.m_2242eb65:where(:last-of-type){border-radius:0;border-start-end-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_2242eb65:where(:first-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-end-start-radius:var(--progress-radius)}.m_91e40b74{color:var(--progress-label-color, var(--mantine-color-white));font-weight:700;-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:min(calc(var(--progress-size) * .65),calc(1.125rem * var(--mantine-scale)));line-height:1;padding-inline:calc(.25rem * var(--mantine-scale))}.m_9dc8ae12{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_9dc8ae12 :where(*){cursor:inherit}.m_9dc8ae12:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_717d7ff6{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-size: var(--radio-size-sm);--radio-color: var(--mantine-primary-color-filled);--radio-icon-color: var(--mantine-color-white);position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--radio-size);min-width:var(--radio-size);height:var(--radio-size);min-height:var(--radio-size);border-radius:var(--radio-radius, 10000px);transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_717d7ff6{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_717d7ff6[data-indeterminate],.m_717d7ff6[data-checked]{background-color:var(--radio-color);border-color:var(--radio-color)}.m_717d7ff6[data-indeterminate]>.m_3e4da632,.m_717d7ff6[data-checked]>.m_3e4da632{opacity:1;transform:none;color:var(--radio-icon-color)}.m_717d7ff6[data-disabled]{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-disabled-color)}.m_2980836c[data-indeterminate]:not([data-disabled]),.m_2980836c[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--radio-color)}.m_2980836c[data-indeterminate]:not([data-disabled])>.m_3e4da632,.m_2980836c[data-checked]:not([data-disabled])>.m_3e4da632{color:var(--radio-color);opacity:1;transform:none}.m_3e4da632{display:block;width:var(--radio-icon-size);height:var(--radio-icon-size);color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_f3f1af94{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-size: var(--radio-size-sm);--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-icon-color: var(--mantine-color-white)}.m_89c4f5e4{position:relative;width:var(--radio-size);height:var(--radio-size);order:1}.m_89c4f5e4:where([data-label-position=left]){order:2}.m_f3ed6b2b{color:var(--radio-icon-color);opacity:var(--radio-icon-opacity, 0);transform:var(--radio-icon-transform, scale(.2) translateY(calc(.625rem * var(--mantine-scale))));transition:opacity .1s ease,transform .2s ease;pointer-events:none;width:var(--radio-icon-size);height:var(--radio-icon-size);position:absolute;top:calc(50% - var(--radio-icon-size) / 2);left:calc(50% - var(--radio-icon-size) / 2)}.m_8a3dbb89{border:calc(.0625rem * var(--mantine-scale)) solid;position:relative;appearance:none;width:var(--radio-size);height:var(--radio-size);border-radius:var(--radio-radius, var(--radio-size));margin:0;display:flex;align-items:center;justify-content:center;transition-property:background-color,border-color;transition-timing-function:ease;transition-duration:.1s;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_8a3dbb89{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_8a3dbb89:checked{background-color:var(--radio-color, var(--mantine-primary-color-filled));border-color:var(--radio-color, var(--mantine-primary-color-filled))}.m_8a3dbb89:checked+.m_f3ed6b2b{--radio-icon-opacity: 1;--radio-icon-transform: scale(1)}.m_8a3dbb89:disabled{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-disabled-color)}.m_8a3dbb89:where([data-error]){border-color:var(--mantine-color-error)}.m_1bfe9d39+.m_f3ed6b2b{--radio-icon-color: var(--radio-color)}.m_1bfe9d39:checked:not(:disabled){background-color:transparent;border-color:var(--radio-color)}.m_1bfe9d39:checked:not(:disabled)+.m_f3ed6b2b{--radio-icon-color: var(--radio-color);--radio-icon-opacity: 1;--radio-icon-transform: none}.m_f8d312f2{--rating-size-xs: calc(.875rem * var(--mantine-scale));--rating-size-sm: calc(1.125rem * var(--mantine-scale));--rating-size-md: calc(1.25rem * var(--mantine-scale));--rating-size-lg: calc(1.75rem * var(--mantine-scale));--rating-size-xl: calc(2rem * var(--mantine-scale));display:flex;width:max-content}.m_f8d312f2:where(:has(input:disabled)){pointer-events:none}.m_61734bb7{position:relative;transition:transform .1s ease}.m_61734bb7:where([data-active]){z-index:1;transform:scale(1.1)}.m_5662a89a{width:var(--rating-size);height:var(--rating-size);display:block}:where([data-mantine-color-scheme=light]) .m_5662a89a{fill:var(--mantine-color-gray-3);stroke:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5662a89a{fill:var(--mantine-color-dark-3);stroke:var(--mantine-color-dark-3)}.m_5662a89a:where([data-filled]){fill:var(--rating-color);stroke:var(--rating-color)}.m_211007ba{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0;-webkit-tap-highlight-color:transparent}.m_211007ba:focus-visible+label{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_21342ee4{display:block;cursor:pointer;position:absolute;top:0;left:0;z-index:var(--rating-item-z-index, 0);-webkit-tap-highlight-color:transparent}.m_21342ee4:where([data-read-only]){cursor:default}.m_21342ee4:where(:last-of-type){position:relative}.m_fae05d6a{clip-path:var(--rating-symbol-clip-path)}.m_1b3c8819{--tooltip-radius: var(--mantine-radius-default);position:absolute;padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-xs);pointer-events:none;font-size:var(--mantine-font-size-sm);white-space:nowrap;border-radius:var(--tooltip-radius)}:where([data-mantine-color-scheme=light]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-9));color:var(--tooltip-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-2));color:var(--tooltip-color, var(--mantine-color-black))}.m_1b3c8819:where([data-multiline]){white-space:normal}.m_1b3c8819:where([data-fixed]){position:fixed}.m_f898399f{background-color:inherit;border:0;z-index:1}.m_b32e4812{position:relative;width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);--rp-transition-duration: 0ms}.m_d43b5134{width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);transform:rotate(-90deg)}.m_b1ca1fbf{stroke:var(--curve-color, var(--rp-curve-root-color));transition:stroke-dashoffset var(--rp-transition-duration) ease,stroke-dasharray var(--rp-transition-duration) ease,stroke var(--rp-transition-duration)}[data-mantine-color-scheme=light] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-dark-4)}.m_b23f9dc4{position:absolute;top:50%;transform:translateY(-50%);inset-inline:var(--rp-label-offset)}.m_cf365364{--sc-padding-xs: calc(.125rem * var(--mantine-scale)) calc(.375rem * var(--mantine-scale));--sc-padding-sm: calc(.1875rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--sc-padding-md: calc(.25rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--sc-padding-lg: calc(.4375rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--sc-padding-xl: calc(.625rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--sc-transition-duration: .2s;--sc-padding: var(--sc-padding-sm);--sc-transition-timing-function: ease;--sc-font-size: var(--mantine-font-size-sm);position:relative;display:inline-flex;flex-direction:row;width:auto;border-radius:var(--sc-radius, var(--mantine-radius-default));overflow:hidden;padding:calc(.25rem * var(--mantine-scale))}.m_cf365364:where([data-full-width]){display:flex}.m_cf365364:where([data-orientation=vertical]){display:flex;flex-direction:column;width:max-content}.m_cf365364:where([data-orientation=vertical]):where([data-full-width]){width:auto}:where([data-mantine-color-scheme=light]) .m_cf365364{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_cf365364{background-color:var(--mantine-color-dark-8)}.m_9e182ccd{position:absolute;display:block;z-index:1;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_9e182ccd{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_9e182ccd{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}.m_1738fcb2{-webkit-tap-highlight-color:transparent;font-weight:500;display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;border-radius:var(--sc-radius, var(--mantine-radius-default));font-size:var(--sc-font-size);padding:var(--sc-padding);transition:color var(--sc-transition-duration) var(--sc-transition-timing-function);cursor:pointer;outline:var(--segmented-control-outline, none)}:where([data-mantine-color-scheme=light]) .m_1738fcb2{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2{color:var(--mantine-color-dark-1)}.m_1738fcb2:where([data-read-only]){cursor:default}fieldset:disabled .m_1738fcb2,.m_1738fcb2:where([data-disabled]){cursor:not-allowed;color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-black))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-white))}.m_cf365364:where([data-initialized]) .m_1738fcb2:where([data-active]):before{display:none}.m_1738fcb2:where([data-active]):before{content:"";inset:0;z-index:0;position:absolute;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]):before{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]):before{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-white)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-white)}}@media(hover:hover){fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-disabled-color)!important}}@media(hover:none){fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-disabled-color)!important}}.m_1714d588{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0}.m_1714d588[data-focus-ring=auto]:focus:focus-visible+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_1714d588[data-focus-ring=always]:focus+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_69686b9b{position:relative;flex:1;z-index:2;transition:border-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_cf365364[data-with-items-borders] :where(.m_69686b9b):before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:0;background-color:var(--separator-color);width:calc(.0625rem * var(--mantine-scale));transition:background-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_69686b9b[data-orientation=vertical]:before{top:0;inset-inline:0;bottom:auto;height:calc(.0625rem * var(--mantine-scale));width:auto}:where([data-mantine-color-scheme=light]) .m_69686b9b{--separator-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_69686b9b{--separator-color: var(--mantine-color-dark-4)}.m_69686b9b:first-of-type:before{--separator-color: transparent}[data-mantine-color-scheme] .m_69686b9b[data-active]:before,[data-mantine-color-scheme] .m_69686b9b[data-active]+.m_69686b9b:before{--separator-color: transparent}.m_78882f40{position:relative;z-index:2}.m_fa528724{--scp-filled-segment-color: var(--mantine-primary-color-filled);--scp-transition-duration: 0ms;--scp-thickness: calc(.625rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-dark-4)}.m_fa528724{position:relative;width:fit-content}.m_62e9e7e2{display:block;transform:var(--scp-rotation);overflow:hidden}.m_c573fb6f{transition:stroke-dashoffset var(--scp-transition-duration) ease,stroke-dasharray var(--scp-transition-duration) ease,stroke var(--scp-transition-duration)}.m_4fa340f2{position:absolute;margin:0;padding:0;inset-inline:0;text-align:center;z-index:1}.m_4fa340f2:where([data-position=bottom]){bottom:0;padding-inline:calc(var(--scp-thickness) * 2)}.m_4fa340f2:where([data-position=bottom]):where([data-orientation=down]){bottom:auto;top:0}.m_4fa340f2:where([data-position=center]){top:50%;padding-inline:calc(var(--scp-thickness) * 3)}.m_925c2d2c{container:simple-grid / inline-size}.m_2415a157{display:grid;grid-template-columns:repeat(var(--sg-cols),minmax(0,1fr));gap:var(--sg-spacing-y) var(--sg-spacing-x)}@keyframes m_299c329c{0%,to{opacity:.4}50%{opacity:1}}.m_18320242{height:var(--skeleton-height, auto);width:var(--skeleton-width, 100%);border-radius:var(--skeleton-radius, var(--mantine-radius-default));position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}.m_18320242:where([data-animate]):after{animation:m_299c329c 1.5s linear infinite}.m_18320242:where([data-visible]){overflow:hidden}.m_18320242:where([data-visible]):before{position:absolute;content:"";inset:0;z-index:10;background-color:var(--mantine-color-body)}.m_18320242:where([data-visible]):after{position:absolute;content:"";inset:0;z-index:11}:where([data-mantine-color-scheme=light]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-dark-4)}.m_dd36362e{--slider-size-xs: calc(.25rem * var(--mantine-scale));--slider-size-sm: calc(.375rem * var(--mantine-scale));--slider-size-md: calc(.5rem * var(--mantine-scale));--slider-size-lg: calc(.625rem * var(--mantine-scale));--slider-size-xl: calc(.75rem * var(--mantine-scale));--slider-size: var(--slider-size-md);--slider-radius: calc(62.5rem * var(--mantine-scale));--slider-color: var(--mantine-primary-color-filled);--slider-track-disabled-bg: var(--mantine-color-disabled);-webkit-tap-highlight-color:transparent;outline:none;height:calc(var(--slider-size) * 2);padding-inline:var(--slider-size);display:flex;flex-direction:column;align-items:center;touch-action:none;position:relative}[data-mantine-color-scheme=light] .m_dd36362e{--slider-track-bg: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_dd36362e{--slider-track-bg: var(--mantine-color-dark-4)}.m_c9357328{position:absolute;top:calc(-2.25rem * var(--mantine-scale));font-size:var(--mantine-font-size-xs);color:var(--mantine-color-white);padding:calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;touch-action:none}:where([data-mantine-color-scheme=light]) .m_c9357328{background-color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_c9357328{background-color:var(--mantine-color-dark-4)}.m_c9a9a60a{position:absolute;display:flex;height:var(--slider-thumb-size);width:var(--slider-thumb-size);border:calc(.25rem * var(--mantine-scale)) solid;transform:translate(-50%,-50%);top:50%;cursor:pointer;border-radius:var(--slider-radius);align-items:center;justify-content:center;transition:box-shadow .1s ease,transform .1s ease;z-index:3;-webkit-user-select:none;user-select:none;touch-action:none;outline-offset:calc(.125rem * var(--mantine-scale));left:var(--slider-thumb-offset)}:where([dir=rtl]) .m_c9a9a60a{left:auto;right:calc(var(--slider-thumb-offset) - var(--slider-thumb-size))}fieldset:disabled .m_c9a9a60a,.m_c9a9a60a:where([data-disabled]){display:none}.m_c9a9a60a:where([data-dragging]){transform:translate(-50%,-50%) scale(1.05);box-shadow:var(--mantine-shadow-sm)}:where([data-mantine-color-scheme=light]) .m_c9a9a60a{color:var(--slider-color);border-color:var(--slider-color);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_c9a9a60a{color:var(--mantine-color-white);border-color:var(--mantine-color-white);background-color:var(--slider-color)}.m_a8645c2{display:flex;align-items:center;width:100%;height:calc(var(--slider-size) * 2);cursor:pointer}fieldset:disabled .m_a8645c2,.m_a8645c2:where([data-disabled]){cursor:not-allowed}.m_c9ade57f{position:relative;width:100%;height:var(--slider-size)}.m_c9ade57f:where([data-inverted]:not([data-disabled])){--track-bg: var(--slider-color)}fieldset:disabled .m_c9ade57f:where([data-inverted]),.m_c9ade57f:where([data-inverted][data-disabled]){--track-bg: var(--slider-track-disabled-bg)}.m_c9ade57f:before{content:"";position:absolute;top:0;bottom:0;border-radius:var(--slider-radius);inset-inline:calc(var(--slider-size) * -1);background-color:var(--track-bg, var(--slider-track-bg));z-index:0}.m_38aeed47{position:absolute;z-index:1;top:0;bottom:0;background-color:var(--slider-color);border-radius:var(--slider-radius);width:var(--slider-bar-width);inset-inline-start:var(--slider-bar-offset)}.m_38aeed47:where([data-inverted]){background-color:var(--slider-track-bg)}fieldset:disabled .m_38aeed47:where(:not([data-inverted])),.m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-disabled-color)}.m_b7b0423a{position:absolute;inset-inline-start:calc(var(--mark-offset) - var(--slider-size) / 2);top:0;z-index:2;height:0;pointer-events:none}.m_dd33bc19{border:calc(.125rem * var(--mantine-scale)) solid;height:var(--slider-size);width:var(--slider-size);border-radius:calc(62.5rem * var(--mantine-scale));background-color:var(--mantine-color-white);pointer-events:none}:where([data-mantine-color-scheme=light]) .m_dd33bc19{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19{border-color:var(--mantine-color-dark-4)}.m_dd33bc19:where([data-filled]){border-color:var(--slider-color)}.m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-disabled-border)}.m_68c77a5b{transform:translate(calc(-50% + var(--slider-size) / 2),calc(var(--mantine-spacing-xs) / 2));font-size:var(--mantine-font-size-sm);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}:where([data-mantine-color-scheme=light]) .m_68c77a5b{color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_68c77a5b{color:var(--mantine-color-dark-2)}.m_559cce2d{position:relative}.m_559cce2d:where([data-has-spoiler]){margin-bottom:calc(1.5rem * var(--mantine-scale))}.m_b912df4e{display:flex;flex-direction:column;overflow:hidden;transition:max-height var(--spoiler-transition-duration, .2s) ease}.m_b9131032{position:absolute;inset-inline-start:0;top:100%;height:calc(1.5rem * var(--mantine-scale))}.m_6d731127{display:flex;flex-direction:column;align-items:var(--stack-align, stretch);justify-content:var(--stack-justify, flex-start);gap:var(--stack-gap, var(--mantine-spacing-md))}.m_cbb4ea7e{--stepper-icon-size-xs: calc(2.125rem * var(--mantine-scale));--stepper-icon-size-sm: calc(2.25rem * var(--mantine-scale));--stepper-icon-size-md: calc(2.625rem * var(--mantine-scale));--stepper-icon-size-lg: calc(3rem * var(--mantine-scale));--stepper-icon-size-xl: calc(3.25rem * var(--mantine-scale));--stepper-icon-size: var(--stepper-icon-size-md);--stepper-color: var(--mantine-primary-color-filled);--stepper-content-padding: var(--mantine-spacing-md);--stepper-spacing: var(--mantine-spacing-md);--stepper-radius: calc(62.5rem * var(--mantine-scale));--stepper-fz: var(--mantine-font-size-md);--stepper-outline-thickness: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-dark-5)}.m_aaf89d0b{display:flex;flex-wrap:nowrap;align-items:center}.m_aaf89d0b:where([data-wrap]){flex-wrap:wrap;gap:var(--mantine-spacing-md) 0}.m_aaf89d0b:where([data-orientation=vertical]){flex-direction:column}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=left]){align-items:flex-start}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=right]){align-items:flex-end}.m_aaf89d0b:where([data-orientation=horizontal]){flex-direction:row}.m_2a371ac9{transition:background-color .15s ease;flex:1;height:var(--stepper-outline-thickness);margin-inline:var(--mantine-spacing-md);background-color:var(--stepper-outline-color)}.m_2a371ac9:where([data-active]){background-color:var(--stepper-color)}.m_78da155d{padding-top:var(--stepper-content-padding)}.m_cbb57068{--step-color: var(--stepper-color);display:flex;cursor:default}.m_cbb57068:where([data-allow-click]){cursor:pointer}.m_cbb57068:where([data-icon-position=left]){flex-direction:row}.m_cbb57068:where([data-icon-position=right]){flex-direction:row-reverse}.m_f56b1e2c{align-items:center}.m_833edb7e{--separator-spacing: calc(var(--mantine-spacing-xs) / 2);justify-content:flex-start;min-height:calc(var(--stepper-icon-size) + var(--mantine-spacing-xl) + var(--separator-spacing));margin-top:var(--separator-spacing);overflow:hidden}.m_833edb7e:where(:first-of-type){margin-top:0}.m_833edb7e:where(:last-of-type){min-height:auto}.m_833edb7e:where(:last-of-type) .m_6496b3f3{display:none}.m_818e70b{position:relative}.m_6496b3f3{top:calc(var(--stepper-icon-size) + var(--separator-spacing));inset-inline-start:calc(var(--stepper-icon-size) / 2);height:100vh;position:absolute;border-inline-start:var(--stepper-outline-thickness) solid var(--stepper-outline-color)}.m_6496b3f3:where([data-active]){border-color:var(--stepper-color)}.m_1959ad01{height:var(--stepper-icon-size);width:var(--stepper-icon-size);min-height:var(--stepper-icon-size);min-width:var(--stepper-icon-size);border-radius:var(--stepper-radius);font-size:var(--stepper-fz);display:flex;align-items:center;justify-content:center;position:relative;font-weight:700;transition:background-color .15s ease,border-color .15s ease;border:var(--stepper-outline-thickness) solid var(--stepper-outline-color);background-color:var(--stepper-outline-color)}:where([data-mantine-color-scheme=light]) .m_1959ad01{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1959ad01{color:var(--mantine-color-dark-1)}.m_1959ad01:where([data-progress]){border-color:var(--step-color)}.m_1959ad01:where([data-completed]){color:var(--stepper-icon-color, var(--mantine-color-white));background-color:var(--step-color);border-color:var(--step-color)}.m_a79331dc{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--stepper-icon-color, var(--mantine-color-white))}.m_1956aa2a{display:flex;flex-direction:column}.m_1956aa2a:where([data-icon-position=left]){margin-inline-start:var(--mantine-spacing-sm)}.m_1956aa2a:where([data-icon-position=right]){text-align:right;margin-inline-end:var(--mantine-spacing-sm)}:where([dir=rtl]) .m_1956aa2a:where([data-icon-position=right]){text-align:left}.m_12051f6c{font-weight:500;font-size:var(--stepper-fz);line-height:1}.m_164eea74{margin-top:calc(var(--stepper-spacing) / 3);margin-bottom:calc(var(--stepper-spacing) / 3);font-size:calc(var(--stepper-fz) - calc(.125rem * var(--mantine-scale)));line-height:1;color:var(--mantine-color-dimmed)}.m_5f93f3bb{--switch-height-xs: calc(1rem * var(--mantine-scale));--switch-height-sm: calc(1.25rem * var(--mantine-scale));--switch-height-md: calc(1.5rem * var(--mantine-scale));--switch-height-lg: calc(1.875rem * var(--mantine-scale));--switch-height-xl: calc(2.25rem * var(--mantine-scale));--switch-width-xs: calc(2rem * var(--mantine-scale));--switch-width-sm: calc(2.375rem * var(--mantine-scale));--switch-width-md: calc(2.875rem * var(--mantine-scale));--switch-width-lg: calc(3.5rem * var(--mantine-scale));--switch-width-xl: calc(4.5rem * var(--mantine-scale));--switch-thumb-size-xs: calc(.75rem * var(--mantine-scale));--switch-thumb-size-sm: calc(.875rem * var(--mantine-scale));--switch-thumb-size-md: calc(1.125rem * var(--mantine-scale));--switch-thumb-size-lg: calc(1.375rem * var(--mantine-scale));--switch-thumb-size-xl: calc(1.75rem * var(--mantine-scale));--switch-label-font-size-xs: calc(.3125rem * var(--mantine-scale));--switch-label-font-size-sm: calc(.375rem * var(--mantine-scale));--switch-label-font-size-md: calc(.4375rem * var(--mantine-scale));--switch-label-font-size-lg: calc(.5625rem * var(--mantine-scale));--switch-label-font-size-xl: calc(.6875rem * var(--mantine-scale));--switch-track-label-padding-xs: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-sm: calc(.15625rem * var(--mantine-scale));--switch-track-label-padding-md: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-lg: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-xl: calc(.21875rem * var(--mantine-scale));--switch-height: var(--switch-height-sm);--switch-width: var(--switch-width-sm);--switch-thumb-size: var(--switch-thumb-size-sm);--switch-label-font-size: var(--switch-label-font-size-sm);--switch-track-label-padding: var(--switch-track-label-padding-sm);--switch-radius: calc(62.5rem * var(--mantine-scale));--switch-color: var(--mantine-primary-color-filled);--switch-disabled-color: var(--mantine-color-disabled);position:relative}.m_926b4011{height:0;width:0;opacity:0;margin:0;padding:0;position:absolute;overflow:hidden;white-space:nowrap}.m_9307d992{-webkit-tap-highlight-color:transparent;cursor:var(--switch-cursor, var(--mantine-cursor-type));overflow:hidden;position:relative;border-radius:var(--switch-radius);background-color:var(--switch-bg);height:var(--switch-height);min-width:var(--switch-width);margin:0;transition:background-color .15s ease,border-color .15s ease;appearance:none;display:flex;align-items:center;font-size:var(--switch-label-font-size);font-weight:600;order:var(--switch-order, 1);-webkit-user-select:none;user-select:none;z-index:0;line-height:0;color:var(--switch-text-color)}.m_9307d992:where([data-without-labels]){width:var(--switch-width)}.m_926b4011:focus-visible+.m_9307d992{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_926b4011:checked+.m_9307d992{--switch-bg: var(--switch-color);--switch-text-color: var(--mantine-color-white)}.m_926b4011:disabled+.m_9307d992,.m_926b4011[data-disabled]+.m_9307d992{--switch-bg: var(--switch-disabled-color);--switch-cursor: not-allowed}[data-mantine-color-scheme=light] .m_9307d992{--switch-bg: var(--mantine-color-gray-3);--switch-text-color: var(--mantine-color-gray-6)}[data-mantine-color-scheme=dark] .m_9307d992{--switch-bg: var(--mantine-color-dark-5);--switch-text-color: var(--mantine-color-dark-1)}.m_9307d992[data-label-position=left]{--switch-order: 2}.m_93039a1d{position:absolute;z-index:1;border-radius:var(--switch-radius);display:flex;background-color:var(--switch-thumb-bg, var(--mantine-color-white));height:var(--switch-thumb-size);width:var(--switch-thumb-size);inset-inline-start:var(--switch-thumb-start, var(--switch-track-label-padding));transition:inset-inline-start .15s ease}.m_93039a1d:where([data-with-thumb-indicator]):before{content:"";width:40%;height:40%;background-color:var(--switch-bg);position:absolute;border-radius:var(--switch-radius);top:50%;left:50%;transform:translate(-50%,-50%)}.m_93039a1d>*{margin:auto}.m_926b4011:checked+*>.m_93039a1d{--switch-thumb-start: calc(100% - var(--switch-thumb-size) - var(--switch-track-label-padding))}.m_926b4011:disabled+*>.m_93039a1d,.m_926b4011[data-disabled]+*>.m_93039a1d{--switch-thumb-bg: var(--switch-thumb-bg-disabled)}[data-mantine-color-scheme=light] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-dark-3)}.m_8277e082{height:100%;display:grid;place-content:center;min-width:calc(var(--switch-width) - var(--switch-thumb-size));padding-inline:var(--switch-track-label-padding);margin-inline-start:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));transition:margin .15s ease}.m_926b4011:checked+*>.m_8277e082{margin-inline-end:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));margin-inline-start:0}.m_b23fa0ef{width:100%;border-collapse:collapse;border-spacing:0;line-height:var(--mantine-line-height);font-size:var(--mantine-font-size-sm);table-layout:var(--table-layout, auto);caption-side:var(--table-caption-side, bottom);border:none}:where([data-mantine-color-scheme=light]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-gray-1);--table-striped-color: var(--mantine-color-gray-0);--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-dark-5);--table-striped-color: var(--mantine-color-dark-6);--table-border-color: var(--mantine-color-dark-4)}.m_b23fa0ef:where([data-with-table-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b23fa0ef:where([data-tabular-nums]){font-variant-numeric:tabular-nums}.m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){font-weight:500}:where([data-mantine-color-scheme=light]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-dark-6)}.m_4e7aa4f3{text-align:left}:where([dir=rtl]) .m_4e7aa4f3{text-align:right}.m_4e7aa4fd{border-bottom:none;background-color:transparent}@media(hover:hover){.m_4e7aa4fd:hover:where([data-hover]){background-color:var(--tr-hover-bg)}}@media(hover:none){.m_4e7aa4fd:active:where([data-hover]){background-color:var(--tr-hover-bg)}}.m_4e7aa4fd:where([data-with-row-border]){border-bottom:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef,.m_4e7aa4f3{padding:var(--table-vertical-spacing) var(--table-horizontal-spacing, var(--mantine-spacing-xs))}.m_4e7aa4ef:where([data-with-column-border]:not(:last-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:last-child)){border-inline-end:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b2404537>:where(tr):where([data-with-row-border]:last-of-type){border-bottom:none}.m_b2404537>:where(tr):where([data-striped=odd]:nth-of-type(odd)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr):where([data-striped=even]:nth-of-type(2n)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr)[data-hover]{--tr-hover-bg: var(--table-highlight-on-hover-color, var(--table-hover-color))}.m_b242d975{top:var(--table-sticky-header-offset, 0);z-index:3}.m_b242d975:where([data-sticky]){position:sticky}.m_b242d975:where([data-sticky]) :where(.m_4e7aa4f3){position:sticky;top:var(--table-sticky-header-offset, 0);background-color:var(--mantine-color-body)}:where([data-with-table-border]) .m_b242d975[data-sticky] .m_4e7aa4f3{top:initial}.m_9e5a3ac7{color:var(--mantine-color-dimmed)}.m_9e5a3ac7:where([data-side=top]){margin-bottom:var(--mantine-spacing-xs)}.m_9e5a3ac7:where([data-side=bottom]){margin-top:var(--mantine-spacing-xs)}.m_a100c15{overflow-x:var(--table-overflow)}.m_62259741{min-width:var(--table-min-width);max-height:var(--table-max-height)}.m_bcaa9990{display:flex;flex-direction:column;--toc-depth-offset: .8em}.m_375a65ef{display:block;padding:.3em .8em;font-size:var(--toc-size, var(--mantine-font-size-md));border-radius:var(--toc-radius, var(--mantine-radius-default));padding-left:max(calc(var(--depth-offset) * var(--toc-depth-offset)),.8em)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}.m_375a65ef:where([data-active]){background-color:var(--toc-bg);color:var(--toc-color)}[data-mantine-color-scheme=light] .m_89d60db1{--tab-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89d60db1{--tab-border-color: var(--mantine-color-dark-4)}.m_89d60db1{display:var(--tabs-display);flex-direction:var(--tabs-flex-direction);--tabs-list-direction: row;--tabs-panel-grow: unset;--tabs-display: block;--tabs-flex-direction: row;--tabs-list-border-width: 0;--tabs-list-border-size: 0 0 var(--tabs-list-border-width) 0;--tabs-list-gap: unset;--tabs-list-line-bottom: 0;--tabs-list-line-top: unset;--tabs-list-line-start: 0;--tabs-list-line-end: 0;--tab-radius: var(--tabs-radius) var(--tabs-radius) 0 0;--tab-border-width: 0 0 var(--tabs-list-border-width) 0}.m_89d60db1[data-inverted]{--tabs-list-line-bottom: unset;--tabs-list-line-top: 0;--tab-radius: 0 0 var(--tabs-radius) var(--tabs-radius);--tab-border-width: var(--tabs-list-border-width) 0 0 0}.m_89d60db1[data-inverted] .m_576c9d4:before{top:0;bottom:unset}.m_89d60db1[data-orientation=vertical]{--tabs-list-line-start: unset;--tabs-list-line-end: 0;--tabs-list-line-top: 0;--tabs-list-line-bottom: 0;--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);--tabs-list-direction: column;--tabs-panel-grow: 1;--tabs-display: flex}[dir=rtl] .m_89d60db1[data-orientation=vertical]{--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}.m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-flex-direction: row-reverse;--tabs-list-line-start: 0;--tabs-list-line-end: unset;--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}[dir=rtl] .m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius)}.m_89d60db1[data-variant=default]{--tabs-list-border-width: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d60db1[data-variant=outline]{--tabs-list-border-width: calc(.0625rem * var(--mantine-scale))}.m_89d60db1[data-variant=pills]{--tabs-list-gap: calc(var(--mantine-spacing-sm) / 2)}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d33d6d{display:flex;flex-wrap:wrap;justify-content:var(--tabs-justify, flex-start);flex-direction:var(--tabs-list-direction);gap:var(--tabs-list-gap)}.m_89d33d6d:where([data-grow]) .m_4ec4dce6{flex:1}.m_b0c91715{flex-grow:var(--tabs-panel-grow)}.m_4ec4dce6{position:relative;padding:var(--mantine-spacing-xs) var(--mantine-spacing-md);font-size:var(--mantine-font-size-sm);white-space:nowrap;z-index:0;display:flex;align-items:center;line-height:1;-webkit-user-select:none;user-select:none}.m_4ec4dce6:where(:disabled,[data-disabled]){opacity:.5;cursor:not-allowed}.m_4ec4dce6:focus{z-index:1}.m_fc420b1f{display:flex;align-items:center;justify-content:center}.m_fc420b1f:where([data-position=left]:not(:only-child)){margin-inline-end:var(--mantine-spacing-xs)}.m_fc420b1f:where([data-position=right]:not(:only-child)){margin-inline-start:var(--mantine-spacing-xs)}.m_42bbd1ae{flex:1;text-align:center}.m_576c9d4{position:relative}.m_576c9d4:before{content:"";position:absolute;border:1px solid var(--tab-border-color);bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_539e827b{border-radius:var(--tab-radius);border-width:var(--tab-border-width);border-style:solid;border-color:transparent;background-color:transparent}.m_539e827b:where([data-active]){border-color:var(--tabs-color)}@media(hover:hover){.m_539e827b:hover{background-color:var(--tab-hover-color)}.m_539e827b:hover:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:none){.m_539e827b:active{background-color:var(--tab-hover-color)}.m_539e827b:active:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:hover){.m_539e827b:disabled:hover,.m_539e827b[data-disabled]:hover{background-color:transparent}}@media(hover:none){.m_539e827b:disabled:active,.m_539e827b[data-disabled]:active{background-color:transparent}}.m_6772fbd5{position:relative}.m_6772fbd5:before{content:"";position:absolute;border-color:var(--tab-border-color);border-width:var(--tabs-list-border-size);border-style:solid;bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_b59ab47c{border-top:calc(.0625rem * var(--mantine-scale)) solid transparent;border-bottom:calc(.0625rem * var(--mantine-scale)) solid transparent;border-right:calc(.0625rem * var(--mantine-scale)) solid transparent;border-left:calc(.0625rem * var(--mantine-scale)) solid transparent;border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-radius:var(--tab-radius);position:relative;--tab-border-bottom-color: transparent;--tab-border-top-color: transparent;--tab-border-inline-end-color: transparent;--tab-border-inline-start-color: transparent}.m_b59ab47c:where([data-active]):before{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-before-bottom, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-before-left, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-before-right, auto);top:var(--tab-before-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]):after{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-after-bottom, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-after-right, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-after-left, auto);top:var(--tab-after-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]){border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-inline-start-color:var(--tab-border-inline-start-color);border-inline-end-color:var(--tab-border-inline-end-color);--tab-border-top-color: var(--tab-border-color);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--mantine-color-body)}.m_b59ab47c:where([data-active])[data-inverted]{--tab-border-bottom-color: var(--tab-border-color);--tab-border-top-color: var(--mantine-color-body);--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-bottom: auto;--tab-after-top: calc(-.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-border-inline-end-color: var(--mantine-color-body);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-before-left: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto;--tab-after-right: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-before-right: auto;--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-after-left: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-border-inline-start-color: var(--mantine-color-body);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-before-right: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto;--tab-after-left: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-before-left: auto;--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-after-right: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto}.m_c3381914{border-radius:var(--tabs-radius);background-color:var(--tab-bg);color:var(--tab-color);--tab-bg: transparent;--tab-color: inherit}@media(hover:hover){.m_c3381914:not([data-disabled]):hover{--tab-bg: var(--tab-hover-color)}}@media(hover:none){.m_c3381914:not([data-disabled]):active{--tab-bg: var(--tab-hover-color)}}.m_c3381914[data-active][data-active]{--tab-bg: var(--tabs-color);--tab-color: var(--tabs-text-color, var(--mantine-color-white))}@media(hover:hover){.m_c3381914[data-active][data-active]:hover{--tab-bg: var(--tabs-color)}}@media(hover:none){.m_c3381914[data-active][data-active]:active{--tab-bg: var(--tabs-color)}}.m_7341320d{--ti-size-xs: calc(1.125rem * var(--mantine-scale));--ti-size-sm: calc(1.375rem * var(--mantine-scale));--ti-size-md: calc(1.75rem * var(--mantine-scale));--ti-size-lg: calc(2.125rem * var(--mantine-scale));--ti-size-xl: calc(2.75rem * var(--mantine-scale));--ti-size: var(--ti-size-md);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;-webkit-user-select:none;user-select:none;width:var(--ti-size);height:var(--ti-size);min-width:var(--ti-size);min-height:var(--ti-size);border-radius:var(--ti-radius, var(--mantine-radius-default));background:var(--ti-bg, var(--mantine-primary-color-filled));color:var(--ti-color, var(--mantine-color-white));border:var(--ti-bd, 1px solid transparent)}.m_43657ece{--offset: calc(var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2);--tl-bullet-size: calc(1.25rem * var(--mantine-scale));--tl-line-width: calc(.25rem * var(--mantine-scale));--tl-radius: calc(62.5rem * var(--mantine-scale));--tl-color: var(--mantine-primary-color-filled)}.m_43657ece:where([data-align=left]){padding-inline-start:var(--offset)}.m_43657ece:where([data-align=right]){padding-inline-end:var(--offset)}.m_2ebe8099{font-weight:500;line-height:1;margin-bottom:calc(var(--mantine-spacing-xs) / 2)}.m_436178ff{--item-border: var(--tl-line-width) var(--tli-border-style, solid) var(--item-border-color);position:relative;color:var(--mantine-color-text)}.m_436178ff:before{content:"";pointer-events:none;position:absolute;top:0;left:var(--timeline-line-left, 0);right:var(--timeline-line-right, 0);bottom:calc(var(--mantine-spacing-xl) * -1);border-inline-start:var(--item-border);display:var(--timeline-line-display, none)}.m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}[dir=rtl] .m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}.m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}[dir=rtl] .m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}.m_43657ece:where([data-align=left]) .m_436178ff{padding-inline-start:var(--offset);text-align:left}.m_43657ece:where([data-align=right]) .m_436178ff{padding-inline-end:var(--offset);text-align:right}:where([data-mantine-color-scheme=light]) .m_436178ff{--item-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_436178ff{--item-border-color: var(--mantine-color-dark-4)}.m_436178ff:where([data-line-active]):before{border-color:var(--tli-color, var(--tl-color))}.m_436178ff:where(:not(:last-of-type)){--timeline-line-display: block}.m_436178ff:where(:not(:first-of-type)){margin-top:var(--mantine-spacing-xl)}.m_8affcee1{width:var(--tl-bullet-size);height:var(--tl-bullet-size);border-radius:var(--tli-radius, var(--tl-radius));border:var(--tl-line-width) solid;background-color:var(--mantine-color-body);position:absolute;top:0;display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_8affcee1{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1{border-color:var(--mantine-color-dark-4)}.m_43657ece:where([data-align=left]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}.m_43657ece:where([data-align=right]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}.m_8affcee1:where([data-with-child]){border-width:var(--tl-line-width)}:where([data-mantine-color-scheme=light]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-dark-4)}.m_8affcee1:where([data-active]){border-color:var(--tli-color, var(--tl-color));background-color:var(--mantine-color-white);color:var(--tl-icon-color, var(--mantine-color-white))}.m_8affcee1:where([data-active]):where([data-with-child]){background-color:var(--tli-color, var(--tl-color));color:var(--tl-icon-color, var(--mantine-color-white))}.m_43657ece:where([data-align=left]) .m_540e8f41{padding-inline-start:var(--offset);text-align:left}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_540e8f41{text-align:right}.m_43657ece:where([data-align=right]) .m_540e8f41{padding-inline-end:var(--offset);text-align:right}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_540e8f41{text-align:left}.m_8a5d1357{margin:0;font-weight:var(--title-fw);font-size:var(--title-fz);line-height:var(--title-lh);font-family:var(--mantine-font-family-headings);text-wrap:var(--title-text-wrap, var(--mantine-heading-text-wrap))}.m_8a5d1357:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--title-line-clamp);-webkit-box-orient:vertical}.m_f698e191{--level-offset: var(--mantine-spacing-lg);margin:0;padding:0;-webkit-user-select:none;user-select:none}.m_75f3ecf{margin:0;padding:0}.m_f6970eb1{cursor:pointer;list-style:none;margin:0;padding:0;outline:0}.m_f6970eb1:focus-visible>.m_dc283425{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_dc283425{padding-inline-start:var(--label-offset)}:where([data-mantine-color-scheme=light]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-dark-5)}.m_d6493fad :first-child{margin-top:0}.m_d6493fad :last-child{margin-bottom:0}.m_d6493fad :where(h1,h2,h3,h4,h5,h6){margin-bottom:var(--mantine-spacing-xs);text-wrap:var(--mantine-heading-text-wrap);font-family:var(--mantine-font-family-headings)}.m_d6493fad :where(h1){margin-top:calc(1.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h1-font-size);line-height:var(--mantine-h1-line-height);font-weight:var(--mantine-h1-font-weight)}.m_d6493fad :where(h2){margin-top:var(--mantine-spacing-xl);font-size:var(--mantine-h2-font-size);line-height:var(--mantine-h2-line-height);font-weight:var(--mantine-h2-font-weight)}.m_d6493fad :where(h3){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h3-font-size);line-height:var(--mantine-h3-line-height);font-weight:var(--mantine-h3-font-weight)}.m_d6493fad :where(h4){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h4-font-size);line-height:var(--mantine-h4-line-height);font-weight:var(--mantine-h4-font-weight)}.m_d6493fad :where(h5){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h5-font-size);line-height:var(--mantine-h5-line-height);font-weight:var(--mantine-h5-font-weight)}.m_d6493fad :where(h6){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h6-font-size);line-height:var(--mantine-h6-line-height);font-weight:var(--mantine-h6-font-weight)}.m_d6493fad :where(img){max-width:100%;margin-bottom:var(--mantine-spacing-xs)}.m_d6493fad :where(p){margin-top:0;margin-bottom:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(mark){background-color:var(--mantine-color-yellow-2);color:inherit}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.m_d6493fad :where(a){color:var(--mantine-color-anchor);text-decoration:none}@media(hover:hover){.m_d6493fad :where(a):hover{text-decoration:underline}}@media(hover:none){.m_d6493fad :where(a):active{text-decoration:underline}}.m_d6493fad :where(hr){margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);border:0;border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(hr){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(hr){border-color:var(--mantine-color-dark-3)}.m_d6493fad :where(pre){padding:var(--mantine-spacing-xs);line-height:var(--mantine-line-height);margin:0;margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);overflow-x:auto;font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs);border-radius:var(--mantine-radius-sm)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(pre){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(pre){background-color:var(--mantine-color-dark-8)}.m_d6493fad :where(pre) :where(code){background-color:transparent;padding:0;border-radius:0;color:inherit;border:0}.m_d6493fad :where(kbd){--kbd-fz: calc(.75rem * var(--mantine-scale));--kbd-padding: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;padding:var(--kbd-padding);font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(kbd){border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(kbd){border-color:var(--mantine-color-dark-3);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-5)}.m_d6493fad :where(code){line-height:var(--mantine-line-height);padding:calc(.0625rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));border-radius:var(--mantine-radius-sm);font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(code){background-color:var(--mantine-color-gray-0);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(code){background-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_d6493fad :where(ul,ol):not([data-type=taskList]){margin-bottom:var(--mantine-spacing-md);padding-inline-start:var(--mantine-spacing-xl);list-style-position:outside}.m_d6493fad :where(table){width:100%;border-collapse:collapse;caption-side:bottom;margin-bottom:var(--mantine-spacing-md)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(table){--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(table){--table-border-color: var(--mantine-color-dark-4)}.m_d6493fad :where(table) :where(caption){margin-top:var(--mantine-spacing-xs);font-size:var(--mantine-font-size-sm);color:var(--mantine-color-dimmed)}.m_d6493fad :where(table) :where(th){text-align:left;font-weight:700;font-size:var(--mantine-font-size-sm);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm)}.m_d6493fad :where(table) :where(thead th){border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d6493fad :where(table) :where(tfoot th){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d6493fad :where(table) :where(td){padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color);font-size:var(--mantine-font-size-sm)}.m_d6493fad :where(table) :where(tr:last-of-type td){border-bottom:0}.m_d6493fad :where(blockquote){font-size:var(--mantine-font-size-lg);line-height:var(--mantine-line-height);margin:var(--mantine-spacing-md) 0;border-radius:var(--mantine-radius-sm);padding:var(--mantine-spacing-md) var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(blockquote){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(blockquote){background-color:var(--mantine-color-dark-8)}.m_b37d9ac7{width:calc(100% - var(--mantine-spacing-md) * 2);position:fixed;z-index:var(--notifications-z-index);max-width:var(--notifications-container-width)}.m_b37d9ac7:where([data-position=top-center]){top:var(--mantine-spacing-md);left:50%;transform:translate(-50%)}.m_b37d9ac7:where([data-position=top-left]){top:var(--mantine-spacing-md);left:var(--mantine-spacing-md)}.m_b37d9ac7:where([data-position=top-right]){top:var(--mantine-spacing-md);right:var(--mantine-spacing-md)}.m_b37d9ac7:where([data-position=bottom-center]){bottom:var(--mantine-spacing-md);left:50%;transform:translate(-50%)}.m_b37d9ac7:where([data-position=bottom-left]){bottom:var(--mantine-spacing-md);left:var(--mantine-spacing-md)}.m_b37d9ac7:where([data-position=bottom-right]){bottom:var(--mantine-spacing-md);right:var(--mantine-spacing-md)}.m_5ed0edd0+.m_5ed0edd0{margin-top:var(--mantine-spacing-md)} diff --git a/plugins/multiview/dash/static/assets/index-CFcetVdh.js b/plugins/multiview/dash/static/assets/index-CFcetVdh.js new file mode 100644 index 0000000..0dbc4f4 --- /dev/null +++ b/plugins/multiview/dash/static/assets/index-CFcetVdh.js @@ -0,0 +1,66 @@ +function P2(e,o){for(var r=0;ra[l]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const o=document.createElement("link").relList;if(o&&o.supports&&o.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))a(l);new MutationObserver(l=>{for(const c of l)if(c.type==="childList")for(const u of c.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&a(u)}).observe(document,{childList:!0,subtree:!0});function r(l){const c={};return l.integrity&&(c.integrity=l.integrity),l.referrerPolicy&&(c.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?c.credentials="include":l.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function a(l){if(l.ep)return;l.ep=!0;const c=r(l);fetch(l.href,c)}})();function Xp(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var wh={exports:{}},Wl={};var p0;function V2(){if(p0)return Wl;p0=1;var e=Symbol.for("react.transitional.element"),o=Symbol.for("react.fragment");function r(a,l,c){var u=null;if(c!==void 0&&(u=""+c),l.key!==void 0&&(u=""+l.key),"key"in l){c={};for(var f in l)f!=="key"&&(c[f]=l[f])}else c=l;return l=c.ref,{$$typeof:e,type:a,key:u,ref:l!==void 0?l:null,props:c}}return Wl.Fragment=o,Wl.jsx=r,Wl.jsxs=r,Wl}var m0;function Y2(){return m0||(m0=1,wh.exports=V2()),wh.exports}var y=Y2(),Ch={exports:{}},ze={};var g0;function G2(){if(g0)return ze;g0=1;var e=Symbol.for("react.transitional.element"),o=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),c=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),v=Symbol.for("react.activity"),x=Symbol.iterator;function S(D){return D===null||typeof D!="object"?null:(D=x&&D[x]||D["@@iterator"],typeof D=="function"?D:null)}var E={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,R={};function T(D,O,q){this.props=D,this.context=O,this.refs=R,this.updater=q||E}T.prototype.isReactComponent={},T.prototype.setState=function(D,O){if(typeof D!="object"&&typeof D!="function"&&D!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,D,O,"setState")},T.prototype.forceUpdate=function(D){this.updater.enqueueForceUpdate(this,D,"forceUpdate")};function z(){}z.prototype=T.prototype;function A(D,O,q){this.props=D,this.context=O,this.refs=R,this.updater=q||E}var N=A.prototype=new z;N.constructor=A,C(N,T.prototype),N.isPureReactComponent=!0;var B=Array.isArray;function M(){}var $={H:null,A:null,T:null,S:null},L=Object.prototype.hasOwnProperty;function H(D,O,q){var W=q.ref;return{$$typeof:e,type:D,key:O,ref:W!==void 0?W:null,props:q}}function I(D,O){return H(D.type,O,D.props)}function Y(D){return typeof D=="object"&&D!==null&&D.$$typeof===e}function X(D){var O={"=":"=0",":":"=2"};return"$"+D.replace(/[=:]/g,function(q){return O[q]})}var ee=/\/+/g;function ne(D,O){return typeof D=="object"&&D!==null&&D.key!=null?X(""+D.key):O.toString(36)}function re(D){switch(D.status){case"fulfilled":return D.value;case"rejected":throw D.reason;default:switch(typeof D.status=="string"?D.then(M,M):(D.status="pending",D.then(function(O){D.status==="pending"&&(D.status="fulfilled",D.value=O)},function(O){D.status==="pending"&&(D.status="rejected",D.reason=O)})),D.status){case"fulfilled":return D.value;case"rejected":throw D.reason}}throw D}function j(D,O,q,W,ie){var ue=typeof D;(ue==="undefined"||ue==="boolean")&&(D=null);var ve=!1;if(D===null)ve=!0;else switch(ue){case"bigint":case"string":case"number":ve=!0;break;case"object":switch(D.$$typeof){case e:case o:ve=!0;break;case g:return ve=D._init,j(ve(D._payload),O,q,W,ie)}}if(ve)return ie=ie(D),ve=W===""?"."+ne(D,0):W,B(ie)?(q="",ve!=null&&(q=ve.replace(ee,"$&/")+"/"),j(ie,O,q,"",function(ye){return ye})):ie!=null&&(Y(ie)&&(ie=I(ie,q+(ie.key==null||D&&D.key===ie.key?"":(""+ie.key).replace(ee,"$&/")+"/")+ve)),O.push(ie)),1;ve=0;var fe=W===""?".":W+":";if(B(D))for(var be=0;be>>1,Z=j[P];if(0>>1;Pl(q,V))Wl(ie,q)?(j[P]=ie,j[W]=V,P=W):(j[P]=q,j[O]=V,P=O);else if(Wl(ie,V))j[P]=ie,j[W]=V,P=W;else break e}}return k}function l(j,k){var V=j.sortIndex-k.sortIndex;return V!==0?V:j.id-k.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var u=Date,f=u.now();e.unstable_now=function(){return u.now()-f}}var h=[],p=[],g=1,v=null,x=3,S=!1,E=!1,C=!1,R=!1,T=typeof setTimeout=="function"?setTimeout:null,z=typeof clearTimeout=="function"?clearTimeout:null,A=typeof setImmediate<"u"?setImmediate:null;function N(j){for(var k=r(p);k!==null;){if(k.callback===null)a(p);else if(k.startTime<=j)a(p),k.sortIndex=k.expirationTime,o(h,k);else break;k=r(p)}}function B(j){if(C=!1,N(j),!E)if(r(h)!==null)E=!0,M||(M=!0,X());else{var k=r(p);k!==null&&re(B,k.startTime-j)}}var M=!1,$=-1,L=5,H=-1;function I(){return R?!0:!(e.unstable_now()-Hj&&I());){var P=v.callback;if(typeof P=="function"){v.callback=null,x=v.priorityLevel;var Z=P(v.expirationTime<=j);if(j=e.unstable_now(),typeof Z=="function"){v.callback=Z,N(j),k=!0;break t}v===r(h)&&a(h),N(j)}else a(h);v=r(h)}if(v!==null)k=!0;else{var D=r(p);D!==null&&re(B,D.startTime-j),k=!1}}break e}finally{v=null,x=V,S=!1}k=void 0}}finally{k?X():M=!1}}}var X;if(typeof A=="function")X=function(){A(Y)};else if(typeof MessageChannel<"u"){var ee=new MessageChannel,ne=ee.port2;ee.port1.onmessage=Y,X=function(){ne.postMessage(null)}}else X=function(){T(Y,0)};function re(j,k){$=T(function(){j(e.unstable_now())},k)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(j){j.callback=null},e.unstable_forceFrameRate=function(j){0>j||125P?(j.sortIndex=V,o(p,j),r(h)===null&&j===r(p)&&(C?(z($),$=-1):C=!0,re(B,V-P))):(j.sortIndex=Z,o(h,j),E||S||(E=!0,M||(M=!0,X()))),j},e.unstable_shouldYield=I,e.unstable_wrapCallback=function(j){var k=x;return function(){var V=x;x=k;try{return j.apply(this,arguments)}finally{x=V}}}})(Th)),Th}var b0;function I2(){return b0||(b0=1,Rh.exports=q2()),Rh.exports}var _h={exports:{}},an={};var x0;function F2(){if(x0)return an;x0=1;var e=qp();function o(h){var p="https://react.dev/errors/"+h;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(o){console.error(o)}}return e(),_h.exports=F2(),_h.exports}var w0;function Z2(){if(w0)return Jl;w0=1;var e=I2(),o=qp(),r=ix();function a(t){var n="https://react.dev/errors/"+t;if(1Z||(t.current=P[Z],P[Z]=null,Z--)}function q(t,n){Z++,P[Z]=t.current,t.current=n}var W=D(null),ie=D(null),ue=D(null),ve=D(null);function fe(t,n){switch(q(ue,n),q(ie,t),q(W,null),n.nodeType){case 9:case 11:t=(t=n.documentElement)&&(t=t.namespaceURI)?Lb(t):0;break;default:if(t=n.tagName,n=n.namespaceURI)n=Lb(n),t=kb(n,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}O(W),q(W,t)}function be(){O(W),O(ie),O(ue)}function ye(t){t.memoizedState!==null&&q(ve,t);var n=W.current,i=kb(n,t.type);n!==i&&(q(ie,t),q(W,i))}function Ge(t){ie.current===t&&(O(W),O(ie)),ve.current===t&&(O(ve),Fl._currentValue=V)}var Ne,Ke;function Be(t){if(Ne===void 0)try{throw Error()}catch(i){var n=i.stack.trim().match(/\n( *(at )?)/);Ne=n&&n[1]||"",Ke=-1)":-1d||U[s]!==K[d]){var ae=` +`+U[s].replace(" at new "," at ");return t.displayName&&ae.includes("")&&(ae=ae.replace("",t.displayName)),ae}while(1<=s&&0<=d);break}}}finally{tt=!1,Error.prepareStackTrace=i}return(i=t?t.displayName||t.name:"")?Be(i):""}function pe(t,n){switch(t.tag){case 26:case 27:case 5:return Be(t.type);case 16:return Be("Lazy");case 13:return t.child!==n&&n!==null?Be("Suspense Fallback"):Be("Suspense");case 19:return Be("SuspenseList");case 0:case 15:return vt(t.type,!1);case 11:return vt(t.type.render,!1);case 1:return vt(t.type,!0);case 31:return Be("Activity");default:return""}}function me(t){try{var n="",i=null;do n+=pe(t,i),i=t,t=t.return;while(t);return n}catch(s){return` +Error generating stack: `+s.message+` +`+s.stack}}var we=Object.prototype.hasOwnProperty,De=e.unstable_scheduleCallback,Ae=e.unstable_cancelCallback,xe=e.unstable_shouldYield,$e=e.unstable_requestPaint,de=e.unstable_now,Re=e.unstable_getCurrentPriorityLevel,dt=e.unstable_ImmediatePriority,nt=e.unstable_UserBlockingPriority,yt=e.unstable_NormalPriority,We=e.unstable_LowPriority,wt=e.unstable_IdlePriority,on=e.log,Qr=e.unstable_setDisableYieldValue,Oo=null,Gt=null;function st(t){if(typeof on=="function"&&Qr(t),Gt&&typeof Gt.setStrictMode=="function")try{Gt.setStrictMode(Oo,t)}catch{}}var Ct=Math.clz32?Math.clz32:df,Kr=Math.log,Ms=Math.LN2;function df(t){return t>>>=0,t===0?32:31-(Kr(t)/Ms|0)|0}var Ba=256,$a=262144,Et=4194304;function Rt(t){var n=t&42;if(n!==0)return n;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Xt(t,n,i){var s=t.pendingLanes;if(s===0)return 0;var d=0,m=t.suspendedLanes,w=t.pingedLanes;t=t.warmLanes;var _=s&134217727;return _!==0?(s=_&~m,s!==0?d=Rt(s):(w&=_,w!==0?d=Rt(w):i||(i=_&~t,i!==0&&(d=Rt(i))))):(_=s&~m,_!==0?d=Rt(_):w!==0?d=Rt(w):i||(i=s&~t,i!==0&&(d=Rt(i)))),d===0?0:n!==0&&n!==d&&(n&m)===0&&(m=d&-d,i=n&-n,m>=i||m===32&&(i&4194048)!==0)?n:d}function hn(t,n){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&n)===0}function pn(t,n){switch(t){case 1:case 2:case 4:case 8:case 64:return n+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function rn(){var t=Et;return Et<<=1,(Et&62914560)===0&&(Et=4194304),t}function mn(t){for(var n=[],i=0;31>i;i++)n.push(t);return n}function Ln(t,n){t.pendingLanes|=n,n!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Ht(t,n,i,s,d,m){var w=t.pendingLanes;t.pendingLanes=i,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=i,t.entangledLanes&=i,t.errorRecoveryDisabledLanes&=i,t.shellSuspendCounter=0;var _=t.entanglements,U=t.expirationTimes,K=t.hiddenUpdates;for(i=w&~i;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var BC=/[\n"\\]/g;function Pn(t){return t.replace(BC,function(n){return"\\"+n.charCodeAt(0).toString(16)+" "})}function gf(t,n,i,s,d,m,w,_){t.name="",w!=null&&typeof w!="function"&&typeof w!="symbol"&&typeof w!="boolean"?t.type=w:t.removeAttribute("type"),n!=null?w==="number"?(n===0&&t.value===""||t.value!=n)&&(t.value=""+Un(n)):t.value!==""+Un(n)&&(t.value=""+Un(n)):w!=="submit"&&w!=="reset"||t.removeAttribute("value"),n!=null?vf(t,w,Un(n)):i!=null?vf(t,w,Un(i)):s!=null&&t.removeAttribute("value"),d==null&&m!=null&&(t.defaultChecked=!!m),d!=null&&(t.checked=d&&typeof d!="function"&&typeof d!="symbol"),_!=null&&typeof _!="function"&&typeof _!="symbol"&&typeof _!="boolean"?t.name=""+Un(_):t.removeAttribute("name")}function zg(t,n,i,s,d,m,w,_){if(m!=null&&typeof m!="function"&&typeof m!="symbol"&&typeof m!="boolean"&&(t.type=m),n!=null||i!=null){if(!(m!=="submit"&&m!=="reset"||n!=null)){mf(t);return}i=i!=null?""+Un(i):"",n=n!=null?""+Un(n):i,_||n===t.value||(t.value=n),t.defaultValue=n}s=s??d,s=typeof s!="function"&&typeof s!="symbol"&&!!s,t.checked=_?t.checked:!!s,t.defaultChecked=!!s,w!=null&&typeof w!="function"&&typeof w!="symbol"&&typeof w!="boolean"&&(t.name=w),mf(t)}function vf(t,n,i){n==="number"&&Bs(t.ownerDocument)===t||t.defaultValue===""+i||(t.defaultValue=""+i)}function Va(t,n,i,s){if(t=t.options,n){n={};for(var d=0;d"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),wf=!1;if(ko)try{var dl={};Object.defineProperty(dl,"passive",{get:function(){wf=!0}}),window.addEventListener("test",dl,dl),window.removeEventListener("test",dl,dl)}catch{wf=!1}var pr=null,Cf=null,Ls=null;function kg(){if(Ls)return Ls;var t,n=Cf,i=n.length,s,d="value"in pr?pr.value:pr.textContent,m=d.length;for(t=0;t=ml),Gg=" ",Xg=!1;function qg(t,n){switch(t){case"keyup":return cE.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ig(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var qa=!1;function fE(t,n){switch(t){case"compositionend":return Ig(n);case"keypress":return n.which!==32?null:(Xg=!0,Gg);case"textInput":return t=n.data,t===Gg&&Xg?null:t;default:return null}}function dE(t,n){if(qa)return t==="compositionend"||!Df&&qg(t,n)?(t=kg(),Ls=Cf=pr=null,qa=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1=n)return{node:i,offset:n-t};t=s}e:{for(;i;){if(i.nextSibling){i=i.nextSibling;break e}i=i.parentNode}i=void 0}i=tv(i)}}function ov(t,n){return t&&n?t===n?!0:t&&t.nodeType===3?!1:n&&n.nodeType===3?ov(t,n.parentNode):"contains"in t?t.contains(n):t.compareDocumentPosition?!!(t.compareDocumentPosition(n)&16):!1:!1}function rv(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var n=Bs(t.document);n instanceof t.HTMLIFrameElement;){try{var i=typeof n.contentWindow.location.href=="string"}catch{i=!1}if(i)t=n.contentWindow;else break;n=Bs(t.document)}return n}function zf(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n&&(n==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||n==="textarea"||t.contentEditable==="true")}var xE=ko&&"documentMode"in document&&11>=document.documentMode,Ia=null,Mf=null,bl=null,Of=!1;function av(t,n,i){var s=i.window===i?i.document:i.nodeType===9?i:i.ownerDocument;Of||Ia==null||Ia!==Bs(s)||(s=Ia,"selectionStart"in s&&zf(s)?s={start:s.selectionStart,end:s.selectionEnd}:(s=(s.ownerDocument&&s.ownerDocument.defaultView||window).getSelection(),s={anchorNode:s.anchorNode,anchorOffset:s.anchorOffset,focusNode:s.focusNode,focusOffset:s.focusOffset}),bl&&yl(bl,s)||(bl=s,s=Ac(Mf,"onSelect"),0>=w,d-=w,bo=1<<32-Ct(n)+d|i<Oe?(Ue=Ce,Ce=null):Ue=Ce.sibling;var Ie=J(F,Ce,Q[Oe],le);if(Ie===null){Ce===null&&(Ce=Ue);break}t&&Ce&&Ie.alternate===null&&n(F,Ce),G=m(Ie,G,Oe),qe===null?Ee=Ie:qe.sibling=Ie,qe=Ie,Ce=Ue}if(Oe===Q.length)return i(F,Ce),Pe&&Uo(F,Oe),Ee;if(Ce===null){for(;OeOe?(Ue=Ce,Ce=null):Ue=Ce.sibling;var $r=J(F,Ce,Ie.value,le);if($r===null){Ce===null&&(Ce=Ue);break}t&&Ce&&$r.alternate===null&&n(F,Ce),G=m($r,G,Oe),qe===null?Ee=$r:qe.sibling=$r,qe=$r,Ce=Ue}if(Ie.done)return i(F,Ce),Pe&&Uo(F,Oe),Ee;if(Ce===null){for(;!Ie.done;Oe++,Ie=Q.next())Ie=se(F,Ie.value,le),Ie!==null&&(G=m(Ie,G,Oe),qe===null?Ee=Ie:qe.sibling=Ie,qe=Ie);return Pe&&Uo(F,Oe),Ee}for(Ce=s(Ce);!Ie.done;Oe++,Ie=Q.next())Ie=te(Ce,F,Oe,Ie.value,le),Ie!==null&&(t&&Ie.alternate!==null&&Ce.delete(Ie.key===null?Oe:Ie.key),G=m(Ie,G,Oe),qe===null?Ee=Ie:qe.sibling=Ie,qe=Ie);return t&&Ce.forEach(function(U2){return n(F,U2)}),Pe&&Uo(F,Oe),Ee}function at(F,G,Q,le){if(typeof Q=="object"&&Q!==null&&Q.type===C&&Q.key===null&&(Q=Q.props.children),typeof Q=="object"&&Q!==null){switch(Q.$$typeof){case S:e:{for(var Ee=Q.key;G!==null;){if(G.key===Ee){if(Ee=Q.type,Ee===C){if(G.tag===7){i(F,G.sibling),le=d(G,Q.props.children),le.return=F,F=le;break e}}else if(G.elementType===Ee||typeof Ee=="object"&&Ee!==null&&Ee.$$typeof===L&&sa(Ee)===G.type){i(F,G.sibling),le=d(G,Q.props),Rl(le,Q),le.return=F,F=le;break e}i(F,G);break}else n(F,G);G=G.sibling}Q.type===C?(le=oa(Q.props.children,F.mode,le,Q.key),le.return=F,F=le):(le=Is(Q.type,Q.key,Q.props,null,F.mode,le),Rl(le,Q),le.return=F,F=le)}return w(F);case E:e:{for(Ee=Q.key;G!==null;){if(G.key===Ee)if(G.tag===4&&G.stateNode.containerInfo===Q.containerInfo&&G.stateNode.implementation===Q.implementation){i(F,G.sibling),le=d(G,Q.children||[]),le.return=F,F=le;break e}else{i(F,G);break}else n(F,G);G=G.sibling}le=Uf(Q,F.mode,le),le.return=F,F=le}return w(F);case L:return Q=sa(Q),at(F,G,Q,le)}if(re(Q))return Se(F,G,Q,le);if(X(Q)){if(Ee=X(Q),typeof Ee!="function")throw Error(a(150));return Q=Ee.call(Q),Te(F,G,Q,le)}if(typeof Q.then=="function")return at(F,G,ec(Q),le);if(Q.$$typeof===A)return at(F,G,Qs(F,Q),le);tc(F,Q)}return typeof Q=="string"&&Q!==""||typeof Q=="number"||typeof Q=="bigint"?(Q=""+Q,G!==null&&G.tag===6?(i(F,G.sibling),le=d(G,Q),le.return=F,F=le):(i(F,G),le=Hf(Q,F.mode,le),le.return=F,F=le),w(F)):i(F,G)}return function(F,G,Q,le){try{El=0;var Ee=at(F,G,Q,le);return ri=null,Ee}catch(Ce){if(Ce===oi||Ce===Ws)throw Ce;var qe=An(29,Ce,null,F.mode);return qe.lanes=le,qe.return=F,qe}}}var ua=Dv(!0),Nv=Dv(!1),br=!1;function Wf(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Jf(t,n){t=t.updateQueue,n.updateQueue===t&&(n.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function xr(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function Sr(t,n,i){var s=t.updateQueue;if(s===null)return null;if(s=s.shared,(Fe&2)!==0){var d=s.pending;return d===null?n.next=n:(n.next=d.next,d.next=n),s.pending=n,n=qs(t),dv(t,null,i),n}return Xs(t,s,n,i),qs(t)}function Tl(t,n,i){if(n=n.updateQueue,n!==null&&(n=n.shared,(i&4194048)!==0)){var s=n.lanes;s&=t.pendingLanes,i|=s,n.lanes=i,Dn(t,i)}}function ed(t,n){var i=t.updateQueue,s=t.alternate;if(s!==null&&(s=s.updateQueue,i===s)){var d=null,m=null;if(i=i.firstBaseUpdate,i!==null){do{var w={lane:i.lane,tag:i.tag,payload:i.payload,callback:null,next:null};m===null?d=m=w:m=m.next=w,i=i.next}while(i!==null);m===null?d=m=n:m=m.next=n}else d=m=n;i={baseState:s.baseState,firstBaseUpdate:d,lastBaseUpdate:m,shared:s.shared,callbacks:s.callbacks},t.updateQueue=i;return}t=i.lastBaseUpdate,t===null?i.firstBaseUpdate=n:t.next=n,i.lastBaseUpdate=n}var td=!1;function _l(){if(td){var t=ni;if(t!==null)throw t}}function Dl(t,n,i,s){td=!1;var d=t.updateQueue;br=!1;var m=d.firstBaseUpdate,w=d.lastBaseUpdate,_=d.shared.pending;if(_!==null){d.shared.pending=null;var U=_,K=U.next;U.next=null,w===null?m=K:w.next=K,w=U;var ae=t.alternate;ae!==null&&(ae=ae.updateQueue,_=ae.lastBaseUpdate,_!==w&&(_===null?ae.firstBaseUpdate=K:_.next=K,ae.lastBaseUpdate=U))}if(m!==null){var se=d.baseState;w=0,ae=K=U=null,_=m;do{var J=_.lane&-536870913,te=J!==_.lane;if(te?(He&J)===J:(s&J)===J){J!==0&&J===ti&&(td=!0),ae!==null&&(ae=ae.next={lane:0,tag:_.tag,payload:_.payload,callback:null,next:null});e:{var Se=t,Te=_;J=n;var at=i;switch(Te.tag){case 1:if(Se=Te.payload,typeof Se=="function"){se=Se.call(at,se,J);break e}se=Se;break e;case 3:Se.flags=Se.flags&-65537|128;case 0:if(Se=Te.payload,J=typeof Se=="function"?Se.call(at,se,J):Se,J==null)break e;se=v({},se,J);break e;case 2:br=!0}}J=_.callback,J!==null&&(t.flags|=64,te&&(t.flags|=8192),te=d.callbacks,te===null?d.callbacks=[J]:te.push(J))}else te={lane:J,tag:_.tag,payload:_.payload,callback:_.callback,next:null},ae===null?(K=ae=te,U=se):ae=ae.next=te,w|=J;if(_=_.next,_===null){if(_=d.shared.pending,_===null)break;te=_,_=te.next,te.next=null,d.lastBaseUpdate=te,d.shared.pending=null}}while(!0);ae===null&&(U=se),d.baseState=U,d.firstBaseUpdate=K,d.lastBaseUpdate=ae,m===null&&(d.shared.lanes=0),Tr|=w,t.lanes=w,t.memoizedState=se}}function Av(t,n){if(typeof t!="function")throw Error(a(191,t));t.call(n)}function zv(t,n){var i=t.callbacks;if(i!==null)for(t.callbacks=null,t=0;tm?m:8;var w=j.T,_={};j.T=_,xd(t,!1,n,i);try{var U=d(),K=j.S;if(K!==null&&K(_,U),U!==null&&typeof U=="object"&&typeof U.then=="function"){var ae=NE(U,s);zl(t,n,ae,Bn(t))}else zl(t,n,s,Bn(t))}catch(se){zl(t,n,{then:function(){},status:"rejected",reason:se},Bn())}finally{k.p=m,w!==null&&_.types!==null&&(w.types=_.types),j.T=w}}function BE(){}function yd(t,n,i,s){if(t.tag!==5)throw Error(a(476));var d=cy(t).queue;sy(t,d,n,V,i===null?BE:function(){return uy(t),i(s)})}function cy(t){var n=t.memoizedState;if(n!==null)return n;n={memoizedState:V,baseState:V,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Go,lastRenderedState:V},next:null};var i={};return n.next={memoizedState:i,baseState:i,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Go,lastRenderedState:i},next:null},t.memoizedState=n,t=t.alternate,t!==null&&(t.memoizedState=n),n}function uy(t){var n=cy(t);n.next===null&&(n=t.alternate.memoizedState),zl(t,n.next.queue,{},Bn())}function bd(){return Jt(Fl)}function fy(){return _t().memoizedState}function dy(){return _t().memoizedState}function $E(t){for(var n=t.return;n!==null;){switch(n.tag){case 24:case 3:var i=Bn();t=xr(i);var s=Sr(n,t,i);s!==null&&(wn(s,n,i),Tl(s,n,i)),n={cache:Ff()},t.payload=n;return}n=n.return}}function LE(t,n,i){var s=Bn();i={lane:s,revertLane:0,gesture:null,action:i,hasEagerState:!1,eagerState:null,next:null},fc(t)?py(n,i):(i=Lf(t,n,i,s),i!==null&&(wn(i,t,s),my(i,n,s)))}function hy(t,n,i){var s=Bn();zl(t,n,i,s)}function zl(t,n,i,s){var d={lane:s,revertLane:0,gesture:null,action:i,hasEagerState:!1,eagerState:null,next:null};if(fc(t))py(n,d);else{var m=t.alternate;if(t.lanes===0&&(m===null||m.lanes===0)&&(m=n.lastRenderedReducer,m!==null))try{var w=n.lastRenderedState,_=m(w,i);if(d.hasEagerState=!0,d.eagerState=_,Nn(_,w))return Xs(t,n,d,0),ct===null&&Gs(),!1}catch{}if(i=Lf(t,n,d,s),i!==null)return wn(i,t,s),my(i,n,s),!0}return!1}function xd(t,n,i,s){if(s={lane:2,revertLane:Wd(),gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},fc(t)){if(n)throw Error(a(479))}else n=Lf(t,i,s,2),n!==null&&wn(n,t,2)}function fc(t){var n=t.alternate;return t===Me||n!==null&&n===Me}function py(t,n){ii=rc=!0;var i=t.pending;i===null?n.next=n:(n.next=i.next,i.next=n),t.pending=n}function my(t,n,i){if((i&4194048)!==0){var s=n.lanes;s&=t.pendingLanes,i|=s,n.lanes=i,Dn(t,i)}}var Ml={readContext:Jt,use:lc,useCallback:bt,useContext:bt,useEffect:bt,useImperativeHandle:bt,useLayoutEffect:bt,useInsertionEffect:bt,useMemo:bt,useReducer:bt,useRef:bt,useState:bt,useDebugValue:bt,useDeferredValue:bt,useTransition:bt,useSyncExternalStore:bt,useId:bt,useHostTransitionStatus:bt,useFormState:bt,useActionState:bt,useOptimistic:bt,useMemoCache:bt,useCacheRefresh:bt};Ml.useEffectEvent=bt;var gy={readContext:Jt,use:lc,useCallback:function(t,n){return fn().memoizedState=[t,n===void 0?null:n],t},useContext:Jt,useEffect:Jv,useImperativeHandle:function(t,n,i){i=i!=null?i.concat([t]):null,cc(4194308,4,oy.bind(null,n,t),i)},useLayoutEffect:function(t,n){return cc(4194308,4,t,n)},useInsertionEffect:function(t,n){cc(4,2,t,n)},useMemo:function(t,n){var i=fn();n=n===void 0?null:n;var s=t();if(fa){st(!0);try{t()}finally{st(!1)}}return i.memoizedState=[s,n],s},useReducer:function(t,n,i){var s=fn();if(i!==void 0){var d=i(n);if(fa){st(!0);try{i(n)}finally{st(!1)}}}else d=n;return s.memoizedState=s.baseState=d,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:d},s.queue=t,t=t.dispatch=LE.bind(null,Me,t),[s.memoizedState,t]},useRef:function(t){var n=fn();return t={current:t},n.memoizedState=t},useState:function(t){t=hd(t);var n=t.queue,i=hy.bind(null,Me,n);return n.dispatch=i,[t.memoizedState,i]},useDebugValue:gd,useDeferredValue:function(t,n){var i=fn();return vd(i,t,n)},useTransition:function(){var t=hd(!1);return t=sy.bind(null,Me,t.queue,!0,!1),fn().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,n,i){var s=Me,d=fn();if(Pe){if(i===void 0)throw Error(a(407));i=i()}else{if(i=n(),ct===null)throw Error(a(349));(He&127)!==0||Lv(s,n,i)}d.memoizedState=i;var m={value:i,getSnapshot:n};return d.queue=m,Jv(Hv.bind(null,s,m,t),[t]),s.flags|=2048,si(9,{destroy:void 0},kv.bind(null,s,m,i,n),null),i},useId:function(){var t=fn(),n=ct.identifierPrefix;if(Pe){var i=xo,s=bo;i=(s&~(1<<32-Ct(s)-1)).toString(32)+i,n="_"+n+"R_"+i,i=ac++,0<\/script>",m=m.removeChild(m.firstChild);break;case"select":m=typeof s.is=="string"?w.createElement("select",{is:s.is}):w.createElement("select"),s.multiple?m.multiple=!0:s.size&&(m.size=s.size);break;default:m=typeof s.is=="string"?w.createElement(d,{is:s.is}):w.createElement(d)}}m[Kt]=n,m[gn]=s;e:for(w=n.child;w!==null;){if(w.tag===5||w.tag===6)m.appendChild(w.stateNode);else if(w.tag!==4&&w.tag!==27&&w.child!==null){w.child.return=w,w=w.child;continue}if(w===n)break e;for(;w.sibling===null;){if(w.return===null||w.return===n)break e;w=w.return}w.sibling.return=w.return,w=w.sibling}n.stateNode=m;e:switch(tn(m,d,s),d){case"button":case"input":case"select":case"textarea":s=!!s.autoFocus;break e;case"img":s=!0;break e;default:s=!1}s&&qo(n)}}return ft(n),jd(n,n.type,t===null?null:t.memoizedProps,n.pendingProps,i),null;case 6:if(t&&n.stateNode!=null)t.memoizedProps!==s&&qo(n);else{if(typeof s!="string"&&n.stateNode===null)throw Error(a(166));if(t=ue.current,Ja(n)){if(t=n.stateNode,i=n.memoizedProps,s=null,d=Wt,d!==null)switch(d.tag){case 27:case 5:s=d.memoizedProps}t[Kt]=n,t=!!(t.nodeValue===i||s!==null&&s.suppressHydrationWarning===!0||Bb(t.nodeValue,i)),t||vr(n,!0)}else t=zc(t).createTextNode(s),t[Kt]=n,n.stateNode=t}return ft(n),null;case 31:if(i=n.memoizedState,t===null||t.memoizedState!==null){if(s=Ja(n),i!==null){if(t===null){if(!s)throw Error(a(318));if(t=n.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(a(557));t[Kt]=n}else ra(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;ft(n),t=!1}else i=Gf(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=i),t=!0;if(!t)return n.flags&256?(Mn(n),n):(Mn(n),null);if((n.flags&128)!==0)throw Error(a(558))}return ft(n),null;case 13:if(s=n.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(d=Ja(n),s!==null&&s.dehydrated!==null){if(t===null){if(!d)throw Error(a(318));if(d=n.memoizedState,d=d!==null?d.dehydrated:null,!d)throw Error(a(317));d[Kt]=n}else ra(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;ft(n),d=!1}else d=Gf(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=d),d=!0;if(!d)return n.flags&256?(Mn(n),n):(Mn(n),null)}return Mn(n),(n.flags&128)!==0?(n.lanes=i,n):(i=s!==null,t=t!==null&&t.memoizedState!==null,i&&(s=n.child,d=null,s.alternate!==null&&s.alternate.memoizedState!==null&&s.alternate.memoizedState.cachePool!==null&&(d=s.alternate.memoizedState.cachePool.pool),m=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(m=s.memoizedState.cachePool.pool),m!==d&&(s.flags|=2048)),i!==t&&i&&(n.child.flags|=8192),gc(n,n.updateQueue),ft(n),null);case 4:return be(),t===null&&nh(n.stateNode.containerInfo),ft(n),null;case 10:return Vo(n.type),ft(n),null;case 19:if(O(Tt),s=n.memoizedState,s===null)return ft(n),null;if(d=(n.flags&128)!==0,m=s.rendering,m===null)if(d)jl(s,!1);else{if(xt!==0||t!==null&&(t.flags&128)!==0)for(t=n.child;t!==null;){if(m=oc(t),m!==null){for(n.flags|=128,jl(s,!1),t=m.updateQueue,n.updateQueue=t,gc(n,t),n.subtreeFlags=0,t=i,i=n.child;i!==null;)hv(i,t),i=i.sibling;return q(Tt,Tt.current&1|2),Pe&&Uo(n,s.treeForkCount),n.child}t=t.sibling}s.tail!==null&&de()>Sc&&(n.flags|=128,d=!0,jl(s,!1),n.lanes=4194304)}else{if(!d)if(t=oc(m),t!==null){if(n.flags|=128,d=!0,t=t.updateQueue,n.updateQueue=t,gc(n,t),jl(s,!0),s.tail===null&&s.tailMode==="hidden"&&!m.alternate&&!Pe)return ft(n),null}else 2*de()-s.renderingStartTime>Sc&&i!==536870912&&(n.flags|=128,d=!0,jl(s,!1),n.lanes=4194304);s.isBackwards?(m.sibling=n.child,n.child=m):(t=s.last,t!==null?t.sibling=m:n.child=m,s.last=m)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=de(),t.sibling=null,i=Tt.current,q(Tt,d?i&1|2:i&1),Pe&&Uo(n,s.treeForkCount),t):(ft(n),null);case 22:case 23:return Mn(n),od(),s=n.memoizedState!==null,t!==null?t.memoizedState!==null!==s&&(n.flags|=8192):s&&(n.flags|=8192),s?(i&536870912)!==0&&(n.flags&128)===0&&(ft(n),n.subtreeFlags&6&&(n.flags|=8192)):ft(n),i=n.updateQueue,i!==null&&gc(n,i.retryQueue),i=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(i=t.memoizedState.cachePool.pool),s=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(s=n.memoizedState.cachePool.pool),s!==i&&(n.flags|=2048),t!==null&&O(la),null;case 24:return i=null,t!==null&&(i=t.memoizedState.cache),n.memoizedState.cache!==i&&(n.flags|=2048),Vo(Ot),ft(n),null;case 25:return null;case 30:return null}throw Error(a(156,n.tag))}function VE(t,n){switch(Vf(n),n.tag){case 1:return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 3:return Vo(Ot),be(),t=n.flags,(t&65536)!==0&&(t&128)===0?(n.flags=t&-65537|128,n):null;case 26:case 27:case 5:return Ge(n),null;case 31:if(n.memoizedState!==null){if(Mn(n),n.alternate===null)throw Error(a(340));ra()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 13:if(Mn(n),t=n.memoizedState,t!==null&&t.dehydrated!==null){if(n.alternate===null)throw Error(a(340));ra()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 19:return O(Tt),null;case 4:return be(),null;case 10:return Vo(n.type),null;case 22:case 23:return Mn(n),od(),t!==null&&O(la),t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 24:return Vo(Ot),null;case 25:return null;default:return null}}function Uy(t,n){switch(Vf(n),n.tag){case 3:Vo(Ot),be();break;case 26:case 27:case 5:Ge(n);break;case 4:be();break;case 31:n.memoizedState!==null&&Mn(n);break;case 13:Mn(n);break;case 19:O(Tt);break;case 10:Vo(n.type);break;case 22:case 23:Mn(n),od(),t!==null&&O(la);break;case 24:Vo(Ot)}}function Bl(t,n){try{var i=n.updateQueue,s=i!==null?i.lastEffect:null;if(s!==null){var d=s.next;i=d;do{if((i.tag&t)===t){s=void 0;var m=i.create,w=i.inst;s=m(),w.destroy=s}i=i.next}while(i!==d)}}catch(_){et(n,n.return,_)}}function Er(t,n,i){try{var s=n.updateQueue,d=s!==null?s.lastEffect:null;if(d!==null){var m=d.next;s=m;do{if((s.tag&t)===t){var w=s.inst,_=w.destroy;if(_!==void 0){w.destroy=void 0,d=n;var U=i,K=_;try{K()}catch(ae){et(d,U,ae)}}}s=s.next}while(s!==m)}}catch(ae){et(n,n.return,ae)}}function Py(t){var n=t.updateQueue;if(n!==null){var i=t.stateNode;try{zv(n,i)}catch(s){et(t,t.return,s)}}}function Vy(t,n,i){i.props=da(t.type,t.memoizedProps),i.state=t.memoizedState;try{i.componentWillUnmount()}catch(s){et(t,n,s)}}function $l(t,n){try{var i=t.ref;if(i!==null){switch(t.tag){case 26:case 27:case 5:var s=t.stateNode;break;case 30:s=t.stateNode;break;default:s=t.stateNode}typeof i=="function"?t.refCleanup=i(s):i.current=s}}catch(d){et(t,n,d)}}function So(t,n){var i=t.ref,s=t.refCleanup;if(i!==null)if(typeof s=="function")try{s()}catch(d){et(t,n,d)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof i=="function")try{i(null)}catch(d){et(t,n,d)}else i.current=null}function Yy(t){var n=t.type,i=t.memoizedProps,s=t.stateNode;try{e:switch(n){case"button":case"input":case"select":case"textarea":i.autoFocus&&s.focus();break e;case"img":i.src?s.src=i.src:i.srcSet&&(s.srcset=i.srcSet)}}catch(d){et(t,t.return,d)}}function Bd(t,n,i){try{var s=t.stateNode;u2(s,t.type,i,n),s[gn]=n}catch(d){et(t,t.return,d)}}function Gy(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&zr(t.type)||t.tag===4}function $d(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||Gy(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&zr(t.type)||t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Ld(t,n,i){var s=t.tag;if(s===5||s===6)t=t.stateNode,n?(i.nodeType===9?i.body:i.nodeName==="HTML"?i.ownerDocument.body:i).insertBefore(t,n):(n=i.nodeType===9?i.body:i.nodeName==="HTML"?i.ownerDocument.body:i,n.appendChild(t),i=i._reactRootContainer,i!=null||n.onclick!==null||(n.onclick=Lo));else if(s!==4&&(s===27&&zr(t.type)&&(i=t.stateNode,n=null),t=t.child,t!==null))for(Ld(t,n,i),t=t.sibling;t!==null;)Ld(t,n,i),t=t.sibling}function vc(t,n,i){var s=t.tag;if(s===5||s===6)t=t.stateNode,n?i.insertBefore(t,n):i.appendChild(t);else if(s!==4&&(s===27&&zr(t.type)&&(i=t.stateNode),t=t.child,t!==null))for(vc(t,n,i),t=t.sibling;t!==null;)vc(t,n,i),t=t.sibling}function Xy(t){var n=t.stateNode,i=t.memoizedProps;try{for(var s=t.type,d=n.attributes;d.length;)n.removeAttributeNode(d[0]);tn(n,s,i),n[Kt]=t,n[gn]=i}catch(m){et(t,t.return,m)}}var Io=!1,$t=!1,kd=!1,qy=typeof WeakSet=="function"?WeakSet:Set,It=null;function YE(t,n){if(t=t.containerInfo,ah=kc,t=rv(t),zf(t)){if("selectionStart"in t)var i={start:t.selectionStart,end:t.selectionEnd};else e:{i=(i=t.ownerDocument)&&i.defaultView||window;var s=i.getSelection&&i.getSelection();if(s&&s.rangeCount!==0){i=s.anchorNode;var d=s.anchorOffset,m=s.focusNode;s=s.focusOffset;try{i.nodeType,m.nodeType}catch{i=null;break e}var w=0,_=-1,U=-1,K=0,ae=0,se=t,J=null;t:for(;;){for(var te;se!==i||d!==0&&se.nodeType!==3||(_=w+d),se!==m||s!==0&&se.nodeType!==3||(U=w+s),se.nodeType===3&&(w+=se.nodeValue.length),(te=se.firstChild)!==null;)J=se,se=te;for(;;){if(se===t)break t;if(J===i&&++K===d&&(_=w),J===m&&++ae===s&&(U=w),(te=se.nextSibling)!==null)break;se=J,J=se.parentNode}se=te}i=_===-1||U===-1?null:{start:_,end:U}}else i=null}i=i||{start:0,end:0}}else i=null;for(ih={focusedElem:t,selectionRange:i},kc=!1,It=n;It!==null;)if(n=It,t=n.child,(n.subtreeFlags&1028)!==0&&t!==null)t.return=n,It=t;else for(;It!==null;){switch(n=It,m=n.alternate,t=n.flags,n.tag){case 0:if((t&4)!==0&&(t=n.updateQueue,t=t!==null?t.events:null,t!==null))for(i=0;i title"))),tn(m,s,i),m[Kt]=t,qt(m),s=m;break e;case"link":var w=Wb("link","href",d).get(s+(i.href||""));if(w){for(var _=0;_at&&(w=at,at=Te,Te=w);var F=nv(_,Te),G=nv(_,at);if(F&&G&&(te.rangeCount!==1||te.anchorNode!==F.node||te.anchorOffset!==F.offset||te.focusNode!==G.node||te.focusOffset!==G.offset)){var Q=se.createRange();Q.setStart(F.node,F.offset),te.removeAllRanges(),Te>at?(te.addRange(Q),te.extend(G.node,G.offset)):(Q.setEnd(G.node,G.offset),te.addRange(Q))}}}}for(se=[],te=_;te=te.parentNode;)te.nodeType===1&&se.push({element:te,left:te.scrollLeft,top:te.scrollTop});for(typeof _.focus=="function"&&_.focus(),_=0;_i?32:i,j.T=null,i=Xd,Xd=null;var m=Dr,w=Wo;if(Ut=0,hi=Dr=null,Wo=0,(Fe&6)!==0)throw Error(a(331));var _=Fe;if(Fe|=4,ob(m.current),eb(m,m.current,w,i),Fe=_,Vl(0,!1),Gt&&typeof Gt.onPostCommitFiberRoot=="function")try{Gt.onPostCommitFiberRoot(Oo,m)}catch{}return!0}finally{k.p=d,j.T=s,Sb(t,n)}}function Cb(t,n,i){n=Yn(i,n),n=Ed(t.stateNode,n,2),t=Sr(t,n,2),t!==null&&(Ln(t,2),wo(t))}function et(t,n,i){if(t.tag===3)Cb(t,t,i);else for(;n!==null;){if(n.tag===3){Cb(n,t,i);break}else if(n.tag===1){var s=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof s.componentDidCatch=="function"&&(_r===null||!_r.has(s))){t=Yn(i,t),i=Ey(2),s=Sr(n,i,2),s!==null&&(Ry(i,s,n,t),Ln(s,2),wo(s));break}}n=n.return}}function Zd(t,n,i){var s=t.pingCache;if(s===null){s=t.pingCache=new qE;var d=new Set;s.set(n,d)}else d=s.get(n),d===void 0&&(d=new Set,s.set(n,d));d.has(i)||(Pd=!0,d.add(i),t=KE.bind(null,t,n,i),n.then(t,t))}function KE(t,n,i){var s=t.pingCache;s!==null&&s.delete(n),t.pingedLanes|=t.suspendedLanes&i,t.warmLanes&=~i,ct===t&&(He&i)===i&&(xt===4||xt===3&&(He&62914560)===He&&300>de()-xc?(Fe&2)===0&&pi(t,0):Vd|=i,di===He&&(di=0)),wo(t)}function Eb(t,n){n===0&&(n=rn()),t=na(t,n),t!==null&&(Ln(t,n),wo(t))}function WE(t){var n=t.memoizedState,i=0;n!==null&&(i=n.retryLane),Eb(t,i)}function JE(t,n){var i=0;switch(t.tag){case 31:case 13:var s=t.stateNode,d=t.memoizedState;d!==null&&(i=d.retryLane);break;case 19:s=t.stateNode;break;case 22:s=t.stateNode._retryCache;break;default:throw Error(a(314))}s!==null&&s.delete(n),Eb(t,i)}function e2(t,n){return De(t,n)}var _c=null,gi=null,Qd=!1,Dc=!1,Kd=!1,Ar=0;function wo(t){t!==gi&&t.next===null&&(gi===null?_c=gi=t:gi=gi.next=t),Dc=!0,Qd||(Qd=!0,n2())}function Vl(t,n){if(!Kd&&Dc){Kd=!0;do for(var i=!1,s=_c;s!==null;){if(t!==0){var d=s.pendingLanes;if(d===0)var m=0;else{var w=s.suspendedLanes,_=s.pingedLanes;m=(1<<31-Ct(42|t)+1)-1,m&=d&~(w&~_),m=m&201326741?m&201326741|1:m?m|2:0}m!==0&&(i=!0,Db(s,m))}else m=He,m=Xt(s,s===ct?m:0,s.cancelPendingCommit!==null||s.timeoutHandle!==-1),(m&3)===0||hn(s,m)||(i=!0,Db(s,m));s=s.next}while(i);Kd=!1}}function t2(){Rb()}function Rb(){Dc=Qd=!1;var t=0;Ar!==0&&d2()&&(t=Ar);for(var n=de(),i=null,s=_c;s!==null;){var d=s.next,m=Tb(s,n);m===0?(s.next=null,i===null?_c=d:i.next=d,d===null&&(gi=i)):(i=s,(t!==0||(m&3)!==0)&&(Dc=!0)),s=d}Ut!==0&&Ut!==5||Vl(t),Ar!==0&&(Ar=0)}function Tb(t,n){for(var i=t.suspendedLanes,s=t.pingedLanes,d=t.expirationTimes,m=t.pendingLanes&-62914561;0_)break;var ae=U.transferSize,se=U.initiatorType;ae&&$b(se)&&(U=U.responseEnd,w+=ae*(U<_?1:(_-K)/(U-K)))}if(--s,n+=8*(m+w)/(d.duration/1e3),t++,10"u"?null:document;function Fb(t,n,i){var s=vi;if(s&&typeof n=="string"&&n){var d=Pn(n);d='link[rel="'+t+'"][href="'+d+'"]',typeof i=="string"&&(d+='[crossorigin="'+i+'"]'),Ib.has(d)||(Ib.add(d),t={rel:t,crossOrigin:i,href:n},s.querySelector(d)===null&&(n=s.createElement("link"),tn(n,"link",t),qt(n),s.head.appendChild(n)))}}function S2(t){Jo.D(t),Fb("dns-prefetch",t,null)}function w2(t,n){Jo.C(t,n),Fb("preconnect",t,n)}function C2(t,n,i){Jo.L(t,n,i);var s=vi;if(s&&t&&n){var d='link[rel="preload"][as="'+Pn(n)+'"]';n==="image"&&i&&i.imageSrcSet?(d+='[imagesrcset="'+Pn(i.imageSrcSet)+'"]',typeof i.imageSizes=="string"&&(d+='[imagesizes="'+Pn(i.imageSizes)+'"]')):d+='[href="'+Pn(t)+'"]';var m=d;switch(n){case"style":m=yi(t);break;case"script":m=bi(t)}Zn.has(m)||(t=v({rel:"preload",href:n==="image"&&i&&i.imageSrcSet?void 0:t,as:n},i),Zn.set(m,t),s.querySelector(d)!==null||n==="style"&&s.querySelector(ql(m))||n==="script"&&s.querySelector(Il(m))||(n=s.createElement("link"),tn(n,"link",t),qt(n),s.head.appendChild(n)))}}function E2(t,n){Jo.m(t,n);var i=vi;if(i&&t){var s=n&&typeof n.as=="string"?n.as:"script",d='link[rel="modulepreload"][as="'+Pn(s)+'"][href="'+Pn(t)+'"]',m=d;switch(s){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":m=bi(t)}if(!Zn.has(m)&&(t=v({rel:"modulepreload",href:t},n),Zn.set(m,t),i.querySelector(d)===null)){switch(s){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(i.querySelector(Il(m)))return}s=i.createElement("link"),tn(s,"link",t),qt(s),i.head.appendChild(s)}}}function R2(t,n,i){Jo.S(t,n,i);var s=vi;if(s&&t){var d=Ua(s).hoistableStyles,m=yi(t);n=n||"default";var w=d.get(m);if(!w){var _={loading:0,preload:null};if(w=s.querySelector(ql(m)))_.loading=5;else{t=v({rel:"stylesheet",href:t,"data-precedence":n},i),(i=Zn.get(m))&&hh(t,i);var U=w=s.createElement("link");qt(U),tn(U,"link",t),U._p=new Promise(function(K,ae){U.onload=K,U.onerror=ae}),U.addEventListener("load",function(){_.loading|=1}),U.addEventListener("error",function(){_.loading|=2}),_.loading|=4,Oc(w,n,s)}w={type:"stylesheet",instance:w,count:1,state:_},d.set(m,w)}}}function T2(t,n){Jo.X(t,n);var i=vi;if(i&&t){var s=Ua(i).hoistableScripts,d=bi(t),m=s.get(d);m||(m=i.querySelector(Il(d)),m||(t=v({src:t,async:!0},n),(n=Zn.get(d))&&ph(t,n),m=i.createElement("script"),qt(m),tn(m,"link",t),i.head.appendChild(m)),m={type:"script",instance:m,count:1,state:null},s.set(d,m))}}function _2(t,n){Jo.M(t,n);var i=vi;if(i&&t){var s=Ua(i).hoistableScripts,d=bi(t),m=s.get(d);m||(m=i.querySelector(Il(d)),m||(t=v({src:t,async:!0,type:"module"},n),(n=Zn.get(d))&&ph(t,n),m=i.createElement("script"),qt(m),tn(m,"link",t),i.head.appendChild(m)),m={type:"script",instance:m,count:1,state:null},s.set(d,m))}}function Zb(t,n,i,s){var d=(d=ue.current)?Mc(d):null;if(!d)throw Error(a(446));switch(t){case"meta":case"title":return null;case"style":return typeof i.precedence=="string"&&typeof i.href=="string"?(n=yi(i.href),i=Ua(d).hoistableStyles,s=i.get(n),s||(s={type:"style",instance:null,count:0,state:null},i.set(n,s)),s):{type:"void",instance:null,count:0,state:null};case"link":if(i.rel==="stylesheet"&&typeof i.href=="string"&&typeof i.precedence=="string"){t=yi(i.href);var m=Ua(d).hoistableStyles,w=m.get(t);if(w||(d=d.ownerDocument||d,w={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},m.set(t,w),(m=d.querySelector(ql(t)))&&!m._p&&(w.instance=m,w.state.loading=5),Zn.has(t)||(i={rel:"preload",as:"style",href:i.href,crossOrigin:i.crossOrigin,integrity:i.integrity,media:i.media,hrefLang:i.hrefLang,referrerPolicy:i.referrerPolicy},Zn.set(t,i),m||D2(d,t,i,w.state))),n&&s===null)throw Error(a(528,""));return w}if(n&&s!==null)throw Error(a(529,""));return null;case"script":return n=i.async,i=i.src,typeof i=="string"&&n&&typeof n!="function"&&typeof n!="symbol"?(n=bi(i),i=Ua(d).hoistableScripts,s=i.get(n),s||(s={type:"script",instance:null,count:0,state:null},i.set(n,s)),s):{type:"void",instance:null,count:0,state:null};default:throw Error(a(444,t))}}function yi(t){return'href="'+Pn(t)+'"'}function ql(t){return'link[rel="stylesheet"]['+t+"]"}function Qb(t){return v({},t,{"data-precedence":t.precedence,precedence:null})}function D2(t,n,i,s){t.querySelector('link[rel="preload"][as="style"]['+n+"]")?s.loading=1:(n=t.createElement("link"),s.preload=n,n.addEventListener("load",function(){return s.loading|=1}),n.addEventListener("error",function(){return s.loading|=2}),tn(n,"link",i),qt(n),t.head.appendChild(n))}function bi(t){return'[src="'+Pn(t)+'"]'}function Il(t){return"script[async]"+t}function Kb(t,n,i){if(n.count++,n.instance===null)switch(n.type){case"style":var s=t.querySelector('style[data-href~="'+Pn(i.href)+'"]');if(s)return n.instance=s,qt(s),s;var d=v({},i,{"data-href":i.href,"data-precedence":i.precedence,href:null,precedence:null});return s=(t.ownerDocument||t).createElement("style"),qt(s),tn(s,"style",d),Oc(s,i.precedence,t),n.instance=s;case"stylesheet":d=yi(i.href);var m=t.querySelector(ql(d));if(m)return n.state.loading|=4,n.instance=m,qt(m),m;s=Qb(i),(d=Zn.get(d))&&hh(s,d),m=(t.ownerDocument||t).createElement("link"),qt(m);var w=m;return w._p=new Promise(function(_,U){w.onload=_,w.onerror=U}),tn(m,"link",s),n.state.loading|=4,Oc(m,i.precedence,t),n.instance=m;case"script":return m=bi(i.src),(d=t.querySelector(Il(m)))?(n.instance=d,qt(d),d):(s=i,(d=Zn.get(m))&&(s=v({},i),ph(s,d)),t=t.ownerDocument||t,d=t.createElement("script"),qt(d),tn(d,"link",s),t.head.appendChild(d),n.instance=d);case"void":return null;default:throw Error(a(443,n.type))}else n.type==="stylesheet"&&(n.state.loading&4)===0&&(s=n.instance,n.state.loading|=4,Oc(s,i.precedence,t));return n.instance}function Oc(t,n,i){for(var s=i.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),d=s.length?s[s.length-1]:null,m=d,w=0;w title"):null)}function N2(t,n,i){if(i===1||n.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof n.precedence!="string"||typeof n.href!="string"||n.href==="")break;return!0;case"link":if(typeof n.rel!="string"||typeof n.href!="string"||n.href===""||n.onLoad||n.onError)break;return n.rel==="stylesheet"?(t=n.disabled,typeof n.precedence=="string"&&t==null):!0;case"script":if(n.async&&typeof n.async!="function"&&typeof n.async!="symbol"&&!n.onLoad&&!n.onError&&n.src&&typeof n.src=="string")return!0}return!1}function e0(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function A2(t,n,i,s){if(i.type==="stylesheet"&&(typeof s.media!="string"||matchMedia(s.media).matches!==!1)&&(i.state.loading&4)===0){if(i.instance===null){var d=yi(s.href),m=n.querySelector(ql(d));if(m){n=m._p,n!==null&&typeof n=="object"&&typeof n.then=="function"&&(t.count++,t=Bc.bind(t),n.then(t,t)),i.state.loading|=4,i.instance=m,qt(m);return}m=n.ownerDocument||n,s=Qb(s),(d=Zn.get(d))&&hh(s,d),m=m.createElement("link"),qt(m);var w=m;w._p=new Promise(function(_,U){w.onload=_,w.onerror=U}),tn(m,"link",s),i.instance=m}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(i,n),(n=i.state.preload)&&(i.state.loading&3)===0&&(t.count++,i=Bc.bind(t),n.addEventListener("load",i),n.addEventListener("error",i))}}var mh=0;function z2(t,n){return t.stylesheets&&t.count===0&&Lc(t,t.stylesheets),0mh?50:800)+n);return t.unsuspend=i,function(){t.unsuspend=null,clearTimeout(s),clearTimeout(d)}}:null}function Bc(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Lc(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var $c=null;function Lc(t,n){t.stylesheets=null,t.unsuspend!==null&&(t.count++,$c=new Map,n.forEach(M2,t),$c=null,Bc.call(t))}function M2(t,n){if(!(n.state.loading&4)){var i=$c.get(t);if(i)var s=i.get(null);else{i=new Map,$c.set(t,i);for(var d=t.querySelectorAll("link[data-precedence],style[data-precedence]"),m=0;m"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(o){console.error(o)}}return e(),Eh.exports=Z2(),Eh.exports}var K2=Q2(),To=function(){return To=Object.assign||function(o){for(var r,a=1,l=arguments.length;a"u")return pR;var o=mR(e),r=document.documentElement.clientWidth,a=window.innerWidth;return{left:o[0],top:o[1],right:o[2],gap:Math.max(0,a-r+o[2]-o[0])}},vR=ux(),Mi="data-scroll-locked",yR=function(e,o,r,a){var l=e.left,c=e.top,u=e.right,f=e.gap;return r===void 0&&(r="margin"),` + .`.concat(J2,` { + overflow: hidden `).concat(a,`; + padding-right: `).concat(f,"px ").concat(a,`; + } + body[`).concat(Mi,`] { + overflow: hidden `).concat(a,`; + overscroll-behavior: contain; + `).concat([o&&"position: relative ".concat(a,";"),r==="margin"&&` + padding-left: `.concat(l,`px; + padding-top: `).concat(c,`px; + padding-right: `).concat(u,`px; + margin-left:0; + margin-top:0; + margin-right: `).concat(f,"px ").concat(a,`; + `),r==="padding"&&"padding-right: ".concat(f,"px ").concat(a,";")].filter(Boolean).join(""),` + } + + .`).concat(au,` { + right: `).concat(f,"px ").concat(a,`; + } + + .`).concat(iu,` { + margin-right: `).concat(f,"px ").concat(a,`; + } + + .`).concat(au," .").concat(au,` { + right: 0 `).concat(a,`; + } + + .`).concat(iu," .").concat(iu,` { + margin-right: 0 `).concat(a,`; + } + + body[`).concat(Mi,`] { + `).concat(eR,": ").concat(f,`px; + } +`)},R0=function(){var e=parseInt(document.body.getAttribute(Mi)||"0",10);return isFinite(e)?e:0},bR=function(){b.useEffect(function(){return document.body.setAttribute(Mi,(R0()+1).toString()),function(){var e=R0()-1;e<=0?document.body.removeAttribute(Mi):document.body.setAttribute(Mi,e.toString())}},[])},xR=function(e){var o=e.noRelative,r=e.noImportant,a=e.gapMode,l=a===void 0?"margin":a;bR();var c=b.useMemo(function(){return gR(l)},[l]);return b.createElement(vR,{styles:yR(c,!o,l,r?"":"!important")})},dp=!1;if(typeof window<"u")try{var Xc=Object.defineProperty({},"passive",{get:function(){return dp=!0,!0}});window.addEventListener("test",Xc,Xc),window.removeEventListener("test",Xc,Xc)}catch{dp=!1}var Si=dp?{passive:!1}:!1,SR=function(e){return e.tagName==="TEXTAREA"},fx=function(e,o){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[o]!=="hidden"&&!(r.overflowY===r.overflowX&&!SR(e)&&r[o]==="visible")},wR=function(e){return fx(e,"overflowY")},CR=function(e){return fx(e,"overflowX")},T0=function(e,o){var r=o.ownerDocument,a=o;do{typeof ShadowRoot<"u"&&a instanceof ShadowRoot&&(a=a.host);var l=dx(e,a);if(l){var c=hx(e,a),u=c[1],f=c[2];if(u>f)return!0}a=a.parentNode}while(a&&a!==r.body);return!1},ER=function(e){var o=e.scrollTop,r=e.scrollHeight,a=e.clientHeight;return[o,r,a]},RR=function(e){var o=e.scrollLeft,r=e.scrollWidth,a=e.clientWidth;return[o,r,a]},dx=function(e,o){return e==="v"?wR(o):CR(o)},hx=function(e,o){return e==="v"?ER(o):RR(o)},TR=function(e,o){return e==="h"&&o==="rtl"?-1:1},_R=function(e,o,r,a,l){var c=TR(e,window.getComputedStyle(o).direction),u=c*a,f=r.target,h=o.contains(f),p=!1,g=u>0,v=0,x=0;do{if(!f)break;var S=hx(e,f),E=S[0],C=S[1],R=S[2],T=C-R-c*E;(E||T)&&dx(e,f)&&(v+=T,x+=E);var z=f.parentNode;f=z&&z.nodeType===Node.DOCUMENT_FRAGMENT_NODE?z.host:z}while(!h&&f!==document.body||h&&(o.contains(f)||o===f));return(g&&Math.abs(v)<1||!g&&Math.abs(x)<1)&&(p=!0),p},qc=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},_0=function(e){return[e.deltaX,e.deltaY]},D0=function(e){return e&&"current"in e?e.current:e},DR=function(e,o){return e[0]===o[0]&&e[1]===o[1]},NR=function(e){return` + .block-interactivity-`.concat(e,` {pointer-events: none;} + .allow-interactivity-`).concat(e,` {pointer-events: all;} +`)},AR=0,wi=[];function zR(e){var o=b.useRef([]),r=b.useRef([0,0]),a=b.useRef(),l=b.useState(AR++)[0],c=b.useState(ux)[0],u=b.useRef(e);b.useEffect(function(){u.current=e},[e]),b.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(l));var C=W2([e.lockRef.current],(e.shards||[]).map(D0),!0).filter(Boolean);return C.forEach(function(R){return R.classList.add("allow-interactivity-".concat(l))}),function(){document.body.classList.remove("block-interactivity-".concat(l)),C.forEach(function(R){return R.classList.remove("allow-interactivity-".concat(l))})}}},[e.inert,e.lockRef.current,e.shards]);var f=b.useCallback(function(C,R){if("touches"in C&&C.touches.length===2||C.type==="wheel"&&C.ctrlKey)return!u.current.allowPinchZoom;var T=qc(C),z=r.current,A="deltaX"in C?C.deltaX:z[0]-T[0],N="deltaY"in C?C.deltaY:z[1]-T[1],B,M=C.target,$=Math.abs(A)>Math.abs(N)?"h":"v";if("touches"in C&&$==="h"&&M.type==="range")return!1;var L=window.getSelection(),H=L&&L.anchorNode,I=H?H===M||H.contains(M):!1;if(I)return!1;var Y=T0($,M);if(!Y)return!0;if(Y?B=$:(B=$==="v"?"h":"v",Y=T0($,M)),!Y)return!1;if(!a.current&&"changedTouches"in C&&(A||N)&&(a.current=B),!B)return!0;var X=a.current||B;return _R(X,R,C,X==="h"?A:N)},[]),h=b.useCallback(function(C){var R=C;if(!(!wi.length||wi[wi.length-1]!==c)){var T="deltaY"in R?_0(R):qc(R),z=o.current.filter(function(B){return B.name===R.type&&(B.target===R.target||R.target===B.shadowParent)&&DR(B.delta,T)})[0];if(z&&z.should){R.cancelable&&R.preventDefault();return}if(!z){var A=(u.current.shards||[]).map(D0).filter(Boolean).filter(function(B){return B.contains(R.target)}),N=A.length>0?f(R,A[0]):!u.current.noIsolation;N&&R.cancelable&&R.preventDefault()}}},[]),p=b.useCallback(function(C,R,T,z){var A={name:C,delta:R,target:T,should:z,shadowParent:MR(T)};o.current.push(A),setTimeout(function(){o.current=o.current.filter(function(N){return N!==A})},1)},[]),g=b.useCallback(function(C){r.current=qc(C),a.current=void 0},[]),v=b.useCallback(function(C){p(C.type,_0(C),C.target,f(C,e.lockRef.current))},[]),x=b.useCallback(function(C){p(C.type,qc(C),C.target,f(C,e.lockRef.current))},[]);b.useEffect(function(){return wi.push(c),e.setCallbacks({onScrollCapture:v,onWheelCapture:v,onTouchMoveCapture:x}),document.addEventListener("wheel",h,Si),document.addEventListener("touchmove",h,Si),document.addEventListener("touchstart",g,Si),function(){wi=wi.filter(function(C){return C!==c}),document.removeEventListener("wheel",h,Si),document.removeEventListener("touchmove",h,Si),document.removeEventListener("touchstart",g,Si)}},[]);var S=e.removeScrollBar,E=e.inert;return b.createElement(b.Fragment,null,E?b.createElement(c,{styles:NR(l)}):null,S?b.createElement(xR,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function MR(e){for(var o=null;e!==null;)e instanceof ShadowRoot&&(o=e.host,e=e.host),e=e.parentNode;return o}const OR=lR(cx,zR);var ki=b.forwardRef(function(e,o){return b.createElement(_u,To({},e,{ref:o,sideCar:OR}))});ki.classNames=_u.classNames;function At(e){return Object.keys(e)}function zh(e){return e&&typeof e=="object"&&!Array.isArray(e)}function Ip(e,o){const r={...e},a=o;return zh(e)&&zh(o)&&Object.keys(o).forEach(l=>{zh(a[l])&&l in e?r[l]=Ip(r[l],a[l]):r[l]=a[l]}),r}function jR(e){return e.replace(/[A-Z]/g,o=>`-${o.toLowerCase()}`)}function BR(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function fs(e){const o=BR(e);return typeof o=="number"?o:typeof o=="string"?o.includes("calc")||o.includes("var")?o:o.includes("px")?Number(o.replace("px","")):o.includes("rem")?Number(o.replace("rem",""))*16:o.includes("em")?Number(o.replace("em",""))*16:Number(o):NaN}function N0(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function px(e,{shouldScale:o=!1}={}){function r(a){if(a===0||a==="0")return`0${e}`;if(typeof a=="number"){const l=`${a/16}${e}`;return o?N0(l):l}if(typeof a=="string"){if(a===""||a.startsWith("calc(")||a.startsWith("clamp(")||a.includes("rgba("))return a;if(a.includes(","))return a.split(",").map(c=>r(c)).join(",");if(a.includes(" "))return a.split(" ").map(c=>r(c)).join(" ");const l=a.replace("px","");if(!Number.isNaN(Number(l))){const c=`${Number(l)/16}${e}`;return o?N0(c):c}}return a}return r}const oe=px("rem",{shouldScale:!0}),du=px("em");function xs(e){return Object.keys(e).reduce((o,r)=>(e[r]!==void 0&&(o[r]=e[r]),o),{})}function mx(e){if(typeof e=="number")return!0;if(typeof e=="string"){if(e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!=="")return!0;const o=/^[+-]?[0-9]+(\.[0-9]+)?(px|em|rem|ex|ch|lh|rlh|vw|vh|vmin|vmax|vb|vi|svw|svh|lvw|lvh|dvw|dvh|cm|mm|in|pt|pc|q|cqw|cqh|cqi|cqb|cqmin|cqmax|%)?$/;return e.trim().split(/\s+/).every(a=>o.test(a))}return!1}function rr(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==b.Fragment:!1}function zo(e){const o=b.createContext(null);return[({children:l,value:c})=>y.jsx(o.Provider,{value:c,children:l}),()=>{const l=b.useContext(o);if(l===null)throw new Error(e);return l}]}function Ss(e=null){const o=b.createContext(e);return[({children:l,value:c})=>y.jsx(o.Provider,{value:c,children:l}),()=>b.useContext(o)]}function hu(e,o){let r=e;for(;(r=r.parentElement)&&!r.matches(o););return r}function $R(e,o,r){for(let a=e-1;a>=0;a-=1)if(!o[a].disabled)return a;if(r){for(let a=o.length-1;a>-1;a-=1)if(!o[a].disabled)return a}return e}function LR(e,o,r){for(let a=e+1;a{r?.(f);const h=Array.from(hu(f.currentTarget,e)?.querySelectorAll(o)||[]).filter(x=>kR(f.currentTarget,x,e)),p=h.findIndex(x=>f.currentTarget===x),g=LR(p,h,a),v=$R(p,h,a);switch(f.key){case"ArrowRight":break;case"ArrowLeft":break;case"ArrowUp":{f.stopPropagation(),f.preventDefault(),h[v].focus(),l&&h[v].click();break}case"ArrowDown":{f.stopPropagation(),f.preventDefault(),h[g].focus(),l&&h[g].click();break}case"Home":{f.stopPropagation(),f.preventDefault(),!h[0].disabled&&h[0].focus();break}case"End":{f.stopPropagation(),f.preventDefault();const x=h.length-1;!h[x].disabled&&h[x].focus();break}}}}const HR={app:100,modal:200,popover:300,overlay:400,max:9999};function vo(e){return HR[e]}const hp=()=>{};function UR(e,o={active:!0}){return typeof e!="function"||!o.active?o.onKeyDown||hp:r=>{r.key==="Escape"&&(e(r),o.onTrigger?.())}}function Xe(e,o="size",r=!0){if(e!==void 0)return mx(e)?r?oe(e):e:`var(--${o}-${e})`}function sn(e){return Xe(e,"mantine-spacing")}function kt(e){return e===void 0?"var(--mantine-radius-default)":Xe(e,"mantine-radius")}function nn(e){return Xe(e,"mantine-font-size")}function PR(e){return Xe(e,"mantine-line-height",!1)}function Fp(e){if(e)return Xe(e,"mantine-shadow",!1)}function Cn(e,o){return r=>{e?.(r),o?.(r)}}function Zp(e,o){return e in o?fs(o[e]):fs(e)}function pp(e,o){const r=e.map(a=>({value:a,px:Zp(a,o)}));return r.sort((a,l)=>a.px-l.px),r}function Oi(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function VR(e,o,r){return r?Array.from(hu(r,o)?.querySelectorAll(e)||[]).findIndex(a=>a===r):null}function lu(e,o,r){return o===void 0&&r===void 0?e:o!==void 0&&r===void 0?Math.max(e,o):Math.min(o===void 0&&r!==void 0?e:Math.max(e,o),r)}function pu(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function YR(e,o){if(e===o||Number.isNaN(e)&&Number.isNaN(o))return!0;if(!(e instanceof Object)||!(o instanceof Object))return!1;const r=Object.keys(e),{length:a}=r;if(a!==Object.keys(o).length)return!1;for(let l=0;l{o.current=e}),b.useMemo(()=>(...r)=>o.current?.(...r),[])}function Du(e,o){const r=typeof o=="number"?o:o.delay,a=typeof o=="number"?!1:o.flushOnUnmount,l=typeof o=="number"?!1:o.leading,c=ba(e),u=b.useRef(0),f=b.useRef(()=>{}),h=b.useRef(l),p=Object.assign(b.useCallback((...g)=>{if(window.clearTimeout(u.current),l&&h.current){h.current=!1,c(...g);return}const v=()=>{u.current!==0&&(u.current=0,h.current=!0,c(...g))};f.current=v,p.flush=v,u.current=window.setTimeout(v,r),h.current=!1},[c,r,l]),{flush:f.current});return b.useEffect(()=>()=>{window.clearTimeout(u.current),a&&p.flush()},[p,a]),p}const A0=["mousedown","touchstart"];function GR(e,o,r){const a=b.useRef(null);return b.useEffect(()=>{const l=c=>{const{target:u}=c??{};if(Array.isArray(r)){const f=u?.hasAttribute("data-ignore-outside-clicks")||!document.body.contains(u)&&u.tagName!=="HTML";r.every(p=>!!p&&!c.composedPath().includes(p))&&!f&&e()}else a.current&&!a.current.contains(u)&&e()};return(o||A0).forEach(c=>document.addEventListener(c,l)),()=>{(o||A0).forEach(c=>document.removeEventListener(c,l))}},[a,e,r]),a}function XR(e,o){try{return e.addEventListener("change",o),()=>e.removeEventListener("change",o)}catch{return e.addListener(o),()=>e.removeListener(o)}}function qR(e,o){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function Qp(e,o,{getInitialValueInEffect:r}={getInitialValueInEffect:!0}){const[a,l]=b.useState(r?o:qR(e)),c=b.useRef(null);return b.useEffect(()=>{if("matchMedia"in window)return c.current=window.matchMedia(e),l(c.current.matches),XR(c.current,u=>l(u.matches))},[e]),a}const Gi=typeof document<"u"?b.useLayoutEffect:b.useEffect;function or(e,o){const r=b.useRef(!1);b.useEffect(()=>()=>{r.current=!1},[]),b.useEffect(()=>{if(r.current)return e();r.current=!0},o)}function vx({opened:e,shouldReturnFocus:o=!0}){const r=b.useRef(null),a=()=>{r.current&&"focus"in r.current&&typeof r.current.focus=="function"&&r.current?.focus({preventScroll:!0})};return or(()=>{let l=-1;const c=u=>{u.key==="Tab"&&window.clearTimeout(l)};return document.addEventListener("keydown",c),e?r.current=document.activeElement:o&&(l=window.setTimeout(a,10)),()=>{window.clearTimeout(l),document.removeEventListener("keydown",c)}},[e,o]),a}const IR=/input|select|textarea|button|object/,yx="a, input, select, textarea, button, object, [tabindex]";function FR(e){return e.style.display==="none"}function ZR(e){if(e.getAttribute("aria-hidden")||e.getAttribute("hidden")||e.getAttribute("type")==="hidden")return!1;let r=e;for(;r&&!(r===document.body||r.nodeType===11);){if(FR(r))return!1;r=r.parentNode}return!0}function bx(e){let o=e.getAttribute("tabindex");return o===null&&(o=void 0),parseInt(o,10)}function mp(e){const o=e.nodeName.toLowerCase(),r=!Number.isNaN(bx(e));return(IR.test(o)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||r)&&ZR(e)}function xx(e){const o=bx(e);return(Number.isNaN(o)||o>=0)&&mp(e)}function QR(e){return Array.from(e.querySelectorAll(yx)).filter(xx)}function KR(e,o){const r=QR(e);if(!r.length){o.preventDefault();return}const a=r[o.shiftKey?0:r.length-1],l=e.getRootNode();let c=a===l.activeElement||e===l.activeElement;const u=l.activeElement;if(u.tagName==="INPUT"&&u.getAttribute("type")==="radio"&&(c=r.filter(g=>g.getAttribute("type")==="radio"&&g.getAttribute("name")===u.getAttribute("name")).includes(a)),!c)return;o.preventDefault();const h=r[o.shiftKey?r.length-1:0];h&&h.focus()}function WR(e=!0){const o=b.useRef(null),r=l=>{let c=l.querySelector("[data-autofocus]");if(!c){const u=Array.from(l.querySelectorAll(yx));c=u.find(xx)||u.find(mp)||null,!c&&mp(l)&&(c=l)}c&&c.focus({preventScroll:!0})},a=b.useCallback(l=>{e&&l!==null&&o.current!==l&&(l?(setTimeout(()=>{l.getRootNode()&&r(l)}),o.current=l):o.current=null)},[e]);return b.useEffect(()=>{if(!e)return;o.current&&setTimeout(()=>r(o.current));const l=c=>{c.key==="Tab"&&o.current&&KR(o.current,c)};return document.addEventListener("keydown",l),()=>document.removeEventListener("keydown",l)},[e]),a}const JR=e=>(e+1)%1e6;function eT(){const[,e]=b.useReducer(JR,0);return e}const tT=Ye.useId||(()=>{});function nT(){const e=tT();return e?`mantine-${e.replace(/:/g,"")}`:""}function Jn(e){const o=nT(),[r,a]=b.useState(o);return Gi(()=>{a(pu())},[]),typeof e=="string"?e:typeof window>"u"?o:r}function Sx(e,o,r){b.useEffect(()=>(window.addEventListener(e,o,r),()=>window.removeEventListener(e,o,r)),[e,o])}function mu(e,o){if(typeof e=="function")return e(o);typeof e=="object"&&e!==null&&"current"in e&&(e.current=o)}function wx(...e){const o=new Map;return r=>{if(e.forEach(a=>{const l=mu(a,r);l&&o.set(a,l)}),o.size>0)return()=>{e.forEach(a=>{const l=o.get(a);l?l():mu(a,null)}),o.clear()}}}function Mt(...e){return b.useCallback(wx(...e),e)}function Wn({value:e,defaultValue:o,finalValue:r,onChange:a=()=>{}}){const[l,c]=b.useState(o!==void 0?o:r),u=(f,...h)=>{c(f),a?.(f,...h)};return e!==void 0?[e,a,!0]:[l,u,!1]}function Nu(e,o){return Qp("(prefers-reduced-motion: reduce)",e,o)}function oT(e,o){if(!e||!o)return!1;if(e===o)return!0;if(e.length!==o.length)return!1;for(let r=0;r{c(p=>p||(r?.(),!0))},[r]),f=b.useCallback(()=>{c(p=>p&&(a?.(),!1))},[a]),h=b.useCallback(()=>{l?f():u()},[f,u,l]);return[l,{open:u,close:f,toggle:h}]}function lT(e,o,r={autoInvoke:!1}){const a=b.useRef(null),l=b.useCallback((...u)=>{a.current||(a.current=window.setTimeout(()=>{e(u),a.current=null},o))},[o]),c=b.useCallback(()=>{a.current&&(window.clearTimeout(a.current),a.current=null)},[]);return b.useEffect(()=>(r.autoInvoke&&l(),c),[c,l]),{start:l,clear:c}}function sT(e){const o=b.useRef(void 0);return b.useEffect(()=>{o.current=e},[e]),o.current}function cT(e,o,r){const a=b.useRef(null),l=b.useRef(null);return b.useEffect(()=>{const c=typeof r=="function"?r():r;return(c||l.current)&&(a.current=new MutationObserver(e),a.current.observe(c||l.current,o)),()=>{a.current?.disconnect()}},[e,o]),l}function uT(){const[e,o]=b.useState(!1);return b.useEffect(()=>o(!0),[]),e}var fT={};function dT(){return typeof process<"u"&&fT?"production":"development"}function Au(e){const o=Ye.version;return typeof Ye.version!="string"||o.startsWith("18.")?e?.ref:e?.props?.ref}function Cx(e){var o,r,a="";if(typeof e=="string"||typeof e=="number")a+=e;else if(typeof e=="object")if(Array.isArray(e)){var l=e.length;for(o=0;o{Object.entries(r).forEach(([a,l])=>{o[a]?o[a]=zt(o[a],l):o[a]=l})}),o}function zu({theme:e,classNames:o,props:r,stylesCtx:a}){const c=(Array.isArray(o)?o:[o]).map(u=>typeof u=="function"?u(e,r,a):u||hT);return pT(c)}function gu({theme:e,styles:o,props:r,stylesCtx:a}){return(Array.isArray(o)?o:[o]).reduce((c,u)=>typeof u=="function"?{...c,...u(e,r,a)}:{...c,...u},{})}const Ex=b.createContext(null);function ar(){const e=b.useContext(Ex);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function mT(){return ar().cssVariablesResolver}function gT(){return ar().classNamesPrefix}function Kp(){return ar().getStyleNonce}function vT(){return ar().withStaticClasses}function yT(){return ar().headless}function bT(){return ar().stylesTransform?.sx}function xT(){return ar().stylesTransform?.styles}function Wp(){return ar().env||"default"}function ST(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function wT(e){let o=e.replace("#","");if(o.length===3){const u=o.split("");o=[u[0],u[0],u[1],u[1],u[2],u[2]].join("")}if(o.length===8){const u=parseInt(o.slice(6,8),16)/255;return{r:parseInt(o.slice(0,2),16),g:parseInt(o.slice(2,4),16),b:parseInt(o.slice(4,6),16),a:u}}const r=parseInt(o,16),a=r>>16&255,l=r>>8&255,c=r&255;return{r:a,g:l,b:c,a:1}}function CT(e){const[o,r,a,l]=e.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r:o,g:r,b:a,a:l||1}}function ET(e){const o=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,r=e.match(o);if(!r)return{r:0,g:0,b:0,a:1};const a=parseInt(r[1],10),l=parseInt(r[2],10)/100,c=parseInt(r[3],10)/100,u=r[5]?parseFloat(r[5]):void 0,f=(1-Math.abs(2*c-1))*l,h=a/60,p=f*(1-Math.abs(h%2-1)),g=c-f/2;let v,x,S;return h>=0&&h<1?(v=f,x=p,S=0):h>=1&&h<2?(v=p,x=f,S=0):h>=2&&h<3?(v=0,x=f,S=p):h>=3&&h<4?(v=0,x=p,S=f):h>=4&&h<5?(v=p,x=0,S=f):(v=f,x=0,S=p),{r:Math.round((v+g)*255),g:Math.round((x+g)*255),b:Math.round((S+g)*255),a:u||1}}function Jp(e){return ST(e)?wT(e):e.startsWith("rgb")?CT(e):e.startsWith("hsl")?ET(e):{r:0,g:0,b:0,a:1}}function Ic(e,o){if(e.startsWith("var("))return`color-mix(in srgb, ${e}, black ${o*100}%)`;const{r,g:a,b:l,a:c}=Jp(e),u=1-o,f=h=>Math.round(h*u);return`rgba(${f(r)}, ${f(a)}, ${f(l)}, ${c})`}function ds(e,o){return typeof e.primaryShade=="number"?e.primaryShade:o==="dark"?e.primaryShade.dark:e.primaryShade.light}function Mh(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function RT(e){const o=e.match(/oklch\((.*?)%\s/);return o?parseFloat(o[1]):null}function TT(e){if(e.startsWith("oklch("))return(RT(e)||0)/100;const{r:o,g:r,b:a}=Jp(e),l=o/255,c=r/255,u=a/255,f=Mh(l),h=Mh(c),p=Mh(u);return .2126*f+.7152*h+.0722*p}function es(e,o=.179){return e.startsWith("var(")?!1:TT(e)>o}function ir({color:e,theme:o,colorScheme:r}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:r==="dark"?o.white:o.black,shade:void 0,isThemeColor:!1,isLight:es(r==="dark"?o.white:o.black,o.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:r==="dark"?o.colors.dark[2]:o.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:es(r==="dark"?o.colors.dark[2]:o.colors.gray[6],o.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?o.white:o.black,shade:void 0,isThemeColor:!1,isLight:es(e==="white"?o.white:o.black,o.luminanceThreshold),variable:`--mantine-color-${e}`};const[a,l]=e.split("."),c=l?Number(l):void 0,u=a in o.colors;if(u){const f=c!==void 0?o.colors[a][c]:o.colors[a][ds(o,r||"light")];return{color:a,value:f,shade:c,isThemeColor:u,isLight:es(f,o.luminanceThreshold),variable:l?`--mantine-color-${a}-${c}`:`--mantine-color-${a}-filled`}}return{color:e,value:e,isThemeColor:u,isLight:es(e,o.luminanceThreshold),shade:c,variable:void 0}}function Zt(e,o){const r=ir({color:e||o.primaryColor,theme:o});return r.variable?`var(${r.variable})`:e}function gp(e,o){const r={from:e?.from||o.defaultGradient.from,to:e?.to||o.defaultGradient.to,deg:e?.deg??o.defaultGradient.deg??0},a=Zt(r.from,o),l=Zt(r.to,o);return`linear-gradient(${r.deg}deg, ${a} 0%, ${l} 100%)`}function Co(e,o){if(typeof e!="string"||o>1||o<0)return"rgba(0, 0, 0, 1)";if(e.startsWith("var(")){const c=(1-o)*100;return`color-mix(in srgb, ${e}, transparent ${c}%)`}if(e.startsWith("oklch"))return e.includes("/")?e.replace(/\/\s*[\d.]+\s*\)/,`/ ${o})`):e.replace(")",` / ${o})`);const{r,g:a,b:l}=Jp(e);return`rgba(${r}, ${a}, ${l}, ${o})`}const Ci=Co,_T=({color:e,theme:o,variant:r,gradient:a,autoContrast:l})=>{const c=ir({color:e,theme:o}),u=typeof l=="boolean"?l:o.autoContrast;if(r==="none")return{background:"transparent",hover:"transparent",color:"inherit",border:"none"};if(r==="filled"){const f=u&&c.isLight?"var(--mantine-color-black)":"var(--mantine-color-white)";return c.isThemeColor?c.shade===void 0?{background:`var(--mantine-color-${e}-filled)`,hover:`var(--mantine-color-${e}-filled-hover)`,color:f,border:`${oe(1)} solid transparent`}:{background:`var(--mantine-color-${c.color}-${c.shade})`,hover:`var(--mantine-color-${c.color}-${c.shade===9?8:c.shade+1})`,color:f,border:`${oe(1)} solid transparent`}:{background:e,hover:Ic(e,.1),color:f,border:`${oe(1)} solid transparent`}}if(r==="light"){if(c.isThemeColor){if(c.shade===void 0)return{background:`var(--mantine-color-${e}-light)`,hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${oe(1)} solid transparent`};const f=o.colors[c.color][c.shade];return{background:Co(f,.1),hover:Co(f,.12),color:`var(--mantine-color-${c.color}-${Math.min(c.shade,6)})`,border:`${oe(1)} solid transparent`}}return{background:Co(e,.1),hover:Co(e,.12),color:e,border:`${oe(1)} solid transparent`}}if(r==="outline")return c.isThemeColor?c.shade===void 0?{background:"transparent",hover:`var(--mantine-color-${e}-outline-hover)`,color:`var(--mantine-color-${e}-outline)`,border:`${oe(1)} solid var(--mantine-color-${e}-outline)`}:{background:"transparent",hover:Co(o.colors[c.color][c.shade],.05),color:`var(--mantine-color-${c.color}-${c.shade})`,border:`${oe(1)} solid var(--mantine-color-${c.color}-${c.shade})`}:{background:"transparent",hover:Co(e,.05),color:e,border:`${oe(1)} solid ${e}`};if(r==="subtle"){if(c.isThemeColor){if(c.shade===void 0)return{background:"transparent",hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${oe(1)} solid transparent`};const f=o.colors[c.color][c.shade];return{background:"transparent",hover:Co(f,.12),color:`var(--mantine-color-${c.color}-${Math.min(c.shade,6)})`,border:`${oe(1)} solid transparent`}}return{background:"transparent",hover:Co(e,.12),color:e,border:`${oe(1)} solid transparent`}}return r==="transparent"?c.isThemeColor?c.shade===void 0?{background:"transparent",hover:"transparent",color:`var(--mantine-color-${e}-light-color)`,border:`${oe(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:`var(--mantine-color-${c.color}-${Math.min(c.shade,6)})`,border:`${oe(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:e,border:`${oe(1)} solid transparent`}:r==="white"?c.isThemeColor?c.shade===void 0?{background:"var(--mantine-color-white)",hover:Ic(o.white,.01),color:`var(--mantine-color-${e}-filled)`,border:`${oe(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Ic(o.white,.01),color:`var(--mantine-color-${c.color}-${c.shade})`,border:`${oe(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Ic(o.white,.01),color:e,border:`${oe(1)} solid transparent`}:r==="gradient"?{background:gp(a,o),hover:gp(a,o),color:"var(--mantine-color-white)",border:"none"}:r==="default"?{background:"var(--mantine-color-default)",hover:"var(--mantine-color-default-hover)",color:"var(--mantine-color-default-color)",border:`${oe(1)} solid var(--mantine-color-default-border)`}:{}},DT={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},z0="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",em={scale:1,fontSmoothing:!0,focusRing:"auto",white:"#fff",black:"#000",colors:DT,primaryShade:{light:6,dark:8},primaryColor:"blue",variantColorResolver:_T,autoContrast:!1,luminanceThreshold:.3,fontFamily:z0,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",respectReducedMotion:!1,cursorType:"default",defaultGradient:{from:"blue",to:"cyan",deg:45},defaultRadius:"sm",activeClassName:"mantine-active",focusClassName:"",headings:{fontFamily:z0,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:oe(34),lineHeight:"1.3"},h2:{fontSize:oe(26),lineHeight:"1.35"},h3:{fontSize:oe(22),lineHeight:"1.4"},h4:{fontSize:oe(18),lineHeight:"1.45"},h5:{fontSize:oe(16),lineHeight:"1.5"},h6:{fontSize:oe(14),lineHeight:"1.5"}}},fontSizes:{xs:oe(12),sm:oe(14),md:oe(16),lg:oe(18),xl:oe(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:oe(2),sm:oe(4),md:oe(8),lg:oe(16),xl:oe(32)},spacing:{xs:oe(10),sm:oe(12),md:oe(16),lg:oe(20),xl:oe(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${oe(1)} ${oe(3)} rgba(0, 0, 0, 0.05), 0 ${oe(1)} ${oe(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${oe(1)} ${oe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${oe(10)} ${oe(15)} ${oe(-5)}, rgba(0, 0, 0, 0.04) 0 ${oe(7)} ${oe(7)} ${oe(-5)}`,md:`0 ${oe(1)} ${oe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${oe(20)} ${oe(25)} ${oe(-5)}, rgba(0, 0, 0, 0.04) 0 ${oe(10)} ${oe(10)} ${oe(-5)}`,lg:`0 ${oe(1)} ${oe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${oe(28)} ${oe(23)} ${oe(-7)}, rgba(0, 0, 0, 0.04) 0 ${oe(12)} ${oe(12)} ${oe(-7)}`,xl:`0 ${oe(1)} ${oe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${oe(36)} ${oe(28)} ${oe(-7)}, rgba(0, 0, 0, 0.04) 0 ${oe(17)} ${oe(17)} ${oe(-7)}`},other:{},components:{}};function M0(e){return e==="auto"||e==="dark"||e==="light"}function NT({key:e="mantine-color-scheme-value"}={}){let o;return{get:r=>{if(typeof window>"u")return r;try{const a=window.localStorage.getItem(e);return M0(a)?a:r}catch{return r}},set:r=>{try{window.localStorage.setItem(e,r)}catch(a){console.warn("[@mantine/core] Local storage color scheme manager was unable to save color scheme.",a)}},subscribe:r=>{o=a=>{a.storageArea===window.localStorage&&a.key===e&&M0(a.newValue)&&r(a.newValue)},window.addEventListener("storage",o)},unsubscribe:()=>{window.removeEventListener("storage",o)},clear:()=>{window.localStorage.removeItem(e)}}}const AT="[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more – https://mantine.dev/theming/colors/#primary-color",O0="[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";function Oh(e){return e<0||e>9?!1:parseInt(e.toString(),10)===e}function j0(e){if(!(e.primaryColor in e.colors))throw new Error(AT);if(typeof e.primaryShade=="object"&&(!Oh(e.primaryShade.dark)||!Oh(e.primaryShade.light)))throw new Error(O0);if(typeof e.primaryShade=="number"&&!Oh(e.primaryShade))throw new Error(O0)}function zT(e,o){if(!o)return j0(e),e;const r=Ip(e,o);return o.fontFamily&&!o.headings?.fontFamily&&(r.headings.fontFamily=o.fontFamily),j0(r),r}const tm=b.createContext(null),MT=()=>b.useContext(tm)||em;function cn(){const e=b.useContext(tm);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function Rx({theme:e,children:o,inherit:r=!0}){const a=MT(),l=b.useMemo(()=>zT(r?a:em,e),[e,a,r]);return y.jsx(tm.Provider,{value:l,children:o})}Rx.displayName="@mantine/core/MantineThemeProvider";function OT(){const e=cn(),o=Kp(),r=At(e.breakpoints).reduce((a,l)=>{const c=e.breakpoints[l].includes("px"),u=fs(e.breakpoints[l]),f=c?`${u-.1}px`:du(u-.1),h=c?`${u}px`:du(u);return`${a}@media (max-width: ${f}) {.mantine-visible-from-${l} {display: none !important;}}@media (min-width: ${h}) {.mantine-hidden-from-${l} {display: none !important;}}`},"");return y.jsx("style",{"data-mantine-styles":"classes",nonce:o?.(),dangerouslySetInnerHTML:{__html:r}})}function jh(e){return Object.entries(e).map(([o,r])=>`${o}: ${r};`).join("")}function ts(e,o){return(Array.isArray(e)?e:[e]).reduce((a,l)=>`${l}{${a}}`,o)}function jT(e,o){const r=jh(e.variables),a=r?ts(o,r):"",l=jh(e.dark),c=jh(e.light),u=l?ts(o===":host"?`${o}([data-mantine-color-scheme="dark"])`:`${o}[data-mantine-color-scheme="dark"]`,l):"",f=c?ts(o===":host"?`${o}([data-mantine-color-scheme="light"])`:`${o}[data-mantine-color-scheme="light"]`,c):"";return`${a}${u}${f}`}function Mu({color:e,theme:o,autoContrast:r}){return(typeof r=="boolean"?r:o.autoContrast)&&ir({color:e||o.primaryColor,theme:o}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function B0(e,o){return Mu({color:e.colors[e.primaryColor][ds(e,o)],theme:e,autoContrast:null})}function Fc({theme:e,color:o,colorScheme:r,name:a=o,withColorValues:l=!0}){if(!e.colors[o])return{};if(r==="light"){const f=ds(e,"light"),h={[`--mantine-color-${a}-text`]:`var(--mantine-color-${a}-filled)`,[`--mantine-color-${a}-filled`]:`var(--mantine-color-${a}-${f})`,[`--mantine-color-${a}-filled-hover`]:`var(--mantine-color-${a}-${f===9?8:f+1})`,[`--mantine-color-${a}-light`]:Ci(e.colors[o][f],.1),[`--mantine-color-${a}-light-hover`]:Ci(e.colors[o][f],.12),[`--mantine-color-${a}-light-color`]:`var(--mantine-color-${a}-${f})`,[`--mantine-color-${a}-outline`]:`var(--mantine-color-${a}-${f})`,[`--mantine-color-${a}-outline-hover`]:Ci(e.colors[o][f],.05)};return l?{[`--mantine-color-${a}-0`]:e.colors[o][0],[`--mantine-color-${a}-1`]:e.colors[o][1],[`--mantine-color-${a}-2`]:e.colors[o][2],[`--mantine-color-${a}-3`]:e.colors[o][3],[`--mantine-color-${a}-4`]:e.colors[o][4],[`--mantine-color-${a}-5`]:e.colors[o][5],[`--mantine-color-${a}-6`]:e.colors[o][6],[`--mantine-color-${a}-7`]:e.colors[o][7],[`--mantine-color-${a}-8`]:e.colors[o][8],[`--mantine-color-${a}-9`]:e.colors[o][9],...h}:h}const c=ds(e,"dark"),u={[`--mantine-color-${a}-text`]:`var(--mantine-color-${a}-4)`,[`--mantine-color-${a}-filled`]:`var(--mantine-color-${a}-${c})`,[`--mantine-color-${a}-filled-hover`]:`var(--mantine-color-${a}-${c===9?8:c+1})`,[`--mantine-color-${a}-light`]:Ci(e.colors[o][Math.max(0,c-2)],.15),[`--mantine-color-${a}-light-hover`]:Ci(e.colors[o][Math.max(0,c-2)],.2),[`--mantine-color-${a}-light-color`]:`var(--mantine-color-${a}-${Math.max(c-5,0)})`,[`--mantine-color-${a}-outline`]:`var(--mantine-color-${a}-${Math.max(c-4,0)})`,[`--mantine-color-${a}-outline-hover`]:Ci(e.colors[o][Math.max(c-4,0)],.05)};return l?{[`--mantine-color-${a}-0`]:e.colors[o][0],[`--mantine-color-${a}-1`]:e.colors[o][1],[`--mantine-color-${a}-2`]:e.colors[o][2],[`--mantine-color-${a}-3`]:e.colors[o][3],[`--mantine-color-${a}-4`]:e.colors[o][4],[`--mantine-color-${a}-5`]:e.colors[o][5],[`--mantine-color-${a}-6`]:e.colors[o][6],[`--mantine-color-${a}-7`]:e.colors[o][7],[`--mantine-color-${a}-8`]:e.colors[o][8],[`--mantine-color-${a}-9`]:e.colors[o][9],...u}:u}function BT(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Ei(e,o,r){At(o).forEach(a=>Object.assign(e,{[`--mantine-${r}-${a}`]:o[a]}))}const Tx=e=>{const o=ds(e,"light"),r=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:oe(e.defaultRadius),a={variables:{"--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-color-scheme":"light dark","--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":r,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-primary-color-contrast":B0(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${o})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)","--mantine-color-disabled":"var(--mantine-color-gray-2)","--mantine-color-disabled-color":"var(--mantine-color-gray-5)","--mantine-color-disabled-border":"var(--mantine-color-gray-3)"},dark:{"--mantine-primary-color-contrast":B0(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)","--mantine-color-disabled":"var(--mantine-color-dark-6)","--mantine-color-disabled-color":"var(--mantine-color-dark-3)","--mantine-color-disabled-border":"var(--mantine-color-gray-6)"}};Ei(a.variables,e.breakpoints,"breakpoint"),Ei(a.variables,e.spacing,"spacing"),Ei(a.variables,e.fontSizes,"font-size"),Ei(a.variables,e.lineHeights,"line-height"),Ei(a.variables,e.shadows,"shadow"),Ei(a.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((c,u)=>{a.variables[`--mantine-primary-color-${u}`]=`var(--mantine-color-${e.primaryColor}-${u})`}),At(e.colors).forEach(c=>{const u=e.colors[c];if(BT(u)){Object.assign(a.light,Fc({theme:e,name:u.name,color:u.light,colorScheme:"light",withColorValues:!0})),Object.assign(a.dark,Fc({theme:e,name:u.name,color:u.dark,colorScheme:"dark",withColorValues:!0}));return}u.forEach((f,h)=>{a.variables[`--mantine-color-${c}-${h}`]=f}),Object.assign(a.light,Fc({theme:e,color:c,colorScheme:"light",withColorValues:!1})),Object.assign(a.dark,Fc({theme:e,color:c,colorScheme:"dark",withColorValues:!1}))});const l=e.headings.sizes;return At(l).forEach(c=>{a.variables[`--mantine-${c}-font-size`]=l[c].fontSize,a.variables[`--mantine-${c}-line-height`]=l[c].lineHeight,a.variables[`--mantine-${c}-font-weight`]=l[c].fontWeight||e.headings.fontWeight}),a};function $T({theme:e,generator:o}){const r=Tx(e),a=o?.(e);return a?Ip(r,a):r}const Bh=Tx(em);function LT(e){const o={variables:{},light:{},dark:{}};return At(e.variables).forEach(r=>{Bh.variables[r]!==e.variables[r]&&(o.variables[r]=e.variables[r])}),At(e.light).forEach(r=>{Bh.light[r]!==e.light[r]&&(o.light[r]=e.light[r])}),At(e.dark).forEach(r=>{Bh.dark[r]!==e.dark[r]&&(o.dark[r]=e.dark[r])}),o}function kT(e){return` + ${e}[data-mantine-color-scheme="dark"] { --mantine-color-scheme: dark; } + ${e}[data-mantine-color-scheme="light"] { --mantine-color-scheme: light; } +`}function _x({cssVariablesSelector:e,deduplicateCssVariables:o}){const r=cn(),a=Kp(),l=mT(),c=$T({theme:r,generator:l}),u=e===":root"&&o,f=u?LT(c):c,h=jT(f,e);return h?y.jsx("style",{"data-mantine-styles":!0,nonce:a?.(),dangerouslySetInnerHTML:{__html:`${h}${u?"":kT(e)}`}}):null}_x.displayName="@mantine/CssVariables";function Ri(e,o){const r=typeof window<"u"&&"matchMedia"in window&&window.matchMedia("(prefers-color-scheme: dark)")?.matches,a=e!=="auto"?e:r?"dark":"light";o()?.setAttribute("data-mantine-color-scheme",a)}function HT({manager:e,defaultColorScheme:o,getRootElement:r,forceColorScheme:a}){const l=b.useRef(null),[c,u]=b.useState(()=>e.get(o)),f=a||c,h=b.useCallback(g=>{a||(Ri(g,r),u(g),e.set(g))},[e.set,f,a]),p=b.useCallback(()=>{u(o),Ri(o,r),e.clear()},[e.clear,o]);return b.useEffect(()=>(e.subscribe(h),e.unsubscribe),[e.subscribe,e.unsubscribe]),Gi(()=>{Ri(e.get(o),r)},[]),b.useEffect(()=>{if(a)return Ri(a,r),()=>{};a===void 0&&Ri(c,r),typeof window<"u"&&"matchMedia"in window&&(l.current=window.matchMedia("(prefers-color-scheme: dark)"));const g=v=>{c==="auto"&&Ri(v.matches?"dark":"light",r)};return l.current?.addEventListener("change",g),()=>l.current?.removeEventListener("change",g)},[c,a]),{colorScheme:f,setColorScheme:h,clearColorScheme:p}}function UT({respectReducedMotion:e,getRootElement:o}){Gi(()=>{e&&o()?.setAttribute("data-respect-reduced-motion","true")},[e])}function Dx({theme:e,children:o,getStyleNonce:r,withStaticClasses:a=!0,withGlobalClasses:l=!0,deduplicateCssVariables:c=!0,withCssVariables:u=!0,cssVariablesSelector:f=":root",classNamesPrefix:h="mantine",colorSchemeManager:p=NT(),defaultColorScheme:g="light",getRootElement:v=()=>document.documentElement,cssVariablesResolver:x,forceColorScheme:S,stylesTransform:E,env:C}){const{colorScheme:R,setColorScheme:T,clearColorScheme:z}=HT({defaultColorScheme:g,forceColorScheme:S,manager:p,getRootElement:v});return UT({respectReducedMotion:e?.respectReducedMotion||!1,getRootElement:v}),y.jsx(Ex.Provider,{value:{colorScheme:R,setColorScheme:T,clearColorScheme:z,getRootElement:v,classNamesPrefix:h,getStyleNonce:r,cssVariablesResolver:x,cssVariablesSelector:f,withStaticClasses:a,stylesTransform:E,env:C},children:y.jsxs(Rx,{theme:e,children:[u&&y.jsx(_x,{cssVariablesSelector:f,deduplicateCssVariables:c}),l&&y.jsx(OT,{}),o]})})}Dx.displayName="@mantine/core/MantineProvider";function Xi({classNames:e,styles:o,props:r,stylesCtx:a}){const l=cn();return{resolvedClassNames:zu({theme:l,classNames:e,props:r,stylesCtx:a||void 0}),resolvedStyles:gu({theme:l,styles:o,props:r,stylesCtx:a||void 0})}}const PT={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function VT({theme:e,options:o,unstyled:r}){return zt(o?.focusable&&!r&&(e.focusClassName||PT[e.focusRing]),o?.active&&!r&&e.activeClassName)}function YT({selector:e,stylesCtx:o,options:r,props:a,theme:l}){return zu({theme:l,classNames:r?.classNames,props:r?.props||a,stylesCtx:o})[e]}function $0({selector:e,stylesCtx:o,theme:r,classNames:a,props:l}){return zu({theme:r,classNames:a,props:l,stylesCtx:o})[e]}function GT({rootSelector:e,selector:o,className:r}){return e===o?r:void 0}function XT({selector:e,classes:o,unstyled:r}){return r?void 0:o[e]}function qT({themeName:e,classNamesPrefix:o,selector:r,withStaticClass:a}){return a===!1?[]:e.map(l=>`${o}-${l}-${r}`)}function IT({themeName:e,theme:o,selector:r,props:a,stylesCtx:l}){return e.map(c=>zu({theme:o,classNames:o.components[c]?.classNames,props:a,stylesCtx:l})?.[r])}function FT({options:e,classes:o,selector:r,unstyled:a}){return e?.variant&&!a?o[`${r}--${e.variant}`]:void 0}function ZT({theme:e,options:o,themeName:r,selector:a,classNamesPrefix:l,classNames:c,classes:u,unstyled:f,className:h,rootSelector:p,props:g,stylesCtx:v,withStaticClasses:x,headless:S,transformedStyles:E}){return zt(VT({theme:e,options:o,unstyled:f||S}),IT({theme:e,themeName:r,selector:a,props:g,stylesCtx:v}),FT({options:o,classes:u,selector:a,unstyled:f}),$0({selector:a,stylesCtx:v,theme:e,classNames:c,props:g}),$0({selector:a,stylesCtx:v,theme:e,classNames:E,props:g}),YT({selector:a,stylesCtx:v,options:o,props:g,theme:e}),GT({rootSelector:p,selector:a,className:h}),XT({selector:a,classes:u,unstyled:f||S}),x&&!S&&qT({themeName:r,classNamesPrefix:l,selector:a,withStaticClass:o?.withStaticClass}),o?.className)}function QT({theme:e,themeName:o,props:r,stylesCtx:a,selector:l}){return o.map(c=>gu({theme:e,styles:e.components[c]?.styles,props:r,stylesCtx:a})[l]).reduce((c,u)=>({...c,...u}),{})}function vp({style:e,theme:o}){return Array.isArray(e)?[...e].reduce((r,a)=>({...r,...vp({style:a,theme:o})}),{}):typeof e=="function"?e(o):e??{}}function KT(e){return e.reduce((o,r)=>(r&&Object.keys(r).forEach(a=>{o[a]={...o[a],...xs(r[a])}}),o),{})}function WT({vars:e,varsResolver:o,theme:r,props:a,stylesCtx:l,selector:c,themeName:u,headless:f}){return KT([f?{}:o?.(r,a,l),...u.map(h=>r.components?.[h]?.vars?.(r,a,l)),e?.(r,a,l)])?.[c]}function JT({theme:e,themeName:o,selector:r,options:a,props:l,stylesCtx:c,rootSelector:u,styles:f,style:h,vars:p,varsResolver:g,headless:v,withStylesTransform:x}){return{...!x&&QT({theme:e,themeName:o,props:l,stylesCtx:c,selector:r}),...!x&&gu({theme:e,styles:f,props:l,stylesCtx:c})[r],...!x&&gu({theme:e,styles:a?.styles,props:a?.props||l,stylesCtx:c})[r],...WT({theme:e,props:l,stylesCtx:c,vars:p,varsResolver:g,selector:r,themeName:o,headless:v}),...u===r?vp({style:h,theme:e}):null,...vp({style:a?.style,theme:e})}}function e_({props:e,stylesCtx:o,themeName:r}){const a=cn(),l=xT()?.();return{getTransformedStyles:u=>l?[...u.map(h=>l(h,{props:e,theme:a,ctx:o})),...r.map(h=>l(a.components[h]?.styles,{props:e,theme:a,ctx:o}))].filter(Boolean):[],withStylesTransform:!!l}}function _e({name:e,classes:o,props:r,stylesCtx:a,className:l,style:c,rootSelector:u="root",unstyled:f,classNames:h,styles:p,vars:g,varsResolver:v}){const x=cn(),S=gT(),E=vT(),C=yT(),R=(Array.isArray(e)?e:[e]).filter(A=>A),{withStylesTransform:T,getTransformedStyles:z}=e_({props:r,stylesCtx:a,themeName:R});return(A,N)=>({className:ZT({theme:x,options:N,themeName:R,selector:A,classNamesPrefix:S,classNames:h,classes:o,unstyled:f,className:l,rootSelector:u,props:r,stylesCtx:a,withStaticClasses:E,headless:C,transformedStyles:z([N?.styles,p])}),style:JT({theme:x,themeName:R,selector:A,options:N,props:r,stylesCtx:a,rootSelector:u,styles:p,style:c,vars:g,varsResolver:v,headless:C,withStylesTransform:T})})}function Nx(e,o){return typeof e=="boolean"?e:o.autoContrast}function ce(e,o,r){const a=cn(),l=a.components[e]?.defaultProps,c=typeof l=="function"?l(a):l;return{...o,...c,...xs(r)}}function $h(e){return At(e).reduce((o,r)=>e[r]!==void 0?`${o}${jR(r)}:${e[r]};`:o,"").trim()}function t_({selector:e,styles:o,media:r,container:a}){const l=o?$h(o):"",c=Array.isArray(r)?r.map(f=>`@media${f.query}{${e}{${$h(f.styles)}}}`):[],u=Array.isArray(a)?a.map(f=>`@container ${f.query}{${e}{${$h(f.styles)}}}`):[];return`${l?`${e}{${l}}`:""}${c.join("")}${u.join("")}`.trim()}function Ou(e){const o=Kp();return y.jsx("style",{"data-mantine-styles":"inline",nonce:o?.(),dangerouslySetInnerHTML:{__html:t_(e)}})}function qi(e){const{m:o,mx:r,my:a,mt:l,mb:c,ml:u,mr:f,me:h,ms:p,p:g,px:v,py:x,pt:S,pb:E,pl:C,pr:R,pe:T,ps:z,bd:A,bg:N,c:B,opacity:M,ff:$,fz:L,fw:H,lts:I,ta:Y,lh:X,fs:ee,tt:ne,td:re,w:j,miw:k,maw:V,h:P,mih:Z,mah:D,bgsz:O,bgp:q,bgr:W,bga:ie,pos:ue,top:ve,left:fe,bottom:be,right:ye,inset:Ge,display:Ne,flex:Ke,hiddenFrom:Be,visibleFrom:tt,lightHidden:vt,darkHidden:pe,sx:me,...we}=e;return{styleProps:xs({m:o,mx:r,my:a,mt:l,mb:c,ml:u,mr:f,me:h,ms:p,p:g,px:v,py:x,pt:S,pb:E,pl:C,pr:R,pe:T,ps:z,bd:A,bg:N,c:B,opacity:M,ff:$,fz:L,fw:H,lts:I,ta:Y,lh:X,fs:ee,tt:ne,td:re,w:j,miw:k,maw:V,h:P,mih:Z,mah:D,bgsz:O,bgp:q,bgr:W,bga:ie,pos:ue,top:ve,left:fe,bottom:be,right:ye,inset:Ge,display:Ne,flex:Ke,hiddenFrom:Be,visibleFrom:tt,lightHidden:vt,darkHidden:pe,sx:me}),rest:we}}const n_={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"size",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function nm(e,o){const r=ir({color:e,theme:o});return r.color==="dimmed"?"var(--mantine-color-dimmed)":r.color==="bright"?"var(--mantine-color-bright)":r.variable?`var(${r.variable})`:r.color}function o_(e,o){const r=ir({color:e,theme:o});return r.isThemeColor&&r.shade===void 0?`var(--mantine-color-${r.color}-text)`:nm(e,o)}function r_(e,o){if(typeof e=="number")return oe(e);if(typeof e=="string"){const[r,a,...l]=e.split(" ").filter(u=>u.trim()!=="");let c=`${oe(r)}`;return a&&(c+=` ${a}`),l.length>0&&(c+=` ${nm(l.join(" "),o)}`),c.trim()}return e}const L0={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function a_(e){return typeof e=="string"&&e in L0?L0[e]:e}const i_=["h1","h2","h3","h4","h5","h6"];function l_(e,o){return typeof e=="string"&&e in o.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&i_.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?oe(e):e}function s_(e){return e}const c_=["h1","h2","h3","h4","h5","h6"];function u_(e,o){return typeof e=="string"&&e in o.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&c_.includes(e)?`var(--mantine-${e}-line-height)`:e}function f_(e){return typeof e=="number"?oe(e):e}function d_(e,o){if(typeof e=="number")return oe(e);if(typeof e=="string"){const r=e.replace("-","");if(!(r in o.spacing))return oe(e);const a=`--mantine-spacing-${r}`;return e.startsWith("-")?`calc(var(${a}) * -1)`:`var(${a})`}return e}const Lh={color:nm,textColor:o_,fontSize:l_,spacing:d_,identity:s_,size:f_,lineHeight:u_,fontFamily:a_,border:r_};function k0(e){return e.replace("(min-width: ","").replace("em)","")}function h_({media:e,...o}){const a=Object.keys(e).sort((l,c)=>Number(k0(l))-Number(k0(c))).map(l=>({query:l,styles:e[l]}));return{...o,media:a}}function p_(e){if(typeof e!="object"||e===null)return!1;const o=Object.keys(e);return!(o.length===1&&o[0]==="base")}function m_(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function g_(e){return typeof e=="object"&&e!==null?At(e).filter(o=>o!=="base"):[]}function v_(e,o){return typeof e=="object"&&e!==null&&o in e?e[o]:e}function y_({styleProps:e,data:o,theme:r}){return h_(At(e).reduce((a,l)=>{if(l==="hiddenFrom"||l==="visibleFrom"||l==="sx")return a;const c=o[l],u=Array.isArray(c.property)?c.property:[c.property],f=m_(e[l]);if(!p_(e[l]))return u.forEach(p=>{a.inlineStyles[p]=Lh[c.type](f,r)}),a;a.hasResponsiveStyles=!0;const h=g_(e[l]);return u.forEach(p=>{f&&(a.styles[p]=Lh[c.type](f,r)),h.forEach(g=>{const v=`(min-width: ${r.breakpoints[g]})`;a.media[v]={...a.media[v],[p]:Lh[c.type](v_(e[l],g),r)}})}),a},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function Ax(){return`__m__-${b.useId().replace(/:/g,"")}`}function om(e,o){return Array.isArray(e)?[...e].reduce((r,a)=>({...r,...om(a,o)}),{}):typeof e=="function"?e(o):e??{}}function zx(e){return e.startsWith("data-")?e:`data-${e}`}function b_(e){return Object.keys(e).reduce((o,r)=>{const a=e[r];return a===void 0||a===""||a===!1||a===null||(o[zx(r)]=e[r]),o},{})}function Mx(e){return e?typeof e=="string"?{[zx(e)]:!0}:Array.isArray(e)?[...e].reduce((o,r)=>({...o,...Mx(r)}),{}):b_(e):null}function yp(e,o){return Array.isArray(e)?[...e].reduce((r,a)=>({...r,...yp(a,o)}),{}):typeof e=="function"?e(o):e??{}}function x_({theme:e,style:o,vars:r,styleProps:a}){const l=yp(o,e),c=yp(r,e);return{...l,...c,...a}}const Ox=b.forwardRef(({component:e,style:o,__vars:r,className:a,variant:l,mod:c,size:u,hiddenFrom:f,visibleFrom:h,lightHidden:p,darkHidden:g,renderRoot:v,__size:x,...S},E)=>{const C=cn(),R=e||"div",{styleProps:T,rest:z}=qi(S),N=bT()?.()?.(T.sx),B=Ax(),M=y_({styleProps:T,theme:C,data:n_}),$={ref:E,style:x_({theme:C,style:o,vars:r,styleProps:M.inlineStyles}),className:zt(a,N,{[B]:M.hasResponsiveStyles,"mantine-light-hidden":p,"mantine-dark-hidden":g,[`mantine-hidden-from-${f}`]:f,[`mantine-visible-from-${h}`]:h}),"data-variant":l,"data-size":mx(u)?void 0:u||void 0,size:x,...Mx(c),...z};return y.jsxs(y.Fragment,{children:[M.hasResponsiveStyles&&y.jsx(Ou,{selector:`.${B}`,styles:M.styles,media:M.media}),typeof v=="function"?v($):y.jsx(R,{...$})]})});Ox.displayName="@mantine/core/Box";const he=Ox;function jx(e){return e}function S_(e){const o=e;return r=>{const a=b.forwardRef((l,c)=>y.jsx(o,{...r,...l,ref:c}));return a.extend=o.extend,a.displayName=`WithProps(${o.displayName})`,a}}function ge(e){const o=b.forwardRef(e);return o.extend=jx,o.withProps=r=>{const a=b.forwardRef((l,c)=>y.jsx(o,{...r,...l,ref:c}));return a.extend=o.extend,a.displayName=`WithProps(${o.displayName})`,a},o}function un(e){const o=b.forwardRef(e);return o.withProps=r=>{const a=b.forwardRef((l,c)=>y.jsx(o,{...r,...l,ref:c}));return a.extend=o.extend,a.displayName=`WithProps(${o.displayName})`,a},o.extend=jx,o}const w_=b.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function Ii(){return b.useContext(w_)}var co=ix();const Sa=Xp(co);function C_(e){if(!e||typeof e=="string")return 0;const o=e/36;return Math.round((4+15*o**.25+o/5)*10)}function kh(e){return e?.current?e.current.scrollHeight:"auto"}const ns=typeof window<"u"&&window.requestAnimationFrame;function E_({transitionDuration:e,transitionTimingFunction:o="ease",onTransitionEnd:r=()=>{},opened:a}){const l=b.useRef(null),c=0,u={height:0,overflow:"hidden"},[f,h]=b.useState(a?{}:u),p=E=>{co.flushSync(()=>h(E))},g=E=>{p(C=>({...C,...E}))};function v(E){const C=e||C_(E);return{transition:`height ${C}ms ${o}, opacity ${C}ms ${o}`}}or(()=>{typeof ns=="function"&&ns(a?()=>{g({willChange:"height",display:"block",overflow:"hidden"}),ns(()=>{const E=kh(l);g({...v(E),height:E})})}:()=>{const E=kh(l);g({...v(E),willChange:"height",height:E}),ns(()=>g({height:c,overflow:"hidden"}))})},[a]);const x=E=>{if(!(E.target!==l.current||E.propertyName!=="height"))if(a){const C=kh(l);C===f.height?p({}):g({height:C}),r()}else f.height===c&&(p(u),r())};function S({style:E={},refKey:C="ref",...R}={}){const T=R[C],z={"aria-hidden":!a,inert:!a,...R,[C]:wx(l,T),onTransitionEnd:x,style:{boxSizing:"border-box",...E,...f}};return Ye.version.startsWith("18")||(z.inert=!a),z}return S}const R_={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},rm=ge((e,o)=>{const{children:r,in:a,transitionDuration:l,transitionTimingFunction:c,style:u,onTransitionEnd:f,animateOpacity:h,...p}=ce("Collapse",R_,e),g=cn(),v=Nu(),S=(g.respectReducedMotion?v:!1)?0:l,E=E_({opened:a,transitionDuration:S,transitionTimingFunction:c,onTransitionEnd:f});return S===0?a?y.jsx(he,{...p,children:r}):null:y.jsx(he,{...E({style:{opacity:a||!h?1:0,transition:h?`opacity ${S}ms ${c}`:"none",...om(u,g)},ref:o,...p}),children:r})});rm.displayName="@mantine/core/Collapse";function ju(){return typeof window<"u"}function Fi(e){return Bx(e)?(e.nodeName||"").toLowerCase():"#document"}function dn(e){var o;return(e==null||(o=e.ownerDocument)==null?void 0:o.defaultView)||window}function lr(e){var o;return(o=(Bx(e)?e.ownerDocument:e.document)||window.document)==null?void 0:o.documentElement}function Bx(e){return ju()?e instanceof Node||e instanceof dn(e).Node:!1}function pt(e){return ju()?e instanceof Element||e instanceof dn(e).Element:!1}function yo(e){return ju()?e instanceof HTMLElement||e instanceof dn(e).HTMLElement:!1}function bp(e){return!ju()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof dn(e).ShadowRoot}function Bu(e){const{overflow:o,overflowX:r,overflowY:a,display:l}=ho(e);return/auto|scroll|overlay|hidden|clip/.test(o+a+r)&&l!=="inline"&&l!=="contents"}function T_(e){return/^(table|td|th)$/.test(Fi(e))}function $u(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const __=/transform|translate|scale|rotate|perspective|filter/,D_=/paint|layout|strict|content/,ma=e=>!!e&&e!=="none";let Hh;function am(e){const o=pt(e)?ho(e):e;return ma(o.transform)||ma(o.translate)||ma(o.scale)||ma(o.rotate)||ma(o.perspective)||!Lu()&&(ma(o.backdropFilter)||ma(o.filter))||__.test(o.willChange||"")||D_.test(o.contain||"")}function N_(e){let o=Xr(e);for(;yo(o)&&!_a(o);){if(am(o))return o;if($u(o))return null;o=Xr(o)}return null}function Lu(){return Hh==null&&(Hh=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),Hh}function _a(e){return/^(html|body|#document)$/.test(Fi(e))}function ho(e){return dn(e).getComputedStyle(e)}function ku(e){return pt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Xr(e){if(Fi(e)==="html")return e;const o=e.assignedSlot||e.parentNode||bp(e)&&e.host||lr(e);return bp(o)?o.host:o}function $x(e){const o=Xr(e);return _a(o)?(e.ownerDocument||e).body:yo(o)&&Bu(o)?o:$x(o)}function tr(e,o,r){var a;o===void 0&&(o=[]),r===void 0&&(r=!0);const l=$x(e),c=l===((a=e.ownerDocument)==null?void 0:a.body),u=dn(l);if(c){const f=xp(u);return o.concat(u,u.visualViewport||[],Bu(l)?l:[],f&&r?tr(f):[])}else return o.concat(l,tr(l,[],r))}function xp(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function H0(e){let o=e.activeElement;for(;((r=o)==null||(r=r.shadowRoot)==null?void 0:r.activeElement)!=null;){var r;o=o.shadowRoot.activeElement}return o}function hs(e,o){if(!e||!o)return!1;const r=o.getRootNode==null?void 0:o.getRootNode();if(e.contains(o))return!0;if(r&&bp(r)){let a=o;for(;a;){if(e===a)return!0;a=a.parentNode||a.host}}return!1}function Lx(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function kx(){const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?e.brands.map(o=>{let{brand:r,version:a}=o;return r+"/"+a}).join(" "):navigator.userAgent}function A_(e){return O_()?!1:!U0()&&e.width===0&&e.height===0||U0()&&e.width===1&&e.height===1&&e.pressure===0&&e.detail===0&&e.pointerType==="mouse"||e.width<1&&e.height<1&&e.pressure===0&&e.detail===0&&e.pointerType==="touch"}function z_(){return/apple/i.test(navigator.vendor)}function U0(){const e=/android/i;return e.test(Lx())||e.test(kx())}function M_(){return Lx().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function O_(){return kx().includes("jsdom/")}function Sp(e,o){const r=["mouse","pen"];return r.push("",void 0),r.includes(e)}function j_(e){return"nativeEvent"in e}function B_(e){return e.matches("html,body")}function wa(e){return e?.ownerDocument||document}function Uh(e,o){if(o==null)return!1;if("composedPath"in e)return e.composedPath().includes(o);const r=e;return r.target!=null&&o.contains(r.target)}function Ni(e){return"composedPath"in e?e.composedPath()[0]:e.target}const $_="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function L_(e){return yo(e)&&e.matches($_)}const k_=["top","right","bottom","left"],po=Math.min,Kn=Math.max,vu=Math.round,Zc=Math.floor,nr=e=>({x:e,y:e}),H_={left:"right",right:"left",bottom:"top",top:"bottom"};function Hx(e,o,r){return Kn(e,po(o,r))}function Do(e,o){return typeof e=="function"?e(o):e}function No(e){return e.split("-")[0]}function Zi(e){return e.split("-")[1]}function im(e){return e==="x"?"y":"x"}function lm(e){return e==="y"?"height":"width"}function uo(e){const o=e[0];return o==="t"||o==="b"?"y":"x"}function sm(e){return im(uo(e))}function U_(e,o,r){r===void 0&&(r=!1);const a=Zi(e),l=sm(e),c=lm(l);let u=l==="x"?a===(r?"end":"start")?"right":"left":a==="start"?"bottom":"top";return o.reference[c]>o.floating[c]&&(u=yu(u)),[u,yu(u)]}function P_(e){const o=yu(e);return[wp(e),o,wp(o)]}function wp(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const P0=["left","right"],V0=["right","left"],V_=["top","bottom"],Y_=["bottom","top"];function G_(e,o,r){switch(e){case"top":case"bottom":return r?o?V0:P0:o?P0:V0;case"left":case"right":return o?V_:Y_;default:return[]}}function X_(e,o,r,a){const l=Zi(e);let c=G_(No(e),r==="start",a);return l&&(c=c.map(u=>u+"-"+l),o&&(c=c.concat(c.map(wp)))),c}function yu(e){const o=No(e);return H_[o]+e.slice(o.length)}function q_(e){var o,r,a,l;return{top:(o=e.top)!=null?o:0,right:(r=e.right)!=null?r:0,bottom:(a=e.bottom)!=null?a:0,left:(l=e.left)!=null?l:0}}function cm(e){return typeof e!="number"?q_(e):{top:e,right:e,bottom:e,left:e}}function Gr(e){const{x:o,y:r,width:a,height:l}=e;return{width:a,height:l,top:r,left:o,right:o+a,bottom:r+l,x:o,y:r}}function Y0(e,o,r){let{reference:a,floating:l}=e;const c=uo(o),u=sm(o),f=lm(u),h=No(o),p=c==="y",g=a.x+a.width/2-l.width/2,v=a.y+a.height/2-l.height/2,x=a[f]/2-l[f]/2;let S;switch(h){case"top":S={x:g,y:a.y-l.height};break;case"bottom":S={x:g,y:a.y+a.height};break;case"right":S={x:a.x+a.width,y:v};break;case"left":S={x:a.x-l.width,y:v};break;default:S={x:a.x,y:a.y}}const E=Zi(o);return E&&(S[u]+=x*(E==="end"?1:-1)*(r&&p?-1:1)),S}async function I_(e,o){var r;o===void 0&&(o={});const{x:a,y:l,platform:c,rects:u,elements:f,strategy:h}=e,{boundary:p="clippingAncestors",rootBoundary:g="viewport",elementContext:v="floating",altBoundary:x=!1,padding:S=0}=Do(o,e),E=cm(S),R=f[x?v==="floating"?"reference":"floating":v],T=Gr(await c.getClippingRect({element:(r=await(c.isElement==null?void 0:c.isElement(R)))==null||r?R:R.contextElement||await(c.getDocumentElement==null?void 0:c.getDocumentElement(f.floating)),boundary:p,rootBoundary:g,strategy:h})),z=v==="floating"?{x:a,y:l,width:u.floating.width,height:u.floating.height}:u.reference,A=await(c.getOffsetParent==null?void 0:c.getOffsetParent(f.floating)),N=await(c.isElement==null?void 0:c.isElement(A))&&await(c.getScale==null?void 0:c.getScale(A))||{x:1,y:1},B=Gr(c.convertOffsetParentRelativeRectToViewportRelativeRect?await c.convertOffsetParentRelativeRectToViewportRelativeRect({elements:f,rect:z,offsetParent:A,strategy:h}):z);return{top:(T.top-B.top+E.top)/N.y,bottom:(B.bottom-T.bottom+E.bottom)/N.y,left:(T.left-B.left+E.left)/N.x,right:(B.right-T.right+E.right)/N.x}}const F_=50,Z_=async(e,o,r)=>{const{placement:a="bottom",strategy:l="absolute",middleware:c=[],platform:u}=r,f=u.detectOverflow?u:{...u,detectOverflow:I_},h=await(u.isRTL==null?void 0:u.isRTL(o));let p=await u.getElementRects({reference:e,floating:o,strategy:l}),{x:g,y:v}=Y0(p,a,h),x=a,S=0;const E={};for(let C=0;C({name:"arrow",options:e,async fn(o){const{x:r,y:a,placement:l,rects:c,platform:u,elements:f,middlewareData:h}=o,{element:p,padding:g=0}=Do(e,o)||{};if(p==null)return{};const v=cm(g),x={x:r,y:a},S=sm(l),E=lm(S),C=await u.getDimensions(p),R=S==="y",T=R?"top":"left",z=R?"bottom":"right",A=R?"clientHeight":"clientWidth",N=c.reference[E]+c.reference[S]-x[S]-c.floating[E],B=x[S]-c.reference[S],M=await(u.getOffsetParent==null?void 0:u.getOffsetParent(p));let $=M?M[A]:0;(!$||!await(u.isElement==null?void 0:u.isElement(M)))&&($=f.floating[A]||c.floating[E]);const L=N/2-B/2,H=$/2-C[E]/2-1,I=po(v[T],H),Y=po(v[z],H),X=$-C[E]-Y,ee=$/2-C[E]/2+L,ne=Hx(I,ee,X),re=!h.arrow&&Zi(l)!=null&&ee!==ne&&c.reference[E]/2-(eene<=0)){var Y,X;const ne=(((Y=c.flip)==null?void 0:Y.index)||0)+1,re=$[ne];if(re&&(!(v==="alignment"?z!==uo(re):!1)||I.every(V=>uo(V.placement)===z?V.overflows[0]>0:!0)))return{data:{index:ne,overflows:I},reset:{placement:re}};let j=(X=I.filter(k=>k.overflows[0]<=0).sort((k,V)=>k.overflows[1]-V.overflows[1])[0])==null?void 0:X.placement;if(!j)switch(S){case"bestFit":{var ee;const k=(ee=I.filter(V=>{if(M){const P=uo(V.placement);return P===z||P==="y"}return!0}).map(V=>[V.placement,V.overflows.filter(P=>P>0).reduce((P,Z)=>P+Z,0)]).sort((V,P)=>V[1]-P[1])[0])==null?void 0:ee[0];k&&(j=k);break}case"initialPlacement":j=f;break}if(l!==j)return{reset:{placement:j}}}return{}}}};function G0(e,o){return{top:e.top-o.height,right:e.right-o.width,bottom:e.bottom-o.height,left:e.left-o.width}}function X0(e){return k_.some(o=>e[o]>=0)}const W_=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(o){const{rects:r,platform:a}=o,{strategy:l="referenceHidden",...c}=Do(e,o);switch(l){case"referenceHidden":{const u=await a.detectOverflow(o,{...c,elementContext:"reference"}),f=G0(u,r.reference);return{data:{referenceHiddenOffsets:f,referenceHidden:X0(f)}}}case"escaped":{const u=await a.detectOverflow(o,{...c,altBoundary:!0}),f=G0(u,r.floating);return{data:{escapedOffsets:f,escaped:X0(f)}}}default:return{}}}}};function Ux(e){const o=po(...e.map(c=>c.left)),r=po(...e.map(c=>c.top)),a=Kn(...e.map(c=>c.right)),l=Kn(...e.map(c=>c.bottom));return{x:o,y:r,width:a-o,height:l-r}}function J_(e){const o=e.slice().sort((l,c)=>l.y-c.y),r=[];let a=null;for(let l=0;la.height/2?r.push([c]):r[r.length-1].push(c),a=c}return r.map(l=>Gr(Ux(l)))}const eD=function(e){return e===void 0&&(e={}),{name:"inline",options:e,async fn(o){const{placement:r,elements:a,rects:l,platform:c,strategy:u}=o,{padding:f=2,x:h,y:p}=Do(e,o),g=Array.from(await(c.getClientRects==null?void 0:c.getClientRects(a.reference))||[]);if(!g.length)return{};const v=J_(g),x=Gr(Ux(g)),S=cm(f);function E(){if(v.length===2&&(v[0].left>v[1].right||v[1].left>v[0].right)&&h!=null&&p!=null)return v.find(R=>h>R.left-S.left&&hR.top-S.top&&p=2){if(uo(r)==="y"){const M=v[0],$=v[v.length-1],L=No(r)==="top",H=M.top,I=$.bottom,Y=L?M.left:$.left,X=L?M.right:$.right;return Gr({x:Y,y:H,width:X-Y,height:I-H})}const R=No(r)==="left",T=Kn(...v.map(M=>M.right)),z=po(...v.map(M=>M.left)),A=v.filter(M=>R?M.left===z:M.right===T),N=A[0].top,B=A[A.length-1].bottom;return Gr({x:z,y:N,width:T-z,height:B-N})}return x}const C=await c.getElementRects({reference:{getBoundingClientRect:E},floating:a.floating,strategy:u});return l.reference.x!==C.reference.x||l.reference.y!==C.reference.y||l.reference.width!==C.reference.width||l.reference.height!==C.reference.height?{reset:{rects:C}}:{}}}},Px=new Set(["left","top"]);async function tD(e,o){const{placement:r,platform:a,elements:l}=e,c=await(a.isRTL==null?void 0:a.isRTL(l.floating)),u=No(r),f=Zi(r),h=uo(r)==="y",p=Px.has(u)?-1:1,g=c&&h?-1:1,v=Do(o,e);let{mainAxis:x,crossAxis:S,alignmentAxis:E}=typeof v=="number"?{mainAxis:v,crossAxis:0,alignmentAxis:null}:{mainAxis:v.mainAxis||0,crossAxis:v.crossAxis||0,alignmentAxis:v.alignmentAxis};return f&&typeof E=="number"&&(S=f==="end"?E*-1:E),h?{x:S*g,y:x*p}:{x:x*p,y:S*g}}const nD=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(o){var r,a;const{x:l,y:c,placement:u,middlewareData:f}=o,h=await tD(o,e);return u===((r=f.offset)==null?void 0:r.placement)&&(a=f.arrow)!=null&&a.alignmentOffset?{}:{x:l+h.x,y:c+h.y,data:{...h,placement:u}}}}},oD=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(o){const{x:r,y:a,placement:l,platform:c}=o,{mainAxis:u=!0,crossAxis:f=!1,limiter:h={fn:z=>{let{x:A,y:N}=z;return{x:A,y:N}}},...p}=Do(e,o),g={x:r,y:a},v=await c.detectOverflow(o,p),x=uo(l),S=im(x);let E=g[S],C=g[x];const R=(z,A)=>Hx(A+v[z==="y"?"top":"left"],A,A-v[z==="y"?"bottom":"right"]);u&&(E=R(S,E)),f&&(C=R(x,C));const T=h.fn({...o,[S]:E,[x]:C});return{...T,data:{x:T.x-r,y:T.y-a,enabled:{[S]:u,[x]:f}}}}}},rD=function(e){return e===void 0&&(e={}),{options:e,fn(o){var r,a;const{x:l,y:c,placement:u,rects:f,middlewareData:h}=o,{offset:p=0,mainAxis:g=!0,crossAxis:v=!0}=Do(e,o),x={x:l,y:c},S=uo(u),E=im(S);let C=x[E],R=x[S];const T=Do(p,o),z=typeof T=="number"?{mainAxis:T,crossAxis:0}:{mainAxis:(r=T.mainAxis)!=null?r:0,crossAxis:(a=T.crossAxis)!=null?a:0};if(g){const B=E==="y"?"height":"width",M=f.reference[E]-f.floating[B]+z.mainAxis,$=f.reference[E]+f.reference[B]-z.mainAxis;C$&&(C=$)}if(v){var A,N;const B=E==="y"?"width":"height",M=Px.has(No(u)),$=f.reference[S]-f.floating[B]+(M&&((A=h.offset)==null?void 0:A[S])||0)+(M?0:z.crossAxis),L=f.reference[S]+f.reference[B]+(M?0:((N=h.offset)==null?void 0:N[S])||0)-(M?z.crossAxis:0);R<$?R=$:R>L&&(R=L)}return{[E]:C,[S]:R}}}},aD=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(o){const{placement:r,rects:a,platform:l,elements:c}=o,{apply:u=()=>{},...f}=Do(e,o),h=await l.detectOverflow(o,f),p=No(r),g=Zi(r),v=uo(r)==="y",{width:x,height:S}=a.floating;let E,C;p==="top"||p==="bottom"?(E=p,C=g===(await(l.isRTL==null?void 0:l.isRTL(c.floating))?"start":"end")?"left":"right"):(C=p,E=g==="end"?"top":"bottom");const R=S-h.top-h.bottom,T=x-h.left-h.right,z=po(S-h[E],R),A=po(x-h[C],T),N=o.middlewareData.shift,B=!N;let M=z,$=A;N!=null&&N.enabled.x&&($=T),N!=null&&N.enabled.y&&(M=R),B&&!g&&(v?$=x-2*Kn(h.left,h.right):M=S-2*Kn(h.top,h.bottom)),await u({...o,availableWidth:$,availableHeight:M});const L=await l.getDimensions(c.floating);return x!==L.width||S!==L.height?{reset:{rects:!0}}:{}}}};function Vx(e){const o=ho(e);let r=parseFloat(o.width)||0,a=parseFloat(o.height)||0;const l=yo(e),c=l?e.offsetWidth:r,u=l?e.offsetHeight:a,f=vu(r)!==c||vu(a)!==u;return f&&(r=c,a=u),{width:r,height:a,$:f}}function um(e){return pt(e)?e:e.contextElement}function ji(e){const o=um(e);if(!yo(o))return nr(1);const r=o.getBoundingClientRect(),{width:a,height:l,$:c}=Vx(o);let u=(c?vu(r.width):r.width)/a,f=(c?vu(r.height):r.height)/l;return(!u||!Number.isFinite(u))&&(u=1),(!f||!Number.isFinite(f))&&(f=1),{x:u,y:f}}const iD=nr(0);function Yx(e){const o=dn(e);return!Lu()||!o.visualViewport?iD:{x:o.visualViewport.offsetLeft,y:o.visualViewport.offsetTop}}function lD(e,o,r){return o===void 0&&(o=!1),!!r&&o&&r===dn(e)}function Da(e,o,r,a){o===void 0&&(o=!1),r===void 0&&(r=!1);const l=e.getBoundingClientRect(),c=um(e);let u=nr(1);o&&(a?pt(a)&&(u=ji(a)):u=ji(e));const f=lD(c,r,a)?Yx(c):nr(0);let h=(l.left+f.x)/u.x,p=(l.top+f.y)/u.y,g=l.width/u.x,v=l.height/u.y;if(c&&a){const x=dn(c),S=pt(a)?dn(a):a;let E=x,C=xp(E);for(;C&&S!==E;){const R=ji(C),T=C.getBoundingClientRect(),z=ho(C),A=T.left+(C.clientLeft+parseFloat(z.paddingLeft))*R.x,N=T.top+(C.clientTop+parseFloat(z.paddingTop))*R.y;h*=R.x,p*=R.y,g*=R.x,v*=R.y,h+=A,p+=N,E=dn(C),C=xp(E)}}return Gr({width:g,height:v,x:h,y:p})}function Hu(e,o){const r=ku(e).scrollLeft;return o?o.left+r:Da(lr(e)).left+r}function Gx(e,o){const r=e.getBoundingClientRect(),a=r.left+o.scrollLeft-Hu(e,r),l=r.top+o.scrollTop;return{x:a,y:l}}function sD(e){let{elements:o,rect:r,offsetParent:a,strategy:l}=e;const c=l==="fixed",u=lr(a),f=o?$u(o.floating):!1;if(a===u||f&&c)return r;let h={scrollLeft:0,scrollTop:0},p=nr(1);const g=nr(0),v=yo(a);if((v||!c)&&((Fi(a)!=="body"||Bu(u))&&(h=ku(a)),v)){const S=Da(a);p=ji(a),g.x=S.x+a.clientLeft,g.y=S.y+a.clientTop}const x=u&&!v&&!c?Gx(u,h):nr(0);return{width:r.width*p.x,height:r.height*p.y,x:r.x*p.x-h.scrollLeft*p.x+g.x+x.x,y:r.y*p.y-h.scrollTop*p.y+g.y+x.y}}function cD(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function uD(e){const o=ku(e),r=e.ownerDocument.body,a=Kn(e.scrollWidth,e.clientWidth,r.scrollWidth,r.clientWidth),l=Kn(e.scrollHeight,e.clientHeight,r.scrollHeight,r.clientHeight);let c=-o.scrollLeft+Hu(e);const u=-o.scrollTop;return ho(r).direction==="rtl"&&(c+=Kn(e.clientWidth,r.clientWidth)-a),{width:a,height:l,x:c,y:u}}const fD=25;function dD(e,o,r){r===void 0&&(r="viewport");const a=r==="layoutViewport",l=dn(e),c=lr(e),u=l.visualViewport;let f=c.clientWidth,h=c.clientHeight,p=0,g=0;if(u){const x=!Lu()||o==="fixed";a?x||(p=-u.offsetLeft,g=-u.offsetTop):(f=u.width,h=u.height,x&&(p=u.offsetLeft,g=u.offsetTop))}if(Hu(c)<=0){const x=c.ownerDocument,S=x.body,E=getComputedStyle(S),C=x.compatMode==="CSS1Compat"&&parseFloat(E.marginLeft)+parseFloat(E.marginRight)||0,R=Math.abs(c.clientWidth-S.clientWidth-C),T=getComputedStyle(c).scrollbarGutter==="stable both-edges"?R/2:R;T<=fD&&(f-=T)}return{width:f,height:h,x:p,y:g}}function hD(e,o){const r=Da(e,!0,o==="fixed"),a=r.top+e.clientTop,l=r.left+e.clientLeft,c=ji(e),u=e.clientWidth*c.x,f=e.clientHeight*c.y,h=l*c.x,p=a*c.y;return{width:u,height:f,x:h,y:p}}function q0(e,o,r){let a;if(o==="viewport"||o==="layoutViewport")a=dD(e,r,o);else if(o==="document")a=uD(lr(e));else if(pt(o))a=hD(o,r);else{const l=Yx(e);a={x:o.x-l.x,y:o.y-l.y,width:o.width,height:o.height}}return Gr(a)}function pD(e,o){const r=o.get(e);if(r)return r;let a=tr(e,[],!1).filter(f=>pt(f)&&Fi(f)!=="body"),l=null;const c=ho(e).position==="fixed";let u=c?Xr(e):e;for(;pt(u)&&!_a(u);){const f=ho(u),h=am(u),p=l?l.position:c?"fixed":"";!h&&(p==="fixed"||p==="absolute"&&f.position==="static")?a=a.filter(v=>v!==u):l=f,u=Xr(u)}return o.set(e,a),a}function mD(e){let{element:o,boundary:r,rootBoundary:a,strategy:l}=e;const u=[...r==="clippingAncestors"?$u(o)?[]:pD(o,this._c):[].concat(r),a],f=q0(o,u[0],l);let h=f.top,p=f.right,g=f.bottom,v=f.left;for(let x=1;x{f(!1,1e-7)},1e3)}$=!1}try{a=new IntersectionObserver(L,{...M,root:c.ownerDocument})}catch{a=new IntersectionObserver(L,M)}a.observe(e)}const h=dn(e),p=()=>f(r);return h.addEventListener("resize",p),f(!0),()=>{h.removeEventListener("resize",p),u()}}function wD(e,o,r,a){a===void 0&&(a={});const{ancestorScroll:l=!0,ancestorResize:c=!0,elementResize:u=typeof ResizeObserver=="function",layoutShift:f=typeof IntersectionObserver=="function",animationFrame:h=!1}=a,p=um(e),g=l||c?[...p?tr(p):[],...o?tr(o):[]]:[];g.forEach(T=>{l&&T.addEventListener("scroll",r),c&&T.addEventListener("resize",r)});const v=p&&f?SD(p,r,c):null;let x=-1,S=null;u&&(S=new ResizeObserver(T=>{let[z]=T;z&&z.target===p&&S&&o&&(S.unobserve(o),cancelAnimationFrame(x),x=requestAnimationFrame(()=>{var A;(A=S)==null||A.observe(o)})),r()}),p&&!h&&S.observe(p),o&&S.observe(o));let E,C=h?Da(e):null;h&&R();function R(){const T=Da(e);C&&!qx(C,T)&&r(),C=T,E=requestAnimationFrame(R)}return r(),()=>{var T;g.forEach(z=>{l&&z.removeEventListener("scroll",r),c&&z.removeEventListener("resize",r)}),v?.(),(T=S)==null||T.disconnect(),S=null,h&&cancelAnimationFrame(E)}}const CD=nD,ED=oD,RD=K_,TD=aD,_D=W_,F0=Q_,DD=eD,ND=rD,AD=(e,o,r)=>{const a=new Map,l=r??{},c={...xD,...l.platform,_c:a};return Z_(e,o,{...l,platform:c})};var zD=typeof document<"u",MD=function(){},su=zD?b.useLayoutEffect:MD;function bu(e,o){if(e===o)return!0;if(typeof e!=typeof o)return!1;if(typeof e=="function"&&e.toString()===o.toString())return!0;let r,a,l;if(e&&o&&typeof e=="object"){if(Array.isArray(e)){if(r=e.length,r!==o.length)return!1;for(a=r;a--!==0;)if(!bu(e[a],o[a]))return!1;return!0}if(l=Object.keys(e),r=l.length,r!==Object.keys(o).length)return!1;for(a=r;a--!==0;)if(!{}.hasOwnProperty.call(o,l[a]))return!1;for(a=r;a--!==0;){const c=l[a];if(!(c==="_owner"&&e.$$typeof)&&!bu(e[c],o[c]))return!1}return!0}return e!==e&&o!==o}function Ix(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Z0(e,o){const r=Ix(e);return Math.round(o*r)/r}function Vh(e){const o=b.useRef(e);return su(()=>{o.current=e}),o}function OD(e){e===void 0&&(e={});const{placement:o="bottom",strategy:r="absolute",middleware:a=[],platform:l,elements:{reference:c,floating:u}={},transform:f=!0,whileElementsMounted:h,open:p}=e,[g,v]=b.useState({x:0,y:0,strategy:r,placement:o,middlewareData:{},isPositioned:!1}),[x,S]=b.useState(a);bu(x,a)||S(a);const[E,C]=b.useState(null),[R,T]=b.useState(null),z=b.useCallback(V=>{V!==M.current&&(M.current=V,C(V))},[]),A=b.useCallback(V=>{V!==$.current&&($.current=V,T(V))},[]),N=c||E,B=u||R,M=b.useRef(null),$=b.useRef(null),L=b.useRef(g),H=h!=null,I=Vh(h),Y=Vh(l),X=Vh(p),ee=b.useCallback(()=>{if(!M.current||!$.current)return;const V={placement:o,strategy:r,middleware:x};Y.current&&(V.platform=Y.current),AD(M.current,$.current,V).then(P=>{const Z={...P,isPositioned:X.current!==!1};ne.current&&!bu(L.current,Z)&&(L.current=Z,co.flushSync(()=>{v(Z)}))})},[x,o,r,Y,X]);su(()=>{p===!1&&L.current.isPositioned&&(L.current.isPositioned=!1,v(V=>({...V,isPositioned:!1})))},[p]);const ne=b.useRef(!1);su(()=>(ne.current=!0,()=>{ne.current=!1}),[]),su(()=>{if(N&&(M.current=N),B&&($.current=B),N&&B){if(I.current)return I.current(N,B,ee);ee()}},[N,B,ee,I,H]);const re=b.useMemo(()=>({reference:M,floating:$,setReference:z,setFloating:A}),[z,A]),j=b.useMemo(()=>({reference:N,floating:B}),[N,B]),k=b.useMemo(()=>{const V={position:r,left:0,top:0};if(!j.floating)return V;const P=Z0(j.floating,g.x),Z=Z0(j.floating,g.y);return f?{...V,transform:"translate("+P+"px, "+Z+"px)",...Ix(j.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:P,top:Z}},[r,f,j.floating,g.x,g.y]);return b.useMemo(()=>({...g,update:ee,refs:re,elements:j,floatingStyles:k}),[g,ee,re,j,k])}const jD=e=>{function o(r){return{}.hasOwnProperty.call(r,"current")}return{name:"arrow",options:e,fn(r){const{element:a,padding:l}=typeof e=="function"?e(r):e;return a&&o(a)?a.current!=null?F0({element:a.current,padding:l}).fn(r):{}:a?F0({element:a,padding:l}).fn(r):{}}}},Fx=(e,o)=>{const r=CD(e);return{name:r.name,fn:r.fn,options:[e,o]}},fm=(e,o)=>{const r=ED(e);return{name:r.name,fn:r.fn,options:[e,o]}},Q0=(e,o)=>({fn:ND(e).fn,options:[e,o]}),xu=(e,o)=>{const r=RD(e);return{name:r.name,fn:r.fn,options:[e,o]}},BD=(e,o)=>{const r=TD(e);return{name:r.name,fn:r.fn,options:[e,o]}},$D=(e,o)=>{const r=_D(e);return{name:r.name,fn:r.fn,options:[e,o]}},is=(e,o)=>{const r=DD(e);return{name:r.name,fn:r.fn,options:[e,o]}},Zx=(e,o)=>{const r=jD(e);return{name:r.name,fn:r.fn,options:[e,o]}};function LD(e){return b.useMemo(()=>e.every(o=>o==null)?null:o=>{e.forEach(r=>{typeof r=="function"?r(o):r!=null&&(r.current=o)})},e)}const Qx={...X2},kD=Qx.useInsertionEffect,HD=kD||(e=>e());function er(e){const o=b.useRef(()=>{});return HD(()=>{o.current=e}),b.useCallback(function(){for(var r=arguments.length,a=new Array(r),l=0;l"floating-ui-"+Math.random().toString(36).slice(2,6)+UD++;function PD(){const[e,o]=b.useState(()=>K0?W0():void 0);return _o(()=>{e==null&&o(W0())},[]),b.useEffect(()=>{K0=!0},[]),e}const VD=Qx.useId,Kx=VD||PD;function YD(){const e=new Map;return{emit(o,r){var a;(a=e.get(o))==null||a.forEach(l=>l(r))},on(o,r){e.set(o,[...e.get(o)||[],r])},off(o,r){var a;e.set(o,((a=e.get(o))==null?void 0:a.filter(l=>l!==r))||[])}}}const GD=b.createContext(null),XD=b.createContext(null),dm=()=>{var e;return((e=b.useContext(GD))==null?void 0:e.id)||null},hm=()=>b.useContext(XD);function pm(e){return"data-floating-ui-"+e}function Yh(e){const o=b.useRef(e);return _o(()=>{o.current=e}),o}const J0=pm("safe-polygon");function cu(e,o,r){return r&&!Sp(r)?0:typeof e=="number"?e:e?.[o]}function qD(e,o){o===void 0&&(o={});const{open:r,onOpenChange:a,dataRef:l,events:c,elements:u}=e,{enabled:f=!0,delay:h=0,handleClose:p=null,mouseOnly:g=!1,restMs:v=0,move:x=!0}=o,S=hm(),E=dm(),C=Yh(p),R=Yh(h),T=Yh(r),z=b.useRef(),A=b.useRef(-1),N=b.useRef(),B=b.useRef(-1),M=b.useRef(!0),$=b.useRef(!1),L=b.useRef(()=>{}),H=b.useRef(!1),I=b.useCallback(()=>{var k;const V=(k=l.current.openEvent)==null?void 0:k.type;return V?.includes("mouse")&&V!=="mousedown"},[l]);b.useEffect(()=>{if(!f)return;function k(V){let{open:P}=V;P||(clearTimeout(A.current),clearTimeout(B.current),M.current=!0,H.current=!1)}return c.on("openchange",k),()=>{c.off("openchange",k)}},[f,c]),b.useEffect(()=>{if(!f||!C.current||!r)return;function k(P){I()&&a(!1,P,"hover")}const V=wa(u.floating).documentElement;return V.addEventListener("mouseleave",k),()=>{V.removeEventListener("mouseleave",k)}},[u.floating,r,a,f,C,I]);const Y=b.useCallback(function(k,V,P){V===void 0&&(V=!0),P===void 0&&(P="hover");const Z=cu(R.current,"close",z.current);Z&&!N.current?(clearTimeout(A.current),A.current=window.setTimeout(()=>a(!1,k,P),Z)):V&&(clearTimeout(A.current),a(!1,k,P))},[R,a]),X=er(()=>{L.current(),N.current=void 0}),ee=er(()=>{if($.current){const k=wa(u.floating).body;k.style.pointerEvents="",k.removeAttribute(J0),$.current=!1}}),ne=er(()=>l.current.openEvent?["click","mousedown"].includes(l.current.openEvent.type):!1);b.useEffect(()=>{if(!f)return;function k(D){if(clearTimeout(A.current),M.current=!1,g&&!Sp(z.current)||v>0&&!cu(R.current,"open"))return;const O=cu(R.current,"open",z.current);O?A.current=window.setTimeout(()=>{T.current||a(!0,D,"hover")},O):r||a(!0,D,"hover")}function V(D){if(ne())return;L.current();const O=wa(u.floating);if(clearTimeout(B.current),H.current=!1,C.current&&l.current.floatingContext){r||clearTimeout(A.current),N.current=C.current({...l.current.floatingContext,tree:S,x:D.clientX,y:D.clientY,onClose(){ee(),X(),ne()||Y(D,!0,"safe-polygon")}});const W=N.current;O.addEventListener("mousemove",W),L.current=()=>{O.removeEventListener("mousemove",W)};return}(z.current!=="touch"||!hs(u.floating,D.relatedTarget))&&Y(D)}function P(D){ne()||l.current.floatingContext&&(C.current==null||C.current({...l.current.floatingContext,tree:S,x:D.clientX,y:D.clientY,onClose(){ee(),X(),ne()||Y(D)}})(D))}if(pt(u.domReference)){var Z;const D=u.domReference;return r&&D.addEventListener("mouseleave",P),(Z=u.floating)==null||Z.addEventListener("mouseleave",P),x&&D.addEventListener("mousemove",k,{once:!0}),D.addEventListener("mouseenter",k),D.addEventListener("mouseleave",V),()=>{var O;r&&D.removeEventListener("mouseleave",P),(O=u.floating)==null||O.removeEventListener("mouseleave",P),x&&D.removeEventListener("mousemove",k),D.removeEventListener("mouseenter",k),D.removeEventListener("mouseleave",V)}}},[u,f,e,g,v,x,Y,X,ee,a,r,T,S,R,C,l,ne]),_o(()=>{var k;if(f&&r&&(k=C.current)!=null&&k.__options.blockPointerEvents&&I()){$.current=!0;const P=u.floating;if(pt(u.domReference)&&P){var V;const Z=wa(u.floating).body;Z.setAttribute(J0,"");const D=u.domReference,O=S==null||(V=S.nodesRef.current.find(q=>q.id===E))==null||(V=V.context)==null?void 0:V.elements.floating;return O&&(O.style.pointerEvents=""),Z.style.pointerEvents="none",D.style.pointerEvents="auto",P.style.pointerEvents="auto",()=>{Z.style.pointerEvents="",D.style.pointerEvents="",P.style.pointerEvents=""}}}},[f,r,E,u,S,C,I]),_o(()=>{r||(z.current=void 0,H.current=!1,X(),ee())},[r,X,ee]),b.useEffect(()=>()=>{X(),clearTimeout(A.current),clearTimeout(B.current),ee()},[f,u.domReference,X,ee]);const re=b.useMemo(()=>{function k(V){z.current=V.pointerType}return{onPointerDown:k,onPointerEnter:k,onMouseMove(V){const{nativeEvent:P}=V;function Z(){!M.current&&!T.current&&a(!0,P,"hover")}g&&!Sp(z.current)||r||v===0||H.current&&V.movementX**2+V.movementY**2<2||(clearTimeout(B.current),z.current==="touch"?Z():(H.current=!0,B.current=window.setTimeout(Z,v)))}}},[g,a,r,T,v]),j=b.useMemo(()=>({onMouseEnter(){clearTimeout(A.current)},onMouseLeave(k){ne()||Y(k.nativeEvent,!1)}}),[Y,ne]);return b.useMemo(()=>f?{reference:re,floating:j}:{},[f,re,j])}const Cp=()=>{},Wx=b.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:Cp,setState:Cp,isInstantPhase:!1}),ID=()=>b.useContext(Wx);function FD(e){const{children:o,delay:r,timeoutMs:a=0}=e,[l,c]=b.useReducer((h,p)=>({...h,...p}),{delay:r,timeoutMs:a,initialDelay:r,currentId:null,isInstantPhase:!1}),u=b.useRef(null),f=b.useCallback(h=>{c({currentId:h})},[]);return _o(()=>{l.currentId?u.current===null?u.current=l.currentId:l.isInstantPhase||c({isInstantPhase:!0}):(l.isInstantPhase&&c({isInstantPhase:!1}),u.current=null)},[l.currentId,l.isInstantPhase]),b.createElement(Wx.Provider,{value:b.useMemo(()=>({...l,setState:c,setCurrentId:f}),[l,f])},o)}function ZD(e,o){o===void 0&&(o={});const{open:r,onOpenChange:a,floatingId:l}=e,{id:c,enabled:u=!0}=o,f=c??l,h=ID(),{currentId:p,setCurrentId:g,initialDelay:v,setState:x,timeoutMs:S}=h;return _o(()=>{u&&p&&(x({delay:{open:1,close:cu(v,"close")}}),p!==f&&a(!1))},[u,f,a,x,p,v]),_o(()=>{function E(){a(!1),x({delay:v,currentId:null})}if(u&&p&&!r&&p===f){if(S){const C=window.setTimeout(E,S);return()=>{clearTimeout(C)}}E()}},[u,r,x,p,f,a,v,S]),_o(()=>{u&&(g===Cp||!r||g(f))},[u,r,g,f]),h}function Gh(e,o){let r=e.filter(l=>{var c;return l.parentId===o&&((c=l.context)==null?void 0:c.open)}),a=r;for(;a.length;)a=e.filter(l=>{var c;return(c=a)==null?void 0:c.some(u=>{var f;return l.parentId===u.id&&((f=l.context)==null?void 0:f.open)})}),r=r.concat(a);return r}const QD="data-floating-ui-focusable",KD={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},WD={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},e1=e=>{var o,r;return{escapeKey:typeof e=="boolean"?e:(o=e?.escapeKey)!=null?o:!1,outsidePress:typeof e=="boolean"?e:(r=e?.outsidePress)!=null?r:!0}};function JD(e,o){o===void 0&&(o={});const{open:r,onOpenChange:a,elements:l,dataRef:c}=e,{enabled:u=!0,escapeKey:f=!0,outsidePress:h=!0,outsidePressEvent:p="pointerdown",referencePress:g=!1,referencePressEvent:v="pointerdown",ancestorScroll:x=!1,bubbles:S,capture:E}=o,C=hm(),R=er(typeof h=="function"?h:()=>!1),T=typeof h=="function"?R:h,z=b.useRef(!1),A=b.useRef(!1),{escapeKey:N,outsidePress:B}=e1(S),{escapeKey:M,outsidePress:$}=e1(E),L=b.useRef(!1),H=er(re=>{var j;if(!r||!u||!f||re.key!=="Escape"||L.current)return;const k=(j=c.current.floatingContext)==null?void 0:j.nodeId,V=C?Gh(C.nodesRef.current,k):[];if(!N&&(re.stopPropagation(),V.length>0)){let P=!0;if(V.forEach(Z=>{var D;if((D=Z.context)!=null&&D.open&&!Z.context.dataRef.current.__escapeKeyBubbles){P=!1;return}}),!P)return}a(!1,j_(re)?re.nativeEvent:re,"escape-key")}),I=er(re=>{var j;const k=()=>{var V;H(re),(V=Ni(re))==null||V.removeEventListener("keydown",k)};(j=Ni(re))==null||j.addEventListener("keydown",k)}),Y=er(re=>{var j;const k=z.current;z.current=!1;const V=A.current;if(A.current=!1,p==="click"&&V||k||typeof T=="function"&&!T(re))return;const P=Ni(re),Z="["+pm("inert")+"]",D=wa(l.floating).querySelectorAll(Z);let O=pt(P)?P:null;for(;O&&!_a(O);){const ue=Xr(O);if(_a(ue)||!pt(ue))break;O=ue}if(D.length&&pt(P)&&!B_(P)&&!hs(P,l.floating)&&Array.from(D).every(ue=>!hs(O,ue)))return;if(yo(P)&&ne){const ue=P.clientWidth>0&&P.scrollWidth>P.clientWidth,ve=P.clientHeight>0&&P.scrollHeight>P.clientHeight;let fe=ve&&re.offsetX>P.clientWidth;if(ve&&ho(P).direction==="rtl"&&(fe=re.offsetX<=P.offsetWidth-P.clientWidth),fe||ue&&re.offsetY>P.clientHeight)return}const q=(j=c.current.floatingContext)==null?void 0:j.nodeId,W=C&&Gh(C.nodesRef.current,q).some(ue=>{var ve;return Uh(re,(ve=ue.context)==null?void 0:ve.elements.floating)});if(Uh(re,l.floating)||Uh(re,l.domReference)||W)return;const ie=C?Gh(C.nodesRef.current,q):[];if(ie.length>0){let ue=!0;if(ie.forEach(ve=>{var fe;if((fe=ve.context)!=null&&fe.open&&!ve.context.dataRef.current.__outsidePressBubbles){ue=!1;return}}),!ue)return}a(!1,re,"outside-press")}),X=er(re=>{var j;const k=()=>{var V;Y(re),(V=Ni(re))==null||V.removeEventListener(p,k)};(j=Ni(re))==null||j.addEventListener(p,k)});b.useEffect(()=>{if(!r||!u)return;c.current.__escapeKeyBubbles=N,c.current.__outsidePressBubbles=B;let re=-1;function j(D){a(!1,D,"ancestor-scroll")}function k(){window.clearTimeout(re),L.current=!0}function V(){re=window.setTimeout(()=>{L.current=!1},Lu()?5:0)}const P=wa(l.floating);f&&(P.addEventListener("keydown",M?I:H,M),P.addEventListener("compositionstart",k),P.addEventListener("compositionend",V)),T&&P.addEventListener(p,$?X:Y,$);let Z=[];return x&&(pt(l.domReference)&&(Z=tr(l.domReference)),pt(l.floating)&&(Z=Z.concat(tr(l.floating))),!pt(l.reference)&&l.reference&&l.reference.contextElement&&(Z=Z.concat(tr(l.reference.contextElement)))),Z=Z.filter(D=>{var O;return D!==((O=P.defaultView)==null?void 0:O.visualViewport)}),Z.forEach(D=>{D.addEventListener("scroll",j,{passive:!0})}),()=>{f&&(P.removeEventListener("keydown",M?I:H,M),P.removeEventListener("compositionstart",k),P.removeEventListener("compositionend",V)),T&&P.removeEventListener(p,$?X:Y,$),Z.forEach(D=>{D.removeEventListener("scroll",j)}),window.clearTimeout(re)}},[c,l,f,T,p,r,a,x,u,N,B,H,M,I,Y,$,X]),b.useEffect(()=>{z.current=!1},[T,p]);const ee=b.useMemo(()=>({onKeyDown:H,[KD[v]]:re=>{g&&a(!1,re.nativeEvent,"reference-press")}}),[H,a,g,v]),ne=b.useMemo(()=>({onKeyDown:H,onMouseDown(){A.current=!0},onMouseUp(){A.current=!0},[WD[p]]:()=>{z.current=!0}}),[H,p]);return b.useMemo(()=>u?{reference:ee,floating:ne}:{},[u,ee,ne])}function e3(e){const{open:o=!1,onOpenChange:r,elements:a}=e,l=Kx(),c=b.useRef({}),[u]=b.useState(()=>YD()),f=dm()!=null,[h,p]=b.useState(a.reference),g=er((S,E,C)=>{c.current.openEvent=S?E:void 0,u.emit("openchange",{open:S,event:E,reason:C,nested:f}),r?.(S,E,C)}),v=b.useMemo(()=>({setPositionReference:p}),[]),x=b.useMemo(()=>({reference:h||a.reference||null,floating:a.floating||null,domReference:a.reference}),[h,a.reference,a.floating]);return b.useMemo(()=>({dataRef:c,open:o,onOpenChange:g,elements:x,events:u,floatingId:l,refs:v}),[o,g,x,u,l,v])}function mm(e){e===void 0&&(e={});const{nodeId:o}=e,r=e3({...e,elements:{reference:null,floating:null,...e.elements}}),a=e.rootContext||r,l=a.elements,[c,u]=b.useState(null),[f,h]=b.useState(null),g=l?.domReference||c,v=b.useRef(null),x=hm();_o(()=>{g&&(v.current=g)},[g]);const S=OD({...e,elements:{...l,...f&&{reference:f}}}),E=b.useCallback(A=>{const N=pt(A)?{getBoundingClientRect:()=>A.getBoundingClientRect(),contextElement:A}:A;h(N),S.refs.setReference(N)},[S.refs]),C=b.useCallback(A=>{(pt(A)||A===null)&&(v.current=A,u(A)),(pt(S.refs.reference.current)||S.refs.reference.current===null||A!==null&&!pt(A))&&S.refs.setReference(A)},[S.refs]),R=b.useMemo(()=>({...S.refs,setReference:C,setPositionReference:E,domReference:v}),[S.refs,C,E]),T=b.useMemo(()=>({...S.elements,domReference:g}),[S.elements,g]),z=b.useMemo(()=>({...S,...a,refs:R,elements:T,nodeId:o}),[S,R,T,o,a]);return _o(()=>{a.dataRef.current.floatingContext=z;const A=x?.nodesRef.current.find(N=>N.id===o);A&&(A.context=z)}),b.useMemo(()=>({...S,context:z,refs:R,elements:T}),[S,R,T,z])}function t3(e,o){o===void 0&&(o={});const{open:r,onOpenChange:a,events:l,dataRef:c,elements:u}=e,{enabled:f=!0,visibleOnly:h=!0}=o,p=b.useRef(!1),g=b.useRef(),v=b.useRef(!0);b.useEffect(()=>{if(!f)return;const S=dn(u.domReference);function E(){!r&&yo(u.domReference)&&u.domReference===H0(wa(u.domReference))&&(p.current=!0)}function C(){v.current=!0}return S.addEventListener("blur",E),S.addEventListener("keydown",C,!0),()=>{S.removeEventListener("blur",E),S.removeEventListener("keydown",C,!0)}},[u.domReference,r,f]),b.useEffect(()=>{if(!f)return;function S(E){let{reason:C}=E;(C==="reference-press"||C==="escape-key")&&(p.current=!0)}return l.on("openchange",S),()=>{l.off("openchange",S)}},[l,f]),b.useEffect(()=>()=>{clearTimeout(g.current)},[]);const x=b.useMemo(()=>({onPointerDown(S){A_(S.nativeEvent)||(v.current=!1)},onMouseLeave(){p.current=!1},onFocus(S){if(p.current)return;const E=Ni(S.nativeEvent);if(h&&pt(E))try{if(z_()&&M_())throw Error();if(!E.matches(":focus-visible"))return}catch{if(!v.current&&!L_(E))return}a(!0,S.nativeEvent,"focus")},onBlur(S){p.current=!1;const E=S.relatedTarget,C=S.nativeEvent,R=pt(E)&&E.hasAttribute(pm("focus-guard"))&&E.getAttribute("data-type")==="outside";g.current=window.setTimeout(()=>{var T;const z=H0(u.domReference?u.domReference.ownerDocument:document);!E&&z===u.domReference||hs((T=c.current.floatingContext)==null?void 0:T.refs.floating.current,z)||hs(u.domReference,z)||R||a(!1,C,"focus")})}}),[c,u.domReference,a,h]);return b.useMemo(()=>f?{reference:x}:{},[f,x])}const t1="active",n1="selected";function Xh(e,o,r){const a=new Map,l=r==="item";let c=e;if(l&&e){const{[t1]:u,[n1]:f,...h}=e;c=h}return{...r==="floating"&&{tabIndex:-1,[QD]:""},...c,...o.map(u=>{const f=u?u[r]:null;return typeof f=="function"?e?f(e):null:f}).concat(e).reduce((u,f)=>(f&&Object.entries(f).forEach(h=>{let[p,g]=h;if(!(l&&[t1,n1].includes(p)))if(p.indexOf("on")===0){if(a.has(p)||a.set(p,[]),typeof g=="function"){var v;(v=a.get(p))==null||v.push(g),u[p]=function(){for(var x,S=arguments.length,E=new Array(S),C=0;CR(...E)).find(R=>R!==void 0)}}}else u[p]=g}),u),{})}}function n3(e){e===void 0&&(e=[]);const o=e.map(f=>f?.reference),r=e.map(f=>f?.floating),a=e.map(f=>f?.item),l=b.useCallback(f=>Xh(f,e,"reference"),o),c=b.useCallback(f=>Xh(f,e,"floating"),r),u=b.useCallback(f=>Xh(f,e,"item"),a);return b.useMemo(()=>({getReferenceProps:l,getFloatingProps:c,getItemProps:u}),[l,c,u])}const o3=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function r3(e,o){var r;o===void 0&&(o={});const{open:a,floatingId:l}=e,{enabled:c=!0,role:u="dialog"}=o,f=(r=o3.get(u))!=null?r:u,h=Kx(),g=dm()!=null,v=b.useMemo(()=>f==="tooltip"||u==="label"?{["aria-"+(u==="label"?"labelledby":"describedby")]:a?l:void 0}:{"aria-expanded":a?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":a?l:void 0,...f==="listbox"&&{role:"combobox"},...f==="menu"&&{id:h},...f==="menu"&&g&&{role:"menuitem"},...u==="select"&&{"aria-autocomplete":"none"},...u==="combobox"&&{"aria-autocomplete":"list"}},[f,l,g,a,h,u]),x=b.useMemo(()=>{const E={id:l,...f&&{role:f}};return f==="tooltip"||u==="label"?E:{...E,...f==="menu"&&{"aria-labelledby":h}}},[f,l,h,u]),S=b.useCallback(E=>{let{active:C,selected:R}=E;const T={role:"option",...C&&{id:l+"-option"}};switch(u){case"select":return{...T,"aria-selected":C&&R};case"combobox":return{...T,...C&&{"aria-selected":!0}}}return{}},[l,u]);return b.useMemo(()=>c?{reference:v,floating:x,item:S}:{},[c,v,x,S])}const[a3,eo]=zo("ScrollArea.Root component was not found in tree");function Hi(e,o){const r=ba(o);Gi(()=>{let a=0;if(e){const l=new ResizeObserver(()=>{cancelAnimationFrame(a),a=window.requestAnimationFrame(r)});return l.observe(e),()=>{window.cancelAnimationFrame(a),l.unobserve(e)}}},[e,r])}const i3=b.forwardRef((e,o)=>{const{style:r,...a}=e,l=eo(),[c,u]=b.useState(0),[f,h]=b.useState(0),p=!!(c&&f);return Hi(l.scrollbarX,()=>{const g=l.scrollbarX?.offsetHeight||0;l.onCornerHeightChange(g),h(g)}),Hi(l.scrollbarY,()=>{const g=l.scrollbarY?.offsetWidth||0;l.onCornerWidthChange(g),u(g)}),p?y.jsx("div",{...a,ref:o,style:{...r,width:c,height:f}}):null}),l3=b.forwardRef((e,o)=>{const r=eo(),a=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&a?y.jsx(i3,{...e,ref:o}):null}),s3={scrollHideDelay:1e3,type:"hover"},Jx=b.forwardRef((e,o)=>{const{type:r,scrollHideDelay:a,scrollbars:l,getStyles:c,...u}=ce("ScrollAreaRoot",s3,e),[f,h]=b.useState(null),[p,g]=b.useState(null),[v,x]=b.useState(null),[S,E]=b.useState(null),[C,R]=b.useState(null),[T,z]=b.useState(0),[A,N]=b.useState(0),[B,M]=b.useState(!1),[$,L]=b.useState(!1),H=Mt(o,I=>h(I));return y.jsx(a3,{value:{type:r,scrollHideDelay:a,scrollArea:f,viewport:p,onViewportChange:g,content:v,onContentChange:x,scrollbarX:S,onScrollbarXChange:E,scrollbarXEnabled:B,onScrollbarXEnabledChange:M,scrollbarY:C,onScrollbarYChange:R,scrollbarYEnabled:$,onScrollbarYEnabledChange:L,onCornerWidthChange:z,onCornerHeightChange:N,getStyles:c},children:y.jsx(he,{...u,ref:H,__vars:{"--sa-corner-width":l!=="xy"?"0px":`${T}px`,"--sa-corner-height":l!=="xy"?"0px":`${A}px`}})})});Jx.displayName="@mantine/core/ScrollAreaRoot";function eS(e,o){const r=e/o;return Number.isNaN(r)?0:r}function Uu(e){const o=eS(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,a=(e.scrollbar.size-r)*o;return Math.max(a,18)}function tS(e,o){return r=>{if(e[0]===e[1]||o[0]===o[1])return o[0];const a=(o[1]-o[0])/(e[1]-e[0]);return o[0]+a*(r-e[0])}}function c3(e,[o,r]){return Math.min(r,Math.max(o,e))}function o1(e,o,r="ltr"){const a=Uu(o),l=o.scrollbar.paddingStart+o.scrollbar.paddingEnd,c=o.scrollbar.size-l,u=o.content-o.viewport,f=c-a,h=r==="ltr"?[0,u]:[u*-1,0],p=c3(e,h);return tS([0,u],[0,f])(p)}function u3(e,o,r,a="ltr"){const l=Uu(r),c=l/2,u=o||c,f=l-u,h=r.scrollbar.paddingStart+u,p=r.scrollbar.size-r.scrollbar.paddingEnd-f,g=r.content-r.viewport,v=a==="ltr"?[0,g]:[g*-1,0];return tS([h,p],v)(e)}function nS(e,o){return e>0&&e{e?.(a),(r===!1||!a.defaultPrevented)&&o?.(a)}}const[f3,oS]=zo("ScrollAreaScrollbar was not found in tree"),rS=b.forwardRef((e,o)=>{const{sizes:r,hasThumb:a,onThumbChange:l,onThumbPointerUp:c,onThumbPointerDown:u,onThumbPositionChange:f,onDragScroll:h,onWheelScroll:p,onResize:g,...v}=e,x=eo(),[S,E]=b.useState(null),C=Mt(o,L=>E(L)),R=b.useRef(null),T=b.useRef(""),{viewport:z}=x,A=r.content-r.viewport,N=ba(p),B=ba(f),M=Du(g,10),$=L=>{if(R.current){const H=L.clientX-R.current.left,I=L.clientY-R.current.top;h({x:H,y:I})}};return b.useEffect(()=>{const L=H=>{const I=H.target;S?.contains(I)&&N(H,A)};return document.addEventListener("wheel",L,{passive:!1}),()=>document.removeEventListener("wheel",L,{passive:!1})},[z,S,A,N]),b.useEffect(B,[r,B]),Hi(S,M),Hi(x.content,M),y.jsx(f3,{value:{scrollbar:S,hasThumb:a,onThumbChange:ba(l),onThumbPointerUp:ba(c),onThumbPositionChange:B,onThumbPointerDown:ba(u)},children:y.jsx("div",{...v,ref:C,"data-mantine-scrollbar":!0,style:{position:"absolute",...v.style},onPointerDown:Ra(e.onPointerDown,L=>{L.preventDefault(),L.button===0&&(L.target.setPointerCapture(L.pointerId),R.current=S.getBoundingClientRect(),T.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",$(L))}),onPointerMove:Ra(e.onPointerMove,$),onPointerUp:Ra(e.onPointerUp,L=>{const H=L.target;H.hasPointerCapture(L.pointerId)&&(L.preventDefault(),H.releasePointerCapture(L.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=T.current,R.current=null}})})}),aS=b.forwardRef((e,o)=>{const{sizes:r,onSizesChange:a,style:l,...c}=e,u=eo(),[f,h]=b.useState(),p=b.useRef(null),g=Mt(o,p,u.onScrollbarXChange);return b.useEffect(()=>{p.current&&h(getComputedStyle(p.current))},[p]),y.jsx(rS,{"data-orientation":"horizontal",...c,ref:g,sizes:r,style:{...l,"--sa-thumb-width":`${Uu(r)}px`},onThumbPointerDown:v=>e.onThumbPointerDown(v.x),onDragScroll:v=>e.onDragScroll(v.x),onWheelScroll:(v,x)=>{if(u.viewport){const S=u.viewport.scrollLeft+v.deltaX;e.onWheelScroll(S),nS(S,x)&&v.preventDefault()}},onResize:()=>{p.current&&u.viewport&&f&&a({content:u.viewport.scrollWidth,viewport:u.viewport.offsetWidth,scrollbar:{size:p.current.clientWidth,paddingStart:Vr(f.paddingLeft),paddingEnd:Vr(f.paddingRight)}})}})});aS.displayName="@mantine/core/ScrollAreaScrollbarX";const iS=b.forwardRef((e,o)=>{const{sizes:r,onSizesChange:a,style:l,...c}=e,u=eo(),[f,h]=b.useState(),p=b.useRef(null),g=Mt(o,p,u.onScrollbarYChange);return b.useEffect(()=>{p.current&&h(window.getComputedStyle(p.current))},[]),y.jsx(rS,{...c,"data-orientation":"vertical",ref:g,sizes:r,style:{"--sa-thumb-height":`${Uu(r)}px`,...l},onThumbPointerDown:v=>e.onThumbPointerDown(v.y),onDragScroll:v=>e.onDragScroll(v.y),onWheelScroll:(v,x)=>{if(u.viewport){const S=u.viewport.scrollTop+v.deltaY;e.onWheelScroll(S),nS(S,x)&&v.preventDefault()}},onResize:()=>{p.current&&u.viewport&&f&&a({content:u.viewport.scrollHeight,viewport:u.viewport.offsetHeight,scrollbar:{size:p.current.clientHeight,paddingStart:Vr(f.paddingTop),paddingEnd:Vr(f.paddingBottom)}})}})});iS.displayName="@mantine/core/ScrollAreaScrollbarY";const Pu=b.forwardRef((e,o)=>{const{orientation:r="vertical",...a}=e,{dir:l}=Ii(),c=eo(),u=b.useRef(null),f=b.useRef(0),[h,p]=b.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),g=eS(h.viewport,h.content),v={...a,sizes:h,onSizesChange:p,hasThumb:g>0&&g<1,onThumbChange:S=>{u.current=S},onThumbPointerUp:()=>{f.current=0},onThumbPointerDown:S=>{f.current=S}},x=(S,E)=>u3(S,f.current,h,E);return r==="horizontal"?y.jsx(aS,{...v,ref:o,onThumbPositionChange:()=>{if(c.viewport&&u.current){const S=c.viewport.scrollLeft,E=o1(S,h,l);u.current.style.transform=`translate3d(${E}px, 0, 0)`}},onWheelScroll:S=>{c.viewport&&(c.viewport.scrollLeft=S)},onDragScroll:S=>{c.viewport&&(c.viewport.scrollLeft=x(S,l))}}):r==="vertical"?y.jsx(iS,{...v,ref:o,onThumbPositionChange:()=>{if(c.viewport&&u.current){const S=c.viewport.scrollTop,E=o1(S,h);h.scrollbar.size===0?u.current.style.setProperty("--thumb-opacity","0"):u.current.style.setProperty("--thumb-opacity","1"),u.current.style.transform=`translate3d(0, ${E}px, 0)`}},onWheelScroll:S=>{c.viewport&&(c.viewport.scrollTop=S)},onDragScroll:S=>{c.viewport&&(c.viewport.scrollTop=x(S))}}):null});Pu.displayName="@mantine/core/ScrollAreaScrollbarVisible";const gm=b.forwardRef((e,o)=>{const r=eo(),{forceMount:a,...l}=e,[c,u]=b.useState(!1),f=e.orientation==="horizontal",h=Du(()=>{if(r.viewport){const p=r.viewport.offsetWidth{const{forceMount:r,...a}=e,l=eo(),[c,u]=b.useState(!1);return b.useEffect(()=>{const{scrollArea:f}=l;let h=0;if(f){const p=()=>{window.clearTimeout(h),u(!0)},g=()=>{h=window.setTimeout(()=>u(!1),l.scrollHideDelay)};return f.addEventListener("pointerenter",p),f.addEventListener("pointerleave",g),()=>{window.clearTimeout(h),f.removeEventListener("pointerenter",p),f.removeEventListener("pointerleave",g)}}},[l.scrollArea,l.scrollHideDelay]),r||c?y.jsx(gm,{"data-state":c?"visible":"hidden",...a,ref:o}):null});lS.displayName="@mantine/core/ScrollAreaScrollbarHover";const d3=b.forwardRef((e,o)=>{const{forceMount:r,...a}=e,l=eo(),c=e.orientation==="horizontal",[u,f]=b.useState("hidden"),h=Du(()=>f("idle"),100);return b.useEffect(()=>{if(u==="idle"){const p=window.setTimeout(()=>f("hidden"),l.scrollHideDelay);return()=>window.clearTimeout(p)}},[u,l.scrollHideDelay]),b.useEffect(()=>{const{viewport:p}=l,g=c?"scrollLeft":"scrollTop";if(p){let v=p[g];const x=()=>{const S=p[g];v!==S&&(f("scrolling"),h()),v=S};return p.addEventListener("scroll",x),()=>p.removeEventListener("scroll",x)}},[l.viewport,c,h]),r||u!=="hidden"?y.jsx(Pu,{"data-state":u==="hidden"?"hidden":"visible",...a,ref:o,onPointerEnter:Ra(e.onPointerEnter,()=>f("interacting")),onPointerLeave:Ra(e.onPointerLeave,()=>f("idle"))}):null}),Ep=b.forwardRef((e,o)=>{const{forceMount:r,...a}=e,l=eo(),{onScrollbarXEnabledChange:c,onScrollbarYEnabledChange:u}=l,f=e.orientation==="horizontal";return b.useEffect(()=>(f?c(!0):u(!0),()=>{f?c(!1):u(!1)}),[f,c,u]),l.type==="hover"?y.jsx(lS,{...a,ref:o,forceMount:r}):l.type==="scroll"?y.jsx(d3,{...a,ref:o,forceMount:r}):l.type==="auto"?y.jsx(gm,{...a,ref:o,forceMount:r}):l.type==="always"?y.jsx(Pu,{...a,ref:o}):null});Ep.displayName="@mantine/core/ScrollAreaScrollbar";function h3(e,o=()=>{}){let r={left:e.scrollLeft,top:e.scrollTop},a=0;return(function l(){const c={left:e.scrollLeft,top:e.scrollTop},u=r.left!==c.left,f=r.top!==c.top;(u||f)&&o(),r=c,a=window.requestAnimationFrame(l)})(),()=>window.cancelAnimationFrame(a)}const sS=b.forwardRef((e,o)=>{const{style:r,...a}=e,l=eo(),c=oS(),{onThumbPositionChange:u}=c,f=Mt(o,g=>c.onThumbChange(g)),h=b.useRef(void 0),p=Du(()=>{h.current&&(h.current(),h.current=void 0)},100);return b.useEffect(()=>{const{viewport:g}=l;if(g){const v=()=>{if(p(),!h.current){const x=h3(g,u);h.current=x,u()}};return u(),g.addEventListener("scroll",v),()=>g.removeEventListener("scroll",v)}},[l.viewport,p,u]),y.jsx("div",{"data-state":c.hasThumb?"visible":"hidden",...a,ref:f,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...r},onPointerDownCapture:Ra(e.onPointerDownCapture,g=>{const x=g.target.getBoundingClientRect(),S=g.clientX-x.left,E=g.clientY-x.top;c.onThumbPointerDown({x:S,y:E})}),onPointerUp:Ra(e.onPointerUp,c.onThumbPointerUp)})});sS.displayName="@mantine/core/ScrollAreaThumb";const Rp=b.forwardRef((e,o)=>{const{forceMount:r,...a}=e,l=oS();return r||l.hasThumb?y.jsx(sS,{ref:o,...a}):null});Rp.displayName="@mantine/core/ScrollAreaThumb";const cS=b.forwardRef(({children:e,style:o,...r},a)=>{const l=eo(),c=Mt(a,l.onViewportChange);return y.jsx(he,{...r,ref:c,style:{overflowX:l.scrollbarXEnabled?"scroll":"hidden",overflowY:l.scrollbarYEnabled?"scroll":"hidden",...o},children:y.jsx("div",{...l.getStyles("content"),ref:l.onContentChange,children:e})})});cS.displayName="@mantine/core/ScrollAreaViewport";var vm={root:"m_d57069b5",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268",content:"m_b1336c6"};const uS={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},p3=(e,{scrollbarSize:o,overscrollBehavior:r})=>({root:{"--scrollarea-scrollbar-size":oe(o),"--scrollarea-over-scroll-behavior":r}}),Aa=ge((e,o)=>{const r=ce("ScrollArea",uS,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,scrollbarSize:h,vars:p,type:g,scrollHideDelay:v,viewportProps:x,viewportRef:S,onScrollPositionChange:E,children:C,offsetScrollbars:R,scrollbars:T,onBottomReached:z,onTopReached:A,overscrollBehavior:N,...B}=r,[M,$]=b.useState(!1),[L,H]=b.useState(!1),[I,Y]=b.useState(!1),X=_e({name:"ScrollArea",props:r,classes:vm,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:p,varsResolver:p3}),ee=b.useRef(null),ne=LD([S,ee]);return b.useEffect(()=>{if(!ee.current||R!=="present")return;const re=ee.current,j=new ResizeObserver(()=>{const{scrollHeight:k,clientHeight:V,scrollWidth:P,clientWidth:Z}=re;H(k>V),Y(P>Z)});return j.observe(re),()=>j.disconnect()},[ee,R]),y.jsxs(Jx,{getStyles:X,type:g==="never"?"always":g,scrollHideDelay:v,ref:o,scrollbars:T,...X("root"),...B,children:[y.jsx(cS,{...x,...X("viewport",{style:x?.style}),ref:ne,"data-offset-scrollbars":R===!0?"xy":R||void 0,"data-scrollbars":T||void 0,"data-horizontal-hidden":R==="present"&&!I?"true":void 0,"data-vertical-hidden":R==="present"&&!L?"true":void 0,onScroll:re=>{x?.onScroll?.(re),E?.({x:re.currentTarget.scrollLeft,y:re.currentTarget.scrollTop});const{scrollTop:j,scrollHeight:k,clientHeight:V}=re.currentTarget;j-(k-V)>=-.6&&z?.(),j===0&&A?.()},children:C}),(T==="xy"||T==="x")&&y.jsx(Ep,{...X("scrollbar"),orientation:"horizontal","data-hidden":g==="never"||R==="present"&&!I?!0:void 0,forceMount:!0,onMouseEnter:()=>$(!0),onMouseLeave:()=>$(!1),children:y.jsx(Rp,{...X("thumb")})}),(T==="xy"||T==="y")&&y.jsx(Ep,{...X("scrollbar"),orientation:"vertical","data-hidden":g==="never"||R==="present"&&!L?!0:void 0,forceMount:!0,onMouseEnter:()=>$(!0),onMouseLeave:()=>$(!1),children:y.jsx(Rp,{...X("thumb")})}),y.jsx(l3,{...X("corner"),"data-hovered":M||void 0,"data-hidden":g==="never"||void 0})]})});Aa.displayName="@mantine/core/ScrollArea";const ym=ge((e,o)=>{const{children:r,classNames:a,styles:l,scrollbarSize:c,scrollHideDelay:u,type:f,dir:h,offsetScrollbars:p,viewportRef:g,onScrollPositionChange:v,unstyled:x,variant:S,viewportProps:E,scrollbars:C,style:R,vars:T,onBottomReached:z,onTopReached:A,...N}=ce("ScrollAreaAutosize",uS,e);return y.jsx(he,{...N,ref:o,style:[{display:"flex",overflow:"auto"},R],children:y.jsx(he,{style:{display:"flex",flexDirection:"column",flex:1},children:y.jsx(Aa,{classNames:a,styles:l,scrollHideDelay:u,scrollbarSize:c,type:f,dir:h,offsetScrollbars:p,viewportRef:g,onScrollPositionChange:v,unstyled:x,variant:S,viewportProps:E,vars:T,scrollbars:C,onBottomReached:z,onTopReached:A,children:r})})})});Aa.classes=vm;ym.displayName="@mantine/core/ScrollAreaAutosize";ym.classes=vm;Aa.Autosize=ym;var fS={root:"m_87cf2631"};const m3={__staticSelector:"UnstyledButton"},$n=un((e,o)=>{const r=ce("UnstyledButton",m3,e),{className:a,component:l="button",__staticSelector:c,unstyled:u,classNames:f,styles:h,style:p,...g}=r,v=_e({name:c,props:r,classes:fS,className:a,style:p,classNames:f,styles:h,unstyled:u});return y.jsx(he,{...v("root",{focusable:!0}),component:l,ref:o,type:l==="button"?"button":void 0,...g})});$n.classes=fS;$n.displayName="@mantine/core/UnstyledButton";var dS={root:"m_515a97f8"};const g3={},bm=ge((e,o)=>{const r=ce("VisuallyHidden",g3,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,...p}=r,g=_e({name:"VisuallyHidden",classes:dS,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f});return y.jsx(he,{component:"span",ref:o,...g("root"),...p})});bm.classes=dS;bm.displayName="@mantine/core/VisuallyHidden";var hS={root:"m_1b7284a3"};const v3={},y3=(e,{radius:o,shadow:r})=>({root:{"--paper-radius":o===void 0?void 0:kt(o),"--paper-shadow":Fp(r)}}),Qi=un((e,o)=>{const r=ce("Paper",v3,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,withBorder:h,vars:p,radius:g,shadow:v,variant:x,mod:S,...E}=r,C=_e({name:"Paper",props:r,classes:hS,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:p,varsResolver:y3});return y.jsx(he,{ref:o,mod:[{"data-with-border":h},S],...C("root"),variant:x,...E})});Qi.classes=hS;Qi.displayName="@mantine/core/Paper";function pS(e,o){if(e==="rtl"&&(o.includes("right")||o.includes("left"))){const[r,a]=o.split("-"),l=r==="right"?"left":"right";return a===void 0?l:`${l}-${a}`}return o}function r1(e,o,r,a){return e==="center"||a==="center"?{top:o}:e==="end"?{bottom:r}:e==="start"?{top:r}:{}}function a1(e,o,r,a,l){return e==="center"||a==="center"?{left:o}:e==="end"?{[l==="ltr"?"right":"left"]:r}:e==="start"?{[l==="ltr"?"left":"right"]:r}:{}}const b3={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function x3({position:e,arrowSize:o,arrowOffset:r,arrowRadius:a,arrowPosition:l,arrowX:c,arrowY:u,dir:f}){const[h,p="center"]=e.split("-"),g={width:o,height:o,transform:"rotate(45deg)",position:"absolute",[b3[h]]:a},v=-o/2;return h==="left"?{...g,...r1(p,u,r,l),right:v,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:h==="right"?{...g,...r1(p,u,r,l),left:v,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:h==="top"?{...g,...a1(p,c,r,l,f),bottom:v,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:h==="bottom"?{...g,...a1(p,c,r,l,f),top:v,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const xm=b.forwardRef(({position:e,arrowSize:o,arrowOffset:r,arrowRadius:a,arrowPosition:l,visible:c,arrowX:u,arrowY:f,style:h,...p},g)=>{const{dir:v}=Ii();return c?y.jsx("div",{...p,ref:g,style:{...h,...x3({position:e,arrowSize:o,arrowOffset:r,arrowRadius:a,arrowPosition:l,dir:v,arrowX:u,arrowY:f})}}):null});xm.displayName="@mantine/core/FloatingArrow";var mS={root:"m_9814e45f"};const S3={zIndex:vo("modal")},w3=(e,{gradient:o,color:r,backgroundOpacity:a,blur:l,radius:c,zIndex:u})=>({root:{"--overlay-bg":o||(r!==void 0||a!==void 0)&&Co(r||"#000",a??.6)||void 0,"--overlay-filter":l?`blur(${oe(l)})`:void 0,"--overlay-radius":c===void 0?void 0:kt(c),"--overlay-z-index":u?.toString()}}),Vu=un((e,o)=>{const r=ce("Overlay",S3,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,fixed:p,center:g,children:v,radius:x,zIndex:S,gradient:E,blur:C,color:R,backgroundOpacity:T,mod:z,...A}=r,N=_e({name:"Overlay",props:r,classes:mS,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:w3});return y.jsx(he,{ref:o,...N("root"),mod:[{center:g,fixed:p},z],...A,children:v})});Vu.classes=mS;Vu.displayName="@mantine/core/Overlay";function qh(e){const o=document.createElement("div");return o.setAttribute("data-portal","true"),typeof e.className=="string"&&o.classList.add(...e.className.split(" ").filter(Boolean)),typeof e.style=="object"&&Object.assign(o.style,e.style),typeof e.id=="string"&&o.setAttribute("id",e.id),o}function C3({target:e,reuseTargetNode:o,...r}){if(e)return typeof e=="string"?document.querySelector(e)||qh(r):e;if(o){const a=document.querySelector("[data-mantine-shared-portal-node]");if(a)return a;const l=qh(r);return l.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(l),l}return qh(r)}const E3={reuseTargetNode:!0},gS=ge((e,o)=>{const{children:r,target:a,reuseTargetNode:l,...c}=ce("Portal",E3,e),[u,f]=b.useState(!1),h=b.useRef(null);return Gi(()=>(f(!0),h.current=C3({target:a,reuseTargetNode:l,...c}),mu(o,h.current),!a&&!l&&h.current&&document.body.appendChild(h.current),()=>{!a&&!l&&h.current&&document.body.removeChild(h.current)}),[a]),!u||!h.current?null:co.createPortal(y.jsx(y.Fragment,{children:r}),h.current)});gS.displayName="@mantine/core/Portal";const za=ge(({withinPortal:e=!0,children:o,...r},a)=>Wp()==="test"||!e?y.jsx(y.Fragment,{children:o}):y.jsx(gS,{ref:a,...r,children:o}));za.displayName="@mantine/core/OptionalPortal";const os=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),Qc={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(30px)"},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-30px)"},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(30px)"},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-30px)"},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(-20px) skew(-10deg, -5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(20px) skew(-10deg, -5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(-5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...os("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...os("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...os("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...os("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...os("top"),common:{transformOrigin:"top right"}}},i1={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function R3({transition:e,state:o,duration:r,timingFunction:a}){const l={WebkitBackfaceVisibility:"hidden",willChange:"transform, opacity",transitionDuration:`${r}ms`,transitionTimingFunction:a};return typeof e=="string"?e in Qc?{transitionProperty:Qc[e].transitionProperty,...l,...Qc[e].common,...Qc[e][i1[o]]}:{}:{transitionProperty:e.transitionProperty,...l,...e.common,...e[i1[o]]}}function T3({duration:e,exitDuration:o,timingFunction:r,mounted:a,onEnter:l,onExit:c,onEntered:u,onExited:f,enterDelay:h,exitDelay:p}){const g=cn(),v=Nu(),x=g.respectReducedMotion?v:!1,[S,E]=b.useState(x?0:e),[C,R]=b.useState(a?"entered":"exited"),T=b.useRef(-1),z=b.useRef(-1),A=b.useRef(-1);function N(){window.clearTimeout(T.current),window.clearTimeout(z.current),cancelAnimationFrame(A.current)}const B=$=>{N();const L=$?l:c,H=$?u:f,I=x?0:$?e:o;E(I),I===0?(typeof L=="function"&&L(),typeof H=="function"&&H(),R($?"entered":"exited")):A.current=requestAnimationFrame(()=>{Sa.flushSync(()=>{R($?"pre-entering":"pre-exiting")}),A.current=requestAnimationFrame(()=>{typeof L=="function"&&L(),R($?"entering":"exiting"),T.current=window.setTimeout(()=>{typeof H=="function"&&H(),R($?"entered":"exited")},I)})})},M=$=>{if(N(),typeof($?h:p)!="number"){B($);return}z.current=window.setTimeout(()=>{B($)},$?h:p)};return or(()=>{M(a)},[a]),b.useEffect(()=>()=>{N()},[]),{transitionDuration:S,transitionStatus:C,transitionTimingFunction:r||"ease"}}function qr({keepMounted:e,transition:o="fade",duration:r=250,exitDuration:a=r,mounted:l,children:c,timingFunction:u="ease",onExit:f,onEntered:h,onEnter:p,onExited:g,enterDelay:v,exitDelay:x}){const S=Wp(),{transitionDuration:E,transitionStatus:C,transitionTimingFunction:R}=T3({mounted:l,exitDuration:a,duration:r,timingFunction:u,onExit:f,onEntered:h,onEnter:p,onExited:g,enterDelay:v,exitDelay:x});return E===0||S==="test"?l?y.jsx(y.Fragment,{children:c({})}):e?c({display:"none"}):null:C==="exited"?e?c({display:"none"}):null:y.jsx(y.Fragment,{children:c(R3({transition:o,duration:E,state:C,timingFunction:R}))})}qr.displayName="@mantine/core/Transition";const[_3,vS]=zo("Popover component was not found in the tree");function Yu({children:e,active:o=!0,refProp:r="ref",innerRef:a}){const l=WR(o),c=Mt(l,a);return rr(e)?b.cloneElement(e,{[r]:c}):e}function yS(e){return y.jsx(bm,{tabIndex:-1,"data-autofocus":!0,...e})}Yu.displayName="@mantine/core/FocusTrap";yS.displayName="@mantine/core/FocusTrapInitialFocus";Yu.InitialFocus=yS;var bS={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const D3={},Sm=ge((e,o)=>{const r=ce("PopoverDropdown",D3,e),{className:a,style:l,vars:c,children:u,onKeyDownCapture:f,variant:h,classNames:p,styles:g,...v}=r,x=vS(),S=vx({opened:x.opened,shouldReturnFocus:x.returnFocus}),E=x.withRoles?{"aria-labelledby":x.getTargetId(),id:x.getDropdownId(),role:"dialog",tabIndex:-1}:{},C=Mt(o,x.floating);return x.disabled?null:y.jsx(za,{...x.portalProps,withinPortal:x.withinPortal,children:y.jsx(qr,{mounted:x.opened,...x.transitionProps,transition:x.transitionProps?.transition||"fade",duration:x.transitionProps?.duration??150,keepMounted:x.keepMounted,exitDuration:typeof x.transitionProps?.exitDuration=="number"?x.transitionProps.exitDuration:x.transitionProps?.duration,children:R=>y.jsx(Yu,{active:x.trapFocus&&x.opened,innerRef:C,children:y.jsxs(he,{...E,...v,variant:h,onKeyDownCapture:UR(()=>{x.onClose?.(),x.onDismiss?.()},{active:x.closeOnEscape,onTrigger:S,onKeyDown:f}),"data-position":x.placement,"data-fixed":x.floatingStrategy==="fixed"||void 0,...x.getStyles("dropdown",{className:a,props:r,classNames:p,styles:g,style:[{...R,zIndex:x.zIndex,top:x.y??0,left:x.x??0,width:x.width==="target"?void 0:oe(x.width),...x.referenceHidden?{display:"none"}:null},x.resolvedStyles.dropdown,g?.dropdown,l]}),children:[u,y.jsx(xm,{ref:x.arrowRef,arrowX:x.arrowX,arrowY:x.arrowY,visible:x.withArrow,position:x.placement,arrowSize:x.arrowSize,arrowRadius:x.arrowRadius,arrowOffset:x.arrowOffset,arrowPosition:x.arrowPosition,...x.getStyles("arrow",{props:r,classNames:p,styles:g})})]})})})})});Sm.classes=bS;Sm.displayName="@mantine/core/PopoverDropdown";const N3={refProp:"ref",popupType:"dialog"},xS=ge((e,o)=>{const{children:r,refProp:a,popupType:l,...c}=ce("PopoverTarget",N3,e);if(!rr(r))throw new Error("Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const u=c,f=vS(),h=Mt(f.reference,Au(r),o),p=f.withRoles?{"aria-haspopup":l,"aria-expanded":f.opened,"aria-controls":f.getDropdownId(),id:f.getTargetId()}:{};return b.cloneElement(r,{...u,...p,...f.targetProps,className:zt(f.targetProps.className,u.className,r.props.className),[a]:h,...f.controlled?null:{onClick:f.onToggle}})});xS.displayName="@mantine/core/PopoverTarget";function SS({opened:e,floating:o,position:r,positionDependencies:a}){const[l,c]=b.useState(0);b.useEffect(()=>{if(o.refs.reference.current&&o.refs.floating.current&&e)return wD(o.refs.reference.current,o.refs.floating.current,o.update)},[o.refs.reference.current,o.refs.floating.current,e,l,r]),or(()=>{o.update()},a),or(()=>{c(u=>u+1)},[e])}function A3(e){if(e===void 0)return{shift:!0,flip:!0};const o={...e};return e.shift===void 0&&(o.shift=!0),e.flip===void 0&&(o.flip=!0),o}function z3(e,o){const r=A3(e.middlewares),a=[Fx(e.offset),$D()];return r.shift&&a.push(fm(typeof r.shift=="boolean"?{limiter:Q0(),padding:5}:{limiter:Q0(),padding:5,...r.shift})),r.flip&&a.push(typeof r.flip=="boolean"?xu():xu(r.flip)),r.inline&&a.push(typeof r.inline=="boolean"?is():is(r.inline)),a.push(Zx({element:e.arrowRef,padding:e.arrowOffset})),(r.size||e.width==="target")&&a.push(BD({...typeof r.size=="boolean"?{}:r.size,apply({rects:l,availableWidth:c,availableHeight:u,...f}){const p=o().refs.floating.current?.style??{};r.size&&(typeof r.size=="object"&&r.size.apply?r.size.apply({rects:l,availableWidth:c,availableHeight:u,...f}):Object.assign(p,{maxWidth:`${c}px`,maxHeight:`${u}px`})),e.width==="target"&&Object.assign(p,{width:`${l.reference.width}px`})}})),a}function M3(e){const[o,r]=Wn({value:e.opened,defaultValue:e.defaultOpened,finalValue:!1,onChange:e.onChange}),a=b.useRef(o),l=()=>{o&&!e.disabled&&r(!1)},c=()=>!e.disabled&&r(!o),u=mm({strategy:e.strategy,placement:e.position,middleware:z3(e,()=>u)});return SS({opened:o,position:e.position,positionDependencies:e.positionDependencies||[],floating:u}),or(()=>{e.onPositionChange?.(u.placement)},[u.placement]),or(()=>{o!==a.current&&(o?e.onOpen?.():e.onClose?.()),a.current=o},[o,e.onClose,e.onOpen]),{floating:u,controlled:typeof e.opened=="boolean",opened:o,onClose:l,onToggle:c}}const O3={position:"bottom",offset:8,positionDependencies:[],transitionProps:{transition:"fade",duration:150},middlewares:{flip:!0,shift:!0,inline:!1},arrowSize:7,arrowOffset:5,arrowRadius:0,arrowPosition:"side",closeOnClickOutside:!0,withinPortal:!0,closeOnEscape:!0,trapFocus:!1,withRoles:!0,returnFocus:!1,withOverlay:!1,hideDetached:!0,clickOutsideEvents:["mousedown","touchstart"],zIndex:vo("popover"),__staticSelector:"Popover",width:"max-content"},j3=(e,{radius:o,shadow:r})=>({dropdown:{"--popover-radius":o===void 0?void 0:kt(o),"--popover-shadow":Fp(r)}});function Rn(e){const o=ce("Popover",O3,e),{children:r,position:a,offset:l,onPositionChange:c,positionDependencies:u,opened:f,transitionProps:h,onExitTransitionEnd:p,onEnterTransitionEnd:g,width:v,middlewares:x,withArrow:S,arrowSize:E,arrowOffset:C,arrowRadius:R,arrowPosition:T,unstyled:z,classNames:A,styles:N,closeOnClickOutside:B,withinPortal:M,portalProps:$,closeOnEscape:L,clickOutsideEvents:H,trapFocus:I,onClose:Y,onDismiss:X,onOpen:ee,onChange:ne,zIndex:re,radius:j,shadow:k,id:V,defaultOpened:P,__staticSelector:Z,withRoles:D,disabled:O,returnFocus:q,variant:W,keepMounted:ie,vars:ue,floatingStrategy:ve,withOverlay:fe,overlayProps:be,hideDetached:ye,...Ge}=o,Ne=_e({name:Z,props:o,classes:bS,classNames:A,styles:N,unstyled:z,rootSelector:"dropdown",vars:ue,varsResolver:j3}),{resolvedStyles:Ke}=Xi({classNames:A,styles:N,props:o}),Be=b.useRef(null),[tt,vt]=b.useState(null),[pe,me]=b.useState(null),{dir:we}=Ii(),De=Wp(),Ae=Jn(V),xe=M3({middlewares:x,width:v,position:pS(we,a),offset:typeof l=="number"?l+(S?E/2:0):l,arrowRef:Be,arrowOffset:C,onPositionChange:c,positionDependencies:u,opened:f,defaultOpened:P,onChange:ne,onOpen:ee,onClose:Y,onDismiss:X,strategy:ve,disabled:O});GR(()=>{B&&(xe.onClose(),X?.())},H,[tt,pe]);const $e=b.useCallback(nt=>{vt(nt),xe.floating.refs.setReference(nt)},[xe.floating.refs.setReference]),de=b.useCallback(nt=>{me(nt),xe.floating.refs.setFloating(nt)},[xe.floating.refs.setFloating]),Re=b.useCallback(()=>{h?.onExited?.(),p?.()},[h?.onExited,p]),dt=b.useCallback(()=>{h?.onEntered?.(),g?.()},[h?.onEntered,g]);return y.jsxs(_3,{value:{returnFocus:q,disabled:O,controlled:xe.controlled,reference:$e,floating:de,x:xe.floating.x,y:xe.floating.y,arrowX:xe.floating?.middlewareData?.arrow?.x,arrowY:xe.floating?.middlewareData?.arrow?.y,opened:xe.opened,arrowRef:Be,transitionProps:{...h,onExited:Re,onEntered:dt},width:v,withArrow:S,arrowSize:E,arrowOffset:C,arrowRadius:R,arrowPosition:T,placement:xe.floating.placement,trapFocus:I,withinPortal:M,portalProps:$,zIndex:re,radius:j,shadow:k,closeOnEscape:L,onDismiss:X,onClose:xe.onClose,onToggle:xe.onToggle,getTargetId:()=>`${Ae}-target`,getDropdownId:()=>`${Ae}-dropdown`,withRoles:D,targetProps:Ge,__staticSelector:Z,classNames:A,styles:N,unstyled:z,variant:W,keepMounted:ie,getStyles:Ne,resolvedStyles:Ke,floatingStrategy:ve,referenceHidden:ye&&De!=="test"?xe.floating.middlewareData.hide?.referenceHidden:!1},children:[r,fe&&y.jsx(qr,{transition:"fade",mounted:xe.opened,duration:h?.duration||250,exitDuration:h?.exitDuration||250,children:nt=>y.jsx(za,{withinPortal:M,children:y.jsx(Vu,{...be,...Ne("overlay",{className:be?.className,style:[nt,be?.style]})})})})]})}Rn.Target=xS;Rn.Dropdown=Sm;Rn.displayName="@mantine/core/Popover";Rn.extend=e=>e;var fo={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const wS=b.forwardRef(({className:e,...o},r)=>y.jsxs(he,{component:"span",className:zt(fo.barsLoader,e),...o,ref:r,children:[y.jsx("span",{className:fo.bar}),y.jsx("span",{className:fo.bar}),y.jsx("span",{className:fo.bar})]}));wS.displayName="@mantine/core/Bars";const CS=b.forwardRef(({className:e,...o},r)=>y.jsxs(he,{component:"span",className:zt(fo.dotsLoader,e),...o,ref:r,children:[y.jsx("span",{className:fo.dot}),y.jsx("span",{className:fo.dot}),y.jsx("span",{className:fo.dot})]}));CS.displayName="@mantine/core/Dots";const ES=b.forwardRef(({className:e,...o},r)=>y.jsx(he,{component:"span",className:zt(fo.ovalLoader,e),...o,ref:r}));ES.displayName="@mantine/core/Oval";const RS={bars:wS,oval:ES,dots:CS},B3={loaders:RS,type:"oval"},$3=(e,{size:o,color:r})=>({root:{"--loader-size":Xe(o,"loader-size"),"--loader-color":r?Zt(r,e):void 0}}),Ma=ge((e,o)=>{const r=ce("Loader",B3,e),{size:a,color:l,type:c,vars:u,className:f,style:h,classNames:p,styles:g,unstyled:v,loaders:x,variant:S,children:E,...C}=r,R=_e({name:"Loader",props:r,classes:fo,className:f,style:h,classNames:p,styles:g,unstyled:v,vars:u,varsResolver:$3});return E?y.jsx(he,{...R("root"),ref:o,...C,children:E}):y.jsx(he,{...R("root"),ref:o,component:x[c],variant:S,size:a,...C})});Ma.defaultLoaders=RS;Ma.classes=fo;Ma.displayName="@mantine/core/Loader";var Ki={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const l1={orientation:"horizontal"},L3=(e,{borderWidth:o})=>({group:{"--ai-border-width":oe(o)}}),wm=ge((e,o)=>{const r=ce("ActionIconGroup",l1,e),{className:a,style:l,classNames:c,styles:u,unstyled:f,orientation:h,vars:p,borderWidth:g,variant:v,mod:x,...S}=ce("ActionIconGroup",l1,e),E=_e({name:"ActionIconGroup",props:r,classes:Ki,className:a,style:l,classNames:c,styles:u,unstyled:f,vars:p,varsResolver:L3,rootSelector:"group"});return y.jsx(he,{...E("group"),ref:o,variant:v,mod:[{"data-orientation":h},x],role:"group",...S})});wm.classes=Ki;wm.displayName="@mantine/core/ActionIconGroup";const s1={},k3=(e,{radius:o,color:r,gradient:a,variant:l,autoContrast:c,size:u})=>{const f=e.variantColorResolver({color:r||e.primaryColor,theme:e,gradient:a,variant:l||"filled",autoContrast:c});return{groupSection:{"--section-height":Xe(u,"section-height"),"--section-padding-x":Xe(u,"section-padding-x"),"--section-fz":nn(u),"--section-radius":o===void 0?void 0:kt(o),"--section-bg":r||l?f.background:void 0,"--section-color":f.color,"--section-bd":r||l?f.border:void 0}}},Cm=ge((e,o)=>{const r=ce("ActionIconGroupSection",s1,e),{className:a,style:l,classNames:c,styles:u,unstyled:f,vars:h,variant:p,gradient:g,radius:v,autoContrast:x,...S}=ce("ActionIconGroupSection",s1,e),E=_e({name:"ActionIconGroupSection",props:r,classes:Ki,className:a,style:l,classNames:c,styles:u,unstyled:f,vars:h,varsResolver:k3,rootSelector:"groupSection"});return y.jsx(he,{...E("groupSection"),ref:o,variant:p,...S})});Cm.classes=Ki;Cm.displayName="@mantine/core/ActionIconGroupSection";const H3={},U3=(e,{size:o,radius:r,variant:a,gradient:l,color:c,autoContrast:u})=>{const f=e.variantColorResolver({color:c||e.primaryColor,theme:e,gradient:l,variant:a||"filled",autoContrast:u});return{root:{"--ai-size":Xe(o,"ai-size"),"--ai-radius":r===void 0?void 0:kt(r),"--ai-bg":c||a?f.background:void 0,"--ai-hover":c||a?f.hover:void 0,"--ai-hover-color":c||a?f.hoverColor:void 0,"--ai-color":f.color,"--ai-bd":c||a?f.border:void 0}}},Yt=un((e,o)=>{const r=ce("ActionIcon",H3,e),{className:a,unstyled:l,variant:c,classNames:u,styles:f,style:h,loading:p,loaderProps:g,size:v,color:x,radius:S,__staticSelector:E,gradient:C,vars:R,children:T,disabled:z,"data-disabled":A,autoContrast:N,mod:B,...M}=r,$=_e({name:["ActionIcon",E],props:r,className:a,style:h,classes:Ki,classNames:u,styles:f,unstyled:l,vars:R,varsResolver:U3});return y.jsxs($n,{...$("root",{active:!z&&!p&&!A}),...M,unstyled:l,variant:c,size:v,disabled:z||p,ref:o,mod:[{loading:p,disabled:z||A},B],children:[y.jsx(qr,{mounted:!!p,transition:"slide-down",duration:150,children:L=>y.jsx(he,{component:"span",...$("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Ma,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...g})})}),y.jsx(he,{component:"span",mod:{loading:p},...$("icon"),children:T})]})});Yt.classes=Ki;Yt.displayName="@mantine/core/ActionIcon";Yt.Group=wm;Yt.GroupSection=Cm;const TS=b.forwardRef(({size:e="var(--cb-icon-size, 70%)",style:o,...r},a)=>y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...o,width:e,height:e},ref:a,...r,children:y.jsx("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})}));TS.displayName="@mantine/core/CloseIcon";var _S={root:"m_86a44da5","root--subtle":"m_220c80f2"};const P3={variant:"subtle"},V3=(e,{size:o,radius:r,iconSize:a})=>({root:{"--cb-size":Xe(o,"cb-size"),"--cb-radius":r===void 0?void 0:kt(r),"--cb-icon-size":oe(a)}}),Wi=un((e,o)=>{const r=ce("CloseButton",P3,e),{iconSize:a,children:l,vars:c,radius:u,className:f,classNames:h,style:p,styles:g,unstyled:v,"data-disabled":x,disabled:S,variant:E,icon:C,mod:R,__staticSelector:T,...z}=r,A=_e({name:T||"CloseButton",props:r,className:f,style:p,classes:_S,classNames:h,styles:g,unstyled:v,vars:c,varsResolver:V3});return y.jsxs($n,{ref:o,...z,unstyled:v,variant:E,disabled:S,mod:[{disabled:S||x},R],...A("root",{variant:E,active:!S&&!x}),children:[C||y.jsx(TS,{}),l]})});Wi.classes=_S;Wi.displayName="@mantine/core/CloseButton";function Y3(e){return b.Children.toArray(e).filter(Boolean)}var DS={root:"m_4081bf90"};const G3={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},X3=(e,{grow:o,preventGrowOverflow:r,gap:a,align:l,justify:c,wrap:u},{childWidth:f})=>({root:{"--group-child-width":o&&r?f:void 0,"--group-gap":sn(a),"--group-align":l,"--group-justify":c,"--group-wrap":u}}),mt=ge((e,o)=>{const r=ce("Group",G3,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,children:h,gap:p,align:g,justify:v,wrap:x,grow:S,preventGrowOverflow:E,vars:C,variant:R,__size:T,mod:z,...A}=r,N=Y3(h),B=N.length,M=sn(p??"md"),L={childWidth:`calc(${100/B}% - (${M} - ${M} / ${B}))`},H=_e({name:"Group",props:r,stylesCtx:L,className:l,style:c,classes:DS,classNames:a,styles:u,unstyled:f,vars:C,varsResolver:X3});return y.jsx(he,{...H("root"),ref:o,variant:R,mod:[{grow:S},z],size:T,...A,children:N})});mt.classes=DS;mt.displayName="@mantine/core/Group";const[q3,sr]=zo("ModalBase component was not found in tree");function I3({opened:e,transitionDuration:o}){const[r,a]=b.useState(e),l=b.useRef(-1),u=Nu()?0:o;return b.useEffect(()=>(e?(a(!0),window.clearTimeout(l.current)):u===0?a(!1):l.current=window.setTimeout(()=>a(!1),u),()=>window.clearTimeout(l.current)),[e,u]),r}function F3({id:e,transitionProps:o,opened:r,trapFocus:a,closeOnEscape:l,onClose:c,returnFocus:u}){const f=Jn(e),[h,p]=b.useState(!1),[g,v]=b.useState(!1),x=typeof o?.duration=="number"?o?.duration:200,S=I3({opened:r,transitionDuration:x});return Sx("keydown",E=>{E.key==="Escape"&&l&&!E.isComposing&&r&&E.target?.getAttribute("data-mantine-stop-propagation")!=="true"&&c()},{capture:!0}),vx({opened:r,shouldReturnFocus:a&&u}),{_id:f,titleMounted:h,bodyMounted:g,shouldLockScroll:S,setTitleMounted:p,setBodyMounted:v}}const NS=b.forwardRef(({keepMounted:e,opened:o,onClose:r,id:a,transitionProps:l,onExitTransitionEnd:c,onEnterTransitionEnd:u,trapFocus:f,closeOnEscape:h,returnFocus:p,closeOnClickOutside:g,withinPortal:v,portalProps:x,lockScroll:S,children:E,zIndex:C,shadow:R,padding:T,__vars:z,unstyled:A,removeScrollProps:N,...B},M)=>{const{_id:$,titleMounted:L,bodyMounted:H,shouldLockScroll:I,setTitleMounted:Y,setBodyMounted:X}=F3({id:a,transitionProps:l,opened:o,trapFocus:f,closeOnEscape:h,onClose:r,returnFocus:p}),{key:ee,...ne}=N||{};return y.jsx(za,{...x,withinPortal:v,children:y.jsx(q3,{value:{opened:o,onClose:r,closeOnClickOutside:g,onExitTransitionEnd:c,onEnterTransitionEnd:u,transitionProps:{...l,keepMounted:e},getTitleId:()=>`${$}-title`,getBodyId:()=>`${$}-body`,titleMounted:L,bodyMounted:H,setTitleMounted:Y,setBodyMounted:X,trapFocus:f,closeOnEscape:h,zIndex:C,unstyled:A},children:y.jsx(ki,{enabled:I&&S,...ne,children:y.jsx(he,{ref:M,...B,__vars:{...z,"--mb-z-index":(C||vo("modal")).toString(),"--mb-shadow":Fp(R),"--mb-padding":sn(T)},children:E})},ee)})})});NS.displayName="@mantine/core/ModalBase";function Z3(){const e=sr();return b.useEffect(()=>(e.setBodyMounted(!0),()=>e.setBodyMounted(!1)),[]),e.getBodyId()}var Ui={title:"m_615af6c9",header:"m_b5489c3c",inner:"m_60c222c7",content:"m_fd1ab0aa",close:"m_606cb269",body:"m_5df29311"};const AS=b.forwardRef(({className:e,...o},r)=>{const a=Z3(),l=sr();return y.jsx(he,{ref:r,...o,id:a,className:zt({[Ui.body]:!l.unstyled},e)})});AS.displayName="@mantine/core/ModalBaseBody";const zS=b.forwardRef(({className:e,onClick:o,...r},a)=>{const l=sr();return y.jsx(Wi,{ref:a,...r,onClick:c=>{l.onClose(),o?.(c)},className:zt({[Ui.close]:!l.unstyled},e),unstyled:l.unstyled})});zS.displayName="@mantine/core/ModalBaseCloseButton";const MS=b.forwardRef(({transitionProps:e,className:o,innerProps:r,onKeyDown:a,style:l,...c},u)=>{const f=sr();return y.jsx(qr,{mounted:f.opened,transition:"pop",...f.transitionProps,onExited:()=>{f.onExitTransitionEnd?.(),f.transitionProps?.onExited?.()},onEntered:()=>{f.onEnterTransitionEnd?.(),f.transitionProps?.onEntered?.()},...e,children:h=>y.jsx("div",{...r,className:zt({[Ui.inner]:!f.unstyled},r.className),children:y.jsx(Yu,{active:f.opened&&f.trapFocus,innerRef:u,children:y.jsx(Qi,{...c,component:"section",role:"dialog",tabIndex:-1,"aria-modal":!0,"aria-describedby":f.bodyMounted?f.getBodyId():void 0,"aria-labelledby":f.titleMounted?f.getTitleId():void 0,style:[l,h],className:zt({[Ui.content]:!f.unstyled},o),unstyled:f.unstyled,children:c.children})})})})});MS.displayName="@mantine/core/ModalBaseContent";const OS=b.forwardRef(({className:e,...o},r)=>{const a=sr();return y.jsx(he,{component:"header",ref:r,className:zt({[Ui.header]:!a.unstyled},e),...o})});OS.displayName="@mantine/core/ModalBaseHeader";const Q3={duration:200,timingFunction:"ease",transition:"fade"};function K3(e){const o=sr();return{...Q3,...o.transitionProps,...e}}const jS=b.forwardRef(({onClick:e,transitionProps:o,style:r,visible:a,...l},c)=>{const u=sr(),f=K3(o);return y.jsx(qr,{mounted:a!==void 0?a:u.opened,...f,transition:"fade",children:h=>y.jsx(Vu,{ref:c,fixed:!0,style:[r,h],zIndex:u.zIndex,unstyled:u.unstyled,onClick:p=>{e?.(p),u.closeOnClickOutside&&u.onClose()},...l})})});jS.displayName="@mantine/core/ModalBaseOverlay";function W3(){const e=sr();return b.useEffect(()=>(e.setTitleMounted(!0),()=>e.setTitleMounted(!1)),[]),e.getTitleId()}const BS=b.forwardRef(({className:e,...o},r)=>{const a=W3(),l=sr();return y.jsx(he,{component:"h2",ref:r,className:zt({[Ui.title]:!l.unstyled},e),...o,id:a})});BS.displayName="@mantine/core/ModalBaseTitle";function J3({children:e}){return y.jsx(y.Fragment,{children:e})}const[eN,tN]=Ss({size:"sm"}),nN={},$S=ge((e,o)=>{const r=ce("InputClearButton",nN,e),{size:a,variant:l,vars:c,classNames:u,styles:f,...h}=r,p=tN(),{resolvedClassNames:g,resolvedStyles:v}=Xi({classNames:u,styles:f,props:r});return y.jsx(Wi,{variant:l||"transparent",ref:o,size:a||p?.size||"sm",classNames:g,styles:v,__staticSelector:"InputClearButton",...h})});$S.displayName="@mantine/core/InputClearButton";const[oN,ws]=Ss({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var to={wrapper:"m_6c018570",input:"m_8fb7ebe7",section:"m_82577fc2",placeholder:"m_88bacfd0",root:"m_46b77525",label:"m_8fdc1311",required:"m_78a94662",error:"m_8f816625",description:"m_fe47ce59"};const c1={},rN=(e,{size:o})=>({description:{"--input-description-size":o===void 0?void 0:`calc(${nn(o)} - ${oe(2)})`}}),Gu=ge((e,o)=>{const r=ce("InputDescription",c1,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,size:p,__staticSelector:g,__inheritStyles:v=!0,variant:x,...S}=ce("InputDescription",c1,r),E=ws(),C=_e({name:["InputWrapper",g],props:r,classes:to,className:l,style:c,classNames:a,styles:u,unstyled:f,rootSelector:"description",vars:h,varsResolver:rN}),R=v&&E?.getStyles||C;return y.jsx(he,{component:"p",ref:o,variant:x,size:p,...R("description",E?.getStyles?{className:l,style:c}:void 0),...S})});Gu.classes=to;Gu.displayName="@mantine/core/InputDescription";const aN={},iN=(e,{size:o})=>({error:{"--input-error-size":o===void 0?void 0:`calc(${nn(o)} - ${oe(2)})`}}),Xu=ge((e,o)=>{const r=ce("InputError",aN,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,size:p,__staticSelector:g,__inheritStyles:v=!0,variant:x,...S}=r,E=_e({name:["InputWrapper",g],props:r,classes:to,className:l,style:c,classNames:a,styles:u,unstyled:f,rootSelector:"error",vars:h,varsResolver:iN}),C=ws(),R=v&&C?.getStyles||E;return y.jsx(he,{component:"p",ref:o,variant:x,size:p,...R("error",C?.getStyles?{className:l,style:c}:void 0),...S})});Xu.classes=to;Xu.displayName="@mantine/core/InputError";const u1={labelElement:"label"},lN=(e,{size:o})=>({label:{"--input-label-size":nn(o),"--input-asterisk-color":void 0}}),qu=ge((e,o)=>{const r=ce("InputLabel",u1,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,labelElement:p,size:g,required:v,htmlFor:x,onMouseDown:S,children:E,__staticSelector:C,variant:R,mod:T,...z}=ce("InputLabel",u1,r),A=_e({name:["InputWrapper",C],props:r,classes:to,className:l,style:c,classNames:a,styles:u,unstyled:f,rootSelector:"label",vars:h,varsResolver:lN}),N=ws(),B=N?.getStyles||A;return y.jsxs(he,{...B("label",N?.getStyles?{className:l,style:c}:void 0),component:p,variant:R,size:g,ref:o,htmlFor:p==="label"?x:void 0,mod:[{required:v},T],onMouseDown:M=>{S?.(M),!M.defaultPrevented&&M.detail>1&&M.preventDefault()},...z,children:[E,v&&y.jsx("span",{...B("required"),"aria-hidden":!0,children:" *"})]})});qu.classes=to;qu.displayName="@mantine/core/InputLabel";const f1={},Em=ge((e,o)=>{const r=ce("InputPlaceholder",f1,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,__staticSelector:p,variant:g,error:v,mod:x,...S}=ce("InputPlaceholder",f1,r),E=_e({name:["InputPlaceholder",p],props:r,classes:to,className:l,style:c,classNames:a,styles:u,unstyled:f,rootSelector:"placeholder"});return y.jsx(he,{...E("placeholder"),mod:[{error:!!v},x],component:"span",variant:g,ref:o,...S})});Em.classes=to;Em.displayName="@mantine/core/InputPlaceholder";function sN(e,{hasDescription:o,hasError:r}){const a=e.findIndex(h=>h==="input"),l=e.slice(0,a),c=e.slice(a+1),u=o&&l.includes("description")||r&&l.includes("error");return{offsetBottom:o&&c.includes("description")||r&&c.includes("error"),offsetTop:u}}const cN={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},uN=(e,{size:o})=>({label:{"--input-label-size":nn(o),"--input-asterisk-color":void 0},error:{"--input-error-size":o===void 0?void 0:`calc(${nn(o)} - ${oe(2)})`},description:{"--input-description-size":o===void 0?void 0:`calc(${nn(o)} - ${oe(2)})`}}),Rm=ge((e,o)=>{const r=ce("InputWrapper",cN,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,size:p,variant:g,__staticSelector:v,inputContainer:x,inputWrapperOrder:S,label:E,error:C,description:R,labelProps:T,descriptionProps:z,errorProps:A,labelElement:N,children:B,withAsterisk:M,id:$,required:L,__stylesApiProps:H,mod:I,...Y}=r,X=_e({name:["InputWrapper",v],props:H||r,classes:to,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:uN}),ee={size:p,variant:g,__staticSelector:v},ne=Jn($),re=typeof M=="boolean"?M:L,j=A?.id||`${ne}-error`,k=z?.id||`${ne}-description`,V=ne,P=!!C&&typeof C!="boolean",Z=!!R,D=`${P?j:""} ${Z?k:""}`,O=D.trim().length>0?D.trim():void 0,q=T?.id||`${ne}-label`,W=E&&y.jsx(qu,{labelElement:N,id:q,htmlFor:V,required:re,...ee,...T,children:E},"label"),ie=Z&&y.jsx(Gu,{...z,...ee,size:z?.size||ee.size,id:z?.id||k,children:R},"description"),ue=y.jsx(b.Fragment,{children:x(B)},"input"),ve=P&&b.createElement(Xu,{...A,...ee,size:A?.size||ee.size,key:"error",id:A?.id||j},C),fe=S.map(be=>{switch(be){case"label":return W;case"input":return ue;case"description":return ie;case"error":return ve;default:return null}});return y.jsx(oN,{value:{getStyles:X,describedBy:O,inputId:V,labelId:q,...sN(S,{hasDescription:Z,hasError:P})},children:y.jsx(he,{ref:o,variant:g,size:p,mod:[{error:!!C},I],...X("root"),...Y,children:fe})})});Rm.classes=to;Rm.displayName="@mantine/core/InputWrapper";const fN={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0},dN=(e,o,r)=>({wrapper:{"--input-margin-top":r.offsetTop?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-margin-bottom":r.offsetBottom?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-height":Xe(o.size,"input-height"),"--input-fz":nn(o.size),"--input-radius":o.radius===void 0?void 0:kt(o.radius),"--input-left-section-width":o.leftSectionWidth!==void 0?oe(o.leftSectionWidth):void 0,"--input-right-section-width":o.rightSectionWidth!==void 0?oe(o.rightSectionWidth):void 0,"--input-padding-y":o.multiline?Xe(o.size,"input-padding-y"):void 0,"--input-left-section-pointer-events":o.leftSectionPointerEvents,"--input-right-section-pointer-events":o.rightSectionPointerEvents}}),St=un((e,o)=>{const r=ce("Input",fN,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,required:h,__staticSelector:p,__stylesApiProps:g,size:v,wrapperProps:x,error:S,disabled:E,leftSection:C,leftSectionProps:R,leftSectionWidth:T,rightSection:z,rightSectionProps:A,rightSectionWidth:N,rightSectionPointerEvents:B,leftSectionPointerEvents:M,variant:$,vars:L,pointer:H,multiline:I,radius:Y,id:X,withAria:ee,withErrorStyles:ne,mod:re,inputSize:j,__clearSection:k,__clearable:V,__defaultRightSection:P,...Z}=r,{styleProps:D,rest:O}=qi(Z),q=ws(),W={offsetBottom:q?.offsetBottom,offsetTop:q?.offsetTop},ie=_e({name:["Input",p],props:g||r,classes:to,className:l,style:c,classNames:a,styles:u,unstyled:f,stylesCtx:W,rootSelector:"wrapper",vars:L,varsResolver:dN}),ue=ee?{required:h,disabled:E,"aria-invalid":!!S,"aria-describedby":q?.describedBy,id:q?.inputId||X}:{},ve=z||V&&k||P;return y.jsx(eN,{value:{size:v||"sm"},children:y.jsxs(he,{...ie("wrapper"),...D,...x,mod:[{error:!!S&&ne,pointer:H,disabled:E,multiline:I,"data-with-right-section":!!ve,"data-with-left-section":!!C},re],variant:$,size:v,children:[C&&y.jsx("div",{...R,"data-position":"left",...ie("section",{className:R?.className,style:R?.style}),children:C}),y.jsx(he,{component:"input",...O,...ue,ref:o,required:h,mod:{disabled:E,error:!!S&&ne},variant:$,__size:j,...ie("input")}),ve&&y.jsx("div",{...A,"data-position":"right",...ie("section",{className:A?.className,style:A?.style}),children:ve})]})})});St.classes=to;St.Wrapper=Rm;St.Label=qu;St.Error=Xu;St.Description=Gu;St.Placeholder=Em;St.ClearButton=$S;St.displayName="@mantine/core/Input";function hN(e,o,r){const a=ce(e,o,r),{label:l,description:c,error:u,required:f,classNames:h,styles:p,className:g,unstyled:v,__staticSelector:x,__stylesApiProps:S,errorProps:E,labelProps:C,descriptionProps:R,wrapperProps:T,id:z,size:A,style:N,inputContainer:B,inputWrapperOrder:M,withAsterisk:$,variant:L,vars:H,mod:I,...Y}=a,{styleProps:X,rest:ee}=qi(Y),ne={label:l,description:c,error:u,required:f,classNames:h,className:g,__staticSelector:x,__stylesApiProps:S||a,errorProps:E,labelProps:C,descriptionProps:R,unstyled:v,styles:p,size:A,style:N,inputContainer:B,inputWrapperOrder:M,withAsterisk:$,variant:L,id:z,mod:I,...T};return{...ee,classNames:h,styles:p,unstyled:v,wrapperProps:{...ne,...X},inputProps:{required:f,classNames:h,styles:p,unstyled:v,size:A,__staticSelector:x,__stylesApiProps:S||a,error:u,variant:L,id:z}}}const pN={__staticSelector:"InputBase",withAria:!0},cr=un((e,o)=>{const{inputProps:r,wrapperProps:a,...l}=hN("InputBase",pN,e);return y.jsx(St.Wrapper,{...a,children:y.jsx(St,{...r,...l,ref:o})})});cr.classes={...St.classes,...St.Wrapper.classes};cr.displayName="@mantine/core/InputBase";function mN(e,o){if(!o||!e)return!1;let r=o.parentNode;for(;r!=null;){if(r===e)return!0;r=r.parentNode}return!1}function gN({target:e,parent:o,ref:r,displayAfterTransitionEnd:a}){const l=b.useRef(-1),[c,u]=b.useState(!1),[f,h]=b.useState(typeof a=="boolean"?a:!1),p=()=>{if(!e||!o||!r.current)return;const S=e.getBoundingClientRect(),E=o.getBoundingClientRect(),C=window.getComputedStyle(e),R=window.getComputedStyle(o),T=Vr(C.borderTopWidth)+Vr(R.borderTopWidth),z=Vr(C.borderLeftWidth)+Vr(R.borderLeftWidth),A={top:S.top-E.top-T,left:S.left-E.left-z,width:S.width,height:S.height};r.current.style.transform=`translateY(${A.top}px) translateX(${A.left}px)`,r.current.style.width=`${A.width}px`,r.current.style.height=`${A.height}px`},g=()=>{window.clearTimeout(l.current),r.current&&(r.current.style.transitionDuration="0ms"),p(),l.current=window.setTimeout(()=>{r.current&&(r.current.style.transitionDuration="")},30)},v=b.useRef(null),x=b.useRef(null);return b.useEffect(()=>{if(p(),e)return v.current=new ResizeObserver(g),v.current.observe(e),o&&(x.current=new ResizeObserver(g),x.current.observe(o)),()=>{v.current?.disconnect(),x.current?.disconnect()}},[o,e]),b.useEffect(()=>{if(o){const S=E=>{mN(E.target,o)&&(g(),h(!1))};return o.addEventListener("transitionend",S),()=>{o.removeEventListener("transitionend",S)}}},[o]),lT(()=>{dT()!=="test"&&u(!0)},20,{autoInvoke:!0}),cT(S=>{S.forEach(E=>{E.type==="attributes"&&E.attributeName==="dir"&&g()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:c,hidden:f}}var LS={root:"m_96b553a6"};const vN={},yN=(e,{transitionDuration:o})=>({root:{"--transition-duration":typeof o=="number"?`${o}ms`:o}}),Tm=ge((e,o)=>{const r=ce("FloatingIndicator",vN,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,target:p,parent:g,transitionDuration:v,mod:x,displayAfterTransitionEnd:S,...E}=r,C=_e({name:"FloatingIndicator",classes:LS,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:yN}),R=b.useRef(null),{initialized:T,hidden:z}=gN({target:p,parent:g,ref:R,displayAfterTransitionEnd:S}),A=Mt(o,R);return!p||!g?null:y.jsx(he,{ref:A,mod:[{initialized:T,hidden:z},x],...C("root"),...E})});Tm.displayName="@mantine/core/FloatingIndicator";Tm.classes=LS;function kS({style:e,size:o=16,...r}){return y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...e,width:oe(o),height:oe(o),display:"block"},...r,children:y.jsx("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}kS.displayName="@mantine/core/AccordionChevron";var HS={root:"m_66836ed3",wrapper:"m_a5d60502",body:"m_667c2793",title:"m_6a03f287",label:"m_698f4f23",icon:"m_667f2a6a",message:"m_7fa78076",closeButton:"m_87f54839"};const bN={},xN=(e,{radius:o,color:r,variant:a,autoContrast:l})=>{const c=e.variantColorResolver({color:r||e.primaryColor,theme:e,variant:a||"light",autoContrast:l});return{root:{"--alert-radius":o===void 0?void 0:kt(o),"--alert-bg":r||a?c.background:void 0,"--alert-color":c.color,"--alert-bd":r||a?c.border:void 0}}},Iu=ge((e,o)=>{const r=ce("Alert",bN,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,radius:p,color:g,title:v,children:x,id:S,icon:E,withCloseButton:C,onClose:R,closeButtonLabel:T,variant:z,autoContrast:A,...N}=r,B=_e({name:"Alert",classes:HS,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:xN}),M=Jn(S),$=v&&`${M}-title`||void 0,L=`${M}-body`;return y.jsx(he,{id:M,...B("root",{variant:z}),variant:z,ref:o,...N,role:"alert","aria-describedby":L,"aria-labelledby":$,children:y.jsxs("div",{...B("wrapper"),children:[E&&y.jsx("div",{...B("icon"),children:E}),y.jsxs("div",{...B("body"),children:[v&&y.jsx("div",{...B("title"),"data-with-close-button":C||void 0,children:y.jsx("span",{id:$,...B("label"),children:v})}),x&&y.jsx("div",{id:L,...B("message"),"data-variant":z,children:x})]}),C&&y.jsx(Wi,{...B("closeButton"),onClick:R,variant:"transparent",size:16,iconSize:16,"aria-label":T,unstyled:f})]})})});Iu.classes=HS;Iu.displayName="@mantine/core/Alert";var US={root:"m_b6d8b162"};function SN(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const wN={inherit:!1},CN=(e,{variant:o,lineClamp:r,gradient:a,size:l,color:c})=>({root:{"--text-fz":nn(l),"--text-lh":PR(l),"--text-gradient":o==="gradient"?gp(a,e):void 0,"--text-line-clamp":typeof r=="number"?r.toString():void 0,"--text-color":c?Zt(c,e):void 0}}),Ve=un((e,o)=>{const r=ce("Text",wN,e),{lineClamp:a,truncate:l,inline:c,inherit:u,gradient:f,span:h,__staticSelector:p,vars:g,className:v,style:x,classNames:S,styles:E,unstyled:C,variant:R,mod:T,size:z,...A}=r,N=_e({name:["Text",p],props:r,classes:US,className:v,style:x,classNames:S,styles:E,unstyled:C,vars:g,varsResolver:CN});return y.jsx(he,{...N("root",{focusable:!0}),ref:o,component:h?"span":"p",variant:R,mod:[{"data-truncate":SN(l),"data-line-clamp":typeof a=="number","data-inline":c,"data-inherit":u},T],size:z,...A})});Ve.classes=US;Ve.displayName="@mantine/core/Text";const[EN,Ji]=zo("AppShell was not found in tree");var Ir={root:"m_89ab340",navbar:"m_45252eee",aside:"m_9cdde9a",header:"m_3b16f56b",main:"m_8983817",footer:"m_3840c879",section:"m_6dcfc7c7"};const RN={},_m=ge((e,o)=>{const r=ce("AppShellAside",RN,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,withBorder:p,zIndex:g,mod:v,...x}=r,S=Ji();return S.disabled?null:y.jsx(he,{component:"aside",ref:o,mod:[{"with-border":p??S.withBorder},v],...S.getStyles("aside",{className:l,classNames:a,styles:u,style:c}),...x,__vars:{"--app-shell-aside-z-index":`calc(${g??S.zIndex} + 1)`}})});_m.classes=Ir;_m.displayName="@mantine/core/AppShellAside";const TN={},Dm=ge((e,o)=>{const r=ce("AppShellFooter",TN,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,withBorder:p,zIndex:g,mod:v,...x}=r,S=Ji();return S.disabled?null:y.jsx(he,{component:"footer",ref:o,mod:[{"with-border":p??S.withBorder},v],...S.getStyles("footer",{className:zt({[ki.classNames.zeroRight]:S.offsetScrollbars},l),classNames:a,styles:u,style:c}),...x,__vars:{"--app-shell-footer-z-index":(g??S.zIndex)?.toString()}})});Dm.classes=Ir;Dm.displayName="@mantine/core/AppShellFooter";const _N={},Nm=ge((e,o)=>{const r=ce("AppShellHeader",_N,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,withBorder:p,zIndex:g,mod:v,...x}=r,S=Ji();return S.disabled?null:y.jsx(he,{component:"header",ref:o,mod:[{"with-border":p??S.withBorder},v],...S.getStyles("header",{className:zt({[ki.classNames.zeroRight]:S.offsetScrollbars},l),classNames:a,styles:u,style:c}),...x,__vars:{"--app-shell-header-z-index":(g??S.zIndex)?.toString()}})});Nm.classes=Ir;Nm.displayName="@mantine/core/AppShellHeader";const DN={},Am=ge((e,o)=>{const r=ce("AppShellMain",DN,e),{classNames:a,className:l,style:c,styles:u,vars:f,...h}=r,p=Ji();return y.jsx(he,{component:"main",ref:o,...p.getStyles("main",{className:l,style:c,classNames:a,styles:u}),...h})});Am.classes=Ir;Am.displayName="@mantine/core/AppShellMain";function Cs(e){return typeof e=="object"?e.base:e}function Es(e){const o=typeof e=="object"&&e!==null&&typeof e.base<"u"&&Object.keys(e).length===1;return typeof e=="number"||typeof e=="string"||o}function Rs(e){return!(typeof e!="object"||e===null||Object.keys(e).length===1&&"base"in e)}function NN({baseStyles:e,minMediaStyles:o,maxMediaStyles:r,aside:a,theme:l}){const c=a?.width,u="translateX(var(--app-shell-aside-width))",f="translateX(calc(var(--app-shell-aside-width) * -1))";if(a?.breakpoint&&!a?.collapsed?.mobile&&(r[a?.breakpoint]=r[a?.breakpoint]||{},r[a?.breakpoint]["--app-shell-aside-width"]="100%",r[a?.breakpoint]["--app-shell-aside-offset"]="0px"),Es(c)){const h=oe(Cs(c));e["--app-shell-aside-width"]=h,e["--app-shell-aside-offset"]=h}if(Rs(c)&&(typeof c.base<"u"&&(e["--app-shell-aside-width"]=oe(c.base),e["--app-shell-aside-offset"]=oe(c.base)),At(c).forEach(h=>{h!=="base"&&(o[h]=o[h]||{},o[h]["--app-shell-aside-width"]=oe(c[h]),o[h]["--app-shell-aside-offset"]=oe(c[h]))})),a?.collapsed?.desktop){const h=a.breakpoint;o[h]=o[h]||{},o[h]["--app-shell-aside-transform"]=u,o[h]["--app-shell-aside-transform-rtl"]=f,o[h]["--app-shell-aside-offset"]="0px !important"}if(a?.collapsed?.mobile){const h=Zp(a.breakpoint,l.breakpoints)-.1;r[h]=r[h]||{},r[h]["--app-shell-aside-width"]="100%",r[h]["--app-shell-aside-offset"]="0px",r[h]["--app-shell-aside-transform"]=u,r[h]["--app-shell-aside-transform-rtl"]=f}}function AN({baseStyles:e,minMediaStyles:o,footer:r}){const a=r?.height,l="translateY(var(--app-shell-footer-height))",c=r?.offset??!0;if(Es(a)){const u=oe(Cs(a));e["--app-shell-footer-height"]=u,c&&(e["--app-shell-footer-offset"]=u)}Rs(a)&&(typeof a.base<"u"&&(e["--app-shell-footer-height"]=oe(a.base),c&&(e["--app-shell-footer-offset"]=oe(a.base))),At(a).forEach(u=>{u!=="base"&&(o[u]=o[u]||{},o[u]["--app-shell-footer-height"]=oe(a[u]),c&&(o[u]["--app-shell-footer-offset"]=oe(a[u])))})),r?.collapsed&&(e["--app-shell-footer-transform"]=l,e["--app-shell-footer-offset"]="0px !important")}function zN({baseStyles:e,minMediaStyles:o,header:r}){const a=r?.height,l="translateY(calc(var(--app-shell-header-height) * -1))",c=r?.offset??!0;if(Es(a)){const u=oe(Cs(a));e["--app-shell-header-height"]=u,c&&(e["--app-shell-header-offset"]=u)}Rs(a)&&(typeof a.base<"u"&&(e["--app-shell-header-height"]=oe(a.base),c&&(e["--app-shell-header-offset"]=oe(a.base))),At(a).forEach(u=>{u!=="base"&&(o[u]=o[u]||{},o[u]["--app-shell-header-height"]=oe(a[u]),c&&(o[u]["--app-shell-header-offset"]=oe(a[u])))})),r?.collapsed&&(e["--app-shell-header-transform"]=l,e["--app-shell-header-offset"]="0px !important")}function MN({baseStyles:e,minMediaStyles:o,maxMediaStyles:r,navbar:a,theme:l}){const c=a?.width,u="translateX(calc(var(--app-shell-navbar-width) * -1))",f="translateX(var(--app-shell-navbar-width))";if(a?.breakpoint&&!a?.collapsed?.mobile&&(r[a?.breakpoint]=r[a?.breakpoint]||{},r[a?.breakpoint]["--app-shell-navbar-width"]="100%",r[a?.breakpoint]["--app-shell-navbar-offset"]="0px"),Es(c)){const h=oe(Cs(c));e["--app-shell-navbar-width"]=h,e["--app-shell-navbar-offset"]=h}if(Rs(c)&&(typeof c.base<"u"&&(e["--app-shell-navbar-width"]=oe(c.base),e["--app-shell-navbar-offset"]=oe(c.base)),At(c).forEach(h=>{h!=="base"&&(o[h]=o[h]||{},o[h]["--app-shell-navbar-width"]=oe(c[h]),o[h]["--app-shell-navbar-offset"]=oe(c[h]))})),a?.collapsed?.desktop){const h=a.breakpoint;o[h]=o[h]||{},o[h]["--app-shell-navbar-transform"]=u,o[h]["--app-shell-navbar-transform-rtl"]=f,o[h]["--app-shell-navbar-offset"]="0px !important"}if(a?.collapsed?.mobile){const h=Zp(a.breakpoint,l.breakpoints)-.1;r[h]=r[h]||{},r[h]["--app-shell-navbar-width"]="100%",r[h]["--app-shell-navbar-offset"]="0px",r[h]["--app-shell-navbar-transform"]=u,r[h]["--app-shell-navbar-transform-rtl"]=f}}function Ih(e){return Number(e)===0?"0px":sn(e)}function ON({padding:e,baseStyles:o,minMediaStyles:r}){Es(e)&&(o["--app-shell-padding"]=Ih(Cs(e))),Rs(e)&&(e.base&&(o["--app-shell-padding"]=Ih(e.base)),At(e).forEach(a=>{a!=="base"&&(r[a]=r[a]||{},r[a]["--app-shell-padding"]=Ih(e[a]))}))}function jN({navbar:e,header:o,footer:r,aside:a,padding:l,theme:c}){const u={},f={},h={};MN({baseStyles:h,minMediaStyles:u,maxMediaStyles:f,navbar:e,theme:c}),NN({baseStyles:h,minMediaStyles:u,maxMediaStyles:f,aside:a,theme:c}),zN({baseStyles:h,minMediaStyles:u,header:o}),AN({baseStyles:h,minMediaStyles:u,footer:r}),ON({baseStyles:h,minMediaStyles:u,padding:l});const p=pp(At(u),c.breakpoints).map(x=>({query:`(min-width: ${du(x.px)})`,styles:u[x.value]})),g=pp(At(f),c.breakpoints).map(x=>({query:`(max-width: ${du(x.px)})`,styles:f[x.value]})),v=[...p,...g];return{baseStyles:h,media:v}}function BN({navbar:e,header:o,aside:r,footer:a,padding:l}){const c=cn(),u=ar(),{media:f,baseStyles:h}=jN({navbar:e,header:o,footer:a,aside:r,padding:l,theme:c});return y.jsx(Ou,{media:f,styles:h,selector:u.cssVariablesSelector})}const $N={},zm=ge((e,o)=>{const r=ce("AppShellNavbar",$N,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,withBorder:p,zIndex:g,mod:v,...x}=r,S=Ji();return S.disabled?null:y.jsx(he,{component:"nav",ref:o,mod:[{"with-border":p??S.withBorder},v],...S.getStyles("navbar",{className:l,classNames:a,styles:u,style:c}),...x,__vars:{"--app-shell-navbar-z-index":`calc(${g??S.zIndex} + 1)`}})});zm.classes=Ir;zm.displayName="@mantine/core/AppShellNavbar";const LN={},Mm=un((e,o)=>{const r=ce("AppShellSection",LN,e),{classNames:a,className:l,style:c,styles:u,vars:f,grow:h,mod:p,...g}=r,v=Ji();return y.jsx(he,{ref:o,mod:[{grow:h},p],...v.getStyles("section",{className:l,style:c,classNames:a,styles:u}),...g})});Mm.classes=Ir;Mm.displayName="@mantine/core/AppShellSection";function kN({transitionDuration:e,disabled:o}){const[r,a]=b.useState(!0),l=b.useRef(-1),c=b.useRef(-1);return Sx("resize",()=>{a(!0),clearTimeout(l.current),l.current=window.setTimeout(()=>b.startTransition(()=>{a(!1)}),200)}),Gi(()=>{a(!0),clearTimeout(c.current),c.current=window.setTimeout(()=>b.startTransition(()=>{a(!1)}),e||0)},[o,e]),r}const HN={withBorder:!0,padding:0,transitionDuration:200,transitionTimingFunction:"ease",zIndex:vo("app")},UN=(e,{transitionDuration:o,transitionTimingFunction:r})=>({root:{"--app-shell-transition-duration":`${o}ms`,"--app-shell-transition-timing-function":r}}),mo=ge((e,o)=>{const r=ce("AppShell",HN,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,navbar:p,withBorder:g,padding:v,transitionDuration:x,transitionTimingFunction:S,header:E,zIndex:C,layout:R,disabled:T,aside:z,footer:A,offsetScrollbars:N=R!=="alt",mod:B,...M}=r,$=_e({name:"AppShell",classes:Ir,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:UN}),L=kN({disabled:T,transitionDuration:x});return y.jsxs(EN,{value:{getStyles:$,withBorder:g,zIndex:C,disabled:T,offsetScrollbars:N},children:[y.jsx(BN,{navbar:p,header:E,aside:z,footer:A,padding:v}),y.jsx(he,{ref:o,...$("root"),mod:[{resizing:L,layout:R,disabled:T},B],...M})]})});mo.classes=Ir;mo.displayName="@mantine/core/AppShell";mo.Navbar=zm;mo.Header=Nm;mo.Main=Am;mo.Aside=_m;mo.Footer=Dm;mo.Section=Mm;function PS(e){return typeof e=="string"?{value:e,label:e}:"value"in e&&!("label"in e)?{value:e.value,label:e.value,disabled:e.disabled}:typeof e=="number"?{value:e.toString(),label:e.toString()}:"group"in e?{group:e.group,items:e.items.map(o=>PS(o))}:e}function PN(e){return e?e.map(o=>PS(o)):[]}function VS(e){return e.reduce((o,r)=>"group"in r?{...o,...VS(r.items)}:(o[r.value]=r,o),{})}var En={dropdown:"m_88b62a41",search:"m_985517d8",options:"m_b2821a6e",option:"m_92253aa5",empty:"m_2530cd1d",header:"m_858f94bd",footer:"m_82b967cb",group:"m_254f3e4f",groupLabel:"m_2bb2e9e5",chevron:"m_2943220b",optionsDropdownOption:"m_390b5f4",optionsDropdownCheckIcon:"m_8ee53fc2"};const VN={error:null},YN=(e,{size:o,color:r})=>({chevron:{"--combobox-chevron-size":Xe(o,"combobox-chevron-size"),"--combobox-chevron-color":r?Zt(r,e):void 0}}),Om=ge((e,o)=>{const r=ce("ComboboxChevron",VN,e),{size:a,error:l,style:c,className:u,classNames:f,styles:h,unstyled:p,vars:g,mod:v,...x}=r,S=_e({name:"ComboboxChevron",classes:En,props:r,style:c,className:u,classNames:f,styles:h,unstyled:p,vars:g,varsResolver:YN,rootSelector:"chevron"});return y.jsx(he,{component:"svg",...x,...S("chevron"),size:a,viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",mod:["combobox-chevron",{error:l},v],ref:o,children:y.jsx("path",{d:"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})});Om.classes=En;Om.displayName="@mantine/core/ComboboxChevron";const[GN,no]=zo("Combobox component was not found in tree"),YS=b.forwardRef(({size:e,onMouseDown:o,onClick:r,onClear:a,...l},c)=>y.jsx(St.ClearButton,{ref:c,tabIndex:-1,"aria-hidden":!0,...l,onMouseDown:u=>{u.preventDefault(),o?.(u)},onClick:u=>{a(),r?.(u)}}));YS.displayName="@mantine/core/ComboboxClearButton";const XN={},jm=ge((e,o)=>{const{classNames:r,styles:a,className:l,style:c,hidden:u,...f}=ce("ComboboxDropdown",XN,e),h=no();return y.jsx(Rn.Dropdown,{...f,ref:o,role:"presentation","data-hidden":u||void 0,...h.getStyles("dropdown",{className:l,style:c,classNames:r,styles:a})})});jm.classes=En;jm.displayName="@mantine/core/ComboboxDropdown";const qN={refProp:"ref"},GS=ge((e,o)=>{const{children:r,refProp:a}=ce("ComboboxDropdownTarget",qN,e);if(no(),!rr(r))throw new Error("Combobox.DropdownTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return y.jsx(Rn.Target,{ref:o,refProp:a,children:r})});GS.displayName="@mantine/core/ComboboxDropdownTarget";const IN={},Bm=ge((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,...f}=ce("ComboboxEmpty",IN,e),h=no();return y.jsx(he,{ref:o,...h.getStyles("empty",{className:a,classNames:r,styles:c,style:l}),...f})});Bm.classes=En;Bm.displayName="@mantine/core/ComboboxEmpty";function $m({onKeyDown:e,withKeyboardNavigation:o,withAriaAttributes:r,withExpandedAttribute:a,targetType:l,autoComplete:c}){const u=no(),[f,h]=b.useState(null),p=v=>{if(e?.(v),!u.readOnly&&o){if(v.nativeEvent.isComposing)return;if(v.nativeEvent.code==="ArrowDown"&&(v.preventDefault(),u.store.dropdownOpened?h(u.store.selectNextOption()):(u.store.openDropdown("keyboard"),h(u.store.selectActiveOption()),u.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),v.nativeEvent.code==="ArrowUp"&&(v.preventDefault(),u.store.dropdownOpened?h(u.store.selectPreviousOption()):(u.store.openDropdown("keyboard"),h(u.store.selectActiveOption()),u.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),v.nativeEvent.code==="Enter"||v.nativeEvent.code==="NumpadEnter"){if(v.nativeEvent.keyCode===229)return;const x=u.store.getSelectedOptionIndex();u.store.dropdownOpened&&x!==-1?(v.preventDefault(),u.store.clickSelectedOption()):l==="button"&&(v.preventDefault(),u.store.openDropdown("keyboard"))}v.key==="Escape"&&u.store.closeDropdown("keyboard"),v.nativeEvent.code==="Space"&&l==="button"&&(v.preventDefault(),u.store.toggleDropdown("keyboard"))}};return{...r?{"aria-haspopup":"listbox","aria-expanded":a&&!!(u.store.listId&&u.store.dropdownOpened)||void 0,"aria-controls":u.store.dropdownOpened?u.store.listId:void 0,"aria-activedescendant":u.store.dropdownOpened&&f||void 0,autoComplete:c,"data-expanded":u.store.dropdownOpened||void 0,"data-mantine-stop-propagation":u.store.dropdownOpened||void 0}:{},onKeyDown:p}}const FN={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},XS=ge((e,o)=>{const{children:r,refProp:a,withKeyboardNavigation:l,withAriaAttributes:c,withExpandedAttribute:u,targetType:f,autoComplete:h,...p}=ce("ComboboxEventsTarget",FN,e);if(!rr(r))throw new Error("Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const g=no(),v=$m({targetType:f,withAriaAttributes:c,withKeyboardNavigation:l,withExpandedAttribute:u,onKeyDown:r.props.onKeyDown,autoComplete:h});return b.cloneElement(r,{...v,...p,[a]:Mt(o,g.store.targetRef,Au(r))})});XS.displayName="@mantine/core/ComboboxEventsTarget";const ZN={},Lm=ge((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,...f}=ce("ComboboxFooter",ZN,e),h=no();return y.jsx(he,{ref:o,...h.getStyles("footer",{className:a,classNames:r,style:l,styles:c}),...f,onMouseDown:p=>{p.preventDefault()}})});Lm.classes=En;Lm.displayName="@mantine/core/ComboboxFooter";const QN={},km=ge((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,children:f,label:h,...p}=ce("ComboboxGroup",QN,e),g=no();return y.jsxs(he,{ref:o,...g.getStyles("group",{className:a,classNames:r,style:l,styles:c}),...p,children:[h&&y.jsx("div",{...g.getStyles("groupLabel",{classNames:r,styles:c}),children:h}),f]})});km.classes=En;km.displayName="@mantine/core/ComboboxGroup";const KN={},Hm=ge((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,...f}=ce("ComboboxHeader",KN,e),h=no();return y.jsx(he,{ref:o,...h.getStyles("header",{className:a,classNames:r,style:l,styles:c}),...f,onMouseDown:p=>{p.preventDefault()}})});Hm.classes=En;Hm.displayName="@mantine/core/ComboboxHeader";function qS({value:e,valuesDivider:o=",",...r}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(o):e||"",...r})}qS.displayName="@mantine/core/ComboboxHiddenInput";const WN={},Um=ge((e,o)=>{const r=ce("ComboboxOption",WN,e),{classNames:a,className:l,style:c,styles:u,vars:f,onClick:h,id:p,active:g,onMouseDown:v,onMouseOver:x,disabled:S,selected:E,mod:C,...R}=r,T=no(),z=b.useId(),A=p||z;return y.jsx(he,{...T.getStyles("option",{className:l,classNames:a,styles:u,style:c}),...R,ref:o,id:A,mod:["combobox-option",{"combobox-active":g,"combobox-disabled":S,"combobox-selected":E},C],role:"option",onClick:N=>{S?N.preventDefault():(T.onOptionSubmit?.(r.value,r),h?.(N))},onMouseDown:N=>{N.preventDefault(),v?.(N)},onMouseOver:N=>{T.resetSelectionOnOptionHover&&T.store.resetSelectedOption(),x?.(N)}})});Um.classes=En;Um.displayName="@mantine/core/ComboboxOption";const JN={},Pm=ge((e,o)=>{const r=ce("ComboboxOptions",JN,e),{classNames:a,className:l,style:c,styles:u,id:f,onMouseDown:h,labelledBy:p,...g}=r,v=no(),x=Jn(f);return b.useEffect(()=>{v.store.setListId(x)},[x]),y.jsx(he,{ref:o,...v.getStyles("options",{className:l,style:c,classNames:a,styles:u}),...g,id:x,role:"listbox","aria-labelledby":p,onMouseDown:S=>{S.preventDefault(),h?.(S)}})});Pm.classes=En;Pm.displayName="@mantine/core/ComboboxOptions";const eA={withAriaAttributes:!0,withKeyboardNavigation:!0},Vm=ge((e,o)=>{const r=ce("ComboboxSearch",eA,e),{classNames:a,styles:l,unstyled:c,vars:u,withAriaAttributes:f,onKeyDown:h,withKeyboardNavigation:p,size:g,...v}=r,x=no(),S=x.getStyles("search"),E=$m({targetType:"input",withAriaAttributes:f,withKeyboardNavigation:p,withExpandedAttribute:!1,onKeyDown:h,autoComplete:"off"});return y.jsx(St,{ref:Mt(o,x.store.searchRef),classNames:[{input:S.className},a],styles:[{input:S.style},l],size:g||x.size,...E,...v,__staticSelector:"Combobox"})});Vm.classes=En;Vm.displayName="@mantine/core/ComboboxSearch";const tA={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},IS=ge((e,o)=>{const{children:r,refProp:a,withKeyboardNavigation:l,withAriaAttributes:c,withExpandedAttribute:u,targetType:f,autoComplete:h,...p}=ce("ComboboxTarget",tA,e);if(!rr(r))throw new Error("Combobox.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const g=no(),v=$m({targetType:f,withAriaAttributes:c,withKeyboardNavigation:l,withExpandedAttribute:u,onKeyDown:r.props.onKeyDown,autoComplete:h}),x=b.cloneElement(r,{...v,...p});return y.jsx(Rn.Target,{ref:Mt(o,g.store.targetRef),children:x})});IS.displayName="@mantine/core/ComboboxTarget";function nA(e,o,r){for(let a=e-1;a>=0;a-=1)if(!o[a].hasAttribute("data-combobox-disabled"))return a;if(r){for(let a=o.length-1;a>-1;a-=1)if(!o[a].hasAttribute("data-combobox-disabled"))return a}return e}function oA(e,o,r){for(let a=e+1;a{f||(h(!0),l?.(j))},[h,l,f]),T=b.useCallback((j="unknown")=>{f&&(h(!1),a?.(j))},[h,a,f]),z=b.useCallback((j="unknown")=>{f?T(j):R(j)},[T,R,f]),A=b.useCallback(()=>{const j=document.querySelector(`#${p.current} [data-combobox-selected]`);j?.removeAttribute("data-combobox-selected"),j?.removeAttribute("aria-selected")},[]),N=b.useCallback(j=>{const V=document.getElementById(p.current)?.querySelectorAll("[data-combobox-option]");if(!V)return null;const P=j>=V.length?0:j<0?V.length-1:j;return g.current=P,V?.[P]&&!V[P].hasAttribute("data-combobox-disabled")?(A(),V[P].setAttribute("data-combobox-selected","true"),V[P].setAttribute("aria-selected","true"),V[P].scrollIntoView({block:"nearest",behavior:u}),V[P].id):null},[u,A]),B=b.useCallback(()=>{const j=document.querySelector(`#${p.current} [data-combobox-active]`);if(j){const k=document.querySelectorAll(`#${p.current} [data-combobox-option]`),V=Array.from(k).findIndex(P=>P===j);return N(V)}return N(0)},[N]),M=b.useCallback(()=>N(oA(g.current,document.querySelectorAll(`#${p.current} [data-combobox-option]`),c)),[N,c]),$=b.useCallback(()=>N(nA(g.current,document.querySelectorAll(`#${p.current} [data-combobox-option]`),c)),[N,c]),L=b.useCallback(()=>N(rA(document.querySelectorAll(`#${p.current} [data-combobox-option]`))),[N]),H=b.useCallback((j="selected",k)=>{C.current=window.setTimeout(()=>{const V=document.querySelectorAll(`#${p.current} [data-combobox-option]`),P=Array.from(V).findIndex(Z=>Z.hasAttribute(`data-combobox-${j}`));g.current=P,k?.scrollIntoView&&V[P]?.scrollIntoView({block:"nearest",behavior:u})},0)},[]),I=b.useCallback(()=>{g.current=-1,A()},[A]),Y=b.useCallback(()=>{document.querySelectorAll(`#${p.current} [data-combobox-option]`)?.[g.current]?.click()},[]),X=b.useCallback(j=>{p.current=j},[]),ee=b.useCallback(()=>{S.current=window.setTimeout(()=>v.current.focus(),0)},[]),ne=b.useCallback(()=>{E.current=window.setTimeout(()=>x.current.focus(),0)},[]),re=b.useCallback(()=>g.current,[]);return b.useEffect(()=>()=>{window.clearTimeout(S.current),window.clearTimeout(E.current),window.clearTimeout(C.current)},[]),{dropdownOpened:f,openDropdown:R,closeDropdown:T,toggleDropdown:z,selectedOptionIndex:g.current,getSelectedOptionIndex:re,selectOption:N,selectFirstOption:L,selectActiveOption:B,selectNextOption:M,selectPreviousOption:$,resetSelectedOption:I,updateSelectedOptionIndex:H,listId:p.current,setListId:X,clickSelectedOption:Y,searchRef:v,focusSearchInput:ee,targetRef:x,focusTarget:ne}}const aA={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0}},iA=(e,{size:o,dropdownPadding:r})=>({options:{"--combobox-option-fz":nn(o),"--combobox-option-padding":Xe(o,"combobox-option-padding")},dropdown:{"--combobox-padding":r===void 0?void 0:oe(r),"--combobox-option-fz":nn(o),"--combobox-option-padding":Xe(o,"combobox-option-padding")}});function lt(e){const o=ce("Combobox",aA,e),{classNames:r,styles:a,unstyled:l,children:c,store:u,vars:f,onOptionSubmit:h,onClose:p,size:g,dropdownPadding:v,resetSelectionOnOptionHover:x,__staticSelector:S,readOnly:E,...C}=o,R=FS(),T=u||R,z=_e({name:S||"Combobox",classes:En,props:o,classNames:r,styles:a,unstyled:l,vars:f,varsResolver:iA}),A=()=>{p?.(),T.closeDropdown()};return y.jsx(GN,{value:{getStyles:z,store:T,onOptionSubmit:h,size:g,resetSelectionOnOptionHover:x,readOnly:E},children:y.jsx(Rn,{opened:T.dropdownOpened,...C,onChange:N=>!N&&A(),withRoles:!1,unstyled:l,children:c})})}const lA=e=>e;lt.extend=lA;lt.classes=En;lt.displayName="@mantine/core/Combobox";lt.Target=IS;lt.Dropdown=jm;lt.Options=Pm;lt.Option=Um;lt.Search=Vm;lt.Empty=Bm;lt.Chevron=Om;lt.Footer=Lm;lt.Header=Hm;lt.EventsTarget=XS;lt.DropdownTarget=GS;lt.Group=km;lt.ClearButton=YS;lt.HiddenInput=qS;var ZS={root:"m_5f75b09e",body:"m_5f6e695e",labelWrapper:"m_d3ea56bb",label:"m_8ee546b8",description:"m_328f68c0",error:"m_8e8a99cc"};const QS=ZS,Ym=b.forwardRef(({__staticSelector:e,__stylesApiProps:o,className:r,classNames:a,styles:l,unstyled:c,children:u,label:f,description:h,id:p,disabled:g,error:v,size:x,labelPosition:S="left",bodyElement:E="div",labelElement:C="label",variant:R,style:T,vars:z,mod:A,...N},B)=>{const M=_e({name:e,props:o,className:r,style:T,classes:ZS,classNames:a,styles:l,unstyled:c});return y.jsx(he,{...M("root"),ref:B,__vars:{"--label-fz":nn(x),"--label-lh":Xe(x,"label-lh")},mod:[{"label-position":S},A],variant:R,size:x,...N,children:y.jsxs(he,{component:E,htmlFor:E==="label"?p:void 0,...M("body"),children:[u,y.jsxs("div",{...M("labelWrapper"),"data-disabled":g||void 0,children:[f&&y.jsx(he,{component:C,htmlFor:C==="label"?p:void 0,...M("label"),"data-disabled":g||void 0,children:f}),h&&y.jsx(St.Description,{size:x,__inheritStyles:!1,...M("description"),children:h}),v&&typeof v!="boolean"&&y.jsx(St.Error,{size:x,__inheritStyles:!1,...M("error"),children:v})]})]})})});Ym.displayName="@mantine/core/InlineInput";const KS=b.createContext(null),sA=KS.Provider,WS=()=>b.useContext(KS),[cA,uA]=Ss();var JS={card:"m_26775b0a"};const fA={withBorder:!0},dA=(e,{radius:o})=>({card:{"--card-radius":kt(o)}}),Gm=ge((e,o)=>{const r=ce("CheckboxCard",fA,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,checked:p,mod:g,withBorder:v,value:x,onClick:S,defaultChecked:E,onChange:C,...R}=r,T=_e({name:"CheckboxCard",classes:JS,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:dA,rootSelector:"card"}),z=WS(),A=typeof p=="boolean"?p:z?z.value.includes(x||""):void 0,[N,B]=Wn({value:A,defaultValue:E,finalValue:!1,onChange:C});return y.jsx(cA,{value:{checked:N},children:y.jsx($n,{ref:o,mod:[{"with-border":v,checked:N},g],...T("card"),...R,role:"checkbox","aria-checked":N,onClick:M=>{S?.(M),z?.onChange(x||""),B(!N)}})})});Gm.displayName="@mantine/core/CheckboxCard";Gm.classes=JS;function ew({children:e,role:o}){const r=ws();return r?y.jsx("div",{role:o,"aria-labelledby":r.labelId,"aria-describedby":r.describedBy,children:e}):y.jsx(y.Fragment,{children:e})}const hA={},Xm=ge((e,o)=>{const{value:r,defaultValue:a,onChange:l,size:c,wrapperProps:u,children:f,readOnly:h,...p}=ce("CheckboxGroup",hA,e),[g,v]=Wn({value:r,defaultValue:a,finalValue:[],onChange:l}),x=S=>{const E=typeof S=="string"?S:S.currentTarget.value;!h&&v(g.includes(E)?g.filter(C=>C!==E):[...g,E])};return y.jsx(sA,{value:{value:g,onChange:x,size:c},children:y.jsx(St.Wrapper,{size:c,ref:o,...u,...p,labelElement:"div",__staticSelector:"CheckboxGroup",children:y.jsx(ew,{role:"group",children:f})})})});Xm.classes=St.Wrapper.classes;Xm.displayName="@mantine/core/CheckboxGroup";function tw({size:e,style:o,...r}){const a=e!==void 0?{width:oe(e),height:oe(e),...o}:o;return y.jsx("svg",{viewBox:"0 0 10 7",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:a,"aria-hidden":!0,...r,children:y.jsx("path",{d:"M4 4.586L1.707 2.293A1 1 0 1 0 .293 3.707l3 3a.997.997 0 0 0 1.414 0l5-5A1 1 0 1 0 8.293.293L4 4.586z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}function nw({indeterminate:e,...o}){return e?y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 32 6","aria-hidden":!0,...o,children:y.jsx("rect",{width:"32",height:"6",fill:"currentColor",rx:"3"})}):y.jsx(tw,{...o})}var ow={indicator:"m_5e5256ee",icon:"m_1b1c543a","indicator--outline":"m_76e20374"};const pA={icon:nw},mA=(e,{radius:o,color:r,size:a,iconColor:l,variant:c,autoContrast:u})=>{const f=ir({color:r||e.primaryColor,theme:e}),h=f.isThemeColor&&f.shade===void 0?`var(--mantine-color-${f.color}-outline)`:f.color;return{indicator:{"--checkbox-size":Xe(a,"checkbox-size"),"--checkbox-radius":o===void 0?void 0:kt(o),"--checkbox-color":c==="outline"?h:Zt(r,e),"--checkbox-icon-color":l?Zt(l,e):Nx(u,e)?Mu({color:r,theme:e,autoContrast:u}):void 0}}},qm=ge((e,o)=>{const r=ce("CheckboxIndicator",pA,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,icon:p,indeterminate:g,radius:v,color:x,iconColor:S,autoContrast:E,checked:C,mod:R,variant:T,disabled:z,...A}=r,N=p,B=_e({name:"CheckboxIndicator",classes:ow,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:mA,rootSelector:"indicator"}),M=uA(),$=typeof C=="boolean"||typeof g=="boolean"?C||g:M?.checked||!1;return y.jsx(he,{ref:o,...B("indicator",{variant:T}),variant:T,mod:[{checked:$,disabled:z},R],...A,children:y.jsx(N,{indeterminate:g,...B("icon")})})});qm.displayName="@mantine/core/CheckboxIndicator";qm.classes=ow;var rw={root:"m_bf2d988c",inner:"m_26062bec",input:"m_26063560",icon:"m_bf295423","input--outline":"m_215c4542"};const gA={labelPosition:"right",icon:nw},vA=(e,{radius:o,color:r,size:a,iconColor:l,variant:c,autoContrast:u})=>{const f=ir({color:r||e.primaryColor,theme:e}),h=f.isThemeColor&&f.shade===void 0?`var(--mantine-color-${f.color}-outline)`:f.color;return{root:{"--checkbox-size":Xe(a,"checkbox-size"),"--checkbox-radius":o===void 0?void 0:kt(o),"--checkbox-color":c==="outline"?h:Zt(r,e),"--checkbox-icon-color":l?Zt(l,e):Nx(u,e)?Mu({color:r,theme:e,autoContrast:u}):void 0}}},el=ge((e,o)=>{const r=ce("Checkbox",gA,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,color:p,label:g,id:v,size:x,radius:S,wrapperProps:E,checked:C,labelPosition:R,description:T,error:z,disabled:A,variant:N,indeterminate:B,icon:M,rootRef:$,iconColor:L,onChange:H,autoContrast:I,mod:Y,...X}=r,ee=WS(),ne=x||ee?.size,re=M,j=_e({name:"Checkbox",props:r,classes:rw,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:vA}),{styleProps:k,rest:V}=qi(X),P=Jn(v),Z=ee?{checked:ee.value.includes(V.value),onChange:q=>{ee.onChange(q),H?.(q)}}:{},D=b.useRef(null),O=o||D;return b.useEffect(()=>{O&&"current"in O&&O.current&&(O.current.indeterminate=B||!1)},[B,O]),y.jsx(Ym,{...j("root"),__staticSelector:"Checkbox",__stylesApiProps:r,id:P,size:ne,labelPosition:R,label:g,description:T,error:z,disabled:A,classNames:a,styles:u,unstyled:f,"data-checked":Z.checked||C||void 0,variant:N,ref:$,mod:Y,...k,...E,children:y.jsxs(he,{...j("inner"),mod:{"data-label-position":R},children:[y.jsx(he,{component:"input",id:P,ref:O,checked:C,disabled:A,mod:{error:!!z,indeterminate:B},...j("input",{focusable:!0,variant:N}),onChange:H,...V,...Z,type:"checkbox"}),y.jsx(re,{indeterminate:B,...j("icon")})]})})});el.classes={...rw,...QS};el.displayName="@mantine/core/Checkbox";el.Group=Xm;el.Indicator=qm;el.Card=Gm;function ps(e){return"group"in e}function aw({options:e,search:o,limit:r}){const a=o.trim().toLowerCase(),l=[];for(let c=0;c0)return!1;return!0}function iw(e,o=new Set){if(Array.isArray(e))for(const r of e)if(ps(r))iw(r.items,o);else{if(typeof r.value>"u")throw new Error("[@mantine/core] Each option must have value property");if(typeof r.value!="string")throw new Error(`[@mantine/core] Option value must be a string, other data formats are not supported, got ${typeof r.value}`);if(o.has(r.value))throw new Error(`[@mantine/core] Duplicate options are not supported. Option with value "${r.value}" was provided more than once`);o.add(r.value)}}function bA(e,o){return Array.isArray(e)?e.includes(o):e===o}function lw({data:e,withCheckIcon:o,value:r,checkIconPosition:a,unstyled:l,renderOption:c}){if(!ps(e)){const f=bA(r,e.value),h=o&&f&&y.jsx(tw,{className:En.optionsDropdownCheckIcon}),p=y.jsxs(y.Fragment,{children:[a==="left"&&h,y.jsx("span",{children:e.label}),a==="right"&&h]});return y.jsx(lt.Option,{value:e.value,disabled:e.disabled,className:zt({[En.optionsDropdownOption]:!l}),"data-reverse":a==="right"||void 0,"data-checked":f||void 0,"aria-selected":f,active:f,children:typeof c=="function"?c({option:e,checked:f}):p})}const u=e.items.map(f=>y.jsx(lw,{data:f,value:r,unstyled:l,withCheckIcon:o,checkIconPosition:a,renderOption:c},f.value));return y.jsx(lt.Group,{label:e.group,children:u})}function xA({data:e,hidden:o,hiddenWhenEmpty:r,filter:a,search:l,limit:c,maxDropdownHeight:u,withScrollArea:f=!0,filterOptions:h=!0,withCheckIcon:p=!1,value:g,checkIconPosition:v,nothingFoundMessage:x,unstyled:S,labelId:E,renderOption:C,scrollAreaProps:R,"aria-label":T}){iw(e);const A=typeof l=="string"?(a||aw)({options:e,search:h?l:"",limit:c??1/0}):e,N=yA(A),B=A.map(M=>y.jsx(lw,{data:M,withCheckIcon:p,value:g,checkIconPosition:v,unstyled:S,renderOption:C},ps(M)?M.group:M.value));return y.jsx(lt.Dropdown,{hidden:o||r&&N,"data-composed":!0,children:y.jsxs(lt.Options,{labelledBy:E,"aria-label":T,children:[f?y.jsx(Aa.Autosize,{mah:u??220,type:"scroll",scrollbarSize:"var(--combobox-padding)",offsetScrollbars:"y",...R,children:B}):B,N&&x&&y.jsx(lt.Empty,{children:x})]})})}var tl={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const d1={orientation:"horizontal"},SA=(e,{borderWidth:o})=>({group:{"--button-border-width":oe(o)}}),Im=ge((e,o)=>{const r=ce("ButtonGroup",d1,e),{className:a,style:l,classNames:c,styles:u,unstyled:f,orientation:h,vars:p,borderWidth:g,variant:v,mod:x,...S}=ce("ButtonGroup",d1,e),E=_e({name:"ButtonGroup",props:r,classes:tl,className:a,style:l,classNames:c,styles:u,unstyled:f,vars:p,varsResolver:SA,rootSelector:"group"});return y.jsx(he,{...E("group"),ref:o,variant:v,mod:[{"data-orientation":h},x],role:"group",...S})});Im.classes=tl;Im.displayName="@mantine/core/ButtonGroup";const h1={},wA=(e,{radius:o,color:r,gradient:a,variant:l,autoContrast:c,size:u})=>{const f=e.variantColorResolver({color:r||e.primaryColor,theme:e,gradient:a,variant:l||"filled",autoContrast:c});return{groupSection:{"--section-height":Xe(u,"section-height"),"--section-padding-x":Xe(u,"section-padding-x"),"--section-fz":u?.includes("compact")?nn(u.replace("compact-","")):nn(u),"--section-radius":o===void 0?void 0:kt(o),"--section-bg":r||l?f.background:void 0,"--section-color":f.color,"--section-bd":r||l?f.border:void 0}}},Fm=ge((e,o)=>{const r=ce("ButtonGroupSection",h1,e),{className:a,style:l,classNames:c,styles:u,unstyled:f,vars:h,variant:p,gradient:g,radius:v,autoContrast:x,...S}=ce("ButtonGroupSection",h1,e),E=_e({name:"ButtonGroupSection",props:r,classes:tl,className:a,style:l,classNames:c,styles:u,unstyled:f,vars:h,varsResolver:wA,rootSelector:"groupSection"});return y.jsx(he,{...E("groupSection"),ref:o,variant:p,...S})});Fm.classes=tl;Fm.displayName="@mantine/core/ButtonGroupSection";const CA={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${oe(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},EA={},RA=(e,{radius:o,color:r,gradient:a,variant:l,size:c,justify:u,autoContrast:f})=>{const h=e.variantColorResolver({color:r||e.primaryColor,theme:e,gradient:a,variant:l||"filled",autoContrast:f});return{root:{"--button-justify":u,"--button-height":Xe(c,"button-height"),"--button-padding-x":Xe(c,"button-padding-x"),"--button-fz":c?.includes("compact")?nn(c.replace("compact-","")):nn(c),"--button-radius":o===void 0?void 0:kt(o),"--button-bg":r||l?h.background:void 0,"--button-hover":r||l?h.hover:void 0,"--button-color":h.color,"--button-bd":r||l?h.border:void 0,"--button-hover-color":r||l?h.hoverColor:void 0}}},Dt=un((e,o)=>{const r=ce("Button",EA,e),{style:a,vars:l,className:c,color:u,disabled:f,children:h,leftSection:p,rightSection:g,fullWidth:v,variant:x,radius:S,loading:E,loaderProps:C,gradient:R,classNames:T,styles:z,unstyled:A,"data-disabled":N,autoContrast:B,mod:M,...$}=r,L=_e({name:"Button",props:r,classes:tl,className:c,style:a,classNames:T,styles:z,unstyled:A,vars:l,varsResolver:RA}),H=!!p,I=!!g;return y.jsxs($n,{ref:o,...L("root",{active:!f&&!E&&!N}),unstyled:A,variant:x,disabled:f||E,mod:[{disabled:f||N,loading:E,block:v,"with-left-section":H,"with-right-section":I},M],...$,children:[y.jsx(qr,{mounted:!!E,transition:CA,duration:150,children:Y=>y.jsx(he,{component:"span",...L("loader",{style:Y}),"aria-hidden":!0,children:y.jsx(Ma,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...C})})}),y.jsxs("span",{...L("inner"),children:[p&&y.jsx(he,{component:"span",...L("section"),mod:{position:"left"},children:p}),y.jsx(he,{component:"span",mod:{loading:E},...L("label"),children:h}),g&&y.jsx(he,{component:"span",...L("section"),mod:{position:"right"},children:g})]})]})});Dt.classes=tl;Dt.displayName="@mantine/core/Button";Dt.Group=Im;Dt.GroupSection=Fm;const[TA,_A]=zo("Card component was not found in tree");var Zm={root:"m_e615b15f",section:"m_599a2148"};const DA={},Fu=un((e,o)=>{const r=ce("CardSection",DA,e),{classNames:a,className:l,style:c,styles:u,vars:f,withBorder:h,inheritPadding:p,mod:g,...v}=r,x=_A();return y.jsx(he,{ref:o,mod:[{"with-border":h,"inherit-padding":p},g],...x.getStyles("section",{className:l,style:c,styles:u,classNames:a}),...v})});Fu.classes=Zm;Fu.displayName="@mantine/core/CardSection";const NA={},AA=(e,{padding:o})=>({root:{"--card-padding":sn(o)}}),Zu=un((e,o)=>{const r=ce("Card",NA,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,children:p,padding:g,...v}=r,x=_e({name:"Card",props:r,classes:Zm,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:AA}),S=b.Children.toArray(p),E=S.map((C,R)=>typeof C=="object"&&C&&"type"in C&&C.type===Fu?b.cloneElement(C,{"data-first-section":R===0||void 0,"data-last-section":R===S.length-1||void 0}):C);return y.jsx(TA,{value:{getStyles:x},children:y.jsx(Qi,{ref:o,unstyled:f,...x("root"),...v,children:E})})});Zu.classes=Zm;Zu.displayName="@mantine/core/Card";Zu.Section=Fu;var sw={root:"m_4451eb3a"};const zA={},ms=un((e,o)=>{const r=ce("Center",zA,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,inline:p,mod:g,...v}=r,x=_e({name:"Center",props:r,classes:sw,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h});return y.jsx(he,{ref:o,mod:[{inline:p},g],...x("root"),...v})});ms.classes=sw;ms.displayName="@mantine/core/Center";var cw={root:"m_3eebeb36",label:"m_9e365f20"};const MA={orientation:"horizontal"},OA=(e,{color:o,variant:r,size:a})=>({root:{"--divider-color":o?Zt(o,e):void 0,"--divider-border-style":r,"--divider-size":Xe(a,"divider-size")}}),Su=ge((e,o)=>{const r=ce("Divider",MA,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,color:p,orientation:g,label:v,labelPosition:x,mod:S,...E}=r,C=_e({name:"Divider",classes:cw,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:OA});return y.jsx(he,{ref:o,mod:[{orientation:g,"with-label":!!v},S],...C("root"),...E,role:"separator",children:v&&y.jsx(he,{component:"span",mod:{position:x},...C("label"),children:v})})});Su.classes=cw;Su.displayName="@mantine/core/Divider";function uw({open:e,close:o,openDelay:r,closeDelay:a}){const l=b.useRef(-1),c=b.useRef(-1),u=()=>{window.clearTimeout(l.current),window.clearTimeout(c.current)},f=()=>{u(),r===0||r===void 0?e():l.current=window.setTimeout(e,r)},h=()=>{u(),a===0||a===void 0?o():c.current=window.setTimeout(o,a)};return b.useEffect(()=>u,[]),{openDropdown:f,closeDropdown:h}}var fw={root:"m_9e117634"};const jA={},BA=(e,{radius:o,fit:r})=>({root:{"--image-radius":o===void 0?void 0:kt(o),"--image-object-fit":r}}),Qm=un((e,o)=>{const r=ce("Image",jA,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,onError:p,src:g,radius:v,fit:x,fallbackSrc:S,mod:E,...C}=r,[R,T]=b.useState(!g);b.useEffect(()=>T(!g),[g]);const z=_e({name:"Image",classes:fw,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:BA});return R&&S?y.jsx(he,{component:"img",ref:o,src:S,...z("root"),onError:p,mod:["fallback",E],...C}):y.jsx(he,{component:"img",ref:o,...z("root"),src:g,onError:A=>{p?.(A),T(!0)},mod:E,...C})});Qm.classes=fw;Qm.displayName="@mantine/core/Image";function Tp(){return Tp=Object.assign?Object.assign.bind():function(e){for(var o=1;o{const{classNames:r,className:a,style:l,styles:c,vars:u,...f}=ce("MenuDivider",LA,e),h=Fr();return y.jsx(he,{ref:o,...h.getStyles("divider",{className:a,style:l,styles:c,classNames:r}),...f})});Km.classes=Zr;Km.displayName="@mantine/core/MenuDivider";const kA={},Wm=ge((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,onMouseEnter:f,onMouseLeave:h,onKeyDown:p,children:g,...v}=ce("MenuDropdown",kA,e),x=b.useRef(null),S=Fr(),E=Cn(p,T=>{(T.key==="ArrowUp"||T.key==="ArrowDown")&&(T.preventDefault(),x.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),C=Cn(f,()=>(S.trigger==="hover"||S.trigger==="click-hover")&&S.openDropdown()),R=Cn(h,()=>(S.trigger==="hover"||S.trigger==="click-hover")&&S.closeDropdown());return y.jsxs(Rn.Dropdown,{...v,onMouseEnter:C,onMouseLeave:R,role:"menu","aria-orientation":"vertical",ref:Mt(o,x),...S.getStyles("dropdown",{className:a,style:l,styles:c,classNames:r,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,onKeyDown:E,children:[S.withInitialFocusPlaceholder&&y.jsx("div",{tabIndex:-1,"data-autofocus":!0,"data-mantine-stop-propagation":!0,style:{outline:0}}),g]})});Wm.classes=Zr;Wm.displayName="@mantine/core/MenuDropdown";const[HA,Qu]=Ss(),UA={},Jm=un((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,color:f,closeMenuOnClick:h,leftSection:p,rightSection:g,children:v,disabled:x,"data-disabled":S,...E}=ce("MenuItem",UA,e),C=Fr(),R=Qu(),T=cn(),{dir:z}=Ii(),A=b.useRef(null),N=E,B=Cn(N.onClick,()=>{S||(typeof h=="boolean"?h&&C.closeDropdownImmediately():C.closeOnItemClick&&C.closeDropdownImmediately())}),M=f?T.variantColorResolver({color:f,theme:T,variant:"light"}):void 0,$=f?ir({color:f,theme:T}):null,L=Cn(N.onKeyDown,H=>{H.key==="ArrowLeft"&&R&&(R.close(),R.focusParentItem())});return y.jsxs($n,{onMouseDown:H=>H.preventDefault(),...E,unstyled:C.unstyled,tabIndex:C.menuItemTabIndex,...C.getStyles("item",{className:a,style:l,styles:c,classNames:r}),ref:Mt(A,o),role:"menuitem",disabled:x,"data-menu-item":!0,"data-disabled":x||S||void 0,"data-mantine-stop-propagation":!0,onClick:B,onKeyDown:gx({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:C.loop,dir:z,orientation:"vertical",onKeyDown:L}),__vars:{"--menu-item-color":$?.isThemeColor&&$?.shade===void 0?`var(--mantine-color-${$.color}-6)`:M?.color,"--menu-item-hover":M?.hover},children:[p&&y.jsx("div",{...C.getStyles("itemSection",{styles:c,classNames:r}),"data-position":"left",children:p}),v&&y.jsx("div",{...C.getStyles("itemLabel",{styles:c,classNames:r}),children:v}),g&&y.jsx("div",{...C.getStyles("itemSection",{styles:c,classNames:r}),"data-position":"right",children:g})]})});Jm.classes=Zr;Jm.displayName="@mantine/core/MenuItem";const PA={},eg=ge((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,...f}=ce("MenuLabel",PA,e),h=Fr();return y.jsx(he,{ref:o,...h.getStyles("label",{className:a,style:l,styles:c,classNames:r}),...f})});eg.classes=Zr;eg.displayName="@mantine/core/MenuLabel";const VA={},tg=ge((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,onMouseEnter:f,onMouseLeave:h,onKeyDown:p,children:g,...v}=ce("MenuSubDropdown",VA,e),x=b.useRef(null),S=Fr(),E=Qu(),C=Cn(f,E?.open),R=Cn(h,E?.close);return y.jsx(Rn.Dropdown,{...v,onMouseEnter:C,onMouseLeave:R,role:"menu","aria-orientation":"vertical",ref:Mt(o,x),...S.getStyles("dropdown",{className:a,style:l,styles:c,classNames:r,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:g})});tg.classes=Zr;tg.displayName="@mantine/core/MenuSubDropdown";const YA={},ng=un((e,o)=>{const{classNames:r,className:a,style:l,styles:c,vars:u,color:f,leftSection:h,rightSection:p,children:g,disabled:v,"data-disabled":x,closeMenuOnClick:S,...E}=ce("MenuSubItem",YA,e),C=Fr(),R=Qu(),T=cn(),{dir:z}=Ii(),A=b.useRef(null),N=E,B=f?T.variantColorResolver({color:f,theme:T,variant:"light"}):void 0,M=f?ir({color:f,theme:T}):null,$=Cn(N.onKeyDown,Y=>{Y.key==="ArrowRight"&&(R?.open(),R?.focusFirstItem()),Y.key==="ArrowLeft"&&R?.parentContext&&(R.parentContext.close(),R.parentContext.focusParentItem())}),L=Cn(N.onClick,()=>{!x&&S&&C.closeDropdownImmediately()}),H=Cn(N.onMouseEnter,R?.open),I=Cn(N.onMouseLeave,R?.close);return y.jsxs($n,{onMouseDown:Y=>Y.preventDefault(),...E,unstyled:C.unstyled,tabIndex:C.menuItemTabIndex,...C.getStyles("item",{className:a,style:l,styles:c,classNames:r}),ref:Mt(A,o),role:"menuitem",disabled:v,"data-menu-item":!0,"data-sub-menu-item":!0,"data-disabled":v||x||void 0,"data-mantine-stop-propagation":!0,onMouseEnter:H,onMouseLeave:I,onClick:L,onKeyDown:gx({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:C.loop,dir:z,orientation:"vertical",onKeyDown:$}),__vars:{"--menu-item-color":M?.isThemeColor&&M?.shade===void 0?`var(--mantine-color-${M.color}-6)`:B?.color,"--menu-item-hover":B?.hover},children:[h&&y.jsx("div",{...C.getStyles("itemSection",{styles:c,classNames:r}),"data-position":"left",children:h}),g&&y.jsx("div",{...C.getStyles("itemLabel",{styles:c,classNames:r}),children:g}),y.jsx("div",{...C.getStyles("itemSection",{styles:c,classNames:r}),"data-position":"right",children:p||y.jsx(kS,{...C.getStyles("chevron"),size:14})})]})});ng.classes=Zr;ng.displayName="@mantine/core/MenuSubItem";function hw({children:e,refProp:o}){if(!rr(e))throw new Error("Menu.Sub.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return Fr(),y.jsx(Rn.Target,{refProp:o,popupType:"menu",children:e})}hw.displayName="@mantine/core/MenuSubTarget";const GA={offset:0,position:"right-start",transitionProps:{duration:0}};function nl(e){const{children:o,closeDelay:r,...a}=ce("MenuSub",GA,e),l=Jn(),[c,{open:u,close:f}]=iT(!1),h=Qu(),{openDropdown:p,closeDropdown:g}=uw({open:u,close:f,closeDelay:r,openDelay:0}),v=()=>window.setTimeout(()=>{document.getElementById(`${l}-dropdown`)?.querySelectorAll("[data-menu-item]:not([data-disabled])")[0]?.focus()},16),x=()=>window.setTimeout(()=>{document.getElementById(`${l}-target`)?.focus()},16);return y.jsx(HA,{value:{opened:c,close:g,open:p,focusFirstItem:v,focusParentItem:x,parentContext:h},children:y.jsx(Rn,{opened:c,...a,withinPortal:!1,id:l,children:o})})}nl.extend=e=>e;nl.displayName="@mantine/core/MenuSub";nl.Target=hw;nl.Dropdown=tg;nl.Item=ng;const XA={refProp:"ref"},pw=b.forwardRef((e,o)=>{const{children:r,refProp:a,...l}=ce("MenuTarget",XA,e);if(!rr(r))throw new Error("Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const c=Fr(),u=r.props,f=Cn(u.onClick,()=>{c.trigger==="click"?c.toggleDropdown():c.trigger==="click-hover"&&(c.setOpenedViaClick(!0),c.opened||c.openDropdown())}),h=Cn(u.onMouseEnter,()=>(c.trigger==="hover"||c.trigger==="click-hover")&&c.openDropdown()),p=Cn(u.onMouseLeave,()=>{(c.trigger==="hover"||c.trigger==="click-hover"&&!c.openedViaClick)&&c.closeDropdown()});return y.jsx(Rn.Target,{refProp:a,popupType:"menu",ref:o,...l,children:b.cloneElement(r,{onClick:f,onMouseEnter:h,onMouseLeave:p,"data-expanded":c.opened?!0:void 0})})});pw.displayName="@mantine/core/MenuTarget";const qA={trapFocus:!0,closeOnItemClick:!0,withInitialFocusPlaceholder:!0,clickOutsideEvents:["mousedown","touchstart","keydown"],loop:!0,trigger:"click",openDelay:0,closeDelay:100,menuItemTabIndex:-1};function Nt(e){const o=ce("Menu",qA,e),{children:r,onOpen:a,onClose:l,opened:c,defaultOpened:u,trapFocus:f,onChange:h,closeOnItemClick:p,loop:g,closeOnEscape:v,trigger:x,openDelay:S,closeDelay:E,classNames:C,styles:R,unstyled:T,variant:z,vars:A,menuItemTabIndex:N,keepMounted:B,withInitialFocusPlaceholder:M,...$}=o,L=_e({name:"Menu",classes:Zr,props:o,classNames:C,styles:R,unstyled:T}),[H,I]=Wn({value:c,defaultValue:u,finalValue:!1,onChange:h}),[Y,X]=b.useState(!1),ee=()=>{I(!1),X(!1),H&&l?.()},ne=()=>{I(!0),!H&&a?.()},re=()=>{H?ee():ne()},{openDropdown:j,closeDropdown:k}=uw({open:ne,close:ee,closeDelay:E,openDelay:S}),V=D=>VR("[data-menu-item]","[data-menu-dropdown]",D),{resolvedClassNames:P,resolvedStyles:Z}=Xi({classNames:C,styles:R,props:o});return y.jsx($A,{value:{getStyles:L,opened:H,toggleDropdown:re,getItemIndex:V,openedViaClick:Y,setOpenedViaClick:X,closeOnItemClick:p,closeDropdown:x==="click"?ee:k,openDropdown:x==="click"?ne:j,closeDropdownImmediately:ee,loop:g,trigger:x,unstyled:T,menuItemTabIndex:N,withInitialFocusPlaceholder:M},children:y.jsx(Rn,{...$,opened:H,onChange:re,defaultOpened:u,trapFocus:B?!1:f,closeOnEscape:v,__staticSelector:"Menu",classNames:P,styles:Z,unstyled:T,variant:z,keepMounted:B,children:r})})}Nt.extend=e=>e;Nt.withProps=S_(Nt);Nt.classes=Zr;Nt.displayName="@mantine/core/Menu";Nt.Item=Jm;Nt.Label=eg;Nt.Dropdown=Wm;Nt.Target=pw;Nt.Divider=Km;Nt.Sub=nl;const[IA,ol]=zo("Modal component was not found in tree");var ur={root:"m_9df02822",content:"m_54c44539",inner:"m_1f958f16",header:"m_d0e2b9cd"};const FA={},Ku=ge((e,o)=>{const r=ce("ModalBody",FA,e),{classNames:a,className:l,style:c,styles:u,vars:f,...h}=r,p=ol();return y.jsx(AS,{ref:o,...p.getStyles("body",{classNames:a,style:c,styles:u,className:l}),...h})});Ku.classes=ur;Ku.displayName="@mantine/core/ModalBody";const ZA={},Wu=ge((e,o)=>{const r=ce("ModalCloseButton",ZA,e),{classNames:a,className:l,style:c,styles:u,vars:f,...h}=r,p=ol();return y.jsx(zS,{ref:o,...p.getStyles("close",{classNames:a,style:c,styles:u,className:l}),...h})});Wu.classes=ur;Wu.displayName="@mantine/core/ModalCloseButton";const QA={},Ju=ge((e,o)=>{const r=ce("ModalContent",QA,e),{classNames:a,className:l,style:c,styles:u,vars:f,children:h,__hidden:p,...g}=r,v=ol(),x=v.scrollAreaComponent||J3;return y.jsx(MS,{...v.getStyles("content",{className:l,style:c,styles:u,classNames:a}),innerProps:v.getStyles("inner",{className:l,style:c,styles:u,classNames:a}),"data-full-screen":v.fullScreen||void 0,"data-modal-content":!0,"data-hidden":p||void 0,ref:o,...g,children:y.jsx(x,{style:{maxHeight:v.fullScreen?"100dvh":`calc(100dvh - (${oe(v.yOffset)} * 2))`},children:h})})});Ju.classes=ur;Ju.displayName="@mantine/core/ModalContent";const KA={},ef=ge((e,o)=>{const r=ce("ModalHeader",KA,e),{classNames:a,className:l,style:c,styles:u,vars:f,...h}=r,p=ol();return y.jsx(OS,{ref:o,...p.getStyles("header",{classNames:a,style:c,styles:u,className:l}),...h})});ef.classes=ur;ef.displayName="@mantine/core/ModalHeader";const WA={},tf=ge((e,o)=>{const r=ce("ModalOverlay",WA,e),{classNames:a,className:l,style:c,styles:u,vars:f,...h}=r,p=ol();return y.jsx(jS,{ref:o,...p.getStyles("overlay",{classNames:a,style:c,styles:u,className:l}),...h})});tf.classes=ur;tf.displayName="@mantine/core/ModalOverlay";const JA={__staticSelector:"Modal",closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:vo("modal"),transitionProps:{duration:200,transition:"fade-down"},yOffset:"5dvh"},ez=(e,{radius:o,size:r,yOffset:a,xOffset:l})=>({root:{"--modal-radius":o===void 0?void 0:kt(o),"--modal-size":Xe(r,"modal-size"),"--modal-y-offset":oe(a),"--modal-x-offset":oe(l)}}),nf=ge((e,o)=>{const r=ce("ModalRoot",JA,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,yOffset:p,scrollAreaComponent:g,radius:v,fullScreen:x,centered:S,xOffset:E,__staticSelector:C,...R}=r,T=_e({name:C,classes:ur,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:ez});return y.jsx(IA,{value:{yOffset:p,scrollAreaComponent:g,getStyles:T,fullScreen:x},children:y.jsx(NS,{ref:o,...T("root"),"data-full-screen":x||void 0,"data-centered":S||void 0,"data-offset-scrollbars":g===Aa.Autosize||void 0,unstyled:f,...R})})});nf.classes=ur;nf.displayName="@mantine/core/ModalRoot";const[tz,nz]=Ss();function mw({children:e}){const[o,r]=b.useState([]),[a,l]=b.useState(vo("modal"));return y.jsx(tz,{value:{stack:o,addModal:(c,u)=>{r(f=>[...new Set([...f,c])]),l(f=>typeof u=="number"&&typeof f=="number"?Math.max(f,u):f)},removeModal:c=>r(u=>u.filter(f=>f!==c)),getZIndex:c=>`calc(${a} + ${o.indexOf(c)} + 1)`,currentId:o[o.length-1],maxZIndex:a},children:e})}mw.displayName="@mantine/core/ModalStack";const oz={},of=ge((e,o)=>{const r=ce("ModalTitle",oz,e),{classNames:a,className:l,style:c,styles:u,vars:f,...h}=r,p=ol();return y.jsx(BS,{ref:o,...p.getStyles("title",{classNames:a,style:c,styles:u,className:l}),...h})});of.classes=ur;of.displayName="@mantine/core/ModalTitle";const rz={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:vo("modal"),transitionProps:{duration:200,transition:"fade-down"},withOverlay:!0,withCloseButton:!0},Tn=ge((e,o)=>{const{title:r,withOverlay:a,overlayProps:l,withCloseButton:c,closeButtonProps:u,children:f,radius:h,opened:p,stackId:g,zIndex:v,...x}=ce("Modal",rz,e),S=nz(),E=!!r||c,C=S&&g?{closeOnEscape:S.currentId===g,trapFocus:S.currentId===g,zIndex:S.getZIndex(g)}:{},R=a===!1?!1:g&&S?S.currentId===g:p;return b.useEffect(()=>{S&&g&&(p?S.addModal(g,v||vo("modal")):S.removeModal(g))},[p,g,v]),y.jsxs(nf,{ref:o,radius:h,opened:p,zIndex:S&&g?S.getZIndex(g):v,...x,...C,children:[a&&y.jsx(tf,{visible:R,transitionProps:S&&g?{duration:0}:void 0,...l}),y.jsxs(Ju,{radius:h,__hidden:S&&g&&p?g!==S.currentId:!1,children:[E&&y.jsxs(ef,{children:[r&&y.jsx(of,{children:r}),c&&y.jsx(Wu,{...u})]}),y.jsx(Ku,{children:f})]})]})});Tn.classes=ur;Tn.displayName="@mantine/core/Modal";Tn.Root=nf;Tn.Overlay=tf;Tn.Content=Ju;Tn.Body=Ku;Tn.Header=ef;Tn.Title=of;Tn.CloseButton=Wu;Tn.Stack=mw;var gw={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const az={withCloseButton:!0},iz=(e,{radius:o,color:r})=>({root:{"--notification-radius":o===void 0?void 0:kt(o),"--notification-color":r?Zt(r,e):void 0}}),og=ge((e,o)=>{const r=ce("Notification",az,e),{className:a,color:l,radius:c,loading:u,withCloseButton:f,withBorder:h,title:p,icon:g,children:v,onClose:x,closeButtonProps:S,classNames:E,style:C,styles:R,unstyled:T,variant:z,vars:A,mod:N,loaderProps:B,role:M,...$}=r,L=_e({name:"Notification",classes:gw,props:r,className:a,style:C,classNames:E,styles:R,unstyled:T,vars:A,varsResolver:iz});return y.jsxs(he,{...L("root"),mod:[{"data-with-icon":!!g||u,"data-with-border":h},N],ref:o,variant:z,role:M||"alert",...$,children:[g&&!u&&y.jsx("div",{...L("icon"),children:g}),u&&y.jsx(Ma,{size:28,color:l,...B,...L("loader")}),y.jsxs("div",{...L("body"),children:[p&&y.jsx("div",{...L("title"),children:p}),y.jsx(he,{...L("description"),mod:{"data-with-title":!!p},children:v})]}),f&&y.jsx(Wi,{iconSize:16,color:"gray",...S,unstyled:T,onClick:x,...L("closeButton")})]})});og.classes=gw;og.displayName="@mantine/core/Notification";function vw(e,o){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&o.indexOf(a)<0&&(r[a]=e[a]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var l=0,a=Object.getOwnPropertySymbols(e);l=f?l=l+m1("0",u-f):l=(l.substring(0,u)||"0")+"."+l.substring(u),r+l}function g1(e,o,r){if(["","-"].indexOf(e)!==-1)return e;var a=(e.indexOf(".")!==-1||r)&&o,l=rg(e),c=l.beforeDecimal,u=l.afterDecimal,f=l.hasNegation,h=parseFloat("0."+(u||"0")),p=u.length<=o?"0."+u:h.toFixed(o),g=p.split("."),v=c;c&&Number(g[0])&&(v=c.split("").reverse().reduce(function(C,R,T){return C.length>T?(Number(C[0])+Number(R)).toString()+C.substring(1,C.length):R+C},g[0]));var x=xw(g[1]||"",o,r),S=f?"-":"",E=a?".":"";return""+S+v+E+x}function xa(e,o){if(e.value=e.value,e!==null){if(e.createTextRange){var r=e.createTextRange();return r.move("character",o),r.select(),!0}return e.selectionStart||e.selectionStart===0?(e.focus(),e.setSelectionRange(o,o),!0):(e.focus(),!1)}}var ww=lz(function(e,o){for(var r=0,a=0,l=e.length,c=o.length;e[r]===o[r]&&rr&&l-a>r;)a++;return{from:{start:r,end:l-a},to:{start:r,end:c-a}}}),dz=function(e,o){var r=Math.min(e.selectionStart,o);return{from:{start:r,end:e.selectionEnd},to:{start:r,end:o}}};function hz(e,o,r){return Math.min(Math.max(e,o),r)}function Fh(e){return Math.max(e.selectionStart,e.selectionEnd)}function pz(){return typeof navigator<"u"&&!(navigator.platform&&/iPhone|iPod/.test(navigator.platform))}function mz(e){return{from:{start:0,end:0},to:{start:0,end:e.length},lastValue:""}}function gz(e){var o=e.currentValue,r=e.formattedValue,a=e.currentValueIndex,l=e.formattedValueIndex;return o[a]===r[l]}function vz(e,o,r,a,l,c,u){u===void 0&&(u=gz);var f=l.findIndex(function(N){return N}),h=e.slice(0,f);!o&&!r.startsWith(h)&&(o=h,r=h+r,a=a+h.length);for(var p=r.length,g=e.length,v={},x=new Array(p),S=0;S0&&x[T]===-1;)T--;var A=T===-1||x[T]===-1?0:x[T]+1;return A>z?z:a-A=0&&!r[o];)o--;o===-1&&(o=r.indexOf(!0))}else{for(;o<=l&&!r[o];)o++;o>l&&(o=r.lastIndexOf(!0))}return o===-1&&(o=l),o}function yz(e){for(var o=Array.from({length:e.length+1}).map(function(){return!0}),r=0,a=o.length;r$.length-u.length||MY||v>e.length-u.length)&&(I=v),e=e.substring(0,I),e=wz(A?"-"+e:e,l),e=(e.match(Cz(E))||[]).join("");var X=e.indexOf(E);e=e.replace(new RegExp(bw(E),"g"),function(k,V){return V===X?".":""});var ee=rg(e,l),ne=ee.beforeDecimal,re=ee.afterDecimal,j=ee.addNegation;return p.end-p.startD?!1:Z>=ie.start&&Z=o,l=r===void 0||e<=r;return a&&l}const jz={step:1,clampBehavior:"blur",allowDecimal:!0,allowNegative:!0,withKeyboardEvents:!0,allowLeadingZeros:!0,trimLeadingZeroesOnBlur:!0,startValue:0},Bz=(e,{size:o})=>({controls:{"--ni-chevron-size":Xe(o,"ni-chevron-size")}});function $z(e,o,r){const a=e.toString().replace(/^0+/,""),l=parseFloat(a);return Number.isNaN(l)?a:l>Number.MAX_SAFE_INTEGER?o!==void 0?String(o):a:lu(l,r,o)}const Ca=ge((e,o)=>{const r=ce("NumberInput",jz,e),{className:a,classNames:l,styles:c,unstyled:u,vars:f,onChange:h,onValueChange:p,value:g,defaultValue:v,max:x,min:S,step:E,hideControls:C,rightSection:R,isAllowed:T,clampBehavior:z,onBlur:A,allowDecimal:N,decimalScale:B,onKeyDown:M,onKeyDownCapture:$,handlersRef:L,startValue:H,disabled:I,rightSectionPointerEvents:Y,allowNegative:X,readOnly:ee,size:ne,rightSectionWidth:re,stepHoldInterval:j,stepHoldDelay:k,allowLeadingZeros:V,withKeyboardEvents:P,trimLeadingZeroesOnBlur:Z,...D}=r,O=_e({name:"NumberInput",classes:_p,props:r,classNames:l,styles:c,unstyled:u,vars:f,varsResolver:Bz}),{resolvedClassNames:q,resolvedStyles:W}=Xi({classNames:l,styles:c,props:r}),[ie,ue]=Wn({value:g,defaultValue:v,finalValue:"",onChange:h}),ve=k!==void 0&&j!==void 0,fe=b.useRef(null),be=b.useRef(null),ye=b.useRef(0),Ge=(de,Re)=>{Re.source==="event"&&ue(Oz(de.floatValue,de.value)&&!Az.test(de.value)&&!(V&&zz.test(de.value))?de.floatValue:de.value),p?.(de,Re)},Ne=de=>{const Re=String(de).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return Re?Math.max(0,(Re[1]?Re[1].length:0)-(Re[2]?+Re[2]:0)):0},Ke=de=>{fe.current&&typeof de<"u"&&fe.current.setSelectionRange(de,de)},Be=b.useRef(hp);Be.current=()=>{if(!Zh(ie))return;let de;const Re=Ne(ie),dt=Ne(E),nt=Math.max(Re,dt),yt=10**nt;if(!Dp(ie)&&(typeof ie!="number"||Number.isNaN(ie)))de=lu(H,S,x);else if(x!==void 0){const wt=(Math.round(Number(ie)*yt)+Math.round(E*yt))/yt;de=wt<=x?wt:x}else de=(Math.round(Number(ie)*yt)+Math.round(E*yt))/yt;const We=de.toFixed(nt);ue(parseFloat(We)),p?.({floatValue:parseFloat(We),formattedValue:We,value:We},{source:"increment"}),setTimeout(()=>Ke(fe.current?.value.length),0)};const tt=b.useRef(hp);tt.current=()=>{if(!Zh(ie))return;let de;const Re=S!==void 0?S:X?Number.MIN_SAFE_INTEGER:0,dt=Ne(ie),nt=Ne(E),yt=Math.max(dt,nt),We=10**yt;if(!Dp(ie)&&typeof ie!="number"||Number.isNaN(ie))de=lu(H,Re,x);else{const on=(Math.round(Number(ie)*We)-Math.round(E*We))/We;de=Re!==void 0&&onKe(fe.current?.value.length),0)};const vt=de=>{M?.(de),!(ee||!P)&&(de.key==="ArrowUp"&&(de.preventDefault(),Be.current()),de.key==="ArrowDown"&&(de.preventDefault(),tt.current()))},pe=de=>{if($?.(de),de.key==="Backspace"){const Re=fe.current;Re.selectionStart===0&&Re.selectionStart===Re.selectionEnd&&(de.preventDefault(),window.setTimeout(()=>Ke(0),0))}},me=de=>{let Re=ie;z==="blur"&&typeof Re=="number"&&(Re=lu(Re,S,x)),Z&&typeof Re=="string"&&Ne(Re)<15&&(Re=$z(Re,x,S)),ie!==Re&&ue(Re),A?.(de)};mu(L,{increment:Be.current,decrement:tt.current});const we=de=>{de?Be.current():tt.current(),ye.current+=1},De=de=>{if(we(de),ve){const Re=typeof j=="number"?j:j(ye.current);be.current=window.setTimeout(()=>De(de),Re)}},Ae=(de,Re)=>{de.preventDefault(),fe.current?.focus(),we(Re),ve&&(be.current=window.setTimeout(()=>De(Re),k))},xe=()=>{be.current&&window.clearTimeout(be.current),be.current=null,ye.current=0},$e=y.jsxs("div",{...O("controls"),children:[y.jsx($n,{...O("control"),tabIndex:-1,"aria-hidden":!0,disabled:I||typeof ie=="number"&&x!==void 0&&ie>=x,mod:{direction:"up"},onMouseDown:de=>de.preventDefault(),onPointerDown:de=>{Ae(de,!0)},onPointerUp:xe,onPointerLeave:xe,children:y.jsx(b1,{direction:"up"})}),y.jsx($n,{...O("control"),tabIndex:-1,"aria-hidden":!0,disabled:I||typeof ie=="number"&&S!==void 0&&ie<=S,mod:{direction:"down"},onMouseDown:de=>de.preventDefault(),onPointerDown:de=>{Ae(de,!1)},onPointerUp:xe,onPointerLeave:xe,children:y.jsx(b1,{direction:"down"})})]});return y.jsx(cr,{component:Nz,allowNegative:X,className:zt(_p.root,a),size:ne,...D,readOnly:ee,disabled:I,value:ie,getInputRef:Mt(o,fe),onValueChange:Ge,rightSection:C||ee||!Zh(ie)?R:R||$e,classNames:q,styles:W,unstyled:u,__staticSelector:"NumberInput",decimalScale:N?B:0,onKeyDown:vt,onKeyDownCapture:pe,rightSectionPointerEvents:Y??(I?"none":void 0),rightSectionWidth:re??`var(--ni-right-section-width-${ne||"sm"})`,allowLeadingZeros:V,onBlur:me,isAllowed:de=>z==="strict"?T?T(de)&&x1(de.floatValue,S,x):x1(de.floatValue,S,x):T?T(de):!0})});Ca.classes={...cr.classes,..._p};Ca.displayName="@mantine/core/NumberInput";const Lz=({reveal:e})=>y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{width:"var(--psi-icon-size)",height:"var(--psi-icon-size)"},children:y.jsx("path",{d:e?"M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L10.6828 3.61012C9.70652 3.21671 8.63759 3 7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C0.902945 9.08812 2.02314 10.1861 3.36061 10.9323L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L4.31723 11.3899C5.29348 11.7833 6.36241 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C14.0971 5.9119 12.9769 4.81391 11.6394 4.06771L13.3536 2.35355ZM9.90428 4.38861C9.15332 4.1361 8.34759 4 7.5 4C4.80285 4 2.52952 5.37816 1.09622 7.50001C1.87284 8.6497 2.89609 9.58106 4.09974 10.1931L9.90428 4.38861ZM5.09572 10.6114L10.9003 4.80685C12.1039 5.41894 13.1272 6.35031 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11C6.65241 11 5.84668 10.8639 5.09572 10.6114Z":"M7.5 11C4.80285 11 2.52952 9.62184 1.09622 7.50001C2.52952 5.37816 4.80285 4 7.5 4C10.1971 4 12.4705 5.37816 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11ZM7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C1.65639 10.2936 4.30786 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C13.3436 4.70638 10.6921 3 7.5 3ZM7.5 9.5C8.60457 9.5 9.5 8.60457 9.5 7.5C9.5 6.39543 8.60457 5.5 7.5 5.5C6.39543 5.5 5.5 6.39543 5.5 7.5C5.5 8.60457 6.39543 9.5 7.5 9.5Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})});var Np={root:"m_f61ca620",input:"m_ccf8da4c",innerInput:"m_f2d85dd2",visibilityToggle:"m_b1072d44"};const kz={visibilityToggleIcon:Lz},Hz=(e,{size:o})=>({root:{"--psi-icon-size":Xe(o,"psi-icon-size"),"--psi-button-size":Xe(o,"psi-button-size")}}),af=ge((e,o)=>{const r=ce("PasswordInput",kz,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,required:p,error:g,leftSection:v,disabled:x,id:S,variant:E,inputContainer:C,description:R,label:T,size:z,errorProps:A,descriptionProps:N,labelProps:B,withAsterisk:M,inputWrapperOrder:$,wrapperProps:L,radius:H,rightSection:I,rightSectionWidth:Y,rightSectionPointerEvents:X,leftSectionWidth:ee,visible:ne,defaultVisible:re,onVisibilityChange:j,visibilityToggleIcon:k,visibilityToggleButtonProps:V,rightSectionProps:P,leftSectionProps:Z,leftSectionPointerEvents:D,withErrorStyles:O,mod:q,...W}=r,ie=Jn(S),[ue,ve]=Wn({value:ne,defaultValue:re,finalValue:!1,onChange:j}),fe=()=>ve(!ue),be=_e({name:"PasswordInput",classes:Np,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:Hz}),{resolvedClassNames:ye,resolvedStyles:Ge}=Xi({classNames:a,styles:u,props:r}),{styleProps:Ne,rest:Ke}=qi(W),Be=k,tt=A?.id||`${ie}-error`,vt=N?.id||`${ie}-description`,we=`${!!g&&typeof g!="boolean"?tt:""} ${!!R?vt:""}`,De=we.trim().length>0?we.trim():void 0,Ae=y.jsx(Yt,{...be("visibilityToggle"),disabled:x,radius:H,"aria-hidden":!V,tabIndex:-1,...V,variant:V?.variant??"subtle",color:"gray",unstyled:f,onTouchEnd:xe=>{xe.preventDefault(),V?.onTouchEnd?.(xe),fe()},onMouseDown:xe=>{xe.preventDefault(),V?.onMouseDown?.(xe),fe()},onKeyDown:xe=>{V?.onKeyDown?.(xe),xe.key===" "&&(xe.preventDefault(),fe())},children:y.jsx(Be,{reveal:ue})});return y.jsx(St.Wrapper,{required:p,id:ie,label:T,error:g,description:R,size:z,classNames:ye,styles:Ge,__staticSelector:"PasswordInput",unstyled:f,withAsterisk:M,inputWrapperOrder:$,inputContainer:C,variant:E,labelProps:{...B,htmlFor:ie},descriptionProps:{...N,id:vt},errorProps:{...A,id:tt},mod:q,...be("root"),...Ne,...L,children:y.jsx(St,{component:"div",error:g,leftSection:v,size:z,classNames:{...ye,input:zt(Np.input,ye.input)},styles:Ge,radius:H,disabled:x,__staticSelector:"PasswordInput",rightSectionWidth:Y,rightSection:I??Ae,variant:E,unstyled:f,leftSectionWidth:ee,rightSectionPointerEvents:X||"all",rightSectionProps:P,leftSectionProps:Z,leftSectionPointerEvents:D,withAria:!1,withErrorStyles:O,children:y.jsx("input",{required:p,"data-invalid":!!g||void 0,"data-with-left-section":!!v||void 0,...be("innerInput"),disabled:x,id:ie,ref:o,...Ke,"aria-describedby":De,autoComplete:Ke.autoComplete||"off",type:ue?"text":"password"})})})});af.classes={...cr.classes,...Np};af.displayName="@mantine/core/PasswordInput";const Uz={duration:100,transition:"fade"};function Pz(e,o){return{...Uz,...o,...e}}function Vz({offset:e,position:o,defaultOpened:r}){const[a,l]=b.useState(r),c=b.useRef(null),{x:u,y:f,elements:h,refs:p,update:g,placement:v}=mm({placement:o,middleware:[fm({crossAxis:!0,padding:5,rootBoundary:"document"})]}),x=v.includes("right")?e:o.includes("left")?e*-1:0,S=v.includes("bottom")?e:o.includes("top")?e*-1:0,E=b.useCallback(({clientX:C,clientY:R})=>{p.setPositionReference({getBoundingClientRect(){return{width:0,height:0,x:C,y:R,left:C+x,top:R+S,right:C,bottom:R}}})},[h.reference]);return b.useEffect(()=>{if(p.floating.current){const C=c.current;C.addEventListener("mousemove",E);const R=tr(p.floating.current);return R.forEach(T=>{T.addEventListener("scroll",g)}),()=>{C.removeEventListener("mousemove",E),R.forEach(T=>{T.removeEventListener("scroll",g)})}}},[h.reference,p.floating.current,g,E,a]),{handleMouseMove:E,x:u,y:f,opened:a,setOpened:l,boundaryRef:c,floating:p.setFloating}}var lf={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const Yz={refProp:"ref",withinPortal:!0,offset:10,defaultOpened:!1,position:"right",zIndex:vo("popover")},Gz=(e,{radius:o,color:r})=>({tooltip:{"--tooltip-radius":o===void 0?void 0:kt(o),"--tooltip-bg":r?Zt(r,e):void 0,"--tooltip-color":r?"var(--mantine-color-white)":void 0}}),ag=ge((e,o)=>{const r=ce("TooltipFloating",Yz,e),{children:a,refProp:l,withinPortal:c,style:u,className:f,classNames:h,styles:p,unstyled:g,radius:v,color:x,label:S,offset:E,position:C,multiline:R,zIndex:T,disabled:z,defaultOpened:A,variant:N,vars:B,portalProps:M,...$}=r,L=cn(),H=_e({name:"TooltipFloating",props:r,classes:lf,className:f,style:u,classNames:h,styles:p,unstyled:g,rootSelector:"tooltip",vars:B,varsResolver:Gz}),{handleMouseMove:I,x:Y,y:X,opened:ee,boundaryRef:ne,floating:re,setOpened:j}=Vz({offset:E,position:C,defaultOpened:A});if(!rr(a))throw new Error("[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const k=Mt(ne,Au(a),o),V=a.props,P=D=>{V.onMouseEnter?.(D),I(D),j(!0)},Z=D=>{V.onMouseLeave?.(D),j(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(za,{...M,withinPortal:c,children:y.jsx(he,{...$,...H("tooltip",{style:{...om(u,L),zIndex:T,display:!z&&ee?"block":"none",top:(X&&Math.round(X))??"",left:(Y&&Math.round(Y))??""}}),variant:N,ref:re,mod:{multiline:R},children:S})}),b.cloneElement(a,{...V,[l]:k,onMouseEnter:P,onMouseLeave:Z})]})});ag.classes=lf;ag.displayName="@mantine/core/TooltipFloating";const Ew=b.createContext(!1),Xz=Ew.Provider,qz=()=>b.useContext(Ew),Iz={openDelay:0,closeDelay:0};function ig(e){const{openDelay:o,closeDelay:r,children:a}=ce("TooltipGroup",Iz,e);return y.jsx(Xz,{value:!0,children:y.jsx(FD,{delay:{open:o,close:r},children:a})})}ig.displayName="@mantine/core/TooltipGroup";ig.extend=e=>e;function Fz(e){if(e===void 0)return{shift:!0,flip:!0};const o={...e};return e.shift===void 0&&(o.shift=!0),e.flip===void 0&&(o.flip=!0),o}function Zz(e){const o=Fz(e.middlewares),r=[Fx(e.offset)];return o.shift&&r.push(fm(typeof o.shift=="boolean"?{padding:8}:{padding:8,...o.shift})),o.flip&&r.push(typeof o.flip=="boolean"?xu():xu(o.flip)),r.push(Zx({element:e.arrowRef,padding:e.arrowOffset})),o.inline?r.push(typeof o.inline=="boolean"?is():is(o.inline)):e.inline&&r.push(is()),r}function Qz(e){const[o,r]=b.useState(e.defaultOpened),l=typeof e.opened=="boolean"?e.opened:o,c=qz(),u=Jn(),f=b.useCallback(M=>{r(M),M&&z(u)},[u]),{x:h,y:p,context:g,refs:v,update:x,placement:S,middlewareData:{arrow:{x:E,y:C}={}}}=mm({strategy:e.strategy,placement:e.position,open:l,onOpenChange:f,middleware:Zz(e)}),{delay:R,currentId:T,setCurrentId:z}=ZD(g,{id:u}),{getReferenceProps:A,getFloatingProps:N}=n3([qD(g,{enabled:e.events?.hover,delay:c?R:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),t3(g,{enabled:e.events?.focus,visibleOnly:!0}),r3(g,{role:"tooltip"}),JD(g,{enabled:typeof e.opened>"u"})]);SS({opened:l,position:e.position,positionDependencies:e.positionDependencies,floating:{refs:v,update:x}}),or(()=>{e.onPositionChange?.(S)},[S]);const B=l&&T&&T!==u;return{x:h,y:p,arrowX:E,arrowY:C,reference:v.setReference,floating:v.setFloating,getFloatingProps:N,getReferenceProps:A,isGroupPhase:B,opened:l,placement:S}}const S1={position:"top",refProp:"ref",withinPortal:!0,inline:!1,defaultOpened:!1,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:"side",offset:5,transitionProps:{duration:100,transition:"fade"},events:{hover:!0,focus:!1,touch:!1},zIndex:vo("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},Kz=(e,{radius:o,color:r})=>({tooltip:{"--tooltip-radius":o===void 0?void 0:kt(o),"--tooltip-bg":r?Zt(r,e):void 0,"--tooltip-color":r?"var(--mantine-color-white)":void 0}}),Ts=ge((e,o)=>{const r=ce("Tooltip",S1,e),{children:a,position:l,refProp:c,label:u,openDelay:f,closeDelay:h,onPositionChange:p,opened:g,defaultOpened:v,withinPortal:x,radius:S,color:E,classNames:C,styles:R,unstyled:T,style:z,className:A,withArrow:N,arrowSize:B,arrowOffset:M,arrowRadius:$,arrowPosition:L,offset:H,transitionProps:I,multiline:Y,events:X,zIndex:ee,disabled:ne,positionDependencies:re,onClick:j,onMouseEnter:k,onMouseLeave:V,inline:P,variant:Z,keepMounted:D,vars:O,portalProps:q,mod:W,floatingStrategy:ie,middlewares:ue,...ve}=ce("Tooltip",S1,r),{dir:fe}=Ii(),be=b.useRef(null),ye=Qz({position:pS(fe,l),closeDelay:h,openDelay:f,onPositionChange:p,opened:g,defaultOpened:v,events:X,arrowRef:be,arrowOffset:M,offset:typeof H=="number"?H+(N?B/2:0):H,positionDependencies:[...re,a],inline:P,strategy:ie,middlewares:ue}),Ge=_e({name:"Tooltip",props:r,classes:lf,className:A,style:z,classNames:C,styles:R,unstyled:T,rootSelector:"tooltip",vars:O,varsResolver:Kz});if(!rr(a))throw new Error("[@mantine/core] Tooltip component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const Ne=Mt(ye.reference,Au(a),o),Ke=Pz(I,{duration:100,transition:"fade"}),Be=a.props;return y.jsxs(y.Fragment,{children:[y.jsx(za,{...q,withinPortal:x,children:y.jsx(qr,{...Ke,keepMounted:D,mounted:!ne&&!!ye.opened,duration:ye.isGroupPhase?10:Ke.duration,children:tt=>y.jsxs(he,{...ve,"data-fixed":ie==="fixed"||void 0,variant:Z,mod:[{multiline:Y},W],...ye.getFloatingProps({ref:ye.floating,className:Ge("tooltip").className,style:{...Ge("tooltip").style,...tt,zIndex:ee,top:ye.y??0,left:ye.x??0}}),children:[u,y.jsx(xm,{ref:be,arrowX:ye.arrowX,arrowY:ye.arrowY,visible:N,position:ye.placement,arrowSize:B,arrowOffset:M,arrowRadius:$,arrowPosition:L,...Ge("arrow")})]})})}),b.cloneElement(a,ye.getReferenceProps({onClick:j,onMouseEnter:k,onMouseLeave:V,onMouseMove:r.onMouseMove,onPointerDown:r.onPointerDown,onPointerEnter:r.onPointerEnter,className:zt(A,Be.className),...Be,[c]:Ne}))]})});Ts.classes=lf;Ts.displayName="@mantine/core/Tooltip";Ts.Floating=ag;Ts.Group=ig;var Rw={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const Wz={withItemsBorders:!0},Jz=(e,{radius:o,color:r,transitionDuration:a,size:l,transitionTimingFunction:c})=>({root:{"--sc-radius":o===void 0?void 0:kt(o),"--sc-color":r?Zt(r,e):void 0,"--sc-shadow":r?void 0:"var(--mantine-shadow-xs)","--sc-transition-duration":a===void 0?void 0:`${a}ms`,"--sc-transition-timing-function":c,"--sc-padding":Xe(l,"sc-padding"),"--sc-font-size":nn(l)}}),lg=ge((e,o)=>{const r=ce("SegmentedControl",Wz,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,data:p,value:g,defaultValue:v,onChange:x,size:S,name:E,disabled:C,readOnly:R,fullWidth:T,orientation:z,radius:A,color:N,transitionDuration:B,transitionTimingFunction:M,variant:$,autoContrast:L,withItemsBorders:H,mod:I,...Y}=r,X=_e({name:"SegmentedControl",props:r,classes:Rw,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:Jz}),ee=cn(),ne=p.map(fe=>typeof fe=="string"?{label:fe,value:fe}:fe),re=uT(),[j,k]=b.useState(pu()),[V,P]=b.useState(null),[Z,D]=b.useState({}),O=(fe,be)=>{Z[be]=fe,D(Z)},[q,W]=Wn({value:g,defaultValue:v,finalValue:Array.isArray(p)?ne.find(fe=>!fe.disabled)?.value??p[0]?.value??null:null,onChange:x}),ie=Jn(E),ue=ne.map(fe=>b.createElement(he,{...X("control"),mod:{active:q===fe.value,orientation:z},key:fe.value},b.createElement("input",{...X("input"),disabled:C||fe.disabled,type:"radio",name:ie,value:fe.value,id:`${ie}-${fe.value}`,checked:q===fe.value,onChange:()=>!R&&W(fe.value),"data-focus-ring":ee.focusRing,key:`${fe.value}-input`}),b.createElement(he,{component:"label",...X("label"),mod:{active:q===fe.value&&!(C||fe.disabled),disabled:C||fe.disabled,"read-only":R},htmlFor:`${ie}-${fe.value}`,ref:be=>O(be,fe.value),__vars:{"--sc-label-color":N!==void 0?Mu({color:N,theme:ee,autoContrast:L}):void 0},key:`${fe.value}-label`},y.jsx("span",{...X("innerLabel"),children:fe.label})))),ve=Mt(o,fe=>P(fe));return aT(()=>{k(pu())},[p.length]),p.length===0?null:y.jsxs(he,{...X("root"),variant:$,size:S,ref:ve,mod:[{"full-width":T,orientation:z,initialized:re,"with-items-borders":H},I],...Y,role:"radiogroup","data-disabled":C,children:[typeof q=="string"&&y.jsx(Tm,{target:Z[q],parent:V,component:"span",transitionDuration:"var(--sc-transition-duration)",...X("indicator")},j),ue]})});lg.classes=Rw;lg.displayName="@mantine/core/SegmentedControl";const eM={searchable:!1,withCheckIcon:!0,allowDeselect:!0,checkIconPosition:"left"},Vi=ge((e,o)=>{const r=ce("Select",eM,e),{classNames:a,styles:l,unstyled:c,vars:u,dropdownOpened:f,defaultDropdownOpened:h,onDropdownClose:p,onDropdownOpen:g,onFocus:v,onBlur:x,onClick:S,onChange:E,data:C,value:R,defaultValue:T,selectFirstOptionOnChange:z,onOptionSubmit:A,comboboxProps:N,readOnly:B,disabled:M,filter:$,limit:L,withScrollArea:H,maxDropdownHeight:I,size:Y,searchable:X,rightSection:ee,checkIconPosition:ne,withCheckIcon:re,nothingFoundMessage:j,name:k,form:V,searchValue:P,defaultSearchValue:Z,onSearchChange:D,allowDeselect:O,error:q,rightSectionPointerEvents:W,id:ie,clearable:ue,clearButtonProps:ve,hiddenInputProps:fe,renderOption:be,onClear:ye,autoComplete:Ge,scrollAreaProps:Ne,__defaultRightSection:Ke,__clearSection:Be,__clearable:tt,chevronColor:vt,...pe}=r,me=b.useMemo(()=>PN(C),[C]),we=b.useMemo(()=>VS(me),[me]),De=Jn(ie),[Ae,xe,$e]=Wn({value:R,defaultValue:T,finalValue:null,onChange:E}),de=typeof Ae=="string"?we[Ae]:void 0,Re=sT(de),[dt,nt,yt]=Wn({value:P,defaultValue:Z,finalValue:de?de.label:"",onChange:D}),We=FS({opened:f,defaultOpened:h,onDropdownOpen:()=>{g?.(),We.updateSelectedOptionIndex("active",{scrollIntoView:!0})},onDropdownClose:()=>{p?.(),We.resetSelectedOption()}}),wt=st=>{nt(st),We.resetSelectedOption()},{resolvedClassNames:on,resolvedStyles:Qr}=Xi({props:r,styles:l,classNames:a});b.useEffect(()=>{z&&We.selectFirstOption()},[z,dt]),b.useEffect(()=>{R===null&&wt(""),typeof R=="string"&&de&&(Re?.value!==de.value||Re?.label!==de.label)&&wt(de.label)},[R,de]),b.useEffect(()=>{!$e&&!yt&&wt(typeof Ae=="string"&&we[Ae]?.label||"")},[C,Ae]);const Oo=y.jsx(lt.ClearButton,{...ve,onClear:()=>{xe(null,null),wt(""),ye?.()}}),Gt=ue&&!!Ae&&!M&&!B;return y.jsxs(y.Fragment,{children:[y.jsxs(lt,{store:We,__staticSelector:"Select",classNames:on,styles:Qr,unstyled:c,readOnly:B,onOptionSubmit:st=>{A?.(st);const Ct=O&&we[st].value===Ae?null:we[st],Kr=Ct?Ct.value:null;Kr!==Ae&&xe(Kr,Ct),!$e&&wt(typeof Kr=="string"&&Ct?.label||""),We.closeDropdown()},size:Y,...N,children:[y.jsx(lt.Target,{targetType:X?"input":"button",autoComplete:Ge,children:y.jsx(cr,{id:De,ref:o,__defaultRightSection:y.jsx(lt.Chevron,{size:Y,error:q,unstyled:c,color:vt}),__clearSection:Oo,__clearable:Gt,rightSection:ee,rightSectionPointerEvents:W||(Gt?"all":"none"),...pe,size:Y,__staticSelector:"Select",disabled:M,readOnly:B||!X,value:dt,onChange:st=>{wt(st.currentTarget.value),We.openDropdown(),z&&We.selectFirstOption()},onFocus:st=>{X&&We.openDropdown(),v?.(st)},onBlur:st=>{X&&We.closeDropdown(),wt(Ae!=null&&we[Ae]?.label||""),x?.(st)},onClick:st=>{X?We.openDropdown():We.toggleDropdown(),S?.(st)},classNames:on,styles:Qr,unstyled:c,pointer:!X,error:q})}),y.jsx(xA,{data:me,hidden:B||M,filter:$,search:dt,limit:L,hiddenWhenEmpty:!j,withScrollArea:H,maxDropdownHeight:I,filterOptions:X&&de?.label!==dt,value:Ae,checkIconPosition:ne,withCheckIcon:re,nothingFoundMessage:j,unstyled:c,labelId:pe.label?`${De}-label`:void 0,"aria-label":pe.label?void 0:pe["aria-label"],renderOption:be,scrollAreaProps:Ne})]}),y.jsx(lt.HiddenInput,{value:Ae,name:k,form:V,disabled:M,...fe})]})});Vi.classes={...cr.classes,...lt.classes};Vi.displayName="@mantine/core/Select";function tM({spacing:e,verticalSpacing:o,cols:r,selector:a}){const l=cn(),c=o===void 0?e:o,u=xs({"--sg-spacing-x":sn(Oi(e)),"--sg-spacing-y":sn(Oi(c)),"--sg-cols":Oi(r)?.toString()}),f=At(l.breakpoints).reduce((g,v)=>(g[v]||(g[v]={}),typeof e=="object"&&e[v]!==void 0&&(g[v]["--sg-spacing-x"]=sn(e[v])),typeof c=="object"&&c[v]!==void 0&&(g[v]["--sg-spacing-y"]=sn(c[v])),typeof r=="object"&&r[v]!==void 0&&(g[v]["--sg-cols"]=r[v]),g),{}),p=pp(At(f),l.breakpoints).filter(g=>At(f[g.value]).length>0).map(g=>({query:`(min-width: ${l.breakpoints[g.value]})`,styles:f[g.value]}));return y.jsx(Ou,{styles:u,media:p,selector:a})}function Qh(e){return typeof e=="object"&&e!==null?At(e):[]}function nM(e){return e.sort((o,r)=>fs(o)-fs(r))}function oM({spacing:e,verticalSpacing:o,cols:r}){const a=Array.from(new Set([...Qh(e),...Qh(o),...Qh(r)]));return nM(a)}function rM({spacing:e,verticalSpacing:o,cols:r,selector:a}){const l=o===void 0?e:o,c=xs({"--sg-spacing-x":sn(Oi(e)),"--sg-spacing-y":sn(Oi(l)),"--sg-cols":Oi(r)?.toString()}),u=oM({spacing:e,verticalSpacing:o,cols:r}),f=u.reduce((p,g)=>(p[g]||(p[g]={}),typeof e=="object"&&e[g]!==void 0&&(p[g]["--sg-spacing-x"]=sn(e[g])),typeof l=="object"&&l[g]!==void 0&&(p[g]["--sg-spacing-y"]=sn(l[g])),typeof r=="object"&&r[g]!==void 0&&(p[g]["--sg-cols"]=r[g]),p),{}),h=u.map(p=>({query:`simple-grid (min-width: ${p})`,styles:f[p]}));return y.jsx(Ou,{styles:c,container:h,selector:a})}var Tw={container:"m_925c2d2c",root:"m_2415a157"};const aM={cols:1,spacing:"md",type:"media"},sg=ge((e,o)=>{const r=ce("SimpleGrid",aM,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,cols:p,verticalSpacing:g,spacing:v,type:x,...S}=r,E=_e({name:"SimpleGrid",classes:Tw,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h}),C=Ax();return x==="container"?y.jsxs(y.Fragment,{children:[y.jsx(rM,{...r,selector:`.${C}`}),y.jsx("div",{...E("container"),children:y.jsx(he,{ref:o,...E("root",{className:C}),...S})})]}):y.jsxs(y.Fragment,{children:[y.jsx(tM,{...r,selector:`.${C}`}),y.jsx(he,{ref:o,...E("root",{className:C}),...S})]})});sg.classes=Tw;sg.displayName="@mantine/core/SimpleGrid";var _w={root:"m_6d731127"};const iM={gap:"md",align:"stretch",justify:"flex-start"},lM=(e,{gap:o,align:r,justify:a})=>({root:{"--stack-gap":sn(o),"--stack-align":r,"--stack-justify":a}}),Qt=ge((e,o)=>{const r=ce("Stack",iM,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,align:p,justify:g,gap:v,variant:x,...S}=r,E=_e({name:"Stack",props:r,classes:_w,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:lM});return y.jsx(he,{ref:o,...E("root"),variant:x,...S})});Qt.classes=_w;Qt.displayName="@mantine/core/Stack";const Dw=b.createContext(null),sM=Dw.Provider,cM=()=>b.useContext(Dw),uM={},cg=ge((e,o)=>{const{value:r,defaultValue:a,onChange:l,size:c,wrapperProps:u,children:f,readOnly:h,...p}=ce("SwitchGroup",uM,e),[g,v]=Wn({value:r,defaultValue:a,finalValue:[],onChange:l}),x=S=>{const E=S.currentTarget.value;!h&&v(g.includes(E)?g.filter(C=>C!==E):[...g,E])};return y.jsx(sM,{value:{value:g,onChange:x,size:c},children:y.jsx(St.Wrapper,{size:c,ref:o,...u,...p,labelElement:"div",__staticSelector:"SwitchGroup",children:y.jsx(ew,{role:"group",children:f})})})});cg.classes=St.Wrapper.classes;cg.displayName="@mantine/core/SwitchGroup";var Nw={root:"m_5f93f3bb",input:"m_926b4011",track:"m_9307d992",thumb:"m_93039a1d",trackLabel:"m_8277e082"};const fM={labelPosition:"right",withThumbIndicator:!0},dM=(e,{radius:o,color:r,size:a})=>({root:{"--switch-radius":o===void 0?void 0:kt(o),"--switch-height":Xe(a,"switch-height"),"--switch-width":Xe(a,"switch-width"),"--switch-thumb-size":Xe(a,"switch-thumb-size"),"--switch-label-font-size":Xe(a,"switch-label-font-size"),"--switch-track-label-padding":Xe(a,"switch-track-label-padding"),"--switch-color":r?Zt(r,e):void 0}}),Bi=ge((e,o)=>{const r=ce("Switch",fM,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,color:p,label:g,offLabel:v,onLabel:x,id:S,size:E,radius:C,wrapperProps:R,thumbIcon:T,checked:z,defaultChecked:A,onChange:N,labelPosition:B,description:M,error:$,disabled:L,variant:H,rootRef:I,mod:Y,withThumbIndicator:X,...ee}=r,ne=cM(),re=E||ne?.size,j=_e({name:"Switch",props:r,classes:Nw,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:dM}),{styleProps:k,rest:V}=qi(ee),P=Jn(S),Z=ne?{checked:ne.value.includes(V.value),onChange:ne.onChange}:{},[D,O]=Wn({value:Z.checked??z,defaultValue:A,finalValue:!1});return y.jsxs(Ym,{...j("root"),__staticSelector:"Switch",__stylesApiProps:r,id:P,size:re,labelPosition:B,label:g,description:M,error:$,disabled:L,bodyElement:"label",labelElement:"span",classNames:a,styles:u,unstyled:f,"data-checked":Z.checked||z||void 0,variant:H,ref:I,mod:Y,...k,...R,children:[y.jsx("input",{...V,disabled:L,checked:D,"data-checked":Z.checked||z||void 0,onChange:q=>{ne?Z.onChange?.(q):N?.(q),O(q.currentTarget.checked)},id:P,ref:o,type:"checkbox",role:"switch",...j("input")}),y.jsxs(he,{"aria-hidden":"true",component:"span",mod:{error:$,"label-position":B,"without-labels":!x&&!v},...j("track"),children:[y.jsx(he,{component:"span",mod:{"reduce-motion":!0,"with-thumb-indicator":X&&!T},...j("thumb"),children:T}),y.jsx("span",{...j("trackLabel"),children:D?x:v})]})]})});Bi.classes={...Nw,...QS};Bi.displayName="@mantine/core/Switch";Bi.Group=cg;const[hM,pM]=zo("Table component was not found in the tree");var _s={table:"m_b23fa0ef",th:"m_4e7aa4f3",tr:"m_4e7aa4fd",td:"m_4e7aa4ef",tbody:"m_b2404537",thead:"m_b242d975",caption:"m_9e5a3ac7",scrollContainer:"m_a100c15",scrollContainerInner:"m_62259741"};function mM(e,o){if(!o)return;const r={};return o.columnBorder&&e.withColumnBorders&&(r["data-with-column-border"]=!0),o.rowBorder&&e.withRowBorders&&(r["data-with-row-border"]=!0),o.striped&&e.striped&&(r["data-striped"]=e.striped),o.highlightOnHover&&e.highlightOnHover&&(r["data-hover"]=!0),o.captionSide&&e.captionSide&&(r["data-side"]=e.captionSide),o.stickyHeader&&e.stickyHeader&&(r["data-sticky"]=!0),r}function Oa(e,o){const r=`Table${e.charAt(0).toUpperCase()}${e.slice(1)}`,a=ge((l,c)=>{const u=ce(r,{},l),{classNames:f,className:h,style:p,styles:g,...v}=u,x=pM();return y.jsx(he,{component:e,ref:c,...mM(x,o),...x.getStyles(e,{className:h,classNames:f,style:p,styles:g,props:u}),...v})});return a.displayName=`@mantine/core/${r}`,a.classes=_s,a}const Ap=Oa("th",{columnBorder:!0}),Aw=Oa("td",{columnBorder:!0}),uu=Oa("tr",{rowBorder:!0,striped:!0,highlightOnHover:!0}),zw=Oa("thead",{stickyHeader:!0}),Mw=Oa("tbody"),Ow=Oa("tfoot"),jw=Oa("caption",{captionSide:!0});function ug({data:e}){return y.jsxs(y.Fragment,{children:[e.caption&&y.jsx(jw,{children:e.caption}),e.head&&y.jsx(zw,{children:y.jsx(uu,{children:e.head.map((o,r)=>y.jsx(Ap,{children:o},r))})}),e.body&&y.jsx(Mw,{children:e.body.map((o,r)=>y.jsx(uu,{children:o.map((a,l)=>y.jsx(Aw,{children:a},l))},r))}),e.foot&&y.jsx(Ow,{children:y.jsx(uu,{children:e.foot.map((o,r)=>y.jsx(Ap,{children:o},r))})})]})}ug.displayName="@mantine/core/TableDataRenderer";const gM={type:"scrollarea"},vM=(e,{minWidth:o,maxHeight:r,type:a})=>({scrollContainer:{"--table-min-width":oe(o),"--table-max-height":oe(r),"--table-overflow":a==="native"?"auto":void 0}}),fg=ge((e,o)=>{const r=ce("TableScrollContainer",gM,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,children:p,minWidth:g,maxHeight:v,type:x,scrollAreaProps:S,...E}=r,C=_e({name:"TableScrollContainer",classes:_s,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:vM,rootSelector:"scrollContainer"});return y.jsx(he,{component:x==="scrollarea"?Aa:"div",...x==="scrollarea"?v?{offsetScrollbars:"xy",...S}:{offsetScrollbars:"x",...S}:{},ref:o,...C("scrollContainer"),...E,children:y.jsx("div",{...C("scrollContainerInner"),children:p})})});fg.classes=_s;fg.displayName="@mantine/core/TableScrollContainer";const yM={withRowBorders:!0,verticalSpacing:7},bM=(e,{layout:o,captionSide:r,horizontalSpacing:a,verticalSpacing:l,borderColor:c,stripedColor:u,highlightOnHoverColor:f,striped:h,highlightOnHover:p,stickyHeaderOffset:g,stickyHeader:v})=>({table:{"--table-layout":o,"--table-caption-side":r,"--table-horizontal-spacing":sn(a),"--table-vertical-spacing":sn(l),"--table-border-color":c?Zt(c,e):void 0,"--table-striped-color":h&&u?Zt(u,e):void 0,"--table-highlight-on-hover-color":p&&f?Zt(f,e):void 0,"--table-sticky-header-offset":v?oe(g):void 0}}),it=ge((e,o)=>{const r=ce("Table",yM,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,horizontalSpacing:p,verticalSpacing:g,captionSide:v,stripedColor:x,highlightOnHoverColor:S,striped:E,highlightOnHover:C,withColumnBorders:R,withRowBorders:T,withTableBorder:z,borderColor:A,layout:N,variant:B,data:M,children:$,stickyHeader:L,stickyHeaderOffset:H,mod:I,tabularNums:Y,...X}=r,ee=_e({name:"Table",props:r,className:l,style:c,classes:_s,classNames:a,styles:u,unstyled:f,rootSelector:"table",vars:h,varsResolver:bM});return y.jsx(hM,{value:{getStyles:ee,stickyHeader:L,striped:E===!0?"odd":E||void 0,highlightOnHover:C,withColumnBorders:R,withRowBorders:T,captionSide:v||"bottom"},children:y.jsx(he,{component:"table",variant:B,ref:o,mod:[{"data-with-table-border":z,"data-tabular-nums":Y},I],...ee("table"),...X,children:$||!!M&&y.jsx(ug,{data:M})})})});it.classes=_s;it.displayName="@mantine/core/Table";it.Td=Aw;it.Th=Ap;it.Tr=uu;it.Thead=zw;it.Tbody=Mw;it.Tfoot=Ow;it.Caption=jw;it.ScrollContainer=fg;it.DataRenderer=ug;const xM={},Yi=ge((e,o)=>{const r=ce("TextInput",xM,e);return y.jsx(cr,{component:"input",ref:o,...r,__staticSelector:"TextInput"})});Yi.classes=cr.classes;Yi.displayName="@mantine/core/TextInput";function SM(e){let o=e,r=!1;const a=new Set;return{getState(){return o},updateState(l){o=typeof l=="function"?l(o):l},setState(l){this.updateState(l),a.forEach(c=>c(o))},initialize(l){r||(o=l,r=!0)},subscribe(l){return a.add(l),()=>a.delete(l)}}}function wM(e){return b.useSyncExternalStore(e.subscribe,()=>e.getState(),()=>e.getState())}function CM(e,o,r){const a=[],l=[],c={};for(const u of e){const f=u.position||o;c[f]=c[f]||0,c[f]+=1,c[f]<=r?l.push(u):a.push(u)}return{notifications:l,queue:a}}const EM=()=>SM({notifications:[],queue:[],defaultPosition:"bottom-right",limit:5}),ja=EM(),RM=(e=ja)=>wM(e);function rl(e,o){const r=e.getState(),a=o([...r.notifications,...r.queue]),l=CM(a,r.defaultPosition,r.limit);e.setState({notifications:l.notifications,queue:l.queue,limit:r.limit,defaultPosition:r.defaultPosition})}function TM(e,o=ja){const r=e.id||pu();return rl(o,a=>e.id&&a.some(l=>l.id===e.id)?a:[...a,{...e,id:r}]),r}function Bw(e,o=ja){return rl(o,r=>r.filter(a=>a.id===e?(a.onClose?.(a),!1):!0)),e}function _M(e,o=ja){return rl(o,r=>r.map(a=>a.id===e.id?{...a,...e}:a)),e.id}function DM(e=ja){rl(e,()=>[])}function NM(e=ja){rl(e,o=>o.slice(0,e.getState().limit))}const Ze={show:TM,hide:Bw,update:_M,clean:DM,cleanQueue:NM,updateState:rl};function zp(e,o){return zp=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},zp(e,o)}function $w(e,o){e.prototype=Object.create(o.prototype),e.prototype.constructor=e,zp(e,o)}var Kh={exports:{}},Wh,w1;function AM(){if(w1)return Wh;w1=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Wh=e,Wh}var Jh,C1;function zM(){if(C1)return Jh;C1=1;var e=AM();function o(){}function r(){}return r.resetWarningCache=o,Jh=function(){function a(u,f,h,p,g,v){if(v!==e){var x=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw x.name="Invariant Violation",x}}a.isRequired=a;function l(){return a}var c={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:l,element:a,elementType:a,instanceOf:l,node:a,objectOf:l,oneOf:l,oneOfType:l,shape:l,exact:l,checkPropTypes:r,resetWarningCache:o};return c.PropTypes=c,c},Jh}var E1;function MM(){return E1||(E1=1,Kh.exports=zM()()),Kh.exports}var OM=MM();const je=Xp(OM),R1={disabled:!1},wu=Ye.createContext(null);var jM=function(o){return o.scrollTop},rs="unmounted",va="exited",ya="entering",Ai="entered",Mp="exiting",fr=(function(e){$w(o,e);function o(a,l){var c;c=e.call(this,a,l)||this;var u=l,f=u&&!u.isMounting?a.enter:a.appear,h;return c.appearStatus=null,a.in?f?(h=va,c.appearStatus=ya):h=Ai:a.unmountOnExit||a.mountOnEnter?h=rs:h=va,c.state={status:h},c.nextCallback=null,c}o.getDerivedStateFromProps=function(l,c){var u=l.in;return u&&c.status===rs?{status:va}:null};var r=o.prototype;return r.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},r.componentDidUpdate=function(l){var c=null;if(l!==this.props){var u=this.state.status;this.props.in?u!==ya&&u!==Ai&&(c=ya):(u===ya||u===Ai)&&(c=Mp)}this.updateStatus(!1,c)},r.componentWillUnmount=function(){this.cancelNextCallback()},r.getTimeouts=function(){var l=this.props.timeout,c,u,f;return c=u=f=l,l!=null&&typeof l!="number"&&(c=l.exit,u=l.enter,f=l.appear!==void 0?l.appear:u),{exit:c,enter:u,appear:f}},r.updateStatus=function(l,c){if(l===void 0&&(l=!1),c!==null)if(this.cancelNextCallback(),c===ya){if(this.props.unmountOnExit||this.props.mountOnEnter){var u=this.props.nodeRef?this.props.nodeRef.current:Sa.findDOMNode(this);u&&jM(u)}this.performEnter(l)}else this.performExit();else this.props.unmountOnExit&&this.state.status===va&&this.setState({status:rs})},r.performEnter=function(l){var c=this,u=this.props.enter,f=this.context?this.context.isMounting:l,h=this.props.nodeRef?[f]:[Sa.findDOMNode(this),f],p=h[0],g=h[1],v=this.getTimeouts(),x=f?v.appear:v.enter;if(!l&&!u||R1.disabled){this.safeSetState({status:Ai},function(){c.props.onEntered(p)});return}this.props.onEnter(p,g),this.safeSetState({status:ya},function(){c.props.onEntering(p,g),c.onTransitionEnd(x,function(){c.safeSetState({status:Ai},function(){c.props.onEntered(p,g)})})})},r.performExit=function(){var l=this,c=this.props.exit,u=this.getTimeouts(),f=this.props.nodeRef?void 0:Sa.findDOMNode(this);if(!c||R1.disabled){this.safeSetState({status:va},function(){l.props.onExited(f)});return}this.props.onExit(f),this.safeSetState({status:Mp},function(){l.props.onExiting(f),l.onTransitionEnd(u.exit,function(){l.safeSetState({status:va},function(){l.props.onExited(f)})})})},r.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},r.safeSetState=function(l,c){c=this.setNextCallback(c),this.setState(l,c)},r.setNextCallback=function(l){var c=this,u=!0;return this.nextCallback=function(f){u&&(u=!1,c.nextCallback=null,l(f))},this.nextCallback.cancel=function(){u=!1},this.nextCallback},r.onTransitionEnd=function(l,c){this.setNextCallback(c);var u=this.props.nodeRef?this.props.nodeRef.current:Sa.findDOMNode(this),f=l==null&&!this.props.addEndListener;if(!u||f){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var h=this.props.nodeRef?[this.nextCallback]:[u,this.nextCallback],p=h[0],g=h[1];this.props.addEndListener(p,g)}l!=null&&setTimeout(this.nextCallback,l)},r.render=function(){var l=this.state.status;if(l===rs)return null;var c=this.props,u=c.children;c.in,c.mountOnEnter,c.unmountOnExit,c.appear,c.enter,c.exit,c.timeout,c.addEndListener,c.onEnter,c.onEntering,c.onEntered,c.onExit,c.onExiting,c.onExited,c.nodeRef;var f=dw(c,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return Ye.createElement(wu.Provider,{value:null},typeof u=="function"?u(l,f):Ye.cloneElement(Ye.Children.only(u),f))},o})(Ye.Component);fr.contextType=wu;fr.propTypes={};function Ti(){}fr.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Ti,onEntering:Ti,onEntered:Ti,onExit:Ti,onExiting:Ti,onExited:Ti};fr.UNMOUNTED=rs;fr.EXITED=va;fr.ENTERING=ya;fr.ENTERED=Ai;fr.EXITING=Mp;function BM(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function dg(e,o){var r=function(c){return o&&b.isValidElement(c)?o(c):c},a=Object.create(null);return e&&b.Children.map(e,function(l){return l}).forEach(function(l){a[l.key]=r(l)}),a}function $M(e,o){e=e||{},o=o||{};function r(g){return g in o?o[g]:e[g]}var a=Object.create(null),l=[];for(var c in e)c in o?l.length&&(a[c]=l,l=[]):l.push(c);var u,f={};for(var h in o){if(a[h])for(u=0;u(r[a.position||o].push(a),r),Lw.reduce((r,a)=>(r[a]=[],r),{}))}const T1={left:"translateX(-100%)",right:"translateX(100%)","top-center":"translateY(-100%)","bottom-center":"translateY(100%)"},VM={left:"translateX(0)",right:"translateX(0)","top-center":"translateY(0)","bottom-center":"translateY(0)"};function YM({state:e,maxHeight:o,position:r,transitionDuration:a}){const[l,c]=r.split("-"),u=c==="center"?`${l}-center`:c,f={opacity:0,maxHeight:o,transform:T1[u],transitionDuration:`${a}ms, ${a}ms, ${a}ms`,transitionTimingFunction:"cubic-bezier(.51,.3,0,1.21), cubic-bezier(.51,.3,0,1.21), linear",transitionProperty:"opacity, transform, max-height"},h={opacity:1,transform:VM[u]},p={opacity:0,maxHeight:0,transform:T1[u]};return{...f,...{entering:h,entered:h,exiting:p,exited:p}[e]}}function GM(e,o){return typeof o=="number"?o:o===!1||e===!1?!1:e}const kw=b.forwardRef(({data:e,onHide:o,autoClose:r,...a},l)=>{const{autoClose:c,message:u,...f}=e,h=GM(r,e.autoClose),p=b.useRef(-1),g=()=>window.clearTimeout(p.current),v=()=>{o(e.id),g()},x=()=>{typeof h=="number"&&(p.current=window.setTimeout(v,h))};return b.useEffect(()=>{e.onOpen?.(e)},[]),b.useEffect(()=>(x(),g),[h]),y.jsx(og,{...a,...f,onClose:v,ref:l,onMouseEnter:g,onMouseLeave:x,children:u})});kw.displayName="@mantine/notifications/NotificationContainer";var Hw={root:"m_b37d9ac7",notification:"m_5ed0edd0"};const XM=fr,qM={position:"bottom-right",autoClose:4e3,transitionDuration:250,containerWidth:440,notificationMaxHeight:200,limit:5,zIndex:vo("overlay"),store:ja,withinPortal:!0},IM=(e,{zIndex:o,containerWidth:r})=>({root:{"--notifications-z-index":o?.toString(),"--notifications-container-width":oe(r)}}),dr=ge((e,o)=>{const r=ce("Notifications",qM,e),{classNames:a,className:l,style:c,styles:u,unstyled:f,vars:h,position:p,autoClose:g,transitionDuration:v,containerWidth:x,notificationMaxHeight:S,limit:E,zIndex:C,store:R,portalProps:T,withinPortal:z,...A}=r,N=cn(),B=RM(R),M=eT(),$=Nu(),L=b.useRef({}),H=b.useRef(0),Y=(N.respectReducedMotion?$:!1)?1:v,X=_e({name:"Notifications",classes:Hw,props:r,className:l,style:c,classNames:a,styles:u,unstyled:f,vars:h,varsResolver:IM});b.useEffect(()=>{R?.updateState(re=>({...re,limit:E||5,defaultPosition:p}))},[E,p]),or(()=>{B.notifications.length>H.current&&setTimeout(()=>M(),0),H.current=B.notifications.length},[B.notifications]);const ee=PM(B.notifications,p),ne=Lw.reduce((re,j)=>(re[j]=ee[j].map(({style:k,...V})=>y.jsx(XM,{timeout:Y,onEnter:()=>L.current[V.id].offsetHeight,nodeRef:{current:L.current[V.id]},children:P=>y.jsx(kw,{ref:Z=>{L.current[V.id]=Z},data:V,onHide:Z=>Bw(Z,R),autoClose:g,...X("notification",{style:{...YM({state:P,position:j,transitionDuration:Y,maxHeight:S}),...k}})})},V.id)),re),{});return y.jsxs(za,{withinPortal:z,...T,children:[y.jsx(he,{...X("root"),"data-position":"top-center",ref:o,...A,children:y.jsx(kr,{children:ne["top-center"]})}),y.jsx(he,{...X("root"),"data-position":"top-left",...A,children:y.jsx(kr,{children:ne["top-left"]})}),y.jsx(he,{...X("root",{className:ki.classNames.fullWidth}),"data-position":"top-right",...A,children:y.jsx(kr,{children:ne["top-right"]})}),y.jsx(he,{...X("root",{className:ki.classNames.fullWidth}),"data-position":"bottom-right",...A,children:y.jsx(kr,{children:ne["bottom-right"]})}),y.jsx(he,{...X("root"),"data-position":"bottom-left",...A,children:y.jsx(kr,{children:ne["bottom-left"]})}),y.jsx(he,{...X("root"),"data-position":"bottom-center",...A,children:y.jsx(kr,{children:ne["bottom-center"]})})]})});dr.classes=Hw;dr.displayName="@mantine/notifications/Notifications";dr.show=Ze.show;dr.hide=Ze.hide;dr.update=Ze.update;dr.clean=Ze.clean;dr.cleanQueue=Ze.cleanQueue;dr.updateState=Ze.updateState;var FM={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};const gt=(e,o,r,a)=>{const l=b.forwardRef(({color:c="currentColor",size:u=24,stroke:f=2,title:h,className:p,children:g,...v},x)=>b.createElement("svg",{ref:x,...FM[e],width:u,height:u,className:["tabler-icon",`tabler-icon-${o}`,p].join(" "),strokeWidth:f,stroke:c,...v},[h&&b.createElement("title",{key:"svg-title"},h),...a.map(([S,E])=>b.createElement(S,E)),...Array.isArray(g)?g:[g]]));return l.displayName=`${r}`,l};const ZM=[["path",{d:"M3 12h4l3 8l4 -16l3 8h4",key:"svg-0"}]],QM=gt("outline","activity","Activity",ZM);const KM=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 8v4",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]],Uw=gt("outline","alert-circle","AlertCircle",KM);const WM=[["path",{d:"M12 5l0 14",key:"svg-0"}],["path",{d:"M18 13l-6 6",key:"svg-1"}],["path",{d:"M6 13l6 6",key:"svg-2"}]],JM=gt("outline","arrow-down","ArrowDown",WM);const e5=[["path",{d:"M12 5l0 14",key:"svg-0"}],["path",{d:"M18 11l-6 -6",key:"svg-1"}],["path",{d:"M6 11l6 -6",key:"svg-2"}]],t5=gt("outline","arrow-up","ArrowUp",e5);const n5=[["path",{d:"M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5",key:"svg-0"}]],o5=gt("outline","brand-github","BrandGithub",n5);const r5=[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]],Pw=gt("outline","chevron-down","ChevronDown",r5);const a5=[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]],i5=gt("outline","chevron-right","ChevronRight",a5);const l5=[["path",{d:"M6 15l6 -6l6 6",key:"svg-0"}]],s5=gt("outline","chevron-up","ChevronUp",l5);const c5=[["path",{d:"M3 14c.83 .642 2.077 1.017 3.5 1c1.423 .017 2.67 -.358 3.5 -1c.83 -.642 2.077 -1.017 3.5 -1c1.423 -.017 2.67 .358 3.5 1",key:"svg-0"}],["path",{d:"M8 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2",key:"svg-1"}],["path",{d:"M12 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2",key:"svg-2"}],["path",{d:"M3 10h14v5a6 6 0 0 1 -6 6h-2a6 6 0 0 1 -6 -6v-5",key:"svg-3"}],["path",{d:"M16.746 16.726a3 3 0 1 0 .252 -5.555",key:"svg-4"}]],u5=gt("outline","coffee","Coffee",c5);const f5=[["path",{d:"M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]],d5=gt("outline","copy","Copy",f5);const h5=[["path",{d:"M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2",key:"svg-0"}],["path",{d:"M10 14a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M14 4l0 4l-6 0l0 -4",key:"svg-2"}]],p5=gt("outline","device-floppy","DeviceFloppy",h5);const m5=[["path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2",key:"svg-0"}],["path",{d:"M7 11l5 5l5 -5",key:"svg-1"}],["path",{d:"M12 4l0 12",key:"svg-2"}]],Vw=gt("outline","download","Download",m5);const g5=[["path",{d:"M8 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M8 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-1"}],["path",{d:"M8 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}],["path",{d:"M14 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-3"}],["path",{d:"M14 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-4"}],["path",{d:"M14 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-5"}]],v5=gt("outline","grip-vertical","GripVertical",g5);const y5=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]],b5=gt("outline","info-circle","InfoCircle",y5);const x5=[["path",{d:"M5 12l14 0",key:"svg-0"}]],S5=gt("outline","minus","Minus",x5);const w5=[["path",{d:"M12 21a9 9 0 0 1 0 -18c4.97 0 9 3.582 9 8c0 1.06 -.474 2.078 -1.318 2.828c-.844 .75 -1.989 1.172 -3.182 1.172h-2.5a2 2 0 0 0 -1 3.75a1.3 1.3 0 0 1 -1 2.25",key:"svg-0"}],["path",{d:"M7.5 10.5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-1"}],["path",{d:"M11.5 7.5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}],["path",{d:"M15.5 10.5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-3"}]],C5=gt("outline","palette","Palette",w5);const E5=[["path",{d:"M15 8h.01",key:"svg-0"}],["path",{d:"M3 6a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3v-12",key:"svg-1"}],["path",{d:"M3 16l5 -5c.928 -.893 2.072 -.893 3 0l5 5",key:"svg-2"}],["path",{d:"M14 14l1 -1c.928 -.893 2.072 -.893 3 0l3 3",key:"svg-3"}]],R5=gt("outline","photo","Photo",E5);const T5=[["path",{d:"M7 4v16l13 -8l-13 -8",key:"svg-0"}]],_1=gt("outline","player-play","PlayerPlay",T5);const _5=[["path",{d:"M12 5l0 14",key:"svg-0"}],["path",{d:"M5 12l14 0",key:"svg-1"}]],ls=gt("outline","plus","Plus",_5);const D5=[["path",{d:"M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4",key:"svg-0"}],["path",{d:"M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4",key:"svg-1"}]],Yw=gt("outline","refresh","Refresh",D5);const N5=[["path",{d:"M10.325 4.317c.426 -1.756 2.924 -1.756 3.35 0a1.724 1.724 0 0 0 2.573 1.066c1.543 -.94 3.31 .826 2.37 2.37a1.724 1.724 0 0 0 1.065 2.572c1.756 .426 1.756 2.924 0 3.35a1.724 1.724 0 0 0 -1.066 2.573c.94 1.543 -.826 3.31 -2.37 2.37a1.724 1.724 0 0 0 -2.572 1.065c-.426 1.756 -2.924 1.756 -3.35 0a1.724 1.724 0 0 0 -2.573 -1.066c-1.543 .94 -3.31 -.826 -2.37 -2.37a1.724 1.724 0 0 0 -1.065 -2.572c-1.756 -.426 -1.756 -2.924 0 -3.35a1.724 1.724 0 0 0 1.066 -2.573c-.94 -1.543 .826 -3.31 2.37 -2.37c1 .608 2.296 .07 2.572 -1.065",key:"svg-0"}],["path",{d:"M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-1"}]],A5=gt("outline","settings","Settings",N5);const z5=[["path",{d:"M4 7l16 0",key:"svg-0"}],["path",{d:"M10 11l0 6",key:"svg-1"}],["path",{d:"M14 11l0 6",key:"svg-2"}],["path",{d:"M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12",key:"svg-3"}],["path",{d:"M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3",key:"svg-4"}]],hg=gt("outline","trash","Trash",z5);const M5=[["path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2",key:"svg-0"}],["path",{d:"M7 9l5 -5l5 5",key:"svg-1"}],["path",{d:"M12 4l0 12",key:"svg-2"}]],Gw=gt("outline","upload","Upload",M5);const O5=[["path",{d:"M18 6l-12 12",key:"svg-0"}],["path",{d:"M6 6l12 12",key:"svg-1"}]],j5=gt("outline","x","X",O5),B5={};function $5({children:e,defaultColorScheme:o="dark",notificationsPosition:r="bottom-right"}){return y.jsxs(Dx,{theme:B5,defaultColorScheme:o,children:[y.jsx(dr,{position:r}),e]})}function D1(e){return e?{color:"teal",variant:"filled",styles:{root:{"--button-bg":"var(--mantine-color-teal-9)","--button-hover":"var(--mantine-color-teal-8)"}}}:{}}function L5({logoUrl:e,appName:o,version:r,actions:a=[],extra:l,onLogout:c,githubUrl:u,kofiUrl:f="https://ko-fi.com/sethwv",username:h}){const p=y.jsx(Qm,{src:e,h:32,w:"auto"}),g=!!(u||f);return y.jsx(mo.Header,{children:y.jsxs(mt,{h:"100%",px:"md",justify:"space-between",wrap:"nowrap",children:[y.jsxs(mt,{gap:"xs",wrap:"nowrap",style:{flexShrink:0},children:[g?y.jsxs(Nt,{shadow:"md",width:300,position:"bottom-start",children:[y.jsx(Nt.Target,{children:y.jsx($n,{style:{display:"flex",alignItems:"center"},"aria-label":"Plugin links",children:p})}),y.jsxs(Nt.Dropdown,{children:[u&&y.jsxs(Nt.Item,{component:"a",href:u,target:"_blank",rel:"noopener noreferrer",leftSection:y.jsx(o5,{size:16}),children:[o," on GitHub"]}),f&&y.jsx(Nt.Item,{component:"a",href:f,target:"_blank",rel:"noopener noreferrer",leftSection:y.jsx(u5,{size:16}),children:"Buy me a Coffee"})]})]}):p,y.jsxs(Qt,{gap:0,children:[o&&y.jsx(Ve,{size:"xs",lh:1,children:o}),r&&y.jsxs(Ve,{size:"xs",c:"dimmed",lh:1,children:["v",r]})]})]}),y.jsxs(mt,{gap:"xs",wrap:"nowrap",children:[a.map(({key:v,label:x,icon:S,onClick:E,loading:C,active:R,count:T,variant:z,color:A})=>y.jsxs(b.Fragment,{children:[y.jsxs(Dt,{size:"sm",variant:z,color:A,leftSection:y.jsx(S,{size:16}),loading:C,onClick:E,visibleFrom:"xs",...D1(R),children:[x,T>0?` (${T})`:""]}),y.jsx(Yt,{size:"lg",variant:"default",loading:C,hiddenFrom:"xs","aria-label":x,onClick:E,...D1(R),children:y.jsx(S,{size:18})})]},v)),l,c&&y.jsxs(Qt,{gap:0,align:"flex-end",children:[h&&y.jsx(Ve,{size:"xs",lh:1,children:h}),y.jsx($n,{onClick:c,children:y.jsx(Ve,{size:"xs",c:"dimmed",lh:1,children:"Logout"})})]})]})]})})}const ep="dispatch_ui_kit_last_username";function k5({logoUrl:e,appName:o,description:r,onLogin:a,onLoggedIn:l}){const c=localStorage.getItem(ep)??"",[u,f]=b.useState(c),[h,p]=b.useState(""),[g,v]=b.useState(!!c),[x,S]=b.useState(""),[E,C]=b.useState(!1);async function R(T){T.preventDefault(),C(!0),S("");try{await a(u,h),g?localStorage.setItem(ep,u):localStorage.removeItem(ep),l()}catch(z){S(z.message||"Login failed")}finally{C(!1)}}return y.jsx(ms,{mih:"100dvh",bg:"dark.8",children:y.jsxs(Qt,{align:"center",gap:"lg",w:340,px:"md",children:[y.jsx("img",{src:e,style:{height:40,width:"auto"},alt:o}),r&&y.jsx(Ve,{size:"sm",c:"dimmed",ta:"center",children:r}),y.jsx(Qi,{withBorder:!0,p:"xl",radius:"md",w:"100%",children:y.jsx("form",{onSubmit:R,children:y.jsxs(Qt,{gap:"sm",children:[x&&y.jsx(Iu,{icon:y.jsx(Uw,{size:16}),color:"red",variant:"light",py:"xs",children:x}),y.jsx(Yi,{label:"Username",autoComplete:"username",value:u,onChange:T=>f(T.currentTarget.value),required:!0}),y.jsx(af,{label:"Password",autoComplete:"current-password",value:h,onChange:T=>p(T.currentTarget.value),required:!0}),y.jsx(el,{label:"Remember me",checked:g,onChange:T=>v(T.currentTarget.checked)}),y.jsx(Dt,{type:"submit",loading:E,fullWidth:!0,mt:"xs",children:"Sign in"})]})})})]})})}function Xw({action:e,onClose:o}){return e?y.jsxs(Tn,{opened:!!e,onClose:o,title:e.title,size:"sm",centered:!0,children:[y.jsx(Ve,{size:"sm",children:e.message}),y.jsxs(mt,{mt:"md",justify:"flex-end",children:[y.jsx(Dt,{variant:"default",onClick:o,children:"Cancel"}),y.jsx(Dt,{color:e.color??"blue",loading:e.loading,onClick:()=>{o(),e.onConfirm()},children:e.confirmLabel??"Confirm"})]})]}):null}function H5({tokenKey:e,basePath:o,onUnauthorized:r,refreshTokenKey:a=`${e}_refresh`,refreshPath:l="/auth/refresh",usernameKey:c=`${e}_username`}={}){const u=o??(typeof window<"u"&&window.__BASE_PATH__||"/");function f(){return localStorage.getItem(e)}function h(N){N?localStorage.setItem(e,N):localStorage.removeItem(e)}function p(){return localStorage.getItem(a)}function g(N){N?localStorage.setItem(a,N):localStorage.removeItem(a)}function v(){return localStorage.getItem(c)}function x(N){N?localStorage.setItem(c,N):localStorage.removeItem(c)}async function S(N,B={}){const M=f(),$={"Content-Type":"application/json",...B.headers||{}};M&&($.Authorization=`Bearer ${M}`);const L=await fetch(`${u}api${N}`,{...B,headers:$});if(L.status===401){const H=new Error("Session expired, please log in again");throw H.status=401,H}if(!L.ok){let H=`Request failed (${L.status})`;try{H=(await L.json()).error||H}catch{}throw new Error(H)}return L.status===204?null:L.json()}let E=null;function C(){return E||(E=(async()=>{const N=p();if(!N)throw new Error("No refresh token");const B=await fetch(`${u}api${l}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refresh:N})});if(!B.ok)throw new Error("Refresh failed");const M=await B.json();h(M.access)})().finally(()=>{E=null})),E}async function R(N,B={}){try{return await S(N,B)}catch(M){if(M.status!==401)throw M;if(p())try{return await C(),await S(N,B)}catch{}throw h(null),g(null),x(null),r?.(M),M}}async function T(N,B,M="/auth/token"){const $=await S(M,{method:"POST",body:JSON.stringify({username:N,password:B})});return h($.access),$.refresh&&g($.refresh),x(N),$}function z(){h(null),g(null),x(null)}function A(){return!!f()}return{request:R,login:T,logout:z,isAuthenticated:A,getToken:f,getUsername:v,basePath:u}}function qw(e,{onOptimisticChange:o,shouldReload:r,onReload:a,onSaved:l,onError:c,delayMs:u=700}={}){const f=b.useRef({});return b.useCallback((h,p,g)=>{o?.({[h]:p});const v={[h]:p},x=async()=>{try{await e(v),l?.(v),r?.(h)&&await a?.()}catch(S){c?.(S)}};return clearTimeout(f.current[h]),g?x():(f.current[h]=setTimeout(x,u),Promise.resolve())},[e,o,r,a,l,c,u])}function U5({label:e,description:o}){return o?y.jsxs(mt,{gap:4,align:"center",wrap:"nowrap",children:[y.jsx("span",{children:e}),y.jsx(Ts,{label:o,multiline:!0,maw:260,withArrow:!0,position:"top-start",events:{hover:!0,focus:!0,touch:!0},children:y.jsx(Yt,{size:"xs",variant:"transparent",c:"dimmed",tabIndex:-1,style:{cursor:"default",flexShrink:0},children:y.jsx(b5,{size:13})})})]}):e}function Op({field:e,value:o,onChange:r}){const a={label:y.jsx(U5,{label:e.label,description:e.description})};switch(e.type){case"select":{const l=new Set,c=(e.options??[]).reduce((u,f)=>{const h=String(f.value);return l.has(h)||(l.add(h),u.push({value:h,label:f.label})),u},[]);return y.jsx(Vi,{...a,data:c,value:String(o??e.default??""),onChange:r,allowDeselect:!1})}case"number":return y.jsx(Ca,{...a,value:o??e.default??0,min:e.min,max:e.max,placeholder:e.placeholder,onChange:r});case"string":{const l=e.input_type==="password"?af:Yi;return y.jsx(l,{...a,value:o??e.default??"",placeholder:e.placeholder,onChange:c=>r(c.currentTarget.value)})}default:return null}}function Iw({title:e,defaultOpened:o=!1,trailingAction:r,as:a="Paper",children:l}){const[c,u]=b.useState(o);return y.jsxs(a==="Card"?Zu:Qi,{withBorder:!0,radius:"md",p:a==="Card"?0:void 0,children:[y.jsx($n,{w:"100%",p:"md",onClick:()=>u(f=>!f),children:y.jsxs(mt,{justify:"space-between",children:[y.jsxs(mt,{gap:"xs",children:[c?y.jsx(Pw,{size:16}):y.jsx(i5,{size:16}),y.jsx(Ve,{size:"sm",fw:600,children:e})]}),r]})}),y.jsx(rm,{in:c,children:l})]})}function P5({fields:e,warnings:o=[],values:r,onSave:a,onOptimisticChange:l,shouldReload:c,onReload:u,onSaved:f,onError:h,title:p="Global Settings"}){const g=qw(a,{onOptimisticChange:l,shouldReload:c,onReload:u,onSaved:f,onError:h});return y.jsxs(Qt,{gap:"xs",children:[o.map(v=>y.jsxs(Iu,{icon:y.jsx(Uw,{size:16}),color:"yellow",variant:"light",children:[y.jsx(Ve,{size:"sm",fw:500,children:v.label}),v.description&&y.jsx(Ve,{size:"xs",c:"dimmed",mt:2,children:v.description})]},v.id)),y.jsx(Iw,{title:p,children:y.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(280px, 1fr))",gap:"var(--mantine-spacing-sm)",padding:"var(--mantine-spacing-md)",paddingTop:0},children:e.map(v=>y.jsx(Op,{field:v,value:r[v.id],onChange:x=>g(v.id,x,v.type!=="string")},v.id))})})]})}function V5(){for(var e=arguments.length,o=new Array(e),r=0;ra=>{o.forEach(l=>l(a))},o)}const sf=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function al(e){const o=Object.prototype.toString.call(e);return o==="[object Window]"||o==="[object global]"}function pg(e){return"nodeType"in e}function _n(e){var o,r;return e?al(e)?e:pg(e)&&(o=(r=e.ownerDocument)==null?void 0:r.defaultView)!=null?o:window:window}function mg(e){const{Document:o}=_n(e);return e instanceof o}function Ds(e){return al(e)?!1:e instanceof _n(e).HTMLElement}function Fw(e){return e instanceof _n(e).SVGElement}function il(e){return e?al(e)?e.document:pg(e)?mg(e)?e:Ds(e)||Fw(e)?e.ownerDocument:document:document:document}const Ao=sf?b.useLayoutEffect:b.useEffect;function gg(e){const o=b.useRef(e);return Ao(()=>{o.current=e}),b.useCallback(function(){for(var r=arguments.length,a=new Array(r),l=0;l{e.current=setInterval(a,l)},[]),r=b.useCallback(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[o,r]}function vs(e,o){o===void 0&&(o=[e]);const r=b.useRef(e);return Ao(()=>{r.current!==e&&(r.current=e)},o),r}function Ns(e,o){const r=b.useRef();return b.useMemo(()=>{const a=e(r.current);return r.current=a,a},[...o])}function Cu(e){const o=gg(e),r=b.useRef(null),a=b.useCallback(l=>{l!==r.current&&o?.(l,r.current),r.current=l},[]);return[r,a]}function jp(e){const o=b.useRef();return b.useEffect(()=>{o.current=e},[e]),o.current}let tp={};function As(e,o){return b.useMemo(()=>{if(o)return o;const r=tp[e]==null?0:tp[e]+1;return tp[e]=r,e+"-"+r},[e,o])}function Zw(e){return function(o){for(var r=arguments.length,a=new Array(r>1?r-1:0),l=1;l{const f=Object.entries(u);for(const[h,p]of f){const g=c[h];g!=null&&(c[h]=g+e*p)}return c},{...o})}}const $i=Zw(1),Eu=Zw(-1);function G5(e){return"clientX"in e&&"clientY"in e}function vg(e){if(!e)return!1;const{KeyboardEvent:o}=_n(e.target);return o&&e instanceof o}function X5(e){if(!e)return!1;const{TouchEvent:o}=_n(e.target);return o&&e instanceof o}function Bp(e){if(X5(e)){if(e.touches&&e.touches.length){const{clientX:o,clientY:r}=e.touches[0];return{x:o,y:r}}else if(e.changedTouches&&e.changedTouches.length){const{clientX:o,clientY:r}=e.changedTouches[0];return{x:o,y:r}}}return G5(e)?{x:e.clientX,y:e.clientY}:null}const ys=Object.freeze({Translate:{toString(e){if(!e)return;const{x:o,y:r}=e;return"translate3d("+(o?Math.round(o):0)+"px, "+(r?Math.round(r):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;const{scaleX:o,scaleY:r}=e;return"scaleX("+o+") scaleY("+r+")"}},Transform:{toString(e){if(e)return[ys.Translate.toString(e),ys.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:o,duration:r,easing:a}=e;return o+" "+r+"ms "+a}}}),N1="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function q5(e){return e.matches(N1)?e:e.querySelector(N1)}const I5={display:"none"};function F5(e){let{id:o,value:r}=e;return Ye.createElement("div",{id:o,style:I5},r)}function Z5(e){let{id:o,announcement:r,ariaLiveType:a="assertive"}=e;const l={position:"fixed",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};return Ye.createElement("div",{id:o,style:l,role:"status","aria-live":a,"aria-atomic":!0},r)}function Q5(){const[e,o]=b.useState("");return{announce:b.useCallback(a=>{a!=null&&o(a)},[]),announcement:e}}const Qw=b.createContext(null);function K5(e){const o=b.useContext(Qw);b.useEffect(()=>{if(!o)throw new Error("useDndMonitor must be used within a children of ");return o(e)},[e,o])}function W5(){const[e]=b.useState(()=>new Set),o=b.useCallback(a=>(e.add(a),()=>e.delete(a)),[e]);return[b.useCallback(a=>{let{type:l,event:c}=a;e.forEach(u=>{var f;return(f=u[l])==null?void 0:f.call(u,c)})},[e]),o]}const J5={draggable:` + To pick up a draggable item, press the space bar. + While dragging, use the arrow keys to move the item. + Press space again to drop the item in its new position, or press escape to cancel. + `},e6={onDragStart(e){let{active:o}=e;return"Picked up draggable item "+o.id+"."},onDragOver(e){let{active:o,over:r}=e;return r?"Draggable item "+o.id+" was moved over droppable area "+r.id+".":"Draggable item "+o.id+" is no longer over a droppable area."},onDragEnd(e){let{active:o,over:r}=e;return r?"Draggable item "+o.id+" was dropped over droppable area "+r.id:"Draggable item "+o.id+" was dropped."},onDragCancel(e){let{active:o}=e;return"Dragging was cancelled. Draggable item "+o.id+" was dropped."}};function t6(e){let{announcements:o=e6,container:r,hiddenTextDescribedById:a,screenReaderInstructions:l=J5}=e;const{announce:c,announcement:u}=Q5(),f=As("DndLiveRegion"),[h,p]=b.useState(!1);if(b.useEffect(()=>{p(!0)},[]),K5(b.useMemo(()=>({onDragStart(v){let{active:x}=v;c(o.onDragStart({active:x}))},onDragMove(v){let{active:x,over:S}=v;o.onDragMove&&c(o.onDragMove({active:x,over:S}))},onDragOver(v){let{active:x,over:S}=v;c(o.onDragOver({active:x,over:S}))},onDragEnd(v){let{active:x,over:S}=v;c(o.onDragEnd({active:x,over:S}))},onDragCancel(v){let{active:x,over:S}=v;c(o.onDragCancel({active:x,over:S}))}}),[c,o])),!h)return null;const g=Ye.createElement(Ye.Fragment,null,Ye.createElement(F5,{id:a,value:l.draggable}),Ye.createElement(Z5,{id:f,announcement:u}));return r?co.createPortal(g,r):g}var Vt;(function(e){e.DragStart="dragStart",e.DragMove="dragMove",e.DragEnd="dragEnd",e.DragCancel="dragCancel",e.DragOver="dragOver",e.RegisterDroppable="registerDroppable",e.SetDroppableDisabled="setDroppableDisabled",e.UnregisterDroppable="unregisterDroppable"})(Vt||(Vt={}));function Ru(){}function n6(e,o){return b.useMemo(()=>({sensor:e,options:o??{}}),[e,o])}function o6(){for(var e=arguments.length,o=new Array(e),r=0;r[...o].filter(a=>a!=null),[...o])}const go=Object.freeze({x:0,y:0});function r6(e,o){return Math.sqrt(Math.pow(e.x-o.x,2)+Math.pow(e.y-o.y,2))}function a6(e,o){let{data:{value:r}}=e,{data:{value:a}}=o;return r-a}function i6(e,o){let{data:{value:r}}=e,{data:{value:a}}=o;return a-r}function l6(e,o){if(!e||e.length===0)return null;const[r]=e;return r[o]}function A1(e,o,r){return o===void 0&&(o=e.left),r===void 0&&(r=e.top),{x:o+e.width*.5,y:r+e.height*.5}}const s6=e=>{let{collisionRect:o,droppableRects:r,droppableContainers:a}=e;const l=A1(o,o.left,o.top),c=[];for(const u of a){const{id:f}=u,h=r.get(f);if(h){const p=r6(A1(h),l);c.push({id:f,data:{droppableContainer:u,value:p}})}}return c.sort(a6)};function c6(e,o){const r=Math.max(o.top,e.top),a=Math.max(o.left,e.left),l=Math.min(o.left+o.width,e.left+e.width),c=Math.min(o.top+o.height,e.top+e.height),u=l-a,f=c-r;if(a{let{collisionRect:o,droppableRects:r,droppableContainers:a}=e;const l=[];for(const c of a){const{id:u}=c,f=r.get(u);if(f){const h=c6(f,o);h>0&&l.push({id:u,data:{droppableContainer:c,value:h}})}}return l.sort(i6)};function f6(e,o,r){return{...e,scaleX:o&&r?o.width/r.width:1,scaleY:o&&r?o.height/r.height:1}}function Kw(e,o){return e&&o?{x:e.left-o.left,y:e.top-o.top}:go}function d6(e){return function(r){for(var a=arguments.length,l=new Array(a>1?a-1:0),c=1;c({...u,top:u.top+e*f.y,bottom:u.bottom+e*f.y,left:u.left+e*f.x,right:u.right+e*f.x}),{...r})}}const h6=d6(1);function p6(e){if(e.startsWith("matrix3d(")){const o=e.slice(9,-1).split(/, /);return{x:+o[12],y:+o[13],scaleX:+o[0],scaleY:+o[5]}}else if(e.startsWith("matrix(")){const o=e.slice(7,-1).split(/, /);return{x:+o[4],y:+o[5],scaleX:+o[0],scaleY:+o[3]}}return null}function m6(e,o,r){const a=p6(o);if(!a)return e;const{scaleX:l,scaleY:c,x:u,y:f}=a,h=e.left-u-(1-l)*parseFloat(r),p=e.top-f-(1-c)*parseFloat(r.slice(r.indexOf(" ")+1)),g=l?e.width/l:e.width,v=c?e.height/c:e.height;return{width:g,height:v,top:p,right:h+g,bottom:p+v,left:h}}const g6={ignoreTransform:!1};function ll(e,o){o===void 0&&(o=g6);let r=e.getBoundingClientRect();if(o.ignoreTransform){const{transform:p,transformOrigin:g}=_n(e).getComputedStyle(e);p&&(r=m6(r,p,g))}const{top:a,left:l,width:c,height:u,bottom:f,right:h}=r;return{top:a,left:l,width:c,height:u,bottom:f,right:h}}function z1(e){return ll(e,{ignoreTransform:!0})}function v6(e){const o=e.innerWidth,r=e.innerHeight;return{top:0,left:0,right:o,bottom:r,width:o,height:r}}function y6(e,o){return o===void 0&&(o=_n(e).getComputedStyle(e)),o.position==="fixed"}function b6(e,o){o===void 0&&(o=_n(e).getComputedStyle(e));const r=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some(l=>{const c=o[l];return typeof c=="string"?r.test(c):!1})}function yg(e,o){const r=[];function a(l){if(o!=null&&r.length>=o||!l)return r;if(mg(l)&&l.scrollingElement!=null&&!r.includes(l.scrollingElement))return r.push(l.scrollingElement),r;if(!Ds(l)||Fw(l)||r.includes(l))return r;const c=_n(e).getComputedStyle(l);return l!==e&&b6(l,c)&&r.push(l),y6(l,c)?r:a(l.parentNode)}return e?a(e):r}function Ww(e){const[o]=yg(e,1);return o??null}function np(e){return!sf||!e?null:al(e)?e:pg(e)?mg(e)||e===il(e).scrollingElement?window:Ds(e)?e:null:null}function Jw(e){return al(e)?e.scrollX:e.scrollLeft}function eC(e){return al(e)?e.scrollY:e.scrollTop}function $p(e){return{x:Jw(e),y:eC(e)}}var Ft;(function(e){e[e.Forward=1]="Forward",e[e.Backward=-1]="Backward"})(Ft||(Ft={}));function tC(e){return!sf||!e?!1:e===document.scrollingElement}function nC(e){const o={x:0,y:0},r=tC(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},a={x:e.scrollWidth-r.width,y:e.scrollHeight-r.height},l=e.scrollTop<=o.y,c=e.scrollLeft<=o.x,u=e.scrollTop>=a.y,f=e.scrollLeft>=a.x;return{isTop:l,isLeft:c,isBottom:u,isRight:f,maxScroll:a,minScroll:o}}const x6={x:.2,y:.2};function S6(e,o,r,a,l){let{top:c,left:u,right:f,bottom:h}=r;a===void 0&&(a=10),l===void 0&&(l=x6);const{isTop:p,isBottom:g,isLeft:v,isRight:x}=nC(e),S={x:0,y:0},E={x:0,y:0},C={height:o.height*l.y,width:o.width*l.x};return!p&&c<=o.top+C.height?(S.y=Ft.Backward,E.y=a*Math.abs((o.top+C.height-c)/C.height)):!g&&h>=o.bottom-C.height&&(S.y=Ft.Forward,E.y=a*Math.abs((o.bottom-C.height-h)/C.height)),!x&&f>=o.right-C.width?(S.x=Ft.Forward,E.x=a*Math.abs((o.right-C.width-f)/C.width)):!v&&u<=o.left+C.width&&(S.x=Ft.Backward,E.x=a*Math.abs((o.left+C.width-u)/C.width)),{direction:S,speed:E}}function w6(e){if(e===document.scrollingElement){const{innerWidth:c,innerHeight:u}=window;return{top:0,left:0,right:c,bottom:u,width:c,height:u}}const{top:o,left:r,right:a,bottom:l}=e.getBoundingClientRect();return{top:o,left:r,right:a,bottom:l,width:e.clientWidth,height:e.clientHeight}}function oC(e){return e.reduce((o,r)=>$i(o,$p(r)),go)}function C6(e){return e.reduce((o,r)=>o+Jw(r),0)}function E6(e){return e.reduce((o,r)=>o+eC(r),0)}function R6(e,o){if(o===void 0&&(o=ll),!e)return;const{top:r,left:a,bottom:l,right:c}=o(e);Ww(e)&&(l<=0||c<=0||r>=window.innerHeight||a>=window.innerWidth)&&e.scrollIntoView({block:"center",inline:"center"})}const T6=[["x",["left","right"],C6],["y",["top","bottom"],E6]];class bg{constructor(o,r){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const a=yg(r),l=oC(a);this.rect={...o},this.width=o.width,this.height=o.height;for(const[c,u,f]of T6)for(const h of u)Object.defineProperty(this,h,{get:()=>{const p=f(a),g=l[c]-p;return this.rect[h]+g},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class ss{constructor(o){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(r=>{var a;return(a=this.target)==null?void 0:a.removeEventListener(...r)})},this.target=o}add(o,r,a){var l;(l=this.target)==null||l.addEventListener(o,r,a),this.listeners.push([o,r,a])}}function _6(e){const{EventTarget:o}=_n(e);return e instanceof o?e:il(e)}function op(e,o){const r=Math.abs(e.x),a=Math.abs(e.y);return typeof o=="number"?Math.sqrt(r**2+a**2)>o:"x"in o&&"y"in o?r>o.x&&a>o.y:"x"in o?r>o.x:"y"in o?a>o.y:!1}var Qn;(function(e){e.Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange"})(Qn||(Qn={}));function M1(e){e.preventDefault()}function D6(e){e.stopPropagation()}var Qe;(function(e){e.Space="Space",e.Down="ArrowDown",e.Right="ArrowRight",e.Left="ArrowLeft",e.Up="ArrowUp",e.Esc="Escape",e.Enter="Enter",e.Tab="Tab"})(Qe||(Qe={}));const rC={start:[Qe.Space,Qe.Enter],cancel:[Qe.Esc],end:[Qe.Space,Qe.Enter,Qe.Tab]},N6=(e,o)=>{let{currentCoordinates:r}=o;switch(e.code){case Qe.Right:return{...r,x:r.x+25};case Qe.Left:return{...r,x:r.x-25};case Qe.Down:return{...r,y:r.y+25};case Qe.Up:return{...r,y:r.y-25}}};class aC{constructor(o){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=o;const{event:{target:r}}=o;this.props=o,this.listeners=new ss(il(r)),this.windowListeners=new ss(_n(r)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(Qn.Resize,this.handleCancel),this.windowListeners.add(Qn.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(Qn.Keydown,this.handleKeyDown))}handleStart(){const{activeNode:o,onStart:r}=this.props,a=o.node.current;a&&R6(a),r(go)}handleKeyDown(o){if(vg(o)){const{active:r,context:a,options:l}=this.props,{keyboardCodes:c=rC,coordinateGetter:u=N6,scrollBehavior:f="smooth"}=l,{code:h}=o;if(c.end.includes(h)){this.handleEnd(o);return}if(c.cancel.includes(h)){this.handleCancel(o);return}const{collisionRect:p}=a.current,g=p?{x:p.left,y:p.top}:go;this.referenceCoordinates||(this.referenceCoordinates=g);const v=u(o,{active:r,context:a.current,currentCoordinates:g});if(v){const x=Eu(v,g),S={x:0,y:0},{scrollableAncestors:E}=a.current;for(const C of E){const R=o.code,{isTop:T,isRight:z,isLeft:A,isBottom:N,maxScroll:B,minScroll:M}=nC(C),$=w6(C),L={x:Math.min(R===Qe.Right?$.right-$.width/2:$.right,Math.max(R===Qe.Right?$.left:$.left+$.width/2,v.x)),y:Math.min(R===Qe.Down?$.bottom-$.height/2:$.bottom,Math.max(R===Qe.Down?$.top:$.top+$.height/2,v.y))},H=R===Qe.Right&&!z||R===Qe.Left&&!A,I=R===Qe.Down&&!N||R===Qe.Up&&!T;if(H&&L.x!==v.x){const Y=C.scrollLeft+x.x,X=R===Qe.Right&&Y<=B.x||R===Qe.Left&&Y>=M.x;if(X&&!x.y){C.scrollTo({left:Y,behavior:f});return}X?S.x=C.scrollLeft-Y:S.x=R===Qe.Right?C.scrollLeft-B.x:C.scrollLeft-M.x,S.x&&C.scrollBy({left:-S.x,behavior:f});break}else if(I&&L.y!==v.y){const Y=C.scrollTop+x.y,X=R===Qe.Down&&Y<=B.y||R===Qe.Up&&Y>=M.y;if(X&&!x.x){C.scrollTo({top:Y,behavior:f});return}X?S.y=C.scrollTop-Y:S.y=R===Qe.Down?C.scrollTop-B.y:C.scrollTop-M.y,S.y&&C.scrollBy({top:-S.y,behavior:f});break}}this.handleMove(o,$i(Eu(v,this.referenceCoordinates),S))}}}handleMove(o,r){const{onMove:a}=this.props;o.preventDefault(),a(r)}handleEnd(o){const{onEnd:r}=this.props;o.preventDefault(),this.detach(),r()}handleCancel(o){const{onCancel:r}=this.props;o.preventDefault(),this.detach(),r()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}}aC.activators=[{eventName:"onKeyDown",handler:(e,o,r)=>{let{keyboardCodes:a=rC,onActivation:l}=o,{active:c}=r;const{code:u}=e.nativeEvent;if(a.start.includes(u)){const f=c.activatorNode.current;return f&&e.target!==f?!1:(e.preventDefault(),l?.({event:e.nativeEvent}),!0)}return!1}}];function O1(e){return!!(e&&"distance"in e)}function j1(e){return!!(e&&"delay"in e)}class xg{constructor(o,r,a){var l;a===void 0&&(a=_6(o.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=o,this.events=r;const{event:c}=o,{target:u}=c;this.props=o,this.events=r,this.document=il(u),this.documentListeners=new ss(this.document),this.listeners=new ss(a),this.windowListeners=new ss(_n(u)),this.initialCoordinates=(l=Bp(c))!=null?l:go,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){const{events:o,props:{options:{activationConstraint:r,bypassActivationConstraint:a}}}=this;if(this.listeners.add(o.move.name,this.handleMove,{passive:!1}),this.listeners.add(o.end.name,this.handleEnd),o.cancel&&this.listeners.add(o.cancel.name,this.handleCancel),this.windowListeners.add(Qn.Resize,this.handleCancel),this.windowListeners.add(Qn.DragStart,M1),this.windowListeners.add(Qn.VisibilityChange,this.handleCancel),this.windowListeners.add(Qn.ContextMenu,M1),this.documentListeners.add(Qn.Keydown,this.handleKeydown),r){if(a!=null&&a({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(j1(r)){this.timeoutId=setTimeout(this.handleStart,r.delay),this.handlePending(r);return}if(O1(r)){this.handlePending(r);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(o,r){const{active:a,onPending:l}=this.props;l(a,o,this.initialCoordinates,r)}handleStart(){const{initialCoordinates:o}=this,{onStart:r}=this.props;o&&(this.activated=!0,this.documentListeners.add(Qn.Click,D6,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(Qn.SelectionChange,this.removeTextSelection),r(o))}handleMove(o){var r;const{activated:a,initialCoordinates:l,props:c}=this,{onMove:u,options:{activationConstraint:f}}=c;if(!l)return;const h=(r=Bp(o))!=null?r:go,p=Eu(l,h);if(!a&&f){if(O1(f)){if(f.tolerance!=null&&op(p,f.tolerance))return this.handleCancel();if(op(p,f.distance))return this.handleStart()}if(j1(f)&&op(p,f.tolerance))return this.handleCancel();this.handlePending(f,p);return}o.cancelable&&o.preventDefault(),u(h)}handleEnd(){const{onAbort:o,onEnd:r}=this.props;this.detach(),this.activated||o(this.props.active),r()}handleCancel(){const{onAbort:o,onCancel:r}=this.props;this.detach(),this.activated||o(this.props.active),r()}handleKeydown(o){o.code===Qe.Esc&&this.handleCancel()}removeTextSelection(){var o;(o=this.document.getSelection())==null||o.removeAllRanges()}}const A6={cancel:{name:"pointercancel"},move:{name:"pointermove"},end:{name:"pointerup"}};class Sg extends xg{constructor(o){const{event:r}=o,a=il(r.target);super(o,A6,a)}}Sg.activators=[{eventName:"onPointerDown",handler:(e,o)=>{let{nativeEvent:r}=e,{onActivation:a}=o;return!r.isPrimary||r.button!==0?!1:(a?.({event:r}),!0)}}];const z6={move:{name:"mousemove"},end:{name:"mouseup"}};var Lp;(function(e){e[e.RightClick=2]="RightClick"})(Lp||(Lp={}));class M6 extends xg{constructor(o){super(o,z6,il(o.event.target))}}M6.activators=[{eventName:"onMouseDown",handler:(e,o)=>{let{nativeEvent:r}=e,{onActivation:a}=o;return r.button===Lp.RightClick?!1:(a?.({event:r}),!0)}}];const rp={cancel:{name:"touchcancel"},move:{name:"touchmove"},end:{name:"touchend"}};class O6 extends xg{constructor(o){super(o,rp)}static setup(){return window.addEventListener(rp.move.name,o,{capture:!1,passive:!1}),function(){window.removeEventListener(rp.move.name,o)};function o(){}}}O6.activators=[{eventName:"onTouchStart",handler:(e,o)=>{let{nativeEvent:r}=e,{onActivation:a}=o;const{touches:l}=r;return l.length>1?!1:(a?.({event:r}),!0)}}];var cs;(function(e){e[e.Pointer=0]="Pointer",e[e.DraggableRect=1]="DraggableRect"})(cs||(cs={}));var Tu;(function(e){e[e.TreeOrder=0]="TreeOrder",e[e.ReversedTreeOrder=1]="ReversedTreeOrder"})(Tu||(Tu={}));function j6(e){let{acceleration:o,activator:r=cs.Pointer,canScroll:a,draggingRect:l,enabled:c,interval:u=5,order:f=Tu.TreeOrder,pointerCoordinates:h,scrollableAncestors:p,scrollableAncestorRects:g,delta:v,threshold:x}=e;const S=$6({delta:v,disabled:!c}),[E,C]=Y5(),R=b.useRef({x:0,y:0}),T=b.useRef({x:0,y:0}),z=b.useMemo(()=>{switch(r){case cs.Pointer:return h?{top:h.y,bottom:h.y,left:h.x,right:h.x}:null;case cs.DraggableRect:return l}},[r,l,h]),A=b.useRef(null),N=b.useCallback(()=>{const M=A.current;if(!M)return;const $=R.current.x*T.current.x,L=R.current.y*T.current.y;M.scrollBy($,L)},[]),B=b.useMemo(()=>f===Tu.TreeOrder?[...p].reverse():p,[f,p]);b.useEffect(()=>{if(!c||!p.length||!z){C();return}for(const M of B){if(a?.(M)===!1)continue;const $=p.indexOf(M),L=g[$];if(!L)continue;const{direction:H,speed:I}=S6(M,L,z,o,x);for(const Y of["x","y"])S[Y][H[Y]]||(I[Y]=0,H[Y]=0);if(I.x>0||I.y>0){C(),A.current=M,E(N,u),R.current=I,T.current=H;return}}R.current={x:0,y:0},T.current={x:0,y:0},C()},[o,N,a,C,c,u,JSON.stringify(z),JSON.stringify(S),E,p,B,g,JSON.stringify(x)])}const B6={x:{[Ft.Backward]:!1,[Ft.Forward]:!1},y:{[Ft.Backward]:!1,[Ft.Forward]:!1}};function $6(e){let{delta:o,disabled:r}=e;const a=jp(o);return Ns(l=>{if(r||!a||!l)return B6;const c={x:Math.sign(o.x-a.x),y:Math.sign(o.y-a.y)};return{x:{[Ft.Backward]:l.x[Ft.Backward]||c.x===-1,[Ft.Forward]:l.x[Ft.Forward]||c.x===1},y:{[Ft.Backward]:l.y[Ft.Backward]||c.y===-1,[Ft.Forward]:l.y[Ft.Forward]||c.y===1}}},[r,o,a])}function L6(e,o){const r=o!=null?e.get(o):void 0,a=r?r.node.current:null;return Ns(l=>{var c;return o==null?null:(c=a??l)!=null?c:null},[a,o])}function k6(e,o){return b.useMemo(()=>e.reduce((r,a)=>{const{sensor:l}=a,c=l.activators.map(u=>({eventName:u.eventName,handler:o(u.handler,a)}));return[...r,...c]},[]),[e,o])}var bs;(function(e){e[e.Always=0]="Always",e[e.BeforeDragging=1]="BeforeDragging",e[e.WhileDragging=2]="WhileDragging"})(bs||(bs={}));var kp;(function(e){e.Optimized="optimized"})(kp||(kp={}));const B1=new Map;function H6(e,o){let{dragging:r,dependencies:a,config:l}=o;const[c,u]=b.useState(null),{frequency:f,measure:h,strategy:p}=l,g=b.useRef(e),v=R(),x=vs(v),S=b.useCallback(function(T){T===void 0&&(T=[]),!x.current&&u(z=>z===null?T:z.concat(T.filter(A=>!z.includes(A))))},[x]),E=b.useRef(null),C=Ns(T=>{if(v&&!r)return B1;if(!T||T===B1||g.current!==e||c!=null){const z=new Map;for(let A of e){if(!A)continue;if(c&&c.length>0&&!c.includes(A.id)&&A.rect.current){z.set(A.id,A.rect.current);continue}const N=A.node.current,B=N?new bg(h(N),N):null;A.rect.current=B,B&&z.set(A.id,B)}return z}return T},[e,c,r,v,h]);return b.useEffect(()=>{g.current=e},[e]),b.useEffect(()=>{v||S()},[r,v]),b.useEffect(()=>{c&&c.length>0&&u(null)},[JSON.stringify(c)]),b.useEffect(()=>{v||typeof f!="number"||E.current!==null||(E.current=setTimeout(()=>{S(),E.current=null},f))},[f,v,S,...a]),{droppableRects:C,measureDroppableContainers:S,measuringScheduled:c!=null};function R(){switch(p){case bs.Always:return!1;case bs.BeforeDragging:return r;default:return!r}}}function iC(e,o){return Ns(r=>e?r||(typeof o=="function"?o(e):e):null,[o,e])}function U6(e,o){return iC(e,o)}function P6(e){let{callback:o,disabled:r}=e;const a=gg(o),l=b.useMemo(()=>{if(r||typeof window>"u"||typeof window.MutationObserver>"u")return;const{MutationObserver:c}=window;return new c(a)},[a,r]);return b.useEffect(()=>()=>l?.disconnect(),[l]),l}function cf(e){let{callback:o,disabled:r}=e;const a=gg(o),l=b.useMemo(()=>{if(r||typeof window>"u"||typeof window.ResizeObserver>"u")return;const{ResizeObserver:c}=window;return new c(a)},[r]);return b.useEffect(()=>()=>l?.disconnect(),[l]),l}function V6(e){return new bg(ll(e),e)}function $1(e,o,r){o===void 0&&(o=V6);const[a,l]=b.useState(null);function c(){l(h=>{if(!e)return null;if(e.isConnected===!1){var p;return(p=h??r)!=null?p:null}const g=o(e);return JSON.stringify(h)===JSON.stringify(g)?h:g})}const u=P6({callback(h){if(e)for(const p of h){const{type:g,target:v}=p;if(g==="childList"&&v instanceof HTMLElement&&v.contains(e)){c();break}}}}),f=cf({callback:c});return Ao(()=>{c(),e?(f?.observe(e),u?.observe(document.body,{childList:!0,subtree:!0})):(f?.disconnect(),u?.disconnect())},[e]),a}function Y6(e){const o=iC(e);return Kw(e,o)}const L1=[];function G6(e){const o=b.useRef(e),r=Ns(a=>e?a&&a!==L1&&e&&o.current&&e.parentNode===o.current.parentNode?a:yg(e):L1,[e]);return b.useEffect(()=>{o.current=e},[e]),r}function X6(e){const[o,r]=b.useState(null),a=b.useRef(e),l=b.useCallback(c=>{const u=np(c.target);u&&r(f=>f?(f.set(u,$p(u)),new Map(f)):null)},[]);return b.useEffect(()=>{const c=a.current;if(e!==c){u(c);const f=e.map(h=>{const p=np(h);return p?(p.addEventListener("scroll",l,{passive:!0}),[p,$p(p)]):null}).filter(h=>h!=null);r(f.length?new Map(f):null),a.current=e}return()=>{u(e),u(c)};function u(f){f.forEach(h=>{const p=np(h);p?.removeEventListener("scroll",l)})}},[l,e]),b.useMemo(()=>e.length?o?Array.from(o.values()).reduce((c,u)=>$i(c,u),go):oC(e):go,[e,o])}function k1(e,o){o===void 0&&(o=[]);const r=b.useRef(null);return b.useEffect(()=>{r.current=null},o),b.useEffect(()=>{const a=e!==go;a&&!r.current&&(r.current=e),!a&&r.current&&(r.current=null)},[e]),r.current?Eu(e,r.current):go}function q6(e){b.useEffect(()=>{if(!sf)return;const o=e.map(r=>{let{sensor:a}=r;return a.setup==null?void 0:a.setup()});return()=>{for(const r of o)r?.()}},e.map(o=>{let{sensor:r}=o;return r}))}function I6(e,o){return b.useMemo(()=>e.reduce((r,a)=>{let{eventName:l,handler:c}=a;return r[l]=u=>{c(u,o)},r},{}),[e,o])}function lC(e){return b.useMemo(()=>e?v6(e):null,[e])}const H1=[];function F6(e,o){o===void 0&&(o=ll);const[r]=e,a=lC(r?_n(r):null),[l,c]=b.useState(H1);function u(){c(()=>e.length?e.map(h=>tC(h)?a:new bg(o(h),h)):H1)}const f=cf({callback:u});return Ao(()=>{f?.disconnect(),u(),e.forEach(h=>f?.observe(h))},[e]),l}function Z6(e){if(!e)return null;if(e.children.length>1)return e;const o=e.children[0];return Ds(o)?o:e}function Q6(e){let{measure:o}=e;const[r,a]=b.useState(null),l=b.useCallback(p=>{for(const{target:g}of p)if(Ds(g)){a(v=>{const x=o(g);return v?{...v,width:x.width,height:x.height}:x});break}},[o]),c=cf({callback:l}),u=b.useCallback(p=>{const g=Z6(p);c?.disconnect(),g&&c?.observe(g),a(g?o(g):null)},[o,c]),[f,h]=Cu(u);return b.useMemo(()=>({nodeRef:f,rect:r,setRef:h}),[r,f,h])}const K6=[{sensor:Sg,options:{}},{sensor:aC,options:{}}],W6={current:{}},fu={draggable:{measure:z1},droppable:{measure:z1,strategy:bs.WhileDragging,frequency:kp.Optimized},dragOverlay:{measure:ll}};class us extends Map{get(o){var r;return o!=null&&(r=super.get(o))!=null?r:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(o=>{let{disabled:r}=o;return!r})}getNodeFor(o){var r,a;return(r=(a=this.get(o))==null?void 0:a.node.current)!=null?r:void 0}}const J6={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new us,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Ru},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:fu,measureDroppableContainers:Ru,windowRect:null,measuringScheduled:!1},e4={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:Ru,draggableNodes:new Map,over:null,measureDroppableContainers:Ru},uf=b.createContext(e4),sC=b.createContext(J6);function t4(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new us}}}function n4(e,o){switch(o.type){case Vt.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:o.initialCoordinates,active:o.active}};case Vt.DragMove:return e.draggable.active==null?e:{...e,draggable:{...e.draggable,translate:{x:o.coordinates.x-e.draggable.initialCoordinates.x,y:o.coordinates.y-e.draggable.initialCoordinates.y}}};case Vt.DragEnd:case Vt.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case Vt.RegisterDroppable:{const{element:r}=o,{id:a}=r,l=new us(e.droppable.containers);return l.set(a,r),{...e,droppable:{...e.droppable,containers:l}}}case Vt.SetDroppableDisabled:{const{id:r,key:a,disabled:l}=o,c=e.droppable.containers.get(r);if(!c||a!==c.key)return e;const u=new us(e.droppable.containers);return u.set(r,{...c,disabled:l}),{...e,droppable:{...e.droppable,containers:u}}}case Vt.UnregisterDroppable:{const{id:r,key:a}=o,l=e.droppable.containers.get(r);if(!l||a!==l.key)return e;const c=new us(e.droppable.containers);return c.delete(r),{...e,droppable:{...e.droppable,containers:c}}}default:return e}}function o4(e){let{disabled:o}=e;const{active:r,activatorEvent:a,draggableNodes:l}=b.useContext(uf),c=jp(a),u=jp(r?.id);return b.useEffect(()=>{if(!o&&!a&&c&&u!=null){if(!vg(c)||document.activeElement===c.target)return;const f=l.get(u);if(!f)return;const{activatorNode:h,node:p}=f;if(!h.current&&!p.current)return;requestAnimationFrame(()=>{for(const g of[h.current,p.current]){if(!g)continue;const v=q5(g);if(v){v.focus();break}}})}},[a,o,l,u,c]),null}function r4(e,o){let{transform:r,...a}=o;return e!=null&&e.length?e.reduce((l,c)=>c({transform:l,...a}),r):r}function a4(e){return b.useMemo(()=>({draggable:{...fu.draggable,...e?.draggable},droppable:{...fu.droppable,...e?.droppable},dragOverlay:{...fu.dragOverlay,...e?.dragOverlay}}),[e?.draggable,e?.droppable,e?.dragOverlay])}function i4(e){let{activeNode:o,measure:r,initialRect:a,config:l=!0}=e;const c=b.useRef(!1),{x:u,y:f}=typeof l=="boolean"?{x:l,y:l}:l;Ao(()=>{if(!u&&!f||!o){c.current=!1;return}if(c.current||!a)return;const p=o?.node.current;if(!p||p.isConnected===!1)return;const g=r(p),v=Kw(g,a);if(u||(v.x=0),f||(v.y=0),c.current=!0,Math.abs(v.x)>0||Math.abs(v.y)>0){const x=Ww(p);x&&x.scrollBy({top:v.y,left:v.x})}},[o,u,f,a,r])}const cC=b.createContext({...go,scaleX:1,scaleY:1});var Hr;(function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initializing=1]="Initializing",e[e.Initialized=2]="Initialized"})(Hr||(Hr={}));const l4=b.memo(function(o){var r,a,l,c;let{id:u,accessibility:f,autoScroll:h=!0,children:p,sensors:g=K6,collisionDetection:v=u6,measuring:x,modifiers:S,...E}=o;const C=b.useReducer(n4,void 0,t4),[R,T]=C,[z,A]=W5(),[N,B]=b.useState(Hr.Uninitialized),M=N===Hr.Initialized,{draggable:{active:$,nodes:L,translate:H},droppable:{containers:I}}=R,Y=$!=null?L.get($):null,X=b.useRef({initial:null,translated:null}),ee=b.useMemo(()=>{var Et;return $!=null?{id:$,data:(Et=Y?.data)!=null?Et:W6,rect:X}:null},[$,Y]),ne=b.useRef(null),[re,j]=b.useState(null),[k,V]=b.useState(null),P=vs(E,Object.values(E)),Z=As("DndDescribedBy",u),D=b.useMemo(()=>I.getEnabled(),[I]),O=a4(x),{droppableRects:q,measureDroppableContainers:W,measuringScheduled:ie}=H6(D,{dragging:M,dependencies:[H.x,H.y],config:O.droppable}),ue=L6(L,$),ve=b.useMemo(()=>k?Bp(k):null,[k]),fe=$a(),be=U6(ue,O.draggable.measure);i4({activeNode:$!=null?L.get($):null,config:fe.layoutShiftCompensation,initialRect:be,measure:O.draggable.measure});const ye=$1(ue,O.draggable.measure,be),Ge=$1(ue?ue.parentElement:null),Ne=b.useRef({activatorEvent:null,active:null,activeNode:ue,collisionRect:null,collisions:null,droppableRects:q,draggableNodes:L,draggingNode:null,draggingNodeRect:null,droppableContainers:I,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Ke=I.getNodeFor((r=Ne.current.over)==null?void 0:r.id),Be=Q6({measure:O.dragOverlay.measure}),tt=(a=Be.nodeRef.current)!=null?a:ue,vt=M?(l=Be.rect)!=null?l:ye:null,pe=!!(Be.nodeRef.current&&Be.rect),me=Y6(pe?null:ye),we=lC(tt?_n(tt):null),De=G6(M?Ke??ue:null),Ae=F6(De),xe=r4(S,{transform:{x:H.x-me.x,y:H.y-me.y,scaleX:1,scaleY:1},activatorEvent:k,active:ee,activeNodeRect:ye,containerNodeRect:Ge,draggingNodeRect:vt,over:Ne.current.over,overlayNodeRect:Be.rect,scrollableAncestors:De,scrollableAncestorRects:Ae,windowRect:we}),$e=ve?$i(ve,H):null,de=X6(De),Re=k1(de),dt=k1(de,[ye]),nt=$i(xe,Re),yt=vt?h6(vt,xe):null,We=ee&&yt?v({active:ee,collisionRect:yt,droppableRects:q,droppableContainers:D,pointerCoordinates:$e}):null,wt=l6(We,"id"),[on,Qr]=b.useState(null),Oo=pe?xe:$i(xe,dt),Gt=f6(Oo,(c=on?.rect)!=null?c:null,ye),st=b.useRef(null),Ct=b.useCallback((Et,Rt)=>{let{sensor:Xt,options:hn}=Rt;if(ne.current==null)return;const pn=L.get(ne.current);if(!pn)return;const rn=Et.nativeEvent,mn=new Xt({active:ne.current,activeNode:pn,event:rn,options:hn,context:Ne,onAbort(Ht){if(!L.get(Ht))return;const{onDragAbort:Dn}=P.current,kn={id:Ht};Dn?.(kn),z({type:"onDragAbort",event:kn})},onPending(Ht,oo,Dn,kn){if(!L.get(Ht))return;const{onDragPending:Bo}=P.current,ro={id:Ht,constraint:oo,initialCoordinates:Dn,offset:kn};Bo?.(ro),z({type:"onDragPending",event:ro})},onStart(Ht){const oo=ne.current;if(oo==null)return;const Dn=L.get(oo);if(!Dn)return;const{onDragStart:kn}=P.current,jo={activatorEvent:rn,active:{id:oo,data:Dn.data,rect:X}};co.unstable_batchedUpdates(()=>{kn?.(jo),B(Hr.Initializing),T({type:Vt.DragStart,initialCoordinates:Ht,active:oo}),z({type:"onDragStart",event:jo}),j(st.current),V(rn)})},onMove(Ht){T({type:Vt.DragMove,coordinates:Ht})},onEnd:Ln(Vt.DragEnd),onCancel:Ln(Vt.DragCancel)});st.current=mn;function Ln(Ht){return async function(){const{active:Dn,collisions:kn,over:jo,scrollAdjustedTranslate:Bo}=Ne.current;let ro=null;if(Dn&&Bo){const{cancelDrop:hr}=P.current;ro={activatorEvent:rn,active:Dn,collisions:kn,delta:Bo,over:jo},Ht===Vt.DragEnd&&typeof hr=="function"&&await Promise.resolve(hr(ro))&&(Ht=Vt.DragCancel)}ne.current=null,co.unstable_batchedUpdates(()=>{T({type:Ht}),B(Hr.Uninitialized),Qr(null),j(null),V(null),st.current=null;const hr=Ht===Vt.DragEnd?"onDragEnd":"onDragCancel";if(ro){const Hn=P.current[hr];Hn?.(ro),z({type:hr,event:ro})}})}}},[L]),Kr=b.useCallback((Et,Rt)=>(Xt,hn)=>{const pn=Xt.nativeEvent,rn=L.get(hn);if(ne.current!==null||!rn||pn.dndKit||pn.defaultPrevented)return;const mn={active:rn};Et(Xt,Rt.options,mn)===!0&&(pn.dndKit={capturedBy:Rt.sensor},ne.current=hn,Ct(Xt,Rt))},[L,Ct]),Ms=k6(g,Kr);q6(g),Ao(()=>{ye&&N===Hr.Initializing&&B(Hr.Initialized)},[ye,N]),b.useEffect(()=>{const{onDragMove:Et}=P.current,{active:Rt,activatorEvent:Xt,collisions:hn,over:pn}=Ne.current;if(!Rt||!Xt)return;const rn={active:Rt,activatorEvent:Xt,collisions:hn,delta:{x:nt.x,y:nt.y},over:pn};co.unstable_batchedUpdates(()=>{Et?.(rn),z({type:"onDragMove",event:rn})})},[nt.x,nt.y]),b.useEffect(()=>{const{active:Et,activatorEvent:Rt,collisions:Xt,droppableContainers:hn,scrollAdjustedTranslate:pn}=Ne.current;if(!Et||ne.current==null||!Rt||!pn)return;const{onDragOver:rn}=P.current,mn=hn.get(wt),Ln=mn&&mn.rect.current?{id:mn.id,rect:mn.rect.current,data:mn.data,disabled:mn.disabled}:null,Ht={active:Et,activatorEvent:Rt,collisions:Xt,delta:{x:pn.x,y:pn.y},over:Ln};co.unstable_batchedUpdates(()=>{Qr(Ln),rn?.(Ht),z({type:"onDragOver",event:Ht})})},[wt]),Ao(()=>{Ne.current={activatorEvent:k,active:ee,activeNode:ue,collisionRect:yt,collisions:We,droppableRects:q,draggableNodes:L,draggingNode:tt,draggingNodeRect:vt,droppableContainers:I,over:on,scrollableAncestors:De,scrollAdjustedTranslate:nt},X.current={initial:vt,translated:yt}},[ee,ue,We,yt,L,tt,vt,q,I,on,De,nt]),j6({...fe,delta:H,draggingRect:yt,pointerCoordinates:$e,scrollableAncestors:De,scrollableAncestorRects:Ae});const df=b.useMemo(()=>({active:ee,activeNode:ue,activeNodeRect:ye,activatorEvent:k,collisions:We,containerNodeRect:Ge,dragOverlay:Be,draggableNodes:L,droppableContainers:I,droppableRects:q,over:on,measureDroppableContainers:W,scrollableAncestors:De,scrollableAncestorRects:Ae,measuringConfiguration:O,measuringScheduled:ie,windowRect:we}),[ee,ue,ye,k,We,Ge,Be,L,I,q,on,W,De,Ae,O,ie,we]),Ba=b.useMemo(()=>({activatorEvent:k,activators:Ms,active:ee,activeNodeRect:ye,ariaDescribedById:{draggable:Z},dispatch:T,draggableNodes:L,over:on,measureDroppableContainers:W}),[k,Ms,ee,ye,T,Z,L,on,W]);return Ye.createElement(Qw.Provider,{value:A},Ye.createElement(uf.Provider,{value:Ba},Ye.createElement(sC.Provider,{value:df},Ye.createElement(cC.Provider,{value:Gt},p)),Ye.createElement(o4,{disabled:f?.restoreFocus===!1})),Ye.createElement(t6,{...f,hiddenTextDescribedById:Z}));function $a(){const Et=re?.autoScrollEnabled===!1,Rt=typeof h=="object"?h.enabled===!1:h===!1,Xt=M&&!Et&&!Rt;return typeof h=="object"?{...h,enabled:Xt}:{enabled:Xt}}}),s4=b.createContext(null),U1="button",c4="Draggable";function u4(e){let{id:o,data:r,disabled:a=!1,attributes:l}=e;const c=As(c4),{activators:u,activatorEvent:f,active:h,activeNodeRect:p,ariaDescribedById:g,draggableNodes:v,over:x}=b.useContext(uf),{role:S=U1,roleDescription:E="draggable",tabIndex:C=0}=l??{},R=h?.id===o,T=b.useContext(R?cC:s4),[z,A]=Cu(),[N,B]=Cu(),M=I6(u,o),$=vs(r);Ao(()=>(v.set(o,{id:o,key:c,node:z,activatorNode:N,data:$}),()=>{const H=v.get(o);H&&H.key===c&&v.delete(o)}),[v,o]);const L=b.useMemo(()=>({role:S,tabIndex:C,"aria-disabled":a,"aria-pressed":R&&S===U1?!0:void 0,"aria-roledescription":E,"aria-describedby":g.draggable}),[a,S,C,R,E,g.draggable]);return{active:h,activatorEvent:f,activeNodeRect:p,attributes:L,isDragging:R,listeners:a?void 0:M,node:z,over:x,setNodeRef:A,setActivatorNodeRef:B,transform:T}}function f4(){return b.useContext(sC)}const d4="Droppable",h4={timeout:25};function p4(e){let{data:o,disabled:r=!1,id:a,resizeObserverConfig:l}=e;const c=As(d4),{active:u,dispatch:f,over:h,measureDroppableContainers:p}=b.useContext(uf),g=b.useRef({disabled:r}),v=b.useRef(!1),x=b.useRef(null),S=b.useRef(null),{disabled:E,updateMeasurementsFor:C,timeout:R}={...h4,...l},T=vs(C??a),z=b.useCallback(()=>{if(!v.current){v.current=!0;return}S.current!=null&&clearTimeout(S.current),S.current=setTimeout(()=>{p(Array.isArray(T.current)?T.current:[T.current]),S.current=null},R)},[R]),A=cf({callback:z,disabled:E||!u}),N=b.useCallback((L,H)=>{A&&(H&&(A.unobserve(H),v.current=!1),L&&A.observe(L))},[A]),[B,M]=Cu(N),$=vs(o);return b.useEffect(()=>{!A||!B.current||(A.disconnect(),v.current=!1,A.observe(B.current))},[B,A]),b.useEffect(()=>(f({type:Vt.RegisterDroppable,element:{id:a,key:c,disabled:r,node:B,rect:x,data:$}}),()=>f({type:Vt.UnregisterDroppable,key:c,id:a})),[a]),b.useEffect(()=>{r!==g.current.disabled&&(f({type:Vt.SetDroppableDisabled,id:a,key:c,disabled:r}),g.current.disabled=r)},[a,c,r,f]),{active:u,rect:x,isOver:h?.id===a,node:B,over:h,setNodeRef:M}}function wg(e,o,r){const a=e.slice();return a.splice(r<0?a.length+r:r,0,a.splice(o,1)[0]),a}function m4(e,o){return e.reduce((r,a,l)=>{const c=o.get(a);return c&&(r[l]=c),r},Array(e.length))}function Kc(e){return e!==null&&e>=0}function g4(e,o){if(e===o)return!0;if(e.length!==o.length)return!1;for(let r=0;r{let{rects:o,activeIndex:r,overIndex:a,index:l}=e;const c=wg(o,a,r),u=o[l],f=c[l];return!f||!u?null:{x:f.left-u.left,y:f.top-u.top,scaleX:f.width/u.width,scaleY:f.height/u.height}},Wc={scaleX:1,scaleY:1},y4=e=>{var o;let{activeIndex:r,activeNodeRect:a,index:l,rects:c,overIndex:u}=e;const f=(o=c[r])!=null?o:a;if(!f)return null;if(l===r){const p=c[u];return p?{x:0,y:rr&&l<=u?{x:0,y:-f.height-h,...Wc}:l=u?{x:0,y:f.height+h,...Wc}:{x:0,y:0,...Wc}};function b4(e,o,r){const a=e[o],l=e[o-1],c=e[o+1];return a?ra.map(M=>typeof M=="object"&&"id"in M?M.id:M),[a]),E=u!=null,C=u?S.indexOf(u.id):-1,R=p?S.indexOf(p.id):-1,T=b.useRef(S),z=!g4(S,T.current),A=R!==-1&&C===-1||z,N=v4(c);Ao(()=>{z&&E&&g(S)},[z,S,E,g]),b.useEffect(()=>{T.current=S},[S]);const B=b.useMemo(()=>({activeIndex:C,containerId:v,disabled:N,disableTransforms:A,items:S,overIndex:R,useDragOverlay:x,sortedRects:m4(S,h),strategy:l}),[C,v,N.draggable,N.droppable,A,S,R,h,x,l]);return Ye.createElement(dC.Provider,{value:B},o)}const S4=e=>{let{id:o,items:r,activeIndex:a,overIndex:l}=e;return wg(r,a,l).indexOf(o)},w4=e=>{let{containerId:o,isSorting:r,wasDragging:a,index:l,items:c,newIndex:u,previousItems:f,previousContainerId:h,transition:p}=e;return!p||!a||f!==c&&l===u?!1:r?!0:u!==l&&o===h},C4={duration:200,easing:"ease"},hC="transform",E4=ys.Transition.toString({property:hC,duration:0,easing:"linear"}),R4={roleDescription:"sortable"};function T4(e){let{disabled:o,index:r,node:a,rect:l}=e;const[c,u]=b.useState(null),f=b.useRef(r);return Ao(()=>{if(!o&&r!==f.current&&a.current){const h=l.current;if(h){const p=ll(a.current,{ignoreTransform:!0}),g={x:h.left-p.left,y:h.top-p.top,scaleX:h.width/p.width,scaleY:h.height/p.height};(g.x||g.y)&&u(g)}}r!==f.current&&(f.current=r)},[o,r,a,l]),b.useEffect(()=>{c&&u(null)},[c]),c}function _4(e){let{animateLayoutChanges:o=w4,attributes:r,disabled:a,data:l,getNewIndex:c=S4,id:u,strategy:f,resizeObserverConfig:h,transition:p=C4}=e;const{items:g,containerId:v,activeIndex:x,disabled:S,disableTransforms:E,sortedRects:C,overIndex:R,useDragOverlay:T,strategy:z}=b.useContext(dC),A=D4(a,S),N=g.indexOf(u),B=b.useMemo(()=>({sortable:{containerId:v,index:N,items:g},...l}),[v,l,N,g]),M=b.useMemo(()=>g.slice(g.indexOf(u)),[g,u]),{rect:$,node:L,isOver:H,setNodeRef:I}=p4({id:u,data:B,disabled:A.droppable,resizeObserverConfig:{updateMeasurementsFor:M,...h}}),{active:Y,activatorEvent:X,activeNodeRect:ee,attributes:ne,setNodeRef:re,listeners:j,isDragging:k,over:V,setActivatorNodeRef:P,transform:Z}=u4({id:u,data:B,attributes:{...R4,...r},disabled:A.draggable}),D=V5(I,re),O=!!Y,q=O&&!E&&Kc(x)&&Kc(R),W=!T&&k,ie=W&&q?Z:null,ve=q?ie??(f??z)({rects:C,activeNodeRect:ee,activeIndex:x,overIndex:R,index:N}):null,fe=Kc(x)&&Kc(R)?c({id:u,items:g,activeIndex:x,overIndex:R}):N,be=Y?.id,ye=b.useRef({activeId:be,items:g,newIndex:fe,containerId:v}),Ge=g!==ye.current.items,Ne=o({active:Y,containerId:v,isDragging:k,isSorting:O,id:u,index:N,items:g,newIndex:ye.current.newIndex,previousItems:ye.current.items,previousContainerId:ye.current.containerId,transition:p,wasDragging:ye.current.activeId!=null}),Ke=T4({disabled:!Ne,index:N,node:L,rect:$});return b.useEffect(()=>{O&&ye.current.newIndex!==fe&&(ye.current.newIndex=fe),v!==ye.current.containerId&&(ye.current.containerId=v),g!==ye.current.items&&(ye.current.items=g)},[O,fe,v,g]),b.useEffect(()=>{if(be===ye.current.activeId)return;if(be!=null&&ye.current.activeId==null){ye.current.activeId=be;return}const tt=setTimeout(()=>{ye.current.activeId=be},50);return()=>clearTimeout(tt)},[be]),{active:Y,activeIndex:x,attributes:ne,data:B,rect:$,index:N,newIndex:fe,items:g,isOver:H,isSorting:O,isDragging:k,listeners:j,node:L,overIndex:R,over:V,setNodeRef:D,setActivatorNodeRef:P,setDroppableNodeRef:I,setDraggableNodeRef:re,transform:Ke??ve,transition:Be()};function Be(){if(Ke||Ge&&ye.current.newIndex===N)return E4;if(!(W&&!vg(X)||!p)&&(O||Ne))return ys.Transition.toString({...p,property:hC})}}function D4(e,o){var r,a;return typeof e=="boolean"?{draggable:e,droppable:!1}:{draggable:(r=e?.draggable)!=null?r:o.draggable,droppable:(a=e?.droppable)!=null?a:o.droppable}}Qe.Down,Qe.Right,Qe.Up,Qe.Left;const pC=""+new URL("../logo.png",import.meta.url).href;let mC=()=>{};function P1(e){mC=e}const zs=H5({tokenKey:"mv_token",onUnauthorized:e=>mC(e)}),N4=zs.login,A4=zs.logout,z4=zs.isAuthenticated,M4=zs.getUsername,{request:Mo}=zs,O4=()=>Mo("/fields"),V1=()=>Mo("/config"),j4=()=>Mo("/channels"),B4=(e,o)=>Mo(`/styles/preview?layout=${encodeURIComponent(e)}&channel_count=${o}`),Ur=e=>Mo("/config",{method:"PATCH",body:JSON.stringify(e)}),$4=()=>Mo("/refresh",{method:"POST"}),gC=()=>Mo("/streams"),Hp=e=>Mo("/streams/restart",{method:"POST",body:JSON.stringify(e!=null?{n:e}:{})}),L4=(e,o)=>Mo("/streams/restart",{method:"POST",body:JSON.stringify({n:e,channel_idx:o})}),vC=(e,o,r)=>Mo("/styles/background",{method:"POST",body:JSON.stringify({style_id:e,filename:o,data_base64:r})});async function yC(e){const o=localStorage.getItem("mv_token"),r=await fetch(`/api/styles/background?style_id=${encodeURIComponent(e)}`,{headers:o?{Authorization:`Bearer ${o}`}:{}});return r.ok?r.blob():null}const k4=/^(video_encoder|multiview_[0-9a-f]{8}_(selector_type|channel_count|epg_source_mode))$/,bC=e=>k4.test(e),H4=/^Layout\s+\d+[:\s]*/i,U4=e=>({...e,label:e.label.replace(H4,"")});function P4(e,o){const r=[],a=[],l=[];let c=null,u=null;for(const f of e){const h=f.id.replace(`multiview_${o}_`,"");["name","layout","selector_type"].includes(h)?r.push(f):h==="channel_count"?u=f:h==="audio_source"?c=f:h.startsWith("epg_")?l.push(f):a.push(f)}return{base:r,channels:a,epg:l,audioSource:c,channelCountField:u}}function Na(e=4){const o=new Uint8Array(e);return crypto.getRandomValues(o),Array.from(o,r=>r.toString(16).padStart(2,"0")).join("")}function xC(e,o){const r=new Blob([JSON.stringify(e,null,2)],{type:"application/json"}),a=URL.createObjectURL(r),l=document.createElement("a");l.href=a,l.download=o,document.body.appendChild(l),l.click(),l.remove(),URL.revokeObjectURL(a)}const Up=["center","top","bottom","left","right"];function Ta(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function V4(e,o){if(!Ta(e))throw new Error(`${o}: not an object`);if(!["static","row","grid"].includes(e.type))throw new Error(`${o}.type: invalid "${e.type}"`);for(const r of["x","y","w","h"])if(typeof e[r]!="number"||!Number.isFinite(e[r]))throw new Error(`${o}.${r}: must be a finite number`);if(e.name!=null&&typeof e.name!="string")throw new Error(`${o}.name: must be a string`);if(e.valign!=null&&!Up.includes(e.valign))throw new Error(`${o}.valign: invalid "${e.valign}"`);if(e.halign!=null&&!Up.includes(e.halign))throw new Error(`${o}.halign: invalid "${e.halign}"`);if(e.type==="row"&&e.direction!=null&&!["horizontal","vertical"].includes(e.direction))throw new Error(`${o}.direction: invalid "${e.direction}"`);if(e.max!=null&&(typeof e.max!="number"||!Number.isFinite(e.max)))throw new Error(`${o}.max: must be a number`);if(e.lockAspect!=null&&typeof e.lockAspect!="boolean")throw new Error(`${o}.lockAspect: must be a boolean`)}function Pp(e,o="style"){if(!Ta(e))throw new Error(`${o}: not an object`);if(e.name!=null&&typeof e.name!="string")throw new Error(`${o}.name: must be a string`);if(!Array.isArray(e.elements))throw new Error(`${o}.elements: must be an array`);if(e.elements.forEach((r,a)=>V4(r,`${o}.elements[${a}]`)),e.background_image_data!=null&&typeof e.background_image_data!="string")throw new Error(`${o}.background_image_data: must be a string`);if(e.background_image_filename!=null&&typeof e.background_image_filename!="string")throw new Error(`${o}.background_image_filename: must be a string`)}const Y4={name:"string",layout:"string",channel_count:"number",selector_type:"string",epg_source_mode:"string"};function G4(e,o){if(!Ta(e))throw new Error(`${o}: not an object`);for(const[r,a]of Object.entries(Y4))if(e[r]!=null&&typeof e[r]!==a)throw new Error(`${o}.${r}: must be a ${a}`);if(e.channels!=null){if(!Array.isArray(e.channels))throw new Error(`${o}.channels: must be an array`);e.channels.forEach((r,a)=>{if(r!=null&&typeof r!="string")throw new Error(`${o}.channels[${a}]: must be a string`)})}}function X4(e){if(!Ta(e))throw new Error("backup: not an object");if(!Array.isArray(e.layouts))throw new Error("backup.layouts: must be an array");if(e.layouts.forEach((o,r)=>G4(o,`backup.layouts[${r}]`)),e.global!=null&&!Ta(e.global))throw new Error("backup.global: must be an object");if(e.custom_styles!=null){if(!Ta(e.custom_styles))throw new Error("backup.custom_styles: must be an object");for(const[o,r]of Object.entries(e.custom_styles))Pp(r,`backup.custom_styles["${o}"]`)}}function q4(e){if(!Ta(e))throw new Error("backup: not an object");const o=e.multiview_order;if(!Array.isArray(o)||o.some(l=>typeof l!="string"))throw new Error("backup.multiview_order: must be an array of strings");const r=new Set(o),a=/^multiview_([0-9a-f]{8})_(.+)$/;for(const l of Object.keys(e)){const c=l.match(a);if(c&&!r.has(c[1]))throw new Error(`backup["${l}"]: id "${c[1]}" not present in multiview_order`)}}function I4({id:e,position:o,fields:r,settings:a,canRemove:l,hasActiveStream:c,dragHandleProps:u,onSettingsChange:f,onFieldsReload:h,onRemove:p,onChannelCountChange:g}){const[v,x]=b.useState(!1),S=qw(Ur,{onOptimisticChange:f,shouldReload:bC,onReload:h,onSaved:()=>Ze.show({message:"Saved",color:"green",autoClose:1500}),onError:I=>Ze.show({title:"Save failed",message:I.message,color:"red",autoClose:4e3})}),{base:E,channels:C,epg:R,audioSource:T,channelCountField:z}=P4(r.map(U4),e),A=a[`multiview_${e}_name`]||`Multiview ${o}`,N=a[`multiview_${e}_channel_count`]??z?.default??4,B=z?.min??2,M=z?.max??9;function $(I){return I.length?y.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(280px, 1fr))",gap:"var(--mantine-spacing-sm)"},children:I.map(Y=>y.jsx(Op,{field:Y,value:a[Y.id],onChange:X=>S(Y.id,X,Y.type!=="string")},Y.id))}):null}function L(I){return I.length?y.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(280px, 1fr))",gap:"var(--mantine-spacing-sm)"},children:I.map(Y=>{const X=new Set,ee=(Y.options??[]).reduce((ne,re)=>{const j=String(re.value);return X.has(j)||(X.add(j),ne.push({value:j,label:re.label})),ne},[]);return y.jsx(Vi,{label:Y.label,description:Y.description,data:ee,value:String(a[Y.id]??Y.default??""),onChange:ne=>S(Y.id,ne,!0),allowDeselect:!1,searchable:!0,limit:50},Y.id)})}):null}const H=y.jsxs(mt,{gap:4,wrap:"nowrap",children:[y.jsx(Yt,{size:"sm",variant:"subtle",color:"gray",style:{cursor:"grab",touchAction:"none"},onClick:I=>I.stopPropagation(),...u,children:y.jsx(v5,{size:16})}),y.jsx(Dt,{size:"xs",color:"red",variant:"subtle",leftSection:y.jsx(hg,{size:14}),style:{visibility:l?"visible":"hidden"},onClick:I=>{I.stopPropagation(),x(!0)},children:"Remove"})]});return y.jsxs(y.Fragment,{children:[y.jsx(Iw,{as:"Card",title:`Layout ${o}: ${A}`,trailingAction:H,children:y.jsxs(Qt,{gap:"md",p:"md",pt:0,children:[$(E),(C.length>0||z)&&y.jsxs(y.Fragment,{children:[y.jsx(Su,{label:y.jsxs(mt,{gap:4,align:"center",children:[y.jsx(Ve,{size:"xs",c:"dimmed",children:"Channels"}),y.jsx(Yt,{size:"xs",variant:"subtle",disabled:N<=B,onClick:()=>g(-1),children:y.jsx(S5,{size:10})}),y.jsx(Ve,{size:"xs",fw:600,w:14,ta:"center",children:N}),y.jsx(Yt,{size:"xs",variant:"subtle",disabled:N>=M,onClick:()=>g(1),children:y.jsx(ls,{size:10})})]}),labelPosition:"left"}),L(C)]}),T&&y.jsx(Op,{field:T,value:a[T.id],onChange:I=>S(T.id,I,!0)}),R.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(Su,{label:"EPG",labelPosition:"left"}),$(R)]})]})}),y.jsxs(Tn,{opened:v,onClose:()=>x(!1),title:`Remove Layout ${o}`,size:"xs",centered:!0,children:[y.jsxs(Ve,{size:"sm",children:["Remove Layout ",o,": ",A,"? This cannot be undone."]}),c&&y.jsx(Ve,{size:"sm",c:"orange",mt:"xs",children:"This layout has an active stream — removing it will disconnect that viewer."}),y.jsxs(mt,{mt:"md",justify:"flex-end",children:[y.jsx(Dt,{variant:"default",onClick:()=>x(!1),children:"Cancel"}),y.jsx(Dt,{color:"red",onClick:()=>{x(!1),p()},children:"Remove"})]})]})]})}function F4({opened:e,onClose:o,settings:r}){const[a,l]=b.useState([]),[c,u]=b.useState({}),[f,h]=b.useState(null),p=b.useCallback(async()=>{try{const x=await gC();l(x.active??[])}catch{}},[]);b.useEffect(()=>{if(!e)return;p();const x=setInterval(p,4e3);return()=>clearInterval(x)},[e,p]);const g=async(x,S,E)=>{u(C=>({...C,[x]:!0}));try{await S(),Ze.show({message:E,color:"blue",autoClose:2e3}),await p()}catch(C){Ze.show({title:"Failed",message:C.message,color:"red",autoClose:4e3})}finally{u(C=>({...C,[x]:!1}))}},v=(x,S,E,C,R)=>h({title:x,message:S,confirmLabel:E,color:C,onConfirm:R});return y.jsxs(Tn,{opened:e,onClose:o,title:"Active Multiviews",size:"sm",centered:!0,children:[y.jsx(Xw,{action:f,onClose:()=>h(null)}),a.length===0?y.jsx(Ve,{size:"sm",c:"dimmed",children:"No multiviews currently active."}):y.jsx(Qt,{gap:"md",children:a.map(({n:x,channels:S})=>{const E=r[`multiview_${x}_name`]||`Multiview ${x}`;return y.jsxs("div",{children:[y.jsxs(mt,{justify:"space-between",mb:6,children:[y.jsx(Ve,{size:"sm",fw:600,children:E}),y.jsx(Dt,{size:"xs",color:"orange",variant:"subtle",leftSection:y.jsx(_1,{size:12}),loading:c[`${x}`],onClick:()=>v("Reload",`Reload ${E}? The compositor will restart and active players will reconnect. Some players may buffer, stutter, or require a manual refresh depending on how they handle stream interruptions.`,"Reload","orange",()=>g(`${x}`,()=>Hp(x),`${E} reloaded`)),children:"Reload"})]}),y.jsx(Qt,{gap:4,pl:"sm",children:(S??[]).map(({idx:C,name:R})=>y.jsxs(mt,{justify:"space-between",children:[y.jsx(Ve,{size:"xs",c:"dimmed",children:R}),y.jsx(Dt,{size:"xs",variant:"subtle",leftSection:y.jsx(Yw,{size:11}),loading:c[`${x}-${C}`],onClick:()=>v("Reconnect",`Reconnect ${R}?`,"Reconnect","blue",()=>g(`${x}-${C}`,()=>L4(x,C),`${R} reconnecting`)),children:"Reconnect"})]},C))})]},x)})}),a.length>1&&y.jsx(Dt,{fullWidth:!0,mt:"md",color:"orange",variant:"light",leftSection:y.jsx(_1,{size:14}),loading:c.all,onClick:()=>v("Reload All",`Reload all ${a.length} multiviews? All compositors will restart and active players will reconnect. Some players may buffer, stutter, or require a manual refresh depending on how they handle stream interruptions.`,"Reload All","orange",()=>g("all",()=>Hp(null),`${a.length} multiviews reloaded`)),children:"Reload All"})]})}var Z4={};function Vp(e,o){for(let r=0,a=e.length;r"u")return"";const a=(r=(o=window.document)==null?void 0:o.documentElement)==null?void 0:r.style;if(!a||e in a)return"";for(let l=0;lo===r.identifier)||e.changedTouches&&Vp(e.changedTouches,r=>o===r.identifier)}function sO(e){if(e.targetTouches&&e.targetTouches[0])return e.targetTouches[0].identifier;if(e.changedTouches&&e.changedTouches[0])return e.changedTouches[0].identifier}function cO(){return typeof __webpack_nonce__<"u"?__webpack_nonce__:void 0}function uO(e,o){if(!e)return;let r=e.getElementById("react-draggable-style-el");if(!r){r=e.createElement("style"),r.type="text/css",r.id="react-draggable-style-el";const a=o??cO();a&&r.setAttribute("nonce",a),r.innerHTML=`.react-draggable-transparent-selection *::-moz-selection {all: inherit;} +`,r.innerHTML+=`.react-draggable-transparent-selection *::selection {all: inherit;} +`,e.getElementsByTagName("head")[0].appendChild(r)}e.body&&fO(e.body,"react-draggable-transparent-selection")}function X1(e){window.requestAnimationFrame?window.requestAnimationFrame(()=>{q1(e)}):q1(e)}function q1(e){if(e)try{e.body&&dO(e.body,"react-draggable-transparent-selection");const o=e.selection;if(o)o.empty();else{const r=(e.defaultView||window).getSelection();r&&r.type!=="Caret"&&r.removeAllRanges()}}catch{}}function fO(e,o){e.classList?e.classList.add(o):e.className.match(new RegExp(`(?:^|\\s)${o}(?!\\S)`))||(e.className+=` ${o}`)}function dO(e,o){e.classList?e.classList.remove(o):e.className=e.className.replace(new RegExp(`(?:^|\\s)${o}(?!\\S)`,"g"),"")}function hO(e,o,r){if(!e.props.bounds)return[o,r];let{bounds:a}=e.props;a=typeof a=="string"?a:gO(a);const l=Cg(e);if(typeof a=="string"){const{ownerDocument:c}=l,u=c.defaultView;if(!u)throw new Error("Cannot resolve the owner window of the draggable node.");let f;if(a==="parent"?f=l.parentNode:f=l.getRootNode().querySelector(a),!(f instanceof u.HTMLElement))throw new Error('Bounds selector "'+a+'" could not find an element.');const h=f,p=u.getComputedStyle(l),g=u.getComputedStyle(h);a={left:-l.offsetLeft+ln(g.paddingLeft)+ln(p.marginLeft),top:-l.offsetTop+ln(g.paddingTop)+ln(p.marginTop),right:oO(h)-tO(l)-l.offsetLeft+ln(g.paddingRight)-ln(p.marginRight),bottom:nO(h)-eO(l)-l.offsetTop+ln(g.paddingBottom)-ln(p.marginBottom)}}return as(a.right)&&(o=Math.min(o,a.right)),as(a.bottom)&&(r=Math.min(r,a.bottom)),as(a.left)&&(o=Math.max(o,a.left)),as(a.top)&&(r=Math.max(r,a.top)),[o,r]}function I1(e,o,r){const a=Math.round(o/e[0])*e[0],l=Math.round(r/e[1])*e[1];return[a,l]}function pO(e){return e.props.axis==="both"||e.props.axis==="x"}function mO(e){return e.props.axis==="both"||e.props.axis==="y"}function sp(e,o,r){const a=typeof o=="number"?lO(e,o):null;if(typeof o=="number"&&!a)return null;const l=Cg(r),c=r.props.offsetParent||l.offsetParent||l.ownerDocument.body;return rO(a||e,c,r.props.scale)}function cp(e,o,r){const a=!as(e.lastX),l=Cg(e);return a?{node:l,deltaX:0,deltaY:0,lastX:o,lastY:r,x:o,y:r}:{node:l,deltaX:o-e.lastX,deltaY:r-e.lastY,lastX:e.lastX,lastY:e.lastY,x:o,y:r}}function up(e,o){const r=e.props.scale;return{node:o.node,x:e.state.x+o.deltaX/r,y:e.state.y+o.deltaY/r,deltaX:o.deltaX/r,deltaY:o.deltaY/r,lastX:e.state.x,lastY:e.state.y}}function gO(e){return{left:e.left,top:e.top,right:e.right,bottom:e.bottom}}function Cg(e){const o=e.findDOMNode();if(!o)throw new Error(": Unmounted during event!");return o}function Ro(...e){Z4.DRAGGABLE_DEBUG&&console.log(...e)}var so={touch:{start:"touchstart",move:"touchmove",stop:"touchend"},mouse:{start:"mousedown",move:"mousemove",stop:"mouseup"}},Lr=so.mouse,sl=class extends b.Component{constructor(){super(...arguments),this.dragging=!1,this.lastX=NaN,this.lastY=NaN,this.touchIdentifier=null,this.mounted=!1,this.handleDragStart=e=>{if(this.props.onMouseDown(e),!this.props.allowAnyClick&&(typeof e.button=="number"&&e.button!==0||e.ctrlKey))return!1;const o=this.findDOMNode();if(!o||!o.ownerDocument||!o.ownerDocument.body)throw new Error(" not mounted on DragStart!");const{ownerDocument:r}=o;if(this.props.disabled||!(e.target instanceof r.defaultView.Node)||this.props.handle&&!G1(e.target,this.props.handle,o)||this.props.cancel&&G1(e.target,this.props.cancel,o))return;e.type==="touchstart"&&!this.props.allowMobileScroll&&e.preventDefault();const a=sO(e);this.touchIdentifier=a;const l=sp(e,a,this);if(l==null)return;const{x:c,y:u}=l,f=cp(this,c,u);Ro("DraggableCore: handleDragStart: %j",f),Ro("calling",this.props.onStart),!(this.props.onStart(e,f)===!1||this.mounted===!1)&&(this.props.enableUserSelectHack&&uO(r,this.props.nonce),this.dragging=!0,this.lastX=c,this.lastY=u,lp(r,Lr.move,this.handleDrag),lp(r,Lr.stop,this.handleDragStop))},this.handleDrag=e=>{const o=sp(e,this.touchIdentifier,this);if(o==null)return;let{x:r,y:a}=o;if(Array.isArray(this.props.grid)){let u=r-this.lastX,f=a-this.lastY;if([u,f]=I1(this.props.grid,u,f),!u&&!f)return;r=this.lastX+u,a=this.lastY+f}const l=cp(this,r,a);if(Ro("DraggableCore: handleDrag: %j",l),this.props.onDrag(e,l)===!1||this.mounted===!1){try{this.handleDragStop(new MouseEvent("mouseup"))}catch{const u=document.createEvent("MouseEvents");u.initMouseEvent("mouseup",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),this.handleDragStop(u)}return}this.lastX=r,this.lastY=a},this.handleDragStop=e=>{if(!this.dragging)return;const o=sp(e,this.touchIdentifier,this);if(o==null)return;let{x:r,y:a}=o;if(Array.isArray(this.props.grid)){let f=r-this.lastX||0,h=a-this.lastY||0;[f,h]=I1(this.props.grid,f,h),r=this.lastX+f,a=this.lastY+h}const l=cp(this,r,a);if(this.props.onStop(e,l)===!1||this.mounted===!1)return!1;const u=this.findDOMNode();u&&this.props.enableUserSelectHack&&X1(u.ownerDocument),Ro("DraggableCore: handleDragStop: %j",l),this.dragging=!1,this.lastX=NaN,this.lastY=NaN,u&&(Ro("DraggableCore: Removing handlers"),ga(u.ownerDocument,Lr.move,this.handleDrag),ga(u.ownerDocument,Lr.stop,this.handleDragStop))},this.onMouseDown=e=>(Lr=so.mouse,this.handleDragStart(e)),this.onMouseUp=e=>(Lr=so.mouse,this.handleDragStop(e)),this.onTouchStart=e=>(Lr=so.touch,this.handleDragStart(e)),this.onTouchEnd=e=>(Lr=so.touch,this.handleDragStop(e))}componentDidMount(){this.mounted=!0;const e=this.findDOMNode();e&&lp(e,so.touch.start,this.onTouchStart,{passive:!1})}componentWillUnmount(){this.mounted=!1;const e=this.findDOMNode();if(e){const{ownerDocument:o}=e;ga(o,so.mouse.move,this.handleDrag),ga(o,so.touch.move,this.handleDrag),ga(o,so.mouse.stop,this.handleDragStop),ga(o,so.touch.stop,this.handleDragStop),ga(e,so.touch.start,this.onTouchStart,{passive:!1}),this.props.enableUserSelectHack&&X1(o)}}findDOMNode(){var e;if((e=this.props)!=null&&e.nodeRef)return this.props.nodeRef.current;const o=Sa;return typeof o.findDOMNode=="function"?o.findDOMNode(this):(Ro("react-draggable: ReactDOM.findDOMNode is not available in React 19+. You must provide a nodeRef prop. See: https://github.com/react-grid-layout/react-draggable#noderef"),null)}render(){return b.cloneElement(b.Children.only(this.props.children),{onMouseDown:this.onMouseDown,onMouseUp:this.onMouseUp,onTouchEnd:this.onTouchEnd})}};sl.displayName="DraggableCore";sl.propTypes={allowAnyClick:je.bool,allowMobileScroll:je.bool,children:je.node.isRequired,disabled:je.bool,enableUserSelectHack:je.bool,offsetParent:function(e,o){if(e[o]&&e[o].nodeType!==1)throw new Error("Draggable's offsetParent must be a DOM Node.")},grid:je.arrayOf(je.number),handle:je.string,cancel:je.string,nodeRef:je.object,nonce:je.string,onStart:je.func,onDrag:je.func,onStop:je.func,onMouseDown:je.func,scale:je.number,className:Li,style:Li,transform:Li};sl.defaultProps={allowAnyClick:!1,allowMobileScroll:!1,disabled:!1,enableUserSelectHack:!0,onStart:function(){},onDrag:function(){},onStop:function(){},onMouseDown:function(){},scale:1};var ff=class extends b.Component{constructor(e){super(e),this.onDragStart=(o,r)=>{if(Ro("Draggable: onDragStart: %j",r),this.props.onStart(o,up(this,r))===!1)return!1;this.setState({dragging:!0,dragged:!0})},this.onDrag=(o,r)=>{if(!this.state.dragging)return!1;Ro("Draggable: onDrag: %j",r);const a=up(this,r),l={x:a.x,y:a.y,slackX:0,slackY:0};if(this.props.bounds){const{x:u,y:f}=l;l.x+=this.state.slackX,l.y+=this.state.slackY;const[h,p]=hO(this,l.x,l.y);l.x=h,l.y=p,l.slackX=this.state.slackX+(u-l.x),l.slackY=this.state.slackY+(f-l.y),a.x=l.x,a.y=l.y,a.deltaX=l.x-this.state.x,a.deltaY=l.y-this.state.y}if(this.props.onDrag(o,a)===!1)return!1;this.setState(l)},this.onDragStop=(o,r)=>{if(!this.state.dragging||this.props.onStop(o,up(this,r))===!1)return!1;Ro("Draggable: onDragStop: %j",r);const l={dragging:!1,slackX:0,slackY:0};if(!!this.props.position){const{x:u,y:f}=this.props.position;l.x=u,l.y=f}this.setState(l)},this.state={dragging:!1,dragged:!1,x:e.position?e.position.x:e.defaultPosition.x,y:e.position?e.position.y:e.defaultPosition.y,prevPropsPosition:{...e.position},slackX:0,slackY:0,isElementSVG:!1},e.position&&!(e.onDrag||e.onStop)&&console.warn("A `position` was applied to this , without drag handlers. This will make this component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the `position` of this element.")}static getDerivedStateFromProps({position:e},{prevPropsPosition:o}){return e&&(!o||e.x!==o.x||e.y!==o.y)?(Ro("Draggable: getDerivedStateFromProps %j",{position:e,prevPropsPosition:o}),{x:e.x,y:e.y,prevPropsPosition:{...e}}):null}componentDidMount(){typeof window.SVGElement<"u"&&this.findDOMNode()instanceof window.SVGElement&&this.setState({isElementSVG:!0})}componentWillUnmount(){this.state.dragging&&this.setState({dragging:!1})}findDOMNode(){var e;if((e=this.props)!=null&&e.nodeRef)return this.props.nodeRef.current;const o=Sa;return typeof o.findDOMNode=="function"?o.findDOMNode(this):null}render(){const{axis:e,bounds:o,children:r,defaultPosition:a,defaultClassName:l,defaultClassNameDragging:c,defaultClassNameDragged:u,position:f,positionOffset:h,scale:p,...g}=this.props;let v={},x=null;const E=!!!f||this.state.dragging,C=f||a,R={x:pO(this)&&E?this.state.x:C.x,y:mO(this)&&E?this.state.y:C.y};this.state.isElementSVG?x=iO(R,h):v=aO(R,h);const T=b.Children.only(r),z=zt(T.props.className||"",l,{[c]:this.state.dragging,[u]:this.state.dragged});return b.createElement(sl,{...g,onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop},b.cloneElement(T,{className:z,style:{...T.props.style,...v},transform:x}))}};ff.displayName="Draggable";ff.propTypes={...sl.propTypes,axis:je.oneOf(["both","x","y","none"]),bounds:je.oneOfType([je.shape({left:je.number,right:je.number,top:je.number,bottom:je.number}),je.string,je.oneOf([!1])]),defaultClassName:je.string,defaultClassNameDragging:je.string,defaultClassNameDragged:je.string,defaultPosition:je.shape({x:je.number,y:je.number}),positionOffset:je.shape({x:je.oneOfType([je.number,je.string]),y:je.oneOfType([je.number,je.string])}),position:je.shape({x:je.number,y:je.number}),className:Li,style:Li,transform:Li};ff.defaultProps={...sl.defaultProps,axis:"both",bounds:!1,defaultClassName:"react-draggable",defaultClassNameDragging:"react-draggable-dragging",defaultClassNameDragged:"react-draggable-dragged",defaultPosition:{x:0,y:0},scale:1};var vO=ff,Lt=function(){return Lt=Object.assign||function(e){for(var o,r=1,a=arguments.length;r"u"?void 0:Number(a),maxHeight:typeof l>"u"?void 0:Number(l),minWidth:typeof c>"u"?void 0:Number(c),minHeight:typeof u>"u"?void 0:Number(u)}},EO=function(e){return Array.isArray(e)?e:[e,e]},RO=["as","ref","style","className","grid","gridGap","snap","bounds","boundsByDirection","size","defaultSize","minWidth","minHeight","maxWidth","maxHeight","lockAspectRatio","lockAspectRatioExtraWidth","lockAspectRatioExtraHeight","enable","handleStyles","handleClasses","handleWrapperStyle","handleWrapperClass","children","onResizeStart","onResize","onResizeStop","handleComponent","scale","resizeRatio","snapGap"],W1="__resizable_base__",TO=(function(e){xO(o,e);function o(r){var a,l,c,u,f=e.call(this,r)||this;return f.ratio=1,f.resizable=null,f.parentLeft=0,f.parentTop=0,f.resizableLeft=0,f.resizableRight=0,f.resizableTop=0,f.resizableBottom=0,f.targetLeft=0,f.targetTop=0,f.delta={width:0,height:0},f.appendBase=function(){if(!f.resizable||!f.window)return null;var h=f.parentNode;if(!h)return null;var p=f.window.document.createElement("div");return p.style.width="100%",p.style.height="100%",p.style.position="absolute",p.style.transform="scale(0, 0)",p.style.left="0",p.style.flex="0 0 100%",p.classList?p.classList.add(W1):p.className+=W1,h.appendChild(p),p},f.removeBase=function(h){var p=f.parentNode;p&&p.removeChild(h)},f.state={isResizing:!1,width:(l=(a=f.propsSize)===null||a===void 0?void 0:a.width)!==null&&l!==void 0?l:"auto",height:(u=(c=f.propsSize)===null||c===void 0?void 0:c.height)!==null&&u!==void 0?u:"auto",direction:"right",original:{x:0,y:0,width:0,height:0},backgroundStyle:{height:"100%",width:"100%",backgroundColor:"rgba(0,0,0,0)",cursor:"auto",opacity:0,position:"fixed",zIndex:9999,top:"0",left:"0",bottom:"0",right:"0"},flexBasis:void 0},f.onResizeStart=f.onResizeStart.bind(f),f.onMouseMove=f.onMouseMove.bind(f),f.onMouseUp=f.onMouseUp.bind(f),f}return Object.defineProperty(o.prototype,"parentNode",{get:function(){return this.resizable?this.resizable.parentNode:null},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"window",{get:function(){return!this.resizable||!this.resizable.ownerDocument?null:this.resizable.ownerDocument.defaultView},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"propsSize",{get:function(){return this.props.size||this.props.defaultSize||SO},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"size",{get:function(){var r=0,a=0;if(this.resizable&&this.window){var l=this.resizable.offsetWidth,c=this.resizable.offsetHeight,u=this.resizable.style.position;u!=="relative"&&(this.resizable.style.position="relative"),r=this.resizable.style.width!=="auto"?this.resizable.offsetWidth:l,a=this.resizable.style.height!=="auto"?this.resizable.offsetHeight:c,this.resizable.style.position=u}return{width:r,height:a}},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"sizeStyle",{get:function(){var r=this,a=this.props.size,l=function(f){var h;if(typeof r.state[f]>"u"||r.state[f]==="auto")return"auto";if(r.propsSize&&r.propsSize[f]&&(!((h=r.propsSize[f])===null||h===void 0)&&h.toString().endsWith("%"))){if(r.state[f].toString().endsWith("%"))return r.state[f].toString();var p=r.getParentSize(),g=Number(r.state[f].toString().replace("px","")),v=g/p[f]*100;return"".concat(v,"%")}return fp(r.state[f])},c=a&&typeof a.width<"u"&&!this.state.isResizing?fp(a.width):l("width"),u=a&&typeof a.height<"u"&&!this.state.isResizing?fp(a.height):l("height");return{width:c,height:u}},enumerable:!1,configurable:!0}),o.prototype.getParentSize=function(){if(!this.parentNode)return this.window?{width:this.window.innerWidth,height:this.window.innerHeight}:{width:0,height:0};var r=this.appendBase();if(!r)return{width:0,height:0};var a=!1,l=this.parentNode.style.flexWrap;l!=="wrap"&&(a=!0,this.parentNode.style.flexWrap="wrap"),r.style.position="relative",r.style.minWidth="100%",r.style.minHeight="100%";var c={width:r.offsetWidth,height:r.offsetHeight};return a&&(this.parentNode.style.flexWrap=l),this.removeBase(r),c},o.prototype.bindEvents=function(){this.window&&(this.window.addEventListener("mouseup",this.onMouseUp),this.window.addEventListener("mousemove",this.onMouseMove),this.window.addEventListener("mouseleave",this.onMouseUp),this.window.addEventListener("touchmove",this.onMouseMove,{capture:!0,passive:!1}),this.window.addEventListener("touchend",this.onMouseUp))},o.prototype.unbindEvents=function(){this.window&&(this.window.removeEventListener("mouseup",this.onMouseUp),this.window.removeEventListener("mousemove",this.onMouseMove),this.window.removeEventListener("mouseleave",this.onMouseUp),this.window.removeEventListener("touchmove",this.onMouseMove,!0),this.window.removeEventListener("touchend",this.onMouseUp))},o.prototype.componentDidMount=function(){if(!(!this.resizable||!this.window)){var r=this.window.getComputedStyle(this.resizable);this.setState({width:this.state.width||this.size.width,height:this.state.height||this.size.height,flexBasis:r.flexBasis!=="auto"?r.flexBasis:void 0})}},o.prototype.componentWillUnmount=function(){this.window&&this.unbindEvents()},o.prototype.createSizeForCssProperty=function(r,a){var l=this.propsSize&&this.propsSize[a];return this.state[a]==="auto"&&this.state.original[a]===r&&(typeof l>"u"||l==="auto")?"auto":r},o.prototype.calculateNewMaxFromBoundary=function(r,a){var l=this.props.boundsByDirection,c=this.state.direction,u=l&&_i("left",c),f=l&&_i("top",c),h,p;if(this.props.bounds==="parent"){var g=this.parentNode;g&&(h=u?this.resizableRight-this.parentLeft:g.offsetWidth+(this.parentLeft-this.resizableLeft),p=f?this.resizableBottom-this.parentTop:g.offsetHeight+(this.parentTop-this.resizableTop))}else this.props.bounds==="window"?this.window&&(h=u?this.resizableRight:this.window.innerWidth-this.resizableLeft,p=f?this.resizableBottom:this.window.innerHeight-this.resizableTop):this.props.bounds&&(h=u?this.resizableRight-this.targetLeft:this.props.bounds.offsetWidth+(this.targetLeft-this.resizableLeft),p=f?this.resizableBottom-this.targetTop:this.props.bounds.offsetHeight+(this.targetTop-this.resizableTop));return h&&Number.isFinite(h)&&(r=r&&r"u"?10:c.width,v=typeof l.width>"u"||l.width<0?r:l.width,x=typeof c.height>"u"?10:c.height,S=typeof l.height>"u"||l.height<0?a:l.height,E=h||0,C=p||0;if(f){var R=(x-E)*this.ratio+C,T=(S-E)*this.ratio+C,z=(g-C)/this.ratio+E,A=(v-C)/this.ratio+E,N=Math.max(g,R),B=Math.min(v,T),M=Math.max(x,z),$=Math.min(S,A);r=eu(r,N,B),a=eu(a,M,$)}else r=eu(r,g,v),a=eu(a,x,S);return{newWidth:r,newHeight:a}},o.prototype.setBoundingClientRect=function(){var r=1/(this.props.scale||1);if(this.props.bounds==="parent"){var a=this.parentNode;if(a){var l=a.getBoundingClientRect();this.parentLeft=l.left*r,this.parentTop=l.top*r}}if(this.props.bounds&&typeof this.props.bounds!="string"){var c=this.props.bounds.getBoundingClientRect();this.targetLeft=c.left*r,this.targetTop=c.top*r}if(this.resizable){var u=this.resizable.getBoundingClientRect(),f=u.left,h=u.top,p=u.right,g=u.bottom;this.resizableLeft=f*r,this.resizableRight=p*r,this.resizableTop=h*r,this.resizableBottom=g*r}},o.prototype.onResizeStart=function(r,a){if(!(!this.resizable||!this.window)){var l=0,c=0;if(r.nativeEvent&&wO(r.nativeEvent)?(l=r.nativeEvent.clientX,c=r.nativeEvent.clientY):r.nativeEvent&&tu(r.nativeEvent)&&(l=r.nativeEvent.touches[0].clientX,c=r.nativeEvent.touches[0].clientY),this.props.onResizeStart&&this.resizable){var u=this.props.onResizeStart(r,a,this.resizable);if(u===!1)return}this.props.size&&(typeof this.props.size.height<"u"&&this.props.size.height!==this.state.height&&this.setState({height:this.props.size.height}),typeof this.props.size.width<"u"&&this.props.size.width!==this.state.width&&this.setState({width:this.props.size.width})),this.ratio=typeof this.props.lockAspectRatio=="number"?this.props.lockAspectRatio:this.size.width/this.size.height;var f,h=this.window.getComputedStyle(this.resizable);if(h.flexBasis!=="auto"){var p=this.parentNode;if(p){var g=this.window.getComputedStyle(p).flexDirection;this.flexDir=g.startsWith("row")?"row":"column",f=h.flexBasis}}this.setBoundingClientRect(),this.bindEvents();var v={original:{x:l,y:c,width:this.size.width,height:this.size.height},isResizing:!0,backgroundStyle:Eo(Eo({},this.state.backgroundStyle),{cursor:this.window.getComputedStyle(r.target).cursor||"auto"}),direction:a,flexBasis:f};this.setState(v)}},o.prototype.onMouseMove=function(r){var a=this;if(!(!this.state.isResizing||!this.resizable||!this.window)){if(this.window.TouchEvent&&tu(r))try{r.preventDefault(),r.stopPropagation()}catch{}var l=this.props,c=l.maxWidth,u=l.maxHeight,f=l.minWidth,h=l.minHeight,p=tu(r)?r.touches[0].clientX:r.clientX,g=tu(r)?r.touches[0].clientY:r.clientY,v=this.state,x=v.direction,S=v.original,E=v.width,C=v.height,R=this.getParentSize(),T=CO(R,this.window.innerWidth,this.window.innerHeight,c,u,f,h);c=T.maxWidth,u=T.maxHeight,f=T.minWidth,h=T.minHeight;var z=this.calculateNewSizeFromDirection(p,g),A=z.newHeight,N=z.newWidth,B=this.calculateNewMaxFromBoundary(c,u);this.props.snap&&this.props.snap.x&&(N=K1(N,this.props.snap.x,this.props.snapGap)),this.props.snap&&this.props.snap.y&&(A=K1(A,this.props.snap.y,this.props.snapGap));var M=this.calculateNewSizeFromAspectRatio(N,A,{width:B.maxWidth,height:B.maxHeight},{width:f,height:h});if(N=M.newWidth,A=M.newHeight,this.props.grid){var $=Q1(N,this.props.grid[0],this.props.gridGap?this.props.gridGap[0]:0),L=Q1(A,this.props.grid[1],this.props.gridGap?this.props.gridGap[1]:0),H=this.props.snapGap||0,I=H===0||Math.abs($-N)<=H?$:N,Y=H===0||Math.abs(L-A)<=H?L:A;N=I,A=Y}var X={width:N-S.width,height:A-S.height};if(this.delta=X,E&&typeof E=="string"){if(E.endsWith("%")){var ee=N/R.width*100;N="".concat(ee,"%")}else if(E.endsWith("vw")){var ne=N/this.window.innerWidth*100;N="".concat(ne,"vw")}else if(E.endsWith("vh")){var re=N/this.window.innerHeight*100;N="".concat(re,"vh")}}if(C&&typeof C=="string"){if(C.endsWith("%")){var ee=A/R.height*100;A="".concat(ee,"%")}else if(C.endsWith("vw")){var ne=A/this.window.innerWidth*100;A="".concat(ne,"vw")}else if(C.endsWith("vh")){var re=A/this.window.innerHeight*100;A="".concat(re,"vh")}}var j={width:this.createSizeForCssProperty(N,"width"),height:this.createSizeForCssProperty(A,"height")};this.flexDir==="row"?j.flexBasis=j.width:this.flexDir==="column"&&(j.flexBasis=j.height);var k=this.state.width!==j.width,V=this.state.height!==j.height,P=this.state.flexBasis!==j.flexBasis,Z=k||V||P;Z&&co.flushSync(function(){a.setState(j)}),this.props.onResize&&Z&&this.props.onResize(r,x,this.resizable,X)}},o.prototype.onMouseUp=function(r){var a,l,c=this.state,u=c.isResizing,f=c.direction;c.original,!(!u||!this.resizable)&&(this.props.onResizeStop&&this.props.onResizeStop(r,f,this.resizable,this.delta),this.props.size&&this.setState({width:(a=this.props.size.width)!==null&&a!==void 0?a:"auto",height:(l=this.props.size.height)!==null&&l!==void 0?l:"auto"}),this.unbindEvents(),this.setState({isResizing:!1,backgroundStyle:Eo(Eo({},this.state.backgroundStyle),{cursor:"auto"})}))},o.prototype.updateSize=function(r){var a,l;this.setState({width:(a=r.width)!==null&&a!==void 0?a:"auto",height:(l=r.height)!==null&&l!==void 0?l:"auto"})},o.prototype.renderResizer=function(){var r=this,a=this.props,l=a.enable,c=a.handleStyles,u=a.handleClasses,f=a.handleWrapperStyle,h=a.handleWrapperClass,p=a.handleComponent;if(!l)return null;var g=Object.keys(l).map(function(v){return l[v]!==!1?y.jsx(bO,{direction:v,onResizeStart:r.onResizeStart,replaceStyles:c&&c[v],className:u&&u[v],children:p&&p[v]?p[v]:null},v):null});return y.jsx("div",{className:h,style:f,children:g})},o.prototype.render=function(){var r=this,a=Object.keys(this.props).reduce(function(u,f){return RO.indexOf(f)!==-1||(u[f]=r.props[f]),u},{}),l=Eo(Eo(Eo({position:"relative",userSelect:this.state.isResizing?"none":"auto"},this.props.style),this.sizeStyle),{maxWidth:this.props.maxWidth,maxHeight:this.props.maxHeight,minWidth:this.props.minWidth,minHeight:this.props.minHeight,boxSizing:"border-box",flexShrink:0});this.state.flexBasis&&(l.flexBasis=this.state.flexBasis);var c=this.props.as||"div";return y.jsxs(c,Eo({style:l,className:this.props.className},a,{ref:function(u){u&&(r.resizable=u)},children:[this.state.isResizing&&y.jsx("div",{style:this.state.backgroundStyle}),this.props.children,this.renderResizer()]}))},o.defaultProps={as:"div",onResizeStart:function(){},onResize:function(){},onResizeStop:function(){},enable:{top:!0,right:!0,bottom:!0,left:!0,topRight:!0,bottomRight:!0,bottomLeft:!0,topLeft:!0},style:{},grid:[1,1],gridGap:[0,0],lockAspectRatio:!1,lockAspectRatioExtraWidth:0,lockAspectRatioExtraHeight:0,scale:1,resizeRatio:1,snapGap:0},o})(b.PureComponent);var Yp=function(e,o){return Yp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,a){r.__proto__=a}||function(r,a){for(var l in a)a.hasOwnProperty(l)&&(r[l]=a[l])},Yp(e,o)};function _O(e,o){Yp(e,o);function r(){this.constructor=e}e.prototype=o===null?Object.create(o):(r.prototype=o.prototype,new r)}var Pt=function(){return Pt=Object.assign||function(o){for(var r,a=1,l=arguments.length;a"u"?Number.MAX_SAFE_INTEGER:this.props.maxWidth,a=typeof this.props.maxHeight>"u"?Number.MAX_SAFE_INTEGER:this.props.maxHeight;return{maxWidth:r,maxHeight:a}},o.prototype.getSelfElement=function(){return this.resizable&&this.resizable.resizable},o.prototype.getOffsetHeight=function(r){var a=this.props.scale;switch(this.props.bounds){case"window":return window.innerHeight/a;case"body":return document.body.offsetHeight/a;default:return r.offsetHeight}},o.prototype.getOffsetWidth=function(r){var a=this.props.scale;switch(this.props.bounds){case"window":return window.innerWidth/a;case"body":return document.body.offsetWidth/a;default:return r.offsetWidth}},o.prototype.onDragStart=function(r,a){if(this.props.onDragStart&&this.props.onDragStart(r,a)===!1)return!1;var l=this.getDraggablePosition();if(this.originalPosition=l,!!this.props.bounds){var c=this.getParent(),u=this.props.scale,f;if(this.props.bounds==="parent")f=c;else if(this.props.bounds==="body"){var h=c.getBoundingClientRect(),p=h.left,g=h.top,v=document.body.getBoundingClientRect(),x=-(p-c.offsetLeft*u-v.left)/u,S=-(g-c.offsetTop*u-v.top)/u,E=(document.body.offsetWidth-this.resizable.size.width*u)/u+x,C=(document.body.offsetHeight-this.resizable.size.height*u)/u+S;return this.setState({bounds:{top:S,right:E,bottom:C,left:x}})}else if(this.props.bounds==="window"){if(!this.resizable)return;var R=c.getBoundingClientRect(),T=R.left,z=R.top,A=-(T-c.offsetLeft*u)/u,N=-(z-c.offsetTop*u)/u,E=(window.innerWidth-this.resizable.size.width*u)/u+A,C=(window.innerHeight-this.resizable.size.height*u)/u+N;return this.setState({bounds:{top:N,right:E,bottom:C,left:A}})}else typeof this.props.bounds=="string"?f=document.querySelector(this.props.bounds):this.props.bounds instanceof HTMLElement&&(f=this.props.bounds);if(!(!(f instanceof HTMLElement)||!(c instanceof HTMLElement))){var B=f.getBoundingClientRect(),M=B.left,$=B.top,L=c.getBoundingClientRect(),H=L.left,I=L.top,Y=(M-H)/u,X=$-I;if(this.resizable){this.updateOffsetFromParent();var ee=this.offsetFromParent;this.setState({bounds:{top:X-ee.top,right:Y+(f.offsetWidth-this.resizable.size.width)-ee.left/u,bottom:X+(f.offsetHeight-this.resizable.size.height)-ee.top,left:Y-ee.left/u}})}}}},o.prototype.onDrag=function(r,a){if(this.props.onDrag){var l=this.offsetFromParent,c=l.left,u=l.top;if(!this.props.dragAxis||this.props.dragAxis==="both")return this.props.onDrag(r,Pt(Pt({},a),{x:a.x+c,y:a.y+u}));if(this.props.dragAxis==="x")return this.props.onDrag(r,Pt(Pt({},a),{x:a.x+c,y:this.originalPosition.y+u,deltaY:0}));if(this.props.dragAxis==="y")return this.props.onDrag(r,Pt(Pt({},a),{x:this.originalPosition.x+c,y:a.y+u,deltaX:0}))}},o.prototype.onDragStop=function(r,a){if(this.props.onDragStop){var l=this.offsetFromParent,c=l.left,u=l.top;if(!this.props.dragAxis||this.props.dragAxis==="both")return this.props.onDragStop(r,Pt(Pt({},a),{x:a.x+c,y:a.y+u}));if(this.props.dragAxis==="x")return this.props.onDragStop(r,Pt(Pt({},a),{x:a.x+c,y:this.originalPosition.y+u,deltaY:0}));if(this.props.dragAxis==="y")return this.props.onDragStop(r,Pt(Pt({},a),{x:this.originalPosition.x+c,y:a.y+u,deltaX:0}))}},o.prototype.onResizeStart=function(r,a,l){if(this.props.onResizeStart&&this.props.onResizeStart(r,a,l)===!1)return!1;r.stopPropagation(),this.setState({resizing:!0});var c=this.props.scale,u=this.offsetFromParent,f=this.getDraggablePosition();if(this.resizingPosition={x:f.x+u.left,y:f.y+u.top},this.originalPosition=f,this.props.bounds){var h=this.getParent(),p=void 0;this.props.bounds==="parent"?p=h:this.props.bounds==="body"?p=document.body:this.props.bounds==="window"?p=window:typeof this.props.bounds=="string"?p=document.querySelector(this.props.bounds):this.props.bounds instanceof HTMLElement&&(p=this.props.bounds);var g=this.getSelfElement();if(g instanceof Element&&(p instanceof HTMLElement||p===window)&&h instanceof HTMLElement){var v=this.getMaxSizesFromProps(),x=v.maxWidth,S=v.maxHeight,E=this.getParentSize();if(x&&typeof x=="string")if(x.endsWith("%")){var C=Number(x.replace("%",""))/100;x=E.width*C}else x.endsWith("px")&&(x=Number(x.replace("px","")));if(S&&typeof S=="string")if(S.endsWith("%")){var C=Number(S.replace("%",""))/100;S=E.height*C}else S.endsWith("px")&&(S=Number(S.replace("px","")));var R=g.getBoundingClientRect(),T=R.left,z=R.top,A=this.props.bounds==="window"?{left:0,top:0}:p.getBoundingClientRect(),N=A.left,B=A.top,M=this.getOffsetWidth(p),$=this.getOffsetHeight(p),L=a.toLowerCase().endsWith("left"),H=a.toLowerCase().endsWith("right"),I=a.startsWith("top"),Y=a.startsWith("bottom");if((L||I)&&this.resizable){var X=(T-N)/c+this.resizable.size.width;this.setState({maxWidth:X>Number(x)?x:X})}if(H||this.props.lockAspectRatio&&!L&&!I){var X=M+(N-T)/c;this.setState({maxWidth:X>Number(x)?x:X})}if((I||L)&&this.resizable){var X=(z-B)/c+this.resizable.size.height;this.setState({maxHeight:X>Number(S)?S:X})}if(Y||this.props.lockAspectRatio&&!I&&!L){var X=$+(B-z)/c;this.setState({maxHeight:X>Number(S)?S:X})}}}else this.setState({maxWidth:this.props.maxWidth,maxHeight:this.props.maxHeight})},o.prototype.onResize=function(r,a,l,c){var u=this,f={x:this.originalPosition.x,y:this.originalPosition.y},h=-c.width,p=-c.height,g=["top","left","topLeft","bottomLeft","topRight"];g.includes(a)&&(a==="bottomLeft"?f.x+=h:(a==="topRight"||(f.x+=h),f.y+=p));var v=this.draggable.state;(f.x!==v.x||f.y!==v.y)&&co.flushSync(function(){u.draggable.setState(f)}),this.updateOffsetFromParent();var x=this.offsetFromParent,S=this.getDraggablePosition().x+x.left,E=this.getDraggablePosition().y+x.top;this.resizingPosition={x:S,y:E},this.props.onResize&&this.props.onResize(r,a,l,c,{x:S,y:E})},o.prototype.onResizeStop=function(r,a,l,c){this.setState({resizing:!1});var u=this.getMaxSizesFromProps(),f=u.maxWidth,h=u.maxHeight;this.setState({maxWidth:f,maxHeight:h}),this.props.onResizeStop&&this.props.onResizeStop(r,a,l,c,this.resizingPosition)},o.prototype.updateSize=function(r){this.resizable&&this.resizable.updateSize({width:r.width,height:r.height})},o.prototype.updatePosition=function(r){this.draggable.setState(r)},o.prototype.updateOffsetFromParent=function(){var r=this.props.scale,a=this.getParent(),l=this.getSelfElement();if(!a||l===null)return{top:0,left:0};var c=a.getBoundingClientRect(),u=c.left,f=c.top,h=l.getBoundingClientRect(),p=this.getDraggablePosition(),g=a.scrollLeft,v=a.scrollTop;this.offsetFromParent={left:h.left-u+g-p.x*r,top:h.top-f+v-p.y*r}},o.prototype.render=function(){var r=this,a=this.props,l=a.disableDragging,c=a.style,u=a.dragHandleClassName,f=a.position,h=a.onMouseDown,p=a.onMouseUp,g=a.dragAxis,v=a.dragGrid,x=a.bounds,S=a.enableUserSelectHack,E=a.cancel,C=a.children;a.onResizeStart,a.onResize,a.onResizeStop,a.onDragStart,a.onDrag,a.onDragStop;var R=a.resizeHandleStyles,T=a.resizeHandleClasses,z=a.resizeHandleComponent,A=a.enableResizing,N=a.resizeGrid,B=a.resizeHandleWrapperClass,M=a.resizeHandleWrapperStyle,$=a.scale,L=a.allowAnyClick,H=a.dragPositionOffset,I=DO(a,["disableDragging","style","dragHandleClassName","position","onMouseDown","onMouseUp","dragAxis","dragGrid","bounds","enableUserSelectHack","cancel","children","onResizeStart","onResize","onResizeStop","onDragStart","onDrag","onDragStop","resizeHandleStyles","resizeHandleClasses","resizeHandleComponent","enableResizing","resizeGrid","resizeHandleWrapperClass","resizeHandleWrapperStyle","scale","allowAnyClick","dragPositionOffset"]),Y=this.props.default?Pt({},this.props.default):void 0;delete I.default;var X=l||u?{cursor:"auto"}:{cursor:"move"},ee=Pt(Pt(Pt({},NO),X),c),ne=this.offsetFromParent,re=ne.left,j=ne.top,k;f&&(k={x:f.x-re,y:f.y-j});var V=this.state.resizing?void 0:k,P=this.state.resizing?"both":g;return b.createElement(vO,{ref:function(Z){Z&&(r.draggable=Z)},handle:u?".".concat(u):void 0,defaultPosition:Y,onMouseDown:h,onMouseUp:p,onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop,axis:P,disabled:l,grid:v,bounds:x?this.state.bounds:void 0,position:V,enableUserSelectHack:S,cancel:E,scale:$,allowAnyClick:L,nodeRef:this.resizableElement,positionOffset:H},b.createElement(TO,Pt({},I,{ref:function(Z){Z&&(r.resizable=Z,r.resizableElement.current=Z.resizable)},defaultSize:Y,size:this.props.size,enable:typeof A=="boolean"?AO(A):A,onResizeStart:this.onResizeStart,onResize:this.onResize,onResizeStop:this.onResizeStop,style:ee,minWidth:this.props.minWidth,minHeight:this.props.minHeight,maxWidth:this.state.resizing?this.state.maxWidth:this.props.maxWidth,maxHeight:this.state.resizing?this.state.maxHeight:this.props.maxHeight,grid:N,handleWrapperClass:B,handleWrapperStyle:M,lockAspectRatio:this.props.lockAspectRatio,lockAspectRatioExtraWidth:this.props.lockAspectRatioExtraWidth,lockAspectRatioExtraHeight:this.props.lockAspectRatioExtraHeight,handleStyles:R,handleClasses:T,handleComponent:z,scale:this.props.scale}),C))},o.defaultProps={maxWidth:Number.MAX_SAFE_INTEGER,maxHeight:Number.MAX_SAFE_INTEGER,scale:1,onResizeStart:function(){},onResize:function(){},onResizeStop:function(){},onDragStart:function(){},onDrag:function(){},onDragStop:function(){}},o})(b.PureComponent);const CC=1920,EC=1080;function Di(e){const o=Math.round(e);return o-o%2}function RC(e,o,r=CC,a=EC){const{x:l,y:c,w:u,h:f,valign:h="center",halign:p="center"}=e,g=e.direction==="vertical",v=u*r,x=f*a,S=[];if(g){const E=Di(c*a),C=Di(Math.min(x/o,v*9/16)),R=C*o,T=x,z=Di(h==="top"?0:h==="bottom"?T-R:(T-R)/2),A=C/a;for(let N=0;N0?S*g/2:0,C=[];for(let R=0;R0,N=r+T*g+(A?E:0),B=a+z*v;C.push([N,B,g,v,u,f])}return C}function TC(e,o){const r=new Array(o.length).fill(0),a=o.map(u=>u.max!=null?u.max:null),l=new Set(o.map((u,f)=>f));let c=e;for(;c>0&&l.size>0;){const u=Math.floor(c/l.size);if(u===0){for(const h of[...l].sort((p,g)=>p-g).slice(0,c))r[h]+=1;break}let f=!1;for(const h of[...l]){const p=a[h],g=p!=null?p-r[h]:null,v=g!=null?Math.min(u,g):u;v>0&&(r[h]+=v,c-=v,f=!0),p!=null&&r[h]>=p&&l.delete(h)}if(!f)break}return r}function OO(e,o,r=CC,a=EC){const l=e.filter(v=>v.type==="static"),c=e.filter(v=>v.type==="row"||v.type==="grid"),u=Math.max(0,o-l.length);if(u>0&&c.length===0)return null;const f=TC(u,c),h=[];let p=0,g=0;for(const v of e){if(p>=o)break;if(v.type==="static")h.push([v.x,v.y,v.w,v.h,v.valign??"center",v.halign??"center"]),p+=1;else if(v.type==="row"||v.type==="grid"){const x=f[g];if(g+=1,x<=0)continue;h.push(...v.type==="row"?RC(v,x,r,a):MO(v,x)),p+=x}}return p({value:p,match:jO(p,r,a)})).filter(p=>p.match);if(!l.length)return{pos:e,guides:[]};const c=l.reduce((p,g)=>p.match.dist<=g.match.dist?p:g),u=c.match.target-c.value,f=e+u,h=[];for(const p of l)Math.abs(p.value+u-p.match.target)<=a&&h.push(p.match.target);return{pos:f,guides:h}}function BO(e,o,r,a=8){const{x:l,y:c,w:u,h:f}=e,h=[],p=J1(l,[l,l+u/2,l+u],o,a);for(const v of p.guides)h.push({axis:"x",pos:v});const g=J1(c,[c,c+f/2,c+f],r,a);for(const v of g.guides)h.push({axis:"y",pos:v});return{x:p.pos,y:g.pos,w:u,h:f,guides:h}}function $O({canvasW:e,canvasH:o,others:r,subdivisions:a,snapToCanvas:l,snapToElements:c}){const u=[],f=[];if(l&&(u.push(0,e/2,e),f.push(0,o/2,o)),c){for(const h of r)u.push(h.x,h.x+h.w/2,h.x+h.w),f.push(h.y,h.y+h.h/2,h.y+h.h);for(const h of a??[])h.axis==="x"?u.push(h.pos*e):f.push(h.pos*o)}return{targetsX:u,targetsY:f}}function _C(e){return new Promise((o,r)=>{const a=new FileReader;a.onload=()=>o(a.result.split(",")[1]),a.onerror=()=>r(new Error("Failed to read file")),a.readAsDataURL(e)})}const ex={static:"Static",row:"Auto Row",grid:"Auto Grid"},LO={static:{border:"1px solid var(--mantine-color-blue-5)",background:"rgba(51, 154, 240, 0.15)"},row:{border:"2px dashed var(--mantine-color-teal-5)",background:"rgba(18, 184, 134, 0.12)"},grid:{border:"2px dotted var(--mantine-color-orange-5)",background:"rgba(253, 126, 20, 0.12)"}},ou={background:"var(--mantine-color-yellow-5)",border:"1px solid rgba(0, 0, 0, 0.4)",borderRadius:"50%"},kO={topLeft:ou,topRight:ou,bottomLeft:ou,bottomRight:ou},ru=[{value:"auto",label:"Auto Grid"},{value:"featured",label:"Featured"},{value:"top_featured",label:"Top Featured"}],HO={auto:[{id:"b-grid",type:"grid",x:0,y:0,w:1,h:1,valign:"center",halign:"center"}],featured:[{id:"b-main",type:"static",x:0,y:0,w:.6,h:1,valign:"center",halign:"center"},{id:"b-side",type:"row",direction:"vertical",x:.6,y:0,w:.4,h:1,valign:"center",halign:"center"}],top_featured:[{id:"b-main",type:"static",x:0,y:0,w:1,h:.6,valign:"center",halign:"center"},{id:"b-bottom",type:"row",direction:"horizontal",x:0,y:.6,w:1,h:.4,valign:"center",halign:"center"}]},DC=4,tx=Up.map(e=>({value:e,label:e}));function nx(e,o){const r=e.filter(f=>f.type==="static"),a=e.filter(f=>f.type==="row"||f.type==="grid"),l=Math.max(0,o-r.length),c=TC(l,a),u=[];return a.forEach((f,h)=>{const p=c[h];if(p<=1)return;const g=f.x,v=f.y,x=f.x+f.w,S=f.y+f.h;if(f.type==="grid"){const M=Math.ceil(Math.sqrt(p)),$=Math.ceil(p/M);for(let L=1;LM-$),A=[...R].sort((M,$)=>M-$),N=z[0]??g,B=A[0]??v;for(const M of z)M>N+T&&u.push({axis:"x",pos:M,from:v,to:S});for(const M of A)M>B+T&&u.push({axis:"y",pos:M,from:g,to:x})}),u}function UO(){const[e,o]=b.useState(null),[r,a]=b.useState(null);return b.useEffect(()=>{if(!e)return;const l=new ResizeObserver(c=>{const{width:u,height:f}=c[0].contentRect;u>0&&f>0&&a({width:Math.round(u),height:Math.round(f)})});return l.observe(e),()=>l.disconnect()},[e]),[r,o]}function zi(e){return e<=.001?0:e>=1-.001?1:e}function ox({x:e,y:o,w:r,h:a}){return{x:zi(e),y:zi(o),w:zi(r),h:zi(a)}}function PO(e,o){const r=1.7777777777777777;let a=e,l=a/r;return l>o&&(l=o,a=l*r),{width:Math.round(a),height:Math.round(l)}}function NC({tiles:e}){return y.jsx("div",{style:{position:"relative",width:160,height:90,background:"var(--mantine-color-dark-6)",border:"1px solid var(--mantine-color-dark-4)",flexShrink:0},children:(e??[]).map((o,r)=>y.jsx("div",{style:{position:"absolute",left:`${o[0]*100}%`,top:`${o[1]*100}%`,width:`${o[2]*100}%`,height:`${o[3]*100}%`,border:"1px solid var(--mantine-color-blue-5)",background:"rgba(51, 154, 240, 0.15)",boxSizing:"border-box"}},r))})}function VO({elements:e,selectedIdx:o,onSelect:r,onElementChange:a,backgroundUrl:l,previewCountNum:c,snapToCanvas:u,snapToElements:f,canvasW:h,canvasH:p,isMobile:g,readOnly:v}){const[x,S]=b.useState([]),[E,C]=b.useState(null),R=E?e.map((B,M)=>M===E.idx?{...B,x:E.x,y:E.y,w:E.w,h:E.h}:B):e,T=nx(R,c);function z(B){return{x:B.x*h,y:B.y*p,w:B.w*h,h:B.h*p}}function A(B){return e.filter((M,$)=>$!==B).map(z)}function N(B,M){const $=nx(R.filter((I,Y)=>Y!==B),c),{targetsX:L,targetsY:H}=$O({canvasW:h,canvasH:p,others:A(B),subdivisions:$,snapToCanvas:u,snapToElements:f});return BO(M,L,H)}return y.jsxs("div",{style:{position:"relative",width:"100%",height:"100%",background:"var(--mantine-color-dark-6)",border:"1px solid var(--mantine-color-dark-4)"},children:[l&&y.jsx("img",{src:l,alt:"",style:{position:"absolute",inset:0,width:"100%",height:"100%",objectFit:"cover",pointerEvents:"none"}}),T.map((B,M)=>B.axis==="x"?y.jsx("div",{style:{position:"absolute",left:B.pos*h,top:B.from*p,width:1,height:(B.to-B.from)*p,background:"rgba(255, 255, 255, 0.3)",pointerEvents:"none"}},`sub-${M}`):y.jsx("div",{style:{position:"absolute",top:B.pos*p,left:B.from*h,height:1,width:(B.to-B.from)*h,background:"rgba(255, 255, 255, 0.3)",pointerEvents:"none"}},`sub-${M}`)),e.map((B,M)=>{const $=z(B),L=o===M;return y.jsx(zO,{bounds:"parent",size:{width:$.w,height:$.h},position:{x:$.x,y:$.y},minWidth:20,minHeight:20,lockAspectRatio:B.lockAspect?B.w*h/(B.h*p):!1,resizeHandleStyles:L&&g&&!v?kO:void 0,disableDragging:v,enableResizing:!v,onMouseDown:()=>r(M),onDrag:(H,I)=>{const Y=N(M,{x:I.x,y:I.y,w:$.w,h:$.h});S(Y.guides),C({idx:M,x:Y.x/h,y:Y.y/p,w:B.w,h:B.h})},onDragStop:(H,I)=>{const Y=N(M,{x:I.x,y:I.y,w:$.w,h:$.h});S([]),C(null),a(M,ox({x:Y.x/h,y:Y.y/p,w:B.w,h:B.h}))},onResize:(H,I,Y,X,ee)=>{const ne=N(M,{x:ee.x,y:ee.y,w:Y.offsetWidth,h:Y.offsetHeight});S(ne.guides),C({idx:M,x:ne.x/h,y:ne.y/p,w:ne.w/h,h:ne.h/p})},onResizeStop:(H,I,Y,X,ee)=>{const ne=N(M,{x:ee.x,y:ee.y,w:Y.offsetWidth,h:Y.offsetHeight});S([]),C(null),a(M,ox({x:ne.x/h,y:ne.y/p,w:ne.w/h,h:ne.h/p}))},style:{...LO[B.type],outline:L?"2px solid var(--mantine-color-yellow-5)":"none",outlineOffset:-2,display:"flex",alignItems:"center",justifyContent:"center"},children:y.jsx(Ve,{size:"xs",c:"dimmed",ta:"center",style:{userSelect:"none",pointerEvents:"none"},children:B.name||M+1})},B.id)}),x.map((B,M)=>B.axis==="x"?y.jsx("div",{style:{position:"absolute",left:B.pos,top:0,width:1,height:p,background:"var(--mantine-color-red-5)",pointerEvents:"none"}},`live-${M}`):y.jsx("div",{style:{position:"absolute",top:B.pos,left:0,height:1,width:h,background:"var(--mantine-color-red-5)",pointerEvents:"none"}},`live-${M}`))]})}function rx({style:e,styleId:o,onUpdate:r,readOnly:a=!1}){const[l,c]=b.useState(e),[u,f]=b.useState(!1);b.useEffect(()=>{c(e),f(!1)},[o]);const[h,p]=b.useState(4),[g,v]=b.useState(null),[x,S]=b.useState(null),[E,C]=b.useState(!1),[R,T]=b.useState(!1),[z,A]=b.useState(!0),[N,B]=b.useState(!0),M=b.useRef(null),[$,L]=UO(),H=Qp("(max-width: 48em)"),I=h||4,Y=l.elements??[],X=g!=null?Y[g]:null;b.useEffect(()=>{let O=!1,q=null;return l.background_image?yC(o).then(W=>{O||!W||(q=URL.createObjectURL(W),S(q))}):S(null),()=>{O=!0,q&&URL.revokeObjectURL(q)}},[o,l.background_image]);function ee(O){c(q=>({...q,elements:O})),f(!0)}async function ne(){T(!0);try{await r(l),f(!1)}finally{T(!1)}}async function re(O){const q=O.target.files?.[0];if(O.target.value="",!!q){C(!0);try{const W=await _C(q),ie=await vC(o,q.name,W);c(ue=>({...ue,background_image:ie.filename})),f(!0)}catch(W){Ze.show({title:"Upload failed",message:W.message,color:"red",autoClose:4e3})}finally{C(!1)}}}function j(){c(O=>({...O,background_image:null})),f(!0)}function k(O){const q={id:Na(),type:O,x:.1,y:.1,w:.3,h:.3,valign:"center",halign:"center"};O==="row"&&(q.direction="horizontal");const W=[...Y,q];ee(W),v(W.length-1)}function V(O){ee(Y.filter((q,W)=>W!==O)),g===O?v(null):g!=null&&g>O&&v(g-1)}function P(O){const q=Y[O],W={...q,id:Na(),x:zi(q.x+.02),y:zi(q.y+.02)},ie=[...Y.slice(0,O+1),W,...Y.slice(O+1)];ee(ie),v(O+1)}function Z(O,q){const W=O+q;if(W<0||W>=Y.length)return;const ie=[...Y];[ie[O],ie[W]]=[ie[W],ie[O]],ee(ie),g===O?v(W):g===W&&v(O)}function D(O,q){ee(Y.map((W,ie)=>ie===O?{...W,...q}:W))}return y.jsxs(Qt,{gap:"sm",style:{flex:1,minHeight:0},children:[y.jsxs(mt,{gap:"xs",align:"flex-end",wrap:"wrap",children:[y.jsx(Yi,{size:"xs",label:"Style name",value:l.name??"",onChange:O=>{c(q=>({...q,name:O.currentTarget.value})),f(!0)},placeholder:"Style name",disabled:a,style:{flex:H?"1 1 100%":"1 1 200px"}}),y.jsx(Ca,{size:"xs",label:"Preview channel count",min:2,max:9,value:h,onChange:O=>p(O||4),w:H?"100%":150}),y.jsx(Bi,{size:"xs",label:"Snap to elements",disabled:a,checked:z,onChange:O=>A(O.currentTarget.checked)}),y.jsx(Bi,{size:"xs",label:"Snap to canvas",disabled:a,checked:N,onChange:O=>B(O.currentTarget.checked)}),y.jsx(Dt,{size:"xs",leftSection:y.jsx(p5,{size:14}),disabled:a||!u,loading:R,color:u?"blue":"gray",variant:u?"filled":"default",onClick:ne,style:H?{flex:"1 1 100%"}:void 0,children:u?"Save":"Saved"})]}),y.jsxs(sg,{cols:H?2:4,spacing:"xs",children:[y.jsx(Dt,{size:"xs",variant:"default",leftSection:y.jsx(ls,{size:12}),disabled:a,onClick:()=>k("static"),children:"Static Position"}),y.jsx(Dt,{size:"xs",variant:"default",leftSection:y.jsx(ls,{size:12}),disabled:a,onClick:()=>k("row"),children:"Auto Row"}),y.jsx(Dt,{size:"xs",variant:"default",leftSection:y.jsx(ls,{size:12}),disabled:a,onClick:()=>k("grid"),children:"Auto Grid"}),y.jsxs(mt,{gap:4,wrap:"nowrap",children:[y.jsx(Dt,{size:"xs",variant:"default",leftSection:y.jsx(R5,{size:12}),loading:E,disabled:a,onClick:()=>M.current?.click(),style:{flex:1},children:l.background_image?"Change Background":"Background Image"}),y.jsx(Yt,{size:"sm",variant:"subtle",color:"red",disabled:a||!l.background_image,onClick:j,"aria-label":"Remove background",children:y.jsx(j5,{size:14})})]}),y.jsx("input",{ref:M,type:"file",accept:"image/png,image/jpeg",style:{display:"none"},onChange:re})]}),y.jsx(Ve,{size:"xs",c:"dimmed",children:a?Y.length===0?"This style has no representable elements at this channel count.":"Click a box or list row to inspect its properties.":Y.length===0?"Add a Static Position, Auto Row, or Auto Grid to get started.":"Drag a box to move it, drag its edge/corner to resize it. Click a box or list row to select it."}),y.jsxs(mt,{align:"stretch",gap:"sm",wrap:H?"wrap":"nowrap",style:{flex:1,minHeight:0},children:[y.jsxs(Qt,{gap:6,p:"sm",w:H?"100%":260,style:{flexShrink:0,minHeight:0,overflowY:"auto",border:"1px solid var(--mantine-color-dark-4)",borderRadius:6},children:[y.jsx(Ve,{size:"xs",fw:600,children:X?X.name||ex[X.type]:"No element selected"}),y.jsx(it,{withRowBorders:!1,verticalSpacing:4,horizontalSpacing:"xs",style:{tableLayout:"fixed",width:"100%"},children:y.jsxs(it.Tbody,{children:[y.jsxs(it.Tr,{children:[y.jsx(it.Td,{w:80,children:y.jsx(Ve,{size:"xs",c:"dimmed",children:"Direction"})}),y.jsx(it.Td,{children:y.jsx(lg,{size:"xs",fullWidth:!0,disabled:!X||a||X.type!=="row",data:[{label:"Horiz",value:"horizontal"},{label:"Vert",value:"vertical"}],value:X?.direction??"horizontal",onChange:O=>g!=null&&D(g,{direction:O})})})]}),y.jsxs(it.Tr,{children:[y.jsx(it.Td,{w:80,children:y.jsx(Ve,{size:"xs",c:"dimmed",children:"Max channels"})}),y.jsx(it.Td,{children:y.jsx(Ca,{size:"xs",placeholder:"Unlimited",disabled:!X||a||!["row","grid"].includes(X.type),min:1,value:X?.max??"",onChange:O=>g!=null&&D(g,{max:O===""?null:O})})})]}),y.jsxs(it.Tr,{children:[y.jsx(it.Td,{w:80,children:y.jsx(Ve,{size:"xs",c:"dimmed",children:"Anchor"})}),y.jsx(it.Td,{children:y.jsxs(mt,{grow:!0,gap:4,wrap:"nowrap",children:[y.jsx(Vi,{size:"xs",placeholder:"V anchor",disabled:!X||a,data:tx,value:X?.valign??null,onChange:O=>O&&g!=null&&D(g,{valign:O})}),y.jsx(Vi,{size:"xs",placeholder:"H anchor",disabled:!X||a,data:tx,value:X?.halign??null,onChange:O=>O&&g!=null&&D(g,{halign:O})})]})})]}),y.jsxs(it.Tr,{children:[y.jsx(it.Td,{w:80,children:y.jsx(Ve,{size:"xs",c:"dimmed",children:"Size"})}),y.jsx(it.Td,{children:y.jsxs(mt,{grow:!0,gap:4,wrap:"nowrap",children:[y.jsx(Ca,{size:"xs",label:"Width (px)",description:"of 1920",disabled:!X||a,min:1,value:X?Math.round(X.w*1920):"",onChange:O=>{if(!O||g==null)return;const q=O/1920;if(X.lockAspect){const W=X.w*1920/(X.h*1080);D(g,{w:q,h:O/W/1080})}else D(g,{w:q})}}),y.jsx(Ca,{size:"xs",label:"Height (px)",description:"of 1080",disabled:!X||a,min:1,value:X?Math.round(X.h*1080):"",onChange:O=>{if(!O||g==null)return;const q=O/1080;if(X.lockAspect){const W=X.w*1920/(X.h*1080);D(g,{w:O*W/1920,h:q})}else D(g,{h:q})}})]})})]}),y.jsxs(it.Tr,{children:[y.jsx(it.Td,{w:80,children:y.jsx(Ve,{size:"xs",c:"dimmed",children:"Lock aspect"})}),y.jsx(it.Td,{children:y.jsx(Bi,{size:"xs",disabled:!X||a,checked:!!X?.lockAspect,onChange:O=>g!=null&&D(g,{lockAspect:O.currentTarget.checked})})})]})]})})]}),y.jsx("div",{ref:L,style:H?{width:"100%",aspectRatio:"16 / 9"}:{flex:1,minWidth:0,minHeight:0,display:"flex",alignItems:"center",justifyContent:"center"},children:$&&(()=>{const O=PO($.width,$.height);return y.jsx("div",{style:{width:O.width,height:O.height},children:y.jsx(VO,{elements:Y,selectedIdx:g,onSelect:v,onElementChange:D,backgroundUrl:x,previewCountNum:I,snapToCanvas:N,snapToElements:z,canvasW:O.width,canvasH:O.height,isMobile:H,readOnly:a})})})()}),y.jsxs(Qt,{gap:6,p:"sm",w:H?"100%":220,style:{flexShrink:0,minHeight:0,overflowY:"auto",border:"1px solid var(--mantine-color-dark-4)",borderRadius:6},children:[y.jsx(Ve,{size:"xs",fw:600,c:"dimmed",children:"Elements"}),Y.map((O,q)=>y.jsxs(mt,{gap:4,wrap:"nowrap",onClick:()=>v(q),style:{cursor:"pointer",padding:4,borderRadius:4,background:g===q?"rgba(51, 154, 240, 0.18)":"transparent",borderLeft:g===q?"2px solid var(--mantine-color-blue-5)":"2px solid transparent"},children:[y.jsxs(Ve,{size:"xs",c:"dimmed",children:[q+1,"."]}),y.jsx(Yi,{size:"xs",variant:"unstyled",value:O.name??"",placeholder:ex[O.type],disabled:a,onChange:W=>D(q,{name:W.currentTarget.value}),onClick:W=>W.stopPropagation(),style:{flex:1,minWidth:0},styles:{input:{minHeight:"unset",height:"auto",padding:0}}}),y.jsx(Yt,{size:"xs",variant:"subtle",disabled:a,onClick:W=>{W.stopPropagation(),P(q)},"aria-label":"Duplicate element",children:y.jsx(d5,{size:12})}),y.jsx(Yt,{size:"xs",variant:"subtle",disabled:a||q===0,onClick:W=>{W.stopPropagation(),Z(q,-1)},children:y.jsx(t5,{size:12})}),y.jsx(Yt,{size:"xs",variant:"subtle",disabled:a||q===Y.length-1,onClick:W=>{W.stopPropagation(),Z(q,1)},children:y.jsx(JM,{size:12})}),y.jsx(Yt,{size:"xs",variant:"subtle",color:"red",disabled:a,onClick:W=>{W.stopPropagation(),V(q)},children:y.jsx(hg,{size:12})})]},O.id))]})]})]})}async function YO(e,o){const r={name:o.name,elements:o.elements??[]};if(o.background_image){const a=await yC(e);a&&(r.background_image_filename=o.background_image,r.background_image_data=await _C(a))}return r}async function ax(e){const o=Na(),r={name:e.name||"Imported Style",elements:e.elements??[]};if(e.background_image_data){const a=await vC(o,e.background_image_filename||"background.png",e.background_image_data);r.background_image=a.filename}return[o,r]}function GO(e){return e.some(r=>r.type==="row"||r.type==="grid")?DC:Math.max(e.length,1)}function XO({id:e,style:o,onOpen:r,onExport:a,onDelete:l}){const c=o.elements??[],u=OO(c,GO(c))??[];return y.jsxs(Qt,{gap:4,align:"center",style:{cursor:"pointer",flexShrink:0},onClick:()=>r(e),children:[y.jsx(NC,{tiles:u}),y.jsx(Ve,{size:"xs",children:o.name||"New Style"}),y.jsxs(mt,{gap:4,children:[y.jsx(Yt,{size:"xs",variant:"subtle",onClick:f=>{f.stopPropagation(),a(e,o)},"aria-label":"Export style",children:y.jsx(Vw,{size:12})}),y.jsx(Yt,{size:"xs",variant:"subtle",color:"red",onClick:f=>{f.stopPropagation(),l(e)},"aria-label":"Delete style",children:y.jsx(hg,{size:12})})]})]})}function qO({onClick:e}){return y.jsxs(Qt,{gap:4,align:"center",style:{cursor:"pointer",flexShrink:0},onClick:e,children:[y.jsx("div",{style:{width:160,height:90,display:"flex",alignItems:"center",justifyContent:"center",border:"1px dashed var(--mantine-color-dark-4)",color:"var(--mantine-color-dimmed)"},children:y.jsx(ls,{size:24})}),y.jsx(Ve,{size:"xs",c:"dimmed",children:"New Style"})]})}function IO({settings:e,onFieldsReload:o}){const r=e.multiview_custom_layouts??{},a=e.multiview_custom_layouts_order??Object.keys(r),[l,c]=b.useState({}),[u,f]=b.useState(null),[h,p]=b.useState(null),[g,v]=b.useState(!0),x=b.useRef(null),S=Qp("(max-width: 48em)");b.useEffect(()=>{(u||h)&&S&&v(!1)},[u,h]),b.useEffect(()=>{let H=!1;return Promise.all(ru.map(I=>B4(I.value,DC).catch(()=>null))).then(I=>{if(H)return;const Y={};ru.forEach((X,ee)=>{I[ee]&&(Y[X.value]=I[ee].tiles)}),c(Y)}),()=>{H=!0}},[]);async function E(H,I){try{await Ur({multiview_custom_layouts:H,multiview_custom_layouts_order:I}),await o()}catch(Y){Ze.show({title:"Save failed",message:Y.message,color:"red",autoClose:4e3})}}async function C(){try{const H=Na();await E({...r,[H]:{name:"New Style",elements:[]}},[...a,H]),f(H)}catch(H){Ze.show({title:"Failed",message:H.message,color:"red",autoClose:4e3})}}function R(H){const I={...r};delete I[H],E(I,a.filter(Y=>Y!==H)),u===H&&f(null)}function T(H,I){return E({...r,[H]:I},a)}async function z(H,I){try{const Y=await YO(H,I);xC(Y,`multiview-style-${(I.name||"style").trim().replace(/\s+/g,"-")||"style"}.json`)}catch(Y){Ze.show({title:"Export failed",message:Y.message,color:"red",autoClose:4e3})}}async function A(H){const I=H.target.files?.[0];if(H.target.value="",!!I)try{const Y=JSON.parse(await I.text());if(!Y||typeof Y!="object"||Array.isArray(Y))throw new Error("Not a valid style file");if(Array.isArray(Y.elements)){Pp(Y);const[X,ee]=await ax(Y);await E({...r,[X]:ee},[...a,X]),Ze.show({message:`Style "${ee.name}" imported`,color:"green",autoClose:2e3})}else{const X=Object.entries(Y);X.forEach(([re,j])=>Pp(j,`style "${re}"`));const ee={},ne=[];for(const[,re]of X){const[j,k]=await ax(re);ee[j]=k,ne.push(j)}await E({...r,...ee},[...a,...ne]),Ze.show({message:`Imported ${ne.length} style(s)`,color:"green",autoClose:2e3})}}catch(Y){Ze.show({title:"Import failed",message:Y.message,color:"red",autoClose:4e3})}}const N=a.filter(H=>r[H]).map(H=>[H,r[H]]),B=u?r[u]:null,M=h?{name:h.label,elements:HO[h.value]}:null;function $(H){p(null),f(H)}function L(H){f(null),p(H)}return b.useEffect(()=>{B||M||(N.length>0?(p(null),f(N[0][0])):(f(null),p(ru[0])))},[B,M,N]),y.jsxs(Qt,{gap:"xs",style:{flex:1,minHeight:0},children:[y.jsxs(mt,{justify:"space-between",gap:"xs",children:[y.jsxs(mt,{gap:4,children:[y.jsx(Ve,{size:"xs",c:"dimmed",children:"Click a built-in to preview it, or a custom style to edit it."}),S&&y.jsx(Yt,{size:"xs",variant:"subtle",onClick:()=>v(H=>!H),"aria-label":g?"Collapse styles":"Expand styles",children:g?y.jsx(s5,{size:12}):y.jsx(Pw,{size:12})})]}),y.jsx(Dt,{size:"xs",variant:"default",leftSection:y.jsx(Gw,{size:12}),onClick:()=>x.current?.click(),children:"Import"}),y.jsx("input",{ref:x,type:"file",accept:"application/json",style:{display:"none"},onChange:A})]}),y.jsx(rm,{in:!S||g,children:y.jsxs(mt,{align:"flex-start",gap:"md",wrap:"nowrap",style:{overflowX:"auto",paddingBottom:4},children:[ru.map(H=>y.jsxs(Qt,{gap:4,align:"center",style:{flexShrink:0,cursor:"pointer"},onClick:()=>L(H),children:[y.jsx(NC,{tiles:l[H.value]}),y.jsx(Ve,{size:"xs",children:H.label})]},H.value)),N.map(([H,I])=>y.jsx(XO,{id:H,style:I,onOpen:$,onExport:z,onDelete:R},H)),y.jsx(qO,{onClick:C})]})}),B?y.jsx(rx,{style:B,styleId:u,onUpdate:H=>T(u,H)}):M?y.jsx(rx,{style:M,styleId:`builtin:${h.value}`,onUpdate:()=>{},readOnly:!0}):null]})}const Gp=/^multiview_([0-9a-f]{8})_(.+)$/;function FO(e,o,r,a){const l=o.map(p=>{const g={id:p},v=[];for(const[x,S]of Object.entries(e)){const E=x.match(Gp);if(!E||E[1]!==p)continue;const C=E[2].match(/^channel_(\d+)$/);C?v[parseInt(C[1],10)-1]=S:g[E[2]]=S}return v.length&&(g.channels=v),g}),c={};for(const[p,g]of Object.entries(e))p==="multiview_order"||p==="multiview_count"||p==="multiview_custom_layouts"||p==="multiview_custom_layouts_order"||p==="multiview_pre_migration_backup"||p==="multiview_pre_reconcile_backup"||Gp.test(p)||(c[p]=g);const u=e.multiview_custom_layouts??{},f=e.multiview_custom_layouts_order??Object.keys(u),h={};for(const p of f)u[p]&&(h[p]=u[p]);return{global:c,layouts:l,custom_styles:h,plugin_version:r,dispatcharr_version:a}}function ZO(e){const o={},r=[];for(const a of e.layouts){const l=Na();r.push(l);for(const[c,u]of Object.entries(a))c!=="id"&&(c==="channels"?u.forEach((f,h)=>{o[`multiview_${l}_channel_${h+1}`]=f}):o[`multiview_${l}_${c}`]=u)}return Object.assign(o,e.global??{}),o.multiview_order=r,o.multiview_custom_layouts=e.custom_styles??{},o.multiview_custom_layouts_order=Object.keys(e.custom_styles??{}),o}function QO({id:e,...o}){const{attributes:r,listeners:a,setNodeRef:l,transform:c,transition:u,isDragging:f}=_4({id:e}),h={transform:ys.Transform.toString(c),transition:u,opacity:f?.5:1};return y.jsx("div",{ref:l,style:h,children:y.jsx(I4,{id:e,dragHandleProps:{...r,...a},...o})})}function KO({onLoggedOut:e}){const[o,r]=b.useState(null),[a,l]=b.useState({}),[c,u]=b.useState(""),[f,h]=b.useState(!1),[p,g]=b.useState(!1),[v,x]=b.useState(!1),[S,E]=b.useState(0),[C,R]=b.useState(()=>new Set),[T,z]=b.useState(null),A=b.useRef(null),N=b.useCallback(async()=>{try{const[P,Z]=await Promise.all([O4(),V1()]);r(P);const D=Z.settings??{},O=[...P.global??[],...(P.layouts??[]).flatMap(W=>W.fields)],q={...D};for(const W of O)!(W.id in q)&&W.default!==void 0&&(q[W.id]=W.default);l(q)}catch(P){P.status!==401&&u(P.message)}},[]);b.useEffect(()=>{N()},[N]),b.useEffect(()=>{const P=async()=>{try{const O=(await gC()).active??[];E(O.length),R(new Set(O.map(q=>q.n)))}catch{}};P();const Z=setInterval(P,5e3);return()=>clearInterval(Z)},[]),b.useEffect(()=>(P1(e),()=>P1(()=>{})),[e]);const B=b.useCallback(P=>l(Z=>({...Z,...P})),[]);function M(){return(o?.layouts??[]).map(P=>P.n)}async function $(P,Z){const D=`multiview_${P}_channel_count`,O=(a[D]??4)+Z;try{await Ur({[D]:O}),await N()}catch(q){Ze.show({title:"Failed",message:q.message,color:"red",autoClose:4e3})}}async function L(){try{const P=M(),Z=Na(),D=P.length+1,O={multiview_order:[...P,Z],[`multiview_${Z}_name`]:`Multiview ${D}`,[`multiview_${Z}_layout`]:"auto",[`multiview_${Z}_selector_type`]:"classic",[`multiview_${Z}_channel_count`]:4,[`multiview_${Z}_epg_source_mode`]:"dummy"};await Ur(O),await N(),Ze.show({message:`Layout ${D} added`,color:"green",autoClose:2e3})}catch(P){Ze.show({title:"Failed",message:P.message,color:"red",autoClose:4e3})}}async function H(P){const Z=M();if(Z.length<=1)return;const D={multiview_order:Z.filter(O=>O!==P)};for(const O of Object.keys(a))O.startsWith(`multiview_${P}_`)&&(D[O]=null);try{await Ur(D);try{await Hp(P)}catch{}await N(),Ze.show({message:"Layout removed",color:"green",autoClose:2e3})}catch(O){Ze.show({title:"Failed",message:O.message,color:"red",autoClose:4e3})}}const I=o6(n6(Sg,{activationConstraint:{distance:4}}));async function Y(P){const{active:Z,over:D}=P;if(!D||Z.id===D.id)return;const O=M(),q=O.indexOf(Z.id),W=O.indexOf(D.id);if(q===-1||W===-1)return;const ie=wg(O,q,W);try{await Ur({multiview_order:ie}),await N()}catch(ue){Ze.show({title:"Failed",message:ue.message,color:"red",autoClose:4e3})}}async function X(){h(!0);try{const P=await $4();Ze.show({message:P.message||"M3U & EPG refreshed",color:P.status==="success"?"green":"red",autoClose:3e3})}catch(P){Ze.show({title:"Refresh failed",message:P.message,color:"red",autoClose:4e3})}finally{h(!1)}}async function ee(){try{const P=await V1(),Z=M(),D=FO(P.settings??{},Z,P.plugin_version,P.dispatcharr_version);xC(D,`multiview-backup-${new Date().toISOString().slice(0,10)}.json`)}catch(P){Ze.show({title:"Export failed",message:P.message,color:"red",autoClose:4e3})}}async function ne(P){const Z=P.target.files?.[0];if(P.target.value="",!!Z)try{const D=JSON.parse(await Z.text());if(!D||typeof D!="object"||Array.isArray(D))throw new Error("Backup file is not a valid settings object");let O,q;if(Array.isArray(D.layouts))X4(D),O=ZO(D),q=O.multiview_order;else{q4(D);const fe=Array.isArray(D.multiview_order)?D.multiview_order:[],be=Object.fromEntries(fe.map(ye=>[ye,Na()]));q=fe.map(ye=>be[ye]),O={};for(const[ye,Ge]of Object.entries(D)){if(ye==="multiview_order")continue;const Ne=ye.match(Gp);Ne&&be[Ne[1]]?O[`multiview_${be[Ne[1]]}_${Ne[2]}`]=Ge:Ne||(O[ye]=Ge)}O.multiview_order=q}let W=new Set;try{const fe=await j4();W=new Set(fe.map(be=>String(be.id)))}catch{W=new Set}const ie=[];q.forEach((fe,be)=>{const ye=O[`multiview_${fe}_name`]||`Multiview ${be+1}`,Ge=`multiview_${fe}_`;for(const Ne of Object.keys(O)){if(!Ne.startsWith(Ge))continue;const Ke=Ne.slice(Ge.length);if(Ke!=="epg_forward_channel"&&!/^channel_\d+$/.test(Ke))continue;const Be=O[Ne];Be&&Be!=="_none"&&W.size>0&&!W.has(String(Be))&&(O[Ne]="_none",ie.push(`${ye} (${Ke})`))}});const ue={};for(const fe of Object.keys(a))fe.startsWith("multiview_")&&(ue[fe]=null);Object.assign(ue,O),ue.multiview_order=q;const ve=ie.length?` ${ie.length} channel selection(s) could not be matched and were cleared (reselect manually): ${ie.join(", ")}.`:"";z({title:"Restore Backup",confirmLabel:"Restore",color:"red",message:`Restore will replace all current layouts and settings with this backup (${q.length} layout(s)).${ve} Continue?`,onConfirm:async()=>{try{await Ur(ue),await N(),Ze.show({message:"Backup restored",color:"green",autoClose:2e3})}catch(fe){Ze.show({title:"Restore failed",message:fe.message,color:"red",autoClose:4e3})}}})}catch(D){Ze.show({title:"Import failed",message:D.message,color:"red",autoClose:4e3})}}if(c)return y.jsx(ms,{mih:"100dvh",children:y.jsx(Ve,{c:"red",children:c})});if(!o)return y.jsx(ms,{mih:"100dvh",children:y.jsx(Ma,{})});const{warnings:re=[],global:j=[],layouts:k=[],layout_count:V}=o;return y.jsxs(mo,{header:{height:56},children:[y.jsx(L5,{logoUrl:pC,appName:"Multiview",version:"0.4.0",githubUrl:"https://github.com/swvn-dispatch/dispatcharr-multiview",username:M4(),onLogout:e,actions:[{key:"streams",label:"Streams",icon:QM,onClick:()=>g(!0),active:S>0,count:S,variant:"default"},{key:"refresh",label:"Refresh M3U & EPG",icon:Yw,loading:f,variant:"default",onClick:()=>z({title:"Refresh M3U & EPG",confirmLabel:"Refresh",color:"blue",message:"Regenerate the M3U playlist and sync EPG data now?",onConfirm:X})},{key:"style-builder",label:"Style Builder",icon:C5,variant:"default",onClick:()=>x(!0)}],extra:y.jsxs(Nt,{shadow:"md",width:190,position:"bottom-end",children:[y.jsx(Nt.Target,{children:y.jsx(Yt,{size:"lg",variant:"default","aria-label":"More actions",children:y.jsx(A5,{size:18})})}),y.jsxs(Nt.Dropdown,{children:[y.jsx(Nt.Item,{leftSection:y.jsx(Vw,{size:14}),onClick:ee,children:"Download Backup"}),y.jsx(Nt.Item,{leftSection:y.jsx(Gw,{size:14}),onClick:()=>A.current?.click(),children:"Restore Backup"})]})]})}),y.jsx("input",{ref:A,type:"file",accept:"application/json",style:{display:"none"},onChange:ne}),y.jsx(Tn,{opened:v,onClose:()=>x(!1),title:"Style Builder",fullScreen:!0,styles:{content:{display:"flex",flexDirection:"column"},body:{flex:1,minHeight:0,display:"flex",flexDirection:"column",overflowY:"auto"}},children:y.jsx(IO,{settings:a,onFieldsReload:N})}),y.jsx(mo.Main,{children:y.jsxs(Qt,{p:"md",maw:860,mx:"auto",children:[y.jsx(P5,{fields:j,warnings:re,values:a,onSave:Ur,onOptimisticChange:B,shouldReload:bC,onReload:N,onSaved:()=>Ze.show({message:"Saved",color:"green",autoClose:1500}),onError:P=>Ze.show({title:"Save failed",message:P.message,color:"red",autoClose:4e3})}),y.jsx(Ve,{size:"xs",tt:"uppercase",fw:700,c:"dimmed",mt:"sm",children:"Layouts"}),y.jsx(l4,{sensors:I,collisionDetection:s6,onDragEnd:Y,children:y.jsx(x4,{items:M(),strategy:y4,children:k.map(({n:P,position:Z,fields:D})=>y.jsx(QO,{id:P,position:Z,fields:D,settings:a,canRemove:V>1,hasActiveStream:C.has(P),onSettingsChange:B,onFieldsReload:N,onRemove:()=>H(P),onChannelCountChange:O=>$(P,O)},P))})}),y.jsx(Dt,{variant:"default",onClick:L,children:"+ Add Layout"})]})}),y.jsx(F4,{opened:p,onClose:()=>g(!1),settings:a}),y.jsx(Xw,{action:T,onClose:()=>z(null)})]})}function WO(){const[e,o]=b.useState(z4());return e?y.jsx(KO,{onLoggedOut:()=>{A4(),o(!1)}}):y.jsx(k5,{logoUrl:pC,appName:"Multiview",description:"Sign in with your Dispatcharr credentials. The account must have permission to modify plugin settings.",onLogin:N4,onLoggedIn:()=>o(!0)})}K2.createRoot(document.getElementById("root")).render(y.jsx(b.StrictMode,{children:y.jsx($5,{children:y.jsx(WO,{})})})); diff --git a/plugins/multiview/dash/static/assets/index-CFe5xHdB.js b/plugins/multiview/dash/static/assets/index-CFe5xHdB.js deleted file mode 100644 index ac9211a..0000000 --- a/plugins/multiview/dash/static/assets/index-CFe5xHdB.js +++ /dev/null @@ -1,151 +0,0 @@ -function yw(t,r){for(var o=0;os[l]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))s(l);new MutationObserver(l=>{for(const u of l)if(u.type==="childList")for(const c of u.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&s(c)}).observe(document,{childList:!0,subtree:!0});function o(l){const u={};return l.integrity&&(u.integrity=l.integrity),l.referrerPolicy&&(u.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?u.credentials="include":l.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function s(l){if(l.ep)return;l.ep=!0;const u=o(l);fetch(l.href,u)}})();function iv(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var ic={exports:{}},Fi={},sc={exports:{}},Oe={};/** - * @license React - * react.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */var Xm;function ww(){if(Xm)return Oe;Xm=1;var t=Symbol.for("react.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),u=Symbol.for("react.provider"),c=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),g=Symbol.iterator;function y(k){return k===null||typeof k!="object"?null:(k=g&&k[g]||k["@@iterator"],typeof k=="function"?k:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,E={};function R(k,D,le){this.props=k,this.context=D,this.refs=E,this.updater=le||w}R.prototype.isReactComponent={},R.prototype.setState=function(k,D){if(typeof k!="object"&&typeof k!="function"&&k!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,k,D,"setState")},R.prototype.forceUpdate=function(k){this.updater.enqueueForceUpdate(this,k,"forceUpdate")};function N(){}N.prototype=R.prototype;function j(k,D,le){this.props=k,this.context=D,this.refs=E,this.updater=le||w}var T=j.prototype=new N;T.constructor=j,C(T,R.prototype),T.isPureReactComponent=!0;var O=Array.isArray,A=Object.prototype.hasOwnProperty,F={current:null},H={key:!0,ref:!0,__self:!0,__source:!0};function z(k,D,le){var ve,ie={},ce=null,Se=null;if(D!=null)for(ve in D.ref!==void 0&&(Se=D.ref),D.key!==void 0&&(ce=""+D.key),D)A.call(D,ve)&&!H.hasOwnProperty(ve)&&(ie[ve]=D[ve]);var ye=arguments.length-2;if(ye===1)ie.children=le;else if(1>>1,D=_[k];if(0>>1;kl(ie,U))cel(Se,ie)?(_[k]=Se,_[ce]=U,k=ce):(_[k]=ie,_[ve]=U,k=ve);else if(cel(Se,U))_[k]=Se,_[ce]=U,k=ce;else break e}}return M}function l(_,M){var U=_.sortIndex-M.sortIndex;return U!==0?U:_.id-M.id}if(typeof performance=="object"&&typeof performance.now=="function"){var u=performance;t.unstable_now=function(){return u.now()}}else{var c=Date,d=c.now();t.unstable_now=function(){return c.now()-d}}var m=[],h=[],v=1,g=null,y=3,w=!1,C=!1,E=!1,R=typeof setTimeout=="function"?setTimeout:null,N=typeof clearTimeout=="function"?clearTimeout:null,j=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function T(_){for(var M=o(h);M!==null;){if(M.callback===null)s(h);else if(M.startTime<=_)s(h),M.sortIndex=M.expirationTime,r(m,M);else break;M=o(h)}}function O(_){if(E=!1,T(_),!C)if(o(m)!==null)C=!0,B(A);else{var M=o(h);M!==null&&V(O,M.startTime-_)}}function A(_,M){C=!1,E&&(E=!1,N(z),z=-1),w=!0;var U=y;try{for(T(M),g=o(m);g!==null&&(!(g.expirationTime>M)||_&&!X());){var k=g.callback;if(typeof k=="function"){g.callback=null,y=g.priorityLevel;var D=k(g.expirationTime<=M);M=t.unstable_now(),typeof D=="function"?g.callback=D:g===o(m)&&s(m),T(M)}else s(m);g=o(m)}if(g!==null)var le=!0;else{var ve=o(h);ve!==null&&V(O,ve.startTime-M),le=!1}return le}finally{g=null,y=U,w=!1}}var F=!1,H=null,z=-1,Q=5,q=-1;function X(){return!(t.unstable_now()-q_||125<_?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):Q=0<_?Math.floor(1e3/_):5},t.unstable_getCurrentPriorityLevel=function(){return y},t.unstable_getFirstCallbackNode=function(){return o(m)},t.unstable_next=function(_){switch(y){case 1:case 2:case 3:var M=3;break;default:M=y}var U=y;y=M;try{return _()}finally{y=U}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(_,M){switch(_){case 1:case 2:case 3:case 4:case 5:break;default:_=3}var U=y;y=_;try{return M()}finally{y=U}},t.unstable_scheduleCallback=function(_,M,U){var k=t.unstable_now();switch(typeof U=="object"&&U!==null?(U=U.delay,U=typeof U=="number"&&0k?(_.sortIndex=U,r(h,_),o(m)===null&&_===o(h)&&(E?(N(z),z=-1):E=!0,V(O,U-k))):(_.sortIndex=D,r(m,_),C||w||(C=!0,B(A))),_},t.unstable_shouldYield=X,t.unstable_wrapCallback=function(_){var M=y;return function(){var U=y;y=M;try{return _.apply(this,arguments)}finally{y=U}}}})(uc)),uc}var Jm;function Ew(){return Jm||(Jm=1,ac.exports=Cw()),ac.exports}/** - * @license React - * react-dom.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */var eh;function Rw(){if(eh)return zt;eh=1;var t=nf(),r=Ew();function o(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,i=1;i"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),m=Object.prototype.hasOwnProperty,h=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,v={},g={};function y(e){return m.call(g,e)?!0:m.call(v,e)?!1:h.test(e)?g[e]=!0:(v[e]=!0,!1)}function w(e,n,i,a){if(i!==null&&i.type===0)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return a?!1:i!==null?!i.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function C(e,n,i,a){if(n===null||typeof n>"u"||w(e,n,i,a))return!0;if(a)return!1;if(i!==null)switch(i.type){case 3:return!n;case 4:return n===!1;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}function E(e,n,i,a,f,p,b){this.acceptsBooleans=n===2||n===3||n===4,this.attributeName=a,this.attributeNamespace=f,this.mustUseProperty=i,this.propertyName=e,this.type=n,this.sanitizeURL=p,this.removeEmptyString=b}var R={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){R[e]=new E(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var n=e[0];R[n]=new E(n,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){R[e]=new E(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){R[e]=new E(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){R[e]=new E(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){R[e]=new E(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){R[e]=new E(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){R[e]=new E(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){R[e]=new E(e,5,!1,e.toLowerCase(),null,!1,!1)});var N=/[\-:]([a-z])/g;function j(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var n=e.replace(N,j);R[n]=new E(n,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var n=e.replace(N,j);R[n]=new E(n,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var n=e.replace(N,j);R[n]=new E(n,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){R[e]=new E(e,1,!1,e.toLowerCase(),null,!1,!1)}),R.xlinkHref=new E("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){R[e]=new E(e,1,!1,e.toLowerCase(),null,!0,!0)});function T(e,n,i,a){var f=R.hasOwnProperty(n)?R[n]:null;(f!==null?f.type!==0:a||!(2P||f[b]!==p[P]){var $=` -`+f[b].replace(" at new "," at ");return e.displayName&&$.includes("")&&($=$.replace("",e.displayName)),$}while(1<=b&&0<=P);break}}}finally{le=!1,Error.prepareStackTrace=i}return(e=e?e.displayName||e.name:"")?D(e):""}function ie(e){switch(e.tag){case 5:return D(e.type);case 16:return D("Lazy");case 13:return D("Suspense");case 19:return D("SuspenseList");case 0:case 2:case 15:return e=ve(e.type,!1),e;case 11:return e=ve(e.type.render,!1),e;case 1:return e=ve(e.type,!0),e;default:return""}}function ce(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case H:return"Fragment";case F:return"Portal";case Q:return"Profiler";case z:return"StrictMode";case Z:return"Suspense";case te:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case X:return(e.displayName||"Context")+".Consumer";case q:return(e._context.displayName||"Context")+".Provider";case K:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case J:return n=e.displayName||null,n!==null?n:ce(e.type)||"Memo";case B:n=e._payload,e=e._init;try{return ce(e(n))}catch{}}return null}function Se(e){var n=e.type;switch(e.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=n.render,e=e.displayName||e.name||"",n.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ce(n);case 8:return n===z?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n}return null}function ye(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Re(e){var n=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function je(e){var n=Re(e)?"checked":"value",i=Object.getOwnPropertyDescriptor(e.constructor.prototype,n),a=""+e[n];if(!e.hasOwnProperty(n)&&typeof i<"u"&&typeof i.get=="function"&&typeof i.set=="function"){var f=i.get,p=i.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return f.call(this)},set:function(b){a=""+b,p.call(this,b)}}),Object.defineProperty(e,n,{enumerable:i.enumerable}),{getValue:function(){return a},setValue:function(b){a=""+b},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}function qe(e){e._valueTracker||(e._valueTracker=je(e))}function nt(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var i=n.getValue(),a="";return e&&(a=Re(e)?e.checked?"true":"false":e.value),e=a,e!==i?(n.setValue(e),!0):!1}function Ze(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function rt(e,n){var i=n.checked;return U({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:i??e._wrapperState.initialChecked})}function ot(e,n){var i=n.defaultValue==null?"":n.defaultValue,a=n.checked!=null?n.checked:n.defaultChecked;i=ye(n.value!=null?n.value:i),e._wrapperState={initialChecked:a,initialValue:i,controlled:n.type==="checkbox"||n.type==="radio"?n.checked!=null:n.value!=null}}function Pt(e,n){n=n.checked,n!=null&&T(e,"checked",n,!1)}function ue(e,n){Pt(e,n);var i=ye(n.value),a=n.type;if(i!=null)a==="number"?(i===0&&e.value===""||e.value!=i)&&(e.value=""+i):e.value!==""+i&&(e.value=""+i);else if(a==="submit"||a==="reset"){e.removeAttribute("value");return}n.hasOwnProperty("value")?we(e,n.type,i):n.hasOwnProperty("defaultValue")&&we(e,n.type,ye(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(e.defaultChecked=!!n.defaultChecked)}function de(e,n,i){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var a=n.type;if(!(a!=="submit"&&a!=="reset"||n.value!==void 0&&n.value!==null))return;n=""+e._wrapperState.initialValue,i||n===e.value||(e.value=n),e.defaultValue=n}i=e.name,i!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,i!==""&&(e.name=i)}function we(e,n,i){(n!=="number"||Ze(e.ownerDocument)!==e)&&(i==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+i&&(e.defaultValue=""+i))}var Ee=Array.isArray;function $e(e,n,i,a){if(e=e.options,n){n={};for(var f=0;f"+n.valueOf().toString()+"",n=at.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;n.firstChild;)e.appendChild(n.firstChild)}});function Be(e,n){if(n){var i=e.firstChild;if(i&&i===e.lastChild&&i.nodeType===3){i.nodeValue=n;return}}e.textContent=n}var Le={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},ss=["Webkit","ms","Moz","O"];Object.keys(Le).forEach(function(e){ss.forEach(function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1),Le[n]=Le[e]})});function ls(e,n,i){return n==null||typeof n=="boolean"||n===""?"":i||typeof n!="number"||n===0||Le.hasOwnProperty(e)&&Le[e]?(""+n).trim():n+"px"}function ri(e,n){e=e.style;for(var i in n)if(n.hasOwnProperty(i)){var a=i.indexOf("--")===0,f=ls(i,n[i],a);i==="float"&&(i="cssFloat"),a?e.setProperty(i,f):e[i]=f}}var ut=U({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Wt(e,n){if(n){if(ut[e]&&(n.children!=null||n.dangerouslySetInnerHTML!=null))throw Error(o(137,e));if(n.dangerouslySetInnerHTML!=null){if(n.children!=null)throw Error(o(60));if(typeof n.dangerouslySetInnerHTML!="object"||!("__html"in n.dangerouslySetInnerHTML))throw Error(o(61))}if(n.style!=null&&typeof n.style!="object")throw Error(o(62))}}function Tr(e,n){if(e.indexOf("-")===-1)return typeof n.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var wa=null;function xa(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Sa=null,oo=null,io=null;function fd(e){if(e=Ri(e)){if(typeof Sa!="function")throw Error(o(280));var n=e.stateNode;n&&(n=Ts(n),Sa(e.stateNode,e.type,n))}}function dd(e){oo?io?io.push(e):io=[e]:oo=e}function pd(){if(oo){var e=oo,n=io;if(io=oo=null,fd(e),n)for(e=0;e>>=0,e===0?32:31-(Iy(e)/My|0)|0}var ds=64,ps=4194304;function li(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ms(e,n){var i=e.pendingLanes;if(i===0)return 0;var a=0,f=e.suspendedLanes,p=e.pingedLanes,b=i&268435455;if(b!==0){var P=b&~f;P!==0?a=li(P):(p&=b,p!==0&&(a=li(p)))}else b=i&~f,b!==0?a=li(b):p!==0&&(a=li(p));if(a===0)return 0;if(n!==0&&n!==a&&(n&f)===0&&(f=a&-a,p=n&-n,f>=p||f===16&&(p&4194240)!==0))return n;if((a&4)!==0&&(a|=i&16),n=e.entangledLanes,n!==0)for(e=e.entanglements,n&=a;0i;i++)n.push(e);return n}function ai(e,n,i){e.pendingLanes|=n,n!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,n=31-un(n),e[n]=i}function zy(e,n){var i=e.pendingLanes&~n;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=n,e.mutableReadLanes&=n,e.entangledLanes&=n,n=e.entanglements;var a=e.eventTimes;for(e=e.expirationTimes;0=vi),Bd=" ",Vd=!1;function Wd(e,n){switch(e){case"keyup":return p0.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Hd(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var ao=!1;function h0(e,n){switch(e){case"compositionend":return Hd(n);case"keypress":return n.which!==32?null:(Vd=!0,Bd);case"textInput":return e=n.data,e===Bd&&Vd?null:e;default:return null}}function v0(e,n){if(ao)return e==="compositionend"||!za&&Wd(e,n)?(e=Md(),ws=Oa=sr=null,ao=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1=n)return{node:i,offset:n-e};e=a}e:{for(;i;){if(i.nextSibling){i=i.nextSibling;break e}i=i.parentNode}i=void 0}i=qd(i)}}function Jd(e,n){return e&&n?e===n?!0:e&&e.nodeType===3?!1:n&&n.nodeType===3?Jd(e,n.parentNode):"contains"in e?e.contains(n):e.compareDocumentPosition?!!(e.compareDocumentPosition(n)&16):!1:!1}function ep(){for(var e=window,n=Ze();n instanceof e.HTMLIFrameElement;){try{var i=typeof n.contentWindow.location.href=="string"}catch{i=!1}if(i)e=n.contentWindow;else break;n=Ze(e.document)}return n}function Va(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n&&(n==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||n==="textarea"||e.contentEditable==="true")}function R0(e){var n=ep(),i=e.focusedElem,a=e.selectionRange;if(n!==i&&i&&i.ownerDocument&&Jd(i.ownerDocument.documentElement,i)){if(a!==null&&Va(i)){if(n=a.start,e=a.end,e===void 0&&(e=n),"selectionStart"in i)i.selectionStart=n,i.selectionEnd=Math.min(e,i.value.length);else if(e=(n=i.ownerDocument||document)&&n.defaultView||window,e.getSelection){e=e.getSelection();var f=i.textContent.length,p=Math.min(a.start,f);a=a.end===void 0?p:Math.min(a.end,f),!e.extend&&p>a&&(f=a,a=p,p=f),f=Zd(i,p);var b=Zd(i,a);f&&b&&(e.rangeCount!==1||e.anchorNode!==f.node||e.anchorOffset!==f.offset||e.focusNode!==b.node||e.focusOffset!==b.offset)&&(n=n.createRange(),n.setStart(f.node,f.offset),e.removeAllRanges(),p>a?(e.addRange(n),e.extend(b.node,b.offset)):(n.setEnd(b.node,b.offset),e.addRange(n)))}}for(n=[],e=i;e=e.parentNode;)e.nodeType===1&&n.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof i.focus=="function"&&i.focus(),i=0;i=document.documentMode,uo=null,Wa=null,xi=null,Ha=!1;function tp(e,n,i){var a=i.window===i?i.document:i.nodeType===9?i:i.ownerDocument;Ha||uo==null||uo!==Ze(a)||(a=uo,"selectionStart"in a&&Va(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),xi&&wi(xi,a)||(xi=a,a=Ns(Wa,"onSelect"),0ho||(e.current=nu[ho],nu[ho]=null,ho--)}function We(e,n){ho++,nu[ho]=e.current,e.current=n}var cr={},St=ur(cr),It=ur(!1),Or=cr;function vo(e,n){var i=e.type.contextTypes;if(!i)return cr;var a=e.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===n)return a.__reactInternalMemoizedMaskedChildContext;var f={},p;for(p in i)f[p]=n[p];return a&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=n,e.__reactInternalMemoizedMaskedChildContext=f),f}function Mt(e){return e=e.childContextTypes,e!=null}function js(){Ue(It),Ue(St)}function vp(e,n,i){if(St.current!==cr)throw Error(o(168));We(St,n),We(It,i)}function gp(e,n,i){var a=e.stateNode;if(n=n.childContextTypes,typeof a.getChildContext!="function")return i;a=a.getChildContext();for(var f in a)if(!(f in n))throw Error(o(108,Se(e)||"Unknown",f));return U({},i,a)}function $s(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||cr,Or=St.current,We(St,e),We(It,It.current),!0}function yp(e,n,i){var a=e.stateNode;if(!a)throw Error(o(169));i?(e=gp(e,n,Or),a.__reactInternalMemoizedMergedChildContext=e,Ue(It),Ue(St),We(St,e)):Ue(It),We(It,i)}var Mn=null,Os=!1,ru=!1;function wp(e){Mn===null?Mn=[e]:Mn.push(e)}function D0(e){Os=!0,wp(e)}function fr(){if(!ru&&Mn!==null){ru=!0;var e=0,n=De;try{var i=Mn;for(De=1;e>=b,f-=b,An=1<<32-un(n)+f|i<_e?(mt=Ne,Ne=null):mt=Ne.sibling;var Ae=ee(L,Ne,W[_e],oe);if(Ae===null){Ne===null&&(Ne=mt);break}e&&Ne&&Ae.alternate===null&&n(L,Ne),I=p(Ae,I,_e),ke===null?xe=Ae:ke.sibling=Ae,ke=Ae,Ne=mt}if(_e===W.length)return i(L,Ne),Ye&&Mr(L,_e),xe;if(Ne===null){for(;_e_e?(mt=Ne,Ne=null):mt=Ne.sibling;var xr=ee(L,Ne,Ae.value,oe);if(xr===null){Ne===null&&(Ne=mt);break}e&&Ne&&xr.alternate===null&&n(L,Ne),I=p(xr,I,_e),ke===null?xe=xr:ke.sibling=xr,ke=xr,Ne=mt}if(Ae.done)return i(L,Ne),Ye&&Mr(L,_e),xe;if(Ne===null){for(;!Ae.done;_e++,Ae=W.next())Ae=re(L,Ae.value,oe),Ae!==null&&(I=p(Ae,I,_e),ke===null?xe=Ae:ke.sibling=Ae,ke=Ae);return Ye&&Mr(L,_e),xe}for(Ne=a(L,Ne);!Ae.done;_e++,Ae=W.next())Ae=pe(Ne,L,_e,Ae.value,oe),Ae!==null&&(e&&Ae.alternate!==null&&Ne.delete(Ae.key===null?_e:Ae.key),I=p(Ae,I,_e),ke===null?xe=Ae:ke.sibling=Ae,ke=Ae);return e&&Ne.forEach(function(gw){return n(L,gw)}),Ye&&Mr(L,_e),xe}function tt(L,I,W,oe){if(typeof W=="object"&&W!==null&&W.type===H&&W.key===null&&(W=W.props.children),typeof W=="object"&&W!==null){switch(W.$$typeof){case A:e:{for(var xe=W.key,ke=I;ke!==null;){if(ke.key===xe){if(xe=W.type,xe===H){if(ke.tag===7){i(L,ke.sibling),I=f(ke,W.props.children),I.return=L,L=I;break e}}else if(ke.elementType===xe||typeof xe=="object"&&xe!==null&&xe.$$typeof===B&&Rp(xe)===ke.type){i(L,ke.sibling),I=f(ke,W.props),I.ref=ki(L,ke,W),I.return=L,L=I;break e}i(L,ke);break}else n(L,ke);ke=ke.sibling}W.type===H?(I=Wr(W.props.children,L.mode,oe,W.key),I.return=L,L=I):(oe=ll(W.type,W.key,W.props,null,L.mode,oe),oe.ref=ki(L,I,W),oe.return=L,L=oe)}return b(L);case F:e:{for(ke=W.key;I!==null;){if(I.key===ke)if(I.tag===4&&I.stateNode.containerInfo===W.containerInfo&&I.stateNode.implementation===W.implementation){i(L,I.sibling),I=f(I,W.children||[]),I.return=L,L=I;break e}else{i(L,I);break}else n(L,I);I=I.sibling}I=ec(W,L.mode,oe),I.return=L,L=I}return b(L);case B:return ke=W._init,tt(L,I,ke(W._payload),oe)}if(Ee(W))return he(L,I,W,oe);if(M(W))return ge(L,I,W,oe);Ds(L,W)}return typeof W=="string"&&W!==""||typeof W=="number"?(W=""+W,I!==null&&I.tag===6?(i(L,I.sibling),I=f(I,W),I.return=L,L=I):(i(L,I),I=Ju(W,L.mode,oe),I.return=L,L=I),b(L)):i(L,I)}return tt}var xo=kp(!0),Np=kp(!1),Ls=ur(null),zs=null,So=null,uu=null;function cu(){uu=So=zs=null}function fu(e){var n=Ls.current;Ue(Ls),e._currentValue=n}function du(e,n,i){for(;e!==null;){var a=e.alternate;if((e.childLanes&n)!==n?(e.childLanes|=n,a!==null&&(a.childLanes|=n)):a!==null&&(a.childLanes&n)!==n&&(a.childLanes|=n),e===i)break;e=e.return}}function bo(e,n){zs=e,uu=So=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&n)!==0&&(At=!0),e.firstContext=null)}function Zt(e){var n=e._currentValue;if(uu!==e)if(e={context:e,memoizedValue:n,next:null},So===null){if(zs===null)throw Error(o(308));So=e,zs.dependencies={lanes:0,firstContext:e}}else So=So.next=e;return n}var Ar=null;function pu(e){Ar===null?Ar=[e]:Ar.push(e)}function Pp(e,n,i,a){var f=n.interleaved;return f===null?(i.next=i,pu(n)):(i.next=f.next,f.next=i),n.interleaved=i,Ln(e,a)}function Ln(e,n){e.lanes|=n;var i=e.alternate;for(i!==null&&(i.lanes|=n),i=e,e=e.return;e!==null;)e.childLanes|=n,i=e.alternate,i!==null&&(i.childLanes|=n),i=e,e=e.return;return i.tag===3?i.stateNode:null}var dr=!1;function mu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function _p(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function zn(e,n){return{eventTime:e,lane:n,tag:0,payload:null,callback:null,next:null}}function pr(e,n,i){var a=e.updateQueue;if(a===null)return null;if(a=a.shared,(Me&2)!==0){var f=a.pending;return f===null?n.next=n:(n.next=f.next,f.next=n),a.pending=n,Ln(e,i)}return f=a.interleaved,f===null?(n.next=n,pu(a)):(n.next=f.next,f.next=n),a.interleaved=n,Ln(e,i)}function Fs(e,n,i){if(n=n.updateQueue,n!==null&&(n=n.shared,(i&4194240)!==0)){var a=n.lanes;a&=e.pendingLanes,i|=a,n.lanes=i,Pa(e,i)}}function Tp(e,n){var i=e.updateQueue,a=e.alternate;if(a!==null&&(a=a.updateQueue,i===a)){var f=null,p=null;if(i=i.firstBaseUpdate,i!==null){do{var b={eventTime:i.eventTime,lane:i.lane,tag:i.tag,payload:i.payload,callback:i.callback,next:null};p===null?f=p=b:p=p.next=b,i=i.next}while(i!==null);p===null?f=p=n:p=p.next=n}else f=p=n;i={baseState:a.baseState,firstBaseUpdate:f,lastBaseUpdate:p,shared:a.shared,effects:a.effects},e.updateQueue=i;return}e=i.lastBaseUpdate,e===null?i.firstBaseUpdate=n:e.next=n,i.lastBaseUpdate=n}function Bs(e,n,i,a){var f=e.updateQueue;dr=!1;var p=f.firstBaseUpdate,b=f.lastBaseUpdate,P=f.shared.pending;if(P!==null){f.shared.pending=null;var $=P,G=$.next;$.next=null,b===null?p=G:b.next=G,b=$;var ne=e.alternate;ne!==null&&(ne=ne.updateQueue,P=ne.lastBaseUpdate,P!==b&&(P===null?ne.firstBaseUpdate=G:P.next=G,ne.lastBaseUpdate=$))}if(p!==null){var re=f.baseState;b=0,ne=G=$=null,P=p;do{var ee=P.lane,pe=P.eventTime;if((a&ee)===ee){ne!==null&&(ne=ne.next={eventTime:pe,lane:0,tag:P.tag,payload:P.payload,callback:P.callback,next:null});e:{var he=e,ge=P;switch(ee=n,pe=i,ge.tag){case 1:if(he=ge.payload,typeof he=="function"){re=he.call(pe,re,ee);break e}re=he;break e;case 3:he.flags=he.flags&-65537|128;case 0:if(he=ge.payload,ee=typeof he=="function"?he.call(pe,re,ee):he,ee==null)break e;re=U({},re,ee);break e;case 2:dr=!0}}P.callback!==null&&P.lane!==0&&(e.flags|=64,ee=f.effects,ee===null?f.effects=[P]:ee.push(P))}else pe={eventTime:pe,lane:ee,tag:P.tag,payload:P.payload,callback:P.callback,next:null},ne===null?(G=ne=pe,$=re):ne=ne.next=pe,b|=ee;if(P=P.next,P===null){if(P=f.shared.pending,P===null)break;ee=P,P=ee.next,ee.next=null,f.lastBaseUpdate=ee,f.shared.pending=null}}while(!0);if(ne===null&&($=re),f.baseState=$,f.firstBaseUpdate=G,f.lastBaseUpdate=ne,n=f.shared.interleaved,n!==null){f=n;do b|=f.lane,f=f.next;while(f!==n)}else p===null&&(f.shared.lanes=0);zr|=b,e.lanes=b,e.memoizedState=re}}function jp(e,n,i){if(e=n.effects,n.effects=null,e!==null)for(n=0;ni?i:4,e(!0);var a=wu.transition;wu.transition={};try{e(!1),n()}finally{De=i,wu.transition=a}}function Qp(){return Jt().memoizedState}function B0(e,n,i){var a=gr(e);if(i={lane:a,action:i,hasEagerState:!1,eagerState:null,next:null},qp(e))Zp(n,i);else if(i=Pp(e,n,i,a),i!==null){var f=Tt();hn(i,e,a,f),Jp(i,n,a)}}function V0(e,n,i){var a=gr(e),f={lane:a,action:i,hasEagerState:!1,eagerState:null,next:null};if(qp(e))Zp(n,f);else{var p=e.alternate;if(e.lanes===0&&(p===null||p.lanes===0)&&(p=n.lastRenderedReducer,p!==null))try{var b=n.lastRenderedState,P=p(b,i);if(f.hasEagerState=!0,f.eagerState=P,cn(P,b)){var $=n.interleaved;$===null?(f.next=f,pu(n)):(f.next=$.next,$.next=f),n.interleaved=f;return}}catch{}finally{}i=Pp(e,n,f,a),i!==null&&(f=Tt(),hn(i,e,a,f),Jp(i,n,a))}}function qp(e){var n=e.alternate;return e===Qe||n!==null&&n===Qe}function Zp(e,n){Ti=Hs=!0;var i=e.pending;i===null?n.next=n:(n.next=i.next,i.next=n),e.pending=n}function Jp(e,n,i){if((i&4194240)!==0){var a=n.lanes;a&=e.pendingLanes,i|=a,n.lanes=i,Pa(e,i)}}var Ys={readContext:Zt,useCallback:bt,useContext:bt,useEffect:bt,useImperativeHandle:bt,useInsertionEffect:bt,useLayoutEffect:bt,useMemo:bt,useReducer:bt,useRef:bt,useState:bt,useDebugValue:bt,useDeferredValue:bt,useTransition:bt,useMutableSource:bt,useSyncExternalStore:bt,useId:bt,unstable_isNewReconciler:!1},W0={readContext:Zt,useCallback:function(e,n){return Rn().memoizedState=[e,n===void 0?null:n],e},useContext:Zt,useEffect:Vp,useImperativeHandle:function(e,n,i){return i=i!=null?i.concat([e]):null,Us(4194308,4,Up.bind(null,n,e),i)},useLayoutEffect:function(e,n){return Us(4194308,4,e,n)},useInsertionEffect:function(e,n){return Us(4,2,e,n)},useMemo:function(e,n){var i=Rn();return n=n===void 0?null:n,e=e(),i.memoizedState=[e,n],e},useReducer:function(e,n,i){var a=Rn();return n=i!==void 0?i(n):n,a.memoizedState=a.baseState=n,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:n},a.queue=e,e=e.dispatch=B0.bind(null,Qe,e),[a.memoizedState,e]},useRef:function(e){var n=Rn();return e={current:e},n.memoizedState=e},useState:Fp,useDebugValue:ku,useDeferredValue:function(e){return Rn().memoizedState=e},useTransition:function(){var e=Fp(!1),n=e[0];return e=F0.bind(null,e[1]),Rn().memoizedState=e,[n,e]},useMutableSource:function(){},useSyncExternalStore:function(e,n,i){var a=Qe,f=Rn();if(Ye){if(i===void 0)throw Error(o(407));i=i()}else{if(i=n(),pt===null)throw Error(o(349));(Lr&30)!==0||Mp(a,n,i)}f.memoizedState=i;var p={value:i,getSnapshot:n};return f.queue=p,Vp(Dp.bind(null,a,p,e),[e]),a.flags|=2048,Oi(9,Ap.bind(null,a,p,i,n),void 0,null),i},useId:function(){var e=Rn(),n=pt.identifierPrefix;if(Ye){var i=Dn,a=An;i=(a&~(1<<32-un(a)-1)).toString(32)+i,n=":"+n+"R"+i,i=ji++,0<\/script>",e=e.removeChild(e.firstChild)):typeof a.is=="string"?e=b.createElement(i,{is:a.is}):(e=b.createElement(i),i==="select"&&(b=e,a.multiple?b.multiple=!0:a.size&&(b.size=a.size))):e=b.createElementNS(e,i),e[Cn]=n,e[Ei]=a,wm(e,n,!1,!1),n.stateNode=e;e:{switch(b=Tr(i,a),i){case"dialog":He("cancel",e),He("close",e),f=a;break;case"iframe":case"object":case"embed":He("load",e),f=a;break;case"video":case"audio":for(f=0;fNo&&(n.flags|=128,a=!0,Ii(p,!1),n.lanes=4194304)}else{if(!a)if(e=Vs(b),e!==null){if(n.flags|=128,a=!0,i=e.updateQueue,i!==null&&(n.updateQueue=i,n.flags|=4),Ii(p,!0),p.tail===null&&p.tailMode==="hidden"&&!b.alternate&&!Ye)return Ct(n),null}else 2*et()-p.renderingStartTime>No&&i!==1073741824&&(n.flags|=128,a=!0,Ii(p,!1),n.lanes=4194304);p.isBackwards?(b.sibling=n.child,n.child=b):(i=p.last,i!==null?i.sibling=b:n.child=b,p.last=b)}return p.tail!==null?(n=p.tail,p.rendering=n,p.tail=n.sibling,p.renderingStartTime=et(),n.sibling=null,i=Ke.current,We(Ke,a?i&1|2:i&1),n):(Ct(n),null);case 22:case 23:return Qu(),a=n.memoizedState!==null,e!==null&&e.memoizedState!==null!==a&&(n.flags|=8192),a&&(n.mode&1)!==0?(Yt&1073741824)!==0&&(Ct(n),n.subtreeFlags&6&&(n.flags|=8192)):Ct(n),null;case 24:return null;case 25:return null}throw Error(o(156,n.tag))}function q0(e,n){switch(iu(n),n.tag){case 1:return Mt(n.type)&&js(),e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 3:return Co(),Ue(It),Ue(St),yu(),e=n.flags,(e&65536)!==0&&(e&128)===0?(n.flags=e&-65537|128,n):null;case 5:return vu(n),null;case 13:if(Ue(Ke),e=n.memoizedState,e!==null&&e.dehydrated!==null){if(n.alternate===null)throw Error(o(340));wo()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 19:return Ue(Ke),null;case 4:return Co(),null;case 10:return fu(n.type._context),null;case 22:case 23:return Qu(),null;case 24:return null;default:return null}}var qs=!1,Et=!1,Z0=typeof WeakSet=="function"?WeakSet:Set,me=null;function Ro(e,n){var i=e.ref;if(i!==null)if(typeof i=="function")try{i(null)}catch(a){Je(e,n,a)}else i.current=null}function Lu(e,n,i){try{i()}catch(a){Je(e,n,a)}}var bm=!1;function J0(e,n){if(Qa=gs,e=ep(),Va(e)){if("selectionStart"in e)var i={start:e.selectionStart,end:e.selectionEnd};else e:{i=(i=e.ownerDocument)&&i.defaultView||window;var a=i.getSelection&&i.getSelection();if(a&&a.rangeCount!==0){i=a.anchorNode;var f=a.anchorOffset,p=a.focusNode;a=a.focusOffset;try{i.nodeType,p.nodeType}catch{i=null;break e}var b=0,P=-1,$=-1,G=0,ne=0,re=e,ee=null;t:for(;;){for(var pe;re!==i||f!==0&&re.nodeType!==3||(P=b+f),re!==p||a!==0&&re.nodeType!==3||($=b+a),re.nodeType===3&&(b+=re.nodeValue.length),(pe=re.firstChild)!==null;)ee=re,re=pe;for(;;){if(re===e)break t;if(ee===i&&++G===f&&(P=b),ee===p&&++ne===a&&($=b),(pe=re.nextSibling)!==null)break;re=ee,ee=re.parentNode}re=pe}i=P===-1||$===-1?null:{start:P,end:$}}else i=null}i=i||{start:0,end:0}}else i=null;for(qa={focusedElem:e,selectionRange:i},gs=!1,me=n;me!==null;)if(n=me,e=n.child,(n.subtreeFlags&1028)!==0&&e!==null)e.return=n,me=e;else for(;me!==null;){n=me;try{var he=n.alternate;if((n.flags&1024)!==0)switch(n.tag){case 0:case 11:case 15:break;case 1:if(he!==null){var ge=he.memoizedProps,tt=he.memoizedState,L=n.stateNode,I=L.getSnapshotBeforeUpdate(n.elementType===n.type?ge:dn(n.type,ge),tt);L.__reactInternalSnapshotBeforeUpdate=I}break;case 3:var W=n.stateNode.containerInfo;W.nodeType===1?W.textContent="":W.nodeType===9&&W.documentElement&&W.removeChild(W.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(o(163))}}catch(oe){Je(n,n.return,oe)}if(e=n.sibling,e!==null){e.return=n.return,me=e;break}me=n.return}return he=bm,bm=!1,he}function Mi(e,n,i){var a=n.updateQueue;if(a=a!==null?a.lastEffect:null,a!==null){var f=a=a.next;do{if((f.tag&e)===e){var p=f.destroy;f.destroy=void 0,p!==void 0&&Lu(n,i,p)}f=f.next}while(f!==a)}}function Zs(e,n){if(n=n.updateQueue,n=n!==null?n.lastEffect:null,n!==null){var i=n=n.next;do{if((i.tag&e)===e){var a=i.create;i.destroy=a()}i=i.next}while(i!==n)}}function zu(e){var n=e.ref;if(n!==null){var i=e.stateNode;switch(e.tag){case 5:e=i;break;default:e=i}typeof n=="function"?n(e):n.current=e}}function Cm(e){var n=e.alternate;n!==null&&(e.alternate=null,Cm(n)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(n=e.stateNode,n!==null&&(delete n[Cn],delete n[Ei],delete n[tu],delete n[M0],delete n[A0])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Em(e){return e.tag===5||e.tag===3||e.tag===4}function Rm(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Em(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Fu(e,n,i){var a=e.tag;if(a===5||a===6)e=e.stateNode,n?i.nodeType===8?i.parentNode.insertBefore(e,n):i.insertBefore(e,n):(i.nodeType===8?(n=i.parentNode,n.insertBefore(e,i)):(n=i,n.appendChild(e)),i=i._reactRootContainer,i!=null||n.onclick!==null||(n.onclick=_s));else if(a!==4&&(e=e.child,e!==null))for(Fu(e,n,i),e=e.sibling;e!==null;)Fu(e,n,i),e=e.sibling}function Bu(e,n,i){var a=e.tag;if(a===5||a===6)e=e.stateNode,n?i.insertBefore(e,n):i.appendChild(e);else if(a!==4&&(e=e.child,e!==null))for(Bu(e,n,i),e=e.sibling;e!==null;)Bu(e,n,i),e=e.sibling}var vt=null,pn=!1;function mr(e,n,i){for(i=i.child;i!==null;)km(e,n,i),i=i.sibling}function km(e,n,i){if(bn&&typeof bn.onCommitFiberUnmount=="function")try{bn.onCommitFiberUnmount(fs,i)}catch{}switch(i.tag){case 5:Et||Ro(i,n);case 6:var a=vt,f=pn;vt=null,mr(e,n,i),vt=a,pn=f,vt!==null&&(pn?(e=vt,i=i.stateNode,e.nodeType===8?e.parentNode.removeChild(i):e.removeChild(i)):vt.removeChild(i.stateNode));break;case 18:vt!==null&&(pn?(e=vt,i=i.stateNode,e.nodeType===8?eu(e.parentNode,i):e.nodeType===1&&eu(e,i),pi(e)):eu(vt,i.stateNode));break;case 4:a=vt,f=pn,vt=i.stateNode.containerInfo,pn=!0,mr(e,n,i),vt=a,pn=f;break;case 0:case 11:case 14:case 15:if(!Et&&(a=i.updateQueue,a!==null&&(a=a.lastEffect,a!==null))){f=a=a.next;do{var p=f,b=p.destroy;p=p.tag,b!==void 0&&((p&2)!==0||(p&4)!==0)&&Lu(i,n,b),f=f.next}while(f!==a)}mr(e,n,i);break;case 1:if(!Et&&(Ro(i,n),a=i.stateNode,typeof a.componentWillUnmount=="function"))try{a.props=i.memoizedProps,a.state=i.memoizedState,a.componentWillUnmount()}catch(P){Je(i,n,P)}mr(e,n,i);break;case 21:mr(e,n,i);break;case 22:i.mode&1?(Et=(a=Et)||i.memoizedState!==null,mr(e,n,i),Et=a):mr(e,n,i);break;default:mr(e,n,i)}}function Nm(e){var n=e.updateQueue;if(n!==null){e.updateQueue=null;var i=e.stateNode;i===null&&(i=e.stateNode=new Z0),n.forEach(function(a){var f=aw.bind(null,e,a);i.has(a)||(i.add(a),a.then(f,f))})}}function mn(e,n){var i=n.deletions;if(i!==null)for(var a=0;af&&(f=b),a&=~p}if(a=f,a=et()-a,a=(120>a?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*tw(a/1960))-a,10e?16:e,vr===null)var a=!1;else{if(e=vr,vr=null,rl=0,(Me&6)!==0)throw Error(o(331));var f=Me;for(Me|=4,me=e.current;me!==null;){var p=me,b=p.child;if((me.flags&16)!==0){var P=p.deletions;if(P!==null){for(var $=0;$et()-Hu?Br(e,0):Wu|=i),Lt(e,n)}function Fm(e,n){n===0&&((e.mode&1)===0?n=1:(n=ps,ps<<=1,(ps&130023424)===0&&(ps=4194304)));var i=Tt();e=Ln(e,n),e!==null&&(ai(e,n,i),Lt(e,i))}function lw(e){var n=e.memoizedState,i=0;n!==null&&(i=n.retryLane),Fm(e,i)}function aw(e,n){var i=0;switch(e.tag){case 13:var a=e.stateNode,f=e.memoizedState;f!==null&&(i=f.retryLane);break;case 19:a=e.stateNode;break;default:throw Error(o(314))}a!==null&&a.delete(n),Fm(e,i)}var Bm;Bm=function(e,n,i){if(e!==null)if(e.memoizedProps!==n.pendingProps||It.current)At=!0;else{if((e.lanes&i)===0&&(n.flags&128)===0)return At=!1,K0(e,n,i);At=(e.flags&131072)!==0}else At=!1,Ye&&(n.flags&1048576)!==0&&xp(n,Ms,n.index);switch(n.lanes=0,n.tag){case 2:var a=n.type;Qs(e,n),e=n.pendingProps;var f=vo(n,St.current);bo(n,i),f=Su(null,n,a,e,f,i);var p=bu();return n.flags|=1,typeof f=="object"&&f!==null&&typeof f.render=="function"&&f.$$typeof===void 0?(n.tag=1,n.memoizedState=null,n.updateQueue=null,Mt(a)?(p=!0,$s(n)):p=!1,n.memoizedState=f.state!==null&&f.state!==void 0?f.state:null,mu(n),f.updater=Xs,n.stateNode=f,f._reactInternals=n,Pu(n,a,e,i),n=$u(null,n,a,!0,p,i)):(n.tag=0,Ye&&p&&ou(n),_t(null,n,f,i),n=n.child),n;case 16:a=n.elementType;e:{switch(Qs(e,n),e=n.pendingProps,f=a._init,a=f(a._payload),n.type=a,f=n.tag=cw(a),e=dn(a,e),f){case 0:n=ju(null,n,a,e,i);break e;case 1:n=pm(null,n,a,e,i);break e;case 11:n=am(null,n,a,e,i);break e;case 14:n=um(null,n,a,dn(a.type,e),i);break e}throw Error(o(306,a,""))}return n;case 0:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:dn(a,f),ju(e,n,a,f,i);case 1:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:dn(a,f),pm(e,n,a,f,i);case 3:e:{if(mm(n),e===null)throw Error(o(387));a=n.pendingProps,p=n.memoizedState,f=p.element,_p(e,n),Bs(n,a,null,i);var b=n.memoizedState;if(a=b.element,p.isDehydrated)if(p={element:a,isDehydrated:!1,cache:b.cache,pendingSuspenseBoundaries:b.pendingSuspenseBoundaries,transitions:b.transitions},n.updateQueue.baseState=p,n.memoizedState=p,n.flags&256){f=Eo(Error(o(423)),n),n=hm(e,n,a,i,f);break e}else if(a!==f){f=Eo(Error(o(424)),n),n=hm(e,n,a,i,f);break e}else for(Gt=ar(n.stateNode.containerInfo.firstChild),Ut=n,Ye=!0,fn=null,i=Np(n,null,a,i),n.child=i;i;)i.flags=i.flags&-3|4096,i=i.sibling;else{if(wo(),a===f){n=Fn(e,n,i);break e}_t(e,n,a,i)}n=n.child}return n;case 5:return $p(n),e===null&&lu(n),a=n.type,f=n.pendingProps,p=e!==null?e.memoizedProps:null,b=f.children,Za(a,f)?b=null:p!==null&&Za(a,p)&&(n.flags|=32),dm(e,n),_t(e,n,b,i),n.child;case 6:return e===null&&lu(n),null;case 13:return vm(e,n,i);case 4:return hu(n,n.stateNode.containerInfo),a=n.pendingProps,e===null?n.child=xo(n,null,a,i):_t(e,n,a,i),n.child;case 11:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:dn(a,f),am(e,n,a,f,i);case 7:return _t(e,n,n.pendingProps,i),n.child;case 8:return _t(e,n,n.pendingProps.children,i),n.child;case 12:return _t(e,n,n.pendingProps.children,i),n.child;case 10:e:{if(a=n.type._context,f=n.pendingProps,p=n.memoizedProps,b=f.value,We(Ls,a._currentValue),a._currentValue=b,p!==null)if(cn(p.value,b)){if(p.children===f.children&&!It.current){n=Fn(e,n,i);break e}}else for(p=n.child,p!==null&&(p.return=n);p!==null;){var P=p.dependencies;if(P!==null){b=p.child;for(var $=P.firstContext;$!==null;){if($.context===a){if(p.tag===1){$=zn(-1,i&-i),$.tag=2;var G=p.updateQueue;if(G!==null){G=G.shared;var ne=G.pending;ne===null?$.next=$:($.next=ne.next,ne.next=$),G.pending=$}}p.lanes|=i,$=p.alternate,$!==null&&($.lanes|=i),du(p.return,i,n),P.lanes|=i;break}$=$.next}}else if(p.tag===10)b=p.type===n.type?null:p.child;else if(p.tag===18){if(b=p.return,b===null)throw Error(o(341));b.lanes|=i,P=b.alternate,P!==null&&(P.lanes|=i),du(b,i,n),b=p.sibling}else b=p.child;if(b!==null)b.return=p;else for(b=p;b!==null;){if(b===n){b=null;break}if(p=b.sibling,p!==null){p.return=b.return,b=p;break}b=b.return}p=b}_t(e,n,f.children,i),n=n.child}return n;case 9:return f=n.type,a=n.pendingProps.children,bo(n,i),f=Zt(f),a=a(f),n.flags|=1,_t(e,n,a,i),n.child;case 14:return a=n.type,f=dn(a,n.pendingProps),f=dn(a.type,f),um(e,n,a,f,i);case 15:return cm(e,n,n.type,n.pendingProps,i);case 17:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:dn(a,f),Qs(e,n),n.tag=1,Mt(a)?(e=!0,$s(n)):e=!1,bo(n,i),tm(n,a,f),Pu(n,a,f,i),$u(null,n,a,!0,e,i);case 19:return ym(e,n,i);case 22:return fm(e,n,i)}throw Error(o(156,n.tag))};function Vm(e,n){return Sd(e,n)}function uw(e,n,i,a){this.tag=e,this.key=i,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function tn(e,n,i,a){return new uw(e,n,i,a)}function Zu(e){return e=e.prototype,!(!e||!e.isReactComponent)}function cw(e){if(typeof e=="function")return Zu(e)?1:0;if(e!=null){if(e=e.$$typeof,e===K)return 11;if(e===J)return 14}return 2}function wr(e,n){var i=e.alternate;return i===null?(i=tn(e.tag,n,e.key,e.mode),i.elementType=e.elementType,i.type=e.type,i.stateNode=e.stateNode,i.alternate=e,e.alternate=i):(i.pendingProps=n,i.type=e.type,i.flags=0,i.subtreeFlags=0,i.deletions=null),i.flags=e.flags&14680064,i.childLanes=e.childLanes,i.lanes=e.lanes,i.child=e.child,i.memoizedProps=e.memoizedProps,i.memoizedState=e.memoizedState,i.updateQueue=e.updateQueue,n=e.dependencies,i.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},i.sibling=e.sibling,i.index=e.index,i.ref=e.ref,i}function ll(e,n,i,a,f,p){var b=2;if(a=e,typeof e=="function")Zu(e)&&(b=1);else if(typeof e=="string")b=5;else e:switch(e){case H:return Wr(i.children,f,p,n);case z:b=8,f|=8;break;case Q:return e=tn(12,i,n,f|2),e.elementType=Q,e.lanes=p,e;case Z:return e=tn(13,i,n,f),e.elementType=Z,e.lanes=p,e;case te:return e=tn(19,i,n,f),e.elementType=te,e.lanes=p,e;case V:return al(i,f,p,n);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case q:b=10;break e;case X:b=9;break e;case K:b=11;break e;case J:b=14;break e;case B:b=16,a=null;break e}throw Error(o(130,e==null?e:typeof e,""))}return n=tn(b,i,n,f),n.elementType=e,n.type=a,n.lanes=p,n}function Wr(e,n,i,a){return e=tn(7,e,a,n),e.lanes=i,e}function al(e,n,i,a){return e=tn(22,e,a,n),e.elementType=V,e.lanes=i,e.stateNode={isHidden:!1},e}function Ju(e,n,i){return e=tn(6,e,null,n),e.lanes=i,e}function ec(e,n,i){return n=tn(4,e.children!==null?e.children:[],e.key,n),n.lanes=i,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}function fw(e,n,i,a,f){this.tag=n,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Na(0),this.expirationTimes=Na(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Na(0),this.identifierPrefix=a,this.onRecoverableError=f,this.mutableSourceEagerHydrationData=null}function tc(e,n,i,a,f,p,b,P,$){return e=new fw(e,n,i,P,$),n===1?(n=1,p===!0&&(n|=8)):n=0,p=tn(3,null,null,n),e.current=p,p.stateNode=e,p.memoizedState={element:a,isDehydrated:i,cache:null,transitions:null,pendingSuspenseBoundaries:null},mu(p),e}function dw(e,n,i){var a=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(r){console.error(r)}}return t(),lc.exports=Rw(),lc.exports}var nh;function kw(){if(nh)return hl;nh=1;var t=sv();return hl.createRoot=t.createRoot,hl.hydrateRoot=t.hydrateRoot,hl}var Nw=kw(),Pn=function(){return Pn=Object.assign||function(r){for(var o,s=1,l=arguments.length;s"u")return Hw;var r=Uw(t),o=document.documentElement.clientWidth,s=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,s-o+r[2]-r[0])}},Yw=cv(),Do="data-scroll-locked",Xw=function(t,r,o,s){var l=t.left,u=t.top,c=t.right,d=t.gap;return o===void 0&&(o="margin"),` - .`.concat(_w,` { - overflow: hidden `).concat(s,`; - padding-right: `).concat(d,"px ").concat(s,`; - } - body[`).concat(Do,`] { - overflow: hidden `).concat(s,`; - overscroll-behavior: contain; - `).concat([r&&"position: relative ".concat(s,";"),o==="margin"&&` - padding-left: `.concat(l,`px; - padding-top: `).concat(u,`px; - padding-right: `).concat(c,`px; - margin-left:0; - margin-top:0; - margin-right: `).concat(d,"px ").concat(s,`; - `),o==="padding"&&"padding-right: ".concat(d,"px ").concat(s,";")].filter(Boolean).join(""),` - } - - .`).concat(bl,` { - right: `).concat(d,"px ").concat(s,`; - } - - .`).concat(Cl,` { - margin-right: `).concat(d,"px ").concat(s,`; - } - - .`).concat(bl," .").concat(bl,` { - right: 0 `).concat(s,`; - } - - .`).concat(Cl," .").concat(Cl,` { - margin-right: 0 `).concat(s,`; - } - - body[`).concat(Do,`] { - `).concat(Tw,": ").concat(d,`px; - } -`)},oh=function(){var t=parseInt(document.body.getAttribute(Do)||"0",10);return isFinite(t)?t:0},Kw=function(){x.useEffect(function(){return document.body.setAttribute(Do,(oh()+1).toString()),function(){var t=oh()-1;t<=0?document.body.removeAttribute(Do):document.body.setAttribute(Do,t.toString())}},[])},Qw=function(t){var r=t.noRelative,o=t.noImportant,s=t.gapMode,l=s===void 0?"margin":s;Kw();var u=x.useMemo(function(){return Gw(l)},[l]);return x.createElement(Yw,{styles:Xw(u,!r,l,o?"":"!important")})},Oc=!1;if(typeof window<"u")try{var vl=Object.defineProperty({},"passive",{get:function(){return Oc=!0,!0}});window.addEventListener("test",vl,vl),window.removeEventListener("test",vl,vl)}catch{Oc=!1}var _o=Oc?{passive:!1}:!1,qw=function(t){return t.tagName==="TEXTAREA"},fv=function(t,r){if(!(t instanceof Element))return!1;var o=window.getComputedStyle(t);return o[r]!=="hidden"&&!(o.overflowY===o.overflowX&&!qw(t)&&o[r]==="visible")},Zw=function(t){return fv(t,"overflowY")},Jw=function(t){return fv(t,"overflowX")},ih=function(t,r){var o=r.ownerDocument,s=r;do{typeof ShadowRoot<"u"&&s instanceof ShadowRoot&&(s=s.host);var l=dv(t,s);if(l){var u=pv(t,s),c=u[1],d=u[2];if(c>d)return!0}s=s.parentNode}while(s&&s!==o.body);return!1},e1=function(t){var r=t.scrollTop,o=t.scrollHeight,s=t.clientHeight;return[r,o,s]},t1=function(t){var r=t.scrollLeft,o=t.scrollWidth,s=t.clientWidth;return[r,o,s]},dv=function(t,r){return t==="v"?Zw(r):Jw(r)},pv=function(t,r){return t==="v"?e1(r):t1(r)},n1=function(t,r){return t==="h"&&r==="rtl"?-1:1},r1=function(t,r,o,s,l){var u=n1(t,window.getComputedStyle(r).direction),c=u*s,d=o.target,m=r.contains(d),h=!1,v=c>0,g=0,y=0;do{if(!d)break;var w=pv(t,d),C=w[0],E=w[1],R=w[2],N=E-R-u*C;(C||N)&&dv(t,d)&&(g+=N,y+=C);var j=d.parentNode;d=j&&j.nodeType===Node.DOCUMENT_FRAGMENT_NODE?j.host:j}while(!m&&d!==document.body||m&&(r.contains(d)||r===d));return(v&&Math.abs(g)<1||!v&&Math.abs(y)<1)&&(h=!0),h},gl=function(t){return"changedTouches"in t?[t.changedTouches[0].clientX,t.changedTouches[0].clientY]:[0,0]},sh=function(t){return[t.deltaX,t.deltaY]},lh=function(t){return t&&"current"in t?t.current:t},o1=function(t,r){return t[0]===r[0]&&t[1]===r[1]},i1=function(t){return` - .block-interactivity-`.concat(t,` {pointer-events: none;} - .allow-interactivity-`).concat(t,` {pointer-events: all;} -`)},s1=0,To=[];function l1(t){var r=x.useRef([]),o=x.useRef([0,0]),s=x.useRef(),l=x.useState(s1++)[0],u=x.useState(cv)[0],c=x.useRef(t);x.useEffect(function(){c.current=t},[t]),x.useEffect(function(){if(t.inert){document.body.classList.add("block-interactivity-".concat(l));var E=Pw([t.lockRef.current],(t.shards||[]).map(lh),!0).filter(Boolean);return E.forEach(function(R){return R.classList.add("allow-interactivity-".concat(l))}),function(){document.body.classList.remove("block-interactivity-".concat(l)),E.forEach(function(R){return R.classList.remove("allow-interactivity-".concat(l))})}}},[t.inert,t.lockRef.current,t.shards]);var d=x.useCallback(function(E,R){if("touches"in E&&E.touches.length===2||E.type==="wheel"&&E.ctrlKey)return!c.current.allowPinchZoom;var N=gl(E),j=o.current,T="deltaX"in E?E.deltaX:j[0]-N[0],O="deltaY"in E?E.deltaY:j[1]-N[1],A,F=E.target,H=Math.abs(T)>Math.abs(O)?"h":"v";if("touches"in E&&H==="h"&&F.type==="range")return!1;var z=window.getSelection(),Q=z&&z.anchorNode,q=Q?Q===F||Q.contains(F):!1;if(q)return!1;var X=ih(H,F);if(!X)return!0;if(X?A=H:(A=H==="v"?"h":"v",X=ih(H,F)),!X)return!1;if(!s.current&&"changedTouches"in E&&(T||O)&&(s.current=A),!A)return!0;var K=s.current||A;return r1(K,R,E,K==="h"?T:O)},[]),m=x.useCallback(function(E){var R=E;if(!(!To.length||To[To.length-1]!==u)){var N="deltaY"in R?sh(R):gl(R),j=r.current.filter(function(A){return A.name===R.type&&(A.target===R.target||R.target===A.shadowParent)&&o1(A.delta,N)})[0];if(j&&j.should){R.cancelable&&R.preventDefault();return}if(!j){var T=(c.current.shards||[]).map(lh).filter(Boolean).filter(function(A){return A.contains(R.target)}),O=T.length>0?d(R,T[0]):!c.current.noIsolation;O&&R.cancelable&&R.preventDefault()}}},[]),h=x.useCallback(function(E,R,N,j){var T={name:E,delta:R,target:N,should:j,shadowParent:a1(N)};r.current.push(T),setTimeout(function(){r.current=r.current.filter(function(O){return O!==T})},1)},[]),v=x.useCallback(function(E){o.current=gl(E),s.current=void 0},[]),g=x.useCallback(function(E){h(E.type,sh(E),E.target,d(E,t.lockRef.current))},[]),y=x.useCallback(function(E){h(E.type,gl(E),E.target,d(E,t.lockRef.current))},[]);x.useEffect(function(){return To.push(u),t.setCallbacks({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:y}),document.addEventListener("wheel",m,_o),document.addEventListener("touchmove",m,_o),document.addEventListener("touchstart",v,_o),function(){To=To.filter(function(E){return E!==u}),document.removeEventListener("wheel",m,_o),document.removeEventListener("touchmove",m,_o),document.removeEventListener("touchstart",v,_o)}},[]);var w=t.removeScrollBar,C=t.inert;return x.createElement(x.Fragment,null,C?x.createElement(u,{styles:i1(l)}):null,w?x.createElement(Qw,{noRelative:t.noRelative,gapMode:t.gapMode}):null)}function a1(t){for(var r=null;t!==null;)t instanceof ShadowRoot&&(r=t.host,t=t.host),t=t.parentNode;return r}const u1=Dw(uv,l1);var zo=x.forwardRef(function(t,r){return x.createElement(zl,Pn({},t,{ref:r,sideCar:u1}))});zo.classNames=zl.classNames;function xt(t){return Object.keys(t)}function pc(t){return t&&typeof t=="object"&&!Array.isArray(t)}function rf(t,r){const o={...t},s=r;return pc(t)&&pc(r)&&Object.keys(r).forEach(l=>{pc(s[l])&&l in t?o[l]=rf(o[l],s[l]):o[l]=s[l]}),o}function c1(t){return t.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function f1(t){var r;return typeof t!="string"||!t.includes("var(--mantine-scale)")?t:(r=t.match(/^calc\((.*?)\)$/))==null?void 0:r[1].split("*")[0].trim()}function Ic(t){const r=f1(t);return typeof r=="number"?r:typeof r=="string"?r.includes("calc")||r.includes("var")?r:r.includes("px")?Number(r.replace("px","")):r.includes("rem")?Number(r.replace("rem",""))*16:r.includes("em")?Number(r.replace("em",""))*16:Number(r):NaN}function mc(t){return t==="0rem"?"0rem":`calc(${t} * var(--mantine-scale))`}function mv(t,{shouldScale:r=!1}={}){function o(s){if(s===0||s==="0")return`0${t}`;if(typeof s=="number"){const l=`${s/16}${t}`;return r?mc(l):l}if(typeof s=="string"){if(s===""||s.startsWith("calc(")||s.startsWith("clamp(")||s.includes("rgba("))return s;if(s.includes(","))return s.split(",").map(u=>o(u)).join(",");if(s.includes(" "))return s.split(" ").map(u=>o(u)).join(" ");if(s.includes(t))return r?mc(s):s;const l=s.replace("px","");if(!Number.isNaN(Number(l))){const u=`${Number(l)/16}${t}`;return r?mc(u):u}}return s}return o}const Y=mv("rem",{shouldScale:!0}),Pl=mv("em");function of(t){return Object.keys(t).reduce((r,o)=>(t[o]!==void 0&&(r[o]=t[o]),r),{})}function hv(t){if(typeof t=="number")return!0;if(typeof t=="string"){if(t.startsWith("calc(")||t.startsWith("var(")||t.includes(" ")&&t.trim()!=="")return!0;const r=/^[+-]?[0-9]+(\.[0-9]+)?(px|em|rem|ex|ch|lh|rlh|vw|vh|vmin|vmax|vb|vi|svw|svh|lvw|lvh|dvw|dvh|cm|mm|in|pt|pc|q|cqw|cqh|cqi|cqb|cqmin|cqmax|%)?$/;return t.trim().split(/\s+/).every(s=>r.test(s))}return!1}function Jr(t){return Array.isArray(t)||t===null?!1:typeof t=="object"?t.type!==x.Fragment:!1}function Rr(t){const r=x.createContext(null);return[({children:l,value:u})=>S.jsx(r.Provider,{value:u,children:l}),()=>{const l=x.useContext(r);if(l===null)throw new Error(t);return l}]}function sf(t=null){const r=x.createContext(t);return[({children:l,value:u})=>S.jsx(r.Provider,{value:u,children:l}),()=>x.useContext(r)]}const d1={app:100,modal:200,popover:300,overlay:400,max:9999};function Sn(t){return d1[t]}const Mc=()=>{};function p1(t,r={active:!0}){return typeof t!="function"||!r.active?r.onKeyDown||Mc:o=>{var s;o.key==="Escape"&&(t(o),(s=r.onTrigger)==null||s.call(r))}}function Xe(t,r="size",o=!0){if(t!==void 0)return hv(t)?o?Y(t):t:`var(--${r}-${t})`}function Uo(t){return Xe(t,"mantine-spacing")}function $t(t){return t===void 0?"var(--mantine-radius-default)":Xe(t,"mantine-radius")}function jt(t){return Xe(t,"mantine-font-size")}function m1(t){return Xe(t,"mantine-line-height",!1)}function lf(t){if(t)return Xe(t,"mantine-shadow",!1)}function af(t,r){return t in r?Ic(r[t]):Ic(t)}function ah(t,r){const o=t.map(s=>({value:s,px:af(s,r)}));return o.sort((s,l)=>s.px-l.px),o}function El(t,r,o){return r===void 0&&o===void 0?t:r!==void 0&&o===void 0?Math.max(t,r):Math.min(r===void 0&&o!==void 0?t:Math.max(t,r),o)}function vv(t="mantine-"){return`${t}${Math.random().toString(36).slice(2,11)}`}function Yr(t){const r=x.useRef(t);return x.useEffect(()=>{r.current=t}),x.useMemo(()=>(...o)=>{var s;return(s=r.current)==null?void 0:s.call(r,...o)},[])}function Fl(t,r){const o=typeof r=="number"?r:r.delay,s=typeof r=="number"?!1:r.flushOnUnmount,l=Yr(t),u=x.useRef(0),c=x.useRef(()=>{}),d=Object.assign(x.useCallback((...m)=>{window.clearTimeout(u.current);const h=()=>{u.current!==0&&(u.current=0,l(...m))};c.current=h,d.flush=h,u.current=window.setTimeout(h,o)},[l,o]),{flush:c.current});return x.useEffect(()=>()=>{window.clearTimeout(u.current),s&&d.flush()},[d,s]),d}const uh=["mousedown","touchstart"];function h1(t,r,o){const s=x.useRef(null);return x.useEffect(()=>{const l=u=>{const{target:c}=u??{};if(Array.isArray(o)){const d=(c==null?void 0:c.hasAttribute("data-ignore-outside-clicks"))||!document.body.contains(c)&&c.tagName!=="HTML";o.every(h=>!!h&&!u.composedPath().includes(h))&&!d&&t()}else s.current&&!s.current.contains(c)&&t()};return(r||uh).forEach(u=>document.addEventListener(u,l)),()=>{(r||uh).forEach(u=>document.removeEventListener(u,l))}},[s,t,o]),s}function v1(t,r){try{return t.addEventListener("change",r),()=>t.removeEventListener("change",r)}catch{return t.addListener(r),()=>t.removeListener(r)}}function g1(t,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(t).matches:!1}function y1(t,r,{getInitialValueInEffect:o}={getInitialValueInEffect:!0}){const[s,l]=x.useState(o?r:g1(t)),u=x.useRef(null);return x.useEffect(()=>{if("matchMedia"in window)return u.current=window.matchMedia(t),l(u.current.matches),v1(u.current,c=>l(c.matches))},[t]),s}const Go=typeof document<"u"?x.useLayoutEffect:x.useEffect;function Hn(t,r){const o=x.useRef(!1);x.useEffect(()=>()=>{o.current=!1},[]),x.useEffect(()=>{if(o.current)return t();o.current=!0},r)}function gv({opened:t,shouldReturnFocus:r=!0}){const o=x.useRef(null),s=()=>{var l;o.current&&"focus"in o.current&&typeof o.current.focus=="function"&&((l=o.current)==null||l.focus({preventScroll:!0}))};return Hn(()=>{let l=-1;const u=c=>{c.key==="Tab"&&window.clearTimeout(l)};return document.addEventListener("keydown",u),t?o.current=document.activeElement:r&&(l=window.setTimeout(s,10)),()=>{window.clearTimeout(l),document.removeEventListener("keydown",u)}},[t,r]),s}const w1=/input|select|textarea|button|object/,yv="a, input, select, textarea, button, object, [tabindex]";function x1(t){return t.style.display==="none"}function S1(t){if(t.getAttribute("aria-hidden")||t.getAttribute("hidden")||t.getAttribute("type")==="hidden")return!1;let o=t;for(;o&&!(o===document.body||o.nodeType===11);){if(x1(o))return!1;o=o.parentNode}return!0}function wv(t){let r=t.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function Ac(t){const r=t.nodeName.toLowerCase(),o=!Number.isNaN(wv(t));return(w1.test(r)&&!t.disabled||t instanceof HTMLAnchorElement&&t.href||o)&&S1(t)}function xv(t){const r=wv(t);return(Number.isNaN(r)||r>=0)&&Ac(t)}function b1(t){return Array.from(t.querySelectorAll(yv)).filter(xv)}function C1(t,r){const o=b1(t);if(!o.length){r.preventDefault();return}const s=o[r.shiftKey?0:o.length-1],l=t.getRootNode();let u=s===l.activeElement||t===l.activeElement;const c=l.activeElement;if(c.tagName==="INPUT"&&c.getAttribute("type")==="radio"&&(u=o.filter(v=>v.getAttribute("type")==="radio"&&v.getAttribute("name")===c.getAttribute("name")).includes(s)),!u)return;r.preventDefault();const m=o[r.shiftKey?o.length-1:0];m&&m.focus()}function E1(t=!0){const r=x.useRef(null),o=l=>{let u=l.querySelector("[data-autofocus]");if(!u){const c=Array.from(l.querySelectorAll(yv));u=c.find(xv)||c.find(Ac)||null,!u&&Ac(l)&&(u=l)}u&&u.focus({preventScroll:!0})},s=x.useCallback(l=>{t&&l!==null&&r.current!==l&&(l?(setTimeout(()=>{l.getRootNode()&&o(l)}),r.current=l):r.current=null)},[t]);return x.useEffect(()=>{if(!t)return;r.current&&setTimeout(()=>o(r.current));const l=u=>{u.key==="Tab"&&r.current&&C1(r.current,u)};return document.addEventListener("keydown",l),()=>document.removeEventListener("keydown",l)},[t]),s}const R1=t=>(t+1)%1e6;function k1(){const[,t]=x.useReducer(R1,0);return t}const N1=st.useId||(()=>{});function P1(){const t=N1();return t?`mantine-${t.replace(/:/g,"")}`:""}function kr(t){const r=P1(),[o,s]=x.useState(r);return Go(()=>{s(vv())},[]),typeof t=="string"?t:typeof window>"u"?r:o}function Sv(t,r,o){x.useEffect(()=>(window.addEventListener(t,r,o),()=>window.removeEventListener(t,r,o)),[t,r])}function _l(t,r){if(typeof t=="function")return t(r);typeof t=="object"&&t!==null&&"current"in t&&(t.current=r)}function bv(...t){const r=new Map;return o=>{if(t.forEach(s=>{const l=_l(s,o);l&&r.set(s,l)}),r.size>0)return()=>{t.forEach(s=>{const l=r.get(s);l?l():_l(s,null)}),r.clear()}}}function Ot(...t){return x.useCallback(bv(...t),t)}function Fo({value:t,defaultValue:r,finalValue:o,onChange:s=()=>{}}){const[l,u]=x.useState(r!==void 0?r:o),c=(d,...m)=>{u(d),s==null||s(d,...m)};return t!==void 0?[t,s,!0]:[l,c,!1]}function Bl(t,r){return y1("(prefers-reduced-motion: reduce)",t,r)}function _1(t){const r=x.useRef(void 0);return x.useEffect(()=>{r.current=t},[t]),r.current}function Vl(t){var o;const r=st.version;return typeof st.version!="string"||r.startsWith("18.")?t==null?void 0:t.ref:(o=t==null?void 0:t.props)==null?void 0:o.ref}function Cv(t){var r,o,s="";if(typeof t=="string"||typeof t=="number")s+=t;else if(typeof t=="object")if(Array.isArray(t)){var l=t.length;for(r=0;r{Object.entries(o).forEach(([s,l])=>{r[s]?r[s]=lt(r[s],l):r[s]=l})}),r}function Wl({theme:t,classNames:r,props:o,stylesCtx:s}){const u=(Array.isArray(r)?r:[r]).map(c=>typeof c=="function"?c(t,o,s):c||T1);return j1(u)}function Tl({theme:t,styles:r,props:o,stylesCtx:s}){return(Array.isArray(r)?r:[r]).reduce((u,c)=>typeof c=="function"?{...u,...c(t,o,s)}:{...u,...c},{})}const Ev=x.createContext(null);function Qn(){const t=x.useContext(Ev);if(!t)throw new Error("[@mantine/core] MantineProvider was not found in tree");return t}function $1(){return Qn().cssVariablesResolver}function O1(){return Qn().classNamesPrefix}function uf(){return Qn().getStyleNonce}function I1(){return Qn().withStaticClasses}function M1(){return Qn().headless}function A1(){var t;return(t=Qn().stylesTransform)==null?void 0:t.sx}function D1(){var t;return(t=Qn().stylesTransform)==null?void 0:t.styles}function Rv(){return Qn().env||"default"}function L1(t){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(t)}function z1(t){let r=t.replace("#","");if(r.length===3){const c=r.split("");r=[c[0],c[0],c[1],c[1],c[2],c[2]].join("")}if(r.length===8){const c=parseInt(r.slice(6,8),16)/255;return{r:parseInt(r.slice(0,2),16),g:parseInt(r.slice(2,4),16),b:parseInt(r.slice(4,6),16),a:c}}const o=parseInt(r,16),s=o>>16&255,l=o>>8&255,u=o&255;return{r:s,g:l,b:u,a:1}}function F1(t){const[r,o,s,l]=t.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r,g:o,b:s,a:l===void 0?1:l}}function B1(t){const r=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,o=t.match(r);if(!o)return{r:0,g:0,b:0,a:1};const s=parseInt(o[1],10),l=parseInt(o[2],10)/100,u=parseInt(o[3],10)/100,c=o[5]?parseFloat(o[5]):void 0,d=(1-Math.abs(2*u-1))*l,m=s/60,h=d*(1-Math.abs(m%2-1)),v=u-d/2;let g,y,w;return m>=0&&m<1?(g=d,y=h,w=0):m>=1&&m<2?(g=h,y=d,w=0):m>=2&&m<3?(g=0,y=d,w=h):m>=3&&m<4?(g=0,y=h,w=d):m>=4&&m<5?(g=h,y=0,w=d):(g=d,y=0,w=h),{r:Math.round((g+v)*255),g:Math.round((y+v)*255),b:Math.round((w+v)*255),a:c||1}}function cf(t){return L1(t)?z1(t):t.startsWith("rgb")?F1(t):t.startsWith("hsl")?B1(t):{r:0,g:0,b:0,a:1}}function yl(t,r){if(t.startsWith("var("))return`color-mix(in srgb, ${t}, black ${r*100}%)`;const{r:o,g:s,b:l,a:u}=cf(t),c=1-r,d=m=>Math.round(m*c);return`rgba(${d(o)}, ${d(s)}, ${d(l)}, ${u})`}function Xi(t,r){return typeof t.primaryShade=="number"?t.primaryShade:r==="dark"?t.primaryShade.dark:t.primaryShade.light}function hc(t){return t<=.03928?t/12.92:((t+.055)/1.055)**2.4}function V1(t){const r=t.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function W1(t){if(t.startsWith("oklch("))return(V1(t)||0)/100;const{r,g:o,b:s}=cf(t),l=r/255,u=o/255,c=s/255,d=hc(l),m=hc(u),h=hc(c);return .2126*d+.7152*m+.0722*h}function Bi(t,r=.179){return t.startsWith("var(")?!1:W1(t)>r}function Ji({color:t,theme:r,colorScheme:o}){if(typeof t!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof t}`);if(t==="bright")return{color:t,value:o==="dark"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:Bi(o==="dark"?r.white:r.black,r.luminanceThreshold),variable:"--mantine-color-bright"};if(t==="dimmed")return{color:t,value:o==="dark"?r.colors.dark[2]:r.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:Bi(o==="dark"?r.colors.dark[2]:r.colors.gray[6],r.luminanceThreshold),variable:"--mantine-color-dimmed"};if(t==="white"||t==="black")return{color:t,value:t==="white"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:Bi(t==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${t}`};const[s,l]=t.split("."),u=l?Number(l):void 0,c=s in r.colors;if(c){const d=u!==void 0?r.colors[s][u]:r.colors[s][Xi(r,o||"light")];return{color:s,value:d,shade:u,isThemeColor:c,isLight:Bi(d,r.luminanceThreshold),variable:l?`--mantine-color-${s}-${u}`:`--mantine-color-${s}-filled`}}return{color:t,value:t,isThemeColor:c,isLight:Bi(t,r.luminanceThreshold),shade:u,variable:void 0}}function Un(t,r){const o=Ji({color:t||r.primaryColor,theme:r});return o.variable?`var(${o.variable})`:t}function Dc(t,r){const o={from:(t==null?void 0:t.from)||r.defaultGradient.from,to:(t==null?void 0:t.to)||r.defaultGradient.to,deg:(t==null?void 0:t.deg)??r.defaultGradient.deg??0},s=Un(o.from,r),l=Un(o.to,r);return`linear-gradient(${o.deg}deg, ${s} 0%, ${l} 100%)`}function Nn(t,r){if(typeof t!="string"||r>1||r<0)return"rgba(0, 0, 0, 1)";if(t.startsWith("var(")){const u=(1-r)*100;return`color-mix(in srgb, ${t}, transparent ${u}%)`}if(t.startsWith("oklch"))return t.includes("/")?t.replace(/\/\s*[\d.]+\s*\)/,`/ ${r})`):t.replace(")",` / ${r})`);const{r:o,g:s,b:l}=cf(t);return`rgba(${o}, ${s}, ${l}, ${r})`}const jo=Nn,H1=({color:t,theme:r,variant:o,gradient:s,autoContrast:l})=>{const u=Ji({color:t,theme:r}),c=typeof l=="boolean"?l:r.autoContrast;if(o==="filled"){const d=c&&u.isLight?"var(--mantine-color-black)":"var(--mantine-color-white)";return u.isThemeColor?u.shade===void 0?{background:`var(--mantine-color-${t}-filled)`,hover:`var(--mantine-color-${t}-filled-hover)`,color:d,border:`${Y(1)} solid transparent`}:{background:`var(--mantine-color-${u.color}-${u.shade})`,hover:`var(--mantine-color-${u.color}-${u.shade===9?8:u.shade+1})`,color:d,border:`${Y(1)} solid transparent`}:{background:t,hover:yl(t,.1),color:d,border:`${Y(1)} solid transparent`}}if(o==="light"){if(u.isThemeColor){if(u.shade===void 0)return{background:`var(--mantine-color-${t}-light)`,hover:`var(--mantine-color-${t}-light-hover)`,color:`var(--mantine-color-${t}-light-color)`,border:`${Y(1)} solid transparent`};const d=r.colors[u.color][u.shade];return{background:Nn(d,.1),hover:Nn(d,.12),color:`var(--mantine-color-${u.color}-${Math.min(u.shade,6)})`,border:`${Y(1)} solid transparent`}}return{background:Nn(t,.1),hover:Nn(t,.12),color:t,border:`${Y(1)} solid transparent`}}if(o==="outline")return u.isThemeColor?u.shade===void 0?{background:"transparent",hover:`var(--mantine-color-${t}-outline-hover)`,color:`var(--mantine-color-${t}-outline)`,border:`${Y(1)} solid var(--mantine-color-${t}-outline)`}:{background:"transparent",hover:Nn(r.colors[u.color][u.shade],.05),color:`var(--mantine-color-${u.color}-${u.shade})`,border:`${Y(1)} solid var(--mantine-color-${u.color}-${u.shade})`}:{background:"transparent",hover:Nn(t,.05),color:t,border:`${Y(1)} solid ${t}`};if(o==="subtle"){if(u.isThemeColor){if(u.shade===void 0)return{background:"transparent",hover:`var(--mantine-color-${t}-light-hover)`,color:`var(--mantine-color-${t}-light-color)`,border:`${Y(1)} solid transparent`};const d=r.colors[u.color][u.shade];return{background:"transparent",hover:Nn(d,.12),color:`var(--mantine-color-${u.color}-${Math.min(u.shade,6)})`,border:`${Y(1)} solid transparent`}}return{background:"transparent",hover:Nn(t,.12),color:t,border:`${Y(1)} solid transparent`}}return o==="transparent"?u.isThemeColor?u.shade===void 0?{background:"transparent",hover:"transparent",color:`var(--mantine-color-${t}-light-color)`,border:`${Y(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:`var(--mantine-color-${u.color}-${Math.min(u.shade,6)})`,border:`${Y(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:t,border:`${Y(1)} solid transparent`}:o==="white"?u.isThemeColor?u.shade===void 0?{background:"var(--mantine-color-white)",hover:yl(r.white,.01),color:`var(--mantine-color-${t}-filled)`,border:`${Y(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:yl(r.white,.01),color:`var(--mantine-color-${u.color}-${u.shade})`,border:`${Y(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:yl(r.white,.01),color:t,border:`${Y(1)} solid transparent`}:o==="gradient"?{background:Dc(s,r),hover:Dc(s,r),color:"var(--mantine-color-white)",border:"none"}:o==="default"?{background:"var(--mantine-color-default)",hover:"var(--mantine-color-default-hover)",color:"var(--mantine-color-default-color)",border:`${Y(1)} solid var(--mantine-color-default-border)`}:{}},U1={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},ch="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",ff={scale:1,fontSmoothing:!0,focusRing:"auto",white:"#fff",black:"#000",colors:U1,primaryShade:{light:6,dark:8},primaryColor:"blue",variantColorResolver:H1,autoContrast:!1,luminanceThreshold:.3,fontFamily:ch,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",respectReducedMotion:!1,cursorType:"default",defaultGradient:{from:"blue",to:"cyan",deg:45},defaultRadius:"sm",activeClassName:"mantine-active",focusClassName:"",headings:{fontFamily:ch,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:Y(34),lineHeight:"1.3"},h2:{fontSize:Y(26),lineHeight:"1.35"},h3:{fontSize:Y(22),lineHeight:"1.4"},h4:{fontSize:Y(18),lineHeight:"1.45"},h5:{fontSize:Y(16),lineHeight:"1.5"},h6:{fontSize:Y(14),lineHeight:"1.5"}}},fontSizes:{xs:Y(12),sm:Y(14),md:Y(16),lg:Y(18),xl:Y(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:Y(2),sm:Y(4),md:Y(8),lg:Y(16),xl:Y(32)},spacing:{xs:Y(10),sm:Y(12),md:Y(16),lg:Y(20),xl:Y(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), 0 ${Y(1)} ${Y(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Y(10)} ${Y(15)} ${Y(-5)}, rgba(0, 0, 0, 0.04) 0 ${Y(7)} ${Y(7)} ${Y(-5)}`,md:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Y(20)} ${Y(25)} ${Y(-5)}, rgba(0, 0, 0, 0.04) 0 ${Y(10)} ${Y(10)} ${Y(-5)}`,lg:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Y(28)} ${Y(23)} ${Y(-7)}, rgba(0, 0, 0, 0.04) 0 ${Y(12)} ${Y(12)} ${Y(-7)}`,xl:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Y(36)} ${Y(28)} ${Y(-7)}, rgba(0, 0, 0, 0.04) 0 ${Y(17)} ${Y(17)} ${Y(-7)}`},other:{},components:{}};function fh(t){return t==="auto"||t==="dark"||t==="light"}function G1({key:t="mantine-color-scheme-value"}={}){let r;return{get:o=>{if(typeof window>"u")return o;try{const s=window.localStorage.getItem(t);return fh(s)?s:o}catch{return o}},set:o=>{try{window.localStorage.setItem(t,o)}catch(s){console.warn("[@mantine/core] Local storage color scheme manager was unable to save color scheme.",s)}},subscribe:o=>{r=s=>{s.storageArea===window.localStorage&&s.key===t&&fh(s.newValue)&&o(s.newValue)},window.addEventListener("storage",r)},unsubscribe:()=>{window.removeEventListener("storage",r)},clear:()=>{window.localStorage.removeItem(t)}}}const Y1="[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more – https://mantine.dev/theming/colors/#primary-color",dh="[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";function vc(t){return t<0||t>9?!1:parseInt(t.toString(),10)===t}function ph(t){if(!(t.primaryColor in t.colors))throw new Error(Y1);if(typeof t.primaryShade=="object"&&(!vc(t.primaryShade.dark)||!vc(t.primaryShade.light)))throw new Error(dh);if(typeof t.primaryShade=="number"&&!vc(t.primaryShade))throw new Error(dh)}function X1(t,r){var s;if(!r)return ph(t),t;const o=rf(t,r);return r.fontFamily&&!((s=r.headings)!=null&&s.fontFamily)&&(o.headings.fontFamily=r.fontFamily),ph(o),o}const df=x.createContext(null),K1=()=>x.useContext(df)||ff;function rn(){const t=x.useContext(df);if(!t)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return t}function kv({theme:t,children:r,inherit:o=!0}){const s=K1(),l=x.useMemo(()=>X1(o?s:ff,t),[t,s,o]);return S.jsx(df.Provider,{value:l,children:r})}kv.displayName="@mantine/core/MantineThemeProvider";function Q1(){const t=rn(),r=uf(),o=xt(t.breakpoints).reduce((s,l)=>{const u=t.breakpoints[l].includes("px"),c=Ic(t.breakpoints[l]),d=u?`${c-.1}px`:Pl(c-.1),m=u?`${c}px`:Pl(c);return`${s}@media (max-width: ${d}) {.mantine-visible-from-${l} {display: none !important;}}@media (min-width: ${m}) {.mantine-hidden-from-${l} {display: none !important;}}`},"");return S.jsx("style",{"data-mantine-styles":"classes",nonce:r==null?void 0:r(),dangerouslySetInnerHTML:{__html:o}})}function gc(t){return Object.entries(t).map(([r,o])=>`${r}: ${o};`).join("")}function Vi(t,r){return(Array.isArray(t)?t:[t]).reduce((s,l)=>`${l}{${s}}`,r)}function q1(t,r){const o=gc(t.variables),s=o?Vi(r,o):"",l=gc(t.dark),u=gc(t.light),c=l?Vi(r===":host"?`${r}([data-mantine-color-scheme="dark"])`:`${r}[data-mantine-color-scheme="dark"]`,l):"",d=u?Vi(r===":host"?`${r}([data-mantine-color-scheme="light"])`:`${r}[data-mantine-color-scheme="light"]`,u):"";return`${s}${c}${d}`}function Z1({color:t,theme:r,autoContrast:o}){return r.autoContrast&&Ji({color:t||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function mh(t,r){return Z1({color:t.colors[t.primaryColor][Xi(t,r)],theme:t,autoContrast:null})}function wl({theme:t,color:r,colorScheme:o,name:s=r,withColorValues:l=!0}){if(!t.colors[r])return{};if(o==="light"){const d=Xi(t,"light"),m={[`--mantine-color-${s}-text`]:`var(--mantine-color-${s}-filled)`,[`--mantine-color-${s}-filled`]:`var(--mantine-color-${s}-${d})`,[`--mantine-color-${s}-filled-hover`]:`var(--mantine-color-${s}-${d===9?8:d+1})`,[`--mantine-color-${s}-light`]:jo(t.colors[r][d],.1),[`--mantine-color-${s}-light-hover`]:jo(t.colors[r][d],.12),[`--mantine-color-${s}-light-color`]:`var(--mantine-color-${s}-${d})`,[`--mantine-color-${s}-outline`]:`var(--mantine-color-${s}-${d})`,[`--mantine-color-${s}-outline-hover`]:jo(t.colors[r][d],.05)};return l?{[`--mantine-color-${s}-0`]:t.colors[r][0],[`--mantine-color-${s}-1`]:t.colors[r][1],[`--mantine-color-${s}-2`]:t.colors[r][2],[`--mantine-color-${s}-3`]:t.colors[r][3],[`--mantine-color-${s}-4`]:t.colors[r][4],[`--mantine-color-${s}-5`]:t.colors[r][5],[`--mantine-color-${s}-6`]:t.colors[r][6],[`--mantine-color-${s}-7`]:t.colors[r][7],[`--mantine-color-${s}-8`]:t.colors[r][8],[`--mantine-color-${s}-9`]:t.colors[r][9],...m}:m}const u=Xi(t,"dark"),c={[`--mantine-color-${s}-text`]:`var(--mantine-color-${s}-4)`,[`--mantine-color-${s}-filled`]:`var(--mantine-color-${s}-${u})`,[`--mantine-color-${s}-filled-hover`]:`var(--mantine-color-${s}-${u===9?8:u+1})`,[`--mantine-color-${s}-light`]:jo(t.colors[r][Math.max(0,u-2)],.15),[`--mantine-color-${s}-light-hover`]:jo(t.colors[r][Math.max(0,u-2)],.2),[`--mantine-color-${s}-light-color`]:`var(--mantine-color-${s}-${Math.max(u-5,0)})`,[`--mantine-color-${s}-outline`]:`var(--mantine-color-${s}-${Math.max(u-4,0)})`,[`--mantine-color-${s}-outline-hover`]:jo(t.colors[r][Math.max(u-4,0)],.05)};return l?{[`--mantine-color-${s}-0`]:t.colors[r][0],[`--mantine-color-${s}-1`]:t.colors[r][1],[`--mantine-color-${s}-2`]:t.colors[r][2],[`--mantine-color-${s}-3`]:t.colors[r][3],[`--mantine-color-${s}-4`]:t.colors[r][4],[`--mantine-color-${s}-5`]:t.colors[r][5],[`--mantine-color-${s}-6`]:t.colors[r][6],[`--mantine-color-${s}-7`]:t.colors[r][7],[`--mantine-color-${s}-8`]:t.colors[r][8],[`--mantine-color-${s}-9`]:t.colors[r][9],...c}:c}function J1(t){return!!t&&typeof t=="object"&&"mantine-virtual-color"in t}function $o(t,r,o){xt(r).forEach(s=>Object.assign(t,{[`--mantine-${o}-${s}`]:r[s]}))}const Nv=t=>{const r=Xi(t,"light"),o=t.defaultRadius in t.radius?t.radius[t.defaultRadius]:Y(t.defaultRadius),s={variables:{"--mantine-scale":t.scale.toString(),"--mantine-cursor-type":t.cursorType,"--mantine-color-scheme":"light dark","--mantine-webkit-font-smoothing":t.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":t.fontSmoothing?"grayscale":"unset","--mantine-color-white":t.white,"--mantine-color-black":t.black,"--mantine-line-height":t.lineHeights.md,"--mantine-font-family":t.fontFamily,"--mantine-font-family-monospace":t.fontFamilyMonospace,"--mantine-font-family-headings":t.headings.fontFamily,"--mantine-heading-font-weight":t.headings.fontWeight,"--mantine-heading-text-wrap":t.headings.textWrap,"--mantine-radius-default":o,"--mantine-primary-color-filled":`var(--mantine-color-${t.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${t.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${t.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${t.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${t.primaryColor}-light-color)`},light:{"--mantine-primary-color-contrast":mh(t,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":t.black,"--mantine-color-body":t.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${t.primaryColor}-${r})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)"},dark:{"--mantine-primary-color-contrast":mh(t,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${t.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)"}};$o(s.variables,t.breakpoints,"breakpoint"),$o(s.variables,t.spacing,"spacing"),$o(s.variables,t.fontSizes,"font-size"),$o(s.variables,t.lineHeights,"line-height"),$o(s.variables,t.shadows,"shadow"),$o(s.variables,t.radius,"radius"),t.colors[t.primaryColor].forEach((u,c)=>{s.variables[`--mantine-primary-color-${c}`]=`var(--mantine-color-${t.primaryColor}-${c})`}),xt(t.colors).forEach(u=>{const c=t.colors[u];if(J1(c)){Object.assign(s.light,wl({theme:t,name:c.name,color:c.light,colorScheme:"light",withColorValues:!0})),Object.assign(s.dark,wl({theme:t,name:c.name,color:c.dark,colorScheme:"dark",withColorValues:!0}));return}c.forEach((d,m)=>{s.variables[`--mantine-color-${u}-${m}`]=d}),Object.assign(s.light,wl({theme:t,color:u,colorScheme:"light",withColorValues:!1})),Object.assign(s.dark,wl({theme:t,color:u,colorScheme:"dark",withColorValues:!1}))});const l=t.headings.sizes;return xt(l).forEach(u=>{s.variables[`--mantine-${u}-font-size`]=l[u].fontSize,s.variables[`--mantine-${u}-line-height`]=l[u].lineHeight,s.variables[`--mantine-${u}-font-weight`]=l[u].fontWeight||t.headings.fontWeight}),s};function ex({theme:t,generator:r}){const o=Nv(t),s=r==null?void 0:r(t);return s?rf(o,s):o}const yc=Nv(ff);function tx(t){const r={variables:{},light:{},dark:{}};return xt(t.variables).forEach(o=>{yc.variables[o]!==t.variables[o]&&(r.variables[o]=t.variables[o])}),xt(t.light).forEach(o=>{yc.light[o]!==t.light[o]&&(r.light[o]=t.light[o])}),xt(t.dark).forEach(o=>{yc.dark[o]!==t.dark[o]&&(r.dark[o]=t.dark[o])}),r}function nx(t){return` - ${t}[data-mantine-color-scheme="dark"] { --mantine-color-scheme: dark; } - ${t}[data-mantine-color-scheme="light"] { --mantine-color-scheme: light; } -`}function Pv({cssVariablesSelector:t,deduplicateCssVariables:r}){const o=rn(),s=uf(),l=$1(),u=ex({theme:o,generator:l}),c=t===":root"&&r,d=c?tx(u):u,m=q1(d,t);return m?S.jsx("style",{"data-mantine-styles":!0,nonce:s==null?void 0:s(),dangerouslySetInnerHTML:{__html:`${m}${c?"":nx(t)}`}}):null}Pv.displayName="@mantine/CssVariables";function rx(){const t=console.error;console.error=(...r)=>{r.length>1&&typeof r[0]=="string"&&r[0].toLowerCase().includes("extra attributes from the server")&&typeof r[1]=="string"&&r[1].toLowerCase().includes("data-mantine-color-scheme")||t(...r)}}function Oo(t,r){var l,u;const o=typeof window<"u"&&"matchMedia"in window&&((l=window.matchMedia("(prefers-color-scheme: dark)"))==null?void 0:l.matches),s=t!=="auto"?t:o?"dark":"light";(u=r())==null||u.setAttribute("data-mantine-color-scheme",s)}function ox({manager:t,defaultColorScheme:r,getRootElement:o,forceColorScheme:s}){const l=x.useRef(null),[u,c]=x.useState(()=>t.get(r)),d=s||u,m=x.useCallback(v=>{s||(Oo(v,o),c(v),t.set(v))},[t.set,d,s]),h=x.useCallback(()=>{c(r),Oo(r,o),t.clear()},[t.clear,r]);return x.useEffect(()=>(t.subscribe(m),t.unsubscribe),[t.subscribe,t.unsubscribe]),Go(()=>{Oo(t.get(r),o)},[]),x.useEffect(()=>{var g;if(s)return Oo(s,o),()=>{};s===void 0&&Oo(u,o),typeof window<"u"&&"matchMedia"in window&&(l.current=window.matchMedia("(prefers-color-scheme: dark)"));const v=y=>{u==="auto"&&Oo(y.matches?"dark":"light",o)};return(g=l.current)==null||g.addEventListener("change",v),()=>{var y;return(y=l.current)==null?void 0:y.removeEventListener("change",v)}},[u,s]),{colorScheme:d,setColorScheme:m,clearColorScheme:h}}function ix({respectReducedMotion:t,getRootElement:r}){Go(()=>{var o;t&&((o=r())==null||o.setAttribute("data-respect-reduced-motion","true"))},[t])}rx();function _v({theme:t,children:r,getStyleNonce:o,withStaticClasses:s=!0,withGlobalClasses:l=!0,deduplicateCssVariables:u=!0,withCssVariables:c=!0,cssVariablesSelector:d=":root",classNamesPrefix:m="mantine",colorSchemeManager:h=G1(),defaultColorScheme:v="light",getRootElement:g=()=>document.documentElement,cssVariablesResolver:y,forceColorScheme:w,stylesTransform:C,env:E}){const{colorScheme:R,setColorScheme:N,clearColorScheme:j}=ox({defaultColorScheme:v,forceColorScheme:w,manager:h,getRootElement:g});return ix({respectReducedMotion:(t==null?void 0:t.respectReducedMotion)||!1,getRootElement:g}),S.jsx(Ev.Provider,{value:{colorScheme:R,setColorScheme:N,clearColorScheme:j,getRootElement:g,classNamesPrefix:m,getStyleNonce:o,cssVariablesResolver:y,cssVariablesSelector:d,withStaticClasses:s,stylesTransform:C,env:E},children:S.jsxs(kv,{theme:t,children:[c&&S.jsx(Pv,{cssVariablesSelector:d,deduplicateCssVariables:u}),l&&S.jsx(Q1,{}),r]})})}_v.displayName="@mantine/core/MantineProvider";function es({classNames:t,styles:r,props:o,stylesCtx:s}){const l=rn();return{resolvedClassNames:Wl({theme:l,classNames:t,props:o,stylesCtx:s||void 0}),resolvedStyles:Tl({theme:l,styles:r,props:o,stylesCtx:s||void 0})}}const sx={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function lx({theme:t,options:r,unstyled:o}){return lt((r==null?void 0:r.focusable)&&!o&&(t.focusClassName||sx[t.focusRing]),(r==null?void 0:r.active)&&!o&&t.activeClassName)}function ax({selector:t,stylesCtx:r,options:o,props:s,theme:l}){return Wl({theme:l,classNames:o==null?void 0:o.classNames,props:(o==null?void 0:o.props)||s,stylesCtx:r})[t]}function hh({selector:t,stylesCtx:r,theme:o,classNames:s,props:l}){return Wl({theme:o,classNames:s,props:l,stylesCtx:r})[t]}function ux({rootSelector:t,selector:r,className:o}){return t===r?o:void 0}function cx({selector:t,classes:r,unstyled:o}){return o?void 0:r[t]}function fx({themeName:t,classNamesPrefix:r,selector:o,withStaticClass:s}){return s===!1?[]:t.map(l=>`${r}-${l}-${o}`)}function dx({themeName:t,theme:r,selector:o,props:s,stylesCtx:l}){return t.map(u=>{var c,d;return(d=Wl({theme:r,classNames:(c=r.components[u])==null?void 0:c.classNames,props:s,stylesCtx:l}))==null?void 0:d[o]})}function px({options:t,classes:r,selector:o,unstyled:s}){return t!=null&&t.variant&&!s?r[`${o}--${t.variant}`]:void 0}function mx({theme:t,options:r,themeName:o,selector:s,classNamesPrefix:l,classNames:u,classes:c,unstyled:d,className:m,rootSelector:h,props:v,stylesCtx:g,withStaticClasses:y,headless:w,transformedStyles:C}){return lt(lx({theme:t,options:r,unstyled:d||w}),dx({theme:t,themeName:o,selector:s,props:v,stylesCtx:g}),px({options:r,classes:c,selector:s,unstyled:d}),hh({selector:s,stylesCtx:g,theme:t,classNames:u,props:v}),hh({selector:s,stylesCtx:g,theme:t,classNames:C,props:v}),ax({selector:s,stylesCtx:g,options:r,props:v,theme:t}),ux({rootSelector:h,selector:s,className:m}),cx({selector:s,classes:c,unstyled:d||w}),y&&!w&&fx({themeName:o,classNamesPrefix:l,selector:s,withStaticClass:r==null?void 0:r.withStaticClass}),r==null?void 0:r.className)}function hx({theme:t,themeName:r,props:o,stylesCtx:s,selector:l}){return r.map(u=>{var c;return Tl({theme:t,styles:(c=t.components[u])==null?void 0:c.styles,props:o,stylesCtx:s})[l]}).reduce((u,c)=>({...u,...c}),{})}function Lc({style:t,theme:r}){return Array.isArray(t)?[...t].reduce((o,s)=>({...o,...Lc({style:s,theme:r})}),{}):typeof t=="function"?t(r):t??{}}function vx(t){return t.reduce((r,o)=>(o&&Object.keys(o).forEach(s=>{r[s]={...r[s],...of(o[s])}}),r),{})}function gx({vars:t,varsResolver:r,theme:o,props:s,stylesCtx:l,selector:u,themeName:c,headless:d}){var m;return(m=vx([d?{}:r==null?void 0:r(o,s,l),...c.map(h=>{var v,g,y;return(y=(g=(v=o.components)==null?void 0:v[h])==null?void 0:g.vars)==null?void 0:y.call(g,o,s,l)}),t==null?void 0:t(o,s,l)]))==null?void 0:m[u]}function yx({theme:t,themeName:r,selector:o,options:s,props:l,stylesCtx:u,rootSelector:c,styles:d,style:m,vars:h,varsResolver:v,headless:g,withStylesTransform:y}){return{...!y&&hx({theme:t,themeName:r,props:l,stylesCtx:u,selector:o}),...!y&&Tl({theme:t,styles:d,props:l,stylesCtx:u})[o],...!y&&Tl({theme:t,styles:s==null?void 0:s.styles,props:(s==null?void 0:s.props)||l,stylesCtx:u})[o],...gx({theme:t,props:l,stylesCtx:u,vars:h,varsResolver:v,selector:o,themeName:r,headless:g}),...c===o?Lc({style:m,theme:t}):null,...Lc({style:s==null?void 0:s.style,theme:t})}}function wx({props:t,stylesCtx:r,themeName:o}){var c;const s=rn(),l=(c=D1())==null?void 0:c();return{getTransformedStyles:d=>l?[...d.map(h=>l(h,{props:t,theme:s,ctx:r})),...o.map(h=>{var v;return l((v=s.components[h])==null?void 0:v.styles,{props:t,theme:s,ctx:r})})].filter(Boolean):[],withStylesTransform:!!l}}function Ie({name:t,classes:r,props:o,stylesCtx:s,className:l,style:u,rootSelector:c="root",unstyled:d,classNames:m,styles:h,vars:v,varsResolver:g}){const y=rn(),w=O1(),C=I1(),E=M1(),R=(Array.isArray(t)?t:[t]).filter(T=>T),{withStylesTransform:N,getTransformedStyles:j}=wx({props:o,stylesCtx:s,themeName:R});return(T,O)=>({className:mx({theme:y,options:O,themeName:R,selector:T,classNamesPrefix:w,classNames:m,classes:r,unstyled:d,className:l,rootSelector:c,props:o,stylesCtx:s,withStaticClasses:C,headless:E,transformedStyles:j([O==null?void 0:O.styles,h])}),style:yx({theme:y,themeName:R,selector:T,options:O,props:o,stylesCtx:s,rootSelector:c,styles:h,style:u,vars:v,varsResolver:g,headless:E,withStylesTransform:N})})}function se(t,r,o){var c;const s=rn(),l=(c=s.components[t])==null?void 0:c.defaultProps,u=typeof l=="function"?l(s):l;return{...r,...u,...of(o)}}function wc(t){return xt(t).reduce((r,o)=>t[o]!==void 0?`${r}${c1(o)}:${t[o]};`:r,"").trim()}function xx({selector:t,styles:r,media:o,container:s}){const l=r?wc(r):"",u=Array.isArray(o)?o.map(d=>`@media${d.query}{${t}{${wc(d.styles)}}}`):[],c=Array.isArray(s)?s.map(d=>`@container ${d.query}{${t}{${wc(d.styles)}}}`):[];return`${l?`${t}{${l}}`:""}${u.join("")}${c.join("")}`.trim()}function Tv(t){const r=uf();return S.jsx("style",{"data-mantine-styles":"inline",nonce:r==null?void 0:r(),dangerouslySetInnerHTML:{__html:xx(t)}})}function Hl(t){const{m:r,mx:o,my:s,mt:l,mb:u,ml:c,mr:d,me:m,ms:h,p:v,px:g,py:y,pt:w,pb:C,pl:E,pr:R,pe:N,ps:j,bd:T,bg:O,c:A,opacity:F,ff:H,fz:z,fw:Q,lts:q,ta:X,lh:K,fs:Z,tt:te,td:J,w:B,miw:V,maw:_,h:M,mih:U,mah:k,bgsz:D,bgp:le,bgr:ve,bga:ie,pos:ce,top:Se,left:ye,bottom:Re,right:je,inset:qe,display:nt,flex:Ze,hiddenFrom:rt,visibleFrom:ot,lightHidden:Pt,darkHidden:ue,sx:de,...we}=t;return{styleProps:of({m:r,mx:o,my:s,mt:l,mb:u,ml:c,mr:d,me:m,ms:h,p:v,px:g,py:y,pt:w,pb:C,pl:E,pr:R,pe:N,ps:j,bd:T,bg:O,c:A,opacity:F,ff:H,fz:z,fw:Q,lts:q,ta:X,lh:K,fs:Z,tt:te,td:J,w:B,miw:V,maw:_,h:M,mih:U,mah:k,bgsz:D,bgp:le,bgr:ve,bga:ie,pos:ce,top:Se,left:ye,bottom:Re,right:je,inset:qe,display:nt,flex:Ze,hiddenFrom:rt,visibleFrom:ot,lightHidden:Pt,darkHidden:ue,sx:de}),rest:we}}const Sx={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"size",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function pf(t,r){const o=Ji({color:t,theme:r});return o.color==="dimmed"?"var(--mantine-color-dimmed)":o.color==="bright"?"var(--mantine-color-bright)":o.variable?`var(${o.variable})`:o.color}function bx(t,r){const o=Ji({color:t,theme:r});return o.isThemeColor&&o.shade===void 0?`var(--mantine-color-${o.color}-text)`:pf(t,r)}function Cx(t,r){if(typeof t=="number")return Y(t);if(typeof t=="string"){const[o,s,...l]=t.split(" ").filter(c=>c.trim()!=="");let u=`${Y(o)}`;return s&&(u+=` ${s}`),l.length>0&&(u+=` ${pf(l.join(" "),r)}`),u.trim()}return t}const vh={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function Ex(t){return typeof t=="string"&&t in vh?vh[t]:t}const Rx=["h1","h2","h3","h4","h5","h6"];function kx(t,r){return typeof t=="string"&&t in r.fontSizes?`var(--mantine-font-size-${t})`:typeof t=="string"&&Rx.includes(t)?`var(--mantine-${t}-font-size)`:typeof t=="number"||typeof t=="string"?Y(t):t}function Nx(t){return t}const Px=["h1","h2","h3","h4","h5","h6"];function _x(t,r){return typeof t=="string"&&t in r.lineHeights?`var(--mantine-line-height-${t})`:typeof t=="string"&&Px.includes(t)?`var(--mantine-${t}-line-height)`:t}function Tx(t){return typeof t=="number"?Y(t):t}function jx(t,r){if(typeof t=="number")return Y(t);if(typeof t=="string"){const o=t.replace("-","");if(!(o in r.spacing))return Y(t);const s=`--mantine-spacing-${o}`;return t.startsWith("-")?`calc(var(${s}) * -1)`:`var(${s})`}return t}const xc={color:pf,textColor:bx,fontSize:kx,spacing:jx,identity:Nx,size:Tx,lineHeight:_x,fontFamily:Ex,border:Cx};function gh(t){return t.replace("(min-width: ","").replace("em)","")}function $x({media:t,...r}){const s=Object.keys(t).sort((l,u)=>Number(gh(l))-Number(gh(u))).map(l=>({query:l,styles:t[l]}));return{...r,media:s}}function Ox(t){if(typeof t!="object"||t===null)return!1;const r=Object.keys(t);return!(r.length===1&&r[0]==="base")}function Ix(t){return typeof t=="object"&&t!==null?"base"in t?t.base:void 0:t}function Mx(t){return typeof t=="object"&&t!==null?xt(t).filter(r=>r!=="base"):[]}function Ax(t,r){return typeof t=="object"&&t!==null&&r in t?t[r]:t}function Dx({styleProps:t,data:r,theme:o}){return $x(xt(t).reduce((s,l)=>{if(l==="hiddenFrom"||l==="visibleFrom"||l==="sx")return s;const u=r[l],c=Array.isArray(u.property)?u.property:[u.property],d=Ix(t[l]);if(!Ox(t[l]))return c.forEach(h=>{s.inlineStyles[h]=xc[u.type](d,o)}),s;s.hasResponsiveStyles=!0;const m=Mx(t[l]);return c.forEach(h=>{d&&(s.styles[h]=xc[u.type](d,o)),m.forEach(v=>{const g=`(min-width: ${o.breakpoints[v]})`;s.media[g]={...s.media[g],[h]:xc[u.type](Ax(t[l],v),o)}})}),s},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function Lx(){return`__m__-${x.useId().replace(/:/g,"")}`}function mf(t,r){return Array.isArray(t)?[...t].reduce((o,s)=>({...o,...mf(s,r)}),{}):typeof t=="function"?t(r):t??{}}function jv(t){return t.startsWith("data-")?t:`data-${t}`}function zx(t){return Object.keys(t).reduce((r,o)=>{const s=t[o];return s===void 0||s===""||s===!1||s===null||(r[jv(o)]=t[o]),r},{})}function $v(t){return t?typeof t=="string"?{[jv(t)]:!0}:Array.isArray(t)?[...t].reduce((r,o)=>({...r,...$v(o)}),{}):zx(t):null}function zc(t,r){return Array.isArray(t)?[...t].reduce((o,s)=>({...o,...zc(s,r)}),{}):typeof t=="function"?t(r):t??{}}function Fx({theme:t,style:r,vars:o,styleProps:s}){const l=zc(r,t),u=zc(o,t);return{...l,...u,...s}}const Ov=x.forwardRef(({component:t,style:r,__vars:o,className:s,variant:l,mod:u,size:c,hiddenFrom:d,visibleFrom:m,lightHidden:h,darkHidden:v,renderRoot:g,__size:y,...w},C)=>{var z;const E=rn(),R=t||"div",{styleProps:N,rest:j}=Hl(w),T=A1(),O=(z=T==null?void 0:T())==null?void 0:z(N.sx),A=Lx(),F=Dx({styleProps:N,theme:E,data:Sx}),H={ref:C,style:Fx({theme:E,style:r,vars:o,styleProps:F.inlineStyles}),className:lt(s,O,{[A]:F.hasResponsiveStyles,"mantine-light-hidden":h,"mantine-dark-hidden":v,[`mantine-hidden-from-${d}`]:d,[`mantine-visible-from-${m}`]:m}),"data-variant":l,"data-size":hv(c)?void 0:c||void 0,size:y,...$v(u),...j};return S.jsxs(S.Fragment,{children:[F.hasResponsiveStyles&&S.jsx(Tv,{selector:`.${A}`,styles:F.styles,media:F.media}),typeof g=="function"?g(H):S.jsx(R,{...H})]})});Ov.displayName="@mantine/core/Box";const fe=Ov;function Iv(t){return t}function be(t){const r=x.forwardRef(t);return r.extend=Iv,r.withProps=o=>{const s=x.forwardRef((l,u)=>S.jsx(r,{...o,...l,ref:u}));return s.extend=r.extend,s.displayName=`WithProps(${r.displayName})`,s},r}function Vt(t){const r=x.forwardRef(t);return r.withProps=o=>{const s=x.forwardRef((l,u)=>S.jsx(r,{...o,...l,ref:u}));return s.extend=r.extend,s.displayName=`WithProps(${r.displayName})`,s},r.extend=Iv,r}const Bx=x.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function Ul(){return x.useContext(Bx)}var Gl=sv();const Ui=iv(Gl);function Vx(t){if(!t||typeof t=="string")return 0;const r=t/36;return Math.round((4+15*r**.25+r/5)*10)}function Sc(t){return t!=null&&t.current?t.current.scrollHeight:"auto"}const Wi=typeof window<"u"&&window.requestAnimationFrame;function Wx({transitionDuration:t,transitionTimingFunction:r="ease",onTransitionEnd:o=()=>{},opened:s}){const l=x.useRef(null),u=0,c={height:0,overflow:"hidden"},[d,m]=x.useState(s?{}:c),h=C=>{Gl.flushSync(()=>m(C))},v=C=>{h(E=>({...E,...C}))};function g(C){const E=t||Vx(C);return{transition:`height ${E}ms ${r}, opacity ${E}ms ${r}`}}Hn(()=>{typeof Wi=="function"&&Wi(s?()=>{v({willChange:"height",display:"block",overflow:"hidden"}),Wi(()=>{const C=Sc(l);v({...g(C),height:C})})}:()=>{const C=Sc(l);v({...g(C),willChange:"height",height:C}),Wi(()=>v({height:u,overflow:"hidden"}))})},[s]);const y=C=>{if(!(C.target!==l.current||C.propertyName!=="height"))if(s){const E=Sc(l);E===d.height?h({}):v({height:E}),o()}else d.height===u&&(h(c),o())};function w({style:C={},refKey:E="ref",...R}={}){const N=R[E],j={"aria-hidden":!s,...R,[E]:bv(l,N),onTransitionEnd:y,style:{boxSizing:"border-box",...C,...d}};return st.version.startsWith("18")?s||(j.inert=""):j.inert=!s,j}return w}const Hx={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},hf=be((t,r)=>{const{children:o,in:s,transitionDuration:l,transitionTimingFunction:u,style:c,onTransitionEnd:d,animateOpacity:m,...h}=se("Collapse",Hx,t),v=rn(),g=Bl(),w=(v.respectReducedMotion?g:!1)?0:l,C=Wx({opened:s,transitionDuration:w,transitionTimingFunction:u,onTransitionEnd:d});return w===0?s?S.jsx(fe,{...h,children:o}):null:S.jsx(fe,{...C({style:{opacity:s||!m?1:0,transition:m?`opacity ${w}ms ${u}`:"none",...mf(c,v)},ref:r,...h}),children:o})});hf.displayName="@mantine/core/Collapse";function Yl(){return typeof window<"u"}function Yo(t){return Mv(t)?(t.nodeName||"").toLowerCase():"#document"}function Ft(t){var r;return(t==null||(r=t.ownerDocument)==null?void 0:r.defaultView)||window}function $n(t){var r;return(r=(Mv(t)?t.ownerDocument:t.document)||window.document)==null?void 0:r.documentElement}function Mv(t){return Yl()?t instanceof Node||t instanceof Ft(t).Node:!1}function Ge(t){return Yl()?t instanceof Element||t instanceof Ft(t).Element:!1}function on(t){return Yl()?t instanceof HTMLElement||t instanceof Ft(t).HTMLElement:!1}function Fc(t){return!Yl()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof Ft(t).ShadowRoot}function ts(t){const{overflow:r,overflowX:o,overflowY:s,display:l}=nn(t);return/auto|scroll|overlay|hidden|clip/.test(r+s+o)&&l!=="inline"&&l!=="contents"}function Ux(t){return/^(table|td|th)$/.test(Yo(t))}function Xl(t){try{if(t.matches(":popover-open"))return!0}catch{}try{return t.matches(":modal")}catch{return!1}}const Gx=/transform|translate|scale|rotate|perspective|filter/,Yx=/paint|layout|strict|content/,Hr=t=>!!t&&t!=="none";let bc;function vf(t){const r=Ge(t)?nn(t):t;return Hr(r.transform)||Hr(r.translate)||Hr(r.scale)||Hr(r.rotate)||Hr(r.perspective)||!Kl()&&(Hr(r.backdropFilter)||Hr(r.filter))||Gx.test(r.willChange||"")||Yx.test(r.contain||"")}function Xx(t){let r=Gn(t);for(;on(r)&&!Er(r);){if(vf(r))return r;if(Xl(r))return null;r=Gn(r)}return null}function Kl(){return bc==null&&(bc=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),bc}function Er(t){return/^(html|body|#document)$/.test(Yo(t))}function nn(t){return Ft(t).getComputedStyle(t)}function Ql(t){return Ge(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function Gn(t){if(Yo(t)==="html")return t;const r=t.assignedSlot||t.parentNode||Fc(t)&&t.host||$n(t);return Fc(r)?r.host:r}function Av(t){const r=Gn(t);return Er(r)?t.ownerDocument?t.ownerDocument.body:t.body:on(r)&&ts(r)?r:Av(r)}function Wn(t,r,o){var s;r===void 0&&(r=[]),o===void 0&&(o=!0);const l=Av(t),u=l===((s=t.ownerDocument)==null?void 0:s.body),c=Ft(l);if(u){const d=Bc(c);return r.concat(c,c.visualViewport||[],ts(l)?l:[],d&&o?Wn(d):[])}else return r.concat(l,Wn(l,[],o))}function Bc(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function yh(t){let r=t.activeElement;for(;((o=r)==null||(o=o.shadowRoot)==null?void 0:o.activeElement)!=null;){var o;r=r.shadowRoot.activeElement}return r}function Ki(t,r){if(!t||!r)return!1;const o=r.getRootNode==null?void 0:r.getRootNode();if(t.contains(r))return!0;if(o&&Fc(o)){let s=r;for(;s;){if(t===s)return!0;s=s.parentNode||s.host}}return!1}function Dv(){const t=navigator.userAgentData;return t!=null&&t.platform?t.platform:navigator.platform}function Lv(){const t=navigator.userAgentData;return t&&Array.isArray(t.brands)?t.brands.map(r=>{let{brand:o,version:s}=r;return o+"/"+s}).join(" "):navigator.userAgent}function Kx(t){return Zx()?!1:!wh()&&t.width===0&&t.height===0||wh()&&t.width===1&&t.height===1&&t.pressure===0&&t.detail===0&&t.pointerType==="mouse"||t.width<1&&t.height<1&&t.pressure===0&&t.detail===0&&t.pointerType==="touch"}function Qx(){return/apple/i.test(navigator.vendor)}function wh(){const t=/android/i;return t.test(Dv())||t.test(Lv())}function qx(){return Dv().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function Zx(){return Lv().includes("jsdom/")}function Vc(t,r){const o=["mouse","pen"];return o.push("",void 0),o.includes(t)}function Jx(t){return"nativeEvent"in t}function eS(t){return t.matches("html,body")}function Kr(t){return(t==null?void 0:t.ownerDocument)||document}function Cc(t,r){if(r==null)return!1;if("composedPath"in t)return t.composedPath().includes(r);const o=t;return o.target!=null&&r.contains(o.target)}function Mo(t){return"composedPath"in t?t.composedPath()[0]:t.target}const tS="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function nS(t){return on(t)&&t.matches(tS)}const wn=Math.min,Rt=Math.max,jl=Math.round,xl=Math.floor,_n=t=>({x:t,y:t}),rS={left:"right",right:"left",bottom:"top",top:"bottom"};function Wc(t,r,o){return Rt(t,wn(r,o))}function Yn(t,r){return typeof t=="function"?t(r):t}function xn(t){return t.split("-")[0]}function Xo(t){return t.split("-")[1]}function gf(t){return t==="x"?"y":"x"}function yf(t){return t==="y"?"height":"width"}function vn(t){const r=t[0];return r==="t"||r==="b"?"y":"x"}function wf(t){return gf(vn(t))}function oS(t,r,o){o===void 0&&(o=!1);const s=Xo(t),l=wf(t),u=yf(l);let c=l==="x"?s===(o?"end":"start")?"right":"left":s==="start"?"bottom":"top";return r.reference[u]>r.floating[u]&&(c=$l(c)),[c,$l(c)]}function iS(t){const r=$l(t);return[Hc(t),r,Hc(r)]}function Hc(t){return t.includes("start")?t.replace("start","end"):t.replace("end","start")}const xh=["left","right"],Sh=["right","left"],sS=["top","bottom"],lS=["bottom","top"];function aS(t,r,o){switch(t){case"top":case"bottom":return o?r?Sh:xh:r?xh:Sh;case"left":case"right":return r?sS:lS;default:return[]}}function uS(t,r,o,s){const l=Xo(t);let u=aS(xn(t),o==="start",s);return l&&(u=u.map(c=>c+"-"+l),r&&(u=u.concat(u.map(Hc)))),u}function $l(t){const r=xn(t);return rS[r]+t.slice(r.length)}function cS(t){return{top:0,right:0,bottom:0,left:0,...t}}function xf(t){return typeof t!="number"?cS(t):{top:t,right:t,bottom:t,left:t}}function Bo(t){const{x:r,y:o,width:s,height:l}=t;return{width:s,height:l,top:o,left:r,right:r+s,bottom:o+l,x:r,y:o}}function bh(t,r,o){let{reference:s,floating:l}=t;const u=vn(r),c=wf(r),d=yf(c),m=xn(r),h=u==="y",v=s.x+s.width/2-l.width/2,g=s.y+s.height/2-l.height/2,y=s[d]/2-l[d]/2;let w;switch(m){case"top":w={x:v,y:s.y-l.height};break;case"bottom":w={x:v,y:s.y+s.height};break;case"right":w={x:s.x+s.width,y:g};break;case"left":w={x:s.x-l.width,y:g};break;default:w={x:s.x,y:s.y}}switch(Xo(r)){case"start":w[c]-=y*(o&&h?-1:1);break;case"end":w[c]+=y*(o&&h?-1:1);break}return w}async function fS(t,r){var o;r===void 0&&(r={});const{x:s,y:l,platform:u,rects:c,elements:d,strategy:m}=t,{boundary:h="clippingAncestors",rootBoundary:v="viewport",elementContext:g="floating",altBoundary:y=!1,padding:w=0}=Yn(r,t),C=xf(w),R=d[y?g==="floating"?"reference":"floating":g],N=Bo(await u.getClippingRect({element:(o=await(u.isElement==null?void 0:u.isElement(R)))==null||o?R:R.contextElement||await(u.getDocumentElement==null?void 0:u.getDocumentElement(d.floating)),boundary:h,rootBoundary:v,strategy:m})),j=g==="floating"?{x:s,y:l,width:c.floating.width,height:c.floating.height}:c.reference,T=await(u.getOffsetParent==null?void 0:u.getOffsetParent(d.floating)),O=await(u.isElement==null?void 0:u.isElement(T))?await(u.getScale==null?void 0:u.getScale(T))||{x:1,y:1}:{x:1,y:1},A=Bo(u.convertOffsetParentRelativeRectToViewportRelativeRect?await u.convertOffsetParentRelativeRectToViewportRelativeRect({elements:d,rect:j,offsetParent:T,strategy:m}):j);return{top:(N.top-A.top+C.top)/O.y,bottom:(A.bottom-N.bottom+C.bottom)/O.y,left:(N.left-A.left+C.left)/O.x,right:(A.right-N.right+C.right)/O.x}}const dS=50,pS=async(t,r,o)=>{const{placement:s="bottom",strategy:l="absolute",middleware:u=[],platform:c}=o,d=c.detectOverflow?c:{...c,detectOverflow:fS},m=await(c.isRTL==null?void 0:c.isRTL(r));let h=await c.getElementRects({reference:t,floating:r,strategy:l}),{x:v,y:g}=bh(h,s,m),y=s,w=0;const C={};for(let E=0;E({name:"arrow",options:t,async fn(r){const{x:o,y:s,placement:l,rects:u,platform:c,elements:d,middlewareData:m}=r,{element:h,padding:v=0}=Yn(t,r)||{};if(h==null)return{};const g=xf(v),y={x:o,y:s},w=wf(l),C=yf(w),E=await c.getDimensions(h),R=w==="y",N=R?"top":"left",j=R?"bottom":"right",T=R?"clientHeight":"clientWidth",O=u.reference[C]+u.reference[w]-y[w]-u.floating[C],A=y[w]-u.reference[w],F=await(c.getOffsetParent==null?void 0:c.getOffsetParent(h));let H=F?F[T]:0;(!H||!await(c.isElement==null?void 0:c.isElement(F)))&&(H=d.floating[T]||u.floating[C]);const z=O/2-A/2,Q=H/2-E[C]/2-1,q=wn(g[N],Q),X=wn(g[j],Q),K=q,Z=H-E[C]-X,te=H/2-E[C]/2+z,J=Wc(K,te,Z),B=!m.arrow&&Xo(l)!=null&&te!==J&&u.reference[C]/2-(tete<=0)){var X,K;const te=(((X=u.flip)==null?void 0:X.index)||0)+1,J=H[te];if(J&&(!(g==="alignment"?j!==vn(J):!1)||q.every(_=>vn(_.placement)===j?_.overflows[0]>0:!0)))return{data:{index:te,overflows:q},reset:{placement:J}};let B=(K=q.filter(V=>V.overflows[0]<=0).sort((V,_)=>V.overflows[1]-_.overflows[1])[0])==null?void 0:K.placement;if(!B)switch(w){case"bestFit":{var Z;const V=(Z=q.filter(_=>{if(F){const M=vn(_.placement);return M===j||M==="y"}return!0}).map(_=>[_.placement,_.overflows.filter(M=>M>0).reduce((M,U)=>M+U,0)]).sort((_,M)=>_[1]-M[1])[0])==null?void 0:Z[0];V&&(B=V);break}case"initialPlacement":B=d;break}if(l!==B)return{reset:{placement:B}}}return{}}}};function zv(t){const r=wn(...t.map(u=>u.left)),o=wn(...t.map(u=>u.top)),s=Rt(...t.map(u=>u.right)),l=Rt(...t.map(u=>u.bottom));return{x:r,y:o,width:s-r,height:l-o}}function vS(t){const r=t.slice().sort((l,u)=>l.y-u.y),o=[];let s=null;for(let l=0;ls.height/2?o.push([u]):o[o.length-1].push(u),s=u}return o.map(l=>Bo(zv(l)))}const gS=function(t){return t===void 0&&(t={}),{name:"inline",options:t,async fn(r){const{placement:o,elements:s,rects:l,platform:u,strategy:c}=r,{padding:d=2,x:m,y:h}=Yn(t,r),v=Array.from(await(u.getClientRects==null?void 0:u.getClientRects(s.reference))||[]),g=vS(v),y=Bo(zv(v)),w=xf(d);function C(){if(g.length===2&&g[0].left>g[1].right&&m!=null&&h!=null)return g.find(R=>m>R.left-w.left&&mR.top-w.top&&h=2){if(vn(o)==="y"){const q=g[0],X=g[g.length-1],K=xn(o)==="top",Z=q.top,te=X.bottom,J=K?q.left:X.left,B=K?q.right:X.right,V=B-J,_=te-Z;return{top:Z,bottom:te,left:J,right:B,width:V,height:_,x:J,y:Z}}const R=xn(o)==="left",N=Rt(...g.map(q=>q.right)),j=wn(...g.map(q=>q.left)),T=g.filter(q=>R?q.left===j:q.right===N),O=T[0].top,A=T[T.length-1].bottom,F=j,H=N,z=H-F,Q=A-O;return{top:O,bottom:A,left:F,right:H,width:z,height:Q,x:F,y:O}}return y}const E=await u.getElementRects({reference:{getBoundingClientRect:C},floating:s.floating,strategy:c});return l.reference.x!==E.reference.x||l.reference.y!==E.reference.y||l.reference.width!==E.reference.width||l.reference.height!==E.reference.height?{reset:{rects:E}}:{}}}},Fv=new Set(["left","top"]);async function yS(t,r){const{placement:o,platform:s,elements:l}=t,u=await(s.isRTL==null?void 0:s.isRTL(l.floating)),c=xn(o),d=Xo(o),m=vn(o)==="y",h=Fv.has(c)?-1:1,v=u&&m?-1:1,g=Yn(r,t);let{mainAxis:y,crossAxis:w,alignmentAxis:C}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return d&&typeof C=="number"&&(w=d==="end"?C*-1:C),m?{x:w*v,y:y*h}:{x:y*h,y:w*v}}const wS=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(r){var o,s;const{x:l,y:u,placement:c,middlewareData:d}=r,m=await yS(r,t);return c===((o=d.offset)==null?void 0:o.placement)&&(s=d.arrow)!=null&&s.alignmentOffset?{}:{x:l+m.x,y:u+m.y,data:{...m,placement:c}}}}},xS=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(r){const{x:o,y:s,placement:l,platform:u}=r,{mainAxis:c=!0,crossAxis:d=!1,limiter:m={fn:N=>{let{x:j,y:T}=N;return{x:j,y:T}}},...h}=Yn(t,r),v={x:o,y:s},g=await u.detectOverflow(r,h),y=vn(xn(l)),w=gf(y);let C=v[w],E=v[y];if(c){const N=w==="y"?"top":"left",j=w==="y"?"bottom":"right",T=C+g[N],O=C-g[j];C=Wc(T,C,O)}if(d){const N=y==="y"?"top":"left",j=y==="y"?"bottom":"right",T=E+g[N],O=E-g[j];E=Wc(T,E,O)}const R=m.fn({...r,[w]:C,[y]:E});return{...R,data:{x:R.x-o,y:R.y-s,enabled:{[w]:c,[y]:d}}}}}},SS=function(t){return t===void 0&&(t={}),{options:t,fn(r){const{x:o,y:s,placement:l,rects:u,middlewareData:c}=r,{offset:d=0,mainAxis:m=!0,crossAxis:h=!0}=Yn(t,r),v={x:o,y:s},g=vn(l),y=gf(g);let w=v[y],C=v[g];const E=Yn(d,r),R=typeof E=="number"?{mainAxis:E,crossAxis:0}:{mainAxis:0,crossAxis:0,...E};if(m){const T=y==="y"?"height":"width",O=u.reference[y]-u.floating[T]+R.mainAxis,A=u.reference[y]+u.reference[T]-R.mainAxis;wA&&(w=A)}if(h){var N,j;const T=y==="y"?"width":"height",O=Fv.has(xn(l)),A=u.reference[g]-u.floating[T]+(O&&((N=c.offset)==null?void 0:N[g])||0)+(O?0:R.crossAxis),F=u.reference[g]+u.reference[T]+(O?0:((j=c.offset)==null?void 0:j[g])||0)-(O?R.crossAxis:0);CF&&(C=F)}return{[y]:w,[g]:C}}}},bS=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(r){var o,s;const{placement:l,rects:u,platform:c,elements:d}=r,{apply:m=()=>{},...h}=Yn(t,r),v=await c.detectOverflow(r,h),g=xn(l),y=Xo(l),w=vn(l)==="y",{width:C,height:E}=u.floating;let R,N;g==="top"||g==="bottom"?(R=g,N=y===(await(c.isRTL==null?void 0:c.isRTL(d.floating))?"start":"end")?"left":"right"):(N=g,R=y==="end"?"top":"bottom");const j=E-v.top-v.bottom,T=C-v.left-v.right,O=wn(E-v[R],j),A=wn(C-v[N],T),F=!r.middlewareData.shift;let H=O,z=A;if((o=r.middlewareData.shift)!=null&&o.enabled.x&&(z=T),(s=r.middlewareData.shift)!=null&&s.enabled.y&&(H=j),F&&!y){const q=Rt(v.left,0),X=Rt(v.right,0),K=Rt(v.top,0),Z=Rt(v.bottom,0);w?z=C-2*(q!==0||X!==0?q+X:Rt(v.left,v.right)):H=E-2*(K!==0||Z!==0?K+Z:Rt(v.top,v.bottom))}await m({...r,availableWidth:z,availableHeight:H});const Q=await c.getDimensions(d.floating);return C!==Q.width||E!==Q.height?{reset:{rects:!0}}:{}}}};function Bv(t){const r=nn(t);let o=parseFloat(r.width)||0,s=parseFloat(r.height)||0;const l=on(t),u=l?t.offsetWidth:o,c=l?t.offsetHeight:s,d=jl(o)!==u||jl(s)!==c;return d&&(o=u,s=c),{width:o,height:s,$:d}}function Sf(t){return Ge(t)?t:t.contextElement}function Lo(t){const r=Sf(t);if(!on(r))return _n(1);const o=r.getBoundingClientRect(),{width:s,height:l,$:u}=Bv(r);let c=(u?jl(o.width):o.width)/s,d=(u?jl(o.height):o.height)/l;return(!c||!Number.isFinite(c))&&(c=1),(!d||!Number.isFinite(d))&&(d=1),{x:c,y:d}}const CS=_n(0);function Vv(t){const r=Ft(t);return!Kl()||!r.visualViewport?CS:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function ES(t,r,o){return r===void 0&&(r=!1),!o||r&&o!==Ft(t)?!1:r}function Zr(t,r,o,s){r===void 0&&(r=!1),o===void 0&&(o=!1);const l=t.getBoundingClientRect(),u=Sf(t);let c=_n(1);r&&(s?Ge(s)&&(c=Lo(s)):c=Lo(t));const d=ES(u,o,s)?Vv(u):_n(0);let m=(l.left+d.x)/c.x,h=(l.top+d.y)/c.y,v=l.width/c.x,g=l.height/c.y;if(u){const y=Ft(u),w=s&&Ge(s)?Ft(s):s;let C=y,E=Bc(C);for(;E&&s&&w!==C;){const R=Lo(E),N=E.getBoundingClientRect(),j=nn(E),T=N.left+(E.clientLeft+parseFloat(j.paddingLeft))*R.x,O=N.top+(E.clientTop+parseFloat(j.paddingTop))*R.y;m*=R.x,h*=R.y,v*=R.x,g*=R.y,m+=T,h+=O,C=Ft(E),E=Bc(C)}}return Bo({width:v,height:g,x:m,y:h})}function ql(t,r){const o=Ql(t).scrollLeft;return r?r.left+o:Zr($n(t)).left+o}function Wv(t,r){const o=t.getBoundingClientRect(),s=o.left+r.scrollLeft-ql(t,o),l=o.top+r.scrollTop;return{x:s,y:l}}function RS(t){let{elements:r,rect:o,offsetParent:s,strategy:l}=t;const u=l==="fixed",c=$n(s),d=r?Xl(r.floating):!1;if(s===c||d&&u)return o;let m={scrollLeft:0,scrollTop:0},h=_n(1);const v=_n(0),g=on(s);if((g||!g&&!u)&&((Yo(s)!=="body"||ts(c))&&(m=Ql(s)),g)){const w=Zr(s);h=Lo(s),v.x=w.x+s.clientLeft,v.y=w.y+s.clientTop}const y=c&&!g&&!u?Wv(c,m):_n(0);return{width:o.width*h.x,height:o.height*h.y,x:o.x*h.x-m.scrollLeft*h.x+v.x+y.x,y:o.y*h.y-m.scrollTop*h.y+v.y+y.y}}function kS(t){return Array.from(t.getClientRects())}function NS(t){const r=$n(t),o=Ql(t),s=t.ownerDocument.body,l=Rt(r.scrollWidth,r.clientWidth,s.scrollWidth,s.clientWidth),u=Rt(r.scrollHeight,r.clientHeight,s.scrollHeight,s.clientHeight);let c=-o.scrollLeft+ql(t);const d=-o.scrollTop;return nn(s).direction==="rtl"&&(c+=Rt(r.clientWidth,s.clientWidth)-l),{width:l,height:u,x:c,y:d}}const Ch=25;function PS(t,r){const o=Ft(t),s=$n(t),l=o.visualViewport;let u=s.clientWidth,c=s.clientHeight,d=0,m=0;if(l){u=l.width,c=l.height;const v=Kl();(!v||v&&r==="fixed")&&(d=l.offsetLeft,m=l.offsetTop)}const h=ql(s);if(h<=0){const v=s.ownerDocument,g=v.body,y=getComputedStyle(g),w=v.compatMode==="CSS1Compat"&&parseFloat(y.marginLeft)+parseFloat(y.marginRight)||0,C=Math.abs(s.clientWidth-g.clientWidth-w);C<=Ch&&(u-=C)}else h<=Ch&&(u+=h);return{width:u,height:c,x:d,y:m}}function _S(t,r){const o=Zr(t,!0,r==="fixed"),s=o.top+t.clientTop,l=o.left+t.clientLeft,u=on(t)?Lo(t):_n(1),c=t.clientWidth*u.x,d=t.clientHeight*u.y,m=l*u.x,h=s*u.y;return{width:c,height:d,x:m,y:h}}function Eh(t,r,o){let s;if(r==="viewport")s=PS(t,o);else if(r==="document")s=NS($n(t));else if(Ge(r))s=_S(r,o);else{const l=Vv(t);s={x:r.x-l.x,y:r.y-l.y,width:r.width,height:r.height}}return Bo(s)}function Hv(t,r){const o=Gn(t);return o===r||!Ge(o)||Er(o)?!1:nn(o).position==="fixed"||Hv(o,r)}function TS(t,r){const o=r.get(t);if(o)return o;let s=Wn(t,[],!1).filter(d=>Ge(d)&&Yo(d)!=="body"),l=null;const u=nn(t).position==="fixed";let c=u?Gn(t):t;for(;Ge(c)&&!Er(c);){const d=nn(c),m=vf(c);!m&&d.position==="fixed"&&(l=null),(u?!m&&!l:!m&&d.position==="static"&&!!l&&(l.position==="absolute"||l.position==="fixed")||ts(c)&&!m&&Hv(t,c))?s=s.filter(v=>v!==c):l=d,c=Gn(c)}return r.set(t,s),s}function jS(t){let{element:r,boundary:o,rootBoundary:s,strategy:l}=t;const c=[...o==="clippingAncestors"?Xl(r)?[]:TS(r,this._c):[].concat(o),s],d=Eh(r,c[0],l);let m=d.top,h=d.right,v=d.bottom,g=d.left;for(let y=1;y{c(!1,1e-7)},1e3)}H===1&&!Gv(h,t.getBoundingClientRect())&&c(),O=!1}try{o=new IntersectionObserver(A,{...T,root:l.ownerDocument})}catch{o=new IntersectionObserver(A,T)}o.observe(t)}return c(!0),u}function LS(t,r,o,s){s===void 0&&(s={});const{ancestorScroll:l=!0,ancestorResize:u=!0,elementResize:c=typeof ResizeObserver=="function",layoutShift:d=typeof IntersectionObserver=="function",animationFrame:m=!1}=s,h=Sf(t),v=l||u?[...h?Wn(h):[],...r?Wn(r):[]]:[];v.forEach(N=>{l&&N.addEventListener("scroll",o,{passive:!0}),u&&N.addEventListener("resize",o)});const g=h&&d?DS(h,o):null;let y=-1,w=null;c&&(w=new ResizeObserver(N=>{let[j]=N;j&&j.target===h&&w&&r&&(w.unobserve(r),cancelAnimationFrame(y),y=requestAnimationFrame(()=>{var T;(T=w)==null||T.observe(r)})),o()}),h&&!m&&w.observe(h),r&&w.observe(r));let C,E=m?Zr(t):null;m&&R();function R(){const N=Zr(t);E&&!Gv(E,N)&&o(),E=N,C=requestAnimationFrame(R)}return o(),()=>{var N;v.forEach(j=>{l&&j.removeEventListener("scroll",o),u&&j.removeEventListener("resize",o)}),g==null||g(),(N=w)==null||N.disconnect(),w=null,m&&cancelAnimationFrame(C)}}const zS=wS,FS=xS,BS=hS,VS=bS,kh=mS,WS=gS,HS=SS,US=(t,r,o)=>{const s=new Map,l={platform:AS,...o},u={...l.platform,_c:s};return pS(t,r,{...l,platform:u})};var GS=typeof document<"u",YS=function(){},Rl=GS?x.useLayoutEffect:YS;function Ol(t,r){if(t===r)return!0;if(typeof t!=typeof r)return!1;if(typeof t=="function"&&t.toString()===r.toString())return!0;let o,s,l;if(t&&r&&typeof t=="object"){if(Array.isArray(t)){if(o=t.length,o!==r.length)return!1;for(s=o;s--!==0;)if(!Ol(t[s],r[s]))return!1;return!0}if(l=Object.keys(t),o=l.length,o!==Object.keys(r).length)return!1;for(s=o;s--!==0;)if(!{}.hasOwnProperty.call(r,l[s]))return!1;for(s=o;s--!==0;){const u=l[s];if(!(u==="_owner"&&t.$$typeof)&&!Ol(t[u],r[u]))return!1}return!0}return t!==t&&r!==r}function Yv(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function Nh(t,r){const o=Yv(t);return Math.round(r*o)/o}function Rc(t){const r=x.useRef(t);return Rl(()=>{r.current=t}),r}function XS(t){t===void 0&&(t={});const{placement:r="bottom",strategy:o="absolute",middleware:s=[],platform:l,elements:{reference:u,floating:c}={},transform:d=!0,whileElementsMounted:m,open:h}=t,[v,g]=x.useState({x:0,y:0,strategy:o,placement:r,middlewareData:{},isPositioned:!1}),[y,w]=x.useState(s);Ol(y,s)||w(s);const[C,E]=x.useState(null),[R,N]=x.useState(null),j=x.useCallback(_=>{_!==F.current&&(F.current=_,E(_))},[]),T=x.useCallback(_=>{_!==H.current&&(H.current=_,N(_))},[]),O=u||C,A=c||R,F=x.useRef(null),H=x.useRef(null),z=x.useRef(v),Q=m!=null,q=Rc(m),X=Rc(l),K=Rc(h),Z=x.useCallback(()=>{if(!F.current||!H.current)return;const _={placement:r,strategy:o,middleware:y};X.current&&(_.platform=X.current),US(F.current,H.current,_).then(M=>{const U={...M,isPositioned:K.current!==!1};te.current&&!Ol(z.current,U)&&(z.current=U,Gl.flushSync(()=>{g(U)}))})},[y,r,o,X,K]);Rl(()=>{h===!1&&z.current.isPositioned&&(z.current.isPositioned=!1,g(_=>({..._,isPositioned:!1})))},[h]);const te=x.useRef(!1);Rl(()=>(te.current=!0,()=>{te.current=!1}),[]),Rl(()=>{if(O&&(F.current=O),A&&(H.current=A),O&&A){if(q.current)return q.current(O,A,Z);Z()}},[O,A,Z,q,Q]);const J=x.useMemo(()=>({reference:F,floating:H,setReference:j,setFloating:T}),[j,T]),B=x.useMemo(()=>({reference:O,floating:A}),[O,A]),V=x.useMemo(()=>{const _={position:o,left:0,top:0};if(!B.floating)return _;const M=Nh(B.floating,v.x),U=Nh(B.floating,v.y);return d?{..._,transform:"translate("+M+"px, "+U+"px)",...Yv(B.floating)>=1.5&&{willChange:"transform"}}:{position:o,left:M,top:U}},[o,d,B.floating,v.x,v.y]);return x.useMemo(()=>({...v,update:Z,refs:J,elements:B,floatingStyles:V}),[v,Z,J,B,V])}const KS=t=>{function r(o){return{}.hasOwnProperty.call(o,"current")}return{name:"arrow",options:t,fn(o){const{element:s,padding:l}=typeof t=="function"?t(o):t;return s&&r(s)?s.current!=null?kh({element:s.current,padding:l}).fn(o):{}:s?kh({element:s,padding:l}).fn(o):{}}}},Xv=(t,r)=>{const o=zS(t);return{name:o.name,fn:o.fn,options:[t,r]}},bf=(t,r)=>{const o=FS(t);return{name:o.name,fn:o.fn,options:[t,r]}},Ph=(t,r)=>({fn:HS(t).fn,options:[t,r]}),Il=(t,r)=>{const o=BS(t);return{name:o.name,fn:o.fn,options:[t,r]}},QS=(t,r)=>{const o=VS(t);return{name:o.name,fn:o.fn,options:[t,r]}},Yi=(t,r)=>{const o=WS(t);return{name:o.name,fn:o.fn,options:[t,r]}},Kv=(t,r)=>{const o=KS(t);return{name:o.name,fn:o.fn,options:[t,r]}};function qS(t){return x.useMemo(()=>t.every(r=>r==null)?null:r=>{t.forEach(o=>{typeof o=="function"?o(r):o!=null&&(o.current=r)})},t)}const Qv={...bw},ZS=Qv.useInsertionEffect,JS=ZS||(t=>t());function Vn(t){const r=x.useRef(()=>{});return JS(()=>{r.current=t}),x.useCallback(function(){for(var o=arguments.length,s=new Array(o),l=0;l"floating-ui-"+Math.random().toString(36).slice(2,6)+eb++;function tb(){const[t,r]=x.useState(()=>_h?Th():void 0);return Tn(()=>{t==null&&r(Th())},[]),x.useEffect(()=>{_h=!0},[]),t}const nb=Qv.useId,qv=nb||tb;function rb(){const t=new Map;return{emit(r,o){var s;(s=t.get(r))==null||s.forEach(l=>l(o))},on(r,o){t.set(r,[...t.get(r)||[],o])},off(r,o){var s;t.set(r,((s=t.get(r))==null?void 0:s.filter(l=>l!==o))||[])}}}const ob=x.createContext(null),ib=x.createContext(null),Cf=()=>{var t;return((t=x.useContext(ob))==null?void 0:t.id)||null},Ef=()=>x.useContext(ib);function Rf(t){return"data-floating-ui-"+t}function kc(t){const r=x.useRef(t);return Tn(()=>{r.current=t}),r}const jh=Rf("safe-polygon");function kl(t,r,o){return o&&!Vc(o)?0:typeof t=="number"?t:t==null?void 0:t[r]}function sb(t,r){r===void 0&&(r={});const{open:o,onOpenChange:s,dataRef:l,events:u,elements:c}=t,{enabled:d=!0,delay:m=0,handleClose:h=null,mouseOnly:v=!1,restMs:g=0,move:y=!0}=r,w=Ef(),C=Cf(),E=kc(h),R=kc(m),N=kc(o),j=x.useRef(),T=x.useRef(-1),O=x.useRef(),A=x.useRef(-1),F=x.useRef(!0),H=x.useRef(!1),z=x.useRef(()=>{}),Q=x.useRef(!1),q=x.useCallback(()=>{var V;const _=(V=l.current.openEvent)==null?void 0:V.type;return(_==null?void 0:_.includes("mouse"))&&_!=="mousedown"},[l]);x.useEffect(()=>{if(!d)return;function V(_){let{open:M}=_;M||(clearTimeout(T.current),clearTimeout(A.current),F.current=!0,Q.current=!1)}return u.on("openchange",V),()=>{u.off("openchange",V)}},[d,u]),x.useEffect(()=>{if(!d||!E.current||!o)return;function V(M){q()&&s(!1,M,"hover")}const _=Kr(c.floating).documentElement;return _.addEventListener("mouseleave",V),()=>{_.removeEventListener("mouseleave",V)}},[c.floating,o,s,d,E,q]);const X=x.useCallback(function(V,_,M){_===void 0&&(_=!0),M===void 0&&(M="hover");const U=kl(R.current,"close",j.current);U&&!O.current?(clearTimeout(T.current),T.current=window.setTimeout(()=>s(!1,V,M),U)):_&&(clearTimeout(T.current),s(!1,V,M))},[R,s]),K=Vn(()=>{z.current(),O.current=void 0}),Z=Vn(()=>{if(H.current){const V=Kr(c.floating).body;V.style.pointerEvents="",V.removeAttribute(jh),H.current=!1}}),te=Vn(()=>l.current.openEvent?["click","mousedown"].includes(l.current.openEvent.type):!1);x.useEffect(()=>{if(!d)return;function V(k){if(clearTimeout(T.current),F.current=!1,v&&!Vc(j.current)||g>0&&!kl(R.current,"open"))return;const D=kl(R.current,"open",j.current);D?T.current=window.setTimeout(()=>{N.current||s(!0,k,"hover")},D):o||s(!0,k,"hover")}function _(k){if(te())return;z.current();const D=Kr(c.floating);if(clearTimeout(A.current),Q.current=!1,E.current&&l.current.floatingContext){o||clearTimeout(T.current),O.current=E.current({...l.current.floatingContext,tree:w,x:k.clientX,y:k.clientY,onClose(){Z(),K(),te()||X(k,!0,"safe-polygon")}});const ve=O.current;D.addEventListener("mousemove",ve),z.current=()=>{D.removeEventListener("mousemove",ve)};return}(j.current==="touch"?!Ki(c.floating,k.relatedTarget):!0)&&X(k)}function M(k){te()||l.current.floatingContext&&(E.current==null||E.current({...l.current.floatingContext,tree:w,x:k.clientX,y:k.clientY,onClose(){Z(),K(),te()||X(k)}})(k))}if(Ge(c.domReference)){var U;const k=c.domReference;return o&&k.addEventListener("mouseleave",M),(U=c.floating)==null||U.addEventListener("mouseleave",M),y&&k.addEventListener("mousemove",V,{once:!0}),k.addEventListener("mouseenter",V),k.addEventListener("mouseleave",_),()=>{var D;o&&k.removeEventListener("mouseleave",M),(D=c.floating)==null||D.removeEventListener("mouseleave",M),y&&k.removeEventListener("mousemove",V),k.removeEventListener("mouseenter",V),k.removeEventListener("mouseleave",_)}}},[c,d,t,v,g,y,X,K,Z,s,o,N,w,R,E,l,te]),Tn(()=>{var V;if(d&&o&&(V=E.current)!=null&&V.__options.blockPointerEvents&&q()){H.current=!0;const M=c.floating;if(Ge(c.domReference)&&M){var _;const U=Kr(c.floating).body;U.setAttribute(jh,"");const k=c.domReference,D=w==null||(_=w.nodesRef.current.find(le=>le.id===C))==null||(_=_.context)==null?void 0:_.elements.floating;return D&&(D.style.pointerEvents=""),U.style.pointerEvents="none",k.style.pointerEvents="auto",M.style.pointerEvents="auto",()=>{U.style.pointerEvents="",k.style.pointerEvents="",M.style.pointerEvents=""}}}},[d,o,C,c,w,E,q]),Tn(()=>{o||(j.current=void 0,Q.current=!1,K(),Z())},[o,K,Z]),x.useEffect(()=>()=>{K(),clearTimeout(T.current),clearTimeout(A.current),Z()},[d,c.domReference,K,Z]);const J=x.useMemo(()=>{function V(_){j.current=_.pointerType}return{onPointerDown:V,onPointerEnter:V,onMouseMove(_){const{nativeEvent:M}=_;function U(){!F.current&&!N.current&&s(!0,M,"hover")}v&&!Vc(j.current)||o||g===0||Q.current&&_.movementX**2+_.movementY**2<2||(clearTimeout(A.current),j.current==="touch"?U():(Q.current=!0,A.current=window.setTimeout(U,g)))}}},[v,s,o,N,g]),B=x.useMemo(()=>({onMouseEnter(){clearTimeout(T.current)},onMouseLeave(V){te()||X(V.nativeEvent,!1)}}),[X,te]);return x.useMemo(()=>d?{reference:J,floating:B}:{},[d,J,B])}const Uc=()=>{},Zv=x.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:Uc,setState:Uc,isInstantPhase:!1}),lb=()=>x.useContext(Zv);function ab(t){const{children:r,delay:o,timeoutMs:s=0}=t,[l,u]=x.useReducer((m,h)=>({...m,...h}),{delay:o,timeoutMs:s,initialDelay:o,currentId:null,isInstantPhase:!1}),c=x.useRef(null),d=x.useCallback(m=>{u({currentId:m})},[]);return Tn(()=>{l.currentId?c.current===null?c.current=l.currentId:l.isInstantPhase||u({isInstantPhase:!0}):(l.isInstantPhase&&u({isInstantPhase:!1}),c.current=null)},[l.currentId,l.isInstantPhase]),x.createElement(Zv.Provider,{value:x.useMemo(()=>({...l,setState:u,setCurrentId:d}),[l,d])},r)}function ub(t,r){r===void 0&&(r={});const{open:o,onOpenChange:s,floatingId:l}=t,{id:u,enabled:c=!0}=r,d=u??l,m=lb(),{currentId:h,setCurrentId:v,initialDelay:g,setState:y,timeoutMs:w}=m;return Tn(()=>{c&&h&&(y({delay:{open:1,close:kl(g,"close")}}),h!==d&&s(!1))},[c,d,s,y,h,g]),Tn(()=>{function C(){s(!1),y({delay:g,currentId:null})}if(c&&h&&!o&&h===d){if(w){const E=window.setTimeout(C,w);return()=>{clearTimeout(E)}}C()}},[c,o,y,h,d,s,g,w]),Tn(()=>{c&&(v===Uc||!o||v(d))},[c,o,v,d]),m}function Nc(t,r){let o=t.filter(l=>{var u;return l.parentId===r&&((u=l.context)==null?void 0:u.open)}),s=o;for(;s.length;)s=t.filter(l=>{var u;return(u=s)==null?void 0:u.some(c=>{var d;return l.parentId===c.id&&((d=l.context)==null?void 0:d.open)})}),o=o.concat(s);return o}const cb="data-floating-ui-focusable",fb={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},db={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},$h=t=>{var r,o;return{escapeKey:typeof t=="boolean"?t:(r=t==null?void 0:t.escapeKey)!=null?r:!1,outsidePress:typeof t=="boolean"?t:(o=t==null?void 0:t.outsidePress)!=null?o:!0}};function pb(t,r){r===void 0&&(r={});const{open:o,onOpenChange:s,elements:l,dataRef:u}=t,{enabled:c=!0,escapeKey:d=!0,outsidePress:m=!0,outsidePressEvent:h="pointerdown",referencePress:v=!1,referencePressEvent:g="pointerdown",ancestorScroll:y=!1,bubbles:w,capture:C}=r,E=Ef(),R=Vn(typeof m=="function"?m:()=>!1),N=typeof m=="function"?R:m,j=x.useRef(!1),T=x.useRef(!1),{escapeKey:O,outsidePress:A}=$h(w),{escapeKey:F,outsidePress:H}=$h(C),z=x.useRef(!1),Q=Vn(J=>{var B;if(!o||!c||!d||J.key!=="Escape"||z.current)return;const V=(B=u.current.floatingContext)==null?void 0:B.nodeId,_=E?Nc(E.nodesRef.current,V):[];if(!O&&(J.stopPropagation(),_.length>0)){let M=!0;if(_.forEach(U=>{var k;if((k=U.context)!=null&&k.open&&!U.context.dataRef.current.__escapeKeyBubbles){M=!1;return}}),!M)return}s(!1,Jx(J)?J.nativeEvent:J,"escape-key")}),q=Vn(J=>{var B;const V=()=>{var _;Q(J),(_=Mo(J))==null||_.removeEventListener("keydown",V)};(B=Mo(J))==null||B.addEventListener("keydown",V)}),X=Vn(J=>{var B;const V=j.current;j.current=!1;const _=T.current;if(T.current=!1,h==="click"&&_||V||typeof N=="function"&&!N(J))return;const M=Mo(J),U="["+Rf("inert")+"]",k=Kr(l.floating).querySelectorAll(U);let D=Ge(M)?M:null;for(;D&&!Er(D);){const ce=Gn(D);if(Er(ce)||!Ge(ce))break;D=ce}if(k.length&&Ge(M)&&!eS(M)&&!Ki(M,l.floating)&&Array.from(k).every(ce=>!Ki(D,ce)))return;if(on(M)&&te){const ce=M.clientWidth>0&&M.scrollWidth>M.clientWidth,Se=M.clientHeight>0&&M.scrollHeight>M.clientHeight;let ye=Se&&J.offsetX>M.clientWidth;if(Se&&nn(M).direction==="rtl"&&(ye=J.offsetX<=M.offsetWidth-M.clientWidth),ye||ce&&J.offsetY>M.clientHeight)return}const le=(B=u.current.floatingContext)==null?void 0:B.nodeId,ve=E&&Nc(E.nodesRef.current,le).some(ce=>{var Se;return Cc(J,(Se=ce.context)==null?void 0:Se.elements.floating)});if(Cc(J,l.floating)||Cc(J,l.domReference)||ve)return;const ie=E?Nc(E.nodesRef.current,le):[];if(ie.length>0){let ce=!0;if(ie.forEach(Se=>{var ye;if((ye=Se.context)!=null&&ye.open&&!Se.context.dataRef.current.__outsidePressBubbles){ce=!1;return}}),!ce)return}s(!1,J,"outside-press")}),K=Vn(J=>{var B;const V=()=>{var _;X(J),(_=Mo(J))==null||_.removeEventListener(h,V)};(B=Mo(J))==null||B.addEventListener(h,V)});x.useEffect(()=>{if(!o||!c)return;u.current.__escapeKeyBubbles=O,u.current.__outsidePressBubbles=A;let J=-1;function B(k){s(!1,k,"ancestor-scroll")}function V(){window.clearTimeout(J),z.current=!0}function _(){J=window.setTimeout(()=>{z.current=!1},Kl()?5:0)}const M=Kr(l.floating);d&&(M.addEventListener("keydown",F?q:Q,F),M.addEventListener("compositionstart",V),M.addEventListener("compositionend",_)),N&&M.addEventListener(h,H?K:X,H);let U=[];return y&&(Ge(l.domReference)&&(U=Wn(l.domReference)),Ge(l.floating)&&(U=U.concat(Wn(l.floating))),!Ge(l.reference)&&l.reference&&l.reference.contextElement&&(U=U.concat(Wn(l.reference.contextElement)))),U=U.filter(k=>{var D;return k!==((D=M.defaultView)==null?void 0:D.visualViewport)}),U.forEach(k=>{k.addEventListener("scroll",B,{passive:!0})}),()=>{d&&(M.removeEventListener("keydown",F?q:Q,F),M.removeEventListener("compositionstart",V),M.removeEventListener("compositionend",_)),N&&M.removeEventListener(h,H?K:X,H),U.forEach(k=>{k.removeEventListener("scroll",B)}),window.clearTimeout(J)}},[u,l,d,N,h,o,s,y,c,O,A,Q,F,q,X,H,K]),x.useEffect(()=>{j.current=!1},[N,h]);const Z=x.useMemo(()=>({onKeyDown:Q,[fb[g]]:J=>{v&&s(!1,J.nativeEvent,"reference-press")}}),[Q,s,v,g]),te=x.useMemo(()=>({onKeyDown:Q,onMouseDown(){T.current=!0},onMouseUp(){T.current=!0},[db[h]]:()=>{j.current=!0}}),[Q,h]);return x.useMemo(()=>c?{reference:Z,floating:te}:{},[c,Z,te])}function mb(t){const{open:r=!1,onOpenChange:o,elements:s}=t,l=qv(),u=x.useRef({}),[c]=x.useState(()=>rb()),d=Cf()!=null,[m,h]=x.useState(s.reference),v=Vn((w,C,E)=>{u.current.openEvent=w?C:void 0,c.emit("openchange",{open:w,event:C,reason:E,nested:d}),o==null||o(w,C,E)}),g=x.useMemo(()=>({setPositionReference:h}),[]),y=x.useMemo(()=>({reference:m||s.reference||null,floating:s.floating||null,domReference:s.reference}),[m,s.reference,s.floating]);return x.useMemo(()=>({dataRef:u,open:r,onOpenChange:v,elements:y,events:c,floatingId:l,refs:g}),[r,v,y,c,l,g])}function kf(t){t===void 0&&(t={});const{nodeId:r}=t,o=mb({...t,elements:{reference:null,floating:null,...t.elements}}),s=t.rootContext||o,l=s.elements,[u,c]=x.useState(null),[d,m]=x.useState(null),v=(l==null?void 0:l.domReference)||u,g=x.useRef(null),y=Ef();Tn(()=>{v&&(g.current=v)},[v]);const w=XS({...t,elements:{...l,...d&&{reference:d}}}),C=x.useCallback(T=>{const O=Ge(T)?{getBoundingClientRect:()=>T.getBoundingClientRect(),contextElement:T}:T;m(O),w.refs.setReference(O)},[w.refs]),E=x.useCallback(T=>{(Ge(T)||T===null)&&(g.current=T,c(T)),(Ge(w.refs.reference.current)||w.refs.reference.current===null||T!==null&&!Ge(T))&&w.refs.setReference(T)},[w.refs]),R=x.useMemo(()=>({...w.refs,setReference:E,setPositionReference:C,domReference:g}),[w.refs,E,C]),N=x.useMemo(()=>({...w.elements,domReference:v}),[w.elements,v]),j=x.useMemo(()=>({...w,...s,refs:R,elements:N,nodeId:r}),[w,R,N,r,s]);return Tn(()=>{s.dataRef.current.floatingContext=j;const T=y==null?void 0:y.nodesRef.current.find(O=>O.id===r);T&&(T.context=j)}),x.useMemo(()=>({...w,context:j,refs:R,elements:N}),[w,R,N,j])}function hb(t,r){r===void 0&&(r={});const{open:o,onOpenChange:s,events:l,dataRef:u,elements:c}=t,{enabled:d=!0,visibleOnly:m=!0}=r,h=x.useRef(!1),v=x.useRef(),g=x.useRef(!0);x.useEffect(()=>{if(!d)return;const w=Ft(c.domReference);function C(){!o&&on(c.domReference)&&c.domReference===yh(Kr(c.domReference))&&(h.current=!0)}function E(){g.current=!0}return w.addEventListener("blur",C),w.addEventListener("keydown",E,!0),()=>{w.removeEventListener("blur",C),w.removeEventListener("keydown",E,!0)}},[c.domReference,o,d]),x.useEffect(()=>{if(!d)return;function w(C){let{reason:E}=C;(E==="reference-press"||E==="escape-key")&&(h.current=!0)}return l.on("openchange",w),()=>{l.off("openchange",w)}},[l,d]),x.useEffect(()=>()=>{clearTimeout(v.current)},[]);const y=x.useMemo(()=>({onPointerDown(w){Kx(w.nativeEvent)||(g.current=!1)},onMouseLeave(){h.current=!1},onFocus(w){if(h.current)return;const C=Mo(w.nativeEvent);if(m&&Ge(C))try{if(Qx()&&qx())throw Error();if(!C.matches(":focus-visible"))return}catch{if(!g.current&&!nS(C))return}s(!0,w.nativeEvent,"focus")},onBlur(w){h.current=!1;const C=w.relatedTarget,E=w.nativeEvent,R=Ge(C)&&C.hasAttribute(Rf("focus-guard"))&&C.getAttribute("data-type")==="outside";v.current=window.setTimeout(()=>{var N;const j=yh(c.domReference?c.domReference.ownerDocument:document);!C&&j===c.domReference||Ki((N=u.current.floatingContext)==null?void 0:N.refs.floating.current,j)||Ki(c.domReference,j)||R||s(!1,E,"focus")})}}),[u,c.domReference,s,m]);return x.useMemo(()=>d?{reference:y}:{},[d,y])}const Oh="active",Ih="selected";function Pc(t,r,o){const s=new Map,l=o==="item";let u=t;if(l&&t){const{[Oh]:c,[Ih]:d,...m}=t;u=m}return{...o==="floating"&&{tabIndex:-1,[cb]:""},...u,...r.map(c=>{const d=c?c[o]:null;return typeof d=="function"?t?d(t):null:d}).concat(t).reduce((c,d)=>(d&&Object.entries(d).forEach(m=>{let[h,v]=m;if(!(l&&[Oh,Ih].includes(h)))if(h.indexOf("on")===0){if(s.has(h)||s.set(h,[]),typeof v=="function"){var g;(g=s.get(h))==null||g.push(v),c[h]=function(){for(var y,w=arguments.length,C=new Array(w),E=0;ER(...C)).find(R=>R!==void 0)}}}else c[h]=v}),c),{})}}function vb(t){t===void 0&&(t=[]);const r=t.map(d=>d==null?void 0:d.reference),o=t.map(d=>d==null?void 0:d.floating),s=t.map(d=>d==null?void 0:d.item),l=x.useCallback(d=>Pc(d,t,"reference"),r),u=x.useCallback(d=>Pc(d,t,"floating"),o),c=x.useCallback(d=>Pc(d,t,"item"),s);return x.useMemo(()=>({getReferenceProps:l,getFloatingProps:u,getItemProps:c}),[l,u,c])}const gb=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function yb(t,r){var o;r===void 0&&(r={});const{open:s,floatingId:l}=t,{enabled:u=!0,role:c="dialog"}=r,d=(o=gb.get(c))!=null?o:c,m=qv(),v=Cf()!=null,g=x.useMemo(()=>d==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:s?l:void 0}:{"aria-expanded":s?"true":"false","aria-haspopup":d==="alertdialog"?"dialog":d,"aria-controls":s?l:void 0,...d==="listbox"&&{role:"combobox"},...d==="menu"&&{id:m},...d==="menu"&&v&&{role:"menuitem"},...c==="select"&&{"aria-autocomplete":"none"},...c==="combobox"&&{"aria-autocomplete":"list"}},[d,l,v,s,m,c]),y=x.useMemo(()=>{const C={id:l,...d&&{role:d}};return d==="tooltip"||c==="label"?C:{...C,...d==="menu"&&{"aria-labelledby":m}}},[d,l,m,c]),w=x.useCallback(C=>{let{active:E,selected:R}=C;const N={role:"option",...E&&{id:l+"-option"}};switch(c){case"select":return{...N,"aria-selected":E&&R};case"combobox":return{...N,...E&&{"aria-selected":!0}}}return{}},[l,c]);return x.useMemo(()=>u?{reference:g,floating:y,item:w}:{},[u,g,y,w])}const[wb,sn]=Rr("ScrollArea.Root component was not found in tree");function Vo(t,r){const o=Yr(r);Go(()=>{let s=0;if(t){const l=new ResizeObserver(()=>{cancelAnimationFrame(s),s=window.requestAnimationFrame(o)});return l.observe(t),()=>{window.cancelAnimationFrame(s),l.unobserve(t)}}},[t,o])}const xb=x.forwardRef((t,r)=>{const{style:o,...s}=t,l=sn(),[u,c]=x.useState(0),[d,m]=x.useState(0),h=!!(u&&d);return Vo(l.scrollbarX,()=>{var g;const v=((g=l.scrollbarX)==null?void 0:g.offsetHeight)||0;l.onCornerHeightChange(v),m(v)}),Vo(l.scrollbarY,()=>{var g;const v=((g=l.scrollbarY)==null?void 0:g.offsetWidth)||0;l.onCornerWidthChange(v),c(v)}),h?S.jsx("div",{...s,ref:r,style:{...o,width:u,height:d}}):null}),Sb=x.forwardRef((t,r)=>{const o=sn(),s=!!(o.scrollbarX&&o.scrollbarY);return o.type!=="scroll"&&s?S.jsx(xb,{...t,ref:r}):null}),bb={scrollHideDelay:1e3,type:"hover"},Jv=x.forwardRef((t,r)=>{const o=se("ScrollAreaRoot",bb,t),{type:s,scrollHideDelay:l,scrollbars:u,...c}=o,[d,m]=x.useState(null),[h,v]=x.useState(null),[g,y]=x.useState(null),[w,C]=x.useState(null),[E,R]=x.useState(null),[N,j]=x.useState(0),[T,O]=x.useState(0),[A,F]=x.useState(!1),[H,z]=x.useState(!1),Q=Ot(r,q=>m(q));return S.jsx(wb,{value:{type:s,scrollHideDelay:l,scrollArea:d,viewport:h,onViewportChange:v,content:g,onContentChange:y,scrollbarX:w,onScrollbarXChange:C,scrollbarXEnabled:A,onScrollbarXEnabledChange:F,scrollbarY:E,onScrollbarYChange:R,scrollbarYEnabled:H,onScrollbarYEnabledChange:z,onCornerWidthChange:j,onCornerHeightChange:O},children:S.jsx(fe,{...c,ref:Q,__vars:{"--sa-corner-width":u!=="xy"?"0px":`${N}px`,"--sa-corner-height":u!=="xy"?"0px":`${T}px`}})})});Jv.displayName="@mantine/core/ScrollAreaRoot";function eg(t,r){const o=t/r;return Number.isNaN(o)?0:o}function Zl(t){const r=eg(t.viewport,t.content),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,s=(t.scrollbar.size-o)*r;return Math.max(s,18)}function tg(t,r){return o=>{if(t[0]===t[1]||r[0]===r[1])return r[0];const s=(r[1]-r[0])/(t[1]-t[0]);return r[0]+s*(o-t[0])}}function Cb(t,[r,o]){return Math.min(o,Math.max(r,t))}function Mh(t,r,o="ltr"){const s=Zl(r),l=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,u=r.scrollbar.size-l,c=r.content-r.viewport,d=u-s,m=o==="ltr"?[0,c]:[c*-1,0],h=Cb(t,m);return tg([0,c],[0,d])(h)}function Eb(t,r,o,s="ltr"){const l=Zl(o),u=l/2,c=r||u,d=l-c,m=o.scrollbar.paddingStart+c,h=o.scrollbar.size-o.scrollbar.paddingEnd-d,v=o.content-o.viewport,g=s==="ltr"?[0,v]:[v*-1,0];return tg([m,h],g)(t)}function ng(t,r){return t>0&&t{t==null||t(s),(o===!1||!s.defaultPrevented)&&(r==null||r(s))}}const[Rb,rg]=Rr("ScrollAreaScrollbar was not found in tree"),og=x.forwardRef((t,r)=>{const{sizes:o,hasThumb:s,onThumbChange:l,onThumbPointerUp:u,onThumbPointerDown:c,onThumbPositionChange:d,onDragScroll:m,onWheelScroll:h,onResize:v,...g}=t,y=sn(),[w,C]=x.useState(null),E=Ot(r,z=>C(z)),R=x.useRef(null),N=x.useRef(""),{viewport:j}=y,T=o.content-o.viewport,O=Yr(h),A=Yr(d),F=Fl(v,10),H=z=>{if(R.current){const Q=z.clientX-R.current.left,q=z.clientY-R.current.top;m({x:Q,y:q})}};return x.useEffect(()=>{const z=Q=>{const q=Q.target;(w==null?void 0:w.contains(q))&&O(Q,T)};return document.addEventListener("wheel",z,{passive:!1}),()=>document.removeEventListener("wheel",z,{passive:!1})},[j,w,T,O]),x.useEffect(A,[o,A]),Vo(w,F),Vo(y.content,F),S.jsx(Rb,{value:{scrollbar:w,hasThumb:s,onThumbChange:Yr(l),onThumbPointerUp:Yr(u),onThumbPositionChange:A,onThumbPointerDown:Yr(c)},children:S.jsx("div",{...g,ref:E,"data-mantine-scrollbar":!0,style:{position:"absolute",...g.style},onPointerDown:qr(t.onPointerDown,z=>{z.preventDefault(),z.button===0&&(z.target.setPointerCapture(z.pointerId),R.current=w.getBoundingClientRect(),N.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",H(z))}),onPointerMove:qr(t.onPointerMove,H),onPointerUp:qr(t.onPointerUp,z=>{const Q=z.target;Q.hasPointerCapture(z.pointerId)&&(z.preventDefault(),Q.releasePointerCapture(z.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=N.current,R.current=null}})})}),ig=x.forwardRef((t,r)=>{const{sizes:o,onSizesChange:s,style:l,...u}=t,c=sn(),[d,m]=x.useState(),h=x.useRef(null),v=Ot(r,h,c.onScrollbarXChange);return x.useEffect(()=>{h.current&&m(getComputedStyle(h.current))},[h]),S.jsx(og,{"data-orientation":"horizontal",...u,ref:v,sizes:o,style:{...l,"--sa-thumb-width":`${Zl(o)}px`},onThumbPointerDown:g=>t.onThumbPointerDown(g.x),onDragScroll:g=>t.onDragScroll(g.x),onWheelScroll:(g,y)=>{if(c.viewport){const w=c.viewport.scrollLeft+g.deltaX;t.onWheelScroll(w),ng(w,y)&&g.preventDefault()}},onResize:()=>{h.current&&c.viewport&&d&&s({content:c.viewport.scrollWidth,viewport:c.viewport.offsetWidth,scrollbar:{size:h.current.clientWidth,paddingStart:Ml(d.paddingLeft),paddingEnd:Ml(d.paddingRight)}})}})});ig.displayName="@mantine/core/ScrollAreaScrollbarX";const sg=x.forwardRef((t,r)=>{const{sizes:o,onSizesChange:s,style:l,...u}=t,c=sn(),[d,m]=x.useState(),h=x.useRef(null),v=Ot(r,h,c.onScrollbarYChange);return x.useEffect(()=>{h.current&&m(window.getComputedStyle(h.current))},[]),S.jsx(og,{...u,"data-orientation":"vertical",ref:v,sizes:o,style:{"--sa-thumb-height":`${Zl(o)}px`,...l},onThumbPointerDown:g=>t.onThumbPointerDown(g.y),onDragScroll:g=>t.onDragScroll(g.y),onWheelScroll:(g,y)=>{if(c.viewport){const w=c.viewport.scrollTop+g.deltaY;t.onWheelScroll(w),ng(w,y)&&g.preventDefault()}},onResize:()=>{h.current&&c.viewport&&d&&s({content:c.viewport.scrollHeight,viewport:c.viewport.offsetHeight,scrollbar:{size:h.current.clientHeight,paddingStart:Ml(d.paddingTop),paddingEnd:Ml(d.paddingBottom)}})}})});sg.displayName="@mantine/core/ScrollAreaScrollbarY";const Jl=x.forwardRef((t,r)=>{const{orientation:o="vertical",...s}=t,{dir:l}=Ul(),u=sn(),c=x.useRef(null),d=x.useRef(0),[m,h]=x.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),v=eg(m.viewport,m.content),g={...s,sizes:m,onSizesChange:h,hasThumb:v>0&&v<1,onThumbChange:w=>{c.current=w},onThumbPointerUp:()=>{d.current=0},onThumbPointerDown:w=>{d.current=w}},y=(w,C)=>Eb(w,d.current,m,C);return o==="horizontal"?S.jsx(ig,{...g,ref:r,onThumbPositionChange:()=>{if(u.viewport&&c.current){const w=u.viewport.scrollLeft,C=Mh(w,m,l);c.current.style.transform=`translate3d(${C}px, 0, 0)`}},onWheelScroll:w=>{u.viewport&&(u.viewport.scrollLeft=w)},onDragScroll:w=>{u.viewport&&(u.viewport.scrollLeft=y(w,l))}}):o==="vertical"?S.jsx(sg,{...g,ref:r,onThumbPositionChange:()=>{if(u.viewport&&c.current){const w=u.viewport.scrollTop,C=Mh(w,m);m.scrollbar.size===0?c.current.style.setProperty("--thumb-opacity","0"):c.current.style.setProperty("--thumb-opacity","1"),c.current.style.transform=`translate3d(0, ${C}px, 0)`}},onWheelScroll:w=>{u.viewport&&(u.viewport.scrollTop=w)},onDragScroll:w=>{u.viewport&&(u.viewport.scrollTop=y(w))}}):null});Jl.displayName="@mantine/core/ScrollAreaScrollbarVisible";const Nf=x.forwardRef((t,r)=>{const o=sn(),{forceMount:s,...l}=t,[u,c]=x.useState(!1),d=t.orientation==="horizontal",m=Fl(()=>{if(o.viewport){const h=o.viewport.offsetWidth{const{forceMount:o,...s}=t,l=sn(),[u,c]=x.useState(!1);return x.useEffect(()=>{const{scrollArea:d}=l;let m=0;if(d){const h=()=>{window.clearTimeout(m),c(!0)},v=()=>{m=window.setTimeout(()=>c(!1),l.scrollHideDelay)};return d.addEventListener("pointerenter",h),d.addEventListener("pointerleave",v),()=>{window.clearTimeout(m),d.removeEventListener("pointerenter",h),d.removeEventListener("pointerleave",v)}}},[l.scrollArea,l.scrollHideDelay]),o||u?S.jsx(Nf,{"data-state":u?"visible":"hidden",...s,ref:r}):null});lg.displayName="@mantine/core/ScrollAreaScrollbarHover";const kb=x.forwardRef((t,r)=>{const{forceMount:o,...s}=t,l=sn(),u=t.orientation==="horizontal",[c,d]=x.useState("hidden"),m=Fl(()=>d("idle"),100);return x.useEffect(()=>{if(c==="idle"){const h=window.setTimeout(()=>d("hidden"),l.scrollHideDelay);return()=>window.clearTimeout(h)}},[c,l.scrollHideDelay]),x.useEffect(()=>{const{viewport:h}=l,v=u?"scrollLeft":"scrollTop";if(h){let g=h[v];const y=()=>{const w=h[v];g!==w&&(d("scrolling"),m()),g=w};return h.addEventListener("scroll",y),()=>h.removeEventListener("scroll",y)}},[l.viewport,u,m]),o||c!=="hidden"?S.jsx(Jl,{"data-state":c==="hidden"?"hidden":"visible",...s,ref:r,onPointerEnter:qr(t.onPointerEnter,()=>d("interacting")),onPointerLeave:qr(t.onPointerLeave,()=>d("idle"))}):null}),Gc=x.forwardRef((t,r)=>{const{forceMount:o,...s}=t,l=sn(),{onScrollbarXEnabledChange:u,onScrollbarYEnabledChange:c}=l,d=t.orientation==="horizontal";return x.useEffect(()=>(d?u(!0):c(!0),()=>{d?u(!1):c(!1)}),[d,u,c]),l.type==="hover"?S.jsx(lg,{...s,ref:r,forceMount:o}):l.type==="scroll"?S.jsx(kb,{...s,ref:r,forceMount:o}):l.type==="auto"?S.jsx(Nf,{...s,ref:r,forceMount:o}):l.type==="always"?S.jsx(Jl,{...s,ref:r}):null});Gc.displayName="@mantine/core/ScrollAreaScrollbar";function Nb(t,r=()=>{}){let o={left:t.scrollLeft,top:t.scrollTop},s=0;return(function l(){const u={left:t.scrollLeft,top:t.scrollTop},c=o.left!==u.left,d=o.top!==u.top;(c||d)&&r(),o=u,s=window.requestAnimationFrame(l)})(),()=>window.cancelAnimationFrame(s)}const ag=x.forwardRef((t,r)=>{const{style:o,...s}=t,l=sn(),u=rg(),{onThumbPositionChange:c}=u,d=Ot(r,v=>u.onThumbChange(v)),m=x.useRef(void 0),h=Fl(()=>{m.current&&(m.current(),m.current=void 0)},100);return x.useEffect(()=>{const{viewport:v}=l;if(v){const g=()=>{if(h(),!m.current){const y=Nb(v,c);m.current=y,c()}};return c(),v.addEventListener("scroll",g),()=>v.removeEventListener("scroll",g)}},[l.viewport,h,c]),S.jsx("div",{"data-state":u.hasThumb?"visible":"hidden",...s,ref:d,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...o},onPointerDownCapture:qr(t.onPointerDownCapture,v=>{const y=v.target.getBoundingClientRect(),w=v.clientX-y.left,C=v.clientY-y.top;u.onThumbPointerDown({x:w,y:C})}),onPointerUp:qr(t.onPointerUp,u.onThumbPointerUp)})});ag.displayName="@mantine/core/ScrollAreaThumb";const Yc=x.forwardRef((t,r)=>{const{forceMount:o,...s}=t,l=rg();return o||l.hasThumb?S.jsx(ag,{ref:r,...s}):null});Yc.displayName="@mantine/core/ScrollAreaThumb";const ug=x.forwardRef(({children:t,style:r,...o},s)=>{const l=sn(),u=Ot(s,l.onViewportChange);return S.jsx(fe,{...o,ref:u,style:{overflowX:l.scrollbarXEnabled?"scroll":"hidden",overflowY:l.scrollbarYEnabled?"scroll":"hidden",...r},children:S.jsx("div",{style:{minWidth:"100%"},ref:l.onContentChange,children:t})})});ug.displayName="@mantine/core/ScrollAreaViewport";var Pf={root:"m_d57069b5",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const cg={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},Pb=(t,{scrollbarSize:r,overscrollBehavior:o})=>({root:{"--scrollarea-scrollbar-size":Y(r),"--scrollarea-over-scroll-behavior":o}}),Ko=be((t,r)=>{const o=se("ScrollArea",cg,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,scrollbarSize:m,vars:h,type:v,scrollHideDelay:g,viewportProps:y,viewportRef:w,onScrollPositionChange:C,children:E,offsetScrollbars:R,scrollbars:N,onBottomReached:j,onTopReached:T,overscrollBehavior:O,...A}=o,[F,H]=x.useState(!1),[z,Q]=x.useState(!1),[q,X]=x.useState(!1),K=Ie({name:"ScrollArea",props:o,classes:Pf,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:h,varsResolver:Pb}),Z=x.useRef(null),te=qS([w,Z]);return x.useEffect(()=>{if(!Z.current||R!=="present")return;const J=Z.current,B=new ResizeObserver(()=>{const{scrollHeight:V,clientHeight:_,scrollWidth:M,clientWidth:U}=J;Q(V>_),X(M>U)});return B.observe(J),()=>B.disconnect()},[Z,R]),S.jsxs(Jv,{type:v==="never"?"always":v,scrollHideDelay:g,ref:r,scrollbars:N,...K("root"),...A,children:[S.jsx(ug,{...y,...K("viewport",{style:y==null?void 0:y.style}),ref:te,"data-offset-scrollbars":R===!0?"xy":R||void 0,"data-scrollbars":N||void 0,"data-horizontal-hidden":R==="present"&&!q?"true":void 0,"data-vertical-hidden":R==="present"&&!z?"true":void 0,onScroll:J=>{var M;(M=y==null?void 0:y.onScroll)==null||M.call(y,J),C==null||C({x:J.currentTarget.scrollLeft,y:J.currentTarget.scrollTop});const{scrollTop:B,scrollHeight:V,clientHeight:_}=J.currentTarget;B-(V-_)>=-.6&&(j==null||j()),B===0&&(T==null||T())},children:E}),(N==="xy"||N==="x")&&S.jsx(Gc,{...K("scrollbar"),orientation:"horizontal","data-hidden":v==="never"||R==="present"&&!q?!0:void 0,forceMount:!0,onMouseEnter:()=>H(!0),onMouseLeave:()=>H(!1),children:S.jsx(Yc,{...K("thumb")})}),(N==="xy"||N==="y")&&S.jsx(Gc,{...K("scrollbar"),orientation:"vertical","data-hidden":v==="never"||R==="present"&&!z?!0:void 0,forceMount:!0,onMouseEnter:()=>H(!0),onMouseLeave:()=>H(!1),children:S.jsx(Yc,{...K("thumb")})}),S.jsx(Sb,{...K("corner"),"data-hovered":F||void 0,"data-hidden":v==="never"||void 0})]})});Ko.displayName="@mantine/core/ScrollArea";const _f=be((t,r)=>{const{children:o,classNames:s,styles:l,scrollbarSize:u,scrollHideDelay:c,type:d,dir:m,offsetScrollbars:h,viewportRef:v,onScrollPositionChange:g,unstyled:y,variant:w,viewportProps:C,scrollbars:E,style:R,vars:N,onBottomReached:j,onTopReached:T,...O}=se("ScrollAreaAutosize",cg,t);return S.jsx(fe,{...O,ref:r,style:[{display:"flex",overflow:"auto"},R],children:S.jsx(fe,{style:{display:"flex",flexDirection:"column",flex:1},children:S.jsx(Ko,{classNames:s,styles:l,scrollHideDelay:c,scrollbarSize:u,type:d,dir:m,offsetScrollbars:h,viewportRef:v,onScrollPositionChange:g,unstyled:y,variant:w,viewportProps:C,vars:N,scrollbars:E,onBottomReached:j,onTopReached:T,children:o})})})});Ko.classes=Pf;_f.displayName="@mantine/core/ScrollAreaAutosize";_f.classes=Pf;Ko.Autosize=_f;var fg={root:"m_87cf2631"};const _b={__staticSelector:"UnstyledButton"},Xn=Vt((t,r)=>{const o=se("UnstyledButton",_b,t),{className:s,component:l="button",__staticSelector:u,unstyled:c,classNames:d,styles:m,style:h,...v}=o,g=Ie({name:u,props:o,classes:fg,className:s,style:h,classNames:d,styles:m,unstyled:c});return S.jsx(fe,{...g("root",{focusable:!0}),component:l,ref:r,type:l==="button"?"button":void 0,...v})});Xn.classes=fg;Xn.displayName="@mantine/core/UnstyledButton";var dg={root:"m_515a97f8"};const Tb={},Tf=be((t,r)=>{const o=se("VisuallyHidden",Tb,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,...h}=o,v=Ie({name:"VisuallyHidden",classes:dg,props:o,className:l,style:u,classNames:s,styles:c,unstyled:d});return S.jsx(fe,{component:"span",ref:r,...v("root"),...h})});Tf.classes=dg;Tf.displayName="@mantine/core/VisuallyHidden";var pg={root:"m_1b7284a3"};const jb={},$b=(t,{radius:r,shadow:o})=>({root:{"--paper-radius":r===void 0?void 0:$t(r),"--paper-shadow":lf(o)}}),Qo=Vt((t,r)=>{const o=se("Paper",jb,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,withBorder:m,vars:h,radius:v,shadow:g,variant:y,mod:w,...C}=o,E=Ie({name:"Paper",props:o,classes:pg,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:h,varsResolver:$b});return S.jsx(fe,{ref:r,mod:[{"data-with-border":m},w],...E("root"),variant:y,...C})});Qo.classes=pg;Qo.displayName="@mantine/core/Paper";function mg(t,r){if(t==="rtl"&&(r.includes("right")||r.includes("left"))){const[o,s]=r.split("-"),l=o==="right"?"left":"right";return s===void 0?l:`${l}-${s}`}return r}function Ah(t,r,o,s){return t==="center"||s==="center"?{top:r}:t==="end"?{bottom:o}:t==="start"?{top:o}:{}}function Dh(t,r,o,s,l){return t==="center"||s==="center"?{left:r}:t==="end"?{[l==="ltr"?"right":"left"]:o}:t==="start"?{[l==="ltr"?"left":"right"]:o}:{}}const Ob={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function Ib({position:t,arrowSize:r,arrowOffset:o,arrowRadius:s,arrowPosition:l,arrowX:u,arrowY:c,dir:d}){const[m,h="center"]=t.split("-"),v={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[Ob[m]]:s},g=-r/2;return m==="left"?{...v,...Ah(h,c,o,l),right:g,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:m==="right"?{...v,...Ah(h,c,o,l),left:g,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:m==="top"?{...v,...Dh(h,u,o,l,d),bottom:g,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:m==="bottom"?{...v,...Dh(h,u,o,l,d),top:g,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const jf=x.forwardRef(({position:t,arrowSize:r,arrowOffset:o,arrowRadius:s,arrowPosition:l,visible:u,arrowX:c,arrowY:d,style:m,...h},v)=>{const{dir:g}=Ul();return u?S.jsx("div",{...h,ref:v,style:{...m,...Ib({position:t,arrowSize:r,arrowOffset:o,arrowRadius:s,arrowPosition:l,dir:g,arrowX:c,arrowY:d})}}):null});jf.displayName="@mantine/core/FloatingArrow";var hg={root:"m_9814e45f"};const Mb={zIndex:Sn("modal")},Ab=(t,{gradient:r,color:o,backgroundOpacity:s,blur:l,radius:u,zIndex:c})=>({root:{"--overlay-bg":r||(o!==void 0||s!==void 0)&&Nn(o||"#000",s??.6)||void 0,"--overlay-filter":l?`blur(${Y(l)})`:void 0,"--overlay-radius":u===void 0?void 0:$t(u),"--overlay-z-index":c==null?void 0:c.toString()}}),ea=Vt((t,r)=>{const o=se("Overlay",Mb,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,fixed:h,center:v,children:g,radius:y,zIndex:w,gradient:C,blur:E,color:R,backgroundOpacity:N,mod:j,...T}=o,O=Ie({name:"Overlay",props:o,classes:hg,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:Ab});return S.jsx(fe,{ref:r,...O("root"),mod:[{center:v,fixed:h},j],...T,children:g})});ea.classes=hg;ea.displayName="@mantine/core/Overlay";function _c(t){const r=document.createElement("div");return r.setAttribute("data-portal","true"),typeof t.className=="string"&&r.classList.add(...t.className.split(" ").filter(Boolean)),typeof t.style=="object"&&Object.assign(r.style,t.style),typeof t.id=="string"&&r.setAttribute("id",t.id),r}function Db({target:t,reuseTargetNode:r,...o}){if(t)return typeof t=="string"?document.querySelector(t)||_c(o):t;if(r){const s=document.querySelector("[data-mantine-shared-portal-node]");if(s)return s;const l=_c(o);return l.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(l),l}return _c(o)}const Lb={},vg=be((t,r)=>{const{children:o,target:s,reuseTargetNode:l,...u}=se("Portal",Lb,t),[c,d]=x.useState(!1),m=x.useRef(null);return Go(()=>(d(!0),m.current=Db({target:s,reuseTargetNode:l,...u}),_l(r,m.current),!s&&!l&&m.current&&document.body.appendChild(m.current),()=>{!s&&!l&&m.current&&document.body.removeChild(m.current)}),[s]),!c||!m.current?null:Gl.createPortal(S.jsx(S.Fragment,{children:o}),m.current)});vg.displayName="@mantine/core/Portal";const eo=be(({withinPortal:t=!0,children:r,...o},s)=>Rv()==="test"||!t?S.jsx(S.Fragment,{children:r}):S.jsx(vg,{ref:s,...o,children:r}));eo.displayName="@mantine/core/OptionalPortal";const Hi=t=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${t==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),Sl={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(30px)"},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-30px)"},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(30px)"},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-30px)"},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(-20px) skew(-10deg, -5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(20px) skew(-10deg, -5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(-5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...Hi("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...Hi("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...Hi("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...Hi("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...Hi("top"),common:{transformOrigin:"top right"}}},Lh={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function zb({transition:t,state:r,duration:o,timingFunction:s}){const l={WebkitBackfaceVisibility:"hidden",willChange:"transform, opacity",transitionDuration:`${o}ms`,transitionTimingFunction:s};return typeof t=="string"?t in Sl?{transitionProperty:Sl[t].transitionProperty,...l,...Sl[t].common,...Sl[t][Lh[r]]}:{}:{transitionProperty:t.transitionProperty,...l,...t.common,...t[Lh[r]]}}function Fb({duration:t,exitDuration:r,timingFunction:o,mounted:s,onEnter:l,onExit:u,onEntered:c,onExited:d,enterDelay:m,exitDelay:h}){const v=rn(),g=Bl(),y=v.respectReducedMotion?g:!1,[w,C]=x.useState(y?0:t),[E,R]=x.useState(s?"entered":"exited"),N=x.useRef(-1),j=x.useRef(-1),T=x.useRef(-1);function O(){window.clearTimeout(N.current),window.clearTimeout(j.current),cancelAnimationFrame(T.current)}const A=H=>{O();const z=H?l:u,Q=H?c:d,q=y?0:H?t:r;C(q),q===0?(typeof z=="function"&&z(),typeof Q=="function"&&Q(),R(H?"entered":"exited")):T.current=requestAnimationFrame(()=>{Ui.flushSync(()=>{R(H?"pre-entering":"pre-exiting")}),T.current=requestAnimationFrame(()=>{typeof z=="function"&&z(),R(H?"entering":"exiting"),N.current=window.setTimeout(()=>{typeof Q=="function"&&Q(),R(H?"entered":"exited")},q)})})},F=H=>{if(O(),typeof(H?m:h)!="number"){A(H);return}j.current=window.setTimeout(()=>{A(H)},H?m:h)};return Hn(()=>{F(s)},[s]),x.useEffect(()=>()=>{O()},[]),{transitionDuration:w,transitionStatus:E,transitionTimingFunction:o||"ease"}}function Nr({keepMounted:t,transition:r="fade",duration:o=250,exitDuration:s=o,mounted:l,children:u,timingFunction:c="ease",onExit:d,onEntered:m,onEnter:h,onExited:v,enterDelay:g,exitDelay:y}){const w=Rv(),{transitionDuration:C,transitionStatus:E,transitionTimingFunction:R}=Fb({mounted:l,exitDuration:s,duration:o,timingFunction:c,onExit:d,onEntered:m,onEnter:h,onExited:v,enterDelay:g,exitDelay:y});return C===0||w==="test"?l?S.jsx(S.Fragment,{children:u({})}):t?u({display:"none"}):null:E==="exited"?t?u({display:"none"}):null:S.jsx(S.Fragment,{children:u(zb({transition:r,duration:C,state:E,timingFunction:R}))})}Nr.displayName="@mantine/core/Transition";const[Bb,gg]=Rr("Popover component was not found in the tree");function ta({children:t,active:r=!0,refProp:o="ref",innerRef:s}){const l=E1(r),u=Ot(l,s);return Jr(t)?x.cloneElement(t,{[o]:u}):t}function yg(t){return S.jsx(Tf,{tabIndex:-1,"data-autofocus":!0,...t})}ta.displayName="@mantine/core/FocusTrap";yg.displayName="@mantine/core/FocusTrapInitialFocus";ta.InitialFocus=yg;var wg={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const Vb={},$f=be((t,r)=>{var R,N,j,T;const o=se("PopoverDropdown",Vb,t),{className:s,style:l,vars:u,children:c,onKeyDownCapture:d,variant:m,classNames:h,styles:v,...g}=o,y=gg(),w=gv({opened:y.opened,shouldReturnFocus:y.returnFocus}),C=y.withRoles?{"aria-labelledby":y.getTargetId(),id:y.getDropdownId(),role:"dialog",tabIndex:-1}:{},E=Ot(r,y.floating);return y.disabled?null:S.jsx(eo,{...y.portalProps,withinPortal:y.withinPortal,children:S.jsx(Nr,{mounted:y.opened,...y.transitionProps,transition:((R=y.transitionProps)==null?void 0:R.transition)||"fade",duration:((N=y.transitionProps)==null?void 0:N.duration)??150,keepMounted:y.keepMounted,exitDuration:typeof((j=y.transitionProps)==null?void 0:j.exitDuration)=="number"?y.transitionProps.exitDuration:(T=y.transitionProps)==null?void 0:T.duration,children:O=>S.jsx(ta,{active:y.trapFocus&&y.opened,innerRef:E,children:S.jsxs(fe,{...C,...g,variant:m,onKeyDownCapture:p1(()=>{var A,F;(A=y.onClose)==null||A.call(y),(F=y.onDismiss)==null||F.call(y)},{active:y.closeOnEscape,onTrigger:w,onKeyDown:d}),"data-position":y.placement,"data-fixed":y.floatingStrategy==="fixed"||void 0,...y.getStyles("dropdown",{className:s,props:o,classNames:h,styles:v,style:[{...O,zIndex:y.zIndex,top:y.y??0,left:y.x??0,width:y.width==="target"?void 0:Y(y.width)},y.resolvedStyles.dropdown,v==null?void 0:v.dropdown,l]}),children:[c,S.jsx(jf,{ref:y.arrowRef,arrowX:y.arrowX,arrowY:y.arrowY,visible:y.withArrow,position:y.placement,arrowSize:y.arrowSize,arrowRadius:y.arrowRadius,arrowOffset:y.arrowOffset,arrowPosition:y.arrowPosition,...y.getStyles("arrow",{props:o,classNames:h,styles:v})})]})})})})});$f.classes=wg;$f.displayName="@mantine/core/PopoverDropdown";const Wb={refProp:"ref",popupType:"dialog"},xg=be((t,r)=>{const{children:o,refProp:s,popupType:l,...u}=se("PopoverTarget",Wb,t);if(!Jr(o))throw new Error("Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const c=u,d=gg(),m=Ot(d.reference,Vl(o),r),h=d.withRoles?{"aria-haspopup":l,"aria-expanded":d.opened,"aria-controls":d.getDropdownId(),id:d.getTargetId()}:{};return x.cloneElement(o,{...c,...h,...d.targetProps,className:lt(d.targetProps.className,c.className,o.props.className),[s]:m,...d.controlled?null:{onClick:d.onToggle}})});xg.displayName="@mantine/core/PopoverTarget";function Sg({opened:t,floating:r,position:o,positionDependencies:s}){const[l,u]=x.useState(0);x.useEffect(()=>{if(r.refs.reference.current&&r.refs.floating.current&&t)return LS(r.refs.reference.current,r.refs.floating.current,r.update)},[r.refs.reference.current,r.refs.floating.current,t,l,o]),Hn(()=>{r.update()},s),Hn(()=>{u(c=>c+1)},[t])}function Hb(t){if(t===void 0)return{shift:!0,flip:!0};const r={...t};return t.shift===void 0&&(r.shift=!0),t.flip===void 0&&(r.flip=!0),r}function Ub(t,r){const o=Hb(t.middlewares),s=[Xv(t.offset)];return o.shift&&s.push(bf(typeof o.shift=="boolean"?{limiter:Ph(),padding:5}:{limiter:Ph(),padding:5,...o.shift})),o.flip&&s.push(typeof o.flip=="boolean"?Il():Il(o.flip)),o.inline&&s.push(typeof o.inline=="boolean"?Yi():Yi(o.inline)),s.push(Kv({element:t.arrowRef,padding:t.arrowOffset})),(o.size||t.width==="target")&&s.push(QS({...typeof o.size=="boolean"?{}:o.size,apply({rects:l,availableWidth:u,availableHeight:c,...d}){var v;const h=((v=r().refs.floating.current)==null?void 0:v.style)??{};o.size&&(typeof o.size=="object"&&o.size.apply?o.size.apply({rects:l,availableWidth:u,availableHeight:c,...d}):Object.assign(h,{maxWidth:`${u}px`,maxHeight:`${c}px`})),t.width==="target"&&Object.assign(h,{width:`${l.reference.width}px`})}})),s}function Gb(t){const[r,o]=Fo({value:t.opened,defaultValue:t.defaultOpened,finalValue:!1,onChange:t.onChange}),s=x.useRef(r),l=()=>{r&&!t.disabled&&o(!1)},u=()=>!t.disabled&&o(!r),c=kf({strategy:t.strategy,placement:t.position,middleware:Ub(t,()=>c)});return Sg({opened:r,position:t.position,positionDependencies:t.positionDependencies||[],floating:c}),Hn(()=>{var d;(d=t.onPositionChange)==null||d.call(t,c.placement)},[c.placement]),Hn(()=>{var d,m;r!==s.current&&(r?(m=t.onOpen)==null||m.call(t):(d=t.onClose)==null||d.call(t)),s.current=r},[r,t.onClose,t.onOpen]),{floating:c,controlled:typeof t.opened=="boolean",opened:r,onClose:l,onToggle:u}}const Yb={position:"bottom",offset:8,positionDependencies:[],transitionProps:{transition:"fade",duration:150},middlewares:{flip:!0,shift:!0,inline:!1},arrowSize:7,arrowOffset:5,arrowRadius:0,arrowPosition:"side",closeOnClickOutside:!0,withinPortal:!0,closeOnEscape:!0,trapFocus:!1,withRoles:!0,returnFocus:!1,withOverlay:!1,clickOutsideEvents:["mousedown","touchstart"],zIndex:Sn("popover"),__staticSelector:"Popover",width:"max-content"},Xb=(t,{radius:r,shadow:o})=>({dropdown:{"--popover-radius":r===void 0?void 0:$t(r),"--popover-shadow":lf(o)}});function Pr(t){var Ce,Ve,ht,at,Fe,Be;const r=se("Popover",Yb,t),{children:o,position:s,offset:l,onPositionChange:u,positionDependencies:c,opened:d,transitionProps:m,onExitTransitionEnd:h,onEnterTransitionEnd:v,width:g,middlewares:y,withArrow:w,arrowSize:C,arrowOffset:E,arrowRadius:R,arrowPosition:N,unstyled:j,classNames:T,styles:O,closeOnClickOutside:A,withinPortal:F,portalProps:H,closeOnEscape:z,clickOutsideEvents:Q,trapFocus:q,onClose:X,onDismiss:K,onOpen:Z,onChange:te,zIndex:J,radius:B,shadow:V,id:_,defaultOpened:M,__staticSelector:U,withRoles:k,disabled:D,returnFocus:le,variant:ve,keepMounted:ie,vars:ce,floatingStrategy:Se,withOverlay:ye,overlayProps:Re,...je}=r,qe=Ie({name:U,props:r,classes:wg,classNames:T,styles:O,unstyled:j,rootSelector:"dropdown",vars:ce,varsResolver:Xb}),{resolvedStyles:nt}=es({classNames:T,styles:O,props:r}),Ze=x.useRef(null),[rt,ot]=x.useState(null),[Pt,ue]=x.useState(null),{dir:de}=Ul(),we=kr(_),Ee=Gb({middlewares:y,width:g,position:mg(de,s),offset:typeof l=="number"?l+(w?C/2:0):l,arrowRef:Ze,arrowOffset:E,onPositionChange:u,positionDependencies:c,opened:d,defaultOpened:M,onChange:te,onOpen:Z,onClose:X,onDismiss:K,strategy:Se,disabled:D});h1(()=>{A&&(Ee.onClose(),K==null||K())},Q,[rt,Pt]);const $e=x.useCallback(Le=>{ot(Le),Ee.floating.refs.setReference(Le)},[Ee.floating.refs.setReference]),Pe=x.useCallback(Le=>{ue(Le),Ee.floating.refs.setFloating(Le)},[Ee.floating.refs.setFloating]),Te=x.useCallback(()=>{var Le;(Le=m==null?void 0:m.onExited)==null||Le.call(m),h==null||h()},[m==null?void 0:m.onExited,h]),ae=x.useCallback(()=>{var Le;(Le=m==null?void 0:m.onEntered)==null||Le.call(m),v==null||v()},[m==null?void 0:m.onEntered,v]);return S.jsxs(Bb,{value:{returnFocus:le,disabled:D,controlled:Ee.controlled,reference:$e,floating:Pe,x:Ee.floating.x,y:Ee.floating.y,arrowX:(ht=(Ve=(Ce=Ee.floating)==null?void 0:Ce.middlewareData)==null?void 0:Ve.arrow)==null?void 0:ht.x,arrowY:(Be=(Fe=(at=Ee.floating)==null?void 0:at.middlewareData)==null?void 0:Fe.arrow)==null?void 0:Be.y,opened:Ee.opened,arrowRef:Ze,transitionProps:{...m,onExited:Te,onEntered:ae},width:g,withArrow:w,arrowSize:C,arrowOffset:E,arrowRadius:R,arrowPosition:N,placement:Ee.floating.placement,trapFocus:q,withinPortal:F,portalProps:H,zIndex:J,radius:B,shadow:V,closeOnEscape:z,onDismiss:K,onClose:Ee.onClose,onToggle:Ee.onToggle,getTargetId:()=>`${we}-target`,getDropdownId:()=>`${we}-dropdown`,withRoles:k,targetProps:je,__staticSelector:U,classNames:T,styles:O,unstyled:j,variant:ve,keepMounted:ie,getStyles:qe,resolvedStyles:nt,floatingStrategy:Se},children:[o,ye&&S.jsx(Nr,{transition:"fade",mounted:Ee.opened,duration:(m==null?void 0:m.duration)||250,exitDuration:(m==null?void 0:m.exitDuration)||250,children:Le=>S.jsx(eo,{withinPortal:F,children:S.jsx(ea,{...Re,...qe("overlay",{className:Re==null?void 0:Re.className,style:[Le,Re==null?void 0:Re.style]})})})})]})}Pr.Target=xg;Pr.Dropdown=$f;Pr.displayName="@mantine/core/Popover";Pr.extend=t=>t;var gn={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const bg=x.forwardRef(({className:t,...r},o)=>S.jsxs(fe,{component:"span",className:lt(gn.barsLoader,t),...r,ref:o,children:[S.jsx("span",{className:gn.bar}),S.jsx("span",{className:gn.bar}),S.jsx("span",{className:gn.bar})]}));bg.displayName="@mantine/core/Bars";const Cg=x.forwardRef(({className:t,...r},o)=>S.jsxs(fe,{component:"span",className:lt(gn.dotsLoader,t),...r,ref:o,children:[S.jsx("span",{className:gn.dot}),S.jsx("span",{className:gn.dot}),S.jsx("span",{className:gn.dot})]}));Cg.displayName="@mantine/core/Dots";const Eg=x.forwardRef(({className:t,...r},o)=>S.jsx(fe,{component:"span",className:lt(gn.ovalLoader,t),...r,ref:o}));Eg.displayName="@mantine/core/Oval";const Rg={bars:bg,oval:Eg,dots:Cg},Kb={loaders:Rg,type:"oval"},Qb=(t,{size:r,color:o})=>({root:{"--loader-size":Xe(r,"loader-size"),"--loader-color":o?Un(o,t):void 0}}),to=be((t,r)=>{const o=se("Loader",Kb,t),{size:s,color:l,type:u,vars:c,className:d,style:m,classNames:h,styles:v,unstyled:g,loaders:y,variant:w,children:C,...E}=o,R=Ie({name:"Loader",props:o,classes:gn,className:d,style:m,classNames:h,styles:v,unstyled:g,vars:c,varsResolver:Qb});return C?S.jsx(fe,{...R("root"),ref:r,...E,children:C}):S.jsx(fe,{...R("root"),ref:r,component:y[u],variant:w,size:s,...E})});to.defaultLoaders=Rg;to.classes=gn;to.displayName="@mantine/core/Loader";var qo={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const zh={orientation:"horizontal"},qb=(t,{borderWidth:r})=>({group:{"--ai-border-width":Y(r)}}),Of=be((t,r)=>{const o=se("ActionIconGroup",zh,t),{className:s,style:l,classNames:u,styles:c,unstyled:d,orientation:m,vars:h,borderWidth:v,variant:g,mod:y,...w}=se("ActionIconGroup",zh,t),C=Ie({name:"ActionIconGroup",props:o,classes:qo,className:s,style:l,classNames:u,styles:c,unstyled:d,vars:h,varsResolver:qb,rootSelector:"group"});return S.jsx(fe,{...C("group"),ref:r,variant:g,mod:[{"data-orientation":m},y],role:"group",...w})});Of.classes=qo;Of.displayName="@mantine/core/ActionIconGroup";const Fh={},Zb=(t,{radius:r,color:o,gradient:s,variant:l,autoContrast:u,size:c})=>{const d=t.variantColorResolver({color:o||t.primaryColor,theme:t,gradient:s,variant:l||"filled",autoContrast:u});return{groupSection:{"--section-height":Xe(c,"section-height"),"--section-padding-x":Xe(c,"section-padding-x"),"--section-fz":jt(c),"--section-radius":r===void 0?void 0:$t(r),"--section-bg":o||l?d.background:void 0,"--section-color":d.color,"--section-bd":o||l?d.border:void 0}}},If=be((t,r)=>{const o=se("ActionIconGroupSection",Fh,t),{className:s,style:l,classNames:u,styles:c,unstyled:d,vars:m,variant:h,gradient:v,radius:g,autoContrast:y,...w}=se("ActionIconGroupSection",Fh,t),C=Ie({name:"ActionIconGroupSection",props:o,classes:qo,className:s,style:l,classNames:u,styles:c,unstyled:d,vars:m,varsResolver:Zb,rootSelector:"groupSection"});return S.jsx(fe,{...C("groupSection"),ref:r,variant:h,...w})});If.classes=qo;If.displayName="@mantine/core/ActionIconGroupSection";const Jb={},eC=(t,{size:r,radius:o,variant:s,gradient:l,color:u,autoContrast:c})=>{const d=t.variantColorResolver({color:u||t.primaryColor,theme:t,gradient:l,variant:s||"filled",autoContrast:c});return{root:{"--ai-size":Xe(r,"ai-size"),"--ai-radius":o===void 0?void 0:$t(o),"--ai-bg":u||s?d.background:void 0,"--ai-hover":u||s?d.hover:void 0,"--ai-hover-color":u||s?d.hoverColor:void 0,"--ai-color":d.color,"--ai-bd":u||s?d.border:void 0}}},jn=Vt((t,r)=>{const o=se("ActionIcon",Jb,t),{className:s,unstyled:l,variant:u,classNames:c,styles:d,style:m,loading:h,loaderProps:v,size:g,color:y,radius:w,__staticSelector:C,gradient:E,vars:R,children:N,disabled:j,"data-disabled":T,autoContrast:O,mod:A,...F}=o,H=Ie({name:["ActionIcon",C],props:o,className:s,style:m,classes:qo,classNames:c,styles:d,unstyled:l,vars:R,varsResolver:eC});return S.jsxs(Xn,{...H("root",{active:!j&&!h&&!T}),...F,unstyled:l,variant:u,size:g,disabled:j||h,ref:r,mod:[{loading:h,disabled:j||T},A],children:[S.jsx(Nr,{mounted:!!h,transition:"slide-down",duration:150,children:z=>S.jsx(fe,{component:"span",...H("loader",{style:z}),"aria-hidden":!0,children:S.jsx(to,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...v})})}),S.jsx(fe,{component:"span",mod:{loading:h},...H("icon"),children:N})]})});jn.classes=qo;jn.displayName="@mantine/core/ActionIcon";jn.Group=Of;jn.GroupSection=If;const kg=x.forwardRef(({size:t="var(--cb-icon-size, 70%)",style:r,...o},s)=>S.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...r,width:t,height:t},ref:s,...o,children:S.jsx("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})}));kg.displayName="@mantine/core/CloseIcon";var Ng={root:"m_86a44da5","root--subtle":"m_220c80f2"};const tC={variant:"subtle"},nC=(t,{size:r,radius:o,iconSize:s})=>({root:{"--cb-size":Xe(r,"cb-size"),"--cb-radius":o===void 0?void 0:$t(o),"--cb-icon-size":Y(s)}}),Zo=Vt((t,r)=>{const o=se("CloseButton",tC,t),{iconSize:s,children:l,vars:u,radius:c,className:d,classNames:m,style:h,styles:v,unstyled:g,"data-disabled":y,disabled:w,variant:C,icon:E,mod:R,__staticSelector:N,...j}=o,T=Ie({name:N||"CloseButton",props:o,className:d,style:h,classes:Ng,classNames:m,styles:v,unstyled:g,vars:u,varsResolver:nC});return S.jsxs(Xn,{ref:r,...j,unstyled:g,variant:C,disabled:w,mod:[{disabled:w||y},R],...T("root",{variant:C,active:!w&&!y}),children:[E||S.jsx(kg,{}),l]})});Zo.classes=Ng;Zo.displayName="@mantine/core/CloseButton";function rC(t){return x.Children.toArray(t).filter(Boolean)}var Pg={root:"m_4081bf90"};const oC={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},iC=(t,{grow:r,preventGrowOverflow:o,gap:s,align:l,justify:u,wrap:c},{childWidth:d})=>({root:{"--group-child-width":r&&o?d:void 0,"--group-gap":Uo(s),"--group-align":l,"--group-justify":u,"--group-wrap":c}}),Xt=be((t,r)=>{const o=se("Group",oC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,children:m,gap:h,align:v,justify:g,wrap:y,grow:w,preventGrowOverflow:C,vars:E,variant:R,__size:N,mod:j,...T}=o,O=rC(m),A=O.length,F=Uo(h??"md"),z={childWidth:`calc(${100/A}% - (${F} - ${F} / ${A}))`},Q=Ie({name:"Group",props:o,stylesCtx:z,className:l,style:u,classes:Pg,classNames:s,styles:c,unstyled:d,vars:E,varsResolver:iC});return S.jsx(fe,{...Q("root"),ref:r,variant:R,mod:[{grow:w},j],size:N,...T,children:O})});Xt.classes=Pg;Xt.displayName="@mantine/core/Group";const[sC,qn]=Rr("ModalBase component was not found in tree");function lC({opened:t,transitionDuration:r}){const[o,s]=x.useState(t),l=x.useRef(-1),c=Bl()?0:r;return x.useEffect(()=>(t?(s(!0),window.clearTimeout(l.current)):c===0?s(!1):l.current=window.setTimeout(()=>s(!1),c),()=>window.clearTimeout(l.current)),[t,c]),o}function aC({id:t,transitionProps:r,opened:o,trapFocus:s,closeOnEscape:l,onClose:u,returnFocus:c}){const d=kr(t),[m,h]=x.useState(!1),[v,g]=x.useState(!1),y=typeof(r==null?void 0:r.duration)=="number"?r==null?void 0:r.duration:200,w=lC({opened:o,transitionDuration:y});return Sv("keydown",C=>{var E;C.key==="Escape"&&l&&!C.isComposing&&o&&((E=C.target)==null?void 0:E.getAttribute("data-mantine-stop-propagation"))!=="true"&&u()},{capture:!0}),gv({opened:o,shouldReturnFocus:s&&c}),{_id:d,titleMounted:m,bodyMounted:v,shouldLockScroll:w,setTitleMounted:h,setBodyMounted:g}}const _g=x.forwardRef(({keepMounted:t,opened:r,onClose:o,id:s,transitionProps:l,onExitTransitionEnd:u,onEnterTransitionEnd:c,trapFocus:d,closeOnEscape:m,returnFocus:h,closeOnClickOutside:v,withinPortal:g,portalProps:y,lockScroll:w,children:C,zIndex:E,shadow:R,padding:N,__vars:j,unstyled:T,removeScrollProps:O,...A},F)=>{const{_id:H,titleMounted:z,bodyMounted:Q,shouldLockScroll:q,setTitleMounted:X,setBodyMounted:K}=aC({id:s,transitionProps:l,opened:r,trapFocus:d,closeOnEscape:m,onClose:o,returnFocus:h}),{key:Z,...te}=O||{};return S.jsx(eo,{...y,withinPortal:g,children:S.jsx(sC,{value:{opened:r,onClose:o,closeOnClickOutside:v,onExitTransitionEnd:u,onEnterTransitionEnd:c,transitionProps:{...l,keepMounted:t},getTitleId:()=>`${H}-title`,getBodyId:()=>`${H}-body`,titleMounted:z,bodyMounted:Q,setTitleMounted:X,setBodyMounted:K,trapFocus:d,closeOnEscape:m,zIndex:E,unstyled:T},children:S.jsx(zo,{enabled:q&&w,...te,children:S.jsx(fe,{ref:F,...A,__vars:{...j,"--mb-z-index":(E||Sn("modal")).toString(),"--mb-shadow":lf(R),"--mb-padding":Uo(N)},children:C})},Z)})})});_g.displayName="@mantine/core/ModalBase";function uC(){const t=qn();return x.useEffect(()=>(t.setBodyMounted(!0),()=>t.setBodyMounted(!1)),[]),t.getBodyId()}var Wo={title:"m_615af6c9",header:"m_b5489c3c",inner:"m_60c222c7",content:"m_fd1ab0aa",close:"m_606cb269",body:"m_5df29311"};const Tg=x.forwardRef(({className:t,...r},o)=>{const s=uC(),l=qn();return S.jsx(fe,{ref:o,...r,id:s,className:lt({[Wo.body]:!l.unstyled},t)})});Tg.displayName="@mantine/core/ModalBaseBody";const jg=x.forwardRef(({className:t,onClick:r,...o},s)=>{const l=qn();return S.jsx(Zo,{ref:s,...o,onClick:u=>{l.onClose(),r==null||r(u)},className:lt({[Wo.close]:!l.unstyled},t),unstyled:l.unstyled})});jg.displayName="@mantine/core/ModalBaseCloseButton";const $g=x.forwardRef(({transitionProps:t,className:r,innerProps:o,onKeyDown:s,style:l,...u},c)=>{const d=qn();return S.jsx(Nr,{mounted:d.opened,transition:"pop",...d.transitionProps,onExited:()=>{var m,h,v;(m=d.onExitTransitionEnd)==null||m.call(d),(v=(h=d.transitionProps)==null?void 0:h.onExited)==null||v.call(h)},onEntered:()=>{var m,h,v;(m=d.onEnterTransitionEnd)==null||m.call(d),(v=(h=d.transitionProps)==null?void 0:h.onEntered)==null||v.call(h)},...t,children:m=>S.jsx("div",{...o,className:lt({[Wo.inner]:!d.unstyled},o.className),children:S.jsx(ta,{active:d.opened&&d.trapFocus,innerRef:c,children:S.jsx(Qo,{...u,component:"section",role:"dialog",tabIndex:-1,"aria-modal":!0,"aria-describedby":d.bodyMounted?d.getBodyId():void 0,"aria-labelledby":d.titleMounted?d.getTitleId():void 0,style:[l,m],className:lt({[Wo.content]:!d.unstyled},r),unstyled:d.unstyled,children:u.children})})})})});$g.displayName="@mantine/core/ModalBaseContent";const Og=x.forwardRef(({className:t,...r},o)=>{const s=qn();return S.jsx(fe,{component:"header",ref:o,className:lt({[Wo.header]:!s.unstyled},t),...r})});Og.displayName="@mantine/core/ModalBaseHeader";const cC={duration:200,timingFunction:"ease",transition:"fade"};function fC(t){const r=qn();return{...cC,...r.transitionProps,...t}}const Ig=x.forwardRef(({onClick:t,transitionProps:r,style:o,visible:s,...l},u)=>{const c=qn(),d=fC(r);return S.jsx(Nr,{mounted:s!==void 0?s:c.opened,...d,transition:"fade",children:m=>S.jsx(ea,{ref:u,fixed:!0,style:[o,m],zIndex:c.zIndex,unstyled:c.unstyled,onClick:h=>{t==null||t(h),c.closeOnClickOutside&&c.onClose()},...l})})});Ig.displayName="@mantine/core/ModalBaseOverlay";function dC(){const t=qn();return x.useEffect(()=>(t.setTitleMounted(!0),()=>t.setTitleMounted(!1)),[]),t.getTitleId()}const Mg=x.forwardRef(({className:t,...r},o)=>{const s=dC(),l=qn();return S.jsx(fe,{component:"h2",ref:o,className:lt({[Wo.title]:!l.unstyled},t),...r,id:s})});Mg.displayName="@mantine/core/ModalBaseTitle";function pC({children:t}){return S.jsx(S.Fragment,{children:t})}const[mC,hC]=sf({size:"sm"}),vC={},Ag=be((t,r)=>{const o=se("InputClearButton",vC,t),{size:s,variant:l,vars:u,classNames:c,styles:d,...m}=o,h=hC(),{resolvedClassNames:v,resolvedStyles:g}=es({classNames:c,styles:d,props:o});return S.jsx(Zo,{variant:l||"transparent",ref:r,size:s||(h==null?void 0:h.size)||"sm",classNames:v,styles:g,__staticSelector:"InputClearButton",...m})});Ag.displayName="@mantine/core/InputClearButton";const[gC,na]=sf({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var ln={wrapper:"m_6c018570",input:"m_8fb7ebe7",section:"m_82577fc2",placeholder:"m_88bacfd0",root:"m_46b77525",label:"m_8fdc1311",required:"m_78a94662",error:"m_8f816625",description:"m_fe47ce59"};const Bh={},yC=(t,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${jt(r)} - ${Y(2)})`}}),ra=be((t,r)=>{const o=se("InputDescription",Bh,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,size:h,__staticSelector:v,__inheritStyles:g=!0,variant:y,...w}=se("InputDescription",Bh,o),C=na(),E=Ie({name:["InputWrapper",v],props:o,classes:ln,className:l,style:u,classNames:s,styles:c,unstyled:d,rootSelector:"description",vars:m,varsResolver:yC}),R=g&&(C==null?void 0:C.getStyles)||E;return S.jsx(fe,{component:"p",ref:r,variant:y,size:h,...R("description",C!=null&&C.getStyles?{className:l,style:u}:void 0),...w})});ra.classes=ln;ra.displayName="@mantine/core/InputDescription";const wC={},xC=(t,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${jt(r)} - ${Y(2)})`}}),oa=be((t,r)=>{const o=se("InputError",wC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,size:h,__staticSelector:v,__inheritStyles:g=!0,variant:y,...w}=o,C=Ie({name:["InputWrapper",v],props:o,classes:ln,className:l,style:u,classNames:s,styles:c,unstyled:d,rootSelector:"error",vars:m,varsResolver:xC}),E=na(),R=g&&(E==null?void 0:E.getStyles)||C;return S.jsx(fe,{component:"p",ref:r,variant:y,size:h,...R("error",E!=null&&E.getStyles?{className:l,style:u}:void 0),...w})});oa.classes=ln;oa.displayName="@mantine/core/InputError";const Vh={labelElement:"label"},SC=(t,{size:r})=>({label:{"--input-label-size":jt(r),"--input-asterisk-color":void 0}}),ia=be((t,r)=>{const o=se("InputLabel",Vh,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,labelElement:h,size:v,required:g,htmlFor:y,onMouseDown:w,children:C,__staticSelector:E,variant:R,mod:N,...j}=se("InputLabel",Vh,o),T=Ie({name:["InputWrapper",E],props:o,classes:ln,className:l,style:u,classNames:s,styles:c,unstyled:d,rootSelector:"label",vars:m,varsResolver:SC}),O=na(),A=(O==null?void 0:O.getStyles)||T;return S.jsxs(fe,{...A("label",O!=null&&O.getStyles?{className:l,style:u}:void 0),component:h,variant:R,size:v,ref:r,htmlFor:h==="label"?y:void 0,mod:[{required:g},N],onMouseDown:F=>{w==null||w(F),!F.defaultPrevented&&F.detail>1&&F.preventDefault()},...j,children:[C,g&&S.jsx("span",{...A("required"),"aria-hidden":!0,children:" *"})]})});ia.classes=ln;ia.displayName="@mantine/core/InputLabel";const Wh={},Mf=be((t,r)=>{const o=se("InputPlaceholder",Wh,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,__staticSelector:h,variant:v,error:g,mod:y,...w}=se("InputPlaceholder",Wh,o),C=Ie({name:["InputPlaceholder",h],props:o,classes:ln,className:l,style:u,classNames:s,styles:c,unstyled:d,rootSelector:"placeholder"});return S.jsx(fe,{...C("placeholder"),mod:[{error:!!g},y],component:"span",variant:v,ref:r,...w})});Mf.classes=ln;Mf.displayName="@mantine/core/InputPlaceholder";function bC(t,{hasDescription:r,hasError:o}){const s=t.findIndex(m=>m==="input"),l=t.slice(0,s),u=t.slice(s+1),c=r&&l.includes("description")||o&&l.includes("error");return{offsetBottom:r&&u.includes("description")||o&&u.includes("error"),offsetTop:c}}const CC={labelElement:"label",inputContainer:t=>t,inputWrapperOrder:["label","description","input","error"]},EC=(t,{size:r})=>({label:{"--input-label-size":jt(r),"--input-asterisk-color":void 0},error:{"--input-error-size":r===void 0?void 0:`calc(${jt(r)} - ${Y(2)})`},description:{"--input-description-size":r===void 0?void 0:`calc(${jt(r)} - ${Y(2)})`}}),Af=be((t,r)=>{const o=se("InputWrapper",CC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,size:h,variant:v,__staticSelector:g,inputContainer:y,inputWrapperOrder:w,label:C,error:E,description:R,labelProps:N,descriptionProps:j,errorProps:T,labelElement:O,children:A,withAsterisk:F,id:H,required:z,__stylesApiProps:Q,mod:q,...X}=o,K=Ie({name:["InputWrapper",g],props:Q||o,classes:ln,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:EC}),Z={size:h,variant:v,__staticSelector:g},te=kr(H),J=typeof F=="boolean"?F:z,B=(T==null?void 0:T.id)||`${te}-error`,V=(j==null?void 0:j.id)||`${te}-description`,_=te,M=!!E&&typeof E!="boolean",U=!!R,k=`${M?B:""} ${U?V:""}`,D=k.trim().length>0?k.trim():void 0,le=(N==null?void 0:N.id)||`${te}-label`,ve=C&&S.jsx(ia,{labelElement:O,id:le,htmlFor:_,required:J,...Z,...N,children:C},"label"),ie=U&&S.jsx(ra,{...j,...Z,size:(j==null?void 0:j.size)||Z.size,id:(j==null?void 0:j.id)||V,children:R},"description"),ce=S.jsx(x.Fragment,{children:y(A)},"input"),Se=M&&x.createElement(oa,{...T,...Z,size:(T==null?void 0:T.size)||Z.size,key:"error",id:(T==null?void 0:T.id)||B},E),ye=w.map(Re=>{switch(Re){case"label":return ve;case"input":return ce;case"description":return ie;case"error":return Se;default:return null}});return S.jsx(gC,{value:{getStyles:K,describedBy:D,inputId:_,labelId:le,...bC(w,{hasDescription:U,hasError:M})},children:S.jsx(fe,{ref:r,variant:v,size:h,mod:[{error:!!E},q],...K("root"),...X,children:ye})})});Af.classes=ln;Af.displayName="@mantine/core/InputWrapper";const RC={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0},kC=(t,r,o)=>({wrapper:{"--input-margin-top":o.offsetTop?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-margin-bottom":o.offsetBottom?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-height":Xe(r.size,"input-height"),"--input-fz":jt(r.size),"--input-radius":r.radius===void 0?void 0:$t(r.radius),"--input-left-section-width":r.leftSectionWidth!==void 0?Y(r.leftSectionWidth):void 0,"--input-right-section-width":r.rightSectionWidth!==void 0?Y(r.rightSectionWidth):void 0,"--input-padding-y":r.multiline?Xe(r.size,"input-padding-y"):void 0,"--input-left-section-pointer-events":r.leftSectionPointerEvents,"--input-right-section-pointer-events":r.rightSectionPointerEvents}}),Nt=Vt((t,r)=>{const o=se("Input",RC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,required:m,__staticSelector:h,__stylesApiProps:v,size:g,wrapperProps:y,error:w,disabled:C,leftSection:E,leftSectionProps:R,leftSectionWidth:N,rightSection:j,rightSectionProps:T,rightSectionWidth:O,rightSectionPointerEvents:A,leftSectionPointerEvents:F,variant:H,vars:z,pointer:Q,multiline:q,radius:X,id:K,withAria:Z,withErrorStyles:te,mod:J,inputSize:B,__clearSection:V,__clearable:_,__defaultRightSection:M,...U}=o,{styleProps:k,rest:D}=Hl(U),le=na(),ve={offsetBottom:le==null?void 0:le.offsetBottom,offsetTop:le==null?void 0:le.offsetTop},ie=Ie({name:["Input",h],props:v||o,classes:ln,className:l,style:u,classNames:s,styles:c,unstyled:d,stylesCtx:ve,rootSelector:"wrapper",vars:z,varsResolver:kC}),ce=Z?{required:m,disabled:C,"aria-invalid":!!w,"aria-describedby":le==null?void 0:le.describedBy,id:(le==null?void 0:le.inputId)||K}:{},Se=j||_&&V||M;return S.jsx(mC,{value:{size:g||"sm"},children:S.jsxs(fe,{...ie("wrapper"),...k,...y,mod:[{error:!!w&&te,pointer:Q,disabled:C,multiline:q,"data-with-right-section":!!Se,"data-with-left-section":!!E},J],variant:H,size:g,children:[E&&S.jsx("div",{...R,"data-position":"left",...ie("section",{className:R==null?void 0:R.className,style:R==null?void 0:R.style}),children:E}),S.jsx(fe,{component:"input",...D,...ce,ref:r,required:m,mod:{disabled:C,error:!!w&&te},variant:H,__size:B,...ie("input")}),Se&&S.jsx("div",{...T,"data-position":"right",...ie("section",{className:T==null?void 0:T.className,style:T==null?void 0:T.style}),children:Se})]})})});Nt.classes=ln;Nt.Wrapper=Af;Nt.Label=ia;Nt.Error=oa;Nt.Description=ra;Nt.Placeholder=Mf;Nt.ClearButton=Ag;Nt.displayName="@mantine/core/Input";function NC(t,r,o){const s=se(t,r,o),{label:l,description:u,error:c,required:d,classNames:m,styles:h,className:v,unstyled:g,__staticSelector:y,__stylesApiProps:w,errorProps:C,labelProps:E,descriptionProps:R,wrapperProps:N,id:j,size:T,style:O,inputContainer:A,inputWrapperOrder:F,withAsterisk:H,variant:z,vars:Q,mod:q,...X}=s,{styleProps:K,rest:Z}=Hl(X),te={label:l,description:u,error:c,required:d,classNames:m,className:v,__staticSelector:y,__stylesApiProps:w||s,errorProps:C,labelProps:E,descriptionProps:R,unstyled:g,styles:h,size:T,style:O,inputContainer:A,inputWrapperOrder:F,withAsterisk:H,variant:z,id:j,mod:q,...N};return{...Z,classNames:m,styles:h,unstyled:g,wrapperProps:{...te,...K},inputProps:{required:d,classNames:m,styles:h,unstyled:g,size:T,__staticSelector:y,__stylesApiProps:w||s,error:c,variant:z,id:j}}}const PC={__staticSelector:"InputBase",withAria:!0},Zn=Vt((t,r)=>{const{inputProps:o,wrapperProps:s,...l}=NC("InputBase",PC,t);return S.jsx(Nt.Wrapper,{...s,children:S.jsx(Nt,{...o,...l,ref:r})})});Zn.classes={...Nt.classes,...Nt.Wrapper.classes};Zn.displayName="@mantine/core/InputBase";var Dg={root:"m_66836ed3",wrapper:"m_a5d60502",body:"m_667c2793",title:"m_6a03f287",label:"m_698f4f23",icon:"m_667f2a6a",message:"m_7fa78076",closeButton:"m_87f54839"};const _C={},TC=(t,{radius:r,color:o,variant:s,autoContrast:l})=>{const u=t.variantColorResolver({color:o||t.primaryColor,theme:t,variant:s||"light",autoContrast:l});return{root:{"--alert-radius":r===void 0?void 0:$t(r),"--alert-bg":o||s?u.background:void 0,"--alert-color":u.color,"--alert-bd":o||s?u.border:void 0}}},sa=be((t,r)=>{const o=se("Alert",_C,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,radius:h,color:v,title:g,children:y,id:w,icon:C,withCloseButton:E,onClose:R,closeButtonLabel:N,variant:j,autoContrast:T,...O}=o,A=Ie({name:"Alert",classes:Dg,props:o,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:TC}),F=kr(w),H=g&&`${F}-title`||void 0,z=`${F}-body`;return S.jsx(fe,{id:F,...A("root",{variant:j}),variant:j,ref:r,...O,role:"alert","aria-describedby":z,"aria-labelledby":H,children:S.jsxs("div",{...A("wrapper"),children:[C&&S.jsx("div",{...A("icon"),children:C}),S.jsxs("div",{...A("body"),children:[g&&S.jsx("div",{...A("title"),"data-with-close-button":E||void 0,children:S.jsx("span",{id:H,...A("label"),children:g})}),y&&S.jsx("div",{id:z,...A("message"),"data-variant":j,children:y})]}),E&&S.jsx(Zo,{...A("closeButton"),onClick:R,variant:"transparent",size:16,iconSize:16,"aria-label":N,unstyled:d})]})})});sa.classes=Dg;sa.displayName="@mantine/core/Alert";var Lg={root:"m_b6d8b162"};function jC(t){if(t==="start")return"start";if(t==="end"||t)return"end"}const $C={inherit:!1},OC=(t,{variant:r,lineClamp:o,gradient:s,size:l,color:u})=>({root:{"--text-fz":jt(l),"--text-lh":m1(l),"--text-gradient":r==="gradient"?Dc(s,t):void 0,"--text-line-clamp":typeof o=="number"?o.toString():void 0,"--text-color":u?Un(u,t):void 0}}),kt=Vt((t,r)=>{const o=se("Text",$C,t),{lineClamp:s,truncate:l,inline:u,inherit:c,gradient:d,span:m,__staticSelector:h,vars:v,className:g,style:y,classNames:w,styles:C,unstyled:E,variant:R,mod:N,size:j,...T}=o,O=Ie({name:["Text",h],props:o,classes:Lg,className:g,style:y,classNames:w,styles:C,unstyled:E,vars:v,varsResolver:OC});return S.jsx(fe,{...O("root",{focusable:!0}),ref:r,component:m?"span":"p",variant:R,mod:[{"data-truncate":jC(l),"data-line-clamp":typeof s=="number","data-inline":u,"data-inherit":c},N],size:j,...T})});kt.classes=Lg;kt.displayName="@mantine/core/Text";const[IC,Jo]=Rr("AppShell was not found in tree");var _r={root:"m_89ab340",navbar:"m_45252eee",aside:"m_9cdde9a",header:"m_3b16f56b",main:"m_8983817",footer:"m_3840c879",section:"m_6dcfc7c7"};const MC={},Df=be((t,r)=>{const o=se("AppShellAside",MC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,withBorder:h,zIndex:v,mod:g,...y}=o,w=Jo();return w.disabled?null:S.jsx(fe,{component:"aside",ref:r,mod:[{"with-border":h??w.withBorder},g],...w.getStyles("aside",{className:l,classNames:s,styles:c,style:u}),...y,__vars:{"--app-shell-aside-z-index":`calc(${v??w.zIndex} + 1)`}})});Df.classes=_r;Df.displayName="@mantine/core/AppShellAside";const AC={},Lf=be((t,r)=>{var C;const o=se("AppShellFooter",AC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,withBorder:h,zIndex:v,mod:g,...y}=o,w=Jo();return w.disabled?null:S.jsx(fe,{component:"footer",ref:r,mod:[{"with-border":h??w.withBorder},g],...w.getStyles("footer",{className:lt({[zo.classNames.zeroRight]:w.offsetScrollbars},l),classNames:s,styles:c,style:u}),...y,__vars:{"--app-shell-footer-z-index":(C=v??w.zIndex)==null?void 0:C.toString()}})});Lf.classes=_r;Lf.displayName="@mantine/core/AppShellFooter";const DC={},zf=be((t,r)=>{var C;const o=se("AppShellHeader",DC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,withBorder:h,zIndex:v,mod:g,...y}=o,w=Jo();return w.disabled?null:S.jsx(fe,{component:"header",ref:r,mod:[{"with-border":h??w.withBorder},g],...w.getStyles("header",{className:lt({[zo.classNames.zeroRight]:w.offsetScrollbars},l),classNames:s,styles:c,style:u}),...y,__vars:{"--app-shell-header-z-index":(C=v??w.zIndex)==null?void 0:C.toString()}})});zf.classes=_r;zf.displayName="@mantine/core/AppShellHeader";const LC={},Ff=be((t,r)=>{const o=se("AppShellMain",LC,t),{classNames:s,className:l,style:u,styles:c,vars:d,...m}=o,h=Jo();return S.jsx(fe,{component:"main",ref:r,...h.getStyles("main",{className:l,style:u,classNames:s,styles:c}),...m})});Ff.classes=_r;Ff.displayName="@mantine/core/AppShellMain";function ns(t){return typeof t=="object"?t.base:t}function rs(t){const r=typeof t=="object"&&t!==null&&typeof t.base<"u"&&Object.keys(t).length===1;return typeof t=="number"||typeof t=="string"||r}function os(t){return!(typeof t!="object"||t===null||Object.keys(t).length===1&&"base"in t)}function zC({baseStyles:t,minMediaStyles:r,maxMediaStyles:o,aside:s,theme:l}){var m,h,v;const u=s==null?void 0:s.width,c="translateX(var(--app-shell-aside-width))",d="translateX(calc(var(--app-shell-aside-width) * -1))";if(s!=null&&s.breakpoint&&!((m=s==null?void 0:s.collapsed)!=null&&m.mobile)&&(o[s==null?void 0:s.breakpoint]=o[s==null?void 0:s.breakpoint]||{},o[s==null?void 0:s.breakpoint]["--app-shell-aside-width"]="100%",o[s==null?void 0:s.breakpoint]["--app-shell-aside-offset"]="0px"),rs(u)){const g=Y(ns(u));t["--app-shell-aside-width"]=g,t["--app-shell-aside-offset"]=g}if(os(u)&&(typeof u.base<"u"&&(t["--app-shell-aside-width"]=Y(u.base),t["--app-shell-aside-offset"]=Y(u.base)),xt(u).forEach(g=>{g!=="base"&&(r[g]=r[g]||{},r[g]["--app-shell-aside-width"]=Y(u[g]),r[g]["--app-shell-aside-offset"]=Y(u[g]))})),(h=s==null?void 0:s.collapsed)!=null&&h.desktop){const g=s.breakpoint;r[g]=r[g]||{},r[g]["--app-shell-aside-transform"]=c,r[g]["--app-shell-aside-transform-rtl"]=d,r[g]["--app-shell-aside-offset"]="0px !important"}if((v=s==null?void 0:s.collapsed)!=null&&v.mobile){const g=af(s.breakpoint,l.breakpoints)-.1;o[g]=o[g]||{},o[g]["--app-shell-aside-width"]="100%",o[g]["--app-shell-aside-offset"]="0px",o[g]["--app-shell-aside-transform"]=c,o[g]["--app-shell-aside-transform-rtl"]=d}}function FC({baseStyles:t,minMediaStyles:r,footer:o}){const s=o==null?void 0:o.height,l="translateY(var(--app-shell-footer-height))",u=(o==null?void 0:o.offset)??!0;if(rs(s)){const c=Y(ns(s));t["--app-shell-footer-height"]=c,u&&(t["--app-shell-footer-offset"]=c)}os(s)&&(typeof s.base<"u"&&(t["--app-shell-footer-height"]=Y(s.base),u&&(t["--app-shell-footer-offset"]=Y(s.base))),xt(s).forEach(c=>{c!=="base"&&(r[c]=r[c]||{},r[c]["--app-shell-footer-height"]=Y(s[c]),u&&(r[c]["--app-shell-footer-offset"]=Y(s[c])))})),o!=null&&o.collapsed&&(t["--app-shell-footer-transform"]=l,t["--app-shell-footer-offset"]="0px !important")}function BC({baseStyles:t,minMediaStyles:r,header:o}){const s=o==null?void 0:o.height,l="translateY(calc(var(--app-shell-header-height) * -1))",u=(o==null?void 0:o.offset)??!0;if(rs(s)){const c=Y(ns(s));t["--app-shell-header-height"]=c,u&&(t["--app-shell-header-offset"]=c)}os(s)&&(typeof s.base<"u"&&(t["--app-shell-header-height"]=Y(s.base),u&&(t["--app-shell-header-offset"]=Y(s.base))),xt(s).forEach(c=>{c!=="base"&&(r[c]=r[c]||{},r[c]["--app-shell-header-height"]=Y(s[c]),u&&(r[c]["--app-shell-header-offset"]=Y(s[c])))})),o!=null&&o.collapsed&&(t["--app-shell-header-transform"]=l,t["--app-shell-header-offset"]="0px !important")}function VC({baseStyles:t,minMediaStyles:r,maxMediaStyles:o,navbar:s,theme:l}){var m,h,v;const u=s==null?void 0:s.width,c="translateX(calc(var(--app-shell-navbar-width) * -1))",d="translateX(var(--app-shell-navbar-width))";if(s!=null&&s.breakpoint&&!((m=s==null?void 0:s.collapsed)!=null&&m.mobile)&&(o[s==null?void 0:s.breakpoint]=o[s==null?void 0:s.breakpoint]||{},o[s==null?void 0:s.breakpoint]["--app-shell-navbar-width"]="100%",o[s==null?void 0:s.breakpoint]["--app-shell-navbar-offset"]="0px"),rs(u)){const g=Y(ns(u));t["--app-shell-navbar-width"]=g,t["--app-shell-navbar-offset"]=g}if(os(u)&&(typeof u.base<"u"&&(t["--app-shell-navbar-width"]=Y(u.base),t["--app-shell-navbar-offset"]=Y(u.base)),xt(u).forEach(g=>{g!=="base"&&(r[g]=r[g]||{},r[g]["--app-shell-navbar-width"]=Y(u[g]),r[g]["--app-shell-navbar-offset"]=Y(u[g]))})),(h=s==null?void 0:s.collapsed)!=null&&h.desktop){const g=s.breakpoint;r[g]=r[g]||{},r[g]["--app-shell-navbar-transform"]=c,r[g]["--app-shell-navbar-transform-rtl"]=d,r[g]["--app-shell-navbar-offset"]="0px !important"}if((v=s==null?void 0:s.collapsed)!=null&&v.mobile){const g=af(s.breakpoint,l.breakpoints)-.1;o[g]=o[g]||{},o[g]["--app-shell-navbar-width"]="100%",o[g]["--app-shell-navbar-offset"]="0px",o[g]["--app-shell-navbar-transform"]=c,o[g]["--app-shell-navbar-transform-rtl"]=d}}function Tc(t){return Number(t)===0?"0px":Uo(t)}function WC({padding:t,baseStyles:r,minMediaStyles:o}){rs(t)&&(r["--app-shell-padding"]=Tc(ns(t))),os(t)&&(t.base&&(r["--app-shell-padding"]=Tc(t.base)),xt(t).forEach(s=>{s!=="base"&&(o[s]=o[s]||{},o[s]["--app-shell-padding"]=Tc(t[s]))}))}function HC({navbar:t,header:r,footer:o,aside:s,padding:l,theme:u}){const c={},d={},m={};VC({baseStyles:m,minMediaStyles:c,maxMediaStyles:d,navbar:t,theme:u}),zC({baseStyles:m,minMediaStyles:c,maxMediaStyles:d,aside:s,theme:u}),BC({baseStyles:m,minMediaStyles:c,header:r}),FC({baseStyles:m,minMediaStyles:c,footer:o}),WC({baseStyles:m,minMediaStyles:c,padding:l});const h=ah(xt(c),u.breakpoints).map(y=>({query:`(min-width: ${Pl(y.px)})`,styles:c[y.value]})),v=ah(xt(d),u.breakpoints).map(y=>({query:`(max-width: ${Pl(y.px)})`,styles:d[y.value]})),g=[...h,...v];return{baseStyles:m,media:g}}function UC({navbar:t,header:r,aside:o,footer:s,padding:l}){const u=rn(),c=Qn(),{media:d,baseStyles:m}=HC({navbar:t,header:r,footer:s,aside:o,padding:l,theme:u});return S.jsx(Tv,{media:d,styles:m,selector:c.cssVariablesSelector})}const GC={},Bf=be((t,r)=>{const o=se("AppShellNavbar",GC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,withBorder:h,zIndex:v,mod:g,...y}=o,w=Jo();return w.disabled?null:S.jsx(fe,{component:"nav",ref:r,mod:[{"with-border":h??w.withBorder},g],...w.getStyles("navbar",{className:l,classNames:s,styles:c,style:u}),...y,__vars:{"--app-shell-navbar-z-index":`calc(${v??w.zIndex} + 1)`}})});Bf.classes=_r;Bf.displayName="@mantine/core/AppShellNavbar";const YC={},Vf=Vt((t,r)=>{const o=se("AppShellSection",YC,t),{classNames:s,className:l,style:u,styles:c,vars:d,grow:m,mod:h,...v}=o,g=Jo();return S.jsx(fe,{ref:r,mod:[{grow:m},h],...g.getStyles("section",{className:l,style:u,classNames:s,styles:c}),...v})});Vf.classes=_r;Vf.displayName="@mantine/core/AppShellSection";function XC({transitionDuration:t,disabled:r}){const[o,s]=x.useState(!0),l=x.useRef(-1),u=x.useRef(-1);return Sv("resize",()=>{s(!0),clearTimeout(l.current),l.current=window.setTimeout(()=>x.startTransition(()=>{s(!1)}),200)}),Go(()=>{s(!0),clearTimeout(u.current),u.current=window.setTimeout(()=>x.startTransition(()=>{s(!1)}),t||0)},[r,t]),o}const KC={withBorder:!0,padding:0,transitionDuration:200,transitionTimingFunction:"ease",zIndex:Sn("app")},QC=(t,{transitionDuration:r,transitionTimingFunction:o})=>({root:{"--app-shell-transition-duration":`${r}ms`,"--app-shell-transition-timing-function":o}}),yn=be((t,r)=>{const o=se("AppShell",KC,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,navbar:h,withBorder:v,padding:g,transitionDuration:y,transitionTimingFunction:w,header:C,zIndex:E,layout:R,disabled:N,aside:j,footer:T,offsetScrollbars:O=R!=="alt",mod:A,...F}=o,H=Ie({name:"AppShell",classes:_r,props:o,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:QC}),z=XC({disabled:N,transitionDuration:y});return S.jsxs(IC,{value:{getStyles:H,withBorder:v,zIndex:E,disabled:N,offsetScrollbars:O},children:[S.jsx(UC,{navbar:h,header:C,aside:j,footer:T,padding:g}),S.jsx(fe,{ref:r,...H("root"),mod:[{resizing:z,layout:R,disabled:N},A],...F})]})});yn.classes=_r;yn.displayName="@mantine/core/AppShell";yn.Navbar=Bf;yn.Header=zf;yn.Main=Ff;yn.Aside=Df;yn.Footer=Lf;yn.Section=Vf;function zg(t){return typeof t=="string"?{value:t,label:t}:"value"in t&&!("label"in t)?{value:t.value,label:t.value,disabled:t.disabled}:typeof t=="number"?{value:t.toString(),label:t.toString()}:"group"in t?{group:t.group,items:t.items.map(r=>zg(r))}:t}function qC(t){return t?t.map(r=>zg(r)):[]}function Fg(t){return t.reduce((r,o)=>"group"in o?{...r,...Fg(o.items)}:(r[o.value]=o,r),{})}var Bt={dropdown:"m_88b62a41",search:"m_985517d8",options:"m_b2821a6e",option:"m_92253aa5",empty:"m_2530cd1d",header:"m_858f94bd",footer:"m_82b967cb",group:"m_254f3e4f",groupLabel:"m_2bb2e9e5",chevron:"m_2943220b",optionsDropdownOption:"m_390b5f4",optionsDropdownCheckIcon:"m_8ee53fc2"};const ZC={error:null},JC=(t,{size:r,color:o})=>({chevron:{"--combobox-chevron-size":Xe(r,"combobox-chevron-size"),"--combobox-chevron-color":o?Un(o,t):void 0}}),Wf=be((t,r)=>{const o=se("ComboboxChevron",ZC,t),{size:s,error:l,style:u,className:c,classNames:d,styles:m,unstyled:h,vars:v,mod:g,...y}=o,w=Ie({name:"ComboboxChevron",classes:Bt,props:o,style:u,className:c,classNames:d,styles:m,unstyled:h,vars:v,varsResolver:JC,rootSelector:"chevron"});return S.jsx(fe,{component:"svg",...y,...w("chevron"),size:s,viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",mod:["combobox-chevron",{error:l},g],ref:r,children:S.jsx("path",{d:"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})});Wf.classes=Bt;Wf.displayName="@mantine/core/ComboboxChevron";const[eE,an]=Rr("Combobox component was not found in tree"),Bg=x.forwardRef(({size:t,onMouseDown:r,onClick:o,onClear:s,...l},u)=>S.jsx(Nt.ClearButton,{ref:u,tabIndex:-1,"aria-hidden":!0,...l,onMouseDown:c=>{c.preventDefault(),r==null||r(c)},onClick:c=>{s(),o==null||o(c)}}));Bg.displayName="@mantine/core/ComboboxClearButton";const tE={},Hf=be((t,r)=>{const{classNames:o,styles:s,className:l,style:u,hidden:c,...d}=se("ComboboxDropdown",tE,t),m=an();return S.jsx(Pr.Dropdown,{...d,ref:r,role:"presentation","data-hidden":c||void 0,...m.getStyles("dropdown",{className:l,style:u,classNames:o,styles:s})})});Hf.classes=Bt;Hf.displayName="@mantine/core/ComboboxDropdown";const nE={refProp:"ref"},Vg=be((t,r)=>{const{children:o,refProp:s}=se("ComboboxDropdownTarget",nE,t);if(an(),!Jr(o))throw new Error("Combobox.DropdownTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return S.jsx(Pr.Target,{ref:r,refProp:s,children:o})});Vg.displayName="@mantine/core/ComboboxDropdownTarget";const rE={},Uf=be((t,r)=>{const{classNames:o,className:s,style:l,styles:u,vars:c,...d}=se("ComboboxEmpty",rE,t),m=an();return S.jsx(fe,{ref:r,...m.getStyles("empty",{className:s,classNames:o,styles:u,style:l}),...d})});Uf.classes=Bt;Uf.displayName="@mantine/core/ComboboxEmpty";function Gf({onKeyDown:t,withKeyboardNavigation:r,withAriaAttributes:o,withExpandedAttribute:s,targetType:l,autoComplete:u}){const c=an(),[d,m]=x.useState(null),h=g=>{if(t==null||t(g),!c.readOnly&&r){if(g.nativeEvent.isComposing)return;if(g.nativeEvent.code==="ArrowDown"&&(g.preventDefault(),c.store.dropdownOpened?m(c.store.selectNextOption()):(c.store.openDropdown("keyboard"),m(c.store.selectActiveOption()),c.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),g.nativeEvent.code==="ArrowUp"&&(g.preventDefault(),c.store.dropdownOpened?m(c.store.selectPreviousOption()):(c.store.openDropdown("keyboard"),m(c.store.selectActiveOption()),c.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),g.nativeEvent.code==="Enter"||g.nativeEvent.code==="NumpadEnter"){if(g.nativeEvent.keyCode===229)return;const y=c.store.getSelectedOptionIndex();c.store.dropdownOpened&&y!==-1?(g.preventDefault(),c.store.clickSelectedOption()):l==="button"&&(g.preventDefault(),c.store.openDropdown("keyboard"))}g.key==="Escape"&&c.store.closeDropdown("keyboard"),g.nativeEvent.code==="Space"&&l==="button"&&(g.preventDefault(),c.store.toggleDropdown("keyboard"))}};return{...o?{"aria-haspopup":"listbox","aria-expanded":s&&!!(c.store.listId&&c.store.dropdownOpened)||void 0,"aria-controls":c.store.dropdownOpened?c.store.listId:void 0,"aria-activedescendant":c.store.dropdownOpened&&d||void 0,autoComplete:u,"data-expanded":c.store.dropdownOpened||void 0,"data-mantine-stop-propagation":c.store.dropdownOpened||void 0}:{},onKeyDown:h}}const oE={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},Wg=be((t,r)=>{const{children:o,refProp:s,withKeyboardNavigation:l,withAriaAttributes:u,withExpandedAttribute:c,targetType:d,autoComplete:m,...h}=se("ComboboxEventsTarget",oE,t);if(!Jr(o))throw new Error("Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const v=an(),g=Gf({targetType:d,withAriaAttributes:u,withKeyboardNavigation:l,withExpandedAttribute:c,onKeyDown:o.props.onKeyDown,autoComplete:m});return x.cloneElement(o,{...g,...h,[s]:Ot(r,v.store.targetRef,Vl(o))})});Wg.displayName="@mantine/core/ComboboxEventsTarget";const iE={},Yf=be((t,r)=>{const{classNames:o,className:s,style:l,styles:u,vars:c,...d}=se("ComboboxFooter",iE,t),m=an();return S.jsx(fe,{ref:r,...m.getStyles("footer",{className:s,classNames:o,style:l,styles:u}),...d,onMouseDown:h=>{h.preventDefault()}})});Yf.classes=Bt;Yf.displayName="@mantine/core/ComboboxFooter";const sE={},Xf=be((t,r)=>{const{classNames:o,className:s,style:l,styles:u,vars:c,children:d,label:m,...h}=se("ComboboxGroup",sE,t),v=an();return S.jsxs(fe,{ref:r,...v.getStyles("group",{className:s,classNames:o,style:l,styles:u}),...h,children:[m&&S.jsx("div",{...v.getStyles("groupLabel",{classNames:o,styles:u}),children:m}),d]})});Xf.classes=Bt;Xf.displayName="@mantine/core/ComboboxGroup";const lE={},Kf=be((t,r)=>{const{classNames:o,className:s,style:l,styles:u,vars:c,...d}=se("ComboboxHeader",lE,t),m=an();return S.jsx(fe,{ref:r,...m.getStyles("header",{className:s,classNames:o,style:l,styles:u}),...d,onMouseDown:h=>{h.preventDefault()}})});Kf.classes=Bt;Kf.displayName="@mantine/core/ComboboxHeader";function Hg({value:t,valuesDivider:r=",",...o}){return S.jsx("input",{type:"hidden",value:Array.isArray(t)?t.join(r):t||"",...o})}Hg.displayName="@mantine/core/ComboboxHiddenInput";const aE={},Qf=be((t,r)=>{const o=se("ComboboxOption",aE,t),{classNames:s,className:l,style:u,styles:c,vars:d,onClick:m,id:h,active:v,onMouseDown:g,onMouseOver:y,disabled:w,selected:C,mod:E,...R}=o,N=an(),j=x.useId(),T=h||j;return S.jsx(fe,{...N.getStyles("option",{className:l,classNames:s,styles:c,style:u}),...R,ref:r,id:T,mod:["combobox-option",{"combobox-active":v,"combobox-disabled":w,"combobox-selected":C},E],role:"option",onClick:O=>{var A;w?O.preventDefault():((A=N.onOptionSubmit)==null||A.call(N,o.value,o),m==null||m(O))},onMouseDown:O=>{O.preventDefault(),g==null||g(O)},onMouseOver:O=>{N.resetSelectionOnOptionHover&&N.store.resetSelectedOption(),y==null||y(O)}})});Qf.classes=Bt;Qf.displayName="@mantine/core/ComboboxOption";const uE={},qf=be((t,r)=>{const o=se("ComboboxOptions",uE,t),{classNames:s,className:l,style:u,styles:c,id:d,onMouseDown:m,labelledBy:h,...v}=o,g=an(),y=kr(d);return x.useEffect(()=>{g.store.setListId(y)},[y]),S.jsx(fe,{ref:r,...g.getStyles("options",{className:l,style:u,classNames:s,styles:c}),...v,id:y,role:"listbox","aria-labelledby":h,onMouseDown:w=>{w.preventDefault(),m==null||m(w)}})});qf.classes=Bt;qf.displayName="@mantine/core/ComboboxOptions";const cE={withAriaAttributes:!0,withKeyboardNavigation:!0},Zf=be((t,r)=>{const o=se("ComboboxSearch",cE,t),{classNames:s,styles:l,unstyled:u,vars:c,withAriaAttributes:d,onKeyDown:m,withKeyboardNavigation:h,size:v,...g}=o,y=an(),w=y.getStyles("search"),C=Gf({targetType:"input",withAriaAttributes:d,withKeyboardNavigation:h,withExpandedAttribute:!1,onKeyDown:m,autoComplete:"off"});return S.jsx(Nt,{ref:Ot(r,y.store.searchRef),classNames:[{input:w.className},s],styles:[{input:w.style},l],size:v||y.size,...C,...g,__staticSelector:"Combobox"})});Zf.classes=Bt;Zf.displayName="@mantine/core/ComboboxSearch";const fE={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},Ug=be((t,r)=>{const{children:o,refProp:s,withKeyboardNavigation:l,withAriaAttributes:u,withExpandedAttribute:c,targetType:d,autoComplete:m,...h}=se("ComboboxTarget",fE,t);if(!Jr(o))throw new Error("Combobox.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const v=an(),g=Gf({targetType:d,withAriaAttributes:u,withKeyboardNavigation:l,withExpandedAttribute:c,onKeyDown:o.props.onKeyDown,autoComplete:m}),y=x.cloneElement(o,{...g,...h});return S.jsx(Pr.Target,{ref:Ot(r,v.store.targetRef),children:y})});Ug.displayName="@mantine/core/ComboboxTarget";function dE(t,r,o){for(let s=t-1;s>=0;s-=1)if(!r[s].hasAttribute("data-combobox-disabled"))return s;if(o){for(let s=r.length-1;s>-1;s-=1)if(!r[s].hasAttribute("data-combobox-disabled"))return s}return t}function pE(t,r,o){for(let s=t+1;s{d||(m(!0),l==null||l(B))},[m,l,d]),N=x.useCallback((B="unknown")=>{d&&(m(!1),s==null||s(B))},[m,s,d]),j=x.useCallback((B="unknown")=>{d?N(B):R(B)},[N,R,d]),T=x.useCallback(()=>{const B=document.querySelector(`#${h.current} [data-combobox-selected]`);B==null||B.removeAttribute("data-combobox-selected"),B==null||B.removeAttribute("aria-selected")},[]),O=x.useCallback(B=>{const V=document.getElementById(h.current),_=V==null?void 0:V.querySelectorAll("[data-combobox-option]");if(!_)return null;const M=B>=_.length?0:B<0?_.length-1:B;return v.current=M,_!=null&&_[M]&&!_[M].hasAttribute("data-combobox-disabled")?(T(),_[M].setAttribute("data-combobox-selected","true"),_[M].setAttribute("aria-selected","true"),_[M].scrollIntoView({block:"nearest",behavior:c}),_[M].id):null},[c,T]),A=x.useCallback(()=>{const B=document.querySelector(`#${h.current} [data-combobox-active]`);if(B){const V=document.querySelectorAll(`#${h.current} [data-combobox-option]`),_=Array.from(V).findIndex(M=>M===B);return O(_)}return O(0)},[O]),F=x.useCallback(()=>O(pE(v.current,document.querySelectorAll(`#${h.current} [data-combobox-option]`),u)),[O,u]),H=x.useCallback(()=>O(dE(v.current,document.querySelectorAll(`#${h.current} [data-combobox-option]`),u)),[O,u]),z=x.useCallback(()=>O(mE(document.querySelectorAll(`#${h.current} [data-combobox-option]`))),[O]),Q=x.useCallback((B="selected",V)=>{E.current=window.setTimeout(()=>{var U;const _=document.querySelectorAll(`#${h.current} [data-combobox-option]`),M=Array.from(_).findIndex(k=>k.hasAttribute(`data-combobox-${B}`));v.current=M,V!=null&&V.scrollIntoView&&((U=_[M])==null||U.scrollIntoView({block:"nearest",behavior:c}))},0)},[]),q=x.useCallback(()=>{v.current=-1,T()},[T]),X=x.useCallback(()=>{const B=document.querySelectorAll(`#${h.current} [data-combobox-option]`),V=B==null?void 0:B[v.current];V==null||V.click()},[]),K=x.useCallback(B=>{h.current=B},[]),Z=x.useCallback(()=>{w.current=window.setTimeout(()=>g.current.focus(),0)},[]),te=x.useCallback(()=>{C.current=window.setTimeout(()=>y.current.focus(),0)},[]),J=x.useCallback(()=>v.current,[]);return x.useEffect(()=>()=>{window.clearTimeout(w.current),window.clearTimeout(C.current),window.clearTimeout(E.current)},[]),{dropdownOpened:d,openDropdown:R,closeDropdown:N,toggleDropdown:j,selectedOptionIndex:v.current,getSelectedOptionIndex:J,selectOption:O,selectFirstOption:z,selectActiveOption:A,selectNextOption:F,selectPreviousOption:H,resetSelectedOption:q,updateSelectedOptionIndex:Q,listId:h.current,setListId:K,clickSelectedOption:X,searchRef:g,focusSearchInput:Z,targetRef:y,focusTarget:te}}const hE={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0}},vE=(t,{size:r,dropdownPadding:o})=>({options:{"--combobox-option-fz":jt(r),"--combobox-option-padding":Xe(r,"combobox-option-padding")},dropdown:{"--combobox-padding":o===void 0?void 0:Y(o),"--combobox-option-fz":jt(r),"--combobox-option-padding":Xe(r,"combobox-option-padding")}});function ze(t){const r=se("Combobox",hE,t),{classNames:o,styles:s,unstyled:l,children:u,store:c,vars:d,onOptionSubmit:m,onClose:h,size:v,dropdownPadding:g,resetSelectionOnOptionHover:y,__staticSelector:w,readOnly:C,...E}=r,R=Gg(),N=c||R,j=Ie({name:w||"Combobox",classes:Bt,props:r,classNames:o,styles:s,unstyled:l,vars:d,varsResolver:vE}),T=()=>{h==null||h(),N.closeDropdown()};return S.jsx(eE,{value:{getStyles:j,store:N,onOptionSubmit:m,size:v,resetSelectionOnOptionHover:y,readOnly:C},children:S.jsx(Pr,{opened:N.dropdownOpened,...E,onChange:O=>!O&&T(),withRoles:!1,unstyled:l,children:u})})}const gE=t=>t;ze.extend=gE;ze.classes=Bt;ze.displayName="@mantine/core/Combobox";ze.Target=Ug;ze.Dropdown=Hf;ze.Options=qf;ze.Option=Qf;ze.Search=Zf;ze.Empty=Uf;ze.Chevron=Wf;ze.Footer=Yf;ze.Header=Kf;ze.EventsTarget=Wg;ze.DropdownTarget=Vg;ze.Group=Xf;ze.ClearButton=Bg;ze.HiddenInput=Hg;function yE({size:t,style:r,...o}){const s=t!==void 0?{width:Y(t),height:Y(t),...r}:r;return S.jsx("svg",{viewBox:"0 0 10 7",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:s,"aria-hidden":!0,...o,children:S.jsx("path",{d:"M4 4.586L1.707 2.293A1 1 0 1 0 .293 3.707l3 3a.997.997 0 0 0 1.414 0l5-5A1 1 0 1 0 8.293.293L4 4.586z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}function Qi(t){return"group"in t}function Yg({options:t,search:r,limit:o}){const s=r.trim().toLowerCase(),l=[];for(let u=0;u0)return!1;return!0}function Xg(t,r=new Set){if(Array.isArray(t))for(const o of t)if(Qi(o))Xg(o.items,r);else{if(typeof o.value>"u")throw new Error("[@mantine/core] Each option must have value property");if(typeof o.value!="string")throw new Error(`[@mantine/core] Option value must be a string, other data formats are not supported, got ${typeof o.value}`);if(r.has(o.value))throw new Error(`[@mantine/core] Duplicate options are not supported. Option with value "${o.value}" was provided more than once`);r.add(o.value)}}function xE(t,r){return Array.isArray(t)?t.includes(r):t===r}function Kg({data:t,withCheckIcon:r,value:o,checkIconPosition:s,unstyled:l,renderOption:u}){if(!Qi(t)){const d=xE(o,t.value),m=r&&d&&S.jsx(yE,{className:Bt.optionsDropdownCheckIcon}),h=S.jsxs(S.Fragment,{children:[s==="left"&&m,S.jsx("span",{children:t.label}),s==="right"&&m]});return S.jsx(ze.Option,{value:t.value,disabled:t.disabled,className:lt({[Bt.optionsDropdownOption]:!l}),"data-reverse":s==="right"||void 0,"data-checked":d||void 0,"aria-selected":d,active:d,children:typeof u=="function"?u({option:t,checked:d}):h})}const c=t.items.map(d=>S.jsx(Kg,{data:d,value:o,unstyled:l,withCheckIcon:r,checkIconPosition:s,renderOption:u},d.value));return S.jsx(ze.Group,{label:t.group,children:c})}function SE({data:t,hidden:r,hiddenWhenEmpty:o,filter:s,search:l,limit:u,maxDropdownHeight:c,withScrollArea:d=!0,filterOptions:m=!0,withCheckIcon:h=!1,value:v,checkIconPosition:g,nothingFoundMessage:y,unstyled:w,labelId:C,renderOption:E,scrollAreaProps:R,"aria-label":N}){Xg(t);const T=typeof l=="string"?(s||Yg)({options:t,search:m?l:"",limit:u??1/0}):t,O=wE(T),A=T.map(F=>S.jsx(Kg,{data:F,withCheckIcon:h,value:v,checkIconPosition:g,unstyled:w,renderOption:E},Qi(F)?F.group:F.value));return S.jsx(ze.Dropdown,{hidden:r||o&&O,"data-composed":!0,children:S.jsxs(ze.Options,{labelledBy:C,"aria-label":N,children:[d?S.jsx(Ko.Autosize,{mah:c??220,type:"scroll",scrollbarSize:"var(--combobox-padding)",offsetScrollbars:"y",...R,children:A}):A,O&&y&&S.jsx(ze.Empty,{children:y})]})})}var ei={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const Hh={orientation:"horizontal"},bE=(t,{borderWidth:r})=>({group:{"--button-border-width":Y(r)}}),Jf=be((t,r)=>{const o=se("ButtonGroup",Hh,t),{className:s,style:l,classNames:u,styles:c,unstyled:d,orientation:m,vars:h,borderWidth:v,variant:g,mod:y,...w}=se("ButtonGroup",Hh,t),C=Ie({name:"ButtonGroup",props:o,classes:ei,className:s,style:l,classNames:u,styles:c,unstyled:d,vars:h,varsResolver:bE,rootSelector:"group"});return S.jsx(fe,{...C("group"),ref:r,variant:g,mod:[{"data-orientation":m},y],role:"group",...w})});Jf.classes=ei;Jf.displayName="@mantine/core/ButtonGroup";const Uh={},CE=(t,{radius:r,color:o,gradient:s,variant:l,autoContrast:u,size:c})=>{const d=t.variantColorResolver({color:o||t.primaryColor,theme:t,gradient:s,variant:l||"filled",autoContrast:u});return{groupSection:{"--section-height":Xe(c,"section-height"),"--section-padding-x":Xe(c,"section-padding-x"),"--section-fz":c!=null&&c.includes("compact")?jt(c.replace("compact-","")):jt(c),"--section-radius":r===void 0?void 0:$t(r),"--section-bg":o||l?d.background:void 0,"--section-color":d.color,"--section-bd":o||l?d.border:void 0}}},ed=be((t,r)=>{const o=se("ButtonGroupSection",Uh,t),{className:s,style:l,classNames:u,styles:c,unstyled:d,vars:m,variant:h,gradient:v,radius:g,autoContrast:y,...w}=se("ButtonGroupSection",Uh,t),C=Ie({name:"ButtonGroupSection",props:o,classes:ei,className:s,style:l,classNames:u,styles:c,unstyled:d,vars:m,varsResolver:CE,rootSelector:"groupSection"});return S.jsx(fe,{...C("groupSection"),ref:r,variant:h,...w})});ed.classes=ei;ed.displayName="@mantine/core/ButtonGroupSection";const EE={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${Y(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},RE={},kE=(t,{radius:r,color:o,gradient:s,variant:l,size:u,justify:c,autoContrast:d})=>{const m=t.variantColorResolver({color:o||t.primaryColor,theme:t,gradient:s,variant:l||"filled",autoContrast:d});return{root:{"--button-justify":c,"--button-height":Xe(u,"button-height"),"--button-padding-x":Xe(u,"button-padding-x"),"--button-fz":u!=null&&u.includes("compact")?jt(u.replace("compact-","")):jt(u),"--button-radius":r===void 0?void 0:$t(r),"--button-bg":o||l?m.background:void 0,"--button-hover":o||l?m.hover:void 0,"--button-color":m.color,"--button-bd":o||l?m.border:void 0,"--button-hover-color":o||l?m.hoverColor:void 0}}},wt=Vt((t,r)=>{const o=se("Button",RE,t),{style:s,vars:l,className:u,color:c,disabled:d,children:m,leftSection:h,rightSection:v,fullWidth:g,variant:y,radius:w,loading:C,loaderProps:E,gradient:R,classNames:N,styles:j,unstyled:T,"data-disabled":O,autoContrast:A,mod:F,...H}=o,z=Ie({name:"Button",props:o,classes:ei,className:u,style:s,classNames:N,styles:j,unstyled:T,vars:l,varsResolver:kE}),Q=!!h,q=!!v;return S.jsxs(Xn,{ref:r,...z("root",{active:!d&&!C&&!O}),unstyled:T,variant:y,disabled:d||C,mod:[{disabled:d||O,loading:C,block:g,"with-left-section":Q,"with-right-section":q},F],...H,children:[S.jsx(Nr,{mounted:!!C,transition:EE,duration:150,children:X=>S.jsx(fe,{component:"span",...z("loader",{style:X}),"aria-hidden":!0,children:S.jsx(to,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...E})})}),S.jsxs("span",{...z("inner"),children:[h&&S.jsx(fe,{component:"span",...z("section"),mod:{position:"left"},children:h}),S.jsx(fe,{component:"span",mod:{loading:C},...z("label"),children:m}),v&&S.jsx(fe,{component:"span",...z("section"),mod:{position:"right"},children:v})]})]})});wt.classes=ei;wt.displayName="@mantine/core/Button";wt.Group=Jf;wt.GroupSection=ed;const[NE,PE]=Rr("Card component was not found in tree");var td={root:"m_e615b15f",section:"m_599a2148"};const _E={},la=Vt((t,r)=>{const o=se("CardSection",_E,t),{classNames:s,className:l,style:u,styles:c,vars:d,withBorder:m,inheritPadding:h,mod:v,...g}=o,y=PE();return S.jsx(fe,{ref:r,mod:[{"with-border":m,"inherit-padding":h},v],...y.getStyles("section",{className:l,style:u,styles:c,classNames:s}),...g})});la.classes=td;la.displayName="@mantine/core/CardSection";const TE={},jE=(t,{padding:r})=>({root:{"--card-padding":Uo(r)}}),aa=Vt((t,r)=>{const o=se("Card",TE,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,children:h,padding:v,...g}=o,y=Ie({name:"Card",props:o,classes:td,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:jE}),w=x.Children.toArray(h),C=w.map((E,R)=>typeof E=="object"&&E&&"type"in E&&E.type===la?x.cloneElement(E,{"data-first-section":R===0||void 0,"data-last-section":R===w.length-1||void 0}):E);return S.jsx(NE,{value:{getStyles:y},children:S.jsx(Qo,{ref:r,unstyled:d,...y("root"),...g,children:C})})});aa.classes=td;aa.displayName="@mantine/core/Card";aa.Section=la;var Qg={root:"m_4451eb3a"};const $E={},qi=Vt((t,r)=>{const o=se("Center",$E,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,inline:h,mod:v,...g}=o,y=Ie({name:"Center",props:o,classes:Qg,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m});return S.jsx(fe,{ref:r,mod:[{inline:h},v],...y("root"),...g})});qi.classes=Qg;qi.displayName="@mantine/core/Center";var qg={root:"m_3eebeb36",label:"m_9e365f20"};const OE={orientation:"horizontal"},IE=(t,{color:r,variant:o,size:s})=>({root:{"--divider-color":r?Un(r,t):void 0,"--divider-border-style":o,"--divider-size":Xe(s,"divider-size")}}),Al=be((t,r)=>{const o=se("Divider",OE,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,color:h,orientation:v,label:g,labelPosition:y,mod:w,...C}=o,E=Ie({name:"Divider",classes:qg,props:o,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:IE});return S.jsx(fe,{ref:r,mod:[{orientation:v,"with-label":!!g},w],...E("root"),...C,role:"separator",children:g&&S.jsx(fe,{component:"span",mod:{position:y},...E("label"),children:g})})});Al.classes=qg;Al.displayName="@mantine/core/Divider";var Zg={root:"m_9e117634"};const ME={},AE=(t,{radius:r,fit:o})=>({root:{"--image-radius":r===void 0?void 0:$t(r),"--image-object-fit":o}}),nd=Vt((t,r)=>{const o=se("Image",ME,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,onError:h,src:v,radius:g,fit:y,fallbackSrc:w,mod:C,...E}=o,[R,N]=x.useState(!v);x.useEffect(()=>N(!v),[v]);const j=Ie({name:"Image",classes:Zg,props:o,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:AE});return R&&w?S.jsx(fe,{component:"img",ref:r,src:w,...j("root"),onError:h,mod:["fallback",C],...E}):S.jsx(fe,{component:"img",ref:r,...j("root"),src:v,onError:T=>{h==null||h(T),N(!0)},mod:C,...E})});nd.classes=Zg;nd.displayName="@mantine/core/Image";function Xc(){return Xc=Object.assign?Object.assign.bind():function(t){for(var r=1;r{const o=se("ModalBody",LE,t),{classNames:s,className:l,style:u,styles:c,vars:d,...m}=o,h=ti();return S.jsx(Tg,{ref:r,...h.getStyles("body",{classNames:s,style:u,styles:c,className:l}),...m})});ua.classes=Jn;ua.displayName="@mantine/core/ModalBody";const zE={},ca=be((t,r)=>{const o=se("ModalCloseButton",zE,t),{classNames:s,className:l,style:u,styles:c,vars:d,...m}=o,h=ti();return S.jsx(jg,{ref:r,...h.getStyles("close",{classNames:s,style:u,styles:c,className:l}),...m})});ca.classes=Jn;ca.displayName="@mantine/core/ModalCloseButton";const FE={},fa=be((t,r)=>{const o=se("ModalContent",FE,t),{classNames:s,className:l,style:u,styles:c,vars:d,children:m,__hidden:h,...v}=o,g=ti(),y=g.scrollAreaComponent||pC;return S.jsx($g,{...g.getStyles("content",{className:l,style:u,styles:c,classNames:s}),innerProps:g.getStyles("inner",{className:l,style:u,styles:c,classNames:s}),"data-full-screen":g.fullScreen||void 0,"data-modal-content":!0,"data-hidden":h||void 0,ref:r,...v,children:S.jsx(y,{style:{maxHeight:g.fullScreen?"100dvh":`calc(100dvh - (${Y(g.yOffset)} * 2))`},children:m})})});fa.classes=Jn;fa.displayName="@mantine/core/ModalContent";const BE={},da=be((t,r)=>{const o=se("ModalHeader",BE,t),{classNames:s,className:l,style:u,styles:c,vars:d,...m}=o,h=ti();return S.jsx(Og,{ref:r,...h.getStyles("header",{classNames:s,style:u,styles:c,className:l}),...m})});da.classes=Jn;da.displayName="@mantine/core/ModalHeader";const VE={},pa=be((t,r)=>{const o=se("ModalOverlay",VE,t),{classNames:s,className:l,style:u,styles:c,vars:d,...m}=o,h=ti();return S.jsx(Ig,{ref:r,...h.getStyles("overlay",{classNames:s,style:u,styles:c,className:l}),...m})});pa.classes=Jn;pa.displayName="@mantine/core/ModalOverlay";const WE={__staticSelector:"Modal",closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:Sn("modal"),transitionProps:{duration:200,transition:"fade-down"},yOffset:"5dvh"},HE=(t,{radius:r,size:o,yOffset:s,xOffset:l})=>({root:{"--modal-radius":r===void 0?void 0:$t(r),"--modal-size":Xe(o,"modal-size"),"--modal-y-offset":Y(s),"--modal-x-offset":Y(l)}}),ma=be((t,r)=>{const o=se("ModalRoot",WE,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,yOffset:h,scrollAreaComponent:v,radius:g,fullScreen:y,centered:w,xOffset:C,__staticSelector:E,...R}=o,N=Ie({name:E,classes:Jn,props:o,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:HE});return S.jsx(DE,{value:{yOffset:h,scrollAreaComponent:v,getStyles:N,fullScreen:y},children:S.jsx(_g,{ref:r,...N("root"),"data-full-screen":y||void 0,"data-centered":w||void 0,"data-offset-scrollbars":v===Ko.Autosize||void 0,unstyled:d,...R})})});ma.classes=Jn;ma.displayName="@mantine/core/ModalRoot";const[UE,GE]=sf();function ey({children:t}){const[r,o]=x.useState([]),[s,l]=x.useState(Sn("modal"));return S.jsx(UE,{value:{stack:r,addModal:(u,c)=>{o(d=>[...new Set([...d,u])]),l(d=>typeof c=="number"&&typeof d=="number"?Math.max(d,c):d)},removeModal:u=>o(c=>c.filter(d=>d!==u)),getZIndex:u=>`calc(${s} + ${r.indexOf(u)} + 1)`,currentId:r[r.length-1],maxZIndex:s},children:t})}ey.displayName="@mantine/core/ModalStack";const YE={},ha=be((t,r)=>{const o=se("ModalTitle",YE,t),{classNames:s,className:l,style:u,styles:c,vars:d,...m}=o,h=ti();return S.jsx(Mg,{ref:r,...h.getStyles("title",{classNames:s,style:u,styles:c,className:l}),...m})});ha.classes=Jn;ha.displayName="@mantine/core/ModalTitle";const XE={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:Sn("modal"),transitionProps:{duration:200,transition:"fade-down"},withOverlay:!0,withCloseButton:!0},Kt=be((t,r)=>{const{title:o,withOverlay:s,overlayProps:l,withCloseButton:u,closeButtonProps:c,children:d,radius:m,opened:h,stackId:v,zIndex:g,...y}=se("Modal",XE,t),w=GE(),C=!!o||u,E=w&&v?{closeOnEscape:w.currentId===v,trapFocus:w.currentId===v,zIndex:w.getZIndex(v)}:{},R=s===!1?!1:v&&w?w.currentId===v:h;return x.useEffect(()=>{w&&v&&(h?w.addModal(v,g||Sn("modal")):w.removeModal(v))},[h,v,g]),S.jsxs(ma,{ref:r,radius:m,opened:h,zIndex:w&&v?w.getZIndex(v):g,...y,...E,children:[s&&S.jsx(pa,{visible:R,transitionProps:w&&v?{duration:0}:void 0,...l}),S.jsxs(fa,{radius:m,__hidden:w&&v&&h?v!==w.currentId:!1,children:[C&&S.jsxs(da,{children:[o&&S.jsx(ha,{children:o}),u&&S.jsx(ca,{...c})]}),S.jsx(ua,{children:d})]})]})});Kt.classes=Jn;Kt.displayName="@mantine/core/Modal";Kt.Root=ma;Kt.Overlay=pa;Kt.Content=fa;Kt.Body=ua;Kt.Header=da;Kt.Title=ha;Kt.CloseButton=ca;Kt.Stack=ey;var ty={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const KE={withCloseButton:!0},QE=(t,{radius:r,color:o})=>({root:{"--notification-radius":r===void 0?void 0:$t(r),"--notification-color":o?Un(o,t):void 0}}),rd=be((t,r)=>{const o=se("Notification",KE,t),{className:s,color:l,radius:u,loading:c,withCloseButton:d,withBorder:m,title:h,icon:v,children:g,onClose:y,closeButtonProps:w,classNames:C,style:E,styles:R,unstyled:N,variant:j,vars:T,mod:O,loaderProps:A,role:F,...H}=o,z=Ie({name:"Notification",classes:ty,props:o,className:s,style:E,classNames:C,styles:R,unstyled:N,vars:T,varsResolver:QE});return S.jsxs(fe,{...z("root"),mod:[{"data-with-icon":!!v||c,"data-with-border":m},O],ref:r,variant:j,role:F||"alert",...H,children:[v&&!c&&S.jsx("div",{...z("icon"),children:v}),c&&S.jsx(to,{size:28,color:l,...A,...z("loader")}),S.jsxs("div",{...z("body"),children:[h&&S.jsx("div",{...z("title"),children:h}),S.jsx(fe,{...z("description"),mod:{"data-with-title":!!h},children:g})]}),d&&S.jsx(Zo,{iconSize:16,color:"gray",...w,unstyled:N,onClick:y,...z("closeButton")})]})});rd.classes=ty;rd.displayName="@mantine/core/Notification";function ny(t,r){var o={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&r.indexOf(s)<0&&(o[s]=t[s]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var l=0,s=Object.getOwnPropertySymbols(t);l=d?l=l+Yh("0",c-d):l=(l.substring(0,c)||"0")+"."+l.substring(c),o+l}function Xh(t,r,o){if(["","-"].indexOf(t)!==-1)return t;var s=(t.indexOf(".")!==-1||o)&&r,l=od(t),u=l.beforeDecimal,c=l.afterDecimal,d=l.hasNegation,m=parseFloat("0."+(c||"0")),h=c.length<=r?"0."+c:m.toFixed(r),v=h.split("."),g=u;u&&Number(v[0])&&(g=u.split("").reverse().reduce(function(E,R,N){return E.length>N?(Number(E[0])+Number(R)).toString()+E.substring(1,E.length):R+E},v[0]));var y=iy(v[1]||"",r,o),w=d?"-":"",C=s?".":"";return""+w+g+C+y}function Xr(t,r){if(t.value=t.value,t!==null){if(t.createTextRange){var o=t.createTextRange();return o.move("character",r),o.select(),!0}return t.selectionStart||t.selectionStart===0?(t.focus(),t.setSelectionRange(r,r),!0):(t.focus(),!1)}}var ly=qE(function(t,r){for(var o=0,s=0,l=t.length,u=r.length;t[o]===r[o]&&oo&&l-s>o;)s++;return{from:{start:o,end:l-s},to:{start:o,end:u-s}}}),nR=function(t,r){var o=Math.min(t.selectionStart,r);return{from:{start:o,end:t.selectionEnd},to:{start:o,end:r}}};function rR(t,r,o){return Math.min(Math.max(t,r),o)}function jc(t){return Math.max(t.selectionStart,t.selectionEnd)}function oR(){return typeof navigator<"u"&&!(navigator.platform&&/iPhone|iPod/.test(navigator.platform))}function iR(t){return{from:{start:0,end:0},to:{start:0,end:t.length},lastValue:""}}function sR(t){var r=t.currentValue,o=t.formattedValue,s=t.currentValueIndex,l=t.formattedValueIndex;return r[s]===o[l]}function lR(t,r,o,s,l,u,c){c===void 0&&(c=sR);var d=l.findIndex(function(O){return O}),m=t.slice(0,d);!r&&!o.startsWith(m)&&(r=m,o=m+o,s=s+m.length);for(var h=o.length,v=t.length,g={},y=new Array(h),w=0;w0&&y[N]===-1;)N--;var T=N===-1||y[N]===-1?0:y[N]+1;return T>j?j:s-T=0&&!o[r];)r--;r===-1&&(r=o.indexOf(!0))}else{for(;r<=l&&!o[r];)r++;r>l&&(r=o.lastIndexOf(!0))}return r===-1&&(r=l),r}function aR(t){for(var r=Array.from({length:t.length+1}).map(function(){return!0}),o=0,s=r.length;oH.length-c.length||FX||g>t.length-c.length)&&(q=g),t=t.substring(0,q),t=dR(T?"-"+t:t,l),t=(t.match(pR(C))||[]).join("");var K=t.indexOf(C);t=t.replace(new RegExp(oy(C),"g"),function(V,_){return _===K?".":""});var Z=od(t,l),te=Z.beforeDecimal,J=Z.afterDecimal,B=Z.addNegation;return h.end-h.startk?!1:U>=ie.start&&U=r,l=o===void 0||t<=o;return s&&l}const ER={step:1,clampBehavior:"blur",allowDecimal:!0,allowNegative:!0,withKeyboardEvents:!0,allowLeadingZeros:!0,trimLeadingZeroesOnBlur:!0,startValue:0},RR=(t,{size:r})=>({controls:{"--ni-chevron-size":Xe(r,"ni-chevron-size")}});function kR(t,r,o){const s=t.toString().replace(/^0+/,""),l=parseFloat(s);return Number.isNaN(l)?s:l>Number.MAX_SAFE_INTEGER?r!==void 0?String(r):s:El(l,o,r)}const id=be((t,r)=>{const o=se("NumberInput",ER,t),{className:s,classNames:l,styles:u,unstyled:c,vars:d,onChange:m,onValueChange:h,value:v,defaultValue:g,max:y,min:w,step:C,hideControls:E,rightSection:R,isAllowed:N,clampBehavior:j,onBlur:T,allowDecimal:O,decimalScale:A,onKeyDown:F,onKeyDownCapture:H,handlersRef:z,startValue:Q,disabled:q,rightSectionPointerEvents:X,allowNegative:K,readOnly:Z,size:te,rightSectionWidth:J,stepHoldInterval:B,stepHoldDelay:V,allowLeadingZeros:_,withKeyboardEvents:M,trimLeadingZeroesOnBlur:U,...k}=o,D=Ie({name:"NumberInput",classes:Kc,props:o,classNames:l,styles:u,unstyled:c,vars:d,varsResolver:RR}),{resolvedClassNames:le,resolvedStyles:ve}=es({classNames:l,styles:u,props:o}),[ie,ce]=Fo({value:v,defaultValue:g,finalValue:"",onChange:m}),Se=V!==void 0&&B!==void 0,ye=x.useRef(null),Re=x.useRef(null),je=x.useRef(0),qe=(ae,Ce)=>{Ce.source==="event"&&ce(CR(ae.floatValue,ae.value)&&!xR.test(ae.value)&&!(_&&SR.test(ae.value))?ae.floatValue:ae.value),h==null||h(ae,Ce)},nt=ae=>{const Ce=String(ae).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return Ce?Math.max(0,(Ce[1]?Ce[1].length:0)-(Ce[2]?+Ce[2]:0)):0},Ze=ae=>{ye.current&&typeof ae<"u"&&ye.current.setSelectionRange(ae,ae)},rt=x.useRef(Mc);rt.current=()=>{if(!$c(ie))return;let ae;const Ce=nt(ie),Ve=nt(C),ht=Math.max(Ce,Ve),at=10**ht;if(!Qc(ie)&&(typeof ie!="number"||Number.isNaN(ie)))ae=El(Q,w,y);else if(y!==void 0){const Be=(Math.round(Number(ie)*at)+Math.round(C*at))/at;ae=Be<=y?Be:y}else ae=(Math.round(Number(ie)*at)+Math.round(C*at))/at;const Fe=ae.toFixed(ht);ce(parseFloat(Fe)),h==null||h({floatValue:parseFloat(Fe),formattedValue:Fe,value:Fe},{source:"increment"}),setTimeout(()=>{var Be;return Ze((Be=ye.current)==null?void 0:Be.value.length)},0)};const ot=x.useRef(Mc);ot.current=()=>{if(!$c(ie))return;let ae;const Ce=w!==void 0?w:K?Number.MIN_SAFE_INTEGER:0,Ve=nt(ie),ht=nt(C),at=Math.max(Ve,ht),Fe=10**at;if(!Qc(ie)&&typeof ie!="number"||Number.isNaN(ie))ae=El(Q,Ce,y);else{const Le=(Math.round(Number(ie)*Fe)-Math.round(C*Fe))/Fe;ae=Ce!==void 0&&Le{var Le;return Ze((Le=ye.current)==null?void 0:Le.value.length)},0)};const Pt=ae=>{F==null||F(ae),!(Z||!M)&&(ae.key==="ArrowUp"&&(ae.preventDefault(),rt.current()),ae.key==="ArrowDown"&&(ae.preventDefault(),ot.current()))},ue=ae=>{if(H==null||H(ae),ae.key==="Backspace"){const Ce=ye.current;Ce.selectionStart===0&&Ce.selectionStart===Ce.selectionEnd&&(ae.preventDefault(),window.setTimeout(()=>Ze(0),0))}},de=ae=>{let Ce=ie;j==="blur"&&typeof Ce=="number"&&(Ce=El(Ce,w,y)),U&&typeof Ce=="string"&&nt(Ce)<15&&(Ce=kR(Ce,y,w)),ie!==Ce&&ce(Ce),T==null||T(ae)};_l(z,{increment:rt.current,decrement:ot.current});const we=ae=>{ae?rt.current():ot.current(),je.current+=1},Ee=ae=>{if(we(ae),Se){const Ce=typeof B=="number"?B:B(je.current);Re.current=window.setTimeout(()=>Ee(ae),Ce)}},$e=(ae,Ce)=>{var Ve;ae.preventDefault(),(Ve=ye.current)==null||Ve.focus(),we(Ce),Se&&(Re.current=window.setTimeout(()=>Ee(Ce),V))},Pe=()=>{Re.current&&window.clearTimeout(Re.current),Re.current=null,je.current=0},Te=S.jsxs("div",{...D("controls"),children:[S.jsx(Xn,{...D("control"),tabIndex:-1,"aria-hidden":!0,disabled:q||typeof ie=="number"&&y!==void 0&&ie>=y,mod:{direction:"up"},onMouseDown:ae=>ae.preventDefault(),onPointerDown:ae=>{$e(ae,!0)},onPointerUp:Pe,onPointerLeave:Pe,children:S.jsx(qh,{direction:"up"})}),S.jsx(Xn,{...D("control"),tabIndex:-1,"aria-hidden":!0,disabled:q||typeof ie=="number"&&w!==void 0&&ie<=w,mod:{direction:"down"},onMouseDown:ae=>ae.preventDefault(),onPointerDown:ae=>{$e(ae,!1)},onPointerUp:Pe,onPointerLeave:Pe,children:S.jsx(qh,{direction:"down"})})]});return S.jsx(Zn,{component:wR,allowNegative:K,className:lt(Kc.root,s),size:te,...k,readOnly:Z,disabled:q,value:ie,getInputRef:Ot(r,ye),onValueChange:qe,rightSection:E||Z||!$c(ie)?R:R||Te,classNames:le,styles:ve,unstyled:c,__staticSelector:"NumberInput",decimalScale:O?A:0,onKeyDown:Pt,onKeyDownCapture:ue,rightSectionPointerEvents:X??(q?"none":void 0),rightSectionWidth:J??`var(--ni-right-section-width-${te||"sm"})`,allowLeadingZeros:_,onBlur:de,isAllowed:ae=>j==="strict"?N?N(ae)&&Zh(ae.floatValue,w,y):Zh(ae.floatValue,w,y):N?N(ae):!0})});id.classes={...Zn.classes,...Kc};id.displayName="@mantine/core/NumberInput";const NR=({reveal:t})=>S.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{width:"var(--psi-icon-size)",height:"var(--psi-icon-size)"},children:S.jsx("path",{d:t?"M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L10.6828 3.61012C9.70652 3.21671 8.63759 3 7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C0.902945 9.08812 2.02314 10.1861 3.36061 10.9323L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L4.31723 11.3899C5.29348 11.7833 6.36241 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C14.0971 5.9119 12.9769 4.81391 11.6394 4.06771L13.3536 2.35355ZM9.90428 4.38861C9.15332 4.1361 8.34759 4 7.5 4C4.80285 4 2.52952 5.37816 1.09622 7.50001C1.87284 8.6497 2.89609 9.58106 4.09974 10.1931L9.90428 4.38861ZM5.09572 10.6114L10.9003 4.80685C12.1039 5.41894 13.1272 6.35031 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11C6.65241 11 5.84668 10.8639 5.09572 10.6114Z":"M7.5 11C4.80285 11 2.52952 9.62184 1.09622 7.50001C2.52952 5.37816 4.80285 4 7.5 4C10.1971 4 12.4705 5.37816 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11ZM7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C1.65639 10.2936 4.30786 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C13.3436 4.70638 10.6921 3 7.5 3ZM7.5 9.5C8.60457 9.5 9.5 8.60457 9.5 7.5C9.5 6.39543 8.60457 5.5 7.5 5.5C6.39543 5.5 5.5 6.39543 5.5 7.5C5.5 8.60457 6.39543 9.5 7.5 9.5Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})});var qc={root:"m_f61ca620",input:"m_ccf8da4c",innerInput:"m_f2d85dd2",visibilityToggle:"m_b1072d44"};const PR={visibilityToggleIcon:NR},_R=(t,{size:r})=>({root:{"--psi-icon-size":Xe(r,"psi-icon-size"),"--psi-button-size":Xe(r,"psi-button-size")}}),sd=be((t,r)=>{const o=se("PasswordInput",PR,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,required:h,error:v,leftSection:g,disabled:y,id:w,variant:C,inputContainer:E,description:R,label:N,size:j,errorProps:T,descriptionProps:O,labelProps:A,withAsterisk:F,inputWrapperOrder:H,wrapperProps:z,radius:Q,rightSection:q,rightSectionWidth:X,rightSectionPointerEvents:K,leftSectionWidth:Z,visible:te,defaultVisible:J,onVisibilityChange:B,visibilityToggleIcon:V,visibilityToggleButtonProps:_,rightSectionProps:M,leftSectionProps:U,leftSectionPointerEvents:k,withErrorStyles:D,mod:le,...ve}=o,ie=kr(w),[ce,Se]=Fo({value:te,defaultValue:J,finalValue:!1,onChange:B}),ye=()=>Se(!ce),Re=Ie({name:"PasswordInput",classes:qc,props:o,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:_R}),{resolvedClassNames:je,resolvedStyles:qe}=es({classNames:s,styles:c,props:o}),{styleProps:nt,rest:Ze}=Hl(ve),rt=V,ot=(T==null?void 0:T.id)||`${ie}-error`,Pt=(O==null?void 0:O.id)||`${ie}-description`,we=`${!!v&&typeof v!="boolean"?ot:""} ${!!R?Pt:""}`,Ee=we.trim().length>0?we.trim():void 0,$e=S.jsx(jn,{...Re("visibilityToggle"),disabled:y,radius:Q,"aria-hidden":!_,tabIndex:-1,..._,variant:(_==null?void 0:_.variant)??"subtle",color:"gray",unstyled:d,onTouchEnd:Pe=>{var Te;Pe.preventDefault(),(Te=_==null?void 0:_.onTouchEnd)==null||Te.call(_,Pe),ye()},onMouseDown:Pe=>{var Te;Pe.preventDefault(),(Te=_==null?void 0:_.onMouseDown)==null||Te.call(_,Pe),ye()},onKeyDown:Pe=>{var Te;(Te=_==null?void 0:_.onKeyDown)==null||Te.call(_,Pe),Pe.key===" "&&(Pe.preventDefault(),ye())},children:S.jsx(rt,{reveal:ce})});return S.jsx(Nt.Wrapper,{required:h,id:ie,label:N,error:v,description:R,size:j,classNames:je,styles:qe,__staticSelector:"PasswordInput",unstyled:d,withAsterisk:F,inputWrapperOrder:H,inputContainer:E,variant:C,labelProps:{...A,htmlFor:ie},descriptionProps:{...O,id:Pt},errorProps:{...T,id:ot},mod:le,...Re("root"),...nt,...z,children:S.jsx(Nt,{component:"div",error:v,leftSection:g,size:j,classNames:{...je,input:lt(qc.input,je.input)},styles:qe,radius:Q,disabled:y,__staticSelector:"PasswordInput",rightSectionWidth:X,rightSection:q??$e,variant:C,unstyled:d,leftSectionWidth:Z,rightSectionPointerEvents:K||"all",rightSectionProps:M,leftSectionProps:U,leftSectionPointerEvents:k,withAria:!1,withErrorStyles:D,children:S.jsx("input",{required:h,"data-invalid":!!v||void 0,"data-with-left-section":!!g||void 0,...Re("innerInput"),disabled:y,id:ie,ref:r,...Ze,"aria-describedby":Ee,autoComplete:Ze.autoComplete||"off",type:ce?"text":"password"})})})});sd.classes={...Zn.classes,...qc};sd.displayName="@mantine/core/PasswordInput";const TR={duration:100,transition:"fade"};function jR(t,r){return{...TR,...r,...t}}function $R({offset:t,position:r,defaultOpened:o}){const[s,l]=x.useState(o),u=x.useRef(null),{x:c,y:d,elements:m,refs:h,update:v,placement:g}=kf({placement:r,middleware:[bf({crossAxis:!0,padding:5,rootBoundary:"document"})]}),y=g.includes("right")?t:r.includes("left")?t*-1:0,w=g.includes("bottom")?t:r.includes("top")?t*-1:0,C=x.useCallback(({clientX:E,clientY:R})=>{h.setPositionReference({getBoundingClientRect(){return{width:0,height:0,x:E,y:R,left:E+y,top:R+w,right:E,bottom:R}}})},[m.reference]);return x.useEffect(()=>{if(h.floating.current){const E=u.current;E.addEventListener("mousemove",C);const R=Wn(h.floating.current);return R.forEach(N=>{N.addEventListener("scroll",v)}),()=>{E.removeEventListener("mousemove",C),R.forEach(N=>{N.removeEventListener("scroll",v)})}}},[m.reference,h.floating.current,v,C,s]),{handleMouseMove:C,x:c,y:d,opened:s,setOpened:l,boundaryRef:u,floating:h.setFloating}}var ga={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const OR={refProp:"ref",withinPortal:!0,offset:10,defaultOpened:!1,position:"right",zIndex:Sn("popover")},IR=(t,{radius:r,color:o})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:$t(r),"--tooltip-bg":o?Un(o,t):void 0,"--tooltip-color":o?"var(--mantine-color-white)":void 0}}),ld=be((t,r)=>{const o=se("TooltipFloating",OR,t),{children:s,refProp:l,withinPortal:u,style:c,className:d,classNames:m,styles:h,unstyled:v,radius:g,color:y,label:w,offset:C,position:E,multiline:R,zIndex:N,disabled:j,defaultOpened:T,variant:O,vars:A,portalProps:F,...H}=o,z=rn(),Q=Ie({name:"TooltipFloating",props:o,classes:ga,className:d,style:c,classNames:m,styles:h,unstyled:v,rootSelector:"tooltip",vars:A,varsResolver:IR}),{handleMouseMove:q,x:X,y:K,opened:Z,boundaryRef:te,floating:J,setOpened:B}=$R({offset:C,position:E,defaultOpened:T});if(!Jr(s))throw new Error("[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const V=Ot(te,Vl(s),r),_=s.props,M=k=>{var D;(D=_.onMouseEnter)==null||D.call(_,k),q(k),B(!0)},U=k=>{var D;(D=_.onMouseLeave)==null||D.call(_,k),B(!1)};return S.jsxs(S.Fragment,{children:[S.jsx(eo,{...F,withinPortal:u,children:S.jsx(fe,{...H,...Q("tooltip",{style:{...mf(c,z),zIndex:N,display:!j&&Z?"block":"none",top:(K&&Math.round(K))??"",left:(X&&Math.round(X))??""}}),variant:O,ref:J,mod:{multiline:R},children:w})}),x.cloneElement(s,{..._,[l]:V,onMouseEnter:M,onMouseLeave:U})]})});ld.classes=ga;ld.displayName="@mantine/core/TooltipFloating";const uy=x.createContext(!1),MR=uy.Provider,AR=()=>x.useContext(uy),DR={openDelay:0,closeDelay:0};function ad(t){const{openDelay:r,closeDelay:o,children:s}=se("TooltipGroup",DR,t);return S.jsx(MR,{value:!0,children:S.jsx(ab,{delay:{open:r,close:o},children:s})})}ad.displayName="@mantine/core/TooltipGroup";ad.extend=t=>t;function LR(t){if(t===void 0)return{shift:!0,flip:!0};const r={...t};return t.shift===void 0&&(r.shift=!0),t.flip===void 0&&(r.flip=!0),r}function zR(t){const r=LR(t.middlewares),o=[Xv(t.offset)];return r.shift&&o.push(bf(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&o.push(typeof r.flip=="boolean"?Il():Il(r.flip)),o.push(Kv({element:t.arrowRef,padding:t.arrowOffset})),r.inline?o.push(typeof r.inline=="boolean"?Yi():Yi(r.inline)):t.inline&&o.push(Yi()),o}function FR(t){var F,H,z;const[r,o]=x.useState(t.defaultOpened),l=typeof t.opened=="boolean"?t.opened:r,u=AR(),c=kr(),d=x.useCallback(Q=>{o(Q),Q&&j(c)},[c]),{x:m,y:h,context:v,refs:g,update:y,placement:w,middlewareData:{arrow:{x:C,y:E}={}}}=kf({strategy:t.strategy,placement:t.position,open:l,onOpenChange:d,middleware:zR(t)}),{delay:R,currentId:N,setCurrentId:j}=ub(v,{id:c}),{getReferenceProps:T,getFloatingProps:O}=vb([sb(v,{enabled:(F=t.events)==null?void 0:F.hover,delay:u?R:{open:t.openDelay,close:t.closeDelay},mouseOnly:!((H=t.events)!=null&&H.touch)}),hb(v,{enabled:(z=t.events)==null?void 0:z.focus,visibleOnly:!0}),yb(v,{role:"tooltip"}),pb(v,{enabled:typeof t.opened>"u"})]);Sg({opened:l,position:t.position,positionDependencies:t.positionDependencies,floating:{refs:g,update:y}}),Hn(()=>{var Q;(Q=t.onPositionChange)==null||Q.call(t,w)},[w]);const A=l&&N&&N!==c;return{x:m,y:h,arrowX:C,arrowY:E,reference:g.setReference,floating:g.setFloating,getFloatingProps:O,getReferenceProps:T,isGroupPhase:A,opened:l,placement:w}}const Jh={position:"top",refProp:"ref",withinPortal:!0,inline:!1,defaultOpened:!1,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:"side",offset:5,transitionProps:{duration:100,transition:"fade"},events:{hover:!0,focus:!1,touch:!1},zIndex:Sn("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},BR=(t,{radius:r,color:o})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:$t(r),"--tooltip-bg":o?Un(o,t):void 0,"--tooltip-color":o?"var(--mantine-color-white)":void 0}}),is=be((t,r)=>{const o=se("Tooltip",Jh,t),{children:s,position:l,refProp:u,label:c,openDelay:d,closeDelay:m,onPositionChange:h,opened:v,defaultOpened:g,withinPortal:y,radius:w,color:C,classNames:E,styles:R,unstyled:N,style:j,className:T,withArrow:O,arrowSize:A,arrowOffset:F,arrowRadius:H,arrowPosition:z,offset:Q,transitionProps:q,multiline:X,events:K,zIndex:Z,disabled:te,positionDependencies:J,onClick:B,onMouseEnter:V,onMouseLeave:_,inline:M,variant:U,keepMounted:k,vars:D,portalProps:le,mod:ve,floatingStrategy:ie,middlewares:ce,...Se}=se("Tooltip",Jh,o),{dir:ye}=Ul(),Re=x.useRef(null),je=FR({position:mg(ye,l),closeDelay:m,openDelay:d,onPositionChange:h,opened:v,defaultOpened:g,events:K,arrowRef:Re,arrowOffset:F,offset:typeof Q=="number"?Q+(O?A/2:0):Q,positionDependencies:[...J,s],inline:M,strategy:ie,middlewares:ce}),qe=Ie({name:"Tooltip",props:o,classes:ga,className:T,style:j,classNames:E,styles:R,unstyled:N,rootSelector:"tooltip",vars:D,varsResolver:BR});if(!Jr(s))throw new Error("[@mantine/core] Tooltip component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const nt=Ot(je.reference,Vl(s),r),Ze=jR(q,{duration:100,transition:"fade"}),rt=s.props;return S.jsxs(S.Fragment,{children:[S.jsx(eo,{...le,withinPortal:y,children:S.jsx(Nr,{...Ze,keepMounted:k,mounted:!te&&!!je.opened,duration:je.isGroupPhase?10:Ze.duration,children:ot=>S.jsxs(fe,{...Se,"data-fixed":ie==="fixed"||void 0,variant:U,mod:[{multiline:X},ve],...je.getFloatingProps({ref:je.floating,className:qe("tooltip").className,style:{...qe("tooltip").style,...ot,zIndex:Z,top:je.y??0,left:je.x??0}}),children:[c,S.jsx(jf,{ref:Re,arrowX:je.arrowX,arrowY:je.arrowY,visible:O,position:je.placement,arrowSize:A,arrowOffset:F,arrowRadius:H,arrowPosition:z,...qe("arrow")})]})})}),x.cloneElement(s,je.getReferenceProps({onClick:B,onMouseEnter:V,onMouseLeave:_,onMouseMove:o.onMouseMove,onPointerDown:o.onPointerDown,onPointerEnter:o.onPointerEnter,className:lt(T,rt.className),...rt,[u]:nt}))]})});is.classes=ga;is.displayName="@mantine/core/Tooltip";is.Floating=ld;is.Group=ad;const VR={searchable:!1,withCheckIcon:!0,allowDeselect:!0,checkIconPosition:"left"},ud=be((t,r)=>{const o=se("Select",VR,t),{classNames:s,styles:l,unstyled:u,vars:c,dropdownOpened:d,defaultDropdownOpened:m,onDropdownClose:h,onDropdownOpen:v,onFocus:g,onBlur:y,onClick:w,onChange:C,data:E,value:R,defaultValue:N,selectFirstOptionOnChange:j,onOptionSubmit:T,comboboxProps:O,readOnly:A,disabled:F,filter:H,limit:z,withScrollArea:Q,maxDropdownHeight:q,size:X,searchable:K,rightSection:Z,checkIconPosition:te,withCheckIcon:J,nothingFoundMessage:B,name:V,form:_,searchValue:M,defaultSearchValue:U,onSearchChange:k,allowDeselect:D,error:le,rightSectionPointerEvents:ve,id:ie,clearable:ce,clearButtonProps:Se,hiddenInputProps:ye,renderOption:Re,onClear:je,autoComplete:qe,scrollAreaProps:nt,__defaultRightSection:Ze,__clearSection:rt,__clearable:ot,chevronColor:Pt,...ue}=o,de=x.useMemo(()=>qC(E),[E]),we=x.useMemo(()=>Fg(de),[de]),Ee=kr(ie),[$e,Pe,Te]=Fo({value:R,defaultValue:N,finalValue:null,onChange:C}),ae=typeof $e=="string"?we[$e]:void 0,Ce=_1(ae),[Ve,ht,at]=Fo({value:M,defaultValue:U,finalValue:ae?ae.label:"",onChange:k}),Fe=Gg({opened:d,defaultOpened:m,onDropdownOpen:()=>{v==null||v(),Fe.updateSelectedOptionIndex("active",{scrollIntoView:!0})},onDropdownClose:()=>{h==null||h(),Fe.resetSelectedOption()}}),Be=ut=>{ht(ut),Fe.resetSelectedOption()},{resolvedClassNames:Le,resolvedStyles:ss}=es({props:o,styles:l,classNames:s});x.useEffect(()=>{j&&Fe.selectFirstOption()},[j,Ve]),x.useEffect(()=>{R===null&&Be(""),typeof R=="string"&&ae&&((Ce==null?void 0:Ce.value)!==ae.value||(Ce==null?void 0:Ce.label)!==ae.label)&&Be(ae.label)},[R,ae]),x.useEffect(()=>{var ut;!Te&&!at&&Be(typeof $e=="string"&&((ut=we[$e])==null?void 0:ut.label)||"")},[E,$e]);const ls=S.jsx(ze.ClearButton,{...Se,onClear:()=>{Pe(null,null),Be(""),je==null||je()}}),ri=ce&&!!$e&&!F&&!A;return S.jsxs(S.Fragment,{children:[S.jsxs(ze,{store:Fe,__staticSelector:"Select",classNames:Le,styles:ss,unstyled:u,readOnly:A,onOptionSubmit:ut=>{T==null||T(ut);const Wt=D&&we[ut].value===$e?null:we[ut],Tr=Wt?Wt.value:null;Tr!==$e&&Pe(Tr,Wt),!Te&&Be(typeof Tr=="string"&&(Wt==null?void 0:Wt.label)||""),Fe.closeDropdown()},size:X,...O,children:[S.jsx(ze.Target,{targetType:K?"input":"button",autoComplete:qe,children:S.jsx(Zn,{id:Ee,ref:r,__defaultRightSection:S.jsx(ze.Chevron,{size:X,error:le,unstyled:u,color:Pt}),__clearSection:ls,__clearable:ri,rightSection:Z,rightSectionPointerEvents:ve||(ri?"all":"none"),...ue,size:X,__staticSelector:"Select",disabled:F,readOnly:A||!K,value:Ve,onChange:ut=>{Be(ut.currentTarget.value),Fe.openDropdown(),j&&Fe.selectFirstOption()},onFocus:ut=>{K&&Fe.openDropdown(),g==null||g(ut)},onBlur:ut=>{var Wt;K&&Fe.closeDropdown(),Be($e!=null&&((Wt=we[$e])==null?void 0:Wt.label)||""),y==null||y(ut)},onClick:ut=>{K?Fe.openDropdown():Fe.toggleDropdown(),w==null||w(ut)},classNames:Le,styles:ss,unstyled:u,pointer:!K,error:le})}),S.jsx(SE,{data:de,hidden:A||F,filter:H,search:Ve,limit:z,hiddenWhenEmpty:!B,withScrollArea:Q,maxDropdownHeight:q,filterOptions:K&&(ae==null?void 0:ae.label)!==Ve,value:$e,checkIconPosition:te,withCheckIcon:J,nothingFoundMessage:B,unstyled:u,labelId:ue.label?`${Ee}-label`:void 0,"aria-label":ue.label?void 0:ue["aria-label"],renderOption:Re,scrollAreaProps:nt})]}),S.jsx(ze.HiddenInput,{value:$e,name:V,form:_,disabled:F,...ye})]})});ud.classes={...Zn.classes,...ze.classes};ud.displayName="@mantine/core/Select";var cy={root:"m_6d731127"};const WR={gap:"md",align:"stretch",justify:"flex-start"},HR=(t,{gap:r,align:o,justify:s})=>({root:{"--stack-gap":Uo(r),"--stack-align":o,"--stack-justify":s}}),Kn=be((t,r)=>{const o=se("Stack",WR,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,align:h,justify:v,gap:g,variant:y,...w}=o,C=Ie({name:"Stack",props:o,classes:cy,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:HR});return S.jsx(fe,{ref:r,...C("root"),variant:y,...w})});Kn.classes=cy;Kn.displayName="@mantine/core/Stack";const UR={},ya=be((t,r)=>{const o=se("TextInput",UR,t);return S.jsx(Zn,{component:"input",ref:r,...o,__staticSelector:"TextInput"})});ya.classes=Zn.classes;ya.displayName="@mantine/core/TextInput";function GR(t){let r=t,o=!1;const s=new Set;return{getState(){return r},updateState(l){r=typeof l=="function"?l(r):l},setState(l){this.updateState(l),s.forEach(u=>u(r))},initialize(l){o||(r=l,o=!0)},subscribe(l){return s.add(l),()=>s.delete(l)}}}function YR(t){return x.useSyncExternalStore(t.subscribe,()=>t.getState(),()=>t.getState())}function XR(t,r,o){const s=[],l=[],u={};for(const c of t){const d=c.position||r;u[d]=u[d]||0,u[d]+=1,u[d]<=o?l.push(c):s.push(c)}return{notifications:l,queue:s}}const KR=()=>GR({notifications:[],queue:[],defaultPosition:"bottom-right",limit:5}),no=KR(),QR=(t=no)=>YR(t);function ni(t,r){const o=t.getState(),s=r([...o.notifications,...o.queue]),l=XR(s,o.defaultPosition,o.limit);t.setState({notifications:l.notifications,queue:l.queue,limit:o.limit,defaultPosition:o.defaultPosition})}function qR(t,r=no){const o=t.id||vv();return ni(r,s=>t.id&&s.some(l=>l.id===t.id)?s:[...s,{...t,id:o}]),o}function fy(t,r=no){return ni(r,o=>o.filter(s=>{var l;return s.id===t?((l=s.onClose)==null||l.call(s,s),!1):!0})),t}function ZR(t,r=no){return ni(r,o=>o.map(s=>s.id===t.id?{...s,...t}:s)),t.id}function JR(t=no){ni(t,()=>[])}function e2(t=no){ni(t,r=>r.slice(0,t.getState().limit))}const yt={show:qR,hide:fy,update:ZR,clean:JR,cleanQueue:e2,updateState:ni};function Zc(t,r){return Zc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(o,s){return o.__proto__=s,o},Zc(t,r)}function dy(t,r){t.prototype=Object.create(r.prototype),t.prototype.constructor=t,Zc(t,r)}const ev={disabled:!1},Dl=st.createContext(null);var t2=function(r){return r.scrollTop},Gi="unmounted",Ur="exited",Gr="entering",Ao="entered",Jc="exiting",er=(function(t){dy(r,t);function r(s,l){var u;u=t.call(this,s,l)||this;var c=l,d=c&&!c.isMounting?s.enter:s.appear,m;return u.appearStatus=null,s.in?d?(m=Ur,u.appearStatus=Gr):m=Ao:s.unmountOnExit||s.mountOnEnter?m=Gi:m=Ur,u.state={status:m},u.nextCallback=null,u}r.getDerivedStateFromProps=function(l,u){var c=l.in;return c&&u.status===Gi?{status:Ur}:null};var o=r.prototype;return o.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},o.componentDidUpdate=function(l){var u=null;if(l!==this.props){var c=this.state.status;this.props.in?c!==Gr&&c!==Ao&&(u=Gr):(c===Gr||c===Ao)&&(u=Jc)}this.updateStatus(!1,u)},o.componentWillUnmount=function(){this.cancelNextCallback()},o.getTimeouts=function(){var l=this.props.timeout,u,c,d;return u=c=d=l,l!=null&&typeof l!="number"&&(u=l.exit,c=l.enter,d=l.appear!==void 0?l.appear:c),{exit:u,enter:c,appear:d}},o.updateStatus=function(l,u){if(l===void 0&&(l=!1),u!==null)if(this.cancelNextCallback(),u===Gr){if(this.props.unmountOnExit||this.props.mountOnEnter){var c=this.props.nodeRef?this.props.nodeRef.current:Ui.findDOMNode(this);c&&t2(c)}this.performEnter(l)}else this.performExit();else this.props.unmountOnExit&&this.state.status===Ur&&this.setState({status:Gi})},o.performEnter=function(l){var u=this,c=this.props.enter,d=this.context?this.context.isMounting:l,m=this.props.nodeRef?[d]:[Ui.findDOMNode(this),d],h=m[0],v=m[1],g=this.getTimeouts(),y=d?g.appear:g.enter;if(!l&&!c||ev.disabled){this.safeSetState({status:Ao},function(){u.props.onEntered(h)});return}this.props.onEnter(h,v),this.safeSetState({status:Gr},function(){u.props.onEntering(h,v),u.onTransitionEnd(y,function(){u.safeSetState({status:Ao},function(){u.props.onEntered(h,v)})})})},o.performExit=function(){var l=this,u=this.props.exit,c=this.getTimeouts(),d=this.props.nodeRef?void 0:Ui.findDOMNode(this);if(!u||ev.disabled){this.safeSetState({status:Ur},function(){l.props.onExited(d)});return}this.props.onExit(d),this.safeSetState({status:Jc},function(){l.props.onExiting(d),l.onTransitionEnd(c.exit,function(){l.safeSetState({status:Ur},function(){l.props.onExited(d)})})})},o.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},o.safeSetState=function(l,u){u=this.setNextCallback(u),this.setState(l,u)},o.setNextCallback=function(l){var u=this,c=!0;return this.nextCallback=function(d){c&&(c=!1,u.nextCallback=null,l(d))},this.nextCallback.cancel=function(){c=!1},this.nextCallback},o.onTransitionEnd=function(l,u){this.setNextCallback(u);var c=this.props.nodeRef?this.props.nodeRef.current:Ui.findDOMNode(this),d=l==null&&!this.props.addEndListener;if(!c||d){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var m=this.props.nodeRef?[this.nextCallback]:[c,this.nextCallback],h=m[0],v=m[1];this.props.addEndListener(h,v)}l!=null&&setTimeout(this.nextCallback,l)},o.render=function(){var l=this.state.status;if(l===Gi)return null;var u=this.props,c=u.children;u.in,u.mountOnEnter,u.unmountOnExit,u.appear,u.enter,u.exit,u.timeout,u.addEndListener,u.onEnter,u.onEntering,u.onEntered,u.onExit,u.onExiting,u.onExited,u.nodeRef;var d=Jg(u,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return st.createElement(Dl.Provider,{value:null},typeof c=="function"?c(l,d):st.cloneElement(st.Children.only(c),d))},r})(st.Component);er.contextType=Dl;er.propTypes={};function Io(){}er.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Io,onEntering:Io,onEntered:Io,onExit:Io,onExiting:Io,onExited:Io};er.UNMOUNTED=Gi;er.EXITED=Ur;er.ENTERING=Gr;er.ENTERED=Ao;er.EXITING=Jc;function n2(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function cd(t,r){var o=function(u){return r&&x.isValidElement(u)?r(u):u},s=Object.create(null);return t&&x.Children.map(t,function(l){return l}).forEach(function(l){s[l.key]=o(l)}),s}function r2(t,r){t=t||{},r=r||{};function o(v){return v in r?r[v]:t[v]}var s=Object.create(null),l=[];for(var u in t)u in r?l.length&&(s[u]=l,l=[]):l.push(u);var c,d={};for(var m in r){if(s[m])for(c=0;c(o[s.position||r].push(s),o),py.reduce((o,s)=>(o[s]=[],o),{}))}const tv={left:"translateX(-100%)",right:"translateX(100%)","top-center":"translateY(-100%)","bottom-center":"translateY(100%)"},u2={left:"translateX(0)",right:"translateX(0)","top-center":"translateY(0)","bottom-center":"translateY(0)"};function c2({state:t,maxHeight:r,position:o,transitionDuration:s}){const[l,u]=o.split("-"),c=u==="center"?`${l}-center`:u,d={opacity:0,maxHeight:r,transform:tv[c],transitionDuration:`${s}ms, ${s}ms, ${s}ms`,transitionTimingFunction:"cubic-bezier(.51,.3,0,1.21), cubic-bezier(.51,.3,0,1.21), linear",transitionProperty:"opacity, transform, max-height"},m={opacity:1,transform:u2[c]},h={opacity:0,maxHeight:0,transform:tv[c]};return{...d,...{entering:m,entered:m,exiting:h,exited:h}[t]}}function f2(t,r){return typeof r=="number"?r:r===!1||t===!1?!1:t}const my=x.forwardRef(({data:t,onHide:r,autoClose:o,...s},l)=>{const{autoClose:u,message:c,...d}=t,m=f2(o,t.autoClose),h=x.useRef(-1),v=()=>window.clearTimeout(h.current),g=()=>{r(t.id),v()},y=()=>{typeof m=="number"&&(h.current=window.setTimeout(g,m))};return x.useEffect(()=>{var w;(w=t.onOpen)==null||w.call(t,t)},[]),x.useEffect(()=>(y(),v),[m]),S.jsx(rd,{...s,...d,onClose:g,ref:l,onMouseEnter:v,onMouseLeave:y,children:c})});my.displayName="@mantine/notifications/NotificationContainer";var hy={root:"m_b37d9ac7",notification:"m_5ed0edd0"};const d2=er,p2={position:"bottom-right",autoClose:4e3,transitionDuration:250,containerWidth:440,notificationMaxHeight:200,limit:5,zIndex:Sn("overlay"),store:no,withinPortal:!0},m2=(t,{zIndex:r,containerWidth:o})=>({root:{"--notifications-z-index":r==null?void 0:r.toString(),"--notifications-container-width":Y(o)}}),tr=be((t,r)=>{const o=se("Notifications",p2,t),{classNames:s,className:l,style:u,styles:c,unstyled:d,vars:m,position:h,autoClose:v,transitionDuration:g,containerWidth:y,notificationMaxHeight:w,limit:C,zIndex:E,store:R,portalProps:N,withinPortal:j,...T}=o,O=rn(),A=QR(R),F=k1(),H=Bl(),z=x.useRef({}),Q=x.useRef(0),X=(O.respectReducedMotion?H:!1)?1:g,K=Ie({name:"Notifications",classes:hy,props:o,className:l,style:u,classNames:s,styles:c,unstyled:d,vars:m,varsResolver:m2});x.useEffect(()=>{R==null||R.updateState(J=>({...J,limit:C||5,defaultPosition:h}))},[C,h]),Hn(()=>{A.notifications.length>Q.current&&setTimeout(()=>F(),0),Q.current=A.notifications.length},[A.notifications]);const Z=a2(A.notifications,h),te=py.reduce((J,B)=>(J[B]=Z[B].map(({style:V,..._})=>S.jsx(d2,{timeout:X,onEnter:()=>z.current[_.id].offsetHeight,nodeRef:{current:z.current[_.id]},children:M=>S.jsx(my,{ref:U=>{z.current[_.id]=U},data:_,onHide:U=>fy(U,R),autoClose:v,...K("notification",{style:{...c2({state:M,position:B,transitionDuration:X,maxHeight:w}),...V}})})},_.id)),J),{});return S.jsxs(eo,{withinPortal:j,...N,children:[S.jsx(fe,{...K("root"),"data-position":"top-center",ref:r,...T,children:S.jsx(Sr,{children:te["top-center"]})}),S.jsx(fe,{...K("root"),"data-position":"top-left",...T,children:S.jsx(Sr,{children:te["top-left"]})}),S.jsx(fe,{...K("root",{className:zo.classNames.fullWidth}),"data-position":"top-right",...T,children:S.jsx(Sr,{children:te["top-right"]})}),S.jsx(fe,{...K("root",{className:zo.classNames.fullWidth}),"data-position":"bottom-right",...T,children:S.jsx(Sr,{children:te["bottom-right"]})}),S.jsx(fe,{...K("root"),"data-position":"bottom-left",...T,children:S.jsx(Sr,{children:te["bottom-left"]})}),S.jsx(fe,{...K("root"),"data-position":"bottom-center",...T,children:S.jsx(Sr,{children:te["bottom-center"]})})]})});tr.classes=hy;tr.displayName="@mantine/notifications/Notifications";tr.show=yt.show;tr.hide=yt.hide;tr.update=yt.update;tr.clean=yt.clean;tr.cleanQueue=yt.cleanQueue;tr.updateState=yt.updateState;/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */var h2={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const On=(t,r,o,s)=>{const l=x.forwardRef(({color:u="currentColor",size:c=24,stroke:d=2,title:m,className:h,children:v,...g},y)=>x.createElement("svg",{ref:y,...h2[t],width:c,height:c,className:["tabler-icon",`tabler-icon-${r}`,h].join(" "),strokeWidth:d,stroke:u,...g},[m&&x.createElement("title",{key:"svg-title"},m),...s.map(([w,C])=>x.createElement(w,C)),...Array.isArray(v)?v:[v]]));return l.displayName=`${o}`,l};/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const v2=[["path",{d:"M3 12h4l3 8l4 -16l3 8h4",key:"svg-0"}]],nv=On("outline","activity","Activity",v2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const g2=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 8v4",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]],vy=On("outline","alert-circle","AlertCircle",g2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const y2=[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]],gy=On("outline","chevron-down","ChevronDown",y2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const w2=[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]],yy=On("outline","chevron-right","ChevronRight",w2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const x2=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]],S2=On("outline","info-circle","InfoCircle",x2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const b2=[["path",{d:"M5 12l14 0",key:"svg-0"}]],C2=On("outline","minus","Minus",b2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const E2=[["path",{d:"M7 4v16l13 -8l-13 -8",key:"svg-0"}]],rv=On("outline","player-play","PlayerPlay",E2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const R2=[["path",{d:"M12 5l0 14",key:"svg-0"}],["path",{d:"M5 12l14 0",key:"svg-1"}]],k2=On("outline","plus","Plus",R2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const N2=[["path",{d:"M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4",key:"svg-0"}],["path",{d:"M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4",key:"svg-1"}]],ef=On("outline","refresh","Refresh",N2);/** - * @license @tabler/icons-react v3.44.0 - MIT - * - * This source code is licensed under the MIT license. - * See the LICENSE file in the root directory of this source tree. - */const P2=[["path",{d:"M4 7l16 0",key:"svg-0"}],["path",{d:"M10 11l0 6",key:"svg-1"}],["path",{d:"M14 11l0 6",key:"svg-2"}],["path",{d:"M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12",key:"svg-3"}],["path",{d:"M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3",key:"svg-4"}]],_2=On("outline","trash","Trash",P2),wy="/dash/logo.png",T2=()=>localStorage.getItem("mv_token"),j2=t=>localStorage.setItem("mv_token",t),xy=()=>localStorage.removeItem("mv_token");let Ll=null;async function ro(t,{method:r="GET",body:o=null}={}){const s={"Content-Type":"application/json"},l=T2();l&&(s.Authorization=`Bearer ${l}`);const u=await fetch(t,{method:r,headers:s,body:o!==null?JSON.stringify(o):void 0});if(u.status===401){xy(),Ll&&Ll();const c=new Error("Session expired");throw c.status=401,c}return u}async function $2(t,r){const o=await fetch("/dash/api/auth/token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:t,password:r})});if(!o.ok){const s=await o.json().catch(()=>({}));throw new Error(s.error||"Invalid credentials")}j2((await o.json()).access)}const O2=async()=>{const t=await ro("/dash/api/fields");if(!t.ok)throw new Error("Failed to load fields");return t.json()},I2=async()=>{const t=await ro("/dash/api/config");if(!t.ok)throw new Error("Failed to load config");return t.json()},Nl=async t=>{const r=await ro("/dash/api/config",{method:"PATCH",body:t});if(!r.ok){const o=await r.json().catch(()=>({}));throw new Error(o.error||"Save failed")}},M2=async()=>(await ro("/dash/api/refresh",{method:"POST"})).json(),Sy=async()=>(await ro("/dash/api/streams")).json(),ov=async t=>(await ro("/dash/api/streams/restart",{method:"POST",body:t!=null?{n:t}:{}})).json(),A2=async(t,r)=>(await ro("/dash/api/streams/restart",{method:"POST",body:{n:t,channel_idx:r}})).json(),D2=/^(video_encoder|multiview_\d+_(selector_type|channel_count|epg_source_mode))$/,L2=t=>D2.test(t);function z2({label:t,description:r}){return r?S.jsxs(Xt,{gap:4,align:"center",wrap:"nowrap",children:[S.jsx("span",{children:t}),S.jsx(is,{label:r,multiline:!0,maw:260,withArrow:!0,position:"top-start",events:{hover:!0,focus:!0,touch:!0},children:S.jsx(jn,{size:"xs",variant:"transparent",c:"dimmed",tabIndex:-1,style:{cursor:"default",flexShrink:0},children:S.jsx(S2,{size:13})})})]}):t}function tf({field:t,value:r,onChange:o}){const s={label:S.jsx(z2,{label:t.label,description:t.description})};switch(t.type){case"select":{const l=new Set,u=(t.options??[]).reduce((c,d)=>{const m=String(d.value);return l.has(m)||(l.add(m),c.push({value:m,label:d.label})),c},[]);return S.jsx(ud,{...s,data:u,value:String(r??t.default??""),onChange:o,allowDeselect:!1})}case"number":return S.jsx(id,{...s,value:r??t.default??0,min:t.min,max:t.max,placeholder:t.placeholder,onChange:o});case"string":return S.jsx(ya,{...s,value:r??t.default??"",placeholder:t.placeholder,onChange:l=>o(l.currentTarget.value)});default:return null}}function by(t,r){const o=x.useRef({});return x.useCallback(async(s,l,u)=>{t({[s]:l});const c=async()=>{try{await Nl({[s]:l}),yt.show({message:"Saved",color:"green",autoClose:1500}),L2(s)&&await r()}catch(d){yt.show({title:"Save failed",message:d.message,color:"red",autoClose:4e3})}};clearTimeout(o.current[s]),u?await c():o.current[s]=setTimeout(c,700)},[t,r])}function F2({onLogin:t}){const[r,o]=x.useState(""),[s,l]=x.useState(""),[u,c]=x.useState(""),[d,m]=x.useState(!1);async function h(v){v.preventDefault(),m(!0),c("");try{await $2(r,s),t()}catch(g){c(g.message||"Login failed")}finally{m(!1)}}return S.jsx(qi,{mih:"100dvh",bg:"dark.8",children:S.jsxs(Kn,{align:"center",gap:"lg",w:340,px:"md",children:[S.jsx("img",{src:wy,style:{height:40,width:"auto"},alt:"Multiview"}),S.jsx(kt,{size:"sm",c:"dimmed",ta:"center",children:"Sign in with your Dispatcharr credentials. The account must have permission to modify plugin settings."}),S.jsx(Qo,{withBorder:!0,p:"xl",radius:"md",w:"100%",children:S.jsx("form",{onSubmit:h,children:S.jsxs(Kn,{gap:"sm",children:[u&&S.jsx(sa,{icon:S.jsx(vy,{size:16}),color:"red",variant:"light",py:"xs",children:u}),S.jsx(ya,{label:"Username",autoComplete:"username",value:r,onChange:v=>o(v.currentTarget.value),required:!0}),S.jsx(sd,{label:"Password",autoComplete:"current-password",value:s,onChange:v=>l(v.currentTarget.value),required:!0}),S.jsx(wt,{type:"submit",loading:d,fullWidth:!0,mt:"xs",children:"Sign in"})]})})})]})})}const B2=/^Layout\s+\d+[:\s]*/i,V2=t=>({...t,label:t.label.replace(B2,"")});function W2({fields:t,warnings:r,settings:o,onSettingsChange:s,onFieldsReload:l}){const[u,c]=x.useState(!1),d=by(s,l);return S.jsxs(Kn,{gap:"xs",children:[r.map(m=>S.jsxs(sa,{icon:S.jsx(vy,{size:16}),color:"yellow",variant:"light",children:[S.jsx(kt,{size:"sm",fw:500,children:m.label}),m.description&&S.jsx(kt,{size:"xs",c:"dimmed",mt:2,children:m.description})]},m.id)),S.jsxs(Qo,{withBorder:!0,radius:"md",children:[S.jsx(Xn,{w:"100%",p:"md",onClick:()=>c(m=>!m),children:S.jsxs(Xt,{justify:"space-between",children:[S.jsx(kt,{size:"sm",fw:600,children:"Global Settings"}),u?S.jsx(gy,{size:16}):S.jsx(yy,{size:16})]})}),S.jsx(hf,{in:u,children:S.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(280px, 1fr))",gap:"var(--mantine-spacing-sm)",padding:"var(--mantine-spacing-md)",paddingTop:0},children:t.map(m=>S.jsx(tf,{field:m,value:o[m.id],onChange:h=>d(m.id,h,m.type!=="string")},m.id))})})]})]})}function H2(t,r){const o=[],s=[],l=[];let u=null,c=null;for(const d of t){const m=d.id.replace(`multiview_${r}_`,"");["name","layout","selector_type"].includes(m)?o.push(d):m==="channel_count"?c=d:m==="audio_source"?u=d:m.startsWith("epg_")?l.push(d):s.push(d)}return{base:o,channels:s,epg:l,audioSource:u,channelCountField:c}}function U2({n:t,fields:r,settings:o,isLast:s,onSettingsChange:l,onFieldsReload:u,onRemove:c,onChannelCountChange:d}){const[m,h]=x.useState(!1),[v,g]=x.useState(!1),y=by(l,u),{base:w,channels:C,epg:E,audioSource:R,channelCountField:N}=H2(r.map(V2),t),j=o[`multiview_${t}_name`]||`Multiview ${t}`,T=o[`multiview_${t}_channel_count`]??(N==null?void 0:N.default)??4,O=(N==null?void 0:N.min)??2,A=(N==null?void 0:N.max)??9;function F(H){return H.length?S.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(280px, 1fr))",gap:"var(--mantine-spacing-sm)"},children:H.map(z=>S.jsx(tf,{field:z,value:o[z.id],onChange:Q=>y(z.id,Q,z.type!=="string")},z.id))}):null}return S.jsxs(aa,{withBorder:!0,radius:"md",p:0,children:[S.jsx(Xn,{w:"100%",p:"md",onClick:()=>g(H=>!H),children:S.jsxs(Xt,{justify:"space-between",children:[S.jsxs(Xt,{gap:"xs",children:[v?S.jsx(gy,{size:16}):S.jsx(yy,{size:16}),S.jsxs(kt,{fw:600,children:["Layout ",t,": ",j]})]}),S.jsx(wt,{size:"xs",color:"red",variant:"subtle",leftSection:S.jsx(_2,{size:14}),style:{visibility:s?"visible":"hidden"},onClick:H=>{H.stopPropagation(),h(!0)},children:"Remove"})]})}),S.jsxs(Kt,{opened:m,onClose:()=>h(!1),title:`Remove Layout ${t}`,size:"xs",centered:!0,children:[S.jsxs(kt,{size:"sm",children:["Remove Layout ",t,": ",j,"? This cannot be undone."]}),S.jsxs(Xt,{mt:"md",justify:"flex-end",children:[S.jsx(wt,{variant:"default",onClick:()=>h(!1),children:"Cancel"}),S.jsx(wt,{color:"red",onClick:()=>{h(!1),c()},children:"Remove"})]})]}),S.jsx(hf,{in:v,children:S.jsxs(Kn,{gap:"md",p:"md",pt:0,children:[F(w),(C.length>0||N)&&S.jsxs(S.Fragment,{children:[S.jsx(Al,{label:S.jsxs(Xt,{gap:4,align:"center",children:[S.jsx(kt,{size:"xs",c:"dimmed",children:"Channels"}),S.jsx(jn,{size:"xs",variant:"subtle",disabled:T<=O,onClick:()=>d(-1),children:S.jsx(C2,{size:10})}),S.jsx(kt,{size:"xs",fw:600,w:14,ta:"center",children:T}),S.jsx(jn,{size:"xs",variant:"subtle",disabled:T>=A,onClick:()=>d(1),children:S.jsx(k2,{size:10})})]}),labelPosition:"left"}),F(C)]}),R&&S.jsx(tf,{field:R,value:o[R.id],onChange:H=>y(R.id,H,!0)}),E.length>0&&S.jsxs(S.Fragment,{children:[S.jsx(Al,{label:"EPG",labelPosition:"left"}),F(E)]})]})})]})}function G2({opened:t,onClose:r,settings:o}){const[s,l]=x.useState([]),[u,c]=x.useState({}),[d,m]=x.useState(null),h=x.useCallback(async()=>{try{const y=await Sy();l(y.active??[])}catch{}},[]);x.useEffect(()=>{if(!t)return;h();const y=setInterval(h,4e3);return()=>clearInterval(y)},[t,h]);const v=async(y,w,C)=>{c(E=>({...E,[y]:!0}));try{await w(),yt.show({message:C,color:"blue",autoClose:2e3}),await h()}catch(E){yt.show({title:"Failed",message:E.message,color:"red",autoClose:4e3})}finally{c(E=>({...E,[y]:!1}))}},g=(y,w,C,E,R)=>m({title:y,message:w,confirmLabel:C,color:E,onConfirm:R});return S.jsxs(Kt,{opened:t,onClose:r,title:"Active Multiviews",size:"sm",centered:!0,children:[S.jsx(Cy,{action:d,onClose:()=>m(null)}),s.length===0?S.jsx(kt,{size:"sm",c:"dimmed",children:"No multiviews currently active."}):S.jsx(Kn,{gap:"md",children:s.map(({n:y,channels:w})=>{const C=o[`multiview_${y}_name`]||`Multiview ${y}`;return S.jsxs("div",{children:[S.jsxs(Xt,{justify:"space-between",mb:6,children:[S.jsx(kt,{size:"sm",fw:600,children:C}),S.jsx(wt,{size:"xs",color:"orange",variant:"subtle",leftSection:S.jsx(rv,{size:12}),loading:u[`${y}`],onClick:()=>g("Reload",`Reload ${C}? The compositor will restart and active players will reconnect. Some players may buffer, stutter, or require a manual refresh depending on how they handle stream interruptions.`,"Reload","orange",()=>v(`${y}`,()=>ov(y),`${C} reloaded`)),children:"Reload"})]}),S.jsx(Kn,{gap:4,pl:"sm",children:(w??[]).map(({idx:E,name:R})=>S.jsxs(Xt,{justify:"space-between",children:[S.jsx(kt,{size:"xs",c:"dimmed",children:R}),S.jsx(wt,{size:"xs",variant:"subtle",leftSection:S.jsx(ef,{size:11}),loading:u[`${y}-${E}`],onClick:()=>g("Reconnect",`Reconnect ${R}?`,"Reconnect","blue",()=>v(`${y}-${E}`,()=>A2(y,E),`${R} reconnecting`)),children:"Reconnect"})]},E))})]},y)})}),s.length>1&&S.jsx(wt,{fullWidth:!0,mt:"md",color:"orange",variant:"light",leftSection:S.jsx(rv,{size:14}),loading:u.all,onClick:()=>g("Reload All",`Reload all ${s.length} multiviews? All compositors will restart and active players will reconnect. Some players may buffer, stutter, or require a manual refresh depending on how they handle stream interruptions.`,"Reload All","orange",()=>v("all",()=>ov(null),`${s.length} multiviews reloaded`)),children:"Reload All"})]})}function Cy({action:t,onClose:r}){return t?S.jsxs(Kt,{opened:!!t,onClose:r,title:t.title,size:"sm",centered:!0,children:[S.jsx(kt,{size:"sm",children:t.message}),S.jsxs(Xt,{mt:"md",justify:"flex-end",children:[S.jsx(wt,{variant:"default",onClick:r,children:"Cancel"}),S.jsx(wt,{color:t.color??"blue",loading:t.loading,onClick:()=>{r(),t.onConfirm()},children:t.confirmLabel??"Confirm"})]})]}):null}function Y2(){const[t,r]=x.useState(!!localStorage.getItem("mv_token")),[o,s]=x.useState(null),[l,u]=x.useState({}),[c,d]=x.useState(""),[m,h]=x.useState(!1),[v,g]=x.useState(!1),[y,w]=x.useState(0),[C,E]=x.useState(null),R=x.useCallback(async()=>{try{const[X,K]=await Promise.all([O2(),I2()]);s(X);const Z=K.settings??{},te=[...X.global??[],...(X.layouts??[]).flatMap(B=>B.fields)],J={...Z};for(const B of te)!(B.id in J)&&B.default!==void 0&&(J[B.id]=B.default);u(J)}catch(X){X.status!==401&&d(X.message)}},[]);x.useEffect(()=>{t&&R()},[t,R]),x.useEffect(()=>{if(!t)return;const X=async()=>{try{const Z=await Sy();w((Z.active??[]).length)}catch{}};X();const K=setInterval(X,5e3);return()=>clearInterval(K)},[t]);const N=x.useCallback(X=>u(K=>({...K,...X})),[]);async function j(X,K){const Z=`multiview_${X}_channel_count`,te=(l[Z]??4)+K;try{await Nl({[Z]:te}),await R()}catch(J){yt.show({title:"Failed",message:J.message,color:"red",autoClose:4e3})}}async function T(){const X=((o==null?void 0:o.layout_count)??1)+1,K={multiview_count:X,[`multiview_${X}_name`]:`Multiview ${X}`,[`multiview_${X}_layout`]:"auto",[`multiview_${X}_selector_type`]:"classic",[`multiview_${X}_channel_count`]:4,[`multiview_${X}_epg_source_mode`]:"dummy"};try{await Nl(K),await R(),yt.show({message:`Layout ${X} added`,color:"green",autoClose:2e3})}catch(Z){yt.show({title:"Failed",message:Z.message,color:"red",autoClose:4e3})}}async function O(X){const K=(o==null?void 0:o.layout_count)??1;if(K<=1)return;const Z=Object.fromEntries(Object.keys(l).filter(te=>te.startsWith(`multiview_${X}_`)).map(te=>[te,null]));Z.multiview_count=K-1;try{await Nl(Z),await R(),yt.show({message:`Layout ${X} removed`,color:"green",autoClose:2e3})}catch(te){yt.show({title:"Failed",message:te.message,color:"red",autoClose:4e3})}}async function A(){h(!0);try{const X=await M2();yt.show({message:X.message||"M3U & EPG refreshed",color:X.status==="success"?"green":"red",autoClose:3e3})}catch(X){yt.show({title:"Refresh failed",message:X.message,color:"red",autoClose:4e3})}finally{h(!1)}}function F(){xy(),r(!1),s(null),u({})}if(x.useEffect(()=>(Ll=()=>{r(!1),s(null),u({})},()=>{Ll=null}),[]),!t)return S.jsx(F2,{onLogin:()=>r(!0)});if(c)return S.jsx(qi,{mih:"100dvh",children:S.jsx(kt,{c:"red",children:c})});if(!o)return S.jsx(qi,{mih:"100dvh",children:S.jsx(to,{})});const{warnings:H=[],global:z=[],layouts:Q=[],layout_count:q}=o;return S.jsxs(yn,{header:{height:56},children:[S.jsx(yn.Header,{children:S.jsxs(Xt,{h:"100%",px:"md",justify:"space-between",wrap:"nowrap",children:[S.jsx(nd,{src:wy,h:32,w:"auto",style:{flexShrink:0}}),S.jsxs(Xt,{gap:"xs",wrap:"nowrap",children:[S.jsxs(wt,{size:"sm",leftSection:S.jsx(nv,{size:16}),color:y>0?"teal":void 0,variant:y>0?"filled":"default",styles:y>0?{root:{"--button-bg":"var(--mantine-color-teal-9)","--button-hover":"var(--mantine-color-teal-8)"}}:void 0,onClick:()=>g(!0),visibleFrom:"xs",children:["Streams",y>0?` (${y})`:""]}),S.jsx(jn,{size:"lg",color:y>0?"teal":void 0,variant:y>0?"filled":"default",styles:y>0?{root:{"--button-bg":"var(--mantine-color-teal-9)","--button-hover":"var(--mantine-color-teal-8)"}}:void 0,onClick:()=>g(!0),hiddenFrom:"xs","aria-label":"Active Streams",children:S.jsx(nv,{size:18})}),S.jsx(wt,{size:"sm",leftSection:S.jsx(ef,{size:16}),loading:m,onClick:()=>E({title:"Refresh M3U & EPG",confirmLabel:"Refresh",color:"blue",message:"Regenerate the M3U playlist and sync EPG data now?",onConfirm:A}),visibleFrom:"xs",children:"Refresh M3U & EPG"}),S.jsx(jn,{size:"lg",variant:"default",loading:m,hiddenFrom:"xs","aria-label":"Refresh M3U & EPG",onClick:()=>E({title:"Refresh M3U & EPG",confirmLabel:"Refresh",color:"blue",message:"Regenerate the M3U playlist and sync EPG data now?",onConfirm:A}),children:S.jsx(ef,{size:18})}),S.jsx(wt,{size:"sm",variant:"subtle",onClick:F,children:"Logout"})]})]})}),S.jsx(yn.Main,{children:S.jsxs(Kn,{p:"md",maw:860,mx:"auto",children:[S.jsx(W2,{fields:z,warnings:H,settings:l,onSettingsChange:N,onFieldsReload:R}),S.jsx(kt,{size:"xs",tt:"uppercase",fw:700,c:"dimmed",mt:"sm",children:"Layouts"}),Q.map(({n:X,fields:K})=>S.jsx(U2,{n:X,fields:K,settings:l,isLast:X===q&&q>1,onSettingsChange:N,onFieldsReload:R,onRemove:()=>O(X),onChannelCountChange:Z=>j(X,Z)},X)),S.jsx(wt,{variant:"default",onClick:T,children:"+ Add Layout"})]})}),S.jsx(G2,{opened:v,onClose:()=>g(!1),settings:l}),S.jsx(Cy,{action:C,onClose:()=>E(null)})]})}Nw.createRoot(document.getElementById("root")).render(S.jsx(x.StrictMode,{children:S.jsxs(_v,{defaultColorScheme:"dark",children:[S.jsx(tr,{position:"bottom-right"}),S.jsx(Y2,{})]})})); diff --git a/plugins/multiview/dash/static/assets/index-CKoNYPy6.css b/plugins/multiview/dash/static/assets/index-CKoNYPy6.css deleted file mode 100644 index e32b24a..0000000 --- a/plugins/multiview/dash/static/assets/index-CKoNYPy6.css +++ /dev/null @@ -1 +0,0 @@ -*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}body{margin:0;font-family:var(--mantine-font-family);font-size:var(--mantine-font-size-md);line-height:var(--mantine-line-height);background-color:var(--mantine-color-body);color:var(--mantine-color-text);-webkit-font-smoothing:var(--mantine-webkit-font-smoothing);-moz-osx-font-smoothing:var(--mantine-moz-font-smoothing)}@media screen and (max-device-width:31.25em){body{-webkit-text-size-adjust:100%}}@media(prefers-reduced-motion:reduce){[data-respect-reduced-motion] [data-reduce-motion]{transition:none;animation:none}}[data-mantine-color-scheme=light] .mantine-light-hidden,[data-mantine-color-scheme=dark] .mantine-dark-hidden{display:none}.mantine-focus-auto:focus-visible{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-always:focus{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-never:focus{outline:none}.mantine-active:active{transform:translateY(calc(.0625rem * var(--mantine-scale)))}fieldset:disabled .mantine-active:active{transform:none}:where([dir=rtl]) .mantine-rotate-rtl{transform:rotate(180deg)}:root{color-scheme:var(--mantine-color-scheme);--mantine-z-index-app: 100;--mantine-z-index-modal: 200;--mantine-z-index-popover: 300;--mantine-z-index-overlay: 400;--mantine-z-index-max: 9999;--mantine-scale: 1;--mantine-cursor-type: default;--mantine-webkit-font-smoothing: antialiased;--mantine-color-scheme: light dark;--mantine-moz-font-smoothing: grayscale;--mantine-color-white: #fff;--mantine-color-black: #000;--mantine-line-height: 1.55;--mantine-font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-font-family-monospace: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;--mantine-font-family-headings: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-heading-font-weight: 700;--mantine-radius-default: calc(.25rem * var(--mantine-scale));--mantine-primary-color-0: var(--mantine-color-blue-0);--mantine-primary-color-1: var(--mantine-color-blue-1);--mantine-primary-color-2: var(--mantine-color-blue-2);--mantine-primary-color-3: var(--mantine-color-blue-3);--mantine-primary-color-4: var(--mantine-color-blue-4);--mantine-primary-color-5: var(--mantine-color-blue-5);--mantine-primary-color-6: var(--mantine-color-blue-6);--mantine-primary-color-7: var(--mantine-color-blue-7);--mantine-primary-color-8: var(--mantine-color-blue-8);--mantine-primary-color-9: var(--mantine-color-blue-9);--mantine-primary-color-filled: var(--mantine-color-blue-filled);--mantine-primary-color-filled-hover: var(--mantine-color-blue-filled-hover);--mantine-primary-color-light: var(--mantine-color-blue-light);--mantine-primary-color-light-hover: var(--mantine-color-blue-light-hover);--mantine-primary-color-light-color: var(--mantine-color-blue-light-color);--mantine-breakpoint-xs: 36em;--mantine-breakpoint-sm: 48em;--mantine-breakpoint-md: 62em;--mantine-breakpoint-lg: 75em;--mantine-breakpoint-xl: 88em;--mantine-spacing-xs: calc(.625rem * var(--mantine-scale));--mantine-spacing-sm: calc(.75rem * var(--mantine-scale));--mantine-spacing-md: calc(1rem * var(--mantine-scale));--mantine-spacing-lg: calc(1.25rem * var(--mantine-scale));--mantine-spacing-xl: calc(2rem * var(--mantine-scale));--mantine-font-size-xs: calc(.75rem * var(--mantine-scale));--mantine-font-size-sm: calc(.875rem * var(--mantine-scale));--mantine-font-size-md: calc(1rem * var(--mantine-scale));--mantine-font-size-lg: calc(1.125rem * var(--mantine-scale));--mantine-font-size-xl: calc(1.25rem * var(--mantine-scale));--mantine-line-height-xs: 1.4;--mantine-line-height-sm: 1.45;--mantine-line-height-md: 1.55;--mantine-line-height-lg: 1.6;--mantine-line-height-xl: 1.65;--mantine-shadow-xs: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), 0 calc(.0625rem * var(--mantine-scale)) calc(.125rem * var(--mantine-scale)) rgba(0, 0, 0, .1);--mantine-shadow-sm: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(.625rem * var(--mantine-scale)) calc(.9375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.4375rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-md: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.25rem * var(--mantine-scale)) calc(1.5625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.625rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-lg: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.75rem * var(--mantine-scale)) calc(1.4375rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.75rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-shadow-xl: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(2.25rem * var(--mantine-scale)) calc(1.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(1.0625rem * var(--mantine-scale)) calc(1.0625rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-radius-xs: calc(.125rem * var(--mantine-scale));--mantine-radius-sm: calc(.25rem * var(--mantine-scale));--mantine-radius-md: calc(.5rem * var(--mantine-scale));--mantine-radius-lg: calc(1rem * var(--mantine-scale));--mantine-radius-xl: calc(2rem * var(--mantine-scale));--mantine-color-dark-0: #c9c9c9;--mantine-color-dark-1: #b8b8b8;--mantine-color-dark-2: #828282;--mantine-color-dark-3: #696969;--mantine-color-dark-4: #424242;--mantine-color-dark-5: #3b3b3b;--mantine-color-dark-6: #2e2e2e;--mantine-color-dark-7: #242424;--mantine-color-dark-8: #1f1f1f;--mantine-color-dark-9: #141414;--mantine-color-gray-0: #f8f9fa;--mantine-color-gray-1: #f1f3f5;--mantine-color-gray-2: #e9ecef;--mantine-color-gray-3: #dee2e6;--mantine-color-gray-4: #ced4da;--mantine-color-gray-5: #adb5bd;--mantine-color-gray-6: #868e96;--mantine-color-gray-7: #495057;--mantine-color-gray-8: #343a40;--mantine-color-gray-9: #212529;--mantine-color-red-0: #fff5f5;--mantine-color-red-1: #ffe3e3;--mantine-color-red-2: #ffc9c9;--mantine-color-red-3: #ffa8a8;--mantine-color-red-4: #ff8787;--mantine-color-red-5: #ff6b6b;--mantine-color-red-6: #fa5252;--mantine-color-red-7: #f03e3e;--mantine-color-red-8: #e03131;--mantine-color-red-9: #c92a2a;--mantine-color-pink-0: #fff0f6;--mantine-color-pink-1: #ffdeeb;--mantine-color-pink-2: #fcc2d7;--mantine-color-pink-3: #faa2c1;--mantine-color-pink-4: #f783ac;--mantine-color-pink-5: #f06595;--mantine-color-pink-6: #e64980;--mantine-color-pink-7: #d6336c;--mantine-color-pink-8: #c2255c;--mantine-color-pink-9: #a61e4d;--mantine-color-grape-0: #f8f0fc;--mantine-color-grape-1: #f3d9fa;--mantine-color-grape-2: #eebefa;--mantine-color-grape-3: #e599f7;--mantine-color-grape-4: #da77f2;--mantine-color-grape-5: #cc5de8;--mantine-color-grape-6: #be4bdb;--mantine-color-grape-7: #ae3ec9;--mantine-color-grape-8: #9c36b5;--mantine-color-grape-9: #862e9c;--mantine-color-violet-0: #f3f0ff;--mantine-color-violet-1: #e5dbff;--mantine-color-violet-2: #d0bfff;--mantine-color-violet-3: #b197fc;--mantine-color-violet-4: #9775fa;--mantine-color-violet-5: #845ef7;--mantine-color-violet-6: #7950f2;--mantine-color-violet-7: #7048e8;--mantine-color-violet-8: #6741d9;--mantine-color-violet-9: #5f3dc4;--mantine-color-indigo-0: #edf2ff;--mantine-color-indigo-1: #dbe4ff;--mantine-color-indigo-2: #bac8ff;--mantine-color-indigo-3: #91a7ff;--mantine-color-indigo-4: #748ffc;--mantine-color-indigo-5: #5c7cfa;--mantine-color-indigo-6: #4c6ef5;--mantine-color-indigo-7: #4263eb;--mantine-color-indigo-8: #3b5bdb;--mantine-color-indigo-9: #364fc7;--mantine-color-blue-0: #e7f5ff;--mantine-color-blue-1: #d0ebff;--mantine-color-blue-2: #a5d8ff;--mantine-color-blue-3: #74c0fc;--mantine-color-blue-4: #4dabf7;--mantine-color-blue-5: #339af0;--mantine-color-blue-6: #228be6;--mantine-color-blue-7: #1c7ed6;--mantine-color-blue-8: #1971c2;--mantine-color-blue-9: #1864ab;--mantine-color-cyan-0: #e3fafc;--mantine-color-cyan-1: #c5f6fa;--mantine-color-cyan-2: #99e9f2;--mantine-color-cyan-3: #66d9e8;--mantine-color-cyan-4: #3bc9db;--mantine-color-cyan-5: #22b8cf;--mantine-color-cyan-6: #15aabf;--mantine-color-cyan-7: #1098ad;--mantine-color-cyan-8: #0c8599;--mantine-color-cyan-9: #0b7285;--mantine-color-teal-0: #e6fcf5;--mantine-color-teal-1: #c3fae8;--mantine-color-teal-2: #96f2d7;--mantine-color-teal-3: #63e6be;--mantine-color-teal-4: #38d9a9;--mantine-color-teal-5: #20c997;--mantine-color-teal-6: #12b886;--mantine-color-teal-7: #0ca678;--mantine-color-teal-8: #099268;--mantine-color-teal-9: #087f5b;--mantine-color-green-0: #ebfbee;--mantine-color-green-1: #d3f9d8;--mantine-color-green-2: #b2f2bb;--mantine-color-green-3: #8ce99a;--mantine-color-green-4: #69db7c;--mantine-color-green-5: #51cf66;--mantine-color-green-6: #40c057;--mantine-color-green-7: #37b24d;--mantine-color-green-8: #2f9e44;--mantine-color-green-9: #2b8a3e;--mantine-color-lime-0: #f4fce3;--mantine-color-lime-1: #e9fac8;--mantine-color-lime-2: #d8f5a2;--mantine-color-lime-3: #c0eb75;--mantine-color-lime-4: #a9e34b;--mantine-color-lime-5: #94d82d;--mantine-color-lime-6: #82c91e;--mantine-color-lime-7: #74b816;--mantine-color-lime-8: #66a80f;--mantine-color-lime-9: #5c940d;--mantine-color-yellow-0: #fff9db;--mantine-color-yellow-1: #fff3bf;--mantine-color-yellow-2: #ffec99;--mantine-color-yellow-3: #ffe066;--mantine-color-yellow-4: #ffd43b;--mantine-color-yellow-5: #fcc419;--mantine-color-yellow-6: #fab005;--mantine-color-yellow-7: #f59f00;--mantine-color-yellow-8: #f08c00;--mantine-color-yellow-9: #e67700;--mantine-color-orange-0: #fff4e6;--mantine-color-orange-1: #ffe8cc;--mantine-color-orange-2: #ffd8a8;--mantine-color-orange-3: #ffc078;--mantine-color-orange-4: #ffa94d;--mantine-color-orange-5: #ff922b;--mantine-color-orange-6: #fd7e14;--mantine-color-orange-7: #f76707;--mantine-color-orange-8: #e8590c;--mantine-color-orange-9: #d9480f;--mantine-h1-font-size: calc(2.125rem * var(--mantine-scale));--mantine-h1-line-height: 1.3;--mantine-h1-font-weight: 700;--mantine-h2-font-size: calc(1.625rem * var(--mantine-scale));--mantine-h2-line-height: 1.35;--mantine-h2-font-weight: 700;--mantine-h3-font-size: calc(1.375rem * var(--mantine-scale));--mantine-h3-line-height: 1.4;--mantine-h3-font-weight: 700;--mantine-h4-font-size: calc(1.125rem * var(--mantine-scale));--mantine-h4-line-height: 1.45;--mantine-h4-font-weight: 700;--mantine-h5-font-size: calc(1rem * var(--mantine-scale));--mantine-h5-line-height: 1.5;--mantine-h5-font-weight: 700;--mantine-h6-font-size: calc(.875rem * var(--mantine-scale));--mantine-h6-line-height: 1.5;--mantine-h6-font-weight: 700}:root[data-mantine-color-scheme=dark]{--mantine-color-scheme: dark;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-white);--mantine-color-text: var(--mantine-color-dark-0);--mantine-color-body: var(--mantine-color-dark-7);--mantine-color-error: var(--mantine-color-red-8);--mantine-color-placeholder: var(--mantine-color-dark-3);--mantine-color-anchor: var(--mantine-color-blue-4);--mantine-color-default: var(--mantine-color-dark-6);--mantine-color-default-hover: var(--mantine-color-dark-5);--mantine-color-default-color: var(--mantine-color-white);--mantine-color-default-border: var(--mantine-color-dark-4);--mantine-color-dimmed: var(--mantine-color-dark-2);--mantine-color-dark-text: var(--mantine-color-dark-4);--mantine-color-dark-filled: var(--mantine-color-dark-8);--mantine-color-dark-filled-hover: var(--mantine-color-dark-7);--mantine-color-dark-light: rgba(36, 36, 36, .15);--mantine-color-dark-light-hover: rgba(36, 36, 36, .2);--mantine-color-dark-light-color: var(--mantine-color-dark-3);--mantine-color-dark-outline: var(--mantine-color-dark-4);--mantine-color-dark-outline-hover: rgba(36, 36, 36, .05);--mantine-color-gray-text: var(--mantine-color-gray-4);--mantine-color-gray-filled: var(--mantine-color-gray-8);--mantine-color-gray-filled-hover: var(--mantine-color-gray-9);--mantine-color-gray-light: rgba(134, 142, 150, .15);--mantine-color-gray-light-hover: rgba(134, 142, 150, .2);--mantine-color-gray-light-color: var(--mantine-color-gray-3);--mantine-color-gray-outline: var(--mantine-color-gray-4);--mantine-color-gray-outline-hover: rgba(206, 212, 218, .05);--mantine-color-red-text: var(--mantine-color-red-4);--mantine-color-red-filled: var(--mantine-color-red-8);--mantine-color-red-filled-hover: var(--mantine-color-red-9);--mantine-color-red-light: rgba(250, 82, 82, .15);--mantine-color-red-light-hover: rgba(250, 82, 82, .2);--mantine-color-red-light-color: var(--mantine-color-red-3);--mantine-color-red-outline: var(--mantine-color-red-4);--mantine-color-red-outline-hover: rgba(255, 135, 135, .05);--mantine-color-pink-text: var(--mantine-color-pink-4);--mantine-color-pink-filled: var(--mantine-color-pink-8);--mantine-color-pink-filled-hover: var(--mantine-color-pink-9);--mantine-color-pink-light: rgba(230, 73, 128, .15);--mantine-color-pink-light-hover: rgba(230, 73, 128, .2);--mantine-color-pink-light-color: var(--mantine-color-pink-3);--mantine-color-pink-outline: var(--mantine-color-pink-4);--mantine-color-pink-outline-hover: rgba(247, 131, 172, .05);--mantine-color-grape-text: var(--mantine-color-grape-4);--mantine-color-grape-filled: var(--mantine-color-grape-8);--mantine-color-grape-filled-hover: var(--mantine-color-grape-9);--mantine-color-grape-light: rgba(190, 75, 219, .15);--mantine-color-grape-light-hover: rgba(190, 75, 219, .2);--mantine-color-grape-light-color: var(--mantine-color-grape-3);--mantine-color-grape-outline: var(--mantine-color-grape-4);--mantine-color-grape-outline-hover: rgba(218, 119, 242, .05);--mantine-color-violet-text: var(--mantine-color-violet-4);--mantine-color-violet-filled: var(--mantine-color-violet-8);--mantine-color-violet-filled-hover: var(--mantine-color-violet-9);--mantine-color-violet-light: rgba(121, 80, 242, .15);--mantine-color-violet-light-hover: rgba(121, 80, 242, .2);--mantine-color-violet-light-color: var(--mantine-color-violet-3);--mantine-color-violet-outline: var(--mantine-color-violet-4);--mantine-color-violet-outline-hover: rgba(151, 117, 250, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-4);--mantine-color-indigo-filled: var(--mantine-color-indigo-8);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-9);--mantine-color-indigo-light: rgba(76, 110, 245, .15);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .2);--mantine-color-indigo-light-color: var(--mantine-color-indigo-3);--mantine-color-indigo-outline: var(--mantine-color-indigo-4);--mantine-color-indigo-outline-hover: rgba(116, 143, 252, .05);--mantine-color-blue-text: var(--mantine-color-blue-4);--mantine-color-blue-filled: var(--mantine-color-blue-8);--mantine-color-blue-filled-hover: var(--mantine-color-blue-9);--mantine-color-blue-light: rgba(34, 139, 230, .15);--mantine-color-blue-light-hover: rgba(34, 139, 230, .2);--mantine-color-blue-light-color: var(--mantine-color-blue-3);--mantine-color-blue-outline: var(--mantine-color-blue-4);--mantine-color-blue-outline-hover: rgba(77, 171, 247, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-4);--mantine-color-cyan-filled: var(--mantine-color-cyan-8);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-9);--mantine-color-cyan-light: rgba(21, 170, 191, .15);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .2);--mantine-color-cyan-light-color: var(--mantine-color-cyan-3);--mantine-color-cyan-outline: var(--mantine-color-cyan-4);--mantine-color-cyan-outline-hover: rgba(59, 201, 219, .05);--mantine-color-teal-text: var(--mantine-color-teal-4);--mantine-color-teal-filled: var(--mantine-color-teal-8);--mantine-color-teal-filled-hover: var(--mantine-color-teal-9);--mantine-color-teal-light: rgba(18, 184, 134, .15);--mantine-color-teal-light-hover: rgba(18, 184, 134, .2);--mantine-color-teal-light-color: var(--mantine-color-teal-3);--mantine-color-teal-outline: var(--mantine-color-teal-4);--mantine-color-teal-outline-hover: rgba(56, 217, 169, .05);--mantine-color-green-text: var(--mantine-color-green-4);--mantine-color-green-filled: var(--mantine-color-green-8);--mantine-color-green-filled-hover: var(--mantine-color-green-9);--mantine-color-green-light: rgba(64, 192, 87, .15);--mantine-color-green-light-hover: rgba(64, 192, 87, .2);--mantine-color-green-light-color: var(--mantine-color-green-3);--mantine-color-green-outline: var(--mantine-color-green-4);--mantine-color-green-outline-hover: rgba(105, 219, 124, .05);--mantine-color-lime-text: var(--mantine-color-lime-4);--mantine-color-lime-filled: var(--mantine-color-lime-8);--mantine-color-lime-filled-hover: var(--mantine-color-lime-9);--mantine-color-lime-light: rgba(130, 201, 30, .15);--mantine-color-lime-light-hover: rgba(130, 201, 30, .2);--mantine-color-lime-light-color: var(--mantine-color-lime-3);--mantine-color-lime-outline: var(--mantine-color-lime-4);--mantine-color-lime-outline-hover: rgba(169, 227, 75, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-4);--mantine-color-yellow-filled: var(--mantine-color-yellow-8);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-9);--mantine-color-yellow-light: rgba(250, 176, 5, .15);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .2);--mantine-color-yellow-light-color: var(--mantine-color-yellow-3);--mantine-color-yellow-outline: var(--mantine-color-yellow-4);--mantine-color-yellow-outline-hover: rgba(255, 212, 59, .05);--mantine-color-orange-text: var(--mantine-color-orange-4);--mantine-color-orange-filled: var(--mantine-color-orange-8);--mantine-color-orange-filled-hover: var(--mantine-color-orange-9);--mantine-color-orange-light: rgba(253, 126, 20, .15);--mantine-color-orange-light-hover: rgba(253, 126, 20, .2);--mantine-color-orange-light-color: var(--mantine-color-orange-3);--mantine-color-orange-outline: var(--mantine-color-orange-4);--mantine-color-orange-outline-hover: rgba(255, 169, 77, .05)}:root[data-mantine-color-scheme=light]{--mantine-color-scheme: light;--mantine-color-bright: var(--mantine-color-black);--mantine-color-text: var(--mantine-color-black);--mantine-color-body: var(--mantine-color-white);--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-error: var(--mantine-color-red-6);--mantine-color-placeholder: var(--mantine-color-gray-5);--mantine-color-anchor: var(--mantine-primary-color-filled);--mantine-color-default: var(--mantine-color-white);--mantine-color-default-hover: var(--mantine-color-gray-0);--mantine-color-default-color: var(--mantine-color-gray-9);--mantine-color-default-border: var(--mantine-color-gray-4);--mantine-color-dimmed: var(--mantine-color-gray-6);--mantine-color-dark-text: var(--mantine-color-dark-filled);--mantine-color-dark-filled: var(--mantine-color-dark-6);--mantine-color-dark-filled-hover: var(--mantine-color-dark-7);--mantine-color-dark-light: rgba(56, 56, 56, .1);--mantine-color-dark-light-hover: rgba(56, 56, 56, .12);--mantine-color-dark-light-color: var(--mantine-color-dark-6);--mantine-color-dark-outline: var(--mantine-color-dark-6);--mantine-color-dark-outline-hover: rgba(56, 56, 56, .05);--mantine-color-gray-text: var(--mantine-color-gray-filled);--mantine-color-gray-filled: var(--mantine-color-gray-6);--mantine-color-gray-filled-hover: var(--mantine-color-gray-7);--mantine-color-gray-light: rgba(134, 142, 150, .1);--mantine-color-gray-light-hover: rgba(134, 142, 150, .12);--mantine-color-gray-light-color: var(--mantine-color-gray-6);--mantine-color-gray-outline: var(--mantine-color-gray-6);--mantine-color-gray-outline-hover: rgba(134, 142, 150, .05);--mantine-color-red-text: var(--mantine-color-red-filled);--mantine-color-red-filled: var(--mantine-color-red-6);--mantine-color-red-filled-hover: var(--mantine-color-red-7);--mantine-color-red-light: rgba(250, 82, 82, .1);--mantine-color-red-light-hover: rgba(250, 82, 82, .12);--mantine-color-red-light-color: var(--mantine-color-red-6);--mantine-color-red-outline: var(--mantine-color-red-6);--mantine-color-red-outline-hover: rgba(250, 82, 82, .05);--mantine-color-pink-text: var(--mantine-color-pink-filled);--mantine-color-pink-filled: var(--mantine-color-pink-6);--mantine-color-pink-filled-hover: var(--mantine-color-pink-7);--mantine-color-pink-light: rgba(230, 73, 128, .1);--mantine-color-pink-light-hover: rgba(230, 73, 128, .12);--mantine-color-pink-light-color: var(--mantine-color-pink-6);--mantine-color-pink-outline: var(--mantine-color-pink-6);--mantine-color-pink-outline-hover: rgba(230, 73, 128, .05);--mantine-color-grape-text: var(--mantine-color-grape-filled);--mantine-color-grape-filled: var(--mantine-color-grape-6);--mantine-color-grape-filled-hover: var(--mantine-color-grape-7);--mantine-color-grape-light: rgba(190, 75, 219, .1);--mantine-color-grape-light-hover: rgba(190, 75, 219, .12);--mantine-color-grape-light-color: var(--mantine-color-grape-6);--mantine-color-grape-outline: var(--mantine-color-grape-6);--mantine-color-grape-outline-hover: rgba(190, 75, 219, .05);--mantine-color-violet-text: var(--mantine-color-violet-filled);--mantine-color-violet-filled: var(--mantine-color-violet-6);--mantine-color-violet-filled-hover: var(--mantine-color-violet-7);--mantine-color-violet-light: rgba(121, 80, 242, .1);--mantine-color-violet-light-hover: rgba(121, 80, 242, .12);--mantine-color-violet-light-color: var(--mantine-color-violet-6);--mantine-color-violet-outline: var(--mantine-color-violet-6);--mantine-color-violet-outline-hover: rgba(121, 80, 242, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-filled);--mantine-color-indigo-filled: var(--mantine-color-indigo-6);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-7);--mantine-color-indigo-light: rgba(76, 110, 245, .1);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .12);--mantine-color-indigo-light-color: var(--mantine-color-indigo-6);--mantine-color-indigo-outline: var(--mantine-color-indigo-6);--mantine-color-indigo-outline-hover: rgba(76, 110, 245, .05);--mantine-color-blue-text: var(--mantine-color-blue-filled);--mantine-color-blue-filled: var(--mantine-color-blue-6);--mantine-color-blue-filled-hover: var(--mantine-color-blue-7);--mantine-color-blue-light: rgba(34, 139, 230, .1);--mantine-color-blue-light-hover: rgba(34, 139, 230, .12);--mantine-color-blue-light-color: var(--mantine-color-blue-6);--mantine-color-blue-outline: var(--mantine-color-blue-6);--mantine-color-blue-outline-hover: rgba(34, 139, 230, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-filled);--mantine-color-cyan-filled: var(--mantine-color-cyan-6);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-7);--mantine-color-cyan-light: rgba(21, 170, 191, .1);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .12);--mantine-color-cyan-light-color: var(--mantine-color-cyan-6);--mantine-color-cyan-outline: var(--mantine-color-cyan-6);--mantine-color-cyan-outline-hover: rgba(21, 170, 191, .05);--mantine-color-teal-text: var(--mantine-color-teal-filled);--mantine-color-teal-filled: var(--mantine-color-teal-6);--mantine-color-teal-filled-hover: var(--mantine-color-teal-7);--mantine-color-teal-light: rgba(18, 184, 134, .1);--mantine-color-teal-light-hover: rgba(18, 184, 134, .12);--mantine-color-teal-light-color: var(--mantine-color-teal-6);--mantine-color-teal-outline: var(--mantine-color-teal-6);--mantine-color-teal-outline-hover: rgba(18, 184, 134, .05);--mantine-color-green-text: var(--mantine-color-green-filled);--mantine-color-green-filled: var(--mantine-color-green-6);--mantine-color-green-filled-hover: var(--mantine-color-green-7);--mantine-color-green-light: rgba(64, 192, 87, .1);--mantine-color-green-light-hover: rgba(64, 192, 87, .12);--mantine-color-green-light-color: var(--mantine-color-green-6);--mantine-color-green-outline: var(--mantine-color-green-6);--mantine-color-green-outline-hover: rgba(64, 192, 87, .05);--mantine-color-lime-text: var(--mantine-color-lime-filled);--mantine-color-lime-filled: var(--mantine-color-lime-6);--mantine-color-lime-filled-hover: var(--mantine-color-lime-7);--mantine-color-lime-light: rgba(130, 201, 30, .1);--mantine-color-lime-light-hover: rgba(130, 201, 30, .12);--mantine-color-lime-light-color: var(--mantine-color-lime-6);--mantine-color-lime-outline: var(--mantine-color-lime-6);--mantine-color-lime-outline-hover: rgba(130, 201, 30, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-filled);--mantine-color-yellow-filled: var(--mantine-color-yellow-6);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-7);--mantine-color-yellow-light: rgba(250, 176, 5, .1);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .12);--mantine-color-yellow-light-color: var(--mantine-color-yellow-6);--mantine-color-yellow-outline: var(--mantine-color-yellow-6);--mantine-color-yellow-outline-hover: rgba(250, 176, 5, .05);--mantine-color-orange-text: var(--mantine-color-orange-filled);--mantine-color-orange-filled: var(--mantine-color-orange-6);--mantine-color-orange-filled-hover: var(--mantine-color-orange-7);--mantine-color-orange-light: rgba(253, 126, 20, .1);--mantine-color-orange-light-hover: rgba(253, 126, 20, .12);--mantine-color-orange-light-color: var(--mantine-color-orange-6);--mantine-color-orange-outline: var(--mantine-color-orange-6);--mantine-color-orange-outline-hover: rgba(253, 126, 20, .05)}.m_d57069b5{--scrollarea-scrollbar-size: calc(.75rem * var(--mantine-scale));position:relative;overflow:hidden}.m_c0783ff9{scrollbar-width:none;overscroll-behavior:var(--scrollarea-over-scroll-behavior);-ms-overflow-style:none;-webkit-overflow-scrolling:touch;width:100%;height:100%}.m_c0783ff9::-webkit-scrollbar{display:none}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):where([data-vertical-hidden]){padding-inline-end:0;padding-inline-start:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):not([data-vertical-hidden]){padding-inline-end:var(--scrollarea-scrollbar-size);padding-inline-start:unset}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):where([data-horizontal-hidden]){padding-bottom:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):not([data-horizontal-hidden]){padding-bottom:var(--scrollarea-scrollbar-size)}.m_f8f631dd{min-width:100%;display:table}.m_c44ba933{-webkit-user-select:none;user-select:none;touch-action:none;box-sizing:border-box;transition:background-color .15s ease,opacity .15s ease;padding:calc(var(--scrollarea-scrollbar-size) / 5);display:flex;background-color:transparent;flex-direction:row}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_c44ba933:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:hover>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover>.m_d8b5e363{background-color:#ffffff80}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_c44ba933:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:active>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active>.m_d8b5e363{background-color:#ffffff80}}.m_c44ba933:where([data-hidden],[data-state=hidden]){display:none}.m_c44ba933:where([data-orientation=vertical]){width:var(--scrollarea-scrollbar-size);top:0;bottom:var(--sa-corner-width);inset-inline-end:0}.m_c44ba933:where([data-orientation=horizontal]){height:var(--scrollarea-scrollbar-size);flex-direction:column;bottom:0;inset-inline-start:0;inset-inline-end:var(--sa-corner-width)}.m_d8b5e363{flex:1;border-radius:var(--scrollarea-scrollbar-size);position:relative;transition:background-color .15s ease;overflow:hidden;opacity:var(--thumb-opacity)}.m_d8b5e363:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:calc(2.75rem * var(--mantine-scale));min-height:calc(2.75rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d8b5e363{background-color:#0006}:where([data-mantine-color-scheme=dark]) .m_d8b5e363{background-color:#fff6}.m_21657268{position:absolute;opacity:0;transition:opacity .15s ease;display:block;inset-inline-end:0;bottom:0}:where([data-mantine-color-scheme=light]) .m_21657268{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_21657268{background-color:var(--mantine-color-dark-8)}.m_21657268:where([data-hovered]){opacity:1}.m_21657268:where([data-hidden]){display:none}.m_87cf2631{background-color:transparent;cursor:pointer;border:0;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:var(--mantine-font-size-md);text-align:left;text-decoration:none;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}:where([dir=rtl]) .m_87cf2631{text-align:right}.m_515a97f8{border:0;clip:rect(0 0 0 0);height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));margin:calc(-.0625rem * var(--mantine-scale));overflow:hidden;padding:0;position:absolute;white-space:nowrap}.m_1b7284a3{--paper-radius: var(--mantine-radius-default);outline:0;-webkit-tap-highlight-color:transparent;display:block;touch-action:manipulation;text-decoration:none;border-radius:var(--paper-radius);box-shadow:var(--paper-shadow);background-color:var(--mantine-color-body)}[data-mantine-color-scheme=light] .m_1b7284a3{--paper-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_1b7284a3{--paper-border-color: var(--mantine-color-dark-4)}.m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--paper-border-color)}.m_9814e45f{top:0;right:0;bottom:0;left:0;position:absolute;background:var(--overlay-bg, rgba(0, 0, 0, .6));-webkit-backdrop-filter:var(--overlay-filter);backdrop-filter:var(--overlay-filter);border-radius:var(--overlay-radius, 0);z-index:var(--overlay-z-index)}.m_9814e45f:where([data-fixed]){position:fixed}.m_9814e45f:where([data-center]){display:flex;align-items:center;justify-content:center}.m_38a85659{position:absolute;border:1px solid var(--popover-border-color);padding:var(--mantine-spacing-sm) var(--mantine-spacing-md);box-shadow:var(--popover-shadow, none);border-radius:var(--popover-radius, var(--mantine-radius-default))}.m_38a85659:where([data-fixed]){position:fixed}.m_38a85659:focus{outline:none}:where([data-mantine-color-scheme=light]) .m_38a85659{--popover-border-color: var(--mantine-color-gray-2);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_38a85659{--popover-border-color: var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_a31dc6c1{background-color:inherit;border:1px solid var(--popover-border-color);z-index:1}.m_3d7bc908{position:fixed;top:0;right:0;bottom:0;left:0}.m_5ae2e3c{--loader-size-xs: calc(1.125rem * var(--mantine-scale));--loader-size-sm: calc(1.375rem * var(--mantine-scale));--loader-size-md: calc(2.25rem * var(--mantine-scale));--loader-size-lg: calc(2.75rem * var(--mantine-scale));--loader-size-xl: calc(3.625rem * var(--mantine-scale));--loader-size: var(--loader-size-md);--loader-color: var(--mantine-primary-color-filled)}@keyframes m_5d2b3b9d{0%{transform:scale(.6);opacity:0}50%,to{transform:scale(1)}}.m_7a2bd4cd{position:relative;width:var(--loader-size);height:var(--loader-size);display:flex;gap:calc(var(--loader-size) / 5)}.m_870bb79{flex:1;background:var(--loader-color);animation:m_5d2b3b9d 1.2s cubic-bezier(0,.5,.5,1) infinite;border-radius:calc(.125rem * var(--mantine-scale))}.m_870bb79:nth-of-type(1){animation-delay:-.24s}.m_870bb79:nth-of-type(2){animation-delay:-.12s}.m_870bb79:nth-of-type(3){animation-delay:0}@keyframes m_aac34a1{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.5}}.m_4e3f22d7{display:flex;justify-content:center;align-items:center;gap:calc(var(--loader-size) / 10);position:relative;width:var(--loader-size);height:var(--loader-size)}.m_870c4af{width:calc(var(--loader-size) / 3 - var(--loader-size) / 15);height:calc(var(--loader-size) / 3 - var(--loader-size) / 15);border-radius:50%;background:var(--loader-color);animation:m_aac34a1 .8s infinite linear}.m_870c4af:nth-child(2){animation-delay:.4s}@keyframes m_f8e89c4b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.m_b34414df{display:inline-block;width:var(--loader-size);height:var(--loader-size)}.m_b34414df:after{content:"";display:block;width:var(--loader-size);height:var(--loader-size);border-radius:calc(625rem * var(--mantine-scale));border-width:calc(var(--loader-size) / 8);border-style:solid;border-color:var(--loader-color) var(--loader-color) var(--loader-color) transparent;animation:m_f8e89c4b 1.2s linear infinite}.m_8d3f4000{--ai-size-xs: calc(1.125rem * var(--mantine-scale));--ai-size-sm: calc(1.375rem * var(--mantine-scale));--ai-size-md: calc(1.75rem * var(--mantine-scale));--ai-size-lg: calc(2.125rem * var(--mantine-scale));--ai-size-xl: calc(2.75rem * var(--mantine-scale));--ai-size-input-xs: calc(1.875rem * var(--mantine-scale));--ai-size-input-sm: calc(2.25rem * var(--mantine-scale));--ai-size-input-md: calc(2.625rem * var(--mantine-scale));--ai-size-input-lg: calc(3.125rem * var(--mantine-scale));--ai-size-input-xl: calc(3.75rem * var(--mantine-scale));--ai-size: var(--ai-size-md);--ai-color: var(--mantine-color-white);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden;width:var(--ai-size);height:var(--ai-size);min-width:var(--ai-size);min-height:var(--ai-size);border-radius:var(--ai-radius, var(--mantine-radius-default));background:var(--ai-bg, var(--mantine-primary-color-filled));color:var(--ai-color, var(--mantine-color-white));border:var(--ai-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);cursor:pointer}@media(hover:hover){.m_8d3f4000:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}@media(hover:none){.m_8d3f4000:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}.m_8d3f4000[data-loading]{cursor:not-allowed}.m_8d3f4000[data-loading] .m_8d3afb97{opacity:0;transform:translateY(100%)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){background-color:var(--mantine-color-gray-1);color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) .m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){background-color:var(--mantine-color-dark-6);color:var(--mantine-color-dark-3)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])):active{transform:none}.m_302b9fb1{inset:calc(-.0625rem * var(--mantine-scale));position:absolute;border-radius:var(--ai-radius, var(--mantine-radius-default));display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_302b9fb1{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_302b9fb1{background-color:#00000026}.m_1a0f1b21{--ai-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_1a0f1b21 :where(*):focus{position:relative;z-index:1}.m_1a0f1b21[data-orientation=horizontal]{flex-direction:row}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical]{flex-direction:column}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2);border-top-width:calc(var(--ai-border-width) / 2)}.m_8d3afb97{display:flex;align-items:center;justify-content:center;transition:transform .15s ease,opacity .1s ease;width:100%;height:100%}.m_437b6484{--section-height-xs: calc(1.125rem * var(--mantine-scale));--section-height-sm: calc(1.375rem * var(--mantine-scale));--section-height-md: calc(1.75rem * var(--mantine-scale));--section-height-lg: calc(2.125rem * var(--mantine-scale));--section-height-xl: calc(2.75rem * var(--mantine-scale));--section-height-input-xs: calc(1.875rem * var(--mantine-scale));--section-height-input-sm: calc(2.25rem * var(--mantine-scale));--section-height-input-md: calc(2.625rem * var(--mantine-scale));--section-height-input-lg: calc(3.125rem * var(--mantine-scale));--section-height-input-xl: calc(3.75rem * var(--mantine-scale));--section-padding-x-xs: calc(.375rem * var(--mantine-scale));--section-padding-x-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-md: calc(.625rem * var(--mantine-scale));--section-padding-x-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-xl: calc(1rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_86a44da5{--cb-size-xs: calc(1.125rem * var(--mantine-scale));--cb-size-sm: calc(1.375rem * var(--mantine-scale));--cb-size-md: calc(1.75rem * var(--mantine-scale));--cb-size-lg: calc(2.125rem * var(--mantine-scale));--cb-size-xl: calc(2.75rem * var(--mantine-scale));--cb-size: var(--cb-size-md);--cb-icon-size: 70%;--cb-radius: var(--mantine-radius-default);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;-webkit-user-select:none;user-select:none;width:var(--cb-size);height:var(--cb-size);min-width:var(--cb-size);min-height:var(--cb-size);border-radius:var(--cb-radius)}:where([data-mantine-color-scheme=light]) .m_86a44da5{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_86a44da5{color:var(--mantine-color-dark-1)}.m_86a44da5[data-disabled],.m_86a44da5:disabled{cursor:not-allowed;opacity:.6}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-dark-6)}}.m_4081bf90{display:flex;flex-direction:row;flex-wrap:var(--group-wrap, wrap);justify-content:var(--group-justify, flex-start);align-items:var(--group-align, center);gap:var(--group-gap, var(--mantine-spacing-md))}.m_4081bf90:where([data-grow])>*{flex-grow:1;max-width:var(--group-child-width)}.m_615af6c9{line-height:1;padding:0;margin:0;font-weight:400;font-size:var(--mantine-font-size-md)}.m_b5489c3c{display:flex;justify-content:space-between;align-items:center;padding:var(--mb-padding, var(--mantine-spacing-md));padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) - calc(.3125rem * var(--mantine-scale)));position:sticky;top:0;background-color:var(--mantine-color-body);z-index:1000;min-height:calc(3.75rem * var(--mantine-scale));transition:padding-inline-end .1s}.m_60c222c7{position:fixed;width:100%;top:0;bottom:0;z-index:var(--mb-z-index);pointer-events:none}.m_fd1ab0aa{pointer-events:all;box-shadow:var(--mb-shadow, var(--mantine-shadow-xl))}.m_fd1ab0aa [data-mantine-scrollbar]{z-index:1001}[data-offset-scrollbars] .m_fd1ab0aa:has([data-mantine-scrollbar]) .m_b5489c3c{padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) + calc(.3125rem * var(--mantine-scale)))}.m_606cb269{margin-inline-start:auto}.m_5df29311{padding:var(--mb-padding, var(--mantine-spacing-md));padding-top:var(--mb-padding, var(--mantine-spacing-md))}.m_5df29311:where(:not(:only-child)){padding-top:0}.m_6c018570{position:relative;margin-top:var(--input-margin-top, 0rem);margin-bottom:var(--input-margin-bottom, 0rem);--input-height-xs: calc(1.875rem * var(--mantine-scale));--input-height-sm: calc(2.25rem * var(--mantine-scale));--input-height-md: calc(2.625rem * var(--mantine-scale));--input-height-lg: calc(3.125rem * var(--mantine-scale));--input-height-xl: calc(3.75rem * var(--mantine-scale));--input-padding-y-xs: calc(.3125rem * var(--mantine-scale));--input-padding-y-sm: calc(.375rem * var(--mantine-scale));--input-padding-y-md: calc(.5rem * var(--mantine-scale));--input-padding-y-lg: calc(.625rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-height: var(--input-height-sm);--input-radius: var(--mantine-radius-default);--input-cursor: text;--input-text-align: left;--input-line-height: calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));--input-padding: calc(var(--input-height) / 3);--input-padding-inline-start: var(--input-padding);--input-padding-inline-end: var(--input-padding);--input-placeholder-color: var(--mantine-color-placeholder);--input-color: var(--mantine-color-text);--input-left-section-size: var(--input-left-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))));--input-right-section-size: var( --input-right-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))) );--input-size: var(--input-height);--section-y: calc(.0625rem * var(--mantine-scale));--left-section-start: calc(.0625rem * var(--mantine-scale));--left-section-border-radius: var(--input-radius) 0 0 var(--input-radius);--right-section-end: calc(.0625rem * var(--mantine-scale));--right-section-border-radius: 0 var(--input-radius) var(--input-radius) 0}.m_6c018570[data-variant=unstyled]{--input-padding: 0;--input-padding-y: 0;--input-padding-inline-start: 0;--input-padding-inline-end: 0}.m_6c018570[data-pointer]{--input-cursor: pointer}.m_6c018570[data-multiline]{--input-padding-y-xs: calc(.28125rem * var(--mantine-scale));--input-padding-y-sm: calc(.34375rem * var(--mantine-scale));--input-padding-y-md: calc(.4375rem * var(--mantine-scale));--input-padding-y-lg: calc(.59375rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-size: auto;--input-line-height: var(--mantine-line-height);--input-padding-y: var(--input-padding-y-sm)}.m_6c018570[data-with-left-section]{--input-padding-inline-start: var(--input-left-section-size)}.m_6c018570[data-with-right-section]{--input-padding-inline-end: var(--input-right-section-size)}[data-mantine-color-scheme=light] .m_6c018570{--input-disabled-bg: var(--mantine-color-gray-1);--input-disabled-color: var(--mantine-color-gray-6)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-gray-4);--input-bg: var(--mantine-color-white);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-gray-1);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme=dark] .m_6c018570{--input-disabled-bg: var(--mantine-color-dark-6);--input-disabled-color: var(--mantine-color-dark-2)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-dark-4);--input-bg: var(--mantine-color-dark-6);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-dark-5);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme] .m_6c018570[data-error]:not([data-variant=unstyled]){--input-bd: var(--mantine-color-error)}[data-mantine-color-scheme] .m_6c018570[data-error]{--input-color: var(--mantine-color-error);--input-placeholder-color: var(--mantine-color-error);--input-section-color: var(--mantine-color-error)}:where([dir=rtl]) .m_6c018570{--input-text-align: right;--left-section-border-radius: 0 var(--input-radius) var(--input-radius) 0;--right-section-border-radius: var(--input-radius) 0 0 var(--input-radius)}.m_8fb7ebe7{-webkit-tap-highlight-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;resize:var(--input-resize, none);display:block;width:100%;transition:border-color .1s ease;text-align:var(--input-text-align);color:var(--input-color);border:calc(.0625rem * var(--mantine-scale)) solid var(--input-bd);background-color:var(--input-bg);font-family:var(--input-font-family, var(--mantine-font-family));height:var(--input-size);min-height:var(--input-height);line-height:var(--input-line-height);font-size:var(--input-fz, var(--input-fz, var(--mantine-font-size-sm)));border-radius:var(--input-radius);padding-inline-start:var(--input-padding-inline-start);padding-inline-end:var(--input-padding-inline-end);padding-top:var(--input-padding-y, 0rem);padding-bottom:var(--input-padding-y, 0rem);cursor:var(--input-cursor);overflow:var(--input-overflow)}.m_8fb7ebe7[data-no-overflow]{--input-overflow: hidden}.m_8fb7ebe7[data-monospace]{--input-font-family: var(--mantine-font-family-monospace);--input-fz: calc(var(--input-fz, var(--mantine-font-size-sm)) - calc(.125rem * var(--mantine-scale)))}.m_8fb7ebe7:focus,.m_8fb7ebe7:focus-within{outline:none;--input-bd: var(--input-bd-focus)}[data-error] .m_8fb7ebe7:focus,[data-error] .m_8fb7ebe7:focus-within{--input-bd: var(--mantine-color-error)}.m_8fb7ebe7::placeholder{color:var(--input-placeholder-color);opacity:1}.m_8fb7ebe7::-webkit-inner-spin-button,.m_8fb7ebe7::-webkit-outer-spin-button,.m_8fb7ebe7::-webkit-search-decoration,.m_8fb7ebe7::-webkit-search-cancel-button,.m_8fb7ebe7::-webkit-search-results-button,.m_8fb7ebe7::-webkit-search-results-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none}.m_8fb7ebe7[type=number]{-moz-appearance:textfield}.m_8fb7ebe7:disabled,.m_8fb7ebe7[data-disabled]{cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7:has(input:disabled){cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_82577fc2{pointer-events:var(--section-pointer-events);position:absolute;z-index:1;inset-inline-start:var(--section-start);inset-inline-end:var(--section-end);bottom:var(--section-y);top:var(--section-y);display:flex;align-items:center;justify-content:center;width:var(--section-size);border-radius:var(--section-border-radius);color:var(--input-section-color, var(--mantine-color-dimmed))}.m_82577fc2[data-position=right]{--section-pointer-events: var(--input-right-section-pointer-events);--section-end: var(--right-section-end);--section-size: var(--input-right-section-size);--section-border-radius: var(--right-section-border-radius)}.m_82577fc2[data-position=left]{--section-pointer-events: var(--input-left-section-pointer-events);--section-start: var(--left-section-start);--section-size: var(--input-left-section-size);--section-border-radius: var(--left-section-border-radius)}.m_88bacfd0{color:var(--input-placeholder-color, var(--mantine-color-placeholder))}[data-error] .m_88bacfd0{--input-placeholder-color: var(--input-color, var(--mantine-color-placeholder))}.m_46b77525{line-height:var(--mantine-line-height)}.m_8fdc1311{display:inline-block;font-weight:500;word-break:break-word;cursor:default;-webkit-tap-highlight-color:transparent;font-size:var(--input-label-size, var(--mantine-font-size-sm))}.m_78a94662{color:var(--input-asterisk-color, var(--mantine-color-error))}.m_8f816625,.m_fe47ce59{word-wrap:break-word;line-height:1.2;display:block;margin:0;padding:0}.m_8f816625{color:var(--mantine-color-error);font-size:var(--input-error-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_fe47ce59{color:var(--mantine-color-dimmed);font-size:var(--input-description-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_8bffd616{display:flex}.m_96b553a6{--transition-duration: .15s;top:0;left:0;position:absolute;z-index:0;transition-property:transform,width,height;transition-timing-function:ease;transition-duration:0ms}.m_96b553a6:where([data-initialized]){transition-duration:var(--transition-duration)}.m_96b553a6:where([data-hidden]){background-color:red;display:none}.m_9bdbb667{--accordion-radius: var(--mantine-radius-default)}.m_df78851f{word-break:break-word}.m_4ba554d4{padding:var(--mantine-spacing-md);padding-top:calc(var(--mantine-spacing-xs) / 2)}.m_8fa820a0{margin:0;padding:0}.m_4ba585b8{width:100%;display:flex;align-items:center;flex-direction:row-reverse;padding-inline:var(--mantine-spacing-md);opacity:1;cursor:pointer;background-color:transparent}.m_4ba585b8:where([data-chevron-position=left]){flex-direction:row;padding-inline-start:0}:where([data-mantine-color-scheme=light]) .m_4ba585b8{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_4ba585b8{color:var(--mantine-color-dark-0)}.m_4ba585b8:where(:disabled,[data-disabled]){opacity:.4;cursor:not-allowed}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-dark-6)}}.m_df3ffa0f{color:inherit;font-weight:400;flex:1;overflow:hidden;text-overflow:ellipsis;padding-top:var(--mantine-spacing-sm);padding-bottom:var(--mantine-spacing-sm)}.m_3f35ae96{display:flex;align-items:center;justify-content:flex-start;transition:transform var(--accordion-transition-duration, .2s) ease;width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));min-width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));transform:rotate(0)}.m_3f35ae96:where([data-rotate]){transform:rotate(180deg)}.m_3f35ae96:where([data-position=left]){margin-inline-end:var(--mantine-spacing-md);margin-inline-start:var(--mantine-spacing-md)}.m_9bd771fe{display:flex;align-items:center;justify-content:center;margin-inline-end:var(--mantine-spacing-sm)}.m_9bd771fe:where([data-chevron-position=left]){margin-inline-end:0;margin-inline-start:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_9bd7b098{--item-border-color: var(--mantine-color-gray-3);--item-filled-color: var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_9bd7b098{--item-border-color: var(--mantine-color-dark-4);--item-filled-color: var(--mantine-color-dark-6)}.m_fe19b709{border-bottom:1px solid var(--item-border-color)}.m_1f921b3b{border:1px solid var(--item-border-color);transition:background-color .15s ease}.m_1f921b3b:where([data-active]){background-color:var(--item-filled-color)}.m_1f921b3b:first-of-type{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:first-of-type>[data-accordion-control]{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type>[data-accordion-control]{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b+.m_1f921b3b{border-top:0}.m_2cdf939a{border-radius:var(--accordion-radius)}.m_2cdf939a:where([data-active]){background-color:var(--item-filled-color)}.m_9f59b069{background-color:var(--item-filled-color);border-radius:var(--accordion-radius);border:calc(.0625rem * var(--mantine-scale)) solid transparent;transition:background-color .15s ease}.m_9f59b069[data-active]{border-color:var(--item-border-color)}:where([data-mantine-color-scheme=light]) .m_9f59b069[data-active]{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_9f59b069[data-active]{background-color:var(--mantine-color-dark-7)}.m_9f59b069+.m_9f59b069{margin-top:var(--mantine-spacing-md)}.m_7f854edf{position:fixed;z-index:var(--affix-z-index);inset-inline-start:var(--affix-left);inset-inline-end:var(--affix-right);top:var(--affix-top);bottom:var(--affix-bottom)}.m_66836ed3{--alert-radius: var(--mantine-radius-default);--alert-bg: var(--mantine-primary-color-light);--alert-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--alert-color: var(--mantine-primary-color-light-color);padding:var(--mantine-spacing-md) var(--mantine-spacing-md);border-radius:var(--alert-radius);position:relative;overflow:hidden;background-color:var(--alert-bg);border:var(--alert-bd);color:var(--alert-color)}.m_a5d60502{display:flex}.m_667c2793{flex:1;display:flex;flex-direction:column;gap:var(--mantine-spacing-xs)}.m_6a03f287{display:flex;align-items:center;justify-content:space-between;font-size:var(--mantine-font-size-sm);font-weight:700}.m_6a03f287:where([data-with-close-button]){padding-inline-end:var(--mantine-spacing-md)}.m_698f4f23{display:block;overflow:hidden;text-overflow:ellipsis}.m_667f2a6a{line-height:1;width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));display:flex;align-items:center;justify-content:flex-start;margin-inline-end:var(--mantine-spacing-md);margin-top:calc(.0625rem * var(--mantine-scale))}.m_7fa78076{text-overflow:ellipsis;overflow:hidden;font-size:var(--mantine-font-size-sm)}:where([data-mantine-color-scheme=light]) .m_7fa78076{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_7fa78076{color:var(--mantine-color-white)}.m_7fa78076:where([data-variant=filled]){color:var(--alert-color)}.m_7fa78076:where([data-variant=white]){color:var(--mantine-color-black)}.m_87f54839{width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));color:var(--alert-color)}.m_b6d8b162{-webkit-tap-highlight-color:transparent;text-decoration:none;font-size:var(--text-fz, var(--mantine-font-size-md));line-height:var(--text-lh, var(--mantine-line-height-md));font-weight:400;margin:0;padding:0;color:var(--text-color)}.m_b6d8b162:where([data-truncate]){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m_b6d8b162:where([data-truncate=start]){direction:rtl;text-align:right}:where([dir=rtl]) .m_b6d8b162:where([data-truncate=start]){direction:ltr;text-align:left}.m_b6d8b162:where([data-variant=gradient]){background-image:var(--text-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.m_b6d8b162:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--text-line-clamp);-webkit-box-orient:vertical}.m_b6d8b162:where([data-inherit]){line-height:inherit;font-weight:inherit;font-size:inherit}.m_b6d8b162:where([data-inline]){line-height:1}.m_849cf0da{color:var(--mantine-color-anchor);text-decoration:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;display:inline;padding:0;margin:0;background-color:transparent;cursor:pointer}@media(hover:hover){.m_849cf0da:where([data-underline=hover]):hover{text-decoration:underline}}@media(hover:none){.m_849cf0da:where([data-underline=hover]):active{text-decoration:underline}}.m_849cf0da:where([data-underline=not-hover]){text-decoration:underline}@media(hover:hover){.m_849cf0da:where([data-underline=not-hover]):hover{text-decoration:none}}@media(hover:none){.m_849cf0da:where([data-underline=not-hover]):active{text-decoration:none}}.m_849cf0da:where([data-underline=always]){text-decoration:underline}.m_849cf0da:where([data-variant=gradient]),.m_849cf0da:where([data-variant=gradient]):hover{text-decoration:none}.m_849cf0da:where([data-line-clamp]){display:-webkit-box}.m_48204f9b{width:var(--slider-size);height:var(--slider-size);position:relative;border-radius:100%;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.m_48204f9b:focus-within{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_48204f9b{--slider-size: calc(3.75rem * var(--mantine-scale));--thumb-size: calc(var(--slider-size) / 5)}:where([data-mantine-color-scheme=light]) .m_48204f9b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_48204f9b{background-color:var(--mantine-color-dark-5)}.m_bb9cdbad{position:absolute;inset:calc(.0625rem * var(--mantine-scale));border-radius:var(--slider-size);pointer-events:none}.m_481dd586{width:calc(.125rem * var(--mantine-scale));position:absolute;top:0;bottom:0;left:calc(50% - 1px);transform:rotate(var(--angle))}.m_481dd586:before{content:"";position:absolute;top:calc(var(--thumb-size) / 3);left:calc(.03125rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));height:calc(var(--thumb-size) / 1.5);transform:translate(-50%,-50%)}:where([data-mantine-color-scheme=light]) .m_481dd586:before{background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_481dd586:before{background-color:var(--mantine-color-dark-3)}.m_481dd586[data-label]:after{min-width:calc(1.125rem * var(--mantine-scale));text-align:center;content:attr(data-label);position:absolute;top:calc(-1.5rem * var(--mantine-scale));left:calc(-.4375rem * var(--mantine-scale));transform:rotate(calc(360deg - var(--angle)));font-size:var(--mantine-font-size-xs)}.m_bc02ba3d{position:absolute;inset-block:0;inset-inline-start:calc(50% - 1.5px);inset-inline-end:0;height:100%;width:calc(.1875rem * var(--mantine-scale));outline:none;pointer-events:none}.m_bc02ba3d:before{content:"";position:absolute;right:0;top:0;height:min(var(--thumb-size),calc(var(--slider-size) / 2));width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_bc02ba3d:before{background-color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_bc02ba3d:before{background-color:var(--mantine-color-dark-1)}.m_bb8e875b{font-size:var(--mantine-font-size-xs)}.m_89ab340[data-resizing]{--app-shell-transition-duration: 0ms !important}.m_89ab340[data-disabled]{--app-shell-header-offset: 0rem !important;--app-shell-navbar-offset: 0rem !important;--app-shell-aside-offset: 0rem !important;--app-shell-footer-offset: 0rem !important}[data-mantine-color-scheme=light] .m_89ab340{--app-shell-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89ab340{--app-shell-border-color: var(--mantine-color-dark-4)}.m_45252eee,.m_9cdde9a,.m_3b16f56b,.m_8983817,.m_3840c879{transition-duration:var(--app-shell-transition-duration);transition-timing-function:var(--app-shell-transition-timing-function)}.m_45252eee,.m_9cdde9a{position:fixed;display:flex;flex-direction:column;top:var(--app-shell-header-offset, 0rem);height:calc(100dvh - var(--app-shell-header-offset, 0rem) - var(--app-shell-footer-offset, 0rem));background-color:var(--mantine-color-body);transition-property:transform,top,height}:where([data-layout=alt]) .m_45252eee,:where([data-layout=alt]) .m_9cdde9a{top:0rem;height:100dvh}.m_45252eee{inset-inline-start:0;width:var(--app-shell-navbar-width);transition-property:transform,top,height;transform:var(--app-shell-navbar-transform);z-index:var(--app-shell-navbar-z-index)}:where([dir=rtl]) .m_45252eee{transform:var(--app-shell-navbar-transform-rtl)}.m_45252eee:where([data-with-border]){border-inline-end:1px solid var(--app-shell-border-color)}.m_9cdde9a{inset-inline-end:0;width:var(--app-shell-aside-width);transform:var(--app-shell-aside-transform);z-index:var(--app-shell-aside-z-index)}:where([dir=rtl]) .m_9cdde9a{transform:var(--app-shell-aside-transform-rtl)}.m_9cdde9a:where([data-with-border]){border-inline-start:1px solid var(--app-shell-border-color)}.m_8983817{padding-inline-start:calc(var(--app-shell-navbar-offset, 0rem) + var(--app-shell-padding));padding-inline-end:calc(var(--app-shell-aside-offset, 0rem) + var(--app-shell-padding));padding-top:calc(var(--app-shell-header-offset, 0rem) + var(--app-shell-padding));padding-bottom:calc(var(--app-shell-footer-offset, 0rem) + var(--app-shell-padding));min-height:100dvh;transition-property:padding}.m_3b16f56b,.m_3840c879{position:fixed;inset-inline:0;transition-property:transform,left,right;background-color:var(--mantine-color-body)}:where([data-layout=alt]) .m_3b16f56b,:where([data-layout=alt]) .m_3840c879{inset-inline-start:var(--app-shell-navbar-offset, 0rem);inset-inline-end:var(--app-shell-aside-offset, 0rem)}.m_3b16f56b{top:0;height:var(--app-shell-header-height);background-color:var(--mantine-color-body);transform:var(--app-shell-header-transform);z-index:var(--app-shell-header-z-index)}.m_3b16f56b:where([data-with-border]){border-bottom:1px solid var(--app-shell-border-color)}.m_3840c879{bottom:0;height:calc(var(--app-shell-footer-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);transform:var(--app-shell-footer-transform);z-index:var(--app-shell-footer-z-index)}.m_3840c879:where([data-with-border]){border-top:1px solid var(--app-shell-border-color)}.m_6dcfc7c7{flex-grow:0}.m_6dcfc7c7:where([data-grow]){flex-grow:1}.m_71ac47fc{--ar-ratio: 1;max-width:100%}.m_71ac47fc>:where(*:not(style)){aspect-ratio:var(--ar-ratio);width:100%}.m_71ac47fc>:where(img,video){object-fit:cover}.m_88b62a41{--combobox-padding: calc(.25rem * var(--mantine-scale));padding:var(--combobox-padding)}.m_88b62a41:has([data-mantine-scrollbar]) .m_985517d8{max-width:calc(100% + var(--combobox-padding))}.m_88b62a41[data-composed]{padding-inline-end:0}.m_88b62a41[data-hidden]{display:none}.m_88b62a41,.m_b2821a6e{--combobox-option-padding-xs: calc(.25rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));--combobox-option-padding-sm: calc(.375rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--combobox-option-padding-md: calc(.5rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale));--combobox-option-padding-lg: calc(.625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--combobox-option-padding-xl: calc(.875rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--combobox-option-padding: var(--combobox-option-padding-sm)}.m_92253aa5{padding:var(--combobox-option-padding);font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border-radius:var(--mantine-radius-default);background-color:transparent;color:inherit;cursor:pointer;word-break:break-word}.m_92253aa5:where([data-combobox-selected]){background-color:var(--mantine-primary-color-filled);color:var(--mantine-color-white)}.m_92253aa5:where([data-combobox-disabled]){cursor:not-allowed;opacity:.35}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}.m_985517d8{margin-inline:calc(var(--combobox-padding) * -1);margin-top:calc(var(--combobox-padding) * -1);width:calc(100% + var(--combobox-padding) * 2);border-top-width:0;border-inline-width:0;border-end-start-radius:0;border-end-end-radius:0;margin-bottom:var(--combobox-padding);position:relative}:where([data-mantine-color-scheme=light]) .m_985517d8,:where([data-mantine-color-scheme=light]) .m_985517d8:focus{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_985517d8,:where([data-mantine-color-scheme=dark]) .m_985517d8:focus{border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=light]) .m_985517d8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_985517d8{background-color:var(--mantine-color-dark-7)}.m_2530cd1d{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));text-align:center;padding:var(--combobox-option-padding);color:var(--mantine-color-dimmed)}.m_858f94bd,.m_82b967cb{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border:0 solid transparent;margin-inline:calc(var(--combobox-padding) * -1);padding:var(--combobox-option-padding)}:where([data-mantine-color-scheme=light]) .m_858f94bd,:where([data-mantine-color-scheme=light]) .m_82b967cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_858f94bd,:where([data-mantine-color-scheme=dark]) .m_82b967cb{border-color:var(--mantine-color-dark-4)}.m_82b967cb{border-top-width:calc(.0625rem * var(--mantine-scale));margin-top:var(--combobox-padding);margin-bottom:calc(var(--combobox-padding) * -1)}.m_858f94bd{border-bottom-width:calc(.0625rem * var(--mantine-scale));margin-bottom:var(--combobox-padding);margin-top:calc(var(--combobox-padding) * -1)}.m_254f3e4f:has(.m_2bb2e9e5:only-child){display:none}.m_2bb2e9e5{color:var(--mantine-color-dimmed);font-size:calc(var(--combobox-option-fz, var(--mantine-font-size-sm)) * .85);padding:var(--combobox-option-padding);font-weight:500;position:relative;display:flex;align-items:center}.m_2bb2e9e5:after{content:"";flex:1;inset-inline:0;height:calc(.0625rem * var(--mantine-scale));margin-inline-start:var(--mantine-spacing-xs)}:where([data-mantine-color-scheme=light]) .m_2bb2e9e5:after{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_2bb2e9e5:after{background-color:var(--mantine-color-dark-4)}.m_2bb2e9e5:only-child{display:none}.m_2943220b{--combobox-chevron-size-xs: calc(.875rem * var(--mantine-scale));--combobox-chevron-size-sm: calc(1.125rem * var(--mantine-scale));--combobox-chevron-size-md: calc(1.25rem * var(--mantine-scale));--combobox-chevron-size-lg: calc(1.5rem * var(--mantine-scale));--combobox-chevron-size-xl: calc(1.75rem * var(--mantine-scale));--combobox-chevron-size: var(--combobox-chevron-size-sm)}:where([data-mantine-color-scheme=light]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-gray-6))}:where([data-mantine-color-scheme=dark]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-dark-3))}.m_2943220b{width:var(--combobox-chevron-size);height:var(--combobox-chevron-size);color:var(--_combobox-chevron-color)}.m_2943220b:where([data-error]){color:var(--combobox-chevron-color, var(--mantine-color-error))}.m_390b5f4{display:flex;align-items:center;gap:calc(.5rem * var(--mantine-scale))}.m_390b5f4:where([data-reverse]){justify-content:space-between}.m_8ee53fc2{opacity:.4;width:.8em;min-width:.8em;height:.8em}:where([data-combobox-selected]) .m_8ee53fc2{opacity:1}.m_5f75b09e{--label-lh-xs: calc(1rem * var(--mantine-scale));--label-lh-sm: calc(1.25rem * var(--mantine-scale));--label-lh-md: calc(1.5rem * var(--mantine-scale));--label-lh-lg: calc(1.875rem * var(--mantine-scale));--label-lh-xl: calc(2.25rem * var(--mantine-scale));--label-lh: var(--label-lh-sm)}.m_5f75b09e[data-label-position=left]{--label-order: 1;--label-offset-end: var(--mantine-spacing-sm);--label-offset-start: 0}.m_5f75b09e[data-label-position=right]{--label-order: 2;--label-offset-end: 0;--label-offset-start: var(--mantine-spacing-sm)}.m_5f6e695e{display:flex}.m_d3ea56bb{--label-cursor: var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:inline-flex;flex-direction:column;font-size:var(--label-fz, var(--mantine-font-size-sm));line-height:var(--label-lh);cursor:var(--label-cursor);order:var(--label-order)}fieldset:disabled .m_d3ea56bb,.m_d3ea56bb[data-disabled]{--label-cursor: not-allowed}.m_8ee546b8{cursor:var(--label-cursor);color:inherit;padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_8ee546b8,:where([data-mantine-color-scheme=light]) .m_8ee546b8:where([data-disabled]){color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_8ee546b8,:where([data-mantine-color-scheme=dark]) .m_8ee546b8:where([data-disabled]){color:var(--mantine-color-dark-3)}.m_328f68c0,.m_8e8a99cc{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}.m_26775b0a{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_26775b0a :where(*){cursor:inherit}.m_26775b0a:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_5e5256ee{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled);--checkbox-icon-color: var(--mantine-color-white);position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);min-width:var(--checkbox-size);height:var(--checkbox-size);min-height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_5e5256ee{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_5e5256ee[data-indeterminate],.m_5e5256ee[data-checked]{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_5e5256ee[data-indeterminate]>.m_1b1c543a,.m_5e5256ee[data-checked]>.m_1b1c543a{opacity:1;transform:none;color:var(--checkbox-icon-color)}.m_5e5256ee[data-disabled]{cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_5e5256ee[data-disabled]{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee[data-disabled]{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-dark-3)}.m_76e20374[data-indeterminate]:not([data-disabled]),.m_76e20374[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--checkbox-color)}.m_76e20374[data-indeterminate]:not([data-disabled])>.m_1b1c543a,.m_76e20374[data-checked]:not([data-disabled])>.m_1b1c543a{color:var(--checkbox-color);opacity:1;transform:none}.m_1b1c543a{display:block;width:60%;color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_bf2d988c{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled);--checkbox-icon-color: var(--mantine-color-white)}.m_26062bec{position:relative;width:var(--checkbox-size);height:var(--checkbox-size);order:1}.m_26062bec:where([data-label-position=left]){order:2}.m_26063560{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));padding:0;display:block;margin:0;transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_26063560{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_26063560{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_26063560:where([data-error]){border-color:var(--mantine-color-error)}.m_26063560[data-indeterminate],.m_26063560:checked{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_26063560[data-indeterminate]+.m_bf295423,.m_26063560:checked+.m_bf295423{opacity:1;transform:none}.m_26063560:disabled{cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_26063560:disabled{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26063560:disabled{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .m_26063560:disabled+.m_bf295423{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_26063560:disabled+.m_bf295423{color:var(--mantine-color-dark-3)}.m_215c4542+.m_bf295423{color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled),.m_215c4542:checked:not(:disabled){background-color:transparent;border-color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled)+.m_bf295423,.m_215c4542:checked:not(:disabled)+.m_bf295423{color:var(--checkbox-color);opacity:1;transform:none}.m_bf295423{position:absolute;top:0;right:0;bottom:0;left:0;width:60%;margin:auto;color:var(--checkbox-icon-color);pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:0;transition:transform .1s ease,opacity .1s ease}.m_11def92b{--ag-spacing: var(--mantine-spacing-sm);--ag-offset: calc(var(--ag-spacing) * -1);display:flex;padding-inline-start:var(--ag-spacing)}.m_f85678b6{--avatar-size-xs: calc(1rem * var(--mantine-scale));--avatar-size-sm: calc(1.625rem * var(--mantine-scale));--avatar-size-md: calc(2.375rem * var(--mantine-scale));--avatar-size-lg: calc(3.5rem * var(--mantine-scale));--avatar-size-xl: calc(5.25rem * var(--mantine-scale));--avatar-size: var(--avatar-size-md);--avatar-radius: calc(62.5rem * var(--mantine-scale));--avatar-bg: var(--mantine-color-gray-light);--avatar-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--avatar-color: var(--mantine-color-gray-light-color);--avatar-placeholder-fz: calc(var(--avatar-size) / 2.5);-webkit-tap-highlight-color:transparent;position:relative;display:block;-webkit-user-select:none;user-select:none;overflow:hidden;border-radius:var(--avatar-radius);text-decoration:none;padding:0;width:var(--avatar-size);height:var(--avatar-size);min-width:var(--avatar-size)}.m_f85678b6:where([data-within-group]){margin-inline-start:var(--ag-offset);border:2px solid var(--mantine-color-body);background:var(--mantine-color-body)}.m_11f8ac07{object-fit:cover;width:100%;height:100%;display:block}.m_104cd71f{font-weight:700;display:flex;align-items:center;justify-content:center;width:100%;height:100%;-webkit-user-select:none;user-select:none;border-radius:var(--avatar-radius);font-size:var(--avatar-placeholder-fz);background:var(--avatar-bg);border:var(--avatar-bd);color:var(--avatar-color)}.m_104cd71f>[data-avatar-placeholder-icon]{width:70%;height:70%}.m_2ce0de02{background-size:cover;background-position:center;display:block;width:100%;border:0;text-decoration:none;border-radius:var(--bi-radius, 0)}.m_347db0ec{--badge-height-xs: calc(1rem * var(--mantine-scale));--badge-height-sm: calc(1.125rem * var(--mantine-scale));--badge-height-md: calc(1.25rem * var(--mantine-scale));--badge-height-lg: calc(1.625rem * var(--mantine-scale));--badge-height-xl: calc(2rem * var(--mantine-scale));--badge-fz-xs: calc(.5625rem * var(--mantine-scale));--badge-fz-sm: calc(.625rem * var(--mantine-scale));--badge-fz-md: calc(.6875rem * var(--mantine-scale));--badge-fz-lg: calc(.8125rem * var(--mantine-scale));--badge-fz-xl: calc(1rem * var(--mantine-scale));--badge-padding-x-xs: calc(.375rem * var(--mantine-scale));--badge-padding-x-sm: calc(.5rem * var(--mantine-scale));--badge-padding-x-md: calc(.625rem * var(--mantine-scale));--badge-padding-x-lg: calc(.75rem * var(--mantine-scale));--badge-padding-x-xl: calc(1rem * var(--mantine-scale));--badge-height: var(--badge-height-md);--badge-fz: var(--badge-fz-md);--badge-padding-x: var(--badge-padding-x-md);--badge-radius: calc(62.5rem * var(--mantine-scale));--badge-lh: calc(var(--badge-height) - calc(.125rem * var(--mantine-scale)));--badge-color: var(--mantine-color-white);--badge-bg: var(--mantine-primary-color-filled);--badge-border-width: calc(.0625rem * var(--mantine-scale));--badge-bd: var(--badge-border-width) solid transparent;-webkit-tap-highlight-color:transparent;font-size:var(--badge-fz);border-radius:var(--badge-radius);height:var(--badge-height);line-height:var(--badge-lh);text-decoration:none;padding:0 var(--badge-padding-x);display:inline-grid;align-items:center;justify-content:center;width:fit-content;text-transform:uppercase;font-weight:700;letter-spacing:calc(.015625rem * var(--mantine-scale));cursor:default;text-overflow:ellipsis;overflow:hidden;color:var(--badge-color);background:var(--badge-bg);border:var(--badge-bd)}.m_347db0ec:where([data-with-left-section],[data-variant=dot]){grid-template-columns:auto 1fr}.m_347db0ec:where([data-with-right-section]){grid-template-columns:1fr auto}.m_347db0ec:where([data-with-left-section][data-with-right-section],[data-variant=dot][data-with-right-section]){grid-template-columns:auto 1fr auto}.m_347db0ec:where([data-block]){display:flex;width:100%}.m_347db0ec:where([data-circle]){padding-inline:calc(.125rem * var(--mantine-scale));display:flex;width:var(--badge-height)}.m_fbd81e3d{--badge-dot-size: calc(var(--badge-height) / 3.4)}:where([data-mantine-color-scheme=light]) .m_fbd81e3d{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fbd81e3d{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_fbd81e3d:before{content:"";display:block;width:var(--badge-dot-size);height:var(--badge-dot-size);border-radius:var(--badge-dot-size);background-color:var(--badge-dot-color);margin-inline-end:var(--badge-dot-size)}.m_5add502a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;cursor:inherit}.m_91fdda9b{--badge-section-margin: calc(var(--mantine-spacing-xs) / 2);display:inline-flex;justify-content:center;align-items:center;max-height:calc(var(--badge-height) - var(--badge-border-width) * 2)}.m_91fdda9b:where([data-position=left]){margin-inline-end:var(--badge-section-margin)}.m_91fdda9b:where([data-position=right]){margin-inline-start:var(--badge-section-margin)}.m_ddec01c0{--blockquote-border: 3px solid var(--bq-bd);position:relative;margin:0;border-inline-start:var(--blockquote-border);border-start-end-radius:var(--bq-radius);border-end-end-radius:var(--bq-radius);padding:var(--mantine-spacing-xl) calc(2.375rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_ddec01c0{background-color:var(--bq-bg-light)}:where([data-mantine-color-scheme=dark]) .m_ddec01c0{background-color:var(--bq-bg-dark)}.m_dde7bd57{--blockquote-icon-offset: calc(var(--bq-icon-size) / -2);position:absolute;color:var(--bq-bd);background-color:var(--mantine-color-body);display:flex;align-items:center;justify-content:center;top:var(--blockquote-icon-offset);inset-inline-start:var(--blockquote-icon-offset);width:var(--bq-icon-size);height:var(--bq-icon-size);border-radius:var(--bq-icon-size)}.m_dde51a35{display:block;margin-top:var(--mantine-spacing-md);opacity:.6;font-size:85%}.m_8b3717df{display:flex;align-items:center;flex-wrap:wrap}.m_f678d540{line-height:1;white-space:nowrap;-webkit-tap-highlight-color:transparent}.m_3b8f2208{margin-inline:var(--bc-separator-margin, var(--mantine-spacing-xs));line-height:1;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_3b8f2208{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_3b8f2208{color:var(--mantine-color-dark-2)}.m_fea6bf1a{--burger-size-xs: calc(.75rem * var(--mantine-scale));--burger-size-sm: calc(1.125rem * var(--mantine-scale));--burger-size-md: calc(1.5rem * var(--mantine-scale));--burger-size-lg: calc(2.125rem * var(--mantine-scale));--burger-size-xl: calc(2.625rem * var(--mantine-scale));--burger-size: var(--burger-size-md);--burger-line-size: calc(var(--burger-size) / 12);width:calc(var(--burger-size) + var(--mantine-spacing-xs));height:calc(var(--burger-size) + var(--mantine-spacing-xs));padding:calc(var(--mantine-spacing-xs) / 2);cursor:pointer}:where([data-mantine-color-scheme=light]) .m_fea6bf1a{--burger-color: var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fea6bf1a{--burger-color: var(--mantine-color-white)}.m_d4fb9cad{position:relative;-webkit-user-select:none;user-select:none}.m_d4fb9cad,.m_d4fb9cad:before,.m_d4fb9cad:after{display:block;width:var(--burger-size);height:var(--burger-line-size);background-color:var(--burger-color);outline:calc(.0625rem * var(--mantine-scale)) solid transparent;transition-property:background-color,transform;transition-duration:var(--burger-transition-duration, .3s);transition-timing-function:var(--burger-transition-timing-function, ease)}.m_d4fb9cad:before,.m_d4fb9cad:after{position:absolute;content:"";inset-inline-start:0}.m_d4fb9cad:before{top:calc(var(--burger-size) / -3)}.m_d4fb9cad:after{top:calc(var(--burger-size) / 3)}.m_d4fb9cad[data-opened]{background-color:transparent}.m_d4fb9cad[data-opened]:before{transform:translateY(calc(var(--burger-size) / 3)) rotate(45deg)}.m_d4fb9cad[data-opened]:after{transform:translateY(calc(var(--burger-size) / -3)) rotate(-45deg)}.m_77c9d27d{--button-height-xs: calc(1.875rem * var(--mantine-scale));--button-height-sm: calc(2.25rem * var(--mantine-scale));--button-height-md: calc(2.625rem * var(--mantine-scale));--button-height-lg: calc(3.125rem * var(--mantine-scale));--button-height-xl: calc(3.75rem * var(--mantine-scale));--button-height-compact-xs: calc(1.375rem * var(--mantine-scale));--button-height-compact-sm: calc(1.625rem * var(--mantine-scale));--button-height-compact-md: calc(1.875rem * var(--mantine-scale));--button-height-compact-lg: calc(2.125rem * var(--mantine-scale));--button-height-compact-xl: calc(2.5rem * var(--mantine-scale));--button-padding-x-xs: calc(.875rem * var(--mantine-scale));--button-padding-x-sm: calc(1.125rem * var(--mantine-scale));--button-padding-x-md: calc(1.375rem * var(--mantine-scale));--button-padding-x-lg: calc(1.625rem * var(--mantine-scale));--button-padding-x-xl: calc(2rem * var(--mantine-scale));--button-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--button-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--button-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--button-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--button-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--button-height: var(--button-height-sm);--button-padding-x: var(--button-padding-x-sm);--button-color: var(--mantine-color-white);-webkit-user-select:none;user-select:none;font-weight:600;position:relative;line-height:1;text-align:center;overflow:hidden;width:auto;cursor:pointer;display:inline-block;border-radius:var(--button-radius, var(--mantine-radius-default));font-size:var(--button-fz, var(--mantine-font-size-sm));background:var(--button-bg, var(--mantine-primary-color-filled));border:var(--button-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--button-color, var(--mantine-color-white));height:var(--button-height, var(--button-height-sm));padding-inline:var(--button-padding-x, var(--button-padding-x-sm));vertical-align:middle}.m_77c9d27d:where([data-block]){display:block;width:100%}.m_77c9d27d:where([data-with-left-section]){padding-inline-start:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where([data-with-right-section]){padding-inline-end:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;transform:none}:where([data-mantine-color-scheme=light]) .m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){color:var(--mantine-color-gray-5);background:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){color:var(--mantine-color-dark-3);background:var(--mantine-color-dark-6)}.m_77c9d27d:before{content:"";pointer-events:none;position:absolute;inset:calc(-.0625rem * var(--mantine-scale));border-radius:var(--button-radius, var(--mantine-radius-default));transform:translateY(-100%);opacity:0;filter:blur(12px);transition:transform .15s ease,opacity .1s ease}:where([data-mantine-color-scheme=light]) .m_77c9d27d:before{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:before{background-color:#00000026}.m_77c9d27d:where([data-loading]){cursor:not-allowed;transform:none}.m_77c9d27d:where([data-loading]):before{transform:translateY(0);opacity:1}.m_77c9d27d:where([data-loading]) .m_80f1301b{opacity:0;transform:translateY(100%)}@media(hover:hover){.m_77c9d27d:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}@media(hover:none){.m_77c9d27d:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}.m_80f1301b{display:flex;align-items:center;justify-content:var(--button-justify, center);height:100%;overflow:visible;transition:transform .15s ease,opacity .1s ease}.m_811560b9{white-space:nowrap;height:100%;overflow:hidden;display:flex;align-items:center;opacity:1}.m_811560b9:where([data-loading]){opacity:.2}.m_a74036a{display:flex;align-items:center}.m_a74036a:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_a74036a:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_a25b86ee{position:absolute;left:50%;top:50%}.m_80d6d844{--button-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_80d6d844 :where(.m_77c9d27d):focus{position:relative;z-index:1}.m_80d6d844[data-orientation=horizontal]{flex-direction:row}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical]{flex-direction:column}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--button-border-width) / 2);border-top-width:calc(var(--button-border-width) / 2)}.m_70be2a01{--section-height-xs: calc(1.875rem * var(--mantine-scale));--section-height-sm: calc(2.25rem * var(--mantine-scale));--section-height-md: calc(2.625rem * var(--mantine-scale));--section-height-lg: calc(3.125rem * var(--mantine-scale));--section-height-xl: calc(3.75rem * var(--mantine-scale));--section-height-compact-xs: calc(1.375rem * var(--mantine-scale));--section-height-compact-sm: calc(1.625rem * var(--mantine-scale));--section-height-compact-md: calc(1.875rem * var(--mantine-scale));--section-height-compact-lg: calc(2.125rem * var(--mantine-scale));--section-height-compact-xl: calc(2.5rem * var(--mantine-scale));--section-padding-x-xs: calc(.875rem * var(--mantine-scale));--section-padding-x-sm: calc(1.125rem * var(--mantine-scale));--section-padding-x-md: calc(1.375rem * var(--mantine-scale));--section-padding-x-lg: calc(1.625rem * var(--mantine-scale));--section-padding-x-xl: calc(2rem * var(--mantine-scale));--section-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--section-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--section-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_e615b15f{--card-padding: var(--mantine-spacing-md);position:relative;overflow:hidden;display:flex;flex-direction:column;padding:var(--card-padding);color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_e615b15f{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_e615b15f{background-color:var(--mantine-color-dark-6)}.m_599a2148{display:block;margin-inline:calc(var(--card-padding) * -1)}.m_599a2148:where(:first-child){margin-top:calc(var(--card-padding) * -1);border-top:none!important}.m_599a2148:where(:last-child){margin-bottom:calc(var(--card-padding) * -1);border-bottom:none!important}.m_599a2148:where([data-inherit-padding]){padding-inline:var(--card-padding)}.m_599a2148:where([data-with-border]){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-bottom:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_599a2148{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_599a2148{border-color:var(--mantine-color-dark-4)}.m_599a2148+.m_599a2148{border-top:none!important}.m_4451eb3a{display:flex;align-items:center;justify-content:center}.m_4451eb3a:where([data-inline]){display:inline-flex}.m_f59ffda3{--chip-size-xs: calc(1.4375rem * var(--mantine-scale));--chip-size-sm: calc(1.75rem * var(--mantine-scale));--chip-size-md: calc(2rem * var(--mantine-scale));--chip-size-lg: calc(2.25rem * var(--mantine-scale));--chip-size-xl: calc(2.5rem * var(--mantine-scale));--chip-icon-size-xs: calc(.625rem * var(--mantine-scale));--chip-icon-size-sm: calc(.75rem * var(--mantine-scale));--chip-icon-size-md: calc(.875rem * var(--mantine-scale));--chip-icon-size-lg: calc(1rem * var(--mantine-scale));--chip-icon-size-xl: calc(1.125rem * var(--mantine-scale));--chip-padding-xs: calc(1rem * var(--mantine-scale));--chip-padding-sm: calc(1.25rem * var(--mantine-scale));--chip-padding-md: calc(1.5rem * var(--mantine-scale));--chip-padding-lg: calc(1.75rem * var(--mantine-scale));--chip-padding-xl: calc(2rem * var(--mantine-scale));--chip-checked-padding-xs: calc(.46875rem * var(--mantine-scale));--chip-checked-padding-sm: calc(.625rem * var(--mantine-scale));--chip-checked-padding-md: calc(.73125rem * var(--mantine-scale));--chip-checked-padding-lg: calc(.84375rem * var(--mantine-scale));--chip-checked-padding-xl: calc(.98125rem * var(--mantine-scale));--chip-spacing-xs: calc(.625rem * var(--mantine-scale));--chip-spacing-sm: calc(.75rem * var(--mantine-scale));--chip-spacing-md: calc(1rem * var(--mantine-scale));--chip-spacing-lg: calc(1.25rem * var(--mantine-scale));--chip-spacing-xl: calc(1.375rem * var(--mantine-scale));--chip-size: var(--chip-size-sm);--chip-icon-size: var(--chip-icon-size-sm);--chip-padding: var(--chip-padding-sm);--chip-spacing: var(--chip-spacing-sm);--chip-checked-padding: var(--chip-checked-padding-sm);--chip-bg: var(--mantine-primary-color-filled);--chip-hover: var(--mantine-primary-color-filled-hover);--chip-color: var(--mantine-color-white);--chip-bd: calc(.0625rem * var(--mantine-scale)) solid transparent}.m_be049a53{display:inline-flex;align-items:center;-webkit-user-select:none;user-select:none;border-radius:var(--chip-radius, 1000rem);height:var(--chip-size);font-size:var(--chip-fz, var(--mantine-font-size-sm));line-height:calc(var(--chip-size) - calc(.125rem * var(--mantine-scale)));padding-inline:var(--chip-padding);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}.m_be049a53:where([data-checked]){padding:var(--chip-checked-padding)}.m_be049a53:where([data-disabled]){cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_be049a53:where([data-disabled]){background-color:var(--mantine-color-gray-2);color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) .m_be049a53:where([data-disabled]){background-color:var(--mantine-color-dark-6);color:var(--mantine-color-dark-3)}:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-white);border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-dark-6);border:1px solid var(--mantine-color-dark-4)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-dark-5)}}.m_3904c1af:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);border:var(--chip-bd)}@media(hover:hover){.m_3904c1af:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_3904c1af:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_fa109255:not([data-disabled]),.m_f7e165c3:not([data-disabled]){border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-dark-5)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-dark-4)}}.m_fa109255:not([data-disabled]):where([data-checked]),.m_f7e165c3:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);color:var(--chip-color);background-color:var(--chip-bg)}@media(hover:hover){.m_fa109255:not([data-disabled]):where([data-checked]):hover,.m_f7e165c3:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_fa109255:not([data-disabled]):where([data-checked]):active,.m_f7e165c3:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_9ac86df9{width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));max-width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));height:var(--chip-icon-size);display:flex;align-items:center;overflow:hidden}.m_d6d72580{width:var(--chip-icon-size);height:var(--chip-icon-size);display:block;color:var(--chip-icon-color, inherit)}.m_bde07329{width:0;height:0;padding:0;opacity:0;margin:0}.m_bde07329:focus-visible+.m_be049a53{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_b183c0a2{font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);padding:2px calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);font-size:var(--mantine-font-size-xs);margin:0;overflow:auto}:where([data-mantine-color-scheme=light]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-gray-1));color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-dark-5));color:var(--mantine-color-white)}.m_b183c0a2[data-block]{padding:var(--mantine-spacing-xs)}.m_de3d2490{--cs-size: calc(1.75rem * var(--mantine-scale));--cs-radius: calc(62.5rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;line-height:1;position:relative;width:var(--cs-size);height:var(--cs-size);min-width:var(--cs-size);min-height:var(--cs-size);border-radius:var(--cs-radius);color:inherit;text-decoration:none}[data-mantine-color-scheme=light] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-gray-3);--alpha-overlay-bg: var(--mantine-color-white)}[data-mantine-color-scheme=dark] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-dark-4);--alpha-overlay-bg: var(--mantine-color-dark-7)}.m_862f3d1b{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--cs-radius)}.m_98ae7f22{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--cs-radius);z-index:1;box-shadow:#0000001a 0 0 0 calc(.0625rem * var(--mantine-scale)) inset,#00000026 0 0 calc(.25rem * var(--mantine-scale)) inset}.m_95709ac0{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--cs-radius);background-size:calc(.5rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));background-position:0 0,0 calc(.25rem * var(--mantine-scale)),calc(.25rem * var(--mantine-scale)) calc(-.25rem * var(--mantine-scale)),calc(-.25rem * var(--mantine-scale)) 0;background-image:linear-gradient(45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(-45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--alpha-overlay-color) 75%),linear-gradient(-45deg,var(--alpha-overlay-bg) 75%,var(--alpha-overlay-color) 75%)}.m_93e74e3{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--cs-radius);z-index:2;display:flex;align-items:center;justify-content:center}.m_fee9c77{--cp-width-xs: calc(11.25rem * var(--mantine-scale));--cp-width-sm: calc(12.5rem * var(--mantine-scale));--cp-width-md: calc(15rem * var(--mantine-scale));--cp-width-lg: calc(17.5rem * var(--mantine-scale));--cp-width-xl: calc(20rem * var(--mantine-scale));--cp-preview-size-xs: calc(1.625rem * var(--mantine-scale));--cp-preview-size-sm: calc(2.125rem * var(--mantine-scale));--cp-preview-size-md: calc(2.625rem * var(--mantine-scale));--cp-preview-size-lg: calc(3.125rem * var(--mantine-scale));--cp-preview-size-xl: calc(3.375rem * var(--mantine-scale));--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-saturation-height-xs: calc(6.25rem * var(--mantine-scale));--cp-saturation-height-sm: calc(6.875rem * var(--mantine-scale));--cp-saturation-height-md: calc(7.5rem * var(--mantine-scale));--cp-saturation-height-lg: calc(8.75rem * var(--mantine-scale));--cp-saturation-height-xl: calc(10rem * var(--mantine-scale));--cp-preview-size: var(--cp-preview-size-sm);--cp-thumb-size: var(--cp-thumb-size-sm);--cp-saturation-height: var(--cp-saturation-height-sm);--cp-width: var(--cp-width-sm);--cp-body-spacing: var(--mantine-spacing-sm);width:var(--cp-width);padding:calc(.0625rem * var(--mantine-scale))}.m_fee9c77:where([data-full-width]){width:100%}.m_9dddfbac{width:var(--cp-preview-size);height:var(--cp-preview-size)}.m_bffecc3e{display:flex;padding-top:calc(var(--cp-body-spacing) / 2)}.m_3283bb96{flex:1}.m_3283bb96:not(:only-child){margin-inline-end:var(--mantine-spacing-xs)}.m_40d572ba{overflow:hidden;position:absolute;box-shadow:0 0 1px #0009;border:2px solid var(--mantine-color-white);width:var(--cp-thumb-size);height:var(--cp-thumb-size);border-radius:var(--cp-thumb-size);left:calc(var(--thumb-x-offset) - var(--cp-thumb-size) / 2);top:calc(var(--thumb-y-offset) - var(--cp-thumb-size) / 2)}.m_d8ee6fd8{height:unset!important;width:unset!important;min-width:0!important;min-height:0!important;margin:calc(.125rem * var(--mantine-scale));cursor:pointer;padding-bottom:calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)));flex:0 0 calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)))}.m_5711e686{margin-top:calc(.3125rem * var(--mantine-scale));margin-inline:calc(-.125rem * var(--mantine-scale));display:flex;flex-wrap:wrap}.m_202a296e{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;position:relative;height:var(--cp-saturation-height);border-radius:var(--mantine-radius-sm);margin:calc(var(--cp-thumb-size) / 2)}.m_202a296e:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_202a296e:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_11b3db02{position:absolute;border-radius:var(--mantine-radius-sm);inset:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)))}.m_d856d47d{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-thumb-size: var(--cp-thumb-size, calc(.75rem * var(--mantine-scale)));position:relative;height:calc(var(--cp-thumb-size) + calc(.125rem * var(--mantine-scale)));margin-inline:calc(var(--cp-thumb-size) / 2);outline:none}.m_d856d47d+.m_d856d47d{margin-top:calc(.375rem * var(--mantine-scale))}.m_d856d47d:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_d856d47d:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}:where([data-mantine-color-scheme=light]) .m_d856d47d{--slider-checkers: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d856d47d{--slider-checkers: var(--mantine-color-dark-4)}.m_8f327113{position:absolute;top:0;bottom:0;inset-inline:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)));border-radius:10000rem}.m_b077c2bc{--ci-eye-dropper-icon-size-xs: calc(.875rem * var(--mantine-scale));--ci-eye-dropper-icon-size-sm: calc(1rem * var(--mantine-scale));--ci-eye-dropper-icon-size-md: calc(1.125rem * var(--mantine-scale));--ci-eye-dropper-icon-size-lg: calc(1.25rem * var(--mantine-scale));--ci-eye-dropper-icon-size-xl: calc(1.375rem * var(--mantine-scale));--ci-eye-dropper-icon-size: var(--ci-eye-dropper-icon-size-sm)}.m_c5ccdcab{--ci-preview-size-xs: calc(1rem * var(--mantine-scale));--ci-preview-size-sm: calc(1.125rem * var(--mantine-scale));--ci-preview-size-md: calc(1.375rem * var(--mantine-scale));--ci-preview-size-lg: calc(1.75rem * var(--mantine-scale));--ci-preview-size-xl: calc(2.25rem * var(--mantine-scale));--ci-preview-size: var(--ci-preview-size-sm)}.m_5ece2cd7{padding:calc(.5rem * var(--mantine-scale))}.m_7485cace{--container-size-xs: calc(33.75rem * var(--mantine-scale));--container-size-sm: calc(45rem * var(--mantine-scale));--container-size-md: calc(60rem * var(--mantine-scale));--container-size-lg: calc(71.25rem * var(--mantine-scale));--container-size-xl: calc(82.5rem * var(--mantine-scale));--container-size: var(--container-size-md);max-width:var(--container-size);padding-inline:var(--mantine-spacing-md);margin-inline:auto}.m_7485cace:where([data-fluid]){max-width:100%}.m_e2125a27{--dialog-size-xs: calc(10rem * var(--mantine-scale));--dialog-size-sm: calc(12.5rem * var(--mantine-scale));--dialog-size-md: calc(21.25rem * var(--mantine-scale));--dialog-size-lg: calc(25rem * var(--mantine-scale));--dialog-size-xl: calc(31.25rem * var(--mantine-scale));--dialog-size: var(--dialog-size-md);position:relative;width:var(--dialog-size);max-width:calc(100vw - var(--mantine-spacing-xl) * 2);min-height:calc(3.125rem * var(--mantine-scale))}.m_5abab665{position:absolute;top:calc(var(--mantine-spacing-md) / 2);inset-inline-end:calc(var(--mantine-spacing-md) / 2)}.m_3eebeb36{--divider-size-xs: calc(.0625rem * var(--mantine-scale));--divider-size-sm: calc(.125rem * var(--mantine-scale));--divider-size-md: calc(.1875rem * var(--mantine-scale));--divider-size-lg: calc(.25rem * var(--mantine-scale));--divider-size-xl: calc(.3125rem * var(--mantine-scale));--divider-size: var(--divider-size-xs)}:where([data-mantine-color-scheme=light]) .m_3eebeb36{--divider-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3eebeb36{--divider-color: var(--mantine-color-dark-4)}.m_3eebeb36:where([data-orientation=horizontal]){border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color)}.m_3eebeb36:where([data-orientation=vertical]){border-inline-start:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);height:auto;align-self:stretch}.m_3eebeb36:where([data-with-label]){border:0}.m_9e365f20{display:flex;align-items:center;font-size:var(--mantine-font-size-xs);color:var(--mantine-color-dimmed);white-space:nowrap}.m_9e365f20:where([data-position=left]):before{display:none}.m_9e365f20:where([data-position=right]):after{display:none}.m_9e365f20:before{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-end:var(--mantine-spacing-xs)}.m_9e365f20:after{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-start:var(--mantine-spacing-xs)}.m_f11b401e{--drawer-size-xs: calc(20rem * var(--mantine-scale));--drawer-size-sm: calc(23.75rem * var(--mantine-scale));--drawer-size-md: calc(27.5rem * var(--mantine-scale));--drawer-size-lg: calc(38.75rem * var(--mantine-scale));--drawer-size-xl: calc(48.75rem * var(--mantine-scale));--drawer-size: var(--drawer-size-md);--drawer-offset: 0rem}.m_5a7c2c9{z-index:1000}.m_b8a05bbd{flex:var(--drawer-flex, 0 0 var(--drawer-size));height:var(--drawer-height, calc(100% - var(--drawer-offset) * 2));margin:var(--drawer-offset);max-width:calc(100% - var(--drawer-offset) * 2);max-height:calc(100% - var(--drawer-offset) * 2);overflow-y:auto}.m_b8a05bbd[data-hidden]{opacity:0!important;pointer-events:none}.m_31cd769a{display:flex;justify-content:var(--drawer-justify, flex-start);align-items:var(--drawer-align, flex-start)}.m_e9408a47{padding:var(--mantine-spacing-lg);padding-top:var(--mantine-spacing-xs);border-radius:var(--fieldset-radius, var(--mantine-radius-default));min-inline-size:auto}.m_84c9523a{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_84c9523a{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_84c9523a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-7)}.m_ef274e49{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_ef274e49{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_ef274e49{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_eda993d3{padding:0;border:0;border-radius:0}.m_90794832{font-size:var(--mantine-font-size-sm)}.m_74ca27fe{padding:0;margin-bottom:var(--mantine-spacing-sm)}.m_8478a6da{container:mantine-grid / inline-size}.m_410352e9{--grid-overflow: visible;--grid-margin: calc(var(--grid-gutter) / -2);--grid-col-padding: calc(var(--grid-gutter) / 2);overflow:var(--grid-overflow)}.m_dee7bd2f{width:calc(100% + var(--grid-gutter));display:flex;flex-wrap:wrap;justify-content:var(--grid-justify);align-items:var(--grid-align);margin:var(--grid-margin)}.m_96bdd299{--col-flex-grow: 0;--col-offset: 0rem;flex-shrink:0;order:var(--col-order);flex-basis:var(--col-flex-basis);width:var(--col-width);max-width:var(--col-max-width);flex-grow:var(--col-flex-grow);margin-inline-start:var(--col-offset);padding:var(--grid-col-padding)}.m_bcb3f3c2{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=light]) .m_bcb3f3c2{background-color:var(--mark-bg-light)}:where([data-mantine-color-scheme=dark]) .m_bcb3f3c2{background-color:var(--mark-bg-dark)}.m_9e117634{display:block;flex:0;object-fit:var(--image-object-fit, cover);width:100%;border-radius:var(--image-radius, 0)}@keyframes m_885901b1{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(2.8)}}.m_e5262200{--indicator-size: calc(.625rem * var(--mantine-scale));--indicator-color: var(--mantine-primary-color-filled);position:relative;display:block}.m_e5262200:where([data-inline]){display:inline-block}.m_760d1fb1{position:absolute;top:var(--indicator-top);left:var(--indicator-left);right:var(--indicator-right);bottom:var(--indicator-bottom);transform:translate(var(--indicator-translate-x),var(--indicator-translate-y));min-width:var(--indicator-size);height:var(--indicator-size);border-radius:var(--indicator-radius, 1000rem);z-index:var(--indicator-z-index, 200);display:flex;align-items:center;justify-content:center;font-size:var(--mantine-font-size-xs);background-color:var(--indicator-color);color:var(--indicator-text-color, var(--mantine-color-white));white-space:nowrap}.m_760d1fb1:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--indicator-color);border-radius:var(--indicator-radius, 1000rem);z-index:-1}.m_760d1fb1:where([data-with-label]){padding-inline:calc(var(--mantine-spacing-xs) / 2)}.m_760d1fb1:where([data-with-border]){border:2px solid var(--mantine-color-body)}.m_760d1fb1[data-processing]:before{animation:m_885901b1 1s linear infinite}.m_dc6f14e2{--kbd-fz-xs: calc(.625rem * var(--mantine-scale));--kbd-fz-sm: calc(.75rem * var(--mantine-scale));--kbd-fz-md: calc(.875rem * var(--mantine-scale));--kbd-fz-lg: calc(1rem * var(--mantine-scale));--kbd-fz-xl: calc(1.25rem * var(--mantine-scale));--kbd-fz: var(--kbd-fz-sm);--kbd-padding-xs: calc(.125rem * var(--mantine-scale)) calc(.25rem * var(--mantine-scale));--kbd-padding-sm: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));--kbd-padding-md: calc(.25rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale));--kbd-padding-lg: calc(.3125rem * var(--mantine-scale)) calc(.5625rem * var(--mantine-scale));--kbd-padding-xl: calc(.5rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--kbd-padding: var(--kbd-padding-sm);font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;padding:var(--kbd-padding);font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale));unicode-bidi:embed}:where([data-mantine-color-scheme=light]) .m_dc6f14e2{border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_dc6f14e2{border-color:var(--mantine-color-dark-4);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-6)}.m_abbac491{--list-fz: var(--mantine-font-size-md);--list-lh: var(--mantine-line-height-md);list-style-position:inside;font-size:var(--list-fz);line-height:var(--list-lh);margin:0;padding:0}.m_abbac491:where([data-with-padding]){padding-inline-start:var(--mantine-spacing-md)}.m_abb6bec2{white-space:nowrap;line-height:var(--list-lh)}.m_abb6bec2:where([data-with-icon]){list-style:none}.m_abb6bec2:where([data-with-icon]) .m_75cd9f71{--li-direction: row;--li-align: center}.m_abb6bec2:where(:not(:first-of-type)){margin-top:var(--list-spacing, 0)}.m_abb6bec2:where([data-centered]){line-height:1}.m_75cd9f71{display:inline-flex;flex-direction:var(--li-direction, column);align-items:var(--li-align, flex-start);white-space:normal}.m_60f83e5b{display:inline-block;vertical-align:middle;margin-inline-end:var(--mantine-spacing-sm)}.m_6e45937b{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:var(--lo-z-index)}.m_e8eb006c{position:relative;z-index:calc(var(--lo-z-index) + 1)}.m_df587f17{z-index:var(--lo-z-index)}.m_dc9b7c9f{padding:calc(.25rem * var(--mantine-scale))}.m_9bfac126{color:var(--mantine-color-dimmed);font-weight:500;font-size:var(--mantine-font-size-xs);padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-sm);cursor:default}.m_efdf90cb{margin-top:calc(.25rem * var(--mantine-scale));margin-bottom:calc(.25rem * var(--mantine-scale));border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_efdf90cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_efdf90cb{border-color:var(--mantine-color-dark-4)}.m_99ac2aa1{font-size:var(--mantine-font-size-sm);width:100%;padding:calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-sm);border-radius:var(--popover-radius, var(--mantine-radius-default));color:var(--menu-item-color, var(--mantine-color-text));display:flex;align-items:center;-webkit-user-select:none;user-select:none}.m_99ac2aa1:where([data-disabled],:disabled){color:var(--mantine-color-dimmed);opacity:.6;cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_99ac2aa1:where([data-hovered]):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-gray-1))}:where([data-mantine-color-scheme=dark]) .m_99ac2aa1:where([data-hovered]):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-dark-4))}.m_5476e0d3{flex:1}.m_8b75e504{display:flex;justify-content:center;align-items:center}.m_8b75e504:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_8b75e504:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_9df02822{--modal-size-xs: calc(20rem * var(--mantine-scale));--modal-size-sm: calc(23.75rem * var(--mantine-scale));--modal-size-md: calc(27.5rem * var(--mantine-scale));--modal-size-lg: calc(38.75rem * var(--mantine-scale));--modal-size-xl: calc(48.75rem * var(--mantine-scale));--modal-size: var(--modal-size-md);--modal-y-offset: 5dvh;--modal-x-offset: 5vw}.m_9df02822[data-full-screen]{--modal-border-radius: 0 !important}.m_9df02822[data-full-screen] .m_54c44539{--modal-content-flex: 0 0 100%;--modal-content-max-height: auto;--modal-content-height: 100dvh}.m_9df02822[data-full-screen] .m_1f958f16{--modal-inner-y-offset: 0;--modal-inner-x-offset: 0}.m_9df02822[data-centered] .m_1f958f16{--modal-inner-align: center}.m_d0e2b9cd{border-start-start-radius:var(--modal-radius, var(--mantine-radius-default));border-start-end-radius:var(--modal-radius, var(--mantine-radius-default))}.m_54c44539{flex:var(--modal-content-flex, 0 0 var(--modal-size));max-width:100%;max-height:var(--modal-content-max-height, calc(100dvh - var(--modal-y-offset) * 2));height:var(--modal-content-height, auto);overflow-y:auto}.m_54c44539[data-full-screen]{border-radius:0}.m_54c44539[data-hidden]{opacity:0!important;pointer-events:none}.m_1f958f16{display:flex;justify-content:center;align-items:var(--modal-inner-align, flex-start);padding-top:var(--modal-inner-y-offset, var(--modal-y-offset));padding-bottom:var(--modal-inner-y-offset, var(--modal-y-offset));padding-inline:var(--modal-inner-x-offset, var(--modal-x-offset))}.m_7cda1cd6{--pill-fz-xs: calc(.625rem * var(--mantine-scale));--pill-fz-sm: calc(.75rem * var(--mantine-scale));--pill-fz-md: calc(.875rem * var(--mantine-scale));--pill-fz-lg: calc(1rem * var(--mantine-scale));--pill-fz-xl: calc(1.125rem * var(--mantine-scale));--pill-height-xs: calc(1.125rem * var(--mantine-scale));--pill-height-sm: calc(1.375rem * var(--mantine-scale));--pill-height-md: calc(1.5625rem * var(--mantine-scale));--pill-height-lg: calc(1.75rem * var(--mantine-scale));--pill-height-xl: calc(2rem * var(--mantine-scale));--pill-fz: var(--pill-fz-sm);--pill-height: var(--pill-height-sm);font-size:var(--pill-fz);flex:0;height:var(--pill-height);padding-inline:.8em;display:inline-flex;align-items:center;border-radius:var(--pill-radius, 1000rem);line-height:1;white-space:nowrap;user-select:none;-webkit-user-select:none;max-width:100%}:where([data-mantine-color-scheme=dark]) .m_7cda1cd6{background-color:var(--mantine-color-dark-7);color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_7cda1cd6{color:var(--mantine-color-black)}.m_7cda1cd6:where([data-with-remove]:not(:has(button:disabled))){padding-inline-end:0}.m_7cda1cd6:where([data-disabled],:has(button:disabled)){cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_44da308b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=light]) .m_44da308b:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=light]) .m_e3a01f8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=light]) .m_e3a01f8:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-gray-3)}.m_1e0e6180{cursor:inherit;overflow:hidden;height:100%;line-height:var(--pill-height);text-overflow:ellipsis}.m_ae386778{color:inherit;font-size:inherit;height:100%;min-height:unset;min-width:2em;width:unset;border-radius:0;padding-inline-start:.1em;padding-inline-end:.3em;flex:0;border-end-end-radius:var(--pill-radius, 50%);border-start-end-radius:var(--pill-radius, 50%)}.m_7cda1cd6[data-disabled]>.m_ae386778,.m_ae386778:disabled{display:none;background-color:transparent;width:.8em;min-width:.8em;padding:0;cursor:not-allowed}.m_7cda1cd6[data-disabled]>.m_ae386778>svg,.m_ae386778:disabled>svg{display:none}.m_ae386778>svg{pointer-events:none}.m_1dcfd90b{--pg-gap-xs: calc(.375rem * var(--mantine-scale));--pg-gap-sm: calc(.5rem * var(--mantine-scale));--pg-gap-md: calc(.625rem * var(--mantine-scale));--pg-gap-lg: calc(.75rem * var(--mantine-scale));--pg-gap-xl: calc(.75rem * var(--mantine-scale));--pg-gap: var(--pg-gap-sm);display:flex;align-items:center;gap:var(--pg-gap);flex-wrap:wrap}.m_45c4369d{background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:calc(6.25rem * var(--mantine-scale));flex:1;border:0;font-size:inherit;height:1.6em;color:inherit;padding:0}.m_45c4369d::placeholder{color:var(--input-placeholder-color);opacity:1}.m_45c4369d:where([data-type=hidden],[data-type=auto]){height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));top:0;left:0;pointer-events:none;position:absolute;opacity:0}.m_45c4369d:focus{outline:none}.m_45c4369d:where([data-type=auto]:focus){height:1.6em;visibility:visible;opacity:1;position:static}.m_45c4369d:where([data-pointer]:not([data-disabled],:disabled)){cursor:pointer}.m_45c4369d:where([data-disabled],:disabled){cursor:not-allowed}.m_f0824112{--nl-bg: var(--mantine-primary-color-light);--nl-hover: var(--mantine-primary-color-light-hover);--nl-color: var(--mantine-primary-color-light-color);display:flex;align-items:center;width:100%;padding:8px var(--mantine-spacing-sm);-webkit-user-select:none;user-select:none}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_f0824112:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_f0824112:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:active{background-color:var(--mantine-color-dark-6)}}.m_f0824112:where([data-disabled]){opacity:.4;pointer-events:none}.m_f0824112:where([data-active],[aria-current=page]){background-color:var(--nl-bg);color:var(--nl-color)}@media(hover:hover){.m_f0824112:where([data-active],[aria-current=page]):hover{background-color:var(--nl-hover)}}@media(hover:none){.m_f0824112:where([data-active],[aria-current=page]):active{background-color:var(--nl-hover)}}.m_f0824112:where([data-active],[aria-current=page]) .m_57492dcc{--description-opacity: .9;--description-color: var(--nl-color)}.m_690090b5{display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.m_690090b5>svg{display:block}.m_690090b5:where([data-position=left]){margin-inline-end:var(--mantine-spacing-sm)}.m_690090b5:where([data-position=right]){margin-inline-start:var(--mantine-spacing-sm)}.m_690090b5:where([data-rotate]){transform:rotate(90deg)}.m_1f6ac4c4{font-size:var(--mantine-font-size-sm)}.m_f07af9d2{flex:1;overflow:hidden;text-overflow:ellipsis}.m_f07af9d2:where([data-no-wrap]){white-space:nowrap}.m_57492dcc{display:block;font-size:var(--mantine-font-size-xs);opacity:var(--description-opacity, 1);color:var(--description-color, var(--mantine-color-dimmed));overflow:hidden;text-overflow:ellipsis}:where([data-no-wrap]) .m_57492dcc{white-space:nowrap}.m_e17b862f{padding-inline-start:var(--nl-offset, var(--mantine-spacing-lg))}.m_1fd8a00b{transform:rotate(-90deg)}.m_a513464{--notification-radius: var(--mantine-radius-default);--notification-color: var(--mantine-primary-color-filled);overflow:hidden;box-sizing:border-box;position:relative;display:flex;align-items:center;padding-inline-start:calc(1.375rem * var(--mantine-scale));padding-inline-end:var(--mantine-spacing-xs);padding-top:var(--mantine-spacing-xs);padding-bottom:var(--mantine-spacing-xs);border-radius:var(--notification-radius);box-shadow:var(--mantine-shadow-lg)}.m_a513464:before{content:"";display:block;position:absolute;width:calc(.375rem * var(--mantine-scale));top:var(--notification-radius);bottom:var(--notification-radius);inset-inline-start:calc(.25rem * var(--mantine-scale));border-radius:var(--notification-radius);background-color:var(--notification-color)}:where([data-mantine-color-scheme=light]) .m_a513464{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_a513464{background-color:var(--mantine-color-dark-6)}.m_a513464:where([data-with-icon]){padding-inline-start:var(--mantine-spacing-xs)}.m_a513464:where([data-with-icon]):before{display:none}:where([data-mantine-color-scheme=light]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-dark-4)}.m_a4ceffb{box-sizing:border-box;margin-inline-end:var(--mantine-spacing-md);width:calc(1.75rem * var(--mantine-scale));height:calc(1.75rem * var(--mantine-scale));border-radius:calc(1.75rem * var(--mantine-scale));display:flex;align-items:center;justify-content:center;background-color:var(--notification-color);color:var(--mantine-color-white)}.m_b0920b15{margin-inline-end:var(--mantine-spacing-md)}.m_a49ed24{flex:1;overflow:hidden;margin-inline-end:var(--mantine-spacing-xs)}.m_3feedf16{margin-bottom:calc(.125rem * var(--mantine-scale));overflow:hidden;text-overflow:ellipsis;font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);font-weight:500}:where([data-mantine-color-scheme=light]) .m_3feedf16{color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_3feedf16{color:var(--mantine-color-white)}.m_3d733a3a{font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);overflow:hidden;text-overflow:ellipsis}:where([data-mantine-color-scheme=light]) .m_3d733a3a{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a{color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-dark-2)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_919a4d88:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:hover{background-color:var(--mantine-color-dark-8)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_919a4d88:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:active{background-color:var(--mantine-color-dark-8)}}.m_e2f5cd4e{--ni-right-section-width-xs: calc(1.0625rem * var(--mantine-scale));--ni-right-section-width-sm: calc(1.5rem * var(--mantine-scale));--ni-right-section-width-md: calc(1.6875rem * var(--mantine-scale));--ni-right-section-width-lg: calc(1.9375rem * var(--mantine-scale));--ni-right-section-width-xl: calc(2.125rem * var(--mantine-scale))}.m_95e17d22{--ni-chevron-size-xs: calc(.625rem * var(--mantine-scale));--ni-chevron-size-sm: calc(.875rem * var(--mantine-scale));--ni-chevron-size-md: calc(1rem * var(--mantine-scale));--ni-chevron-size-lg: calc(1.125rem * var(--mantine-scale));--ni-chevron-size-xl: calc(1.25rem * var(--mantine-scale));--ni-chevron-size: var(--ni-chevron-size-sm);display:flex;flex-direction:column;width:100%;height:calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));max-width:calc(var(--ni-chevron-size) * 1.7);margin-inline-start:auto}.m_80b4b171{--control-border: 1px solid var(--input-bd);--control-radius: calc(var(--input-radius) - calc(.0625rem * var(--mantine-scale)));flex:0 0 50%;width:100%;padding:0;height:calc(var(--input-height) / 2 - calc(.0625rem * var(--mantine-scale)));border-inline-start:var(--control-border);display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text);background-color:transparent;cursor:pointer}.m_80b4b171:where(:disabled){background-color:transparent;cursor:not-allowed;opacity:.6}:where([data-mantine-color-scheme=light]) .m_80b4b171:where(:disabled){color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:where(:disabled){color:var(--mantine-color-dark-3)}.m_e2f5cd4e[data-error] :where(.m_80b4b171){color:var(--mantine-color-error)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_80b4b171:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_80b4b171:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:active{background-color:var(--mantine-color-dark-4)}}.m_80b4b171:where(:first-of-type){border-radius:0;border-start-end-radius:var(--control-radius)}.m_80b4b171:last-of-type{border-radius:0;border-end-end-radius:var(--control-radius)}.m_4addd315{--pagination-control-size-xs: calc(1.375rem * var(--mantine-scale));--pagination-control-size-sm: calc(1.625rem * var(--mantine-scale));--pagination-control-size-md: calc(2rem * var(--mantine-scale));--pagination-control-size-lg: calc(2.375rem * var(--mantine-scale));--pagination-control-size-xl: calc(2.75rem * var(--mantine-scale));--pagination-control-size: var(--pagination-control-size-md);--pagination-control-fz: var(--mantine-font-size-md);--pagination-active-bg: var(--mantine-primary-color-filled)}.m_326d024a{display:flex;align-items:center;justify-content:center;border:calc(.0625rem * var(--mantine-scale)) solid;cursor:pointer;color:var(--mantine-color-text);height:var(--pagination-control-size);min-width:var(--pagination-control-size);font-size:var(--pagination-control-fz);line-height:1;border-radius:var(--pagination-control-radius, var(--mantine-radius-default))}.m_326d024a:where([data-with-padding]){padding:calc(var(--pagination-control-size) / 4)}.m_326d024a:where(:disabled,[data-disabled]){cursor:not-allowed;opacity:.4}:where([data-mantine-color-scheme=light]) .m_326d024a{border-color:var(--mantine-color-gray-4);background-color:var(--mantine-color-white)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}:where([data-mantine-color-scheme=dark]) .m_326d024a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}@media(hover:hover){:where([data-mantine-color-scheme=dark]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=dark]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}.m_326d024a:where([data-active]){background-color:var(--pagination-active-bg);border-color:var(--pagination-active-bg);color:var(--pagination-active-color, var(--mantine-color-white))}@media(hover:hover){.m_326d024a:where([data-active]):hover{background-color:var(--pagination-active-bg)}}@media(hover:none){.m_326d024a:where([data-active]):active{background-color:var(--pagination-active-bg)}}.m_4ad7767d{height:var(--pagination-control-size);min-width:var(--pagination-control-size);display:flex;align-items:center;justify-content:center;pointer-events:none}.m_f61ca620{--psi-button-size-xs: calc(1.375rem * var(--mantine-scale));--psi-button-size-sm: calc(1.625rem * var(--mantine-scale));--psi-button-size-md: calc(1.75rem * var(--mantine-scale));--psi-button-size-lg: calc(2rem * var(--mantine-scale));--psi-button-size-xl: calc(2.5rem * var(--mantine-scale));--psi-icon-size-xs: calc(.75rem * var(--mantine-scale));--psi-icon-size-sm: calc(.9375rem * var(--mantine-scale));--psi-icon-size-md: calc(1.0625rem * var(--mantine-scale));--psi-icon-size-lg: calc(1.1875rem * var(--mantine-scale));--psi-icon-size-xl: calc(1.3125rem * var(--mantine-scale));--psi-button-size: var(--psi-button-size-sm);--psi-icon-size: var(--psi-icon-size-sm)}.m_ccf8da4c{position:relative;overflow:hidden}.m_f2d85dd2{font-family:var(--mantine-font-family);background-color:transparent;border:0;padding-inline-end:var(--input-padding-inline-end);padding-inline-start:var(--input-padding-inline-start);position:absolute;top:0;right:0;bottom:0;left:0;outline:0;font-size:inherit;line-height:var(--mantine-line-height);height:100%;width:100%;color:inherit}.m_ccf8da4c[data-disabled] .m_f2d85dd2,.m_f2d85dd2:disabled{cursor:not-allowed}.m_f2d85dd2::placeholder{color:var(--input-placeholder-color);opacity:1}.m_f2d85dd2::-ms-reveal{display:none}.m_b1072d44{width:var(--psi-button-size);height:var(--psi-button-size);min-width:var(--psi-button-size);min-height:var(--psi-button-size)}.m_b1072d44:disabled{display:none}.m_f1cb205a{--pin-input-size-xs: calc(1.875rem * var(--mantine-scale));--pin-input-size-sm: calc(2.25rem * var(--mantine-scale));--pin-input-size-md: calc(2.625rem * var(--mantine-scale));--pin-input-size-lg: calc(3.125rem * var(--mantine-scale));--pin-input-size-xl: calc(3.75rem * var(--mantine-scale));--pin-input-size: var(--pin-input-size-sm)}.m_cb288ead{width:var(--pin-input-size);height:var(--pin-input-size)}@keyframes m_81a374bd{0%{background-position:0 0}to{background-position:calc(2.5rem * var(--mantine-scale)) 0}}.m_db6d6462{--progress-radius: var(--mantine-radius-default);--progress-size: var(--progress-size-md);--progress-size-xs: calc(.1875rem * var(--mantine-scale));--progress-size-sm: calc(.3125rem * var(--mantine-scale));--progress-size-md: calc(.5rem * var(--mantine-scale));--progress-size-lg: calc(.75rem * var(--mantine-scale));--progress-size-xl: calc(1rem * var(--mantine-scale));position:relative;height:var(--progress-size);border-radius:var(--progress-radius);overflow:hidden;display:flex}:where([data-mantine-color-scheme=light]) .m_db6d6462{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_db6d6462{background-color:var(--mantine-color-dark-4)}.m_2242eb65{background-color:var(--progress-section-color);height:100%;width:var(--progress-section-width);display:flex;align-items:center;justify-content:center;overflow:hidden;background-size:calc(1.25rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));transition:width var(--progress-transition-duration, .1s) ease}.m_2242eb65:where([data-striped]){background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_2242eb65:where([data-animated]){animation:m_81a374bd 1s linear infinite}.m_2242eb65:where(:last-of-type){border-radius:0;border-start-end-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_2242eb65:where(:first-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-end-start-radius:var(--progress-radius)}.m_91e40b74{color:var(--progress-label-color, var(--mantine-color-white));font-weight:700;-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:min(calc(var(--progress-size) * .65),calc(1.125rem * var(--mantine-scale)));line-height:1;padding-inline:calc(.25rem * var(--mantine-scale))}.m_9dc8ae12{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_9dc8ae12 :where(*){cursor:inherit}.m_9dc8ae12:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_717d7ff6{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-size: var(--radio-size-sm);--radio-color: var(--mantine-primary-color-filled);--radio-icon-color: var(--mantine-color-white);position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--radio-size);min-width:var(--radio-size);height:var(--radio-size);min-height:var(--radio-size);border-radius:var(--radio-radius, 10000px);transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_717d7ff6{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_717d7ff6[data-indeterminate],.m_717d7ff6[data-checked]{background-color:var(--radio-color);border-color:var(--radio-color)}.m_717d7ff6[data-indeterminate]>.m_3e4da632,.m_717d7ff6[data-checked]>.m_3e4da632{opacity:1;transform:none;color:var(--radio-icon-color)}.m_717d7ff6[data-disabled]{cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_717d7ff6[data-disabled]{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6[data-disabled]{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-dark-3)}.m_2980836c[data-indeterminate]:not([data-disabled]),.m_2980836c[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--radio-color)}.m_2980836c[data-indeterminate]:not([data-disabled])>.m_3e4da632,.m_2980836c[data-checked]:not([data-disabled])>.m_3e4da632{color:var(--radio-color);opacity:1;transform:none}.m_3e4da632{display:block;width:var(--radio-icon-size);height:var(--radio-icon-size);color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_f3f1af94{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-size: var(--radio-size-sm);--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-icon-color: var(--mantine-color-white)}.m_89c4f5e4{position:relative;width:var(--radio-size);height:var(--radio-size);order:1}.m_89c4f5e4:where([data-label-position=left]){order:2}.m_f3ed6b2b{color:var(--radio-icon-color);opacity:var(--radio-icon-opacity, 0);transform:var(--radio-icon-transform, scale(.2) translateY(calc(.625rem * var(--mantine-scale))));transition:opacity .1s ease,transform .2s ease;pointer-events:none;width:var(--radio-icon-size);height:var(--radio-icon-size);position:absolute;top:calc(50% - var(--radio-icon-size) / 2);left:calc(50% - var(--radio-icon-size) / 2)}.m_8a3dbb89{border:calc(.0625rem * var(--mantine-scale)) solid;position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--radio-size);height:var(--radio-size);border-radius:var(--radio-radius, var(--radio-size));margin:0;display:flex;align-items:center;justify-content:center;transition-property:background-color,border-color;transition-timing-function:ease;transition-duration:.1s;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_8a3dbb89{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_8a3dbb89:checked{background-color:var(--radio-color, var(--mantine-primary-color-filled));border-color:var(--radio-color, var(--mantine-primary-color-filled))}.m_8a3dbb89:checked+.m_f3ed6b2b{--radio-icon-opacity: 1;--radio-icon-transform: scale(1)}.m_8a3dbb89:disabled{cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_8a3dbb89:disabled{background-color:var(--mantine-color-gray-1);border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=light]) .m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89:disabled{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-dark-7)}.m_8a3dbb89:where([data-error]){border-color:var(--mantine-color-error)}.m_1bfe9d39+.m_f3ed6b2b{--radio-icon-color: var(--radio-color)}.m_1bfe9d39:checked:not(:disabled){background-color:transparent;border-color:var(--radio-color)}.m_1bfe9d39:checked:not(:disabled)+.m_f3ed6b2b{--radio-icon-color: var(--radio-color);--radio-icon-opacity: 1;--radio-icon-transform: none}.m_f8d312f2{--rating-size-xs: calc(.875rem * var(--mantine-scale));--rating-size-sm: calc(1.125rem * var(--mantine-scale));--rating-size-md: calc(1.25rem * var(--mantine-scale));--rating-size-lg: calc(1.75rem * var(--mantine-scale));--rating-size-xl: calc(2rem * var(--mantine-scale));display:flex;width:max-content}.m_f8d312f2:where(:has(input:disabled)){pointer-events:none}.m_61734bb7{position:relative;transition:transform .1s ease}.m_61734bb7:where([data-active]){z-index:1;transform:scale(1.1)}.m_5662a89a{width:var(--rating-size);height:var(--rating-size);display:block}:where([data-mantine-color-scheme=light]) .m_5662a89a{fill:var(--mantine-color-gray-3);stroke:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5662a89a{fill:var(--mantine-color-dark-3);stroke:var(--mantine-color-dark-3)}.m_5662a89a:where([data-filled]){fill:var(--rating-color);stroke:var(--rating-color)}.m_211007ba{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0;-webkit-tap-highlight-color:transparent}.m_211007ba:focus-visible+label{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_21342ee4{display:block;cursor:pointer;position:absolute;top:0;left:0;z-index:var(--rating-item-z-index, 0);-webkit-tap-highlight-color:transparent}.m_21342ee4:where([data-read-only]){cursor:default}.m_21342ee4:where(:last-of-type){position:relative}.m_fae05d6a{clip-path:var(--rating-symbol-clip-path)}.m_1b3c8819{--tooltip-radius: var(--mantine-radius-default);position:absolute;padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-xs);pointer-events:none;font-size:var(--mantine-font-size-sm);white-space:nowrap;border-radius:var(--tooltip-radius)}:where([data-mantine-color-scheme=light]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-9));color:var(--tooltip-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-2));color:var(--tooltip-color, var(--mantine-color-black))}.m_1b3c8819:where([data-multiline]){white-space:normal}.m_1b3c8819:where([data-fixed]){position:fixed}.m_f898399f{background-color:inherit;border:0;z-index:1}.m_b32e4812{position:relative;width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);--rp-transition-duration: 0ms}.m_d43b5134{width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);transform:rotate(-90deg)}.m_b1ca1fbf{stroke:var(--curve-color, var(--rp-curve-root-color));transition:stroke-dashoffset var(--rp-transition-duration) ease,stroke-dasharray var(--rp-transition-duration) ease,stroke var(--rp-transition-duration)}[data-mantine-color-scheme=light] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-dark-4)}.m_b23f9dc4{position:absolute;top:50%;transform:translateY(-50%);inset-inline:var(--rp-label-offset)}.m_cf365364{--sc-padding-xs: calc(.1875rem * var(--mantine-scale)) calc(.375rem * var(--mantine-scale));--sc-padding-sm: calc(.3125rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--sc-padding-md: calc(.4375rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--sc-padding-lg: calc(.5625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--sc-padding-xl: calc(.75rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--sc-transition-duration: .2s;--sc-padding: var(--sc-padding-sm);--sc-transition-timing-function: ease;--sc-font-size: var(--mantine-font-size-sm);position:relative;display:inline-flex;flex-direction:row;width:auto;border-radius:var(--sc-radius, var(--mantine-radius-default));overflow:hidden;padding:calc(.25rem * var(--mantine-scale))}.m_cf365364:where([data-full-width]){display:flex}.m_cf365364:where([data-orientation=vertical]){display:flex;flex-direction:column;width:max-content}.m_cf365364:where([data-orientation=vertical]):where([data-full-width]){width:auto}:where([data-mantine-color-scheme=light]) .m_cf365364{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_cf365364{background-color:var(--mantine-color-dark-8)}.m_9e182ccd{position:absolute;display:block;z-index:1;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_9e182ccd{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_9e182ccd{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}.m_1738fcb2{-webkit-tap-highlight-color:transparent;font-weight:500;display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;border-radius:var(--sc-radius, var(--mantine-radius-default));font-size:var(--sc-font-size);padding:var(--sc-padding);transition:color var(--sc-transition-duration) var(--sc-transition-timing-function);cursor:pointer;outline:var(--segmented-control-outline, none)}:where([data-mantine-color-scheme=light]) .m_1738fcb2{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2{color:var(--mantine-color-dark-1)}.m_1738fcb2:where([data-read-only]){cursor:default}fieldset:disabled .m_1738fcb2,.m_1738fcb2:where([data-disabled]){cursor:not-allowed}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2,:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-disabled]){color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2,:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-disabled]){color:var(--mantine-color-dark-3)}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-black))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-white))}.m_cf365364:where([data-initialized]) .m_1738fcb2:where([data-active]):before{display:none}.m_1738fcb2:where([data-active]):before{content:"";top:0;right:0;bottom:0;left:0;z-index:0;position:absolute;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]):before{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]):before{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-white)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-white)}}@media(hover:hover){:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-gray-5)!important}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-dark-3)!important}}@media(hover:none){:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-gray-5)!important}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-dark-3)!important}}.m_1714d588{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0}.m_1714d588[data-focus-ring=auto]:focus:focus-visible+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_1714d588[data-focus-ring=always]:focus+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_69686b9b{position:relative;flex:1;z-index:2;transition:border-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_cf365364[data-with-items-borders] :where(.m_69686b9b):before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:0;background-color:var(--separator-color);width:calc(.0625rem * var(--mantine-scale));transition:background-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_69686b9b[data-orientation=vertical]:before{top:0;inset-inline:0;bottom:auto;height:calc(.0625rem * var(--mantine-scale));width:auto}:where([data-mantine-color-scheme=light]) .m_69686b9b{--separator-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_69686b9b{--separator-color: var(--mantine-color-dark-4)}.m_69686b9b:first-of-type:before{--separator-color: transparent}[data-mantine-color-scheme] .m_69686b9b[data-active]:before,[data-mantine-color-scheme] .m_69686b9b[data-active]+.m_69686b9b:before{--separator-color: transparent}.m_78882f40{position:relative;z-index:2}.m_fa528724{--scp-filled-segment-color: var(--mantine-primary-color-filled);--scp-transition-duration: 0ms;--scp-thickness: calc(.625rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-dark-4)}.m_fa528724{position:relative;width:fit-content}.m_62e9e7e2{display:block;transform:var(--scp-rotation);overflow:hidden}.m_c573fb6f{transition:stroke-dashoffset var(--scp-transition-duration) ease,stroke-dasharray var(--scp-transition-duration) ease,stroke var(--scp-transition-duration)}.m_4fa340f2{position:absolute;margin:0;padding:0;inset-inline:0;text-align:center;z-index:1}.m_4fa340f2:where([data-position=bottom]){bottom:0;padding-inline:calc(var(--scp-thickness) * 2)}.m_4fa340f2:where([data-position=bottom]):where([data-orientation=down]){bottom:auto;top:0}.m_4fa340f2:where([data-position=center]){top:50%;padding-inline:calc(var(--scp-thickness) * 3)}.m_925c2d2c{container:simple-grid / inline-size}.m_2415a157{display:grid;grid-template-columns:repeat(var(--sg-cols),minmax(0,1fr));gap:var(--sg-spacing-y) var(--sg-spacing-x)}@keyframes m_299c329c{0%,to{opacity:.4}50%{opacity:1}}.m_18320242{height:var(--skeleton-height, auto);width:var(--skeleton-width, 100%);border-radius:var(--skeleton-radius, var(--mantine-radius-default));position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}.m_18320242:where([data-animate]):after{animation:m_299c329c 1.5s linear infinite}.m_18320242:where([data-visible]){overflow:hidden}.m_18320242:where([data-visible]):before{position:absolute;content:"";top:0;right:0;bottom:0;left:0;z-index:10;background-color:var(--mantine-color-body)}.m_18320242:where([data-visible]):after{position:absolute;content:"";top:0;right:0;bottom:0;left:0;z-index:11}:where([data-mantine-color-scheme=light]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-dark-4)}.m_dd36362e{--slider-size-xs: calc(.25rem * var(--mantine-scale));--slider-size-sm: calc(.375rem * var(--mantine-scale));--slider-size-md: calc(.5rem * var(--mantine-scale));--slider-size-lg: calc(.625rem * var(--mantine-scale));--slider-size-xl: calc(.75rem * var(--mantine-scale));--slider-size: var(--slider-size-md);--slider-radius: calc(62.5rem * var(--mantine-scale));--slider-color: var(--mantine-primary-color-filled);-webkit-tap-highlight-color:transparent;outline:none;height:calc(var(--slider-size) * 2);padding-inline:var(--slider-size);display:flex;flex-direction:column;align-items:center;touch-action:none;position:relative}[data-mantine-color-scheme=light] .m_dd36362e{--slider-track-bg: var(--mantine-color-gray-2);--slider-track-disabled-bg: var(--mantine-color-gray-4)}[data-mantine-color-scheme=dark] .m_dd36362e{--slider-track-bg: var(--mantine-color-dark-4);--slider-track-disabled-bg: var(--mantine-color-dark-3)}.m_c9357328{position:absolute;top:calc(-2.25rem * var(--mantine-scale));font-size:var(--mantine-font-size-xs);color:var(--mantine-color-white);padding:calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;touch-action:none}:where([data-mantine-color-scheme=light]) .m_c9357328{background-color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_c9357328{background-color:var(--mantine-color-dark-4)}.m_c9a9a60a{position:absolute;display:flex;height:var(--slider-thumb-size);width:var(--slider-thumb-size);border:calc(.25rem * var(--mantine-scale)) solid;transform:translate(-50%,-50%);top:50%;cursor:pointer;border-radius:var(--slider-radius);align-items:center;justify-content:center;transition:box-shadow .1s ease,transform .1s ease;z-index:3;-webkit-user-select:none;user-select:none;touch-action:none;outline-offset:calc(.125rem * var(--mantine-scale));left:var(--slider-thumb-offset)}:where([dir=rtl]) .m_c9a9a60a{left:auto;right:calc(var(--slider-thumb-offset) - var(--slider-thumb-size))}fieldset:disabled .m_c9a9a60a,.m_c9a9a60a:where([data-disabled]){display:none}.m_c9a9a60a:where([data-dragging]){transform:translate(-50%,-50%) scale(1.05);box-shadow:var(--mantine-shadow-sm)}:where([data-mantine-color-scheme=light]) .m_c9a9a60a{color:var(--slider-color);border-color:var(--slider-color);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_c9a9a60a{color:var(--mantine-color-white);border-color:var(--mantine-color-white);background-color:var(--slider-color)}.m_a8645c2{display:flex;align-items:center;width:100%;height:calc(var(--slider-size) * 2);cursor:pointer}fieldset:disabled .m_a8645c2,.m_a8645c2:where([data-disabled]){cursor:not-allowed}.m_c9ade57f{position:relative;width:100%;height:var(--slider-size)}.m_c9ade57f:where([data-inverted]:not([data-disabled])){--track-bg: var(--slider-color)}fieldset:disabled .m_c9ade57f:where([data-inverted]),.m_c9ade57f:where([data-inverted][data-disabled]){--track-bg: var(--slider-track-disabled-bg)}.m_c9ade57f:before{content:"";position:absolute;top:0;bottom:0;border-radius:var(--slider-radius);inset-inline:calc(var(--slider-size) * -1);background-color:var(--track-bg, var(--slider-track-bg));z-index:0}.m_38aeed47{position:absolute;z-index:1;top:0;bottom:0;background-color:var(--slider-color);border-radius:var(--slider-radius);width:var(--slider-bar-width);inset-inline-start:var(--slider-bar-offset)}.m_38aeed47:where([data-inverted]){background-color:var(--slider-track-bg)}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_38aeed47:where(:not([data-inverted])),:where([data-mantine-color-scheme=light]) .m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_38aeed47:where(:not([data-inverted])),:where([data-mantine-color-scheme=dark]) .m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-dark-3)}.m_b7b0423a{position:absolute;inset-inline-start:calc(var(--mark-offset) - var(--slider-size) / 2);top:0;z-index:2;height:0;pointer-events:none}.m_dd33bc19{border:calc(.125rem * var(--mantine-scale)) solid;height:var(--slider-size);width:var(--slider-size);border-radius:calc(62.5rem * var(--mantine-scale));background-color:var(--mantine-color-white);pointer-events:none}:where([data-mantine-color-scheme=light]) .m_dd33bc19{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19{border-color:var(--mantine-color-dark-4)}.m_dd33bc19:where([data-filled]){border-color:var(--slider-color)}:where([data-mantine-color-scheme=light]) .m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-dark-3)}.m_68c77a5b{transform:translate(calc(-50% + var(--slider-size) / 2),calc(var(--mantine-spacing-xs) / 2));font-size:var(--mantine-font-size-sm);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}:where([data-mantine-color-scheme=light]) .m_68c77a5b{color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_68c77a5b{color:var(--mantine-color-dark-2)}.m_559cce2d{position:relative}.m_559cce2d:where([data-has-spoiler]){margin-bottom:calc(1.5rem * var(--mantine-scale))}.m_b912df4e{display:flex;flex-direction:column;overflow:hidden;transition:max-height var(--spoiler-transition-duration, .2s) ease}.m_b9131032{position:absolute;inset-inline-start:0;top:100%;height:calc(1.5rem * var(--mantine-scale))}.m_6d731127{display:flex;flex-direction:column;align-items:var(--stack-align, stretch);justify-content:var(--stack-justify, flex-start);gap:var(--stack-gap, var(--mantine-spacing-md))}.m_cbb4ea7e{--stepper-icon-size-xs: calc(2.125rem * var(--mantine-scale));--stepper-icon-size-sm: calc(2.25rem * var(--mantine-scale));--stepper-icon-size-md: calc(2.625rem * var(--mantine-scale));--stepper-icon-size-lg: calc(3rem * var(--mantine-scale));--stepper-icon-size-xl: calc(3.25rem * var(--mantine-scale));--stepper-icon-size: var(--stepper-icon-size-md);--stepper-color: var(--mantine-primary-color-filled);--stepper-content-padding: var(--mantine-spacing-md);--stepper-spacing: var(--mantine-spacing-md);--stepper-radius: calc(62.5rem * var(--mantine-scale));--stepper-fz: var(--mantine-font-size-md);--stepper-outline-thickness: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-dark-5)}.m_aaf89d0b{display:flex;flex-wrap:nowrap;align-items:center}.m_aaf89d0b:where([data-wrap]){flex-wrap:wrap;gap:var(--mantine-spacing-md) 0}.m_aaf89d0b:where([data-orientation=vertical]){flex-direction:column}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=left]){align-items:flex-start}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=right]){align-items:flex-end}.m_aaf89d0b:where([data-orientation=horizontal]){flex-direction:row}.m_2a371ac9{transition:background-color .15s ease;flex:1;height:var(--stepper-outline-thickness);margin-inline:var(--mantine-spacing-md);background-color:var(--stepper-outline-color)}.m_2a371ac9:where([data-active]){background-color:var(--stepper-color)}.m_78da155d{padding-top:var(--stepper-content-padding)}.m_cbb57068{--step-color: var(--stepper-color);display:flex;cursor:default}.m_cbb57068:where([data-allow-click]){cursor:pointer}.m_cbb57068:where([data-icon-position=left]){flex-direction:row}.m_cbb57068:where([data-icon-position=right]){flex-direction:row-reverse}.m_f56b1e2c{align-items:center}.m_833edb7e{--separator-spacing: calc(var(--mantine-spacing-xs) / 2);justify-content:flex-start;min-height:calc(var(--stepper-icon-size) + var(--mantine-spacing-xl) + var(--separator-spacing));margin-top:var(--separator-spacing);overflow:hidden}.m_833edb7e:where(:first-of-type){margin-top:0}.m_833edb7e:where(:last-of-type){min-height:auto}.m_833edb7e:where(:last-of-type) .m_6496b3f3{display:none}.m_818e70b{position:relative}.m_6496b3f3{top:calc(var(--stepper-icon-size) + var(--separator-spacing));inset-inline-start:calc(var(--stepper-icon-size) / 2);height:100vh;position:absolute;border-inline-start:var(--stepper-outline-thickness) solid var(--stepper-outline-color)}.m_6496b3f3:where([data-active]){border-color:var(--stepper-color)}.m_1959ad01{height:var(--stepper-icon-size);width:var(--stepper-icon-size);min-height:var(--stepper-icon-size);min-width:var(--stepper-icon-size);border-radius:var(--stepper-radius);font-size:var(--stepper-fz);display:flex;align-items:center;justify-content:center;position:relative;font-weight:700;transition:background-color .15s ease,border-color .15s ease;border:var(--stepper-outline-thickness) solid var(--stepper-outline-color);background-color:var(--stepper-outline-color)}:where([data-mantine-color-scheme=light]) .m_1959ad01{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1959ad01{color:var(--mantine-color-dark-1)}.m_1959ad01:where([data-progress]){border-color:var(--step-color)}.m_1959ad01:where([data-completed]){color:var(--stepper-icon-color, var(--mantine-color-white));background-color:var(--step-color);border-color:var(--step-color)}.m_a79331dc{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--stepper-icon-color, var(--mantine-color-white))}.m_1956aa2a{display:flex;flex-direction:column}.m_1956aa2a:where([data-icon-position=left]){margin-inline-start:var(--mantine-spacing-sm)}.m_1956aa2a:where([data-icon-position=right]){text-align:right;margin-inline-end:var(--mantine-spacing-sm)}:where([dir=rtl]) .m_1956aa2a:where([data-icon-position=right]){text-align:left}.m_12051f6c{font-weight:500;font-size:var(--stepper-fz);line-height:1}.m_164eea74{margin-top:calc(var(--stepper-spacing) / 3);margin-bottom:calc(var(--stepper-spacing) / 3);font-size:calc(var(--stepper-fz) - calc(.125rem * var(--mantine-scale)));line-height:1;color:var(--mantine-color-dimmed)}.m_5f93f3bb{--switch-height-xs: calc(1rem * var(--mantine-scale));--switch-height-sm: calc(1.25rem * var(--mantine-scale));--switch-height-md: calc(1.5rem * var(--mantine-scale));--switch-height-lg: calc(1.875rem * var(--mantine-scale));--switch-height-xl: calc(2.25rem * var(--mantine-scale));--switch-width-xs: calc(2rem * var(--mantine-scale));--switch-width-sm: calc(2.375rem * var(--mantine-scale));--switch-width-md: calc(2.875rem * var(--mantine-scale));--switch-width-lg: calc(3.5rem * var(--mantine-scale));--switch-width-xl: calc(4.5rem * var(--mantine-scale));--switch-thumb-size-xs: calc(.75rem * var(--mantine-scale));--switch-thumb-size-sm: calc(.875rem * var(--mantine-scale));--switch-thumb-size-md: calc(1.125rem * var(--mantine-scale));--switch-thumb-size-lg: calc(1.375rem * var(--mantine-scale));--switch-thumb-size-xl: calc(1.75rem * var(--mantine-scale));--switch-label-font-size-xs: calc(.3125rem * var(--mantine-scale));--switch-label-font-size-sm: calc(.375rem * var(--mantine-scale));--switch-label-font-size-md: calc(.4375rem * var(--mantine-scale));--switch-label-font-size-lg: calc(.5625rem * var(--mantine-scale));--switch-label-font-size-xl: calc(.6875rem * var(--mantine-scale));--switch-track-label-padding-xs: calc(.0625rem * var(--mantine-scale));--switch-track-label-padding-sm: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-md: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-lg: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-xl: calc(.1875rem * var(--mantine-scale));--switch-height: var(--switch-height-sm);--switch-width: var(--switch-width-sm);--switch-thumb-size: var(--switch-thumb-size-sm);--switch-label-font-size: var(--switch-label-font-size-sm);--switch-track-label-padding: var(--switch-track-label-padding-sm);--switch-radius: calc(62.5rem * var(--mantine-scale));--switch-color: var(--mantine-primary-color-filled);position:relative}.m_926b4011{height:0;width:0;opacity:0;margin:0;padding:0;position:absolute;overflow:hidden;white-space:nowrap}.m_9307d992{-webkit-tap-highlight-color:transparent;cursor:var(--switch-cursor, var(--mantine-cursor-type));overflow:hidden;position:relative;border-radius:var(--switch-radius);background-color:var(--switch-bg);border:1px solid var(--switch-bd);height:var(--switch-height);min-width:var(--switch-width);margin:0;transition:background-color .15s ease,border-color .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;font-size:var(--switch-label-font-size);font-weight:600;order:var(--switch-order, 1);-webkit-user-select:none;user-select:none;z-index:0;line-height:0;color:var(--switch-text-color)}.m_9307d992:where([data-without-labels]){width:var(--switch-width)}.m_926b4011:focus-visible+.m_9307d992{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_926b4011:checked+.m_9307d992{--switch-bg: var(--switch-color);--switch-bd: var(--switch-color);--switch-text-color: var(--mantine-color-white)}.m_926b4011:disabled+.m_9307d992,.m_926b4011[data-disabled]+.m_9307d992{--switch-bg: var(--switch-disabled-color);--switch-bd: var(--switch-disabled-color);--switch-cursor: not-allowed}[data-mantine-color-scheme=light] .m_9307d992{--switch-bg: var(--mantine-color-gray-2);--switch-bd: var(--mantine-color-gray-3);--switch-text-color: var(--mantine-color-gray-6);--switch-disabled-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_9307d992{--switch-bg: var(--mantine-color-dark-6);--switch-bd: var(--mantine-color-dark-4);--switch-text-color: var(--mantine-color-dark-1);--switch-disabled-color: var(--mantine-color-dark-4)}.m_9307d992[data-error]{--switch-bd: var(--mantine-color-error)}.m_9307d992[data-label-position=left]{--switch-order: 2}.m_93039a1d{position:absolute;z-index:1;border-radius:var(--switch-radius);display:flex;background-color:var(--switch-thumb-bg, var(--mantine-color-white));height:var(--switch-thumb-size);width:var(--switch-thumb-size);border:1px solid var(--switch-thumb-bd);inset-inline-start:var(--switch-thumb-start, var(--switch-track-label-padding));transition:inset-inline-start .15s ease}.m_93039a1d>*{margin:auto}.m_926b4011:checked+*>.m_93039a1d{--switch-thumb-start: calc(100% - var(--switch-thumb-size) - var(--switch-track-label-padding));--switch-thumb-bd: var(--mantine-color-white)}.m_926b4011:disabled+*>.m_93039a1d,.m_926b4011[data-disabled]+*>.m_93039a1d{--switch-thumb-bd: var(--switch-thumb-bg-disabled);--switch-thumb-bg: var(--switch-thumb-bg-disabled)}[data-mantine-color-scheme=light] .m_93039a1d{--switch-thumb-bd: var(--mantine-color-gray-3);--switch-thumb-bg-disabled: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_93039a1d{--switch-thumb-bd: var(--mantine-color-white);--switch-thumb-bg-disabled: var(--mantine-color-dark-3)}.m_8277e082{height:100%;display:grid;place-content:center;min-width:calc(var(--switch-width) - var(--switch-thumb-size));padding-inline:var(--switch-track-label-padding);margin-inline-start:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));transition:margin .15s ease}.m_926b4011:checked+*>.m_8277e082{margin-inline-end:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));margin-inline-start:0}.m_b23fa0ef{width:100%;border-collapse:collapse;border-spacing:0;line-height:var(--mantine-line-height);font-size:var(--mantine-font-size-sm);table-layout:var(--table-layout, auto);caption-side:var(--table-caption-side, bottom);border:none}:where([data-mantine-color-scheme=light]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-gray-1);--table-striped-color: var(--mantine-color-gray-0);--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-dark-5);--table-striped-color: var(--mantine-color-dark-6);--table-border-color: var(--mantine-color-dark-4)}.m_b23fa0ef:where([data-with-table-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b23fa0ef:where([data-tabular-nums]){font-variant-numeric:tabular-nums}.m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){font-weight:500}:where([data-mantine-color-scheme=light]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-dark-6)}.m_4e7aa4f3{text-align:left}:where([dir=rtl]) .m_4e7aa4f3{text-align:right}.m_4e7aa4fd{border-bottom:none;background-color:transparent}@media(hover:hover){.m_4e7aa4fd:hover:where([data-hover]){background-color:var(--tr-hover-bg)}}@media(hover:none){.m_4e7aa4fd:active:where([data-hover]){background-color:var(--tr-hover-bg)}}.m_4e7aa4fd:where([data-with-row-border]){border-bottom:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef,.m_4e7aa4f3{padding:var(--table-vertical-spacing) var(--table-horizontal-spacing, var(--mantine-spacing-xs))}.m_4e7aa4ef:where([data-with-column-border]:not(:last-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:last-child)){border-inline-end:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b2404537>:where(tr):where([data-with-row-border]:last-of-type){border-bottom:none}.m_b2404537>:where(tr):where([data-striped=odd]:nth-of-type(odd)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr):where([data-striped=even]:nth-of-type(2n)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr)[data-hover]{--tr-hover-bg: var(--table-highlight-on-hover-color, var(--table-hover-color))}.m_b242d975{top:var(--table-sticky-header-offset, 0);z-index:3}.m_b242d975:where([data-sticky]){position:sticky}.m_b242d975:where([data-sticky]) :where(.m_4e7aa4f3){position:sticky;top:var(--table-sticky-header-offset, 0);background-color:var(--mantine-color-body)}:where([data-with-table-border]) .m_b242d975[data-sticky] .m_4e7aa4f3{top:initial}.m_9e5a3ac7{color:var(--mantine-color-dimmed)}.m_9e5a3ac7:where([data-side=top]){margin-bottom:var(--mantine-spacing-xs)}.m_9e5a3ac7:where([data-side=bottom]){margin-top:var(--mantine-spacing-xs)}.m_a100c15{overflow-x:var(--table-overflow)}.m_62259741{min-width:var(--table-min-width);max-height:var(--table-max-height)}.m_bcaa9990{display:flex;flex-direction:column;--toc-depth-offset: .8em}.m_375a65ef{display:block;padding:.3em .8em;font-size:var(--toc-size, var(--mantine-font-size-md));border-radius:var(--toc-radius, var(--mantine-radius-default));padding-left:max(calc(var(--depth-offset) * var(--toc-depth-offset)),.8em)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}.m_375a65ef:where([data-active]){background-color:var(--toc-bg);color:var(--toc-color)}.m_89d60db1{display:var(--tabs-display);flex-direction:var(--tabs-flex-direction);--tab-justify: flex-start;--tabs-list-direction: row;--tabs-panel-grow: unset;--tabs-display: block;--tabs-flex-direction: row;--tabs-list-border-width: 0;--tabs-list-border-size: 0 0 var(--tabs-list-border-width) 0;--tabs-list-gap: unset;--tabs-list-line-bottom: 0;--tabs-list-line-top: unset;--tabs-list-line-start: 0;--tabs-list-line-end: 0;--tab-radius: var(--tabs-radius) var(--tabs-radius) 0 0;--tab-border-width: 0 0 var(--tabs-list-border-width) 0}.m_89d60db1[data-inverted]{--tabs-list-line-bottom: unset;--tabs-list-line-top: 0;--tab-radius: 0 0 var(--tabs-radius) var(--tabs-radius);--tab-border-width: var(--tabs-list-border-width) 0 0 0}.m_89d60db1[data-inverted] .m_576c9d4:before{top:0;bottom:unset}.m_89d60db1[data-orientation=vertical]{--tabs-list-line-start: unset;--tabs-list-line-end: 0;--tabs-list-line-top: 0;--tabs-list-line-bottom: 0;--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);--tabs-list-direction: column;--tabs-panel-grow: 1;--tabs-display: flex}[dir=rtl] .m_89d60db1[data-orientation=vertical]{--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}.m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-flex-direction: row-reverse;--tabs-list-line-start: 0;--tabs-list-line-end: unset;--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}[dir=rtl] .m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius)}[data-mantine-color-scheme=light] .m_89d60db1{--tab-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89d60db1{--tab-border-color: var(--mantine-color-dark-4)}.m_89d60db1[data-orientation=horizontal]{--tab-justify: center}.m_89d60db1[data-variant=default]{--tabs-list-border-width: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d60db1[data-variant=outline]{--tabs-list-border-width: calc(.0625rem * var(--mantine-scale))}.m_89d60db1[data-variant=pills]{--tabs-list-gap: calc(var(--mantine-spacing-sm) / 2)}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d33d6d{display:flex;flex-wrap:wrap;justify-content:var(--tabs-justify, flex-start);flex-direction:var(--tabs-list-direction);gap:var(--tabs-list-gap);--tab-grow: unset}.m_89d33d6d[data-grow]{--tab-grow: 1}.m_b0c91715{flex-grow:var(--tabs-panel-grow)}.m_4ec4dce6{position:relative;padding:var(--mantine-spacing-xs) var(--mantine-spacing-md);font-size:var(--mantine-font-size-sm);white-space:nowrap;z-index:0;display:flex;align-items:center;line-height:1;-webkit-user-select:none;user-select:none;flex-grow:var(--tab-grow);justify-content:var(--tab-justify)}.m_4ec4dce6:disabled,.m_4ec4dce6[data-disabled]{opacity:.5;cursor:not-allowed}.m_4ec4dce6:focus{z-index:1}.m_fc420b1f{display:flex;align-items:center;justify-content:center;margin-left:var(--tab-section-margin-left, 0);margin-right:var(--tab-section-margin-right, 0)}.m_fc420b1f[data-position=left]:not(:only-child){--tab-section-margin-right: var(--mantine-spacing-xs)}[dir=rtl] .m_fc420b1f[data-position=left]:not(:only-child){--tab-section-margin-right: 0rem;--tab-section-margin-left: var(--mantine-spacing-xs)}.m_fc420b1f[data-position=right]:not(:only-child){--tab-section-margin-left: var(--mantine-spacing-xs)}[dir=rtl] .m_fc420b1f[data-position=right]:not(:only-child){--tab-section-margin-left: 0rem;--tab-section-margin-right: var(--mantine-spacing-xs)}.m_576c9d4{position:relative}.m_576c9d4:before{content:"";position:absolute;border-color:var(--tab-border-color);border-width:var(--tabs-list-border-size);border-style:solid;bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_539e827b{border-radius:var(--tab-radius);border-width:var(--tab-border-width);border-style:solid;border-color:transparent;background-color:var(--tab-bg);--tab-bg: transparent}.m_539e827b:where([data-active]){border-color:var(--tabs-color)}@media(hover:hover){.m_539e827b:hover{--tab-bg: var(--tab-hover-color)}.m_539e827b:hover:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:none){.m_539e827b:active{--tab-bg: var(--tab-hover-color)}.m_539e827b:active:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:hover){.m_539e827b:disabled:hover,.m_539e827b[data-disabled]:hover{--tab-bg: transparent}}@media(hover:none){.m_539e827b:disabled:active,.m_539e827b[data-disabled]:active{--tab-bg: transparent}}.m_6772fbd5{position:relative}.m_6772fbd5:before{content:"";position:absolute;border-color:var(--tab-border-color);border-width:var(--tabs-list-border-size);border-style:solid;bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_b59ab47c{border-top:calc(.0625rem * var(--mantine-scale)) solid transparent;border-bottom:calc(.0625rem * var(--mantine-scale)) solid transparent;border-right:calc(.0625rem * var(--mantine-scale)) solid transparent;border-left:calc(.0625rem * var(--mantine-scale)) solid transparent;border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-radius:var(--tab-radius);position:relative;--tab-border-bottom-color: transparent;--tab-border-top-color: transparent;--tab-border-inline-end-color: transparent;--tab-border-inline-start-color: transparent}.m_b59ab47c:where([data-active]):before{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-before-bottom, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-before-left, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-before-right, auto);top:var(--tab-before-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]):after{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-after-bottom, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-after-right, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-after-left, auto);top:var(--tab-after-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]){border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-inline-start-color:var(--tab-border-inline-start-color);border-inline-end-color:var(--tab-border-inline-end-color);--tab-border-top-color: var(--tab-border-color);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--mantine-color-body)}.m_b59ab47c:where([data-active])[data-inverted]{--tab-border-bottom-color: var(--tab-border-color);--tab-border-top-color: var(--mantine-color-body);--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-bottom: auto;--tab-after-top: calc(-.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-border-inline-end-color: var(--mantine-color-body);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-before-left: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto;--tab-after-right: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-before-right: auto;--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-after-left: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-border-inline-start-color: var(--mantine-color-body);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-before-right: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto;--tab-after-left: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-before-left: auto;--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-after-right: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto}.m_c3381914{border-radius:var(--tabs-radius);background-color:var(--tab-bg);color:var(--tab-color);--tab-bg: transparent;--tab-color: inherit}@media(hover:hover){.m_c3381914:not([data-disabled]):hover{--tab-bg: var(--tab-hover-color)}}@media(hover:none){.m_c3381914:not([data-disabled]):active{--tab-bg: var(--tab-hover-color)}}.m_c3381914[data-active][data-active]{--tab-bg: var(--tabs-color);--tab-color: var(--tabs-text-color, var(--mantine-color-white))}@media(hover:hover){.m_c3381914[data-active][data-active]:hover{--tab-bg: var(--tabs-color)}}@media(hover:none){.m_c3381914[data-active][data-active]:active{--tab-bg: var(--tabs-color)}}.m_7341320d{--ti-size-xs: calc(1.125rem * var(--mantine-scale));--ti-size-sm: calc(1.375rem * var(--mantine-scale));--ti-size-md: calc(1.75rem * var(--mantine-scale));--ti-size-lg: calc(2.125rem * var(--mantine-scale));--ti-size-xl: calc(2.75rem * var(--mantine-scale));--ti-size: var(--ti-size-md);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;-webkit-user-select:none;user-select:none;width:var(--ti-size);height:var(--ti-size);min-width:var(--ti-size);min-height:var(--ti-size);border-radius:var(--ti-radius, var(--mantine-radius-default));background:var(--ti-bg, var(--mantine-primary-color-filled));color:var(--ti-color, var(--mantine-color-white));border:var(--ti-bd, 1px solid transparent)}.m_43657ece{--offset: calc(var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2);--tl-bullet-size: calc(1.25rem * var(--mantine-scale));--tl-line-width: calc(.25rem * var(--mantine-scale));--tl-radius: calc(62.5rem * var(--mantine-scale));--tl-color: var(--mantine-primary-color-filled)}.m_43657ece:where([data-align=left]){padding-inline-start:var(--offset)}.m_43657ece:where([data-align=right]){padding-inline-end:var(--offset)}.m_2ebe8099{font-weight:500;line-height:1;margin-bottom:calc(var(--mantine-spacing-xs) / 2)}.m_436178ff{--item-border: var(--tl-line-width) var(--tli-border-style, solid) var(--item-border-color);position:relative;color:var(--mantine-color-text)}.m_436178ff:before{content:"";pointer-events:none;position:absolute;top:0;left:var(--timeline-line-left, 0);right:var(--timeline-line-right, 0);bottom:calc(var(--mantine-spacing-xl) * -1);border-inline-start:var(--item-border);display:var(--timeline-line-display, none)}.m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}[dir=rtl] .m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}.m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}[dir=rtl] .m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}.m_43657ece:where([data-align=left]) .m_436178ff{padding-inline-start:var(--offset);text-align:left}.m_43657ece:where([data-align=right]) .m_436178ff{padding-inline-end:var(--offset);text-align:right}:where([data-mantine-color-scheme=light]) .m_436178ff{--item-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_436178ff{--item-border-color: var(--mantine-color-dark-4)}.m_436178ff:where([data-line-active]):before{border-color:var(--tli-color, var(--tl-color))}.m_436178ff:where(:not(:last-of-type)){--timeline-line-display: block}.m_436178ff:where(:not(:first-of-type)){margin-top:var(--mantine-spacing-xl)}.m_8affcee1{width:var(--tl-bullet-size);height:var(--tl-bullet-size);border-radius:var(--tli-radius, var(--tl-radius));border:var(--tl-line-width) solid;background-color:var(--mantine-color-body);position:absolute;top:0;display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_8affcee1{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1{border-color:var(--mantine-color-dark-4)}.m_43657ece:where([data-align=left]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}.m_43657ece:where([data-align=right]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}.m_8affcee1:where([data-with-child]){border-width:var(--tl-line-width)}:where([data-mantine-color-scheme=light]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-dark-4)}.m_8affcee1:where([data-active]){border-color:var(--tli-color, var(--tl-color));background-color:var(--mantine-color-white);color:var(--tl-icon-color, var(--mantine-color-white))}.m_8affcee1:where([data-active]):where([data-with-child]){background-color:var(--tli-color, var(--tl-color));color:var(--tl-icon-color, var(--mantine-color-white))}.m_43657ece:where([data-align=left]) .m_540e8f41{padding-inline-start:var(--offset);text-align:left}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_540e8f41{text-align:right}.m_43657ece:where([data-align=right]) .m_540e8f41{padding-inline-end:var(--offset);text-align:right}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_540e8f41{text-align:left}.m_8a5d1357{margin:0;font-weight:var(--title-fw);font-size:var(--title-fz);line-height:var(--title-lh);font-family:var(--mantine-font-family-headings);text-wrap:var(--title-text-wrap, var(--mantine-heading-text-wrap))}.m_8a5d1357:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--title-line-clamp);-webkit-box-orient:vertical}.m_f698e191{--level-offset: var(--mantine-spacing-lg);margin:0;padding:0;-webkit-user-select:none;user-select:none}.m_75f3ecf{margin:0;padding:0}.m_f6970eb1{cursor:pointer;list-style:none;margin:0;padding:0;outline:0}.m_f6970eb1:focus-visible>.m_dc283425{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_dc283425{padding-inline-start:var(--label-offset)}:where([data-mantine-color-scheme=light]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-dark-5)}.m_d6493fad :first-child{margin-top:0}.m_d6493fad :last-child{margin-bottom:0}.m_d6493fad :where(h1,h2,h3,h4,h5,h6){margin-bottom:var(--mantine-spacing-xs);text-wrap:var(--mantine-heading-text-wrap);font-family:var(--mantine-font-family-headings)}.m_d6493fad :where(h1){margin-top:calc(1.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h1-font-size);line-height:var(--mantine-h1-line-height);font-weight:var(--mantine-h1-font-weight)}.m_d6493fad :where(h2){margin-top:var(--mantine-spacing-xl);font-size:var(--mantine-h2-font-size);line-height:var(--mantine-h2-line-height);font-weight:var(--mantine-h2-font-weight)}.m_d6493fad :where(h3){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h3-font-size);line-height:var(--mantine-h3-line-height);font-weight:var(--mantine-h3-font-weight)}.m_d6493fad :where(h4){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h4-font-size);line-height:var(--mantine-h4-line-height);font-weight:var(--mantine-h4-font-weight)}.m_d6493fad :where(h5){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h5-font-size);line-height:var(--mantine-h5-line-height);font-weight:var(--mantine-h5-font-weight)}.m_d6493fad :where(h6){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h6-font-size);line-height:var(--mantine-h6-line-height);font-weight:var(--mantine-h6-font-weight)}.m_d6493fad :where(img){max-width:100%;margin-bottom:var(--mantine-spacing-xs)}.m_d6493fad :where(p){margin-top:0;margin-bottom:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(mark){background-color:var(--mantine-color-yellow-2);color:inherit}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.m_d6493fad :where(a){color:var(--mantine-color-anchor);text-decoration:none}@media(hover:hover){.m_d6493fad :where(a):hover{text-decoration:underline}}@media(hover:none){.m_d6493fad :where(a):active{text-decoration:underline}}.m_d6493fad :where(hr){margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);border:0;border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(hr){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(hr){border-color:var(--mantine-color-dark-3)}.m_d6493fad :where(pre){padding:var(--mantine-spacing-xs);line-height:var(--mantine-line-height);margin:0;margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);overflow-x:auto;font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs);border-radius:var(--mantine-radius-sm)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(pre){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(pre){background-color:var(--mantine-color-dark-8)}.m_d6493fad :where(pre) :where(code){background-color:transparent;padding:0;border-radius:0;color:inherit;border:0}.m_d6493fad :where(kbd){--kbd-fz: calc(.75rem * var(--mantine-scale));--kbd-padding: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;padding:var(--kbd-padding);font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(kbd){border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(kbd){border-color:var(--mantine-color-dark-3);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-5)}.m_d6493fad :where(code){line-height:var(--mantine-line-height);padding:calc(.0625rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));border-radius:var(--mantine-radius-sm);font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(code){background-color:var(--mantine-color-gray-0);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(code){background-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_d6493fad :where(ul,ol):not([data-type=taskList]){margin-bottom:var(--mantine-spacing-md);padding-inline-start:var(--mantine-spacing-xl);list-style-position:outside}.m_d6493fad :where(table){width:100%;border-collapse:collapse;caption-side:bottom;margin-bottom:var(--mantine-spacing-md)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(table){--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(table){--table-border-color: var(--mantine-color-dark-4)}.m_d6493fad :where(table) :where(caption){margin-top:var(--mantine-spacing-xs);font-size:var(--mantine-font-size-sm);color:var(--mantine-color-dimmed)}.m_d6493fad :where(table) :where(th){text-align:left;font-weight:700;font-size:var(--mantine-font-size-sm);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm)}.m_d6493fad :where(table) :where(thead th){border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d6493fad :where(table) :where(tfoot th){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d6493fad :where(table) :where(td){padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color);font-size:var(--mantine-font-size-sm)}.m_d6493fad :where(table) :where(tr:last-of-type td){border-bottom:0}.m_d6493fad :where(blockquote){font-size:var(--mantine-font-size-lg);line-height:var(--mantine-line-height);margin:var(--mantine-spacing-md) 0;border-radius:var(--mantine-radius-sm);padding:var(--mantine-spacing-md) var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(blockquote){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(blockquote){background-color:var(--mantine-color-dark-8)}.m_b37d9ac7{width:calc(100% - var(--mantine-spacing-md) * 2);position:fixed;z-index:var(--notifications-z-index);max-width:var(--notifications-container-width)}.m_b37d9ac7:where([data-position=top-center]){top:var(--mantine-spacing-md);left:50%;transform:translate(-50%)}.m_b37d9ac7:where([data-position=top-left]){top:var(--mantine-spacing-md);left:var(--mantine-spacing-md)}.m_b37d9ac7:where([data-position=top-right]){top:var(--mantine-spacing-md);right:var(--mantine-spacing-md)}.m_b37d9ac7:where([data-position=bottom-center]){bottom:var(--mantine-spacing-md);left:50%;transform:translate(-50%)}.m_b37d9ac7:where([data-position=bottom-left]){bottom:var(--mantine-spacing-md);left:var(--mantine-spacing-md)}.m_b37d9ac7:where([data-position=bottom-right]){bottom:var(--mantine-spacing-md);right:var(--mantine-spacing-md)}.m_5ed0edd0+.m_5ed0edd0{margin-top:var(--mantine-spacing-md)} diff --git a/plugins/multiview/dash/static/index.html b/plugins/multiview/dash/static/index.html index 9aa86ff..d0637c1 100644 --- a/plugins/multiview/dash/static/index.html +++ b/plugins/multiview/dash/static/index.html @@ -5,12 +5,13 @@ - - - + + + + Multiview - - + +
diff --git a/plugins/multiview/dash/static/manifest.json b/plugins/multiview/dash/static/manifest.json index 1002d32..758ee1a 100644 --- a/plugins/multiview/dash/static/manifest.json +++ b/plugins/multiview/dash/static/manifest.json @@ -1,11 +1,11 @@ { "name": "Multiview Dashboard", "short_name": "Multiview", - "start_url": "/dash/", + "start_url": ".", "display": "standalone", "theme_color": "#1971c2", "background_color": "#1a1b1e", "icons": [ - { "src": "/dash/icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "any maskable" } + { "src": "icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "any maskable" } ] } diff --git a/plugins/multiview/epg.py b/plugins/multiview/epg.py index 075e027..bafc969 100644 --- a/plugins/multiview/epg.py +++ b/plugins/multiview/epg.py @@ -152,18 +152,18 @@ def _emit_custom_props(cp: dict, lines: list) -> None: lines.append(f" {content}") -def _build_xmltv(settings: dict, mv_count: int, window_start, window_end) -> str: +def _build_xmltv(settings: dict, order: list, window_start, window_end) -> str: chunk = timedelta(hours=4) lines = ['', ""] - for n in range(1, mv_count + 1): + for n in order: name = settings.get(f"multiview_{n}_name", f"Multiview {n}") or f"Multiview {n}" - lines.append(f' ') + lines.append(f' ') lines.append(f" {html.escape(name)}") lines.append(" ") - for n in range(1, mv_count + 1): + for n in order: name = settings.get(f"multiview_{n}_name", f"Multiview {n}") or f"Multiview {n}" epg_source_mode = settings.get(f"multiview_{n}_epg_source_mode", "dummy") @@ -186,7 +186,7 @@ def _build_xmltv(settings: dict, mv_count: int, window_start, window_end) -> str lines.append( f' ' + f' channel="mv-{n}">' ) lines.append(f" {html.escape(prog.title or '')}") if prog.sub_title: @@ -216,7 +216,7 @@ def _build_xmltv(settings: dict, mv_count: int, window_start, window_end) -> str lines.append( f' ' + f' channel="mv-{n}">' ) lines.append(f" {html.escape(epg_title)}") if epg_subtitle: @@ -241,13 +241,13 @@ def generate_epg(settings: dict, plugin_dir: str) -> "int | None": from django.utils import timezone from apps.epg.models import EPGSource - mv_count = max(1, int(settings.get("multiview_count", 1))) + order = settings.get("multiview_order", []) now = timezone.now() window_start = now.replace(hour=0, minute=0, second=0, microsecond=0) window_end = window_start + timedelta(days=14) - xmltv = _build_xmltv(settings, mv_count, window_start, window_end) + xmltv = _build_xmltv(settings, order, window_start, window_end) xml_path = os.path.join(plugin_dir, "multiview_epg.xml") with open(xml_path, "w", encoding="utf-8") as f: diff --git a/plugins/multiview/layouts.py b/plugins/multiview/layouts.py index fd14978..7ea5e32 100644 --- a/plugins/multiview/layouts.py +++ b/plugins/multiview/layouts.py @@ -13,10 +13,19 @@ def _even(v: int) -> int: - return int(v) - (int(v) % 2) + """Round to the nearest even integer. + + Must round (not truncate): custom-registry rects go fraction -> pixel -> + fraction -> pixel through _split_row/_split_grid, and a plain int(v) + truncation turns a value that's a hair below an integer due to float + error (e.g. 639.999999998) into 638 instead of 640 -- a systematic 1-2px + gap between otherwise-touching tiles. + """ + r = int(round(v)) + return r - (r % 2) -def tile_rects(layout: str, n: int, out_w: int, out_h: int) -> list: +def tile_rects(layout: str, n: int, out_w: int, out_h: int, custom_registry: dict = None) -> list: """Return [(x, y, w, h, valign, halign), ...], one entry per tile. `valign`/`halign` say where to anchor a tile's letterboxed/pillarboxed @@ -25,7 +34,25 @@ def tile_rects(layout: str, n: int, out_w: int, out_h: int) -> list: push the content against the shared edge (padding lands on the outer edge instead) so adjacent tiles' content touches with no gap. Aspect ratio is always preserved; content is never cropped. + + `layout` of the form "custom:" looks up a user-defined style in + *custom_registry* (the `multiview_custom_layouts` settings dict: style_id + -> {"name": ..., "elements": [...]}, see `_resolve_elements`). Falls back + to the auto-grid if the style or its elements can't cover this channel count. """ + if isinstance(layout, str) and layout.startswith("custom:"): + style = (custom_registry or {}).get(layout[len("custom:"):]) + elements = (style or {}).get("elements") if style else None + fractions = _resolve_elements(elements, n, out_w, out_h) if elements else None + if fractions: + rects = [ + (x * out_w, y * out_h, w * out_w, h * out_h, valign, halign) + for (x, y, w, h, valign, halign) in fractions + ] + return [(_even(x), _even(y), _even(w), _even(h), valign, halign) + for (x, y, w, h, valign, halign) in rects] + layout = "auto" + if layout == "featured": rects = _featured_rects(n, out_w, out_h) elif layout == "top_featured": @@ -124,3 +151,171 @@ def _top_featured_rects(n: int, out_w: int, out_h: int) -> list: halign = "center" rects.append((x_offset + i * tile_w, main_h, tile_w, bottom_h, "center", halign)) return rects[:n] + + +def _split_row(el: dict, count: int, out_w: int, out_h: int) -> list: + """Split a row element into `count` naturally-sized, touching tiles, + centered as a block per the row's halign/valign -- same approach as + _top_featured_rects's bottom row, generalized to any rect/direction. + + Returns fractional (x, y, w, h, valign, halign) tuples. Tile size is + capped by both the row's own thickness and a 16:9 assumption, so tiles + never stretch to fill the whole row -- the block is anchored within + the row's rect per its own halign/valign, and edge tiles push their + content toward the interior (touching, no gap) just like the built-in + featured layouts, leaving any leftover space in the row untouched. + """ + x, y, w, h = el["x"], el["y"], el["w"], el["h"] + valign = el.get("valign", "center") + halign = el.get("halign", "center") + vertical = el.get("direction") == "vertical" + row_w_px, row_h_px = w * out_w, h * out_h + # Round the row's own origin, the natural tile size, and the block + # offset to even pixels *once*, then step by that same integer for + # every piece -- arbitrary (freeform-dragged) el x/y/w/h fractions + # otherwise survive a fraction -> pixel -> fraction -> pixel round + # trip with float error, which independently rounding each piece's + # position and width can turn into a systematic 1-2px gap between + # tiles that are supposed to touch. + pieces = [] + if vertical: + row_y_px = _even(y * out_h) + natural_px = _even(min(row_h_px / count, row_w_px * 9 / 16)) + total_px = natural_px * count + avail_px = row_h_px + offset_px = _even(0 if valign == "top" else (avail_px - total_px if valign == "bottom" else (avail_px - total_px) / 2)) + piece_h = natural_px / out_h + for i in range(count): + piece_valign = "center" if count == 1 else ("bottom" if i == 0 else "top" if i == count - 1 else "center") + piece_y_px = row_y_px + offset_px + i * natural_px + pieces.append((x, piece_y_px / out_h, w, piece_h, piece_valign, halign)) + else: + row_x_px = _even(x * out_w) + natural_px = _even(min(row_w_px / count, row_h_px * 16 / 9)) + total_px = natural_px * count + avail_px = row_w_px + offset_px = _even(0 if halign == "left" else (avail_px - total_px if halign == "right" else (avail_px - total_px) / 2)) + piece_w = natural_px / out_w + for i in range(count): + piece_halign = "center" if count == 1 else ("right" if i == 0 else "left" if i == count - 1 else "center") + piece_x_px = row_x_px + offset_px + i * natural_px + pieces.append((piece_x_px / out_w, y, piece_w, h, valign, piece_halign)) + return pieces + + +def _split_grid(el: dict, count: int) -> list: + """Split a "grid" element's rect into `count` pieces, square-ish 2D grid. + + Same cols/rows formula as _auto_grid_rects, scoped to this element's own + rect. Unlike the whole-canvas auto-grid, every piece uses the grid + element's own single valign/halign uniformly -- a deliberate + simplification, not a full reimplementation of _auto_grid_rects's + per-row edge-push polish. + """ + x, y, w, h = el["x"], el["y"], el["w"], el["h"] + valign = el.get("valign", "center") + halign = el.get("halign", "center") + cols = math.ceil(math.sqrt(count)) + rows = math.ceil(count / cols) + tile_w = w / cols + tile_h = h / rows + + last_row_count = count % cols or cols + empty_cells = cols - last_row_count + offset_x = (empty_cells * tile_w) / 2 if empty_cells > 0 else 0 + + pieces = [] + for i in range(count): + c = i % cols + r = i // cols + is_last = r == rows - 1 and empty_cells > 0 + px = x + c * tile_w + (offset_x if is_last else 0) + py = y + r * tile_h + pieces.append((px, py, tile_w, tile_h, valign, halign)) + return pieces + + +def _distribute_dynamic_counts(remaining: int, dynamics: list) -> list: + """Max-min fair distribution of `remaining` channels across dynamic + elements, respecting each element's optional "max" cap (None = unlimited). + + Repeatedly hands out an even share to every still-eligible ("active") + element; any element that would exceed its cap is clamped and dropped + from the active set, and its unused share flows back in on the next + pass. Degrades to a plain even split with the remainder going to the + earliest elements when no caps are set (matches the pre-cap behavior + exactly). Returns a list of counts, one per dynamic element, same order + as `dynamics`. + """ + counts = [0] * len(dynamics) + caps = [d.get("max") for d in dynamics] + active = set(range(len(dynamics))) + left = remaining + while left > 0 and active: + share = left // len(active) + if share == 0: + for idx in sorted(active)[:left]: + counts[idx] += 1 + break + progressed = False + for idx in list(active): + cap = caps[idx] + room = (cap - counts[idx]) if cap is not None else None + give = share if room is None else min(share, room) + if give > 0: + counts[idx] += give + left -= give + progressed = True + if cap is not None and counts[idx] >= cap: + active.discard(idx) + if not progressed: + break + return counts + + +def _resolve_elements(elements: list, n: int, out_w: int, out_h: int) -> "list | None": + """Resolve a custom style's element list into n fractional tile rects. + + Mirrors src/dash/ui/src/utils/styleResolve.js -- keep both in sync; that + JS copy exists only so the editor's live preview doesn't need a network + round-trip per drag. + + Each "static" element consumes exactly one channel slot, in element + order. Remaining channels (n - number of statics) are divided across + "dynamic" elements (type "row" or "grid") via `_distribute_dynamic_counts` + (even split by default, respecting each element's optional "max" cap). A + "row" splits its count along a single axis; a "grid" arranges its count + in a square-ish 2D grid (see _split_grid). Returns None if there are no + dynamic elements and n exceeds the static count, or if the dynamic + elements' caps can't collectively absorb the remainder -- caller falls + back to the whole-canvas auto-grid in that case. + """ + statics = [e for e in elements if e.get("type") == "static"] + dynamics = [e for e in elements if e.get("type") in ("row", "grid")] + remaining = max(0, n - len(statics)) + if remaining > 0 and not dynamics: + return None + + counts = _distribute_dynamic_counts(remaining, dynamics) + + result = [] + channel_idx = 0 + dyn_i = 0 + for el in elements: + if channel_idx >= n: + break + el_type = el.get("type") + if el_type == "static": + result.append((el["x"], el["y"], el["w"], el["h"], el.get("valign", "center"), el.get("halign", "center"))) + channel_idx += 1 + elif el_type in ("row", "grid"): + count = counts[dyn_i] + dyn_i += 1 + if count <= 0: + continue + result.extend(_split_row(el, count, out_w, out_h) if el_type == "row" else _split_grid(el, count)) + channel_idx += count + + if channel_idx < n: + return None + return result[:n] diff --git a/plugins/multiview/plugin.json b/plugins/multiview/plugin.json index a26f810..4329a9f 100644 --- a/plugins/multiview/plugin.json +++ b/plugins/multiview/plugin.json @@ -4,7 +4,7 @@ "description": "Tile multiple Dispatcharr channel streams into multi-view outputs using FFmpeg", "author": "sethwv", - "version": "0.3.1", + "version": "0.4.0", "min_dispatcharr_version": "v0.27.0", "discord_thread": "https://discord.com/channels/1340492560220684331/1509200002407465001", diff --git a/plugins/multiview/server.py b/plugins/multiview/server.py index 907c14c..ced0cf3 100644 --- a/plugins/multiview/server.py +++ b/plugins/multiview/server.py @@ -24,6 +24,7 @@ import socket import sys +from . import config as _mvconfig from . import dispatcharr as _dispatcharr from . import layouts as _layouts from .parameters import resolve_preset @@ -47,6 +48,7 @@ def _parse_resolution(settings: dict) -> tuple: CHUNK_SIZE = 65536 _WORKER = os.path.join(os.path.dirname(os.path.abspath(__file__)), "compositor_worker.py") +_BACKGROUNDS_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "style_backgrounds") _server_instance = None _dash_api = None @@ -103,9 +105,36 @@ def set_server(s): def _settings() -> dict: try: from apps.plugins.models import PluginConfig - return PluginConfig.objects.get(key="multiview").settings + cfg = PluginConfig.objects.get(key="multiview") except Exception: - return {} + settings, _ = _mvconfig.ensure_layout_order({}) + settings, _ = _mvconfig.reconcile_layout_count(settings) + settings, _ = _mvconfig.ensure_custom_layout_order(settings) + return settings + + settings, changed1 = _mvconfig.ensure_layout_order(cfg.settings) + settings, changed2 = _mvconfig.reconcile_layout_count(settings) + settings, changed3 = _mvconfig.ensure_custom_layout_order(settings) + if changed1 or changed2 or changed3: + cfg.settings = settings + cfg.save() + return settings + + +def _normalized_dash_path() -> str: + """Return the configured mount path, normalized to e.g. '/dash' (no trailing slash). + + Unlike force-fallback, this always returns a non-empty path -- this + server also handles /stream/* and /internal/realsrc/* for the actual + multiview output, so an empty (root-mount) dash_path isn't supported + here; it would make the dashboard's catch-all static serving swallow + those routes. Falls back to the default if configured as empty/"/". + """ + raw = (_settings().get("dash_path") or "/dash").strip() + if not raw.startswith("/"): + raw = "/" + raw + raw = raw.rstrip("/") + return raw or "/dash" # --- audio track labeling (unchanged; see lessons OLD notes) ------------------ @@ -192,35 +221,50 @@ def wsgi_app(self, environ, start_response): pass def _route(self, path, loopback, environ, start_response): - is_dash_path = path == "/dash" or path.startswith("/dash/") or path.startswith("/api/") - if is_dash_path and _settings().get("dash_enabled", "disabled") != "enabled": - start_response("404 Not Found", [("Content-Type", "text/plain")]) - return [b"Not Found\n"] - - if path.startswith("/dash/api/"): - return self._handle_api(path[len("/dash"):], environ, start_response) - - if path == "/dash" or path.startswith("/dash/"): - return _load_dash_api().serve_static(path if path.startswith("/dash/") else "/dash/", start_response) - - if path.startswith("/api/"): - return self._handle_api(path, environ, start_response) - + # Checked first, unconditionally, so a dash_path that happens to + # collide with these reserved prefixes can't shadow the plugin's + # actual streaming endpoints (see _normalized_dash_path's docstring). if path.startswith("/stream/"): if deny := self._loopback_only(loopback, start_response): return deny try: - n = int(path.split("/")[2]) - except (IndexError, ValueError): + layout_id = path.split("/")[2] + except IndexError: start_response("400 Bad Request", [("Content-Type", "text/plain")]) return [b"Invalid stream index\n"] - return self._serve_stream(n, start_response) + if not layout_id: + start_response("400 Bad Request", [("Content-Type", "text/plain")]) + return [b"Invalid stream index\n"] + return self._serve_stream(layout_id, start_response) if path.startswith("/internal/realsrc/"): if deny := self._loopback_only(loopback, start_response): return deny return self._serve_realsrc(path[len("/internal/realsrc/"):], start_response) + dash_path = _normalized_dash_path() + is_dash_path = path == dash_path or path.startswith(dash_path + "/") or path.startswith("/api/") + if is_dash_path and _settings().get("dash_enabled", "disabled") != "enabled": + start_response("404 Not Found", [("Content-Type", "text/plain")]) + return [b"Not Found\n"] + + # Redirect the bare mount root (no trailing slash) so the browser's + # location bar ends in "/" -- the SPA build uses relative asset paths, + # which resolve against the current document's directory. + if path == dash_path: + start_response("302 Found", [("Location", dash_path + "/")]) + return [b""] + + if path.startswith(dash_path + "/api/"): + return self._handle_api(path[len(dash_path):], environ, start_response) + + if path.startswith(dash_path + "/"): + sub = path[len(dash_path):] or "/" + return _load_dash_api().serve_static(dash_path, sub, start_response) + + if path.startswith("/api/"): + return self._handle_api(path, environ, start_response) + start_response("404 Not Found", [("Content-Type", "text/plain")]) return [b"Not Found\n"] @@ -231,6 +275,8 @@ def _handle_api(self, path, environ, start_response): api._server = self # inject current server so handlers can call kill_active_streams etc. if path == "/api/auth/token": return api.handle_auth_token(environ, start_response) + if path == "/api/auth/refresh": + return api.handle_auth_refresh(environ, start_response) if path == "/api/config": return api.handle_config(environ, start_response) if path == "/api/channels": @@ -243,25 +289,29 @@ def _handle_api(self, path, environ, start_response): return api.handle_streams_list(environ, start_response) if path == "/api/streams/restart": return api.handle_streams_restart(environ, start_response) + if path == "/api/styles/preview": + return api.handle_styles_preview(environ, start_response) + if path == "/api/styles/background": + return api.handle_style_background(environ, start_response) start_response("404 Not Found", [("Content-Type", "text/plain")]) return [b"Not Found\n"] - def _serve_stream(self, n: int, start_response): - logger.info(f"Stream request: layout {n}") + def _serve_stream(self, layout_id: str, start_response): + logger.info(f"Stream request: layout {layout_id}") try: - tiles, layout, audio_source = self._resolve_layout(n) + tiles, layout, audio_source = self._resolve_layout(layout_id) except LookupError as e: start_response("404 Not Found", [("Content-Type", "text/plain")]) return [str(e).encode()] except Exception as e: # noqa: BLE001 - logger.error(f"Layout {n} error: {e}", exc_info=True) + logger.error(f"Layout {layout_id} error: {e}", exc_info=True) start_response("500 Internal Server Error", [("Content-Type", "text/plain")]) return [b"error\n"] from . import deps as _deps arch = _deps.detect_arch() if not arch or not _deps.pyav_status(arch): - logger.warning(f"Stream {n}: PyAV not installed for {arch or 'this arch'}") + logger.warning(f"Stream {layout_id}: PyAV not installed for {arch or 'this arch'}") start_response("503 Service Unavailable", [("Content-Type", "text/plain")]) return [(f"PyAV media engine not installed for {arch or 'this CPU arch'}. " f"Open the Multiview plugin settings and run the 'Install PyAV' " @@ -276,21 +326,31 @@ def _serve_stream(self, n: int, start_response): import gevent import gevent.subprocess as gsub proc = gsub.Popen(cmd, stdin=gsub.PIPE, stdout=gsub.PIPE, stderr=gsub.PIPE) - stderr_gl = gevent.spawn(self._drain_stderr, proc, f"worker-{n}") - self._active_procs[proc] = {"n": n, "cfg": cfg} + stderr_gl = gevent.spawn(self._drain_stderr, proc, f"worker-{layout_id}") + self._active_procs[proc] = {"n": layout_id, "cfg": cfg} start_response("200 OK", [ ("Content-Type", "video/mp2t"), ("Cache-Control", "no-cache"), ("X-Accel-Buffering", "no"), ]) - return self._pump_stdout(proc, f"worker {n}", stderr_gl) + return self._pump_stdout(proc, f"worker {layout_id}", stderr_gl) def _worker_config(self, tiles, layout, audio_source, settings) -> dict: out_w, out_h = _parse_resolution(settings) - rects = _layouts.tile_rects(layout, len(tiles), out_w, out_h) + custom_registry = settings.get("multiview_custom_layouts", {}) + rects = _layouts.tile_rects(layout, len(tiles), out_w, out_h, custom_registry) names = [t["name"] for t in tiles] + background = None + if isinstance(layout, str) and layout.startswith("custom:"): + style = custom_registry.get(layout[len("custom:"):]) or {} + bg_filename = style.get("background_image") + if bg_filename: + bg_path = os.path.join(_BACKGROUNDS_DIR, bg_filename) + if os.path.isfile(bg_path): + background = bg_path + # Which tiles contribute an audio track, and their language codes. if audio_source == "all": audio_idx = set(range(len(tiles))) @@ -324,6 +384,7 @@ def _worker_config(self, tiles, layout, audio_source, settings) -> dict: "bitrate": int(settings.get("output_bitrate") or 8000), "preset": preset, "video_encoder": encoder, + "background": background, "tiles": tile_cfg, } @@ -334,7 +395,9 @@ def get_active_streams(self) -> list: if n not in seen: tiles = info["cfg"].get("tiles", []) seen[n] = {"n": n, "channels": [{"idx": i, "name": t.get("name", f"Channel {i+1}")} for i, t in enumerate(tiles)]} - return [seen[n] for n in sorted(seen)] + order = _settings().get("multiview_order", []) + order_rank = {layout_id: i for i, layout_id in enumerate(order)} + return sorted(seen.values(), key=lambda s: order_rank.get(s["n"], len(order))) def kill_active_streams(self) -> int: procs = list(self._active_procs) @@ -345,7 +408,7 @@ def kill_active_streams(self) -> int: pass return len(procs) - def kill_stream(self, n: int) -> int: + def kill_stream(self, n: str) -> int: to_kill = [p for p, info in list(self._active_procs.items()) if info["n"] == n] for proc in to_kill: try: @@ -354,7 +417,7 @@ def kill_stream(self, n: int) -> int: pass return len(to_kill) - def reconnect_channel(self, n: int, idx: int) -> bool: + def reconnect_channel(self, n: str, idx: int) -> bool: import json as _json for proc, info in list(self._active_procs.items()): if info["n"] == n: @@ -447,27 +510,24 @@ def _body(): # --------------------------------------------------------------- helpers - def _resolve_layout(self, n: int): + def _resolve_layout(self, layout_id: str): """Return (tiles, layout, audio_source). tiles: list of {"id": channel_id, "name": str, "logo": str|None}. At least 2 required. """ - from apps.plugins.models import PluginConfig from apps.channels.models import Channel - try: - settings = PluginConfig.objects.get(key="multiview").settings - except Exception: - settings = {} + settings = _settings() + n = layout_id # short alias for the log/error messages below - ch_count = max(2, int(settings.get(f"multiview_{n}_channel_count", 4))) - layout = settings.get(f"multiview_{n}_layout", "auto") - selector_type = settings.get(f"multiview_{n}_selector_type", "classic") + ch_count = max(2, int(settings.get(f"multiview_{layout_id}_channel_count", 4))) + layout = settings.get(f"multiview_{layout_id}_layout", "auto") + selector_type = settings.get(f"multiview_{layout_id}_selector_type", "classic") tiles = [] if selector_type == "regex": - pattern = settings.get(f"multiview_{n}_regex_pattern", "").strip() + pattern = settings.get(f"multiview_{layout_id}_regex_pattern", "").strip() if not pattern: raise LookupError(f"Layout {n} is in regex mode but has no pattern configured") matched = list( @@ -476,12 +536,12 @@ def _resolve_layout(self, n: int): ) for ch in matched: tiles.append({"id": ch.id, "name": ch.name, "logo": _channel_logo(ch)}) - audio_source = settings.get(f"multiview_{n}_audio_source", "0") + audio_source = settings.get(f"multiview_{layout_id}_audio_source", "0") if audio_source in ("regex_first", "regex_lowest"): audio_source = "0" else: for m in range(1, ch_count + 1): - ch_id_str = settings.get(f"multiview_{n}_channel_{m}", "_none") + ch_id_str = settings.get(f"multiview_{layout_id}_channel_{m}", "_none") if not ch_id_str or ch_id_str == "_none": continue try: @@ -490,7 +550,7 @@ def _resolve_layout(self, n: int): logger.warning(f"Layout {n} slot {m}: id={ch_id_str} not found, skipping") continue tiles.append({"id": ch.id, "name": ch.name, "logo": _channel_logo(ch)}) - audio_source = settings.get(f"multiview_{n}_audio_source", "0") + audio_source = settings.get(f"multiview_{layout_id}_audio_source", "0") if len(tiles) < 2: raise LookupError(