/* stx role tokens — override any of these to re-theme by meaning. */
:root {
  --stx-fg: oklch(20.5% 0 0);
  --stx-fg-strong: oklch(37.1% 0 0);
  --stx-fg-muted: oklch(43.9% 0 0);
  --stx-fg-soft: oklch(55.6% 0 0);
  --stx-fg-subtle: oklch(70.8% 0 0);
  --stx-surface: oklch(98.5% 0 0);
  --stx-surface-raised: oklch(97% 0 0);
  --stx-surface-sunken: oklch(92.2% 0 0);
  --stx-panel: #fff;
  --stx-field: #fff;
  --stx-page: oklch(98.5% 0 0);
  --stx-content: #fff;
  --stx-surface-hover: oklch(97% 0 0);
  --stx-surface-raised-hover: oklch(92.2% 0 0);
  --stx-surface-sunken-hover: oklch(87% 0 0);
  --stx-field-hover: oklch(98.5% 0 0);
  --stx-link: oklch(62.3% 0.214 259.815);
  --stx-link-hover: oklch(54.6% 0.245 262.881);
  --stx-inverse: oklch(20.5% 0 0);
  --stx-inverse-ink: #fff;
  --stx-line: oklch(92.2% 0 0);
  --stx-line-strong: oklch(87% 0 0);
  --stx-line-hover: oklch(70.8% 0 0);
  --stx-accent: oklch(54.6% 0.245 262.881);
  --stx-info: oklch(60.9% 0.126 221.723);
  --stx-danger: oklch(57.7% 0.245 27.325);
  --stx-success: oklch(62.7% 0.194 149.214);
  --stx-warning: oklch(68.1% 0.162 75.834);
  --stx-accent-solid: oklch(62.3% 0.214 259.815);
  --stx-info-solid: oklch(71.5% 0.143 215.221);
  --stx-danger-solid: oklch(63.7% 0.237 25.331);
  --stx-success-solid: oklch(72.3% 0.219 149.579);
  --stx-warning-solid: oklch(79.5% 0.184 86.047);
  --stx-accent-solid-hover: oklch(54.6% 0.245 262.881);
  --stx-info-solid-hover: oklch(60.9% 0.126 221.723);
  --stx-danger-solid-hover: oklch(57.7% 0.245 27.325);
  --stx-success-solid-hover: oklch(62.7% 0.194 149.214);
  --stx-warning-solid-hover: oklch(68.1% 0.162 75.834);
  --stx-accent-ink: #fff;
  --stx-info-ink: oklch(20.5% 0 0);
  --stx-danger-ink: #fff;
  --stx-success-ink: oklch(20.5% 0 0);
  --stx-warning-ink: oklch(20.5% 0 0);
  --stx-accent-soft: oklch(93.2% 0.032 255.585);
  --stx-accent-soft-ink: oklch(42.4% 0.199 265.638);
  --stx-info-soft: oklch(95.6% 0.045 203.388);
  --stx-info-soft-ink: oklch(45% 0.085 224.283);
  --stx-danger-soft: oklch(93.6% 0.032 17.717);
  --stx-danger-soft-ink: oklch(44.4% 0.177 26.899);
  --stx-success-soft: oklch(96.2% 0.044 156.743);
  --stx-success-soft-ink: oklch(44.8% 0.119 151.328);
  --stx-warning-soft: oklch(97.3% 0.071 103.193);
  --stx-warning-soft-ink: oklch(47.6% 0.114 61.907);
  --stx-secondary: oklch(55.8% 0.288 302.321);
  --stx-secondary-solid: oklch(62.7% 0.265 303.9);
  --stx-secondary-solid-hover: oklch(55.8% 0.288 302.321);
  --stx-secondary-ink: #fff;
  --stx-secondary-soft: oklch(94.6% 0.033 307.174);
  --stx-secondary-soft-ink: oklch(43.8% 0.218 303.724);
  --stx-danger-fg: oklch(39.6% 0.141 25.723);
  --stx-danger-fg-subtle: oklch(80.8% 0.114 19.571);
  --stx-danger-line: oklch(80.8% 0.114 19.571);
  --stx-danger-focus: oklch(63.7% 0.237 25.331);
}
.dark {
  --stx-fg: oklch(97% 0 0);
  --stx-fg-strong: oklch(87% 0 0);
  --stx-fg-muted: oklch(70.8% 0 0);
  --stx-fg-soft: oklch(70.8% 0 0);
  --stx-fg-subtle: oklch(55.6% 0 0);
  --stx-surface: oklch(26.9% 0 0);
  --stx-surface-raised: oklch(37.1% 0 0);
  --stx-surface-sunken: oklch(37.1% 0 0);
  --stx-panel: oklch(26.9% 0 0);
  --stx-field: oklch(37.1% 0 0);
  --stx-page: oklch(20.5% 0 0);
  --stx-content: oklch(20.5% 0 0);
  --stx-surface-hover: oklch(37.1% 0 0);
  --stx-surface-raised-hover: oklch(43.9% 0 0);
  --stx-surface-sunken-hover: oklch(43.9% 0 0);
  --stx-field-hover: oklch(43.9% 0 0);
  --stx-link: oklch(70.7% 0.165 254.624);
  --stx-link-hover: oklch(80.9% 0.105 251.813);
  --stx-inverse: oklch(37.1% 0 0);
  --stx-inverse-ink: #fff;
  --stx-line: oklch(37.1% 0 0);
  --stx-line-strong: oklch(43.9% 0 0);
  --stx-line-hover: oklch(55.6% 0 0);
  --stx-accent: oklch(70.7% 0.165 254.624);
  --stx-info: oklch(78.9% 0.154 211.53);
  --stx-danger: oklch(70.4% 0.191 22.216);
  --stx-success: oklch(79.2% 0.209 151.711);
  --stx-warning: oklch(85.2% 0.199 91.936);
  --stx-accent-solid: oklch(54.6% 0.245 262.881);
  --stx-info-solid: oklch(60.9% 0.126 221.723);
  --stx-danger-solid: oklch(57.7% 0.245 27.325);
  --stx-success-solid: oklch(62.7% 0.194 149.214);
  --stx-warning-solid: oklch(68.1% 0.162 75.834);
  --stx-accent-solid-hover: oklch(48.8% 0.243 264.376);
  --stx-info-solid-hover: oklch(52% 0.105 223.128);
  --stx-danger-solid-hover: oklch(50.5% 0.213 27.518);
  --stx-success-solid-hover: oklch(52.7% 0.154 150.069);
  --stx-warning-solid-hover: oklch(55.4% 0.135 66.442);
  --stx-accent-ink: #fff;
  --stx-info-ink: oklch(20.5% 0 0);
  --stx-danger-ink: #fff;
  --stx-success-ink: oklch(20.5% 0 0);
  --stx-warning-ink: oklch(20.5% 0 0);
  --stx-accent-soft: oklch(37.9% 0.146 265.522);
  --stx-accent-soft-ink: oklch(88.2% 0.059 254.128);
  --stx-info-soft: oklch(39.8% 0.07 227.392);
  --stx-info-soft-ink: oklch(91.7% 0.08 205.041);
  --stx-danger-soft: oklch(39.6% 0.141 25.723);
  --stx-danger-soft-ink: oklch(88.5% 0.062 18.334);
  --stx-success-soft: oklch(39.3% 0.095 152.535);
  --stx-success-soft-ink: oklch(92.5% 0.084 155.995);
  --stx-warning-soft: oklch(42.1% 0.095 57.708);
  --stx-warning-soft-ink: oklch(94.5% 0.129 101.54);
  --stx-secondary: oklch(71.4% 0.203 305.504);
  --stx-secondary-solid: oklch(55.8% 0.288 302.321);
  --stx-secondary-solid-hover: oklch(49.6% 0.265 301.924);
  --stx-secondary-ink: #fff;
  --stx-secondary-soft: oklch(38.1% 0.176 304.987);
  --stx-secondary-soft-ink: oklch(90.2% 0.063 306.703);
  --stx-danger-fg: oklch(80.8% 0.114 19.571);
  --stx-danger-fg-subtle: oklch(63.7% 0.237 25.331);
  --stx-danger-line: oklch(57.7% 0.245 27.325);
  --stx-danger-focus: oklch(70.4% 0.191 22.216);
}
/* stx shape tokens — a radius by what the thing is. */
:root {
  --stx-radius-control: 0.375rem;
  --stx-radius-panel: 0.5rem;
  --stx-radius-pill: 9999px;
}
@layer tc-base {
/*
! Tailwind CSS Preflight | MIT License | https://tailwindcss.com
*/

/*
  The fallback is a neutral grey, not currentColor.

  currentColor makes every border whose colour was never set take the TEXT
  colour, which is near-black on a light page and near-white on a dark one.
  That is never what an author means by a divider: the divide-* and
  border-width utilities set a width and no colour, so a plain divide-y
  rendered as a heavy black rule instead of a hairline.

  It also punished the obvious workaround. Setting border-color on a parent
  does not reach divide-* children, because divide targets
  "> :not([hidden]) ~ :not([hidden])" and the child declaration from this
  block wins.

  Tailwind preflight resolves this the same way (its default is gray-200).
  --border-color stays the escape hatch: set it once on :root, or per
  theme, and every uncoloured border follows.
*/
*,
::before,
::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
  border-color: var(--border-color, #e5e7eb);
}

::before,
::after {
  --tc-content: '';
}

html,
:host {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  tab-size: 4;
  font-family: ui-sans-serif, system-ui, sans-serif;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0;
  line-height: inherit;
}

hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}

