@citolab/qti-components 7.3.20 → 7.3.21

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.
Files changed (275) hide show
  1. package/cdn/chunks/chunk-2BSPQRNR.js +6 -0
  2. package/cdn/chunks/chunk-2IJBTWWT.js +2 -0
  3. package/cdn/chunks/chunk-3BPUHYAN.js +1 -0
  4. package/cdn/chunks/chunk-3CVBBZDT.js +17 -0
  5. package/cdn/chunks/chunk-3IBGLVHA.js +1 -0
  6. package/cdn/chunks/chunk-4AGE7DVK.js +48 -0
  7. package/cdn/chunks/chunk-4DXCBZFR.js +3698 -0
  8. package/cdn/chunks/chunk-4FBS7ODL.js +6 -0
  9. package/cdn/chunks/chunk-4IWCVQQJ.js +8 -0
  10. package/cdn/chunks/chunk-522JFYKC.js +6 -0
  11. package/cdn/chunks/chunk-5L5JXKEA.js +1 -0
  12. package/cdn/chunks/chunk-5TEGKCEI.js +48 -0
  13. package/cdn/chunks/chunk-5WLHU3FH.js +8 -0
  14. package/cdn/chunks/chunk-6ELXCFB2.js +1 -0
  15. package/cdn/chunks/chunk-6Q3S6QYF.js +1471 -0
  16. package/cdn/chunks/chunk-6SGFGN34.js +8 -0
  17. package/cdn/chunks/chunk-6XVY32RS.js +1 -0
  18. package/cdn/chunks/chunk-6ZE2IMSJ.js +1471 -0
  19. package/cdn/chunks/chunk-73RDXCTO.js +1 -0
  20. package/cdn/chunks/chunk-73YTM4JU.js +8 -0
  21. package/cdn/chunks/chunk-A57EJSRU.js +1 -0
  22. package/cdn/chunks/chunk-AAZIKH5Z.js +3650 -0
  23. package/cdn/chunks/chunk-AMJIIPBQ.js +48 -0
  24. package/cdn/chunks/chunk-BGFVQO5N.js +8 -0
  25. package/cdn/chunks/chunk-BRXZ5HLX.js +8 -0
  26. package/cdn/chunks/chunk-BSBPPIVO.js +5 -0
  27. package/cdn/chunks/chunk-BURSTFDF.js +2 -0
  28. package/cdn/chunks/chunk-C7AO3IVZ.js +48 -0
  29. package/cdn/chunks/chunk-CTNAGYH7.js +1 -0
  30. package/cdn/chunks/chunk-DESMFZJW.js +5 -0
  31. package/cdn/chunks/chunk-DNBBQ7LY.js +1 -0
  32. package/cdn/chunks/chunk-DP5FVJRS.js +21 -0
  33. package/cdn/chunks/chunk-E46BCOOW.js +1 -0
  34. package/cdn/chunks/chunk-EGFC4XQG.js +5 -0
  35. package/cdn/chunks/chunk-EQ4LUVQK.js +8 -0
  36. package/cdn/chunks/chunk-EXVHRHST.js +8 -0
  37. package/cdn/chunks/chunk-FC7HXYUV.js +8 -0
  38. package/cdn/chunks/chunk-FEJUVLN4.js +6 -0
  39. package/cdn/chunks/chunk-FLQBFTRW.js +37 -0
  40. package/cdn/chunks/chunk-FUGKKQ6E.js +1 -0
  41. package/cdn/chunks/chunk-FWFPMNDO.js +5 -0
  42. package/cdn/chunks/chunk-FYXNIYGH.js +1 -0
  43. package/cdn/chunks/chunk-GFO3YUEH.js +1 -0
  44. package/cdn/chunks/chunk-HAE5ZHID.js +1 -0
  45. package/cdn/chunks/chunk-HCXHHI6V.js +18 -0
  46. package/cdn/chunks/chunk-HDMF4QZO.js +48 -0
  47. package/cdn/chunks/chunk-HKUIQBCM.js +1 -0
  48. package/cdn/chunks/chunk-HKWYQB5Z.js +37 -0
  49. package/cdn/chunks/chunk-HO6JOQX4.js +25 -0
  50. package/cdn/chunks/chunk-HTH5YCZO.js +8 -0
  51. package/cdn/chunks/chunk-IHVTWACH.js +8 -0
  52. package/cdn/chunks/chunk-ILEDSBLL.js +8 -0
  53. package/cdn/chunks/chunk-IYZLVTNL.js +5 -0
  54. package/cdn/chunks/chunk-J5P2GBPV.js +1 -0
  55. package/cdn/chunks/chunk-KASON6Y7.js +17 -0
  56. package/cdn/chunks/chunk-KKQK6WIG.js +1 -0
  57. package/cdn/chunks/chunk-LBMZYOKF.js +8 -0
  58. package/cdn/chunks/chunk-LC7KE332.js +1 -0
  59. package/cdn/chunks/chunk-LIUOA3YV.js +1 -0
  60. package/cdn/chunks/chunk-LO4MJ72X.js +8 -0
  61. package/cdn/chunks/chunk-LRGALTZX.js +1 -0
  62. package/cdn/chunks/chunk-LRIOWAOJ.js +8 -0
  63. package/cdn/chunks/chunk-LVKOQVTZ.js +17 -0
  64. package/cdn/chunks/chunk-M4VO4BD3.js +1471 -0
  65. package/cdn/chunks/chunk-M53CKFQE.js +5 -0
  66. package/cdn/chunks/chunk-MD33BNWM.js +1 -0
  67. package/cdn/chunks/chunk-MLEUGPRW.js +8 -0
  68. package/cdn/chunks/chunk-MM76ZODZ.js +8 -0
  69. package/cdn/chunks/chunk-MQVMYZ75.js +1 -0
  70. package/cdn/chunks/chunk-MRQ46JRY.js +8 -0
  71. package/cdn/chunks/chunk-MSOBQUON.js +10 -0
  72. package/cdn/chunks/chunk-NDMZ2RAB.js +48 -0
  73. package/cdn/chunks/chunk-NJP4VZB3.js +8 -0
  74. package/cdn/chunks/chunk-NO3TZB6T.js +5 -0
  75. package/cdn/chunks/chunk-NRY6IJSD.js +5 -0
  76. package/cdn/chunks/chunk-O4RAJ3LM.js +25 -0
  77. package/cdn/chunks/chunk-OEZI5WCY.js +18 -0
  78. package/cdn/chunks/chunk-OR67S36X.js +5 -0
  79. package/cdn/chunks/chunk-OSLUHYFD.js +8 -0
  80. package/cdn/chunks/chunk-P6L4B5GC.js +1 -0
  81. package/cdn/chunks/chunk-PF74FX32.js +1 -0
  82. package/cdn/chunks/chunk-PFCJVHJ3.js +10 -0
  83. package/cdn/chunks/chunk-PP62N3C4.js +8 -0
  84. package/cdn/chunks/chunk-PQLJWD6V.js +21 -0
  85. package/cdn/chunks/chunk-PTQFS3S5.js +2 -0
  86. package/cdn/chunks/chunk-PU7OABT3.js +1 -0
  87. package/cdn/chunks/chunk-Q2CKZUYX.js +1 -0
  88. package/cdn/chunks/chunk-QEFO63QX.js +8 -0
  89. package/cdn/chunks/chunk-QIZBL4QP.js +1 -0
  90. package/cdn/chunks/chunk-RGNFAPWY.js +2 -0
  91. package/cdn/chunks/chunk-RHEBGA4B.js +1 -0
  92. package/cdn/chunks/chunk-S5QDLZ6J.js +1 -0
  93. package/cdn/chunks/chunk-SBWSYKE5.js +5 -0
  94. package/cdn/chunks/chunk-SXRIA7VB.js +8 -0
  95. package/cdn/chunks/chunk-SYTQX5DA.js +1 -0
  96. package/cdn/chunks/chunk-TLK5RNXE.js +1 -0
  97. package/cdn/chunks/chunk-TR7WXOQR.js +1 -0
  98. package/cdn/chunks/chunk-UMDZKG6K.js +1 -0
  99. package/cdn/chunks/chunk-UNK5GKOK.js +5 -0
  100. package/cdn/chunks/chunk-V2AJKKRF.js +1470 -0
  101. package/cdn/chunks/chunk-VEG7LKS3.js +48 -0
  102. package/cdn/chunks/chunk-VQ2JX2OE.js +5 -0
  103. package/cdn/chunks/chunk-W73FT5JE.js +48 -0
  104. package/cdn/chunks/chunk-W7O6UFTQ.js +5 -0
  105. package/cdn/chunks/chunk-WCCTDLQ4.js +8 -0
  106. package/cdn/chunks/chunk-WV5B4HNF.js +1471 -0
  107. package/cdn/chunks/chunk-WWMMW7RJ.js +1 -0
  108. package/cdn/chunks/chunk-X3JAXGAZ.js +8 -0
  109. package/cdn/chunks/chunk-XJWUPDZ4.js +10 -0
  110. package/cdn/chunks/chunk-XMKJLLUL.js +1 -0
  111. package/cdn/chunks/chunk-XMS6AFBV.js +5 -0
  112. package/cdn/chunks/chunk-XSVPZFGN.js +1 -0
  113. package/cdn/chunks/chunk-Y2P4IF3E.js +1 -0
  114. package/cdn/chunks/chunk-YCBNF5QU.js +17 -0
  115. package/cdn/chunks/chunk-YEGYR7SL.js +5 -0
  116. package/cdn/chunks/chunk-YHLQ2JQ2.js +1 -0
  117. package/cdn/chunks/chunk-ZO5G6CHW.js +1470 -0
  118. package/cdn/chunks/chunk-ZPCQH3EY.js +10 -0
  119. package/cdn/chunks/chunk-ZUQ72RIQ.js +8 -0
  120. package/cdn/chunks/chunk-ZZNCHSYH.js +5 -0
  121. package/cdn/exports/computed-item.context.js +1 -1
  122. package/cdn/exports/computed.context.js +1 -1
  123. package/cdn/exports/config.context.js +1 -1
  124. package/cdn/exports/interaction.js +1 -1
  125. package/cdn/exports/qti-assessment-item.context.js +1 -1
  126. package/cdn/exports/qti-condition-expression.js +1 -1
  127. package/cdn/exports/qti-expression.js +1 -1
  128. package/cdn/exports/qti.context.js +1 -1
  129. package/cdn/exports/session.context.js +1 -1
  130. package/cdn/exports/test.context.js +1 -1
  131. package/cdn/index.global.js +1 -1
  132. package/cdn/index.js +1 -1
  133. package/cdn/qti-components/index.js +1 -1
  134. package/cdn/qti-item/components/item-container.js +1 -1
  135. package/cdn/qti-item/components/item-correct-response-mode.js +1 -1
  136. package/cdn/qti-item/components/item-show-candidate-correction.js +1 -1
  137. package/cdn/qti-item/components/item-show-correct-response.js +1 -1
  138. package/cdn/qti-item/components/print-item-variables.js +1 -1
  139. package/cdn/qti-item/components/styles.js +1 -1
  140. package/cdn/qti-item/core/index.js +1 -1
  141. package/cdn/qti-test/components/index.js +1 -1
  142. package/cdn/qti-test/components/styles.js +1 -1
  143. package/cdn/qti-test/components/test-check-item.js +1 -1
  144. package/cdn/qti-test/components/test-container.js +1 -1
  145. package/cdn/qti-test/components/test-end-attempt.js +1 -1
  146. package/cdn/qti-test/components/test-item-link.js +1 -1
  147. package/cdn/qti-test/components/test-navigation.js +1 -1
  148. package/cdn/qti-test/components/test-next.js +1 -1
  149. package/cdn/qti-test/components/test-paging-buttons-stamp.js +1 -1
  150. package/cdn/qti-test/components/test-prev.js +1 -1
  151. package/cdn/qti-test/components/test-print-context.js +1 -1
  152. package/cdn/qti-test/components/test-print-item-variables.js +1 -1
  153. package/cdn/qti-test/components/test-scoring-buttons.js +1 -1
  154. package/cdn/qti-test/components/test-scoring-feedback.js +1 -1
  155. package/cdn/qti-test/components/test-section-buttons-stamp.js +1 -1
  156. package/cdn/qti-test/components/test-section-link.js +1 -1
  157. package/cdn/qti-test/components/test-show-correct-response.js +1 -1
  158. package/cdn/qti-test/components/test-stamp.js +1 -1
  159. package/cdn/qti-test/components/test-view-toggle.js +1 -1
  160. package/cdn/qti-test/components/test-view.js +1 -1
  161. package/cdn/qti-test/core/index.js +1 -1
  162. package/dist/chunks/chunk-3JJM4BKK.js +367 -0
  163. package/dist/chunks/chunk-3JJM4BKK.js.map +1 -0
  164. package/dist/chunks/chunk-3LX4O663.js +3688 -0
  165. package/dist/chunks/chunk-3LX4O663.js.map +1 -0
  166. package/dist/chunks/chunk-4PG2PZHY.js +8924 -0
  167. package/dist/chunks/chunk-4PG2PZHY.js.map +1 -0
  168. package/dist/chunks/chunk-55C6NAK5.js +142 -0
  169. package/dist/chunks/chunk-55C6NAK5.js.map +1 -0
  170. package/dist/chunks/chunk-5P64MALP.js +3640 -0
  171. package/dist/chunks/chunk-5P64MALP.js.map +1 -0
  172. package/dist/chunks/chunk-65YQSKWV.js +94 -0
  173. package/dist/chunks/chunk-65YQSKWV.js.map +1 -0
  174. package/dist/chunks/chunk-ARBFS6D6.js +8924 -0
  175. package/dist/chunks/chunk-ARBFS6D6.js.map +1 -0
  176. package/dist/chunks/chunk-EB3ZESWL.js +367 -0
  177. package/dist/chunks/chunk-EB3ZESWL.js.map +1 -0
  178. package/dist/chunks/chunk-ERYHQVOT.js +8 -0
  179. package/dist/chunks/chunk-ERYHQVOT.js.map +1 -0
  180. package/dist/chunks/chunk-FL72PF4D.js +19 -0
  181. package/dist/chunks/chunk-FL72PF4D.js.map +1 -0
  182. package/dist/chunks/chunk-HFAUM56X.js +208 -0
  183. package/dist/chunks/chunk-HFAUM56X.js.map +1 -0
  184. package/dist/chunks/chunk-JOASLKRQ.js +914 -0
  185. package/dist/chunks/chunk-JOASLKRQ.js.map +1 -0
  186. package/dist/chunks/chunk-K4QJBUIX.js +367 -0
  187. package/dist/chunks/chunk-K4QJBUIX.js.map +1 -0
  188. package/dist/chunks/chunk-KYN4AAHS.js +8839 -0
  189. package/dist/chunks/chunk-KYN4AAHS.js.map +1 -0
  190. package/dist/chunks/chunk-MLRMRXGZ.js +367 -0
  191. package/dist/chunks/chunk-MLRMRXGZ.js.map +1 -0
  192. package/dist/chunks/chunk-MOIHNOX3.js +94 -0
  193. package/dist/chunks/chunk-MOIHNOX3.js.map +1 -0
  194. package/dist/chunks/chunk-P2PRB5IZ.js +94 -0
  195. package/dist/chunks/chunk-P2PRB5IZ.js.map +1 -0
  196. package/dist/chunks/chunk-PF5X3SZR.js +94 -0
  197. package/dist/chunks/chunk-PF5X3SZR.js.map +1 -0
  198. package/dist/chunks/chunk-QCB6P7DH.js +146 -0
  199. package/dist/chunks/chunk-QCB6P7DH.js.map +1 -0
  200. package/dist/chunks/chunk-QU7KR7VX.js +367 -0
  201. package/dist/chunks/chunk-QU7KR7VX.js.map +1 -0
  202. package/dist/chunks/chunk-RTSIFU3A.js +8924 -0
  203. package/dist/chunks/chunk-RTSIFU3A.js.map +1 -0
  204. package/dist/chunks/chunk-SZ3DDAJ7.js +142 -0
  205. package/dist/chunks/chunk-SZ3DDAJ7.js.map +1 -0
  206. package/dist/chunks/chunk-SZTQ6IWR.js +8835 -0
  207. package/dist/chunks/chunk-SZTQ6IWR.js.map +1 -0
  208. package/dist/chunks/chunk-UUM4KYBV.js +914 -0
  209. package/dist/chunks/chunk-UUM4KYBV.js.map +1 -0
  210. package/dist/chunks/chunk-V4L4ONOK.js +914 -0
  211. package/dist/chunks/chunk-V4L4ONOK.js.map +1 -0
  212. package/dist/chunks/chunk-V7ACRMW7.js +914 -0
  213. package/dist/chunks/chunk-V7ACRMW7.js.map +1 -0
  214. package/dist/chunks/chunk-WEKBCXNI.js +8839 -0
  215. package/dist/chunks/chunk-WEKBCXNI.js.map +1 -0
  216. package/dist/chunks/chunk-WN6TJQI2.js +103 -0
  217. package/dist/chunks/chunk-WN6TJQI2.js.map +1 -0
  218. package/dist/chunks/chunk-XM2JOPVU.js +914 -0
  219. package/dist/chunks/chunk-XM2JOPVU.js.map +1 -0
  220. package/dist/chunks/chunk-ZZIDNW4D.js +914 -0
  221. package/dist/chunks/chunk-ZZIDNW4D.js.map +1 -0
  222. package/dist/exports/computed-item.context.d.ts +2 -1
  223. package/dist/exports/computed.context.d.ts +3 -2
  224. package/dist/exports/config.context.d.ts +1 -0
  225. package/dist/exports/config.context.js +1 -1
  226. package/dist/exports/interaction.d.ts +2 -1
  227. package/dist/exports/interaction.js +5 -2
  228. package/dist/exports/item.context.d.ts +2 -1
  229. package/dist/exports/qti-assessment-item.context.d.ts +2 -1
  230. package/dist/exports/qti-condition-expression.d.ts +2 -1
  231. package/dist/exports/qti-condition-expression.js +3 -3
  232. package/dist/exports/qti-expression.d.ts +2 -1
  233. package/dist/exports/qti-expression.js +2 -2
  234. package/dist/exports/qti-test.d.ts +3 -2
  235. package/dist/exports/session.context.d.ts +3 -2
  236. package/dist/exports/test.context.d.ts +2 -1
  237. package/dist/exports/variables.d.ts +2 -1
  238. package/dist/index.d.ts +4 -4
  239. package/dist/index.js +12 -12
  240. package/dist/item.css +66 -6
  241. package/dist/qti-components/index.d.ts +16 -5
  242. package/dist/qti-components/index.js +6 -6
  243. package/dist/qti-components-jsx.d.ts +29 -18
  244. package/dist/qti-item/components/item-container.js +2 -2
  245. package/dist/qti-item/components/item-correct-response-mode.js +1 -1
  246. package/dist/qti-item/components/item-show-candidate-correction.d.ts +2 -1
  247. package/dist/qti-item/components/item-show-correct-response.d.ts +2 -1
  248. package/dist/qti-item/components/print-item-variables.d.ts +2 -1
  249. package/dist/qti-item/core/index.d.ts +1 -1
  250. package/dist/qti-item/core/index.js +4 -4
  251. package/dist/qti-loader/index.d.ts +2 -1
  252. package/dist/qti-response-declaration-BKOw2_Pl.d.ts +1378 -0
  253. package/dist/qti-response-declaration-DKr08ANy.d.ts +1397 -0
  254. package/dist/qti-response-declaration-Dz6D30cF.d.ts +1397 -0
  255. package/dist/qti-response-declaration-d_tAAEFq.d.ts +1378 -0
  256. package/dist/qti-test/components/index.d.ts +3 -3
  257. package/dist/qti-test/components/index.js +4 -4
  258. package/dist/qti-test/components/test-container.js +2 -2
  259. package/dist/qti-test/components/test-navigation.d.ts +2 -2
  260. package/dist/qti-test/components/test-navigation.js +2 -2
  261. package/dist/qti-test/components/test-next.d.ts +3 -2
  262. package/dist/qti-test/components/test-prev.d.ts +3 -2
  263. package/dist/qti-test/components/test-print-context.d.ts +3 -2
  264. package/dist/qti-test/components/test-print-item-variables.d.ts +3 -2
  265. package/dist/qti-test/components/test-scoring-buttons.d.ts +3 -2
  266. package/dist/qti-test/components/test-scoring-feedback.d.ts +3 -2
  267. package/dist/qti-test/components/test-show-correct-response.d.ts +3 -2
  268. package/dist/qti-test/core/index.d.ts +4 -3
  269. package/dist/qti-test/core/index.js +7 -7
  270. package/dist/qti-test-feedback-Bskvq3FE.d.ts +91 -0
  271. package/dist/qti-test-feedback-CZsbp6z4.d.ts +91 -0
  272. package/dist/qti-test-feedback-dSr4W5Ft.d.ts +91 -0
  273. package/dist/qti-test-feedback-jBGxkr5n.d.ts +91 -0
  274. package/dist/vscode.html-custom-data.json +3 -2
  275. package/package.json +1 -1
