/* Rhyline Lab, demo 03 "Rhyline Answers" as a chat (2026-11) */
.lp-ans{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:clamp(24px,3.5vw,56px);row-gap:32px;align-items:start}
.lp-ans__chat{display:flex;flex-direction:column;min-width:0;padding:clamp(18px,2.4vw,32px);background:#fff;border:1px solid var(--line);border-top:2px solid var(--ink);border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow)}
.lp-section:not(.lp-section--paper) .lp-ans__chat{background:var(--paper)}
.lp-ans__log{display:flex;flex-direction:column;gap:14px}
.lp-ans__msg{max-width:min(40rem,92%);padding:12px 14px;border-radius:var(--radius);font-size:var(--fs-sm);line-height:1.55;overflow-wrap:anywhere;animation:lp-lab-in .3s var(--ease) both}
.lp-ans__msg p{margin:0}
.lp-ans__msg.is-you{align-self:flex-end;background:var(--navy);color:#fff}
.lp-ans__msg.is-ai{align-self:flex-start;background:var(--paper-2);color:var(--ink)}
.lp-ans__who{display:block;margin-bottom:4px;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;opacity:.75}
.lp-ans__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:2px 0 10px !important;font-size:var(--fs-xs);color:var(--muted)}
.lp-ans__meta .lp-res__badge{background:#fff}
.lp-ans__answer{font-size:1rem;line-height:1.55}
.lp-ans__nf{display:inline-block;margin:0 0 8px !important;padding:3px 8px;border-left:3px solid var(--accent);background:#fff;font-size:var(--fs-xs);font-weight:600;color:var(--ink)}
.lp-ans__notice{margin:0 0 8px !important;font-size:var(--fs-xs);color:var(--muted)}
.lp-ans__alert{margin:0;align-self:stretch;padding:10px 12px;border-left:3px solid var(--accent);background:var(--paper-2);font-size:var(--fs-sm);color:var(--ink)}
.lp-ans__sh{margin:14px 0 6px !important;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.lp-ans__sources{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.lp-ans__src{display:block;width:100%;padding:8px 10px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);background:#fff;font-family:var(--font);font-size:var(--fs-xs);line-height:1.5;text-align:left;color:var(--text);cursor:pointer;transition:border-color .2s}
.lp-ans__src:hover{border-color:var(--ink);border-left-color:var(--accent)}
.lp-ans__srcdoc{display:block;font-weight:600;color:var(--ink)}
.lp-ans__quote{display:block;margin-top:2px}
.lp-ans__next{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0}
.lp-ans__wait{display:flex;align-items:center;gap:10px;margin:0;font-size:var(--fs-sm);color:var(--muted)}
.lp-ans__wait::before{content:"";flex:none;width:10px;height:10px;background:var(--accent);animation:lp-lab-pulse 1s ease-in-out infinite}
.lp-ans__starters{margin-top:20px}
.lp-ans__pick{margin:0 0 8px;font-size:var(--fs-xs);font-weight:600;color:var(--muted)}
.lp-ans__chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}
.lp-ans__chip{min-height:40px;padding:8px 14px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;font-family:var(--font);font-size:var(--fs-sm);line-height:1.3;text-align:left;color:var(--ink);cursor:pointer;transition:border-color .2s}
.lp-ans__chip:hover{border-color:var(--ink)}
.lp-ans.is-busy .lp-ans__chip{opacity:.55;cursor:progress}
.lp-ans__form{display:flex;align-items:stretch;gap:8px;margin-top:16px}
.lp-ans__input{flex:1;min-width:0;min-height:52px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;font-family:var(--font);font-size:1rem;line-height:1.4;color:var(--ink);resize:vertical}
.lp-ans__input:focus{border-color:var(--navy);outline:2px solid var(--navy);outline-offset:1px}
.lp-ans__send{flex:none;min-width:88px;padding:0 20px;border:1px solid var(--navy);border-radius:var(--radius);background:var(--navy);font-family:var(--font);font-size:1rem;font-weight:600;color:#fff;cursor:pointer;transition:background-color .2s}
.lp-ans__send:hover{background:var(--navy-700)}
.lp-ans__send:disabled{opacity:.6;cursor:progress}
.lp-ans__foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px;margin-top:10px}
.lp-ans__fine{flex:1 1 20rem;margin:0;font-size:var(--fs-xs);line-height:1.5;color:var(--muted)}
.lp-ans__restart{padding:0;border:0;background:none;font-family:var(--font);font-size:var(--fs-xs);font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.lp-ans__restart[hidden]{display:none}
.lp-ans__chip:focus-visible,.lp-ans__send:focus-visible,.lp-ans__src:focus-visible,.lp-ans__restart:focus-visible,.lp-ans__doc summary:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.lp-ans__docs{display:grid;gap:10px;min-width:0}
.lp-ans__dh{margin:0;font-weight:600;color:var(--ink)}
.lp-ans__dnote{margin:-4px 0 4px;font-size:var(--fs-xs);line-height:1.5;color:var(--muted)}
.lp-ans__doc{background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.lp-ans__doc summary{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}
.lp-ans__doc summary::-webkit-details-marker{display:none}
.lp-ans__doc summary::after{content:"+";flex:none;font-weight:600;color:var(--muted)}
.lp-ans__doc[open] summary::after{content:"\2212"}
.lp-ans__dtitle{flex:1;font-weight:600;color:var(--ink)}
.lp-ans__dver{font-size:var(--fs-xs);color:var(--muted)}
.lp-ans__doc .lp-hb__list{padding:0 8px 8px}
.lp-ans__doc .lp-hb__sec:focus{outline:none}
@media (max-width:900px){
  .lp-ans{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:600px){
  .lp-ans__chat{padding:16px 14px 18px}
  .lp-ans__form{flex-direction:column}
  .lp-ans__send{min-height:48px}
  .lp-ans__msg{max-width:100%}
}
@media (prefers-reduced-motion:reduce){
  .lp-ans__msg{animation:none}
  .lp-ans__wait::before{animation:none}
}
