@hachther/akilio-widget 0.7.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +281 -26
  2. package/dist/_headers +16 -0
  3. package/dist/akilio-widget.min.js +43 -43
  4. package/dist/assets/EmailIcon.d.ts +2 -0
  5. package/dist/assets/FormIcon.d.ts +2 -0
  6. package/dist/assets/PhoneIcon.d.ts +2 -0
  7. package/dist/components/BrandLogo.d.ts +7 -1
  8. package/dist/components/CartPanel.d.ts +13 -0
  9. package/dist/components/CommerceActions.d.ts +11 -0
  10. package/dist/components/Composer.d.ts +6 -1
  11. package/dist/components/ContactActions.d.ts +2 -2
  12. package/dist/components/EmptyState.d.ts +3 -7
  13. package/dist/components/Icons.d.ts +1 -0
  14. package/dist/components/InlineDecisionCard.d.ts +2 -0
  15. package/dist/components/Launcher.d.ts +6 -1
  16. package/dist/components/MessageBubble.d.ts +8 -2
  17. package/dist/components/MessageList.d.ts +1 -1
  18. package/dist/components/ProductCard.d.ts +4 -2
  19. package/dist/components/ProductCards.d.ts +6 -1
  20. package/dist/components/ProductDetail.d.ts +12 -0
  21. package/dist/components/SectionPrompt.d.ts +2 -0
  22. package/dist/components/TextSelectionPrompt.d.ts +2 -0
  23. package/dist/hooks/proactive-summary.d.ts +1 -0
  24. package/dist/hooks/storage.d.ts +2 -0
  25. package/dist/index.d.ts +5 -1
  26. package/dist/index.min.js +9286 -7073
  27. package/dist/index.umd.min.cjs +36 -36
  28. package/dist/lib/client.d.ts +22 -2
  29. package/dist/lib/copy.d.ts +8 -2
  30. package/dist/loader.js +46 -0
  31. package/dist/locales/en.d.ts +127 -0
  32. package/dist/locales/fr.d.ts +127 -0
  33. package/dist/locales/index.d.ts +3 -0
  34. package/dist/releases/1.0.0/akilio-widget.min.js +45 -0
  35. package/dist/style.css +1744 -88
  36. package/dist/types.d.ts +451 -29
  37. package/dist/vanilla.d.ts +1 -0
  38. package/dist/widget-manifest.json +8 -0
  39. package/package.json +5 -3
package/dist/style.css CHANGED
@@ -125,6 +125,75 @@
125
125
  letter-spacing: -0.01em;
126
126
  }
127
127
 
128
+ .akilio-launcher[data-experience='adaptive'] {
129
+ gap: 0;
130
+ min-width: 54px;
131
+ padding: 11px 12px;
132
+ }
133
+
134
+ .akilio-launcher[data-experience='adaptive'] .akilio-launcher-label {
135
+ display: inline-block;
136
+ max-width: 0;
137
+ margin-left: 0;
138
+ overflow: hidden;
139
+ opacity: 0;
140
+ white-space: nowrap;
141
+ transition:
142
+ max-width 300ms cubic-bezier(0.2, 0.8, 0.2, 1),
143
+ margin 300ms ease,
144
+ opacity 180ms ease;
145
+ }
146
+
147
+ .akilio-launcher[data-experience='adaptive'][data-expanded='true'],
148
+ .akilio-launcher[data-experience='adaptive'][data-answer-ready='true'] {
149
+ gap: 10px;
150
+ padding-right: 14px;
151
+ }
152
+
153
+ .akilio-launcher[data-experience='adaptive'][data-expanded='true']
154
+ .akilio-launcher-label,
155
+ .akilio-launcher[data-experience='adaptive'][data-answer-ready='true']
156
+ .akilio-launcher-label {
157
+ max-width: 255px;
158
+ opacity: 1;
159
+ }
160
+
161
+ .akilio-launcher[data-typing='true'] .akilio-launcher-label::after {
162
+ display: inline-block;
163
+ width: 1px;
164
+ height: 1em;
165
+ margin-left: 3px;
166
+ background: currentColor;
167
+ content: '';
168
+ vertical-align: -0.12em;
169
+ animation: akilio-launcher-caret 700ms steps(1, end) infinite;
170
+ }
171
+
172
+ .akilio-launcher[data-answer-ready='true'] {
173
+ animation: akilio-launcher-answer-ready 700ms cubic-bezier(0.2, 0.8, 0.2, 1)
174
+ both;
175
+ }
176
+
177
+ @keyframes akilio-launcher-answer-ready {
178
+ 0%,
179
+ 100% {
180
+ box-shadow:
181
+ 0 24px 60px rgba(24, 24, 27, 0.25),
182
+ 0 0 0 1px rgba(9, 9, 11, 0.08);
183
+ }
184
+ 45% {
185
+ box-shadow:
186
+ 0 24px 60px rgba(24, 24, 27, 0.25),
187
+ 0 0 0 7px color-mix(in srgb, var(--akilio-primary) 28%, transparent);
188
+ }
189
+ }
190
+
191
+ @keyframes akilio-launcher-caret {
192
+ 50% {
193
+ opacity: 0;
194
+ }
195
+ }
196
+
128
197
  .akilio-contextual-prompt {
129
198
  position: fixed;
130
199
  left: 50%;
@@ -498,6 +567,7 @@
498
567
  transition:
499
568
  background 160ms ease,
500
569
  color 160ms ease;
570
+ padding-inline-start: 4px;
501
571
  }
502
572
 
503
573
  .akilio-header-actions button:hover {
@@ -680,6 +750,303 @@
680
750
  margin-bottom: 0;
681
751
  }
682
752
 
