academe-kit 0.10.1 → 0.10.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -4969,6 +4969,28 @@ function createReportService(apiClient) {
4969
4969
  },
4970
4970
  });
4971
4971
  },
4972
+ /**
4973
+ * Status de jornada dos alunos para os summary cards da rota /students.
4974
+ *
4975
+ * @param id UUID da instituição.
4976
+ * @param params.periodId UUID do bimestre, ou `"all"` para todos os bimestres
4977
+ * do ano letivo. Omitido = bimestre corrente.
4978
+ * @param params.challengeId UUID de UM challenge específico para restringir o
4979
+ * cálculo dentro do recorte temporal.
4980
+ */
4981
+ getStudentsJourneyStatusByInstitution(id, params) {
4982
+ const query = {};
4983
+ if (params?.periodId)
4984
+ query.periodId = params.periodId;
4985
+ if (params?.challengeId)
4986
+ query.challengeId = params.challengeId;
4987
+ return apiClient.GET('/reports/students-journey-status/{id}', {
4988
+ params: {
4989
+ path: { id },
4990
+ query: Object.keys(query).length > 0 ? query : undefined,
4991
+ },
4992
+ });
4993
+ },
4972
4994
  };
4973
4995
  }
4974
4996
 
@@ -6337,6 +6359,105 @@ function createSubmissionService(apiClient) {
6337
6359
  };
6338
6360
  }
6339
6361
 
6362
+ /**
6363
+ * Service do agregado `user-challenge-progress` — o caminho oficial para os
6364
+ * clientes (web/mobile) montarem a jornada e o progresso do usuário. Espelha
6365
+ * app-academe-v2/src/services/academe/user-progress.service.ts.
6366
+ */
6367
+ function createUserProgressService(apiClient) {
6368
+ return {
6369
+ /**
6370
+ * Jornada pré-computada do usuário (status, progress, color, icon,
6371
+ * isUpcoming, série) — base de renderização direta da tela de jornada.
6372
+ *
6373
+ * `userId` é [Admin]: quando informado, retorna a jornada do usuário-alvo
6374
+ * (ex.: backoffice visualizando a jornada de um aluno); omitido = jornada
6375
+ * do próprio usuário autenticado.
6376
+ */
6377
+ async getJourney(serieId, userId) {
6378
+ const query = {};
6379
+ if (serieId)
6380
+ query.serieId = serieId;
6381
+ if (userId)
6382
+ query.userId = userId;
6383
+ const res = await apiClient.GET("/user-challenge-progress/journey", {
6384
+ params: { query: Object.keys(query).length > 0 ? query : undefined },
6385
+ });
6386
+ return res.data.data;
6387
+ },
6388
+ /**
6389
+ * Visão step-by-step do progresso do usuário em um desafio. Cada step traz
6390
+ * `myStartedAt`, `myCompletedAt` e (em desafios em grupo) os agregados do
6391
+ * grupo.
6392
+ */
6393
+ getChallengeProgress(challengeId) {
6394
+ return apiClient.GET("/user-challenge-progress/challenges/{id}", {
6395
+ params: { path: { id: challengeId } },
6396
+ });
6397
+ },
6398
+ /**
6399
+ * Avança um tick na jornada do usuário no desafio, agnóstico do tipo da
6400
+ * etapa. Cada chamada executa UMA ação:
6401
+ * - Sem progresso na etapa atual → action='started'
6402
+ * - Etapa iniciada (sem completedAt) → action='completed'
6403
+ * - Todas as etapas concluídas → action='finished' (no-op)
6404
+ *
6405
+ * Caminho oficial para clientes (web/mobile). Não usar os endpoints
6406
+ * internos `/steps/{stepId}/start` ou `/steps/{stepId}/complete`.
6407
+ */
6408
+ advance(challengeId) {
6409
+ return apiClient.POST("/user-challenge-progress/challenges/{id}/advance", {
6410
+ params: { path: { id: challengeId } },
6411
+ });
6412
+ },
6413
+ /**
6414
+ * Status de conclusão do grupo numa etapa. Em desafios em grupo: retorna a
6415
+ * agregação (`canAdvance=true` quando todos concluíram). Em desafios
6416
+ * individuais: retorna o status do próprio usuário.
6417
+ */
6418
+ getStepGroupStatus(stepId) {
6419
+ return apiClient.GET("/user-challenge-progress/steps/{stepId}/group-status", {
6420
+ params: { path: { stepId } },
6421
+ });
6422
+ },
6423
+ /**
6424
+ * Progresso agregado do usuário em um módulo (ou no curso inteiro quando
6425
+ * `moduleId` é omitido). Usado pelos steps do tipo `course` da jornada.
6426
+ */
6427
+ getCourseProgress(courseId, moduleId) {
6428
+ if (moduleId) {
6429
+ return apiClient.GET("/users-course-log/me/courses/{courseId}/modules/{moduleId}/progress", { params: { path: { courseId, moduleId } } });
6430
+ }
6431
+ return apiClient.GET("/users-course-log/me/courses/{courseId}/progress", {
6432
+ params: { path: { courseId } },
6433
+ });
6434
+ },
6435
+ /**
6436
+ * [Interno] Força o início de uma etapa específica (idempotente). Clientes
6437
+ * devem preferir `advance`; mantido para casos pontuais (ex.: iniciar a
6438
+ * próxima etapa após concluir um curso aberto a partir da jornada).
6439
+ */
6440
+ start(stepId) {
6441
+ return apiClient.POST("/user-challenge-progress/steps/{stepId}/start", {
6442
+ params: { path: { stepId } },
6443
+ });
6444
+ },
6445
+ /**
6446
+ * [Admin] Conclui de uma vez TODAS as etapas ativas de um desafio para um
6447
+ * usuário-alvo, criando a linha de progresso quando não existir. Idempotente
6448
+ * — etapas já concluídas não são alteradas.
6449
+ *
6450
+ * Diferente de `advance` (que avança um tick por vez para o usuário
6451
+ * autenticado), aqui o desafio inteiro é concluído de uma vez para o usuário
6452
+ * identificado no path. Em desafios em grupo, apenas o progresso do
6453
+ * usuário-alvo é concluído; os demais membros não são afetados.
6454
+ */
6455
+ completeAllForUser(challengeId, userId) {
6456
+ return apiClient.POST("/user-challenge-progress/challenges/{id}/users/{userId}/complete-all", { params: { path: { id: challengeId, userId } } });
6457
+ },
6458
+ };
6459
+ }
6460
+
6340
6461
  function createAcademeApiClient(baseUrl) {
6341
6462
  return createClient({ baseUrl });
6342
6463
  }
