@nex125/seatmap-editor 0.1.6 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css ADDED
@@ -0,0 +1,1483 @@
1
+ /* src/SeatmapEditor.css */
2
+ .seatmap-editor {
3
+ --seatmap-surface: var(--ds-surface-container-low, #181818);
4
+ --seatmap-surface-elevated: var(--ds-surface, #131313);
5
+ --seatmap-surface-muted: var(--ds-surface-container, rgba(30, 30, 30, 0.82));
6
+ --seatmap-on-surface: var(--ds-on-surface, #e5e2e1);
7
+ --seatmap-on-surface-variant: var(--ds-on-surface-variant, #9a9694);
8
+ --seatmap-outline: var(--ds-input-border, #3a3836);
9
+ --seatmap-outline-variant: var(--ds-border-subtle, #2b2a29);
10
+ --seatmap-primary: var(--ds-primary, #dfcd72);
11
+ --seatmap-on-primary: var(--ds-on-primary, #1a1816);
12
+ --seatmap-radius-sm: var(--ds-radius-functional, 4px);
13
+ --seatmap-radius-md: var(--ds-radius-structural, 8px);
14
+ --seatmap-shadow-raised: var(--ds-shadow-ambient-sm, 0 8px 20px rgba(0, 0, 0, 0.22));
15
+ --seatmap-focus-ring: color-mix(in srgb, var(--seatmap-primary) 36%, transparent);
16
+ --seatmap-state-layer-hover: color-mix(in srgb, var(--seatmap-primary) 12%, transparent);
17
+ --seatmap-state-layer-pressed: color-mix(in srgb, var(--seatmap-primary) 18%, transparent);
18
+ --seatmap-editor-surface: var(--seatmap-surface);
19
+ --seatmap-editor-surface-elevated: var(--seatmap-surface-elevated);
20
+ --seatmap-editor-surface-muted: var(--seatmap-surface-muted);
21
+ --seatmap-editor-surface-lowest: var(--ds-surface-container-lowest, #0f0f0f);
22
+ --seatmap-editor-control-surface: var(--ds-surface-container-high, #242424);
23
+ --seatmap-editor-border: var(--seatmap-outline);
24
+ --seatmap-editor-border-subtle: var(--seatmap-outline-variant);
25
+ --seatmap-editor-text: var(--seatmap-on-surface);
26
+ --seatmap-editor-text-muted: var(--seatmap-on-surface-variant);
27
+ --seatmap-editor-text-strong: color-mix(in srgb, var(--seatmap-editor-text) 88%, var(--seatmap-editor-text-muted));
28
+ --seatmap-editor-accent: var(--seatmap-primary);
29
+ --seatmap-editor-accent-text: var(--seatmap-on-primary);
30
+ --seatmap-editor-radius-sm: var(--seatmap-radius-sm);
31
+ --seatmap-editor-radius-md: var(--seatmap-radius-md);
32
+ --seatmap-editor-radius-pill: var(--ds-radius-pill, 999px);
33
+ --seatmap-editor-shadow-overlay: var(--seatmap-shadow-raised);
34
+ --seatmap-editor-overlay-info-stroke: rgba(100, 180, 255, 0.8);
35
+ --seatmap-editor-overlay-info-fill: rgba(100, 180, 255, 0.1);
36
+ --seatmap-editor-overlay-success-stroke: rgba(100, 255, 100, 0.8);
37
+ --seatmap-editor-overlay-warning-stroke: rgba(255, 193, 110, 0.9);
38
+ --seatmap-editor-overlay-warning-fill: rgba(255, 193, 110, 0.08);
39
+ --seatmap-editor-overlay-label-bg: rgba(15, 15, 25, 0.9);
40
+ --seatmap-editor-overlay-label-text: #ffd38a;
41
+ --seatmap-editor-overlay-label-border: rgba(255, 193, 110, 0.65);
42
+ --seatmap-editor-scrollbar-size: 11px;
43
+ --seatmap-editor-scrollbar-track: color-mix(in srgb, var(--seatmap-editor-surface-elevated) 64%, transparent);
44
+ --seatmap-editor-scrollbar-thumb: color-mix(in srgb, var(--seatmap-editor-border) 90%, var(--seatmap-editor-text) 10%);
45
+ --seatmap-editor-scrollbar-thumb-hover: color-mix(in srgb, var(--seatmap-editor-border) 80%, var(--seatmap-editor-accent) 20%);
46
+ --seatmap-editor-scrollbar-thumb-active: color-mix(in srgb, var(--seatmap-editor-border) 72%, var(--seatmap-editor-accent) 28%);
47
+ --seatmap-editor-sidebar-surface: var(--ds-surface-container-low, #181818);
48
+ --seatmap-editor-sidebar-separator-wash: color-mix(in srgb, var(--ds-surface-container-lowest, #0f0f0f) 72%, transparent);
49
+ --seatmap-editor-panel-card-bg: color-mix(in srgb, var(--seatmap-editor-surface-muted) 92%, transparent);
50
+ --seatmap-editor-toolbar-bg: color-mix(in srgb, var(--seatmap-editor-surface) 84%, transparent);
51
+ --seatmap-editor-toolbar-separator-wash: color-mix(in srgb, var(--seatmap-editor-border-subtle) 78%, transparent);
52
+ --seatmap-editor-toolbar-button-hover-bg: color-mix(in srgb, var(--seatmap-editor-control-surface) 72%, var(--seatmap-editor-text) 28%);
53
+ --seatmap-editor-toolbar-button-hover-border: color-mix(in srgb, var(--seatmap-editor-border) 52%, var(--seatmap-editor-text) 48%);
54
+ --seatmap-editor-toolbar-button-active-bg: color-mix(in srgb, var(--seatmap-editor-accent) 34%, var(--seatmap-editor-control-surface));
55
+ --seatmap-editor-toolbar-button-active-border: color-mix(in srgb, var(--seatmap-editor-accent) 58%, var(--seatmap-editor-surface-lowest));
56
+ --seatmap-editor-toolbar-button-highlight-ring: color-mix(in srgb, var(--seatmap-editor-accent) 50%, transparent);
57
+ --seatmap-editor-toolbar-button-focus-ring: color-mix(in srgb, var(--seatmap-editor-accent) 36%, transparent);
58
+ --seatmap-editor-tool-options-bg: color-mix(in srgb, var(--seatmap-editor-surface-elevated) 96%, transparent);
59
+ --seatmap-editor-tool-options-bridge-bg: color-mix(in srgb, var(--seatmap-editor-surface-elevated) 74%, transparent);
60
+ --seatmap-editor-tool-options-bridge-top-bg: color-mix(in srgb, var(--seatmap-editor-surface-elevated) 88%, transparent);
61
+ --seatmap-editor-tool-options-bridge-blur: 14px;
62
+ --seatmap-editor-tool-options-shell-blur: 8px;
63
+ --seatmap-editor-option-card-title-subtle: color-mix(in srgb, var(--seatmap-editor-text-muted) 82%, white);
64
+ --seatmap-editor-option-divider-wash: color-mix(in srgb, var(--seatmap-editor-border-subtle) 80%, transparent);
65
+ --seatmap-editor-table-row-bg: color-mix(in srgb, var(--seatmap-editor-surface-muted) 92%, transparent);
66
+ --seatmap-editor-motion-group-divider: color-mix(in srgb, var(--seatmap-editor-text-muted) 62%, var(--seatmap-editor-border-subtle));
67
+ --seatmap-editor-canvas-edge-shadow: inset 0 -10px 14px -14px rgb(0 0 0 / 0.85);
68
+ --seatmap-editor-sidebar-edge-shadow: inset 12px 0 18px -20px rgb(0 0 0 / 0.7);
69
+ --seatmap-editor-background-guide-stroke: color-mix(in srgb, var(--seatmap-editor-overlay-info-stroke) 90%, white 10%);
70
+ --seatmap-editor-background-guide-shadow: 0 0 0 1px color-mix(in srgb, var(--seatmap-editor-surface-lowest) 76%, var(--seatmap-editor-overlay-info-stroke)) inset;
71
+ --seatmap-editor-background-handle-fill: color-mix(in srgb, var(--seatmap-editor-overlay-info-stroke) 88%, white 12%);
72
+ --seatmap-editor-background-handle-stroke: color-mix(in srgb, var(--seatmap-editor-overlay-info-stroke) 45%, var(--seatmap-editor-surface-lowest));
73
+ --seatmap-editor-hint-surface: color-mix(in srgb, var(--seatmap-editor-surface-lowest) 86%, transparent);
74
+ --seatmap-editor-hint-border: color-mix(in srgb, var(--seatmap-editor-overlay-info-stroke) 62%, transparent);
75
+ --seatmap-editor-hint-text: color-mix(in srgb, var(--seatmap-editor-text) 90%, var(--seatmap-editor-overlay-info-stroke));
76
+ --seatmap-editor-hint-shadow: 0 6px 18px rgb(0 0 0 / 0.35);
77
+ --seatmap-editor-status-success: color-mix(in srgb, var(--ds-tertiary, #1f6fe0) 42%, var(--seatmap-editor-text) 58%);
78
+ --seatmap-editor-status-error: color-mix(in srgb, var(--seatmap-editor-danger, #ad3f3f) 65%, var(--seatmap-editor-text) 35%);
79
+ --seatmap-editor-status-idle: color-mix(in srgb, var(--seatmap-editor-text-muted) 82%, var(--seatmap-editor-text) 18%);
80
+ --seatmap-editor-overlay-row-direction-stroke: color-mix(in srgb, var(--seatmap-editor-overlay-warning-stroke) 92%, white 8%);
81
+ --seatmap-editor-overlay-row-direction-fill: color-mix(in srgb, var(--seatmap-editor-overlay-warning-stroke) 28%, transparent);
82
+ --seatmap-editor-overlay-row-direction-origin-stroke: color-mix(in srgb, var(--seatmap-editor-overlay-warning-stroke) 78%, var(--seatmap-editor-surface-lowest));
83
+ --seatmap-editor-overlay-row-direction-origin-fill: color-mix(in srgb, var(--seatmap-editor-overlay-warning-stroke) 35%, transparent);
84
+ --seatmap-editor-font-body:
85
+ Inter,
86
+ system-ui,
87
+ sans-serif;
88
+ --seatmap-editor-font-heading:
89
+ Manrope,
90
+ Inter,
91
+ system-ui,
92
+ sans-serif;
93
+ --seatmap-editor-type-title-size: var(--ds-heading-sm-size, 1rem);
94
+ --seatmap-editor-type-body-size: var(--ds-body-sm-size, 0.875rem);
95
+ --seatmap-editor-type-label-size: var(--ds-label-sm-size, 0.625rem);
96
+ }
97
+ .seatmap-editor * {
98
+ scrollbar-width: thin;
99
+ scrollbar-color: var(--seatmap-editor-scrollbar-thumb) var(--seatmap-editor-scrollbar-track);
100
+ }
101
+ .seatmap-editor *::-webkit-scrollbar {
102
+ width: var(--seatmap-editor-scrollbar-size);
103
+ height: var(--seatmap-editor-scrollbar-size);
104
+ }
105
+ .seatmap-editor *::-webkit-scrollbar-track {
106
+ background: var(--seatmap-editor-scrollbar-track);
107
+ }
108
+ .seatmap-editor *::-webkit-scrollbar-thumb {
109
+ background: var(--seatmap-editor-scrollbar-thumb);
110
+ border-radius: 999px;
111
+ border: 2px solid transparent;
112
+ background-clip: content-box;
113
+ }
114
+ .seatmap-editor *::-webkit-scrollbar-thumb:hover {
115
+ background: var(--seatmap-editor-scrollbar-thumb-hover);
116
+ background-clip: content-box;
117
+ }
118
+ .seatmap-editor *::-webkit-scrollbar-thumb:active {
119
+ background: var(--seatmap-editor-scrollbar-thumb-active);
120
+ background-clip: content-box;
121
+ }
122
+ .seatmap-editor--root,
123
+ .seatmap-editor__host {
124
+ display: flex;
125
+ flex-direction: column;
126
+ width: 100%;
127
+ height: 100%;
128
+ }
129
+ .seatmap-editor__canvas-layout {
130
+ display: flex;
131
+ flex: 1;
132
+ min-height: 0;
133
+ overflow: hidden;
134
+ }
135
+ .seatmap-editor__toolbar {
136
+ display: flex;
137
+ flex-direction: column;
138
+ width: 100%;
139
+ background: var(--seatmap-editor-toolbar-bg);
140
+ box-shadow: var(--seatmap-editor-canvas-edge-shadow);
141
+ backdrop-filter: blur(8px);
142
+ }
143
+ .seatmap-editor__toolbar-row {
144
+ display: flex;
145
+ width: 100%;
146
+ gap: 6px;
147
+ align-items: flex-start;
148
+ }
149
+ .seatmap-editor__toolbar-row--primary {
150
+ padding: 10px 12px;
151
+ align-items: top;
152
+ flex-wrap: wrap;
153
+ }
154
+ .seatmap-editor__toolbar-divider {
155
+ width: 8px;
156
+ height: 24px;
157
+ background:
158
+ linear-gradient(
159
+ to right,
160
+ transparent,
161
+ var(--seatmap-editor-toolbar-separator-wash),
162
+ transparent);
163
+ margin: 0 4px;
164
+ }
165
+ .seatmap-editor__toolbar-button {
166
+ appearance: none;
167
+ -webkit-appearance: none;
168
+ border: 1px solid var(--seatmap-editor-border);
169
+ border-radius: var(--seatmap-editor-radius-pill, 999px);
170
+ background: var(--seatmap-editor-control-surface);
171
+ color: var(--seatmap-editor-text);
172
+ cursor: pointer;
173
+ font-size: var(--seatmap-editor-type-body-size);
174
+ line-height: 1.1;
175
+ font-family: var(--seatmap-editor-font-body);
176
+ font-weight: 500;
177
+ letter-spacing: 0.2px;
178
+ min-height: 34px;
179
+ padding: 0 12px;
180
+ display: inline-flex;
181
+ align-items: center;
182
+ justify-content: center;
183
+ gap: 6px;
184
+ transition:
185
+ border-color 150ms ease,
186
+ background-color 150ms ease,
187
+ box-shadow 150ms ease,
188
+ transform 150ms ease;
189
+ }
190
+ .seatmap-editor__toolbar-button:hover:not(:disabled) {
191
+ background: var(--seatmap-editor-toolbar-button-hover-bg);
192
+ border-color: var(--seatmap-editor-toolbar-button-hover-border);
193
+ }
194
+ .seatmap-editor__toolbar-button:focus-visible {
195
+ outline: none;
196
+ box-shadow: 0 0 0 2px var(--seatmap-editor-toolbar-button-focus-ring);
197
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
198
+ }
199
+ .seatmap-editor__toolbar-button:disabled {
200
+ cursor: default;
201
+ opacity: 0.42;
202
+ }
203
+ .seatmap-editor__toolbar-button.is-active {
204
+ background: var(--seatmap-editor-toolbar-button-active-bg);
205
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
206
+ color: var(--seatmap-editor-accent-text);
207
+ }
208
+ .seatmap-editor__toolbar-button.is-highlighted {
209
+ box-shadow: 0 0 0 1px var(--seatmap-editor-toolbar-button-highlight-ring) inset;
210
+ }
211
+ .seatmap-editor__toolbar-tool-button {
212
+ min-width: 94px;
213
+ }
214
+ .seatmap-editor__toolbar-icon {
215
+ width: 16px;
216
+ height: 16px;
217
+ flex-shrink: 0;
218
+ }
219
+ .seatmap-editor__toolbar-button > span:last-child {
220
+ transform: translateY(0.2px);
221
+ }
222
+ .seatmap-editor__tool-options-overlay {
223
+ position: absolute;
224
+ top: 12px;
225
+ bottom: 12px;
226
+ left: 12px;
227
+ right: 12px;
228
+ z-index: 20;
229
+ pointer-events: none;
230
+ }
231
+ .seatmap-editor__tool-options-overlay::before {
232
+ content: "";
233
+ position: absolute;
234
+ top: -12px;
235
+ left: 0;
236
+ right: 0;
237
+ height: 14px;
238
+ pointer-events: none;
239
+ background:
240
+ linear-gradient(
241
+ to bottom,
242
+ var(--seatmap-editor-tool-options-bridge-top-bg) 0%,
243
+ color-mix(in srgb, var(--seatmap-editor-tool-options-bridge-top-bg) 82%, transparent) 55%,
244
+ transparent 100%);
245
+ backdrop-filter: blur(var(--seatmap-editor-tool-options-bridge-blur));
246
+ }
247
+ .seatmap-editor__tool-options-overlay::after {
248
+ content: "";
249
+ position: absolute;
250
+ top: 0;
251
+ right: -12px;
252
+ bottom: 0;
253
+ width: 14px;
254
+ pointer-events: none;
255
+ background:
256
+ linear-gradient(
257
+ to right,
258
+ transparent 0%,
259
+ var(--seatmap-editor-tool-options-bridge-bg) 65%,
260
+ var(--seatmap-editor-tool-options-bridge-bg) 100%);
261
+ backdrop-filter: blur(var(--seatmap-editor-tool-options-bridge-blur));
262
+ }
263
+ .seatmap-editor__tool-options-shell {
264
+ display: flex;
265
+ align-items: flex-start;
266
+ align-content: flex-start;
267
+ flex-wrap: wrap;
268
+ gap: 10px;
269
+ padding: 8px 12px;
270
+ border: 1px solid var(--seatmap-editor-border);
271
+ border-radius: var(--seatmap-editor-radius-md);
272
+ background: var(--seatmap-editor-tool-options-bg);
273
+ backdrop-filter: blur(var(--seatmap-editor-tool-options-shell-blur));
274
+ box-shadow: var(--seatmap-editor-shadow-overlay);
275
+ pointer-events: auto;
276
+ max-height: 100%;
277
+ overflow-y: auto;
278
+ }
279
+ .seatmap-editor__tool-options-title {
280
+ color: var(--seatmap-editor-text-strong);
281
+ font-size: var(--seatmap-editor-type-body-size);
282
+ font-family: var(--seatmap-editor-font-heading);
283
+ font-weight: 600;
284
+ letter-spacing: 0.2px;
285
+ }
286
+ .seatmap-editor__tool-options-divider {
287
+ width: 8px;
288
+ height: 18px;
289
+ background:
290
+ linear-gradient(
291
+ to right,
292
+ transparent,
293
+ var(--seatmap-editor-toolbar-separator-wash),
294
+ transparent);
295
+ }
296
+ .seatmap-editor__option-card {
297
+ display: flex;
298
+ flex-direction: column;
299
+ align-items: flex-start;
300
+ gap: 8px;
301
+ padding: 8px 10px;
302
+ border: 1px solid var(--seatmap-editor-border);
303
+ border-radius: calc(var(--seatmap-editor-radius-md) - 2px);
304
+ background: var(--seatmap-editor-surface-muted);
305
+ }
306
+ .seatmap-editor__option-card-title {
307
+ color: var(--seatmap-editor-text-strong);
308
+ font-size: var(--seatmap-editor-type-body-size);
309
+ font-family: var(--seatmap-editor-font-heading);
310
+ font-weight: 600;
311
+ }
312
+ .seatmap-editor__option-card-title--subtle {
313
+ color: var(--seatmap-editor-option-card-title-subtle);
314
+ font-size: var(--seatmap-editor-type-label-size);
315
+ text-transform: uppercase;
316
+ letter-spacing: 0.25px;
317
+ }
318
+ .seatmap-editor__option-card-title--group {
319
+ width: 100%;
320
+ text-align: center;
321
+ letter-spacing: 0.2px;
322
+ }
323
+ .seatmap-editor__option-card-subdivider {
324
+ width: 100%;
325
+ height: 8px;
326
+ background:
327
+ linear-gradient(
328
+ to bottom,
329
+ transparent,
330
+ var(--seatmap-editor-option-divider-wash),
331
+ transparent);
332
+ }
333
+ .seatmap-editor__option-card-body {
334
+ width: 100%;
335
+ display: flex;
336
+ flex-direction: column;
337
+ align-items: flex-start;
338
+ gap: 8px;
339
+ }
340
+ .seatmap-editor__option-card-divider {
341
+ width: 100%;
342
+ height: 8px;
343
+ background:
344
+ linear-gradient(
345
+ to bottom,
346
+ transparent,
347
+ var(--seatmap-editor-option-divider-wash),
348
+ transparent);
349
+ }
350
+ .seatmap-editor__option-row {
351
+ display: flex;
352
+ align-items: center;
353
+ gap: 6px;
354
+ }
355
+ .seatmap-editor__option-row--end {
356
+ justify-content: flex-end;
357
+ }
358
+ .seatmap-editor__label {
359
+ color: var(--seatmap-editor-text-muted);
360
+ font-size: var(--seatmap-editor-type-label-size);
361
+ font-family: var(--seatmap-editor-font-body);
362
+ text-transform: uppercase;
363
+ letter-spacing: 0.08em;
364
+ }
365
+ .seatmap-editor__hint-text {
366
+ color: var(--seatmap-editor-text-muted);
367
+ font-size: var(--seatmap-editor-type-label-size);
368
+ font-family: var(--seatmap-editor-font-body);
369
+ }
370
+ .seatmap-editor__toolbar-shortcuts-panel {
371
+ display: flex;
372
+ flex-direction: column;
373
+ align-items: flex-start;
374
+ gap: 2px;
375
+ padding: 4px 7px;
376
+ margin-left: auto;
377
+ border: 1px solid var(--seatmap-editor-border);
378
+ border-radius: calc(var(--seatmap-editor-radius-md) - 2px);
379
+ background: color-mix(in srgb, var(--seatmap-editor-surface-muted) 92%, transparent);
380
+ }
381
+ .seatmap-editor__toolbar-shortcuts-row {
382
+ display: flex;
383
+ flex-direction: column;
384
+ align-items: center;
385
+ align-items: flex-start;
386
+ gap: 1px;
387
+ color: var(--seatmap-editor-text-muted);
388
+ font-size: var(--seatmap-editor-type-label-size);
389
+ font-family: var(--seatmap-editor-font-body);
390
+ }
391
+ .seatmap-editor__toolbar-shortcuts-title {
392
+ color: var(--seatmap-editor-text-strong);
393
+ font-size: var(--seatmap-editor-type-label-size);
394
+ font-family: var(--seatmap-editor-font-heading);
395
+ font-weight: 600;
396
+ letter-spacing: 0.2px;
397
+ }
398
+ .seatmap-editor__motion-slider {
399
+ width: 100%;
400
+ display: flex;
401
+ flex-direction: column;
402
+ gap: 6px;
403
+ }
404
+ .seatmap-editor__motion-slider.is-disabled {
405
+ opacity: 0.55;
406
+ }
407
+ .seatmap-editor__motion-slider.is-disabled .seatmap-editor__motion-knob {
408
+ cursor: not-allowed;
409
+ border-color: var(--seatmap-editor-border-subtle);
410
+ }
411
+ .seatmap-editor__motion-slider.is-disabled .seatmap-editor__motion-knob-indicator {
412
+ background: var(--seatmap-editor-text-muted);
413
+ }
414
+ .seatmap-editor__motion-slider-header {
415
+ display: flex;
416
+ align-items: center;
417
+ justify-content: space-between;
418
+ gap: 8px;
419
+ }
420
+ .seatmap-editor__motion-slider-value {
421
+ color: var(--seatmap-editor-text-strong);
422
+ font-size: var(--seatmap-editor-type-label-size);
423
+ font-family: var(--seatmap-editor-font-body);
424
+ font-weight: 600;
425
+ min-width: 28px;
426
+ text-align: right;
427
+ }
428
+ .seatmap-editor__motion-advanced-header {
429
+ display: flex;
430
+ align-items: center;
431
+ justify-content: space-between;
432
+ gap: 8px;
433
+ }
434
+ .seatmap-editor__motion-knob-row {
435
+ display: flex;
436
+ align-items: center;
437
+ gap: 4px;
438
+ }
439
+ .seatmap-editor__motion-control-grid {
440
+ width: 100%;
441
+ display: flex;
442
+ flex-direction: column;
443
+ gap: 6px;
444
+ }
445
+ .seatmap-editor__motion-control-grid.is-knob-grid {
446
+ display: grid;
447
+ grid-template-columns: repeat(4, minmax(0, 1fr));
448
+ gap: 5px 4px;
449
+ }
450
+ .seatmap-editor__motion-slider--compact-knob {
451
+ align-items: center;
452
+ text-align: center;
453
+ gap: 4px;
454
+ }
455
+ .seatmap-editor__motion-slider--compact-knob .seatmap-editor__motion-slider-header {
456
+ flex-direction: column;
457
+ justify-content: center;
458
+ align-items: center;
459
+ gap: 2px;
460
+ min-height: 28px;
461
+ width: 100%;
462
+ }
463
+ .seatmap-editor__motion-slider--compact-knob .seatmap-editor__label {
464
+ text-transform: none;
465
+ letter-spacing: 0.02em;
466
+ font-size: 11px;
467
+ width: 100%;
468
+ white-space: nowrap;
469
+ overflow: hidden;
470
+ text-overflow: ellipsis;
471
+ }
472
+ .seatmap-editor__motion-slider--compact-knob .seatmap-editor__motion-slider-value {
473
+ min-width: 0;
474
+ text-align: center;
475
+ }
476
+ .seatmap-editor__motion-slider--compact-knob .seatmap-editor__motion-knob {
477
+ width: 30px;
478
+ height: 30px;
479
+ }
480
+ .seatmap-editor__motion-slider--compact-knob .seatmap-editor__motion-knob::after {
481
+ inset: 7px;
482
+ }
483
+ .seatmap-editor__motion-slider--compact-knob .seatmap-editor__motion-knob-indicator {
484
+ height: 8px;
485
+ }
486
+ .seatmap-editor__motion-slider--label-value-knob {
487
+ gap: 0;
488
+ }
489
+ .seatmap-editor__motion-slider--label-value-knob .seatmap-editor__motion-knob-row--label-value-knob {
490
+ width: 100%;
491
+ display: grid;
492
+ grid-template-columns: minmax(0, 1fr) auto auto;
493
+ align-items: center;
494
+ column-gap: 6px;
495
+ }
496
+ .seatmap-editor__motion-slider--label-value-knob .seatmap-editor__label {
497
+ text-transform: none;
498
+ letter-spacing: 0.02em;
499
+ font-size: 11px;
500
+ white-space: nowrap;
501
+ }
502
+ .seatmap-editor__motion-slider--label-value-knob .seatmap-editor__motion-slider-value {
503
+ min-width: 40px;
504
+ text-align: right;
505
+ }
506
+ .seatmap-editor__motion-slider-value--knob {
507
+ min-width: 44px;
508
+ text-align: left;
509
+ }
510
+ .seatmap-editor__motion-knob-right-content {
511
+ margin-left: auto;
512
+ display: flex;
513
+ align-items: center;
514
+ }
515
+ .seatmap-editor__motion-knob {
516
+ position: relative;
517
+ width: 34px;
518
+ height: 34px;
519
+ border: 1px solid var(--seatmap-editor-border);
520
+ border-radius: 50%;
521
+ background: var(--seatmap-editor-control-surface);
522
+ cursor: ns-resize;
523
+ flex: 0 0 auto;
524
+ }
525
+ .seatmap-editor__motion-knob-ring {
526
+ position: absolute;
527
+ inset: 3px;
528
+ border-radius: 50%;
529
+ }
530
+ .seatmap-editor__motion-knob-ring--motion {
531
+ background:
532
+ conic-gradient(
533
+ from var(--motion-knob-start-angle, -130deg),
534
+ var(--seatmap-editor-accent) 0%,
535
+ var(--seatmap-editor-accent) var(--motion-knob-fill, 0%),
536
+ color-mix(in srgb, var(--seatmap-editor-border-subtle) 90%, transparent) var(--motion-knob-fill, 0%),
537
+ color-mix(in srgb, var(--seatmap-editor-border-subtle) 90%, transparent) 100%);
538
+ }
539
+ .seatmap-editor__motion-knob-ring--tool {
540
+ background:
541
+ conic-gradient(
542
+ from var(--tool-knob-start-angle, -130deg),
543
+ var(--seatmap-editor-accent) 0%,
544
+ var(--seatmap-editor-accent) var(--tool-knob-fill, 0%),
545
+ color-mix(in srgb, var(--seatmap-editor-border-subtle) 90%, transparent) var(--tool-knob-fill, 0%),
546
+ color-mix(in srgb, var(--seatmap-editor-border-subtle) 90%, transparent) 100%);
547
+ }
548
+ .seatmap-editor__motion-knob::after {
549
+ content: "";
550
+ position: absolute;
551
+ inset: 8px;
552
+ border-radius: 50%;
553
+ background: var(--seatmap-editor-control-surface);
554
+ }
555
+ .seatmap-editor__motion-knob-indicator {
556
+ position: absolute;
557
+ left: 50%;
558
+ top: 50%;
559
+ width: 2px;
560
+ height: 10px;
561
+ border-radius: 2px;
562
+ background: var(--seatmap-editor-text);
563
+ transform-origin: 50% 100%;
564
+ z-index: 1;
565
+ }
566
+ .seatmap-editor__option-card--motion {
567
+ --seatmap-motion-col-width: min(420px, calc((100% - 12px) / 2));
568
+ --seatmap-motion-compact-knob-row-height: 64px;
569
+ --seatmap-motion-grid-row-gap: 5px;
570
+ --seatmap-motion-advanced-max-height: calc( (var(--seatmap-motion-compact-knob-row-height) * 3) + (var(--seatmap-motion-grid-row-gap) * 2) );
571
+ width: fit-content;
572
+ max-width: min(980px, 96vw);
573
+ display: flex;
574
+ flex-direction: column;
575
+ }
576
+ .seatmap-editor__option-card--motion .seatmap-editor__option-card-title--group {
577
+ width: 100%;
578
+ align-self: stretch;
579
+ text-align: left;
580
+ }
581
+ .seatmap-editor__option-card--motion .seatmap-editor__option-card-body {
582
+ max-height: min(54vh, 430px);
583
+ overflow-y: visible;
584
+ overflow-x: hidden;
585
+ padding-right: 4px;
586
+ }
587
+ .seatmap-editor__motion-layout {
588
+ width: 100%;
589
+ display: flex;
590
+ align-items: flex-start;
591
+ gap: 8px;
592
+ height: auto;
593
+ min-height: 0;
594
+ }
595
+ .seatmap-editor__motion-column {
596
+ flex: 0 0 var(--seatmap-motion-col-width);
597
+ max-width: var(--seatmap-motion-col-width);
598
+ min-width: 0;
599
+ box-sizing: border-box;
600
+ display: flex;
601
+ flex-direction: column;
602
+ gap: 6px;
603
+ min-height: 0;
604
+ overflow-x: hidden;
605
+ overflow-y: auto;
606
+ padding-right: 0;
607
+ }
608
+ .seatmap-editor__option-card--motion:not(.is-advanced-open) .seatmap-editor__motion-column--basic {
609
+ flex: 1 1 100%;
610
+ max-width: 100%;
611
+ }
612
+ .seatmap-editor__option-card--motion.is-advanced-open .seatmap-editor__motion-column {
613
+ flex: 0 0 var(--seatmap-motion-col-width);
614
+ max-width: var(--seatmap-motion-col-width);
615
+ }
616
+ .seatmap-editor__option-card--motion.is-advanced-open .seatmap-editor__motion-column--basic {
617
+ overflow-y: auto;
618
+ }
619
+ .seatmap-editor__motion-column--basic {
620
+ padding-right: 2px;
621
+ }
622
+ .seatmap-editor__motion-column--advanced {
623
+ overflow-x: hidden;
624
+ overflow-y: auto;
625
+ max-height: var(--seatmap-motion-advanced-max-height);
626
+ padding-right: 2px;
627
+ }
628
+ .seatmap-editor__motion-column--advanced {
629
+ border-left: 1px solid var(--seatmap-editor-border-subtle);
630
+ padding-left: 8px;
631
+ }
632
+ .seatmap-editor__motion-column--advanced .seatmap-editor__option-card-divider {
633
+ background: color-mix(in srgb, var(--seatmap-editor-border-subtle) 68%, white);
634
+ }
635
+ .seatmap-editor__motion-column--advanced .seatmap-editor__motion-group-divider {
636
+ display: none;
637
+ }
638
+ .seatmap-editor__motion-advanced-actions {
639
+ position: sticky;
640
+ bottom: 0;
641
+ z-index: 1;
642
+ width: 100%;
643
+ display: flex;
644
+ justify-content: flex-end;
645
+ padding-top: 6px;
646
+ padding-bottom: 2px;
647
+ background:
648
+ linear-gradient(
649
+ to top,
650
+ var(--seatmap-editor-surface-muted) 70%,
651
+ color-mix(in srgb, var(--seatmap-editor-surface-muted) 40%, transparent));
652
+ }
653
+ .seatmap-editor__motion-basic-actions {
654
+ width: 100%;
655
+ }
656
+ .seatmap-editor__motion-group-divider {
657
+ width: 90%;
658
+ height: 1px;
659
+ min-height: 1px;
660
+ margin: 0px 5% 0px;
661
+ border-radius: 1px;
662
+ background: var(--seatmap-editor-motion-group-divider);
663
+ opacity: 0.80;
664
+ flex: 0 0 auto;
665
+ align-self: left;
666
+ }
667
+ @media (max-width: 1080px) {
668
+ .seatmap-editor__motion-layout {
669
+ flex-direction: column;
670
+ }
671
+ .seatmap-editor__option-card--motion .seatmap-editor__option-card-title--group {
672
+ width: 100%;
673
+ }
674
+ .seatmap-editor__motion-column {
675
+ flex: 1 1 auto;
676
+ max-width: none;
677
+ }
678
+ .seatmap-editor__motion-column--advanced {
679
+ border-left: none;
680
+ border-top: 1px solid var(--seatmap-editor-border-subtle);
681
+ padding-left: 0;
682
+ padding-top: 10px;
683
+ }
684
+ }
685
+ .seatmap-editor__row-presets {
686
+ display: flex;
687
+ flex-direction: column;
688
+ gap: 4px;
689
+ align-items: flex-start;
690
+ }
691
+ .seatmap-editor__row-layout-body {
692
+ display: flex;
693
+ align-items: stretch;
694
+ gap: 6px;
695
+ }
696
+ .seatmap-editor__row-layout-controls {
697
+ display: flex;
698
+ flex-direction: column;
699
+ gap: 8px;
700
+ }
701
+ .seatmap-editor__row-layout-separator {
702
+ width: 1px;
703
+ align-self: stretch;
704
+ background: var(--seatmap-editor-border-subtle);
705
+ }
706
+ .seatmap-editor__row-presets-table {
707
+ border-collapse: separate;
708
+ border-spacing: 2px;
709
+ table-layout: fixed;
710
+ font-family: var(--seatmap-editor-font-body);
711
+ font-size: var(--seatmap-editor-type-label-size);
712
+ }
713
+ .seatmap-editor__row-presets-table td {
714
+ border: 0;
715
+ padding: 0;
716
+ text-align: center;
717
+ }
718
+ .seatmap-editor__row-presets-table th.seatmap-editor__row-preset-row-label {
719
+ border: 0;
720
+ padding: 0 3px 0 0;
721
+ text-align: right;
722
+ font-weight: 500;
723
+ font-size: 11px;
724
+ color: color-mix(in srgb, var(--seatmap-editor-text-muted, var(--seatmap-editor-text)) 72%, transparent);
725
+ line-height: 1;
726
+ white-space: nowrap;
727
+ opacity: 0.85;
728
+ }
729
+ .seatmap-editor__row-preset-button {
730
+ appearance: none;
731
+ -webkit-appearance: none;
732
+ min-width: 31px;
733
+ min-height: 22px;
734
+ border: 1px solid var(--seatmap-editor-border);
735
+ border-radius: var(--seatmap-editor-radius-sm);
736
+ background: var(--seatmap-editor-control-surface);
737
+ color: var(--seatmap-editor-text);
738
+ padding: 1px 2px;
739
+ font-size: var(--seatmap-editor-type-label-size);
740
+ font-family: var(--seatmap-editor-font-body);
741
+ cursor: pointer;
742
+ }
743
+ .seatmap-editor__row-preset-button:hover {
744
+ border-color: color-mix(in srgb, var(--seatmap-editor-border) 50%, var(--seatmap-editor-text) 50%);
745
+ }
746
+ .seatmap-editor__row-preset-button.is-active {
747
+ background: color-mix(in srgb, var(--seatmap-editor-accent) 30%, var(--seatmap-editor-control-surface));
748
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
749
+ color: var(--seatmap-editor-accent-text);
750
+ }
751
+ .seatmap-editor__segmented-button {
752
+ appearance: none;
753
+ -webkit-appearance: none;
754
+ padding: 4px 8px;
755
+ border-radius: calc(var(--seatmap-editor-radius-md) - 2px);
756
+ border: 1px solid var(--seatmap-editor-border);
757
+ background: var(--seatmap-editor-segmented-bg, var(--seatmap-editor-control-surface));
758
+ color: var(--seatmap-editor-segmented-fg, var(--seatmap-editor-text));
759
+ cursor: pointer;
760
+ font-size: var(--seatmap-editor-type-body-size);
761
+ font-family: var(--seatmap-editor-font-body);
762
+ font-weight: 600;
763
+ min-height: 28px;
764
+ transition:
765
+ border-color 120ms ease,
766
+ box-shadow 120ms ease,
767
+ background-color 120ms ease;
768
+ }
769
+ .seatmap-editor__segmented-button:hover:not(:disabled) {
770
+ border-color: color-mix(in srgb, var(--seatmap-editor-border) 60%, var(--seatmap-editor-text) 40%);
771
+ }
772
+ .seatmap-editor__segmented-button.is-active {
773
+ --seatmap-editor-segmented-bg: var(--seatmap-editor-accent);
774
+ --seatmap-editor-segmented-fg: var(--seatmap-editor-accent-text);
775
+ }
776
+ .seatmap-editor__segmented-button:focus-visible {
777
+ outline: none;
778
+ box-shadow: 0 0 0 2px color-mix(in srgb, var(--seatmap-editor-accent) 35%, transparent);
779
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
780
+ }
781
+ .seatmap-editor__input,
782
+ .seatmap-editor__select {
783
+ padding: 3px 6px;
784
+ background: var(--seatmap-editor-control-surface);
785
+ border: 1px solid var(--seatmap-editor-border);
786
+ border-radius: var(--seatmap-editor-radius-sm);
787
+ color: var(--seatmap-editor-text);
788
+ font-size: var(--seatmap-editor-type-body-size);
789
+ font-family: var(--seatmap-editor-font-body);
790
+ }
791
+ .seatmap-editor__input {
792
+ width: 56px;
793
+ }
794
+ .seatmap-editor__input-stepper {
795
+ display: inline-flex;
796
+ align-items: center;
797
+ gap: 3px;
798
+ }
799
+ .seatmap-editor__input--stepper {
800
+ width: 44px;
801
+ text-align: center;
802
+ }
803
+ .seatmap-editor__input--stepper::-webkit-outer-spin-button,
804
+ .seatmap-editor__input--stepper::-webkit-inner-spin-button {
805
+ -webkit-appearance: none;
806
+ margin: 0;
807
+ }
808
+ .seatmap-editor__input--stepper[type=number] {
809
+ -moz-appearance: textfield;
810
+ appearance: textfield;
811
+ }
812
+ .seatmap-editor__stepper-button {
813
+ appearance: none;
814
+ -webkit-appearance: none;
815
+ width: 24px;
816
+ height: 24px;
817
+ border-radius: var(--seatmap-editor-radius-pill);
818
+ border: 1px solid var(--seatmap-editor-border);
819
+ background: var(--seatmap-editor-control-surface);
820
+ color: var(--seatmap-editor-text-strong);
821
+ font-size: 14px;
822
+ line-height: 1;
823
+ font-weight: 600;
824
+ font-family: var(--seatmap-editor-font-body);
825
+ display: inline-flex;
826
+ align-items: center;
827
+ justify-content: center;
828
+ cursor: pointer;
829
+ transition:
830
+ border-color 130ms ease,
831
+ background-color 130ms ease,
832
+ box-shadow 130ms ease;
833
+ }
834
+ .seatmap-editor__stepper-button:hover {
835
+ background: var(--seatmap-editor-toolbar-button-hover-bg);
836
+ border-color: var(--seatmap-editor-toolbar-button-hover-border);
837
+ }
838
+ .seatmap-editor__stepper-button:focus-visible {
839
+ outline: none;
840
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
841
+ box-shadow: 0 0 0 2px var(--seatmap-focus-ring);
842
+ }
843
+ .seatmap-editor__stepper-button:active {
844
+ background: color-mix(in srgb, var(--seatmap-editor-control-surface) 82%, var(--seatmap-editor-accent) 18%);
845
+ }
846
+ .seatmap-editor__select {
847
+ padding: 4px 8px;
848
+ font-size: var(--seatmap-editor-type-body-size);
849
+ cursor: pointer;
850
+ }
851
+ .seatmap-editor__switch {
852
+ display: inline-flex;
853
+ align-items: center;
854
+ gap: 8px;
855
+ color: var(--seatmap-editor-text);
856
+ font-size: var(--seatmap-editor-type-body-size);
857
+ font-family: var(--seatmap-editor-font-body);
858
+ user-select: none;
859
+ }
860
+ .seatmap-editor__switch-track {
861
+ appearance: none;
862
+ -webkit-appearance: none;
863
+ width: 34px;
864
+ height: 20px;
865
+ border-radius: 999px;
866
+ border: 1px solid var(--seatmap-editor-border);
867
+ padding: 2px;
868
+ display: inline-flex;
869
+ align-items: center;
870
+ transition: all 0.12s ease;
871
+ background: var(--seatmap-editor-control-surface);
872
+ cursor: pointer;
873
+ }
874
+ .seatmap-editor__switch-track.is-checked {
875
+ background: var(--seatmap-editor-accent);
876
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
877
+ }
878
+ .seatmap-editor__switch-thumb {
879
+ width: 14px;
880
+ height: 14px;
881
+ border-radius: 50%;
882
+ background: var(--seatmap-editor-text);
883
+ transition: transform 0.12s ease;
884
+ transform: translateX(0);
885
+ }
886
+ .seatmap-editor__switch-track.is-checked .seatmap-editor__switch-thumb {
887
+ transform: translateX(14px);
888
+ }
889
+ .seatmap-editor__sidebar {
890
+ width: 260px;
891
+ background: var(--seatmap-editor-sidebar-surface);
892
+ box-shadow: var(--seatmap-editor-sidebar-edge-shadow);
893
+ overflow-y: auto;
894
+ flex-shrink: 0;
895
+ }
896
+ .seatmap-editor__sidebar-separator {
897
+ height: 8px;
898
+ background:
899
+ linear-gradient(
900
+ to bottom,
901
+ transparent,
902
+ var(--seatmap-editor-sidebar-separator-wash),
903
+ transparent);
904
+ margin: 4px 16px;
905
+ }
906
+ .seatmap-editor__canvas-area {
907
+ flex: 1;
908
+ position: relative;
909
+ }
910
+ .seatmap-editor__overlay-svg {
911
+ position: absolute;
912
+ inset: 0;
913
+ width: 100%;
914
+ height: 100%;
915
+ pointer-events: none;
916
+ }
917
+ .seatmap-editor__overlay-svg--polygon {
918
+ z-index: 10;
919
+ }
920
+ .seatmap-editor__overlay-svg--drag {
921
+ z-index: 14;
922
+ }
923
+ .seatmap-editor__overlay-svg--section-resize {
924
+ z-index: 16;
925
+ }
926
+ .seatmap-editor__overlay-svg--row-direction {
927
+ z-index: 17;
928
+ }
929
+ .seatmap-editor__overlay-polygon,
930
+ .seatmap-editor__overlay-polyline {
931
+ fill: var(--seatmap-editor-overlay-info-fill);
932
+ stroke: var(--seatmap-editor-overlay-info-stroke);
933
+ stroke-width: 2;
934
+ stroke-dasharray: 6 4;
935
+ }
936
+ .seatmap-editor__overlay-close-line {
937
+ stroke-width: 2;
938
+ stroke-dasharray: 4 4;
939
+ }
940
+ .seatmap-editor__overlay-close-line--active {
941
+ stroke: var(--seatmap-editor-overlay-success-stroke);
942
+ }
943
+ .seatmap-editor__overlay-close-line--inactive {
944
+ stroke: color-mix(in srgb, var(--seatmap-editor-overlay-info-stroke) 40%, transparent);
945
+ stroke-width: 1;
946
+ }
947
+ .seatmap-editor__overlay-point {
948
+ fill: var(--seatmap-editor-overlay-info-stroke);
949
+ }
950
+ .seatmap-editor__overlay-point--first-active {
951
+ fill: var(--seatmap-editor-overlay-success-stroke);
952
+ }
953
+ .seatmap-editor__overlay-drag-outline {
954
+ fill: color-mix(in srgb, var(--seatmap-editor-overlay-info-fill) 90%, transparent);
955
+ stroke: color-mix(in srgb, var(--seatmap-editor-overlay-info-stroke) 90%, white 10%);
956
+ stroke-width: 2;
957
+ stroke-dasharray: 8 6;
958
+ }
959
+ .seatmap-editor__overlay-drag-seat {
960
+ fill: color-mix(in srgb, var(--seatmap-editor-overlay-info-fill) 75%, var(--seatmap-editor-overlay-info-stroke));
961
+ stroke: color-mix(in srgb, var(--seatmap-editor-overlay-info-stroke) 90%, white 10%);
962
+ stroke-width: 1.5;
963
+ }
964
+ .seatmap-editor__overlay-section-outline {
965
+ fill: var(--seatmap-editor-overlay-warning-fill);
966
+ stroke: var(--seatmap-editor-overlay-warning-stroke);
967
+ stroke-width: 1.5;
968
+ stroke-dasharray: 7 4;
969
+ }
970
+ .seatmap-editor__overlay-section-side {
971
+ fill: var(--seatmap-editor-overlay-warning-stroke);
972
+ stroke: color-mix(in srgb, var(--seatmap-editor-overlay-warning-stroke) 78%, var(--seatmap-editor-surface-lowest));
973
+ stroke-width: 1;
974
+ }
975
+ .seatmap-editor__overlay-section-corner {
976
+ fill: color-mix(in srgb, var(--seatmap-editor-overlay-warning-stroke) 94%, white 6%);
977
+ stroke: color-mix(in srgb, var(--seatmap-editor-overlay-warning-stroke) 78%, var(--seatmap-editor-surface-lowest));
978
+ stroke-width: 1.2;
979
+ }
980
+ .seatmap-editor__overlay-row-direction-line {
981
+ stroke: var(--seatmap-editor-overlay-row-direction-stroke);
982
+ }
983
+ .seatmap-editor__overlay-row-direction-arrow {
984
+ fill: var(--seatmap-editor-overlay-row-direction-stroke);
985
+ }
986
+ .seatmap-editor__overlay-row-direction-origin {
987
+ fill: var(--seatmap-editor-overlay-row-direction-origin-fill);
988
+ stroke: var(--seatmap-editor-overlay-row-direction-origin-stroke);
989
+ }
990
+ .seatmap-editor__overlay-label-box {
991
+ fill: var(--seatmap-editor-overlay-label-bg);
992
+ stroke: var(--seatmap-editor-overlay-label-border);
993
+ stroke-width: 1;
994
+ }
995
+ .seatmap-editor__overlay-label-text {
996
+ fill: var(--seatmap-editor-overlay-label-text);
997
+ font-size: var(--seatmap-editor-type-label-size);
998
+ font-family: var(--seatmap-editor-font-body);
999
+ text-anchor: middle;
1000
+ }
1001
+ .seatmap-editor__background-overlay {
1002
+ position: absolute;
1003
+ inset: 0;
1004
+ pointer-events: none;
1005
+ z-index: 15;
1006
+ }
1007
+ .seatmap-editor__background-frame {
1008
+ position: absolute;
1009
+ border: 1px dashed var(--seatmap-editor-background-guide-stroke);
1010
+ box-shadow: var(--seatmap-editor-background-guide-shadow);
1011
+ pointer-events: auto;
1012
+ }
1013
+ .seatmap-editor__background-handle {
1014
+ position: absolute;
1015
+ width: 10px;
1016
+ height: 10px;
1017
+ border-radius: 2px;
1018
+ background: var(--seatmap-editor-background-handle-fill);
1019
+ border: 1px solid var(--seatmap-editor-background-handle-stroke);
1020
+ pointer-events: auto;
1021
+ }
1022
+ .seatmap-editor__hint-bubble {
1023
+ position: absolute;
1024
+ pointer-events: none;
1025
+ z-index: 18;
1026
+ max-width: 280px;
1027
+ background: var(--seatmap-editor-hint-surface);
1028
+ border: 1px solid var(--seatmap-editor-hint-border);
1029
+ border-radius: var(--seatmap-editor-radius-md);
1030
+ color: var(--seatmap-editor-hint-text);
1031
+ font-size: var(--seatmap-editor-type-body-size);
1032
+ font-family: var(--seatmap-editor-font-body);
1033
+ padding: 6px 8px;
1034
+ box-shadow: var(--seatmap-editor-hint-shadow);
1035
+ }
1036
+ .seatmap-editor__panel {
1037
+ padding: 16px;
1038
+ }
1039
+ .seatmap-editor__panel-title {
1040
+ margin: 0 0 12px;
1041
+ color: var(--seatmap-editor-text);
1042
+ font-size: var(--seatmap-editor-type-title-size);
1043
+ font-weight: 600;
1044
+ font-family: var(--seatmap-editor-font-heading);
1045
+ }
1046
+ .seatmap-editor__panel-section {
1047
+ margin-bottom: 12px;
1048
+ }
1049
+ .seatmap-editor__panel-section--card {
1050
+ margin-bottom: 12px;
1051
+ padding: 10px;
1052
+ border-radius: calc(var(--seatmap-editor-radius-md) - 2px);
1053
+ background: var(--seatmap-editor-panel-card-bg);
1054
+ }
1055
+ .seatmap-editor__panel-section-header {
1056
+ display: flex;
1057
+ justify-content: space-between;
1058
+ align-items: center;
1059
+ gap: 8px;
1060
+ margin-bottom: 10px;
1061
+ }
1062
+ .seatmap-editor__panel-label {
1063
+ margin-bottom: 2px;
1064
+ color: var(--seatmap-editor-text-muted);
1065
+ font-size: var(--seatmap-editor-type-label-size);
1066
+ font-family: var(--seatmap-editor-font-body);
1067
+ letter-spacing: 0.08em;
1068
+ text-transform: uppercase;
1069
+ }
1070
+ .seatmap-editor__panel-text {
1071
+ color: var(--seatmap-editor-text);
1072
+ font-size: var(--seatmap-editor-type-body-size);
1073
+ font-family: var(--seatmap-editor-font-body);
1074
+ }
1075
+ .seatmap-editor__panel-text--strong {
1076
+ font-weight: 600;
1077
+ }
1078
+ .seatmap-editor__panel-text--mono-min {
1079
+ min-width: 24px;
1080
+ }
1081
+ .seatmap-editor__panel-text--truncate {
1082
+ flex: 1 1 auto;
1083
+ min-width: 0;
1084
+ overflow: hidden;
1085
+ text-overflow: ellipsis;
1086
+ white-space: nowrap;
1087
+ }
1088
+ .seatmap-editor__panel-muted {
1089
+ color: var(--seatmap-editor-text-muted);
1090
+ font-size: var(--seatmap-editor-type-body-size);
1091
+ font-family: var(--seatmap-editor-font-body);
1092
+ }
1093
+ .seatmap-editor__panel-price {
1094
+ flex: 0 0 auto;
1095
+ white-space: nowrap;
1096
+ margin-right: 2px;
1097
+ }
1098
+ .seatmap-editor__panel-muted--small {
1099
+ font-size: var(--seatmap-editor-type-label-size);
1100
+ }
1101
+ .seatmap-editor__panel-input,
1102
+ .seatmap-editor__panel-select {
1103
+ width: 100%;
1104
+ box-sizing: border-box;
1105
+ padding: 4px 8px;
1106
+ background: var(--seatmap-editor-control-surface);
1107
+ border: 1px solid var(--seatmap-editor-border);
1108
+ border-radius: var(--seatmap-editor-radius-sm);
1109
+ color: var(--seatmap-editor-text);
1110
+ font-size: var(--seatmap-editor-type-body-size);
1111
+ font-family: var(--seatmap-editor-font-body);
1112
+ }
1113
+ .seatmap-editor__panel-input--grow {
1114
+ flex: 1 1 auto;
1115
+ }
1116
+ .seatmap-editor__panel-input:focus-visible,
1117
+ .seatmap-editor__panel-select:focus-visible {
1118
+ outline: none;
1119
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
1120
+ box-shadow: 0 0 0 2px color-mix(in srgb, var(--seatmap-editor-accent) 32%, transparent);
1121
+ }
1122
+ .seatmap-editor__panel-select {
1123
+ cursor: pointer;
1124
+ }
1125
+ .seatmap-editor__panel-button {
1126
+ appearance: none;
1127
+ -webkit-appearance: none;
1128
+ border: 1px solid var(--seatmap-editor-border);
1129
+ border-radius: var(--seatmap-editor-radius-sm);
1130
+ background: var(--seatmap-editor-control-surface);
1131
+ color: var(--seatmap-editor-text);
1132
+ font-family: var(--seatmap-editor-font-body);
1133
+ font-size: var(--seatmap-editor-type-body-size);
1134
+ font-weight: 600;
1135
+ padding: 3px 8px;
1136
+ cursor: pointer;
1137
+ }
1138
+ .seatmap-editor__panel-button:hover:not(:disabled) {
1139
+ background: color-mix(in srgb, var(--seatmap-editor-control-surface) 86%, var(--seatmap-editor-text) 14%);
1140
+ border-color: color-mix(in srgb, var(--seatmap-editor-border) 58%, var(--seatmap-editor-text) 42%);
1141
+ }
1142
+ .seatmap-editor__panel-button:focus-visible {
1143
+ outline: none;
1144
+ box-shadow: 0 0 0 2px var(--seatmap-focus-ring);
1145
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
1146
+ }
1147
+ .seatmap-editor__panel-button:disabled {
1148
+ cursor: default;
1149
+ opacity: 0.5;
1150
+ }
1151
+ .seatmap-editor__panel-button--danger {
1152
+ border-color: color-mix(in srgb, var(--seatmap-editor-danger, #ad3f3f) 60%, var(--seatmap-editor-surface-lowest));
1153
+ background: color-mix(in srgb, var(--seatmap-editor-danger, #ad3f3f) 30%, var(--seatmap-editor-control-surface));
1154
+ color: var(--seatmap-editor-danger-text, #ffd9df);
1155
+ }
1156
+ .seatmap-editor__panel-button--tiny {
1157
+ padding: 1px 5px;
1158
+ font-size: var(--seatmap-editor-type-label-size);
1159
+ }
1160
+ .seatmap-editor__panel-button--full {
1161
+ width: 100%;
1162
+ }
1163
+ .seatmap-editor__panel-row {
1164
+ display: flex;
1165
+ align-items: center;
1166
+ gap: 8px;
1167
+ }
1168
+ .seatmap-editor__panel-row--spaced {
1169
+ margin-top: 10px;
1170
+ }
1171
+ .seatmap-editor__panel-actions-end {
1172
+ display: flex;
1173
+ justify-content: flex-end;
1174
+ margin-top: 10px;
1175
+ }
1176
+ .seatmap-editor__panel-grid-2 {
1177
+ display: grid;
1178
+ grid-template-columns: 1fr 1fr;
1179
+ gap: 8px;
1180
+ }
1181
+ .seatmap-editor__panel-list {
1182
+ display: flex;
1183
+ flex-direction: column;
1184
+ gap: 4px;
1185
+ }
1186
+ .seatmap-editor__panel-scroll {
1187
+ overflow-y: auto;
1188
+ }
1189
+ .seatmap-editor__panel-scroll--sm {
1190
+ max-height: 200px;
1191
+ }
1192
+ .seatmap-editor__panel-scroll--md {
1193
+ max-height: 220px;
1194
+ }
1195
+ .seatmap-editor__panel-list-item {
1196
+ display: flex;
1197
+ align-items: center;
1198
+ gap: 6px;
1199
+ padding: 3px 6px;
1200
+ border-radius: var(--seatmap-editor-radius-sm);
1201
+ background: var(--seatmap-editor-control-surface);
1202
+ color: var(--seatmap-editor-text);
1203
+ font-size: var(--seatmap-editor-type-body-size);
1204
+ font-family: var(--seatmap-editor-font-body);
1205
+ }
1206
+ .seatmap-editor__panel-list-item--interactive {
1207
+ cursor: pointer;
1208
+ transition: border-color 120ms ease, background-color 120ms ease;
1209
+ border: 1px solid transparent;
1210
+ }
1211
+ .seatmap-editor__panel-list-item--interactive-button {
1212
+ width: 100%;
1213
+ text-align: left;
1214
+ font: inherit;
1215
+ }
1216
+ .seatmap-editor__panel-list-item--interactive:hover {
1217
+ background: var(--seatmap-editor-toolbar-button-hover-bg);
1218
+ border-color: var(--seatmap-editor-toolbar-button-hover-border);
1219
+ }
1220
+ .seatmap-editor__panel-list-item--interactive:focus-visible {
1221
+ outline: none;
1222
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
1223
+ box-shadow: 0 0 0 2px var(--seatmap-editor-toolbar-button-focus-ring);
1224
+ }
1225
+ .seatmap-editor__panel-list-item--interactive.is-active {
1226
+ background: var(--seatmap-editor-toolbar-button-active-bg);
1227
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
1228
+ }
1229
+ .seatmap-editor__panel-content-grow {
1230
+ flex: 1 1 auto;
1231
+ min-width: 0;
1232
+ }
1233
+ .seatmap-editor__panel-divider {
1234
+ height: 8px;
1235
+ background:
1236
+ linear-gradient(
1237
+ to bottom,
1238
+ transparent,
1239
+ var(--seatmap-editor-sidebar-separator-wash),
1240
+ transparent);
1241
+ margin: 14px 0;
1242
+ }
1243
+ .seatmap-editor__panel-img-preview {
1244
+ width: 100%;
1245
+ height: 80px;
1246
+ border-radius: var(--seatmap-editor-radius-sm);
1247
+ border: 1px solid var(--seatmap-editor-border);
1248
+ overflow: hidden;
1249
+ margin-bottom: 8px;
1250
+ }
1251
+ .seatmap-editor__panel-img-preview > img {
1252
+ width: 100%;
1253
+ height: 100%;
1254
+ object-fit: cover;
1255
+ display: block;
1256
+ }
1257
+ .seatmap-editor__panel-checkbox {
1258
+ accent-color: var(--seatmap-editor-accent);
1259
+ }
1260
+ .seatmap-editor__panel-range {
1261
+ width: 100%;
1262
+ max-width: 100%;
1263
+ min-width: 0;
1264
+ margin: 0;
1265
+ display: block;
1266
+ box-sizing: border-box;
1267
+ accent-color: var(--seatmap-editor-accent);
1268
+ cursor: pointer;
1269
+ }
1270
+ .seatmap-editor__panel-range--inline {
1271
+ flex: 1 1 auto;
1272
+ }
1273
+ .seatmap-editor__color-picker-shell {
1274
+ width: 14px;
1275
+ height: 14px;
1276
+ border-radius: 5px;
1277
+ border: 1px solid color-mix(in srgb, var(--seatmap-editor-text-muted) 60%, transparent);
1278
+ overflow: hidden;
1279
+ flex-shrink: 0;
1280
+ background: var(--seatmap-editor-control-surface);
1281
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35), inset 0 0 0 1px color-mix(in srgb, var(--seatmap-editor-text) 16%, transparent);
1282
+ position: relative;
1283
+ }
1284
+ .seatmap-editor__color-picker-shell--lg {
1285
+ width: 16px;
1286
+ height: 16px;
1287
+ }
1288
+ .seatmap-editor__color-picker-dot {
1289
+ position: absolute;
1290
+ inset: 0;
1291
+ }
1292
+ .seatmap-editor__color-picker-input {
1293
+ position: absolute;
1294
+ inset: 0;
1295
+ border: none;
1296
+ padding: 0;
1297
+ margin: 0;
1298
+ background: transparent;
1299
+ opacity: 0;
1300
+ }
1301
+ .seatmap-editor__color-picker-input[data-editable=true] {
1302
+ cursor: pointer;
1303
+ }
1304
+ .seatmap-editor__color-picker-input[data-editable=false] {
1305
+ cursor: default;
1306
+ }
1307
+ .seatmap-editor__modal-backdrop {
1308
+ position: fixed;
1309
+ inset: 0;
1310
+ background: color-mix(in srgb, var(--seatmap-editor-surface-lowest) 70%, transparent);
1311
+ z-index: 1000;
1312
+ display: flex;
1313
+ align-items: center;
1314
+ justify-content: center;
1315
+ padding: 16px;
1316
+ }
1317
+ .seatmap-editor__modal {
1318
+ width: min(860px, 95vw);
1319
+ max-height: 80vh;
1320
+ overflow: auto;
1321
+ background: var(--seatmap-editor-surface);
1322
+ border: 1px solid color-mix(in srgb, var(--seatmap-editor-border) 70%, transparent);
1323
+ border-radius: calc(var(--seatmap-editor-radius-md) + 2px);
1324
+ padding: 16px;
1325
+ }
1326
+ .seatmap-editor__modal-header {
1327
+ display: flex;
1328
+ justify-content: space-between;
1329
+ align-items: center;
1330
+ gap: 8px;
1331
+ margin-bottom: 12px;
1332
+ }
1333
+ .seatmap-editor__modal-actions {
1334
+ display: inline-flex;
1335
+ align-items: center;
1336
+ gap: 8px;
1337
+ }
1338
+ .seatmap-editor__panel-muted--spaced,
1339
+ .seatmap-editor__status-line {
1340
+ margin-bottom: 10px;
1341
+ }
1342
+ .seatmap-editor__status-line--success {
1343
+ color: var(--seatmap-editor-status-success);
1344
+ }
1345
+ .seatmap-editor__status-line--error {
1346
+ color: var(--seatmap-editor-status-error);
1347
+ }
1348
+ .seatmap-editor__status-line--idle {
1349
+ color: var(--seatmap-editor-status-idle);
1350
+ }
1351
+ .seatmap-editor__table-grid {
1352
+ display: grid;
1353
+ grid-template-columns: minmax(160px, 1.6fr) minmax(92px, 0.9fr) minmax(88px, 0.8fr) minmax(188px, 1.4fr) minmax(96px, 0.9fr);
1354
+ gap: 8px;
1355
+ }
1356
+ .seatmap-editor__table-head {
1357
+ color: var(--seatmap-editor-text-muted);
1358
+ font-size: var(--seatmap-editor-type-label-size);
1359
+ font-family: var(--seatmap-editor-font-body);
1360
+ }
1361
+ .seatmap-editor__table-row {
1362
+ grid-column: 1 / -1;
1363
+ display: grid;
1364
+ grid-template-columns: minmax(160px, 1.6fr) minmax(92px, 0.9fr) minmax(88px, 0.8fr) minmax(188px, 1.4fr) minmax(96px, 0.9fr);
1365
+ gap: 8px;
1366
+ align-items: center;
1367
+ padding: 8px 10px;
1368
+ border-radius: calc(var(--seatmap-editor-radius-md) - 2px);
1369
+ background: var(--seatmap-editor-table-row-bg);
1370
+ }
1371
+ .seatmap-editor__table-category-cell {
1372
+ display: flex;
1373
+ align-items: center;
1374
+ gap: 8px;
1375
+ min-width: 0;
1376
+ }
1377
+ .seatmap-editor__table-category-swatch {
1378
+ width: 10px;
1379
+ height: 10px;
1380
+ border-radius: 2px;
1381
+ flex-shrink: 0;
1382
+ }
1383
+ .seatmap-editor__table-category-name {
1384
+ color: var(--seatmap-editor-text);
1385
+ font-size: 13px;
1386
+ font-family: var(--seatmap-editor-font-body);
1387
+ }
1388
+ .seatmap-editor__table-amount {
1389
+ color: color-mix(in srgb, var(--seatmap-editor-text) 86%, var(--seatmap-editor-text-muted));
1390
+ font-size: 12px;
1391
+ font-family: var(--seatmap-editor-font-body);
1392
+ }
1393
+ .seatmap-editor__table-effective-price {
1394
+ color: var(--seatmap-editor-text);
1395
+ font-size: 12px;
1396
+ font-family: var(--seatmap-editor-font-body);
1397
+ font-weight: 600;
1398
+ white-space: nowrap;
1399
+ }
1400
+ .seatmap-editor__override-editor {
1401
+ position: relative;
1402
+ width: 100%;
1403
+ min-width: 0;
1404
+ max-width: 100%;
1405
+ overflow: hidden;
1406
+ }
1407
+ .seatmap-editor__override-input {
1408
+ width: 100%;
1409
+ max-width: 100%;
1410
+ box-sizing: border-box;
1411
+ padding: 4px 92px 4px 8px;
1412
+ border: 1px solid var(--seatmap-editor-border);
1413
+ border-radius: var(--seatmap-editor-radius-sm);
1414
+ background: var(--seatmap-editor-control-surface);
1415
+ color: var(--seatmap-editor-text);
1416
+ font-size: 12px;
1417
+ font-family: var(--seatmap-editor-font-body);
1418
+ -moz-appearance: textfield;
1419
+ appearance: textfield;
1420
+ }
1421
+ .seatmap-editor__override-input.is-disabled {
1422
+ color: var(--seatmap-editor-text-muted);
1423
+ background: color-mix(in srgb, var(--seatmap-editor-control-surface) 88%, transparent);
1424
+ }
1425
+ .seatmap-editor__override-actions {
1426
+ position: absolute;
1427
+ right: 3px;
1428
+ top: 50%;
1429
+ transform: translateY(-50%);
1430
+ display: inline-flex;
1431
+ gap: 2px;
1432
+ }
1433
+ .seatmap-editor__table-action-button {
1434
+ width: 20px;
1435
+ height: 20px;
1436
+ border-radius: var(--seatmap-editor-radius-sm);
1437
+ border: 1px solid var(--seatmap-editor-border);
1438
+ background: var(--seatmap-editor-control-surface);
1439
+ color: color-mix(in srgb, var(--seatmap-editor-text) 88%, var(--seatmap-editor-text-muted));
1440
+ font-size: 12px;
1441
+ line-height: 1;
1442
+ padding: 0;
1443
+ cursor: pointer;
1444
+ }
1445
+ .seatmap-editor__table-action-button:hover:not(:disabled) {
1446
+ border-color: var(--seatmap-editor-toolbar-button-hover-border);
1447
+ background: var(--seatmap-editor-toolbar-button-hover-bg);
1448
+ }
1449
+ .seatmap-editor__table-action-button:disabled {
1450
+ opacity: 0.55;
1451
+ cursor: not-allowed;
1452
+ }
1453
+ .seatmap-editor__table-action-button--apply {
1454
+ border-color: var(--seatmap-editor-toolbar-button-active-border);
1455
+ background: color-mix(in srgb, var(--seatmap-editor-accent) 34%, var(--seatmap-editor-control-surface));
1456
+ color: var(--seatmap-editor-accent-text);
1457
+ }
1458
+ .seatmap-editor__table-action-button--reset {
1459
+ border-color: color-mix(in srgb, var(--seatmap-editor-danger, #ad3f3f) 58%, var(--seatmap-editor-surface-lowest));
1460
+ background: color-mix(in srgb, var(--seatmap-editor-danger, #ad3f3f) 34%, var(--seatmap-editor-control-surface));
1461
+ color: var(--seatmap-editor-danger-text, #ffd9df);
1462
+ }
1463
+ .seatmap-editor__orientation-toggle {
1464
+ gap: 8px;
1465
+ }
1466
+ .seatmap-editor__switch-track--wide {
1467
+ width: 46px;
1468
+ height: 24px;
1469
+ }
1470
+ .seatmap-editor__switch-thumb--wide {
1471
+ width: 18px;
1472
+ height: 18px;
1473
+ }
1474
+ .seatmap-editor__orientation-label {
1475
+ font-size: var(--seatmap-editor-type-body-size);
1476
+ font-family: var(--seatmap-editor-font-body);
1477
+ font-weight: 600;
1478
+ color: var(--seatmap-editor-text-muted);
1479
+ }
1480
+ .seatmap-editor__orientation-label.is-active {
1481
+ color: var(--seatmap-editor-accent);
1482
+ }
1483
+ /*# sourceMappingURL=index.css.map */