@product7/product7-js 0.4.2 → 0.4.3

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.
@@ -28,7 +28,7 @@ export const surveyStyles = `
28
28
  background: var(--color-white);
29
29
  border: 1px solid var(--color-neutral-200);
30
30
  border-radius: var(--radius-xl);
31
- box-shadow: var(--shadow-lg);
31
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
32
32
  padding: var(--spacing-6);
33
33
  min-width: 320px;
34
34
  max-width: 400px;
@@ -39,11 +39,10 @@ export const surveyStyles = `
39
39
  }
40
40
 
41
41
  /* ========================================
42
- DARK THEME — scoped variable overrides
42
+ DARK THEME
43
43
  ======================================== */
44
44
 
45
45
  .feedback-survey-theme-dark {
46
- /* Aligned with messenger dark theme */
47
46
  --color-white: #0f1317;
48
47
  --color-background: #0f1317;
49
48
  --color-surface: #1a1e24;
@@ -58,7 +57,6 @@ export const surveyStyles = `
58
57
  --color-text-primary: #e8e8e8;
59
58
  --color-text-secondary: #999999;
60
59
  --color-text-tertiary: #666666;
61
- /* Survey-specific tokens */
62
60
  --color-primary-light: rgba(21, 94, 239, 0.18);
63
61
  --color-primary-border: rgba(21, 94, 239, 0.4);
64
62
  --color-error-light: rgba(239, 68, 68, 0.15);
@@ -88,7 +86,6 @@ export const surveyStyles = `
88
86
  transform: translate(-50%, -50%) scale(0.97);
89
87
  }
90
88
 
91
-
92
89
  /* ========================================
93
90
  CLOSE BUTTON
94
91
  ======================================== */
@@ -180,7 +177,7 @@ export const surveyStyles = `
180
177
  }
181
178
 
182
179
  /* ========================================
183
- NPS
180
+ NPS — individual colored buttons
184
181
  ======================================== */
185
182
 
186
183
  .feedback-survey-nps {
@@ -193,40 +190,57 @@ export const surveyStyles = `
193
190
  flex: 1;
194
191
  height: 40px;
195
192
  min-height: unset;
196
- border: 1px solid var(--color-border);
197
- border-radius: var(--radius-md);
198
- background: var(--color-surface);
193
+ border-radius: 6px;
199
194
  cursor: pointer;
200
195
  font-size: var(--font-size-sm);
201
196
  font-weight: var(--font-weight-medium);
202
- color: var(--color-text-primary);
203
- transition: all var(--transition-fast);
197
+ color: #ffffff;
198
+ border: 1px solid transparent;
199
+ transition: filter var(--transition-fast), transform var(--transition-fast);
204
200
  font-family: inherit;
205
201
  }
206
202
 
207
203
  .feedback-survey-nps-btn:hover {
208
- background: var(--color-primary-light);
209
- border-color: var(--color-primary-border);
210
- color: var(--color-primary);
204
+ filter: brightness(1.1);
211
205
  }
212
206
 
213
207
  .feedback-survey-nps-btn.selected {
214
- background: var(--color-primary-light);
215
- border-color: var(--color-primary);
216
- color: var(--color-primary-active);
217
208
  transform: scale(1.06);
218
209
  z-index: 1;
219
210
  position: relative;
211
+ box-shadow: 0 0 0 2px #fff, 0 0 0 4px currentColor;
220
212
  }
221
213
 
