@hachther/akilio-widget 0.6.6 → 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 (42) hide show
  1. package/README.md +359 -16
  2. package/dist/_headers +16 -0
  3. package/dist/akilio-widget.min.js +44 -44
  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 +7 -1
  11. package/dist/components/ContactActions.d.ts +8 -0
  12. package/dist/components/ContextualPrompt.d.ts +7 -0
  13. package/dist/components/EmptyState.d.ts +3 -1
  14. package/dist/components/Icons.d.ts +1 -0
  15. package/dist/components/InlineDecisionCard.d.ts +2 -0
  16. package/dist/components/Launcher.d.ts +8 -1
  17. package/dist/components/MessageBubble.d.ts +10 -1
  18. package/dist/components/MessageList.d.ts +1 -1
  19. package/dist/components/ProductCard.d.ts +4 -2
  20. package/dist/components/ProductCards.d.ts +6 -1
  21. package/dist/components/ProductDetail.d.ts +12 -0
  22. package/dist/components/SectionPrompt.d.ts +2 -0
  23. package/dist/components/TextSelectionPrompt.d.ts +2 -0
  24. package/dist/hooks/page-end.d.ts +1 -0
  25. package/dist/hooks/proactive-summary.d.ts +1 -0
  26. package/dist/hooks/response-sound.d.ts +9 -0
  27. package/dist/hooks/storage.d.ts +2 -0
  28. package/dist/index.d.ts +5 -1
  29. package/dist/index.min.js +9343 -6663
  30. package/dist/index.umd.min.cjs +36 -36
  31. package/dist/lib/client.d.ts +23 -2
  32. package/dist/lib/copy.d.ts +8 -2
  33. package/dist/loader.js +46 -0
  34. package/dist/locales/en.d.ts +127 -0
  35. package/dist/locales/fr.d.ts +127 -0
  36. package/dist/locales/index.d.ts +3 -0
  37. package/dist/releases/1.0.0/akilio-widget.min.js +45 -0
  38. package/dist/style.css +2334 -151
  39. package/dist/types.d.ts +554 -20
  40. package/dist/vanilla.d.ts +1 -0
  41. package/dist/widget-manifest.json +8 -0
  42. package/package.json +5 -3
package/dist/style.css CHANGED
@@ -28,6 +28,7 @@
28
28
  }
29
29
 
30
30
  .akilio-launcher,
31
+ .akilio-contextual-prompt,
31
32
  .akilio-overlay,
32
33
  .akilio-panel {
33
34
  pointer-events: auto;
@@ -124,6 +125,242 @@
124
125
  letter-spacing: -0.01em;
125
126
  }
