@certrev/cert-block 1.2.1 → 2.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.
- package/CHANGELOG.md +230 -0
- package/README.md +135 -8
- package/dist/builder/card-contract.d.ts +143 -0
- package/dist/builder/card-contract.d.ts.map +1 -0
- package/dist/builder/card-contract.js +262 -0
- package/dist/builder/card-contract.js.map +1 -0
- package/dist/builder/card-report.d.ts +37 -0
- package/dist/builder/card-report.d.ts.map +1 -0
- package/dist/builder/card-report.js +43 -0
- package/dist/builder/card-report.js.map +1 -0
- package/dist/builder/cert-review-card.d.ts +7 -5
- package/dist/builder/cert-review-card.d.ts.map +1 -1
- package/dist/builder/cert-review-card.js +227 -18
- package/dist/builder/cert-review-card.js.map +1 -1
- package/dist/builder/contract-card.d.ts +53 -0
- package/dist/builder/contract-card.d.ts.map +1 -0
- package/dist/builder/contract-card.js +141 -0
- package/dist/builder/contract-card.js.map +1 -0
- package/dist/builder/delivered-face.d.ts +83 -0
- package/dist/builder/delivered-face.d.ts.map +1 -0
- package/dist/builder/delivered-face.js +135 -0
- package/dist/builder/delivered-face.js.map +1 -0
- package/dist/builder/delivery-runtime.d.ts +15 -1
- package/dist/builder/delivery-runtime.d.ts.map +1 -1
- package/dist/builder/delivery-runtime.js +26 -1
- package/dist/builder/delivery-runtime.js.map +1 -1
- package/dist/builder/index.d.ts +7 -1
- package/dist/builder/index.d.ts.map +1 -1
- package/dist/builder/index.js +8 -1
- package/dist/builder/index.js.map +1 -1
- package/dist/builder/ssr-seed.d.ts +31 -1
- package/dist/builder/ssr-seed.d.ts.map +1 -1
- package/dist/builder/ssr-seed.js +38 -4
- package/dist/builder/ssr-seed.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/reader/reader-css.generated.d.ts +1 -1
- package/dist/reader/reader-css.generated.d.ts.map +1 -1
- package/dist/reader/reader-css.generated.js +1 -1
- package/dist/reader/reader-css.generated.js.map +1 -1
- package/dist/reader/render.d.ts.map +1 -1
- package/dist/reader/render.js +71 -34
- package/dist/reader/render.js.map +1 -1
- package/dist/reader/tokens.d.ts +2 -0
- package/dist/reader/tokens.d.ts.map +1 -1
- package/dist/reader/tokens.js +28 -6
- package/dist/reader/tokens.js.map +1 -1
- package/dist/verify/get-verified-delivery.d.ts +56 -0
- package/dist/verify/get-verified-delivery.d.ts.map +1 -1
- package/dist/verify/get-verified-delivery.js +49 -4
- package/dist/verify/get-verified-delivery.js.map +1 -1
- package/dist/verify/key-set.d.ts +67 -0
- package/dist/verify/key-set.d.ts.map +1 -0
- package/dist/verify/key-set.js +190 -0
- package/dist/verify/key-set.js.map +1 -0
- package/package.json +115 -112
- package/src/builder/card-contract.ts +314 -0
- package/src/builder/card-report.ts +61 -0
- package/src/builder/cert-review-card.tsx +332 -26
- package/src/builder/contract-card.tsx +159 -0
- package/src/builder/delivered-face.ts +156 -0
- package/src/builder/delivery-runtime.ts +32 -1
- package/src/builder/index.tsx +16 -1
- package/src/builder/ssr-seed.ts +56 -4
- package/src/index.ts +12 -0
- package/src/reader/reader-css.generated.ts +1 -1
- package/src/reader/reader.css +297 -2
- package/src/reader/render.ts +87 -38
- package/src/reader/tokens.ts +29 -6
- package/src/verify/get-verified-delivery.ts +85 -4
- package/src/verify/key-set.ts +225 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ssr-seed.d.ts","sourceRoot":"","sources":["../../src/builder/ssr-seed.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ssr-seed.d.ts","sourceRoot":"","sources":["../../src/builder/ssr-seed.ts"],"names":[],"mappings":"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"}
|
package/dist/builder/ssr-seed.js
CHANGED
|
@@ -48,11 +48,29 @@
|
|
|
48
48
|
* server withheld. A record holds no payload, so `parseSeed` never takes one for a seed. A `'none'` record sits on a
|
|
49
49
|
* `hidden` element with nothing in it.
|
|
50
50
|
*
|
|
51
|
+
* A DELIVERED FACE RIDES THE SEED (1.3.0), and only when the server painted it: the seed then ends with
|
|
52
|
+
* `face: { html, css }`, the server-rendered markup and stylesheet the Delivery API served beside the envelope, whose
|
|
53
|
+
* hashes the signed `payload.content.faceDigest` binds. A browser repaints that face from the seed only after hashing
|
|
54
|
+
* it against the seed payload's digest itself (`cert-review-card.tsx`); a seed with no `face`, a malformed one, or one
|
|
55
|
+
* whose hashes fail paints what 1.2.1 paints for it. A seed with no face is byte for byte the 1.2.1 seed. The face is
|
|
56
|
+
* on the page twice (painted, and in the seed), which is its page-weight cost.
|
|
57
|
+
*
|
|
58
|
+
* A CONTRACT-1 CARD RIDES THE SEED (2.0.0), and only when the server printed it: the seed then ends with `card`, the
|
|
59
|
+
* card document exactly as the Delivery API served it, whose RFC 8785 digest the signed `payload.content.faceDigest`
|
|
60
|
+
* binds (`contract: 1`, `doc`). The browser prints that card from the seed only after it has checked it against the
|
|
61
|
+
* seed payload's binding itself (`cert-review-card.tsx`), so a client re-render (React's recovery from a hydration
|
|
62
|
+
* error, a streamed record, a later mount of the same placement) prints the server's card with no read. A seed with no
|
|
63
|
+
* card is the 1.3.1 seed byte for byte. The card is on the page twice (printed, and in the seed), as 1.3.0's face is.
|
|
64
|
+
*
|
|
65
|
+
* A FALLBACK RECORD MAY NAME ITS REASON (2.0.0): where a contract-1 placement prints nothing, its `'none'` record ends
|
|
66
|
+
* with `reason` (`card_missing`, `card_verify_failed`, `card_unsupported_contract`, `card_pin_mismatch`), the same
|
|
67
|
+
* reason the card reports. Every other record is the 1.3.1 record byte for byte, and 1.3.1 ignores the key.
|
|
68
|
+
*
|
|
51
69
|
* React-free and browser-only in effect: with no `document` (a server) `pageSeedFor` finds nothing, so a server never
|
|
52
70
|
* reads or keeps a seed and a multi-tenant render process holds nothing per page.
|
|
53
71
|
*/
|
|
54
72
|
import { HIDEABLE_FIELDS } from '../components/render-def.js';
|
|
55
|
-
import { parseDesignPin, parseRenderDef } from '../verify/get-verified-delivery.js';
|
|
73
|
+
import { parseDeliveredFace, parseDesignPin, parseRenderDef, } from '../verify/get-verified-delivery.js';
|
|
56
74
|
export const SEED_ATTRIBUTE = 'data-certrev-envelope';
|
|
57
75
|
const isRecord = (v) => typeof v === 'object' && v !== null && !Array.isArray(v);
|
|
58
76
|
/** A value worth hiding: anything but nothing (absent, null, the empty string). */
|
|
@@ -121,6 +139,10 @@ export function serializeSeed(seed) {
|
|
|
121
139
|
payload: seed.payload,
|
|
122
140
|
...(seed.signature ? { signature: seed.signature } : {}),
|
|
123
141
|
renderDef: seed.renderDef,
|
|
142
|
+
// 1.3.0: last, and only with a delivered face, so a seed without one is the 1.2.1 bytes.
|
|
143
|
+
...(seed.face ? { face: { html: seed.face.html, css: seed.face.css } } : {}),
|
|
144
|
+
// 2.0.0: last, and only with a printed contract-1 card, so a seed without one is the 1.3.1 bytes.
|
|
145
|
+
...(seed.card ? { card: seed.card } : {}),
|
|
124
146
|
});
|
|
125
147
|
}
|
|
126
148
|
export function serializeFallback(fallback) {
|
|
@@ -130,6 +152,7 @@ export function serializeFallback(fallback) {
|
|
|
130
152
|
externalId: fallback.externalId,
|
|
131
153
|
...serializedPin(fallback.design),
|
|
132
154
|
face: fallback.face,
|
|
155
|
+
...(fallback.reason === undefined ? {} : { reason: fallback.reason }),
|
|
133
156
|
});
|
|
134
157
|
}
|
|
135
158
|
/** A pin a record names, judged by the same grammar the card's own pin is: undefined when absent, null when bad. */
|
|
@@ -152,7 +175,7 @@ export function parseSeed(raw) {
|
|
|
152
175
|
}
|
|
153
176
|
if (!isRecord(value) || value.v !== 1)
|
|
154
177
|
return null;
|
|
155
|
-
const { baseUrl, externalId, design, payload, signature, renderDef } = value;
|
|
178
|
+
const { baseUrl, externalId, design, payload, signature, renderDef, face, card } = value;
|
|
156
179
|
if (typeof baseUrl !== 'string' || typeof externalId !== 'string')
|
|
157
180
|
return null;
|
|
158
181
|
if (!isRecord(payload) || !isRecord(payload.subject) || !isRecord(payload.lifecycle) || !isRecord(payload.content)) {
|
|
@@ -162,6 +185,8 @@ export function parseSeed(raw) {
|
|
|
162
185
|
const pin = parsedPin(design);
|
|
163
186
|
if (pin === null)
|
|
164
187
|
return null;
|
|
188
|
+
// 1.3.0: a face that is not two strings is no face; the seed is still a seed (and paints as 1.2.1 paints it).
|
|
189
|
+
const delivered = parseDeliveredFace(face);
|
|
165
190
|
return {
|
|
166
191
|
baseUrl,
|
|
167
192
|
externalId,
|
|
@@ -169,6 +194,9 @@ export function parseSeed(raw) {
|
|
|
169
194
|
payload: payload,
|
|
170
195
|
...(isRecord(signature) ? { signature: signature } : {}),
|
|
171
196
|
renderDef: parseRenderDef(renderDef),
|
|
197
|
+
...(delivered ? { face: delivered } : {}),
|
|
198
|
+
// 2.0.0: a card that is not a JSON object is no card (the seed paints as its binding says without one).
|
|
199
|
+
...(isRecord(card) ? { card } : {}),
|
|
172
200
|
};
|
|
173
201
|
}
|
|
174
202
|
/** A fallback record in one attribute value, or null for anything that is not one (a seed included; never throws). */
|
|
@@ -182,7 +210,7 @@ export function parseFallback(raw) {
|
|
|
182
210
|
}
|
|
183
211
|
if (!isRecord(value) || value.v !== 1 || 'payload' in value)
|
|
184
212
|
return null;
|
|
185
|
-
const { baseUrl, externalId, design, face } = value;
|
|
213
|
+
const { baseUrl, externalId, design, face, reason } = value;
|
|
186
214
|
if (typeof baseUrl !== 'string' || typeof externalId !== 'string')
|
|
187
215
|
return null;
|
|
188
216
|
if (face !== 'options' && face !== 'none')
|
|
@@ -190,7 +218,13 @@ export function parseFallback(raw) {
|
|
|
190
218
|
const pin = parsedPin(design);
|
|
191
219
|
if (pin === null)
|
|
192
220
|
return null;
|
|
193
|
-
return {
|
|
221
|
+
return {
|
|
222
|
+
baseUrl,
|
|
223
|
+
externalId,
|
|
224
|
+
...(pin ? { design: pin } : {}),
|
|
225
|
+
face,
|
|
226
|
+
...(typeof reason === 'string' ? { reason } : {}),
|
|
227
|
+
};
|
|
194
228
|
}
|
|
195
229
|
/** One placement's key: the origin, the entry and the pin (the read's own key, so a pin never shares a seed). */
|
|
196
230
|
function seedKey(baseUrl, externalId, design) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ssr-seed.js","sourceRoot":"","sources":["../../src/builder/ssr-seed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAE7D,OAAO,EAAkB,cAAc,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAGnG,MAAM,CAAC,MAAM,cAAc,GAAG,uBAAuB,CAAA;AA2CrD,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAgC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAEvH,mFAAmF;AACnF,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAW,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAA;AAEnF;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,OAAoB,EAAE,MAAwC;IAC3F,IAAI,OAAO,GAA4B,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAA;IAC7D,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;QAC9B,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAA;YACjE,QAAQ,GAAG,IAAI,CAAA;QAChB,CAAC;IACF,CAAC;IACD,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAiC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;AACvF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CACnC,OAAoB,EACpB,SAAqC;IAErC,MAAM,MAAM,GAAG,CAAC,SAAS,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAE,eAAqC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5G,MAAM,OAAO,GAAa,OAAO,CAAC,OAA0D,EAAE,OAAO,CAAA;IACrG,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,eAAe,KAAK,KAAK,CAAA;IACvE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;IACzE,IAAI,IAAI,GAAG,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IAChH,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5D,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAA4B,EAAE,CAAA;IACvF,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,KAAK,OAAO,EAAE,CAAA;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,IAOvB;IACA,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAChF,OAAO;QACN,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO;QACP,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,SAAS,EAAE,IAAI,CAAC,SAAS;KACzB,CAAA;AACF,CAAC;AAED,MAAM,aAAa,GAAG,CAAC,MAA6B,EAAE,EAAE,CACvD,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AAEtH,MAAM,UAAU,aAAa,CAAC,IAAkB;IAC/C,OAAO,IAAI,CAAC,SAAS,CAAC;QACrB,CAAC,EAAE,CAAC;QACJ,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,SAAS,EAAE,IAAI,CAAC,SAAS;KACzB,CAAC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAA0B;IAC3D,OAAO,IAAI,CAAC,SAAS,CAAC;QACrB,CAAC,EAAE,CAAC;QACJ,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;QACjC,IAAI,EAAE,QAAQ,CAAC,IAAI;KACnB,CAAC,CAAA;AACH,CAAC;AAED,oHAAoH;AACpH,SAAS,SAAS,CAAC,MAAe;IACjC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IAC1C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC9B,CAAC,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;QAClH,CAAC,CAAC,SAAS,CAAA;IACZ,OAAO,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;AACpE,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,SAAS,CAAC,GAAW;IACpC,IAAI,KAAc,CAAA;IAClB,IAAI,CAAC;QACJ,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAA;IACZ,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAClD,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IAC5E,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAC9E,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpH,OAAO,IAAI,CAAA;IACZ,CAAC;IACD,6GAA6G;IAC7G,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IAC7B,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC7B,OAAO;QACN,OAAO;QACP,UAAU;QACV,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,OAAiC;QAC1C,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAqC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC;KACpC,CAAA;AACF,CAAC;AAED,sHAAsH;AACtH,MAAM,UAAU,aAAa,CAAC,GAAW;IACxC,IAAI,KAAc,CAAA;IAClB,IAAI,CAAC;QACJ,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAA;IACZ,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,SAAS,IAAI,KAAK;QAAE,OAAO,IAAI,CAAA;IACxE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IACnD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAC9E,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,IAAI,CAAA;IACtD,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IAC7B,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC7B,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAA;AACtE,CAAC;AAED,iHAAiH;AACjH,SAAS,OAAO,CAAC,OAAe,EAAE,UAAkB,EAAE,MAA6B;IAClF,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,UAAU,WAAW,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,UAAU,EAAE,CAAA;AACvH,CAAC;AAED;;;;GAIG;AACH,MAAM,SAAS,GAAG,IAAI,GAAG,EAAsB,CAAA;AAE/C,MAAM,SAAS,GAAG,CAAC,MAAkB,EAAU,EAAE;IAChD,MAAM,CAAC,GAAG,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAA;IAC1D,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;AAClD,CAAC,CAAA;AAED,wGAAwG;AACxG,SAAS,QAAQ,CAAC,EAAW;IAC5B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;IAC3B,IAAI,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;IAC9B,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;IACnC,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AAC3C,CAAC;AAED,yGAAyG;AACzG,SAAS,WAAW,CAAC,IAAwB;IAC5C,MAAM,KAAK,GAAiB,EAAE,CAAA;IAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,cAAc,GAAG,CAAC,CAAC,CAAA;IACzE,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAK,IAAgB,CAAC,YAAY,CAAC,cAAc,CAAC;QAAE,QAAQ,CAAC,OAAO,CAAC,IAAe,CAAC,CAAA;IAC5G,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC3B,IAAI,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAED,mFAAmF;AACnF,SAAS,YAAY;IACpB,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAA;AAC7B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAC5B,OAAe,EACf,UAAkB,EAClB,MAAkB,EAClB,UAAuC,EAAE;IAEzC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;IAChD,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAO,SAAS,CAAA;IACrD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC3D,IAAI,KAAK;QAAE,OAAO,KAAK,CAAA;IACvB,IAAI,UAAU,GAAG,KAAK,CAAA;IACtB,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;QAC1B,IAAI,CAAC,KAAK,GAAG;YAAE,UAAU,GAAG,IAAI,CAAA;QAChC,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IAC/D,CAAC;IACD,qHAAqH;IACrH,OAAO,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AACpE,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,WAAW,CAC1B,OAAe,EACf,UAAkB,EAClB,MAAkB,EAClB,UAAuC,EAAE;IAEzC,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;IAClE,OAAO,MAAM,IAAI,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;AACvD,CAAC;AAED,uHAAuH;AACvH,MAAM,eAAe,GAAG,YAAY,CAAA;AAEpC;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB;IAClC,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,CAAC,QAAQ,CAAC,eAAe;QAAE,OAAO,KAAK,CAAA;IAC9E,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,eAAe,EAAE,GAAG,CAAC,6BAA6B,CAAC,CAAA;IACrG,KAAK,IAAI,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;QACnE,IAAI,eAAe,CAAC,IAAI,CAAE,IAAgB,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;IAC9D,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;GAGG;AACH,MAAM,gBAAgB,GACrB,OAAO,QAAQ,KAAK,WAAW;IAC/B,QAAQ,CAAC,UAAU,KAAK,SAAS;IACjC,QAAQ,CAAC,eAAe;IACxB,OAAO,OAAO,KAAK,UAAU;IAC5B,CAAC,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IACvC,CAAC,CAAC,IAAI,CAAA;AAWR,IAAI,WAAW,GAAuB,IAAI,CAAA;AAE1C,uGAAuG;AACvG,SAAS,cAAc,CAAC,IAAU;IACjC,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACrC,IAAI,IAAI,GAAG,KAAK,CAAA;IAChB,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,IAAe,CAAC,EAAE,CAAC;QACnD,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;QAC7B,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAQ;QAChC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAC1B,IAAI,GAAG,IAAI,CAAA;IACZ,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB;IACnC,IAAI,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS;QAAE,OAAM;IAC/F,MAAM,KAAK,GAAc,EAAE,CAAA;IAC3B,KAAK,MAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1E,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;IACvC,MAAM,MAAM,GAAG,GAAG,EAAE;QACnB,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,QAAQ,EAAE,CAAA;IACzD,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,CAAC,SAAoC,EAAE,EAAE;QAC1D,IAAI,IAAI,GAAG,KAAK,CAAA;QAChB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAClC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,IAAI,cAAc,CAAC,IAAI,CAAC;oBAAE,IAAI,GAAG,IAAI,CAAA;QAC1F,CAAC;QACD,OAAO,IAAI,CAAA;IACZ,CAAC,CAAA;IACD,MAAM,QAAQ,GACb,OAAO,gBAAgB,KAAK,UAAU;QACrC,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,SAAS,EAAE,EAAE;YACnC,IAAI,SAAS,CAAC,SAAS,CAAC;gBAAE,MAAM,EAAE,CAAA;QACnC,CAAC,CAAC;QACH,CAAC,CAAC,IAAI,CAAA;IACR,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAC/D,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IACrF,MAAM,KAAK,GAAgB;QAC1B,QAAQ;QACR,KAAK;QACL,SAAS;QACT,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,GAAG,EAAE;YACd,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;YAChE,IAAI,QAAQ,EAAE,CAAC;gBACd,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;gBACjC,QAAQ,CAAC,UAAU,EAAE,CAAA;YACtB,CAAC;YACD,IAAI,QAAQ,CAAC,eAAe;gBAAE,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;YACtE,KAAK,MAAM,IAAI,IAAI,KAAK;gBAAE,cAAc,CAAC,IAAI,CAAC,CAAA;YAC9C,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;YAChB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAA;YACnB,MAAM,EAAE,CAAA;QACT,CAAC;KACD,CAAA;IACD,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC7D,WAAW,GAAG,KAAK,CAAA;AACpB,CAAC;AAED,gIAAgI;AAChI,MAAM,UAAU,wBAAwB,CAAC,QAAoB;IAC5D,oBAAoB,EAAE,CAAA;IACtB,MAAM,KAAK,GAAG,WAAW,CAAA;IACzB,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;IAC3C,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC7B,OAAO,GAAG,EAAE;QACX,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACjC,CAAC,CAAA;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAChC,OAAe,EACf,UAAkB,EAClB,MAAkB;IAElB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;IACzD,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IACzB,OAAO,WAAW,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;AAC/D,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,uBAAuB;IACtC,SAAS,CAAC,KAAK,EAAE,CAAA;IACjB,IAAI,WAAW,EAAE,CAAC;QACjB,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAA;QACtE,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAA;QAClC,WAAW,GAAG,IAAI,CAAA;IACnB,CAAC;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"ssr-seed.js","sourceRoot":"","sources":["../../src/builder/ssr-seed.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -31,11 +31,12 @@ export { type PreviewBlockOptions, previewExpiry, renderPreviewBlock, } from './
|
|
|
31
31
|
export { CERTREV_LINK_REL } from './components/rel.js';
|
|
32
32
|
export { type CertBlockFace, type CertBlockFacts, type CertBlockLayout, type CertBlockMode, type RenderCertBlockInput, renderCertBlock, } from './components/render-cert-block.js';
|
|
33
33
|
export { accentFg, type BadgeVisibilityFieldId, CERT_SCOPE_LINE, CERT_STRINGS_VERSION, type CertRenderDef, type CertThemeTokens, COMPENSATED_EXPERT_CUE, CREDENTIAL_VERIFIED_ATTRIBUTION, DEFAULT_BLOCK_THEME, FONT_SLOTS, FONT_STACKS, type FontSlot, HIDEABLE_FIELDS, isCornerRadius, isFieldHidden, isFontSlot, isOpaqueHexColor, isRenderBlockFontSlot, RENDER_BLOCK_FONT_SLOTS, RENDER_BLOCK_FONT_STACKS, type RenderBlockFontSlot, type ResolvedBlockTheme, type ResolvedRenderTheme, resolveBlockTheme, resolveRenderTheme, themeCssVarDeclarations, } from './components/render-def.js';
|
|
34
|
-
export { CANONICALIZATION, type CertContent, type CertCredential, type CertDeliveryEnvelope, type CertDisplayConfig, type CertLifecycle, type CertPayload, type CertSignature, type CertSubject, type CertSuppressReason, type CertVerdict, CONTRACT_VERSION, type ContractVersion, type Ed25519PublicKeyInput, type RenderContext, type ResolvePublicKeyByKid, renderVerdict, SIGNATURE_ALG, type SignatureAlg, type VerdictKernel, verifyEnvelope, verifySignatureOnly, } from './contract/kernel.js';
|
|
34
|
+
export { CANONICALIZATION, type CertContent, type CertCredential, type CertDeliveryEnvelope, type CertDisplayConfig, type CertFaceDigest, type CertLifecycle, type CertPayload, type CertSignature, type CertSubject, type CertSuppressReason, type CertVerdict, CONTRACT_VERSION, type ContractVersion, type Ed25519PublicKeyInput, type RenderContext, type ResolvePublicKeyByKid, renderVerdict, SIGNATURE_ALG, type SignatureAlg, type VerdictKernel, verifyEnvelope, verifySignatureOnly, } from './contract/kernel.js';
|
|
35
35
|
export { type JsonLdValue, type ProjectJsonLdOptions, projectCertJsonLd, projectCertJsonLdString, serializeJsonLdForScript, } from './jsonld/project.js';
|
|
36
36
|
export { TtlCache, type TtlCacheOptions } from './verify/cache.js';
|
|
37
|
-
export { type CachedDelivery, type DesignPin, deliveryCacheKey, deliveryUrl, designPinFromUrl, type GetVerifiedDeliveryOptions, getVerifiedDelivery, invalidateDelivery, parseDesignPin, parseRenderDef, peekVerifiedDelivery, settleDelivery, sharedDeliveryCache, type VerifiedDelivery, } from './verify/get-verified-delivery.js';
|
|
37
|
+
export { type CachedDelivery, type DeliveredFace, type DesignPin, deliveryCacheKey, deliveryUrl, designPinFromUrl, type GetVerifiedDeliveryOptions, getVerifiedDelivery, invalidateDelivery, parseDeliveredFace, parseDesignPin, parseRenderDef, peekVerifiedDelivery, settleDelivery, sharedDeliveryCache, type VerifiedDelivery, } from './verify/get-verified-delivery.js';
|
|
38
38
|
export { type EnvelopeSource, type GetVerifiedEnvelopeOptions, getVerifiedEnvelope, invalidateVerdict, sharedVerdictCache, } from './verify/get-verified-envelope.js';
|
|
39
|
+
export { type AcceptedKeySet, KEY_SET_PATH, type KeySetResolverOptions, keySetResolver, type PublishedKeySet, verifyKeySet, } from './verify/key-set.js';
|
|
39
40
|
export { type FetchingKidResolverOptions, fetchingKidResolver, type StaticKeySet, staticKidResolver, } from './verify/resolve-kid.js';
|
|
40
41
|
export { type RenderBadgeOptions, renderBadgeHtml } from './webcomponent/render-badge-html.js';
|
|
41
42
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -45,9 +45,11 @@ export { CANONICALIZATION, CONTRACT_VERSION, renderVerdict, SIGNATURE_ALG, verif
|
|
|
45
45
|
// ── JSON-LD projector ───────────────────────────────────────────────────────────────
|
|
46
46
|
export { projectCertJsonLd, projectCertJsonLdString, serializeJsonLdForScript, } from './jsonld/project.js';
|
|
47
47
|
export { TtlCache } from './verify/cache.js';
|
|
48
|
-
export { deliveryCacheKey, deliveryUrl, designPinFromUrl, getVerifiedDelivery, invalidateDelivery, parseDesignPin, parseRenderDef, peekVerifiedDelivery, settleDelivery, sharedDeliveryCache, } from './verify/get-verified-delivery.js';
|
|
48
|
+
export { deliveryCacheKey, deliveryUrl, designPinFromUrl, getVerifiedDelivery, invalidateDelivery, parseDeliveredFace, parseDesignPin, parseRenderDef, peekVerifiedDelivery, settleDelivery, sharedDeliveryCache, } from './verify/get-verified-delivery.js';
|
|
49
49
|
// ── Verify layer ──────────────────────────────────────────────────────────────────
|
|
50
50
|
export { getVerifiedEnvelope, invalidateVerdict, sharedVerdictCache, } from './verify/get-verified-envelope.js';
|
|
51
|
+
// 2.0.0: the issuer key SET (baked kids, then the origin's published set signed by a baked kid).
|
|
52
|
+
export { KEY_SET_PATH, keySetResolver, verifyKeySet, } from './verify/key-set.js';
|
|
51
53
|
export { fetchingKidResolver, staticKidResolver, } from './verify/resolve-kid.js';
|
|
52
54
|
// ── Web Component string renderer (the markup shared by SSR + the custom element) ──
|
|
53
55
|
export { renderBadgeHtml } from './webcomponent/render-badge-html.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,qFAAqF;AACrF,OAAO,EAAE,SAAS,EAAuB,MAAM,2BAA2B,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAwB,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,eAAe,EAA6B,MAAM,iCAAiC,CAAA;AAC5F,OAAO,EAAE,UAAU,EAAwB,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,SAAS,EAAuB,MAAM,2BAA2B,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACzG,uFAAuF;AACvF,OAAO,EACN,gBAAgB,EAChB,cAAc,EACd,yBAAyB,EACzB,UAAU,EAEV,cAAc,GACd,MAAM,wBAAwB,CAAA;AAC/B,wFAAwF;AACxF,OAAO,EACN,SAAS,EACT,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,eAAe,EACf,UAAU,GACV,MAAM,6BAA6B,CAAA;AACpC,qEAAqE;AACrE,OAAO,EAEN,aAAa,EACb,kBAAkB,GAClB,MAAM,+BAA+B,CAAA;AACtC,2FAA2F;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,qFAAqF;AACrF,OAAO,EAMN,eAAe,GACf,MAAM,mCAAmC,CAAA;AAC1C,oFAAoF;AACpF,OAAO,EACN,QAAQ,EAER,eAAe,EACf,oBAAoB,EAGpB,sBAAsB,EACtB,+BAA+B,EAC/B,mBAAmB,EACnB,UAAU,EACV,WAAW,EAEX,eAAe,EACf,cAAc,EACd,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EAIxB,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,4BAA4B,CAAA;AACnC,sFAAsF;AACtF,qFAAqF;AACrF,2FAA2F;AAC3F,OAAO,EACN,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,qFAAqF;AACrF,OAAO,EAAE,SAAS,EAAuB,MAAM,2BAA2B,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAwB,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,eAAe,EAA6B,MAAM,iCAAiC,CAAA;AAC5F,OAAO,EAAE,UAAU,EAAwB,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,SAAS,EAAuB,MAAM,2BAA2B,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACzG,uFAAuF;AACvF,OAAO,EACN,gBAAgB,EAChB,cAAc,EACd,yBAAyB,EACzB,UAAU,EAEV,cAAc,GACd,MAAM,wBAAwB,CAAA;AAC/B,wFAAwF;AACxF,OAAO,EACN,SAAS,EACT,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,eAAe,EACf,UAAU,GACV,MAAM,6BAA6B,CAAA;AACpC,qEAAqE;AACrE,OAAO,EAEN,aAAa,EACb,kBAAkB,GAClB,MAAM,+BAA+B,CAAA;AACtC,2FAA2F;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,qFAAqF;AACrF,OAAO,EAMN,eAAe,GACf,MAAM,mCAAmC,CAAA;AAC1C,oFAAoF;AACpF,OAAO,EACN,QAAQ,EAER,eAAe,EACf,oBAAoB,EAGpB,sBAAsB,EACtB,+BAA+B,EAC/B,mBAAmB,EACnB,UAAU,EACV,WAAW,EAEX,eAAe,EACf,cAAc,EACd,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EAIxB,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,4BAA4B,CAAA;AACnC,sFAAsF;AACtF,qFAAqF;AACrF,2FAA2F;AAC3F,OAAO,EACN,gBAAgB,EAYhB,gBAAgB,EAKhB,aAAa,EACb,aAAa,EAGb,cAAc,EACd,mBAAmB,GACnB,MAAM,sBAAsB,CAAA;AAC7B,uFAAuF;AACvF,OAAO,EAGN,iBAAiB,EACjB,uBAAuB,EACvB,wBAAwB,GACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,QAAQ,EAAwB,MAAM,mBAAmB,CAAA;AAClE,OAAO,EAIN,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAEhB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,mBAAmB,GAEnB,MAAM,mCAAmC,CAAA;AAC1C,qFAAqF;AACrF,OAAO,EAGN,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,GAClB,MAAM,mCAAmC,CAAA;AAC1C,iGAAiG;AACjG,OAAO,EAEN,YAAY,EAEZ,cAAc,EAEd,YAAY,GACZ,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAEN,mBAAmB,EAEnB,iBAAiB,GACjB,MAAM,yBAAyB,CAAA;AAChC,sFAAsF;AACtF,OAAO,EAA2B,eAAe,EAAE,MAAM,qCAAqC,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const READER_CSS = "/* CERTREV-READER-GEN:BEGIN */\n/* GENERATED by scripts/build-cert-reader-css.mjs from src/lib/cert-render/reader/site-snapshot/ (certrev.com,\n * component Reader, \"What your reader sees\"). DO NOT EDIT: run `pnpm build:cert-reader-css`. The face is driven by\n * four variables the Liquid root sets inline: --cr-ba accent, --cr-ba-fg accent foreground, --cr-br corner, --cr-bf\n * font. */\n.certrev-reader {\n\tcolor: #141414 !important;\n\tfont-family: var(--cr-bf) !important;\n\tfont-size: 16px !important;\n\tline-height: 1.65 !important;\n\t-webkit-font-smoothing: antialiased !important;\n\ttext-rendering: optimizelegibility !important;\n\tfont-style: normal !important;\n\tfont-weight: 400 !important;\n\tfont-stretch: 101% !important;\n\tfont-variant: normal !important;\n\tfont-feature-settings: normal !important;\n\tfont-variation-settings: normal !important;\n\tfont-kerning: auto !important;\n\tfont-optical-sizing: auto !important;\n\tfont-size-adjust: none !important;\n\tletter-spacing: normal !important;\n\tword-spacing: normal !important;\n\ttext-transform: none !important;\n\ttext-align: start !important;\n\ttext-indent: 0 !important;\n\ttext-shadow: none !important;\n\twhite-space: normal !important;\n\tword-break: normal !important;\n\toverflow-wrap: normal !important;\n\thyphens: manual !important;\n}\n.certrev-reader,\n.certrev-reader *,\n.certrev-reader *:before,\n.certrev-reader *:after {\n\tbox-sizing: border-box;\n}\n.certrev-reader :is(div, section, aside, p, blockquote, span, a, b, strong, em, i, time, small) {\n\tcolor: inherit !important;\n\tfont-family: inherit !important;\n\tfont-size: inherit !important;\n\tfont-style: inherit !important;\n\tfont-weight: inherit !important;\n\tfont-stretch: inherit !important;\n\tletter-spacing: inherit !important;\n\tline-height: inherit !important;\n\ttext-transform: inherit !important;\n\tword-spacing: inherit !important;\n\ttext-align: inherit !important;\n\ttext-indent: inherit !important;\n}\n.certrev-reader :is(b, strong) {\n\tfont-weight: bolder !important;\n}\n.certrev-reader :is(em, i) {\n\tfont-style: italic !important;\n}\n.certrev-reader p {\n\tfont-family:\n\t\t\"DM Sans\", \"DM Sans Fallback\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif !important;\n}\n.certrev-reader .certrev-r-card {\n\tz-index: 1;\n\tborder: 1px solid #14141421;\n\tborder-radius: calc(var(--cr-br) * 0.7);\n\tbackground: #fff;\n\tflex-shrink: 0;\n\tmargin: 12px 0 0;\n\tposition: relative;\n\toverflow: hidden;\n}\n.certrev-reader .certrev-r-card.pad {\n\tpadding: 15px 18px;\n\toverflow: visible;\n}\n.certrev-reader .certrev-r-card.pad .certrev-r-bys {\n\tgap: 14px;\n}\n.certrev-reader .certrev-r-cap {\n\twhite-space: nowrap;\n\tbackground: var(--cr-ba);\n\tcolor: var(--cr-ba-fg) !important;\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.14em !important;\n\ttext-transform: uppercase !important;\n\talign-items: center;\n\tgap: 11px;\n\tpadding: 14px 20px;\n\tfont-size: 10.5px !important;\n\tfont-weight: 700 !important;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-cap.center {\n\tletter-spacing: 0.16em !important;\n\tjustify-content: center;\n\tpadding: 12px;\n}\n.certrev-reader .certrev-r-cap img {\n\tflex-shrink: 0;\n\twidth: 18px;\n\theight: 18px;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-cap-body {\n\tpadding: 15px 18px 13px;\n}\n.certrev-reader .certrev-r-bys {\n\tgrid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);\n\tgap: 20px;\n\tdisplay: grid;\n}\n.certrev-reader .certrev-r-by {\n\talign-items: flex-start;\n\tgap: 12px;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-by > div {\n\tmin-width: 0;\n}\n.certrev-reader .certrev-r-by b {\n\tfont-size: 14.5px !important;\n\tfont-weight: 700 !important;\n\tline-height: 1.3 !important;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-by em {\n\tcolor: #14141495 !important;\n\tmargin-top: 4px;\n\tfont-size: 12.5px !important;\n\tfont-style: normal !important;\n\tline-height: 1.45 !important;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-role {\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.14em !important;\n\ttext-transform: uppercase !important;\n\tcolor: #14141495 !important;\n\tmargin-top: 9px;\n\tfont-size: 9px !important;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-role.on {\n\tcolor: #141414 !important;\n\tfont-weight: 700 !important;\n}\n.certrev-reader .certrev-r-face {\n\tbackground: #14141412;\n\twidth: 42px;\n\theight: 42px;\n\tcolor: #141414 !important;\n\tborder-radius: 50%;\n\tflex-shrink: 0;\n\tdisplay: block;\n\toverflow: hidden;\n}\n.certrev-reader .certrev-r-face.sm {\n\twidth: 36px;\n\theight: 36px;\n}\n.certrev-reader .certrev-r-face.lg {\n\twidth: 46px;\n\theight: 46px;\n}\n.certrev-reader .certrev-r-face svg {\n\tfill: currentColor;\n\topacity: 0.38;\n\twidth: 100%;\n\theight: 100%;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-rule {\n\tbackground: #14141421;\n\theight: 1px;\n\tmargin: 15px 0 12px;\n}\n.certrev-reader .certrev-r-foot {\n\tjustify-content: space-between;\n\talign-items: center;\n\tgap: 16px;\n\tfont-size: 12.5px !important;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-foot span {\n\twhite-space: nowrap;\n}\n.certrev-reader .certrev-r-foot em {\n\tfont-style: normal !important;\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.14em !important;\n\ttext-transform: uppercase !important;\n\tcolor: #14141495 !important;\n\tmargin-right: 9px;\n\tfont-size: 9.5px !important;\n}\n.certrev-reader .certrev-r-foot span + span {\n\tcolor: #14141495 !important;\n}\n.certrev-reader .certrev-r-kick {\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.16em !important;\n\ttext-transform: uppercase !important;\n\tcolor: #14141495 !important;\n\tmargin-bottom: 14px;\n\tfont-size: 9.5px !important;\n}\n.certrev-reader .certrev-r-memo {\n\tgap: 15px;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-memo > div {\n\tflex: 1;\n\tmin-width: 0;\n}\n.certrev-reader .certrev-r-memo-name {\n\tcolor: #14141495 !important;\n\tmargin-bottom: 11px;\n\tfont-size: 15px !important;\n}\n.certrev-reader .certrev-r-memo-name b {\n\tcolor: #141414 !important;\n\tfont-weight: 700 !important;\n}\n.certrev-reader blockquote {\n\tborder-left: 3px solid var(--cr-ba);\n\tcolor: #141414b8 !important;\n\ttext-wrap: pretty;\n\tmargin: 0;\n\tpadding-left: 16px;\n\tfont-size: 13.5px !important;\n\tfont-style: italic !important;\n\tline-height: 1.55 !important;\n}\n.certrev-reader .certrev-r-links {\n\tgap: 22px;\n\tmargin-top: 14px;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-links a {\n\tcolor: #141414 !important;\n\twhite-space: nowrap;\n\tfont-size: 13.5px !important;\n\tfont-weight: 700 !important;\n\ttext-decoration: none;\n}\n.certrev-reader .certrev-r-links a:hover {\n\tcolor: var(--cr-ba) !important;\n}\n.certrev-reader .certrev-r-vfoot {\n\talign-items: baseline;\n\tgap: 16px;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-vfoot .certrev-r-scope {\n\tflex: 1;\n\tmin-width: 0;\n\tmargin-top: 0;\n}\n.certrev-reader .certrev-r-verified {\n\tcolor: #141414b8 !important;\n\tflex-shrink: 0;\n\talign-items: center;\n\tgap: 9px;\n\tfont-size: 12.5px !important;\n\tdisplay: inline-flex;\n}\n.certrev-reader .certrev-r-verified img {\n\tflex-shrink: 0;\n\twidth: 17px;\n\theight: 17px;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-verified b {\n\tfont-family:\n\t\t\"Plus Jakarta Sans\", \"Plus Jakarta Sans Fallback\", -apple-system, system-ui, Helvetica, Arial, sans-serif !important;\n\tfont-weight: 800 !important;\n}\n.certrev-reader .certrev-r-scope {\n\tcolor: #14141495 !important;\n\ttext-wrap: pretty;\n\tmargin-top: 9px;\n\tfont-size: 12.5px !important;\n\tline-height: 1.5 !important;\n}\n.certrev-reader .certrev-r-scope em {\n\tfont-style: normal !important;\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.1em !important;\n\ttext-transform: uppercase !important;\n\tfont-size: 9.5px !important;\n}\n.certrev-reader .certrev-r-side {\n\tz-index: 1;\n\tfloat: right;\n\tborder: 1px solid #14141421;\n\tborder-radius: var(--cr-br);\n\twidth: 268px;\n\tbox-shadow: 0 4px 18px #14141412;\n\tbackground: #fff;\n\tmargin: 2px 0 18px 28px;\n\tposition: relative;\n\toverflow: hidden;\n}\n.certrev-reader .certrev-r-side-body {\n\tpadding: 18px;\n}\n.certrev-reader .certrev-r-side-body .certrev-r-by b {\n\tfont-size: 14px !important;\n}\n.certrev-reader .certrev-r-side-body p {\n\tcolor: #141414b8 !important;\n\ttext-wrap: pretty;\n\tmargin: 15px 0 0;\n\tfont-size: 13px !important;\n\tline-height: 1.55 !important;\n}\n.certrev-reader .certrev-r-side-body blockquote {\n\tmargin-top: 15px;\n\tpadding-left: 15px;\n\tfont-size: 13.5px !important;\n\tline-height: 1.55 !important;\n}\n.certrev-reader .certrev-r-side-body .certrev-r-scope {\n\tmargin-top: 15px;\n\tfont-size: 11.5px !important;\n}\n.certrev-reader .certrev-r-side-links {\n\tborder-top: 1px solid #14141421;\n\tgrid-template-columns: 1fr 1fr;\n\tdisplay: grid;\n}\n.certrev-reader .certrev-r-side-links a {\n\ttext-align: center !important;\n\tcolor: #141414 !important;\n\tpadding: 13px;\n\tfont-size: 13px !important;\n\tfont-weight: 700 !important;\n\ttext-decoration: none;\n}\n.certrev-reader .certrev-r-side-links a:first-child {\n\tborder-right: 1px solid #14141421;\n}\n.certrev-reader .certrev-r-side-links a:hover {\n\tcolor: var(--cr-ba) !important;\n}\n.certrev-reader .certrev-r-pill {\n\tz-index: 3;\n\tbackground: var(--cr-ba);\n\tcolor: var(--cr-ba-fg) !important;\n\tborder-radius: 999px;\n\talign-items: center;\n\tgap: 13px;\n\tpadding: 12px 21px;\n\tdisplay: inline-flex;\n\tposition: absolute;\n\tbottom: 26px;\n\tright: 26px;\n\tbox-shadow: 0 10px 26px #14141429;\n}\n.certrev-reader .certrev-r-pill span {\n\twhite-space: nowrap;\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.14em !important;\n\ttext-transform: uppercase !important;\n\tfont-size: 10.5px !important;\n\tfont-weight: 700 !important;\n}\n.certrev-reader .certrev-r-pill a {\n\tcolor: inherit !important;\n\ttext-underline-offset: 3px;\n\tfont-size: 13.5px !important;\n\tfont-weight: 700 !important;\n\ttext-decoration: underline;\n}\n.certrev-reader .certrev-r-pill i {\n\topacity: 0.42;\n\tfont-style: normal !important;\n}\n@media (max-width: 820px) {\n\t.certrev-reader .certrev-r-side {\n\t\tfloat: none;\n\t\twidth: auto;\n\t\tmargin: 20px 0;\n\t}\n\t.certrev-reader .certrev-r-bys {\n\t\tgrid-template-columns: 1fr;\n\t\tgap: 18px;\n\t}\n\t.certrev-reader .certrev-r-cap {\n\t\tletter-spacing: 0.1em !important;\n\t\tpadding: 12px 16px;\n\t\tfont-size: 9.5px !important;\n\t}\n\t.certrev-reader .certrev-r-cap-body,\n\t.certrev-reader .certrev-r-card.pad {\n\t\tpadding: 16px 18px;\n\t}\n\t.certrev-reader .certrev-r-pill {\n\t\tgap: 10px;\n\t\tpadding: 10px 16px;\n\t\tbottom: 20px;\n\t\tright: 20px;\n\t}\n}\n@media (max-width: 560px) {\n\t.certrev-reader .certrev-r-links {\n\t\tflex-direction: column;\n\t\tgap: 9px;\n\t}\n\t.certrev-reader .certrev-r-foot {\n\t\tflex-direction: column;\n\t\talign-items: flex-start;\n\t\tgap: 6px;\n\t}\n\t.certrev-reader .certrev-r-foot span {\n\t\twhite-space: normal;\n\t}\n\t.certrev-reader .certrev-r-vfoot {\n\t\tflex-direction: column;\n\t\talign-items: flex-start;\n\t\tgap: 10px;\n\t}\n\t.certrev-reader .certrev-r-vfoot .certrev-r-scope {\n\t\twidth: 100%;\n\t}\n\t.certrev-reader .certrev-r-cap {\n\t\twhite-space: normal;\n\t\tletter-spacing: 0.08em !important;\n\t\tpadding: 11px 14px;\n\t\tfont-size: 9px !important;\n\t}\n\t.certrev-reader .certrev-r-cap-body,\n\t.certrev-reader .certrev-r-card.pad {\n\t\tpadding: 14px 15px;\n\t}\n\t.certrev-reader .certrev-r-foot {\n\t\tflex-wrap: wrap;\n\t\tgap: 8px 14px;\n\t}\n\t.certrev-reader .certrev-r-links {\n\t\tflex-wrap: wrap;\n\t\tgap: 16px;\n\t}\n\t.certrev-reader .certrev-r-vfoot {\n\t\tflex-wrap: wrap;\n\t\tgap: 10px;\n\t}\n\t.certrev-reader .certrev-r-face.lg {\n\t\twidth: 38px;\n\t\theight: 38px;\n\t}\n\t.certrev-reader .certrev-r-side {\n\t\tmargin: 16px 0;\n\t}\n\t.certrev-reader .certrev-r-side-links a {\n\t\tpadding: 12px 8px;\n\t}\n\t.certrev-reader .certrev-r-pill {\n\t\ttext-align: center !important;\n\t\tflex-wrap: wrap;\n\t\tjustify-content: center;\n\t\tgap: 6px 12px;\n\t\tpadding: 11px 14px;\n\t\tbottom: 14px;\n\t\tleft: 14px;\n\t\tright: 14px;\n\t}\n\t.certrev-reader .certrev-r-pill span {\n\t\twhite-space: normal;\n\t}\n}\n/* Theme-bleed armor (hand-written, not from the snapshot; see build-cert-reader-css.mjs). */\n.certrev-reader img {\n\tmargin: 0 !important;\n\tmax-width: 100% !important;\n\tfloat: none !important;\n\tborder-radius: 0 !important;\n}\n.certrev-reader a {\n\tbackground-image: none !important;\n}\n.certrev-reader .certrev-r-links a,\n.certrev-reader .certrev-r-side-links a {\n\ttext-decoration: none !important;\n}\n.certrev-reader .certrev-r-links a:not(:hover),\n.certrev-reader .certrev-r-side-links a:not(:hover) {\n\tcolor: #141414 !important;\n}\n.certrev-reader .certrev-r-links a:hover,\n.certrev-reader .certrev-r-side-links a:hover {\n\tcolor: var(--cr-ba) !important;\n}\n.certrev-reader .certrev-r-pill a {\n\tcolor: inherit !important;\n\ttext-decoration: underline !important;\n}\n.certrev-reader .certrev-r-face img {\n\tdisplay: block;\n\twidth: 100%;\n\theight: 100%;\n\tobject-fit: cover;\n}\n.certrev-reader .certrev-r-bys.solo {\n\tgrid-template-columns: minmax(0, 1fr);\n}\n.certrev-reader .certrev-r-pill {\n\tposition: fixed;\n\tmargin-bottom: env(safe-area-inset-bottom, 0px);\n}\n.certrev-memo-wrap[data-certrev-placement=\"rail\"] .certrev-reader .certrev-r-side {\n\tfloat: none;\n\twidth: auto;\n\tmargin: 0;\n}\n.certrev-memo-wrap[data-certrev-placement=\"body-fallback\"] .certrev-reader .certrev-r-side,\n.certrev-sidebar-wrap:not([data-certrev-placement]) .certrev-reader .certrev-r-side {\n\tfloat: none;\n\tmargin-right: auto;\n\tmargin-left: auto;\n}\n.certrev-reader .certrev-r-side-links.single {\n\tgrid-template-columns: minmax(0, 1fr);\n}\n.certrev-reader .certrev-r-side-links.single a:first-child {\n\tborder-right: 0;\n}\n:is(.certrev-card-wrap, .certrev-memo-wrap):has(.certrev-reader) {\n\tmargin-block: 0 !important;\n\tpadding: 0 !important;\n}\n/* Reader fonts (generated from site-snapshot/site-fonts.css.txt: certrev.com's own faces and metric-matched\n * fallbacks, the same declarations but for the file, the committed copy on assets.certrev.com, and the stretch, which\n * keeps them to reader text; see build-cert-reader-css.mjs). */\n@font-face {\n\tfont-family: \"DM Sans Fallback\";\n\tfont-stretch: 101%;\n\tsrc: local(Arial);\n\tascent-override: 94.9%;\n\tdescent-override: 29.66%;\n\tline-gap-override: 0.0%;\n\tsize-adjust: 104.53%;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display Fallback\";\n\tfont-stretch: 101%;\n\tsrc: local(Times New Roman);\n\tascent-override: 97.25%;\n\tdescent-override: 22.56%;\n\tline-gap-override: 0.0%;\n\tsize-adjust: 111.26%;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono Fallback\";\n\tfont-stretch: 101%;\n\tsrc: local(Arial);\n\tascent-override: 75.79%;\n\tdescent-override: 22.29%;\n\tline-gap-override: 0.0%;\n\tsize-adjust: 134.59%;\n}\n\n@font-face {\n\tfont-family: \"Plus Jakarta Sans Fallback\";\n\tfont-stretch: 101%;\n\tsrc: local(Arial);\n\tascent-override: 98.88%;\n\tdescent-override: 21.15%;\n\tline-gap-override: 0.0%;\n\tsize-adjust: 104.98%;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 900;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 900;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 900;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 900;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Plus Jakarta Sans\";\n\tfont-style: normal;\n\tfont-weight: 800;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jakarta-800-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Plus Jakarta Sans\";\n\tfont-style: normal;\n\tfont-weight: 800;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jakarta-800-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* CERTREV-READER-GEN:END */\n";
|
|
1
|
+
export declare const READER_CSS = "/* CERTREV-READER-GEN:BEGIN */\n/* GENERATED by scripts/build-cert-reader-css.mjs from src/lib/cert-render/reader/site-snapshot/ (certrev.com,\n * component Reader, \"What your reader sees\"). DO NOT EDIT: run `pnpm build:cert-reader-css`. The face is driven by\n * four variables the Liquid root sets inline: --cr-ba accent, --cr-ba-fg accent foreground, --cr-br corner, --cr-bf\n * font; a toned face (class certrev-r-toned) adds --cr-sf surface and --cr-ink ink. */\n.certrev-reader {\n\tcolor: #141414 !important;\n\tfont-family: var(--cr-bf) !important;\n\tfont-size: 16px !important;\n\tline-height: 1.65 !important;\n\t-webkit-font-smoothing: antialiased !important;\n\ttext-rendering: optimizelegibility !important;\n\tfont-style: normal !important;\n\tfont-weight: 400 !important;\n\tfont-stretch: 101% !important;\n\tfont-variant: normal !important;\n\tfont-feature-settings: normal !important;\n\tfont-variation-settings: normal !important;\n\tfont-kerning: auto !important;\n\tfont-optical-sizing: auto !important;\n\tfont-size-adjust: none !important;\n\tletter-spacing: normal !important;\n\tword-spacing: normal !important;\n\ttext-transform: none !important;\n\ttext-align: start !important;\n\ttext-indent: 0 !important;\n\ttext-shadow: none !important;\n\twhite-space: normal !important;\n\tword-break: normal !important;\n\toverflow-wrap: normal !important;\n\thyphens: manual !important;\n}\n.certrev-reader,\n.certrev-reader *,\n.certrev-reader *:before,\n.certrev-reader *:after {\n\tbox-sizing: border-box;\n}\n.certrev-reader :is(div, section, aside, details, summary, p, blockquote, span, a, b, strong, em, i, time, small) {\n\tcolor: inherit !important;\n\tfont-family: inherit !important;\n\tfont-size: inherit !important;\n\tfont-style: inherit !important;\n\tfont-weight: inherit !important;\n\tfont-stretch: inherit !important;\n\tletter-spacing: inherit !important;\n\tline-height: inherit !important;\n\ttext-transform: inherit !important;\n\tword-spacing: inherit !important;\n\ttext-align: inherit !important;\n\ttext-indent: inherit !important;\n}\n.certrev-reader :is(b, strong) {\n\tfont-weight: bolder !important;\n}\n.certrev-reader :is(em, i) {\n\tfont-style: italic !important;\n}\n.certrev-reader p {\n\tfont-family:\n\t\t\"DM Sans\", \"DM Sans Fallback\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif !important;\n}\n.certrev-reader .certrev-r-card {\n\tz-index: 1;\n\tborder: 1px solid #14141421;\n\tborder-radius: calc(var(--cr-br) * 0.7);\n\tbackground: #fff;\n\tflex-shrink: 0;\n\tmargin: 12px 0 0;\n\tposition: relative;\n\toverflow: hidden;\n}\n.certrev-reader .certrev-r-card.pad {\n\tpadding: 15px 18px;\n\toverflow: visible;\n}\n.certrev-reader .certrev-r-card.pad .certrev-r-bys {\n\tgap: 14px;\n}\n.certrev-reader .certrev-r-cap {\n\twhite-space: nowrap;\n\tbackground: var(--cr-ba);\n\tcolor: var(--cr-ba-fg) !important;\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.14em !important;\n\ttext-transform: uppercase !important;\n\talign-items: center;\n\tgap: 11px;\n\tpadding: 14px 20px;\n\tfont-size: 10.5px !important;\n\tfont-weight: 700 !important;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-cap.center {\n\tletter-spacing: 0.16em !important;\n\tjustify-content: center;\n\tpadding: 12px;\n}\n.certrev-reader .certrev-r-cap img {\n\tflex-shrink: 0;\n\twidth: 18px;\n\theight: 18px;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-cap-body {\n\tpadding: 15px 18px 13px;\n}\n.certrev-reader .certrev-r-bys {\n\tgrid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);\n\tgap: 20px;\n\tdisplay: grid;\n}\n.certrev-reader .certrev-r-by {\n\talign-items: flex-start;\n\tgap: 12px;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-by > div {\n\tmin-width: 0;\n}\n.certrev-reader .certrev-r-by b {\n\tfont-size: 14.5px !important;\n\tfont-weight: 700 !important;\n\tline-height: 1.3 !important;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-by em {\n\tcolor: #14141495 !important;\n\tmargin-top: 4px;\n\tfont-size: 12.5px !important;\n\tfont-style: normal !important;\n\tline-height: 1.45 !important;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-role {\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.14em !important;\n\ttext-transform: uppercase !important;\n\tcolor: #14141495 !important;\n\tmargin-top: 9px;\n\tfont-size: 9px !important;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-role.on {\n\tcolor: #141414 !important;\n\tfont-weight: 700 !important;\n}\n.certrev-reader .certrev-r-face {\n\tbackground: #14141412;\n\twidth: 42px;\n\theight: 42px;\n\tcolor: #141414 !important;\n\tborder-radius: 50%;\n\tflex-shrink: 0;\n\tdisplay: block;\n\toverflow: hidden;\n}\n.certrev-reader .certrev-r-face.sm {\n\twidth: 36px;\n\theight: 36px;\n}\n.certrev-reader .certrev-r-face.lg {\n\twidth: 46px;\n\theight: 46px;\n}\n.certrev-reader .certrev-r-face svg {\n\tfill: currentColor;\n\topacity: 0.38;\n\twidth: 100%;\n\theight: 100%;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-rule {\n\tbackground: #14141421;\n\theight: 1px;\n\tmargin: 15px 0 12px;\n}\n.certrev-reader .certrev-r-foot {\n\tjustify-content: space-between;\n\talign-items: center;\n\tgap: 16px;\n\tfont-size: 12.5px !important;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-foot span {\n\twhite-space: nowrap;\n}\n.certrev-reader .certrev-r-foot em {\n\tfont-style: normal !important;\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.14em !important;\n\ttext-transform: uppercase !important;\n\tcolor: #14141495 !important;\n\tmargin-right: 9px;\n\tfont-size: 9.5px !important;\n}\n.certrev-reader .certrev-r-foot span + span {\n\tcolor: #14141495 !important;\n}\n.certrev-reader .certrev-r-kick {\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.16em !important;\n\ttext-transform: uppercase !important;\n\tcolor: #14141495 !important;\n\tmargin-bottom: 14px;\n\tfont-size: 9.5px !important;\n}\n.certrev-reader .certrev-r-memo {\n\tgap: 15px;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-memo > div {\n\tflex: 1;\n\tmin-width: 0;\n}\n.certrev-reader .certrev-r-memo-name {\n\tcolor: #14141495 !important;\n\tmargin-bottom: 11px;\n\tfont-size: 15px !important;\n}\n.certrev-reader .certrev-r-memo-name b {\n\tcolor: #141414 !important;\n\tfont-weight: 700 !important;\n}\n.certrev-reader blockquote {\n\tborder-left: 3px solid var(--cr-ba);\n\tcolor: #141414b8 !important;\n\ttext-wrap: pretty;\n\tmargin: 0;\n\tpadding-left: 16px;\n\tfont-size: 13.5px !important;\n\tfont-style: italic !important;\n\tline-height: 1.55 !important;\n}\n.certrev-reader .certrev-r-links {\n\tgap: 22px;\n\tmargin-top: 14px;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-links a {\n\tcolor: #141414 !important;\n\twhite-space: nowrap;\n\tfont-size: 13.5px !important;\n\tfont-weight: 700 !important;\n\ttext-decoration: none;\n}\n.certrev-reader .certrev-r-links a:hover {\n\tcolor: var(--cr-ba) !important;\n}\n.certrev-reader .certrev-r-vfoot {\n\talign-items: baseline;\n\tgap: 16px;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-vfoot .certrev-r-scope {\n\tflex: 1;\n\tmin-width: 0;\n\tmargin-top: 0;\n}\n.certrev-reader .certrev-r-verified {\n\tcolor: #141414b8 !important;\n\tflex-shrink: 0;\n\talign-items: center;\n\tgap: 9px;\n\tfont-size: 12.5px !important;\n\tdisplay: inline-flex;\n}\n.certrev-reader .certrev-r-verified img {\n\tflex-shrink: 0;\n\twidth: 17px;\n\theight: 17px;\n\tdisplay: block;\n}\n.certrev-reader .certrev-r-verified b {\n\tfont-family:\n\t\t\"Plus Jakarta Sans\", \"Plus Jakarta Sans Fallback\", -apple-system, system-ui, Helvetica, Arial, sans-serif !important;\n\tfont-weight: 800 !important;\n}\n.certrev-reader .certrev-r-scope {\n\tcolor: #14141495 !important;\n\ttext-wrap: pretty;\n\tmargin-top: 9px;\n\tfont-size: 12.5px !important;\n\tline-height: 1.5 !important;\n}\n.certrev-reader .certrev-r-scope em {\n\tfont-style: normal !important;\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.1em !important;\n\ttext-transform: uppercase !important;\n\tfont-size: 9.5px !important;\n}\n.certrev-reader .certrev-r-side {\n\tz-index: 1;\n\tfloat: right;\n\tborder: 1px solid #14141421;\n\tborder-radius: var(--cr-br);\n\twidth: 268px;\n\tbox-shadow: 0 4px 18px #14141412;\n\tbackground: #fff;\n\tmargin: 2px 0 18px 28px;\n\tposition: relative;\n\toverflow: hidden;\n}\n.certrev-reader .certrev-r-side-body {\n\tpadding: 18px;\n}\n.certrev-reader .certrev-r-side-body .certrev-r-by b {\n\tfont-size: 14px !important;\n}\n.certrev-reader .certrev-r-side-body p {\n\tcolor: #141414b8 !important;\n\ttext-wrap: pretty;\n\tmargin: 15px 0 0;\n\tfont-size: 13px !important;\n\tline-height: 1.55 !important;\n}\n.certrev-reader .certrev-r-side-body blockquote {\n\tmargin-top: 15px;\n\tpadding-left: 15px;\n\tfont-size: 13.5px !important;\n\tline-height: 1.55 !important;\n}\n.certrev-reader .certrev-r-side-body .certrev-r-scope {\n\tmargin-top: 15px;\n\tfont-size: 11.5px !important;\n}\n.certrev-reader .certrev-r-side-links {\n\tborder-top: 1px solid #14141421;\n\tgrid-template-columns: 1fr 1fr;\n\tdisplay: grid;\n}\n.certrev-reader .certrev-r-side-links a {\n\ttext-align: center !important;\n\tcolor: #141414 !important;\n\tpadding: 13px;\n\tfont-size: 13px !important;\n\tfont-weight: 700 !important;\n\ttext-decoration: none;\n}\n.certrev-reader .certrev-r-side-links a:first-child {\n\tborder-right: 1px solid #14141421;\n}\n.certrev-reader .certrev-r-side-links a:hover {\n\tcolor: var(--cr-ba) !important;\n}\n.certrev-reader .certrev-r-pill {\n\tz-index: 3;\n\tbackground: var(--cr-ba);\n\tcolor: var(--cr-ba-fg) !important;\n\tborder-radius: 999px;\n\talign-items: center;\n\tgap: 13px;\n\tpadding: 12px 21px;\n\tdisplay: inline-flex;\n\tposition: absolute;\n\tbottom: 26px;\n\tright: 26px;\n\tbox-shadow: 0 10px 26px #14141429;\n}\n.certrev-reader .certrev-r-pill span {\n\twhite-space: nowrap;\n\tfont-family: \"JetBrains Mono\", \"JetBrains Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, monospace !important;\n\tletter-spacing: 0.14em !important;\n\ttext-transform: uppercase !important;\n\tfont-size: 10.5px !important;\n\tfont-weight: 700 !important;\n}\n.certrev-reader .certrev-r-pill a {\n\tcolor: inherit !important;\n\ttext-underline-offset: 3px;\n\tfont-size: 13.5px !important;\n\tfont-weight: 700 !important;\n\ttext-decoration: underline;\n}\n.certrev-reader .certrev-r-pill i {\n\topacity: 0.42;\n\tfont-style: normal !important;\n}\n@media (max-width: 820px) {\n\t.certrev-reader .certrev-r-side {\n\t\tfloat: none;\n\t\twidth: auto;\n\t\tmargin: 20px 0;\n\t}\n\t.certrev-reader .certrev-r-bys {\n\t\tgrid-template-columns: 1fr;\n\t\tgap: 18px;\n\t}\n\t.certrev-reader .certrev-r-cap {\n\t\tletter-spacing: 0.1em !important;\n\t\tpadding: 12px 16px;\n\t\tfont-size: 9.5px !important;\n\t}\n\t.certrev-reader .certrev-r-cap-body,\n\t.certrev-reader .certrev-r-card.pad {\n\t\tpadding: 16px 18px;\n\t}\n\t.certrev-reader .certrev-r-pill {\n\t\tgap: 10px;\n\t\tpadding: 10px 16px;\n\t\tbottom: 20px;\n\t\tright: 20px;\n\t}\n}\n@media (max-width: 560px) {\n\t.certrev-reader .certrev-r-links {\n\t\tflex-direction: column;\n\t\tgap: 9px;\n\t}\n\t.certrev-reader .certrev-r-foot {\n\t\tflex-direction: column;\n\t\talign-items: flex-start;\n\t\tgap: 6px;\n\t}\n\t.certrev-reader .certrev-r-foot span {\n\t\twhite-space: normal;\n\t}\n\t.certrev-reader .certrev-r-vfoot {\n\t\tflex-direction: column;\n\t\talign-items: flex-start;\n\t\tgap: 10px;\n\t}\n\t.certrev-reader .certrev-r-vfoot .certrev-r-scope {\n\t\twidth: 100%;\n\t}\n\t.certrev-reader .certrev-r-cap {\n\t\twhite-space: normal;\n\t\tletter-spacing: 0.08em !important;\n\t\tpadding: 11px 14px;\n\t\tfont-size: 9px !important;\n\t}\n\t.certrev-reader .certrev-r-cap-body,\n\t.certrev-reader .certrev-r-card.pad {\n\t\tpadding: 14px 15px;\n\t}\n\t.certrev-reader .certrev-r-foot {\n\t\tflex-wrap: wrap;\n\t\tgap: 8px 14px;\n\t}\n\t.certrev-reader .certrev-r-links {\n\t\tflex-wrap: wrap;\n\t\tgap: 16px;\n\t}\n\t.certrev-reader .certrev-r-vfoot {\n\t\tflex-wrap: wrap;\n\t\tgap: 10px;\n\t}\n\t.certrev-reader .certrev-r-face.lg {\n\t\twidth: 38px;\n\t\theight: 38px;\n\t}\n\t.certrev-reader .certrev-r-side {\n\t\tmargin: 16px 0;\n\t}\n\t.certrev-reader .certrev-r-side-links a {\n\t\tpadding: 12px 8px;\n\t}\n\t.certrev-reader .certrev-r-pill {\n\t\ttext-align: center !important;\n\t\tflex-wrap: wrap;\n\t\tjustify-content: center;\n\t\tgap: 6px 12px;\n\t\tpadding: 11px 14px;\n\t\tbottom: 14px;\n\t\tleft: 14px;\n\t\tright: 14px;\n\t}\n\t.certrev-reader .certrev-r-pill span {\n\t\twhite-space: normal;\n\t}\n}\n/* Theme-bleed armor (hand-written, not from the snapshot; see build-cert-reader-css.mjs). */\n.certrev-reader img {\n\tmargin: 0 !important;\n\tmax-width: 100% !important;\n\tfloat: none !important;\n\tborder-radius: 0 !important;\n}\n.certrev-reader a {\n\tbackground-image: none !important;\n}\n.certrev-reader .certrev-r-links a,\n.certrev-reader .certrev-r-side-links a {\n\ttext-decoration: none !important;\n}\n.certrev-reader .certrev-r-links a:not(:hover),\n.certrev-reader .certrev-r-side-links a:not(:hover) {\n\tcolor: #141414 !important;\n}\n.certrev-reader .certrev-r-links a:hover,\n.certrev-reader .certrev-r-side-links a:hover {\n\tcolor: var(--cr-ba) !important;\n}\n.certrev-reader .certrev-r-pill a {\n\tcolor: inherit !important;\n\ttext-decoration: underline !important;\n}\n.certrev-reader .certrev-r-face img {\n\tdisplay: block;\n\twidth: 100%;\n\theight: 100%;\n\tobject-fit: cover;\n}\n.certrev-reader .certrev-r-bys.solo {\n\tgrid-template-columns: minmax(0, 1fr);\n}\n/* Card wrap (owner request 2026-10-12): a date never splits and the credential line breaks only between its parts. Selectors the snapshot does not carry. */\n.certrev-reader .certrev-r-by > div b,\n.certrev-reader .certrev-r-by > div em {\n\toverflow-wrap: break-word;\n}\n.certrev-reader .certrev-r-by > div em > span:first-child {\n\tmax-width: 100%;\n\tdisplay: inline-block;\n}\n.certrev-reader .certrev-r-by .certrev-r-nw {\n\twhite-space: nowrap;\n}\n/* Balanced card (owner request 2026-10-12, \"split evenly between the author and expert ... balanced symmetry\"): the\n two bylines are equal 50/50 columns (the snapshot's 0.82fr/1.18fr tilted the card to the expert), carry the same\n 42px face, type scale and rhythm, and their role labels (\"Written by\" / \"Reviewed by\") sit on one shared baseline\n at the foot of each column in one style (the snapshot inked only \"Reviewed by\"). Under 821px the columns stack\n with the snapshot's single 18px gap between them, so both entries get identical spacing. */\n@media (min-width: 821px) {\n\t.certrev-reader .certrev-r-bys {\n\t\tgrid-template-columns: repeat(2, minmax(0, 1fr));\n\t\tgap: 24px;\n\t}\n}\n.certrev-reader .certrev-r-bys .certrev-r-by > div {\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-self: stretch;\n}\n.certrev-reader .certrev-r-bys .certrev-r-role {\n\tcolor: #141414 !important;\n\tfont-weight: 700 !important;\n\tmargin-top: auto;\n\tpadding-top: 9px;\n}\n/* The certified date and the compensation cue sit on one row under both columns, on a shared baseline, left-justified\n like the rest of the card (Owen 2026-10-17, on a live client's pictures: \"where it says certified is weirdly center aligned\n instead of left justified\"; the 2026-10-12 balanced card had centred it). */\n.certrev-reader .certrev-r-card .certrev-r-foot {\n\tjustify-content: flex-start;\n\talign-items: baseline;\n\tgap: 6px 28px;\n\ttext-align: left;\n\tflex-wrap: wrap;\n\tdisplay: flex;\n}\n.certrev-reader .certrev-r-card .certrev-r-foot span {\n\twhite-space: nowrap;\n}\n/* The hairline above the footer is an empty div: a theme that hides every empty div (a live client theme does, and a scoped one such as .rte div:empty would out-specify a plain rule, so it is important and carries the card and the element)\n removes it, and the footer then sits tight under the role labels. */\n.certrev-reader .certrev-r-card div.certrev-r-rule {\n\tdisplay: block !important;\n}\n.certrev-reader .certrev-r-card .certrev-r-foot span:empty {\n\tdisplay: none;\n}\n.certrev-reader .certrev-r-card .certrev-r-bys + .certrev-r-foot {\n\tborder-top: 1px solid #14141421;\n\tmargin-top: 15px;\n\tpadding-top: 12px;\n}\n@media (max-width: 560px) {\n\t.certrev-reader .certrev-r-card .certrev-r-foot {\n\t\tflex-direction: column;\n\t\talign-items: flex-start;\n\t\tgap: 6px;\n\t}\n}\n/* Memo (owner request 2026-10-13, a live client's iPhone capture): a theme rule such as .rte blockquote centres the quote, pads 80px above it,\n adds block margins and paints a large mask-image quote glyph (::before); none of that is the face's. The quote is\n pinned left with no block padding or margin and no pseudo-element glyph (important: the theme's selector can be as\n specific as ours). On a phone (560px and under) the avatar and name sit on one row and the quote spans the full card\n width beneath them (the inner div becomes display: contents so the name, quote and links are grid items of the\n memo); the vertical rule is dropped, the two links share one row, and every item starts at the card's own edge, the\n same edge as \"Verified by CertREV\" and the disclaimer. One row gap sets the vertical rhythm. No JS, no clamp. */\n.certrev-reader .certrev-r-memo blockquote {\n\ttext-align: left !important;\n\tmargin-block: 0 !important;\n\tpadding-block: 0 !important;\n}\n.certrev-reader .certrev-r-memo blockquote::before,\n.certrev-reader .certrev-r-memo blockquote::after {\n\tcontent: none !important;\n\tdisplay: none !important;\n}\n@media (max-width: 560px) {\n\t.certrev-reader .certrev-r-memo {\n\t\tgrid-template-columns: auto minmax(0, 1fr);\n\t\talign-items: center;\n\t\tgap: 12px;\n\t\tdisplay: grid;\n\t}\n\t.certrev-reader .certrev-r-memo > div {\n\t\tdisplay: contents;\n\t}\n\t.certrev-reader .certrev-r-memo .certrev-r-memo-name {\n\t\tmargin: 0;\n\t}\n\t.certrev-reader .certrev-r-memo blockquote {\n\t\tborder-left: 0 !important;\n\t\tgrid-column: 1 / -1;\n\t\tpadding-left: 0 !important;\n\t}\n\t.certrev-reader .certrev-r-memo .certrev-r-links {\n\t\tflex-flow: row wrap;\n\t\tgrid-column: 1 / -1;\n\t\tgap: 6px 20px;\n\t\tmargin-top: 0;\n\t}\n}\n.certrev-reader .certrev-r-pill {\n\tposition: fixed;\n\tmargin-bottom: env(safe-area-inset-bottom, 0px);\n}\n.certrev-memo-wrap[data-certrev-placement=\"rail\"] .certrev-reader .certrev-r-side {\n\tfloat: none;\n\twidth: auto;\n\tmargin: 0;\n}\n.certrev-memo-wrap[data-certrev-placement=\"body-fallback\"] .certrev-reader .certrev-r-side,\n.certrev-sidebar-wrap:not([data-certrev-placement]) .certrev-reader .certrev-r-side {\n\tfloat: none;\n\tmargin-right: auto;\n\tmargin-left: auto;\n}\n.certrev-reader .certrev-r-side-links.single {\n\tgrid-template-columns: minmax(0, 1fr);\n}\n.certrev-reader .certrev-r-side-links.single a:first-child {\n\tborder-right: 0;\n}\n/* Collapsible on phones (owner decision 3d0838a4): wider than 640px the card's own bio and memo, at 640px and under the\n same pair in a closed details. */\n.certrev-reader .certrev-r-more {\n\tdisplay: none !important;\n}\n@media (max-width: 640px) {\n\t.certrev-reader .certrev-r-side-body > p,\n\t.certrev-reader .certrev-r-side-body > blockquote {\n\t\tdisplay: none !important;\n\t}\n\t.certrev-reader .certrev-r-more {\n\t\tdisplay: block !important;\n\t\tmargin: 0 !important;\n\t\tpadding: 0 !important;\n\t\tborder: 0 !important;\n\t\tborder-radius: 0 !important;\n\t\tbackground: none !important;\n\t\tbox-shadow: none !important;\n\t\theight: auto !important;\n\t\tmax-height: none !important;\n\t\toverflow: visible !important;\n\t\topacity: 1 !important;\n\t\tvisibility: visible !important;\n\t\ttransform: none !important;\n\t}\n}\n.certrev-reader .certrev-r-more > summary {\n\tdisplay: flex !important;\n\talign-items: center;\n\tgap: 8px;\n\tmin-height: 44px;\n\tmargin: 3px 0 -10px !important;\n\tpadding: 12px 0 !important;\n\tborder: 0 !important;\n\tbackground: none !important;\n\tlist-style: none !important;\n\tcursor: pointer;\n\tcolor: #141414 !important;\n\tfont-size: 13px !important;\n\tfont-weight: 700 !important;\n\tline-height: 1.55 !important;\n}\n.certrev-reader .certrev-r-more > summary::-webkit-details-marker {\n\tdisplay: none;\n}\n.certrev-reader .certrev-r-more > summary::before {\n\tcontent: none !important;\n\tdisplay: none !important;\n}\n.certrev-reader .certrev-r-more > summary::after {\n\tcontent: \"\" !important;\n\tdisplay: block !important;\n\tposition: static !important;\n\tfloat: none !important;\n\tflex: none;\n\twidth: 6px !important;\n\theight: 6px !important;\n\tmargin: -3px 0 0 !important;\n\tborder: solid currentColor !important;\n\tborder-width: 0 2px 2px 0 !important;\n\tbackground: none !important;\n\ttransform: rotate(45deg) !important;\n}\n.certrev-reader .certrev-r-more[open] > summary::after {\n\tmargin-top: 3px !important;\n\ttransform: rotate(-135deg) !important;\n}\n.certrev-reader .certrev-r-more > summary:focus-visible {\n\toutline: 2px solid currentColor !important;\n\toutline-offset: 2px;\n}\n.certrev-reader .certrev-r-more::details-content {\n\ttransition: none !important;\n\tanimation: none !important;\n}\n.certrev-reader .certrev-r-more[open]::details-content {\n\tdisplay: block !important;\n\tcontent-visibility: visible !important;\n\tblock-size: auto !important;\n\theight: auto !important;\n\tmax-height: none !important;\n\toverflow: visible !important;\n\topacity: 1 !important;\n\tvisibility: visible !important;\n\ttransform: none !important;\n}\n:is(.certrev-card-wrap, .certrev-memo-wrap):has(.certrev-reader) {\n\tmargin-block: 0 !important;\n\tpadding: 0 !important;\n}\n/* Surface and ink (generated from the rules above, nothing hand-copied: a TONED face, whose root carries\n * .certrev-r-toned, reads the white panel as --cr-sf and the #141414 ink as --cr-ink; an untoned face matches none of\n * these rules; see build-cert-reader-css.mjs). */\n.certrev-reader.certrev-r-toned {\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-card {\n\tborder: 1px solid color-mix(in srgb, var(--cr-ink, #141414) 12.94%, transparent);\n\tbackground: var(--cr-sf, #fff);\n}\n.certrev-reader.certrev-r-toned .certrev-r-by em {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 58.43%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-role {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 58.43%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-role.on {\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-face {\n\tbackground: color-mix(in srgb, var(--cr-ink, #141414) 7.06%, transparent);\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-rule {\n\tbackground: color-mix(in srgb, var(--cr-ink, #141414) 12.94%, transparent);\n}\n.certrev-reader.certrev-r-toned .certrev-r-foot em {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 58.43%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-foot span + span {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 58.43%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-kick {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 58.43%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-memo-name {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 58.43%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-memo-name b {\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned blockquote {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 72.16%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-links a {\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-verified {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 72.16%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-scope {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 58.43%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-side {\n\tborder: 1px solid color-mix(in srgb, var(--cr-ink, #141414) 12.94%, transparent);\n\tbox-shadow: 0 4px 18px color-mix(in srgb, var(--cr-ink, #141414) 7.06%, transparent);\n\tbackground: var(--cr-sf, #fff);\n}\n.certrev-reader.certrev-r-toned .certrev-r-side-body p {\n\tcolor: color-mix(in srgb, var(--cr-ink, #141414) 72.16%, transparent) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-side-links {\n\tborder-top: 1px solid color-mix(in srgb, var(--cr-ink, #141414) 12.94%, transparent);\n}\n.certrev-reader.certrev-r-toned .certrev-r-side-links a {\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-side-links a:first-child {\n\tborder-right: 1px solid color-mix(in srgb, var(--cr-ink, #141414) 12.94%, transparent);\n}\n.certrev-reader.certrev-r-toned .certrev-r-pill {\n\tbox-shadow: 0 10px 26px color-mix(in srgb, var(--cr-ink, #141414) 16.08%, transparent);\n}\n.certrev-reader.certrev-r-toned .certrev-r-links a:not(:hover),\n.certrev-reader.certrev-r-toned .certrev-r-side-links a:not(:hover) {\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-bys .certrev-r-role {\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-card .certrev-r-bys + .certrev-r-foot {\n\tborder-top: 1px solid color-mix(in srgb, var(--cr-ink, #141414) 12.94%, transparent);\n}\n.certrev-reader.certrev-r-toned .certrev-r-side-links.single a:first-child {\n\tborder-right: 0;\n}\n.certrev-reader.certrev-r-toned .certrev-r-more > summary {\n\tcolor: var(--cr-ink, #141414) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-links a:hover {\n\tcolor: var(--cr-ba) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-side-links a:hover {\n\tcolor: var(--cr-ba) !important;\n}\n.certrev-reader.certrev-r-toned .certrev-r-more > summary:focus-visible {\n\toutline: 2px solid currentColor !important;\n\toutline-offset: 2px;\n}\n/* Reader fonts (generated from site-snapshot/site-fonts.css.txt: certrev.com's own faces and metric-matched\n * fallbacks, the same declarations but for the file, the committed copy on assets.certrev.com, and the stretch, which\n * keeps them to reader text; see build-cert-reader-css.mjs). */\n@font-face {\n\tfont-family: \"DM Sans Fallback\";\n\tfont-stretch: 101%;\n\tsrc: local(Arial);\n\tascent-override: 94.9%;\n\tdescent-override: 29.66%;\n\tline-gap-override: 0.0%;\n\tsize-adjust: 104.53%;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display Fallback\";\n\tfont-stretch: 101%;\n\tsrc: local(Times New Roman);\n\tascent-override: 97.25%;\n\tdescent-override: 22.56%;\n\tline-gap-override: 0.0%;\n\tsize-adjust: 111.26%;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono Fallback\";\n\tfont-stretch: 101%;\n\tsrc: local(Arial);\n\tascent-override: 75.79%;\n\tdescent-override: 22.29%;\n\tline-gap-override: 0.0%;\n\tsize-adjust: 134.59%;\n}\n\n@font-face {\n\tfont-family: \"Plus Jakarta Sans Fallback\";\n\tfont-stretch: 101%;\n\tsrc: local(Arial);\n\tascent-override: 98.88%;\n\tdescent-override: 21.15%;\n\tline-gap-override: 0.0%;\n\tsize-adjust: 104.98%;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: italic;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"DM Sans\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-dm-sans-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 900;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: italic;\n\tfont-weight: 900;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-italic-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 600;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 900;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Playfair Display\";\n\tfont-style: normal;\n\tfont-weight: 900;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-playfair-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 400;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"JetBrains Mono\";\n\tfont-style: normal;\n\tfont-weight: 700;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jetbrains-mono-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n\tfont-family: \"Plus Jakarta Sans\";\n\tfont-style: normal;\n\tfont-weight: 800;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jakarta-800-latin-ext.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,\n\t\tU+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n\n@font-face {\n\tfont-family: \"Plus Jakarta Sans\";\n\tfont-style: normal;\n\tfont-weight: 800;\n\tfont-display: swap;\n\tfont-stretch: 101%;\n\tsrc: url(\"https://assets.certrev.com/fonts/cert-reader-jakarta-800-latin.woff2\") format(\"woff2\");\n\tunicode-range:\n\t\tU+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191,\n\t\tU+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* CERTREV-READER-GEN:END */\n";
|
|
2
2
|
//# sourceMappingURL=reader-css.generated.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reader-css.generated.d.ts","sourceRoot":"","sources":["../../src/reader/reader-css.generated.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"reader-css.generated.d.ts","sourceRoot":"","sources":["../../src/reader/reader-css.generated.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,mk5CAAmk5C,CAAA"}
|