/* Homepage capability directory. Keep every style scoped to this component. */
.capability-explorer .icon { display:block;width:100%;height:100%;object-fit:contain;flex:none }
.capability-explorer .scene-caption { text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:15px;margin:0 0 28px;font-size:12px;letter-spacing:.8px;color:#687f9f;pointer-events:none }
.capability-explorer .caption-line { height:1px;width:40px;background:#253957 }
.capability-explorer .capability-directory { max-width:1120px;margin:0 auto;padding:0 24px }
.capability-explorer .directory { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px }
.capability-explorer .directory-group { min-width:0 }
.capability-explorer .directory-group h3 { font-size:15px;line-height:1.5;color:#aab9d1;font-weight:600;margin:0 0 13px }
.capability-explorer .directory-button { display:flex;align-items:center;gap:10px;text-align:left;text-decoration:none;width:100%;min-height:45px;padding:9px 11px;border:1px solid transparent;border-radius:8px;background:#111725;color:#aab9d1;font-size:14px;line-height:1.35;margin:6px 0 }
.capability-explorer .directory-button .icon { width:18px;height:18px }
.capability-explorer .directory-button:hover { background:#18253d;color:#fff }
.capability-explorer a:focus-visible { outline:2px solid #9fc6ff;outline-offset:4px }
@media(max-width:899px) {
.capability-explorer .scene-caption { font-size:10px;letter-spacing:.6px;gap:8px }
.capability-explorer .caption-line { width:20px }
.capability-explorer .directory { grid-template-columns:minmax(0,1fr);gap:28px }
.capability-explorer .directory-button { font-size:14px;min-height:48px }
}
@media(max-width:420px) {
.capability-explorer .capability-directory { padding:0 8px }
.capability-explorer .directory-button { padding:10px 8px;gap:8px }
.capability-explorer .directory-button .icon { width:16px;height:16px }
}
.capability-explorer .directory-button .dreaming-icon { display:flex;align-items:center;justify-content:center;width:max-content;height:18px;gap:1px;font-size:15px;line-height:1 }
.capability-explorer .dreaming-icon span { flex:none }
.capability-explorer .dreaming-icon span:nth-child(1) { color:#7c3aed }
.capability-explorer .dreaming-icon span:nth-child(2) { color:#0ea5e9 }
.capability-explorer .dreaming-icon span:nth-child(3) { color:#f59e0b }
.capability-explorer .runtime-icon-pair { position:relative }
.capability-explorer .runtime-icon-pair img { position:absolute;width:75%;height:75%;object-fit:contain }
.capability-explorer .runtime-icon-pair img:first-child { left:-8%;top:-5% }
.capability-explorer .runtime-icon-pair img:last-child { right:-8%;bottom:-5%;border-radius:4px;background:#141f32 }
.capability-explorer .directory-button .runtime-icon-pair { width:26px;height:24px }
.capability-explorer .provider-icon-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:2px }
.capability-explorer .provider-icon-grid img { width:100%;height:100%;min-width:0;min-height:0;object-fit:contain }
.capability-explorer .directory-button .provider-icon-grid { width:26px;height:26px }
