eat-js-sdk 1.3.3 → 1.4.0

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.
@@ -3,6 +3,7 @@
3
3
  // node_modules/svelte/src/runtime/internal/utils.js
4
4
  function noop() {
5
5
  }
6
+ var identity = (x) => x;
6
7
  function assign(tar, src) {
7
8
  for (const k in src)
8
9
  tar[k] = src[k];
@@ -105,13 +106,41 @@
105
106
  result[k] = props[k];
106
107
  return result;
107
108
  }
108
- function null_to_empty(value) {
109
- return value == null ? "" : value;
110
- }
111
109
  function action_destroyer(action_result) {
112
110
  return action_result && is_function(action_result.destroy) ? action_result.destroy : noop;
113
111
  }
114
112
 
113
+ // node_modules/svelte/src/runtime/internal/environment.js
114
+ var is_client = typeof window !== "undefined";
115
+ var now = is_client ? () => window.performance.now() : () => Date.now();
116
+ var raf = is_client ? (cb) => requestAnimationFrame(cb) : noop;
117
+
118
+ // node_modules/svelte/src/runtime/internal/loop.js
119
+ var tasks = /* @__PURE__ */ new Set();
120
+ function run_tasks(now2) {
121
+ tasks.forEach((task) => {
122
+ if (!task.c(now2)) {
123
+ tasks.delete(task);
124
+ task.f();
125
+ }
126
+ });
127
+ if (tasks.size !== 0)
128
+ raf(run_tasks);
129
+ }
130
+ function loop(callback) {
131
+ let task;
132
+ if (tasks.size === 0)
133
+ raf(run_tasks);
134
+ return {
135
+ promise: new Promise((fulfill) => {
136
+ tasks.add(task = { c: callback, f: fulfill });
137
+ }),
138
+ abort() {
139
+ tasks.delete(task);
140
+ }
141
+ };
142
+ }
143
+
115
144
  // node_modules/svelte/src/runtime/internal/globals.js
116
145
  var globals = typeof window !== "undefined" ? window : typeof globalThis !== "undefined" ? globalThis : (
117
146
  // @ts-ignore Node typings have this
@@ -197,6 +226,12 @@
197
226
  }
198
227
  return node.ownerDocument;
199
228
  }
229
+ function append_empty_stylesheet(node) {
230
+ const style_element = element("style");
231
+ style_element.textContent = "/* empty */";
232
+ append_stylesheet(get_root_for_style(node), style_element);
233
+ return style_element.sheet;
234
+ }
200
235
  function append_stylesheet(node, style) {
201
236
  append(
202
237
  /** @type {Document} */
@@ -343,6 +378,70 @@
343
378
  return result;
344
379
  }
345
380
 
381
+ // node_modules/svelte/src/runtime/internal/style_manager.js
382
+ var managed_styles = /* @__PURE__ */ new Map();
383
+ var active = 0;
384
+ function hash(str) {
385
+ let hash2 = 5381;
386
+ let i = str.length;
387
+ while (i--)
388
+ hash2 = (hash2 << 5) - hash2 ^ str.charCodeAt(i);
389
+ return hash2 >>> 0;
390
+ }
391
+ function create_style_information(doc, node) {
392
+ const info = { stylesheet: append_empty_stylesheet(node), rules: {} };
393
+ managed_styles.set(doc, info);
394
+ return info;
395
+ }
396
+ function create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {
397
+ const step = 16.666 / duration;
398
+ let keyframes = "{\n";
399
+ for (let p = 0; p <= 1; p += step) {
400
+ const t2 = a + (b - a) * ease(p);
401
+ keyframes += p * 100 + `%{${fn(t2, 1 - t2)}}
402
+ `;
403
+ }
404
+ const rule = keyframes + `100% {${fn(b, 1 - b)}}
405
+ }`;
406
+ const name = `__svelte_${hash(rule)}_${uid}`;
407
+ const doc = get_root_for_style(node);
408
+ const { stylesheet, rules } = managed_styles.get(doc) || create_style_information(doc, node);
409
+ if (!rules[name]) {
410
+ rules[name] = true;
411
+ stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);
412
+ }
413
+ const animation = node.style.animation || "";
414
+ node.style.animation = `${animation ? `${animation}, ` : ""}${name} ${duration}ms linear ${delay}ms 1 both`;
415
+ active += 1;
416
+ return name;
417
+ }
418
+ function delete_rule(node, name) {
419
+ const previous = (node.style.animation || "").split(", ");
420
+ const next2 = previous.filter(
421
+ name ? (anim) => anim.indexOf(name) < 0 : (anim) => anim.indexOf("__svelte") === -1
422
+ // remove all Svelte animations
423
+ );
424
+ const deleted = previous.length - next2.length;
425
+ if (deleted) {
426
+ node.style.animation = next2.join(", ");
427
+ active -= deleted;
428
+ if (!active)
429
+ clear_rules();
430
+ }
431
+ }
432
+ function clear_rules() {
433
+ raf(() => {
434
+ if (active)
435
+ return;
436
+ managed_styles.forEach((info) => {
437
+ const { ownerNode } = info.stylesheet;
438
+ if (ownerNode)
439
+ detach(ownerNode);
440
+ });
441
+ managed_styles.clear();
442
+ });
443
+ }
444
+
346
445
  // node_modules/svelte/src/runtime/internal/lifecycle.js
347
446
  var current_component;
348
447
  function set_current_component(component) {
@@ -459,6 +558,19 @@
459
558
  }
460
559
 
461
560
  // node_modules/svelte/src/runtime/internal/transitions.js
561
+ var promise;
562
+ function wait() {
563
+ if (!promise) {
564
+ promise = Promise.resolve();
565
+ promise.then(() => {
566
+ promise = null;
567
+ });
568
+ }
569
+ return promise;
570
+ }
571
+ function dispatch(node, direction, kind) {
572
+ node.dispatchEvent(custom_event(`${direction ? "intro" : "outro"}${kind}`));
573
+ }
462
574
  var outroing = /* @__PURE__ */ new Set();
463
575
  var outros;
464
576
  function group_outros() {
@@ -499,6 +611,132 @@
499
611
  callback();
500
612
  }
501
613
  }
614
+ var null_transition = { duration: 0 };
615
+ function create_bidirectional_transition(node, fn, params, intro) {
616
+ const options = { direction: "both" };
617
+ let config = fn(node, params, options);
618
+ let t2 = intro ? 0 : 1;
619
+ let running_program = null;
620
+ let pending_program = null;
621
+ let animation_name = null;
622
+ let original_inert_value;
623
+ function clear_animation() {
624
+ if (animation_name)
625
+ delete_rule(node, animation_name);
626
+ }
627
+ function init2(program, duration) {
628
+ const d = (
629
+ /** @type {Program['d']} */
630
+ program.b - t2
631
+ );
632
+ duration *= Math.abs(d);
633
+ return {
634
+ a: t2,
635
+ b: program.b,
636
+ d,
637
+ duration,
638
+ start: program.start,
639
+ end: program.start + duration,
640
+ group: program.group
641
+ };
642
+ }
643
+ function go(b) {
644
+ const {
645
+ delay = 0,
646
+ duration = 300,
647
+ easing = identity,
648
+ tick: tick2 = noop,
649
+ css
650
+ } = config || null_transition;
651
+ const program = {
652
+ start: now() + delay,
653
+ b
654
+ };
655
+ if (!b) {
656
+ program.group = outros;
657
+ outros.r += 1;
658
+ }
659
+ if ("inert" in node) {
660
+ if (b) {
661
+ if (original_inert_value !== void 0) {
662
+ node.inert = original_inert_value;
663
+ }
664
+ } else {
665
+ original_inert_value = /** @type {HTMLElement} */
666
+ node.inert;
667
+ node.inert = true;
668
+ }
669
+ }
670
+ if (running_program || pending_program) {
671
+ pending_program = program;
672
+ } else {
673
+ if (css) {
674
+ clear_animation();
675
+ animation_name = create_rule(node, t2, b, duration, delay, easing, css);
676
+ }
677
+ if (b)
678
+ tick2(0, 1);
679
+ running_program = init2(program, duration);
680
+ add_render_callback(() => dispatch(node, b, "start"));
681
+ loop((now2) => {
682
+ if (pending_program && now2 > pending_program.start) {
683
+ running_program = init2(pending_program, duration);
684
+ pending_program = null;
685
+ dispatch(node, running_program.b, "start");
686
+ if (css) {
687
+ clear_animation();
688
+ animation_name = create_rule(
689
+ node,
690
+ t2,
691
+ running_program.b,
692
+ running_program.duration,
693
+ 0,
694
+ easing,
695
+ config.css
696
+ );
697
+ }
698
+ }
699
+ if (running_program) {
700
+ if (now2 >= running_program.end) {
701
+ tick2(t2 = running_program.b, 1 - t2);
702
+ dispatch(node, running_program.b, "end");
703
+ if (!pending_program) {
704
+ if (running_program.b) {
705
+ clear_animation();
706
+ } else {
707
+ if (!--running_program.group.r)
708
+ run_all(running_program.group.c);
709
+ }
710
+ }
711
+ running_program = null;
712
+ } else if (now2 >= running_program.start) {
713
+ const p = now2 - running_program.start;
714
+ t2 = running_program.a + running_program.d * easing(p / running_program.duration);
715
+ tick2(t2, 1 - t2);
716
+ }
717
+ }
718
+ return !!(running_program || pending_program);
719
+ });
720
+ }
721
+ }
722
+ return {
723
+ run(b) {
724
+ if (is_function(config)) {
725
+ wait().then(() => {
726
+ const opts = { direction: b ? "in" : "out" };
727
+ config = config(opts);
728
+ go(b);
729
+ });
730
+ } else {
731
+ go(b);
732
+ }
733
+ },
734
+ end() {
735
+ clear_animation();
736
+ running_program = pending_program = null;
737
+ }
738
+ };
739
+ }
502
740
 
503
741
  // node_modules/svelte/src/runtime/internal/each.js
504
742
  function ensure_array_like(array_like_or_iterator) {
@@ -648,7 +886,7 @@
648
886
  }
649
887
  component.$$.dirty[i / 31 | 0] |= 1 << i % 31;
650
888
  }
