/* PCC Site Search: the instant-suggestions dropdown. Site-wide (the header search is on every page), so small and fully scoped. */
/* ---------- Instant suggestions (header overlay + results page) ---------- */
.pccss-suggest {
  --pccss-purple: #732982; --pccss-ink: #1e293b;
  position: absolute; left: 0; right: 0; top: calc(100% + 10px); z-index: 99999;
  background: #fff; border-radius: 18px; overflow: hidden; text-align: left;
  box-shadow: 0 30px 70px rgba(0,0,0,.45); font-family: 'Poppins', system-ui, sans-serif;
}
.pccss-suggest ul { list-style: none; margin: 0; padding: 8px; max-height: min(62vh, 520px); overflow: auto; }
.pccss-suggest li { margin: 0; }
.pccss-suggest a {
  display: grid; grid-template-columns: 52px minmax(0,1fr) auto; gap: 14px; align-items: center;
  padding: 9px 12px; border-radius: 12px; color: var(--pccss-ink) !important; text-decoration: none !important;
}
.pccss-suggest a[aria-selected="true"], .pccss-suggest a:hover { background: #f6eef9; }
.pccss-sg-thumb { width: 52px; height: 52px; border-radius: 10px; overflow: hidden; background: #f3e8f7; display: grid; place-items: center; color: var(--pccss-purple); }
.pccss-sg-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pccss-sg-title { display: block; font-size: .98rem; font-weight: 600; line-height: 1.3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pccss-sg-title mark, .pccss-sg-meta mark { background: none; color: var(--pccss-purple); font-weight: 800; padding: 0; }
.pccss-sg-meta { display: block; font-size: .8rem; color: #64748b; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pccss-sg-type { font-size: .66rem; font-weight: 800; letter-spacing: .9px; text-transform: uppercase; padding: 4px 8px; border-radius: 999px; background: #f3e8f7; color: var(--pccss-purple); }
.pccss-sg-type.is-soon { background: #dcfce7; color: #166534; }
.pccss-sg-type.is-past { background: #eef0f3; color: #475569; }
.pccss-sg-all {
  display: flex !important; justify-content: space-between; align-items: center; margin: 0; padding: 14px 20px !important;
  border-top: 1px solid #f1e6f4; border-radius: 0 !important; font-weight: 700; color: var(--pccss-purple) !important;
  background: #fcf9fd;
}
.pccss-sg-all kbd { font: 700 .72rem 'Poppins', sans-serif; padding: 3px 8px; border-radius: 6px; border: 1px solid #e4d3ea; background: #fff; color: #64748b; }
.pccss-sg-status { padding: 14px 20px; font-size: .9rem; color: #64748b; }

@media (max-width: 760px) {
  .pccss-suggest a { grid-template-columns: 44px minmax(0,1fr); }
  .pccss-sg-thumb { width: 44px; height: 44px; }
  .pccss-suggest .pccss-sg-type { display: none; }
}
