@jjlmoya/utils-alcohol 1.24.0 → 1.26.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 (144) hide show
  1. package/package.json +1 -1
  2. package/src/entries.ts +7 -1
  3. package/src/index.ts +1 -0
  4. package/src/pages/[locale]/[slug].astro +7 -3
  5. package/src/tests/locale_completeness.test.ts +4 -9
  6. package/src/tests/tool_validation.test.ts +2 -2
  7. package/src/tool/alcoholClearance/alcohol-clearance-calculator.css +23 -23
  8. package/src/tool/alcoholClearance/bibliography.ts +6 -0
  9. package/src/tool/alcoholClearance/entry.ts +1 -0
  10. package/src/tool/alcoholClearance/i18n/de.ts +1 -12
  11. package/src/tool/alcoholClearance/i18n/en.ts +1 -12
  12. package/src/tool/alcoholClearance/i18n/es.ts +1 -12
  13. package/src/tool/alcoholClearance/i18n/fr.ts +1 -12
  14. package/src/tool/alcoholClearance/i18n/id.ts +1 -12
  15. package/src/tool/alcoholClearance/i18n/it.ts +1 -12
  16. package/src/tool/alcoholClearance/i18n/ja.ts +1 -12
  17. package/src/tool/alcoholClearance/i18n/ko.ts +1 -12
  18. package/src/tool/alcoholClearance/i18n/nl.ts +1 -12
  19. package/src/tool/alcoholClearance/i18n/pl.ts +1 -12
  20. package/src/tool/alcoholClearance/i18n/pt.ts +1 -12
  21. package/src/tool/alcoholClearance/i18n/ru.ts +1 -12
  22. package/src/tool/alcoholClearance/i18n/sv.ts +1 -12
  23. package/src/tool/alcoholClearance/i18n/tr.ts +1 -12
  24. package/src/tool/alcoholClearance/i18n/zh.ts +1 -12
  25. package/src/tool/beerCooler/beer-cooler.css +22 -22
  26. package/src/tool/beerCooler/bibliography.ts +6 -0
  27. package/src/tool/beerCooler/entry.ts +1 -0
  28. package/src/tool/beerCooler/i18n/de.ts +1 -12
  29. package/src/tool/beerCooler/i18n/en.ts +1 -12
  30. package/src/tool/beerCooler/i18n/es.ts +1 -12
  31. package/src/tool/beerCooler/i18n/fr.ts +1 -12
  32. package/src/tool/beerCooler/i18n/id.ts +1 -12
  33. package/src/tool/beerCooler/i18n/it.ts +1 -12
  34. package/src/tool/beerCooler/i18n/ja.ts +1 -12
  35. package/src/tool/beerCooler/i18n/ko.ts +1 -12
  36. package/src/tool/beerCooler/i18n/nl.ts +1 -12
  37. package/src/tool/beerCooler/i18n/pl.ts +1 -12
  38. package/src/tool/beerCooler/i18n/pt.ts +1 -12
  39. package/src/tool/beerCooler/i18n/ru.ts +1 -12
  40. package/src/tool/beerCooler/i18n/sv.ts +1 -12
  41. package/src/tool/beerCooler/i18n/tr.ts +1 -12
  42. package/src/tool/beerCooler/i18n/zh.ts +1 -12
  43. package/src/tool/carbonationCalculator/beer-carbonation-calculator.css +19 -19
  44. package/src/tool/carbonationCalculator/bibliography.ts +6 -0
  45. package/src/tool/carbonationCalculator/entry.ts +1 -0
  46. package/src/tool/carbonationCalculator/i18n/de.ts +1 -12
  47. package/src/tool/carbonationCalculator/i18n/en.ts +1 -12
  48. package/src/tool/carbonationCalculator/i18n/es.ts +1 -12
  49. package/src/tool/carbonationCalculator/i18n/fr.ts +1 -12
  50. package/src/tool/carbonationCalculator/i18n/id.ts +1 -12
  51. package/src/tool/carbonationCalculator/i18n/it.ts +1 -12
  52. package/src/tool/carbonationCalculator/i18n/ja.ts +1 -12
  53. package/src/tool/carbonationCalculator/i18n/ko.ts +1 -12
  54. package/src/tool/carbonationCalculator/i18n/nl.ts +1 -12
  55. package/src/tool/carbonationCalculator/i18n/pl.ts +1 -12
  56. package/src/tool/carbonationCalculator/i18n/pt.ts +1 -12
  57. package/src/tool/carbonationCalculator/i18n/ru.ts +1 -12
  58. package/src/tool/carbonationCalculator/i18n/sv.ts +1 -12
  59. package/src/tool/carbonationCalculator/i18n/tr.ts +1 -12
  60. package/src/tool/carbonationCalculator/i18n/zh.ts +1 -12
  61. package/src/tool/cocktailBalancer/bibliography.ts +7 -0
  62. package/src/tool/cocktailBalancer/cocktail-balancer.css +59 -59
  63. package/src/tool/cocktailBalancer/entry.ts +1 -0
  64. package/src/tool/cocktailBalancer/i18n/de.ts +1 -16
  65. package/src/tool/cocktailBalancer/i18n/en.ts +1 -16
  66. package/src/tool/cocktailBalancer/i18n/es.ts +1 -16
  67. package/src/tool/cocktailBalancer/i18n/fr.ts +1 -16
  68. package/src/tool/cocktailBalancer/i18n/id.ts +1 -16
  69. package/src/tool/cocktailBalancer/i18n/it.ts +1 -16
  70. package/src/tool/cocktailBalancer/i18n/ja.ts +1 -16
  71. package/src/tool/cocktailBalancer/i18n/ko.ts +1 -16
  72. package/src/tool/cocktailBalancer/i18n/nl.ts +1 -16
  73. package/src/tool/cocktailBalancer/i18n/pl.ts +1 -16
  74. package/src/tool/cocktailBalancer/i18n/pt.ts +1 -16
  75. package/src/tool/cocktailBalancer/i18n/ru.ts +1 -16
  76. package/src/tool/cocktailBalancer/i18n/sv.ts +1 -16
  77. package/src/tool/cocktailBalancer/i18n/tr.ts +1 -16
  78. package/src/tool/cocktailBalancer/i18n/zh.ts +1 -16
  79. package/src/tool/fortifiedWine/bibliography.astro +14 -0
  80. package/src/tool/fortifiedWine/bibliography.ts +7 -0
  81. package/src/tool/fortifiedWine/component.astro +331 -0
  82. package/src/tool/fortifiedWine/entry.ts +62 -0
  83. package/src/tool/fortifiedWine/fortified-wine-builder.css +534 -0
  84. package/src/tool/fortifiedWine/i18n/de.ts +66 -0
  85. package/src/tool/fortifiedWine/i18n/en.ts +140 -0
  86. package/src/tool/fortifiedWine/i18n/es.ts +140 -0
  87. package/src/tool/fortifiedWine/i18n/fr.ts +91 -0
  88. package/src/tool/fortifiedWine/i18n/id.ts +91 -0
  89. package/src/tool/fortifiedWine/i18n/it.ts +91 -0
  90. package/src/tool/fortifiedWine/i18n/ja.ts +91 -0
  91. package/src/tool/fortifiedWine/i18n/ko.ts +91 -0
  92. package/src/tool/fortifiedWine/i18n/nl.ts +91 -0
  93. package/src/tool/fortifiedWine/i18n/pl.ts +91 -0
  94. package/src/tool/fortifiedWine/i18n/pt.ts +91 -0
  95. package/src/tool/fortifiedWine/i18n/ru.ts +91 -0
  96. package/src/tool/fortifiedWine/i18n/sv.ts +91 -0
  97. package/src/tool/fortifiedWine/i18n/tr.ts +91 -0
  98. package/src/tool/fortifiedWine/i18n/zh.ts +91 -0
  99. package/src/tool/fortifiedWine/index.ts +8 -0
  100. package/src/tool/fortifiedWine/logic.ts +46 -0
  101. package/src/tool/fortifiedWine/seo.astro +41 -0
  102. package/src/tool/jelloShotLab/bibliography.astro +14 -0
  103. package/src/tool/jelloShotLab/bibliography.ts +8 -0
  104. package/src/tool/jelloShotLab/component.astro +183 -0
  105. package/src/tool/jelloShotLab/entry.ts +62 -0
  106. package/src/tool/jelloShotLab/i18n/de.ts +156 -0
  107. package/src/tool/jelloShotLab/i18n/en.ts +156 -0
  108. package/src/tool/jelloShotLab/i18n/es.ts +156 -0
  109. package/src/tool/jelloShotLab/i18n/fr.ts +156 -0
  110. package/src/tool/jelloShotLab/i18n/id.ts +156 -0
  111. package/src/tool/jelloShotLab/i18n/it.ts +156 -0
  112. package/src/tool/jelloShotLab/i18n/ja.ts +156 -0
  113. package/src/tool/jelloShotLab/i18n/ko.ts +156 -0
  114. package/src/tool/jelloShotLab/i18n/nl.ts +156 -0
  115. package/src/tool/jelloShotLab/i18n/pl.ts +156 -0
  116. package/src/tool/jelloShotLab/i18n/pt.ts +156 -0
  117. package/src/tool/jelloShotLab/i18n/ru.ts +156 -0
  118. package/src/tool/jelloShotLab/i18n/sv.ts +156 -0
  119. package/src/tool/jelloShotLab/i18n/tr.ts +156 -0
  120. package/src/tool/jelloShotLab/i18n/zh.ts +156 -0
  121. package/src/tool/jelloShotLab/index.ts +11 -0
  122. package/src/tool/jelloShotLab/jello-shot-lab.css +229 -0
  123. package/src/tool/jelloShotLab/logic.ts +29 -0
  124. package/src/tool/jelloShotLab/seo.astro +53 -0
  125. package/src/tool/partyKeg/bibliography.ts +6 -0
  126. package/src/tool/partyKeg/entry.ts +1 -0
  127. package/src/tool/partyKeg/i18n/de.ts +1 -12
  128. package/src/tool/partyKeg/i18n/en.ts +1 -12
  129. package/src/tool/partyKeg/i18n/es.ts +1 -12
  130. package/src/tool/partyKeg/i18n/fr.ts +1 -12
  131. package/src/tool/partyKeg/i18n/id.ts +1 -12
  132. package/src/tool/partyKeg/i18n/it.ts +1 -12
  133. package/src/tool/partyKeg/i18n/ja.ts +1 -12
  134. package/src/tool/partyKeg/i18n/ko.ts +1 -12
  135. package/src/tool/partyKeg/i18n/nl.ts +1 -12
  136. package/src/tool/partyKeg/i18n/pl.ts +1 -12
  137. package/src/tool/partyKeg/i18n/pt.ts +1 -12
  138. package/src/tool/partyKeg/i18n/ru.ts +1 -12
  139. package/src/tool/partyKeg/i18n/sv.ts +1 -12
  140. package/src/tool/partyKeg/i18n/tr.ts +1 -12
  141. package/src/tool/partyKeg/i18n/zh.ts +1 -12
  142. package/src/tool/partyKeg/party-stock-calculator.css +23 -23
  143. package/src/tools.ts +5 -0
  144. package/src/types.ts +1 -1
