/* ============================================================ CHAT TAB — threads left, conversation right, picked context above the dock */
.vtabs .cnt{min-width:16px;height:16px;padding:0 5px;border-radius:999px;background:var(--ink);color:#fff;font-family:var(--data);font-size:9.5px;font-weight:600;display:inline-grid;place-items:center}
.vtabs .cnt[hidden]{display:none}
.vtabs button[aria-pressed="true"] .cnt{background:#fff;color:var(--ink)}

.chatpane{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;padding-top:26px;align-items:start}
.cthreads{position:sticky;top:18px;display:grid;gap:4px}
.cth{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;width:100%;text-align:left;padding:8px 10px;border-radius:14px;cursor:pointer;transition:.15s}
.cth:hover{background:rgba(20,20,25,.045)}
.cth[aria-pressed="true"]{background:#fff;box-shadow:0 0 0 1px var(--glass-line),var(--shadow)}
.cth .tile{position:relative;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:13px;color:var(--ink);background:rgba(20,20,25,.054);overflow:hidden}
.cth b{display:block;font-size:12.5px;font-weight:600;color:var(--ink)}
.cth small{display:block;font-size:11px;color:var(--ink-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.cconv{min-width:0;display:grid;gap:18px}
.chead{display:flex;align-items:baseline;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.chead b{font-size:24px;font-weight:300;letter-spacing:-.02em;color:var(--ink)}
.chead span{font-size:11.5px;color:var(--ink-4)}
.cconv .chatlog{margin:0;max-width:none;min-height:42vh;align-content:start}
.cempty{justify-self:center;text-align:center;max-width:380px;padding:72px 0;color:var(--ink-4);font-size:12.5px;line-height:1.55}
.cempty b{display:block;font-size:14px;font-weight:600;color:var(--ink-2);margin-bottom:6px}
button.cav{padding:0;cursor:pointer;overflow:hidden}

/* context carried by a sent message */
.cctx{display:grid;gap:5px;margin-bottom:8px}
.cmsg.you .cx{display:block;font-size:11px;line-height:1.45;padding-left:8px;border-left:2px solid rgba(255,255,255,.35);color:rgba(255,255,255,.72)}
.cmsg.you .cx b{display:block;font-weight:600;font-size:10.5px;color:rgba(255,255,255,.9)}

/* the tray: what the next message will carry */
.ctray{position:sticky;bottom:96px;z-index:5;display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px 12px 12px;border-radius:18px;background:var(--glass-2);border:1px solid var(--glass-line);box-shadow:var(--shadow);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2)}
.ctray[hidden]{display:none}
.ctray .h{flex-basis:100%;display:flex;justify-content:space-between;font-size:11px;color:var(--ink-4);padding:0 2px 2px}
.ctray .h button{font-size:11px;color:var(--ink-3);cursor:pointer}
.ctray .h button:hover{color:var(--ink)}
.ctray .cx{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 4px 4px 11px;border-radius:999px;background:#fff;box-shadow:0 0 0 1px var(--line-2);color:var(--ink-2);font-size:11.5px}
.ctray .cx b{font-size:11px;font-weight:600;color:var(--ink);white-space:nowrap}
.ctray .cx .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}
.ctray .cx button{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;color:var(--ink-4);cursor:pointer;flex:0 0 auto}
.ctray .cx button:hover{background:rgba(20,20,25,.063);color:var(--ink)}

/* + add to chat — transcript bubbles, Detail remark / suggestion / concept */
.remark,.sugg-list li,.ccard{position:relative}
.addc{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--line-2);color:var(--ink-3);font-size:15px;line-height:1;font-style:normal;display:grid;place-items:center;opacity:0;transition:.15s;cursor:pointer;z-index:2}
.bub:hover > .addc,.remark:hover > .addc,.sugg-list li:hover > .addc,.ccard:hover > .addc,.rcard:hover .score .n > .addc,.addc.on{opacity:1}
.addc:hover{color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.addc.on{background:var(--ink);color:#fff;box-shadow:none}
/* inline: the + sits right after what it attaches — the score (whole card), the remark, each suggestion */
.rcard .score .n .addc,.remark .addc,.sugg-list li .addc{position:relative;top:auto;right:auto;flex:0 0 auto}
.rcard .score .n .addc{align-self:center;margin-left:12px}
.remark .addc{display:inline-grid;vertical-align:middle;margin-left:10px;font-style:normal}
.sugg-list li .addc{margin-top:-1px}
.ccard .addc{top:auto;bottom:8px}

.jchat{margin-top:12px;height:28px;padding:0 12px;border-radius:999px;font-size:11.5px;font-weight:600;color:var(--ink-2);background:rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--line-2);cursor:pointer;transition:.15s;justify-self:start}
.jchat:hover{color:var(--ink);box-shadow:0 0 0 1px var(--ink)}

@media (max-width:980px){.chatpane{grid-template-columns:1fr;gap:16px}.cthreads{position:static;grid-auto-flow:column;grid-auto-columns:minmax(180px,1fr);overflow-x:auto}}
