/* Scope new library and publishing components to Insights. */
.insights-tools[hidden], .insight-item[hidden], .insights-group[hidden], .insights-empty[hidden], .insights-results[hidden] { display: none !important; }
.insights-tools { display: grid; grid-template-columns: minmax(0, 2fr) minmax(160px, 1fr) auto; gap: 1rem; align-items: end; margin-bottom: .75rem; }
.insights-tools label { display: block; font-size: .82rem; font-weight: 600; color: var(--pine-800); margin-bottom: .4rem; }
.insights-tools input, .insights-tools select { width: 100%; min-width: 0; min-height: 48px; border: 1px solid var(--line); border-radius: 4px; background: var(--white); color: var(--ink); font: inherit; padding: .7rem .8rem; }
.insights-tools button { min-height: 48px; padding: .7rem .9rem; border: 1px solid var(--line); border-radius: 4px; background: transparent; color: var(--pine-800); font: inherit; font-size: .85rem; cursor: pointer; }
.insights-tools button:disabled { color: var(--muted); cursor: default; }
.insights-tools :focus-visible { outline: 2px solid var(--pine-700); outline-offset: 3px; }
.insights-results { font-size: .8rem; color: var(--muted); margin: .75rem 0 1.5rem; }
.insight-item .insight-item__meta { font-size: .75rem; line-height: 1.65; color: var(--muted); margin: .6rem 0 0; }
.insights-catalog + .insights-empty { padding: 1.5rem; background: var(--ivory); border-left: 3px solid var(--brass); }
.insights-catalog ~ .ce-invitation--insights { margin-top: 3rem; margin-bottom: 0; }
.insight-reading { border-top: 1px solid var(--line); padding-top: 1.6rem; margin-top: 2.25rem; }
.insight-reading h2 { font-size: 1.45rem; }
.insight-reading li { margin-bottom: .7rem; }
.insight-reading__all { font-size: .9rem; }
.insight-author { border-top: 1px solid var(--line); margin-top: 2rem; padding-top: 1.5rem; }
.insight-author p, .insight-sources li { font-size: .9rem; }
.insight-author p:last-child { margin-bottom: 0; }
.insight-service { border-top: 1px solid var(--line); padding-top: 1.5rem; }
.insight-service h2 { font-size: 1.5rem; }
.insight-service p { font-size: .95rem; }
.insight-service span { margin-inline: .5rem; }
.insight-video { margin: 1.5rem 0 2rem; }
.insight-video__frame { position: relative; width: 100%; aspect-ratio: 16 / 9; background: var(--pine-900); }
.insight-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.insight-video figcaption { font-size: .8rem; line-height: 1.6; color: var(--muted); margin-top: .7rem; }
@media (max-width: 640px) {
  .insights-tools { grid-template-columns: minmax(0, 1fr); gap: .8rem; }
  .insights-tools button { justify-self: start; }
  .insight-item { min-width: 0; }
  .insight-service a { display: inline-block; padding-block: .35rem; }
}
