/* patron-chat.css — p64 (2026-11-10): the rebuilt chat (patron-chat.js). One quiet column on the chat's black; every answer on
   the key of the robot that gives it (the keys' own colours, gate.js keycap(): top 28 % to white, the colour from 55 %,
   12 % darker at the foot, the lip 32 % darker), his own lines on a graphite key, three dots while a robot thinks. */
.pc [data-bot="chief"],.pc[data-bot="chief"],.pc-menu [data-bot="chief"]{--k-top:#69abff;--k-mid:#2e8bff;--k-bot:#287ae0;--k-lip:#1f5fad}
.pc [data-bot="dev"],.pc-menu [data-bot="dev"]{--k-top:#56ccbf;--k-mid:#14b8a6;--k-bot:#12a292;--k-lip:#0e7d71}
.pc [data-bot="fund"],.pc-menu [data-bot="fund"]{--k-top:#60d497;--k-mid:#22c36f;--k-bot:#1eac62;--k-lip:#17854b}
.pc [data-bot="legal"],.pc-menu [data-bot="legal"]{--k-top:#ab8af9;--k-mid:#8b5cf6;--k-bot:#7a51d8;--k-lip:#5f3fa7}
.pc [data-bot="mkt"],.pc-menu [data-bot="mkt"]{--k-top:#ff9473;--k-mid:#ff6a3d;--k-bot:#e05d36;--k-lip:#ad4829}

.surf-pane.pc{position:relative;background:#111;color:#f4f4f1}
.pc-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.pc-feed{box-sizing:border-box;display:flex;flex-direction:column;gap:12px;width:100%;max-width:800px;margin:0 auto;padding:28px 24px 16px}

/* ------------------------------------------------------------------ the lines */
.pc-msg{display:flex;flex-direction:column;max-width:86%;min-width:0}
.pc-msg.me{align-self:flex-end;align-items:flex-end;max-width:78%}
.pc-msg.bot{align-self:flex-start;align-items:flex-start}
.pc-bub{box-sizing:border-box;max-width:100%;min-width:0;padding:11px 16px;border-radius:20px;font-size:15px;line-height:23px;overflow-wrap:anywhere;margin-bottom:3px}
/* a robot's words: on its key, the key's lip under it; white words, as the key's own legend */
.pc-msg.bot>.pc-bub{background:linear-gradient(180deg,var(--k-top) 0,var(--k-mid) 30px,var(--k-mid) calc(100% - 18px),var(--k-bot) 100%);color:#fff;font-weight:500;
  text-shadow:0 1px 1px rgba(0,0,0,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 0 0 1px rgba(0,0,0,.12),0 3px 0 var(--k-lip)}
/* his own: a graphite key */
.pc-msg.me>.pc-bub{background:linear-gradient(180deg,#3b3b3f 0,#2d2d30 26px,#2d2d30 calc(100% - 16px),#28282b 100%);color:#f4f4f1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 0 1px rgba(0,0,0,.2),0 3px 0 #18181a;white-space:pre-wrap}
.pc-name{margin:0 0 2px;font-size:12.5px;line-height:18px;font-weight:650;letter-spacing:.01em;color:rgba(255,255,255,.82)}
.pc-tag{display:inline-block;margin:0 8px 0 -4px;padding:0 9px;height:21px;line-height:21px;border-radius:999px;vertical-align:1px;white-space:nowrap;
  background:linear-gradient(180deg,var(--k-top),var(--k-mid) 60%);box-shadow:0 1.5px 0 var(--k-lip);color:#fff;font-size:12.5px;font-weight:650;text-shadow:0 1px 1px rgba(0,0,0,.14)}
.pc-files{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.pc-file{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:8px;background:rgba(255,255,255,.1);font-size:12.5px;white-space:nowrap;
  max-width:240px;overflow:hidden;text-overflow:ellipsis}

/* the answer's words */
.pc-md{display:flex;flex-direction:column;gap:8px;min-width:0}
.pc-md .md{max-width:none;font-size:15px;line-height:23px;color:inherit;gap:8px}
.pc-md .md :is(strong,b,em,h1,h2,h3,h4,th,td,.md-p,.md-li){color:inherit}
.pc-md .md :is(h1,h2,h3,h4){font-size:16px;line-height:23px;margin:4px 0 0}
.pc-md .md-mark{color:rgba(255,255,255,.85)}
.pc-md a,.pc-md a.md-link{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.6);text-underline-offset:2px}
.pc-md :is(code,.md-tick){background:rgba(0,0,0,.2);color:#fff;text-shadow:none;border-radius:6px;padding:0 5px}
.pc-md table{border-collapse:collapse}
.pc-md :is(table,th,td){border-color:rgba(255,255,255,.28)}
.pc-md ::selection{background:rgba(0,0,0,.35);color:#fff}
.pc-code{align-self:stretch;min-width:0;margin:2px 0;border-radius:12px;background:#0e0f12;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);text-shadow:none;overflow:hidden}
.pc-codehead{display:flex;align-items:center;justify-content:space-between;height:32px;padding:0 6px 0 12px;background:rgba(255,255,255,.04);font-size:12px;color:#9a9a96}
.pc-codecopy{height:24px;padding:0 10px;border:0;border-radius:999px;background:none;color:#cfcfcc;font:inherit;font-size:12px;cursor:pointer}
.pc-codecopy:hover{background:#24262b;color:#fff}
.pc-pre{margin:0;padding:12px 14px;overflow-x:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:20px;font-weight:400;color:#e8e8e6;white-space:pre;tab-size:2}

/* under an answer: Copy (and, for the platform's admins, the model and its cost) */
.pc-under{display:flex;align-items:center;gap:10px;min-height:22px;padding:2px 6px 0;opacity:0;transition:opacity .15s}
.pc-msg:hover>.pc-under,.pc-msg:focus-within>.pc-under,.pc-msg:last-child>.pc-under{opacity:1}
@media (hover:none){.pc-under{opacity:1}}
.pc-act{height:22px;padding:0 8px;border:0;border-radius:999px;background:none;color:#8e8e8a;font:inherit;font-size:12.5px;cursor:pointer}
.pc-act:hover{background:#1c1c1e;color:#fff}

/* thinking: three dots on the robot's key, nothing else */
.pc-msg.live.typing>.pc-bub{position:relative;width:66px;height:40px;padding:0}
.pc-msg.live.typing>.pc-bub>*{display:none}
.pc-msg.live.typing>.pc-bub::after{content:"";position:absolute;left:50%;top:50%;width:34px;height:18px;transform:translate(-50%,-50%);
  --dot:radial-gradient(circle closest-side,#fff 90%,rgba(255,255,255,0));
  background:var(--dot) 0 50%/8px 8px no-repeat,var(--dot) 50% 50%/8px 8px no-repeat,var(--dot) 100% 50%/8px 8px no-repeat;animation:pc-dots 1.3s infinite ease-in-out}
@keyframes pc-dots{
  0%,58%,100%{background-position:0 50%,50% 50%,100% 50%}
  12%{background-position:0 12%,50% 50%,100% 50%}
  24%{background-position:0 50%,50% 12%,100% 50%}
  36%{background-position:0 50%,50% 50%,100% 12%}
}
@media (prefers-reduced-motion:reduce){.pc-msg.live.typing>.pc-bub::after{animation:none}}

.pc-note{align-self:center;max-width:460px;margin:18vh 0 0;text-align:center;font-size:14px;line-height:21px;color:#6f6f6b}
.pc-note.err{color:#d9b46a}
.pc-err{display:flex;align-items:center;gap:10px;align-self:flex-start;max-width:86%;font-size:13.5px;line-height:20px;color:#d9b46a}

/* ------------------------------------------------------------------ the message box: + · to whom · words · send */
.pc-dock{box-sizing:border-box;flex:none;width:100%;max-width:800px;margin:0 auto;padding:6px 24px 18px}
.pc-tray{display:flex;flex-wrap:wrap;gap:6px;padding:0 4px 8px}
.pc-chip{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 4px 0 6px;border-radius:10px;background:#1c1c1e;box-shadow:inset 0 0 0 1px #2a2a2d;font-size:13px;color:#d6d6d3;max-width:260px}
.pc-chipk{flex:none;height:18px;padding:0 5px;border-radius:5px;background:#2e2e32;font-size:10px;font-weight:700;line-height:18px;color:#bdbdb9;letter-spacing:.04em}
.pc-chipn{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-chipx{flex:none;width:22px;height:22px;border:0;border-radius:50%;background:none;color:#8e8e8a;display:grid;place-items:center;cursor:pointer;padding:0}
.pc-chipx:hover{background:#2a2a2d;color:#fff}
.pc-bar{display:flex;align-items:flex-end;gap:8px;min-height:58px;box-sizing:border-box;padding:8px 9px 8px 10px;border-radius:29px;background:#141415;box-shadow:inset 0 0 0 1px #262628}
.pc-bar:focus-within{box-shadow:inset 0 0 0 1px #3a3a3e}
.pc-clip,.pc-send{flex:none;width:42px;height:42px;border:0;border-radius:50%;padding:0;display:grid;place-items:center;cursor:pointer}
.pc-clip{background:none;color:#bdbdb9}
.pc-clip:hover{background:#1f1f21;color:#fff}
.pc-send{background:#f4f4f1;color:#0b0b0b}
.pc-send:hover:not(:disabled){background:#fff}
.pc-send:disabled{background:#232325;color:#6f6f6b;cursor:default}
.pc-send.stop{background:#f4f4f1;color:#0b0b0b}
.pc-to{flex:none;display:inline-flex;align-items:center;gap:7px;height:30px;margin:6px 0;padding:0 11px 0 9px;border:0;border-radius:999px;background:#1f1f21;color:#e6e6e3;
  font:inherit;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer;max-width:42%}
.pc-to>span{overflow:hidden;text-overflow:ellipsis}
.pc-to:hover{background:#2a2a2d}
.pc-to>b,.pc-mi>b{flex:none;width:10px;height:10px;border-radius:50%;background:linear-gradient(180deg,var(--k-top),var(--k-mid));box-shadow:0 1.5px 0 var(--k-lip)}
.pc-field{flex:1;min-width:0;height:42px;min-height:42px;max-height:240px;box-sizing:border-box;margin:0;padding:9px 2px;border:0;outline:0;resize:none;background:none;
  color:#f4f4f1;font-family:inherit;font-size:16px;line-height:24px}
.pc-field::placeholder{color:#6f6f6b}
:is(.pc-clip,.pc-send,.pc-to,.pc-act,.pc-codecopy,.pc-chipx):focus-visible{outline:2px solid #6c9cff;outline-offset:2px}
.pc-menu{position:fixed;z-index:80;min-width:260px;padding:6px;background:#1a1a1b;border:1px solid #2a2a2d;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.55);
  display:flex;flex-direction:column;gap:2px}
.pc-mi{display:grid;grid-template-columns:10px minmax(0,1fr);column-gap:10px;row-gap:1px;align-items:center;width:100%;padding:8px 10px;border:0;border-radius:10px;background:none;
  color:#f4f4f1;font:inherit;text-align:left;cursor:pointer}
.pc-mi:hover,.pc-mi:focus-visible,.pc-mi.on{background:#242426;outline:none}
.pc-min{font-size:14px;font-weight:600}
.pc-mis{grid-column:2;font-size:12.5px;color:#8e8e8a}
.pc.pc-drop::after{content:"Drop to add it to your message";position:absolute;inset:10px;display:grid;place-items:center;border-radius:20px;
  border:2px dashed #3a3a3e;background:rgba(17,17,17,.88);color:#cfcfcc;font-size:15px;pointer-events:none;z-index:5}

@media (max-width:800px){
  .pc-feed{padding:16px 12px 10px}
  .pc-dock{padding:4px 10px calc(10px + env(safe-area-inset-bottom))}
  .pc-msg{max-width:92%}
  .pc-msg.me{max-width:88%}
  .pc-to{max-width:36%;padding:0 9px 0 8px}
  .pc-bar{min-height:54px;border-radius:27px}
  .pc-clip,.pc-send{width:38px;height:38px}
}
/* a phone's head on one row: the robots' drawer, "Your team", New chat */
@media (max-width:800px){
  html[data-look="chats"] #app>main:has(.surf-pane.pc:not([hidden]))>.page-head{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"side title tools";align-items:center}
  html[data-look="chats"] #app>main:has(.surf-pane.pc:not([hidden]))>.page-head .look-tabs{display:none}
}
