@hachther/akilio-widget 0.6.1 → 0.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/style.css CHANGED
@@ -1,7 +1,7 @@
1
1
  :host,
2
2
  .akilio-root {
3
- --akilio-primary: #0F766E;
4
- --akilio-primary-hover: #115E59;
3
+ --akilio-primary: #0f766e;
4
+ --akilio-primary-hover: #115e59;
5
5
  --akilio-primary-foreground: #ffffff;
6
6
  --akilio-accent: #2563eb;
7
7
  --akilio-radius: 22px;
@@ -13,7 +13,14 @@
13
13
  all: initial;
14
14
  display: block;
15
15
  direction: ltr;
16
- font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
16
+ font-family:
17
+ Inter,
18
+ ui-sans-serif,
19
+ system-ui,
20
+ -apple-system,
21
+ BlinkMacSystemFont,
22
+ 'Segoe UI',
23
+ sans-serif;
17
24
  line-height: 1.5;
18
25
  text-align: left;
19
26
  color-scheme: light dark;
@@ -73,7 +80,7 @@
73
80
  background: linear-gradient(
74
81
  135deg,
75
82
  var(--akilio-primary),
76
- var(--akilio-primary-hover)
83
+ color-mix(in srgb, var(--akilio-primary) 80%, transparent)
77
84
  );
78
85
  color: #fff !important;
79
86
  padding: 11px 16px 11px 12px;
@@ -199,7 +206,7 @@
199
206
  gap: 12px;
200
207
  border-bottom: 1px solid rgba(212, 212, 216, 0.82);
201
208
  background: rgba(255, 255, 255, 0.78);
202
- padding: 16px;
209
+ padding: 10px;
203
210
  backdrop-filter: blur(16px);
204
211
  }
205
212
 
@@ -210,11 +217,6 @@
210
217
  place-items: center;
211
218
  }
212
219
 
