/* "Proactive assistance" section (public/proactive/proactive.js), shared by V1 and V2. Everything is scoped under
   .pa and sets its own font, colors and form styles, so it looks the same on both pages and leaks nothing out.
   Cheap to draw: no filters/backdrop-filter; only transform + opacity animate. */
.pa{--pa-ink:#3A2E26;--pa-ink2:#7A6656;--pa-ink3:#8F7A66;--pa-line:#F0E3D2;--pa-orange:#FFB27A;--pa-accent:#F26B1D;--pa-oink:#C2541C;--pa-mint:#8FD9B6;
  --pa-font:ui-rounded,"SF Pro Rounded","Nunito","Varela Round","Quicksand",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  display:block;box-sizing:border-box;width:100%;min-width:0;padding:12px 14px 14px;border-radius:26px;border:1.5px solid #F3D8C4;
  background:linear-gradient(135deg,#FFE8D9,#E2F6EA);box-shadow:0 4px 12px -8px rgba(122,84,46,.35);
  color:var(--pa-ink);font:500 15px/1.4 var(--pa-font);text-align:left;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}
.pa *,.pa *::before,.pa *::after{box-sizing:border-box}
.pa button,.pa input,.pa textarea{font:inherit;color:inherit;letter-spacing:normal;text-transform:none}
.pa button{cursor:pointer}
.pa button:disabled{cursor:default}
.pa :focus-visible{outline:3px solid #FF9A55;outline-offset:2px;border-radius:12px}
.pa [hidden]{display:none !important}
.pa p,.pa h2,.pa h3{margin:0}
.pa-ic{display:block;flex:none;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.pa-ic.f{fill:currentColor;stroke:none;fill-rule:evenodd}

/* Header */
.pa-head{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 4px}
.pa-spark{width:20px;height:20px;color:#E8823F}
.pa-title{flex:1;min-width:0;font-size:17px;font-weight:900;line-height:1.2;color:var(--pa-ink)}
.pa-n{min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#fff;border:1.5px solid #F3C9A9;font-size:12.5px;font-weight:900;line-height:21px;text-align:center;color:var(--pa-oink)}
.pa-n:empty{display:none}
.pa-body{display:grid;gap:12px;margin-top:6px;min-width:0}
.pa-sec{display:grid;gap:6px;min-width:0}
.pa-hrow{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.pa-h{margin:4px 0 0 4px;font-size:12.5px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--pa-ink2)}
.pa-empty{margin:0;padding:2px 4px;font-size:13.5px;font-weight:700;color:var(--pa-ink3);list-style:none}
.pa-status{margin:6px 4px 0;font-size:13px;font-weight:800;color:#1D6B47}
.pa-status:empty{display:none}
.pa-status.bad{color:#A3300C}

/* Cards */
.pa-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;min-width:0}
.pa-item{min-width:0;padding:10px 12px;background:rgba(255,255,255,.9);border-radius:18px;transition:transform .24s ease,opacity .24s ease}
.pa-item.leave{opacity:0;transform:translateX(28px) scale(.97)}
.pa-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 4px}
.pa-from{font-size:12px;font-weight:800;color:var(--pa-ink3)}
.pa-kind{display:inline-flex;align-items:center;gap:3px;padding:0 8px 0 6px;min-height:20px;border-radius:999px;border:1.5px solid;font-size:11px;font-weight:900}
.pa-kind .pa-ic{width:12px;height:12px}
.pa-kind.done{background:#C9F0DB;border-color:#55B786;color:#0F4A2E}
.pa-kind.sug{background:#FFDCC6;border-color:#E99A69;color:#6B2B08}
.pa-t{display:block;margin:0;font-weight:900;font-size:15.5px;line-height:1.3;color:var(--pa-ink)}
.pa-sum{display:block;margin:3px 0 0;font-size:14px;font-weight:500;color:var(--pa-ink2);white-space:pre-wrap}
.pa-sum.clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}
.pa-re{margin:4px 0 0;font-size:12.5px;font-weight:800;color:var(--pa-ink3)}
.pa-chip{display:inline-block;font-size:11px;font-weight:800;padding:1px 7px;border-radius:999px;background:#F4EADD;color:var(--pa-ink2)}
.pa-chip.ok{background:#C9F0DB;color:#0F4A2E}
.pa-link,.pa-linkish{display:inline-block;margin-top:6px;font-weight:800;color:var(--pa-oink)}
.pa-linkish{margin:0;padding:4px 2px;border:0;background:none;font-size:12.5px;font-weight:900;text-decoration:underline;text-underline-offset:3px}
.pa-acts{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}

/* Pills */
.pa-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 13px;border-radius:999px;border:1.5px solid var(--pa-line);background:#fff;font-size:13px;font-weight:800;color:var(--pa-ink);text-decoration:none;white-space:nowrap}
.pa-pill.solid{background:var(--pa-orange);border-color:var(--pa-orange);color:#3B1D08}
.pa-pill.ok{background:var(--pa-mint);border-color:var(--pa-mint);color:#0F3D28}
.pa-pill:disabled{opacity:.5}
.pa-pill:not(:disabled):active{transform:scale(.94)}
.pa-pill.opt{white-space:normal;text-align:center;line-height:1.2;padding:6px 13px;min-height:36px;border-color:#F3C9A9}
.pa-pill.opt:not(:disabled):hover{background:#FFF1E6}
.pa-pill.opt.on{border-color:var(--pa-accent);color:var(--pa-oink)}

/* Questions */
.pa-opts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.pa-other{display:flex;gap:6px;margin-top:8px}
.pa-input,.pa textarea{min-width:0;min-height:40px;padding:8px 12px;border-radius:14px;border:1.5px solid var(--pa-line);background:#fff;font-size:16px;color:var(--pa-ink)}
.pa-other .pa-input{flex:1}
.pa-flash{margin:8px 0 0;font-weight:900;color:#1D6B47;animation:pa-in .2s ease-out}
@keyframes pa-in{from{opacity:0;transform:translateY(-6px)}}
.pa-done{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px}
.pa-done-q{flex:1 1 60%;min-width:0;font-size:13.5px;font-weight:700;color:var(--pa-ink2)}

/* Folds ("Answered (n)", "Docs (n)") and the For your review header row */
.pa-fold{display:grid;gap:8px;min-width:0}
.pa-fold-t{justify-self:start;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 14px;border-radius:999px;border:0;background:rgba(255,255,255,.6);font-size:13px;font-weight:900}
.pa-chev{display:inline-block;color:var(--pa-ink3);transition:transform .2s}
.pa [aria-expanded="true"] .pa-chev{transform:rotate(90deg)}
.pa-rvhead{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:0 12px;border:1.5px solid #F3C9A9;border-radius:16px;background:rgba(255,255,255,.75);text-align:left;font-weight:900;font-size:15px}
.pa-rvhead:hover{background:#fff}
.pa-rvtitle{flex:1;min-width:0}
.pa-cnt{min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#F4EADD;font-size:12.5px;line-height:24px;text-align:center;color:var(--pa-ink2)}
.pa-cnt.on{background:var(--pa-accent);color:#fff}

/* Expandable review / doc rows */
.pa-exp{display:block;width:100%;margin:0;padding:2px 0;border:0;border-radius:12px;background:none;text-align:left}
.pa-exp.row{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 2px}
.pa-more{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:12.5px;font-weight:900;color:var(--pa-oink)}
.pa-more .pa-chev{color:var(--pa-oink)}
.pa-docrow{padding:6px 12px}
.pa-doct{flex:1;min-width:0;font-weight:800}
.pa-docw{flex:none;font-size:12px;font-weight:800;color:var(--pa-ink3)}
.pa-doc{min-width:0;max-width:100%;margin-top:8px;padding:10px 12px 10px;border-radius:14px;background:#FFFDF9;border:1.5px solid var(--pa-line)}
.pa-docmeta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0 0 6px;font-size:12px;font-weight:800;color:var(--pa-ink3)}
.pa-docmeta .pa-ic{width:14px;height:14px}
.pa-docmeta .pa-doct{flex:0 1 auto;color:var(--pa-ink)}
.pa-err{margin:0 0 8px;font-size:13.5px;font-weight:800;color:#A3300C}

/* Rendered markdown: capped height with its own scroll; never wider than the card */
.pa-md{max-height:60vh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-width:0;max-width:100%;padding:0 4px 2px 0;
  font-size:15px;line-height:1.55;font-weight:500;color:var(--pa-ink);overflow-wrap:anywhere;word-break:break-word}
.pa-md:focus-visible{outline-offset:0}
.pa-md>:first-child{margin-top:0}
.pa-md>:last-child{margin-bottom:0}
.pa-md h1,.pa-md h2,.pa-md h3,.pa-md h4,.pa-md h5,.pa-md h6{margin:16px 0 6px;font-weight:900;line-height:1.2;color:var(--pa-ink)}
.pa-md h1{font-size:21px}.pa-md h2{font-size:18.5px}.pa-md h3{font-size:16.5px}.pa-md h4,.pa-md h5,.pa-md h6{font-size:15px}
.pa-md p,.pa-md ul,.pa-md ol,.pa-md blockquote,.pa-md pre,.pa-md .pa-md-table{margin:0 0 10px}
.pa-md ul,.pa-md ol{padding-left:22px}
.pa-md li+li{margin-top:3px}
.pa-md li.pa-md-task{list-style:none;margin-left:-20px}
.pa-md li.pa-md-task input{width:16px;height:16px;min-height:0;margin:0 4px 0 0;vertical-align:-2px;accent-color:var(--pa-accent)}
.pa-md a{color:var(--pa-oink);font-weight:800;overflow-wrap:anywhere;word-break:break-all}
.pa-md code{padding:1px 5px;border-radius:6px;background:#F4EADD;font:500 .9em/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-wrap:anywhere}
.pa-md pre{max-width:100%;padding:10px 12px;border-radius:12px;background:#2B2420;color:#FBF6EE;overflow-x:auto}
.pa-md pre code{padding:0;background:none;color:inherit;white-space:pre;overflow-wrap:normal;word-break:normal}
.pa-md blockquote{padding:4px 12px;border-left:4px solid var(--pa-orange);background:#FFF4EA;border-radius:0 12px 12px 0;color:var(--pa-ink2)}
.pa-md hr{border:0;border-top:1.5px solid var(--pa-line);margin:14px 0}
.pa-md-table{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.pa-md table{border-collapse:collapse;font-size:14px;min-width:100%}
.pa-md th,.pa-md td{padding:6px 10px;border:1px solid var(--pa-line);text-align:left;vertical-align:top;overflow-wrap:normal;word-break:normal;min-width:6em}
.pa-md th{background:#FBF1E6;font-weight:900}

/* Actions */
.pa-pl{display:block;margin:8px 0 4px;font-size:12px;font-weight:800;color:var(--pa-ink3)}
.pa-payload,.pa-pre{display:block;width:100%;font:500 13px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.pa textarea.pa-payload{min-height:84px;background:#FFFDF9;font-size:16px;resize:vertical}
@media (min-width:600px){.pa textarea.pa-payload{font-size:13px}}
.pa-pre{margin:6px 0 0;padding:8px 10px;border-radius:12px;background:#FBF3EA;max-height:180px;overflow:auto;color:var(--pa-ink)}
.pa-stline{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 0}
.pa-st{display:inline-flex;align-items:center;min-height:22px;padding:0 9px;border-radius:999px;border:1.5px solid;font-size:11.5px;font-weight:900}
.pa-st.wait{background:#FFF0A6;border-color:#C9A323;color:#5A4500}
.pa-st.ok{background:#C9F0DB;border-color:#55B786;color:#0F4A2E}
.pa-st.bad{background:#FFD3C4;border-color:#D2582E;color:#6B1E05}
.pa-note{margin:6px 0 0;font-size:13px;font-weight:700;color:var(--pa-ink2)}
.pa-note.res{white-space:pre-wrap;color:var(--pa-ink)}
.pa-act.s-done,.pa-act.s-failed{background:rgba(255,255,255,.7)}

/* Messages + compose */
.pa-thread{list-style:none;margin:0;padding:0;display:grid;gap:6px;min-width:0}
.pa-msg{display:flex;flex-direction:column;max-width:86%;min-width:0}
.pa-msg.me{justify-self:end;align-items:flex-end}
.pa-msg.bot{justify-self:start;align-items:flex-start}
.pa-bubble{margin:0;padding:8px 12px;border-radius:18px;font-size:14.5px;white-space:pre-wrap;max-width:100%;color:var(--pa-ink)}
.pa-msg.me .pa-bubble{background:#FFD9BF;border-bottom-right-radius:6px}
.pa-msg.bot .pa-bubble{background:#fff;border:1px solid var(--pa-line);border-bottom-left-radius:6px}
.pa-msg.pending{opacity:.6}
.pa-mmeta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:2px 6px 0;font-size:11.5px;font-weight:800;color:var(--pa-ink3)}
.pa-new{padding:0 6px;border-radius:999px;background:var(--pa-accent);color:#fff;font-size:10.5px}
.pa-reftag{padding:0;border:0;background:none;font:inherit;color:var(--pa-oink);text-decoration:underline dotted;text-underline-offset:2px;min-height:24px;max-width:100%;text-align:left}
.pa-compose{display:grid;gap:6px;margin:10px 0 0}
.pa-row{display:flex;gap:8px;align-items:flex-end}
.pa-row textarea{flex:1;width:auto;min-height:42px;max-height:160px;resize:none;border-radius:18px;line-height:1.35}
.pa-row .pa-pill{min-height:42px}
.pa-ctx{display:flex;min-width:0}
.pa-ctxchip{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:0 4px 0 11px;min-height:30px;border-radius:999px;background:#fff;border:1.5px solid var(--pa-accent);font-size:12.5px;font-weight:800;color:var(--pa-oink)}
.pa-ctxt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pa-ctxx{display:grid;place-items:center;width:28px;height:28px;flex:none;padding:0;border:0;border-radius:50%;background:none;font-size:18px;font-weight:900;color:var(--pa-oink)}

@media (prefers-reduced-motion:reduce){.pa-flash{animation:none}.pa-item,.pa-chev{transition:none}}
