@font-face {
  font-family: JetBrains Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk-DIC32ArD.woff2)
    format('woff2');
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
    U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: JetBrains Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg-6fWv1k7M.woff2)
    format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
    U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: JetBrains Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(./tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk-DIC32ArD.woff2)
    format('woff2');
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
    U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: JetBrains Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(./tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg-6fWv1k7M.woff2)
    format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
    U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: Source Sans Pro;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./6xK3dSBYKcSV-LCoeQqfX1RYOo3qNq7lqDY-BtGnl-XW.woff2) format('woff2');
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
    U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: Source Sans Pro;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l-DGyR1GMK.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
    U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: Source Sans Pro;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(./6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmRduz8A-iiHkh7O8.woff2) format('woff2');
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
    U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: Source Sans Pro;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(./6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu-CnYPpd8X.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
    U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: Source Sans Pro;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(./6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmRduz8A-CaX4GBQi.woff2) format('woff2');
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
    U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: Source Sans Pro;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(./6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu-D4anX_jJ.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
    U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: Source Sans Pro;
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(./6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmRduz8A-C-9jVWrf.woff2) format('woff2');
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
    U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: Source Sans Pro;
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(./6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwlxdu-CSJCsMX2.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
    U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  --rik-palette-paper-0: #ffffff;
  --rik-palette-paper-50: #fafaf8;
  --rik-palette-paper-100: #f6f6f2;
  --rik-palette-paper-200: #e5e5e0;
  --rik-palette-ink-500: #767676;
  --rik-palette-ink-700: #333333;
  --rik-palette-ink-900: #0a0a0a;
  --rik-palette-night-900: #0a0a0a;
  --rik-palette-night-800: #141414;
  --rik-palette-night-700: #1d1d1d;
  --rik-palette-night-600: #262626;
  --rik-palette-night-500: #2f2f2f;
  --rik-palette-night-400: #3a3a3a;
  --rik-palette-night-100: #ffffff;
  --rik-palette-mango-700: #a87e00;
  --rik-palette-mango-500: #f7cb44;
  --rik-palette-mango-200: rgba(247, 203, 68, 0.45);
  --rik-palette-mango-100: rgba(247, 203, 68, 0.18);
  --rik-palette-mango-50: rgba(247, 203, 68, 0.05);
  --rik-palette-ember-500: #dc2626;
  --rik-palette-ember-200: rgba(220, 38, 38, 0.45);
  --rik-palette-ember-100: rgba(220, 38, 38, 0.1);
  --rik-palette-helico-500: #16a34a;
  --rik-palette-helico-200: rgba(22, 163, 74, 0.45);
  --rik-palette-helico-100: rgba(22, 163, 74, 0.08);
  --rik-palette-warm-500: #ea580c;
  --rik-palette-warm-200: rgba(234, 88, 12, 0.4);
  --rik-palette-warm-100: rgba(234, 88, 12, 0.08);
  --rik-palette-orchid-500: #7c3aed;
  --rik-palette-lime-500: #84cc16;
  --rik-palette-canary-500: #0891b2;
  --rik-surface-page: var(--rik-palette-paper-50);
  --rik-surface-raised: var(--rik-palette-paper-0);
  --rik-surface-raised--strong: var(--rik-palette-paper-0);
  --rik-surface-sunken: var(--rik-palette-paper-100);
  --rik-surface-tint: rgba(0, 0, 0, 0.04);
  --rik-surface-tint--strong: rgba(0, 0, 0, 0.06);
  --rik-surface-inverse: var(--rik-palette-night-900);
  --rik-surface-inverse--soft: var(--rik-palette-night-800);
  --rik-surface-inverse--soft-2: var(--rik-palette-night-700);
  --rik-surface-inverse--soft-3: var(--rik-palette-night-600);
  --rik-surface-inverse--soft-4: var(--rik-palette-night-500);
  --rik-surface-inverse--soft-5: var(--rik-palette-night-400);
  --rik-surface-inverse__overlay: rgba(255, 255, 255, 0.04);
  --rik-text-default: var(--rik-palette-ink-900);
  --rik-text-default--muted: var(--rik-palette-ink-700);
  --rik-text-default--faint: var(--rik-palette-ink-500);
  --rik-text-inverse: #ffffff;
  --rik-text-inverse--muted: rgba(255, 255, 255, 0.7);
  --rik-text-inverse--faint: rgba(255, 255, 255, 0.55);
  --rik-text-inverse--ghost: rgba(255, 255, 255, 0.3);
  --rik-border-default: var(--rik-palette-paper-200);
  --rik-border-default--subtle: rgba(0, 0, 0, 0.05);
  --rik-border-inverse: rgba(255, 255, 255, 0.1);
  --rik-accent: var(--rik-palette-mango-500);
  --rik-accent--soft: var(--rik-palette-mango-100);
  --rik-accent--faint: var(--rik-palette-mango-50);
  --rik-accent--strong: var(--rik-palette-mango-700);
  --rik-accent__on: var(--rik-palette-night-900);
  --rik-status-success: var(--rik-palette-helico-500);
  --rik-status-success__bg: var(--rik-palette-helico-100);
  --rik-status-success__border: var(--rik-palette-helico-200);
  --rik-status-danger: var(--rik-palette-ember-500);
  --rik-status-danger__bg: var(--rik-palette-ember-100);
  --rik-status-danger__border: var(--rik-palette-ember-200);
  --rik-status-warn: var(--rik-palette-warm-500);
  --rik-status-warn__bg: var(--rik-palette-warm-100);
  --rik-status-warn__border: var(--rik-palette-warm-200);
  --rik-status-info: var(--rik-palette-mango-500);
  --rik-status-info__text: var(--rik-palette-mango-700);
  --rik-status-info__bg: var(--rik-palette-mango-50);
  --rik-status-info__bg--mid: var(--rik-palette-mango-100);
  --rik-status-info__bg--strong: rgba(247, 203, 68, 0.18);
  --rik-status-info__border: var(--rik-palette-mango-200);
  --rik-interactive-bg: transparent;
  --rik-interactive-bg--hover: rgba(0, 0, 0, 0.04);
  --rik-interactive-bg--active: rgba(0, 0, 0, 0.07);
  --rik-interactive-bg--selected: var(--rik-accent--soft);
  --rik-interactive-fg: var(--rik-accent--strong);
  --rik-interactive-fg--hover: var(--rik-accent);
  --rik-focus-ring: var(--rik-accent--strong);
  --rik-focus-ring--width: 2px;
  --rik-focus-ring--offset: 2px;
  --rik-link: var(--rik-accent--strong);
  --rik-link--hover: var(--rik-accent);
  --rik-link--visited: var(--rik-palette-orchid-500);
  --rik-selection__bg: var(--rik-accent);
  --rik-selection__text: var(--rik-palette-night-900);
  --rik-decor-orchid: var(--rik-palette-orchid-500);
  --rik-decor-lime: var(--rik-palette-lime-500);
  --rik-decor-canary: var(--rik-palette-canary-500);
  --rik-elevation-1: 0 1px 2px rgba(0, 0, 0, 0.04);
  --rik-elevation-2: 0 1px 3px rgba(0, 0, 0, 0.04), 0 4px 12px rgba(0, 0, 0, 0.04);
  --rik-elevation-3: 0 2px 6px rgba(0, 0, 0, 0.06), 0 8px 20px rgba(0, 0, 0, 0.06);
  --rik-motion-fast: 0.12s;
  --rik-motion-base: 0.2s;
  --rik-motion-slow: 0.4s;
  --rik-motion__ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --rik-motion__ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --rik-motion__ease-spring: cubic-bezier(0.5, 1.8, 0.3, 1);
  --rik-z-base: 0;
  --rik-z-sticky: 200;
  --rik-z-overlay: 300;
  --rik-z-modal: 400;
  --rik-z-toast: 500;
  --rik-z-tooltip: 600;
  --rik-font-sans: 'Source Sans Pro', 'Inter', system-ui, sans-serif;
  --rik-font-display: 'Source Sans Pro', 'Inter', system-ui, sans-serif;
  --rik-font-mono: 'JetBrains Mono', 'Fira Code', ui-monospace, monospace;
  --rik-text-2xs: 0.64rem;
  --rik-text-xs: 0.8rem;
  --rik-text-sm: 1rem;
  --rik-text-base: 1.25rem;
  --rik-text-md: 1.563rem;
  --rik-text-lg: 1.953rem;
  --rik-text-xl: 2.441rem;
  --rik-text-2xl: 3.052rem;
  --rik-text-3xl: 3.815rem;
  --rik-text-4xl: 4.768rem;
  --rik-font-size-xs: var(--rik-text-2xs);
  --rik-font-size-sm: var(--rik-text-xs);
  --rik-font-size-body: 0.92rem;
  --rik-font-size-lead: var(--rik-text-sm);
  --rik-font-size-h2: var(--rik-text-base);
  --rik-font-size-h1: var(--rik-text-md);
  --rik-font-size-section: var(--rik-text-lg);
  --rik-font-size-display: var(--rik-text-xl);
  --rik-font-size-mono: 0.88rem;
  --rik-font-size-mono-sm: var(--rik-text-xs);
  --rik-font-size-strong: var(--rik-text-base);
  --rik-font-size-big: var(--rik-text-lg);
  --rik-font-size-mega: var(--rik-text-2xl);
  --rik-font-size-hook: clamp(2.2rem, 4.5vw, 3.8rem);
  --rik-font-size-stat: clamp(3.5rem, 7vw, 5.5rem);
  --rik-space-hair: 4px;
  --rik-space-2xs: 6px;
  --rik-space-1: 0.5rem;
  --rik-space-2: 0.75rem;
  --rik-space-3: 1rem;
  --rik-space-4: 1.5rem;
  --rik-space-5: 2.25rem;
  --rik-space-6: 3.5rem;
  --rik-radius-xs: 2px;
  --rik-radius-sm: 4px;
  --rik-radius-md: 6px;
  --rik-radius-lg: 8px;
  --rik-radius-pill: 9999px;
  --rik-icon-xs: 16px;
  --rik-icon-sm: 22px;
  --rik-icon-md: 28px;
  --rik-icon-lg: 40px;
  --rik-icon-xl: 56px;
  --rik-icon-2xl: 72px;
  --rik-opacity-faint: 0.5;
  --rik-opacity-soft: 0.7;
  --rik-slide-padding-y: 3.5rem;
  --rik-slide-padding-x: 4rem;
  --rik-title-block: 4.5rem;
  --rik-code__bg: #0f0f10;
  --rik-code__border: #232325;
  --rik-code__text: #f4f4f5;
  --rik-code__syntax-comment: #8b95a0;
  --rik-code__syntax-keyword: #c792ea;
  --rik-code__syntax-string: #c3e88d;
  --rik-code__syntax-number: #f78c6c;
  --rik-code__syntax-type: #ffcb6b;
  --rik-code__syntax-property: #80cbc4;
  --rik-code__syntax-function: #82aaff;
}
@media (prefers-reduced-motion: reduce) {
  :root {
    --rik-motion-fast: 0ms;
    --rik-motion-base: 0ms;
    --rik-motion-slow: 0ms;
    --rik-motion__ease-spring: var(--rik-motion__ease-out);
  }
}
*,
*:before,
*:after {
  box-sizing: border-box;
}
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
li,
blockquote,
pre,
table,
td,
th,
figure,
dl,
dd {
  margin: 0;
  padding: 0;
}
html {
  font-size: clamp(14px, 2.35vh, 42px);
}
html,
body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: var(--rik-surface-page);
}
body {
  font-family: var(--rik-font-sans);
  color: var(--rik-text-default);
}
::selection {
  background: var(--rik-selection__bg);
  color: var(--rik-selection__text);
}
.accent {
  color: var(--rik-accent);
}
.accent-danger {
  color: var(--rik-status-danger);
}
.accent-warn {
  color: var(--rik-status-warn);
}
.accent-success {
  color: var(--rik-status-success);
}
.accent-orchid {
  color: var(--rik-decor-orchid);
}
.accent-lime {
  color: var(--rik-decor-lime);
}
.sub {
  font-size: var(--rik-font-size-h2);
  color: var(--rik-text-inverse--faint);
  line-height: 1.45;
  max-width: 60ch;
}
.display {
  font-size: clamp(3rem, 7vw, 5.5rem);
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -0.03em;
}
.display.danger {
  color: var(--rik-status-danger);
}
.caption.on-dark {
  color: var(--rik-text-inverse--faint);
  font-size: var(--rik-font-size-lead);
}
.lead {
  font-size: var(--rik-font-size-lead);
  color: var(--rik-text-default--faint);
  line-height: 1.5;
  max-width: 75ch;
}
deck-feature > h1,
deck-split > h1,
deck-feature-cards > h1 {
  font-family: var(--rik-font-display);
  font-size: var(--rik-font-size-h1);
  font-weight: 700;
  color: var(--rik-text-default);
  letter-spacing: -0.018em;
  line-height: 1.15;
  margin-bottom: var(--rik-space-4);
  padding-bottom: var(--rik-space-2);
  border-bottom: 2px solid var(--rik-accent);
  display: inline-block;
  align-self: flex-start;
}
deck-cover > h1 {
  font-size: clamp(3.6rem, 9vw, 8.5rem);
  font-weight: 900;
  color: var(--rik-text-inverse);
  line-height: 1.02;
  letter-spacing: -0.035em;
  margin-bottom: var(--rik-space-4);
}
deck-section > h1 {
  font-size: var(--rik-font-size-section);
  font-weight: 900;
  color: var(--rik-accent);
  line-height: 1.02;
  letter-spacing: -0.03em;
  max-width: 18ch;
  text-align: center;
}
deck-section > h1 em {
  color: var(--rik-text-inverse--faint);
  font-style: normal;
  font-weight: 700;
}
deck-cover > .sub,
deck-cover > p.sub {
  display: block;
  font-size: var(--rik-font-size-h2);
  color: var(--rik-text-inverse--faint);
  margin-bottom: var(--rik-space-6);
  max-width: 60ch;
  line-height: 1.45;
}
deck-feature > .lead,
deck-split > .lead,
deck-feature-cards > .lead {
  display: block;
  font-size: var(--rik-font-size-lead);
  color: var(--rik-text-default--faint);
  line-height: 1.5;
  margin-bottom: var(--rik-space-4);
  max-width: 75ch;
}
deck-feature code,
deck-split code,
deck-feature-cards code,
deck-md code {
  font-family: var(--rik-font-mono);
  font-size: var(--rik-font-size-mono-sm);
  background: var(--rik-surface-tint);
  padding: 2px 6px;
  border-radius: var(--rik-radius-sm);
  color: var(--rik-text-default);
}
deck-code code {
  all: unset;
}
.card-text {
  font-size: var(--rik-font-size-body);
  color: var(--rik-text-default--muted);
  line-height: 1.55;
  margin: 0;
}
table.dense {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: var(--rik-font-size-body);
  border: 1px solid var(--rik-border-default);
  border-radius: var(--rik-radius-md);
  overflow: hidden;
  background: var(--rik-surface-raised--strong);
  box-shadow: var(--rik-elevation-2);
}
table.dense th {
  text-align: left;
  padding: 10px var(--rik-space-3);
  color: var(--rik-text-default--faint);
  font-size: var(--rik-font-size-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-bottom: 1px solid var(--rik-border-default);
  background: var(--rik-surface-sunken);
}
table.dense td {
  padding: 10px var(--rik-space-3);
  border-bottom: 1px solid var(--rik-border-default);
  color: var(--rik-text-default--muted);
  line-height: 1.4;
}
table.dense tr:last-child td {
  border-bottom: none;
}
table.dense td.ok {
  color: var(--rik-status-success);
  font-weight: 700;
}
table.dense td.no {
  color: var(--rik-status-danger);
}
table.dense td.meh {
  color: var(--rik-status-warn);
}
@font-face {
  font-family: Unbounded;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(./unbounded-500-4slEIF53.woff2) format('woff2');
}
@font-face {
  font-family: Unbounded;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(./unbounded-700-CaoNriVp.woff2) format('woff2');
}
@font-face {
  font-family: 'Instrument Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./instrument-serif-regular-DnYpCC2O.woff2) format('woff2');
}
@font-face {
  font-family: 'Instrument Serif';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(./instrument-serif-italic-DKMiL14s.woff2) format('woff2');
}
@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(./inter-variable-B2BMxjQQ.woff2) format('woff2');
}
@font-face {
  font-family: Space Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./space-mono-regular-Rg4St2Dn.woff2) format('woff2');
}
@font-face {
  font-family: Space Mono;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(./space-mono-bold-mWgeinG7.woff2) format('woff2');
}
@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./ibm-plex-mono-regular-DMJ8VG8y.woff2) format('woff2');
}
@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(./ibm-plex-mono-bold-7sUh57Bg.woff2) format('woff2');
}
@font-face {
  font-family: lucide;
  font-style: normal;
  font-display: block;
  src: url(./lucide-Bycg2pr8.woff2) format('woff2');
}
[class^='icon-'],
[class*=' icon-'] {
  font-family: lucide !important;
  font-size: inherit;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-a-arrow-down:before {
  content: '';
}
.icon-a-arrow-up:before {
  content: '';
}
.icon-a-large-small:before {
  content: '';
}
.icon-accessibility:before {
  content: '';
}
.icon-activity-square:before {
  content: '';
}
.icon-activity:before {
  content: '';
}
.icon-air-vent:before {
  content: '';
}
.icon-airplay:before {
  content: '';
}
.icon-alarm-check:before {
  content: '';
}
.icon-alarm-clock-check:before {
  content: '';
}
.icon-alarm-clock-minus:before {
  content: '';
}
.icon-alarm-clock-off:before {
  content: '';
}
.icon-alarm-clock-plus:before {
  content: '';
}
.icon-alarm-clock:before {
  content: '';
}
.icon-alarm-minus:before {
  content: '';
}
.icon-alarm-plus:before {
  content: '';
}
.icon-alarm-smoke:before {
  content: '';
}
.icon-album:before {
  content: '';
}
.icon-alert-circle:before {
  content: '';
}
.icon-alert-octagon:before {
  content: '';
}
.icon-alert-triangle:before {
  content: '';
}
.icon-align-center-horizontal:before {
  content: '';
}
.icon-align-center-vertical:before {
  content: '';
}
.icon-align-center:before {
  content: '';
}
.icon-align-end-horizontal:before {
  content: '';
}
.icon-align-end-vertical:before {
  content: '';
}
.icon-align-horizontal-distribute-center:before {
  content: '';
}
.icon-align-horizontal-distribute-end:before {
  content: '';
}
.icon-align-horizontal-distribute-start:before {
  content: '';
}
.icon-align-horizontal-justify-center:before {
  content: '';
}
.icon-align-horizontal-justify-end:before {
  content: '';
}
.icon-align-horizontal-justify-start:before {
  content: '';
}
.icon-align-horizontal-space-around:before {
  content: '';
}
.icon-align-horizontal-space-between:before {
  content: '';
}
.icon-align-justify:before {
  content: '';
}
.icon-align-left:before {
  content: '';
}
.icon-align-right:before {
  content: '';
}
.icon-align-start-horizontal:before {
  content: '';
}
.icon-align-start-vertical:before {
  content: '';
}
.icon-align-vertical-distribute-center:before {
  content: '';
}
.icon-align-vertical-distribute-end:before {
  content: '';
}
.icon-align-vertical-distribute-start:before {
  content: '';
}
.icon-align-vertical-justify-center:before {
  content: '';
}
.icon-align-vertical-justify-end:before {
  content: '';
}
.icon-align-vertical-justify-start:before {
  content: '';
}
.icon-align-vertical-space-around:before {
  content: '';
}
.icon-align-vertical-space-between:before {
  content: '';
}
.icon-ambulance:before {
  content: '';
}
.icon-ampersand:before {
  content: '';
}
.icon-ampersands:before {
  content: '';
}
.icon-amphora:before {
  content: '';
}
.icon-anchor:before {
  content: '';
}
.icon-angry:before {
  content: '';
}
.icon-annoyed:before {
  content: '';
}
.icon-antenna:before {
  content: '';
}
.icon-anvil:before {
  content: '';
}
.icon-aperture:before {
  content: '';
}
.icon-app-window-mac:before {
  content: '';
}
.icon-app-window:before {
  content: '';
}
.icon-apple:before {
  content: '';
}
.icon-archive-restore:before {
  content: '';
}
.icon-archive-x:before {
  content: '';
}
.icon-archive:before {
  content: '';
}
.icon-area-chart:before {
  content: '';
}
.icon-armchair:before {
  content: '';
}
.icon-arrow-big-down-dash:before {
  content: '';
}
.icon-arrow-big-down:before {
  content: '';
}
.icon-arrow-big-left-dash:before {
  content: '';
}
.icon-arrow-big-left:before {
  content: '';
}
.icon-arrow-big-right-dash:before {
  content: '';
}
.icon-arrow-big-right:before {
  content: '';
}
.icon-arrow-big-up-dash:before {
  content: '';
}
.icon-arrow-big-up:before {
  content: '';
}
.icon-arrow-down-0-1:before {
  content: '';
}
.icon-arrow-down-01:before {
  content: '';
}
.icon-arrow-down-1-0:before {
  content: '';
}
.icon-arrow-down-10:before {
  content: '';
}
.icon-arrow-down-a-z:before {
  content: '';
}
.icon-arrow-down-az:before {
  content: '';
}
.icon-arrow-down-circle:before {
  content: '';
}
.icon-arrow-down-from-line:before {
  content: '';
}
.icon-arrow-down-left-from-circle:before {
  content: '';
}
.icon-arrow-down-left-from-square:before {
  content: '';
}
.icon-arrow-down-left-square:before {
  content: '';
}
.icon-arrow-down-left:before {
  content: '';
}
.icon-arrow-down-narrow-wide:before {
  content: '';
}
.icon-arrow-down-right-from-circle:before {
  content: '';
}
.icon-arrow-down-right-from-square:before {
  content: '';
}
.icon-arrow-down-right-square:before {
  content: '';
}
.icon-arrow-down-right:before {
  content: '';
}
.icon-arrow-down-square:before {
  content: '';
}
.icon-arrow-down-to-dot:before {
  content: '';
}
.icon-arrow-down-to-line:before {
  content: '';
}
.icon-arrow-down-up:before {
  content: '';
}
.icon-arrow-down-wide-narrow:before {
  content: '';
}
.icon-arrow-down-z-a:before {
  content: '';
}
.icon-arrow-down-za:before {
  content: '';
}
.icon-arrow-down:before {
  content: '';
}
.icon-arrow-left-circle:before {
  content: '';
}
.icon-arrow-left-from-line:before {
  content: '';
}
.icon-arrow-left-right:before {
  content: '';
}
.icon-arrow-left-square:before {
  content: '';
}
.icon-arrow-left-to-line:before {
  content: '';
}
.icon-arrow-left:before {
  content: '';
}
.icon-arrow-right-circle:before {
  content: '';
}
.icon-arrow-right-from-line:before {
  content: '';
}
.icon-arrow-right-left:before {
  content: '';
}
.icon-arrow-right-square:before {
  content: '';
}
.icon-arrow-right-to-line:before {
  content: '';
}
.icon-arrow-right:before {
  content: '';
}
.icon-arrow-up-0-1:before {
  content: '';
}
.icon-arrow-up-01:before {
  content: '';
}
.icon-arrow-up-1-0:before {
  content: '';
}
.icon-arrow-up-10:before {
  content: '';
}
.icon-arrow-up-a-z:before {
  content: '';
}
.icon-arrow-up-az:before {
  content: '';
}
.icon-arrow-up-circle:before {
  content: '';
}
.icon-arrow-up-down:before {
  content: '';
}
.icon-arrow-up-from-dot:before {
  content: '';
}
.icon-arrow-up-from-line:before {
  content: '';
}
.icon-arrow-up-left-from-circle:before {
  content: '';
}
.icon-arrow-up-left-from-square:before {
  content: '';
}
.icon-arrow-up-left-square:before {
  content: '';
}
.icon-arrow-up-left:before {
  content: '';
}
.icon-arrow-up-narrow-wide:before {
  content: '';
}
.icon-arrow-up-right-from-circle:before {
  content: '';
}
.icon-arrow-up-right-from-square:before {
  content: '';
}
.icon-arrow-up-right-square:before {
  content: '';
}
.icon-arrow-up-right:before {
  content: '';
}
.icon-arrow-up-square:before {
  content: '';
}
.icon-arrow-up-to-line:before {
  content: '';
}
.icon-arrow-up-wide-narrow:before {
  content: '';
}
.icon-arrow-up-z-a:before {
  content: '';
}
.icon-arrow-up-za:before {
  content: '';
}
.icon-arrow-up:before {
  content: '';
}
.icon-arrows-up-from-line:before {
  content: '';
}
.icon-asterisk-square:before {
  content: '';
}
.icon-asterisk:before {
  content: '';
}
.icon-at-sign:before {
  content: '';
}
.icon-atom:before {
  content: '';
}
.icon-audio-lines:before {
  content: '';
}
.icon-audio-waveform:before {
  content: '';
}
.icon-award:before {
  content: '';
}
.icon-axe:before {
  content: '';
}
.icon-axis-3-d:before {
  content: '';
}
.icon-axis-3d:before {
  content: '';
}
.icon-baby:before {
  content: '';
}
.icon-backpack:before {
  content: '';
}
.icon-badge-alert:before {
  content: '';
}
.icon-badge-cent:before {
  content: '';
}
.icon-badge-check:before {
  content: '';
}
.icon-badge-dollar-sign:before {
  content: '';
}
.icon-badge-euro:before {
  content: '';
}
.icon-badge-help:before {
  content: '';
}
.icon-badge-indian-rupee:before {
  content: '';
}
.icon-badge-info:before {
  content: '';
}
.icon-badge-japanese-yen:before {
  content: '';
}
.icon-badge-minus:before {
  content: '';
}
.icon-badge-percent:before {
  content: '';
}
.icon-badge-plus:before {
  content: '';
}
.icon-badge-pound-sterling:before {
  content: '';
}
.icon-badge-question-mark:before {
  content: '';
}
.icon-badge-russian-ruble:before {
  content: '';
}
.icon-badge-swiss-franc:before {
  content: '';
}
.icon-badge-turkish-lira:before {
  content: '';
}
.icon-badge-x:before {
  content: '';
}
.icon-badge:before {
  content: '';
}
.icon-baggage-claim:before {
  content: '';
}
.icon-balloon:before {
  content: '';
}
.icon-ban:before {
  content: '';
}
.icon-banana:before {
  content: '';
}
.icon-bandage:before {
  content: '';
}
.icon-banknote-arrow-down:before {
  content: '';
}
.icon-banknote-arrow-up:before {
  content: '';
}
.icon-banknote-x:before {
  content: '';
}
.icon-banknote:before {
  content: '';
}
.icon-bar-chart-2:before {
  content: '';
}
.icon-bar-chart-3:before {
  content: '';
}
.icon-bar-chart-4:before {
  content: '';
}
.icon-bar-chart-big:before {
  content: '';
}
.icon-bar-chart-horizontal-big:before {
  content: '';
}
.icon-bar-chart-horizontal:before {
  content: '';
}
.icon-bar-chart:before {
  content: '';
}
.icon-barcode:before {
  content: '';
}
.icon-barrel:before {
  content: '';
}
.icon-baseline:before {
  content: '';
}
.icon-bath:before {
  content: '';
}
.icon-battery-charging:before {
  content: '';
}
.icon-battery-full:before {
  content: '';
}
.icon-battery-low:before {
  content: '';
}
.icon-battery-medium:before {
  content: '';
}
.icon-battery-plus:before {
  content: '';
}
.icon-battery-warning:before {
  content: '';
}
.icon-battery:before {
  content: '';
}
.icon-beaker:before {
  content: '';
}
.icon-bean-off:before {
  content: '';
}
.icon-bean:before {
  content: '';
}
.icon-bed-double:before {
  content: '';
}
.icon-bed-single:before {
  content: '';
}
.icon-bed:before {
  content: '';
}
.icon-beef-off:before {
  content: '';
}
.icon-beef:before {
  content: '';
}
.icon-beer-off:before {
  content: '';
}
.icon-beer:before {
  content: '';
}
.icon-bell-dot:before {
  content: '';
}
.icon-bell-electric:before {
  content: '';
}
.icon-bell-minus:before {
  content: '';
}
.icon-bell-off:before {
  content: '';
}
.icon-bell-plus:before {
  content: '';
}
.icon-bell-ring:before {
  content: '';
}
.icon-bell:before {
  content: '';
}
.icon-between-horizonal-end:before {
  content: '';
}
.icon-between-horizonal-start:before {
  content: '';
}
.icon-between-horizontal-end:before {
  content: '';
}
.icon-between-horizontal-start:before {
  content: '';
}
.icon-between-vertical-end:before {
  content: '';
}
.icon-between-vertical-start:before {
  content: '';
}
.icon-biceps-flexed:before {
  content: '';
}
.icon-bike:before {
  content: '';
}
.icon-binary:before {
  content: '';
}
.icon-binoculars:before {
  content: '';
}
.icon-biohazard:before {
  content: '';
}
.icon-bird:before {
  content: '';
}
.icon-birdhouse:before {
  content: '';
}
.icon-bitcoin:before {
  content: '';
}
.icon-blend:before {
  content: '';
}
.icon-blinds:before {
  content: '';
}
.icon-blocks:before {
  content: '';
}
.icon-bluetooth-connected:before {
  content: '';
}
.icon-bluetooth-off:before {
  content: '';
}
.icon-bluetooth-searching:before {
  content: '';
}
.icon-bluetooth:before {
  content: '';
}
.icon-bold:before {
  content: '';
}
.icon-bolt:before {
  content: '';
}
.icon-bomb:before {
  content: '';
}
.icon-bone:before {
  content: '';
}
.icon-book-a:before {
  content: '';
}
.icon-book-alert:before {
  content: '';
}
.icon-book-audio:before {
  content: '';
}
.icon-book-check:before {
  content: '';
}
.icon-book-copy:before {
  content: '';
}
.icon-book-dashed:before {
  content: '';
}
.icon-book-down:before {
  content: '';
}
.icon-book-headphones:before {
  content: '';
}
.icon-book-heart:before {
  content: '';
}
.icon-book-image:before {
  content: '';
}
.icon-book-key:before {
  content: '';
}
.icon-book-lock:before {
  content: '';
}
.icon-book-marked:before {
  content: '';
}
.icon-book-minus:before {
  content: '';
}
.icon-book-open-check:before {
  content: '';
}
.icon-book-open-text:before {
  content: '';
}
.icon-book-open:before {
  content: '';
}
.icon-book-plus:before {
  content: '';
}
.icon-book-search:before {
  content: '';
}
.icon-book-template:before {
  content: '';
}
.icon-book-text:before {
  content: '';
}
.icon-book-type:before {
  content: '';
}
.icon-book-up-2:before {
  content: '';
}
.icon-book-up:before {
  content: '';
}
.icon-book-user:before {
  content: '';
}
.icon-book-x:before {
  content: '';
}
.icon-book:before {
  content: '';
}
.icon-bookmark-check:before {
  content: '';
}
.icon-bookmark-minus:before {
  content: '';
}
.icon-bookmark-off:before {
  content: '';
}
.icon-bookmark-plus:before {
  content: '';
}
.icon-bookmark-x:before {
  content: '';
}
.icon-bookmark:before {
  content: '';
}
.icon-boom-box:before {
  content: '';
}
.icon-bot-message-square:before {
  content: '';
}
.icon-bot-off:before {
  content: '';
}
.icon-bot:before {
  content: '';
}
.icon-bottle-wine:before {
  content: '';
}
.icon-bow-arrow:before {
  content: '';
}
.icon-box-select:before {
  content: '';
}
.icon-box:before {
  content: '';
}
.icon-boxes:before {
  content: '';
}
.icon-braces:before {
  content: '';
}
.icon-brackets:before {
  content: '';
}
.icon-brain-circuit:before {
  content: '';
}
.icon-brain-cog:before {
  content: '';
}
.icon-brain:before {
  content: '';
}
.icon-brick-wall-fire:before {
  content: '';
}
.icon-brick-wall-shield:before {
  content: '';
}
.icon-brick-wall:before {
  content: '';
}
.icon-briefcase-business:before {
  content: '';
}
.icon-briefcase-conveyor-belt:before {
  content: '';
}
.icon-briefcase-medical:before {
  content: '';
}
.icon-briefcase:before {
  content: '';
}
.icon-bring-to-front:before {
  content: '';
}
.icon-brush-cleaning:before {
  content: '';
}
.icon-brush:before {
  content: '';
}
.icon-bubbles:before {
  content: '';
}
.icon-bug-off:before {
  content: '';
}
.icon-bug-play:before {
  content: '';
}
.icon-bug:before {
  content: '';
}
.icon-building-2:before {
  content: '';
}
.icon-building:before {
  content: '';
}
.icon-bus-front:before {
  content: '';
}
.icon-bus:before {
  content: '';
}
.icon-cable-car:before {
  content: '';
}
.icon-cable:before {
  content: '';
}
.icon-cake-slice:before {
  content: '';
}
.icon-cake:before {
  content: '';
}
.icon-calculator:before {
  content: '';
}
.icon-calendar-1:before {
  content: '';
}
.icon-calendar-arrow-down:before {
  content: '';
}
.icon-calendar-arrow-up:before {
  content: '';
}
.icon-calendar-check-2:before {
  content: '';
}
.icon-calendar-check:before {
  content: '';
}
.icon-calendar-clock:before {
  content: '';
}
.icon-calendar-cog:before {
  content: '';
}
.icon-calendar-days:before {
  content: '';
}
.icon-calendar-fold:before {
  content: '';
}
.icon-calendar-heart:before {
  content: '';
}
.icon-calendar-minus-2:before {
  content: '';
}
.icon-calendar-minus:before {
  content: '';
}
.icon-calendar-off:before {
  content: '';
}
.icon-calendar-plus-2:before {
  content: '';
}
.icon-calendar-plus:before {
  content: '';
}
.icon-calendar-range:before {
  content: '';
}
.icon-calendar-search:before {
  content: '';
}
.icon-calendar-sync:before {
  content: '';
}
.icon-calendar-x-2:before {
  content: '';
}
.icon-calendar-x:before {
  content: '';
}
.icon-calendar:before {
  content: '';
}
.icon-calendars:before {
  content: '';
}
.icon-camera-off:before {
  content: '';
}
.icon-camera:before {
  content: '';
}
.icon-candlestick-chart:before {
  content: '';
}
.icon-candy-cane:before {
  content: '';
}
.icon-candy-off:before {
  content: '';
}
.icon-candy:before {
  content: '';
}
.icon-cannabis-off:before {
  content: '';
}
.icon-cannabis:before {
  content: '';
}
.icon-captions-off:before {
  content: '';
}
.icon-captions:before {
  content: '';
}
.icon-car-front:before {
  content: '';
}
.icon-car-taxi-front:before {
  content: '';
}
.icon-car:before {
  content: '';
}
.icon-caravan:before {
  content: '';
}
.icon-card-sim:before {
  content: '';
}
.icon-carrot:before {
  content: '';
}
.icon-case-lower:before {
  content: '';
}
.icon-case-sensitive:before {
  content: '';
}
.icon-case-upper:before {
  content: '';
}
.icon-cassette-tape:before {
  content: '';
}
.icon-cast:before {
  content: '';
}
.icon-castle:before {
  content: '';
}
.icon-cat:before {
  content: '';
}
.icon-cctv-off:before {
  content: '';
}
.icon-cctv:before {
  content: '';
}
.icon-chart-area:before {
  content: '';
}
.icon-chart-bar-big:before {
  content: '';
}
.icon-chart-bar-decreasing:before {
  content: '';
}
.icon-chart-bar-increasing:before {
  content: '';
}
.icon-chart-bar-stacked:before {
  content: '';
}
.icon-chart-bar:before {
  content: '';
}
.icon-chart-candlestick:before {
  content: '';
}
.icon-chart-column-big:before {
  content: '';
}
.icon-chart-column-decreasing:before {
  content: '';
}
.icon-chart-column-increasing:before {
  content: '';
}
.icon-chart-column-stacked:before {
  content: '';
}
.icon-chart-column:before {
  content: '';
}
.icon-chart-gantt:before {
  content: '';
}
.icon-chart-line:before {
  content: '';
}
.icon-chart-network:before {
  content: '';
}
.icon-chart-no-axes-column-decreasing:before {
  content: '';
}
.icon-chart-no-axes-column-increasing:before {
  content: '';
}
.icon-chart-no-axes-column:before {
  content: '';
}
.icon-chart-no-axes-combined:before {
  content: '';
}
.icon-chart-no-axes-gantt:before {
  content: '';
}
.icon-chart-pie:before {
  content: '';
}
.icon-chart-scatter:before {
  content: '';
}
.icon-chart-spline:before {
  content: '';
}
.icon-check-check:before {
  content: '';
}
.icon-check-circle-2:before {
  content: '';
}
.icon-check-circle:before {
  content: '';
}
.icon-check-line:before {
  content: '';
}
.icon-check-square-2:before {
  content: '';
}
.icon-check-square:before {
  content: '';
}
.icon-check:before {
  content: '';
}
.icon-chef-hat:before {
  content: '';
}
.icon-cherry:before {
  content: '';
}
.icon-chess-bishop:before {
  content: '';
}
.icon-chess-king:before {
  content: '';
}
.icon-chess-knight:before {
  content: '';
}
.icon-chess-pawn:before {
  content: '';
}
.icon-chess-queen:before {
  content: '';
}
.icon-chess-rook:before {
  content: '';
}
.icon-chevron-down-circle:before {
  content: '';
}
.icon-chevron-down-square:before {
  content: '';
}
.icon-chevron-down:before {
  content: '';
}
.icon-chevron-first:before {
  content: '';
}
.icon-chevron-last:before {
  content: '';
}
.icon-chevron-left-circle:before {
  content: '';
}
.icon-chevron-left-square:before {
  content: '';
}
.icon-chevron-left:before {
  content: '';
}
.icon-chevron-right-circle:before {
  content: '';
}
.icon-chevron-right-square:before {
  content: '';
}
.icon-chevron-right:before {
  content: '';
}
.icon-chevron-up-circle:before {
  content: '';
}
.icon-chevron-up-square:before {
  content: '';
}
.icon-chevron-up:before {
  content: '';
}
.icon-chevrons-down-up:before {
  content: '';
}
.icon-chevrons-down:before {
  content: '';
}
.icon-chevrons-left-right-ellipsis:before {
  content: '';
}
.icon-chevrons-left-right:before {
  content: '';
}
.icon-chevrons-left:before {
  content: '';
}
.icon-chevrons-right-left:before {
  content: '';
}
.icon-chevrons-right:before {
  content: '';
}
.icon-chevrons-up-down:before {
  content: '';
}
.icon-chevrons-up:before {
  content: '';
}
.icon-church:before {
  content: '';
}
.icon-cigarette-off:before {
  content: '';
}
.icon-cigarette:before {
  content: '';
}
.icon-circle-alert:before {
  content: '';
}
.icon-circle-arrow-down:before {
  content: '';
}
.icon-circle-arrow-left:before {
  content: '';
}
.icon-circle-arrow-out-down-left:before {
  content: '';
}
.icon-circle-arrow-out-down-right:before {
  content: '';
}
.icon-circle-arrow-out-up-left:before {
  content: '';
}
.icon-circle-arrow-out-up-right:before {
  content: '';
}
.icon-circle-arrow-right:before {
  content: '';
}
.icon-circle-arrow-up:before {
  content: '';
}
.icon-circle-check-big:before {
  content: '';
}
.icon-circle-check:before {
  content: '';
}
.icon-circle-chevron-down:before {
  content: '';
}
.icon-circle-chevron-left:before {
  content: '';
}
.icon-circle-chevron-right:before {
  content: '';
}
.icon-circle-chevron-up:before {
  content: '';
}
.icon-circle-dashed:before {
  content: '';
}
.icon-circle-divide:before {
  content: '';
}
.icon-circle-dollar-sign:before {
  content: '';
}
.icon-circle-dot-dashed:before {
  content: '';
}
.icon-circle-dot:before {
  content: '';
}
.icon-circle-ellipsis:before {
  content: '';
}
.icon-circle-equal:before {
  content: '';
}
.icon-circle-fading-arrow-up:before {
  content: '';
}
.icon-circle-fading-plus:before {
  content: '';
}
.icon-circle-gauge:before {
  content: '';
}
.icon-circle-help:before {
  content: '';
}
.icon-circle-minus:before {
  content: '';
}
.icon-circle-off:before {
  content: '';
}
.icon-circle-parking-off:before {
  content: '';
}
.icon-circle-parking:before {
  content: '';
}
.icon-circle-pause:before {
  content: '';
}
.icon-circle-percent:before {
  content: '';
}
.icon-circle-pile:before {
  content: '';
}
.icon-circle-play:before {
  content: '';
}
.icon-circle-plus:before {
  content: '';
}
.icon-circle-pound-sterling:before {
  content: '';
}
.icon-circle-power:before {
  content: '';
}
.icon-circle-question-mark:before {
  content: '';
}
.icon-circle-slash-2:before {
  content: '';
}
.icon-circle-slash:before {
  content: '';
}
.icon-circle-slashed:before {
  content: '';
}
.icon-circle-small:before {
  content: '';
}
.icon-circle-star:before {
  content: '';
}
.icon-circle-stop:before {
  content: '';
}
.icon-circle-user-round:before {
  content: '';
}
.icon-circle-user:before {
  content: '';
}
.icon-circle-x:before {
  content: '';
}
.icon-circle:before {
  content: '';
}
.icon-circuit-board:before {
  content: '';
}
.icon-citrus:before {
  content: '';
}
.icon-clapperboard:before {
  content: '';
}
.icon-clipboard-check:before {
  content: '';
}
.icon-clipboard-clock:before {
  content: '';
}
.icon-clipboard-copy:before {
  content: '';
}
.icon-clipboard-edit:before {
  content: '';
}
.icon-clipboard-list:before {
  content: '';
}
.icon-clipboard-minus:before {
  content: '';
}
.icon-clipboard-paste:before {
  content: '';
}
.icon-clipboard-pen-line:before {
  content: '';
}
.icon-clipboard-pen:before {
  content: '';
}
.icon-clipboard-plus:before {
  content: '';
}
.icon-clipboard-signature:before {
  content: '';
}
.icon-clipboard-type:before {
  content: '';
}
.icon-clipboard-x:before {
  content: '';
}
.icon-clipboard:before {
  content: '';
}
.icon-clock-1:before {
  content: '';
}
.icon-clock-10:before {
  content: '';
}
.icon-clock-11:before {
  content: '';
}
.icon-clock-12:before {
  content: '';
}
.icon-clock-2:before {
  content: '';
}
.icon-clock-3:before {
  content: '';
}
.icon-clock-4:before {
  content: '';
}
.icon-clock-5:before {
  content: '';
}
.icon-clock-6:before {
  content: '';
}
.icon-clock-7:before {
  content: '';
}
.icon-clock-8:before {
  content: '';
}
.icon-clock-9:before {
  content: '';
}
.icon-clock-alert:before {
  content: '';
}
.icon-clock-arrow-down:before {
  content: '';
}
.icon-clock-arrow-up:before {
  content: '';
}
.icon-clock-check:before {
  content: '';
}
.icon-clock-fading:before {
  content: '';
}
.icon-clock-plus:before {
  content: '';
}
.icon-clock:before {
  content: '';
}
.icon-closed-caption:before {
  content: '';
}
.icon-cloud-alert:before {
  content: '';
}
.icon-cloud-backup:before {
  content: '';
}
.icon-cloud-check:before {
  content: '';
}
.icon-cloud-cog:before {
  content: '';
}
.icon-cloud-download:before {
  content: '';
}
.icon-cloud-drizzle:before {
  content: '';
}
.icon-cloud-fog:before {
  content: '';
}
.icon-cloud-hail:before {
  content: '';
}
.icon-cloud-lightning:before {
  content: '';
}
.icon-cloud-moon-rain:before {
  content: '';
}
.icon-cloud-moon:before {
  content: '';
}
.icon-cloud-off:before {
  content: '';
}
.icon-cloud-rain-wind:before {
  content: '';
}
.icon-cloud-rain:before {
  content: '';
}
.icon-cloud-snow:before {
  content: '';
}
.icon-cloud-sun-rain:before {
  content: '';
}
.icon-cloud-sun:before {
  content: '';
}
.icon-cloud-sync:before {
  content: '';
}
.icon-cloud-upload:before {
  content: '';
}
.icon-cloud:before {
  content: '';
}
.icon-cloudy:before {
  content: '';
}
.icon-clover:before {
  content: '';
}
.icon-club:before {
  content: '';
}
.icon-code-2:before {
  content: '';
}
.icon-code-square:before {
  content: '';
}
.icon-code-xml:before {
  content: '';
}
.icon-code:before {
  content: '';
}
.icon-coffee:before {
  content: '';
}
.icon-cog:before {
  content: '';
}
.icon-coins:before {
  content: '';
}
.icon-columns-2:before {
  content: '';
}
.icon-columns-3-cog:before {
  content: '';
}
.icon-columns-3:before {
  content: '';
}
.icon-columns-4:before {
  content: '';
}
.icon-columns-settings:before {
  content: '';
}
.icon-columns:before {
  content: '';
}
.icon-combine:before {
  content: '';
}
.icon-command:before {
  content: '';
}
.icon-compass:before {
  content: '';
}
.icon-component:before {
  content: '';
}
.icon-computer:before {
  content: '';
}
.icon-concierge-bell:before {
  content: '';
}
.icon-cone:before {
  content: '';
}
.icon-construction:before {
  content: '';
}
.icon-contact-2:before {
  content: '';
}
.icon-contact-round:before {
  content: '';
}
.icon-contact:before {
  content: '';
}
.icon-container:before {
  content: '';
}
.icon-contrast:before {
  content: '';
}
.icon-cookie:before {
  content: '';
}
.icon-cooking-pot:before {
  content: '';
}
.icon-copy-check:before {
  content: '';
}
.icon-copy-minus:before {
  content: '';
}
.icon-copy-plus:before {
  content: '';
}
.icon-copy-slash:before {
  content: '';
}
.icon-copy-x:before {
  content: '';
}
.icon-copy:before {
  content: '';
}
.icon-copyleft:before {
  content: '';
}
.icon-copyright:before {
  content: '';
}
.icon-corner-down-left:before {
  content: '';
}
.icon-corner-down-right:before {
  content: '';
}
.icon-corner-left-down:before {
  content: '';
}
.icon-corner-left-up:before {
  content: '';
}
.icon-corner-right-down:before {
  content: '';
}
.icon-corner-right-up:before {
  content: '';
}
.icon-corner-up-left:before {
  content: '';
}
.icon-corner-up-right:before {
  content: '';
}
.icon-cpu:before {
  content: '';
}
.icon-creative-commons:before {
  content: '';
}
.icon-credit-card:before {
  content: '';
}
.icon-croissant:before {
  content: '';
}
.icon-crop:before {
  content: '';
}
.icon-cross:before {
  content: '';
}
.icon-crosshair:before {
  content: '';
}
.icon-crown:before {
  content: '';
}
.icon-cuboid:before {
  content: '';
}
.icon-cup-soda:before {
  content: '';
}
.icon-curly-braces:before {
  content: '';
}
.icon-currency:before {
  content: '';
}
.icon-cylinder:before {
  content: '';
}
.icon-dam:before {
  content: '';
}
.icon-database-backup:before {
  content: '';
}
.icon-database-search:before {
  content: '';
}
.icon-database-zap:before {
  content: '';
}
.icon-database:before {
  content: '';
}
.icon-decimals-arrow-left:before {
  content: '';
}
.icon-decimals-arrow-right:before {
  content: '';
}
.icon-delete:before {
  content: '';
}
.icon-dessert:before {
  content: '';
}
.icon-diameter:before {
  content: '';
}
.icon-diamond-minus:before {
  content: '';
}
.icon-diamond-percent:before {
  content: '';
}
.icon-diamond-plus:before {
  content: '';
}
.icon-diamond:before {
  content: '';
}
.icon-dice-1:before {
  content: '';
}
.icon-dice-2:before {
  content: '';
}
.icon-dice-3:before {
  content: '';
}
.icon-dice-4:before {
  content: '';
}
.icon-dice-5:before {
  content: '';
}
.icon-dice-6:before {
  content: '';
}
.icon-dices:before {
  content: '';
}
.icon-diff:before {
  content: '';
}
.icon-disc-2:before {
  content: '';
}
.icon-disc-3:before {
  content: '';
}
.icon-disc-album:before {
  content: '';
}
.icon-disc:before {
  content: '';
}
.icon-divide-circle:before {
  content: '';
}
.icon-divide-square:before {
  content: '';
}
.icon-divide:before {
  content: '';
}
.icon-dna-off:before {
  content: '';
}
.icon-dna:before {
  content: '';
}
.icon-dock:before {
  content: '';
}
.icon-dog:before {
  content: '';
}
.icon-dollar-sign:before {
  content: '';
}
.icon-donut:before {
  content: '';
}
.icon-door-closed-locked:before {
  content: '';
}
.icon-door-closed:before {
  content: '';
}
.icon-door-open:before {
  content: '';
}
.icon-dot-square:before {
  content: '';
}
.icon-dot:before {
  content: '';
}
.icon-download-cloud:before {
  content: '';
}
.icon-download:before {
  content: '';
}
.icon-drafting-compass:before {
  content: '';
}
.icon-drama:before {
  content: '';
}
.icon-drill:before {
  content: '';
}
.icon-drone:before {
  content: '';
}
.icon-droplet-off:before {
  content: '';
}
.icon-droplet:before {
  content: '';
}
.icon-droplets:before {
  content: '';
}
.icon-drum:before {
  content: '';
}
.icon-drumstick:before {
  content: '';
}
.icon-dumbbell:before {
  content: '';
}
.icon-ear-off:before {
  content: '';
}
.icon-ear:before {
  content: '';
}
.icon-earth-lock:before {
  content: '';
}
.icon-earth:before {
  content: '';
}
.icon-eclipse:before {
  content: '';
}
.icon-edit-2:before {
  content: '';
}
.icon-edit-3:before {
  content: '';
}
.icon-edit:before {
  content: '';
}
.icon-egg-fried:before {
  content: '';
}
.icon-egg-off:before {
  content: '';
}
.icon-egg:before {
  content: '';
}
.icon-ellipse:before {
  content: '';
}
.icon-ellipsis-vertical:before {
  content: '';
}
.icon-ellipsis:before {
  content: '';
}
.icon-equal-approximately:before {
  content: '';
}
.icon-equal-not:before {
  content: '';
}
.icon-equal-square:before {
  content: '';
}
.icon-equal:before {
  content: '';
}
.icon-eraser:before {
  content: '';
}
.icon-ethernet-port:before {
  content: '';
}
.icon-euro:before {
  content: '';
}
.icon-ev-charger:before {
  content: '';
}
.icon-expand:before {
  content: '';
}
.icon-external-link:before {
  content: '';
}
.icon-eye-closed:before {
  content: '';
}
.icon-eye-off:before {
  content: '';
}
.icon-eye:before {
  content: '';
}
.icon-factory:before {
  content: '';
}
.icon-fan:before {
  content: '';
}
.icon-fast-forward:before {
  content: '';
}
.icon-feather:before {
  content: '';
}
.icon-fence:before {
  content: '';
}
.icon-ferris-wheel:before {
  content: '';
}
.icon-file-archive:before {
  content: '';
}
.icon-file-audio-2:before {
  content: '';
}
.icon-file-audio:before {
  content: '';
}
.icon-file-axis-3-d:before {
  content: '';
}
.icon-file-axis-3d:before {
  content: '';
}
.icon-file-badge-2:before {
  content: '';
}
.icon-file-badge:before {
  content: '';
}
.icon-file-bar-chart-2:before {
  content: '';
}
.icon-file-bar-chart:before {
  content: '';
}
.icon-file-box:before {
  content: '';
}
.icon-file-braces-corner:before {
  content: '';
}
.icon-file-braces:before {
  content: '';
}
.icon-file-chart-column-increasing:before {
  content: '';
}
.icon-file-chart-column:before {
  content: '';
}
.icon-file-chart-line:before {
  content: '';
}
.icon-file-chart-pie:before {
  content: '';
}
.icon-file-check-2:before {
  content: '';
}
.icon-file-check-corner:before {
  content: '';
}
.icon-file-check:before {
  content: '';
}
.icon-file-clock:before {
  content: '';
}
.icon-file-code-2:before {
  content: '';
}
.icon-file-code-corner:before {
  content: '';
}
.icon-file-code:before {
  content: '';
}
.icon-file-cog-2:before {
  content: '';
}
.icon-file-cog:before {
  content: '';
}
.icon-file-diff:before {
  content: '';
}
.icon-file-digit:before {
  content: '';
}
.icon-file-down:before {
  content: '';
}
.icon-file-edit:before {
  content: '';
}
.icon-file-exclamation-point:before {
  content: '';
}
.icon-file-headphone:before {
  content: '';
}
.icon-file-heart:before {
  content: '';
}
.icon-file-image:before {
  content: '';
}
.icon-file-input:before {
  content: '';
}
.icon-file-json-2:before {
  content: '';
}
.icon-file-json:before {
  content: '';
}
.icon-file-key-2:before {
  content: '';
}
.icon-file-key:before {
  content: '';
}
.icon-file-line-chart:before {
  content: '';
}
.icon-file-lock-2:before {
  content: '';
}
.icon-file-lock:before {
  content: '';
}
.icon-file-minus-2:before {
  content: '';
}
.icon-file-minus-corner:before {
  content: '';
}
.icon-file-minus:before {
  content: '';
}
.icon-file-music:before {
  content: '';
}
.icon-file-output:before {
  content: '';
}
.icon-file-pen-line:before {
  content: '';
}
.icon-file-pen:before {
  content: '';
}
.icon-file-pie-chart:before {
  content: '';
}
.icon-file-play:before {
  content: '';
}
.icon-file-plus-2:before {
  content: '';
}
.icon-file-plus-corner:before {
  content: '';
}
.icon-file-plus:before {
  content: '';
}
.icon-file-question-mark:before {
  content: '';
}
.icon-file-question:before {
  content: '';
}
.icon-file-scan:before {
  content: '';
}
.icon-file-search-2:before {
  content: '';
}
.icon-file-search-corner:before {
  content: '';
}
.icon-file-search:before {
  content: '';
}
.icon-file-signal:before {
  content: '';
}
.icon-file-signature:before {
  content: '';
}
.icon-file-sliders:before {
  content: '';
}
.icon-file-spreadsheet:before {
  content: '';
}
.icon-file-stack:before {
  content: '';
}
.icon-file-symlink:before {
  content: '';
}
.icon-file-terminal:before {
  content: '';
}
.icon-file-text:before {
  content: '';
}
.icon-file-type-2:before {
  content: '';
}
.icon-file-type-corner:before {
  content: '';
}
.icon-file-type:before {
  content: '';
}
.icon-file-up:before {
  content: '';
}
.icon-file-user:before {
  content: '';
}
.icon-file-video-2:before {
  content: '';
}
.icon-file-video-camera:before {
  content: '';
}
.icon-file-video:before {
  content: '';
}
.icon-file-volume-2:before {
  content: '';
}
.icon-file-volume:before {
  content: '';
}
.icon-file-warning:before {
  content: '';
}
.icon-file-x-2:before {
  content: '';
}
.icon-file-x-corner:before {
  content: '';
}
.icon-file-x:before {
  content: '';
}
.icon-file:before {
  content: '';
}
.icon-files:before {
  content: '';
}
.icon-film:before {
  content: '';
}
.icon-filter-x:before {
  content: '';
}
.icon-filter:before {
  content: '';
}
.icon-fingerprint-pattern:before {
  content: '';
}
.icon-fingerprint:before {
  content: '';
}
.icon-fire-extinguisher:before {
  content: '';
}
.icon-fish-off:before {
  content: '';
}
.icon-fish-symbol:before {
  content: '';
}
.icon-fish:before {
  content: '';
}
.icon-fishing-hook:before {
  content: '';
}
.icon-fishing-rod:before {
  content: '';
}
.icon-flag-off:before {
  content: '';
}
.icon-flag-triangle-left:before {
  content: '';
}
.icon-flag-triangle-right:before {
  content: '';
}
.icon-flag:before {
  content: '';
}
.icon-flame-kindling:before {
  content: '';
}
.icon-flame:before {
  content: '';
}
.icon-flashlight-off:before {
  content: '';
}
.icon-flashlight:before {
  content: '';
}
.icon-flask-conical-off:before {
  content: '';
}
.icon-flask-conical:before {
  content: '';
}
.icon-flask-round:before {
  content: '';
}
.icon-flip-horizontal-2:before {
  content: '';
}
.icon-flip-horizontal:before {
  content: '';
}
.icon-flip-vertical-2:before {
  content: '';
}
.icon-flip-vertical:before {
  content: '';
}
.icon-flower-2:before {
  content: '';
}
.icon-flower:before {
  content: '';
}
.icon-focus:before {
  content: '';
}
.icon-fold-horizontal:before {
  content: '';
}
.icon-fold-vertical:before {
  content: '';
}
.icon-folder-archive:before {
  content: '';
}
.icon-folder-check:before {
  content: '';
}
.icon-folder-clock:before {
  content: '';
}
.icon-folder-closed:before {
  content: '';
}
.icon-folder-code:before {
  content: '';
}
.icon-folder-cog-2:before {
  content: '';
}
.icon-folder-cog:before {
  content: '';
}
.icon-folder-dot:before {
  content: '';
}
.icon-folder-down:before {
  content: '';
}
.icon-folder-edit:before {
  content: '';
}
.icon-folder-git-2:before {
  content: '';
}
.icon-folder-git:before {
  content: '';
}
.icon-folder-heart:before {
  content: '';
}
.icon-folder-input:before {
  content: '';
}
.icon-folder-kanban:before {
  content: '';
}
.icon-folder-key:before {
  content: '';
}
.icon-folder-lock:before {
  content: '';
}
.icon-folder-minus:before {
  content: '';
}
.icon-folder-open-dot:before {
  content: '';
}
.icon-folder-open:before {
  content: '';
}
.icon-folder-output:before {
  content: '';
}
.icon-folder-pen:before {
  content: '';
}
.icon-folder-plus:before {
  content: '';
}
.icon-folder-root:before {
  content: '';
}
.icon-folder-search-2:before {
  content: '';
}
.icon-folder-search:before {
  content: '';
}
.icon-folder-symlink:before {
  content: '';
}
.icon-folder-sync:before {
  content: '';
}
.icon-folder-tree:before {
  content: '';
}
.icon-folder-up:before {
  content: '';
}
.icon-folder-x:before {
  content: '';
}
.icon-folder:before {
  content: '';
}
.icon-folders:before {
  content: '';
}
.icon-footprints:before {
  content: '';
}
.icon-fork-knife-crossed:before {
  content: '';
}
.icon-fork-knife:before {
  content: '';
}
.icon-forklift:before {
  content: '';
}
.icon-form-input:before {
  content: '';
}
.icon-form:before {
  content: '';
}
.icon-forward:before {
  content: '';
}
.icon-frame:before {
  content: '';
}
.icon-frown:before {
  content: '';
}
.icon-fuel:before {
  content: '';
}
.icon-fullscreen:before {
  content: '';
}
.icon-function-square:before {
  content: '';
}
.icon-funnel-plus:before {
  content: '';
}
.icon-funnel-x:before {
  content: '';
}
.icon-funnel:before {
  content: '';
}
.icon-gallery-horizontal-end:before {
  content: '';
}
.icon-gallery-horizontal:before {
  content: '';
}
.icon-gallery-thumbnails:before {
  content: '';
}
.icon-gallery-vertical-end:before {
  content: '';
}
.icon-gallery-vertical:before {
  content: '';
}
.icon-gamepad-2:before {
  content: '';
}
.icon-gamepad-directional:before {
  content: '';
}
.icon-gamepad:before {
  content: '';
}
.icon-gantt-chart-square:before {
  content: '';
}
.icon-gantt-chart:before {
  content: '';
}
.icon-gauge-circle:before {
  content: '';
}
.icon-gauge:before {
  content: '';
}
.icon-gavel:before {
  content: '';
}
.icon-gem:before {
  content: '';
}
.icon-georgian-lari:before {
  content: '';
}
.icon-ghost:before {
  content: '';
}
.icon-gift:before {
  content: '';
}
.icon-git-branch-minus:before {
  content: '';
}
.icon-git-branch-plus:before {
  content: '';
}
.icon-git-branch:before {
  content: '';
}
.icon-git-commit-horizontal:before {
  content: '';
}
.icon-git-commit-vertical:before {
  content: '';
}
.icon-git-commit:before {
  content: '';
}
.icon-git-compare-arrows:before {
  content: '';
}
.icon-git-compare:before {
  content: '';
}
.icon-git-fork:before {
  content: '';
}
.icon-git-graph:before {
  content: '';
}
.icon-git-merge-conflict:before {
  content: '';
}
.icon-git-merge:before {
  content: '';
}
.icon-git-pull-request-arrow:before {
  content: '';
}
.icon-git-pull-request-closed:before {
  content: '';
}
.icon-git-pull-request-create-arrow:before {
  content: '';
}
.icon-git-pull-request-create:before {
  content: '';
}
.icon-git-pull-request-draft:before {
  content: '';
}
.icon-git-pull-request:before {
  content: '';
}
.icon-glass-water:before {
  content: '';
}
.icon-glasses:before {
  content: '';
}
.icon-globe-2:before {
  content: '';
}
.icon-globe-lock:before {
  content: '';
}
.icon-globe-off:before {
  content: '';
}
.icon-globe-x:before {
  content: '';
}
.icon-globe:before {
  content: '';
}
.icon-goal:before {
  content: '';
}
.icon-gpu:before {
  content: '';
}
.icon-grab:before {
  content: '';
}
.icon-graduation-cap:before {
  content: '';
}
.icon-grape:before {
  content: '';
}
.icon-grid-2-x-2-check:before {
  content: '';
}
.icon-grid-2-x-2-plus:before {
  content: '';
}
.icon-grid-2-x-2-x:before {
  content: '';
}
.icon-grid-2-x-2:before {
  content: '';
}
.icon-grid-2x2-check:before {
  content: '';
}
.icon-grid-2x2-plus:before {
  content: '';
}
.icon-grid-2x2-x:before {
  content: '';
}
.icon-grid-2x2:before {
  content: '';
}
.icon-grid-3-x-3:before {
  content: '';
}
.icon-grid-3x2:before {
  content: '';
}
.icon-grid-3x3:before {
  content: '';
}
.icon-grid:before {
  content: '';
}
.icon-grip-horizontal:before {
  content: '';
}
.icon-grip-vertical:before {
  content: '';
}
.icon-grip:before {
  content: '';
}
.icon-group:before {
  content: '';
}
.icon-guitar:before {
  content: '';
}
.icon-ham:before {
  content: '';
}
.icon-hamburger:before {
  content: '';
}
.icon-hammer:before {
  content: '';
}
.icon-hand-coins:before {
  content: '';
}
.icon-hand-fist:before {
  content: '';
}
.icon-hand-grab:before {
  content: '';
}
.icon-hand-heart:before {
  content: '';
}
.icon-hand-helping:before {
  content: '';
}
.icon-hand-metal:before {
  content: '';
}
.icon-hand-platter:before {
  content: '';
}
.icon-hand:before {
  content: '';
}
.icon-handbag:before {
  content: '';
}
.icon-handshake:before {
  content: '';
}
.icon-hard-drive-download:before {
  content: '';
}
.icon-hard-drive-upload:before {
  content: '';
}
.icon-hard-drive:before {
  content: '';
}
.icon-hard-hat:before {
  content: '';
}
.icon-hash:before {
  content: '';
}
.icon-hat-glasses:before {
  content: '';
}
.icon-haze:before {
  content: '';
}
.icon-hd:before {
  content: '';
}
.icon-hdmi-port:before {
  content: '';
}
.icon-heading-1:before {
  content: '';
}
.icon-heading-2:before {
  content: '';
}
.icon-heading-3:before {
  content: '';
}
.icon-heading-4:before {
  content: '';
}
.icon-heading-5:before {
  content: '';
}
.icon-heading-6:before {
  content: '';
}
.icon-heading:before {
  content: '';
}
.icon-headphone-off:before {
  content: '';
}
.icon-headphones:before {
  content: '';
}
.icon-headset:before {
  content: '';
}
.icon-heart-crack:before {
  content: '';
}
.icon-heart-handshake:before {
  content: '';
}
.icon-heart-minus:before {
  content: '';
}
.icon-heart-off:before {
  content: '';
}
.icon-heart-plus:before {
  content: '';
}
.icon-heart-pulse:before {
  content: '';
}
.icon-heart:before {
  content: '';
}
.icon-heater:before {
  content: '';
}
.icon-helicopter:before {
  content: '';
}
.icon-help-circle:before {
  content: '';
}
.icon-helping-hand:before {
  content: '';
}
.icon-hexagon:before {
  content: '';
}
.icon-highlighter:before {
  content: '';
}
.icon-history:before {
  content: '';
}
.icon-home:before {
  content: '';
}
.icon-hop-off:before {
  content: '';
}
.icon-hop:before {
  content: '';
}
.icon-hospital:before {
  content: '';
}
.icon-hotel:before {
  content: '';
}
.icon-hourglass:before {
  content: '';
}
.icon-house-heart:before {
  content: '';
}
.icon-house-plug:before {
  content: '';
}
.icon-house-plus:before {
  content: '';
}
.icon-house-wifi:before {
  content: '';
}
.icon-house:before {
  content: '';
}
.icon-ice-cream-2:before {
  content: '';
}
.icon-ice-cream-bowl:before {
  content: '';
}
.icon-ice-cream-cone:before {
  content: '';
}
.icon-ice-cream:before {
  content: '';
}
.icon-id-card-lanyard:before {
  content: '';
}
.icon-id-card:before {
  content: '';
}
.icon-image-down:before {
  content: '';
}
.icon-image-minus:before {
  content: '';
}
.icon-image-off:before {
  content: '';
}
.icon-image-play:before {
  content: '';
}
.icon-image-plus:before {
  content: '';
}
.icon-image-up:before {
  content: '';
}
.icon-image-upscale:before {
  content: '';
}
.icon-image:before {
  content: '';
}
.icon-images:before {
  content: '';
}
.icon-import:before {
  content: '';
}
.icon-inbox:before {
  content: '';
}
.icon-indent-decrease:before {
  content: '';
}
.icon-indent-increase:before {
  content: '';
}
.icon-indent:before {
  content: '';
}
.icon-indian-rupee:before {
  content: '';
}
.icon-infinity:before {
  content: '';
}
.icon-info:before {
  content: '';
}
.icon-inspect:before {
  content: '';
}
.icon-inspection-panel:before {
  content: '';
}
.icon-italic:before {
  content: '';
}
.icon-iteration-ccw:before {
  content: '';
}
.icon-iteration-cw:before {
  content: '';
}
.icon-japanese-yen:before {
  content: '';
}
.icon-joystick:before {
  content: '';
}
.icon-kanban-square-dashed:before {
  content: '';
}
.icon-kanban-square:before {
  content: '';
}
.icon-kanban:before {
  content: '';
}
.icon-kayak:before {
  content: '';
}
.icon-key-round:before {
  content: '';
}
.icon-key-square:before {
  content: '';
}
.icon-key:before {
  content: '';
}
.icon-keyboard-music:before {
  content: '';
}
.icon-keyboard-off:before {
  content: '';
}
.icon-keyboard:before {
  content: '';
}
.icon-lamp-ceiling:before {
  content: '';
}
.icon-lamp-desk:before {
  content: '';
}
.icon-lamp-floor:before {
  content: '';
}
.icon-lamp-wall-down:before {
  content: '';
}
.icon-lamp-wall-up:before {
  content: '';
}
.icon-lamp:before {
  content: '';
}
.icon-land-plot:before {
  content: '';
}
.icon-landmark:before {
  content: '';
}
.icon-languages:before {
  content: '';
}
.icon-laptop-2:before {
  content: '';
}
.icon-laptop-minimal-check:before {
  content: '';
}
.icon-laptop-minimal:before {
  content: '';
}
.icon-laptop:before {
  content: '';
}
.icon-lasso-select:before {
  content: '';
}
.icon-lasso:before {
  content: '';
}
.icon-laugh:before {
  content: '';
}
.icon-layers-2:before {
  content: '';
}
.icon-layers-3:before {
  content: '';
}
.icon-layers-plus:before {
  content: '';
}
.icon-layers:before {
  content: '';
}
.icon-layout-dashboard:before {
  content: '';
}
.icon-layout-grid:before {
  content: '';
}
.icon-layout-list:before {
  content: '';
}
.icon-layout-panel-left:before {
  content: '';
}
.icon-layout-panel-top:before {
  content: '';
}
.icon-layout-template:before {
  content: '';
}
.icon-layout:before {
  content: '';
}
.icon-leaf:before {
  content: '';
}
.icon-leafy-green:before {
  content: '';
}
.icon-lectern:before {
  content: '';
}
.icon-lens-concave:before {
  content: '';
}
.icon-lens-convex:before {
  content: '';
}
.icon-letter-text:before {
  content: '';
}
.icon-library-big:before {
  content: '';
}
.icon-library-square:before {
  content: '';
}
.icon-library:before {
  content: '';
}
.icon-life-buoy:before {
  content: '';
}
.icon-ligature:before {
  content: '';
}
.icon-lightbulb-off:before {
  content: '';
}
.icon-lightbulb:before {
  content: '';
}
.icon-line-chart:before {
  content: '';
}
.icon-line-dot-right-horizontal:before {
  content: '';
}
.icon-line-squiggle:before {
  content: '';
}
.icon-line-style:before {
  content: '';
}
.icon-link-2-off:before {
  content: '';
}
.icon-link-2:before {
  content: '';
}
.icon-link:before {
  content: '';
}
.icon-list-check:before {
  content: '';
}
.icon-list-checks:before {
  content: '';
}
.icon-list-chevrons-down-up:before {
  content: '';
}
.icon-list-chevrons-up-down:before {
  content: '';
}
.icon-list-collapse:before {
  content: '';
}
.icon-list-end:before {
  content: '';
}
.icon-list-filter-plus:before {
  content: '';
}
.icon-list-filter:before {
  content: '';
}
.icon-list-indent-decrease:before {
  content: '';
}
.icon-list-indent-increase:before {
  content: '';
}
.icon-list-minus:before {
  content: '';
}
.icon-list-music:before {
  content: '';
}
.icon-list-ordered:before {
  content: '';
}
.icon-list-plus:before {
  content: '';
}
.icon-list-restart:before {
  content: '';
}
.icon-list-start:before {
  content: '';
}
.icon-list-todo:before {
  content: '';
}
.icon-list-tree:before {
  content: '';
}
.icon-list-video:before {
  content: '';
}
.icon-list-x:before {
  content: '';
}
.icon-list:before {
  content: '';
}
.icon-loader-2:before {
  content: '';
}
.icon-loader-circle:before {
  content: '';
}
.icon-loader-pinwheel:before {
  content: '';
}
.icon-loader:before {
  content: '';
}
.icon-locate-fixed:before {
  content: '';
}
.icon-locate-off:before {
  content: '';
}
.icon-locate:before {
  content: '';
}
.icon-location-edit:before {
  content: '';
}
.icon-lock-keyhole-open:before {
  content: '';
}
.icon-lock-keyhole:before {
  content: '';
}
.icon-lock-open:before {
  content: '';
}
.icon-lock:before {
  content: '';
}
.icon-log-in:before {
  content: '';
}
.icon-log-out:before {
  content: '';
}
.icon-logs:before {
  content: '';
}
.icon-lollipop:before {
  content: '';
}
.icon-luggage:before {
  content: '';
}
.icon-m-square:before {
  content: '';
}
.icon-magnet:before {
  content: '';
}
.icon-mail-check:before {
  content: '';
}
.icon-mail-minus:before {
  content: '';
}
.icon-mail-open:before {
  content: '';
}
.icon-mail-plus:before {
  content: '';
}
.icon-mail-question-mark:before {
  content: '';
}
.icon-mail-question:before {
  content: '';
}
.icon-mail-search:before {
  content: '';
}
.icon-mail-warning:before {
  content: '';
}
.icon-mail-x:before {
  content: '';
}
.icon-mail:before {
  content: '';
}
.icon-mailbox:before {
  content: '';
}
.icon-mails:before {
  content: '';
}
.icon-map-minus:before {
  content: '';
}
.icon-map-pin-check-inside:before {
  content: '';
}
.icon-map-pin-check:before {
  content: '';
}
.icon-map-pin-house:before {
  content: '';
}
.icon-map-pin-minus-inside:before {
  content: '';
}
.icon-map-pin-minus:before {
  content: '';
}
.icon-map-pin-off:before {
  content: '';
}
.icon-map-pin-pen:before {
  content: '';
}
.icon-map-pin-plus-inside:before {
  content: '';
}
.icon-map-pin-plus:before {
  content: '';
}
.icon-map-pin-search:before {
  content: '';
}
.icon-map-pin-x-inside:before {
  content: '';
}
.icon-map-pin-x:before {
  content: '';
}
.icon-map-pin:before {
  content: '';
}
.icon-map-pinned:before {
  content: '';
}
.icon-map-plus:before {
  content: '';
}
.icon-map:before {
  content: '';
}
.icon-mars-stroke:before {
  content: '';
}
.icon-mars:before {
  content: '';
}
.icon-martini:before {
  content: '';
}
.icon-maximize-2:before {
  content: '';
}
.icon-maximize:before {
  content: '';
}
.icon-medal:before {
  content: '';
}
.icon-megaphone-off:before {
  content: '';
}
.icon-megaphone:before {
  content: '';
}
.icon-meh:before {
  content: '';
}
.icon-memory-stick:before {
  content: '';
}
.icon-menu-square:before {
  content: '';
}
.icon-menu:before {
  content: '';
}
.icon-merge:before {
  content: '';
}
.icon-message-circle-check:before {
  content: '';
}
.icon-message-circle-code:before {
  content: '';
}
.icon-message-circle-dashed:before {
  content: '';
}
.icon-message-circle-heart:before {
  content: '';
}
.icon-message-circle-more:before {
  content: '';
}
.icon-message-circle-off:before {
  content: '';
}
.icon-message-circle-plus:before {
  content: '';
}
.icon-message-circle-question-mark:before {
  content: '';
}
.icon-message-circle-question:before {
  content: '';
}
.icon-message-circle-reply:before {
  content: '';
}
.icon-message-circle-warning:before {
  content: '';
}
.icon-message-circle-x:before {
  content: '';
}
.icon-message-circle:before {
  content: '';
}
.icon-message-square-check:before {
  content: '';
}
.icon-message-square-code:before {
  content: '';
}
.icon-message-square-dashed:before {
  content: '';
}
.icon-message-square-diff:before {
  content: '';
}
.icon-message-square-dot:before {
  content: '';
}
.icon-message-square-heart:before {
  content: '';
}
.icon-message-square-lock:before {
  content: '';
}
.icon-message-square-more:before {
  content: '';
}
.icon-message-square-off:before {
  content: '';
}
.icon-message-square-plus:before {
  content: '';
}
.icon-message-square-quote:before {
  content: '';
}
.icon-message-square-reply:before {
  content: '';
}
.icon-message-square-share:before {
  content: '';
}
.icon-message-square-text:before {
  content: '';
}
.icon-message-square-warning:before {
  content: '';
}
.icon-message-square-x:before {
  content: '';
}
.icon-message-square:before {
  content: '';
}
.icon-messages-square:before {
  content: '';
}
.icon-metronome:before {
  content: '';
}
.icon-mic-2:before {
  content: '';
}
.icon-mic-off:before {
  content: '';
}
.icon-mic-vocal:before {
  content: '';
}
.icon-mic:before {
  content: '';
}
.icon-microchip:before {
  content: '';
}
.icon-microscope:before {
  content: '';
}
.icon-microwave:before {
  content: '';
}
.icon-milestone:before {
  content: '';
}
.icon-milk-off:before {
  content: '';
}
.icon-milk:before {
  content: '';
}
.icon-minimize-2:before {
  content: '';
}
.icon-minimize:before {
  content: '';
}
.icon-minus-circle:before {
  content: '';
}
.icon-minus-square:before {
  content: '';
}
.icon-minus:before {
  content: '';
}
.icon-mirror-rectangular:before {
  content: '';
}
.icon-mirror-round:before {
  content: '';
}
.icon-monitor-check:before {
  content: '';
}
.icon-monitor-cloud:before {
  content: '';
}
.icon-monitor-cog:before {
  content: '';
}
.icon-monitor-dot:before {
  content: '';
}
.icon-monitor-down:before {
  content: '';
}
.icon-monitor-off:before {
  content: '';
}
.icon-monitor-pause:before {
  content: '';
}
.icon-monitor-play:before {
  content: '';
}
.icon-monitor-smartphone:before {
  content: '';
}
.icon-monitor-speaker:before {
  content: '';
}
.icon-monitor-stop:before {
  content: '';
}
.icon-monitor-up:before {
  content: '';
}
.icon-monitor-x:before {
  content: '';
}
.icon-monitor:before {
  content: '';
}
.icon-moon-star:before {
  content: '';
}
.icon-moon:before {
  content: '';
}
.icon-more-horizontal:before {
  content: '';
}
.icon-more-vertical:before {
  content: '';
}
.icon-motorbike:before {
  content: '';
}
.icon-mountain-snow:before {
  content: '';
}
.icon-mountain:before {
  content: '';
}
.icon-mouse-left:before {
  content: '';
}
.icon-mouse-off:before {
  content: '';
}
.icon-mouse-pointer-2-off:before {
  content: '';
}
.icon-mouse-pointer-2:before {
  content: '';
}
.icon-mouse-pointer-ban:before {
  content: '';
}
.icon-mouse-pointer-click:before {
  content: '';
}
.icon-mouse-pointer-square-dashed:before {
  content: '';
}
.icon-mouse-pointer:before {
  content: '';
}
.icon-mouse-right:before {
  content: '';
}
.icon-mouse:before {
  content: '';
}
.icon-move-3-d:before {
  content: '';
}
.icon-move-3d:before {
  content: '';
}
.icon-move-diagonal-2:before {
  content: '';
}
.icon-move-diagonal:before {
  content: '';
}
.icon-move-down-left:before {
  content: '';
}
.icon-move-down-right:before {
  content: '';
}
.icon-move-down:before {
  content: '';
}
.icon-move-horizontal:before {
  content: '';
}
.icon-move-left:before {
  content: '';
}
.icon-move-right:before {
  content: '';
}
.icon-move-up-left:before {
  content: '';
}
.icon-move-up-right:before {
  content: '';
}
.icon-move-up:before {
  content: '';
}
.icon-move-vertical:before {
  content: '';
}
.icon-move:before {
  content: '';
}
.icon-music-2:before {
  content: '';
}
.icon-music-3:before {
  content: '';
}
.icon-music-4:before {
  content: '';
}
.icon-music:before {
  content: '';
}
.icon-navigation-2-off:before {
  content: '';
}
.icon-navigation-2:before {
  content: '';
}
.icon-navigation-off:before {
  content: '';
}
.icon-navigation:before {
  content: '';
}
.icon-network:before {
  content: '';
}
.icon-newspaper:before {
  content: '';
}
.icon-nfc:before {
  content: '';
}
.icon-non-binary:before {
  content: '';
}
.icon-notebook-pen:before {
  content: '';
}
.icon-notebook-tabs:before {
  content: '';
}
.icon-notebook-text:before {
  content: '';
}
.icon-notebook:before {
  content: '';
}
.icon-notepad-text-dashed:before {
  content: '';
}
.icon-notepad-text:before {
  content: '';
}
.icon-nut-off:before {
  content: '';
}
.icon-nut:before {
  content: '';
}
.icon-octagon-alert:before {
  content: '';
}
.icon-octagon-minus:before {
  content: '';
}
.icon-octagon-pause:before {
  content: '';
}
.icon-octagon-x:before {
  content: '';
}
.icon-octagon:before {
  content: '';
}
.icon-omega:before {
  content: '';
}
.icon-option:before {
  content: '';
}
.icon-orbit:before {
  content: '';
}
.icon-origami:before {
  content: '';
}
.icon-outdent:before {
  content: '';
}
.icon-package-2:before {
  content: '';
}
.icon-package-check:before {
  content: '';
}
.icon-package-minus:before {
  content: '';
}
.icon-package-open:before {
  content: '';
}
.icon-package-plus:before {
  content: '';
}
.icon-package-search:before {
  content: '';
}
.icon-package-x:before {
  content: '';
}
.icon-package:before {
  content: '';
}
.icon-paint-bucket:before {
  content: '';
}
.icon-paint-roller:before {
  content: '';
}
.icon-paintbrush-2:before {
  content: '';
}
.icon-paintbrush-vertical:before {
  content: '';
}
.icon-paintbrush:before {
  content: '';
}
.icon-palette:before {
  content: '';
}
.icon-palmtree:before {
  content: '';
}
.icon-panda:before {
  content: '';
}
.icon-panel-bottom-close:before {
  content: '';
}
.icon-panel-bottom-dashed:before {
  content: '';
}
.icon-panel-bottom-inactive:before {
  content: '';
}
.icon-panel-bottom-open:before {
  content: '';
}
.icon-panel-bottom:before {
  content: '';
}
.icon-panel-left-close:before {
  content: '';
}
.icon-panel-left-dashed:before {
  content: '';
}
.icon-panel-left-inactive:before {
  content: '';
}
.icon-panel-left-open:before {
  content: '';
}
.icon-panel-left-right-dashed:before {
  content: '';
}
.icon-panel-left:before {
  content: '';
}
.icon-panel-right-close:before {
  content: '';
}
.icon-panel-right-dashed:before {
  content: '';
}
.icon-panel-right-inactive:before {
  content: '';
}
.icon-panel-right-open:before {
  content: '';
}
.icon-panel-right:before {
  content: '';
}
.icon-panel-top-bottom-dashed:before {
  content: '';
}
.icon-panel-top-close:before {
  content: '';
}
.icon-panel-top-dashed:before {
  content: '';
}
.icon-panel-top-inactive:before {
  content: '';
}
.icon-panel-top-open:before {
  content: '';
}
.icon-panel-top:before {
  content: '';
}
.icon-panels-left-bottom:before {
  content: '';
}
.icon-panels-left-right:before {
  content: '';
}
.icon-panels-right-bottom:before {
  content: '';
}
.icon-panels-top-bottom:before {
  content: '';
}
.icon-panels-top-left:before {
  content: '';
}
.icon-paperclip:before {
  content: '';
}
.icon-parentheses:before {
  content: '';
}
.icon-parking-circle-off:before {
  content: '';
}
.icon-parking-circle:before {
  content: '';
}
.icon-parking-meter:before {
  content: '';
}
.icon-parking-square-off:before {
  content: '';
}
.icon-parking-square:before {
  content: '';
}
.icon-party-popper:before {
  content: '';
}
.icon-pause-circle:before {
  content: '';
}
.icon-pause-octagon:before {
  content: '';
}
.icon-pause:before {
  content: '';
}
.icon-paw-print:before {
  content: '';
}
.icon-pc-case:before {
  content: '';
}
.icon-pen-box:before {
  content: '';
}
.icon-pen-line:before {
  content: '';
}
.icon-pen-off:before {
  content: '';
}
.icon-pen-square:before {
  content: '';
}
.icon-pen-tool:before {
  content: '';
}
.icon-pen:before {
  content: '';
}
.icon-pencil-line:before {
  content: '';
}
.icon-pencil-off:before {
  content: '';
}
.icon-pencil-ruler:before {
  content: '';
}
.icon-pencil:before {
  content: '';
}
.icon-pentagon:before {
  content: '';
}
.icon-percent-circle:before {
  content: '';
}
.icon-percent-diamond:before {
  content: '';
}
.icon-percent-square:before {
  content: '';
}
.icon-percent:before {
  content: '';
}
.icon-person-standing:before {
  content: '';
}
.icon-philippine-peso:before {
  content: '';
}
.icon-phone-call:before {
  content: '';
}
.icon-phone-forwarded:before {
  content: '';
}
.icon-phone-incoming:before {
  content: '';
}
.icon-phone-missed:before {
  content: '';
}
.icon-phone-off:before {
  content: '';
}
.icon-phone-outgoing:before {
  content: '';
}
.icon-phone:before {
  content: '';
}
.icon-pi-square:before {
  content: '';
}
.icon-pi:before {
  content: '';
}
.icon-piano:before {
  content: '';
}
.icon-pickaxe:before {
  content: '';
}
.icon-picture-in-picture-2:before {
  content: '';
}
.icon-picture-in-picture:before {
  content: '';
}
.icon-pie-chart:before {
  content: '';
}
.icon-piggy-bank:before {
  content: '';
}
.icon-pilcrow-left:before {
  content: '';
}
.icon-pilcrow-right:before {
  content: '';
}
.icon-pilcrow-square:before {
  content: '';
}
.icon-pilcrow:before {
  content: '';
}
.icon-pill-bottle:before {
  content: '';
}
.icon-pill:before {
  content: '';
}
.icon-pin-off:before {
  content: '';
}
.icon-pin:before {
  content: '';
}
.icon-pipette:before {
  content: '';
}
.icon-pizza:before {
  content: '';
}
.icon-plane-landing:before {
  content: '';
}
.icon-plane-takeoff:before {
  content: '';
}
.icon-plane:before {
  content: '';
}
.icon-play-circle:before {
  content: '';
}
.icon-play-square:before {
  content: '';
}
.icon-play:before {
  content: '';
}
.icon-plug-2:before {
  content: '';
}
.icon-plug-zap-2:before {
  content: '';
}
.icon-plug-zap:before {
  content: '';
}
.icon-plug:before {
  content: '';
}
.icon-plus-circle:before {
  content: '';
}
.icon-plus-square:before {
  content: '';
}
.icon-plus:before {
  content: '';
}
.icon-pocket-knife:before {
  content: '';
}
.icon-podcast:before {
  content: '';
}
.icon-pointer-off:before {
  content: '';
}
.icon-pointer:before {
  content: '';
}
.icon-popcorn:before {
  content: '';
}
.icon-popsicle:before {
  content: '';
}
.icon-pound-sterling:before {
  content: '';
}
.icon-power-circle:before {
  content: '';
}
.icon-power-off:before {
  content: '';
}
.icon-power-square:before {
  content: '';
}
.icon-power:before {
  content: '';
}
.icon-presentation:before {
  content: '';
}
.icon-printer-check:before {
  content: '';
}
.icon-printer-x:before {
  content: '';
}
.icon-printer:before {
  content: '';
}
.icon-projector:before {
  content: '';
}
.icon-proportions:before {
  content: '';
}
.icon-puzzle:before {
  content: '';
}
.icon-pyramid:before {
  content: '';
}
.icon-qr-code:before {
  content: '';
}
.icon-quote:before {
  content: '';
}
.icon-rabbit:before {
  content: '';
}
.icon-radar:before {
  content: '';
}
.icon-radiation:before {
  content: '';
}
.icon-radical:before {
  content: '';
}
.icon-radio-off:before {
  content: '';
}
.icon-radio-receiver:before {
  content: '';
}
.icon-radio-tower:before {
  content: '';
}
.icon-radio:before {
  content: '';
}
.icon-radius:before {
  content: '';
}
.icon-rainbow:before {
  content: '';
}
.icon-rat:before {
  content: '';
}
.icon-ratio:before {
  content: '';
}
.icon-receipt-cent:before {
  content: '';
}
.icon-receipt-euro:before {
  content: '';
}
.icon-receipt-indian-rupee:before {
  content: '';
}
.icon-receipt-japanese-yen:before {
  content: '';
}
.icon-receipt-pound-sterling:before {
  content: '';
}
.icon-receipt-russian-ruble:before {
  content: '';
}
.icon-receipt-swiss-franc:before {
  content: '';
}
.icon-receipt-text:before {
  content: '';
}
.icon-receipt-turkish-lira:before {
  content: '';
}
.icon-receipt:before {
  content: '';
}
.icon-rectangle-circle:before {
  content: '';
}
.icon-rectangle-ellipsis:before {
  content: '';
}
.icon-rectangle-goggles:before {
  content: '';
}
.icon-rectangle-horizontal:before {
  content: '';
}
.icon-rectangle-vertical:before {
  content: '';
}
.icon-recycle:before {
  content: '';
}
.icon-redo-2:before {
  content: '';
}
.icon-redo-dot:before {
  content: '';
}
.icon-redo:before {
  content: '';
}
.icon-refresh-ccw-dot:before {
  content: '';
}
.icon-refresh-ccw:before {
  content: '';
}
.icon-refresh-cw-off:before {
  content: '';
}
.icon-refresh-cw:before {
  content: '';
}
.icon-refrigerator:before {
  content: '';
}
.icon-regex:before {
  content: '';
}
.icon-remove-formatting:before {
  content: '';
}
.icon-repeat-1:before {
  content: '';
}
.icon-repeat-2:before {
  content: '';
}
.icon-repeat:before {
  content: '';
}
.icon-replace-all:before {
  content: '';
}
.icon-replace:before {
  content: '';
}
.icon-reply-all:before {
  content: '';
}
.icon-reply:before {
  content: '';
}
.icon-rewind:before {
  content: '';
}
.icon-ribbon:before {
  content: '';
}
.icon-road:before {
  content: '';
}
.icon-rocket:before {
  content: '';
}
.icon-rocking-chair:before {
  content: '';
}
.icon-roller-coaster:before {
  content: '';
}
.icon-rose:before {
  content: '';
}
.icon-rotate-3-d:before {
  content: '';
}
.icon-rotate-3d:before {
  content: '';
}
.icon-rotate-ccw-key:before {
  content: '';
}
.icon-rotate-ccw-square:before {
  content: '';
}
.icon-rotate-ccw:before {
  content: '';
}
.icon-rotate-cw-square:before {
  content: '';
}
.icon-rotate-cw:before {
  content: '';
}
.icon-route-off:before {
  content: '';
}
.icon-route:before {
  content: '';
}
.icon-router:before {
  content: '';
}
.icon-rows-2:before {
  content: '';
}
.icon-rows-3:before {
  content: '';
}
.icon-rows-4:before {
  content: '';
}
.icon-rows:before {
  content: '';
}
.icon-rss:before {
  content: '';
}
.icon-ruler-dimension-line:before {
  content: '';
}
.icon-ruler:before {
  content: '';
}
.icon-russian-ruble:before {
  content: '';
}
.icon-sailboat:before {
  content: '';
}
.icon-salad:before {
  content: '';
}
.icon-sandwich:before {
  content: '';
}
.icon-satellite-dish:before {
  content: '';
}
.icon-satellite:before {
  content: '';
}
.icon-saudi-riyal:before {
  content: '';
}
.icon-save-all:before {
  content: '';
}
.icon-save-off:before {
  content: '';
}
.icon-save:before {
  content: '';
}
.icon-scale-3-d:before {
  content: '';
}
.icon-scale-3d:before {
  content: '';
}
.icon-scale:before {
  content: '';
}
.icon-scaling:before {
  content: '';
}
.icon-scan-barcode:before {
  content: '';
}
.icon-scan-eye:before {
  content: '';
}
.icon-scan-face:before {
  content: '';
}
.icon-scan-heart:before {
  content: '';
}
.icon-scan-line:before {
  content: '';
}
.icon-scan-qr-code:before {
  content: '';
}
.icon-scan-search:before {
  content: '';
}
.icon-scan-text:before {
  content: '';
}
.icon-scan:before {
  content: '';
}
.icon-scatter-chart:before {
  content: '';
}
.icon-school-2:before {
  content: '';
}
.icon-school:before {
  content: '';
}
.icon-scissors-line-dashed:before {
  content: '';
}
.icon-scissors-square-dashed-bottom:before {
  content: '';
}
.icon-scissors-square:before {
  content: '';
}
.icon-scissors:before {
  content: '';
}
.icon-scooter:before {
  content: '';
}
.icon-screen-share-off:before {
  content: '';
}
.icon-screen-share:before {
  content: '';
}
.icon-scroll-text:before {
  content: '';
}
.icon-scroll:before {
  content: '';
}
.icon-search-alert:before {
  content: '';
}
.icon-search-check:before {
  content: '';
}
.icon-search-code:before {
  content: '';
}
.icon-search-slash:before {
  content: '';
}
.icon-search-x:before {
  content: '';
}
.icon-search:before {
  content: '';
}
.icon-section:before {
  content: '';
}
.icon-send-horizonal:before {
  content: '';
}
.icon-send-horizontal:before {
  content: '';
}
.icon-send-to-back:before {
  content: '';
}
.icon-send:before {
  content: '';
}
.icon-separator-horizontal:before {
  content: '';
}
.icon-separator-vertical:before {
  content: '';
}
.icon-server-cog:before {
  content: '';
}
.icon-server-crash:before {
  content: '';
}
.icon-server-off:before {
  content: '';
}
.icon-server:before {
  content: '';
}
.icon-settings-2:before {
  content: '';
}
.icon-settings:before {
  content: '';
}
.icon-shapes:before {
  content: '';
}
.icon-share-2:before {
  content: '';
}
.icon-share:before {
  content: '';
}
.icon-sheet:before {
  content: '';
}
.icon-shell:before {
  content: '';
}
.icon-shelving-unit:before {
  content: '';
}
.icon-shield-alert:before {
  content: '';
}
.icon-shield-ban:before {
  content: '';
}
.icon-shield-check:before {
  content: '';
}
.icon-shield-close:before {
  content: '';
}
.icon-shield-cog-corner:before {
  content: '';
}
.icon-shield-cog:before {
  content: '';
}
.icon-shield-ellipsis:before {
  content: '';
}
.icon-shield-half:before {
  content: '';
}
.icon-shield-minus:before {
  content: '';
}
.icon-shield-off:before {
  content: '';
}
.icon-shield-plus:before {
  content: '';
}
.icon-shield-question-mark:before {
  content: '';
}
.icon-shield-question:before {
  content: '';
}
.icon-shield-user:before {
  content: '';
}
.icon-shield-x:before {
  content: '';
}
.icon-shield:before {
  content: '';
}
.icon-ship-wheel:before {
  content: '';
}
.icon-ship:before {
  content: '';
}
.icon-shirt:before {
  content: '';
}
.icon-shopping-bag:before {
  content: '';
}
.icon-shopping-basket:before {
  content: '';
}
.icon-shopping-cart:before {
  content: '';
}
.icon-shovel:before {
  content: '';
}
.icon-shower-head:before {
  content: '';
}
.icon-shredder:before {
  content: '';
}
.icon-shrimp:before {
  content: '';
}
.icon-shrink:before {
  content: '';
}
.icon-shrub:before {
  content: '';
}
.icon-shuffle:before {
  content: '';
}
.icon-sidebar-close:before {
  content: '';
}
.icon-sidebar-open:before {
  content: '';
}
.icon-sidebar:before {
  content: '';
}
.icon-sigma-square:before {
  content: '';
}
.icon-sigma:before {
  content: '';
}
.icon-signal-high:before {
  content: '';
}
.icon-signal-low:before {
  content: '';
}
.icon-signal-medium:before {
  content: '';
}
.icon-signal-zero:before {
  content: '';
}
.icon-signal:before {
  content: '';
}
.icon-signature:before {
  content: '';
}
.icon-signpost-big:before {
  content: '';
}
.icon-signpost:before {
  content: '';
}
.icon-siren:before {
  content: '';
}
.icon-skip-back:before {
  content: '';
}
.icon-skip-forward:before {
  content: '';
}
.icon-skull:before {
  content: '';
}
.icon-slash-square:before {
  content: '';
}
.icon-slash:before {
  content: '';
}
.icon-slice:before {
  content: '';
}
.icon-sliders-horizontal:before {
  content: '';
}
.icon-sliders-vertical:before {
  content: '';
}
.icon-sliders:before {
  content: '';
}
.icon-smartphone-charging:before {
  content: '';
}
.icon-smartphone-nfc:before {
  content: '';
}
.icon-smartphone:before {
  content: '';
}
.icon-smile-plus:before {
  content: '';
}
.icon-smile:before {
  content: '';
}
.icon-snail:before {
  content: '';
}
.icon-snowflake:before {
  content: '';
}
.icon-soap-dispenser-droplet:before {
  content: '';
}
.icon-sofa:before {
  content: '';
}
.icon-solar-panel:before {
  content: '';
}
.icon-sort-asc:before {
  content: '';
}
.icon-sort-desc:before {
  content: '';
}
.icon-soup:before {
  content: '';
}
.icon-space:before {
  content: '';
}
.icon-spade:before {
  content: '';
}
.icon-sparkle:before {
  content: '';
}
.icon-sparkles:before {
  content: '';
}
.icon-speaker:before {
  content: '';
}
.icon-speech:before {
  content: '';
}
.icon-spell-check-2:before {
  content: '';
}
.icon-spell-check:before {
  content: '';
}
.icon-spline-pointer:before {
  content: '';
}
.icon-spline:before {
  content: '';
}
.icon-split-square-horizontal:before {
  content: '';
}
.icon-split-square-vertical:before {
  content: '';
}
.icon-split:before {
  content: '';
}
.icon-spool:before {
  content: '';
}
.icon-sport-shoe:before {
  content: '';
}
.icon-spotlight:before {
  content: '';
}
.icon-spray-can:before {
  content: '';
}
.icon-sprout:before {
  content: '';
}
.icon-square-activity:before {
  content: '';
}
.icon-square-arrow-down-left:before {
  content: '';
}
.icon-square-arrow-down-right:before {
  content: '';
}
.icon-square-arrow-down:before {
  content: '';
}
.icon-square-arrow-left:before {
  content: '';
}
.icon-square-arrow-out-down-left:before {
  content: '';
}
.icon-square-arrow-out-down-right:before {
  content: '';
}
.icon-square-arrow-out-up-left:before {
  content: '';
}
.icon-square-arrow-out-up-right:before {
  content: '';
}
.icon-square-arrow-right-enter:before {
  content: '';
}
.icon-square-arrow-right-exit:before {
  content: '';
}
.icon-square-arrow-right:before {
  content: '';
}
.icon-square-arrow-up-left:before {
  content: '';
}
.icon-square-arrow-up-right:before {
  content: '';
}
.icon-square-arrow-up:before {
  content: '';
}
.icon-square-asterisk:before {
  content: '';
}
.icon-square-bottom-dashed-scissors:before {
  content: '';
}
.icon-square-centerline-dashed-horizontal:before {
  content: '';
}
.icon-square-centerline-dashed-vertical:before {
  content: '';
}
.icon-square-chart-gantt:before {
  content: '';
}
.icon-square-check-big:before {
  content: '';
}
.icon-square-check:before {
  content: '';
}
.icon-square-chevron-down:before {
  content: '';
}
.icon-square-chevron-left:before {
  content: '';
}
.icon-square-chevron-right:before {
  content: '';
}
.icon-square-chevron-up:before {
  content: '';
}
.icon-square-code:before {
  content: '';
}
.icon-square-dashed-bottom-code:before {
  content: '';
}
.icon-square-dashed-bottom:before {
  content: '';
}
.icon-square-dashed-kanban:before {
  content: '';
}
.icon-square-dashed-mouse-pointer:before {
  content: '';
}
.icon-square-dashed-text:before {
  content: '';
}
.icon-square-dashed-top-solid:before {
  content: '';
}
.icon-square-dashed:before {
  content: '';
}
.icon-square-divide:before {
  content: '';
}
.icon-square-dot:before {
  content: '';
}
.icon-square-equal:before {
  content: '';
}
.icon-square-function:before {
  content: '';
}
.icon-square-gantt-chart:before {
  content: '';
}
.icon-square-kanban:before {
  content: '';
}
.icon-square-library:before {
  content: '';
}
.icon-square-m:before {
  content: '';
}
.icon-square-menu:before {
  content: '';
}
.icon-square-minus:before {
  content: '';
}
.icon-square-mouse-pointer:before {
  content: '';
}
.icon-square-parking-off:before {
  content: '';
}
.icon-square-parking:before {
  content: '';
}
.icon-square-pause:before {
  content: '';
}
.icon-square-pen:before {
  content: '';
}
.icon-square-percent:before {
  content: '';
}
.icon-square-pi:before {
  content: '';
}
.icon-square-pilcrow:before {
  content: '';
}
.icon-square-play:before {
  content: '';
}
.icon-square-plus:before {
  content: '';
}
.icon-square-power:before {
  content: '';
}
.icon-square-radical:before {
  content: '';
}
.icon-square-round-corner:before {
  content: '';
}
.icon-square-scissors:before {
  content: '';
}
.icon-square-sigma:before {
  content: '';
}
.icon-square-slash:before {
  content: '';
}
.icon-square-split-horizontal:before {
  content: '';
}
.icon-square-split-vertical:before {
  content: '';
}
.icon-square-square:before {
  content: '';
}
.icon-square-stack:before {
  content: '';
}
.icon-square-star:before {
  content: '';
}
.icon-square-stop:before {
  content: '';
}
.icon-square-terminal:before {
  content: '';
}
.icon-square-user-round:before {
  content: '';
}
.icon-square-user:before {
  content: '';
}
.icon-square-x:before {
  content: '';
}
.icon-square:before {
  content: '';
}
.icon-squares-exclude:before {
  content: '';
}
.icon-squares-intersect:before {
  content: '';
}
.icon-squares-subtract:before {
  content: '';
}
.icon-squares-unite:before {
  content: '';
}
.icon-squircle-dashed:before {
  content: '';
}
.icon-squircle:before {
  content: '';
}
.icon-squirrel:before {
  content: '';
}
.icon-stamp:before {
  content: '';
}
.icon-star-half:before {
  content: '';
}
.icon-star-off:before {
  content: '';
}
.icon-star:before {
  content: '';
}
.icon-stars:before {
  content: '';
}
.icon-step-back:before {
  content: '';
}
.icon-step-forward:before {
  content: '';
}
.icon-stethoscope:before {
  content: '';
}
.icon-sticker:before {
  content: '';
}
.icon-sticky-note:before {
  content: '';
}
.icon-stone:before {
  content: '';
}
.icon-stop-circle:before {
  content: '';
}
.icon-store:before {
  content: '';
}
.icon-stretch-horizontal:before {
  content: '';
}
.icon-stretch-vertical:before {
  content: '';
}
.icon-strikethrough:before {
  content: '';
}
.icon-subscript:before {
  content: '';
}
.icon-subtitles:before {
  content: '';
}
.icon-sun-dim:before {
  content: '';
}
.icon-sun-medium:before {
  content: '';
}
.icon-sun-moon:before {
  content: '';
}
.icon-sun-snow:before {
  content: '';
}
.icon-sun:before {
  content: '';
}
.icon-sunrise:before {
  content: '';
}
.icon-sunset:before {
  content: '';
}
.icon-superscript:before {
  content: '';
}
.icon-swatch-book:before {
  content: '';
}
.icon-swiss-franc:before {
  content: '';
}
.icon-switch-camera:before {
  content: '';
}
.icon-sword:before {
  content: '';
}
.icon-swords:before {
  content: '';
}
.icon-syringe:before {
  content: '';
}
.icon-table-2:before {
  content: '';
}
.icon-table-cells-merge:before {
  content: '';
}
.icon-table-cells-split:before {
  content: '';
}
.icon-table-columns-split:before {
  content: '';
}
.icon-table-config:before {
  content: '';
}
.icon-table-of-contents:before {
  content: '';
}
.icon-table-properties:before {
  content: '';
}
.icon-table-rows-split:before {
  content: '';
}
.icon-table:before {
  content: '';
}
.icon-tablet-smartphone:before {
  content: '';
}
.icon-tablet:before {
  content: '';
}
.icon-tablets:before {
  content: '';
}
.icon-tag:before {
  content: '';
}
.icon-tags:before {
  content: '';
}
.icon-tally-1:before {
  content: '';
}
.icon-tally-2:before {
  content: '';
}
.icon-tally-3:before {
  content: '';
}
.icon-tally-4:before {
  content: '';
}
.icon-tally-5:before {
  content: '';
}
.icon-tangent:before {
  content: '';
}
.icon-target:before {
  content: '';
}
.icon-telescope:before {
  content: '';
}
.icon-tent-tree:before {
  content: '';
}
.icon-tent:before {
  content: '';
}
.icon-terminal-square:before {
  content: '';
}
.icon-terminal:before {
  content: '';
}
.icon-test-tube-2:before {
  content: '';
}
.icon-test-tube-diagonal:before {
  content: '';
}
.icon-test-tube:before {
  content: '';
}
.icon-test-tubes:before {
  content: '';
}
.icon-text-align-center:before {
  content: '';
}
.icon-text-align-end:before {
  content: '';
}
.icon-text-align-justify:before {
  content: '';
}
.icon-text-align-start:before {
  content: '';
}
.icon-text-cursor-input:before {
  content: '';
}
.icon-text-cursor:before {
  content: '';
}
.icon-text-initial:before {
  content: '';
}
.icon-text-quote:before {
  content: '';
}
.icon-text-search:before {
  content: '';
}
.icon-text-select:before {
  content: '';
}
.icon-text-selection:before {
  content: '';
}
.icon-text-wrap:before {
  content: '';
}
.icon-text:before {
  content: '';
}
.icon-theater:before {
  content: '';
}
.icon-thermometer-snowflake:before {
  content: '';
}
.icon-thermometer-sun:before {
  content: '';
}
.icon-thermometer:before {
  content: '';
}
.icon-thumbs-down:before {
  content: '';
}
.icon-thumbs-up:before {
  content: '';
}
.icon-ticket-check:before {
  content: '';
}
.icon-ticket-minus:before {
  content: '';
}
.icon-ticket-percent:before {
  content: '';
}
.icon-ticket-plus:before {
  content: '';
}
.icon-ticket-slash:before {
  content: '';
}
.icon-ticket-x:before {
  content: '';
}
.icon-ticket:before {
  content: '';
}
.icon-tickets-plane:before {
  content: '';
}
.icon-tickets:before {
  content: '';
}
.icon-timer-off:before {
  content: '';
}
.icon-timer-reset:before {
  content: '';
}
.icon-timer:before {
  content: '';
}
.icon-toggle-left:before {
  content: '';
}
.icon-toggle-right:before {
  content: '';
}
.icon-toilet:before {
  content: '';
}
.icon-tool-case:before {
  content: '';
}
.icon-toolbox:before {
  content: '';
}
.icon-tornado:before {
  content: '';
}
.icon-torus:before {
  content: '';
}
.icon-touchpad-off:before {
  content: '';
}
.icon-touchpad:before {
  content: '';
}
.icon-towel-rack:before {
  content: '';
}
.icon-tower-control:before {
  content: '';
}
.icon-toy-brick:before {
  content: '';
}
.icon-tractor:before {
  content: '';
}
.icon-traffic-cone:before {
  content: '';
}
.icon-train-front-tunnel:before {
  content: '';
}
.icon-train-front:before {
  content: '';
}
.icon-train-track:before {
  content: '';
}
.icon-train:before {
  content: '';
}
.icon-tram-front:before {
  content: '';
}
.icon-transgender:before {
  content: '';
}
.icon-trash-2:before {
  content: '';
}
.icon-trash:before {
  content: '';
}
.icon-tree-deciduous:before {
  content: '';
}
.icon-tree-palm:before {
  content: '';
}
.icon-tree-pine:before {
  content: '';
}
.icon-trees:before {
  content: '';
}
.icon-trending-down:before {
  content: '';
}
.icon-trending-up-down:before {
  content: '';
}
.icon-trending-up:before {
  content: '';
}
.icon-triangle-alert:before {
  content: '';
}
.icon-triangle-dashed:before {
  content: '';
}
.icon-triangle-right:before {
  content: '';
}
.icon-triangle:before {
  content: '';
}
.icon-trophy:before {
  content: '';
}
.icon-truck-electric:before {
  content: '';
}
.icon-truck:before {
  content: '';
}
.icon-turkish-lira:before {
  content: '';
}
.icon-turntable:before {
  content: '';
}
.icon-turtle:before {
  content: '';
}
.icon-tv-2:before {
  content: '';
}
.icon-tv-minimal-play:before {
  content: '';
}
.icon-tv-minimal:before {
  content: '';
}
.icon-tv:before {
  content: '';
}
.icon-type-outline:before {
  content: '';
}
.icon-type:before {
  content: '';
}
.icon-umbrella-off:before {
  content: '';
}
.icon-umbrella:before {
  content: '';
}
.icon-underline:before {
  content: '';
}
.icon-undo-2:before {
  content: '';
}
.icon-undo-dot:before {
  content: '';
}
.icon-undo:before {
  content: '';
}
.icon-unfold-horizontal:before {
  content: '';
}
.icon-unfold-vertical:before {
  content: '';
}
.icon-ungroup:before {
  content: '';
}
.icon-university:before {
  content: '';
}
.icon-unlink-2:before {
  content: '';
}
.icon-unlink:before {
  content: '';
}
.icon-unlock-keyhole:before {
  content: '';
}
.icon-unlock:before {
  content: '';
}
.icon-unplug:before {
  content: '';
}
.icon-upload-cloud:before {
  content: '';
}
.icon-upload:before {
  content: '';
}
.icon-usb:before {
  content: '';
}
.icon-user-2:before {
  content: '';
}
.icon-user-check-2:before {
  content: '';
}
.icon-user-check:before {
  content: '';
}
.icon-user-circle-2:before {
  content: '';
}
.icon-user-circle:before {
  content: '';
}
.icon-user-cog-2:before {
  content: '';
}
.icon-user-cog:before {
  content: '';
}
.icon-user-key:before {
  content: '';
}
.icon-user-lock:before {
  content: '';
}
.icon-user-minus-2:before {
  content: '';
}
.icon-user-minus:before {
  content: '';
}
.icon-user-pen:before {
  content: '';
}
.icon-user-plus-2:before {
  content: '';
}
.icon-user-plus:before {
  content: '';
}
.icon-user-round-check:before {
  content: '';
}
.icon-user-round-cog:before {
  content: '';
}
.icon-user-round-key:before {
  content: '';
}
.icon-user-round-minus:before {
  content: '';
}
.icon-user-round-pen:before {
  content: '';
}
.icon-user-round-plus:before {
  content: '';
}
.icon-user-round-search:before {
  content: '';
}
.icon-user-round-x:before {
  content: '';
}
.icon-user-round:before {
  content: '';
}
.icon-user-search:before {
  content: '';
}
.icon-user-square-2:before {
  content: '';
}
.icon-user-square:before {
  content: '';
}
.icon-user-star:before {
  content: '';
}
.icon-user-x-2:before {
  content: '';
}
.icon-user-x:before {
  content: '';
}
.icon-user:before {
  content: '';
}
.icon-users-2:before {
  content: '';
}
.icon-users-round:before {
  content: '';
}
.icon-users:before {
  content: '';
}
.icon-utensils-crossed:before {
  content: '';
}
.icon-utensils:before {
  content: '';
}
.icon-utility-pole:before {
  content: '';
}
.icon-van:before {
  content: '';
}
.icon-variable:before {
  content: '';
}
.icon-vault:before {
  content: '';
}
.icon-vector-square:before {
  content: '';
}
.icon-vegan:before {
  content: '';
}
.icon-venetian-mask:before {
  content: '';
}
.icon-venus-and-mars:before {
  content: '';
}
.icon-venus:before {
  content: '';
}
.icon-verified:before {
  content: '';
}
.icon-vibrate-off:before {
  content: '';
}
.icon-vibrate:before {
  content: '';
}
.icon-video-off:before {
  content: '';
}
.icon-video:before {
  content: '';
}
.icon-videotape:before {
  content: '';
}
.icon-view:before {
  content: '';
}
.icon-voicemail:before {
  content: '';
}
.icon-volleyball:before {
  content: '';
}
.icon-volume-1:before {
  content: '';
}
.icon-volume-2:before {
  content: '';
}
.icon-volume-off:before {
  content: '';
}
.icon-volume-x:before {
  content: '';
}
.icon-volume:before {
  content: '';
}
.icon-vote:before {
  content: '';
}
.icon-wallet-2:before {
  content: '';
}
.icon-wallet-cards:before {
  content: '';
}
.icon-wallet-minimal:before {
  content: '';
}
.icon-wallet:before {
  content: '';
}
.icon-wallpaper:before {
  content: '';
}
.icon-wand-2:before {
  content: '';
}
.icon-wand-sparkles:before {
  content: '';
}
.icon-wand:before {
  content: '';
}
.icon-warehouse:before {
  content: '';
}
.icon-washing-machine:before {
  content: '';
}
.icon-watch:before {
  content: '';
}
.icon-waves-arrow-down:before {
  content: '';
}
.icon-waves-arrow-up:before {
  content: '';
}
.icon-waves-ladder:before {
  content: '';
}
.icon-waves:before {
  content: '';
}
.icon-waypoints:before {
  content: '';
}
.icon-webcam:before {
  content: '';
}
.icon-webhook-off:before {
  content: '';
}
.icon-webhook:before {
  content: '';
}
.icon-weight-tilde:before {
  content: '';
}
.icon-weight:before {
  content: '';
}
.icon-wheat-off:before {
  content: '';
}
.icon-wheat:before {
  content: '';
}
.icon-whole-word:before {
  content: '';
}
.icon-wifi-cog:before {
  content: '';
}
.icon-wifi-high:before {
  content: '';
}
.icon-wifi-low:before {
  content: '';
}
.icon-wifi-off:before {
  content: '';
}
.icon-wifi-pen:before {
  content: '';
}
.icon-wifi-sync:before {
  content: '';
}
.icon-wifi-zero:before {
  content: '';
}
.icon-wifi:before {
  content: '';
}
.icon-wind-arrow-down:before {
  content: '';
}
.icon-wind:before {
  content: '';
}
.icon-wine-off:before {
  content: '';
}
.icon-wine:before {
  content: '';
}
.icon-workflow:before {
  content: '';
}
.icon-worm:before {
  content: '';
}
.icon-wrap-text:before {
  content: '';
}
.icon-wrench:before {
  content: '';
}
.icon-x-circle:before {
  content: '';
}
.icon-x-line-top:before {
  content: '';
}
.icon-x-octagon:before {
  content: '';
}
.icon-x-square:before {
  content: '';
}
.icon-x:before {
  content: '';
}
.icon-zap-off:before {
  content: '';
}
.icon-zap:before {
  content: '';
}
.icon-zodiac-aquarius:before {
  content: '';
}
.icon-zodiac-aries:before {
  content: '';
}
.icon-zodiac-cancer:before {
  content: '';
}
.icon-zodiac-capricorn:before {
  content: '';
}
.icon-zodiac-gemini:before {
  content: '';
}
.icon-zodiac-leo:before {
  content: '';
}
.icon-zodiac-libra:before {
  content: '';
}
.icon-zodiac-ophiuchus:before {
  content: '';
}
.icon-zodiac-pisces:before {
  content: '';
}
.icon-zodiac-sagittarius:before {
  content: '';
}
.icon-zodiac-scorpio:before {
  content: '';
}
.icon-zodiac-taurus:before {
  content: '';
}
.icon-zodiac-virgo:before {
  content: '';
}
.icon-zoom-in:before {
  content: '';
}
.icon-zoom-out:before {
  content: '';
}
.dataflow,
.pipeline-flow,
.layer-stack,
.stat-punch,
.callout,
.check-grid,
.tech-stack {
  width: 100%;
  box-sizing: border-box;
}
.dataflow {
  margin: 0;
  padding: 1.6rem;
  background: var(--paper-soft);
  border: 1px solid var(--paper-rule);
  border-radius: var(--radius-sm);
}
.dataflow__heading {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1.3rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
}
.dataflow__heading i {
  color: var(--mango);
  font-size: 1.35rem;
}
.dataflow__track {
  display: flex;
  align-items: stretch;
  gap: 0;
}
.dataflow__stage {
  --tone: var(--orchid);
  flex: 1 1 0;
  min-width: 0;
  padding: 1rem;
  background: var(--paper);
  border: 2px solid var(--tone);
  border-radius: var(--radius-sm);
}
.dataflow__stage--in {
  --tone: var(--mango);
}
.dataflow__stage--mid {
  --tone: var(--orchid);
}
.dataflow__stage--out {
  --tone: var(--helico);
}
.dataflow__stage-label {
  margin: 0 0 0.9rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--tone);
  font-weight: 700;
}
.dataflow__nodes {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}
.dataflow__node {
  display: grid;
  grid-template-columns: 2.6rem 1fr;
  gap: 0.7rem;
  align-items: center;
}
.dataflow__node-icon {
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--paper-soft);
  border: 1px solid var(--paper-rule);
  color: var(--tone);
}
.dataflow__node-icon i {
  font-size: 1.2rem;
}
.dataflow__node-text {
  display: flex;
  flex-direction: column;
  line-height: 1.25;
  min-width: 0;
}
.dataflow__node-text strong {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.05rem;
  color: var(--ink);
}
.dataflow__node-text em {
  font-family: var(--font-meta);
  font-style: normal;
  font-size: 0.92rem;
  color: var(--ink-light);
}
.dataflow__link {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  padding: 0 0.6rem;
  font-size: 1.9rem;
  color: var(--ink-faint);
}
.dataflow__caption {
  margin: 1.3rem 0 0;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  line-height: 1.5;
  font-style: italic;
  color: var(--ink-light);
}
.pipeline-flow {
  margin: 0;
  padding: 1.8rem;
  background: var(--paper-soft);
  border: 1px solid var(--paper-rule);
  border-radius: var(--radius-sm);
}
.pipeline-flow__heading {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1.5rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
}
.pipeline-flow__heading i {
  color: var(--mango);
  font-size: 1.35rem;
}
.pipeline-flow__zone {
  --rail: var(--orchid);
}
.pipeline-flow__zone--ci {
  --rail: var(--helico);
}
.pipeline-flow__zone--agent {
  --rail: var(--mango);
}
.pipeline-flow__zone:not(:last-of-type):after {
  content: '↓';
  display: block;
  margin: 0.3rem 0 1.1rem 0.8rem;
  font-size: 1.6rem;
  line-height: 1;
  color: var(--ink-faint);
}
.pipeline-flow__zone-head {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1.1rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: var(--ink);
}
.pipeline-flow__zone-head i {
  color: var(--rail);
  font-size: 1.45rem;
}
.pipeline-flow__zone-label {
  font-weight: 700;
}
.pipeline-flow__zone-badge {
  font-family: var(--font-code);
  font-size: 0.8rem;
  text-transform: none;
  letter-spacing: 0;
  color: var(--rail);
  border: 1px solid var(--rail);
  border-radius: 999px;
  padding: 0.15rem 0.7rem;
}
.pipeline-flow__steps {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
}
.pipeline-flow__steps:before {
  content: '';
  position: absolute;
  left: 1.45rem;
  top: 1.4rem;
  bottom: 1.4rem;
  width: 2px;
  background: var(--rail);
  opacity: 0.22;
}
.pipeline-flow__step {
  position: relative;
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: 1.1rem;
  padding-bottom: 1.2rem;
}
.pipeline-flow__step:last-child {
  padding-bottom: 0;
}
.pipeline-flow__dot {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--paper);
  border: 1.5px solid var(--rail);
  color: var(--rail);
  z-index: 1;
}
.pipeline-flow__dot i {
  font-size: 1.35rem;
}
.pipeline-flow__dot--human {
  background: color-mix(in srgb, var(--mango) 14%, var(--paper));
  border-color: var(--mango);
  color: var(--mango);
}
.pipeline-flow__dot--deploy {
  background: color-mix(in srgb, var(--ember) 12%, var(--paper));
  border-color: var(--ember);
  color: var(--ember);
}
.pipeline-flow__body {
  padding-top: 0.3rem;
}
.pipeline-flow__step-title {
  margin: 0 0 0.2rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
}
.pipeline-flow__step-desc {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.45;
  color: var(--ink-mid);
}
.pipeline-flow__caption {
  margin: 1.4rem 0 0;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  line-height: 1.5;
  color: var(--ink-light);
  font-style: italic;
}
.layer-stack {
  position: relative;
  margin: 0;
  padding: 1.6rem 1.6rem 1.6rem 3.4rem;
  background: var(--paper-soft);
  border: 1px solid var(--paper-rule);
  border-radius: var(--radius-sm);
}
.layer-stack__heading {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1.3rem -2rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
}
.layer-stack__heading i {
  color: var(--mango);
  font-size: 1.35rem;
}
.layer-stack__layers {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}
.layer-stack__layer {
  padding: 1rem 1.2rem;
  background: var(--paper);
  border: 2px solid var(--orchid);
  border-radius: var(--radius-sm);
}
.layer-stack__layer--core {
  border-color: var(--ember);
  background: color-mix(in srgb, var(--ember) 6%, var(--paper));
  box-shadow: var(--shadow-card-rest);
}
.layer-stack__head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.7rem;
}
.layer-stack__name {
  margin: 0;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
}
.layer-stack__core-tag {
  font-family: var(--font-code);
  font-size: 0.8rem;
  color: var(--ember);
  border: 1px solid var(--ember);
  border-radius: 999px;
  padding: 0.1rem 0.7rem;
}
.layer-stack__role {
  margin: 0.3rem 0 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.45;
  color: var(--ink-mid);
}
.layer-stack__modules {
  list-style: none;
  margin: 0.8rem 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.layer-stack__module {
  font-family: var(--font-code);
  font-size: 0.92rem;
  color: var(--ink-mid);
  background: var(--paper-mid);
  border-radius: var(--radius-sm);
  padding: 0.15rem 0.6rem;
}
.layer-stack__caption {
  margin: 1.3rem 0 0;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  line-height: 1.5;
  font-style: italic;
  color: var(--ink-light);
}
.stat-punch {
  margin: 0;
  padding: 3rem 2.2rem;
  background: color-mix(in srgb, var(--helico) 7%, var(--paper-soft));
  border: 2px solid var(--helico);
  border-radius: var(--radius-sm);
  text-align: center;
}
.stat-punch__row {
  display: flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
}
.stat-punch__val {
  font-family: var(--font-ui);
  font-weight: 700;
  line-height: 1;
}
.stat-punch__val--before {
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  color: var(--ink-light);
  text-decoration: line-through;
  text-decoration-color: var(--ink-faint);
  text-decoration-thickness: 2px;
}
.stat-punch__arrow {
  font-size: clamp(1.5rem, 2.5vw, 1.9rem);
  color: var(--ink-faint);
}
.stat-punch__val--after {
  font-size: clamp(3rem, 6vw, 4.6rem);
  color: var(--helico);
}
.stat-punch__factor {
  align-self: center;
  font-family: var(--font-code);
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--paper);
  background: var(--ember);
  border-radius: 999px;
  padding: 0.3rem 1rem;
}
.stat-punch__unit {
  margin: 0.8rem 0 0;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ink);
}
.stat-punch__note {
  margin: 0.5rem 0 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
}
.callout {
  --c: var(--mango);
  margin: 0;
  padding: 1.3rem 1.6rem;
  border-radius: var(--radius-sm);
  border: 2px solid var(--c);
  background: color-mix(in srgb, var(--c) 5%, var(--paper-soft));
}
.callout--danger {
  --c: var(--ember);
}
.callout--insight {
  --c: var(--orchid);
}
.callout--note {
  --c: var(--mango);
}
.callout--success {
  --c: var(--helico);
}
.callout__title {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 0.6rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  line-height: 1.3;
  color: var(--ink);
}
.callout__title i {
  font-size: 1.4rem;
  color: var(--c);
  flex: none;
}
.callout__body p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--ink-mid);
}
.callout__body p + p {
  margin-top: 0.6rem;
}
.check-grid {
  margin: 0;
}
.check-grid__heading {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1.4rem;
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--mango);
}
.check-grid__heading i {
  font-size: 1.3rem;
}
.check-grid__count {
  margin-left: auto;
  font-family: var(--font-code);
  font-size: 0.92rem;
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-light);
}
.check-grid__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  gap: 1.1rem;
}
.check-grid__group {
  padding: 1.2rem 1.4rem;
  background: var(--paper-soft);
  border: 1px solid var(--paper-rule);
  border-radius: var(--radius-sm);
}
.check-grid__group-head {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid var(--paper-rule);
  font-family: var(--font-meta);
  font-size: 1.15rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--ink);
}
.check-grid__group-head i {
  font-size: 1.4rem;
  color: var(--helico);
}
.check-grid__group-label {
  font-weight: 700;
}
.check-grid__group-badge {
  margin-left: auto;
  font-family: var(--font-code);
  font-size: 0.8rem;
  letter-spacing: 0;
  color: var(--ember);
  border: 1px solid var(--ember);
  border-radius: 999px;
  padding: 0.1rem 0.6rem;
}
.check-grid__items {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.check-grid__item {
  display: grid;
  grid-template-columns: 1.2rem 1fr;
  gap: 0.6rem;
  align-items: start;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.4;
  color: var(--ink-mid);
}
.check-grid__item i {
  font-size: 1.1rem;
  color: var(--helico);
  margin-top: 0.15rem;
}
.check-grid__item-text {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}
.check-grid__item-text strong {
  font-weight: 500;
  color: var(--ink);
}
.check-grid__item-text em {
  font-style: normal;
  font-size: 0.92rem;
  line-height: 1.4;
  color: var(--ink-light);
}
.check-grid__caption {
  margin: 1.3rem 0 0;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  line-height: 1.5;
  font-style: italic;
  color: var(--ink-light);
}
.tech-stack {
  margin: 0;
}
.tech-stack__heading {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1.4rem;
  padding: 0 0 0.8rem;
  border-bottom: 1px solid var(--paper-rule);
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--mango);
}
.tech-stack__heading i {
  font-size: 1.35rem;
}
.tech-stack__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 1.1rem;
}
.tech-stack__card {
  padding: 1.2rem 1.4rem;
  background: var(--paper-soft);
  border: 2px solid var(--mango);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card-rest);
}
.tech-stack__layer {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 0.5rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ink-light);
}
.tech-stack__layer i {
  font-size: 1.1rem;
  color: var(--mango);
}
.tech-stack__choice {
  margin: 0 0 0.4rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  line-height: 1.25;
  color: var(--ink);
}
.tech-stack__why {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.45;
  color: var(--ink-mid);
}
.schema-flow {
  flex: 0 0 auto;
  margin: auto 0;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.sf-step {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.4rem;
  background: var(--paper-soft);
  border: 2px solid var(--c, var(--mango));
  border-radius: 8px;
  padding: 2rem 1.4rem;
  box-shadow: var(--shadow-card-rest);
}
.schema-flow > :where(.sf-step:nth-child(6n + 1)) {
  --c: var(--mango);
}
.schema-flow > :where(.sf-step:nth-child(6n + 2)) {
  --c: var(--orchid);
}
.schema-flow > :where(.sf-step:nth-child(6n + 3)) {
  --c: var(--helico);
}
.schema-flow > :where(.sf-step:nth-child(6n + 4)) {
  --c: var(--canary);
}
.schema-flow > :where(.sf-step:nth-child(6n + 5)) {
  --c: var(--ember);
}
.schema-flow > :where(.sf-step:nth-child(6n + 6)) {
  --c: var(--lime);
}
.sf-step--a {
  --c: var(--mango);
}
.sf-step--b {
  --c: var(--orchid);
}
.sf-step--c {
  --c: var(--helico);
}
.sf-step--d {
  --c: var(--canary);
}
.sf-step--e {
  --c: var(--ember);
}
.sf-icon {
  width: 5.5rem;
  height: 5.5rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c, var(--mango));
  display: grid;
  place-items: center;
  color: var(--c, var(--mango));
  font-size: 2.6rem;
}
.sf-num {
  font-family: var(--font-meta);
  font-weight: 700;
  font-size: 0.92rem;
  color: var(--c, var(--mango));
  letter-spacing: 0.1em;
}
.sf-label {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.45rem;
  color: var(--ink);
  text-align: center;
  line-height: 1.2;
}
.sf-sub {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  text-align: center;
  line-height: 1.35;
  margin: 0;
}
.sf-arrow {
  align-self: center;
  color: var(--ink-faint);
  font-size: 2.4rem;
  flex: 0 0 auto;
}
.versus {
  flex: 1;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: stretch;
  gap: 1.5rem;
}
.vs-pane {
  background: var(--paper-soft);
  border: 2px solid var(--c, var(--ink-light));
  border-radius: 10px;
  padding: 2rem 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
}
.vs-pane--mute {
  --c: var(--ink-light);
}
.vs-pane--live {
  --c: var(--mango);
}
.vs-pane__t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
}
.vs-pane__s {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
  text-align: center;
}
.vs-mid {
  align-self: center;
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink-faint);
}
.vs-iso {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-mid);
}
.vs-iso i {
  font-size: 1.5rem;
  color: var(--ink-light);
}
.vs-iso .vs-box {
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--ink-light);
  display: grid;
  place-items: center;
  color: var(--ink-light);
  font-size: 1.5rem;
}
.minihub {
  position: relative;
  width: min(20rem, 90%);
  aspect-ratio: 1;
  margin: 1.8rem auto 1.4rem;
}
.minihub__svg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.minihub__svg line {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: gd-wire-pulse 1.8s ease-in-out infinite;
}
@keyframes mh-flow {
  to {
    stroke-dashoffset: -16;
  }
}
@keyframes gd-wire-pulse {
  0%,
  to {
    opacity: 0.45;
  }
  50% {
    opacity: 0.6;
  }
}
.minihub__core {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 5.2rem;
  height: 5.2rem;
  border-radius: 50%;
  background: var(--mango);
  color: var(--paper);
  display: grid;
  place-items: center;
  font-size: 2.1rem;
  z-index: 2;
  box-shadow: 0 4px 16px color-mix(in srgb, var(--mango) 40%, transparent);
}
.minihub__node {
  position: absolute;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  z-index: 2;
  width: 7rem;
}
.minihub__node .mh-dot {
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--helico);
  color: var(--helico);
  display: grid;
  place-items: center;
  font-size: 1.4rem;
}
.minihub__node .mh-l {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-mid);
  text-align: center;
  background: var(--paper);
  padding: 0 0.35rem;
  border-radius: 4px;
  line-height: 1.25;
}
.minihub__node--t {
  top: 6%;
  left: 50%;
}
.minihub__node--r {
  top: 50%;
  left: 94%;
}
.minihub__node--b {
  top: 94%;
  left: 50%;
}
.minihub__node--l {
  top: 50%;
  left: 6%;
}
.minihub--big {
  width: min(26rem, 60%);
}
.converge {
  flex: 1;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.5rem, 4vw, 3.5rem);
}
.converge__ins {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.converge__door {
  display: flex;
  align-items: center;
  gap: 1rem;
  background: var(--paper-soft);
  border: 2px solid var(--c, var(--mango));
  border-radius: 8px;
  padding: 1.3rem 1.6rem;
  min-width: 18rem;
}
.converge__door .cd-ic {
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.5rem;
  flex: 0 0 auto;
}
.converge__door .cd-t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
}
.converge__door .cd-s {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.converge__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--ink-faint);
  font-size: 2rem;
}
.converge__link svg {
  width: 6rem;
  height: 7rem;
}
.converge__link line {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: gd-wire-pulse 1.8s ease-in-out infinite;
}
.converge__out {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
}
.converge__out .co-core {
  width: 6.5rem;
  height: 6.5rem;
  border-radius: 50%;
  background: var(--mango);
  color: var(--paper);
  display: grid;
  place-items: center;
  font-size: 2.6rem;
  box-shadow: 0 6px 20px color-mix(in srgb, var(--mango) 40%, transparent);
}
.converge__out .co-l {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
}
.diverge {
  flex: 1;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.5rem, 4vw, 3.5rem);
}
.diverge__src {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  text-align: center;
}
.diverge__src .co-core {
  width: 6.5rem;
  height: 6.5rem;
  border-radius: 50%;
  background: var(--mango);
  color: var(--paper);
  display: grid;
  place-items: center;
  font-size: 2.6rem;
  box-shadow: 0 6px 20px color-mix(in srgb, var(--mango) 40%, transparent);
}
.diverge__src .co-l {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
}
.diverge__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--ink-faint);
}
.diverge__link svg {
  width: 6rem;
  height: 7rem;
}
.diverge__link line {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: gd-wire-pulse 1.8s ease-in-out infinite;
}
.diverge__outs {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.gauge {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1.4rem;
}
.gauge__cap {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
}
.gauge__bar {
  width: 88%;
  height: 5.5rem;
  background: var(--paper-soft);
  border: 2px solid var(--paper-rule);
  border-radius: 10px;
  position: relative;
  overflow: hidden;
}
.gauge__fill {
  position: absolute;
  inset: 0 auto 0 0;
  width: 0;
  background: linear-gradient(
    90deg,
    color-mix(in srgb, var(--helico) 80%, var(--paper)),
    var(--mango)
  );
  animation: gauge-fill 2.6s cubic-bezier(0.2, 0.7, 0.3, 1) forwards;
}
@keyframes gauge-fill {
  to {
    width: 82%;
  }
}
.gauge__tick {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  background: var(--ink-faint);
}
.gauge__tick span {
  position: absolute;
  top: calc(100% + 0.4rem);
  left: 50%;
  transform: translate(-50%);
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
  white-space: nowrap;
}
.gauge__marks {
  width: 88%;
  display: flex;
  justify-content: space-between;
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
  margin-top: 0.6rem;
}
.gauge__note {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
}
.ctx {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.3rem;
}
.ctx__cap {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
  text-align: center;
}
.ctx__row {
  display: grid;
  grid-template-columns: 13rem 1fr;
  align-items: center;
  gap: 1.3rem;
}
.ctx__lbl {
  text-align: right;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
  line-height: 1.2;
}
.ctx__lbl em {
  display: block;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
  font-style: normal;
}
.ctx__track {
  position: relative;
  height: 3.4rem;
  border: 1px solid var(--paper-rule);
  border-radius: 6px;
  overflow: hidden;
  background:
    repeating-linear-gradient(90deg, var(--paper-deep) 0 1.5px, transparent 1.5px 20%),
    var(--paper-soft);
}
.ctx__bar {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0;
  background: var(--c);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 1rem;
  animation: ctx-grow 1.8s var(--d, 0s) cubic-bezier(0.2, 0.7, 0.3, 1) forwards;
}
@keyframes ctx-grow {
  to {
    width: var(--w);
  }
}
.ctx__bar b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--paper);
  white-space: nowrap;
}
.ctx__axis {
  display: grid;
  grid-template-columns: 13rem 1fr;
  gap: 1.3rem;
}
.ctx__axis-line {
  position: relative;
  height: 1.1rem;
}
.ctx__axis-line i {
  position: absolute;
  transform: translate(-50%);
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-faint);
}
.ctx__foot {
  text-align: center;
  font-family: var(--font-body);
  font-size: 1.15rem;
  color: var(--ink-mid);
  margin-top: 0.4rem;
}
.ctx__foot b {
  color: var(--ink);
  font-weight: 700;
}
.scale {
  flex: 0 0 auto;
  margin: auto 0;
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 1.6rem;
  padding-bottom: 2.4rem;
  position: relative;
}
.scale:after {
  content: 'coût · puissance →';
  position: absolute;
  right: 3%;
  bottom: 0.4rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-faint);
}
.scale--noaxis:after {
  content: none;
}
.scale__step {
  width: 15rem;
  background: var(--paper-soft);
  border: 2px solid var(--c);
  border-radius: 10px 10px 0 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.7rem;
  padding: 1.6rem 1rem;
  animation: fd-pop 0.5s var(--d, 0s) both;
}
.scale__step--1 {
  min-height: 15rem;
  --c: var(--helico);
}
.scale__step--2 {
  min-height: 19.5rem;
  --c: var(--canary);
}
.scale__step--3 {
  min-height: 24rem;
  --c: var(--ember);
}
.scale__ic {
  width: 3.8rem;
  height: 3.8rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.7rem;
}
.scale__name {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
}
.scale__use {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-mid);
  text-align: center;
}
.scale__cost {
  font-family: var(--font-meta);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--c);
  margin-top: auto;
  padding-top: 1rem;
  text-align: center;
}
.scale__cost span {
  display: block;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  font-weight: 400;
  color: var(--ink-light);
  margin-top: 0.2rem;
}
.session {
  flex: 1;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.5rem, 4vw, 3.5rem);
}
.session__col {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  max-width: 15rem;
}
.session__plabel {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--ink-light);
}
.session__item {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  background: color-mix(in srgb, var(--c, var(--mango)) 5%, var(--paper-soft));
  border: 2px solid var(--c, var(--mango));
  border-radius: 6px;
  padding: 0.85rem 1.1rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
}
.session__item i {
  color: var(--c, var(--mango));
  font-size: 1.4rem;
  flex: 0 0 auto;
}
.session__arrow {
  color: var(--ink-faint);
  font-size: 2.2rem;
  flex: 0 0 auto;
}
.loop {
  position: relative;
  width: clamp(18rem, 26vw, 22rem);
  aspect-ratio: 1;
  flex: 0 0 auto;
  margin: 2.4rem 0 2.2rem;
}
.loop__base {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  border: 3px dashed var(--paper-deep);
}
.loop__ring {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  background: conic-gradient(
    from 0deg,
    transparent 0 55%,
    color-mix(in srgb, var(--helico) 75%, transparent) 78%,
    transparent 100%
  );
  -webkit-mask: radial-gradient(
    farthest-side,
    transparent calc(100% - 16px),
    #000 calc(100% - 15px)
  );
  mask: radial-gradient(farthest-side, transparent calc(100% - 16px), #000 calc(100% - 15px));
  animation: loop-spin 7s linear infinite;
}
@keyframes loop-spin {
  to {
    transform: rotate(360deg);
  }
}
.loop__center {
  position: absolute;
  top: 22%;
  right: 22%;
  bottom: 22%;
  left: 22%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  text-align: center;
}
.loop__center .lc-t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
  line-height: 1.1;
}
.loop__center .lc-s {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.loop__node {
  position: absolute;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  width: 9rem;
  --c: var(--mango);
}
.loop__node .ln-dot {
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2.5px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.7rem;
  box-shadow: var(--shadow-card-rest);
  animation: fd-breathe 3.2s var(--d, 0s) infinite;
}
.loop__node .ln-l {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
  text-align: center;
  background: var(--paper);
  padding: 0 0.35rem;
  border-radius: 4px;
  line-height: 1.25;
}
.loop__node--1 {
  top: 1%;
  left: 50%;
  --c: var(--mango);
  --d: 0s;
}
.loop__node--2 {
  top: 74%;
  left: 92%;
  --c: var(--orchid);
  --d: 0.5s;
}
.loop__node--3 {
  top: 74%;
  left: 8%;
  --c: var(--helico);
  --d: 1s;
}
.flowdiag {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.flowdiag__row {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 2%;
}
.flowdiag__row:before {
  content: '';
  position: absolute;
  left: 10%;
  right: 10%;
  top: 3.15rem;
  height: 2px;
  background: var(--paper-deep);
  opacity: 0.55;
}
.fd-pulse {
  position: absolute;
  top: 2.55rem;
  left: 10%;
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50%;
  background: var(--mango);
  box-shadow: 0 0 18px 5px color-mix(in srgb, var(--mango) 55%, transparent);
  animation: fd-run 9s cubic-bezier(0.45, 0, 0.55, 1) infinite;
  z-index: 0;
}
@keyframes fd-run {
  0% {
    left: 10%;
  }
  to {
    left: 90%;
  }
}
.fd-node {
  position: relative;
  z-index: 1;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
  --c: var(--mango);
}
.fd-node--a {
  --c: var(--mango);
}
.fd-node--b {
  --c: var(--orchid);
}
.fd-node--c {
  --c: var(--helico);
}
.fd-node--d {
  --c: var(--ember);
}
.fd-dot {
  width: 6.2rem;
  height: 6.2rem;
  border-radius: 50%;
  background: var(--paper);
  border: 3px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 2.5rem;
  box-shadow: var(--shadow-card-rest);
  animation:
    fd-pop 0.55s var(--d, 0s) both,
    fd-breathe 3.2s var(--d, 0s) infinite;
}
@keyframes fd-pop {
  0% {
    opacity: 0;
    transform: scale(0.4);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fd-breathe {
  0%,
  to {
    box-shadow:
      0 0 0 0 transparent,
      var(--shadow-card-rest);
  }
  50% {
    box-shadow:
      0 0 0 0.55rem color-mix(in srgb, var(--c) 14%, transparent),
      var(--shadow-card-rest);
  }
}
.fd-label {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  line-height: 1.15;
}
.fd-sub {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
}
.pipe {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.pipe__cols {
  display: flex;
  align-items: stretch;
  gap: 0.5rem;
}
.pipe__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  --c: var(--mango);
}
.pipe__cols > :where(.pipe__col:nth-child(6n + 1)) {
  --c: var(--mango);
}
.pipe__cols > :where(.pipe__col:nth-child(6n + 2)) {
  --c: var(--orchid);
}
.pipe__cols > :where(.pipe__col:nth-child(6n + 3)) {
  --c: var(--helico);
}
.pipe__cols > :where(.pipe__col:nth-child(6n + 4)) {
  --c: var(--canary);
}
.pipe__cols > :where(.pipe__col:nth-child(6n + 5)) {
  --c: var(--ember);
}
.pipe__cols > :where(.pipe__col:nth-child(6n + 6)) {
  --c: var(--lime);
}
.pipe__col--a {
  --c: var(--mango);
}
.pipe__col--b {
  --c: var(--orchid);
}
.pipe__col--c {
  --c: var(--helico);
}
.pipe__col--d {
  --c: var(--canary);
}
.pipe__col--e {
  --c: var(--ember);
}
.pipe__head {
  background: var(--c);
  color: var(--paper);
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  padding: 0.9rem 1.4rem 0.9rem 1.7rem;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  letter-spacing: -0.01em;
  clip-path: polygon(
    0 0,
    calc(100% - 1.1rem) 0,
    100% 50%,
    calc(100% - 1.1rem) 100%,
    0 100%,
    1.1rem 50%
  );
}
.pipe__col:first-child .pipe__head {
  clip-path: polygon(0 0, calc(100% - 1.1rem) 0, 100% 50%, calc(100% - 1.1rem) 100%, 0 100%);
  padding-left: 1.4rem;
}
.pipe__head .pipe__n {
  font-family: var(--font-meta);
  opacity: 0.8;
}
.pipe__box {
  flex: 1;
  background: var(--paper-soft);
  border: 2px solid var(--c);
  margin-top: 0.6rem;
  border-radius: 0 0 6px 6px;
  padding: 1.5rem 1.3rem;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  align-items: flex-start;
}
.pipe__ic {
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.8rem;
}
.pipe__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.pipe__list li {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  line-height: 1.3;
}
.pipe__list li:before {
  content: '';
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--c);
  flex: 0 0 auto;
}
.pipe__list li code,
.pipe__list li .mono {
  font-family: var(--font-code);
  font-size: 1.05rem;
  color: var(--ink);
}
.tj-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.4rem;
  height: 3.4rem;
  background: var(--paper);
  border: 2px solid currentColor;
  font-size: 1.6rem;
  flex-shrink: 0;
}
.tj-badge--projet {
  color: var(--mango);
  border-radius: 50%;
}
.tj-badge--article {
  color: var(--orchid);
  border-radius: 4px;
}
.tj-badge--carnet {
  color: var(--helico);
  border-radius: 50%;
}
.tj-stage {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.3rem 0.7rem;
  border: 1px solid currentColor;
  border-radius: 4px;
  white-space: nowrap;
}
.tj-stage__dot {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 50%;
  background: currentColor;
}
.tj-stage--seed {
  color: var(--ink-light);
}
.tj-stage--sprout {
  color: var(--lime);
}
.tj-stage--growing {
  color: var(--canary);
}
.tj-stage--evergreen {
  color: var(--mango);
}
.inject {
  flex: 1;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1rem, 3vw, 2.4rem);
}
.inject__src {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  max-width: 30rem;
}
.inject__tag {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.inject__tag i {
  color: var(--mango);
  font-size: 1.2rem;
}
.inject__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 0 0 auto;
}
.inject__link svg {
  width: 5.5rem;
  height: 8rem;
}
.inject__link line {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: gd-wire-pulse 1.8s ease-in-out infinite;
}
.inject__verb {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
  text-align: center;
}
.inject__sessions {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}
.inject__sess {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  background: color-mix(in srgb, var(--helico) 5%, var(--paper-soft));
  border: 2px solid var(--helico);
  border-radius: 8px;
  padding: 0.85rem 1.2rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
}
.inject__sess .is-ic {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--helico);
  color: var(--helico);
  display: grid;
  place-items: center;
  font-size: 1.2rem;
}
.inject__cap {
  margin-top: 0.5rem;
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  max-width: 18rem;
}
.inject__cap b {
  color: var(--ink);
}
.ctxmix {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.4rem;
}
.ctxmix__cap {
  text-align: center;
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
  margin-bottom: 0.4rem;
}
.ctxmix__row {
  display: grid;
  grid-template-columns: 14rem 1fr;
  align-items: center;
  gap: 1.6rem;
}
.ctxmix__lbl {
  text-align: right;
}
.ctxmix__lbl b {
  font-family: var(--font-code);
  font-size: 1.15rem;
  color: var(--ink);
}
.ctxmix__lbl em {
  display: block;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
  font-style: normal;
  margin-top: 0.15rem;
}
.ctxmix__bars {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.cm-bar {
  position: relative;
  flex: 1;
  height: 3rem;
  border: 1px solid var(--paper-rule);
  border-radius: 6px;
  overflow: hidden;
  background:
    repeating-linear-gradient(90deg, var(--paper-deep) 0 1.5px, transparent 1.5px 18%),
    var(--paper-soft);
  display: flex;
  align-items: center;
}
.cm-bar b {
  position: relative;
  z-index: 1;
  margin-left: 0.9rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.05rem;
  color: var(--ink);
}
.cm-fill {
  position: absolute;
  inset: 0 auto 0 0;
  width: 0;
  background: var(--c, var(--mango));
  animation: ctx-grow 1.6s var(--d, 0s) cubic-bezier(0.2, 0.7, 0.3, 1) forwards;
  opacity: 0.55;
}
.cm-bar--ghost {
  border-style: dashed;
}
.cm-op {
  font-size: 1.5rem;
  color: var(--ink-faint);
  flex: 0 0 auto;
}
.maestro {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
}
.maestro__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  position: relative;
}
.maestro__head .ma-core {
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  background: var(--mango);
  color: var(--paper);
  display: grid;
  place-items: center;
  font-size: 2.2rem;
  box-shadow: 0 5px 18px color-mix(in srgb, var(--mango) 40%, transparent);
}
.maestro__head .ma-t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  text-align: center;
  line-height: 1.15;
}
.maestro__head .ma-t span {
  display: block;
  font-family: var(--font-meta);
  font-weight: 400;
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ma-fan {
  width: 22rem;
  height: 2.6rem;
}
.ma-fan line {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: gd-wire-pulse 1.8s ease-in-out infinite;
}
.maestro__agents {
  display: flex;
  gap: 1.4rem;
}
.ma-agent {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.55rem;
  width: 11rem;
  background: var(--paper-soft);
  border: 2px solid var(--orchid);
  border-radius: 10px;
  padding: 1.2rem 1rem;
  box-shadow: var(--shadow-card-rest);
}
.ma-agent .ma-aic {
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--orchid);
  color: var(--orchid);
  display: grid;
  place-items: center;
  font-size: 1.6rem;
}
.ma-agent .ma-al {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
}
.ma-agent .ma-branch {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--font-code);
  font-size: 0.92rem;
  color: var(--helico);
}
.maestro__mcp {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.55rem;
  margin-top: 0.3rem;
}
.ma-mcp-lbl {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
  margin-right: 0.4rem;
}
.ma-mcp-lbl i {
  color: var(--helico);
  font-size: 1.2rem;
}
.ma-tool {
  font-family: var(--font-code);
  font-size: 0.92rem;
  color: var(--ink-mid);
  background: var(--paper-mid);
  border: 1px solid var(--paper-rule);
  border-radius: 6px;
  padding: 0.2rem 0.7rem;
}
.prism {
  flex: 1;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: stretch;
  gap: clamp(1rem, 2.5vw, 2.2rem);
}
.prism__lens {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0.7rem;
  padding: 1.8rem 1.6rem;
  background: var(--paper-soft);
  border: 2px solid var(--c);
  border-radius: 12px;
  box-shadow: var(--shadow-card-rest);
}
.prism__lens .pl-ic {
  width: 4.6rem;
  height: 4.6rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 2.1rem;
}
.prism__lens .pl-t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  line-height: 1.15;
}
.prism__lens .pl-s {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
}
.prism__lens .pl-tags {
  list-style: none;
  margin: 0.6rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  width: 100%;
}
.prism__lens .pl-tags li {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  justify-content: flex-start;
  text-align: left;
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  background: var(--paper);
  border: 1px solid var(--paper-rule);
  border-radius: 8px;
  padding: 0.55rem 0.85rem;
}
.prism__lens .pl-tags li i {
  color: var(--c);
  font-size: 1.2rem;
  flex: 0 0 auto;
}
.prism__core {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  position: relative;
}
.prism__core:before,
.prism__core:after {
  content: '';
  position: absolute;
  top: calc(50% - 0.9rem);
  width: clamp(1.2rem, 3vw, 2.6rem);
  border-top: 2px solid var(--mango);
  opacity: 0.55;
}
.prism__core:before {
  right: 100%;
  margin-right: 0.5rem;
}
.prism__core:after {
  left: 100%;
  margin-left: 0.5rem;
}
.prism__hub {
  width: 6.8rem;
  height: 6.8rem;
  border-radius: 50%;
  background: var(--mango);
  color: var(--paper);
  display: grid;
  place-items: center;
  font-size: 2.8rem;
  z-index: 1;
  box-shadow: 0 6px 20px color-mix(in srgb, var(--mango) 40%, transparent);
}
.prism__name {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  z-index: 1;
}
.prism__tag {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
  z-index: 1;
}
.launchcard {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  min-width: 20rem;
  padding: 1.4rem 1.6rem;
  background: var(--paper-soft);
  border: 2px solid var(--c);
  border-radius: 10px;
  box-shadow: var(--shadow-card-rest);
}
.launchcard .lc-head {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.launchcard .cd-ic {
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.5rem;
  flex: 0 0 auto;
}
.launchcard .cd-t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
}
.launchcard .cd-s {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.launchcard .lc-cmd {
  font-family: var(--font-code);
  font-size: 1.05rem;
  color: #cfd6e4;
  background: #1d2330;
  border-radius: 8px;
  padding: 0.6rem 0.9rem;
}
.launchcard .lc-cmd .lc-prompt {
  color: var(--mango);
  margin-right: 0.5rem;
}
.launchcard .lc-pts {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}
.launchcard .lc-pts li {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
}
.launchcard .lc-pts li i {
  color: var(--c);
  font-size: 1.15rem;
  flex: 0 0 auto;
}
.cmdgrid {
  flex: 1;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.9rem;
  align-content: center;
}
.cmdcard {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem;
  padding: 1rem 1.4rem;
  background: var(--paper-soft);
  border: 2px solid var(--c);
  border-radius: 10px;
  box-shadow: var(--shadow-card-rest);
}
.cmdcard .cc-ic {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.35rem;
  margin-bottom: 0.3rem;
}
.cmdcard .cc-t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
}
.cmdcard .cc-t .mono {
  font-family: var(--font-code);
}
.cmdcard .cc-s {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  line-height: 1.35;
}
.cmdcard--wide {
  grid-column: 1 / -1;
  flex-direction: row;
  align-items: center;
  gap: 1.1rem;
}
.cmdcard--wide .cc-ic {
  margin-bottom: 0;
  flex: 0 0 auto;
}
.concept3 {
  flex: 1;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem;
  align-items: stretch;
}
.cn-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0.6rem;
  padding: 1.2rem 1.3rem;
  background: var(--paper-soft);
  border: 2px solid var(--c);
  border-radius: 12px;
  box-shadow: var(--shadow-card-rest);
}
.cn-card .cn-ic {
  width: 3.8rem;
  height: 3.8rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.8rem;
}
.cn-card .cn-t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
}
.cn-card .cn-s {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  line-height: 1.35;
}
.cn-card .cn-key {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  justify-content: center;
  flex-wrap: wrap;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--c);
  background: var(--paper);
  border: 1px solid var(--paper-rule);
  border-radius: 8px;
  padding: 0.55rem 0.85rem;
}
.cn-card .cn-key i {
  font-size: 1.15rem;
  flex: 0 0 auto;
}
.cn-diagram {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
  min-height: 5.4rem;
  justify-content: center;
}
.cn-diagram .cn-parent,
.cn-diagram .cn-agent {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  background: var(--c);
  color: var(--paper);
  display: grid;
  place-items: center;
  font-size: 1.5rem;
}
.cn-diagram .cn-fan {
  width: 5rem;
  height: 1.8rem;
}
.cn-diagram .cn-fan line {
  stroke: var(--c);
  stroke-width: 2;
  opacity: 0.55;
  animation: gd-wire-pulse 1.8s ease-in-out infinite;
}
.cn-diagram .cn-children {
  display: flex;
  gap: 1rem;
}
.cn-diagram .cn-children i {
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.2rem;
}
.cn-diagram .cn-branch {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-code);
  font-size: 0.92rem;
  color: var(--c);
  background: var(--paper);
  border: 1px solid var(--c);
  border-radius: 999px;
  padding: 0.3rem 0.9rem;
}
.cn-diagram .cn-plug {
  width: 1.6rem;
  height: 1.6rem;
  color: var(--ink-faint);
  display: grid;
  place-items: center;
  font-size: 1.3rem;
}
.cn-diagram .cn-ext {
  display: flex;
  gap: 0.7rem;
}
.cn-diagram .cn-ext i {
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 8px;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.2rem;
}
.envlane {
  flex: 1;
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0.6rem;
}
.envlane__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  padding: 1.6rem 1.4rem;
  background: var(--paper-soft);
  border: 2px solid var(--c, var(--mango));
  border-radius: 10px;
  box-shadow: var(--shadow-card-rest);
}
.envlane__col--dev {
  --c: var(--helico);
}
.envlane__col--stg {
  --c: var(--canary);
}
.envlane__col--prod {
  --c: var(--ember);
}
.envlane__sep {
  align-self: center;
  display: grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px dashed var(--ink-faint);
  color: var(--ink-light);
  font-size: 1.4rem;
  flex: 0 0 auto;
}
.el-head {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.el-ic {
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px solid var(--c);
  color: var(--c);
  display: grid;
  place-items: center;
  font-size: 1.6rem;
  flex: 0 0 auto;
}
.el-name {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  text-transform: lowercase;
}
.el-pres {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.el-pres b {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--c);
}
.el-bar {
  display: block;
  height: 0.9rem;
  border-radius: 6px;
  background: var(--paper-mid);
  position: relative;
  overflow: hidden;
}
.el-bar:after {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--p, 50%);
  background: var(--c);
  border-radius: 6px;
}
.el-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.el-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.35;
  color: var(--ink-mid);
}
.el-list li:before {
  content: '';
  width: 0.5rem;
  height: 0.5rem;
  margin-top: 0.5rem;
  border-radius: 50%;
  background: var(--c);
  flex: 0 0 auto;
}
.gate-tag {
  font-family: var(--font-code);
  font-size: 0.8rem;
  vertical-align: middle;
  margin-left: 0.5rem;
  color: var(--orchid);
  border: 1px solid var(--orchid);
  border-radius: 999px;
  padding: 0.05rem 0.55rem;
}
.gate-tag--human {
  color: var(--mango);
  border-color: var(--mango);
}
.gate8 .pipeline-flow__step {
  padding-bottom: 0.85rem;
}
.minihub__core i,
.prism__hub i,
.cn-parent i,
.cn-agent i,
.maestro__core i {
  color: var(--paper);
}
.schema-flow .sf-step:nth-of-type(1) {
  --c: var(--mango);
}
.schema-flow .sf-step:nth-of-type(2) {
  --c: var(--orchid);
}
.schema-flow .sf-step:nth-of-type(3) {
  --c: var(--helico);
}
.schema-flow .sf-step:nth-of-type(4) {
  --c: var(--canary);
}
.schema-flow .sf-step:nth-of-type(5) {
  --c: var(--ember);
}
.schema-flow .sf-step:nth-of-type(6) {
  --c: var(--lime);
}
.pipe__col:nth-of-type(1) {
  --c: var(--mango);
}
.pipe__col:nth-of-type(2) {
  --c: var(--orchid);
}
.pipe__col:nth-of-type(3) {
  --c: var(--helico);
}
.pipe__col:nth-of-type(4) {
  --c: var(--canary);
}
.pipe__col:nth-of-type(5) {
  --c: var(--ember);
}
.acte-cover {
  position: absolute;
  inset: calc(-1 * var(--rik-slide-padding-y, 3rem)) calc(-1 * var(--rik-slide-padding-x, 4rem));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  background:
    radial-gradient(
      120% 90% at 50% 110%,
      color-mix(in srgb, var(--c, var(--mango)) 22%, transparent),
      transparent 60%
    ),
    #221d18;
}
.acte-cover__kicker {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: #faf8f58c;
}
.acte-cover__num {
  font-family: var(--rik-font-display, var(--font-ui));
  font-weight: 800;
  font-size: 9rem;
  line-height: 0.9;
  letter-spacing: -0.02em;
  color: var(--c, var(--mango));
  text-shadow: 0 0 60px color-mix(in srgb, var(--c, var(--mango)) 45%, transparent);
}
.acte-cover__theme {
  font-family: var(--font-ui);
  font-weight: 800;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #faf8f5;
}
.acte-cover__sub {
  font-family: var(--font-serif);
  font-style: italic;
  font-size: 1.15rem;
  color: #faf8f5b8;
}
.acte-cover__steps {
  display: flex;
  gap: 0.8rem;
  margin-top: 1.6rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  letter-spacing: 0.12em;
  color: #faf8f557;
}
.acte-cover__steps b {
  color: var(--c, var(--mango));
  font-weight: 700;
}
.tcg {
  display: flex;
  justify-content: center;
  margin: 1.2rem 0 0.8rem;
}
.tcg__row {
  display: flex;
  gap: 1.2rem;
  align-items: flex-end;
}
.cardex:not(.is-open) .tcg__row {
  align-items: stretch;
}
.cardex:not(.is-open) .tcg__card {
  height: auto !important;
  min-height: 15.2rem;
}
.cardex.is-open .tcg__card {
  height: auto !important;
}
.tcg:has(.tcg__ribbon) {
  margin-top: 1.6rem;
}
.tcg__card {
  position: relative;
  width: 10.4rem;
  height: 15.2rem;
  display: flex;
  flex-direction: column;
  background: var(--paper);
  border: 2px solid var(--c);
  border-radius: 13px;
  padding: 0.6rem 0.8rem 0.7rem;
  box-shadow: 0 5px 16px #2a25201a;
  opacity: 1;
  transform: translateY(var(--ty, 0px)) scale(var(--s, 1));
  animation: tcg-rise 0.55s calc(0.25s + var(--i) * 0.38s) cubic-bezier(0.2, 0.7, 0.3, 1) backwards;
}
.tcg__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 0.1rem 0.52rem;
}
.tcg__num {
  min-width: 1.45rem;
  height: 1.45rem;
  box-sizing: border-box;
  padding: 0 0.32rem;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: var(--c);
  color: var(--paper);
  font-family: var(--font-meta);
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1;
}
.tcg__type {
  font-family: var(--font-meta);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--c);
}
.tcg__art {
  height: 4.8rem;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: color-mix(in srgb, var(--c) 8%, var(--paper-soft));
  border: 1px solid color-mix(in srgb, var(--c) 35%, var(--paper-rule));
  font-size: 2.2rem;
  color: var(--c);
}
.tcg__name {
  font-family: var(--font-ui);
  font-weight: 800;
  font-size: 1.15rem;
  color: var(--ink);
  text-align: center;
  padding: 0.6rem 0 0.35rem;
  letter-spacing: -0.01em;
  text-wrap: balance;
  min-height: 3.1em;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tcg__rule {
  width: 62%;
  margin: 0 auto;
  border-top: 1px solid var(--paper-rule);
}
.cmd {
  font-family: var(--font-code);
  font-style: normal;
  font-weight: 600;
  font-size: 0.84em;
  white-space: nowrap;
  background: color-mix(in srgb, var(--c, var(--ink)) 12%, var(--paper));
  color: color-mix(in srgb, var(--c, var(--ink)) 75%, var(--ink));
  border: 1px solid color-mix(in srgb, var(--c, var(--ink)) 30%, var(--paper-rule));
  padding: 0.1em 0.45em;
  border-radius: 6px;
  letter-spacing: 0;
}
.tcg__sub {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-serif);
  font-style: italic;
  font-size: 1.05rem;
  line-height: 1.26;
  color: var(--ink-mid);
  text-align: center;
  padding: 0.3rem 0.2rem 0;
  text-wrap: balance;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
.tcg__sub:has(.cmd) {
  flex-wrap: wrap;
  gap: 0.28rem;
  font-style: normal;
}
.tcg__sub:has(.cmd) .cmd {
  font-size: 0.72rem;
}
.tcg__card--hero {
  border-width: 3px;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--c) 28%, transparent);
}
.tcg__ribbon {
  position: absolute;
  top: -1.3rem;
  left: 50%;
  transform: translate(-50%);
  background: var(--c);
  color: var(--paper);
  font-family: var(--font-meta);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 0.22rem 0.7rem;
  border-radius: 999px;
  white-space: nowrap;
  box-shadow: 0 3px 10px color-mix(in srgb, var(--c) 40%, transparent);
}
.tcg__card:has(> .tcg__ribbon) {
  padding-top: 1rem;
}
.tcg--fan .tcg__ribbon {
  top: -0.95rem;
}
.tcg--fan .tcg__card:has(> .tcg__ribbon) {
  padding-top: 0.45rem;
}
@keyframes tcg-rise {
  0% {
    opacity: 0;
    transform: translateY(36px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .tcg__card {
    animation: none;
  }
}
.tcg--l .tcg__card {
  width: 11.8rem;
  height: 16rem;
}
.tcg--l .tcg__art {
  height: 4.6rem;
  font-size: 2.1rem;
}
.tcg--s .tcg__card {
  width: 9.2rem;
  height: 13.4rem;
}
.tcg--s .tcg__art {
  height: 4.4rem;
  font-size: 2rem;
}
.tcg--s .tcg__type {
  font-size: 0.8rem;
}
.tcg--s .tcg__sub {
  font-size: 0.92rem;
}
.tcg--fan {
  margin: 0;
  padding-right: 4.4rem;
  justify-content: center;
}
.tcg--fan .tcg__row {
  gap: 0;
}
.tcg--fan .tcg__row {
  align-items: flex-end;
}
.tcg--fan .tcg__card {
  width: 7.4rem;
  height: 11.6rem;
  margin-left: -1.7rem;
  padding: 0.45rem 0.42rem 0.5rem;
  transform-origin: 50% 130%;
  opacity: 1;
  transform: rotate(var(--rot, 0deg)) translateY(var(--ty, 0px)) scale(var(--s, 1));
  animation:
    tcg-fan 0.6s calc(0.3s + var(--i) * 0.32s) cubic-bezier(0.2, 0.7, 0.3, 1) backwards,
    tcg-float 4.6s ease-in-out calc(1.6s + var(--i) * 0.55s) infinite;
}
.tcg--fan .tcg__card:first-child {
  margin-left: 0;
}
.tcg--fan .tcg__art {
  height: 4.4rem;
  font-size: 2rem;
}
.tcg--fan .tcg__name {
  font-size: 0.92rem;
  padding: 0.45rem 0 0.1rem;
  letter-spacing: 0;
}
.tcg--fan .tcg__num {
  min-width: 1.3rem;
  height: 1.3rem;
  padding: 0 0.26rem;
  font-size: 0.8rem;
}
@keyframes tcg-fan {
  0% {
    opacity: 0;
    transform: rotate(var(--rot, 0deg)) translateY(calc(var(--ty, 0px) + 46px));
  }
}
@property --rot {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}
@property --ty {
  syntax: '<length>';
  initial-value: 0px;
  inherits: false;
}
@property --s {
  syntax: '<number>';
  initial-value: 1;
  inherits: false;
}
.tcg__card {
  transition:
    --rot 0.1s ease-in,
    --ty 0.1s ease-in,
    --s 0.1s ease-in,
    box-shadow 0.1s ease-in;
}
.tcg__card:hover {
  cursor: pointer;
  --s: 1.06 !important;
  --ty: -5px !important;
  --rot: 0deg !important;
  z-index: 300 !important;
  box-shadow: 0 16px 34px #2a252033;
}
@keyframes tcg-float {
  0%,
  to {
    translate: 0 0;
    rotate: 0deg;
  }
  50% {
    translate: 0 -10px;
    rotate: 0.3deg;
  }
}
@media (prefers-reduced-motion: reduce) {
  .tcg--fan .tcg__card {
    animation: none;
    opacity: 1;
    transform: rotate(var(--rot, 0deg)) translateY(var(--ty, 0px));
  }
}
:root {
  --ds-radius: 14px;
  --ds-radius-sm: 9px;
  --ds-radius-xs: 6px;
  --ds-gap: 1.1rem;
  --ds-rule: var(--paper-rule);
  --ds-card-bg: var(--paper);
  --ds-node-bg: var(--paper);
  --ds-sh-1: 0 1px 2px rgba(42, 37, 32, 0.06);
  --ds-sh-2: 0 3px 10px rgba(42, 37, 32, 0.09), 0 1px 2px rgba(42, 37, 32, 0.06);
  --ds-sh-3: 0 10px 30px rgba(42, 37, 32, 0.13), 0 2px 6px rgba(42, 37, 32, 0.07);
  --ds-glow: 0 6px 22px color-mix(in srgb, var(--c) 38%, transparent);
  --c: var(--mango);
}
.ds-c-mango.ds-c-mango {
  --c: var(--mango);
}
.ds-c-ember.ds-c-ember {
  --c: var(--ember);
}
.ds-c-orchid.ds-c-orchid {
  --c: var(--orchid);
}
.ds-c-helico.ds-c-helico {
  --c: var(--helico);
}
.ds-c-canary.ds-c-canary {
  --c: var(--canary);
}
.ds-c-lime.ds-c-lime {
  --c: var(--lime);
}
.ds-c-mute.ds-c-mute {
  --c: var(--ink-light);
}
.ds-tint {
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
  border: 2px solid color-mix(in srgb, var(--c) 55%, var(--paper-rule));
}
.ds-eyebrow {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--ink-light);
}
.ds-meta {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-h {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  line-height: 1.15;
  letter-spacing: -0.01em;
}
.ds-h--sm {
  font-size: 1.15rem;
}
.ds-body {
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.45;
  color: var(--ink-mid);
}
.ds-code {
  font-family: var(--font-code);
  font-size: 1.05rem;
  color: var(--ink);
}
.ds-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--font-code);
  font-size: 0.8rem;
  color: var(--c);
  background: color-mix(in srgb, var(--c) 8%, var(--paper));
  border: 1px solid color-mix(in srgb, var(--c) 40%, var(--paper-rule));
  border-radius: 999px;
  padding: 0.18rem 0.8rem;
}
.ds-node {
  --sz: 3.6rem;
  width: var(--sz);
  height: var(--sz);
  border-radius: 50%;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  background: var(--ds-node-bg);
  border: 2px solid var(--c);
  color: var(--c);
  box-shadow: var(--ds-sh-2);
  font-size: calc(var(--sz) * 0.46);
}
.ds-node--sm {
  --sz: 2.6rem;
}
.ds-node--lg {
  --sz: 4.6rem;
}
.ds-node--xl {
  --sz: 6.2rem;
}
.ds-node--solid {
  background: var(--c);
  color: var(--paper);
  border-color: transparent;
  box-shadow: var(--ds-glow);
}
.ds-wire line,
.ds-wire path {
  stroke: var(--c);
  stroke-width: 2;
  opacity: 0.55;
  fill: none;
  animation: ds-wire-pulse 1.8s ease-in-out infinite;
}
.ds-wire--thin line,
.ds-wire--thin path {
  stroke-width: 2;
}
@keyframes ds-pop {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes ds-rise {
  0% {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes ds-in-l {
  0% {
    opacity: 0;
    transform: translate(-18px);
  }
  to {
    opacity: 1;
    transform: translate(0);
  }
}
@keyframes ds-fade {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes ds-dash {
  to {
    stroke-dashoffset: -18;
  }
}
@keyframes ds-wire-pulse {
  0%,
  to {
    opacity: 0.45;
  }
  50% {
    opacity: 0.6;
  }
}
@keyframes ds-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes ds-grow {
  to {
    width: var(--w);
  }
}
@keyframes ds-grow-v {
  to {
    height: var(--h);
  }
}
@keyframes ds-run {
  0% {
    left: 8%;
  }
  to {
    left: 92%;
  }
}
@keyframes ds-breathe {
  0%,
  to {
    box-shadow:
      var(--ds-sh-2),
      0 0 0 0 transparent;
  }
  50% {
    box-shadow:
      var(--ds-sh-2),
      0 0 0 0.5rem color-mix(in srgb, var(--c) 16%, transparent);
  }
}
@keyframes ds-pulse {
  0%,
  to {
    transform: scale(1);
    opacity: 0.9;
  }
  50% {
    transform: scale(1.35);
    opacity: 0.5;
  }
}
.ds-cascade > * {
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-grid {
  width: 100%;
  display: grid;
  gap: var(--ds-gap);
  grid-template-columns: repeat(var(--cols, 3), 1fr);
  align-content: center;
}
.ds-grid--2 {
  --cols: 2;
}
.ds-grid--3 {
  --cols: 3;
}
.ds-grid--4 {
  --cols: 4;
}
.ds-grid--auto {
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
}
.ds-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  overflow: hidden;
  padding: 1.4rem 1.45rem;
  border-radius: var(--ds-radius);
  background: var(--ds-card-bg);
  border: 2px solid var(--c);
  box-shadow: var(--ds-sh-2);
  animation: ds-rise 0.5s var(--d, 0s) backwards;
  transition:
    transform 0.1s ease-in,
    box-shadow 0.1s ease-in;
}
.ds-card:hover {
  transform: translateY(-4px) scale(1.05);
  z-index: 30;
  box-shadow: 0 16px 34px #2a25202e;
}
.ds-card--accent {
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
}
.ds-card__ic {
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 1.7rem;
  flex: 0 0 auto;
  background: var(--ds-node-bg);
  border: 2px solid var(--c);
  color: var(--c);
  box-shadow: var(--ds-sh-2);
}
.ds-card__title {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
  line-height: 1.15;
}
.ds-card__title .mono {
  font-family: var(--font-code);
}
.ds-card__sub {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-card__body {
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.42;
  color: var(--ink-mid);
  margin: 0;
}
.ds-card__tags {
  list-style: none;
  margin: 0.3rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.ds-card__tags li {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  background: var(--paper);
  border: 1px solid var(--ds-rule);
  border-radius: var(--ds-radius-sm);
  padding: 0.5rem 0.8rem;
  box-shadow: var(--ds-sh-1);
}
.ds-card__tags li i {
  color: var(--c);
  font-size: 1.2rem;
  flex: 0 0 auto;
}
.ds-card__key {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  justify-content: center;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--c);
  background: color-mix(in srgb, var(--c) 7%, var(--paper));
  border: 1px solid color-mix(in srgb, var(--c) 30%, var(--paper-rule));
  border-radius: var(--ds-radius-sm);
  padding: 0.5rem 0.85rem;
}
.ds-card--center {
  align-items: center;
  text-align: center;
}
.ds-card--wide {
  grid-column: 1 / -1;
  flex-direction: row;
  align-items: center;
  gap: 1.1rem;
}
.ds-converge {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.5rem, 4vw, 3.2rem);
}
.ds-converge__ins {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
}
.ds-converge__door {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 17rem;
  padding: 1.2rem 1.5rem;
  border-radius: var(--ds-radius);
  box-shadow: var(--ds-sh-2);
  animation: ds-in-l 0.5s var(--d, 0s) both;
}
.ds-converge__door .ds-converge__t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
  line-height: 1.15;
}
.ds-converge__door .ds-converge__s {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-converge__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 0 0 auto;
}
.ds-converge__link svg {
  width: 6rem;
  height: 7rem;
}
.ds-converge__out {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.7rem;
}
.ds-converge__out .ds-converge__l {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  text-align: center;
}
.ds-converge--out .ds-converge__ins {
  order: 3;
}
.ds-converge--out .ds-converge__out {
  order: 1;
}
.ds-hub {
  position: relative;
  width: min(21rem, 90%);
  aspect-ratio: 1;
  margin: 1.8rem auto 3.2rem;
}
.ds-hub--big {
  width: min(27rem, 62%);
}
.ds-hub__wire {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.ds-hub__wire line {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: ds-wire-pulse 1.8s ease-in-out infinite;
}
.ds-hub__core {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  width: 5.4rem;
  height: 5.4rem;
  border-radius: 50%;
  --c: var(--mango);
  background: var(--c);
  color: var(--paper);
  display: grid;
  place-items: center;
  font-size: 2.1rem;
  box-shadow: var(--ds-glow);
  animation: ds-pop 0.5s both;
}
.ds-hub__node {
  position: absolute;
  transform: translate(-50%, -50%);
  z-index: 2;
  width: 7.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  animation: ds-fade 0.6s 0.25s both;
  --c: var(--helico);
}
.ds-hub__node .ds-node {
  --sz: 3.4rem;
}
.ds-hub__node b {
  font-family: var(--font-meta);
  font-weight: 400;
  font-size: 0.92rem;
  color: var(--ink-mid);
  text-align: center;
  background: var(--paper);
  padding: 0 0.35rem;
  border-radius: 4px;
  line-height: 1.25;
}
.ds-hub__node b ~ span {
  background: var(--paper);
  padding: 0 0.3rem;
  border-radius: 4px;
}
.ds-hub__node--t {
  top: 6%;
  left: 50%;
}
.ds-hub__node--r {
  top: 50%;
  left: 94%;
}
.ds-hub__node--b {
  top: 94%;
  left: 50%;
}
.ds-hub__node--l {
  top: 50%;
  left: 6%;
}
.ds-fanout {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.1rem;
}
.ds-fanout__core {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  --c: var(--mango);
}
.ds-fanout__core .ds-node {
  --sz: 5rem;
}
.ds-fanout__core b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  text-align: center;
  line-height: 1.15;
}
.ds-fanout__core span {
  display: block;
  font-family: var(--font-meta);
  font-weight: 400;
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-fanout__wire {
  width: 24rem;
  height: 2.8rem;
}
.ds-fanout__wire line {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: ds-wire-pulse 1.8s ease-in-out infinite;
}
.ds-fanout__row {
  display: flex;
  gap: 1.2rem;
}
.ds-fanout__agent {
  width: 11rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.55rem;
  padding: 1.1rem 1rem;
  border-radius: var(--ds-radius);
  --c: var(--orchid);
  background: var(--paper);
  border: 2px solid color-mix(in srgb, var(--c) 50%, var(--paper-rule));
  box-shadow: var(--ds-sh-2);
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-fanout__agent .ds-node {
  --sz: 3.4rem;
}
.ds-fanout__agent b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
}
.ds-fanout__agent .ds-chip {
  --c: var(--helico);
}
.ds-versus {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: stretch;
  gap: 1.4rem;
  perspective: 1400px;
}
.ds-versus__pane {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  text-align: center;
  padding: 2rem 1.6rem;
  border-radius: var(--ds-radius);
  --c: var(--ink-light);
  background: var(--paper);
  border: 2px solid color-mix(in srgb, var(--c) 45%, var(--paper-rule));
  box-shadow: var(--ds-sh-3);
  animation: ds-rise 0.55s var(--d, 0s) both;
}
.ds-versus__pane--l {
  transform: rotateY(7deg);
  transform-origin: right center;
}
.ds-versus__pane--r {
  transform: rotateY(-7deg);
  transform-origin: left center;
}
.ds-versus__t {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
}
.ds-versus__s {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
}
.ds-versus__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}
.ds-versus__list li {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  justify-content: flex-start;
  text-align: left;
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  background: var(--paper);
  border: 1px solid var(--ds-rule);
  border-radius: var(--ds-radius-sm);
  padding: 0.5rem 0.8rem;
  box-shadow: var(--ds-sh-1);
}
.ds-versus__list li i {
  color: var(--c);
  font-size: 1.15rem;
  flex: 0 0 auto;
}
.ds-versus__vs {
  align-self: center;
  display: grid;
  place-items: center;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px dashed var(--ink-faint);
  color: var(--ink-light);
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.05rem;
  box-shadow: var(--ds-sh-1);
}
.ds-lanes {
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0.6rem;
}
.ds-lane {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  --c: var(--mango);
  padding: 1.6rem 1.4rem;
  border-radius: var(--ds-radius);
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
  border: 2px solid color-mix(in srgb, var(--c) 50%, var(--paper-rule));
  box-shadow: var(--ds-sh-2);
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-lane__head {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.ds-lane__head .ds-node {
  --sz: 3.4rem;
}
.ds-lane__name {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  text-transform: lowercase;
}
.ds-lane__meter {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.ds-lane__meter b {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--c);
}
.ds-lane__bar {
  display: block;
  height: 0.9rem;
  border-radius: 6px;
  background: var(--paper-mid);
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 1px 2px #2a252014;
}
.ds-lane__bar:after {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 0;
  border-radius: 6px;
  background: var(--c);
  animation: ds-grow 1.4s var(--d, 0.2s) cubic-bezier(0.2, 0.7, 0.3, 1) forwards;
  --w: var(--p, 50%);
}
.ds-lane__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.ds-lane__list li {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.35;
  color: var(--ink-mid);
}
.ds-lane__list li:before {
  content: '';
  width: 0.5rem;
  height: 0.5rem;
  margin-top: 0.5rem;
  border-radius: 50%;
  background: var(--c);
  flex: 0 0 auto;
}
.ds-lanes__sep {
  align-self: center;
  display: grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--paper);
  border: 2px dashed var(--ink-faint);
  color: var(--ink-light);
  font-size: 1.4rem;
  flex: 0 0 auto;
  box-shadow: var(--ds-sh-1);
}
.ds-axis {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.2rem;
}
.ds-axis__cap {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
  text-align: center;
}
.ds-axis__row {
  display: grid;
  grid-template-columns: 13rem 1fr;
  align-items: center;
  gap: 1.3rem;
}
.ds-axis__lbl {
  text-align: right;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
  line-height: 1.2;
}
.ds-axis__lbl em {
  display: block;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
  font-style: normal;
}
.ds-axis__track {
  position: relative;
  height: 3.4rem;
  border: 1px solid var(--ds-rule);
  border-radius: var(--ds-radius-xs);
  overflow: hidden;
  background:
    repeating-linear-gradient(90deg, var(--paper-deep) 0 1.5px, transparent 1.5px 10%),
    var(--paper-soft);
  box-shadow: inset 0 1px 3px #2a252012;
}
.ds-axis__bar {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0;
  --c: var(--mango);
  background: var(--c);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 1rem;
  box-shadow: 0 0 12px color-mix(in srgb, var(--c) 35%, transparent);
  animation: ds-grow 1.8s var(--d, 0s) cubic-bezier(0.2, 0.7, 0.3, 1) forwards;
}
.ds-axis__bar b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--paper);
  white-space: nowrap;
}
.ds-axis__scale {
  display: grid;
  grid-template-columns: 13rem 1fr;
  gap: 1.3rem;
}
.ds-axis__line {
  position: relative;
  height: 1.1rem;
}
.ds-axis__line i {
  position: absolute;
  transform: translate(-50%);
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-faint);
}
.ds-axis__foot {
  text-align: center;
  font-family: var(--font-body);
  font-size: 1.15rem;
  color: var(--ink-mid);
  margin-top: 0.2rem;
}
.ds-axis__foot b {
  color: var(--ink);
  font-weight: 700;
}
.ds-cycle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.5rem, 4vw, 3.2rem);
}
.ds-cycle__rail {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  max-width: 15rem;
}
.ds-cycle__plabel {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--ink-light);
}
.ds-cycle__item {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  --c: var(--mango);
  padding: 0.8rem 1.1rem;
  border-radius: var(--ds-radius-sm);
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
  border: 2px solid color-mix(in srgb, var(--c) 50%, var(--paper-rule));
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
  box-shadow: var(--ds-sh-1);
  animation: ds-in-l 0.5s var(--d, 0s) both;
}
.ds-cycle__item i {
  color: var(--c);
  font-size: 1.4rem;
  flex: 0 0 auto;
}
.ds-cycle__arrow {
  color: var(--ink-faint);
  font-size: 2.2rem;
  flex: 0 0 auto;
}
.ds-ring {
  position: relative;
  width: clamp(20rem, 32vw, 26rem);
  aspect-ratio: 1;
  flex: 0 0 auto;
}
.ds-ring__base {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  border: 3px dashed var(--paper-deep);
}
.ds-ring__spin {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  background: conic-gradient(
    from 0deg,
    transparent 0 52%,
    color-mix(in srgb, var(--helico) 80%, transparent) 76%,
    transparent 100%
  );
  -webkit-mask: radial-gradient(
    farthest-side,
    transparent calc(100% - 16px),
    #000 calc(100% - 15px)
  );
  mask: radial-gradient(farthest-side, transparent calc(100% - 16px), #000 calc(100% - 15px));
  animation: ds-spin 7s linear infinite;
}
.ds-ring__center {
  position: absolute;
  top: 22%;
  right: 22%;
  bottom: 22%;
  left: 22%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  text-align: center;
}
.ds-ring__center b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
  line-height: 1.1;
}
.ds-ring__center span {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-ring__node {
  position: absolute;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  width: 9rem;
  --c: var(--mango);
}
.ds-ring__node .ds-node {
  --sz: 4.4rem;
  border-width: 2.5px;
  animation: ds-breathe 3.2s var(--d, 0s) infinite;
}
.ds-ring__node b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
  text-align: center;
  line-height: 1.1;
}
.ds-ring__node--1 {
  top: 1%;
  left: 50%;
  --d: 0s;
}
.ds-ring__node--2 {
  top: 74%;
  left: 92%;
  --d: 0.5s;
}
.ds-ring__node--3 {
  top: 74%;
  left: 8%;
  --d: 1s;
}
.ds-ring--quad .ds-ring__node--1 {
  top: 1%;
  left: 50%;
}
.ds-ring--quad .ds-ring__node--2 {
  top: 50%;
  left: 99%;
}
.ds-ring--quad .ds-ring__node--3 {
  top: 99%;
  left: 50%;
}
.ds-ring--quad .ds-ring__node--4 {
  top: 50%;
  left: 1%;
}
.ds-scale {
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 1.6rem;
  padding-bottom: 2.4rem;
  position: relative;
}
.ds-scale__axis {
  position: absolute;
  right: 3%;
  bottom: 0.4rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-faint);
}
.ds-scale__step {
  width: 15rem;
  --c: var(--mango);
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
  border: 2px solid color-mix(in srgb, var(--c) 50%, var(--paper-rule));
  border-bottom: none;
  border-radius: var(--ds-radius) var(--ds-radius) 0 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.7rem;
  padding: 1.6rem 1rem;
  box-shadow: var(--ds-sh-2);
  animation: ds-pop 0.5s var(--d, 0s) both;
}
.ds-scale__step--1 {
  height: 15rem;
}
.ds-scale__step--2 {
  height: 19.5rem;
}
.ds-scale__step--3 {
  height: 24rem;
}
.ds-scale__step .ds-node {
  --sz: 3.8rem;
}
.ds-scale__name {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
}
.ds-scale__use {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-mid);
  text-align: center;
}
.ds-scale__cost {
  font-family: var(--font-meta);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--c);
  margin-top: auto;
  padding-top: 1rem;
  text-align: center;
}
.ds-scale__cost span {
  display: block;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  font-weight: 400;
  color: var(--ink-light);
  margin-top: 0.2rem;
}
.ds-pipe {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ds-pipe__cols {
  display: flex;
  align-items: stretch;
  gap: 0.5rem;
}
.ds-pipe__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  --c: var(--mango);
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-pipe__cols > :where(.ds-pipe__col:nth-child(6n + 1)) {
  --c: var(--mango);
}
.ds-pipe__cols > :where(.ds-pipe__col:nth-child(6n + 2)) {
  --c: var(--orchid);
}
.ds-pipe__cols > :where(.ds-pipe__col:nth-child(6n + 3)) {
  --c: var(--helico);
}
.ds-pipe__cols > :where(.ds-pipe__col:nth-child(6n + 4)) {
  --c: var(--canary);
}
.ds-pipe__cols > :where(.ds-pipe__col:nth-child(6n + 5)) {
  --c: var(--ember);
}
.ds-pipe__cols > :where(.ds-pipe__col:nth-child(6n + 6)) {
  --c: var(--lime);
}
.ds-pipe__head {
  color: var(--paper);
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  background: var(--c);
  padding: 0.85rem 1.4rem 0.85rem 1.7rem;
  display: flex;
  align-items: center;
  gap: 0.7rem;
  letter-spacing: -0.01em;
  box-shadow: var(--ds-sh-2);
  clip-path: polygon(
    0 0,
    calc(100% - 1.1rem) 0,
    100% 50%,
    calc(100% - 1.1rem) 100%,
    0 100%,
    1.1rem 50%
  );
}
.ds-pipe__col:first-child .ds-pipe__head {
  clip-path: polygon(0 0, calc(100% - 1.1rem) 0, 100% 50%, calc(100% - 1.1rem) 100%, 0 100%);
  padding-left: 1.4rem;
}
.ds-pipe__n {
  display: inline-grid;
  place-items: center;
  min-width: 1.55rem;
  height: 1.55rem;
  padding: 0 0.35rem;
  flex: 0 0 auto;
  border-radius: 5px;
  background: var(--c);
  color: var(--paper);
  font-family: var(--font-meta);
  font-weight: 700;
  font-size: 0.92rem;
  white-space: nowrap;
}
.ds-pipe__box {
  flex: 1;
  margin-top: 0.6rem;
  border-radius: var(--ds-radius-xs);
  background: color-mix(in srgb, var(--c) 5%, var(--paper-soft));
  border: 2px solid var(--c);
  padding: 1.4rem 1.3rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: flex-start;
  box-shadow: var(--ds-sh-1);
}
.ds-pipe__box .ds-node {
  --sz: 3.6rem;
}
.ds-pipe__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.ds-pipe__list li {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  line-height: 1.3;
}
.ds-pipe__list li:before {
  content: '';
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--c);
  flex: 0 0 auto;
}
.ds-pipe__list li code,
.ds-pipe__list li .mono {
  font-family: var(--font-code);
  font-size: 1.05rem;
  color: var(--ink);
}
.ds-flow {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ds-flow__row {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 2%;
}
.ds-flow__row:before {
  content: '';
  position: absolute;
  left: 10%;
  right: 10%;
  top: 3.15rem;
  height: 2px;
  background: var(--paper-deep);
  opacity: 0.55;
}
.ds-flow__pulse {
  position: absolute;
  top: 2.55rem;
  left: 8%;
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50%;
  background: var(--mango);
  box-shadow: 0 0 18px 5px color-mix(in srgb, var(--mango) 55%, transparent);
  animation: ds-run 9s cubic-bezier(0.45, 0, 0.55, 1) infinite;
  z-index: 0;
}
.ds-flow__node {
  position: relative;
  z-index: 1;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
  --c: var(--mango);
}
.ds-flow__node .ds-node {
  --sz: 6.2rem;
  border-width: 3px;
  animation:
    ds-pop 0.55s var(--d, 0s) both,
    ds-breathe 3.2s var(--d, 0s) infinite;
}
.ds-flow__label {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  line-height: 1.15;
}
.ds-flow__sub {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
}
.ds-flow--band {
  flex: 0 0 auto;
}
.ds-flow--band .ds-node {
  --sz: 5rem;
}
.ds-timeline {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ds-timeline:before {
  content: '';
  position: absolute;
  left: 1.5rem;
  top: 1.4rem;
  bottom: 1.4rem;
  width: 2px;
  background: var(--paper-deep);
}
.ds-timeline__step {
  position: relative;
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: 1.1rem;
  padding-bottom: 1.2rem;
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-timeline__step:last-child {
  padding-bottom: 0;
}
.ds-timeline__dot {
  --c: var(--mango);
  --sz: 3rem;
  z-index: 1;
}
.ds-timeline__dot.ds-node--mark {
  background: var(--c);
  color: var(--paper);
  border-color: transparent;
  box-shadow: var(--ds-glow);
}
.ds-timeline__body {
  padding-top: 0.2rem;
}
.ds-timeline__date {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--c);
}
.ds-timeline__title {
  margin: 0.1rem 0 0.2rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
}
.ds-timeline__desc {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.4;
  color: var(--ink-mid);
}
.ds-stack {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  perspective: 1600px;
  padding-left: 1.4rem;
}
.ds-stack__layer {
  position: relative;
  --c: var(--orchid);
  padding: 1rem 1.3rem;
  border-radius: var(--ds-radius-sm);
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
  border: 2px solid color-mix(in srgb, var(--c) 45%, var(--paper-rule));
  box-shadow: var(--ds-sh-2);
  transform: rotateX(18deg) translateZ(0);
  transform-origin: center top;
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-stack__layer:nth-child(odd) {
  margin-left: 0.6rem;
}
.ds-stack__layer--core {
  box-shadow: var(--ds-sh-3);
}
.ds-stack__head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.7rem;
}
.ds-stack__name {
  margin: 0;
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
}
.ds-stack__role {
  margin: 0.15rem 0 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.4;
  color: var(--ink-mid);
}
.ds-stack__mods {
  list-style: none;
  margin: 0.6rem 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.ds-stack__mods li {
  font-family: var(--font-code);
  font-size: 0.92rem;
  color: var(--ink);
  background: var(--paper);
  border: 1px solid var(--ds-rule);
  border-radius: var(--ds-radius-xs);
  padding: 0.15rem 0.6rem;
  box-shadow: var(--ds-sh-1);
}
.ds-tech {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 1.1rem;
  align-content: center;
}
.ds-tech__brick {
  position: relative;
  overflow: hidden;
  --c: var(--mango);
  padding: 1.2rem 1.4rem;
  border-radius: var(--ds-radius);
  background: var(--ds-card-bg);
  border: 1px solid var(--ds-rule);
  box-shadow: var(--ds-sh-2);
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-tech__brick:before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: var(--c);
}
.ds-tech__layer {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 0.5rem;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ink-light);
}
.ds-tech__layer i {
  font-size: 1.1rem;
  color: var(--c);
}
.ds-tech__choice {
  margin: 0 0 0.35rem;
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  line-height: 1.2;
  color: var(--ink);
}
.ds-tech__why {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.4;
  color: var(--ink-mid);
}
.ds-checks {
  width: 100%;
}
.ds-checks__head {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1.2rem;
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--mango);
}
.ds-checks__head i {
  font-size: 1.3rem;
}
.ds-checks__count {
  margin-left: auto;
  font-family: var(--font-code);
  font-size: 0.92rem;
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-light);
}
.ds-checks__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  gap: 1.1rem;
}
.ds-checks__group {
  --c: var(--helico);
  padding: 1.2rem 1.4rem;
  border-radius: var(--ds-radius);
  background: var(--ds-card-bg);
  border: 1px solid var(--ds-rule);
  box-shadow: var(--ds-sh-2);
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-checks__group-head {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid var(--ds-rule);
  font-family: var(--font-meta);
  font-size: 1.15rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--ink);
}
.ds-checks__group-head i {
  font-size: 1.4rem;
  color: var(--c);
}
.ds-checks__group-head b {
  font-weight: 700;
}
.ds-checks__items {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.ds-checks__item {
  display: grid;
  grid-template-columns: 1.5rem 1fr;
  gap: 0.6rem;
  align-items: start;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.4;
  color: var(--ink-mid);
}
.ds-checks__item > i {
  display: grid;
  place-items: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  font-size: 0.85rem;
  margin-top: 0.1rem;
  color: var(--helico);
  background: color-mix(in srgb, var(--helico) 14%, var(--paper));
}
.ds-checks__item--no > i {
  color: var(--ember);
  background: color-mix(in srgb, var(--ember) 14%, var(--paper));
}
.ds-checks__item strong {
  font-weight: 600;
  color: var(--ink);
}
.ds-checks__item em {
  display: block;
  font-style: normal;
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-gauge {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}
.ds-gauge__dial {
  position: relative;
  width: min(22rem, 80%);
}
.ds-gauge__dial svg {
  width: 100%;
  display: block;
  overflow: visible;
}
.ds-gauge__track {
  fill: none;
  stroke: var(--paper-mid);
  stroke-width: 16;
  stroke-linecap: round;
}
.ds-gauge__val {
  fill: none;
  stroke: var(--c, var(--helico));
  stroke-width: 16;
  stroke-linecap: round;
  filter: drop-shadow(0 2px 6px color-mix(in srgb, var(--c) 35%, transparent));
  stroke-dasharray: var(--len, 251);
  stroke-dashoffset: var(--len, 251);
  animation: ds-dial 1.8s cubic-bezier(0.2, 0.7, 0.3, 1) forwards;
}
@keyframes ds-dial {
  to {
    stroke-dashoffset: var(--off, 75);
  }
}
.ds-gauge__read {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
}
.ds-gauge__read b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 2.8rem;
  color: var(--c, var(--helico));
  line-height: 1;
}
.ds-gauge__read span {
  display: block;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ink-light);
  margin-top: 0.3rem;
}
.ds-gauge__cap {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
  text-align: center;
}
.ds-punch {
  width: 100%;
  --c: var(--helico);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  padding: 2.4rem 2.2rem;
  border-radius: var(--ds-radius);
  text-align: center;
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
  border: 2px solid color-mix(in srgb, var(--c) 45%, var(--paper-rule));
  box-shadow: var(--ds-sh-3);
  animation: ds-fade 0.6s both;
}
.ds-punch__row {
  display: flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
}
.ds-punch__before {
  font-family: var(--font-ui);
  font-weight: 700;
  line-height: 1;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  color: var(--ink-light);
  text-decoration: line-through;
  text-decoration-color: var(--ink-faint);
  text-decoration-thickness: 2px;
}
.ds-punch__arrow {
  font-size: clamp(1.5rem, 2.5vw, 1.9rem);
  color: var(--ink-faint);
}
.ds-punch__after {
  font-family: var(--font-ui);
  font-weight: 700;
  line-height: 1;
  font-size: clamp(3rem, 6vw, 4.6rem);
  color: var(--c);
  text-shadow: 0 2px 16px color-mix(in srgb, var(--c) 25%, transparent);
}
.ds-punch__factor {
  align-self: center;
  font-family: var(--font-code);
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--paper);
  background: var(--ember);
  border-radius: 999px;
  padding: 0.3rem 1rem;
  box-shadow: var(--ds-sh-2);
}
.ds-punch__unit {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ink);
}
.ds-punch__note {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: var(--ink-mid);
}
.ds-stats {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(var(--cols, 3), 1fr);
  gap: 1.2rem;
  align-content: center;
}
.ds-stats--2 {
  --cols: 2;
}
.ds-stats--4 {
  --cols: 4;
}
.ds-stat {
  position: relative;
  overflow: hidden;
  --c: var(--mango);
  padding: 1.4rem 1.5rem;
  border-radius: var(--ds-radius);
  background: var(--ds-card-bg);
  border: 2px solid var(--c);
  box-shadow: var(--ds-sh-2);
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-stat__n {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 2.9rem;
  line-height: 1.16;
  color: var(--c);
  letter-spacing: -0.01em;
  white-space: nowrap;
}
.ds-stat__k {
  font-family: var(--font-meta);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ink-light);
  margin-top: 0.5rem;
}
.ds-stat__d {
  font-family: var(--font-body);
  font-size: 0.92rem;
  color: var(--ink-mid);
  margin-top: 0.4rem;
  line-height: 1.4;
}
.ds-specdoc {
  width: 100%;
  background: #1d2330;
  border: 1px solid var(--paper-rule);
  border-radius: var(--ds-radius);
  overflow: hidden;
  box-shadow: var(--ds-sh-3);
  font-family: var(--font-code);
  font-size: 0.92rem;
  line-height: 1.7;
  animation: ds-rise 0.5s both;
}
.ds-specdoc__bar {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.6rem 0.9rem;
  background: #161b26;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.ds-specdoc__bar i {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #39414f;
  display: inline-block;
}
.ds-specdoc__bar i:nth-child(1) {
  background: #e06c5a;
}
.ds-specdoc__bar i:nth-child(2) {
  background: #e0b25a;
}
.ds-specdoc__bar i:nth-child(3) {
  background: #7fc77f;
}
.ds-specdoc__fn {
  margin-left: 0.6rem;
  color: #ffffff80;
  font-size: 0.8rem;
}
.ds-specdoc pre {
  margin: 0;
  padding: 1rem 1.2rem;
  white-space: pre;
  overflow: hidden;
  color: #cfd6e4;
}
.ds-specdoc .c {
  color: #7c8699;
}
.ds-specdoc .t {
  color: #e6a15c;
}
.ds-specdoc .k {
  color: #5fc7b8;
}
.ds-specdoc .s {
  color: #9fd98a;
}
.ds-callout {
  --c: var(--mango);
  position: relative;
  margin: 0.8rem 0 0;
  padding: 1.3rem 1.6rem;
  border-radius: var(--ds-radius-sm);
  border: 2px solid color-mix(in srgb, var(--c) 50%, var(--paper-rule));
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
  box-shadow: var(--ds-sh-2);
  animation: ds-rise 0.5s both;
}
.ds-callout--danger {
  --c: var(--ember);
}
.ds-callout--insight {
  --c: var(--orchid);
}
.ds-callout--note {
  --c: var(--mango);
}
.ds-callout--success {
  --c: var(--helico);
}
.ds-callout__title {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 0.6rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  line-height: 1.3;
  color: var(--ink);
}
.ds-callout__title i {
  font-size: 1.4rem;
  color: var(--c);
  flex: none;
}
.ds-callout__body p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--ink-mid);
}
.ds-callout__body p + p {
  margin-top: 0.6rem;
}
.ds-dataflow {
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0.6rem;
}
.ds-dataflow__stage {
  flex: 1;
  --c: var(--orchid);
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  padding: 1.3rem 1.2rem;
  border-radius: var(--ds-radius);
  background: var(--ds-card-bg);
  border: 1px solid var(--ds-rule);
  position: relative;
  overflow: hidden;
  box-shadow: var(--ds-sh-2);
  animation: ds-rise 0.5s var(--d, 0s) both;
}
.ds-dataflow__stage:before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: var(--c);
}
.ds-dataflow__label {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--c);
  font-weight: 700;
}
.ds-dataflow__node {
  display: grid;
  grid-template-columns: 2.6rem 1fr;
  gap: 0.7rem;
  align-items: center;
}
.ds-dataflow__node .ds-node {
  --sz: 2.6rem;
}
.ds-dataflow__node b {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.05rem;
  color: var(--ink);
}
.ds-dataflow__node span {
  display: block;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-dataflow__arrow {
  align-self: center;
  display: flex;
  align-items: center;
  color: var(--ink-faint);
  font-size: 1.9rem;
  flex: 0 0 auto;
}
.ds-flow__dot,
.ds-hub__dot,
.ds-lane__ic,
.ds-scale__ic,
.ds-pipe__ic,
.ds-loop__dot {
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  background: var(--ds-node-bg);
  border: 2px solid var(--c);
  color: var(--c);
  box-shadow: var(--ds-sh-2);
}
.ds-flow__dot {
  width: 6.2rem;
  height: 6.2rem;
  font-size: 2.5rem;
  border-width: 3px;
  animation:
    ds-pop 0.55s var(--d, 0s) both,
    ds-breathe 3.2s var(--d, 0s) infinite;
}
.ds-hub__dot {
  width: 3.4rem;
  height: 3.4rem;
  font-size: 1.4rem;
  --c: var(--helico);
}
.ds-lane__ic {
  width: 3.4rem;
  height: 3.4rem;
  font-size: 1.6rem;
}
.ds-scale__ic {
  width: 3.8rem;
  height: 3.8rem;
  font-size: 1.7rem;
}
.ds-pipe__ic {
  width: 3.6rem;
  height: 3.6rem;
  font-size: 1.8rem;
}
.ds-loop__dot {
  width: 4.4rem;
  height: 4.4rem;
  font-size: 1.7rem;
  border-width: 2.5px;
  animation: ds-breathe 3.2s var(--d, 0s) infinite;
}
.ds-fan-out {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.1rem;
}
.ds-fan-out__core {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  --c: var(--mango);
}
.ds-fan-out__hub {
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  background: var(--c);
  color: var(--paper);
  display: grid;
  place-items: center;
  font-size: 2.2rem;
  box-shadow: var(--ds-glow);
  animation: ds-pop 0.5s both;
}
.ds-fan-out__core b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.45rem;
  color: var(--ink);
  text-align: center;
  line-height: 1.15;
}
.ds-fan-out__core span {
  display: block;
  font-family: var(--font-meta);
  font-weight: 400;
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-fan-out__wire {
  width: 24rem;
  height: 2.8rem;
}
.ds-fan-out__wire line {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: ds-wire-pulse 1.8s ease-in-out infinite;
}
.ds-fan-out__row {
  display: flex;
  gap: 1.2rem;
}
.ds-loop {
  position: relative;
  width: clamp(20rem, 32vw, 26rem);
  aspect-ratio: 1;
  flex: 0 0 auto;
  margin: 2.6rem 0 2.4rem;
}
.ds-loop__base {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  border: 3px dashed var(--paper-deep);
}
.ds-loop__ring {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  background: conic-gradient(
    from 0deg,
    transparent 0 52%,
    color-mix(in srgb, var(--helico) 80%, transparent) 76%,
    transparent 100%
  );
  -webkit-mask: radial-gradient(
    farthest-side,
    transparent calc(100% - 16px),
    #000 calc(100% - 15px)
  );
  mask: radial-gradient(farthest-side, transparent calc(100% - 16px), #000 calc(100% - 15px));
  animation: ds-spin 7s linear infinite;
}
.ds-loop__center {
  position: absolute;
  top: 22%;
  right: 22%;
  bottom: 22%;
  left: 22%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  text-align: center;
}
.ds-loop__center b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--ink);
  line-height: 1.1;
}
.ds-loop__center span {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
}
.ds-loop__node {
  position: absolute;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  width: 7.5rem;
  --c: var(--mango);
}
.ds-loop__node b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.05rem;
  color: var(--ink);
  text-align: center;
  background: var(--paper);
  padding: 0 0.35rem;
  border-radius: 4px;
  line-height: 1.25;
}
.ds-loop__node b ~ span {
  background: var(--paper);
  padding: 0 0.3rem;
  border-radius: 4px;
}
.ds-loop__node--1 {
  top: 1%;
  left: 50%;
  --d: 0s;
}
.ds-loop__node--2 {
  top: 74%;
  left: 92%;
  --d: 0.5s;
}
.ds-loop__node--3 {
  top: 74%;
  left: 8%;
  --d: 1s;
}
.ds-loop--quad .ds-loop__node--1 {
  top: 1%;
  left: 50%;
}
.ds-loop--quad .ds-loop__node--2 {
  top: 50%;
  left: 99%;
}
.ds-loop--quad .ds-loop__node--3 {
  top: 99%;
  left: 50%;
}
.ds-loop--quad .ds-loop__node--4 {
  top: 50%;
  left: 1%;
}
.ds-loop-stage {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.5rem, 4vw, 3.5rem);
}
.ds-loop-stage__col {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  max-width: 17rem;
}
.ds-loop-stage__plabel {
  font-family: var(--font-meta);
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--ink-light);
}
.ds-loop-stage__item {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  --c: var(--mango);
  background: color-mix(in srgb, var(--c) 6%, var(--paper-soft));
  border: 2px solid color-mix(in srgb, var(--c) 50%, var(--paper-rule));
  border-radius: var(--ds-radius-sm);
  padding: 0.8rem 1.1rem;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
  box-shadow: var(--ds-sh-1);
  animation: ds-in-l 0.5s var(--d, 0s) both;
}
.ds-loop-stage__item i {
  color: var(--c);
  font-size: 1.4rem;
  flex: 0 0 auto;
}
.ds-loop-stage__item .mono {
  font-family: var(--font-code);
  font-size: 1.05rem;
}
.ds-loop-stage__arrow {
  color: var(--ink-faint);
  font-size: 2.2rem;
  flex: 0 0 auto;
}
.ds-bars {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.3rem;
}
.ds-bars__cap {
  font-family: var(--font-meta);
  font-size: 1.05rem;
  color: var(--ink-light);
  text-align: center;
}
.ds-bars__row {
  display: grid;
  grid-template-columns: 13rem 1fr;
  align-items: center;
  gap: 1.3rem;
}
.ds-bars__lbl {
  text-align: right;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--ink);
  line-height: 1.2;
}
.ds-bars__lbl em {
  display: block;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-light);
  font-style: normal;
}
.ds-bars__track {
  position: relative;
  height: 3.4rem;
  border: 1px solid var(--ds-rule);
  border-radius: var(--ds-radius-xs);
  overflow: hidden;
  background:
    repeating-linear-gradient(90deg, var(--paper-deep) 0 1.5px, transparent 1.5px 10%),
    var(--paper-soft);
  box-shadow: inset 0 1px 3px #2a252012;
}
.ds-bars__bar {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0;
  --c: var(--mango);
  background: var(--c);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 1rem;
  box-shadow: 0 0 12px color-mix(in srgb, var(--c) 35%, transparent);
  animation: ds-grow 1.8s var(--d, 0s) cubic-bezier(0.2, 0.7, 0.3, 1) forwards;
}
.ds-bars__bar b {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--paper);
  white-space: nowrap;
}
.ds-bars__bar--out {
  justify-content: flex-start;
  padding-right: 0;
}
.ds-bars__bar--out b {
  position: absolute;
  left: calc(100% + 0.45rem);
  color: var(--ink);
}
.ds-bars__axis {
  display: grid;
  grid-template-columns: 13rem 1fr;
  gap: 1.3rem;
}
.ds-bars__axis-line {
  position: relative;
  height: 1.1rem;
}
.ds-bars__axis-line i {
  position: absolute;
  transform: translate(-50%);
  font-family: var(--font-meta);
  font-size: 0.92rem;
  color: var(--ink-faint);
}
.ds-bars__foot {
  text-align: center;
  font-family: var(--font-body);
  font-size: 1.15rem;
  color: var(--ink-mid);
  margin-top: 0.4rem;
}
.ds-bars__foot b {
  color: var(--ink);
  font-weight: 700;
}
.ds-timeline__dot {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  display: grid;
  place-items: center;
  z-index: 1;
  background: var(--ds-node-bg);
  border: 2px solid var(--c);
  color: var(--c);
  box-shadow: var(--ds-sh-2);
}
.ds-timeline__dot--mark {
  background: var(--c);
  color: var(--paper);
  border-color: transparent;
  box-shadow: var(--ds-glow);
}
@media (prefers-reduced-motion: reduce) {
  .ds-wire line,
  .ds-wire path,
  .ds-flow__pulse,
  .ds-flow__node .ds-node,
  .ds-ring__spin,
  .ds-ring__node .ds-node,
  .ds-hub__wire line,
  .ds-fanout__wire line {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
.ds-node--solid i,
.ds-fan-out__hub i {
  color: var(--paper);
}
.src-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-meta);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--ink-light);
}
.src-head i {
  color: var(--c);
  font-size: 1.1rem;
}
.src-stat {
  font-family: var(--font-ui);
  font-weight: 800;
  font-size: 1.45rem;
  line-height: 1;
  color: var(--c);
  margin: 0.15rem 0 0.25rem;
}
.gg-tone-ink {
  --gg-tone: var(--ink-light);
}
.gg-tone-mango {
  --gg-tone: var(--mango);
}
.gg-tone-helico {
  --gg-tone: var(--helico);
}
.gg-tone-canary {
  --gg-tone: var(--canary);
}
.gg-tone-ember {
  --gg-tone: var(--ember);
}
.gg-tone-orchid {
  --gg-tone: var(--orchid);
}
.gg-tone-lime {
  --gg-tone: var(--lime);
}
.gg-fill-ink {
  fill: var(--ink-light);
}
.gg-fill-mango {
  fill: var(--mango);
}
.gg-fill-helico {
  fill: var(--helico);
}
.gg-fill-canary {
  fill: var(--canary);
}
.gg-fill-ember {
  fill: var(--ember);
}
.gg-fill-orchid {
  fill: var(--orchid);
}
.gg-figure {
  margin: 0.6rem 0 0;
  padding: 18px 22px;
  background: var(--paper-soft);
  border: 1px solid var(--paper-rule);
  border-radius: 8px;
  box-shadow: 0 2px 8px #2a252012;
}
.gg-heading {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 14px;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 15px;
  color: var(--ink);
}
.gg-heading i {
  color: var(--mango);
  font-size: 16px;
}
.gg-svg {
  display: block;
  width: 100%;
  height: auto;
}
.gg-svg--seq {
  width: auto;
  max-width: 100%;
  height: 468px;
  margin: 0 auto;
}
.gg-caption {
  margin: 14px 0 0;
  font-family: var(--font-meta);
  font-size: 0.92rem;
  line-height: 1.5;
  font-style: italic;
  color: var(--ink-light);
}
.gg-seq__life {
  stroke: var(--paper-rule);
  stroke-width: 2;
  stroke-dasharray: 3 5;
}
.gg-seq__actor rect {
  fill: var(--paper);
  stroke: var(--gg-tone);
  stroke-width: 2;
}
.gg-seq__actor-name {
  font-family: var(--font-code);
  font-size: 14px;
  font-weight: 600;
  fill: var(--ink);
  text-anchor: middle;
}
.gg-seq__actor-sub {
  font-family: var(--font-meta);
  font-size: 12.5px;
  fill: var(--ink-light);
  text-anchor: middle;
}
.gg-seq__band {
  fill: var(--ink);
  opacity: 0.07;
  animation: gg-seq-band var(--gg-dur, 9s) ease-in-out infinite;
}
.gg-seq__rail {
  stroke: var(--paper-rule);
  stroke-width: 2;
}
.gg-seq__tick {
  fill: var(--paper-rule);
}
.gg-seq__cursor circle,
.gg-seq__cursor path {
  fill: var(--ember);
}
.gg-seq__cursor {
  animation: gg-seq-cursor var(--gg-dur, 9s) ease-in-out infinite;
}
.gg-seq__msg {
  stroke: var(--gg-tone);
  stroke-width: 2;
  opacity: 0.55;
  animation: gg-wire-pulse 1.8s ease-in-out infinite;
}
.gg-seq__msg-label {
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 600;
  fill: var(--ink);
  text-anchor: middle;
}
.gg-seq__msg-sub {
  font-family: var(--font-meta);
  font-size: 12.5px;
  fill: var(--gg-tone);
  text-anchor: middle;
}
.gg-seq__think {
  fill: var(--paper);
  stroke: var(--gg-tone);
  stroke-width: 1.6;
}
.gg-seq__think--dashed {
  stroke-dasharray: 4 4;
}
.gg-seq__think-label {
  font-family: var(--font-ui);
  font-size: 10.3px;
  font-weight: 600;
  fill: var(--ink);
  text-anchor: middle;
}
.gg-flow {
  display: flex;
  align-items: stretch;
  gap: 0;
  width: 100%;
}
.gg-flow__stage {
  --gg-tone: var(--orchid);
  flex: 1 1 0;
  min-width: 0;
  padding: 16px 14px;
  background: var(--paper);
  border: 1px solid var(--paper-rule);
  border-top: 3px solid var(--gg-tone);
  border-radius: 8px;
  box-shadow: 0 1px 2px #2a25200d;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.gg-flow__stage--in {
  --gg-tone: var(--mango);
}
.gg-flow__stage--mid {
  --gg-tone: var(--orchid);
}
.gg-flow__stage--sem {
  --gg-tone: var(--canary);
}
.gg-flow__stage--diag {
  --gg-tone: var(--ember);
}
.gg-flow__stage--out {
  --gg-tone: var(--helico);
}
.gg-flow__icon {
  width: 46px;
  height: 46px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: var(--paper-soft);
  border: 1.5px solid var(--gg-tone);
  color: var(--gg-tone);
}
.gg-flow__icon i {
  font-size: 22px;
}
.gg-flow__name {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 15px;
  color: var(--ink);
  line-height: 1.2;
}
.gg-flow__kind {
  font-family: var(--font-meta);
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: var(--gg-tone);
  font-weight: 700;
  margin-bottom: 2px;
}
.gg-flow__desc {
  font-family: var(--font-body);
  font-size: 12px;
  color: var(--ink-light);
  line-height: 1.4;
}
.gg-flow__link {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  padding: 0 6px;
  color: var(--ink-faint);
  font-size: 26px;
  font-family: var(--font-meta);
}
.gg-mino {
  display: grid;
  grid-template-columns: 1fr 232px;
  gap: 18px;
  align-items: stretch;
}
.gg-mino__stage {
  background: var(--paper);
  border: 1px solid var(--paper-rule);
  border-radius: 8px;
  box-shadow: 0 1px 2px #2a25200d;
  padding: 6px;
}
.gg-mino__link {
  stroke: var(--paper-deep);
  stroke-width: 1.4;
}
.gg-mino__route {
  stroke: var(--mango);
  stroke-width: 2;
  opacity: 0.55;
  animation: gg-wire-pulse 1.8s ease-in-out infinite;
}
.gg-mino__card {
  fill: var(--paper);
  stroke: var(--gg-tone);
  stroke-width: 1.8;
}
.gg-mino__chrome {
  fill: var(--gg-tone);
  opacity: 0.9;
}
.gg-mino__dot {
  fill: var(--paper);
  opacity: 0.9;
}
.gg-mino__url {
  font-family: var(--font-code);
  font-size: 12px;
  font-weight: 600;
  fill: var(--ink);
  text-anchor: middle;
}
.gg-mino__halo {
  fill: var(--mango);
  opacity: 0.16;
}
.gg-mino__core {
  fill: var(--mango);
  stroke: var(--paper);
  stroke-width: 2;
}
.gg-mino__brand {
  font-family: var(--font-ui);
  font-weight: 700;
  font-size: 9px;
  fill: var(--paper);
  text-anchor: middle;
}
.gg-mino__panel {
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.gg-mino__panel-title {
  font-family: var(--font-meta);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ink-light);
  font-weight: 700;
  margin: 0 0 1px;
}
.gg-audit {
  display: grid;
  grid-template-columns: 26px 1fr auto;
  align-items: center;
  gap: 9px;
  padding: 5px 9px;
  background: var(--paper);
  border: 1.5px solid color-mix(in srgb, var(--gg-tone) 50%, var(--paper-rule));
  border-radius: 6px;
  box-shadow: 0 1px 2px #2a25200d;
  animation: gg-audit-turn 13s linear infinite;
  animation-delay: calc(var(--dk, 0) * 1s);
}
@keyframes gg-audit-turn {
  0%,
  5% {
    background: color-mix(in srgb, var(--gg-tone) 14%, var(--paper));
  }
  9%,
  to {
    background: var(--paper);
  }
}
.gg-audit__icon {
  display: grid;
  place-items: center;
  color: var(--gg-tone);
  font-size: 15px;
}
.gg-audit__name {
  font-family: var(--font-body);
  font-size: 12.5px;
  font-weight: 600;
  color: var(--ink);
}
.gg-audit__score {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: var(--font-meta);
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  color: var(--paper);
}
.gg-audit__score--ok {
  background: var(--helico);
}
.gg-audit__score--ko {
  background: var(--ember);
}
.gg-audit__score i {
  font-size: 10px;
}
.gg-mino__threshold {
  margin-top: 2px;
  font-family: var(--font-meta);
  font-size: 10px;
  color: var(--ink-light);
  text-align: center;
}
.gg-mino__threshold b {
  color: var(--ember);
}
@keyframes gg-flow {
  to {
    stroke-dashoffset: -12;
  }
}
@keyframes gg-flow-route {
  to {
    stroke-dashoffset: -9;
  }
}
@keyframes gg-wire-pulse {
  0%,
  to {
    opacity: 0.45;
  }
  50% {
    opacity: 0.6;
  }
}
@keyframes gg-seq-cursor {
  0%,
  13.3% {
    transform: translateY(132px);
  }
  16.7%,
  30% {
    transform: translateY(196px);
  }
  33.3%,
  46.6% {
    transform: translateY(260px);
  }
  50%,
  63.3% {
    transform: translateY(324px);
  }
  66.7%,
  80% {
    transform: translateY(388px);
  }
  83.3%,
  to {
    transform: translateY(452px);
  }
}
@keyframes gg-seq-band {
  0%,
  13.3% {
    transform: translateY(132px);
  }
  16.7%,
  30% {
    transform: translateY(196px);
  }
  33.3%,
  46.6% {
    transform: translateY(260px);
  }
  50%,
  63.3% {
    transform: translateY(324px);
  }
  66.7%,
  80% {
    transform: translateY(388px);
  }
  83.3%,
  to {
    transform: translateY(452px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .gg-seq__msg,
  .gg-mino__route {
    animation: none;
  }
  .gg-seq__band,
  .gg-seq__cursor {
    animation: none !important;
    transform: translateY(132px);
  }
}
.gg-mino {
  grid-template-columns: 1fr 22rem;
}
.gg-mino__panel-title {
  font-size: 0.92rem;
}
.gg-audit {
  padding: 0.55rem 0.85rem;
}
.gg-audit__name,
.gg-audit__score {
  font-size: 1.05rem;
}
.gg-audit__icon {
  font-size: 1.15rem;
}
html {
  font-size: clamp(11px, min(2.35vh, 1.32vw), 42px);
}
:root {
  --ns-bg: #faf8f5;
  --ns-bg-2: #f0ede8;
  --ns-panel: #ffffff;
  --ns-panel-2: #f5f2ec;
  --ns-line: #e0dbd4;
  --ns-line-soft: #ece8e2;
  --ns-card-edge: #e6e1da;
  --ns-amber: #b34a0b;
  --ns-amber-bright: #c2570f;
  --ns-amber-deep: #8a3908;
  --ns-teal: #007560;
  --ns-coral: #b8300d;
  --ns-mint: #4f7a10;
  --ns-orange: #b08410;
  --ns-violet: #8c2dad;
  --ns-sky: #0a6b8a;
  --ns-lime: #7a9810;
  --ns-glow: #fffdf9;
  --ns-glow-accent: rgba(179, 74, 11, 0.05);
  --rik-text-strong: #1f1a15;
  --rik-heading: #2a2520;
  --rik-on-accent: #faf8f5;
  --rik-title-glow: none;
  --rik-surface-page: var(--ns-bg);
  --rik-surface-raised: var(--ns-panel);
  --rik-surface-raised--strong: var(--ns-panel-2);
  --rik-surface-sunken: var(--ns-bg-2);
  --rik-surface-tint: rgba(42, 37, 32, 0.03);
  --rik-surface-tint--strong: rgba(42, 37, 32, 0.06);
  --rik-surface-inverse: #2a2520;
  --rik-surface-inverse--soft: #3a352f;
  --rik-text-default: #2a2520;
  --rik-text-default--muted: #4a4540;
  --rik-text-default--faint: #6f6a64;
  --rik-text-inverse: #faf8f5;
  --rik-text-inverse--muted: rgba(250, 248, 245, 0.78);
  --rik-text-inverse--faint: rgba(250, 248, 245, 0.6);
  --rik-text-inverse--ghost: rgba(250, 248, 245, 0.3);
  --rik-border-default: var(--ns-line);
  --rik-border-default--subtle: var(--ns-line-soft);
  --rik-border-inverse: rgba(255, 255, 255, 0.14);
  --rik-accent: var(--ns-amber);
  --rik-accent--soft: rgba(179, 74, 11, 0.1);
  --rik-accent--faint: rgba(179, 74, 11, 0.05);
  --rik-accent--strong: var(--ns-amber-bright);
  --rik-accent__on: var(--rik-on-accent);
  --rik-status-success: var(--ns-mint);
  --rik-status-success__bg: rgba(79, 122, 16, 0.1);
  --rik-status-success__border: rgba(79, 122, 16, 0.34);
  --rik-status-danger: var(--ns-coral);
  --rik-status-danger__bg: rgba(184, 48, 13, 0.08);
  --rik-status-danger__border: rgba(184, 48, 13, 0.34);
  --rik-status-warn: var(--ns-orange);
  --rik-status-warn__bg: rgba(176, 132, 16, 0.1);
  --rik-status-warn__border: rgba(176, 132, 16, 0.34);
  --rik-status-info: var(--ns-teal);
  --rik-status-info__text: var(--ns-teal);
  --rik-status-info__bg: rgba(0, 117, 96, 0.07);
  --rik-status-info__bg--mid: rgba(0, 117, 96, 0.11);
  --rik-status-info__bg--strong: rgba(0, 117, 96, 0.16);
  --rik-status-info__border: rgba(0, 117, 96, 0.3);
  --rik-decor-orchid: var(--ns-violet);
  --rik-decor-lime: var(--ns-lime);
  --rik-elevation-1: 0 1px 2px rgba(42, 37, 32, 0.05);
  --rik-elevation-2: 0 2px 8px rgba(42, 37, 32, 0.07);
  --rik-elevation-3: 0 10px 30px rgba(42, 37, 32, 0.1);
  --rik-font-sans: 'Inter', -apple-system, 'Segoe UI', sans-serif;
  --rik-font-display: 'Unbounded', 'Inter', -apple-system, sans-serif;
  --rik-font-serif: 'Instrument Serif', Georgia, 'Times New Roman', serif;
  --rik-font-mono: 'Space Mono', ui-monospace, 'SF Mono', monospace;
  --rik-font-code: 'IBM Plex Mono', ui-monospace, 'SF Mono', Consolas, monospace;
  --rik-font-pix: var(--rik-font-mono);
  --rik-disp-transform: uppercase;
  --paper: var(--ns-bg);
  --paper-soft: var(--ns-panel-2);
  --paper-mid: var(--ns-bg-2);
  --paper-rule: var(--ns-line);
  --paper-deep: #c8c2b8;
  --ink: var(--rik-text-default);
  --ink-mid: var(--rik-text-default--muted);
  --ink-light: var(--rik-text-default--faint);
  --ink-faint: #8a857e;
  --mango: var(--ns-amber);
  --ember: var(--ns-coral);
  --red: black;
  --orchid: var(--ns-violet);
  --helico: var(--ns-teal);
  --lime: var(--ns-lime);
  --canary: var(--ns-orange);
  --font-ui: var(--rik-font-display);
  --font-title: var(--rik-font-serif);
  --font-body: var(--rik-font-sans);
  --font-meta: var(--rik-font-mono);
  --font-code: var(--rik-font-code);
  --radius-sm: 4px;
  --dur-fast: 0.15s;
  --ease-card: cubic-bezier(0.4, 0, 0.2, 1);
  --shadow-card-rest: var(--rik-elevation-1);
  --shadow-card-hover: var(--rik-elevation-2);
  --accent-danger: var(--ember);
  --accent-ok: var(--helico);
  --accent-insight: var(--orchid);
  --accent-watch: var(--canary);
  --accent-neutral: var(--mango);
}
deck-title-screen .sub,
.lead-line em,
.serif {
  font-family: var(--rik-font-serif);
}
html,
body {
  background: var(--ns-bg);
}
body,
deck-root {
  color: var(--rik-text-default);
}
deck-root {
  --deck-letterbox-bg: var(--ns-bg);
  --deck-root-bg: var(--ns-bg);
  background: var(--ns-bg) !important;
}
deck-root {
  --deck-section-bg: #221d18;
}
deck-slide:has(.qbridge),
deck-slide:has(.vbridge),
deck-slide:has(.vbridge2),
deck-slide:has(.vbridge3),
deck-slide:has(.vbridge5) {
  background: #221d18;
}
.cmd:has(> i.icon-sparkles),
.ds-chip:has(> i.icon-sparkles) {
  --c: var(--helico);
}
.cmd:has(> i.icon-file-code),
.ds-chip:has(> i.icon-file-code) {
  --c: var(--canary);
}
.cmd:has(> i.icon-terminal),
.ds-chip:has(> i.icon-terminal) {
  --c: var(--ember);
}
.cmd:has(> i.icon-workflow),
.ds-chip:has(> i.icon-workflow) {
  --c: var(--orchid);
}
.cmd:has(> i.icon-square-slash),
.ds-chip:has(> i.icon-square-slash) {
  --c: var(--mango);
}
.cmd:has(> i.icon-scale),
.ds-chip:has(> i.icon-scale) {
  --c: var(--ink);
}
.cmd > i,
.ds-chip > i {
  color: inherit;
}
body,
deck-root {
  font-synthesis: none;
}
deck-title-screen {
  --ts-title-size: clamp(2.4rem, 5.6vw, 4.6rem);
}
deck-root {
  --deck-root-progress-color: linear-gradient(90deg, var(--ns-amber), var(--ns-teal));
  --deck-root-progress-height: 3px;
  --deck-root-dot-active-bg: var(--ns-amber);
  --deck-root-dot-bg: rgba(42, 37, 32, 0.16);
  --deck-root-counter-color: rgba(42, 37, 32, 0.42);
  --deck-root-kb-hint-color: rgba(42, 37, 32, 0.3);
}
deck-feature > h1,
deck-split > h1,
deck-feature-cards > h1 {
  font-family: var(--rik-font-display);
  font-weight: 600;
  letter-spacing: -0.01em;
  border-bottom-color: var(--ns-amber);
  color: var(--rik-heading);
}
deck-cover > h1 {
  font-family: var(--rik-font-display);
  letter-spacing: -0.02em;
}
deck-section > h1 {
  font-family: var(--rik-font-display);
}
.accent {
  color: var(--ns-amber);
}
.accent-teal {
  color: var(--ns-teal);
}
.accent-coral {
  color: var(--ns-coral);
}
:root {
  --deck-eyebrow-bg: rgba(179, 74, 11, 0.1);
  --deck-eyebrow-color: var(--ns-amber);
}
[data-step-block] {
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}
.ic {
  font-family: lucide;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  display: inline-block;
  vertical-align: -0.1em;
}
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-thumb {
  background: #2a252024;
  border-radius: 8px;
}
.lead-line {
  font-size: 1.15rem;
  text-wrap: balance;
  text-align: center;
  color: var(--rik-text-default--muted);
  line-height: 1.55;
  max-width: none;
  margin: 0.2rem 0 1.2rem;
}
.lead-line--tight {
  margin-bottom: 0.8rem;
}
.lead-line--after {
  margin: 1.2rem 0 0;
}
.lead-line strong {
  color: var(--rik-text-strong);
  font-weight: 600;
}
.loot-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem;
}
.loot-row.four {
  grid-template-columns: repeat(4, 1fr);
}
.loot {
  background: var(--ns-panel);
  border: 1.5px solid var(--ns-card-edge);
  border-radius: 14px;
  padding: 1.4rem 1.5rem;
  box-shadow: var(--rik-elevation-2);
}
.loot.amber {
  border-color: #b34a0b73;
}
.loot.teal {
  border-color: #00756066;
}
.loot.mint {
  border-color: #4f7a1073;
}
.loot.coral {
  border-color: #b8300d66;
}
.loot .n {
  font-family: var(--rik-font-display);
  font-weight: 600;
  font-size: 2.7rem;
  line-height: 1.1;
  color: var(--rik-heading);
  letter-spacing: -0.01em;
  white-space: nowrap;
}
.loot.amber .n {
  color: var(--ns-amber);
}
.loot.teal .n {
  color: var(--ns-teal);
}
.loot.mint .n {
  color: var(--ns-mint);
}
.loot.coral .n {
  color: var(--ns-coral);
}
.loot .k {
  font-family: var(--rik-font-mono);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--rik-text-default--faint);
  margin-top: 0.5rem;
}
.loot .d {
  font-size: 0.92rem;
  color: var(--rik-text-default--muted);
  margin-top: 0.5rem;
  line-height: 1.45;
}
.questlog {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.55rem 0.9rem;
}
.qentry {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.6rem 0.85rem;
  border-radius: 10px;
  background: var(--ns-panel);
  border: 1px solid var(--ns-card-edge);
  box-shadow: var(--rik-elevation-1);
}
.qentry .qn {
  font-family: var(--rik-font-mono);
  font-weight: 700;
  font-size: 0.8rem;
  width: 1.9rem;
  height: 1.9rem;
  flex: 0 0 1.9rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  background: var(--ns-bg-2);
  border: 1px solid var(--ns-line);
  color: var(--rik-text-default--faint);
}
.qentry .qnm {
  font-weight: 600;
  color: var(--rik-text-default);
  font-size: 1.05rem;
}
.qentry .qd {
  font-family: var(--rik-font-mono);
  font-size: 0.8rem;
  color: var(--rik-text-default--faint);
  margin-left: auto;
}
.qentry.boss {
  border-color: #b8300d66;
}
.qentry.boss .qn {
  color: var(--ns-coral);
  border-color: #b8300d66;
}
.qentry.hot .qn {
  background: var(--ns-amber);
  color: var(--rik-on-accent);
  border-color: var(--ns-amber-bright);
}
.vs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.6rem;
}
.vs-card {
  background: var(--ns-panel);
  border: 1px solid var(--ns-card-edge);
  border-radius: 14px;
  padding: 1.5rem 1.7rem;
  box-shadow: var(--rik-elevation-2);
}
.vs-card h3 {
  font-family: var(--rik-font-mono);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0 0 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.vs-card.bad {
  border: 1.5px solid rgba(184, 48, 13, 0.45);
}
.vs-card.bad h3 {
  color: var(--ns-coral);
}
.vs-card.good {
  border: 1.5px solid rgba(79, 122, 16, 0.45);
}
.vs-card.good h3 {
  color: var(--ns-mint);
}
.vs-card p {
  font-size: 1.05rem;
  color: var(--rik-text-default--muted);
  line-height: 1.5;
  margin: 0 0 0.9rem;
}
.vs-card .big {
  font-family: var(--rik-font-display);
  font-size: 1.45rem;
  font-weight: 600;
  color: var(--rik-heading);
  line-height: 1.2;
  margin: 0 0 0.8rem;
}
.vs-card .tag {
  font-family: var(--rik-font-mono);
  font-size: 0.8rem;
  color: var(--rik-text-default--faint);
}
.specdoc {
  background: #1d2330;
  border: 1px solid var(--ns-card-edge);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: var(--rik-elevation-3);
  font-family: var(--rik-font-mono);
  font-size: 0.8rem;
  line-height: 1.7;
}
.specdoc .bar {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.6rem 0.9rem;
  background: #161b26;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.specdoc .bar i {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #39414f;
  display: inline-block;
}
.specdoc .bar .fn {
  margin-left: 0.6rem;
  color: #ffffff80;
  font-size: 0.8rem;
}
.specdoc pre {
  margin: 0;
  padding: 1rem 1.2rem;
  white-space: pre;
  overflow: auto;
  color: #cfd6e4;
}
.specdoc .c {
  color: #7c8699;
}
.specdoc .t {
  color: #e6a15c;
}
.specdoc .k {
  color: #5fc7b8;
}
.specdoc .s {
  color: #9fd98a;
}
.flow {
  display: flex;
  align-items: stretch;
  gap: 0.5rem;
}
.phase {
  flex: 1;
  background: var(--ns-panel);
  border: 1px solid var(--ns-card-edge);
  border-radius: 12px;
  padding: 1.1rem 1rem;
  position: relative;
  box-shadow: var(--rik-elevation-1);
}
.phase .pn {
  font-family: var(--rik-font-mono);
  font-weight: 700;
  font-size: 0.8rem;
  color: var(--ns-amber);
}
.phase .pt {
  font-family: var(--rik-font-display);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--rik-heading);
  margin: 0.5rem 0 0.3rem;
}
.phase .pd {
  font-size: 0.8rem;
  color: var(--rik-text-default--faint);
  line-height: 1.4;
}
.flow .arr {
  align-self: center;
  color: var(--rik-text-default--faint);
  font-size: 1.1rem;
}
.ticketcard {
  background: var(--ns-panel);
  border: 1px solid var(--ns-card-edge);
  border-radius: 12px;
  padding: 1.1rem 1.3rem;
  font-family: var(--rik-font-mono);
  font-size: 0.8rem;
  box-shadow: var(--rik-elevation-1);
}
.ticketcard .row {
  display: flex;
  gap: 0.6rem;
  margin: 0.25rem 0;
  color: var(--rik-text-default--muted);
}
.ticketcard .row b {
  color: var(--rik-text-default--faint);
  min-width: 9ch;
  display: inline-block;
}
.ticketcard .pill {
  background: var(--ns-bg-2);
  border: 1px solid var(--ns-line);
  border-radius: 6px;
  padding: 0.1rem 0.5rem;
  color: var(--ns-teal);
}
deck-slide > .ds-callout:not(:first-child),
deck-slide > .callout:not(:first-child),
deck-slide > div > .ds-callout:not(:first-child),
deck-slide > div > .callout:not(:first-child) {
  margin-top: 1.15rem;
}
