/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer tokens, base, components;
@layer tokens {
  :root {
    color-scheme: light;
    --font-family-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --color-white: #ffffff;
    --color-page-bg: #f4f7fa;
    --color-surface: #ffffff;
    --color-surface-muted: #f3f5f8;
    --color-surface-selected: #eff6ff;
    --color-text-primary: #172033;
    --color-text-secondary: #506486;
    --color-text-tertiary: #7e8ea9;
    --color-text-placeholder: #92a4c3;
    --color-border: #d7dfea;
    --color-border-strong: #c8ced8;
    --color-primary-50: #eff6ff;
    --color-primary-100: #dbeafe;
    --color-primary-200: #bfdbfe;
    --color-primary-500: #3b82f6;
    --color-primary-600: #2563eb;
    --color-primary-700: #1d4ed8;
    --color-primary-800: #1e40af;
    --color-danger-50: #fef2f2;
    --color-danger-100: #fee2e2;
    --color-danger-500: #ef4444;
    --color-danger-600: #dc2626;
    --color-danger-700: #b91c1c;
    --color-warning-50: #fff9eb;
    --color-warning-300: #f9cf6c;
    --color-warning-700: #894c06;
    --color-success-50: #effbf5;
    --color-success-500: #0ea472;
    --color-success-700: #076e4f;
    --focus-ring: 0 0 0 0.1875rem #93c5fd73;
    --radius-sm: 0.375rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --shadow-sm: 0 0.0625rem 0.125rem #1720330f;
    --shadow-md: 0 0.25rem 0.75rem #17203314;
    --control-height-sm: 2rem;
    --control-height-md: 2.75rem;
    --control-height-lg: 3.5rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-10: 2.5rem;
    --space-12: 3rem;
    --button-padding-y: 0.5rem;
    --button-padding-x: 0.75rem;
    --button-radius: 0.375rem;
    --button-font-weight: 500;
    --button-primary-bg: #2563eb;
    --button-primary-bg-hover: #1d4ed8;
    --button-primary-border: #2563eb;
    --button-primary-border-hover: #1d4ed8;
    --button-primary-fg: #ffffff;
    --button-secondary-bg: #ffffff;
    --button-secondary-bg-hover: #f3f5f8;
    --button-secondary-border: #c8ced8;
    --button-secondary-border-hover: #bfdbfe;
    --button-secondary-fg: #172033;
    --button-destructive-bg: #dc2626;
    --button-destructive-bg-hover: #b91c1c;
    --button-destructive-border: #dc2626;
    --button-destructive-border-hover: #b91c1c;
    --button-destructive-fg: #ffffff;
    --button-destructive-secondary-bg: #ffffff;
    --button-destructive-secondary-bg-hover: #fef2f2;
    --button-destructive-secondary-border: #fee2e2;
    --button-destructive-secondary-border-hover: #ef4444;
    --button-destructive-secondary-fg: #dc2626;
    --button-ghost-bg-hover: #eff6ff;
    --button-ghost-fg: #2563eb;
    --input-bg: var(--color-surface);
    --input-bg-hover: var(--color-surface);
    --input-bg-active: var(--color-surface);
    --input-bg-disabled: var(--color-surface-muted);
    --input-bg-filled: var(--color-surface-muted);
    --input-bg-filled-hover: #e9edf3;
    --input-border: var(--color-border-strong);
    --input-border-disabled: var(--color-border);
    --input-border-hover: var(--color-primary-500);
    --input-border-focus: var(--color-primary-600);
    --input-border-invalid: var(--color-danger-500);
    --input-border-warning: #d97706;
    --input-fg: var(--color-text-primary);
    --input-fg-disabled: var(--color-text-tertiary);
    --input-placeholder: var(--color-text-placeholder);
    --input-focus-shadow: 0 0 0 0.125rem #3b82f629;
    --input-invalid-shadow: 0 0 0 0.125rem #ef444429;
    --input-warning-shadow: 0 0 0 0.125rem #f59e0b29;
    --input-action-bg-hover: transparent;
    --input-action-fg: var(--color-text-secondary);
    --input-action-fg-hover: var(--color-text-primary);
    --input-control-height-sm: 1.5rem;
    --input-control-height-md: 2rem;
    --input-control-height-lg: 2.5rem;
    --input-radius-sm: 0.25rem;
    --input-radius-md: 0.375rem;
    --input-radius-lg: 0.5rem;
    --chip-default-bg: var(--color-surface-muted);
    --chip-default-border: var(--color-border);
    --chip-default-fg: var(--color-text-secondary);
    --chip-filter-bg: var(--color-primary-50);
    --chip-filter-border: var(--color-primary-200);
    --chip-filter-fg: var(--color-primary-700);
    --chip-success-bg: var(--color-success-50);
    --chip-success-border: #bce7d6;
    --chip-success-fg: var(--color-success-700);
    --chip-warning-bg: var(--color-warning-50);
    --chip-warning-border: var(--color-warning-300);
    --chip-warning-fg: var(--color-warning-700);
    --chip-error-bg: var(--color-danger-50);
    --chip-error-border: var(--color-danger-500);
    --chip-error-fg: var(--color-danger-700);
    --chip-remove-bg-hover: #3b82f61a;
    --card-bg: var(--color-surface);
    --card-fg: var(--color-text-primary);
    --card-border: var(--color-border);
    --card-elevated-border: #e1e7ef;
    --card-muted-bg: var(--color-surface-muted);
    --card-selected-bg: var(--color-surface-selected);
    --card-selected-border: var(--color-primary-500);
    --card-warning-bg: var(--color-warning-50);
    --card-warning-border: var(--color-warning-300);
    --card-error-bg: var(--color-danger-50);
    --card-error-border: var(--color-danger-500);
    --avatar-default-bg: var(--color-primary-100);
    --avatar-default-fg: var(--color-primary-700);
    --avatar-purple-bg: #f3e8ff;
    --avatar-purple-fg: #7e22ce;
    --avatar-green-bg: var(--color-success-50);
    --avatar-green-fg: var(--color-success-700);
    --avatar-orange-bg: var(--color-warning-50);
    --avatar-orange-fg: var(--color-warning-700);
    --avatar-border: var(--color-surface);
    --avatar-status-bg: var(--color-success-500);
    --form-field-label-fg: var(--color-text-secondary);
    --form-field-required-fg: var(--color-danger-600);
    --form-field-hint-fg: var(--color-text-tertiary);
    --form-field-error-fg: var(--color-danger-600);
    --form-field-invalid-label-fg: var(--color-danger-700);
    --form-field-warning-fg: var(--color-warning-700);
    --form-field-optional-fg: var(--color-text-tertiary);
  }
}
@layer base {
  *, *::before, *::after {
    box-sizing: border-box;
  }
  html {
    color: var(--color-text-primary);
    background: var(--color-page-bg);
  }
  body {
    margin: 0;
    font-family: var(--font-family-ui);
  }
  button, input, textarea, select {
    font: inherit;
  }
  button {
    color: inherit;
  }
  svg {
    display: block;
  }
  :focus-visible {
    outline: none;
  }
}
@layer components {
  .icon-sprite {
    position: absolute;
    overflow: hidden;
  }
  .icon {
    --icon-size: 1.25rem;
    inline-size: var(--icon-size);
    block-size: var(--icon-size);
    flex: none;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .icon--xs {
    --icon-size: 0.875rem;
  }
  .icon--sm {
    --icon-size: 1rem;
  }
  .icon--lg {
    --icon-size: 1.5rem;
  }
  .icon--muted {
    color: var(--color-text-tertiary);
  }
  .icon--primary {
    color: var(--color-primary-600);
  }
  .icon--danger {
    color: var(--color-danger-600);
  }
  .icon--success {
    color: var(--color-success-500);
  }
  .button {
    --button-height: var(--control-height-md);
    --button-gap: 0.5rem;
    --button-font-size: 0.9375rem;
    position: relative;
    display: inline-flex;
    min-block-size: var(--button-height);
    align-items: center;
    justify-content: center;
    gap: var(--button-gap);
    padding-block: var(--button-padding-y);
    padding-inline: var(--button-padding-x);
    border: 0.0625rem solid transparent;
    border-radius: var(--button-radius);
    font: inherit;
    font-size: var(--button-font-size);
    font-weight: var(--button-font-weight);
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    user-select: none;
    transition: background-color 120ms ease-out, border-color 120ms ease-out, color 120ms ease-out, transform 80ms cubic-bezier(0.2, 0, 0, 1);
  }
  .button:focus-visible {
    box-shadow: var(--focus-ring);
  }
  .button:disabled, .button[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.5;
  }
  .button--primary {
    border-color: var(--button-primary-border);
    background: var(--button-primary-bg);
    color: var(--button-primary-fg);
    box-shadow: var(--shadow-sm);
  }
  .button--primary:hover:not(:disabled, [aria-disabled="true"]), .button--primary:active:not(:disabled, [aria-disabled="true"]) {
    border-color: var(--button-primary-border-hover);
    background: var(--button-primary-bg-hover);
  }
  .button--secondary {
    border-color: var(--button-secondary-border);
    background: var(--button-secondary-bg);
    color: var(--button-secondary-fg);
  }
  .button--secondary:hover:not(:disabled, [aria-disabled="true"]), .button--secondary:active:not(:disabled, [aria-disabled="true"]) {
    border-color: var(--button-secondary-border-hover);
    background: var(--button-secondary-bg-hover);
  }
  .button--ghost {
    border-color: transparent;
    background: transparent;
    color: var(--button-ghost-fg);
  }
  .button--ghost:hover:not(:disabled, [aria-disabled="true"]), .button--ghost:active:not(:disabled, [aria-disabled="true"]) {
    background: var(--button-ghost-bg-hover);
  }
  .button--destructive {
    border-color: var(--button-destructive-border);
    background: var(--button-destructive-bg);
    color: var(--button-destructive-fg);
  }
  .button--destructive:hover:not(:disabled, [aria-disabled="true"]), .button--destructive:active:not(:disabled, [aria-disabled="true"]) {
    border-color: var(--button-destructive-border-hover);
    background: var(--button-destructive-bg-hover);
  }
  .button--destructive-secondary {
    border-color: var(--button-destructive-secondary-border);
    background: var(--button-destructive-secondary-bg);
    color: var(--button-destructive-secondary-fg);
  }
  .button--destructive-secondary:hover:not(:disabled, [aria-disabled="true"]), .button--destructive-secondary:active:not(:disabled, [aria-disabled="true"]) {
    border-color: var(--button-destructive-secondary-border-hover);
    background: var(--button-destructive-secondary-bg-hover);
  }
  .button--sm {
    --button-height: var(--control-height-sm);
    --button-padding-y: 0.375rem;
    --button-padding-x: 0.75rem;
    --button-gap: 0.375rem;
    --button-font-size: 0.8125rem;
  }
  .button--lg {
    --button-height: var(--control-height-lg);
    --button-padding-y: 0.625rem;
    --button-padding-x: 1.375rem;
    --button-gap: 0.625rem;
    --button-font-size: 1rem;
  }
  .button--icon-only {
    inline-size: var(--button-height);
    padding: 0;
  }
  .button--full-width {
    inline-size: 100%;
  }
  .button__spinner {
    inline-size: 1rem;
    block-size: 1rem;
    border: 0.125rem solid currentColor;
    border-inline-end-color: transparent;
    border-radius: 50%;
    animation: button-spinner-spin 700ms linear infinite;
  }
  @keyframes button-spinner-spin {
    to {
      transform: rotate(1turn);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .button {
      transition: none;
    }
    .button::after {
      transition: none;
    }
    .button:active:not(:disabled, [aria-disabled="true"]) {
      transform: none;
    }
    .button__spinner {
      border-inline-end-color: currentColor;
      opacity: 0.65;
      animation: none;
    }
  }
  .input {
    --input-height: var(--input-control-height-md);
    --input-padding-x: 0.6875rem;
    --input-gap: 0.25rem;
    --input-font-size: 0.875rem;
    --input-radius: var(--input-radius-md);
    position: relative;
    display: inline-flex;
    inline-size: 100%;
    min-inline-size: 0;
    block-size: var(--input-height);
    align-items: center;
    gap: var(--input-gap);
    padding-inline: var(--input-padding-x);
    border: 0.0625rem solid var(--input-border);
    border-radius: var(--input-radius);
    background: var(--input-bg);
    color: var(--input-fg);
    font-size: var(--input-font-size);
    line-height: 1.5715;
    vertical-align: top;
    cursor: text;
    transition: border-color 200ms ease, box-shadow 200ms ease, background-color 200ms ease;
  }
  .input:hover:not(.input--disabled, [data-disabled="true"]) {
    border-color: var(--input-border-hover);
    background: var(--input-bg-hover);
  }
  .input:focus-within:not(.input--disabled, [data-disabled="true"], .input--borderless, .input--underlined) {
    border-color: var(--input-border-focus);
    background: var(--input-bg-active);
    box-shadow: var(--input-focus-shadow);
  }
  .input__control {
    min-inline-size: 0;
    inline-size: 100%;
    block-size: 100%;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    line-height: inherit;
  }
  select.input__control {
    padding-inline: var(--input-padding-x);
    cursor: pointer;
  }
  .input:has(> select.input__control:only-child) {
    padding-inline: 0;
  }
  .input__control::placeholder {
    color: var(--input-placeholder);
    opacity: 1;
    text-overflow: ellipsis;
    user-select: none;
  }
  .input__control[type="search"]::-webkit-search-cancel-button, .input__control[type="search"]::-webkit-search-decoration {
    appearance: none;
  }
  .input__leading, .input__trailing, .input__prefix, .input__suffix {
    display: inline-flex;
    flex: none;
    align-items: center;
    justify-content: center;
    color: var(--color-text-tertiary);
  }
  .input__action {
    display: inline-flex;
    min-inline-size: 1.125rem;
    min-block-size: 1.125rem;
    flex: none;
    align-items: center;
    justify-content: center;
    margin-inline: -0.125rem;
    padding: 0.125rem;
    border: 0;
    border-radius: var(--input-radius-sm);
    background: transparent;
    color: var(--input-action-fg);
    line-height: 0;
    cursor: pointer;
    transition: color 200ms ease, background-color 200ms ease;
  }
  .input__action:hover:not(:disabled) {
    background: var(--input-action-bg-hover);
    color: var(--input-action-fg-hover);
  }
  .input__action:focus-visible {
    outline: 0.0625rem solid var(--input-border-focus);
    outline-offset: 0.0625rem;
  }
  .input__action:disabled {
    color: var(--input-fg-disabled);
    cursor: not-allowed;
  }
  .input--sm {
    --input-height: var(--input-control-height-sm);
    --input-padding-x: 0.4375rem;
    --input-font-size: 0.875rem;
    --input-radius: var(--input-radius-sm);
  }
  .input--lg {
    --input-height: var(--input-control-height-lg);
    --input-padding-x: 0.6875rem;
    --input-font-size: 1rem;
    --input-radius: var(--input-radius-lg);
  }
  .input--invalid, .input[data-invalid="true"] {
    border-color: var(--input-border-invalid);
  }
  .input--invalid:hover:not(.input--disabled), .input[data-invalid="true"]:hover:not([data-disabled="true"]) {
    border-color: var(--color-danger-600);
  }
  .input--invalid:focus-within:not(.input--disabled), .input[data-invalid="true"]:focus-within:not([data-disabled="true"]) {
    border-color: var(--input-border-invalid);
    box-shadow: var(--input-invalid-shadow);
  }
  .input--invalid .input__leading, .input--invalid .input__trailing, .input--invalid .input__prefix, .input--invalid .input__suffix {
    color: var(--input-border-invalid);
  }
  .input--warning, .input[data-warning="true"] {
    border-color: var(--input-border-warning);
  }
  .input--warning:hover:not(.input--disabled), .input[data-warning="true"]:hover:not([data-disabled="true"]) {
    border-color: var(--color-warning-700);
  }
  .input--warning:focus-within:not(.input--disabled), .input[data-warning="true"]:focus-within:not([data-disabled="true"]) {
    border-color: var(--input-border-warning);
    box-shadow: var(--input-warning-shadow);
  }
  .input--warning .input__leading, .input--warning .input__trailing, .input--warning .input__prefix, .input--warning .input__suffix {
    color: var(--input-border-warning);
  }
  .input--disabled, .input[data-disabled="true"] {
    background: var(--input-bg-disabled);
    border-color: var(--input-border-disabled);
    color: var(--input-fg-disabled);
    box-shadow: none;
    cursor: not-allowed;
  }
  .input--disabled .input__control, .input[data-disabled="true"] .input__control {
    cursor: not-allowed;
  }
  .input--filled {
    border-color: transparent;
    background: var(--input-bg-filled);
  }
  .input--filled:hover:not(.input--disabled) {
    border-color: transparent;
    background: var(--input-bg-filled-hover);
  }
  .input--filled:focus-within:not(.input--disabled) {
    border-color: var(--input-border-focus);
    background: var(--input-bg-active);
  }
  .input--borderless {
    border-color: transparent;
    background: transparent;
  }
  .input--borderless:hover:not(.input--disabled) {
    border-color: transparent;
    background: transparent;
  }
  .input--borderless:has(.input__control:focus-visible) {
    outline: 0.0625rem solid var(--input-border-focus);
    outline-offset: -0.0625rem;
  }
  .input--underlined {
    border-color: transparent transparent var(--input-border) transparent;
    border-radius: 0;
    background: transparent;
  }
  .input--underlined:hover:not(.input--disabled) {
    border-color: transparent transparent var(--input-border-hover) transparent;
    background: transparent;
  }
  .input--underlined:focus-within:not(.input--disabled) {
    border-color: transparent transparent var(--input-border-focus) transparent;
    box-shadow: none;
  }
  .input--underlined.input--invalid, .input--underlined.input--invalid:hover, .input--underlined.input--invalid:focus-within {
    border-color: transparent transparent var(--input-border-invalid) transparent;
    box-shadow: none;
  }
  .input--underlined.input--warning, .input--underlined.input--warning:hover, .input--underlined.input--warning:focus-within {
    border-color: transparent transparent var(--input-border-warning) transparent;
    box-shadow: none;
  }
  .input--filled.input--invalid {
    border-color: var(--input-border-invalid);
    background: var(--color-danger-50);
  }
  .input--filled.input--invalid:hover, .input--filled.input--invalid:focus-within {
    border-color: var(--input-border-invalid);
    background: var(--input-bg-active);
  }
  .input--filled.input--warning {
    border-color: var(--input-border-warning);
    background: var(--color-warning-50);
  }
  .input--filled.input--warning:hover, .input--filled.input--warning:focus-within {
    border-color: var(--input-border-warning);
    background: var(--input-bg-active);
  }
  .input--borderless.input--invalid, .input--borderless.input--warning {
    border-color: transparent;
    box-shadow: none;
  }
  .input--borderless.input--invalid:has(.input__control:focus-visible) {
    outline-color: var(--input-border-invalid);
  }
  .input--borderless.input--warning:has(.input__control:focus-visible) {
    outline-color: var(--input-border-warning);
  }
  .input--textarea {
    block-size: auto;
    min-block-size: 5rem;
    align-items: flex-start;
    padding: 0;
  }
  .input--textarea .input__control {
    min-block-size: calc(5rem - 0.125rem);
    align-self: stretch;
    padding: 0.3125rem var(--input-padding-x);
    block-size: auto;
    line-height: 1.5715;
    resize: vertical;
  }
  .input--textarea .input__action {
    margin-block-start: 0.0625rem;
  }
  .input-group {
    --input-group-height: var(--input-control-height-md);
    --input-group-radius: var(--input-radius-md);
    --input-group-font-size: 0.875rem;
    display: inline-flex;
    inline-size: 100%;
    min-inline-size: 0;
    align-items: stretch;
    vertical-align: top;
  }
  .input-group > * {
    position: relative;
  }
  .input-group > * + * {
    margin-inline-start: -0.0625rem;
  }
  .input-group > .input {
    flex: 1 1 auto;
  }
  .input-group > :first-child {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
  }
  .input-group > :last-child {
    border-start-start-radius: 0;
    border-end-start-radius: 0;
  }
  .input-group > :not(:first-child, :last-child) {
    border-radius: 0;
  }
  .input-group > :hover, .input-group > :focus-within {
    z-index: 1;
  }
  .input-group__button {
    display: inline-flex;
    flex: none;
    align-items: center;
    justify-content: center;
    min-block-size: var(--input-group-height);
    padding-inline: 0.6875rem;
    border: 0.0625rem solid var(--input-border);
    border-radius: var(--input-group-radius);
    font-size: var(--input-group-font-size);
    line-height: 1;
    white-space: nowrap;
    border-color: var(--color-primary-600);
    background: var(--color-primary-600);
    color: var(--color-white);
    cursor: pointer;
    transition: background-color 200ms ease, border-color 200ms ease;
  }
  .input-group__button:hover {
    border-color: var(--color-primary-700);
    background: var(--color-primary-700);
  }
  .input-group__button:focus-visible {
    z-index: 2;
    outline: 0;
    box-shadow: var(--input-focus-shadow);
  }
  .input-group--lg .input {
    --input-height: var(--input-control-height-lg);
    --input-font-size: 1rem;
    --input-radius: var(--input-radius-lg);
  }
  .input-group--lg {
    --input-group-height: var(--input-control-height-lg);
    --input-group-radius: var(--input-radius-lg);
    --input-group-font-size: 1rem;
  }
  .input.input--disabled, .input[data-disabled="true"] {
    border-color: var(--input-border-disabled);
    background: var(--input-bg-disabled);
    box-shadow: none;
  }
  .input--borderless.input--disabled {
    border-color: transparent;
    background: transparent;
  }
  .input--underlined.input--disabled {
    border-color: transparent transparent var(--input-border-disabled) transparent;
    background: transparent;
  }
  @media (prefers-reduced-motion: reduce) {
    .input, .input__action, .input-group__button {
      transition: none;
    }
  }
  .form-field {
    display: grid;
    min-inline-size: 0;
    gap: 0.4375rem;
  }
  .form-field__label {
    color: var(--form-field-label-fg);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.3;
  }
  .form-field__required {
    color: var(--form-field-required-fg);
  }
  .form-field__hint, .form-field__error {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.4;
  }
  .form-field__hint {
    color: var(--form-field-hint-fg);
  }
  .form-field__error {
    color: var(--form-field-error-fg);
  }
  .form-field--invalid .form-field__label {
    color: var(--form-field-invalid-label-fg);
  }
  .form-field--warning .form-field__label, .form-field--warning .form-field__hint {
    color: var(--form-field-warning-fg);
  }
  .form-field--disabled {
    color: var(--color-text-tertiary);
  }
  .form-field--disabled .form-field__label {
    color: var(--color-text-tertiary);
  }
  .form-field__row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--space-3);
  }
  .form-field__optional {
    color: var(--form-field-optional-fg);
    font-size: 0.75rem;
    font-weight: 400;
  }
  .chip {
    --chip-bg: var(--chip-default-bg);
    --chip-border: var(--chip-default-border);
    --chip-fg: var(--chip-default-fg);
    display: inline-flex;
    min-block-size: 2rem;
    align-items: center;
    gap: 0.375rem;
    padding: 0.3125rem 0.625rem;
    border: 0.0625rem solid var(--chip-border);
    border-radius: var(--radius-sm);
    background: var(--chip-bg);
    color: var(--chip-fg);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.2;
  }
  .chip--filter, .chip--selected {
    --chip-bg: var(--chip-filter-bg);
    --chip-border: var(--chip-filter-border);
    --chip-fg: var(--chip-filter-fg);
  }
  .chip--success {
    --chip-bg: var(--chip-success-bg);
    --chip-border: var(--chip-success-border);
    --chip-fg: var(--chip-success-fg);
  }
  .chip--warning {
    --chip-bg: var(--chip-warning-bg);
    --chip-border: var(--chip-warning-border);
    --chip-fg: var(--chip-warning-fg);
  }
  .chip--error {
    --chip-bg: var(--chip-error-bg);
    --chip-border: var(--chip-error-border);
    --chip-fg: var(--chip-error-fg);
  }
  .chip__remove {
    display: inline-grid;
    inline-size: 1.5rem;
    block-size: 1.5rem;
    place-items: center;
    margin: -0.1875rem -0.25rem -0.1875rem 0;
    padding: 0;
    border: 0;
    border-radius: var(--radius-sm);
    background: transparent;
    color: currentColor;
    cursor: pointer;
  }
  .chip__remove:hover {
    background: var(--chip-remove-bg-hover);
  }
  .chip__remove:focus-visible {
    box-shadow: var(--focus-ring);
  }
  .card {
    --card-padding: var(--space-6);
    padding: var(--card-padding);
    border: 0.0625rem solid var(--card-border);
    border-radius: var(--radius-lg);
    background: var(--card-bg);
    color: var(--card-fg);
  }
  .card--compact {
    --card-padding: var(--space-4);
  }
  .card--spacious {
    --card-padding: var(--space-8);
  }
  .card--elevated {
    border-color: var(--card-elevated-border);
    box-shadow: var(--shadow-md);
  }
  .card--muted {
    background: var(--card-muted-bg);
  }
  .card--selected {
    border-color: var(--card-selected-border);
    background: var(--card-selected-bg);
    box-shadow: 0 0 0 0.0625rem var(--card-selected-border);
  }
  .card--warning {
    border-color: var(--card-warning-border);
    background: var(--card-warning-bg);
  }
  .card--error {
    border-color: var(--card-error-border);
    background: var(--card-error-bg);
  }
  .card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-4);
    margin-block-end: var(--space-4);
  }
  .card__title {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
  }
  .card__description {
    margin: 0.25rem 0 0;
    color: var(--color-text-secondary);
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .card__footer {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    margin-block-start: var(--space-5);
  }
  .avatar {
    --avatar-size: 2.5rem;
    --avatar-bg: var(--avatar-default-bg);
    --avatar-fg: var(--avatar-default-fg);
    position: relative;
    display: inline-grid;
    inline-size: var(--avatar-size);
    block-size: var(--avatar-size);
    flex: none;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: var(--avatar-bg);
    color: var(--avatar-fg);
    font-size: calc(var(--avatar-size) * 0.36);
    font-weight: 700;
    line-height: 1;
  }
  .avatar--sm {
    --avatar-size: 2rem;
  }
  .avatar--lg {
    --avatar-size: 3rem;
  }
  .avatar--xl {
    --avatar-size: 4rem;
  }
  .avatar--purple {
    --avatar-bg: var(--avatar-purple-bg);
    --avatar-fg: var(--avatar-purple-fg);
  }
  .avatar--green {
    --avatar-bg: var(--avatar-green-bg);
    --avatar-fg: var(--avatar-green-fg);
  }
  .avatar--orange {
    --avatar-bg: var(--avatar-orange-bg);
    --avatar-fg: var(--avatar-orange-fg);
  }
  .avatar__status {
    position: absolute;
    inset-inline-end: 0;
    inset-block-end: 0;
    inline-size: 28%;
    block-size: 28%;
    border: 0.125rem solid var(--avatar-border);
    border-radius: 50%;
    background: var(--avatar-status-bg);
  }
  .avatar-group {
    display: flex;
    padding-inline-start: 0.5rem;
  }
  .avatar-group .avatar {
    margin-inline-start: -0.5rem;
    border: 0.125rem solid var(--avatar-border);
  }
  .search-field {
    display: grid;
    min-inline-size: 0;
    gap: 0.4375rem;
  }
  .search-field__label {
    color: var(--form-field-label-fg);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.3;
  }
  .search-field__group {
    inline-size: 100%;
  }
  .search-field--prominent .input-group {
    --input-group-height: var(--control-height-lg);
    --input-group-radius: var(--radius-md);
    --input-group-font-size: 1rem;
  }
  .search-field--prominent .input {
    --input-height: var(--control-height-lg);
    --input-font-size: 1rem;
    --input-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
  }
  .search-field--prominent .input-group__button {
    padding-inline: var(--space-6);
    font-weight: 600;
  }
  .search-field__hint {
    margin: 0;
    color: var(--form-field-hint-fg);
    font-size: 0.75rem;
    line-height: 1.4;
  }
  .search-field--disabled {
    opacity: 0.72;
  }
  .search-field--hero .search-field__group {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-3);
    border: 0.0625rem solid var(--color-border);
    border-radius: var(--radius-lg);
    background: var(--color-surface);
    box-shadow: var(--shadow-md);
  }
  .search-field--hero .input-group > * + * {
    margin-inline-start: 0;
  }
  .search-field--hero .input-group > .input {
    --input-height: var(--control-height-lg);
    --input-font-size: 1.125rem;
    --input-radius: var(--radius-md);
    inline-size: auto;
    border-color: transparent;
    background: transparent;
    box-shadow: none;
  }
  .search-field--hero .input-group > .input:hover, .search-field--hero .input-group > .input:focus-within {
    border-color: transparent;
    background: transparent;
    box-shadow: none;
  }
  .search-field--hero .input-group > :first-child, .search-field--hero .input-group > :last-child {
    border-radius: var(--radius-md);
  }
  .search-field--hero .button {
    flex: none;
  }
  @media (max-width: 32rem) {
    .search-field--prominent .input-group__button {
      padding-inline: var(--space-4);
    }
    .search-field--hero .search-field__group {
      gap: var(--space-2);
      padding: var(--space-2);
    }
    .search-field--hero .button {
      inline-size: var(--control-height-lg);
      padding: 0;
    }
    .search-field--hero .search-field__submit-label {
      position: absolute;
      inline-size: 0.0625rem;
      block-size: 0.0625rem;
      overflow: hidden;
      clip-path: inset(50%);
    }
  }
  .patient-identity {
    display: flex;
    min-inline-size: 0;
    align-items: start;
    gap: var(--space-3);
  }
  .patient-identity__body {
    min-inline-size: 0;
    flex: 1 1 auto;
  }
  .patient-identity__name {
    display: block;
    overflow: hidden;
    margin: 0;
    color: var(--color-text-primary);
    font-size: 0.9375rem;
    font-weight: 700;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .patient-identity__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 0.5rem;
    margin: 0.1875rem 0 0;
    color: var(--color-text-tertiary);
    font-size: 0.75rem;
    line-height: 1.35;
  }
  .patient-identity__meta > * + *::before {
    margin-inline-end: 0.5rem;
    color: var(--color-border-strong);
    content: "·";
  }
  .patient-identity__trailing {
    display: inline-flex;
    flex: none;
    align-items: center;
    gap: var(--space-2);
  }
  .patient-identity--compact {
    gap: var(--space-2);
  }
  .patient-identity--compact .patient-identity__name {
    font-size: 0.875rem;
  }
  .patient-identity--prominent .patient-identity__name {
    font-size: 1.125rem;
  }
  @media (max-width: 34rem) {
    .patient-identity--responsive {
      align-items: flex-start;
      flex-wrap: wrap;
    }
    .patient-identity--responsive .patient-identity__trailing {
      inline-size: 100%;
      padding-inline-start: 3.75rem;
    }
  }
  .status-badge {
    min-block-size: 1.5rem;
    padding: 0.1875rem 0.5rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 700;
    white-space: nowrap;
  }
  .status-badge__dot {
    inline-size: 0.4375rem;
    block-size: 0.4375rem;
    flex: none;
    border-radius: 50%;
    background: currentColor;
  }
  .status-badge--sm {
    min-block-size: 1.25rem;
    gap: 0.25rem;
    padding: 0.125rem 0.4375rem;
    font-size: 0.6875rem;
  }
  .status-badge--modality {
    min-inline-size: 2.5rem;
    justify-content: center;
    border-radius: var(--radius-sm);
    letter-spacing: 0.025em;
  }
  .filter-bar {
    display: grid;
    gap: var(--space-3);
  }
  .filter-bar__fields {
    display: grid;
    grid-template-columns: minmax(15rem, 1fr) repeat(var(--filter-columns, 1), minmax(8rem, 0.32fr)) auto;
    gap: var(--space-3);
    align-items: end;
  }
  .filter-bar__field {
    min-inline-size: 0;
  }
  .filter-bar__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--space-2);
  }
  .filter-bar__active {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
    padding-block-start: var(--space-3);
    border-block-start: 0.0625rem solid var(--color-border);
  }
  .filter-bar__active-label {
    color: var(--color-text-tertiary);
    font-size: 0.75rem;
    font-weight: 600;
  }
  @media (max-width: 52rem) {
    .filter-bar__fields {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .filter-bar__field--search {
      grid-column: 1 / -1;
    }
  }
  @media (max-width: 34rem) {
    .filter-bar__fields {
      grid-template-columns: 1fr;
    }
    .filter-bar__field--search {
      grid-column: auto;
    }
    .filter-bar__actions, .filter-bar__actions .button {
      inline-size: 100%;
    }
  }
  .segmented-control {
    display: inline-flex;
    max-inline-size: 100%;
    gap: 0.25rem;
    padding: 0.25rem;
    border: 0.0625rem solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface-muted);
  }
  .segmented-control__item {
    display: inline-flex;
    min-block-size: var(--control-height-sm);
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding-inline: var(--space-3);
    border: 0.0625rem solid transparent;
    border-radius: var(--radius-sm);
    background: transparent;
    color: var(--color-text-secondary);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color 120ms ease-out, border-color 120ms ease-out, color 120ms ease-out, box-shadow 120ms ease-out;
  }
  .segmented-control__item:hover:not(:disabled, [aria-disabled="true"]) {
    border-color: var(--color-primary-200);
    background: var(--color-surface);
    color: var(--color-primary-700);
    box-shadow: var(--shadow-sm);
  }
  .segmented-control__item[aria-pressed="true"], .segmented-control__item[aria-selected="true"], .segmented-control__item[data-state="active"] {
    border-color: var(--color-primary-600);
    background: var(--color-primary-600);
    color: var(--color-white);
    box-shadow: var(--shadow-sm);
  }
  .segmented-control__item:focus-visible {
    position: relative;
    z-index: 1;
    box-shadow: var(--focus-ring);
  }
  .segmented-control__item:disabled, .segmented-control__item[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.5;
  }
  .segmented-control__count {
    display: inline-grid;
    min-inline-size: 1.25rem;
    block-size: 1.25rem;
    place-items: center;
    padding-inline: 0.25rem;
    border-radius: 999px;
    background: #17203314;
    font-size: 0.6875rem;
  }
  .segmented-control__item[aria-pressed="true"] .segmented-control__count, .segmented-control__item[aria-selected="true"] .segmented-control__count, .segmented-control__item[data-state="active"] .segmented-control__count {
    background: #ffffff2e;
  }
  .segmented-control--block {
    display: flex;
  }
  .segmented-control--block .segmented-control__item {
    flex: 1 1 0;
  }
  .segmented-control--detached {
    gap: var(--space-2);
    padding: 0;
    border: 0;
    background: transparent;
  }
  .segmented-control--detached .segmented-control__item {
    min-block-size: var(--control-height-md);
    border-color: var(--color-border);
    background: var(--color-surface);
  }
  .segmented-control--detached .segmented-control__item[aria-pressed="true"], .segmented-control--detached .segmented-control__item[aria-selected="true"], .segmented-control--detached .segmented-control__item[data-state="active"] {
    border-color: var(--color-primary-600);
    background: var(--color-primary-600);
    color: var(--color-white);
  }
  .segmented-control__item[aria-pressed="true"]:hover:not(:disabled, [aria-disabled="true"]), .segmented-control__item[aria-selected="true"]:hover:not(:disabled, [aria-disabled="true"]), .segmented-control__item[data-state="active"]:hover:not(:disabled, [aria-disabled="true"]) {
    border-color: var(--color-primary-700);
    background: var(--color-primary-700);
    color: var(--color-white);
  }
  @media (max-width: 40rem) {
    .segmented-control--scrollable {
      display: flex;
      overflow-x: auto;
      justify-content: flex-start;
    }
  }
  .underline-tabs {
    display: flex;
    max-inline-size: 100%;
    gap: var(--space-5);
    overflow-x: auto;
    overflow-y: hidden;
    border-block-end: 0.0625rem solid var(--color-border);
  }
  .underline-tabs__item {
    position: relative;
    display: inline-flex;
    min-block-size: 2.75rem;
    flex: none;
    align-items: center;
    gap: 0.375rem;
    padding: 0 0.125rem;
    border: 0;
    background: transparent;
    color: var(--color-text-secondary);
    font-size: 0.875rem;
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
  }
  .underline-tabs__item::after {
    position: absolute;
    inset-inline: 0;
    inset-block-end: -0.0625rem;
    block-size: 0.1875rem;
    border-radius: 0.1875rem 0.1875rem 0 0;
    background: transparent;
    content: "";
  }
  .underline-tabs__item:hover {
    color: var(--color-text-primary);
  }
  .underline-tabs__item[aria-selected="true"], .underline-tabs__item[data-state="active"] {
    color: var(--color-primary-700);
  }
  .underline-tabs__item[aria-selected="true"]::after, .underline-tabs__item[data-state="active"]::after {
    background: var(--color-primary-600);
  }
  .underline-tabs__item:focus-visible {
    border-radius: var(--radius-sm);
    box-shadow: var(--focus-ring);
  }
  .underline-tabs__count {
    display: inline-grid;
    min-inline-size: 1.375rem;
    block-size: 1.375rem;
    place-items: center;
    padding-inline: 0.3125rem;
    border-radius: 999px;
    background: var(--color-surface-muted);
    color: var(--color-text-secondary);
    font-size: 0.6875rem;
  }
  .underline-tabs--boxed {
    gap: var(--space-2);
    overflow: visible;
    border-block-end: 0;
  }
  .underline-tabs--boxed .underline-tabs__item {
    min-block-size: var(--control-height-md);
    padding-inline: var(--space-4);
    border: 0.0625rem solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
  }
  .underline-tabs--boxed .underline-tabs__item::after {
    inset-inline: var(--space-4);
    inset-block-end: -0.0625rem;
  }
  .worklist-row {
    display: grid;
    inline-size: 100%;
    min-inline-size: 0;
    grid-template-columns: 5rem minmax(0, 1fr) 15rem;
    gap: var(--space-4);
    align-items: start;
    padding: var(--space-3);
    border: 0;
    border-block-end: 0.0625rem solid var(--color-border);
    background: transparent;
    color: var(--color-text-primary);
    font: inherit;
    text-align: start;
    cursor: pointer;
    transition: background-color 120ms ease-out, box-shadow 120ms ease-out;
  }
  .worklist-row:hover {
    background: var(--color-surface);
  }
  .worklist-row--inactive {
    opacity: 0.55;
  }
  .worklist-row--inactive:hover {
    opacity: 0.72;
  }
  .worklist-row[aria-selected="true"], .worklist-row[aria-pressed="true"], .worklist-row[data-state="selected"] {
    background: var(--color-surface);
    box-shadow: inset 0.25rem 0 0 var(--color-primary-600), var(--shadow-sm);
  }
  .worklist-row:focus-visible {
    position: relative;
    z-index: 1;
    border-radius: var(--radius-sm);
    box-shadow: var(--focus-ring);
  }
  .worklist-row__leading {
    min-inline-size: 0;
    align-self: stretch;
    padding-inline-end: var(--space-3);
    border-inline-end: 0.0625rem solid var(--color-border);
  }
  .worklist-row__time {
    display: block;
    font-size: 1.125rem;
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    line-height: 1;
  }
  .worklist-row__location {
    display: block;
    margin-block-start: 0.375rem;
    color: var(--color-text-tertiary);
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
  }
  .worklist-row__main {
    min-inline-size: 0;
  }
  .worklist-row__procedure {
    display: block;
    overflow: hidden;
    margin-block-start: 0.3125rem;
    color: var(--color-text-secondary);
    font-size: 0.8125rem;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .worklist-row__statuses {
    display: flex;
    min-inline-size: 0;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin-block-start: 0.375rem;
  }
  .worklist-row__note {
    display: block;
    margin-block-start: 0.25rem;
    color: var(--color-warning-700);
    font-size: 0.75rem;
    font-weight: 600;
  }
  .worklist-row__trailing {
    display: grid;
    min-inline-size: 0;
    align-content: start;
    justify-items: end;
    gap: 0.25rem;
    text-align: end;
  }
  .worklist-row__action {
    --button-height: 1.5rem;
    --button-padding-y: 0.125rem;
    --button-padding-x: 0.25rem;
    --button-font-size: 0.8125rem;
    color: var(--color-primary-600);
    font-weight: 700;
  }
  .worklist-row__action:hover:not(:disabled, [aria-disabled="true"]), .worklist-row__action:active:not(:disabled, [aria-disabled="true"]) {
    background: transparent;
    color: var(--color-primary-700, var(--color-primary-600));
  }
  .worklist-row__action[aria-pressed="true"] {
    color: var(--color-text-secondary);
  }
  .worklist-row__meta {
    display: block;
    overflow: hidden;
    margin-block-start: 0.375rem;
    color: var(--color-text-tertiary);
    font-size: 0.6875rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .worklist-row__trailing .worklist-row__meta {
    margin-block-start: 0;
  }
  .worklist-row__main > .worklist-row__meta {
    margin-block-start: 0.25rem;
  }
  @media (max-width: 42rem) {
    .worklist-row {
      grid-template-columns: auto minmax(0, 1fr);
      align-items: start;
    }
    .worklist-row__trailing {
      grid-column: 2;
      text-align: start;
    }
  }
  @media (max-width: 28rem) {
    .worklist-row {
      grid-template-columns: 1fr;
    }
    .worklist-row__leading {
      display: flex;
      align-items: baseline;
      gap: var(--space-2);
      padding: 0;
      border: 0;
    }
    .worklist-row__location {
      margin: 0;
    }
    .worklist-row__trailing {
      grid-column: auto;
    }
  }
  .worklist-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 22.5rem;
    column-gap: 1.375rem;
    row-gap: var(--space-3);
    align-items: start;
  }
  .worklist-layout__list {
    display: grid;
    grid-column: 1;
    grid-row: 2;
    min-inline-size: 0;
    gap: var(--space-3);
  }
  .worklist-layout__title {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    color: var(--color-text-primary);
    font-size: 1.375rem;
    font-weight: 800;
    line-height: 1.25;
  }
  .worklist-layout__detail {
    position: sticky;
    inset-block-start: 4.875rem;
    grid-column: 2;
    grid-row: 2;
    min-inline-size: 0;
    padding: 0.25rem var(--space-5);
    border-inline-start: 0.0625rem solid var(--color-border);
    background: var(--color-surface);
  }
  .worklist-layout__detail[data-empty="true"] {
    margin-block-start: var(--space-3);
    padding-block-start: 0;
    background: transparent;
  }
  .form-section--compact {
    gap: var(--space-3);
  }
  @media (max-width: 64rem) {
    .worklist-layout {
      grid-template-columns: 1fr;
    }
    .worklist-layout__detail {
      position: static;
      grid-column: 1;
      grid-row: 3;
      padding: var(--space-5) 0 0;
      border-block-start: 0.0625rem solid var(--color-border);
      border-inline-start: 0;
    }
    .worklist-layout__detail[data-empty="true"] {
      margin-block-start: 0;
      padding-block-start: var(--space-5);
    }
  }
  @media (max-width: 40rem) {
    .worklist-layout__title {
      font-size: 1.125rem;
    }
  }
  .form-section {
    display: grid;
    gap: var(--space-5);
  }
  .form-section__header {
    display: flex;
    align-items: flex-start;
    gap: var(--space-3);
  }
  .form-section__step {
    display: inline-grid;
    inline-size: 1.75rem;
    block-size: 1.75rem;
    flex: none;
    place-items: center;
    border-radius: var(--radius-sm);
    background: var(--color-primary-600);
    color: var(--color-white);
    font-size: 0.75rem;
    font-weight: 700;
  }
  .form-section__heading {
    min-inline-size: 0;
  }
  .form-section__title {
    margin: 0;
    color: var(--color-text-primary);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
  }
  .form-section__description {
    margin: 0.25rem 0 0;
    color: var(--color-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.45;
  }
  .form-section__body {
    display: grid;
    grid-template-columns: repeat(var(--form-section-columns, 1), minmax(0, 1fr));
    gap: var(--space-4);
  }
  .form-section__field--wide {
    grid-column: 1 / -1;
  }
  .form-section__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--space-3);
    padding-block-start: var(--space-4);
    border-block-start: 0.0625rem solid var(--color-border);
  }
  .form-page {
    padding-block-end: 5rem;
  }
  .form-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 21.25rem;
    gap: 1.375rem;
    align-items: start;
  }
  .form-layout__main {
    display: grid;
    min-inline-size: 0;
    gap: var(--space-3);
  }
  .form-layout__aside {
    position: sticky;
    inset-block-start: 4.875rem;
    min-inline-size: 0;
  }
  .form-action-bar {
    position: fixed;
    z-index: 40;
    inset-inline: 0;
    inset-block-end: 0;
    border-block-start: 0.0625rem solid var(--color-border);
    background: #fffffff5;
    backdrop-filter: blur(0.5rem);
  }
  .form-action-bar__inner {
    display: flex;
    inline-size: 100%;
    max-inline-size: 92rem;
    justify-content: flex-end;
    margin-inline: auto;
    padding: 0.625rem var(--space-6);
  }
  .form-action-bar__inner .action-group {
    flex-wrap: nowrap;
  }
  @media (max-width: 64rem) {
    .form-layout {
      grid-template-columns: 1fr;
    }
    .form-layout__aside {
      position: static;
    }
  }
  @media (max-width: 40rem) {
    .form-section__body {
      grid-template-columns: 1fr;
    }
    .form-section__footer, .form-section__footer .button {
      inline-size: 100%;
    }
    .form-section__footer {
      flex-direction: column-reverse;
    }
    .form-action-bar__inner {
      padding-inline: var(--space-3);
    }
    .form-action-bar__inner .action-group {
      display: grid;
      inline-size: 100%;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: var(--space-2);
    }
    .form-action-bar__inner .button {
      inline-size: 100%;
    }
  }
  .empty-state {
    display: grid;
    min-block-size: 12rem;
    place-items: center;
    padding: var(--space-8) var(--space-5);
    border: 0.0625rem dashed var(--color-border-strong);
    border-radius: var(--radius-lg);
    background: var(--color-surface);
    text-align: center;
  }
  .empty-state__content {
    display: grid;
    max-inline-size: 28rem;
    justify-items: center;
  }
  .empty-state__icon {
    display: inline-grid;
    inline-size: 3rem;
    block-size: 3rem;
    place-items: center;
    margin-block-end: var(--space-4);
    border-radius: 50%;
    background: var(--color-primary-50);
    color: var(--color-primary-700);
  }
  .empty-state__title {
    margin: 0;
    color: var(--color-text-primary);
    font-size: 1rem;
    font-weight: 700;
  }
  .empty-state__description {
    margin: var(--space-2) 0 0;
    color: var(--color-text-secondary);
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .empty-state__action {
    margin-block-start: var(--space-5);
  }
  .empty-state--compact {
    min-block-size: auto;
    padding: var(--space-5);
  }
  .empty-state--compact .empty-state__icon {
    inline-size: 2.5rem;
    block-size: 2.5rem;
    margin-block-end: var(--space-3);
  }
  .schedule-day {
    display: grid;
    min-inline-size: 7.5rem;
    min-block-size: 6.25rem;
    align-content: space-between;
    gap: var(--space-2);
    padding: var(--space-3);
    border: 0.0625rem solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
    color: var(--color-text-primary);
    text-align: start;
    cursor: pointer;
    transition: border-color 120ms ease-out, background-color 120ms ease-out, box-shadow 120ms ease-out;
  }
  .schedule-day:hover {
    border-color: var(--color-primary-500);
  }
  .schedule-day[aria-pressed="true"], .schedule-day[aria-checked="true"], .schedule-day[data-state="selected"] {
    border-color: var(--color-primary-500);
    background: var(--color-primary-50);
    box-shadow: inset 0 0 0 0.0625rem var(--color-primary-500);
  }
  .schedule-day:focus-visible {
    box-shadow: var(--focus-ring);
  }
  .schedule-day__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-2);
  }
  .schedule-day__weekday {
    font-size: 0.8125rem;
    font-weight: 700;
  }
  .schedule-day__load {
    inline-size: 0.5rem;
    block-size: 0.5rem;
    flex: none;
    border-radius: 50%;
    background: var(--color-success-500);
  }
  .schedule-day__load--medium {
    background: var(--color-warning-300);
  }
  .schedule-day__load--high {
    background: var(--color-danger-500);
  }
  .schedule-day__date {
    color: var(--color-text-secondary);
    font-size: 0.75rem;
    font-weight: 600;
  }
  .schedule-day__total {
    font-size: 0.8125rem;
    font-weight: 700;
  }
  .schedule-day__meta {
    color: var(--color-text-tertiary);
    font-size: 0.6875rem;
    line-height: 1.3;
  }
  .schedule-day--muted {
    background: var(--color-surface-muted);
    color: var(--color-text-secondary);
  }
  .schedule-day--compact {
    min-block-size: 4.75rem;
    gap: 0.25rem;
    padding: var(--space-2) var(--space-3);
  }
  @media (prefers-reduced-motion: reduce) {
    .schedule-day {
      transition: none;
    }
  }
  .metadata-list {
    display: grid;
    gap: var(--space-3);
    margin: 0;
  }
  .metadata-list--grid {
    grid-template-columns: repeat(var(--metadata-columns, 2), minmax(0, 1fr));
  }
  .metadata-list__item {
    min-inline-size: 0;
  }
  .metadata-list__label {
    margin: 0;
    color: var(--color-text-tertiary);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.035em;
    line-height: 1.3;
    text-transform: uppercase;
  }
  .metadata-list__value {
    margin: 0.25rem 0 0;
    color: var(--color-text-primary);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }
  .metadata-list__value--muted {
    color: var(--color-text-secondary);
    font-weight: 400;
  }
  .metadata-list--divided .metadata-list__item {
    padding-block-end: var(--space-3);
    border-block-end: 0.0625rem solid var(--color-border);
  }
  .metadata-list--inline .metadata-list__item {
    display: grid;
    grid-template-columns: minmax(7rem, 0.4fr) minmax(0, 1fr);
    gap: var(--space-3);
    align-items: baseline;
  }
  .metadata-list--inline .metadata-list__value {
    margin: 0;
  }
  @media (max-width: 34rem) {
    .metadata-list--grid {
      grid-template-columns: 1fr;
    }
  }
  .inline-notice {
    --notice-bg: var(--color-primary-50);
    --notice-border: var(--color-primary-200);
    --notice-fg: var(--color-primary-800);
    --notice-icon-bg: var(--color-primary-100);
    display: flex;
    min-inline-size: 0;
    align-items: flex-start;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    border: 0.0625rem solid var(--notice-border);
    border-radius: var(--radius-md);
    background: var(--notice-bg);
    color: var(--notice-fg);
  }
  .inline-notice--success {
    --notice-bg: var(--color-success-50);
    --notice-border: #bce7d6;
    --notice-fg: var(--color-success-700);
    --notice-icon-bg: #d9f4e8;
  }
  .inline-notice--warning {
    --notice-bg: var(--color-warning-50);
    --notice-border: var(--color-warning-300);
    --notice-fg: var(--color-warning-700);
    --notice-icon-bg: #ffefc2;
  }
  .inline-notice--error {
    --notice-bg: var(--color-danger-50);
    --notice-border: var(--color-danger-100);
    --notice-fg: var(--color-danger-700);
    --notice-icon-bg: var(--color-danger-100);
  }
  .inline-notice__icon {
    display: inline-grid;
    inline-size: 1.75rem;
    block-size: 1.75rem;
    flex: none;
    place-items: center;
    border-radius: 50%;
    background: var(--notice-icon-bg);
    color: currentColor;
  }
  .inline-notice__body {
    min-inline-size: 0;
    flex: 1 1 auto;
    padding-block-start: 0.125rem;
  }
  .inline-notice__title {
    display: block;
    margin: 0;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.35;
  }
  .inline-notice__message {
    margin: 0.1875rem 0 0;
    color: currentColor;
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, currentColor 82%, transparent);
    }
    font-size: 0.8125rem;
    line-height: 1.45;
  }
  .inline-notice__action {
    flex: none;
    align-self: center;
  }
  .inline-notice--compact {
    align-items: center;
    gap: var(--space-2);
    padding: 0.4375rem var(--space-3);
  }
  .inline-notice--compact .inline-notice__icon {
    inline-size: 1.375rem;
    block-size: 1.375rem;
  }
  .inline-notice--compact .inline-notice__body {
    padding: 0;
  }
  .inline-notice--compact .inline-notice__message {
    margin: 0;
    font-size: 0.75rem;
    font-weight: 600;
  }
  @media (max-width: 32rem) {
    .inline-notice:not(.inline-notice--compact) {
      flex-wrap: wrap;
    }
    .inline-notice:not(.inline-notice--compact) .inline-notice__action {
      inline-size: 100%;
      padding-inline-start: 2.5rem;
    }
  }
  .action-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3);
  }
  .action-group--end {
    justify-content: flex-end;
  }
  .action-group--between {
    justify-content: space-between;
  }
  .action-group--stack {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .action-group--stack .button, .action-group--full .button {
    inline-size: 100%;
  }
  .action-group--grid {
    display: grid;
    grid-template-columns: repeat(var(--action-columns, 2), minmax(0, 1fr));
    gap: var(--space-2);
  }
  .action-group--grid .button {
    inline-size: 100%;
  }
  .action-group--divided {
    padding-block-start: var(--space-4);
    border-block-start: 0.0625rem solid var(--color-border);
  }
  .action-group--list {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .action-group__item {
    display: grid;
    inline-size: 100%;
    min-block-size: 3.75rem;
    grid-template-columns: 1.5rem minmax(0, 1fr) 1.25rem;
    gap: var(--space-3);
    align-items: center;
    padding: var(--space-2) 0;
    border: 0;
    border-radius: var(--radius-md);
    background: transparent;
    color: var(--color-text-primary);
    font: inherit;
    text-align: start;
    cursor: pointer;
  }
  .action-group__item:hover {
    background: var(--color-surface-muted);
  }
  .action-group__item:focus-visible {
    box-shadow: var(--focus-ring);
  }
  .action-group__icon, .action-group__trailing {
    color: var(--color-primary-700);
  }
  .action-group__body {
    display: grid;
    min-inline-size: 0;
    gap: 0.1875rem;
  }
  .action-group__title {
    font-size: 0.9375rem;
    font-weight: 700;
    line-height: 1.3;
  }
  .action-group__description {
    color: var(--color-text-tertiary);
    font-size: 0.8125rem;
    line-height: 1.35;
  }
  .action-group__trailing {
    justify-self: end;
  }
  @media (max-width: 34rem) {
    .action-group--responsive {
      display: grid;
      grid-template-columns: 1fr;
    }
    .action-group--responsive .button {
      inline-size: 100%;
    }
  }
  .page-header {
    display: flex;
    min-inline-size: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-6);
  }
  .page-header__content {
    min-inline-size: 0;
    max-inline-size: 48rem;
  }
  .page-header__eyebrow {
    margin: 0 0 0.375rem;
    color: var(--color-primary-700);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.3;
    text-transform: uppercase;
  }
  .page-header__title {
    margin: 0;
    color: var(--color-text-primary);
    font-size: clamp(1.5rem, 2.5vw, 1.75rem);
    font-weight: 750;
    letter-spacing: -0.02em;
    line-height: 1.2;
  }
  .page-header__description {
    margin: var(--space-2) 0 0;
    color: var(--color-text-secondary);
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .page-header__trailing {
    display: flex;
    flex: none;
    align-items: center;
    gap: var(--space-3);
  }
  .page-header--compact .page-header__title {
    font-size: 1.25rem;
  }
  .page-header--compact .page-header__description {
    margin-block-start: 0.25rem;
    font-size: 0.8125rem;
  }
  @media (max-width: 42rem) {
    .page-header--responsive {
      flex-direction: column;
      gap: var(--space-4);
    }
    .page-header--responsive .page-header__trailing {
      inline-size: 100%;
    }
  }
  .schedule-strip {
    display: grid;
    min-inline-size: 0;
    gap: var(--space-3);
  }
  .schedule-strip__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
  }
  .schedule-strip__heading {
    min-inline-size: 0;
  }
  .schedule-strip__title {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.045em;
    line-height: 1.3;
    text-transform: uppercase;
  }
  .schedule-strip__hint {
    margin: 0.1875rem 0 0;
    color: var(--color-text-tertiary);
    font-size: 0.75rem;
    line-height: 1.35;
  }
  .schedule-strip__controls {
    display: inline-flex;
    flex: none;
    gap: var(--space-2);
  }
  .schedule-strip__days {
    display: grid;
    grid-template-columns: repeat(var(--schedule-day-count, 7), minmax(7.5rem, 1fr));
    gap: var(--space-2);
  }
  @media (max-width: 62rem) {
    .schedule-strip__days {
      overflow-x: auto;
      grid-template-columns: repeat(var(--schedule-day-count, 7), minmax(8.25rem, 1fr));
      padding-block-end: var(--space-2);
      scrollbar-width: thin;
    }
  }
  @media (max-width: 34rem) {
    .schedule-strip__header {
      align-items: flex-start;
    }
    .schedule-strip__hint {
      max-inline-size: 14rem;
    }
  }
  .availability-page {
    display: grid;
    gap: var(--space-3);
  }
  .availability-page .page-header__content {
    max-inline-size: none;
  }
  .availability-filters .filter-bar__fields {
    --filter-columns: 3;
    grid-template-columns: minmax(12rem, 1.1fr) minmax(16.5rem, 1.05fr) minmax(10rem, 0.72fr) minmax(10rem, 0.72fr) auto;
    align-items: end;
  }
  .availability-select {
    position: relative;
    min-inline-size: 0;
  }
  .availability-select__control {
    justify-content: space-between;
    cursor: pointer;
    text-align: start;
  }
  .availability-select__value {
    overflow: hidden;
    min-inline-size: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .availability-select__menu {
    position: absolute;
    z-index: 20;
    inset-block-start: calc(100% + 0.25rem);
    inset-inline: 0;
    display: grid;
    max-block-size: 16.5rem;
    overflow: auto;
    padding: 0.25rem;
    border: 0.0625rem solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
    box-shadow: var(--shadow-md);
  }
  .availability-select__option {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-block-size: 2rem;
    padding: 0.25rem 0.5rem;
    border-radius: var(--radius-sm);
    color: var(--color-text-primary);
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
  }
  .availability-select__option:hover {
    background: var(--color-surface-muted);
  }
  .availability-select__option input {
    flex: none;
    margin: 0;
  }
  .availability-select__option span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .availability-day-control {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    min-inline-size: 0;
  }
  .availability-day-control .input {
    flex: 1 1 8.5rem;
    min-inline-size: 0;
  }
  .availability-day-control .button {
    flex: none;
  }
  .availability-day-control__step {
    min-inline-size: 2rem;
    padding-inline: 0.4rem;
    font-size: 1.125rem;
    line-height: 1;
  }
  .availability-board {
    --avail-meta: 11.5rem;
    --avail-slots: 48;
    display: grid;
    gap: 0;
    min-inline-size: 0;
    padding: var(--space-3);
  }
  .availability-board__top {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--space-3);
    margin-block-end: 0.5rem;
  }
  .availability-board__legend {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
    color: var(--color-text-tertiary);
    font-size: 0.75rem;
    font-weight: 600;
  }
  .availability-board__swatch {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
  }
  .availability-board__swatch::before {
    inline-size: 0.7rem;
    block-size: 0.7rem;
    border-radius: 0.125rem;
    content: "";
    background: var(--avail-swatch, var(--color-border));
  }
  .availability-board__swatch--free {
    --avail-swatch: #8dceb0;
  }
  .availability-board__swatch--busy {
    --avail-swatch: #7ea8d9;
  }
  .availability-board__swatch--off {
    --avail-swatch: #d5dde7;
  }
  .availability-board__swatch--break {
    --avail-swatch: #e6d08a;
  }
  .availability-grid__axis, .availability-row {
    display: grid;
    grid-template-columns: var(--avail-meta) minmax(0, 1fr);
    min-inline-size: 0;
    align-items: stretch;
  }
  .availability-grid__axis {
    margin-block-end: 0.125rem;
  }
  .availability-grid__hours, .availability-row__track {
    display: grid;
    min-inline-size: 0;
    min-block-size: 1.15rem;
  }
  .availability-grid__hours {
    grid-template-columns: repeat(24, minmax(0, 1fr));
  }
  .availability-grid__hour {
    color: var(--color-text-secondary);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    font-variant-numeric: tabular-nums;
  }
  .availability-grid__group {
    margin: 0.7rem 0 0.25rem;
    color: var(--color-text-tertiary);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  .availability-grid__group:first-child {
    margin-block-start: 0.15rem;
  }
  .availability-row {
    min-block-size: 2.05rem;
    border-block-end: 0.0625rem solid var(--color-border);
  }
  .availability-row:last-child {
    border-block-end: 0;
  }
  .availability-row__meta {
    display: grid;
    align-content: center;
    gap: 0.05rem;
    padding-inline-end: var(--space-3);
    min-inline-size: 0;
  }
  .availability-row__name {
    overflow: hidden;
    color: var(--color-text-primary);
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .availability-row__hint {
    overflow: hidden;
    color: var(--color-text-tertiary);
    font-size: 0.6875rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .availability-row__track {
    grid-template-columns: repeat(var(--avail-slots), minmax(0, 1fr));
    gap: 0.0625rem;
    padding-block: 0.35rem;
  }
  .availability-cell {
    min-inline-size: 0;
    min-block-size: 100%;
    border-radius: 0.0625rem;
    background: #d5dde7;
  }
  .availability-cell--free {
    background: #8dceb0;
  }
  .availability-cell--busy {
    background: #7ea8d9;
  }
  .availability-cell--off {
    background: #e4eaf1;
  }
  .availability-cell--break {
    background: #e6d08a;
  }
  @media (max-width: 64rem) {
    .availability-filters .filter-bar__fields {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .availability-filters .filter-bar__field--search, .availability-filters .filter-bar__field--day {
      grid-column: 1 / -1;
    }
  }
  @media (max-width: 40rem) {
    .availability-board {
      --avail-meta: 7.5rem;
    }
    .availability-day-control {
      flex-wrap: wrap;
    }
  }
  .queue-facet-bar {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: var(--space-3);
    align-items: center;
  }
  .queue-facet-bar__label {
    color: var(--color-text-secondary);
    font-size: 0.75rem;
    font-weight: 700;
    white-space: nowrap;
  }
  .queue-facet-bar .segmented-control {
    display: flex;
    min-inline-size: 0;
  }
  .queue-facet-bar .segmented-control__item {
    min-inline-size: 0;
    flex: 1 1 0;
  }
  .queue-facet-bar--divided {
    padding-block-start: var(--space-3);
    border-block-start: 0.0625rem solid var(--color-border);
  }
  @media (max-width: 48rem) {
    .queue-facet-bar {
      grid-template-columns: 1fr;
      gap: var(--space-2);
    }
    .queue-facet-bar .segmented-control {
      overflow-x: auto;
    }
    .queue-facet-bar .segmented-control__item {
      flex: 0 0 auto;
    }
  }
  .work-item-header {
    display: grid;
    min-inline-size: 0;
    gap: var(--space-3);
    padding-block-end: var(--space-4);
    border-block-end: 0.0625rem solid var(--color-border);
  }
  .work-item-header__top {
    display: flex;
    min-inline-size: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-3);
  }
  .work-item-header__identity {
    min-inline-size: 0;
    flex: 1 1 auto;
  }
  .work-item-header__reference {
    display: block;
    margin-block-start: 0.25rem;
    color: var(--color-text-tertiary);
    font-size: 0.75rem;
    line-height: 1.35;
  }
  .work-item-header__badges {
    display: flex;
    flex: none;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: var(--space-2);
  }
  .work-item-header--stacked .work-item-header__top {
    flex-direction: column;
  }
  .work-item-header--stacked .work-item-header__badges {
    inline-size: 100%;
    justify-content: flex-start;
  }
  .work-item-header__procedure {
    margin: 0;
    color: var(--color-text-primary);
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.4;
  }
  .work-item-header__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 0.5rem;
    color: var(--color-text-secondary);
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.35;
  }
  .work-item-header__meta > * + *::before {
    margin-inline-end: 0.5rem;
    color: var(--color-border-strong);
    content: "·";
  }
  @media (max-width: 32rem) {
    .work-item-header__top {
      flex-direction: column;
    }
    .work-item-header__badges {
      justify-content: flex-start;
    }
  }
  .toast-region {
    position: fixed;
    z-index: 80;
    inset-inline-end: var(--space-6);
    inset-block-end: var(--space-6);
    display: grid;
    inline-size: min(24rem, calc(100vw - 2rem));
    gap: var(--space-3);
    pointer-events: none;
  }
  .toast {
    display: flex;
    min-inline-size: 0;
    align-items: flex-start;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    border: 0.0625rem solid #ffffff1f;
    border-radius: var(--radius-md);
    background: var(--color-text-primary);
    color: var(--color-white);
    box-shadow: 0 0.625rem 1.875rem #17203347;
    pointer-events: auto;
    animation: toast-enter 180ms ease-out both;
  }
  .toast__icon {
    display: inline-grid;
    inline-size: 1.625rem;
    block-size: 1.625rem;
    flex: none;
    place-items: center;
    border-radius: 50%;
    background: #ffffff1a;
    color: var(--color-primary-200);
  }
  .toast--success .toast__icon {
    background: #0ea47226;
    color: #6ee7b7;
  }
  .toast--warning .toast__icon {
    background: #f9cf6c26;
    color: var(--color-warning-300);
  }
  .toast--error .toast__icon {
    background: #ef444426;
    color: #fca5a5;
  }
  .toast__body {
    min-inline-size: 0;
    flex: 1 1 auto;
    padding-block-start: 0.125rem;
  }
  .toast__title {
    display: block;
    margin: 0;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.35;
  }
  .toast__message {
    margin: 0.1875rem 0 0;
    color: #ffffffc7;
    font-size: 0.8125rem;
    line-height: 1.4;
  }
  .toast__close {
    display: inline-grid;
    inline-size: 1.75rem;
    block-size: 1.75rem;
    flex: none;
    place-items: center;
    margin: -0.125rem -0.25rem 0 0;
    padding: 0;
    border: 0;
    border-radius: var(--radius-sm);
    background: transparent;
    color: #ffffffb3;
    cursor: pointer;
  }
  .toast__close:hover {
    background: #ffffff14;
    color: var(--color-white);
  }
  .toast__close:focus-visible {
    box-shadow: 0 0 0 0.1875rem #ffffff52;
  }
  .toast--static {
    animation: none;
  }
  @keyframes toast-enter {
    from {
      opacity: 0;
      transform: translateY(0.5rem);
    }
  }
  @media (max-width: 34rem) {
    .toast-region {
      inset-inline: var(--space-3);
      inset-block-end: var(--space-3);
      inline-size: auto;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .toast {
      animation: none;
    }
  }
  .patient-list-row {
    display: grid;
    inline-size: 100%;
    min-inline-size: 0;
    min-block-size: 4.5rem;
    grid-template-columns: minmax(0, 1fr) auto 1.5rem;
    gap: var(--space-4);
    align-items: center;
    padding: var(--space-3);
    border: 0;
    border-block-end: 0.0625rem solid var(--color-border);
    border-radius: 0;
    background: transparent;
    color: var(--color-text-primary);
    font: inherit;
    text-align: start;
    cursor: pointer;
    transition: background-color 120ms ease-out, box-shadow 120ms ease-out;
  }
  .patient-list-row:hover:not(:disabled) {
    background: var(--color-surface-muted);
  }
  .patient-list-row:focus-visible {
    position: relative;
    z-index: 1;
    border-radius: var(--radius-md);
    background: var(--color-primary-50);
    box-shadow: inset 0 0 0 0.125rem var(--color-primary-500);
  }
  .patient-list-row:disabled {
    cursor: not-allowed;
    opacity: 0.5;
  }
  .patient-list-row__identity {
    min-inline-size: 0;
  }
  .patient-list-row__time {
    color: var(--color-text-tertiary);
    font-size: 0.75rem;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
  }
  .patient-list-row__chevron {
    justify-self: end;
    color: var(--color-primary-700);
  }
  .patient-list-row--compact {
    min-block-size: 3.5rem;
    padding-block: var(--space-2);
  }
  @media (max-width: 40rem) {
    .patient-list-row {
      grid-template-columns: minmax(0, 1fr) 1.5rem;
      gap: var(--space-2);
    }
    .patient-list-row__time {
      grid-column: 1;
      padding-inline-start: 3rem;
    }
    .patient-list-row__chevron {
      grid-column: 2;
      grid-row: 1 / span 2;
    }
  }
  .app-header {
    position: sticky;
    z-index: 50;
    inset-block-start: 0;
    overflow-x: auto;
    border-block-end: 0.0625rem solid var(--color-border);
    background: var(--color-surface);
    box-shadow: var(--shadow-sm);
    scrollbar-width: none;
  }
  .app-header::-webkit-scrollbar {
    display: none;
  }
  .app-header__inner {
    display: flex;
    inline-size: min(92rem, 100%);
    min-block-size: 5.25rem;
    align-items: center;
    gap: var(--space-4);
    margin-inline: auto;
    padding-inline: var(--space-6);
  }
  .app-header__brand {
    flex: none;
    justify-content: flex-start;
    padding-inline: 0;
    color: var(--color-text-primary);
  }
  .app-header__brand:hover:not(:disabled, [aria-disabled="true"]) {
    background: transparent;
  }
  .app-header__logo {
    display: inline-grid;
    inline-size: 2.5rem;
    block-size: 2.5rem;
    place-items: center;
    border-radius: var(--radius-md);
    background: var(--color-primary-700);
    color: var(--color-white);
    box-shadow: var(--shadow-md);
  }
  .app-header__product {
    font-size: 1.375rem;
    font-weight: 750;
    line-height: 1;
  }
  .app-header__module {
    color: var(--color-primary-700);
    font-size: 1rem;
    font-weight: 700;
  }
  .app-header__navigation, .app-header__roles, .app-header__lang {
    flex: none;
  }
  .app-header__lang-item {
    min-inline-size: 2.5rem;
    padding-inline: 0.5rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
  }
  .app-header__spacer {
    min-inline-size: var(--space-4);
    flex: 1 1 auto;
  }
  .app-header__user {
    flex: none;
    gap: var(--space-3);
    color: var(--color-text-primary);
  }
  .app-header__user-name {
    font-size: 0.875rem;
    font-weight: 650;
  }
  @media (max-width: 70rem) {
    .app-header__inner {
      inline-size: max-content;
      min-inline-size: 100%;
    }
  }
  @media (max-width: 40rem) {
    .app-header__inner {
      min-block-size: 4.5rem;
      padding-inline: var(--space-3);
    }
    .app-header__product, .app-header__module, .app-header__user-name {
      display: none;
    }
  }
  .patient-chart {
    min-inline-size: 0;
  }
  .patient-chart__tabs {
    margin-block: 0 var(--space-4);
  }
  .patient-chart__panel {
    min-inline-size: 0;
  }
  .patient-chart__overview {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 24rem;
    gap: 1.375rem;
    align-items: start;
  }
  .patient-chart__main {
    display: grid;
    min-inline-size: 0;
    gap: 1.125rem;
  }
  .patient-chart__section {
    min-inline-size: 0;
  }
  .patient-chart__section-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--space-3);
    margin-block-end: var(--space-2);
  }
  .patient-chart__section-title {
    margin: 0;
    color: var(--color-text-primary);
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 1.3;
  }
  .patient-chart__section-note {
    color: var(--color-text-tertiary);
    font-size: 0.75rem;
  }
  .patient-chart__risk-list {
    border-block: 0.0625rem solid var(--color-border);
  }
  .patient-chart__risk {
    display: grid;
    grid-template-columns: 11rem minmax(0, 1fr);
    gap: var(--space-4);
    align-items: start;
    padding-block: 0.625rem;
    border-block-end: 0.0625rem solid var(--color-border);
  }
  .patient-chart__risk:last-child {
    border-block-end: 0;
  }
  .patient-chart__risk-label {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    color: var(--color-text-secondary);
    font-size: 0.8125rem;
    font-weight: 700;
  }
  .patient-chart__risk-value {
    color: var(--color-text-primary);
    font-size: 0.9375rem;
    font-weight: 700;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }
  .patient-chart__profile {
    padding-block: var(--space-3);
    border-block: 0.0625rem solid var(--color-border);
  }
  .patient-chart__activity {
    position: sticky;
    inset-block-start: 4.875rem;
    min-inline-size: 0;
  }
  .patient-chart__activity-list {
    border-block: 0.0625rem solid var(--color-border);
  }
  .patient-chart__activity-item {
    display: grid;
    inline-size: 100%;
    min-inline-size: 0;
    grid-template-columns: 5.75rem minmax(0, 1fr);
    gap: var(--space-3);
    padding: 0.625rem 0;
    border: 0;
    border-block-end: 0.0625rem solid var(--color-border);
    background: transparent;
    color: var(--color-text-primary);
    font: inherit;
    text-align: start;
    cursor: pointer;
  }
  .patient-chart__activity-item:last-child {
    border-block-end: 0;
  }
  .patient-chart__activity-item:hover {
    background: var(--color-surface-muted);
  }
  .patient-chart__activity-item:focus-visible {
    position: relative;
    z-index: 1;
    border-radius: var(--radius-sm);
    box-shadow: var(--focus-ring);
  }
  .patient-chart__activity-reference {
    color: var(--color-primary-700);
    font-size: 0.8125rem;
    font-variant-numeric: tabular-nums;
    font-weight: 800;
  }
  .patient-chart__activity-body {
    display: grid;
    min-inline-size: 0;
    gap: 0.25rem;
  }
  .patient-chart__activity-title {
    overflow: hidden;
    font-size: 0.875rem;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .patient-chart__activity-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
    color: var(--color-text-tertiary);
    font-size: 0.75rem;
  }
  .patient-chart__activity-conclusion {
    display: -webkit-box;
    overflow: hidden;
    color: var(--color-text-secondary);
    font-size: 0.75rem;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .patient-chart__activity-empty {
    margin: 0;
    padding-block: var(--space-4);
    color: var(--color-text-tertiary);
    font-size: 0.8125rem;
  }
  .patient-chart__studies-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--space-4);
    margin-block-end: var(--space-3);
  }
  .patient-chart__studies-title {
    margin: 0;
    color: var(--color-text-primary);
    font-size: 1.25rem;
    font-weight: 800;
  }
  .patient-chart__studies-count {
    color: var(--color-text-tertiary);
    font-size: 0.8125rem;
  }
  .patient-chart__filters {
    margin-block-end: var(--space-3);
  }
  .patient-chart__table-scroll {
    overflow-x: auto;
    border-block: 0.0625rem solid var(--color-border);
    scrollbar-width: thin;
  }
  .patient-chart__table-grid {
    display: grid;
    min-inline-size: 63rem;
    grid-template-columns: 7rem minmax(20rem, 1fr) 7.5rem 10rem 7rem 8.25rem;
    gap: 0.625rem;
    align-items: center;
  }
  .patient-chart__table-head {
    padding: 0.5rem;
    border-block-end: 0.0625rem solid var(--color-border);
    background: var(--color-surface-muted);
    color: var(--color-text-secondary);
    font-size: 0.75rem;
    font-weight: 800;
  }
  .patient-chart__table-row {
    inline-size: 100%;
    min-block-size: 3rem;
    padding: 0.375rem 0.5rem;
    border: 0;
    border-block-end: 0.0625rem solid var(--color-border);
    background: transparent;
    color: var(--color-text-primary);
    font: inherit;
    text-align: start;
    cursor: pointer;
  }
  .patient-chart__table-row:last-child {
    border-block-end: 0;
  }
  .patient-chart__table-row:hover {
    background: var(--color-surface);
  }
  .patient-chart__table-row:focus-visible {
    position: relative;
    z-index: 1;
    box-shadow: inset var(--focus-ring);
  }
  .patient-chart__table-reference {
    color: var(--color-primary-700);
    font-size: 0.8125rem;
    font-variant-numeric: tabular-nums;
    font-weight: 800;
  }
  .patient-chart__table-procedure {
    min-inline-size: 0;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.35;
  }
  .patient-chart__table-muted {
    overflow: hidden;
    color: var(--color-text-secondary);
    font-size: 0.8125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  @media (max-width: 64rem) {
    .patient-chart__overview {
      grid-template-columns: 1fr;
    }
    .patient-chart__activity {
      position: static;
    }
  }
  @media (max-width: 52rem) {
    .patient-chart__profile.metadata-list--grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  @media (max-width: 34rem) {
    .patient-chart__section-header {
      display: block;
    }
    .patient-chart__section-note {
      display: block;
      margin-block-start: 0.25rem;
    }
    .patient-chart__risk {
      grid-template-columns: 1fr;
      gap: 0.25rem;
    }
    .patient-chart__profile.metadata-list--grid {
      grid-template-columns: 1fr;
    }
    .patient-chart__activity-item {
      grid-template-columns: 1fr;
      gap: 0.25rem;
    }
    .patient-chart__studies-header {
      display: block;
    }
    .patient-chart__studies-count {
      display: block;
      margin-block-start: 0.25rem;
    }
  }
}
:root {
  --space-1: 0.25rem;
  --orc-header-height: 5.25rem;
  --orc-header-height-compact: 4.5rem;
  --orc-rail-width: 20rem;
  --orc-rail-width-min: 16rem;
  --orc-rail-width-max: 32rem;
  --orc-drawer-width: 22.5rem;
  --orc-thread-measure: 46rem;
  --orc-composer-max: var(--orc-thread-measure);
  --orc-composer-max-lines: 12;
  --orc-bubble-max: 36rem;
  --orc-login-width: 27rem;
  --orc-gutter: var(--space-6);
  --orc-gutter-compact: var(--space-4);
  --orc-row-height: 2.5rem;
  --orc-touch-target: var(--control-height-md);
  --orc-hairline: 0.0625rem;
  --orc-bar-width: 0.25rem;
  --orc-font-family: var(--font-family-ui);
  --orc-font-family-code: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --orc-text-eyebrow-size: 0.75rem;
  --orc-text-eyebrow-weight: 700;
  --orc-text-eyebrow-leading: 1.3;
  --orc-text-eyebrow-tracking: 0.04em;
  --orc-text-meta-size: 0.75rem;
  --orc-text-meta-weight: 400;
  --orc-text-meta-leading: 1.45;
  --orc-text-label-size: 0.8125rem;
  --orc-text-label-weight: 600;
  --orc-text-label-leading: 1.3;
  --orc-text-body-size: 0.875rem;
  --orc-text-body-weight: 400;
  --orc-text-body-leading: 1.5;
  --orc-text-message-size: 0.9375rem;
  --orc-text-message-weight: 400;
  --orc-text-message-leading: 1.65;
  --orc-text-title-size: 1rem;
  --orc-text-title-weight: 700;
  --orc-text-title-leading: 1.3;
  --orc-text-headline-size: 1.5rem;
  --orc-text-headline-size-compact: 1.375rem;
  --orc-text-headline-weight: 700;
  --orc-text-headline-leading: 1.25;
  --orc-text-brand-size: 1.375rem;
  --orc-text-brand-weight: 750;
  --orc-text-brand-leading: 1;
  --orc-text-module-size: 1rem;
  --orc-text-module-weight: 700;
  --orc-text-emphasis-weight: 650;
  --orc-text-input-touch-size: 1rem;
  --orc-duration-instant: 80ms;
  --orc-duration-intent: 150ms;
  --orc-duration-fast: 120ms;
  --orc-duration-base: 200ms;
  --orc-duration-slow: 240ms;
  --orc-duration-loop: 1200ms;
  --orc-ease-out: ease-out;
  --orc-ease-standard: ease;
  --orc-ease-emphasized: cubic-bezier(0.2, 0, 0, 1);
  --orc-z-raised: 1;
  --orc-z-header: 50;
  --orc-z-backdrop: 60;
  --orc-z-drawer: 70;
  --orc-z-toast: 80;
  --orc-focus-ring: 0 0 0 0.125rem var(--color-surface), 0 0 0 0.25rem var(--color-primary-700);
  --orc-focus-ring-inset: inset 0 0 0 0.125rem var(--color-primary-700);
  --orc-field-border: var(--color-text-tertiary);
  --orc-field-placeholder: var(--color-text-secondary);
  --orc-disabled-bg: var(--color-surface-muted);
  --orc-disabled-border: var(--color-border-strong);
  --orc-disabled-fg: var(--color-text-secondary);
  --orc-brand-tile-bg: var(--color-primary-700);
  --orc-brand-tile-fg: var(--color-white);
  --orc-brand-module-fg: var(--color-primary-700);
  --orc-assistant-tile-bg: var(--color-primary-50);
  --orc-assistant-tile-fg: var(--color-primary-700);
  --orc-shell-bg: var(--color-page-bg);
  --orc-main-bg: var(--color-surface);
  --orc-rail-bg: var(--color-page-bg);
  --orc-rail-border: var(--color-border);
  --orc-resizer-hover: var(--color-primary-200);
  --orc-resizer-active: var(--color-primary-600);
  --orc-resizer-grip: var(--color-text-secondary);
  --orc-resizer-grip-touch: var(--color-text-tertiary);
  --orc-drawer-bg: var(--color-page-bg);
  --orc-drawer-shadow: var(--shadow-md);
  --orc-backdrop-bg: var(--color-text-primary);
  @supports (color: color-mix(in lab, red, red)) {
    --orc-backdrop-bg: color-mix(in srgb, var(--color-text-primary) 32%, transparent);
  }
  --orc-conversation-fg: var(--color-text-primary);
  --orc-conversation-meta-fg: var(--color-text-secondary);
  --orc-conversation-hover-bg: var(--color-surface);
  --orc-conversation-selected-bg: var(--color-surface);
  --orc-conversation-selected-bar: var(--color-primary-600);
  --orc-conversation-delete-fg: var(--color-text-secondary);
  --orc-conversation-delete-hover-bg: var(--color-danger-50);
  --orc-conversation-delete-hover-fg: var(--color-danger-700);
  --orc-conversation-confirm-bg: var(--color-danger-50);
  --orc-conversation-confirm-border: var(--color-danger-100);
  --orc-conversation-confirm-fg: var(--color-danger-700);
  --orc-message-user-bg: var(--color-surface-selected);
  --orc-message-user-border: var(--color-primary-100);
  --orc-message-user-fg: var(--color-text-primary);
  --orc-message-assistant-fg: var(--color-text-primary);
  --orc-message-author-fg: var(--color-text-primary);
  --orc-message-meta-fg: var(--color-text-secondary);
  --orc-message-pending-border: var(--color-primary-200);
  --orc-message-failed-border: var(--color-danger-500);
  --orc-message-failed-fg: var(--color-danger-700);
  --orc-message-radius: var(--radius-lg);
  --orc-message-tail-radius: var(--space-1);
  --orc-reference-fg: var(--color-text-secondary);
  --orc-typing-dot: var(--color-primary-500);
  --orc-skeleton-bg: var(--color-border);
  --orc-composer-bg: var(--color-surface);
  --orc-composer-hint-fg: var(--color-text-secondary);
  --orc-counter-fg: var(--color-text-secondary);
  --orc-counter-warning-fg: var(--color-warning-700);
  --orc-counter-error-fg: var(--color-danger-700);
  --orc-suggestion-hover-bg: var(--color-primary-50);
  --orc-suggestion-hover-border: var(--color-primary-200);
  --orc-suggestion-hover-fg: var(--color-primary-700);
  --orc-disclaimer-fg: var(--color-text-secondary);
  --orc-disclaimer-icon-fg: var(--color-warning-700);
}
.login-page {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  block-size: 100vh;
  block-size: 100dvh;
  overflow: hidden;
}
.login-page__content {
  display: grid;
  min-block-size: 0;
  justify-items: center;
  align-content: start;
  padding: clamp(var(--space-6), 18vh, 10rem) var(--space-4) var(--space-6);
  overflow-y: auto;
  scrollbar-gutter: stable both-edges;
}
.login-panel {
  display: grid;
  inline-size: 100%;
  max-inline-size: var(--orc-login-width);
  gap: var(--space-5);
}
.login-brand {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.login-brand__logo {
  display: inline-grid;
  inline-size: 2.5rem;
  block-size: 2.5rem;
  flex: none;
  place-items: center;
  border-radius: var(--radius-md);
  background: var(--orc-brand-tile-bg);
  color: var(--orc-brand-tile-fg);
  box-shadow: var(--shadow-md);
}
.login-brand__text {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-1) var(--space-2);
}
.login-brand__product {
  font-size: var(--orc-text-brand-size);
  font-weight: var(--orc-text-brand-weight);
  line-height: var(--orc-text-brand-leading);
}
.login-brand__module {
  color: var(--orc-brand-module-fg);
  font-size: var(--orc-text-module-size);
  font-weight: var(--orc-text-module-weight);
}
.login-card {
  display: grid;
  gap: var(--space-5);
}
.login-card__title {
  margin: 0;
  font-size: var(--orc-text-headline-size);
  font-weight: var(--orc-text-headline-weight);
  line-height: var(--orc-text-headline-leading);
}
.login-card__subtitle {
  margin: var(--space-2) 0 0;
  color: var(--color-text-secondary);
  font-size: var(--orc-text-body-size);
  line-height: var(--orc-text-body-leading);
}
.login-form {
  display: grid;
  gap: var(--space-4);
}
.login-form .input {
  --input-height: var(--control-height-md);
  --input-font-size: 0.9375rem;
  --input-radius: var(--radius-md);
}
.login-form__inline-action {
  --button-height: 1.5rem;
  --button-padding-x: var(--space-2);
  margin-block-start: var(--space-1);
  margin-inline-start: calc(-1 * var(--space-2));
  font-weight: var(--orc-text-emphasis-weight);
}
.login-form__step {
  display: grid;
  gap: var(--space-4);
}
.login-code-sent {
  overflow-wrap: anywhere;
}
.login-code-sent strong {
  color: var(--color-text-primary);
  font-weight: var(--orc-text-label-weight);
}
.login-otp .input {
  --input-height: 3.25rem;
  display: grid;
}
.login-otp__control, .login-otp__slots {
  --login-otp-spacing: 0.5em;
  grid-area: 1 / 1;
  padding-inline-start: max(0rem, calc(50% - (6ch + 5 * var(--login-otp-spacing)) / 2));
  font-family: var(--orc-font-family-code);
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: var(--login-otp-spacing);
}
.login-otp__slots {
  overflow: hidden;
  color: var(--color-text-placeholder);
  pointer-events: none;
  user-select: none;
  white-space: pre;
}
.login-otp__filled {
  color: transparent;
}
.login-resend {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}
.login-resend .login-note {
  min-inline-size: 0;
  flex: 1 1 auto;
}
.login-resend__slot {
  display: inline-grid;
  grid-template-columns: max-content;
  min-block-size: var(--control-height-sm);
  flex: none;
  align-items: center;
  justify-items: end;
  white-space: nowrap;
}
.login-resend__slot > * {
  grid-area: 1 / 1;
}
.login-resend__sizer {
  visibility: hidden;
}
.login-resend__action {
  max-inline-size: 100%;
  font-weight: var(--orc-text-emphasis-weight);
}
.login-resend__countdown {
  padding-inline-end: var(--space-3);
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  font-variant-numeric: tabular-nums;
  font-weight: 400;
  line-height: var(--orc-text-meta-leading);
}
.login-note {
  margin: 0;
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  line-height: 1.5;
}
.login-card .inline-notice__title {
  font-weight: 500;
}
.login-footnote {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
  margin: 0;
  padding-block-start: var(--space-4);
  border-block-start: var(--orc-hairline) solid var(--color-border);
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  line-height: 1.5;
}
.login-footnote .icon {
  margin-block-start: 0.0625rem;
}
.login-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--space-2) var(--space-4);
  padding: var(--space-2) var(--space-3);
  border-block-end: var(--orc-hairline) solid var(--color-border);
  background: var(--color-page-bg);
  text-align: center;
}
@keyframes login-step-in {
  from {
    opacity: 0;
    transform: translateY(-0.25rem);
  }
}
@media (prefers-reduced-motion: no-preference) {
  .login-form__step--otp {
    animation: login-step-in var(--orc-duration-base) var(--orc-ease-out);
  }
}
@media (any-pointer: coarse) {
  .login-form__inline-action, .login-resend__action {
    --button-height: var(--orc-touch-target);
  }
  .login-resend__slot {
    min-block-size: var(--orc-touch-target);
  }
  .login-form .input {
    --input-font-size: var(--orc-text-input-touch-size);
  }
}
@media (max-width: 32rem) {
  .login-card .inline-notice__body {
    flex-basis: 0;
  }
}
@media (width < 40rem) {
  .login-page__content {
    padding-inline: var(--space-3);
  }
  .login-card {
    --card-padding: var(--space-5);
  }
  .login-card__title {
    font-size: var(--orc-text-headline-size-compact);
  }
  .login-form .input {
    --input-font-size: var(--orc-text-input-touch-size);
  }
}
@media (max-height: 30rem) {
  .login-page__content {
    padding-block: var(--space-4);
  }
  .login-panel, .login-card {
    gap: var(--space-3);
  }
}
.orc-sr-only {
  position: absolute;
  inline-size: var(--orc-hairline);
  block-size: var(--orc-hairline);
  margin: calc(-1 * var(--orc-hairline));
  padding: 0;
  overflow: hidden;
  border: 0;
  clip-path: inset(50%);
  white-space: nowrap;
}
.orc-reference {
  display: block;
  margin-block-start: var(--space-1);
  color: var(--orc-reference-fg);
  font-size: var(--orc-text-meta-size);
  font-variant-numeric: tabular-nums;
  line-height: var(--orc-text-meta-leading);
  overflow-wrap: anywhere;
}
.orc-reference__id {
  user-select: all;
}
.orc-shell, .login-page {
  --focus-ring: var(--orc-focus-ring);
  --input-focus-shadow: var(--orc-focus-ring);
  --input-invalid-shadow: var(--orc-focus-ring);
}
.orc-composer, .login-form {
  --input-border: var(--orc-field-border);
  --input-placeholder: var(--orc-field-placeholder);
}
:is(.orc-shell, .login-page) .button:is(:disabled, [aria-disabled="true"]):not([aria-busy="true"]) {
  --button-primary-bg: var(--orc-disabled-bg);
  --button-primary-border: var(--orc-disabled-border);
  --button-primary-fg: var(--orc-disabled-fg);
  --button-secondary-bg: var(--orc-disabled-bg);
  --button-secondary-border: var(--orc-disabled-border);
  --button-secondary-fg: var(--orc-disabled-fg);
  --button-destructive-bg: var(--orc-disabled-bg);
  --button-destructive-border: var(--orc-disabled-border);
  --button-destructive-fg: var(--orc-disabled-fg);
  --button-ghost-fg: var(--orc-disabled-fg);
  cursor: not-allowed;
  opacity: 1;
}
:is(.orc-shell, .login-page) .button:is(:disabled, [aria-disabled="true"]):not([aria-busy="true"], :focus-visible) {
  box-shadow: none;
}
.orc-shell {
  container: orc-shell / inline-size;
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  block-size: 100vh;
  block-size: var(--orc-shell-height, 100dvh);
  overflow: hidden;
  background: var(--orc-shell-bg);
}
.orc-shell__brand {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}
.orc-shell__demo, .orc-shell__action {
  flex: none;
}
.orc-shell__user {
  display: inline-flex;
  min-inline-size: 0;
  align-items: center;
}
.orc-shell__user-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.orc-shell__menu, .orc-shell__sign-out {
  --button-ghost-fg: var(--color-text-secondary);
  font-weight: var(--orc-text-emphasis-weight);
}
.orc-shell__body {
  position: relative;
  display: grid;
  grid-template-columns: clamp(var(--orc-rail-width-min), var(--orc-rail-width), min(var(--orc-rail-width-max), 100cqi - 40rem)) minmax(0, 1fr);
  min-block-size: 0;
}
.orc-shell__rail {
  min-inline-size: 0;
  min-block-size: 0;
  border-inline-end: var(--orc-hairline) solid var(--orc-rail-border);
  background: var(--orc-rail-bg);
}
.orc-shell__backdrop {
  display: none;
}
.orc-shell__main {
  display: flex;
  min-inline-size: 0;
  min-block-size: 0;
  flex-direction: column;
  background: var(--orc-main-bg);
}
.orc-shell__title {
  flex: none;
  margin: 0;
  padding: var(--space-2) var(--orc-gutter);
  overflow: hidden;
  border-block-end: var(--orc-hairline) solid var(--color-border);
  font-size: var(--orc-text-body-size);
  font-weight: var(--orc-text-label-weight);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.orc-shell__resizer {
  --orc-resizer-edge: 0.5rem;
  position: absolute;
  z-index: var(--orc-z-raised);
  grid-area: 1 / 1 / 2 / 2;
  inset-block: 0;
  inset-inline-end: calc(-1 * var(--orc-resizer-edge));
  inline-size: 1rem;
  cursor: col-resize;
  touch-action: none;
}
.orc-shell__resizer::before, .orc-shell__resizer::after {
  position: absolute;
  content: "";
  opacity: 0;
  transition: opacity var(--orc-duration-fast) var(--orc-ease-out);
}
.orc-shell__resizer::before {
  inset-block: 0;
  inset-inline-start: calc(var(--orc-resizer-edge) - 0.125rem);
  inline-size: 0.125rem;
  background: var(--orc-resizer-hover);
}
.orc-shell__resizer::after {
  inset-block: 0;
  inset-inline-start: calc(var(--orc-resizer-edge) - var(--orc-hairline) - 0.25rem);
  inline-size: 0.5rem;
  block-size: 1.5rem;
  margin-block: auto;
  border-radius: var(--radius-sm);
  background: radial-gradient(circle, var(--orc-resizer-grip) 0.125rem, transparent 0.140625rem) center / 0.5rem 0.5rem repeat-y, var(--orc-main-bg);
}
.orc-shell__resizer:hover::before, .orc-shell__resizer:hover::after {
  opacity: 1;
  transition-delay: var(--orc-duration-intent);
}
.orc-shell__resizer:focus-visible {
  outline: var(--orc-hairline) solid transparent;
  outline-offset: calc(-1 * var(--orc-hairline));
}
.orc-shell__resizer:focus-visible::before, .orc-shell__resizer:focus-visible::after, .orc-shell--resizing .orc-shell__resizer::before, .orc-shell--resizing .orc-shell__resizer::after {
  opacity: 1;
  transition-delay: 0s;
}
.orc-shell__resizer:focus-visible::before, .orc-shell--resizing .orc-shell__resizer::before {
  background: var(--orc-resizer-active);
}
.orc-shell__resizer:focus-visible::after {
  box-shadow: var(--orc-focus-ring);
}
.orc-rail {
  display: flex;
  block-size: 100%;
  min-block-size: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-3) var(--space-3);
}
.orc-rail > :not(.orc-rail__content) {
  flex-shrink: 0;
}
.orc-rail__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
  padding-inline: var(--space-3) 0;
}
.orc-rail__title {
  margin: 0;
  font-size: var(--orc-text-title-size);
  font-weight: var(--orc-text-title-weight);
  line-height: var(--orc-text-title-leading);
}
.orc-rail__meta {
  margin: var(--space-1) 0 0;
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-rail__close, .orc-rail__collapse {
  --button-ghost-fg: var(--color-text-secondary);
  flex: none;
}
.orc-rail__close {
  display: none;
  margin-block: calc(-1 * var(--space-2));
}
.orc-rail__collapse {
  margin-block: calc(-1 * var(--space-1));
}
.orc-rail__notice {
  display: grid;
  gap: var(--space-2);
}
.orc-rail__notice:empty {
  margin-block-start: calc(-1 * var(--space-3));
}
.orc-rail__content {
  display: flex;
  min-block-size: 0;
  flex: 1 1 auto;
  flex-direction: column;
  overflow-y: auto;
}
.orc-rail__list {
  display: grid;
  min-block-size: 0;
  flex: 1 1 auto;
  align-content: start;
  gap: var(--space-1);
  margin: 0;
  padding: var(--space-1) 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  list-style: none;
  scrollbar-width: thin;
}
.orc-rail__empty {
  margin: 0;
  padding: var(--space-1) var(--space-3);
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-rail__hint {
  margin: auto 0 0;
  padding: var(--space-3) var(--space-3) 0;
  border-block-start: var(--orc-hairline) solid var(--orc-rail-border);
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-rail__context {
  display: none;
  flex: none;
  justify-items: center;
  gap: var(--space-2);
}
.orc-conversation {
  position: relative;
  display: flex;
  min-inline-size: 0;
  align-items: center;
  border-radius: var(--radius-sm);
  color: var(--orc-conversation-fg);
  transition: background-color var(--orc-duration-fast) var(--orc-ease-out), box-shadow var(--orc-duration-fast) var(--orc-ease-out);
}
.orc-conversation:hover {
  background: var(--orc-conversation-hover-bg);
}
.orc-conversation--selected {
  background: var(--orc-conversation-selected-bg);
  box-shadow: inset var(--orc-bar-width) 0 0 var(--orc-conversation-selected-bar), var(--shadow-sm);
}
.orc-conversation__select {
  display: flex;
  min-inline-size: 0;
  min-block-size: var(--orc-row-height);
  flex: 1 1 auto;
  align-items: center;
  gap: var(--space-3);
  padding-block: var(--space-2);
  padding-inline: var(--space-3) var(--space-2);
  border: 0;
  border-radius: inherit;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: start;
  cursor: pointer;
}
.orc-conversation__select:focus-visible {
  box-shadow: var(--orc-focus-ring-inset);
  outline: var(--orc-hairline) solid transparent;
  outline-offset: calc(-1 * var(--orc-hairline));
}
.orc-conversation__title {
  min-inline-size: 0;
  flex: 1 1 auto;
  overflow: hidden;
  font-size: var(--orc-text-body-size);
  font-weight: 500;
  line-height: var(--orc-text-body-leading);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.orc-conversation--selected .orc-conversation__title {
  font-weight: var(--orc-text-label-weight);
}
.orc-conversation__title--untitled {
  color: var(--color-text-secondary);
}
.orc-conversation__time {
  flex: none;
  color: var(--orc-conversation-meta-fg);
  font-size: var(--orc-text-meta-size);
  font-variant-numeric: tabular-nums;
  line-height: var(--orc-text-meta-leading);
}
.orc-conversation__delete {
  --button-ghost-fg: var(--orc-conversation-delete-fg);
  --button-ghost-bg-hover: var(--orc-conversation-delete-hover-bg);
  flex: none;
  margin-inline-end: var(--space-1);
  opacity: 0.6;
  transition: opacity var(--orc-duration-fast) var(--orc-ease-out);
}
.orc-conversation:hover .orc-conversation__delete, .orc-conversation:focus-within .orc-conversation__delete, .orc-conversation--selected .orc-conversation__delete {
  opacity: 1;
}
.orc-conversation__delete:hover:not(:disabled) {
  color: var(--orc-conversation-delete-hover-fg);
}
.orc-conversation__delete:focus-visible {
  opacity: 1;
  box-shadow: var(--orc-focus-ring-inset);
  outline: var(--orc-hairline) solid transparent;
  outline-offset: calc(-1 * var(--orc-hairline));
}
.orc-conversation__select:disabled, .orc-conversation__delete:disabled {
  cursor: not-allowed;
}
.orc-conversation--disabled {
  pointer-events: none;
}
.orc-conversation--disabled:not(.orc-conversation--selected) {
  opacity: 0.55;
}
.orc-conversation--confirm, .orc-conversation--confirm:hover {
  border: var(--orc-hairline) solid var(--orc-conversation-confirm-border);
  background: var(--orc-conversation-confirm-bg);
  box-shadow: none;
}
.orc-conversation--deleting {
  cursor: progress;
}
.orc-conversation__confirm {
  display: grid;
  min-inline-size: 0;
  flex: 1 1 auto;
  gap: var(--space-2);
  padding: var(--space-3);
}
.orc-conversation__confirm-title {
  overflow: hidden;
  font-size: var(--orc-text-body-size);
  font-weight: var(--orc-text-label-weight);
  line-height: var(--orc-text-body-leading);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.orc-conversation__confirm-text {
  margin: 0;
  color: var(--orc-conversation-confirm-fg);
  font-size: var(--orc-text-label-size);
  line-height: 1.4;
}
.orc-conversation__confirm-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.orc-skeleton {
  display: grid;
  gap: var(--space-1);
  padding: var(--space-1);
}
.orc-skeleton__row {
  display: flex;
  min-block-size: var(--orc-row-height);
  align-items: center;
  gap: var(--space-3);
  padding-inline: var(--space-3) calc(var(--control-height-sm) + var(--space-3));
}
.orc-skeleton__line, .orc-skeleton__bubble, .orc-skeleton__avatar {
  display: block;
  border-radius: var(--radius-sm);
  background: var(--orc-skeleton-bg);
  animation: orc-skeleton-pulse var(--orc-duration-loop) var(--orc-ease-standard) infinite;
}
.orc-skeleton__line {
  block-size: 0.625rem;
}
.orc-skeleton__line--title {
  inline-size: 68%;
}
.orc-skeleton__row:nth-child(3n + 1) .orc-skeleton__line--title {
  inline-size: 52%;
}
.orc-skeleton__row:nth-child(3n + 2) .orc-skeleton__line--title {
  inline-size: 78%;
}
.orc-skeleton__line--meta {
  inline-size: 2.25rem;
  margin-inline-start: auto;
}
.orc-skeleton--thread {
  gap: var(--space-6);
  padding: 0;
}
.orc-skeleton__bubble {
  justify-self: end;
  inline-size: min(60%, 22rem);
  block-size: 2.75rem;
  border-radius: var(--orc-message-radius);
  border-end-end-radius: var(--orc-message-tail-radius);
}
.orc-skeleton__message {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-3);
}
.orc-skeleton__avatar {
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: var(--radius-md);
}
.orc-skeleton__lines {
  display: grid;
  gap: var(--space-3);
  padding-block-start: var(--space-3);
}
.orc-skeleton__lines .orc-skeleton__line:nth-child(1) {
  inline-size: 94%;
}
.orc-skeleton__lines .orc-skeleton__line:nth-child(2) {
  inline-size: 82%;
}
.orc-skeleton__lines .orc-skeleton__line:nth-child(3) {
  inline-size: 46%;
}
@keyframes orc-skeleton-pulse {
  50% {
    opacity: 0.45;
  }
}
.orc-thread {
  position: relative;
  display: flex;
  min-block-size: 0;
  flex: 1 1 auto;
  flex-direction: column;
}
.orc-thread__notices, .orc-thread__content {
  inline-size: 100%;
  max-inline-size: calc(var(--orc-thread-measure) + 2 * var(--orc-gutter));
  margin-inline: auto;
  padding-inline: var(--orc-gutter);
}
.orc-thread__notices {
  display: grid;
  flex: none;
  gap: 0;
}
.orc-thread__notices:has(> :not(.orc-thread__rail-alert) .inline-notice) {
  padding-block: var(--space-4) var(--space-3);
}
.orc-thread__scroll {
  position: relative;
  display: flex;
  min-block-size: 0;
  flex: 1 1 auto;
  flex-direction: column;
  overflow-y: auto;
  overscroll-behavior: contain;
  scroll-padding-block-end: calc(var(--orc-touch-target) + var(--space-6));
  scrollbar-gutter: stable both-edges;
  scrollbar-width: thin;
}
.orc-thread__scroll:focus-visible {
  box-shadow: var(--orc-focus-ring-inset);
  outline: var(--orc-hairline) solid transparent;
  outline-offset: calc(-1 * var(--orc-hairline));
}
.orc-thread__content {
  --orc-thread-gap: var(--space-8);
  --orc-thread-pair-gap: var(--space-4);
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
  padding-block: var(--space-6);
}
.orc-thread__log {
  display: flex;
  flex-direction: column;
}
.orc-thread__log > * + * {
  margin-block-start: var(--orc-thread-gap);
}
.orc-thread__log > .orc-message--user + .orc-message--assistant, .orc-thread__log:not(:empty) ~ .orc-typing:has(.orc-typing__text) {
  margin-block-start: var(--orc-thread-pair-gap);
}
.orc-thread__extra:has(.orc-welcome) {
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
}
.orc-thread__jump {
  position: absolute;
  z-index: var(--orc-z-raised);
  inset-block-end: var(--space-3);
  inset-inline: 0;
  inline-size: fit-content;
  margin-inline: auto;
  box-shadow: var(--shadow-md);
}
.orc-thread__jump:focus-visible {
  box-shadow: var(--orc-focus-ring), var(--shadow-md);
}
.orc-thread__jump[hidden] {
  display: none;
}
.orc-message {
  display: grid;
  min-inline-size: 0;
  gap: var(--space-2);
}
.orc-message--user {
  justify-items: end;
}
.orc-message--assistant {
  --orc-answer-indent: calc(1.5rem + var(--space-3));
  gap: var(--space-1);
}
.orc-message__bubble {
  max-inline-size: min(88%, var(--orc-bubble-max));
  padding: var(--space-3) var(--space-4);
  border: var(--orc-hairline) solid var(--orc-message-user-border);
  border-radius: var(--orc-message-radius);
  border-end-end-radius: var(--orc-message-tail-radius);
  background: var(--orc-message-user-bg);
  color: var(--orc-message-user-fg);
}
.orc-message__header {
  display: flex;
  min-inline-size: 0;
  align-items: center;
  gap: var(--space-3);
}
.orc-message__avatar, .orc-typing__avatar {
  --avatar-size: 1.5rem;
  --avatar-bg: var(--orc-assistant-tile-bg);
  --avatar-fg: var(--orc-assistant-tile-fg);
  border-radius: var(--radius-md);
}
.orc-message__author {
  color: var(--orc-message-author-fg);
  font-size: var(--orc-text-label-size);
  font-weight: var(--orc-text-label-weight);
  line-height: var(--orc-text-label-leading);
}
.orc-message__time {
  color: var(--orc-message-meta-fg);
  font-size: var(--orc-text-meta-size);
  font-variant-numeric: tabular-nums;
}
.orc-message__body {
  min-inline-size: 0;
  color: var(--orc-message-assistant-fg);
}
.orc-message--assistant .orc-message__body, .orc-message--assistant .orc-message__meta {
  padding-inline-start: var(--orc-answer-indent);
}
.orc-message__text {
  margin: 0;
  font-size: var(--orc-text-message-size);
  font-weight: var(--orc-text-message-weight);
  line-height: var(--orc-text-message-leading);
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.orc-message__body > * + * {
  margin-block-start: 0.75em;
}
.orc-message__meta {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  margin: 0;
  color: var(--orc-message-meta-fg);
  font-size: var(--orc-text-meta-size);
  font-variant-numeric: tabular-nums;
  line-height: var(--orc-text-meta-leading);
}
.orc-message--pending .orc-message__bubble {
  border-style: dashed;
  border-color: var(--orc-message-pending-border);
}
.orc-message--failed {
  grid-template-columns: fit-content(min(88%, var(--orc-bubble-max)));
  justify-content: end;
}
.orc-message--failed .orc-message__bubble {
  max-inline-size: 100%;
  justify-self: stretch;
  border-color: var(--orc-message-failed-border);
}
.orc-message__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-1);
  margin-block-start: var(--space-1);
  padding-inline-start: var(--orc-answer-indent);
  transition: opacity var(--orc-duration-fast) var(--orc-ease-out);
}
.orc-message--assistant:has(~ .orc-message--assistant) .orc-message__actions {
  opacity: 0;
}
.orc-message--assistant:is(:hover, :focus-within) .orc-message__actions {
  opacity: 1;
}
.orc-message__copy {
  --button-ghost-fg: var(--orc-message-meta-fg);
  flex: none;
}
.orc-message__copy-icon {
  display: inline-flex;
}
.orc-message__error {
  display: flex;
  max-inline-size: 100%;
  align-items: flex-start;
  gap: var(--space-2);
  color: var(--orc-message-failed-fg);
}
.orc-message__error > .icon {
  margin-block-start: 0.125rem;
}
.orc-message__error-body {
  display: grid;
  min-inline-size: 0;
  gap: var(--space-1);
}
.orc-message__error-text {
  margin: 0;
  font-size: var(--orc-text-label-size);
  font-weight: 500;
  line-height: 1.4;
}
.orc-message__error-meta {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-1);
}
.orc-message__error-meta .orc-reference {
  min-inline-size: 0;
  margin: 0;
}
.orc-message__retry {
  margin-inline-start: var(--space-1);
}
.orc-message__retry-note {
  color: var(--orc-message-meta-fg);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-md {
  min-inline-size: 0;
  font-size: var(--orc-text-message-size);
  font-weight: var(--orc-text-message-weight);
  line-height: var(--orc-text-message-leading);
  overflow-wrap: anywhere;
}
.orc-md__paragraph {
  margin: 0;
}
.orc-md__heading {
  margin: 0;
  color: var(--orc-message-author-fg);
  font-weight: var(--orc-text-title-weight);
  line-height: var(--orc-text-title-leading);
}
.orc-md__heading--h3 {
  font-size: var(--orc-text-title-size);
}
.orc-md__heading--h4 {
  font-size: var(--orc-text-message-size);
}
.orc-md__heading--h5 {
  font-size: var(--orc-text-message-size);
  font-weight: var(--orc-text-label-weight);
}
.orc-md__code {
  padding-inline: var(--space-1);
  border: var(--orc-hairline) solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface-muted);
  font-family: var(--orc-font-family-code);
  font-size: max(var(--orc-text-meta-size), 0.875em);
}
.orc-md__codeblock {
  min-inline-size: 0;
  overflow: hidden;
  border: var(--orc-hairline) solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
}
.orc-md__code-lang {
  margin: 0;
  padding: var(--space-1) var(--space-3);
  border-block-end: var(--orc-hairline) solid var(--color-border);
  color: var(--orc-message-meta-fg);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-md__pre {
  margin: 0;
  padding: var(--space-2) var(--space-3);
  overflow-x: auto;
  font-family: var(--orc-font-family-code);
  font-size: var(--orc-text-body-size);
  line-height: var(--orc-text-body-leading);
  overflow-wrap: normal;
  scrollbar-width: thin;
  tab-size: 4;
  white-space: pre;
}
.orc-md__pre-code {
  font: inherit;
}
.orc-md__list {
  margin: 0;
  padding-inline-start: var(--space-6);
}
.orc-md__list--nested {
  margin-block-start: var(--space-1);
}
.orc-md__item + .orc-md__item {
  margin-block-start: var(--space-1);
}
.orc-md__item::marker {
  color: var(--orc-message-meta-fg);
  font-variant-numeric: tabular-nums;
}
.orc-md__quote {
  margin: 0;
  padding: var(--space-2) var(--space-3);
  border-inline-start: var(--orc-bar-width) solid var(--color-border-strong);
  border-start-end-radius: var(--radius-sm);
  border-end-end-radius: var(--radius-sm);
  background: var(--color-surface-muted);
  color: var(--color-text-secondary);
}
.orc-md__table-wrap {
  inline-size: fit-content;
  max-inline-size: 100%;
  overflow-x: auto;
  border: var(--orc-hairline) solid var(--color-border);
  border-radius: var(--radius-md);
  scrollbar-width: thin;
}
.orc-md__table {
  border-collapse: collapse;
  font-size: var(--orc-text-body-size);
  font-variant-numeric: tabular-nums;
  line-height: var(--orc-text-body-leading);
  overflow-wrap: normal;
}
.orc-md__th, .orc-md__td {
  padding: var(--space-1) var(--space-3);
  text-align: start;
  vertical-align: top;
}
.orc-md__th {
  border-block-end: var(--orc-hairline) solid var(--color-border);
  background: var(--color-surface-muted);
  font-weight: var(--orc-text-label-weight);
}
.orc-md__td {
  border-block-start: var(--orc-hairline) solid var(--color-border);
}
.orc-md__th + .orc-md__th, .orc-md__td + .orc-md__td {
  border-inline-start: var(--orc-hairline) solid var(--color-border);
}
.orc-md__rule {
  block-size: 0;
  margin: 0;
  border: 0;
  border-block-start: var(--orc-hairline) solid var(--color-border);
}
.orc-md__link {
  border-radius: var(--radius-sm);
  color: var(--color-primary-700);
  text-decoration: underline;
  text-decoration-thickness: var(--orc-hairline);
  text-underline-offset: 0.15em;
}
.orc-md__link:hover {
  text-decoration-thickness: 0.125rem;
}
.orc-md__link::after {
  content: "\2197";
  content: "\2197" / "";
  display: inline-block;
  margin-inline-start: 0.125em;
  font-size: 0.875em;
  text-decoration: none;
}
.orc-md__link:focus-visible {
  box-shadow: var(--orc-focus-ring);
  outline: var(--orc-hairline) solid transparent;
}
.orc-md__pre:focus-visible, .orc-md__table-wrap:focus-visible {
  box-shadow: var(--orc-focus-ring-inset);
  outline: var(--orc-hairline) solid transparent;
  outline-offset: calc(-1 * var(--orc-hairline));
}
.orc-md > * + *, .orc-md__quote > * + * {
  margin-block-start: var(--space-2);
}
.orc-md > * + .orc-md__heading {
  margin-block-start: var(--space-4);
}
.orc-typing {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.orc-typing__avatar {
  margin-inline-end: var(--space-1);
}
.orc-typing__dots {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: var(--space-1);
  padding-inline: var(--space-1);
}
.orc-typing__dot {
  inline-size: 0.4375rem;
  block-size: 0.4375rem;
  border-radius: 50%;
  background: var(--orc-typing-dot);
  animation: orc-typing-bounce var(--orc-duration-loop) var(--orc-ease-standard) infinite;
}
.orc-typing__dot:nth-child(2) {
  animation-delay: 160ms;
}
.orc-typing__dot:nth-child(3) {
  animation-delay: 320ms;
}
.orc-typing__text, .orc-typing__elapsed {
  color: var(--orc-message-meta-fg);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-typing__text {
  min-inline-size: 0;
}
.orc-typing__elapsed {
  flex: none;
  margin-inline-start: calc(-1 * var(--space-1));
  font-variant-numeric: tabular-nums;
}
@keyframes orc-typing-bounce {
  0%, 60%, 100% {
    opacity: 0.35;
    transform: none;
  }
  30% {
    opacity: 1;
    transform: translateY(-0.1875rem);
  }
}
.orc-welcome {
  inline-size: 100%;
  margin-block-start: auto;
}
.orc-welcome__title {
  margin: 0;
  font-size: var(--orc-text-headline-size);
  font-weight: var(--orc-text-headline-weight);
  line-height: var(--orc-text-headline-leading);
  text-wrap: balance;
}
.orc-welcome__text {
  margin: var(--space-2) 0 0;
  color: var(--color-text-secondary);
  font-size: var(--orc-text-body-size);
  line-height: var(--orc-text-body-leading);
}
.orc-welcome__suggestions {
  display: grid;
  inline-size: 100%;
  gap: var(--space-2);
  margin: var(--space-5) 0 0;
  padding: 0;
  list-style: none;
}
.orc-welcome__suggestion {
  --chip-fg: var(--color-text-primary);
  inline-size: 100%;
  min-block-size: var(--control-height-md);
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-3);
  font-weight: 500;
  line-height: 1.35;
  text-align: start;
  white-space: normal;
  cursor: pointer;
  transition: background-color var(--orc-duration-fast) var(--orc-ease-out), border-color var(--orc-duration-fast) var(--orc-ease-out), color var(--orc-duration-fast) var(--orc-ease-out);
}
.orc-welcome__suggestion:hover:not(:disabled, [aria-disabled="true"]) {
  --chip-bg: var(--orc-suggestion-hover-bg);
  --chip-border: var(--orc-suggestion-hover-border);
  --chip-fg: var(--orc-suggestion-hover-fg);
}
.orc-welcome__suggestion:focus-visible {
  box-shadow: var(--orc-focus-ring);
  outline: var(--orc-hairline) solid transparent;
  outline-offset: calc(-1 * var(--orc-hairline));
}
.orc-welcome__suggestion:disabled, .orc-welcome__suggestion[aria-disabled="true"] {
  --chip-bg: var(--orc-disabled-bg);
  --chip-border: var(--orc-disabled-border);
  --chip-fg: var(--orc-disabled-fg);
  cursor: not-allowed;
}
.orc-welcome__note {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: var(--space-5) 0 0;
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-welcome__note + .orc-welcome__note {
  margin-block-start: var(--space-2);
}
.orc-composer {
  display: grid;
  flex: none;
  inline-size: 100%;
  max-inline-size: calc(var(--orc-composer-max) + 2 * var(--orc-gutter));
  gap: var(--space-2);
  margin-inline: auto;
  padding: var(--space-2) var(--orc-gutter) var(--space-3);
  background: var(--orc-composer-bg);
}
.orc-composer--divided {
  box-shadow: inset 0 var(--orc-hairline) 0 var(--orc-composer-divider);
}
.orc-composer__form {
  display: grid;
  gap: var(--space-1);
}
.orc-composer__field {
  --input-font-size: var(--orc-text-message-size);
  --input-padding-x: var(--space-3);
  --input-radius: var(--radius-lg);
  --orc-send-block-size: 2.25rem;
  --orc-send-inline-size: 6.25rem;
  --orc-send-inset: var(--space-2);
  min-block-size: calc(var(--orc-send-block-size) + 2 * var(--orc-send-inset));
}
.orc-composer__field:has(.orc-composer__send:focus) {
  --input-border-focus: var(--orc-field-border);
  --input-focus-shadow: none;
  --input-invalid-shadow: none;
}
.orc-composer__control {
  min-block-size: calc(2em * var(--orc-text-message-leading) + 2 * var(--space-2));
  max-block-size: min(calc(1em * var(--orc-composer-max-lines) * var(--orc-text-message-leading) + 2 * var(--space-2)), 40dvh);
  padding-block: var(--space-2);
  padding-inline-end: calc(var(--orc-send-inline-size) + var(--orc-send-inset) + var(--space-2));
  line-height: var(--orc-text-message-leading);
  field-sizing: content;
  resize: none;
}
.orc-composer__send {
  --button-height: var(--orc-send-block-size);
  position: absolute;
  inset-block-end: var(--orc-send-inset);
  inset-inline-end: var(--orc-send-inset);
  inline-size: var(--orc-send-inline-size);
}
.orc-composer__footer {
  display: flex;
  min-inline-size: 0;
  min-block-size: calc(var(--orc-text-meta-size) * var(--orc-text-meta-leading));
  align-items: center;
  gap: var(--space-3);
  padding-inline: var(--space-3);
}
.orc-composer__hint, .orc-composer__note, .orc-composer__error {
  min-inline-size: 0;
  flex: 1 1 auto;
  margin: 0;
}
.orc-composer__hint, .orc-composer__note {
  color: var(--orc-composer-hint-fg);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-composer__hint {
  visibility: hidden;
}
.orc-composer__form:has(.orc-composer__control:focus) .orc-composer__hint {
  visibility: visible;
}
.orc-composer__form:has(.orc-composer__send:focus) .orc-composer__hint {
  visibility: hidden;
}
.orc-composer__note, .orc-composer__error {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.orc-composer__count {
  flex: none;
  margin-inline-start: auto;
  color: var(--orc-counter-fg);
  font-size: var(--orc-text-meta-size);
  font-variant-numeric: tabular-nums;
  font-weight: var(--orc-text-label-weight);
  line-height: var(--orc-text-meta-leading);
}
.orc-composer__count--warning {
  color: var(--orc-counter-warning-fg);
}
.orc-composer__count--error {
  color: var(--orc-counter-error-fg);
}
.orc-disclaimer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  margin: 0;
  color: var(--orc-disclaimer-fg);
  font-size: var(--orc-text-meta-size);
  font-weight: var(--orc-text-label-weight);
  line-height: var(--orc-text-meta-leading);
  text-align: center;
}
.orc-disclaimer > .icon {
  color: var(--orc-disclaimer-icon-fg);
}
.orc-shell--resizing, .orc-shell--resizing * {
  cursor: col-resize;
  user-select: none;
}
.orc-shell--resizing .orc-shell__body, .orc-shell--resizing .orc-shell__rail, .orc-shell--resizing .orc-shell__resizer::before, .orc-shell--resizing .orc-shell__resizer::after {
  transition: none;
}
@container orc-shell (width >= 64rem) {
  .orc-shell__body {
    transition: grid-template-columns var(--orc-duration-base) var(--orc-ease-emphasized);
  }
  .orc-shell__rail {
    grid-area: 1 / 1 / 2 / 2;
    overflow: hidden;
  }
  .orc-shell__main {
    grid-area: 1 / 2 / 2 / 3;
  }
  .orc-rail {
    min-inline-size: var(--orc-rail-width-min);
  }
  .orc-shell:not(.orc-shell--rail-collapsed) .orc-shell__menu {
    display: none;
  }
  .orc-shell:not(.orc-shell--rail-collapsed) .orc-shell__title {
    position: absolute;
    inline-size: var(--orc-hairline);
    block-size: var(--orc-hairline);
    padding: 0;
    border: 0;
    clip-path: inset(50%);
  }
  .orc-shell--rail-collapsed .orc-shell__body {
    grid-template-columns: 0 minmax(0, 1fr);
  }
  .orc-shell--rail-collapsed .orc-shell__rail {
    visibility: hidden;
    transition: visibility 0s linear var(--orc-duration-base);
  }
  .orc-shell--rail-collapsed .orc-shell__resizer {
    display: none;
  }
}
.orc-thread__rail-alert {
  display: none;
}
@container orc-shell (width < 64rem) {
  .orc-thread__rail-alert {
    display: block;
  }
  .orc-thread__notices:has(.orc-thread__rail-alert .inline-notice) {
    padding-block: var(--space-4) var(--space-3);
  }
  .orc-shell .app-header__inner {
    inline-size: 100%;
  }
  .orc-shell__menu {
    display: inline-flex;
  }
  .orc-shell__module, .orc-shell__user {
    display: none;
  }
  .orc-shell__body {
    grid-template-columns: minmax(0, 1fr);
  }
  .orc-shell__resizer, .orc-rail__collapse {
    display: none;
  }
  .orc-shell__rail {
    position: fixed;
    z-index: var(--orc-z-drawer);
    inset-block: 0;
    inset-inline-start: 0;
    inline-size: min(var(--orc-drawer-width), calc(100% - var(--space-12)));
    border-inline-end: 0;
    background: var(--orc-drawer-bg);
    box-shadow: var(--orc-drawer-shadow);
    visibility: hidden;
    transform: translateX(-100%);
    transition: transform var(--orc-duration-slow) var(--orc-ease-emphasized), visibility 0s linear var(--orc-duration-slow);
  }
  .orc-shell--drawer-open .orc-shell__rail {
    visibility: visible;
    transform: none;
    transition: transform var(--orc-duration-slow) var(--orc-ease-emphasized), visibility 0s;
  }
  .orc-shell__backdrop {
    position: fixed;
    z-index: var(--orc-z-backdrop);
    display: block;
    inset: 0;
    background: var(--orc-backdrop-bg);
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--orc-duration-slow) var(--orc-ease-out), visibility 0s linear var(--orc-duration-slow);
  }
  .orc-shell--drawer-open .orc-shell__backdrop {
    opacity: 1;
    visibility: visible;
    transition: opacity var(--orc-duration-slow) var(--orc-ease-out), visibility 0s;
  }
  .orc-rail {
    padding-block-start: var(--space-5);
  }
  .orc-rail__close {
    display: inline-flex;
  }
  .orc-rail__context {
    display: grid;
  }
}
@container orc-shell (width < 45rem) {
  .orc-shell__brand .app-header__product {
    display: none;
  }
}
@container orc-shell (width <= 40rem) {
  .orc-message--assistant:has(~ .orc-message--assistant) .orc-message__actions {
    opacity: 1;
  }
  .orc-shell .app-header__inner {
    min-block-size: var(--orc-header-height-compact);
    gap: var(--space-2);
    padding-inline: var(--space-3);
  }
  .orc-shell .app-header__spacer {
    min-inline-size: 0;
  }
  .orc-shell__rail {
    inline-size: 100%;
  }
  .orc-shell__label {
    position: absolute;
    inline-size: var(--orc-hairline);
    block-size: var(--orc-hairline);
    margin: calc(-1 * var(--orc-hairline));
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .orc-shell__action {
    --button-padding-x: 0;
    inline-size: var(--button-height);
  }
  .orc-shell__user {
    display: none;
  }
  .orc-shell__main {
    --orc-gutter: var(--orc-gutter-compact);
  }
  .orc-thread__content {
    --orc-thread-gap: var(--space-6);
    --orc-thread-pair-gap: var(--space-3);
    padding-block: var(--space-4);
  }
  .orc-message--assistant {
    --orc-answer-indent: 0;
  }
  .orc-welcome__title {
    font-size: var(--orc-text-headline-size-compact);
  }
  .orc-composer__field {
    --input-font-size: var(--orc-text-input-touch-size);
    --orc-send-block-size: var(--orc-touch-target);
    --orc-send-inline-size: var(--orc-touch-target);
  }
  .orc-composer__send {
    --button-padding-x: 0;
  }
  .orc-composer__send-label {
    position: absolute;
    inline-size: var(--orc-hairline);
    block-size: var(--orc-hairline);
    margin: calc(-1 * var(--orc-hairline));
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .orc-composer__hint {
    display: none;
  }
  .orc-conversation__select, .orc-welcome__suggestion {
    min-block-size: var(--orc-touch-target);
  }
  .orc-conversation__delete {
    --button-height: var(--orc-touch-target);
    margin-inline-end: 0;
    opacity: 1;
  }
  .orc-shell__sign-out, .orc-shell__menu, .orc-rail__close, .orc-thread__jump, .orc-message__copy, .orc-message__retry, .orc-thread__notices .inline-notice__action .button, .orc-conversation__confirm-actions .button {
    --button-height: var(--orc-touch-target);
  }
}
@media (max-width: 32rem) {
  .orc-thread__notices .inline-notice__body {
    flex-basis: 0;
  }
  .orc-message__error-meta .orc-reference {
    max-inline-size: calc(100% - var(--orc-touch-target) - var(--space-1));
  }
  .orc-message__error-meta:has(.orc-message__retry)::after {
    flex-basis: 100%;
    order: 1;
    content: "";
  }
  .orc-message__retry, .orc-message__retry-note {
    order: 2;
  }
  .orc-message__retry {
    margin-inline-start: 0;
  }
}
@media (max-height: 30rem) {
  .orc-rail {
    gap: var(--space-2);
    padding-block: var(--space-2);
  }
  .orc-rail__meta, .orc-composer__hint {
    display: none;
  }
  .orc-thread__notices:has(> :not(.orc-thread__rail-alert) .inline-notice) {
    padding-block: var(--space-2);
  }
  .orc-rail__hint {
    padding-block-start: var(--space-2);
  }
  .orc-rail__notice:empty {
    margin-block-start: calc(-1 * var(--space-2));
  }
  .orc-thread__content {
    --orc-thread-gap: var(--space-4);
    padding-block: var(--space-3);
  }
  .orc-composer {
    gap: var(--space-1);
    padding-block: var(--space-1) var(--space-2);
  }
  .orc-composer__field {
    --orc-send-inset: var(--space-1);
  }
  .orc-composer__control {
    min-block-size: calc(1em * var(--orc-text-message-leading) + 2 * var(--space-2));
    max-block-size: 25dvh;
  }
  .orc-welcome {
    margin-block: 0;
    padding-block: var(--space-4);
  }
  .orc-welcome__suggestions, .orc-welcome__note {
    margin-block-start: var(--space-3);
  }
}
@media (any-pointer: coarse) {
  .orc-message--assistant:has(~ .orc-message--assistant) .orc-message__actions {
    opacity: 1;
  }
  .orc-conversation__select, .orc-welcome__suggestion {
    min-block-size: var(--orc-touch-target);
  }
  .orc-conversation__delete {
    --button-height: var(--orc-touch-target);
    margin-inline-end: 0;
    opacity: 1;
  }
  .orc-shell__sign-out, .orc-shell__menu, .orc-rail__close, .orc-rail__collapse, .orc-thread__jump, .orc-message__copy, .orc-message__retry, .orc-thread__notices .inline-notice__action .button, .orc-conversation__confirm-actions .button {
    --button-height: var(--orc-touch-target);
  }
  .orc-rail__collapse {
    margin-block: calc(-1 * var(--space-2));
  }
  .orc-composer__field {
    --input-font-size: var(--orc-text-input-touch-size);
    --orc-send-block-size: var(--orc-touch-target);
    --orc-send-inline-size: var(--orc-touch-target);
  }
  .orc-composer__send {
    --button-padding-x: 0;
  }
  .orc-composer__send-label {
    position: absolute;
    inline-size: var(--orc-hairline);
    block-size: var(--orc-hairline);
    margin: calc(-1 * var(--orc-hairline));
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .orc-composer__hint {
    display: none;
  }
  .orc-shell__resizer {
    inset-inline-end: -1rem;
    inline-size: 1.5rem;
  }
  .orc-shell__resizer::after {
    inset-inline-start: calc(var(--orc-resizer-edge) - var(--orc-hairline) - 0.125rem);
    inline-size: 0.25rem;
    block-size: 2.5rem;
    border-radius: var(--radius-sm);
    background: var(--orc-resizer-grip-touch);
    opacity: 1;
  }
}
@media (hover: none) {
  .orc-message--assistant:has(~ .orc-message--assistant) .orc-message__actions {
    opacity: 1;
  }
  .orc-conversation__delete {
    opacity: 1;
  }
}
.orc-shell .orc-conversation__delete.button:disabled {
  opacity: 0.5;
}
@media (forced-colors: active) {
  .orc-shell :is(button, a, input, textarea):focus-visible, .login-page :is(button, a, input):focus-visible {
    outline: 0.125rem solid transparent;
    outline-offset: 0.125rem;
  }
  .orc-shell__resizer:focus-visible {
    outline: 0.125rem solid Highlight;
    outline-offset: -0.125rem;
  }
  .orc-shell__resizer::before {
    border-inline-start: 0.125rem solid Highlight;
  }
  .orc-conversation--selected {
    border-inline-start: var(--orc-bar-width) solid transparent;
  }
  .orc-skeleton__line, .orc-skeleton__bubble, .orc-skeleton__avatar {
    border: var(--orc-hairline) solid transparent;
  }
  .orc-typing__dots {
    display: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .orc-thread__scroll {
    scroll-behavior: auto;
  }
}
@media (prefers-reduced-motion: reduce) {
  .orc-shell__body, .orc-shell__rail, .orc-shell__backdrop, .orc-shell--drawer-open .orc-shell__rail, .orc-shell--drawer-open .orc-shell__backdrop, .orc-shell--rail-collapsed .orc-shell__rail, .orc-conversation, .orc-conversation__delete, .orc-message__actions, .orc-welcome__suggestion {
    transition: none;
  }
  .orc-shell__resizer::before, .orc-shell__resizer::after {
    transition-duration: 0s;
  }
  .orc-skeleton__line, .orc-skeleton__bubble, .orc-skeleton__avatar, .orc-typing__dot {
    animation: none;
  }
  .orc-typing__dots {
    display: none;
  }
}
.orc-shell [hidden] {
  display: none;
}
.orc-message__results[hidden], .orc-message__notice[hidden], .orc-result__items[hidden], .orc-result__select[hidden], .orc-sources[hidden], .orc-sources__chip[hidden], .orc-sources__details[hidden] {
  display: none;
}
.orc-message__copy-sources {
  margin: var(--space-1) 0 0;
  padding-inline-start: var(--orc-answer-indent);
  color: var(--orc-message-meta-fg);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
  overflow-wrap: anywhere;
  white-space: pre-line;
}
.orc-message__notice {
  inline-size: fit-content;
  max-inline-size: 100%;
}
.orc-message__meta:empty {
  display: none;
}
.orc-message--assistant .orc-message__meta {
  flex-wrap: wrap;
  overflow-wrap: anywhere;
}
.orc-message__results {
  display: grid;
  min-inline-size: 0;
  gap: var(--space-3);
}
.orc-result {
  min-inline-size: 0;
  border: var(--orc-hairline) solid var(--color-border);
  border-radius: var(--radius-md);
  background-color: var(--color-surface);
}
.orc-result__header {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-1) var(--space-3);
  padding: var(--space-2) var(--space-3);
}
.orc-result__tool {
  margin: 0;
  color: var(--color-text-primary);
  font-size: var(--orc-text-label-size);
  font-weight: var(--orc-text-label-weight);
  line-height: var(--orc-text-label-leading);
}
.orc-result__state {
  display: flex;
  min-inline-size: 0;
  align-items: flex-start;
  gap: var(--space-1);
  margin: 0;
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  line-height: var(--orc-text-meta-leading);
}
.orc-result__state:has(> .orc-result__state-text:empty) {
  display: none;
}
.orc-result__state-icon {
  display: none;
  flex: none;
  margin-block-start: 0.125rem;
}
.orc-result__state-text {
  min-inline-size: 0;
  overflow-wrap: anywhere;
}
.orc-result--issue .orc-result__state {
  color: var(--color-warning-700);
  font-weight: var(--orc-text-label-weight);
}
.orc-result--issue .orc-result__state-icon {
  display: inline-flex;
}
.orc-result__items {
  display: grid;
  min-inline-size: 0;
}
.orc-result__item {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2) var(--space-3);
  padding: var(--space-2) var(--space-3);
  border-block-start: var(--orc-hairline) solid var(--color-border);
}
.orc-result__main {
  display: grid;
  min-inline-size: 0;
  flex: 1 1 12rem;
}
.orc-result__label {
  color: var(--color-text-primary);
  font-size: var(--orc-text-body-size);
  font-weight: 500;
  line-height: var(--orc-text-body-leading);
  overflow-wrap: anywhere;
}
.orc-result__meta {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  gap: 0 var(--space-3);
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  font-variant-numeric: tabular-nums;
  line-height: var(--orc-text-meta-leading);
}
.orc-result__id, .orc-result__source {
  min-inline-size: 0;
  overflow-wrap: anywhere;
}
.orc-result__id {
  user-select: all;
}
.orc-result__select {
  flex: none;
}
.orc-sources {
  display: grid;
  min-inline-size: 0;
  gap: var(--space-2);
}
.orc-sources__title {
  margin: 0;
  color: var(--color-text-primary);
  font-size: var(--orc-text-label-size);
  font-weight: var(--orc-text-label-weight);
  line-height: var(--orc-text-label-leading);
}
.orc-sources__list {
  display: grid;
  min-inline-size: 0;
  padding: var(--space-1);
  border: var(--orc-hairline) solid var(--color-border);
  border-radius: var(--radius-md);
  background-color: var(--color-surface);
}
.orc-sources__item {
  min-inline-size: 0;
}
.orc-sources__toggle {
  display: flex;
  inline-size: 100%;
  min-inline-size: 0;
  min-block-size: var(--orc-row-height);
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1) var(--space-2);
  border: 0;
  border-radius: var(--radius-sm);
  background-color: transparent;
  color: var(--color-text-primary);
  font: inherit;
  font-size: var(--orc-text-body-size);
  line-height: var(--orc-text-body-leading);
  text-align: start;
  cursor: pointer;
  transition: background-color var(--orc-duration-fast) var(--orc-ease-out);
}
.orc-sources__toggle:hover {
  background-color: var(--color-surface-muted);
}
.orc-sources__toggle:focus-visible {
  position: relative;
  z-index: var(--orc-z-raised);
  box-shadow: var(--orc-focus-ring);
  outline: var(--orc-hairline) solid transparent;
  outline-offset: calc(-1 * var(--orc-hairline));
}
.orc-sources__chevron {
  display: inline-flex;
  flex: none;
  color: var(--color-text-secondary);
}
.orc-sources__toggle[aria-expanded="true"] .orc-sources__chevron {
  transform: rotate(90deg);
}
.orc-sources__name {
  min-inline-size: 0;
  flex: 1 1 auto;
  overflow-wrap: anywhere;
}
.orc-sources__chip {
  flex: none;
}
.orc-sources__details {
  container: orc-source / inline-size;
  display: grid;
  min-inline-size: 0;
  gap: var(--space-3);
  margin-block: var(--space-1) var(--space-2);
  padding: var(--space-3);
  border: var(--orc-hairline) solid transparent;
  border-radius: var(--radius-sm);
  background-color: var(--color-surface-muted);
}
.orc-sources__fields .metadata-list__label {
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  font-weight: var(--orc-text-label-weight);
  letter-spacing: normal;
  line-height: var(--orc-text-meta-leading);
  text-transform: none;
}
@container orc-source (width < 18rem) {
  .orc-sources__fields .metadata-list__item {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
}
.orc-sources__excerpt {
  display: grid;
  min-inline-size: 0;
  gap: var(--space-1);
  padding: var(--space-2) var(--space-3);
  border: var(--orc-hairline) solid var(--color-border);
  border-radius: var(--radius-sm);
  background-color: var(--color-surface);
}
.orc-sources__excerpt-label {
  margin: 0;
  color: var(--color-text-secondary);
  font-size: var(--orc-text-meta-size);
  font-weight: var(--orc-text-label-weight);
  line-height: var(--orc-text-meta-leading);
}
.orc-sources__excerpt-text {
  margin: 0;
  color: var(--color-text-primary);
  font-size: var(--orc-text-body-size);
  line-height: var(--orc-text-body-leading);
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.orc-sources__excerpt-text--missing {
  color: var(--color-text-secondary);
}
@media (pointer: coarse) {
  .orc-result__select {
    --button-height: var(--orc-touch-target);
  }
  .orc-sources__toggle {
    min-block-size: var(--orc-touch-target);
  }
}
@media (forced-colors: active) {
  .orc-sources__toggle:focus-visible {
    outline: 0.125rem solid transparent;
    outline-offset: 0.125rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .orc-sources__toggle {
    transition: none;
  }
}
.orc-thread__log:not(:empty) + .orc-message--failed {
  margin-block-start: var(--orc-thread-gap, var(--space-8));
}
.orc-thread [hidden] {
  display: none;
}