126
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
+
197
+ .akilio-contextual-prompt {
198
+ position: fixed;
199
+ left: 50%;
200
+ bottom: max(28px, env(safe-area-inset-bottom));
201
+ z-index: calc(var(--akilio-z-index) - 5);
202
+ width: min(640px, calc(100vw - 190px));
203
+ transform: translateX(-50%);
204
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 22%, #d4d4d8);
205
+ border-radius: 18px;
206
+ background: rgba(255, 255, 255, 0.97);
207
+ padding: 7px 42px 7px 8px;
208
+ box-shadow:
209
+ 0 20px 60px rgba(15, 23, 42, 0.2),
210
+ 0 0 0 1px rgba(15, 118, 110, 0.04);
211
+ backdrop-filter: blur(16px);
212
+ animation: akilio-contextual-in 220ms cubic-bezier(0.2, 0.8, 0.2, 1);
213
+ }
214
+
215
+ .akilio-contextual-prompt form {
216
+ display: flex;
217
+ align-items: center;
218
+ gap: 8px;
219
+ }
220
+
221
+ .akilio-contextual-prompt input {
222
+ width: 100%;
223
+ min-width: 0;
224
+ height: 42px;
225
+ border: 0;
226
+ outline: 0;
227
+ background: transparent;
228
+ color: #18181b;
229
+ padding: 0 8px;
230
+ font-size: 14px;
231
+ }
232
+
233
+ .akilio-contextual-prompt input::placeholder {
234
+ color: #71717a;
235
+ opacity: 1;
236
+ }
237
+
238
+ .akilio-root .akilio-contextual-prompt input:focus,
239
+ .akilio-root .akilio-contextual-prompt input:focus-visible {
240
+ border: 0;
241
+ outline: none;
242
+ box-shadow: none;
243
+ }
244
+
245
+ .akilio-contextual-prompt:focus-within {
246
+ border-color: color-mix(in srgb, var(--akilio-primary) 58%, #d4d4d8);
247
+ box-shadow:
248
+ 0 20px 60px rgba(15, 23, 42, 0.2),
249
+ 0 0 0 3px color-mix(in srgb, var(--akilio-primary) 15%, transparent);
250
+ }
251
+
252
+ .akilio-contextual-submit {
253
+ display: grid;
254
+ flex: 0 0 34px;
255
+ width: 34px;
256
+ height: 34px;
257
+ place-items: center;
258
+ border: 0;
259
+ border-radius: 999px;
260
+ background: var(--akilio-primary);
261
+ color: var(--akilio-primary-foreground);
262
+ cursor: pointer;
263
+ }
264
+
265
+ .akilio-contextual-submit:hover:not(:disabled) {
266
+ background: var(--akilio-primary-hover);
267
+ }
268
+
269
+ .akilio-contextual-submit:disabled {
270
+ cursor: not-allowed;
271
+ opacity: 0.45;
272
+ }
273
+
274
+ .akilio-contextual-submit svg {
275
+ width: 17px;
276
+ height: 17px;
277
+ }
278
+
279
+ .akilio-contextual-dismiss {
280
+ position: absolute;
281
+ top: 50%;
282
+ right: 8px;
283
+ display: grid;
284
+ width: 28px;
285
+ height: 28px;
286
+ transform: translateY(-50%);
287
+ place-items: center;
288
+ border: 0;
289
+ border-radius: 999px;
290
+ background: transparent;
291
+ color: #71717a;
292
+ cursor: pointer;
293
+ font-size: 20px;
294
+ line-height: 1;
295
+ }
296
+
297
+ .akilio-contextual-dismiss:hover {
298
+ background: #f4f4f5;
299
+ color: #18181b;
300
+ }
301
+
302
+ @keyframes akilio-contextual-in {
303
+ from {
304
+ transform: translate(-50%, 12px) scale(0.98);
305
+ opacity: 0;
306
+ }
307
+ to {
308
+ transform: translate(-50%, 0) scale(1);
309
+ opacity: 1;
310
+ }
311
+ }
312
+
313
+ /* Optional edge tab launcher. The desktop widget becomes a full-height drawer;
314
+ the mobile media rules below restore the compact bottom launcher. */
315
+ .akilio-root[data-akilio-launcher-position='bottom-left'] .akilio-launcher {
316
+ right: auto;
317
+ left: 22px;
318
+ }
319
+
320
+ .akilio-root[data-akilio-launcher-position='right-middle'] .akilio-launcher {
321
+ top: 50%;
322
+ right: 0;
323
+ bottom: auto;
324
+ min-width: 52px;
325
+ min-height: 164px;
326
+ flex-direction: column;
327
+ justify-content: center;
328
+ gap: 9px;
329
+ transform: translateY(-50%);
330
+ border-right: 0;
331
+ border-radius: 18px 0 0 18px;
332
+ padding: 13px 10px 15px;
333
+ }
334
+
335
+ .akilio-root[data-akilio-launcher-position='right-middle']
336
+ .akilio-launcher:hover {
337
+ transform: translate(-3px, -50%);
338
+ }
339
+
340
+ .akilio-root[data-akilio-launcher-position='right-middle']
341
+ .akilio-launcher
342
+ strong {
343
+ writing-mode: vertical-rl;
344
+ transform: rotate(180deg);
345
+ letter-spacing: 0.02em;
346
+ }
347
+
348
+ .akilio-root[data-akilio-launcher-position='right-middle'] .akilio-coachmark {
349
+ top: 50%;
350
+ right: 72px;
351
+ bottom: auto;
352
+ transform: translateY(-50%);
353
+ animation: akilio-coachmark-side-in 200ms cubic-bezier(0.2, 0.8, 0.2, 1);
354
+ }
355
+
356
+ .akilio-root[data-akilio-launcher-position='right-middle']
357
+ .akilio-coachmark::after {
358
+ top: 50%;
359
+ right: -7px;
360
+ bottom: auto;
361
+ transform: translateY(-50%) rotate(-45deg);
362
+ }
363
+
127
364
  .akilio-overlay {
128
365
  position: fixed;
129
366
  inset: 0;
@@ -185,6 +422,13 @@
185
422
  pointer-events: auto;
186
423
  }
187
424
 
425
+ .akilio-root[data-akilio-mode='floating'][data-akilio-launcher-position='bottom-left']
426
+ .akilio-panel {
427
+ right: auto;
428
+ left: 22px;
429
+ transform-origin: left bottom;
430
+ }
431
+
188
432
  .akilio-panel-glow {
189
433
  position: absolute;
190
434
  inset: 0 0 auto 0;
@@ -323,6 +567,7 @@
323
567
  transition:
324
568
  background 160ms ease,
325
569
  color 160ms ease;
570
+ padding-inline-start: 4px;
326
571
  }
327
572
 
328
573
  .akilio-header-actions button:hover {
@@ -457,7 +702,7 @@
457
702
  .akilio-bubble-meta {
458
703
  display: flex;
459
704
  align-items: center;
460
- gap: 7px;
705
+ gap: 5px;
461
706
  margin-bottom: 8px;
462
707
  color: var(--akilio-primary);
463
708
  font-size: 10px;
@@ -505,111 +750,408 @@
505
750
  margin-bottom: 0;
506
751
  }
507
752
 
508
- .akilio-answer ul,
509
- .akilio-answer ol {
510
- margin: 0.625rem 0 0.625rem 1.25rem;
511
- padding-left: 0.75rem;
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;
512
762
  }
513
763
 
514
- .akilio-answer ul {
515
- list-style: disc;
516
- }
517
- .akilio-answer ol {
518
- list-style: decimal;
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);
519
772
  }
520
- .akilio-answer li {
521
- margin: 0.25rem 0;
773
+
774
+ .akilio-clarification-card strong {
775
+ color: #17211f;
776
+ font-size: 13px;
777
+ line-height: 1.4;
522
778
  }
523
779
 
524
- .akilio-answer a {
525
- color: var(--akilio-primary);
780
+ .akilio-clarification-card label {
781
+ display: grid;
782
+ gap: 5px;
783
+ color: #3f5f5a;
784
+ font-size: 12px;
526
785
  font-weight: 700;
527
- text-decoration: underline;
528
- text-underline-offset: 3px;
529
786
  }
530
787
 
531
- .akilio-answer code {
532
- border-radius: 7px;
533
- background: rgba(15, 23, 42, 0.08);
534
- padding: 0.12rem 0.35rem;
535
- font-size: 0.86em;
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;
536
798
  }
537
799
 
538
- .akilio-answer pre {
539
- margin: 0.75rem 0;
540
- overflow-x: auto;
541
- border: 1px solid rgba(148, 163, 184, 0.2);
542
- border-radius: 16px;
543
- background: #020617;
544
- padding: 13px;
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;
545
811
  }
546
812
 
547
- .akilio-answer pre code {
548
- background: transparent;
549
- color: #e2e8f0;
550
- padding: 0;
813
+ .akilio-clarification-card > button:disabled {
814
+ cursor: not-allowed;
815
+ opacity: 0.55;
551
816
  }
552
817
 
553
- .akilio-answer .hljs-keyword,
554
- .akilio-answer .hljs-selector-tag,
555
- .akilio-answer .hljs-built_in {
556
- color: #f0abfc;
557
- }
558
- .akilio-answer .hljs-string,
559
- .akilio-answer .hljs-attr,
560
- .akilio-answer .hljs-symbol {
561
- color: #86efac;
562
- }
563
- .akilio-answer .hljs-number,
564
- .akilio-answer .hljs-literal {
565
- color: #fcd34d;
566
- }
567
- .akilio-answer .hljs-comment {
568
- color: #64748b;
569
- font-style: italic;
570
- }
571
- .akilio-answer .hljs-title,
572
- .akilio-answer .hljs-function {
573
- color: #7dd3fc;
574
- }
575
- .akilio-answer .hljs-variable {
576
- color: #fdba74;
818
+ .akilio-clarification-options {
819
+ display: flex;
820
+ flex-wrap: wrap;
821
+ gap: 7px;
577
822
  }
578
823
 
579
- .akilio-answer--user {
580
- white-space: pre-wrap;
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);
581
827
  }
582
828
 
583
- .akilio-answer--user code {
584
- background: rgba(255, 255, 255, 0.16);
829
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-clarification-card strong {
830
+ color: #fafafa;
585
831
  }
586
832
 
587
- .akilio-sources {
588
- margin-top: 11px;
589
- overflow: hidden;
590
- border: 1px solid rgba(212, 212, 216, 0.85);
591
- border-radius: 16px;
592
- background: rgba(244, 244, 245, 0.78);
833
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-clarification-card label {
834
+ color: #99f6e4;
593
835
  }
594
836
 
595
- .akilio-sources summary {
596
- cursor: pointer;
597
- padding: 9px 11px;
598
- color: #52525b;
599
- font-size: 12px;
600
- font-weight: 800;
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;
601
842
  }
602
843
 
603
- .akilio-sources-list {
604
- display: grid;
605
- gap: 8px;
606
- border-top: 1px solid rgba(212, 212, 216, 0.85);
607
- padding: 8px;
608
- }
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
+ }
609
849
 
610
- .akilio-source-card {
611
- display: grid;
612
- gap: 3px;
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
+
1050
+ .akilio-answer ul,
1051
+ .akilio-answer ol {
1052
+ margin: 0.625rem 0 0.625rem 1.25rem;
1053
+ padding-left: 0.75rem;
1054
+ }
1055
+
1056
+ .akilio-answer ul {
1057
+ list-style: disc;
1058
+ }
1059
+ .akilio-answer ol {
1060
+ list-style: decimal;
1061
+ }
1062
+ .akilio-answer li {
1063
+ margin: 0.25rem 0;
1064
+ }
1065
+
1066
+ .akilio-answer a {
1067
+ color: var(--akilio-primary);
1068
+ font-weight: 700;
1069
+ text-decoration: underline;
1070
+ text-underline-offset: 3px;
1071
+ }
1072
+
1073
+ .akilio-answer code {
1074
+ border-radius: 7px;
1075
+ background: rgba(15, 23, 42, 0.08);
1076
+ padding: 0.12rem 0.35rem;
1077
+ font-size: 0.86em;
1078
+ }
1079
+
1080
+ .akilio-answer pre {
1081
+ margin: 0.75rem 0;
1082
+ overflow-x: auto;
1083
+ border: 1px solid rgba(148, 163, 184, 0.2);
1084
+ border-radius: 16px;
1085
+ background: #020617;
1086
+ padding: 13px;
1087
+ }
1088
+
1089
+ .akilio-answer pre code {
1090
+ background: transparent;
1091
+ color: #e2e8f0;
1092
+ padding: 0;
1093
+ }
1094
+
1095
+ .akilio-answer .hljs-keyword,
1096
+ .akilio-answer .hljs-selector-tag,
1097
+ .akilio-answer .hljs-built_in {
1098
+ color: #f0abfc;
1099
+ }
1100
+ .akilio-answer .hljs-string,
1101
+ .akilio-answer .hljs-attr,
1102
+ .akilio-answer .hljs-symbol {
1103
+ color: #86efac;
1104
+ }
1105
+ .akilio-answer .hljs-number,
1106
+ .akilio-answer .hljs-literal {
1107
+ color: #fcd34d;
1108
+ }
1109
+ .akilio-answer .hljs-comment {
1110
+ color: #64748b;
1111
+ font-style: italic;
1112
+ }
1113
+ .akilio-answer .hljs-title,
1114
+ .akilio-answer .hljs-function {
1115
+ color: #7dd3fc;
1116
+ }
1117
+ .akilio-answer .hljs-variable {
1118
+ color: #fdba74;
1119
+ }
1120
+
1121
+ .akilio-answer--user {
1122
+ white-space: pre-wrap;
1123
+ }
1124
+
1125
+ .akilio-answer--user code {
1126
+ background: rgba(255, 255, 255, 0.16);
1127
+ }
1128
+
1129
+ .akilio-sources {
1130
+ margin-top: 11px;
1131
+ overflow: hidden;
1132
+ border: 1px solid rgba(212, 212, 216, 0.85);
1133
+ border-radius: 16px;
1134
+ background: rgba(244, 244, 245, 0.78);
1135
+ }
1136
+
1137
+ .akilio-sources summary {
1138
+ cursor: pointer;
1139
+ padding: 9px 11px;
1140
+ color: #52525b;
1141
+ font-size: 12px;
1142
+ font-weight: 800;
1143
+ }
1144
+
1145
+ .akilio-sources-list {
1146
+ display: grid;
1147
+ gap: 8px;
1148
+ border-top: 1px solid rgba(212, 212, 216, 0.85);
1149
+ padding: 8px;
1150
+ }
1151
+
1152
+ .akilio-source-card {
1153
+ display: grid;
1154
+ gap: 3px;
613
1155
  border: 1px solid rgba(212, 212, 216, 0.82);
614
1156
  border-radius: 13px;
615
1157
  background: #fff;
@@ -663,6 +1205,33 @@
663
1205
  color: var(--akilio-primary);
664
1206
  }
665
1207
 
1208
+ .akilio-feedback button:disabled {
1209
+ cursor: wait;
1210
+ opacity: 0.62;
1211
+ }
1212
+
1213
+ .akilio-feedback .akilio-feedback-pending {
1214
+ border-color: color-mix(in srgb, var(--akilio-primary) 35%, #d4d4d8);
1215
+ color: var(--akilio-primary);
1216
+ opacity: 1;
1217
+ }
1218
+
1219
+ .akilio-feedback-spinner {
1220
+ display: block;
1221
+ width: 13px;
1222
+ height: 13px;
1223
+ border: 2px solid color-mix(in srgb, var(--akilio-primary) 24%, transparent);
1224
+ border-top-color: currentColor;
1225
+ border-radius: 999px;
1226
+ animation: akilio-feedback-spin 650ms linear infinite;
1227
+ }
1228
+
1229
+ @keyframes akilio-feedback-spin {
1230
+ to {
1231
+ transform: rotate(360deg);
1232
+ }
1233
+ }
1234
+
666
1235
  .akilio-feedback svg {
667
1236
  width: 14px;
668
1237
  height: 14px;
@@ -771,14 +1340,95 @@
771
1340
  backdrop-filter: blur(16px);
772
1341
  }
773
1342
 
774
- .akilio-composer-box {
1343
+ .akilio-intent-actions {
775
1344
  display: flex;
776
- align-items: flex-end;
777
1345
  gap: 8px;
778
- border: 1px solid rgba(212, 212, 216, 0.95);
779
- border-radius: 24px;
780
- background: #f8fafc;
781
- padding: 6px 12px;
1346
+ overflow-x: auto;
1347
+ padding: 0 0 8px;
1348
+ scrollbar-width: none;
1349
+ }
1350
+
1351
+ .akilio-intent-actions::-webkit-scrollbar {
1352
+ display: none;
1353
+ }
1354
+
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;
782
1432
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
783
1433
  transition:
784
1434
  border-color 150ms ease,
@@ -883,6 +1533,11 @@
883
1533
  text-align: center;
884
1534
  }
885
1535
 
1536
+ .akilio-powered-by a {
1537
+ text-decoration: none;
1538
+ font-weight: 700;
1539
+ }
1540
+
886
1541
  .akilio-coachmark {
887
1542
  position: fixed;
888
1543
  right: 22px;
@@ -910,8 +1565,7 @@
910
1565
  width: 13px;
911
1566
  height: 13px;
912
1567
  transform: rotate(45deg);
913
- border-right: 1px solid
914
- color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
1568
+ border-right: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
915
1569
  border-bottom: 1px solid
916
1570
  color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
917
1571
  background: #fff;
@@ -998,7 +1652,107 @@
998
1652
  }
999
1653
  }
1000
1654
 
1655
+ @keyframes akilio-coachmark-side-in {
1656
+ from {
1657
+ transform: translate(8px, -50%) scale(0.98);
1658
+ opacity: 0;
1659
+ }
1660
+ to {
1661
+ transform: translate(0, -50%) scale(1);
1662
+ opacity: 1;
1663
+ }
1664
+ }
1665
+
1666
+ @media (max-width: 1279px) {
1667
+ .akilio-root[data-akilio-launcher-position='right-middle'] .akilio-launcher {
1668
+ top: auto;
1669
+ right: 22px;
1670
+ bottom: 22px;
1671
+ min-width: 0;
1672
+ min-height: 0;
1673
+ flex-direction: row;
1674
+ transform: none;
1675
+ border-right: 1px solid rgba(255, 255, 255, 0.22);
1676
+ border-radius: 999px;
1677
+ padding: 11px 16px 11px 12px;
1678
+ }
1679
+
1680
+ .akilio-root[data-akilio-launcher-position='right-middle']
1681
+ .akilio-launcher:hover {
1682
+ transform: translateY(-2px);
1683
+ }
1684
+
1685
+ .akilio-root[data-akilio-launcher-position='right-middle']
1686
+ .akilio-launcher
1687
+ strong {
1688
+ writing-mode: initial;
1689
+ transform: none;
1690
+ }
1691
+
1692
+ .akilio-root[data-akilio-launcher-position='right-middle'] .akilio-coachmark {
1693
+ top: auto;
1694
+ right: 22px;
1695
+ bottom: 94px;
1696
+ transform: none;
1697
+ animation: akilio-coachmark-in 200ms cubic-bezier(0.2, 0.8, 0.2, 1);
1698
+ }
1699
+
1700
+ .akilio-root[data-akilio-launcher-position='right-middle']
1701
+ .akilio-coachmark::after {
1702
+ top: auto;
1703
+ right: 30px;
1704
+ bottom: -7px;
1705
+ transform: rotate(45deg);
1706
+ }
1707
+ }
1708
+
1001
1709
  @media (max-width: 640px) {
1710
+ .akilio-contextual-prompt {
1711
+ bottom: calc(78px + env(safe-area-inset-bottom));
1712
+ width: calc(100vw - 28px);
1713
+ padding-left: 6px;
1714
+ }
1715
+
1716
+ .akilio-root[data-akilio-launcher-position='right-middle'] .akilio-launcher {
1717
+ top: auto;
1718
+ right: 16px;
1719
+ bottom: 16px;
1720
+ left: auto;
1721
+ min-width: 0;
1722
+ min-height: 0;
1723
+ flex-direction: row;
1724
+ transform: none;
1725
+ border-right: 1px solid rgba(255, 255, 255, 0.22);
1726
+ border-radius: 999px;
1727
+ }
1728
+
1729
+ .akilio-root[data-akilio-launcher-position='right-middle']
1730
+ .akilio-launcher:hover {
1731
+ transform: translateY(-2px);
1732
+ }
1733
+
1734
+ .akilio-root[data-akilio-launcher-position='right-middle']
1735
+ .akilio-launcher
1736
+ strong {
1737
+ writing-mode: initial;
1738
+ transform: none;
1739
+ }
1740
+
1741
+ .akilio-root[data-akilio-launcher-position='right-middle'] .akilio-coachmark {
1742
+ top: auto;
1743
+ right: 16px;
1744
+ bottom: 82px;
1745
+ animation: akilio-coachmark-in 200ms cubic-bezier(0.2, 0.8, 0.2, 1);
1746
+ }
1747
+
1748
+ .akilio-root[data-akilio-launcher-position='right-middle']
1749
+ .akilio-coachmark::after {
1750
+ top: auto;
1751
+ right: 30px;
1752
+ bottom: -7px;
1753
+ transform: rotate(45deg);
1754
+ }
1755
+
1002
1756
  .akilio-launcher {
1003
1757
  right: 16px;
1004
1758
  bottom: 16px;
@@ -1221,6 +1975,10 @@
1221
1975
  }
1222
1976
 
1223
1977
  @media (max-width: 640px) {
1978
+ .akilio-root[data-akilio-launcher-position='bottom-left'] .akilio-launcher {
1979
+ right: auto;
1980
+ left: 14px;
1981
+ }
1224
1982
  .akilio-launcher {
1225
1983
  right: 14px;
1226
1984
  bottom: max(14px, env(safe-area-inset-bottom));
@@ -1243,6 +2001,11 @@
1243
2001
  border: 1px solid rgba(212, 212, 216, 0.9);
1244
2002
  border-radius: 18px;
1245
2003
  }
2004
+ .akilio-root[data-akilio-mode='floating'][data-akilio-launcher-position='bottom-left']
2005
+ .akilio-panel {
2006
+ right: auto;
2007
+ left: 14px;
2008
+ }
1246
2009
  .akilio-panel-header {
1247
2010
  padding-top: max(10px, env(safe-area-inset-top));
1248
2011
  }
@@ -1297,13 +2060,54 @@
1297
2060
  color: #fafafa;
1298
2061
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.42);
1299
2062
  }
2063
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contextual-prompt {
2064
+ border-color: color-mix(in srgb, var(--akilio-primary) 34%, #3f3f46);
2065
+ background: rgba(24, 24, 27, 0.97);
2066
+ box-shadow: 0 20px 60px rgba(0, 0, 0, 0.42);
2067
+ }
2068
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contextual-prompt input {
2069
+ color: #fafafa;
2070
+ }
2071
+ .akilio-root[data-akilio-color-mode='dark']
2072
+ .akilio-contextual-prompt
2073
+ input::placeholder {
2074
+ color: #a1a1aa;
2075
+ }
2076
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contextual-dismiss {
2077
+ color: #a1a1aa;
2078
+ }
2079
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contextual-dismiss:hover {
2080
+ background: #27272a;
2081
+ color: #fafafa;
2082
+ }
2083
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-options a,
2084
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form {
2085
+ border-color: #3f3f46;
2086
+ background: #18181b;
2087
+ color: #e4e4e7;
2088
+ }
2089
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-option-copy small,
2090
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form label {
2091
+ color: #a1a1aa;
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
+ }
2099
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form input,
2100
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form select,
2101
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-contact-form textarea {
2102
+ border-color: #52525b;
2103
+ background-color: #27272a;
2104
+ color: #fafafa;
2105
+ }
1300
2106
  .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark::after {
1301
2107
  border-color: color-mix(in srgb, var(--akilio-primary) 34%, #3f3f46);
1302
2108
  background: #18181b;
1303
2109
  }
1304
- .akilio-root[data-akilio-color-mode='dark']
1305
- .akilio-coachmark-content
1306
- strong {
2110
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark-content strong {
1307
2111
  color: #fafafa;
1308
2112
  }
1309
2113
  .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark-content p {
@@ -1357,50 +2161,1059 @@
1357
2161
  padding: 0;
1358
2162
  }
1359
2163
 
1360
- /* Commerce product results */
1361
- .akilio-products {
1362
- margin-top: 14px;
1363
- min-width: 0;
2164
+ .akilio-contact {
2165
+ display: grid;
2166
+ gap: 9px;
2167
+ margin-top: 12px;
1364
2168
  }
1365
- .akilio-products-heading {
1366
- display: flex;
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
+ }
2184
+ .akilio-contact-options {
2185
+ display: grid;
2186
+ grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
2187
+ gap: 6px;
2188
+ }
2189
+ .akilio-contact-options a {
2190
+ display: grid;
2191
+ grid-template-columns: 27px minmax(0, 1fr) 12px;
2192
+ min-height: 44px;
1367
2193
  align-items: center;
1368
- justify-content: space-between;
1369
- margin-bottom: 9px;
1370
- font-size: 12px;
2194
+ gap: 7px;
2195
+ border: 1px solid #e2e8f0;
2196
+ border-radius: 10px;
2197
+ background: linear-gradient(135deg, #fff, #f8fafc);
2198
+ color: #334155;
2199
+ padding: 6px 7px;
2200
+ text-decoration: none;
2201
+ transition:
2202
+ border-color 160ms ease,
2203
+ box-shadow 160ms ease,
2204
+ transform 160ms ease;
2205
+ }
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;
2226
+ font-size: 11px;
2227
+ line-height: 1.25;
2228
+ text-align: left;
2229
+ text-overflow: ellipsis;
2230
+ white-space: nowrap;
2231
+ }
2232
+ .akilio-contact-option-copy small {
2233
+ overflow: hidden;
1371
2234
  color: #64748b;
2235
+ font-size: 10px;
2236
+ line-height: 1.2;
2237
+ text-overflow: ellipsis;
2238
+ white-space: nowrap;
1372
2239
  }
1373
- .akilio-products-heading span {
1374
- display: inline-flex;
1375
- align-items: center;
1376
- justify-content: center;
1377
- min-width: 22px;
1378
- height: 22px;
1379
- padding: 0 7px;
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
+ }
2259
+ .akilio-contact-start,
2260
+ .akilio-contact-submit {
2261
+ justify-self: start;
2262
+ border: 0;
1380
2263
  border-radius: 999px;
1381
- background: #eef2ff;
1382
- color: #4338ca;
2264
+ background: var(--akilio-primary);
2265
+ color: var(--akilio-primary-foreground) !important;
2266
+ padding: 8px 13px;
2267
+ cursor: pointer;
2268
+ font-size: 12px;
1383
2269
  font-weight: 700;
1384
2270
  }
1385
- /* Product grid layout variants */
1386
- .akilio-products-grid {
2271
+ .akilio-contact-start:hover,
2272
+ .akilio-contact-submit:hover:not(:disabled) {
2273
+ background: var(--akilio-primary-hover);
2274
+ }
2275
+ .akilio-contact-form {
2276
+ display: grid;
2277
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2278
+ gap: 9px;
2279
+ border: 1px solid #e2e8f0;
2280
+ border-radius: 14px;
2281
+ background: #fff;
2282
+ padding: 12px;
2283
+ }
2284
+ .akilio-contact-form label {
2285
+ display: grid;
2286
+ gap: 4px;
2287
+ color: #475569;
2288
+ font-size: 11px;
2289
+ font-weight: 650;
2290
+ }
2291
+ .akilio-contact-form label > span {
2292
+ overflow: hidden;
2293
+ text-overflow: ellipsis;
2294
+ white-space: nowrap;
2295
+ }
2296
+ .akilio-contact-name,
2297
+ .akilio-contact-message,
2298
+ .akilio-contact-consent,
2299
+ .akilio-contact-error,
2300
+ .akilio-contact-submit {
2301
+ grid-column: 1 / -1;
2302
+ }
2303
+ .akilio-contact-form input,
2304
+ .akilio-contact-form select,
2305
+ .akilio-contact-form textarea {
2306
+ width: 100%;
2307
+ min-width: 0;
2308
+ border: 1px solid #d4d4d8;
2309
+ border-radius: 9px;
2310
+ background: #fff;
2311
+ color: #18181b;
2312
+ padding: 8px 9px;
2313
+ outline: 0;
2314
+ font-size: 12px;
2315
+ }
2316
+ .akilio-contact-form input:not([type='checkbox']),
2317
+ .akilio-contact-form select {
2318
+ height: 36px;
2319
+ }
2320
+ .akilio-contact-form select {
2321
+ appearance: none;
2322
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='%2371717a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8'/%3E%3C/svg%3E");
2323
+ background-position: right 9px center;
2324
+ background-repeat: no-repeat;
2325
+ padding-right: 28px;
2326
+ }
2327
+ .akilio-contact-form textarea {
2328
+ resize: vertical;
2329
+ }
2330
+ .akilio-contact-form input:focus,
2331
+ .akilio-contact-form select:focus,
2332
+ .akilio-contact-form textarea:focus {
2333
+ border-color: var(--akilio-primary);
2334
+ box-shadow: 0 0 0 2px
2335
+ color-mix(in srgb, var(--akilio-primary) 14%, transparent);
2336
+ }
2337
+ .akilio-root .akilio-contact-form input:not([type='checkbox']):focus,
2338
+ .akilio-root .akilio-contact-form input:not([type='checkbox']):focus-visible,
2339
+ .akilio-root .akilio-contact-form select:focus,
2340
+ .akilio-root .akilio-contact-form select:focus-visible,
2341
+ .akilio-root .akilio-contact-form textarea:focus,
2342
+ .akilio-root .akilio-contact-form textarea:focus-visible {
2343
+ outline: none;
2344
+ }
2345
+ .akilio-contact-form .akilio-contact-consent {
2346
+ display: flex;
2347
+ grid-template-columns: none;
2348
+ align-items: flex-start;
2349
+ gap: 7px;
2350
+ font-weight: 500;
2351
+ }
2352
+ .akilio-contact-form .akilio-contact-consent > span {
2353
+ overflow: visible;
2354
+ text-overflow: clip;
2355
+ white-space: normal;
2356
+ }
2357
+ .akilio-contact-consent input {
2358
+ width: 15px;
2359
+ margin-top: 1px;
2360
+ accent-color: var(--akilio-primary);
2361
+ }
2362
+ .akilio-contact-submit:disabled {
2363
+ cursor: wait;
2364
+ opacity: 0.55;
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
+
2379
+ .akilio-contact-success,
2380
+ .akilio-contact-error {
2381
+ margin: 0;
2382
+ font-size: 12px;
2383
+ font-weight: 650;
2384
+ }
2385
+ .akilio-contact-success {
2386
+ color: #047857;
2387
+ }
2388
+ .akilio-contact-error {
2389
+ color: #b91c1c;
2390
+ }
2391
+
2392
+ @media (max-width: 640px) {
2393
+ .akilio-contact-form {
2394
+ grid-template-columns: 1fr;
2395
+ }
2396
+ }
2397
+
2398
+ /* Commerce product results */
2399
+ .akilio-products {
2400
+ margin-top: 14px;
2401
+ min-width: 0;
2402
+ }
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 {
2469
+ display: flex;
2470
+ align-items: center;
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;
2569
+ margin-bottom: 9px;
2570
+ font-size: 12px;
2571
+ color: #64748b;
2572
+ }
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 {
2598
+ display: inline-flex;
2599
+ align-items: center;
2600
+ justify-content: center;
2601
+ min-width: 22px;
2602
+ height: 22px;
2603
+ padding: 0 7px;
2604
+ border-radius: 999px;
2605
+ background: #eef2ff;
2606
+ color: #4338ca;
2607
+ font-weight: 700;
2608
+ }
2609
+ .akilio-product-group {
2610
+ display: grid;
2611
+ gap: 6px;
2612
+ }
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) */
2644
+ .akilio-products-grid--vertical {
2645
+ display: grid;
2646
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2647
+ gap: 10px;
2648
+ }
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 {
1387
3171
  display: grid;
1388
- grid-template-columns: repeat(2, minmax(0, 1fr));
1389
- gap: 10px;
3172
+ min-width: 0;
3173
+ gap: 1px;
1390
3174
  }
1391
-
1392
- /* Vertical layout: 2-column grid (default) */
1393
- .akilio-products-grid--vertical {
1394
- display: grid;
1395
- grid-template-columns: repeat(2, minmax(0, 1fr));
1396
- gap: 10px;
3175
+ .akilio-commerce-action-success strong {
3176
+ font-weight: 780;
1397
3177
  }
1398
-
1399
- /* Horizontal layout: single column full-width cards */
1400
- .akilio-products-grid--horizontal {
1401
- display: flex;
1402
- flex-direction: column;
1403
- gap: 10px;
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
+ }
1404
3217
  }
1405
3218
 
1406
3219
  /* Responsive: collapse vertical to single column on small screens */
@@ -1423,10 +3236,14 @@
1423
3236
  .akilio-product-card {
1424
3237
  min-width: 0;
1425
3238
  overflow: hidden;
1426
- border: 1px solid #e2e8f0;
3239
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
1427
3240
  border-radius: 16px;
1428
- background: #fff;
1429
- 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);
1430
3247
  }
1431
3248
  .akilio-product-media {
1432
3249
  position: relative;
@@ -1516,21 +3333,21 @@
1516
3333
  font-size: 10px;
1517
3334
  }
1518
3335
  .akilio-product-action {
1519
- width: auto;
1520
- min-height: auto;
3336
+ width: 100%;
3337
+ min-height: 36px;
1521
3338
  display: inline-flex;
1522
3339
  align-items: center;
1523
3340
  justify-content: center;
1524
- padding: 6px 12px;
3341
+ margin-top: 10px;
3342
+ padding: 8px 12px;
1525
3343
  border: 0;
1526
- border-radius: 6px;
1527
- background: transparent;
1528
- color: var(--akilio-primary);
3344
+ border-radius: 10px;
3345
+ background: var(--akilio-primary);
3346
+ color: var(--akilio-primary-foreground, #fff);
1529
3347
  font: inherit;
1530
3348
  font-size: 11px;
1531
3349
  font-weight: 700;
1532
- text-decoration: underline;
1533
- text-underline-offset: 2px;
3350
+ text-decoration: none;
1534
3351
  cursor: pointer;
1535
3352
  transition:
1536
3353
  color 150ms ease,
@@ -1538,8 +3355,8 @@
1538
3355
  }
1539
3356
 
1540
3357
  .akilio-product-action:hover {
1541
- background: color-mix(in srgb, var(--akilio-primary) 8%, transparent);
1542
- text-decoration: underline;
3358
+ background: var(--akilio-primary-hover);
3359
+ color: var(--akilio-primary-foreground, #fff);
1543
3360
  }
1544
3361
 
1545
3362
  .akilio-product-action:focus-visible {
@@ -1551,16 +3368,270 @@
1551
3368
  opacity: 0.55;
1552
3369
  cursor: not-allowed;
1553
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
+ }
1554
3491
  .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading {
1555
3492
  color: #94a3b8;
1556
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
+ }
1557
3624
  .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading span {
1558
3625
  background: #312e81;
1559
3626
  color: #e0e7ff;
1560
3627
  }
1561
3628
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card {
1562
- background: #111827;
1563
- 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
+ );
1564
3635
  box-shadow: none;
1565
3636
  }
1566
3637
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-media {
@@ -1574,6 +3645,26 @@
1574
3645
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-variant {
1575
3646
  color: #94a3b8;
1576
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
+ }
1577
3668
  @media (max-width: 390px) {
1578
3669
  .akilio-products-grid {
1579
3670
  grid-template-columns: 1fr;
@@ -1636,10 +3727,14 @@
1636
3727
  flex-direction: column;
1637
3728
  min-width: 0;
1638
3729
  overflow: hidden;
1639
- border: 1px solid #e2e8f0;
3730
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
1640
3731
  border-radius: 16px;
1641
- background: #fff;
1642
- 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);
1643
3738
  }
1644
3739
 
1645
3740
  .akilio-product-card--vertical .akilio-product-media {
@@ -1662,10 +3757,14 @@
1662
3757
  gap: 12px;
1663
3758
  min-width: 0;
1664
3759
  overflow: hidden;
1665
- border: 1px solid #e2e8f0;
3760
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
1666
3761
  border-radius: 16px;
1667
- background: #fff;
1668
- 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);
1669
3768
  align-items: stretch;
1670
3769
  }
1671
3770
 
@@ -1695,8 +3794,12 @@
1695
3794
  /* Dark mode support for horizontal */
1696
3795
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card--vertical,
1697
3796
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card--horizontal {
1698
- background: #111827;
1699
- 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
+ );
1700
3803
  box-shadow: none;
1701
3804
  }
1702
3805
 
@@ -1711,11 +3814,63 @@
1711
3814
 
1712
3815
  /* System dark mode for horizontal */
1713
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
+
1714
3855
  .akilio-root[data-akilio-color-mode='system'] .akilio-product-card--vertical,
1715
3856
  .akilio-root[data-akilio-color-mode='system']
1716
3857
  .akilio-product-card--horizontal {
1717
- background: #111827;
1718
- 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
+ );
1719
3874
  box-shadow: none;
1720
3875
  }
1721
3876
 
@@ -1778,3 +3933,31 @@
1778
3933
  user-select: none;
1779
3934
  white-space: nowrap;
1780
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
+ }