/* DEMO · rag — styles added during the capability upgrade. Loaded after demos.css. */

/* KB list: 14 docs — keep it scrollable inside the side panel */
.kb-list ul{max-height:264px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(124,58,237,.4) transparent;padding-right:4px}
.kb-list ul::-webkit-scrollbar{width:5px}
.kb-list ul::-webkit-scrollbar-thumb{background:rgba(124,58,237,.4);border-radius:3px}


/* visible retrieval card */
.d3-ret{align-self:stretch;max-width:96%;padding:13px 16px;border-radius:16px;background:rgba(5,8,20,.55);border:1px solid rgba(124,58,237,.3);font-size:12px}
.d3-ret-head{color:#c9cfe8;margin-bottom:10px;line-height:1.5}
.d3-ret-head b{color:#67e8f9;font-weight:500}
.d3-ret-row{display:grid;grid-template-columns:150px 1fr 38px;align-items:center;gap:10px;padding:5px 8px;border-radius:9px;border:1px solid transparent;transition:background .4s,border-color .4s}
.d3-ret-doc{font-family:'Space Grotesk',sans-serif;font-size:11.5px;color:#9aa3c7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.d3-ret-track{height:7px;border-radius:5px;background:rgba(255,255,255,.07);overflow:hidden}
.d3-ret-track i{display:block;height:100%;width:0;border-radius:5px;background:linear-gradient(90deg,#7c3aed,#22d3ee);transition:width .9s cubic-bezier(.2,.8,.2,1)}
.d3-ret-score{font-family:'Space Grotesk',sans-serif;font-size:11px;color:#9aa3c7;text-align:right}
.d3-ret-row.picked{background:rgba(34,211,238,.09);border-color:rgba(34,211,238,.4)}
.d3-ret-row.picked .d3-ret-doc,.d3-ret-row.picked .d3-ret-score{color:#a5f3fc}

/* confidence gauge */
.d3-conf{display:flex;align-items:center;gap:10px;margin-top:11px;flex-wrap:wrap}
.d3-gauge{width:92px;height:7px;border-radius:5px;background:rgba(255,255,255,.08);overflow:hidden;flex:none}
.d3-gauge i{display:block;height:100%;width:0;border-radius:5px;transition:width 1s cubic-bezier(.2,.8,.2,1)}
.d3-gauge.hi i{background:linear-gradient(90deg,#34d399,#22d3ee)}
.d3-gauge.mid i{background:linear-gradient(90deg,#fbbf24,#f59e0b)}
.d3-conf-lab{font-size:11px;color:#9aa3c7;font-family:'Space Grotesk',sans-serif}

/* citation chip as a button */
.msg button.cite{font-family:inherit;cursor:pointer;transition:background .3s,transform .3s}
.msg button.cite:hover{background:rgba(34,211,238,.25);transform:translateY(-1px)}

/* source passage card */
.d3-src{align-self:flex-start;max-width:92%;padding:16px 18px;border-radius:16px;background:rgba(7,12,28,.85);border:1px solid rgba(34,211,238,.35);box-shadow:0 14px 34px rgba(0,0,0,.35)}
.d3-src-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px;color:#c9cfe8;margin-bottom:9px}
.d3-src-head b{color:#a5f3fc;font-family:'Space Grotesk',sans-serif}
.d3-src-x{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);color:#9aa3c7;width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:11px;flex:none}
.d3-src-x:hover{color:#fff;border-color:#7c3aed}
.d3-src p{font-size:13px;line-height:1.65;color:#c9cfe8}
.d3-src mark{background:rgba(251,191,36,.28);color:#fde68a;padding:1px 4px;border-radius:5px}
.d3-src-foot{margin-top:10px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(154,163,199,.6)}

/* feedback loop */
.d3-fb{display:flex;gap:8px;margin-top:11px;align-items:center}
.d3-fb button{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);cursor:pointer;font-size:14px;transition:all .25s;display:grid;place-items:center}
.d3-fb button:hover{border-color:#7c3aed;transform:scale(1.12)}
.d3-fb-done{font-size:12px;color:#9aa3c7}

/* contextual follow-up chips */
.d3-fups{display:flex;gap:7px;margin-top:11px;flex-wrap:wrap}
.d3-fups button{font-size:11.5px;padding:6px 13px;border-radius:100px;border:1px dashed rgba(124,58,237,.55);background:rgba(124,58,237,.08);color:#c4b5fd;cursor:pointer;transition:all .3s}
.d3-fups button:hover{border-style:solid;border-color:#7c3aed;color:#fff}

/* deflection counter pop */
@keyframes d3pop{0%{transform:scale(1)}40%{transform:scale(1.07)}100%{transform:scale(1)}}
.side-stat.d3-pop{animation:d3pop .5s ease}

/* ticket creation */
.d3-ticket{margin-top:8px;padding:10px 20px;font-size:13px}
.d3-ticket-out{margin-top:10px;font-size:12.5px;line-height:1.5}
.d3-ticket-ok{color:#34d399}
