/* Scraper picker (shared by the wizard and Profile Studio). See DESIGN.md. */
.sp-root { display: flex; flex-direction: column; gap: 22px; text-align: left; }
.sp-root[hidden], .sp-root [hidden] { display: none !important; }
.sp-heading { margin: 0 0 10px; font: 600 1rem/1.3 'Outfit', 'Inter', sans-serif; color: var(--text-primary, hsl(0 0% 98%)); }
.sp-grid { display: grid; gap: 10px; }
.sp-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sp-grid-3 { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 640px) {
  .sp-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .sp-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.sp-card {
  position: relative; display: flex; flex-direction: column; gap: 6px; align-items: flex-start; text-align: left;
  min-height: 56px; padding: 14px 16px; border-radius: 12px; cursor: pointer;
  border: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.025);
  color: var(--text-secondary, hsl(240 5% 75%)); font: 400 0.88rem/1.4 'Inter', sans-serif;
  transition: border-color 0.15s cubic-bezier(0.2,0,0,1), background 0.15s cubic-bezier(0.2,0,0,1), transform 0.15s cubic-bezier(0.2,0,0,1);
}
.sp-card:hover { border-color: rgba(0,245,160,0.25); transform: translateY(-1.5px); }
.sp-card:focus-visible, .sp-mini:focus-visible, .sp-quiet:focus-visible, .sp-input:focus-visible { outline: 2px solid #6dfac4; outline-offset: 2px; }
.sp-card.is-selected { border-color: rgba(0,245,160,0.4); background: rgba(0,245,160,0.06); color: var(--text-primary, hsl(0 0% 98%)); }
.sp-card-title { font: 600 0.95rem/1.3 'Inter', sans-serif; color: var(--text-primary, hsl(0 0% 98%)); padding-right: 22px; }
.sp-card-desc { color: var(--text-muted, hsl(240 5% 65%)); }
.sp-rec { display: inline-block; margin-left: 6px; font: 600 0.75rem/1 'Inter', sans-serif; color: #6dfac4; }
.sp-bundle-icon { width: 24px; height: 24px; color: var(--text-secondary, hsl(240 5% 75%)); }
.sp-bundle-icon svg { width: 24px; height: 24px; display: block; }
.sp-card.is-selected .sp-bundle-icon { color: #6dfac4; }
.sp-tick { position: absolute; top: 12px; right: 12px; width: 18px; height: 18px; color: #6dfac4; opacity: 0; transition: opacity 0.15s; }
.sp-tick svg { width: 18px; height: 18px; display: block; }
.sp-card.is-selected .sp-tick { opacity: 1; }
.sp-key-label { display: block; margin-bottom: 6px; font: 600 0.88rem/1.3 'Inter', sans-serif; color: var(--text-secondary, hsl(240 5% 75%)); }
.sp-key-wrap { display: flex; gap: 8px; align-items: stretch; }
.sp-input {
  flex: 1 1 auto; min-width: 0; min-height: 44px; padding: 0 12px; border-radius: 10px; font: 400 0.95rem 'Inter', sans-serif;
  color: var(--text-primary, hsl(0 0% 98%)); background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.12);
}
.sp-mini {
  flex: none; min-height: 44px; min-width: 56px; padding: 0 12px; border-radius: 8px; cursor: pointer;
  border: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.03); color: var(--text-secondary, hsl(240 5% 75%));
  font: 600 0.88rem 'Inter', sans-serif;
}
.sp-mini:hover { background: rgba(255,255,255,0.07); color: var(--text-primary, hsl(0 0% 98%)); }
.sp-mini:disabled { opacity: 0.6; cursor: default; }
.sp-hint { margin: 8px 0 0; font-size: 0.8rem; line-height: 1.4; color: var(--text-muted, hsl(240 5% 65%)); }
.sp-status { margin: 6px 0 0; min-height: 1.2em; font-size: 0.88rem; line-height: 1.4; }
.sp-status.is-ok { color: hsl(142 70% 55%); }
.sp-status.is-warn { color: hsl(38 90% 58%); }
.sp-status.is-bad { color: hsl(0 75% 68%); }
.sp-links { margin: 6px 0 0; font-size: 0.88rem; color: var(--text-muted, hsl(240 5% 65%)); }
.sp-links a { color: #6dfac4; text-decoration: none; }
.sp-links a:hover { text-decoration: underline; }
.sp-quiet {
  margin-top: 12px; min-height: 44px; padding: 0 4px; background: none; border: 0; cursor: pointer;
  color: var(--text-secondary, hsl(240 5% 75%)); font: 500 0.88rem 'Inter', sans-serif; text-decoration: underline; text-underline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) { .sp-card { transition: none; } .sp-card:hover { transform: none; } }

/* Profile Studio hosts the picker in a centred column. */
.ps-streaming-col { max-width: 920px; margin: 0 auto; padding: 8px 0 32px; display: flex; flex-direction: column; gap: 16px; }
