.settings-secondary-action {
  min-height: 36px;
  padding: 8px 12px 8px 9px;
  border: 1px solid var(--primary-border-soft);
  border-radius: 13px;
  background: var(--primary-soft);
  color: var(--primary-dark);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.86rem;
  line-height: 1.2;
  font-weight: 800;
  box-shadow: none;
}
@media (hover: hover) and (pointer: fine) {
  .settings-secondary-action:hover {
    background: var(--primary-soft-hover);
    color: var(--primary-dark);
    border-color: var(--primary-border-strong);
    transform: none;
  }
}
.state-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  padding: 4px;
  border: 1px solid var(--hairline-soft);
  border-radius: 17px;
  background: var(--primary-soft);
}
.state-tab {
  flex: 1 1 110px;
  min-width: 92px;
  min-height: 38px;
  padding: 7px 9px;
  border: 1px solid transparent;
  border-radius: 13px;
  background: transparent;
  color: var(--on-surface-variant);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 0.92rem;
  line-height: 1.2;
  font-weight: 800;
  box-shadow: none;
}
.state-tab.active {
  background: var(--surface-glass-strong);
  color: var(--primary-dark);
  border-color: var(--primary-border-soft);
  box-shadow: inset 0 1px 0 var(--white-sheen);
}
.settings-text-input {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--hairline);
  border-radius: 12px;
  background: var(--surface-glass);
  color: var(--on-surface);
  font: inherit;
}
.settings-text-input:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
}

