intelligent-system-design-language 0.3.13

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 (209) hide show
  1. package/.claude/agents/langium-language-designer.md +38 -0
  2. package/.claude/agents/typescript-vscode-expert.md +29 -0
  3. package/.claude/agents/ui-ux-designer.md +36 -0
  4. package/.claude/settings.local.json +33 -0
  5. package/.idea/inspectionProfiles/Project_Default.xml +7 -0
  6. package/.idea/isdl.iml +14 -0
  7. package/.idea/modules.xml +9 -0
  8. package/.idea/vcs.xml +7 -0
  9. package/.idea/watcherTasks.xml +4 -0
  10. package/.vscodeignore +18 -0
  11. package/LICENSE +674 -0
  12. package/README.md +86 -0
  13. package/bin/cli.js +4 -0
  14. package/bin/lsp.js +8 -0
  15. package/isdl.png +0 -0
  16. package/out/_backgrounds.scss +91 -0
  17. package/out/_handlebars.scss +505 -0
  18. package/out/_isdlStyles.scss +1357 -0
  19. package/out/_vuetifyOverrides.scss +425 -0
  20. package/out/_vuetifyStyles.scss +31957 -0
  21. package/out/cli/cli-util.js +39 -0
  22. package/out/cli/cli-util.js.map +1 -0
  23. package/out/cli/components/_backgrounds.scss +91 -0
  24. package/out/cli/components/_handlebars.scss +505 -0
  25. package/out/cli/components/_isdlStyles.scss +1357 -0
  26. package/out/cli/components/_vuetifyOverrides.scss +425 -0
  27. package/out/cli/components/_vuetifyStyles.scss +31957 -0
  28. package/out/cli/components/active-effect-sheet-generator.js +643 -0
  29. package/out/cli/components/active-effect-sheet-generator.js.map +1 -0
  30. package/out/cli/components/base-actor-sheet-generator.js +125 -0
  31. package/out/cli/components/base-actor-sheet-generator.js.map +1 -0
  32. package/out/cli/components/base-sheet-generator.js +525 -0
  33. package/out/cli/components/base-sheet-generator.js.map +1 -0
  34. package/out/cli/components/chat-card-generator.js +683 -0
  35. package/out/cli/components/chat-card-generator.js.map +1 -0
  36. package/out/cli/components/css-generator.js +58 -0
  37. package/out/cli/components/css-generator.js.map +1 -0
  38. package/out/cli/components/damage-roll-generator.js +173 -0
  39. package/out/cli/components/damage-roll-generator.js.map +1 -0
  40. package/out/cli/components/datamodel-generator.js +672 -0
  41. package/out/cli/components/datamodel-generator.js.map +1 -0
  42. package/out/cli/components/derived-data-generator.js +1340 -0
  43. package/out/cli/components/derived-data-generator.js.map +1 -0
  44. package/out/cli/components/hotbar-drop-hook-generator.js +95 -0
  45. package/out/cli/components/hotbar-drop-hook-generator.js.map +1 -0
  46. package/out/cli/components/init-hook-generator.js +597 -0
  47. package/out/cli/components/init-hook-generator.js.map +1 -0
  48. package/out/cli/components/keywords-generator.js +220 -0
  49. package/out/cli/components/keywords-generator.js.map +1 -0
  50. package/out/cli/components/language-generator.js +110 -0
  51. package/out/cli/components/language-generator.js.map +1 -0
  52. package/out/cli/components/measured-template-preview.js +234 -0
  53. package/out/cli/components/measured-template-preview.js.map +1 -0
  54. package/out/cli/components/method-generator.js +1812 -0
  55. package/out/cli/components/method-generator.js.map +1 -0
  56. package/out/cli/components/ready-hook-generator.js +448 -0
  57. package/out/cli/components/ready-hook-generator.js.map +1 -0
  58. package/out/cli/components/token-generator.js +138 -0
  59. package/out/cli/components/token-generator.js.map +1 -0
  60. package/out/cli/components/utils.js +176 -0
  61. package/out/cli/components/utils.js.map +1 -0
  62. package/out/cli/components/vue/base-components/vue-attribute.js +148 -0
  63. package/out/cli/components/vue/base-components/vue-attribute.js.map +1 -0
  64. package/out/cli/components/vue/base-components/vue-boolean.js +77 -0
  65. package/out/cli/components/vue/base-components/vue-boolean.js.map +1 -0
  66. package/out/cli/components/vue/base-components/vue-calculator.js +106 -0
  67. package/out/cli/components/vue/base-components/vue-calculator.js.map +1 -0
  68. package/out/cli/components/vue/base-components/vue-damage-application.js +369 -0
  69. package/out/cli/components/vue/base-components/vue-damage-application.js.map +1 -0
  70. package/out/cli/components/vue/base-components/vue-damage-bonuses.js +225 -0
  71. package/out/cli/components/vue/base-components/vue-damage-bonuses.js.map +1 -0
  72. package/out/cli/components/vue/base-components/vue-damage-resistances.js +256 -0
  73. package/out/cli/components/vue/base-components/vue-damage-resistances.js.map +1 -0
  74. package/out/cli/components/vue/base-components/vue-damage-track.js +134 -0
  75. package/out/cli/components/vue/base-components/vue-damage-track.js.map +1 -0
  76. package/out/cli/components/vue/base-components/vue-date-time.js +55 -0
  77. package/out/cli/components/vue/base-components/vue-date-time.js.map +1 -0
  78. package/out/cli/components/vue/base-components/vue-dice.js +111 -0
  79. package/out/cli/components/vue/base-components/vue-dice.js.map +1 -0
  80. package/out/cli/components/vue/base-components/vue-die.js +86 -0
  81. package/out/cli/components/vue/base-components/vue-die.js.map +1 -0
  82. package/out/cli/components/vue/base-components/vue-document-choice.js +172 -0
  83. package/out/cli/components/vue/base-components/vue-document-choice.js.map +1 -0
  84. package/out/cli/components/vue/base-components/vue-document-choices.js +203 -0
  85. package/out/cli/components/vue/base-components/vue-document-choices.js.map +1 -0
  86. package/out/cli/components/vue/base-components/vue-document-link.js +73 -0
  87. package/out/cli/components/vue/base-components/vue-document-link.js.map +1 -0
  88. package/out/cli/components/vue/base-components/vue-extended-choice.js +101 -0
  89. package/out/cli/components/vue/base-components/vue-extended-choice.js.map +1 -0
  90. package/out/cli/components/vue/base-components/vue-inventory.js +532 -0
  91. package/out/cli/components/vue/base-components/vue-inventory.js.map +1 -0
  92. package/out/cli/components/vue/base-components/vue-macro-choice.js +150 -0
  93. package/out/cli/components/vue/base-components/vue-macro-choice.js.map +1 -0
  94. package/out/cli/components/vue/base-components/vue-measured-template.js +543 -0
  95. package/out/cli/components/vue/base-components/vue-measured-template.js.map +1 -0
  96. package/out/cli/components/vue/base-components/vue-money.js +496 -0
  97. package/out/cli/components/vue/base-components/vue-money.js.map +1 -0
  98. package/out/cli/components/vue/base-components/vue-number.js +184 -0
  99. package/out/cli/components/vue/base-components/vue-number.js.map +1 -0
  100. package/out/cli/components/vue/base-components/vue-paperdoll.js +56 -0
  101. package/out/cli/components/vue/base-components/vue-paperdoll.js.map +1 -0
  102. package/out/cli/components/vue/base-components/vue-parent-property-reference.js +89 -0
  103. package/out/cli/components/vue/base-components/vue-parent-property-reference.js.map +1 -0
  104. package/out/cli/components/vue/base-components/vue-prosemirror.js +31 -0
  105. package/out/cli/components/vue/base-components/vue-prosemirror.js.map +1 -0
  106. package/out/cli/components/vue/base-components/vue-resource.js +149 -0
  107. package/out/cli/components/vue/base-components/vue-resource.js.map +1 -0
  108. package/out/cli/components/vue/base-components/vue-roll-visualizer.js +121 -0
  109. package/out/cli/components/vue/base-components/vue-roll-visualizer.js.map +1 -0
  110. package/out/cli/components/vue/base-components/vue-self-property-reference.js +75 -0
  111. package/out/cli/components/vue/base-components/vue-self-property-reference.js.map +1 -0
  112. package/out/cli/components/vue/base-components/vue-string-choice.js +111 -0
  113. package/out/cli/components/vue/base-components/vue-string-choice.js.map +1 -0
  114. package/out/cli/components/vue/base-components/vue-string-choices.js +216 -0
  115. package/out/cli/components/vue/base-components/vue-string-choices.js.map +1 -0
  116. package/out/cli/components/vue/base-components/vue-string.js +73 -0
  117. package/out/cli/components/vue/base-components/vue-string.js.map +1 -0
  118. package/out/cli/components/vue/base-components/vue-text-field.js +66 -0
  119. package/out/cli/components/vue/base-components/vue-text-field.js.map +1 -0
  120. package/out/cli/components/vue/base-components/vue-tracker.js +444 -0
  121. package/out/cli/components/vue/base-components/vue-tracker.js.map +1 -0
  122. package/out/cli/components/vue/vue-action-component-generator.js +88 -0
  123. package/out/cli/components/vue/vue-action-component-generator.js.map +1 -0
  124. package/out/cli/components/vue/vue-active-effect-sheet-generator.js +1016 -0
  125. package/out/cli/components/vue/vue-active-effect-sheet-generator.js.map +1 -0
  126. package/out/cli/components/vue/vue-base-components-generator.js +59 -0
  127. package/out/cli/components/vue/vue-base-components-generator.js.map +1 -0
  128. package/out/cli/components/vue/vue-datatable-component-generator.js +307 -0
  129. package/out/cli/components/vue/vue-datatable-component-generator.js.map +1 -0
  130. package/out/cli/components/vue/vue-datatable-sheet-class-generator.js +342 -0
  131. package/out/cli/components/vue/vue-datatable-sheet-class-generator.js.map +1 -0
  132. package/out/cli/components/vue/vue-datatable2-component-generator.js +939 -0
  133. package/out/cli/components/vue/vue-datatable2-component-generator.js.map +1 -0
  134. package/out/cli/components/vue/vue-document-creation-app.js +140 -0
  135. package/out/cli/components/vue/vue-document-creation-app.js.map +1 -0
  136. package/out/cli/components/vue/vue-document-creation-sheet.js +105 -0
  137. package/out/cli/components/vue/vue-document-creation-sheet.js.map +1 -0
  138. package/out/cli/components/vue/vue-generator.js +240 -0
  139. package/out/cli/components/vue/vue-generator.js.map +1 -0
  140. package/out/cli/components/vue/vue-mixin.js +338 -0
  141. package/out/cli/components/vue/vue-mixin.js.map +1 -0
  142. package/out/cli/components/vue/vue-pinned-datatable-component-generator.js +306 -0
  143. package/out/cli/components/vue/vue-pinned-datatable-component-generator.js.map +1 -0
  144. package/out/cli/components/vue/vue-prompt-generator.js +201 -0
  145. package/out/cli/components/vue/vue-prompt-generator.js.map +1 -0
  146. package/out/cli/components/vue/vue-prompt-sheet-class-generator.js +252 -0
  147. package/out/cli/components/vue/vue-prompt-sheet-class-generator.js.map +1 -0
  148. package/out/cli/components/vue/vue-sheet-application-generator.js +2008 -0
  149. package/out/cli/components/vue/vue-sheet-application-generator.js.map +1 -0
  150. package/out/cli/components/vue/vue-sheet-class-generator.js +484 -0
  151. package/out/cli/components/vue/vue-sheet-class-generator.js.map +1 -0
  152. package/out/cli/generator.js +659 -0
  153. package/out/cli/generator.js.map +1 -0
  154. package/out/cli/main.js +43 -0
  155. package/out/cli/main.js.map +1 -0
  156. package/out/datatables.min.css +54 -0
  157. package/out/datatables.min.js +178 -0
  158. package/out/extension/github/githubAuthProvider.js +345 -0
  159. package/out/extension/github/githubAuthProvider.js.map +1 -0
  160. package/out/extension/github/githubConfig.js +132 -0
  161. package/out/extension/github/githubConfig.js.map +1 -0
  162. package/out/extension/github/githubGistActions.js +251 -0
  163. package/out/extension/github/githubGistActions.js.map +1 -0
  164. package/out/extension/github/githubGistManager.js +255 -0
  165. package/out/extension/github/githubGistManager.js.map +1 -0
  166. package/out/extension/github/githubManager.js +1735 -0
  167. package/out/extension/github/githubManager.js.map +1 -0
  168. package/out/extension/github/githubQuickActions.js +659 -0
  169. package/out/extension/github/githubQuickActions.js.map +1 -0
  170. package/out/extension/github/githubTreeProvider.js +181 -0
  171. package/out/extension/github/githubTreeProvider.js.map +1 -0
  172. package/out/extension/github/system-workflow.yml +48 -0
  173. package/out/extension/main.cjs +70315 -0
  174. package/out/extension/main.cjs.map +7 -0
  175. package/out/extension/main.js +237 -0
  176. package/out/extension/main.js.map +1 -0
  177. package/out/extension/package.json +426 -0
  178. package/out/isdl.png +0 -0
  179. package/out/language/generated/ast.js +2992 -0
  180. package/out/language/generated/ast.js.map +1 -0
  181. package/out/language/generated/grammar.js +13970 -0
  182. package/out/language/generated/grammar.js.map +1 -0
  183. package/out/language/generated/module.js +20 -0
  184. package/out/language/generated/module.js.map +1 -0
  185. package/out/language/intelligent-system-design-language-formatter.js +85 -0
  186. package/out/language/intelligent-system-design-language-formatter.js.map +1 -0
  187. package/out/language/intelligent-system-design-language-module.js +69 -0
  188. package/out/language/intelligent-system-design-language-module.js.map +1 -0
  189. package/out/language/intelligent-system-design-language-quickfixes.js +37 -0
  190. package/out/language/intelligent-system-design-language-quickfixes.js.map +1 -0
  191. package/out/language/intelligent-system-design-language-validator.js +515 -0
  192. package/out/language/intelligent-system-design-language-validator.js.map +1 -0
  193. package/out/language/isdl-hover-provider.js +77 -0
  194. package/out/language/isdl-hover-provider.js.map +1 -0
  195. package/out/language/isdl-scope-provider.js +149 -0
  196. package/out/language/isdl-scope-provider.js.map +1 -0
  197. package/out/language/main.cjs +47655 -0
  198. package/out/language/main.cjs.map +7 -0
  199. package/out/language/main.js +11 -0
  200. package/out/language/main.js.map +1 -0
  201. package/out/missing-character.png +0 -0
  202. package/out/package.json +426 -0
  203. package/out/paperdoll_default.png +0 -0
  204. package/out/progressbar.min.js +7 -0
  205. package/out/styles.scss +722 -0
  206. package/out/test/formatting/formatter.test.js +46 -0
  207. package/out/test/formatting/formatter.test.js.map +1 -0
  208. package/out/vuetify.esm.js +30279 -0
  209. package/package.json +426 -0
