#zasp-b2b-ai-root, .zasp-smart-related { --zasp-ink:#13283a; --zasp-blue:#0b5cab; --zasp-line:#d9e2ea; --zasp-bg:#f4f8fb; }
.zasp-smart-related .zasp-rec-note { color:#566574; margin:-.5rem 0 1.25rem; }
.zasp-rec-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.zasp-rec-card { display:flex; flex-direction:column; min-width:0; color:var(--zasp-ink)!important; background:#fff; border:1px solid var(--zasp-line); border-radius:12px; overflow:hidden; text-decoration:none!important; box-shadow:0 6px 18px rgba(15,35,55,.07); transition:border-color .15s ease,transform .15s ease; }
.zasp-rec-card:hover,.zasp-rec-card:focus-visible { border-color:var(--zasp-blue); transform:translateY(-2px); }
.zasp-rec-card img,.zasp-rec-placeholder { width:100%; aspect-ratio:4/3; object-fit:cover; background:#eaf1f6; }
.zasp-rec-placeholder { display:grid; place-items:center; color:#6c7e8d; font-weight:700; }
.zasp-rec-card-body { display:flex; flex-direction:column; gap:8px; padding:14px; }
.zasp-rec-card-body strong { font-size:16px; line-height:1.35; }
.zasp-rec-card-body span { color:#546574; font-size:14px; line-height:1.5; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.zasp-assistant-launch { position:fixed; z-index:9998; right:20px; bottom:20px; border:0; border-radius:999px; background:var(--zasp-blue); color:#fff; font-weight:700; padding:13px 20px; box-shadow:0 8px 26px rgba(0,45,90,.28); cursor:pointer; }
.zasp-assistant-panel { position:fixed; z-index:9999; right:20px; bottom:76px; width:min(440px,calc(100vw - 32px)); max-height:min(720px,calc(100vh - 100px)); overflow:auto; background:#fff; color:var(--zasp-ink); border:1px solid var(--zasp-line); border-radius:16px; box-shadow:0 18px 52px rgba(0,25,50,.25); }
.zasp-assistant-panel[hidden] { display:none!important; }
.zasp-assistant-panel header { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:18px 18px 14px; border-bottom:1px solid var(--zasp-line); }
.zasp-assistant-panel header strong,.zasp-assistant-panel header small { display:block; }
.zasp-assistant-panel header small { margin-top:4px; color:#657586; }
.zasp-close { border:0; background:transparent; font-size:28px; line-height:1; color:#526575; cursor:pointer; }
.zasp-assistant-panel form { padding:16px 18px 12px; }
.zasp-assistant-panel label { display:block; margin:0 0 12px; font-size:13px; font-weight:600; }
.zasp-assistant-panel textarea,.zasp-assistant-panel select { box-sizing:border-box; width:100%; margin-top:5px; border:1px solid #b8c6d1; border-radius:8px; padding:9px 10px; background:#fff; color:#1b2d3c; font:inherit; }
.zasp-dynamic-facets { display:grid; grid-template-columns:1fr 1fr; gap:0 10px; }
.zasp-dynamic-facets[hidden] { display:none!important; }
.zasp-assistant-panel .zasp-consent { display:flex; align-items:flex-start; gap:8px; font-weight:400; line-height:1.4; }
.zasp-consent input { margin-top:3px; }
.zasp-actions { display:flex; gap:10px; }
.zasp-submit,.zasp-reset,.zasp-contact { border-radius:8px; padding:10px 13px; font-weight:700; cursor:pointer; }
.zasp-submit,.zasp-contact { border:1px solid var(--zasp-blue); background:var(--zasp-blue); color:#fff!important; text-decoration:none!important; }
.zasp-reset { border:1px solid #bdc9d2; background:#fff; color:#334b5d; }
.zasp-results { padding:0 18px 18px; }
.zasp-results .zasp-rec-grid { grid-template-columns:1fr; }
.zasp-results .zasp-rec-card { flex-direction:row; }
.zasp-results .zasp-rec-card img,.zasp-results .zasp-rec-placeholder { width:110px; aspect-ratio:1; flex:0 0 110px; }
.zasp-message { padding:12px; border-radius:8px; background:var(--zasp-bg); color:#435665; }
.zasp-related-fallback { margin:2rem 0 1.5rem; padding-top:1rem; }
@media (max-width:720px) {
  .zasp-rec-grid { grid-template-columns:1fr; }
  .zasp-assistant-launch { right:12px; bottom:72px; }
  .zasp-assistant-panel { right:8px; bottom:126px; width:calc(100vw - 16px); max-height:calc(100vh - 138px); }
  .zasp-dynamic-facets { grid-template-columns:1fr; gap:0; }
}
