@canopy-iiif/app 0.10.7 → 0.10.9

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.
@@ -171,6 +171,9 @@
171
171
  color: var(--color-gray-900);
172
172
  }
173
173
 
174
+ @utility max-w-content {
175
+ max-width: 1080px;
176
+ }
174
177
  @layer components {
175
178
  .canopy-button {
176
179
  display: inline-flex;
@@ -185,23 +188,23 @@
185
188
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
186
189
  }
187
190
  .canopy-button--primary {
188
- background-color: var(--color-brand-default, #4f46e5);
189
- color: var(--color-gray-50, #f9fafb);
191
+ background-color: var(--color-brand-default);
192
+ color: var(--color-gray-50);
190
193
  box-shadow: 0 18px 32px -22px rgba(15, 23, 42, 0.55);
191
194
  }
192
195
  .canopy-button--primary:hover, .canopy-button--primary:focus-visible {
193
- background-color: var(--color-brand-800, #4338ca);
194
- color: var(--color-gray-50, #f9fafb);
196
+ background-color: var(--color-brand-800);
197
+ color: var(--color-gray-50);
195
198
  }
196
199
  .canopy-button--secondary {
197
- border: 1px solid color-mix(in srgb, var(--color-gray-400, #94a3b8) 60%, transparent);
198
- color: color-mix(in srgb, var(--color-gray-900, #0f172a) 92%, transparent);
200
+ border: 1px solid color-mix(in srgb, var(--color-gray-400) 60%, transparent);
201
+ color: color-mix(in srgb, var(--color-gray-900) 92%, transparent);
199
202
  background-color: var(--color-gray-50);
200
203
  }
201
204
  .canopy-button--secondary:hover, .canopy-button--secondary:focus-visible {
202
- border-color: color-mix(in srgb, var(--color-brand-400, #818cf8) 65%, transparent);
203
- background-color: color-mix(in srgb, var(--color-brand-200, #c7d2fe) 25%, transparent);
204
- color: var(--color-brand-700, #4338ca);
205
+ border-color: color-mix(in srgb, var(--color-brand-400) 65%, transparent);
206
+ background-color: color-mix(in srgb, var(--color-brand-200) 25%, transparent);
207
+ color: var(--color-brand-700);
205
208
  }
206
209
  .canopy-button-group {
207
210
  display: flex;
@@ -228,7 +231,7 @@
228
231
  .canopy-card .canopy-card-media, .canopy-annotation-card .canopy-card-media {
229
232
  position: relative;
230
233
  width: 100%;
231
- padding-bottom: var(--canopy-card-padding, 100%);
234
+ padding-bottom: var(--canopy-card-padding);
232
235
  background-color: rgb(229, 231, 235); /* slate-200 */
233
236
  overflow: hidden;
234
237
  }
@@ -390,15 +393,15 @@
390
393
  width: 2.5rem;
391
394
  height: 2.5rem;
392
395
  border-radius: 0.75rem;
393
- border: 1px solid var(--color-gray-200, #e2e8f0);
396
+ border: 1px solid var(--color-gray-200);
394
397
  background: rgba(255, 255, 255, 0.8);
395
- color: var(--color-gray-800, #1f2937);
398
+ color: var(--color-gray-800);
396
399
  transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
397
400
  }
398
401
  .canopy-header__menu:hover,
399
402
  .canopy-header__menu:focus-visible {
400
403
  background: rgba(255, 255, 255, 0.95);
401
- color: var(--color-gray-900, #0f172a);
404
+ color: var(--color-gray-900);
402
405
  outline: none;
403
406
  }
404
407
  .canopy-header__menu-icon {
@@ -436,15 +439,15 @@
436
439
  width: 2.5rem;
437
440
  height: 2.5rem;
438
441
  border-radius: 0.75rem;
439
- border: 1px solid var(--color-gray-200, #e2e8f0);
442
+ border: 1px solid var(--color-gray-200);
440
443
  background: rgba(255, 255, 255, 0.8);
441
- color: var(--color-gray-800, #1f2937);
444
+ color: var(--color-gray-800);
442
445
  transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
443
446
  }
444
447
  .canopy-header__icon-button:hover,
445
448
  .canopy-header__icon-button:focus-visible {
446
449
  background: rgb(255, 255, 255);
447
- color: var(--color-gray-900, #0f172a);
450
+ color: var(--color-gray-900);
448
451
  outline: none;
449
452
  }
450
453
  .canopy-header__search-icon {
@@ -542,7 +545,7 @@
542
545
  font-size: 1rem;
543
546
  }
544
547
  .canopy-nav-links a {
545
- color: var(--color-gray-900, #0f172a);
548
+ color: var(--color-gray-900);
546
549
  font-weight: 500;
547
550
  text-decoration: none;
548
551
  padding: 0.25rem 0;
@@ -550,7 +553,7 @@
550
553
  }
551
554
  .canopy-nav-links a:hover,
552
555
  .canopy-nav-links a:focus-visible {
553
- color: var(--color-brand-default, #3e63dd);
556
+ color: var(--color-brand-default);
554
557
  outline: none;
555
558
  }
556
559
  .canopy-modal--nav .canopy-modal__panel {
@@ -633,7 +636,7 @@
633
636
  width: min(100%, 38rem);
634
637
  max-width: 38rem;
635
638
  max-height: min(90vh, 640px);
636
- background: var(--color-gray-50, #f8fafc);
639
+ background: var(--color-gray-50);
637
640
  border-radius: 1rem;
638
641
  box-shadow: 0 28px 60px -24px rgba(15, 23, 42, 0.65);
639
642
  overflow: hidden;
@@ -660,7 +663,7 @@
660
663
  margin: 0 0 1rem;
661
664
  font-size: 1.25rem;
662
665
  font-weight: 600;
663
- color: var(--color-gray-900, #0f172a);
666
+ color: var(--color-gray-900);
664
667
  }
665
668
  .canopy-modal__close {
666
669
  position: absolute;
@@ -672,16 +675,16 @@
672
675
  width: 2.5rem;
673
676
  height: 2.5rem;
674
677
  border-radius: 9999px;
675
- border: 1px solid var(--color-gray-200, #e2e8f0);
678
+ border: 1px solid var(--color-gray-200);
676
679
  background: rgba(255, 255, 255, 0.92);
677
- color: var(--color-gray-700, #334155);
680
+ color: var(--color-gray-700);
678
681
  cursor: pointer;
679
682
  transition: background-color 150ms ease, color 150ms ease, border-color 150ms ease;
680
683
  }
681
684
  .canopy-modal__close:hover,
682
685
  .canopy-modal__close:focus-visible {
683
686
  background: rgb(248, 250, 252);
684
- color: var(--color-gray-900, #0f172a);
687
+ color: var(--color-gray-900);
685
688
  outline: none;
686
689
  }
687
690
  .canopy-modal__close-icon {
@@ -962,8 +965,8 @@
962
965
  width: 2.75rem;
963
966
  height: 2.75rem;
964
967
  border-radius: 9999px;
965
- border: 1px solid color-mix(in srgb, var(--color-gray-400, #94a3b8) 55%, transparent);
966
- background-color: color-mix(in srgb, var(--color-gray-100, #f1f5f9) 65%, transparent);
968
+ border: 1px solid color-mix(in srgb, var(--color-gray-400) 55%, transparent);
969
+ background-color: color-mix(in srgb, var(--color-gray-100) 65%, transparent);
967
970
  backdrop-filter: blur(6px);
968
971
  cursor: pointer;
969
972
  display: inline-flex;
@@ -991,8 +994,8 @@
991
994
  }
992
995
  .canopy-interstitial__nav-btn:hover, .canopy-interstitial__nav-btn:focus-visible {
993
996
  background-color: color-mix(in srgb, var(--color-brand-200) 55%, transparent);
994
- border-color: color-mix(in srgb, var(--color-brand-400, #818cf8) 70%, transparent);
995
- color: var(--color-brand-700, #4338ca);
997
+ border-color: color-mix(in srgb, var(--color-brand-400) 70%, transparent);
998
+ color: var(--color-brand-700);
996
999
  }
997
1000
  .canopy-interstitial__pagination {
998
1001
  position: absolute;
@@ -1046,7 +1049,7 @@
1046
1049
  --search-form-label-padding-y: 0.625rem;
1047
1050
  position: relative;
1048
1051
  backdrop-filter: blur(12px);
1049
- transition: box-shadow var(--duration-fast, 150ms) ease, background-color var(--duration-fast, 150ms) ease;
1052
+ transition: box-shadow var(--duration-fast) ease, background-color var(--duration-fast) ease;
1050
1053
  background-color: var(--color-gray-50);
1051
1054
  cursor: text;
1052
1055
  padding-right: 0.4rem;
@@ -1064,7 +1067,7 @@
1064
1067
  white-space: nowrap;
1065
1068
  overflow: hidden;
1066
1069
  text-overflow: ellipsis;
1067
- transition: opacity var(--duration-fast, 150ms) ease;
1070
+ transition: opacity var(--duration-fast) ease;
1068
1071
  }
1069
1072
  .canopy-search-form-shell:hover {
1070
1073
  box-shadow: var(--shadow-md, 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06));
@@ -1073,9 +1076,9 @@
1073
1076
  width: 1.25rem;
1074
1077
  height: 1.25rem;
1075
1078
  flex-shrink: 0;
1076
- fill: var(--color-gray-400, #b9bbc6);
1079
+ fill: var(--color-gray-400);
1077
1080
  pointer-events: none;
1078
- transition: fill var(--duration-fast, 150ms) var(--easing-standard, ease);
1081
+ transition: fill var(--duration-fast) var(--easing-standard);
1079
1082
  }
1080
1083
  .canopy-search-form-shell input[data-canopy-search-form-input] {
1081
1084
  width: 100%;
@@ -1084,42 +1087,42 @@
1084
1087
  background: transparent;
1085
1088
  box-shadow: none;
1086
1089
  caret-color: transparent;
1087
- transition: opacity var(--duration-fast, 150ms) ease;
1090
+ transition: opacity var(--duration-fast) ease;
1088
1091
  }
1089
1092
  .canopy-search-form-shell:focus-within {
1090
1093
  background-color: var(--color-brand-100);
1091
1094
  }
1092
1095
  .canopy-search-form-shell:focus-within input[data-canopy-search-form-input] {
1093
1096
  opacity: 1;
1094
- caret-color: var(--color-gray-900, #121418);
1097
+ caret-color: var(--color-gray-900);
1095
1098
  }
1096
1099
  .canopy-search-form-shell:focus-within svg {
1097
- fill: var(--color-brand-default, #3e63dd);
1100
+ fill: var(--color-brand-default);
1098
1101
  }
1099
1102
  .canopy-search-form-shell[data-has-value="1"] input[data-canopy-search-form-input] {
1100
1103
  opacity: 1;
1101
- caret-color: var(--color-gray-900, #121418);
1104
+ caret-color: var(--color-gray-900);
1102
1105
  }
1103
1106
 
1104
1107
  .canopy-search-form {
1105
1108
  display: flex;
1106
1109
  align-items: center;
1107
1110
  gap: 0.5rem;
1108
- border: 1px solid var(--color-gray-200, #cdced6);
1111
+ border: 1px solid var(--color-gray-200);
1109
1112
  border-radius: 0.75rem;
1110
- color: var(--color-gray-700, #60646c);
1111
- box-shadow: var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, 0.05));
1112
- transition: border-color var(--duration-fast, 150ms) var(--easing-standard, ease), box-shadow var(--duration-fast, 150ms) var(--easing-standard, ease), background-color var(--duration-fast, 150ms) var(--easing-standard, ease);
1113
+ color: var(--color-gray-700);
1114
+ box-shadow: var(--shadow-sm);
1115
+ transition: border-color var(--duration-fast) var(--easing-standard), box-shadow var(--duration-fast) var(--easing-standard), background-color var(--duration-fast) var(--easing-standard);
1113
1116
  }
1114
1117
  .canopy-search-form:focus-within {
1115
- border-color: var(--color-brand-500, #3e63dd);
1116
- box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-brand-500, #3e63dd) 45%, transparent), var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, 0.05));
1118
+ border-color: var(--color-brand-500);
1119
+ box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-brand-500) 45%, transparent), var(--shadow-sm);
1117
1120
  }
1118
1121
  .canopy-search-form:focus-within .canopy-search-form__icon {
1119
- color: var(--color-brand-500, #3e63dd);
1122
+ color: var(--color-brand-500);
1120
1123
  }
1121
1124
  .canopy-search-form[data-has-value="1"] .canopy-search-form__icon {
1122
- color: var(--color-brand-500, #3e63dd);
1125
+ color: var(--color-brand-500);
1123
1126
  }
1124
1127
 
1125
1128
  .canopy-search-form__label {
@@ -1144,14 +1147,14 @@
1144
1147
  align-items: center;
1145
1148
  justify-content: center;
1146
1149
  cursor: pointer;
1147
- transition: color var(--duration-fast, 150ms) var(--easing-standard, ease);
1150
+ transition: color var(--duration-fast) var(--easing-standard);
1148
1151
  }
1149
1152
  .canopy-search-form__clear:hover, .canopy-search-form__clear:focus-visible {
1150
1153
  color: var(--color-brand-default);
1151
1154
  }
1152
1155
  .canopy-search-form__clear:focus-visible {
1153
1156
  outline: none;
1154
- box-shadow: 0 0 0 2px var(--color-gray-100, #ffffff), 0 0 0 4px color-mix(in srgb, var(--color-brand-800) 65%, transparent);
1157
+ box-shadow: 0 0 0 2px var(--color-gray-100), 0 0 0 4px color-mix(in srgb, var(--color-brand-800) 65%, transparent);
1155
1158
  border-radius: 999px;
1156
1159
  }
1157
1160
 
@@ -1159,13 +1162,13 @@
1159
1162
  flex: 1;
1160
1163
  min-width: 0;
1161
1164
  padding: 0.125rem 0;
1162
- font-size: var(--font-size-base, 1rem);
1163
- line-height: var(--line-height-base, 1.5rem);
1165
+ font-size: var(--font-size-base);
1166
+ line-height: var(--line-height-base);
1164
1167
  background: transparent;
1165
1168
  border: 0;
1166
1169
  color: inherit;
1167
1170
  outline: none;
1168
- transition: opacity var(--duration-fast, 150ms) var(--easing-standard, ease), caret-color var(--duration-fast, 150ms) var(--easing-standard, ease);
1171
+ transition: opacity var(--duration-fast) var(--easing-standard), caret-color var(--duration-fast) var(--easing-standard);
1169
1172
  }
1170
1173
  .canopy-search-form__input::placeholder {
1171
1174
  color: rgba(148, 163, 184, 0.75);
@@ -1183,16 +1186,16 @@
1183
1186
  font-weight: 400;
1184
1187
  font-size: 1rem;
1185
1188
  padding: 0.382rem 0.618rem;
1186
- transition: background-color var(--duration-fast, 150ms) var(--easing-standard, ease), transform var(--duration-fast, 150ms) var(--easing-standard, ease);
1189
+ transition: background-color var(--duration-fast) var(--easing-standard), transform var(--duration-fast) var(--easing-standard);
1187
1190
  cursor: pointer;
1188
1191
  }
1189
1192
  .canopy-search-form__submit:hover, .canopy-search-form__submit:focus-visible {
1190
1193
  background: var(--color-brand-800);
1191
- box-shadow: var(--shadow-md, 0 4px 6px rgba(0, 0, 0, 0.1));
1194
+ box-shadow: var(--shadow-md);
1192
1195
  }
1193
1196
  .canopy-search-form__submit:focus-visible {
1194
1197
  outline: none;
1195
- box-shadow: 0 0 0 2px var(--color-gray-100, #ffffff), 0 0 0 4px color-mix(in srgb, var(--color-brand-500, #3e63dd) 65%, transparent);
1198
+ box-shadow: 0 0 0 2px var(--color-gray-100), 0 0 0 4px color-mix(in srgb, var(--color-brand-500) 65%, transparent);
1196
1199
  }
1197
1200
  .canopy-search-form__submit:active {
1198
1201
  transform: translateY(1px);
@@ -1242,9 +1245,9 @@
1242
1245
  align-items: center;
1243
1246
  gap: 0.25rem;
1244
1247
  padding: 0.25rem 0.5rem;
1245
- border: 1px solid var(--color-gray-200, #e5e7eb);
1246
- color: var(--color-gray-700, #374151);
1247
- background: var(--color-gray-100, #ffffff);
1248
+ border: 1px solid var(--color-gray-200);
1249
+ color: var(--color-gray-700);
1250
+ background: var(--color-gray-100);
1248
1251
  border-radius: 6px;
1249
1252
  cursor: pointer;
1250
1253
  }
@@ -1260,7 +1263,7 @@
1260
1263
  }
1261
1264
  .canopy-search-form-modal .canopy-search-form-modal__panel {
1262
1265
  position: relative;
1263
- background: var(--color-gray-100, #ffffff);
1266
+ background: var(--color-gray-100);
1264
1267
  min-width: 320px;
1265
1268
  max-width: 720px;
1266
1269
  width: 90%;
@@ -1273,20 +1276,20 @@
1273
1276
  position: absolute;
1274
1277
  top: 8px;
1275
1278
  right: 8px;
1276
- border: 1px solid var(--color-gray-200, #e5e7eb);
1277
- background: var(--color-gray-100, #ffffff);
1279
+ border: 1px solid var(--color-gray-200);
1280
+ background: var(--color-gray-100);
1278
1281
  border-radius: 6px;
1279
1282
  padding: 2px 6px;
1280
1283
  cursor: pointer;
1281
1284
  }
1282
1285
  .canopy-search-form-modal .canopy-search-form-modal__inputWrap {
1283
1286
  padding: 10px 12px;
1284
- border-bottom: 1px solid var(--color-gray-200, #e5e7eb);
1287
+ border-bottom: 1px solid var(--color-gray-200);
1285
1288
  }
1286
1289
  .canopy-search-form-modal .canopy-search-form-modal__input {
1287
1290
  width: 100%;
1288
1291
  padding: 8px 10px;
1289
- border: 1px solid var(--color-gray-200, #e5e7eb);
1292
+ border: 1px solid var(--color-gray-200);
1290
1293
  border-radius: 6px;
1291
1294
  outline: none;
1292
1295
  }
@@ -1307,9 +1310,9 @@
1307
1310
  border-radius: 4px;
1308
1311
  }
1309
1312
  .canopy-search-form-modal .canopy-search-form-modal__title {
1310
- font-size: var(--font-size-sm, 0.875rem);
1311
- line-height: var(--line-height-sm, 1.25rem);
1312
- color: var(--color-gray-900, #121418);
1313
+ font-size: var(--font-size-sm);
1314
+ line-height: var(--line-height-sm);
1315
+ color: var(--color-gray-900);
1313
1316
  font-weight: 500;
1314
1317
  }
1315
1318
 
@@ -1322,8 +1325,8 @@
1322
1325
  left: 0;
1323
1326
  right: 0;
1324
1327
  top: calc(100% + 4px);
1325
- background: var(--color-gray-100, #ffffff);
1326
- border: 1px solid var(--color-gray-200, #e5e7eb);
1328
+ background: var(--color-gray-100);
1329
+ border: 1px solid var(--color-gray-200);
1327
1330
  border-radius: 8px;
1328
1331
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
1329
1332
  z-index: 1000;
@@ -1341,7 +1344,7 @@
1341
1344
  .canopy-modal--filters .canopy-modal__panel {
1342
1345
  width: min(100%, 48rem);
1343
1346
  max-height: min(90vh, 720px);
1344
- background: var(--color-gray-100, #ffffff);
1347
+ background: var(--color-gray-100);
1345
1348
  }
1346
1349
  .canopy-modal--filters .canopy-modal__body--filters {
1347
1350
  display: flex;
@@ -1351,9 +1354,9 @@
1351
1354
  }
1352
1355
  .canopy-search-filters__subtitle {
1353
1356
  margin: 0 0 0.75rem;
1354
- font-size: var(--font-size-sm, 0.875rem);
1355
- line-height: var(--line-height-sm, 1.25rem);
1356
- color: var(--color-gray-500, #8b8d98);
1357
+ font-size: var(--font-size-sm);
1358
+ line-height: var(--line-height-sm);
1359
+ color: var(--color-gray-500);
1357
1360
  }
1358
1361
  .canopy-search-filters__body {
1359
1362
  display: grid;
@@ -1365,18 +1368,18 @@
1365
1368
  gap: 0.75rem;
1366
1369
  }
1367
1370
  .canopy-search-filters__empty {
1368
- font-size: var(--font-size-sm, 0.875rem);
1369
- line-height: var(--line-height-sm, 1.25rem);
1370
- color: var(--color-gray-500, #8b8d98);
1371
+ font-size: var(--font-size-sm);
1372
+ line-height: var(--line-height-sm);
1373
+ color: var(--color-gray-500);
1371
1374
  }
1372
1375
  .canopy-search-filters__facet {
1373
- border: 1px solid var(--color-gray-200, #e0e1e6);
1376
+ border: 1px solid var(--color-gray-200);
1374
1377
  border-radius: 0.75rem;
1375
- background: var(--color-gray-50, #fcfcfd);
1378
+ background: var(--color-gray-50);
1376
1379
  overflow: hidden;
1377
1380
  }
1378
1381
  .canopy-search-filters__facet[open] {
1379
- background: var(--color-gray-100, #ffffff);
1382
+ background: var(--color-gray-100);
1380
1383
  }
1381
1384
  .canopy-search-filters__facet-summary {
1382
1385
  display: flex;
@@ -1384,9 +1387,9 @@
1384
1387
  justify-content: space-between;
1385
1388
  gap: 0.75rem;
1386
1389
  padding: 0.75rem 1rem;
1387
- font-size: var(--font-size-sm, 0.875rem);
1390
+ font-size: var(--font-size-sm);
1388
1391
  font-weight: 600;
1389
- color: var(--color-gray-900, #121418);
1392
+ color: var(--color-gray-900);
1390
1393
  cursor: pointer;
1391
1394
  list-style: none;
1392
1395
  }
@@ -1394,13 +1397,13 @@
1394
1397
  display: none;
1395
1398
  }
1396
1399
  .canopy-search-filters__facet-count {
1397
- font-size: var(--font-size-xs, 0.75rem);
1400
+ font-size: var(--font-size-xs);
1398
1401
  font-weight: 400;
1399
- color: var(--color-gray-500, #8b8d98);
1402
+ color: var(--color-gray-500);
1400
1403
  }
1401
1404
  .canopy-search-filters__facet-content {
1402
- border-top: 1px solid var(--color-gray-200, #e0e1e6);
1403
- background: var(--color-gray-100, #ffffff);
1405
+ border-top: 1px solid var(--color-gray-200);
1406
+ background: var(--color-gray-100);
1404
1407
  padding: 1rem;
1405
1408
  max-height: 15rem;
1406
1409
  overflow-y: auto;
@@ -1415,29 +1418,29 @@
1415
1418
  flex: 1;
1416
1419
  min-width: 0;
1417
1420
  border-radius: 0.5rem;
1418
- border: 1px solid var(--color-gray-300, #cdced6);
1421
+ border: 1px solid var(--color-gray-300);
1419
1422
  padding: 0.375rem 0.75rem;
1420
- font-size: var(--font-size-sm, 0.875rem);
1421
- color: var(--color-gray-700, #60646c);
1422
- transition: border-color var(--duration-fast, 150ms) var(--easing-standard, ease), box-shadow var(--duration-fast, 150ms) var(--easing-standard, ease);
1423
+ font-size: var(--font-size-sm);
1424
+ color: var(--color-gray-700);
1425
+ transition: border-color var(--duration-fast) var(--easing-standard), box-shadow var(--duration-fast) var(--easing-standard);
1423
1426
  }
1424
1427
  .canopy-search-filters__quick-input:focus {
1425
1428
  outline: none;
1426
- border-color: var(--color-brand-500, #3e63dd);
1427
- box-shadow: 0 0 0 1px var(--color-brand-500, #3e63dd);
1429
+ border-color: var(--color-brand-500);
1430
+ box-shadow: 0 0 0 1px var(--color-brand-500);
1428
1431
  }
1429
1432
  .canopy-search-filters__quick-clear {
1430
1433
  border-radius: 0.375rem;
1431
- border: 1px solid var(--color-gray-200, #e0e1e6);
1434
+ border: 1px solid var(--color-gray-200);
1432
1435
  padding: 0.25rem 0.5rem;
1433
- font-size: var(--font-size-xs, 0.75rem);
1434
- color: var(--color-gray-600, #80838d);
1435
- background: var(--color-gray-100, #ffffff);
1436
- transition: background-color var(--duration-fast, 150ms) var(--easing-standard, ease), color var(--duration-fast, 150ms) var(--easing-standard, ease);
1436
+ font-size: var(--font-size-xs);
1437
+ color: var(--color-gray-600);
1438
+ background: var(--color-gray-100);
1439
+ transition: background-color var(--duration-fast) var(--easing-standard), color var(--duration-fast) var(--easing-standard);
1437
1440
  }
1438
1441
  .canopy-search-filters__quick-clear:hover {
1439
- background: var(--color-gray-100, #f0f0f3);
1440
- color: var(--color-gray-900, #121418);
1442
+ background: var(--color-gray-100);
1443
+ color: var(--color-gray-900);
1441
1444
  }
1442
1445
  .canopy-search-filters__facet-list {
1443
1446
  list-style: none;
@@ -1446,8 +1449,8 @@
1446
1449
  display: flex;
1447
1450
  flex-direction: column;
1448
1451
  gap: 0.5rem;
1449
- font-size: var(--font-size-sm, 0.875rem);
1450
- color: var(--color-gray-700, #60646c);
1452
+ font-size: var(--font-size-sm);
1453
+ color: var(--color-gray-700);
1451
1454
  }
1452
1455
  .canopy-search-filters__facet-item {
1453
1456
  display: flex;
@@ -1459,9 +1462,9 @@
1459
1462
  width: 1rem;
1460
1463
  height: 1rem;
1461
1464
  border-radius: 0.375rem;
1462
- border: 1px solid var(--color-gray-300, #cdced6);
1463
- color: var(--color-brand-500, #3e63dd);
1464
- accent-color: var(--color-brand-500, #3e63dd);
1465
+ border: 1px solid var(--color-gray-300);
1466
+ color: var(--color-brand-500);
1467
+ accent-color: var(--color-brand-500);
1465
1468
  }
1466
1469
  .canopy-search-filters__facet-label {
1467
1470
  display: flex;
@@ -1470,8 +1473,8 @@
1470
1473
  gap: 0.25rem;
1471
1474
  }
1472
1475
  .canopy-search-filters__facet-empty {
1473
- font-size: var(--font-size-sm, 0.875rem);
1474
- color: var(--color-gray-500, #8b8d98);
1476
+ font-size: var(--font-size-sm);
1477
+ color: var(--color-gray-500);
1475
1478
  }
1476
1479
  .canopy-search-filters__footer {
1477
1480
  display: flex;
@@ -1479,7 +1482,7 @@
1479
1482
  align-items: center;
1480
1483
  justify-content: space-between;
1481
1484
  gap: 0.75rem;
1482
- border-top: 1px solid var(--color-gray-200, #e0e1e6);
1485
+ border-top: 1px solid var(--color-gray-200);
1483
1486
  padding-top: 1.25rem;
1484
1487
  }
1485
1488
  .canopy-search-filters__footer-actions {
@@ -1490,30 +1493,30 @@
1490
1493
  .canopy-search-filters__button {
1491
1494
  border-radius: 9999px;
1492
1495
  padding: 0.5rem 1.25rem;
1493
- font-size: var(--font-size-sm, 0.875rem);
1496
+ font-size: var(--font-size-sm);
1494
1497
  font-weight: 600;
1495
1498
  cursor: pointer;
1496
- transition: background-color var(--duration-fast, 150ms) var(--easing-standard, ease), color var(--duration-fast, 150ms) var(--easing-standard, ease);
1499
+ transition: background-color var(--duration-fast) var(--easing-standard), color var(--duration-fast) var(--easing-standard);
1497
1500
  }
1498
1501
  .canopy-search-filters__button--secondary {
1499
- border: 1px solid var(--color-gray-300, #cdced6);
1502
+ border: 1px solid var(--color-gray-300);
1500
1503
  background: transparent;
1501
- color: var(--color-gray-700, #60646c);
1504
+ color: var(--color-gray-700);
1502
1505
  }
1503
1506
  .canopy-search-filters__button--secondary:hover,
1504
1507
  .canopy-search-filters__button--secondary:focus-visible {
1505
- background: var(--color-gray-100, #f0f0f3);
1506
- color: var(--color-gray-900, #121418);
1508
+ background: var(--color-gray-100);
1509
+ color: var(--color-gray-900);
1507
1510
  outline: none;
1508
1511
  }
1509
1512
  .canopy-search-filters__button--primary {
1510
1513
  border: none;
1511
- background: var(--color-brand-600, #3e63dd);
1512
- color: var(--color-gray-50, #f9fafb);
1514
+ background: var(--color-brand-600);
1515
+ color: var(--color-gray-50);
1513
1516
  }
1514
1517
  .canopy-search-filters__button--primary:hover,
1515
1518
  .canopy-search-filters__button--primary:focus-visible {
1516
- background: var(--color-brand-700, #3358d4);
1519
+ background: var(--color-brand-700);
1517
1520
  outline: none;
1518
1521
  }
1519
1522
  @media (max-width: 48rem) {
@@ -1610,7 +1613,7 @@
1610
1613
  gap: 0.25rem;
1611
1614
  padding: 0.25rem 0.75rem;
1612
1615
  border-radius: 9999px;
1613
- border: 1px solid var(--color-gray-200, #e4e4e7);
1616
+ border: 1px solid var(--color-gray-200);
1614
1617
  background-color: rgba(255, 255, 255, 0.9);
1615
1618
  color: inherit;
1616
1619
  font-size: 0.75rem;
@@ -1622,9 +1625,9 @@
1622
1625
  .canopy-content-navigation__toggle:hover,
1623
1626
  .canopy-content-navigation__toggle:focus-visible {
1624
1627
  background-color: rgb(255, 255, 255);
1625
- border-color: var(--color-gray-300, #d4d4d8);
1628
+ border-color: var(--color-gray-300);
1626
1629
  outline: none;
1627
- box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-brand-200, #c7d2fe) 60%, transparent);
1630
+ box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-brand-200) 60%, transparent);
1628
1631
  }
1629
1632
 
1630
1633
  .canopy-layout__content-nav.is-collapsed .canopy-content-navigation {
@@ -6,7 +6,6 @@
6
6
  * Tailwind theme.extend values to those variables for easy use in utilities.
7
7
  */
8
8
  const plugin = require("tailwindcss/plugin");
9
- const path = require("path");
10
9
  const {loadCanopyTheme} = require("./theme");
11
10
 
12
11
  function compileVarsCss() {
@@ -17,91 +16,9 @@ function compileVarsCss() {
17
16
  }
18
17
  return theme.css;
19
18
  }
20
- try {
21
- const sass = require("sass");
22
- const entry = path.join(__dirname, "styles", "variables.emit.scss");
23
- const out = sass.compile(entry, {style: "expanded"});
24
- return out && out.css ? out.css : "";
25
- } catch (_) {
26
- return "";
27
- }
28
19
  }
29
20
 
30
21
  module.exports = {
31
- theme: {
32
- container: {center: true, padding: "1rem"},
33
- extend: {
34
- colors: {
35
- brand: {
36
- DEFAULT: "var(--color-brand-default)",
37
- 50: "var(--color-brand-50)",
38
- 100: "var(--color-brand-100)",
39
- 200: "var(--color-brand-200)",
40
- 300: "var(--color-brand-300)",
41
- 400: "var(--color-brand-400)",
42
- 500: "var(--color-brand-500)",
43
- 600: "var(--color-brand-600)",
44
- 700: "var(--color-brand-700)",
45
- 800: "var(--color-brand-800)",
46
- 900: "var(--color-brand-900)",
47
- },
48
- gray: {
49
- DEFAULT: "var(--color-gray-default)",
50
- 50: "var(--color-gray-50)",
51
- 100: "var(--color-gray-100)",
52
- 200: "var(--color-gray-200)",
53
- 300: "var(--color-gray-300)",
54
- 400: "var(--color-gray-400)",
55
- 500: "var(--color-gray-500)",
56
- 600: "var(--color-gray-600)",
57
- 700: "var(--color-gray-700)",
58
- 800: "var(--color-gray-800)",
59
- 900: "var(--color-gray-900)",
60
- },
61
- muted: "var(--color-gray-muted)",
62
- white: "#ffffff",
63
- black: "#000000",
64
- },
65
- fontFamily: {
66
- mono: ["var(--font-mono)"],
67
- sans: ["var(--font-sans)"],
68
- serif: ["var(--font-serif)"],
69
- },
70
- maxWidth: {
71
- content: "var(--max-w-content)",
72
- wide: "var(--max-w-wide)",
73
- },
74
- fontSize: {
75
- xs: ["var(--font-size-xs)", {lineHeight: "var(--line-height-xs)"}],
76
- sm: ["var(--font-size-sm)", {lineHeight: "var(--line-height-sm)"}],
77
- base: [
78
- "var(--font-size-base)",
79
- {lineHeight: "var(--line-height-base)"},
80
- ],
81
- lg: ["var(--font-size-lg)", {lineHeight: "var(--line-height-lg)"}],
82
- xl: ["var(--font-size-xl)", {lineHeight: "var(--line-height-xl)"}],
83
- "2xl": ["var(--font-size-2xl)", {lineHeight: "var(--line-height-2xl)"}],
84
- "3xl": ["var(--font-size-3xl)", {lineHeight: "var(--line-height-3xl)"}],
85
- },
86
- borderRadius: {
87
- sm: "var(--radius-sm)",
88
- DEFAULT: "var(--radius-default)",
89
- md: "var(--radius-md)",
90
- },
91
- boxShadow: {
92
- sm: "var(--shadow-sm)",
93
- DEFAULT: "var(--shadow)",
94
- md: "var(--shadow-md)",
95
- lg: "var(--shadow-lg)",
96
- },
97
- transitionDuration: {
98
- canopyFast: "var(--duration-fast)",
99
- },
100
- transitionTimingFunction: {
101
- canopy: "var(--easing-standard)",
102
- },
103
- },
104
- },
105
22
  plugins: [
106
23
  // Inject CSS variables (tokens) derived from Sass variables
107
24
  plugin(function ({addBase, postcss}) {