abbr:where([title]) {
  text-decoration: underline dotted;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

a {
  color: inherit;
  text-decoration: inherit;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-feature-settings: normal;
  font-variation-settings: normal;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  text-indent: 0;
  border-color: var(--border-color, inherit);
  border-collapse: collapse;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}

button,
select {
  text-transform: none;
}

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}

:-moz-focusring {
  outline: auto;
}

:-moz-ui-invalid {
  box-shadow: none;
}

progress {
  vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

[type='search'] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

dialog {
  padding: 0;
}

textarea {
  resize: vertical;
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: color-mix(in oklab, currentColor 50%, transparent);
}

button,
[role="button"] {
  cursor: pointer;
}

:disabled {
  cursor: default;
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  vertical-align: middle;
}

img,
video {
  max-width: 100%;
  height: auto;
}

[hidden] {
  display: none;
}
}

@layer tc-base {
/*
! Tailwind CSS Preflight | MIT License | https://tailwindcss.com
*/

/*
  The fallback is a neutral grey, not currentColor.

  currentColor makes every border whose colour was never set take the TEXT
  colour, which is near-black on a light page and near-white on a dark one.
  That is never what an author means by a divider: the divide-* and
  border-width utilities set a width and no colour, so a plain divide-y
  rendered as a heavy black rule instead of a hairline.

  It also punished the obvious workaround. Setting border-color on a parent
  does not reach divide-* children, because divide targets
  "> :not([hidden]) ~ :not([hidden])" and the child declaration from this
  block wins.

  Tailwind preflight resolves this the same way (its default is gray-200).
  --border-color stays the escape hatch: set it once on :root, or per
  theme, and every uncoloured border follows.
*/
*,
::before,
::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
  border-color: var(--border-color, #e5e7eb);
}

::before,
::after {
  --cw-content: '';
}

html,
:host {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  tab-size: 4;
  font-family: ui-sans-serif, system-ui, sans-serif;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0;
  line-height: inherit;
}

hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}

abbr:where([title]) {
  text-decoration: underline dotted;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

a {
  color: inherit;
  text-decoration: inherit;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-feature-settings: normal;
  font-variation-settings: normal;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  text-indent: 0;
  border-color: var(--border-color, inherit);
  border-collapse: collapse;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}

button,
select {
  text-transform: none;
}

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}

:-moz-focusring {
  outline: auto;
}

:-moz-ui-invalid {
  box-shadow: none;
}

progress {
  vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

[type='search'] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

dialog {
  padding: 0;
}

textarea {
  resize: vertical;
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: color-mix(in oklab, currentColor 50%, transparent);
}

button,
[role="button"] {
  cursor: pointer;
}

:disabled {
  cursor: default;
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  vertical-align: middle;
}

img,
video {
  max-width: 100%;
  height: auto;
}

[hidden] {
  display: none;
}
}

@layer tc-base {

:root { 
  --font-masthead: 'UnifrakturMaguntia', 'Playfair Display', Georgia, serif;
  --font-display: 'Playfair Display', 'Times New Roman', Georgia, serif;
  --font-body: 'Libre Baskerville', Georgia, 'Times New Roman', serif;
  --font-label: 'Oswald', 'Arial Narrow', ui-sans-serif, sans-serif;
  --font-typewriter: 'Courier New', ui-monospace, monospace;
 }
:root { 
  color-scheme: light;
  background: #f4f0e4;
  --bg: #f4f0e4;
  --panel: #fbf8ef;
  --panel-2: #ece6d6;
  --panel-3: #e2dbc7;
  --line: #cec5ae;
  --ink: #17130f;
  --body: #3a332a;
  --muted: #7b7263;
  --accent: #9c2118;
  --on-accent: #fbf8ef;
 }
html.dark { 
  color-scheme: dark;
  background: #14110d;
  --bg: #14110d;
  --panel: #1d1914;
  --panel-2: #241f19;
  --panel-3: #2d2720;
  --line: #3a332a;
  --ink: #f2ece0;
  --body: #d8d0c0;
  --muted: #9b9284;
  --accent: #d9614f;
  --on-accent: #14110d;
 }
html.marketing { 
  color-scheme: light;
  --bg: #f1ecdd;
  --panel: #f8f4e9;
  --panel-2: #e7e0cd;
  --panel-3: #ddd4bd;
  --line: #c6bca3;
  --ink: #12100c;
  --body: #332d24;
  --muted: #756c5c;
  --accent: #9c2118;
  --on-accent: #f8f4e9;
 }
html.dark body { color: var(--ink); }

}