753
+ .akilio-clarification-badge {
754
+ display: inline-flex;
755
+ margin-top: 10px;
756
+ border-radius: 999px;
757
+ background: color-mix(in srgb, var(--akilio-primary) 11%, transparent);
758
+ color: var(--akilio-primary);
759
+ padding: 4px 8px;
760
+ font-size: 11px;
761
+ font-weight: 700;
762
+ }
763
+
764
+ .akilio-clarification-card {
765
+ display: grid;
766
+ gap: 10px;
767
+ margin-top: 12px;
768
+ padding: 13px;
769
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 22%, #d4d4d8);
770
+ border-radius: 14px;
771
+ background: color-mix(in srgb, var(--akilio-primary) 6%, #fff);
772
+ }
773
+
774
+ .akilio-clarification-card strong {
775
+ color: #17211f;
776
+ font-size: 13px;
777
+ line-height: 1.4;
778
+ }
779
+
780
+ .akilio-clarification-card label {
781
+ display: grid;
782
+ gap: 5px;
783
+ color: #3f5f5a;
784
+ font-size: 12px;
785
+ font-weight: 700;
786
+ }
787
+
788
+ .akilio-clarification-card input,
789
+ .akilio-clarification-card select {
790
+ width: 100%;
791
+ box-sizing: border-box;
792
+ border: 1px solid #d4d4d8;
793
+ border-radius: 9px;
794
+ background: #fff;
795
+ color: #18181b;
796
+ padding: 8px 9px;
797
+ font: inherit;
798
+ }
799
+
800
+ .akilio-clarification-card > button,
801
+ .akilio-clarification-options button {
802
+ border: 0;
803
+ border-radius: 999px;
804
+ background: var(--akilio-primary);
805
+ color: var(--akilio-primary-foreground, #fff);
806
+ padding: 8px 12px;
807
+ cursor: pointer;
808
+ font: inherit;
809
+ font-size: 12px;
810
+ font-weight: 700;
811
+ }
812
+
813
+ .akilio-clarification-card > button:disabled {
814
+ cursor: not-allowed;
815
+ opacity: 0.55;
816
+ }
817
+
818
+ .akilio-clarification-options {
819
+ display: flex;
820
+ flex-wrap: wrap;
821
+ gap: 7px;
822
+ }
823
+
824
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-clarification-card {
825
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
826
+ background: color-mix(in srgb, var(--akilio-primary) 14%, #18181b);
827
+ }
828
+
829
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-clarification-card strong {
830
+ color: #fafafa;
831
+ }
832
+
833
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-clarification-card label {
834
+ color: #99f6e4;
835
+ }
836
+
837
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-clarification-card input,
838
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-clarification-card select {
839
+ border-color: #52525b;
840
+ background: #27272a;
841
+ color: #fafafa;
842
+ }
843
+
844
+ @media (prefers-color-scheme: dark) {
845
+ .akilio-root[data-akilio-color-mode='system'] .akilio-clarification-card {
846
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
847
+ background: color-mix(in srgb, var(--akilio-primary) 14%, #18181b);
848
+ }
849
+
850
+ .akilio-root[data-akilio-color-mode='system']
851
+ .akilio-clarification-card
852
+ strong {
853
+ color: #fafafa;
854
+ }
855
+
856
+ .akilio-root[data-akilio-color-mode='system']
857
+ .akilio-clarification-card
858
+ label {
859
+ color: #99f6e4;
860
+ }
861
+
862
+ .akilio-root[data-akilio-color-mode='system']
863
+ .akilio-clarification-card
864
+ input,
865
+ .akilio-root[data-akilio-color-mode='system']
866
+ .akilio-clarification-card
867
+ select {
868
+ border-color: #52525b;
869
+ background: #27272a;
870
+ color: #fafafa;
871
+ }
872
+ }
873
+
874
+ .akilio-human-confirmation {
875
+ display: flex;
876
+ gap: 10px;
877
+ margin-top: 12px;
878
+ padding: 14px;
879
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
880
+ border-radius: 16px;
881
+ background: linear-gradient(
882
+ 135deg,
883
+ color-mix(in srgb, var(--akilio-primary) 10%, #fff),
884
+ #fff 70%
885
+ );
886
+ }
887
+
888
+ .akilio-human-confirmation-icon {
889
+ display: grid;
890
+ width: 32px;
891
+ height: 32px;
892
+ flex: 0 0 32px;
893
+ place-items: center;
894
+ border-radius: 10px;
895
+ background: #fff;
896
+ box-shadow: 0 2px 8px rgba(15, 23, 42, 0.1);
897
+ }
898
+
899
+ .akilio-human-confirmation-icon svg {
900
+ width: 18px;
901
+ height: 18px;
902
+ }
903
+
904
+ .akilio-human-confirmation-content {
905
+ min-width: 0;
906
+ }
907
+
908
+ .akilio-human-confirmation strong {
909
+ display: block;
910
+ margin: 0;
911
+ color: #17211f;
912
+ font-size: 13px;
913
+ line-height: 1.35;
914
+ }
915
+
916
+ .akilio-human-confirmation p {
917
+ margin-top: 4px;
918
+ color: #52525b;
919
+ font-size: 12px;
920
+ line-height: 1.45;
921
+ }
922
+
923
+ .akilio-human-confirmation-consequences {
924
+ color: #3f5f5a !important;
925
+ }
926
+
927
+ .akilio-human-confirmation-error {
928
+ color: #b91c1c !important;
929
+ }
930
+
931
+ .akilio-human-confirmation-actions {
932
+ display: flex;
933
+ flex-wrap: wrap;
934
+ gap: 8px;
935
+ margin-top: 11px;
936
+ }
937
+
938
+ .akilio-human-confirmation button {
939
+ border-radius: 999px;
940
+ padding: 8px 12px;
941
+ cursor: pointer;
942
+ font: inherit;
943
+ font-size: 12px;
944
+ font-weight: 700;
945
+ }
946
+
947
+ .akilio-human-confirmation-confirm {
948
+ margin-top: 10px;
949
+ border: 0;
950
+ background: var(--akilio-primary);
951
+ color: var(--akilio-primary-foreground, #fff);
952
+ }
953
+
954
+ .akilio-human-confirmation-actions .akilio-human-confirmation-confirm {
955
+ margin-top: 0;
956
+ }
957
+
958
+ .akilio-human-confirmation-cancel {
959
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 20%, #d4d4d8);
960
+ background: rgba(255, 255, 255, 0.72);
961
+ color: #3f5f5a;
962
+ }
963
+
964
+ .akilio-human-confirmation button:disabled {
965
+ cursor: wait;
966
+ opacity: 0.65;
967
+ }
968
+
969
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-human-confirmation {
970
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
971
+ background: linear-gradient(
972
+ 135deg,
973
+ color-mix(in srgb, var(--akilio-primary) 18%, #18181b),
974
+ #18181b 70%
975
+ );
976
+ }
977
+
978
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-human-confirmation-icon {
979
+ background: #27272a;
980
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.24);
981
+ }
982
+
983
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-human-confirmation strong {
984
+ color: #fafafa;
985
+ }
986
+
987
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-human-confirmation p {
988
+ color: #d4d4d8;
989
+ }
990
+
991
+ .akilio-root[data-akilio-color-mode='dark']
992
+ .akilio-human-confirmation-consequences {
993
+ color: #99f6e4 !important;
994
+ }
995
+
996
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-human-confirmation-error {
997
+ color: #fca5a5 !important;
998
+ }
999
+
1000
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-human-confirmation-cancel {
1001
+ border-color: #52525b;
1002
+ background: #27272a;
1003
+ color: #e4e4e7;
1004
+ }
1005
+
1006
+ @media (prefers-color-scheme: dark) {
1007
+ .akilio-root[data-akilio-color-mode='system'] .akilio-human-confirmation {
1008
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
1009
+ background: linear-gradient(
1010
+ 135deg,
1011
+ color-mix(in srgb, var(--akilio-primary) 18%, #18181b),
1012
+ #18181b 70%
1013
+ );
1014
+ }
1015
+
1016
+ .akilio-root[data-akilio-color-mode='system']
1017
+ .akilio-human-confirmation-icon {
1018
+ background: #27272a;
1019
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.24);
1020
+ }
1021
+
1022
+ .akilio-root[data-akilio-color-mode='system']
1023
+ .akilio-human-confirmation
1024
+ strong {
1025
+ color: #fafafa;
1026
+ }
1027
+
1028
+ .akilio-root[data-akilio-color-mode='system'] .akilio-human-confirmation p {
1029
+ color: #d4d4d8;
1030
+ }
1031
+
1032
+ .akilio-root[data-akilio-color-mode='system']
1033
+ .akilio-human-confirmation-consequences {
1034
+ color: #99f6e4 !important;
1035
+ }
1036
+
1037
+ .akilio-root[data-akilio-color-mode='system']
1038
+ .akilio-human-confirmation-error {
1039
+ color: #fca5a5 !important;
1040
+ }
1041
+
1042
+ .akilio-root[data-akilio-color-mode='system']
1043
+ .akilio-human-confirmation-cancel {
1044
+ border-color: #52525b;
1045
+ background: #27272a;
1046
+ color: #e4e4e7;
1047
+ }
1048
+ }
1049
+
683
1050
  .akilio-answer ul,
684
1051
  .akilio-answer ol {
685
1052
  margin: 0.625rem 0 0.625rem 1.25rem;
@@ -973,30 +1340,111 @@
973
1340
  backdrop-filter: blur(16px);
974
1341
  }
975
1342
 
976
- .akilio-composer-box {
1343
+ .akilio-intent-actions {
977
1344
  display: flex;
978
- align-items: flex-end;
979
1345
  gap: 8px;
980
- border: 1px solid rgba(212, 212, 216, 0.95);
981
- border-radius: 24px;
982
- background: #f8fafc;
983
- padding: 6px 12px;
984
- box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
985
- transition:
986
- border-color 150ms ease,
987
- background 150ms ease,
988
- box-shadow 150ms ease;
1346
+ overflow-x: auto;
1347
+ padding: 0 0 8px;
1348
+ scrollbar-width: none;
989
1349
  }
990
1350
 
991
- .akilio-composer-box:focus-within {
992
- border-color: color-mix(in srgb, var(--akilio-primary) 55%, #d4d4d8);
993
- background: #fff;
994
- box-shadow:
995
- 0 0 0 4px color-mix(in srgb, var(--akilio-primary) 13%, transparent),
996
- inset 0 1px 2px rgba(15, 23, 42, 0.03);
1351
+ .akilio-intent-actions::-webkit-scrollbar {
1352
+ display: none;
997
1353
  }
998
1354
 
999
- .akilio-composer textarea {
1355
+ .akilio-intent-action {
1356
+ display: inline-flex;
1357
+ flex: 0 0 auto;
1358
+ align-items: center;
1359
+ gap: 6px;
1360
+ min-height: 34px;
1361
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 28%, #d4d4d8);
1362
+ border-radius: 999px;
1363
+ background: color-mix(in srgb, var(--akilio-primary) 7%, #fff);
1364
+ color: color-mix(in srgb, var(--akilio-primary) 82%, #18181b);
1365
+ cursor: pointer;
1366
+ padding: 7px 11px;
1367
+ font: inherit;
1368
+ font-size: 12px;
1369
+ font-weight: 700;
1370
+ line-height: 1.2;
1371
+ transition:
1372
+ background 150ms ease,
1373
+ border-color 150ms ease,
1374
+ transform 150ms ease;
1375
+ }
1376
+
1377
+ .akilio-intent-action svg {
1378
+ width: 15px;
1379
+ height: 15px;
1380
+ }
1381
+
1382
+ .akilio-intent-action:hover:not(:disabled) {
1383
+ border-color: var(--akilio-primary);
1384
+ background: color-mix(in srgb, var(--akilio-primary) 14%, #fff);
1385
+ transform: translateY(-1px);
1386
+ }
1387
+
1388
+ .akilio-intent-action:focus-visible {
1389
+ outline: 3px solid color-mix(in srgb, var(--akilio-primary) 25%, transparent);
1390
+ outline-offset: 2px;
1391
+ }
1392
+
1393
+ .akilio-intent-action:disabled {
1394
+ cursor: not-allowed;
1395
+ opacity: 0.5;
1396
+ }
1397
+
1398
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-intent-action {
1399
+ border-color: color-mix(in srgb, var(--akilio-primary) 42%, #3f3f46);
1400
+ background: color-mix(in srgb, var(--akilio-primary) 18%, #18181b);
1401
+ color: color-mix(in srgb, var(--akilio-primary) 48%, #fafafa);
1402
+ }
1403
+
1404
+ .akilio-root[data-akilio-color-mode='dark']
1405
+ .akilio-intent-action:hover:not(:disabled) {
1406
+ border-color: color-mix(in srgb, var(--akilio-primary) 72%, #a1a1aa);
1407
+ background: color-mix(in srgb, var(--akilio-primary) 28%, #18181b);
1408
+ }
1409
+
1410
+ @media (prefers-color-scheme: dark) {
1411
+ .akilio-root[data-akilio-color-mode='system'] .akilio-intent-action {
1412
+ border-color: color-mix(in srgb, var(--akilio-primary) 42%, #3f3f46);
1413
+ background: color-mix(in srgb, var(--akilio-primary) 18%, #18181b);
1414
+ color: color-mix(in srgb, var(--akilio-primary) 48%, #fafafa);
1415
+ }
1416
+
1417
+ .akilio-root[data-akilio-color-mode='system']
1418
+ .akilio-intent-action:hover:not(:disabled) {
1419
+ border-color: color-mix(in srgb, var(--akilio-primary) 72%, #a1a1aa);
1420
+ background: color-mix(in srgb, var(--akilio-primary) 28%, #18181b);
1421
+ }
1422
+ }
1423
+
1424
+ .akilio-composer-box {
1425
+ display: flex;
1426
+ align-items: flex-end;
1427
+ gap: 8px;
1428
+ border: 1px solid rgba(212, 212, 216, 0.95);
1429
+ border-radius: 24px;
1430
+ background: #f8fafc;
1431
+ padding: 6px 12px;
1432
+ box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
1433
+ transition:
1434
+ border-color 150ms ease,
1435
+ background 150ms ease,
1436
+ box-shadow 150ms ease;
1437
+ }
1438
+
1439
+ .akilio-composer-box:focus-within {
1440
+ border-color: color-mix(in srgb, var(--akilio-primary) 55%, #d4d4d8);
1441
+ background: #fff;
1442
+ box-shadow:
1443
+ 0 0 0 4px color-mix(in srgb, var(--akilio-primary) 13%, transparent),
1444
+ inset 0 1px 2px rgba(15, 23, 42, 0.03);
1445
+ }
1446
+
1447
+ .akilio-composer textarea {
1000
1448
  flex: 1;
1001
1449
  min-height: 36px;
1002
1450
  max-height: 120px;
@@ -1117,8 +1565,7 @@
1117
1565
  width: 13px;
1118
1566
  height: 13px;
1119
1567
  transform: rotate(45deg);
1120
- border-right: 1px solid
1121
- color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
1568
+ border-right: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
1122
1569
  border-bottom: 1px solid
1123
1570
  color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
1124
1571
  background: #fff;
@@ -1242,8 +1689,7 @@
1242
1689
  transform: none;
1243
1690
  }
1244
1691
 
1245
- .akilio-root[data-akilio-launcher-position='right-middle']
1246
- .akilio-coachmark {
1692
+ .akilio-root[data-akilio-launcher-position='right-middle'] .akilio-coachmark {
1247
1693
  top: auto;
1248
1694
  right: 22px;
1249
1695
  bottom: 94px;
@@ -1292,8 +1738,7 @@
1292
1738
  transform: none;
1293
1739
  }
1294
1740
 
1295
- .akilio-root[data-akilio-launcher-position='right-middle']
1296
- .akilio-coachmark {
1741
+ .akilio-root[data-akilio-launcher-position='right-middle'] .akilio-coachmark {
1297
1742
  top: auto;
1298
1743
  right: 16px;
1299
1744
  bottom: 82px;
@@ -1641,10 +2086,16 @@
1641
2086
  background: #18181b;
1642
2087
  color: #e4e4e7;
1643
2088
  }
1644
- .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-options span,
2089
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-option-copy small,
1645
2090
  .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form label {
1646
2091
  color: #a1a1aa;
1647
2092
  }
2093
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-option-icon {
2094
+ background: color-mix(in srgb, var(--akilio-primary) 22%, #18181b);
2095
+ }
2096
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-option-arrow {
2097
+ color: #71717a;
2098
+ }
1648
2099
  .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form input,
1649
2100
  .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form select,
1650
2101
  .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form textarea {
@@ -1656,9 +2107,7 @@
1656
2107
  border-color: color-mix(in srgb, var(--akilio-primary) 34%, #3f3f46);
1657
2108
  background: #18181b;
1658
2109
  }
1659
- .akilio-root[data-akilio-color-mode='dark']
1660
- .akilio-coachmark-content
1661
- strong {
2110
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark-content strong {
1662
2111
  color: #fafafa;
1663
2112
  }
1664
2113
  .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark-content p {
@@ -1717,47 +2166,96 @@
1717
2166
  gap: 9px;
1718
2167
  margin-top: 12px;
1719
2168
  }
2169
+ .akilio-conversation-recap {
2170
+ justify-self: start;
2171
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 26%, #d4d4d8);
2172
+ border-radius: 999px;
2173
+ background: transparent;
2174
+ color: var(--akilio-primary);
2175
+ cursor: pointer;
2176
+ padding: 6px 10px;
2177
+ font: inherit;
2178
+ font-size: 11px;
2179
+ font-weight: 700;
2180
+ }
2181
+ .akilio-conversation-recap:hover {
2182
+ background: color-mix(in srgb, var(--akilio-primary) 10%, transparent);
2183
+ }
1720
2184
  .akilio-contact-options {
1721
2185
  display: grid;
1722
- grid-auto-rows: 1fr;
1723
- gap: 7px;
2186
+ grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
2187
+ gap: 6px;
1724
2188
  }
1725
2189
  .akilio-contact-options a {
1726
- display: flex;
1727
- min-height: 54px;
1728
- flex-direction: column;
1729
- align-items: stretch;
1730
- justify-content: flex-start;
1731
- gap: 4px;
2190
+ display: grid;
2191
+ grid-template-columns: 27px minmax(0, 1fr) 12px;
2192
+ min-height: 44px;
2193
+ align-items: center;
2194
+ gap: 7px;
1732
2195
  border: 1px solid #e2e8f0;
1733
2196
  border-radius: 10px;
1734
- background: #fff;
2197
+ background: linear-gradient(135deg, #fff, #f8fafc);
1735
2198
  color: #334155;
1736
- padding: 7px 9px;
2199
+ padding: 6px 7px;
1737
2200
  text-decoration: none;
2201
+ transition:
2202
+ border-color 160ms ease,
2203
+ box-shadow 160ms ease,
2204
+ transform 160ms ease;
1738
2205
  }
1739
- .akilio-contact-options strong {
1740
- align-self: flex-start;
2206
+ .akilio-contact-option-icon {
2207
+ display: grid;
2208
+ width: 27px;
2209
+ height: 27px;
2210
+ place-items: center;
2211
+ border-radius: 8px;
2212
+ background: color-mix(in srgb, var(--akilio-primary) 12%, #fff);
2213
+ color: var(--akilio-primary);
2214
+ }
2215
+ .akilio-contact-option-icon svg {
2216
+ width: 15px;
2217
+ height: 15px;
2218
+ }
2219
+ .akilio-contact-option-copy {
2220
+ display: grid;
2221
+ min-width: 0;
2222
+ gap: 2px;
2223
+ }
2224
+ .akilio-contact-option-copy strong {
2225
+ overflow: hidden;
1741
2226
  font-size: 11px;
1742
2227
  line-height: 1.25;
1743
2228
  text-align: left;
2229
+ text-overflow: ellipsis;
2230
+ white-space: nowrap;
1744
2231
  }
1745
- .akilio-contact-options a:hover {
1746
- border-color: color-mix(in srgb, var(--akilio-primary) 40%, #e2e8f0);
1747
- color: var(--akilio-primary);
1748
- }
1749
- .akilio-contact-options span {
1750
- align-self: flex-end;
1751
- max-width: 100%;
1752
- margin-top: auto;
2232
+ .akilio-contact-option-copy small {
1753
2233
  overflow: hidden;
1754
2234
  color: #64748b;
1755
2235
  font-size: 10px;
1756
2236
  line-height: 1.2;
1757
- text-align: right;
1758
2237
  text-overflow: ellipsis;
1759
2238
  white-space: nowrap;
1760
2239
  }
2240
+ .akilio-contact-option-arrow {
2241
+ width: 12px;
2242
+ height: 12px;
2243
+ color: #94a3b8;
2244
+ transition:
2245
+ transform 160ms ease,
2246
+ color 160ms ease;
2247
+ }
2248
+ .akilio-contact-options a:hover {
2249
+ border-color: color-mix(in srgb, var(--akilio-primary) 40%, #e2e8f0);
2250
+ box-shadow: 0 5px 14px
2251
+ color-mix(in srgb, var(--akilio-primary) 13%, transparent);
2252
+ color: var(--akilio-primary);
2253
+ transform: translateY(-1px);
2254
+ }
2255
+ .akilio-contact-options a:hover .akilio-contact-option-arrow {
2256
+ color: var(--akilio-primary);
2257
+ transform: translateX(2px);
2258
+ }
1761
2259
  .akilio-contact-start,
1762
2260
  .akilio-contact-submit {
1763
2261
  justify-self: start;
@@ -1865,6 +2363,19 @@
1865
2363
  cursor: wait;
1866
2364
  opacity: 0.55;
1867
2365
  }
2366
+ .akilio-human-handoff-form {
2367
+ margin-top: 12px;
2368
+ }
2369
+ .akilio-honeypot {
2370
+ position: absolute;
2371
+ width: 1px;
2372
+ height: 1px;
2373
+ overflow: hidden;
2374
+ clip: rect(0 0 0 0);
2375
+ clip-path: inset(50%);
2376
+ white-space: nowrap;
2377
+ }
2378
+
1868
2379
  .akilio-contact-success,
1869
2380
  .akilio-contact-error {
1870
2381
  margin: 0;
@@ -1889,15 +2400,201 @@
1889
2400
  margin-top: 14px;
1890
2401
  min-width: 0;
1891
2402
  }
1892
- .akilio-products-heading {
2403
+ .akilio-commerce-result {
2404
+ overflow: hidden;
2405
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 20%, #d4d4d8);
2406
+ border-radius: 18px;
2407
+ background: color-mix(in srgb, var(--akilio-primary) 3%, #fff);
2408
+ padding: 11px;
2409
+ }
2410
+
2411
+ .akilio-inline-decision-card {
2412
+ display: grid;
2413
+ gap: 12px;
2414
+ max-width: 420px;
2415
+ padding: 16px;
2416
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
2417
+ border-radius: 16px;
2418
+ background: linear-gradient(
2419
+ 135deg,
2420
+ color-mix(in srgb, var(--akilio-primary) 10%, #fff),
2421
+ #fff 70%
2422
+ );
2423
+ color: #17211f;
2424
+ }
2425
+ .akilio-inline-decision-card h3,
2426
+ .akilio-inline-decision-card p {
2427
+ margin: 0;
2428
+ }
2429
+ .akilio-inline-decision-card h3 {
2430
+ font-size: 15px;
2431
+ }
2432
+ .akilio-inline-decision-card p {
2433
+ margin-top: 5px;
2434
+ color: #52525b;
2435
+ font-size: 13px;
2436
+ line-height: 1.45;
2437
+ }
2438
+ .akilio-inline-decision-card > button {
2439
+ justify-self: start;
2440
+ border: 0;
2441
+ border-radius: 999px;
2442
+ padding: 9px 13px;
2443
+ background: var(--akilio-primary);
2444
+ color: var(--akilio-primary-foreground, #fff);
2445
+ cursor: pointer;
2446
+ font: inherit;
2447
+ font-size: 12px;
2448
+ font-weight: 700;
2449
+ }
2450
+ .akilio-inline-decision-card > button:hover {
2451
+ background: var(--akilio-primary-hover);
2452
+ }
2453
+ .akilio-inline-decision-followups {
2454
+ display: flex;
2455
+ flex-wrap: wrap;
2456
+ gap: 7px;
2457
+ }
2458
+ .akilio-inline-decision-followups button {
2459
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 22%, #d4d4d8);
2460
+ border-radius: 999px;
2461
+ background: rgba(255, 255, 255, 0.72);
2462
+ color: #3f5f5a;
2463
+ padding: 6px 9px;
2464
+ cursor: pointer;
2465
+ font: inherit;
2466
+ font-size: 11px;
2467
+ }
2468
+ .akilio-section-prompt {
1893
2469
  display: flex;
1894
2470
  align-items: center;
1895
2471
  justify-content: space-between;
2472
+ gap: 12px;
2473
+ max-width: 560px;
2474
+ padding: 12px 14px;
2475
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 22%, #d4d4d8);
2476
+ border-radius: 12px;
2477
+ background: color-mix(in srgb, var(--akilio-primary) 7%, #fff);
2478
+ }
2479
+ .akilio-section-prompt-copy {
2480
+ min-width: 0;
2481
+ display: grid;
2482
+ gap: 3px;
2483
+ }
2484
+ .akilio-section-prompt-copy span {
2485
+ color: #3f5f5a;
2486
+ font-size: 11px;
2487
+ font-weight: 650;
2488
+ }
2489
+ .akilio-section-prompt-copy strong {
2490
+ color: #17211f;
2491
+ font-size: 13px;
2492
+ line-height: 1.35;
2493
+ }
2494
+ .akilio-section-prompt button {
2495
+ flex: 0 0 34px;
2496
+ width: 34px;
2497
+ height: 34px;
2498
+ border: 0;
2499
+ border-radius: 50%;
2500
+ background: var(--akilio-primary);
2501
+ color: var(--akilio-primary-foreground, #fff);
2502
+ cursor: pointer;
2503
+ font: inherit;
2504
+ font-size: 18px;
2505
+ font-weight: 700;
2506
+ }
2507
+ .akilio-section-prompt button:hover {
2508
+ background: var(--akilio-primary-hover);
2509
+ }
2510
+ .akilio-text-selection-prompt {
2511
+ position: absolute;
2512
+ z-index: 2147483647;
2513
+ border: 0;
2514
+ border-radius: 999px;
2515
+ background: var(--akilio-primary);
2516
+ color: var(--akilio-primary-foreground, #fff);
2517
+ padding: 7px 10px;
2518
+ box-shadow: 0 4px 12px rgba(15, 23, 42, 0.18);
2519
+ cursor: pointer;
2520
+ font: inherit;
2521
+ font-size: 11px;
2522
+ font-weight: 700;
2523
+ }
2524
+ .akilio-text-selection-prompt:hover {
2525
+ background: var(--akilio-primary-hover);
2526
+ }
2527
+ @media (max-width: 480px) {
2528
+ .akilio-section-prompt {
2529
+ align-items: stretch;
2530
+ flex-direction: column;
2531
+ }
2532
+ .akilio-section-prompt button {
2533
+ width: 100%;
2534
+ }
2535
+ }
2536
+ @media (prefers-color-scheme: dark) {
2537
+ .akilio-inline-decision-card {
2538
+ background: linear-gradient(
2539
+ 135deg,
2540
+ color-mix(in srgb, var(--akilio-primary) 18%, #18181b),
2541
+ #18181b 70%
2542
+ );
2543
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
2544
+ color: #fafafa;
2545
+ }
2546
+ .akilio-inline-decision-card p {
2547
+ color: #d4d4d8;
2548
+ }
2549
+ .akilio-inline-decision-followups button {
2550
+ border-color: #52525b;
2551
+ background: #27272a;
2552
+ color: #e4e4e7;
2553
+ }
2554
+ .akilio-section-prompt {
2555
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
2556
+ background: color-mix(in srgb, var(--akilio-primary) 18%, #18181b);
2557
+ }
2558
+ .akilio-section-prompt-copy span {
2559
+ color: #d4d4d8;
2560
+ }
2561
+ .akilio-section-prompt-copy strong {
2562
+ color: #fafafa;
2563
+ }
2564
+ }
2565
+ .akilio-products-heading {
2566
+ display: flex;
2567
+ align-items: center;
2568
+ gap: 8px;
1896
2569
  margin-bottom: 9px;
1897
2570
  font-size: 12px;
1898
2571
  color: #64748b;
1899
2572
  }
1900
- .akilio-products-heading span {
2573
+ .akilio-products-heading strong {
2574
+ min-width: 0;
2575
+ flex: 1;
2576
+ color: #334155;
2577
+ font-size: 12px;
2578
+ }
2579
+ .akilio-commerce-icon {
2580
+ display: grid;
2581
+ width: 26px;
2582
+ height: 26px;
2583
+ flex: 0 0 26px;
2584
+ place-items: center;
2585
+ border-radius: 9px;
2586
+ background: color-mix(in srgb, var(--akilio-primary) 12%, #fff);
2587
+ color: var(--akilio-primary);
2588
+ }
2589
+ .akilio-commerce-icon svg {
2590
+ width: 15px;
2591
+ height: 15px;
2592
+ stroke: currentColor;
2593
+ stroke-linecap: round;
2594
+ stroke-linejoin: round;
2595
+ stroke-width: 1.8;
2596
+ }
2597
+ .akilio-products-heading .akilio-products-count {
1901
2598
  display: inline-flex;
1902
2599
  align-items: center;
1903
2600
  justify-content: center;
@@ -1909,25 +2606,614 @@
1909
2606
  color: #4338ca;
1910
2607
  font-weight: 700;
1911
2608
  }
1912
- /* Product grid layout variants */
1913
- .akilio-products-grid {
2609
+ .akilio-product-group {
1914
2610
  display: grid;
1915
- grid-template-columns: repeat(2, minmax(0, 1fr));
1916
- gap: 10px;
2611
+ gap: 6px;
1917
2612
  }
1918
-
1919
- /* Vertical layout: 2-column grid (default) */
2613
+ .akilio-product-group + .akilio-product-group {
2614
+ margin-top: 11px;
2615
+ padding-top: 10px;
2616
+ border-top: 1px solid #e2e8f0;
2617
+ }
2618
+ .akilio-product-group > small {
2619
+ color: #64748b;
2620
+ font-size: 10px;
2621
+ font-weight: 700;
2622
+ letter-spacing: 0.02em;
2623
+ text-transform: uppercase;
2624
+ }
2625
+ /* Product grid layout variants */
2626
+ .akilio-products-grid {
2627
+ display: grid;
2628
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2629
+ gap: 10px;
2630
+ }
2631
+
2632
+ .akilio-products-grid--detail {
2633
+ display: grid;
2634
+ grid-template-columns: repeat(1, minmax(0, 1fr));
2635
+ gap: 10px;
2636
+ }
2637
+ .akilio-products-grid--comparison {
2638
+ display: grid;
2639
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2640
+ gap: 8px;
2641
+ }
2642
+
2643
+ /* Vertical layout: 2-column grid (default) */
1920
2644
  .akilio-products-grid--vertical {
1921
2645
  display: grid;
1922
2646
  grid-template-columns: repeat(2, minmax(0, 1fr));
1923
2647
  gap: 10px;
1924
2648
  }
1925
-
1926
- /* Horizontal layout: single column full-width cards */
1927
- .akilio-products-grid--horizontal {
1928
- display: flex;
1929
- flex-direction: column;
1930
- gap: 10px;
2649
+
2650
+ /* Horizontal layout: single column full-width cards */
2651
+ .akilio-products-grid--horizontal {
2652
+ display: flex;
2653
+ flex-direction: column;
2654
+ gap: 10px;
2655
+ }
2656
+
2657
+ .akilio-products-grid--carousel {
2658
+ display: flex;
2659
+ gap: 10px;
2660
+ overflow-x: auto;
2661
+ overscroll-behavior-x: contain;
2662
+ padding: 2px 2px 8px;
2663
+ scroll-padding-inline: 2px;
2664
+ scroll-snap-type: x mandatory;
2665
+ scrollbar-width: thin;
2666
+ -webkit-overflow-scrolling: touch;
2667
+ }
2668
+
2669
+ .akilio-products-grid--carousel > .akilio-product-card {
2670
+ flex: 0 0 min(76%, 240px);
2671
+ scroll-snap-align: start;
2672
+ }
2673
+ .akilio-commerce-actions {
2674
+ display: grid;
2675
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2676
+ gap: 8px;
2677
+ margin-top: 10px;
2678
+ padding-top: 10px;
2679
+ border-top: 1px solid #e2e8f0;
2680
+ }
2681
+ .akilio-commerce-actions--embedded {
2682
+ grid-template-columns: 1fr;
2683
+ margin-top: 8px;
2684
+ padding-top: 0;
2685
+ border-top: 0;
2686
+ }
2687
+
2688
+ .akilio-header-cart {
2689
+ position: relative;
2690
+ }
2691
+ .akilio-header-cart span {
2692
+ position: absolute;
2693
+ top: -5px;
2694
+ right: -5px;
2695
+ display: grid;
2696
+ min-width: 14px;
2697
+ height: 14px;
2698
+ place-items: center;
2699
+ border: 2px solid var(--akilio-surface, #fff);
2700
+ border-radius: 999px;
2701
+ background: var(--akilio-primary);
2702
+ color: var(--akilio-primary-foreground, #fff);
2703
+ font-size: 8px;
2704
+ font-weight: 800;
2705
+ }
2706
+ .akilio-cart-panel {
2707
+ display: grid;
2708
+ gap: 11px;
2709
+ margin: 0 14px 10px;
2710
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
2711
+ border-radius: 16px;
2712
+ background: color-mix(in srgb, var(--akilio-primary) 5%, #fff);
2713
+ box-shadow: 0 12px 24px rgba(15, 23, 42, 0.09);
2714
+ padding: 11px;
2715
+ }
2716
+ .akilio-cart-panel > header,
2717
+ .akilio-cart-panel > header > div {
2718
+ display: flex;
2719
+ align-items: center;
2720
+ }
2721
+ .akilio-cart-panel > header {
2722
+ justify-content: space-between;
2723
+ gap: 10px;
2724
+ }
2725
+ .akilio-cart-panel > header > div {
2726
+ gap: 7px;
2727
+ }
2728
+ .akilio-cart-panel-icon {
2729
+ display: grid;
2730
+ width: 28px;
2731
+ height: 28px;
2732
+ place-items: center;
2733
+ border-radius: 9px;
2734
+ background: color-mix(in srgb, var(--akilio-primary) 12%, #fff);
2735
+ color: var(--akilio-primary);
2736
+ }
2737
+ .akilio-cart-panel-icon svg {
2738
+ width: 16px;
2739
+ height: 16px;
2740
+ stroke: currentColor;
2741
+ stroke-linecap: round;
2742
+ stroke-linejoin: round;
2743
+ stroke-width: 1.8;
2744
+ }
2745
+ .akilio-cart-panel header strong {
2746
+ color: #1e293b;
2747
+ font-size: 12px;
2748
+ }
2749
+ .akilio-cart-refresh,
2750
+ .akilio-cart-close {
2751
+ border: 0;
2752
+ background: transparent;
2753
+ color: #64748b;
2754
+ cursor: pointer;
2755
+ font: inherit;
2756
+ }
2757
+ .akilio-cart-refresh {
2758
+ padding: 4px 6px;
2759
+ color: var(--akilio-primary);
2760
+ font-size: 10px;
2761
+ font-weight: 700;
2762
+ }
2763
+ .akilio-cart-close {
2764
+ display: grid;
2765
+ width: 25px;
2766
+ height: 25px;
2767
+ place-items: center;
2768
+ border-radius: 8px;
2769
+ }
2770
+ .akilio-cart-close:hover {
2771
+ background: #e2e8f0;
2772
+ }
2773
+ .akilio-cart-close svg {
2774
+ width: 14px;
2775
+ height: 14px;
2776
+ }
2777
+ .akilio-cart-status {
2778
+ margin: 2px 0;
2779
+ color: #64748b;
2780
+ font-size: 11px;
2781
+ }
2782
+ .akilio-cart-lines {
2783
+ display: grid;
2784
+ gap: 8px;
2785
+ max-height: 176px;
2786
+ margin: 0;
2787
+ padding: 0;
2788
+ overflow: auto;
2789
+ list-style: none;
2790
+ }
2791
+ .akilio-cart-lines li {
2792
+ display: grid;
2793
+ grid-template-columns: 36px minmax(0, 1fr) auto;
2794
+ align-items: center;
2795
+ gap: 10px;
2796
+ border-top: 1px solid #e2e8f0;
2797
+ padding-top: 8px;
2798
+ }
2799
+ .akilio-cart-line-media {
2800
+ display: grid;
2801
+ width: 36px;
2802
+ height: 36px;
2803
+ place-items: center;
2804
+ overflow: hidden;
2805
+ border-radius: 8px;
2806
+ background: #f1f5f9;
2807
+ color: var(--akilio-primary);
2808
+ font-size: 12px;
2809
+ font-weight: 800;
2810
+ }
2811
+ .akilio-cart-line-media img {
2812
+ width: 100%;
2813
+ height: 100%;
2814
+ object-fit: cover;
2815
+ }
2816
+ .akilio-cart-line-copy {
2817
+ display: grid;
2818
+ min-width: 0;
2819
+ gap: 2px;
2820
+ }
2821
+ .akilio-cart-lines strong,
2822
+ .akilio-cart-lines small {
2823
+ overflow: hidden;
2824
+ text-overflow: ellipsis;
2825
+ white-space: nowrap;
2826
+ }
2827
+ .akilio-cart-lines strong {
2828
+ color: #334155;
2829
+ font-size: 11px;
2830
+ }
2831
+ .akilio-cart-lines small {
2832
+ color: #64748b;
2833
+ font-size: 9px;
2834
+ }
2835
+ .akilio-cart-lines li > span {
2836
+ flex: 0 0 auto;
2837
+ color: #1e293b;
2838
+ font-size: 11px;
2839
+ font-weight: 750;
2840
+ }
2841
+ .akilio-cart-checkout {
2842
+ display: flex;
2843
+ min-height: 36px;
2844
+ align-items: center;
2845
+ justify-content: center;
2846
+ gap: 7px;
2847
+ border-radius: 10px;
2848
+ background: var(--akilio-primary);
2849
+ color: var(--akilio-primary-foreground, #fff);
2850
+ font-size: 11px;
2851
+ font-weight: 750;
2852
+ text-decoration: none;
2853
+ }
2854
+ .akilio-cart-line-actions {
2855
+ display: flex;
2856
+ flex-wrap: wrap;
2857
+ align-items: center;
2858
+ gap: 5px;
2859
+ margin-top: 3px;
2860
+ }
2861
+ .akilio-cart-quantity {
2862
+ display: inline-grid;
2863
+ grid-template-columns: 22px minmax(20px, auto) 22px;
2864
+ min-height: 22px;
2865
+ align-items: center;
2866
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 27%, #cbd5e1);
2867
+ border-radius: 7px;
2868
+ color: #334155;
2869
+ font-size: 10px;
2870
+ font-weight: 750;
2871
+ text-align: center;
2872
+ }
2873
+ .akilio-cart-quantity button {
2874
+ width: 22px;
2875
+ height: 20px;
2876
+ border: 0;
2877
+ background: transparent;
2878
+ color: var(--akilio-primary);
2879
+ cursor: pointer;
2880
+ font: inherit;
2881
+ }
2882
+ .akilio-cart-quantity button:disabled {
2883
+ cursor: not-allowed;
2884
+ opacity: 0.42;
2885
+ }
2886
+ .akilio-cart-line-action {
2887
+ display: inline-flex;
2888
+ min-height: 22px;
2889
+ align-items: center;
2890
+ justify-content: center;
2891
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 27%, #cbd5e1);
2892
+ border-radius: 7px;
2893
+ background: transparent;
2894
+ color: var(--akilio-primary);
2895
+ padding: 2px 6px;
2896
+ font-size: 9px;
2897
+ font-weight: 750;
2898
+ text-decoration: none;
2899
+ cursor: pointer;
2900
+ }
2901
+ .akilio-cart-line-action:hover {
2902
+ background: color-mix(in srgb, var(--akilio-primary) 8%, transparent);
2903
+ color: var(--akilio-primary);
2904
+ }
2905
+ .akilio-cart-line-action--remove {
2906
+ box-sizing: border-box;
2907
+ height: 22px;
2908
+ min-height: 22px;
2909
+ border-color: #fecaca;
2910
+ color: #dc2626;
2911
+ }
2912
+ .akilio-cart-line-action--remove:hover {
2913
+ border-color: #fca5a5;
2914
+ background: #fff1f2;
2915
+ color: #b91c1c;
2916
+ }
2917
+ .akilio-cart-line-confirmation {
2918
+ display: grid;
2919
+ grid-column: 1 / -1;
2920
+ gap: 5px;
2921
+ border-radius: 8px;
2922
+ background: color-mix(in srgb, var(--akilio-primary) 8%, #fff);
2923
+ padding: 6px;
2924
+ }
2925
+ .akilio-cart-line-confirmation > small {
2926
+ color: #334155;
2927
+ font-size: 9px;
2928
+ font-weight: 650;
2929
+ }
2930
+ .akilio-cart-line-confirmation > div {
2931
+ display: flex;
2932
+ gap: 5px;
2933
+ }
2934
+ .akilio-cart-line-confirmation button {
2935
+ min-height: 23px;
2936
+ border: 0;
2937
+ border-radius: 6px;
2938
+ background: var(--akilio-primary);
2939
+ color: var(--akilio-primary-foreground, #fff);
2940
+ padding: 3px 7px;
2941
+ cursor: pointer;
2942
+ font: inherit;
2943
+ font-size: 9px;
2944
+ font-weight: 750;
2945
+ }
2946
+ .akilio-cart-line-confirmation button + button {
2947
+ background: transparent;
2948
+ color: #475569;
2949
+ }
2950
+ .akilio-cart-checkout:hover {
2951
+ background: var(--akilio-primary-hover);
2952
+ color: var(--akilio-primary-foreground, #fff);
2953
+ }
2954
+ .akilio-commerce-actions--embedded .akilio-commerce-action,
2955
+ .akilio-commerce-actions--embedded .akilio-commerce-confirmation,
2956
+ .akilio-commerce-actions--embedded .akilio-commerce-action-success {
2957
+ grid-column: 1;
2958
+ }
2959
+ .akilio-product-card--detail .akilio-commerce-actions--embedded {
2960
+ margin-top: 12px;
2961
+ }
2962
+ .akilio-commerce-action {
2963
+ position: relative;
2964
+ display: grid;
2965
+ width: 100%;
2966
+ min-width: 0;
2967
+ min-height: 50px;
2968
+ grid-template-columns: 30px minmax(0, 1fr) 14px;
2969
+ align-items: center;
2970
+ gap: 8px;
2971
+ overflow: hidden;
2972
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 28%, #cbd5e1);
2973
+ border-radius: 13px;
2974
+ background: linear-gradient(145deg, #fff, #f8fafc);
2975
+ color: var(--akilio-primary);
2976
+ padding: 8px 9px;
2977
+ box-shadow: 0 2px 7px rgba(15, 23, 42, 0.04);
2978
+ cursor: pointer;
2979
+ font: inherit;
2980
+ text-align: left;
2981
+ transition:
2982
+ border-color 160ms ease,
2983
+ box-shadow 160ms ease,
2984
+ transform 160ms ease;
2985
+ }
2986
+ .akilio-commerce-action:hover:not(:disabled) {
2987
+ border-color: color-mix(in srgb, var(--akilio-primary) 58%, #cbd5e1);
2988
+ box-shadow: 0 7px 18px
2989
+ color-mix(in srgb, var(--akilio-primary) 13%, transparent);
2990
+ transform: translateY(-1px);
2991
+ }
2992
+ .akilio-commerce-action:focus-visible {
2993
+ outline: 3px solid color-mix(in srgb, var(--akilio-primary) 24%, transparent);
2994
+ outline-offset: 2px;
2995
+ }
2996
+ .akilio-commerce-action-icon {
2997
+ display: grid;
2998
+ width: 30px;
2999
+ height: 30px;
3000
+ place-items: center;
3001
+ border-radius: 10px;
3002
+ background: color-mix(in srgb, var(--akilio-primary) 11%, #fff);
3003
+ color: var(--akilio-primary);
3004
+ }
3005
+ .akilio-commerce-action-icon svg,
3006
+ .akilio-commerce-confirmation-icon svg {
3007
+ width: 17px;
3008
+ height: 17px;
3009
+ stroke: currentColor;
3010
+ stroke-linecap: round;
3011
+ stroke-linejoin: round;
3012
+ stroke-width: 1.8;
3013
+ }
3014
+ .akilio-commerce-action-copy {
3015
+ display: grid;
3016
+ min-width: 0;
3017
+ gap: 2px;
3018
+ }
3019
+ .akilio-commerce-action-copy strong,
3020
+ .akilio-commerce-action-copy small {
3021
+ overflow: hidden;
3022
+ text-overflow: ellipsis;
3023
+ white-space: nowrap;
3024
+ }
3025
+ .akilio-commerce-action-copy strong {
3026
+ color: inherit;
3027
+ font-size: 11px;
3028
+ font-weight: 780;
3029
+ }
3030
+ .akilio-commerce-action-copy small {
3031
+ color: #64748b;
3032
+ font-size: 9px;
3033
+ font-weight: 600;
3034
+ }
3035
+ .akilio-commerce-action-arrow {
3036
+ color: #94a3b8;
3037
+ font-size: 14px;
3038
+ transition: transform 160ms ease;
3039
+ }
3040
+ .akilio-commerce-action:hover .akilio-commerce-action-arrow {
3041
+ transform: translateX(2px);
3042
+ }
3043
+ .akilio-commerce-action--add_to_cart {
3044
+ border-color: var(--akilio-primary);
3045
+ background: linear-gradient(
3046
+ 135deg,
3047
+ var(--akilio-primary),
3048
+ var(--akilio-primary-hover)
3049
+ );
3050
+ color: var(--akilio-primary-foreground, #fff);
3051
+ box-shadow: 0 5px 14px
3052
+ color-mix(in srgb, var(--akilio-primary) 23%, transparent);
3053
+ }
3054
+ .akilio-commerce-action--add_to_cart .akilio-commerce-action-icon {
3055
+ background: rgba(255, 255, 255, 0.16);
3056
+ color: inherit;
3057
+ }
3058
+ .akilio-commerce-action--add_to_cart .akilio-commerce-action-copy small,
3059
+ .akilio-commerce-action--add_to_cart .akilio-commerce-action-arrow {
3060
+ color: inherit;
3061
+ opacity: 0.76;
3062
+ }
3063
+ .akilio-commerce-action:disabled {
3064
+ cursor: wait;
3065
+ opacity: 0.65;
3066
+ }
3067
+ .akilio-commerce-confirmation {
3068
+ display: grid;
3069
+ grid-column: 1 / -1;
3070
+ width: 100%;
3071
+ gap: 10px;
3072
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
3073
+ border-radius: 14px;
3074
+ background: color-mix(in srgb, var(--akilio-primary) 5%, #fff);
3075
+ padding: 10px;
3076
+ color: #334155;
3077
+ font-size: 11px;
3078
+ }
3079
+ .akilio-commerce-confirmation-product {
3080
+ display: grid;
3081
+ grid-template-columns: 38px minmax(0, 1fr);
3082
+ align-items: center;
3083
+ gap: 9px;
3084
+ }
3085
+ .akilio-commerce-confirmation-product img,
3086
+ .akilio-commerce-confirmation-icon {
3087
+ width: 38px;
3088
+ height: 38px;
3089
+ border-radius: 10px;
3090
+ object-fit: cover;
3091
+ }
3092
+ .akilio-commerce-confirmation-icon {
3093
+ display: grid;
3094
+ place-items: center;
3095
+ background: color-mix(in srgb, var(--akilio-primary) 12%, #fff);
3096
+ color: var(--akilio-primary);
3097
+ }
3098
+ .akilio-commerce-confirmation-product > span {
3099
+ display: grid;
3100
+ min-width: 0;
3101
+ gap: 2px;
3102
+ }
3103
+ .akilio-commerce-confirmation-product strong,
3104
+ .akilio-commerce-confirmation-product small {
3105
+ overflow: hidden;
3106
+ text-overflow: ellipsis;
3107
+ white-space: nowrap;
3108
+ }
3109
+ .akilio-commerce-confirmation-product strong {
3110
+ color: #1e293b;
3111
+ font-size: 11px;
3112
+ }
3113
+ .akilio-commerce-confirmation-product small {
3114
+ color: #64748b;
3115
+ font-size: 9px;
3116
+ }
3117
+ .akilio-commerce-confirmation-actions {
3118
+ display: flex;
3119
+ gap: 6px;
3120
+ }
3121
+ .akilio-commerce-confirmation button {
3122
+ border: 0;
3123
+ border-radius: 9px;
3124
+ min-height: 31px;
3125
+ padding: 6px 11px;
3126
+ cursor: pointer;
3127
+ font: inherit;
3128
+ font-size: 10px;
3129
+ font-weight: 750;
3130
+ }
3131
+ .akilio-commerce-confirm {
3132
+ display: inline-flex;
3133
+ align-items: center;
3134
+ gap: 6px;
3135
+ background: var(--akilio-primary);
3136
+ color: var(--akilio-primary-foreground, #fff);
3137
+ }
3138
+ .akilio-commerce-cancel {
3139
+ background: #e2e8f0;
3140
+ color: #334155;
3141
+ }
3142
+ .akilio-commerce-confirmation small,
3143
+ .akilio-commerce-actions > small {
3144
+ width: 100%;
3145
+ color: #b91c1c;
3146
+ font-size: 10px;
3147
+ }
3148
+ .akilio-commerce-action-success {
3149
+ display: grid;
3150
+ grid-column: 1 / -1;
3151
+ grid-template-columns: 28px minmax(0, 1fr);
3152
+ align-items: center;
3153
+ gap: 8px;
3154
+ border: 1px solid #a7f3d0;
3155
+ border-radius: 12px;
3156
+ background: #ecfdf5;
3157
+ color: #047857;
3158
+ padding: 8px 10px;
3159
+ font-size: 11px;
3160
+ }
3161
+ .akilio-commerce-success-icon {
3162
+ display: grid;
3163
+ width: 28px;
3164
+ height: 28px;
3165
+ place-items: center;
3166
+ border-radius: 50%;
3167
+ background: #d1fae5;
3168
+ font-weight: 800;
3169
+ }
3170
+ .akilio-commerce-action-success > span:last-child {
3171
+ display: grid;
3172
+ min-width: 0;
3173
+ gap: 1px;
3174
+ }
3175
+ .akilio-commerce-action-success strong {
3176
+ font-weight: 780;
3177
+ }
3178
+ .akilio-commerce-action-success small {
3179
+ overflow: hidden;
3180
+ color: #059669;
3181
+ font-size: 9px;
3182
+ text-overflow: ellipsis;
3183
+ white-space: nowrap;
3184
+ }
3185
+ .akilio-commerce-spinner {
3186
+ width: 13px;
3187
+ height: 13px;
3188
+ border: 2px solid currentColor;
3189
+ border-right-color: transparent;
3190
+ border-radius: 50%;
3191
+ animation: akilio-spin 700ms linear infinite;
3192
+ }
3193
+ @keyframes akilio-spin {
3194
+ to {
3195
+ transform: rotate(360deg);
3196
+ }
3197
+ }
3198
+ @media (max-width: 430px) {
3199
+ .akilio-commerce-actions {
3200
+ grid-template-columns: 1fr;
3201
+ }
3202
+ .akilio-commerce-action,
3203
+ .akilio-commerce-confirmation,
3204
+ .akilio-commerce-action-success {
3205
+ grid-column: 1;
3206
+ }
3207
+ }
3208
+ @media (prefers-reduced-motion: reduce) {
3209
+ .akilio-commerce-action,
3210
+ .akilio-commerce-action-arrow {
3211
+ transition: none;
3212
+ }
3213
+ .akilio-commerce-action:hover:not(:disabled),
3214
+ .akilio-commerce-action:hover .akilio-commerce-action-arrow {
3215
+ transform: none;
3216
+ }
1931
3217
  }
1932
3218
 
1933
3219
  /* Responsive: collapse vertical to single column on small screens */
@@ -1950,10 +3236,14 @@
1950
3236
  .akilio-product-card {
1951
3237
  min-width: 0;
1952
3238
  overflow: hidden;
1953
- border: 1px solid #e2e8f0;
3239
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
1954
3240
  border-radius: 16px;
1955
- background: #fff;
1956
- box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
3241
+ background: linear-gradient(
3242
+ 135deg,
3243
+ color-mix(in srgb, var(--akilio-primary) 10%, #fff),
3244
+ #fff 70%
3245
+ );
3246
+ box-shadow: 0 3px 12px rgba(15, 23, 42, 0.05);
1957
3247
  }
1958
3248
  .akilio-product-media {
1959
3249
  position: relative;
@@ -2043,21 +3333,21 @@
2043
3333
  font-size: 10px;
2044
3334
  }
2045
3335
  .akilio-product-action {
2046
- width: auto;
2047
- min-height: auto;
3336
+ width: 100%;
3337
+ min-height: 36px;
2048
3338
  display: inline-flex;
2049
3339
  align-items: center;
2050
3340
  justify-content: center;
2051
- padding: 6px 12px;
3341
+ margin-top: 10px;
3342
+ padding: 8px 12px;
2052
3343
  border: 0;
2053
- border-radius: 6px;
2054
- background: transparent;
2055
- color: var(--akilio-primary);
3344
+ border-radius: 10px;
3345
+ background: var(--akilio-primary);
3346
+ color: var(--akilio-primary-foreground, #fff);
2056
3347
  font: inherit;
2057
3348
  font-size: 11px;
2058
3349
  font-weight: 700;
2059
- text-decoration: underline;
2060
- text-underline-offset: 2px;
3350
+ text-decoration: none;
2061
3351
  cursor: pointer;
2062
3352
  transition:
2063
3353
  color 150ms ease,
@@ -2065,8 +3355,8 @@
2065
3355
  }
2066
3356
 
2067
3357
  .akilio-product-action:hover {
2068
- background: color-mix(in srgb, var(--akilio-primary) 8%, transparent);
2069
- text-decoration: underline;
3358
+ background: var(--akilio-primary-hover);
3359
+ color: var(--akilio-primary-foreground, #fff);
2070
3360
  }
2071
3361
 
2072
3362
  .akilio-product-action:focus-visible {
@@ -2078,16 +3368,270 @@
2078
3368
  opacity: 0.55;
2079
3369
  cursor: not-allowed;
2080
3370
  }
3371
+
3372
+ .akilio-product-card--detail {
3373
+ display: flex;
3374
+ flex-direction: column;
3375
+ }
3376
+
3377
+ .akilio-product-card--detail .akilio-product-media {
3378
+ aspect-ratio: 16 / 9;
3379
+ }
3380
+
3381
+ .akilio-product-card--detail .akilio-product-body {
3382
+ padding: 14px;
3383
+ }
3384
+
3385
+ .akilio-product-card--detail h4 {
3386
+ min-height: 0;
3387
+ font-size: 15px;
3388
+ }
3389
+
3390
+ .akilio-product-description {
3391
+ margin: 4px 0 12px;
3392
+ color: #475569;
3393
+ font-size: 12px;
3394
+ line-height: 1.5;
3395
+ white-space: pre-wrap;
3396
+ }
3397
+
3398
+ .akilio-product-description > :first-child {
3399
+ margin-top: 0;
3400
+ }
3401
+
3402
+ .akilio-product-description > :last-child {
3403
+ margin-bottom: 0;
3404
+ }
3405
+
3406
+ .akilio-product-description p,
3407
+ .akilio-product-description ul,
3408
+ .akilio-product-description ol {
3409
+ margin: 0 0 8px;
3410
+ }
3411
+
3412
+ .akilio-product-description ul,
3413
+ .akilio-product-description ol {
3414
+ padding-left: 18px;
3415
+ }
3416
+
3417
+ .akilio-product-description a {
3418
+ color: var(--akilio-primary);
3419
+ font-weight: 650;
3420
+ }
3421
+
3422
+ .akilio-product-variants {
3423
+ min-width: 0;
3424
+ margin: 0 0 12px;
3425
+ padding: 0;
3426
+ border: 0;
3427
+ }
3428
+
3429
+ .akilio-product-variants legend,
3430
+ .akilio-product-specifications h5 {
3431
+ margin: 0 0 6px;
3432
+ color: #475569;
3433
+ font-size: 11px;
3434
+ font-weight: 700;
3435
+ }
3436
+
3437
+ .akilio-product-variants > div {
3438
+ display: flex;
3439
+ flex-wrap: wrap;
3440
+ gap: 6px;
3441
+ }
3442
+
3443
+ .akilio-product-variant-option {
3444
+ border: 1px solid #cbd5e1;
3445
+ border-radius: 999px;
3446
+ background: #fff;
3447
+ color: #334155;
3448
+ cursor: pointer;
3449
+ padding: 4px 8px;
3450
+ font: inherit;
3451
+ font-size: 11px;
3452
+ }
3453
+
3454
+ .akilio-product-variant-option--selected {
3455
+ border-color: var(--akilio-primary);
3456
+ background: color-mix(in srgb, var(--akilio-primary) 10%, #fff);
3457
+ color: var(--akilio-primary);
3458
+ }
3459
+
3460
+ .akilio-product-variant-option:disabled {
3461
+ opacity: 0.45;
3462
+ cursor: not-allowed;
3463
+ }
3464
+
3465
+ .akilio-product-specifications {
3466
+ margin: 0 0 12px;
3467
+ }
3468
+
3469
+ .akilio-product-specifications dl {
3470
+ display: grid;
3471
+ gap: 4px;
3472
+ margin: 0;
3473
+ }
3474
+
3475
+ .akilio-product-specifications dl div {
3476
+ display: grid;
3477
+ grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
3478
+ gap: 8px;
3479
+ font-size: 11px;
3480
+ }
3481
+
3482
+ .akilio-product-specifications dt {
3483
+ color: #64748b;
3484
+ }
3485
+
3486
+ .akilio-product-specifications dd {
3487
+ margin: 0;
3488
+ color: #0f172a;
3489
+ text-align: right;
3490
+ }
2081
3491
  .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading {
2082
3492
  color: #94a3b8;
2083
3493
  }
3494
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-result {
3495
+ border-color: color-mix(in srgb, var(--akilio-primary) 34%, #3f3f46);
3496
+ background: color-mix(in srgb, var(--akilio-primary) 6%, #18181b);
3497
+ }
3498
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading strong {
3499
+ color: #e4e4e7;
3500
+ }
3501
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-icon {
3502
+ background: color-mix(in srgb, var(--akilio-primary) 20%, #27272a);
3503
+ }
3504
+ .akilio-root[data-akilio-color-mode='dark']
3505
+ .akilio-product-group
3506
+ + .akilio-product-group,
3507
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-actions {
3508
+ border-color: #3f3f46;
3509
+ }
3510
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-group > small {
3511
+ color: #a1a1aa;
3512
+ }
3513
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-action {
3514
+ border-color: #52525b;
3515
+ background: linear-gradient(145deg, #27272a, #202024);
3516
+ color: #e4e4e7;
3517
+ }
3518
+ .akilio-root[data-akilio-color-mode='dark']
3519
+ .akilio-commerce-action--add_to_cart {
3520
+ border-color: var(--akilio-primary);
3521
+ background: var(--akilio-primary);
3522
+ color: var(--akilio-primary-foreground, #fff);
3523
+ }
3524
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-action-icon {
3525
+ background: color-mix(in srgb, var(--akilio-primary) 19%, #27272a);
3526
+ }
3527
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-action-copy small,
3528
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-action-arrow {
3529
+ color: #a1a1aa;
3530
+ }
3531
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-confirmation {
3532
+ border-color: #52525b;
3533
+ background: #27272a;
3534
+ color: #e4e4e7;
3535
+ }
3536
+ .akilio-root[data-akilio-color-mode='dark']
3537
+ .akilio-commerce-confirmation-product
3538
+ strong {
3539
+ color: #fafafa;
3540
+ }
3541
+ .akilio-root[data-akilio-color-mode='dark']
3542
+ .akilio-commerce-confirmation-product
3543
+ small {
3544
+ color: #a1a1aa;
3545
+ }
3546
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-confirmation-icon {
3547
+ background: color-mix(in srgb, var(--akilio-primary) 19%, #27272a);
3548
+ }
3549
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-cancel {
3550
+ background: #3f3f46;
3551
+ color: #e4e4e7;
3552
+ }
3553
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-action-success {
3554
+ border-color: #065f46;
3555
+ background: #052e2b;
3556
+ color: #a7f3d0;
3557
+ }
3558
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-header-cart span {
3559
+ border-color: #18181b;
3560
+ }
3561
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-panel {
3562
+ border-color: color-mix(in srgb, var(--akilio-primary) 34%, #3f3f46);
3563
+ background: color-mix(in srgb, var(--akilio-primary) 7%, #18181b);
3564
+ box-shadow: 0 12px 24px rgba(0, 0, 0, 0.24);
3565
+ }
3566
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-panel-icon {
3567
+ background: color-mix(in srgb, var(--akilio-primary) 20%, #27272a);
3568
+ }
3569
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-panel header strong,
3570
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-lines strong,
3571
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-lines li > span {
3572
+ color: #f4f4f5;
3573
+ }
3574
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-status,
3575
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-lines small {
3576
+ color: #a1a1aa;
3577
+ }
3578
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-lines li {
3579
+ border-color: #3f3f46;
3580
+ }
3581
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-line-media {
3582
+ background: #27272a;
3583
+ }
3584
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-line-action {
3585
+ border-color: color-mix(in srgb, var(--akilio-primary) 40%, #52525b);
3586
+ }
3587
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-quantity {
3588
+ border-color: color-mix(in srgb, var(--akilio-primary) 40%, #52525b);
3589
+ color: #f4f4f5;
3590
+ }
3591
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-line-action--remove {
3592
+ border-color: #7f1d1d;
3593
+ color: #fca5a5;
3594
+ }
3595
+ .akilio-root[data-akilio-color-mode='dark']
3596
+ .akilio-cart-line-action--remove:hover {
3597
+ border-color: #991b1b;
3598
+ background: #450a0a;
3599
+ color: #fecaca;
3600
+ }
3601
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-line-confirmation {
3602
+ background: color-mix(in srgb, var(--akilio-primary) 14%, #27272a);
3603
+ }
3604
+ .akilio-root[data-akilio-color-mode='dark']
3605
+ .akilio-cart-line-confirmation
3606
+ > small,
3607
+ .akilio-root[data-akilio-color-mode='dark']
3608
+ .akilio-cart-line-confirmation
3609
+ button
3610
+ + button {
3611
+ color: #e4e4e7;
3612
+ }
3613
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-cart-close:hover {
3614
+ background: #3f3f46;
3615
+ }
3616
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-commerce-success-icon {
3617
+ background: #064e3b;
3618
+ }
3619
+ .akilio-root[data-akilio-color-mode='dark']
3620
+ .akilio-commerce-action-success
3621
+ small {
3622
+ color: #6ee7b7;
3623
+ }
2084
3624
  .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading span {
2085
3625
  background: #312e81;
2086
3626
  color: #e0e7ff;
2087
3627
  }
2088
3628
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card {
2089
- background: #111827;
2090
- border-color: #334155;
3629
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
3630
+ background: linear-gradient(
3631
+ 135deg,
3632
+ color-mix(in srgb, var(--akilio-primary) 18%, #18181b),
3633
+ #18181b 70%
3634
+ );
2091
3635
  box-shadow: none;
2092
3636
  }
2093
3637
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-media {
@@ -2101,6 +3645,26 @@
2101
3645
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-variant {
2102
3646
  color: #94a3b8;
2103
3647
  }
3648
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-description,
3649
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-variants legend,
3650
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-specifications h5,
3651
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-specifications dt {
3652
+ color: #94a3b8;
3653
+ }
3654
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-specifications dd {
3655
+ color: #f8fafc;
3656
+ }
3657
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-variant-option {
3658
+ border-color: #475569;
3659
+ background: #1e293b;
3660
+ color: #e2e8f0;
3661
+ }
3662
+ .akilio-root[data-akilio-color-mode='dark']
3663
+ .akilio-product-variant-option--selected {
3664
+ border-color: var(--akilio-primary);
3665
+ background: color-mix(in srgb, var(--akilio-primary) 18%, #1e293b);
3666
+ color: #e0f2fe;
3667
+ }
2104
3668
  @media (max-width: 390px) {
2105
3669
  .akilio-products-grid {
2106
3670
  grid-template-columns: 1fr;
@@ -2163,10 +3727,14 @@
2163
3727
  flex-direction: column;
2164
3728
  min-width: 0;
2165
3729
  overflow: hidden;
2166
- border: 1px solid #e2e8f0;
3730
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
2167
3731
  border-radius: 16px;
2168
- background: #fff;
2169
- box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
3732
+ background: linear-gradient(
3733
+ 135deg,
3734
+ color-mix(in srgb, var(--akilio-primary) 10%, #fff),
3735
+ #fff 70%
3736
+ );
3737
+ box-shadow: 0 3px 12px rgba(15, 23, 42, 0.05);
2170
3738
  }
2171
3739
 
2172
3740
  .akilio-product-card--vertical .akilio-product-media {
@@ -2189,10 +3757,14 @@
2189
3757
  gap: 12px;
2190
3758
  min-width: 0;
2191
3759
  overflow: hidden;
2192
- border: 1px solid #e2e8f0;
3760
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
2193
3761
  border-radius: 16px;
2194
- background: #fff;
2195
- box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
3762
+ background: linear-gradient(
3763
+ 135deg,
3764
+ color-mix(in srgb, var(--akilio-primary) 10%, #fff),
3765
+ #fff 70%
3766
+ );
3767
+ box-shadow: 0 3px 12px rgba(15, 23, 42, 0.05);
2196
3768
  align-items: stretch;
2197
3769
  }
2198
3770
 
@@ -2222,8 +3794,12 @@
2222
3794
  /* Dark mode support for horizontal */
2223
3795
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card--vertical,
2224
3796
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card--horizontal {
2225
- background: #111827;
2226
- border-color: #334155;
3797
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
3798
+ background: linear-gradient(
3799
+ 135deg,
3800
+ color-mix(in srgb, var(--akilio-primary) 18%, #18181b),
3801
+ #18181b 70%
3802
+ );
2227
3803
  box-shadow: none;
2228
3804
  }
2229
3805
 
@@ -2238,11 +3814,63 @@
2238
3814
 
2239
3815
  /* System dark mode for horizontal */
2240
3816
  @media (prefers-color-scheme: dark) {
3817
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-card h4,
3818
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-price strong,
3819
+ .akilio-root[data-akilio-color-mode='system']
3820
+ .akilio-product-specifications
3821
+ dd {
3822
+ color: #f8fafc;
3823
+ }
3824
+
3825
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-vendor,
3826
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-variant,
3827
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-price del {
3828
+ color: #94a3b8;
3829
+ }
3830
+
3831
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-description,
3832
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-variants legend,
3833
+ .akilio-root[data-akilio-color-mode='system']
3834
+ .akilio-product-specifications
3835
+ h5,
3836
+ .akilio-root[data-akilio-color-mode='system']
3837
+ .akilio-product-specifications
3838
+ dt {
3839
+ color: #94a3b8;
3840
+ }
3841
+
3842
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-variant-option {
3843
+ border-color: #475569;
3844
+ background: #1e293b;
3845
+ color: #e2e8f0;
3846
+ }
3847
+
3848
+ .akilio-root[data-akilio-color-mode='system']
3849
+ .akilio-product-variant-option--selected {
3850
+ border-color: var(--akilio-primary);
3851
+ background: color-mix(in srgb, var(--akilio-primary) 18%, #1e293b);
3852
+ color: #e0f2fe;
3853
+ }
3854
+
2241
3855
  .akilio-root[data-akilio-color-mode='system'] .akilio-product-card--vertical,
2242
3856
  .akilio-root[data-akilio-color-mode='system']
2243
3857
  .akilio-product-card--horizontal {
2244
- background: #111827;
2245
- border-color: #334155;
3858
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
3859
+ background: linear-gradient(
3860
+ 135deg,
3861
+ color-mix(in srgb, var(--akilio-primary) 18%, #18181b),
3862
+ #18181b 70%
3863
+ );
3864
+ box-shadow: none;
3865
+ }
3866
+
3867
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-card--detail {
3868
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #3f3f46);
3869
+ background: linear-gradient(
3870
+ 135deg,
3871
+ color-mix(in srgb, var(--akilio-primary) 18%, #18181b),
3872
+ #18181b 70%
3873
+ );
2246
3874
  box-shadow: none;
2247
3875
  }
2248
3876
 
@@ -2305,3 +3933,31 @@
2305
3933
  user-select: none;
2306
3934
  white-space: nowrap;
2307
3935
  }
3936
+
3937
+ /* Avoid mobile focus zoom and keep translated input aligned naturally. */
3938
+ .akilio-composer textarea {
3939
+ text-align: start;
3940
+ }
3941
+ @media (max-width: 640px) {
3942
+ .akilio-root input,
3943
+ .akilio-root textarea,
3944
+ .akilio-root select {
3945
+ font-size: 16px;
3946
+ }
3947
+ .akilio-header-actions button,
3948
+ .akilio-composer-submit {
3949
+ min-width: 44px;
3950
+ min-height: 44px;
3951
+ }
3952
+ }
3953
+
3954
+ .akilio-business-logo {
3955
+ display: block;
3956
+ object-fit: contain;
3957
+ flex-shrink: 0;
3958
+ max-width: 100%;
3959
+ }
3960
+ .akilio-launcher .akilio-business-logo {
3961
+ width: 30px !important;
3962
+ height: 30px !important;
3963
+ }