@@ -5,7 +5,7 @@
5
5
  color: #1e293b;
6
6
  }
7
7
 
8
- :global(.theme-dark) .balancer-app {
8
+ .theme-dark .balancer-app {
9
9
  color: #f1f5f9;
10
10
  }
11
11
 
@@ -17,7 +17,7 @@
17
17
  box-shadow: 0 4px 20px rgba(0,0,0,0.06);
18
18
  }
19
19
 
20
- :global(.theme-dark) .balancer-card {
20
+ .theme-dark .balancer-card {
21
21
  background: #0f172a;
22
22
  border-color: #1e293b;
23
23
  }
@@ -38,7 +38,7 @@
38
38
  }
39
39
  }
40
40
 
41
- :global(.theme-dark) .balancer-header {
41
+ .theme-dark .balancer-header {
42
42
  border-color: #1e293b;
43
43
  }
44
44
 
@@ -65,7 +65,7 @@
65
65
  border-radius: 9999px;
66
66
  }
67
67
 
68
- :global(.theme-dark) .balancer-version {
68
+ .theme-dark .balancer-version {
69
69
  background: #1e1b4b;
70
70
  color: #a5b4fc;
71
71
  }
@@ -111,7 +111,7 @@
111
111
  transition: background 0.2s;
112
112
  }