/* Dedicated knowledge workspace; native dialog contains focus and makes chat inert. */
body.knowledge-modal-open { overflow: hidden; }
.knowledge-panel { position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; padding: 24px; border: 0; background: transparent; color: var(--on-surface); box-sizing: border-box; overflow: hidden; }
.knowledge-panel[open] { display: flex; align-items: center; justify-content: center; }
.knowledge-panel[hidden] { display: none; }
.knowledge-panel::backdrop { background: rgba(29, 27, 32, .44); backdrop-filter: blur(10px); }
.knowledge-modal-card { display: flex; flex-direction: column; width: min(840px, 100%); max-height: calc(100dvh - 48px); min-width: 0; overflow: hidden; border: 1px solid var(--hairline); border-radius: 24px; background: var(--modal-card-background); box-shadow: var(--modal-card-shadow); }
.knowledge-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 24px; border-bottom: 1px solid var(--hairline); }
.knowledge-header h2 { margin: 0; color: var(--on-background); font-size: 1.4rem; line-height: 1.3; font-weight: 600; }
.knowledge-icon-button { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 40px; height: 40px; padding: 0; border: 1px solid var(--hairline); border-radius: 12px; background: var(--icon-button-background); color: var(--on-surface-variant); }
@media (hover: hover) and (pointer: fine) {
  .knowledge-icon-button:hover { background: var(--primary-soft-active); color: var(--primary); }
}
.knowledge-modal-body { min-height: 0; padding: 24px; overflow-y: auto; overscroll-behavior: contain; }
.knowledge-footer { flex-shrink: 0; padding: 14px 24px; border-top: 1px solid var(--hairline); color: var(--on-surface-variant); }
.knowledge-footer p { margin: 0; font-size: .75rem; }
.knowledge-status { margin: 0 0 16px; font-size: .9375rem; line-height: 1.5; color: var(--on-surface-variant); }
.knowledge-status:empty { display: none; }
.knowledge-status.is-error { color: var(--error); }
.knowledge-collection { display: grid; gap: 10px; }
.knowledge-collection > label, .knowledge-fields label { font-size: .9375rem; line-height: 1.4; font-weight: 600; color: var(--on-background); }
.knowledge-panel p { line-height: 1.5; }
.knowledge-collection > p, .knowledge-fields > p { margin: 0; font-size: .875rem; color: var(--on-surface-variant); }
.knowledge-chat-choice { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding-top: 6px; font-size: .875rem; color: var(--on-surface-variant); }
.knowledge-tabs { margin: 20px 0; }
.knowledge-tabs .state-tab { flex: 1; justify-content: center; }
.knowledge-section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.knowledge-section-heading h3, .knowledge-document-editor h3 { margin: 0; font-size: 1.125rem; line-height: 1.4; color: var(--on-background); font-weight: 600; }
.knowledge-guide-heading { align-items: center; justify-content: flex-end; }
.knowledge-tabs[hidden] + section .knowledge-guide-heading { margin-top: 20px; }
.knowledge-tabs:not([hidden]) + section .knowledge-empty { margin-top: 0; }
.knowledge-section-heading p { margin: 0; font-size: .9375rem; color: var(--on-surface-variant); }
.knowledge-primary-action { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 16px; border: 1px solid transparent; border-radius: 12px; background: var(--primary); color: var(--on-primary); font: inherit; font-size: .9375rem; font-weight: 600; cursor: pointer; flex-shrink: 0; }
.knowledge-panel button > i, .knowledge-panel a > i { width: 1em; text-align: center; flex-shrink: 0; }
@media (hover: hover) and (pointer: fine) {
  .knowledge-primary-action:hover { background: var(--primary-dark); }
}
.knowledge-panel button:disabled { opacity: .55; cursor: default; }
.knowledge-panel button.is-saving:disabled { opacity: 1; cursor: wait; }
.knowledge-panel button:focus-visible, .knowledge-panel a:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.knowledge-panel .settings-text-input { box-sizing: border-box; font-size: 1rem; }
.knowledge-panel .settings-text-input:focus-visible { outline-offset: -1px; }
#knowledge-file { padding: 6px; color: var(--on-surface-variant); cursor: pointer; overflow: hidden; text-overflow: ellipsis; }
#knowledge-file::file-selector-button { min-height: 36px; margin-right: 12px; padding: 8px 12px; border: 1px solid var(--primary-border-soft); border-radius: 10px; background: var(--primary-soft); color: var(--primary-dark); font: inherit; font-weight: 600; cursor: pointer; }
@media (hover: hover) and (pointer: fine) {
  #knowledge-file:not(:disabled):hover::file-selector-button { background: var(--primary-soft-hover); border-color: var(--primary-border-strong); }
}
#knowledge-file:disabled, #knowledge-file:disabled::file-selector-button { cursor: default; }
.knowledge-panel textarea { resize: vertical; }
.knowledge-empty { display: grid; justify-items: center; gap: 16px; margin-top: 20px; padding: 32px 20px; border: 1px dashed var(--hairline); border-radius: 16px; background: var(--surface-glass); color: var(--on-surface-variant); }
.knowledge-empty > i { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 14px; background: var(--primary-soft); color: var(--primary); font-size: 24px; }
.knowledge-empty strong { color: var(--on-background); font-weight: 600; }
.knowledge-documents { display: grid; gap: 12px; }
.knowledge-document { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-width: 0; padding: 14px 16px; border: 1px solid var(--hairline); border-radius: 14px; background: var(--surface-glass); }
.knowledge-document-copy { display: grid; gap: 5px; min-width: 0; overflow-wrap: anywhere; }
.knowledge-document-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; min-width: 0; }
.knowledge-document-copy strong { font-size: .9375rem; line-height: 1.4; font-weight: 600; color: var(--on-background); }
.knowledge-document-copy .knowledge-document-summary { margin: 0; font-size: .875rem; line-height: 1.5; color: var(--on-surface-variant); }
.knowledge-document-copy .knowledge-document-meta { display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0; white-space: nowrap; font-size: .75rem; line-height: 1.5; color: var(--on-surface-variant); }
.knowledge-document-status { display: inline-flex; align-items: center; justify-content: center; }
.knowledge-document-status.is-error { color: var(--error); }
.knowledge-document .settings-secondary-action { font-size: .82rem; font-weight: 600; }
.knowledge-panel .knowledge-delete { color: var(--error); background: var(--danger-soft-background); border-color: color-mix(in srgb, var(--error) 24%, transparent); }
@media (hover: hover) and (pointer: fine) {
  .knowledge-panel .knowledge-delete:hover { color: var(--error); background: var(--error-container); border-color: var(--error); }
}
.knowledge-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.knowledge-document > .knowledge-actions { flex-shrink: 0; }
.knowledge-document-editor { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--hairline); }
.knowledge-fields { display: grid; gap: 10px; border: 0; padding: 16px 0 0; margin: 0; min-width: 0; }
.knowledge-fields:disabled { opacity: .65; }
.knowledge-fields > .knowledge-actions { margin-top: 8px; }
.knowledge-profile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 16px; padding-top: 0; }
.knowledge-field { display: grid; align-content: start; gap: 8px; min-width: 0; }
.knowledge-wide { grid-column: 1 / -1; }
.knowledge-panel [hidden] { display: none; }
@media (max-width: 640px) {
    .knowledge-panel { padding: 10px; }
    .knowledge-modal-card { max-height: calc(100dvh - 20px); border-radius: 20px; }
    .knowledge-header, .knowledge-modal-body { padding: 20px; }
    .knowledge-footer { padding: 14px 20px; }
    .knowledge-header { gap: 10px; }
    .knowledge-header .knowledge-actions { flex-wrap: nowrap; gap: 6px; }
    .knowledge-icon-button { width: 44px; height: 44px; }
    #knowledge-file::file-selector-button { min-height: 44px; }
    .knowledge-section-heading { flex-wrap: wrap; }
    .knowledge-profile-grid { grid-template-columns: minmax(0, 1fr); }
    .knowledge-document { flex-wrap: wrap; }
    .knowledge-document > .knowledge-actions { width: 100%; }
    .knowledge-panel p, .knowledge-panel label, .knowledge-panel button, .knowledge-chat-choice { font-size: 1rem; }
    .knowledge-footer p { font-size: .75rem; }
}