214
+ .feedback-survey-nps-btn:active {
215
+ transform: translateY(1px);
216
+ transition-duration: 100ms;
217
+ }
218
+
219
+ .feedback-survey-nps-btn.selected:active {
220
+ transform: scale(1.06) translateY(1px);
221
+ }
222
+
223
+ /* NPS score colors */
224
+ .feedback-survey-nps-score-0 { background: #dc2626; border-color: #dc2626; }
225
+ .feedback-survey-nps-score-1 { background: #ef4444; border-color: #ef4444; }
226
+ .feedback-survey-nps-score-2 { background: #f97316; border-color: #f97316; }
227
+ .feedback-survey-nps-score-3 { background: #fb923c; border-color: #fb923c; }
228
+ .feedback-survey-nps-score-4 { background: #fdba74; border-color: #fdba74; }
229
+ .feedback-survey-nps-score-5 { background: #fbbf24; border-color: #fbbf24; }
230
+ .feedback-survey-nps-score-6 { background: #fde047; border-color: #fde047; color: #171717; }
231
+ .feedback-survey-nps-score-7 { background: #e5e7eb; border-color: #e5e7eb; color: #374151; }
232
+ .feedback-survey-nps-score-8 { background: #e5e7eb; border-color: #e5e7eb; color: #374151; }
233
+ .feedback-survey-nps-score-9 { background: #4ade80; border-color: #4ade80; }
234
+ .feedback-survey-nps-score-10 { background: #16a34a; border-color: #16a34a; }
235
+
222
236
  /* ========================================
223
- CSAT
237
+ CSAT — emoji row
224
238
  ======================================== */
225
239
 
226
240
  .feedback-survey-csat {
227
241
  display: flex;
228
- justify-content: center;
229
- gap: var(--spacing-4);
242
+ justify-content: space-between;
243
+ gap: var(--spacing-3);
230
244
  padding: var(--spacing-2) 0;
231
245
  }
232
246
 
@@ -236,7 +250,7 @@ export const surveyStyles = `
236
250
  cursor: pointer;
237
251
  font-size: 32px;
238
252
  transition: transform var(--transition-fast), opacity var(--transition-fast);
239
- padding: var(--spacing-2);
253
+ padding: var(--spacing-2) var(--spacing-1);
240
254
  min-width: 44px;
241
255
  min-height: 44px;
242
256
  display: flex;
@@ -259,147 +273,24 @@ export const surveyStyles = `
259
273
  opacity: 0.3;
260
274
  }
261
275
 
262
- /* ========================================
263
- CES SEGMENTED (short scale)
264
- ======================================== */
265
-
266
- .feedback-survey-ces {
267
- display: flex;
268
- justify-content: space-between;
269
- gap: var(--spacing-2);
270
- }
271
-
272
- .feedback-survey-ces-btn {
273
- flex: 1;
274
- height: 40px;
275
- padding: 0 var(--spacing-2);
276
- border: 1px solid var(--color-border);
277
- border-radius: var(--radius-md);
278
- background: var(--color-surface);
279
- cursor: pointer;
280
- font-size: var(--font-size-xs);
281
- font-weight: var(--font-weight-medium);
282
- color: var(--color-text-primary);
283
- transition: all var(--transition-fast);
284
- font-family: inherit;
285
- text-align: center;
286
- }
287
-
288
- .feedback-survey-ces-btn:hover {
289
- background: var(--color-primary-light);
290
- border-color: var(--color-primary-border);
291
- color: var(--color-primary);
292
- }
293
-
294
- .feedback-survey-ces-btn.selected {
295
- background: var(--color-primary-light);
296
- border-color: var(--color-primary);
297
- color: var(--color-primary-active);
298
- }
299
-
300
- /* ========================================
301
- CES LIST
302
- ======================================== */
303
-
304
- .feedback-survey-ces-list {
305
- display: flex;
306
- flex-direction: column;
307
- gap: var(--spacing-2);
308
- }
309
-
310
- .feedback-survey-ces-list-btn {
311
- width: 100%;
312
- height: 40px;
313
- padding: 0 var(--spacing-4);
314
- border: 1px solid var(--color-border);
315
- border-radius: var(--radius-md);
316
- background: var(--color-surface);
317
- cursor: pointer;
318
- font-size: var(--font-size-base);
319
- font-weight: var(--font-weight-medium);
320
- color: var(--color-text-primary);
321
- transition: all var(--transition-fast);
322
- font-family: inherit;
323
- text-align: left;
324
- display: flex;
325
- align-items: center;
326
- justify-content: space-between;
327
- }
328
-
329
- .feedback-survey-ces-list-btn:hover {
330
- background: var(--color-primary-light);
331
- border-color: var(--color-primary-border);
332
- color: var(--color-primary);
333
- }
334
-
335
- .feedback-survey-ces-list-btn.selected {
336
- background: var(--color-primary-light);
337
- border-color: var(--color-primary);
338
- color: var(--color-primary-active);
339
- }
340
-
341
- /* ========================================
342
- SELECTION INDICATOR (choice & CES list)
343
- ======================================== */
344
-
345
- .feedback-survey-ces-list-btn::after,
346
- .feedback-survey-page-choice-btn::after {
347
- content: '';
348
- width: 18px;
349
- height: 18px;
350
- border-radius: 50%;
351
- border: 1.5px solid var(--color-neutral-300);
352
- flex-shrink: 0;
353
- background: transparent;
354
- background-size: 10px 10px;
355
- background-repeat: no-repeat;
356
- background-position: center;
357
- transition: all var(--transition-fast);
276
+ .feedback-survey-csat-btn:active {
277
+ transform: scale(1.05) translateY(1px);
278
+ transition-duration: 100ms;
358
279
  }
359
280
 
360
- .feedback-survey-ces-list-btn.selected::after,
361
- .feedback-survey-page-choice-btn.selected::after {
362
- border-color: var(--color-primary);
363
- background-color: var(--color-primary);
364
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpolyline points='2,6.5 5,9.5 10,3' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
281
+ .feedback-survey-csat-btn.selected:active {
282
+ transform: scale(1.2) translateY(1px);
365
283
  }
366
284
 
367
285
  /* ========================================
368
- RATING SCALE (generic)
286
+ NUMBER RATING (segmented scale)
369
287
  ======================================== */
370
288
 
371
- .feedback-survey-stars {
372
- display: flex;
373
- gap: var(--spacing-4);
374
- justify-content: center;
375
- }
376
-
377
- .feedback-survey-star-btn {
378
- background: none;
379
- border: none;
380
- cursor: pointer;
381
- font-size: 2.75rem;
382
- color: var(--color-neutral-300);
383
- padding: 0;
384
- line-height: 1;
385
- transition: color var(--transition-fast), transform var(--transition-fast);
386
- }
387
-
388
- .feedback-survey-star-btn.filled,
389
- .feedback-survey-star-btn.hovered {
390
- color: #f59e0b;
391
- }
392
-
393
- .feedback-survey-star-btn:active {
394
- transform: scale(0.9);
395
- }
396
-
397
289
  .feedback-survey-rating-scale {
398
290
  display: flex;
399
- gap: 0;
400
- border: 1px solid var(--color-neutral-200);
401
- border-radius: var(--radius-md);
402
291
  overflow: hidden;
292
+ border: 1px solid var(--color-neutral-200);
293
+ border-radius: 6px;
403
294
  background: var(--color-white);
404
295
  }
405
296
 
@@ -414,9 +305,9 @@ export const surveyStyles = `
414
305
  cursor: pointer;
415
306
  font-size: clamp(14px, 3vw, 18px);
416
307
  font-weight: var(--font-weight-medium);
417
- color: var(--color-text-primary);
308
+ color: #374151;
418
309
  transition: background var(--transition-fast), color var(--transition-fast);
419
- position: relative;
310
+ font-family: inherit;
420
311
  }
421
312
 
422
313
  .feedback-survey-rating-scale-btn:last-child {
@@ -440,59 +331,59 @@ export const surveyStyles = `
440
331
  box-shadow: inset 0 0 0 2px var(--color-primary);
441
332
  }
442
333
 
443
- /* ========================================
444
- SCALE LABELS
445
- ======================================== */
446
-
447
- .feedback-survey-labels {
448
- display: flex;
449
- justify-content: space-between;
450
- margin-top: var(--spacing-2);
451
- font-size: var(--font-size-xs);
452
- color: var(--color-text-tertiary);
453
- }
454
-
455
- .feedback-survey-rating-scale + .feedback-survey-labels {
456
- margin-top: var(--spacing-3);
457
- padding: 0 var(--spacing-1);
458
- font-size: var(--font-size-sm);
459
- color: var(--color-text-tertiary);
334
+ .feedback-survey-rating-scale-btn:active {
335
+ transform: translateY(1px);
336
+ transition-duration: 100ms;
460
337
  }
461
338
 
462
339
  /* ========================================
463
- FREQUENCY
340
+ STARS
464
341
  ======================================== */
465
342
 
466
- .feedback-survey-frequency {
343
+ .feedback-survey-stars {
467
344
  display: flex;
468
345
  gap: var(--spacing-2);
346
+ justify-content: center;
469
347
  }
470
348
 
471
- .feedback-survey-freq-btn {
472
- flex: 1;
473
- height: 40px;
474
- padding: 0 var(--spacing-3);
475
- border: 1px solid var(--color-border);
476
- border-radius: var(--radius-md);
477
- background: var(--color-surface);
349
+ .feedback-survey-star-btn {
350
+ background: none;
351
+ border: none;
478
352
  cursor: pointer;
479
- font-size: var(--font-size-sm);
480
- font-weight: var(--font-weight-medium);
481
- color: var(--color-text-primary);
482
- transition: all var(--transition-fast);
483
- font-family: inherit;
353
+ padding: 0;
354
+ line-height: 1;
355
+ color: var(--color-neutral-300);
356
+ transition: color var(--transition-fast), transform var(--transition-fast);
357
+ display: flex;
358
+ align-items: center;
359
+ justify-content: center;
484
360
  }
485
361
 
486
- .feedback-survey-freq-btn:hover {
487
- background: var(--color-primary-light);
488
- border-color: var(--color-primary-border);
489
- color: var(--color-primary);
362
+ .feedback-survey-star-btn.filled,
363
+ .feedback-survey-star-btn.hovered {
364
+ color: #f59e0b;
490
365
  }
491
366
 
492
- .feedback-survey-freq-btn.selected {
493
- background: var(--color-primary-light);
494
- border-color: var(--color-primary);
495
- color: var(--color-primary-active);
367
+ .feedback-survey-star-btn:hover {
368
+ color: #f59e0b;
369
+ }
370
+
371
+ .feedback-survey-star-btn:active {
372
+ transform: scale(0.9);
373
+ transition-duration: 100ms;
374
+ }
375
+
376
+ /* ========================================
377
+ SCALE LABELS
378
+ ======================================== */
379
+
380
+ .feedback-survey-labels {
381
+ display: flex;
382
+ justify-content: space-between;
383
+ margin-top: var(--spacing-2);
384
+ padding: 0 var(--spacing-1);
385
+ font-size: var(--font-size-xs);
386
+ color: var(--color-text-tertiary);
496
387
  }
497
388
 
498
389
  /* ========================================
@@ -528,50 +419,6 @@ export const surveyStyles = `
528
419
  box-shadow: 0 0 0 3px var(--color-primary-light);
529
420
  }
530
421
 
531
- .feedback-survey-select {
532
- width: 100%;
533
- height: 40px;
534
- padding: 0 var(--spacing-3);
535
- border: 1px solid var(--color-border);
536
- border-radius: var(--radius-md);
537
- font-size: var(--font-size-base);
538
- background: var(--color-white);
539
- color: var(--color-text-primary);
540
- font-family: inherit;
541
- cursor: pointer;
542
- transition: border-color var(--transition-base);
543
- outline: none;
544
- }
545
-
546
- .feedback-survey-select:focus {
547
- border-color: var(--color-primary);
548
- box-shadow: 0 0 0 3px var(--color-primary-light);
549
- }
550
-
551
- .feedback-survey-input {
552
- width: 100%;
553
- height: 40px;
554
- padding: 0 var(--spacing-3);
555
- border: 1px solid var(--color-border);
556
- border-radius: var(--radius-md);
557
- font-size: var(--font-size-base);
558
- background: var(--color-white);
559
- color: var(--color-text-primary);
560
- font-family: inherit;
561
- box-sizing: border-box;
562
- transition: border-color var(--transition-base);
563
- outline: none;
564
- }
565
-
566
- .feedback-survey-input::placeholder {
567
- color: var(--color-text-tertiary);
568
- }
569
-
570
- .feedback-survey-input:focus {
571
- border-color: var(--color-primary);
572
- box-shadow: 0 0 0 3px var(--color-primary-light);
573
- }
574
-
575
422
  /* ========================================
576
423
  MULTI-PAGE TEXT INPUT
577
424
  ======================================== */
@@ -582,7 +429,7 @@ export const surveyStyles = `
582
429
  padding: var(--spacing-3);
583
430
  border: 1px solid var(--color-border);
584
431
  border-radius: var(--radius-md);
585
- font-size: var(--font-size-base);
432
+ font-size: var(--font-size-sm);
586
433
  font-family: inherit;
587
434
  background: var(--color-white);
588
435
  color: var(--color-text-primary);
@@ -615,12 +462,12 @@ export const surveyStyles = `
615
462
  width: 100%;
616
463
  height: 40px;
617
464
  padding: 0 var(--spacing-4);
618
- border: 1px solid var(--color-border);
465
+ border: 1px solid var(--color-neutral-200);
619
466
  border-radius: var(--radius-md);
620
- background: var(--color-surface);
621
- color: var(--color-text-primary);
467
+ background: var(--color-white);
468
+ color: #374151;
622
469
  text-align: left;
623
- font-size: var(--font-size-base);
470
+ font-size: var(--font-size-sm);
624
471
  font-weight: var(--font-weight-medium);
625
472
  cursor: pointer;
626
473
  font-family: inherit;
@@ -630,33 +477,41 @@ export const surveyStyles = `
630
477
  transition: all var(--transition-fast);
631
478
  }
632
479
 
480
+ .feedback-survey-page-choice-btn::after {
481
+ content: '';
482
+ width: 18px;
483
+ height: 18px;
484
+ border-radius: 50%;
485
+ border: 1.5px solid #D1D5DB;
486
+ flex-shrink: 0;
487
+ background: transparent;
488
+ transition: all var(--transition-fast);
489
+ }
490
+
633
491
  .feedback-survey-page-choice-btn:hover {
492
+ border-color: var(--color-primary);
634
493
  background: var(--color-primary-light);
635
- border-color: var(--color-primary-border);
636
494
  color: var(--color-primary);
637
495
  }
638
496
 
497
+ .feedback-survey-page-choice-btn:hover::after {
498
+ border-color: var(--color-primary);
499
+ }
500
+
639
501
  .feedback-survey-page-choice-btn.selected {
640
- background: var(--color-primary-light);
641
502
  border-color: var(--color-primary);
503
+ background: var(--color-primary-light);
642
504
  color: var(--color-primary-active);
643
505
  }
644
506
 
645
- /* ========================================
646
- LINK PAGE
647
- ======================================== */
648
-
649
- .feedback-survey-link-page {
650
- display: flex;
651
- flex-direction: column;
652
- gap: var(--spacing-3);
507
+ .feedback-survey-page-choice-btn.selected::after {
508
+ border-color: var(--color-primary);
509
+ background-color: var(--color-primary);
653
510
  }
654
511
 
655
- .feedback-survey-link-text {
656
- font-size: var(--font-size-base);
657
- color: var(--color-text-secondary);
658
- line-height: var(--line-height-relaxed);
659
- margin: 0;
512
+ .feedback-survey-page-choice-btn:active {
513
+ transform: translateY(1px);
514
+ transition-duration: 100ms;
660
515
  }
661
516
 
662
517
  /* ========================================
@@ -675,9 +530,9 @@ export const surveyStyles = `
675
530
  min-height: 40px;
676
531
  border: 1px solid var(--color-border);
677
532
  border-radius: var(--radius-md);
678
- background: var(--color-surface);
533
+ background: var(--color-white);
679
534
  color: var(--color-text-secondary);
680
- font-size: var(--font-size-base);
535
+ font-size: var(--font-size-sm);
681
536
  font-weight: var(--font-weight-medium);
682
537
  cursor: pointer;
683
538
  font-family: inherit;
@@ -696,8 +551,13 @@ export const surveyStyles = `
696
551
  color: var(--color-text-primary);
697
552
  }
698
553
 
554
+ .feedback-survey-back:active {
555
+ transform: translateY(1px);
556
+ transition-duration: 100ms;
557
+ }
558
+
699
559
  /* ========================================
700
- SUBMIT & LINK BUTTON
560
+ SUBMIT BUTTON
701
561
  ======================================== */
702
562
 
703
563
  .feedback-survey-submit {
@@ -712,7 +572,7 @@ export const surveyStyles = `
712
572
  color: #ffffff;
713
573
  border: 1px solid var(--color-primary);
714
574
  border-radius: var(--radius-md);
715
- font-size: var(--font-size-base);
575
+ font-size: var(--font-size-sm);
716
576
  font-weight: var(--font-weight-medium);
717
577
  cursor: pointer;
718
578
  font-family: inherit;
@@ -730,43 +590,14 @@ export const surveyStyles = `
730
590
  cursor: not-allowed;
731
591
  }
732
592
 
733
- .feedback-survey-link-btn {
734
- display: flex;
735
- align-items: center;
736
- justify-content: center;
737
- gap: var(--spacing-2);
738
- width: 100%;
739
- min-height: 40px;
740
- padding: 0 var(--spacing-4);
741
- background: var(--color-primary);
742
- color: #ffffff;
743
- border: 1px solid var(--color-primary);
744
- border-radius: var(--radius-md);
745
- font-size: var(--font-size-base);
746
- font-weight: var(--font-weight-medium);
747
- cursor: pointer;
748
- font-family: inherit;
749
- text-align: center;
750
- text-decoration: none;
751
- transition: all var(--transition-base);
752
- }
753
-
754
- .feedback-survey-link-btn:hover {
755
- background: var(--color-primary-hover);
756
- border-color: var(--color-primary-hover);
757
- color: var(--color-white);
758
- text-decoration: none;
759
- }
760
-
761
- .feedback-survey-link-btn iconify-icon,
762
- .feedback-survey-submit iconify-icon {
763
- flex-shrink: 0;
764
- color: #ffffff;
593
+ .feedback-survey-submit:active:not(:disabled) {
594
+ transform: translateY(1px);
595
+ transition-duration: 100ms;
765
596
  }
766
597
 
598
+ .feedback-survey-submit iconify-icon,
767
599
  .feedback-survey-back iconify-icon {
768
600
  flex-shrink: 0;
769
- color: currentColor;
770
601
  }
771
602
 
772
603
  /* ========================================
@@ -791,47 +622,64 @@ export const surveyStyles = `
791
622
  }
792
623
 
793
624
  /* ========================================
794
- DARK MODE — SELECTED STATE OVERRIDES
625
+ THANK YOU SCREEN
795
626
  ======================================== */
796
627
 
797
- .feedback-survey-theme-dark .feedback-survey-ces-list-btn.selected,
798
- .feedback-survey-theme-dark .feedback-survey-page-choice-btn.selected,
799
- .feedback-survey-theme-dark .feedback-survey-freq-btn.selected,
800
- .feedback-survey-theme-dark .feedback-survey-ces-btn.selected,
801
- .feedback-survey-theme-dark .feedback-survey-nps-btn.selected,
802
- .feedback-survey-theme-dark .feedback-survey-rating-scale-btn.selected {
803
- color: var(--color-text-primary);
628
+ .feedback-survey-thankyou {
629
+ display: flex;
630
+ flex-direction: column;
631
+ align-items: center;
632
+ text-align: center;
633
+ padding: var(--spacing-6) 0;
804
634
  }
805
635
 
806
- /* ========================================
807
- PRESS EFFECT
808
- ======================================== */
636
+ .feedback-survey-thankyou-icon {
637
+ color: #10b981;
638
+ margin-bottom: var(--spacing-4);
639
+ display: block;
640
+ }
809
641
 
810
- .feedback-survey-close:active,
811
- .feedback-survey-submit:active,
812
- .feedback-survey-back:active,
813
- .feedback-survey-link-btn:active,
814
- .feedback-survey-ces-btn:active,
815
- .feedback-survey-ces-list-btn:active,
816
- .feedback-survey-page-choice-btn:active,
817
- .feedback-survey-freq-btn:active,
818
- .feedback-survey-rating-scale-btn:active,
819
- .feedback-survey-nps-btn:active {
820
- transform: translateY(1px);
821
- transition-duration: 100ms;
642
+ .feedback-survey-thankyou-title {
643
+ margin: 0;
644
+ font-size: var(--font-size-xl);
645
+ font-weight: var(--font-weight-semibold);
646
+ line-height: var(--line-height-snug);
647
+ color: var(--color-text-primary);
822
648
  }
823
649
 
824
- .feedback-survey-nps-btn.selected:active {
825
- transform: scale(1.06) translateY(1px);
650
+ .feedback-survey-thankyou-btn {
651
+ margin-top: var(--spacing-5);
652
+ display: inline-flex;
653
+ align-items: center;
654
+ justify-content: center;
655
+ gap: var(--spacing-2);
656
+ height: 40px;
657
+ padding: 0 var(--spacing-6);
658
+ background: var(--color-primary);
659
+ color: #ffffff;
660
+ border: 1px solid var(--color-primary);
661
+ border-radius: var(--radius-md);
662
+ font-size: var(--font-size-sm);
663
+ font-weight: var(--font-weight-medium);
664
+ text-decoration: none;
665
+ transition: all var(--transition-base);
826
666
  }
827
667
 
828
- .feedback-survey-csat-btn:active {
829
- transform: scale(1.05) translateY(1px);
830
- transition-duration: 100ms;
668
+ .feedback-survey-thankyou-btn:hover {
669
+ background: var(--color-primary-hover);
670
+ border-color: var(--color-primary-hover);
671
+ color: #ffffff;
672
+ text-decoration: none;
831
673
  }
832
674
 
833
- .feedback-survey-csat-btn.selected:active {
834
- transform: scale(1.2) translateY(1px);
675
+ /* ========================================
676
+ DARK MODE — SELECTED STATE OVERRIDES
677
+ ======================================== */
678
+
679
+ .feedback-survey-theme-dark .feedback-survey-page-choice-btn.selected,
680
+ .feedback-survey-theme-dark .feedback-survey-rating-scale-btn.selected,
681
+ .feedback-survey-theme-dark .feedback-survey-nps-btn.selected {
682
+ color: var(--color-text-primary);
835
683
  }
836
684
 
837
685
  /* ========================================
@@ -864,22 +712,10 @@ export const surveyStyles = `
864
712
  flex-shrink: 0;
865
713
  }
866
714
 
867
- .product7-notification-success {
868
- background: #037F0C;
869
- }
870
-
871
- .product7-notification-error {
872
- background: #D13212;
873
- }
874
-
875
- .product7-notification-warning {
876
- background: #FF9900;
877
- color: #000;
878
- }
879
-
880
- .product7-notification-info {
881
- background: #0972D3;
882
- }
715
+ .product7-notification-success { background: #037F0C; }
716
+ .product7-notification-error { background: #D13212; }
717
+ .product7-notification-warning { background: #FF9900; color: #000; }
718
+ .product7-notification-info { background: #0972D3; }
883
719
 
884
720
  /* ========================================
885
721
  RESPONSIVE
@@ -891,7 +727,7 @@ export const surveyStyles = `
891
727
  padding: var(--spacing-5);
892
728
  }
893
729
 
894
- .feedback-survey-nps-btn {
730
+ .feedback-survey-nps-btn {
895
731
  font-size: var(--font-size-xs);
896
732
  }
897
733
 
@@ -912,9 +748,5 @@ export const surveyStyles = `
912
748
  .feedback-survey-rating-scale-btn {
913
749
  font-size: clamp(13px, 5vw, 16px);
914
750
  }
915
-
916
- .feedback-survey-rating-scale + .feedback-survey-labels {
917
- font-size: var(--font-size-xs);
918
- }
919
751
  }
920
752
  `;