113
113
 
114
- :global(.theme-dark) .btn-secondary {
114
+ .theme-dark .btn-secondary {
115
115
  background: #1e293b;
116
116
  color: #94a3b8;
117
117
  }
@@ -121,7 +121,7 @@
121
121
  color: #4f46e5;
122
122
  }
123
123
 
124
- :global(.theme-dark) .btn-secondary:hover {
124
+ .theme-dark .btn-secondary:hover {
125
125
  background: rgba(99,102,241,0.2);
126
126
  }
127
127
 
@@ -144,7 +144,7 @@
144
144
  background: #fef2f2;
145
145
  }
146
146
 
147
- :global(.theme-dark) .btn-danger:hover {
147
+ .theme-dark .btn-danger:hover {
148
148
  background: rgba(239,68,68,0.1);
149
149
  }
150
150
 
@@ -188,7 +188,7 @@
188
188
  }
189
189
  }
190
190
 
191
- :global(.theme-dark) .recipe-column {
191
+ .theme-dark .recipe-column {
192
192
  border-color: #1e293b;
193
193
  }
194
194
 
@@ -210,7 +210,7 @@
210
210
  background: rgba(248,250,252,0.5);
211
211
  }
212
212
 
213
- :global(.theme-dark) .empty-state {
213
+ .theme-dark .empty-state {
214
214
  border-color: #334155;
215
215
  background: rgba(30,41,59,0.5);
216
216
  }
@@ -228,7 +228,7 @@
228
228
  margin-bottom: 1rem;
229
229
  }
