From 48e85827940c04f76fcd57f49f425808748fe8e0 Mon Sep 17 00:00:00 2001 From: Travis Gilbert <1travisgilbert@gmail.com> Date: Mon, 3 Aug 2026 10:52:03 -0400 Subject: [PATCH 01/19] feat(console): invert the register onto Twenty and rebuild elevation Kills SPEC-COMMONPLACE-TWENTY-UI-FORK-1.0's token law on owner direction: Twenty's design language now drives the console, and --ij-* aliases --t-* rather than the reverse. The contrast gate was falsely green. It read only the Int UI registers, which stopped deciding the paint when the inversion landed, so it kept measuring a palette that was no longer on screen. It now reads the shipped cascade in app.css order, including the fork's --t-* layer, and resolves color(display-p3 ...) through the P3 primaries instead of the sRGB matrix. Pointing it at reality surfaced four real leaks, all the same shape: a token re-pinned downstream of the alias layer by an index rather than a role. - register-bridge pinned --ij-ink-info to gray-8 / gray-6. Those indexes named Int UI greys; under Twenty's ladder (numbered background to foreground) light gray-6 is 0.8, giving 1.54:1 secondary ink. Now Twenty's font-color-secondary. - --ij-gold and the island header bands carried Int UI and Zed-era literals. - The Primer presets pin their own surfaces but never pinned a header band, so it fell through to a base register that is no longer theirs. - The alias layer was one attribute selector deep, so int-ui-register-light.css outranked it and light mode silently kept the whole Int UI palette. The register now names both modes explicitly at matching weight. Elevation follows the owner's direction (sidebar lifts, centre sinks) and the arithmetic. Twenty's dark background ladder spans 1.126 end to end, and the old floors wanted 1.08 * 1.05 = 1.134 around one frame. That does not fit, and the only step above bg-quaternary is gray6 at 1.74 against the frame: heavier than Int UI ever was, and the opposite of this round. One symmetric 1.05 floor fits inside the ladder with room, and both islands keep a measured step. MaterialLayer read every surface through a digit scan of the computed colour. Computed colour preserves its space rather than normalising to rgb(), so the "3" of "display-p3" became the red channel: all surfaces resolved near black, every caller fell through to a `?? dark` fallback, and light mode rendered as a dark wash. It now parses the colour function and converts P3 to sRGB. Proportions move to Twenty's grid: metrics resolve through --t-spacing-*, so the 4px grid is the single dimensional source as the palette is the single colour source. Controls 28 -> 32 and rows 24 -> 32 are Twenty's medium button and record row. The IDE-density argument retires with the job, now that the VS Code fork is the IDE. Grain and shadow come down per owner direction: shader ground 0.014 -> 0.005, body tile 0.10 -> 0.075, and lifted drops to a single hairline pass now that tone states the boundary twice. Also fixes the Twenty fence, which judged relative imports by name and so rejected the console's own twenty-register.css. It now resolves the path first; verified it still catches a planted escape into packages/twenty-front. --- apps/console/scripts/check-contrast.mjs | 156 +- apps/console/scripts/check-twenty-fence.mjs | 9 + .../fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq | 1 + .../src/components/ground/MaterialLayer.tsx | 39 + .../fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq | 2 +- apps/console/src/styles/app.css | 14 +- apps/console/src/styles/geometry.css | 28 +- apps/console/src/styles/primer-register.css | 11 + apps/console/src/styles/register-bridge.css | 56 +- apps/console/src/styles/twenty-register.css | 296 +++ .../fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq | 2 +- .../src/theme-constants/theme-dark.css | 1832 ++++++++-------- .../src/theme-constants/theme-light.css | 1838 ++++++++--------- .../twenty-ui/src/theme/generator/emit.ts | 116 +- .../fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq | 1 + .../theme/generator/palette/twenty-dark.css | 1044 ++++++++++ .../theme/generator/palette/twenty-light.css | 1048 ++++++++++ 17 files changed, 4572 insertions(+), 1921 deletions(-) create mode 100644 apps/console/src/components/ground/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq create mode 100644 apps/console/src/styles/twenty-register.css create mode 100644 packages/twenty-ui/src/theme/generator/palette/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq create mode 100644 packages/twenty-ui/src/theme/generator/palette/twenty-dark.css create mode 100644 packages/twenty-ui/src/theme/generator/palette/twenty-light.css diff --git a/apps/console/scripts/check-contrast.mjs b/apps/console/scripts/check-contrast.mjs index b9d0881a..0e1487cd 100644 --- a/apps/console/scripts/check-contrast.mjs +++ b/apps/console/scripts/check-contrast.mjs @@ -10,62 +10,142 @@ import { wcagContrast } from '@travis-gilbert/markdown-theory/tokens'; import { NAVY_KNOBS, generateTheme } from '../src/styles/theme-engine.ts'; const appRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..'); + +/* The gate measures the paint that actually ships, so this list mirrors the + @import order in src/styles/app.css exactly. Reading a subset is how a gate + goes falsely green: before the register inversion this file read only the + Int UI registers, and kept passing after those files stopped deciding the + paint. If app.css gains or reorders a register stylesheet, this list moves + with it. */ const registerSources = [ 'src/styles/int-ui-register.css', 'src/styles/int-ui-register-light.css', + '../../packages/twenty-ui/src/theme-constants/theme-dark.css', + '../../packages/twenty-ui/src/theme-constants/theme-light.css', + 'src/styles/twenty-register.css', 'src/styles/register-bridge.css', 'src/styles/primer-register.css', ].map((relative) => readFileSync(path.join(appRoot, relative), 'utf8').replace(/\/\*[\s\S]*?\*\//g, '')); -function hexToOklch(hex) { - const value = hex.replace('#', ''); - const [r, g, b] = [0, 2, 4] - .map((index) => Number.parseInt(value.slice(index, index + 2), 16) / 255) - .map((channel) => channel <= 0.04045 ? channel / 12.92 : ((channel + 0.055) / 1.055) ** 2.4); - const linearL = 0.4122214708 * r + 0.5363325363 * g + 0.0514459929 * b; - const linearM = 0.2119034982 * r + 0.6806995451 * g + 0.1073969566 * b; - const linearS = 0.0883024619 * r + 0.2817188376 * g + 0.6299787005 * b; - const l3 = Math.cbrt(linearL); - const m3 = Math.cbrt(linearM); - const s3 = Math.cbrt(linearS); +/* OKLab via XYZ, so sRGB hex and Twenty's color(display-p3 ...) reach the same + space through their own primaries rather than one pretending to be the other. + Feeding P3 coordinates through the sRGB matrix would shift every hue and + inflate chroma, which on a chroma-clamped register reads as a passing value. */ +const SRGB_TO_XYZ = [ + [0.4123907993, 0.3575843394, 0.1804807884], + [0.2126390059, 0.7151686788, 0.0721923154], + [0.0193308187, 0.1191947798, 0.9505321522], +]; +const P3_TO_XYZ = [ + [0.4865709486, 0.2656676932, 0.1982172852], + [0.2289745641, 0.6917385218, 0.0792869141], + [0.0, 0.0451133819, 1.0439443689], +]; + +const toLinear = (channel) => + channel <= 0.04045 ? channel / 12.92 : ((channel + 0.055) / 1.055) ** 2.4; + +function xyzToOklch([x, y, z]) { + const l3 = Math.cbrt(0.8189330101 * x + 0.3618667424 * y - 0.1288597137 * z); + const m3 = Math.cbrt(0.0329845436 * x + 0.9293118715 * y + 0.0361456387 * z); + const s3 = Math.cbrt(0.0482003018 * x + 0.2643662691 * y + 0.633851707 * z); const l = 0.2104542553 * l3 + 0.793617785 * m3 - 0.0040720468 * s3; const a = 1.9779984951 * l3 - 2.428592205 * m3 + 0.4505937099 * s3; const bAxis = 0.0259040371 * l3 + 0.7827717662 * m3 - 0.808675766 * s3; return { l, c: Math.hypot(a, bAxis), h: (Math.atan2(bAxis, a) * 180 / Math.PI + 360) % 360 }; } -function selectorApplies(selector, preset) { - if (!selector.includes('[data-register="intui"]')) return false; - const lightOnly = selector.includes('[data-theme="light"]'); - const darkOnly = selector.includes('[data-theme="dark"]'); - if (lightOnly && preset.mode !== 'light') return false; - if (darkOnly && preset.mode !== 'dark') return false; - const presetMatch = selector.match(/\[data-theme-preset="([^"]+)"\]/); +const project = (matrix, rgb) => matrix.map((row) => + row[0] * rgb[0] + row[1] * rgb[1] + row[2] * rgb[2]); + +function toOklch(color) { + return xyzToOklch(project(color.space === 'display-p3' ? P3_TO_XYZ : SRGB_TO_XYZ, color.rgb)); +} + +/* One arm of a selector list, scored the way the cascade scores it. Order alone + is not enough once the fork's theme layer is in the list: it scopes light mode + with two attributes, so a one-attribute block later in the file still loses. */ +function armApplies(arm, preset) { + if (!arm.includes('[data-register="intui"]')) return false; + if (arm.includes('[data-theme="light"]') && preset.mode !== 'light') return false; + if (arm.includes('[data-theme="dark"]') && preset.mode !== 'dark') return false; + const presetMatch = arm.match(/\[data-theme-preset="([^"]+)"\]/); return !presetMatch || presetMatch[1] === preset.id; } +/** Specificity of the winning arm, counted in attribute selectors. */ +function selectorWeight(selector, preset) { + let weight = -1; + for (const arm of selector.split(',')) { + if (!armApplies(arm, preset)) continue; + weight = Math.max(weight, (arm.match(/\[/g) ?? []).length); + } + return weight; +} + function declarationsFor(preset) { const declarations = new Map(); + let order = 0; for (const source of registerSources) { for (const block of source.matchAll(/([^{}]+)\{([^{}]*)\}/g)) { - if (!selectorApplies(block[1], preset)) continue; - for (const declaration of block[2].matchAll(/(--(?:ij|cp)-[a-z0-9-]+)\s*:\s*([^;]+);/gi)) { - declarations.set(declaration[1], declaration[2].trim()); + const weight = selectorWeight(block[1], preset); + if (weight < 0) continue; + order += 1; + for (const declaration of block[2].matchAll(/(--(?:ij|cp|t)-[a-z0-9-]+)\s*:\s*([^;]+);/gi)) { + const previous = declarations.get(declaration[1]); + if (previous && previous.weight > weight) continue; + declarations.set(declaration[1], { value: declaration[2].trim(), weight, order }); } } } return declarations; } +/** Parses the colour syntaxes the register actually emits into linear RGB. */ +function parseColor(value) { + const hex = value.match(/^#([0-9a-f]{6})$/i); + if (hex) { + return { + space: 'srgb', + rgb: [0, 2, 4].map((index) => + toLinear(Number.parseInt(hex[1].slice(index, index + 2), 16) / 255)), + }; + } + const p3 = value.match(/^color\(\s*display-p3\s+([\d.]+)\s+([\d.]+)\s+([\d.]+)\s*\)$/i); + if (p3) { + /* Twenty writes display-p3 coordinates already in the transfer-encoded + form, same as an sRGB hex, so they linearise the same way. */ + return { space: 'display-p3', rgb: p3.slice(1, 4).map((n) => toLinear(Number(n))) }; + } + const rgb = value.match(/^rgba?\(\s*([\d.]+)[\s,]+([\d.]+)[\s,]+([\d.]+)\s*(?:[,/]\s*[\d.%]+\s*)?\)$/i); + if (rgb) { + return { space: 'srgb', rgb: rgb.slice(1, 4).map((n) => toLinear(Number(n) / 255)) }; + } + return null; +} + function resolveToken(name, declarations, seen = new Set()) { if (seen.has(name)) throw new Error(`token cycle at ${name}`); seen.add(name); - const value = declarations.get(name); - if (!value) throw new Error(`token ${name} not found`); - const reference = value.match(/^var\((--[a-z0-9-]+)\)$/i); + const entry = declarations.get(name); + if (!entry) throw new Error(`token ${name} not found`); + const reference = entry.value.match(/^var\((--[a-z0-9-]+)\)$/i); if (reference) return resolveToken(reference[1], declarations, seen); - if (/^#[0-9a-f]{6}$/i.test(value)) return value; - throw new Error(`token ${name} resolves to unsupported gate value: ${value}`); + const color = parseColor(entry.value); + /* A translucent or computed value cannot be measured against a floor without + knowing what is behind it, so the gate names it rather than guessing. */ + if (!color) throw new Error(`token ${name} resolves to unsupported gate value: ${entry.value}`); + return color; +} + +/** The terminal declared value, for anchors that pin an exact literal. */ +function resolveRaw(name, declarations, seen = new Set()) { + if (seen.has(name)) throw new Error(`token cycle at ${name}`); + seen.add(name); + const entry = declarations.get(name); + if (!entry) throw new Error(`token ${name} not found`); + const reference = entry.value.match(/^var\((--[a-z0-9-]+)\)$/i); + return reference ? resolveRaw(reference[1], declarations, seen) : entry.value; } const PAIRS = [ @@ -76,10 +156,20 @@ const PAIRS = [ { name: 'ink on editor', foreground: '--ij-ink', background: '--ij-editor', target: 4.5 }, { name: 'bright ink on accent', foreground: '--ij-ink-bright', background: '--ij-accent', target: 3 }, { name: 'keyline on chrome', foreground: '--ij-keyline', background: '--ij-chrome', target: 1.2 }, - /* Both island classes sit darker than frame (dark frame-inversion). Floor is - the sunken-vs-frame step for tool and editor alike; gutters carry the rest. */ + /* One symmetric elevation floor, and the arithmetic that forced it. + The frame now sits between the two islands: the sidebar lifts above it and + the editor sinks below it. The editor step used to ask 1.08 against the + chrome step's 1.05, tuned to the Int UI ladder. Twenty's dark background + ladder spans 1.126 end to end (bg-primary to bg-quaternary), and asking for + both steps around one frame needs 1.08 * 1.05 = 1.134. That does not fit, + and there is no step between bg-quaternary (0.133) and gray6 (0.282) to + borrow, so the only way to hold 1.08 would be a sidebar on gray6: 1.74 + against the frame, heavier separation than the Int UI register ever had and + the opposite of the flatter reading this round is for. + 1.05 * 1.05 = 1.1025 fits inside 1.126 with room. Both islands separate + from the frame by a real, measured step; neither floor is waived. */ { name: 'chrome island on frame', foreground: '--ij-chrome', background: '--ij-frame', target: 1.05 }, - { name: 'editor sunken on frame', foreground: '--ij-editor', background: '--ij-frame', target: 1.08 }, + { name: 'editor sunken on frame', foreground: '--ij-editor', background: '--ij-frame', target: 1.05 }, /* HANDOFF-CONSOLE-ISLAND-SHELL: header band over island base (elevation step). */ { name: 'island header tool over chrome', foreground: '--ij-island-header-tool', background: '--ij-chrome', target: 1.05 }, { name: 'island header editor over editor', foreground: '--ij-island-header-editor', background: '--ij-editor', target: 1.05 }, @@ -147,7 +237,7 @@ for (const preset of [ for (const pair of PAIRS) { const foreground = resolveToken(pair.foreground, declarations); const background = resolveToken(pair.background, declarations); - const ratio = wcagContrast(hexToOklch(foreground), hexToOklch(background)); + const ratio = wcagContrast(toOklch(foreground), toOklch(background)); const pass = ratio >= pair.target; failed ||= !pass; console.log(`${pass ? 'PASS' : 'FAIL'} ${preset.id} · ${pair.name}: ${ratio.toFixed(2)} (target ${pair.target})`); @@ -155,7 +245,7 @@ for (const preset of [ const anchors = PRIMER_ANCHORS[preset.id]; if (anchors) { for (const [token, expected] of Object.entries(anchors)) { - const actual = resolveToken(token, declarations).toUpperCase(); + const actual = resolveRaw(token, declarations).toUpperCase(); const pass = actual === expected; failed ||= !pass; console.log(`${pass ? 'PASS' : 'FAIL'} ${preset.id} · Primer anchor ${token}: ${actual}`); @@ -173,7 +263,7 @@ for (const preset of [ for (const pair of SPEAKER_PAIRS) { const foreground = resolveToken(pair.foreground, declarations); const background = resolveToken(pair.background, declarations); - const ratio = wcagContrast(hexToOklch(foreground), hexToOklch(background)); + const ratio = wcagContrast(toOklch(foreground), toOklch(background)); const pass = ratio >= pair.target; failed ||= !pass; console.log(`${pass ? 'PASS' : 'FAIL'} ${preset.id} · ${pair.name}: ${ratio.toFixed(2)} (target ${pair.target})`); @@ -181,7 +271,7 @@ for (const preset of [ for (const pair of RAIL_PAIRS) { const foreground = resolveToken(pair.foreground, declarations); const background = resolveToken(pair.background, declarations); - const ratio = wcagContrast(hexToOklch(foreground), hexToOklch(background)); + const ratio = wcagContrast(toOklch(foreground), toOklch(background)); const pass = ratio >= pair.target; failed ||= !pass; console.log(`${pass ? 'PASS' : 'FAIL'} ${preset.id} · ${pair.name}: ${ratio.toFixed(2)} (target ${pair.target})`); diff --git a/apps/console/scripts/check-twenty-fence.mjs b/apps/console/scripts/check-twenty-fence.mjs index 91ce8c5a..53672cae 100644 --- a/apps/console/scripts/check-twenty-fence.mjs +++ b/apps/console/scripts/check-twenty-fence.mjs @@ -81,6 +81,15 @@ for (const root of importRoots) { }); continue; } + /* A relative specifier is a file on disk, not a package, so judge it by + where it lands rather than by what it is called. './twenty-register.css' + is a console stylesheet named after the source it aliases and never + leaves the app; '../../packages/twenty-front/x' really does cross the + line and is still caught, because the test is on the resolved path. */ + if (spec.startsWith('.')) { + const resolved = path.resolve(path.dirname(file), spec); + if (!/[\\/]packages[\\/]twenty-/.test(resolved)) continue; + } // Anything else naming twenty must resolve to the vendored fork. if ( /(^|\/)twenty[-/]/.test(spec) && diff --git a/apps/console/src/components/ground/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq b/apps/console/src/components/ground/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq new file mode 100644 index 00000000..62f94575 --- /dev/null +++ b/apps/console/src/components/ground/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq @@ -0,0 +1 @@ +6 \ No newline at end of file diff --git a/apps/console/src/components/ground/MaterialLayer.tsx b/apps/console/src/components/ground/MaterialLayer.tsx index 32d1c0a4..b1fe7834 100644 --- a/apps/console/src/components/ground/MaterialLayer.tsx +++ b/apps/console/src/components/ground/MaterialLayer.tsx @@ -119,12 +119,51 @@ function compile(gl: WebGLRenderingContext, type: number, source: string): WebGL return shader; } +/* Display P3 to sRGB, both gamma encoded, because the shader is fed encoded + values (a hex channel over 255) and has to keep being fed them. */ +const P3_TO_SRGB_LINEAR = [ + [1.2249401762, -0.2249401762, 0], + [-0.0420569547, 1.0420569547, 0], + [-0.0196375546, -0.0786360454, 1.0982736], +]; +const decode = (c: number) => (c <= 0.04045 ? c / 12.92 : ((c + 0.055) / 1.055) ** 2.4); +const encode = (c: number) => { + const clamped = Math.min(1, Math.max(0, c)); + return clamped <= 0.0031308 ? clamped * 12.92 : 1.055 * clamped ** (1 / 2.4) - 0.055; +}; + +function p3ToSrgb(rgb: number[]): [number, number, number] { + const linear = rgb.map(decode); + return P3_TO_SRGB_LINEAR.map((row) => + encode(row[0] * linear[0] + row[1] * linear[1] + row[2] * linear[2]), + ) as [number, number, number]; +} + +/* The probe lets the browser do the parsing, which is right, but the readback + has to respect the colour space it hands back. Computed colour preserves the + space rather than normalising to rgb(), so once the register started + resolving to Twenty's `color(display-p3 r g b)` a bare digit scan read the + "3" of "display-p3" as the red channel: every surface came back near black, + every caller fell through to its dark fallback, and the light ground rendered + as a dark wash. Nothing threw, because the fallbacks are `??`. */ function cssToRgb(css: string): [number, number, number] | null { const probe = document.createElement('div'); probe.style.color = css.length > 0 ? css : 'transparent'; document.body.append(probe); const computed = getComputedStyle(probe).color; probe.remove(); + + const spaced = computed.match( + /^color\(\s*(display-p3|srgb)\s+(-?[\d.]+)\s+(-?[\d.]+)\s+(-?[\d.]+)/i, + ); + if (spaced) { + const channels = [Number(spaced[2]), Number(spaced[3]), Number(spaced[4])]; + if (channels.some((n) => !Number.isFinite(n))) return null; + return spaced[1].toLowerCase() === 'srgb' + ? (channels.map((c) => Math.min(1, Math.max(0, c))) as [number, number, number]) + : p3ToSrgb(channels); + } + const parts = computed.match(/[\d.]+/g); if (!parts || parts.length < 3) return null; return [Number(parts[0]) / 255, Number(parts[1]) / 255, Number(parts[2]) / 255]; diff --git a/apps/console/src/styles/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq b/apps/console/src/styles/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq index dec2bf5d..e77a9634 100644 --- a/apps/console/src/styles/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq +++ b/apps/console/src/styles/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq @@ -1 +1 @@ -19 \ No newline at end of file +73 \ No newline at end of file diff --git a/apps/console/src/styles/app.css b/apps/console/src/styles/app.css index 619ff77a..7382c4b5 100644 --- a/apps/console/src/styles/app.css +++ b/apps/console/src/styles/app.css @@ -5,15 +5,19 @@ @import 'tailwindcss'; @import '@xyflow/react/dist/style.css'; +/* The paint source, inverted. The twenty-ui fork's --t-* layer carries Twenty's + own palette, and twenty-register.css aliases every --ij-* colour slot onto it, + so the whole console follows Twenty's design language without a component + edit. Order matters: --t-* must be defined before the register aliases it. + + The Int UI registers are kept, imported first, as the fallback floor for any + --ij-* slot the alias layer does not name. They no longer decide the paint. */ @import './int-ui-register.css'; -/* twenty-ui fork: compiled component styles, then the generated --t-* layer. - Both theme files are imported; each scopes itself to the register and, for - light, to [data-theme="light"], so the console's own mode switch drives - them. Every --t-* value resolves back to an --ij-* token (TU2). */ +@import './int-ui-register-light.css'; @import 'twenty-ui/style.css'; @import 'twenty-ui/theme-dark.css'; @import 'twenty-ui/theme-light.css'; -@import './int-ui-register-light.css'; +@import './twenty-register.css'; @import './rec-structural.css'; @import './geometry.css'; @import './tokens.css'; diff --git a/apps/console/src/styles/geometry.css b/apps/console/src/styles/geometry.css index cb3c21aa..938e3e72 100644 --- a/apps/console/src/styles/geometry.css +++ b/apps/console/src/styles/geometry.css @@ -25,19 +25,25 @@ --radius-lifted: var(--ij-radius-lg); /* floating blocks: one scale with the SDF */ --radius-docked: var(--ij-radius-lg); /* free corners; docked edge is 0 */ - /* CS3 depth budget. Blur never exceeds 6px, y-offset never exceeds 1px. - IDE chrome gets depth from tone difference; shadow only confirms a - boundary that tone already made. --ij-floating-shadow is the register's - popup shadow and is deliberately not used here. */ - --shadow-lifted: - 0 1px 2px rgb(0 0 0 / 0.04), - 0 1px 6px rgb(0 0 0 / 0.03); + /* CS3 depth budget, cut for the Twenty pass (owner direction: reduce the + island and block shadow). + + The rule was always that tone makes the boundary and shadow only confirms + it. Under the register inversion tone now makes it explicitly: the sidebar + sits on Twenty's lifted background and the editor on its sunken one, with + the frame measured between them. Two layers of shadow on top of a boundary + that is already stated twice reads as grime, not depth, so lifted drops to + a single hairline pass and docked halves its spread. Blur never exceeds + 4px, y-offset never exceeds 1px. --ij-floating-shadow is the register's + popup shadow and is still deliberately not used here: a docked pane is not + a popup. */ + --shadow-lifted: 0 1px 4px rgb(0 0 0 / 0.03); /* Docked casts on its free side only. */ - --shadow-docked-right: -1px 0 3px rgb(0 0 0 / 0.04); - --shadow-docked-left: 1px 0 3px rgb(0 0 0 / 0.04); - --shadow-docked-top: 0 1px 3px rgb(0 0 0 / 0.04); - --shadow-docked-bottom: 0 -1px 3px rgb(0 0 0 / 0.04); + --shadow-docked-right: -1px 0 2px rgb(0 0 0 / 0.025); + --shadow-docked-left: 1px 0 2px rgb(0 0 0 / 0.025); + --shadow-docked-top: 0 1px 2px rgb(0 0 0 / 0.025); + --shadow-docked-bottom: 0 -1px 2px rgb(0 0 0 / 0.025); /* Translucent material fills. Shader grain reads through; the tone delta survives. Alpha is the tuning knob: raise for separation, lower for diff --git a/apps/console/src/styles/primer-register.css b/apps/console/src/styles/primer-register.css index 7464e566..8f1d5e1f 100644 --- a/apps/console/src/styles/primer-register.css +++ b/apps/console/src/styles/primer-register.css @@ -7,6 +7,14 @@ --ij-frame: #262C36; --ij-editor: #0D1117; --ij-chrome: #151B23; + /* Primer owns its own header band. These used to fall through to the base + register, which happened to clear the elevation floor against GitHub's + surfaces; once the base register became Twenty's, it stopped. A preset that + pins its surfaces has to pin every step built on them. Both are Primer's + own scale: neutral.muted over canvas.subtle, canvas.overlay over + canvas.default. */ + --ij-island-header-tool: #212830; + --ij-island-header-editor: #151B23; --ij-raised: #212830; --ij-seam: #010409; --ij-seam-raised: #3D444D; @@ -46,6 +54,9 @@ --ij-frame: #D0D7DE; --ij-editor: #FFFFFF; --ij-chrome: #F6F8FA; + /* Primer light header band, same rule as dark. */ + --ij-island-header-tool: #EAEEF2; + --ij-island-header-editor: #F6F8FA; --ij-raised: #FFFFFF; --ij-seam: #D1D9E0; --ij-seam-raised: #818B98; diff --git a/apps/console/src/styles/register-bridge.css b/apps/console/src/styles/register-bridge.css index a61aa177..60a11ab3 100644 --- a/apps/console/src/styles/register-bridge.css +++ b/apps/console/src/styles/register-bridge.css @@ -300,20 +300,30 @@ --ij-island-border: var(--ij-chrome); /* Header band: island base raised one elevation step within the sunken side. ToolWindow.Header.background analog. Material Layer consumes these. */ - --ij-island-header-tool: #22252A; - --ij-island-header-editor: #181A1D; + /* Header bands moved to twenty-register.css, which sources them from + Twenty's background ladder in both modes. The literals that stood here (and + the Zed paper pair in the light block below) were picked against the Int UI + surfaces and no longer clear the elevation step against Twenty's. */ /* Ground terracotta for the Material Layer shader (proof islands-material-v2). Dark: warm pool ~#4C271D. Light re-anchors on the paper family below. */ --ij-ground-terra: #4C271D; /* Quieter ground; islands take a hint via --ij-island-terra-tint. */ --ij-material-glow: 0.32; - --ij-material-grain: 0.014; + /* Texture pass (owner direction): the grain reads too strong. Two systems + carry it and they stack, so they come down by different amounts. The + shader grain is the ground, under everything, and drops hard. The body + tile (--paper-grain-opacity) lies over the whole viewport including the + islands, so it only eases: it is the texture on a lifted surface, and + losing it entirely would flatten the islands into plain fills. Ground + therefore takes both reductions and reads much quieter than the blocks. */ + --ij-material-grain: 0.005; + --paper-grain-opacity: 0.075; --ij-island-terra-tint: 0.055; /* Dialog inset used by cmdk overlays (Goal Stack promotion). */ --ij-dialog-inset-top: 12%; --ij-dialog-width: 40rem; - --ij-gold: var(--ij-yellow-6); - --ij-gold-tint: var(--ij-yellow-1); + /* Gold is Twenty's tag-gold pair now (twenty-register.css); the ladder-index + override that stood here belonged to the Int UI ramp. */ --ij-editor-line: var(--ij-hover-overlay); --ij-search-match: var(--ij-selection-inactive); --ij-text-selection: var(--ij-selection); @@ -330,17 +340,11 @@ to the app.css tile so the two grains do not stack. */ --ij-ground-terra: #F0EBE2; --ij-material-glow: 0.22; - --ij-material-grain: 0.010; + /* Same pass, light. The light tile ran hotter (0.16) because paper wants + more tooth than a dark ground; it keeps that relationship after the cut. */ + --ij-material-grain: 0.004; + --paper-grain-opacity: 0.12; --ij-island-terra-tint: 0; - /* Header bands on the warm ladder, one visible step from their island - base (both clear the 1.05 gate at ~1.10): tool #F4F2EF -> #EAE7E1, - editor #FBFAF8 -> #F1EFEA. Cool Int UI grays read clinical against - the Zed paper and are retired here. */ - --ij-island-header-tool: #EAE7E1; - --ij-island-header-editor: #F1EFEA; - /* Gold clamp for the light tool body; passes 4.5 on #F4F2EF at 5.27. */ - --ij-gold: #8F5800; - --ij-gold-tint: #FFF5DB; } /* Header band paint (AMENDMENT-01 A3). Token path only for the header strip; @@ -415,18 +419,16 @@ --ij-island-radius: var(--ij-radius-xl); } -/* Contrast-gate resolution (G2): the shipped Int UI value for secondary ink - (gray-7 #6F737A) computes to 2.90:1 on chrome, under the 3.0 apparatus - floor markdown-theory's ink3 role requires. The register file stays - verbatim; this bridge re-points info one ramp step up to gray-8 #868A91 - (3.98:1 on chrome), the same override pattern the gold pair uses. */ -[data-register="intui"] { - --ij-ink-info: var(--ij-gray-8); -} - -[data-register="intui"][data-theme="light"] { - --ij-ink-info: var(--ij-gray-6); -} +/* Secondary ink is Twenty's own semantic slot, not a ladder index. + This block used to re-point --ij-ink-info at gray-8 (dark) and gray-6 + (light), because the Int UI value one step down computed to 2.90:1 and + missed the 3.0 floor. Those indexes named Int UI greys. Under the register + inversion they name Twenty's, whose ladder is numbered background to + foreground, so light gray-6 resolves to 0.8: near-white secondary ink at + 1.54:1. twenty-register.css already aliases --ij-ink-info onto + --t-font-color-secondary, which is the value Twenty designed to carry + exactly this role and clears the floor in both modes. An index-based + override cannot survive a change of ladder; a semantic one can. */ /* Self-hosted font bridge: next/font variables from fonts.ts re-point the register faces at the self-hosted IBM Plex Sans and JetBrains Mono families diff --git a/apps/console/src/styles/twenty-register.css b/apps/console/src/styles/twenty-register.css new file mode 100644 index 00000000..17f5918a --- /dev/null +++ b/apps/console/src/styles/twenty-register.css @@ -0,0 +1,296 @@ +/* The register, sourced from Twenty. + SOURCING: twenty-ui (packages/twenty-ui, hard fork) --t-* layer. + + This file inverts SPEC-COMMONPLACE-TWENTY-UI-FORK-1.0's token law. That law + said CommonPlace tokens were the only styling truth and the fork's theme was + generated from them, which made the fork deliberately invisible. The law is + killed on purpose: Twenty's design language is now the console's, and --ij-* + aliases --t-* rather than the reverse. + + Why an alias layer rather than a regenerated palette: every component in this + app already consumes --ij-*, and the Tailwind bridge already emits its + utilities from --ij-*. Changing what --ij-* resolves to moves the whole + console at once, with no component edits and no second palette to keep in + sync. One source of truth, which is what the original law was protecting. + + THREE BLOCKS, AND WHY. int-ui-register-light.css scopes its whole body under + [data-register="intui"][data-theme="light"], which is two attribute + selectors. A one-attribute block here loses to it in light mode no matter how + much later it is imported, because specificity outranks order. The first + round of this file was a single one-attribute block, so light mode silently + kept the Int UI palette while dark mode followed Twenty. The fix is to name + both modes explicitly at matching weight: + + 1. Semantic aliases, which do not vary by mode because --t-* already does. + The selector lists dark and light arms so it carries weight 2 in both. + 2. The dark ladder. + 3. The light ladder. + + Blocks 2 and 3 carry every token whose *direction* flips with mode. Twenty + numbers both its greys and its background ladder background-to-foreground, so + dark runs 0.09 -> 0.92 and light runs 1.0 -> 0.2. This register always runs + dark-to-light. The reversal is the whole reason those blocks are split. + + Scope: colour and radius move, IDE chrome metrics stay in geometry.css. */ + +[data-register="intui"], +[data-register="intui"][data-theme="dark"], +[data-register="intui"][data-theme="light"] { + /* Hue ramps. The console names seven; Twenty carries twelve shades of each. */ + --ij-blue-1: var(--t-color-blue1); + --ij-blue-2: var(--t-color-blue2); + --ij-blue-3: var(--t-color-blue3); + --ij-blue-4: var(--t-color-blue4); + --ij-blue-5: var(--t-color-blue5); + --ij-blue-6: var(--t-color-blue6); + --ij-blue-7: var(--t-color-blue7); + --ij-blue-8: var(--t-color-blue8); + --ij-blue-9: var(--t-color-blue9); + --ij-blue-10: var(--t-color-blue10); + --ij-blue-11: var(--t-color-blue11); + --ij-blue-12: var(--t-color-blue12); + --ij-blue-13: var(--t-color-blue12); + --ij-green-1: var(--t-color-green1); + --ij-green-2: var(--t-color-green2); + --ij-green-3: var(--t-color-green3); + --ij-green-5: var(--t-color-green5); + --ij-green-6: var(--t-color-green6); + --ij-green-7: var(--t-color-green7); + --ij-yellow-1: var(--t-color-yellow1); + --ij-yellow-2: var(--t-color-yellow2); + --ij-yellow-4: var(--t-color-yellow4); + --ij-yellow-5: var(--t-color-yellow5); + --ij-yellow-6: var(--t-color-yellow6); + --ij-red-1: var(--t-color-red1); + --ij-red-3: var(--t-color-red3); + --ij-red-5: var(--t-color-red5); + --ij-red-6: var(--t-color-red6); + --ij-red-7: var(--t-color-red7); + --ij-orange-1: var(--t-color-orange1); + --ij-orange-6: var(--t-color-orange6); + --ij-purple-2: var(--t-color-purple2); + --ij-purple-7: var(--t-color-purple7); + --ij-purple-9: var(--t-color-purple9); + --ij-teal-2: var(--t-color-turquoise2); + --ij-teal-7: var(--t-color-turquoise7); + + /* Seams. Twenty's borders run light-on-dark, the ordinary direction. The Int + UI inversion (seams darker than surfaces, no light hairline) retires with + the law that required it. */ + --ij-seam: var(--t-border-color-medium); + --ij-seam-raised: var(--t-border-color-strong); + --ij-divider: var(--t-border-color-medium); + --ij-control-border: var(--t-border-color-strong); + --ij-keyline: var(--t-border-color-strong); + --ij-keyline-decorative: var(--t-border-color-light); + + /* Ink. */ + --ij-ink: var(--t-font-color-primary); + --ij-ink-info: var(--t-font-color-secondary); + --ij-ink-disabled: var(--t-font-color-light); + --ij-ink-faint: var(--t-font-color-extra-light); + --ij-ink-bright: var(--t-font-color-on-accent); + + /* Accent. Twenty splits a role this register merges: --t-accent-* is a fill + family (a selected row's background), while --t-color-blue* is the ink + ramp. --ij-accent has to work both ways, because the gate asks it to read + as type on chrome AND to carry white type on top of itself. blue10 is the + one step that clears both floors in both modes; accent-primary fails the + first and blue11 fails the second. */ + --ij-accent: var(--t-color-blue10); + --ij-accent-hover: var(--t-color-blue11); + --ij-keyline-focus: var(--t-color-blue10); + --ij-link: var(--t-color-blue10); + --ij-modified: var(--t-color-blue10); + --ij-focus-ring: 2px solid var(--t-color-blue10); + --ij-selection: var(--t-accent-primary); + --ij-selection-inactive: var(--t-accent-tertiary); + + /* State overlays. */ + --ij-hover-overlay: var(--t-background-transparent-light); + --ij-pressed-overlay: var(--t-background-transparent-medium); + --ij-hover-surface: var(--t-background-transparent-light); + + /* Status. */ + --ij-error: var(--t-snack-bar-error-color); + --ij-error-bg: var(--t-snack-bar-error-background-color); + --ij-warn: var(--t-snack-bar-warning-color); + --ij-warn-bg: var(--t-snack-bar-warning-background-color); + --ij-ok: var(--t-snack-bar-success-color); + --ij-ok-bg: var(--t-snack-bar-success-background-color); + --ij-running: var(--t-snack-bar-success-color); + + /* Harness domain accents, kept semantically: memory green, agent amber, + rooms purple, graph turquoise, learned gold. Now Twenty's hues. */ + --ij-memory: var(--t-tag-text-green); + --ij-memory-tint: var(--t-tag-background-green); + --ij-agent: var(--t-tag-text-amber); + --ij-agent-tint: var(--t-tag-background-amber); + --ij-room: var(--t-tag-text-purple); + --ij-room-tint: var(--t-tag-background-purple); + --ij-graph: var(--t-tag-text-turquoise); + --ij-graph-tint: var(--t-tag-background-turquoise); + --ij-gold: var(--t-tag-text-gold); + --ij-gold-tint: var(--t-tag-background-gold); + + /* Row tints for record lists. */ + --ij-row-yellow: var(--t-tag-background-yellow); + --ij-row-green: var(--t-tag-background-green); + --ij-row-orange: var(--t-tag-background-orange); + --ij-row-rose: var(--t-tag-background-pink); + --ij-row-violet: var(--t-tag-background-violet); + --ij-row-blue: var(--t-tag-background-blue); + --ij-row-gray: var(--t-tag-background-gray); + + /* Progress. */ + --ij-progress: var(--t-color-blue10); + --ij-progress-a: var(--t-color-blue10); + --ij-progress-b: var(--t-color-blue11); + --ij-progress-track: var(--t-background-quaternary); + + /* Editor surfaces. */ + --ij-editor-line: var(--t-background-transparent-light); + --ij-search-match: var(--t-tag-background-yellow); + --ij-text-selection: var(--t-accent-tertiary); + + /* Program Canvas wire hues encode data shape, not execution state. */ + --ij-program-shape-graph: var(--t-color-blue); + --ij-program-shape-tabular: var(--t-color-green); + --ij-program-shape-tensor: var(--t-color-purple); + --ij-program-shape-scalar: var(--t-color-yellow); + --ij-program-shape-artifact: var(--t-color-orange); + + /* Corner radius is design language, so it moves with the palette. */ + --ij-arc: var(--t-border-radius-sm); + --ij-arc-underline: var(--t-border-radius-xs); + --ij-radius-xs: var(--t-border-radius-xs); + --ij-radius-sm: var(--t-border-radius-sm); + --ij-radius-md: var(--t-border-radius-md); + --ij-radius-lg: var(--t-border-radius-lg); + --ij-radius-xl: var(--t-border-radius-xl); + + /* Faces. Twenty ships Inter for UI; the console keeps its own mono. */ + --ij-font-ui: var(--t-font-family); + + /* PROPORTIONS, on Twenty's grid. + + Owner decision: base everything on Twenty proportions. What made this + available is that the VS Code fork (Commonplace Studio, pull request 163) + is now the IDE. The metric layer justified itself as "what makes this read + as an IDE rather than a CRM" -- 28px controls, 24px rows -- and that + argument retires with the job. The console is the graph, records, and + thread surface, which is the shape Twenty's proportions were drawn for. + + Every metric now resolves through --t-spacing-*, so Twenty's 4px grid is + the single dimensional source exactly as its palette is the single colour + source. This is structural, not cosmetic: a future metric that does not + land on a Twenty step has no token to be written in. + + Two values actually move. Controls go 28 -> 32 and rows go 24 -> 32, + Twenty's medium button and record row. Both were legal on the grid + already (Twenty carries a 28 step, and uses it for FloatingIconButton), so + this is a density choice rather than a grid correction: IntelliJ-dense + becomes Twenty-comfortable. The rest were already Twenty steps and only + change how they are spelled. Stripe width is deliberately absent: the + shell drives it from --ij-sidebar-*-w and this must not fight that. */ + --ij-control-h: var(--t-spacing-8); + --ij-control-min-w: var(--t-spacing-18); + --ij-row-h: var(--t-spacing-8); + --ij-tab-h: var(--t-spacing-10); + --ij-underline-h: var(--t-spacing-1); + --ij-toolbar-h: var(--t-spacing-10); + --ij-statusbar-h: var(--t-spacing-7); + --ij-tree-inset: var(--t-spacing-1) var(--t-spacing-3); +} + +/* ELEVATION, and the constraint that set it. + + Owner direction: the sidebar lifts, the centre sinks. Lifted is lighter and + sunken is darker in both modes, so the reading is stable; what flips is which + of Twenty's four background roles carries each plane, because the ladder is + numbered background-to-foreground. + + Twenty gives four backgrounds, but only about three perceptually distinct + planes per mode: light primary and secondary sit 1.2% apart, which is a 1.026 + contrast step, under the 1.05 the gate asks of an elevation boundary. Frame + therefore has to land in a narrow window: far enough below chrome to clear + 1.05 and far enough above editor to clear 1.08. In dark, background-tertiary + sits inside that window. In light, nothing in the background ladder does: + secondary is too close to primary and tertiary is too close to quaternary, so + frame borrows gray3, which is the step Twenty's own ladder skips. + + This is the honest version of "Twenty's four backgrounds cannot carry five + IDE tiers". They carry three planes plus a header band, which is what this + shell actually needs now that Commonplace Studio is the IDE. */ + +[data-register="intui"], +[data-register="intui"][data-theme="dark"] { + /* Grey ladder maps straight through: both run dark to light. */ + --ij-gray-1: var(--t-gray-scale-gray1); + --ij-gray-2: var(--t-gray-scale-gray2); + --ij-gray-3: var(--t-gray-scale-gray3); + --ij-gray-4: var(--t-gray-scale-gray4); + --ij-gray-5: var(--t-gray-scale-gray5); + --ij-gray-6: var(--t-gray-scale-gray6); + --ij-gray-7: var(--t-gray-scale-gray7); + --ij-gray-8: var(--t-gray-scale-gray8); + --ij-gray-9: var(--t-gray-scale-gray9); + --ij-gray-10: var(--t-gray-scale-gray10); + --ij-gray-11: var(--t-gray-scale-gray11); + --ij-gray-12: var(--t-gray-scale-gray12); + --ij-gray-13: var(--t-gray-scale-gray12); + --ij-gray-14: var(--t-font-color-on-accent); + + --ij-frame: var(--t-background-tertiary); + --ij-editor: var(--t-background-primary); + --ij-chrome: var(--t-background-quaternary); + --ij-raised: var(--t-background-quaternary); + --ij-island-header-tool: var(--t-background-tertiary); + --ij-island-header-editor: var(--t-background-tertiary); + + --ij-tier-sunken: var(--t-background-primary); + --ij-tier-ground: var(--t-background-tertiary); + --ij-tier-frame: var(--t-background-tertiary); + --ij-tier-raised: var(--t-background-quaternary); + --ij-tier-floating: var(--t-background-quaternary); + --ij-tier-scrim: var(--t-background-overlay-primary); +} + +[data-register="intui"][data-theme="light"] { + /* Grey ladder reverses: Twenty light runs gray1 lightest to gray12 darkest, + and this register always runs darkest to lightest. */ + --ij-gray-1: var(--t-gray-scale-gray12); + --ij-gray-2: var(--t-gray-scale-gray11); + --ij-gray-3: var(--t-gray-scale-gray10); + --ij-gray-4: var(--t-gray-scale-gray9); + --ij-gray-5: var(--t-gray-scale-gray8); + --ij-gray-6: var(--t-gray-scale-gray7); + --ij-gray-7: var(--t-gray-scale-gray6); + --ij-gray-8: var(--t-gray-scale-gray5); + --ij-gray-9: var(--t-gray-scale-gray4); + --ij-gray-10: var(--t-gray-scale-gray3); + --ij-gray-11: var(--t-gray-scale-gray2); + --ij-gray-12: var(--t-gray-scale-gray1); + --ij-gray-13: var(--t-gray-scale-gray1); + --ij-gray-14: var(--t-font-color-on-accent); + + /* Lifted is lighter here too, so the roles invert with the ladder. */ + --ij-frame: var(--t-gray-scale-gray3); + --ij-editor: var(--t-background-quaternary); + --ij-chrome: var(--t-background-primary); + --ij-raised: var(--t-background-primary); + /* Light headers cannot share one token the way the dark pair does: chrome + sits at the top of the ladder, so the tool header has to step down, while + the editor sits at the bottom, so its header has to step up. */ + --ij-island-header-tool: var(--t-background-tertiary); + --ij-island-header-editor: var(--t-background-secondary); + + --ij-tier-sunken: var(--t-background-quaternary); + --ij-tier-ground: var(--t-gray-scale-gray3); + --ij-tier-frame: var(--t-gray-scale-gray3); + --ij-tier-raised: var(--t-background-primary); + --ij-tier-floating: var(--t-background-primary); + --ij-tier-scrim: var(--t-background-overlay-primary); + + color-scheme: light; +} diff --git a/packages/twenty-ui/src/theme-constants/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq b/packages/twenty-ui/src/theme-constants/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq index 9a037142..3cacc0b9 100644 --- a/packages/twenty-ui/src/theme-constants/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq +++ b/packages/twenty-ui/src/theme-constants/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq @@ -1 +1 @@ -10 \ No newline at end of file +12 \ No newline at end of file diff --git a/packages/twenty-ui/src/theme-constants/theme-dark.css b/packages/twenty-ui/src/theme-constants/theme-dark.css index 347c9762..83e406fb 100644 --- a/packages/twenty-ui/src/theme-constants/theme-dark.css +++ b/packages/twenty-ui/src/theme-constants/theme-dark.css @@ -69,90 +69,90 @@ --t-spacing-32: 128px; --t-spacing-0_5: 2px; --t-spacing-1_5: 6px; - --t-between-siblings-gap: var(--rec-sibling-gap); - --t-table-horizontal-cell-margin: var(--rec-cell-margin); - --t-table-checkbox-column-width: var(--rec-utility-col); - --t-table-horizontal-cell-padding: var(--rec-cell-pad); - --t-side-panel-width: var(--rec-side-panel); - --t-clickable-element-background-transition: var(--rec-clickable-transition); + --t-between-siblings-gap: 2px; + --t-table-horizontal-cell-margin: 8px; + --t-table-checkbox-column-width: 32px; + --t-table-horizontal-cell-padding: 8px; + --t-side-panel-width: 500px; + --t-clickable-element-background-transition: background 0.1s ease; --t-last-layer-z-index: 2147483647; - --t-buttons-secondary-text-color: var(--ij-ink-info); - --t-accent-primary: var(--ij-accent); - --t-accent-secondary: var(--ij-accent-hover); - --t-accent-tertiary: var(--ij-selection); - --t-accent-quaternary: var(--ij-selection-inactive); - --t-accent-accent3570: var(--ij-accent); - --t-accent-accent4060: var(--ij-accent-hover); - --t-accent-accent1: var(--ij-blue-1); - --t-accent-accent2: var(--ij-blue-2); - --t-accent-accent3: var(--ij-blue-3); - --t-accent-accent4: var(--ij-blue-4); - --t-accent-accent5: var(--ij-blue-5); - --t-accent-accent6: var(--ij-blue-6); - --t-accent-accent7: var(--ij-blue-7); - --t-accent-accent8: var(--ij-blue-8); - --t-accent-accent9: var(--ij-blue-9); - --t-accent-accent10: var(--ij-blue-10); - --t-accent-accent11: var(--ij-blue-11); - --t-accent-accent12: var(--ij-blue-11); + --t-buttons-secondary-text-color: color(display-p3 0.63 0.69 1); + --t-accent-primary: color(display-p3 0.163 0.22 0.439); + --t-accent-secondary: color(display-p3 0.163 0.22 0.439); + --t-accent-tertiary: color(display-p3 0.105 0.141 0.275); + --t-accent-quaternary: color(display-p3 0.081 0.089 0.144); + --t-accent-accent3570: color(display-p3 0.285 0.362 0.674); + --t-accent-accent4060: color(display-p3 0.285 0.362 0.674); + --t-accent-accent1: color(display-p3 0.068 0.074 0.118); + --t-accent-accent2: color(display-p3 0.081 0.089 0.144); + --t-accent-accent3: color(display-p3 0.105 0.141 0.275); + --t-accent-accent4: color(display-p3 0.129 0.18 0.369); + --t-accent-accent5: color(display-p3 0.163 0.22 0.439); + --t-accent-accent6: color(display-p3 0.203 0.262 0.5); + --t-accent-accent7: color(display-p3 0.245 0.309 0.575); + --t-accent-accent8: color(display-p3 0.285 0.362 0.674); + --t-accent-accent9: color(display-p3 0.276 0.384 0.837); + --t-accent-accent10: color(display-p3 0.354 0.445 0.866); + --t-accent-accent11: color(display-p3 0.63 0.69 1); + --t-accent-accent12: color(display-p3 0.848 0.881 0.99); --t-background-noisy: transparent; - --t-background-primary: var(--ij-editor); - --t-background-secondary: var(--ij-chrome); - --t-background-tertiary: var(--ij-raised); - --t-background-quaternary: var(--ij-tier-floating); - --t-background-inverted-primary: var(--ij-ink); - --t-background-inverted-secondary: var(--ij-ink-info); - --t-background-danger: var(--ij-error-bg); - --t-background-transparent-primary: var(--ij-tier-scrim); - --t-background-transparent-secondary: var(--ij-tier-scrim); - --t-background-transparent-strong: var(--ij-pressed-overlay); - --t-background-transparent-medium: var(--ij-hover-overlay); - --t-background-transparent-light: var(--ij-hover-surface); - --t-background-transparent-lighter: var(--ij-keyline-decorative); - --t-background-transparent-danger: var(--ij-error-bg); - --t-background-transparent-blue: var(--ij-selection); - --t-background-transparent-orange: var(--ij-warn-bg); - --t-background-transparent-success: var(--ij-ok-bg); - --t-background-overlay-primary: var(--ij-tier-scrim); - --t-background-overlay-secondary: var(--ij-tier-scrim); - --t-background-overlay-tertiary: var(--ij-tier-scrim); - --t-background-radial-gradient: radial-gradient(50% 62.62% at 50% 0%, var(--ij-tier-raised) 0%, var(--ij-tier-floating) 100%); - --t-background-radial-gradient-hover: radial-gradient(76.32% 95.59% at 50% 0%, var(--ij-tier-floating) 0%, var(--ij-raised) 100%); - --t-background-primary-inverted: var(--ij-ink); - --t-background-primary-inverted-hover: var(--ij-ink-info); + --t-background-primary: color(display-p3 0.09 0.09 0.09); + --t-background-secondary: color(display-p3 0.106 0.106 0.106); + --t-background-tertiary: color(display-p3 0.114 0.114 0.114); + --t-background-quaternary: color(display-p3 0.133 0.133 0.133); + --t-background-inverted-primary: color(display-p3 0.922 0.922 0.922); + --t-background-inverted-secondary: color(display-p3 0.702 0.702 0.702); + --t-background-danger: color(display-p3 0.211 0.081 0.099); + --t-background-transparent-primary: color(display-p3 0 0 0 / 0.5); + --t-background-transparent-secondary: color(display-p3 0 0 0 / 0.4); + --t-background-transparent-strong: color(display-p3 1 1 1 / 0.141); + --t-background-transparent-medium: color(display-p3 1 1 1 / 0.102); + --t-background-transparent-light: color(display-p3 1 1 1 / 0.059); + --t-background-transparent-lighter: color(display-p3 1 1 1 / 0.031); + --t-background-transparent-danger: #ff173f2d; + --t-background-transparent-blue: #3566ff57; + --t-background-transparent-orange: #ff590039; + --t-background-transparent-success: #11ff992d; + --t-background-overlay-primary: #000000b8; + --t-background-overlay-secondary: #0000005c; + --t-background-overlay-tertiary: #0000005c; + --t-background-radial-gradient: radial-gradient( 50% 62.62% at 50% 0%, color(display-p3 0.506 0.506 0.506) 0%, color(display-p3 0.482 0.482 0.482) 100% ); + --t-background-radial-gradient-hover: radial-gradient( 76.32% 95.59% at 50% 0%, color(display-p3 0.482 0.482 0.482) 0%, color(display-p3 0.702 0.702 0.702) 100% ); + --t-background-primary-inverted: color(display-p3 0.922 0.922 0.922); + --t-background-primary-inverted-hover: color(display-p3 0.702 0.702 0.702); --t-blur-light: blur(6px) saturate(200%) contrast(100%) brightness(130%); --t-blur-medium: blur(12px) saturate(200%) contrast(100%) brightness(130%); --t-blur-strong: blur(20px) saturate(200%) contrast(100%) brightness(130%); - --t-border-color-strong: var(--ij-control-border); - --t-border-color-medium: var(--ij-divider); - --t-border-color-light: var(--ij-seam); - --t-border-color-secondary-inverted: var(--ij-ink-info); - --t-border-color-inverted: var(--ij-ink); - --t-border-color-danger: var(--ij-error); - --t-border-color-blue: var(--ij-accent); - --t-border-color-transparent-strong: var(--ij-keyline-decorative); - --t-border-radius-xs: var(--radius-chip, 4px); - --t-border-radius-sm: var(--radius-chip, 4px); - --t-border-radius-md: var(--radius-control, 7px); - --t-border-radius-sm-round: var(--radius-chip, 4px); - --t-border-radius-md-round: var(--radius-control, 7px); - --t-border-radius-lg: var(--radius-sunken, 10px); - --t-border-radius-xl: var(--ij-radius-lg); - --t-border-radius-xxl: var(--ij-radius-xl); + --t-border-color-strong: color(display-p3 0.282 0.282 0.282); + --t-border-color-medium: color(display-p3 0.133 0.133 0.133); + --t-border-color-light: color(display-p3 0.114 0.114 0.114); + --t-border-color-secondary-inverted: color(display-p3 0.702 0.702 0.702); + --t-border-color-inverted: color(display-p3 0.922 0.922 0.922); + --t-border-color-danger: color(display-p3 0.348 0.11 0.142); + --t-border-color-blue: color(display-p3 0.245 0.309 0.575); + --t-border-color-transparent-strong: color(display-p3 1 1 1 / 0.071); + --t-border-radius-xs: 2px; + --t-border-radius-sm: 4px; + --t-border-radius-md: 8px; + --t-border-radius-sm-round: 4px; + --t-border-radius-md-round: 8px; + --t-border-radius-lg: 16px; + --t-border-radius-xl: 20px; + --t-border-radius-xxl: 40px; --t-border-radius-pill: 999px; --t-border-radius-rounded: 100%; - --t-box-shadow-color: var(--ij-tier-scrim); - --t-box-shadow-light: var(--shadow-lifted, 0 1px 2px rgb(0 0 0 / 0.04), 0 1px 6px rgb(0 0 0 / 0.03)); - --t-box-shadow-strong: var(--shadow-lifted, 0 1px 2px rgb(0 0 0 / 0.04), 0 1px 6px rgb(0 0 0 / 0.03)); - --t-box-shadow-underline: var(--shadow-docked-right, -1px 0 3px rgb(0 0 0 / 0.04)); - --t-box-shadow-super-heavy: var(--shadow-lifted, 0 1px 2px rgb(0 0 0 / 0.04), 0 1px 6px rgb(0 0 0 / 0.03)); - --t-font-color-primary: var(--ij-ink); - --t-font-color-secondary: var(--ij-ink-info); - --t-font-color-tertiary: var(--ij-ink-disabled); - --t-font-color-light: var(--ij-ink-disabled); - --t-font-color-extra-light: var(--ij-gray-7); - --t-font-color-inverted: var(--ij-editor); - --t-font-color-danger: var(--ij-error); + --t-box-shadow-color: rgba(0, 0, 0, 0.6); + --t-box-shadow-light: 0px 2px 4px 0px rgba(0, 0, 0, 0.04), 0px 0px 4px 0px rgba(0, 0, 0, 0.08); + --t-box-shadow-strong: 2px 4px 16px 0px rgba(0, 0, 0, 0.16), 0px 2px 4px 0px rgba(0, 0, 0, 0.08); + --t-box-shadow-underline: 0px 1px 0px 0px rgba(0, 0, 0, 0.32); + --t-box-shadow-super-heavy: 2px 4px 16px 0px rgba(0, 0, 0, 0.12), 0px 2px 4px 0px rgba(0, 0, 0, 0.04); + --t-font-color-primary: color(display-p3 0.922 0.922 0.922); + --t-font-color-secondary: color(display-p3 0.702 0.702 0.702); + --t-font-color-tertiary: color(display-p3 0.506 0.506 0.506); + --t-font-color-light: color(display-p3 0.4 0.4 0.4); + --t-font-color-extra-light: color(display-p3 0.298 0.298 0.298); + --t-font-color-inverted: color(display-p3 0.09 0.09 0.09); + --t-font-color-danger: color(display-p3 0.83 0.329 0.324); --t-font-size-xxs: 0.625rem; --t-font-size-xs: 0.85rem; --t-font-size-sm: 0.92rem; @@ -163,845 +163,845 @@ --t-font-weight-regular: 400; --t-font-weight-medium: 500; --t-font-weight-semi-bold: 600; - --t-font-family: var(--ij-font-ui); + --t-font-family: Inter, sans-serif; --t-name: dark; - --t-snack-bar-success-color: var(--ij-ok); - --t-snack-bar-success-background-color: var(--ij-ok-bg); - --t-snack-bar-error-color: var(--ij-error); - --t-snack-bar-error-background-color: var(--ij-error-bg); - --t-snack-bar-warning-color: var(--ij-warn); - --t-snack-bar-warning-background-color: var(--ij-warn-bg); - --t-snack-bar-info-color: var(--ij-accent); - --t-snack-bar-info-background-color: var(--ij-selection); - --t-snack-bar-default-color: var(--ij-ink); - --t-snack-bar-default-background-color: var(--ij-hover-surface); - --t-tag-text-gray: var(--ij-ink-info); - --t-tag-text-mauve: oklch(77.00% 0.0240 300.0); - --t-tag-text-slate: oklch(77.00% 0.0240 260.0); - --t-tag-text-sage: oklch(77.00% 0.0240 160.0); - --t-tag-text-olive: oklch(77.00% 0.0240 120.0); - --t-tag-text-sand: oklch(77.00% 0.0240 80.0); - --t-tag-text-tomato: oklch(77.00% 0.0960 35.0); - --t-tag-text-red: var(--ij-error); - --t-tag-text-ruby: oklch(77.00% 0.0960 12.0); - --t-tag-text-crimson: oklch(77.00% 0.0960 0.0); - --t-tag-text-pink: var(--ij-error); - --t-tag-text-plum: oklch(77.00% 0.0960 330.0); - --t-tag-text-purple: var(--ij-room); - --t-tag-text-violet: var(--ij-room); - --t-tag-text-iris: oklch(77.00% 0.0960 275.0); - --t-tag-text-cyan: oklch(77.00% 0.0960 220.0); - --t-tag-text-turquoise: var(--ij-graph); - --t-tag-text-sky: oklch(77.00% 0.0960 235.0); - --t-tag-text-blue: var(--ij-link); - --t-tag-text-jade: var(--ij-memory); - --t-tag-text-green: var(--ij-ok); - --t-tag-text-grass: oklch(77.00% 0.0960 140.0); - --t-tag-text-mint: oklch(77.00% 0.0960 175.0); - --t-tag-text-lime: oklch(77.00% 0.0960 125.0); - --t-tag-text-bronze: oklch(77.00% 0.0960 45.0); - --t-tag-text-gold: var(--ij-gold); - --t-tag-text-brown: oklch(77.00% 0.0960 55.0); - --t-tag-text-orange: var(--ij-agent); - --t-tag-text-amber: var(--ij-agent); - --t-tag-text-yellow: var(--ij-warn); - --t-tag-background-gray: var(--ij-row-gray); - --t-tag-background-mauve: oklch(25.00% 0.0135 300.0); - --t-tag-background-slate: oklch(25.00% 0.0135 260.0); - --t-tag-background-sage: oklch(25.00% 0.0135 160.0); - --t-tag-background-olive: oklch(25.00% 0.0135 120.0); - --t-tag-background-sand: oklch(25.00% 0.0135 80.0); - --t-tag-background-tomato: oklch(25.00% 0.0540 35.0); - --t-tag-background-red: var(--ij-error-bg); - --t-tag-background-ruby: oklch(25.00% 0.0540 12.0); - --t-tag-background-crimson: oklch(25.00% 0.0540 0.0); - --t-tag-background-pink: var(--ij-row-rose); - --t-tag-background-plum: oklch(25.00% 0.0540 330.0); - --t-tag-background-purple: var(--ij-room-tint); - --t-tag-background-violet: var(--ij-row-violet); - --t-tag-background-iris: oklch(25.00% 0.0540 275.0); - --t-tag-background-cyan: oklch(25.00% 0.0540 220.0); - --t-tag-background-turquoise: var(--ij-graph-tint); - --t-tag-background-sky: oklch(25.00% 0.0540 235.0); - --t-tag-background-blue: var(--ij-row-blue); - --t-tag-background-jade: var(--ij-memory-tint); - --t-tag-background-green: var(--ij-ok-bg); - --t-tag-background-grass: oklch(25.00% 0.0540 140.0); - --t-tag-background-mint: oklch(25.00% 0.0540 175.0); - --t-tag-background-lime: oklch(25.00% 0.0540 125.0); - --t-tag-background-bronze: oklch(25.00% 0.0540 45.0); - --t-tag-background-gold: var(--ij-gold-tint); - --t-tag-background-brown: oklch(25.00% 0.0540 55.0); - --t-tag-background-orange: var(--ij-row-orange); - --t-tag-background-amber: var(--ij-agent-tint); - --t-tag-background-yellow: var(--ij-warn-bg); - --t-code-text-gray: var(--ij-ink-info); - --t-code-text-sky: var(--ij-link); - --t-code-text-pink: var(--ij-room); - --t-code-text-orange: var(--ij-agent); - --t-code-text-green: var(--ij-memory); - --t-code-font-family: var(--ij-font-mono); - --t--illustration-icon-color-blue: var(--ij-accent); - --t--illustration-icon-color-gray: var(--ij-ink-disabled); - --t--illustration-icon-fill-blue: var(--ij-selection); - --t--illustration-icon-fill-gray: var(--ij-raised); - --t-gray-scale-gray1: var(--ij-gray-1); - --t-gray-scale-gray2: var(--ij-gray-2); - --t-gray-scale-gray3: var(--ij-gray-3); - --t-gray-scale-gray4: var(--ij-gray-4); - --t-gray-scale-gray5: var(--ij-gray-5); - --t-gray-scale-gray6: var(--ij-gray-6); - --t-gray-scale-gray7: var(--ij-gray-7); - --t-gray-scale-gray8: var(--ij-gray-8); - --t-gray-scale-gray9: var(--ij-gray-9); - --t-gray-scale-gray10: var(--ij-gray-10); - --t-gray-scale-gray11: var(--ij-gray-11); - --t-gray-scale-gray12: var(--ij-gray-12); - --t-color-red: oklch(58.00% 0.1200 25.0); - --t-color-ruby: oklch(58.00% 0.1200 12.0); - --t-color-crimson: oklch(58.00% 0.1200 0.0); - --t-color-tomato: oklch(58.00% 0.1200 35.0); - --t-color-orange: oklch(58.00% 0.1200 60.0); - --t-color-amber: oklch(58.00% 0.1200 85.0); - --t-color-yellow: oklch(58.00% 0.1200 100.0); - --t-color-lime: oklch(58.00% 0.1200 125.0); - --t-color-grass: oklch(58.00% 0.1200 140.0); - --t-color-green: oklch(58.00% 0.1200 150.0); - --t-color-jade: oklch(58.00% 0.1200 165.0); - --t-color-mint: oklch(58.00% 0.1200 175.0); - --t-color-turquoise: oklch(58.00% 0.1200 195.0); - --t-color-cyan: oklch(58.00% 0.1200 220.0); - --t-color-sky: oklch(58.00% 0.1200 235.0); - --t-color-blue: oklch(58.00% 0.1200 258.0); - --t-color-iris: oklch(58.00% 0.1200 275.0); - --t-color-violet: oklch(58.00% 0.1200 295.0); - --t-color-purple: oklch(58.00% 0.1200 310.0); - --t-color-plum: oklch(58.00% 0.1200 330.0); - --t-color-pink: oklch(58.00% 0.1200 350.0); - --t-color-bronze: oklch(58.00% 0.1200 45.0); - --t-color-gold: oklch(58.00% 0.1200 90.0); - --t-color-brown: oklch(58.00% 0.1200 55.0); - --t-color-gray: var(--ij-gray-9); - --t-color-yellow1: oklch(18.00% 0.0180 100.0); - --t-color-yellow2: oklch(21.00% 0.0300 100.0); - --t-color-yellow3: oklch(25.00% 0.0540 100.0); - --t-color-yellow4: oklch(28.00% 0.0720 100.0); - --t-color-yellow5: oklch(32.00% 0.0864 100.0); - --t-color-yellow6: oklch(36.00% 0.0984 100.0); - --t-color-yellow7: oklch(41.00% 0.1104 100.0); - --t-color-yellow8: oklch(49.00% 0.1200 100.0); - --t-color-yellow9: oklch(58.00% 0.1200 100.0); - --t-color-yellow10: oklch(63.00% 0.1176 100.0); - --t-color-yellow11: oklch(77.00% 0.0960 100.0); - --t-color-yellow12: oklch(90.00% 0.0540 100.0); - --t-color-green1: oklch(18.00% 0.0180 150.0); - --t-color-green2: oklch(21.00% 0.0300 150.0); - --t-color-green3: oklch(25.00% 0.0540 150.0); - --t-color-green4: oklch(28.00% 0.0720 150.0); - --t-color-green5: oklch(32.00% 0.0864 150.0); - --t-color-green6: oklch(36.00% 0.0984 150.0); - --t-color-green7: oklch(41.00% 0.1104 150.0); - --t-color-green8: oklch(49.00% 0.1200 150.0); - --t-color-green9: oklch(58.00% 0.1200 150.0); - --t-color-green10: oklch(63.00% 0.1176 150.0); - --t-color-green11: oklch(77.00% 0.0960 150.0); - --t-color-green12: oklch(90.00% 0.0540 150.0); - --t-color-turquoise1: oklch(18.00% 0.0180 195.0); - --t-color-turquoise2: oklch(21.00% 0.0300 195.0); - --t-color-turquoise3: oklch(25.00% 0.0540 195.0); - --t-color-turquoise4: oklch(28.00% 0.0720 195.0); - --t-color-turquoise5: oklch(32.00% 0.0864 195.0); - --t-color-turquoise6: oklch(36.00% 0.0984 195.0); - --t-color-turquoise7: oklch(41.00% 0.1104 195.0); - --t-color-turquoise8: oklch(49.00% 0.1200 195.0); - --t-color-turquoise9: oklch(58.00% 0.1200 195.0); - --t-color-turquoise10: oklch(63.00% 0.1176 195.0); - --t-color-turquoise11: oklch(77.00% 0.0960 195.0); - --t-color-turquoise12: oklch(90.00% 0.0540 195.0); - --t-color-sky1: oklch(18.00% 0.0180 235.0); - --t-color-sky2: oklch(21.00% 0.0300 235.0); - --t-color-sky3: oklch(25.00% 0.0540 235.0); - --t-color-sky4: oklch(28.00% 0.0720 235.0); - --t-color-sky5: oklch(32.00% 0.0864 235.0); - --t-color-sky6: oklch(36.00% 0.0984 235.0); - --t-color-sky7: oklch(41.00% 0.1104 235.0); - --t-color-sky8: oklch(49.00% 0.1200 235.0); - --t-color-sky9: oklch(58.00% 0.1200 235.0); - --t-color-sky10: oklch(63.00% 0.1176 235.0); - --t-color-sky11: oklch(77.00% 0.0960 235.0); - --t-color-sky12: oklch(90.00% 0.0540 235.0); - --t-color-blue1: oklch(18.00% 0.0180 258.0); - --t-color-blue2: oklch(21.00% 0.0300 258.0); - --t-color-blue3: oklch(25.00% 0.0540 258.0); - --t-color-blue4: oklch(28.00% 0.0720 258.0); - --t-color-blue5: oklch(32.00% 0.0864 258.0); - --t-color-blue6: oklch(36.00% 0.0984 258.0); - --t-color-blue7: oklch(41.00% 0.1104 258.0); - --t-color-blue8: oklch(49.00% 0.1200 258.0); - --t-color-blue9: oklch(58.00% 0.1200 258.0); - --t-color-blue10: oklch(63.00% 0.1176 258.0); - --t-color-blue11: oklch(77.00% 0.0960 258.0); - --t-color-blue12: oklch(90.00% 0.0540 258.0); - --t-color-purple1: oklch(18.00% 0.0180 310.0); - --t-color-purple2: oklch(21.00% 0.0300 310.0); - --t-color-purple3: oklch(25.00% 0.0540 310.0); - --t-color-purple4: oklch(28.00% 0.0720 310.0); - --t-color-purple5: oklch(32.00% 0.0864 310.0); - --t-color-purple6: oklch(36.00% 0.0984 310.0); - --t-color-purple7: oklch(41.00% 0.1104 310.0); - --t-color-purple8: oklch(49.00% 0.1200 310.0); - --t-color-purple9: oklch(58.00% 0.1200 310.0); - --t-color-purple10: oklch(63.00% 0.1176 310.0); - --t-color-purple11: oklch(77.00% 0.0960 310.0); - --t-color-purple12: oklch(90.00% 0.0540 310.0); - --t-color-pink1: oklch(18.00% 0.0180 350.0); - --t-color-pink2: oklch(21.00% 0.0300 350.0); - --t-color-pink3: oklch(25.00% 0.0540 350.0); - --t-color-pink4: oklch(28.00% 0.0720 350.0); - --t-color-pink5: oklch(32.00% 0.0864 350.0); - --t-color-pink6: oklch(36.00% 0.0984 350.0); - --t-color-pink7: oklch(41.00% 0.1104 350.0); - --t-color-pink8: oklch(49.00% 0.1200 350.0); - --t-color-pink9: oklch(58.00% 0.1200 350.0); - --t-color-pink10: oklch(63.00% 0.1176 350.0); - --t-color-pink11: oklch(77.00% 0.0960 350.0); - --t-color-pink12: oklch(90.00% 0.0540 350.0); - --t-color-red1: oklch(18.00% 0.0180 25.0); - --t-color-red2: oklch(21.00% 0.0300 25.0); - --t-color-red3: oklch(25.00% 0.0540 25.0); - --t-color-red4: oklch(28.00% 0.0720 25.0); - --t-color-red5: oklch(32.00% 0.0864 25.0); - --t-color-red6: oklch(36.00% 0.0984 25.0); - --t-color-red7: oklch(41.00% 0.1104 25.0); - --t-color-red8: oklch(49.00% 0.1200 25.0); - --t-color-red9: oklch(58.00% 0.1200 25.0); - --t-color-red10: oklch(63.00% 0.1176 25.0); - --t-color-red11: oklch(77.00% 0.0960 25.0); - --t-color-red12: oklch(90.00% 0.0540 25.0); - --t-color-orange1: oklch(18.00% 0.0180 60.0); - --t-color-orange2: oklch(21.00% 0.0300 60.0); - --t-color-orange3: oklch(25.00% 0.0540 60.0); - --t-color-orange4: oklch(28.00% 0.0720 60.0); - --t-color-orange5: oklch(32.00% 0.0864 60.0); - --t-color-orange6: oklch(36.00% 0.0984 60.0); - --t-color-orange7: oklch(41.00% 0.1104 60.0); - --t-color-orange8: oklch(49.00% 0.1200 60.0); - --t-color-orange9: oklch(58.00% 0.1200 60.0); - --t-color-orange10: oklch(63.00% 0.1176 60.0); - --t-color-orange11: oklch(77.00% 0.0960 60.0); - --t-color-orange12: oklch(90.00% 0.0540 60.0); - --t-color-gray1: oklch(18.00% 0.0000 0.0); - --t-color-gray2: oklch(21.00% 0.0000 0.0); - --t-color-gray3: oklch(25.00% 0.0000 0.0); - --t-color-gray4: oklch(28.00% 0.0000 0.0); - --t-color-gray5: oklch(32.00% 0.0000 0.0); - --t-color-gray6: oklch(36.00% 0.0000 0.0); - --t-color-gray7: oklch(41.00% 0.0000 0.0); - --t-color-gray8: oklch(49.00% 0.0000 0.0); - --t-color-gray9: oklch(58.00% 0.0000 0.0); - --t-color-gray10: oklch(63.00% 0.0000 0.0); - --t-color-gray11: oklch(77.00% 0.0000 0.0); - --t-color-gray12: oklch(90.00% 0.0000 0.0); - --t-color-mauve1: oklch(18.00% 0.0045 300.0); - --t-color-mauve2: oklch(21.00% 0.0075 300.0); - --t-color-mauve3: oklch(25.00% 0.0135 300.0); - --t-color-mauve4: oklch(28.00% 0.0180 300.0); - --t-color-mauve5: oklch(32.00% 0.0216 300.0); - --t-color-mauve6: oklch(36.00% 0.0246 300.0); - --t-color-mauve7: oklch(41.00% 0.0276 300.0); - --t-color-mauve8: oklch(49.00% 0.0300 300.0); - --t-color-mauve9: oklch(58.00% 0.0300 300.0); - --t-color-mauve10: oklch(63.00% 0.0294 300.0); - --t-color-mauve11: oklch(77.00% 0.0240 300.0); - --t-color-mauve12: oklch(90.00% 0.0135 300.0); - --t-color-slate1: oklch(18.00% 0.0045 260.0); - --t-color-slate2: oklch(21.00% 0.0075 260.0); - --t-color-slate3: oklch(25.00% 0.0135 260.0); - --t-color-slate4: oklch(28.00% 0.0180 260.0); - --t-color-slate5: oklch(32.00% 0.0216 260.0); - --t-color-slate6: oklch(36.00% 0.0246 260.0); - --t-color-slate7: oklch(41.00% 0.0276 260.0); - --t-color-slate8: oklch(49.00% 0.0300 260.0); - --t-color-slate9: oklch(58.00% 0.0300 260.0); - --t-color-slate10: oklch(63.00% 0.0294 260.0); - --t-color-slate11: oklch(77.00% 0.0240 260.0); - --t-color-slate12: oklch(90.00% 0.0135 260.0); - --t-color-sage1: oklch(18.00% 0.0045 160.0); - --t-color-sage2: oklch(21.00% 0.0075 160.0); - --t-color-sage3: oklch(25.00% 0.0135 160.0); - --t-color-sage4: oklch(28.00% 0.0180 160.0); - --t-color-sage5: oklch(32.00% 0.0216 160.0); - --t-color-sage6: oklch(36.00% 0.0246 160.0); - --t-color-sage7: oklch(41.00% 0.0276 160.0); - --t-color-sage8: oklch(49.00% 0.0300 160.0); - --t-color-sage9: oklch(58.00% 0.0300 160.0); - --t-color-sage10: oklch(63.00% 0.0294 160.0); - --t-color-sage11: oklch(77.00% 0.0240 160.0); - --t-color-sage12: oklch(90.00% 0.0135 160.0); - --t-color-olive1: oklch(18.00% 0.0045 120.0); - --t-color-olive2: oklch(21.00% 0.0075 120.0); - --t-color-olive3: oklch(25.00% 0.0135 120.0); - --t-color-olive4: oklch(28.00% 0.0180 120.0); - --t-color-olive5: oklch(32.00% 0.0216 120.0); - --t-color-olive6: oklch(36.00% 0.0246 120.0); - --t-color-olive7: oklch(41.00% 0.0276 120.0); - --t-color-olive8: oklch(49.00% 0.0300 120.0); - --t-color-olive9: oklch(58.00% 0.0300 120.0); - --t-color-olive10: oklch(63.00% 0.0294 120.0); - --t-color-olive11: oklch(77.00% 0.0240 120.0); - --t-color-olive12: oklch(90.00% 0.0135 120.0); - --t-color-sand1: oklch(18.00% 0.0045 80.0); - --t-color-sand2: oklch(21.00% 0.0075 80.0); - --t-color-sand3: oklch(25.00% 0.0135 80.0); - --t-color-sand4: oklch(28.00% 0.0180 80.0); - --t-color-sand5: oklch(32.00% 0.0216 80.0); - --t-color-sand6: oklch(36.00% 0.0246 80.0); - --t-color-sand7: oklch(41.00% 0.0276 80.0); - --t-color-sand8: oklch(49.00% 0.0300 80.0); - --t-color-sand9: oklch(58.00% 0.0300 80.0); - --t-color-sand10: oklch(63.00% 0.0294 80.0); - --t-color-sand11: oklch(77.00% 0.0240 80.0); - --t-color-sand12: oklch(90.00% 0.0135 80.0); - --t-color-tomato1: oklch(18.00% 0.0180 35.0); - --t-color-tomato2: oklch(21.00% 0.0300 35.0); - --t-color-tomato3: oklch(25.00% 0.0540 35.0); - --t-color-tomato4: oklch(28.00% 0.0720 35.0); - --t-color-tomato5: oklch(32.00% 0.0864 35.0); - --t-color-tomato6: oklch(36.00% 0.0984 35.0); - --t-color-tomato7: oklch(41.00% 0.1104 35.0); - --t-color-tomato8: oklch(49.00% 0.1200 35.0); - --t-color-tomato9: oklch(58.00% 0.1200 35.0); - --t-color-tomato10: oklch(63.00% 0.1176 35.0); - --t-color-tomato11: oklch(77.00% 0.0960 35.0); - --t-color-tomato12: oklch(90.00% 0.0540 35.0); - --t-color-ruby1: oklch(18.00% 0.0180 12.0); - --t-color-ruby2: oklch(21.00% 0.0300 12.0); - --t-color-ruby3: oklch(25.00% 0.0540 12.0); - --t-color-ruby4: oklch(28.00% 0.0720 12.0); - --t-color-ruby5: oklch(32.00% 0.0864 12.0); - --t-color-ruby6: oklch(36.00% 0.0984 12.0); - --t-color-ruby7: oklch(41.00% 0.1104 12.0); - --t-color-ruby8: oklch(49.00% 0.1200 12.0); - --t-color-ruby9: oklch(58.00% 0.1200 12.0); - --t-color-ruby10: oklch(63.00% 0.1176 12.0); - --t-color-ruby11: oklch(77.00% 0.0960 12.0); - --t-color-ruby12: oklch(90.00% 0.0540 12.0); - --t-color-crimson1: oklch(18.00% 0.0180 0.0); - --t-color-crimson2: oklch(21.00% 0.0300 0.0); - --t-color-crimson3: oklch(25.00% 0.0540 0.0); - --t-color-crimson4: oklch(28.00% 0.0720 0.0); - --t-color-crimson5: oklch(32.00% 0.0864 0.0); - --t-color-crimson6: oklch(36.00% 0.0984 0.0); - --t-color-crimson7: oklch(41.00% 0.1104 0.0); - --t-color-crimson8: oklch(49.00% 0.1200 0.0); - --t-color-crimson9: oklch(58.00% 0.1200 0.0); - --t-color-crimson10: oklch(63.00% 0.1176 0.0); - --t-color-crimson11: oklch(77.00% 0.0960 0.0); - --t-color-crimson12: oklch(90.00% 0.0540 0.0); - --t-color-plum1: oklch(18.00% 0.0180 330.0); - --t-color-plum2: oklch(21.00% 0.0300 330.0); - --t-color-plum3: oklch(25.00% 0.0540 330.0); - --t-color-plum4: oklch(28.00% 0.0720 330.0); - --t-color-plum5: oklch(32.00% 0.0864 330.0); - --t-color-plum6: oklch(36.00% 0.0984 330.0); - --t-color-plum7: oklch(41.00% 0.1104 330.0); - --t-color-plum8: oklch(49.00% 0.1200 330.0); - --t-color-plum9: oklch(58.00% 0.1200 330.0); - --t-color-plum10: oklch(63.00% 0.1176 330.0); - --t-color-plum11: oklch(77.00% 0.0960 330.0); - --t-color-plum12: oklch(90.00% 0.0540 330.0); - --t-color-violet1: oklch(18.00% 0.0180 295.0); - --t-color-violet2: oklch(21.00% 0.0300 295.0); - --t-color-violet3: oklch(25.00% 0.0540 295.0); - --t-color-violet4: oklch(28.00% 0.0720 295.0); - --t-color-violet5: oklch(32.00% 0.0864 295.0); - --t-color-violet6: oklch(36.00% 0.0984 295.0); - --t-color-violet7: oklch(41.00% 0.1104 295.0); - --t-color-violet8: oklch(49.00% 0.1200 295.0); - --t-color-violet9: oklch(58.00% 0.1200 295.0); - --t-color-violet10: oklch(63.00% 0.1176 295.0); - --t-color-violet11: oklch(77.00% 0.0960 295.0); - --t-color-violet12: oklch(90.00% 0.0540 295.0); - --t-color-iris1: oklch(18.00% 0.0180 275.0); - --t-color-iris2: oklch(21.00% 0.0300 275.0); - --t-color-iris3: oklch(25.00% 0.0540 275.0); - --t-color-iris4: oklch(28.00% 0.0720 275.0); - --t-color-iris5: oklch(32.00% 0.0864 275.0); - --t-color-iris6: oklch(36.00% 0.0984 275.0); - --t-color-iris7: oklch(41.00% 0.1104 275.0); - --t-color-iris8: oklch(49.00% 0.1200 275.0); - --t-color-iris9: oklch(58.00% 0.1200 275.0); - --t-color-iris10: oklch(63.00% 0.1176 275.0); - --t-color-iris11: oklch(77.00% 0.0960 275.0); - --t-color-iris12: oklch(90.00% 0.0540 275.0); - --t-color-cyan1: oklch(18.00% 0.0180 220.0); - --t-color-cyan2: oklch(21.00% 0.0300 220.0); - --t-color-cyan3: oklch(25.00% 0.0540 220.0); - --t-color-cyan4: oklch(28.00% 0.0720 220.0); - --t-color-cyan5: oklch(32.00% 0.0864 220.0); - --t-color-cyan6: oklch(36.00% 0.0984 220.0); - --t-color-cyan7: oklch(41.00% 0.1104 220.0); - --t-color-cyan8: oklch(49.00% 0.1200 220.0); - --t-color-cyan9: oklch(58.00% 0.1200 220.0); - --t-color-cyan10: oklch(63.00% 0.1176 220.0); - --t-color-cyan11: oklch(77.00% 0.0960 220.0); - --t-color-cyan12: oklch(90.00% 0.0540 220.0); - --t-color-jade1: oklch(18.00% 0.0180 165.0); - --t-color-jade2: oklch(21.00% 0.0300 165.0); - --t-color-jade3: oklch(25.00% 0.0540 165.0); - --t-color-jade4: oklch(28.00% 0.0720 165.0); - --t-color-jade5: oklch(32.00% 0.0864 165.0); - --t-color-jade6: oklch(36.00% 0.0984 165.0); - --t-color-jade7: oklch(41.00% 0.1104 165.0); - --t-color-jade8: oklch(49.00% 0.1200 165.0); - --t-color-jade9: oklch(58.00% 0.1200 165.0); - --t-color-jade10: oklch(63.00% 0.1176 165.0); - --t-color-jade11: oklch(77.00% 0.0960 165.0); - --t-color-jade12: oklch(90.00% 0.0540 165.0); - --t-color-grass1: oklch(18.00% 0.0180 140.0); - --t-color-grass2: oklch(21.00% 0.0300 140.0); - --t-color-grass3: oklch(25.00% 0.0540 140.0); - --t-color-grass4: oklch(28.00% 0.0720 140.0); - --t-color-grass5: oklch(32.00% 0.0864 140.0); - --t-color-grass6: oklch(36.00% 0.0984 140.0); - --t-color-grass7: oklch(41.00% 0.1104 140.0); - --t-color-grass8: oklch(49.00% 0.1200 140.0); - --t-color-grass9: oklch(58.00% 0.1200 140.0); - --t-color-grass10: oklch(63.00% 0.1176 140.0); - --t-color-grass11: oklch(77.00% 0.0960 140.0); - --t-color-grass12: oklch(90.00% 0.0540 140.0); - --t-color-mint1: oklch(18.00% 0.0180 175.0); - --t-color-mint2: oklch(21.00% 0.0300 175.0); - --t-color-mint3: oklch(25.00% 0.0540 175.0); - --t-color-mint4: oklch(28.00% 0.0720 175.0); - --t-color-mint5: oklch(32.00% 0.0864 175.0); - --t-color-mint6: oklch(36.00% 0.0984 175.0); - --t-color-mint7: oklch(41.00% 0.1104 175.0); - --t-color-mint8: oklch(49.00% 0.1200 175.0); - --t-color-mint9: oklch(58.00% 0.1200 175.0); - --t-color-mint10: oklch(63.00% 0.1176 175.0); - --t-color-mint11: oklch(77.00% 0.0960 175.0); - --t-color-mint12: oklch(90.00% 0.0540 175.0); - --t-color-lime1: oklch(18.00% 0.0180 125.0); - --t-color-lime2: oklch(21.00% 0.0300 125.0); - --t-color-lime3: oklch(25.00% 0.0540 125.0); - --t-color-lime4: oklch(28.00% 0.0720 125.0); - --t-color-lime5: oklch(32.00% 0.0864 125.0); - --t-color-lime6: oklch(36.00% 0.0984 125.0); - --t-color-lime7: oklch(41.00% 0.1104 125.0); - --t-color-lime8: oklch(49.00% 0.1200 125.0); - --t-color-lime9: oklch(58.00% 0.1200 125.0); - --t-color-lime10: oklch(63.00% 0.1176 125.0); - --t-color-lime11: oklch(77.00% 0.0960 125.0); - --t-color-lime12: oklch(90.00% 0.0540 125.0); - --t-color-bronze1: oklch(18.00% 0.0180 45.0); - --t-color-bronze2: oklch(21.00% 0.0300 45.0); - --t-color-bronze3: oklch(25.00% 0.0540 45.0); - --t-color-bronze4: oklch(28.00% 0.0720 45.0); - --t-color-bronze5: oklch(32.00% 0.0864 45.0); - --t-color-bronze6: oklch(36.00% 0.0984 45.0); - --t-color-bronze7: oklch(41.00% 0.1104 45.0); - --t-color-bronze8: oklch(49.00% 0.1200 45.0); - --t-color-bronze9: oklch(58.00% 0.1200 45.0); - --t-color-bronze10: oklch(63.00% 0.1176 45.0); - --t-color-bronze11: oklch(77.00% 0.0960 45.0); - --t-color-bronze12: oklch(90.00% 0.0540 45.0); - --t-color-gold1: oklch(18.00% 0.0180 90.0); - --t-color-gold2: oklch(21.00% 0.0300 90.0); - --t-color-gold3: oklch(25.00% 0.0540 90.0); - --t-color-gold4: oklch(28.00% 0.0720 90.0); - --t-color-gold5: oklch(32.00% 0.0864 90.0); - --t-color-gold6: oklch(36.00% 0.0984 90.0); - --t-color-gold7: oklch(41.00% 0.1104 90.0); - --t-color-gold8: oklch(49.00% 0.1200 90.0); - --t-color-gold9: oklch(58.00% 0.1200 90.0); - --t-color-gold10: oklch(63.00% 0.1176 90.0); - --t-color-gold11: oklch(77.00% 0.0960 90.0); - --t-color-gold12: oklch(90.00% 0.0540 90.0); - --t-color-brown1: oklch(18.00% 0.0180 55.0); - --t-color-brown2: oklch(21.00% 0.0300 55.0); - --t-color-brown3: oklch(25.00% 0.0540 55.0); - --t-color-brown4: oklch(28.00% 0.0720 55.0); - --t-color-brown5: oklch(32.00% 0.0864 55.0); - --t-color-brown6: oklch(36.00% 0.0984 55.0); - --t-color-brown7: oklch(41.00% 0.1104 55.0); - --t-color-brown8: oklch(49.00% 0.1200 55.0); - --t-color-brown9: oklch(58.00% 0.1200 55.0); - --t-color-brown10: oklch(63.00% 0.1176 55.0); - --t-color-brown11: oklch(77.00% 0.0960 55.0); - --t-color-brown12: oklch(90.00% 0.0540 55.0); - --t-color-amber1: oklch(18.00% 0.0180 85.0); - --t-color-amber2: oklch(21.00% 0.0300 85.0); - --t-color-amber3: oklch(25.00% 0.0540 85.0); - --t-color-amber4: oklch(28.00% 0.0720 85.0); - --t-color-amber5: oklch(32.00% 0.0864 85.0); - --t-color-amber6: oklch(36.00% 0.0984 85.0); - --t-color-amber7: oklch(41.00% 0.1104 85.0); - --t-color-amber8: oklch(49.00% 0.1200 85.0); - --t-color-amber9: oklch(58.00% 0.1200 85.0); - --t-color-amber10: oklch(63.00% 0.1176 85.0); - --t-color-amber11: oklch(77.00% 0.0960 85.0); - --t-color-amber12: oklch(90.00% 0.0540 85.0); - --t-color-transparent-green1: color-mix(in oklab, oklch(18.00% 0.0180 150.0) 3.0%, transparent); - --t-color-transparent-green2: color-mix(in oklab, oklch(21.00% 0.0300 150.0) 6.0%, transparent); - --t-color-transparent-green3: color-mix(in oklab, oklch(25.00% 0.0540 150.0) 9.0%, transparent); - --t-color-transparent-green4: color-mix(in oklab, oklch(28.00% 0.0720 150.0) 12.0%, transparent); - --t-color-transparent-green5: color-mix(in oklab, oklch(32.00% 0.0864 150.0) 16.0%, transparent); - --t-color-transparent-green6: color-mix(in oklab, oklch(36.00% 0.0984 150.0) 20.0%, transparent); - --t-color-transparent-green7: color-mix(in oklab, oklch(41.00% 0.1104 150.0) 26.0%, transparent); - --t-color-transparent-green8: color-mix(in oklab, oklch(49.00% 0.1200 150.0) 34.0%, transparent); - --t-color-transparent-green9: color-mix(in oklab, oklch(58.00% 0.1200 150.0) 44.0%, transparent); - --t-color-transparent-green10: color-mix(in oklab, oklch(63.00% 0.1176 150.0) 50.0%, transparent); - --t-color-transparent-green11: color-mix(in oklab, oklch(77.00% 0.0960 150.0) 62.0%, transparent); - --t-color-transparent-green12: color-mix(in oklab, oklch(90.00% 0.0540 150.0) 86.0%, transparent); - --t-color-transparent-turquoise1: color-mix(in oklab, oklch(18.00% 0.0180 195.0) 3.0%, transparent); - --t-color-transparent-turquoise2: color-mix(in oklab, oklch(21.00% 0.0300 195.0) 6.0%, transparent); - --t-color-transparent-turquoise3: color-mix(in oklab, oklch(25.00% 0.0540 195.0) 9.0%, transparent); - --t-color-transparent-turquoise4: color-mix(in oklab, oklch(28.00% 0.0720 195.0) 12.0%, transparent); - --t-color-transparent-turquoise5: color-mix(in oklab, oklch(32.00% 0.0864 195.0) 16.0%, transparent); - --t-color-transparent-turquoise6: color-mix(in oklab, oklch(36.00% 0.0984 195.0) 20.0%, transparent); - --t-color-transparent-turquoise7: color-mix(in oklab, oklch(41.00% 0.1104 195.0) 26.0%, transparent); - --t-color-transparent-turquoise8: color-mix(in oklab, oklch(49.00% 0.1200 195.0) 34.0%, transparent); - --t-color-transparent-turquoise9: color-mix(in oklab, oklch(58.00% 0.1200 195.0) 44.0%, transparent); - --t-color-transparent-turquoise10: color-mix(in oklab, oklch(63.00% 0.1176 195.0) 50.0%, transparent); - --t-color-transparent-turquoise11: color-mix(in oklab, oklch(77.00% 0.0960 195.0) 62.0%, transparent); - --t-color-transparent-turquoise12: color-mix(in oklab, oklch(90.00% 0.0540 195.0) 86.0%, transparent); - --t-color-transparent-sky1: color-mix(in oklab, oklch(18.00% 0.0180 235.0) 3.0%, transparent); - --t-color-transparent-sky2: color-mix(in oklab, oklch(21.00% 0.0300 235.0) 6.0%, transparent); - --t-color-transparent-sky3: color-mix(in oklab, oklch(25.00% 0.0540 235.0) 9.0%, transparent); - --t-color-transparent-sky4: color-mix(in oklab, oklch(28.00% 0.0720 235.0) 12.0%, transparent); - --t-color-transparent-sky5: color-mix(in oklab, oklch(32.00% 0.0864 235.0) 16.0%, transparent); - --t-color-transparent-sky6: color-mix(in oklab, oklch(36.00% 0.0984 235.0) 20.0%, transparent); - --t-color-transparent-sky7: color-mix(in oklab, oklch(41.00% 0.1104 235.0) 26.0%, transparent); - --t-color-transparent-sky8: color-mix(in oklab, oklch(49.00% 0.1200 235.0) 34.0%, transparent); - --t-color-transparent-sky9: color-mix(in oklab, oklch(58.00% 0.1200 235.0) 44.0%, transparent); - --t-color-transparent-sky10: color-mix(in oklab, oklch(63.00% 0.1176 235.0) 50.0%, transparent); - --t-color-transparent-sky11: color-mix(in oklab, oklch(77.00% 0.0960 235.0) 62.0%, transparent); - --t-color-transparent-sky12: color-mix(in oklab, oklch(90.00% 0.0540 235.0) 86.0%, transparent); - --t-color-transparent-blue1: color-mix(in oklab, oklch(18.00% 0.0180 258.0) 3.0%, transparent); - --t-color-transparent-blue2: color-mix(in oklab, oklch(21.00% 0.0300 258.0) 6.0%, transparent); - --t-color-transparent-blue3: color-mix(in oklab, oklch(25.00% 0.0540 258.0) 9.0%, transparent); - --t-color-transparent-blue4: color-mix(in oklab, oklch(28.00% 0.0720 258.0) 12.0%, transparent); - --t-color-transparent-blue5: color-mix(in oklab, oklch(32.00% 0.0864 258.0) 16.0%, transparent); - --t-color-transparent-blue6: color-mix(in oklab, oklch(36.00% 0.0984 258.0) 20.0%, transparent); - --t-color-transparent-blue7: color-mix(in oklab, oklch(41.00% 0.1104 258.0) 26.0%, transparent); - --t-color-transparent-blue8: color-mix(in oklab, oklch(49.00% 0.1200 258.0) 34.0%, transparent); - --t-color-transparent-blue9: color-mix(in oklab, oklch(58.00% 0.1200 258.0) 44.0%, transparent); - --t-color-transparent-blue10: color-mix(in oklab, oklch(63.00% 0.1176 258.0) 50.0%, transparent); - --t-color-transparent-blue11: color-mix(in oklab, oklch(77.00% 0.0960 258.0) 62.0%, transparent); - --t-color-transparent-blue12: color-mix(in oklab, oklch(90.00% 0.0540 258.0) 86.0%, transparent); - --t-color-transparent-purple1: color-mix(in oklab, oklch(18.00% 0.0180 310.0) 3.0%, transparent); - --t-color-transparent-purple2: color-mix(in oklab, oklch(21.00% 0.0300 310.0) 6.0%, transparent); - --t-color-transparent-purple3: color-mix(in oklab, oklch(25.00% 0.0540 310.0) 9.0%, transparent); - --t-color-transparent-purple4: color-mix(in oklab, oklch(28.00% 0.0720 310.0) 12.0%, transparent); - --t-color-transparent-purple5: color-mix(in oklab, oklch(32.00% 0.0864 310.0) 16.0%, transparent); - --t-color-transparent-purple6: color-mix(in oklab, oklch(36.00% 0.0984 310.0) 20.0%, transparent); - --t-color-transparent-purple7: color-mix(in oklab, oklch(41.00% 0.1104 310.0) 26.0%, transparent); - --t-color-transparent-purple8: color-mix(in oklab, oklch(49.00% 0.1200 310.0) 34.0%, transparent); - --t-color-transparent-purple9: color-mix(in oklab, oklch(58.00% 0.1200 310.0) 44.0%, transparent); - --t-color-transparent-purple10: color-mix(in oklab, oklch(63.00% 0.1176 310.0) 50.0%, transparent); - --t-color-transparent-purple11: color-mix(in oklab, oklch(77.00% 0.0960 310.0) 62.0%, transparent); - --t-color-transparent-purple12: color-mix(in oklab, oklch(90.00% 0.0540 310.0) 86.0%, transparent); - --t-color-transparent-pink1: color-mix(in oklab, oklch(18.00% 0.0180 350.0) 3.0%, transparent); - --t-color-transparent-pink2: color-mix(in oklab, oklch(21.00% 0.0300 350.0) 6.0%, transparent); - --t-color-transparent-pink3: color-mix(in oklab, oklch(25.00% 0.0540 350.0) 9.0%, transparent); - --t-color-transparent-pink4: color-mix(in oklab, oklch(28.00% 0.0720 350.0) 12.0%, transparent); - --t-color-transparent-pink5: color-mix(in oklab, oklch(32.00% 0.0864 350.0) 16.0%, transparent); - --t-color-transparent-pink6: color-mix(in oklab, oklch(36.00% 0.0984 350.0) 20.0%, transparent); - --t-color-transparent-pink7: color-mix(in oklab, oklch(41.00% 0.1104 350.0) 26.0%, transparent); - --t-color-transparent-pink8: color-mix(in oklab, oklch(49.00% 0.1200 350.0) 34.0%, transparent); - --t-color-transparent-pink9: color-mix(in oklab, oklch(58.00% 0.1200 350.0) 44.0%, transparent); - --t-color-transparent-pink10: color-mix(in oklab, oklch(63.00% 0.1176 350.0) 50.0%, transparent); - --t-color-transparent-pink11: color-mix(in oklab, oklch(77.00% 0.0960 350.0) 62.0%, transparent); - --t-color-transparent-pink12: color-mix(in oklab, oklch(90.00% 0.0540 350.0) 86.0%, transparent); - --t-color-transparent-red1: color-mix(in oklab, oklch(18.00% 0.0180 25.0) 3.0%, transparent); - --t-color-transparent-red2: color-mix(in oklab, oklch(21.00% 0.0300 25.0) 6.0%, transparent); - --t-color-transparent-red3: color-mix(in oklab, oklch(25.00% 0.0540 25.0) 9.0%, transparent); - --t-color-transparent-red4: color-mix(in oklab, oklch(28.00% 0.0720 25.0) 12.0%, transparent); - --t-color-transparent-red5: color-mix(in oklab, oklch(32.00% 0.0864 25.0) 16.0%, transparent); - --t-color-transparent-red6: color-mix(in oklab, oklch(36.00% 0.0984 25.0) 20.0%, transparent); - --t-color-transparent-red7: color-mix(in oklab, oklch(41.00% 0.1104 25.0) 26.0%, transparent); - --t-color-transparent-red8: color-mix(in oklab, oklch(49.00% 0.1200 25.0) 34.0%, transparent); - --t-color-transparent-red9: color-mix(in oklab, oklch(58.00% 0.1200 25.0) 44.0%, transparent); - --t-color-transparent-red10: color-mix(in oklab, oklch(63.00% 0.1176 25.0) 50.0%, transparent); - --t-color-transparent-red11: color-mix(in oklab, oklch(77.00% 0.0960 25.0) 62.0%, transparent); - --t-color-transparent-red12: color-mix(in oklab, oklch(90.00% 0.0540 25.0) 86.0%, transparent); - --t-color-transparent-orange1: color-mix(in oklab, oklch(18.00% 0.0180 60.0) 3.0%, transparent); - --t-color-transparent-orange2: color-mix(in oklab, oklch(21.00% 0.0300 60.0) 6.0%, transparent); - --t-color-transparent-orange3: color-mix(in oklab, oklch(25.00% 0.0540 60.0) 9.0%, transparent); - --t-color-transparent-orange4: color-mix(in oklab, oklch(28.00% 0.0720 60.0) 12.0%, transparent); - --t-color-transparent-orange5: color-mix(in oklab, oklch(32.00% 0.0864 60.0) 16.0%, transparent); - --t-color-transparent-orange6: color-mix(in oklab, oklch(36.00% 0.0984 60.0) 20.0%, transparent); - --t-color-transparent-orange7: color-mix(in oklab, oklch(41.00% 0.1104 60.0) 26.0%, transparent); - --t-color-transparent-orange8: color-mix(in oklab, oklch(49.00% 0.1200 60.0) 34.0%, transparent); - --t-color-transparent-orange9: color-mix(in oklab, oklch(58.00% 0.1200 60.0) 44.0%, transparent); - --t-color-transparent-orange10: color-mix(in oklab, oklch(63.00% 0.1176 60.0) 50.0%, transparent); - --t-color-transparent-orange11: color-mix(in oklab, oklch(77.00% 0.0960 60.0) 62.0%, transparent); - --t-color-transparent-orange12: color-mix(in oklab, oklch(90.00% 0.0540 60.0) 86.0%, transparent); - --t-color-transparent-yellow1: color-mix(in oklab, oklch(18.00% 0.0180 100.0) 3.0%, transparent); - --t-color-transparent-yellow2: color-mix(in oklab, oklch(21.00% 0.0300 100.0) 6.0%, transparent); - --t-color-transparent-yellow3: color-mix(in oklab, oklch(25.00% 0.0540 100.0) 9.0%, transparent); - --t-color-transparent-yellow4: color-mix(in oklab, oklch(28.00% 0.0720 100.0) 12.0%, transparent); - --t-color-transparent-yellow5: color-mix(in oklab, oklch(32.00% 0.0864 100.0) 16.0%, transparent); - --t-color-transparent-yellow6: color-mix(in oklab, oklch(36.00% 0.0984 100.0) 20.0%, transparent); - --t-color-transparent-yellow7: color-mix(in oklab, oklch(41.00% 0.1104 100.0) 26.0%, transparent); - --t-color-transparent-yellow8: color-mix(in oklab, oklch(49.00% 0.1200 100.0) 34.0%, transparent); - --t-color-transparent-yellow9: color-mix(in oklab, oklch(58.00% 0.1200 100.0) 44.0%, transparent); - --t-color-transparent-yellow10: color-mix(in oklab, oklch(63.00% 0.1176 100.0) 50.0%, transparent); - --t-color-transparent-yellow11: color-mix(in oklab, oklch(77.00% 0.0960 100.0) 62.0%, transparent); - --t-color-transparent-yellow12: color-mix(in oklab, oklch(90.00% 0.0540 100.0) 86.0%, transparent); - --t-color-transparent-gray1: color-mix(in oklab, oklch(18.00% 0.0000 0.0) 3.0%, transparent); - --t-color-transparent-gray2: color-mix(in oklab, oklch(21.00% 0.0000 0.0) 6.0%, transparent); - --t-color-transparent-gray3: color-mix(in oklab, oklch(25.00% 0.0000 0.0) 9.0%, transparent); - --t-color-transparent-gray4: color-mix(in oklab, oklch(28.00% 0.0000 0.0) 12.0%, transparent); - --t-color-transparent-gray5: color-mix(in oklab, oklch(32.00% 0.0000 0.0) 16.0%, transparent); - --t-color-transparent-gray6: color-mix(in oklab, oklch(36.00% 0.0000 0.0) 20.0%, transparent); - --t-color-transparent-gray7: color-mix(in oklab, oklch(41.00% 0.0000 0.0) 26.0%, transparent); - --t-color-transparent-gray8: color-mix(in oklab, oklch(49.00% 0.0000 0.0) 34.0%, transparent); - --t-color-transparent-gray9: color-mix(in oklab, oklch(58.00% 0.0000 0.0) 44.0%, transparent); - --t-color-transparent-gray10: color-mix(in oklab, oklch(63.00% 0.0000 0.0) 50.0%, transparent); - --t-color-transparent-gray11: color-mix(in oklab, oklch(77.00% 0.0000 0.0) 62.0%, transparent); - --t-color-transparent-gray12: color-mix(in oklab, oklch(90.00% 0.0000 0.0) 86.0%, transparent); - --t-color-transparent-mauve1: color-mix(in oklab, oklch(18.00% 0.0045 300.0) 3.0%, transparent); - --t-color-transparent-mauve2: color-mix(in oklab, oklch(21.00% 0.0075 300.0) 6.0%, transparent); - --t-color-transparent-mauve3: color-mix(in oklab, oklch(25.00% 0.0135 300.0) 9.0%, transparent); - --t-color-transparent-mauve4: color-mix(in oklab, oklch(28.00% 0.0180 300.0) 12.0%, transparent); - --t-color-transparent-mauve5: color-mix(in oklab, oklch(32.00% 0.0216 300.0) 16.0%, transparent); - --t-color-transparent-mauve6: color-mix(in oklab, oklch(36.00% 0.0246 300.0) 20.0%, transparent); - --t-color-transparent-mauve7: color-mix(in oklab, oklch(41.00% 0.0276 300.0) 26.0%, transparent); - --t-color-transparent-mauve8: color-mix(in oklab, oklch(49.00% 0.0300 300.0) 34.0%, transparent); - --t-color-transparent-mauve9: color-mix(in oklab, oklch(58.00% 0.0300 300.0) 44.0%, transparent); - --t-color-transparent-mauve10: color-mix(in oklab, oklch(63.00% 0.0294 300.0) 50.0%, transparent); - --t-color-transparent-mauve11: color-mix(in oklab, oklch(77.00% 0.0240 300.0) 62.0%, transparent); - --t-color-transparent-mauve12: color-mix(in oklab, oklch(90.00% 0.0135 300.0) 86.0%, transparent); - --t-color-transparent-slate1: color-mix(in oklab, oklch(18.00% 0.0045 260.0) 3.0%, transparent); - --t-color-transparent-slate2: color-mix(in oklab, oklch(21.00% 0.0075 260.0) 6.0%, transparent); - --t-color-transparent-slate3: color-mix(in oklab, oklch(25.00% 0.0135 260.0) 9.0%, transparent); - --t-color-transparent-slate4: color-mix(in oklab, oklch(28.00% 0.0180 260.0) 12.0%, transparent); - --t-color-transparent-slate5: color-mix(in oklab, oklch(32.00% 0.0216 260.0) 16.0%, transparent); - --t-color-transparent-slate6: color-mix(in oklab, oklch(36.00% 0.0246 260.0) 20.0%, transparent); - --t-color-transparent-slate7: color-mix(in oklab, oklch(41.00% 0.0276 260.0) 26.0%, transparent); - --t-color-transparent-slate8: color-mix(in oklab, oklch(49.00% 0.0300 260.0) 34.0%, transparent); - --t-color-transparent-slate9: color-mix(in oklab, oklch(58.00% 0.0300 260.0) 44.0%, transparent); - --t-color-transparent-slate10: color-mix(in oklab, oklch(63.00% 0.0294 260.0) 50.0%, transparent); - --t-color-transparent-slate11: color-mix(in oklab, oklch(77.00% 0.0240 260.0) 62.0%, transparent); - --t-color-transparent-slate12: color-mix(in oklab, oklch(90.00% 0.0135 260.0) 86.0%, transparent); - --t-color-transparent-sage1: color-mix(in oklab, oklch(18.00% 0.0045 160.0) 3.0%, transparent); - --t-color-transparent-sage2: color-mix(in oklab, oklch(21.00% 0.0075 160.0) 6.0%, transparent); - --t-color-transparent-sage3: color-mix(in oklab, oklch(25.00% 0.0135 160.0) 9.0%, transparent); - --t-color-transparent-sage4: color-mix(in oklab, oklch(28.00% 0.0180 160.0) 12.0%, transparent); - --t-color-transparent-sage5: color-mix(in oklab, oklch(32.00% 0.0216 160.0) 16.0%, transparent); - --t-color-transparent-sage6: color-mix(in oklab, oklch(36.00% 0.0246 160.0) 20.0%, transparent); - --t-color-transparent-sage7: color-mix(in oklab, oklch(41.00% 0.0276 160.0) 26.0%, transparent); - --t-color-transparent-sage8: color-mix(in oklab, oklch(49.00% 0.0300 160.0) 34.0%, transparent); - --t-color-transparent-sage9: color-mix(in oklab, oklch(58.00% 0.0300 160.0) 44.0%, transparent); - --t-color-transparent-sage10: color-mix(in oklab, oklch(63.00% 0.0294 160.0) 50.0%, transparent); - --t-color-transparent-sage11: color-mix(in oklab, oklch(77.00% 0.0240 160.0) 62.0%, transparent); - --t-color-transparent-sage12: color-mix(in oklab, oklch(90.00% 0.0135 160.0) 86.0%, transparent); - --t-color-transparent-olive1: color-mix(in oklab, oklch(18.00% 0.0045 120.0) 3.0%, transparent); - --t-color-transparent-olive2: color-mix(in oklab, oklch(21.00% 0.0075 120.0) 6.0%, transparent); - --t-color-transparent-olive3: color-mix(in oklab, oklch(25.00% 0.0135 120.0) 9.0%, transparent); - --t-color-transparent-olive4: color-mix(in oklab, oklch(28.00% 0.0180 120.0) 12.0%, transparent); - --t-color-transparent-olive5: color-mix(in oklab, oklch(32.00% 0.0216 120.0) 16.0%, transparent); - --t-color-transparent-olive6: color-mix(in oklab, oklch(36.00% 0.0246 120.0) 20.0%, transparent); - --t-color-transparent-olive7: color-mix(in oklab, oklch(41.00% 0.0276 120.0) 26.0%, transparent); - --t-color-transparent-olive8: color-mix(in oklab, oklch(49.00% 0.0300 120.0) 34.0%, transparent); - --t-color-transparent-olive9: color-mix(in oklab, oklch(58.00% 0.0300 120.0) 44.0%, transparent); - --t-color-transparent-olive10: color-mix(in oklab, oklch(63.00% 0.0294 120.0) 50.0%, transparent); - --t-color-transparent-olive11: color-mix(in oklab, oklch(77.00% 0.0240 120.0) 62.0%, transparent); - --t-color-transparent-olive12: color-mix(in oklab, oklch(90.00% 0.0135 120.0) 86.0%, transparent); - --t-color-transparent-sand1: color-mix(in oklab, oklch(18.00% 0.0045 80.0) 3.0%, transparent); - --t-color-transparent-sand2: color-mix(in oklab, oklch(21.00% 0.0075 80.0) 6.0%, transparent); - --t-color-transparent-sand3: color-mix(in oklab, oklch(25.00% 0.0135 80.0) 9.0%, transparent); - --t-color-transparent-sand4: color-mix(in oklab, oklch(28.00% 0.0180 80.0) 12.0%, transparent); - --t-color-transparent-sand5: color-mix(in oklab, oklch(32.00% 0.0216 80.0) 16.0%, transparent); - --t-color-transparent-sand6: color-mix(in oklab, oklch(36.00% 0.0246 80.0) 20.0%, transparent); - --t-color-transparent-sand7: color-mix(in oklab, oklch(41.00% 0.0276 80.0) 26.0%, transparent); - --t-color-transparent-sand8: color-mix(in oklab, oklch(49.00% 0.0300 80.0) 34.0%, transparent); - --t-color-transparent-sand9: color-mix(in oklab, oklch(58.00% 0.0300 80.0) 44.0%, transparent); - --t-color-transparent-sand10: color-mix(in oklab, oklch(63.00% 0.0294 80.0) 50.0%, transparent); - --t-color-transparent-sand11: color-mix(in oklab, oklch(77.00% 0.0240 80.0) 62.0%, transparent); - --t-color-transparent-sand12: color-mix(in oklab, oklch(90.00% 0.0135 80.0) 86.0%, transparent); - --t-color-transparent-tomato1: color-mix(in oklab, oklch(18.00% 0.0180 35.0) 3.0%, transparent); - --t-color-transparent-tomato2: color-mix(in oklab, oklch(21.00% 0.0300 35.0) 6.0%, transparent); - --t-color-transparent-tomato3: color-mix(in oklab, oklch(25.00% 0.0540 35.0) 9.0%, transparent); - --t-color-transparent-tomato4: color-mix(in oklab, oklch(28.00% 0.0720 35.0) 12.0%, transparent); - --t-color-transparent-tomato5: color-mix(in oklab, oklch(32.00% 0.0864 35.0) 16.0%, transparent); - --t-color-transparent-tomato6: color-mix(in oklab, oklch(36.00% 0.0984 35.0) 20.0%, transparent); - --t-color-transparent-tomato7: color-mix(in oklab, oklch(41.00% 0.1104 35.0) 26.0%, transparent); - --t-color-transparent-tomato8: color-mix(in oklab, oklch(49.00% 0.1200 35.0) 34.0%, transparent); - --t-color-transparent-tomato9: color-mix(in oklab, oklch(58.00% 0.1200 35.0) 44.0%, transparent); - --t-color-transparent-tomato10: color-mix(in oklab, oklch(63.00% 0.1176 35.0) 50.0%, transparent); - --t-color-transparent-tomato11: color-mix(in oklab, oklch(77.00% 0.0960 35.0) 62.0%, transparent); - --t-color-transparent-tomato12: color-mix(in oklab, oklch(90.00% 0.0540 35.0) 86.0%, transparent); - --t-color-transparent-ruby1: color-mix(in oklab, oklch(18.00% 0.0180 12.0) 3.0%, transparent); - --t-color-transparent-ruby2: color-mix(in oklab, oklch(21.00% 0.0300 12.0) 6.0%, transparent); - --t-color-transparent-ruby3: color-mix(in oklab, oklch(25.00% 0.0540 12.0) 9.0%, transparent); - --t-color-transparent-ruby4: color-mix(in oklab, oklch(28.00% 0.0720 12.0) 12.0%, transparent); - --t-color-transparent-ruby5: color-mix(in oklab, oklch(32.00% 0.0864 12.0) 16.0%, transparent); - --t-color-transparent-ruby6: color-mix(in oklab, oklch(36.00% 0.0984 12.0) 20.0%, transparent); - --t-color-transparent-ruby7: color-mix(in oklab, oklch(41.00% 0.1104 12.0) 26.0%, transparent); - --t-color-transparent-ruby8: color-mix(in oklab, oklch(49.00% 0.1200 12.0) 34.0%, transparent); - --t-color-transparent-ruby9: color-mix(in oklab, oklch(58.00% 0.1200 12.0) 44.0%, transparent); - --t-color-transparent-ruby10: color-mix(in oklab, oklch(63.00% 0.1176 12.0) 50.0%, transparent); - --t-color-transparent-ruby11: color-mix(in oklab, oklch(77.00% 0.0960 12.0) 62.0%, transparent); - --t-color-transparent-ruby12: color-mix(in oklab, oklch(90.00% 0.0540 12.0) 86.0%, transparent); - --t-color-transparent-crimson1: color-mix(in oklab, oklch(18.00% 0.0180 0.0) 3.0%, transparent); - --t-color-transparent-crimson2: color-mix(in oklab, oklch(21.00% 0.0300 0.0) 6.0%, transparent); - --t-color-transparent-crimson3: color-mix(in oklab, oklch(25.00% 0.0540 0.0) 9.0%, transparent); - --t-color-transparent-crimson4: color-mix(in oklab, oklch(28.00% 0.0720 0.0) 12.0%, transparent); - --t-color-transparent-crimson5: color-mix(in oklab, oklch(32.00% 0.0864 0.0) 16.0%, transparent); - --t-color-transparent-crimson6: color-mix(in oklab, oklch(36.00% 0.0984 0.0) 20.0%, transparent); - --t-color-transparent-crimson7: color-mix(in oklab, oklch(41.00% 0.1104 0.0) 26.0%, transparent); - --t-color-transparent-crimson8: color-mix(in oklab, oklch(49.00% 0.1200 0.0) 34.0%, transparent); - --t-color-transparent-crimson9: color-mix(in oklab, oklch(58.00% 0.1200 0.0) 44.0%, transparent); - --t-color-transparent-crimson10: color-mix(in oklab, oklch(63.00% 0.1176 0.0) 50.0%, transparent); - --t-color-transparent-crimson11: color-mix(in oklab, oklch(77.00% 0.0960 0.0) 62.0%, transparent); - --t-color-transparent-crimson12: color-mix(in oklab, oklch(90.00% 0.0540 0.0) 86.0%, transparent); - --t-color-transparent-plum1: color-mix(in oklab, oklch(18.00% 0.0180 330.0) 3.0%, transparent); - --t-color-transparent-plum2: color-mix(in oklab, oklch(21.00% 0.0300 330.0) 6.0%, transparent); - --t-color-transparent-plum3: color-mix(in oklab, oklch(25.00% 0.0540 330.0) 9.0%, transparent); - --t-color-transparent-plum4: color-mix(in oklab, oklch(28.00% 0.0720 330.0) 12.0%, transparent); - --t-color-transparent-plum5: color-mix(in oklab, oklch(32.00% 0.0864 330.0) 16.0%, transparent); - --t-color-transparent-plum6: color-mix(in oklab, oklch(36.00% 0.0984 330.0) 20.0%, transparent); - --t-color-transparent-plum7: color-mix(in oklab, oklch(41.00% 0.1104 330.0) 26.0%, transparent); - --t-color-transparent-plum8: color-mix(in oklab, oklch(49.00% 0.1200 330.0) 34.0%, transparent); - --t-color-transparent-plum9: color-mix(in oklab, oklch(58.00% 0.1200 330.0) 44.0%, transparent); - --t-color-transparent-plum10: color-mix(in oklab, oklch(63.00% 0.1176 330.0) 50.0%, transparent); - --t-color-transparent-plum11: color-mix(in oklab, oklch(77.00% 0.0960 330.0) 62.0%, transparent); - --t-color-transparent-plum12: color-mix(in oklab, oklch(90.00% 0.0540 330.0) 86.0%, transparent); - --t-color-transparent-violet1: color-mix(in oklab, oklch(18.00% 0.0180 295.0) 3.0%, transparent); - --t-color-transparent-violet2: color-mix(in oklab, oklch(21.00% 0.0300 295.0) 6.0%, transparent); - --t-color-transparent-violet3: color-mix(in oklab, oklch(25.00% 0.0540 295.0) 9.0%, transparent); - --t-color-transparent-violet4: color-mix(in oklab, oklch(28.00% 0.0720 295.0) 12.0%, transparent); - --t-color-transparent-violet5: color-mix(in oklab, oklch(32.00% 0.0864 295.0) 16.0%, transparent); - --t-color-transparent-violet6: color-mix(in oklab, oklch(36.00% 0.0984 295.0) 20.0%, transparent); - --t-color-transparent-violet7: color-mix(in oklab, oklch(41.00% 0.1104 295.0) 26.0%, transparent); - --t-color-transparent-violet8: color-mix(in oklab, oklch(49.00% 0.1200 295.0) 34.0%, transparent); - --t-color-transparent-violet9: color-mix(in oklab, oklch(58.00% 0.1200 295.0) 44.0%, transparent); - --t-color-transparent-violet10: color-mix(in oklab, oklch(63.00% 0.1176 295.0) 50.0%, transparent); - --t-color-transparent-violet11: color-mix(in oklab, oklch(77.00% 0.0960 295.0) 62.0%, transparent); - --t-color-transparent-violet12: color-mix(in oklab, oklch(90.00% 0.0540 295.0) 86.0%, transparent); - --t-color-transparent-iris1: color-mix(in oklab, oklch(18.00% 0.0180 275.0) 3.0%, transparent); - --t-color-transparent-iris2: color-mix(in oklab, oklch(21.00% 0.0300 275.0) 6.0%, transparent); - --t-color-transparent-iris3: color-mix(in oklab, oklch(25.00% 0.0540 275.0) 9.0%, transparent); - --t-color-transparent-iris4: color-mix(in oklab, oklch(28.00% 0.0720 275.0) 12.0%, transparent); - --t-color-transparent-iris5: color-mix(in oklab, oklch(32.00% 0.0864 275.0) 16.0%, transparent); - --t-color-transparent-iris6: color-mix(in oklab, oklch(36.00% 0.0984 275.0) 20.0%, transparent); - --t-color-transparent-iris7: color-mix(in oklab, oklch(41.00% 0.1104 275.0) 26.0%, transparent); - --t-color-transparent-iris8: color-mix(in oklab, oklch(49.00% 0.1200 275.0) 34.0%, transparent); - --t-color-transparent-iris9: color-mix(in oklab, oklch(58.00% 0.1200 275.0) 44.0%, transparent); - --t-color-transparent-iris10: color-mix(in oklab, oklch(63.00% 0.1176 275.0) 50.0%, transparent); - --t-color-transparent-iris11: color-mix(in oklab, oklch(77.00% 0.0960 275.0) 62.0%, transparent); - --t-color-transparent-iris12: color-mix(in oklab, oklch(90.00% 0.0540 275.0) 86.0%, transparent); - --t-color-transparent-cyan1: color-mix(in oklab, oklch(18.00% 0.0180 220.0) 3.0%, transparent); - --t-color-transparent-cyan2: color-mix(in oklab, oklch(21.00% 0.0300 220.0) 6.0%, transparent); - --t-color-transparent-cyan3: color-mix(in oklab, oklch(25.00% 0.0540 220.0) 9.0%, transparent); - --t-color-transparent-cyan4: color-mix(in oklab, oklch(28.00% 0.0720 220.0) 12.0%, transparent); - --t-color-transparent-cyan5: color-mix(in oklab, oklch(32.00% 0.0864 220.0) 16.0%, transparent); - --t-color-transparent-cyan6: color-mix(in oklab, oklch(36.00% 0.0984 220.0) 20.0%, transparent); - --t-color-transparent-cyan7: color-mix(in oklab, oklch(41.00% 0.1104 220.0) 26.0%, transparent); - --t-color-transparent-cyan8: color-mix(in oklab, oklch(49.00% 0.1200 220.0) 34.0%, transparent); - --t-color-transparent-cyan9: color-mix(in oklab, oklch(58.00% 0.1200 220.0) 44.0%, transparent); - --t-color-transparent-cyan10: color-mix(in oklab, oklch(63.00% 0.1176 220.0) 50.0%, transparent); - --t-color-transparent-cyan11: color-mix(in oklab, oklch(77.00% 0.0960 220.0) 62.0%, transparent); - --t-color-transparent-cyan12: color-mix(in oklab, oklch(90.00% 0.0540 220.0) 86.0%, transparent); - --t-color-transparent-jade1: color-mix(in oklab, oklch(18.00% 0.0180 165.0) 3.0%, transparent); - --t-color-transparent-jade2: color-mix(in oklab, oklch(21.00% 0.0300 165.0) 6.0%, transparent); - --t-color-transparent-jade3: color-mix(in oklab, oklch(25.00% 0.0540 165.0) 9.0%, transparent); - --t-color-transparent-jade4: color-mix(in oklab, oklch(28.00% 0.0720 165.0) 12.0%, transparent); - --t-color-transparent-jade5: color-mix(in oklab, oklch(32.00% 0.0864 165.0) 16.0%, transparent); - --t-color-transparent-jade6: color-mix(in oklab, oklch(36.00% 0.0984 165.0) 20.0%, transparent); - --t-color-transparent-jade7: color-mix(in oklab, oklch(41.00% 0.1104 165.0) 26.0%, transparent); - --t-color-transparent-jade8: color-mix(in oklab, oklch(49.00% 0.1200 165.0) 34.0%, transparent); - --t-color-transparent-jade9: color-mix(in oklab, oklch(58.00% 0.1200 165.0) 44.0%, transparent); - --t-color-transparent-jade10: color-mix(in oklab, oklch(63.00% 0.1176 165.0) 50.0%, transparent); - --t-color-transparent-jade11: color-mix(in oklab, oklch(77.00% 0.0960 165.0) 62.0%, transparent); - --t-color-transparent-jade12: color-mix(in oklab, oklch(90.00% 0.0540 165.0) 86.0%, transparent); - --t-color-transparent-grass1: color-mix(in oklab, oklch(18.00% 0.0180 140.0) 3.0%, transparent); - --t-color-transparent-grass2: color-mix(in oklab, oklch(21.00% 0.0300 140.0) 6.0%, transparent); - --t-color-transparent-grass3: color-mix(in oklab, oklch(25.00% 0.0540 140.0) 9.0%, transparent); - --t-color-transparent-grass4: color-mix(in oklab, oklch(28.00% 0.0720 140.0) 12.0%, transparent); - --t-color-transparent-grass5: color-mix(in oklab, oklch(32.00% 0.0864 140.0) 16.0%, transparent); - --t-color-transparent-grass6: color-mix(in oklab, oklch(36.00% 0.0984 140.0) 20.0%, transparent); - --t-color-transparent-grass7: color-mix(in oklab, oklch(41.00% 0.1104 140.0) 26.0%, transparent); - --t-color-transparent-grass8: color-mix(in oklab, oklch(49.00% 0.1200 140.0) 34.0%, transparent); - --t-color-transparent-grass9: color-mix(in oklab, oklch(58.00% 0.1200 140.0) 44.0%, transparent); - --t-color-transparent-grass10: color-mix(in oklab, oklch(63.00% 0.1176 140.0) 50.0%, transparent); - --t-color-transparent-grass11: color-mix(in oklab, oklch(77.00% 0.0960 140.0) 62.0%, transparent); - --t-color-transparent-grass12: color-mix(in oklab, oklch(90.00% 0.0540 140.0) 86.0%, transparent); - --t-color-transparent-mint1: color-mix(in oklab, oklch(18.00% 0.0180 175.0) 3.0%, transparent); - --t-color-transparent-mint2: color-mix(in oklab, oklch(21.00% 0.0300 175.0) 6.0%, transparent); - --t-color-transparent-mint3: color-mix(in oklab, oklch(25.00% 0.0540 175.0) 9.0%, transparent); - --t-color-transparent-mint4: color-mix(in oklab, oklch(28.00% 0.0720 175.0) 12.0%, transparent); - --t-color-transparent-mint5: color-mix(in oklab, oklch(32.00% 0.0864 175.0) 16.0%, transparent); - --t-color-transparent-mint6: color-mix(in oklab, oklch(36.00% 0.0984 175.0) 20.0%, transparent); - --t-color-transparent-mint7: color-mix(in oklab, oklch(41.00% 0.1104 175.0) 26.0%, transparent); - --t-color-transparent-mint8: color-mix(in oklab, oklch(49.00% 0.1200 175.0) 34.0%, transparent); - --t-color-transparent-mint9: color-mix(in oklab, oklch(58.00% 0.1200 175.0) 44.0%, transparent); - --t-color-transparent-mint10: color-mix(in oklab, oklch(63.00% 0.1176 175.0) 50.0%, transparent); - --t-color-transparent-mint11: color-mix(in oklab, oklch(77.00% 0.0960 175.0) 62.0%, transparent); - --t-color-transparent-mint12: color-mix(in oklab, oklch(90.00% 0.0540 175.0) 86.0%, transparent); - --t-color-transparent-lime1: color-mix(in oklab, oklch(18.00% 0.0180 125.0) 3.0%, transparent); - --t-color-transparent-lime2: color-mix(in oklab, oklch(21.00% 0.0300 125.0) 6.0%, transparent); - --t-color-transparent-lime3: color-mix(in oklab, oklch(25.00% 0.0540 125.0) 9.0%, transparent); - --t-color-transparent-lime4: color-mix(in oklab, oklch(28.00% 0.0720 125.0) 12.0%, transparent); - --t-color-transparent-lime5: color-mix(in oklab, oklch(32.00% 0.0864 125.0) 16.0%, transparent); - --t-color-transparent-lime6: color-mix(in oklab, oklch(36.00% 0.0984 125.0) 20.0%, transparent); - --t-color-transparent-lime7: color-mix(in oklab, oklch(41.00% 0.1104 125.0) 26.0%, transparent); - --t-color-transparent-lime8: color-mix(in oklab, oklch(49.00% 0.1200 125.0) 34.0%, transparent); - --t-color-transparent-lime9: color-mix(in oklab, oklch(58.00% 0.1200 125.0) 44.0%, transparent); - --t-color-transparent-lime10: color-mix(in oklab, oklch(63.00% 0.1176 125.0) 50.0%, transparent); - --t-color-transparent-lime11: color-mix(in oklab, oklch(77.00% 0.0960 125.0) 62.0%, transparent); - --t-color-transparent-lime12: color-mix(in oklab, oklch(90.00% 0.0540 125.0) 86.0%, transparent); - --t-color-transparent-bronze1: color-mix(in oklab, oklch(18.00% 0.0180 45.0) 3.0%, transparent); - --t-color-transparent-bronze2: color-mix(in oklab, oklch(21.00% 0.0300 45.0) 6.0%, transparent); - --t-color-transparent-bronze3: color-mix(in oklab, oklch(25.00% 0.0540 45.0) 9.0%, transparent); - --t-color-transparent-bronze4: color-mix(in oklab, oklch(28.00% 0.0720 45.0) 12.0%, transparent); - --t-color-transparent-bronze5: color-mix(in oklab, oklch(32.00% 0.0864 45.0) 16.0%, transparent); - --t-color-transparent-bronze6: color-mix(in oklab, oklch(36.00% 0.0984 45.0) 20.0%, transparent); - --t-color-transparent-bronze7: color-mix(in oklab, oklch(41.00% 0.1104 45.0) 26.0%, transparent); - --t-color-transparent-bronze8: color-mix(in oklab, oklch(49.00% 0.1200 45.0) 34.0%, transparent); - --t-color-transparent-bronze9: color-mix(in oklab, oklch(58.00% 0.1200 45.0) 44.0%, transparent); - --t-color-transparent-bronze10: color-mix(in oklab, oklch(63.00% 0.1176 45.0) 50.0%, transparent); - --t-color-transparent-bronze11: color-mix(in oklab, oklch(77.00% 0.0960 45.0) 62.0%, transparent); - --t-color-transparent-bronze12: color-mix(in oklab, oklch(90.00% 0.0540 45.0) 86.0%, transparent); - --t-color-transparent-gold1: color-mix(in oklab, oklch(18.00% 0.0180 90.0) 3.0%, transparent); - --t-color-transparent-gold2: color-mix(in oklab, oklch(21.00% 0.0300 90.0) 6.0%, transparent); - --t-color-transparent-gold3: color-mix(in oklab, oklch(25.00% 0.0540 90.0) 9.0%, transparent); - --t-color-transparent-gold4: color-mix(in oklab, oklch(28.00% 0.0720 90.0) 12.0%, transparent); - --t-color-transparent-gold5: color-mix(in oklab, oklch(32.00% 0.0864 90.0) 16.0%, transparent); - --t-color-transparent-gold6: color-mix(in oklab, oklch(36.00% 0.0984 90.0) 20.0%, transparent); - --t-color-transparent-gold7: color-mix(in oklab, oklch(41.00% 0.1104 90.0) 26.0%, transparent); - --t-color-transparent-gold8: color-mix(in oklab, oklch(49.00% 0.1200 90.0) 34.0%, transparent); - --t-color-transparent-gold9: color-mix(in oklab, oklch(58.00% 0.1200 90.0) 44.0%, transparent); - --t-color-transparent-gold10: color-mix(in oklab, oklch(63.00% 0.1176 90.0) 50.0%, transparent); - --t-color-transparent-gold11: color-mix(in oklab, oklch(77.00% 0.0960 90.0) 62.0%, transparent); - --t-color-transparent-gold12: color-mix(in oklab, oklch(90.00% 0.0540 90.0) 86.0%, transparent); - --t-color-transparent-brown1: color-mix(in oklab, oklch(18.00% 0.0180 55.0) 3.0%, transparent); - --t-color-transparent-brown2: color-mix(in oklab, oklch(21.00% 0.0300 55.0) 6.0%, transparent); - --t-color-transparent-brown3: color-mix(in oklab, oklch(25.00% 0.0540 55.0) 9.0%, transparent); - --t-color-transparent-brown4: color-mix(in oklab, oklch(28.00% 0.0720 55.0) 12.0%, transparent); - --t-color-transparent-brown5: color-mix(in oklab, oklch(32.00% 0.0864 55.0) 16.0%, transparent); - --t-color-transparent-brown6: color-mix(in oklab, oklch(36.00% 0.0984 55.0) 20.0%, transparent); - --t-color-transparent-brown7: color-mix(in oklab, oklch(41.00% 0.1104 55.0) 26.0%, transparent); - --t-color-transparent-brown8: color-mix(in oklab, oklch(49.00% 0.1200 55.0) 34.0%, transparent); - --t-color-transparent-brown9: color-mix(in oklab, oklch(58.00% 0.1200 55.0) 44.0%, transparent); - --t-color-transparent-brown10: color-mix(in oklab, oklch(63.00% 0.1176 55.0) 50.0%, transparent); - --t-color-transparent-brown11: color-mix(in oklab, oklch(77.00% 0.0960 55.0) 62.0%, transparent); - --t-color-transparent-brown12: color-mix(in oklab, oklch(90.00% 0.0540 55.0) 86.0%, transparent); - --t-color-transparent-amber1: color-mix(in oklab, oklch(18.00% 0.0180 85.0) 3.0%, transparent); - --t-color-transparent-amber2: color-mix(in oklab, oklch(21.00% 0.0300 85.0) 6.0%, transparent); - --t-color-transparent-amber3: color-mix(in oklab, oklch(25.00% 0.0540 85.0) 9.0%, transparent); - --t-color-transparent-amber4: color-mix(in oklab, oklch(28.00% 0.0720 85.0) 12.0%, transparent); - --t-color-transparent-amber5: color-mix(in oklab, oklch(32.00% 0.0864 85.0) 16.0%, transparent); - --t-color-transparent-amber6: color-mix(in oklab, oklch(36.00% 0.0984 85.0) 20.0%, transparent); - --t-color-transparent-amber7: color-mix(in oklab, oklch(41.00% 0.1104 85.0) 26.0%, transparent); - --t-color-transparent-amber8: color-mix(in oklab, oklch(49.00% 0.1200 85.0) 34.0%, transparent); - --t-color-transparent-amber9: color-mix(in oklab, oklch(58.00% 0.1200 85.0) 44.0%, transparent); - --t-color-transparent-amber10: color-mix(in oklab, oklch(63.00% 0.1176 85.0) 50.0%, transparent); - --t-color-transparent-amber11: color-mix(in oklab, oklch(77.00% 0.0960 85.0) 62.0%, transparent); - --t-color-transparent-amber12: color-mix(in oklab, oklch(90.00% 0.0540 85.0) 86.0%, transparent); - --t-font-color-on-accent: var(--ij-ink-bright); + --t-snack-bar-success-color: color(display-p3 0.297 0.637 0.581); + --t-snack-bar-success-background-color: #11ff992d; + --t-snack-bar-error-color: color(display-p3 0.83 0.329 0.324); + --t-snack-bar-error-background-color: #ff173f2d; + --t-snack-bar-warning-color: color(display-p3 0.9 0.45 0.2); + --t-snack-bar-warning-background-color: #ff590039; + --t-snack-bar-info-color: color(display-p3 0.276 0.384 0.837); + --t-snack-bar-info-background-color: #3566ff57; + --t-snack-bar-default-color: color(display-p3 0.922 0.922 0.922); + --t-snack-bar-default-background-color: color(display-p3 1 1 1 / 0.059); + --t-tag-text-gray: color(display-p3 0.702 0.702 0.702); + --t-tag-text-mauve: color(display-p3 0.707 0.7 0.735); + --t-tag-text-slate: color(display-p3 0.692 0.704 0.728); + --t-tag-text-sage: color(display-p3 0.685 0.709 0.697); + --t-tag-text-olive: color(display-p3 0.69 0.709 0.682); + --t-tag-text-sand: color(display-p3 0.707 0.703 0.68); + --t-tag-text-tomato: color(display-p3 1 0.585 0.455); + --t-tag-text-red: color(display-p3 1 0.57 0.55); + --t-tag-text-ruby: color(display-p3 1 0.57 0.59); + --t-tag-text-crimson: color(display-p3 1 0.56 0.66); + --t-tag-text-pink: color(display-p3 1 0.535 0.78); + --t-tag-text-plum: color(display-p3 0.86 0.602 0.933); + --t-tag-text-purple: color(display-p3 0.8 0.62 1); + --t-tag-text-violet: color(display-p3 0.72 0.65 1); + --t-tag-text-iris: color(display-p3 0.685 0.662 1); + --t-tag-text-cyan: color(display-p3 0.446 0.79 0.887); + --t-tag-text-turquoise: color(display-p3 0.388 0.835 0.719); + --t-tag-text-sky: color(display-p3 0.536 0.772 0.924); + --t-tag-text-blue: color(display-p3 0.63 0.69 1); + --t-tag-text-jade: color(display-p3 0.4 0.835 0.656); + --t-tag-text-green: color(display-p3 0.434 0.828 0.573); + --t-tag-text-grass: color(display-p3 0.535 0.807 0.542); + --t-tag-text-mint: color(display-p3 0.482 0.825 0.733); + --t-tag-text-lime: color(display-p3 0.771 0.893 0.485); + --t-tag-text-bronze: color(display-p3 0.81 0.707 0.655); + --t-tag-text-gold: color(display-p3 0.784 0.728 0.635); + --t-tag-text-brown: color(display-p3 0.835 0.715 0.597); + --t-tag-text-orange: color(display-p3 1 0.63 0.38); + --t-tag-text-amber: color(display-p3 1 0.8 0.29); + --t-tag-text-yellow: color(display-p3 0.948 0.885 0.392); + --t-tag-background-gray: color(display-p3 0.098 0.098 0.098); + --t-tag-background-mauve: color(display-p3 0.138 0.134 0.144); + --t-tag-background-slate: color(display-p3 0.13 0.135 0.145); + --t-tag-background-sage: color(display-p3 0.128 0.135 0.131); + --t-tag-background-olive: color(display-p3 0.131 0.135 0.126); + --t-tag-background-sand: color(display-p3 0.135 0.135 0.129); + --t-tag-background-tomato: color(display-p3 0.205 0.097 0.083); + --t-tag-background-red: color(display-p3 0.211 0.081 0.099); + --t-tag-background-ruby: color(display-p3 0.208 0.088 0.117); + --t-tag-background-crimson: color(display-p3 0.203 0.091 0.143); + --t-tag-background-pink: color(display-p3 0.198 0.098 0.179); + --t-tag-background-plum: color(display-p3 0.192 0.105 0.202); + --t-tag-background-purple: color(display-p3 0.175 0.112 0.224); + --t-tag-background-violet: color(display-p3 0.154 0.123 0.256); + --t-tag-background-iris: color(display-p3 0.128 0.134 0.272); + --t-tag-background-cyan: color(display-p3 0.073 0.168 0.209); + --t-tag-background-turquoise: color(display-p3 0.087 0.175 0.165); + --t-tag-background-sky: color(display-p3 0.089 0.154 0.244); + --t-tag-background-blue: color(display-p3 0.105 0.141 0.275); + --t-tag-background-jade: color(display-p3 0.091 0.176 0.138); + --t-tag-background-green: color(display-p3 0.1 0.173 0.133); + --t-tag-background-grass: color(display-p3 0.118 0.163 0.122); + --t-tag-background-mint: color(display-p3 0.077 0.17 0.168); + --t-tag-background-lime: color(display-p3 0.13 0.16 0.099); + --t-tag-background-bronze: color(display-p3 0.147 0.132 0.125); + --t-tag-background-gold: color(display-p3 0.141 0.136 0.122); + --t-tag-background-brown: color(display-p3 0.151 0.13 0.115); + --t-tag-background-orange: color(display-p3 0.189 0.12 0.056); + --t-tag-background-amber: color(display-p3 0.178 0.128 0.049); + --t-tag-background-yellow: color(display-p3 0.168 0.137 0.039); + --t-code-text-gray: color(display-p3 0.482 0.482 0.482); + --t-code-text-sky: color(display-p3 0.718 0.925 0.991); + --t-code-text-pink: color(display-p3 0.808 0.356 0.645); + --t-code-text-orange: color(display-p3 0.601 0.359 0.201); + --t-code-text-green: color(display-p3 0.365 0.456 0.25); + --t-code-font-family: DM Mono; + --t--illustration-icon-color-blue: color(display-p3 0.354 0.445 0.866); + --t--illustration-icon-color-gray: color(display-p3 0.4 0.4 0.4); + --t--illustration-icon-fill-blue: color(display-p3 0.848 0.881 0.99); + --t--illustration-icon-fill-gray: color(display-p3 0.133 0.133 0.133); + --t-gray-scale-gray1: color(display-p3 0.09 0.09 0.09); + --t-gray-scale-gray2: color(display-p3 0.106 0.106 0.106); + --t-gray-scale-gray3: color(display-p3 0.098 0.098 0.098); + --t-gray-scale-gray4: color(display-p3 0.114 0.114 0.114); + --t-gray-scale-gray5: color(display-p3 0.133 0.133 0.133); + --t-gray-scale-gray6: color(display-p3 0.282 0.282 0.282); + --t-gray-scale-gray7: color(display-p3 0.298 0.298 0.298); + --t-gray-scale-gray8: color(display-p3 0.4 0.4 0.4); + --t-gray-scale-gray9: color(display-p3 0.506 0.506 0.506); + --t-gray-scale-gray10: color(display-p3 0.482 0.482 0.482); + --t-gray-scale-gray11: color(display-p3 0.702 0.702 0.702); + --t-gray-scale-gray12: color(display-p3 0.922 0.922 0.922); + --t-color-red: color(display-p3 0.83 0.329 0.324); + --t-color-ruby: color(display-p3 0.83 0.323 0.408); + --t-color-crimson: color(display-p3 0.843 0.298 0.507); + --t-color-tomato: color(display-p3 0.831 0.345 0.231); + --t-color-orange: color(display-p3 0.9 0.45 0.2); + --t-color-amber: color(display-p3 1 0.77 0.26); + --t-color-yellow: color(display-p3 1 0.92 0.22); + --t-color-lime: color(display-p3 0.78 0.928 0.466); + --t-color-grass: color(display-p3 0.38 0.647 0.378); + --t-color-green: color(display-p3 0.332 0.634 0.442); + --t-color-jade: color(display-p3 0.319 0.63 0.521); + --t-color-mint: color(display-p3 0.62 0.908 0.834); + --t-color-turquoise: color(display-p3 0.297 0.637 0.581); + --t-color-cyan: color(display-p3 0.282 0.627 0.765); + --t-color-sky: color(display-p3 0.585 0.877 0.983); + --t-color-blue: color(display-p3 0.276 0.384 0.837); + --t-color-iris: color(display-p3 0.357 0.357 0.81); + --t-color-violet: color(display-p3 0.417 0.341 0.784); + --t-color-purple: color(display-p3 0.523 0.318 0.751); + --t-color-plum: color(display-p3 0.624 0.313 0.708); + --t-color-pink: color(display-p3 0.775 0.297 0.61); + --t-color-bronze: color(display-p3 0.611 0.507 0.455); + --t-color-gold: color(display-p3 0.579 0.517 0.41); + --t-color-brown: color(display-p3 0.651 0.505 0.368); + --t-color-gray: color(display-p3 0.298 0.298 0.298); + --t-color-yellow1: color(display-p3 0.078 0.069 0.047); + --t-color-yellow2: color(display-p3 0.103 0.094 0.063); + --t-color-yellow3: color(display-p3 0.168 0.137 0.039); + --t-color-yellow4: color(display-p3 0.209 0.169 0); + --t-color-yellow5: color(display-p3 0.255 0.209 0); + --t-color-yellow6: color(display-p3 0.31 0.261 0.07); + --t-color-yellow7: color(display-p3 0.389 0.331 0.135); + --t-color-yellow8: color(display-p3 0.497 0.42 0.182); + --t-color-yellow9: color(display-p3 1 0.92 0.22); + --t-color-yellow10: color(display-p3 1 1 0.456); + --t-color-yellow11: color(display-p3 0.948 0.885 0.392); + --t-color-yellow12: color(display-p3 0.959 0.934 0.731); + --t-color-green1: color(display-p3 0.062 0.083 0.071); + --t-color-green2: color(display-p3 0.079 0.106 0.09); + --t-color-green3: color(display-p3 0.1 0.173 0.133); + --t-color-green4: color(display-p3 0.115 0.229 0.166); + --t-color-green5: color(display-p3 0.147 0.282 0.206); + --t-color-green6: color(display-p3 0.185 0.338 0.25); + --t-color-green7: color(display-p3 0.227 0.403 0.298); + --t-color-green8: color(display-p3 0.27 0.479 0.351); + --t-color-green9: color(display-p3 0.332 0.634 0.442); + --t-color-green10: color(display-p3 0.357 0.682 0.474); + --t-color-green11: color(display-p3 0.434 0.828 0.573); + --t-color-green12: color(display-p3 0.747 0.938 0.807); + --t-color-turquoise1: color(display-p3 0.059 0.083 0.079); + --t-color-turquoise2: color(display-p3 0.075 0.11 0.107); + --t-color-turquoise3: color(display-p3 0.087 0.175 0.165); + --t-color-turquoise4: color(display-p3 0.087 0.227 0.214); + --t-color-turquoise5: color(display-p3 0.12 0.277 0.261); + --t-color-turquoise6: color(display-p3 0.162 0.335 0.314); + --t-color-turquoise7: color(display-p3 0.205 0.406 0.379); + --t-color-turquoise8: color(display-p3 0.245 0.489 0.453); + --t-color-turquoise9: color(display-p3 0.297 0.637 0.581); + --t-color-turquoise10: color(display-p3 0.319 0.69 0.62); + --t-color-turquoise11: color(display-p3 0.388 0.835 0.719); + --t-color-turquoise12: color(display-p3 0.734 0.934 0.87); + --t-color-sky1: color(display-p3 0.056 0.078 0.116); + --t-color-sky2: color(display-p3 0.075 0.101 0.149); + --t-color-sky3: color(display-p3 0.089 0.154 0.244); + --t-color-sky4: color(display-p3 0.106 0.207 0.323); + --t-color-sky5: color(display-p3 0.135 0.261 0.394); + --t-color-sky6: color(display-p3 0.17 0.322 0.469); + --t-color-sky7: color(display-p3 0.205 0.394 0.557); + --t-color-sky8: color(display-p3 0.232 0.48 0.665); + --t-color-sky9: color(display-p3 0.585 0.877 0.983); + --t-color-sky10: color(display-p3 0.718 0.925 0.991); + --t-color-sky11: color(display-p3 0.536 0.772 0.924); + --t-color-sky12: color(display-p3 0.799 0.947 0.993); + --t-color-blue1: color(display-p3 0.068 0.074 0.118); + --t-color-blue2: color(display-p3 0.081 0.089 0.144); + --t-color-blue3: color(display-p3 0.105 0.141 0.275); + --t-color-blue4: color(display-p3 0.129 0.18 0.369); + --t-color-blue5: color(display-p3 0.163 0.22 0.439); + --t-color-blue6: color(display-p3 0.203 0.262 0.5); + --t-color-blue7: color(display-p3 0.245 0.309 0.575); + --t-color-blue8: color(display-p3 0.285 0.362 0.674); + --t-color-blue9: color(display-p3 0.276 0.384 0.837); + --t-color-blue10: color(display-p3 0.354 0.445 0.866); + --t-color-blue11: color(display-p3 0.63 0.69 1); + --t-color-blue12: color(display-p3 0.848 0.881 0.99); + --t-color-purple1: color(display-p3 0.09 0.068 0.103); + --t-color-purple2: color(display-p3 0.113 0.082 0.134); + --t-color-purple3: color(display-p3 0.175 0.112 0.224); + --t-color-purple4: color(display-p3 0.224 0.137 0.297); + --t-color-purple5: color(display-p3 0.264 0.167 0.349); + --t-color-purple6: color(display-p3 0.311 0.208 0.406); + --t-color-purple7: color(display-p3 0.381 0.266 0.496); + --t-color-purple8: color(display-p3 0.49 0.349 0.649); + --t-color-purple9: color(display-p3 0.523 0.318 0.751); + --t-color-purple10: color(display-p3 0.57 0.373 0.791); + --t-color-purple11: color(display-p3 0.8 0.62 1); + --t-color-purple12: color(display-p3 0.913 0.854 0.971); + --t-color-pink1: color(display-p3 0.093 0.068 0.089); + --t-color-pink2: color(display-p3 0.121 0.073 0.11); + --t-color-pink3: color(display-p3 0.198 0.098 0.179); + --t-color-pink4: color(display-p3 0.271 0.095 0.231); + --t-color-pink5: color(display-p3 0.32 0.127 0.273); + --t-color-pink6: color(display-p3 0.382 0.177 0.326); + --t-color-pink7: color(display-p3 0.477 0.238 0.405); + --t-color-pink8: color(display-p3 0.612 0.304 0.51); + --t-color-pink9: color(display-p3 0.775 0.297 0.61); + --t-color-pink10: color(display-p3 0.808 0.356 0.645); + --t-color-pink11: color(display-p3 1 0.535 0.78); + --t-color-pink12: color(display-p3 0.964 0.826 0.912); + --t-color-red1: color(display-p3 0.093 0.068 0.067); + --t-color-red2: color(display-p3 0.118 0.077 0.079); + --t-color-red3: color(display-p3 0.211 0.081 0.099); + --t-color-red4: color(display-p3 0.287 0.079 0.113); + --t-color-red5: color(display-p3 0.348 0.11 0.142); + --t-color-red6: color(display-p3 0.414 0.16 0.183); + --t-color-red7: color(display-p3 0.508 0.224 0.236); + --t-color-red8: color(display-p3 0.659 0.298 0.297); + --t-color-red9: color(display-p3 0.83 0.329 0.324); + --t-color-red10: color(display-p3 0.861 0.403 0.387); + --t-color-red11: color(display-p3 1 0.57 0.55); + --t-color-red12: color(display-p3 0.971 0.826 0.852); + --t-color-orange1: color(display-p3 0.088 0.07 0.057); + --t-color-orange2: color(display-p3 0.113 0.089 0.061); + --t-color-orange3: color(display-p3 0.189 0.12 0.056); + --t-color-orange4: color(display-p3 0.262 0.132 0); + --t-color-orange5: color(display-p3 0.315 0.168 0.016); + --t-color-orange6: color(display-p3 0.376 0.219 0.088); + --t-color-orange7: color(display-p3 0.465 0.283 0.147); + --t-color-orange8: color(display-p3 0.601 0.359 0.201); + --t-color-orange9: color(display-p3 0.9 0.45 0.2); + --t-color-orange10: color(display-p3 0.98 0.51 0.23); + --t-color-orange11: color(display-p3 1 0.63 0.38); + --t-color-orange12: color(display-p3 0.98 0.883 0.775); + --t-color-gray1: color(display-p3 0.09 0.09 0.09); + --t-color-gray2: color(display-p3 0.106 0.106 0.106); + --t-color-gray3: color(display-p3 0.098 0.098 0.098); + --t-color-gray4: color(display-p3 0.114 0.114 0.114); + --t-color-gray5: color(display-p3 0.133 0.133 0.133); + --t-color-gray6: color(display-p3 0.282 0.282 0.282); + --t-color-gray7: color(display-p3 0.298 0.298 0.298); + --t-color-gray8: color(display-p3 0.4 0.4 0.4); + --t-color-gray9: color(display-p3 0.506 0.506 0.506); + --t-color-gray10: color(display-p3 0.482 0.482 0.482); + --t-color-gray11: color(display-p3 0.702 0.702 0.702); + --t-color-gray12: color(display-p3 0.922 0.922 0.922); + --t-color-mauve1: color(display-p3 0.07 0.067 0.074); + --t-color-mauve2: color(display-p3 0.101 0.098 0.105); + --t-color-mauve3: color(display-p3 0.138 0.134 0.144); + --t-color-mauve4: color(display-p3 0.167 0.161 0.175); + --t-color-mauve5: color(display-p3 0.196 0.189 0.206); + --t-color-mauve6: color(display-p3 0.232 0.225 0.245); + --t-color-mauve7: color(display-p3 0.286 0.277 0.302); + --t-color-mauve8: color(display-p3 0.383 0.373 0.408); + --t-color-mauve9: color(display-p3 0.434 0.428 0.467); + --t-color-mauve10: color(display-p3 0.487 0.48 0.519); + --t-color-mauve11: color(display-p3 0.707 0.7 0.735); + --t-color-mauve12: color(display-p3 0.933 0.933 0.94); + --t-color-slate1: color(display-p3 0.067 0.067 0.074); + --t-color-slate2: color(display-p3 0.095 0.098 0.105); + --t-color-slate3: color(display-p3 0.13 0.135 0.145); + --t-color-slate4: color(display-p3 0.156 0.163 0.176); + --t-color-slate5: color(display-p3 0.183 0.191 0.206); + --t-color-slate6: color(display-p3 0.215 0.226 0.244); + --t-color-slate7: color(display-p3 0.265 0.28 0.302); + --t-color-slate8: color(display-p3 0.357 0.381 0.409); + --t-color-slate9: color(display-p3 0.415 0.431 0.463); + --t-color-slate10: color(display-p3 0.469 0.483 0.514); + --t-color-slate11: color(display-p3 0.692 0.704 0.728); + --t-color-slate12: color(display-p3 0.93 0.933 0.94); + --t-color-sage1: color(display-p3 0.064 0.07 0.067); + --t-color-sage2: color(display-p3 0.092 0.098 0.094); + --t-color-sage3: color(display-p3 0.128 0.135 0.131); + --t-color-sage4: color(display-p3 0.155 0.164 0.159); + --t-color-sage5: color(display-p3 0.183 0.193 0.188); + --t-color-sage6: color(display-p3 0.218 0.23 0.224); + --t-color-sage7: color(display-p3 0.269 0.285 0.277); + --t-color-sage8: color(display-p3 0.362 0.382 0.373); + --t-color-sage9: color(display-p3 0.398 0.438 0.421); + --t-color-sage10: color(display-p3 0.453 0.49 0.474); + --t-color-sage11: color(display-p3 0.685 0.709 0.697); + --t-color-sage12: color(display-p3 0.927 0.933 0.93); + --t-color-olive1: color(display-p3 0.067 0.07 0.063); + --t-color-olive2: color(display-p3 0.095 0.098 0.091); + --t-color-olive3: color(display-p3 0.131 0.135 0.126); + --t-color-olive4: color(display-p3 0.158 0.163 0.153); + --t-color-olive5: color(display-p3 0.186 0.192 0.18); + --t-color-olive6: color(display-p3 0.221 0.229 0.215); + --t-color-olive7: color(display-p3 0.273 0.284 0.266); + --t-color-olive8: color(display-p3 0.365 0.382 0.359); + --t-color-olive9: color(display-p3 0.414 0.438 0.404); + --t-color-olive10: color(display-p3 0.467 0.49 0.458); + --t-color-olive11: color(display-p3 0.69 0.709 0.682); + --t-color-olive12: color(display-p3 0.927 0.933 0.926); + --t-color-sand1: color(display-p3 0.067 0.067 0.063); + --t-color-sand2: color(display-p3 0.098 0.098 0.094); + --t-color-sand3: color(display-p3 0.135 0.135 0.129); + --t-color-sand4: color(display-p3 0.164 0.163 0.156); + --t-color-sand5: color(display-p3 0.193 0.192 0.183); + --t-color-sand6: color(display-p3 0.23 0.229 0.217); + --t-color-sand7: color(display-p3 0.285 0.282 0.267); + --t-color-sand8: color(display-p3 0.384 0.378 0.357); + --t-color-sand9: color(display-p3 0.434 0.428 0.403); + --t-color-sand10: color(display-p3 0.487 0.481 0.456); + --t-color-sand11: color(display-p3 0.707 0.703 0.68); + --t-color-sand12: color(display-p3 0.933 0.933 0.926); + --t-color-tomato1: color(display-p3 0.09 0.068 0.067); + --t-color-tomato2: color(display-p3 0.115 0.084 0.076); + --t-color-tomato3: color(display-p3 0.205 0.097 0.083); + --t-color-tomato4: color(display-p3 0.282 0.099 0.077); + --t-color-tomato5: color(display-p3 0.339 0.129 0.101); + --t-color-tomato6: color(display-p3 0.398 0.179 0.141); + --t-color-tomato7: color(display-p3 0.487 0.245 0.194); + --t-color-tomato8: color(display-p3 0.629 0.322 0.248); + --t-color-tomato9: color(display-p3 0.831 0.345 0.231); + --t-color-tomato10: color(display-p3 0.862 0.415 0.298); + --t-color-tomato11: color(display-p3 1 0.585 0.455); + --t-color-tomato12: color(display-p3 0.959 0.833 0.802); + --t-color-ruby1: color(display-p3 0.093 0.068 0.074); + --t-color-ruby2: color(display-p3 0.113 0.083 0.089); + --t-color-ruby3: color(display-p3 0.208 0.088 0.117); + --t-color-ruby4: color(display-p3 0.279 0.092 0.147); + --t-color-ruby5: color(display-p3 0.337 0.12 0.18); + --t-color-ruby6: color(display-p3 0.401 0.166 0.223); + --t-color-ruby7: color(display-p3 0.495 0.224 0.281); + --t-color-ruby8: color(display-p3 0.652 0.295 0.359); + --t-color-ruby9: color(display-p3 0.83 0.323 0.408); + --t-color-ruby10: color(display-p3 0.857 0.392 0.455); + --t-color-ruby11: color(display-p3 1 0.57 0.59); + --t-color-ruby12: color(display-p3 0.968 0.83 0.88); + --t-color-crimson1: color(display-p3 0.093 0.068 0.078); + --t-color-crimson2: color(display-p3 0.117 0.078 0.095); + --t-color-crimson3: color(display-p3 0.203 0.091 0.143); + --t-color-crimson4: color(display-p3 0.277 0.087 0.182); + --t-color-crimson5: color(display-p3 0.332 0.115 0.22); + --t-color-crimson6: color(display-p3 0.394 0.162 0.268); + --t-color-crimson7: color(display-p3 0.489 0.222 0.336); + --t-color-crimson8: color(display-p3 0.638 0.289 0.429); + --t-color-crimson9: color(display-p3 0.843 0.298 0.507); + --t-color-crimson10: color(display-p3 0.864 0.364 0.539); + --t-color-crimson11: color(display-p3 1 0.56 0.66); + --t-color-crimson12: color(display-p3 0.966 0.834 0.906); + --t-color-plum1: color(display-p3 0.09 0.068 0.092); + --t-color-plum2: color(display-p3 0.118 0.077 0.121); + --t-color-plum3: color(display-p3 0.192 0.105 0.202); + --t-color-plum4: color(display-p3 0.25 0.121 0.271); + --t-color-plum5: color(display-p3 0.293 0.152 0.319); + --t-color-plum6: color(display-p3 0.343 0.198 0.372); + --t-color-plum7: color(display-p3 0.424 0.262 0.461); + --t-color-plum8: color(display-p3 0.54 0.341 0.595); + --t-color-plum9: color(display-p3 0.624 0.313 0.708); + --t-color-plum10: color(display-p3 0.666 0.365 0.748); + --t-color-plum11: color(display-p3 0.86 0.602 0.933); + --t-color-plum12: color(display-p3 0.936 0.836 0.949); + --t-color-violet1: color(display-p3 0.077 0.071 0.118); + --t-color-violet2: color(display-p3 0.101 0.084 0.141); + --t-color-violet3: color(display-p3 0.154 0.123 0.256); + --t-color-violet4: color(display-p3 0.191 0.148 0.345); + --t-color-violet5: color(display-p3 0.226 0.182 0.396); + --t-color-violet6: color(display-p3 0.269 0.223 0.449); + --t-color-violet7: color(display-p3 0.326 0.277 0.53); + --t-color-violet8: color(display-p3 0.399 0.346 0.656); + --t-color-violet9: color(display-p3 0.417 0.341 0.784); + --t-color-violet10: color(display-p3 0.477 0.402 0.823); + --t-color-violet11: color(display-p3 0.72 0.65 1); + --t-color-violet12: color(display-p3 0.883 0.867 0.986); + --t-color-iris1: color(display-p3 0.075 0.075 0.114); + --t-color-iris2: color(display-p3 0.089 0.086 0.14); + --t-color-iris3: color(display-p3 0.128 0.134 0.272); + --t-color-iris4: color(display-p3 0.153 0.165 0.382); + --t-color-iris5: color(display-p3 0.192 0.201 0.44); + --t-color-iris6: color(display-p3 0.239 0.241 0.491); + --t-color-iris7: color(display-p3 0.291 0.289 0.565); + --t-color-iris8: color(display-p3 0.35 0.345 0.673); + --t-color-iris9: color(display-p3 0.357 0.357 0.81); + --t-color-iris10: color(display-p3 0.428 0.416 0.843); + --t-color-iris11: color(display-p3 0.685 0.662 1); + --t-color-iris12: color(display-p3 0.878 0.875 0.986); + --t-color-cyan1: color(display-p3 0.053 0.085 0.098); + --t-color-cyan2: color(display-p3 0.072 0.105 0.122); + --t-color-cyan3: color(display-p3 0.073 0.168 0.209); + --t-color-cyan4: color(display-p3 0.063 0.216 0.277); + --t-color-cyan5: color(display-p3 0.091 0.267 0.336); + --t-color-cyan6: color(display-p3 0.137 0.324 0.4); + --t-color-cyan7: color(display-p3 0.186 0.398 0.484); + --t-color-cyan8: color(display-p3 0.23 0.496 0.6); + --t-color-cyan9: color(display-p3 0.282 0.627 0.765); + --t-color-cyan10: color(display-p3 0.331 0.675 0.801); + --t-color-cyan11: color(display-p3 0.446 0.79 0.887); + --t-color-cyan12: color(display-p3 0.757 0.919 0.962); + --t-color-jade1: color(display-p3 0.059 0.083 0.071); + --t-color-jade2: color(display-p3 0.078 0.11 0.094); + --t-color-jade3: color(display-p3 0.091 0.176 0.138); + --t-color-jade4: color(display-p3 0.102 0.228 0.177); + --t-color-jade5: color(display-p3 0.133 0.279 0.221); + --t-color-jade6: color(display-p3 0.174 0.334 0.273); + --t-color-jade7: color(display-p3 0.219 0.402 0.335); + --t-color-jade8: color(display-p3 0.263 0.488 0.411); + --t-color-jade9: color(display-p3 0.319 0.63 0.521); + --t-color-jade10: color(display-p3 0.338 0.68 0.555); + --t-color-jade11: color(display-p3 0.4 0.835 0.656); + --t-color-jade12: color(display-p3 0.734 0.934 0.838); + --t-color-grass1: color(display-p3 0.062 0.083 0.067); + --t-color-grass2: color(display-p3 0.083 0.103 0.085); + --t-color-grass3: color(display-p3 0.118 0.163 0.122); + --t-color-grass4: color(display-p3 0.142 0.225 0.15); + --t-color-grass5: color(display-p3 0.178 0.279 0.186); + --t-color-grass6: color(display-p3 0.217 0.337 0.224); + --t-color-grass7: color(display-p3 0.258 0.4 0.264); + --t-color-grass8: color(display-p3 0.302 0.47 0.305); + --t-color-grass9: color(display-p3 0.38 0.647 0.378); + --t-color-grass10: color(display-p3 0.426 0.694 0.426); + --t-color-grass11: color(display-p3 0.535 0.807 0.542); + --t-color-grass12: color(display-p3 0.797 0.936 0.776); + --t-color-mint1: color(display-p3 0.059 0.082 0.081); + --t-color-mint2: color(display-p3 0.068 0.104 0.105); + --t-color-mint3: color(display-p3 0.077 0.17 0.168); + --t-color-mint4: color(display-p3 0.068 0.224 0.22); + --t-color-mint5: color(display-p3 0.104 0.275 0.264); + --t-color-mint6: color(display-p3 0.154 0.332 0.313); + --t-color-mint7: color(display-p3 0.207 0.403 0.373); + --t-color-mint8: color(display-p3 0.258 0.49 0.441); + --t-color-mint9: color(display-p3 0.62 0.908 0.834); + --t-color-mint10: color(display-p3 0.725 0.954 0.898); + --t-color-mint11: color(display-p3 0.482 0.825 0.733); + --t-color-mint12: color(display-p3 0.807 0.955 0.887); + --t-color-lime1: color(display-p3 0.067 0.073 0.048); + --t-color-lime2: color(display-p3 0.086 0.1 0.067); + --t-color-lime3: color(display-p3 0.13 0.16 0.099); + --t-color-lime4: color(display-p3 0.172 0.214 0.126); + --t-color-lime5: color(display-p3 0.213 0.266 0.153); + --t-color-lime6: color(display-p3 0.257 0.321 0.182); + --t-color-lime7: color(display-p3 0.307 0.383 0.215); + --t-color-lime8: color(display-p3 0.365 0.456 0.25); + --t-color-lime9: color(display-p3 0.78 0.928 0.466); + --t-color-lime10: color(display-p3 0.865 0.995 0.519); + --t-color-lime11: color(display-p3 0.771 0.893 0.485); + --t-color-lime12: color(display-p3 0.905 0.966 0.753); + --t-color-bronze1: color(display-p3 0.076 0.067 0.063); + --t-color-bronze2: color(display-p3 0.106 0.097 0.093); + --t-color-bronze3: color(display-p3 0.147 0.132 0.125); + --t-color-bronze4: color(display-p3 0.185 0.166 0.156); + --t-color-bronze5: color(display-p3 0.227 0.202 0.19); + --t-color-bronze6: color(display-p3 0.278 0.246 0.23); + --t-color-bronze7: color(display-p3 0.343 0.302 0.281); + --t-color-bronze8: color(display-p3 0.426 0.374 0.347); + --t-color-bronze9: color(display-p3 0.611 0.507 0.455); + --t-color-bronze10: color(display-p3 0.66 0.556 0.504); + --t-color-bronze11: color(display-p3 0.81 0.707 0.655); + --t-color-bronze12: color(display-p3 0.921 0.88 0.854); + --t-color-gold1: color(display-p3 0.071 0.071 0.067); + --t-color-gold2: color(display-p3 0.104 0.101 0.09); + --t-color-gold3: color(display-p3 0.141 0.136 0.122); + --t-color-gold4: color(display-p3 0.177 0.17 0.152); + --t-color-gold5: color(display-p3 0.217 0.207 0.185); + --t-color-gold6: color(display-p3 0.265 0.252 0.225); + --t-color-gold7: color(display-p3 0.327 0.31 0.277); + --t-color-gold8: color(display-p3 0.407 0.384 0.342); + --t-color-gold9: color(display-p3 0.579 0.517 0.41); + --t-color-gold10: color(display-p3 0.628 0.566 0.463); + --t-color-gold11: color(display-p3 0.784 0.728 0.635); + --t-color-gold12: color(display-p3 0.906 0.887 0.855); + --t-color-brown1: color(display-p3 0.071 0.067 0.059); + --t-color-brown2: color(display-p3 0.107 0.095 0.087); + --t-color-brown3: color(display-p3 0.151 0.13 0.115); + --t-color-brown4: color(display-p3 0.191 0.161 0.138); + --t-color-brown5: color(display-p3 0.235 0.194 0.162); + --t-color-brown6: color(display-p3 0.291 0.237 0.192); + --t-color-brown7: color(display-p3 0.365 0.295 0.232); + --t-color-brown8: color(display-p3 0.469 0.377 0.287); + --t-color-brown9: color(display-p3 0.651 0.505 0.368); + --t-color-brown10: color(display-p3 0.697 0.557 0.423); + --t-color-brown11: color(display-p3 0.835 0.715 0.597); + --t-color-brown12: color(display-p3 0.938 0.885 0.802); + --t-color-amber1: color(display-p3 0.082 0.07 0.05); + --t-color-amber2: color(display-p3 0.111 0.094 0.064); + --t-color-amber3: color(display-p3 0.178 0.128 0.049); + --t-color-amber4: color(display-p3 0.239 0.156 0); + --t-color-amber5: color(display-p3 0.29 0.193 0); + --t-color-amber6: color(display-p3 0.344 0.245 0.076); + --t-color-amber7: color(display-p3 0.422 0.314 0.141); + --t-color-amber8: color(display-p3 0.535 0.399 0.189); + --t-color-amber9: color(display-p3 1 0.77 0.26); + --t-color-amber10: color(display-p3 1 0.87 0.15); + --t-color-amber11: color(display-p3 1 0.8 0.29); + --t-color-amber12: color(display-p3 0.984 0.909 0.726); + --t-color-transparent-green1: #00de4505; + --t-color-transparent-green2: #29f99d0b; + --t-color-transparent-green3: #22ff991e; + --t-color-transparent-green4: #11ff992d; + --t-color-transparent-green5: #2bffa23c; + --t-color-transparent-green6: #44ffaa4b; + --t-color-transparent-green7: #50fdac5e; + --t-color-transparent-green8: #54ffad73; + --t-color-transparent-green9: #44ffa49e; + --t-color-transparent-green10: #43fea4ab; + --t-color-transparent-green11: #46fea5d4; + --t-color-transparent-green12: #bbffd7f0; + --t-color-transparent-turquoise1: #00deab05; + --t-color-transparent-turquoise2: #12fbe60c; + --t-color-transparent-turquoise3: #00ffe61e; + --t-color-transparent-turquoise4: #00ffe92d; + --t-color-transparent-turquoise5: #00ffea3b; + --t-color-transparent-turquoise6: #1cffe84b; + --t-color-transparent-turquoise7: #2efde85f; + --t-color-transparent-turquoise8: #32ffe775; + --t-color-transparent-turquoise9: #13ffe49f; + --t-color-transparent-turquoise10: #0dffe0ae; + --t-color-transparent-turquoise11: #0afed5d6; + --t-color-transparent-turquoise12: #b8ffebef; + --t-color-transparent-sky1: #0044ff0f; + --t-color-transparent-sky2: #1171fb18; + --t-color-transparent-sky3: #1184fc33; + --t-color-transparent-sky4: #128fff49; + --t-color-transparent-sky5: #1c9dfd5d; + --t-color-transparent-sky6: #28a5ff72; + --t-color-transparent-sky7: #2badfe8b; + --t-color-transparent-sky8: #1db2fea9; + --t-color-transparent-sky9: #7ce3fffe; + --t-color-transparent-sky10: #a8eeff; + --t-color-transparent-sky11: #7cd3ffef; + --t-color-transparent-sky12: #c2f3ff; + --t-color-transparent-blue1: #1133ff0f; + --t-color-transparent-blue2: #3354fa17; + --t-color-transparent-blue3: #2f62ff3c; + --t-color-transparent-blue4: #3566ff57; + --t-color-transparent-blue5: #4171fd6b; + --t-color-transparent-blue6: #5178fd7c; + --t-color-transparent-blue7: #5a7fff90; + --t-color-transparent-blue8: #5b81feac; + --t-color-transparent-blue9: #4671ffdb; + --t-color-transparent-blue10: #5c7efee3; + --t-color-transparent-blue11: #9eb1ff; + --t-color-transparent-blue12: #d6e1ff; + --t-color-transparent-purple1: #b412f90b; + --t-color-transparent-purple2: #b744f714; + --t-color-transparent-purple3: #c150ff2d; + --t-color-transparent-purple4: #bb53fd42; + --t-color-transparent-purple5: #be5cfd51; + --t-color-transparent-purple6: #c16dfd61; + --t-color-transparent-purple7: #c378fd7a; + --t-color-transparent-purple8: #c47effa4; + --t-color-transparent-purple9: #b661ffc2; + --t-color-transparent-purple10: #bc6fffcd; + --t-color-transparent-purple11: #d19dff; + --t-color-transparent-purple12: #f1ddfffa; + --t-color-transparent-pink1: #f412bc09; + --t-color-transparent-pink2: #f420bb12; + --t-color-transparent-pink3: #fe37cc29; + --t-color-transparent-pink4: #fc1ec43f; + --t-color-transparent-pink5: #fd35c24e; + --t-color-transparent-pink6: #fd51c75f; + --t-color-transparent-pink7: #fd62c87b; + --t-color-transparent-pink8: #ff68c8a2; + --t-color-transparent-pink9: #fe49bcd4; + --t-color-transparent-pink10: #ff5cc0dc; + --t-color-transparent-pink11: #ff8dcc; + --t-color-transparent-pink12: #ffd3ecfd; + --t-color-transparent-red1: #f4121209; + --t-color-transparent-red2: #f22f3e11; + --t-color-transparent-red3: #ff173f2d; + --t-color-transparent-red4: #fe0a3b44; + --t-color-transparent-red5: #ff204756; + --t-color-transparent-red6: #ff3e5668; + --t-color-transparent-red7: #ff536184; + --t-color-transparent-red8: #ff5d61b0; + --t-color-transparent-red9: #fe4e54e4; + --t-color-transparent-red10: #ff6465eb; + --t-color-transparent-red11: #ff9592; + --t-color-transparent-red12: #ffd1d9; + --t-color-transparent-orange1: #ec360007; + --t-color-transparent-orange2: #fe6d000e; + --t-color-transparent-orange3: #fb6a0025; + --t-color-transparent-orange4: #ff590039; + --t-color-transparent-orange5: #ff61004a; + --t-color-transparent-orange6: #fd75045c; + --t-color-transparent-orange7: #ff832c75; + --t-color-transparent-orange8: #fe84389d; + --t-color-transparent-orange9: #fe6d15f7; + --t-color-transparent-orange10: #ff801f; + --t-color-transparent-orange11: #ffa057; + --t-color-transparent-orange12: #ffe0c2; + --t-color-transparent-yellow1: #d1510004; + --t-color-transparent-yellow2: #f9b4000b; + --t-color-transparent-yellow3: #ffaa001e; + --t-color-transparent-yellow4: #fdb70028; + --t-color-transparent-yellow5: #febb0036; + --t-color-transparent-yellow6: #fec40046; + --t-color-transparent-yellow7: #fdcb225c; + --t-color-transparent-yellow8: #fdca327b; + --t-color-transparent-yellow9: #ffe629; + --t-color-transparent-yellow10: #ffff57; + --t-color-transparent-yellow11: #fee949f5; + --t-color-transparent-yellow12: #fef6baf6; + --t-color-transparent-gray1: color(display-p3 1 1 1 / 0.031); + --t-color-transparent-gray2: color(display-p3 1 1 1 / 0.059); + --t-color-transparent-gray3: color(display-p3 1 1 1 / 0.047); + --t-color-transparent-gray4: color(display-p3 1 1 1 / 0.071); + --t-color-transparent-gray5: color(display-p3 1 1 1 / 0.102); + --t-color-transparent-gray6: color(display-p3 1 1 1 / 0.114); + --t-color-transparent-gray7: color(display-p3 1 1 1 / 0.141); + --t-color-transparent-gray8: color(display-p3 1 1 1 / 0.22); + --t-color-transparent-gray9: color(display-p3 1 1 1 / 0.427); + --t-color-transparent-gray10: color(display-p3 1 1 1 / 0.478); + --t-color-transparent-gray11: color(display-p3 1 1 1 / 0.565); + --t-color-transparent-gray12: color(display-p3 1 1 1 / 0.91); + --t-color-transparent-mauve1: #00000000; + --t-color-transparent-mauve2: #f5f4f609; + --t-color-transparent-mauve3: #ebeaf814; + --t-color-transparent-mauve4: #eee5f81d; + --t-color-transparent-mauve5: #efe6fe25; + --t-color-transparent-mauve6: #f1e6fd30; + --t-color-transparent-mauve7: #eee9ff40; + --t-color-transparent-mauve8: #eee7ff5d; + --t-color-transparent-mauve9: #eae6fd6e; + --t-color-transparent-mauve10: #ece9fd7c; + --t-color-transparent-mauve11: #f5f1ffb7; + --t-color-transparent-mauve12: #fdfdffef; + --t-color-transparent-slate1: #00000000; + --t-color-transparent-slate2: #d8f4f609; + --t-color-transparent-slate3: #ddeaf814; + --t-color-transparent-slate4: #d3edf81d; + --t-color-transparent-slate5: #d9edfe25; + --t-color-transparent-slate6: #d6ebfd30; + --t-color-transparent-slate7: #d9edff40; + --t-color-transparent-slate8: #d9edff5d; + --t-color-transparent-slate9: #dfebfd6d; + --t-color-transparent-slate10: #e5edfd7b; + --t-color-transparent-slate11: #f1f7feb5; + --t-color-transparent-slate12: #fcfdffef; + --t-color-transparent-sage1: #00000000; + --t-color-transparent-sage2: #f0f2f108; + --t-color-transparent-sage3: #f3f5f412; + --t-color-transparent-sage4: #f2fefd1a; + --t-color-transparent-sage5: #f1fbfa22; + --t-color-transparent-sage6: #edfbf42d; + --t-color-transparent-sage7: #edfcf73c; + --t-color-transparent-sage8: #ebfdf657; + --t-color-transparent-sage9: #dffdf266; + --t-color-transparent-sage10: #e5fdf674; + --t-color-transparent-sage11: #f4fefbb0; + --t-color-transparent-sage12: #fdfffeed; + --t-color-transparent-olive1: #00000000; + --t-color-transparent-olive2: #f1f2f008; + --t-color-transparent-olive3: #f4f5f312; + --t-color-transparent-olive4: #f3fef21a; + --t-color-transparent-olive5: #f2fbf122; + --t-color-transparent-olive6: #f4faed2c; + --t-color-transparent-olive7: #f2fced3b; + --t-color-transparent-olive8: #edfdeb57; + --t-color-transparent-olive9: #ebfde766; + --t-color-transparent-olive10: #f0fdec74; + --t-color-transparent-olive11: #f6fef4b0; + --t-color-transparent-olive12: #fdfffded; + --t-color-transparent-sand1: #00000000; + --t-color-transparent-sand2: #f4f4f309; + --t-color-transparent-sand3: #f6f6f513; + --t-color-transparent-sand4: #fefef31b; + --t-color-transparent-sand5: #fbfbeb23; + --t-color-transparent-sand6: #fffaed2d; + --t-color-transparent-sand7: #fffbed3c; + --t-color-transparent-sand8: #fff9eb57; + --t-color-transparent-sand9: #fffae965; + --t-color-transparent-sand10: #fffdee73; + --t-color-transparent-sand11: #fffcf4b0; + --t-color-transparent-sand12: #fffffded; + --t-color-transparent-tomato1: #f1121208; + --t-color-transparent-tomato2: #ff55330f; + --t-color-transparent-tomato3: #ff35232b; + --t-color-transparent-tomato4: #fd201142; + --t-color-transparent-tomato5: #fe332153; + --t-color-transparent-tomato6: #ff4f3864; + --t-color-transparent-tomato7: #fd644a7d; + --t-color-transparent-tomato8: #fe6d4ea7; + --t-color-transparent-tomato9: #fe5431e4; + --t-color-transparent-tomato10: #ff6847eb; + --t-color-transparent-tomato11: #ff977d; + --t-color-transparent-tomato12: #ffd6cefb; + --t-color-transparent-ruby1: #f4124a09; + --t-color-transparent-ruby2: #fe5a7f0e; + --t-color-transparent-ruby3: #ff235d2c; + --t-color-transparent-ruby4: #fd195e42; + --t-color-transparent-ruby5: #fe2d6b53; + --t-color-transparent-ruby6: #ff447665; + --t-color-transparent-ruby7: #ff577d80; + --t-color-transparent-ruby8: #ff5c7cae; + --t-color-transparent-ruby9: #fe4c70e4; + --t-color-transparent-ruby10: #ff617beb; + --t-color-transparent-ruby11: #ff949d; + --t-color-transparent-ruby12: #ffd3e2fe; + --t-color-transparent-crimson1: #f4126709; + --t-color-transparent-crimson2: #f22f7a11; + --t-color-transparent-crimson3: #fe2a8b2a; + --t-color-transparent-crimson4: #fd158741; + --t-color-transparent-crimson5: #fd278f51; + --t-color-transparent-crimson6: #fe459763; + --t-color-transparent-crimson7: #fd559b7f; + --t-color-transparent-crimson8: #fe5b9bab; + --t-color-transparent-crimson9: #fe418de8; + --t-color-transparent-crimson10: #ff5693ed; + --t-color-transparent-crimson11: #ff92ad; + --t-color-transparent-crimson12: #ffd5eafd; + --t-color-transparent-plum1: #f112f108; + --t-color-transparent-plum2: #f22ff211; + --t-color-transparent-plum3: #fd4cfd27; + --t-color-transparent-plum4: #f646ff3a; + --t-color-transparent-plum5: #f455ff48; + --t-color-transparent-plum6: #f66dff56; + --t-color-transparent-plum7: #f07cfd70; + --t-color-transparent-plum8: #ee84ff95; + --t-color-transparent-plum9: #e961feb6; + --t-color-transparent-plum10: #ed70ffc0; + --t-color-transparent-plum11: #f19cfef3; + --t-color-transparent-plum12: #feddfef4; + --t-color-transparent-violet1: #4422ff0f; + --t-color-transparent-violet2: #853ff916; + --t-color-transparent-violet3: #8354fe36; + --t-color-transparent-violet4: #7d51fd50; + --t-color-transparent-violet5: #845ffd5f; + --t-color-transparent-violet6: #8f6cfd6d; + --t-color-transparent-violet7: #9879ff83; + --t-color-transparent-violet8: #977dfea8; + --t-color-transparent-violet9: #8668ffcc; + --t-color-transparent-violet10: #9176fed7; + --t-color-transparent-violet11: #baa7ff; + --t-color-transparent-violet12: #e3defffe; + --t-color-transparent-iris1: #3636fe0e; + --t-color-transparent-iris2: #564bf916; + --t-color-transparent-iris3: #525bff3b; + --t-color-transparent-iris4: #4d58ff5a; + --t-color-transparent-iris5: #5b62fd6b; + --t-color-transparent-iris6: #6d6ffd7a; + --t-color-transparent-iris7: #7777fe8e; + --t-color-transparent-iris8: #7b7afeac; + --t-color-transparent-iris9: #6a6afed4; + --t-color-transparent-iris10: #7d79ffdc; + --t-color-transparent-iris11: #b1a9ff; + --t-color-transparent-iris12: #e1e0fffe; + --t-color-transparent-cyan1: #0091f70a; + --t-color-transparent-cyan2: #02a7f211; + --t-color-transparent-cyan3: #00befd28; + --t-color-transparent-cyan4: #00baff3b; + --t-color-transparent-cyan5: #00befd4d; + --t-color-transparent-cyan6: #00c7fd5e; + --t-color-transparent-cyan7: #14cdff75; + --t-color-transparent-cyan8: #11cfff95; + --t-color-transparent-cyan9: #00cfffc3; + --t-color-transparent-cyan10: #28d6ffcd; + --t-color-transparent-cyan11: #52e1fee5; + --t-color-transparent-cyan12: #bbf3fef7; + --t-color-transparent-jade1: #00de4505; + --t-color-transparent-jade2: #27fba60c; + --t-color-transparent-jade3: #02f99920; + --t-color-transparent-jade4: #00ffaa2d; + --t-color-transparent-jade5: #11ffb63b; + --t-color-transparent-jade6: #34ffc24b; + --t-color-transparent-jade7: #45fdc75e; + --t-color-transparent-jade8: #48ffcf75; + --t-color-transparent-jade9: #38feca9d; + --t-color-transparent-jade10: #31fec7ab; + --t-color-transparent-jade11: #21fec0d6; + --t-color-transparent-jade12: #b8ffe1ef; + --t-color-transparent-grass1: #00de1205; + --t-color-transparent-grass2: #5ef7780a; + --t-color-transparent-grass3: #70fe8c1b; + --t-color-transparent-grass4: #57ff802c; + --t-color-transparent-grass5: #68ff8b3b; + --t-color-transparent-grass6: #71ff8f4b; + --t-color-transparent-grass7: #77fd925d; + --t-color-transparent-grass8: #77fd9070; + --t-color-transparent-grass9: #65ff82a1; + --t-color-transparent-grass10: #72ff8dae; + --t-color-transparent-grass11: #89ff9fcd; + --t-color-transparent-grass12: #ceffceef; + --t-color-transparent-mint1: #00dede05; + --t-color-transparent-mint2: #00f9f90b; + --t-color-transparent-mint3: #00fff61d; + --t-color-transparent-mint4: #00fff42c; + --t-color-transparent-mint5: #00fff23a; + --t-color-transparent-mint6: #0effeb4a; + --t-color-transparent-mint7: #34fde55e; + --t-color-transparent-mint8: #41ffdf76; + --t-color-transparent-mint9: #92ffe7e9; + --t-color-transparent-mint10: #aefeedf5; + --t-color-transparent-mint11: #67ffded2; + --t-color-transparent-mint12: #cbfee9f5; + --t-color-transparent-lime1: #11bb0003; + --t-color-transparent-lime2: #78f7000a; + --t-color-transparent-lime3: #9bfd4c1a; + --t-color-transparent-lime4: #a7fe5c29; + --t-color-transparent-lime5: #affe6537; + --t-color-transparent-lime6: #b2fe6d46; + --t-color-transparent-lime7: #b6ff6f57; + --t-color-transparent-lime8: #b6fd6d6c; + --t-color-transparent-lime9: #caff69ed; + --t-color-transparent-lime10: #d4ff70; + --t-color-transparent-lime11: #d1fe77e4; + --t-color-transparent-lime12: #e9febff7; + --t-color-transparent-bronze1: #d1110004; + --t-color-transparent-bronze2: #fbbc910c; + --t-color-transparent-bronze3: #faceb817; + --t-color-transparent-bronze4: #facdb622; + --t-color-transparent-bronze5: #ffd2c12d; + --t-color-transparent-bronze6: #ffd1c03c; + --t-color-transparent-bronze7: #fdd0c04f; + --t-color-transparent-bronze8: #ffd6c565; + --t-color-transparent-bronze9: #fec7b09b; + --t-color-transparent-bronze10: #fecab5a9; + --t-color-transparent-bronze11: #ffd7c6d1; + --t-color-transparent-bronze12: #fff1e9ec; + --t-color-transparent-gold1: #91911102; + --t-color-transparent-gold2: #f9e29d0b; + --t-color-transparent-gold3: #f8ecbb15; + --t-color-transparent-gold4: #ffeec41e; + --t-color-transparent-gold5: #feecc22a; + --t-color-transparent-gold6: #feebcb37; + --t-color-transparent-gold7: #ffedcd48; + --t-color-transparent-gold8: #fdeaca5f; + --t-color-transparent-gold9: #ffdba690; + --t-color-transparent-gold10: #fedfb09d; + --t-color-transparent-gold11: #fee7c6c8; + --t-color-transparent-gold12: #fef7ede7; + --t-color-transparent-brown1: #91110002; + --t-color-transparent-brown2: #fba67c0c; + --t-color-transparent-brown3: #fcb58c19; + --t-color-transparent-brown4: #fbbb8a24; + --t-color-transparent-brown5: #fcb88931; + --t-color-transparent-brown6: #fdba8741; + --t-color-transparent-brown7: #ffbb8856; + --t-color-transparent-brown8: #ffbe8773; + --t-color-transparent-brown9: #feb87da8; + --t-color-transparent-brown10: #ffc18cb3; + --t-color-transparent-brown11: #fed1aad9; + --t-color-transparent-brown12: #feecd4f2; + --t-color-transparent-amber1: #e63c0006; + --t-color-transparent-amber2: #fd9b000d; + --t-color-transparent-amber3: #fa820022; + --t-color-transparent-amber4: #fc820032; + --t-color-transparent-amber5: #fd8b0041; + --t-color-transparent-amber6: #fd9b0051; + --t-color-transparent-amber7: #ffab2567; + --t-color-transparent-amber8: #ffae3587; + --t-color-transparent-amber9: #ffc53d; + --t-color-transparent-amber10: #ffd60a; + --t-color-transparent-amber11: #ffca16; + --t-color-transparent-amber12: #ffe7b3; + --t-font-color-on-accent: color(display-p3 1 1 1); --t-corner-shape: round; } diff --git a/packages/twenty-ui/src/theme-constants/theme-light.css b/packages/twenty-ui/src/theme-constants/theme-light.css index eef3512d..a55517f0 100644 --- a/packages/twenty-ui/src/theme-constants/theme-light.css +++ b/packages/twenty-ui/src/theme-constants/theme-light.css @@ -69,90 +69,90 @@ --t-spacing-32: 128px; --t-spacing-0_5: 2px; --t-spacing-1_5: 6px; - --t-between-siblings-gap: var(--rec-sibling-gap); - --t-table-horizontal-cell-margin: var(--rec-cell-margin); - --t-table-checkbox-column-width: var(--rec-utility-col); - --t-table-horizontal-cell-padding: var(--rec-cell-pad); - --t-side-panel-width: var(--rec-side-panel); - --t-clickable-element-background-transition: var(--rec-clickable-transition); + --t-between-siblings-gap: 2px; + --t-table-horizontal-cell-margin: 8px; + --t-table-checkbox-column-width: 32px; + --t-table-horizontal-cell-padding: 8px; + --t-side-panel-width: 500px; + --t-clickable-element-background-transition: background 0.1s ease; --t-last-layer-z-index: 2147483647; - --t-buttons-secondary-text-color: var(--ij-ink-info); - --t-accent-primary: var(--ij-accent); - --t-accent-secondary: var(--ij-accent-hover); - --t-accent-tertiary: var(--ij-selection); - --t-accent-quaternary: var(--ij-selection-inactive); - --t-accent-accent3570: var(--ij-accent); - --t-accent-accent4060: var(--ij-accent-hover); - --t-accent-accent1: var(--ij-blue-1); - --t-accent-accent2: var(--ij-blue-2); - --t-accent-accent3: var(--ij-blue-3); - --t-accent-accent4: var(--ij-blue-4); - --t-accent-accent5: var(--ij-blue-5); - --t-accent-accent6: var(--ij-blue-6); - --t-accent-accent7: var(--ij-blue-7); - --t-accent-accent8: var(--ij-blue-8); - --t-accent-accent9: var(--ij-blue-9); - --t-accent-accent10: var(--ij-blue-10); - --t-accent-accent11: var(--ij-blue-11); - --t-accent-accent12: var(--ij-blue-11); + --t-buttons-secondary-text-color: color(display-p3 0.63 0.69 1); + --t-accent-primary: color(display-p3 0.831 0.87 1); + --t-accent-secondary: color(display-p3 0.831 0.87 1); + --t-accent-tertiary: color(display-p3 0.933 0.948 0.992); + --t-accent-quaternary: color(display-p3 0.971 0.977 0.998); + --t-accent-accent3570: color(display-p3 0.569 0.639 0.916); + --t-accent-accent4060: color(display-p3 0.569 0.639 0.916); + --t-accent-accent1: color(display-p3 0.992 0.992 0.996); + --t-accent-accent2: color(display-p3 0.971 0.977 0.998); + --t-accent-accent3: color(display-p3 0.933 0.948 0.992); + --t-accent-accent4: color(display-p3 0.885 0.914 1); + --t-accent-accent5: color(display-p3 0.831 0.87 1); + --t-accent-accent6: color(display-p3 0.767 0.814 0.995); + --t-accent-accent7: color(display-p3 0.685 0.74 0.957); + --t-accent-accent8: color(display-p3 0.569 0.639 0.916); + --t-accent-accent9: color(display-p3 0.276 0.384 0.837); + --t-accent-accent10: color(display-p3 0.234 0.343 0.801); + --t-accent-accent11: color(display-p3 0.256 0.354 0.755); + --t-accent-accent12: color(display-p3 0.133 0.175 0.348); --t-background-noisy: transparent; - --t-background-primary: var(--ij-editor); - --t-background-secondary: var(--ij-chrome); - --t-background-tertiary: var(--ij-raised); - --t-background-quaternary: var(--ij-tier-floating); - --t-background-inverted-primary: var(--ij-ink); - --t-background-inverted-secondary: var(--ij-ink-info); - --t-background-danger: var(--ij-error-bg); - --t-background-transparent-primary: var(--ij-tier-scrim); - --t-background-transparent-secondary: var(--ij-tier-scrim); - --t-background-transparent-strong: var(--ij-pressed-overlay); - --t-background-transparent-medium: var(--ij-hover-overlay); - --t-background-transparent-light: var(--ij-hover-surface); - --t-background-transparent-lighter: var(--ij-keyline-decorative); - --t-background-transparent-danger: var(--ij-error-bg); - --t-background-transparent-blue: var(--ij-selection); - --t-background-transparent-orange: var(--ij-warn-bg); - --t-background-transparent-success: var(--ij-ok-bg); - --t-background-overlay-primary: var(--ij-tier-scrim); - --t-background-overlay-secondary: var(--ij-tier-scrim); - --t-background-overlay-tertiary: var(--ij-tier-scrim); - --t-background-radial-gradient: radial-gradient(50% 62.62% at 50% 0%, var(--ij-tier-raised) 0%, var(--ij-tier-floating) 100%); - --t-background-radial-gradient-hover: radial-gradient(76.32% 95.59% at 50% 0%, var(--ij-tier-floating) 0%, var(--ij-raised) 100%); - --t-background-primary-inverted: var(--ij-ink); - --t-background-primary-inverted-hover: var(--ij-ink-info); - --t-blur-light: blur(6px) saturate(200%) contrast(100%) brightness(130%); - --t-blur-medium: blur(12px) saturate(200%) contrast(100%) brightness(130%); - --t-blur-strong: blur(20px) saturate(200%) contrast(100%) brightness(130%); - --t-border-color-strong: var(--ij-control-border); - --t-border-color-medium: var(--ij-divider); - --t-border-color-light: var(--ij-seam); - --t-border-color-secondary-inverted: var(--ij-ink-info); - --t-border-color-inverted: var(--ij-ink); - --t-border-color-danger: var(--ij-error); - --t-border-color-blue: var(--ij-accent); - --t-border-color-transparent-strong: var(--ij-keyline-decorative); - --t-border-radius-xs: var(--radius-chip, 4px); - --t-border-radius-sm: var(--radius-chip, 4px); - --t-border-radius-md: var(--radius-control, 7px); - --t-border-radius-sm-round: var(--radius-chip, 4px); - --t-border-radius-md-round: var(--radius-control, 7px); - --t-border-radius-lg: var(--radius-sunken, 10px); - --t-border-radius-xl: var(--ij-radius-lg); - --t-border-radius-xxl: var(--ij-radius-xl); + --t-background-primary: color(display-p3 1 1 1); + --t-background-secondary: color(display-p3 0.988 0.988 0.988); + --t-background-tertiary: color(display-p3 0.945 0.945 0.945); + --t-background-quaternary: color(display-p3 0.922 0.922 0.922); + --t-background-inverted-primary: color(display-p3 0.2 0.2 0.2); + --t-background-inverted-secondary: color(display-p3 0.4 0.4 0.4); + --t-background-danger: color(display-p3 0.985 0.925 0.925); + --t-background-transparent-primary: color(display-p3 1 1 1 / 0.5); + --t-background-transparent-secondary: color(display-p3 1 1 1 / 0.4); + --t-background-transparent-strong: color(display-p3 0 0 0 / 0.161); + --t-background-transparent-medium: color(display-p3 0 0 0 / 0.078); + --t-background-transparent-light: color(display-p3 0 0 0 / 0.039); + --t-background-transparent-lighter: color(display-p3 0 0 0 / 0.02); + --t-background-transparent-danger: #f3000d14; + --t-background-transparent-blue: #0047f112; + --t-background-transparent-orange: #ff9c0029; + --t-background-transparent-success: #00a43319; + --t-background-overlay-primary: color(display-p3 0 0 0 / 0.722); + --t-background-overlay-secondary: color(display-p3 0 0 0 / 0.361); + --t-background-overlay-tertiary: color(display-p3 0 0 0 / 0.071); + --t-background-radial-gradient: radial-gradient( 50% 62.62% at 50% 0%, color(display-p3 0.6 0.6 0.6) 0%, color(display-p3 0.514 0.514 0.514) 100% ); + --t-background-radial-gradient-hover: radial-gradient( 76.32% 95.59% at 50% 0%, color(display-p3 0.514 0.514 0.514) 0%, color(display-p3 0.4 0.4 0.4) 100% ); + --t-background-primary-inverted: color(display-p3 0.2 0.2 0.2); + --t-background-primary-inverted-hover: color(display-p3 0.4 0.4 0.4); + --t-blur-light: blur(6px) saturate(200%) contrast(50%) brightness(130%); + --t-blur-medium: blur(12px) saturate(200%) contrast(50%) brightness(130%); + --t-blur-strong: blur(20px) saturate(200%) contrast(50%) brightness(130%); + --t-border-color-strong: color(display-p3 0.839 0.839 0.839); + --t-border-color-medium: color(display-p3 0.922 0.922 0.922); + --t-border-color-light: color(display-p3 0.945 0.945 0.945); + --t-border-color-secondary-inverted: color(display-p3 0.4 0.4 0.4); + --t-border-color-inverted: color(display-p3 0.2 0.2 0.2); + --t-border-color-danger: color(display-p3 0.984 0.812 0.811); + --t-border-color-blue: color(display-p3 0.685 0.74 0.957); + --t-border-color-transparent-strong: color(display-p3 0 0 0 / 0.071); + --t-border-radius-xs: 2px; + --t-border-radius-sm: 4px; + --t-border-radius-md: 8px; + --t-border-radius-sm-round: 4px; + --t-border-radius-md-round: 8px; + --t-border-radius-lg: 16px; + --t-border-radius-xl: 20px; + --t-border-radius-xxl: 40px; --t-border-radius-pill: 999px; --t-border-radius-rounded: 100%; - --t-box-shadow-color: var(--ij-tier-scrim); - --t-box-shadow-light: var(--shadow-lifted, 0 1px 2px rgb(0 0 0 / 0.04), 0 1px 6px rgb(0 0 0 / 0.03)); - --t-box-shadow-strong: var(--shadow-lifted, 0 1px 2px rgb(0 0 0 / 0.04), 0 1px 6px rgb(0 0 0 / 0.03)); - --t-box-shadow-underline: var(--shadow-docked-right, -1px 0 3px rgb(0 0 0 / 0.04)); - --t-box-shadow-super-heavy: var(--shadow-lifted, 0 1px 2px rgb(0 0 0 / 0.04), 0 1px 6px rgb(0 0 0 / 0.03)); - --t-font-color-primary: var(--ij-ink); - --t-font-color-secondary: var(--ij-ink-info); - --t-font-color-tertiary: var(--ij-ink-disabled); - --t-font-color-light: var(--ij-ink-disabled); - --t-font-color-extra-light: var(--ij-gray-7); - --t-font-color-inverted: var(--ij-editor); - --t-font-color-danger: var(--ij-error); + --t-box-shadow-color: color(display-p3 0 0 0 / 0.039); + --t-box-shadow-light: 0px 2px 4px 0px color(display-p3 0 0 0 / 0.039), 0px 0px 4px 0px color(display-p3 0 0 0 / 0.078); + --t-box-shadow-strong: 2px 4px 16px 0px color(display-p3 0 0 0 / 0.161), 0px 2px 4px 0px color(display-p3 0 0 0 / 0.078); + --t-box-shadow-underline: 0px 1px 0px 0px color(display-p3 0 0 0 / 0.361); + --t-box-shadow-super-heavy: 0px 0px 8px 0px color(display-p3 0 0 0 / 0.161), 0px 8px 64px -16px color(display-p3 0 0 0 / 0.478), 0px 24px 56px -16px color(display-p3 0 0 0 / 0.078); + --t-font-color-primary: color(display-p3 0.2 0.2 0.2); + --t-font-color-secondary: color(display-p3 0.4 0.4 0.4); + --t-font-color-tertiary: color(display-p3 0.6 0.6 0.6); + --t-font-color-light: color(display-p3 0.702 0.702 0.702); + --t-font-color-extra-light: color(display-p3 0.8 0.8 0.8); + --t-font-color-inverted: color(display-p3 1 1 1); + --t-font-color-danger: color(display-p3 0.83 0.329 0.324); --t-font-size-xxs: 0.625rem; --t-font-size-xs: 0.85rem; --t-font-size-sm: 0.92rem; @@ -163,845 +163,845 @@ --t-font-weight-regular: 400; --t-font-weight-medium: 500; --t-font-weight-semi-bold: 600; - --t-font-family: var(--ij-font-ui); + --t-font-family: Inter, sans-serif; --t-name: light; - --t-snack-bar-success-color: var(--ij-ok); - --t-snack-bar-success-background-color: var(--ij-ok-bg); - --t-snack-bar-error-color: var(--ij-error); - --t-snack-bar-error-background-color: var(--ij-error-bg); - --t-snack-bar-warning-color: var(--ij-warn); - --t-snack-bar-warning-background-color: var(--ij-warn-bg); - --t-snack-bar-info-color: var(--ij-accent); - --t-snack-bar-info-background-color: var(--ij-selection); - --t-snack-bar-default-color: var(--ij-ink); - --t-snack-bar-default-background-color: var(--ij-hover-surface); - --t-tag-text-gray: var(--ij-ink-info); - --t-tag-text-mauve: oklch(47.00% 0.0160 300.0); - --t-tag-text-slate: oklch(47.00% 0.0160 260.0); - --t-tag-text-sage: oklch(47.00% 0.0160 160.0); - --t-tag-text-olive: oklch(47.00% 0.0160 120.0); - --t-tag-text-sand: oklch(47.00% 0.0160 80.0); - --t-tag-text-tomato: oklch(47.00% 0.0960 35.0); - --t-tag-text-red: var(--ij-error); - --t-tag-text-ruby: oklch(47.00% 0.0960 12.0); - --t-tag-text-crimson: oklch(47.00% 0.0960 0.0); - --t-tag-text-pink: var(--ij-error); - --t-tag-text-plum: oklch(47.00% 0.0960 330.0); - --t-tag-text-purple: var(--ij-room); - --t-tag-text-violet: var(--ij-room); - --t-tag-text-iris: oklch(47.00% 0.0960 275.0); - --t-tag-text-cyan: oklch(47.00% 0.0960 220.0); - --t-tag-text-turquoise: var(--ij-graph); - --t-tag-text-sky: oklch(47.00% 0.0960 235.0); - --t-tag-text-blue: var(--ij-link); - --t-tag-text-jade: var(--ij-memory); - --t-tag-text-green: var(--ij-ok); - --t-tag-text-grass: oklch(47.00% 0.0960 140.0); - --t-tag-text-mint: oklch(47.00% 0.0960 175.0); - --t-tag-text-lime: oklch(47.00% 0.0960 125.0); - --t-tag-text-bronze: oklch(47.00% 0.0960 45.0); - --t-tag-text-gold: var(--ij-gold); - --t-tag-text-brown: oklch(47.00% 0.0960 55.0); - --t-tag-text-orange: var(--ij-agent); - --t-tag-text-amber: var(--ij-agent); - --t-tag-text-yellow: var(--ij-warn); - --t-tag-background-gray: var(--ij-row-gray); - --t-tag-background-mauve: oklch(95.00% 0.0090 300.0); - --t-tag-background-slate: oklch(95.00% 0.0090 260.0); - --t-tag-background-sage: oklch(95.00% 0.0090 160.0); - --t-tag-background-olive: oklch(95.00% 0.0090 120.0); - --t-tag-background-sand: oklch(95.00% 0.0090 80.0); - --t-tag-background-tomato: oklch(95.00% 0.0540 35.0); - --t-tag-background-red: var(--ij-error-bg); - --t-tag-background-ruby: oklch(95.00% 0.0540 12.0); - --t-tag-background-crimson: oklch(95.00% 0.0540 0.0); - --t-tag-background-pink: var(--ij-row-rose); - --t-tag-background-plum: oklch(95.00% 0.0540 330.0); - --t-tag-background-purple: var(--ij-room-tint); - --t-tag-background-violet: var(--ij-row-violet); - --t-tag-background-iris: oklch(95.00% 0.0540 275.0); - --t-tag-background-cyan: oklch(95.00% 0.0540 220.0); - --t-tag-background-turquoise: var(--ij-graph-tint); - --t-tag-background-sky: oklch(95.00% 0.0540 235.0); - --t-tag-background-blue: var(--ij-row-blue); - --t-tag-background-jade: var(--ij-memory-tint); - --t-tag-background-green: var(--ij-ok-bg); - --t-tag-background-grass: oklch(95.00% 0.0540 140.0); - --t-tag-background-mint: oklch(95.00% 0.0540 175.0); - --t-tag-background-lime: oklch(95.00% 0.0540 125.0); - --t-tag-background-bronze: oklch(95.00% 0.0540 45.0); - --t-tag-background-gold: var(--ij-gold-tint); - --t-tag-background-brown: oklch(95.00% 0.0540 55.0); - --t-tag-background-orange: var(--ij-row-orange); - --t-tag-background-amber: var(--ij-agent-tint); - --t-tag-background-yellow: var(--ij-warn-bg); - --t-code-text-gray: var(--ij-ink-info); - --t-code-text-sky: var(--ij-link); - --t-code-text-pink: var(--ij-room); - --t-code-text-orange: var(--ij-agent); - --t-code-text-green: var(--ij-memory); - --t-code-font-family: var(--ij-font-mono); - --t--illustration-icon-color-blue: var(--ij-accent); - --t--illustration-icon-color-gray: var(--ij-ink-disabled); - --t--illustration-icon-fill-blue: var(--ij-selection); - --t--illustration-icon-fill-gray: var(--ij-raised); - --t-gray-scale-gray1: var(--ij-gray-14); - --t-gray-scale-gray2: var(--ij-gray-13); - --t-gray-scale-gray3: var(--ij-gray-12); - --t-gray-scale-gray4: var(--ij-gray-11); - --t-gray-scale-gray5: var(--ij-gray-10); - --t-gray-scale-gray6: var(--ij-gray-9); - --t-gray-scale-gray7: var(--ij-gray-8); - --t-gray-scale-gray8: var(--ij-gray-7); - --t-gray-scale-gray9: var(--ij-gray-6); - --t-gray-scale-gray10: var(--ij-gray-5); - --t-gray-scale-gray11: var(--ij-gray-3); - --t-gray-scale-gray12: var(--ij-gray-2); - --t-color-red: oklch(63.00% 0.1200 25.0); - --t-color-ruby: oklch(63.00% 0.1200 12.0); - --t-color-crimson: oklch(63.00% 0.1200 0.0); - --t-color-tomato: oklch(63.00% 0.1200 35.0); - --t-color-orange: oklch(63.00% 0.1200 60.0); - --t-color-amber: oklch(63.00% 0.1200 85.0); - --t-color-yellow: oklch(63.00% 0.1200 100.0); - --t-color-lime: oklch(63.00% 0.1200 125.0); - --t-color-grass: oklch(63.00% 0.1200 140.0); - --t-color-green: oklch(63.00% 0.1200 150.0); - --t-color-jade: oklch(63.00% 0.1200 165.0); - --t-color-mint: oklch(63.00% 0.1200 175.0); - --t-color-turquoise: oklch(63.00% 0.1200 195.0); - --t-color-cyan: oklch(63.00% 0.1200 220.0); - --t-color-sky: oklch(63.00% 0.1200 235.0); - --t-color-blue: oklch(63.00% 0.1200 258.0); - --t-color-iris: oklch(63.00% 0.1200 275.0); - --t-color-violet: oklch(63.00% 0.1200 295.0); - --t-color-purple: oklch(63.00% 0.1200 310.0); - --t-color-plum: oklch(63.00% 0.1200 330.0); - --t-color-pink: oklch(63.00% 0.1200 350.0); - --t-color-bronze: oklch(63.00% 0.1200 45.0); - --t-color-gold: oklch(63.00% 0.1200 90.0); - --t-color-brown: oklch(63.00% 0.1200 55.0); - --t-color-gray: var(--ij-gray-9); - --t-color-yellow1: oklch(99.00% 0.0180 100.0); - --t-color-yellow2: oklch(97.50% 0.0300 100.0); - --t-color-yellow3: oklch(95.00% 0.0540 100.0); - --t-color-yellow4: oklch(92.00% 0.0720 100.0); - --t-color-yellow5: oklch(89.00% 0.0864 100.0); - --t-color-yellow6: oklch(86.00% 0.0984 100.0); - --t-color-yellow7: oklch(82.00% 0.1104 100.0); - --t-color-yellow8: oklch(74.00% 0.1200 100.0); - --t-color-yellow9: oklch(63.00% 0.1200 100.0); - --t-color-yellow10: oklch(58.00% 0.1176 100.0); - --t-color-yellow11: oklch(47.00% 0.0960 100.0); - --t-color-yellow12: oklch(28.00% 0.0540 100.0); - --t-color-green1: oklch(99.00% 0.0180 150.0); - --t-color-green2: oklch(97.50% 0.0300 150.0); - --t-color-green3: oklch(95.00% 0.0540 150.0); - --t-color-green4: oklch(92.00% 0.0720 150.0); - --t-color-green5: oklch(89.00% 0.0864 150.0); - --t-color-green6: oklch(86.00% 0.0984 150.0); - --t-color-green7: oklch(82.00% 0.1104 150.0); - --t-color-green8: oklch(74.00% 0.1200 150.0); - --t-color-green9: oklch(63.00% 0.1200 150.0); - --t-color-green10: oklch(58.00% 0.1176 150.0); - --t-color-green11: oklch(47.00% 0.0960 150.0); - --t-color-green12: oklch(28.00% 0.0540 150.0); - --t-color-turquoise1: oklch(99.00% 0.0180 195.0); - --t-color-turquoise2: oklch(97.50% 0.0300 195.0); - --t-color-turquoise3: oklch(95.00% 0.0540 195.0); - --t-color-turquoise4: oklch(92.00% 0.0720 195.0); - --t-color-turquoise5: oklch(89.00% 0.0864 195.0); - --t-color-turquoise6: oklch(86.00% 0.0984 195.0); - --t-color-turquoise7: oklch(82.00% 0.1104 195.0); - --t-color-turquoise8: oklch(74.00% 0.1200 195.0); - --t-color-turquoise9: oklch(63.00% 0.1200 195.0); - --t-color-turquoise10: oklch(58.00% 0.1176 195.0); - --t-color-turquoise11: oklch(47.00% 0.0960 195.0); - --t-color-turquoise12: oklch(28.00% 0.0540 195.0); - --t-color-sky1: oklch(99.00% 0.0180 235.0); - --t-color-sky2: oklch(97.50% 0.0300 235.0); - --t-color-sky3: oklch(95.00% 0.0540 235.0); - --t-color-sky4: oklch(92.00% 0.0720 235.0); - --t-color-sky5: oklch(89.00% 0.0864 235.0); - --t-color-sky6: oklch(86.00% 0.0984 235.0); - --t-color-sky7: oklch(82.00% 0.1104 235.0); - --t-color-sky8: oklch(74.00% 0.1200 235.0); - --t-color-sky9: oklch(63.00% 0.1200 235.0); - --t-color-sky10: oklch(58.00% 0.1176 235.0); - --t-color-sky11: oklch(47.00% 0.0960 235.0); - --t-color-sky12: oklch(28.00% 0.0540 235.0); - --t-color-blue1: oklch(99.00% 0.0180 258.0); - --t-color-blue2: oklch(97.50% 0.0300 258.0); - --t-color-blue3: oklch(95.00% 0.0540 258.0); - --t-color-blue4: oklch(92.00% 0.0720 258.0); - --t-color-blue5: oklch(89.00% 0.0864 258.0); - --t-color-blue6: oklch(86.00% 0.0984 258.0); - --t-color-blue7: oklch(82.00% 0.1104 258.0); - --t-color-blue8: oklch(74.00% 0.1200 258.0); - --t-color-blue9: oklch(63.00% 0.1200 258.0); - --t-color-blue10: oklch(58.00% 0.1176 258.0); - --t-color-blue11: oklch(47.00% 0.0960 258.0); - --t-color-blue12: oklch(28.00% 0.0540 258.0); - --t-color-purple1: oklch(99.00% 0.0180 310.0); - --t-color-purple2: oklch(97.50% 0.0300 310.0); - --t-color-purple3: oklch(95.00% 0.0540 310.0); - --t-color-purple4: oklch(92.00% 0.0720 310.0); - --t-color-purple5: oklch(89.00% 0.0864 310.0); - --t-color-purple6: oklch(86.00% 0.0984 310.0); - --t-color-purple7: oklch(82.00% 0.1104 310.0); - --t-color-purple8: oklch(74.00% 0.1200 310.0); - --t-color-purple9: oklch(63.00% 0.1200 310.0); - --t-color-purple10: oklch(58.00% 0.1176 310.0); - --t-color-purple11: oklch(47.00% 0.0960 310.0); - --t-color-purple12: oklch(28.00% 0.0540 310.0); - --t-color-pink1: oklch(99.00% 0.0180 350.0); - --t-color-pink2: oklch(97.50% 0.0300 350.0); - --t-color-pink3: oklch(95.00% 0.0540 350.0); - --t-color-pink4: oklch(92.00% 0.0720 350.0); - --t-color-pink5: oklch(89.00% 0.0864 350.0); - --t-color-pink6: oklch(86.00% 0.0984 350.0); - --t-color-pink7: oklch(82.00% 0.1104 350.0); - --t-color-pink8: oklch(74.00% 0.1200 350.0); - --t-color-pink9: oklch(63.00% 0.1200 350.0); - --t-color-pink10: oklch(58.00% 0.1176 350.0); - --t-color-pink11: oklch(47.00% 0.0960 350.0); - --t-color-pink12: oklch(28.00% 0.0540 350.0); - --t-color-red1: oklch(99.00% 0.0180 25.0); - --t-color-red2: oklch(97.50% 0.0300 25.0); - --t-color-red3: oklch(95.00% 0.0540 25.0); - --t-color-red4: oklch(92.00% 0.0720 25.0); - --t-color-red5: oklch(89.00% 0.0864 25.0); - --t-color-red6: oklch(86.00% 0.0984 25.0); - --t-color-red7: oklch(82.00% 0.1104 25.0); - --t-color-red8: oklch(74.00% 0.1200 25.0); - --t-color-red9: oklch(63.00% 0.1200 25.0); - --t-color-red10: oklch(58.00% 0.1176 25.0); - --t-color-red11: oklch(47.00% 0.0960 25.0); - --t-color-red12: oklch(28.00% 0.0540 25.0); - --t-color-orange1: oklch(99.00% 0.0180 60.0); - --t-color-orange2: oklch(97.50% 0.0300 60.0); - --t-color-orange3: oklch(95.00% 0.0540 60.0); - --t-color-orange4: oklch(92.00% 0.0720 60.0); - --t-color-orange5: oklch(89.00% 0.0864 60.0); - --t-color-orange6: oklch(86.00% 0.0984 60.0); - --t-color-orange7: oklch(82.00% 0.1104 60.0); - --t-color-orange8: oklch(74.00% 0.1200 60.0); - --t-color-orange9: oklch(63.00% 0.1200 60.0); - --t-color-orange10: oklch(58.00% 0.1176 60.0); - --t-color-orange11: oklch(47.00% 0.0960 60.0); - --t-color-orange12: oklch(28.00% 0.0540 60.0); - --t-color-gray1: oklch(99.00% 0.0000 0.0); - --t-color-gray2: oklch(97.50% 0.0000 0.0); - --t-color-gray3: oklch(95.00% 0.0000 0.0); - --t-color-gray4: oklch(92.00% 0.0000 0.0); - --t-color-gray5: oklch(89.00% 0.0000 0.0); - --t-color-gray6: oklch(86.00% 0.0000 0.0); - --t-color-gray7: oklch(82.00% 0.0000 0.0); - --t-color-gray8: oklch(74.00% 0.0000 0.0); - --t-color-gray9: oklch(63.00% 0.0000 0.0); - --t-color-gray10: oklch(58.00% 0.0000 0.0); - --t-color-gray11: oklch(47.00% 0.0000 0.0); - --t-color-gray12: oklch(28.00% 0.0000 0.0); - --t-color-mauve1: oklch(99.00% 0.0030 300.0); - --t-color-mauve2: oklch(97.50% 0.0050 300.0); - --t-color-mauve3: oklch(95.00% 0.0090 300.0); - --t-color-mauve4: oklch(92.00% 0.0120 300.0); - --t-color-mauve5: oklch(89.00% 0.0144 300.0); - --t-color-mauve6: oklch(86.00% 0.0164 300.0); - --t-color-mauve7: oklch(82.00% 0.0184 300.0); - --t-color-mauve8: oklch(74.00% 0.0200 300.0); - --t-color-mauve9: oklch(63.00% 0.0200 300.0); - --t-color-mauve10: oklch(58.00% 0.0196 300.0); - --t-color-mauve11: oklch(47.00% 0.0160 300.0); - --t-color-mauve12: oklch(28.00% 0.0090 300.0); - --t-color-slate1: oklch(99.00% 0.0030 260.0); - --t-color-slate2: oklch(97.50% 0.0050 260.0); - --t-color-slate3: oklch(95.00% 0.0090 260.0); - --t-color-slate4: oklch(92.00% 0.0120 260.0); - --t-color-slate5: oklch(89.00% 0.0144 260.0); - --t-color-slate6: oklch(86.00% 0.0164 260.0); - --t-color-slate7: oklch(82.00% 0.0184 260.0); - --t-color-slate8: oklch(74.00% 0.0200 260.0); - --t-color-slate9: oklch(63.00% 0.0200 260.0); - --t-color-slate10: oklch(58.00% 0.0196 260.0); - --t-color-slate11: oklch(47.00% 0.0160 260.0); - --t-color-slate12: oklch(28.00% 0.0090 260.0); - --t-color-sage1: oklch(99.00% 0.0030 160.0); - --t-color-sage2: oklch(97.50% 0.0050 160.0); - --t-color-sage3: oklch(95.00% 0.0090 160.0); - --t-color-sage4: oklch(92.00% 0.0120 160.0); - --t-color-sage5: oklch(89.00% 0.0144 160.0); - --t-color-sage6: oklch(86.00% 0.0164 160.0); - --t-color-sage7: oklch(82.00% 0.0184 160.0); - --t-color-sage8: oklch(74.00% 0.0200 160.0); - --t-color-sage9: oklch(63.00% 0.0200 160.0); - --t-color-sage10: oklch(58.00% 0.0196 160.0); - --t-color-sage11: oklch(47.00% 0.0160 160.0); - --t-color-sage12: oklch(28.00% 0.0090 160.0); - --t-color-olive1: oklch(99.00% 0.0030 120.0); - --t-color-olive2: oklch(97.50% 0.0050 120.0); - --t-color-olive3: oklch(95.00% 0.0090 120.0); - --t-color-olive4: oklch(92.00% 0.0120 120.0); - --t-color-olive5: oklch(89.00% 0.0144 120.0); - --t-color-olive6: oklch(86.00% 0.0164 120.0); - --t-color-olive7: oklch(82.00% 0.0184 120.0); - --t-color-olive8: oklch(74.00% 0.0200 120.0); - --t-color-olive9: oklch(63.00% 0.0200 120.0); - --t-color-olive10: oklch(58.00% 0.0196 120.0); - --t-color-olive11: oklch(47.00% 0.0160 120.0); - --t-color-olive12: oklch(28.00% 0.0090 120.0); - --t-color-sand1: oklch(99.00% 0.0030 80.0); - --t-color-sand2: oklch(97.50% 0.0050 80.0); - --t-color-sand3: oklch(95.00% 0.0090 80.0); - --t-color-sand4: oklch(92.00% 0.0120 80.0); - --t-color-sand5: oklch(89.00% 0.0144 80.0); - --t-color-sand6: oklch(86.00% 0.0164 80.0); - --t-color-sand7: oklch(82.00% 0.0184 80.0); - --t-color-sand8: oklch(74.00% 0.0200 80.0); - --t-color-sand9: oklch(63.00% 0.0200 80.0); - --t-color-sand10: oklch(58.00% 0.0196 80.0); - --t-color-sand11: oklch(47.00% 0.0160 80.0); - --t-color-sand12: oklch(28.00% 0.0090 80.0); - --t-color-tomato1: oklch(99.00% 0.0180 35.0); - --t-color-tomato2: oklch(97.50% 0.0300 35.0); - --t-color-tomato3: oklch(95.00% 0.0540 35.0); - --t-color-tomato4: oklch(92.00% 0.0720 35.0); - --t-color-tomato5: oklch(89.00% 0.0864 35.0); - --t-color-tomato6: oklch(86.00% 0.0984 35.0); - --t-color-tomato7: oklch(82.00% 0.1104 35.0); - --t-color-tomato8: oklch(74.00% 0.1200 35.0); - --t-color-tomato9: oklch(63.00% 0.1200 35.0); - --t-color-tomato10: oklch(58.00% 0.1176 35.0); - --t-color-tomato11: oklch(47.00% 0.0960 35.0); - --t-color-tomato12: oklch(28.00% 0.0540 35.0); - --t-color-ruby1: oklch(99.00% 0.0180 12.0); - --t-color-ruby2: oklch(97.50% 0.0300 12.0); - --t-color-ruby3: oklch(95.00% 0.0540 12.0); - --t-color-ruby4: oklch(92.00% 0.0720 12.0); - --t-color-ruby5: oklch(89.00% 0.0864 12.0); - --t-color-ruby6: oklch(86.00% 0.0984 12.0); - --t-color-ruby7: oklch(82.00% 0.1104 12.0); - --t-color-ruby8: oklch(74.00% 0.1200 12.0); - --t-color-ruby9: oklch(63.00% 0.1200 12.0); - --t-color-ruby10: oklch(58.00% 0.1176 12.0); - --t-color-ruby11: oklch(47.00% 0.0960 12.0); - --t-color-ruby12: oklch(28.00% 0.0540 12.0); - --t-color-crimson1: oklch(99.00% 0.0180 0.0); - --t-color-crimson2: oklch(97.50% 0.0300 0.0); - --t-color-crimson3: oklch(95.00% 0.0540 0.0); - --t-color-crimson4: oklch(92.00% 0.0720 0.0); - --t-color-crimson5: oklch(89.00% 0.0864 0.0); - --t-color-crimson6: oklch(86.00% 0.0984 0.0); - --t-color-crimson7: oklch(82.00% 0.1104 0.0); - --t-color-crimson8: oklch(74.00% 0.1200 0.0); - --t-color-crimson9: oklch(63.00% 0.1200 0.0); - --t-color-crimson10: oklch(58.00% 0.1176 0.0); - --t-color-crimson11: oklch(47.00% 0.0960 0.0); - --t-color-crimson12: oklch(28.00% 0.0540 0.0); - --t-color-plum1: oklch(99.00% 0.0180 330.0); - --t-color-plum2: oklch(97.50% 0.0300 330.0); - --t-color-plum3: oklch(95.00% 0.0540 330.0); - --t-color-plum4: oklch(92.00% 0.0720 330.0); - --t-color-plum5: oklch(89.00% 0.0864 330.0); - --t-color-plum6: oklch(86.00% 0.0984 330.0); - --t-color-plum7: oklch(82.00% 0.1104 330.0); - --t-color-plum8: oklch(74.00% 0.1200 330.0); - --t-color-plum9: oklch(63.00% 0.1200 330.0); - --t-color-plum10: oklch(58.00% 0.1176 330.0); - --t-color-plum11: oklch(47.00% 0.0960 330.0); - --t-color-plum12: oklch(28.00% 0.0540 330.0); - --t-color-violet1: oklch(99.00% 0.0180 295.0); - --t-color-violet2: oklch(97.50% 0.0300 295.0); - --t-color-violet3: oklch(95.00% 0.0540 295.0); - --t-color-violet4: oklch(92.00% 0.0720 295.0); - --t-color-violet5: oklch(89.00% 0.0864 295.0); - --t-color-violet6: oklch(86.00% 0.0984 295.0); - --t-color-violet7: oklch(82.00% 0.1104 295.0); - --t-color-violet8: oklch(74.00% 0.1200 295.0); - --t-color-violet9: oklch(63.00% 0.1200 295.0); - --t-color-violet10: oklch(58.00% 0.1176 295.0); - --t-color-violet11: oklch(47.00% 0.0960 295.0); - --t-color-violet12: oklch(28.00% 0.0540 295.0); - --t-color-iris1: oklch(99.00% 0.0180 275.0); - --t-color-iris2: oklch(97.50% 0.0300 275.0); - --t-color-iris3: oklch(95.00% 0.0540 275.0); - --t-color-iris4: oklch(92.00% 0.0720 275.0); - --t-color-iris5: oklch(89.00% 0.0864 275.0); - --t-color-iris6: oklch(86.00% 0.0984 275.0); - --t-color-iris7: oklch(82.00% 0.1104 275.0); - --t-color-iris8: oklch(74.00% 0.1200 275.0); - --t-color-iris9: oklch(63.00% 0.1200 275.0); - --t-color-iris10: oklch(58.00% 0.1176 275.0); - --t-color-iris11: oklch(47.00% 0.0960 275.0); - --t-color-iris12: oklch(28.00% 0.0540 275.0); - --t-color-cyan1: oklch(99.00% 0.0180 220.0); - --t-color-cyan2: oklch(97.50% 0.0300 220.0); - --t-color-cyan3: oklch(95.00% 0.0540 220.0); - --t-color-cyan4: oklch(92.00% 0.0720 220.0); - --t-color-cyan5: oklch(89.00% 0.0864 220.0); - --t-color-cyan6: oklch(86.00% 0.0984 220.0); - --t-color-cyan7: oklch(82.00% 0.1104 220.0); - --t-color-cyan8: oklch(74.00% 0.1200 220.0); - --t-color-cyan9: oklch(63.00% 0.1200 220.0); - --t-color-cyan10: oklch(58.00% 0.1176 220.0); - --t-color-cyan11: oklch(47.00% 0.0960 220.0); - --t-color-cyan12: oklch(28.00% 0.0540 220.0); - --t-color-jade1: oklch(99.00% 0.0180 165.0); - --t-color-jade2: oklch(97.50% 0.0300 165.0); - --t-color-jade3: oklch(95.00% 0.0540 165.0); - --t-color-jade4: oklch(92.00% 0.0720 165.0); - --t-color-jade5: oklch(89.00% 0.0864 165.0); - --t-color-jade6: oklch(86.00% 0.0984 165.0); - --t-color-jade7: oklch(82.00% 0.1104 165.0); - --t-color-jade8: oklch(74.00% 0.1200 165.0); - --t-color-jade9: oklch(63.00% 0.1200 165.0); - --t-color-jade10: oklch(58.00% 0.1176 165.0); - --t-color-jade11: oklch(47.00% 0.0960 165.0); - --t-color-jade12: oklch(28.00% 0.0540 165.0); - --t-color-grass1: oklch(99.00% 0.0180 140.0); - --t-color-grass2: oklch(97.50% 0.0300 140.0); - --t-color-grass3: oklch(95.00% 0.0540 140.0); - --t-color-grass4: oklch(92.00% 0.0720 140.0); - --t-color-grass5: oklch(89.00% 0.0864 140.0); - --t-color-grass6: oklch(86.00% 0.0984 140.0); - --t-color-grass7: oklch(82.00% 0.1104 140.0); - --t-color-grass8: oklch(74.00% 0.1200 140.0); - --t-color-grass9: oklch(63.00% 0.1200 140.0); - --t-color-grass10: oklch(58.00% 0.1176 140.0); - --t-color-grass11: oklch(47.00% 0.0960 140.0); - --t-color-grass12: oklch(28.00% 0.0540 140.0); - --t-color-mint1: oklch(99.00% 0.0180 175.0); - --t-color-mint2: oklch(97.50% 0.0300 175.0); - --t-color-mint3: oklch(95.00% 0.0540 175.0); - --t-color-mint4: oklch(92.00% 0.0720 175.0); - --t-color-mint5: oklch(89.00% 0.0864 175.0); - --t-color-mint6: oklch(86.00% 0.0984 175.0); - --t-color-mint7: oklch(82.00% 0.1104 175.0); - --t-color-mint8: oklch(74.00% 0.1200 175.0); - --t-color-mint9: oklch(63.00% 0.1200 175.0); - --t-color-mint10: oklch(58.00% 0.1176 175.0); - --t-color-mint11: oklch(47.00% 0.0960 175.0); - --t-color-mint12: oklch(28.00% 0.0540 175.0); - --t-color-lime1: oklch(99.00% 0.0180 125.0); - --t-color-lime2: oklch(97.50% 0.0300 125.0); - --t-color-lime3: oklch(95.00% 0.0540 125.0); - --t-color-lime4: oklch(92.00% 0.0720 125.0); - --t-color-lime5: oklch(89.00% 0.0864 125.0); - --t-color-lime6: oklch(86.00% 0.0984 125.0); - --t-color-lime7: oklch(82.00% 0.1104 125.0); - --t-color-lime8: oklch(74.00% 0.1200 125.0); - --t-color-lime9: oklch(63.00% 0.1200 125.0); - --t-color-lime10: oklch(58.00% 0.1176 125.0); - --t-color-lime11: oklch(47.00% 0.0960 125.0); - --t-color-lime12: oklch(28.00% 0.0540 125.0); - --t-color-bronze1: oklch(99.00% 0.0180 45.0); - --t-color-bronze2: oklch(97.50% 0.0300 45.0); - --t-color-bronze3: oklch(95.00% 0.0540 45.0); - --t-color-bronze4: oklch(92.00% 0.0720 45.0); - --t-color-bronze5: oklch(89.00% 0.0864 45.0); - --t-color-bronze6: oklch(86.00% 0.0984 45.0); - --t-color-bronze7: oklch(82.00% 0.1104 45.0); - --t-color-bronze8: oklch(74.00% 0.1200 45.0); - --t-color-bronze9: oklch(63.00% 0.1200 45.0); - --t-color-bronze10: oklch(58.00% 0.1176 45.0); - --t-color-bronze11: oklch(47.00% 0.0960 45.0); - --t-color-bronze12: oklch(28.00% 0.0540 45.0); - --t-color-gold1: oklch(99.00% 0.0180 90.0); - --t-color-gold2: oklch(97.50% 0.0300 90.0); - --t-color-gold3: oklch(95.00% 0.0540 90.0); - --t-color-gold4: oklch(92.00% 0.0720 90.0); - --t-color-gold5: oklch(89.00% 0.0864 90.0); - --t-color-gold6: oklch(86.00% 0.0984 90.0); - --t-color-gold7: oklch(82.00% 0.1104 90.0); - --t-color-gold8: oklch(74.00% 0.1200 90.0); - --t-color-gold9: oklch(63.00% 0.1200 90.0); - --t-color-gold10: oklch(58.00% 0.1176 90.0); - --t-color-gold11: oklch(47.00% 0.0960 90.0); - --t-color-gold12: oklch(28.00% 0.0540 90.0); - --t-color-brown1: oklch(99.00% 0.0180 55.0); - --t-color-brown2: oklch(97.50% 0.0300 55.0); - --t-color-brown3: oklch(95.00% 0.0540 55.0); - --t-color-brown4: oklch(92.00% 0.0720 55.0); - --t-color-brown5: oklch(89.00% 0.0864 55.0); - --t-color-brown6: oklch(86.00% 0.0984 55.0); - --t-color-brown7: oklch(82.00% 0.1104 55.0); - --t-color-brown8: oklch(74.00% 0.1200 55.0); - --t-color-brown9: oklch(63.00% 0.1200 55.0); - --t-color-brown10: oklch(58.00% 0.1176 55.0); - --t-color-brown11: oklch(47.00% 0.0960 55.0); - --t-color-brown12: oklch(28.00% 0.0540 55.0); - --t-color-amber1: oklch(99.00% 0.0180 85.0); - --t-color-amber2: oklch(97.50% 0.0300 85.0); - --t-color-amber3: oklch(95.00% 0.0540 85.0); - --t-color-amber4: oklch(92.00% 0.0720 85.0); - --t-color-amber5: oklch(89.00% 0.0864 85.0); - --t-color-amber6: oklch(86.00% 0.0984 85.0); - --t-color-amber7: oklch(82.00% 0.1104 85.0); - --t-color-amber8: oklch(74.00% 0.1200 85.0); - --t-color-amber9: oklch(63.00% 0.1200 85.0); - --t-color-amber10: oklch(58.00% 0.1176 85.0); - --t-color-amber11: oklch(47.00% 0.0960 85.0); - --t-color-amber12: oklch(28.00% 0.0540 85.0); - --t-color-transparent-green1: color-mix(in oklab, oklch(99.00% 0.0180 150.0) 3.0%, transparent); - --t-color-transparent-green2: color-mix(in oklab, oklch(97.50% 0.0300 150.0) 6.0%, transparent); - --t-color-transparent-green3: color-mix(in oklab, oklch(95.00% 0.0540 150.0) 9.0%, transparent); - --t-color-transparent-green4: color-mix(in oklab, oklch(92.00% 0.0720 150.0) 12.0%, transparent); - --t-color-transparent-green5: color-mix(in oklab, oklch(89.00% 0.0864 150.0) 16.0%, transparent); - --t-color-transparent-green6: color-mix(in oklab, oklch(86.00% 0.0984 150.0) 20.0%, transparent); - --t-color-transparent-green7: color-mix(in oklab, oklch(82.00% 0.1104 150.0) 26.0%, transparent); - --t-color-transparent-green8: color-mix(in oklab, oklch(74.00% 0.1200 150.0) 34.0%, transparent); - --t-color-transparent-green9: color-mix(in oklab, oklch(63.00% 0.1200 150.0) 44.0%, transparent); - --t-color-transparent-green10: color-mix(in oklab, oklch(58.00% 0.1176 150.0) 50.0%, transparent); - --t-color-transparent-green11: color-mix(in oklab, oklch(47.00% 0.0960 150.0) 62.0%, transparent); - --t-color-transparent-green12: color-mix(in oklab, oklch(28.00% 0.0540 150.0) 86.0%, transparent); - --t-color-transparent-turquoise1: color-mix(in oklab, oklch(99.00% 0.0180 195.0) 3.0%, transparent); - --t-color-transparent-turquoise2: color-mix(in oklab, oklch(97.50% 0.0300 195.0) 6.0%, transparent); - --t-color-transparent-turquoise3: color-mix(in oklab, oklch(95.00% 0.0540 195.0) 9.0%, transparent); - --t-color-transparent-turquoise4: color-mix(in oklab, oklch(92.00% 0.0720 195.0) 12.0%, transparent); - --t-color-transparent-turquoise5: color-mix(in oklab, oklch(89.00% 0.0864 195.0) 16.0%, transparent); - --t-color-transparent-turquoise6: color-mix(in oklab, oklch(86.00% 0.0984 195.0) 20.0%, transparent); - --t-color-transparent-turquoise7: color-mix(in oklab, oklch(82.00% 0.1104 195.0) 26.0%, transparent); - --t-color-transparent-turquoise8: color-mix(in oklab, oklch(74.00% 0.1200 195.0) 34.0%, transparent); - --t-color-transparent-turquoise9: color-mix(in oklab, oklch(63.00% 0.1200 195.0) 44.0%, transparent); - --t-color-transparent-turquoise10: color-mix(in oklab, oklch(58.00% 0.1176 195.0) 50.0%, transparent); - --t-color-transparent-turquoise11: color-mix(in oklab, oklch(47.00% 0.0960 195.0) 62.0%, transparent); - --t-color-transparent-turquoise12: color-mix(in oklab, oklch(28.00% 0.0540 195.0) 86.0%, transparent); - --t-color-transparent-sky1: color-mix(in oklab, oklch(99.00% 0.0180 235.0) 3.0%, transparent); - --t-color-transparent-sky2: color-mix(in oklab, oklch(97.50% 0.0300 235.0) 6.0%, transparent); - --t-color-transparent-sky3: color-mix(in oklab, oklch(95.00% 0.0540 235.0) 9.0%, transparent); - --t-color-transparent-sky4: color-mix(in oklab, oklch(92.00% 0.0720 235.0) 12.0%, transparent); - --t-color-transparent-sky5: color-mix(in oklab, oklch(89.00% 0.0864 235.0) 16.0%, transparent); - --t-color-transparent-sky6: color-mix(in oklab, oklch(86.00% 0.0984 235.0) 20.0%, transparent); - --t-color-transparent-sky7: color-mix(in oklab, oklch(82.00% 0.1104 235.0) 26.0%, transparent); - --t-color-transparent-sky8: color-mix(in oklab, oklch(74.00% 0.1200 235.0) 34.0%, transparent); - --t-color-transparent-sky9: color-mix(in oklab, oklch(63.00% 0.1200 235.0) 44.0%, transparent); - --t-color-transparent-sky10: color-mix(in oklab, oklch(58.00% 0.1176 235.0) 50.0%, transparent); - --t-color-transparent-sky11: color-mix(in oklab, oklch(47.00% 0.0960 235.0) 62.0%, transparent); - --t-color-transparent-sky12: color-mix(in oklab, oklch(28.00% 0.0540 235.0) 86.0%, transparent); - --t-color-transparent-blue1: color-mix(in oklab, oklch(99.00% 0.0180 258.0) 3.0%, transparent); - --t-color-transparent-blue2: color-mix(in oklab, oklch(97.50% 0.0300 258.0) 6.0%, transparent); - --t-color-transparent-blue3: color-mix(in oklab, oklch(95.00% 0.0540 258.0) 9.0%, transparent); - --t-color-transparent-blue4: color-mix(in oklab, oklch(92.00% 0.0720 258.0) 12.0%, transparent); - --t-color-transparent-blue5: color-mix(in oklab, oklch(89.00% 0.0864 258.0) 16.0%, transparent); - --t-color-transparent-blue6: color-mix(in oklab, oklch(86.00% 0.0984 258.0) 20.0%, transparent); - --t-color-transparent-blue7: color-mix(in oklab, oklch(82.00% 0.1104 258.0) 26.0%, transparent); - --t-color-transparent-blue8: color-mix(in oklab, oklch(74.00% 0.1200 258.0) 34.0%, transparent); - --t-color-transparent-blue9: color-mix(in oklab, oklch(63.00% 0.1200 258.0) 44.0%, transparent); - --t-color-transparent-blue10: color-mix(in oklab, oklch(58.00% 0.1176 258.0) 50.0%, transparent); - --t-color-transparent-blue11: color-mix(in oklab, oklch(47.00% 0.0960 258.0) 62.0%, transparent); - --t-color-transparent-blue12: color-mix(in oklab, oklch(28.00% 0.0540 258.0) 86.0%, transparent); - --t-color-transparent-purple1: color-mix(in oklab, oklch(99.00% 0.0180 310.0) 3.0%, transparent); - --t-color-transparent-purple2: color-mix(in oklab, oklch(97.50% 0.0300 310.0) 6.0%, transparent); - --t-color-transparent-purple3: color-mix(in oklab, oklch(95.00% 0.0540 310.0) 9.0%, transparent); - --t-color-transparent-purple4: color-mix(in oklab, oklch(92.00% 0.0720 310.0) 12.0%, transparent); - --t-color-transparent-purple5: color-mix(in oklab, oklch(89.00% 0.0864 310.0) 16.0%, transparent); - --t-color-transparent-purple6: color-mix(in oklab, oklch(86.00% 0.0984 310.0) 20.0%, transparent); - --t-color-transparent-purple7: color-mix(in oklab, oklch(82.00% 0.1104 310.0) 26.0%, transparent); - --t-color-transparent-purple8: color-mix(in oklab, oklch(74.00% 0.1200 310.0) 34.0%, transparent); - --t-color-transparent-purple9: color-mix(in oklab, oklch(63.00% 0.1200 310.0) 44.0%, transparent); - --t-color-transparent-purple10: color-mix(in oklab, oklch(58.00% 0.1176 310.0) 50.0%, transparent); - --t-color-transparent-purple11: color-mix(in oklab, oklch(47.00% 0.0960 310.0) 62.0%, transparent); - --t-color-transparent-purple12: color-mix(in oklab, oklch(28.00% 0.0540 310.0) 86.0%, transparent); - --t-color-transparent-pink1: color-mix(in oklab, oklch(99.00% 0.0180 350.0) 3.0%, transparent); - --t-color-transparent-pink2: color-mix(in oklab, oklch(97.50% 0.0300 350.0) 6.0%, transparent); - --t-color-transparent-pink3: color-mix(in oklab, oklch(95.00% 0.0540 350.0) 9.0%, transparent); - --t-color-transparent-pink4: color-mix(in oklab, oklch(92.00% 0.0720 350.0) 12.0%, transparent); - --t-color-transparent-pink5: color-mix(in oklab, oklch(89.00% 0.0864 350.0) 16.0%, transparent); - --t-color-transparent-pink6: color-mix(in oklab, oklch(86.00% 0.0984 350.0) 20.0%, transparent); - --t-color-transparent-pink7: color-mix(in oklab, oklch(82.00% 0.1104 350.0) 26.0%, transparent); - --t-color-transparent-pink8: color-mix(in oklab, oklch(74.00% 0.1200 350.0) 34.0%, transparent); - --t-color-transparent-pink9: color-mix(in oklab, oklch(63.00% 0.1200 350.0) 44.0%, transparent); - --t-color-transparent-pink10: color-mix(in oklab, oklch(58.00% 0.1176 350.0) 50.0%, transparent); - --t-color-transparent-pink11: color-mix(in oklab, oklch(47.00% 0.0960 350.0) 62.0%, transparent); - --t-color-transparent-pink12: color-mix(in oklab, oklch(28.00% 0.0540 350.0) 86.0%, transparent); - --t-color-transparent-red1: color-mix(in oklab, oklch(99.00% 0.0180 25.0) 3.0%, transparent); - --t-color-transparent-red2: color-mix(in oklab, oklch(97.50% 0.0300 25.0) 6.0%, transparent); - --t-color-transparent-red3: color-mix(in oklab, oklch(95.00% 0.0540 25.0) 9.0%, transparent); - --t-color-transparent-red4: color-mix(in oklab, oklch(92.00% 0.0720 25.0) 12.0%, transparent); - --t-color-transparent-red5: color-mix(in oklab, oklch(89.00% 0.0864 25.0) 16.0%, transparent); - --t-color-transparent-red6: color-mix(in oklab, oklch(86.00% 0.0984 25.0) 20.0%, transparent); - --t-color-transparent-red7: color-mix(in oklab, oklch(82.00% 0.1104 25.0) 26.0%, transparent); - --t-color-transparent-red8: color-mix(in oklab, oklch(74.00% 0.1200 25.0) 34.0%, transparent); - --t-color-transparent-red9: color-mix(in oklab, oklch(63.00% 0.1200 25.0) 44.0%, transparent); - --t-color-transparent-red10: color-mix(in oklab, oklch(58.00% 0.1176 25.0) 50.0%, transparent); - --t-color-transparent-red11: color-mix(in oklab, oklch(47.00% 0.0960 25.0) 62.0%, transparent); - --t-color-transparent-red12: color-mix(in oklab, oklch(28.00% 0.0540 25.0) 86.0%, transparent); - --t-color-transparent-orange1: color-mix(in oklab, oklch(99.00% 0.0180 60.0) 3.0%, transparent); - --t-color-transparent-orange2: color-mix(in oklab, oklch(97.50% 0.0300 60.0) 6.0%, transparent); - --t-color-transparent-orange3: color-mix(in oklab, oklch(95.00% 0.0540 60.0) 9.0%, transparent); - --t-color-transparent-orange4: color-mix(in oklab, oklch(92.00% 0.0720 60.0) 12.0%, transparent); - --t-color-transparent-orange5: color-mix(in oklab, oklch(89.00% 0.0864 60.0) 16.0%, transparent); - --t-color-transparent-orange6: color-mix(in oklab, oklch(86.00% 0.0984 60.0) 20.0%, transparent); - --t-color-transparent-orange7: color-mix(in oklab, oklch(82.00% 0.1104 60.0) 26.0%, transparent); - --t-color-transparent-orange8: color-mix(in oklab, oklch(74.00% 0.1200 60.0) 34.0%, transparent); - --t-color-transparent-orange9: color-mix(in oklab, oklch(63.00% 0.1200 60.0) 44.0%, transparent); - --t-color-transparent-orange10: color-mix(in oklab, oklch(58.00% 0.1176 60.0) 50.0%, transparent); - --t-color-transparent-orange11: color-mix(in oklab, oklch(47.00% 0.0960 60.0) 62.0%, transparent); - --t-color-transparent-orange12: color-mix(in oklab, oklch(28.00% 0.0540 60.0) 86.0%, transparent); - --t-color-transparent-yellow1: color-mix(in oklab, oklch(99.00% 0.0180 100.0) 3.0%, transparent); - --t-color-transparent-yellow2: color-mix(in oklab, oklch(97.50% 0.0300 100.0) 6.0%, transparent); - --t-color-transparent-yellow3: color-mix(in oklab, oklch(95.00% 0.0540 100.0) 9.0%, transparent); - --t-color-transparent-yellow4: color-mix(in oklab, oklch(92.00% 0.0720 100.0) 12.0%, transparent); - --t-color-transparent-yellow5: color-mix(in oklab, oklch(89.00% 0.0864 100.0) 16.0%, transparent); - --t-color-transparent-yellow6: color-mix(in oklab, oklch(86.00% 0.0984 100.0) 20.0%, transparent); - --t-color-transparent-yellow7: color-mix(in oklab, oklch(82.00% 0.1104 100.0) 26.0%, transparent); - --t-color-transparent-yellow8: color-mix(in oklab, oklch(74.00% 0.1200 100.0) 34.0%, transparent); - --t-color-transparent-yellow9: color-mix(in oklab, oklch(63.00% 0.1200 100.0) 44.0%, transparent); - --t-color-transparent-yellow10: color-mix(in oklab, oklch(58.00% 0.1176 100.0) 50.0%, transparent); - --t-color-transparent-yellow11: color-mix(in oklab, oklch(47.00% 0.0960 100.0) 62.0%, transparent); - --t-color-transparent-yellow12: color-mix(in oklab, oklch(28.00% 0.0540 100.0) 86.0%, transparent); - --t-color-transparent-gray1: color-mix(in oklab, oklch(99.00% 0.0000 0.0) 3.0%, transparent); - --t-color-transparent-gray2: color-mix(in oklab, oklch(97.50% 0.0000 0.0) 6.0%, transparent); - --t-color-transparent-gray3: color-mix(in oklab, oklch(95.00% 0.0000 0.0) 9.0%, transparent); - --t-color-transparent-gray4: color-mix(in oklab, oklch(92.00% 0.0000 0.0) 12.0%, transparent); - --t-color-transparent-gray5: color-mix(in oklab, oklch(89.00% 0.0000 0.0) 16.0%, transparent); - --t-color-transparent-gray6: color-mix(in oklab, oklch(86.00% 0.0000 0.0) 20.0%, transparent); - --t-color-transparent-gray7: color-mix(in oklab, oklch(82.00% 0.0000 0.0) 26.0%, transparent); - --t-color-transparent-gray8: color-mix(in oklab, oklch(74.00% 0.0000 0.0) 34.0%, transparent); - --t-color-transparent-gray9: color-mix(in oklab, oklch(63.00% 0.0000 0.0) 44.0%, transparent); - --t-color-transparent-gray10: color-mix(in oklab, oklch(58.00% 0.0000 0.0) 50.0%, transparent); - --t-color-transparent-gray11: color-mix(in oklab, oklch(47.00% 0.0000 0.0) 62.0%, transparent); - --t-color-transparent-gray12: color-mix(in oklab, oklch(28.00% 0.0000 0.0) 86.0%, transparent); - --t-color-transparent-mauve1: color-mix(in oklab, oklch(99.00% 0.0030 300.0) 3.0%, transparent); - --t-color-transparent-mauve2: color-mix(in oklab, oklch(97.50% 0.0050 300.0) 6.0%, transparent); - --t-color-transparent-mauve3: color-mix(in oklab, oklch(95.00% 0.0090 300.0) 9.0%, transparent); - --t-color-transparent-mauve4: color-mix(in oklab, oklch(92.00% 0.0120 300.0) 12.0%, transparent); - --t-color-transparent-mauve5: color-mix(in oklab, oklch(89.00% 0.0144 300.0) 16.0%, transparent); - --t-color-transparent-mauve6: color-mix(in oklab, oklch(86.00% 0.0164 300.0) 20.0%, transparent); - --t-color-transparent-mauve7: color-mix(in oklab, oklch(82.00% 0.0184 300.0) 26.0%, transparent); - --t-color-transparent-mauve8: color-mix(in oklab, oklch(74.00% 0.0200 300.0) 34.0%, transparent); - --t-color-transparent-mauve9: color-mix(in oklab, oklch(63.00% 0.0200 300.0) 44.0%, transparent); - --t-color-transparent-mauve10: color-mix(in oklab, oklch(58.00% 0.0196 300.0) 50.0%, transparent); - --t-color-transparent-mauve11: color-mix(in oklab, oklch(47.00% 0.0160 300.0) 62.0%, transparent); - --t-color-transparent-mauve12: color-mix(in oklab, oklch(28.00% 0.0090 300.0) 86.0%, transparent); - --t-color-transparent-slate1: color-mix(in oklab, oklch(99.00% 0.0030 260.0) 3.0%, transparent); - --t-color-transparent-slate2: color-mix(in oklab, oklch(97.50% 0.0050 260.0) 6.0%, transparent); - --t-color-transparent-slate3: color-mix(in oklab, oklch(95.00% 0.0090 260.0) 9.0%, transparent); - --t-color-transparent-slate4: color-mix(in oklab, oklch(92.00% 0.0120 260.0) 12.0%, transparent); - --t-color-transparent-slate5: color-mix(in oklab, oklch(89.00% 0.0144 260.0) 16.0%, transparent); - --t-color-transparent-slate6: color-mix(in oklab, oklch(86.00% 0.0164 260.0) 20.0%, transparent); - --t-color-transparent-slate7: color-mix(in oklab, oklch(82.00% 0.0184 260.0) 26.0%, transparent); - --t-color-transparent-slate8: color-mix(in oklab, oklch(74.00% 0.0200 260.0) 34.0%, transparent); - --t-color-transparent-slate9: color-mix(in oklab, oklch(63.00% 0.0200 260.0) 44.0%, transparent); - --t-color-transparent-slate10: color-mix(in oklab, oklch(58.00% 0.0196 260.0) 50.0%, transparent); - --t-color-transparent-slate11: color-mix(in oklab, oklch(47.00% 0.0160 260.0) 62.0%, transparent); - --t-color-transparent-slate12: color-mix(in oklab, oklch(28.00% 0.0090 260.0) 86.0%, transparent); - --t-color-transparent-sage1: color-mix(in oklab, oklch(99.00% 0.0030 160.0) 3.0%, transparent); - --t-color-transparent-sage2: color-mix(in oklab, oklch(97.50% 0.0050 160.0) 6.0%, transparent); - --t-color-transparent-sage3: color-mix(in oklab, oklch(95.00% 0.0090 160.0) 9.0%, transparent); - --t-color-transparent-sage4: color-mix(in oklab, oklch(92.00% 0.0120 160.0) 12.0%, transparent); - --t-color-transparent-sage5: color-mix(in oklab, oklch(89.00% 0.0144 160.0) 16.0%, transparent); - --t-color-transparent-sage6: color-mix(in oklab, oklch(86.00% 0.0164 160.0) 20.0%, transparent); - --t-color-transparent-sage7: color-mix(in oklab, oklch(82.00% 0.0184 160.0) 26.0%, transparent); - --t-color-transparent-sage8: color-mix(in oklab, oklch(74.00% 0.0200 160.0) 34.0%, transparent); - --t-color-transparent-sage9: color-mix(in oklab, oklch(63.00% 0.0200 160.0) 44.0%, transparent); - --t-color-transparent-sage10: color-mix(in oklab, oklch(58.00% 0.0196 160.0) 50.0%, transparent); - --t-color-transparent-sage11: color-mix(in oklab, oklch(47.00% 0.0160 160.0) 62.0%, transparent); - --t-color-transparent-sage12: color-mix(in oklab, oklch(28.00% 0.0090 160.0) 86.0%, transparent); - --t-color-transparent-olive1: color-mix(in oklab, oklch(99.00% 0.0030 120.0) 3.0%, transparent); - --t-color-transparent-olive2: color-mix(in oklab, oklch(97.50% 0.0050 120.0) 6.0%, transparent); - --t-color-transparent-olive3: color-mix(in oklab, oklch(95.00% 0.0090 120.0) 9.0%, transparent); - --t-color-transparent-olive4: color-mix(in oklab, oklch(92.00% 0.0120 120.0) 12.0%, transparent); - --t-color-transparent-olive5: color-mix(in oklab, oklch(89.00% 0.0144 120.0) 16.0%, transparent); - --t-color-transparent-olive6: color-mix(in oklab, oklch(86.00% 0.0164 120.0) 20.0%, transparent); - --t-color-transparent-olive7: color-mix(in oklab, oklch(82.00% 0.0184 120.0) 26.0%, transparent); - --t-color-transparent-olive8: color-mix(in oklab, oklch(74.00% 0.0200 120.0) 34.0%, transparent); - --t-color-transparent-olive9: color-mix(in oklab, oklch(63.00% 0.0200 120.0) 44.0%, transparent); - --t-color-transparent-olive10: color-mix(in oklab, oklch(58.00% 0.0196 120.0) 50.0%, transparent); - --t-color-transparent-olive11: color-mix(in oklab, oklch(47.00% 0.0160 120.0) 62.0%, transparent); - --t-color-transparent-olive12: color-mix(in oklab, oklch(28.00% 0.0090 120.0) 86.0%, transparent); - --t-color-transparent-sand1: color-mix(in oklab, oklch(99.00% 0.0030 80.0) 3.0%, transparent); - --t-color-transparent-sand2: color-mix(in oklab, oklch(97.50% 0.0050 80.0) 6.0%, transparent); - --t-color-transparent-sand3: color-mix(in oklab, oklch(95.00% 0.0090 80.0) 9.0%, transparent); - --t-color-transparent-sand4: color-mix(in oklab, oklch(92.00% 0.0120 80.0) 12.0%, transparent); - --t-color-transparent-sand5: color-mix(in oklab, oklch(89.00% 0.0144 80.0) 16.0%, transparent); - --t-color-transparent-sand6: color-mix(in oklab, oklch(86.00% 0.0164 80.0) 20.0%, transparent); - --t-color-transparent-sand7: color-mix(in oklab, oklch(82.00% 0.0184 80.0) 26.0%, transparent); - --t-color-transparent-sand8: color-mix(in oklab, oklch(74.00% 0.0200 80.0) 34.0%, transparent); - --t-color-transparent-sand9: color-mix(in oklab, oklch(63.00% 0.0200 80.0) 44.0%, transparent); - --t-color-transparent-sand10: color-mix(in oklab, oklch(58.00% 0.0196 80.0) 50.0%, transparent); - --t-color-transparent-sand11: color-mix(in oklab, oklch(47.00% 0.0160 80.0) 62.0%, transparent); - --t-color-transparent-sand12: color-mix(in oklab, oklch(28.00% 0.0090 80.0) 86.0%, transparent); - --t-color-transparent-tomato1: color-mix(in oklab, oklch(99.00% 0.0180 35.0) 3.0%, transparent); - --t-color-transparent-tomato2: color-mix(in oklab, oklch(97.50% 0.0300 35.0) 6.0%, transparent); - --t-color-transparent-tomato3: color-mix(in oklab, oklch(95.00% 0.0540 35.0) 9.0%, transparent); - --t-color-transparent-tomato4: color-mix(in oklab, oklch(92.00% 0.0720 35.0) 12.0%, transparent); - --t-color-transparent-tomato5: color-mix(in oklab, oklch(89.00% 0.0864 35.0) 16.0%, transparent); - --t-color-transparent-tomato6: color-mix(in oklab, oklch(86.00% 0.0984 35.0) 20.0%, transparent); - --t-color-transparent-tomato7: color-mix(in oklab, oklch(82.00% 0.1104 35.0) 26.0%, transparent); - --t-color-transparent-tomato8: color-mix(in oklab, oklch(74.00% 0.1200 35.0) 34.0%, transparent); - --t-color-transparent-tomato9: color-mix(in oklab, oklch(63.00% 0.1200 35.0) 44.0%, transparent); - --t-color-transparent-tomato10: color-mix(in oklab, oklch(58.00% 0.1176 35.0) 50.0%, transparent); - --t-color-transparent-tomato11: color-mix(in oklab, oklch(47.00% 0.0960 35.0) 62.0%, transparent); - --t-color-transparent-tomato12: color-mix(in oklab, oklch(28.00% 0.0540 35.0) 86.0%, transparent); - --t-color-transparent-ruby1: color-mix(in oklab, oklch(99.00% 0.0180 12.0) 3.0%, transparent); - --t-color-transparent-ruby2: color-mix(in oklab, oklch(97.50% 0.0300 12.0) 6.0%, transparent); - --t-color-transparent-ruby3: color-mix(in oklab, oklch(95.00% 0.0540 12.0) 9.0%, transparent); - --t-color-transparent-ruby4: color-mix(in oklab, oklch(92.00% 0.0720 12.0) 12.0%, transparent); - --t-color-transparent-ruby5: color-mix(in oklab, oklch(89.00% 0.0864 12.0) 16.0%, transparent); - --t-color-transparent-ruby6: color-mix(in oklab, oklch(86.00% 0.0984 12.0) 20.0%, transparent); - --t-color-transparent-ruby7: color-mix(in oklab, oklch(82.00% 0.1104 12.0) 26.0%, transparent); - --t-color-transparent-ruby8: color-mix(in oklab, oklch(74.00% 0.1200 12.0) 34.0%, transparent); - --t-color-transparent-ruby9: color-mix(in oklab, oklch(63.00% 0.1200 12.0) 44.0%, transparent); - --t-color-transparent-ruby10: color-mix(in oklab, oklch(58.00% 0.1176 12.0) 50.0%, transparent); - --t-color-transparent-ruby11: color-mix(in oklab, oklch(47.00% 0.0960 12.0) 62.0%, transparent); - --t-color-transparent-ruby12: color-mix(in oklab, oklch(28.00% 0.0540 12.0) 86.0%, transparent); - --t-color-transparent-crimson1: color-mix(in oklab, oklch(99.00% 0.0180 0.0) 3.0%, transparent); - --t-color-transparent-crimson2: color-mix(in oklab, oklch(97.50% 0.0300 0.0) 6.0%, transparent); - --t-color-transparent-crimson3: color-mix(in oklab, oklch(95.00% 0.0540 0.0) 9.0%, transparent); - --t-color-transparent-crimson4: color-mix(in oklab, oklch(92.00% 0.0720 0.0) 12.0%, transparent); - --t-color-transparent-crimson5: color-mix(in oklab, oklch(89.00% 0.0864 0.0) 16.0%, transparent); - --t-color-transparent-crimson6: color-mix(in oklab, oklch(86.00% 0.0984 0.0) 20.0%, transparent); - --t-color-transparent-crimson7: color-mix(in oklab, oklch(82.00% 0.1104 0.0) 26.0%, transparent); - --t-color-transparent-crimson8: color-mix(in oklab, oklch(74.00% 0.1200 0.0) 34.0%, transparent); - --t-color-transparent-crimson9: color-mix(in oklab, oklch(63.00% 0.1200 0.0) 44.0%, transparent); - --t-color-transparent-crimson10: color-mix(in oklab, oklch(58.00% 0.1176 0.0) 50.0%, transparent); - --t-color-transparent-crimson11: color-mix(in oklab, oklch(47.00% 0.0960 0.0) 62.0%, transparent); - --t-color-transparent-crimson12: color-mix(in oklab, oklch(28.00% 0.0540 0.0) 86.0%, transparent); - --t-color-transparent-plum1: color-mix(in oklab, oklch(99.00% 0.0180 330.0) 3.0%, transparent); - --t-color-transparent-plum2: color-mix(in oklab, oklch(97.50% 0.0300 330.0) 6.0%, transparent); - --t-color-transparent-plum3: color-mix(in oklab, oklch(95.00% 0.0540 330.0) 9.0%, transparent); - --t-color-transparent-plum4: color-mix(in oklab, oklch(92.00% 0.0720 330.0) 12.0%, transparent); - --t-color-transparent-plum5: color-mix(in oklab, oklch(89.00% 0.0864 330.0) 16.0%, transparent); - --t-color-transparent-plum6: color-mix(in oklab, oklch(86.00% 0.0984 330.0) 20.0%, transparent); - --t-color-transparent-plum7: color-mix(in oklab, oklch(82.00% 0.1104 330.0) 26.0%, transparent); - --t-color-transparent-plum8: color-mix(in oklab, oklch(74.00% 0.1200 330.0) 34.0%, transparent); - --t-color-transparent-plum9: color-mix(in oklab, oklch(63.00% 0.1200 330.0) 44.0%, transparent); - --t-color-transparent-plum10: color-mix(in oklab, oklch(58.00% 0.1176 330.0) 50.0%, transparent); - --t-color-transparent-plum11: color-mix(in oklab, oklch(47.00% 0.0960 330.0) 62.0%, transparent); - --t-color-transparent-plum12: color-mix(in oklab, oklch(28.00% 0.0540 330.0) 86.0%, transparent); - --t-color-transparent-violet1: color-mix(in oklab, oklch(99.00% 0.0180 295.0) 3.0%, transparent); - --t-color-transparent-violet2: color-mix(in oklab, oklch(97.50% 0.0300 295.0) 6.0%, transparent); - --t-color-transparent-violet3: color-mix(in oklab, oklch(95.00% 0.0540 295.0) 9.0%, transparent); - --t-color-transparent-violet4: color-mix(in oklab, oklch(92.00% 0.0720 295.0) 12.0%, transparent); - --t-color-transparent-violet5: color-mix(in oklab, oklch(89.00% 0.0864 295.0) 16.0%, transparent); - --t-color-transparent-violet6: color-mix(in oklab, oklch(86.00% 0.0984 295.0) 20.0%, transparent); - --t-color-transparent-violet7: color-mix(in oklab, oklch(82.00% 0.1104 295.0) 26.0%, transparent); - --t-color-transparent-violet8: color-mix(in oklab, oklch(74.00% 0.1200 295.0) 34.0%, transparent); - --t-color-transparent-violet9: color-mix(in oklab, oklch(63.00% 0.1200 295.0) 44.0%, transparent); - --t-color-transparent-violet10: color-mix(in oklab, oklch(58.00% 0.1176 295.0) 50.0%, transparent); - --t-color-transparent-violet11: color-mix(in oklab, oklch(47.00% 0.0960 295.0) 62.0%, transparent); - --t-color-transparent-violet12: color-mix(in oklab, oklch(28.00% 0.0540 295.0) 86.0%, transparent); - --t-color-transparent-iris1: color-mix(in oklab, oklch(99.00% 0.0180 275.0) 3.0%, transparent); - --t-color-transparent-iris2: color-mix(in oklab, oklch(97.50% 0.0300 275.0) 6.0%, transparent); - --t-color-transparent-iris3: color-mix(in oklab, oklch(95.00% 0.0540 275.0) 9.0%, transparent); - --t-color-transparent-iris4: color-mix(in oklab, oklch(92.00% 0.0720 275.0) 12.0%, transparent); - --t-color-transparent-iris5: color-mix(in oklab, oklch(89.00% 0.0864 275.0) 16.0%, transparent); - --t-color-transparent-iris6: color-mix(in oklab, oklch(86.00% 0.0984 275.0) 20.0%, transparent); - --t-color-transparent-iris7: color-mix(in oklab, oklch(82.00% 0.1104 275.0) 26.0%, transparent); - --t-color-transparent-iris8: color-mix(in oklab, oklch(74.00% 0.1200 275.0) 34.0%, transparent); - --t-color-transparent-iris9: color-mix(in oklab, oklch(63.00% 0.1200 275.0) 44.0%, transparent); - --t-color-transparent-iris10: color-mix(in oklab, oklch(58.00% 0.1176 275.0) 50.0%, transparent); - --t-color-transparent-iris11: color-mix(in oklab, oklch(47.00% 0.0960 275.0) 62.0%, transparent); - --t-color-transparent-iris12: color-mix(in oklab, oklch(28.00% 0.0540 275.0) 86.0%, transparent); - --t-color-transparent-cyan1: color-mix(in oklab, oklch(99.00% 0.0180 220.0) 3.0%, transparent); - --t-color-transparent-cyan2: color-mix(in oklab, oklch(97.50% 0.0300 220.0) 6.0%, transparent); - --t-color-transparent-cyan3: color-mix(in oklab, oklch(95.00% 0.0540 220.0) 9.0%, transparent); - --t-color-transparent-cyan4: color-mix(in oklab, oklch(92.00% 0.0720 220.0) 12.0%, transparent); - --t-color-transparent-cyan5: color-mix(in oklab, oklch(89.00% 0.0864 220.0) 16.0%, transparent); - --t-color-transparent-cyan6: color-mix(in oklab, oklch(86.00% 0.0984 220.0) 20.0%, transparent); - --t-color-transparent-cyan7: color-mix(in oklab, oklch(82.00% 0.1104 220.0) 26.0%, transparent); - --t-color-transparent-cyan8: color-mix(in oklab, oklch(74.00% 0.1200 220.0) 34.0%, transparent); - --t-color-transparent-cyan9: color-mix(in oklab, oklch(63.00% 0.1200 220.0) 44.0%, transparent); - --t-color-transparent-cyan10: color-mix(in oklab, oklch(58.00% 0.1176 220.0) 50.0%, transparent); - --t-color-transparent-cyan11: color-mix(in oklab, oklch(47.00% 0.0960 220.0) 62.0%, transparent); - --t-color-transparent-cyan12: color-mix(in oklab, oklch(28.00% 0.0540 220.0) 86.0%, transparent); - --t-color-transparent-jade1: color-mix(in oklab, oklch(99.00% 0.0180 165.0) 3.0%, transparent); - --t-color-transparent-jade2: color-mix(in oklab, oklch(97.50% 0.0300 165.0) 6.0%, transparent); - --t-color-transparent-jade3: color-mix(in oklab, oklch(95.00% 0.0540 165.0) 9.0%, transparent); - --t-color-transparent-jade4: color-mix(in oklab, oklch(92.00% 0.0720 165.0) 12.0%, transparent); - --t-color-transparent-jade5: color-mix(in oklab, oklch(89.00% 0.0864 165.0) 16.0%, transparent); - --t-color-transparent-jade6: color-mix(in oklab, oklch(86.00% 0.0984 165.0) 20.0%, transparent); - --t-color-transparent-jade7: color-mix(in oklab, oklch(82.00% 0.1104 165.0) 26.0%, transparent); - --t-color-transparent-jade8: color-mix(in oklab, oklch(74.00% 0.1200 165.0) 34.0%, transparent); - --t-color-transparent-jade9: color-mix(in oklab, oklch(63.00% 0.1200 165.0) 44.0%, transparent); - --t-color-transparent-jade10: color-mix(in oklab, oklch(58.00% 0.1176 165.0) 50.0%, transparent); - --t-color-transparent-jade11: color-mix(in oklab, oklch(47.00% 0.0960 165.0) 62.0%, transparent); - --t-color-transparent-jade12: color-mix(in oklab, oklch(28.00% 0.0540 165.0) 86.0%, transparent); - --t-color-transparent-grass1: color-mix(in oklab, oklch(99.00% 0.0180 140.0) 3.0%, transparent); - --t-color-transparent-grass2: color-mix(in oklab, oklch(97.50% 0.0300 140.0) 6.0%, transparent); - --t-color-transparent-grass3: color-mix(in oklab, oklch(95.00% 0.0540 140.0) 9.0%, transparent); - --t-color-transparent-grass4: color-mix(in oklab, oklch(92.00% 0.0720 140.0) 12.0%, transparent); - --t-color-transparent-grass5: color-mix(in oklab, oklch(89.00% 0.0864 140.0) 16.0%, transparent); - --t-color-transparent-grass6: color-mix(in oklab, oklch(86.00% 0.0984 140.0) 20.0%, transparent); - --t-color-transparent-grass7: color-mix(in oklab, oklch(82.00% 0.1104 140.0) 26.0%, transparent); - --t-color-transparent-grass8: color-mix(in oklab, oklch(74.00% 0.1200 140.0) 34.0%, transparent); - --t-color-transparent-grass9: color-mix(in oklab, oklch(63.00% 0.1200 140.0) 44.0%, transparent); - --t-color-transparent-grass10: color-mix(in oklab, oklch(58.00% 0.1176 140.0) 50.0%, transparent); - --t-color-transparent-grass11: color-mix(in oklab, oklch(47.00% 0.0960 140.0) 62.0%, transparent); - --t-color-transparent-grass12: color-mix(in oklab, oklch(28.00% 0.0540 140.0) 86.0%, transparent); - --t-color-transparent-mint1: color-mix(in oklab, oklch(99.00% 0.0180 175.0) 3.0%, transparent); - --t-color-transparent-mint2: color-mix(in oklab, oklch(97.50% 0.0300 175.0) 6.0%, transparent); - --t-color-transparent-mint3: color-mix(in oklab, oklch(95.00% 0.0540 175.0) 9.0%, transparent); - --t-color-transparent-mint4: color-mix(in oklab, oklch(92.00% 0.0720 175.0) 12.0%, transparent); - --t-color-transparent-mint5: color-mix(in oklab, oklch(89.00% 0.0864 175.0) 16.0%, transparent); - --t-color-transparent-mint6: color-mix(in oklab, oklch(86.00% 0.0984 175.0) 20.0%, transparent); - --t-color-transparent-mint7: color-mix(in oklab, oklch(82.00% 0.1104 175.0) 26.0%, transparent); - --t-color-transparent-mint8: color-mix(in oklab, oklch(74.00% 0.1200 175.0) 34.0%, transparent); - --t-color-transparent-mint9: color-mix(in oklab, oklch(63.00% 0.1200 175.0) 44.0%, transparent); - --t-color-transparent-mint10: color-mix(in oklab, oklch(58.00% 0.1176 175.0) 50.0%, transparent); - --t-color-transparent-mint11: color-mix(in oklab, oklch(47.00% 0.0960 175.0) 62.0%, transparent); - --t-color-transparent-mint12: color-mix(in oklab, oklch(28.00% 0.0540 175.0) 86.0%, transparent); - --t-color-transparent-lime1: color-mix(in oklab, oklch(99.00% 0.0180 125.0) 3.0%, transparent); - --t-color-transparent-lime2: color-mix(in oklab, oklch(97.50% 0.0300 125.0) 6.0%, transparent); - --t-color-transparent-lime3: color-mix(in oklab, oklch(95.00% 0.0540 125.0) 9.0%, transparent); - --t-color-transparent-lime4: color-mix(in oklab, oklch(92.00% 0.0720 125.0) 12.0%, transparent); - --t-color-transparent-lime5: color-mix(in oklab, oklch(89.00% 0.0864 125.0) 16.0%, transparent); - --t-color-transparent-lime6: color-mix(in oklab, oklch(86.00% 0.0984 125.0) 20.0%, transparent); - --t-color-transparent-lime7: color-mix(in oklab, oklch(82.00% 0.1104 125.0) 26.0%, transparent); - --t-color-transparent-lime8: color-mix(in oklab, oklch(74.00% 0.1200 125.0) 34.0%, transparent); - --t-color-transparent-lime9: color-mix(in oklab, oklch(63.00% 0.1200 125.0) 44.0%, transparent); - --t-color-transparent-lime10: color-mix(in oklab, oklch(58.00% 0.1176 125.0) 50.0%, transparent); - --t-color-transparent-lime11: color-mix(in oklab, oklch(47.00% 0.0960 125.0) 62.0%, transparent); - --t-color-transparent-lime12: color-mix(in oklab, oklch(28.00% 0.0540 125.0) 86.0%, transparent); - --t-color-transparent-bronze1: color-mix(in oklab, oklch(99.00% 0.0180 45.0) 3.0%, transparent); - --t-color-transparent-bronze2: color-mix(in oklab, oklch(97.50% 0.0300 45.0) 6.0%, transparent); - --t-color-transparent-bronze3: color-mix(in oklab, oklch(95.00% 0.0540 45.0) 9.0%, transparent); - --t-color-transparent-bronze4: color-mix(in oklab, oklch(92.00% 0.0720 45.0) 12.0%, transparent); - --t-color-transparent-bronze5: color-mix(in oklab, oklch(89.00% 0.0864 45.0) 16.0%, transparent); - --t-color-transparent-bronze6: color-mix(in oklab, oklch(86.00% 0.0984 45.0) 20.0%, transparent); - --t-color-transparent-bronze7: color-mix(in oklab, oklch(82.00% 0.1104 45.0) 26.0%, transparent); - --t-color-transparent-bronze8: color-mix(in oklab, oklch(74.00% 0.1200 45.0) 34.0%, transparent); - --t-color-transparent-bronze9: color-mix(in oklab, oklch(63.00% 0.1200 45.0) 44.0%, transparent); - --t-color-transparent-bronze10: color-mix(in oklab, oklch(58.00% 0.1176 45.0) 50.0%, transparent); - --t-color-transparent-bronze11: color-mix(in oklab, oklch(47.00% 0.0960 45.0) 62.0%, transparent); - --t-color-transparent-bronze12: color-mix(in oklab, oklch(28.00% 0.0540 45.0) 86.0%, transparent); - --t-color-transparent-gold1: color-mix(in oklab, oklch(99.00% 0.0180 90.0) 3.0%, transparent); - --t-color-transparent-gold2: color-mix(in oklab, oklch(97.50% 0.0300 90.0) 6.0%, transparent); - --t-color-transparent-gold3: color-mix(in oklab, oklch(95.00% 0.0540 90.0) 9.0%, transparent); - --t-color-transparent-gold4: color-mix(in oklab, oklch(92.00% 0.0720 90.0) 12.0%, transparent); - --t-color-transparent-gold5: color-mix(in oklab, oklch(89.00% 0.0864 90.0) 16.0%, transparent); - --t-color-transparent-gold6: color-mix(in oklab, oklch(86.00% 0.0984 90.0) 20.0%, transparent); - --t-color-transparent-gold7: color-mix(in oklab, oklch(82.00% 0.1104 90.0) 26.0%, transparent); - --t-color-transparent-gold8: color-mix(in oklab, oklch(74.00% 0.1200 90.0) 34.0%, transparent); - --t-color-transparent-gold9: color-mix(in oklab, oklch(63.00% 0.1200 90.0) 44.0%, transparent); - --t-color-transparent-gold10: color-mix(in oklab, oklch(58.00% 0.1176 90.0) 50.0%, transparent); - --t-color-transparent-gold11: color-mix(in oklab, oklch(47.00% 0.0960 90.0) 62.0%, transparent); - --t-color-transparent-gold12: color-mix(in oklab, oklch(28.00% 0.0540 90.0) 86.0%, transparent); - --t-color-transparent-brown1: color-mix(in oklab, oklch(99.00% 0.0180 55.0) 3.0%, transparent); - --t-color-transparent-brown2: color-mix(in oklab, oklch(97.50% 0.0300 55.0) 6.0%, transparent); - --t-color-transparent-brown3: color-mix(in oklab, oklch(95.00% 0.0540 55.0) 9.0%, transparent); - --t-color-transparent-brown4: color-mix(in oklab, oklch(92.00% 0.0720 55.0) 12.0%, transparent); - --t-color-transparent-brown5: color-mix(in oklab, oklch(89.00% 0.0864 55.0) 16.0%, transparent); - --t-color-transparent-brown6: color-mix(in oklab, oklch(86.00% 0.0984 55.0) 20.0%, transparent); - --t-color-transparent-brown7: color-mix(in oklab, oklch(82.00% 0.1104 55.0) 26.0%, transparent); - --t-color-transparent-brown8: color-mix(in oklab, oklch(74.00% 0.1200 55.0) 34.0%, transparent); - --t-color-transparent-brown9: color-mix(in oklab, oklch(63.00% 0.1200 55.0) 44.0%, transparent); - --t-color-transparent-brown10: color-mix(in oklab, oklch(58.00% 0.1176 55.0) 50.0%, transparent); - --t-color-transparent-brown11: color-mix(in oklab, oklch(47.00% 0.0960 55.0) 62.0%, transparent); - --t-color-transparent-brown12: color-mix(in oklab, oklch(28.00% 0.0540 55.0) 86.0%, transparent); - --t-color-transparent-amber1: color-mix(in oklab, oklch(99.00% 0.0180 85.0) 3.0%, transparent); - --t-color-transparent-amber2: color-mix(in oklab, oklch(97.50% 0.0300 85.0) 6.0%, transparent); - --t-color-transparent-amber3: color-mix(in oklab, oklch(95.00% 0.0540 85.0) 9.0%, transparent); - --t-color-transparent-amber4: color-mix(in oklab, oklch(92.00% 0.0720 85.0) 12.0%, transparent); - --t-color-transparent-amber5: color-mix(in oklab, oklch(89.00% 0.0864 85.0) 16.0%, transparent); - --t-color-transparent-amber6: color-mix(in oklab, oklch(86.00% 0.0984 85.0) 20.0%, transparent); - --t-color-transparent-amber7: color-mix(in oklab, oklch(82.00% 0.1104 85.0) 26.0%, transparent); - --t-color-transparent-amber8: color-mix(in oklab, oklch(74.00% 0.1200 85.0) 34.0%, transparent); - --t-color-transparent-amber9: color-mix(in oklab, oklch(63.00% 0.1200 85.0) 44.0%, transparent); - --t-color-transparent-amber10: color-mix(in oklab, oklch(58.00% 0.1176 85.0) 50.0%, transparent); - --t-color-transparent-amber11: color-mix(in oklab, oklch(47.00% 0.0960 85.0) 62.0%, transparent); - --t-color-transparent-amber12: color-mix(in oklab, oklch(28.00% 0.0540 85.0) 86.0%, transparent); - --t-font-color-on-accent: var(--ij-ink-bright); + --t-snack-bar-success-color: color(display-p3 0.297 0.637 0.581); + --t-snack-bar-success-background-color: #00a43319; + --t-snack-bar-error-color: color(display-p3 0.83 0.329 0.324); + --t-snack-bar-error-background-color: #f3000d14; + --t-snack-bar-warning-color: color(display-p3 0.9 0.45 0.2); + --t-snack-bar-warning-background-color: #ff9c0029; + --t-snack-bar-info-color: color(display-p3 0.276 0.384 0.837); + --t-snack-bar-info-background-color: #0047f112; + --t-snack-bar-default-color: color(display-p3 0.2 0.2 0.2); + --t-snack-bar-default-background-color: color(display-p3 0 0 0 / 0.039); + --t-tag-text-gray: color(display-p3 0.4 0.4 0.4); + --t-tag-text-mauve: color(display-p3 0.395 0.388 0.424); + --t-tag-text-slate: color(display-p3 0.379 0.392 0.421); + --t-tag-text-sage: color(display-p3 0.377 0.395 0.389); + --t-tag-text-olive: color(display-p3 0.38 0.395 0.374); + --t-tag-text-sand: color(display-p3 0.388 0.388 0.37); + --t-tag-text-tomato: color(display-p3 0.755 0.259 0.152); + --t-tag-text-red: color(display-p3 0.744 0.234 0.222); + --t-tag-text-ruby: color(display-p3 0.728 0.211 0.311); + --t-tag-text-crimson: color(display-p3 0.731 0.195 0.388); + --t-tag-text-pink: color(display-p3 0.698 0.219 0.528); + --t-tag-text-plum: color(display-p3 0.543 0.263 0.619); + --t-tag-text-purple: color(display-p3 0.473 0.281 0.687); + --t-tag-text-violet: color(display-p3 0.383 0.317 0.702); + --t-tag-text-iris: color(display-p3 0.337 0.326 0.748); + --t-tag-text-cyan: color(display-p3 0.08 0.48 0.63); + --t-tag-text-turquoise: color(display-p3 0.08 0.5 0.43); + --t-tag-text-sky: color(display-p3 0.193 0.448 0.605); + --t-tag-text-blue: color(display-p3 0.256 0.354 0.755); + --t-tag-text-jade: color(display-p3 0.15 0.5 0.37); + --t-tag-text-green: color(display-p3 0.19 0.5 0.32); + --t-tag-text-grass: color(display-p3 0.263 0.488 0.261); + --t-tag-text-mint: color(display-p3 0.203 0.463 0.397); + --t-tag-text-lime: color(display-p3 0.386 0.482 0.227); + --t-tag-text-bronze: color(display-p3 0.471 0.373 0.336); + --t-tag-text-gold: color(display-p3 0.433 0.386 0.305); + --t-tag-text-brown: color(display-p3 0.485 0.374 0.288); + --t-tag-text-orange: color(display-p3 0.76 0.34 0); + --t-tag-text-amber: color(display-p3 0.64 0.4 0); + --t-tag-text-yellow: color(display-p3 0.6 0.44 0); + --t-tag-background-gray: color(display-p3 0.976 0.976 0.976); + --t-tag-background-mauve: color(display-p3 0.946 0.938 0.952); + --t-tag-background-slate: color(display-p3 0.94 0.941 0.953); + --t-tag-background-sage: color(display-p3 0.935 0.944 0.94); + --t-tag-background-olive: color(display-p3 0.939 0.945 0.937); + --t-tag-background-sand: color(display-p3 0.943 0.942 0.936); + --t-tag-background-tomato: color(display-p3 0.985 0.924 0.909); + --t-tag-background-red: color(display-p3 0.985 0.925 0.925); + --t-tag-background-ruby: color(display-p3 0.983 0.92 0.928); + --t-tag-background-crimson: color(display-p3 0.987 0.917 0.941); + --t-tag-background-pink: color(display-p3 0.981 0.917 0.96); + --t-tag-background-plum: color(display-p3 0.973 0.923 0.98); + --t-tag-background-purple: color(display-p3 0.963 0.931 0.989); + --t-tag-background-violet: color(display-p3 0.953 0.943 0.993); + --t-tag-background-iris: color(display-p3 0.943 0.945 0.992); + --t-tag-background-cyan: color(display-p3 0.888 0.965 0.975); + --t-tag-background-turquoise: color(display-p3 0.895 0.971 0.952); + --t-tag-background-sky: color(display-p3 0.899 0.963 0.989); + --t-tag-background-blue: color(display-p3 0.933 0.948 0.992); + --t-tag-background-jade: color(display-p3 0.912 0.965 0.932); + --t-tag-background-green: color(display-p3 0.913 0.964 0.925); + --t-tag-background-grass: color(display-p3 0.923 0.965 0.917); + --t-tag-background-mint: color(display-p3 0.888 0.972 0.95); + --t-tag-background-lime: color(display-p3 0.939 0.965 0.851); + --t-tag-background-bronze: color(display-p3 0.958 0.932 0.919); + --t-tag-background-gold: color(display-p3 0.947 0.94 0.909); + --t-tag-background-brown: color(display-p3 0.959 0.936 0.909); + --t-tag-background-orange: color(display-p3 0.989 0.938 0.85); + --t-tag-background-amber: color(display-p3 0.994 0.969 0.782); + --t-tag-background-yellow: color(display-p3 0.997 0.982 0.749); + --t-code-text-gray: color(display-p3 0.514 0.514 0.514); + --t-code-text-sky: color(display-p3 0.555 0.845 0.959); + --t-code-text-pink: color(display-p3 0.748 0.27 0.581); + --t-code-text-orange: color(display-p3 0.877 0.597 0.379); + --t-code-text-green: color(display-p3 0.585 0.707 0.378); + --t-code-font-family: DM Mono; + --t--illustration-icon-color-blue: color(display-p3 0.569 0.639 0.916); + --t--illustration-icon-color-gray: color(display-p3 0.6 0.6 0.6); + --t--illustration-icon-fill-blue: color(display-p3 0.831 0.87 1); + --t--illustration-icon-fill-gray: color(display-p3 0.922 0.922 0.922); + --t-gray-scale-gray1: color(display-p3 1 1 1); + --t-gray-scale-gray2: color(display-p3 0.988 0.988 0.988); + --t-gray-scale-gray3: color(display-p3 0.976 0.976 0.976); + --t-gray-scale-gray4: color(display-p3 0.945 0.945 0.945); + --t-gray-scale-gray5: color(display-p3 0.922 0.922 0.922); + --t-gray-scale-gray6: color(display-p3 0.839 0.839 0.839); + --t-gray-scale-gray7: color(display-p3 0.8 0.8 0.8); + --t-gray-scale-gray8: color(display-p3 0.702 0.702 0.702); + --t-gray-scale-gray9: color(display-p3 0.6 0.6 0.6); + --t-gray-scale-gray10: color(display-p3 0.514 0.514 0.514); + --t-gray-scale-gray11: color(display-p3 0.4 0.4 0.4); + --t-gray-scale-gray12: color(display-p3 0.2 0.2 0.2); + --t-color-red: color(display-p3 0.83 0.329 0.324); + --t-color-ruby: color(display-p3 0.83 0.323 0.408); + --t-color-crimson: color(display-p3 0.843 0.298 0.507); + --t-color-tomato: color(display-p3 0.831 0.345 0.231); + --t-color-orange: color(display-p3 0.9 0.45 0.2); + --t-color-amber: color(display-p3 1 0.77 0.26); + --t-color-yellow: color(display-p3 1 0.92 0.22); + --t-color-lime: color(display-p3 0.78 0.928 0.466); + --t-color-grass: color(display-p3 0.38 0.647 0.378); + --t-color-green: color(display-p3 0.332 0.634 0.442); + --t-color-jade: color(display-p3 0.319 0.63 0.521); + --t-color-mint: color(display-p3 0.62 0.908 0.834); + --t-color-turquoise: color(display-p3 0.297 0.637 0.581); + --t-color-cyan: color(display-p3 0.282 0.627 0.765); + --t-color-sky: color(display-p3 0.585 0.877 0.983); + --t-color-blue: color(display-p3 0.276 0.384 0.837); + --t-color-iris: color(display-p3 0.357 0.357 0.81); + --t-color-violet: color(display-p3 0.417 0.341 0.784); + --t-color-purple: color(display-p3 0.523 0.318 0.751); + --t-color-plum: color(display-p3 0.624 0.313 0.708); + --t-color-pink: color(display-p3 0.775 0.297 0.61); + --t-color-bronze: color(display-p3 0.611 0.507 0.455); + --t-color-gold: color(display-p3 0.579 0.517 0.41); + --t-color-brown: color(display-p3 0.651 0.505 0.368); + --t-color-gray: color(display-p3 0.6 0.6 0.6); + --t-color-yellow1: color(display-p3 0.992 0.992 0.978); + --t-color-yellow2: color(display-p3 0.995 0.99 0.922); + --t-color-yellow3: color(display-p3 0.997 0.982 0.749); + --t-color-yellow4: color(display-p3 0.992 0.953 0.627); + --t-color-yellow5: color(display-p3 0.984 0.91 0.51); + --t-color-yellow6: color(display-p3 0.934 0.847 0.474); + --t-color-yellow7: color(display-p3 0.876 0.785 0.46); + --t-color-yellow8: color(display-p3 0.811 0.689 0.313); + --t-color-yellow9: color(display-p3 1 0.92 0.22); + --t-color-yellow10: color(display-p3 0.977 0.868 0.291); + --t-color-yellow11: color(display-p3 0.6 0.44 0); + --t-color-yellow12: color(display-p3 0.271 0.233 0.137); + --t-color-green1: color(display-p3 0.986 0.996 0.989); + --t-color-green2: color(display-p3 0.963 0.983 0.967); + --t-color-green3: color(display-p3 0.913 0.964 0.925); + --t-color-green4: color(display-p3 0.859 0.94 0.879); + --t-color-green5: color(display-p3 0.796 0.907 0.826); + --t-color-green6: color(display-p3 0.718 0.863 0.761); + --t-color-green7: color(display-p3 0.61 0.801 0.675); + --t-color-green8: color(display-p3 0.451 0.715 0.559); + --t-color-green9: color(display-p3 0.332 0.634 0.442); + --t-color-green10: color(display-p3 0.308 0.595 0.417); + --t-color-green11: color(display-p3 0.19 0.5 0.32); + --t-color-green12: color(display-p3 0.132 0.228 0.18); + --t-color-turquoise1: color(display-p3 0.983 0.996 0.992); + --t-color-turquoise2: color(display-p3 0.958 0.983 0.976); + --t-color-turquoise3: color(display-p3 0.895 0.971 0.952); + --t-color-turquoise4: color(display-p3 0.831 0.949 0.92); + --t-color-turquoise5: color(display-p3 0.761 0.914 0.878); + --t-color-turquoise6: color(display-p3 0.682 0.864 0.825); + --t-color-turquoise7: color(display-p3 0.581 0.798 0.756); + --t-color-turquoise8: color(display-p3 0.433 0.716 0.671); + --t-color-turquoise9: color(display-p3 0.297 0.637 0.581); + --t-color-turquoise10: color(display-p3 0.275 0.599 0.542); + --t-color-turquoise11: color(display-p3 0.08 0.5 0.43); + --t-color-turquoise12: color(display-p3 0.11 0.235 0.219); + --t-color-sky1: color(display-p3 0.98 0.995 0.999); + --t-color-sky2: color(display-p3 0.953 0.98 0.99); + --t-color-sky3: color(display-p3 0.899 0.963 0.989); + --t-color-sky4: color(display-p3 0.842 0.937 0.977); + --t-color-sky5: color(display-p3 0.777 0.9 0.954); + --t-color-sky6: color(display-p3 0.701 0.851 0.921); + --t-color-sky7: color(display-p3 0.604 0.785 0.879); + --t-color-sky8: color(display-p3 0.457 0.696 0.829); + --t-color-sky9: color(display-p3 0.585 0.877 0.983); + --t-color-sky10: color(display-p3 0.555 0.845 0.959); + --t-color-sky11: color(display-p3 0.193 0.448 0.605); + --t-color-sky12: color(display-p3 0.145 0.241 0.329); + --t-color-blue1: color(display-p3 0.992 0.992 0.996); + --t-color-blue2: color(display-p3 0.971 0.977 0.998); + --t-color-blue3: color(display-p3 0.933 0.948 0.992); + --t-color-blue4: color(display-p3 0.885 0.914 1); + --t-color-blue5: color(display-p3 0.831 0.87 1); + --t-color-blue6: color(display-p3 0.767 0.814 0.995); + --t-color-blue7: color(display-p3 0.685 0.74 0.957); + --t-color-blue8: color(display-p3 0.569 0.639 0.916); + --t-color-blue9: color(display-p3 0.276 0.384 0.837); + --t-color-blue10: color(display-p3 0.234 0.343 0.801); + --t-color-blue11: color(display-p3 0.256 0.354 0.755); + --t-color-blue12: color(display-p3 0.133 0.175 0.348); + --t-color-purple1: color(display-p3 0.995 0.988 0.996); + --t-color-purple2: color(display-p3 0.983 0.971 0.993); + --t-color-purple3: color(display-p3 0.963 0.931 0.989); + --t-color-purple4: color(display-p3 0.937 0.888 0.981); + --t-color-purple5: color(display-p3 0.904 0.837 0.966); + --t-color-purple6: color(display-p3 0.86 0.774 0.942); + --t-color-purple7: color(display-p3 0.799 0.69 0.91); + --t-color-purple8: color(display-p3 0.719 0.583 0.874); + --t-color-purple9: color(display-p3 0.523 0.318 0.751); + --t-color-purple10: color(display-p3 0.483 0.289 0.7); + --t-color-purple11: color(display-p3 0.473 0.281 0.687); + --t-color-purple12: color(display-p3 0.234 0.132 0.363); + --t-color-pink1: color(display-p3 0.998 0.989 0.996); + --t-color-pink2: color(display-p3 0.992 0.97 0.985); + --t-color-pink3: color(display-p3 0.981 0.917 0.96); + --t-color-pink4: color(display-p3 0.963 0.867 0.932); + --t-color-pink5: color(display-p3 0.939 0.815 0.899); + --t-color-pink6: color(display-p3 0.907 0.756 0.859); + --t-color-pink7: color(display-p3 0.869 0.683 0.81); + --t-color-pink8: color(display-p3 0.825 0.59 0.751); + --t-color-pink9: color(display-p3 0.775 0.297 0.61); + --t-color-pink10: color(display-p3 0.748 0.27 0.581); + --t-color-pink11: color(display-p3 0.698 0.219 0.528); + --t-color-pink12: color(display-p3 0.363 0.101 0.279); + --t-color-red1: color(display-p3 0.998 0.989 0.988); + --t-color-red2: color(display-p3 0.995 0.971 0.971); + --t-color-red3: color(display-p3 0.985 0.925 0.925); + --t-color-red4: color(display-p3 0.999 0.866 0.866); + --t-color-red5: color(display-p3 0.984 0.812 0.811); + --t-color-red6: color(display-p3 0.955 0.751 0.749); + --t-color-red7: color(display-p3 0.915 0.675 0.672); + --t-color-red8: color(display-p3 0.872 0.575 0.572); + --t-color-red9: color(display-p3 0.83 0.329 0.324); + --t-color-red10: color(display-p3 0.798 0.294 0.285); + --t-color-red11: color(display-p3 0.744 0.234 0.222); + --t-color-red12: color(display-p3 0.36 0.115 0.143); + --t-color-orange1: color(display-p3 0.995 0.988 0.985); + --t-color-orange2: color(display-p3 0.994 0.968 0.934); + --t-color-orange3: color(display-p3 0.989 0.938 0.85); + --t-color-orange4: color(display-p3 1 0.874 0.687); + --t-color-orange5: color(display-p3 1 0.821 0.583); + --t-color-orange6: color(display-p3 0.975 0.767 0.545); + --t-color-orange7: color(display-p3 0.919 0.693 0.486); + --t-color-orange8: color(display-p3 0.877 0.597 0.379); + --t-color-orange9: color(display-p3 0.9 0.45 0.2); + --t-color-orange10: color(display-p3 0.87 0.409 0.164); + --t-color-orange11: color(display-p3 0.76 0.34 0); + --t-color-orange12: color(display-p3 0.323 0.185 0.127); + --t-color-gray1: color(display-p3 1 1 1); + --t-color-gray2: color(display-p3 0.988 0.988 0.988); + --t-color-gray3: color(display-p3 0.976 0.976 0.976); + --t-color-gray4: color(display-p3 0.945 0.945 0.945); + --t-color-gray5: color(display-p3 0.922 0.922 0.922); + --t-color-gray6: color(display-p3 0.839 0.839 0.839); + --t-color-gray7: color(display-p3 0.8 0.8 0.8); + --t-color-gray8: color(display-p3 0.702 0.702 0.702); + --t-color-gray9: color(display-p3 0.6 0.6 0.6); + --t-color-gray10: color(display-p3 0.514 0.514 0.514); + --t-color-gray11: color(display-p3 0.4 0.4 0.4); + --t-color-gray12: color(display-p3 0.2 0.2 0.2); + --t-color-mauve1: color(display-p3 0.991 0.988 0.992); + --t-color-mauve2: color(display-p3 0.98 0.976 0.984); + --t-color-mauve3: color(display-p3 0.946 0.938 0.952); + --t-color-mauve4: color(display-p3 0.915 0.906 0.925); + --t-color-mauve5: color(display-p3 0.886 0.876 0.901); + --t-color-mauve6: color(display-p3 0.856 0.846 0.875); + --t-color-mauve7: color(display-p3 0.814 0.804 0.84); + --t-color-mauve8: color(display-p3 0.735 0.728 0.777); + --t-color-mauve9: color(display-p3 0.555 0.549 0.596); + --t-color-mauve10: color(display-p3 0.514 0.508 0.552); + --t-color-mauve11: color(display-p3 0.395 0.388 0.424); + --t-color-mauve12: color(display-p3 0.128 0.122 0.147); + --t-color-slate1: color(display-p3 0.988 0.988 0.992); + --t-color-slate2: color(display-p3 0.976 0.976 0.984); + --t-color-slate3: color(display-p3 0.94 0.941 0.953); + --t-color-slate4: color(display-p3 0.908 0.909 0.925); + --t-color-slate5: color(display-p3 0.88 0.881 0.901); + --t-color-slate6: color(display-p3 0.85 0.852 0.876); + --t-color-slate7: color(display-p3 0.805 0.808 0.838); + --t-color-slate8: color(display-p3 0.727 0.733 0.773); + --t-color-slate9: color(display-p3 0.547 0.553 0.592); + --t-color-slate10: color(display-p3 0.503 0.512 0.549); + --t-color-slate11: color(display-p3 0.379 0.392 0.421); + --t-color-slate12: color(display-p3 0.113 0.125 0.14); + --t-color-sage1: color(display-p3 0.986 0.992 0.988); + --t-color-sage2: color(display-p3 0.97 0.977 0.974); + --t-color-sage3: color(display-p3 0.935 0.944 0.94); + --t-color-sage4: color(display-p3 0.904 0.913 0.909); + --t-color-sage5: color(display-p3 0.875 0.885 0.88); + --t-color-sage6: color(display-p3 0.844 0.854 0.849); + --t-color-sage7: color(display-p3 0.8 0.811 0.806); + --t-color-sage8: color(display-p3 0.725 0.738 0.732); + --t-color-sage9: color(display-p3 0.531 0.556 0.546); + --t-color-sage10: color(display-p3 0.492 0.515 0.506); + --t-color-sage11: color(display-p3 0.377 0.395 0.389); + --t-color-sage12: color(display-p3 0.107 0.129 0.118); + --t-color-olive1: color(display-p3 0.989 0.992 0.989); + --t-color-olive2: color(display-p3 0.974 0.98 0.973); + --t-color-olive3: color(display-p3 0.939 0.945 0.937); + --t-color-olive4: color(display-p3 0.907 0.914 0.905); + --t-color-olive5: color(display-p3 0.878 0.885 0.875); + --t-color-olive6: color(display-p3 0.846 0.855 0.843); + --t-color-olive7: color(display-p3 0.803 0.812 0.8); + --t-color-olive8: color(display-p3 0.727 0.738 0.723); + --t-color-olive9: color(display-p3 0.541 0.556 0.532); + --t-color-olive10: color(display-p3 0.5 0.515 0.491); + --t-color-olive11: color(display-p3 0.38 0.395 0.374); + --t-color-olive12: color(display-p3 0.117 0.129 0.111); + --t-color-sand1: color(display-p3 0.992 0.992 0.989); + --t-color-sand2: color(display-p3 0.977 0.977 0.973); + --t-color-sand3: color(display-p3 0.943 0.942 0.936); + --t-color-sand4: color(display-p3 0.913 0.912 0.903); + --t-color-sand5: color(display-p3 0.885 0.883 0.873); + --t-color-sand6: color(display-p3 0.854 0.852 0.839); + --t-color-sand7: color(display-p3 0.813 0.81 0.794); + --t-color-sand8: color(display-p3 0.738 0.734 0.713); + --t-color-sand9: color(display-p3 0.553 0.553 0.528); + --t-color-sand10: color(display-p3 0.511 0.511 0.488); + --t-color-sand11: color(display-p3 0.388 0.388 0.37); + --t-color-sand12: color(display-p3 0.129 0.126 0.111); + --t-color-tomato1: color(display-p3 0.998 0.989 0.988); + --t-color-tomato2: color(display-p3 0.994 0.974 0.969); + --t-color-tomato3: color(display-p3 0.985 0.924 0.909); + --t-color-tomato4: color(display-p3 0.996 0.868 0.835); + --t-color-tomato5: color(display-p3 0.98 0.812 0.77); + --t-color-tomato6: color(display-p3 0.953 0.75 0.698); + --t-color-tomato7: color(display-p3 0.917 0.673 0.611); + --t-color-tomato8: color(display-p3 0.875 0.575 0.502); + --t-color-tomato9: color(display-p3 0.831 0.345 0.231); + --t-color-tomato10: color(display-p3 0.802 0.313 0.2); + --t-color-tomato11: color(display-p3 0.755 0.259 0.152); + --t-color-tomato12: color(display-p3 0.335 0.165 0.132); + --t-color-ruby1: color(display-p3 0.998 0.989 0.992); + --t-color-ruby2: color(display-p3 0.995 0.971 0.974); + --t-color-ruby3: color(display-p3 0.983 0.92 0.928); + --t-color-ruby4: color(display-p3 0.987 0.869 0.885); + --t-color-ruby5: color(display-p3 0.968 0.817 0.839); + --t-color-ruby6: color(display-p3 0.937 0.758 0.786); + --t-color-ruby7: color(display-p3 0.897 0.685 0.721); + --t-color-ruby8: color(display-p3 0.851 0.588 0.639); + --t-color-ruby9: color(display-p3 0.83 0.323 0.408); + --t-color-ruby10: color(display-p3 0.795 0.286 0.375); + --t-color-ruby11: color(display-p3 0.728 0.211 0.311); + --t-color-ruby12: color(display-p3 0.36 0.115 0.171); + --t-color-crimson1: color(display-p3 0.998 0.989 0.992); + --t-color-crimson2: color(display-p3 0.991 0.969 0.976); + --t-color-crimson3: color(display-p3 0.987 0.917 0.941); + --t-color-crimson4: color(display-p3 0.975 0.866 0.904); + --t-color-crimson5: color(display-p3 0.953 0.813 0.864); + --t-color-crimson6: color(display-p3 0.921 0.755 0.817); + --t-color-crimson7: color(display-p3 0.88 0.683 0.761); + --t-color-crimson8: color(display-p3 0.834 0.592 0.694); + --t-color-crimson9: color(display-p3 0.843 0.298 0.507); + --t-color-crimson10: color(display-p3 0.807 0.266 0.468); + --t-color-crimson11: color(display-p3 0.731 0.195 0.388); + --t-color-crimson12: color(display-p3 0.352 0.111 0.221); + --t-color-plum1: color(display-p3 0.995 0.988 0.999); + --t-color-plum2: color(display-p3 0.988 0.971 0.99); + --t-color-plum3: color(display-p3 0.973 0.923 0.98); + --t-color-plum4: color(display-p3 0.953 0.875 0.966); + --t-color-plum5: color(display-p3 0.926 0.825 0.945); + --t-color-plum6: color(display-p3 0.89 0.765 0.916); + --t-color-plum7: color(display-p3 0.84 0.686 0.877); + --t-color-plum8: color(display-p3 0.775 0.58 0.832); + --t-color-plum9: color(display-p3 0.624 0.313 0.708); + --t-color-plum10: color(display-p3 0.587 0.29 0.667); + --t-color-plum11: color(display-p3 0.543 0.263 0.619); + --t-color-plum12: color(display-p3 0.299 0.114 0.352); + --t-color-violet1: color(display-p3 0.991 0.988 0.995); + --t-color-violet2: color(display-p3 0.978 0.974 0.998); + --t-color-violet3: color(display-p3 0.953 0.943 0.993); + --t-color-violet4: color(display-p3 0.916 0.897 1); + --t-color-violet5: color(display-p3 0.876 0.851 1); + --t-color-violet6: color(display-p3 0.825 0.793 0.981); + --t-color-violet7: color(display-p3 0.752 0.712 0.943); + --t-color-violet8: color(display-p3 0.654 0.602 0.902); + --t-color-violet9: color(display-p3 0.417 0.341 0.784); + --t-color-violet10: color(display-p3 0.381 0.306 0.741); + --t-color-violet11: color(display-p3 0.383 0.317 0.702); + --t-color-violet12: color(display-p3 0.179 0.15 0.359); + --t-color-iris1: color(display-p3 0.992 0.992 0.999); + --t-color-iris2: color(display-p3 0.972 0.973 0.998); + --t-color-iris3: color(display-p3 0.943 0.945 0.992); + --t-color-iris4: color(display-p3 0.902 0.906 1); + --t-color-iris5: color(display-p3 0.857 0.861 1); + --t-color-iris6: color(display-p3 0.799 0.805 0.987); + --t-color-iris7: color(display-p3 0.721 0.727 0.955); + --t-color-iris8: color(display-p3 0.61 0.619 0.918); + --t-color-iris9: color(display-p3 0.357 0.357 0.81); + --t-color-iris10: color(display-p3 0.318 0.318 0.774); + --t-color-iris11: color(display-p3 0.337 0.326 0.748); + --t-color-iris12: color(display-p3 0.154 0.161 0.371); + --t-color-cyan1: color(display-p3 0.982 0.992 0.996); + --t-color-cyan2: color(display-p3 0.955 0.981 0.984); + --t-color-cyan3: color(display-p3 0.888 0.965 0.975); + --t-color-cyan4: color(display-p3 0.821 0.941 0.959); + --t-color-cyan5: color(display-p3 0.751 0.907 0.935); + --t-color-cyan6: color(display-p3 0.671 0.862 0.9); + --t-color-cyan7: color(display-p3 0.564 0.8 0.854); + --t-color-cyan8: color(display-p3 0.388 0.715 0.798); + --t-color-cyan9: color(display-p3 0.282 0.627 0.765); + --t-color-cyan10: color(display-p3 0.264 0.583 0.71); + --t-color-cyan11: color(display-p3 0.08 0.48 0.63); + --t-color-cyan12: color(display-p3 0.108 0.232 0.277); + --t-color-jade1: color(display-p3 0.986 0.996 0.992); + --t-color-jade2: color(display-p3 0.962 0.983 0.969); + --t-color-jade3: color(display-p3 0.912 0.965 0.932); + --t-color-jade4: color(display-p3 0.858 0.941 0.893); + --t-color-jade5: color(display-p3 0.795 0.909 0.847); + --t-color-jade6: color(display-p3 0.715 0.864 0.791); + --t-color-jade7: color(display-p3 0.603 0.802 0.718); + --t-color-jade8: color(display-p3 0.44 0.72 0.629); + --t-color-jade9: color(display-p3 0.319 0.63 0.521); + --t-color-jade10: color(display-p3 0.299 0.592 0.488); + --t-color-jade11: color(display-p3 0.15 0.5 0.37); + --t-color-jade12: color(display-p3 0.142 0.229 0.194); + --t-color-grass1: color(display-p3 0.986 0.996 0.985); + --t-color-grass2: color(display-p3 0.966 0.983 0.964); + --t-color-grass3: color(display-p3 0.923 0.965 0.917); + --t-color-grass4: color(display-p3 0.872 0.94 0.865); + --t-color-grass5: color(display-p3 0.811 0.908 0.802); + --t-color-grass6: color(display-p3 0.733 0.864 0.724); + --t-color-grass7: color(display-p3 0.628 0.803 0.622); + --t-color-grass8: color(display-p3 0.477 0.72 0.482); + --t-color-grass9: color(display-p3 0.38 0.647 0.378); + --t-color-grass10: color(display-p3 0.344 0.598 0.342); + --t-color-grass11: color(display-p3 0.263 0.488 0.261); + --t-color-grass12: color(display-p3 0.151 0.233 0.153); + --t-color-mint1: color(display-p3 0.98 0.995 0.992); + --t-color-mint2: color(display-p3 0.957 0.985 0.977); + --t-color-mint3: color(display-p3 0.888 0.972 0.95); + --t-color-mint4: color(display-p3 0.819 0.951 0.916); + --t-color-mint5: color(display-p3 0.747 0.918 0.873); + --t-color-mint6: color(display-p3 0.668 0.87 0.818); + --t-color-mint7: color(display-p3 0.567 0.805 0.744); + --t-color-mint8: color(display-p3 0.42 0.724 0.649); + --t-color-mint9: color(display-p3 0.62 0.908 0.834); + --t-color-mint10: color(display-p3 0.585 0.871 0.797); + --t-color-mint11: color(display-p3 0.203 0.463 0.397); + --t-color-mint12: color(display-p3 0.136 0.259 0.236); + --t-color-lime1: color(display-p3 0.989 0.992 0.981); + --t-color-lime2: color(display-p3 0.975 0.98 0.954); + --t-color-lime3: color(display-p3 0.939 0.965 0.851); + --t-color-lime4: color(display-p3 0.896 0.94 0.76); + --t-color-lime5: color(display-p3 0.843 0.903 0.678); + --t-color-lime6: color(display-p3 0.778 0.852 0.599); + --t-color-lime7: color(display-p3 0.694 0.784 0.508); + --t-color-lime8: color(display-p3 0.585 0.707 0.378); + --t-color-lime9: color(display-p3 0.78 0.928 0.466); + --t-color-lime10: color(display-p3 0.734 0.896 0.397); + --t-color-lime11: color(display-p3 0.386 0.482 0.227); + --t-color-lime12: color(display-p3 0.222 0.25 0.128); + --t-color-bronze1: color(display-p3 0.991 0.988 0.988); + --t-color-bronze2: color(display-p3 0.989 0.97 0.961); + --t-color-bronze3: color(display-p3 0.958 0.932 0.919); + --t-color-bronze4: color(display-p3 0.929 0.894 0.877); + --t-color-bronze5: color(display-p3 0.898 0.853 0.832); + --t-color-bronze6: color(display-p3 0.861 0.805 0.778); + --t-color-bronze7: color(display-p3 0.812 0.739 0.706); + --t-color-bronze8: color(display-p3 0.741 0.647 0.606); + --t-color-bronze9: color(display-p3 0.611 0.507 0.455); + --t-color-bronze10: color(display-p3 0.563 0.461 0.414); + --t-color-bronze11: color(display-p3 0.471 0.373 0.336); + --t-color-bronze12: color(display-p3 0.251 0.191 0.172); + --t-color-gold1: color(display-p3 0.992 0.992 0.989); + --t-color-gold2: color(display-p3 0.98 0.976 0.953); + --t-color-gold3: color(display-p3 0.947 0.94 0.909); + --t-color-gold4: color(display-p3 0.914 0.904 0.865); + --t-color-gold5: color(display-p3 0.88 0.865 0.816); + --t-color-gold6: color(display-p3 0.84 0.818 0.756); + --t-color-gold7: color(display-p3 0.788 0.753 0.677); + --t-color-gold8: color(display-p3 0.715 0.66 0.565); + --t-color-gold9: color(display-p3 0.579 0.517 0.41); + --t-color-gold10: color(display-p3 0.538 0.479 0.38); + --t-color-gold11: color(display-p3 0.433 0.386 0.305); + --t-color-gold12: color(display-p3 0.227 0.209 0.173); + --t-color-brown1: color(display-p3 0.995 0.992 0.989); + --t-color-brown2: color(display-p3 0.987 0.976 0.964); + --t-color-brown3: color(display-p3 0.959 0.936 0.909); + --t-color-brown4: color(display-p3 0.934 0.897 0.855); + --t-color-brown5: color(display-p3 0.909 0.856 0.798); + --t-color-brown6: color(display-p3 0.88 0.808 0.73); + --t-color-brown7: color(display-p3 0.841 0.742 0.639); + --t-color-brown8: color(display-p3 0.782 0.647 0.514); + --t-color-brown9: color(display-p3 0.651 0.505 0.368); + --t-color-brown10: color(display-p3 0.601 0.465 0.344); + --t-color-brown11: color(display-p3 0.485 0.374 0.288); + --t-color-brown12: color(display-p3 0.236 0.202 0.183); + --t-color-amber1: color(display-p3 0.995 0.992 0.985); + --t-color-amber2: color(display-p3 0.994 0.986 0.921); + --t-color-amber3: color(display-p3 0.994 0.969 0.782); + --t-color-amber4: color(display-p3 0.989 0.937 0.65); + --t-color-amber5: color(display-p3 0.97 0.902 0.527); + --t-color-amber6: color(display-p3 0.936 0.844 0.506); + --t-color-amber7: color(display-p3 0.89 0.762 0.443); + --t-color-amber8: color(display-p3 0.85 0.65 0.3); + --t-color-amber9: color(display-p3 1 0.77 0.26); + --t-color-amber10: color(display-p3 0.959 0.741 0.274); + --t-color-amber11: color(display-p3 0.64 0.4 0); + --t-color-amber12: color(display-p3 0.294 0.208 0.145); + --t-color-transparent-green1: #00c04004; + --t-color-transparent-green2: #00a32f0b; + --t-color-transparent-green3: #00a43319; + --t-color-transparent-green4: #00a83829; + --t-color-transparent-green5: #019c393b; + --t-color-transparent-green6: #00963c52; + --t-color-transparent-green7: #00914071; + --t-color-transparent-green8: #00924ba4; + --t-color-transparent-green9: #008f4acf; + --t-color-transparent-green10: #008647d4; + --t-color-transparent-green11: #00713fde; + --t-color-transparent-green12: #002616e6; + --t-color-transparent-turquoise1: #00cc9905; + --t-color-transparent-turquoise2: #00aa800c; + --t-color-transparent-turquoise3: #00c69d1f; + --t-color-transparent-turquoise4: #00c39633; + --t-color-transparent-turquoise5: #00b49047; + --t-color-transparent-turquoise6: #00a6855e; + --t-color-transparent-turquoise7: #0099807c; + --t-color-transparent-turquoise8: #009783ac; + --t-color-transparent-turquoise9: #009e8ced; + --t-color-transparent-turquoise10: #009684f2; + --t-color-transparent-turquoise11: #008573; + --t-color-transparent-turquoise12: #00332df2; + --t-color-transparent-sky1: #00d5ff06; + --t-color-transparent-sky2: #00a4db0e; + --t-color-transparent-sky3: #00b3ee1e; + --t-color-transparent-sky4: #00ace42e; + --t-color-transparent-sky5: #00a1d841; + --t-color-transparent-sky6: #0092ca56; + --t-color-transparent-sky7: #0089c172; + --t-color-transparent-sky8: #0085bf9f; + --t-color-transparent-sky9: #00c7fe83; + --t-color-transparent-sky10: #00bcf38b; + --t-color-transparent-sky11: #00749e; + --t-color-transparent-sky12: #002540e2; + --t-color-transparent-blue1: #00008002; + --t-color-transparent-blue2: #0040ff08; + --t-color-transparent-blue3: #0047f112; + --t-color-transparent-blue4: #0044ff1e; + --t-color-transparent-blue5: #0044ff2d; + --t-color-transparent-blue6: #003eff3e; + --t-color-transparent-blue7: #0037ed54; + --t-color-transparent-blue8: #0034dc72; + --t-color-transparent-blue9: #0031d2c1; + --t-color-transparent-blue10: #002ec9cc; + --t-color-transparent-blue11: #002bb7c5; + --t-color-transparent-blue12: #001046e0; + --t-color-transparent-purple1: #aa00aa03; + --t-color-transparent-purple2: #8000e008; + --t-color-transparent-purple3: #8e00f112; + --t-color-transparent-purple4: #8d00e51d; + --t-color-transparent-purple5: #8000db2a; + --t-color-transparent-purple6: #7a01d03b; + --t-color-transparent-purple7: #6d00c350; + --t-color-transparent-purple8: #6600c06c; + --t-color-transparent-purple9: #5c00adb1; + --t-color-transparent-purple10: #53009eb8; + --t-color-transparent-purple11: #52009aba; + --t-color-transparent-purple12: #250049df; + --t-color-transparent-pink1: #ff00aa03; + --t-color-transparent-pink2: #e0008008; + --t-color-transparent-pink3: #f4008c16; + --t-color-transparent-pink4: #e2008b23; + --t-color-transparent-pink5: #d1008331; + --t-color-transparent-pink6: #c0007840; + --t-color-transparent-pink7: #b6006f53; + --t-color-transparent-pink8: #af006f6c; + --t-color-transparent-pink9: #c8007fbf; + --t-color-transparent-pink10: #c2007ac7; + --t-color-transparent-pink11: #b60074d6; + --t-color-transparent-pink12: #59003bed; + --t-color-transparent-red1: #ff000003; + --t-color-transparent-red2: #ff000008; + --t-color-transparent-red3: #f3000d14; + --t-color-transparent-red4: #ff000824; + --t-color-transparent-red5: #ff000632; + --t-color-transparent-red6: #f8000442; + --t-color-transparent-red7: #df000356; + --t-color-transparent-red8: #d2000571; + --t-color-transparent-red9: #db0007b7; + --t-color-transparent-red10: #d10005c1; + --t-color-transparent-red11: #c40006d3; + --t-color-transparent-red12: #55000de8; + --t-color-transparent-orange1: #c0400004; + --t-color-transparent-orange2: #ff8e0012; + --t-color-transparent-orange3: #ff9c0029; + --t-color-transparent-orange4: #ff91014a; + --t-color-transparent-orange5: #ff8b0065; + --t-color-transparent-orange6: #ff81007d; + --t-color-transparent-orange7: #ed6c008c; + --t-color-transparent-orange8: #e35f00aa; + --t-color-transparent-orange9: #f65e00ea; + --t-color-transparent-orange10: #ef5f00; + --t-color-transparent-orange11: #cc4e00; + --t-color-transparent-orange12: #431200e2; + --t-color-transparent-yellow1: #aaaa0006; + --t-color-transparent-yellow2: #f4dd0016; + --t-color-transparent-yellow3: #ffee0047; + --t-color-transparent-yellow4: #ffe3016b; + --t-color-transparent-yellow5: #ffd5008f; + --t-color-transparent-yellow6: #ebbc0097; + --t-color-transparent-yellow7: #d2a10098; + --t-color-transparent-yellow8: #c99700c6; + --t-color-transparent-yellow9: #ffe100d6; + --t-color-transparent-yellow10: #ffdc00; + --t-color-transparent-yellow11: #9e6c00; + --t-color-transparent-yellow12: #2e2000e0; + --t-color-transparent-gray1: color(display-p3 0 0 0 / 0.02); + --t-color-transparent-gray2: color(display-p3 0 0 0 / 0.039); + --t-color-transparent-gray3: color(display-p3 0 0 0 / 0.047); + --t-color-transparent-gray4: color(display-p3 0 0 0 / 0.071); + --t-color-transparent-gray5: color(display-p3 0 0 0 / 0.078); + --t-color-transparent-gray6: color(display-p3 0 0 0 / 0.114); + --t-color-transparent-gray7: color(display-p3 0 0 0 / 0.161); + --t-color-transparent-gray8: color(display-p3 0 0 0 / 0.22); + --t-color-transparent-gray9: color(display-p3 0 0 0 / 0.361); + --t-color-transparent-gray10: color(display-p3 0 0 0 / 0.478); + --t-color-transparent-gray11: color(display-p3 0 0 0 / 0.722); + --t-color-transparent-gray12: color(display-p3 0 0 0 / 0.91); + --t-color-transparent-mauve1: #55005503; + --t-color-transparent-mauve2: #2b005506; + --t-color-transparent-mauve3: #30004010; + --t-color-transparent-mauve4: #20003618; + --t-color-transparent-mauve5: #20003820; + --t-color-transparent-mauve6: #14003527; + --t-color-transparent-mauve7: #10003332; + --t-color-transparent-mauve8: #08003145; + --t-color-transparent-mauve9: #05001d73; + --t-color-transparent-mauve10: #0500197d; + --t-color-transparent-mauve11: #0400119c; + --t-color-transparent-mauve12: #020008e0; + --t-color-transparent-slate1: #00005503; + --t-color-transparent-slate2: #00005506; + --t-color-transparent-slate3: #0000330f; + --t-color-transparent-slate4: #00002d17; + --t-color-transparent-slate5: #0009321f; + --t-color-transparent-slate6: #00002f26; + --t-color-transparent-slate7: #00062e32; + --t-color-transparent-slate8: #00083046; + --t-color-transparent-slate9: #00051d74; + --t-color-transparent-slate10: #00071b7f; + --t-color-transparent-slate11: #0007149f; + --t-color-transparent-slate12: #000509e3; + --t-color-transparent-sage1: #00804004; + --t-color-transparent-sage2: #00402008; + --t-color-transparent-sage3: #002d1e11; + --t-color-transparent-sage4: #001f1519; + --t-color-transparent-sage5: #00180820; + --t-color-transparent-sage6: #00140d28; + --t-color-transparent-sage7: #00140a34; + --t-color-transparent-sage8: #000f0847; + --t-color-transparent-sage9: #00110b79; + --t-color-transparent-sage10: #00100a83; + --t-color-transparent-sage11: #000a07a0; + --t-color-transparent-sage12: #000805e5; + --t-color-transparent-olive1: #00550003; + --t-color-transparent-olive2: #00490007; + --t-color-transparent-olive3: #00200010; + --t-color-transparent-olive4: #00160018; + --t-color-transparent-olive5: #00180020; + --t-color-transparent-olive6: #00140028; + --t-color-transparent-olive7: #000f0033; + --t-color-transparent-olive8: #040f0047; + --t-color-transparent-olive9: #050f0078; + --t-color-transparent-olive10: #040e0082; + --t-color-transparent-olive11: #020a00a0; + --t-color-transparent-olive12: #010600e3; + --t-color-transparent-sand1: #55550003; + --t-color-transparent-sand2: #25250007; + --t-color-transparent-sand3: #20100010; + --t-color-transparent-sand4: #1f150019; + --t-color-transparent-sand5: #1f180021; + --t-color-transparent-sand6: #19130029; + --t-color-transparent-sand7: #19140035; + --t-color-transparent-sand8: #1915014a; + --t-color-transparent-sand9: #0f0f0079; + --t-color-transparent-sand10: #0c0c0083; + --t-color-transparent-sand11: #080800a1; + --t-color-transparent-sand12: #060500e3; + --t-color-transparent-tomato1: #ff000003; + --t-color-transparent-tomato2: #ff200008; + --t-color-transparent-tomato3: #f52b0018; + --t-color-transparent-tomato4: #ff35002c; + --t-color-transparent-tomato5: #ff2e003d; + --t-color-transparent-tomato6: #f92d0050; + --t-color-transparent-tomato7: #e7280067; + --t-color-transparent-tomato8: #db250084; + --t-color-transparent-tomato9: #df2600d1; + --t-color-transparent-tomato10: #d72400da; + --t-color-transparent-tomato11: #cd2200ea; + --t-color-transparent-tomato12: #460900e0; + --t-color-transparent-ruby1: #ff005503; + --t-color-transparent-ruby2: #ff002008; + --t-color-transparent-ruby3: #f3002515; + --t-color-transparent-ruby4: #ff002523; + --t-color-transparent-ruby5: #ff002a31; + --t-color-transparent-ruby6: #e4002440; + --t-color-transparent-ruby7: #ce002553; + --t-color-transparent-ruby8: #c300286d; + --t-color-transparent-ruby9: #db002cb9; + --t-color-transparent-ruby10: #d2002cc4; + --t-color-transparent-ruby11: #c10030db; + --t-color-transparent-ruby12: #550016e8; + --t-color-transparent-crimson1: #ff005503; + --t-color-transparent-crimson2: #e0004008; + --t-color-transparent-crimson3: #ff005216; + --t-color-transparent-crimson4: #f8005123; + --t-color-transparent-crimson5: #e5004f31; + --t-color-transparent-crimson6: #d0004b41; + --t-color-transparent-crimson7: #bf004753; + --t-color-transparent-crimson8: #b6004a6c; + --t-color-transparent-crimson9: #e2005bc2; + --t-color-transparent-crimson10: #d70056cb; + --t-color-transparent-crimson11: #c4004fe2; + --t-color-transparent-crimson12: #530026e9; + --t-color-transparent-plum1: #aa00ff03; + --t-color-transparent-plum2: #c000c008; + --t-color-transparent-plum3: #cc00cc14; + --t-color-transparent-plum4: #c200c921; + --t-color-transparent-plum5: #b700bd2e; + --t-color-transparent-plum6: #a400b03d; + --t-color-transparent-plum7: #9900a852; + --t-color-transparent-plum8: #9000a56e; + --t-color-transparent-plum9: #89009eb5; + --t-color-transparent-plum10: #7f0092bb; + --t-color-transparent-plum11: #730086c1; + --t-color-transparent-plum12: #40004be6; + --t-color-transparent-violet1: #5500aa03; + --t-color-transparent-violet2: #4900ff07; + --t-color-transparent-violet3: #4400ee0f; + --t-color-transparent-violet4: #4300ff1b; + --t-color-transparent-violet5: #3600ff26; + --t-color-transparent-violet6: #3100fb35; + --t-color-transparent-violet7: #2d01dd4a; + --t-color-transparent-violet8: #2b00d066; + --t-color-transparent-violet9: #2400b7a9; + --t-color-transparent-violet10: #2300abb2; + --t-color-transparent-violet11: #1f0099af; + --t-color-transparent-violet12: #0b0043d9; + --t-color-transparent-iris1: #0000ff02; + --t-color-transparent-iris2: #0000ff07; + --t-color-transparent-iris3: #0011ee0f; + --t-color-transparent-iris4: #000bff19; + --t-color-transparent-iris5: #000eff25; + --t-color-transparent-iris6: #000aff34; + --t-color-transparent-iris7: #0008e647; + --t-color-transparent-iris8: #0008d964; + --t-color-transparent-iris9: #0000c0a4; + --t-color-transparent-iris10: #0000b6ae; + --t-color-transparent-iris11: #0600abac; + --t-color-transparent-iris12: #000246d8; + --t-color-transparent-cyan1: #0099cc05; + --t-color-transparent-cyan2: #009db10d; + --t-color-transparent-cyan3: #00c2d121; + --t-color-transparent-cyan4: #00bcd435; + --t-color-transparent-cyan5: #01b4cc4a; + --t-color-transparent-cyan6: #00a7c162; + --t-color-transparent-cyan7: #009fbb82; + --t-color-transparent-cyan8: #00a3c0c2; + --t-color-transparent-cyan9: #00a2c7; + --t-color-transparent-cyan10: #0094b7f8; + --t-color-transparent-cyan11: #007491ef; + --t-color-transparent-cyan12: #00323ef2; + --t-color-transparent-jade1: #00c08004; + --t-color-transparent-jade2: #00a3460b; + --t-color-transparent-jade3: #00ae4819; + --t-color-transparent-jade4: #00a85129; + --t-color-transparent-jade5: #00a2553c; + --t-color-transparent-jade6: #009a5753; + --t-color-transparent-jade7: #00945f74; + --t-color-transparent-jade8: #00976ea9; + --t-color-transparent-jade9: #00916bd6; + --t-color-transparent-jade10: #008764d9; + --t-color-transparent-jade11: #007152df; + --t-color-transparent-jade12: #002217e2; + --t-color-transparent-grass1: #00c00004; + --t-color-transparent-grass2: #0099000a; + --t-color-transparent-grass3: #00970016; + --t-color-transparent-grass4: #009f0725; + --t-color-transparent-grass5: #00930536; + --t-color-transparent-grass6: #008f0a4d; + --t-color-transparent-grass7: #018b0f6b; + --t-color-transparent-grass8: #008d199a; + --t-color-transparent-grass9: #008619b9; + --t-color-transparent-grass10: #007b17c1; + --t-color-transparent-grass11: #006514d5; + --t-color-transparent-grass12: #002006df; + --t-color-transparent-mint1: #00d5aa06; + --t-color-transparent-mint2: #00b18a0d; + --t-color-transparent-mint3: #00d29e22; + --t-color-transparent-mint4: #00cc9937; + --t-color-transparent-mint5: #00c0914c; + --t-color-transparent-mint6: #00b08663; + --t-color-transparent-mint7: #00a17d81; + --t-color-transparent-mint8: #009e7fb3; + --t-color-transparent-mint9: #00d3a579; + --t-color-transparent-mint10: #00c39982; + --t-color-transparent-mint11: #007763fd; + --t-color-transparent-mint12: #00312ae9; + --t-color-transparent-lime1: #66990005; + --t-color-transparent-lime2: #6b95000c; + --t-color-transparent-lime3: #96c80029; + --t-color-transparent-lime4: #8fc60042; + --t-color-transparent-lime5: #81bb0059; + --t-color-transparent-lime6: #72aa006e; + --t-color-transparent-lime7: #61990087; + --t-color-transparent-lime8: #559200ab; + --t-color-transparent-lime9: #93e4009c; + --t-color-transparent-lime10: #8fdc00b3; + --t-color-transparent-lime11: #375f00d0; + --t-color-transparent-lime12: #1e2900e3; + --t-color-transparent-bronze1: #55000003; + --t-color-transparent-bronze2: #cc33000a; + --t-color-transparent-bronze3: #92250015; + --t-color-transparent-bronze4: #80280020; + --t-color-transparent-bronze5: #7423002c; + --t-color-transparent-bronze6: #7324003a; + --t-color-transparent-bronze7: #6c1f004c; + --t-color-transparent-bronze8: #671c0066; + --t-color-transparent-bronze9: #551a008d; + --t-color-transparent-bronze10: #4c150097; + --t-color-transparent-bronze11: #3d0f00ab; + --t-color-transparent-bronze12: #1d0600d4; + --t-color-transparent-gold1: #55550003; + --t-color-transparent-gold2: #9d8a000d; + --t-color-transparent-gold3: #75600018; + --t-color-transparent-gold4: #6b4e0024; + --t-color-transparent-gold5: #60460030; + --t-color-transparent-gold6: #64440040; + --t-color-transparent-gold7: #63420055; + --t-color-transparent-gold8: #633d0072; + --t-color-transparent-gold9: #5332009a; + --t-color-transparent-gold10: #492d00a1; + --t-color-transparent-gold11: #362100b4; + --t-color-transparent-gold12: #130c00d4; + --t-color-transparent-brown1: #aa550003; + --t-color-transparent-brown2: #aa550009; + --t-color-transparent-brown3: #a04b0018; + --t-color-transparent-brown4: #9b4a0026; + --t-color-transparent-brown5: #9f4d0035; + --t-color-transparent-brown6: #a04e0048; + --t-color-transparent-brown7: #a34e0060; + --t-color-transparent-brown8: #9f4a0081; + --t-color-transparent-brown9: #823c00a7; + --t-color-transparent-brown10: #723300ac; + --t-color-transparent-brown11: #522100b9; + --t-color-transparent-brown12: #140600d1; + --t-color-transparent-amber1: #c0800004; + --t-color-transparent-amber2: #f4d10016; + --t-color-transparent-amber3: #ffde003d; + --t-color-transparent-amber4: #ffd40063; + --t-color-transparent-amber5: #f8cf0088; + --t-color-transparent-amber6: #eab5008c; + --t-color-transparent-amber7: #dc9b009d; + --t-color-transparent-amber8: #da8a00c9; + --t-color-transparent-amber9: #ffb300c2; + --t-color-transparent-amber10: #ffb300e7; + --t-color-transparent-amber11: #ab6400; + --t-color-transparent-amber12: #341500dd; + --t-font-color-on-accent: color(display-p3 1 1 1); --t-corner-shape: round; } diff --git a/packages/twenty-ui/src/theme/generator/emit.ts b/packages/twenty-ui/src/theme/generator/emit.ts index 34d00f41..10b6cc1a 100644 --- a/packages/twenty-ui/src/theme/generator/emit.ts +++ b/packages/twenty-ui/src/theme/generator/emit.ts @@ -33,6 +33,75 @@ import { const here = path.dirname(fileURLToPath(import.meta.url)); const CONSTANTS_DIR = path.resolve(here, '../constants'); const THEME_CONSTANTS_DIR = path.resolve(here, '../../theme-constants'); +const PALETTE_DIR = path.resolve(here, './palette'); + +/** + * Which palette fills the --t-* layer. + * + * 'register' — the original TU2 law: every semantic slot resolves to a + * CommonPlace register token, so the fork adopts the console's paint and is + * deliberately invisible. + * 'twenty' — Twenty's own values, vendored from upstream at the pinned SHA. + * The console's --ij-* register then aliases *these* (see + * apps/console/src/styles/twenty-register.css), inverting the direction so + * Twenty's design language drives the whole app. + * + * The law was killed deliberately, not drifted away from. 'register' is kept + * because the inversion has to stay reversible: one env var returns the fork to + * resolving against the console register. + */ +const PALETTE: 'twenty' | 'register' = + process.env.TWENTY_UI_PALETTE === 'register' ? 'register' : 'twenty'; + +/** + * Values the fork refuses to take from upstream even under the Twenty palette. + * `background-noisy` is Twenty's paper texture, inlined as a base64 data URI. + * TU1 stripped that texture as brand material, and the console's ambient grain + * is the WebGL MaterialLayer, which a CSS noise layer would paint over. + */ +const PALETTE_REFUSED = new Set(['--t-background-noisy']); + +/** + * Parse a vendored upstream theme file into `--t-name` -> value. + * + * Values span lines (gradients, shadows) and can contain semicolons inside + * `url(data:image/jpeg;base64,...)`, so a declaration ends at the first + * semicolon that is not nested in parentheses. Splitting naively on `;` + * truncates that declaration and orphans the rest of the file, which surfaces + * downstream as a bare "Missing closing }" from the CSS parser. + */ +function loadTwentyPalette(mode: Mode): Map { + const css = fs.readFileSync(path.join(PALETTE_DIR, `twenty-${mode}.css`), 'utf-8'); + const values = new Map(); + const nameRe = /(--t-[a-z0-9-_]+):/g; + let match: RegExpExecArray | null; + + while ((match = nameRe.exec(css)) !== null) { + let depth = 0; + let end = -1; + for (let i = match.index + match[0].length; i < css.length; i += 1) { + const ch = css[i]; + if (ch === '(') depth += 1; + else if (ch === ')') depth -= 1; + else if (ch === ';' && depth === 0) { + end = i; + break; + } else if (ch === '}' && depth === 0) { + end = i; + break; + } + } + if (end === -1) continue; + const name = match[1]; + if (PALETTE_REFUSED.has(name)) continue; + const value = css.slice(match.index + match[0].length, end).trim().replace(/\s+/g, ' '); + // Later declarations win, matching the cascade, except that the @supports + // squircle block must not override the base radii: the console rules round. + if (!values.has(name)) values.set(name, value); + nameRe.lastIndex = end; + } + return values; +} const BANNER = `// GENERATED by src/theme/generator/emit.ts. Do not edit by hand. // Styling truth is CommonPlace tokens; the mapping lives in @@ -78,7 +147,10 @@ function writeConstant(fileName: string, exportName: string, value: unknown) { * `--t-NAME: value` pairs. Throws on any path the accessor names and the model * does not fill. */ -function cssDeclarations(theme: Record): string[] { +function cssDeclarations( + theme: Record, + palette?: Map, +): string[] { const out: string[] = []; const missing: string[] = []; @@ -86,11 +158,17 @@ function cssDeclarations(theme: Record): string[] { if (typeof accessor === 'string') { const match = accessor.match(/^var\((--t-[a-z0-9-_]+)\)$/); if (match === null) return; - if (model === undefined || model === null) { + // In 'twenty' mode the value comes from the vendored upstream palette. + // The walk itself is unchanged, so the oracle still holds: a name the + // accessor reads and neither source fills is a hard failure, not a + // component that silently renders unstyled. + const fromPalette = palette?.get(match[1]); + const value = fromPalette ?? model; + if (value === undefined || value === null) { missing.push(`${trail.join('.')} -> ${match[1]}`); return; } - out.push(` ${match[1]}: ${String(model)};`); + out.push(` ${match[1]}: ${String(value)};`); return; } if (!isPlainObject(accessor)) return; @@ -153,17 +231,24 @@ function writeThemeCss(mode: Mode) { mode === 'dark' ? '.dark,\n[data-register="intui"]' : '.light,\n[data-register="intui"][data-theme="light"]'; - const declarations = cssDeclarations(fullTheme(mode) as Record); + const palette = PALETTE === 'twenty' ? loadTwentyPalette(mode) : undefined; + const declarations = cssDeclarations( + fullTheme(mode) as Record, + palette, + ); const contents = [ CSS_BANNER, '', `${selector} {`, ...declarations, // Fork addition. Upstream hardcoded a literal white in Button.module.scss - // for "ink on a solid accent fill" and called it theme-invariant. The - // register names that slot, so it enters through the seam like everything - // else instead of sitting in a component file. - ` --t-font-color-on-accent: ${reg('ink-bright')};`, + // for "ink on a solid accent fill" and called it theme-invariant. It enters + // through the seam here instead of sitting in a component file. Under the + // 'twenty' palette it must not reference --ij-*, which now aliases --t-*: + // that would be a resolution cycle. + PALETTE === 'twenty' + ? ' --t-font-color-on-accent: color(display-p3 1 1 1);' + : ` --t-font-color-on-accent: ${reg('ink-bright')};`, // The console's corner ruling: round, not squircle. The MaterialLayer SDF // draws circular rounded rects behind each island, and a squircle DOM clip // over a circular shader corner is the doubled-corner halo. Upstream's @@ -172,6 +257,21 @@ function writeThemeCss(mode: Mode) { '}', '', ].join('\n'); + // A truncated value silently produces a file the CSS parser rejects with a + // bare "Missing closing }", three layers from the cause. Catch it here. + for (const declaration of declarations) { + const open = (declaration.match(/\(/g) ?? []).length; + const close = (declaration.match(/\)/g) ?? []).length; + if (open !== close || !declaration.trimEnd().endsWith(';')) { + throw new Error( + `Malformed declaration in theme-${mode}.css: ${declaration.trim()}`, + ); + } + } + if (contents.split('{').length !== contents.split('}').length) { + throw new Error(`Unbalanced braces in theme-${mode}.css`); + } + fs.writeFileSync( path.join(THEME_CONSTANTS_DIR, `theme-${mode}.css`), contents, diff --git a/packages/twenty-ui/src/theme/generator/palette/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq b/packages/twenty-ui/src/theme/generator/palette/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq new file mode 100644 index 00000000..3cacc0b9 --- /dev/null +++ b/packages/twenty-ui/src/theme/generator/palette/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq @@ -0,0 +1 @@ +12 \ No newline at end of file diff --git a/packages/twenty-ui/src/theme/generator/palette/twenty-dark.css b/packages/twenty-ui/src/theme/generator/palette/twenty-dark.css new file mode 100644 index 00000000..695e7337 --- /dev/null +++ b/packages/twenty-ui/src/theme/generator/palette/twenty-dark.css @@ -0,0 +1,1044 @@ +/* Theme CSS variables, mirrored token-for-token from twenty-ui. + Kept in sync by the theme parity test (src/theme-constants/__tests__). */ + +.dark { + --t-icon-size-sm: 14; + --t-icon-size-md: 16; + --t-icon-size-lg: 20; + --t-icon-size-xl: 24; + --t-icon-stroke-sm: 1.6; + --t-icon-stroke-md: 2; + --t-icon-stroke-lg: 2.5; + --t-modal-size-sm-width: 300px; + --t-modal-size-md-width: 400px; + --t-modal-size-lg-width: 53%; + --t-modal-size-xl-width: 1200px; + --t-modal-size-xl-height: 800px; + --t-modal-size-fullscreen-width: 100dvw; + --t-modal-size-fullscreen-height: 100dvh; + --t-text-line-height-lg: 1.5; + --t-text-line-height-md: 1.1; + --t-text-icon-size-medium: 16; + --t-text-icon-size-small: 14; + --t-text-icon-strike-light: 1.6; + --t-text-icon-strike-medium: 2; + --t-text-icon-strike-bold: 2.5; + --t-animation-duration-instant: 0.075; + --t-animation-duration-fast: 0.15; + --t-animation-duration-normal: 0.3; + --t-animation-duration-slow: 1.5; + --t-spacing-multiplicator: 4; + --t-spacing-0: 0px; + --t-spacing-1: 4px; + --t-spacing-2: 8px; + --t-spacing-3: 12px; + --t-spacing-4: 16px; + --t-spacing-5: 20px; + --t-spacing-6: 24px; + --t-spacing-7: 28px; + --t-spacing-8: 32px; + --t-spacing-9: 36px; + --t-spacing-10: 40px; + --t-spacing-11: 44px; + --t-spacing-12: 48px; + --t-spacing-13: 52px; + --t-spacing-14: 56px; + --t-spacing-15: 60px; + --t-spacing-16: 64px; + --t-spacing-17: 68px; + --t-spacing-18: 72px; + --t-spacing-19: 76px; + --t-spacing-20: 80px; + --t-spacing-21: 84px; + --t-spacing-22: 88px; + --t-spacing-23: 92px; + --t-spacing-24: 96px; + --t-spacing-25: 100px; + --t-spacing-26: 104px; + --t-spacing-27: 108px; + --t-spacing-28: 112px; + --t-spacing-29: 116px; + --t-spacing-30: 120px; + --t-spacing-31: 124px; + --t-spacing-32: 128px; + --t-spacing-0_5: 2px; + --t-spacing-1_5: 6px; + --t-between-siblings-gap: 2px; + --t-table-horizontal-cell-margin: 8px; + --t-table-checkbox-column-width: 32px; + --t-table-horizontal-cell-padding: 8px; + --t-side-panel-width: 500px; + --t-clickable-element-background-transition: background 0.1s ease; + --t-last-layer-z-index: 2147483647; + --t-buttons-secondary-text-color: color(display-p3 0.63 0.69 1); + --t-accent-primary: color(display-p3 0.163 0.22 0.439); + --t-accent-secondary: color(display-p3 0.163 0.22 0.439); + --t-accent-tertiary: color(display-p3 0.105 0.141 0.275); + --t-accent-quaternary: color(display-p3 0.081 0.089 0.144); + --t-accent-accent3570: color(display-p3 0.285 0.362 0.674); + --t-accent-accent4060: color(display-p3 0.285 0.362 0.674); + --t-accent-accent1: color(display-p3 0.068 0.074 0.118); + --t-accent-accent2: color(display-p3 0.081 0.089 0.144); + --t-accent-accent3: color(display-p3 0.105 0.141 0.275); + --t-accent-accent4: color(display-p3 0.129 0.18 0.369); + --t-accent-accent5: color(display-p3 0.163 0.22 0.439); + --t-accent-accent6: color(display-p3 0.203 0.262 0.5); + --t-accent-accent7: color(display-p3 0.245 0.309 0.575); + --t-accent-accent8: color(display-p3 0.285 0.362 0.674); + --t-accent-accent9: color(display-p3 0.276 0.384 0.837); + --t-accent-accent10: color(display-p3 0.354 0.445 0.866); + --t-accent-accent11: color(display-p3 0.63 0.69 1); + --t-accent-accent12: color(display-p3 0.848 0.881 0.99); + --t-background-noisy: url(data:image/jpeg;base64,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); + --t-background-primary: color(display-p3 0.09 0.09 0.09); + --t-background-secondary: color(display-p3 0.106 0.106 0.106); + --t-background-tertiary: color(display-p3 0.114 0.114 0.114); + --t-background-quaternary: color(display-p3 0.133 0.133 0.133); + --t-background-inverted-primary: color(display-p3 0.922 0.922 0.922); + --t-background-inverted-secondary: color(display-p3 0.702 0.702 0.702); + --t-background-danger: color(display-p3 0.211 0.081 0.099); + --t-background-transparent-primary: color(display-p3 0 0 0 / 0.5); + --t-background-transparent-secondary: color(display-p3 0 0 0 / 0.4); + --t-background-transparent-strong: color(display-p3 1 1 1 / 0.141); + --t-background-transparent-medium: color(display-p3 1 1 1 / 0.102); + --t-background-transparent-light: color(display-p3 1 1 1 / 0.059); + --t-background-transparent-lighter: color(display-p3 1 1 1 / 0.031); + --t-background-transparent-danger: #ff173f2d; + --t-background-transparent-blue: #3566ff57; + --t-background-transparent-orange: #ff590039; + --t-background-transparent-success: #11ff992d; + --t-background-overlay-primary: #000000b8; + --t-background-overlay-secondary: #0000005c; + --t-background-overlay-tertiary: #0000005c; + --t-background-radial-gradient: radial-gradient( + 50% 62.62% at 50% 0%, + color(display-p3 0.506 0.506 0.506) 0%, + color(display-p3 0.482 0.482 0.482) 100% + ); + --t-background-radial-gradient-hover: radial-gradient( + 76.32% 95.59% at 50% 0%, + color(display-p3 0.482 0.482 0.482) 0%, + color(display-p3 0.702 0.702 0.702) 100% + ); + --t-background-primary-inverted: color(display-p3 0.922 0.922 0.922); + --t-background-primary-inverted-hover: color(display-p3 0.702 0.702 0.702); + --t-blur-light: blur(6px) saturate(200%) contrast(100%) brightness(130%); + --t-blur-medium: blur(12px) saturate(200%) contrast(100%) brightness(130%); + --t-blur-strong: blur(20px) saturate(200%) contrast(100%) brightness(130%); + --t-border-color-strong: color(display-p3 0.282 0.282 0.282); + --t-border-color-medium: color(display-p3 0.133 0.133 0.133); + --t-border-color-light: color(display-p3 0.114 0.114 0.114); + --t-border-color-secondary-inverted: color(display-p3 0.702 0.702 0.702); + --t-border-color-inverted: color(display-p3 0.922 0.922 0.922); + --t-border-color-danger: color(display-p3 0.348 0.11 0.142); + --t-border-color-blue: color(display-p3 0.245 0.309 0.575); + --t-border-color-transparent-strong: color(display-p3 1 1 1 / 0.071); + --t-border-radius-xs: 2px; + --t-border-radius-sm: 4px; + --t-border-radius-md: 8px; + --t-border-radius-lg: 16px; + --t-border-radius-xl: 20px; + --t-border-radius-xxl: 40px; + --t-border-radius-pill: 999px; + --t-border-radius-rounded: 100%; + --t-border-radius-sm-round: 4px; + --t-border-radius-md-round: 8px; + --t-box-shadow-color: rgba(0, 0, 0, 0.6); + --t-box-shadow-light: + 0px 2px 4px 0px rgba(0, 0, 0, 0.04), 0px 0px 4px 0px rgba(0, 0, 0, 0.08); + --t-box-shadow-strong: + 2px 4px 16px 0px rgba(0, 0, 0, 0.16), 0px 2px 4px 0px rgba(0, 0, 0, 0.08); + --t-box-shadow-underline: 0px 1px 0px 0px rgba(0, 0, 0, 0.32); + --t-box-shadow-super-heavy: + 2px 4px 16px 0px rgba(0, 0, 0, 0.12), 0px 2px 4px 0px rgba(0, 0, 0, 0.04); + --t-font-color-primary: color(display-p3 0.922 0.922 0.922); + --t-font-color-secondary: color(display-p3 0.702 0.702 0.702); + --t-font-color-tertiary: color(display-p3 0.506 0.506 0.506); + --t-font-color-light: color(display-p3 0.4 0.4 0.4); + --t-font-color-extra-light: color(display-p3 0.298 0.298 0.298); + --t-font-color-inverted: color(display-p3 0.09 0.09 0.09); + --t-font-color-danger: color(display-p3 0.83 0.329 0.324); + --t-font-size-xxs: 0.625rem; + --t-font-size-xs: 0.85rem; + --t-font-size-sm: 0.92rem; + --t-font-size-md: 1rem; + --t-font-size-lg: 1.23rem; + --t-font-size-xl: 1.54rem; + --t-font-size-xxl: 1.85rem; + --t-font-weight-regular: 400; + --t-font-weight-medium: 500; + --t-font-weight-semi-bold: 600; + --t-font-family: Inter, sans-serif; + --t-name: dark; + --t-snack-bar-success-color: color(display-p3 0.297 0.637 0.581); + --t-snack-bar-success-background-color: #11ff992d; + --t-snack-bar-error-color: color(display-p3 0.83 0.329 0.324); + --t-snack-bar-error-background-color: #ff173f2d; + --t-snack-bar-warning-color: color(display-p3 0.9 0.45 0.2); + --t-snack-bar-warning-background-color: #ff590039; + --t-snack-bar-info-color: color(display-p3 0.276 0.384 0.837); + --t-snack-bar-info-background-color: #3566ff57; + --t-snack-bar-default-color: color(display-p3 0.922 0.922 0.922); + --t-snack-bar-default-background-color: color(display-p3 1 1 1 / 0.059); + --t-tag-text-gray: color(display-p3 0.702 0.702 0.702); + --t-tag-text-mauve: color(display-p3 0.707 0.7 0.735); + --t-tag-text-slate: color(display-p3 0.692 0.704 0.728); + --t-tag-text-sage: color(display-p3 0.685 0.709 0.697); + --t-tag-text-olive: color(display-p3 0.69 0.709 0.682); + --t-tag-text-sand: color(display-p3 0.707 0.703 0.68); + --t-tag-text-tomato: color(display-p3 1 0.585 0.455); + --t-tag-text-red: color(display-p3 1 0.57 0.55); + --t-tag-text-ruby: color(display-p3 1 0.57 0.59); + --t-tag-text-crimson: color(display-p3 1 0.56 0.66); + --t-tag-text-pink: color(display-p3 1 0.535 0.78); + --t-tag-text-plum: color(display-p3 0.86 0.602 0.933); + --t-tag-text-purple: color(display-p3 0.8 0.62 1); + --t-tag-text-violet: color(display-p3 0.72 0.65 1); + --t-tag-text-iris: color(display-p3 0.685 0.662 1); + --t-tag-text-cyan: color(display-p3 0.446 0.79 0.887); + --t-tag-text-turquoise: color(display-p3 0.388 0.835 0.719); + --t-tag-text-sky: color(display-p3 0.536 0.772 0.924); + --t-tag-text-blue: color(display-p3 0.63 0.69 1); + --t-tag-text-jade: color(display-p3 0.4 0.835 0.656); + --t-tag-text-green: color(display-p3 0.434 0.828 0.573); + --t-tag-text-grass: color(display-p3 0.535 0.807 0.542); + --t-tag-text-mint: color(display-p3 0.482 0.825 0.733); + --t-tag-text-lime: color(display-p3 0.771 0.893 0.485); + --t-tag-text-bronze: color(display-p3 0.81 0.707 0.655); + --t-tag-text-gold: color(display-p3 0.784 0.728 0.635); + --t-tag-text-brown: color(display-p3 0.835 0.715 0.597); + --t-tag-text-orange: color(display-p3 1 0.63 0.38); + --t-tag-text-amber: color(display-p3 1 0.8 0.29); + --t-tag-text-yellow: color(display-p3 0.948 0.885 0.392); + --t-tag-background-gray: color(display-p3 0.098 0.098 0.098); + --t-tag-background-mauve: color(display-p3 0.138 0.134 0.144); + --t-tag-background-slate: color(display-p3 0.13 0.135 0.145); + --t-tag-background-sage: color(display-p3 0.128 0.135 0.131); + --t-tag-background-olive: color(display-p3 0.131 0.135 0.126); + --t-tag-background-sand: color(display-p3 0.135 0.135 0.129); + --t-tag-background-tomato: color(display-p3 0.205 0.097 0.083); + --t-tag-background-red: color(display-p3 0.211 0.081 0.099); + --t-tag-background-ruby: color(display-p3 0.208 0.088 0.117); + --t-tag-background-crimson: color(display-p3 0.203 0.091 0.143); + --t-tag-background-pink: color(display-p3 0.198 0.098 0.179); + --t-tag-background-plum: color(display-p3 0.192 0.105 0.202); + --t-tag-background-purple: color(display-p3 0.175 0.112 0.224); + --t-tag-background-violet: color(display-p3 0.154 0.123 0.256); + --t-tag-background-iris: color(display-p3 0.128 0.134 0.272); + --t-tag-background-cyan: color(display-p3 0.073 0.168 0.209); + --t-tag-background-turquoise: color(display-p3 0.087 0.175 0.165); + --t-tag-background-sky: color(display-p3 0.089 0.154 0.244); + --t-tag-background-blue: color(display-p3 0.105 0.141 0.275); + --t-tag-background-jade: color(display-p3 0.091 0.176 0.138); + --t-tag-background-green: color(display-p3 0.1 0.173 0.133); + --t-tag-background-grass: color(display-p3 0.118 0.163 0.122); + --t-tag-background-mint: color(display-p3 0.077 0.17 0.168); + --t-tag-background-lime: color(display-p3 0.13 0.16 0.099); + --t-tag-background-bronze: color(display-p3 0.147 0.132 0.125); + --t-tag-background-gold: color(display-p3 0.141 0.136 0.122); + --t-tag-background-brown: color(display-p3 0.151 0.13 0.115); + --t-tag-background-orange: color(display-p3 0.189 0.12 0.056); + --t-tag-background-amber: color(display-p3 0.178 0.128 0.049); + --t-tag-background-yellow: color(display-p3 0.168 0.137 0.039); + --t-code-text-gray: color(display-p3 0.482 0.482 0.482); + --t-code-text-sky: color(display-p3 0.718 0.925 0.991); + --t-code-text-pink: color(display-p3 0.808 0.356 0.645); + --t-code-text-orange: color(display-p3 0.601 0.359 0.201); + --t-code-text-green: color(display-p3 0.365 0.456 0.25); + --t-code-font-family: DM Mono; + --t--illustration-icon-color-blue: color(display-p3 0.354 0.445 0.866); + --t--illustration-icon-color-gray: color(display-p3 0.4 0.4 0.4); + --t--illustration-icon-fill-blue: color(display-p3 0.848 0.881 0.99); + --t--illustration-icon-fill-gray: color(display-p3 0.133 0.133 0.133); + --t-gray-scale-gray1: color(display-p3 0.09 0.09 0.09); + --t-gray-scale-gray2: color(display-p3 0.106 0.106 0.106); + --t-gray-scale-gray3: color(display-p3 0.098 0.098 0.098); + --t-gray-scale-gray4: color(display-p3 0.114 0.114 0.114); + --t-gray-scale-gray5: color(display-p3 0.133 0.133 0.133); + --t-gray-scale-gray6: color(display-p3 0.282 0.282 0.282); + --t-gray-scale-gray7: color(display-p3 0.298 0.298 0.298); + --t-gray-scale-gray8: color(display-p3 0.4 0.4 0.4); + --t-gray-scale-gray9: color(display-p3 0.506 0.506 0.506); + --t-gray-scale-gray10: color(display-p3 0.482 0.482 0.482); + --t-gray-scale-gray11: color(display-p3 0.702 0.702 0.702); + --t-gray-scale-gray12: color(display-p3 0.922 0.922 0.922); + --t-color-red: color(display-p3 0.83 0.329 0.324); + --t-color-ruby: color(display-p3 0.83 0.323 0.408); + --t-color-crimson: color(display-p3 0.843 0.298 0.507); + --t-color-tomato: color(display-p3 0.831 0.345 0.231); + --t-color-orange: color(display-p3 0.9 0.45 0.2); + --t-color-amber: color(display-p3 1 0.77 0.26); + --t-color-yellow: color(display-p3 1 0.92 0.22); + --t-color-lime: color(display-p3 0.78 0.928 0.466); + --t-color-grass: color(display-p3 0.38 0.647 0.378); + --t-color-green: color(display-p3 0.332 0.634 0.442); + --t-color-jade: color(display-p3 0.319 0.63 0.521); + --t-color-mint: color(display-p3 0.62 0.908 0.834); + --t-color-turquoise: color(display-p3 0.297 0.637 0.581); + --t-color-cyan: color(display-p3 0.282 0.627 0.765); + --t-color-sky: color(display-p3 0.585 0.877 0.983); + --t-color-blue: color(display-p3 0.276 0.384 0.837); + --t-color-iris: color(display-p3 0.357 0.357 0.81); + --t-color-violet: color(display-p3 0.417 0.341 0.784); + --t-color-purple: color(display-p3 0.523 0.318 0.751); + --t-color-plum: color(display-p3 0.624 0.313 0.708); + --t-color-pink: color(display-p3 0.775 0.297 0.61); + --t-color-bronze: color(display-p3 0.611 0.507 0.455); + --t-color-gold: color(display-p3 0.579 0.517 0.41); + --t-color-brown: color(display-p3 0.651 0.505 0.368); + --t-color-gray: color(display-p3 0.298 0.298 0.298); + --t-color-yellow1: color(display-p3 0.078 0.069 0.047); + --t-color-yellow2: color(display-p3 0.103 0.094 0.063); + --t-color-yellow3: color(display-p3 0.168 0.137 0.039); + --t-color-yellow4: color(display-p3 0.209 0.169 0); + --t-color-yellow5: color(display-p3 0.255 0.209 0); + --t-color-yellow6: color(display-p3 0.31 0.261 0.07); + --t-color-yellow7: color(display-p3 0.389 0.331 0.135); + --t-color-yellow8: color(display-p3 0.497 0.42 0.182); + --t-color-yellow9: color(display-p3 1 0.92 0.22); + --t-color-yellow10: color(display-p3 1 1 0.456); + --t-color-yellow11: color(display-p3 0.948 0.885 0.392); + --t-color-yellow12: color(display-p3 0.959 0.934 0.731); + --t-color-green1: color(display-p3 0.062 0.083 0.071); + --t-color-green2: color(display-p3 0.079 0.106 0.09); + --t-color-green3: color(display-p3 0.1 0.173 0.133); + --t-color-green4: color(display-p3 0.115 0.229 0.166); + --t-color-green5: color(display-p3 0.147 0.282 0.206); + --t-color-green6: color(display-p3 0.185 0.338 0.25); + --t-color-green7: color(display-p3 0.227 0.403 0.298); + --t-color-green8: color(display-p3 0.27 0.479 0.351); + --t-color-green9: color(display-p3 0.332 0.634 0.442); + --t-color-green10: color(display-p3 0.357 0.682 0.474); + --t-color-green11: color(display-p3 0.434 0.828 0.573); + --t-color-green12: color(display-p3 0.747 0.938 0.807); + --t-color-turquoise1: color(display-p3 0.059 0.083 0.079); + --t-color-turquoise2: color(display-p3 0.075 0.11 0.107); + --t-color-turquoise3: color(display-p3 0.087 0.175 0.165); + --t-color-turquoise4: color(display-p3 0.087 0.227 0.214); + --t-color-turquoise5: color(display-p3 0.12 0.277 0.261); + --t-color-turquoise6: color(display-p3 0.162 0.335 0.314); + --t-color-turquoise7: color(display-p3 0.205 0.406 0.379); + --t-color-turquoise8: color(display-p3 0.245 0.489 0.453); + --t-color-turquoise9: color(display-p3 0.297 0.637 0.581); + --t-color-turquoise10: color(display-p3 0.319 0.69 0.62); + --t-color-turquoise11: color(display-p3 0.388 0.835 0.719); + --t-color-turquoise12: color(display-p3 0.734 0.934 0.87); + --t-color-sky1: color(display-p3 0.056 0.078 0.116); + --t-color-sky2: color(display-p3 0.075 0.101 0.149); + --t-color-sky3: color(display-p3 0.089 0.154 0.244); + --t-color-sky4: color(display-p3 0.106 0.207 0.323); + --t-color-sky5: color(display-p3 0.135 0.261 0.394); + --t-color-sky6: color(display-p3 0.17 0.322 0.469); + --t-color-sky7: color(display-p3 0.205 0.394 0.557); + --t-color-sky8: color(display-p3 0.232 0.48 0.665); + --t-color-sky9: color(display-p3 0.585 0.877 0.983); + --t-color-sky10: color(display-p3 0.718 0.925 0.991); + --t-color-sky11: color(display-p3 0.536 0.772 0.924); + --t-color-sky12: color(display-p3 0.799 0.947 0.993); + --t-color-blue1: color(display-p3 0.068 0.074 0.118); + --t-color-blue2: color(display-p3 0.081 0.089 0.144); + --t-color-blue3: color(display-p3 0.105 0.141 0.275); + --t-color-blue4: color(display-p3 0.129 0.18 0.369); + --t-color-blue5: color(display-p3 0.163 0.22 0.439); + --t-color-blue6: color(display-p3 0.203 0.262 0.5); + --t-color-blue7: color(display-p3 0.245 0.309 0.575); + --t-color-blue8: color(display-p3 0.285 0.362 0.674); + --t-color-blue9: color(display-p3 0.276 0.384 0.837); + --t-color-blue10: color(display-p3 0.354 0.445 0.866); + --t-color-blue11: color(display-p3 0.63 0.69 1); + --t-color-blue12: color(display-p3 0.848 0.881 0.99); + --t-color-purple1: color(display-p3 0.09 0.068 0.103); + --t-color-purple2: color(display-p3 0.113 0.082 0.134); + --t-color-purple3: color(display-p3 0.175 0.112 0.224); + --t-color-purple4: color(display-p3 0.224 0.137 0.297); + --t-color-purple5: color(display-p3 0.264 0.167 0.349); + --t-color-purple6: color(display-p3 0.311 0.208 0.406); + --t-color-purple7: color(display-p3 0.381 0.266 0.496); + --t-color-purple8: color(display-p3 0.49 0.349 0.649); + --t-color-purple9: color(display-p3 0.523 0.318 0.751); + --t-color-purple10: color(display-p3 0.57 0.373 0.791); + --t-color-purple11: color(display-p3 0.8 0.62 1); + --t-color-purple12: color(display-p3 0.913 0.854 0.971); + --t-color-pink1: color(display-p3 0.093 0.068 0.089); + --t-color-pink2: color(display-p3 0.121 0.073 0.11); + --t-color-pink3: color(display-p3 0.198 0.098 0.179); + --t-color-pink4: color(display-p3 0.271 0.095 0.231); + --t-color-pink5: color(display-p3 0.32 0.127 0.273); + --t-color-pink6: color(display-p3 0.382 0.177 0.326); + --t-color-pink7: color(display-p3 0.477 0.238 0.405); + --t-color-pink8: color(display-p3 0.612 0.304 0.51); + --t-color-pink9: color(display-p3 0.775 0.297 0.61); + --t-color-pink10: color(display-p3 0.808 0.356 0.645); + --t-color-pink11: color(display-p3 1 0.535 0.78); + --t-color-pink12: color(display-p3 0.964 0.826 0.912); + --t-color-red1: color(display-p3 0.093 0.068 0.067); + --t-color-red2: color(display-p3 0.118 0.077 0.079); + --t-color-red3: color(display-p3 0.211 0.081 0.099); + --t-color-red4: color(display-p3 0.287 0.079 0.113); + --t-color-red5: color(display-p3 0.348 0.11 0.142); + --t-color-red6: color(display-p3 0.414 0.16 0.183); + --t-color-red7: color(display-p3 0.508 0.224 0.236); + --t-color-red8: color(display-p3 0.659 0.298 0.297); + --t-color-red9: color(display-p3 0.83 0.329 0.324); + --t-color-red10: color(display-p3 0.861 0.403 0.387); + --t-color-red11: color(display-p3 1 0.57 0.55); + --t-color-red12: color(display-p3 0.971 0.826 0.852); + --t-color-orange1: color(display-p3 0.088 0.07 0.057); + --t-color-orange2: color(display-p3 0.113 0.089 0.061); + --t-color-orange3: color(display-p3 0.189 0.12 0.056); + --t-color-orange4: color(display-p3 0.262 0.132 0); + --t-color-orange5: color(display-p3 0.315 0.168 0.016); + --t-color-orange6: color(display-p3 0.376 0.219 0.088); + --t-color-orange7: color(display-p3 0.465 0.283 0.147); + --t-color-orange8: color(display-p3 0.601 0.359 0.201); + --t-color-orange9: color(display-p3 0.9 0.45 0.2); + --t-color-orange10: color(display-p3 0.98 0.51 0.23); + --t-color-orange11: color(display-p3 1 0.63 0.38); + --t-color-orange12: color(display-p3 0.98 0.883 0.775); + --t-color-gray1: color(display-p3 0.09 0.09 0.09); + --t-color-gray2: color(display-p3 0.106 0.106 0.106); + --t-color-gray3: color(display-p3 0.098 0.098 0.098); + --t-color-gray4: color(display-p3 0.114 0.114 0.114); + --t-color-gray5: color(display-p3 0.133 0.133 0.133); + --t-color-gray6: color(display-p3 0.282 0.282 0.282); + --t-color-gray7: color(display-p3 0.298 0.298 0.298); + --t-color-gray8: color(display-p3 0.4 0.4 0.4); + --t-color-gray9: color(display-p3 0.506 0.506 0.506); + --t-color-gray10: color(display-p3 0.482 0.482 0.482); + --t-color-gray11: color(display-p3 0.702 0.702 0.702); + --t-color-gray12: color(display-p3 0.922 0.922 0.922); + --t-color-mauve1: color(display-p3 0.07 0.067 0.074); + --t-color-mauve2: color(display-p3 0.101 0.098 0.105); + --t-color-mauve3: color(display-p3 0.138 0.134 0.144); + --t-color-mauve4: color(display-p3 0.167 0.161 0.175); + --t-color-mauve5: color(display-p3 0.196 0.189 0.206); + --t-color-mauve6: color(display-p3 0.232 0.225 0.245); + --t-color-mauve7: color(display-p3 0.286 0.277 0.302); + --t-color-mauve8: color(display-p3 0.383 0.373 0.408); + --t-color-mauve9: color(display-p3 0.434 0.428 0.467); + --t-color-mauve10: color(display-p3 0.487 0.48 0.519); + --t-color-mauve11: color(display-p3 0.707 0.7 0.735); + --t-color-mauve12: color(display-p3 0.933 0.933 0.94); + --t-color-slate1: color(display-p3 0.067 0.067 0.074); + --t-color-slate2: color(display-p3 0.095 0.098 0.105); + --t-color-slate3: color(display-p3 0.13 0.135 0.145); + --t-color-slate4: color(display-p3 0.156 0.163 0.176); + --t-color-slate5: color(display-p3 0.183 0.191 0.206); + --t-color-slate6: color(display-p3 0.215 0.226 0.244); + --t-color-slate7: color(display-p3 0.265 0.28 0.302); + --t-color-slate8: color(display-p3 0.357 0.381 0.409); + --t-color-slate9: color(display-p3 0.415 0.431 0.463); + --t-color-slate10: color(display-p3 0.469 0.483 0.514); + --t-color-slate11: color(display-p3 0.692 0.704 0.728); + --t-color-slate12: color(display-p3 0.93 0.933 0.94); + --t-color-sage1: color(display-p3 0.064 0.07 0.067); + --t-color-sage2: color(display-p3 0.092 0.098 0.094); + --t-color-sage3: color(display-p3 0.128 0.135 0.131); + --t-color-sage4: color(display-p3 0.155 0.164 0.159); + --t-color-sage5: color(display-p3 0.183 0.193 0.188); + --t-color-sage6: color(display-p3 0.218 0.23 0.224); + --t-color-sage7: color(display-p3 0.269 0.285 0.277); + --t-color-sage8: color(display-p3 0.362 0.382 0.373); + --t-color-sage9: color(display-p3 0.398 0.438 0.421); + --t-color-sage10: color(display-p3 0.453 0.49 0.474); + --t-color-sage11: color(display-p3 0.685 0.709 0.697); + --t-color-sage12: color(display-p3 0.927 0.933 0.93); + --t-color-olive1: color(display-p3 0.067 0.07 0.063); + --t-color-olive2: color(display-p3 0.095 0.098 0.091); + --t-color-olive3: color(display-p3 0.131 0.135 0.126); + --t-color-olive4: color(display-p3 0.158 0.163 0.153); + --t-color-olive5: color(display-p3 0.186 0.192 0.18); + --t-color-olive6: color(display-p3 0.221 0.229 0.215); + --t-color-olive7: color(display-p3 0.273 0.284 0.266); + --t-color-olive8: color(display-p3 0.365 0.382 0.359); + --t-color-olive9: color(display-p3 0.414 0.438 0.404); + --t-color-olive10: color(display-p3 0.467 0.49 0.458); + --t-color-olive11: color(display-p3 0.69 0.709 0.682); + --t-color-olive12: color(display-p3 0.927 0.933 0.926); + --t-color-sand1: color(display-p3 0.067 0.067 0.063); + --t-color-sand2: color(display-p3 0.098 0.098 0.094); + --t-color-sand3: color(display-p3 0.135 0.135 0.129); + --t-color-sand4: color(display-p3 0.164 0.163 0.156); + --t-color-sand5: color(display-p3 0.193 0.192 0.183); + --t-color-sand6: color(display-p3 0.23 0.229 0.217); + --t-color-sand7: color(display-p3 0.285 0.282 0.267); + --t-color-sand8: color(display-p3 0.384 0.378 0.357); + --t-color-sand9: color(display-p3 0.434 0.428 0.403); + --t-color-sand10: color(display-p3 0.487 0.481 0.456); + --t-color-sand11: color(display-p3 0.707 0.703 0.68); + --t-color-sand12: color(display-p3 0.933 0.933 0.926); + --t-color-tomato1: color(display-p3 0.09 0.068 0.067); + --t-color-tomato2: color(display-p3 0.115 0.084 0.076); + --t-color-tomato3: color(display-p3 0.205 0.097 0.083); + --t-color-tomato4: color(display-p3 0.282 0.099 0.077); + --t-color-tomato5: color(display-p3 0.339 0.129 0.101); + --t-color-tomato6: color(display-p3 0.398 0.179 0.141); + --t-color-tomato7: color(display-p3 0.487 0.245 0.194); + --t-color-tomato8: color(display-p3 0.629 0.322 0.248); + --t-color-tomato9: color(display-p3 0.831 0.345 0.231); + --t-color-tomato10: color(display-p3 0.862 0.415 0.298); + --t-color-tomato11: color(display-p3 1 0.585 0.455); + --t-color-tomato12: color(display-p3 0.959 0.833 0.802); + --t-color-ruby1: color(display-p3 0.093 0.068 0.074); + --t-color-ruby2: color(display-p3 0.113 0.083 0.089); + --t-color-ruby3: color(display-p3 0.208 0.088 0.117); + --t-color-ruby4: color(display-p3 0.279 0.092 0.147); + --t-color-ruby5: color(display-p3 0.337 0.12 0.18); + --t-color-ruby6: color(display-p3 0.401 0.166 0.223); + --t-color-ruby7: color(display-p3 0.495 0.224 0.281); + --t-color-ruby8: color(display-p3 0.652 0.295 0.359); + --t-color-ruby9: color(display-p3 0.83 0.323 0.408); + --t-color-ruby10: color(display-p3 0.857 0.392 0.455); + --t-color-ruby11: color(display-p3 1 0.57 0.59); + --t-color-ruby12: color(display-p3 0.968 0.83 0.88); + --t-color-crimson1: color(display-p3 0.093 0.068 0.078); + --t-color-crimson2: color(display-p3 0.117 0.078 0.095); + --t-color-crimson3: color(display-p3 0.203 0.091 0.143); + --t-color-crimson4: color(display-p3 0.277 0.087 0.182); + --t-color-crimson5: color(display-p3 0.332 0.115 0.22); + --t-color-crimson6: color(display-p3 0.394 0.162 0.268); + --t-color-crimson7: color(display-p3 0.489 0.222 0.336); + --t-color-crimson8: color(display-p3 0.638 0.289 0.429); + --t-color-crimson9: color(display-p3 0.843 0.298 0.507); + --t-color-crimson10: color(display-p3 0.864 0.364 0.539); + --t-color-crimson11: color(display-p3 1 0.56 0.66); + --t-color-crimson12: color(display-p3 0.966 0.834 0.906); + --t-color-plum1: color(display-p3 0.09 0.068 0.092); + --t-color-plum2: color(display-p3 0.118 0.077 0.121); + --t-color-plum3: color(display-p3 0.192 0.105 0.202); + --t-color-plum4: color(display-p3 0.25 0.121 0.271); + --t-color-plum5: color(display-p3 0.293 0.152 0.319); + --t-color-plum6: color(display-p3 0.343 0.198 0.372); + --t-color-plum7: color(display-p3 0.424 0.262 0.461); + --t-color-plum8: color(display-p3 0.54 0.341 0.595); + --t-color-plum9: color(display-p3 0.624 0.313 0.708); + --t-color-plum10: color(display-p3 0.666 0.365 0.748); + --t-color-plum11: color(display-p3 0.86 0.602 0.933); + --t-color-plum12: color(display-p3 0.936 0.836 0.949); + --t-color-violet1: color(display-p3 0.077 0.071 0.118); + --t-color-violet2: color(display-p3 0.101 0.084 0.141); + --t-color-violet3: color(display-p3 0.154 0.123 0.256); + --t-color-violet4: color(display-p3 0.191 0.148 0.345); + --t-color-violet5: color(display-p3 0.226 0.182 0.396); + --t-color-violet6: color(display-p3 0.269 0.223 0.449); + --t-color-violet7: color(display-p3 0.326 0.277 0.53); + --t-color-violet8: color(display-p3 0.399 0.346 0.656); + --t-color-violet9: color(display-p3 0.417 0.341 0.784); + --t-color-violet10: color(display-p3 0.477 0.402 0.823); + --t-color-violet11: color(display-p3 0.72 0.65 1); + --t-color-violet12: color(display-p3 0.883 0.867 0.986); + --t-color-iris1: color(display-p3 0.075 0.075 0.114); + --t-color-iris2: color(display-p3 0.089 0.086 0.14); + --t-color-iris3: color(display-p3 0.128 0.134 0.272); + --t-color-iris4: color(display-p3 0.153 0.165 0.382); + --t-color-iris5: color(display-p3 0.192 0.201 0.44); + --t-color-iris6: color(display-p3 0.239 0.241 0.491); + --t-color-iris7: color(display-p3 0.291 0.289 0.565); + --t-color-iris8: color(display-p3 0.35 0.345 0.673); + --t-color-iris9: color(display-p3 0.357 0.357 0.81); + --t-color-iris10: color(display-p3 0.428 0.416 0.843); + --t-color-iris11: color(display-p3 0.685 0.662 1); + --t-color-iris12: color(display-p3 0.878 0.875 0.986); + --t-color-cyan1: color(display-p3 0.053 0.085 0.098); + --t-color-cyan2: color(display-p3 0.072 0.105 0.122); + --t-color-cyan3: color(display-p3 0.073 0.168 0.209); + --t-color-cyan4: color(display-p3 0.063 0.216 0.277); + --t-color-cyan5: color(display-p3 0.091 0.267 0.336); + --t-color-cyan6: color(display-p3 0.137 0.324 0.4); + --t-color-cyan7: color(display-p3 0.186 0.398 0.484); + --t-color-cyan8: color(display-p3 0.23 0.496 0.6); + --t-color-cyan9: color(display-p3 0.282 0.627 0.765); + --t-color-cyan10: color(display-p3 0.331 0.675 0.801); + --t-color-cyan11: color(display-p3 0.446 0.79 0.887); + --t-color-cyan12: color(display-p3 0.757 0.919 0.962); + --t-color-jade1: color(display-p3 0.059 0.083 0.071); + --t-color-jade2: color(display-p3 0.078 0.11 0.094); + --t-color-jade3: color(display-p3 0.091 0.176 0.138); + --t-color-jade4: color(display-p3 0.102 0.228 0.177); + --t-color-jade5: color(display-p3 0.133 0.279 0.221); + --t-color-jade6: color(display-p3 0.174 0.334 0.273); + --t-color-jade7: color(display-p3 0.219 0.402 0.335); + --t-color-jade8: color(display-p3 0.263 0.488 0.411); + --t-color-jade9: color(display-p3 0.319 0.63 0.521); + --t-color-jade10: color(display-p3 0.338 0.68 0.555); + --t-color-jade11: color(display-p3 0.4 0.835 0.656); + --t-color-jade12: color(display-p3 0.734 0.934 0.838); + --t-color-grass1: color(display-p3 0.062 0.083 0.067); + --t-color-grass2: color(display-p3 0.083 0.103 0.085); + --t-color-grass3: color(display-p3 0.118 0.163 0.122); + --t-color-grass4: color(display-p3 0.142 0.225 0.15); + --t-color-grass5: color(display-p3 0.178 0.279 0.186); + --t-color-grass6: color(display-p3 0.217 0.337 0.224); + --t-color-grass7: color(display-p3 0.258 0.4 0.264); + --t-color-grass8: color(display-p3 0.302 0.47 0.305); + --t-color-grass9: color(display-p3 0.38 0.647 0.378); + --t-color-grass10: color(display-p3 0.426 0.694 0.426); + --t-color-grass11: color(display-p3 0.535 0.807 0.542); + --t-color-grass12: color(display-p3 0.797 0.936 0.776); + --t-color-mint1: color(display-p3 0.059 0.082 0.081); + --t-color-mint2: color(display-p3 0.068 0.104 0.105); + --t-color-mint3: color(display-p3 0.077 0.17 0.168); + --t-color-mint4: color(display-p3 0.068 0.224 0.22); + --t-color-mint5: color(display-p3 0.104 0.275 0.264); + --t-color-mint6: color(display-p3 0.154 0.332 0.313); + --t-color-mint7: color(display-p3 0.207 0.403 0.373); + --t-color-mint8: color(display-p3 0.258 0.49 0.441); + --t-color-mint9: color(display-p3 0.62 0.908 0.834); + --t-color-mint10: color(display-p3 0.725 0.954 0.898); + --t-color-mint11: color(display-p3 0.482 0.825 0.733); + --t-color-mint12: color(display-p3 0.807 0.955 0.887); + --t-color-lime1: color(display-p3 0.067 0.073 0.048); + --t-color-lime2: color(display-p3 0.086 0.1 0.067); + --t-color-lime3: color(display-p3 0.13 0.16 0.099); + --t-color-lime4: color(display-p3 0.172 0.214 0.126); + --t-color-lime5: color(display-p3 0.213 0.266 0.153); + --t-color-lime6: color(display-p3 0.257 0.321 0.182); + --t-color-lime7: color(display-p3 0.307 0.383 0.215); + --t-color-lime8: color(display-p3 0.365 0.456 0.25); + --t-color-lime9: color(display-p3 0.78 0.928 0.466); + --t-color-lime10: color(display-p3 0.865 0.995 0.519); + --t-color-lime11: color(display-p3 0.771 0.893 0.485); + --t-color-lime12: color(display-p3 0.905 0.966 0.753); + --t-color-bronze1: color(display-p3 0.076 0.067 0.063); + --t-color-bronze2: color(display-p3 0.106 0.097 0.093); + --t-color-bronze3: color(display-p3 0.147 0.132 0.125); + --t-color-bronze4: color(display-p3 0.185 0.166 0.156); + --t-color-bronze5: color(display-p3 0.227 0.202 0.19); + --t-color-bronze6: color(display-p3 0.278 0.246 0.23); + --t-color-bronze7: color(display-p3 0.343 0.302 0.281); + --t-color-bronze8: color(display-p3 0.426 0.374 0.347); + --t-color-bronze9: color(display-p3 0.611 0.507 0.455); + --t-color-bronze10: color(display-p3 0.66 0.556 0.504); + --t-color-bronze11: color(display-p3 0.81 0.707 0.655); + --t-color-bronze12: color(display-p3 0.921 0.88 0.854); + --t-color-gold1: color(display-p3 0.071 0.071 0.067); + --t-color-gold2: color(display-p3 0.104 0.101 0.09); + --t-color-gold3: color(display-p3 0.141 0.136 0.122); + --t-color-gold4: color(display-p3 0.177 0.17 0.152); + --t-color-gold5: color(display-p3 0.217 0.207 0.185); + --t-color-gold6: color(display-p3 0.265 0.252 0.225); + --t-color-gold7: color(display-p3 0.327 0.31 0.277); + --t-color-gold8: color(display-p3 0.407 0.384 0.342); + --t-color-gold9: color(display-p3 0.579 0.517 0.41); + --t-color-gold10: color(display-p3 0.628 0.566 0.463); + --t-color-gold11: color(display-p3 0.784 0.728 0.635); + --t-color-gold12: color(display-p3 0.906 0.887 0.855); + --t-color-brown1: color(display-p3 0.071 0.067 0.059); + --t-color-brown2: color(display-p3 0.107 0.095 0.087); + --t-color-brown3: color(display-p3 0.151 0.13 0.115); + --t-color-brown4: color(display-p3 0.191 0.161 0.138); + --t-color-brown5: color(display-p3 0.235 0.194 0.162); + --t-color-brown6: color(display-p3 0.291 0.237 0.192); + --t-color-brown7: color(display-p3 0.365 0.295 0.232); + --t-color-brown8: color(display-p3 0.469 0.377 0.287); + --t-color-brown9: color(display-p3 0.651 0.505 0.368); + --t-color-brown10: color(display-p3 0.697 0.557 0.423); + --t-color-brown11: color(display-p3 0.835 0.715 0.597); + --t-color-brown12: color(display-p3 0.938 0.885 0.802); + --t-color-amber1: color(display-p3 0.082 0.07 0.05); + --t-color-amber2: color(display-p3 0.111 0.094 0.064); + --t-color-amber3: color(display-p3 0.178 0.128 0.049); + --t-color-amber4: color(display-p3 0.239 0.156 0); + --t-color-amber5: color(display-p3 0.29 0.193 0); + --t-color-amber6: color(display-p3 0.344 0.245 0.076); + --t-color-amber7: color(display-p3 0.422 0.314 0.141); + --t-color-amber8: color(display-p3 0.535 0.399 0.189); + --t-color-amber9: color(display-p3 1 0.77 0.26); + --t-color-amber10: color(display-p3 1 0.87 0.15); + --t-color-amber11: color(display-p3 1 0.8 0.29); + --t-color-amber12: color(display-p3 0.984 0.909 0.726); + --t-color-transparent-green1: #00de4505; + --t-color-transparent-green2: #29f99d0b; + --t-color-transparent-green3: #22ff991e; + --t-color-transparent-green4: #11ff992d; + --t-color-transparent-green5: #2bffa23c; + --t-color-transparent-green6: #44ffaa4b; + --t-color-transparent-green7: #50fdac5e; + --t-color-transparent-green8: #54ffad73; + --t-color-transparent-green9: #44ffa49e; + --t-color-transparent-green10: #43fea4ab; + --t-color-transparent-green11: #46fea5d4; + --t-color-transparent-green12: #bbffd7f0; + --t-color-transparent-turquoise1: #00deab05; + --t-color-transparent-turquoise2: #12fbe60c; + --t-color-transparent-turquoise3: #00ffe61e; + --t-color-transparent-turquoise4: #00ffe92d; + --t-color-transparent-turquoise5: #00ffea3b; + --t-color-transparent-turquoise6: #1cffe84b; + --t-color-transparent-turquoise7: #2efde85f; + --t-color-transparent-turquoise8: #32ffe775; + --t-color-transparent-turquoise9: #13ffe49f; + --t-color-transparent-turquoise10: #0dffe0ae; + --t-color-transparent-turquoise11: #0afed5d6; + --t-color-transparent-turquoise12: #b8ffebef; + --t-color-transparent-sky1: #0044ff0f; + --t-color-transparent-sky2: #1171fb18; + --t-color-transparent-sky3: #1184fc33; + --t-color-transparent-sky4: #128fff49; + --t-color-transparent-sky5: #1c9dfd5d; + --t-color-transparent-sky6: #28a5ff72; + --t-color-transparent-sky7: #2badfe8b; + --t-color-transparent-sky8: #1db2fea9; + --t-color-transparent-sky9: #7ce3fffe; + --t-color-transparent-sky10: #a8eeff; + --t-color-transparent-sky11: #7cd3ffef; + --t-color-transparent-sky12: #c2f3ff; + --t-color-transparent-blue1: #1133ff0f; + --t-color-transparent-blue2: #3354fa17; + --t-color-transparent-blue3: #2f62ff3c; + --t-color-transparent-blue4: #3566ff57; + --t-color-transparent-blue5: #4171fd6b; + --t-color-transparent-blue6: #5178fd7c; + --t-color-transparent-blue7: #5a7fff90; + --t-color-transparent-blue8: #5b81feac; + --t-color-transparent-blue9: #4671ffdb; + --t-color-transparent-blue10: #5c7efee3; + --t-color-transparent-blue11: #9eb1ff; + --t-color-transparent-blue12: #d6e1ff; + --t-color-transparent-purple1: #b412f90b; + --t-color-transparent-purple2: #b744f714; + --t-color-transparent-purple3: #c150ff2d; + --t-color-transparent-purple4: #bb53fd42; + --t-color-transparent-purple5: #be5cfd51; + --t-color-transparent-purple6: #c16dfd61; + --t-color-transparent-purple7: #c378fd7a; + --t-color-transparent-purple8: #c47effa4; + --t-color-transparent-purple9: #b661ffc2; + --t-color-transparent-purple10: #bc6fffcd; + --t-color-transparent-purple11: #d19dff; + --t-color-transparent-purple12: #f1ddfffa; + --t-color-transparent-pink1: #f412bc09; + --t-color-transparent-pink2: #f420bb12; + --t-color-transparent-pink3: #fe37cc29; + --t-color-transparent-pink4: #fc1ec43f; + --t-color-transparent-pink5: #fd35c24e; + --t-color-transparent-pink6: #fd51c75f; + --t-color-transparent-pink7: #fd62c87b; + --t-color-transparent-pink8: #ff68c8a2; + --t-color-transparent-pink9: #fe49bcd4; + --t-color-transparent-pink10: #ff5cc0dc; + --t-color-transparent-pink11: #ff8dcc; + --t-color-transparent-pink12: #ffd3ecfd; + --t-color-transparent-red1: #f4121209; + --t-color-transparent-red2: #f22f3e11; + --t-color-transparent-red3: #ff173f2d; + --t-color-transparent-red4: #fe0a3b44; + --t-color-transparent-red5: #ff204756; + --t-color-transparent-red6: #ff3e5668; + --t-color-transparent-red7: #ff536184; + --t-color-transparent-red8: #ff5d61b0; + --t-color-transparent-red9: #fe4e54e4; + --t-color-transparent-red10: #ff6465eb; + --t-color-transparent-red11: #ff9592; + --t-color-transparent-red12: #ffd1d9; + --t-color-transparent-orange1: #ec360007; + --t-color-transparent-orange2: #fe6d000e; + --t-color-transparent-orange3: #fb6a0025; + --t-color-transparent-orange4: #ff590039; + --t-color-transparent-orange5: #ff61004a; + --t-color-transparent-orange6: #fd75045c; + --t-color-transparent-orange7: #ff832c75; + --t-color-transparent-orange8: #fe84389d; + --t-color-transparent-orange9: #fe6d15f7; + --t-color-transparent-orange10: #ff801f; + --t-color-transparent-orange11: #ffa057; + --t-color-transparent-orange12: #ffe0c2; + --t-color-transparent-yellow1: #d1510004; + --t-color-transparent-yellow2: #f9b4000b; + --t-color-transparent-yellow3: #ffaa001e; + --t-color-transparent-yellow4: #fdb70028; + --t-color-transparent-yellow5: #febb0036; + --t-color-transparent-yellow6: #fec40046; + --t-color-transparent-yellow7: #fdcb225c; + --t-color-transparent-yellow8: #fdca327b; + --t-color-transparent-yellow9: #ffe629; + --t-color-transparent-yellow10: #ffff57; + --t-color-transparent-yellow11: #fee949f5; + --t-color-transparent-yellow12: #fef6baf6; + --t-color-transparent-gray1: color(display-p3 1 1 1 / 0.031); + --t-color-transparent-gray2: color(display-p3 1 1 1 / 0.059); + --t-color-transparent-gray3: color(display-p3 1 1 1 / 0.047); + --t-color-transparent-gray4: color(display-p3 1 1 1 / 0.071); + --t-color-transparent-gray5: color(display-p3 1 1 1 / 0.102); + --t-color-transparent-gray6: color(display-p3 1 1 1 / 0.114); + --t-color-transparent-gray7: color(display-p3 1 1 1 / 0.141); + --t-color-transparent-gray8: color(display-p3 1 1 1 / 0.22); + --t-color-transparent-gray9: color(display-p3 1 1 1 / 0.427); + --t-color-transparent-gray10: color(display-p3 1 1 1 / 0.478); + --t-color-transparent-gray11: color(display-p3 1 1 1 / 0.565); + --t-color-transparent-gray12: color(display-p3 1 1 1 / 0.91); + --t-color-transparent-mauve1: #00000000; + --t-color-transparent-mauve2: #f5f4f609; + --t-color-transparent-mauve3: #ebeaf814; + --t-color-transparent-mauve4: #eee5f81d; + --t-color-transparent-mauve5: #efe6fe25; + --t-color-transparent-mauve6: #f1e6fd30; + --t-color-transparent-mauve7: #eee9ff40; + --t-color-transparent-mauve8: #eee7ff5d; + --t-color-transparent-mauve9: #eae6fd6e; + --t-color-transparent-mauve10: #ece9fd7c; + --t-color-transparent-mauve11: #f5f1ffb7; + --t-color-transparent-mauve12: #fdfdffef; + --t-color-transparent-slate1: #00000000; + --t-color-transparent-slate2: #d8f4f609; + --t-color-transparent-slate3: #ddeaf814; + --t-color-transparent-slate4: #d3edf81d; + --t-color-transparent-slate5: #d9edfe25; + --t-color-transparent-slate6: #d6ebfd30; + --t-color-transparent-slate7: #d9edff40; + --t-color-transparent-slate8: #d9edff5d; + --t-color-transparent-slate9: #dfebfd6d; + --t-color-transparent-slate10: #e5edfd7b; + --t-color-transparent-slate11: #f1f7feb5; + --t-color-transparent-slate12: #fcfdffef; + --t-color-transparent-sage1: #00000000; + --t-color-transparent-sage2: #f0f2f108; + --t-color-transparent-sage3: #f3f5f412; + --t-color-transparent-sage4: #f2fefd1a; + --t-color-transparent-sage5: #f1fbfa22; + --t-color-transparent-sage6: #edfbf42d; + --t-color-transparent-sage7: #edfcf73c; + --t-color-transparent-sage8: #ebfdf657; + --t-color-transparent-sage9: #dffdf266; + --t-color-transparent-sage10: #e5fdf674; + --t-color-transparent-sage11: #f4fefbb0; + --t-color-transparent-sage12: #fdfffeed; + --t-color-transparent-olive1: #00000000; + --t-color-transparent-olive2: #f1f2f008; + --t-color-transparent-olive3: #f4f5f312; + --t-color-transparent-olive4: #f3fef21a; + --t-color-transparent-olive5: #f2fbf122; + --t-color-transparent-olive6: #f4faed2c; + --t-color-transparent-olive7: #f2fced3b; + --t-color-transparent-olive8: #edfdeb57; + --t-color-transparent-olive9: #ebfde766; + --t-color-transparent-olive10: #f0fdec74; + --t-color-transparent-olive11: #f6fef4b0; + --t-color-transparent-olive12: #fdfffded; + --t-color-transparent-sand1: #00000000; + --t-color-transparent-sand2: #f4f4f309; + --t-color-transparent-sand3: #f6f6f513; + --t-color-transparent-sand4: #fefef31b; + --t-color-transparent-sand5: #fbfbeb23; + --t-color-transparent-sand6: #fffaed2d; + --t-color-transparent-sand7: #fffbed3c; + --t-color-transparent-sand8: #fff9eb57; + --t-color-transparent-sand9: #fffae965; + --t-color-transparent-sand10: #fffdee73; + --t-color-transparent-sand11: #fffcf4b0; + --t-color-transparent-sand12: #fffffded; + --t-color-transparent-tomato1: #f1121208; + --t-color-transparent-tomato2: #ff55330f; + --t-color-transparent-tomato3: #ff35232b; + --t-color-transparent-tomato4: #fd201142; + --t-color-transparent-tomato5: #fe332153; + --t-color-transparent-tomato6: #ff4f3864; + --t-color-transparent-tomato7: #fd644a7d; + --t-color-transparent-tomato8: #fe6d4ea7; + --t-color-transparent-tomato9: #fe5431e4; + --t-color-transparent-tomato10: #ff6847eb; + --t-color-transparent-tomato11: #ff977d; + --t-color-transparent-tomato12: #ffd6cefb; + --t-color-transparent-ruby1: #f4124a09; + --t-color-transparent-ruby2: #fe5a7f0e; + --t-color-transparent-ruby3: #ff235d2c; + --t-color-transparent-ruby4: #fd195e42; + --t-color-transparent-ruby5: #fe2d6b53; + --t-color-transparent-ruby6: #ff447665; + --t-color-transparent-ruby7: #ff577d80; + --t-color-transparent-ruby8: #ff5c7cae; + --t-color-transparent-ruby9: #fe4c70e4; + --t-color-transparent-ruby10: #ff617beb; + --t-color-transparent-ruby11: #ff949d; + --t-color-transparent-ruby12: #ffd3e2fe; + --t-color-transparent-crimson1: #f4126709; + --t-color-transparent-crimson2: #f22f7a11; + --t-color-transparent-crimson3: #fe2a8b2a; + --t-color-transparent-crimson4: #fd158741; + --t-color-transparent-crimson5: #fd278f51; + --t-color-transparent-crimson6: #fe459763; + --t-color-transparent-crimson7: #fd559b7f; + --t-color-transparent-crimson8: #fe5b9bab; + --t-color-transparent-crimson9: #fe418de8; + --t-color-transparent-crimson10: #ff5693ed; + --t-color-transparent-crimson11: #ff92ad; + --t-color-transparent-crimson12: #ffd5eafd; + --t-color-transparent-plum1: #f112f108; + --t-color-transparent-plum2: #f22ff211; + --t-color-transparent-plum3: #fd4cfd27; + --t-color-transparent-plum4: #f646ff3a; + --t-color-transparent-plum5: #f455ff48; + --t-color-transparent-plum6: #f66dff56; + --t-color-transparent-plum7: #f07cfd70; + --t-color-transparent-plum8: #ee84ff95; + --t-color-transparent-plum9: #e961feb6; + --t-color-transparent-plum10: #ed70ffc0; + --t-color-transparent-plum11: #f19cfef3; + --t-color-transparent-plum12: #feddfef4; + --t-color-transparent-violet1: #4422ff0f; + --t-color-transparent-violet2: #853ff916; + --t-color-transparent-violet3: #8354fe36; + --t-color-transparent-violet4: #7d51fd50; + --t-color-transparent-violet5: #845ffd5f; + --t-color-transparent-violet6: #8f6cfd6d; + --t-color-transparent-violet7: #9879ff83; + --t-color-transparent-violet8: #977dfea8; + --t-color-transparent-violet9: #8668ffcc; + --t-color-transparent-violet10: #9176fed7; + --t-color-transparent-violet11: #baa7ff; + --t-color-transparent-violet12: #e3defffe; + --t-color-transparent-iris1: #3636fe0e; + --t-color-transparent-iris2: #564bf916; + --t-color-transparent-iris3: #525bff3b; + --t-color-transparent-iris4: #4d58ff5a; + --t-color-transparent-iris5: #5b62fd6b; + --t-color-transparent-iris6: #6d6ffd7a; + --t-color-transparent-iris7: #7777fe8e; + --t-color-transparent-iris8: #7b7afeac; + --t-color-transparent-iris9: #6a6afed4; + --t-color-transparent-iris10: #7d79ffdc; + --t-color-transparent-iris11: #b1a9ff; + --t-color-transparent-iris12: #e1e0fffe; + --t-color-transparent-cyan1: #0091f70a; + --t-color-transparent-cyan2: #02a7f211; + --t-color-transparent-cyan3: #00befd28; + --t-color-transparent-cyan4: #00baff3b; + --t-color-transparent-cyan5: #00befd4d; + --t-color-transparent-cyan6: #00c7fd5e; + --t-color-transparent-cyan7: #14cdff75; + --t-color-transparent-cyan8: #11cfff95; + --t-color-transparent-cyan9: #00cfffc3; + --t-color-transparent-cyan10: #28d6ffcd; + --t-color-transparent-cyan11: #52e1fee5; + --t-color-transparent-cyan12: #bbf3fef7; + --t-color-transparent-jade1: #00de4505; + --t-color-transparent-jade2: #27fba60c; + --t-color-transparent-jade3: #02f99920; + --t-color-transparent-jade4: #00ffaa2d; + --t-color-transparent-jade5: #11ffb63b; + --t-color-transparent-jade6: #34ffc24b; + --t-color-transparent-jade7: #45fdc75e; + --t-color-transparent-jade8: #48ffcf75; + --t-color-transparent-jade9: #38feca9d; + --t-color-transparent-jade10: #31fec7ab; + --t-color-transparent-jade11: #21fec0d6; + --t-color-transparent-jade12: #b8ffe1ef; + --t-color-transparent-grass1: #00de1205; + --t-color-transparent-grass2: #5ef7780a; + --t-color-transparent-grass3: #70fe8c1b; + --t-color-transparent-grass4: #57ff802c; + --t-color-transparent-grass5: #68ff8b3b; + --t-color-transparent-grass6: #71ff8f4b; + --t-color-transparent-grass7: #77fd925d; + --t-color-transparent-grass8: #77fd9070; + --t-color-transparent-grass9: #65ff82a1; + --t-color-transparent-grass10: #72ff8dae; + --t-color-transparent-grass11: #89ff9fcd; + --t-color-transparent-grass12: #ceffceef; + --t-color-transparent-mint1: #00dede05; + --t-color-transparent-mint2: #00f9f90b; + --t-color-transparent-mint3: #00fff61d; + --t-color-transparent-mint4: #00fff42c; + --t-color-transparent-mint5: #00fff23a; + --t-color-transparent-mint6: #0effeb4a; + --t-color-transparent-mint7: #34fde55e; + --t-color-transparent-mint8: #41ffdf76; + --t-color-transparent-mint9: #92ffe7e9; + --t-color-transparent-mint10: #aefeedf5; + --t-color-transparent-mint11: #67ffded2; + --t-color-transparent-mint12: #cbfee9f5; + --t-color-transparent-lime1: #11bb0003; + --t-color-transparent-lime2: #78f7000a; + --t-color-transparent-lime3: #9bfd4c1a; + --t-color-transparent-lime4: #a7fe5c29; + --t-color-transparent-lime5: #affe6537; + --t-color-transparent-lime6: #b2fe6d46; + --t-color-transparent-lime7: #b6ff6f57; + --t-color-transparent-lime8: #b6fd6d6c; + --t-color-transparent-lime9: #caff69ed; + --t-color-transparent-lime10: #d4ff70; + --t-color-transparent-lime11: #d1fe77e4; + --t-color-transparent-lime12: #e9febff7; + --t-color-transparent-bronze1: #d1110004; + --t-color-transparent-bronze2: #fbbc910c; + --t-color-transparent-bronze3: #faceb817; + --t-color-transparent-bronze4: #facdb622; + --t-color-transparent-bronze5: #ffd2c12d; + --t-color-transparent-bronze6: #ffd1c03c; + --t-color-transparent-bronze7: #fdd0c04f; + --t-color-transparent-bronze8: #ffd6c565; + --t-color-transparent-bronze9: #fec7b09b; + --t-color-transparent-bronze10: #fecab5a9; + --t-color-transparent-bronze11: #ffd7c6d1; + --t-color-transparent-bronze12: #fff1e9ec; + --t-color-transparent-gold1: #91911102; + --t-color-transparent-gold2: #f9e29d0b; + --t-color-transparent-gold3: #f8ecbb15; + --t-color-transparent-gold4: #ffeec41e; + --t-color-transparent-gold5: #feecc22a; + --t-color-transparent-gold6: #feebcb37; + --t-color-transparent-gold7: #ffedcd48; + --t-color-transparent-gold8: #fdeaca5f; + --t-color-transparent-gold9: #ffdba690; + --t-color-transparent-gold10: #fedfb09d; + --t-color-transparent-gold11: #fee7c6c8; + --t-color-transparent-gold12: #fef7ede7; + --t-color-transparent-brown1: #91110002; + --t-color-transparent-brown2: #fba67c0c; + --t-color-transparent-brown3: #fcb58c19; + --t-color-transparent-brown4: #fbbb8a24; + --t-color-transparent-brown5: #fcb88931; + --t-color-transparent-brown6: #fdba8741; + --t-color-transparent-brown7: #ffbb8856; + --t-color-transparent-brown8: #ffbe8773; + --t-color-transparent-brown9: #feb87da8; + --t-color-transparent-brown10: #ffc18cb3; + --t-color-transparent-brown11: #fed1aad9; + --t-color-transparent-brown12: #feecd4f2; + --t-color-transparent-amber1: #e63c0006; + --t-color-transparent-amber2: #fd9b000d; + --t-color-transparent-amber3: #fa820022; + --t-color-transparent-amber4: #fc820032; + --t-color-transparent-amber5: #fd8b0041; + --t-color-transparent-amber6: #fd9b0051; + --t-color-transparent-amber7: #ffab2567; + --t-color-transparent-amber8: #ffae3587; + --t-color-transparent-amber9: #ffc53d; + --t-color-transparent-amber10: #ffd60a; + --t-color-transparent-amber11: #ffca16; + --t-color-transparent-amber12: #ffe7b3; +} + +/* Squircle corners: progressive enhancement for browsers supporting + corner-shape (Chromium 139+). A squircle needs ~2x the radius of a round + corner to read as the same visual size, so the radius tokens are doubled + here; other browsers keep the base tokens as plain rounded corners. + + Shape rules: + - pill, rounded and the *-round tokens are never doubled: they belong to + elements that keep corner-shape: round (circles, capsules, checkboxes, + chips, tags) and must look identical in both modes. + - Opt a subtree out of squircles with --t-corner-shape: round, or a + single element with corner-shape: round. + - Nested radii must stay concentric in both modes: derive them from the + parent radius token minus the inset, e.g. + calc(var(--t-border-radius-md) - var(--t-spacing-1)). + The token doubles under squircle while the inset does not, which is + exactly what concentricity requires. */ +@supports (corner-shape: squircle) { + .dark { + --t-border-radius-xs: 4px; + --t-border-radius-sm: 8px; + --t-border-radius-md: 16px; + --t-border-radius-lg: 32px; + --t-border-radius-xl: 40px; + --t-border-radius-xxl: 80px; + } + + /* Zero specificity on purpose: any component rule can override it. */ + *, + *::before, + *::after { + corner-shape: var(--t-corner-shape, squircle); + } +} diff --git a/packages/twenty-ui/src/theme/generator/palette/twenty-light.css b/packages/twenty-ui/src/theme/generator/palette/twenty-light.css new file mode 100644 index 00000000..c90c3388 --- /dev/null +++ b/packages/twenty-ui/src/theme/generator/palette/twenty-light.css @@ -0,0 +1,1048 @@ +/* Theme CSS variables, mirrored token-for-token from twenty-ui. + Kept in sync by the theme parity test (src/theme-constants/__tests__). */ + +.light { + --t-icon-size-sm: 14; + --t-icon-size-md: 16; + --t-icon-size-lg: 20; + --t-icon-size-xl: 24; + --t-icon-stroke-sm: 1.6; + --t-icon-stroke-md: 2; + --t-icon-stroke-lg: 2.5; + --t-modal-size-sm-width: 300px; + --t-modal-size-md-width: 400px; + --t-modal-size-lg-width: 53%; + --t-modal-size-xl-width: 1200px; + --t-modal-size-xl-height: 800px; + --t-modal-size-fullscreen-width: 100dvw; + --t-modal-size-fullscreen-height: 100dvh; + --t-text-line-height-lg: 1.5; + --t-text-line-height-md: 1.1; + --t-text-icon-size-medium: 16; + --t-text-icon-size-small: 14; + --t-text-icon-strike-light: 1.6; + --t-text-icon-strike-medium: 2; + --t-text-icon-strike-bold: 2.5; + --t-animation-duration-instant: 0.075; + --t-animation-duration-fast: 0.15; + --t-animation-duration-normal: 0.3; + --t-animation-duration-slow: 1.5; + --t-spacing-multiplicator: 4; + --t-spacing-0: 0px; + --t-spacing-1: 4px; + --t-spacing-2: 8px; + --t-spacing-3: 12px; + --t-spacing-4: 16px; + --t-spacing-5: 20px; + --t-spacing-6: 24px; + --t-spacing-7: 28px; + --t-spacing-8: 32px; + --t-spacing-9: 36px; + --t-spacing-10: 40px; + --t-spacing-11: 44px; + --t-spacing-12: 48px; + --t-spacing-13: 52px; + --t-spacing-14: 56px; + --t-spacing-15: 60px; + --t-spacing-16: 64px; + --t-spacing-17: 68px; + --t-spacing-18: 72px; + --t-spacing-19: 76px; + --t-spacing-20: 80px; + --t-spacing-21: 84px; + --t-spacing-22: 88px; + --t-spacing-23: 92px; + --t-spacing-24: 96px; + --t-spacing-25: 100px; + --t-spacing-26: 104px; + --t-spacing-27: 108px; + --t-spacing-28: 112px; + --t-spacing-29: 116px; + --t-spacing-30: 120px; + --t-spacing-31: 124px; + --t-spacing-32: 128px; + --t-spacing-0_5: 2px; + --t-spacing-1_5: 6px; + --t-between-siblings-gap: 2px; + --t-table-horizontal-cell-margin: 8px; + --t-table-checkbox-column-width: 32px; + --t-table-horizontal-cell-padding: 8px; + --t-side-panel-width: 500px; + --t-clickable-element-background-transition: background 0.1s ease; + --t-last-layer-z-index: 2147483647; + --t-buttons-secondary-text-color: color(display-p3 0.63 0.69 1); + --t-accent-primary: color(display-p3 0.831 0.87 1); + --t-accent-secondary: color(display-p3 0.831 0.87 1); + --t-accent-tertiary: color(display-p3 0.933 0.948 0.992); + --t-accent-quaternary: color(display-p3 0.971 0.977 0.998); + --t-accent-accent3570: color(display-p3 0.569 0.639 0.916); + --t-accent-accent4060: color(display-p3 0.569 0.639 0.916); + --t-accent-accent1: color(display-p3 0.992 0.992 0.996); + --t-accent-accent2: color(display-p3 0.971 0.977 0.998); + --t-accent-accent3: color(display-p3 0.933 0.948 0.992); + --t-accent-accent4: color(display-p3 0.885 0.914 1); + --t-accent-accent5: color(display-p3 0.831 0.87 1); + --t-accent-accent6: color(display-p3 0.767 0.814 0.995); + --t-accent-accent7: color(display-p3 0.685 0.74 0.957); + --t-accent-accent8: color(display-p3 0.569 0.639 0.916); + --t-accent-accent9: color(display-p3 0.276 0.384 0.837); + --t-accent-accent10: color(display-p3 0.234 0.343 0.801); + --t-accent-accent11: color(display-p3 0.256 0.354 0.755); + --t-accent-accent12: color(display-p3 0.133 0.175 0.348); + --t-background-noisy: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIYAAABQCAIAAABTfJr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAF0WlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuOWNjYzRkZTkzLCAyMDIyLzAzLzE0LTE0OjA3OjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjMuMyAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDctMThUMTI6MjY6MzQrMDI6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTA3LTE4VDEyOjI4OjMyKzAyOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTA3LTE4VDEyOjI4OjMyKzAyOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDphZWU5ZDg2OC04OWRmLTRiMDAtYWQ5ZS0zZDQyMTJjZjNhM2UiIHhtcE1NOkRvY3VtZW50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); + --t-background-primary: color(display-p3 1 1 1); + --t-background-secondary: color(display-p3 0.988 0.988 0.988); + --t-background-tertiary: color(display-p3 0.945 0.945 0.945); + --t-background-quaternary: color(display-p3 0.922 0.922 0.922); + --t-background-inverted-primary: color(display-p3 0.2 0.2 0.2); + --t-background-inverted-secondary: color(display-p3 0.4 0.4 0.4); + --t-background-danger: color(display-p3 0.985 0.925 0.925); + --t-background-transparent-primary: color(display-p3 1 1 1 / 0.5); + --t-background-transparent-secondary: color(display-p3 1 1 1 / 0.4); + --t-background-transparent-strong: color(display-p3 0 0 0 / 0.161); + --t-background-transparent-medium: color(display-p3 0 0 0 / 0.078); + --t-background-transparent-light: color(display-p3 0 0 0 / 0.039); + --t-background-transparent-lighter: color(display-p3 0 0 0 / 0.02); + --t-background-transparent-danger: #f3000d14; + --t-background-transparent-blue: #0047f112; + --t-background-transparent-orange: #ff9c0029; + --t-background-transparent-success: #00a43319; + --t-background-overlay-primary: color(display-p3 0 0 0 / 0.722); + --t-background-overlay-secondary: color(display-p3 0 0 0 / 0.361); + --t-background-overlay-tertiary: color(display-p3 0 0 0 / 0.071); + --t-background-radial-gradient: radial-gradient( + 50% 62.62% at 50% 0%, + color(display-p3 0.6 0.6 0.6) 0%, + color(display-p3 0.514 0.514 0.514) 100% + ); + --t-background-radial-gradient-hover: radial-gradient( + 76.32% 95.59% at 50% 0%, + color(display-p3 0.514 0.514 0.514) 0%, + color(display-p3 0.4 0.4 0.4) 100% + ); + --t-background-primary-inverted: color(display-p3 0.2 0.2 0.2); + --t-background-primary-inverted-hover: color(display-p3 0.4 0.4 0.4); + --t-blur-light: blur(6px) saturate(200%) contrast(50%) brightness(130%); + --t-blur-medium: blur(12px) saturate(200%) contrast(50%) brightness(130%); + --t-blur-strong: blur(20px) saturate(200%) contrast(50%) brightness(130%); + --t-border-color-strong: color(display-p3 0.839 0.839 0.839); + --t-border-color-medium: color(display-p3 0.922 0.922 0.922); + --t-border-color-light: color(display-p3 0.945 0.945 0.945); + --t-border-color-secondary-inverted: color(display-p3 0.4 0.4 0.4); + --t-border-color-inverted: color(display-p3 0.2 0.2 0.2); + --t-border-color-danger: color(display-p3 0.984 0.812 0.811); + --t-border-color-blue: color(display-p3 0.685 0.74 0.957); + --t-border-color-transparent-strong: color(display-p3 0 0 0 / 0.071); + --t-border-radius-xs: 2px; + --t-border-radius-sm: 4px; + --t-border-radius-md: 8px; + --t-border-radius-lg: 16px; + --t-border-radius-xl: 20px; + --t-border-radius-xxl: 40px; + --t-border-radius-pill: 999px; + --t-border-radius-rounded: 100%; + --t-border-radius-sm-round: 4px; + --t-border-radius-md-round: 8px; + --t-box-shadow-color: color(display-p3 0 0 0 / 0.039); + --t-box-shadow-light: + 0px 2px 4px 0px color(display-p3 0 0 0 / 0.039), + 0px 0px 4px 0px color(display-p3 0 0 0 / 0.078); + --t-box-shadow-strong: + 2px 4px 16px 0px color(display-p3 0 0 0 / 0.161), + 0px 2px 4px 0px color(display-p3 0 0 0 / 0.078); + --t-box-shadow-underline: 0px 1px 0px 0px color(display-p3 0 0 0 / 0.361); + --t-box-shadow-super-heavy: + 0px 0px 8px 0px color(display-p3 0 0 0 / 0.161), + 0px 8px 64px -16px color(display-p3 0 0 0 / 0.478), + 0px 24px 56px -16px color(display-p3 0 0 0 / 0.078); + --t-font-color-primary: color(display-p3 0.2 0.2 0.2); + --t-font-color-secondary: color(display-p3 0.4 0.4 0.4); + --t-font-color-tertiary: color(display-p3 0.6 0.6 0.6); + --t-font-color-light: color(display-p3 0.702 0.702 0.702); + --t-font-color-extra-light: color(display-p3 0.8 0.8 0.8); + --t-font-color-inverted: color(display-p3 1 1 1); + --t-font-color-danger: color(display-p3 0.83 0.329 0.324); + --t-font-size-xxs: 0.625rem; + --t-font-size-xs: 0.85rem; + --t-font-size-sm: 0.92rem; + --t-font-size-md: 1rem; + --t-font-size-lg: 1.23rem; + --t-font-size-xl: 1.54rem; + --t-font-size-xxl: 1.85rem; + --t-font-weight-regular: 400; + --t-font-weight-medium: 500; + --t-font-weight-semi-bold: 600; + --t-font-family: Inter, sans-serif; + --t-name: light; + --t-snack-bar-success-color: color(display-p3 0.297 0.637 0.581); + --t-snack-bar-success-background-color: #00a43319; + --t-snack-bar-error-color: color(display-p3 0.83 0.329 0.324); + --t-snack-bar-error-background-color: #f3000d14; + --t-snack-bar-warning-color: color(display-p3 0.9 0.45 0.2); + --t-snack-bar-warning-background-color: #ff9c0029; + --t-snack-bar-info-color: color(display-p3 0.276 0.384 0.837); + --t-snack-bar-info-background-color: #0047f112; + --t-snack-bar-default-color: color(display-p3 0.2 0.2 0.2); + --t-snack-bar-default-background-color: color(display-p3 0 0 0 / 0.039); + --t-tag-text-gray: color(display-p3 0.4 0.4 0.4); + --t-tag-text-mauve: color(display-p3 0.395 0.388 0.424); + --t-tag-text-slate: color(display-p3 0.379 0.392 0.421); + --t-tag-text-sage: color(display-p3 0.377 0.395 0.389); + --t-tag-text-olive: color(display-p3 0.38 0.395 0.374); + --t-tag-text-sand: color(display-p3 0.388 0.388 0.37); + --t-tag-text-tomato: color(display-p3 0.755 0.259 0.152); + --t-tag-text-red: color(display-p3 0.744 0.234 0.222); + --t-tag-text-ruby: color(display-p3 0.728 0.211 0.311); + --t-tag-text-crimson: color(display-p3 0.731 0.195 0.388); + --t-tag-text-pink: color(display-p3 0.698 0.219 0.528); + --t-tag-text-plum: color(display-p3 0.543 0.263 0.619); + --t-tag-text-purple: color(display-p3 0.473 0.281 0.687); + --t-tag-text-violet: color(display-p3 0.383 0.317 0.702); + --t-tag-text-iris: color(display-p3 0.337 0.326 0.748); + --t-tag-text-cyan: color(display-p3 0.08 0.48 0.63); + --t-tag-text-turquoise: color(display-p3 0.08 0.5 0.43); + --t-tag-text-sky: color(display-p3 0.193 0.448 0.605); + --t-tag-text-blue: color(display-p3 0.256 0.354 0.755); + --t-tag-text-jade: color(display-p3 0.15 0.5 0.37); + --t-tag-text-green: color(display-p3 0.19 0.5 0.32); + --t-tag-text-grass: color(display-p3 0.263 0.488 0.261); + --t-tag-text-mint: color(display-p3 0.203 0.463 0.397); + --t-tag-text-lime: color(display-p3 0.386 0.482 0.227); + --t-tag-text-bronze: color(display-p3 0.471 0.373 0.336); + --t-tag-text-gold: color(display-p3 0.433 0.386 0.305); + --t-tag-text-brown: color(display-p3 0.485 0.374 0.288); + --t-tag-text-orange: color(display-p3 0.76 0.34 0); + --t-tag-text-amber: color(display-p3 0.64 0.4 0); + --t-tag-text-yellow: color(display-p3 0.6 0.44 0); + --t-tag-background-gray: color(display-p3 0.976 0.976 0.976); + --t-tag-background-mauve: color(display-p3 0.946 0.938 0.952); + --t-tag-background-slate: color(display-p3 0.94 0.941 0.953); + --t-tag-background-sage: color(display-p3 0.935 0.944 0.94); + --t-tag-background-olive: color(display-p3 0.939 0.945 0.937); + --t-tag-background-sand: color(display-p3 0.943 0.942 0.936); + --t-tag-background-tomato: color(display-p3 0.985 0.924 0.909); + --t-tag-background-red: color(display-p3 0.985 0.925 0.925); + --t-tag-background-ruby: color(display-p3 0.983 0.92 0.928); + --t-tag-background-crimson: color(display-p3 0.987 0.917 0.941); + --t-tag-background-pink: color(display-p3 0.981 0.917 0.96); + --t-tag-background-plum: color(display-p3 0.973 0.923 0.98); + --t-tag-background-purple: color(display-p3 0.963 0.931 0.989); + --t-tag-background-violet: color(display-p3 0.953 0.943 0.993); + --t-tag-background-iris: color(display-p3 0.943 0.945 0.992); + --t-tag-background-cyan: color(display-p3 0.888 0.965 0.975); + --t-tag-background-turquoise: color(display-p3 0.895 0.971 0.952); + --t-tag-background-sky: color(display-p3 0.899 0.963 0.989); + --t-tag-background-blue: color(display-p3 0.933 0.948 0.992); + --t-tag-background-jade: color(display-p3 0.912 0.965 0.932); + --t-tag-background-green: color(display-p3 0.913 0.964 0.925); + --t-tag-background-grass: color(display-p3 0.923 0.965 0.917); + --t-tag-background-mint: color(display-p3 0.888 0.972 0.95); + --t-tag-background-lime: color(display-p3 0.939 0.965 0.851); + --t-tag-background-bronze: color(display-p3 0.958 0.932 0.919); + --t-tag-background-gold: color(display-p3 0.947 0.94 0.909); + --t-tag-background-brown: color(display-p3 0.959 0.936 0.909); + --t-tag-background-orange: color(display-p3 0.989 0.938 0.85); + --t-tag-background-amber: color(display-p3 0.994 0.969 0.782); + --t-tag-background-yellow: color(display-p3 0.997 0.982 0.749); + --t-code-text-gray: color(display-p3 0.514 0.514 0.514); + --t-code-text-sky: color(display-p3 0.555 0.845 0.959); + --t-code-text-pink: color(display-p3 0.748 0.27 0.581); + --t-code-text-orange: color(display-p3 0.877 0.597 0.379); + --t-code-text-green: color(display-p3 0.585 0.707 0.378); + --t-code-font-family: DM Mono; + --t--illustration-icon-color-blue: color(display-p3 0.569 0.639 0.916); + --t--illustration-icon-color-gray: color(display-p3 0.6 0.6 0.6); + --t--illustration-icon-fill-blue: color(display-p3 0.831 0.87 1); + --t--illustration-icon-fill-gray: color(display-p3 0.922 0.922 0.922); + --t-gray-scale-gray1: color(display-p3 1 1 1); + --t-gray-scale-gray2: color(display-p3 0.988 0.988 0.988); + --t-gray-scale-gray3: color(display-p3 0.976 0.976 0.976); + --t-gray-scale-gray4: color(display-p3 0.945 0.945 0.945); + --t-gray-scale-gray5: color(display-p3 0.922 0.922 0.922); + --t-gray-scale-gray6: color(display-p3 0.839 0.839 0.839); + --t-gray-scale-gray7: color(display-p3 0.8 0.8 0.8); + --t-gray-scale-gray8: color(display-p3 0.702 0.702 0.702); + --t-gray-scale-gray9: color(display-p3 0.6 0.6 0.6); + --t-gray-scale-gray10: color(display-p3 0.514 0.514 0.514); + --t-gray-scale-gray11: color(display-p3 0.4 0.4 0.4); + --t-gray-scale-gray12: color(display-p3 0.2 0.2 0.2); + --t-color-red: color(display-p3 0.83 0.329 0.324); + --t-color-ruby: color(display-p3 0.83 0.323 0.408); + --t-color-crimson: color(display-p3 0.843 0.298 0.507); + --t-color-tomato: color(display-p3 0.831 0.345 0.231); + --t-color-orange: color(display-p3 0.9 0.45 0.2); + --t-color-amber: color(display-p3 1 0.77 0.26); + --t-color-yellow: color(display-p3 1 0.92 0.22); + --t-color-lime: color(display-p3 0.78 0.928 0.466); + --t-color-grass: color(display-p3 0.38 0.647 0.378); + --t-color-green: color(display-p3 0.332 0.634 0.442); + --t-color-jade: color(display-p3 0.319 0.63 0.521); + --t-color-mint: color(display-p3 0.62 0.908 0.834); + --t-color-turquoise: color(display-p3 0.297 0.637 0.581); + --t-color-cyan: color(display-p3 0.282 0.627 0.765); + --t-color-sky: color(display-p3 0.585 0.877 0.983); + --t-color-blue: color(display-p3 0.276 0.384 0.837); + --t-color-iris: color(display-p3 0.357 0.357 0.81); + --t-color-violet: color(display-p3 0.417 0.341 0.784); + --t-color-purple: color(display-p3 0.523 0.318 0.751); + --t-color-plum: color(display-p3 0.624 0.313 0.708); + --t-color-pink: color(display-p3 0.775 0.297 0.61); + --t-color-bronze: color(display-p3 0.611 0.507 0.455); + --t-color-gold: color(display-p3 0.579 0.517 0.41); + --t-color-brown: color(display-p3 0.651 0.505 0.368); + --t-color-gray: color(display-p3 0.6 0.6 0.6); + --t-color-yellow1: color(display-p3 0.992 0.992 0.978); + --t-color-yellow2: color(display-p3 0.995 0.99 0.922); + --t-color-yellow3: color(display-p3 0.997 0.982 0.749); + --t-color-yellow4: color(display-p3 0.992 0.953 0.627); + --t-color-yellow5: color(display-p3 0.984 0.91 0.51); + --t-color-yellow6: color(display-p3 0.934 0.847 0.474); + --t-color-yellow7: color(display-p3 0.876 0.785 0.46); + --t-color-yellow8: color(display-p3 0.811 0.689 0.313); + --t-color-yellow9: color(display-p3 1 0.92 0.22); + --t-color-yellow10: color(display-p3 0.977 0.868 0.291); + --t-color-yellow11: color(display-p3 0.6 0.44 0); + --t-color-yellow12: color(display-p3 0.271 0.233 0.137); + --t-color-green1: color(display-p3 0.986 0.996 0.989); + --t-color-green2: color(display-p3 0.963 0.983 0.967); + --t-color-green3: color(display-p3 0.913 0.964 0.925); + --t-color-green4: color(display-p3 0.859 0.94 0.879); + --t-color-green5: color(display-p3 0.796 0.907 0.826); + --t-color-green6: color(display-p3 0.718 0.863 0.761); + --t-color-green7: color(display-p3 0.61 0.801 0.675); + --t-color-green8: color(display-p3 0.451 0.715 0.559); + --t-color-green9: color(display-p3 0.332 0.634 0.442); + --t-color-green10: color(display-p3 0.308 0.595 0.417); + --t-color-green11: color(display-p3 0.19 0.5 0.32); + --t-color-green12: color(display-p3 0.132 0.228 0.18); + --t-color-turquoise1: color(display-p3 0.983 0.996 0.992); + --t-color-turquoise2: color(display-p3 0.958 0.983 0.976); + --t-color-turquoise3: color(display-p3 0.895 0.971 0.952); + --t-color-turquoise4: color(display-p3 0.831 0.949 0.92); + --t-color-turquoise5: color(display-p3 0.761 0.914 0.878); + --t-color-turquoise6: color(display-p3 0.682 0.864 0.825); + --t-color-turquoise7: color(display-p3 0.581 0.798 0.756); + --t-color-turquoise8: color(display-p3 0.433 0.716 0.671); + --t-color-turquoise9: color(display-p3 0.297 0.637 0.581); + --t-color-turquoise10: color(display-p3 0.275 0.599 0.542); + --t-color-turquoise11: color(display-p3 0.08 0.5 0.43); + --t-color-turquoise12: color(display-p3 0.11 0.235 0.219); + --t-color-sky1: color(display-p3 0.98 0.995 0.999); + --t-color-sky2: color(display-p3 0.953 0.98 0.99); + --t-color-sky3: color(display-p3 0.899 0.963 0.989); + --t-color-sky4: color(display-p3 0.842 0.937 0.977); + --t-color-sky5: color(display-p3 0.777 0.9 0.954); + --t-color-sky6: color(display-p3 0.701 0.851 0.921); + --t-color-sky7: color(display-p3 0.604 0.785 0.879); + --t-color-sky8: color(display-p3 0.457 0.696 0.829); + --t-color-sky9: color(display-p3 0.585 0.877 0.983); + --t-color-sky10: color(display-p3 0.555 0.845 0.959); + --t-color-sky11: color(display-p3 0.193 0.448 0.605); + --t-color-sky12: color(display-p3 0.145 0.241 0.329); + --t-color-blue1: color(display-p3 0.992 0.992 0.996); + --t-color-blue2: color(display-p3 0.971 0.977 0.998); + --t-color-blue3: color(display-p3 0.933 0.948 0.992); + --t-color-blue4: color(display-p3 0.885 0.914 1); + --t-color-blue5: color(display-p3 0.831 0.87 1); + --t-color-blue6: color(display-p3 0.767 0.814 0.995); + --t-color-blue7: color(display-p3 0.685 0.74 0.957); + --t-color-blue8: color(display-p3 0.569 0.639 0.916); + --t-color-blue9: color(display-p3 0.276 0.384 0.837); + --t-color-blue10: color(display-p3 0.234 0.343 0.801); + --t-color-blue11: color(display-p3 0.256 0.354 0.755); + --t-color-blue12: color(display-p3 0.133 0.175 0.348); + --t-color-purple1: color(display-p3 0.995 0.988 0.996); + --t-color-purple2: color(display-p3 0.983 0.971 0.993); + --t-color-purple3: color(display-p3 0.963 0.931 0.989); + --t-color-purple4: color(display-p3 0.937 0.888 0.981); + --t-color-purple5: color(display-p3 0.904 0.837 0.966); + --t-color-purple6: color(display-p3 0.86 0.774 0.942); + --t-color-purple7: color(display-p3 0.799 0.69 0.91); + --t-color-purple8: color(display-p3 0.719 0.583 0.874); + --t-color-purple9: color(display-p3 0.523 0.318 0.751); + --t-color-purple10: color(display-p3 0.483 0.289 0.7); + --t-color-purple11: color(display-p3 0.473 0.281 0.687); + --t-color-purple12: color(display-p3 0.234 0.132 0.363); + --t-color-pink1: color(display-p3 0.998 0.989 0.996); + --t-color-pink2: color(display-p3 0.992 0.97 0.985); + --t-color-pink3: color(display-p3 0.981 0.917 0.96); + --t-color-pink4: color(display-p3 0.963 0.867 0.932); + --t-color-pink5: color(display-p3 0.939 0.815 0.899); + --t-color-pink6: color(display-p3 0.907 0.756 0.859); + --t-color-pink7: color(display-p3 0.869 0.683 0.81); + --t-color-pink8: color(display-p3 0.825 0.59 0.751); + --t-color-pink9: color(display-p3 0.775 0.297 0.61); + --t-color-pink10: color(display-p3 0.748 0.27 0.581); + --t-color-pink11: color(display-p3 0.698 0.219 0.528); + --t-color-pink12: color(display-p3 0.363 0.101 0.279); + --t-color-red1: color(display-p3 0.998 0.989 0.988); + --t-color-red2: color(display-p3 0.995 0.971 0.971); + --t-color-red3: color(display-p3 0.985 0.925 0.925); + --t-color-red4: color(display-p3 0.999 0.866 0.866); + --t-color-red5: color(display-p3 0.984 0.812 0.811); + --t-color-red6: color(display-p3 0.955 0.751 0.749); + --t-color-red7: color(display-p3 0.915 0.675 0.672); + --t-color-red8: color(display-p3 0.872 0.575 0.572); + --t-color-red9: color(display-p3 0.83 0.329 0.324); + --t-color-red10: color(display-p3 0.798 0.294 0.285); + --t-color-red11: color(display-p3 0.744 0.234 0.222); + --t-color-red12: color(display-p3 0.36 0.115 0.143); + --t-color-orange1: color(display-p3 0.995 0.988 0.985); + --t-color-orange2: color(display-p3 0.994 0.968 0.934); + --t-color-orange3: color(display-p3 0.989 0.938 0.85); + --t-color-orange4: color(display-p3 1 0.874 0.687); + --t-color-orange5: color(display-p3 1 0.821 0.583); + --t-color-orange6: color(display-p3 0.975 0.767 0.545); + --t-color-orange7: color(display-p3 0.919 0.693 0.486); + --t-color-orange8: color(display-p3 0.877 0.597 0.379); + --t-color-orange9: color(display-p3 0.9 0.45 0.2); + --t-color-orange10: color(display-p3 0.87 0.409 0.164); + --t-color-orange11: color(display-p3 0.76 0.34 0); + --t-color-orange12: color(display-p3 0.323 0.185 0.127); + --t-color-gray1: color(display-p3 1 1 1); + --t-color-gray2: color(display-p3 0.988 0.988 0.988); + --t-color-gray3: color(display-p3 0.976 0.976 0.976); + --t-color-gray4: color(display-p3 0.945 0.945 0.945); + --t-color-gray5: color(display-p3 0.922 0.922 0.922); + --t-color-gray6: color(display-p3 0.839 0.839 0.839); + --t-color-gray7: color(display-p3 0.8 0.8 0.8); + --t-color-gray8: color(display-p3 0.702 0.702 0.702); + --t-color-gray9: color(display-p3 0.6 0.6 0.6); + --t-color-gray10: color(display-p3 0.514 0.514 0.514); + --t-color-gray11: color(display-p3 0.4 0.4 0.4); + --t-color-gray12: color(display-p3 0.2 0.2 0.2); + --t-color-mauve1: color(display-p3 0.991 0.988 0.992); + --t-color-mauve2: color(display-p3 0.98 0.976 0.984); + --t-color-mauve3: color(display-p3 0.946 0.938 0.952); + --t-color-mauve4: color(display-p3 0.915 0.906 0.925); + --t-color-mauve5: color(display-p3 0.886 0.876 0.901); + --t-color-mauve6: color(display-p3 0.856 0.846 0.875); + --t-color-mauve7: color(display-p3 0.814 0.804 0.84); + --t-color-mauve8: color(display-p3 0.735 0.728 0.777); + --t-color-mauve9: color(display-p3 0.555 0.549 0.596); + --t-color-mauve10: color(display-p3 0.514 0.508 0.552); + --t-color-mauve11: color(display-p3 0.395 0.388 0.424); + --t-color-mauve12: color(display-p3 0.128 0.122 0.147); + --t-color-slate1: color(display-p3 0.988 0.988 0.992); + --t-color-slate2: color(display-p3 0.976 0.976 0.984); + --t-color-slate3: color(display-p3 0.94 0.941 0.953); + --t-color-slate4: color(display-p3 0.908 0.909 0.925); + --t-color-slate5: color(display-p3 0.88 0.881 0.901); + --t-color-slate6: color(display-p3 0.85 0.852 0.876); + --t-color-slate7: color(display-p3 0.805 0.808 0.838); + --t-color-slate8: color(display-p3 0.727 0.733 0.773); + --t-color-slate9: color(display-p3 0.547 0.553 0.592); + --t-color-slate10: color(display-p3 0.503 0.512 0.549); + --t-color-slate11: color(display-p3 0.379 0.392 0.421); + --t-color-slate12: color(display-p3 0.113 0.125 0.14); + --t-color-sage1: color(display-p3 0.986 0.992 0.988); + --t-color-sage2: color(display-p3 0.97 0.977 0.974); + --t-color-sage3: color(display-p3 0.935 0.944 0.94); + --t-color-sage4: color(display-p3 0.904 0.913 0.909); + --t-color-sage5: color(display-p3 0.875 0.885 0.88); + --t-color-sage6: color(display-p3 0.844 0.854 0.849); + --t-color-sage7: color(display-p3 0.8 0.811 0.806); + --t-color-sage8: color(display-p3 0.725 0.738 0.732); + --t-color-sage9: color(display-p3 0.531 0.556 0.546); + --t-color-sage10: color(display-p3 0.492 0.515 0.506); + --t-color-sage11: color(display-p3 0.377 0.395 0.389); + --t-color-sage12: color(display-p3 0.107 0.129 0.118); + --t-color-olive1: color(display-p3 0.989 0.992 0.989); + --t-color-olive2: color(display-p3 0.974 0.98 0.973); + --t-color-olive3: color(display-p3 0.939 0.945 0.937); + --t-color-olive4: color(display-p3 0.907 0.914 0.905); + --t-color-olive5: color(display-p3 0.878 0.885 0.875); + --t-color-olive6: color(display-p3 0.846 0.855 0.843); + --t-color-olive7: color(display-p3 0.803 0.812 0.8); + --t-color-olive8: color(display-p3 0.727 0.738 0.723); + --t-color-olive9: color(display-p3 0.541 0.556 0.532); + --t-color-olive10: color(display-p3 0.5 0.515 0.491); + --t-color-olive11: color(display-p3 0.38 0.395 0.374); + --t-color-olive12: color(display-p3 0.117 0.129 0.111); + --t-color-sand1: color(display-p3 0.992 0.992 0.989); + --t-color-sand2: color(display-p3 0.977 0.977 0.973); + --t-color-sand3: color(display-p3 0.943 0.942 0.936); + --t-color-sand4: color(display-p3 0.913 0.912 0.903); + --t-color-sand5: color(display-p3 0.885 0.883 0.873); + --t-color-sand6: color(display-p3 0.854 0.852 0.839); + --t-color-sand7: color(display-p3 0.813 0.81 0.794); + --t-color-sand8: color(display-p3 0.738 0.734 0.713); + --t-color-sand9: color(display-p3 0.553 0.553 0.528); + --t-color-sand10: color(display-p3 0.511 0.511 0.488); + --t-color-sand11: color(display-p3 0.388 0.388 0.37); + --t-color-sand12: color(display-p3 0.129 0.126 0.111); + --t-color-tomato1: color(display-p3 0.998 0.989 0.988); + --t-color-tomato2: color(display-p3 0.994 0.974 0.969); + --t-color-tomato3: color(display-p3 0.985 0.924 0.909); + --t-color-tomato4: color(display-p3 0.996 0.868 0.835); + --t-color-tomato5: color(display-p3 0.98 0.812 0.77); + --t-color-tomato6: color(display-p3 0.953 0.75 0.698); + --t-color-tomato7: color(display-p3 0.917 0.673 0.611); + --t-color-tomato8: color(display-p3 0.875 0.575 0.502); + --t-color-tomato9: color(display-p3 0.831 0.345 0.231); + --t-color-tomato10: color(display-p3 0.802 0.313 0.2); + --t-color-tomato11: color(display-p3 0.755 0.259 0.152); + --t-color-tomato12: color(display-p3 0.335 0.165 0.132); + --t-color-ruby1: color(display-p3 0.998 0.989 0.992); + --t-color-ruby2: color(display-p3 0.995 0.971 0.974); + --t-color-ruby3: color(display-p3 0.983 0.92 0.928); + --t-color-ruby4: color(display-p3 0.987 0.869 0.885); + --t-color-ruby5: color(display-p3 0.968 0.817 0.839); + --t-color-ruby6: color(display-p3 0.937 0.758 0.786); + --t-color-ruby7: color(display-p3 0.897 0.685 0.721); + --t-color-ruby8: color(display-p3 0.851 0.588 0.639); + --t-color-ruby9: color(display-p3 0.83 0.323 0.408); + --t-color-ruby10: color(display-p3 0.795 0.286 0.375); + --t-color-ruby11: color(display-p3 0.728 0.211 0.311); + --t-color-ruby12: color(display-p3 0.36 0.115 0.171); + --t-color-crimson1: color(display-p3 0.998 0.989 0.992); + --t-color-crimson2: color(display-p3 0.991 0.969 0.976); + --t-color-crimson3: color(display-p3 0.987 0.917 0.941); + --t-color-crimson4: color(display-p3 0.975 0.866 0.904); + --t-color-crimson5: color(display-p3 0.953 0.813 0.864); + --t-color-crimson6: color(display-p3 0.921 0.755 0.817); + --t-color-crimson7: color(display-p3 0.88 0.683 0.761); + --t-color-crimson8: color(display-p3 0.834 0.592 0.694); + --t-color-crimson9: color(display-p3 0.843 0.298 0.507); + --t-color-crimson10: color(display-p3 0.807 0.266 0.468); + --t-color-crimson11: color(display-p3 0.731 0.195 0.388); + --t-color-crimson12: color(display-p3 0.352 0.111 0.221); + --t-color-plum1: color(display-p3 0.995 0.988 0.999); + --t-color-plum2: color(display-p3 0.988 0.971 0.99); + --t-color-plum3: color(display-p3 0.973 0.923 0.98); + --t-color-plum4: color(display-p3 0.953 0.875 0.966); + --t-color-plum5: color(display-p3 0.926 0.825 0.945); + --t-color-plum6: color(display-p3 0.89 0.765 0.916); + --t-color-plum7: color(display-p3 0.84 0.686 0.877); + --t-color-plum8: color(display-p3 0.775 0.58 0.832); + --t-color-plum9: color(display-p3 0.624 0.313 0.708); + --t-color-plum10: color(display-p3 0.587 0.29 0.667); + --t-color-plum11: color(display-p3 0.543 0.263 0.619); + --t-color-plum12: color(display-p3 0.299 0.114 0.352); + --t-color-violet1: color(display-p3 0.991 0.988 0.995); + --t-color-violet2: color(display-p3 0.978 0.974 0.998); + --t-color-violet3: color(display-p3 0.953 0.943 0.993); + --t-color-violet4: color(display-p3 0.916 0.897 1); + --t-color-violet5: color(display-p3 0.876 0.851 1); + --t-color-violet6: color(display-p3 0.825 0.793 0.981); + --t-color-violet7: color(display-p3 0.752 0.712 0.943); + --t-color-violet8: color(display-p3 0.654 0.602 0.902); + --t-color-violet9: color(display-p3 0.417 0.341 0.784); + --t-color-violet10: color(display-p3 0.381 0.306 0.741); + --t-color-violet11: color(display-p3 0.383 0.317 0.702); + --t-color-violet12: color(display-p3 0.179 0.15 0.359); + --t-color-iris1: color(display-p3 0.992 0.992 0.999); + --t-color-iris2: color(display-p3 0.972 0.973 0.998); + --t-color-iris3: color(display-p3 0.943 0.945 0.992); + --t-color-iris4: color(display-p3 0.902 0.906 1); + --t-color-iris5: color(display-p3 0.857 0.861 1); + --t-color-iris6: color(display-p3 0.799 0.805 0.987); + --t-color-iris7: color(display-p3 0.721 0.727 0.955); + --t-color-iris8: color(display-p3 0.61 0.619 0.918); + --t-color-iris9: color(display-p3 0.357 0.357 0.81); + --t-color-iris10: color(display-p3 0.318 0.318 0.774); + --t-color-iris11: color(display-p3 0.337 0.326 0.748); + --t-color-iris12: color(display-p3 0.154 0.161 0.371); + --t-color-cyan1: color(display-p3 0.982 0.992 0.996); + --t-color-cyan2: color(display-p3 0.955 0.981 0.984); + --t-color-cyan3: color(display-p3 0.888 0.965 0.975); + --t-color-cyan4: color(display-p3 0.821 0.941 0.959); + --t-color-cyan5: color(display-p3 0.751 0.907 0.935); + --t-color-cyan6: color(display-p3 0.671 0.862 0.9); + --t-color-cyan7: color(display-p3 0.564 0.8 0.854); + --t-color-cyan8: color(display-p3 0.388 0.715 0.798); + --t-color-cyan9: color(display-p3 0.282 0.627 0.765); + --t-color-cyan10: color(display-p3 0.264 0.583 0.71); + --t-color-cyan11: color(display-p3 0.08 0.48 0.63); + --t-color-cyan12: color(display-p3 0.108 0.232 0.277); + --t-color-jade1: color(display-p3 0.986 0.996 0.992); + --t-color-jade2: color(display-p3 0.962 0.983 0.969); + --t-color-jade3: color(display-p3 0.912 0.965 0.932); + --t-color-jade4: color(display-p3 0.858 0.941 0.893); + --t-color-jade5: color(display-p3 0.795 0.909 0.847); + --t-color-jade6: color(display-p3 0.715 0.864 0.791); + --t-color-jade7: color(display-p3 0.603 0.802 0.718); + --t-color-jade8: color(display-p3 0.44 0.72 0.629); + --t-color-jade9: color(display-p3 0.319 0.63 0.521); + --t-color-jade10: color(display-p3 0.299 0.592 0.488); + --t-color-jade11: color(display-p3 0.15 0.5 0.37); + --t-color-jade12: color(display-p3 0.142 0.229 0.194); + --t-color-grass1: color(display-p3 0.986 0.996 0.985); + --t-color-grass2: color(display-p3 0.966 0.983 0.964); + --t-color-grass3: color(display-p3 0.923 0.965 0.917); + --t-color-grass4: color(display-p3 0.872 0.94 0.865); + --t-color-grass5: color(display-p3 0.811 0.908 0.802); + --t-color-grass6: color(display-p3 0.733 0.864 0.724); + --t-color-grass7: color(display-p3 0.628 0.803 0.622); + --t-color-grass8: color(display-p3 0.477 0.72 0.482); + --t-color-grass9: color(display-p3 0.38 0.647 0.378); + --t-color-grass10: color(display-p3 0.344 0.598 0.342); + --t-color-grass11: color(display-p3 0.263 0.488 0.261); + --t-color-grass12: color(display-p3 0.151 0.233 0.153); + --t-color-mint1: color(display-p3 0.98 0.995 0.992); + --t-color-mint2: color(display-p3 0.957 0.985 0.977); + --t-color-mint3: color(display-p3 0.888 0.972 0.95); + --t-color-mint4: color(display-p3 0.819 0.951 0.916); + --t-color-mint5: color(display-p3 0.747 0.918 0.873); + --t-color-mint6: color(display-p3 0.668 0.87 0.818); + --t-color-mint7: color(display-p3 0.567 0.805 0.744); + --t-color-mint8: color(display-p3 0.42 0.724 0.649); + --t-color-mint9: color(display-p3 0.62 0.908 0.834); + --t-color-mint10: color(display-p3 0.585 0.871 0.797); + --t-color-mint11: color(display-p3 0.203 0.463 0.397); + --t-color-mint12: color(display-p3 0.136 0.259 0.236); + --t-color-lime1: color(display-p3 0.989 0.992 0.981); + --t-color-lime2: color(display-p3 0.975 0.98 0.954); + --t-color-lime3: color(display-p3 0.939 0.965 0.851); + --t-color-lime4: color(display-p3 0.896 0.94 0.76); + --t-color-lime5: color(display-p3 0.843 0.903 0.678); + --t-color-lime6: color(display-p3 0.778 0.852 0.599); + --t-color-lime7: color(display-p3 0.694 0.784 0.508); + --t-color-lime8: color(display-p3 0.585 0.707 0.378); + --t-color-lime9: color(display-p3 0.78 0.928 0.466); + --t-color-lime10: color(display-p3 0.734 0.896 0.397); + --t-color-lime11: color(display-p3 0.386 0.482 0.227); + --t-color-lime12: color(display-p3 0.222 0.25 0.128); + --t-color-bronze1: color(display-p3 0.991 0.988 0.988); + --t-color-bronze2: color(display-p3 0.989 0.97 0.961); + --t-color-bronze3: color(display-p3 0.958 0.932 0.919); + --t-color-bronze4: color(display-p3 0.929 0.894 0.877); + --t-color-bronze5: color(display-p3 0.898 0.853 0.832); + --t-color-bronze6: color(display-p3 0.861 0.805 0.778); + --t-color-bronze7: color(display-p3 0.812 0.739 0.706); + --t-color-bronze8: color(display-p3 0.741 0.647 0.606); + --t-color-bronze9: color(display-p3 0.611 0.507 0.455); + --t-color-bronze10: color(display-p3 0.563 0.461 0.414); + --t-color-bronze11: color(display-p3 0.471 0.373 0.336); + --t-color-bronze12: color(display-p3 0.251 0.191 0.172); + --t-color-gold1: color(display-p3 0.992 0.992 0.989); + --t-color-gold2: color(display-p3 0.98 0.976 0.953); + --t-color-gold3: color(display-p3 0.947 0.94 0.909); + --t-color-gold4: color(display-p3 0.914 0.904 0.865); + --t-color-gold5: color(display-p3 0.88 0.865 0.816); + --t-color-gold6: color(display-p3 0.84 0.818 0.756); + --t-color-gold7: color(display-p3 0.788 0.753 0.677); + --t-color-gold8: color(display-p3 0.715 0.66 0.565); + --t-color-gold9: color(display-p3 0.579 0.517 0.41); + --t-color-gold10: color(display-p3 0.538 0.479 0.38); + --t-color-gold11: color(display-p3 0.433 0.386 0.305); + --t-color-gold12: color(display-p3 0.227 0.209 0.173); + --t-color-brown1: color(display-p3 0.995 0.992 0.989); + --t-color-brown2: color(display-p3 0.987 0.976 0.964); + --t-color-brown3: color(display-p3 0.959 0.936 0.909); + --t-color-brown4: color(display-p3 0.934 0.897 0.855); + --t-color-brown5: color(display-p3 0.909 0.856 0.798); + --t-color-brown6: color(display-p3 0.88 0.808 0.73); + --t-color-brown7: color(display-p3 0.841 0.742 0.639); + --t-color-brown8: color(display-p3 0.782 0.647 0.514); + --t-color-brown9: color(display-p3 0.651 0.505 0.368); + --t-color-brown10: color(display-p3 0.601 0.465 0.344); + --t-color-brown11: color(display-p3 0.485 0.374 0.288); + --t-color-brown12: color(display-p3 0.236 0.202 0.183); + --t-color-amber1: color(display-p3 0.995 0.992 0.985); + --t-color-amber2: color(display-p3 0.994 0.986 0.921); + --t-color-amber3: color(display-p3 0.994 0.969 0.782); + --t-color-amber4: color(display-p3 0.989 0.937 0.65); + --t-color-amber5: color(display-p3 0.97 0.902 0.527); + --t-color-amber6: color(display-p3 0.936 0.844 0.506); + --t-color-amber7: color(display-p3 0.89 0.762 0.443); + --t-color-amber8: color(display-p3 0.85 0.65 0.3); + --t-color-amber9: color(display-p3 1 0.77 0.26); + --t-color-amber10: color(display-p3 0.959 0.741 0.274); + --t-color-amber11: color(display-p3 0.64 0.4 0); + --t-color-amber12: color(display-p3 0.294 0.208 0.145); + --t-color-transparent-green1: #00c04004; + --t-color-transparent-green2: #00a32f0b; + --t-color-transparent-green3: #00a43319; + --t-color-transparent-green4: #00a83829; + --t-color-transparent-green5: #019c393b; + --t-color-transparent-green6: #00963c52; + --t-color-transparent-green7: #00914071; + --t-color-transparent-green8: #00924ba4; + --t-color-transparent-green9: #008f4acf; + --t-color-transparent-green10: #008647d4; + --t-color-transparent-green11: #00713fde; + --t-color-transparent-green12: #002616e6; + --t-color-transparent-turquoise1: #00cc9905; + --t-color-transparent-turquoise2: #00aa800c; + --t-color-transparent-turquoise3: #00c69d1f; + --t-color-transparent-turquoise4: #00c39633; + --t-color-transparent-turquoise5: #00b49047; + --t-color-transparent-turquoise6: #00a6855e; + --t-color-transparent-turquoise7: #0099807c; + --t-color-transparent-turquoise8: #009783ac; + --t-color-transparent-turquoise9: #009e8ced; + --t-color-transparent-turquoise10: #009684f2; + --t-color-transparent-turquoise11: #008573; + --t-color-transparent-turquoise12: #00332df2; + --t-color-transparent-sky1: #00d5ff06; + --t-color-transparent-sky2: #00a4db0e; + --t-color-transparent-sky3: #00b3ee1e; + --t-color-transparent-sky4: #00ace42e; + --t-color-transparent-sky5: #00a1d841; + --t-color-transparent-sky6: #0092ca56; + --t-color-transparent-sky7: #0089c172; + --t-color-transparent-sky8: #0085bf9f; + --t-color-transparent-sky9: #00c7fe83; + --t-color-transparent-sky10: #00bcf38b; + --t-color-transparent-sky11: #00749e; + --t-color-transparent-sky12: #002540e2; + --t-color-transparent-blue1: #00008002; + --t-color-transparent-blue2: #0040ff08; + --t-color-transparent-blue3: #0047f112; + --t-color-transparent-blue4: #0044ff1e; + --t-color-transparent-blue5: #0044ff2d; + --t-color-transparent-blue6: #003eff3e; + --t-color-transparent-blue7: #0037ed54; + --t-color-transparent-blue8: #0034dc72; + --t-color-transparent-blue9: #0031d2c1; + --t-color-transparent-blue10: #002ec9cc; + --t-color-transparent-blue11: #002bb7c5; + --t-color-transparent-blue12: #001046e0; + --t-color-transparent-purple1: #aa00aa03; + --t-color-transparent-purple2: #8000e008; + --t-color-transparent-purple3: #8e00f112; + --t-color-transparent-purple4: #8d00e51d; + --t-color-transparent-purple5: #8000db2a; + --t-color-transparent-purple6: #7a01d03b; + --t-color-transparent-purple7: #6d00c350; + --t-color-transparent-purple8: #6600c06c; + --t-color-transparent-purple9: #5c00adb1; + --t-color-transparent-purple10: #53009eb8; + --t-color-transparent-purple11: #52009aba; + --t-color-transparent-purple12: #250049df; + --t-color-transparent-pink1: #ff00aa03; + --t-color-transparent-pink2: #e0008008; + --t-color-transparent-pink3: #f4008c16; + --t-color-transparent-pink4: #e2008b23; + --t-color-transparent-pink5: #d1008331; + --t-color-transparent-pink6: #c0007840; + --t-color-transparent-pink7: #b6006f53; + --t-color-transparent-pink8: #af006f6c; + --t-color-transparent-pink9: #c8007fbf; + --t-color-transparent-pink10: #c2007ac7; + --t-color-transparent-pink11: #b60074d6; + --t-color-transparent-pink12: #59003bed; + --t-color-transparent-red1: #ff000003; + --t-color-transparent-red2: #ff000008; + --t-color-transparent-red3: #f3000d14; + --t-color-transparent-red4: #ff000824; + --t-color-transparent-red5: #ff000632; + --t-color-transparent-red6: #f8000442; + --t-color-transparent-red7: #df000356; + --t-color-transparent-red8: #d2000571; + --t-color-transparent-red9: #db0007b7; + --t-color-transparent-red10: #d10005c1; + --t-color-transparent-red11: #c40006d3; + --t-color-transparent-red12: #55000de8; + --t-color-transparent-orange1: #c0400004; + --t-color-transparent-orange2: #ff8e0012; + --t-color-transparent-orange3: #ff9c0029; + --t-color-transparent-orange4: #ff91014a; + --t-color-transparent-orange5: #ff8b0065; + --t-color-transparent-orange6: #ff81007d; + --t-color-transparent-orange7: #ed6c008c; + --t-color-transparent-orange8: #e35f00aa; + --t-color-transparent-orange9: #f65e00ea; + --t-color-transparent-orange10: #ef5f00; + --t-color-transparent-orange11: #cc4e00; + --t-color-transparent-orange12: #431200e2; + --t-color-transparent-yellow1: #aaaa0006; + --t-color-transparent-yellow2: #f4dd0016; + --t-color-transparent-yellow3: #ffee0047; + --t-color-transparent-yellow4: #ffe3016b; + --t-color-transparent-yellow5: #ffd5008f; + --t-color-transparent-yellow6: #ebbc0097; + --t-color-transparent-yellow7: #d2a10098; + --t-color-transparent-yellow8: #c99700c6; + --t-color-transparent-yellow9: #ffe100d6; + --t-color-transparent-yellow10: #ffdc00; + --t-color-transparent-yellow11: #9e6c00; + --t-color-transparent-yellow12: #2e2000e0; + --t-color-transparent-gray1: color(display-p3 0 0 0 / 0.02); + --t-color-transparent-gray2: color(display-p3 0 0 0 / 0.039); + --t-color-transparent-gray3: color(display-p3 0 0 0 / 0.047); + --t-color-transparent-gray4: color(display-p3 0 0 0 / 0.071); + --t-color-transparent-gray5: color(display-p3 0 0 0 / 0.078); + --t-color-transparent-gray6: color(display-p3 0 0 0 / 0.114); + --t-color-transparent-gray7: color(display-p3 0 0 0 / 0.161); + --t-color-transparent-gray8: color(display-p3 0 0 0 / 0.22); + --t-color-transparent-gray9: color(display-p3 0 0 0 / 0.361); + --t-color-transparent-gray10: color(display-p3 0 0 0 / 0.478); + --t-color-transparent-gray11: color(display-p3 0 0 0 / 0.722); + --t-color-transparent-gray12: color(display-p3 0 0 0 / 0.91); + --t-color-transparent-mauve1: #55005503; + --t-color-transparent-mauve2: #2b005506; + --t-color-transparent-mauve3: #30004010; + --t-color-transparent-mauve4: #20003618; + --t-color-transparent-mauve5: #20003820; + --t-color-transparent-mauve6: #14003527; + --t-color-transparent-mauve7: #10003332; + --t-color-transparent-mauve8: #08003145; + --t-color-transparent-mauve9: #05001d73; + --t-color-transparent-mauve10: #0500197d; + --t-color-transparent-mauve11: #0400119c; + --t-color-transparent-mauve12: #020008e0; + --t-color-transparent-slate1: #00005503; + --t-color-transparent-slate2: #00005506; + --t-color-transparent-slate3: #0000330f; + --t-color-transparent-slate4: #00002d17; + --t-color-transparent-slate5: #0009321f; + --t-color-transparent-slate6: #00002f26; + --t-color-transparent-slate7: #00062e32; + --t-color-transparent-slate8: #00083046; + --t-color-transparent-slate9: #00051d74; + --t-color-transparent-slate10: #00071b7f; + --t-color-transparent-slate11: #0007149f; + --t-color-transparent-slate12: #000509e3; + --t-color-transparent-sage1: #00804004; + --t-color-transparent-sage2: #00402008; + --t-color-transparent-sage3: #002d1e11; + --t-color-transparent-sage4: #001f1519; + --t-color-transparent-sage5: #00180820; + --t-color-transparent-sage6: #00140d28; + --t-color-transparent-sage7: #00140a34; + --t-color-transparent-sage8: #000f0847; + --t-color-transparent-sage9: #00110b79; + --t-color-transparent-sage10: #00100a83; + --t-color-transparent-sage11: #000a07a0; + --t-color-transparent-sage12: #000805e5; + --t-color-transparent-olive1: #00550003; + --t-color-transparent-olive2: #00490007; + --t-color-transparent-olive3: #00200010; + --t-color-transparent-olive4: #00160018; + --t-color-transparent-olive5: #00180020; + --t-color-transparent-olive6: #00140028; + --t-color-transparent-olive7: #000f0033; + --t-color-transparent-olive8: #040f0047; + --t-color-transparent-olive9: #050f0078; + --t-color-transparent-olive10: #040e0082; + --t-color-transparent-olive11: #020a00a0; + --t-color-transparent-olive12: #010600e3; + --t-color-transparent-sand1: #55550003; + --t-color-transparent-sand2: #25250007; + --t-color-transparent-sand3: #20100010; + --t-color-transparent-sand4: #1f150019; + --t-color-transparent-sand5: #1f180021; + --t-color-transparent-sand6: #19130029; + --t-color-transparent-sand7: #19140035; + --t-color-transparent-sand8: #1915014a; + --t-color-transparent-sand9: #0f0f0079; + --t-color-transparent-sand10: #0c0c0083; + --t-color-transparent-sand11: #080800a1; + --t-color-transparent-sand12: #060500e3; + --t-color-transparent-tomato1: #ff000003; + --t-color-transparent-tomato2: #ff200008; + --t-color-transparent-tomato3: #f52b0018; + --t-color-transparent-tomato4: #ff35002c; + --t-color-transparent-tomato5: #ff2e003d; + --t-color-transparent-tomato6: #f92d0050; + --t-color-transparent-tomato7: #e7280067; + --t-color-transparent-tomato8: #db250084; + --t-color-transparent-tomato9: #df2600d1; + --t-color-transparent-tomato10: #d72400da; + --t-color-transparent-tomato11: #cd2200ea; + --t-color-transparent-tomato12: #460900e0; + --t-color-transparent-ruby1: #ff005503; + --t-color-transparent-ruby2: #ff002008; + --t-color-transparent-ruby3: #f3002515; + --t-color-transparent-ruby4: #ff002523; + --t-color-transparent-ruby5: #ff002a31; + --t-color-transparent-ruby6: #e4002440; + --t-color-transparent-ruby7: #ce002553; + --t-color-transparent-ruby8: #c300286d; + --t-color-transparent-ruby9: #db002cb9; + --t-color-transparent-ruby10: #d2002cc4; + --t-color-transparent-ruby11: #c10030db; + --t-color-transparent-ruby12: #550016e8; + --t-color-transparent-crimson1: #ff005503; + --t-color-transparent-crimson2: #e0004008; + --t-color-transparent-crimson3: #ff005216; + --t-color-transparent-crimson4: #f8005123; + --t-color-transparent-crimson5: #e5004f31; + --t-color-transparent-crimson6: #d0004b41; + --t-color-transparent-crimson7: #bf004753; + --t-color-transparent-crimson8: #b6004a6c; + --t-color-transparent-crimson9: #e2005bc2; + --t-color-transparent-crimson10: #d70056cb; + --t-color-transparent-crimson11: #c4004fe2; + --t-color-transparent-crimson12: #530026e9; + --t-color-transparent-plum1: #aa00ff03; + --t-color-transparent-plum2: #c000c008; + --t-color-transparent-plum3: #cc00cc14; + --t-color-transparent-plum4: #c200c921; + --t-color-transparent-plum5: #b700bd2e; + --t-color-transparent-plum6: #a400b03d; + --t-color-transparent-plum7: #9900a852; + --t-color-transparent-plum8: #9000a56e; + --t-color-transparent-plum9: #89009eb5; + --t-color-transparent-plum10: #7f0092bb; + --t-color-transparent-plum11: #730086c1; + --t-color-transparent-plum12: #40004be6; + --t-color-transparent-violet1: #5500aa03; + --t-color-transparent-violet2: #4900ff07; + --t-color-transparent-violet3: #4400ee0f; + --t-color-transparent-violet4: #4300ff1b; + --t-color-transparent-violet5: #3600ff26; + --t-color-transparent-violet6: #3100fb35; + --t-color-transparent-violet7: #2d01dd4a; + --t-color-transparent-violet8: #2b00d066; + --t-color-transparent-violet9: #2400b7a9; + --t-color-transparent-violet10: #2300abb2; + --t-color-transparent-violet11: #1f0099af; + --t-color-transparent-violet12: #0b0043d9; + --t-color-transparent-iris1: #0000ff02; + --t-color-transparent-iris2: #0000ff07; + --t-color-transparent-iris3: #0011ee0f; + --t-color-transparent-iris4: #000bff19; + --t-color-transparent-iris5: #000eff25; + --t-color-transparent-iris6: #000aff34; + --t-color-transparent-iris7: #0008e647; + --t-color-transparent-iris8: #0008d964; + --t-color-transparent-iris9: #0000c0a4; + --t-color-transparent-iris10: #0000b6ae; + --t-color-transparent-iris11: #0600abac; + --t-color-transparent-iris12: #000246d8; + --t-color-transparent-cyan1: #0099cc05; + --t-color-transparent-cyan2: #009db10d; + --t-color-transparent-cyan3: #00c2d121; + --t-color-transparent-cyan4: #00bcd435; + --t-color-transparent-cyan5: #01b4cc4a; + --t-color-transparent-cyan6: #00a7c162; + --t-color-transparent-cyan7: #009fbb82; + --t-color-transparent-cyan8: #00a3c0c2; + --t-color-transparent-cyan9: #00a2c7; + --t-color-transparent-cyan10: #0094b7f8; + --t-color-transparent-cyan11: #007491ef; + --t-color-transparent-cyan12: #00323ef2; + --t-color-transparent-jade1: #00c08004; + --t-color-transparent-jade2: #00a3460b; + --t-color-transparent-jade3: #00ae4819; + --t-color-transparent-jade4: #00a85129; + --t-color-transparent-jade5: #00a2553c; + --t-color-transparent-jade6: #009a5753; + --t-color-transparent-jade7: #00945f74; + --t-color-transparent-jade8: #00976ea9; + --t-color-transparent-jade9: #00916bd6; + --t-color-transparent-jade10: #008764d9; + --t-color-transparent-jade11: #007152df; + --t-color-transparent-jade12: #002217e2; + --t-color-transparent-grass1: #00c00004; + --t-color-transparent-grass2: #0099000a; + --t-color-transparent-grass3: #00970016; + --t-color-transparent-grass4: #009f0725; + --t-color-transparent-grass5: #00930536; + --t-color-transparent-grass6: #008f0a4d; + --t-color-transparent-grass7: #018b0f6b; + --t-color-transparent-grass8: #008d199a; + --t-color-transparent-grass9: #008619b9; + --t-color-transparent-grass10: #007b17c1; + --t-color-transparent-grass11: #006514d5; + --t-color-transparent-grass12: #002006df; + --t-color-transparent-mint1: #00d5aa06; + --t-color-transparent-mint2: #00b18a0d; + --t-color-transparent-mint3: #00d29e22; + --t-color-transparent-mint4: #00cc9937; + --t-color-transparent-mint5: #00c0914c; + --t-color-transparent-mint6: #00b08663; + --t-color-transparent-mint7: #00a17d81; + --t-color-transparent-mint8: #009e7fb3; + --t-color-transparent-mint9: #00d3a579; + --t-color-transparent-mint10: #00c39982; + --t-color-transparent-mint11: #007763fd; + --t-color-transparent-mint12: #00312ae9; + --t-color-transparent-lime1: #66990005; + --t-color-transparent-lime2: #6b95000c; + --t-color-transparent-lime3: #96c80029; + --t-color-transparent-lime4: #8fc60042; + --t-color-transparent-lime5: #81bb0059; + --t-color-transparent-lime6: #72aa006e; + --t-color-transparent-lime7: #61990087; + --t-color-transparent-lime8: #559200ab; + --t-color-transparent-lime9: #93e4009c; + --t-color-transparent-lime10: #8fdc00b3; + --t-color-transparent-lime11: #375f00d0; + --t-color-transparent-lime12: #1e2900e3; + --t-color-transparent-bronze1: #55000003; + --t-color-transparent-bronze2: #cc33000a; + --t-color-transparent-bronze3: #92250015; + --t-color-transparent-bronze4: #80280020; + --t-color-transparent-bronze5: #7423002c; + --t-color-transparent-bronze6: #7324003a; + --t-color-transparent-bronze7: #6c1f004c; + --t-color-transparent-bronze8: #671c0066; + --t-color-transparent-bronze9: #551a008d; + --t-color-transparent-bronze10: #4c150097; + --t-color-transparent-bronze11: #3d0f00ab; + --t-color-transparent-bronze12: #1d0600d4; + --t-color-transparent-gold1: #55550003; + --t-color-transparent-gold2: #9d8a000d; + --t-color-transparent-gold3: #75600018; + --t-color-transparent-gold4: #6b4e0024; + --t-color-transparent-gold5: #60460030; + --t-color-transparent-gold6: #64440040; + --t-color-transparent-gold7: #63420055; + --t-color-transparent-gold8: #633d0072; + --t-color-transparent-gold9: #5332009a; + --t-color-transparent-gold10: #492d00a1; + --t-color-transparent-gold11: #362100b4; + --t-color-transparent-gold12: #130c00d4; + --t-color-transparent-brown1: #aa550003; + --t-color-transparent-brown2: #aa550009; + --t-color-transparent-brown3: #a04b0018; + --t-color-transparent-brown4: #9b4a0026; + --t-color-transparent-brown5: #9f4d0035; + --t-color-transparent-brown6: #a04e0048; + --t-color-transparent-brown7: #a34e0060; + --t-color-transparent-brown8: #9f4a0081; + --t-color-transparent-brown9: #823c00a7; + --t-color-transparent-brown10: #723300ac; + --t-color-transparent-brown11: #522100b9; + --t-color-transparent-brown12: #140600d1; + --t-color-transparent-amber1: #c0800004; + --t-color-transparent-amber2: #f4d10016; + --t-color-transparent-amber3: #ffde003d; + --t-color-transparent-amber4: #ffd40063; + --t-color-transparent-amber5: #f8cf0088; + --t-color-transparent-amber6: #eab5008c; + --t-color-transparent-amber7: #dc9b009d; + --t-color-transparent-amber8: #da8a00c9; + --t-color-transparent-amber9: #ffb300c2; + --t-color-transparent-amber10: #ffb300e7; + --t-color-transparent-amber11: #ab6400; + --t-color-transparent-amber12: #341500dd; +} + +/* Squircle corners: progressive enhancement for browsers supporting + corner-shape (Chromium 139+). A squircle needs ~2x the radius of a round + corner to read as the same visual size, so the radius tokens are doubled + here; other browsers keep the base tokens as plain rounded corners. + + Shape rules: + - pill, rounded and the *-round tokens are never doubled: they belong to + elements that keep corner-shape: round (circles, capsules, checkboxes, + chips, tags) and must look identical in both modes. + - Opt a subtree out of squircles with --t-corner-shape: round, or a + single element with corner-shape: round. + - Nested radii must stay concentric in both modes: derive them from the + parent radius token minus the inset, e.g. + calc(var(--t-border-radius-md) - var(--t-spacing-1)). + The token doubles under squircle while the inset does not, which is + exactly what concentricity requires. */ +@supports (corner-shape: squircle) { + .light { + --t-border-radius-xs: 4px; + --t-border-radius-sm: 8px; + --t-border-radius-md: 16px; + --t-border-radius-lg: 32px; + --t-border-radius-xl: 40px; + --t-border-radius-xxl: 80px; + } + + /* Zero specificity on purpose: any component rule can override it. */ + *, + *::before, + *::after { + corner-shape: var(--t-corner-shape, squircle); + } +} From c7b26b08adf9b483bae49f85fd48478ff259ca31 Mon Sep 17 00:00:00 2001 From: Travis Gilbert <1travisgilbert@gmail.com> Date: Mon, 3 Aug 2026 12:47:07 -0400 Subject: [PATCH 02/19] feat(console): land the 21st rails and put them on the register Cherry-picks the console rails work from origin/codex/capture-voice-followup (c50623f6) onto the Twenty inversion, then makes it coherent with the register that landed after that branch forked. The retoken is a correctness fix, not a style pass. register-bridge.css resets --color-*, --radius-*, and --font-* to initial so the register is the only paint, which means the published 21st file's text-neutral-50, rounded-lg, font-['Lexend:...'], and text-[14px] emitted no CSS at all. The sidebar was not mis-colored, it was uncolored, inheriting whatever an ancestor happened to set. Paint, arc, face, and motion now resolve through --ij-*; duration-500 becomes duration-(--ij-motion) ease-(--ij-ease), so the component settles with the rest of the surface under reduced motion instead of running a 500ms spring. Elevation reads off Twenty's background ladder, closing the DOM half of "sidebar lifted, center sunk": the icon rail paints --ij-chrome, the detail panel --ij-frame, and wells --ij-editor. Measured live at 1.0 / 0.976 / 0.922 in light and 0.133 / 0.114 / 0.09 in dark, so the ladder reverses direction with the mode and the three planes stay distinct in both. Icons follow the ledger row. The product rail and the inspector nav now paint Noun Project marks from src/components/shell/icons.tsx; the vendored carbon and lucide glyphs remain only in the demo trees no product surface renders. The inspector edge control drops its noun-layers PNG for IconLayers, because a raster mark cannot take currentColor and so could not follow ink through hover, theme, or mode. NavIcon widens the published LucideIcon slot to admit both. TwoLevelSidebarShell gains panelBrand next to the existing brand slot, so the chat sidebar stops advertising the vendor's "Interfaces" demo brand. Two defects found while verifying on the dev server: - JsonCanvasLayer's boot effect used a bare `void boot()`, so an objects API that is down turned a canvas failure into an unhandled rejection and the whole inspector rail read as broken. It now degrades to an empty canvas and says why. - The canvas overlays were pinned to top-3 and bottom-3 inside a full-bleed layer under the rail's nav, landing the error banner on the workspace switcher and the hint on the Settings row, both translucent enough to read through each other. They now clear the chrome rows and paint opaque. Verified at /dev/chrome-preview in light and dark. Seven gates pass, 571 unit tests pass, typecheck is clean apart from the document-store.test.ts error that is already on main. --- .cursor/rules/no-hand-roll-components.mdc | 36 + .../fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq | 2 +- apps/console/AGENTS.md | 3 +- apps/console/CLAUDE.md | 12 +- apps/console/components.json | 5 +- apps/console/e2e/console-ia.spec.ts | 5 +- apps/console/e2e/signatures.spec.ts | 34 +- apps/console/package.json | 1 + .../fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq | 2 +- .../src/app/api/proactivity/compile/route.ts | 28 +- apps/console/src/app/chat/page.test.tsx | 24 +- apps/console/src/app/chat/page.tsx | 3 +- .../src/app/dev/chrome-preview/page.tsx | 89 ++ apps/console/src/app/page.tsx | 3 +- .../[workspaceSlug]/chat/page.test.tsx | 9 +- .../workspace/[workspaceSlug]/chat/page.tsx | 7 +- .../src/components/chat/ChatSidebar.tsx | 232 ++-- .../src/components/ground/MaterialLayer.tsx | 2 +- .../src/components/shell/InspectorRail.tsx | 214 ++++ apps/console/src/components/shell/Sidebar.tsx | 11 - apps/console/src/components/shell/icons.tsx | 11 + apps/console/src/components/ui/badge.tsx | 39 + .../console/src/components/ui/collapsible.tsx | 83 ++ .../src/components/ui/dashboard-sidebar.tsx | 678 +++++++++++ apps/console/src/components/ui/dock.tsx | 226 ---- .../src/components/ui/json-canvas-layer.tsx | 398 ++++++ .../src/components/ui/sidebar-component.tsx | 1076 +++++++++++++++++ .../src/lib/server/principal-redirect.ts | 34 + apps/console/src/motion/motion-tokens.ts | 2 +- apps/console/src/views/canvas/CanvasView.tsx | 76 +- .../src/views/model/diagram/DiagramCanvas.tsx | 314 +++++ apps/console/src/views/registry.tsx | 26 + .../SPEC-DATA-CANVAS-GRAPH-NATIVE-1.0.md | 34 +- packages/theorem-acp/src/bridge.ts | 13 + .../theorem-acp/src/session-manager.test.ts | 33 + packages/theorem-acp/src/session-manager.ts | 27 +- packages/theorem-acp/src/state.ts | 2 + .../fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq | 2 +- .../fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq | 2 +- pnpm-lock.yaml | 72 +- 40 files changed, 3404 insertions(+), 466 deletions(-) create mode 100644 .cursor/rules/no-hand-roll-components.mdc create mode 100644 apps/console/src/app/dev/chrome-preview/page.tsx create mode 100644 apps/console/src/components/shell/InspectorRail.tsx create mode 100644 apps/console/src/components/ui/badge.tsx create mode 100644 apps/console/src/components/ui/collapsible.tsx create mode 100644 apps/console/src/components/ui/dashboard-sidebar.tsx delete mode 100644 apps/console/src/components/ui/dock.tsx create mode 100644 apps/console/src/components/ui/json-canvas-layer.tsx create mode 100644 apps/console/src/components/ui/sidebar-component.tsx create mode 100644 apps/console/src/lib/server/principal-redirect.ts create mode 100644 apps/console/src/views/model/diagram/DiagramCanvas.tsx create mode 100644 packages/theorem-acp/src/session-manager.test.ts diff --git a/.cursor/rules/no-hand-roll-components.mdc b/.cursor/rules/no-hand-roll-components.mdc new file mode 100644 index 00000000..90f8c7fc --- /dev/null +++ b/.cursor/rules/no-hand-roll-components.mdc @@ -0,0 +1,36 @@ +--- +description: Never hand-roll UI when a catalog/library component exists — install and mount it. +alwaysApply: true +--- + +# No hand-rolled components + +If a visual or behavioral need already exists as a component (21st.dev, shadcn registry, jalco, blocks.so, ledger source, npm library), **install that component and mount it**. Do not approximate it with a local rewrite. + +## Required sequence + +1. **Search first** — `21st search …`, shadcn/registry, and the console library ledger in `apps/console/CLAUDE.md`. +2. **Install** — `npx @21st-dev/cli add author/slug` or `npx shadcn@latest add …` into `apps/console`. Auth via `~/.config/21st/auth.json` / `API_KEY_21ST` when the registry requires it. +3. **Mount the installed file** — product code imports from `components/ui/.tsx` (or the package). Keep the published structure and visual DNA. +4. **Adapt in place** — add props/slots/retokens inside the installed file or a thin wrapper that still renders it. Do not recreate the layout in a parallel hand-rolled file. + +## Forbidden + +```tsx +// ❌ BAD — "inspired by" / pattern copy while the real component exists +// components/ui/icon-rail-sidebar.tsx (hand-rolled stand-in for jshguo) + +// ✅ GOOD — installed source + product shell export +// components/ui/sidebar-component.tsx (21st/@jshguo/sidebar-component) +import { TwoLevelSidebarShell } from '@/components/ui/sidebar-component'; +``` + +- No second implementation that “looks similar” to a named upstream. +- No deleting an installed component and replacing it with divs + Tailwind that mimic it. +- If nothing in the catalog fits, say so, add a ledger row with the named gap, then build — never skip the search. + +## Evidence of compliance + +- `// SOURCING: 21st/@author/slug` (or registry/package) on the file. +- The installed path exists under `components/ui/` or `node_modules`. +- Call sites import that path, not a local lookalike. diff --git a/apps/console/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq b/apps/console/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq index 4e9e2884..91a3d424 100644 --- a/apps/console/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq +++ b/apps/console/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq @@ -1 +1 @@ -63 \ No newline at end of file +340 \ No newline at end of file diff --git a/apps/console/AGENTS.md b/apps/console/AGENTS.md index f305bd5c..e3d65d4e 100644 --- a/apps/console/AGENTS.md +++ b/apps/console/AGENTS.md @@ -124,7 +124,7 @@ asks for inspiration, reference, mood, or direction. | Object contract | `@commonplace/block-view` | BlockHost, ObjectQuery, descriptors, surface tree | | Ground / Material Layer | hand-roll (MaterialLayer / GroundCanvas alias) | full-viewport WebGL SDF islands, terracotta ground, edge falloff, grain; DOM shell fills stay transparent | | Files tree | 21st.dev `builduilabs/filesystem-item` behavior extraction plus `@tanstack/react-virtual` | recursive disclosure behavior and large memory projection virtualization | -| Chat sidebar dock | fork of ibelick/motion-primitives `dock` under `components/ui/dock.tsx` (`motion/react`, magnification 44) | sole surface switcher in the chat sidebar | +| Chat / console left chrome | 21st.dev `@jshguo/sidebar-component` installed at `components/ui/sidebar-component.tsx` (`TwoLevelSidebarShell`) | icon rail + detail panel; never hand-roll a lookalike. Retokened onto the register: the published file's Tailwind neutrals, `rounded-lg`, Lexend literals, and `duration-500` resolve to nothing here, because the `@theme` block resets `--color-*`, `--radius-*`, and `--font-*` to initial. Elevation is lifted rail / frame panel / sunken well. The vendored `@carbon/icons-react` glyphs drive the Frame760 demo only; every rail icon a user sees arrives through `items` as a Noun mark, and `brand` / `panelBrand` carry the product's own mark | | Chat context tree | fork of Build UI filesystem-item under `components/ui/filesystem-item.tsx` | graph-object folders with include/exclude and unavailable honesty | | Composer material | `ComposerMaterial` (`@paper-design/shaders-react` GrainGradient) | scoped ShaderMount behind the chat composer; idle speed 0; no backdrop-filter | | Form selection controls | Radix UI Select and Checkbox through `components/ui/select.tsx` and `components/ui/checkbox.tsx` | keyboard and pointer selection, checked state, focus, and disabled behavior | @@ -134,6 +134,7 @@ asks for inspiration, reference, mood, or direction. | Agent plan | `@assistant-ui/react` plus 21st.dev `isaiahbjork/agent-plan` structure extraction | in-thread plan rows, tool labels, and run status | | Graph canvas | `@xyflow/react` (React Flow) over `@dagrejs/dagre` (layered ranking) | the proactivity graph, per SPEC-PROACTIVITY-GRAPH-WIRING: dagre computes the layered join topology (roots rank first, sinks last), React Flow owns pan, zoom, selection, and edge routing; nodes and edges are register-styled (base CSS only, `--xy-*` mapped to the register in app.css), dynamic-imported so the sentence and card altitudes load no graph bundle | | Data canvas | `@xyflow/react` wrap plus `@commonplace/json-canvas` (JSON Canvas 1.0 interchange) plus Paper DotGrid via `ShaderSurface` | graph-native spatial arrangement of ObjectRefs; Obsidian `.canvas` import/export at the edge only; Island Shells DotGrid extract (size 0.7, gap 32, triangle, speed 0, register colors) behind the pane; mounts as surface and companion | +| Inspector Obsidian canvas | 21st `@arunjdass/dashboard-sidebar` Z-layer + `JsonCanvasLayer` + `CanvasStore` id `canvas.inspector.rail` | chrome-owned rail canvas (not block companion); double-click adds text; persists via `canvas.apply_json`. The nav's Places and Objects rows paint Noun marks (`NavIcon` widens the published `LucideIcon` slot); the vendored lucide glyphs drive the demo tree only | | Graph node and sentence card building blocks | jalco-ui `commit-graph` and `repo-card` (ui.justinlevine.me), structure extraction | the commit-entry node (a response is a stack of agent-action steps a person builds) and the RepoCard sentence card; the jalco layouts are reproduced and every shadcn token re-skinned to the register | | Object addressing and copy | `@commonplace/block-view/addressing` (the shared `theorem://` grammar, per DESIGN-THEOREM-URI) plus the platform Clipboard API | every canonical address this app emits, parses, or offers: the inspector footer, the card copy affordance, mention chips, the Composer paste offer, and the Search field's address lane. `src/lib/object-address.ts` is the only place a tenant plus an object becomes an address, and `src/lib/use-copy.ts` is the only clipboard call (the apps/web hook's shape, re-implemented because the import fence is structural) | | Goal Stack canvas | `@xyflow/react` plus `@dagrejs/dagre`, `cmdk`, and `@dnd-kit/core` | DAG canvas and progress edges, named left-to-right layout, searchable capability palette and approval dialog, deferred-affordance drag and drop | diff --git a/apps/console/CLAUDE.md b/apps/console/CLAUDE.md index 43f4bb37..295cae97 100644 --- a/apps/console/CLAUDE.md +++ b/apps/console/CLAUDE.md @@ -99,7 +99,11 @@ gap: add the row, with a named source, before writing code. | Split layout, tool window panels | `react-resizable-panels` | split geometry, persisted sizes, 1px `--ij-divider` handles | | Search everywhere, palettes | `cmdk` | command list, filtering, keyboard nav | | Approval dialog | `cmdk` Dialog | focus-managed, keyboard-selectable one-shot Plan approval and rejection | -| Tabular lenses | tablecn structure on `@tanstack/react-table` | record.table sorting, filtering, column model | +| Tabular lenses | tablecn structure on `@tanstack/react-table` plus blocks.so `table-01`..`table-05` anatomy | record.table sorting, filtering, column model | +| Schema-driven record cells and chips | FieldType map in `views/records/cells.tsx` plus blocks.so badge / jalco chip anatomy | polymorphic cells, RecordChip, select hues | +| Model canvas object cards | `@xyflow/react` plus jalco `repo-card` header anatomy (structure extract) | ObjectTypeCard / GhostCard on the diagram lens | +| Model relation edges | `@xyflow/react` BaseEdge / smooth-step | field-anchored RelationEdge | +| Record view bar and calculate footer | `cmdk` plus blocks.so command-menu / table footer patterns | ViewBar grammar and server aggregate footer | | Row virtualization | `@tanstack/react-virtual` | large record sets | | Thread and messages | `@assistant-ui/react` 0.12 | message list, streaming, message state | | Composer mechanics | `@assistant-ui/react` 0.12 | auto-grow input, attachments, object mentions, destination slot, send behavior | @@ -118,14 +122,15 @@ gap: add the row, with a named source, before writing code. | Object contract | `@commonplace/block-view` | BlockHost, ObjectQuery, descriptors, surface tree | | Ground / Material Layer | hand-roll (MaterialLayer / GroundCanvas alias) | full-viewport WebGL SDF islands, terracotta ground, edge falloff, grain; DOM shell fills stay transparent | | Files tree | 21st.dev `builduilabs/filesystem-item` behavior extraction plus `@tanstack/react-virtual` | recursive disclosure behavior and large memory projection virtualization | -| Chat sidebar dock | fork of ibelick/motion-primitives `dock` under `components/ui/dock.tsx` (`motion/react`, magnification 44) | sole surface switcher in the chat sidebar | +| Chat / console left chrome | 21st.dev `@jshguo/sidebar-component` installed at `components/ui/sidebar-component.tsx` (`TwoLevelSidebarShell`) | icon rail + detail panel; never hand-roll a lookalike. Retokened onto the register: the published file's Tailwind neutrals, `rounded-lg`, Lexend literals, and `duration-500` resolve to nothing here, because the `@theme` block resets `--color-*`, `--radius-*`, and `--font-*` to initial. Elevation is lifted rail / frame panel / sunken well. The vendored `@carbon/icons-react` glyphs drive the Frame760 demo only; every rail icon a user sees arrives through `items` as a Noun mark, and `brand` / `panelBrand` carry the product's own mark | | Chat context tree | fork of Build UI filesystem-item under `components/ui/filesystem-item.tsx` | graph-object folders with include/exclude and unavailable honesty | | Composer material | `ComposerMaterial` (`@paper-design/shaders-react` GrainGradient) | scoped ShaderMount behind the chat composer; idle speed 0; no backdrop-filter | | Context graph | D3 | deterministic ego graph layout and relation geometry | | Proactivity graph | `@xyflow/react`, `@dagrejs/dagre`, and the existing `@commonplace/theorem-acp` state/session path | controlled denormalized dependency graph, deterministic topological layout, same-origin firing overlay, and pending compile-review gate | | Agent plan | `@assistant-ui/react` plus 21st.dev `isaiahbjork/agent-plan` structure extraction | in-thread plan rows, tool labels, and run status | | Graph canvas | `@xyflow/react` (React Flow) over `@dagrejs/dagre` (layered ranking) | the proactivity graph, per SPEC-PROACTIVITY-GRAPH-WIRING: dagre computes the layered join topology (roots rank first, sinks last), React Flow owns pan, zoom, selection, and edge routing; nodes and edges are register-styled (base CSS only, `--xy-*` mapped to the register in app.css), dynamic-imported so the sentence and card altitudes load no graph bundle | -| Data canvas | `@xyflow/react` wrap plus `@commonplace/json-canvas` (JSON Canvas 1.0 interchange) plus Paper DotGrid via `ShaderSurface` | graph-native spatial arrangement of ObjectRefs; Obsidian `.canvas` import/export at the edge only; Island Shells DotGrid extract (size 0.7, gap 32, triangle, speed 0, register colors) behind the pane; mounts as surface and companion | +| Data canvas (pane `CanvasView`) | `@xyflow/react` wrap plus `@commonplace/json-canvas` (JSON Canvas 1.0 interchange) plus Paper DotGrid via `ShaderSurface` | graph-native spatial arrangement of ObjectRefs; Obsidian `.canvas` import/export at the edge only; mounts as surface/full pane | +| Inspector Obsidian canvas | 21st `@arunjdass/dashboard-sidebar` Z-layer + `JsonCanvasLayer` + `CanvasStore` id `canvas.inspector.rail` | chrome-owned rail canvas (not block companion); double-click adds text; persists via `canvas.apply_json` | | Goal Stack canvas | `@xyflow/react` plus `@dagrejs/dagre`, `cmdk`, and `@dnd-kit/core` | DAG canvas and progress edges, named left-to-right layout, searchable capability palette and approval dialog, deferred-affordance drag and drop | | Workspace substrate | `@tanstack/react-virtual`, CodeMirror 6 merge, `cmdk`, and Radix Popover | semantic workspace entity tree, virtual rows, local-history revision diff, project Find, readiness detail | | Graph node and sentence card building blocks | jalco-ui `commit-graph` and `repo-card` (ui.justinlevine.me), structure extraction | the commit-entry node (a response is a stack of agent-action steps a person builds) and the RepoCard sentence card; the jalco layouts are reproduced and every shadcn token re-skinned to the register | @@ -175,6 +180,7 @@ markdown. Use colons, periods, commas, semicolons, or parentheses instead. | Date | Decision | Why | |---|---|---| +| 2026-07-29 | Inspector Obsidian canvas is chrome-owned (`canvas.inspector.rail` in `DashboardSidebar`), not the `CanvasView` companion mount. Live durability: `CONSOLE_LIVE_CANVAS_SMOKE=1` plus `CONSOLE_LIVE_CANVAS_BASE` (and auth cookie/header as required) runs `src/lib/canvas/store.live.test.ts`; v2 manual smoke is logout/login hard-refresh after placing a note. | Spec-review F3 choice A; unit seam alone cannot close F2. | | 2026-07-18 | The user-facing topic result surface is Indexer. Existing `survey.*` identifiers remain stable. | A topic click returns the full indexed evidence corpus. Keeping internal identifiers avoids breaking persisted surface objects while the product language settles. | | 2026-07-18 | Indexer keeps the installed 21st.dev golden-ratio sphere. Relationship data may contain cycles and never controls card placement. | The spatial shape is the primary reading surface. Edges stay faint at rest, strengthen on hover, and pin on click. | | 2026-07-18 | Indexer pegboard is retired in favor of MaterialLayer grammar. | Source cards and their evidence connections remain the canvas while the transparent scene shell preserves the shared ambient ground. | diff --git a/apps/console/components.json b/apps/console/components.json index 89cb9a1d..863962f5 100644 --- a/apps/console/components.json +++ b/apps/console/components.json @@ -21,5 +21,8 @@ }, "menuColor": "default", "menuAccent": "subtle", - "registries": {} + "registries": { + "@blocks-so": "https://blocks.so/r/{name}.json", + "@jalco": "https://ui.justinlevine.me/r/{name}.json" + } } diff --git a/apps/console/e2e/console-ia.spec.ts b/apps/console/e2e/console-ia.spec.ts index 018b5ca2..1809e4df 100644 --- a/apps/console/e2e/console-ia.spec.ts +++ b/apps/console/e2e/console-ia.spec.ts @@ -150,7 +150,7 @@ test.describe('Console information architecture', () => { ); await expect(page.locator('[data-companion-nav]')).toHaveCount(0); await expect(page.locator('[data-rail-connection]')).toHaveCount(0); - await expect(page.locator('[data-connection-owner="status-bar"]')).toHaveCount(1); + await expect(page.locator('[data-connection-owner="status-bar"]')).toHaveCount(0); const blocks = page.locator('[data-rail-tier="blocks"] button'); await expect(blocks).toHaveCount(11); @@ -204,7 +204,8 @@ test.describe('Console information architecture', () => { const input = composer.locator('[data-composer-input]'); await expect(page.locator('[data-chat-sidebar]')).toBeVisible(); await expect(page.locator('[data-chat-transcript]')).toBeVisible(); - await expect(page.locator('[data-chat-rail]')).toBeVisible(); + await expect(page.locator('[data-inspector-rail]')).toBeVisible(); + await expect(page.locator('[data-inspector-rail-edge]')).toBeVisible(); await expect(page.locator('[data-thread-composer-input]')).toHaveCount(0); await expect(composer.getByRole('button', { name: 'Attach file' })).toBeVisible(); await expect(composer.getByLabel('Model')).toHaveValue('theorem'); diff --git a/apps/console/e2e/signatures.spec.ts b/apps/console/e2e/signatures.spec.ts index 8be3be74..bdfcc794 100644 --- a/apps/console/e2e/signatures.spec.ts +++ b/apps/console/e2e/signatures.spec.ts @@ -161,18 +161,21 @@ for (const { theme, preset } of THEMES) { await expect(selected).not.toHaveCSS('background-color', accent); await expect(selected).toHaveCSS('color', ink); - // The sidebar is frame chrome (flush activity bar), not an island. + // Left chrome: published 21st/@jshguo TwoLevelSidebar (w-16 rail + w-80 panel). + const iconRail = page.locator('[data-jshguo-icon-rail]'); + const railShell = page.locator('[data-jshguo-sidebar]'); + await expect(iconRail).toHaveCSS('width', '64px'); + await expect(railShell).toHaveAttribute('data-panel-open', 'true'); const stripe = page.locator('[data-paint-region="stripe"]'); - await expect(stripe).toHaveCSS('width', '180px'); await expect(stripe).toHaveAttribute('data-frame-resident', 'stripe'); - await expect(stripe).toHaveAttribute('data-sidebar-collapsed', 'false'); await expect(stripe).not.toHaveAttribute('data-island'); const glyph = selected.locator('svg'); await expect(glyph).toHaveAttribute('width', '16'); await page.keyboard.press('Meta+b'); - await expect(stripe).toHaveAttribute('data-sidebar-collapsed', 'true'); - await expect(stripe).toHaveCSS('width', '48px'); + await expect(railShell).toHaveAttribute('data-panel-open', 'false'); + await expect(iconRail).toHaveCSS('width', '64px'); await page.keyboard.press('Meta+b'); + await expect(railShell).toHaveAttribute('data-panel-open', 'true'); // Companions stay dock panels (Alt+Shift), not rail destinations. await page.keyboard.press('Alt+Shift+1'); @@ -200,18 +203,13 @@ for (const { theme, preset } of THEMES) { }); // Signature 4. Account chrome stays in the toolbar; the run widget is gone. - // The consolidated shell restores the Int UI status bar as the single - // transport claim instead of deleting that frame region. - test('account chrome and the consolidated status bar hold without a run widget', async ({ page }) => { + // Bottom status / presence metadata is removed from the page frame. + test('account chrome holds without a run widget or bottom status metadata', async ({ page }) => { await expect(page.locator('[data-run-widget]')).toHaveCount(0); await expect(page.locator('[data-account-trigger]')).toBeVisible(); await expect(page.locator('[data-account-trigger]')).toHaveCSS('height', '28px'); - const status = page.locator('[data-paint-region="status-bar"]'); - await expect(status).toBeVisible(); - await expect(status).toHaveAttribute('data-frame-resident', 'status-bar'); - await expect(status).toHaveAttribute('data-connection-owner', 'status-bar'); - await expect(status).toHaveCSS('height', '28px'); - await expect(status.locator('[data-connection]')).toHaveCount(1); + await expect(page.locator('[data-paint-region="status-bar"]')).toHaveCount(0); + await expect(page.locator('[data-connection-owner="status-bar"]')).toHaveCount(0); await expect(page.locator('[data-shell-sidebar-seam]')).toBeVisible(); }); @@ -399,7 +397,7 @@ for (const { theme, preset } of THEMES.filter((entry) => entry.theme === 'dark') scrollWidth: document.documentElement.scrollWidth, }, shell: rect('[data-shell]'), - sidebar: rect('[data-shell-sidebar]'), + sidebar: rect('[data-jshguo-sidebar]'), ground: rect('[data-shell-region="ground"]'), status: rect('[data-paint-region="status-bar"]'), }; @@ -417,11 +415,11 @@ for (const { theme, preset } of THEMES.filter((entry) => entry.theme === 'dark') height: viewport.height, bottom: viewport.height, }); - expect(geometry.sidebar?.width).toBe(180); + // Published jshguo: icon rail (w-16=64) + expanded detail (w-80=320). + expect(geometry.sidebar?.width).toBe(384); expect(geometry.ground?.width ?? 0).toBeGreaterThan(viewport.width / 3); expect(geometry.ground?.height ?? 0).toBeGreaterThan(viewport.height / 2); - expect(geometry.status?.height).toBe(28); - expect(geometry.status?.bottom).toBe(viewport.height); + expect(geometry.status).toBeNull(); }); } } diff --git a/apps/console/package.json b/apps/console/package.json index 5fe67991..c8ddbc23 100644 --- a/apps/console/package.json +++ b/apps/console/package.json @@ -37,6 +37,7 @@ "@assistant-ui/react-markdown": "0.12.11", "@assistant-ui/store": "0.2.13", "@assistant-ui/tap": "0.5.16", + "@carbon/icons-react": "^11.84.0", "@codemirror/commands": "^6.10.3", "@codemirror/lang-javascript": "^6.2.5", "@codemirror/lang-json": "^6.0.2", diff --git a/apps/console/src/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq b/apps/console/src/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq index 4800c7da..efee1f88 100644 --- a/apps/console/src/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq +++ b/apps/console/src/.theorem/runs/fe40c00e-6cc7-4515-93b7-cdde99e6c51e.seq @@ -1 +1 @@ -58 \ No newline at end of file +78 \ No newline at end of file diff --git a/apps/console/src/app/api/proactivity/compile/route.ts b/apps/console/src/app/api/proactivity/compile/route.ts index a0a1685e..d8eb2009 100644 --- a/apps/console/src/app/api/proactivity/compile/route.ts +++ b/apps/console/src/app/api/proactivity/compile/route.ts @@ -10,11 +10,12 @@ import { } from '@commonplace/theorem-acp/bridge'; import { parseProactivityCompilation } from '@/lib/proactivity/compilation'; import { proactivityCompilationStream } from '@/lib/proactivity/compilation-stream'; -import { - configuredServiceTenantMatches, - resolveHarnessPrincipal, -} from '@/lib/server/harness-principal'; +import { resolveHarnessPrincipal } from '@/lib/server/harness-principal'; import { stageProactivityCompilation } from '@/lib/server/proactivity-harness'; +import { + credentialRefusalResponse, + resolveUpstreamCredential, +} from '@/lib/server/upstream-credential'; export const dynamic = 'force-dynamic'; export const runtime = 'nodejs'; @@ -28,14 +29,9 @@ export async function POST(request: Request): Promise { } const resolution = await resolveHarnessPrincipal(); if (!resolution.ok) return resolution.response; - if (!configuredServiceTenantMatches(resolution.principal)) { - return Response.json( - { - error: 'tenant_connector_unavailable', - message: 'This signed-in tenant does not yet have a matching hosted ACP credential.', - }, - { status: 403 }, - ); + const resolvedCredential = await resolveUpstreamCredential(resolution.principal); + if (!resolvedCredential.ok) { + return credentialRefusalResponse(resolvedCredential.refusal); } try { const command: BridgeCommand = { @@ -58,7 +54,13 @@ export async function POST(request: Request): Promise { sourceId: null, displayText: parsed.data.intent, }; - const session = await resolveBridgeSession({}); + const session = await resolveBridgeSession({ + tenant: resolution.principal.tenant, + authToken: + resolvedCredential.credential.kind === 'service_key' + ? resolvedCredential.credential.key + : resolvedCredential.credential.token, + }); await dispatchBridgeCommands(session, [command]); return new Response( proactivityCompilationStream( diff --git a/apps/console/src/app/chat/page.test.tsx b/apps/console/src/app/chat/page.test.tsx index 8913b3c4..76e7335d 100644 --- a/apps/console/src/app/chat/page.test.tsx +++ b/apps/console/src/app/chat/page.test.tsx @@ -46,10 +46,28 @@ describe('ordinary chat route', () => { it('sends unresolved principals to login', async () => { mocks.resolveHarnessPrincipal.mockResolvedValue({ ok: false, - response: new Response(null, { status: 401 }), + response: Response.json( + { error: 'principal_resolution=unauthenticated' }, + { status: 401 }, + ), }); - await expect(ChatIndexPage()).rejects.toThrow('NEXT_REDIRECT:/login?callbackUrl=/chat'); - expect(mocks.redirect).toHaveBeenCalledWith('/login?callbackUrl=/chat'); + await expect(ChatIndexPage()).rejects.toThrow( + 'NEXT_REDIRECT:/login?callbackUrl=%2Fchat', + ); + expect(mocks.redirect).toHaveBeenCalledWith('/login?callbackUrl=%2Fchat'); + }); + + it('sends signed-in users missing an active workspace to onboarding', async () => { + mocks.resolveHarnessPrincipal.mockResolvedValue({ + ok: false, + response: Response.json( + { error: 'active_workspace_claim_required' }, + { status: 403 }, + ), + }); + + await expect(ChatIndexPage()).rejects.toThrow('NEXT_REDIRECT:/onboarding'); + expect(mocks.redirect).toHaveBeenCalledWith('/onboarding'); }); }); diff --git a/apps/console/src/app/chat/page.tsx b/apps/console/src/app/chat/page.tsx index 0992dc82..e98c2796 100644 --- a/apps/console/src/app/chat/page.tsx +++ b/apps/console/src/app/chat/page.tsx @@ -3,12 +3,13 @@ import { redirect } from 'next/navigation'; import { resolveHarnessPrincipal } from '@/lib/server/harness-principal'; +import { redirectForFailedPrincipal } from '@/lib/server/principal-redirect'; import { ChatUnavailable } from './chat-unavailable'; export default async function ChatIndexPage() { const resolution = await resolveHarnessPrincipal(); if (!resolution.ok) { - redirect('/login?callbackUrl=/chat'); + return redirectForFailedPrincipal(resolution, '/chat'); } if (resolution.principal.workspaceId && resolution.principal.scopeRef) { redirect( diff --git a/apps/console/src/app/dev/chrome-preview/page.tsx b/apps/console/src/app/dev/chrome-preview/page.tsx new file mode 100644 index 00000000..bad5cfd6 --- /dev/null +++ b/apps/console/src/app/dev/chrome-preview/page.tsx @@ -0,0 +1,89 @@ +'use client'; + +// SOURCING: 21st/@jshguo/sidebar-component (via ChatSidebar) + InspectorRail. + +import { useState } from 'react'; +import { SessionProvider } from 'next-auth/react'; +import { MaterialLayer } from '@/components/ground/MaterialLayer'; +import { ChatSidebar } from '@/components/chat/ChatSidebar'; +import { + CHAT_INSPECTOR_SECTIONS, + InspectorRail, +} from '@/components/shell/InspectorRail'; +import { ConsoleBlockHost } from '@/lib/console-host'; +import { CONSOLE_VIEW_REGISTRY } from '@/views/registry'; +import type { ChatCatalog } from '@/lib/chat/project-types'; + +const catalog: ChatCatalog = { + activeProjectId: 'proj-default', + projects: [ + { + id: 'proj-default', + name: 'Default project', + description: 'Preview', + documentIds: [], + objectTypes: [], + updatedAt: 0, + }, + ], + threads: [ + { + id: 'thread-1', + projectId: 'proj-default', + title: 'Preview thread', + sessionId: null, + sessionResumable: false, + capability: null, + railCollapsed: true, + updatedAt: 0, + scrollTop: 0, + messages: [], + }, + ], +}; + +export default function ChromePreviewPage() { + const [inspectorOpen, setInspectorOpen] = useState(true); + const host = new ConsoleBlockHost(CONSOLE_VIEW_REGISTRY, {}); + + return ( + +
+ +
+ {}} + onOpenThread={() => {}} + surface="chat" + /> +
+

+ Lifted main island +

+

+ Left: the 21st/@jshguo sidebar-component (TwoLevelSidebarShell), retokened onto the + register. Right: the integrated DashboardSidebar (arunjdass 21st nav) with Obsidian + JSON Canvas as an in-component feature layer (double-click to add a note). The three + planes read lifted rail, frame panel, sunken editor, straight off Twenty's + background ladder. +

+
+ +
+
+
+ ); +} diff --git a/apps/console/src/app/page.tsx b/apps/console/src/app/page.tsx index ef581da5..599c8c42 100644 --- a/apps/console/src/app/page.tsx +++ b/apps/console/src/app/page.tsx @@ -3,11 +3,12 @@ import { redirect } from 'next/navigation'; import { resolveHarnessPrincipal } from '@/lib/server/harness-principal'; +import { redirectForFailedPrincipal } from '@/lib/server/principal-redirect'; export default async function RootPage() { const resolution = await resolveHarnessPrincipal(); if (!resolution.ok) { - redirect('/login'); + return redirectForFailedPrincipal(resolution, '/'); } if (resolution.principal.workspaceId && resolution.principal.scopeRef) { redirect( diff --git a/apps/console/src/app/workspace/[workspaceSlug]/chat/page.test.tsx b/apps/console/src/app/workspace/[workspaceSlug]/chat/page.test.tsx index 8f24287d..2fe102dc 100644 --- a/apps/console/src/app/workspace/[workspaceSlug]/chat/page.test.tsx +++ b/apps/console/src/app/workspace/[workspaceSlug]/chat/page.test.tsx @@ -79,9 +79,10 @@ describe('workspace chat route', () => { it('sends unresolved principals to login', async () => { mocks.resolveHarnessPrincipal.mockResolvedValue({ ok: false, - status: 401, - code: 'missing_harness_identity', - message: 'Sign in to continue.', + response: Response.json( + { error: 'principal_resolution=unauthenticated' }, + { status: 401 }, + ), }); await expect( @@ -89,7 +90,7 @@ describe('workspace chat route', () => { params: Promise.resolve({ workspaceSlug: 'research' }), }), ).rejects.toThrow( - 'NEXT_REDIRECT:/login?callbackUrl=/workspace/research/chat', + 'NEXT_REDIRECT:/login?callbackUrl=%2Fworkspace%2Fresearch%2Fchat', ); expect(mocks.resolveHarnessPrincipal).toHaveBeenCalledOnce(); }); diff --git a/apps/console/src/app/workspace/[workspaceSlug]/chat/page.tsx b/apps/console/src/app/workspace/[workspaceSlug]/chat/page.tsx index 60cee035..253fe83a 100644 --- a/apps/console/src/app/workspace/[workspaceSlug]/chat/page.tsx +++ b/apps/console/src/app/workspace/[workspaceSlug]/chat/page.tsx @@ -4,10 +4,10 @@ // mounts ChatPage only when the active membership matches this workspace. import Link from 'next/link'; -import { redirect } from 'next/navigation'; import { ChatPage } from '@/components/chat/ChatPage'; import { ForkNotice, ForkPageFrame } from '@/components/fork/ForkPageFrame'; import { resolveHarnessPrincipal } from '@/lib/server/harness-principal'; +import { redirectForFailedPrincipal } from '@/lib/server/principal-redirect'; export default async function WorkspaceChatRoute({ params, @@ -19,8 +19,9 @@ export default async function WorkspaceChatRoute({ resolveHarnessPrincipal(), ]); if (!resolution.ok) { - redirect( - `/login?callbackUrl=/workspace/${encodeURIComponent(workspaceRef)}/chat`, + return redirectForFailedPrincipal( + resolution, + `/workspace/${encodeURIComponent(workspaceRef)}/chat`, ); } if ( diff --git a/apps/console/src/components/chat/ChatSidebar.tsx b/apps/console/src/components/chat/ChatSidebar.tsx index 80bf5ea5..6d8bfd60 100644 --- a/apps/console/src/components/chat/ChatSidebar.tsx +++ b/apps/console/src/components/chat/ChatSidebar.tsx @@ -1,8 +1,8 @@ 'use client'; -// SOURCING: none. SPEC-COMMONPLACE-CHAT-SHELL-1.2 SH5/SH6: one sidebar, four -// bands (brand, search, dock, panel). Dock is the sole surface switcher. -// Chat panel: Current, Pinned, Context. No second icon rail. +// SOURCING: 21st/@jshguo/sidebar-component (TwoLevelSidebarShell). +// SPEC-COMMONPLACE-CHAT-SHELL-1.2 SH5/SH6: brand, search, panel. Dock removed; +// surface icons live on the outer rail. Main content flex-resizes with panel. import { useEffect, useMemo, useState } from 'react'; import { useRouter } from 'next/navigation'; @@ -18,9 +18,8 @@ import { } from '@/lib/chat/catalog-client'; import { readLastConsoleViewPath } from '@/lib/chat/last-console-view'; import { ContextTree } from '@/components/chat/ContextTree'; -import { Dock, DockIcon, DockItem, DockLabel } from '@/components/ui/dock'; +import { TwoLevelSidebarShell } from '@/components/ui/sidebar-component'; import { - IconAccount, IconChat, IconIndex, IconModel, @@ -29,7 +28,6 @@ import { IconWorkspace, } from '@/components/shell/icons'; import type { ContextEntry, ContextFolder } from '@/lib/chat/context-types'; -import { cn } from '@/lib/cn'; export type ChatDockSurface = 'home' | 'chat' | 'runs' | 'graph' | 'models'; @@ -77,10 +75,20 @@ function writePinned(ids: string[]): void { } } +/* Icons ledger row: every product glyph is a Noun Project mark from the one + icon file, normalized to currentColor so the rail's active state paints it. + The vendored 21st rail only supplies the geometry. */ +const RAIL_ITEMS = [ + { id: 'home' as const, label: 'Home', icon: }, + { id: 'chat' as const, label: 'Chat', icon: }, + { id: 'runs' as const, label: 'Runs', icon: }, + { id: 'graph' as const, label: 'Graph', icon: }, + { id: 'models' as const, label: 'Models', icon: }, +]; export function ChatSidebar({ catalog, activeThreadId, - capabilities: _capabilities, + capabilities, unreachable = false, onCatalogChange, onOpenThread, @@ -89,36 +97,14 @@ export function ChatSidebar({ surface: surfaceProp, onSurfaceChange, }: ChatSidebarProps) { - const router = useRouter(); + const [panelOpen, setPanelOpen] = useState(true); const [surfaceState, setSurfaceState] = useState('chat'); const surface = surfaceProp ?? surfaceState; const setSurface = (next: ChatDockSurface) => { onSurfaceChange?.(next); if (surfaceProp === undefined) setSurfaceState(next); }; - const [pinnedIds, setPinnedIds] = useState([]); - const [query, setQuery] = useState(''); - const activeProject = catalog.projects.find((project) => project.id === catalog.activeProjectId) ?? null; - const activeThread = catalog.threads.find((thread) => thread.id === activeThreadId) ?? null; - - useEffect(() => { - const frame = window.requestAnimationFrame(() => setPinnedIds(readPinned())); - return () => window.cancelAnimationFrame(frame); - }, []); - - const pinnedThreads = useMemo(() => { - const byId = new Map(catalog.threads.map((thread) => [thread.id, thread])); - return pinnedIds - .map((id) => byId.get(id)) - .filter((thread): thread is ChatThreadRecord => Boolean(thread)) - .filter((thread) => thread.id !== activeThreadId); - }, [catalog.threads, pinnedIds, activeThreadId]); - - const filteredPinned = useMemo(() => { - const needle = query.trim().toLowerCase(); - if (!needle) return pinnedThreads; - return pinnedThreads.filter((thread) => thread.title.toLowerCase().includes(needle)); - }, [pinnedThreads, query]); + const router = useRouter(); const goSurface = (next: ChatDockSurface) => { setSurface(next); @@ -144,6 +130,86 @@ export function ChatSidebar({ } }; + return ( + } + panelBrand={ +
+ + + CommonPlace + +
+ } + activeSection={surface} + onSectionChange={(id) => goSurface(id as ChatDockSurface)} + panelOpen={panelOpen} + onPanelOpenChange={setPanelOpen} + title={surface === 'chat' ? 'Chat' : surface.charAt(0).toUpperCase() + surface.slice(1)} + panel={ + + } + /> + ); +} + +function ChatSidebarPanel({ + catalog, + activeThreadId, + capabilities, + unreachable, + onCatalogChange, + onOpenThread, + contextFolders, + onToggleContextInclude, + surface, +}: { + catalog: ChatCatalog; + activeThreadId: string | null; + capabilities: readonly CapabilityItem[]; + unreachable: boolean; + onCatalogChange: (catalog: ChatCatalog) => void; + onOpenThread: (threadId: string) => void; + contextFolders: readonly ContextFolder[]; + onToggleContextInclude?: (entryId: string) => void; + surface: ChatDockSurface; +}) { + const [pinnedIds, setPinnedIds] = useState([]); + const [query, setQuery] = useState(''); + const activeProject = catalog.projects.find((project) => project.id === catalog.activeProjectId) ?? null; + const activeThread = catalog.threads.find((thread) => thread.id === activeThreadId) ?? null; + + useEffect(() => { + const frame = window.requestAnimationFrame(() => setPinnedIds(readPinned())); + return () => window.cancelAnimationFrame(frame); + }, []); + + const pinnedThreads = useMemo(() => { + const byId = new Map(catalog.threads.map((thread) => [thread.id, thread])); + return pinnedIds + .map((id) => byId.get(id)) + .filter((thread): thread is ChatThreadRecord => Boolean(thread)) + .filter((thread) => thread.id !== activeThreadId); + }, [catalog.threads, pinnedIds, activeThreadId]); + + const filteredPinned = useMemo(() => { + const needle = query.trim().toLowerCase(); + if (!needle) return pinnedThreads; + return pinnedThreads.filter((thread) => thread.title.toLowerCase().includes(needle)); + }, [pinnedThreads, query]); + const newThread = async () => { if (unreachable) return; const thread = await createChatThread({ @@ -172,14 +238,8 @@ export function ChatSidebar({ }; return ( - + ); } - function ProjectEditorInline({ project, projects, @@ -415,7 +428,7 @@ function ProjectEditorInline({ const [description, setDescription] = useState(project.description); return ( -
+