@@ -0,0 +1,1357 @@
1
+ @use "./backgrounds";
2
+
3
+ @mixin isdlStyles {
4
+
5
+ &.isdl-prompt,
6
+ .isdl-datatable {
7
+ .v-application__wrap {
8
+ min-height: 100%;
9
+ }
10
+ }
11
+
12
+ &.isdl-datatable {
13
+ color: black;
14
+ background-repeat: repeat;
15
+ @include backgrounds.topography;
16
+
17
+ > .window-content {
18
+ padding: 16px;
19
+ }
20
+
21
+ .custom-datatable {
22
+ table-layout: auto !important;
23
+ background: transparent;
24
+ }
25
+
26
+ .custom-datatable :deep(.v-data-table__table) {
27
+ width: auto !important;
28
+ table-layout: auto !important;
29
+ background: transparent;
30
+ }
31
+
32
+ .custom-datatable :deep(th) {
33
+ white-space: nowrap !important;
34
+ overflow: hidden;
35
+ text-overflow: ellipsis;
36
+ min-width: fit-content;
37
+ padding: 0 8px !important;
38
+ background: transparent;
39
+ }
40
+
41
+ .custom-datatable :deep(th .v-data-table__column-header) {
42
+ white-space: nowrap !important;
43
+ overflow: hidden;
44
+ text-overflow: ellipsis;
45
+ background: transparent;
46
+ }
47
+
48
+ .custom-datatable :deep(td) {
49
+ white-space: nowrap;
50
+ overflow: hidden;
51
+ text-overflow: ellipsis;
52
+ vertical-align: middle;
53
+ background: transparent;
54
+ }
55
+
56
+ .custom-datatable :deep(tr[draggable="true"]) {
57
+ cursor: grab;
58
+
59
+ &:active {
60
+ cursor: grabbing;
61
+ }
62
+
63
+ &.dragging {
64
+ opacity: 0.5;
65
+ }
66
+ }
67
+
68
+ /* Allow text columns to grow naturally but with reasonable limits */
69
+ .custom-datatable :deep(td .text-caption.text-truncate) {
70
+ white-space: nowrap;
71
+ overflow: hidden;
72
+ text-overflow: ellipsis;
73
+ min-width: 80px;
74
+ max-width: 300px;
75
+ }
76
+
77
+ .column-config-list {
78
+ max-height: 400px;
79
+ overflow-y: auto;
80
+ }
81
+
82
+ .column-config-item {
83
+ border: 1px solid transparent;
84
+ border-radius: 4px;
85
+ margin-bottom: 2px;
86
+ transition: all 0.2s ease;
87
+ }
88
+
89
+ .column-config-item:hover {
90
+ background-color: rgba(var(--v-theme-on-surface), 0.05);
91
+ border-color: rgba(var(--v-theme-primary), 0.2);
92
+ }
93
+
94
+ .column-config-item.dragging {
95
+ opacity: 0.5;
96
+ transform: scale(0.98);
97
+ }
98
+
99
+ .drag-handle:hover {
100
+ cursor: grabbing !important;
101
+ }
102
+ }
103
+
104
+ .v-input {
105
+ &:not(.document-name) {
106
+ .v-input__control {
107
+ background-color: #e9e9e9;
108
+ }
109
+ }
110
+ }
111
+
112
+ .v-alert__prepend {
113
+ padding-top: 8px;
114
+ }
115
+
116
+ .v-main > .v-container {
117
+ background-repeat: repeat;
118
+ @include backgrounds.topography;
119
+
120
+ &.edit-mode {
121
+ @include backgrounds.cogs;
122
+ }
123
+
124
+ &.dead {
125
+ @include backgrounds.skulls;
126
+ }
127
+
128
+ &.hideout {
129
+ @include backgrounds.hideout;
130
+ }
131
+
132
+ &.graphpaper {
133
+ @include backgrounds.graphpaper;
134
+ }
135
+
136
+ &.texture {
137
+ @include backgrounds.texture;
138
+ }
139
+
140
+ &.squares {
141
+ @include backgrounds.squares;
142
+ }
143
+
144
+ &.dominoes {
145
+ @include backgrounds.dominoes;
146
+ }
147
+
148
+ &.temple {
149
+ @include backgrounds.temple;
150
+ }
151
+
152
+ &.food {
153
+ @include backgrounds.food;
154
+ }
155
+
156
+ &.anchors {
157
+ @include backgrounds.anchors;
158
+ }
159
+
160
+ &.bubbles {
161
+ @include backgrounds.bubbles;
162
+ }
163
+
164
+ &.diamonds {
165
+ @include backgrounds.diamonds;
166
+ }
167
+
168
+ &.circuitboard {
169
+ @include backgrounds.circuitboard;
170
+ }
171
+
172
+ &.bricks {
173
+ @include backgrounds.bricks;
174
+ }
175
+
176
+ &.signal {
177
+ @include backgrounds.signal;
178
+ }
179
+ }
180
+
181
+ .v-container {
182
+ min-height: 0;
183
+ padding: 0;
184
+
185
+ > .v-window {
186
+ padding: 16px;
187
+ height: 100%;
188
+
189
+ > .v-window__container {
190
+ > .v-window-item {
191
+ height: 100%;
192
+ }
193
+ }
194
+ }
195
+ }
196
+
197
+ .v-slide-group__content {
198
+ > button {
199
+ width: unset;
200
+ }
201
+ }
202
+
203
+ .dt-body-center {
204
+ text-align: center;
205
+ }
206
+
207
+ .dt-buttons {
208
+ display: flex;
209
+ height: 52px;
210
+ align-items: center;
211
+ }
212
+
213
+ .dtr-control {
214
+ padding: 0;
215
+
216
+ > div {
217
+ > div {
218
+ display: flex;
219
+ }
220
+ }
221
+ }
222
+
223
+ .tabs-window {
224
+ height: 100%;
225
+
226
+ > .v-window__container {
227
+ height: 100%;
228
+ }
229
+
230
+ .dt-button-background {
231
+ display: none;
232
+ height: 0px;
233
+ }
234
+ }
235
+
236
+ table.dataTable th.dt-type-numeric {
237
+ text-align: center;
238
+ }
239
+
240
+ table.dataTable td.dt-type-numeric {
241
+ text-align: center;
242
+ }
243
+
244
+ .buttons-columnVisibility {
245
+ color: black
246
+ }
247
+
248
+ .prose-mirror-wrapper {
249
+ background-color: #dddddd;
250
+ border: 1px solid #ccc;
251
+ border-radius: 4px;
252
+ box-shadow: inset 0px 0px 2px 0px black;
253
+ padding: 1rem;
254
+
255
+ .editor-menu {
256
+ color: black;
257
+ background: none;
258
+
259
+ i {
260
+ margin-right: 4px;
261
+ padding-left: 3px;
262
+ }
263
+ }
264
+
265
+ .toggle {
266
+ width: 30px;
267
+
268
+ > i {
269
+ padding-left: 4px;
270
+ }
271
+ }
272
+ }
273
+
274
+ .resource-card,
275
+ .tracker-card {
276
+ min-width: 300px;
277
+ margin-bottom: 1rem;
278
+ flex: 1;
279
+
280
+ .v-progress-linear__background {
281
+ opacity: 0.2;
282
+ }
283
+ }
284
+
285
+ .v-label {
286
+ color: black;
287
+ }
288
+
289
+ .v-field-label--floating {
290
+ font-size: 14px;
291
+ font-weight: bold;
292
+ }
293
+
294
+ .v-text-field {
295
+ .v-field__field {
296
+ input {
297
+ padding-left: 16px;
298
+ }
299
+ }
300
+ }
301
+
302
+ .v-number-input {
303
+ .v-field__input {
304
+ padding-left: 16px;
305
+ padding-top: 2px;
306
+ }
307
+
308
+ &.calculated-number {
309
+ .v-field__field {
310
+ margin-right: -36px;
311
+ }
312
+ }
313
+
314
+ .v-field__field {
315
+ input {
316
+ border: none;
317
+ }
318
+ }
319
+ }
320
+
321
+ .v-text-field {
322
+ .v-field__field {
323
+ input {
324
+ border: none;
325
+ }
326
+ }
327
+ }
328
+
329
+
330
+ .v-field__input {
331
+ height: 100%;
332
+ }
333
+
334
+ .v-field__field {
335
+ > input {
336
+ background: unset;
337
+ }
338
+ }
339
+
340
+ .v-col {
341
+ &.section {
342
+ min-width: 332px;
343
+ }
344
+ }
345
+
346
+ .v-row {
347
+ column-gap: 1rem;
348
+ height: 100%;
349
+
350
+ > .v-col {
351
+ padding-left: 0;
352
+ padding-right: 0;
353
+ }
354
+ }
355
+
356
+ .isdl-datatable,
357
+ .datatable {
358
+ background: none;
359
+
360
+ > .v-card-title {
361
+ background: none;
362
+ }
363
+
364
+ table {
365
+ background: none;
366
+ }
367
+
368
+ thead {
369
+ background: rgba(0, 0, 0, 0.5);
370
+ color: var(--color-text-light-highlight);
371
+ text-shadow: 1px 1px var(--color-shadow-dark);
372
+ border-bottom: 1px solid var(--color-border-dark);
373
+ }
374
+ }
375
+
376
+ .v-input {
377
+ flex: 1;
378
+ min-width: 150px;
379
+ max-width: 600px;
380
+ margin-top: 0.75rem;
381
+
382
+ &.document-name {
383
+ margin: 0;
384
+ }
385
+
386
+ > .v-input__details {
387
+ display: none;
388
+ }
389
+ }
390
+
391
+
392
+ .isdl-html {
393
+ min-width: 300px;
394
+ max-width: 600px;
395
+ flex: 1;
396
+ }
397
+
398
+ // Description tab can be full width
399
+ .v-tabs-window-item {
400
+ .isdl-html {
401
+ max-width: unset;
402
+ }
403
+ }
404
+
405
+ .action-btn,
406
+ .isdl-property,
407
+ .isdl-single-document,
408
+ .single-wide {
409
+ flex: 1;
410
+ min-width: 150px;
411
+ max-width: 600px;
412
+ }
413
+
414
+ .action-btn {
415
+ margin-top: 12px;
416
+ height: 40px;
417
+ flex: 1;
418
+ padding: 0;
419
+ align-self: center;
420
+
421
+ .v-btn__content {
422
+ justify-content: left;
423
+ overflow: hidden;
424
+ text-overflow: ellipsis;
425
+ }
426
+ }
427
+
428
+ .isdl-tracker,
429
+ .double-wide {
430
+ min-width: 300px;
431
+ max-width: 600px;
432
+ flex: 2;
433
+
434
+ .slim-number {
435
+ font-size: 0.75rem;
436
+ }
437
+
438
+ .tracker-inner-content {
439
+ > .v-progress-linear {
440
+ border: 1px solid black;
441
+ }
442
+ }
443
+ }
444
+
445
+ .isdl-single-document {
446
+ margin-top: 0.75rem;
447
+ margin-bottom: 1rem;
448
+ max-width: 300px;
449
+ }
450
+
451
+ .v-card {
452
+ .v-card-text {
453
+ column-gap: 1rem;
454
+ }
455
+ }
456
+
457
+ .calc-button:hover {
458
+ background: rgba(50, 50, 50, 0.7);
459
+ }
460
+
461
+ .v-field,
462
+ .v-field__field {
463
+ z-index: 10;
464
+ }
465
+
466
+ .v-btn-group {
467
+ min-width: 300px;
468
+ }
469
+
470
+ .calculator {
471
+ position: absolute;
472
+ top: 50px;
473
+ left: 50px;
474
+ background: rgba(30, 30, 30, 0.8);
475
+ padding: 10px;
476
+ border-radius: 8px;
477
+ box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5);
478
+ backdrop-filter: blur(5px);
479
+ z-index: 20;
480
+
481
+ input {
482
+ width: 100%;
483
+ padding: 5px;
484
+ font-size: 14px;
485
+ border-radius: 4px;
486
+ border: none;
487
+ margin-bottom: 5px;
488
+ background-color: #dddddd;
489
+ }
490
+
491
+ .calc-buttons {
492
+ display: flex;
493
+ }
494
+
495
+ button {
496
+ background: rgba(255, 255, 255, 0.4);
497
+ border: none;
498
+ padding: 8px;
499
+ font-size: 16px;
500
+ margin: 2px;
501
+ cursor: pointer;
502
+ border-radius: 4px;
503
+
504
+ &.active {
505
+ background: rgba(195, 111, 110, 0.8);
506
+ }
507
+ }
508
+ }
509
+
510
+ .dice-container {
511
+ margin-top: 0.75rem;
512
+ }
513
+
514
+ .isdl-dice-field {
515
+ .inner-input {
516
+ margin: 0;
517
+ }
518
+
519
+ .inner-content {
520
+ padding: 4px;
521
+ width: 100%;
522
+ align-items: center;
523
+ }
524
+
525
+ // Style the inner controls
526
+ .dice-number-input,
527
+ .dice-type-select {
528
+
529
+ // Remove extra padding/margins for nested plain variants
530
+ .v-field {
531
+ background: transparent !important;
532
+ box-shadow: none !important;
533
+ }
534
+
535
+ // Align input content properly
536
+ .v-field__input {
537
+ align-items: center;
538
+ padding: 0;
539
+ }
540
+ }
541
+
542
+ // Fine-tune number input specifically
543
+ .dice-number-input {
544
+ .v-number-input__control {
545
+ .v-btn {
546
+ min-width: 24px;
547
+ width: 24px;
548
+ }
549
+ }
550
+ }
551
+
552
+ .dice-type-select {
553
+ .v-field__append-inner {
554
+ padding: 0;
555
+ align-self: center;
556
+ }
557
+ }
558
+
559
+ // Styling for the container div
560
+ .d-flex {
561
+ min-height: 40px;
562
+ }
563
+ }
564
+
565
+ .attributeExp {
566
+ display: flex;
567
+ flex-direction: column;
568
+ border: 3px solid #333;
569
+ border-radius: 4px;
570
+ min-width: 75px;
571
+
572
+ &.no-mod {
573
+ max-height: 70px;
574
+ }
575
+
576
+ > label {
577
+ justify-content: center;
578
+ width: 100%;
579
+ font-weight: bold;
580
+ }
581
+
582
+ .v-input {
583
+ min-width: 100px;
584
+ max-width: 100%;
585
+ text-align: center;
586
+ margin: 0;
587
+ flex: unset;
588
+ }
589
+
590
+ .v-field__input {
591
+ padding: 0 !important;
592
+ }
593
+
594
+ > .mod {
595
+ font-size: 26px;
596
+ font-weight: bold;
597
+ margin: 10px 0;
598
+ text-align: center;
599
+ }
600
+
601
+
602
+ }
603
+
604
+ .dice-overlay {
605
+ position: absolute;
606
+ top: 0;
607
+ left: 0;
608
+ right: 0;
609
+ bottom: 0;
610
+ background: rgba(0, 0, 0, 0.2);
611
+ backdrop-filter: blur(2px);
612
+ display: flex;
613
+ align-items: center;
614
+ justify-content: center;
615
+ cursor: pointer;
616
+ border-radius: 4px;
617
+ transition: all 0.2s ease-in-out;
618
+ z-index: 10;
619
+
620
+ &.plain {
621
+ height: 100%;
622
+ }
623
+ }
624
+
625
+ .dice-overlay:hover {
626
+ background: rgba(0, 0, 0, 0.4);
627
+ }
628
+
629
+ .dice-roll-btn {
630
+ transition: transform 0.2s ease-in-out;
631
+ }
632
+
633
+ .dice-overlay:hover .dice-roll-btn {
634
+ transform: scale(1.1);
635
+ }
636
+
637
+ .dice-container {
638
+ position: relative;
639
+ }
640
+
641
+ .isdl-paperdoll {
642
+ min-width: 307px;
643
+ width: 307px;
644
+ max-width: 307px;
645
+ margin-top: 0.75rem;
646
+
647
+ .paper-doll-container {
648
+ position: relative;
649
+ height: 275px;
650
+ width: 275px;
651
+ background-size: contain;
652
+ background-repeat: no-repeat;
653
+ }
654
+
655
+ .paper-doll-slot {
656
+ position: absolute;
657
+ width: 40px;
658
+ height: 40px;
659
+ border: 2px dashed rgba(0, 0, 0, 0.5);
660
+ background: rgba(255, 255, 255, 0.1);
661
+ }
662
+ }
663
+
664
+ .isdl-datetime {
665
+ input {
666
+ border: none;
667
+ height: 40px;
668
+ padding-left: 16px;
669
+ padding-right: 0px;
670
+ }
671
+ }
672
+
673
+ .isdl-tracker {
674
+ height: 100%;
675
+
676
+ .tracker-content {
677
+ width: 100%;
678
+ height: 100%;
679
+ padding: 4px;
680
+ min-height: 40px;
681
+ justify-content: center;
682
+
683
+ .tracker-inner-content {
684
+ > * {
685
+ align-self: center;
686
+ width: 100%;
687
+ }
688
+ }
689
+ }
690
+
691
+ &.dial,
692
+ &.clock {
693
+ .tracker-content {
694
+ min-height: 116px;
695
+ }
696
+ }
697
+ }
698
+
699
+ .isdl-damage-bonuses, .isdl-damage-resistances {
700
+ flex: 1;
701
+
702
+ .v-card-text {
703
+ padding: 0;
704
+ }
705
+ }
706
+
707
+ .isdl-boolean {
708
+ .field-label {
709
+ display: flex;
710
+ align-items: center;
711
+ font-weight: 500;
712
+ }
713
+ }
714
+
715
+ .isdl-die {
716
+
717
+ .field-label {
718
+ display: flex;
719
+ align-items: center;
720
+ font-weight: 500;
721
+ }
722
+ }
723
+
724
+ .isdl-string-method {
725
+ .field-label {
726
+ display: flex;
727
+ align-items: center;
728
+ font-weight: 500;
729
+ }
730
+ }
731
+
732
+ .isdl-number {
733
+ .field-label {
734
+ display: flex;
735
+ align-items: center;
736
+ font-weight: 500;
737
+ }
738
+ }
739
+
740
+ .isdl-string-choice {
741
+ .field-label {
742
+ display: flex;
743
+ align-items: center;
744
+ font-weight: 500;
745
+ }
746
+ }
747
+
748
+ .isdl-parent-property-reference {
749
+
750
+ .field-label {
751
+ display: flex;
752
+ align-items: center;
753
+ font-weight: 500;
754
+ }
755
+ }
756
+
757
+ .isdl-damage-track {
758
+ padding: 4px 0;
759
+
760
+ .damage-track-label {
761
+ font-size: 0.75rem;
762
+ font-weight: 500;
763
+ opacity: 0.7;
764
+ margin-bottom: 4px;
765
+ }
766
+
767
+ .damage-track-boxes {
768
+ display: flex;
769
+ flex-wrap: wrap;
770
+ gap: 3px;
771
+ margin-bottom: 4px;
772
+ }
773
+
774
+ .damage-box {
775
+ width: 24px;
776
+ height: 24px;
777
+ border: 2px solid;
778
+ border-radius: 3px;
779
+ display: flex;
780
+ align-items: center;
781
+ justify-content: center;
782
+ cursor: pointer;
783
+ user-select: none;
784
+ font-size: 0.8rem;
785
+ font-weight: bold;
786
+ line-height: 1;
787
+ transition: background-color 0.15s, border-color 0.15s;
788
+
789
+ &:hover {
790
+ opacity: 0.8;
791
+ }
792
+
793
+ .damage-symbol {
794
+ pointer-events: none;
795
+ }
796
+ }
797
+
798
+ .damage-track-legend {
799
+ display: flex;
800
+ flex-wrap: wrap;
801
+ gap: 8px;
802
+ font-size: 0.7rem;
803
+ opacity: 0.8;
804
+ }
805
+
806
+ .damage-legend-item {
807
+ display: flex;
808
+ align-items: center;
809
+ gap: 3px;
810
+ }
811
+ }
812
+
813
+ .isdl-money-denominations {
814
+
815
+ > .v-input__control {
816
+ > .v-field {
817
+ > .v-field__append-inner {
818
+ position: fixed;
819
+ top: 8px;
820
+ right: 0;
821
+ z-index: 100;
822
+ }
823
+ }
824
+ }
825
+
826
+ .money-content {
827
+ width: 100%;
828
+ height: 100%;
829
+ padding: 4px;
830
+ min-height: 40px;
831
+ justify-content: center;
832
+
833
+ .money-inner-content {
834
+ > * {
835
+ align-self: center;
836
+ width: 100%;
837
+ }
838
+ }
839
+ }
840
+ }
841
+
842
+ .isdl-measured-template {
843
+
844
+ > .v-input__control {
845
+ > .v-field {
846
+ > .v-field__append-inner {
847
+ position: fixed;
848
+ top: 8px;
849
+ right: 0;
850
+ z-index: 100;
851
+ }
852
+ }
853
+ }
854
+
855
+ .map-icon {
856
+ cursor: pointer;
857
+ transition: transform 0.3s ease;
858
+ transform-origin: center;
859
+ }
860
+
861
+ .map-icon:hover {
862
+ animation: mapUnfold 0.8s ease-in-out;
863
+ }
864
+
865
+ @keyframes mapUnfold {
866
+ 0% {
867
+ transform: scale(1) rotateY(0deg);
868
+ }
869
+
870
+ 25% {
871
+ transform: scale(0.95) rotateY(-8deg) rotateX(5deg);
872
+ }
873
+
874
+ 50% {
875
+ transform: scale(1.05) rotateY(3deg) rotateX(-2deg);
876
+ }
877
+
878
+ 75% {
879
+ transform: scale(1.02) rotateY(-1deg) rotateX(1deg);
880
+ }
881
+
882
+ 100% {
883
+ transform: scale(1) rotateY(0deg) rotateX(0deg);
884
+ }
885
+ }
886
+
887
+ /* Gentle flutter when clicked */
888
+ .map-icon:active {
889
+ animation: mapFlutter 0.5s ease-in-out;
890
+ }
891
+
892
+ @keyframes mapFlutter {
893
+
894
+ 0%,
895
+ 100% {
896
+ transform: scale(1) rotate(0deg);
897
+ }
898
+
899
+ 25% {
900
+ transform: scale(1.02) rotate(-2deg) translateY(-1px);
901
+ }
902
+
903
+ 75% {
904
+ transform: scale(1.02) rotate(2deg) translateY(-1px);
905
+ }
906
+ }
907
+
908
+ .template-canvas {
909
+ border: 1px solid #ccc;
910
+ border-radius: 4px;
911
+ background: #f8f9fa;
912
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
913
+ }
914
+ }
915
+
916
+ .v-autocomplete {
917
+ .v-field__input {
918
+ input {
919
+ border: none;
920
+ background: none
921
+ }
922
+ }
923
+ }
924
+ }
925
+
926
+ /* Keyword References */
927
+ .keyword-reference {
928
+ border: 2px outset whitesmoke;
929
+ border-radius: 2px;
930
+ cursor: pointer;
931
+ padding: 0 2px;
932
+ display: inline-block;
933
+
934
+ i {
935
+ margin-right: 4px;
936
+ }
937
+ }
938
+
939
+ /* Journal System Documentation Styles */
940
+ .isdl-journal-section {
941
+ margin-bottom: 20px;
942
+
943
+ .isdl-journal-description {
944
+ margin-bottom: 12px;
945
+ }
946
+
947
+ .isdl-journal-info-box {
948
+ background: #f5f5f5;
949
+ padding: 8px;
950
+ border-radius: 4px;
951
+ font-size: 0.9em;
952
+
953
+ .isdl-journal-info-title {
954
+ font-weight: bold;
955
+ margin-bottom: 4px;
956
+ }
957
+
958
+ .isdl-journal-info-list {
959
+ margin: 4px 0 0 16px;
960
+ padding: 0;
961
+
962
+ li {
963
+ margin-bottom: 2px;
964
+ }
965
+ }
966
+ }
967
+ }
968
+
969
+ .isdl-journal-entry {
970
+ border-left: 4px solid #666666;
971
+ padding: 12px;
972
+ margin-bottom: 16px;
973
+ background: rgba(255, 255, 255, 0.05);
974
+ border-radius: 0 4px 4px 0;
975
+
976
+ .isdl-journal-header {
977
+ display: flex;
978
+ align-items: center;
979
+ margin-bottom: 8px;
980
+
981
+ .isdl-journal-icon {
982
+ margin-right: 8px;
983
+ font-size: 1.2em;
984
+ }
985
+
986
+ .isdl-journal-title {
987
+ margin: 0 !important;
988
+ flex-grow: 0;
989
+ }
990
+
991
+ .isdl-journal-badge {
992
+ margin-left: auto;
993
+ font-size: 0.8em;
994
+ padding: 2px 6px;
995
+ border-radius: 3px;
996
+ background: rgba(0, 0, 0, 0.1);
997
+ }
998
+ }
999
+
1000
+ .isdl-journal-description {
1001
+ margin-bottom: 12px;
1002
+
1003
+ p {
1004
+ margin: 0;
1005
+ }
1006
+ }
1007
+
1008
+ .isdl-journal-condition {
1009
+ margin-bottom: 12px;
1010
+ padding: 8px;
1011
+ background: #f0f9ff;
1012
+ border-left: 3px solid #0ea5e9;
1013
+ border-radius: 4px;
1014
+
1015
+ p {
1016
+ margin: 0;
1017
+ }
1018
+
1019
+ .isdl-journal-condition-label {
1020
+ font-weight: bold;
1021
+ }
1022
+ }
1023
+
1024
+ .isdl-journal-technical-info {
1025
+ margin-top: 12px;
1026
+ padding: 8px;
1027
+ background: #f8f9fa;
1028
+ border-radius: 4px;
1029
+ font-size: 0.85em;
1030
+ color: #6b7280;
1031
+
1032
+ .isdl-journal-death-note {
1033
+ color: #dc2626;
1034
+ font-weight: bold;
1035
+ }
1036
+ }
1037
+ }
1038
+
1039
+ // Specific styling for different entry types
1040
+ .isdl-keyword-entry {
1041
+ @extend .isdl-journal-entry;
1042
+ }
1043
+
1044
+ .isdl-damage-type-entry {
1045
+ @extend .isdl-journal-entry;
1046
+
1047
+ .isdl-journal-title {
1048
+ color: inherit; // Will use the border color
1049
+ }
1050
+ }
1051
+
1052
+ .isdl-status-effect-entry {
1053
+ @extend .isdl-journal-entry;
1054
+
1055
+ .isdl-status-effect-image {
1056
+ width: 32px;
1057
+ height: 32px;
1058
+ margin-right: 8px;
1059
+ border-radius: 4px;
1060
+ object-fit: cover;
1061
+ }
1062
+
1063
+ .isdl-journal-title {
1064
+ color: inherit; // Will use the border color
1065
+ }
1066
+ }
1067
+
1068
+ // Inventory Component Styles
1069
+ .isdl-inventory {
1070
+ width: 100%;
1071
+ max-width: 100%;
1072
+ display: flex;
1073
+ flex-direction: column;
1074
+ gap: 8px;
1075
+
1076
+ .inventory-header {
1077
+ display: flex;
1078
+ align-items: center;
1079
+ justify-content: space-between;
1080
+ padding: 8px 12px;
1081
+ background: rgba(0, 0, 0, 0.05);
1082
+ border-radius: 4px;
1083
+
1084
+ .header-content {
1085
+ display: flex;
1086
+ align-items: center;
1087
+ gap: 8px;
1088
+ }
1089
+
1090
+ .inventory-label {
1091
+ font-weight: 600;
1092
+ font-size: 14px;
1093
+ }
1094
+
1095
+ .inventory-count {
1096
+ font-size: 12px;
1097
+ color: rgba(0, 0, 0, 0.6);
1098
+ font-weight: 500;
1099
+ }
1100
+ }
1101
+
1102
+ .inventory-grid-container {
1103
+ display: flex;
1104
+ justify-content: center;
1105
+ width: 100%;
1106
+ background: rgba(0, 0, 0, 0.02);
1107
+ border-radius: 4px;
1108
+ padding: 12px;
1109
+ overflow-x: auto;
1110
+
1111
+ .inventory-grid {
1112
+ display: grid;
1113
+ gap: 8px;
1114
+ width: 100%;
1115
+ margin: 0 auto;
1116
+ }
1117
+ }
1118
+
1119
+ .inventory-slot {
1120
+ position: relative;
1121
+ border: 2px solid rgba(0, 0, 0, 0.2);
1122
+ border-radius: 4px;
1123
+ overflow: hidden;
1124
+ cursor: pointer;
1125
+ background: rgba(255, 255, 255, 0.5);
1126
+ display: flex;
1127
+ align-items: center;
1128
+ justify-content: center;
1129
+ transition: all 0.2s ease;
1130
+ box-sizing: border-box;
1131
+
1132
+ &.empty {
1133
+ background: rgba(0, 0, 0, 0.05);
1134
+ border-style: dashed;
1135
+ cursor: default;
1136
+ }
1137
+
1138
+ &.create-slot {
1139
+ background: rgba(76, 175, 80, 0.1);
1140
+ border-color: rgba(76, 175, 80, 0.4);
1141
+ border-style: dashed;
1142
+ cursor: pointer;
1143
+
1144
+ .create-icon {
1145
+ color: rgba(76, 175, 80, 0.7);
1146
+ transition: all 0.2s ease;
1147
+ }
1148
+
1149
+ &:hover {
1150
+ background: rgba(76, 175, 80, 0.2);
1151
+ border-color: rgba(76, 175, 80, 0.6);
1152
+ transform: scale(1.05);
1153
+
1154
+ .create-icon {
1155
+ color: rgba(76, 175, 80, 1);
1156
+ }
1157
+ }
1158
+ }
1159
+
1160
+ &.filled {
1161
+ cursor: grab;
1162
+
1163
+ &:active {
1164
+ cursor: grabbing;
1165
+ }
1166
+
1167
+ &:hover {
1168
+ border-color: rgba(0, 0, 0, 0.5);
1169
+ transform: scale(1.05);
1170
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
1171
+ z-index: 10;
1172
+ }
1173
+ }
1174
+
1175
+ &.dragging {
1176
+ opacity: 0.5;
1177
+ transform: scale(0.95);
1178
+ }
1179
+
1180
+ .slot-image {
1181
+ width: 100%;
1182
+ height: 100%;
1183
+ object-fit: cover;
1184
+ display: block;
1185
+ }
1186
+
1187
+ .delete-button {
1188
+ position: absolute;
1189
+ top: 2px;
1190
+ right: 2px;
1191
+ background: rgba(244, 67, 54, 0.9);
1192
+ color: white;
1193
+ width: 18px;
1194
+ height: 18px;
1195
+ border-radius: 50%;
1196
+ display: flex;
1197
+ align-items: center;
1198
+ justify-content: center;
1199
+ cursor: pointer;
1200
+ opacity: 0;
1201
+ transition: all 0.2s ease;
1202
+ z-index: 5;
1203
+
1204
+ &:hover {
1205
+ background: rgba(211, 47, 47, 1);
1206
+ transform: scale(1.1);
1207
+ }
1208
+ }
1209
+
1210
+ &.filled:hover .delete-button {
1211
+ opacity: 1;
1212
+ }
1213
+
1214
+ .quantity-badge {
1215
+ position: absolute;
1216
+ bottom: 2px;
1217
+ right: 2px;
1218
+ background: rgba(0, 0, 0, 0.8);
1219
+ color: white;
1220
+ font-size: 10px;
1221
+ font-weight: 700;
1222
+ padding: 2px 4px;
1223
+ border-radius: 3px;
1224
+ line-height: 1;
1225
+ min-width: 16px;
1226
+ text-align: center;
1227
+ }
1228
+ }
1229
+
1230
+ .inventory-footer {
1231
+ padding: 12px;
1232
+ background: rgba(0, 0, 0, 0.02);
1233
+ border-radius: 4px;
1234
+ display: flex;
1235
+ flex-direction: column;
1236
+ gap: 8px;
1237
+
1238
+ .footer-divider {
1239
+ margin-bottom: 4px;
1240
+ }
1241
+
1242
+ .inventory-stat {
1243
+ display: flex;
1244
+ align-items: flex-start;
1245
+ justify-content: space-between;
1246
+ gap: 16px;
1247
+
1248
+ .stat-header {
1249
+ display: flex;
1250
+ align-items: center;
1251
+ gap: 8px;
1252
+ flex-shrink: 0;
1253
+
1254
+ .stat-label {
1255
+ font-weight: 600;
1256
+ font-size: 13px;
1257
+ white-space: nowrap;
1258
+ }
1259
+ }
1260
+
1261
+ .stat-value-container {
1262
+ flex: 1;
1263
+ min-width: 0;
1264
+ display: flex;
1265
+ flex-direction: column;
1266
+ align-items: flex-end;
1267
+ gap: 4px;
1268
+
1269
+ .capacity-progress {
1270
+ width: 100%;
1271
+ max-width: 200px;
1272
+ }
1273
+ }
1274
+
1275
+ .stat-value {
1276
+ font-weight: 700;
1277
+ font-size: 14px;
1278
+ white-space: nowrap;
1279
+ text-align: right;
1280
+
1281
+ .stat-max {
1282
+ font-weight: 400;
1283
+ color: rgba(0, 0, 0, 0.6);
1284
+ }
1285
+ }
1286
+ }
1287
+
1288
+ .money-display {
1289
+ .stat-value {
1290
+ color: #d4af37; // Gold color
1291
+ }
1292
+ }
1293
+ }
1294
+
1295
+ // Inventory tooltip styles
1296
+ .inventory-tooltip {
1297
+ max-width: 400px;
1298
+ padding: 4px;
1299
+
1300
+ .tooltip-title {
1301
+ font-weight: 600;
1302
+ font-size: 14px;
1303
+ margin-bottom: 6px;
1304
+ border-bottom: 1px solid rgba(255, 255, 255, 0.2);
1305
+ padding-bottom: 4px;
1306
+ }
1307
+
1308
+ .tooltip-description {
1309
+ font-size: 12px;
1310
+ line-height: 1.4;
1311
+ opacity: 0.9;
1312
+ margin-bottom: 6px;
1313
+
1314
+ // Style rich text content
1315
+ p {
1316
+ margin: 0;
1317
+ margin-bottom: 4px;
1318
+
1319
+ &:last-child {
1320
+ margin-bottom: 0;
1321
+ }
1322
+ }
1323
+
1324
+ strong {
1325
+ font-weight: 600;
1326
+ }
1327
+
1328
+ em {
1329
+ font-style: italic;
1330
+ }
1331
+ }
1332
+
1333
+ .tooltip-properties {
1334
+ margin-top: 6px;
1335
+ padding-top: 6px;
1336
+ border-top: 1px solid rgba(255, 255, 255, 0.1);
1337
+ font-size: 11px;
1338
+
1339
+ .tooltip-property {
1340
+ display: flex;
1341
+ justify-content: space-between;
1342
+ align-items: center;
1343
+ padding: 2px 0;
1344
+
1345
+ .property-label {
1346
+ opacity: 0.8;
1347
+ margin-right: 8px;
1348
+ }
1349
+
1350
+ .property-value {
1351
+ font-weight: 600;
1352
+ opacity: 1;
1353
+ }
1354
+ }
1355
+ }
1356
+ }
1357
+ }