230
230
 
231
- :global(.theme-dark) .empty-icon-wrap {
231
+ .theme-dark .empty-icon-wrap {
232
232
  background: rgba(99,102,241,0.2);
233
233
  }
234
234
 
@@ -244,7 +244,7 @@
244
244
  margin: 0 0 0.5rem;
245
245
  }
246
246
 
247
- :global(.theme-dark) .empty-title {
247
+ .theme-dark .empty-title {
248
248
  color: #e2e8f0;
249
249
  }
250
250
 
@@ -256,7 +256,7 @@
256
256
  text-align: center;
257
257
  }
258
258
 
259
- :global(.theme-dark) .empty-desc {
259
+ .theme-dark .empty-desc {
260
260
  color: #94a3b8;
261
261
  }
262
262
 
@@ -281,7 +281,7 @@
281
281
  transition: all 0.2s;
282
282
  }
283
283
 
284
- :global(.theme-dark) .btn-add-more {
284
+ .theme-dark .btn-add-more {
285
285
  border-color: #334155;
286
286
  }
287
287
 
@@ -302,7 +302,7 @@
302
302
  background: #f8fafc;
303
303
  }
304
304
 
305
- :global(.theme-dark) .dashboard-column {
305
+ .theme-dark .dashboard-column {
306
306
  background: rgba(0,0,0,0.15);
307
307
  }
308
308
 
@@ -313,7 +313,7 @@
313
313
  overflow: hidden;
314
314
  }
315
315
 
316
- :global(.theme-dark) .flavor-card {
316
+ .theme-dark .flavor-card {
317
317
  border-color: #1e293b;
318
318
  }
319
319
 
@@ -348,7 +348,7 @@
348
348
  color: #64748b;
349
349
  }
350
350
 
351
- :global(.theme-dark) .abv-badge {
351
+ .theme-dark .abv-badge {
352
352
  background: #1e293b;
353
353
  }
354
354
 
@@ -370,7 +370,7 @@
370
370
  stroke: #e2e8f0;
371
371
  }
372
372
 
373
- :global(.theme-dark) .radar-bg-poly {
373
+ .theme-dark .radar-bg-poly {
374
374
  stroke: #334155;
375
375
  }
376
376
 
@@ -396,7 +396,7 @@
396
396
  padding: 0 2px;
397
397
  }
398
398
 
399
- :global(.theme-dark) .radar-label {
399
+ .theme-dark .radar-label {
400
400
  background: transparent;
401
401
  }
402
402
 
@@ -438,7 +438,7 @@
438
438
  gap: 0.75rem;
439
439
  }
440
440
 
441
- :global(.theme-dark) .stats-grid {
441
+ .theme-dark .stats-grid {
442
442
  border-color: #1e293b;
443
443
  }
444
444
 
@@ -449,7 +449,7 @@
449
449
  text-align: center;
450
450
  }
451
451
 
452
- :global(.theme-dark) .stat-card {
452
+ .theme-dark .stat-card {
453
453
  border-color: #1e293b;
454
454
  }
455
455
 
@@ -467,7 +467,7 @@
467
467
  color: #334155;
468
468
  }
469
469
 
470
- :global(.theme-dark) .stat-card-value {
470
+ .theme-dark .stat-card-value {
471
471
  color: #e2e8f0;
472
472
  }
473
473
 
@@ -498,7 +498,7 @@
498
498
  margin-top: 0.5rem;
499
499
  }
500
500
 
501
- :global(.theme-dark) .color-swatch {
501
+ .theme-dark .color-swatch {
502
502
  border-color: #334155;
503
503
  }
504
504
 
@@ -514,7 +514,7 @@
514
514
  border-bottom: 1px solid #e2e8f0;
515
515
  }
516
516
 
517
- :global(.theme-dark) .balance-card {
517
+ .theme-dark .balance-card {
518
518
  border-color: #1e293b;
519
519
  }
520
520
 
@@ -548,7 +548,7 @@
548
548
  margin: 0 0.5rem 2rem;
549
549
  }
550
550
 
551
- :global(.theme-dark) .balance-track {
551
+ .theme-dark .balance-track {
552
552
  background: #1e293b;
553
553
  }
554
554
 
@@ -595,7 +595,7 @@
595
595
  z-index: 1;
596
596
  }
597
597
 
598
- :global(.theme-dark) .balance-needle {
598
+ .theme-dark .balance-needle {
599
599
  background: #334155;
600
600
  border-color: #fff;
601
601
  }
@@ -630,7 +630,7 @@
630
630
  border-top: 1px solid #e0e7ff;
631
631
  }
632
632
 