@@ -0,0 +1,3698 @@
1
+ import{b,d as q,j as v}from"./chunk-HCXHHI6V.js";import{f as c}from"./chunk-HKWYQB5Z.js";var d=class{constructor(t){this.G=t}disconnect(){this.G=void 0}reconnect(t){this.G=t}deref(){return this.G}},n=class{constructor(){this.Y=void 0,this.Z=void 0}get(){return this.Y}pause(){this.Y??=new Promise(t=>this.Z=t)}resume(){this.Z?.(),this.Y=this.Z=void 0}};var m=i=>!q(i)&&typeof i.then=="function",u=1073741823,s=class extends v{constructor(){super(...arguments),this._$Cwt=u,this._$Cbt=[],this._$CK=new d(this),this._$CX=new n}render(...t){return t.find(e=>!m(e))??c}update(t,e){let g=this._$Cbt,p=g.length;this._$Cbt=e;let y=this._$CK,h=this._$CX;this.isConnected||this.disconnected();for(let r=0;r<e.length&&!(r>this._$Cwt);r++){let o=e[r];if(!m(o))return this._$Cwt=r,o;r<p&&o===g[r]||(this._$Cwt=u,p=0,Promise.resolve(o).then(async w=>{for(;h.get();)await h.get();let a=y.deref();if(a!==void 0){let l=a._$Cbt.indexOf(o);l>-1&&l<a._$Cwt&&(a._$Cwt=l,a.setValue(w))}}))}return c}disconnected(){this._$CK.disconnect(),this._$CX.pause()}reconnected(){this._$CK.reconnect(this),this._$CX.resume()}},B=b(s);var _=`@layer qti-base, qti-components, qti-utilities, qti-variants, qti-extended;
2
+
3
+ :root,
4
+ :host {
5
+ /* Active colors */
6
+ --qti-bg-active: #ffecec;
7
+ --qti-border-active: #f86d70;
8
+
9
+ /* Correct colors */
10
+ --qti-correct-light: #c8e6c9;
11
+ --qti-correct: #66bb6a;
12
+
13
+ /** Partially correct colors */
14
+ --qti-partially-correct-light: #fff3e0;
15
+ --qti-partially-correct: #ffeb3b;
16
+
17
+ /* Incorrect colors */
18
+ --qti-incorrect-light: #ef9a9a;
19
+ --qti-incorrect: #ef5350;
20
+
21
+ /* Validation colors */
22
+ --qti-validation-error-bg: #fffbeb;
23
+ --qti-validation-text: #92400e;
24
+
25
+ /* Gap size */
26
+ --qti-gap-size: 1rem;
27
+
28
+ /* Background colors */
29
+ --qti-bg: white;
30
+ --qti-hover-bg: #f9fafb;
31
+
32
+ /* Light theme colors */
33
+ --qti-light-bg-active: #f0f0f0; /* Light gray */
34
+ --qti-light-border-active: #d0d0d0; /* Medium gray */
35
+
36
+ /* Dark theme colors */
37
+ --qti-dark-bg-active: #1f2937; /* Dark gray */
38
+ --qti-dark-border-active: #64748b; /* Medium gray */
39
+
40
+ /* Disabled colors */
41
+ --qti-disabled-bg: #f3f4f6;
42
+ --qti-disabled-color: #45484f;
43
+
44
+ /* Border properties */
45
+ --qti-border-thickness: 2px;
46
+ --qti-border-style: solid;
47
+ --qti-border-color: #c6cad0;
48
+ --qti-border-radius: 0.3rem;
49
+ --qti-drop-border-radius: calc(var(--qti-border-radius) + var(--qti-border-thickness));
50
+
51
+ /* Focus & active states */
52
+ --qti-focus-border-width: 5px;
53
+ --qti-focus-color: #bddcff7e;
54
+
55
+ /* Class-specific variables */
56
+
57
+ /* Form elements */
58
+ --qti-form-size: 1rem;
59
+
60
+ /* Order buttons */
61
+ --qti-order-size: 2rem;
62
+
63
+ /* Generic padding for all elements */
64
+ --qti-padding-vertical: 0.5rem; /* py-2 */
65
+ --qti-padding-horizontal: 0.5rem; /* px-2 */
66
+
67
+ /* Dropzones */
68
+ --qti-dropzone-padding: 0rem;
69
+ }
70
+
71
+ /* SVG masks and backgrounds */
72
+
73
+ .chevron {
74
+ background: url("data:image/svg+xml,%3Csvg fill='currentColor' width='22' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath clip-rule='evenodd' fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z'%3E%3C/path%3E%3C/svg%3E")
75
+ no-repeat center right 6px;
76
+ }
77
+
78
+ .handle {
79
+ background-image: radial-gradient(
80
+ circle at center,
81
+ rgb(0 0 0 / 10%) 0,
82
+ rgb(0 0 0 / 20%) 2px,
83
+ rgb(255 255 255 / 0%) 2px,
84
+ rgb(255 255 255 / 0%) 100%
85
+ );
86
+ background-repeat: repeat-y;
87
+ background-position: left center;
88
+ background-size: 14px 8px;
89
+ }
90
+
91
+ .check-mask {
92
+ -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
93
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
94
+ }
95
+
96
+ /*
97
+ Following are classes that can be applied to elements and element states, so they are not used directly
98
+ The @apply directive is used to apply these classes to elements
99
+ */
100
+
101
+ /* Apply .bordered to an element */
102
+
103
+ .bordered {
104
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
105
+ outline: none;
106
+ }
107
+
108
+ /* Apply .form rules for checkbox and radiobutton */
109
+
110
+ .form {
111
+
112
+ /* background-color: var(--qti-bg); */
113
+ display: grid;
114
+ place-content: center;
115
+ width: var(--qti-form-size);
116
+ height: var(--qti-form-size);
117
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
118
+ outline: none;
119
+ }
120
+
121
+ /* Apply .button rules for button-like elements, such as drags and buttons */
122
+
123
+ .button {
124
+
125
+ border-radius: var(--qti-border-radius);
126
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
127
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
128
+ outline: none;
129
+ }
130
+
131
+ /* Apply .select for the select dropdown element */
132
+
133
+ .select {
134
+
135
+ border-radius: var(--qti-border-radius);
136
+ position: relative;
137
+ -webkit-appearance: none;
138
+ -moz-appearance: none;
139
+ appearance: none;
140
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
141
+ padding-right: calc(var(--qti-padding-horizontal) + 1.5rem); /* 1.5rem for the chevron */ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color); outline: none; background: url("data:image/svg+xml,%3Csvg fill='currentColor' width='22' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath clip-rule='evenodd' fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z'%3E%3C/path%3E%3C/svg%3E")
142
+ no-repeat center right 6px;
143
+ }
144
+
145
+ /* Apply .text for the input text and textarea */
146
+
147
+ .text {
148
+
149
+ border-radius: 0;
150
+ cursor: text;
151
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
152
+ background: var(--qti-bg);
153
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
154
+ outline: none;
155
+ }
156
+
157
+ /* Apply .spot for hotspot shapes */
158
+
159
+ .spot {
160
+
161
+ width: 100%;
162
+ height: 100%;
163
+ background-color: transparent;
164
+ padding: 0;
165
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
166
+ outline: none;
167
+ }
168
+
169
+ /* Apply .point for circular small hotspots */
170
+
171
+ .point {
172
+
173
+ border-radius: 100%;
174
+ border: 1px solid white;
175
+ background-color: black;
176
+ opacity: 0.5;
177
+ padding: 0;
178
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
179
+ outline: none;
180
+ }
181
+
182
+ /* Apply .drag for draggable elements */
183
+
184
+ .drag {
185
+
186
+ transition:
187
+ transform 200ms ease-out,
188
+ box-shadow 200ms ease-out,
189
+ rotate 200ms ease-out;
190
+ cursor: grab;
191
+ background-color: var(--qti-bg);
192
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
193
+ border-radius: var(--qti-border-radius);
194
+
195
+ /* padding-left: calc(var(--qti-padding-horizontal) + 0.5rem) !important; */
196
+
197
+ /* 1.5rem for the drag */
198
+
199
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
200
+
201
+ outline: none;
202
+ }
203
+
204
+ /* Apply .dragging for the dragging state of a draggable element */
205
+
206
+ .dragging {
207
+ pointer-events: none;
208
+ rotate: -2deg;
209
+ box-shadow:
210
+ 0 8px 12px rgb(0 0 0 / 20%),
211
+ 0 4px 8px rgb(0 0 0 / 10%);
212
+ }
213
+
214
+ /* Apply .drop for an element where you can drop the draggable */
215
+
216
+ .drop {
217
+ /* @apply bordered; */
218
+ border: var(--qti-border-thickness) dashed var(--qti-border-color);
219
+ background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
220
+ center no-repeat;
221
+ border-radius: var(--qti-border-radius);
222
+ position: relative;
223
+ background-color: var(--qti-bg);
224
+ }
225
+
226
+ /* Apply .dropping for an indicator where you can drop the draggable */
227
+
228
+ .dropping {
229
+ background-color: var(--qti-bg-active);
230
+ }
231
+
232
+ /* Apply .order for a small circular button */
233
+
234
+ .order {
235
+
236
+ display: grid;
237
+ place-content: center;
238
+
239
+ /* background-color: var(--qti-bg-active); */
240
+ border-radius: 100%;
241
+ width: var(--qti-order-size);
242
+ height: var(--qti-order-size);
243
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
244
+ outline: none;
245
+ }
246
+
247
+ /* Apply .check-size for radio and checkbox size */
248
+
249
+ .check-size {
250
+ width: calc(var(--qti-form-size) - 6px);
251
+ height: calc(var(--qti-form-size) - 6px);
252
+ }
253
+
254
+ /* Apply .check for checkbox */
255
+
256
+ .check {
257
+ gap: 0.5rem;
258
+ background-color: var(--qti-bg);
259
+ border-radius: var(--qti-border-radius);
260
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
261
+ outline: none;
262
+ cursor: pointer;
263
+ }
264
+
265
+ /* Apply .check-radio for outer circle of the radio buttons */
266
+
267
+ .check-radio {
268
+
269
+ border-radius: 100%;
270
+
271
+ display: grid;
272
+
273
+ place-content: center;
274
+
275
+ width: var(--qti-form-size);
276
+
277
+ height: var(--qti-form-size);
278
+
279
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
280
+
281
+ outline: none;
282
+ }
283
+
284
+ /* Apply .check-radio-checked for the inner checked radio */
285
+
286
+ .check-radio-checked {
287
+ background-color: var(--qti-border-active);
288
+ border-radius: 100%;
289
+ }
290
+
291
+ /* Apply .check-checkbox for outer square of the checkbox */
292
+
293
+ .check-checkbox {
294
+
295
+ display: flex;
296
+ place-items: center;
297
+ border-radius: var(--qti-border-radius);
298
+ display: grid;
299
+ place-content: center;
300
+ width: var(--qti-form-size);
301
+ height: var(--qti-form-size);
302
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
303
+ outline: none;
304
+ }
305
+
306
+ /* Apply .check-checkbox-checked for the inner checkmark */
307
+
308
+ .check-checkbox-checked {
309
+ background-color: var(--qti-border-active);
310
+ -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
311
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
312
+ }
313
+
314
+ /* Apply .hov for hover state */
315
+
316
+ .hov {
317
+ /* background-color: var(--qti-hover-bg); */
318
+ }
319
+
320
+ /* Apply .foc for focus state */
321
+
322
+ .foc {
323
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
324
+ }
325
+
326
+ /* Apply .act for active state */
327
+
328
+ .act {
329
+ border-color: var(--qti-border-active);
330
+ background-color: var(--qti-bg-active);
331
+ }
332
+
333
+ .act-bg {
334
+ background-color: var(--qti-bg-active);
335
+ }
336
+
337
+ .act-bor {
338
+ border-color: var(--qti-border-active);
339
+ }
340
+
341
+ /* Apply .rdo for readonly state */
342
+
343
+ .rdo {
344
+ cursor: pointer;
345
+ background-color: var(--qti-bg);
346
+ outline: 0;
347
+ border: none;
348
+ }
349
+
350
+ /* Apply .dis for disabled state */
351
+
352
+ .dis {
353
+ cursor: not-allowed;
354
+ background-color: var(--qti-disabled-bg);
355
+ color: var(--qti-disabled-color);
356
+ border-color: var(--qti-border-color);
357
+ outline: 4px solid var(--qti-disabled-bg);
358
+ }
359
+
360
+ /* base */
361
+
362
+ /* ============================
363
+ QTI 3 shared css
364
+ 1. Display
365
+ 2. Special Flex styles
366
+ 3. Margin
367
+ 4. Padding
368
+ 5. Horizontal Alignment styles
369
+ 6. Vertical Alignment styles
370
+ 7. Height
371
+ 8. Width
372
+ 9. Text-Indent
373
+ 10. List Style
374
+ 11. Layout
375
+ 12. Other QTI 3 presentation utilities
376
+ ============================ */
377
+
378
+ /* ==========
379
+ Display css
380
+ =========== */
381
+
382
+ .qti-display-inline {
383
+ display: inline;
384
+ }
385
+
386
+ .qti-display-inline-block {
387
+ display: inline-block;
388
+ }
389
+
390
+ .qti-display-block {
391
+ display: block;
392
+ }
393
+
394
+ .qti-display-flex {
395
+ display: flex;
396
+ }
397
+
398
+ .qti-display-inline-flex {
399
+ display: inline-flex;
400
+ }
401
+
402
+ .qti-display-grid {
403
+ display: grid;
404
+ }
405
+
406
+ .qti-display-inline-grid {
407
+ display: inline-grid;
408
+ }
409
+
410
+ .qti-display-table {
411
+ display: table;
412
+ }
413
+
414
+ .qti-display-table-cell {
415
+ display: table-cell;
416
+ }
417
+
418
+ .qti-display-table-row {
419
+ display: table-row;
420
+ }
421
+
422
+ .qti-display-list-item {
423
+ display: list-item;
424
+ }
425
+
426
+ .qti-display-inherit {
427
+ display: inherit;
428
+ }
429
+
430
+ /*
431
+ * hidden to screen readers and sighted
432
+ */
433
+
434
+ .qti-hidden {
435
+ display: none;
436
+ }
437
+
438
+ /*
439
+ * visible to screen readers, hidden to sighted
440
+ */
441
+
442
+ .qti-visually-hidden {
443
+ position: fixed !important;
444
+ overflow: hidden;
445
+ clip: rect(1px 1px 1px 1px);
446
+ height: 1px;
447
+ width: 1px;
448
+ border: 0;
449
+ margin: -1px;
450
+ }
451
+
452
+ /* =============================
453
+ Special flex styles
454
+ ============================= */
455
+
456
+ .qti-flex-direction-column {
457
+ flex-direction: column;
458
+ }
459
+
460
+ .qti-flex-direction-row {
461
+ flex-direction: row;
462
+ }
463
+
464
+ .qti-flex-grow-1 {
465
+ flex-grow: 1;
466
+ }
467
+
468
+ .qti-flex-grow-0 {
469
+ flex-grow: 0;
470
+ }
471
+
472
+ /* =========
473
+ Margin css
474
+ ========== */
475
+
476
+ /**
477
+ * For margin Top and Bottom and Left and Right
478
+ */
479
+
480
+ .qti-margin-0 {
481
+ margin: 0 !important;
482
+ }
483
+
484
+ .qti-margin-1 {
485
+ margin: 0.25rem !important;
486
+ }
487
+
488
+ .qti-margin-2 {
489
+ margin: 0.5rem !important;
490
+ }
491
+
492
+ .qti-margin-3 {
493
+ margin: 1rem !important;
494
+ }
495
+
496
+ .qti-margin-4 {
497
+ margin: 1.5rem !important;
498
+ }
499
+
500
+ .qti-margin-5 {
501
+ margin: 3rem !important;
502
+ }
503
+
504
+ .qti-margin-auto {
505
+ margin: auto !important;
506
+ }
507
+
508
+ /*
509
+ For margin Left and Right
510
+ */
511
+
512
+ .qti-margin-x-0 {
513
+ margin-right: 0 !important;
514
+ margin-left: 0 !important;
515
+ }
516
+
517
+ .qti-margin-x-1 {
518
+ margin-right: 0.25rem !important;
519
+ margin-left: 0.25rem !important;
520
+ }
521
+
522
+ .qti-margin-x-2 {
523
+ margin-right: 0.5rem !important;
524
+ margin-left: 0.5rem !important;
525
+ }
526
+
527
+ .qti-margin-x-3 {
528
+ margin-right: 1rem !important;
529
+ margin-left: 1rem !important;
530
+ }
531
+
532
+ .qti-margin-x-4 {
533
+ margin-right: 1.5rem !important;
534
+ margin-left: 1.5rem !important;
535
+ }
536
+
537
+ .qti-margin-x-5 {
538
+ margin-right: 3rem !important;
539
+ margin-left: 3rem !important;
540
+ }
541
+
542
+ .qti-margin-x-auto {
543
+ margin-right: auto !important;
544
+ margin-left: auto !important;
545
+ }
546
+
547
+ /*
548
+ For margin Top and Bottom
549
+ */
550
+
551
+ .qti-margin-y-0 {
552
+ margin-top: 0 !important;
553
+ margin-bottom: 0 !important;
554
+ }
555
+
556
+ .qti-margin-y-1 {
557
+ margin-top: 0.25rem !important;
558
+ margin-bottom: 0.25rem !important;
559
+ }
560
+
561
+ .qti-margin-y-2 {
562
+ margin-top: 0.5rem !important;
563
+ margin-bottom: 0.5rem !important;
564
+ }
565
+
566
+ .qti-margin-y-3 {
567
+ margin-top: 1rem !important;
568
+ margin-bottom: 1rem !important;
569
+ }
570
+
571
+ .qti-margin-y-4 {
572
+ margin-top: 1.5rem !important;
573
+ margin-bottom: 1.5rem !important;
574
+ }
575
+
576
+ .qti-margin-y-5 {
577
+ margin-top: 3rem !important;
578
+ margin-bottom: 3rem !important;
579
+ }
580
+
581
+ .qti-margin-y-auto {
582
+ margin-top: auto !important;
583
+ margin-bottom: auto !important;
584
+ }
585
+
586
+ /*
587
+ For margin Top
588
+ */
589
+
590
+ .qti-margin-t-0 {
591
+ margin-top: 0 !important;
592
+ }
593
+
594
+ .qti-margin-t-1 {
595
+ margin-top: 0.25rem !important;
596
+ }
597
+
598
+ .qti-margin-t-2 {
599
+ margin-top: 0.5rem !important;
600
+ }
601
+
602
+ .qti-margin-t-3 {
603
+ margin-top: 1rem !important;
604
+ }
605
+
606
+ .qti-margin-t-4 {
607
+ margin-top: 1.5rem !important;
608
+ }
609
+
610
+ .qti-margin-t-5 {
611
+ margin-top: 3rem !important;
612
+ }
613
+
614
+ .qti-margin-t-auto {
615
+ margin-top: auto !important;
616
+ }
617
+
618
+ /*
619
+ For margin Bottom
620
+ */
621
+
622
+ .qti-margin-b-0 {
623
+ margin-bottom: 0 !important;
624
+ }
625
+
626
+ .qti-margin-b-1 {
627
+ margin-bottom: 0.25rem !important;
628
+ }
629
+
630
+ .qti-margin-b-2 {
631
+ margin-bottom: 0.5rem !important;
632
+ }
633
+
634
+ .qti-margin-b-3 {
635
+ margin-bottom: 1rem !important;
636
+ }
637
+
638
+ .qti-margin-b-4 {
639
+ margin-bottom: 1.5rem !important;
640
+ }
641
+
642
+ .qti-margin-b-5 {
643
+ margin-bottom: 3rem !important;
644
+ }
645
+
646
+ .qti-margin-b-auto {
647
+ margin-bottom: auto !important;
648
+ }
649
+
650
+ /*
651
+ For margin Start LTR
652
+ */
653
+
654
+ .qti-margin-s-0 {
655
+ margin-left: 0 !important;
656
+ }
657
+
658
+ .qti-margin-s-1 {
659
+ margin-left: 0.25rem !important;
660
+ }
661
+
662
+ .qti-margin-s-2 {
663
+ margin-left: 0.5rem !important;
664
+ }
665
+
666
+ .qti-margin-s-3 {
667
+ margin-left: 1rem !important;
668
+ }
669
+
670
+ .qti-margin-s-4 {
671
+ margin-left: 1.5rem !important;
672
+ }
673
+
674
+ .qti-margin-s-5 {
675
+ margin-left: 3rem !important;
676
+ }
677
+
678
+ .qti-margin-s-auto {
679
+ margin-left: auto !important;
680
+ }
681
+
682
+ /*
683
+ For margin End LTR
684
+ */
685
+
686
+ .qti-margin-e-0 {
687
+ margin-right: 0 !important;
688
+ }
689
+
690
+ .qti-margin-e-1 {
691
+ margin-right: 0.25rem !important;
692
+ }
693
+
694
+ .qti-margin-e-2 {
695
+ margin-right: 0.5rem !important;
696
+ }
697
+
698
+ .qti-margin-e-3 {
699
+ margin-right: 1rem !important;
700
+ }
701
+
702
+ .qti-margin-e-4 {
703
+ margin-right: 1.5rem !important;
704
+ }
705
+
706
+ .qti-margin-e-5 {
707
+ margin-right: 3rem !important;
708
+ }
709
+
710
+ .qti-margin-e-auto {
711
+ margin-right: auto !important;
712
+ }
713
+
714
+ /* =========
715
+ Padding css
716
+ ========== */
717
+
718
+ /*
719
+ For padding Top and Bottom and Left and Right
720
+ */
721
+
722
+ .qti-padding-0 {
723
+ padding: 0 !important;
724
+ }
725
+
726
+ .qti-padding-1 {
727
+ padding: 0.25rem !important;
728
+ }
729
+
730
+ .qti-padding-2 {
731
+ padding: 0.5rem !important;
732
+ }
733
+
734
+ .qti-padding-3 {
735
+ padding: 1rem !important;
736
+ }
737
+
738
+ .qti-padding-4 {
739
+ padding: 1.5rem !important;
740
+ }
741
+
742
+ .qti-padding-5 {
743
+ padding: 3rem !important;
744
+ }
745
+
746
+ /*
747
+ For padding Left and Right
748
+ */
749
+
750
+ .qti-padding-x-0 {
751
+ padding-right: 0 !important;
752
+ padding-left: 0 !important;
753
+ }
754
+
755
+ .qti-padding-x-1 {
756
+ padding-right: 0.25rem !important;
757
+ padding-left: 0.25rem !important;
758
+ }
759
+
760
+ .qti-padding-x-2 {
761
+ padding-right: 0.5rem !important;
762
+ padding-left: 0.5rem !important;
763
+ }
764
+
765
+ .qti-padding-x-3 {
766
+ padding-right: 1rem !important;
767
+ padding-left: 1rem !important;
768
+ }
769
+
770
+ .qti-padding-x-4 {
771
+ padding-right: 1.5rem !important;
772
+ padding-left: 1.5rem !important;
773
+ }
774
+
775
+ .qti-padding-x-5 {
776
+ padding-right: 3rem !important;
777
+ padding-left: 3rem !important;
778
+ }
779
+
780
+ /*
781
+ For padding Top and Bottom
782
+ */
783
+
784
+ .qti-padding-y-0 {
785
+ padding-top: 0 !important;
786
+ padding-bottom: 0 !important;
787
+ }
788
+
789
+ .qti-padding-y-1 {
790
+ padding-top: 0.25rem !important;
791
+ padding-bottom: 0.25rem !important;
792
+ }
793
+
794
+ .qti-padding-y-2 {
795
+ padding-top: 0.5rem !important;
796
+ padding-bottom: 0.5rem !important;
797
+ }
798
+
799
+ .qti-padding-y-3 {
800
+ padding-top: 1rem !important;
801
+ padding-bottom: 1rem !important;
802
+ }
803
+
804
+ .qti-padding-y-4 {
805
+ padding-top: 1.5rem !important;
806
+ padding-bottom: 1.5rem !important;
807
+ }
808
+
809
+ .qti-padding-y-5 {
810
+ padding-top: 3rem !important;
811
+ padding-bottom: 3rem !important;
812
+ }
813
+
814
+ /*
815
+ For padding Top
816
+ */
817
+
818
+ .qti-padding-t-0 {
819
+ padding-top: 0 !important;
820
+ }
821
+
822
+ .qti-padding-t-1 {
823
+ padding-top: 0.25rem !important;
824
+ }
825
+
826
+ .qti-padding-t-2 {
827
+ padding-top: 0.5rem !important;
828
+ }
829
+
830
+ .qti-padding-t-3 {
831
+ padding-top: 1rem !important;
832
+ }
833
+
834
+ .qti-padding-t-4 {
835
+ padding-top: 1.5rem !important;
836
+ }
837
+
838
+ .qti-padding-t-5 {
839
+ padding-top: 3rem !important;
840
+ }
841
+
842
+ /*
843
+ For padding Bottom
844
+ */
845
+
846
+ .qti-padding-b-0 {
847
+ padding-bottom: 0 !important;
848
+ }
849
+
850
+ .qti-padding-b-1 {
851
+ padding-bottom: 0.25rem !important;
852
+ }
853
+
854
+ .qti-padding-b-2 {
855
+ padding-bottom: 0.5rem !important;
856
+ }
857
+
858
+ .qti-padding-b-3 {
859
+ padding-bottom: 1rem !important;
860
+ }
861
+
862
+ .qti-padding-b-4 {
863
+ padding-bottom: 1.5rem !important;
864
+ }
865
+
866
+ .qti-padding-b-5 {
867
+ padding-bottom: 3rem !important;
868
+ }
869
+
870
+ /*
871
+ For padding Start LTR
872
+ */
873
+
874
+ .qti-padding-s-0 {
875
+ padding-left: 0 !important;
876
+ }
877
+
878
+ .qti-padding-s-1 {
879
+ padding-left: 0.25rem !important;
880
+ }
881
+
882
+ .qti-padding-s-2 {
883
+ padding-left: 0.5rem !important;
884
+ }
885
+
886
+ .qti-padding-s-3 {
887
+ padding-left: 1rem !important;
888
+ }
889
+
890
+ .qti-padding-s-4 {
891
+ padding-left: 1.5rem !important;
892
+ }
893
+
894
+ .qti-padding-s-5 {
895
+ padding-left: 3rem !important;
896
+ }
897
+
898
+ /*
899
+ For padding End LTR
900
+ */
901
+
902
+ .qti-padding-e-0 {
903
+ padding-right: 0 !important;
904
+ }
905
+
906
+ .qti-padding-e-1 {
907
+ padding-right: 0.25rem !important;
908
+ }
909
+
910
+ .qti-padding-e-2 {
911
+ padding-right: 0.5rem !important;
912
+ }
913
+
914
+ .qti-padding-e-3 {
915
+ padding-right: 1rem !important;
916
+ }
917
+
918
+ .qti-padding-e-4 {
919
+ padding-right: 1.5rem !important;
920
+ }
921
+
922
+ .qti-padding-e-5 {
923
+ padding-right: 3rem !important;
924
+ }
925
+
926
+ /* ====================
927
+ Horizontal alignment
928
+ ==================== */
929
+
930
+ .qti-align-left {
931
+ text-align: left;
932
+ }
933
+
934
+ .qti-align-center {
935
+ text-align: center;
936
+ }
937
+
938
+ .qti-align-right {
939
+ text-align: right;
940
+ }
941
+
942
+ /* ==================
943
+ Vertical alignment
944
+ ================== */
945
+
946
+ .qti-valign-top {
947
+ vertical-align: top;
948
+ }
949
+
950
+ .qti-valign-middle {
951
+ vertical-align: middle;
952
+ }
953
+
954
+ .qti-valign-baseline {
955
+ vertical-align: baseline;
956
+ }
957
+
958
+ .qti-valign-bottom {
959
+ vertical-align: bottom;
960
+ }
961
+
962
+ /* =============
963
+ Height styles
964
+ ============= */
965
+
966
+ .qti-height-0 {
967
+ height: 0;
968
+ }
969
+
970
+ .qti-height-px {
971
+ height: 1px;
972
+ }
973
+
974
+ .qti-height-0p5 {
975
+ height: 0.125rem;
976
+ }
977
+
978
+ .qti-height-1 {
979
+ height: 0.25rem;
980
+ }
981
+
982
+ .qti-height-1p5 {
983
+ height: 0.375rem;
984
+ }
985
+
986
+ .qti-height-2 {
987
+ height: 0.5rem;
988
+ }
989
+
990
+ .qti-height-2p5 {
991
+ height: 0.625rem;
992
+ }
993
+
994
+ .qti-height-3 {
995
+ height: 0.75rem;
996
+ }
997
+
998
+ .qti-height-3p5 {
999
+ height: 0.875rem;
1000
+ }
1001
+
1002
+ .qti-height-4 {
1003
+ height: 1rem;
1004
+ }
1005
+
1006
+ .qti-height-5 {
1007
+ height: 1.25rem;
1008
+ }
1009
+
1010
+ .qti-height-6 {
1011
+ height: 1.5rem;
1012
+ }
1013
+
1014
+ .qti-height-7 {
1015
+ height: 1.75rem;
1016
+ }
1017
+
1018
+ .qti-height-8 {
1019
+ height: 2rem;
1020
+ }
1021
+
1022
+ .qti-height-9 {
1023
+ height: 2.25rem;
1024
+ }
1025
+
1026
+ .qti-height-10 {
1027
+ height: 2.5rem;
1028
+ }
1029
+
1030
+ .qti-height-11 {
1031
+ height: 2.75rem;
1032
+ }
1033
+
1034
+ .qti-height-12 {
1035
+ height: 3rem;
1036
+ }
1037
+
1038
+ .qti-height-14 {
1039
+ height: 3.5rem;
1040
+ }
1041
+
1042
+ .qti-height-16 {
1043
+ height: 4rem;
1044
+ }
1045
+
1046
+ .qti-height-20 {
1047
+ height: 5rem;
1048
+ }
1049
+
1050
+ .qti-height-24 {
1051
+ height: 6rem;
1052
+ }
1053
+
1054
+ .qti-height-28 {
1055
+ height: 7rem;
1056
+ }
1057
+
1058
+ .qti-height-32 {
1059
+ height: 8rem;
1060
+ }
1061
+
1062
+ .qti-height-36 {
1063
+ height: 9rem;
1064
+ }
1065
+
1066
+ .qti-height-40 {
1067
+ height: 10rem;
1068
+ }
1069
+
1070
+ .qti-height-44 {
1071
+ height: 11rem;
1072
+ }
1073
+
1074
+ .qti-height-48 {
1075
+ height: 12rem;
1076
+ }
1077
+
1078
+ .qti-height-52 {
1079
+ height: 13rem;
1080
+ }
1081
+
1082
+ .qti-height-56 {
1083
+ height: 14rem;
1084
+ }
1085
+
1086
+ .qti-height-60 {
1087
+ height: 15rem;
1088
+ }
1089
+
1090
+ .qti-height-64 {
1091
+ height: 16rem;
1092
+ }
1093
+
1094
+ .qti-height-72 {
1095
+ height: 18rem;
1096
+ }
1097
+
1098
+ .qti-height-80 {
1099
+ height: 20rem;
1100
+ }
1101
+
1102
+ .qti-height-96 {
1103
+ height: 24rem;
1104
+ }
1105
+
1106
+ .qti-height-1-2 {
1107
+ height: 50%;
1108
+ }
1109
+
1110
+ .qti-height-1-3 {
1111
+ height: 33.3333%;
1112
+ }
1113
+
1114
+ .qti-height-2-3 {
1115
+ height: 66.6667%;
1116
+ }
1117
+
1118
+ .qti-height-1-4 {
1119
+ height: 25%;
1120
+ }
1121
+
1122
+ .qti-height-2-4 {
1123
+ height: 50%;
1124
+ }
1125
+
1126
+ .qti-height-3-4 {
1127
+ height: 75%;
1128
+ }
1129
+
1130
+ .qti-height-1-5 {
1131
+ height: 20%;
1132
+ }
1133
+
1134
+ .qti-height-2-5 {
1135
+ height: 40%;
1136
+ }
1137
+
1138
+ .qti-height-3-5 {
1139
+ height: 60%;
1140
+ }
1141
+
1142
+ .qti-height-4-5 {
1143
+ height: 80%;
1144
+ }
1145
+
1146
+ .qti-height-1-6 {
1147
+ height: 16.6667%;
1148
+ }
1149
+
1150
+ .qti-height-2-6 {
1151
+ height: 33.3333%;
1152
+ }
1153
+
1154
+ .qti-height-3-6 {
1155
+ height: 50%;
1156
+ }
1157
+
1158
+ .qti-height-4-6 {
1159
+ height: 66.6667%;
1160
+ }
1161
+
1162
+ .qti-height-5-6 {
1163
+ height: 83.3333%;
1164
+ }
1165
+
1166
+ .qti-height-auto {
1167
+ height: auto;
1168
+ }
1169
+
1170
+ .qti-height-full {
1171
+ height: 100%;
1172
+ }
1173
+
1174
+ /* ============
1175
+ Width styles
1176
+ ============ */
1177
+
1178
+ .qti-width-0 {
1179
+ width: 0;
1180
+ }
1181
+
1182
+ .qti-width-px {
1183
+ width: 1px;
1184
+ }
1185
+
1186
+ .qti-width-0p5 {
1187
+ width: 0.125rem;
1188
+ }
1189
+
1190
+ .qti-width-1 {
1191
+ width: 0.25rem;
1192
+ }
1193
+
1194
+ .qti-width-1p5 {
1195
+ width: 0.375rem;
1196
+ }
1197
+
1198
+ .qti-width-2 {
1199
+ width: 0.5rem;
1200
+ }
1201
+
1202
+ .qti-width-2p5 {
1203
+ width: 0.625rem;
1204
+ }
1205
+
1206
+ .qti-width-3 {
1207
+ width: 0.75rem;
1208
+ }
1209
+
1210
+ .qti-width-3p5 {
1211
+ width: 0.875rem;
1212
+ }
1213
+
1214
+ .qti-width-4 {
1215
+ width: 1rem;
1216
+ }
1217
+
1218
+ .qti-width-5 {
1219
+ width: 1.25rem;
1220
+ }
1221
+
1222
+ .qti-width-6 {
1223
+ width: 1.5rem;
1224
+ }
1225
+
1226
+ .qti-width-7 {
1227
+ width: 1.75rem;
1228
+ }
1229
+
1230
+ .qti-width-8 {
1231
+ width: 2rem;
1232
+ }
1233
+
1234
+ .qti-width-9 {
1235
+ width: 2.25rem;
1236
+ }
1237
+
1238
+ .qti-width-10 {
1239
+ width: 2.5rem;
1240
+ }
1241
+
1242
+ .qti-width-11 {
1243
+ width: 2.75rem;
1244
+ }
1245
+
1246
+ .qti-width-12 {
1247
+ width: 3rem;
1248
+ }
1249
+
1250
+ .qti-width-14 {
1251
+ width: 3.5rem;
1252
+ }
1253
+
1254
+ .qti-width-16 {
1255
+ width: 4rem;
1256
+ }
1257
+
1258
+ .qti-width-20 {
1259
+ width: 5rem;
1260
+ }
1261
+
1262
+ .qti-width-24 {
1263
+ width: 6rem;
1264
+ }
1265
+
1266
+ .qti-width-28 {
1267
+ width: 7rem;
1268
+ }
1269
+
1270
+ .qti-width-32 {
1271
+ width: 8rem;
1272
+ }
1273
+
1274
+ .qti-width-36 {
1275
+ width: 9rem;
1276
+ }
1277
+
1278
+ .qti-width-40 {
1279
+ width: 10rem;
1280
+ }
1281
+
1282
+ .qti-width-44 {
1283
+ width: 11rem;
1284
+ }
1285
+
1286
+ .qti-width-48 {
1287
+ width: 12rem;
1288
+ }
1289
+
1290
+ .qti-width-52 {
1291
+ width: 13rem;
1292
+ }
1293
+
1294
+ .qti-width-56 {
1295
+ width: 14rem;
1296
+ }
1297
+
1298
+ .qti-width-60 {
1299
+ width: 15rem;
1300
+ }
1301
+
1302
+ .qti-width-64 {
1303
+ width: 16rem;
1304
+ }
1305
+
1306
+ .qti-width-72 {
1307
+ width: 18rem;
1308
+ }
1309
+
1310
+ .qti-width-80 {
1311
+ width: 20rem;
1312
+ }
1313
+
1314
+ .qti-width-96 {
1315
+ width: 24rem;
1316
+ }
1317
+
1318
+ .qti-width-auto {
1319
+ width: auto;
1320
+ }
1321
+
1322
+ .qti-width-1-2 {
1323
+ width: 50%;
1324
+ }
1325
+
1326
+ .qti-width-1-3 {
1327
+ width: 33.3333%;
1328
+ }
1329
+
1330
+ .qti-width-2-3 {
1331
+ width: 66.6667%;
1332
+ }
1333
+
1334
+ .qti-width-1-4 {
1335
+ width: 25%;
1336
+ }
1337
+
1338
+ .qti-width-2-4 {
1339
+ width: 50%;
1340
+ }
1341
+
1342
+ .qti-width-3-4 {
1343
+ width: 75%;
1344
+ }
1345
+
1346
+ .qti-width-1-5 {
1347
+ width: 20%;
1348
+ }
1349
+
1350
+ .qti-width-2-5 {
1351
+ width: 40%;
1352
+ }
1353
+
1354
+ .qti-width-3-5 {
1355
+ width: 60%;
1356
+ }
1357
+
1358
+ .qti-width-4-5 {
1359
+ width: 80%;
1360
+ }
1361
+
1362
+ .qti-width-1-6 {
1363
+ width: 16.6667%;
1364
+ }
1365
+
1366
+ .qti-width-2-6 {
1367
+ width: 33.3333%;
1368
+ }
1369
+
1370
+ .qti-width-3-6 {
1371
+ width: 50%;
1372
+ }
1373
+
1374
+ .qti-width-4-6 {
1375
+ width: 66.6667%;
1376
+ }
1377
+
1378
+ .qti-width-5-6 {
1379
+ width: 83.3333%;
1380
+ }
1381
+
1382
+ .qti-width-1-12 {
1383
+ width: 8.3333%;
1384
+ }
1385
+
1386
+ .qti-width-2-12 {
1387
+ width: 16.6667%;
1388
+ }
1389
+
1390
+ .qti-width-3-12 {
1391
+ width: 25%;
1392
+ }
1393
+
1394
+ .qti-width-4-12 {
1395
+ width: 33.3333%;
1396
+ }
1397
+
1398
+ .qti-width-5-12 {
1399
+ width: 41.6667%;
1400
+ }
1401
+
1402
+ .qti-width-6-12 {
1403
+ width: 50%;
1404
+ }
1405
+
1406
+ .qti-width-7-12 {
1407
+ width: 58.3333%;
1408
+ }
1409
+
1410
+ .qti-width-8-12 {
1411
+ width: 66.6667%;
1412
+ }
1413
+
1414
+ .qti-width-9-12 {
1415
+ width: 75%;
1416
+ }
1417
+
1418
+ .qti-width-10-12 {
1419
+ width: 83.3333%;
1420
+ }
1421
+
1422
+ .qti-width-11-12 {
1423
+ width: 91.6667%;
1424
+ }
1425
+
1426
+ .qti-width-full,
1427
+ .qti-fullwidth {
1428
+ width: 100%;
1429
+ }
1430
+
1431
+ /* ==================
1432
+ Text Indent styles
1433
+ ================== */
1434
+
1435
+ .qti-text-indent-0 {
1436
+ text-indent: 0;
1437
+ }
1438
+
1439
+ .qti-text-indent-px {
1440
+ text-indent: 1px;
1441
+ }
1442
+
1443
+ .qti-text-indent-0p5 {
1444
+ text-indent: 0.125rem;
1445
+ }
1446
+
1447
+ .qti-text-indent-1 {
1448
+ text-indent: 0.25rem;
1449
+ }
1450
+
1451
+ .qti-text-indent-1p5 {
1452
+ text-indent: 0.375rem;
1453
+ }
1454
+
1455
+ .qti-text-indent-2 {
1456
+ text-indent: 0.5rem;
1457
+ }
1458
+
1459
+ .qti-text-indent-2p5 {
1460
+ text-indent: 0.625rem;
1461
+ }
1462
+
1463
+ .qti-text-indent-3 {
1464
+ text-indent: 0.75rem;
1465
+ }
1466
+
1467
+ .qti-text-indent-3p5 {
1468
+ text-indent: 0.875rem;
1469
+ }
1470
+
1471
+ .qti-text-indent-4 {
1472
+ text-indent: 1rem;
1473
+ }
1474
+
1475
+ .qti-text-indent-5 {
1476
+ text-indent: 1.25rem;
1477
+ }
1478
+
1479
+ .qti-text-indent-6 {
1480
+ text-indent: 1.5rem;
1481
+ }
1482
+
1483
+ .qti-text-indent-7 {
1484
+ text-indent: 1.75rem;
1485
+ }
1486
+
1487
+ .qti-text-indent-8 {
1488
+ text-indent: 2rem;
1489
+ }
1490
+
1491
+ .qti-text-indent-12 {
1492
+ text-indent: 3rem;
1493
+ }
1494
+
1495
+ .qti-text-indent-16 {
1496
+ text-indent: 4rem;
1497
+ }
1498
+
1499
+ .qti-text-indent-20 {
1500
+ text-indent: 5rem;
1501
+ }
1502
+
1503
+ .qti-text-indent-24 {
1504
+ text-indent: 6rem;
1505
+ }
1506
+
1507
+ .qti-text-indent-28 {
1508
+ text-indent: 7rem;
1509
+ }
1510
+
1511
+ .qti-text-indent-32 {
1512
+ text-indent: 8rem;
1513
+ }
1514
+
1515
+ /* =================
1516
+ List Style styles
1517
+ ================= */
1518
+
1519
+ .qti-list-style-type-none {
1520
+ list-style-type: none;
1521
+ }
1522
+
1523
+ .qti-list-style-type-disc {
1524
+ list-style-type: disc;
1525
+ }
1526
+
1527
+ .qti-list-style-type-circle {
1528
+ list-style-type: circle;
1529
+ }
1530
+
1531
+ .qti-list-style-type-square {
1532
+ list-style-type: square;
1533
+ }
1534
+
1535
+ .qti-list-style-type-decimal {
1536
+ list-style-type: decimal;
1537
+ }
1538
+
1539
+ .qti-list-style-type-decimal-leading-zero {
1540
+ list-style-type: decimal-leading-zero;
1541
+ }
1542
+
1543
+ .qti-list-style-type-lower-alpha {
1544
+ list-style-type: lower-alpha;
1545
+ }
1546
+
1547
+ .qti-list-style-type-upper-alpha {
1548
+ list-style-type: upper-alpha;
1549
+ }
1550
+
1551
+ .qti-list-style-type-lower-roman {
1552
+ list-style-type: lower-roman;
1553
+ }
1554
+
1555
+ .qti-list-style-type-upper-roman {
1556
+ list-style-type: upper-roman;
1557
+ }
1558
+
1559
+ .qti-list-style-type-lower-latin {
1560
+ list-style-type: lower-latin;
1561
+ }
1562
+
1563
+ .qti-list-style-type-upper-latin {
1564
+ list-style-type: upper-latin;
1565
+ }
1566
+
1567
+ .qti-list-style-type-lower-greek {
1568
+ list-style-type: lower-greek;
1569
+ }
1570
+
1571
+ .qti-list-style-type-arabic-indic {
1572
+ list-style-type: arabic-indic;
1573
+ }
1574
+
1575
+ .qti-list-style-type-armenian {
1576
+ list-style-type: armenian;
1577
+ }
1578
+
1579
+ .qti-list-style-type-lower-armenian {
1580
+ list-style-type: lower-armenian;
1581
+ }
1582
+
1583
+ .qti-list-style-type-upper-armenian {
1584
+ list-style-type: upper-armenian;
1585
+ }
1586
+
1587
+ .qti-list-style-type-bengali {
1588
+ list-style-type: bengali;
1589
+ }
1590
+
1591
+ .qti-list-style-type-cambodian {
1592
+ list-style-type: cambodian;
1593
+ }
1594
+
1595
+ .qti-list-style-type-simp-chinese-formal {
1596
+ list-style-type: simp-chinese-formal;
1597
+ }
1598
+
1599
+ .qti-list-style-type-simp-chinese-informal {
1600
+ list-style-type: simp-chinese-informal;
1601
+ }
1602
+
1603
+ .qti-list-style-type-trad-chinese-formal {
1604
+ list-style-type: trad-chinese-formal;
1605
+ }
1606
+
1607
+ .qti-list-style-type-trad-chinese-informal {
1608
+ list-style-type: trad-chinese-informal;
1609
+ }
1610
+
1611
+ .qti-list-style-type-cjk-ideographic {
1612
+ list-style-type: cjk-ideographic;
1613
+ }
1614
+
1615
+ .qti-list-style-type-cjk-heavenly-stem {
1616
+ list-style-type: cjk-heavenly-stem;
1617
+ }
1618
+
1619
+ .qti-list-style-type-cjk-earthly-branch {
1620
+ list-style-type: cjk-earthly-branch;
1621
+ }
1622
+
1623
+ .qti-list-style-type-devanagari {
1624
+ list-style-type: devanagari;
1625
+ }
1626
+
1627
+ .qti-list-style-type-ethiopic-halehame-ti-er {
1628
+ list-style-type: ethiopic-halehame-ti-er;
1629
+ }
1630
+
1631
+ .qti-list-style-type-ethiopic-halehame-ti-et {
1632
+ list-style-type: ethiopic-halehame-ti-et;
1633
+ }
1634
+
1635
+ .qti-list-style-type-ethiopic-halehame-am {
1636
+ list-style-type: ethiopic-halehame-am;
1637
+ }
1638
+
1639
+ .qti-list-style-type-ethiopic-halehame {
1640
+ list-style-type: ethiopic-halehame;
1641
+ }
1642
+
1643
+ .qti-list-style-type-georgian {
1644
+ list-style-type: georgian;
1645
+ }
1646
+
1647
+ .qti-list-style-type-gujarati {
1648
+ list-style-type: gujarati;
1649
+ }
1650
+
1651
+ .qti-list-style-type-gurmukhi {
1652
+ list-style-type: gurmukhi;
1653
+ }
1654
+
1655
+ .qti-list-style-type-hangul {
1656
+ list-style-type: hangul;
1657
+ }
1658
+
1659
+ .qti-list-style-type-hangul-consonant {
1660
+ list-style-type: hangul-consonant;
1661
+ }
1662
+
1663
+ .qti-list-style-type-hebrew {
1664
+ list-style-type: hebrew;
1665
+ }
1666
+
1667
+ .qti-list-style-type-hiragana {
1668
+ list-style-type: hiragana;
1669
+ }
1670
+
1671
+ .qti-list-style-type-hiragana-iroha {
1672
+ list-style-type: hiragana-iroha;
1673
+ }
1674
+
1675
+ .qti-list-style-type-khmer {
1676
+ list-style-type: khmer;
1677
+ }
1678
+
1679
+ .qti-list-style-type-korean-hangul-formal {
1680
+ list-style-type: korean-hangul-formal;
1681
+ }
1682
+
1683
+ .qti-list-style-type-korean-hanja-formal {
1684
+ list-style-type: korean-hanja-formal;
1685
+ }
1686
+
1687
+ .qti-list-style-type-korean-hanja-informal {
1688
+ list-style-type: korean-hanja-informal;
1689
+ }
1690
+
1691
+ .qti-list-style-type-lao {
1692
+ list-style-type: lao;
1693
+ }
1694
+
1695
+ .qti-list-style-type-malayalam {
1696
+ list-style-type: malayalam;
1697
+ }
1698
+
1699
+ .qti-list-style-type-mongolian {
1700
+ list-style-type: mongolian;
1701
+ }
1702
+
1703
+ .qti-list-style-type-myanmar {
1704
+ list-style-type: myanmar;
1705
+ }
1706
+
1707
+ .qti-list-style-type-oriya {
1708
+ list-style-type: oriya;
1709
+ }
1710
+
1711
+ .qti-list-style-type-persian {
1712
+ list-style-type: persian;
1713
+ }
1714
+
1715
+ .qti-list-style-type-thai {
1716
+ list-style-type: thai;
1717
+ }
1718
+
1719
+ .qti-list-style-type-tibetan {
1720
+ list-style-type: tibetan;
1721
+ }
1722
+
1723
+ .qti-list-style-type-telugu {
1724
+ list-style-type: telugu;
1725
+ }
1726
+
1727
+ .qti-list-style-type-urdu {
1728
+ list-style-type: urdu;
1729
+ }
1730
+
1731
+ /* =========================
1732
+ Other QTI 3 Presentation Utilities
1733
+ ========================= */
1734
+
1735
+ .qti-bordered {
1736
+ border: 1px solid var(--table-border-color);
1737
+ }
1738
+
1739
+ .qti-underline {
1740
+ text-decoration: underline;
1741
+ text-decoration-color: var(--foreground);
1742
+ }
1743
+
1744
+ .qti-italic {
1745
+ font-style: italic;
1746
+ }
1747
+
1748
+ .qti-well {
1749
+ min-height: 20px;
1750
+ padding: 19px;
1751
+ margin-bottom: 20px;
1752
+ background-color: var(--well-bg);
1753
+ border: var(--well-border);
1754
+ border-radius: 4px;
1755
+ box-shadow: var(--well-box-shadow);
1756
+ }
1757
+
1758
+ /* Set writing-mode to vertical-rl
1759
+ Typical for CJK vertical text */
1760
+
1761
+ .qti-writing-mode-vertical-rl {
1762
+ writing-mode: vertical-rl;
1763
+ }
1764
+
1765
+ /* Set writing-mode to vertical-lr
1766
+ Typical for Mongolian vertical text */
1767
+
1768
+ .qti-writing-mode-vertical-lr {
1769
+ writing-mode: vertical-lr;
1770
+ }
1771
+
1772
+ /* Set writing-mode to horizontal-tb
1773
+ Browser default */
1774
+
1775
+ .qti-writing-mode-horizontal-tb {
1776
+ writing-mode: horizontal-tb;
1777
+ }
1778
+
1779
+ /* Float an element left */
1780
+
1781
+ .qti-float-left {
1782
+ float: left;
1783
+ }
1784
+
1785
+ /* Float an element right */
1786
+
1787
+ .qti-float-right {
1788
+ float: right;
1789
+ }
1790
+
1791
+ /* Remove a float */
1792
+
1793
+ .qti-float-none {
1794
+ float: none;
1795
+ }
1796
+
1797
+ /* Clearfix Hack to apply to a container of
1798
+ floated content that overflows the container. */
1799
+
1800
+ .qti-float-clearfix::after {
1801
+ content: '';
1802
+ clear: both;
1803
+ display: table;
1804
+ }
1805
+
1806
+ .qti-float-clear-left
1807
+ .qti-float-clear-right
1808
+ .qti-float-clear-both
1809
+
1810
+ /* Set text-orientation to upright */
1811
+ .qti-text-orientation-upright {
1812
+ text-orientation: upright;
1813
+ }
1814
+
1815
+ /* stylelint-disable number-max-precision */
1816
+
1817
+ @layer qti-base {
1818
+ .qti-layout-row {
1819
+ display: flex;
1820
+ flex-wrap: wrap;
1821
+ width: 100%;
1822
+ gap: 2.1276595745%;
1823
+ }
1824
+
1825
+ .qti-layout-row [class*='qti-layout-col']:not(:empty) {
1826
+ box-sizing: border-box;
1827
+ }
1828
+
1829
+ .qti-layout-row [class*='qti-layout-col']:empty {
1830
+ width: 0;
1831
+ overflow: hidden; /* to fully collapse if there\u2019s padding or borders */
1832
+ }
1833
+
1834
+ .qti-layout-col1 {
1835
+ width: 6.3829787234%;
1836
+ }
1837
+
1838
+ .qti-layout-col2 {
1839
+ width: 14.8936170213%;
1840
+ }
1841
+
1842
+ .qti-layout-col3 {
1843
+ width: 23.4042553191%;
1844
+ }
1845
+
1846
+ .qti-layout-col4 {
1847
+ width: 31.914893617%;
1848
+ }
1849
+
1850
+ .qti-layout-col5 {
1851
+ width: 40.4255319149%;
1852
+ }
1853
+
1854
+ .qti-layout-col6 {
1855
+ width: 48.9361702128%;
1856
+ }
1857
+
1858
+ .qti-layout-col7 {
1859
+ width: 57.4468085106%;
1860
+ }
1861
+
1862
+ .qti-layout-col8 {
1863
+ width: 65.9574468085%;
1864
+ }
1865
+
1866
+ .qti-layout-col9 {
1867
+ width: 74.4680851064%;
1868
+ }
1869
+
1870
+ .qti-layout-col10 {
1871
+ width: 82.9787234043%;
1872
+ }
1873
+
1874
+ .qti-layout-col11 {
1875
+ width: 91.4893617021%;
1876
+ }
1877
+
1878
+ .qti-layout-col12 {
1879
+ width: 100%;
1880
+ }
1881
+
1882
+ .qti-layout-offset1 {
1883
+ margin-left: 8.5106382979%;
1884
+ }
1885
+
1886
+ .qti-layout-offset2 {
1887
+ margin-left: 17.0212765957%;
1888
+ }
1889
+
1890
+ .qti-layout-offset3 {
1891
+ margin-left: 25.5319148936%;
1892
+ }
1893
+
1894
+ .qti-layout-offset4 {
1895
+ margin-left: 34.0425531915%;
1896
+ }
1897
+
1898
+ .qti-layout-offset5 {
1899
+ margin-left: 42.5531914894%;
1900
+ }
1901
+
1902
+ .qti-layout-offset6 {
1903
+ margin-left: 51.0638297872%;
1904
+ }
1905
+
1906
+ .qti-layout-offset7 {
1907
+ margin-left: 59.5744680851%;
1908
+ }
1909
+
1910
+ .qti-layout-offset8 {
1911
+ margin-left: 68.085106383%;
1912
+ }
1913
+
1914
+ .qti-layout-offset9 {
1915
+ margin-left: 76.5957446809%;
1916
+ }
1917
+
1918
+ .qti-layout-offset10 {
1919
+ margin-left: 85.1063829787%;
1920
+ }
1921
+
1922
+ .qti-layout-offset11 {
1923
+ margin-left: 93.6170212766%;
1924
+ }
1925
+
1926
+ .qti-layout-offset12 {
1927
+ margin-left: 102.1276595745%;
1928
+ }
1929
+
1930
+ @media (width <= 767px) {
1931
+ [class*='qti-layout-col'] {
1932
+ width: 100%;
1933
+ }
1934
+ }
1935
+ }
1936
+
1937
+ [view],
1938
+ qti-outcome-declaration,
1939
+ qti-response-declaration {
1940
+ display: none;
1941
+ }
1942
+
1943
+ [view].show {
1944
+ display: block;
1945
+ }
1946
+
1947
+ :host {
1948
+ box-sizing: border-box;
1949
+ }
1950
+
1951
+ *,
1952
+ *::before,
1953
+ *::after {
1954
+ box-sizing: inherit;
1955
+ }
1956
+
1957
+ /* components */
1958
+
1959
+ @layer qti-components {
1960
+ qti-choice-interaction {
1961
+ &.qti-input-control-hidden {
1962
+ & qti-simple-choice {
1963
+ position: relative; /* Add position relative here instead of a separate rule */
1964
+
1965
+ &:hover {
1966
+ }
1967
+
1968
+ &:focus {
1969
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
1970
+ }
1971
+
1972
+ &::part(ch) {
1973
+ display: none;
1974
+ }
1975
+
1976
+ &:state(--checked),
1977
+ &[aria-checked='true'] {
1978
+ border-color: var(--qti-border-active);
1979
+ background-color: var(--qti-bg-active);
1980
+ }
1981
+
1982
+ &:state(readonly),
1983
+ &[aria-readonly='true'] {
1984
+ cursor: pointer;
1985
+ background-color: var(--qti-bg);
1986
+ outline: 0;
1987
+ border: none;
1988
+ }
1989
+
1990
+ &:state(disabled),
1991
+ &[aria-disabled='true'] {
1992
+ cursor: not-allowed;
1993
+ background-color: var(--qti-disabled-bg);
1994
+ color: var(--qti-disabled-color);
1995
+ border-color: var(--qti-border-color);
1996
+ outline: 4px solid var(--qti-disabled-bg);
1997
+ }
1998
+
1999
+ /* Add styling for correct responses with border instead of checkmark */
2000
+ &:state(correct-response),
2001
+ &[data-correct-response='true'] {
2002
+ border: 3px solid var(--qti-correct) !important;
2003
+ padding-right: 30px;
2004
+
2005
+ &::after {
2006
+ content: '\\02714';
2007
+ color: var(--qti-correct);
2008
+ position: absolute;
2009
+ top: 5px;
2010
+ right: 5px;
2011
+ font-size: 1.2em;
2012
+ font-weight: bold;
2013
+ }
2014
+ }
2015
+ border-radius: var(--qti-border-radius);
2016
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2017
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2018
+ outline: none
2019
+ }
2020
+ }
2021
+
2022
+ &:not(.qti-input-control-hidden) {
2023
+ & qti-simple-choice {
2024
+
2025
+ &:not([aria-disabled='true'], [aria-readonly='true'], :state(--checked)):hover {
2026
+ }
2027
+
2028
+ &:focus {
2029
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2030
+ }
2031
+
2032
+ &:state(--checked),
2033
+ &[aria-checked='true'] {
2034
+ border-color: var(--qti-border-active);
2035
+ background-color: var(--qti-bg-active);
2036
+ }
2037
+
2038
+ &:state(candidate-correct) {
2039
+ background-color: var(--qti-correct);
2040
+ }
2041
+
2042
+ &:state(candidate-incorrect) {
2043
+ background-color: var(--qti-incorrect);
2044
+ }
2045
+
2046
+ &:state(readonly),
2047
+ &[aria-readonly='true'] {
2048
+ cursor: pointer;
2049
+ background-color: var(--qti-bg);
2050
+ outline: 0;
2051
+ border: none;
2052
+ }
2053
+
2054
+ &:state(disabled),
2055
+ &[aria-disabled='true'] {
2056
+ cursor: not-allowed;
2057
+ background-color: var(--qti-disabled-bg);
2058
+ color: var(--qti-disabled-color);
2059
+ border-color: var(--qti-border-color);
2060
+ outline: 4px solid var(--qti-disabled-bg);
2061
+ }
2062
+
2063
+ &::part(cha) {
2064
+ width: calc(var(--qti-form-size) - 6px);
2065
+ height: calc(var(--qti-form-size) - 6px);
2066
+ }
2067
+
2068
+ &:state(radio)::part(ch) {
2069
+ border-radius: 100%;
2070
+ display: grid;
2071
+ place-content: center;
2072
+ width: var(--qti-form-size);
2073
+ height: var(--qti-form-size);
2074
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2075
+ outline: none;
2076
+ }
2077
+
2078
+ &:state(radio):state(--checked)::part(cha) {
2079
+ background-color: var(--qti-border-active);
2080
+ border-radius: 100%;
2081
+ }
2082
+
2083
+ &:state(checkbox)::part(ch) {
2084
+ display: flex;
2085
+ place-items: center;
2086
+ border-radius: var(--qti-border-radius);
2087
+ display: grid;
2088
+ place-content: center;
2089
+ width: var(--qti-form-size);
2090
+ height: var(--qti-form-size);
2091
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2092
+ outline: none;
2093
+ }
2094
+
2095
+ &:state(checkbox):state(--checked)::part(cha) {
2096
+ background-color: var(--qti-border-active);
2097
+ -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
2098
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
2099
+ }
2100
+
2101
+ gap: 0.5rem;
2102
+
2103
+ background-color: var(--qti-bg);
2104
+
2105
+ border-radius: var(--qti-border-radius);
2106
+
2107
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2108
+
2109
+ outline: none;
2110
+
2111
+ cursor: pointer
2112
+ }
2113
+ }
2114
+
2115
+ /* stylelint-disable-next-line no-descending-specificity */
2116
+ & qti-simple-choice {
2117
+ width: -moz-fit-content;
2118
+ width: fit-content;
2119
+ cursor: pointer;
2120
+
2121
+ /* Keep the checkmark for non-hidden input controls */
2122
+ &:state(correct-response),
2123
+ &[data-correct-response='true'] {
2124
+ /* stylelint-disable-next-line no-descending-specificity */
2125
+ &::after {
2126
+ content: '\\02714';
2127
+ color: var(--qti-correct);
2128
+ }
2129
+ }
2130
+ }
2131
+
2132
+ & qti-simple-choice > p {
2133
+ margin: 0 !important;
2134
+ padding: 0 !important;
2135
+ }
2136
+ }
2137
+
2138
+ .hover-border {
2139
+ border: 2px solid #000; /* Adjust the border style and color as needed */
2140
+ }
2141
+
2142
+ qti-graphic-gap-match-interaction {
2143
+ position: relative;
2144
+
2145
+ &.qti-selections-light {
2146
+ &:state(--dragzone-active)::part(drags) {
2147
+ background-color: var(--qti-light-bg-active);
2148
+ border-color: var(--qti-light-border-active);
2149
+ }
2150
+
2151
+ &:state(--dragzone-enabled)::part(drags) {
2152
+ background-color: var(--qti-light-bg-active);
2153
+ }
2154
+ }
2155
+
2156
+ &.qti-selections-dark {
2157
+ &:state(--dragzone-active)::part(drags) {
2158
+ background-color: var(--qti-dark-bg-active);
2159
+ border-color: var(--qti-dark-border-active);
2160
+ }
2161
+
2162
+ &:state(--dragzone-enabled)::part(drags) {
2163
+ background-color: var(--qti-dark-bg-active);
2164
+ }
2165
+ }
2166
+
2167
+ /* General styles for active and enabled states */
2168
+ &:state(--dragzone-active)::part(drags) {
2169
+ border-color: var(--qti-border-active);
2170
+ background-color: var(--qti-bg-active);
2171
+ }
2172
+
2173
+ &:state(--dragzone-enabled)::part(drags) {
2174
+ background-color: var(--qti-bg-active);
2175
+ }
2176
+
2177
+ & qti-gap-img,
2178
+ qti-gap-text {
2179
+ display: flex;
2180
+ justify-content: center;
2181
+ align-items: center;
2182
+ cursor: grab;
2183
+ }
2184
+
2185
+ & qti-associable-hotspot {
2186
+ display: flex;
2187
+ justify-content: center;
2188
+ align-items: center;
2189
+ border: 2px solid transparent;
2190
+
2191
+ &[enabled] {
2192
+
2193
+ /* Light theme override */
2194
+ .qti-selections-light {
2195
+ background-color: var(--qti-light-bg-active);
2196
+ }
2197
+
2198
+ /* Dark theme override */
2199
+ .qti-selections-dark {
2200
+ background-color: var(--qti-dark-bg-active);
2201
+ }
2202
+ background-color: var(--qti-bg-active)
2203
+ }
2204
+
2205
+ &[active] {
2206
+
2207
+ /* Light theme override */
2208
+ .qti-selections-light {
2209
+ background-color: var(--qti-light-bg-active);
2210
+ border-color: var(--qti-light-border-active);
2211
+ }
2212
+
2213
+ /* Dark theme override */
2214
+ .qti-selections-dark {
2215
+ background-color: var(--qti-dark-bg-active);
2216
+ border-color: var(--qti-dark-border-active);
2217
+ }
2218
+ border-color: var(--qti-border-active);
2219
+ background-color: var(--qti-bg-active)
2220
+ }
2221
+
2222
+ &[disabled] {
2223
+
2224
+ &:not(:empty) {
2225
+ cursor: default !important;
2226
+ }
2227
+
2228
+ cursor: not-allowed;
2229
+
2230
+ background-color: var(--qti-disabled-bg);
2231
+
2232
+ color: var(--qti-disabled-color);
2233
+
2234
+ border-color: var(--qti-border-color);
2235
+
2236
+ outline: 4px solid var(--qti-disabled-bg)
2237
+ }
2238
+
2239
+ &:empty::after {
2240
+ padding: var(--qti-padding-md) var(--qti-padding-lg); /* Padding shorthand */
2241
+ content: '\\0000a0'; /* when empty, put a space in it */
2242
+ }
2243
+
2244
+ &:not(:empty) {
2245
+ padding: 0;
2246
+ width: auto;
2247
+ }
2248
+
2249
+ &:not(:empty) > * {
2250
+ flex: 1;
2251
+ transform: rotate(0); /* rotate-0 */
2252
+ box-shadow: 0 0 0 1px #e5e7eb; /* ring-gray-200 */
2253
+ }
2254
+ }
2255
+
2256
+ & img {
2257
+ margin: 0;
2258
+ padding: 0;
2259
+ }
2260
+ }
2261
+
2262
+ qti-text-entry-interaction {
2263
+ &:state(candidate-correct) {
2264
+ &::part(input) {
2265
+ background-color: var(--qti-correct);
2266
+ }
2267
+ }
2268
+
2269
+ &:state(candidate-partially-correct) {
2270
+ &::part(input) {
2271
+ background-color: var(--qti-partially-correct);
2272
+ }
2273
+ }
2274
+
2275
+ &:state(candidate-incorrect) {
2276
+ &::part(input) {
2277
+ background-color: var(--qti-incorrect);
2278
+ }
2279
+ }
2280
+
2281
+ &::part(input) {
2282
+ border-radius: 0;
2283
+ cursor: text;
2284
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2285
+ background: var(--qti-bg);
2286
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2287
+ outline: none;
2288
+ }
2289
+
2290
+ &:hover {
2291
+ }
2292
+
2293
+ &:focus-within {
2294
+ &::part(input) {
2295
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2296
+ border-color: var(--qti-border-active);
2297
+ }
2298
+ }
2299
+ }
2300
+
2301
+ qti-extended-text-interaction {
2302
+ &::part(textarea) {
2303
+ border-radius: 0;
2304
+ cursor: text;
2305
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2306
+ background: var(--qti-bg);
2307
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2308
+ outline: none;
2309
+ }
2310
+
2311
+ &:hover {
2312
+ }
2313
+
2314
+ &:focus-within {
2315
+ &::part(textarea) {
2316
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2317
+ border-color: var(--qti-border-active);
2318
+ }
2319
+ }
2320
+ }
2321
+
2322
+ qti-gap-match-interaction {
2323
+ &.qti-selections-light {
2324
+ &:state(--dragzone-active)::part(drags) {
2325
+ background-color: var(--qti-light-bg-active);
2326
+ border-color: var(--qti-light-border-active);
2327
+ }
2328
+
2329
+ &:state(--dragzone-enabled)::part(drags) {
2330
+ background-color: var(--qti-light-bg-active);
2331
+ }
2332
+ }
2333
+
2334
+ &.qti-selections-dark {
2335
+ &:state(--dragzone-active)::part(drags) {
2336
+ background-color: var(--qti-dark-bg-active);
2337
+ border-color: var(--qti-dark-border-active);
2338
+ }
2339
+
2340
+ &:state(--dragzone-enabled)::part(drags) {
2341
+ background-color: var(--qti-dark-bg-active);
2342
+ }
2343
+ }
2344
+
2345
+ /* General styles for active and enabled states */
2346
+ &:state(--dragzone-active)::part(drags) {
2347
+ border-color: var(--qti-border-active);
2348
+ background-color: var(--qti-bg-active);
2349
+ }
2350
+
2351
+ &:state(--dragzone-enabled)::part(drags) {
2352
+ background-color: var(--qti-bg-active);
2353
+ }
2354
+
2355
+ & qti-gap-text {
2356
+
2357
+ &[dragging] {
2358
+ pointer-events: none;
2359
+ rotate: -2deg;
2360
+ box-shadow: 0 8px 12px rgb(0 0 0 / 20%),
2361
+ 0 4px 8px rgb(0 0 0 / 10%);
2362
+ }
2363
+
2364
+ &:hover {
2365
+ }
2366
+
2367
+ &:focus {
2368
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2369
+ }
2370
+
2371
+ transition: transform 200ms ease-out,
2372
+ box-shadow 200ms ease-out,
2373
+ rotate 200ms ease-out;
2374
+
2375
+ cursor: grab;
2376
+
2377
+ background-color: var(--qti-bg);
2378
+
2379
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2380
+
2381
+ border-radius: var(--qti-border-radius);
2382
+
2383
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2384
+
2385
+ outline: none
2386
+ }
2387
+
2388
+ & qti-gap {
2389
+
2390
+ &[disabled] {
2391
+
2392
+ &:not(:empty) {
2393
+ cursor: default !important;
2394
+ }
2395
+
2396
+ cursor: not-allowed;
2397
+
2398
+ background-color: var(--qti-disabled-bg);
2399
+
2400
+ color: var(--qti-disabled-color);
2401
+
2402
+ border-color: var(--qti-border-color);
2403
+
2404
+ outline: 4px solid var(--qti-disabled-bg)
2405
+ }
2406
+
2407
+ &[enabled] {
2408
+
2409
+ /* Light theme override */
2410
+ .qti-selections-light {
2411
+ border-color: var(--qti-light-border-active);
2412
+ }
2413
+
2414
+ /* Dark theme override */
2415
+ .qti-selections-dark {
2416
+ border-color: var(--qti-dark-border-active);
2417
+ }
2418
+ background-color: var(--qti-bg-active)
2419
+ }
2420
+
2421
+ &[active] {
2422
+
2423
+ /* Light theme override */
2424
+ .qti-selections-light {
2425
+ background-color: var(--qti-light-bg-active);
2426
+ border-color: var(--qti-light-border-active);
2427
+ }
2428
+
2429
+ /* Dark theme override */
2430
+ .qti-selections-dark {
2431
+ background-color: var(--qti-dark-bg-active);
2432
+ border-color: var(--qti-dark-border-active);
2433
+ }
2434
+ border-color: var(--qti-border-active);
2435
+ background-color: var(--qti-bg-active)
2436
+ }
2437
+
2438
+ display: inline-flex;
2439
+ align-items: center;
2440
+
2441
+ &:empty::after {
2442
+ padding: var(--qti-padding-md) var(--qti-padding-lg); /* Padding shorthand */
2443
+ content: '\\0000a0'; /* when empty, put a space in it */
2444
+ }
2445
+
2446
+ &:not(:empty) {
2447
+ display: inline-flex;
2448
+ padding: 0;
2449
+ width: auto;
2450
+ }
2451
+
2452
+ &:not(:empty) > * {
2453
+ flex: 1;
2454
+ transform: rotate(0); /* rotate-0 */
2455
+ box-shadow: 0 0 0 1px #e5e7eb; /* ring-gray-200 */
2456
+ }
2457
+
2458
+ border: var(--qti-border-thickness) dashed var(--qti-border-color);
2459
+
2460
+ background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
2461
+ center no-repeat;
2462
+
2463
+ border-radius: var(--qti-border-radius);
2464
+
2465
+ position: relative;
2466
+
2467
+ background-color: var(--qti-bg)
2468
+ }
2469
+ }
2470
+
2471
+ qti-hotspot-interaction {
2472
+ & qti-hotspot-choice {
2473
+ &[shape='circle'] {
2474
+
2475
+ &:hover {
2476
+ }
2477
+
2478
+ &:focus {
2479
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2480
+ }
2481
+
2482
+ &:state(--checked),
2483
+ &[aria-checked='true'] {
2484
+ border-color: var(--qti-border-active);
2485
+ }
2486
+
2487
+ &:state(--readonly),
2488
+ &[aria-readonly='true'] {
2489
+ cursor: pointer;
2490
+ background-color: var(--qti-bg);
2491
+ outline: 0;
2492
+ border: none;
2493
+ }
2494
+
2495
+ &:state(--disabled),
2496
+ &[aria-disabled='true'] {
2497
+ cursor: not-allowed;
2498
+ background-color: var(--qti-disabled-bg);
2499
+ color: var(--qti-disabled-color);
2500
+ border-color: var(--qti-border-color);
2501
+ outline: 4px solid var(--qti-disabled-bg);
2502
+ }
2503
+
2504
+ width: 100%;
2505
+
2506
+ height: 100%;
2507
+
2508
+ background-color: transparent;
2509
+
2510
+ padding: 0;
2511
+
2512
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2513
+
2514
+ outline: none
2515
+ }
2516
+
2517
+ &[shape='rect'] {
2518
+
2519
+ /* &:hover {
2520
+ @apply hov;
2521
+ } */
2522
+
2523
+ &:focus {
2524
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2525
+ }
2526
+
2527
+ &:state(--checked),
2528
+ &[aria-checked='true'] {
2529
+ border-color: var(--qti-border-active);
2530
+ }
2531
+
2532
+ &[aria-readonly='true'] {
2533
+ cursor: pointer;
2534
+ background-color: var(--qti-bg);
2535
+ outline: 0;
2536
+ border: none;
2537
+ }
2538
+
2539
+ &[aria-disabled='true'] {
2540
+ cursor: not-allowed;
2541
+ background-color: var(--qti-disabled-bg);
2542
+ color: var(--qti-disabled-color);
2543
+ border-color: var(--qti-border-color);
2544
+ outline: 4px solid var(--qti-disabled-bg);
2545
+ }
2546
+
2547
+ width: 100%;
2548
+
2549
+ height: 100%;
2550
+
2551
+ background-color: transparent;
2552
+
2553
+ padding: 0;
2554
+
2555
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2556
+
2557
+ outline: none
2558
+ }
2559
+
2560
+ &[shape='poly'] {
2561
+ &:hover::after {
2562
+ content: '';
2563
+ width: 100%;
2564
+ height: 100%;
2565
+ background: repeating-linear-gradient(
2566
+ 45deg,
2567
+ var(--qti-border-active),
2568
+ var(--qti-border-active) 5px,
2569
+ transparent 5px,
2570
+ transparent 10px
2571
+ );
2572
+ display: block;
2573
+ }
2574
+
2575
+ &:state(--checked)::after,
2576
+ &[aria-checked='true']::after {
2577
+ content: '';
2578
+ width: 100%;
2579
+ height: 100%;
2580
+ background: repeating-linear-gradient(
2581
+ 45deg,
2582
+ transparent,
2583
+ transparent 5px,
2584
+ var(--qti-border-active) 5px,
2585
+ var(--qti-border-active) 10px
2586
+ );
2587
+ display: block;
2588
+ }
2589
+
2590
+ &[aria-readonly='true'] {
2591
+ cursor: pointer;
2592
+ background-color: var(--qti-bg);
2593
+ outline: 0;
2594
+ border: none;
2595
+ }
2596
+
2597
+ &[aria-disabled='true'] {
2598
+ cursor: not-allowed;
2599
+ background-color: var(--qti-disabled-bg);
2600
+ color: var(--qti-disabled-color);
2601
+ border-color: var(--qti-border-color);
2602
+ outline: 4px solid var(--qti-disabled-bg);
2603
+ }
2604
+ }
2605
+ }
2606
+ }
2607
+
2608
+ qti-hottext-interaction {
2609
+ /* &:not(.qti-input-control-hidden),
2610
+ &:not(.qti-unselected-hidden) { */
2611
+ qti-hottext {
2612
+ display: inline-flex;
2613
+ align-items: center;
2614
+
2615
+ &:hover {
2616
+ }
2617
+
2618
+ &:focus {
2619
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2620
+ }
2621
+
2622
+ &::part(cha) {
2623
+ width: calc(var(--qti-form-size) - 6px);
2624
+ height: calc(var(--qti-form-size) - 6px);
2625
+ }
2626
+
2627
+ &:state(radio)::part(ch) {
2628
+ border-radius: 100%;
2629
+ display: grid;
2630
+ place-content: center;
2631
+ width: var(--qti-form-size);
2632
+ height: var(--qti-form-size);
2633
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2634
+ outline: none;
2635
+ }
2636
+
2637
+ &:state(radio):state(--checked)::part(cha) {
2638
+ background-color: var(--qti-border-active);
2639
+ border-radius: 100%;
2640
+ }
2641
+
2642
+ &:state(checkbox)::part(ch) {
2643
+ display: flex;
2644
+ place-items: center;
2645
+ border-radius: var(--qti-border-radius);
2646
+ display: grid;
2647
+ place-content: center;
2648
+ width: var(--qti-form-size);
2649
+ height: var(--qti-form-size);
2650
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2651
+ outline: none;
2652
+ }
2653
+
2654
+ &:state(checkbox):state(--checked)::part(cha) {
2655
+ background-color: var(--qti-border-active);
2656
+ -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
2657
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
2658
+ }
2659
+
2660
+ &:state(correct-response),
2661
+ &[data-correct-response='true'] {
2662
+ &::after {
2663
+ content: '\\02714';
2664
+ color: #16a34a; /* text-green-600 */
2665
+ }
2666
+ }
2667
+
2668
+ gap: 0.5rem;
2669
+
2670
+ background-color: var(--qti-bg);
2671
+
2672
+ border-radius: var(--qti-border-radius);
2673
+
2674
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2675
+
2676
+ outline: none;
2677
+
2678
+ cursor: pointer
2679
+ }
2680
+
2681
+ &.qti-input-control-hidden {
2682
+ qti-hottext {
2683
+ /* --qti-padding-md: 0.1rem;
2684
+ --qti-padding-lg: 0.2rem;
2685
+ --qti-border-radius-md: 0.3rem;
2686
+ --qti-border-thickness: 1px;
2687
+ --qti-font-weight-semibold: 400; */
2688
+
2689
+ &:hover {
2690
+ }
2691
+
2692
+ &:focus {
2693
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2694
+ }
2695
+
2696
+ /* @layer qti-variants { */
2697
+ &::part(ch) {
2698
+ display: none;
2699
+ }
2700
+
2701
+ &:state(--checked) {
2702
+ border-color: var(--qti-border-active);
2703
+ background-color: var(--qti-bg-active);
2704
+ }
2705
+
2706
+ &[aria-readonly='true'] {
2707
+ cursor: pointer;
2708
+ background-color: var(--qti-bg);
2709
+ outline: 0;
2710
+ border: none;
2711
+ }
2712
+
2713
+ &[aria-disabled='true'] {
2714
+ cursor: not-allowed;
2715
+ background-color: var(--qti-disabled-bg);
2716
+ color: var(--qti-disabled-color);
2717
+ border-color: var(--qti-border-color);
2718
+ outline: 4px solid var(--qti-disabled-bg);
2719
+ }
2720
+
2721
+ border-radius: var(--qti-border-radius);
2722
+
2723
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2724
+
2725
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2726
+
2727
+ outline: none
2728
+ }
2729
+
2730
+ /* } */
2731
+ }
2732
+
2733
+ &.qti-unselected-hidden {
2734
+ qti-hottext {
2735
+ &:hover {
2736
+ }
2737
+
2738
+ &:focus {
2739
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2740
+ }
2741
+
2742
+ cursor: pointer;
2743
+
2744
+ &::part(ch) {
2745
+ display: none;
2746
+ }
2747
+
2748
+ &:state(--checked) {
2749
+ background-color: var(--qti-bg-active);
2750
+ }
2751
+
2752
+ &[aria-readonly='true'] {
2753
+ cursor: pointer;
2754
+ background-color: var(--qti-bg);
2755
+ outline: 0;
2756
+ border: none;
2757
+ }
2758
+
2759
+ &[aria-disabled='true'] {
2760
+ cursor: not-allowed;
2761
+ background-color: var(--qti-disabled-bg);
2762
+ color: var(--qti-disabled-color);
2763
+ border-color: var(--qti-border-color);
2764
+ outline: 4px solid var(--qti-disabled-bg);
2765
+ }
2766
+ }
2767
+ }
2768
+ }
2769
+
2770
+ qti-inline-choice-interaction {
2771
+ &:state(candidate-correct) {
2772
+ background-color: var(--qti-correct);
2773
+ }
2774
+
2775
+ &:state(candidate-incorrect) {
2776
+ background-color: var(--qti-incorrect);
2777
+ }
2778
+
2779
+ &::part(select) {
2780
+
2781
+ &:hover {
2782
+ }
2783
+
2784
+ &:focus {
2785
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2786
+ }
2787
+
2788
+ border-radius: var(--qti-border-radius);
2789
+
2790
+ position: relative;
2791
+
2792
+ -webkit-appearance: none;
2793
+
2794
+ -moz-appearance: none;
2795
+
2796
+ appearance: none;
2797
+
2798
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2799
+
2800
+ padding-right: calc(var(--qti-padding-horizontal) + 1.5rem);
2801
+
2802
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2803
+
2804
+ outline: none;
2805
+
2806
+ background: url("data:image/svg+xml,%3Csvg fill='currentColor' width='22' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath clip-rule='evenodd' fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z'%3E%3C/path%3E%3C/svg%3E")
2807
+ no-repeat center right 6px
2808
+ }
2809
+ }
2810
+
2811
+ qti-match-interaction.qti-match-tabular {
2812
+ /* Table element */
2813
+ &::part(table) {
2814
+ border-collapse: collapse;
2815
+ width: 100%;
2816
+ table-layout: fixed;
2817
+ }
2818
+
2819
+ /* Row headers */
2820
+ &::part(r-header) {
2821
+ background-color: var(--qti-bg-active, #f8f8f8);
2822
+ font-weight: 500;
2823
+ text-align: center;
2824
+ padding: 8px;
2825
+ border: 1px solid #ddd;
2826
+ }
2827
+
2828
+ /* Column headers */
2829
+ &::part(c-header) {
2830
+ background-color: var(--qti-bg-active, #f8f8f8);
2831
+ font-weight: 500;
2832
+ text-align: left;
2833
+ padding: 8px 15px;
2834
+ border: 1px solid #ddd;
2835
+ }
2836
+
2837
+ /* Table rows */
2838
+ &::part(row) {
2839
+ border-bottom: 1px solid #ddd;
2840
+ }
2841
+
2842
+ /* Input cells */
2843
+ &::part(input-cell) {
2844
+ text-align: center;
2845
+ vertical-align: middle;
2846
+ height: 48px;
2847
+ border: 1px solid #ddd;
2848
+ padding: 8px;
2849
+ }
2850
+
2851
+ /* Radio button styling */
2852
+ &::part(rb) {
2853
+ -webkit-appearance: none;
2854
+ -moz-appearance: none;
2855
+ appearance: none;
2856
+ width: 24px;
2857
+ height: 24px;
2858
+ border-radius: 50%;
2859
+ border: 2px solid var(--qti-border-active, #2196f3);
2860
+ background-color: transparent !important;
2861
+ margin: 0 auto;
2862
+ cursor: pointer;
2863
+ display: block;
2864
+ }
2865
+
2866
+ /* Radio button checked state */
2867
+ &::part(rb-checked) {
2868
+ box-shadow: inset 0 0 0 6px var(--qti-border-active, #2196f3);
2869
+ }
2870
+
2871
+ /* Checkbox styling */
2872
+ &::part(cb) {
2873
+ -webkit-appearance: none;
2874
+ -moz-appearance: none;
2875
+ appearance: none;
2876
+ width: 24px;
2877
+ height: 24px;
2878
+ border-radius: 3px;
2879
+ border: 2px solid var(--qti-border-active, #2196f3);
2880
+ background-color: transparent !important;
2881
+ margin: 0 auto;
2882
+ cursor: pointer;
2883
+ display: block;
2884
+ }
2885
+
2886
+ /* Checkbox checked state - only change border if we're adding an SVG checkmark */
2887
+ &::part(cb-checked) {
2888
+ background-color: var(--qti-border-active, #2196f3) !important;
2889
+ }
2890
+
2891
+ &::part(checkmark) {
2892
+ position: absolute;
2893
+ width: 18px;
2894
+ height: 18px;
2895
+ top: 3px;
2896
+ left: 3px;
2897
+ pointer-events: none;
2898
+ }
2899
+
2900
+ /* Correct answers for both types */
2901
+ &::part(rb-correct) {
2902
+ border-color: var(--qti-correct, #4caf50);
2903
+ }
2904
+
2905
+ &::part(rb-checked rb-correct) {
2906
+ box-shadow: inset 0 0 0 6px var(--qti-correct, #4caf50);
2907
+ }
2908
+
2909
+ &::part(cb-correct) {
2910
+ border-color: var(--qti-correct, #4caf50);
2911
+ }
2912
+
2913
+ &::part(cb-checked cb-correct) {
2914
+ background-color: var(--qti-correct, #4caf50) !important;
2915
+ }
2916
+
2917
+ /* Incorrect answers for both types */
2918
+ &::part(rb-incorrect) {
2919
+ border-color: var(--qti-incorrect, #f44336);
2920
+ }
2921
+
2922
+ &::part(rb-checked rb-incorrect) {
2923
+ box-shadow: inset 0 0 0 6px var(--qti-incorrect, #f44336);
2924
+ }
2925
+
2926
+ &::part(cb-incorrect) {
2927
+ border-color: var(--qti-incorrect, #f44336);
2928
+ }
2929
+
2930
+ &::part(cb-checked cb-incorrect) {
2931
+ background-color: var(--qti-incorrect, #f44336) !important;
2932
+ }
2933
+ }
2934
+
2935
+ qti-match-interaction:not(.qti-match-tabular) {
2936
+ &:state(--dragzone-enabled) qti-simple-match-set:first-of-type {
2937
+ background-color: var(--qti-bg-active);
2938
+ }
2939
+
2940
+ &:state(--dragzone-active) qti-simple-match-set:first-of-type {
2941
+ border-color: var(--qti-border-active);
2942
+ background-color: var(--qti-bg-active);
2943
+ }
2944
+
2945
+ /* The draggables */
2946
+ & qti-simple-match-set:first-of-type {
2947
+ display: flex;
2948
+ flex-wrap: wrap;
2949
+ align-items: flex-start; /* Prevents children from stretching */
2950
+ gap: var(--qti-gap-size);
2951
+ border: 2px solid transparent;
2952
+
2953
+ & qti-simple-associable-choice {
2954
+
2955
+ &[dragging] {
2956
+ pointer-events: none;
2957
+ rotate: -2deg;
2958
+ box-shadow: 0 8px 12px rgb(0 0 0 / 20%),
2959
+ 0 4px 8px rgb(0 0 0 / 10%);
2960
+ }
2961
+
2962
+ &:hover {
2963
+ }
2964
+
2965
+ &:focus {
2966
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
2967
+ }
2968
+
2969
+ transition: transform 200ms ease-out,
2970
+ box-shadow 200ms ease-out,
2971
+ rotate 200ms ease-out;
2972
+
2973
+ cursor: grab;
2974
+
2975
+ background-color: var(--qti-bg);
2976
+
2977
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
2978
+
2979
+ border-radius: var(--qti-border-radius);
2980
+
2981
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
2982
+
2983
+ outline: none
2984
+ }
2985
+ }
2986
+
2987
+ /* The droppables */
2988
+ & qti-simple-match-set:last-of-type {
2989
+ display: grid;
2990
+ grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
2991
+ grid-auto-flow: unset;
2992
+ grid-auto-columns: unset;
2993
+ gap: var(--qti-gap-size);
2994
+
2995
+ & > qti-simple-associable-choice {
2996
+ /* a droppable qti-simple-associable-choice */
2997
+ display: flex;
2998
+ flex-direction: column;
2999
+ justify-content: space-between;
3000
+ grid-row: unset;
3001
+ box-sizing: border-box;
3002
+
3003
+ & img {
3004
+ max-width: 100%;
3005
+ height: auto;
3006
+ }
3007
+
3008
+ &[enabled] {
3009
+ &::part(dropslot) {
3010
+ background-color: var(--qti-bg-active);
3011
+ }
3012
+ }
3013
+
3014
+ &[disabled] {
3015
+ &::part(dropslot) {
3016
+ cursor: not-allowed;
3017
+ background-color: var(--qti-disabled-bg);
3018
+ color: var(--qti-disabled-color);
3019
+ border-color: var(--qti-border-color);
3020
+ outline: 4px solid var(--qti-disabled-bg);
3021
+ }
3022
+ }
3023
+
3024
+ &[active] {
3025
+ &::part(dropslot) {
3026
+ border-color: var(--qti-border-active);
3027
+ background-color: var(--qti-bg-active);
3028
+ }
3029
+ }
3030
+
3031
+ &::part(dropslot) {
3032
+
3033
+ &[dragging] {
3034
+ pointer-events: none;
3035
+ rotate: -2deg;
3036
+ box-shadow: 0 8px 12px rgb(0 0 0 / 20%),
3037
+ 0 4px 8px rgb(0 0 0 / 10%);
3038
+ }
3039
+
3040
+ &:focus {
3041
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3042
+ }
3043
+
3044
+ padding: var(--qti-dropzone-padding);
3045
+ margin-top: 0.5rem;
3046
+ gap: 0.5rem;
3047
+ display: flex;
3048
+ flex-wrap: wrap;
3049
+ justify-content: center;
3050
+ align-items: center;
3051
+ border: var(--qti-border-thickness) dashed var(--qti-border-color);
3052
+ background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
3053
+ center no-repeat;
3054
+ border-radius: var(--qti-border-radius);
3055
+ position: relative;
3056
+ background-color: var(--qti-bg);
3057
+ }
3058
+
3059
+ & > *:not(qti-simple-associable-choice) {
3060
+ pointer-events: none;
3061
+ }
3062
+
3063
+ & > qti-simple-associable-choice {
3064
+
3065
+ &:state(candidate-correct) {
3066
+ background-color: var(--qti-correct);
3067
+ }
3068
+
3069
+ &:state(candidate-incorrect) {
3070
+ background-color: var(--qti-incorrect);
3071
+ }
3072
+
3073
+ &::part(dropslot) {
3074
+ display: none;
3075
+ }
3076
+
3077
+ &:hover {
3078
+ }
3079
+
3080
+ &:focus {
3081
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3082
+ }
3083
+
3084
+ flex-basis: fit-content;
3085
+
3086
+ transition: transform 200ms ease-out,
3087
+ box-shadow 200ms ease-out,
3088
+ rotate 200ms ease-out;
3089
+
3090
+ cursor: grab;
3091
+
3092
+ background-color: var(--qti-bg);
3093
+
3094
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
3095
+
3096
+ border-radius: var(--qti-border-radius);
3097
+
3098
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
3099
+
3100
+ outline: none;
3101
+ }
3102
+ }
3103
+ }
3104
+ }
3105
+
3106
+ qti-order-interaction:state(--dragzone-active)::part(drags) {
3107
+ border-color: var(--qti-border-active);
3108
+ background-color: var(--qti-bg-active);
3109
+ }
3110
+
3111
+ qti-order-interaction:state(--dragzone-enabled)::part(drags) {
3112
+ background-color: var(--qti-bg-active);
3113
+ }
3114
+
3115
+ qti-order-interaction {
3116
+ &::part(qti-simple-choice),
3117
+ & qti-simple-choice {
3118
+
3119
+ &[dragging] {
3120
+ pointer-events: none;
3121
+ rotate: -2deg;
3122
+ box-shadow: 0 8px 12px rgb(0 0 0 / 20%),
3123
+ 0 4px 8px rgb(0 0 0 / 10%);
3124
+ }
3125
+
3126
+ &:hover {
3127
+ }
3128
+
3129
+ &:focus {
3130
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3131
+ }
3132
+
3133
+ transition: transform 200ms ease-out,
3134
+ box-shadow 200ms ease-out,
3135
+ rotate 200ms ease-out;
3136
+
3137
+ cursor: grab;
3138
+
3139
+ background-color: var(--qti-bg);
3140
+
3141
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
3142
+
3143
+ border-radius: var(--qti-border-radius);
3144
+
3145
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
3146
+
3147
+ outline: none
3148
+ }
3149
+
3150
+ &::part(qti-simple-choice) {
3151
+ display: flex;
3152
+ overflow: hidden;
3153
+ align-items: center;
3154
+ width: 100%;
3155
+ text-overflow: ellipsis;
3156
+ }
3157
+
3158
+ &::part(drops) {
3159
+ gap: 0.5rem; /* gap-2 */
3160
+ }
3161
+
3162
+ &::part(drags) {
3163
+ gap: 0.5rem; /* gap-2 */
3164
+ }
3165
+
3166
+ &::part(drop-list) {
3167
+
3168
+ &[enabled] {
3169
+
3170
+ /* Light theme override */
3171
+ .qti-selections-light {
3172
+ border-color: var(--qti-light-border-active);
3173
+ }
3174
+
3175
+ /* Dark theme override */
3176
+ .qti-selections-dark {
3177
+ border-color: var(--qti-dark-border-active);
3178
+ }
3179
+ background-color: var(--qti-bg-active)
3180
+ }
3181
+
3182
+ &:hover {
3183
+ }
3184
+
3185
+ &:focus {
3186
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3187
+ }
3188
+
3189
+ display: flex;
3190
+ min-height: 4rem;
3191
+ border: var(--qti-border-thickness) dashed var(--qti-border-color);
3192
+ background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
3193
+ center no-repeat;
3194
+ border-radius: var(--qti-border-radius);
3195
+ position: relative;
3196
+ background-color: var(--qti-bg);
3197
+ }
3198
+
3199
+ &::part(active) {
3200
+ border-color: var(--qti-border-active);
3201
+ background-color: var(--qti-bg-active);
3202
+ }
3203
+
3204
+ & drop-list {
3205
+ &[shape='circle'] {
3206
+
3207
+ &:hover {
3208
+ }
3209
+
3210
+ &:focus {
3211
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3212
+ }
3213
+
3214
+ &[aria-checked='true'] {
3215
+ border-color: var(--qti-border-active);
3216
+ background-color: var(--qti-bg-active);
3217
+ }
3218
+
3219
+ &[aria-readonly='true'] {
3220
+ cursor: pointer;
3221
+ background-color: var(--qti-bg);
3222
+ outline: 0;
3223
+ border: none;
3224
+ }
3225
+
3226
+ &[aria-disabled='true'] {
3227
+ cursor: not-allowed;
3228
+ background-color: var(--qti-disabled-bg);
3229
+ color: var(--qti-disabled-color);
3230
+ border-color: var(--qti-border-color);
3231
+ outline: 4px solid var(--qti-disabled-bg);
3232
+ }
3233
+
3234
+ width: 100%;
3235
+
3236
+ height: 100%;
3237
+
3238
+ background-color: transparent;
3239
+
3240
+ padding: 0;
3241
+
3242
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
3243
+
3244
+ outline: none
3245
+ }
3246
+
3247
+ &[shape='square'] {
3248
+
3249
+ &:hover {
3250
+ }
3251
+
3252
+ &:focus {
3253
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3254
+ }
3255
+
3256
+ &[aria-checked='true'] {
3257
+ border-color: var(--qti-border-active);
3258
+ background-color: var(--qti-bg-active);
3259
+ }
3260
+
3261
+ &[aria-readonly='true'] {
3262
+ cursor: pointer;
3263
+ background-color: var(--qti-bg);
3264
+ outline: 0;
3265
+ border: none;
3266
+ }
3267
+
3268
+ &[aria-disabled='true'] {
3269
+ cursor: not-allowed;
3270
+ background-color: var(--qti-disabled-bg);
3271
+ color: var(--qti-disabled-color);
3272
+ border-color: var(--qti-border-color);
3273
+ outline: 4px solid var(--qti-disabled-bg);
3274
+ }
3275
+
3276
+ width: 100%;
3277
+
3278
+ height: 100%;
3279
+
3280
+ background-color: transparent;
3281
+
3282
+ padding: 0;
3283
+
3284
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
3285
+
3286
+ outline: none
3287
+ }
3288
+ }
3289
+ }
3290
+
3291
+ qti-associate-interaction {
3292
+ /* General styles for active and enabled states */
3293
+ &:state(--dragzone-active) slot[name='qti-simple-associable-choice'] {
3294
+ border-color: var(--qti-border-active);
3295
+ background-color: var(--qti-bg-active);
3296
+ }
3297
+
3298
+ &:state(--dragzone-enabled) slot[name='qti-simple-associable-choice'] {
3299
+ background-color: var(--qti-bg-active);
3300
+ }
3301
+
3302
+ & qti-simple-associable-choice, /* drags when in lightdom */
3303
+ &::part(qti-simple-associable-choice) /* drags when in shadowdom */ {
3304
+
3305
+ &:hover {
3306
+ }
3307
+
3308
+ &:focus {
3309
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3310
+ }
3311
+
3312
+ &[dragging] {
3313
+ pointer-events: none;
3314
+ rotate: -2deg;
3315
+ box-shadow: 0 8px 12px rgb(0 0 0 / 20%),
3316
+ 0 4px 8px rgb(0 0 0 / 10%);
3317
+ }
3318
+
3319
+ transition: transform 200ms ease-out,
3320
+ box-shadow 200ms ease-out,
3321
+ rotate 200ms ease-out;
3322
+
3323
+ cursor: grab;
3324
+
3325
+ background-color: var(--qti-bg);
3326
+
3327
+ padding: var(--qti-padding-vertical) var(--qti-padding-horizontal);
3328
+
3329
+ border-radius: var(--qti-border-radius);
3330
+
3331
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
3332
+
3333
+ outline: none
3334
+ }
3335
+
3336
+ /* display: flex;
3337
+ overflow: hidden;
3338
+ align-items: center; */
3339
+
3340
+ /* &::part(drop-container) {
3341
+ display: flex;
3342
+ flex-direction: column;
3343
+ gap: var(--qti-gap-size);
3344
+ } */
3345
+
3346
+ &::part(drop-list) {
3347
+
3348
+ display: grid;
3349
+ height: 3rem;
3350
+ min-width: 10rem;
3351
+ border: var(--qti-border-thickness) dashed var(--qti-border-color);
3352
+ background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
3353
+ center no-repeat;
3354
+ border-radius: var(--qti-border-radius);
3355
+ position: relative;
3356
+ background-color: var(--qti-bg);
3357
+ }
3358
+
3359
+ &::part(drop-list):focus {
3360
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3361
+ }
3362
+
3363
+ &::part(drop-list)[dragging] {
3364
+ border-color: var(--qti-border-active);
3365
+ background-color: var(--qti-bg-active);
3366
+ }
3367
+
3368
+ /* &::part(drop-list) {
3369
+ @apply act;
3370
+ } */
3371
+ }
3372
+
3373
+ qti-graphic-order-interaction {
3374
+ & qti-hotspot-choice {
3375
+ width: 100%;
3376
+ height: 100%;
3377
+ background-color: rgb(128 128 128 / 30%);
3378
+ padding: 0;
3379
+
3380
+ &:hover {
3381
+ background-color: rgb(128 128 128 / 70%);
3382
+ }
3383
+
3384
+ &:focus {
3385
+ background-color: rgb(128 128 128 / 70%);
3386
+ }
3387
+
3388
+ &:state(--checked),
3389
+ &[aria-checked='true'] {
3390
+ background-color: rgb(128 128 128 / 70%);
3391
+ }
3392
+
3393
+ &[aria-readonly='true'] {
3394
+ cursor: pointer;
3395
+ background-color: var(--qti-bg);
3396
+ outline: 0;
3397
+ border: none;
3398
+ }
3399
+
3400
+ &[aria-disabled='true'] {
3401
+ cursor: not-allowed;
3402
+ background-color: var(--qti-disabled-bg);
3403
+ color: var(--qti-disabled-color);
3404
+ border-color: var(--qti-border-color);
3405
+ outline: 4px solid var(--qti-disabled-bg);
3406
+ }
3407
+
3408
+ &[aria-ordervalue] {
3409
+ display: grid;
3410
+ place-content: center;
3411
+ }
3412
+
3413
+ &[aria-ordervalue]::after {
3414
+ content: attr(aria-ordervalue) !important;
3415
+ }
3416
+
3417
+ &[aria-ordercorrectvalue] {
3418
+ display: grid;
3419
+ place-content: center;
3420
+ }
3421
+
3422
+ /* When both attributes are present */
3423
+ &[aria-ordercorrectvalue][aria-ordervalue]::after {
3424
+ content: 'C=' attr(aria-ordercorrectvalue) ' R=' attr(aria-ordervalue) !important;
3425
+ color: var(--qti-correct);
3426
+ }
3427
+
3428
+ /* When only aria-ordercorrectvalue is present */
3429
+ &[aria-ordercorrectvalue]:not([aria-ordervalue])::after {
3430
+ content: 'C=' attr(aria-ordercorrectvalue) !important;
3431
+ color: var(--qti-correct);
3432
+ }
3433
+ }
3434
+
3435
+ &.qti-selections-light {
3436
+ &:state(--dragzone-active)::part(drags) {
3437
+ background-color: var(--qti-light-bg-active);
3438
+ border-color: var(--qti-light-border-active);
3439
+ }
3440
+
3441
+ &:state(--dragzone-enabled)::part(drags) {
3442
+ background-color: var(--qti-light-bg-active);
3443
+ }
3444
+ }
3445
+
3446
+ &.qti-selections-dark {
3447
+ &:state(--dragzone-active)::part(drags) {
3448
+ background-color: var(--qti-dark-bg-active);
3449
+ border-color: var(--qti-dark-border-active);
3450
+ }
3451
+
3452
+ &:state(--dragzone-enabled)::part(drags) {
3453
+ background-color: var(--qti-dark-bg-active);
3454
+ }
3455
+ }
3456
+
3457
+ /* General styles for active and enabled states */
3458
+ &:state(--dragzone-active)::part(drags) {
3459
+ border-color: var(--qti-border-active);
3460
+ background-color: var(--qti-bg-active);
3461
+ }
3462
+
3463
+ &:state(--dragzone-enabled)::part(drags) {
3464
+ background-color: var(--qti-bg-active);
3465
+ }
3466
+ }
3467
+
3468
+ qti-graphic-associate-interaction {
3469
+ position: relative;
3470
+ display: block;
3471
+
3472
+ & qti-associable-hotspot {
3473
+ &[shape='circle'] {
3474
+
3475
+ &:hover {
3476
+ }
3477
+
3478
+ &:focus {
3479
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3480
+ }
3481
+
3482
+ &[aria-checked='true'] {
3483
+ border-color: var(--qti-border-active);
3484
+ background-color: var(--qti-bg-active);
3485
+ }
3486
+
3487
+ &[aria-readonly='true'] {
3488
+ cursor: pointer;
3489
+ background-color: var(--qti-bg);
3490
+ outline: 0;
3491
+ border: none;
3492
+ }
3493
+
3494
+ &[aria-disabled='true'] {
3495
+ cursor: not-allowed;
3496
+ background-color: var(--qti-disabled-bg);
3497
+ color: var(--qti-disabled-color);
3498
+ border-color: var(--qti-border-color);
3499
+ outline: 4px solid var(--qti-disabled-bg);
3500
+ }
3501
+
3502
+ width: 100%;
3503
+
3504
+ height: 100%;
3505
+
3506
+ background-color: transparent;
3507
+
3508
+ padding: 0;
3509
+
3510
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
3511
+
3512
+ outline: none
3513
+ }
3514
+
3515
+ &[shape='square'] {
3516
+
3517
+ &:hover {
3518
+ }
3519
+
3520
+ &:focus {
3521
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3522
+ }
3523
+
3524
+ &[aria-checked='true'] {
3525
+ border-color: var(--qti-border-active);
3526
+ background-color: var(--qti-bg-active);
3527
+ }
3528
+
3529
+ &[aria-readonly='true'] {
3530
+ cursor: pointer;
3531
+ background-color: var(--qti-bg);
3532
+ outline: 0;
3533
+ border: none;
3534
+ }
3535
+
3536
+ &[aria-disabled='true'] {
3537
+ cursor: not-allowed;
3538
+ background-color: var(--qti-disabled-bg);
3539
+ color: var(--qti-disabled-color);
3540
+ border-color: var(--qti-border-color);
3541
+ outline: 4px solid var(--qti-disabled-bg);
3542
+ }
3543
+
3544
+ width: 100%;
3545
+
3546
+ height: 100%;
3547
+
3548
+ background-color: transparent;
3549
+
3550
+ padding: 0;
3551
+
3552
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
3553
+
3554
+ outline: none
3555
+ }
3556
+ }
3557
+
3558
+ &.qti-selections-light {
3559
+ &:state(--dragzone-active)::part(drags) {
3560
+ background-color: var(--qti-light-bg-active);
3561
+ border-color: var(--qti-light-border-active);
3562
+ }
3563
+
3564
+ &:state(--dragzone-enabled)::part(drags) {
3565
+ background-color: var(--qti-light-bg-active);
3566
+ }
3567
+ }
3568
+
3569
+ &.qti-selections-dark {
3570
+ &:state(--dragzone-active)::part(drags) {
3571
+ background-color: var(--qti-dark-bg-active);
3572
+ border-color: var(--qti-dark-border-active);
3573
+ }
3574
+
3575
+ &:state(--dragzone-enabled)::part(drags) {
3576
+ background-color: var(--qti-dark-bg-active);
3577
+ }
3578
+ }
3579
+
3580
+ /* General styles for active and enabled states */
3581
+ &:state(--dragzone-active)::part(drags) {
3582
+ border-color: var(--qti-border-active);
3583
+ background-color: var(--qti-bg-active);
3584
+ }
3585
+
3586
+ &:state(--dragzone-enabled)::part(drags) {
3587
+ background-color: var(--qti-bg-active);
3588
+ }
3589
+ }
3590
+
3591
+ qti-slider-interaction {
3592
+ --qti-tick-color: rgb(229 231 235 / 100%);
3593
+ --qti-tick-width: 1px;
3594
+ }
3595
+
3596
+ qti-select-point-interaction {
3597
+ &::part(point) {
3598
+ &:hover {
3599
+ }
3600
+
3601
+ &:focus {
3602
+ box-shadow: 0 0 0 var(--qti-focus-border-width) var(--qti-focus-color);
3603
+ }
3604
+
3605
+ border-radius: 100%;
3606
+
3607
+ border: 1px solid white;
3608
+
3609
+ background-color: black;
3610
+
3611
+ opacity: 0.5;
3612
+
3613
+ padding: 0;
3614
+
3615
+ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color);
3616
+
3617
+ outline: none;
3618
+
3619
+ }
3620
+
3621
+ &::part(correct) {
3622
+ background-color: var(--qti-correct);
3623
+ }
3624
+
3625
+ &::part(incorrect) {
3626
+ background-color: var(--qti-incorrect);
3627
+ }
3628
+ }
3629
+
3630
+ qti-position-object-stage {
3631
+ & qti-position-object-interaction {
3632
+ /* no styles necessary, only layout styles, defined in the component */
3633
+ }
3634
+ }
3635
+
3636
+ qti-prompt {
3637
+ margin: 0.5rem 0; /* my-2 */
3638
+ display: block;
3639
+ width: 100%;
3640
+ }
3641
+ }
3642
+
3643
+ qti-test-part:not(:has(qti-assessment-item)),
3644
+ qti-assessment-section:not(:has(qti-assessment-item)),
3645
+ qti-assessment-item-ref:not(:has(qti-assessment-item)) {
3646
+ display: none;
3647
+ }
3648
+
3649
+ qti-hottext-interaction::part(message),
3650
+ qti-choice-interaction::part(message),
3651
+ qti-association-interaction::part(message),
3652
+ qti-graphic-association-interaction::part(message),
3653
+ qti-graphic-gap-match-interaction::part(message),
3654
+ qti-graphic-order-interaction::part(message),
3655
+ qti-math-interaction::part(message) {
3656
+ display: none;
3657
+ color: var(--qti-validation-text, #000);
3658
+ background-color: var(--qti-validation-error-bg, #fff);
3659
+ padding: 10px;
3660
+ border: 3px solid var(--qti-validation-text, #000);
3661
+ border-radius: 4px;
3662
+ margin-top: 8px;
3663
+ }
3664
+
3665
+ div.full-correct-response {
3666
+ border: 1px solid #39a7c0;
3667
+ background-color: #d9e8ee;
3668
+ }
3669
+
3670
+ div.full-correct-response-block {
3671
+ display: block;
3672
+ margin-top: var(--qti-padding-vertical);
3673
+ padding: 0.5rem;
3674
+ }
3675
+
3676
+ div.full-correct-response-inline {
3677
+ display: inline-block;
3678
+ margin-left: var(--qti-padding-horizontal);
3679
+ margin-right: var(--qti-padding-horizontal);
3680
+ padding: 0.2rem;
3681
+ }
3682
+ `;export{B as a,_ as b};
3683
+ /*! Bundled license information:
3684
+
3685
+ lit-html/node/directives/private-async-helpers.js:
3686
+ (**
3687
+ * @license
3688
+ * Copyright 2021 Google LLC
3689
+ * SPDX-License-Identifier: BSD-3-Clause
3690
+ *)
3691
+
3692
+ lit-html/node/directives/until.js:
3693
+ (**
3694
+ * @license
3695
+ * Copyright 2017 Google LLC
3696
+ * SPDX-License-Identifier: BSD-3-Clause
3697
+ *)
3698
+ */