.knowledge-member-input, .themed-select { position: relative; min-width: 0; }
.knowledge-member-input > input { width: 100%; }
.knowledge-member-picker { position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 2; max-height: 240px; overflow-y: auto; padding: 5px; border: 1px solid var(--hairline); border-radius: 12px; background: var(--modal-card-background); box-shadow: var(--modal-card-shadow); }
.knowledge-member-picker .knowledge-member-message { margin: 0; padding: 8px; font-size: .8125rem; color: var(--on-surface-variant); }
.knowledge-member-message:empty { display: none; }
.knowledge-member-picker .knowledge-member-option { display: grid; gap: 3px; width: 100%; min-height: 44px; padding: 8px 10px; border: 0; border-radius: 8px; background: transparent; color: var(--on-surface); text-align: left; box-shadow: none; overflow-wrap: anywhere; }
.knowledge-member-option strong { font-size: .875rem; font-weight: 600; }
.knowledge-member-option span { font-size: .75rem; color: var(--on-surface-variant); }
.knowledge-member-picker .knowledge-member-option[aria-selected="true"] { background: var(--primary-soft-active); color: var(--primary); transform: none; }
@media (hover: hover) and (pointer: fine) {
  .knowledge-member-picker .knowledge-member-option:hover { background: var(--primary-soft-active); color: var(--primary); transform: none; }
}

/* Shared collection/report select; the popover escapes scrollable dialog clipping. */
.themed-select .themed-select-trigger { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 44px; background: var(--surface-glass); color: var(--on-surface); font: inherit; font-size: .9375rem; font-weight: 400; text-align: left; box-shadow: none; transform: none; }
.themed-select-trigger > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.themed-select-trigger > i { color: var(--on-surface-variant); font-size: .75rem; }
.themed-select-trigger:focus-visible, .themed-select-trigger[aria-expanded="true"] { outline: 2px solid var(--focus); outline-offset: -1px; }
.themed-select-menu { position: fixed; inset: auto; margin: 0; z-index: 2; box-sizing: border-box; max-height: 240px; overflow-y: auto; padding: 5px; border: 1px solid var(--hairline); border-radius: 12px; background: var(--modal-card-background); color: var(--on-surface); box-shadow: var(--modal-card-shadow); }
.themed-select-menu .themed-select-option { display: block; width: 100%; min-height: 40px; padding: 10px; border: 0; border-radius: 8px; background: transparent; color: var(--on-surface); font: inherit; font-size: .875rem; font-weight: 500; line-height: 1.4; text-align: left; box-shadow: none; transform: none; overflow-wrap: anywhere; }
.themed-select-menu .themed-select-option[aria-selected="true"],
.themed-select-menu .themed-select-option:focus-visible { background: var(--primary-soft-active); color: var(--primary); }
@media (hover: hover) and (pointer: fine) {
  .themed-select-menu .themed-select-option:hover { background: var(--primary-soft-active); color: var(--primary); }
}
.themed-select-menu .themed-select-option:focus-visible { outline: 2px solid var(--focus); outline-offset: -2px; }
.themed-select [hidden] { display: none; }
.themed-select-trigger[aria-invalid="true"] { border-color: var(--error); }


.knowledge-collection-actions { margin-top: 12px; }
