/*! @busy-office/ui — generated; reasoning lives in src/css, not here. */

@layer bo-reset, bo-tokens, bo-primitives, bo-components, bo-utilities;
@layer bo-tokens {
  :root {
  --bo-palette-slate-50: #f8fafc;
  --bo-palette-slate-100: #f1f5f9;
  --bo-palette-slate-200: #e2e8f0;
  --bo-palette-slate-300: #cbd5e1;
  --bo-palette-slate-400: #94a3b8;
  --bo-palette-slate-500: #64748b;
  --bo-palette-slate-600: #475569;
  --bo-palette-slate-700: #334155;
  --bo-palette-slate-800: #1e293b;
  --bo-palette-slate-900: #0f172a;
  --bo-palette-slate-950: #020617;
  --bo-palette-gray-50: #f9fafb;
  --bo-palette-gray-100: #f3f4f6;
  --bo-palette-gray-200: #e5e7eb;
  --bo-palette-gray-300: #d1d5db;
  --bo-palette-gray-400: #9ca3af;
  --bo-palette-gray-500: #6b7280;
  --bo-palette-gray-600: #4b5563;
  --bo-palette-gray-700: #374151;
  --bo-palette-gray-800: #1f2937;
  --bo-palette-gray-900: #111827;
  --bo-palette-gray-950: #030712;
  --bo-palette-red-50: #fef2f2;
  --bo-palette-red-100: #fee2e2;
  --bo-palette-red-200: #fecaca;
  --bo-palette-red-300: #fca5a5;
  --bo-palette-red-400: #f87171;
  --bo-palette-red-500: #ef4444;
  --bo-palette-red-600: #dc2626;
  --bo-palette-red-700: #b91c1c;
  --bo-palette-red-800: #991b1b;
  --bo-palette-red-900: #7f1d1d;
  --bo-palette-red-950: #450a0a;
  --bo-palette-amber-50: #fffbeb;
  --bo-palette-amber-100: #fef3c7;
  --bo-palette-amber-200: #fde68a;
  --bo-palette-amber-300: #fcd34d;
  --bo-palette-amber-400: #fbbf24;
  --bo-palette-amber-500: #f59e0b;
  --bo-palette-amber-600: #d97706;
  --bo-palette-amber-700: #b45309;
  --bo-palette-amber-800: #92400e;
  --bo-palette-amber-900: #78350f;
  --bo-palette-amber-950: #451a03;
  --bo-palette-green-50: #f0fdf4;
  --bo-palette-green-100: #dcfce7;
  --bo-palette-green-200: #bbf7d0;
  --bo-palette-green-300: #86efac;
  --bo-palette-green-400: #4ade80;
  --bo-palette-green-500: #22c55e;
  --bo-palette-green-600: #16a34a;
  --bo-palette-green-700: #15803d;
  --bo-palette-green-800: #166534;
  --bo-palette-green-900: #14532d;
  --bo-palette-green-950: #052e16;
  --bo-palette-teal-50: #f0fdfa;
  --bo-palette-teal-100: #ccfbf1;
  --bo-palette-teal-200: #99f6e4;
  --bo-palette-teal-300: #5eead4;
  --bo-palette-teal-400: #2dd4bf;
  --bo-palette-teal-500: #14b8a6;
  --bo-palette-teal-600: #0d9488;
  --bo-palette-teal-700: #0f766e;
  --bo-palette-teal-800: #115e59;
  --bo-palette-teal-900: #134e4a;
  --bo-palette-teal-950: #042f2e;
  --bo-palette-blue-50: #eff6ff;
  --bo-palette-blue-100: #dbeafe;
  --bo-palette-blue-200: #bfdbfe;
  --bo-palette-blue-300: #93c5fd;
  --bo-palette-blue-400: #60a5fa;
  --bo-palette-blue-500: #3b82f6;
  --bo-palette-blue-600: #2563eb;
  --bo-palette-blue-700: #1d4ed8;
  --bo-palette-blue-800: #1e40af;
  --bo-palette-blue-900: #1e3a8a;
  --bo-palette-blue-950: #172554;
  --bo-palette-indigo-50: #eef2ff;
  --bo-palette-indigo-100: #e0e7ff;
  --bo-palette-indigo-200: #c7d2fe;
  --bo-palette-indigo-300: #a5b4fc;
  --bo-palette-indigo-400: #818cf8;
  --bo-palette-indigo-500: #6366f1;
  --bo-palette-indigo-600: #4f46e5;
  --bo-palette-indigo-700: #4338ca;
  --bo-palette-indigo-800: #3730a3;
  --bo-palette-indigo-900: #312e81;
  --bo-palette-indigo-950: #1e1b4b;
  --bo-palette-violet-50: #f5f3ff;
  --bo-palette-violet-100: #ede9fe;
  --bo-palette-violet-200: #ddd6fe;
  --bo-palette-violet-300: #c4b5fd;
  --bo-palette-violet-400: #a78bfa;
  --bo-palette-violet-500: #8b5cf6;
  --bo-palette-violet-600: #7c3aed;
  --bo-palette-violet-700: #6d28d9;
  --bo-palette-violet-800: #5b21b6;
  --bo-palette-violet-900: #4c1d95;
  --bo-palette-violet-950: #2e1065;
  }
}
@layer bo-tokens {
  :root {
    --bo-color-bg-canvas: var(--bo-palette-gray-50);
    --bo-color-bg-surface: #ffffff;
    --bo-color-bg-surface-raised: #ffffff;
    --bo-color-bg-muted: var(--bo-palette-gray-100);
    --bo-color-bg-selected: var(--bo-palette-teal-50);
    --bo-color-bg-hover: var(--bo-palette-gray-100);
    --bo-color-skeleton-highlight: #ffffff;
    --bo-color-border-default: var(--bo-palette-gray-200);
    --bo-color-border-strong: var(--bo-palette-gray-300);
    --bo-color-border-control: var(--bo-palette-gray-500);
    --bo-color-text-primary: var(--bo-palette-gray-900);
    --bo-color-text-secondary: var(--bo-palette-gray-700);
    --bo-color-text-muted: var(--bo-palette-gray-600);
    --bo-color-text-disabled: var(--bo-palette-gray-400);
    --bo-color-text-inverse: #ffffff;
    --bo-color-accent: var(--bo-palette-teal-700);
    --bo-color-accent-strong: var(--bo-palette-teal-800);
    --bo-color-accent-subtle: var(--bo-palette-teal-50);
    --bo-color-danger: var(--bo-palette-red-600);
    --bo-color-danger-strong: var(--bo-palette-red-700);
    --bo-color-danger-subtle: var(--bo-palette-red-50);
    --bo-color-warning: var(--bo-palette-amber-500);
    --bo-color-warning-strong: var(--bo-palette-amber-700);
    --bo-color-warning-subtle: var(--bo-palette-amber-50);
    --bo-color-success: var(--bo-palette-green-500);
    --bo-color-success-strong: var(--bo-palette-green-700);
    --bo-color-success-subtle: var(--bo-palette-green-50);
    --bo-color-accent-solid: var(--bo-palette-teal-700);
    --bo-color-danger-solid: var(--bo-palette-red-600);
    --bo-color-accent-text: var(--bo-palette-teal-800);
    --bo-color-danger-text: var(--bo-palette-red-700);
    --bo-color-warning-text: var(--bo-palette-amber-700);
    --bo-color-success-text: var(--bo-palette-green-700);
    --bo-color-focus-ring: var(--bo-palette-teal-600);
    --bo-color-scrim: rgb(0 0 0 / 0.4);
    --bo-state-hover-overlay: rgb(0 0 0 / 0.04);
    --bo-state-active-overlay: rgb(0 0 0 / 0.08);
    --bo-state-disabled-opacity: 0.5;
    --bo-state-error-color: var(--bo-color-danger);
    --bo-state-error-bg: var(--bo-color-danger-subtle);
    color-scheme: light;
  }
  [data-theme="light"] {
    color-scheme: light;
  }
  [data-theme="dark"] {
    color-scheme: dark;
    --bo-color-bg-canvas: #0f1115;
    --bo-color-bg-surface: #1a1d23;
    --bo-color-bg-surface-raised: #22262e;
    --bo-color-bg-muted: #262a33;
    --bo-color-bg-selected: #0b3b37;
    --bo-color-border-default: #2e333d;
    --bo-color-border-strong: #3d434f;
    --bo-color-border-control: var(--bo-palette-gray-400);
    --bo-color-text-primary: var(--bo-palette-gray-50);
    --bo-color-text-secondary: var(--bo-palette-gray-300);
    --bo-color-text-muted: var(--bo-palette-gray-400);
    --bo-color-text-disabled: var(--bo-palette-gray-600);
    --bo-color-bg-hover: #262a33;
    --bo-color-skeleton-highlight: #343a47;
    --bo-color-accent: var(--bo-palette-teal-400);
    --bo-color-accent-subtle: #0b3b37;
    --bo-color-danger: var(--bo-palette-red-400);
    --bo-color-danger-subtle: #3a1d1d;
    --bo-color-warning-subtle: #3a2e14;
    --bo-color-success-subtle: #14301d;
    --bo-color-accent-text: var(--bo-palette-teal-300);
    --bo-color-danger-text: var(--bo-palette-red-300);
    --bo-color-warning-text: var(--bo-palette-amber-300);
    --bo-color-warning-strong: var(--bo-palette-amber-500);
    --bo-color-success-text: var(--bo-palette-green-300);
    --bo-state-hover-overlay: rgb(255 255 255 / 0.06);
    --bo-state-active-overlay: rgb(255 255 255 / 0.1);
  }
}
@layer bo-tokens {
  :root {
    --bo-space-0: 0;
    --bo-space-1: 0.25rem;
    --bo-space-2: 0.5rem;
    --bo-space-3: 0.75rem;
    --bo-space-4: 1rem;
    --bo-space-5: 1.25rem;
    --bo-space-6: 1.5rem;
    --bo-space-8: 2rem;
    --bo-space-10: 2.5rem;
    --bo-space-12: 3rem;
  }
}
@layer bo-tokens {
  :root {
    --bo-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --bo-font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;
    --bo-font-size-xs: 0.75rem;
    --bo-font-size-sm: 0.8125rem;
    --bo-font-size-base: 0.875rem;
    --bo-font-size-md: 1rem;
    --bo-font-size-lg: 1.125rem;
    --bo-font-size-xl: 1.5rem;
    --bo-font-size-mono-inline: 0.9em;
    --bo-font-weight-normal: 400;
    --bo-font-weight-medium: 500;
    --bo-font-weight-semibold: 600;
    --bo-line-height-tight: 1.25;
    --bo-line-height-normal: 1.5;
  }
}
@layer bo-tokens {
  :root {
    --bo-radius-sm: 0.25rem;
    --bo-radius-md: 0.375rem;
    --bo-radius-lg: 0.5rem;
    --bo-radius-full: 9999px;
    --bo-border-width: 1px;
    --bo-focus-ring-width: 2px;
    --bo-focus-ring-offset: 2px;
  }
}
@layer bo-tokens {
  :root {
    --bo-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.05);
    --bo-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1);
    --bo-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.12);
    --bo-shadow-dialog: 0 20px 25px -5px rgb(0 0 0 / 0.15);
    --bo-shadow-up: 0 -4px 6px -1px rgb(0 0 0 / 0.1);
  }
}
@layer bo-tokens {
  :root {
    --bo-motion-duration-fast: 100ms;
    --bo-motion-duration-base: 150ms;
    --bo-motion-duration-slow: 300ms;
    --bo-motion-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
  }
  @media (prefers-reduced-motion: reduce) {
    :root {
      --bo-motion-duration-fast: 0ms;
      --bo-motion-duration-base: 0ms;
      --bo-motion-duration-slow: 0ms;
    }
  }
}
@layer bo-tokens {
  :root {
    --bo-z-sticky-page: 1150;
    --bo-z-sticky-col: 1050;
    --bo-z-sticky-header: 1100;
    --bo-z-dropdown: 1200;
    --bo-z-toast: 1600;
  }
}
@layer bo-tokens {
  :root,
  [data-density="comfortable"] {
    --bo-density-control-height: 2.25rem;
    --bo-density-row-height: 2.5rem;
    --bo-density-cell-padding-y: var(--bo-space-2);
    --bo-density-cell-padding-x: var(--bo-space-4);
    --bo-density-field-gap: var(--bo-space-4);
    --bo-density-font-size: var(--bo-font-size-base);
  }
  [data-density="compact"] {
    --bo-density-control-height: 1.75rem;
    --bo-density-row-height: 1.875rem;
    --bo-density-cell-padding-y: var(--bo-space-1);
    --bo-density-cell-padding-x: var(--bo-space-2);
    --bo-density-field-gap: var(--bo-space-2);
    --bo-density-font-size: var(--bo-font-size-sm);
  }
  :root {
    --bo-density-auto-control-height: 1.75rem;
    --bo-density-auto-row-height: 1.75rem;
  }
  [data-density="spacious"] {
    --bo-density-control-height: 2.75rem;
    --bo-density-row-height: 3rem;
    --bo-density-cell-padding-y: var(--bo-space-3);
    --bo-density-cell-padding-x: var(--bo-space-6);
    --bo-density-field-gap: var(--bo-space-6);
    --bo-density-font-size: var(--bo-font-size-md);
  }
}
@layer bo-reset {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  * {
    margin: 0;
  }
  html {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
  }
  body {
    min-height: 100dvh;
    font-family: var(--bo-font-sans);
    font-size: var(--bo-font-size-base);
    line-height: var(--bo-line-height-normal);
    color: var(--bo-color-text-primary);
    background: var(--bo-color-bg-canvas);
    -webkit-font-smoothing: antialiased;
  }
  img,
  picture,
  video,
  canvas,
  svg {
    display: block;
    max-inline-size: 100%;
  }
  input,
  button,
  textarea,
  select {
    font: inherit;
    color: inherit;
  }
  p,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    overflow-wrap: break-word;
  }
  h1,
  h2,
  h3,
  h4 {
    line-height: var(--bo-line-height-tight);
    font-weight: var(--bo-font-weight-semibold);
  }
  table {
    border-collapse: collapse;
    border-spacing: 0;
  }
  button {
    background: none;
    border: none;
    cursor: pointer;
  }
  a {
    color: var(--bo-color-accent);
  }
  :focus-visible {
    outline: var(--bo-focus-ring-width, 2px) solid
      var(--bo-color-focus-ring, Highlight);
    outline-offset: var(--bo-focus-ring-offset, 2px);
  }
  [hidden] {
    display: none !important;
  }
  .bo-scroll,
  [data-scroll] {
    scrollbar-gutter: stable;
  }
  @media print {
    body {
      background: #fff;
      color: #000;
    }
  }
}
@layer bo-primitives {
  .bo-stack {
    display: flex;
    flex-direction: column;
    gap: var(--bo-stack-gap, var(--bo-space-4));
  }
  .bo-stack > * {
    flex-shrink: 0;
  }
  .bo-stack--tight {
    --bo-stack-gap: var(--bo-space-2);
  }
  .bo-stack--loose {
    --bo-stack-gap: var(--bo-space-6);
  }
}
@layer bo-primitives {
  .bo-cluster {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--bo-cluster-gap, var(--bo-space-2));
  }
  .bo-cluster > * {
    min-inline-size: 0;
  }
  .bo-cluster--split {
    justify-content: space-between;
  }
  .bo-cluster--end {
    justify-content: flex-end;
  }
}
@layer bo-primitives {
  .bo-grid {
    display: grid;
    grid-template-columns: repeat(
      auto-fill,
      minmax(min(var(--bo-grid-min, 16rem), 100%), 1fr)
    );
    gap: var(--bo-grid-gap, var(--bo-space-4));
  }
}
@layer bo-primitives {
  .bo-app-shell {
    container-type: inline-size;
    container-name: bo-shell;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas:
      "header header"
      "sidebar main";
    block-size: 100dvh;
    overflow: hidden;
  }
  .bo-app-shell__header {
    grid-area: header;
  }
  .bo-app-shell__sidebar {
    grid-area: sidebar;
    position: relative;
    overflow-y: auto;
    scrollbar-gutter: stable;
  }
  .bo-app-shell__main {
    grid-area: main;
    position: relative;
    --bo-app-shell-pad: var(--bo-space-6);
    padding: var(--bo-app-shell-pad);
    background: var(--bo-color-bg-canvas);
    min-width: 0;
    overflow: auto;
    scrollbar-gutter: stable;
  }
  @media print {
    .bo-app-shell {
      display: block;
      block-size: auto;
      overflow: visible;
    }
    .bo-app-shell__main {
      overflow: visible;
    }
    .bo-app-shell__header,
    .bo-app-shell__sidebar {
      display: none;
    }
  }
}
@layer bo-primitives {
  .bo-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
  }
}
@layer bo-components {
  .bo-btn {
    --bo-btn-bg: var(--bo-color-accent-solid);
    --bo-btn-bg-hover: var(--bo-color-accent-strong);
    --bo-btn-fg: var(--bo-color-text-inverse);
    --bo-btn-border: transparent;
    --bo-btn-height: var(--bo-density-control-height);
    --bo-btn-padding-x: var(--bo-space-4);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--bo-space-2);
    min-height: var(--bo-btn-height);
    padding-inline: var(--bo-btn-padding-x);
    border: var(--bo-border-width) solid var(--bo-btn-border);
    border-radius: var(--bo-radius-md);
    background: var(--bo-btn-bg);
    color: var(--bo-btn-fg);
    font-size: var(--bo-density-font-size);
    font-weight: var(--bo-font-weight-medium);
    text-decoration: none;
    white-space: nowrap;
    -webkit-user-select: none;
            user-select: none;
    transition: background-color var(--bo-motion-duration-fast)
        var(--bo-motion-easing-standard),
      transform var(--bo-motion-duration-fast) var(--bo-motion-easing-standard);
  }
  .bo-btn:hover {
    background: var(--bo-btn-bg-hover);
  }
  @media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
    .bo-btn:not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(:focus-visible):active {
      transform: translateY(1px);
    }
  }
  .bo-btn:disabled,
  .bo-btn[aria-disabled="true"] {
    opacity: var(--bo-state-disabled-opacity);
    pointer-events: none;
  }
  .bo-btn--secondary {
    --bo-btn-bg: var(--bo-color-bg-surface);
    --bo-btn-bg-hover: var(--bo-color-bg-muted);
    --bo-btn-fg: var(--bo-color-text-primary);
    --bo-btn-border: var(--bo-color-border-strong);
  }
  .bo-btn--ghost {
    --bo-btn-bg: transparent;
    --bo-btn-bg-hover: var(--bo-state-hover-overlay);
    --bo-btn-fg: var(--bo-color-text-primary);
  }
  .bo-btn[aria-pressed="true"] {
    --bo-btn-bg: var(--bo-color-bg-selected);
    --bo-btn-fg: var(--bo-color-accent-text);
  }
  .bo-btn--danger {
    --bo-btn-bg: var(--bo-color-danger-solid);
    --bo-btn-bg-hover: var(--bo-color-danger-strong);
  }
  .bo-btn--danger-ghost {
    --bo-btn-bg: transparent;
    --bo-btn-bg-hover: var(--bo-color-danger-subtle);
    --bo-btn-fg: var(--bo-color-danger-text);
  }
  .bo-btn--icon {
    --bo-btn-padding-x: 0;
    inline-size: var(--bo-btn-height);
  }
  .bo-btn--sm {
    --bo-btn-height: 1.5rem;
    --bo-btn-padding-x: var(--bo-space-2);
    font-size: var(--bo-font-size-xs);
  }
  .bo-btn[data-loading="true"],
  .bo-btn[aria-busy="true"] {
    pointer-events: none;
    cursor: progress;
  }
  @media (forced-colors: active) {
    .bo-btn {
      border-color: ButtonText;
    }
    .bo-btn[aria-pressed] {
      transition: none;
    }
    .bo-btn[aria-pressed="true"] {
      forced-color-adjust: none;
      background: Highlight;
      color: HighlightText;
      border-color: Highlight;
      outline-color: Highlight;
    }
  }
  .bo-btn-group {
    display: inline-flex;
  }
  .bo-btn-group > .bo-btn {
    border-radius: 0;
    margin-inline-start: calc(-1 * var(--bo-border-width));
  }
  .bo-btn-group > .bo-btn:first-child {
    margin-inline-start: 0;
    border-start-start-radius: var(--bo-radius-md);
    border-end-start-radius: var(--bo-radius-md);
  }
  .bo-btn-group > .bo-btn:last-child {
    border-start-end-radius: var(--bo-radius-md);
    border-end-end-radius: var(--bo-radius-md);
  }
  .bo-btn-group > .bo-btn:hover,
  .bo-btn-group > .bo-btn:focus-visible,
  .bo-btn-group > .bo-btn:active {
    z-index: 1;
  }
  .bo-btn-group--bar {
    display: flex;
    inline-size: 100%;
  }
  .bo-btn-group--bar > .bo-btn {
    flex: 1;
    min-inline-size: 0;
    white-space: normal;
    overflow-wrap: break-word;
  }
}
@layer bo-components {
  .bo-badge {
    --bo-badge-bg: var(--bo-color-bg-muted);
    --bo-badge-fg: var(--bo-color-text-secondary);
    --bo-badge-border: var(--bo-color-border-default);
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-1);
    padding: 0.125rem var(--bo-space-2);
    border: 1px solid var(--bo-badge-border);
    border-radius: var(--bo-radius-full);
    background: var(--bo-badge-bg);
    color: var(--bo-badge-fg);
    font-size: var(--bo-font-size-xs);
    font-weight: var(--bo-font-weight-medium);
    line-height: var(--bo-line-height-normal);
    text-decoration: none;
    max-inline-size: 100%;
  }
  @supports (color: color-mix(in oklab, red, red)) {
    .bo-badge {
      --bo-badge-border: color-mix(in oklab, var(--bo-badge-fg) 22%, transparent);
    }
  }
  .bo-badge--success {
    --bo-badge-bg: var(--bo-color-success-subtle);
    --bo-badge-fg: var(--bo-color-success-text);
  }
  .bo-badge--warning {
    --bo-badge-bg: var(--bo-color-warning-subtle);
    --bo-badge-fg: var(--bo-color-warning-text);
  }
  .bo-badge--danger {
    --bo-badge-bg: var(--bo-color-danger-subtle);
    --bo-badge-fg: var(--bo-color-danger-text);
  }
  .bo-badge--accent {
    --bo-badge-bg: var(--bo-color-accent-subtle);
    --bo-badge-fg: var(--bo-color-accent-text);
  }
  .bo-badge--type {
    --bo-badge-bg: var(--bo-color-text-primary);
    --bo-badge-fg: var(--bo-color-bg-surface);
    --bo-badge-border: transparent;
    border-radius: var(--bo-radius-sm);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: var(--bo-font-weight-semibold);
  }
  @media print {
    .bo-badge {
      background: none;
      border: 1px solid #000;
      color: #000;
    }
  }
  @media (forced-colors: active) {
    .bo-badge {
      border: 1px solid ButtonText;
    }
  }
}
@layer bo-components {
  .bo-icon {
    display: inline-block;
    inline-size: 1em;
    block-size: 1em;
    vertical-align: -0.125em;
    background-color: currentcolor;
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-position: center;
            mask-position: center;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-image: var(--bo-icon-src);
            mask-image: var(--bo-icon-src);
  }
  .bo-icon--doc {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M6 3h9l4 4v14H6z'/><path d='M15 3v4h4'/></svg>");
  }
  .bo-icon--invoice {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M6 3h9l4 4v14H6z'/><path d='M15 3v4h4'/><path d='M9 12h6M9 16h6'/></svg>");
  }
  .bo-icon--cart {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 5h2l2.5 11h11L21 8H7'/><circle cx='10' cy='20' r='1.5'/><circle cx='17' cy='20' r='1.5'/></svg>");
  }
  .bo-icon--check-circle {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='m8 12 3 3 5-6'/></svg>");
  }
  .bo-icon--save {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 4h11l5 5v11H4z'/><path d='M8 4v5h7'/><path d='M8 20v-6h8v6'/></svg>");
  }
  .bo-icon--close {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M6 6l12 12M18 6L6 18'/></svg>");
  }
  .bo-icon--truck {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M2 6h12v10H2z'/><path d='M14 10h4l3 3v3h-7'/><circle cx='7' cy='18.5' r='1.5'/><circle cx='17' cy='18.5' r='1.5'/></svg>");
  }
  .bo-icon--box {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3 4 7v10l8 4 8-4V7z'/><path d='M4 7l8 4 8-4M12 11v10'/></svg>");
  }
  .bo-icon--chart {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 4v16h16'/><path d='M8 16v-5M13 16V8M18 16v-8'/></svg>");
  }
  /*! DEPRECATED (2026-08-19, roadmap 53.2). Kept, not deleted:
     @busy-office/ui is published, so removal is a next-major change.
     Compose instead: point --bo-icon-src at your own
     SVG (see /components/icon, "Any icon you like") — the mechanism is
     general on purpose; this glyph was never more than one example value
     of it. See CHANGELOG. */
  .bo-icon--settings {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 7h16M4 12h16M4 17h16'/><circle cx='9' cy='7' r='2' fill='%23000' stroke='none'/><circle cx='15' cy='12' r='2' fill='%23000' stroke='none'/><circle cx='7' cy='17' r='2' fill='%23000' stroke='none'/></svg>");
  }
  .bo-icon--grid {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='4' width='7' height='7' rx='1'/><rect x='13' y='4' width='7' height='7' rx='1'/><rect x='4' y='13' width='7' height='7' rx='1'/><rect x='13' y='13' width='7' height='7' rx='1'/></svg>");
  }
  /*! DEPRECATED (2026-08-19, roadmap 53.2). Kept, not deleted:
     @busy-office/ui is published, so removal is a next-major change.
     Compose instead: point --bo-icon-src at your own
     SVG (see /components/icon, "Any icon you like") — the mechanism is
     general on purpose; this glyph was never more than one example value
     of it. See CHANGELOG. */
  .bo-icon--barcode {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'><path d='M4 6v12M8 6v12M12 6v12M16 6v12M20 6v12'/></svg>");
  }
  /*! DEPRECATED (2026-08-19, roadmap 53.2). Kept, not deleted:
     @busy-office/ui is published, so removal is a next-major change.
     Compose instead: point --bo-icon-src at your own
     SVG (see /components/icon, "Any icon you like") — the mechanism is
     general on purpose; this glyph was never more than one example value
     of it. See CHANGELOG. */
  .bo-icon--building {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 21V4h10v17M15 9h4v12M3 21h18'/><path d='M8 8h2M8 12h2M8 16h2M12 8h1M12 12h1M12 16h1'/></svg>");
  }
  /*! DEPRECATED (2026-08-19, roadmap 53.2). Kept, not deleted:
     @busy-office/ui is published, so removal is a next-major change.
     Compose instead: point --bo-icon-src at your own
     SVG (see /components/icon, "Any icon you like") — the mechanism is
     general on purpose; this glyph was never more than one example value
     of it. See CHANGELOG. */
  .bo-icon--user {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='8' r='4'/><path d='M4 20c1.5-3.5 4.5-5 8-5s6.5 1.5 8 5'/></svg>");
  }
  .bo-icon--list-bullet {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='4' cy='6' r='1'/><circle cx='4' cy='12' r='1'/><circle cx='4' cy='18' r='1'/><path d='M9 6h11M9 12h11M9 18h11'/></svg>");
  }
  .bo-icon--list-numbered {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M10 6h11M10 12h11M10 18h11'/><path d='M4 4h1v5M3 9h3'/><path d='M6 18H3c0-1.5 3-2 3-3.5S4.5 13 3.5 14'/></svg>");
  }
  .bo-icon--link {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M10 13a5 5 0 007 0l3-3a5 5 0 00-7-7l-1 1'/><path d='M14 11a5 5 0 00-7 0l-3 3a5 5 0 007 7l1-1'/></svg>");
  }
  .bo-icon--quote {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 5v14'/><path d='M10 8h9M10 12h9M10 16h6'/></svg>");
  }
  .bo-icon--indent {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 6h18M11 12h10M3 18h18'/><path d='M3 10l3 2-3 2'/></svg>");
  }
  .bo-icon--outdent {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 6h18M11 12h10M3 18h18'/><path d='M6 10l-3 2 3 2'/></svg>");
  }
  .bo-icon--align-left {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 6h18M3 12h10M3 18h14'/></svg>");
  }
  .bo-icon--align-center {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 6h18M7 12h10M5 18h14'/></svg>");
  }
  .bo-icon--align-right {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 6h18M11 12h10M7 18h14'/></svg>");
  }
  .bo-icon--clear-format {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 7V4h16v3'/><path d='M5 20h6'/><path d='M13 4 8 20'/><path d='m15 15 5 5'/><path d='m20 15-5 5'/></svg>");
  }
  .bo-icon--format {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/><path d='M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z'/></svg>");
  }
  .bo-icon--keyboard {
    --bo-icon-src: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='6' width='20' height='12' rx='2'/><path d='M6 10h.01M10 10h.01M14 10h.01M18 10h.01M8 14h8'/></svg>");
  }
  @media (forced-colors: active) {
    .bo-icon {
      forced-color-adjust: none;
      background-color: CanvasText;
    }
  }
  @media print {
    .bo-icon {
      -webkit-print-color-adjust: exact;
      print-color-adjust: exact;
    }
  }
}
@layer bo-components {
  .bo-form-field {
    display: flex;
    flex-direction: column;
    gap: var(--bo-space-1);
    margin-block-end: var(--bo-density-field-gap);
  }
  .bo-form-field__label {
    font-size: var(--bo-density-font-size);
    font-weight: var(--bo-font-weight-medium);
    color: var(--bo-color-text-primary);
  }
  .bo-form-field:has(:required, [aria-required="true"]) .bo-form-field__label::after,
  .bo-form-field--required .bo-form-field__label::after {
    content: " *" / "";
    color: var(--bo-color-danger);
  }
  .bo-form-field__hint {
    font-size: var(--bo-font-size-xs);
    color: var(--bo-color-text-muted);
  }
  .bo-form-field__message {
    display: none;
    font-size: var(--bo-font-size-xs);
    color: var(--bo-state-error-color);
  }
    :is(.bo-form-field:has([aria-invalid="true"]),.bo-form-field:has(input:user-invalid,select:user-invalid,textarea:user-invalid)) .bo-form-field__message {
      display: block;
    }
    :is(.bo-form-field:has([aria-invalid="true"]),.bo-form-field:has(input:user-invalid,select:user-invalid,textarea:user-invalid)) .bo-input,:is(.bo-form-field:has([aria-invalid="true"]),.bo-form-field:has(input:user-invalid,select:user-invalid,textarea:user-invalid)) .bo-select,:is(.bo-form-field:has([aria-invalid="true"]),.bo-form-field:has(input:user-invalid,select:user-invalid,textarea:user-invalid)) .bo-richtext {
      --bo-input-border: var(--bo-state-error-color);
      --bo-select-border: var(--bo-state-error-color);
      --bo-richtext-border: var(--bo-state-error-color);
    }
    :is(.bo-form-field:has([aria-invalid="true"]),.bo-form-field:has(input:user-invalid,select:user-invalid,textarea:user-invalid)) .bo-form-field__label {
      color: var(--bo-state-error-color);
    }
  [aria-invalid="true"] ~ .bo-form-field__message {
    display: block;
  }
  .bo-form-row {
    display: grid;
    grid-template-columns: repeat(
      auto-fit,
      minmax(min(14rem, 100%), 1fr)
    );
    column-gap: var(--bo-space-4);
  }
}
@layer bo-components {
  .bo-input,
  .bo-quantity__input {
    --bo-input-border: var(--bo-color-border-control);
    inline-size: 100%;
    height: var(--bo-density-control-height);
    padding-inline: var(--bo-space-3);
    border: var(--bo-border-width) solid var(--bo-input-border);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface);
    font-size: var(--bo-density-font-size);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    transition: border-color var(--bo-motion-duration-fast)
      var(--bo-motion-easing-standard);
  }
  :is(.bo-cluster, .bo-filter-bar, .bo-data-table__toolbar, .bo-data-table__footer)
    :is(.bo-input, .bo-select) {
    inline-size: auto;
  }
  textarea.bo-input {
    height: auto;
    min-height: calc(var(--bo-density-control-height) * 2);
    padding-block: var(--bo-space-2);
    resize: vertical;
    overflow: auto;
    white-space: pre-wrap;
    text-overflow: clip;
  }
  :is(.bo-input, .bo-quantity__input)::placeholder {
    color: var(--bo-color-text-muted);
  }
  :is(.bo-input, .bo-quantity__input):disabled {
    background: var(--bo-color-bg-muted);
    color: var(--bo-color-text-disabled);
    cursor: not-allowed;
  }
  :is(.bo-input, .bo-quantity__input)[aria-invalid="true"] {
    --bo-input-border: var(--bo-state-error-color);
  }
  .bo-input--seamless {
    --bo-input-border: transparent;
    background: transparent;
    padding-inline: var(--bo-space-1);
  }
  .bo-input--seamless:hover {
    --bo-input-border: var(--bo-color-border-control);
  }
  .bo-input--seamless:focus {
    --bo-input-border: var(--bo-color-border-control);
    background: var(--bo-color-bg-surface);
  }
  .bo-input--numeric {
    font-variant-numeric: tabular-nums;
    text-align: end;
  }
  .bo-input--code {
    font-family: var(--bo-font-mono);
  }
}
@layer bo-components {
  .bo-select {
    --bo-select-border: var(--bo-color-border-control);
    --bo-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%236b7280' stroke-width='1.5' d='m2.5 4.5 3.5 3.5 3.5-3.5'/%3E%3C/svg%3E");
    inline-size: 100%;
    height: var(--bo-density-control-height);
    padding-inline: var(--bo-space-3) var(--bo-space-8);
    border: var(--bo-border-width) solid var(--bo-select-border);
    border-radius: var(--bo-radius-md);
    background-color: var(--bo-color-bg-surface);
    background-image: var(--bo-select-chevron);
    background-repeat: no-repeat;
    background-position: right var(--bo-space-3) center;
    font-size: var(--bo-density-font-size);
    appearance: none;
  }
  [data-theme="dark"] .bo-select {
    --bo-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23d1d5db' stroke-width='1.5' d='m2.5 4.5 3.5 3.5 3.5-3.5'/%3E%3C/svg%3E");
  }
  [dir="rtl"] .bo-select {
    background-position: left var(--bo-space-3) center;
  }
  .bo-select--seamless {
    --bo-select-border: transparent;
    background-color: transparent;
    background-image: none;
    padding-inline: var(--bo-space-1) var(--bo-space-6);
  }
  .bo-select--seamless:hover,
  .bo-select--seamless:focus {
    background-image: var(--bo-select-chevron);
  }
  .bo-select--seamless:hover {
    --bo-select-border: var(--bo-color-border-control);
  }
  .bo-select--seamless:focus {
    --bo-select-border: var(--bo-color-border-control);
    background-color: var(--bo-color-bg-surface);
  }
  .bo-select:disabled {
    background-color: var(--bo-color-bg-muted);
    color: var(--bo-color-text-disabled);
    cursor: not-allowed;
  }
  @media (forced-colors: active) {
    .bo-select--seamless {
      border-color: ButtonText;
      background-image: var(--bo-select-chevron);
    }
  }
  .bo-select[aria-invalid="true"] {
    --bo-select-border: var(--bo-state-error-color);
  }
}
@layer bo-components {
  .bo-checkbox,
  .bo-radio {
    inline-size: 1rem;
    block-size: 1rem;
    margin: 0;
    accent-color: var(--bo-color-accent);
    cursor: pointer;
  }
  .bo-checkbox:disabled,
  .bo-radio:disabled {
    cursor: not-allowed;
    opacity: var(--bo-state-disabled-opacity);
  }
  .bo-choice {
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-2);
    font-size: var(--bo-density-font-size);
    cursor: pointer;
  }
  .bo-choice:has(:disabled) {
    color: var(--bo-color-text-disabled);
    cursor: not-allowed;
  }
}
@layer bo-components {
  .bo-form-section {
    border: var(--bo-border-width) solid var(--bo-color-border-default);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface);
    padding: var(--bo-space-4) var(--bo-space-6) var(--bo-space-2);
    margin: 0 0 var(--bo-density-field-gap);
    min-inline-size: 0;
  }
  .bo-form-section__legend {
    padding-inline: var(--bo-space-2);
    font-size: var(--bo-font-size-sm);
    font-weight: var(--bo-font-weight-semibold);
    color: var(--bo-color-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
  }
  .bo-form-section--label-start {
    container-type: inline-size;
    container-name: bo-form-section;
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: var(--bo-space-4);
  }
  .bo-form-section--label-start > .bo-form-section__legend,
  .bo-form-section--label-start > :not(.bo-form-field) {
    grid-column: 1 / -1;
  }
  .bo-form-section--label-start .bo-form-field {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: var(--bo-space-4);
    row-gap: var(--bo-space-1);
    align-items: baseline;
  }
  @supports (grid-template-columns: subgrid) {
    .bo-form-section--label-start .bo-form-field {
      grid-template-columns: subgrid;
    }
  }
  .bo-form-section--label-start .bo-form-field > .bo-form-field__label {
    grid-column: 1;
    grid-row: 1;
  }
  .bo-form-section--label-start .bo-form-field > :not(.bo-form-field__label) {
    grid-column: 2;
  }
  @container bo-form-section (max-width: 30rem) {
    .bo-form-section--label-start .bo-form-field {
      display: flex;
      flex-direction: column;
    }
  }
  html:has(.bo-form-actions:not(.bo-widget *)),
  .bo-app-shell__main:has(.bo-form-actions:not(.bo-widget *)) {
    scroll-padding-block-end: 6rem;
  }
  .bo-form-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: var(--bo-space-2);
    padding: var(--bo-space-3) 0;
    position: sticky;
    z-index: var(--bo-z-sticky-page);
    inset-block-end: 0;
    background: var(--bo-color-bg-canvas);
    border-block-start: var(--bo-border-width) solid var(--bo-color-border-default);
    box-shadow:
      var(--bo-shadow-up),
      0 var(--bo-app-shell-pad, 0px) 0 var(--bo-color-bg-canvas);
  }
  .bo-widget .bo-form-actions {
    position: static;
    background: none;
    box-shadow: none;
  }
  .bo-form-actions > .bo-btn {
    min-inline-size: 0;
    max-inline-size: 100%;
    white-space: normal;
    overflow-wrap: break-word;
  }
  @media print {
    .bo-form-actions {
      display: none;
    }
  }
}
@layer bo-components {
  .bo-data-table-container {
    container-type: inline-size;
    container-name: bo-table;
    background: var(--bo-color-bg-surface);
    border: var(--bo-border-width) solid var(--bo-color-border-default);
    border-radius: var(--bo-radius-md);
    overflow: auto;
    scrollbar-gutter: stable;
    min-inline-size: 0;
  }
  .bo-data-table__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--bo-space-2);
    padding: var(--bo-space-2) var(--bo-density-cell-padding-x);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
    position: sticky;
    inset-inline-start: 0;
  }
  .bo-data-table__bulk-actions {
    display: none;
    align-items: center;
    flex-wrap: wrap;
    min-inline-size: 0;
    gap: var(--bo-space-2);
  }
  .bo-data-table-container[data-any-selected="true"] .bo-data-table__bulk-actions,
  .bo-data-table-container:not([data-any-selected]):has(.bo-data-table__row-select:checked)
    .bo-data-table__bulk-actions {
    display: flex;
    opacity: 1;
    translate: 0 0;
    transition:
      opacity var(--bo-motion-duration-base) var(--bo-motion-easing-standard),
      translate var(--bo-motion-duration-base) var(--bo-motion-easing-standard);
  }
  @starting-style {
    .bo-data-table-container[data-any-selected="true"] .bo-data-table__bulk-actions,
    .bo-data-table-container:not([data-any-selected]):has(.bo-data-table__row-select:checked)
      .bo-data-table__bulk-actions {
      opacity: 0;
      translate: 0 -0.25rem;
    }
  }
  .bo-data-table__row-edit-actions {
    text-align: end;
    white-space: nowrap;
  }
  .bo-data-table__row-edit-actions > * + * {
    margin-inline-start: var(--bo-space-2);
  }
  .bo-data-table__selection-count {
    font-size: var(--bo-font-size-xs);
    color: var(--bo-color-text-secondary);
    font-variant-numeric: tabular-nums;
  }
  .bo-data-table__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--bo-space-2);
    padding: var(--bo-space-2) var(--bo-density-cell-padding-x);
    border-block-start: var(--bo-border-width) solid var(--bo-color-border-default);
    position: sticky;
    inset-inline-start: 0;
  }
  .bo-data-table {
    inline-size: 100%;
    font-size: var(--bo-density-font-size);
    font-variant-numeric: tabular-nums;
  }
  .bo-data-table th,
  .bo-data-table td {
    height: var(--bo-density-row-height);
    padding-block: var(--bo-density-cell-padding-y);
    padding-inline: var(--bo-density-cell-padding-x);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
    background-color: var(--bo-cell-bg, transparent);
  }
  .bo-data-table :where(th, td) {
    text-align: start;
  }
  .bo-data-table thead th {
    position: sticky;
    inset-block-start: 0;
    z-index: var(--bo-z-sticky-header);
    background: var(--bo-color-bg-muted);
    color: var(--bo-color-text-secondary);
    font-size: var(--bo-font-size-xs);
    font-weight: var(--bo-font-weight-semibold);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
  }
  .bo-data-table thead th[colspan] {
    text-align: center;
  }
  .bo-data-table thead tr:nth-child(2) th {
    inset-block-start: var(--bo-density-row-height);
  }
  .bo-data-table thead tr:nth-child(3) th {
    inset-block-start: calc(2 * var(--bo-density-row-height));
  }
  .bo-data-table tbody :focus {
    scroll-margin-block-start: calc(3 * var(--bo-density-row-height) + 1px);
  }
  .bo-data-table--striped tbody tr:nth-child(even) {
    --bo-cell-bg: var(--bo-color-bg-muted);
  }
  .bo-data-table tbody tr:hover {
    --bo-cell-bg: var(--bo-color-bg-hover);
  }
  .bo-data-table tbody tr:hover {
    outline: var(--bo-border-width) solid var(--bo-color-border-strong);
    outline-offset: calc(-1 * var(--bo-border-width));
  }
  .bo-data-table tbody tr:has(.bo-data-table__row-select:checked) {
    --bo-cell-bg: var(--bo-color-bg-selected);
  }
  .bo-data-table tbody tr:last-child th,
  .bo-data-table tbody tr:last-child td {
    border-block-end: none;
  }
  .bo-data-table--sticky-col th:first-child,
  .bo-data-table--sticky-col td:first-child {
    position: sticky;
    inset-inline-start: 0;
    z-index: var(--bo-z-sticky-col);
    background-color: var(--bo-cell-bg, var(--bo-color-bg-surface));
  }
  .bo-data-table--sticky-col thead th:first-child {
    z-index: calc(var(--bo-z-sticky-header) + 1);
    background-color: var(--bo-color-bg-muted);
  }
  .bo-data-table[data-sticky-cols="2"] :is(th, td):nth-child(-n + 2),
  .bo-data-table[data-sticky-cols="3"] :is(th, td):nth-child(-n + 3) {
    position: sticky;
    z-index: var(--bo-z-sticky-col);
    background-color: var(--bo-cell-bg, var(--bo-color-bg-surface));
  }
  .bo-data-table[data-sticky-cols] :is(th, td):nth-child(1) {
    inset-inline-start: 0;
  }
  .bo-data-table[data-sticky-cols="2"] :is(th, td):nth-child(2),
  .bo-data-table[data-sticky-cols="3"] :is(th, td):nth-child(2) {
    inset-inline-start: var(--bo-sticky-w-1, 0px);
  }
  .bo-data-table[data-sticky-cols="3"] :is(th, td):nth-child(3) {
    inset-inline-start: calc(var(--bo-sticky-w-1, 0px) + var(--bo-sticky-w-2, 0px));
  }
  .bo-data-table[data-sticky-cols="2"] thead th:nth-child(-n + 2),
  .bo-data-table[data-sticky-cols="3"] thead th:nth-child(-n + 3) {
    z-index: calc(var(--bo-z-sticky-header) + 1);
    background-color: var(--bo-color-bg-muted);
  }
  .bo-data-table__col--left {
    text-align: start;
  }
  .bo-data-table__col--center {
    text-align: center;
  }
  .bo-data-table__col--right,
  .bo-data-table__col--numeric {
    text-align: end;
  }
  .bo-data-table__col--numeric {
    font-variant-numeric: tabular-nums;
  }
  .bo-data-table__col--code {
    font-family: var(--bo-font-mono);
    font-size: var(--bo-font-size-mono-inline);
  }
  .bo-data-table__cell-link {
    display: block;
    padding-block: var(--bo-density-cell-padding-y);
    margin-block: calc(-1 * var(--bo-density-cell-padding-y));
  }
  .bo-data-table tfoot :is(th, td) {
    border-block-start: 2px solid var(--bo-color-border-strong);
    font-weight: var(--bo-font-weight-semibold);
  }
  .bo-data-table__sort-btn {
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-1);
    font: inherit;
    text-transform: inherit;
    letter-spacing: inherit;
    color: inherit;
    padding: 0;
  }
  .bo-data-table th[aria-sort] .bo-data-table__sort-btn::after {
    content: "↕" / "";
    color: var(--bo-color-text-muted);
  }
  .bo-data-table th[aria-sort="ascending"] .bo-data-table__sort-btn::after {
    content: "↑" / "";
    color: inherit;
  }
  .bo-data-table th[aria-sort="descending"] .bo-data-table__sort-btn::after {
    content: "↓" / "";
    color: inherit;
  }
  .bo-data-table[role="grid"] :focus-visible:not(input, select, textarea, button) {
    outline-offset: -2px;
  }
  :where(.bo-data-table[role="grid"]) :is(input, select, textarea, button):focus-visible {
    outline-offset: 1px;
  }
  .bo-data-table[data-loading="true"],
  .bo-data-table[aria-busy="true"] {
    opacity: 0.75;
    pointer-events: none;
  }
  .bo-data-table .bo-form-field {
    position: relative;
  }
  .bo-data-table .bo-form-field:not(:focus-within) .bo-form-field__message {
    display: none;
  }
  .bo-data-table .bo-form-field:focus-within .bo-form-field__message {
    display: block;
    position: absolute;
    inset-block-start: 100%;
    inset-inline-start: 0;
    z-index: 1;
    pointer-events: auto;
    inline-size: max-content;
    max-inline-size: min(48ch, 100cqi);
    padding: var(--bo-space-1) var(--bo-space-2);
    background: var(--bo-color-bg-surface);
    border: var(--bo-border-width) solid var(--bo-state-error-color);
    border-radius: var(--bo-radius-sm);
    box-shadow: var(--bo-shadow-sm);
  }
  @media screen {
    @supports not (position-area: block-end) {
      .bo-data-table-container:has(tbody :is(input:not([type="checkbox"], [type="radio"], [type="hidden"]), select, textarea)) {
        padding-block-end: calc(6lh + var(--bo-space-4));
        overflow-x: scroll;
        position: relative;
      }
      .bo-data-table .bo-form-field {
        position: static;
        display: block;
      }
      .bo-data-table .bo-form-field:focus-within .bo-form-field__message {
        inset: auto;
        inline-size: fit-content;
      }
    }
  }
  @media screen {
    @supports (position-area: block-end) {
      .bo-data-table .bo-form-field:focus-within {
        anchor-name: --bo-cell-message;
      }
      @position-try --bo-cell-message-below {
        position-area: self-block-end span-all;
        max-block-size: max(
          100% - 2 * (var(--bo-focus-ring-offset) + var(--bo-focus-ring-width)),
          100dvh - 100% - anchor-size(self-block) - 2 * (var(--bo-focus-ring-offset) + var(--bo-focus-ring-width))
        );
      }
      @position-try --bo-cell-message-above {
        position-area: self-block-start span-all;
        max-block-size: max(
          100% - 2 * (var(--bo-focus-ring-offset) + var(--bo-focus-ring-width)),
          100dvh - 100% - anchor-size(self-block) - 2 * (var(--bo-focus-ring-offset) + var(--bo-focus-ring-width)) - max(2rem, 40px)
        );
      }
      .bo-data-table .bo-form-field:focus-within .bo-form-field__message {
        position: fixed;
        position-anchor: --bo-cell-message;
        position-area: self-block-end span-self-inline-end;
        position-try-fallbacks: flip-block, flip-inline, flip-block flip-inline,
          --bo-cell-message-below, --bo-cell-message-above;
        position-visibility: anchors-visible;
        inset: auto;
        inline-size: auto;
        min-inline-size: min(28ch, calc(100vw - 2 * var(--bo-space-4)));
        margin-block: calc(var(--bo-focus-ring-offset) + var(--bo-focus-ring-width));
        margin-inline-end: var(--bo-space-2);
        z-index: var(--bo-z-dropdown);
        overflow-y: auto;
        overflow-wrap: anywhere;
        box-sizing: border-box;
      }
    }
  }
  .bo-data-table--sticky-col :is(tbody, tfoot) > tr > :is(td, th):first-child:has(.bo-form-field:focus-within),
  .bo-data-table[data-sticky-cols="2"] :is(tbody, tfoot) > tr > :is(td, th):nth-child(-n + 2):has(.bo-form-field:focus-within),
  .bo-data-table[data-sticky-cols="3"] :is(tbody, tfoot) > tr > :is(td, th):nth-child(-n + 3):has(.bo-form-field:focus-within) {
    z-index: calc(var(--bo-z-sticky-col) + 1);
  }
  .bo-data-table:is([data-loading="true"], [aria-busy="true"]) .bo-form-field:focus-within .bo-form-field__message {
    opacity: 0;
    pointer-events: none;
  }
  @media print {
    .bo-data-table .bo-form-field:focus-within .bo-form-field__message {
      display: none;
    }
  }
  .bo-data-table tbody tr[data-row-state="error"] {
    --bo-cell-bg: var(--bo-state-error-bg);
  }
  .bo-data-table tr[data-row-state="error"] > :first-child {
    box-shadow: inset 3px 0 0 var(--bo-color-danger);
  }
  @media (forced-colors: active) {
    .bo-data-table tr[data-row-state="error"] > :first-child {
      box-shadow: none;
      border-inline-start: 3px solid CanvasText;
    }
  }
  .bo-data-table tbody tr[data-row-state="dirty"],
  .bo-data-table tbody tr[data-row-state="warning"] {
    --bo-cell-bg: var(--bo-color-warning-subtle);
  }
  .bo-data-table tr[data-row-state="dirty"] > :first-child,
  .bo-data-table tr[data-row-state="warning"] > :first-child {
    box-shadow: inset 3px 0 0 var(--bo-color-warning);
  }
  @media (forced-colors: active) {
    .bo-data-table tr[data-row-state="dirty"] > :first-child,
    .bo-data-table tr[data-row-state="warning"] > :first-child {
      box-shadow: none;
      border-inline-start: 3px solid CanvasText;
    }
  }
  .bo-data-table td[data-tone="danger"] {
    --bo-cell-bg: var(--bo-state-error-bg);
  }
  .bo-data-table td[data-tone="warning"] {
    --bo-cell-bg: var(--bo-color-warning-subtle);
  }
  .bo-data-table td[data-tone="success"] {
    --bo-cell-bg: var(--bo-color-success-subtle);
  }
  .bo-data-table td[data-tone="danger"][data-tone-text] {
    color: var(--bo-color-danger-text);
  }
  .bo-data-table td[data-tone="warning"][data-tone-text] {
    color: var(--bo-color-warning-text);
  }
  .bo-data-table td[data-tone="success"][data-tone-text] {
    color: var(--bo-color-success-text);
  }
  [dir="rtl"] .bo-data-table tr[data-row-state="error"] > :first-child {
    box-shadow: inset -3px 0 0 var(--bo-color-danger);
  }
  [dir="rtl"] .bo-data-table tr[data-row-state="dirty"] > :first-child,
  [dir="rtl"] .bo-data-table tr[data-row-state="warning"] > :first-child {
    box-shadow: inset -3px 0 0 var(--bo-color-warning);
  }
  @container bo-table (max-width: 40rem) {
    .bo-data-table__col--tertiary {
      display: none;
    }
  }
  @container bo-table (max-width: 30rem) {
    .bo-data-table-container:not([data-density])
      > .bo-data-table:not([data-density]) {
      --bo-density-cell-padding-x: var(--bo-space-1);
      --bo-density-cell-padding-y: var(--bo-space-1);
      --bo-density-row-height: var(--bo-density-auto-row-height);
      --bo-density-control-height: var(--bo-density-auto-control-height);
      --bo-density-font-size: var(--bo-font-size-sm);
      --bo-density-field-gap: var(--bo-space-2);
    }
    .bo-data-table-container:not([data-density]) .bo-data-table__toolbar {
      padding-block: var(--bo-space-1);
    }
    .bo-data-table__col--secondary {
      display: none;
    }
  }
  .bo-data-table__spacer {
    background: var(--bo-color-bg-canvas);
  }
  .bo-data-table__spacer > td {
    border: none;
  }
  @media print {
    .bo-data-table-container {
      border: none;
      overflow: visible;
    }
    .bo-data-table__toolbar,
    .bo-data-table__footer {
      display: none;
    }
    .bo-data-table thead th {
      position: static;
      background: none;
      color: #000;
      border-block-end: 2px solid #000;
    }
    .bo-data-table th,
    .bo-data-table td {
      border-block-end: 1px solid #999;
    }
  }
}
@layer bo-components {
  .bo-navbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--bo-space-4);
    min-block-size: 3rem;
    padding-block: var(--bo-space-2);
    padding-inline: var(--bo-space-4);
    background: var(--bo-color-bg-surface);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
  }
  .bo-navbar__brand {
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-2);
    font-weight: var(--bo-font-weight-semibold);
    color: var(--bo-color-text-primary);
    text-decoration: none;
    white-space: nowrap;
  }
  .bo-navbar__spacer {
    flex: 1;
  }
  @media print {
    .bo-navbar {
      display: none;
    }
  }
}
@layer bo-components {
  .bo-sidebar-nav {
    inline-size: 14rem;
    padding: var(--bo-space-2);
    background: var(--bo-color-bg-surface);
    border-inline-end: var(--bo-border-width) solid var(--bo-color-border-default);
    overflow-y: auto;
    scrollbar-gutter: stable;
    transition: inline-size var(--bo-motion-duration-base)
      var(--bo-motion-easing-standard);
  }
  .bo-sidebar-nav__section {
    margin-block-end: var(--bo-space-4);
  }
  .bo-sidebar-nav__heading {
    padding: var(--bo-space-2) var(--bo-space-3);
    font-size: var(--bo-font-size-xs);
    font-weight: var(--bo-font-weight-semibold);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--bo-color-text-muted);
  }
  .bo-sidebar-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .bo-sidebar-nav__link {
    display: flex;
    align-items: center;
    gap: var(--bo-space-2);
    padding: var(--bo-space-2) var(--bo-space-3);
    border-radius: var(--bo-radius-sm);
    color: var(--bo-color-text-secondary);
    text-decoration: none;
    font-size: var(--bo-density-font-size);
  }
  .bo-sidebar-nav__label {
    min-inline-size: 0;
    overflow-wrap: break-word;
  }
  .bo-sidebar-nav__link:hover {
    background: var(--bo-state-hover-overlay);
    color: var(--bo-color-text-primary);
  }
  .bo-sidebar-nav__link[aria-current="page"] {
    background: var(--bo-color-accent-subtle);
    color: var(--bo-color-accent-text);
    font-weight: var(--bo-font-weight-medium);
  }
  .bo-sidebar-nav__icon {
    flex: none;
    inline-size: 1.3em;
    text-align: center;
  }
  @container bo-shell (max-width: 56rem) {
    .bo-sidebar-nav {
      inline-size: 3.25rem;
    }
    .bo-sidebar-nav__link {
      justify-content: center;
      padding-inline: 0;
    }
    .bo-sidebar-nav__label,
    .bo-sidebar-nav__heading {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip-path: inset(50%);
      white-space: nowrap;
      border: 0;
    }
  }
  @media print {
    .bo-sidebar-nav {
      display: none;
    }
  }
}
@layer bo-components {
  .bo-offcanvas {
    margin: 0;
    inset-inline-start: 0;
    inset-inline-end: auto;
    inset-block: 0;
    block-size: 100dvh;
    max-block-size: 100dvh;
    inline-size: min(18rem, 85vw);
    max-inline-size: none;
    border: none;
    border-radius: 0;
    padding: 0;
    background: var(--bo-color-bg-surface);
    color: var(--bo-color-text-primary);
    box-shadow: var(--bo-shadow-lg);
  }
  .bo-offcanvas--end {
    inset-inline-start: auto;
    inset-inline-end: 0;
  }
  .bo-offcanvas::backdrop {
    background: var(--bo-color-scrim);
  }
  .bo-offcanvas[data-state="open"] {
    animation: bo-offcanvas-in var(--bo-motion-duration-slow)
      var(--bo-motion-easing-standard);
  }
  .bo-offcanvas--end[data-state="open"] {
    animation-name: bo-offcanvas-in-end;
  }
  @keyframes bo-offcanvas-in {
    from {
      translate: -100% 0;
    }
  }
  @keyframes bo-offcanvas-in-end {
    from {
      translate: 100% 0;
    }
  }
  [dir="rtl"] .bo-offcanvas[data-state="open"] {
    animation-name: bo-offcanvas-in-end;
  }
  [dir="rtl"] .bo-offcanvas--end[data-state="open"] {
    animation-name: bo-offcanvas-in;
  }
  @supports (transition-behavior: allow-discrete) {
    .bo-offcanvas {
      --bo-offcanvas-offset: -100%;
      translate: var(--bo-offcanvas-offset) 0;
      transition:
        translate var(--bo-motion-duration-slow) var(--bo-motion-easing-standard),
        overlay var(--bo-motion-duration-slow) allow-discrete,
        display var(--bo-motion-duration-slow) allow-discrete;
    }
    .bo-offcanvas--end,
    [dir="rtl"] .bo-offcanvas {
      --bo-offcanvas-offset: 100%;
    }
    [dir="rtl"] .bo-offcanvas--end {
      --bo-offcanvas-offset: -100%;
    }
    .bo-offcanvas[open] {
      translate: none;
    }
    @starting-style {
      .bo-offcanvas[open] {
        translate: var(--bo-offcanvas-offset) 0;
      }
    }
    .bo-offcanvas[data-state="open"],
    .bo-offcanvas--end[data-state="open"],
    [dir="rtl"] .bo-offcanvas[data-state="open"],
    [dir="rtl"] .bo-offcanvas--end[data-state="open"] {
      animation: none;
    }
    .bo-offcanvas::backdrop {
      opacity: 0;
      transition:
        opacity var(--bo-motion-duration-slow) var(--bo-motion-easing-standard),
        overlay var(--bo-motion-duration-slow) allow-discrete,
        display var(--bo-motion-duration-slow) allow-discrete;
    }
    .bo-offcanvas[open]::backdrop {
      opacity: 1;
    }
    @starting-style {
      .bo-offcanvas[open]::backdrop {
        opacity: 0;
      }
    }
  }
  .bo-offcanvas__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--bo-space-2);
    padding: var(--bo-space-3) var(--bo-space-4);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
  }
  .bo-offcanvas .bo-sidebar-nav {
    inline-size: 100%;
    border-inline-end: none;
  }
  .bo-offcanvas .bo-sidebar-nav__label,
  .bo-offcanvas .bo-sidebar-nav__heading {
    position: static;
    inline-size: auto;
    block-size: auto;
    margin: 0;
    overflow: visible;
    clip-path: none;
    white-space: normal;
    border: 0;
  }
  .bo-offcanvas .bo-sidebar-nav__heading {
    padding: var(--bo-space-2) var(--bo-space-3);
  }
  .bo-offcanvas .bo-sidebar-nav__link {
    justify-content: flex-start;
    padding-inline: var(--bo-space-3);
  }
  @media (forced-colors: active) {
    .bo-offcanvas {
      border: 1px solid ButtonText;
    }
  }
}
@layer bo-components {
  .bo-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--bo-space-1);
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: var(--bo-font-size-sm);
  }
  .bo-breadcrumb li {
    display: flex;
    align-items: center;
    gap: var(--bo-space-1);
  }
  .bo-breadcrumb a {
    color: var(--bo-color-text-secondary);
    text-decoration: none;
  }
  .bo-breadcrumb a:hover {
    color: var(--bo-color-accent);
    text-decoration: underline;
  }
  .bo-breadcrumb [aria-current="page"] {
    color: var(--bo-color-text-primary);
    font-weight: var(--bo-font-weight-medium);
  }
  .bo-breadcrumb li:not(:first-child)::before {
    content: "/" / "";
    color: var(--bo-color-text-muted);
  }
  @media print {
    .bo-breadcrumb {
      display: none;
    }
  }
}
@layer bo-components {
  .bo-tree,
  .bo-tree ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .bo-tree ul {
    padding-inline-start: 1.25em;
  }
  .bo-tree__label,
  .bo-tree__link {
    display: flex;
    align-items: center;
    gap: var(--bo-space-2);
    padding: var(--bo-space-2) var(--bo-space-3);
    border-radius: var(--bo-radius-sm);
    color: var(--bo-color-text-secondary);
    font-size: var(--bo-density-font-size);
    text-decoration: none;
    cursor: pointer;
  }
  .bo-tree__label:hover,
  .bo-tree__link:hover {
    background: var(--bo-state-hover-overlay);
    color: var(--bo-color-text-primary);
  }
  .bo-tree__link[aria-current="page"] {
    background: var(--bo-color-accent-subtle);
    color: var(--bo-color-accent-text);
    font-weight: var(--bo-font-weight-medium);
  }
  .bo-tree__label {
    list-style: none;
  }
  .bo-tree__label::-webkit-details-marker {
    display: none;
  }
  .bo-tree__label::before {
    content: "▸" / "";
    flex: none;
    inline-size: 1em;
    text-align: center;
    transition: rotate var(--bo-motion-duration-base) var(--bo-motion-easing-standard);
  }
  .bo-tree__branch[open] > .bo-tree__label::before {
    rotate: 90deg;
  }
  [dir="rtl"] .bo-tree__label::before {
    content: "◂" / "";
  }
  [dir="rtl"] .bo-tree__branch[open] > .bo-tree__label::before {
    rotate: -90deg;
  }
  .bo-tree__link {
    padding-inline-start: calc(var(--bo-space-3) + 1em + var(--bo-space-2));
  }
  @media (prefers-reduced-motion: reduce) {
    .bo-tree__label::before {
      transition: none;
    }
  }
}
@layer bo-components {
  .bo-dialog {
    margin: auto;
    padding: 0;
    border: none;
    border-radius: var(--bo-radius-lg);
    background: var(--bo-color-bg-surface-raised);
    color: var(--bo-color-text-primary);
    box-shadow: var(--bo-shadow-dialog);
    max-inline-size: min(32rem, calc(100vw - var(--bo-space-8)));
    inline-size: 100%;
  }
  .bo-dialog--wide {
    max-inline-size: min(56rem, calc(100vw - var(--bo-space-8)));
  }
  .bo-dialog::backdrop {
    background: var(--bo-color-scrim);
  }
  .bo-dialog[data-state="open"] {
    animation: bo-dialog-in var(--bo-motion-duration-base)
      var(--bo-motion-easing-standard);
  }
  @keyframes bo-dialog-in {
    from {
      opacity: 0;
      transform: translateY(0.5rem) scale(0.98);
    }
  }
  @supports (transition-behavior: allow-discrete) {
    .bo-dialog {
      opacity: 0;
      transform: translateY(0.5rem) scale(0.98);
      transition:
        opacity var(--bo-motion-duration-base) var(--bo-motion-easing-standard),
        transform var(--bo-motion-duration-base) var(--bo-motion-easing-standard),
        overlay var(--bo-motion-duration-base) allow-discrete,
        display var(--bo-motion-duration-base) allow-discrete;
    }
    .bo-dialog[open] {
      opacity: 1;
      transform: none;
    }
    @starting-style {
      .bo-dialog[open] {
        opacity: 0;
        transform: translateY(0.5rem) scale(0.98);
      }
    }
    .bo-dialog[data-state="open"] {
      animation: none;
    }
    .bo-dialog::backdrop {
      opacity: 0;
      transition:
        opacity var(--bo-motion-duration-base) var(--bo-motion-easing-standard),
        overlay var(--bo-motion-duration-base) allow-discrete,
        display var(--bo-motion-duration-base) allow-discrete;
    }
    .bo-dialog[open]::backdrop {
      opacity: 1;
    }
    @starting-style {
      .bo-dialog[open]::backdrop {
        opacity: 0;
      }
    }
  }
  .bo-dialog__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--bo-space-4);
    padding: var(--bo-space-4) var(--bo-space-6);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
  }
  .bo-dialog__title {
    font-size: var(--bo-font-size-md);
    font-weight: var(--bo-font-weight-semibold);
  }
  .bo-dialog__body {
    padding: var(--bo-space-6);
  }
  .bo-dialog__footer {
    display: flex;
    justify-content: flex-end;
    gap: var(--bo-space-2);
    padding: var(--bo-space-4) var(--bo-space-6);
    border-block-start: var(--bo-border-width) solid var(--bo-color-border-default);
    background: var(--bo-color-bg-muted);
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  @media (forced-colors: active) {
    .bo-dialog {
      border: 1px solid ButtonText;
    }
  }
}
@layer bo-components {
  .bo-tabs__list {
    display: flex;
    gap: var(--bo-space-1);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--bo-color-border-strong) transparent;
  }
  .bo-tabs__list[data-overflow="end"] {
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 2.5rem), transparent);
            mask-image: linear-gradient(to right, #000 calc(100% - 2.5rem), transparent);
  }
  .bo-tabs__list[data-overflow="start"] {
    -webkit-mask-image: linear-gradient(to left, #000 calc(100% - 2.5rem), transparent);
            mask-image: linear-gradient(to left, #000 calc(100% - 2.5rem), transparent);
  }
  .bo-tabs__list[data-overflow="both"] {
    -webkit-mask-image: linear-gradient(to right, transparent, #000 2.5rem calc(100% - 2.5rem), transparent);
            mask-image: linear-gradient(to right, transparent, #000 2.5rem calc(100% - 2.5rem), transparent);
  }
  @media (forced-colors: active) {
    .bo-tabs__list[data-overflow] {
      -webkit-mask-image: none;
              mask-image: none;
    }
  }
  .bo-tabs__tab {
    padding: var(--bo-space-2) var(--bo-space-4);
    margin-block-end: calc(var(--bo-border-width) * -1);
    border-block-end: 2px solid transparent;
    color: var(--bo-color-text-secondary);
    font-size: var(--bo-density-font-size);
    font-weight: var(--bo-font-weight-medium);
    white-space: nowrap;
    transition: color var(--bo-motion-duration-fast) var(--bo-motion-easing-standard),
      background-color var(--bo-motion-duration-fast) var(--bo-motion-easing-standard),
      border-color var(--bo-motion-duration-fast) var(--bo-motion-easing-standard);
  }
  .bo-tabs__tab:hover {
    color: var(--bo-color-text-primary);
    background: var(--bo-state-hover-overlay);
  }
  .bo-tabs__tab[aria-selected="true"] {
    color: var(--bo-color-accent-text);
    border-block-end-color: var(--bo-color-accent);
  }
  @media (forced-colors: active) {
    .bo-tabs__tab {
      transition: none;
    }
  }
  .bo-tabs__panel {
    padding-block: var(--bo-space-4);
  }
  .bo-tabs--vertical {
    display: flex;
    flex-wrap: wrap;
    gap: var(--bo-space-4);
    container-type: inline-size;
    container-name: bo-tabs;
  }
  .bo-tabs--vertical > .bo-tabs__list {
    flex-direction: column;
    border-block-end: none;
    border-inline-end: var(--bo-border-width) solid var(--bo-color-border-default);
    overflow-x: hidden;
    overflow-y: auto;
    min-block-size: 0;
    max-block-size: 100%;
  }
  .bo-tabs--vertical > .bo-tabs__panel {
    flex: 1;
    min-inline-size: 0;
    padding-block: 0;
  }
  .bo-tabs--vertical > .bo-tabs__list > .bo-tabs__tab {
    margin-block-end: 0;
    margin-inline-end: calc(var(--bo-border-width) * -1);
    border-block-end: none;
    border-inline-end: 2px solid transparent;
    text-align: start;
  }
  .bo-tabs--vertical > .bo-tabs__list > .bo-tabs__tab[aria-selected="true"] {
    border-inline-end-color: var(--bo-color-accent);
  }
  .bo-tabs--vertical > .bo-tabs__list[data-overflow="end"] {
    -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 2.5rem), transparent);
            mask-image: linear-gradient(to bottom, #000 calc(100% - 2.5rem), transparent);
  }
  .bo-tabs--vertical > .bo-tabs__list[data-overflow="start"] {
    -webkit-mask-image: linear-gradient(to top, #000 calc(100% - 2.5rem), transparent);
            mask-image: linear-gradient(to top, #000 calc(100% - 2.5rem), transparent);
  }
  .bo-tabs--vertical > .bo-tabs__list[data-overflow="both"] {
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 2.5rem calc(100% - 2.5rem), transparent);
            mask-image: linear-gradient(to bottom, transparent, #000 2.5rem calc(100% - 2.5rem), transparent);
  }
  @container bo-tabs (max-width: 30rem) {
    .bo-tabs--vertical > .bo-tabs__list {
      flex-direction: row;
      flex-basis: 100%;
      border-inline-end: none;
      border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
      overflow-x: auto;
      overflow-y: hidden;
    }
    .bo-tabs--vertical > .bo-tabs__list > .bo-tabs__tab {
      margin-block-end: calc(var(--bo-border-width) * -1);
      margin-inline-end: 0;
      border-inline-end: none;
      border-block-end: 2px solid transparent;
    }
    .bo-tabs--vertical > .bo-tabs__list > .bo-tabs__tab[aria-selected="true"] {
      border-block-end-color: var(--bo-color-accent);
    }
    .bo-tabs--vertical > .bo-tabs__panel {
      flex-basis: 100%;
      padding-block: var(--bo-space-4);
    }
    .bo-tabs--vertical > .bo-tabs__list[data-overflow="end"] {
      -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 2.5rem), transparent);
              mask-image: linear-gradient(to right, #000 calc(100% - 2.5rem), transparent);
    }
    .bo-tabs--vertical > .bo-tabs__list[data-overflow="start"] {
      -webkit-mask-image: linear-gradient(to left, #000 calc(100% - 2.5rem), transparent);
              mask-image: linear-gradient(to left, #000 calc(100% - 2.5rem), transparent);
    }
    .bo-tabs--vertical > .bo-tabs__list[data-overflow="both"] {
      -webkit-mask-image: linear-gradient(to right, transparent, #000 2.5rem calc(100% - 2.5rem), transparent);
              mask-image: linear-gradient(to right, transparent, #000 2.5rem calc(100% - 2.5rem), transparent);
    }
  }
}
@layer bo-components {
  .bo-alert {
    --bo-alert-accent: var(--bo-color-accent);
    --bo-alert-bg: var(--bo-color-accent-subtle);
    --bo-alert-fg: var(--bo-color-text-primary);
    display: flex;
    align-items: flex-start;
    gap: var(--bo-space-2);
    padding: var(--bo-space-3) var(--bo-space-4);
    border-inline-start: 3px solid var(--bo-alert-accent);
    border-radius: var(--bo-radius-sm);
    background: var(--bo-alert-bg);
    color: var(--bo-alert-fg);
    font-size: var(--bo-density-font-size);
  }
  .bo-alert--success {
    --bo-alert-accent: var(--bo-color-success);
    --bo-alert-bg: var(--bo-color-success-subtle);
  }
  .bo-alert--warning {
    --bo-alert-accent: var(--bo-color-warning);
    --bo-alert-bg: var(--bo-color-warning-subtle);
  }
  .bo-alert--danger {
    --bo-alert-accent: var(--bo-color-danger);
    --bo-alert-bg: var(--bo-color-danger-subtle);
  }
  .bo-alert--elevated {
    box-shadow: var(--bo-shadow-md);
    background: var(--bo-color-bg-surface-raised);
    border-radius: var(--bo-radius-md);
  }
  .bo-alert__title {
    font-weight: var(--bo-font-weight-semibold);
  }
  .bo-alert__dismiss {
    margin-inline-start: auto;
  }
  .bo-toast-region {
    position: fixed;
    inset-block-end: var(--bo-space-4);
    inset-inline-end: var(--bo-space-4);
    z-index: var(--bo-z-toast);
    display: flex;
    flex-direction: column;
    gap: var(--bo-space-2);
    max-inline-size: 24rem;
  }
  .bo-toast {
    box-shadow: var(--bo-shadow-lg);
    background: var(--bo-color-bg-surface-raised);
    animation: bo-toast-in var(--bo-motion-duration-base)
      var(--bo-motion-easing-standard);
  }
  @keyframes bo-toast-in {
    from {
      opacity: 0;
      transform: translateY(0.5rem);
    }
  }
  .bo-toast[data-state="closing"] {
    overflow: hidden;
    pointer-events: none;
    animation: bo-toast-out var(--bo-motion-duration-fast)
      var(--bo-motion-easing-standard) forwards;
  }
  @keyframes bo-toast-out {
    to {
      opacity: 0;
      block-size: 0;
      padding-block: 0;
      margin-block-start: calc(var(--bo-space-2) * -1);
    }
  }
  @media print {
    .bo-toast-region {
      display: none;
    }
  }
}
@layer bo-components {
  .bo-dropdown__menu {
    position: fixed;
    inset: auto;
    margin: 0;
    min-inline-size: 12rem;
    text-transform: none;
    letter-spacing: normal;
    white-space: normal;
    padding: var(--bo-space-1);
    border: var(--bo-border-width) solid var(--bo-color-border-default);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface-raised);
    color: var(--bo-color-text-primary);
    box-shadow: var(--bo-shadow-md);
  }
  .bo-dropdown__menu p {
    max-inline-size: 34ch;
  }
  @media (prefers-reduced-motion: no-preference) {
    .bo-dropdown__menu {
      opacity: 1;
      translate: 0 0;
      transition:
        opacity var(--bo-motion-duration-base) var(--bo-motion-easing-standard),
        translate var(--bo-motion-duration-base) var(--bo-motion-easing-standard),
        display var(--bo-motion-duration-base) allow-discrete,
        overlay var(--bo-motion-duration-base) allow-discrete;
    }
    .bo-dropdown__menu:not(:popover-open) {
      opacity: 0;
      translate: 0 -0.25rem;
    }
    @starting-style {
      .bo-dropdown__menu:popover-open {
        opacity: 0;
        translate: 0 -0.25rem;
      }
    }
  }
  .bo-dropdown__item {
    display: flex;
    inline-size: 100%;
    align-items: center;
    gap: var(--bo-space-2);
    padding: var(--bo-space-2) var(--bo-space-3);
    border-radius: var(--bo-radius-sm);
    color: var(--bo-color-text-primary);
    font-size: var(--bo-density-font-size);
    text-align: start;
    text-decoration: none;
    white-space: nowrap;
  }
  .bo-dropdown__item:hover {
    background: var(--bo-state-hover-overlay);
  }
  label.bo-dropdown__item {
    cursor: pointer;
  }
  .bo-dropdown__item:has(input:checked) {
    background: var(--bo-color-bg-selected);
  }
  .bo-dropdown__item--danger {
    color: var(--bo-color-danger-text);
  }
  .bo-dropdown__separator {
    border: none;
    border-block-start: var(--bo-border-width) solid var(--bo-color-border-default);
    margin-block: var(--bo-space-1);
  }
}
@layer bo-components {
  .bo-combobox {
    position: relative;
    display: block;
  }
  .bo-combobox__listbox {
    position: fixed;
    inset: auto;
    margin: 0;
    min-inline-size: 12rem;
    max-block-size: 16rem;
    overflow-y: auto;
    padding: var(--bo-space-1);
    border: var(--bo-border-width) solid var(--bo-color-border-default);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface-raised);
    color: var(--bo-color-text-primary);
    box-shadow: var(--bo-shadow-md);
    list-style: none;
  }
  @supports (anchor-name: --a) and (anchor-scope: --a) {
    .bo-combobox {
      anchor-scope: --bo-combobox;
    }
    .bo-combobox > .bo-input {
      anchor-name: --bo-combobox;
    }
    .bo-combobox__listbox {
      position-anchor: --bo-combobox;
      position-area: block-end span-inline-end;
      position-try-fallbacks: flip-block;
      margin-block-start: var(--bo-space-1);
    }
  }
  .bo-combobox__option {
    padding: var(--bo-space-2) var(--bo-space-3);
    border-radius: var(--bo-radius-sm);
    font-size: var(--bo-density-font-size);
    cursor: pointer;
  }
  .bo-combobox__option:hover {
    background: var(--bo-state-hover-overlay);
  }
  .bo-combobox__option {
    display: flex;
    align-items: baseline;
    gap: var(--bo-space-2);
  }
  .bo-combobox__option-code {
    flex: none;
    font-family: var(--bo-font-mono);
    font-variant-numeric: tabular-nums;
    color: var(--bo-color-text-secondary);
  }
  .bo-combobox__option-label {
    flex: 1;
    min-inline-size: 0;
    overflow-wrap: anywhere;
  }
  .bo-combobox__option-meta {
    flex: none;
    font-size: var(--bo-font-size-xs);
    color: var(--bo-color-text-muted);
  }
  .bo-combobox__group {
    padding: var(--bo-space-2) var(--bo-space-3) var(--bo-space-1);
    color: var(--bo-color-text-muted);
    font-size: var(--bo-font-size-xs);
    font-weight: var(--bo-font-weight-semibold);
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  .bo-combobox__option[aria-selected="true"] {
    background: var(--bo-color-bg-selected);
  }
  @media (forced-colors: active) {
    .bo-combobox__option[aria-selected="true"] {
      background: SelectedItem;
      color: SelectedItemText;
      forced-color-adjust: none;
    }
  }
}
@layer bo-components {
  .bo-pagination {
    display: flex;
    align-items: center;
    gap: var(--bo-space-1);
    font-variant-numeric: tabular-nums;
  }
  .bo-pagination__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-inline-size: var(--bo-density-control-height);
    height: var(--bo-density-control-height);
    padding-inline: var(--bo-space-2);
    border-radius: var(--bo-radius-sm);
    color: var(--bo-color-text-secondary);
    font-size: var(--bo-density-font-size);
    text-decoration: none;
  }
  .bo-pagination__btn:hover {
    background: var(--bo-state-hover-overlay);
    color: var(--bo-color-text-primary);
  }
  .bo-pagination__btn[aria-current="page"] {
    background: var(--bo-color-accent-subtle);
    color: var(--bo-color-accent-text);
    font-weight: var(--bo-font-weight-semibold);
  }
  .bo-pagination__btn:disabled {
    opacity: var(--bo-state-disabled-opacity);
    pointer-events: none;
  }
  .bo-pagination__info {
    margin-inline-start: var(--bo-space-2);
    color: var(--bo-color-text-secondary);
    font-size: var(--bo-font-size-sm);
  }
  @media print {
    .bo-pagination {
      display: none;
    }
  }
}
@layer bo-components {
  .bo-filter-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: var(--bo-space-2);
    padding: var(--bo-space-2) var(--bo-space-3);
    border: var(--bo-border-width) solid var(--bo-color-border-default);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface);
  }
  .bo-filter-bar .bo-form-field {
    margin-block-end: 0;
  }
  .bo-chip {
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-1);
    padding: 0.125rem var(--bo-space-2);
    border: var(--bo-border-width) solid var(--bo-color-border-strong);
    border-radius: var(--bo-radius-full);
    background: var(--bo-color-bg-muted);
    color: var(--bo-color-text-primary);
    font-size: var(--bo-font-size-xs);
    text-decoration: none;
    max-inline-size: 100%;
    overflow-wrap: anywhere;
  }
  .bo-chip--active {
    border-color: var(--bo-color-accent);
    background: var(--bo-color-accent-subtle);
    color: var(--bo-color-accent-text);
  }
  .bo-chip__remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: content-box;
    inline-size: 1rem;
    block-size: 1rem;
    padding: 0.25rem;
    margin: -0.25rem;
    border-radius: var(--bo-radius-full);
    color: inherit;
    font-size: var(--bo-font-size-xs);
    line-height: 1;
  }
  .bo-chip__remove:hover {
    background: var(--bo-state-active-overlay);
  }
  @media print {
    .bo-filter-bar {
      display: none;
    }
  }
}
@layer bo-components {
  .bo-widget-grid {
    container-type: inline-size;
    container-name: bo-widget-grid;
    display: grid;
    grid-template-columns: repeat(
      auto-fill,
      minmax(min(var(--bo-widget-min, 20rem), 100%), 1fr)
    );
    gap: var(--bo-space-4);
  }
  .bo-widget {
    container-type: inline-size;
    container-name: bo-widget;
    display: flex;
    flex-direction: column;
    border: var(--bo-border-width) solid var(--bo-color-border-default);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface);
    text-decoration: none;
    min-inline-size: 0;
  }
  .bo-widget--span-2 {
    grid-column: span 2;
  }
  .bo-widget > .bo-badge {
    align-self: center;
  }
  .bo-widget__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--bo-space-2);
    padding: var(--bo-space-3) var(--bo-space-4);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
  }
  .bo-widget__title {
    font-size: var(--bo-font-size-sm);
    font-weight: var(--bo-font-weight-semibold);
    color: var(--bo-color-text-secondary);
  }
  .bo-widget__collapse {
    display: grid;
    grid-template-rows: minmax(0, 1fr);
    overflow: hidden;
    transition: grid-template-rows var(--bo-motion-duration-slow) var(--bo-motion-easing-standard);
  }
  .bo-widget__collapse > * {
    min-block-size: 0;
    overflow: hidden;
  }
  .bo-widget__collapse[data-state="closed"] {
    grid-template-rows: minmax(0, 0fr);
  }
  .bo-widget__toggle-icon {
    display: inline-block;
    transition: transform var(--bo-motion-duration-base) var(--bo-motion-easing-standard);
  }
  [aria-expanded="false"] > .bo-widget__toggle-icon {
    transform: rotate(-90deg);
  }
  .bo-widget__body {
    padding: var(--bo-space-4);
    min-block-size: 0;
  }
  .bo-widget__body--flush {
    padding: 0;
  }
  .bo-widget__band {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--bo-space-2);
    padding: var(--bo-space-3) var(--bo-space-4);
    border-block-start: var(--bo-border-width) solid var(--bo-color-border-default);
    background: var(--bo-color-bg-muted);
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  .bo-widget__band--msg {
    color: var(--bo-color-text-secondary);
    font-size: var(--bo-font-size-sm);
  }
  .bo-widget__header:has(.bo-badge--type) {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .bo-widget__header:has(.bo-badge--type) > .bo-badge:last-child:not(.bo-badge--type) {
    margin-inline-start: auto;
  }
  @container bo-widget-grid (max-width: 41rem) {
    .bo-widget--span-2 {
      grid-column: auto;
    }
  }
  .bo-stat {
    display: flex;
    flex-direction: column;
    gap: var(--bo-space-1);
    padding: var(--bo-space-4);
  }
  .bo-stat__label {
    font-size: var(--bo-font-size-sm);
    color: var(--bo-color-text-secondary);
  }
  .bo-stat__value {
    font-size: var(--bo-font-size-xl);
    font-weight: var(--bo-font-weight-semibold);
    line-height: var(--bo-line-height-tight);
    color: var(--bo-color-text-primary);
    font-variant-numeric: normal;
  }
  .bo-stat--hero .bo-stat__value {
    font-size: 3rem;
  }
  .bo-stat__delta {
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-1);
    font-size: var(--bo-font-size-xs);
    color: var(--bo-color-text-secondary);
  }
  .bo-stat__delta--good {
    color: var(--bo-color-success-text);
  }
  .bo-stat__delta--bad {
    color: var(--bo-color-danger-text);
  }
  @media print {
    .bo-widget__collapse {
      grid-template-rows: 1fr !important;
    }
  }
}
@layer bo-components {
  .bo-timeline {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .bo-timeline__step {
    --bo-timeline-marker-bg: var(--bo-color-bg-muted);
    --bo-timeline-marker-fg: var(--bo-color-text-muted);
    position: relative;
    display: flex;
    gap: var(--bo-space-3);
    padding-block-end: var(--bo-space-5);
  }
  .bo-timeline__step:not(:last-child)::before {
    content: "";
    position: absolute;
    inset-block: 1.5rem 0;
    inset-inline-start: calc(0.75rem - 1px);
    inline-size: 2px;
    background: var(--bo-color-border-default);
  }
  .bo-timeline__marker {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    inline-size: 1.5rem;
    block-size: 1.5rem;
    border-radius: var(--bo-radius-full);
    background: var(--bo-timeline-marker-bg);
    color: var(--bo-timeline-marker-fg);
    font-size: var(--bo-font-size-xs);
    font-weight: var(--bo-font-weight-semibold);
  }
  .bo-timeline__step[data-state="done"] {
    --bo-timeline-marker-bg: var(--bo-color-success-subtle);
    --bo-timeline-marker-fg: var(--bo-color-success-text);
  }
  .bo-timeline__step[data-state="current"] {
    --bo-timeline-marker-bg: var(--bo-color-accent-subtle);
    --bo-timeline-marker-fg: var(--bo-color-accent-text);
  }
  .bo-timeline__step[data-state="rejected"] {
    --bo-timeline-marker-bg: var(--bo-color-danger-subtle);
    --bo-timeline-marker-fg: var(--bo-color-danger-text);
  }
  .bo-timeline__title {
    font-weight: var(--bo-font-weight-medium);
    color: var(--bo-color-text-primary);
  }
  .bo-timeline__step[data-state="pending"] .bo-timeline__title {
    color: var(--bo-color-text-muted);
    font-weight: var(--bo-font-weight-normal);
  }
  .bo-timeline__step[data-state="rejected"] .bo-timeline__title {
    color: var(--bo-color-danger-text);
  }
  .bo-timeline__meta {
    font-size: var(--bo-font-size-xs);
    color: var(--bo-color-text-muted);
  }
  .bo-audit {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: var(--bo-font-size-sm);
  }
  .bo-audit__entry {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: var(--bo-space-2);
    row-gap: var(--bo-space-1);
    padding-block: var(--bo-space-2);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
  }
  .bo-audit__entry:last-child {
    border-block-end: none;
  }
  .bo-audit__time {
    font-family: var(--bo-font-mono);
    font-size: var(--bo-font-size-xs);
    font-variant-numeric: tabular-nums;
    color: var(--bo-color-text-muted);
    padding-block-start: 0.125rem;
    white-space: nowrap;
  }
  .bo-audit__actor {
    font-weight: var(--bo-font-weight-medium);
  }
  .bo-audit__detail {
    grid-column: 2;
    color: var(--bo-color-text-secondary);
    font-size: var(--bo-font-size-xs);
  }
  .bo-audit--discussion {
    font-size: inherit;
  }
  .bo-audit--discussion .bo-audit__detail {
    font-size: inherit;
    color: var(--bo-color-text-primary);
  }
  .bo-composer[data-visibility='external'],
  .bo-audit__entry[data-visibility='external'] {
    border-inline-start: calc(var(--bo-border-width) * 3) solid
      var(--bo-color-warning-strong);
    padding-inline-start: var(--bo-space-3);
  }
  .bo-audit--discussion .bo-audit__entry[data-state='resolved'] .bo-audit__detail {
    color: var(--bo-color-text-secondary);
  }
  .bo-composer {
    display: flex;
    gap: var(--bo-space-3);
    align-items: flex-start;
  }
  .bo-composer__body {
    display: flex;
    flex-direction: column;
    gap: var(--bo-space-2);
    flex: 1;
    min-inline-size: 0;
  }
  .bo-composer__actions {
    display: flex;
    justify-content: flex-end;
    gap: var(--bo-space-2);
  }
  @media print {
    .bo-timeline__step:not(:last-child)::before {
      background: #999;
    }
    .bo-composer {
      display: none;
    }
  }
}
@layer bo-components {
  .bo-stepper {
    container-type: inline-size;
    container-name: bo-stepper;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .bo-stepper__step {
    --bo-stepper-marker-bg: var(--bo-color-bg-muted);
    --bo-stepper-marker-fg: var(--bo-color-text-muted);
    flex: 1;
    display: flex;
    align-items: center;
    gap: var(--bo-space-2);
    min-inline-size: 0;
  }
  .bo-stepper__step:not(:first-child)::before {
    content: "";
    flex: 1;
    min-inline-size: var(--bo-space-4);
    block-size: 2px;
    background: var(--bo-color-border-default);
    margin-inline: var(--bo-space-2);
  }
  .bo-stepper__step[data-state="done"]:not(:first-child)::before {
    background: var(--bo-color-success);
  }
  .bo-stepper__marker {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    inline-size: 1.75rem;
    block-size: 1.75rem;
    border-radius: var(--bo-radius-full);
    background: var(--bo-stepper-marker-bg);
    color: var(--bo-stepper-marker-fg);
    font-size: var(--bo-font-size-sm);
    font-weight: var(--bo-font-weight-semibold);
    font-variant-numeric: tabular-nums;
  }
  .bo-stepper__step[data-state="done"] {
    --bo-stepper-marker-bg: var(--bo-color-success-subtle);
    --bo-stepper-marker-fg: var(--bo-color-success-text);
  }
  .bo-stepper__step[aria-current="step"] {
    --bo-stepper-marker-bg: var(--bo-color-accent-solid);
    --bo-stepper-marker-fg: var(--bo-color-text-inverse);
  }
  .bo-stepper__label {
    font-size: var(--bo-density-font-size);
    color: var(--bo-color-text-secondary);
    overflow-wrap: anywhere;
  }
  .bo-stepper__step[aria-current="step"] .bo-stepper__label {
    color: var(--bo-color-text-primary);
    font-weight: var(--bo-font-weight-medium);
  }
  @media print {
    .bo-stepper__marker {
      border: 1px solid #000;
      background: none !important;
      color: #000 !important;
    }
    .bo-stepper__step:not(:first-child)::before {
      background: #999;
    }
  }
  .bo-stepper {
    flex-wrap: wrap;
    row-gap: var(--bo-space-2);
  }
  @container bo-stepper (max-width: 30rem) {
    .bo-stepper__step {
      min-inline-size: auto;
    }
    .bo-stepper__step:not(:first-child)::before {
      min-inline-size: var(--bo-space-2);
      margin-inline: var(--bo-space-1);
    }
    .bo-stepper__label {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip-path: inset(50%);
      white-space: nowrap;
      border: 0;
    }
  }
  @media (forced-colors: active) {
    .bo-stepper__step[aria-current="step"] .bo-stepper__marker {
      outline: 3px solid CanvasText;
      outline-offset: 1px;
    }
  }
}
@layer bo-components {
  progress.bo-progress {
    appearance: none;
    inline-size: 10rem;
    block-size: 0.5rem;
    vertical-align: middle;
    border: none;
    border-radius: var(--bo-radius-sm);
    overflow: hidden;
    background: var(--bo-color-bg-muted);
  }
  progress.bo-progress::-webkit-progress-bar {
    background: var(--bo-color-bg-muted);
  }
  progress.bo-progress::-webkit-progress-value {
    background: var(--bo-color-accent);
    border-radius: var(--bo-radius-sm);
  }
  progress.bo-progress::-moz-progress-bar {
    background: var(--bo-color-accent);
    border-radius: var(--bo-radius-sm);
  }
  progress.bo-progress--warning::-webkit-progress-value {
    background: var(--bo-color-warning-strong);
  }
  progress.bo-progress--warning::-moz-progress-bar {
    background: var(--bo-color-warning-strong);
  }
  progress.bo-progress--danger::-webkit-progress-value {
    background: var(--bo-color-danger);
  }
  progress.bo-progress--danger::-moz-progress-bar {
    background: var(--bo-color-danger);
  }
  @media (forced-colors: active) {
    progress.bo-progress {
      appearance: auto;
    }
  }
}
@layer bo-components {
  .bo-amount {
    --bo-amount-fg: var(--bo-color-text-primary);
    --bo-amount-affix-fg: var(--bo-color-text-muted);
    display: inline-flex;
    align-items: baseline;
    gap: var(--bo-space-1);
    color: var(--bo-amount-fg);
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
    white-space: nowrap;
  }
  .bo-amount__value {
    font-variant-numeric: tabular-nums;
  }
  .bo-amount__currency {
    color: var(--bo-amount-affix-fg);
    font-size: 0.875em;
  }
  .bo-amount__fraction {
    color: var(--bo-amount-affix-fg);
  }
  .bo-amount__unit {
    color: var(--bo-amount-affix-fg);
    font-size: 0.875em;
  }
  .bo-amount--block {
    display: flex;
    justify-content: flex-end;
  }
  .bo-amount--negative {
    --bo-amount-fg: var(--bo-color-danger-text);
    --bo-amount-affix-fg: var(--bo-color-danger-text);
  }
  .bo-amount--positive {
    --bo-amount-fg: var(--bo-color-success-text);
    --bo-amount-affix-fg: var(--bo-color-success-text);
  }
  .bo-amount--strong {
    font-weight: var(--bo-font-weight-semibold);
  }
  .bo-amount--muted {
    --bo-amount-fg: var(--bo-color-text-muted);
  }
}
@layer bo-components {
  .bo-byline {
    font-size: var(--bo-font-size-sm);
    color: var(--bo-color-text-secondary);
    min-inline-size: 0;
  }
  .bo-byline strong,
  .bo-byline b {
    color: var(--bo-color-text-primary);
    font-weight: var(--bo-font-weight-medium);
  }
  .bo-byline--compact {
    font-size: var(--bo-font-size-xs);
  }
  .bo-byline:has(.bo-byline__avatar) {
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-2);
  }
}
@layer bo-components {
  .bo-ordered-list {
    margin: 0;
    padding-inline-start: 1.75rem;
  }
  .bo-ordered-list > li {
    font-family: var(--bo-font-mono);
    font-size: var(--bo-font-size-sm);
    font-variant-numeric: tabular-nums;
    padding-block: 0.15rem;
  }
  .bo-ordered-list--plain > li {
    font-family: inherit;
    font-variant-numeric: normal;
  }
  .bo-ordered-list > li::marker {
    color: var(--bo-color-text-muted);
  }
  .bo-ordered-list__actions {
    display: inline-flex;
    gap: var(--bo-space-1);
    margin-inline-start: var(--bo-space-2);
    vertical-align: middle;
  }
}
@layer bo-components {
  .bo-skeleton {
    display: block;
    inline-size: 100%;
    block-size: 1em;
    border-radius: var(--bo-radius-sm);
    background: linear-gradient(
      90deg,
      var(--bo-color-bg-muted) 25%,
      var(--bo-color-skeleton-highlight) 50%,
      var(--bo-color-bg-muted) 75%
    );
    background-size: 200% 100%;
    animation: bo-skeleton-shimmer 1.8s linear infinite;
  }
  .bo-skeleton--circle {
    inline-size: 2.5rem;
    block-size: 2.5rem;
    border-radius: 50%;
  }
  .bo-skeleton--block {
    block-size: 4rem;
    border-radius: var(--bo-radius-md);
  }
  @keyframes bo-skeleton-shimmer {
    from { background-position: 150% 0; }
    to { background-position: -50% 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    .bo-skeleton {
      animation: none;
      background: var(--bo-color-bg-muted);
    }
  }
  @media (forced-colors: active) {
    .bo-skeleton {
      border: 1px solid GrayText;
    }
  }
}
@layer bo-components {
  .bo-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--bo-space-3);
    padding: var(--bo-space-8) var(--bo-space-4);
    text-align: center;
  }
  .bo-state__icon {
    font-size: 2rem;
    line-height: 1;
    color: var(--bo-color-text-muted);
  }
  .bo-state--error .bo-state__icon {
    color: var(--bo-color-danger-text);
  }
  .bo-state__title {
    font-size: var(--bo-font-size-lg);
    font-weight: var(--bo-font-weight-semibold);
    color: var(--bo-color-text-primary);
  }
  .bo-state__description {
    max-inline-size: 32ch;
    color: var(--bo-color-text-secondary);
  }
  .bo-state__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--bo-space-2);
    margin-block-start: var(--bo-space-2);
  }
}
@layer bo-components {
  body[data-scan-result]::after {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: calc(var(--bo-z-sticky-page) + 100);
    opacity: 0;
    animation: bo-scan-flash 600ms var(--bo-motion-easing-standard) forwards;
    background-clip: padding-box;
  }
  body[data-scan-result="ok"]::after {
    background-color: var(--bo-color-success);
    border: 6px solid var(--bo-color-text-primary);
  }
  body[data-scan-result="error"]::after {
    background-color: var(--bo-color-danger);
    border: 18px double var(--bo-color-text-primary);
  }
  @keyframes bo-scan-flash {
    from { opacity: 0.3; }
    to { opacity: 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    body[data-scan-result]::after {
      animation: none;
      opacity: 0.2;
    }
  }
  @media (forced-colors: active) {
    body[data-scan-result]::after {
      background: none;
      border-color: Highlight;
      animation: none;
      opacity: 1;
    }
  }
}
@layer bo-components {
  .bo-quantity {
    display: inline-flex;
    align-items: stretch;
    inline-size: 100%;
    max-inline-size: 12rem;
  }
  .bo-quantity > .bo-quantity__step {
    border-color: var(--bo-color-border-control);
  }
  .bo-quantity__step {
    flex: 0 0 auto;
    inline-size: var(--bo-density-control-height);
    padding-inline: 0;
  }
  .bo-quantity > :focus-visible {
    outline-offset: calc(-1 * var(--bo-focus-ring-width, 2px));
  }
  .bo-quantity > .bo-combobox {
    display: flex;
  }
  .bo-quantity > .bo-combobox > .bo-input {
    inline-size: 100%;
  }
  .bo-quantity > .bo-combobox:first-child > .bo-input {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
    border-inline-end: none;
  }
  .bo-quantity > .bo-combobox:last-child > .bo-input {
    border-start-start-radius: 0;
    border-end-start-radius: 0;
  }
  .bo-quantity > .bo-combobox > .bo-input:focus-visible {
    outline-offset: calc(-1 * var(--bo-focus-ring-width, 2px));
  }
  .bo-quantity > .bo-quantity__step:has(~ .bo-quantity__input) {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
  }
  .bo-quantity > .bo-quantity__input ~ .bo-quantity__step {
    border-start-start-radius: 0;
    border-end-start-radius: 0;
  }
  .bo-quantity__input {
    flex: 1 1 auto;
    min-inline-size: 3rem;
    border-radius: 0;
    margin-inline: calc(var(--bo-border-width) * -1);
    text-align: center;
    font-variant-numeric: tabular-nums;
    -moz-appearance: textfield;
  }
  .bo-quantity__input::-webkit-outer-spin-button,
  .bo-quantity__input::-webkit-inner-spin-button {
    appearance: none;
    margin: 0;
  }
  .bo-quantity:not(:has(.bo-quantity__step)) .bo-quantity__input {
    border-radius: var(--bo-radius-md);
    margin-inline: 0;
  }
  .bo-quantity:not(:has(.bo-quantity__step))
    .bo-quantity__input:has(+ .bo-quantity__unit-select, + [type="hidden"] + .bo-quantity__unit-select) {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
    border-inline-end: none;
  }
  .bo-quantity:not(:has(.bo-quantity__step))
    :is(.bo-quantity__input + .bo-quantity__unit-select, .bo-quantity__input + [type="hidden"] + .bo-quantity__unit-select) {
    margin-inline-start: 0;
    border-start-start-radius: 0;
    border-end-start-radius: 0;
  }
  .bo-quantity__unit {
    display: flex;
    align-items: center;
    padding-inline: var(--bo-space-2);
    margin-inline-start: var(--bo-space-2);
    color: var(--bo-color-text-muted);
    font-size: var(--bo-density-font-size);
    white-space: nowrap;
  }
  .bo-quantity__unit-select {
    inline-size: auto;
    flex: 0 0 auto;
    margin-inline-start: var(--bo-space-2);
  }
}
@layer bo-components {
  .bo-date {
    display: inline-flex;
    align-items: baseline;
    gap: var(--bo-space-1);
  }
  .bo-date__value {
    font-variant-numeric: tabular-nums;
  }
  .bo-date__relative {
    color: var(--bo-color-text-muted);
    font-size: var(--bo-font-size-xs);
  }
  .bo-date--overdue {
    color: var(--bo-color-danger-text);
  }
  .bo-date--overdue .bo-date__relative {
    color: inherit;
  }
}
@layer bo-components {
  .bo-segmented {
    display: inline-flex;
    flex-wrap: wrap;
    max-inline-size: 100%;
    gap: 2px;
    padding: 2px;
    background: var(--bo-color-bg-muted);
    border: 1px solid var(--bo-color-border-default);
    border-radius: var(--bo-radius-md);
  }
  .bo-segmented__input {
    position: static;
  }
  .bo-segmented__option {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--bo-space-2);
    block-size: calc(var(--bo-density-control-height) - 4px);
    padding-inline: var(--bo-space-3);
    border-radius: var(--bo-radius-sm);
    font-size: var(--bo-density-font-size);
    color: var(--bo-color-text-secondary);
    white-space: nowrap;
    cursor: pointer;
    -webkit-user-select: none;
            user-select: none;
    transition: color var(--bo-motion-duration-fast) var(--bo-motion-easing-standard),
      background-color var(--bo-motion-duration-fast) var(--bo-motion-easing-standard),
      box-shadow var(--bo-motion-duration-fast) var(--bo-motion-easing-standard);
  }
  .bo-segmented__input:checked + .bo-segmented__option {
    background: var(--bo-color-bg-surface);
    color: var(--bo-color-text-primary);
    font-weight: var(--bo-font-weight-medium);
    box-shadow: var(--bo-shadow-sm);
  }
  .bo-segmented__input:focus-visible + .bo-segmented__option {
    outline: var(--bo-focus-ring-width) solid var(--bo-color-focus-ring);
    outline-offset: var(--bo-focus-ring-offset);
  }
  .bo-segmented__input:disabled + .bo-segmented__option {
    color: var(--bo-color-text-disabled);
    cursor: not-allowed;
  }
  @media (forced-colors: active) {
    .bo-segmented__input:checked + .bo-segmented__option {
      forced-color-adjust: none;
      background: Highlight;
      color: HighlightText;
      outline-color: Highlight;
    }
    .bo-segmented__option {
      transition: none;
    }
  }
}
@layer bo-components {
  .bo-file-input {
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-2);
    font-size: var(--bo-density-font-size);
    color: var(--bo-color-text-secondary);
  }
  .bo-file-input::file-selector-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--bo-density-control-height);
    padding-inline: var(--bo-space-4);
    margin-inline-end: var(--bo-space-2);
    border: var(--bo-border-width) solid var(--bo-color-border-strong);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface);
    color: var(--bo-color-text-primary);
    font-size: var(--bo-density-font-size);
    font-weight: var(--bo-font-weight-medium);
    cursor: pointer;
    transition: background-color var(--bo-motion-duration-fast)
      var(--bo-motion-easing-standard);
  }
  .bo-file-input:hover::file-selector-button {
    background: var(--bo-color-bg-muted);
  }
  .bo-file-input:disabled::file-selector-button {
    opacity: var(--bo-state-disabled-opacity);
    cursor: not-allowed;
  }
  .bo-file-dropzone {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--bo-space-2);
    padding: var(--bo-space-6);
    border: var(--bo-border-width) dashed var(--bo-color-border-strong);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-muted);
    text-align: center;
    cursor: pointer;
  }
  .bo-file-dropzone:has(.bo-file-input:focus-visible) {
    outline: var(--bo-focus-ring-width) solid var(--bo-color-focus-ring);
    outline-offset: var(--bo-focus-ring-offset);
  }
  .bo-file-dropzone[data-dragover="true"] {
    border-style: solid;
    border-color: var(--bo-color-accent-solid);
    background: var(--bo-color-bg-selected);
  }
  .bo-file-dropzone[data-dragover="true"] .bo-file-dropzone__hint {
    color: var(--bo-color-text-secondary);
  }
  .bo-file-dropzone:has(.bo-file-input:disabled) {
    opacity: var(--bo-state-disabled-opacity);
    cursor: not-allowed;
  }
  :is(
    .bo-file-dropzone:has(.bo-file-input[aria-invalid="true"]),
    .bo-file-dropzone:has(.bo-file-input:user-invalid)
  ) {
    border-style: solid;
    border-color: var(--bo-state-error-color);
  }
  .bo-file-dropzone__hint {
    font-size: var(--bo-font-size-xs);
    color: var(--bo-color-text-muted);
  }
  .bo-file-list {
    display: flex;
    flex-direction: column;
    gap: var(--bo-space-1);
    margin-block-start: var(--bo-space-2);
    padding: 0;
    list-style: none;
  }
  .bo-file-list__item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--bo-space-2);
    padding: var(--bo-space-2) var(--bo-space-3);
    border: var(--bo-border-width) solid var(--bo-color-border-default);
    border-radius: var(--bo-radius-sm);
    font-size: var(--bo-density-font-size);
  }
  .bo-file-list__name {
    flex: 1 1 12ch;
    min-inline-size: 0;
    overflow-wrap: anywhere;
  }
  .bo-file-list__size {
    color: var(--bo-color-text-muted);
    font-size: var(--bo-font-size-xs);
  }
}
@layer bo-components {
  .bo-tag-input {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--bo-space-1);
    min-height: var(--bo-density-control-height);
    padding: calc(var(--bo-space-1) - 1px) var(--bo-space-2);
    border: var(--bo-border-width) solid var(--bo-color-border-control);
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface);
  }
  .bo-tag-input:focus-within {
    border-color: var(--bo-color-focus-ring);
  }
  .bo-tag-input--seamless {
    border-color: transparent;
    background: transparent;
  }
  .bo-tag-input--seamless:hover {
    border-color: var(--bo-color-border-control);
  }
  .bo-tag-input--seamless:focus-within {
    border-color: var(--bo-color-border-control);
    background: var(--bo-color-bg-surface);
  }
  .bo-tag-input--seamless:not(:hover, :focus-within) .bo-tag-input__remove {
    visibility: hidden;
  }
  .bo-tag-input--seamless:not(:hover, :focus-within) .bo-tag-input__field::placeholder {
    color: transparent;
  }
  @media (forced-colors: active) {
    .bo-tag-input--seamless {
      border-color: ButtonText;
    }
  }
  .bo-tag-input__tag {
    display: inline-flex;
    align-items: center;
    gap: var(--bo-space-1);
    padding-inline: var(--bo-space-2);
    padding-block: 0.125rem;
    border-radius: var(--bo-radius-full);
    background: var(--bo-color-bg-muted);
    color: var(--bo-color-text-secondary);
    font-size: var(--bo-font-size-xs);
    font-weight: var(--bo-font-weight-medium);
    white-space: nowrap;
  }
  .bo-tag-input__remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    inline-size: 1rem;
    block-size: 1rem;
    padding: 0;
    border: 0;
    border-radius: var(--bo-radius-full);
    background: transparent;
    color: inherit;
    font-size: inherit;
    line-height: 1;
    cursor: pointer;
  }
  .bo-tag-input__remove:hover {
    background: var(--bo-state-hover-overlay);
  }
  .bo-tag-input__field {
    flex: 1;
    min-inline-size: 6rem;
    padding: var(--bo-space-1) 0;
    border: 0;
    background: transparent;
    color: var(--bo-color-text-primary);
    font-size: var(--bo-density-font-size);
  }
  .bo-tag-input__field::placeholder {
    color: var(--bo-color-text-muted);
  }
  @media (forced-colors: active) {
    .bo-tag-input__tag {
      border: 1px solid CanvasText;
    }
  }
}
@layer bo-components {
  .bo-money {
    display: inline-flex;
    align-items: stretch;
  }
  .bo-money__currency {
    inline-size: auto;
  }
  .bo-combobox.bo-money__currency,
  .bo-combobox.bo-money__currency > .bo-input {
    inline-size: var(--bo-money-currency-size, 5.5rem);
  }
  .bo-money > :nth-child(1 of :not([type="hidden"])) {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
    border-inline-end: none;
  }
  .bo-money > :nth-last-child(1 of :not([type="hidden"])) {
    border-start-start-radius: 0;
    border-end-start-radius: 0;
  }
  .bo-money > :focus-visible {
    outline-offset: calc(-1 * var(--bo-focus-ring-width, 2px));
  }
  .bo-money > .bo-combobox {
    display: flex;
  }
  .bo-money > .bo-combobox > .bo-input {
    inline-size: 100%;
  }
  .bo-money > .bo-combobox:first-child > .bo-input {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
    border-inline-end: none;
  }
  .bo-money > .bo-combobox:last-child > .bo-input {
    border-start-start-radius: 0;
    border-end-start-radius: 0;
  }
  .bo-money > .bo-combobox > .bo-input:focus-visible {
    outline-offset: calc(-1 * var(--bo-focus-ring-width, 2px));
  }
  .bo-money__amount {
    text-align: end;
    font-variant-numeric: tabular-nums;
    min-inline-size: 6rem;
    max-inline-size: 9rem;
  }
}
@layer bo-components {
  .bo-tree-table [data-tree-level='2'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 1.25em); }
  .bo-tree-table [data-tree-level='3'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 2.5em); }
  .bo-tree-table [data-tree-level='4'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 3.75em); }
  .bo-tree-table [data-tree-level='5'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 5em); }
  .bo-tree-table [data-tree-level='6'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 6.25em); }
  .bo-tree-table [data-tree-level='7'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 7.5em); }
  .bo-tree-table [data-tree-level='8'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 8.75em); }
  .bo-tree-table [data-tree-level='9'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 10em); }
  .bo-tree-table [data-tree-level='10'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 11.25em); }
  .bo-tree-table [data-tree-level='11'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 12.5em); }
  .bo-tree-table [data-tree-level='12'] > :is(td, th):first-child { padding-inline-start: calc(var(--bo-space-3) + 13.75em); }
  .bo-tree-table__toggle {
    inline-size: 1.5em;
    block-size: 1.5em;
    padding: 0;
    margin-inline-end: var(--bo-space-2);
    border: none;
    border-radius: var(--bo-radius-sm);
    background: transparent;
    color: var(--bo-color-text-secondary);
    cursor: pointer;
    vertical-align: middle;
  }
  .bo-tree-table__toggle:hover {
    background: var(--bo-color-bg-hover);
    color: var(--bo-color-text-primary);
  }
  .bo-tree-table__toggle::before {
    content: '▸';
    display: inline-block;
    transition: rotate var(--bo-motion-duration-base) var(--bo-motion-easing-standard);
  }
  .bo-tree-table__toggle[aria-expanded='true']::before {
    rotate: 90deg;
  }
  [dir='rtl'] .bo-tree-table__toggle::before {
    content: '◂';
  }
  [dir='rtl'] .bo-tree-table__toggle[aria-expanded='true']::before {
    rotate: -90deg;
  }
  .bo-tree-table__spacer {
    display: inline-block;
    inline-size: 1.5em;
    margin-inline-end: var(--bo-space-2);
  }
  @media (forced-colors: active) {
    .bo-tree-table__toggle {
      border: 1px solid ButtonText;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .bo-tree-table__toggle::before {
      transition: none;
    }
  }
}
@layer bo-components {
  .bo-richtext {
    display: flex;
    flex-direction: column;
    position: relative;
    border: var(--bo-border-width) solid
      var(--bo-richtext-border, var(--bo-color-border-control));
    border-radius: var(--bo-radius-md);
    background: var(--bo-color-bg-surface);
  }
  .bo-richtext:focus-within {
    border-color: var(--bo-color-focus-ring);
  }
  .bo-richtext:has([aria-invalid='true']),
  .bo-richtext[aria-invalid='true'] {
    --bo-richtext-border: var(--bo-state-error-color);
  }
  .bo-richtext__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--bo-space-1);
    padding: var(--bo-space-1) var(--bo-space-2);
    border-block-end: var(--bo-border-width) solid var(--bo-color-border-default);
    background: var(--bo-color-bg-muted);
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
  }
  .bo-richtext__toolbar-toggle[aria-expanded='true'] {
    background: var(--bo-color-bg-muted);
    color: var(--bo-color-text-primary);
  }
  .bo-richtext__toolbar-toggle {
    position: absolute;
    inset-block-start: var(--bo-space-1);
    inset-inline-end: var(--bo-space-1);
    z-index: 1;
  }
  .bo-richtext:has(.bo-richtext__toolbar-toggle) .bo-richtext__toolbar {
    padding-inline-end: calc(var(--bo-density-control-height) + var(--bo-space-2));
  }
  .bo-richtext:has(.bo-richtext__toolbar-toggle[aria-expanded='false']) > .bo-richtext__toolbar {
    display: none;
  }
  .bo-richtext__toolbar-collapse {
    display: grid;
    grid-template-rows: 1fr;
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    transition: grid-template-rows var(--bo-motion-duration-base)
      var(--bo-motion-easing-standard);
  }
  .bo-richtext__toolbar-collapse > * {
    min-block-size: 0;
    overflow: hidden;
  }
  .bo-richtext:has(.bo-richtext__toolbar-toggle[aria-expanded='false'])
    .bo-richtext__toolbar-collapse {
    grid-template-rows: 0fr;
  }
  .bo-richtext__toolbar-collapse .bo-richtext__toolbar {
    transition:
      padding-block var(--bo-motion-duration-base) var(--bo-motion-easing-standard),
      border-block-end-width var(--bo-motion-duration-base) var(--bo-motion-easing-standard);
  }
  .bo-richtext:has(.bo-richtext__toolbar-toggle[aria-expanded='false'])
    .bo-richtext__toolbar-collapse
    .bo-richtext__toolbar {
    padding-block: 0;
    border-block-end-width: 0;
  }
  .bo-richtext__group {
    display: flex;
    align-items: center;
    gap: var(--bo-space-1);
  }
  .bo-richtext__group + .bo-richtext__group {
    padding-inline-start: var(--bo-space-1);
    border-inline-start: var(--bo-border-width) solid var(--bo-color-border-strong);
  }
  .bo-richtext__divider {
    align-self: stretch;
    margin-block: var(--bo-space-1);
    border-inline-start: var(--bo-border-width) solid var(--bo-color-border-strong);
  }
  .bo-richtext__content {
    min-block-size: calc(var(--bo-density-row-height) * 3);
    padding: var(--bo-space-2) var(--bo-space-3);
    font-size: var(--bo-density-font-size);
    overflow-y: auto;
    resize: vertical;
  }
  .bo-richtext__content {
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  .bo-richtext__content:first-child,
  .bo-richtext--readonly .bo-richtext__content {
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
  }
  .bo-richtext__content[data-empty]::before {
    content: attr(data-placeholder);
    color: var(--bo-color-text-muted);
    pointer-events: none;
  }
  .bo-richtext--readonly .bo-richtext__toolbar {
    display: none;
  }
  .bo-richtext--readonly .bo-richtext__content {
    background: var(--bo-color-bg-muted);
    resize: none;
  }
  .bo-richtext--disabled {
    background: var(--bo-color-bg-muted);
    color: var(--bo-color-text-disabled);
    cursor: not-allowed;
  }
  .bo-richtext--disabled .bo-richtext__toolbar .bo-btn {
    pointer-events: none;
    color: var(--bo-color-text-disabled);
  }
}
@layer bo-components {
  .bo-prose {
    color: var(--bo-color-text-primary);
    line-height: var(--bo-line-height-normal);
  }
  .bo-prose :is(h1, h2, h3, h4, h5, h6) {
    margin-block: var(--bo-space-4) var(--bo-space-2);
    line-height: var(--bo-line-height-tight);
  }
  .bo-prose h1 { font-size: var(--bo-font-size-xl); }
  .bo-prose h2 { font-size: var(--bo-font-size-lg); }
  .bo-prose h3 { font-size: var(--bo-font-size-md); }
  .bo-prose h4 { font-size: var(--bo-font-size-base); }
  .bo-prose :is(h5, h6) { font-size: var(--bo-font-size-sm); }
  .bo-prose > :first-child { margin-block-start: 0; }
  .bo-prose > :last-child { margin-block-end: 0; }
  .bo-prose p,
  .bo-prose ul,
  .bo-prose ol,
  .bo-prose blockquote,
  .bo-prose pre,
  .bo-prose table {
    margin-block: 0 var(--bo-space-3);
  }
  .bo-prose :is(ul, ol) {
    padding-inline-start: var(--bo-space-6);
  }
  .bo-prose blockquote {
    margin-inline: 0;
    padding-inline-start: var(--bo-space-3);
    border-inline-start: 3px solid var(--bo-color-border-strong);
    color: var(--bo-color-text-secondary);
  }
  .bo-prose :is(code, pre) {
    font-family: var(--bo-font-mono);
    font-size: var(--bo-font-size-mono-inline);
    background: var(--bo-color-bg-muted);
    border-radius: var(--bo-radius-sm);
  }
  .bo-prose code { padding: 0.1em 0.35em; }
  .bo-prose pre {
    padding: var(--bo-space-3);
    overflow-x: auto;
  }
  .bo-prose pre code { padding: 0; background: none; }
  .bo-prose hr {
    border: 0;
    border-block-start: var(--bo-border-width) solid var(--bo-color-border-default);
    margin-block: var(--bo-space-4);
  }
  .bo-prose table {
    border-collapse: collapse;
    inline-size: 100%;
  }
  .bo-prose :is(th, td) {
    border: var(--bo-border-width) solid var(--bo-color-border-default);
    padding: var(--bo-space-1) var(--bo-space-2);
    text-align: start;
  }
  .bo-prose th {
    background: var(--bo-color-bg-muted);
    font-weight: var(--bo-font-weight-medium);
  }
}
@layer bo-components {
  .bo-avatar {
    inline-size: 1.8em;
    block-size: 1.8em;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--bo-color-bg-muted);
    color: var(--bo-color-text-secondary);
    font-size: 0.7em;
    font-weight: var(--bo-font-weight-semibold);
    line-height: 1;
  }
  .bo-avatar:has(img) {
    overflow: hidden;
  }
  .bo-avatar img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
  }
  .bo-avatar-stack {
    display: inline-flex;
  }
  .bo-avatar-stack .bo-avatar {
    border: 2px solid var(--bo-color-bg-surface);
  }
  .bo-avatar-stack .bo-avatar + .bo-avatar {
    margin-inline-start: -0.5em;
  }
  @media (forced-colors: active) {
    .bo-avatar {
      border: 1px solid CanvasText;
    }
  }
}
@layer bo-components {
  .bo-kv {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
    gap: var(--bo-space-3) var(--bo-space-4);
    margin: 0;
  }
  .bo-kv dt {
    font-size: var(--bo-font-size-xs);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--bo-color-text-muted);
  }
  .bo-kv dd {
    margin: 0;
    font-size: var(--bo-density-font-size);
    color: var(--bo-color-text-primary);
  }
  .bo-kv--rows {
    grid-template-columns: max-content 1fr;
    row-gap: var(--bo-space-2);
  }
  .bo-kv--rows > div {
    display: grid;
    grid-template-columns: max-content 1fr;
    grid-column: 1 / -1;
    align-items: baseline;
    column-gap: var(--bo-space-3);
  }
  @supports (grid-template-columns: subgrid) {
    .bo-kv--rows > div {
      grid-template-columns: subgrid;
    }
  }
}
@layer bo-components {
  .bo-kbd {
    display: inline-block;
    min-inline-size: 1.4em;
    padding: 0.1em 0.4em;
    border: var(--bo-border-width) solid var(--bo-color-border-strong);
    border-block-end-width: calc(var(--bo-border-width) * 2);
    border-radius: var(--bo-radius-sm);
    background: var(--bo-color-bg-muted);
    color: var(--bo-color-text-secondary);
    font-family: var(--bo-font-mono);
    font-size: var(--bo-font-size-mono-inline);
    line-height: 1.3;
    text-align: center;
    text-transform: none;
    letter-spacing: normal;
  }
}
@layer bo-components {
  .bo-calendar {
    display: flex;
    flex-wrap: wrap;
    gap: var(--bo-space-5);
  }
  .bo-calendar__month {
    border-collapse: collapse;
    font-variant-numeric: tabular-nums;
  }
  .bo-calendar__month caption {
    padding-block-end: var(--bo-space-2);
    color: var(--bo-color-text-primary);
    font-size: var(--bo-density-font-size);
    font-weight: var(--bo-font-weight-medium);
    text-align: start;
  }
  .bo-calendar__month th {
    padding: var(--bo-space-1);
    color: var(--bo-color-text-muted);
    font-size: var(--bo-font-size-xs);
    font-weight: var(--bo-font-weight-medium);
  }
  .bo-calendar__month td {
    padding: 0;
    text-align: center;
  }
  .bo-calendar__day {
    display: flex;
    align-items: center;
    justify-content: center;
    min-inline-size: 2.25em;
    min-block-size: 2.25em;
    border-radius: var(--bo-radius-sm);
    color: var(--bo-color-text-primary);
  }
  .bo-calendar__day--outside {
    color: var(--bo-color-text-muted);
  }
  .bo-calendar__day[data-day="today"] {
    outline: 2px solid var(--bo-color-accent);
    outline-offset: -2px;
    font-weight: var(--bo-font-weight-medium);
  }
  .bo-calendar__day[data-day="closed"] {
    background: repeating-linear-gradient(
      45deg,
      transparent 0 3px,
      var(--bo-color-border-default) 3px 4px
    );
    color: var(--bo-color-text-muted);
  }
  .bo-calendar__day[data-day="holiday"] {
    position: relative;
    color: var(--bo-color-danger-text);
    font-weight: var(--bo-font-weight-medium);
  }
  .bo-calendar__day[data-day="holiday"]::after {
    content: "";
    position: absolute;
    inset-block-end: 0.15em;
    inline-size: 0.3em;
    block-size: 0.3em;
    border-radius: var(--bo-radius-full);
    background: currentcolor;
  }
  .bo-calendar__day[data-day="selected"] {
    border: var(--bo-border-width) solid var(--bo-color-accent);
    background: var(--bo-color-bg-selected);
    color: var(--bo-color-accent-text);
    font-weight: var(--bo-font-weight-medium);
  }
  a.bo-calendar__day,
  button.bo-calendar__day {
    text-decoration: none;
    cursor: pointer;
  }
  a.bo-calendar__day:hover,
  button.bo-calendar__day:hover {
    background-color: var(--bo-state-hover-overlay);
  }
  @media (forced-colors: active) {
    .bo-calendar__day[data-day="selected"] {
      outline: 2px solid Highlight;
      outline-offset: -2px;
    }
  }
}
@layer bo-utilities {
  .bo-u-hidden {
    display: none !important;
  }
  .bo-u-text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .bo-u-text-nowrap {
    white-space: nowrap;
  }
  .bo-u-text-right {
    text-align: end;
  }
  .bo-u-text-muted {
    color: var(--bo-color-text-muted);
  }
  .bo-u-mono {
    font-family: var(--bo-font-mono);
  }
  .bo-u-tabular {
    font-variant-numeric: tabular-nums;
  }
    @media print {
  .bo-u-print-hidden {
      display: none !important;
  }
    }
  [data-bo-theming],
  [data-bo-theming] *,
  [data-bo-theming] *::before,
  [data-bo-theming] *::after {
    transition: none !important;
  }
}
@layer bo-utilities {
  @media print {
    @page {
      margin: 1.6cm;
    }
    body {
      font-size: 10pt;
      line-height: 1.4;
    }
    p,
    li {
      orphans: 3;
      widows: 3;
    }
    h1,
    h2,
    h3,
    h4 {
      break-after: avoid;
    }
    .bo-data-table thead,
    .bo-prose thead {
      display: table-header-group;
    }
    .bo-data-table tr,
    .bo-prose tr {
      break-inside: avoid;
    }
    .bo-form-section,
    .bo-widget,
    .bo-timeline__step,
    .bo-audit__entry,
    .bo-stat {
      break-inside: avoid;
    }
    dialog,
    [popover],
    .bo-richtext__toolbar {
      display: none !important;
    }
    .bo-print-report a[href^="http"]::after {
      content: " (" attr(href) ")" / "";
      font-size: 0.85em;
      color: #555;
    }
    .bo-timeline__marker,
    .bo-stepper__marker {
      -webkit-print-color-adjust: exact;
              print-color-adjust: exact;
    }
  }
  .bo-u-print-only {
    display: none;
  }
  @media print {
    .bo-u-print-exact {
      -webkit-print-color-adjust: exact;
      print-color-adjust: exact;
    }
  }
  @media print {
    .bo-u-print-only {
      display: revert;
    }
    .bo-u-break-before {
      break-before: page;
    }
    .bo-u-avoid-break {
      break-inside: avoid;
    }
  }
}