@layer tc-base {

.dark .bg-blue-50 { background-color: #172554; }
.dark .bg-emerald-50 { background-color: #052e2b; }
.dark .bg-amber-50 { background-color: #3a2a08; }
.dark .bg-red-50 { background-color: #3a1414; }

.dark .bg-zinc-50\/80, .dark .bg-zinc-50\/48 { background-color: #1c1c1f; }
.dark .bg-zinc-50\/40 { background-color: rgba(255, 255, 255, 0.02); }

.dark .border-zinc-200\/80 { border-color: #2a2a2e; }
.dark .border-blue-200 { border-color: #1e3a8a; }
.dark .border-emerald-200 { border-color: #0f766e; }
.dark .border-amber-200 { border-color: #78500a; }
.dark .border-red-200 { border-color: #7f1d1d; }

.dark .text-blue-700, .dark .text-blue-800 { color: #93c5fd; }
.dark .text-emerald-700, .dark .text-emerald-800 { color: #6ee7b7; }
.dark .text-amber-800, .dark .text-amber-700 { color: #fcd34d; }
.dark .text-red-700 { color: #fca5a5; }

.dark .hover\:bg-white:hover { background-color: #26262a; }
.dark .hover\:bg-zinc-50:hover { background-color: #26262a; }
.dark .hover\:bg-zinc-100:hover { background-color: #2f2f34; }
.dark .hover\:text-zinc-900:hover { color: #f4f4f5; }
.dark .hover\:bg-neutral-800:hover { background-color: #d4d4d8; }

.dark .border-zinc-200\/70 { border-color: rgb(63 63 70 / 0.7); }

.dark input, .dark textarea, .dark select { color: #f4f4f5; }
.dark input::placeholder, .dark textarea::placeholder { color: #71717a; }
.dark code { background-color: #26262a; color: #e4e4e7; }

.dark [data-ot-content-shell],
.dark [data-ot-workspace],
.dark [data-ot-sidebar] { background-color: #0a0a0c; }
.dark [data-ot-workspace] {
  border-color: #2a2a2e;
  box-shadow: -10px 0 36px rgba(0, 0, 0, 0.4);
}
.dark [data-ot-sidebar] { background-color: rgba(24, 24, 27, 0.5); }
.dark [data-ot-sidebar] > .absolute { opacity: 0.35; }

.dark .bg-\[\#e8e8e6\]\/90 { background-color: rgba(63, 63, 70, 0.6); }
.dark .bg-white\/95 { background-color: rgba(39, 39, 42, 0.95); }
.dark .bg-white\/72 { background-color: rgba(63, 63, 70, 0.72); }
.dark .bg-white\/60 { background-color: rgba(63, 63, 70, 0.6); }
.dark .hover\:bg-white\/38:hover,
.dark .hover\:bg-white\/60:hover,
.dark .hover\:bg-white\/35:hover { background-color: rgba(63, 63, 70, 0.55); }
.dark .bg-white\/48 { background-color: rgba(39, 39, 42, 0.48); }

/* Analytics chart — CSS fill/stroke beat SVG presentation attributes, so the
  chart is not a light island on a dark page. */
.dark [data-analytics-chart] rect[rx="16"] { fill: #101014; }
.dark [data-analytics-chart] line[stroke="#e4e4e7"] { stroke: #2a2a2e; }
.dark [data-analytics-chart] text[fill="#18181b"] { fill: #e4e4e7; }
.dark [data-analytics-chart] rect[fill="#fff"] { fill: #26262a; stroke: #3f3f46; }
.dark [data-analytics-chart] .bg-zinc-100 { background-color: #26262a; }

}

@layer tc-base {

@property --ot-sidebar-width {
  syntax: '<length>';
  inherits: true;
  initial-value: 286px;
}

[data-ot-shell] {
  transition-property: --ot-sidebar-width;
  transition-duration: 220ms;
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}

html.has-native-sidebar,
html.has-native-sidebar body {
  background: transparent !important;
}

html.has-native-sidebar [data-ot-sidebar] {
  background-color: rgba(246, 246, 244, 0.18) !important;
  -webkit-backdrop-filter: blur(24px) saturate(1.08);
  backdrop-filter: blur(24px) saturate(1.08);
}

html.ot-sidebar-collapsed [data-ot-content-shell],
html.has-native-sidebar [data-ot-content-shell],
html.has-native-sidebar [data-ot-workspace] {
  background: #f3f3f1 !important;
}

html.ot-sidebar-collapsed [data-ot-workspace] {
  border-top-left-radius: 0 !important;
  border-left-color: transparent !important;
  box-shadow: none !important;
}

html.ot-sidebar-collapsed [data-ot-sidebar] {
  overflow: visible;
  pointer-events: none;
}

html.ot-sidebar-collapsed [data-shell-controls-row] {
  display: none !important;
}

[data-sidebar-expand-fab] {
  opacity: 0;
  transform: translate3d(-6px, 0, 0) scale(0.94);
  pointer-events: none;
  transition:
    opacity 220ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 220ms cubic-bezier(0.22, 1, 0.36, 1);
}

html.ot-sidebar-collapsed:not(.has-native-sidebar) [data-sidebar-expand-fab] {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  pointer-events: auto;
}

@media (max-width: 1023px) {
  [data-sidebar-expand-fab] { display: none; }

  [data-ot-mobile-nav] {
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-mask-image: linear-gradient(to right, transparent, #000 14px, #000 calc(100% - 28px), transparent);
    mask-image: linear-gradient(to right, transparent, #000 14px, #000 calc(100% - 28px), transparent);
  }

  [data-ot-mobile-nav]::-webkit-scrollbar { display: none; }
}

[data-ot-app] :is(a, button, [role='button']):focus-visible {
  outline: 2px solid rgb(82 82 91 / 0.6);
  outline-offset: 2px;
}

html.dark.has-native-sidebar [data-ot-content-shell],
html.dark.has-native-sidebar [data-ot-workspace] {
  background: #0a0a0c !important;
}

}

@layer tc-base {

[data-ot-router] { width: 100%; }

[data-ot-page] {
  width: min(100%, 96rem);
  margin-inline: auto;
}

[data-ot-page] > header:first-child {
  min-height: 72px;
  padding: 5px 2px 7px;
}

/*
  Page headings in the workspace are set in the paper's display face, so the
  newsroom is recognisably the same publication as the front page. Body copy and
  controls stay in the UI sans: this surface is read in short bursts at small
  sizes, where a book serif costs legibility for atmosphere.
*/
[data-ot-page] > header:first-child h1 {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.15;
}

/* Section eyebrows and meta rows across the workspace, matching the front page. */
[data-ot-page] .kicker,
[data-ot-page] .folio,
[data-ot-page] .byline { font-family: var(--font-label); }

[data-ot-page] .rounded-2xl { border-radius: 14px; }
[data-ot-page] .rounded-xl { border-radius: 10px; }
[data-ot-page] .rounded-lg { border-radius: 8px; }

[data-ot-page] .shadow-sm {
  box-shadow: 0 1px 2px rgb(24 24 27 / 0.035), 0 8px 24px rgb(24 24 27 / 0.025);
}

[data-ot-page] :is(a, button, summary) {
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}

[data-ot-page] :is(button, summary):active,
[data-ot-page] a:active { transform: translateY(1px); }

[data-ot-page] :is(input, textarea, select) { border-radius: 10px; }

.dark .bg-white { background-color: var(--panel); }
.dark .hover:bg-white:hover { background-color: var(--panel-3); }

@media (max-width: 640px) {
  [data-ot-router] { padding: 12px; }
  [data-ot-page] { gap: 12px; }
  [data-ot-page] > header:first-child { min-height: auto; padding: 2px 1px 5px; }
  [data-ot-page] > header:first-child h1 { font-size: 21px; }
}

}

@layer tc-base {

[data-view-toggle] { color: var(--muted); }
[data-view-toggle][data-active] { background: var(--panel); color: var(--ink); box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); }

[data-status-pill] { color: var(--muted); background: var(--panel-3); border-color: var(--line); }
[data-status-pill][data-status="published"] { color: rgb(4 120 87); background: rgb(236 253 245); border-color: rgb(167 243 208); }
[data-status-pill][data-status="scheduled"] { color: rgb(29 78 216); background: rgb(239 246 255); border-color: rgb(191 219 254); }
[data-status-pill][data-status="publishing"] { color: rgb(146 64 14); background: rgb(255 251 235); border-color: rgb(253 230 138); }
[data-status-pill][data-status="failed"] { color: rgb(185 28 28); background: rgb(254 242 242); border-color: rgb(254 202 202); }
html.dark [data-status-pill][data-status="published"] { color: rgb(110 231 183); background: rgb(6 78 59 / 0.3); border-color: rgb(6 78 59); }
html.dark [data-status-pill][data-status="scheduled"] { color: rgb(147 197 253); background: rgb(30 58 138 / 0.3); border-color: rgb(30 58 138); }
html.dark [data-status-pill][data-status="publishing"] { color: rgb(252 211 77); background: rgb(120 53 15 / 0.3); border-color: rgb(120 53 15); }
html.dark [data-status-pill][data-status="failed"] { color: rgb(252 165 165); background: rgb(127 29 29 / 0.3); border-color: rgb(127 29 29); }

[data-cal-dot] { background: rgb(161 161 170); }
[data-cal-dot][data-status="published"] { background: rgb(16 185 129); }
[data-cal-dot][data-status="failed"] { background: rgb(239 68 68); }
[data-cal-dot][data-status="scheduled"] { background: rgb(59 130 246); }

[data-cal-cell] { background: var(--panel); }
[data-cal-cell][data-blank] { background: var(--panel-2); }
[data-cal-cell][data-today] { background: rgb(239 246 255 / 0.6); }
html.dark [data-cal-cell][data-today] { background: rgb(30 58 138 / 0.2); }
[data-cal-day] { color: var(--muted); }
[data-cal-cell][data-today] [data-cal-day] { color: rgb(29 78 216); }
html.dark [data-cal-cell][data-today] [data-cal-day] { color: rgb(147 197 253); }

}

@layer tc-base {

[data-theme-option] { color: var(--muted); }
[data-theme-option][data-active] {
  background: var(--panel);
  color: var(--ink);
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
}
[data-bluesky-pill] { border-color: var(--line); color: var(--muted); }
[data-bluesky-pill][data-state="ready"] {
  border-color: rgb(167 243 208); background: rgb(236 253 245); color: rgb(4 120 87);
}
[data-bluesky-pill][data-state="setup"] {
  border-color: rgb(253 230 138); background: rgb(255 251 235); color: rgb(146 64 14);
}
html.dark [data-bluesky-pill][data-state="ready"] {
  border-color: rgb(6 78 59); background: rgb(6 78 59 / 0.3); color: rgb(110 231 183);
}
html.dark [data-bluesky-pill][data-state="setup"] {
  border-color: rgb(120 53 15); background: rgb(120 53 15 / 0.3); color: rgb(252 211 77);
}
[data-retention-pill] { border-color: var(--line); color: var(--muted); }
[data-retention-pill][data-state="on"] {
  border-color: rgb(254 202 202); background: rgb(254 242 242); color: rgb(185 28 28);
}
html.dark [data-retention-pill][data-state="on"] {
  border-color: rgb(127 29 29); background: rgb(127 29 29 / 0.3); color: rgb(252 165 165);
}
[data-retention-message] { color: var(--muted); }
[data-retention-message][data-tone="success"] { color: rgb(4 120 87); }
[data-retention-message][data-tone="error"] { color: rgb(185 28 28); }
html.dark [data-retention-message][data-tone="success"] { color: rgb(110 231 183); }
html.dark [data-retention-message][data-tone="error"] { color: rgb(252 165 165); }

}

@layer tc-base {

[data-provider-toggle] { border-color: var(--line); background: var(--panel-2); color: var(--muted); }
[data-provider-toggle]:not([disabled]):hover { background: #ffffff; }
[data-provider-toggle][data-selected] { border-color: #0a0a0a; background: var(--accent); color: var(--on-accent); }
[data-provider-toggle][disabled] { color: #a1a1aa; cursor: not-allowed; }

[data-provider-toggle] [data-provider-dot] { background: #d4d4d8; }
[data-provider-toggle][data-selected] [data-provider-dot] { background: #34d399; }
[data-provider-toggle][data-over] [data-provider-dot] { background: #ef4444; }

html.dark [data-provider-toggle]:not([disabled]):hover { background: #26262a; }
html.dark [data-provider-toggle][disabled] { color: #52525b; }

}

@layer tc-base {

html.marketing {
  font-family: var(--font-body);
  font-size: 17px;
  scroll-behavior: smooth;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/*
  Every heading on the front page is set in the display face. Done here rather
  than by adding a 'font-display' class to forty headings, and scoped to
  html.marketing so the workspace keeps its own type ramp.
*/
html.marketing :where(h1, h2, h3, h4) {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: -0.005em;
}

/*
  The markup labels kickers, indices and section eyebrows with 'font-mono'.
  Rather than rewrite every one of them, the class is redefined as what a
  newspaper puts in that slot: condensed gothic, small, letterspaced. The two
  places that want a genuine typewriter face ask for '.font-typewriter'.
*/
html.marketing .font-mono {
  font-family: var(--font-label);
  font-weight: 500;
  letter-spacing: 0.14em;
}

html.marketing .font-typewriter { font-family: var(--font-typewriter); letter-spacing: 0; }

html.marketing body { background-color: var(--bg); color: var(--ink); }

html.marketing ::selection { background: var(--accent); color: var(--on-accent); }

html.marketing :where(a, button):focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
  border-radius: 4px;
}

@keyframes reveal-up {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    html.marketing .reveal {
      opacity: 0;
      animation: reveal-up linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 28%;
    }
  }
}

/* Providers marquee — track holds two identical halves; -50% loops seamlessly. */
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
html.marketing .marquee-track { animation: marquee 32s linear infinite; }

@media (prefers-reduced-motion: reduce) {
  html.marketing { scroll-behavior: auto; }
  html.marketing .marquee-track { animation: none; }
}

}

@layer tc-base {

html.marketing :where(
  .rounded, .rounded-sm, .rounded-md, .rounded-lg, .rounded-xl,
  .rounded-2xl, .rounded-3xl, .rounded-full
) { border-radius: 0 !important; }

html.marketing :where(a, button):focus-visible { border-radius: 0; }

/*
  The tooth of the stock. Two offset dot grids at very low alpha read as
  halftone at 100% zoom and as texture when you lean in — enough to stop the
  background being a flat fill, cheap enough to be a gradient rather than an
  image request.
*/
html.marketing body {
  background-image:
    radial-gradient(circle at 1px 1px, rgb(23 19 15 / 0.045) 1px, transparent 0),
    radial-gradient(circle at 3px 4px, rgb(23 19 15 / 0.025) 1px, transparent 0);
  background-size: 6px 6px, 7px 7px;
  background-attachment: fixed;
}

/* The nameplate. Blackletter, tight, and never below 28px — see FACES. */
.masthead {
  font-family: var(--font-masthead);
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 0.94;
}

/*
  The rules. A newspaper separates blocks with printed lines of specific
  weights, not with shadows or panels: a hairline inside a story, a thick rule
  under the nameplate, a double rule around the dateline strip.
*/
.rule-thin { border-top: 1px solid var(--line); }
.rule-thick { border-top: 3px solid var(--ink); }
.rule-double {
  border-top: 1px solid var(--ink);
  box-shadow: 0 3px 0 -1px var(--ink);
}

/*
  The folio strip: volume, date, edition. All-caps condensed at small size,
  which is exactly what it is on a real front page.
*/
.folio {
  font-family: var(--font-label);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--body);
}

/* A kicker sits above a headline and names the section. */
.kicker {
  font-family: var(--font-label);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: var(--accent);
}

/* The deck is the italic sub-headline under a lede. */
.deck {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  color: var(--body);
}

/* The byline rule: a hairline above a small-caps attribution line. */
.byline {
  font-family: var(--font-label);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--muted);
}

/*
  Drop cap on the lede.

  Deliberately the float implementation and NOT 'initial-letter'. The latter is
  the typographically correct property, but inside a multi-column container
  Chrome reserves a line box the full height of the sunk letter and then leaves
  it empty - the lede rendered with roughly 900px of blank between its first and
  second lines. The float sinks the same three lines with no such interaction.
*/
.dropcap::first-letter {
  font-family: var(--font-display);
  font-weight: 700;
  float: left;
  font-size: 3.4em;
  line-height: 0.82;
  padding: 0.06em 0.12em 0 0;
  color: var(--ink);
}

/*
  Text columns with a printed gutter rule between them, the way a broadsheet
  sets running copy. Single column below 'md' — two 40-character columns on a
  phone would be unreadable.
*/
.columns-print { column-gap: 2.25rem; column-rule: 1px solid var(--line); }
@media (min-width: 768px) { .columns-print { column-count: 2; } }
@media (min-width: 1280px) { .columns-print-3 { column-count: 3; } }
.columns-print > :first-child { margin-top: 0; }

/*
  Ink-block button: solid, square, letterspaced caps. The hover state lifts the
  ink slightly rather than changing hue, because the palette has exactly one
  chromatic value and it is spoken for.
*/
.ink-button {
  font-family: var(--font-label);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  background: var(--ink);
  color: var(--bg);
  border: 1px solid var(--ink);
  transition: background-color 150ms ease, color 150ms ease;
}
.ink-button:hover { background: var(--accent); border-color: var(--accent); color: var(--on-accent); }

.ink-button--ghost { background: transparent; color: var(--ink); }
.ink-button--ghost:hover { background: var(--ink); color: var(--bg); border-color: var(--ink); }

/*
  Links inside running copy get the underline a printed paper cannot have but a
  reader now expects.

  Restricted to links inside a paragraph or list item. A bare '.copy a' scores
  (0,2,1) and so beat '.ink-button' (0,1,0) on specificity — which painted the
  hero's primary button ink-on-ink and underlined its label. Buttons live in
  their own wrapper rather than in running text, so this bound excludes them by
  structure rather than by an :not() list that would need maintaining.
*/
html.marketing .copy :is(p, li) a { color: var(--ink); text-decoration: underline; text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
html.marketing .copy :is(p, li) a:hover { color: var(--accent); }

}

@layer tc-base {

html.marketing .menu-item { position: static; }

html.marketing .menu-panel {
  position: absolute;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition:
    opacity 0.18s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.18s cubic-bezier(0.16, 1, 0.3, 1),
    visibility 0s linear 0.18s;
}

html.marketing .menu-item:hover .menu-panel,
html.marketing .menu-item:focus-within .menu-panel {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition-delay: 0s;
}

html.marketing .menu-chevron {
  transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1);
}

html.marketing .menu-item:hover .menu-chevron,
html.marketing .menu-item:focus-within .menu-chevron {
  transform: rotate(180deg);
}

@media (prefers-reduced-motion: reduce) {
  html.marketing .menu-panel,
  html.marketing .menu-chevron {
    transition: none;
    transform: none;
  }
}

}

.i-hugeicons-edit-02 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M14.074 3.885c.745-.807 1.117-1.21 1.513-1.446a3.1 3.1 0 0 1 3.103-.047c.403.224.787.616 1.555 1.4c.768.785 1.152 1.178 1.37 1.589a3.29 3.29 0 0 1-.045 3.17c-.23.404-.625.785-1.416 1.546l-9.403 9.057c-1.498 1.443-2.247 2.164-3.183 2.53s-1.965.338-4.023.285l-.28-.008c-.626-.016-.94-.024-1.121-.231c-.183-.207-.158-.526-.108-1.164l.027-.346c.14-1.796.21-2.694.56-3.502s.956-1.463 2.166-2.774zM13 4l7 7'/%3E%3Cpath stroke-linecap='round' d='M14 22h8'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M14.074 3.885c.745-.807 1.117-1.21 1.513-1.446a3.1 3.1 0 0 1 3.103-.047c.403.224.787.616 1.555 1.4c.768.785 1.152 1.178 1.37 1.589a3.29 3.29 0 0 1-.045 3.17c-.23.404-.625.785-1.416 1.546l-9.403 9.057c-1.498 1.443-2.247 2.164-3.183 2.53s-1.965.338-4.023.285l-.28-.008c-.626-.016-.94-.024-1.121-.231c-.183-.207-.158-.526-.108-1.164l.027-.346c.14-1.796.21-2.694.56-3.502s.956-1.463 2.166-2.774zM13 4l7 7'/%3E%3Cpath stroke-linecap='round' d='M14 22h8'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-calendar-03 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M16 2v4M8 2v4m5-2h-2C7.229 4 5.343 4 4.172 5.172S3 8.229 3 12v2c0 3.771 0 5.657 1.172 6.828S7.229 22 11 22h2c3.771 0 5.657 0 6.828-1.172S21 17.771 21 14v-2c0-3.771 0-5.657-1.172-6.828S16.771 4 13 4M3 10h18'/%3E%3Cpath d='M12.126 14H12m.125 4H12m-4.376-4H7.5m.125 4H7.5m9.125-4H16.5m-4.25 0a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0m0 4a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0m-4.5-4a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0m0 4a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0m9-4a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M16 2v4M8 2v4m5-2h-2C7.229 4 5.343 4 4.172 5.172S3 8.229 3 12v2c0 3.771 0 5.657 1.172 6.828S7.229 22 11 22h2c3.771 0 5.657 0 6.828-1.172S21 17.771 21 14v-2c0-3.771 0-5.657-1.172-6.828S16.771 4 13 4M3 10h18'/%3E%3Cpath d='M12.126 14H12m.125 4H12m-4.376-4H7.5m.125 4H7.5m9.125-4H16.5m-4.25 0a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0m0 4a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0m-4.5-4a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0m0 4a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0m9-4a.25.25 0 1 1-.5 0a.25.25 0 0 1 .5 0'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-news {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M18 15V9c0-2.828 0-4.243-.879-5.121C16.243 3 14.828 3 12 3H8c-2.828 0-4.243 0-5.121.879C2 4.757 2 6.172 2 9v6c0 2.828 0 4.243.879 5.121C3.757 21 5.172 21 8 21h12M6 8h8m-8 4h8m-8 4h4'/%3E%3Cpath d='M18 8h1c1.414 0 2.121 0 2.56.44c.44.439.44 1.146.44 2.56v8a2 2 0 1 1-4 0z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M18 15V9c0-2.828 0-4.243-.879-5.121C16.243 3 14.828 3 12 3H8c-2.828 0-4.243 0-5.121.879C2 4.757 2 6.172 2 9v6c0 2.828 0 4.243.879 5.121C3.757 21 5.172 21 8 21h12M6 8h8m-8 4h8m-8 4h4'/%3E%3Cpath d='M18 8h1c1.414 0 2.121 0 2.56.44c.44.439.44 1.146.44 2.56v8a2 2 0 1 1-4 0z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-chart-line-data-01 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-width='1.5'%3E%3Cpath d='M21 21H10c-3.3 0-4.95 0-5.975-1.025S3 17.3 3 14V3'/%3E%3Cpath stroke-linejoin='round' d='M5 20c.44-3.156 2.676-11.236 5.428-11.236c1.902 0 2.395 3.871 4.258 3.871C17.893 12.635 17.428 4 21 4'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-width='1.5'%3E%3Cpath d='M21 21H10c-3.3 0-4.95 0-5.975-1.025S3 17.3 3 14V3'/%3E%3Cpath stroke-linejoin='round' d='M5 20c.44-3.156 2.676-11.236 5.428-11.236c1.902 0 2.395 3.871 4.258 3.871C17.893 12.635 17.428 4 21 4'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-flowchart-01 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M14.028 13.375c.648-.648.972-.972.972-1.375s-.324-.727-.972-1.375l-.653-.653C12.727 9.324 12.403 9 12 9s-.727.324-1.375.972l-.653.653C9.324 11.273 9 11.597 9 12s.324.727.972 1.375l.653.653c.648.648.972.972 1.375.972s.727-.324 1.375-.972zM8 4c0-1.655.345-2 2-2h4c1.655 0 2 .345 2 2s-.345 2-2 2h-4c-1.655 0-2-.345-2-2Zm0 16c0-1.655.345-2 2-2h4c1.655 0 2 .345 2 2s-.345 2-2 2h-4c-1.655 0-2-.345-2-2Z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M8.5 12H8c-1.886 0-2.828 0-3.414-.586S4 9.886 4 8s0-2.828.586-3.414S6.114 4 8 4m7.5 8h.5c1.886 0 2.828 0 3.414.586S20 14.114 20 16s0 2.828-.586 3.414S17.886 20 16 20M12 8.5V6m0 9.5V18'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M14.028 13.375c.648-.648.972-.972.972-1.375s-.324-.727-.972-1.375l-.653-.653C12.727 9.324 12.403 9 12 9s-.727.324-1.375.972l-.653.653C9.324 11.273 9 11.597 9 12s.324.727.972 1.375l.653.653c.648.648.972.972 1.375.972s.727-.324 1.375-.972zM8 4c0-1.655.345-2 2-2h4c1.655 0 2 .345 2 2s-.345 2-2 2h-4c-1.655 0-2-.345-2-2Zm0 16c0-1.655.345-2 2-2h4c1.655 0 2 .345 2 2s-.345 2-2 2h-4c-1.655 0-2-.345-2-2Z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M8.5 12H8c-1.886 0-2.828 0-3.414-.586S4 9.886 4 8s0-2.828.586-3.414S6.114 4 8 4m7.5 8h.5c1.886 0 2.828 0 3.414.586S20 14.114 20 16s0 2.828-.586 3.414S17.886 20 16 20M12 8.5V6m0 9.5V18'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-radar-02 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10s10-4.477 10-10Z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M18 12a6 6 0 1 1-3.378-5.398c.713.346 1.07.52 1.154 1.028c.086.508-.259.853-.948 1.542L12 12'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10s10-4.477 10-10Z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M18 12a6 6 0 1 1-3.378-5.398c.713.346 1.07.52 1.154 1.028c.086.508-.259.853-.948 1.542L12 12'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-message-01 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' d='M8.5 14.5h7m-7-5H12'/%3E%3Cpath d='M14.17 20.89c4.184-.277 7.516-3.657 7.79-7.9c.053-.83.053-1.69 0-2.52c-.274-4.242-3.606-7.62-7.79-7.899a33 33 0 0 0-4.34 0c-4.184.278-7.516 3.657-7.79 7.9a20 20 0 0 0 0 2.52c.1 1.545.783 2.976 1.588 4.184c.467.845.159 1.9-.328 2.823c-.35.665-.526.997-.385 1.237c.14.24.455.248 1.084.263c1.245.03 2.084-.322 2.75-.813c.377-.279.566-.418.696-.434s.387.09.899.3c.46.19.995.307 1.485.34c1.425.094 2.914.094 4.342 0Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' d='M8.5 14.5h7m-7-5H12'/%3E%3Cpath d='M14.17 20.89c4.184-.277 7.516-3.657 7.79-7.9c.053-.83.053-1.69 0-2.52c-.274-4.242-3.606-7.62-7.79-7.899a33 33 0 0 0-4.34 0c-4.184.278-7.516 3.657-7.79 7.9a20 20 0 0 0 0 2.52c.1 1.545.783 2.976 1.588 4.184c.467.845.159 1.9-.328 2.823c-.35.665-.526.997-.385 1.237c.14.24.455.248 1.084.263c1.245.03 2.084-.322 2.75-.813c.377-.279.566-.418.696-.434s.387.09.899.3c.46.19.995.307 1.485.34c1.425.094 2.914.094 4.342 0Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-compass {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='13' r='9' stroke-linecap='round'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 3.5V2m-2 0h4'/%3E%3Cpath d='M14.773 10.257c.733.727-.44 6.636-1.644 6.74c-1.01.088-1.325-1.904-1.538-2.536c-.21-.623-.443-.847-1.061-1.052c-1.57-.519-2.355-.779-2.51-1.19c-.412-1.089 5.816-2.89 6.753-1.962Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='13' r='9' stroke-linecap='round'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 3.5V2m-2 0h4'/%3E%3Cpath d='M14.773 10.257c.733.727-.44 6.636-1.644 6.74c-1.01.088-1.325-1.904-1.538-2.536c-.21-.623-.443-.847-1.061-1.052c-1.57-.519-2.355-.779-2.51-1.19c-.412-1.089 5.816-2.89 6.753-1.962Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-user-multiple {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M16 21c-.233-2.931-2.658-5.252-5.691-5.448L9.5 15.5q-.432.012-.812.03C5.681 15.672 3.231 18.097 3 21m9.75-11.25a3.25 3.25 0 1 1-6.5 0a3.25 3.25 0 0 1 6.5 0M21 17.501c-.23-2.87-2.546-5.226-5.5-5.505M15.988 9A3.25 3.25 0 0 0 17.5 6.25C17.5 4.455 16.05 3 14.26 3c-.879 0-1.676.351-2.26.921'/%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M16 21c-.233-2.931-2.658-5.252-5.691-5.448L9.5 15.5q-.432.012-.812.03C5.681 15.672 3.231 18.097 3 21m9.75-11.25a3.25 3.25 0 1 1-6.5 0a3.25 3.25 0 0 1 6.5 0M21 17.501c-.23-2.87-2.546-5.226-5.5-5.505M15.988 9A3.25 3.25 0 0 0 17.5 6.25C17.5 4.455 16.05 3 14.26 3c-.879 0-1.676.351-2.26.921'/%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-quill-write-02 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M10.55 3c-3.852.007-5.87.102-7.159 1.39C2 5.783 2 8.022 2 12.5s0 6.717 1.391 8.109C4.783 22 7.021 22 11.501 22c4.478 0 6.717 0 8.108-1.391c1.29-1.29 1.384-3.307 1.391-7.16'/%3E%3Cpath d='M11.056 13C10.332 3.866 16.802 1.276 21.98 2.164c.209 3.027-1.273 4.16-4.093 4.684c.545.57 1.507 1.286 1.403 2.18c-.074.638-.506.95-1.372 1.576c-1.896 1.37-4.093 2.234-6.863 2.396'/%3E%3Cpath d='M9 17c2-5.5 3.96-7.364 6-9'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M10.55 3c-3.852.007-5.87.102-7.159 1.39C2 5.783 2 8.022 2 12.5s0 6.717 1.391 8.109C4.783 22 7.021 22 11.501 22c4.478 0 6.717 0 8.108-1.391c1.29-1.29 1.384-3.307 1.391-7.16'/%3E%3Cpath d='M11.056 13C10.332 3.866 16.802 1.276 21.98 2.164c.209 3.027-1.273 4.16-4.093 4.684c.545.57 1.507 1.286 1.403 2.18c-.074.638-.506.95-1.372 1.576c-1.896 1.37-4.093 2.234-6.863 2.396'/%3E%3Cpath d='M9 17c2-5.5 3.96-7.364 6-9'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-settings-02 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M15.5 12a3.5 3.5 0 1 1-7 0a3.5 3.5 0 0 1 7 0Z'/%3E%3Cpath stroke-linecap='round' d='M21.011 14.097c.522-.141.783-.212.886-.346c.103-.135.103-.351.103-.784v-1.934c0-.433 0-.65-.103-.784s-.364-.205-.886-.345c-1.95-.526-3.171-2.565-2.668-4.503c.139-.533.208-.8.142-.956s-.256-.264-.635-.479l-1.725-.98c-.372-.21-.558-.316-.725-.294s-.356.21-.733.587c-1.459 1.455-3.873 1.455-5.333 0c-.377-.376-.565-.564-.732-.587c-.167-.022-.353.083-.725.295l-1.725.979c-.38.215-.57.323-.635.48c-.066.155.003.422.141.955c.503 1.938-.718 3.977-2.669 4.503c-.522.14-.783.21-.886.345S2 10.6 2 11.033v1.934c0 .433 0 .65.103.784s.364.205.886.346c1.95.526 3.171 2.565 2.668 4.502c-.139.533-.208.8-.142.956s.256.264.635.48l1.725.978c.372.212.558.317.725.295s.356-.21.733-.587c1.46-1.457 3.876-1.457 5.336 0c.377.376.565.564.732.587c.167.022.353-.083.726-.295l1.724-.979c.38-.215.57-.323.635-.48s-.003-.422-.141-.955c-.504-1.937.716-3.976 2.666-4.502Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M15.5 12a3.5 3.5 0 1 1-7 0a3.5 3.5 0 0 1 7 0Z'/%3E%3Cpath stroke-linecap='round' d='M21.011 14.097c.522-.141.783-.212.886-.346c.103-.135.103-.351.103-.784v-1.934c0-.433 0-.65-.103-.784s-.364-.205-.886-.345c-1.95-.526-3.171-2.565-2.668-4.503c.139-.533.208-.8.142-.956s-.256-.264-.635-.479l-1.725-.98c-.372-.21-.558-.316-.725-.294s-.356.21-.733.587c-1.459 1.455-3.873 1.455-5.333 0c-.377-.376-.565-.564-.732-.587c-.167-.022-.353.083-.725.295l-1.725.979c-.38.215-.57.323-.635.48c-.066.155.003.422.141.955c.503 1.938-.718 3.977-2.669 4.503c-.522.14-.783.21-.886.345S2 10.6 2 11.033v1.934c0 .433 0 .65.103.784s.364.205.886.346c1.95.526 3.171 2.565 2.668 4.502c-.139.533-.208.8-.142.956s.256.264.635.48l1.725.978c.372.212.558.317.725.295s.356-.21.733-.587c1.46-1.457 3.876-1.457 5.336 0c.377.376.565.564.732.587c.167.022.353-.083.726-.295l1.724-.979c.38-.215.57-.323.635-.48s-.003-.422-.141-.955c-.504-1.937.716-3.976 2.666-4.502Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-sidebar-left {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M2 12c0-3.69 0-5.534.814-6.841a4.8 4.8 0 0 1 1.105-1.243C5.08 3 6.72 3 10 3h4c3.28 0 4.919 0 6.081.916c.43.338.804.759 1.105 1.243C22 6.466 22 8.31 22 12s0 5.534-.814 6.841a4.8 4.8 0 0 1-1.105 1.243C18.92 21 17.28 21 14 21h-4c-3.28 0-4.919 0-6.081-.916a4.8 4.8 0 0 1-1.105-1.243C2 17.534 2 15.69 2 12Z'/%3E%3Cpath stroke-linejoin='round' d='M9.5 3v18'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M5 7h1m-1 3h1'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M2 12c0-3.69 0-5.534.814-6.841a4.8 4.8 0 0 1 1.105-1.243C5.08 3 6.72 3 10 3h4c3.28 0 4.919 0 6.081.916c.43.338.804.759 1.105 1.243C22 6.466 22 8.31 22 12s0 5.534-.814 6.841a4.8 4.8 0 0 1-1.105 1.243C18.92 21 17.28 21 14 21h-4c-3.28 0-4.919 0-6.081-.916a4.8 4.8 0 0 1-1.105-1.243C2 17.534 2 15.69 2 12Z'/%3E%3Cpath stroke-linejoin='round' d='M9.5 3v18'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M5 7h1m-1 3h1'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-arrow-left-02 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M5.5 12.002H19m-8 6s-6-4.419-6-6s6-6 6-6'/%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M5.5 12.002H19m-8 6s-6-4.419-6-6s6-6 6-6'/%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-arrow-right-02 {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M18.5 12H5m8 6s6-4.419 6-6s-6-6-6-6'/%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M18.5 12H5m8 6s6-4.419 6-6s-6-6-6-6'/%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.i-hugeicons-sidebar-right {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M2 12c0-3.69 0-5.534.814-6.841a4.8 4.8 0 0 1 1.105-1.243C5.08 3 6.72 3 10 3h4c3.28 0 4.919 0 6.081.916c.43.338.804.759 1.105 1.243C22 6.466 22 8.31 22 12s0 5.534-.814 6.841a4.8 4.8 0 0 1-1.105 1.243C18.92 21 17.28 21 14 21h-4c-3.28 0-4.919 0-6.081-.916a4.8 4.8 0 0 1-1.105-1.243C2 17.534 2 15.69 2 12Z'/%3E%3Cpath stroke-linejoin='round' d='M14.5 3v18'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M18 7h1m-1 3h1'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M2 12c0-3.69 0-5.534.814-6.841a4.8 4.8 0 0 1 1.105-1.243C5.08 3 6.72 3 10 3h4c3.28 0 4.919 0 6.081.916c.43.338.804.759 1.105 1.243C22 6.466 22 8.31 22 12s0 5.534-.814 6.841a4.8 4.8 0 0 1-1.105 1.243C18.92 21 17.28 21 14 21h-4c-3.28 0-4.919 0-6.081-.916a4.8 4.8 0 0 1-1.105-1.243C2 17.534 2 15.69 2 12Z'/%3E%3Cpath stroke-linejoin='round' d='M14.5 3v18'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M18 7h1m-1 3h1'/%3E%3C/g%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  vertical-align: -0.125em;
}

.grid {
  display: grid;
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-rows-\[auto_minmax\(0\,1fr\)\] {
  grid-template-rows: auto minmax(0,1fr);
}

.min-h-screen {
  min-height: 100vh;
}

.min-w-80 {
  min-width: 20rem;
}

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.font-sans {
  font-family: ui-sans-serif, system-ui, sans-serif;
}

.text-ink {
  color: var(--ink);
}

.bg-bg {
  background-color: var(--bg);
}

.duration-200 {
  transition-duration: 200ms;
}

.ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.contents {
  display: contents;
}

.flex {
  display: flex;
}

.overflow-x-auto {
  overflow-x: auto;
}

.sticky {
  position: sticky;
}

.z-50 {
  z-index: 50;
}

.gap-1\.5 {
  gap: 0.375rem;
}

.items-center {
  align-items: center;
}

.border-b {
  border-bottom-width: 1px;
}

.border-line {
  border-color: var(--line);
}

.place-items-center {
  place-items: center;
}

.shrink-0 {
  flex-shrink: 0;
}

.h-8 {
  height: 2rem;
}

.font-bold {
  font-weight: 700;
}

.text-\[13px\] {
  font-size: 13px;
}

.tracking-widest {
  letter-spacing: 0.1em;
}

.border-ink {
  border-color: var(--ink);
}

.bg-white {
  background-color: #fff;
}

.shadow-sm {
  --tc-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tc-shadow-colored: 0 1px 3px 0 var(--tc-shadow-color), 0 1px 2px -1px var(--tc-shadow-color);
  box-shadow: var(--tc-ring-offset-shadow, 0 0 #0000), var(--tc-ring-shadow, 0 0 #0000), var(--tc-shadow);
}

.inline-flex {
  display: inline-flex;
}

.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.font-medium {
  font-weight: 500;
}

.whitespace-nowrap {
  white-space: nowrap;
}

.rounded-full {
  border-radius: 9999px;
}

.transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.hover\:bg-white\/60:hover {
  background-color: rgb(255 255 255 / 0.6);
}

.text-muted {
  color: var(--muted);
}

.h-4 {
  height: 1rem;
}

.w-4 {
  width: 1rem;
}

.hidden {
  display: none;
}

.overflow-hidden {
  overflow: hidden;
}

.relative {
  position: relative;
}

.flex-col {
  flex-direction: column;
}

.h-screen {
  height: 100vh;
}

.min-w-0 {
  min-width: 0;
}

.bg-\[\#f3f3f1\]\/48 {
  background-color: rgb(243 243 241 / 0.48);
}

.backdrop-blur-3xl {
  --tc-backdrop-blur: blur(64px);
  -webkit-backdrop-filter: var(--tc-backdrop-blur, ) var(--tc-backdrop-brightness, ) var(--tc-backdrop-contrast, ) var(--tc-backdrop-grayscale, ) var(--tc-backdrop-hue-rotate, ) var(--tc-backdrop-invert, ) var(--tc-backdrop-opacity, ) var(--tc-backdrop-saturate, ) var(--tc-backdrop-sepia, );
  backdrop-filter: var(--tc-backdrop-blur, ) var(--tc-backdrop-brightness, ) var(--tc-backdrop-contrast, ) var(--tc-backdrop-grayscale, ) var(--tc-backdrop-hue-rotate, ) var(--tc-backdrop-invert, ) var(--tc-backdrop-opacity, ) var(--tc-backdrop-saturate, ) var(--tc-backdrop-sepia, );
}

.backdrop-saturate-150 {
  --tc-backdrop-saturate: saturate(1.5);
  -webkit-backdrop-filter: var(--tc-backdrop-blur, ) var(--tc-backdrop-brightness, ) var(--tc-backdrop-contrast, ) var(--tc-backdrop-grayscale, ) var(--tc-backdrop-hue-rotate, ) var(--tc-backdrop-invert, ) var(--tc-backdrop-opacity, ) var(--tc-backdrop-saturate, ) var(--tc-backdrop-sepia, );
  backdrop-filter: var(--tc-backdrop-blur, ) var(--tc-backdrop-brightness, ) var(--tc-backdrop-contrast, ) var(--tc-backdrop-grayscale, ) var(--tc-backdrop-hue-rotate, ) var(--tc-backdrop-invert, ) var(--tc-backdrop-opacity, ) var(--tc-backdrop-saturate, ) var(--tc-backdrop-sepia, );
}

.absolute {
  position: absolute;
}

.inset-0 {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.bg-\[linear-gradient\(112deg\,rgba\(255\,255\,255\,0\.20\)_0\%\,rgba\(255\,255\,255\,0\.04\)_45\%\,rgba\(226\,226\,222\,0\.16\)_100\%\)\] {
  background-image: linear-gradient(112deg,rgba(255,255,255,0.20) 0%,rgba(255,255,255,0.04) 45%,rgba(226,226,222,0.16) 100%);
}

.pointer-events-none {
  pointer-events: none;
}

.z-20 {
  z-index: 20;
}

.min-h-7 {
  min-height: 1.75rem;
}

.justify-center {
  justify-content: center;
}

.w-8 {
  width: 2rem;
}

.hover\:text-zinc-900:hover {
  color: oklch(21% 0.006 285.885);
}

.bg-white\/60 {
  background-color: rgb(255 255 255 / 0.6);
}

.hover\:bg-white:hover {
  background-color: #fff;
}

.border {
  border-width: 1px;
}

.border-zinc-200\/70 {
  border-color: oklch(92% 0.004 286.32 / 0.7);
}

.rounded-xl {
  border-radius: 0.75rem;
}

.focus-visible\:outline-none:focus-visible {
  outline-style: none;
}

.focus-visible\:ring-2:focus-visible {
  --tc-ring-offset-shadow: var(--tc-ring-inset,) 0 0 0 var(--tc-ring-offset-width, 0px) var(--tc-ring-offset-color, #fff);
  --tc-ring-shadow: var(--tc-ring-inset,) 0 0 0 calc(2px + var(--tc-ring-offset-width, 0px)) var(--tc-ring-color, rgba(59, 130, 246, 0.5));
  box-shadow: var(--tc-ring-offset-shadow), var(--tc-ring-shadow), var(--tc-shadow, 0 0 #0000);
}

.focus-visible\:ring-zinc-400\/50:focus-visible {
  --tc-ring-color: oklch(70.5% 0.015 286.067 / 0.5);
}

.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.h-\[18px\] {
  height: 18px;
}

.w-\[18px\] {
  width: 18px;
}

.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.h-7 {
  height: 1.75rem;
}

.w-7 {
  width: 1.75rem;
}

.text-zinc-500\/80 {
  color: oklch(55.2% 0.016 285.938 / 0.8);
}

.hover\:bg-white\/35:hover {
  background-color: rgb(255 255 255 / 0.35);
}

.h-5 {
  height: 1.25rem;
}

.w-5 {
  width: 1.25rem;
}

.z-10 {
  z-index: 10;
}

.gap-3 {
  gap: 0.75rem;
}

.text-body {
  color: var(--body);
}

.rounded-2xl {
  border-radius: 1rem;
}

.focus-visible\:ring-zinc-500:focus-visible {
  --tc-ring-color: oklch(55.2% 0.016 285.938);
}

.h-9 {
  height: 2.25rem;
}

.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.font-semibold {
  font-weight: 600;
}

.text-\[15px\] {
  font-size: 15px;
}

.gap-1 {
  gap: 0.25rem;
}

.bg-\[\#e8e8e6\]\/90 {
  background-color: rgb(232 232 230 / 0.9);
}

.w-full {
  width: 100%;
}

.rounded-\[14px\] {
  border-radius: 14px;
}

.text-left {
  text-align: left;
}

.text-\[13\.5px\] {
  font-size: 13.5px;
}

.hover\:bg-white\/38:hover {
  background-color: rgb(255 255 255 / 0.38);
}

.focus-visible\:bg-white\/38:focus-visible {
  background-color: rgb(255 255 255 / 0.38);
}

.flex-1 {
  flex: 1 1 0%;
}

.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.min-w-5 {
  min-width: 1.25rem;
}

.text-\[11px\] {
  font-size: 11px;
}

.bg-white\/72 {
  background-color: rgb(255 255 255 / 0.72);
}

.fixed {
  position: fixed;
}

.z-\[90\] {
  z-index: 90;
}

.w-9 {
  width: 2.25rem;
}

.bg-white\/95 {
  background-color: rgb(255 255 255 / 0.95);
}

.border-zinc-200\/90 {
  border-color: oklch(92% 0.004 286.32 / 0.9);
}

.focus-visible\:ring-zinc-400\/60:focus-visible {
  --tc-ring-color: oklch(70.5% 0.015 286.067 / 0.6);
}

.shadow-\[0_8px_28px_rgba\(24\,31\,42\,0\.12\)\] {
  --tc-shadow: 0 8px 28px rgba(24,31,42,0.12);
  --tc-shadow-colored: 0 8px 28px var(--tc-shadow-color);
  box-shadow: var(--tc-ring-offset-shadow, 0 0 #0000), var(--tc-ring-shadow, 0 0 #0000), var(--tc-shadow);
}

.backdrop-blur-sm {
  --tc-backdrop-blur: blur(4px);
  -webkit-backdrop-filter: var(--tc-backdrop-blur, ) var(--tc-backdrop-brightness, ) var(--tc-backdrop-contrast, ) var(--tc-backdrop-grayscale, ) var(--tc-backdrop-hue-rotate, ) var(--tc-backdrop-invert, ) var(--tc-backdrop-opacity, ) var(--tc-backdrop-saturate, ) var(--tc-backdrop-sepia, );
  backdrop-filter: var(--tc-backdrop-blur, ) var(--tc-backdrop-brightness, ) var(--tc-backdrop-contrast, ) var(--tc-backdrop-grayscale, ) var(--tc-backdrop-hue-rotate, ) var(--tc-backdrop-invert, ) var(--tc-backdrop-opacity, ) var(--tc-backdrop-saturate, ) var(--tc-backdrop-sepia, );
}

.border-t {
  border-top-width: 1px;
}

.border-zinc-200\/80 {
  border-color: oklch(92% 0.004 286.32 / 0.8);
}

.p-3\.5 {
  padding: 0.875rem;
}

.gap-4 {
  gap: 1rem;
}

.items-stretch {
  align-items: stretch;
}

.justify-between {
  justify-content: space-between;
}

.min-h-11 {
  min-height: 2.75rem;
}

.tracking-wider {
  letter-spacing: 0.05em;
}

.uppercase {
  text-transform: uppercase;
}

.m-0 {
  margin: 0;
}

.text-\[22px\] {
  font-size: 22px;
}

.tracking-normal {
  letter-spacing: 0em;
}

.gap-2 {
  gap: 0.5rem;
}

.bg-panel {
  background-color: var(--panel);
}

.h-1\.5 {
  height: 0.375rem;
}

.w-1\.5 {
  width: 0.375rem;
}

.p-4 {
  padding: 1rem;
}

.block {
  display: block;
}

.text-\[10px\] {
  font-size: 10px;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.p-1 {
  padding: 0.25rem;
}

.bg-panel-2 {
  background-color: var(--panel-2);
}

.rounded-lg {
  border-radius: 0.5rem;
}

.text-red-700 {
  color: oklch(50.5% 0.213 27.518);
}

.bg-red-50 {
  background-color: oklch(97.1% 0.013 17.38);
}

.border-red-100 {
  border-color: oklch(93.6% 0.032 17.717);
}

.flex-wrap {
  flex-wrap: wrap;
}

.text-center {
  text-align: center;
}

.divide-line > :not([hidden]) ~ :not([hidden]) {
  border-color: var(--line);
}

.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tc-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tc-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tc-divide-y-reverse));
}

.p-3 {
  padding: 0.75rem;
}

.hover\:bg-red-50:hover {
  background-color: oklch(97.1% 0.013 17.38);
}

.border-red-200 {
  border-color: oklch(88.5% 0.062 18.334);
}

.content-start {
  align-content: flex-start;
}

.outline-none {
  outline-style: none;
}

.focus\:ring-2:focus {
  --tc-ring-offset-shadow: var(--tc-ring-inset,) 0 0 0 var(--tc-ring-offset-width, 0px) var(--tc-ring-offset-color, #fff);
  --tc-ring-shadow: var(--tc-ring-inset,) 0 0 0 calc(2px + var(--tc-ring-offset-width, 0px)) var(--tc-ring-color, rgba(59, 130, 246, 0.5));
  box-shadow: var(--tc-ring-offset-shadow), var(--tc-ring-shadow), var(--tc-shadow, 0 0 #0000);
}

.focus\:ring-zinc-400\/40:focus {
  --tc-ring-color: oklch(70.5% 0.015 286.067 / 0.4);
}

.text-on-accent {
  color: var(--on-accent);
}

.bg-accent {
  background-color: var(--accent);
}

.hover\:bg-neutral-800:hover {
  background-color: oklch(26.9% 0 0);
}

.disabled\:opacity-50:disabled {
  opacity: 0.5;
}

.text-amber-700 {
  color: oklch(55.5% 0.163 48.998);
}

.bg-amber-50 {
  background-color: oklch(98.7% 0.022 95.277);
}

.leading-5 {
  line-height: 1.25rem;
}

.whitespace-pre-line {
  white-space: pre-line;
}

.text-emerald-700 {
  color: oklch(50.8% 0.118 165.612);
}

.hover\:bg-emerald-50:hover {
  background-color: oklch(97.9% 0.021 166.113);
}

.border-emerald-200 {
  border-color: oklch(90.5% 0.093 164.15);
}

.min-h-40 {
  min-height: 10rem;
}

.font-mono {
  font-family: ui-monospace, monospace;
}

.resize-y {
  resize: vertical;
}

.p-0 {
  padding: 0;
}

.list-none {
  list-style-type: none;
}

.z-\[100\] {
  z-index: 100;
}

.flex-col-reverse {
  flex-direction: column-reverse;
}

.gap-2\.5 {
  gap: 0.625rem;
}

.max-w-\[22rem\] {
  max-width: 22rem;
}

.w-\[calc\(100\%-2rem\)\] {
  width: calc(100% - 2rem);
}

.bg-emerald-500 {
  background-color: oklch(69.6% 0.17 162.48);
}

.bg-zinc-300 {
  background-color: oklch(87.1% 0.006 286.286);
}

.bg-emerald-50 {
  background-color: oklch(97.9% 0.021 166.113);
}

.text-blue-700 {
  color: oklch(48.8% 0.243 264.376);
}

.bg-blue-50 {
  background-color: oklch(97% 0.014 254.604);
}

.opacity-0 {
  opacity: 0;
}

.rotate-180 {
  transform: rotate(180deg);
}

.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.px-1\.5 {
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}

.border-y-2 {
  border-top-width: 2px;
  border-bottom-width: 2px;
}

.py-1\.5 {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.gap-x-3 {
  column-gap: 0.75rem;
}

.gap-y-1 {
  row-gap: 0.25rem;
}

.py-0\.5 {
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.px-2\.5 {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}

.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.top-0 {
  top: 0;
}

.mr-1 {
  margin-right: 0.25rem;
}

.pb-5 {
  padding-bottom: 1.25rem;
}

.pt-\[68px\] {
  padding-top: 68px;
}

.right-5 {
  right: 1.25rem;
}

.top-3\.5 {
  top: 0.875rem;
}

.mb-5 {
  margin-bottom: 1.25rem;
}

.mt-auto {
  margin-top: auto;
}

.left-3\.5 {
  left: 0.875rem;
}

.mb-1\.5 {
  margin-bottom: 0.375rem;
}

.mb-0 {
  margin-bottom: 0;
}

.mt-1\.5 {
  margin-top: 0.375rem;
}

.mt-1 {
  margin-top: 0.25rem;
}

.bottom-6 {
  bottom: 1.5rem;
}

.right-6 {
  right: 1.5rem;
}

@media (min-width: 640px) {
.sm\:p-4 {
  padding: 1rem;
}

.sm\:grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sm\:right-6 {
  right: 1.5rem;
}
}

@media (min-width: 768px) {
.md\:flex-row {
  flex-direction: row;
}

.md\:items-center {
  align-items: center;
}
}

@media (min-width: 1024px) {
.lg\:overflow-hidden {
  overflow: hidden;
}

.lg\:grid-cols-\[var\(--ot-sidebar-width\,286px\)_minmax\(0\,1fr\)\] {
  grid-template-columns: var(--ot-sidebar-width,286px) minmax(0,1fr);
}

.lg\:grid-rows-1 {
  grid-template-rows: repeat(1, minmax(0, 1fr));
}

.lg\:h-screen {
  height: 100vh;
}

.lg\:hidden {
  display: none;
}

.lg\:flex {
  display: flex;
}

.lg\:overflow-y-auto {
  overflow-y: auto;
}

.lg\:border-l {
  border-left-width: 1px;
}

.lg\:shadow-\[-10px_0_36px_rgba\(24\,31\,42\,0\.08\)\] {
  --tc-shadow: -10px 0 36px rgba(24,31,42,0.08);
  --tc-shadow-colored: -10px 0 36px var(--tc-shadow-color);
  box-shadow: var(--tc-ring-offset-shadow, 0 0 #0000), var(--tc-ring-shadow, 0 0 #0000), var(--tc-shadow);
}

.lg\:rounded-tl-\[28px\] {
  border-top-left-radius: 28px;
}
}

@media (min-width: 1280px) {
.xl\:grid-cols-\[minmax\(0\,1fr\)_22rem\] {
  grid-template-columns: minmax(0,1fr) 22rem;
}
}