/* context-rosette 0.1.0: styles for the CSP-safe build. */
.ctxr {
  --navy: #14214d;
  --ink: #2a2f45;
  --ink-2: #565d78;
  --muted: #8a90a6;
  --line: rgba(20, 33, 77, 0.12);
  --page: #fbfbf9;
  --serif: "Iowan Old Style", "Charter", "Bitstream Charter", "Source Serif Pro", Georgia, serif;
  --sans: "Inter", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --mono: ui-monospace, "SF Mono", Menlo, "Cascadia Mono", "DejaVu Sans Mono", monospace;
}
.v3-stage { position: absolute; left: 0; top: 0; transform-origin: 0 0; font-family: var(--sans); color: var(--ink); -webkit-font-smoothing: antialiased; background: #fcfcfa; }
.v3-stage p, .v3-stage h3, .v3-stage ul { margin: 0; padding: 0; list-style: none; }
.v3-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.v3-nogl { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); font-size: 16px; color: var(--ink-2); }
.v3-title { position: absolute; transform: translate(-50%, -50%); white-space: nowrap; font: 400 29px/1 var(--serif); letter-spacing: 0.16em; color: var(--navy); display: flex; align-items: center; gap: 14px; }
.v3-lock { display: inline-flex; width: 26px; height: 26px; color: var(--navy); opacity: 0.85; }
.v3-lock svg { width: 26px; height: 26px; }
.v3-foot { position: absolute; transform: translate(-50%, -50%); white-space: nowrap; font: 400 11px/1 var(--serif); letter-spacing: 0.26em; color: #5a6283; }
.v3-leaders { position: absolute; left: 0; top: 0; overflow: visible; }
.v3-mark { position: absolute; left: 0; top: 0; overflow: visible; pointer-events: none; }
.v3-label { --h: 0; position: absolute; white-space: nowrap; }
.v3-label.is-right { transform: translateX(-100%); text-align: right; }
.v3-label-name { display: block; margin-top: -15px; font: 400 26px/30px var(--serif); color: color-mix(in srgb, var(--navy), var(--ink) calc(var(--h) * 100%)); }
.v3-label-name { transform-origin: 0 70%; will-change: transform; }
.v3-label.is-right .v3-label-name { transform-origin: 100% 70%; }
.v3-label-bar { --p: 0; display: flex; align-items: center; gap: 6px; margin: 4px 0 3px; }
.v3-label.is-right .v3-label-bar { flex-direction: row-reverse; }
.v3-label-track { position: relative; display: block; width: 64px; height: 3px; border-radius: 2px; overflow: hidden; background: color-mix(in srgb, var(--ink) 16%, transparent); }
.v3-label-track i { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 2px; background: var(--ink); box-shadow: 0 0 calc(var(--p) * 6px) var(--ink); }
.v3-label.is-right .v3-label-track i { left: auto; right: 0; }
.v3-label-bar b { font: 500 10px/1 var(--mono); color: #6d7392; }
.v3-label-cap { display: block; margin-top: 1px; font: italic 400 13.5px/1.25 var(--serif); color: color-mix(in srgb, #4d5573, var(--ink) calc(var(--h) * 80%)); }
.v3-label.is-empty .v3-label-cap { color: #a3a8ba; }
.v3-label-review { display: none; margin-top: 4px; font: 600 9.5px/1 var(--sans); letter-spacing: 0.04em; text-transform: uppercase; color: #6d7392; }
.v3-label-review::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 5px; border-radius: 50%; border: 1px dashed #8a90a6; vertical-align: -1px; }
.v3-label.is-review .v3-label-review { display: block; }
