.tag-editor-chips { display: flex; flex-wrap: wrap; align-items: center; gap: calc(2 * var(--spacing)); }
.tag-editor-chips .chip > .icon { width: var(--icon-sm); height: var(--icon-sm); }
.tag-editor-picker { width: 280px; overflow-y: auto; }
.tag-editor-picker > .field { width: auto; min-width: 0; margin: var(--spacing); }
.tag-editor-options { display: grid; margin-top: var(--spacing); max-height: 260px; overflow-y: auto; }
.tag-editor-options .button { white-space: normal; height: auto; min-height: var(--control-md); text-align: left; overflow-wrap: anywhere; }
[data-tag-status]:empty { display: none; }
.curation-fields { display: grid; gap: calc(4 * var(--spacing)); margin-top: calc(4 * var(--spacing)); min-width: 0; width: 100%; }
.capture-item { min-width: 0; }

.curation-group { display: grid; gap: calc(2 * var(--spacing)); min-width: 0; }
.curation-label { color: var(--color-fg-secondary); }
.curation-fields .field { width: 100%; min-width: 0; box-sizing: border-box; }
.curation-fields textarea { width: 100%; min-width: 0; box-sizing: border-box; }
.capture-previews { grid-template-columns: minmax(0,1fr); gap: calc(3 * var(--spacing)); }
#capture-dialog { width: min(560px,calc(100vw - 8 * var(--spacing))); }
.capture-item > .capture-preview { aspect-ratio: auto; height: auto; }
.capture-item > .capture-preview img { height: auto; }

.capture-add.button { justify-self: start; padding-inline: var(--control-padding-md); }

/* One removable chip structure for search filters and editable tags. */
.removable-chip { padding: 0; gap: 0; overflow: hidden; }
.removable-chip[data-size="sm"] { padding: 0; gap: 0; }
.chip-label { min-width:0; padding: 0 calc(2 * var(--spacing)) 0 var(--control-padding-md); }
.removable-chip[data-size="sm"] .chip-label { padding-left:var(--control-padding-sm); }
button.chip-label,.chip-remove { border:0; background:transparent; color:inherit; font:inherit; height:100%; cursor:pointer; }
.chip-remove { display:inline-flex; align-items:center; justify-content:center; width:var(--control-sm); padding:0; flex:none; color:var(--color-fg-tertiary); }
.chip-remove .icon { width:var(--icon-sm); height:var(--icon-sm); }
button.chip-label:hover { background:var(--color-surface-3); color:var(--color-fg-primary); }
button.chip-label:focus-visible,.chip-remove:focus-visible { outline:2px solid var(--color-fg-primary); outline-offset:-2px; }
.chip-remove:hover { background:transparent; color:var(--color-fg-primary); }

.mega-search-field { flex-wrap: wrap; height: auto; padding-block: calc(2 * var(--spacing)); }
.mega-search-field input { flex: 1 1 80px; width: auto; }
.search-tokens { display: contents; }
.search-token { max-width:100%; font-size:var(--text-body); font-weight:var(--font-weight-regular); }
.search-token > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.search-token .icon { width: var(--icon-sm); height: var(--icon-sm); }
.mega-search[data-has-tokens="true"] { max-width: var(--size-search-max); }
.mega-search[data-has-tokens="true"] .shortcut-pill { display: none; }
#search-tag-options { display: grid; }
#search-tag-options .button { justify-content: flex-start; }
#search-tag-options [aria-selected="true"] { background: var(--color-surface-3); }

.mega-search { --size-search-max: 480px; }

.search-token { --color-chip: var(--color-surface-3); }
.mega-search-panel .category-filters { flex-wrap: wrap; }
.mega-search-panel[data-query="true"] > section:not([data-tag-suggestions]) { display: none; }
.mega-search-panel [data-tag-message]:empty { display: none; }

.mega-search-panel:not([data-query="true"]) > [data-tag-suggestions] + section { margin-top: 0; }

.search-text-action { width: 100%; justify-content: flex-start; white-space: normal; height: auto; min-height: var(--control-md); text-align: left; overflow-wrap: anywhere; }
.search-text-action + h2:not([hidden]) { margin-top: calc(3 * var(--spacing)); }

/* The label sets chip width; hover/focus makes room for the remove target. */
.tag-editor-filter { position: relative; }
.tag-editor-filter button.tag-editor-label { width: 100%; padding: 0 var(--control-padding-md); padding-right: var(--control-sm); border-radius: inherit; }
.tag-editor-filter .tag-editor-remove { position: absolute; inset: 0 0 0 auto; width: var(--control-sm); padding: 0; border-radius: inherit; }
@media (hover: hover) and (pointer: fine) {
  .tag-editor-filter button.tag-editor-label { padding-right: var(--control-padding-md); transition: padding-right var(--duration-enter) var(--ease-out); }
  .tag-editor-filter:is(:hover,:focus-within) button.tag-editor-label { padding-right: var(--control-sm); }
  .tag-editor-filter .tag-editor-remove { opacity: 0; pointer-events: none; transition: opacity var(--duration-fast) var(--ease-out); }
  .tag-editor-filter:is(:hover,:focus-within) .tag-editor-remove { opacity: 1; pointer-events: auto; }
}
.tag-editor-filter:hover { background: var(--color-surface-3); color: var(--color-fg-primary); }
.tag-editor-filter button.tag-editor-label:hover { background: transparent; }
.reference-metadata [data-metadata-status] { flex-basis: 100%; }
.reference-metadata [data-metadata-status]:empty { display: none; }

@media (prefers-reduced-motion: reduce) {
  .tag-editor-filter button.tag-editor-label, .tag-editor-filter .tag-editor-remove { transition: none; }
}

.curation-attributes { display:flex; flex-wrap:wrap; gap:calc(2 * var(--spacing)); }
[data-capture-curation] > p { margin-top:calc(3 * var(--spacing)); }

#capture-dialog[open] { display:flex; flex-direction:column; overflow:hidden; max-height:calc(100dvh - 32px); }
#capture-dialog > .modal-header { flex:none; }
.capture-scroll { min-height:0; overflow-y:auto; overscroll-behavior:contain; }
#capture-dialog > .modal-footer { flex:none; margin-top:16px; padding-top:8px; }