213
- .akilio-logo {
214
- width: 94px;
215
- height: 34px;
216
- }
217
-
218
220
  .akilio-logo img {
219
221
  display: block;
220
222
  width: 100%;
@@ -292,7 +294,7 @@
292
294
 
293
295
  .akilio-header-description {
294
296
  display: -webkit-box;
295
- margin: 6px 0 0;
297
+ margin: 0;
296
298
  overflow: hidden;
297
299
  color: #71717a;
298
300
  font-size: 12px;
@@ -310,8 +312,8 @@
310
312
 
311
313
  .akilio-header-actions button {
312
314
  display: grid;
313
- width: 36px;
314
- height: 36px;
315
+ width: 25px;
316
+ height: 25px;
315
317
  place-items: center;
316
318
  border: 0;
317
319
  border-radius: 999px;
@@ -400,13 +402,26 @@
400
402
  }
401
403
 
402
404
  @keyframes akilio-status-in {
403
- from { transform: translateY(2px); opacity: 0; }
404
- to { transform: translateY(0); opacity: 1; }
405
+ from {
406
+ transform: translateY(2px);
407
+ opacity: 0;
408
+ }
409
+ to {
410
+ transform: translateY(0);
411
+ opacity: 1;
412
+ }
405
413
  }
406
414
 
407
415
  @keyframes akilio-status-pulse {
408
- 0%, 100% { transform: scale(0.75); opacity: 0.35; }
409
- 50% { transform: scale(1); opacity: 1; }
416
+ 0%,
417
+ 100% {
418
+ transform: scale(0.75);
419
+ opacity: 0.35;
420
+ }
421
+ 50% {
422
+ transform: scale(1);
423
+ opacity: 1;
424
+ }
410
425
  }
411
426
 
412
427
  .akilio-bubble {
@@ -428,7 +443,7 @@
428
443
  background: linear-gradient(
429
444
  135deg,
430
445
  var(--akilio-primary),
431
- var(--akilio-primary-hover)
446
+ color-mix(in srgb, var(--akilio-primary) 80%, transparent)
432
447
  );
433
448
  color: #fff;
434
449
  }
@@ -468,10 +483,16 @@
468
483
 
469
484
  .akilio-answer {
470
485
  color: inherit;
471
- font-size: 14px;
486
+ font-size: 0.8rem;
472
487
  line-height: 1.7;
473
488
  }
474
489
 
490
+ .akilio-answer h2 {
491
+ font-size: 1rem;
492
+ font-weight: 700;
493
+ margin: 0;
494
+ }
495
+
475
496
  .akilio-answer p {
476
497
  margin: 0.5rem 0;
477
498
  }
@@ -746,15 +767,18 @@
746
767
  position: relative;
747
768
  border-top: 1px solid rgba(212, 212, 216, 0.85);
748
769
  background: rgba(255, 255, 255, 0.86);
749
- padding: 12px;
770
+ padding: 8px 12px;
750
771
  backdrop-filter: blur(16px);
751
772
  }
752
773
 
753
774
  .akilio-composer-box {
775
+ display: flex;
776
+ align-items: flex-end;
777
+ gap: 8px;
754
778
  border: 1px solid rgba(212, 212, 216, 0.95);
755
779
  border-radius: 24px;
756
780
  background: #f8fafc;
757
- padding: 8px;
781
+ padding: 6px 12px;
758
782
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
759
783
  transition:
760
784
  border-color 150ms ease,
@@ -771,20 +795,20 @@
771
795
  }
772
796
 
773
797
  .akilio-composer textarea {
774
- width: 100%;
775
- min-height: 48px;
776
- max-height: 148px;
777
- height: 48px;
798
+ flex: 1;
799
+ min-height: 36px;
800
+ max-height: 120px;
801
+ height: 36px;
778
802
  overflow-y: hidden;
779
803
  resize: none;
780
804
  border: 0;
781
805
  outline: 0;
782
806
  background: transparent;
783
807
  color: #09090b;
784
- padding: 8px 10px;
808
+ padding: 6px 0;
785
809
  font: inherit;
786
810
  font-size: 14px;
787
- line-height: 1.55;
811
+ line-height: 1.5;
788
812
  }
789
813
 
790
814
  .akilio-online--unavailable {
@@ -800,44 +824,58 @@
800
824
  color: #a1a1aa;
801
825
  }
802
826
 
803
- .akilio-composer-footer {
804
- display: flex;
805
- align-items: center;
806
- justify-content: space-between;
807
- gap: 12px;
808
- padding: 0 2px 2px 7px;
809
- }
810
-
811
- .akilio-composer-footer span {
812
- color: #71717a;
813
- font-size: 11px;
814
- }
815
-
816
- .akilio-composer-footer button {
827
+ .akilio-composer-submit {
828
+ flex-shrink: 0;
817
829
  display: inline-flex;
818
830
  align-items: center;
819
- gap: 8px;
831
+ justify-content: center;
832
+ width: 28px;
833
+ height: 28px;
820
834
  border: 0;
821
835
  border-radius: 999px;
822
836
  background: var(--akilio-primary);
823
837
  color: #fff;
824
838
  cursor: pointer;
825
- padding: 10px 15px;
826
- font-size: 12px;
827
- font-weight: 850;
828
- box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
839
+ padding: 0;
829
840
  transition:
830
- transform 150ms ease,
831
- opacity 150ms ease;
841
+ background 150ms ease,
842
+ opacity 150ms ease,
843
+ transform 150ms ease;
832
844
  }
833
845
 
834
- .akilio-composer-footer button:hover:not(:disabled) {
835
- transform: translateY(-1px);
846
+ .akilio-composer-submit:hover:not(:disabled) {
836
847
  background: var(--akilio-primary-hover);
848
+ transform: scale(1.05);
849
+ }
850
+
851
+ .akilio-composer-submit:active:not(:disabled) {
852
+ transform: scale(0.98);
853
+ }
854
+
855
+ .akilio-composer-submit:disabled {
856
+ opacity: 0.45;
857
+ cursor: not-allowed;
858
+ }
859
+
860
+ .akilio-composer-submit svg {
861
+ width: 16px;
862
+ height: 16px;
863
+ }
864
+
865
+ .akilio-composer-help {
866
+ margin-top: 6px;
867
+ padding: 0 12px;
868
+ color: #71717a;
869
+ font-size: 11px;
870
+ line-height: 1.4;
871
+ display: flex;
872
+ align-items: center;
873
+ gap: 4px;
837
874
  }
838
875
 
839
876
  .akilio-powered-by {
840
- padding: 7px 4px 0;
877
+ margin-top: 6px;
878
+ padding: 0 4px;
841
879
  color: #71717a;
842
880
  font-size: 10px;
843
881
  font-weight: 600;
@@ -845,19 +883,119 @@
845
883
  text-align: center;
846
884
  }
847
885
 
848
- .akilio-composer-footer button:disabled {
849
- cursor: not-allowed;
850
- opacity: 0.45;
886
+ .akilio-coachmark {
887
+ position: fixed;
888
+ right: 22px;
889
+ bottom: 94px;
890
+ z-index: calc(var(--akilio-z-index) - 1);
891
+ display: flex;
892
+ width: min(320px, calc(100vw - 32px));
893
+ gap: 11px;
894
+ border: 1px solid color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
895
+ border-radius: 18px;
896
+ background: rgba(255, 255, 255, 0.98);
897
+ color: #17211f;
898
+ padding: 15px 38px 15px 15px;
899
+ pointer-events: auto;
900
+ box-shadow:
901
+ 0 24px 64px rgba(4, 47, 46, 0.18),
902
+ 0 0 0 1px rgba(15, 118, 110, 0.04);
903
+ animation: akilio-coachmark-in 200ms cubic-bezier(0.2, 0.8, 0.2, 1);
904
+ }
905
+
906
+ .akilio-coachmark::after {
907
+ position: absolute;
908
+ right: 30px;
909
+ bottom: -7px;
910
+ width: 13px;
911
+ height: 13px;
912
+ transform: rotate(45deg);
913
+ border-right: 1px solid
914
+ color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
915
+ border-bottom: 1px solid
916
+ color-mix(in srgb, var(--akilio-primary) 24%, #d4d4d8);
917
+ background: #fff;
918
+ content: '';
919
+ }
920
+
921
+ .akilio-coachmark-icon {
922
+ display: grid;
923
+ width: 32px;
924
+ height: 32px;
925
+ flex: 0 0 32px;
926
+ place-items: center;
927
+ border-radius: 999px;
928
+ background: color-mix(in srgb, var(--akilio-primary) 11%, #fff);
929
+ color: var(--akilio-primary);
930
+ }
931
+
932
+ .akilio-coachmark-icon svg {
933
+ width: 17px;
934
+ height: 17px;
935
+ }
936
+
937
+ .akilio-coachmark-content {
938
+ min-width: 0;
851
939
  }
852
940
 
853
- .akilio-composer-footer svg {
854
- width: 15px;
855
- height: 15px;
941
+ .akilio-coachmark-content strong {
942
+ display: block;
943
+ margin: 0 0 3px;
944
+ color: #17211f;
945
+ font-size: 14px;
946
+ line-height: 1.35;
856
947
  }
857
948
 
858
- .akilio-tour {
859
- max-width: 360px;
860
- border-radius: 18px !important;
949
+ .akilio-coachmark-content p {
950
+ margin: 0;
951
+ color: #52525b;
952
+ font-size: 12px;
953
+ line-height: 1.5;
954
+ }
955
+
956
+ .akilio-coachmark-action {
957
+ margin-top: 9px;
958
+ border: 0;
959
+ border-radius: 999px;
960
+ background: var(--akilio-primary);
961
+ color: var(--akilio-primary-foreground);
962
+ padding: 7px 12px;
963
+ cursor: pointer;
964
+ font-size: 11px;
965
+ font-weight: 750;
966
+ }
967
+
968
+ .akilio-coachmark-close {
969
+ position: absolute;
970
+ top: 8px;
971
+ right: 8px;
972
+ display: grid;
973
+ width: 26px;
974
+ height: 26px;
975
+ place-items: center;
976
+ border: 0;
977
+ border-radius: 999px;
978
+ background: transparent;
979
+ color: #71717a;
980
+ cursor: pointer;
981
+ font-size: 20px;
982
+ line-height: 1;
983
+ }
984
+
985
+ .akilio-coachmark-close:hover {
986
+ background: #f4f4f5;
987
+ color: #18181b;
988
+ }
989
+
990
+ @keyframes akilio-coachmark-in {
991
+ from {
992
+ transform: translateY(8px) scale(0.98);
993
+ opacity: 0;
994
+ }
995
+ to {
996
+ transform: translateY(0) scale(1);
997
+ opacity: 1;
998
+ }
861
999
  }
862
1000
 
863
1001
  @media (max-width: 640px) {
@@ -867,6 +1005,11 @@
867
1005
  padding: 10px 12px;
868
1006
  }
869
1007
 
1008
+ .akilio-coachmark {
1009
+ right: 16px;
1010
+ bottom: 82px;
1011
+ }
1012
+
870
1013
  .akilio-launcher strong {
871
1014
  display: none;
872
1015
  }
@@ -879,7 +1022,7 @@
879
1022
  max-width: 94%;
880
1023
  }
881
1024
 
882
- .akilio-composer-footer span {
1025
+ .akilio-composer-help {
883
1026
  display: none;
884
1027
  }
885
1028
  }
@@ -1101,7 +1244,7 @@
1101
1244
  border-radius: 18px;
1102
1245
  }
1103
1246
  .akilio-panel-header {
1104
- padding-top: max(14px, env(safe-area-inset-top));
1247
+ padding-top: max(10px, env(safe-area-inset-top));
1105
1248
  }
1106
1249
  .akilio-thread {
1107
1250
  padding-inline: 12px;
@@ -1126,6 +1269,10 @@
1126
1269
  background: rgba(24, 24, 27, 0.92);
1127
1270
  border-color: #3f3f46;
1128
1271
  }
1272
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-composer-box {
1273
+ background: #18181b;
1274
+ border-color: #3f3f46;
1275
+ }
1129
1276
  .akilio-root[data-akilio-color-mode='dark'] .akilio-composer textarea {
1130
1277
  color: var(--akilio-text, #fafafa);
1131
1278
  caret-color: var(--akilio-text, #fafafa);
@@ -1138,21 +1285,40 @@
1138
1285
  -webkit-text-fill-color: var(--akilio-muted, #a1a1aa);
1139
1286
  opacity: 1;
1140
1287
  }
1141
- .akilio-root[data-akilio-color-mode='dark'] .akilio-composer-footer span {
1288
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-composer-help {
1142
1289
  color: var(--akilio-muted, #a1a1aa);
1143
1290
  }
1144
1291
  .akilio-root[data-akilio-color-mode='dark'] .akilio-powered-by {
1145
1292
  color: var(--akilio-muted, #a1a1aa);
1146
1293
  }
1147
- .akilio-root[data-akilio-color-mode='dark'] .akilio-composer-box:focus-within {
1294
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark {
1295
+ border-color: color-mix(in srgb, var(--akilio-primary) 34%, #3f3f46);
1296
+ background: rgba(24, 24, 27, 0.98);
1297
+ color: #fafafa;
1298
+ box-shadow: 0 24px 64px rgba(0, 0, 0, 0.42);
1299
+ }
1300
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark::after {
1301
+ border-color: color-mix(in srgb, var(--akilio-primary) 34%, #3f3f46);
1148
1302
  background: #18181b;
1149
1303
  }
1150
-
1151
- @media (max-width: 420px) {
1152
- .akilio-logo {
1153
- width: 78px;
1154
- height: 30px;
1155
- }
1304
+ .akilio-root[data-akilio-color-mode='dark']
1305
+ .akilio-coachmark-content
1306
+ strong {
1307
+ color: #fafafa;
1308
+ }
1309
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark-content p {
1310
+ color: #a1a1aa;
1311
+ }
1312
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark-close {
1313
+ color: #a1a1aa;
1314
+ }
1315
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-coachmark-close:hover {
1316
+ background: #27272a;
1317
+ color: #fafafa;
1318
+ }
1319
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-composer-box:focus-within {
1320
+ background: #18181b;
1321
+ border-color: color-mix(in srgb, var(--akilio-primary) 55%, #3f3f46);
1156
1322
  }
1157
1323
 
1158
1324
  .akilio-privacy-consent-copy {
@@ -1216,11 +1382,44 @@
1216
1382
  color: #4338ca;
1217
1383
  font-weight: 700;
1218
1384
  }
1219
- .akilio-product-grid {
1385
+ /* Product grid layout variants */
1386
+ .akilio-products-grid {
1220
1387
  display: grid;
1221
1388
  grid-template-columns: repeat(2, minmax(0, 1fr));
1222
1389
  gap: 10px;
1223
1390
  }
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;
1397
+ }
1398
+
1399
+ /* Horizontal layout: single column full-width cards */
1400
+ .akilio-products-grid--horizontal {
1401
+ display: flex;
1402
+ flex-direction: column;
1403
+ gap: 10px;
1404
+ }
1405
+
1406
+ /* Responsive: collapse vertical to single column on small screens */
1407
+ @media (max-width: 640px) {
1408
+ .akilio-products-grid--vertical {
1409
+ grid-template-columns: 1fr;
1410
+ }
1411
+ }
1412
+
1413
+ /* Extra small screens */
1414
+ @media (max-width: 390px) {
1415
+ .akilio-products-grid--vertical {
1416
+ grid-template-columns: 1fr;
1417
+ }
1418
+
1419
+ .akilio-products-grid--horizontal {
1420
+ gap: 8px;
1421
+ }
1422
+ }
1224
1423
  .akilio-product-card {
1225
1424
  min-width: 0;
1226
1425
  overflow: hidden;
@@ -1242,7 +1441,9 @@
1242
1441
  object-fit: cover;
1243
1442
  transition: transform 180ms ease;
1244
1443
  }
1245
- .akilio-product-card:hover .akilio-product-media img { transform: scale(1.025); }
1444
+ .akilio-product-card:hover .akilio-product-media img {
1445
+ transform: scale(1.025);
1446
+ }
1246
1447
  .akilio-product-placeholder {
1247
1448
  width: 100%;
1248
1449
  height: 100%;
@@ -1251,7 +1452,11 @@
1251
1452
  color: var(--akilio-primary);
1252
1453
  font-size: 30px;
1253
1454
  font-weight: 800;
1254
- background: linear-gradient(145deg, rgba(8,145,178,.12), rgba(37,99,235,.08));
1455
+ background: linear-gradient(
1456
+ 145deg,
1457
+ rgba(8, 145, 178, 0.12),
1458
+ rgba(37, 99, 235, 0.08)
1459
+ );
1255
1460
  }
1256
1461
  .akilio-stock {
1257
1462
  position: absolute;
@@ -1263,13 +1468,17 @@
1263
1468
  white-space: nowrap;
1264
1469
  padding: 4px 7px;
1265
1470
  border-radius: 999px;
1266
- background: rgba(127, 29, 29, .9);
1471
+ background: rgba(127, 29, 29, 0.9);
1267
1472
  color: #fff;
1268
1473
  font-size: 9px;
1269
1474
  font-weight: 700;
1270
1475
  }
1271
- .akilio-stock--available { background: rgba(6, 95, 70, .9); }
1272
- .akilio-product-body { padding: 11px; }
1476
+ .akilio-stock--available {
1477
+ background: rgba(6, 95, 70, 0.9);
1478
+ }
1479
+ .akilio-product-body {
1480
+ padding: 11px;
1481
+ }
1273
1482
  .akilio-product-vendor,
1274
1483
  .akilio-product-variant {
1275
1484
  display: block;
@@ -1291,49 +1500,87 @@
1291
1500
  -webkit-box-orient: vertical;
1292
1501
  }
1293
1502
  .akilio-product-price {
1294
- min-height: 37px;
1503
+ /*min-height: 37px;*/
1295
1504
  display: flex;
1296
1505
  flex-wrap: wrap;
1297
1506
  align-items: baseline;
1298
1507
  gap: 5px;
1299
- margin-bottom: 9px;
1508
+ /*margin-bottom: 9px;*/
1509
+ }
1510
+ .akilio-product-price strong {
1511
+ color: #0f172a;
1512
+ font-size: 14px;
1513
+ }
1514
+ .akilio-product-price del {
1515
+ color: #94a3b8;
1516
+ font-size: 10px;
1300
1517
  }
1301
- .akilio-product-price strong { color: #0f172a; font-size: 14px; }
1302
- .akilio-product-price del { color: #94a3b8; font-size: 10px; }
1303
1518
  .akilio-product-action {
1304
- width: 100%;
1305
- min-height: 34px;
1519
+ width: auto;
1520
+ min-height: auto;
1306
1521
  display: inline-flex;
1307
1522
  align-items: center;
1308
1523
  justify-content: center;
1309
- padding: 7px 10px;
1524
+ padding: 6px 12px;
1310
1525
  border: 0;
1311
- border-radius: 10px;
1312
- background: var(--akilio-primary);
1313
- color: var(--akilio-primary-foreground);
1526
+ border-radius: 6px;
1527
+ background: transparent;
1528
+ color: var(--akilio-primary);
1314
1529
  font: inherit;
1315
1530
  font-size: 11px;
1316
1531
  font-weight: 700;
1317
- text-decoration: none;
1532
+ text-decoration: underline;
1533
+ text-underline-offset: 2px;
1318
1534
  cursor: pointer;
1535
+ transition:
1536
+ color 150ms ease,
1537
+ background 150ms ease;
1319
1538
  }
1320
- .akilio-product-action:hover { filter: brightness(.96); }
1539
+
1540
+ .akilio-product-action:hover {
1541
+ background: color-mix(in srgb, var(--akilio-primary) 8%, transparent);
1542
+ text-decoration: underline;
1543
+ }
1544
+
1321
1545
  .akilio-product-action:focus-visible {
1322
1546
  outline: 3px solid color-mix(in srgb, var(--akilio-primary) 28%, transparent);
1323
1547
  outline-offset: 2px;
1324
1548
  }
1325
- .akilio-product-action:disabled { opacity: .55; cursor: not-allowed; }
1326
- .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading { color: #94a3b8; }
1327
- .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading span { background: #312e81; color: #e0e7ff; }
1328
- .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card { background: #111827; border-color: #334155; box-shadow: none; }
1329
- .akilio-root[data-akilio-color-mode='dark'] .akilio-product-media { background: #1e293b; }
1549
+
1550
+ .akilio-product-action:disabled {
1551
+ opacity: 0.55;
1552
+ cursor: not-allowed;
1553
+ }
1554
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading {
1555
+ color: #94a3b8;
1556
+ }
1557
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-products-heading span {
1558
+ background: #312e81;
1559
+ color: #e0e7ff;
1560
+ }
1561
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card {
1562
+ background: #111827;
1563
+ border-color: #334155;
1564
+ box-shadow: none;
1565
+ }
1566
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-media {
1567
+ background: #1e293b;
1568
+ }
1330
1569
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card h4,
1331
- .akilio-root[data-akilio-color-mode='dark'] .akilio-product-price strong { color: #f8fafc; }
1570
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-price strong {
1571
+ color: #f8fafc;
1572
+ }
1332
1573
  .akilio-root[data-akilio-color-mode='dark'] .akilio-product-vendor,
1333
- .akilio-root[data-akilio-color-mode='dark'] .akilio-product-variant { color: #94a3b8; }
1574
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-variant {
1575
+ color: #94a3b8;
1576
+ }
1334
1577
  @media (max-width: 390px) {
1335
- .akilio-product-grid { grid-template-columns: 1fr; }
1336
- .akilio-product-media { aspect-ratio: 16 / 9; }
1578
+ .akilio-products-grid {
1579
+ grid-template-columns: 1fr;
1580
+ }
1581
+ .akilio-product-media {
1582
+ aspect-ratio: 16 / 9;
1583
+ }
1337
1584
  }
1338
1585
 
1339
1586
  .akilio-response-suggestions {
@@ -1346,7 +1593,7 @@
1346
1593
  .akilio-response-suggestions button {
1347
1594
  appearance: none;
1348
1595
  border: 1px solid color-mix(in srgb, var(--akilio-primary) 26%, #d4d4d8);
1349
- border-radius: 999px;
1596
+ border-radius: 15px;
1350
1597
  background: color-mix(in srgb, var(--akilio-primary) 7%, #ffffff);
1351
1598
  color: color-mix(in srgb, var(--akilio-primary) 72%, #18181b);
1352
1599
  cursor: pointer;
@@ -1356,7 +1603,10 @@
1356
1603
  font-size: 12px;
1357
1604
  font-weight: 700;
1358
1605
  line-height: 1.35;
1359
- transition: transform 150ms ease, border-color 150ms ease, background 150ms ease;
1606
+ transition:
1607
+ transform 150ms ease,
1608
+ border-color 150ms ease,
1609
+ background 150ms ease;
1360
1610
  }
1361
1611
 
1362
1612
  .akilio-response-suggestions button:hover {
@@ -1370,8 +1620,161 @@
1370
1620
  outline-offset: 2px;
1371
1621
  }
1372
1622
 
1373
- .akilio-root[data-akilio-color-mode='dark'] .akilio-response-suggestions button {
1623
+ .akilio-root[data-akilio-color-mode='dark']
1624
+ .akilio-response-suggestions
1625
+ button {
1374
1626
  border-color: color-mix(in srgb, var(--akilio-primary) 34%, #3f3f46);
1375
1627
  background: color-mix(in srgb, var(--akilio-primary) 14%, #18181b);
1376
1628
  color: #f4f4f5;
1377
1629
  }
1630
+
1631
+ /* Product card layout variants: vertical (default) and horizontal */
1632
+
1633
+ /* Vertical layout (default/standard) */
1634
+ .akilio-product-card--vertical {
1635
+ display: flex;
1636
+ flex-direction: column;
1637
+ min-width: 0;
1638
+ overflow: hidden;
1639
+ border: 1px solid #e2e8f0;
1640
+ border-radius: 16px;
1641
+ background: #fff;
1642
+ box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
1643
+ }
1644
+
1645
+ .akilio-product-card--vertical .akilio-product-media {
1646
+ position: relative;
1647
+ aspect-ratio: 4 / 3;
1648
+ overflow: hidden;
1649
+ background: #f1f5f9;
1650
+ }
1651
+
1652
+ .akilio-product-card--vertical .akilio-product-body {
1653
+ padding: 11px;
1654
+ display: flex;
1655
+ flex-direction: column;
1656
+ }
1657
+
1658
+ /* Horizontal layout */
1659
+ .akilio-product-card--horizontal {
1660
+ display: flex;
1661
+ flex-direction: row;
1662
+ gap: 12px;
1663
+ min-width: 0;
1664
+ overflow: hidden;
1665
+ border: 1px solid #e2e8f0;
1666
+ border-radius: 16px;
1667
+ background: #fff;
1668
+ box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
1669
+ align-items: stretch;
1670
+ }
1671
+
1672
+ .akilio-product-card--horizontal .akilio-product-media {
1673
+ flex: 0 0 25%;
1674
+ min-width: 80px;
1675
+ position: relative;
1676
+ aspect-ratio: 1 / 1;
1677
+ overflow: hidden;
1678
+ background: #f1f5f9;
1679
+ }
1680
+
1681
+ .akilio-product-card--horizontal .akilio-product-body {
1682
+ flex: 1;
1683
+ padding: 11px;
1684
+ display: flex;
1685
+ flex-direction: column;
1686
+ justify-content: space-between;
1687
+ min-width: 0;
1688
+ }
1689
+
1690
+ /* Adjust product action width for horizontal */
1691
+ .akilio-product-card--horizontal .akilio-product-action {
1692
+ width: 100%;
1693
+ }
1694
+
1695
+ /* Dark mode support for horizontal */
1696
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card--vertical,
1697
+ .akilio-root[data-akilio-color-mode='dark'] .akilio-product-card--horizontal {
1698
+ background: #111827;
1699
+ border-color: #334155;
1700
+ box-shadow: none;
1701
+ }
1702
+
1703
+ .akilio-root[data-akilio-color-mode='dark']
1704
+ .akilio-product-card--vertical
1705
+ .akilio-product-media,
1706
+ .akilio-root[data-akilio-color-mode='dark']
1707
+ .akilio-product-card--horizontal
1708
+ .akilio-product-media {
1709
+ background: #1e293b;
1710
+ }
1711
+
1712
+ /* System dark mode for horizontal */
1713
+ @media (prefers-color-scheme: dark) {
1714
+ .akilio-root[data-akilio-color-mode='system'] .akilio-product-card--vertical,
1715
+ .akilio-root[data-akilio-color-mode='system']
1716
+ .akilio-product-card--horizontal {
1717
+ background: #111827;
1718
+ border-color: #334155;
1719
+ box-shadow: none;
1720
+ }
1721
+
1722
+ .akilio-root[data-akilio-color-mode='system']
1723
+ .akilio-product-card--vertical
1724
+ .akilio-product-media,
1725
+ .akilio-root[data-akilio-color-mode='system']
1726
+ .akilio-product-card--horizontal
1727
+ .akilio-product-media {
1728
+ background: #1e293b;
1729
+ }
1730
+ }
1731
+
1732
+ /* Responsive: collapse horizontal to vertical on small screens */
1733
+ @media (max-width: 480px) {
1734
+ .akilio-product-card--horizontal {
1735
+ flex-direction: column;
1736
+ gap: 0;
1737
+ }
1738
+
1739
+ .akilio-product-card--horizontal .akilio-product-media {
1740
+ flex: 1;
1741
+ min-width: unset;
1742
+ aspect-ratio: 4 / 3;
1743
+ }
1744
+ }
1745
+
1746
+ /* Extra small screens */
1747
+ @media (max-width: 390px) {
1748
+ .akilio-product-card--vertical .akilio-product-media {
1749
+ aspect-ratio: 16 / 9;
1750
+ }
1751
+
1752
+ .akilio-product-card--horizontal {
1753
+ flex-direction: column;
1754
+ }
1755
+
1756
+ .akilio-product-card--horizontal .akilio-product-media {
1757
+ aspect-ratio: 16 / 9;
1758
+ }
1759
+ }
1760
+
1761
+ /* Premium inline source badge used in markdown answers */
1762
+ .source-ref {
1763
+ display: inline-flex;
1764
+ align-items: center;
1765
+ justify-content: center;
1766
+ margin-left: 0.3rem;
1767
+ padding: 0.1rem 0.45rem;
1768
+ border-radius: 999px;
1769
+ font-size: 0.68rem;
1770
+ font-weight: 600;
1771
+ letter-spacing: 0.01em;
1772
+ line-height: 1.2;
1773
+ vertical-align: super;
1774
+ color: #334155;
1775
+ background: linear-gradient(180deg, #f8fafc 0%, #eef2ff 100%);
1776
+ border: 1px solid #dbeafe;
1777
+ box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
1778
+ user-select: none;
1779
+ white-space: nowrap;
1780
+ }