@@ -6363,6 +6484,7 @@ function createAcademeServices(apiClient) {
6363
6484
  challenge: createChallengeService(apiClient),
6364
6485
  step: createStepService(apiClient),
6365
6486
  submission: createSubmissionService(apiClient),
6487
+ userProgress: createUserProgressService(apiClient),
6366
6488
  };
6367
6489
  }
6368
6490
 
@@ -10063,7 +10185,7 @@ function CosmicStarsCanvas({ containerRef }) {
10063
10185
  return jsx("canvas", { ref: canvasRef, style: CANVAS_STYLE, "aria-hidden": true });
10064
10186
  }
10065
10187
 
10066
- var css_248z$2 = ".journey-step,.journey-step__badge{align-items:center;display:inline-flex;justify-content:center;position:relative}.journey-step__svg{display:block;overflow:visible}.journey-step__interactive{align-items:center;background:transparent;border:0;cursor:pointer;display:inline-flex;height:100%;justify-content:center;padding:0;position:relative;transition:transform .18s ease;width:100%}.journey-step__interactive:hover:not([aria-disabled=true]):not(:disabled){transform:translateY(-2px)}.journey-step__interactive:disabled,.journey-step__interactive[aria-disabled=true]{cursor:not-allowed;pointer-events:none}.journey-step__icon{align-items:center;color:#fff;display:inline-flex;filter:drop-shadow(0 2px 4px rgba(0,0,0,.55)) drop-shadow(0 1px 2px rgba(0,0,0,.3));justify-content:center;left:50%;pointer-events:none;position:absolute;transform:translate(-50%,-50%);z-index:2}.journey-step__icon>.anticon,.journey-step__icon>.anticon>svg,.journey-step__icon>svg{font-size:inherit;height:100%;width:100%}.journey-step__icon.is-locked{color:#cbd5e1;filter:none}.journey-step.is-locked{opacity:.65}.journey-step.is-inactive-state .journey-step__svg{filter:saturate(.35) brightness(.85)}.journey-step.is-active .journey-step__interactive:hover:not(:disabled) .journey-step__svg{filter:brightness(1.06) drop-shadow(0 0 8px rgba(255,255,255,.18))}.journey-crystal-pin{animation:journey-float 2.5s ease-in-out infinite;display:inline-flex;justify-content:center;position:relative}.journey-crystal-pin__glow{animation:journey-pulse-glow 1.5s ease-in-out infinite;filter:blur(6px);inset:0;position:absolute}.journey-crystal-pin__svg{display:block;height:2.5rem;width:1.5rem}.journey-crystal-pin__crystal{filter:drop-shadow(0 2px 6px rgba(139,92,246,.6));position:relative}@keyframes journey-float{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-8px) rotate(2deg)}50%{transform:translateY(-4px) rotate(0deg)}75%{transform:translateY(-10px) rotate(-2deg)}}@keyframes journey-pulse-glow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}";
10188
+ var css_248z$2 = ".journey-step,.journey-step__badge{align-items:center;display:inline-flex;justify-content:center;position:relative}.journey-step__svg{display:block;overflow:visible}.journey-step__interactive{align-items:center;background:transparent;border:0;cursor:pointer;display:inline-flex;height:100%;justify-content:center;padding:0;position:relative;transition:transform .18s ease;width:100%}.journey-step__interactive:hover:not([aria-disabled=true]):not(:disabled){transform:translateY(-2px)}.journey-step__interactive:disabled,.journey-step__interactive[aria-disabled=true]{cursor:not-allowed;pointer-events:none}.journey-step__icon{align-items:center;color:#fff;display:inline-flex;filter:drop-shadow(0 2px 4px rgba(0,0,0,.55)) drop-shadow(0 1px 2px rgba(0,0,0,.3));justify-content:center;left:50%;pointer-events:none;position:absolute;transform:translate(-50%,-50%);z-index:2}.journey-step__icon>.anticon,.journey-step__icon>.anticon>svg,.journey-step__icon>svg{font-size:inherit;height:100%;width:100%}.journey-step__icon.is-locked{color:#cbd5e1;filter:none}.journey-step.is-locked{opacity:.65}.journey-step.is-inactive-state .journey-step__svg{filter:saturate(.35) brightness(.85)}.journey-step.is-active .journey-step__interactive:hover:not(:disabled) .journey-step__svg{filter:brightness(1.06) drop-shadow(0 0 8px rgba(255,255,255,.18))}.journey-step.is-3d .journey-step__interactive:hover:not([aria-disabled=true]):not(:disabled){transform:none}.journey-step__sphere{position:relative}.journey-step.is-3d .journey-step__sphere{transform:scaleY(.946);transform-origin:center}.journey-step__sphere-skirt{border-radius:50%;position:absolute}.journey-step__sphere-layer{left:0;overflow:visible;position:absolute;top:0}.journey-step__sink{left:0;position:absolute;top:0;transition:transform .12s ease;will-change:transform}.journey-step.is-3d .journey-step__interactive:active:not([aria-disabled=true]):not(:disabled) .journey-step__sink{transform:translateY(var(--journey-lift,0))}.journey-crystal-pin{animation:journey-float 2.5s ease-in-out infinite;display:inline-flex;justify-content:center;position:relative}.journey-crystal-pin__glow{animation:journey-pulse-glow 1.5s ease-in-out infinite;filter:blur(6px);inset:0;position:absolute}.journey-crystal-pin__svg{display:block;height:2.5rem;width:1.5rem}.journey-crystal-pin__crystal{filter:drop-shadow(0 2px 6px rgba(139,92,246,.6));position:relative}@keyframes journey-float{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-8px) rotate(2deg)}50%{transform:translateY(-4px) rotate(0deg)}75%{transform:translateY(-10px) rotate(-2deg)}}@keyframes journey-pulse-glow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}";
10067
10189
  styleInject(css_248z$2,{"insertAt":"top"});
