refine-rails 2.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +413 -0
  3. data/Rakefile +8 -0
  4. data/app/assets/config/refine_rails_manifest.js +0 -0
  5. data/app/assets/javascripts/refine-stimulus.esm.js +2 -0
  6. data/app/assets/javascripts/refine-stimulus.esm.js.map +1 -0
  7. data/app/assets/javascripts/refine-stimulus.js +2 -0
  8. data/app/assets/javascripts/refine-stimulus.js.map +1 -0
  9. data/app/assets/javascripts/refine-stimulus.modern.js +2 -0
  10. data/app/assets/javascripts/refine-stimulus.modern.js.map +1 -0
  11. data/app/assets/javascripts/refine-stimulus.umd.js +2 -0
  12. data/app/assets/javascripts/refine-stimulus.umd.js.map +1 -0
  13. data/app/assets/stylesheets/index.css +1873 -0
  14. data/app/assets/stylesheets/index.tailwind.css +1035 -0
  15. data/app/controllers/refine/blueprints_controller.rb +80 -0
  16. data/app/controllers/refine/filter_application_controller.rb +29 -0
  17. data/app/controllers/refine/inline/criteria_controller.rb +161 -0
  18. data/app/controllers/refine/inline/stored_filters_controller.rb +84 -0
  19. data/app/controllers/refine/stored_filters_controller.rb +69 -0
  20. data/app/javascript/controllers/index.js +66 -0
  21. data/app/javascript/controllers/refine/add-controller.js +42 -0
  22. data/app/javascript/controllers/refine/criterion-form-controller.js +31 -0
  23. data/app/javascript/controllers/refine/date-controller.js +113 -0
  24. data/app/javascript/controllers/refine/defaults-controller.js +32 -0
  25. data/app/javascript/controllers/refine/delete-controller.js +13 -0
  26. data/app/javascript/controllers/refine/filter-pills-controller.js +63 -0
  27. data/app/javascript/controllers/refine/form-controller.js +51 -0
  28. data/app/javascript/controllers/refine/inline-conditions-controller.js +33 -0
  29. data/app/javascript/controllers/refine/popup-controller.js +46 -0
  30. data/app/javascript/controllers/refine/search-filter-controller.js +50 -0
  31. data/app/javascript/controllers/refine/server-refresh-controller.js +43 -0
  32. data/app/javascript/controllers/refine/state-controller.js +220 -0
  33. data/app/javascript/controllers/refine/stored-filter-controller.js +23 -0
  34. data/app/javascript/controllers/refine/submit-form-controller.js +8 -0
  35. data/app/javascript/controllers/refine/toggle-controller.js +12 -0
  36. data/app/javascript/controllers/refine/turbo-stream-form-controller.js +24 -0
  37. data/app/javascript/controllers/refine/turbo-stream-link-controller.js +24 -0
  38. data/app/javascript/controllers/refine/update-controller.js +86 -0
  39. data/app/javascript/index.js +1 -0
  40. data/app/javascript/refine/helpers/index.js +77 -0
  41. data/app/models/refine/blueprints/blueprint.rb +58 -0
  42. data/app/models/refine/blueprints/blueprint_example.json +25 -0
  43. data/app/models/refine/conditions/boolean_condition.rb +112 -0
  44. data/app/models/refine/conditions/clause.rb +38 -0
  45. data/app/models/refine/conditions/clauses.rb +38 -0
  46. data/app/models/refine/conditions/condition.rb +285 -0
  47. data/app/models/refine/conditions/condition_error.rb +1 -0
  48. data/app/models/refine/conditions/date_condition.rb +464 -0
  49. data/app/models/refine/conditions/date_with_time_condition.rb +8 -0
  50. data/app/models/refine/conditions/errors/condition_clause_error.rb +7 -0
  51. data/app/models/refine/conditions/errors/criteria_limit_exceeded_error.rb +2 -0
  52. data/app/models/refine/conditions/errors/option_error.rb +2 -0
  53. data/app/models/refine/conditions/errors/relationship_error.rb +1 -0
  54. data/app/models/refine/conditions/filter_condition.rb +93 -0
  55. data/app/models/refine/conditions/has_clauses.rb +117 -0
  56. data/app/models/refine/conditions/has_meta.rb +10 -0
  57. data/app/models/refine/conditions/has_refinements.rb +156 -0
  58. data/app/models/refine/conditions/numeric_condition.rb +224 -0
  59. data/app/models/refine/conditions/option_condition.rb +260 -0
  60. data/app/models/refine/conditions/text_condition.rb +152 -0
  61. data/app/models/refine/conditions/uses_attributes.rb +168 -0
  62. data/app/models/refine/filter.rb +302 -0
  63. data/app/models/refine/filters/blueprint_editor.rb +102 -0
  64. data/app/models/refine/filters/builder.rb +59 -0
  65. data/app/models/refine/filters/criterion.rb +87 -0
  66. data/app/models/refine/filters/query.rb +82 -0
  67. data/app/models/refine/inline/criteria/input.rb +50 -0
  68. data/app/models/refine/inline/criteria/numeric_refinement.rb +13 -0
  69. data/app/models/refine/inline/criteria/option.rb +2 -0
  70. data/app/models/refine/inline/criterion.rb +141 -0
  71. data/app/models/refine/invalid_filter_error.rb +8 -0
  72. data/app/models/refine/stabilize.rb +29 -0
  73. data/app/models/refine/stabilizers/database_stabilizer.rb +21 -0
  74. data/app/models/refine/stabilizers/errors/url_stabilizer_error.rb +2 -0
  75. data/app/models/refine/stabilizers/url_encoded_stabilizer.rb +21 -0
  76. data/app/models/refine/stored_filter.rb +14 -0
  77. data/app/models/refine/tracks_pending_relationship_subqueries.rb +196 -0
  78. data/app/views/_filter_builder_dropdown.html.erb +63 -0
  79. data/app/views/_filter_pills.html.erb +40 -0
  80. data/app/views/_loading.html.erb +32 -0
  81. data/app/views/refine/blueprints/_add_and.html.erb +25 -0
  82. data/app/views/refine/blueprints/_add_group.html.erb +24 -0
  83. data/app/views/refine/blueprints/_clause_select.html.erb +24 -0
  84. data/app/views/refine/blueprints/_condition_select.html.erb +53 -0
  85. data/app/views/refine/blueprints/_criterion.html.erb +41 -0
  86. data/app/views/refine/blueprints/_criterion_errors.html.erb +7 -0
  87. data/app/views/refine/blueprints/_delete_criterion.html.erb +11 -0
  88. data/app/views/refine/blueprints/_group.html.erb +13 -0
  89. data/app/views/refine/blueprints/_query.html.erb +34 -0
  90. data/app/views/refine/blueprints/_stored_filters.html.erb +23 -0
  91. data/app/views/refine/blueprints/clauses/_date_condition.html.erb +80 -0
  92. data/app/views/refine/blueprints/clauses/_date_picker.html.erb +26 -0
  93. data/app/views/refine/blueprints/clauses/_filter_condition.html.erb +36 -0
  94. data/app/views/refine/blueprints/clauses/_numeric_condition.html.erb +35 -0
  95. data/app/views/refine/blueprints/clauses/_option_condition.html.erb +37 -0
  96. data/app/views/refine/blueprints/clauses/_text_condition.html.erb +13 -0
  97. data/app/views/refine/blueprints/create.turbo_stream.erb +22 -0
  98. data/app/views/refine/blueprints/new.html.erb +7 -0
  99. data/app/views/refine/blueprints/show.html.erb +4 -0
  100. data/app/views/refine/blueprints/show.turbo_stream.erb +22 -0
  101. data/app/views/refine/inline/criteria/_form_fields.html.erb +62 -0
  102. data/app/views/refine/inline/criteria/create.turbo_stream.erb +19 -0
  103. data/app/views/refine/inline/criteria/edit.turbo_stream.erb +26 -0
  104. data/app/views/refine/inline/criteria/index.html.erb +64 -0
  105. data/app/views/refine/inline/criteria/new.turbo_stream.erb +24 -0
  106. data/app/views/refine/inline/filters/_add_first_condition_button.html.erb +19 -0
  107. data/app/views/refine/inline/filters/_and_button.html.erb +26 -0
  108. data/app/views/refine/inline/filters/_criterion.html.erb +23 -0
  109. data/app/views/refine/inline/filters/_group.html.erb +13 -0
  110. data/app/views/refine/inline/filters/_load_button.html.erb +15 -0
  111. data/app/views/refine/inline/filters/_or_button.html.erb +26 -0
  112. data/app/views/refine/inline/filters/_popup.html.erb +26 -0
  113. data/app/views/refine/inline/filters/_save_button.html.erb +15 -0
  114. data/app/views/refine/inline/filters/_show.html.erb +40 -0
  115. data/app/views/refine/inline/inputs/_date_condition.html.erb +7 -0
  116. data/app/views/refine/inline/inputs/_date_condition_days.html.erb +18 -0
  117. data/app/views/refine/inline/inputs/_date_condition_range.html.erb +22 -0
  118. data/app/views/refine/inline/inputs/_date_condition_single.html.erb +9 -0
  119. data/app/views/refine/inline/inputs/_date_picker.html.erb +20 -0
  120. data/app/views/refine/inline/inputs/_numeric_condition.html.erb +23 -0
  121. data/app/views/refine/inline/inputs/_option_condition.html.erb +14 -0
  122. data/app/views/refine/inline/inputs/_text_condition.html.erb +8 -0
  123. data/app/views/refine/inline/stored_filters/find.turbo_stream.erb +19 -0
  124. data/app/views/refine/inline/stored_filters/index.html.erb +28 -0
  125. data/app/views/refine/inline/stored_filters/new.turbo_stream.erb +47 -0
  126. data/app/views/refine/stored_filters/create.turbo_stream.erb +2 -0
  127. data/app/views/refine/stored_filters/find.turbo_stream.erb +5 -0
  128. data/app/views/refine/stored_filters/index.html.erb +39 -0
  129. data/app/views/refine/stored_filters/new.html.erb +29 -0
  130. data/app/views/refine/stored_filters/show.html.erb +1 -0
  131. data/config/locales/en/dates.en.yml +29 -0
  132. data/config/locales/en/en.yml +20 -0
  133. data/config/locales/en/refine.en.yml +187 -0
  134. data/config/routes.rb +17 -0
  135. data/lib/generators/filter/filter_generator.rb +27 -0
  136. data/lib/generators/filter/templates/filter.rb.erb +20 -0
  137. data/lib/refine/rails/engine.rb +15 -0
  138. data/lib/refine/rails/version.rb +5 -0
  139. data/lib/refine/rails.rb +38 -0
  140. data/lib/tasks/refine/rails_tasks.rake +13 -0
  141. metadata +202 -0
