@product7/product7-js 0.4.2 → 0.4.4

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,51 @@ 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.12);
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
- transform: scale(1.06);
218
- z-index: 1;
219
- position: relative;
208
+ filter: brightness(0.82);
209
+ box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.25);
210
+ }
211
+
212
+ .feedback-survey-nps-btn:active {
213
+ transform: translateY(1px);
214
+ transition-duration: 100ms;
220
215
  }
221
216
 
217
+ /* NPS score colors */
218
+ .feedback-survey-nps-score-0 { background: #dc2626; border-color: #dc2626; }
219
+ .feedback-survey-nps-score-1 { background: #ef4444; border-color: #ef4444; }
220
+ .feedback-survey-nps-score-2 { background: #f97316; border-color: #f97316; }
221
+ .feedback-survey-nps-score-3 { background: #fb923c; border-color: #fb923c; }
222
+ .feedback-survey-nps-score-4 { background: #fdba74; border-color: #fdba74; }
223
+ .feedback-survey-nps-score-5 { background: #fbbf24; border-color: #fbbf24; }
224
+ .feedback-survey-nps-score-6 { background: #fde047; border-color: #fde047; color: #171717; }
225
+ .feedback-survey-nps-score-7 { background: #e5e7eb; border-color: #e5e7eb; color: #374151; }
226
+ .feedback-survey-nps-score-8 { background: #e5e7eb; border-color: #e5e7eb; color: #374151; }
227
+ .feedback-survey-nps-score-9 { background: #4ade80; border-color: #4ade80; }
228
+ .feedback-survey-nps-score-10 { background: #16a34a; border-color: #16a34a; }
229
+
222
230
  /* ========================================
223
- CSAT
231
+ CSAT — emoji row
224
232
  ======================================== */
225
233
 
226
234
  .feedback-survey-csat {
227
235
  display: flex;
228
- justify-content: center;
229
- gap: var(--spacing-4);
236
+ justify-content: space-between;
237
+ gap: var(--spacing-3);
230
238
  padding: var(--spacing-2) 0;
231
239
  }
232
240
 
@@ -236,7 +244,7 @@ export const surveyStyles = `
236
244
  cursor: pointer;
237
245
  font-size: 32px;
238
246
  transition: transform var(--transition-fast), opacity var(--transition-fast);
239
- padding: var(--spacing-2);
247
+ padding: var(--spacing-2) var(--spacing-1);
240
248
  min-width: 44px;
241
249
  min-height: 44px;
242
250
  display: flex;
@@ -259,147 +267,24 @@ export const surveyStyles = `
259
267
  opacity: 0.3;
260
268
  }
261
269
 
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);
270
+ .feedback-survey-csat-btn:active {
271
+ transform: scale(1.05) translateY(1px);
272
+ transition-duration: 100ms;
358
273
  }
359
274
 
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");
275
+ .feedback-survey-csat-btn.selected:active {
276
+ transform: scale(1.2) translateY(1px);
365
277
  }
366
278
 
367
279
  /* ========================================
368
- RATING SCALE (generic)
280
+ NUMBER RATING (segmented scale)
369
281
  ======================================== */
370
282
 
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
283
  .feedback-survey-rating-scale {
398
284
  display: flex;
399
- gap: 0;
400
- border: 1px solid var(--color-neutral-200);
401
- border-radius: var(--radius-md);
402
285
  overflow: hidden;
286
+ border: 1px solid var(--color-neutral-200);
287
+ border-radius: 6px;
403
288
  background: var(--color-white);
404
289
  }
405
290
 
@@ -414,9 +299,9 @@ export const surveyStyles = `
414
299
  cursor: pointer;
415
300
  font-size: clamp(14px, 3vw, 18px);
416
301
  font-weight: var(--font-weight-medium);
417
- color: var(--color-text-primary);
302
+ color: #374151;
418
303
  transition: background var(--transition-fast), color var(--transition-fast);
419
- position: relative;
304
+ font-family: inherit;
420
305
  }
421
306
 
422
307
  .feedback-survey-rating-scale-btn:last-child {
@@ -440,59 +325,68 @@ export const surveyStyles = `
440
325
  box-shadow: inset 0 0 0 2px var(--color-primary);
441
326
  }
442
327
 
328
+ .feedback-survey-rating-scale-btn:active {
329
+ transform: translateY(1px);
330
+ transition-duration: 100ms;
331
+ }
332
+
443
333
  /* ========================================
444
- SCALE LABELS
334
+ STARS
445
335
  ======================================== */
446
336
 
447
- .feedback-survey-labels {
337
+ .feedback-survey-stars {
448
338
  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);
339
+ gap: var(--spacing-2);
340
+ justify-content: center;
453
341
  }
454
342
 
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);
343
+ .feedback-survey-star-btn {
344
+ background: none;
345
+ border: none;
346
+ cursor: pointer;
347
+ padding: 4px;
348
+ width: 40px;
349
+ height: 40px;
350
+ flex-shrink: 0;
351
+ line-height: 1;
352
+ color: var(--color-neutral-300);
353
+ transition: color var(--transition-fast), transform var(--transition-fast);
354
+ display: flex;
355
+ align-items: center;
356
+ justify-content: center;
460
357
  }
461
358
 
462
- /* ========================================
463
- FREQUENCY
464
- ======================================== */
359
+ .feedback-survey-star-btn iconify-icon {
360
+ display: block;
361
+ pointer-events: none;
362
+ flex-shrink: 0;
363
+ }
465
364
 
466
- .feedback-survey-frequency {
467
- display: flex;
468
- gap: var(--spacing-2);
365
+ .feedback-survey-star-btn.filled,
366
+ .feedback-survey-star-btn.hovered {
367
+ color: #f59e0b;
469
368
  }
470
369
 
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);
478
- 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;
370
+ .feedback-survey-star-btn:hover {
371
+ color: #f59e0b;
484
372
  }
485
373
 
486
- .feedback-survey-freq-btn:hover {
487
- background: var(--color-primary-light);
488
- border-color: var(--color-primary-border);
489
- color: var(--color-primary);
374
+ .feedback-survey-star-btn:active {
375
+ transform: scale(0.9);
376
+ transition-duration: 100ms;
490
377
  }
491
378
 
492
- .feedback-survey-freq-btn.selected {
493
- background: var(--color-primary-light);
494
- border-color: var(--color-primary);
495
- color: var(--color-primary-active);
379
+ /* ========================================
380
+ SCALE LABELS
381
+ ======================================== */
382
+
383
+ .feedback-survey-labels {
384
+ display: flex;
385
+ justify-content: space-between;
386
+ margin-top: var(--spacing-2);
387
+ padding: 0 var(--spacing-1);
388
+ font-size: var(--font-size-xs);
389
+ color: var(--color-text-tertiary);
496
390
  }
497
391
 
498
392
  /* ========================================
@@ -528,50 +422,6 @@ export const surveyStyles = `
528
422
  box-shadow: 0 0 0 3px var(--color-primary-light);
529
423
  }
530
424
 
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
425
  /* ========================================
576
426
  MULTI-PAGE TEXT INPUT
577
427
  ======================================== */
@@ -582,7 +432,7 @@ export const surveyStyles = `
582
432
  padding: var(--spacing-3);
583
433
  border: 1px solid var(--color-border);
584
434
  border-radius: var(--radius-md);
585
- font-size: var(--font-size-base);
435
+ font-size: var(--font-size-sm);
586
436
  font-family: inherit;
587
437
  background: var(--color-white);
588
438
  color: var(--color-text-primary);
@@ -615,12 +465,12 @@ export const surveyStyles = `
615
465
  width: 100%;
616
466
  height: 40px;
617
467
  padding: 0 var(--spacing-4);
618
- border: 1px solid var(--color-border);
468
+ border: 1px solid var(--color-neutral-200);
619
469
  border-radius: var(--radius-md);
620
- background: var(--color-surface);
621
- color: var(--color-text-primary);
470
+ background: var(--color-white);
471
+ color: #374151;
622
472
  text-align: left;
623
- font-size: var(--font-size-base);
473
+ font-size: var(--font-size-sm);
624
474
  font-weight: var(--font-weight-medium);
625
475
  cursor: pointer;
626
476
  font-family: inherit;
@@ -630,33 +480,41 @@ export const surveyStyles = `
630
480
  transition: all var(--transition-fast);
631
481
  }
632
482
 
483
+ .feedback-survey-page-choice-btn::after {
484
+ content: '';
485
+ width: 18px;
486
+ height: 18px;
487
+ border-radius: 50%;
488
+ border: 1.5px solid #D1D5DB;
489
+ flex-shrink: 0;
490
+ background: transparent;
491
+ transition: all var(--transition-fast);
492
+ }
493
+
633
494
  .feedback-survey-page-choice-btn:hover {
495
+ border-color: var(--color-primary);
634
496
  background: var(--color-primary-light);
635
- border-color: var(--color-primary-border);
636
497
  color: var(--color-primary);
637
498
  }
638
499
 
500
+ .feedback-survey-page-choice-btn:hover::after {
501
+ border-color: var(--color-primary);
502
+ }
503
+
639
504
  .feedback-survey-page-choice-btn.selected {
640
- background: var(--color-primary-light);
641
505
  border-color: var(--color-primary);
506
+ background: var(--color-primary-light);
642
507
  color: var(--color-primary-active);
643
508
  }
644
509
 
645
- /* ========================================
646
- LINK PAGE
647
- ======================================== */
648
-
649
- .feedback-survey-link-page {
650
- display: flex;
651
- flex-direction: column;
652
- gap: var(--spacing-3);
510
+ .feedback-survey-page-choice-btn.selected::after {
511
+ border-color: var(--color-primary);
512
+ background-color: var(--color-primary);
653
513
  }
654
514
 
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;
515
+ .feedback-survey-page-choice-btn:active {
516
+ transform: translateY(1px);
517
+ transition-duration: 100ms;
660
518
  }
661
519
 
662
520
  /* ========================================
@@ -675,9 +533,9 @@ export const surveyStyles = `
675
533
  min-height: 40px;
676
534
  border: 1px solid var(--color-border);
677
535
  border-radius: var(--radius-md);
678
- background: var(--color-surface);
536
+ background: var(--color-white);
679
537
  color: var(--color-text-secondary);
680
- font-size: var(--font-size-base);
538
+ font-size: var(--font-size-sm);
681
539
  font-weight: var(--font-weight-medium);
682
540
  cursor: pointer;
683
541
  font-family: inherit;
@@ -696,8 +554,13 @@ export const surveyStyles = `
696
554
  color: var(--color-text-primary);
697
555
  }
698
556
 
557
+ .feedback-survey-back:active {
558
+ transform: translateY(1px);
559
+ transition-duration: 100ms;
560
+ }
561
+
699
562
  /* ========================================
700
- SUBMIT & LINK BUTTON
563
+ SUBMIT BUTTON
701
564
  ======================================== */
702
565
 
703
566
  .feedback-survey-submit {
@@ -712,7 +575,7 @@ export const surveyStyles = `
712
575
  color: #ffffff;
713
576
  border: 1px solid var(--color-primary);
714
577
  border-radius: var(--radius-md);
715
- font-size: var(--font-size-base);
578
+ font-size: var(--font-size-sm);
716
579
  font-weight: var(--font-weight-medium);
717
580
  cursor: pointer;
718
581
  font-family: inherit;
@@ -730,43 +593,14 @@ export const surveyStyles = `
730
593
  cursor: not-allowed;
731
594
  }
732
595
 
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;
596
+ .feedback-survey-submit:active:not(:disabled) {
597
+ transform: translateY(1px);
598
+ transition-duration: 100ms;
765
599
  }
766
600
 
601
+ .feedback-survey-submit iconify-icon,
767
602
  .feedback-survey-back iconify-icon {
768
603
  flex-shrink: 0;
769
- color: currentColor;
770
604
  }
771
605
 
772
606
  /* ========================================
@@ -791,47 +625,64 @@ export const surveyStyles = `
791
625
  }
792
626
 
793
627
  /* ========================================
794
- DARK MODE — SELECTED STATE OVERRIDES
628
+ THANK YOU SCREEN
795
629
  ======================================== */
796
630
 
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);
631
+ .feedback-survey-thankyou {
632
+ display: flex;
633
+ flex-direction: column;
634
+ align-items: center;
635
+ text-align: center;
636
+ padding: var(--spacing-6) 0;
804
637
  }
805
638
 
806
- /* ========================================
807
- PRESS EFFECT
808
- ======================================== */
639
+ .feedback-survey-thankyou-icon {
640
+ color: #10b981;
641
+ margin-bottom: var(--spacing-4);
642
+ display: block;
643
+ }
809
644
 
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;
645
+ .feedback-survey-thankyou-title {
646
+ margin: 0;
647
+ font-size: var(--font-size-xl);
648
+ font-weight: var(--font-weight-semibold);
649
+ line-height: var(--line-height-snug);
650
+ color: var(--color-text-primary);
822
651
  }
823
652
 
824
- .feedback-survey-nps-btn.selected:active {
825
- transform: scale(1.06) translateY(1px);
653
+ .feedback-survey-thankyou-btn {
654
+ margin-top: var(--spacing-5);
655
+ display: inline-flex;
656
+ align-items: center;
657
+ justify-content: center;
658
+ gap: var(--spacing-2);
659
+ height: 40px;
660
+ padding: 0 var(--spacing-6);
661
+ background: var(--color-primary);
662
+ color: #ffffff;
663
+ border: 1px solid var(--color-primary);
664
+ border-radius: var(--radius-md);
665
+ font-size: var(--font-size-sm);
666
+ font-weight: var(--font-weight-medium);
667
+ text-decoration: none;
668
+ transition: all var(--transition-base);
826
669
  }
827
670
 
828
- .feedback-survey-csat-btn:active {
829
- transform: scale(1.05) translateY(1px);
830
- transition-duration: 100ms;
671
+ .feedback-survey-thankyou-btn:hover {
672
+ background: var(--color-primary-hover);
673
+ border-color: var(--color-primary-hover);
674
+ color: #ffffff;
675
+ text-decoration: none;
831
676
  }
832
677
 
833
- .feedback-survey-csat-btn.selected:active {
834
- transform: scale(1.2) translateY(1px);
678
+ /* ========================================
679
+ DARK MODE — SELECTED STATE OVERRIDES
680
+ ======================================== */
681
+
682
+ .feedback-survey-theme-dark .feedback-survey-page-choice-btn.selected,
683
+ .feedback-survey-theme-dark .feedback-survey-rating-scale-btn.selected,
684
+ .feedback-survey-theme-dark .feedback-survey-nps-btn.selected {
685
+ color: var(--color-text-primary);
835
686
  }
836
687
 
837
688
  /* ========================================
@@ -864,22 +715,10 @@ export const surveyStyles = `
864
715
  flex-shrink: 0;
865
716
  }
866
717
 
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
- }
718
+ .product7-notification-success { background: #037F0C; }
719
+ .product7-notification-error { background: #D13212; }
720
+ .product7-notification-warning { background: #FF9900; color: #000; }
721
+ .product7-notification-info { background: #0972D3; }
883
722
 
884
723
  /* ========================================
885
724
  RESPONSIVE
@@ -891,7 +730,7 @@ export const surveyStyles = `
891
730
  padding: var(--spacing-5);
892
731
  }
893
732
 
894
- .feedback-survey-nps-btn {
733
+ .feedback-survey-nps-btn {
895
734
  font-size: var(--font-size-xs);
896
735
  }
897
736
 
@@ -912,9 +751,5 @@ export const surveyStyles = `
912
751
  .feedback-survey-rating-scale-btn {
913
752
  font-size: clamp(13px, 5vw, 16px);
914
753
  }
915
-
916
- .feedback-survey-rating-scale + .feedback-survey-labels {
917
- font-size: var(--font-size-xs);
918
- }
919
754
  }
920
755
  `;