10068
10190
 
10069
10191
  function buildWavyCirclePath(cx, cy, radius, amplitude, waves) {
@@ -10197,13 +10319,16 @@ const STEP_TYPE_TO_THEME = {
10197
10319
  evaluation: 'gold',
10198
10320
  certificate: 'green',
10199
10321
  };
10322
+ // Espelha a página de journey do app: todo step é uma esfera 3D, diferenciada
10323
+ // apenas por cor (STEP_TYPE_TO_THEME) e ícone. Os frames de polígono seguem
10324
+ // disponíveis via prop `frame`.
10200
10325
  const STEP_TYPE_TO_FRAME = {
10201
- challenge: 'pentagon',
10202
- course: 'hexagonWings',
10203
- tutorial: 'circleLaurel',
10204
- publication: 'hexagonRibbon',
10205
- evaluation: 'shieldWings',
10206
- certificate: 'pentagonCrown',
10326
+ challenge: 'sphere',
10327
+ course: 'sphere',
10328
+ tutorial: 'sphere',
10329
+ publication: 'sphere',
10330
+ evaluation: 'sphere',
10331
+ certificate: 'sphere',
10207
10332
  };
10208
10333
  const INACTIVE_THEME = {
10209
10334
  shadow: '#0a0a0a',
@@ -10613,10 +10738,15 @@ const shieldWingsFrame = {
10613
10738
  },
10614
10739
  };
10615
10740
 
10616
- const SPHERE_R_RATIO = 0.418; // 46 / 110 sphere radius / bodyPx (desktop original)
10617
- const RING_R_RATIO = 1.174; // 54 / 46 — ring radius / sphere radius
10618
- const STROKE_RATIO = 0.055; // 6 / 110 — ring stroke width / bodyPx
10619
- const TRACK_COLOR = '#1f1f23'; // matches original ProgressRing inactiveColor
10741
+ // Geometria/cores portadas 1:1 do StepNode 3D do app
10742
+ // (app-academe-v2/src/screens/journeys/_components/StepNode.tsx).
10743
+ const SPHERE_R_RATIO = 0.418; // raio da esfera / bodyPx
10744
+ const RING_R_RATIO = 1.3; // raio do anel / raio da esfera
10745
+ const STROKE_RATIO = 0.08; // espessura do anel / bodyPx
10746
+ const LIFT_RATIO = 0.07; // deslocamento vertical da base (skirt) / bodyPx
10747
+ const ICON_RATIO = 40 / 110; // ícone 40px em md (bodyPx=110), escalável
10748
+ const TRACK_COLOR = '#2C2D33'; // trilha do anel
10749
+ const LOCKED_SKIRT = '#2a3344'; // base escura no estado bloqueado
10620
10750
  function parseColorToHsl(color) {
10621
10751
  if (!color)
10622
10752
  return null;
@@ -10629,15 +10759,25 @@ function parseColorToHsl(color) {
10629
10759
  return rgbToHsl(rgb.r, rgb.g, rgb.b);
10630
10760
  return null;
10631
10761
  }
10762
+ /**
10763
+ * Stop inferior do skirt: mesma rampa do `deriveSphereStops` do app
10764
+ * (l-18, com piso em 10%) — uma base ~18% mais escura que a face.
10765
+ */
10766
+ function deriveSkirtColor(baseColor) {
10767
+ const baseHsl = parseColorToHsl(baseColor);
10768
+ return baseHsl ? hsl(baseHsl.h, baseHsl.s, Math.max(10, baseHsl.l - 18)) : baseColor;
10769
+ }
10632
10770
  const sphereFrame = {
10633
10771
  kind: 'sphere',
10772
+ is3d: true,
10634
10773
  layout(scale) {
10635
10774
  const bodyPx = 110 * scale;
10636
- const sphereR = bodyPx * SPHERE_R_RATIO;
10637
- const iconSize = sphereR * 0.9;
10775
+ const lift = bodyPx * LIFT_RATIO;
10776
+ const iconSize = bodyPx * ICON_RATIO;
10638
10777
  return {
10639
10778
  width: bodyPx,
10640
- height: bodyPx,
10779
+ // Altura extra para a base 3D (skirt) que aparece abaixo da esfera.
10780
+ height: bodyPx + lift,
10641
10781
  bodyCenterX: bodyPx / 2,
10642
10782
  bodyCenterY: bodyPx / 2,
10643
10783
  iconCenterX: bodyPx / 2,
@@ -10646,34 +10786,46 @@ const sphereFrame = {
10646
10786
  iconHeight: iconSize,
10647
10787
  };
10648
10788
  },
10649
- render({ theme, scale, layout, progress }) {
10650
- const cx = layout.width / 2;
10651
- const cy = layout.height / 2;
10789
+ render({ theme, scale, progress, icon, isLocked }) {
10652
10790
  const bodyPx = 110 * scale;
10653
10791
  const sphereR = bodyPx * SPHERE_R_RATIO;
10654
10792
  const ringR = sphereR * RING_R_RATIO;
10655
10793
  const ringStroke = bodyPx * STROKE_RATIO;
10794
+ const lift = bodyPx * LIFT_RATIO;
10795
+ const totalHeight = bodyPx + lift;
10796
+ const iconSize = bodyPx * ICON_RATIO;
10656
10797
  const circumference = 2 * Math.PI * ringR;
10657
- // Derive the gradient stops by tweaking the source color's lightness.
10658
- // The original config.gradient (e.g. DESAFIO: #14b8a6 #10b981 #059669)
10659
- // spans roughly l+1, l, l-17 from the mid color a subtle slope, not the
10660
- // dramatic light-to-dark range of cardShine→outer in the PentagonTheme.
10661
- const baseHsl = parseColorToHsl(theme.card);
10662
- const topStop = baseHsl
10663
- ? hsl(baseHsl.h, baseHsl.s, Math.min(92, baseHsl.l + 4))
10664
- : theme.cardShine;
10665
- const midStop = theme.card;
10666
- const bottomStop = baseHsl
10667
- ? hsl(baseHsl.h, baseHsl.s, Math.max(10, baseHsl.l - 18))
10668
- : theme.outer;
10669
- // Unique IDs derived from theme colors to avoid clashes across the document.
10670
- const uid = (theme.card + theme.outerStroke)
10671
- .replace(/[^a-zA-Z0-9]/g, '')
10672
- .slice(0, 16);
10673
- const lgId = `slg-${uid}`; // sphere body linear gradient
10674
- const rgId = `srg-${uid}`; // center radial glow
10675
- const glowFilterId = `sgf-${uid}`; // gaussian blur for the colored halo
10676
- return (jsxs("svg", { className: "journey-step__svg", width: layout.width, height: layout.height, viewBox: `0 0 ${layout.width} ${layout.height}`, xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", focusable: "false", overflow: "visible", children: [jsxs("defs", { children: [jsxs("linearGradient", { id: lgId, x1: "0", y1: "0", x2: "0", y2: "1", children: [jsx("stop", { offset: "0%", stopColor: topStop }), jsx("stop", { offset: "50%", stopColor: midStop }), jsx("stop", { offset: "100%", stopColor: bottomStop })] }), jsxs("radialGradient", { id: rgId, cx: "50%", cy: "50%", r: "50%", children: [jsx("stop", { offset: "0%", stopColor: theme.card, stopOpacity: 0.5 }), jsx("stop", { offset: "100%", stopColor: theme.card, stopOpacity: 0 })] }), jsx("filter", { id: glowFilterId, x: "-50%", y: "-50%", width: "200%", height: "200%", children: jsx("feGaussianBlur", { stdDeviation: 6 * scale }) })] }), jsx("circle", { cx: cx, cy: cy, r: sphereR, fill: theme.card, opacity: 0.3, filter: `url(#${glowFilterId})` }), progress !== undefined && (jsxs(Fragment, { children: [jsx("circle", { cx: cx, cy: cy, r: ringR, fill: "none", stroke: TRACK_COLOR, strokeWidth: ringStroke }), jsx("circle", { cx: cx, cy: cy, r: ringR, fill: "none", stroke: theme.card, strokeWidth: ringStroke, strokeDasharray: circumference, strokeDashoffset: circumference * (1 - progress / 100), strokeLinecap: "round", transform: `rotate(-90 ${cx} ${cy})`, style: { transition: 'stroke-dashoffset 0.5s ease' } })] })), jsx("circle", { cx: cx, cy: cy, r: sphereR, fill: `url(#${lgId})` }), jsx("circle", { cx: cx, cy: cy, r: sphereR - 3 * scale, fill: `url(#${rgId})` })] }));
10798
+ const cx = bodyPx / 2;
10799
+ const cy = bodyPx / 2; // centro da esfera (camada superior)
10800
+ const ringCy = cy + lift / 2; // anel acompanha a base 3D
10801
+ // Face = cor sólida chapada; skirt = base ~18% mais escura. Exatamente
10802
+ // como o StepNode (sem gradiente/glow/halo).
10803
+ const baseColor = theme.card;
10804
+ const skirtColor = isLocked ? LOCKED_SKIRT : deriveSkirtColor(baseColor);
10805
+ const rootStyle = {
10806
+ position: 'relative',
10807
+ width: bodyPx,
10808
+ height: totalHeight,
10809
+ // consumido pela animação de press-down (translateY do sink)
10810
+ ['--journey-lift']: `${lift}px`,
10811
+ };
10812
+ // Base 3D: círculo escuro, mesmo diâmetro da esfera, deslocado `lift`
10813
+ // para baixo — é o que dá a profundidade de "peça/botão".
10814
+ const skirtStyle = {
10815
+ width: sphereR * 2,
10816
+ height: sphereR * 2,
10817
+ left: cx - sphereR,
10818
+ top: cy + lift - sphereR,
10819
+ background: skirtColor,
10820
+ };
10821
+ const layerStyle = { width: bodyPx, height: bodyPx };
10822
+ const iconStyle = {
10823
+ left: '50%',
10824
+ top: '50%',
10825
+ width: iconSize,
10826
+ height: iconSize,
10827
+ };
10828
+ return (jsxs("div", { className: "journey-step__sphere", style: rootStyle, children: [jsx("div", { className: "journey-step__sphere-skirt", style: skirtStyle }), progress !== undefined && (jsxs("svg", { className: "journey-step__svg journey-step__sphere-layer", width: bodyPx, height: bodyPx, viewBox: `0 0 ${bodyPx} ${bodyPx}`, xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", focusable: "false", overflow: "visible", children: [jsx("circle", { cx: cx, cy: ringCy, r: ringR, fill: "none", stroke: TRACK_COLOR, strokeWidth: ringStroke }), jsx("circle", { cx: cx, cy: ringCy, r: ringR, fill: "none", stroke: baseColor, strokeWidth: ringStroke, strokeDasharray: circumference, strokeDashoffset: circumference * (1 - progress / 100), strokeLinecap: "round", transform: `rotate(-90 ${cx} ${ringCy})`, style: { transition: 'stroke-dashoffset 0.5s ease' } })] })), jsxs("div", { className: "journey-step__sink", style: layerStyle, children: [jsx("svg", { className: "journey-step__svg journey-step__sphere-layer", width: bodyPx, height: bodyPx, viewBox: `0 0 ${bodyPx} ${bodyPx}`, xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", focusable: "false", overflow: "visible", children: jsx("circle", { cx: cx, cy: cy, r: sphereR, fill: baseColor }) }), icon && (jsx("div", { className: `journey-step__icon${isLocked ? ' is-locked' : ''}`, style: iconStyle, "aria-hidden": "true", children: icon }))] })] }));
10677
10829
  },
10678
10830
  };
10679
10831
 
@@ -10687,7 +10839,7 @@ const FRAMES_BY_KIND = {
10687
10839
  pentagonCrown: pentagonCrownFrame,
10688
10840
  };
10689
10841
  const FRAME_BY_TYPE = {
10690
- challenge: pentagonFrame};
10842
+ challenge: sphereFrame};
10691
10843
 
10692
10844
  const SIZE_PX = {
10693
10845
  md: 110,
@@ -10709,10 +10861,12 @@ function JourneyStep({ color, stepType = 'challenge', frame, icon, isActive = tr
10709
10861
  const selectedFrame = frame
10710
10862
  ? FRAMES_BY_KIND[frame]
10711
10863
  : (FRAMES_BY_KIND[defaultFrame] ?? FRAME_BY_TYPE.challenge);
10864
+ const is3d = Boolean(selectedFrame.is3d);
10712
10865
  const layout = useMemo(() => selectedFrame.layout(scale), [scale, selectedFrame]);
10713
10866
  const rootClassName = [
10714
10867
  'journey-step',
10715
10868
  `is-size-${size}`,
10869
+ is3d ? 'is-3d' : '',
10716
10870
  isActive ? 'is-active' : 'is-inactive-state',
10717
10871
  isLocked ? 'is-locked' : '',
10718
10872
  className ?? '',
@@ -10729,7 +10883,15 @@ function JourneyStep({ color, stepType = 'challenge', frame, icon, isActive = tr
10729
10883
  width: layout.iconWidth,
10730
10884
  height: layout.iconHeight,
10731
10885
  };
10732
- const badge = (jsxs("div", { className: "journey-step__badge", style: wrapperStyle, children: [selectedFrame.render({ theme, scale, layout, progress }), jsx("div", { className: `journey-step__icon${isLocked ? ' is-locked' : ''}`, style: iconStyle, "aria-hidden": "true", children: icon })] }));
10886
+ const badge = (jsxs("div", { className: "journey-step__badge", style: wrapperStyle, children: [selectedFrame.render({
10887
+ theme,
10888
+ scale,
10889
+ layout,
10890
+ progress,
10891
+ // Frames 3D renderizam o próprio ícone (dentro da camada que afunda).
10892
+ icon: is3d ? icon : undefined,
10893
+ isLocked,
10894
+ }), !is3d && (jsx("div", { className: `journey-step__icon${isLocked ? ' is-locked' : ''}`, style: iconStyle, "aria-hidden": "true", children: icon }))] }));
10733
10895
  return (jsx("div", { className: rootClassName, style: wrapperStyle, children: interactive ? (jsx("button", { type: "button", className: "journey-step__interactive", "aria-label": ariaLabel, "aria-disabled": isLocked, disabled: isLocked, onClick: onClick, children: badge })) : (badge) }));
10734
10896
  }
10735
10897
 
@@ -10737,10 +10899,10 @@ function JourneyCrystalPin({ className, style }) {
10737
10899
  return (jsxs("div", { className: ['journey-crystal-pin', className].filter(Boolean).join(' '), style: style, children: [jsx("div", { className: "journey-crystal-pin__glow", "aria-hidden": "true", children: jsx("svg", { viewBox: "0 0 40 60", className: "journey-crystal-pin__svg", children: jsx("polygon", { points: "20,0 40,20 20,60 0,20", fill: "#a78bfa" }) }) }), jsxs("svg", { viewBox: "0 0 40 60", className: "journey-crystal-pin__svg journey-crystal-pin__crystal", "aria-hidden": "true", focusable: "false", children: [jsx("polygon", { points: "20,0 0,20 20,60", fill: "#7c3aed" }), jsx("polygon", { points: "20,0 40,20 20,60", fill: "#a78bfa" }), jsx("polygon", { points: "20,0 0,20 10,15", fill: "#c4b5fd" }), jsx("polygon", { points: "20,0 40,20 30,15", fill: "#ddd6fe" }), jsx("line", { x1: "20", y1: "0", x2: "20", y2: "60", stroke: "#8b5cf6", strokeWidth: "1", opacity: "0.5" })] })] }));
10738
10900
  }
10739
10901
 
10740
- var css_248z$1 = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:0 0% 100%;--foreground:222.2 84% 4.9%;--card:0 0% 100%;--card-foreground:222.2 84% 4.9%;--popover:0 0% 100%;--popover-foreground:222.2 84% 4.9%;--primary:222.2 47.4% 11.2%;--primary-foreground:210 40% 98%;--secondary:210 40% 96.1%;--secondary-foreground:222.2 47.4% 11.2%;--muted:210 40% 96.1%;--muted-foreground:215.4 16.3% 46.9%;--accent:210 40% 96.1%;--accent-foreground:222.2 47.4% 11.2%;--destructive:0 84.2% 60.2%;--destructive-foreground:210 40% 98%;--border:214.3 31.8% 91.4%;--input:214.3 31.8% 91.4%;--ring:222.2 84% 4.9%;--radius:0.5rem}.dark{--background:222.2 84% 4.9%;--foreground:210 40% 98%;--card:222.2 84% 4.9%;--card-foreground:210 40% 98%;--popover:222.2 84% 4.9%;--popover-foreground:210 40% 98%;--primary:210 40% 98%;--primary-foreground:222.2 47.4% 11.2%;--secondary:217.2 32.6% 17.5%;--secondary-foreground:210 40% 98%;--muted:217.2 32.6% 17.5%;--muted-foreground:215 20.2% 65.1%;--accent:217.2 32.6% 17.5%;--accent-foreground:210 40% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:210 40% 98%;--border:217.2 32.6% 17.5%;--input:217.2 32.6% 17.5%;--ring:212.7 26.8% 83.9%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.\\!container{margin-left:auto!important;margin-right:auto!important;padding-left:2rem!important;padding-right:2rem!important;width:100%!important}.container{margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem;width:100%}@media (min-width:1400px){.\\!container{max-width:1400px!important}.container{max-width:1400px}}.visible{visibility:visible}.absolute{position:absolute}.mt-4{margin-top:1rem}.block{display:block}.inline{display:inline}.\\!flex{display:flex!important}.flex{display:flex}.table{display:table}.grid{display:grid}.\\!size-10{height:2.5rem!important;width:2.5rem!important}.size-10{height:2.5rem;width:2.5rem}.\\!h-screen{height:100vh!important}.h-screen{height:100vh}.\\!w-screen{width:100vw!important}.w-screen{width:100vw}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.flex-col{flex-direction:column}.\\!items-center{align-items:center!important}.items-center{align-items:center}.\\!justify-center{justify-content:center!important}.justify-center{justify-content:center}.gap-3{gap:.75rem}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius)}.border-2{border-width:2px}.border-\\[\\#892CDD\\]{--tw-border-opacity:1;border-color:rgb(137 44 221/var(--tw-border-opacity,1))}.bg-\\[\\#111111\\]{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.bg-\\[\\#892CDD\\]{--tw-bg-opacity:1;background-color:rgb(137 44 221/var(--tw-bg-opacity,1))}.bg-\\[\\#ffffff\\]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-\\[\\#892CDD\\]{--tw-text-opacity:1;color:rgb(137 44 221/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-violet-500{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-200{animation-duration:.2s}.hover\\:bg-\\[\\#892CDD\\]\\/10:hover{background-color:rgba(137,44,221,.1)}.hover\\:bg-\\[\\#892CDD\\]\\/80:hover{background-color:rgba(137,44,221,.8)}.hover\\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\\:ring-\\[\\#892CDD\\]:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(137 44 221/var(--tw-ring-opacity,1))}.focus\\:ring-gray-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1))}.focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px}";
10902
+ var css_248z$1 = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:0 0% 100%;--foreground:222.2 84% 4.9%;--card:0 0% 100%;--card-foreground:222.2 84% 4.9%;--popover:0 0% 100%;--popover-foreground:222.2 84% 4.9%;--primary:222.2 47.4% 11.2%;--primary-foreground:210 40% 98%;--secondary:210 40% 96.1%;--secondary-foreground:222.2 47.4% 11.2%;--muted:210 40% 96.1%;--muted-foreground:215.4 16.3% 46.9%;--accent:210 40% 96.1%;--accent-foreground:222.2 47.4% 11.2%;--destructive:0 84.2% 60.2%;--destructive-foreground:210 40% 98%;--border:214.3 31.8% 91.4%;--input:214.3 31.8% 91.4%;--ring:222.2 84% 4.9%;--radius:0.5rem}.dark{--background:222.2 84% 4.9%;--foreground:210 40% 98%;--card:222.2 84% 4.9%;--card-foreground:210 40% 98%;--popover:222.2 84% 4.9%;--popover-foreground:210 40% 98%;--primary:210 40% 98%;--primary-foreground:222.2 47.4% 11.2%;--secondary:217.2 32.6% 17.5%;--secondary-foreground:210 40% 98%;--muted:217.2 32.6% 17.5%;--muted-foreground:215 20.2% 65.1%;--accent:217.2 32.6% 17.5%;--accent-foreground:210 40% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:210 40% 98%;--border:217.2 32.6% 17.5%;--input:217.2 32.6% 17.5%;--ring:212.7 26.8% 83.9%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.\\!container{margin-left:auto!important;margin-right:auto!important;padding-left:2rem!important;padding-right:2rem!important;width:100%!important}.container{margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem;width:100%}@media (min-width:1400px){.\\!container{max-width:1400px!important}.container{max-width:1400px}}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.mt-4{margin-top:1rem}.block{display:block}.inline{display:inline}.\\!flex{display:flex!important}.flex{display:flex}.table{display:table}.grid{display:grid}.\\!size-10{height:2.5rem!important;width:2.5rem!important}.size-10{height:2.5rem;width:2.5rem}.\\!h-screen{height:100vh!important}.h-screen{height:100vh}.\\!w-screen{width:100vw!important}.w-screen{width:100vw}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.flex-col{flex-direction:column}.\\!items-center{align-items:center!important}.items-center{align-items:center}.\\!justify-center{justify-content:center!important}.justify-center{justify-content:center}.gap-3{gap:.75rem}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius)}.border-2{border-width:2px}.border-\\[\\#892CDD\\]{--tw-border-opacity:1;border-color:rgb(137 44 221/var(--tw-border-opacity,1))}.bg-\\[\\#111111\\]{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.bg-\\[\\#892CDD\\]{--tw-bg-opacity:1;background-color:rgb(137 44 221/var(--tw-bg-opacity,1))}.bg-\\[\\#ffffff\\]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-\\[\\#892CDD\\]{--tw-text-opacity:1;color:rgb(137 44 221/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-violet-500{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-200{animation-duration:.2s}.hover\\:bg-\\[\\#892CDD\\]\\/10:hover{background-color:rgba(137,44,221,.1)}.hover\\:bg-\\[\\#892CDD\\]\\/80:hover{background-color:rgba(137,44,221,.8)}.hover\\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\\:ring-\\[\\#892CDD\\]:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(137 44 221/var(--tw-ring-opacity,1))}.focus\\:ring-gray-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1))}.focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px}";
10741
10903
  styleInject(css_248z$1,{"insertAt":"top"});
10742
10904
 
10743
- var css_248z = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.\\!container{margin-left:auto!important;margin-right:auto!important;padding-left:2rem!important;padding-right:2rem!important;width:100%!important}.container{margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem;width:100%}@media (min-width:1400px){.\\!container{max-width:1400px!important}.container{max-width:1400px}}.visible{visibility:visible}.absolute{position:absolute}.mt-4{margin-top:1rem}.block{display:block}.inline{display:inline}.\\!flex{display:flex!important}.flex{display:flex}.table{display:table}.grid{display:grid}.\\!size-10{height:2.5rem!important;width:2.5rem!important}.size-10{height:2.5rem;width:2.5rem}.\\!h-screen{height:100vh!important}.h-screen{height:100vh}.\\!w-screen{width:100vw!important}.w-screen{width:100vw}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.flex-col{flex-direction:column}.\\!items-center{align-items:center!important}.items-center{align-items:center}.\\!justify-center{justify-content:center!important}.justify-center{justify-content:center}.gap-3{gap:.75rem}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius)}.border-2{border-width:2px}.border-\\[\\#892CDD\\]{--tw-border-opacity:1;border-color:rgb(137 44 221/var(--tw-border-opacity,1))}.bg-\\[\\#111111\\]{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.bg-\\[\\#892CDD\\]{--tw-bg-opacity:1;background-color:rgb(137 44 221/var(--tw-bg-opacity,1))}.bg-\\[\\#ffffff\\]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-\\[\\#892CDD\\]{--tw-text-opacity:1;color:rgb(137 44 221/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-violet-500{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-200{animation-duration:.2s}.hover\\:bg-\\[\\#892CDD\\]\\/10:hover{background-color:rgba(137,44,221,.1)}.hover\\:bg-\\[\\#892CDD\\]\\/80:hover{background-color:rgba(137,44,221,.8)}.hover\\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\\:ring-\\[\\#892CDD\\]:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(137 44 221/var(--tw-ring-opacity,1))}.focus\\:ring-gray-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1))}.focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px}";
10905
+ var css_248z = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.\\!container{margin-left:auto!important;margin-right:auto!important;padding-left:2rem!important;padding-right:2rem!important;width:100%!important}.container{margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem;width:100%}@media (min-width:1400px){.\\!container{max-width:1400px!important}.container{max-width:1400px}}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.mt-4{margin-top:1rem}.block{display:block}.inline{display:inline}.\\!flex{display:flex!important}.flex{display:flex}.table{display:table}.grid{display:grid}.\\!size-10{height:2.5rem!important;width:2.5rem!important}.size-10{height:2.5rem;width:2.5rem}.\\!h-screen{height:100vh!important}.h-screen{height:100vh}.\\!w-screen{width:100vw!important}.w-screen{width:100vw}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.flex-col{flex-direction:column}.\\!items-center{align-items:center!important}.items-center{align-items:center}.\\!justify-center{justify-content:center!important}.justify-center{justify-content:center}.gap-3{gap:.75rem}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius)}.border-2{border-width:2px}.border-\\[\\#892CDD\\]{--tw-border-opacity:1;border-color:rgb(137 44 221/var(--tw-border-opacity,1))}.bg-\\[\\#111111\\]{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.bg-\\[\\#892CDD\\]{--tw-bg-opacity:1;background-color:rgb(137 44 221/var(--tw-bg-opacity,1))}.bg-\\[\\#ffffff\\]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-\\[\\#892CDD\\]{--tw-text-opacity:1;color:rgb(137 44 221/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-violet-500{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-200{animation-duration:.2s}.hover\\:bg-\\[\\#892CDD\\]\\/10:hover{background-color:rgba(137,44,221,.1)}.hover\\:bg-\\[\\#892CDD\\]\\/80:hover{background-color:rgba(137,44,221,.8)}.hover\\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\\:ring-\\[\\#892CDD\\]:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(137 44 221/var(--tw-ring-opacity,1))}.focus\\:ring-gray-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1))}.focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px}";
10744
10906
  styleInject(css_248z,{"insertAt":"top"});
10745
10907
 
10746
10908
  var BACKOFFICE_ROLES;