/* Document discovery follows the adopted Cobalt Pearl reading and input roles. */
.pf-main .dd-tools {
  display: block;
  margin-block: 32px;
  padding: 0;
  border: 0;
  background: transparent;
}
.pf-main .dd-tools[hidden], .dd-tools .dd-native { display: none !important; }
.dd-query-row { display: flex; align-items: end; gap: 24px; }
.dd-search { flex: 1 1 280px; min-width: 0; }
.dd-order { flex: 0 1 180px; min-width: 140px; }
.pf-main .dd-tools label {
  display: block;
  color: var(--pearl-ink);
  font: 400 14px/1.5 var(--pearl-font-body);
  margin: 0 0 10px;
}
.dd-search-field { position: relative; }
.dd-search-field > svg {
  position: absolute;
  inset: 50% auto auto 16px;
  translate: 0 -50%;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: var(--pearl-muted);
  stroke-width: 1.5;
  pointer-events: none;
}
.pf-main .dd-tools :is(input, select) {
  width: 100%;
  min-height: 52px;
  border: 1px solid var(--pearl-strong);
  border-radius: 6px;
  background: var(--pearl-panel);
  color: var(--pearl-ink);
  font: 400 16px/1.5 var(--pearl-font-body);
  padding: 12px 16px;
  caret-color: var(--pearl-ink);
}
.pf-main .dd-tools input { padding-inline-start: 48px; }
.pf-main .dd-tools input::placeholder { color: var(--pearl-muted); opacity: 1; }
.pf-main .dd-tools .dd-reset {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 12px;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 12px 4px;
  border: 0;
  margin: 0;
  background: transparent;
  color: var(--pearl-ink);
  font: 400 15px/1.5 var(--pearl-font-body);
  cursor: pointer;
  text-underline-offset: var(--pearl-link-underline-offset);
}
.dd-reset svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.dd-reset:hover { text-decoration: underline;text-decoration-thickness:var(--pearl-link-underline); }
.dd-browse { margin-top: 24px; }
.dd-browse summary {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 48px;
  padding-block: 12px;
  color: var(--pearl-ink);
  font: 400 14px/1.5 var(--pearl-font-body);
  cursor: pointer;
  list-style: none;
}
.dd-browse summary::-webkit-details-marker { display: none; }
.dd-summary-choice { margin-inline-start: auto; text-align: end; color: var(--pearl-muted); }
.dd-browse summary > svg { width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.dd-browse[open] summary > svg { rotate: 180deg; }
.dd-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.dd-category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 72px;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--pearl-strong);
  border-radius: 6px;
  background: var(--pearl-panel);
  color: var(--pearl-muted);
  text-align: start;
  font: 400 15px/1.5 var(--pearl-font-body);
  cursor: pointer;
  transition: background-color 120ms ease-out, color 120ms ease-out;
}
.dd-category[aria-pressed="true"] { background: var(--pearl-accent-mark); color: var(--pearl-on); border-color: var(--pearl-accent-mark); }
.dd-category:hover:not([aria-pressed="true"]) { background: var(--pearl-alt); color: var(--pearl-ink); }
.dd-choice { display: flex; gap: 10px; align-items: center; min-width: 0; }
.dd-choice > svg { width: 16px; height: 16px; flex: 0 0 16px; fill: none; stroke: currentColor; stroke-width: 1.75; visibility: hidden; }
.dd-category[aria-pressed="true"] .dd-choice > svg { visibility: visible; }
.dd-count { font: 400 12px/1.5 var(--pearl-font-mono); font-variant-numeric: tabular-nums; flex-shrink: 0; }
.dd-status-row { display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; border-bottom: 1px solid var(--pearl-line); padding-block: 20px; }
.pf-main .dd-status-row :is(.tf-results, .rs-results) { flex: 1 1 280px; margin: 0; color: var(--pearl-ink); font: 400 14px/1.5 var(--pearl-font-body) !important; }
.dd-count-note { color: var(--pearl-muted); font: 400 12px/1.5 var(--pearl-font-body); }
.dd-tools :is(button, input, select, summary):focus-visible { outline: var(--pearl-focus-width) solid var(--pearl-focus); outline-offset: var(--pearl-focus-offset); }
@media (max-width: 1100px) {
  .dd-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .dd-query-row { flex-wrap: wrap; gap: 16px; }
  .dd-search { flex-basis: 100%; }
  .dd-order { flex: 1 1 140px; }
  .pf-main .dd-tools .dd-reset { min-height: 48px; }
  .dd-browse { margin-top: 16px; }
  .dd-browse summary { position: relative; flex-wrap: wrap; gap: 8px 12px; padding-inline-end: 32px; }
  .dd-summary-choice { margin-inline-start: 0; flex: 1 1 50%; text-align: start; }
  .dd-browse summary > span:first-child { flex-basis: calc(100% - 32px); }
  .dd-browse summary > svg { position: absolute; right: 0; }
  .dd-category-grid { grid-template-columns: 1fr; }
  .dd-category { min-height: 52px; padding-block: 12px; }
  .dd-status-row { padding-block: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .dd-category { transition: none; }
}