633
- :global(.theme-dark) .fix-box {
633
+ .theme-dark .fix-box {
634
634
  background: rgba(99,102,241,0.08);
635
635
  border-color: rgba(99,102,241,0.2);
636
636
  }
@@ -648,7 +648,7 @@
648
648
  font-size: 1.25rem;
649
649
  }
650
650
 
651
- :global(.theme-dark) .fix-icon-wrap {
651
+ .theme-dark .fix-icon-wrap {
652
652
  background: rgba(99,102,241,0.2);
653
653
  color: #818cf8;
654
654
  }
@@ -665,7 +665,7 @@
665
665
  font-size: 0.875rem;
666
666
  }
667
667
 
668
- :global(.theme-dark) .fix-title {
668
+ .theme-dark .fix-title {
669
669
  color: #c7d2fe;
670
670
  }
671
671
 
@@ -676,7 +676,7 @@
676
676
  margin: 0;
677
677
  }
678
678
 
679
- :global(.theme-dark) .fix-text {
679
+ .theme-dark .fix-text {
680
680
  color: #a5b4fc;
681
681
  }
682
682
 
@@ -714,7 +714,7 @@
714
714
  flex-direction: column;
715
715
  }
716
716
 
717
- :global(.theme-dark) .modal-body {
717
+ .theme-dark .modal-body {
718
718
  background: #0f172a;
719
719
  border-color: #1e293b;
720
720
  }
@@ -729,7 +729,7 @@
729
729
  z-index: 1;
730
730
  }
731
731
 
732
- :global(.theme-dark) .modal-header {
732
+ .theme-dark .modal-header {
733
733
  background: rgba(15,23,42,0.8);
734
734
  border-color: #1e293b;
735
735
  }
@@ -780,7 +780,7 @@
780
780
  background: #f1f5f9;
781
781
  }
782
782
 
783
- :global(.theme-dark) .modal-close-btn:hover {
783
+ .theme-dark .modal-close-btn:hover {
784
784
  background: #1e293b;
785
785
  }
786
786
 
@@ -809,7 +809,7 @@
809
809
  box-sizing: border-box;
810
810
  }
811
811
 