@@ -0,0 +1,1873 @@
1
+ .refine-button {
2
+ --tw-bg-opacity: 1;
3
+ background-color: rgb(59 130 246 / var(--tw-bg-opacity));
4
+ --tw-text-opacity: 1;
5
+ color: rgb(255 255 255 / var(--tw-text-opacity));
6
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
7
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
8
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
9
+ }
10
+
11
+ .refine-button:hover {
12
+ --tw-bg-opacity: 1;
13
+ background-color: rgb(37 99 235 / var(--tw-bg-opacity));
14
+ --tw-text-opacity: 1;
15
+ color: rgb(255 255 255 / var(--tw-text-opacity));
16
+ -webkit-text-decoration-line: none;
17
+ text-decoration-line: none
18
+ }
19
+
20
+ .refine-button:focus {
21
+ outline: 2px solid transparent;
22
+ outline-offset: 2px;
23
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
24
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
25
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
26
+ --tw-ring-opacity: 1;
27
+ --tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity));
28
+ --tw-ring-offset-width: 2px
29
+ }
30
+
31
+ .refine-button {
32
+ &.button-red {
33
+ --tw-bg-opacity: 1;
34
+ background-color: rgb(239 68 68 / var(--tw-bg-opacity))
35
+ }
36
+ &.button-red:hover {
37
+ --tw-bg-opacity: 1;
38
+ background-color: rgb(220 38 38 / var(--tw-bg-opacity))
39
+ }
40
+ &.button-red:focus {
41
+ --tw-ring-opacity: 1;
42
+ --tw-ring-color: rgb(220 38 38 / var(--tw-ring-opacity))
43
+ }
44
+ }
45
+
46
+ .refine-button-secondary {
47
+ --tw-text-opacity: 1;
48
+ color: rgb(37 99 235 / var(--tw-text-opacity))
49
+ }
50
+
51
+ .refine-button-secondary:hover {
52
+ --tw-text-opacity: 1;
53
+ color: rgb(37 99 235 / var(--tw-text-opacity));
54
+ -webkit-text-decoration-line: underline;
55
+ text-decoration-line: underline
56
+ }
57
+
58
+ .refine-button-secondary {
59
+ &.button-increase-contrast {
60
+ --tw-text-opacity: 1;
61
+ color: rgb(29 78 216 / var(--tw-text-opacity))
62
+ }
63
+ &.button-increase-contrast:hover {
64
+ --tw-text-opacity: 1;
65
+ color: rgb(30 58 138 / var(--tw-text-opacity))
66
+ }
67
+ &.button-red {
68
+ --tw-text-opacity: 1;
69
+ color: rgb(239 68 68 / var(--tw-text-opacity))
70
+ }
71
+ &.button-red:hover {
72
+ --tw-text-opacity: 1;
73
+ color: rgb(220 38 38 / var(--tw-text-opacity))
74
+ }
75
+ &.button-red {
76
+ &.button-increase-contrast {
77
+ --tw-text-opacity: 1;
78
+ color: rgb(185 28 28 / var(--tw-text-opacity))
79
+ }
80
+ &.button-increase-contrast:hover {
81
+ --tw-text-opacity: 1;
82
+ color: rgb(127 29 29 / var(--tw-text-opacity))
83
+ }
84
+ }
85
+ }
86
+
87
+ .refine-button, .refine-button-secondary {
88
+ border-radius: 0.375rem;
89
+ border-width: 1px;
90
+ border-color: transparent;
91
+ padding-top: 0.5rem;
92
+ padding-bottom: 0.5rem;
93
+ padding-left: 1rem;
94
+ padding-right: 1rem;
95
+ display: inline-flex;
96
+ align-items: center;
97
+ white-space: nowrap;
98
+ &.button-smaller {
99
+ padding-top: 0.25rem;
100
+ padding-bottom: 0.25rem
101
+ }
102
+ &.button-smaller {
103
+ padding-left: 0.75rem;
104
+ padding-right: 0.75rem
105
+ }
106
+ &.button-smaller {
107
+ font-size: 0.75rem;
108
+ line-height: 1rem
109
+ }
110
+ }
111
+
112
+ /* _head.html.erb */
113
+
114
+ .refine-stored-filter-head-container {
115
+ display: flex;
116
+ width: 100%;
117
+ padding-top: 1rem;
118
+ padding-bottom: 1rem
119
+ }
120
+
121
+ .refine-stored-filter-header {
122
+ font-size: 1rem;
123
+ line-height: 1.5rem;
124
+ font-weight: 600;
125
+ --tw-text-opacity: 1;
126
+ color: rgb(31 41 55 / var(--tw-text-opacity))
127
+ }
128
+
129
+ .refine-stored-filter-link {
130
+ margin-left: auto;
131
+ background-color: transparent;
132
+ font-size: 0.75rem;
133
+ font-weight: 700;
134
+ line-height: 1.5rem;
135
+ --tw-text-opacity: 1;
136
+ color: rgb(37 99 235 / var(--tw-text-opacity));
137
+ -webkit-text-decoration-line: underline;
138
+ text-decoration-line: underline;
139
+ outline: 2px solid transparent;
140
+ outline-offset: 2px
141
+ }
142
+
143
+ .refine-stored-filter-link:focus {
144
+ outline: 2px solid transparent;
145
+ outline-offset: 2px
146
+ }
147
+
148
+ /* edit.html.erb / new.html.erb */
149
+
150
+ .refine-stored-filter-container {
151
+ padding-top: 1rem;
152
+ padding-bottom: 1rem
153
+ }
154
+
155
+ .refine-stored-filter-form {
156
+ display: flex;
157
+ width: 100%
158
+ }
159
+
160
+ .refine-stored-filter-error {
161
+ margin-bottom: 0.5rem;
162
+ font-size: 0.75rem;
163
+ line-height: 1rem;
164
+ --tw-text-opacity: 1;
165
+ color: rgb(220 38 38 / var(--tw-text-opacity))
166
+ }
167
+
168
+ .refine-stored-filter-input {
169
+ margin-right: 1rem;
170
+ display: block;
171
+ width: 100%;
172
+ border-radius: 0.25rem;
173
+ border-width: 1px;
174
+ border-style: solid;
175
+ --tw-border-opacity: 1;
176
+ border-color: rgb(229 231 235 / var(--tw-border-opacity));
177
+ padding-left: 2.25rem
178
+ }
179
+
180
+ .refine-stored-filter-input:focus {
181
+ --tw-border-opacity: 1;
182
+ border-color: rgb(59 130 246 / var(--tw-border-opacity));
183
+ --tw-ring-opacity: 1;
184
+ --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))
185
+ }
186
+
187
+ @media (min-width: 640px) {
188
+ .refine-stored-filter-input {
189
+ font-size: 0.875rem;
190
+ line-height: 1.25rem
191
+ }
192
+ }
193
+
194
+ .refine-stored-filter-button-cancel {
195
+ --tw-text-opacity: 1;
196
+ color: rgb(37 99 235 / var(--tw-text-opacity))
197
+ }
198
+
199
+ .refine-stored-filter-button-cancel:hover {
200
+ --tw-text-opacity: 1;
201
+ color: rgb(37 99 235 / var(--tw-text-opacity));
202
+ -webkit-text-decoration-line: underline;
203
+ text-decoration-line: underline
204
+ }
205
+
206
+ .refine-stored-filter-button-cancel {
207
+ border-radius: 0.375rem;
208
+ border-width: 1px;
209
+ border-color: transparent;
210
+ padding-top: 0.5rem;
211
+ padding-bottom: 0.5rem;
212
+ padding-left: 1rem;
213
+ padding-right: 1rem;
214
+ display: inline-flex;
215
+ align-items: center;
216
+ white-space: nowrap;
217
+ margin-left: auto;
218
+ margin-right: 1rem
219
+ }
220
+
221
+ .refine-stored-filter-button-submit {
222
+ --tw-bg-opacity: 1;
223
+ background-color: rgb(59 130 246 / var(--tw-bg-opacity));
224
+ --tw-text-opacity: 1;
225
+ color: rgb(255 255 255 / var(--tw-text-opacity));
226
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
227
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
228
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
229
+ }
230
+
231
+ .refine-stored-filter-button-submit:hover {
232
+ --tw-bg-opacity: 1;
233
+ background-color: rgb(37 99 235 / var(--tw-bg-opacity));
234
+ --tw-text-opacity: 1;
235
+ color: rgb(255 255 255 / var(--tw-text-opacity));
236
+ -webkit-text-decoration-line: none;
237
+ text-decoration-line: none
238
+ }
239
+
240
+ .refine-stored-filter-button-submit:focus {
241
+ outline: 2px solid transparent;
242
+ outline-offset: 2px;
243
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
244
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
245
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
246
+ --tw-ring-opacity: 1;
247
+ --tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity));
248
+ --tw-ring-offset-width: 2px
249
+ }
250
+
251
+ .refine-stored-filter-button-submit {
252
+ border-radius: 0.375rem;
253
+ border-width: 1px;
254
+ border-color: transparent;
255
+ padding-top: 0.5rem;
256
+ padding-bottom: 0.5rem;
257
+ padding-left: 1rem;
258
+ padding-right: 1rem;
259
+ display: inline-flex;
260
+ align-items: center;
261
+ white-space: nowrap;
262
+ text-align: center
263
+ }
264
+
265
+ /* _find.html.erb */
266
+
267
+ .refine-stored-filter-search-container {
268
+ display: flex;
269
+ width: 100%;
270
+ padding-top: 1rem;
271
+ padding-bottom: 1rem
272
+ }
273
+
274
+ .refine-stored-filter-search-form {
275
+ display: flex;
276
+ width: 100%
277
+ }
278
+
279
+ .refine-stored-filter-search-selector-container {
280
+ margin-right: 1rem;
281
+ width: 100%
282
+ }
283
+
284
+ .refine-stored-filter-search-button-cancel {
285
+ --tw-text-opacity: 1;
286
+ color: rgb(37 99 235 / var(--tw-text-opacity))
287
+ }
288
+
289
+ .refine-stored-filter-search-button-cancel:hover {
290
+ --tw-text-opacity: 1;
291
+ color: rgb(37 99 235 / var(--tw-text-opacity));
292
+ -webkit-text-decoration-line: underline;
293
+ text-decoration-line: underline
294
+ }
295
+
296
+ .refine-stored-filter-search-button-cancel {
297
+ border-radius: 0.375rem;
298
+ border-width: 1px;
299
+ border-color: transparent;
300
+ padding-top: 0.5rem;
301
+ padding-bottom: 0.5rem;
302
+ padding-left: 1rem;
303
+ padding-right: 1rem;
304
+ display: inline-flex;
305
+ align-items: center;
306
+ white-space: nowrap;
307
+ margin-left: auto;
308
+ margin-right: 1rem
309
+ }
310
+
311
+ .refine-stored-filter-search-button-submit {
312
+ --tw-bg-opacity: 1;
313
+ background-color: rgb(59 130 246 / var(--tw-bg-opacity));
314
+ --tw-text-opacity: 1;
315
+ color: rgb(255 255 255 / var(--tw-text-opacity));
316
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
317
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
318
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
319
+ }
320
+
321
+ .refine-stored-filter-search-button-submit:hover {
322
+ --tw-bg-opacity: 1;
323
+ background-color: rgb(37 99 235 / var(--tw-bg-opacity));
324
+ --tw-text-opacity: 1;
325
+ color: rgb(255 255 255 / var(--tw-text-opacity));
326
+ -webkit-text-decoration-line: none;
327
+ text-decoration-line: none
328
+ }
329
+
330
+ .refine-stored-filter-search-button-submit:focus {
331
+ outline: 2px solid transparent;
332
+ outline-offset: 2px;
333
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
334
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
335
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
336
+ --tw-ring-opacity: 1;
337
+ --tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity));
338
+ --tw-ring-offset-width: 2px
339
+ }
340
+
341
+ .refine-stored-filter-search-button-submit {
342
+ border-radius: 0.375rem;
343
+ border-width: 1px;
344
+ border-color: transparent;
345
+ padding-top: 0.5rem;
346
+ padding-bottom: 0.5rem;
347
+ padding-left: 1rem;
348
+ padding-right: 1rem;
349
+ display: inline-flex;
350
+ align-items: center;
351
+ white-space: nowrap;
352
+ text-align: center
353
+ }
354
+
355
+ /* _filter_builder_dropdown.html.erb */
356
+
357
+ .refine-filter-builder-dropdown-container {
358
+ position: relative;
359
+ display: none;
360
+ width: auto;
361
+ padding: 1.5rem;
362
+ padding-left: 2rem;
363
+ padding-right: 2rem
364
+ }
365
+
366
+ @media (min-width: 768px) {
367
+ .refine-filter-builder-dropdown-container {
368
+ display: block
369
+ }
370
+ }
371
+
372
+ .refine-filter-builder-dropdown-search-box {
373
+ position: absolute;
374
+ right: 0px;
375
+ z-index: 100;
376
+ margin-top: 0.5rem;
377
+ width: 100vw;
378
+ transform-origin: top right;
379
+ --tw-scale-x: 1;
380
+ --tw-scale-y: 1;
381
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
382
+ border-radius: 0.25rem;
383
+ --tw-bg-opacity: 1;
384
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity));
385
+ padding-left: 1rem;
386
+ padding-right: 1rem;
387
+ opacity: 1;
388
+ --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
389
+ --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
390
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
391
+ }
392
+
393
+ @media (min-width: 640px) {
394
+ .refine-filter-builder-dropdown-search-box {
395
+ max-width: -webkit-max-content;
396
+ max-width: -moz-max-content;
397
+ max-width: max-content
398
+ }
399
+ }
400
+
401
+ .refine-filter-builder-dropdown-toggle-button {
402
+ border-radius: 0.25rem;
403
+ border-width: 1px;
404
+ --tw-border-opacity: 1;
405
+ border-color: rgb(59 130 246 / var(--tw-border-opacity));
406
+ background-color: transparent;
407
+ padding-top: 0.5rem;
408
+ padding-bottom: 0.5rem;
409
+ padding-left: 1rem;
410
+ padding-right: 1rem;
411
+ font-weight: 600;
412
+ --tw-text-opacity: 1;
413
+ color: rgb(29 78 216 / var(--tw-text-opacity))
414
+ }
415
+
416
+ .refine-filter-builder-dropdown-toggle-button:hover {
417
+ border-color: transparent;
418
+ --tw-bg-opacity: 1;
419
+ background-color: rgb(59 130 246 / var(--tw-bg-opacity));
420
+ --tw-text-opacity: 1;
421
+ color: rgb(255 255 255 / var(--tw-text-opacity))
422
+ }
423
+
424
+ .refine-filter-builder-dropdown-button-container {
425
+ position: -webkit-sticky;
426
+ position: sticky;
427
+ bottom: 0px;
428
+ display: flex;
429
+ --tw-bg-opacity: 1;
430
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity));
431
+ padding-top: 1.5rem;
432
+ padding-bottom: 1.5rem
433
+ }
434
+
435
+ .refine-filter-builder-dropdown-cancel-button {
436
+ --tw-text-opacity: 1;
437
+ color: rgb(37 99 235 / var(--tw-text-opacity))
438
+ }
439
+
440
+ .refine-filter-builder-dropdown-cancel-button:hover {
441
+ --tw-text-opacity: 1;
442
+ color: rgb(37 99 235 / var(--tw-text-opacity));
443
+ -webkit-text-decoration-line: underline;
444
+ text-decoration-line: underline
445
+ }
446
+
447
+ .refine-filter-builder-dropdown-cancel-button {
448
+ border-radius: 0.375rem;
449
+ border-width: 1px;
450
+ border-color: transparent;
451
+ padding-top: 0.5rem;
452
+ padding-bottom: 0.5rem;
453
+ padding-left: 1rem;
454
+ padding-right: 1rem;
455
+ display: inline-flex;
456
+ align-items: center;
457
+ white-space: nowrap;
458
+ margin-left: auto;
459
+ margin-right: 1rem
460
+ }
461
+
462
+ .refine-filter-builder-dropdown-apply-button {
463
+ --tw-bg-opacity: 1;
464
+ background-color: rgb(59 130 246 / var(--tw-bg-opacity));
465
+ --tw-text-opacity: 1;
466
+ color: rgb(255 255 255 / var(--tw-text-opacity));
467
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
468
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
469
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
470
+ }
471
+
472
+ .refine-filter-builder-dropdown-apply-button:hover {
473
+ --tw-bg-opacity: 1;
474
+ background-color: rgb(37 99 235 / var(--tw-bg-opacity));
475
+ --tw-text-opacity: 1;
476
+ color: rgb(255 255 255 / var(--tw-text-opacity));
477
+ -webkit-text-decoration-line: none;
478
+ text-decoration-line: none
479
+ }
480
+
481
+ .refine-filter-builder-dropdown-apply-button:focus {
482
+ outline: 2px solid transparent;
483
+ outline-offset: 2px;
484
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
485
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
486
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
487
+ --tw-ring-opacity: 1;
488
+ --tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity));
489
+ --tw-ring-offset-width: 2px
490
+ }
491
+
492
+ .refine-filter-builder-dropdown-apply-button {
493
+ border-radius: 0.375rem;
494
+ border-width: 1px;
495
+ border-color: transparent;
496
+ padding-top: 0.5rem;
497
+ padding-bottom: 0.5rem;
498
+ padding-left: 1rem;
499
+ padding-right: 1rem;
500
+ display: inline-flex;
501
+ align-items: center;
502
+ white-space: nowrap;
503
+ margin-right: 1rem;
504
+ text-align: center
505
+ }
506
+
507
+ .refine-filter-builder-dropdown-loading-container {
508
+ padding-top: 1rem;
509
+ padding-bottom: 1rem
510
+ }
511
+
512
+ .postfixed {
513
+ /* keep it because the dropdown select uses it */
514
+ }
515
+
516
+ /* _filter_condition.html.erb */
517
+
518
+ .refine-filter-condition-container {
519
+ /* keep it because the dropdown select uses it */
520
+ margin-top: 0.75rem;
521
+ display: flex;
522
+ width: 100%
523
+ }
524
+
525
+ @media (min-width: 640px) {
526
+ .refine-filter-condition-container {
527
+ margin-right: 0.75rem;
528
+ width: auto;
529
+ flex-shrink: 0
530
+ }
531
+ }
532
+
533
+ .refine-filter-condition-select {
534
+ margin-top: 0.25rem;
535
+ display: block;
536
+ border-radius: 0.375rem;
537
+ --tw-border-opacity: 1;
538
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
539
+ padding-top: 0.5rem;
540
+ padding-bottom: 0.5rem;
541
+ padding-left: 0.75rem;
542
+ padding-right: 2.5rem;
543
+ font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
544
+ font-size: 1rem;
545
+ line-height: 1.5rem
546
+ }
547
+
548
+ .refine-filter-condition-select:focus {
549
+ --tw-border-opacity: 1;
550
+ border-color: rgb(99 102 241 / var(--tw-border-opacity));
551
+ outline: 2px solid transparent;
552
+ outline-offset: 2px;
553
+ --tw-ring-opacity: 1;
554
+ --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity))
555
+ }
556
+
557
+ @media (min-width: 640px) {
558
+ .refine-filter-condition-select {
559
+ font-size: 0.875rem;
560
+ line-height: 1.25rem
561
+ }
562
+ }
563
+
564
+ .refine-filter-condition-postfix {
565
+ flex-shrink: 0;
566
+ border-radius: 0.375rem;
567
+ border-top-left-radius: 0px;
568
+ border-bottom-left-radius: 0px;
569
+ border-width: 1px;
570
+ --tw-border-opacity: 1;
571
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
572
+ --tw-bg-opacity: 1;
573
+ background-color: rgb(249 250 251 / var(--tw-bg-opacity));
574
+ padding: 0.5rem
575
+ }
576
+
577
+ /* _option_condition.html.erb */
578
+
579
+ .refine-option-condition-container {
580
+ /* keep it because the dropdown select uses it */
581
+ margin-top: 0.75rem;
582
+ display: flex;
583
+ width: 100%
584
+ }
585
+
586
+ @media (min-width: 640px) {
587
+ .refine-option-condition-container {
588
+ margin-right: 0.75rem;
589
+ width: auto;
590
+ flex-shrink: 0
591
+ }
592
+ }
593
+
594
+ .refine-option-condition-select {
595
+ margin-top: 0.25rem;
596
+ display: block;
597
+ border-radius: 0.375rem;
598
+ --tw-border-opacity: 1;
599
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
600
+ padding-top: 0.5rem;
601
+ padding-bottom: 0.5rem;
602
+ padding-left: 0.75rem;
603
+ padding-right: 2.5rem;
604
+ font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
605
+ font-size: 1rem;
606
+ line-height: 1.5rem
607
+ }
608
+
609
+ .refine-option-condition-select:focus {
610
+ --tw-border-opacity: 1;
611
+ border-color: rgb(99 102 241 / var(--tw-border-opacity));
612
+ outline: 2px solid transparent;
613
+ outline-offset: 2px;
614
+ --tw-ring-opacity: 1;
615
+ --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity))
616
+ }
617
+
618
+ @media (min-width: 640px) {
619
+ .refine-option-condition-select {
620
+ font-size: 0.875rem;
621
+ line-height: 1.25rem
622
+ }
623
+ }
624
+
625
+ .refine-option-condition-postfix {
626
+ flex-shrink: 0;
627
+ border-radius: 0.375rem;
628
+ border-top-left-radius: 0px;
629
+ border-bottom-left-radius: 0px;
630
+ border-width: 1px;
631
+ --tw-border-opacity: 1;
632
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
633
+ --tw-bg-opacity: 1;
634
+ background-color: rgb(249 250 251 / var(--tw-bg-opacity));
635
+ padding: 0.5rem
636
+ }
637
+
638
+ /* _add_and.html.erb */
639
+
640
+ .refine-add-container {
641
+ display: flex;
642
+ padding-top: 1rem
643
+ }
644
+
645
+ .refine-add-button {
646
+ --tw-text-opacity: 1;
647
+ color: rgb(37 99 235 / var(--tw-text-opacity))
648
+ }
649
+
650
+ .refine-add-button:hover {
651
+ --tw-text-opacity: 1;
652
+ color: rgb(37 99 235 / var(--tw-text-opacity));
653
+ -webkit-text-decoration-line: underline;
654
+ text-decoration-line: underline
655
+ }
656
+
657
+ .refine-add-button {
658
+ border-radius: 0.375rem;
659
+ border-width: 1px;
660
+ border-color: transparent;
661
+ padding-top: 0.5rem;
662
+ padding-bottom: 0.5rem;
663
+ display: inline-flex;
664
+ align-items: center;
665
+ white-space: nowrap;
666
+ display: block;
667
+ cursor: pointer;
668
+ padding-left: 0.75rem;
669
+ padding-right: 0.75rem;
670
+ text-align: center;
671
+ font-weight: 600;
672
+ text-transform: uppercase;
673
+ --tw-text-opacity: 1;
674
+ color: rgb(17 24 39 / var(--tw-text-opacity))
675
+ }
676
+
677
+ .refine-add-button-text {
678
+ }
679
+
680
+ .refine-add-icon {
681
+ padding-left: 0.5rem;
682
+ --tw-text-opacity: 1;
683
+ color: rgb(107 114 128 / var(--tw-text-opacity))
684
+ }
685
+
686
+ /* _add_group.html.erb */
687
+
688
+ .refine-add-group-container {
689
+ display: flex;
690
+ align-items: center
691
+ }
692
+
693
+ .refine-add-group {
694
+ margin-right: 0.25rem;
695
+ margin-bottom: 0.25rem;
696
+ cursor: pointer;
697
+ background-color: transparent;
698
+ padding-top: 1rem;
699
+ font-size: 0.875rem;
700
+ line-height: 1.25rem;
701
+ font-weight: 700;
702
+ --tw-text-opacity: 1;
703
+ color: rgb(37 99 235 / var(--tw-text-opacity));
704
+ -webkit-text-decoration-line: underline;
705
+ text-decoration-line: underline;
706
+ outline: 2px solid transparent;
707
+ outline-offset: 2px;
708
+ transition-property: all;
709
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
710
+ transition-duration: 150ms;
711
+ transition-timing-function: linear
712
+ }
713
+
714
+ .refine-add-group:focus {
715
+ outline: 2px solid transparent;
716
+ outline-offset: 2px
717
+ }
718
+
719
+ .refine-add-group.refine-add-disabled {
720
+ cursor: not-allowed;
721
+ }
722
+
723
+ .prefixed {
724
+ /* keep it because the dropdown select uses it */
725
+ }
726
+
727
+ /* _clause_select.html.erb */
728
+
729
+ .refine-clause-select-prefixed {
730
+ /* keep it because the dropdown select uses it */
731
+ display: flex
732
+ }
733
+
734
+ .refine-clause-select-prefix {
735
+ flex-shrink: 0;
736
+ border-radius: 0.375rem;
737
+ border-top-right-radius: 0px;
738
+ border-bottom-right-radius: 0px;
739
+ border-width: 1px;
740
+ --tw-border-opacity: 1;
741
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
742
+ --tw-bg-opacity: 1;
743
+ background-color: rgb(249 250 251 / var(--tw-bg-opacity));
744
+ padding: 0.5rem
745
+ }
746
+
747
+ .refine-clause-select {
748
+ width: 100%;
749
+ flex-shrink: 0;
750
+ flex-grow: 1
751
+ }
752
+
753
+ @media (min-width: 640px) {
754
+ .refine-clause-select {
755
+ width: auto
756
+ }
757
+ }
758
+
759
+ /* _condition_select.html.erb */
760
+
761
+ .refine-condition-select {
762
+ width: 100%
763
+ }
764
+
765
+ @media (min-width: 640px) {
766
+ .refine-condition-select {
767
+ width: auto
768
+ }
769
+ }
770
+
771
+ /* _criterion_errors.html.erb */
772
+
773
+ .refine-criterion-error {
774
+ margin-top: 0.5rem;
775
+ font-size: 0.75rem;
776
+ line-height: 1rem;
777
+ --tw-text-opacity: 1;
778
+ color: rgb(220 38 38 / var(--tw-text-opacity))
779
+ }
780
+
781
+ /* _criterion.html.erb */
782
+
783
+ .refine-criterion-container {
784
+ display: flex;
785
+ width: 100%;
786
+ flex-grow: 1;
787
+ flex-wrap: wrap;
788
+ align-items: baseline
789
+ }
790
+
791
+ @media (min-width: 640px) {
792
+ .refine-criterion-container {
793
+ width: auto;
794
+ padding-right: 3rem
795
+ }
796
+ }
797
+
798
+ .refine-criterion-condition-container {
799
+ width: 100%;
800
+ padding-top: 0.75rem
801
+ }
802
+
803
+ @media (min-width: 640px) {
804
+ .refine-criterion-condition-container {
805
+ margin-right: 0.75rem;
806
+ width: auto;
807
+ flex-shrink: 0
808
+ }
809
+ }
810
+
811
+ .refine-criterion-clause-container {
812
+ width: 100%;
813
+ padding-top: 0.75rem
814
+ }
815
+
816
+ @media (min-width: 640px) {
817
+ .refine-criterion-clause-container {
818
+ margin-right: 0.75rem;
819
+ width: auto;
820
+ flex-shrink: 0
821
+ }
822
+ }
823
+
824
+ .refine-criterion-refinement-container {
825
+ width: 100%;
826
+ padding-top: 0.75rem
827
+ }
828
+
829
+ @media (min-width: 640px) {
830
+ .refine-criterion-refinement-container {
831
+ margin-right: 0.75rem;
832
+ width: auto;
833
+ flex-shrink: 0
834
+ }
835
+ }
836
+
837
+ /* _delete_criterion.html.erb */
838
+
839
+ .refine-delete-container {
840
+ margin-left: auto;
841
+ flex: none;
842
+ padding-top: 1.25rem
843
+ }
844
+
845
+ .refine-delete-button {
846
+ margin-left: auto;
847
+ display: flex;
848
+ align-items: center
849
+ }
850
+
851
+ .refine-delete-criterion-icon {
852
+ --tw-text-opacity: 1;
853
+ color: rgb(75 85 99 / var(--tw-text-opacity))
854
+ }
855
+
856
+ .refine-delete-criterion-label {
857
+ display: none;
858
+ padding-left: 0.5rem;
859
+ --tw-text-opacity: 1;
860
+ color: rgb(107 114 128 / var(--tw-text-opacity))
861
+ }
862
+
863
+ /* _group.html.erb */
864
+
865
+ .refine-group-container {
866
+ border-radius: 0.25rem;
867
+ --tw-bg-opacity: 1;
868
+ background-color: rgb(249 250 251 / var(--tw-bg-opacity));
869
+ padding: 1rem;
870
+ font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"
871
+ }
872
+
873
+ .refine-group-criterion-container {
874
+ display: flex;
875
+ flex-wrap: wrap;
876
+ align-items: flex-start;
877
+ padding-bottom: 0.75rem
878
+ }
879
+
880
+ .refine-group-and {
881
+ padding-left: 0.5rem;
882
+ --tw-text-opacity: 1;
883
+ color: rgb(156 163 175 / var(--tw-text-opacity))
884
+ }
885
+
886
+ /* _query.html.erb */
887
+
888
+ .refine-query-container {
889
+ position: relative
890
+ }
891
+
892
+ .refine-query-content-container {
893
+ position: relative;
894
+ height: 100%;
895
+ width: 100%
896
+ }
897
+
898
+ .refine-query-loading-container {
899
+ position: absolute;
900
+ left: 0px;
901
+ top: 0px;
902
+ z-index: 10;
903
+ display: flex;
904
+ height: 100%;
905
+ width: 100%;
906
+ align-items: center;
907
+ justify-content: center;
908
+ border-radius: 0.25rem;
909
+ background-color: rgb(209 213 219 / var(--tw-bg-opacity));
910
+ --tw-bg-opacity: 0.5
911
+ }
912
+
913
+ .refine-query-loading-text {
914
+ font-size: 1.25rem;
915
+ line-height: 1.75rem;
916
+ --tw-text-opacity: 1;
917
+ color: rgb(0 0 0 / var(--tw-text-opacity))
918
+ }
919
+
920
+ .refine-query-or {
921
+ padding-top: 0.75rem;
922
+ padding-bottom: 0.75rem
923
+ }
924
+
925
+ /* _date_picker.html.erb */
926
+
927
+ .refine-date-picker-container {
928
+ position: relative
929
+ }
930
+
931
+ .refine-date-picker-input {
932
+ width: 9rem;
933
+ border-radius: 0.25rem;
934
+ border-width: 1px;
935
+ border-style: solid;
936
+ --tw-border-opacity: 1;
937
+ border-color: rgb(229 231 235 / var(--tw-border-opacity))
938
+ }
939
+
940
+ .refine-date-picker-input:focus {
941
+ --tw-border-opacity: 1;
942
+ border-color: rgb(59 130 246 / var(--tw-border-opacity));
943
+ --tw-ring-opacity: 1;
944
+ --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))
945
+ }
946
+
947
+ @media (min-width: 640px) {
948
+ .refine-date-picker-input {
949
+ font-size: 0.875rem;
950
+ line-height: 1.25rem
951
+ }
952
+ }
953
+
954
+ /* _text_condition.html.erb */
955
+
956
+ .refine-text-condition-container {
957
+ margin-top: 0.75rem;
958
+ margin-right: 0.75rem
959
+ }
960
+
961
+ .refine-text-condition-input {
962
+ border-radius: 0.25rem;
963
+ border-width: 1px;
964
+ border-style: solid;
965
+ --tw-border-opacity: 1;
966
+ border-color: rgb(229 231 235 / var(--tw-border-opacity))
967
+ }
968
+
969
+ .refine-text-condition-input:focus {
970
+ --tw-border-opacity: 1;
971
+ border-color: rgb(59 130 246 / var(--tw-border-opacity));
972
+ --tw-ring-opacity: 1;
973
+ --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))
974
+ }
975
+
976
+ @media (min-width: 640px) {
977
+ .refine-text-condition-input {
978
+ font-size: 0.875rem;
979
+ line-height: 1.25rem
980
+ }
981
+ }
982
+
983
+ /* _numeric_condition_html.erb */
984
+
985
+ .refine-numeric-condition-container {
986
+ margin-top: 0.75rem;
987
+ flex-grow: 0
988
+ }
989
+
990
+ .refine-numeric-condition-container-btwn {
991
+ margin-top: 0.75rem;
992
+ flex-grow: 0
993
+ }
994
+
995
+ @media (min-width: 640px) {
996
+ .refine-numeric-condition-container-btwn {
997
+ margin-right: 0.75rem
998
+ }
999
+ }
1000
+
1001
+ .refine-numeric-condition-input {
1002
+ display: block;
1003
+ width: 100%;
1004
+ border-radius: 0.375rem;
1005
+ --tw-border-opacity: 1;
1006
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
1007
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
1008
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
1009
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
1010
+ }
1011
+
1012
+ .refine-numeric-condition-input:focus {
1013
+ --tw-border-opacity: 1;
1014
+ border-color: rgb(99 102 241 / var(--tw-border-opacity));
1015
+ --tw-ring-opacity: 1;
1016
+ --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity))
1017
+ }
1018
+
1019
+ @media (min-width: 640px) {
1020
+ .refine-numeric-condition-input {
1021
+ font-size: 0.875rem;
1022
+ line-height: 1.25rem
1023
+ }
1024
+ }
1025
+
1026
+ .refine-numeric-condition-and {
1027
+ margin-top: 0.75rem;
1028
+ padding-left: 0.5rem;
1029
+ padding-right: 0.5rem
1030
+ }
1031
+
1032
+ .refine-numeric-condition-second-container {
1033
+ margin-top: 0.75rem;
1034
+ flex-grow: 0
1035
+ }
1036
+
1037
+ @media (min-width: 640px) {
1038
+ .refine-numeric-condition-second-container {
1039
+ margin-right: 0.75rem
1040
+ }
1041
+ }
1042
+
1043
+ .refine-numeric-condition-second-input {
1044
+ display: block;
1045
+ width: 100%;
1046
+ border-radius: 0.375rem;
1047
+ --tw-border-opacity: 1;
1048
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
1049
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
1050
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
1051
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
1052
+ }
1053
+
1054
+ .refine-numeric-condition-second-input:focus {
1055
+ --tw-border-opacity: 1;
1056
+ border-color: rgb(99 102 241 / var(--tw-border-opacity));
1057
+ --tw-ring-opacity: 1;
1058
+ --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity))
1059
+ }
1060
+
1061
+ @media (min-width: 640px) {
1062
+ .refine-numeric-condition-second-input {
1063
+ font-size: 0.875rem;
1064
+ line-height: 1.25rem
1065
+ }
1066
+ }
1067
+
1068
+ /* _date_condition.html.erb */
1069
+
1070
+ .refine-date-condition-days-container {
1071
+ margin-top: 0.75rem
1072
+ }
1073
+
1074
+ .refine-date-condition-days-input {
1075
+ display: block;
1076
+ width: 7rem;
1077
+ border-radius: 0.375rem;
1078
+ --tw-border-opacity: 1;
1079
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
1080
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
1081
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
1082
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
1083
+ }
1084
+
1085
+ .refine-date-condition-days-input:focus {
1086
+ --tw-border-opacity: 1;
1087
+ border-color: rgb(99 102 241 / var(--tw-border-opacity));
1088
+ --tw-ring-opacity: 1;
1089
+ --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity))
1090
+ }
1091
+
1092
+ @media (min-width: 640px) {
1093
+ .refine-date-condition-days-input {
1094
+ font-size: 0.875rem;
1095
+ line-height: 1.25rem
1096
+ }
1097
+ }
1098
+
1099
+ .refine-date-condition-days-text {
1100
+ margin-top: 0.75rem;
1101
+ padding-left: 0.5rem;
1102
+ padding-right: 0.5rem
1103
+ }
1104
+
1105
+ .refine-date-condition-days-modifier-container {
1106
+ margin-top: 0.75rem;
1107
+ width: 8rem
1108
+ }
1109
+
1110
+ @media (min-width: 640px) {
1111
+ .refine-date-condition-days-modifier-container {
1112
+ margin-right: 0.75rem
1113
+ }
1114
+ }
1115
+
1116
+ .refine-date-condition-days-modifier-select {
1117
+ width: 100%;
1118
+ border-radius: 0.375rem;
1119
+ --tw-border-opacity: 1;
1120
+ border-color: rgb(209 213 219 / var(--tw-border-opacity));
1121
+ padding-top: 0.5rem;
1122
+ padding-bottom: 0.5rem;
1123
+ padding-left: 0.75rem;
1124
+ padding-right: 2.5rem;
1125
+ font-size: 1rem;
1126
+ line-height: 1.5rem
1127
+ }
1128
+
1129
+ .refine-date-condition-days-modifier-select:focus {
1130
+ --tw-border-opacity: 1;
1131
+ border-color: rgb(99 102 241 / var(--tw-border-opacity));
1132
+ outline: 2px solid transparent;
1133
+ outline-offset: 2px;
1134
+ --tw-ring-opacity: 1;
1135
+ --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity))
1136
+ }
1137
+
1138
+ @media (min-width: 640px) {
1139
+ .refine-date-condition-days-modifier-select {
1140
+ font-size: 0.875rem;
1141
+ line-height: 1.25rem
1142
+ }
1143
+ }
1144
+
1145
+ .refine-date-condition-first-date-container {
1146
+ margin-top: 0.75rem;
1147
+ flex-grow: 0
1148
+ }
1149
+
1150
+ @media (min-width: 640px) {
1151
+ .refine-date-condition-first-date-container {
1152
+ margin-right: 0.75rem
1153
+ }
1154
+ }
1155
+
1156
+ .refine-date-condition-first-date-container-btwn {
1157
+ margin-top: 0.75rem;
1158
+ flex-grow: 0
1159
+ }
1160
+
1161
+ .refine-date-condition-and {
1162
+ margin-top: 0.75rem;
1163
+ padding-left: 0.5rem;
1164
+ padding-right: 0.5rem
1165
+ }
1166
+
1167
+ .refine-date-condition-second-date-container {
1168
+ margin-top: 0.75rem;
1169
+ flex-grow: 0
1170
+ }
1171
+
1172
+ @media (min-width: 640px) {
1173
+ .refine-date-condition-second-date-container {
1174
+ margin-right: 0.75rem
1175
+ }
1176
+ }
1177
+
1178
+ /*
1179
+ *********************************************
1180
+ Inline
1181
+ *********************************************
1182
+ */
1183
+
1184
+ /* buttons and popups */
1185
+
1186
+ .refine--inline-popup {
1187
+ position: absolute;
1188
+ z-index: 100;
1189
+ margin-top: 0.5rem;
1190
+ width: 100vw;
1191
+ border-radius: 0.25rem;
1192
+ background-color: white;
1193
+ padding-left: 1rem;
1194
+ padding-right: 1rem;
1195
+ max-width: -webkit-max-content;
1196
+ max-width: -moz-max-content;
1197
+ max-width: max-content;
1198
+ max-height: 66vh;
1199
+ overflow: visible;
1200
+ display: block;
1201
+ }
1202
+
1203
+ /* groups and filter pills */
1204
+
1205
+ .refine--filter-wrapper {
1206
+ font-size: 14px;
1207
+ display: flex;
1208
+ flex-direction: column;
1209
+ gap: 12px;
1210
+ margin-top: 12px;
1211
+ }
1212
+
1213
+ .refine--filter-row {
1214
+ display: flex;
1215
+ gap: 10px;
1216
+ row-gap: 15px;
1217
+ align-items: center;
1218
+ flex-wrap: wrap;
1219
+ }
1220
+
1221
+ .refine--groups-wrapper {
1222
+ display: flex;
1223
+ gap: 10px;
1224
+ row-gap: 15px;
1225
+ align-items: center;
1226
+ flex-wrap: wrap;
1227
+ }
1228
+
1229
+ .refine--group-join, .refine--condition-join {
1230
+ position: relative;
1231
+ padding: 5px 0;
1232
+ width: 35px;
1233
+ text-align: center;
1234
+ border-radius: 6px;
1235
+ cursor: default;
1236
+ &:hover {
1237
+ background-color: #f8f8f8;
1238
+ }
1239
+ }
1240
+
1241
+ .refine--group {
1242
+ display: flex;
1243
+ gap: 10px;
1244
+ align-items: center;
1245
+ position: relative;
1246
+ flex-wrap: wrap;
1247
+ }
1248
+
1249
+ .refine--group-conditions-wrapper {
1250
+ display: flex;
1251
+ gap: 5px;
1252
+ position: relative;
1253
+ padding: 0 10px;
1254
+ &:before , &:after {
1255
+ content: "";
1256
+ position: absolute;
1257
+ top: -2px;
1258
+ bottom: -2px;
1259
+ border: 2px solid #eee;
1260
+ width: 3px;
1261
+ }
1262
+ &:hover {
1263
+ &:before, &:after {
1264
+ border-color: #aaa;
1265
+ }
1266
+ }
1267
+ &:before {
1268
+ border-radius: 6px 0 0 6px;
1269
+ left: 0;
1270
+ border-right: none;
1271
+ }
1272
+ &:after {
1273
+ border-radius: 0 6px 6px 0;
1274
+ right: 0;
1275
+ border-left: none;
1276
+ }
1277
+ }
1278
+
1279
+ .refine--group-conditions {
1280
+ display: flex;
1281
+ gap: 5px;
1282
+ align-items: center;
1283
+ }
1284
+
1285
+ /* Condition List */
1286
+
1287
+ .refine--condition-list {
1288
+ margin-top: 5px;
1289
+ max-height: 180px;
1290
+ overflow: auto;
1291
+ }
1292
+
1293
+ .refine--condition-list-item {
1294
+ color: black;
1295
+ display: block;
1296
+ padding: 3px 5px;
1297
+ color: #111;
1298
+ border-radius: 6px;
1299
+ line-height: 1.15;
1300
+ }
1301
+
1302
+ .refine--condition-list-item:hover {
1303
+ background-color: #eee;
1304
+ color: #111;
1305
+ text-decoration: none;
1306
+ }
1307
+
1308
+ .refine--condition-pill-wrapper-wrapper {
1309
+ display: flex;
1310
+ align-items: center;
1311
+ gap: 5px;
1312
+ position: relative;
1313
+ }
1314
+
1315
+ .refine--condition-pill {
1316
+ background-color: #fff;
1317
+ border: 1px solid #bbb;
1318
+ border-bottom-color: #999;
1319
+ box-shadow: 0 1px 1px rgba(0,0,0,0.1);
1320
+ border-radius: 6px;
1321
+ font-size: 14px;
1322
+ cursor: pointer;
1323
+ position: relative;
1324
+ white-space: nowrap;
1325
+ &:hover {
1326
+ border-color: #999;
1327
+ .refine--remove-condition {
1328
+ display: block;
1329
+ }
1330
+ }
1331
+ &:not(:hover){
1332
+ .refine--condition-value-wrapper {
1333
+ display: none;
1334
+ }
1335
+ }
1336
+ }
1337
+
1338
+ .refine--filter-condition {
1339
+ display: flex;
1340
+ align-items: center;
1341
+ font-size: 14px;
1342
+ position: relative;
1343
+ background-color: #efeff2;
1344
+ border-radius: 6px;
1345
+ padding: 4px;
1346
+ }
1347
+
1348
+ .refine--condition-pill-name {
1349
+ padding: 4px 8px;
1350
+ display: block;
1351
+ }
1352
+
1353
+ .refine--remove-condition {
1354
+ display: none;
1355
+ border: 2px solid #fff;
1356
+ padding: 6px 4px;
1357
+ border-radius: 50%;
1358
+ position: absolute;
1359
+ top: -8px;
1360
+ right:-8px;
1361
+ background-color: #aaa;
1362
+ z-index: 999;
1363
+ &:hover {
1364
+ background-color: #ee3f3f;
1365
+ }
1366
+ &:before {
1367
+ display: block;
1368
+ content: "";
1369
+ width: 6px;
1370
+ height: 2px;
1371
+ background-color: #fff;
1372
+ }
1373
+ }
1374
+
1375
+ &:hover {
1376
+ border-color: #999;
1377
+ .remove-applied-condition {
1378
+ display: block;
1379
+ }
1380
+ }
1381
+
1382
+ .refine--condition-value-wrapper {
1383
+ position: absolute;
1384
+ top: 100%;
1385
+ background-color: #000;
1386
+ box-shadow: 0 2px 4px 0 rgba(0,0,0,0.1);
1387
+ border-radius: 6px;
1388
+ color: #fff;
1389
+ padding: 5px 10px;
1390
+ display: flex;
1391
+ gap: 5px;
1392
+ font-size: 12px;
1393
+ z-index: 9999;
1394
+ left: 50%;
1395
+ transform: translate3d(-50%, 4px, 0);
1396
+ -webkit-animation: 0.25s cubic-bezier(.45,1.1,.7,1) 0s pillValueTooltip;
1397
+ animation: 0.25s cubic-bezier(.45,1.1,.7,1) 0s pillValueTooltip;
1398
+ -webkit-animation-fill-mode: both;
1399
+ animation-fill-mode: both;
1400
+ }
1401
+
1402
+ .refine--condition-value-clause {
1403
+ color: rgba(255,255,255,0.7);
1404
+ }
1405
+
1406
+ /* Form widgets */
1407
+
1408
+ .refine--select {
1409
+ line-height: 1.125;
1410
+ color: #111;
1411
+ border: 1px solid #ddd;
1412
+ border-bottom-color: #aaa;
1413
+ box-shadow: 0 1px 2px rgba(0,0,0,.1);
1414
+ border-radius: 6px;
1415
+ padding: 3px 3px 3px 6px;
1416
+ background-color: #fff;
1417
+ }
1418
+
1419
+ .refine--clause-select {
1420
+ flex: 1;
1421
+ margin-left: 10px;
1422
+ }
1423
+
1424
+ .refine--criterion-fields {
1425
+ width: 100%;
1426
+ padding: 0.5rem 0;
1427
+ }
1428
+
1429
+ /* _date_condition.html.erb */
1430
+
1431
+ .refine--date-condition-days-text {
1432
+ margin-top: 0.75rem;
1433
+ }
1434
+
1435
+ .refine--date-condition-days-modifier-container {
1436
+ margin-top: 0.75rem;
1437
+ }
1438
+
1439
+ .refine--date-picker-input {
1440
+ font-size: 0.875rem;
1441
+ line-height: 1.25rem;
1442
+ border-radius: 4px;
1443
+ border-width: 1px;
1444
+ border-style: solid;
1445
+ border-color: rgba(183, 198, 206, 1);
1446
+ }
1447
+
1448
+ .refine--date-picker-container {
1449
+ position: relative;
1450
+ }
1451
+
1452
+ .refine--date-picker-input {
1453
+ font-size: 0.875rem;
1454
+ line-height: 1.25rem;
1455
+ border-radius: 4px;
1456
+ border-width: 1px;
1457
+ border-style: solid;
1458
+ border-color: rgba(183, 198, 206, 1);
1459
+ }
1460
+
1461
+ .refine-date-condition-first-date-container-btwn {
1462
+ margin-top: 0px;
1463
+ padding-top: 0;
1464
+ margin-right: 6px;
1465
+ margin-top: 0;
1466
+ flex: 1;
1467
+ }
1468
+
1469
+ .refine--date-condition-and {
1470
+ margin-top: 0.75rem;
1471
+ }
1472
+
1473
+ .refine--date-condition-second-date-container {
1474
+ margin-top: 0.75rem;
1475
+ }
1476
+
1477
+ .refine--date-condition-days-modifier-select {
1478
+ width: 100%;
1479
+ border-radius: 0.375rem;
1480
+ border-color: rgba(209, 213, 219, 1);
1481
+ padding-top: 0.5rem;
1482
+ padding-bottom: 0.5rem;
1483
+ padding-left: 0.75rem;
1484
+ padding-right: 2.5rem;
1485
+ font-size: 1rem;
1486
+ line-height: 1.5rem;
1487
+ }
1488
+
1489
+ /* _numeric_condition_html.erb */
1490
+
1491
+ .refine--numeric-condition-container {
1492
+ margin-top: 0.75rem;
1493
+ flex-grow: 0;
1494
+ }
1495
+
1496
+ .refine--numeric-condition-container-btwn {
1497
+ margin-top: 0.75rem;
1498
+ flex-grow: 0;
1499
+ }
1500
+
1501
+ .refine--numeric-condition-and {
1502
+ margin-top: 0.75rem;
1503
+ }
1504
+
1505
+ .refine--numeric-condition-second-container {
1506
+ margin-top: 0.75rem;
1507
+ flex-grow: 0;
1508
+ }
1509
+
1510
+ @media (min-width: 640px) {
1511
+ .refine--numeric-condition-second-container {
1512
+ margin-right: 0.75rem;
1513
+ }
1514
+ }
1515
+
1516
+ .refine--numeric-condition-second-input {
1517
+ display: block;
1518
+ width: 100%;
1519
+ border-radius: 0.375rem;
1520
+ border-color: rgba(209, 213, 219, 1);
1521
+ }
1522
+
1523
+ .refine--numeric-condition-second-input:focus {
1524
+ border-color: rgba(99, 102, 241, 1);
1525
+ }
1526
+
1527
+ @media (min-width: 640px) {
1528
+ .refine--numeric-condition-second-input {
1529
+ font-size: 0.875rem;
1530
+ line-height: 1.25rem;
1531
+ }
1532
+ }
1533
+
1534
+ /* _option_condition.html.erb */
1535
+
1536
+ .refine--option-condition-container {
1537
+ /* keep it because the dropdown select uses it */
1538
+ display: flex;
1539
+ width: 100%;
1540
+ }
1541
+
1542
+ @media (min-width: 640px) {
1543
+ .refine--option-condition-container {
1544
+ margin-right: 0.75rem;
1545
+ width: auto;
1546
+ flex-shrink: 0;
1547
+ }
1548
+ }
1549
+
1550
+ .refine--option-select {
1551
+ width: 100%;
1552
+ }
1553
+
1554
+ .refine--option-condition-select:focus {
1555
+ border-color: rgba(99, 102, 241, 1);
1556
+ outline: 2px solid transparent;
1557
+ outline-offset: 2px;
1558
+ }
1559
+
1560
+ @media (min-width: 640px) {
1561
+ .refine--option-condition-select {
1562
+ font-size: 0.875rem;
1563
+ line-height: 1.25rem;
1564
+ }
1565
+ }
1566
+
1567
+ .refine--option-condition-postfix {
1568
+ flex-shrink: 0;
1569
+ border-radius: 0.375rem;
1570
+ border-top-left-radius: 0px;
1571
+ border-bottom-left-radius: 0px;
1572
+ border-width: 1px;
1573
+ border-color: rgba(209, 213, 219, 1);
1574
+ background-color: rgba(249, 250, 251, 1);
1575
+ padding: 0.5rem;
1576
+ }
1577
+
1578
+ /* _text_condition.html.erb */
1579
+
1580
+ input.refine--input {
1581
+ width: 100%;
1582
+ font-size: 14px;
1583
+ display: block;
1584
+ /* TODO 25px L for icon */
1585
+ padding: 5px;
1586
+ border: 1px solid #bbb;
1587
+ border-radius: 6px;
1588
+ outline: 0;
1589
+ line-height: 1.125;
1590
+ }
1591
+
1592
+ input.refine--input::-moz-placeholder {
1593
+ color: #aaa;
1594
+ }
1595
+
1596
+ input.refine--input::placeholder {
1597
+ color: #aaa;
1598
+ }
1599
+
1600
+ input.refine--text-condition-input:focus {
1601
+ border-color: rgba(59, 130, 246, 1);
1602
+ }
1603
+
1604
+ /* stored filters */
1605
+
1606
+ .refine--stored-filter-list {
1607
+ padding: 10px;
1608
+ max-height: 180px;
1609
+ overflow: auto;
1610
+ }
1611
+
1612
+ .refine--stored-filter-list-item {
1613
+ color: black;
1614
+ display: block;
1615
+ padding: 3px 5px;
1616
+ color: #111;
1617
+ border-radius: 6px;
1618
+ line-height: 1.15;
1619
+ }
1620
+
1621
+ .refine--stored-filter-list-item:hover {
1622
+ background-color: #eee;
1623
+ color: #111;
1624
+ text-decoration: none;
1625
+ }
1626
+
1627
+ .refine--save-filter-link-label {
1628
+ border-bottom: 1px dotted #111;
1629
+ }
1630
+
1631
+ /*
1632
+ *********************************************
1633
+ Inline Final Styles
1634
+ *********************************************
1635
+ */
1636
+
1637
+ .refine--filter-label {
1638
+ white-space: nowrap;
1639
+ color: #767676;
1640
+ }
1641
+
1642
+ .refine--add-condition-button.refine--add-first-condition-button,
1643
+ .refine--add-condition-group-button.refine--add-first-condition-button {
1644
+ border: 1px dotted #aaa;
1645
+ padding-right: 8px;
1646
+ line-height: 16px;
1647
+ &:hover {
1648
+ background-color: #fff;
1649
+ border-style: solid;
1650
+ color: #111;
1651
+ }
1652
+ }
1653
+
1654
+ .refine--add-condition-button, .refine--add-group-button {
1655
+ display: flex;
1656
+ gap: 5px;
1657
+ color: #767676;
1658
+ font-size: 14px;
1659
+ border-radius: 6px;
1660
+ padding: 5px;
1661
+ align-items: center;
1662
+ background-color: #fff;
1663
+ &:hover {
1664
+ color: #111;
1665
+ background-color: #f8f8f8;
1666
+ }
1667
+ }
1668
+
1669
+ .refine--has-many-groups .refine--add-button-label {
1670
+ display: none;
1671
+ }
1672
+
1673
+ .refine--has-many-groups .refine--add-condition-button .refine--add-button-icon {
1674
+ position: relative;
1675
+ top: 0;
1676
+ }
1677
+
1678
+ .refine--inline-popup-container {
1679
+ display: block;
1680
+ width: auto;
1681
+ position: relative;
1682
+ }
1683
+
1684
+ .refine--inline-popup {
1685
+ -webkit-animation: .15s cubic-bezier(.45,1.1,.7,1) 0s up10;
1686
+ animation: .15s cubic-bezier(.45,1.1,.7,1) 0s up10;
1687
+ -webkit-animation-fill-mode: both;
1688
+ animation-fill-mode: both;
1689
+ box-shadow: 0 2px 4px -1px rgba(0,0,0,.3), 0 8px 30px -3px rgba(0,0,0,.25);
1690
+ border-radius: 8px;
1691
+ z-index: 9999;
1692
+ background-color: #ffffff;
1693
+ position: absolute;
1694
+ /* TODO see if these are still needed */
1695
+ margin-top: 3px;
1696
+ width: 100vw;
1697
+ padding: 0 0.5rem;
1698
+ max-width: -webkit-max-content;
1699
+ max-width: -moz-max-content;
1700
+ max-width: max-content;
1701
+ max-height: 66vh;
1702
+ overflow: visible;
1703
+ display: block;
1704
+ }
1705
+
1706
+ .refine--stored-filter-list-popup {
1707
+ -webkit-animation: .15s cubic-bezier(.45,1.1,.7,1) 0s up10;
1708
+ animation: .15s cubic-bezier(.45,1.1,.7,1) 0s up10;
1709
+ -webkit-animation-fill-mode: both;
1710
+ animation-fill-mode: both;
1711
+ box-shadow: 0 2px 4px -1px rgba(0,0,0,.3), 0 8px 30px -3px rgba(0,0,0,.25);
1712
+ border-radius: 8px;
1713
+ z-index: 9999;
1714
+ background-color: #ffffff;
1715
+ position: absolute;
1716
+ top: -8px;
1717
+ left: 100%;
1718
+ /* TODO see if these are still needed */
1719
+ margin-top: 3px;
1720
+ width: 100vw;
1721
+ padding: 0 0.5rem;
1722
+ max-width: -webkit-max-content;
1723
+ max-width: -moz-max-content;
1724
+ max-width: max-content;
1725
+ max-height: 66vh;
1726
+ display: block;
1727
+ }
1728
+
1729
+ .refine--separator {
1730
+ height: 1px;
1731
+ background-color: #eee;
1732
+ margin: 5px 0;
1733
+ }
1734
+
1735
+ .refine--separator-m0 {
1736
+ height: 1px;
1737
+ background-color: #eee;
1738
+ }
1739
+
1740
+ button.refine--apply-button {
1741
+ padding: 4px 6px;
1742
+ cursor: pointer;
1743
+ border: 1px solid #ddd;
1744
+ font-weight: 500;
1745
+ box-shadow: 0 2px 2px rgba(0,0,0,.08), 0 1px 5px -2px rgba(0,0,0,.04);
1746
+ font-size: 14px;
1747
+ border-radius: 6px;
1748
+ margin-left: 4px;
1749
+ background-color: #0c5cef;
1750
+ color: #fff;
1751
+ border-color: #0c5cef;
1752
+ }
1753
+
1754
+ .refine--stored-filters-link {
1755
+ color: black;
1756
+ display: flex;
1757
+ align-items: center;
1758
+ padding: 3px 5px;
1759
+ color: #111;
1760
+ border-radius: 6px;
1761
+ line-height: 1.15;
1762
+ margin-bottom: 5px;
1763
+ &:hover {
1764
+ background-color: #eee;
1765
+ color: #111;
1766
+ text-decoration: none;
1767
+ }
1768
+ &:before {
1769
+ content: "chevron_right";
1770
+ font-family: "Material Icons";
1771
+ font-size: 14px;
1772
+ position: absolute;
1773
+ right: 0;
1774
+ top: 50%;
1775
+ transform: translateY(-50%);
1776
+ }
1777
+ }
1778
+
1779
+ .refine--save-filter-link {
1780
+ display: flex;
1781
+ align-items: center;
1782
+ gap: 5px;
1783
+ font-size: 14px;
1784
+ padding: 3px 0;
1785
+ border: 1px solid transparent;
1786
+ border-radius: 6px;
1787
+ }
1788
+
1789
+ .refine--save-filter-input-wrapper {
1790
+ display: flex;
1791
+ gap: 5px;
1792
+ align-items: center;
1793
+ color: #111;
1794
+ position: relative;
1795
+ }
1796
+
1797
+ input.refine--save-filter-input {
1798
+ border: none;
1799
+ padding: 0;
1800
+ font-size: 14px;
1801
+ &:focus {
1802
+ outline: unset;
1803
+ border: none;
1804
+ box-shadow: none;
1805
+ }
1806
+ }
1807
+
1808
+ .refine--save-filter-input-wrapper .refine--tooltip {
1809
+ display: block;
1810
+ transform: translate3d(-50%,-4px,0);
1811
+ position: absolute;
1812
+ left: 50%;
1813
+ bottom: 100%;
1814
+ white-space: nowrap;
1815
+ background-color: #000;
1816
+ color: #fff;
1817
+ border-radius: 6px;
1818
+ box-shadow: 0 2px 12px -2px rgba(0,0,0,.15);
1819
+ padding: 4px 8px;
1820
+ font-size: 12px;
1821
+ z-index: 9999;
1822
+ }
1823
+
1824
+ .refine--hotkey {
1825
+ border-radius: 4px;
1826
+ background-color: rgba(255,255,255,.3);
1827
+ display: inline-block;
1828
+ padding: 0 4px;
1829
+ }
1830
+
1831
+ .refine--condition-list .refine--list-icon,
1832
+ .refine--stored-filters-link .refine--list-icon {
1833
+ width: 16px;
1834
+ text-align: center;
1835
+ margin-right: 10px;
1836
+ font-size: 16px;
1837
+ }
1838
+
1839
+ .material-icons-outlined.refine--icon-sm,
1840
+ .material-icons.refine--icon-sm,
1841
+ .icon.refine--icon-sm {
1842
+ font-size: 14px;
1843
+ }
1844
+
1845
+ .refine--search-box {
1846
+ position: relative;
1847
+ padding: 10px;
1848
+ margin-left: -6px;
1849
+ margin-right: 6px;
1850
+ }
1851
+
1852
+ input.refine--search-trigger[type="text"] {
1853
+ width: 100%;
1854
+ font-size: 14px;
1855
+ display: block;
1856
+ padding: 5px 5px 5px 25px;
1857
+ border: 1px solid #bbb;
1858
+ border-radius: 6px;
1859
+ outline: 0;
1860
+ line-height: 1.15;
1861
+ }
1862
+
1863
+ .material-icons.refine--icon-search {
1864
+ position: absolute;
1865
+ top: 50%;
1866
+ left: 16px;
1867
+ font-size: 16px;
1868
+ color: #999;
1869
+ transform: translateY(-50%);
1870
+ line-height: 18px;
1871
+ }
1872
+
1873
+