651
- function init(component, options, instance18, create_fragment19, not_equal, props, append_styles2 = null, dirty = [-1]) {
889
+ function init(component, options, instance20, create_fragment21, not_equal, props, append_styles2 = null, dirty = [-1]) {
652
890
  const parent_component = current_component;
653
891
  set_current_component(component);
654
892
  const $$ = component.$$ = {
@@ -674,7 +912,7 @@
674
912
  };
675
913
  append_styles2 && append_styles2($$.root);
676
914
  let ready = false;
677
- $$.ctx = instance18 ? instance18(component, options.props || {}, (i, ret, ...rest) => {
915
+ $$.ctx = instance20 ? instance20(component, options.props || {}, (i, ret, ...rest) => {
678
916
  const value = rest.length ? rest[0] : ret;
679
917
  if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
680
918
  if (!$$.skip_bound && $$.bound[i])
@@ -687,7 +925,7 @@
687
925
  $$.update();
688
926
  ready = true;
689
927
  run_all($$.before_update);
690
- $$.fragment = create_fragment19 ? create_fragment19($$.ctx) : false;
928
+ $$.fragment = create_fragment21 ? create_fragment21($$.ctx) : false;
691
929
  if (options.target) {
692
930
  if (options.hydrate) {
693
931
  start_hydrating();
@@ -1226,7 +1464,7 @@
1226
1464
  }
1227
1465
  function instance($$self, $$props, $$invalidate) {
1228
1466
  let { htmlString = "" } = $$props;
1229
- let { otherClass = "" } = $$props;
1467
+ let { otherClass = null } = $$props;
1230
1468
  let { ariaHidden = false } = $$props;
1231
1469
  let { htmlHeading = "" } = $$props;
1232
1470
  htmlString = htmlString.replace(/<p><\/p>/g, "");
@@ -1358,6 +1596,14 @@
1358
1596
  path: "M10 0C15.5228 0 20 4.47715 20 10C20 15.5228 15.5228 20 10 20C4.47715 20 0 15.5228 0 10C0 4.47715 4.47715 0 10 0ZM7.70711 6.29289C7.31658 5.90237 6.68342 5.90237 6.29289 6.29289C5.90237 6.68342 5.90237 7.31658 6.29289 7.70711L8.585 10L6.29289 12.2929C5.93241 12.6534 5.90468 13.2206 6.2097 13.6129L6.29289 13.7071C6.68342 14.0976 7.31658 14.0976 7.70711 13.7071L10 11.415L12.2929 13.7071C12.6534 14.0676 13.2206 14.0953 13.6129 13.7903L13.7071 13.7071C14.0976 13.3166 14.0976 12.6834 13.7071 12.2929L11.415 10L13.7071 7.70711C14.0676 7.34662 14.0953 6.77939 13.7903 6.3871L13.7071 6.29289C13.3166 5.90237 12.6834 5.90237 12.2929 6.29289L10 8.585L7.70711 6.29289Z",
1359
1597
  pathFill: "currentColor"
1360
1598
  },
1599
+ expandIcon: {
1600
+ width: 13,
1601
+ height: 12,
1602
+ viewBox: "0 0 13 12",
1603
+ fill: "none",
1604
+ path: "M3.01642 10.6667H4.08309C4.27198 10.6667 4.43031 10.7306 4.55809 10.8583C4.68587 10.9861 4.74976 11.1444 4.74976 11.3333C4.74976 11.5222 4.68587 11.6806 4.55809 11.8083C4.43031 11.9361 4.27198 12 4.08309 12H1.41642C1.22753 12 1.0692 11.9361 0.941423 11.8083C0.813645 11.6806 0.749756 11.5222 0.749756 11.3333V8.66667C0.749756 8.47778 0.813645 8.31944 0.941423 8.19167C1.0692 8.06389 1.22753 8 1.41642 8C1.60531 8 1.76364 8.06389 1.89142 8.19167C2.0192 8.31944 2.08309 8.47778 2.08309 8.66667V9.73333L3.68309 8.13333C3.80531 8.01111 3.96087 7.95 4.14976 7.95C4.33864 7.95 4.4942 8.01111 4.61642 8.13333C4.73865 8.25556 4.79976 8.41111 4.79976 8.6C4.79976 8.78889 4.73865 8.94444 4.61642 9.06667L3.01642 10.6667ZM10.4831 10.6667L8.88309 9.06667C8.76087 8.94444 8.69976 8.78889 8.69976 8.6C8.69976 8.41111 8.76087 8.25556 8.88309 8.13333C9.00531 8.01111 9.16087 7.95 9.34976 7.95C9.53865 7.95 9.6942 8.01111 9.81642 8.13333L11.4164 9.73333V8.66667C11.4164 8.47778 11.4803 8.31944 11.6081 8.19167C11.7359 8.06389 11.8942 8 12.0831 8C12.272 8 12.4303 8.06389 12.5581 8.19167C12.6859 8.31944 12.7498 8.47778 12.7498 8.66667V11.3333C12.7498 11.5222 12.6859 11.6806 12.5581 11.8083C12.4303 11.9361 12.272 12 12.0831 12H9.41642C9.22753 12 9.0692 11.9361 8.94142 11.8083C8.81365 11.6806 8.74976 11.5222 8.74976 11.3333C8.74976 11.1444 8.81365 10.9861 8.94142 10.8583C9.0692 10.7306 9.22753 10.6667 9.41642 10.6667H10.4831ZM2.08309 2.26667V3.33333C2.08309 3.52222 2.0192 3.68056 1.89142 3.80833C1.76364 3.93611 1.60531 4 1.41642 4C1.22753 4 1.0692 3.93611 0.941423 3.80833C0.813645 3.68056 0.749756 3.52222 0.749756 3.33333V0.666667C0.749756 0.477778 0.813645 0.319444 0.941423 0.191667C1.0692 0.0638889 1.22753 0 1.41642 0H4.08309C4.27198 0 4.43031 0.0638889 4.55809 0.191667C4.68587 0.319444 4.74976 0.477778 4.74976 0.666667C4.74976 0.855556 4.68587 1.01389 4.55809 1.14167C4.43031 1.26944 4.27198 1.33333 4.08309 1.33333H3.01642L4.61642 2.93333C4.73865 3.05556 4.79976 3.21111 4.79976 3.4C4.79976 3.58889 4.73865 3.74444 4.61642 3.86667C4.4942 3.98889 4.33864 4.05 4.14976 4.05C3.96087 4.05 3.80531 3.98889 3.68309 3.86667L2.08309 2.26667ZM11.4164 2.26667L9.81642 3.86667C9.6942 3.98889 9.53865 4.05 9.34976 4.05C9.16087 4.05 9.00531 3.98889 8.88309 3.86667C8.76087 3.74444 8.69976 3.58889 8.69976 3.4C8.69976 3.21111 8.76087 3.05556 8.88309 2.93333L10.4831 1.33333H9.41642C9.22753 1.33333 9.0692 1.26944 8.94142 1.14167C8.81365 1.01389 8.74976 0.855556 8.74976 0.666667C8.74976 0.477778 8.81365 0.319444 8.94142 0.191667C9.0692 0.0638889 9.22753 0 9.41642 0H12.0831C12.272 0 12.4303 0.0638889 12.5581 0.191667C12.6859 0.319444 12.7498 0.477778 12.7498 0.666667V3.33333C12.7498 3.52222 12.6859 3.68056 12.5581 3.80833C12.4303 3.93611 12.272 4 12.0831 4C11.8942 4 11.7359 3.93611 11.6081 3.80833C11.4803 3.68056 11.4164 3.52222 11.4164 3.33333V2.26667Z",
1605
+ pathFill: "#082663"
1606
+ },
1361
1607
  infoSolid: {
1362
1608
  width: 20,
1363
1609
  height: 20,
@@ -2303,7 +2549,7 @@
2303
2549
  ctx[11]
2304
2550
  ),
2305
2551
  otherClass: "text-stimulus py-2 " + /*shouldUseFullWidth*/
2306
- (ctx[4]() ? "w-full" : (
2552
+ (ctx[4] ? "w-full" : (
2307
2553
  /*stimulusTextWidth*/
2308
2554
  ctx[15]
2309
2555
  ))
@@ -2326,7 +2572,7 @@
2326
2572
  if (dirty[0] & /*shouldUseFullWidth, stimulusTextWidth*/
2327
2573
  32784)
2328
2574
  commonstringtohtml_changes.otherClass = "text-stimulus py-2 " + /*shouldUseFullWidth*/
2329
- (ctx2[4]() ? "w-full" : (
2575
+ (ctx2[4] ? "w-full" : (
2330
2576
  /*stimulusTextWidth*/
2331
2577
  ctx2[15]
2332
2578
  ));
@@ -2453,7 +2699,7 @@
2453
2699
  ctx[11]
2454
2700
  ),
2455
2701
  otherClass: "text-stimulus py-2 " + /*shouldUseFullWidth*/
2456
- (ctx[4]() ? "w-full" : (
2702
+ (ctx[4] ? "w-full" : (
2457
2703
  /*stimulusTextWidth*/
2458
2704
  ctx[15]
2459
2705
  ))
@@ -2476,7 +2722,7 @@
2476
2722
  if (dirty[0] & /*shouldUseFullWidth, stimulusTextWidth*/
2477
2723
  32784)
2478
2724
  commonstringtohtml_changes.otherClass = "text-stimulus py-2 " + /*shouldUseFullWidth*/
2479
- (ctx2[4]() ? "w-full" : (
2725
+ (ctx2[4] ? "w-full" : (
2480
2726
  /*stimulusTextWidth*/
2481
2727
  ctx2[15]
2482
2728
  ));
@@ -3352,6 +3598,8 @@
3352
3598
  }
3353
3599
  };
3354
3600
  }
3601
+ var CALCULATION_TIMEOUT = 250;
3602
+ var FALLBACK_WIDTH = "w-1/2";
3355
3603
  function instance4($$self, $$props, $$invalidate) {
3356
3604
  let shouldUseFullWidth;
3357
3605
  let dynamicInteractionWidth;
@@ -3375,9 +3623,78 @@
3375
3623
  let dynamicMarginTop = "0px";
3376
3624
  let stimulusTextWidth = "w-full";
3377
3625
  let innerWidth = 0;
3626
+ let calculationState = {
3627
+ isActive: false,
3628
+ timeoutId: null,
3629
+ isDestroyed: false
3630
+ };
3631
+ let preCalculatedTableWidth = 0;
3378
3632
  const configureHtmlString = (htmlString, maxHeight = "") => {
3379
3633
  return htmlString.replace(/<table>/g, `<div class="table-container ${maxHeight}" tabindex="0"><table>`).replace(/<\/table>/g, "</table></div>");
3380
3634
  };
3635
+ const updateStimulusWidth = (maxTableWidth) => {
3636
+ try {
3637
+ const screenWidth = window.innerWidth;
3638
+ if (screenWidth <= 0 || !isFinite(screenWidth)) {
3639
+ $$invalidate(15, stimulusTextWidth = FALLBACK_WIDTH);
3640
+ return;
3641
+ }
3642
+ const validTableWidth = maxTableWidth > 0 ? maxTableWidth : screenWidth * 0.3;
3643
+ const minWidth = screenWidth * EAT_SCREEN_HALF_WIDTH_RATIO;
3644
+ const desiredWidth = validTableWidth + STIMULUS_TEXT_TABLE_BUFFER;
3645
+ const clampedWidth = Math.min(Math.max(desiredWidth, minWidth), screenWidth);
3646
+ const widthRatio = clampedWidth / screenWidth;
3647
+ const percentage = Math.floor(widthRatio * 100);
3648
+ const widthMap = [
3649
+ { threshold: 92, class: "w-full" },
3650
+ { threshold: 83, class: "w-5/6" },
3651
+ { threshold: 74, class: "w-3/4" },
3652
+ { threshold: 65, class: "w-2/3" },
3653
+ { threshold: 56, class: "w-7/12" },
3654
+ { threshold: 0, class: FALLBACK_WIDTH }
3655
+ ];
3656
+ const match = widthMap.find((item) => percentage >= item.threshold);
3657
+ $$invalidate(15, stimulusTextWidth = match?.class || FALLBACK_WIDTH);
3658
+ } catch (error) {
3659
+ $$invalidate(15, stimulusTextWidth = FALLBACK_WIDTH);
3660
+ }
3661
+ };
3662
+ const estimateTableWidthFromContent = (htmlString) => {
3663
+ try {
3664
+ const tableMatches = htmlString.match(/<table[^>]*>[\s\S]*?<\/table>/gi);
3665
+ if (!tableMatches) {
3666
+ preCalculatedTableWidth = 0;
3667
+ return;
3668
+ }
3669
+ let maxWidth = 0;
3670
+ tableMatches.forEach((tableHtml) => {
3671
+ const allRowMatches = tableHtml.match(/<tr[^>]*>([\s\S]*?)<\/tr>/gi);
3672
+ if (!allRowMatches)
3673
+ return;
3674
+ let tableMaxWidth = 0;
3675
+ allRowMatches.slice(0, 3).forEach((rowHtml) => {
3676
+ const cellMatches = rowHtml.match(/<(td|th)[^>]*>([\s\S]*?)<\/(td|th)>/gi);
3677
+ if (!cellMatches)
3678
+ return;
3679
+ let rowWidth = 0;
3680
+ cellMatches.forEach((cellHtml) => {
3681
+ const textContent = cellHtml.replace(/<[^>]*>/g, "").trim();
3682
+ let cellWidth = Math.max(textContent.length * 8, 80);
3683
+ if (textContent.length > 20)
3684
+ cellWidth *= 1.1;
3685
+ if (textContent.length < 5)
3686
+ cellWidth *= 1.5;
3687
+ rowWidth += Math.min(cellWidth, 300);
3688
+ });
3689
+ tableMaxWidth = Math.max(tableMaxWidth, rowWidth);
3690
+ });
3691
+ maxWidth = Math.max(maxWidth, tableMaxWidth);
3692
+ });
3693
+ preCalculatedTableWidth = maxWidth + 60;
3694
+ } catch (error) {
3695
+ preCalculatedTableWidth = 0;
3696
+ }
3697
+ };
3381
3698
  if (stimulus) {
3382
3699
  const { asset_alignment: assetAlignment, alternative_text: alternativeText, long_description: longDescriptionRaw, description, file, stimulus_text: stimulusTextRaw, stimulus_text_alignment: stimulusTextAlignmentRaw, stimulus_layout_order: stimulusLayoutOrderRaw } = stimulus;
3383
3700
  stimulusLayoutOrder = stimulusLayoutOrderRaw;
@@ -3394,7 +3711,11 @@
3394
3711
  if (stimulusTextRaw) {
3395
3712
  const maxHeight = stimulusTextAlignmentRaw === STIMULUS_TEXT_ALIGNMENT_DEFAULT ? "max-h-[660px]" : "max-h-[470px]";
3396
3713
  stimulusText = configureHtmlString(stimulusTextRaw, maxHeight);
3714
+ estimateTableWidthFromContent(stimulusTextRaw);
3397
3715
  stimulusTextAlignment = stimulusTextAlignmentRaw;
3716
+ if (preCalculatedTableWidth > 0 && get_store_value(interactionWidth) === "50%") {
3717
+ updateStimulusWidth(preCalculatedTableWidth);
3718
+ }
3398
3719
  }
3399
3720
  if (longDescriptionRaw) {
3400
3721
  longDescription = configureHtmlString(longDescriptionRaw, "max-h-[470px]");
@@ -3418,36 +3739,73 @@
3418
3739
  const promptRubricHeaderElem = get_store_value(promptRubricElem);
3419
3740
  const interactionWidthValue = interactionType === INTERACTION_TYPE_CATEGORISE && !stimulus ? "100%" : get_store_value(interactionWidth);
3420
3741
  const calculateDynamicMargin = () => {
3421
- if (typeof window !== "undefined" && containerElement && showAssetAlignmentDefault) {
3742
+ try {
3743
+ if (typeof window === "undefined" || !containerElement || !showAssetAlignmentDefault || calculationState.isDestroyed) {
3744
+ $$invalidate(14, dynamicMarginTop = "0px");
3745
+ return;
3746
+ }
3422
3747
  const viewportHeight = window.innerHeight;
3423
3748
  const contentHeight = containerElement.scrollHeight;
3749
+ if (viewportHeight <= 0 || contentHeight <= 0) {
3750
+ $$invalidate(14, dynamicMarginTop = "0px");
3751
+ return;
3752
+ }
3424
3753
  const calculatedMargin = Math.max(0, (viewportHeight - contentHeight) / 2);
3425
3754
  $$invalidate(14, dynamicMarginTop = `${calculatedMargin - EAT_HEADER_OFFSET}px`);
3426
- } else {
3755
+ } catch (error) {
3427
3756
  $$invalidate(14, dynamicMarginTop = "0px");
3428
3757
  }
3429
3758
  };
3430
3759
  const handleImageLoad = () => {
3760
+ if (calculationState.isDestroyed)
3761
+ return;
3431
3762
  calculateDynamicMargin();
3432
- requestAnimationFrame(calculateDynamicMargin);
3763
+ requestAnimationFrame(() => {
3764
+ if (!calculationState.isDestroyed) {
3765
+ calculateDynamicMargin();
3766
+ }
3767
+ });
3433
3768
  };
3434
3769
  const calculateStimulusTextWidth = () => {
3435
- const tables = promptBodyContainer.querySelectorAll("table");
3436
- if (!tables?.length)
3770
+ if (calculationState.isActive || calculationState.isDestroyed)
3437
3771
  return;
3438
- const maxTableWidth = Math.max(...Array.from(tables, (table) => table.getBoundingClientRect().width));
3439
- const screenWidth = window.innerWidth;
3440
- const minWidth = screenWidth * EAT_SCREEN_HALF_WIDTH_RATIO;
3441
- const desiredWidth = maxTableWidth + STIMULUS_TEXT_TABLE_BUFFER;
3442
- const clampedWidth = Math.min(Math.max(desiredWidth, minWidth), screenWidth);
3443
- if (clampedWidth > screenWidth * EAT_SCREEN_HALF_WIDTH_RATIO) {
3444
- $$invalidate(15, stimulusTextWidth = `${clampedWidth}px`);
3445
- } else {
3446
- $$invalidate(15, stimulusTextWidth = "w-1/2");
3772
+ calculationState.isActive = true;
3773
+ try {
3774
+ if (preCalculatedTableWidth > 0) {
3775
+ updateStimulusWidth(preCalculatedTableWidth);
3776
+ } else {
3777
+ $$invalidate(15, stimulusTextWidth = FALLBACK_WIDTH);
3778
+ }
3779
+ } catch (error) {
3780
+ $$invalidate(15, stimulusTextWidth = FALLBACK_WIDTH);
3781
+ } finally {
3782
+ calculationState.isActive = false;
3447
3783
  }
3448
3784
  };
3449
- const onResize = () => {
3450
- calculateDynamicMargin();
3785
+ const handleResize = () => {
3786
+ if (calculationState.isDestroyed)
3787
+ return;
3788
+ if (calculationState.timeoutId) {
3789
+ clearTimeout(calculationState.timeoutId);
3790
+ }
3791
+ calculationState.timeoutId = setTimeout(
3792
+ () => {
3793
+ if (calculationState.isDestroyed)
3794
+ return;
3795
+ calculateDynamicMargin();
3796
+ if (interactionWidthValue === "50%") {
3797
+ calculateStimulusTextWidth();
3798
+ }
3799
+ },
3800
+ CALCULATION_TIMEOUT
3801
+ );
3802
+ };
3803
+ const cleanup = () => {
3804
+ calculationState.isDestroyed = true;
3805
+ if (calculationState.timeoutId) {
3806
+ clearTimeout(calculationState.timeoutId);
3807
+ calculationState.timeoutId = null;
3808
+ }
3451
3809
  };
3452
3810
  onMount(async () => {
3453
3811
  if (typeof window === "undefined")
@@ -3457,12 +3815,11 @@
3457
3815
  if (interactionWidthValue === "50%") {
3458
3816
  calculateStimulusTextWidth();
3459
3817
  }
3460
- window.addEventListener("resize", onResize);
3818
+ window.addEventListener("resize", handleResize, { passive: true });
3461
3819
  });
3462
3820
  onDestroy(() => {
3463
- if (typeof window !== "undefined") {
3464
- window.removeEventListener("resize", onResize);
3465
- }
3821
+ window.removeEventListener("resize", handleResize);
3822
+ cleanup();
3466
3823
  });
3467
3824
  function onwindowresize() {
3468
3825
  $$invalidate(3, innerWidth = window_1.innerWidth);
@@ -3497,14 +3854,12 @@
3497
3854
  if ($$self.$$.dirty[0] & /*innerWidth*/
3498
3855
  8) {
3499
3856
  $:
3500
- $$invalidate(4, shouldUseFullWidth = () => {
3501
- return !!showAsset && showAssetAlignmentDefault || !!showTextStimulus && showTextAlignmentDefault || innerWidth < SCREEN_LG;
3502
- });
3857
+ $$invalidate(4, shouldUseFullWidth = !!showAsset && showAssetAlignmentDefault || !!showTextStimulus && showTextAlignmentDefault || innerWidth < SCREEN_LG);
3503
3858
  }
3504
3859
  if ($$self.$$.dirty[0] & /*shouldUseFullWidth*/
3505
3860
  16) {
3506
3861
  $:
3507
- $$invalidate(16, dynamicInteractionWidth = interactionWidthValue === "50%" && !shouldUseFullWidth() ? "w-1/2" : "w-full");
3862
+ $$invalidate(16, dynamicInteractionWidth = interactionWidthValue === "50%" && !shouldUseFullWidth ? "w-1/2" : "w-full");
3508
3863
  }
3509
3864
  };
3510
3865
  $:
@@ -4080,154 +4435,1662 @@
4080
4435
  };
4081
4436
  var useMCQ_default = useAlphabetEquivalent;
4082
4437
 
4083
- // src/lib/components/prompt/mcq/PromptMCQ.svelte
4084
- function add_css(target) {
4085
- append_styles(target, "svelte-1sgrg21", ".responsive-grid.svelte-1sgrg21.svelte-1sgrg21{display:grid;gap:1rem;width:100%}.responsive-grid.svelte-1sgrg21 .btn-mcq-option.svelte-1sgrg21{width:100%}@media(max-width: 767px){.responsive-grid.svelte-1sgrg21.svelte-1sgrg21{grid-template-columns:1fr;justify-content:center;justify-items:center;place-items:center}.responsive-grid.svelte-1sgrg21 .btn-mcq-option.svelte-1sgrg21{min-width:288px;max-width:288px;min-height:210px;margin:0 auto}}@media(min-width: 768px) and (max-width: 1194px){.responsive-grid.svelte-1sgrg21.svelte-1sgrg21{grid-template-columns:repeat(2, 1fr);justify-content:center;max-width:620px;margin:0 auto}.responsive-grid.svelte-1sgrg21 .btn-mcq-option.svelte-1sgrg21{max-width:304px;min-height:240px}}@media(min-width: 1195px){.responsive-grid.svelte-1sgrg21.svelte-1sgrg21{grid-template-columns:repeat(2, 1fr);justify-content:flex-start;max-width:620px;margin:0}.responsive-grid.svelte-1sgrg21 .btn-mcq-option.svelte-1sgrg21{max-width:304px;min-height:240px}}");
4086
- }
4087
- function get_each_context(ctx, list, i) {
4088
- const child_ctx = ctx.slice();
4089
- child_ctx[31] = list[i];
4090
- child_ctx[33] = i;
4091
- return child_ctx;
4092
- }
4093
- function create_if_block_102(ctx) {
4094
- let promptresult;
4095
- let current;
4096
- promptresult = new PromptResultFeedbackAlert_default({
4097
- props: {
4098
- hasIcon: true,
4099
- isFeedbackAlert: (
4100
- /*isPreviewModeInteractive*/
4101
- ctx[3] ? false : true
4102
- ),
4103
- isResultCorrect: (
4104
- /*selectedOptions*/
4105
- ctx[4].length === /*correctAnswersLength*/
4106
- ctx[5] && /*isResultCorrect*/
4107
- ctx[14](
4108
- /*selectedOptions*/
4109
- ctx[4],
4110
- /*correctAnswerIds*/
4111
- ctx[6]
4112
- )
4113
- ),
4114
- isSkipped: (
4115
- /*isSkipped*/
4116
- ctx[15]()
4117
- ),
4118
- resultFeedback: (
4119
- /*resultFeedback*/
4120
- ctx[7]
4121
- )
4122
- }
4123
- });
4124
- return {
4125
- c() {
4126
- create_component(promptresult.$$.fragment);
4127
- },
4128
- m(target, anchor) {
4129
- mount_component(promptresult, target, anchor);
4130
- current = true;
4131
- },
4132
- p(ctx2, dirty) {
4133
- const promptresult_changes = {};
4134
- if (dirty[0] & /*isPreviewModeInteractive*/
4135
- 8)
4136
- promptresult_changes.isFeedbackAlert = /*isPreviewModeInteractive*/
4137
- ctx2[3] ? false : true;
4138
- if (dirty[0] & /*selectedOptions, correctAnswersLength, correctAnswerIds*/
4139
- 112)
4140
- promptresult_changes.isResultCorrect = /*selectedOptions*/
4141
- ctx2[4].length === /*correctAnswersLength*/
4142
- ctx2[5] && /*isResultCorrect*/
4143
- ctx2[14](
4144
- /*selectedOptions*/
4145
- ctx2[4],
4146
- /*correctAnswerIds*/
4147
- ctx2[6]
4148
- );
4149
- if (dirty[0] & /*resultFeedback*/
4150
- 128)
4151
- promptresult_changes.resultFeedback = /*resultFeedback*/
4152
- ctx2[7];
4153
- promptresult.$set(promptresult_changes);
4154
- },
4155
- i(local) {
4156
- if (current)
4157
- return;
4158
- transition_in(promptresult.$$.fragment, local);
4159
- current = true;
4160
- },
4161
- o(local) {
4162
- transition_out(promptresult.$$.fragment, local);
4163
- current = false;
4164
- },
4165
- d(detaching) {
4166
- destroy_component(promptresult, detaching);
4167
- }
4168
- };
4169
- }
4170
- function create_if_block6(ctx) {
4438
+ // src/lib/components/common/CommonModal.svelte
4439
+ function create_fragment6(ctx) {
4171
4440
  let div2;
4172
4441
  let div0;
4173
4442
  let div0_class_value;
4174
4443
  let t2;
4175
4444
  let div1;
4176
- let div1_class_value;
4177
- let div2_class_value;
4445
+ let div2_aria_hidden_value;
4178
4446
  let current;
4179
- let each_value = ensure_array_like(Object.values(
4180
- /*options*/
4181
- ctx[12]
4182
- ));
4183
- let each_blocks = [];
4184
- for (let i = 0; i < each_value.length; i += 1) {
4185
- each_blocks[i] = create_each_block(get_each_context(ctx, each_value, i));
4186
- }
4187
- const out = (i) => transition_out(each_blocks[i], 1, 1, () => {
4188
- each_blocks[i] = null;
4189
- });
4447
+ let mounted;
4448
+ let dispose;
4449
+ const default_slot_template = (
4450
+ /*#slots*/
4451
+ ctx[6].default
4452
+ );
4453
+ const default_slot = create_slot(
4454
+ default_slot_template,
4455
+ ctx,
4456
+ /*$$scope*/
4457
+ ctx[5],
4458
+ null
4459
+ );
4190
4460
  return {
4191
4461
  c() {
4192
4462
  div2 = element("div");
4193
4463
  div0 = element("div");
4194
4464
  t2 = space();
4195
4465
  div1 = element("div");
4196
- for (let i = 0; i < each_blocks.length; i += 1) {
4197
- each_blocks[i].c();
4198
- }
4199
- attr(div0, "class", div0_class_value = /*isDataSaving*/
4200
- ctx[0] ? "absolute inset-0 bg-transparent z-50" : "");
4201
- attr(div1, "class", div1_class_value = null_to_empty(
4202
- /*optionHasMedia*/
4203
- ctx[13] ? "responsive-grid" : ""
4204
- ) + " svelte-1sgrg21");
4205
- attr(div2, "class", div2_class_value = /*optionHasMedia*/
4206
- ctx[13] ? "w-full" : "relative");
4466
+ if (default_slot)
4467
+ default_slot.c();
4468
+ attr(div0, "role", "button");
4469
+ attr(div0, "aria-label", "Close modal");
4470
+ attr(div0, "tabindex", "-1");
4471
+ attr(div0, "aria-hidden", "true");
4472
+ attr(div0, "class", div0_class_value = "blanket-overlay h-full " + /*modalClass*/
4473
+ ctx[0]);
4474
+ attr(div1, "class", "z-10");
4475
+ attr(div2, "role", "dialog");
4476
+ attr(div2, "aria-modal", "true");
4477
+ attr(div2, "tabindex", "-1");
4478
+ attr(div2, "class", "fixed inset-0 z-50 focus:outline-transparent");
4479
+ attr(
4480
+ div2,
4481
+ "aria-label",
4482
+ /*modalAriaLabel*/
4483
+ ctx[1]
4484
+ );
4485
+ attr(div2, "aria-hidden", div2_aria_hidden_value = !/*isModalOpen*/
4486
+ ctx[2]);
4207
4487
  },
4208
4488
  m(target, anchor) {
4209
4489
  insert(target, div2, anchor);
4210
4490
  append(div2, div0);
4211
4491
  append(div2, t2);
4212
4492
  append(div2, div1);
4213
- for (let i = 0; i < each_blocks.length; i += 1) {
4214
- if (each_blocks[i]) {
4215
- each_blocks[i].m(div1, null);
4216
- }
4493
+ if (default_slot) {
4494
+ default_slot.m(div1, null);
4217
4495
  }
4218
4496
  current = true;
4219
- },
4220
- p(ctx2, dirty) {
4221
- if (!current || dirty[0] & /*isDataSaving*/
4222
- 1 && div0_class_value !== (div0_class_value = /*isDataSaving*/
4223
- ctx2[0] ? "absolute inset-0 bg-transparent z-50" : "")) {
4224
- attr(div0, "class", div0_class_value);
4225
- }
4226
- if (dirty[0] & /*correctAnswersLength, selectedOptions, options, isFinished, isPreviewModeInteractive, isPreviewMode, correctAnswerIds, optionHasMedia, handleOptionClick*/
4227
- 77950) {
4228
- each_value = ensure_array_like(Object.values(
4229
- /*options*/
4230
- ctx2[12]
4497
+ if (!mounted) {
4498
+ dispose = [
4499
+ listen(
4500
+ div0,
4501
+ "click",
4502
+ /*clickModalBackground*/
4503
+ ctx[3]
4504
+ ),
4505
+ listen(div0, "keypress", keypress_handler)
4506
+ ];
4507
+ mounted = true;
4508
+ }
4509
+ },
4510
+ p(ctx2, [dirty]) {
4511
+ if (!current || dirty & /*modalClass*/
4512
+ 1 && div0_class_value !== (div0_class_value = "blanket-overlay h-full " + /*modalClass*/
4513
+ ctx2[0])) {
4514
+ attr(div0, "class", div0_class_value);
4515
+ }
4516
+ if (default_slot) {
4517
+ if (default_slot.p && (!current || dirty & /*$$scope*/
4518
+ 32)) {
4519
+ update_slot_base(
4520
+ default_slot,
4521
+ default_slot_template,
4522
+ ctx2,
4523
+ /*$$scope*/
4524
+ ctx2[5],
4525
+ !current ? get_all_dirty_from_scope(
4526
+ /*$$scope*/
4527
+ ctx2[5]
4528
+ ) : get_slot_changes(
4529
+ default_slot_template,
4530
+ /*$$scope*/
4531
+ ctx2[5],
4532
+ dirty,
4533
+ null
4534
+ ),
4535
+ null
4536
+ );
4537
+ }
4538
+ }
4539
+ if (!current || dirty & /*modalAriaLabel*/
4540
+ 2) {
4541
+ attr(
4542
+ div2,
4543
+ "aria-label",
4544
+ /*modalAriaLabel*/
4545
+ ctx2[1]
4546
+ );
4547
+ }
4548
+ if (!current || dirty & /*isModalOpen*/
4549
+ 4 && div2_aria_hidden_value !== (div2_aria_hidden_value = !/*isModalOpen*/
4550
+ ctx2[2])) {
4551
+ attr(div2, "aria-hidden", div2_aria_hidden_value);
4552
+ }
4553
+ },
4554
+ i(local) {
4555
+ if (current)
4556
+ return;
4557
+ transition_in(default_slot, local);
4558
+ current = true;
4559
+ },
4560
+ o(local) {
4561
+ transition_out(default_slot, local);
4562
+ current = false;
4563
+ },
4564
+ d(detaching) {
4565
+ if (detaching) {
4566
+ detach(div2);
4567
+ }
4568
+ if (default_slot)
4569
+ default_slot.d(detaching);
4570
+ mounted = false;
4571
+ run_all(dispose);
4572
+ }
4573
+ };
4574
+ }
4575
+ var keypress_handler = () => {
4576
+ return false;
4577
+ };
4578
+ function instance6($$self, $$props, $$invalidate) {
4579
+ let { $$slots: slots = {}, $$scope } = $$props;
4580
+ let { modalData = { modalAriaLabel: "", isModalOpen: false } } = $$props;
4581
+ let { modalClass = "" } = $$props;
4582
+ const dispatch2 = createEventDispatcher();
4583
+ let modalAriaLabel = "";
4584
+ let isModalOpen = false;
4585
+ const clickModalBackground = () => {
4586
+ $$invalidate(4, modalData = { isModalOpen: false, modalAriaLabel: "" });
4587
+ dispatch2("updateModalSettings", modalData);
4588
+ };
4589
+ $$self.$$set = ($$props2) => {
4590
+ if ("modalData" in $$props2)
4591
+ $$invalidate(4, modalData = $$props2.modalData);
4592
+ if ("modalClass" in $$props2)
4593
+ $$invalidate(0, modalClass = $$props2.modalClass);
4594
+ if ("$$scope" in $$props2)
4595
+ $$invalidate(5, $$scope = $$props2.$$scope);
4596
+ };
4597
+ $$self.$$.update = () => {
4598
+ if ($$self.$$.dirty & /*modalData*/
4599
+ 16) {
4600
+ $:
4601
+ if (modalData) {
4602
+ const { modalAriaLabel: storeModalAriaLabel, isModalOpen: storeIsmodalOpen } = modalData;
4603
+ $$invalidate(1, modalAriaLabel = storeModalAriaLabel);
4604
+ $$invalidate(2, isModalOpen = storeIsmodalOpen);
4605
+ }
4606
+ }
4607
+ };
4608
+ return [
4609
+ modalClass,
4610
+ modalAriaLabel,
4611
+ isModalOpen,
4612
+ clickModalBackground,
4613
+ modalData,
4614
+ $$scope,
4615
+ slots
4616
+ ];
4617
+ }
4618
+ var CommonModal = class extends SvelteComponent {
4619
+ constructor(options) {
4620
+ super();
4621
+ init(this, options, instance6, create_fragment6, safe_not_equal, { modalData: 4, modalClass: 0 });
4622
+ }
4623
+ get modalData() {
4624
+ return this.$$.ctx[4];
4625
+ }
4626
+ set modalData(modalData) {
4627
+ this.$$set({ modalData });
4628
+ flush();
4629
+ }
4630
+ get modalClass() {
4631
+ return this.$$.ctx[0];
4632
+ }
4633
+ set modalClass(modalClass) {
4634
+ this.$$set({ modalClass });
4635
+ flush();
4636
+ }
4637
+ };
4638
+ customElements.define("common-modal", create_custom_element(CommonModal, { "modalData": {}, "modalClass": {} }, ["default"], [], true));
4639
+ var CommonModal_default = CommonModal;
4640
+
4641
+ // node_modules/svelte/src/runtime/transition/index.js
4642
+ function fade(node, { delay = 0, duration = 400, easing = identity } = {}) {
4643
+ const o2 = +getComputedStyle(node).opacity;
4644
+ return {
4645
+ delay,
4646
+ duration,
4647
+ easing,
4648
+ css: (t2) => `opacity: ${t2 * o2}`
4649
+ };
4650
+ }
4651
+
4652
+ // src/lib/components/common/CommonTooltip.svelte
4653
+ var get_trigger_slot_changes = (dirty) => ({});
4654
+ var get_trigger_slot_context = (ctx) => ({});
4655
+ function create_if_block6(ctx) {
4656
+ let div1;
4657
+ let div0;
4658
+ let t2;
4659
+ let span;
4660
+ let span_class_value;
4661
+ let div0_aria_hidden_value;
4662
+ let div0_class_value;
4663
+ let div1_class_value;
4664
+ let div1_transition;
4665
+ let current;
4666
+ const default_slot_template = (
4667
+ /*#slots*/
4668
+ ctx[19].default
4669
+ );
4670
+ const default_slot = create_slot(
4671
+ default_slot_template,
4672
+ ctx,
4673
+ /*$$scope*/
4674
+ ctx[18],
4675
+ null
4676
+ );
4677
+ const default_slot_or_fallback = default_slot || fallback_block(ctx);
4678
+ return {
4679
+ c() {
4680
+ div1 = element("div");
4681
+ div0 = element("div");
4682
+ if (default_slot_or_fallback)
4683
+ default_slot_or_fallback.c();
4684
+ t2 = space();
4685
+ span = element("span");
4686
+ attr(span, "aria-hidden", "true");
4687
+ attr(span, "class", span_class_value = "tooltip-arrow absolute w-2 h-2 bg-gray-900 " + /*arrowPosClass*/
4688
+ ctx[3]);
4689
+ attr(div0, "role", "tooltip");
4690
+ attr(div0, "aria-hidden", div0_aria_hidden_value = !/*isOpen*/
4691
+ ctx[5]);
4692
+ attr(div0, "class", div0_class_value = "rounded-md bg-gray-900 text-white p-3 font-normal text-sm leading-[150%] max-w-[300px] break-words " + /*tooltipClass*/
4693
+ ctx[1]);
4694
+ attr(div1, "class", div1_class_value = "absolute z-50 pointer-events-none select-none " + /*containerPosClass*/
4695
+ ctx[4]);
4696
+ },
4697
+ m(target, anchor) {
4698
+ insert(target, div1, anchor);
4699
+ append(div1, div0);
4700
+ if (default_slot_or_fallback) {
4701
+ default_slot_or_fallback.m(div0, null);
4702
+ }
4703
+ append(div0, t2);
4704
+ append(div0, span);
4705
+ ctx[20](div0);
4706
+ current = true;
4707
+ },
4708
+ p(ctx2, dirty) {
4709
+ if (default_slot) {
4710
+ if (default_slot.p && (!current || dirty & /*$$scope*/
4711
+ 262144)) {
4712
+ update_slot_base(
4713
+ default_slot,
4714
+ default_slot_template,
4715
+ ctx2,
4716
+ /*$$scope*/
4717
+ ctx2[18],
4718
+ !current ? get_all_dirty_from_scope(
4719
+ /*$$scope*/
4720
+ ctx2[18]
4721
+ ) : get_slot_changes(
4722
+ default_slot_template,
4723
+ /*$$scope*/
4724
+ ctx2[18],
4725
+ dirty,
4726
+ null
4727
+ ),
4728
+ null
4729
+ );
4730
+ }
4731
+ } else {
4732
+ if (default_slot_or_fallback && default_slot_or_fallback.p && (!current || dirty & /*text*/
4733
+ 1)) {
4734
+ default_slot_or_fallback.p(ctx2, !current ? -1 : dirty);
4735
+ }
4736
+ }
4737
+ if (!current || dirty & /*arrowPosClass*/
4738
+ 8 && span_class_value !== (span_class_value = "tooltip-arrow absolute w-2 h-2 bg-gray-900 " + /*arrowPosClass*/
4739
+ ctx2[3])) {
4740
+ attr(span, "class", span_class_value);
4741
+ }
4742
+ if (!current || dirty & /*isOpen*/
4743
+ 32 && div0_aria_hidden_value !== (div0_aria_hidden_value = !/*isOpen*/
4744
+ ctx2[5])) {
4745
+ attr(div0, "aria-hidden", div0_aria_hidden_value);
4746
+ }
4747
+ if (!current || dirty & /*tooltipClass*/
4748
+ 2 && div0_class_value !== (div0_class_value = "rounded-md bg-gray-900 text-white p-3 font-normal text-sm leading-[150%] max-w-[300px] break-words " + /*tooltipClass*/
4749
+ ctx2[1])) {
4750
+ attr(div0, "class", div0_class_value);
4751
+ }
4752
+ if (!current || dirty & /*containerPosClass*/
4753
+ 16 && div1_class_value !== (div1_class_value = "absolute z-50 pointer-events-none select-none " + /*containerPosClass*/
4754
+ ctx2[4])) {
4755
+ attr(div1, "class", div1_class_value);
4756
+ }
4757
+ },
4758
+ i(local) {
4759
+ if (current)
4760
+ return;
4761
+ transition_in(default_slot_or_fallback, local);
4762
+ if (local) {
4763
+ add_render_callback(() => {
4764
+ if (!current)
4765
+ return;
4766
+ if (!div1_transition)
4767
+ div1_transition = create_bidirectional_transition(div1, fade, { duration: 40 }, true);
4768
+ div1_transition.run(1);
4769
+ });
4770
+ }
4771
+ current = true;
4772
+ },
4773
+ o(local) {
4774
+ transition_out(default_slot_or_fallback, local);
4775
+ if (local) {
4776
+ if (!div1_transition)
4777
+ div1_transition = create_bidirectional_transition(div1, fade, { duration: 40 }, false);
4778
+ div1_transition.run(0);
4779
+ }
4780
+ current = false;
4781
+ },
4782
+ d(detaching) {
4783
+ if (detaching) {
4784
+ detach(div1);
4785
+ }
4786
+ if (default_slot_or_fallback)
4787
+ default_slot_or_fallback.d(detaching);
4788
+ ctx[20](null);
4789
+ if (detaching && div1_transition)
4790
+ div1_transition.end();
4791
+ }
4792
+ };
4793
+ }
4794
+ function fallback_block(ctx) {
4795
+ let t2;
4796
+ return {
4797
+ c() {
4798
+ t2 = text(
4799
+ /*text*/
4800
+ ctx[0]
4801
+ );
4802
+ },
4803
+ m(target, anchor) {
4804
+ insert(target, t2, anchor);
4805
+ },
4806
+ p(ctx2, dirty) {
4807
+ if (dirty & /*text*/
4808
+ 1)
4809
+ set_data(
4810
+ t2,
4811
+ /*text*/
4812
+ ctx2[0]
4813
+ );
4814
+ },
4815
+ d(detaching) {
4816
+ if (detaching) {
4817
+ detach(t2);
4818
+ }
4819
+ }
4820
+ };
4821
+ }
4822
+ function create_fragment7(ctx) {
4823
+ let div;
4824
+ let t2;
4825
+ let current;
4826
+ let mounted;
4827
+ let dispose;
4828
+ const trigger_slot_template = (
4829
+ /*#slots*/
4830
+ ctx[19].trigger
4831
+ );
4832
+ const trigger_slot = create_slot(
4833
+ trigger_slot_template,
4834
+ ctx,
4835
+ /*$$scope*/
4836
+ ctx[18],
4837
+ get_trigger_slot_context
4838
+ );
4839
+ let if_block = (
4840
+ /*isOpen*/
4841
+ ctx[5] && create_if_block6(ctx)
4842
+ );
4843
+ return {
4844
+ c() {
4845
+ div = element("div");
4846
+ if (trigger_slot)
4847
+ trigger_slot.c();
4848
+ t2 = space();
4849
+ if (if_block)
4850
+ if_block.c();
4851
+ attr(div, "class", "relative inline-block");
4852
+ },
4853
+ m(target, anchor) {
4854
+ insert(target, div, anchor);
4855
+ if (trigger_slot) {
4856
+ trigger_slot.m(div, null);
4857
+ }
4858
+ append(div, t2);
4859
+ if (if_block)
4860
+ if_block.m(div, null);
4861
+ current = true;
4862
+ if (!mounted) {
4863
+ dispose = [
4864
+ listen(
4865
+ div,
4866
+ "mouseenter",
4867
+ /*scheduleShow*/
4868
+ ctx[6]
4869
+ ),
4870
+ listen(
4871
+ div,
4872
+ "mouseleave",
4873
+ /*scheduleHide*/
4874
+ ctx[7]
4875
+ ),
4876
+ listen(
4877
+ div,
4878
+ "focusin",
4879
+ /*scheduleShow*/
4880
+ ctx[6]
4881
+ ),
4882
+ listen(
4883
+ div,
4884
+ "focusout",
4885
+ /*scheduleHide*/
4886
+ ctx[7]
4887
+ ),
4888
+ listen(
4889
+ div,
4890
+ "keydown",
4891
+ /*keydown_handler*/
4892
+ ctx[21]
4893
+ )
4894
+ ];
4895
+ mounted = true;
4896
+ }
4897
+ },
4898
+ p(ctx2, [dirty]) {
4899
+ if (trigger_slot) {
4900
+ if (trigger_slot.p && (!current || dirty & /*$$scope*/
4901
+ 262144)) {
4902
+ update_slot_base(
4903
+ trigger_slot,
4904
+ trigger_slot_template,
4905
+ ctx2,
4906
+ /*$$scope*/
4907
+ ctx2[18],
4908
+ !current ? get_all_dirty_from_scope(
4909
+ /*$$scope*/
4910
+ ctx2[18]
4911
+ ) : get_slot_changes(
4912
+ trigger_slot_template,
4913
+ /*$$scope*/
4914
+ ctx2[18],
4915
+ dirty,
4916
+ get_trigger_slot_changes
4917
+ ),
4918
+ get_trigger_slot_context
4919
+ );
4920
+ }
4921
+ }
4922
+ if (
4923
+ /*isOpen*/
4924
+ ctx2[5]
4925
+ ) {
4926
+ if (if_block) {
4927
+ if_block.p(ctx2, dirty);
4928
+ if (dirty & /*isOpen*/
4929
+ 32) {
4930
+ transition_in(if_block, 1);
4931
+ }
4932
+ } else {
4933
+ if_block = create_if_block6(ctx2);
4934
+ if_block.c();
4935
+ transition_in(if_block, 1);
4936
+ if_block.m(div, null);
4937
+ }
4938
+ } else if (if_block) {
4939
+ group_outros();
4940
+ transition_out(if_block, 1, 1, () => {
4941
+ if_block = null;
4942
+ });
4943
+ check_outros();
4944
+ }
4945
+ },
4946
+ i(local) {
4947
+ if (current)
4948
+ return;
4949
+ transition_in(trigger_slot, local);
4950
+ transition_in(if_block);
4951
+ current = true;
4952
+ },
4953
+ o(local) {
4954
+ transition_out(trigger_slot, local);
4955
+ transition_out(if_block);
4956
+ current = false;
4957
+ },
4958
+ d(detaching) {
4959
+ if (detaching) {
4960
+ detach(div);
4961
+ }
4962
+ if (trigger_slot)
4963
+ trigger_slot.d(detaching);
4964
+ if (if_block)
4965
+ if_block.d();
4966
+ mounted = false;
4967
+ run_all(dispose);
4968
+ }
4969
+ };
4970
+ }
4971
+ function instance7($$self, $$props, $$invalidate) {
4972
+ let isOpen;
4973
+ let containerPosClass;
4974
+ let arrowPosClass;
4975
+ let { $$slots: slots = {}, $$scope } = $$props;
4976
+ let { text: text2 } = $$props;
4977
+ let { placement = "top" } = $$props;
4978
+ let { open = void 0 } = $$props;
4979
+ let { disabled = false } = $$props;
4980
+ let { trigger = "hover" } = $$props;
4981
+ let { tooltipClass = "" } = $$props;
4982
+ let { showDelay = 80 } = $$props;
4983
+ let { hideDelay = 120 } = $$props;
4984
+ let internalOpen = false;
4985
+ let showTimer = null;
4986
+ let hideTimer = null;
4987
+ const isControlled = open !== void 0;
4988
+ const clearTimers = () => {
4989
+ if (showTimer) {
4990
+ clearTimeout(showTimer);
4991
+ showTimer = null;
4992
+ }
4993
+ if (hideTimer) {
4994
+ clearTimeout(hideTimer);
4995
+ hideTimer = null;
4996
+ }
4997
+ };
4998
+ const scheduleShow = () => {
4999
+ if (trigger !== "hover" || isControlled)
5000
+ return;
5001
+ clearTimers();
5002
+ showTimer = setTimeout(() => $$invalidate(17, internalOpen = true), showDelay);
5003
+ };
5004
+ const scheduleHide = () => {
5005
+ if (trigger !== "hover" || isControlled)
5006
+ return;
5007
+ clearTimers();
5008
+ hideTimer = setTimeout(() => $$invalidate(17, internalOpen = false), hideDelay);
5009
+ };
5010
+ const immediateHide = () => {
5011
+ if (isControlled)
5012
+ return;
5013
+ clearTimers();
5014
+ $$invalidate(17, internalOpen = false);
5015
+ };
5016
+ const show = () => {
5017
+ if (!isControlled) {
5018
+ clearTimers();
5019
+ $$invalidate(17, internalOpen = true);
5020
+ }
5021
+ };
5022
+ const hide = () => {
5023
+ if (!isControlled) {
5024
+ immediateHide();
5025
+ }
5026
+ };
5027
+ let bubbleEl = null;
5028
+ const POSITION_CLASSES = {
5029
+ container: {
5030
+ top: "bottom-full left-1/2 -translate-x-1/2 mb-[9.5px]",
5031
+ bottom: "top-full left-1/2 -translate-x-1/2 mt-[9.5px]",
5032
+ left: "right-full top-1/2 -translate-y-1/2 mr-[9.5px]",
5033
+ right: "left-full top-1/2 -translate-y-1/2 ml-[9.5px]"
5034
+ },
5035
+ arrow: {
5036
+ top: "top-full left-1/2 -translate-x-1/2 -mt-1 rotate-45",
5037
+ bottom: "bottom-full left-1/2 -translate-x-1/2 -mb-1 rotate-45",
5038
+ left: "left-full top-1/2 -translate-y-1/2 -ml-1 rotate-45",
5039
+ right: "right-full top-1/2 -translate-y-1/2 -mr-1 rotate-45"
5040
+ }
5041
+ };
5042
+ onMount(() => {
5043
+ return () => clearTimers();
5044
+ });
5045
+ function div0_binding($$value) {
5046
+ binding_callbacks[$$value ? "unshift" : "push"](() => {
5047
+ bubbleEl = $$value;
5048
+ $$invalidate(2, bubbleEl);
5049
+ });
5050
+ }
5051
+ const keydown_handler2 = (e2) => {
5052
+ if (e2.key === "Escape")
5053
+ immediateHide();
5054
+ };
5055
+ $$self.$$set = ($$props2) => {
5056
+ if ("text" in $$props2)
5057
+ $$invalidate(0, text2 = $$props2.text);
5058
+ if ("placement" in $$props2)
5059
+ $$invalidate(9, placement = $$props2.placement);
5060
+ if ("open" in $$props2)
5061
+ $$invalidate(10, open = $$props2.open);
5062
+ if ("disabled" in $$props2)
5063
+ $$invalidate(11, disabled = $$props2.disabled);
5064
+ if ("trigger" in $$props2)
5065
+ $$invalidate(12, trigger = $$props2.trigger);
5066
+ if ("tooltipClass" in $$props2)
5067
+ $$invalidate(1, tooltipClass = $$props2.tooltipClass);
5068
+ if ("showDelay" in $$props2)
5069
+ $$invalidate(13, showDelay = $$props2.showDelay);
5070
+ if ("hideDelay" in $$props2)
5071
+ $$invalidate(14, hideDelay = $$props2.hideDelay);
5072
+ if ("$$scope" in $$props2)
5073
+ $$invalidate(18, $$scope = $$props2.$$scope);
5074
+ };
5075
+ $$self.$$.update = () => {
5076
+ if ($$self.$$.dirty & /*disabled, open, internalOpen*/
5077
+ 134144) {
5078
+ $:
5079
+ $$invalidate(5, isOpen = !disabled && (isControlled ? open : internalOpen));
5080
+ }
5081
+ if ($$self.$$.dirty & /*placement*/
5082
+ 512) {
5083
+ $:
5084
+ $$invalidate(4, containerPosClass = POSITION_CLASSES.container[placement]);
5085
+ }
5086
+ if ($$self.$$.dirty & /*placement*/
5087
+ 512) {
5088
+ $:
5089
+ $$invalidate(3, arrowPosClass = POSITION_CLASSES.arrow[placement]);
5090
+ }
5091
+ };
5092
+ return [
5093
+ text2,
5094
+ tooltipClass,
5095
+ bubbleEl,
5096
+ arrowPosClass,
5097
+ containerPosClass,
5098
+ isOpen,
5099
+ scheduleShow,
5100
+ scheduleHide,
5101
+ immediateHide,
5102
+ placement,
5103
+ open,
5104
+ disabled,
5105
+ trigger,
5106
+ showDelay,
5107
+ hideDelay,
5108
+ show,
5109
+ hide,
5110
+ internalOpen,
5111
+ $$scope,
5112
+ slots,
5113
+ div0_binding,
5114
+ keydown_handler2
5115
+ ];
5116
+ }
5117
+ var CommonTooltip = class extends SvelteComponent {
5118
+ constructor(options) {
5119
+ super();
5120
+ init(this, options, instance7, create_fragment7, safe_not_equal, {
5121
+ text: 0,
5122
+ placement: 9,
5123
+ open: 10,
5124
+ disabled: 11,
5125
+ trigger: 12,
5126
+ tooltipClass: 1,
5127
+ showDelay: 13,
5128
+ hideDelay: 14,
5129
+ show: 15,
5130
+ hide: 16
5131
+ });
5132
+ }
5133
+ get text() {
5134
+ return this.$$.ctx[0];
5135
+ }
5136
+ set text(text2) {
5137
+ this.$$set({ text: text2 });
5138
+ flush();
5139
+ }
5140
+ get placement() {
5141
+ return this.$$.ctx[9];
5142
+ }
5143
+ set placement(placement) {
5144
+ this.$$set({ placement });
5145
+ flush();
5146
+ }
5147
+ get open() {
5148
+ return this.$$.ctx[10];
5149
+ }
5150
+ set open(open) {
5151
+ this.$$set({ open });
5152
+ flush();
5153
+ }
5154
+ get disabled() {
5155
+ return this.$$.ctx[11];
5156
+ }
5157
+ set disabled(disabled) {
5158
+ this.$$set({ disabled });
5159
+ flush();
5160
+ }
5161
+ get trigger() {
5162
+ return this.$$.ctx[12];
5163
+ }
5164
+ set trigger(trigger) {
5165
+ this.$$set({ trigger });
5166
+ flush();
5167
+ }
5168
+ get tooltipClass() {
5169
+ return this.$$.ctx[1];
5170
+ }
5171
+ set tooltipClass(tooltipClass) {
5172
+ this.$$set({ tooltipClass });
5173
+ flush();
5174
+ }
5175
+ get showDelay() {
5176
+ return this.$$.ctx[13];
5177
+ }
5178
+ set showDelay(showDelay) {
5179
+ this.$$set({ showDelay });
5180
+ flush();
5181
+ }
5182
+ get hideDelay() {
5183
+ return this.$$.ctx[14];
5184
+ }
5185
+ set hideDelay(hideDelay) {
5186
+ this.$$set({ hideDelay });
5187
+ flush();
5188
+ }
5189
+ get show() {
5190
+ return this.$$.ctx[15];
5191
+ }
5192
+ get hide() {
5193
+ return this.$$.ctx[16];
5194
+ }
5195
+ };
5196
+ create_custom_element(CommonTooltip, { "text": {}, "placement": {}, "open": {}, "disabled": { "type": "Boolean" }, "trigger": {}, "tooltipClass": {}, "showDelay": {}, "hideDelay": {} }, ["trigger", "default"], ["show", "hide"], true);
5197
+ var CommonTooltip_default = CommonTooltip;
5198
+
5199
+ // src/lib/components/prompt/mcq/PromptMCQImageModal.svelte
5200
+ var { window: window_12 } = globals;
5201
+ function create_if_block7(ctx) {
5202
+ let commonmodal;
5203
+ let current;
5204
+ commonmodal = new CommonModal_default({
5205
+ props: {
5206
+ modalData: (
5207
+ /*imageModalData*/
5208
+ ctx[10]
5209
+ ),
5210
+ modalClass: "bg-charcoal/80 backdrop-blur-md pointer-events-none",
5211
+ $$slots: { default: [create_default_slot] },
5212
+ $$scope: { ctx }
5213
+ }
5214
+ });
5215
+ commonmodal.$on(
5216
+ "updateModalSettings",
5217
+ /*updateModalSettings*/
5218
+ ctx[16]
5219
+ );
5220
+ return {
5221
+ c() {
5222
+ create_component(commonmodal.$$.fragment);
5223
+ },
5224
+ m(target, anchor) {
5225
+ mount_component(commonmodal, target, anchor);
5226
+ current = true;
5227
+ },
5228
+ p(ctx2, dirty) {
5229
+ const commonmodal_changes = {};
5230
+ if (dirty & /*imageModalData*/
5231
+ 1024)
5232
+ commonmodal_changes.modalData = /*imageModalData*/
5233
+ ctx2[10];
5234
+ if (dirty & /*$$scope, containerMaxWidth, currentImageUrl, currentImageAlt, imageElement, isTextTruncated, fullAnswerText, textElement, currentOption, navigationAnnouncement, imageViewerFocusEl*/
5235
+ 268438526) {
5236
+ commonmodal_changes.$$scope = { dirty, ctx: ctx2 };
5237
+ }
5238
+ commonmodal.$set(commonmodal_changes);
5239
+ },
5240
+ i(local) {
5241
+ if (current)
5242
+ return;
5243
+ transition_in(commonmodal.$$.fragment, local);
5244
+ current = true;
5245
+ },
5246
+ o(local) {
5247
+ transition_out(commonmodal.$$.fragment, local);
5248
+ current = false;
5249
+ },
5250
+ d(detaching) {
5251
+ destroy_component(commonmodal, detaching);
5252
+ }
5253
+ };
5254
+ }
5255
+ function create_trigger_slot(ctx) {
5256
+ let div;
5257
+ let commonstringtohtml;
5258
+ let div_tabindex_value;
5259
+ let div_class_value;
5260
+ let current;
5261
+ commonstringtohtml = new CommonStringToHtml_default({
5262
+ props: {
5263
+ htmlString: (
5264
+ /*currentOption*/
5265
+ ctx[5]?.answer
5266
+ )
5267
+ }
5268
+ });
5269
+ return {
5270
+ c() {
5271
+ div = element("div");
5272
+ create_component(commonstringtohtml.$$.fragment);
5273
+ attr(div, "slot", "trigger");
5274
+ attr(div, "tabindex", div_tabindex_value = /*isTextTruncated*/
5275
+ ctx[8] ? 0 : -1);
5276
+ attr(div, "class", div_class_value = "break-all text-sm md:text-lg font-semibold text-primary-emphasis " + /*isTextTruncated*/
5277
+ (ctx[8] ? "hover:text-charcoal hover:underline hover:decoration-2 hover:underline-offset-[25%] focus-visible:bg-yellow-900 focus-visible:outline-none focus-visible:underline focus-visible:decoration-2 focus-visible:underline-offset-[25%] focus-visible:text-charcoal" : "") + " select-none line-clamp-1");
5278
+ },
5279
+ m(target, anchor) {
5280
+ insert(target, div, anchor);
5281
+ mount_component(commonstringtohtml, div, null);
5282
+ ctx[21](div);
5283
+ current = true;
5284
+ },
5285
+ p(ctx2, dirty) {
5286
+ const commonstringtohtml_changes = {};
5287
+ if (dirty & /*currentOption*/
5288
+ 32)
5289
+ commonstringtohtml_changes.htmlString = /*currentOption*/
5290
+ ctx2[5]?.answer;
5291
+ commonstringtohtml.$set(commonstringtohtml_changes);
5292
+ if (!current || dirty & /*isTextTruncated*/
5293
+ 256 && div_tabindex_value !== (div_tabindex_value = /*isTextTruncated*/
5294
+ ctx2[8] ? 0 : -1)) {
5295
+ attr(div, "tabindex", div_tabindex_value);
5296
+ }
5297
+ if (!current || dirty & /*isTextTruncated*/
5298
+ 256 && div_class_value !== (div_class_value = "break-all text-sm md:text-lg font-semibold text-primary-emphasis " + /*isTextTruncated*/
5299
+ (ctx2[8] ? "hover:text-charcoal hover:underline hover:decoration-2 hover:underline-offset-[25%] focus-visible:bg-yellow-900 focus-visible:outline-none focus-visible:underline focus-visible:decoration-2 focus-visible:underline-offset-[25%] focus-visible:text-charcoal" : "") + " select-none line-clamp-1")) {
5300
+ attr(div, "class", div_class_value);
5301
+ }
5302
+ },
5303
+ i(local) {
5304
+ if (current)
5305
+ return;
5306
+ transition_in(commonstringtohtml.$$.fragment, local);
5307
+ current = true;
5308
+ },
5309
+ o(local) {
5310
+ transition_out(commonstringtohtml.$$.fragment, local);
5311
+ current = false;
5312
+ },
5313
+ d(detaching) {
5314
+ if (detaching) {
5315
+ detach(div);
5316
+ }
5317
+ destroy_component(commonstringtohtml);
5318
+ ctx[21](null);
5319
+ }
5320
+ };
5321
+ }
5322
+ function create_default_slot(ctx) {
5323
+ let div0;
5324
+ let t0;
5325
+ let div1;
5326
+ let t1;
5327
+ let t2;
5328
+ let div8;
5329
+ let div7;
5330
+ let div5;
5331
+ let button0;
5332
+ let span0;
5333
+ let svgloader0;
5334
+ let t3;
5335
+ let div4;
5336
+ let div2;
5337
+ let commontooltip;
5338
+ let t4;
5339
+ let button1;
5340
+ let span1;
5341
+ let svgloader1;
5342
+ let t5;
5343
+ let div3;
5344
+ let img;
5345
+ let img_src_value;
5346
+ let t6;
5347
+ let button2;
5348
+ let span2;
5349
+ let svgloader2;
5350
+ let t7;
5351
+ let div6;
5352
+ let button3;
5353
+ let span3;
5354
+ let svgloader3;
5355
+ let t8;
5356
+ let button4;
5357
+ let span4;
5358
+ let svgloader4;
5359
+ let current;
5360
+ let mounted;
5361
+ let dispose;
5362
+ svgloader0 = new SvgLoader_default({
5363
+ props: {
5364
+ svgName: "smallChevronLeft",
5365
+ className: "text-primary-emphasis",
5366
+ width: 12,
5367
+ height: 12
5368
+ }
5369
+ });
5370
+ commontooltip = new CommonTooltip_default({
5371
+ props: {
5372
+ placement: "bottom",
5373
+ trigger: "hover",
5374
+ disabled: !/*isTextTruncated*/
5375
+ ctx[8],
5376
+ text: (
5377
+ /*fullAnswerText*/
5378
+ ctx[3]
5379
+ ),
5380
+ $$slots: { trigger: [create_trigger_slot] },
5381
+ $$scope: { ctx }
5382
+ }
5383
+ });
5384
+ svgloader1 = new SvgLoader_default({
5385
+ props: {
5386
+ svgName: "crossIcon",
5387
+ className: "w-[8.77px] h-[8.77px] md:w-[13.5px] md:h-[13.5px]"
5388
+ }
5389
+ });
5390
+ svgloader2 = new SvgLoader_default({
5391
+ props: {
5392
+ svgName: "smallChevronRight",
5393
+ className: "text-primary-emphasis",
5394
+ width: 12,
5395
+ height: 12
5396
+ }
5397
+ });
5398
+ svgloader3 = new SvgLoader_default({
5399
+ props: {
5400
+ svgName: "smallChevronLeft",
5401
+ className: "text-primary-emphasis",
5402
+ height: 7.43
5403
+ }
5404
+ });
5405
+ svgloader4 = new SvgLoader_default({
5406
+ props: {
5407
+ svgName: "smallChevronRight",
5408
+ className: "text-primary-emphasis",
5409
+ height: 7.43
5410
+ }
5411
+ });
5412
+ return {
5413
+ c() {
5414
+ div0 = element("div");
5415
+ t0 = space();
5416
+ div1 = element("div");
5417
+ t1 = text(
5418
+ /*navigationAnnouncement*/
5419
+ ctx[9]
5420
+ );
5421
+ t2 = space();
5422
+ div8 = element("div");
5423
+ div7 = element("div");
5424
+ div5 = element("div");
5425
+ button0 = element("button");
5426
+ span0 = element("span");
5427
+ create_component(svgloader0.$$.fragment);
5428
+ t3 = space();
5429
+ div4 = element("div");
5430
+ div2 = element("div");
5431
+ create_component(commontooltip.$$.fragment);
5432
+ t4 = space();
5433
+ button1 = element("button");
5434
+ span1 = element("span");
5435
+ create_component(svgloader1.$$.fragment);
5436
+ t5 = space();
5437
+ div3 = element("div");
5438
+ img = element("img");
5439
+ t6 = space();
5440
+ button2 = element("button");
5441
+ span2 = element("span");
5442
+ create_component(svgloader2.$$.fragment);
5443
+ t7 = space();
5444
+ div6 = element("div");
5445
+ button3 = element("button");
5446
+ span3 = element("span");
5447
+ create_component(svgloader3.$$.fragment);
5448
+ t8 = space();
5449
+ button4 = element("button");
5450
+ span4 = element("span");
5451
+ create_component(svgloader4.$$.fragment);
5452
+ attr(div0, "tabindex", "-1");
5453
+ attr(div0, "class", "sr-only");
5454
+ attr(div1, "aria-live", "polite");
5455
+ attr(div1, "aria-atomic", "true");
5456
+ attr(div1, "class", "sr-only");
5457
+ attr(span0, "class", "w-6 h-6 flex items-center justify-center");
5458
+ attr(button0, "aria-label", "Previous");
5459
+ attr(button0, "class", "hidden md:flex items-center justify-center absolute left-6 lg:left-16 top-1/2 -translate-y-1/2 w-11 h-11 rounded md:rounded-md bg-white/80 hover:bg-bg-minimal pointer-events-auto btn-states btn-states-transparent");
5460
+ attr(span1, "class", "icon-surface");
5461
+ attr(button1, "aria-label", "Close");
5462
+ attr(button1, "class", "btn-close-icon flex-shrink-0");
5463
+ attr(div2, "class", "flex items-center justify-between py-1 px-2 md:px-4 border-border-minimal border rounded-t-md lg:rounded-t-lg gap-4");
5464
+ if (!src_url_equal(img.src, img_src_value = /*currentImageUrl*/
5465
+ ctx[4]))
5466
+ attr(img, "src", img_src_value);
5467
+ attr(
5468
+ img,
5469
+ "alt",
5470
+ /*currentImageAlt*/
5471
+ ctx[11]
5472
+ );
5473
+ attr(img, "class", "mx-auto block rounded-b-md lg:rounded-b-lg object-contain max-w-full max-h-[calc(100vh-208px)] md:max-h-[calc(100vh-112px)] lg:max-h-[calc(100vh-192px)] pointer-events-none");
5474
+ attr(div3, "class", "rounded-b-md");
5475
+ attr(div4, "class", "pointer-events-auto bg-white rounded-lg md:mx-[60px] lg:mx-[60px]");
5476
+ set_style(
5477
+ div4,
5478
+ "max-width",
5479
+ /*containerMaxWidth*/
5480
+ ctx[7]
5481
+ );
5482
+ attr(span2, "class", "w-6 h-6 flex items-center justify-center");
5483
+ attr(button2, "aria-label", "Next");
5484
+ attr(button2, "class", "hidden md:flex items-center justify-center absolute right-6 lg:right-16 top-1/2 -translate-y-1/2 w-11 h-11 rounded md:rounded-md bg-white/80 hover:bg-bg-minimal pointer-events-auto btn-states");
5485
+ attr(div5, "class", "w-full flex justify-center items-center pointer-events-none");
5486
+ attr(span3, "class", "w-4 h-4 flex items-center justify-center");
5487
+ attr(button3, "aria-label", "Previous");
5488
+ attr(button3, "class", "w-6 h-6 flex items-center justify-center rounded bg-white/80 hover:bg-bg-minimal btn-states");
5489
+ attr(span4, "class", "w-4 h-4 flex items-center justify-center");
5490
+ attr(button4, "aria-label", "Next");
5491
+ attr(button4, "class", "w-6 h-6 flex items-center justify-center rounded bg-white/80 hover:bg-bg-minimal btn-states");
5492
+ attr(div6, "class", "md:hidden absolute bottom-6 left-1/2 -translate-x-1/2 flex justify-center items-center gap-6 pointer-events-auto");
5493
+ attr(div7, "class", "w-full h-full px-0 md:px-6 lg:px-16 pt-14 pb-18 md:py-14 lg:py-24 flex flex-col items-center justify-center pointer-events-none");
5494
+ attr(div8, "class", "absolute inset-0 m-0 pointer-events-none");
5495
+ },
5496
+ m(target, anchor) {
5497
+ insert(target, div0, anchor);
5498
+ ctx[20](div0);
5499
+ insert(target, t0, anchor);
5500
+ insert(target, div1, anchor);
5501
+ append(div1, t1);
5502
+ insert(target, t2, anchor);
5503
+ insert(target, div8, anchor);
5504
+ append(div8, div7);
5505
+ append(div7, div5);
5506
+ append(div5, button0);
5507
+ append(button0, span0);
5508
+ mount_component(svgloader0, span0, null);
5509
+ append(div5, t3);
5510
+ append(div5, div4);
5511
+ append(div4, div2);
5512
+ mount_component(commontooltip, div2, null);
5513
+ append(div2, t4);
5514
+ append(div2, button1);
5515
+ append(button1, span1);
5516
+ mount_component(svgloader1, span1, null);
5517
+ append(div4, t5);
5518
+ append(div4, div3);
5519
+ append(div3, img);
5520
+ ctx[22](img);
5521
+ append(div5, t6);
5522
+ append(div5, button2);
5523
+ append(button2, span2);
5524
+ mount_component(svgloader2, span2, null);
5525
+ append(div7, t7);
5526
+ append(div7, div6);
5527
+ append(div6, button3);
5528
+ append(button3, span3);
5529
+ mount_component(svgloader3, span3, null);
5530
+ append(div6, t8);
5531
+ append(div6, button4);
5532
+ append(button4, span4);
5533
+ mount_component(svgloader4, span4, null);
5534
+ current = true;
5535
+ if (!mounted) {
5536
+ dispose = [
5537
+ listen(
5538
+ button0,
5539
+ "click",
5540
+ /*navigatePrevious*/
5541
+ ctx[13]
5542
+ ),
5543
+ listen(
5544
+ button1,
5545
+ "click",
5546
+ /*closeModal*/
5547
+ ctx[15]
5548
+ ),
5549
+ listen(
5550
+ img,
5551
+ "load",
5552
+ /*handleImageLoad*/
5553
+ ctx[12]
5554
+ ),
5555
+ listen(
5556
+ button2,
5557
+ "click",
5558
+ /*navigateNext*/
5559
+ ctx[14]
5560
+ ),
5561
+ listen(
5562
+ button3,
5563
+ "click",
5564
+ /*navigatePrevious*/
5565
+ ctx[13]
5566
+ ),
5567
+ listen(
5568
+ button4,
5569
+ "click",
5570
+ /*navigateNext*/
5571
+ ctx[14]
5572
+ )
5573
+ ];
5574
+ mounted = true;
5575
+ }
5576
+ },
5577
+ p(ctx2, dirty) {
5578
+ if (!current || dirty & /*navigationAnnouncement*/
5579
+ 512)
5580
+ set_data(
5581
+ t1,
5582
+ /*navigationAnnouncement*/
5583
+ ctx2[9]
5584
+ );
5585
+ const commontooltip_changes = {};
5586
+ if (dirty & /*isTextTruncated*/
5587
+ 256)
5588
+ commontooltip_changes.disabled = !/*isTextTruncated*/
5589
+ ctx2[8];
5590
+ if (dirty & /*fullAnswerText*/
5591
+ 8)
5592
+ commontooltip_changes.text = /*fullAnswerText*/
5593
+ ctx2[3];
5594
+ if (dirty & /*$$scope, isTextTruncated, textElement, currentOption*/
5595
+ 268435748) {
5596
+ commontooltip_changes.$$scope = { dirty, ctx: ctx2 };
5597
+ }
5598
+ commontooltip.$set(commontooltip_changes);
5599
+ if (!current || dirty & /*currentImageUrl*/
5600
+ 16 && !src_url_equal(img.src, img_src_value = /*currentImageUrl*/
5601
+ ctx2[4])) {
5602
+ attr(img, "src", img_src_value);
5603
+ }
5604
+ if (!current || dirty & /*currentImageAlt*/
5605
+ 2048) {
5606
+ attr(
5607
+ img,
5608
+ "alt",
5609
+ /*currentImageAlt*/
5610
+ ctx2[11]
5611
+ );
5612
+ }
5613
+ if (!current || dirty & /*containerMaxWidth*/
5614
+ 128) {
5615
+ set_style(
5616
+ div4,
5617
+ "max-width",
5618
+ /*containerMaxWidth*/
5619
+ ctx2[7]
5620
+ );
5621
+ }
5622
+ },
5623
+ i(local) {
5624
+ if (current)
5625
+ return;
5626
+ transition_in(svgloader0.$$.fragment, local);
5627
+ transition_in(commontooltip.$$.fragment, local);
5628
+ transition_in(svgloader1.$$.fragment, local);
5629
+ transition_in(svgloader2.$$.fragment, local);
5630
+ transition_in(svgloader3.$$.fragment, local);
5631
+ transition_in(svgloader4.$$.fragment, local);
5632
+ current = true;
5633
+ },
5634
+ o(local) {
5635
+ transition_out(svgloader0.$$.fragment, local);
5636
+ transition_out(commontooltip.$$.fragment, local);
5637
+ transition_out(svgloader1.$$.fragment, local);
5638
+ transition_out(svgloader2.$$.fragment, local);
5639
+ transition_out(svgloader3.$$.fragment, local);
5640
+ transition_out(svgloader4.$$.fragment, local);
5641
+ current = false;
5642
+ },
5643
+ d(detaching) {
5644
+ if (detaching) {
5645
+ detach(div0);
5646
+ detach(t0);
5647
+ detach(div1);
5648
+ detach(t2);
5649
+ detach(div8);
5650
+ }
5651
+ ctx[20](null);
5652
+ destroy_component(svgloader0);
5653
+ destroy_component(commontooltip);
5654
+ destroy_component(svgloader1);
5655
+ ctx[22](null);
5656
+ destroy_component(svgloader2);
5657
+ destroy_component(svgloader3);
5658
+ destroy_component(svgloader4);
5659
+ mounted = false;
5660
+ run_all(dispose);
5661
+ }
5662
+ };
5663
+ }
5664
+ function create_fragment8(ctx) {
5665
+ let if_block_anchor;
5666
+ let current;
5667
+ let mounted;
5668
+ let dispose;
5669
+ let if_block = (
5670
+ /*isOpen*/
5671
+ ctx[0] && create_if_block7(ctx)
5672
+ );
5673
+ return {
5674
+ c() {
5675
+ if (if_block)
5676
+ if_block.c();
5677
+ if_block_anchor = empty();
5678
+ },
5679
+ m(target, anchor) {
5680
+ if (if_block)
5681
+ if_block.m(target, anchor);
5682
+ insert(target, if_block_anchor, anchor);
5683
+ current = true;
5684
+ if (!mounted) {
5685
+ dispose = listen(
5686
+ window_12,
5687
+ "keydown",
5688
+ /*handleKeydown*/
5689
+ ctx[17]
5690
+ );
5691
+ mounted = true;
5692
+ }
5693
+ },
5694
+ p(ctx2, [dirty]) {
5695
+ if (
5696
+ /*isOpen*/
5697
+ ctx2[0]
5698
+ ) {
5699
+ if (if_block) {
5700
+ if_block.p(ctx2, dirty);
5701
+ if (dirty & /*isOpen*/
5702
+ 1) {
5703
+ transition_in(if_block, 1);
5704
+ }
5705
+ } else {
5706
+ if_block = create_if_block7(ctx2);
5707
+ if_block.c();
5708
+ transition_in(if_block, 1);
5709
+ if_block.m(if_block_anchor.parentNode, if_block_anchor);
5710
+ }
5711
+ } else if (if_block) {
5712
+ group_outros();
5713
+ transition_out(if_block, 1, 1, () => {
5714
+ if_block = null;
5715
+ });
5716
+ check_outros();
5717
+ }
5718
+ },
5719
+ i(local) {
5720
+ if (current)
5721
+ return;
5722
+ transition_in(if_block);
5723
+ current = true;
5724
+ },
5725
+ o(local) {
5726
+ transition_out(if_block);
5727
+ current = false;
5728
+ },
5729
+ d(detaching) {
5730
+ if (detaching) {
5731
+ detach(if_block_anchor);
5732
+ }
5733
+ if (if_block)
5734
+ if_block.d(detaching);
5735
+ mounted = false;
5736
+ dispose();
5737
+ }
5738
+ };
5739
+ }
5740
+ function instance8($$self, $$props, $$invalidate) {
5741
+ let currentOption;
5742
+ let currentImageUrl;
5743
+ let currentImageAlt;
5744
+ let fullAnswerText;
5745
+ let imageModalData;
5746
+ let { isOpen = false } = $$props;
5747
+ let { options = [] } = $$props;
5748
+ let { currentIndex = 0 } = $$props;
5749
+ const BREAKPOINTS = { MD: 732 };
5750
+ const MODAL_PADDING = { MOBILE: 0, DESKTOP: 120 };
5751
+ let imageViewerFocusEl = null;
5752
+ let imageElement = null;
5753
+ let containerMaxWidth = "100%";
5754
+ let textElement = null;
5755
+ let isTextTruncated = false;
5756
+ let navigationAnnouncement = "";
5757
+ const handleImageLoad = () => {
5758
+ if (imageElement) {
5759
+ const imageWidth = imageElement.naturalWidth;
5760
+ const viewportWidth = window.innerWidth;
5761
+ const modalPadding = viewportWidth >= BREAKPOINTS.MD ? MODAL_PADDING.DESKTOP : MODAL_PADDING.MOBILE;
5762
+ const maxAllowedWidth = viewportWidth - modalPadding;
5763
+ const optimalWidth = Math.min(imageWidth, maxAllowedWidth);
5764
+ $$invalidate(7, containerMaxWidth = `${optimalWidth}px`);
5765
+ setTimeout(checkTextTruncation, 0);
5766
+ }
5767
+ };
5768
+ const checkTextTruncation = () => {
5769
+ if (textElement) {
5770
+ $$invalidate(8, isTextTruncated = textElement.scrollHeight > textElement.clientHeight);
5771
+ }
5772
+ };
5773
+ const dispatch2 = createEventDispatcher();
5774
+ const navigatePrevious = () => {
5775
+ if (!options || options.length === 0)
5776
+ return;
5777
+ const newIndex = (currentIndex - 1 + options.length) % options.length;
5778
+ const answerText = options[newIndex]?.answer ? useRemoveRichTextHtmlTags(options[newIndex].answer) : "";
5779
+ $$invalidate(9, navigationAnnouncement = `${answerText}`);
5780
+ dispatch2("navigate", { index: newIndex });
5781
+ };
5782
+ const navigateNext = () => {
5783
+ if (!options || options.length === 0)
5784
+ return;
5785
+ const newIndex = (currentIndex + 1) % options.length;
5786
+ const answerText = options[newIndex]?.answer ? useRemoveRichTextHtmlTags(options[newIndex].answer) : "";
5787
+ $$invalidate(9, navigationAnnouncement = `${answerText}`);
5788
+ dispatch2("navigate", { index: newIndex });
5789
+ };
5790
+ const closeModal = () => {
5791
+ $$invalidate(9, navigationAnnouncement = "");
5792
+ dispatch2("close");
5793
+ };
5794
+ const updateModalSettings = ({ detail }) => {
5795
+ if (!detail.isModalOpen) {
5796
+ closeModal();
5797
+ }
5798
+ };
5799
+ const KEYBOARD_ACTIONS = {
5800
+ ArrowLeft: navigatePrevious,
5801
+ ArrowRight: navigateNext,
5802
+ Escape: closeModal
5803
+ };
5804
+ const handleKeydown = (e2) => {
5805
+ if (!isOpen)
5806
+ return;
5807
+ if (!options || options.length === 0)
5808
+ return;
5809
+ const action2 = KEYBOARD_ACTIONS[e2.key];
5810
+ if (action2) {
5811
+ action2();
5812
+ e2.preventDefault();
5813
+ }
5814
+ };
5815
+ function div0_binding($$value) {
5816
+ binding_callbacks[$$value ? "unshift" : "push"](() => {
5817
+ imageViewerFocusEl = $$value;
5818
+ $$invalidate(1, imageViewerFocusEl);
5819
+ });
5820
+ }
5821
+ function div_binding($$value) {
5822
+ binding_callbacks[$$value ? "unshift" : "push"](() => {
5823
+ textElement = $$value;
5824
+ $$invalidate(2, textElement);
5825
+ });
5826
+ }
5827
+ function img_binding($$value) {
5828
+ binding_callbacks[$$value ? "unshift" : "push"](() => {
5829
+ imageElement = $$value;
5830
+ $$invalidate(6, imageElement);
5831
+ });
5832
+ }
5833
+ $$self.$$set = ($$props2) => {
5834
+ if ("isOpen" in $$props2)
5835
+ $$invalidate(0, isOpen = $$props2.isOpen);
5836
+ if ("options" in $$props2)
5837
+ $$invalidate(18, options = $$props2.options);
5838
+ if ("currentIndex" in $$props2)
5839
+ $$invalidate(19, currentIndex = $$props2.currentIndex);
5840
+ };
5841
+ $$self.$$.update = () => {
5842
+ if ($$self.$$.dirty & /*options, currentIndex*/
5843
+ 786432) {
5844
+ $:
5845
+ $$invalidate(5, currentOption = options[currentIndex]);
5846
+ }
5847
+ if ($$self.$$.dirty & /*currentOption*/
5848
+ 32) {
5849
+ $:
5850
+ $$invalidate(4, currentImageUrl = currentOption?.media?.file?.url || "");
5851
+ }
5852
+ if ($$self.$$.dirty & /*currentOption*/
5853
+ 32) {
5854
+ $:
5855
+ $$invalidate(11, currentImageAlt = currentOption?.media?.alternative_text ? `Graphic, ${currentOption.media.alternative_text}` : "Graphic");
5856
+ }
5857
+ if ($$self.$$.dirty & /*currentOption*/
5858
+ 32) {
5859
+ $:
5860
+ $$invalidate(3, fullAnswerText = currentOption?.answer ? useRemoveRichTextHtmlTags(currentOption.answer) : "");
5861
+ }
5862
+ if ($$self.$$.dirty & /*isOpen*/
5863
+ 1) {
5864
+ $:
5865
+ $$invalidate(10, imageModalData = {
5866
+ isModalOpen: isOpen,
5867
+ modalAriaLabel: "Image viewer"
5868
+ });
5869
+ }
5870
+ if ($$self.$$.dirty & /*currentImageUrl*/
5871
+ 16) {
5872
+ $:
5873
+ if (currentImageUrl) {
5874
+ $$invalidate(7, containerMaxWidth = "100%");
5875
+ }
5876
+ }
5877
+ if ($$self.$$.dirty & /*fullAnswerText, textElement*/
5878
+ 12) {
5879
+ $:
5880
+ if (fullAnswerText && textElement) {
5881
+ setTimeout(checkTextTruncation, 0);
5882
+ }
5883
+ }
5884
+ if ($$self.$$.dirty & /*isOpen, imageViewerFocusEl*/
5885
+ 3) {
5886
+ $: {
5887
+ if (isOpen) {
5888
+ tick().then(() => {
5889
+ imageViewerFocusEl?.focus();
5890
+ });
5891
+ }
5892
+ }
5893
+ }
5894
+ };
5895
+ return [
5896
+ isOpen,
5897
+ imageViewerFocusEl,
5898
+ textElement,
5899
+ fullAnswerText,
5900
+ currentImageUrl,
5901
+ currentOption,
5902
+ imageElement,
5903
+ containerMaxWidth,
5904
+ isTextTruncated,
5905
+ navigationAnnouncement,
5906
+ imageModalData,
5907
+ currentImageAlt,
5908
+ handleImageLoad,
5909
+ navigatePrevious,
5910
+ navigateNext,
5911
+ closeModal,
5912
+ updateModalSettings,
5913
+ handleKeydown,
5914
+ options,
5915
+ currentIndex,
5916
+ div0_binding,
5917
+ div_binding,
5918
+ img_binding
5919
+ ];
5920
+ }
5921
+ var PromptMCQImageModal = class extends SvelteComponent {
5922
+ constructor(options) {
5923
+ super();
5924
+ init(this, options, instance8, create_fragment8, safe_not_equal, { isOpen: 0, options: 18, currentIndex: 19 });
5925
+ }
5926
+ get isOpen() {
5927
+ return this.$$.ctx[0];
5928
+ }
5929
+ set isOpen(isOpen) {
5930
+ this.$$set({ isOpen });
5931
+ flush();
5932
+ }
5933
+ get options() {
5934
+ return this.$$.ctx[18];
5935
+ }
5936
+ set options(options) {
5937
+ this.$$set({ options });
5938
+ flush();
5939
+ }
5940
+ get currentIndex() {
5941
+ return this.$$.ctx[19];
5942
+ }
5943
+ set currentIndex(currentIndex) {
5944
+ this.$$set({ currentIndex });
5945
+ flush();
5946
+ }
5947
+ };
5948
+ customElements.define("prompt-mcq-image-modal", create_custom_element(PromptMCQImageModal, { "isOpen": { "type": "Boolean" }, "options": {}, "currentIndex": {} }, [], [], true));
5949
+ var PromptMCQImageModal_default = PromptMCQImageModal;
5950
+
5951
+ // src/lib/components/prompt/mcq/PromptMCQ.svelte
5952
+ function get_each_context(ctx, list, i) {
5953
+ const child_ctx = ctx.slice();
5954
+ child_ctx[38] = list[i];
5955
+ child_ctx[40] = i;
5956
+ return child_ctx;
5957
+ }
5958
+ function create_if_block_122(ctx) {
5959
+ let promptresult;
5960
+ let current;
5961
+ promptresult = new PromptResultFeedbackAlert_default({
5962
+ props: {
5963
+ hasIcon: true,
5964
+ isFeedbackAlert: (
5965
+ /*isPreviewModeInteractive*/
5966
+ ctx[3] ? false : true
5967
+ ),
5968
+ isResultCorrect: (
5969
+ /*selectedOptions*/
5970
+ ctx[4].length === /*correctAnswersLength*/
5971
+ ctx[5] && /*isResultCorrect*/
5972
+ ctx[17](
5973
+ /*selectedOptions*/
5974
+ ctx[4],
5975
+ /*correctAnswerIds*/
5976
+ ctx[6]
5977
+ )
5978
+ ),
5979
+ isSkipped: (
5980
+ /*isSkipped*/
5981
+ ctx[18]()
5982
+ ),
5983
+ resultFeedback: (
5984
+ /*resultFeedback*/
5985
+ ctx[7]
5986
+ )
5987
+ }
5988
+ });
5989
+ return {
5990
+ c() {
5991
+ create_component(promptresult.$$.fragment);
5992
+ },
5993
+ m(target, anchor) {
5994
+ mount_component(promptresult, target, anchor);
5995
+ current = true;
5996
+ },
5997
+ p(ctx2, dirty) {
5998
+ const promptresult_changes = {};
5999
+ if (dirty[0] & /*isPreviewModeInteractive*/
6000
+ 8)
6001
+ promptresult_changes.isFeedbackAlert = /*isPreviewModeInteractive*/
6002
+ ctx2[3] ? false : true;
6003
+ if (dirty[0] & /*selectedOptions, correctAnswersLength, correctAnswerIds*/
6004
+ 112)
6005
+ promptresult_changes.isResultCorrect = /*selectedOptions*/
6006
+ ctx2[4].length === /*correctAnswersLength*/
6007
+ ctx2[5] && /*isResultCorrect*/
6008
+ ctx2[17](
6009
+ /*selectedOptions*/
6010
+ ctx2[4],
6011
+ /*correctAnswerIds*/
6012
+ ctx2[6]
6013
+ );
6014
+ if (dirty[0] & /*resultFeedback*/
6015
+ 128)
6016
+ promptresult_changes.resultFeedback = /*resultFeedback*/
6017
+ ctx2[7];
6018
+ promptresult.$set(promptresult_changes);
6019
+ },
6020
+ i(local) {
6021
+ if (current)
6022
+ return;
6023
+ transition_in(promptresult.$$.fragment, local);
6024
+ current = true;
6025
+ },
6026
+ o(local) {
6027
+ transition_out(promptresult.$$.fragment, local);
6028
+ current = false;
6029
+ },
6030
+ d(detaching) {
6031
+ destroy_component(promptresult, detaching);
6032
+ }
6033
+ };
6034
+ }
6035
+ function create_if_block_14(ctx) {
6036
+ let div2;
6037
+ let div0;
6038
+ let div0_class_value;
6039
+ let t2;
6040
+ let div1;
6041
+ let div1_class_value;
6042
+ let div2_class_value;
6043
+ let current;
6044
+ let each_value = ensure_array_like(Object.values(
6045
+ /*options*/
6046
+ ctx[15]
6047
+ ));
6048
+ let each_blocks = [];
6049
+ for (let i = 0; i < each_value.length; i += 1) {
6050
+ each_blocks[i] = create_each_block(get_each_context(ctx, each_value, i));
6051
+ }
6052
+ const out = (i) => transition_out(each_blocks[i], 1, 1, () => {
6053
+ each_blocks[i] = null;
6054
+ });
6055
+ return {
6056
+ c() {
6057
+ div2 = element("div");
6058
+ div0 = element("div");
6059
+ t2 = space();
6060
+ div1 = element("div");
6061
+ for (let i = 0; i < each_blocks.length; i += 1) {
6062
+ each_blocks[i].c();
6063
+ }
6064
+ attr(div0, "class", div0_class_value = /*isDataSaving*/
6065
+ ctx[0] ? "absolute inset-0 bg-transparent z-50" : "");
6066
+ attr(div1, "class", div1_class_value = /*optionHasMedia*/
6067
+ ctx[16] ? "flex flex-col justify-start items-center md:justify-center md:items-start md:flex-none md:grid md:grid-cols-2 md:gap-x-4 md:max-w-[620px] md:mx-auto lg:mx-0" : "");
6068
+ attr(div2, "class", div2_class_value = /*optionHasMedia*/
6069
+ ctx[16] ? "w-full" : "relative");
6070
+ },
6071
+ m(target, anchor) {
6072
+ insert(target, div2, anchor);
6073
+ append(div2, div0);
6074
+ append(div2, t2);
6075
+ append(div2, div1);
6076
+ for (let i = 0; i < each_blocks.length; i += 1) {
6077
+ if (each_blocks[i]) {
6078
+ each_blocks[i].m(div1, null);
6079
+ }
6080
+ }
6081
+ current = true;
6082
+ },
6083
+ p(ctx2, dirty) {
6084
+ if (!current || dirty[0] & /*isDataSaving*/
6085
+ 1 && div0_class_value !== (div0_class_value = /*isDataSaving*/
6086
+ ctx2[0] ? "absolute inset-0 bg-transparent z-50" : "")) {
6087
+ attr(div0, "class", div0_class_value);
6088
+ }
6089
+ if (dirty[0] & /*openImageModal, optionHasMedia, correctAnswersLength, selectedOptions, options, isFinished, isPreviewModeInteractive, isPreviewMode, correctAnswerIds, handleOptionClick*/
6090
+ 1671294) {
6091
+ each_value = ensure_array_like(Object.values(
6092
+ /*options*/
6093
+ ctx2[15]
4231
6094
  ));
4232
6095
  let i;
4233
6096
  for (i = 0; i < each_value.length; i += 1) {
@@ -4272,7 +6135,7 @@
4272
6135
  }
4273
6136
  };
4274
6137
  }
4275
- function create_if_block_92(ctx) {
6138
+ function create_if_block_112(ctx) {
4276
6139
  let p;
4277
6140
  let t_value = (
4278
6141
  /*isPreviewModeInteractive*/
@@ -4308,7 +6171,7 @@
4308
6171
  }
4309
6172
  };
4310
6173
  }
4311
- function create_if_block_82(ctx) {
6174
+ function create_if_block_102(ctx) {
4312
6175
  let span;
4313
6176
  let t_value = (
4314
6177
  /*isPreviewModeInteractive*/
@@ -4344,7 +6207,7 @@
4344
6207
  }
4345
6208
  };
4346
6209
  }
4347
- function create_if_block_72(ctx) {
6210
+ function create_if_block_92(ctx) {
4348
6211
  let span;
4349
6212
  return {
4350
6213
  c() {
@@ -4362,7 +6225,7 @@
4362
6225
  }
4363
6226
  };
4364
6227
  }
4365
- function create_if_block_62(ctx) {
6228
+ function create_if_block_82(ctx) {
4366
6229
  let span;
4367
6230
  let svgloader;
4368
6231
  let current;
@@ -4402,14 +6265,14 @@
4402
6265
  }
4403
6266
  };
4404
6267
  }
4405
- function create_if_block_42(ctx) {
6268
+ function create_if_block_62(ctx) {
4406
6269
  let span;
4407
6270
  let show_if;
4408
6271
  let current_block_type_index;
4409
6272
  let if_block;
4410
6273
  let span_class_value;
4411
6274
  let current;
4412
- const if_block_creators = [create_if_block_52, create_else_block];
6275
+ const if_block_creators = [create_if_block_72, create_else_block];
4413
6276
  const if_blocks = [];
4414
6277
  function select_block_type(ctx2, dirty) {
4415
6278
  if (dirty[0] & /*correctAnswerIds, isPreviewMode, isPreviewModeInteractive*/
@@ -4419,7 +6282,7 @@
4419
6282
  show_if = !!/*correctAnswerIds*/
4420
6283
  (ctx2[6]?.includes(
4421
6284
  /*option*/
4422
- ctx2[31].id
6285
+ ctx2[38].id
4423
6286
  ) || /*isPreviewMode*/
4424
6287
  ctx2[2] && !/*isPreviewModeInteractive*/
4425
6288
  ctx2[3]);
@@ -4437,7 +6300,7 @@
4437
6300
  attr(span, "class", span_class_value = /*correctAnswerIds*/
4438
6301
  (ctx[6]?.includes(
4439
6302
  /*option*/
4440
- ctx[31].id
6303
+ ctx[38].id
4441
6304
  ) || /*isPreviewMode*/
4442
6305
  ctx[2] && !/*isPreviewModeInteractive*/
4443
6306
  ctx[3] ? "text-green-900" : "text-red-900") + " p-0.5");
@@ -4469,7 +6332,7 @@
4469
6332
  76 && span_class_value !== (span_class_value = /*correctAnswerIds*/
4470
6333
  (ctx2[6]?.includes(
4471
6334
  /*option*/
4472
- ctx2[31].id
6335
+ ctx2[38].id
4473
6336
  ) || /*isPreviewMode*/
4474
6337
  ctx2[2] && !/*isPreviewModeInteractive*/
4475
6338
  ctx2[3] ? "text-green-900" : "text-red-900") + " p-0.5")) {
@@ -4526,7 +6389,7 @@
4526
6389
  }
4527
6390
  };
4528
6391
  }
4529
- function create_if_block_52(ctx) {
6392
+ function create_if_block_72(ctx) {
4530
6393
  let svgloader;
4531
6394
  let current;
4532
6395
  svgloader = new SvgLoader_default({
@@ -4558,18 +6421,18 @@
4558
6421
  }
4559
6422
  };
4560
6423
  }
4561
- function create_if_block_24(ctx) {
6424
+ function create_if_block_42(ctx) {
4562
6425
  let span;
4563
6426
  let show_if = (
4564
6427
  /*selectedOptions*/
4565
6428
  ctx[4].includes(
4566
6429
  /*option*/
4567
- ctx[31].id
6430
+ ctx[38].id
4568
6431
  )
4569
6432
  );
4570
6433
  let span_class_value;
4571
6434
  let current;
4572
- let if_block = show_if && create_if_block_34(ctx);
6435
+ let if_block = show_if && create_if_block_52(ctx);
4573
6436
  return {
4574
6437
  c() {
4575
6438
  span = element("span");
@@ -4578,7 +6441,7 @@
4578
6441
  attr(span, "class", span_class_value = "custom-checkbox " + /*selectedOptions*/
4579
6442
  (ctx[4].includes(
4580
6443
  /*option*/
4581
- ctx[31].id
6444
+ ctx[38].id
4582
6445
  ) ? "border-soft-blue" : "border-gray-850") + " " + /*isPreviewMode*/
4583
6446
  (ctx[2] && !/*isPreviewModeInteractive*/
4584
6447
  ctx[3] || /*isFinished*/
@@ -4600,7 +6463,7 @@
4600
6463
  show_if = /*selectedOptions*/
4601
6464
  ctx2[4].includes(
4602
6465
  /*option*/
4603
- ctx2[31].id
6466
+ ctx2[38].id
4604
6467
  );
4605
6468
  if (show_if) {
4606
6469
  if (if_block) {
@@ -4609,7 +6472,7 @@
4609
6472
  transition_in(if_block, 1);
4610
6473
  }
4611
6474
  } else {
4612
- if_block = create_if_block_34(ctx2);
6475
+ if_block = create_if_block_52(ctx2);
4613
6476
  if_block.c();
4614
6477
  transition_in(if_block, 1);
4615
6478
  if_block.m(span, null);
@@ -4625,7 +6488,7 @@
4625
6488
  62 && span_class_value !== (span_class_value = "custom-checkbox " + /*selectedOptions*/
4626
6489
  (ctx2[4].includes(
4627
6490
  /*option*/
4628
- ctx2[31].id
6491
+ ctx2[38].id
4629
6492
  ) ? "border-soft-blue" : "border-gray-850") + " " + /*isPreviewMode*/
4630
6493
  (ctx2[2] && !/*isPreviewModeInteractive*/
4631
6494
  ctx2[3] || /*isFinished*/
@@ -4656,7 +6519,7 @@
4656
6519
  }
4657
6520
  };
4658
6521
  }
4659
- function create_if_block_34(ctx) {
6522
+ function create_if_block_52(ctx) {
4660
6523
  let span;
4661
6524
  let svgloader;
4662
6525
  let current;
@@ -4695,7 +6558,7 @@
4695
6558
  }
4696
6559
  };
4697
6560
  }
4698
- function create_if_block_14(ctx) {
6561
+ function create_if_block_34(ctx) {
4699
6562
  let div;
4700
6563
  let img;
4701
6564
  let img_id_value;
@@ -4706,14 +6569,14 @@
4706
6569
  div = element("div");
4707
6570
  img = element("img");
4708
6571
  attr(img, "id", img_id_value = "img-" + /*index*/
4709
- ctx[33]);
6572
+ ctx[40]);
4710
6573
  attr(img, "alt", img_alt_value = "Graphic, " + /*option*/
4711
- ctx[31].media.alternative_text);
4712
- attr(img, "class", "min-h-[154px] max-h-[184px] w-auto max-w-full object-contain pointer-events-none");
6574
+ ctx[38]?.media?.alternative_text);
6575
+ attr(img, "class", "min-h-[154px] max-h-[184px] w-auto max-w-full object-contain pointer-events-none cursor-pointer");
4713
6576
  if (!src_url_equal(img.src, img_src_value = /*option*/
4714
- ctx[31].media.file.url))
6577
+ ctx[38]?.media?.file.url))
4715
6578
  attr(img, "src", img_src_value);
4716
- attr(div, "class", "w-full overflow-hidden bg-white rounded-b-lg flex items-center justify-center");
6579
+ attr(div, "class", "relative w-full overflow-hidden bg-white rounded-b-lg flex items-center justify-center");
4717
6580
  },
4718
6581
  m(target, anchor) {
4719
6582
  insert(target, div, anchor);
@@ -4727,21 +6590,88 @@
4727
6590
  }
4728
6591
  };
4729
6592
  }
6593
+ function create_if_block_24(ctx) {
6594
+ let button;
6595
+ let span;
6596
+ let svgloader;
6597
+ let current;
6598
+ let mounted;
6599
+ let dispose;
6600
+ svgloader = new SvgLoader_default({
6601
+ props: {
6602
+ svgName: "expandIcon",
6603
+ className: "w-3 h-3"
6604
+ }
6605
+ });
6606
+ function click_handler_1(...args) {
6607
+ return (
6608
+ /*click_handler_1*/
6609
+ ctx[27](
6610
+ /*index*/
6611
+ ctx[40],
6612
+ ...args
6613
+ )
6614
+ );
6615
+ }
6616
+ return {
6617
+ c() {
6618
+ button = element("button");
6619
+ span = element("span");
6620
+ create_component(svgloader.$$.fragment);
6621
+ attr(span, "class", "icon-surface-lg");
6622
+ attr(button, "aria-label", "Expand image");
6623
+ attr(button, "aria-haspopup", "dialog");
6624
+ attr(button, "class", "btn-square-lg expand-trigger");
6625
+ },
6626
+ m(target, anchor) {
6627
+ insert(target, button, anchor);
6628
+ append(button, span);
6629
+ mount_component(svgloader, span, null);
6630
+ current = true;
6631
+ if (!mounted) {
6632
+ dispose = listen(button, "click", click_handler_1);
6633
+ mounted = true;
6634
+ }
6635
+ },
6636
+ p(new_ctx, dirty) {
6637
+ ctx = new_ctx;
6638
+ },
6639
+ i(local) {
6640
+ if (current)
6641
+ return;
6642
+ transition_in(svgloader.$$.fragment, local);
6643
+ current = true;
6644
+ },
6645
+ o(local) {
6646
+ transition_out(svgloader.$$.fragment, local);
6647
+ current = false;
6648
+ },
6649
+ d(detaching) {
6650
+ if (detaching) {
6651
+ detach(button);
6652
+ }
6653
+ destroy_component(svgloader);
6654
+ mounted = false;
6655
+ dispose();
6656
+ }
6657
+ };
6658
+ }
4730
6659
  function create_each_block(ctx) {
4731
6660
  let show_if_5 = (
4732
6661
  /*isFinished*/
4733
6662
  ctx[1] && /*selectedOptions*/
4734
6663
  ctx[4].includes(
4735
6664
  /*option*/
4736
- ctx[31].id
6665
+ ctx[38].id
4737
6666
  ) && /*correctAnswersLength*/
4738
6667
  ctx[5] === 1 && !/*optionHasMedia*/
4739
- ctx[13] && (!/*isPreviewMode*/
6668
+ ctx[16] && (!/*isPreviewMode*/
4740
6669
  ctx[2] || /*isPreviewMode*/
4741
6670
  ctx[2] && /*isPreviewModeInteractive*/
4742
6671
  ctx[3])
4743
6672
  );
4744
6673
  let t0;
6674
+ let div;
4745
6675
  let button;
4746
6676
  let span5;
4747
6677
  let span4;
@@ -4749,7 +6679,7 @@
4749
6679
  let span0;
4750
6680
  let t1_value = useMCQ_default(
4751
6681
  /*index*/
4752
- ctx[33]
6682
+ ctx[40]
4753
6683
  ) + "";
4754
6684
  let t1;
4755
6685
  let span0_class_value;
@@ -4760,10 +6690,10 @@
4760
6690
  ctx[1] && /*selectedOptions*/
4761
6691
  ctx[4].includes(
4762
6692
  /*option*/
4763
- ctx[31].id
6693
+ ctx[38].id
4764
6694
  ) && /*correctAnswersLength*/
4765
6695
  ctx[5] === 1 && /*optionHasMedia*/
4766
- ctx[13] && (!/*isPreviewMode*/
6696
+ ctx[16] && (!/*isPreviewMode*/
4767
6697
  ctx[2] || /*isPreviewMode*/
4768
6698
  ctx[2] && /*isPreviewModeInteractive*/
4769
6699
  ctx[3] && /*selectedOptions*/
@@ -4776,11 +6706,11 @@
4776
6706
  ctx[1] && /*correctAnswerIds*/
4777
6707
  ctx[6]?.includes(
4778
6708
  /*option*/
4779
- ctx[31].id
6709
+ ctx[38].id
4780
6710
  ) && (!/*selectedOptions*/
4781
6711
  ctx[4].includes(
4782
6712
  /*option*/
4783
- ctx[31].id
6713
+ ctx[38].id
4784
6714
  ) || !/*selectedOptions*/
4785
6715
  ctx[4].length) && (!/*isPreviewModeInteractive*/
4786
6716
  ctx[3] || /*isPreviewModeInteractive*/
@@ -4797,11 +6727,11 @@
4797
6727
  ctx[1] && /*correctAnswerIds*/
4798
6728
  ctx[6]?.includes(
4799
6729
  /*option*/
4800
- ctx[31].id
6730
+ ctx[38].id
4801
6731
  ) && !/*selectedOptions*/
4802
6732
  ctx[4].includes(
4803
6733
  /*option*/
4804
- ctx[31].id
6734
+ ctx[38].id
4805
6735
  ) && (!/*isPreviewModeInteractive*/
4806
6736
  ctx[3] || /*isPreviewModeInteractive*/
4807
6737
  ctx[3] && /*selectedOptions*/
@@ -4813,7 +6743,7 @@
4813
6743
  /*selectedOptions*/
4814
6744
  ctx[4].includes(
4815
6745
  /*option*/
4816
- ctx[31].id
6746
+ ctx[38].id
4817
6747
  ) && /*isFinished*/
4818
6748
  (ctx[1] && !/*isPreviewModeInteractive*/
4819
6749
  ctx[3] || /*isPreviewModeInteractive*/
@@ -4830,17 +6760,16 @@
4830
6760
  ctx[1] && !/*selectedOptions*/
4831
6761
  ctx[4].includes(
4832
6762
  /*option*/
4833
- ctx[31].id
6763
+ ctx[38].id
4834
6764
  ) && !/*correctAnswerIds*/
4835
6765
  ctx[6].includes(
4836
6766
  /*option*/
4837
- ctx[31].id
6767
+ ctx[38].id
4838
6768
  ) || /*isPreviewModeInteractive*/
4839
6769
  ctx[3])
4840
6770
  );
4841
6771
  let span5_class_value;
4842
6772
  let t8;
4843
- let t9;
4844
6773
  let button_role_value;
4845
6774
  let button_tabindex_value;
4846
6775
  let button_aria_describedby_value;
@@ -4848,51 +6777,58 @@
4848
6777
  let button_aria_disabled_value;
4849
6778
  let button_aria_label_value;
4850
6779
  let button_class_value;
6780
+ let t9;
6781
+ let t10;
4851
6782
  let current;
4852
6783
  let mounted;
4853
6784
  let dispose;
4854
- let if_block0 = show_if_5 && create_if_block_92(ctx);
4855
- let if_block1 = show_if_4 && create_if_block_82(ctx);
4856
- let if_block2 = show_if_3 && create_if_block_72(ctx);
6785
+ let if_block0 = show_if_5 && create_if_block_112(ctx);
6786
+ let if_block1 = show_if_4 && create_if_block_102(ctx);
6787
+ let if_block2 = show_if_3 && create_if_block_92(ctx);
4857
6788
  commonstringtohtml = new CommonStringToHtml_default({
4858
6789
  props: {
4859
6790
  otherClass: "overflow-hidden text-ellipsis line-clamp-3",
4860
6791
  htmlString: (
4861
6792
  /*option*/
4862
- ctx[31].answer
6793
+ ctx[38].answer
4863
6794
  )
4864
6795
  }
4865
6796
  });
4866
- let if_block3 = show_if_2 && create_if_block_62(ctx);
4867
- let if_block4 = show_if_1 && create_if_block_42(ctx);
4868
- let if_block5 = show_if && create_if_block_24(ctx);
6797
+ let if_block3 = show_if_2 && create_if_block_82(ctx);
6798
+ let if_block4 = show_if_1 && create_if_block_62(ctx);
6799
+ let if_block5 = show_if && create_if_block_42(ctx);
4869
6800
  let if_block6 = (
4870
6801
  /*optionHasMedia*/
4871
- ctx[13] && create_if_block_14(ctx)
6802
+ ctx[16] && create_if_block_34(ctx)
4872
6803
  );
4873
6804
  function func() {
4874
6805
  return (
4875
6806
  /*func*/
4876
- ctx[19](
6807
+ ctx[25](
4877
6808
  /*option*/
4878
- ctx[31]
6809
+ ctx[38]
4879
6810
  )
4880
6811
  );
4881
6812
  }
4882
6813
  function click_handler() {
4883
6814
  return (
4884
6815
  /*click_handler*/
4885
- ctx[20](
6816
+ ctx[26](
4886
6817
  /*option*/
4887
- ctx[31]
6818
+ ctx[38]
4888
6819
  )
4889
6820
  );
4890
6821
  }
6822
+ let if_block7 = (
6823
+ /*optionHasMedia*/
6824
+ ctx[16] && create_if_block_24(ctx)
6825
+ );
4891
6826
  return {
4892
6827
  c() {
4893
6828
  if (if_block0)
4894
6829
  if_block0.c();
4895
6830
  t0 = space();
6831
+ div = element("div");
4896
6832
  button = element("button");
4897
6833
  span5 = element("span");
4898
6834
  span4 = element("span");
@@ -4922,26 +6858,29 @@
4922
6858
  if (if_block6)
4923
6859
  if_block6.c();
4924
6860
  t9 = space();
6861
+ if (if_block7)
6862
+ if_block7.c();
6863
+ t10 = space();
4925
6864
  attr(span0, "class", span0_class_value = "choice " + /*optionHasMedia*/
4926
- (ctx[13] ? "my-1.5" : ""));
6865
+ (ctx[16] ? "my-1.5" : ""));
4927
6866
  attr(span1, "class", "flex flex-col px-3 text-left");
4928
6867
  attr(span2, "class", "flex items-center");
4929
6868
  attr(span3, "class", "flex items-center");
4930
6869
  attr(span4, "class", "flex items-center justify-between w-full");
4931
6870
  attr(span5, "class", span5_class_value = "btn-mcq-text " + /*optionHasMedia*/
4932
- (ctx[13] ? "min-h-[44px]" : ""));
6871
+ (ctx[16] ? "min-h-[44px]" : ""));
4933
6872
  attr(button, "role", button_role_value = /*correctAnswersLength*/
4934
6873
  ctx[5] > 1 ? "checkbox" : null);
4935
6874
  attr(button, "tabindex", button_tabindex_value = /*correctAnswersLength*/
4936
6875
  ctx[5] > 1 ? 0 : null);
4937
6876
  attr(button, "aria-describedby", button_aria_describedby_value = "img-" + /*index*/
4938
- ctx[33]);
6877
+ ctx[40]);
4939
6878
  attr(button, "aria-checked", button_aria_checked_value = /*correctAnswersLength*/
4940
6879
  ctx[5] > 1 ? (
4941
6880
  /*selectedOptions*/
4942
6881
  ctx[4].includes(
4943
6882
  /*option*/
4944
- ctx[31].id
6883
+ ctx[38].id
4945
6884
  )
4946
6885
  ) : null);
4947
6886
  attr(button, "aria-disabled", button_aria_disabled_value = /*isFinished*/
@@ -4952,30 +6891,30 @@
4952
6891
  ctx[3]) && /*selectedOptions*/
4953
6892
  ctx[4].includes(
4954
6893
  /*option*/
4955
- ctx[31].id
6894
+ ctx[38].id
4956
6895
  ) ? "Selected " : ""}${`Option ${useMCQ_default(
4957
6896
  /*index*/
4958
- ctx[33]
6897
+ ctx[40]
4959
6898
  )}`}: ${useRemoveRichTextHtmlTags(
4960
6899
  /*option*/
4961
- ctx[31].answer
6900
+ ctx[38].answer
4962
6901
  )} ${func()}`);
4963
6902
  attr(button, "class", button_class_value = "group btn-mcq-option " + /*optionHasMedia*/
4964
- (ctx[13] ? "min-w-[288px] max-w-[304px] min-h-[210px] md:min-w-full block" : "") + " " + (!/*isFinished*/
6903
+ (ctx[16] ? "min-w-[288px] max-w-[304px] min-h-[210px] md:min-w-full block" : "") + " " + (!/*isFinished*/
4965
6904
  ctx[1] || /*isPreviewModeInteractive*/
4966
6905
  ctx[3] ? "active:raw-focus-ring-by" : "finished") + " " + /*selectedOptions*/
4967
6906
  (ctx[4].includes(
4968
6907
  /*option*/
4969
- ctx[31].id
6908
+ ctx[38].id
4970
6909
  ) ? "selected" : "") + " " + /*isFinished*/
4971
6910
  (ctx[1] && /*correctAnswerIds*/
4972
6911
  ctx[6]?.includes(
4973
6912
  /*option*/
4974
- ctx[31].id
6913
+ ctx[38].id
4975
6914
  ) && (!/*selectedOptions*/
4976
6915
  ctx[4].includes(
4977
6916
  /*option*/
4978
- ctx[31].id
6917
+ ctx[38].id
4979
6918
  ) || !/*selectedOptions*/
4980
6919
  ctx[4].length) && (!/*isPreviewModeInteractive*/
4981
6920
  ctx[3] || /*isPreviewModeInteractive*/
@@ -4991,11 +6930,11 @@
4991
6930
  ctx[3] && /*selectedOptions*/
4992
6931
  ctx[4].includes(
4993
6932
  /*option*/
4994
- ctx[31].id
6933
+ ctx[38].id
4995
6934
  )) && /*correctAnswerIds*/
4996
6935
  ctx[6].includes(
4997
6936
  /*option*/
4998
- ctx[31].id
6937
+ ctx[38].id
4999
6938
  ) ? "correct" : (
5000
6939
  /*isFinished*/
5001
6940
  ctx[1] && !/*isPreviewModeInteractive*/
@@ -5004,13 +6943,15 @@
5004
6943
  ctx[4].length === /*correctAnswersLength*/
5005
6944
  ctx[5] ? "incorrect" : ""
5006
6945
  )) + " " + /*isPreviewModeInteractive*/
5007
- (ctx[3] ? "interactive" : "") + " svelte-1sgrg21");
6946
+ (ctx[3] ? "interactive" : ""));
6947
+ attr(div, "class", "relative");
5008
6948
  },
5009
6949
  m(target, anchor) {
5010
6950
  if (if_block0)
5011
6951
  if_block0.m(target, anchor);
5012
6952
  insert(target, t0, anchor);
5013
- insert(target, button, anchor);
6953
+ insert(target, div, anchor);
6954
+ append(div, button);
5014
6955
  append(button, span5);
5015
6956
  append(span5, span4);
5016
6957
  append(span4, span2);
@@ -5038,7 +6979,10 @@
5038
6979
  append(button, t8);
5039
6980
  if (if_block6)
5040
6981
  if_block6.m(button, null);
5041
- append(button, t9);
6982
+ append(div, t9);
6983
+ if (if_block7)
6984
+ if_block7.m(div, null);
6985
+ append(div, t10);
5042
6986
  current = true;
5043
6987
  if (!mounted) {
5044
6988
  dispose = listen(button, "click", click_handler);
@@ -5053,10 +6997,10 @@
5053
6997
  ctx[1] && /*selectedOptions*/
5054
6998
  ctx[4].includes(
5055
6999
  /*option*/
5056
- ctx[31].id
7000
+ ctx[38].id
5057
7001
  ) && /*correctAnswersLength*/
5058
7002
  ctx[5] === 1 && !/*optionHasMedia*/
5059
- ctx[13] && (!/*isPreviewMode*/
7003
+ ctx[16] && (!/*isPreviewMode*/
5060
7004
  ctx[2] || /*isPreviewMode*/
5061
7005
  ctx[2] && /*isPreviewModeInteractive*/
5062
7006
  ctx[3]);
@@ -5064,7 +7008,7 @@
5064
7008
  if (if_block0) {
5065
7009
  if_block0.p(ctx, dirty);
5066
7010
  } else {
5067
- if_block0 = create_if_block_92(ctx);
7011
+ if_block0 = create_if_block_112(ctx);
5068
7012
  if_block0.c();
5069
7013
  if_block0.m(t0.parentNode, t0);
5070
7014
  }
@@ -5078,10 +7022,10 @@
5078
7022
  ctx[1] && /*selectedOptions*/
5079
7023
  ctx[4].includes(
5080
7024
  /*option*/
5081
- ctx[31].id
7025
+ ctx[38].id
5082
7026
  ) && /*correctAnswersLength*/
5083
7027
  ctx[5] === 1 && /*optionHasMedia*/
5084
- ctx[13] && (!/*isPreviewMode*/
7028
+ ctx[16] && (!/*isPreviewMode*/
5085
7029
  ctx[2] || /*isPreviewMode*/
5086
7030
  ctx[2] && /*isPreviewModeInteractive*/
5087
7031
  ctx[3] && /*selectedOptions*/
@@ -5091,7 +7035,7 @@
5091
7035
  if (if_block1) {
5092
7036
  if_block1.p(ctx, dirty);
5093
7037
  } else {
5094
- if_block1 = create_if_block_82(ctx);
7038
+ if_block1 = create_if_block_102(ctx);
5095
7039
  if_block1.c();
5096
7040
  if_block1.m(span1, t3);
5097
7041
  }
@@ -5105,11 +7049,11 @@
5105
7049
  ctx[1] && /*correctAnswerIds*/
5106
7050
  ctx[6]?.includes(
5107
7051
  /*option*/
5108
- ctx[31].id
7052
+ ctx[38].id
5109
7053
  ) && (!/*selectedOptions*/
5110
7054
  ctx[4].includes(
5111
7055
  /*option*/
5112
- ctx[31].id
7056
+ ctx[38].id
5113
7057
  ) || !/*selectedOptions*/
5114
7058
  ctx[4].length) && (!/*isPreviewModeInteractive*/
5115
7059
  ctx[3] || /*isPreviewModeInteractive*/
@@ -5119,7 +7063,7 @@
5119
7063
  if (show_if_3) {
5120
7064
  if (if_block2) {
5121
7065
  } else {
5122
- if_block2 = create_if_block_72(ctx);
7066
+ if_block2 = create_if_block_92(ctx);
5123
7067
  if_block2.c();
5124
7068
  if_block2.m(span1, t4);
5125
7069
  }
@@ -5133,11 +7077,11 @@
5133
7077
  ctx[1] && /*correctAnswerIds*/
5134
7078
  ctx[6]?.includes(
5135
7079
  /*option*/
5136
- ctx[31].id
7080
+ ctx[38].id
5137
7081
  ) && !/*selectedOptions*/
5138
7082
  ctx[4].includes(
5139
7083
  /*option*/
5140
- ctx[31].id
7084
+ ctx[38].id
5141
7085
  ) && (!/*isPreviewModeInteractive*/
5142
7086
  ctx[3] || /*isPreviewModeInteractive*/
5143
7087
  ctx[3] && /*selectedOptions*/
@@ -5150,7 +7094,7 @@
5150
7094
  transition_in(if_block3, 1);
5151
7095
  }
5152
7096
  } else {
5153
- if_block3 = create_if_block_62(ctx);
7097
+ if_block3 = create_if_block_82(ctx);
5154
7098
  if_block3.c();
5155
7099
  transition_in(if_block3, 1);
5156
7100
  if_block3.m(span3, t6);
@@ -5167,7 +7111,7 @@
5167
7111
  show_if_1 = /*selectedOptions*/
5168
7112
  ctx[4].includes(
5169
7113
  /*option*/
5170
- ctx[31].id
7114
+ ctx[38].id
5171
7115
  ) && /*isFinished*/
5172
7116
  (ctx[1] && !/*isPreviewModeInteractive*/
5173
7117
  ctx[3] || /*isPreviewModeInteractive*/
@@ -5182,7 +7126,7 @@
5182
7126
  transition_in(if_block4, 1);
5183
7127
  }
5184
7128
  } else {
5185
- if_block4 = create_if_block_42(ctx);
7129
+ if_block4 = create_if_block_62(ctx);
5186
7130
  if_block4.c();
5187
7131
  transition_in(if_block4, 1);
5188
7132
  if_block4.m(span3, t7);
@@ -5203,11 +7147,11 @@
5203
7147
  ctx[1] && !/*selectedOptions*/
5204
7148
  ctx[4].includes(
5205
7149
  /*option*/
5206
- ctx[31].id
7150
+ ctx[38].id
5207
7151
  ) && !/*correctAnswerIds*/
5208
7152
  ctx[6].includes(
5209
7153
  /*option*/
5210
- ctx[31].id
7154
+ ctx[38].id
5211
7155
  ) || /*isPreviewModeInteractive*/
5212
7156
  ctx[3]);
5213
7157
  if (show_if) {
@@ -5218,7 +7162,7 @@
5218
7162
  transition_in(if_block5, 1);
5219
7163
  }
5220
7164
  } else {
5221
- if_block5 = create_if_block_24(ctx);
7165
+ if_block5 = create_if_block_42(ctx);
5222
7166
  if_block5.c();
5223
7167
  transition_in(if_block5, 1);
5224
7168
  if_block5.m(span3, null);
@@ -5232,7 +7176,7 @@
5232
7176
  }
5233
7177
  if (
5234
7178
  /*optionHasMedia*/
5235
- ctx[13]
7179
+ ctx[16]
5236
7180
  )
5237
7181
  if_block6.p(ctx, dirty);
5238
7182
  if (!current || dirty[0] & /*correctAnswersLength*/
@@ -5251,7 +7195,7 @@
5251
7195
  /*selectedOptions*/
5252
7196
  ctx[4].includes(
5253
7197
  /*option*/
5254
- ctx[31].id
7198
+ ctx[38].id
5255
7199
  )
5256
7200
  ) : null)) {
5257
7201
  attr(button, "aria-checked", button_aria_checked_value);
@@ -5268,33 +7212,33 @@
5268
7212
  ctx[3]) && /*selectedOptions*/
5269
7213
  ctx[4].includes(
5270
7214
  /*option*/
5271
- ctx[31].id
7215
+ ctx[38].id
5272
7216
  ) ? "Selected " : ""}${`Option ${useMCQ_default(
5273
7217
  /*index*/
5274
- ctx[33]
7218
+ ctx[40]
5275
7219
  )}`}: ${useRemoveRichTextHtmlTags(
5276
7220
  /*option*/
5277
- ctx[31].answer
7221
+ ctx[38].answer
5278
7222
  )} ${func()}`)) {
5279
7223
  attr(button, "aria-label", button_aria_label_value);
5280
7224
  }
5281
7225
  if (!current || dirty[0] & /*isFinished, isPreviewModeInteractive, selectedOptions, correctAnswerIds, correctAnswersLength, isPreviewMode*/
5282
7226
  126 && button_class_value !== (button_class_value = "group btn-mcq-option " + /*optionHasMedia*/
5283
- (ctx[13] ? "min-w-[288px] max-w-[304px] min-h-[210px] md:min-w-full block" : "") + " " + (!/*isFinished*/
7227
+ (ctx[16] ? "min-w-[288px] max-w-[304px] min-h-[210px] md:min-w-full block" : "") + " " + (!/*isFinished*/
5284
7228
  ctx[1] || /*isPreviewModeInteractive*/
5285
7229
  ctx[3] ? "active:raw-focus-ring-by" : "finished") + " " + /*selectedOptions*/
5286
7230
  (ctx[4].includes(
5287
7231
  /*option*/
5288
- ctx[31].id
7232
+ ctx[38].id
5289
7233
  ) ? "selected" : "") + " " + /*isFinished*/
5290
7234
  (ctx[1] && /*correctAnswerIds*/
5291
7235
  ctx[6]?.includes(
5292
7236
  /*option*/
5293
- ctx[31].id
7237
+ ctx[38].id
5294
7238
  ) && (!/*selectedOptions*/
5295
7239
  ctx[4].includes(
5296
7240
  /*option*/
5297
- ctx[31].id
7241
+ ctx[38].id
5298
7242
  ) || !/*selectedOptions*/
5299
7243
  ctx[4].length) && (!/*isPreviewModeInteractive*/
5300
7244
  ctx[3] || /*isPreviewModeInteractive*/
@@ -5310,11 +7254,11 @@
5310
7254
  ctx[3] && /*selectedOptions*/
5311
7255
  ctx[4].includes(
5312
7256
  /*option*/
5313
- ctx[31].id
7257
+ ctx[38].id
5314
7258
  )) && /*correctAnswerIds*/
5315
7259
  ctx[6].includes(
5316
7260
  /*option*/
5317
- ctx[31].id
7261
+ ctx[38].id
5318
7262
  ) ? "correct" : (
5319
7263
  /*isFinished*/
5320
7264
  ctx[1] && !/*isPreviewModeInteractive*/
@@ -5323,9 +7267,14 @@
5323
7267
  ctx[4].length === /*correctAnswersLength*/
5324
7268
  ctx[5] ? "incorrect" : ""
5325
7269
  )) + " " + /*isPreviewModeInteractive*/
5326
- (ctx[3] ? "interactive" : "") + " svelte-1sgrg21")) {
7270
+ (ctx[3] ? "interactive" : ""))) {
5327
7271
  attr(button, "class", button_class_value);
5328
7272
  }
7273
+ if (
7274
+ /*optionHasMedia*/
7275
+ ctx[16]
7276
+ )
7277
+ if_block7.p(ctx, dirty);
5329
7278
  },
5330
7279
  i(local) {
5331
7280
  if (current)
@@ -5334,6 +7283,7 @@
5334
7283
  transition_in(if_block3);
5335
7284
  transition_in(if_block4);
5336
7285
  transition_in(if_block5);
7286
+ transition_in(if_block7);
5337
7287
  current = true;
5338
7288
  },
5339
7289
  o(local) {
@@ -5341,12 +7291,13 @@
5341
7291
  transition_out(if_block3);
5342
7292
  transition_out(if_block4);
5343
7293
  transition_out(if_block5);
7294
+ transition_out(if_block7);
5344
7295
  current = false;
5345
7296
  },
5346
7297
  d(detaching) {
5347
7298
  if (detaching) {
5348
7299
  detach(t0);
5349
- detach(button);
7300
+ detach(div);
5350
7301
  }
5351
7302
  if (if_block0)
5352
7303
  if_block0.d(detaching);
@@ -5363,12 +7314,14 @@
5363
7314
  if_block5.d();
5364
7315
  if (if_block6)
5365
7316
  if_block6.d();
7317
+ if (if_block7)
7318
+ if_block7.d();
5366
7319
  mounted = false;
5367
7320
  dispose();
5368
7321
  }
5369
7322
  };
5370
7323
  }
5371
- function create_default_slot(ctx) {
7324
+ function create_default_slot2(ctx) {
5372
7325
  let div1;
5373
7326
  let div0;
5374
7327
  let t2;
@@ -5376,11 +7329,11 @@
5376
7329
  let current;
5377
7330
  let if_block0 = (
5378
7331
  /*isFeedbackShown*/
5379
- ctx[8] && create_if_block_102(ctx)
7332
+ ctx[10] && create_if_block_122(ctx)
5380
7333
  );
5381
7334
  let if_block1 = (
5382
7335
  /*options*/
5383
- ctx[12] && create_if_block6(ctx)
7336
+ ctx[15] && create_if_block_14(ctx)
5384
7337
  );
5385
7338
  return {
5386
7339
  c() {
@@ -5392,10 +7345,8 @@
5392
7345
  if (if_block1)
5393
7346
  if_block1.c();
5394
7347
  attr(div0, "aria-live", "polite");
5395
- attr(div1, "class", div1_class_value = null_to_empty(
5396
- /*dynamicInteractionWidth*/
5397
- ctx[30]
5398
- ) + " svelte-1sgrg21");
7348
+ attr(div1, "class", div1_class_value = /*dynamicInteractionWidth*/
7349
+ ctx[37]);
5399
7350
  },
5400
7351
  m(target, anchor) {
5401
7352
  insert(target, div1, anchor);
@@ -5410,16 +7361,16 @@
5410
7361
  p(ctx2, dirty) {
5411
7362
  if (
5412
7363
  /*isFeedbackShown*/
5413
- ctx2[8]
7364
+ ctx2[10]
5414
7365
  ) {
5415
7366
  if (if_block0) {
5416
7367
  if_block0.p(ctx2, dirty);
5417
7368
  if (dirty[0] & /*isFeedbackShown*/
5418
- 256) {
7369
+ 1024) {
5419
7370
  transition_in(if_block0, 1);
5420
7371
  }
5421
7372
  } else {
5422
- if_block0 = create_if_block_102(ctx2);
7373
+ if_block0 = create_if_block_122(ctx2);
5423
7374
  if_block0.c();
5424
7375
  transition_in(if_block0, 1);
5425
7376
  if_block0.m(div0, null);
@@ -5433,14 +7384,12 @@
5433
7384
  }
5434
7385
  if (
5435
7386
  /*options*/
5436
- ctx2[12]
7387
+ ctx2[15]
5437
7388
  )
5438
7389
  if_block1.p(ctx2, dirty);
5439
- if (!current || dirty[0] & /*dynamicInteractionWidth*/
5440
- 1073741824 && div1_class_value !== (div1_class_value = null_to_empty(
5441
- /*dynamicInteractionWidth*/
5442
- ctx2[30]
5443
- ) + " svelte-1sgrg21")) {
7390
+ if (!current || dirty[1] & /*dynamicInteractionWidth*/
7391
+ 64 && div1_class_value !== (div1_class_value = /*dynamicInteractionWidth*/
7392
+ ctx2[37])) {
5444
7393
  attr(div1, "class", div1_class_value);
5445
7394
  }
5446
7395
  },
@@ -5467,67 +7416,181 @@
5467
7416
  }
5468
7417
  };
5469
7418
  }
5470
- function create_fragment6(ctx) {
7419
+ function create_if_block8(ctx) {
7420
+ let promptmcqimagemodal;
7421
+ let current;
7422
+ promptmcqimagemodal = new PromptMCQImageModal_default({
7423
+ props: {
7424
+ isOpen: (
7425
+ /*imageModalData*/
7426
+ ctx[8].isModalOpen
7427
+ ),
7428
+ options: (
7429
+ /*optionArray*/
7430
+ ctx[11]
7431
+ ),
7432
+ currentIndex: (
7433
+ /*currentOptionIndex*/
7434
+ ctx[9]
7435
+ )
7436
+ }
7437
+ });
7438
+ promptmcqimagemodal.$on(
7439
+ "close",
7440
+ /*closeImageModal*/
7441
+ ctx[21]
7442
+ );
7443
+ promptmcqimagemodal.$on(
7444
+ "navigate",
7445
+ /*handleModalNavigation*/
7446
+ ctx[22]
7447
+ );
7448
+ return {
7449
+ c() {
7450
+ create_component(promptmcqimagemodal.$$.fragment);
7451
+ },
7452
+ m(target, anchor) {
7453
+ mount_component(promptmcqimagemodal, target, anchor);
7454
+ current = true;
7455
+ },
7456
+ p(ctx2, dirty) {
7457
+ const promptmcqimagemodal_changes = {};
7458
+ if (dirty[0] & /*imageModalData*/
7459
+ 256)
7460
+ promptmcqimagemodal_changes.isOpen = /*imageModalData*/
7461
+ ctx2[8].isModalOpen;
7462
+ if (dirty[0] & /*optionArray*/
7463
+ 2048)
7464
+ promptmcqimagemodal_changes.options = /*optionArray*/
7465
+ ctx2[11];
7466
+ if (dirty[0] & /*currentOptionIndex*/
7467
+ 512)
7468
+ promptmcqimagemodal_changes.currentIndex = /*currentOptionIndex*/
7469
+ ctx2[9];
7470
+ promptmcqimagemodal.$set(promptmcqimagemodal_changes);
7471
+ },
7472
+ i(local) {
7473
+ if (current)
7474
+ return;
7475
+ transition_in(promptmcqimagemodal.$$.fragment, local);
7476
+ current = true;
7477
+ },
7478
+ o(local) {
7479
+ transition_out(promptmcqimagemodal.$$.fragment, local);
7480
+ current = false;
7481
+ },
7482
+ d(detaching) {
7483
+ destroy_component(promptmcqimagemodal, detaching);
7484
+ }
7485
+ };
7486
+ }
7487
+ function create_fragment9(ctx) {
5471
7488
  let promptbody;
7489
+ let t2;
7490
+ let if_block_anchor;
5472
7491
  let current;
5473
7492
  promptbody = new PromptBody_default({
5474
7493
  props: {
5475
7494
  rubric: (
5476
7495
  /*rubric*/
5477
- ctx[9].text
7496
+ ctx[12].text
5478
7497
  ),
5479
7498
  prompt: (
5480
7499
  /*prompt*/
5481
- ctx[11]
7500
+ ctx[14]
5482
7501
  ),
5483
7502
  interactionType: INTERACTION_TYPE_MCQ,
5484
7503
  stimulus: (
5485
7504
  /*stimulus*/
5486
- ctx[10]
7505
+ ctx[13]
5487
7506
  ),
5488
7507
  $$slots: {
5489
7508
  default: [
5490
- create_default_slot,
5491
- ({ dynamicInteractionWidth }) => ({ 30: dynamicInteractionWidth }),
5492
- ({ dynamicInteractionWidth }) => [dynamicInteractionWidth ? 1073741824 : 0]
7509
+ create_default_slot2,
7510
+ ({ dynamicInteractionWidth }) => ({ 37: dynamicInteractionWidth }),
7511
+ ({ dynamicInteractionWidth }) => [0, dynamicInteractionWidth ? 64 : 0]
5493
7512
  ]
5494
7513
  },
5495
7514
  $$scope: { ctx }
5496
7515
  }
5497
7516
  });
7517
+ let if_block = (
7518
+ /*imageModalData*/
7519
+ ctx[8].isModalOpen && create_if_block8(ctx)
7520
+ );
5498
7521
  return {
5499
7522
  c() {
5500
7523
  create_component(promptbody.$$.fragment);
7524
+ t2 = space();
7525
+ if (if_block)
7526
+ if_block.c();
7527
+ if_block_anchor = empty();
5501
7528
  },
5502
7529
  m(target, anchor) {
5503
7530
  mount_component(promptbody, target, anchor);
7531
+ insert(target, t2, anchor);
7532
+ if (if_block)
7533
+ if_block.m(target, anchor);
7534
+ insert(target, if_block_anchor, anchor);
5504
7535
  current = true;
5505
7536
  },
5506
7537
  p(ctx2, dirty) {
5507
7538
  const promptbody_changes = {};
5508
- if (dirty[0] & /*dynamicInteractionWidth, correctAnswersLength, selectedOptions, isFinished, isPreviewModeInteractive, isPreviewMode, correctAnswerIds, isDataSaving, resultFeedback, isFeedbackShown*/
5509
- 1073742335 | dirty[1] & /*$$scope*/
5510
- 8) {
7539
+ if (dirty[0] & /*correctAnswersLength, selectedOptions, isFinished, isPreviewModeInteractive, isPreviewMode, correctAnswerIds, isDataSaving, resultFeedback, isFeedbackShown*/
7540
+ 1279 | dirty[1] & /*$$scope, dynamicInteractionWidth*/
7541
+ 1088) {
5511
7542
  promptbody_changes.$$scope = { dirty, ctx: ctx2 };
5512
7543
  }
5513
- promptbody.$set(promptbody_changes);
7544
+ promptbody.$set(promptbody_changes);
7545
+ if (
7546
+ /*imageModalData*/
7547
+ ctx2[8].isModalOpen
7548
+ ) {
7549
+ if (if_block) {
7550
+ if_block.p(ctx2, dirty);
7551
+ if (dirty[0] & /*imageModalData*/
7552
+ 256) {
7553
+ transition_in(if_block, 1);
7554
+ }
7555
+ } else {
7556
+ if_block = create_if_block8(ctx2);
7557
+ if_block.c();
7558
+ transition_in(if_block, 1);
7559
+ if_block.m(if_block_anchor.parentNode, if_block_anchor);
7560
+ }
7561
+ } else if (if_block) {
7562
+ group_outros();
7563
+ transition_out(if_block, 1, 1, () => {
7564
+ if_block = null;
7565
+ });
7566
+ check_outros();
7567
+ }
5514
7568
  },
5515
7569
  i(local) {
5516
7570
  if (current)
5517
7571
  return;
5518
7572
  transition_in(promptbody.$$.fragment, local);
7573
+ transition_in(if_block);
5519
7574
  current = true;
5520
7575
  },
5521
7576
  o(local) {
5522
7577
  transition_out(promptbody.$$.fragment, local);
7578
+ transition_out(if_block);
5523
7579
  current = false;
5524
7580
  },
5525
7581
  d(detaching) {
7582
+ if (detaching) {
7583
+ detach(t2);
7584
+ detach(if_block_anchor);
7585
+ }
5526
7586
  destroy_component(promptbody, detaching);
7587
+ if (if_block)
7588
+ if_block.d(detaching);
5527
7589
  }
5528
7590
  };
5529
7591
  }
5530
- function instance6($$self, $$props, $$invalidate) {
7592
+ function instance9($$self, $$props, $$invalidate) {
7593
+ let optionArray;
5531
7594
  let isFeedbackShown;
5532
7595
  let { sessionData } = $$props;
5533
7596
  let { isDataSaving } = $$props;
@@ -5544,7 +7607,9 @@
5544
7607
  let answerIds2 = [];
5545
7608
  let correctAnswerIds = [];
5546
7609
  let interactiveHasAnswered = false;
5547
- const dispatch = createEventDispatcher();
7610
+ let imageModalData = { isModalOpen: false, modalAriaLabel: "" };
7611
+ let currentOptionIndex = 0;
7612
+ const dispatch2 = createEventDispatcher();
5548
7613
  if (metadata) {
5549
7614
  const { events } = metadata.interactions;
5550
7615
  const currentOption = events.pop();
@@ -5596,7 +7661,7 @@
5596
7661
  }
5597
7662
  $$invalidate(4, selectedOptions = [...selectedOptions]);
5598
7663
  selectedChoices = [...selectedChoices];
5599
- dispatch("saveOption", {
7664
+ dispatch2("saveOption", {
5600
7665
  answer_id: [...selectedOptions],
5601
7666
  answer_choice: [...selectedChoices]
5602
7667
  });
@@ -5605,13 +7670,13 @@
5605
7670
  return;
5606
7671
  $$invalidate(4, selectedOptions = [optionId]);
5607
7672
  option = useRemoveRichTextHtmlTags(option);
5608
- dispatch("saveOption", {
7673
+ dispatch2("saveOption", {
5609
7674
  answer_id: [optionId],
5610
7675
  answer_choice: [useRemoveRichTextHtmlTags(option)]
5611
7676
  });
5612
7677
  }
5613
7678
  if (isPreviewModeInteractive) {
5614
- $$invalidate(18, interactiveHasAnswered = true);
7679
+ $$invalidate(24, interactiveHasAnswered = true);
5615
7680
  $$invalidate(7, resultFeedback = null);
5616
7681
  if (correctAnswersLength === selectedOptions.length) {
5617
7682
  tick().then(() => {
@@ -5620,6 +7685,20 @@
5620
7685
  }
5621
7686
  }
5622
7687
  };
7688
+ const openImageModal = (index, event) => {
7689
+ event.stopPropagation();
7690
+ $$invalidate(9, currentOptionIndex = index);
7691
+ $$invalidate(8, imageModalData = {
7692
+ isModalOpen: true,
7693
+ modalAriaLabel: "Image viewer"
7694
+ });
7695
+ };
7696
+ const closeImageModal = () => {
7697
+ $$invalidate(8, imageModalData = { isModalOpen: false, modalAriaLabel: "" });
7698
+ };
7699
+ const handleModalNavigation = ({ detail }) => {
7700
+ $$invalidate(9, currentOptionIndex = detail.index);
7701
+ };
5623
7702
  const func = (option) => {
5624
7703
  if (isFinished && !isPreviewMode && !isPreviewModeInteractive) {
5625
7704
  if (correctAnswerIds.includes(option.id)) {
@@ -5641,9 +7720,10 @@
5641
7720
  return "";
5642
7721
  };
5643
7722
  const click_handler = (option) => handleOptionClick(option.id, option.answer);
7723
+ const click_handler_1 = (index, e2) => openImageModal(index, e2);
5644
7724
  $$self.$$set = ($$props2) => {
5645
7725
  if ("sessionData" in $$props2)
5646
- $$invalidate(17, sessionData = $$props2.sessionData);
7726
+ $$invalidate(23, sessionData = $$props2.sessionData);
5647
7727
  if ("isDataSaving" in $$props2)
5648
7728
  $$invalidate(0, isDataSaving = $$props2.isDataSaving);
5649
7729
  if ("isFinished" in $$props2)
@@ -5655,11 +7735,13 @@
5655
7735
  };
5656
7736
  $$self.$$.update = () => {
5657
7737
  if ($$self.$$.dirty[0] & /*isFinished, isPreviewModeInteractive, selectedOptions, correctAnswerIds, correctAnswersLength, interactiveHasAnswered*/
5658
- 262266) {
7738
+ 16777338) {
5659
7739
  $:
5660
- $$invalidate(8, isFeedbackShown = isFinished && !isPreviewModeInteractive && (!isResultCorrect(selectedOptions, correctAnswerIds) || !selectedOptions.length) || isPreviewModeInteractive && (selectedOptions.length === correctAnswersLength || !selectedOptions.length && interactiveHasAnswered));
7740
+ $$invalidate(10, isFeedbackShown = isFinished && !isPreviewModeInteractive && (!isResultCorrect(selectedOptions, correctAnswerIds) || !selectedOptions.length) || isPreviewModeInteractive && (selectedOptions.length === correctAnswersLength || !selectedOptions.length && interactiveHasAnswered));
5661
7741
  }
5662
7742
  };
7743
+ $:
7744
+ $$invalidate(11, optionArray = options ? Object.values(options) : []);
5663
7745
  return [
5664
7746
  isDataSaving,
5665
7747
  isFinished,
@@ -5669,7 +7751,10 @@
5669
7751
  correctAnswersLength,
5670
7752
  correctAnswerIds,
5671
7753
  resultFeedback,
7754
+ imageModalData,
7755
+ currentOptionIndex,
5672
7756
  isFeedbackShown,
7757
+ optionArray,
5673
7758
  rubric,
5674
7759
  stimulus,
5675
7760
  prompt,
@@ -5678,10 +7763,14 @@
5678
7763
  isResultCorrect,
5679
7764
  isSkipped,
5680
7765
  handleOptionClick,
7766
+ openImageModal,
7767
+ closeImageModal,
7768
+ handleModalNavigation,
5681
7769
  sessionData,
5682
7770
  interactiveHasAnswered,
5683
7771
  func,
5684
- click_handler
7772
+ click_handler,
7773
+ click_handler_1
5685
7774
  ];
5686
7775
  }
5687
7776
  var PromptMCQ = class extends SvelteComponent {
@@ -5690,22 +7779,22 @@
5690
7779
  init(
5691
7780
  this,
5692
7781
  options,
5693
- instance6,
5694
- create_fragment6,
7782
+ instance9,
7783
+ create_fragment9,
5695
7784
  safe_not_equal,
5696
7785
  {
5697
- sessionData: 17,
7786
+ sessionData: 23,
5698
7787
  isDataSaving: 0,
5699
7788
  isFinished: 1,
5700
7789
  isPreviewMode: 2,
5701
7790
  isPreviewModeInteractive: 3
5702
7791
  },
5703
- add_css,
7792
+ null,
5704
7793
  [-1, -1]
5705
7794
  );
5706
7795
  }
5707
7796
  get sessionData() {
5708
- return this.$$.ctx[17];
7797
+ return this.$$.ctx[23];
5709
7798
  }
5710
7799
  set sessionData(sessionData) {
5711
7800
  this.$$set({ sessionData });
@@ -5816,7 +7905,7 @@
5816
7905
  var svelte_autosize_default = action;
5817
7906
 
5818
7907
  // src/lib/components/common/InvalidBanner.svelte
5819
- function create_fragment7(ctx) {
7908
+ function create_fragment10(ctx) {
5820
7909
  let p;
5821
7910
  let t2;
5822
7911
  return {
@@ -5850,7 +7939,7 @@
5850
7939
  }
5851
7940
  };
5852
7941
  }
5853
- function instance7($$self, $$props, $$invalidate) {
7942
+ function instance10($$self, $$props, $$invalidate) {
5854
7943
  let { bannerLabel: bannerLabel2 = "Invalid." } = $$props;
5855
7944
  $$self.$$set = ($$props2) => {
5856
7945
  if ("bannerLabel" in $$props2)
@@ -5861,7 +7950,7 @@
5861
7950
  var InvalidBanner = class extends SvelteComponent {
5862
7951
  constructor(options) {
5863
7952
  super();
5864
- init(this, options, instance7, create_fragment7, safe_not_equal, { bannerLabel: 0 });
7953
+ init(this, options, instance10, create_fragment10, safe_not_equal, { bannerLabel: 0 });
5865
7954
  }
5866
7955
  get bannerLabel() {
5867
7956
  return this.$$.ctx[0];
@@ -6328,7 +8417,7 @@
6328
8417
  }
6329
8418
  };
6330
8419
  }
6331
- function create_if_block7(ctx) {
8420
+ function create_if_block9(ctx) {
6332
8421
  let t0;
6333
8422
  let div;
6334
8423
  let t1;
@@ -7416,7 +9505,7 @@
7416
9505
  }
7417
9506
  };
7418
9507
  }
7419
- function create_default_slot2(ctx) {
9508
+ function create_default_slot3(ctx) {
7420
9509
  let div;
7421
9510
  let current_block_type_index;
7422
9511
  let if_block0;
@@ -7442,7 +9531,7 @@
7442
9531
  if_block0 = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
7443
9532
  let if_block1 = (
7444
9533
  /*isFinished*/
7445
- ctx[0] && create_if_block7(ctx)
9534
+ ctx[0] && create_if_block9(ctx)
7446
9535
  );
7447
9536
  return {
7448
9537
  c() {
@@ -7475,7 +9564,7 @@
7475
9564
  transition_in(if_block1, 1);
7476
9565
  }
7477
9566
  } else {
7478
- if_block1 = create_if_block7(ctx2);
9567
+ if_block1 = create_if_block9(ctx2);
7479
9568
  if_block1.c();
7480
9569
  transition_in(if_block1, 1);
7481
9570
  if_block1.m(div, null);
@@ -7515,7 +9604,7 @@
7515
9604
  }
7516
9605
  };
7517
9606
  }
7518
- function create_fragment8(ctx) {
9607
+ function create_fragment11(ctx) {
7519
9608
  let promptbody;
7520
9609
  let current;
7521
9610
  promptbody = new PromptBody_default({
@@ -7539,7 +9628,7 @@
7539
9628
  ),
7540
9629
  $$slots: {
7541
9630
  default: [
7542
- create_default_slot2,
9631
+ create_default_slot3,
7543
9632
  ({ dynamicInteractionWidth }) => ({ 59: dynamicInteractionWidth }),
7544
9633
  ({ dynamicInteractionWidth }) => [0, dynamicInteractionWidth ? 268435456 : 0]
7545
9634
  ]
@@ -7585,7 +9674,7 @@
7585
9674
  };
7586
9675
  }
7587
9676
  var idLabel = "answerText";
7588
- function instance8($$self, $$props, $$invalidate) {
9677
+ function instance11($$self, $$props, $$invalidate) {
7589
9678
  let { sessionData } = $$props;
7590
9679
  let { isDataSaving } = $$props;
7591
9680
  let { isFinished = false } = $$props;
@@ -7594,7 +9683,7 @@
7594
9683
  let { isPreviewModeInteractive = false } = $$props;
7595
9684
  let { isPreviewCheckedAnswer = false } = $$props;
7596
9685
  let { sessionId } = $$props;
7597
- const dispatch = createEventDispatcher();
9686
+ const dispatch2 = createEventDispatcher();
7598
9687
  let root;
7599
9688
  let inlineInputs;
7600
9689
  let typeinAnswer;
@@ -7685,7 +9774,7 @@
7685
9774
  );
7686
9775
  }
7687
9776
  } else {
7688
- dispatch("saveAnswer", {
9777
+ dispatch2("saveAnswer", {
7689
9778
  answer: allEmpty ? [] : inlineTypeinAnswer
7690
9779
  });
7691
9780
  }
@@ -7818,7 +9907,7 @@
7818
9907
  if (isDataSaving || typeinAnswer === latestAnswer || !typeinAnswer && !latestAnswer)
7819
9908
  return;
7820
9909
  latestAnswer = typeinAnswer;
7821
- dispatch("saveAnswer", { answer: [typeinAnswer || ""] });
9910
+ dispatch2("saveAnswer", { answer: [typeinAnswer || ""] });
7822
9911
  };
7823
9912
  const saveOnEnter = (event) => {
7824
9913
  if (event.key === "Enter") {
@@ -7935,8 +10024,8 @@
7935
10024
  init(
7936
10025
  this,
7937
10026
  options,
7938
- instance8,
7939
- create_fragment8,
10027
+ instance11,
10028
+ create_fragment11,
7940
10029
  safe_not_equal,
7941
10030
  {
7942
10031
  sessionData: 30,
@@ -10162,7 +12251,7 @@
10162
12251
  }
10163
12252
  };
10164
12253
  }
10165
- function create_if_block8(ctx) {
12254
+ function create_if_block10(ctx) {
10166
12255
  let span;
10167
12256
  let svgloader;
10168
12257
  let current;
@@ -10201,7 +12290,7 @@
10201
12290
  }
10202
12291
  };
10203
12292
  }
10204
- function create_fragment9(ctx) {
12293
+ function create_fragment12(ctx) {
10205
12294
  let button;
10206
12295
  let span0;
10207
12296
  let commonstringtohtml;
@@ -10252,7 +12341,7 @@
10252
12341
  let if_block1 = (
10253
12342
  /*resultType*/
10254
12343
  (ctx[0] === ANSWER_CORRECT || /*resultType*/
10255
- ctx[0] === ANSWER_INCORRECT) && create_if_block8(ctx)
12344
+ ctx[0] === ANSWER_INCORRECT) && create_if_block10(ctx)
10256
12345
  );
10257
12346
  return {
10258
12347
  c() {
@@ -10422,7 +12511,7 @@
10422
12511
  transition_in(if_block1, 1);
10423
12512
  }
10424
12513
  } else {
10425
- if_block1 = create_if_block8(ctx);
12514
+ if_block1 = create_if_block10(ctx);
10426
12515
  if_block1.c();
10427
12516
  transition_in(if_block1, 1);
10428
12517
  if_block1.m(span2, null);
@@ -10522,7 +12611,7 @@
10522
12611
  }
10523
12612
  };
10524
12613
  }
10525
- function instance9($$self, $$props, $$invalidate) {
12614
+ function instance12($$self, $$props, $$invalidate) {
10526
12615
  let { word = "" } = $$props;
10527
12616
  let { resultType = "" } = $$props;
10528
12617
  let { otherClass = "" } = $$props;
@@ -10534,7 +12623,7 @@
10534
12623
  let { isPreviewModeInteractive = false } = $$props;
10535
12624
  let { categoryData = [] } = $$props;
10536
12625
  let { correctAnswerList = [] } = $$props;
10537
- const dispatch = createEventDispatcher();
12626
+ const dispatch2 = createEventDispatcher();
10538
12627
  let considerCloneItemId = "";
10539
12628
  let currentSelectedItemId = "";
10540
12629
  let isWordItemSelected = false;
@@ -10543,7 +12632,7 @@
10543
12632
  let ariaWord = useRemoveRichTextHtmlTags(word);
10544
12633
  const updateCategoryData = (newSettings) => {
10545
12634
  $$invalidate(14, categoryData = { ...categoryData, ...newSettings });
10546
- dispatch("updateCategorySettings", categoryData);
12635
+ dispatch2("updateCategorySettings", categoryData);
10547
12636
  };
10548
12637
  const selectItem = (itemId) => {
10549
12638
  if (isSelecItemFunctionCalled || disabledClick) {
@@ -10678,7 +12767,7 @@
10678
12767
  var PromptCategoriseWordButton = class extends SvelteComponent {
10679
12768
  constructor(options) {
10680
12769
  super();
10681
- init(this, options, instance9, create_fragment9, safe_not_equal, {
12770
+ init(this, options, instance12, create_fragment12, safe_not_equal, {
10682
12771
  word: 1,
10683
12772
  resultType: 0,
10684
12773
  otherClass: 2,
@@ -10901,7 +12990,7 @@
10901
12990
  }
10902
12991
  };
10903
12992
  }
10904
- function create_if_block9(ctx) {
12993
+ function create_if_block11(ctx) {
10905
12994
  let button;
10906
12995
  let t2;
10907
12996
  let button_class_value;
@@ -10940,7 +13029,7 @@
10940
13029
  let current;
10941
13030
  let if_block = (
10942
13031
  /*item*/
10943
- ctx[39].type === ANSWER_MISSED && create_if_block9(ctx)
13032
+ ctx[39].type === ANSWER_MISSED && create_if_block11(ctx)
10944
13033
  );
10945
13034
  promptcategorisewordbutton = new PromptCategoriseWordButton_default({
10946
13035
  props: {
@@ -11032,7 +13121,7 @@
11032
13121
  if (if_block) {
11033
13122
  if_block.p(ctx, dirty);
11034
13123
  } else {
11035
- if_block = create_if_block9(ctx);
13124
+ if_block = create_if_block11(ctx);
11036
13125
  if_block.c();
11037
13126
  if_block.m(t2.parentNode, t2);
11038
13127
  }
@@ -11119,7 +13208,7 @@
11119
13208
  }
11120
13209
  };
11121
13210
  }
11122
- function create_fragment10(ctx) {
13211
+ function create_fragment13(ctx) {
11123
13212
  let t0;
11124
13213
  let t1;
11125
13214
  let section;
@@ -11395,7 +13484,7 @@
11395
13484
  }
11396
13485
  };
11397
13486
  }
11398
- function instance10($$self, $$props, $$invalidate) {
13487
+ function instance13($$self, $$props, $$invalidate) {
11399
13488
  let { containerClass = "" } = $$props;
11400
13489
  let { flipDurationMs = 5 } = $$props;
11401
13490
  let { containerId = "" } = $$props;
@@ -11422,13 +13511,13 @@
11422
13511
  let isModalOpen = false;
11423
13512
  let items = [];
11424
13513
  let isItemsAriaHidden = false;
11425
- const dispatch = createEventDispatcher();
13514
+ const dispatch2 = createEventDispatcher();
11426
13515
  const dropTargetClasses = ["!outline-none"];
11427
13516
  const isContainerWordBin = containerId === CONTAINER_WORD_BIN_ID;
11428
13517
  const { rawCategoryItems } = categoryData;
11429
13518
  const updateCategoryData = (newSettings) => {
11430
13519
  $$invalidate(0, categoryData = { ...categoryData, ...newSettings });
11431
- dispatch("updateCategorySettings", categoryData);
13520
+ dispatch2("updateCategorySettings", categoryData);
11432
13521
  };
11433
13522
  const handleDndConsider = (e2) => {
11434
13523
  const { detail, srcElement } = e2;
@@ -11518,7 +13607,7 @@
11518
13607
  });
11519
13608
  updateCategoryData({ currentAnswer: answerResult });
11520
13609
  } else {
11521
- dispatch("saveCategory", { answer_list: categoryAnswer });
13610
+ dispatch2("saveCategory", { answer_list: categoryAnswer });
11522
13611
  }
11523
13612
  };
11524
13613
  const resetCategoriesSettings = () => {
@@ -11740,8 +13829,8 @@
11740
13829
  init(
11741
13830
  this,
11742
13831
  options,
11743
- instance10,
11744
- create_fragment10,
13832
+ instance13,
13833
+ create_fragment13,
11745
13834
  safe_not_equal,
11746
13835
  {
11747
13836
  containerClass: 2,
@@ -11857,186 +13946,8 @@
11857
13946
  customElements.define("prompt-categorise-dnd-container", create_custom_element(PromptCategoriseDndContainer, { "containerClass": {}, "flipDurationMs": {}, "containerId": {}, "type": {}, "showButton": { "type": "Boolean" }, "paddingTop": {}, "ariaLabel": {}, "isFinished": { "type": "Boolean" }, "correctAnswerList": {}, "isPreviewModeInteractive": { "type": "Boolean" }, "categoryData": {}, "modalData": {}, "isDataSaving": { "type": "Boolean" } }, [], [], true));
11858
13947
  var PromptCategoriseDndContainer_default = PromptCategoriseDndContainer;
11859
13948
 
11860
- // src/lib/components/common/CommonModal.svelte
11861
- function create_fragment11(ctx) {
11862
- let div2;
11863
- let div0;
11864
- let t2;
11865
- let div1;
11866
- let div2_aria_hidden_value;
11867
- let current;
11868
- let mounted;
11869
- let dispose;
11870
- const default_slot_template = (
11871
- /*#slots*/
11872
- ctx[5].default
11873
- );
11874
- const default_slot = create_slot(
11875
- default_slot_template,
11876
- ctx,
11877
- /*$$scope*/
11878
- ctx[4],
11879
- null
11880
- );
11881
- return {
11882
- c() {
11883
- div2 = element("div");
11884
- div0 = element("div");
11885
- t2 = space();
11886
- div1 = element("div");
11887
- if (default_slot)
11888
- default_slot.c();
11889
- attr(div0, "role", "button");
11890
- attr(div0, "aria-label", "Close modal");
11891
- attr(div0, "tabindex", "-1");
11892
- attr(div0, "aria-hidden", "true");
11893
- attr(div0, "class", "blanket-overlay h-full");
11894
- attr(div1, "class", "z-10");
11895
- attr(div2, "role", "dialog");
11896
- attr(div2, "aria-modal", "true");
11897
- attr(div2, "tabindex", "-1");
11898
- attr(div2, "class", "fixed inset-0 z-50 focus:outline-transparent");
11899
- attr(
11900
- div2,
11901
- "aria-label",
11902
- /*modalAriaLabel*/
11903
- ctx[0]
11904
- );
11905
- attr(div2, "aria-hidden", div2_aria_hidden_value = !/*isModalOpen*/
11906
- ctx[1]);
11907
- },
11908
- m(target, anchor) {
11909
- insert(target, div2, anchor);
11910
- append(div2, div0);
11911
- append(div2, t2);
11912
- append(div2, div1);
11913
- if (default_slot) {
11914
- default_slot.m(div1, null);
11915
- }
11916
- current = true;
11917
- if (!mounted) {
11918
- dispose = [
11919
- listen(
11920
- div0,
11921
- "click",
11922
- /*clickModalBackground*/
11923
- ctx[2]
11924
- ),
11925
- listen(div0, "keypress", keypress_handler)
11926
- ];
11927
- mounted = true;
11928
- }
11929
- },
11930
- p(ctx2, [dirty]) {
11931
- if (default_slot) {
11932
- if (default_slot.p && (!current || dirty & /*$$scope*/
11933
- 16)) {
11934
- update_slot_base(
11935
- default_slot,
11936
- default_slot_template,
11937
- ctx2,
11938
- /*$$scope*/
11939
- ctx2[4],
11940
- !current ? get_all_dirty_from_scope(
11941
- /*$$scope*/
11942
- ctx2[4]
11943
- ) : get_slot_changes(
11944
- default_slot_template,
11945
- /*$$scope*/
11946
- ctx2[4],
11947
- dirty,
11948
- null
11949
- ),
11950
- null
11951
- );
11952
- }
11953
- }
11954
- if (!current || dirty & /*modalAriaLabel*/
11955
- 1) {
11956
- attr(
11957
- div2,
11958
- "aria-label",
11959
- /*modalAriaLabel*/
11960
- ctx2[0]
11961
- );
11962
- }
11963
- if (!current || dirty & /*isModalOpen*/
11964
- 2 && div2_aria_hidden_value !== (div2_aria_hidden_value = !/*isModalOpen*/
11965
- ctx2[1])) {
11966
- attr(div2, "aria-hidden", div2_aria_hidden_value);
11967
- }
11968
- },
11969
- i(local) {
11970
- if (current)
11971
- return;
11972
- transition_in(default_slot, local);
11973
- current = true;
11974
- },
11975
- o(local) {
11976
- transition_out(default_slot, local);
11977
- current = false;
11978
- },
11979
- d(detaching) {
11980
- if (detaching) {
11981
- detach(div2);
11982
- }
11983
- if (default_slot)
11984
- default_slot.d(detaching);
11985
- mounted = false;
11986
- run_all(dispose);
11987
- }
11988
- };
11989
- }
11990
- var keypress_handler = () => {
11991
- return false;
11992
- };
11993
- function instance11($$self, $$props, $$invalidate) {
11994
- let { $$slots: slots = {}, $$scope } = $$props;
11995
- let { modalData = [] } = $$props;
11996
- const dispatch = createEventDispatcher();
11997
- let modalAriaLabel = "";
11998
- let isModalOpen = false;
11999
- const clickModalBackground = () => {
12000
- $$invalidate(3, modalData = { isModalOpen: false, modalAriaLabel: "" });
12001
- dispatch("updateModalSettings", modalData);
12002
- };
12003
- $$self.$$set = ($$props2) => {
12004
- if ("modalData" in $$props2)
12005
- $$invalidate(3, modalData = $$props2.modalData);
12006
- if ("$$scope" in $$props2)
12007
- $$invalidate(4, $$scope = $$props2.$$scope);
12008
- };
12009
- $$self.$$.update = () => {
12010
- if ($$self.$$.dirty & /*modalData*/
12011
- 8) {
12012
- $:
12013
- if (modalData) {
12014
- const { modalAriaLabel: storeModalAriaLabel, isModalOpen: storeIsmodalOpen } = modalData;
12015
- $$invalidate(0, modalAriaLabel = storeModalAriaLabel);
12016
- $$invalidate(1, isModalOpen = storeIsmodalOpen);
12017
- }
12018
- }
12019
- };
12020
- return [modalAriaLabel, isModalOpen, clickModalBackground, modalData, $$scope, slots];
12021
- }
12022
- var CommonModal = class extends SvelteComponent {
12023
- constructor(options) {
12024
- super();
12025
- init(this, options, instance11, create_fragment11, safe_not_equal, { modalData: 3 });
12026
- }
12027
- get modalData() {
12028
- return this.$$.ctx[3];
12029
- }
12030
- set modalData(modalData) {
12031
- this.$$set({ modalData });
12032
- flush();
12033
- }
12034
- };
12035
- customElements.define("common-modal", create_custom_element(CommonModal, { "modalData": {} }, ["default"], [], true));
12036
- var CommonModal_default = CommonModal;
12037
-
12038
13949
  // src/lib/components/prompt/categorise/PromptCategoriseModal.svelte
12039
- function create_default_slot3(ctx) {
13950
+ function create_default_slot4(ctx) {
12040
13951
  let div0;
12041
13952
  let t0;
12042
13953
  let t1;
@@ -12199,7 +14110,7 @@
12199
14110
  }
12200
14111
  };
12201
14112
  }
12202
- function create_fragment12(ctx) {
14113
+ function create_fragment14(ctx) {
12203
14114
  let commonmodal;
12204
14115
  let current;
12205
14116
  commonmodal = new CommonModal_default({
@@ -12208,7 +14119,8 @@
12208
14119
  /*modalData*/
12209
14120
  ctx[0]
12210
14121
  ),
12211
- $$slots: { default: [create_default_slot3] },
14122
+ modalClass: "bg-charcoal/30",
14123
+ $$slots: { default: [create_default_slot4] },
12212
14124
  $$scope: { ctx }
12213
14125
  }
12214
14126
  });
@@ -12252,13 +14164,13 @@
12252
14164
  }
12253
14165
  };
12254
14166
  }
12255
- function instance12($$self, $$props, $$invalidate) {
14167
+ function instance14($$self, $$props, $$invalidate) {
12256
14168
  let { categoryData = [] } = $$props;
12257
14169
  let { modalData = [] } = $$props;
12258
14170
  let categoryModal;
12259
14171
  let ariaHidden = false;
12260
14172
  const { isModalOpen } = modalData;
12261
- const dispatch = createEventDispatcher();
14173
+ const dispatch2 = createEventDispatcher();
12262
14174
  if (isModalOpen) {
12263
14175
  setTimeout(() => {
12264
14176
  categoryModal.focus();
@@ -12278,7 +14190,7 @@
12278
14190
  dispatchModalData(modalData);
12279
14191
  };
12280
14192
  const dispatchModalData = (newSettings) => {
12281
- dispatch("updateModalSettings", newSettings);
14193
+ dispatch2("updateModalSettings", newSettings);
12282
14194
  };
12283
14195
  const resetCategories = () => {
12284
14196
  const { currentAnswer, rawCategoryItems } = categoryData;
@@ -12305,9 +14217,9 @@
12305
14217
  currentAnswer: resetCurrentAnswer,
12306
14218
  hasAddItemAnimation: false
12307
14219
  });
12308
- dispatch("updateCategorySettings", categoryData);
12309
- dispatch("resetFeedback");
12310
- dispatch("resetCategory", { answer_list: [] });
14220
+ dispatch2("updateCategorySettings", categoryData);
14221
+ dispatch2("resetFeedback");
14222
+ dispatch2("resetCategory", { answer_list: [] });
12311
14223
  closeResetModal();
12312
14224
  };
12313
14225
  function div0_binding($$value) {
@@ -12336,7 +14248,7 @@
12336
14248
  var PromptCategoriseModal = class extends SvelteComponent {
12337
14249
  constructor(options) {
12338
14250
  super();
12339
- init(this, options, instance12, create_fragment12, safe_not_equal, { categoryData: 6, modalData: 0 });
14251
+ init(this, options, instance14, create_fragment14, safe_not_equal, { categoryData: 6, modalData: 0 });
12340
14252
  }
12341
14253
  get categoryData() {
12342
14254
  return this.$$.ctx[6];
@@ -13751,7 +15663,7 @@
13751
15663
  }
13752
15664
  };
13753
15665
  }
13754
- function create_if_block10(ctx) {
15666
+ function create_if_block12(ctx) {
13755
15667
  let span;
13756
15668
  let t0;
13757
15669
  let t1;
@@ -13789,7 +15701,7 @@
13789
15701
  }
13790
15702
  };
13791
15703
  }
13792
- function create_default_slot4(ctx) {
15704
+ function create_default_slot5(ctx) {
13793
15705
  let div6;
13794
15706
  let div0;
13795
15707
  let t0;
@@ -13877,7 +15789,7 @@
13877
15789
  const out = (i) => transition_out(each_blocks[i], 1, 1, () => {
13878
15790
  each_blocks[i] = null;
13879
15791
  });
13880
- let if_block3 = show_if && create_if_block10(ctx);
15792
+ let if_block3 = show_if && create_if_block12(ctx);
13881
15793
  svgloader1 = new SvgLoader_default({
13882
15794
  props: {
13883
15795
  svgName: "smallChevronLeft",
@@ -14341,7 +16253,7 @@
14341
16253
  if (if_block3) {
14342
16254
  if_block3.p(ctx, dirty);
14343
16255
  } else {
14344
- if_block3 = create_if_block10(ctx);
16256
+ if_block3 = create_if_block12(ctx);
14345
16257
  if_block3.c();
14346
16258
  if_block3.m(div3, t9);
14347
16259
  }
@@ -14530,7 +16442,7 @@
14530
16442
  }
14531
16443
  };
14532
16444
  }
14533
- function create_fragment13(ctx) {
16445
+ function create_fragment15(ctx) {
14534
16446
  let div;
14535
16447
  let promptbody;
14536
16448
  let current;
@@ -14551,7 +16463,7 @@
14551
16463
  interactionType: INTERACTION_TYPE_CATEGORISE,
14552
16464
  $$slots: {
14553
16465
  default: [
14554
- create_default_slot4,
16466
+ create_default_slot5,
14555
16467
  ({ dynamicInteractionWidth }) => ({ 77: dynamicInteractionWidth }),
14556
16468
  ({ dynamicInteractionWidth }) => [0, 0, dynamicInteractionWidth ? 32768 : 0]
14557
16469
  ]
@@ -14599,13 +16511,13 @@
14599
16511
  }
14600
16512
  };
14601
16513
  }
14602
- function instance13($$self, $$props, $$invalidate) {
16514
+ function instance15($$self, $$props, $$invalidate) {
14603
16515
  let { sessionData } = $$props;
14604
16516
  let { isFinished = false } = $$props;
14605
16517
  let { isPreviewMode = false } = $$props;
14606
16518
  let { isPreviewModeInteractive = false } = $$props;
14607
16519
  let { isDataSaving = false } = $$props;
14608
- const dispatch = createEventDispatcher();
16520
+ const dispatch2 = createEventDispatcher();
14609
16521
  let srDiv;
14610
16522
  let totalCategoryItems = 0;
14611
16523
  let considerContainerId = "";
@@ -14852,7 +16764,7 @@
14852
16764
  const saveCategory = ({ detail }) => {
14853
16765
  if (isPreviewModeInteractive || isDataSaving)
14854
16766
  return;
14855
- dispatch("saveCategory", detail);
16767
+ dispatch2("saveCategory", detail);
14856
16768
  };
14857
16769
  const updateCategory = ({ detail }) => {
14858
16770
  updateCategoriseSettings(detail);
@@ -15090,8 +17002,8 @@
15090
17002
  init(
15091
17003
  this,
15092
17004
  options,
15093
- instance13,
15094
- create_fragment13,
17005
+ instance15,
17006
+ create_fragment15,
15095
17007
  safe_not_equal,
15096
17008
  {
15097
17009
  sessionData: 54,
@@ -15453,7 +17365,7 @@
15453
17365
  }
15454
17366
  };
15455
17367
  }
15456
- function create_if_block11(ctx) {
17368
+ function create_if_block13(ctx) {
15457
17369
  let span;
15458
17370
  let svgloader;
15459
17371
  let current;
@@ -15705,7 +17617,7 @@
15705
17617
  }
15706
17618
  };
15707
17619
  }
15708
- function create_fragment14(ctx) {
17620
+ function create_fragment16(ctx) {
15709
17621
  let span1;
15710
17622
  let div0;
15711
17623
  let div0_class_value;
@@ -15767,7 +17679,7 @@
15767
17679
  ctx[2] && /*previewInteractiveEvent*/
15768
17680
  ctx[6]) && create_if_block_19(ctx)
15769
17681
  );
15770
- const if_block_creators = [create_if_block11, create_else_block5];
17682
+ const if_block_creators = [create_if_block13, create_else_block5];
15771
17683
  const if_blocks = [];
15772
17684
  function select_block_type_3(ctx2, dirty) {
15773
17685
  if (
@@ -16218,7 +18130,7 @@
16218
18130
  };
16219
18131
  }
16220
18132
  var keyPressDelay = 1e3;
16221
- function instance14($$self, $$props, $$invalidate) {
18133
+ function instance16($$self, $$props, $$invalidate) {
16222
18134
  let activeIndex;
16223
18135
  let lastKeyPressTime;
16224
18136
  let focusKeyDelay;
@@ -16240,7 +18152,7 @@
16240
18152
  let dropdownMenuRef = null;
16241
18153
  let dropdownContainerRef = null;
16242
18154
  const idNo = answer.findIndex((data) => data.id === options.id) + 1;
16243
- const dispatch = createEventDispatcher();
18155
+ const dispatch2 = createEventDispatcher();
16244
18156
  const openDropdownMenu = () => {
16245
18157
  $$invalidate(8, openDropdown = options.id);
16246
18158
  if (dropdownMenuRef) {
@@ -16309,7 +18221,7 @@
16309
18221
  data.choice = option;
16310
18222
  }
16311
18223
  });
16312
- dispatch("select", answer);
18224
+ dispatch2("select", answer);
16313
18225
  closeDropdownMenu();
16314
18226
  };
16315
18227
  const scrollIntoViewIfNeeded = (element2) => {
@@ -16536,8 +18448,8 @@
16536
18448
  init(
16537
18449
  this,
16538
18450
  options,
16539
- instance14,
16540
- create_fragment14,
18451
+ instance16,
18452
+ create_fragment16,
16541
18453
  safe_not_equal,
16542
18454
  {
16543
18455
  metadata: 22,
@@ -16934,7 +18846,7 @@
16934
18846
  }
16935
18847
  };
16936
18848
  }
16937
- function create_if_block12(ctx) {
18849
+ function create_if_block14(ctx) {
16938
18850
  let span1;
16939
18851
  let span0;
16940
18852
  let current_block_type_index;
@@ -17157,7 +19069,7 @@
17157
19069
  }
17158
19070
  current_block_type_index = select_block_type_2(ctx, -1);
17159
19071
  if_block1 = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
17160
- let if_block2 = show_if && create_if_block12(ctx);
19072
+ let if_block2 = show_if && create_if_block14(ctx);
17161
19073
  return {
17162
19074
  c() {
17163
19075
  div3 = element("div");
@@ -17532,7 +19444,7 @@
17532
19444
  }
17533
19445
  };
17534
19446
  }
17535
- function create_fragment15(ctx) {
19447
+ function create_fragment17(ctx) {
17536
19448
  let each_1_anchor;
17537
19449
  let current;
17538
19450
  let each_value = ensure_array_like(
@@ -17612,7 +19524,7 @@
17612
19524
  }
17613
19525
  };
17614
19526
  }
17615
- function instance15($$self, $$props, $$invalidate) {
19527
+ function instance17($$self, $$props, $$invalidate) {
17616
19528
  let { sessionId } = $$props;
17617
19529
  let { answerResults = [] } = $$props;
17618
19530
  let { correctAnswers = [] } = $$props;
@@ -17641,7 +19553,7 @@
17641
19553
  var PromptResultFeedbackTable = class extends SvelteComponent {
17642
19554
  constructor(options) {
17643
19555
  super();
17644
- init(this, options, instance15, create_fragment15, safe_not_equal, {
19556
+ init(this, options, instance17, create_fragment17, safe_not_equal, {
17645
19557
  sessionId: 0,
17646
19558
  answerResults: 1,
17647
19559
  correctAnswers: 2,
@@ -17961,7 +19873,7 @@
17961
19873
  }
17962
19874
  };
17963
19875
  }
17964
- function create_if_block13(ctx) {
19876
+ function create_if_block15(ctx) {
17965
19877
  let div;
17966
19878
  let t0;
17967
19879
  let t1;
@@ -18136,7 +20048,7 @@
18136
20048
  }
18137
20049
  };
18138
20050
  }
18139
- function create_default_slot5(ctx) {
20051
+ function create_default_slot6(ctx) {
18140
20052
  let div1;
18141
20053
  let div0;
18142
20054
  let t2;
@@ -18158,7 +20070,7 @@
18158
20070
  });
18159
20071
  let if_block = (
18160
20072
  /*showFeedbackandTable*/
18161
- ctx[11] && create_if_block13(ctx)
20073
+ ctx[11] && create_if_block15(ctx)
18162
20074
  );
18163
20075
  return {
18164
20076
  c() {
@@ -18227,7 +20139,7 @@
18227
20139
  transition_in(if_block, 1);
18228
20140
  }
18229
20141
  } else {
18230
- if_block = create_if_block13(ctx2);
20142
+ if_block = create_if_block15(ctx2);
18231
20143
  if_block.c();
18232
20144
  transition_in(if_block, 1);
18233
20145
  if_block.m(div1, null);
@@ -18272,7 +20184,7 @@
18272
20184
  }
18273
20185
  };
18274
20186
  }
18275
- function create_fragment16(ctx) {
20187
+ function create_fragment18(ctx) {
18276
20188
  let promptbody;
18277
20189
  let current;
18278
20190
  promptbody = new PromptBody_default({
@@ -18293,7 +20205,7 @@
18293
20205
  hasDivider: false,
18294
20206
  $$slots: {
18295
20207
  default: [
18296
- create_default_slot5,
20208
+ create_default_slot6,
18297
20209
  ({ dynamicInteractionWidth }) => ({ 32: dynamicInteractionWidth }),
18298
20210
  ({ dynamicInteractionWidth }) => [0, dynamicInteractionWidth ? 2 : 0]
18299
20211
  ]
@@ -18334,7 +20246,7 @@
18334
20246
  };
18335
20247
  }
18336
20248
  var pTagRegex = /<p[^>]*>.*?<\/p>/gi;
18337
- function instance16($$self, $$props, $$invalidate) {
20249
+ function instance18($$self, $$props, $$invalidate) {
18338
20250
  let answer;
18339
20251
  let getSessionFeedbackData;
18340
20252
  let isSkipped;
@@ -18351,7 +20263,7 @@
18351
20263
  let { isPreviewMode = false } = $$props;
18352
20264
  let { isPreviewModeInteractive = false } = $$props;
18353
20265
  let { isDataSaving = false } = $$props;
18354
- const dispatch = createEventDispatcher();
20266
+ const dispatch2 = createEventDispatcher();
18355
20267
  const { rubric, interaction, metadata, scoringMetadata, stimulus } = sessionData;
18356
20268
  let previewInteractiveEvent = false;
18357
20269
  const { prompt, text: dropdownText, options, feedback } = interaction;
@@ -18394,7 +20306,7 @@
18394
20306
  };
18395
20307
  const saveDropdownEvent = (choice) => {
18396
20308
  if (!isFinished && !isPreviewModeInteractive)
18397
- dispatch("saveDropdown", { answer: choice.detail });
20309
+ dispatch2("saveDropdown", { answer: choice.detail });
18398
20310
  if (isPreviewModeInteractive) {
18399
20311
  $$invalidate(8, answer = choice.detail);
18400
20312
  $$invalidate(6, previewInteractiveEvent = !choice.detail.some((item) => item.choice === ""));
@@ -18567,8 +20479,8 @@
18567
20479
  init(
18568
20480
  this,
18569
20481
  options,
18570
- instance16,
18571
- create_fragment16,
20482
+ instance18,
20483
+ create_fragment18,
18572
20484
  safe_not_equal,
18573
20485
  {
18574
20486
  sessionData: 0,
@@ -18629,7 +20541,7 @@
18629
20541
  var PromptDropdown_default = PromptDropdown;
18630
20542
 
18631
20543
  // src/lib/components/prompt/skeleton/PromptSkeleton.svelte
18632
- function create_fragment17(ctx) {
20544
+ function create_fragment19(ctx) {
18633
20545
  let div3;
18634
20546
  return {
18635
20547
  c() {
@@ -18652,15 +20564,15 @@
18652
20564
  var PromptSkeleton = class extends SvelteComponent {
18653
20565
  constructor(options) {
18654
20566
  super();
18655
- init(this, options, null, create_fragment17, safe_not_equal, {});
20567
+ init(this, options, null, create_fragment19, safe_not_equal, {});
18656
20568
  }
18657
20569
  };
18658
20570
  customElements.define("prompt-skeleton", create_custom_element(PromptSkeleton, {}, [], [], true));
18659
20571
  var PromptSkeleton_default = PromptSkeleton;
18660
20572
 
18661
20573
  // src/lib/components/prompt/PromptBuilder.svelte
18662
- function add_css2(target) {
18663
- append_styles(target, "svelte-1mpi1mm", '*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:Mulish, sans-serif;font-feature-settings:normal;font-variation-settings:normal;-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-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}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]{display:none}*{font-family:Mulish, sans-serif}input::-moz-selection,textarea::-moz-selection{background-color:hsla(0, 0%, 85%, 0.4)}input::selection,textarea::selection{background-color:hsla(0, 0%, 85%, 0.4)}*,: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: }::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: }.p2{font-size:0.875rem;font-weight:600;line-height:1.25rem;line-height:1.5}.blanket-overlay{inset:0;position:absolute;--tw-bg-opacity:1;background-color:rgb(33 37 41/var(--tw-bg-opacity));opacity:0.3}.item-heading{font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.focus-ring:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;transition-duration:50ms}.hover-focus-ring:hover,.raw-focus-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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;transition-duration:50ms}.focus-ring-by-dropdown,.hover-focus-ring:hover,.raw-focus-ring{box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px}.focus-ring-by-dropdown{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);border-width:2px;box-shadow:0 0 0 2px #fff, 0 0 0 4px #212529, 0 0 0 6px #fde047;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}.divider{border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(218 224 224/var(--tw-border-opacity))}@keyframes svelte-1mpi1mm-pulse{50%{opacity:0.5}}.animate-skeleton{animation:svelte-1mpi1mm-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.btn-mcq-option:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529;outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.btn-mcq-option{font-size:1rem;line-height:1.5rem;line-height:19.2px;margin-bottom:1rem;min-height:52px;width:100%;--tw-text-opacity:1;border-radius:0.5rem;border-width:1px;box-sizing:border-box;color:rgb(33 37 41/var(--tw-text-opacity));--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity))}.btn-mcq-option:active{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}}.btn-mcq-text{align-items:center;display:flex;padding:0.375rem 0.75rem;width:100%}@supports (overflow-wrap: anywhere){.btn-mcq-text{overflow-wrap:anywhere}}@supports not (overflow-wrap: anywhere){.btn-mcq-text{word-break:break-word}}.btn-mcq-option>span>span>span>.\\!choice,.btn-mcq-option>span>span>span>.choice{align-items:center;display:flex;font-size:1rem;font-weight:700;height:2rem;justify-content:center;letter-spacing:0.05em;line-height:1rem;width:2rem}.btn-mcq-option>span>span>span>.\\!choice,.btn-mcq-option>span>span>span>.choice{border-radius:1rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));padding:0.5rem;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.btn-mcq-option.selected{border-width:2px;--tw-border-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity));border-color:rgb(40 44 135/var(--tw-border-opacity))}.btn-mcq-option.selected,.btn-mcq-option.selected:active{--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.btn-mcq-option.selected:active{background-color:rgb(84 101 251/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option.selected:hover{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}}.btn-mcq-option.finished{cursor:default}.btn-mcq-option.finished:active,.btn-mcq-option.finished:hover{border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity))}.btn-mcq-option.selected>span>span>.\\!choice,.btn-mcq-option.selected>span>span>.choice{--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}.btn-mcq-option>span>span>span>.custom-checkbox{align-items:center;border-radius:0.25rem;border-width:1px;display:flex;height:1.75rem;justify-content:center;pointer-events:none;width:1.75rem;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover>span>span>span>.custom-checkbox{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}.btn-mcq-option:active>span>span>span>.custom-checkbox.preview-only,.btn-mcq-option:hover>span>span>span>.custom-checkbox.preview-only{border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}}.btn-mcq-option:active>span>span>span>.custom-checkbox{border-width:2px;--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity))}.btn-mcq-option.selected>span>span>span>.custom-checkbox{border-width:0;pointer-events:none;--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option.selected:hover>span>span>span>.custom-checkbox{border-width:0;--tw-bg-opacity:1;background-color:rgb(76 91 226/var(--tw-bg-opacity))}}.btn-mcq-option.selected:active>span>span>span>.custom-checkbox{border-width:0;--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity))}.btn-mcq-option.finished:active>span>span>span>.custom-checkbox,.btn-mcq-option.finished:hover>span>span>span>.custom-checkbox{border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.btn-mcq-option.missing.correct{border-width:1px;--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option.correct.interactive:active,.btn-mcq-option.correct.interactive:hover,.btn-mcq-option.incorrect.interactive:active,.btn-mcq-option.incorrect.interactive:hover,.btn-mcq-option.missing.interactive:active,.btn-mcq-option.missing.interactive:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}}.btn-mcq-option.selected.correct{background-color:rgb(240 253 244/var(--tw-bg-opacity));border-color:rgb(21 128 61/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected.correct,.btn-mcq-option.selected.incorrect{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.btn-mcq-option.selected.incorrect{background-color:rgb(253 242 248/var(--tw-bg-opacity));border-color:rgb(190 24 93/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected.correct>span>span>span>.\\!choice,.btn-mcq-option.selected.correct>span>span>span>.choice,.btn-mcq-option.selected.incorrect>span>span>span>.\\!choice,.btn-mcq-option.selected.incorrect>span>span>span>.choice{border-width:1px;--tw-border-opacity:1;border-color:rgb(113 115 119/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.typein-textbox:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;transition-duration:50ms}.typein-textbox{border-radius:0.5rem;border-width:1px;width:100%;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));font-size:1rem;line-height:1.5rem;padding:0.75rem 1rem;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.typein-textbox::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(55 65 81/var(--tw-placeholder-opacity))}.typein-textbox::placeholder{--tw-placeholder-opacity:1;color:rgb(55 65 81/var(--tw-placeholder-opacity))}.typein-textbox:focus{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}}.typein-textbox:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0)) !important}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{transition-duration:50ms}}.typein-textbox:focus{outline-color:#212529;outline-width:2px}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{outline-color:#212529;outline-width:2px}}.typein-textbox:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity))}.inline-typein-container>p{font-size:1.25rem;font-weight:600;line-height:3rem;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}#dnd-action-dragged-el{outline:2px solid transparent;outline-offset:2px;--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 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;cursor:grabbing !important;transition-duration:50ms;--tw-border-opacity:1!important;border-color:rgb(93 99 107/var(--tw-border-opacity)) !important;--tw-bg-opacity:1!important;background-color:rgb(205 208 254/var(--tw-bg-opacity)) !important}#dnd-action-dragged-el .btn-vertical-icon{cursor:grabbing !important;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}#dnd-action-dragged-el .preview-icon{display:none !important}#dnd-action-dragged-el .preview-vertical{display:block !important}.category-content>.missing-answer-label{display:block}.category-content>.missing-answer-label~.missing-answer-label{display:none}.image-description,.text-stimulus{padding-bottom:1rem;padding-top:1rem}.text-stimulus p{font-size:1.25rem;line-height:1.75rem;padding-bottom:0.5rem;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.image-description p{font-size:0.875rem;line-height:1.25rem;padding-bottom:0.5rem;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.text-stimulus ol,.text-stimulus ul{font-size:1rem;line-height:1.5rem;list-style-position:inside;padding-bottom:0.5rem;padding-left:0.5rem}.text-stimulus ol ::marker,.text-stimulus ul ::marker{color:#282c87}.text-stimulus ol::marker,.text-stimulus ul::marker{color:#282c87}.image-description ol,.image-description ul{font-size:0.875rem;line-height:1.25rem;list-style-position:inside;padding-bottom:0.5rem;padding-left:0.5rem}.image-description ol ::marker,.image-description ul ::marker{color:#212529}.image-description ol::marker,.image-description ul::marker{color:#212529}.image-description ul,.text-stimulus ul{list-style-type:disc}.image-description ol,.text-stimulus ol{list-style-type:decimal}.image-description ul li>p,.text-stimulus ul li>p{margin-left:-0.5rem}.text-stimulus ol>li>p,.text-stimulus ul>li>p{display:inline;font-size:1rem;line-height:1.5rem;padding-bottom:0;padding-top:0}.image-description ol>li>p,.image-description ul>li>p{display:inline;font-size:0.875rem;line-height:1.25rem;padding-bottom:0;padding-top:0}.image-description div.table-container:focus,.text-stimulus div.table-container:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;transition-duration:50ms}.image-description div.table-container,.text-stimulus div.table-container{border-radius:0.5rem;overflow:auto;padding-left:0.125rem;padding-right:0.125rem}.image-description table,.text-stimulus table{margin-bottom:1rem;margin-top:0.5rem;width:100%;--tw-border-spacing-x:0.75rem;--tw-border-spacing-y:0.75rem;border-radius:0.5rem;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);overflow-x:auto;--tw-shadow:0 0 0 1px #9ca3af;--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.image-description table tr,.text-stimulus table tr{border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity))}.image-description table tr:last-child,.text-stimulus table tr:last-child{border-color:transparent}.image-description table td,.image-description table th,.text-stimulus table td,.text-stimulus table th{border-left-width:1px;min-width:140px;--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity))}.image-description table td:first-child,.image-description table th:first-child,.text-stimulus table td:first-child,.text-stimulus table th:first-child{border-style:none}.text-stimulus table td>p,.text-stimulus table th>p{font-size:1rem;line-height:1.5rem;padding:0.75rem;text-align:left;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.image-description table td>p,.image-description table th>p{font-size:0.875rem;line-height:1.25rem;padding:0.75rem;text-align:left;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.text-stimulus table th>p{font-weight:400}.image-description table th p,.prompt p,.text-stimulus table th p{font-weight:600}.prompt p b,.prompt p b i,.prompt p b i u,.prompt p b u,.prompt p b u i,.prompt p i b,.prompt p i b u,.prompt p i u b,.prompt p u b,.prompt p u b i,.prompt p u i b,.text-stimulus table th p b,.text-stimulus table th p b i,.text-stimulus table th p b i u,.text-stimulus table th p b u,.text-stimulus table th p b u i,.text-stimulus table th p i b,.text-stimulus table th p i b u,.text-stimulus table th p i u b,.text-stimulus table th p u b,.text-stimulus table th p u b i,.text-stimulus table th p u i b{font-weight:900}.dropdown-text:not(:last-child),.dropdown:not(:last-child){margin-right:1rem}.dropdown-container{align-items:center;border-radius:0.5rem;border-width:1px;display:flex;height:2.75rem;overflow:hidden;white-space:nowrap;width:15rem;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}.dropdown-container:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0))}.dropdown-container:active,.dropdown-container:focus{border-width:2px;box-shadow:0 0 0 2px #fff, 0 0 0 4px #212529, 0 0 0 6px #fde047;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}@media(hover: hover) and (pointer: fine){.dropdown-container:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));outline-color:#212529;outline-width:2px}}.dropdown-menu{border-radius:0.5rem;border-width:1px;margin-top:0.5rem;max-height:400px;max-width:500px;min-width:240px;overflow-y:auto;position:absolute;z-index:50;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}@supports (overflow-wrap: anywhere){.dropdown-menu{overflow-wrap:anywhere}}@supports not (overflow-wrap: anywhere){.dropdown-menu{word-break:break-word}}.dropdown-item{cursor:pointer;font-size:1rem;line-height:1.5rem;outline:2px solid transparent;outline-offset:2px;padding:0.5rem 1rem}.dropdown-itemtext{border-bottom-width:1px;border-color:transparent}.dropdown-itemtext.hover-option{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity));font-weight:600;--tw-text-opacity:1;color:rgb(46 47 212/var(--tw-text-opacity))}.dropdown-itemtext.current-option{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity));--tw-text-opacity:1;border-bottom-width:1px;color:rgb(0 0 0/var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px;--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.dropdown-itemtext:active{border-bottom-width:2px;font-weight:600}.image-description-accordion{border-bottom-width:1px;border-color:transparent;font-weight:600;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.group:focus .image-description-accordion{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity));--tw-text-opacity:1;border-bottom-width:1px;color:rgb(0 0 0/var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px}.group:focus .image-description-accordion,.group:hover .image-description-accordion{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.group:active .image-description-accordion{border-bottom-width:2px}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0, 0, 0, 0);border-width:0;white-space:nowrap}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-y-0{bottom:0;top:0}.-top-2{top:-0.5rem}.-top-2\\.5{top:-0.625rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-\\[7px\\]{bottom:7px}.left-0{left:0}.left-4{left:1rem}.left-\\[-9999px\\]{left:-9999px}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1{top:0.25rem}.top-1\\/2{top:50%}.top-12{top:3rem}.top-3{top:0.75rem}.top-3\\.5{top:0.875rem}.top-\\[13px\\]{top:13px}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mx-0{margin-left:0;margin-right:0}.mx-0\\.5{margin-left:0.125rem;margin-right:0.125rem}.my-1{margin-bottom:0.25rem;margin-top:0.25rem}.my-1\\.5{margin-bottom:0.375rem;margin-top:0.375rem}.my-2{margin-bottom:0.5rem;margin-top:0.5rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.my-auto{margin-bottom:auto;margin-top:auto}.-mt-0{margin-top:0}.-mt-0\\.5{margin-top:-0.125rem}.mb-0{margin-bottom:0}.mb-0\\.5{margin-bottom:0.125rem}.mb-1{margin-bottom:0.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:0.25rem}.ml-2{margin-left:0.5rem}.ml-2\\.5{margin-left:0.625rem}.ml-3{margin-left:0.75rem}.ml-8{margin-left:2rem}.ml-8\\.5{margin-left:2.125rem}.ml-\\[3px\\]{margin-left:3px}.mr-1{margin-right:0.25rem}.mr-2{margin-right:0.5rem}.mr-4{margin-right:1rem}.mt-0{margin-top:0}.mt-0\\.5{margin-top:0.125rem}.mt-1{margin-top:0.25rem}.mt-2{margin-top:0.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-7\\.5{margin-top:1.875}.mt-9{margin-top:2.25rem}.line-clamp-3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-10\\.5{height:2.625rem}.h-11{height:2.75rem}.h-2{height:0.5rem}.h-4{height:1rem}.h-52{height:13rem}.h-6{height:1.5rem}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.max-h-\\[184px\\]{max-height:184px}.max-h-\\[470px\\]{max-height:470px}.max-h-\\[660px\\]{max-height:660px}.min-h-\\[133px\\]{min-height:133px}.min-h-\\[140px\\]{min-height:140px}.min-h-\\[154px\\]{min-height:154px}.min-h-\\[210px\\]{min-height:210px}.min-h-\\[44px\\]{min-height:44px}.min-h-\\[54px\\]{min-height:54px}.min-h-\\[86px\\]{min-height:86px}.w-1\\/2{width:50%}.w-11{width:2.75rem}.w-2{width:0.5rem}.w-2\\/4{width:50%}.w-3{width:0.75rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-8{width:2rem}.w-8\\.5{width:2.125rem}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\\[288px\\]{min-width:288px}.min-w-\\[44px\\]{min-width:44px}.min-w-\\[85px\\]{min-width:85px}.max-w-\\[304px\\]{max-width:304px}.max-w-\\[400px\\]{max-width:400px}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-none{flex:none}.grow{flex-grow:1}.basis-0{flex-basis:0px}.-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\!cursor-default{cursor:default !important}.\\!cursor-pointer{cursor:pointer !important}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:0.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0.5rem * var(--tw-space-y-reverse));margin-top:calc(0.5rem * (1 - var(--tw-space-y-reverse)))}.space-y-reverse>:not([hidden])~:not([hidden]){--tw-space-y-reverse:1}.overflow-hidden{overflow:hidden}.overflow-y-visible{overflow-y:visible}.truncate{overflow:hidden;white-space:nowrap}.text-ellipsis,.truncate{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:0.25rem}.rounded-\\[32px\\]{border-radius:32px}.rounded-lg{border-radius:0.5rem}.rounded-md{border-radius:0.375rem}.rounded-b-lg{border-bottom-right-radius:0.5rem}.rounded-b-lg,.rounded-l-lg{border-bottom-left-radius:0.5rem}.rounded-l-lg,.rounded-t-lg{border-top-left-radius:0.5rem}.rounded-t-lg{border-top-right-radius:0.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-l-6{border-left-width:6px}.border-dashed{border-style:dashed}.\\!border-blue-1000{--tw-border-opacity:1!important;border-color:rgb(40 44 135/var(--tw-border-opacity)) !important}.border-blue-1000{--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity))}.border-blue-950{--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity))}.border-charcoal{--tw-border-opacity:1;border-color:rgb(33 37 41/var(--tw-border-opacity))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.border-gray-850{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}.border-green-800{--tw-border-opacity:1;border-color:rgb(0 102 5/var(--tw-border-opacity))}.border-green-900{--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity))}.border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.border-red-800{--tw-border-opacity:1;border-color:rgb(217 12 85/var(--tw-border-opacity))}.border-red-900{--tw-border-opacity:1;border-color:rgb(190 24 93/var(--tw-border-opacity))}.border-soft-blue{--tw-border-opacity:1;border-color:rgb(84 101 251/var(--tw-border-opacity))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.\\!bg-violet-100{--tw-bg-opacity:1!important;background-color:rgb(235 235 255/var(--tw-bg-opacity)) !important}.\\!bg-violet-150{--tw-bg-opacity:1!important;background-color:rgb(205 208 254/var(--tw-bg-opacity)) !important}.\\!bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity)) !important}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-blue-1000{--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(247 250 250/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(244 244 244/var(--tw-bg-opacity))}.bg-green-300{--tw-bg-opacity:1;background-color:rgb(241 254 241/var(--tw-bg-opacity))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(253 243 247/var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(253 242 248/var(--tw-bg-opacity))}.bg-soft-blue{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-violet-100{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.bg-violet-150{--tw-bg-opacity:1;background-color:rgb(205 208 254/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-yellow-1000{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity))}.bg-opacity-5{--tw-bg-opacity:0.05}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-0\\.5{padding:0.125rem}.p-1{padding:0.25rem}.p-1\\.5{padding:0.375rem}.p-2{padding:0.5rem}.p-3{padding:0.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-bottom:0.25rem;padding-top:0.25rem}.py-1\\.5{padding-bottom:0.375rem;padding-top:0.375rem}.py-2{padding-bottom:0.5rem;padding-top:0.5rem}.py-\\[9px\\]{padding-bottom:9px;padding-top:9px}.\\!pr-11{padding-right:2.75rem !important}.pb-0{padding-bottom:0}.pb-10{padding-bottom:2.5rem}.pb-2{padding-bottom:0.5rem}.pb-3{padding-bottom:0.75rem}.pl-13\\.2{padding-left:3.125rem}.pl-24{padding-left:6rem}.pl-3{padding-left:0.75rem}.pl-4{padding-left:1rem}.pr-3{padding-right:0.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-0\\.5{padding-top:0.125rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\\[15px\\]{padding-top:15px}.pt-\\[55px\\]{padding-top:55px}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:0.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.leading-12{line-height:3rem}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-\\[1\\.5\\]{line-height:1.5}.leading-\\[19\\.2px\\]{line-height:19.2px}.leading-\\[19px\\]{line-height:19px}.leading-\\[22px\\]{line-height:22px}.\\!text-gray-900{--tw-text-opacity:1!important;color:rgb(57 62 69/var(--tw-text-opacity)) !important}.text-blue-1000{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.text-blue-850{--tw-text-opacity:1;color:rgb(46 47 212/var(--tw-text-opacity))}.text-blue-950{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity))}.text-charcoal{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgb(93 99 107/var(--tw-text-opacity))}.text-gray-860{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-green-800{--tw-text-opacity:1;color:rgb(0 102 5/var(--tw-text-opacity))}.text-green-900{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.text-inherit{color:inherit}.text-red-800{--tw-text-opacity:1;color:rgb(217 12 85/var(--tw-text-opacity))}.text-red-900{--tw-text-opacity:1;color:rgb(190 24 93/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.opacity-5{opacity:0.05}.opacity-50{opacity:0.5}.shadow-\\[0_-12px_14px_-16px_\\#00000033\\]{--tw-shadow:0 -12px 14px -16px #00000033;--tw-shadow-colored:0 -12px 14px -16px var(--tw-shadow-color)}.shadow-\\[0_-12px_14px_-16px_\\#00000033\\],.shadow-md{box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.shadow-md{--tw-shadow:0px 2px 8px rgba(0,0,0,.2);--tw-shadow-colored:0px 2px 8px var(--tw-shadow-color)}.\\!outline-none{outline:2px solid transparent !important;outline-offset:2px !important}.outline-none{outline:2px solid transparent;outline-offset:2px}.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:0.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(0.4, 0, 0.2, 1)}.duration-300{transition-duration:0.3s}.active\\:raw-focus-ring-by:active{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529}.active\\:raw-focus-ring-by:active,.active\\:raw-focus-ring:active{box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.active\\:raw-focus-ring:active{--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);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px}@media(min-width: 732px){.md\\:item-heading{font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.category-content>.md\\:missing-answer-label{display:block}.category-content>.md\\:missing-answer-label~.md\\:missing-answer-label{display:none}}@media(hover: hover) and (pointer: fine){.td\\:hover-focus-ring:hover{outline:2px solid transparent;outline-offset:2px;--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 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;transition-duration:50ms}.td\\:hover\\:hover-option:hover.dropdown-itemtext{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity));font-weight:600;--tw-text-opacity:1;color:rgb(46 47 212/var(--tw-text-opacity))}}.last\\:mr-0:last-child{margin-right:0}.focus-within\\:left-0:focus-within{left:0}.focus-within\\:right-0:focus-within{right:0}.focus-within\\:top-0:focus-within{top:0}.focus-within\\:z-30:focus-within{z-index:30}.hover\\:bg-black-50:hover{background-color:rgba(0, 0, 0, 0.0509803922)}.hover\\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity))}.hover\\:bg-violet-100:hover{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.hover\\:bg-yellow-1000:hover{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity))}.hover\\:text-charcoal:hover{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.focus\\:outline-transparent:focus{outline-color:transparent}.focus-visible\\:border:focus-visible{border-width:1px}.focus-visible\\:border-charcoal:focus-visible{--tw-border-opacity:1;border-color:rgb(33 37 41/var(--tw-border-opacity))}.focus-visible\\:border-gray-400:focus-visible{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.focus-visible\\:border-gray-800:focus-visible{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.active\\:bg-black-55:active,.active\\:bg-black-60:active{background-color:rgba(0, 0, 0, 0.1019607843)}.active\\:bg-yellow-1100:active{--tw-bg-opacity:1;background-color:rgb(238 206 26/var(--tw-bg-opacity))}.active\\:text-charcoal:active{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.disabled\\:text-gray-40:disabled{--tw-text-opacity:1;color:rgb(142 147 153/var(--tw-text-opacity))}.disabled\\:hover\\:bg-white:hover:disabled{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.group\\/itemContainer:hover .group-hover\\/itemContainer\\:bg-violet-100{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.group:hover .group-hover\\:underline{text-decoration-line:underline}.group.active .group-\\[\\.active\\]\\:border-b-2{border-bottom-width:2px}@media(min-width: 732px){.md\\:inset-0{inset:0}.md\\:top-20{top:5rem}.md\\:mb-2{margin-bottom:0.5rem}.md\\:mb-4{margin-bottom:1rem}.md\\:mb-8{margin-bottom:2rem}.md\\:ml-0{margin-left:0}.md\\:mt-0{margin-top:0}.md\\:mt-14{margin-top:3.5rem}.md\\:block{display:block}.md\\:inline-block{display:inline-block}.md\\:flex{display:flex}.md\\:hidden{display:none}.md\\:h-fit{height:-moz-fit-content;height:fit-content}.md\\:min-h-0{min-height:0}.md\\:min-h-\\[140px\\]{min-height:140px}.md\\:min-h-\\[164px\\]{min-height:164px}.md\\:w-1\\/2{width:50%}.md\\:w-fit{width:-moz-fit-content;width:fit-content}.md\\:min-w-full{min-width:100%}.md\\:grow-0{flex-grow:0}.md\\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.md\\:flex-row{flex-direction:row}.md\\:flex-col{flex-direction:column}.md\\:items-center{align-items:center}.md\\:justify-normal{justify-content:normal}.md\\:justify-center{justify-content:center}.md\\:justify-between{justify-content:space-between}.md\\:gap-6{gap:1.5rem}.md\\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px * var(--tw-space-y-reverse));margin-top:calc(0px * (1 - var(--tw-space-y-reverse)))}.md\\:rounded-b-none{border-bottom-left-radius:0;border-bottom-right-radius:0}.md\\:border{border-width:1px}.md\\:border-gray-400{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.md\\:\\!bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity)) !important}.md\\:p-4{padding:1rem}.md\\:px-0{padding-left:0;padding-right:0}.md\\:pb-0{padding-bottom:0}.md\\:pl-13\\.2{padding-left:3.125rem}.md\\:pl-4{padding-left:1rem}.md\\:pr-4{padding-right:1rem}.md\\:pt-20{padding-top:5rem}.md\\:pt-20\\.5{padding-top:5.125rem}.md\\:text-center{text-align:center}.md\\:shadow-\\[0_0_\\#0000\\]{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.group\\/itemContainer:hover .md\\:group-hover\\/itemContainer\\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}}@media(min-width: 1196px){.lg\\:flex{display:flex}.lg\\:hidden{display:none}.lg\\:min-h-\\[224px\\]{min-height:224px}.lg\\:max-w-\\[50\\%\\]{max-width:50%}.lg\\:grow{flex-grow:1}.lg\\:basis-1\\/2{flex-basis:50%}}@media(hover: hover) and (pointer: fine){.td\\:border-2{border-width:2px}.td\\:border-blue-900{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}.td\\:hover\\:cursor-grab:hover{cursor:grab}.td\\:hover\\:border-gray-800:hover{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.td\\:hover\\:bg-black-50:hover{background-color:rgba(0, 0, 0, 0.0509803922)}.td\\:hover\\:bg-violet-100:hover{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.td\\:hover\\:text-soft-blue:hover{--tw-text-opacity:1;color:rgb(84 101 251/var(--tw-text-opacity))}.group:hover .td\\:group-hover\\:bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.group:hover .td\\:group-hover\\:opacity-5{opacity:0.05}}');
20574
+ function add_css(target) {
20575
+ append_styles(target, "svelte-5g9a6z", '*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:Mulish, sans-serif;font-feature-settings:normal;font-variation-settings:normal;-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-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}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]{display:none}*{font-family:Mulish, sans-serif}input::-moz-selection,textarea::-moz-selection{background-color:hsla(0, 0%, 85%, 0.4)}input::selection,textarea::selection{background-color:hsla(0, 0%, 85%, 0.4)}*,: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: }::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: }.container{width:100%}@media(min-width: 732px){.container{max-width:732px}}@media(min-width: 1196px){.container{max-width:1196px}}.p2{font-size:0.875rem;font-weight:600;line-height:1.25rem;line-height:1.5}.blanket-overlay{inset:0;position:absolute}.item-heading{font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.btn-states:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529;outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.btn-states:active{border-width:2px;--tw-border-opacity:1;border-color:rgb(51 69 223/var(--tw-border-opacity))}@media(hover: hover) and (pointer: fine){.btn-states:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(51 69 223/var(--tw-border-opacity))}}.btn-states-transparent:active{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-states-transparent:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}}.focus-ring:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;transition-duration:50ms}.hover-focus-ring:hover,.raw-focus-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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;transition-duration:50ms}.focus-ring-by-dropdown,.hover-focus-ring:hover,.raw-focus-ring{box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px}.focus-ring-by-dropdown{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);border-width:2px;box-shadow:0 0 0 2px #fff, 0 0 0 4px #212529, 0 0 0 6px #fde047;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}.divider{border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(218 224 224/var(--tw-border-opacity))}@keyframes svelte-5g9a6z-pulse{50%{opacity:0.5}}.animate-skeleton{animation:svelte-5g9a6z-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.btn-mcq-option:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529;outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.btn-mcq-option{font-size:1rem;line-height:1.5rem;line-height:19.2px;margin-bottom:1rem;min-height:52px;width:100%;--tw-text-opacity:1;border-radius:0.5rem;border-width:1px;box-sizing:border-box;color:rgb(33 37 41/var(--tw-text-opacity));--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity))}.btn-mcq-option:active{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}}.btn-mcq-text{align-items:center;display:flex;padding:0.375rem 0.75rem;width:100%}@supports (overflow-wrap: anywhere){.btn-mcq-text{overflow-wrap:anywhere}}@supports not (overflow-wrap: anywhere){.btn-mcq-text{word-break:break-word}}.btn-mcq-option>span>span>span>.\\!choice,.btn-mcq-option>span>span>span>.choice{align-items:center;display:flex;font-size:1rem;font-weight:700;height:2rem;justify-content:center;letter-spacing:0.05em;line-height:1rem;width:2rem}.btn-mcq-option>span>span>span>.\\!choice,.btn-mcq-option>span>span>span>.choice{border-radius:1rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));padding:0.5rem;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.btn-mcq-option.selected{border-width:2px;--tw-border-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity));border-color:rgb(40 44 135/var(--tw-border-opacity))}.btn-mcq-option.selected,.btn-mcq-option.selected:active{--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.btn-mcq-option.selected:active{background-color:rgb(84 101 251/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option.selected:hover{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}}.btn-mcq-option:has(.expand-trigger:active),.btn-mcq-option:has(.expand-trigger:hover){border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-offset-width:0px}.btn-mcq-option.selected:has(.expand-trigger:active),.btn-mcq-option.selected:has(.expand-trigger:hover){border-width:2px;--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-offset-width:0px}.btn-mcq-option.missing.correct:has(.expand-trigger){border-width:1px;--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity))}.btn-mcq-option.selected.correct:has(.expand-trigger){border-width:1px;--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.btn-mcq-option.selected.incorrect:has(.expand-trigger){border-width:1px;--tw-border-opacity:1;border-color:rgb(190 24 93/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(253 242 248/var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.btn-mcq-option:has(.expand-trigger:active)>span>span>span>.custom-checkbox,.btn-mcq-option:has(.expand-trigger:hover)>span>span>span>.custom-checkbox{border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.btn-mcq-option.selected:has(.expand-trigger:active)>span>span>span>.custom-checkbox,.btn-mcq-option.selected:has(.expand-trigger:hover)>span>span>span>.custom-checkbox{border-width:0;--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}.btn-mcq-option.correct:has(.expand-trigger)>span>span>span>.custom-checkbox,.btn-mcq-option.incorrect:has(.expand-trigger)>span>span>span>.custom-checkbox,.btn-mcq-option.missing:has(.expand-trigger)>span>span>span>.custom-checkbox{border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.btn-mcq-option.selected.correct:has(.expand-trigger)>span>span>span>.custom-checkbox,.btn-mcq-option.selected.incorrect:has(.expand-trigger)>span>span>span>.custom-checkbox{border-width:0;--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}.btn-mcq-option.finished{cursor:default}.btn-mcq-option.finished:active,.btn-mcq-option.finished:hover{border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity))}.btn-mcq-option.selected>span>span>.\\!choice,.btn-mcq-option.selected>span>span>.choice{--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}.btn-mcq-option>span>span>span>.custom-checkbox{align-items:center;border-radius:0.25rem;border-width:1px;display:flex;height:1.75rem;justify-content:center;pointer-events:none;width:1.75rem;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover>span>span>span>.custom-checkbox{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}.btn-mcq-option:active>span>span>span>.custom-checkbox.preview-only,.btn-mcq-option:hover>span>span>span>.custom-checkbox.preview-only{border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}}.btn-mcq-option:active>span>span>span>.custom-checkbox{border-width:2px;--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity))}.btn-mcq-option.selected>span>span>span>.custom-checkbox{border-width:0;pointer-events:none;--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option.selected:hover>span>span>span>.custom-checkbox{border-width:0;--tw-bg-opacity:1;background-color:rgb(76 91 226/var(--tw-bg-opacity))}}.btn-mcq-option.selected:active>span>span>span>.custom-checkbox{border-width:0;--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity))}.btn-mcq-option.finished:active>span>span>span>.custom-checkbox,.btn-mcq-option.finished:hover>span>span>span>.custom-checkbox{border-width:1px;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.btn-mcq-option.missing.correct{border-width:1px;--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option.correct.interactive:active,.btn-mcq-option.correct.interactive:hover,.btn-mcq-option.incorrect.interactive:active,.btn-mcq-option.incorrect.interactive:hover,.btn-mcq-option.missing.interactive:active,.btn-mcq-option.missing.interactive:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}}.btn-mcq-option.selected.correct{background-color:rgb(240 253 244/var(--tw-bg-opacity));border-color:rgb(21 128 61/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected.correct,.btn-mcq-option.selected.incorrect{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.btn-mcq-option.selected.incorrect{background-color:rgb(253 242 248/var(--tw-bg-opacity));border-color:rgb(190 24 93/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected.correct>span>span>span>.\\!choice,.btn-mcq-option.selected.correct>span>span>span>.choice,.btn-mcq-option.selected.incorrect>span>span>span>.\\!choice,.btn-mcq-option.selected.incorrect>span>span>span>.choice{border-width:1px;--tw-border-opacity:1;border-color:rgb(113 115 119/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.btn-close-icon:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529;outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.btn-close-icon{align-items:center;display:inline-flex;height:1.5rem;justify-content:center;width:1.5rem}@media(min-width: 732px){.btn-close-icon{height:2.75rem;width:2.75rem}}.btn-close-icon>.icon-surface{height:1rem;width:1rem}.btn-close-icon>.icon-surface,.btn-square-lg{align-items:center;display:flex;justify-content:center}.btn-square-lg{bottom:1.25rem;height:44px;position:absolute;right:0.25rem;width:44px}.btn-square-lg:focus{outline:2px solid transparent;outline-offset:2px}.btn-square-lg>.icon-surface-lg{background-color:hsla(0, 0%, 100%, 0.8);border-color:transparent;border-radius:4px;border-width:1px;padding:0.375rem}@media(min-width: 732px){.btn-square-lg>.icon-surface-lg{border-radius:0.375rem}}.btn-square-lg:hover>.icon-surface-lg{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.btn-square-lg:active>.icon-surface-lg{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}.btn-square-lg:focus-visible>.icon-surface-lg{--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 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529;outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.typein-textbox:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;transition-duration:50ms}.typein-textbox{border-radius:0.5rem;border-width:1px;width:100%;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));font-size:1rem;line-height:1.5rem;padding:0.75rem 1rem;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.typein-textbox::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(55 65 81/var(--tw-placeholder-opacity))}.typein-textbox::placeholder{--tw-placeholder-opacity:1;color:rgb(55 65 81/var(--tw-placeholder-opacity))}.typein-textbox:focus{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}}.typein-textbox:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0)) !important}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{transition-duration:50ms}}.typein-textbox:focus{outline-color:#212529;outline-width:2px}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{outline-color:#212529;outline-width:2px}}.typein-textbox:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity))}.inline-typein-container>p{font-size:1.25rem;font-weight:600;line-height:3rem;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}#dnd-action-dragged-el{outline:2px solid transparent;outline-offset:2px;--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 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;cursor:grabbing !important;transition-duration:50ms;--tw-border-opacity:1!important;border-color:rgb(93 99 107/var(--tw-border-opacity)) !important;--tw-bg-opacity:1!important;background-color:rgb(205 208 254/var(--tw-bg-opacity)) !important}#dnd-action-dragged-el .btn-vertical-icon{cursor:grabbing !important;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}#dnd-action-dragged-el .preview-icon{display:none !important}#dnd-action-dragged-el .preview-vertical{display:block !important}.category-content>.missing-answer-label{display:block}.category-content>.missing-answer-label~.missing-answer-label{display:none}.image-description,.text-stimulus{padding-bottom:1rem;padding-top:1rem}.text-stimulus p{font-size:1.25rem;line-height:1.75rem;padding-bottom:0.5rem;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.image-description p{font-size:0.875rem;line-height:1.25rem;padding-bottom:0.5rem;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.text-stimulus ol,.text-stimulus ul{font-size:1rem;line-height:1.5rem;list-style-position:inside;padding-bottom:0.5rem;padding-left:0.5rem}.text-stimulus ol ::marker,.text-stimulus ul ::marker{color:#282c87}.text-stimulus ol::marker,.text-stimulus ul::marker{color:#282c87}.image-description ol,.image-description ul{font-size:0.875rem;line-height:1.25rem;list-style-position:inside;padding-bottom:0.5rem;padding-left:0.5rem}.image-description ol ::marker,.image-description ul ::marker{color:#212529}.image-description ol::marker,.image-description ul::marker{color:#212529}.image-description ul,.text-stimulus ul{list-style-type:disc}.image-description ol,.text-stimulus ol{list-style-type:decimal}.image-description ul li>p,.text-stimulus ul li>p{margin-left:-0.5rem}.text-stimulus ol>li>p,.text-stimulus ul>li>p{display:inline;font-size:1rem;line-height:1.5rem;padding-bottom:0;padding-top:0}.image-description ol>li>p,.image-description ul>li>p{display:inline;font-size:0.875rem;line-height:1.25rem;padding-bottom:0;padding-top:0}.image-description div.table-container:focus,.text-stimulus div.table-container:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;transition-duration:50ms}.image-description div.table-container,.text-stimulus div.table-container{border-radius:0.5rem;overflow:auto;padding-left:0.125rem;padding-right:0.125rem}.image-description table,.text-stimulus table{margin-bottom:1rem;margin-top:0.5rem;width:100%;--tw-border-spacing-x:0.75rem;--tw-border-spacing-y:0.75rem;border-radius:0.5rem;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);overflow-x:auto;--tw-shadow:0 0 0 1px #9ca3af;--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.image-description table tr,.text-stimulus table tr{border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity))}.image-description table tr:last-child,.text-stimulus table tr:last-child{border-color:transparent}.image-description table td,.image-description table th,.text-stimulus table td,.text-stimulus table th{border-left-width:1px;min-width:140px;--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity))}.image-description table td:first-child,.image-description table th:first-child,.text-stimulus table td:first-child,.text-stimulus table th:first-child{border-style:none}.text-stimulus table td>p,.text-stimulus table th>p{font-size:1rem;line-height:1.5rem;padding:0.75rem;text-align:left;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.image-description table td>p,.image-description table th>p{font-size:0.875rem;line-height:1.25rem;padding:0.75rem;text-align:left;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.text-stimulus table th>p{font-weight:400}.image-description table th p,.prompt p,.text-stimulus table th p{font-weight:600}.prompt p b,.prompt p b i,.prompt p b i u,.prompt p b u,.prompt p b u i,.prompt p i b,.prompt p i b u,.prompt p i u b,.prompt p u b,.prompt p u b i,.prompt p u i b,.text-stimulus table th p b,.text-stimulus table th p b i,.text-stimulus table th p b i u,.text-stimulus table th p b u,.text-stimulus table th p b u i,.text-stimulus table th p i b,.text-stimulus table th p i b u,.text-stimulus table th p i u b,.text-stimulus table th p u b,.text-stimulus table th p u b i,.text-stimulus table th p u i b{font-weight:900}.dropdown-text:not(:last-child),.dropdown:not(:last-child){margin-right:1rem}.dropdown-container{align-items:center;border-radius:0.5rem;border-width:1px;display:flex;height:2.75rem;overflow:hidden;white-space:nowrap;width:15rem;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}.dropdown-container:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0))}.dropdown-container:active,.dropdown-container:focus{border-width:2px;box-shadow:0 0 0 2px #fff, 0 0 0 4px #212529, 0 0 0 6px #fde047;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}@media(hover: hover) and (pointer: fine){.dropdown-container:hover{border-width:2px;--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));outline-color:#212529;outline-width:2px}}.dropdown-menu{border-radius:0.5rem;border-width:1px;margin-top:0.5rem;max-height:400px;max-width:500px;min-width:240px;overflow-y:auto;position:absolute;z-index:50;--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}@supports (overflow-wrap: anywhere){.dropdown-menu{overflow-wrap:anywhere}}@supports not (overflow-wrap: anywhere){.dropdown-menu{word-break:break-word}}.dropdown-item{cursor:pointer;font-size:1rem;line-height:1.5rem;outline:2px solid transparent;outline-offset:2px;padding:0.5rem 1rem}.dropdown-itemtext{border-bottom-width:1px;border-color:transparent}.dropdown-itemtext.hover-option{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity));font-weight:600;--tw-text-opacity:1;color:rgb(46 47 212/var(--tw-text-opacity))}.dropdown-itemtext.current-option{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity));--tw-text-opacity:1;border-bottom-width:1px;color:rgb(0 0 0/var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px;--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.dropdown-itemtext:active{border-bottom-width:2px;font-weight:600}.image-description-accordion{border-bottom-width:1px;border-color:transparent;font-weight:600;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.group:focus .image-description-accordion{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity));--tw-text-opacity:1;border-bottom-width:1px;color:rgb(0 0 0/var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px}.group:focus .image-description-accordion,.group:hover .image-description-accordion{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.group:active .image-description-accordion{border-bottom-width:2px}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0, 0, 0, 0);border-width:0;white-space:nowrap}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-y-0{bottom:0;top:0}.-top-2{top:-0.5rem}.-top-2\\.5{top:-0.625rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.bottom-\\[7px\\]{bottom:7px}.bottom-full{bottom:100%}.left-0{left:0}.left-1\\/2{left:50%}.left-4{left:1rem}.left-6{left:1.5rem}.left-\\[-9999px\\]{left:-9999px}.left-full{left:100%}.right-0{right:0}.right-4{right:1rem}.right-6{right:1.5rem}.right-full{right:100%}.top-0{top:0}.top-1{top:0.25rem}.top-1\\/2{top:50%}.top-12{top:3rem}.top-3{top:0.75rem}.top-3\\.5{top:0.875rem}.top-\\[13px\\]{top:13px}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.m-0{margin:0}.m-auto{margin:auto}.mx-0{margin-left:0;margin-right:0}.mx-0\\.5{margin-left:0.125rem;margin-right:0.125rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-bottom:0.25rem;margin-top:0.25rem}.my-1\\.5{margin-bottom:0.375rem;margin-top:0.375rem}.my-2{margin-bottom:0.5rem;margin-top:0.5rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.my-auto{margin-bottom:auto;margin-top:auto}.-mb-1{margin-bottom:-0.25rem}.-ml-1{margin-left:-0.25rem}.-mr-1{margin-right:-0.25rem}.-mt-0{margin-top:0}.-mt-0\\.5{margin-top:-0.125rem}.-mt-1{margin-top:-0.25rem}.mb-0{margin-bottom:0}.mb-0\\.5{margin-bottom:0.125rem}.mb-1{margin-bottom:0.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-\\[9\\.5px\\]{margin-bottom:9.5px}.ml-1{margin-left:0.25rem}.ml-2{margin-left:0.5rem}.ml-2\\.5{margin-left:0.625rem}.ml-3{margin-left:0.75rem}.ml-8{margin-left:2rem}.ml-8\\.5{margin-left:2.125rem}.ml-\\[3px\\]{margin-left:3px}.ml-\\[9\\.5px\\]{margin-left:9.5px}.mr-1{margin-right:0.25rem}.mr-2{margin-right:0.5rem}.mr-4{margin-right:1rem}.mr-\\[9\\.5px\\]{margin-right:9.5px}.mt-0{margin-top:0}.mt-0\\.5{margin-top:0.125rem}.mt-1{margin-top:0.25rem}.mt-2{margin-top:0.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-7\\.5{margin-top:1.875}.mt-9{margin-top:2.25rem}.mt-\\[9\\.5px\\]{margin-top:9.5px}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.line-clamp-3{-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-10\\.5{height:2.625rem}.h-11{height:2.75rem}.h-2{height:0.5rem}.h-3{height:0.75rem}.h-4{height:1rem}.h-52{height:13rem}.h-6{height:1.5rem}.h-\\[8\\.77px\\]{height:8.77px}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.max-h-\\[184px\\]{max-height:184px}.max-h-\\[470px\\]{max-height:470px}.max-h-\\[660px\\]{max-height:660px}.max-h-\\[calc\\(100vh-208px\\)\\]{max-height:calc(100vh - 208px)}.min-h-\\[133px\\]{min-height:133px}.min-h-\\[140px\\]{min-height:140px}.min-h-\\[154px\\]{min-height:154px}.min-h-\\[210px\\]{min-height:210px}.min-h-\\[44px\\]{min-height:44px}.min-h-\\[54px\\]{min-height:54px}.min-h-\\[86px\\]{min-height:86px}.w-1\\/2{width:50%}.w-11{width:2.75rem}.w-2{width:0.5rem}.w-2\\/3{width:66.666667%}.w-2\\/4{width:50%}.w-3{width:0.75rem}.w-3\\/4{width:75%}.w-4{width:1rem}.w-5\\/6{width:83.333333%}.w-6{width:1.5rem}.w-60{width:15rem}.w-7\\/12{width:58.333333%}.w-8{width:2rem}.w-8\\.5{width:2.125rem}.w-\\[8\\.77px\\]{width:8.77px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\\[288px\\]{min-width:288px}.min-w-\\[44px\\]{min-width:44px}.min-w-\\[85px\\]{min-width:85px}.max-w-\\[300px\\]{max-width:300px}.max-w-\\[304px\\]{max-width:304px}.max-w-\\[400px\\]{max-width:400px}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.basis-0{flex-basis:0px}.-translate-x-1\\/2{--tw-translate-x:-50%}.-translate-x-1\\/2,.-translate-y-1\\/2{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y:-50%}.rotate-45{--tw-rotate:45deg;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))}.\\!cursor-default{cursor:default !important}.\\!cursor-pointer{cursor:pointer !important}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:0.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0.5rem * var(--tw-space-y-reverse));margin-top:calc(0.5rem * (1 - var(--tw-space-y-reverse)))}.space-y-reverse>:not([hidden])~:not([hidden]){--tw-space-y-reverse:1}.overflow-hidden{overflow:hidden}.overflow-y-visible{overflow-y:visible}.truncate{overflow:hidden;white-space:nowrap}.text-ellipsis,.truncate{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:0.25rem}.rounded-\\[32px\\]{border-radius:32px}.rounded-lg{border-radius:0.5rem}.rounded-md{border-radius:0.375rem}.rounded-b-lg{border-bottom-left-radius:0.5rem;border-bottom-right-radius:0.5rem}.rounded-b-md{border-bottom-left-radius:0.375rem;border-bottom-right-radius:0.375rem}.rounded-l-lg{border-bottom-left-radius:0.5rem;border-top-left-radius:0.5rem}.rounded-t-lg{border-top-left-radius:0.5rem;border-top-right-radius:0.5rem}.rounded-t-md{border-top-left-radius:0.375rem;border-top-right-radius:0.375rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-l-6{border-left-width:6px}.border-dashed{border-style:dashed}.\\!border-blue-1000{--tw-border-opacity:1!important;border-color:rgb(40 44 135/var(--tw-border-opacity)) !important}.border-blue-1000{--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity))}.border-blue-950{--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity))}.border-border-minimal{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.border-charcoal{--tw-border-opacity:1;border-color:rgb(33 37 41/var(--tw-border-opacity))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.border-gray-850{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}.border-green-800{--tw-border-opacity:1;border-color:rgb(0 102 5/var(--tw-border-opacity))}.border-green-900{--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity))}.border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.border-red-800{--tw-border-opacity:1;border-color:rgb(217 12 85/var(--tw-border-opacity))}.border-red-900{--tw-border-opacity:1;border-color:rgb(190 24 93/var(--tw-border-opacity))}.border-soft-blue{--tw-border-opacity:1;border-color:rgb(84 101 251/var(--tw-border-opacity))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.\\!bg-violet-100{--tw-bg-opacity:1!important;background-color:rgb(235 235 255/var(--tw-bg-opacity)) !important}.\\!bg-violet-150{--tw-bg-opacity:1!important;background-color:rgb(205 208 254/var(--tw-bg-opacity)) !important}.\\!bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity)) !important}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-blue-1000{--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.bg-charcoal\\/30{background-color:rgba(33, 37, 41, 0.3)}.bg-charcoal\\/80{background-color:rgba(33, 37, 41, 0.8)}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(247 250 250/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(244 244 244/var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(57 62 69/var(--tw-bg-opacity))}.bg-green-300{--tw-bg-opacity:1;background-color:rgb(241 254 241/var(--tw-bg-opacity))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(253 243 247/var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(253 242 248/var(--tw-bg-opacity))}.bg-soft-blue{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-violet-100{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.bg-violet-150{--tw-bg-opacity:1;background-color:rgb(205 208 254/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-white\\/80{background-color:hsla(0, 0%, 100%, 0.8)}.bg-yellow-1000{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity))}.bg-opacity-5{--tw-bg-opacity:0.05}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-0\\.5{padding:0.125rem}.p-1{padding:0.25rem}.p-1\\.5{padding:0.375rem}.p-2{padding:0.5rem}.p-3{padding:0.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-bottom:0.25rem;padding-top:0.25rem}.py-1\\.5{padding-bottom:0.375rem;padding-top:0.375rem}.py-2{padding-bottom:0.5rem;padding-top:0.5rem}.py-\\[9px\\]{padding-bottom:9px;padding-top:9px}.\\!pr-11{padding-right:2.75rem !important}.pb-0{padding-bottom:0}.pb-10{padding-bottom:2.5rem}.pb-2{padding-bottom:0.5rem}.pb-3{padding-bottom:0.75rem}.pl-13\\.2{padding-left:3.125rem}.pl-24{padding-left:6rem}.pl-3{padding-left:0.75rem}.pl-4{padding-left:1rem}.pr-3{padding-right:0.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-0\\.5{padding-top:0.125rem}.pt-14{padding-top:3.5rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\\[15px\\]{padding-top:15px}.pt-\\[55px\\]{padding-top:55px}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:0.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-12{line-height:3rem}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-\\[1\\.5\\]{line-height:1.5}.leading-\\[150\\%\\]{line-height:150%}.leading-\\[19\\.2px\\]{line-height:19.2px}.leading-\\[19px\\]{line-height:19px}.leading-\\[22px\\]{line-height:22px}.\\!text-gray-900{--tw-text-opacity:1!important;color:rgb(57 62 69/var(--tw-text-opacity)) !important}.text-blue-1000{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.text-blue-850{--tw-text-opacity:1;color:rgb(46 47 212/var(--tw-text-opacity))}.text-blue-950{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity))}.text-charcoal{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgb(93 99 107/var(--tw-text-opacity))}.text-gray-860{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-green-800{--tw-text-opacity:1;color:rgb(0 102 5/var(--tw-text-opacity))}.text-green-900{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.text-inherit{color:inherit}.text-primary-emphasis{--tw-text-opacity:1;color:rgb(8 38 99/var(--tw-text-opacity))}.text-red-800{--tw-text-opacity:1;color:rgb(217 12 85/var(--tw-text-opacity))}.text-red-900{--tw-text-opacity:1;color:rgb(190 24 93/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.opacity-5{opacity:0.05}.opacity-50{opacity:0.5}.shadow-\\[0_-12px_14px_-16px_\\#00000033\\]{--tw-shadow:0 -12px 14px -16px #00000033;--tw-shadow-colored:0 -12px 14px -16px var(--tw-shadow-color)}.shadow-\\[0_-12px_14px_-16px_\\#00000033\\],.shadow-md{box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.shadow-md{--tw-shadow:0px 2px 8px rgba(0,0,0,.2);--tw-shadow-colored:0px 2px 8px var(--tw-shadow-color)}.\\!outline-none{outline:2px solid transparent !important;outline-offset:2px !important}.outline-none{outline:2px solid transparent;outline-offset:2px}.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)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-duration:0.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(0.4, 0, 0.2, 1)}.duration-300{transition-duration:0.3s}.active\\:raw-focus-ring-by:active{--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);--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529}.active\\:raw-focus-ring-by:active,.active\\:raw-focus-ring:active{box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.active\\:raw-focus-ring:active{--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);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px}@media(min-width: 732px){.md\\:item-heading{font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem;--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.category-content>.md\\:missing-answer-label{display:block}.category-content>.md\\:missing-answer-label~.md\\:missing-answer-label{display:none}}@media(hover: hover) and (pointer: fine){.td\\:hover-focus-ring:hover{outline:2px solid transparent;outline-offset:2px;--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 rgba(0, 0, 0, 0));--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;transition-duration:50ms}.td\\:hover\\:hover-option:hover.dropdown-itemtext{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity));font-weight:600;--tw-text-opacity:1;color:rgb(46 47 212/var(--tw-text-opacity))}}.last\\:mr-0:last-child{margin-right:0}.focus-within\\:left-0:focus-within{left:0}.focus-within\\:right-0:focus-within{right:0}.focus-within\\:top-0:focus-within{top:0}.focus-within\\:z-30:focus-within{z-index:30}.hover\\:bg-bg-minimal:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.hover\\:bg-black-50:hover{background-color:rgba(0, 0, 0, 0.0509803922)}.hover\\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity))}.hover\\:bg-violet-100:hover{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.hover\\:bg-yellow-1000:hover{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity))}.hover\\:text-charcoal:hover{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:decoration-2:hover{text-decoration-thickness:2px}.hover\\:underline-offset-\\[25\\%\\]:hover{text-underline-offset:25%}.focus\\:outline-transparent:focus{outline-color:transparent}.focus-visible\\:border:focus-visible{border-width:1px}.focus-visible\\:border-charcoal:focus-visible{--tw-border-opacity:1;border-color:rgb(33 37 41/var(--tw-border-opacity))}.focus-visible\\:border-gray-400:focus-visible{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.focus-visible\\:border-gray-800:focus-visible{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.focus-visible\\:bg-yellow-900:focus-visible{--tw-bg-opacity:1;background-color:rgb(253 224 71/var(--tw-bg-opacity))}.focus-visible\\:text-charcoal:focus-visible{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.focus-visible\\:underline:focus-visible{text-decoration-line:underline}.focus-visible\\:decoration-2:focus-visible{text-decoration-thickness:2px}.focus-visible\\:underline-offset-\\[25\\%\\]:focus-visible{text-underline-offset:25%}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.active\\:bg-black-55:active,.active\\:bg-black-60:active{background-color:rgba(0, 0, 0, 0.1019607843)}.active\\:bg-yellow-1100:active{--tw-bg-opacity:1;background-color:rgb(238 206 26/var(--tw-bg-opacity))}.active\\:text-charcoal:active{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.disabled\\:text-gray-40:disabled{--tw-text-opacity:1;color:rgb(142 147 153/var(--tw-text-opacity))}.disabled\\:hover\\:bg-white:hover:disabled{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.group\\/itemContainer:hover .group-hover\\/itemContainer\\:bg-violet-100{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.group:hover .group-hover\\:underline{text-decoration-line:underline}.group.active .group-\\[\\.active\\]\\:border-b-2{border-bottom-width:2px}@media(min-width: 732px){.md\\:inset-0{inset:0}.md\\:top-20{top:5rem}.md\\:mx-\\[60px\\]{margin-left:60px;margin-right:60px}.md\\:mx-auto{margin-left:auto;margin-right:auto}.md\\:mb-2{margin-bottom:0.5rem}.md\\:mb-4{margin-bottom:1rem}.md\\:mb-8{margin-bottom:2rem}.md\\:ml-0{margin-left:0}.md\\:mt-0{margin-top:0}.md\\:mt-14{margin-top:3.5rem}.md\\:block{display:block}.md\\:inline-block{display:inline-block}.md\\:flex{display:flex}.md\\:grid{display:grid}.md\\:hidden{display:none}.md\\:h-\\[13\\.5px\\]{height:13.5px}.md\\:h-fit{height:-moz-fit-content;height:fit-content}.md\\:max-h-\\[calc\\(100vh-112px\\)\\]{max-height:calc(100vh - 112px)}.md\\:min-h-0{min-height:0}.md\\:min-h-\\[140px\\]{min-height:140px}.md\\:min-h-\\[164px\\]{min-height:164px}.md\\:w-1\\/2{width:50%}.md\\:w-\\[13\\.5px\\]{width:13.5px}.md\\:w-fit{width:-moz-fit-content;width:fit-content}.md\\:min-w-full{min-width:100%}.md\\:max-w-\\[620px\\]{max-width:620px}.md\\:flex-none{flex:none}.md\\:grow-0{flex-grow:0}.md\\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.md\\:flex-row{flex-direction:row}.md\\:flex-col{flex-direction:column}.md\\:items-start{align-items:flex-start}.md\\:items-center{align-items:center}.md\\:justify-normal{justify-content:normal}.md\\:justify-center{justify-content:center}.md\\:justify-between{justify-content:space-between}.md\\:gap-6{gap:1.5rem}.md\\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.md\\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px * var(--tw-space-y-reverse));margin-top:calc(0px * (1 - var(--tw-space-y-reverse)))}.md\\:rounded-md{border-radius:0.375rem}.md\\:rounded-b-none{border-bottom-left-radius:0;border-bottom-right-radius:0}.md\\:border{border-width:1px}.md\\:border-gray-400{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.md\\:\\!bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity)) !important}.md\\:p-4{padding:1rem}.md\\:px-0{padding-left:0;padding-right:0}.md\\:px-4{padding-left:1rem;padding-right:1rem}.md\\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\\:py-14{padding-bottom:3.5rem;padding-top:3.5rem}.md\\:pb-0{padding-bottom:0}.md\\:pl-13\\.2{padding-left:3.125rem}.md\\:pl-4{padding-left:1rem}.md\\:pr-4{padding-right:1rem}.md\\:pt-20{padding-top:5rem}.md\\:pt-20\\.5{padding-top:5.125rem}.md\\:text-center{text-align:center}.md\\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\\:shadow-\\[0_0_\\#0000\\]{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.group\\/itemContainer:hover .md\\:group-hover\\/itemContainer\\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}}@media(min-width: 1196px){.lg\\:left-16{left:4rem}.lg\\:right-16{right:4rem}.lg\\:mx-0{margin-left:0;margin-right:0}.lg\\:mx-\\[60px\\]{margin-left:60px;margin-right:60px}.lg\\:flex{display:flex}.lg\\:hidden{display:none}.lg\\:max-h-\\[calc\\(100vh-192px\\)\\]{max-height:calc(100vh - 192px)}.lg\\:min-h-\\[224px\\]{min-height:224px}.lg\\:max-w-\\[50\\%\\]{max-width:50%}.lg\\:grow{flex-grow:1}.lg\\:basis-1\\/2{flex-basis:50%}.lg\\:rounded-b-lg{border-bottom-left-radius:0.5rem;border-bottom-right-radius:0.5rem}.lg\\:rounded-t-lg{border-top-left-radius:0.5rem;border-top-right-radius:0.5rem}.lg\\:px-16{padding-left:4rem;padding-right:4rem}.lg\\:py-24{padding-bottom:6rem;padding-top:6rem}}@media(hover: hover) and (pointer: fine){.td\\:border-2{border-width:2px}.td\\:border-blue-900{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}.td\\:hover\\:cursor-grab:hover{cursor:grab}.td\\:hover\\:border-gray-800:hover{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.td\\:hover\\:bg-black-50:hover{background-color:rgba(0, 0, 0, 0.0509803922)}.td\\:hover\\:bg-violet-100:hover{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.td\\:hover\\:text-soft-blue:hover{--tw-text-opacity:1;color:rgb(84 101 251/var(--tw-text-opacity))}.group:hover .td\\:group-hover\\:bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.group:hover .td\\:group-hover\\:opacity-5{opacity:0.05}}');
18664
20576
  }
18665
20577
  function create_else_block_14(ctx) {
18666
20578
  let invalidbanner;
@@ -18690,7 +20602,7 @@
18690
20602
  }
18691
20603
  };
18692
20604
  }
18693
- function create_if_block_112(ctx) {
20605
+ function create_if_block_113(ctx) {
18694
20606
  let current_block_type_index;
18695
20607
  let if_block;
18696
20608
  let if_block_anchor;
@@ -18778,7 +20690,7 @@
18778
20690
  }
18779
20691
  };
18780
20692
  }
18781
- function create_if_block14(ctx) {
20693
+ function create_if_block16(ctx) {
18782
20694
  let promptskeleton;
18783
20695
  let current;
18784
20696
  promptskeleton = new PromptSkeleton_default({});
@@ -19150,7 +21062,7 @@
19150
21062
  }
19151
21063
  };
19152
21064
  }
19153
- function create_fragment18(ctx) {
21065
+ function create_fragment20(ctx) {
19154
21066
  let current_block_type_index;
19155
21067
  let if_block;
19156
21068
  let t2;
@@ -19158,7 +21070,7 @@
19158
21070
  let link1;
19159
21071
  let link2;
19160
21072
  let current;
19161
- const if_block_creators = [create_if_block14, create_if_block_112, create_else_block_14];
21073
+ const if_block_creators = [create_if_block16, create_if_block_113, create_else_block_14];
19162
21074
  const if_blocks = [];
19163
21075
  function select_block_type(ctx2, dirty) {
19164
21076
  if (
@@ -19242,7 +21154,7 @@
19242
21154
  };
19243
21155
  }
19244
21156
  var bannerLabel = "Invalid session id.";
19245
- function instance17($$self, $$props, $$invalidate) {
21157
+ function instance19($$self, $$props, $$invalidate) {
19246
21158
  const { "session-id": sessionId, "preview-mode": previewMode, "item-id": itemId, "preview-contentful": previewContentful } = $$props;
19247
21159
  const previewModeType = ["true", "interactive"];
19248
21160
  const isPreviewModeInteractive = Boolean(previewMode === "interactive" && itemId);
@@ -19512,7 +21424,7 @@
19512
21424
  var PromptBuilder = class extends SvelteComponent {
19513
21425
  constructor(options) {
19514
21426
  super();
19515
- init(this, options, instance17, create_fragment18, safe_not_equal, {}, add_css2);
21427
+ init(this, options, instance19, create_fragment20, safe_not_equal, {}, add_css);
19516
21428
  }
19517
21429
  };
19518
21430
  customElements.define("prompt-builder", create_custom_element(PromptBuilder, {}, [], [], true));