812
- :global(.theme-dark) .modal-search-input {
812
+ .theme-dark .modal-search-input {
813
813
  background: #1e293b;
814
814
  border-color: #334155;
815
815
  color: #f1f5f9;
@@ -829,7 +829,7 @@
829
829
  background: #f8fafc;
830
830
  }
831
831
 
832
- :global(.theme-dark) .modal-scroll-bg {
832
+ .theme-dark .modal-scroll-bg {
833
833
  background: rgba(0,0,0,0.1);
834
834
  }
835
835
 
@@ -857,7 +857,7 @@
857
857
  transition: all 0.15s;
858
858
  }
859
859
 
860
- :global(.theme-dark) .ing-select-btn {
860
+ .theme-dark .ing-select-btn {
861
861
  background: rgba(30,41,59,0.5);
862
862
  }
863
863
 
@@ -866,7 +866,7 @@
866
866
  border-color: #c7d2fe;
867
867
  }
868
868
 
869
- :global(.theme-dark) .ing-select-btn:hover {
869
+ .theme-dark .ing-select-btn:hover {
870
870
  background: rgba(99,102,241,0.1);
871
871
  border-color: rgba(99,102,241,0.4);
872
872
  }
@@ -914,7 +914,7 @@
914
914
  font-size: 0.875rem;
915
915
  }
916
916
 
917
- :global(.theme-dark) .ing-name {
917
+ .theme-dark .ing-name {
918
918
  color: #e2e8f0;
919
919
  }
920
920
 
@@ -922,7 +922,7 @@
922
922
  color: #4f46e5;
923
923
  }
924
924
 
925
- :global(.theme-dark) .ing-select-btn:hover .ing-name {
925
+ .theme-dark .ing-select-btn:hover .ing-name {
926
926
  color: #818cf8;
927
927
  }
928
928
 
@@ -967,7 +967,7 @@
967
967
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
968
968
  }
969
969
 
970
- :global(.theme-dark) .preset-load-btn {
970
+ .theme-dark .preset-load-btn {
971
971
  background: #1e293b;
972
972
  border-color: #334155;
973
973
  }
@@ -996,7 +996,7 @@
996
996
  font-size: 0.875rem;
997
997
  }
998
998
 
999
- :global(.theme-dark) .preset-name {
999
+ .theme-dark .preset-name {
1000
1000
  color: #fff;
1001
1001
  }
1002
1002
 
@@ -1036,7 +1036,7 @@
1036
1036
  text-align: center;
1037
1037
  }
1038
1038
 
1039
- :global(.theme-dark) .confirm-body {
1039
+ .theme-dark .confirm-body {
1040
1040
  background: #0f172a;
1041
1041
  border-color: #1e293b;
1042
1042
  }
@@ -1054,7 +1054,7 @@
1054
1054
  margin-bottom: 0.5rem;
1055
1055
  }
1056
1056
 
1057
- :global(.theme-dark) .confirm-icon-wrap {
1057
+ .theme-dark .confirm-icon-wrap {
1058
1058
  background: rgba(239,68,68,0.2);
1059
1059
  }
1060
1060
 
@@ -1075,7 +1075,7 @@
1075
1075
  margin: 0;
1076
1076
  }
1077
1077
 
1078
- :global(.theme-dark) .confirm-text {
1078
+ .theme-dark .confirm-text {
1079
1079
  color: #94a3b8;
1080
1080
  }
1081
1081
 
@@ -1091,7 +1091,7 @@
1091
1091
  padding: 0.75rem;
1092
1092
  }
1093
1093
 
1094
- :global(.recipe-row) {
1094
+ .recipe-row {
1095
1095
  background: #fff;
1096
1096
  border-radius: 1rem;
1097
1097
  padding: 1rem;
@@ -1099,34 +1099,34 @@
1099
1099
  border: 1px solid #f1f5f9;
1100
1100
  }
1101
1101
 
1102
- :global(.theme-dark .recipe-row) {
1102
+ .theme-dark .recipe-row {
1103
1103
  background: #0f172a;
1104
1104
  border-color: #1e293b;
1105
1105
  }
1106
1106
 
1107
- :global(.recipe-row-top) {
1107
+ .recipe-row-top {
1108
1108
  display: flex;
1109
1109
  align-items: center;
1110
1110
  justify-content: space-between;
1111
1111
  margin-bottom: 0.75rem;
1112
1112
  }
1113
1113
 
1114
- :global(.recipe-row-info) {
1114
+ .recipe-row-info {
1115
1115
  display: flex;
1116
1116
  align-items: center;
1117
1117
  gap: 0.75rem;
1118
1118
  }
1119
1119
 
1120
- :global(.recipe-row-name) {
1120
+ .recipe-row-name {
1121
1121
  font-weight: 700;
1122
1122
  color: #334155;
1123
1123
  }
1124
1124
 
1125
- :global(.theme-dark .recipe-row-name) {
1125
+ .theme-dark .recipe-row-name {
1126
1126
  color: #e2e8f0;
1127
1127
  }
1128
1128
 
1129
- :global(.recipe-row-type) {
1129
+ .recipe-row-type {
1130
1130
  font-size: 0.625rem;
1131
1131
  background: #f1f5f9;
1132
1132
  padding: 0.125rem 0.5rem;
@@ -1136,26 +1136,26 @@
1136
1136
  text-transform: uppercase;
1137
1137
  }
1138
1138
 
1139
- :global(.theme-dark .recipe-row-type) {
1139
+ .theme-dark .recipe-row-type {
1140
1140
  background: #1e293b;
1141
1141
  }
1142
1142
 
1143
- :global(.recipe-row-del) {
1143
+ .recipe-row-del {
1144
1144
  opacity: 0;
1145
1145
  transition: opacity 0.2s;
1146
1146
  }
1147
1147
 
1148
- :global(.recipe-row:hover .recipe-row-del) {
1148
+ .recipe-row:hover .recipe-row-del {
1149
1149
  opacity: 1;
1150
1150
  }
1151
1151
 
1152
- :global(.recipe-row-controls) {
1152
+ .recipe-row-controls {
1153
1153
  display: flex;
1154
1154
  align-items: center;
1155
1155
  gap: 1rem;
1156
1156
  }
1157
1157
 
1158
- :global(.recipe-range) {
1158
+ .recipe-range {
1159
1159
  flex: 1;
1160
1160
  height: 0.5rem;
1161
1161
  border-radius: 0.5rem;
@@ -1165,16 +1165,16 @@
1165
1165
  background: #e2e8f0;
1166
1166
  }
1167
1167
 
1168
- :global(.theme-dark .recipe-range) {
1168
+ .theme-dark .recipe-range {
1169
1169
  background: #334155;
1170
1170
  }
1171
1171
 
1172
- :global(.recipe-number-wrap) {
1172
+ .recipe-number-wrap {
1173
1173
  position: relative;
1174
1174
  width: 5rem;
1175
1175
  }
1176
1176
 
1177
- :global(.recipe-number) {
1177
+ .recipe-number {
1178
1178
  width: 100%;
1179
1179
  background: #f8fafc;
1180
1180
  border: 1px solid #e2e8f0;
@@ -1187,7 +1187,7 @@
1187
1187
  box-sizing: border-box;
1188
1188
  }
1189
1189
 
1190
- :global(.theme-dark .recipe-number) {
1190
+ .theme-dark .recipe-number {
1191
1191
  background: #1e293b;
1192
1192
  border-color: #334155;
1193
1193
  color: #e2e8f0;
@@ -1,4 +1,5 @@
1
1
  import type { AlcoholToolEntry, ToolLocaleContent } from '../../types';
2
+ export { bibliography } from './bibliography';
2
3
 
3
4
  export interface CocktailBalancerUI {
4
5
  [key: string]: string;
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
2
3
  import type { CocktailBalancerUI, CocktailBalancerLocaleContent } from '../index';
3
4
 
@@ -45,7 +46,6 @@ const ui: CocktailBalancerUI = {
45
46
  };
46
47
 
47
48
  const faqTitle = 'Häufig gestellte Fragen';
48
- const bibliographyTitle = 'Bibliografie & Quellen';
49
49
 
50
50
  const faq: CocktailBalancerLocaleContent['faq'] = [
51
51
  {
@@ -85,20 +85,6 @@ const howTo: CocktailBalancerLocaleContent['howTo'] = [
85
85
  },
86
86
  ];
87
87
 
88
- const bibliography: CocktailBalancerLocaleContent['bibliography'] = [
89
- {
90
- name: "Liquid Intelligence: The Art and Science of the Perfect Cocktail",
91
- url: "https://www.indigo.ca/en-ca/liquid-intelligence-the-art-and-science-of-the-perfect-cocktail/9780393089035.html",
92
- },
93
- {
94
- name: "Cocktails: The Science of Shaking",
95
- url: "https://cookingissues.com/2009/07/22/cocktails-the-science-of-shaking/",
96
- },
97
- {
98
- name: "Cocktail Balance - Difford's Guide",
99
- url: "https://www.diffordsguide.com/encyclopedia/1066/cocktails/cocktail-balance",
100
- },
101
- ];
102
88
 
103
89
  const seo: CocktailBalancerLocaleContent['seo'] = [
104
90
  {
@@ -215,7 +201,6 @@ export const content: CocktailBalancerLocaleContent = {
215
201
  seo,
216
202
  faqTitle,
217
203
  faq,
218
- bibliographyTitle,
219
204
  bibliography,
220
205
  howTo,
221
206
  schemas,
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
2
3
  import type { CocktailBalancerUI, CocktailBalancerLocaleContent } from '../index';
3
4
 
@@ -45,7 +46,6 @@ const ui: CocktailBalancerUI = {
45
46
  };
46
47
 
47
48
  const faqTitle = 'Frequently Asked Questions';
48
- const bibliographyTitle = 'Bibliography & Sources';
49
49
 
50
50
  const faq: CocktailBalancerLocaleContent['faq'] = [
51
51
  {
@@ -85,20 +85,6 @@ const howTo: CocktailBalancerLocaleContent['howTo'] = [
85
85
  },
86
86
  ];
87
87
 
88
- const bibliography: CocktailBalancerLocaleContent['bibliography'] = [
89
- {
90
- name: "Liquid Intelligence: The Art and Science of the Perfect Cocktail",
91
- url: "https://www.indigo.ca/en-ca/liquid-intelligence-the-art-and-science-of-the-perfect-cocktail/9780393089035.html",
92
- },
93
- {
94
- name: "Cocktails: The Science of Shaking",
95
- url: "https://cookingissues.com/2009/07/22/cocktails-the-science-of-shaking/",
96
- },
97
- {
98
- name: "Cocktail Balance - Difford's Guide",
99
- url: "https://www.diffordsguide.com/encyclopedia/1066/cocktails/cocktail-balance",
100
- },
101
- ];
102
88
 
103
89
  const seo: CocktailBalancerLocaleContent['seo'] = [
104
90
  {
@@ -215,7 +201,6 @@ export const content: CocktailBalancerLocaleContent = {
215
201
  seo,
216
202
  faqTitle,
217
203
  faq,
218
- bibliographyTitle,
219
204
  bibliography,
220
205
  howTo,
221
206
  schemas,
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
2
3
  import type { CocktailBalancerUI, CocktailBalancerLocaleContent } from '../index';
3
4
 
@@ -45,7 +46,6 @@ const ui: CocktailBalancerUI = {
45
46
  };
46
47
 
47
48
  const faqTitle = 'Preguntas Frecuentes';
48
- const bibliographyTitle = 'Bibliografía y Fuentes';
49
49
 
50
50
  const faq: CocktailBalancerLocaleContent['faq'] = [
51
51
  {
@@ -85,20 +85,6 @@ const howTo: CocktailBalancerLocaleContent['howTo'] = [
85
85
  },
86
86
  ];
87
87
 
88
- const bibliography: CocktailBalancerLocaleContent['bibliography'] = [
89
- {
90
- name: "Liquid Intelligence: The Art and Science of the Perfect Cocktail",
91
- url: "https://www.indigo.ca/en-ca/liquid-intelligence-the-art-and-science-of-the-perfect-cocktail/9780393089035.html",
92
- },
93
- {
94
- name: "Cocktails: The Science of Shaking",
95
- url: "https://cookingissues.com/2009/07/22/cocktails-the-science-of-shaking/",
96
- },
97
- {
98
- name: "Cocktail Balance - Difford's Guide",
99
- url: "https://www.diffordsguide.com/encyclopedia/1066/cocktails/cocktail-balance",
100
- },
101
- ];
102
88
 
103
89
  const seo: CocktailBalancerLocaleContent['seo'] = [
104
90
  {
@@ -215,7 +201,6 @@ export const content: CocktailBalancerLocaleContent = {
215
201
  seo,
216
202
  faqTitle,
217
203
  faq,
218
- bibliographyTitle,
219
204
  bibliography,
220
205
  howTo,
221
206
  schemas,
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
2
3
  import type { CocktailBalancerUI, CocktailBalancerLocaleContent } from '../index';
3
4
 
@@ -45,7 +46,6 @@ const ui: CocktailBalancerUI = {
45
46
  };
46
47
 
47
48
  const faqTitle = 'Foire Aux Questions';
48
- const bibliographyTitle = 'Bibliographie & Sources';
49
49
 
50
50
  const faq: CocktailBalancerLocaleContent['faq'] = [
51
51
  {
@@ -85,20 +85,6 @@ const howTo: CocktailBalancerLocaleContent['howTo'] = [
85
85
  },
86
86
  ];
87
87
 
88
- const bibliography: CocktailBalancerLocaleContent['bibliography'] = [
89
- {
90
- name: "Liquid Intelligence: The Art and Science of the Perfect Cocktail",
91
- url: "https://www.indigo.ca/en-ca/liquid-intelligence-the-art-and-science-of-the-perfect-cocktail/9780393089035.html",
92
- },
93
- {
94
- name: "Cocktails: The Science of Shaking",
95
- url: "https://cookingissues.com/2009/07/22/cocktails-the-science-of-shaking/",
96
- },
97
- {
98
- name: "Cocktail Balance - Difford's Guide",
99
- url: "https://www.diffordsguide.com/encyclopedia/1066/cocktails/cocktail-balance",
100
- },
101
- ];
102
88
 
103
89
  const seo: CocktailBalancerLocaleContent['seo'] = [
104
90
  {
@@ -215,7 +201,6 @@ export const content: CocktailBalancerLocaleContent = {
215
201
  seo,
216
202
  faqTitle,
217
203
  faq,
218
- bibliographyTitle,
219
204
  bibliography,
220
205
  howTo,
221
206
  schemas,
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
2
3
  import type { CocktailBalancerUI, CocktailBalancerLocaleContent } from '../index';
3
4
 
@@ -45,7 +46,6 @@ const ui: CocktailBalancerUI = {
45
46
  };
46
47
 
47
48
  const faqTitle = 'Pertanyaan yang Sering Diajukan';
48
- const bibliographyTitle = 'Bibliografi & Sumber';
49
49
 
50
50
  const faq: CocktailBalancerLocaleContent['faq'] = [
51
51
  {
@@ -85,20 +85,6 @@ const howTo: CocktailBalancerLocaleContent['howTo'] = [
85
85
  },
86
86
  ];
87
87
 
88
- const bibliography: CocktailBalancerLocaleContent['bibliography'] = [
89
- {
90
- name: "Liquid Intelligence: The Art and Science of the Perfect Cocktail",
91
- url: "https://www.indigo.ca/en-ca/liquid-intelligence-the-art-and-science-of-the-perfect-cocktail/9780393089035.html",
92
- },
93
- {
94
- name: "Cocktails: The Science of Shaking",
95
- url: "https://cookingissues.com/2009/07/22/cocktails-the-science-of-shaking/",
96
- },
97
- {
98
- name: "Cocktail Balance - Difford's Guide",
99
- url: "https://www.diffordsguide.com/encyclopedia/1066/cocktails/cocktail-balance",
100
- },
101
- ];
102
88
 
103
89
  const seo: CocktailBalancerLocaleContent['seo'] = [
104
90
  {
@@ -215,7 +201,6 @@ export const content: CocktailBalancerLocaleContent = {
215
201
  seo,
216
202
  faqTitle,
217
203
  faq,
218
- bibliographyTitle,
219
204
  bibliography,
220
205
  howTo,
221
206
  schemas,