/* ===== «Задать вопрос ИИ-юристу» — виджет и ЛК ===== */
:root { --lqa-acc:#00695c; --lqa-acc2:#00b39c; --lqa-ink:#14231e; --lqa-muted:#6b7280; --lqa-line:#e6ece9; }

.yvo-lqa {
  margin: 40px auto 8px; max-width: 760px;
  background:
    radial-gradient(520px 220px at 8% -30%, rgba(0,168,150,.16), transparent 60%),
    radial-gradient(460px 200px at 108% -20%, rgba(255,169,64,.14), transparent 55%),
    linear-gradient(165deg,#f2faf7,#ffffff);
  border: 1px solid var(--lqa-line); border-radius: 22px;
  padding: 26px 24px 22px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 24px 54px -30px rgba(5,58,48,.4);
  font-family: "Inter","Segoe UI",system-ui,sans-serif; color: var(--lqa-ink);
}
.yvo-lqa-badge { display:inline-flex; align-items:center; gap:7px; font-size:12.5px; font-weight:800; color:var(--lqa-acc); background:#fff; border:1px solid rgba(0,105,92,.15); border-radius:20px; padding:5px 12px; box-shadow:0 4px 12px -4px rgba(0,105,92,.25); }
.yvo-lqa-dot { width:8px; height:8px; border-radius:50%; background:var(--lqa-acc2); box-shadow:0 0 0 0 rgba(0,179,156,.5); animation:yvoLqaPulse 1.8s infinite; }
@keyframes yvoLqaPulse { 0%{box-shadow:0 0 0 0 rgba(0,179,156,.5)} 70%{box-shadow:0 0 0 7px rgba(0,179,156,0)} 100%{box-shadow:0 0 0 0 rgba(0,179,156,0)} }
.yvo-lqa-title { font-size:23px; font-weight:800; letter-spacing:-.01em; margin:12px 0 6px; }
.yvo-lqa-sub { color:#41544d; font-size:15px; line-height:1.55; margin:0 0 16px; }

.yvo-lqa-chat, .yvo-lqa-thread { display:flex; flex-direction:column; gap:12px; max-height:440px; overflow-y:auto; margin-bottom:14px; padding:2px; }
.yvo-lqa-chat:empty { display:none; }
.yvo-lqa-msg { max-width:86%; display:flex; flex-direction:column; gap:3px; }
.yvo-lqa-msg__who { font-size:11px; font-weight:800; letter-spacing:.02em; opacity:.7; }
.yvo-lqa-msg__text { border-radius:14px; padding:11px 14px; font-size:14.5px; line-height:1.55; white-space:pre-wrap; word-wrap:break-word; }
.yvo-lqa-msg--user { align-self:flex-end; align-items:flex-end; }
.yvo-lqa-msg--user .yvo-lqa-msg__text { background:linear-gradient(135deg,#00b39c,#00695c); color:#fff; border-bottom-right-radius:4px; box-shadow:0 8px 18px -8px rgba(0,105,92,.5); }
.yvo-lqa-msg--user .yvo-lqa-msg__who { color:var(--lqa-acc); }
.yvo-lqa-msg--ai .yvo-lqa-msg__text { background:#fff; border:1px solid var(--lqa-line); border-bottom-left-radius:4px; box-shadow:0 8px 18px -12px rgba(9,40,34,.3); }
.yvo-lqa-msg--lawyer .yvo-lqa-msg__text { background:#eef7f3; border:1px solid #cfe8df; border-bottom-left-radius:4px; }
.yvo-lqa-msg--lawyer .yvo-lqa-msg__who { color:var(--lqa-acc); }

.yvo-lqa-dots { display:inline-flex; gap:4px; padding:3px 0; }
.yvo-lqa-dots i { width:7px; height:7px; border-radius:50%; background:#b9c6c1; animation:yvoLqaBounce 1.2s infinite; }
.yvo-lqa-dots i:nth-child(2){ animation-delay:.2s } .yvo-lqa-dots i:nth-child(3){ animation-delay:.4s }
@keyframes yvoLqaBounce { 0%,60%,100%{transform:translateY(0);opacity:.5} 30%{transform:translateY(-4px);opacity:1} }

.yvo-lqa-form { display:flex; gap:10px; align-items:flex-end; }
.yvo-lqa-form textarea { flex:1; resize:vertical; min-height:46px; border:1px solid var(--lqa-line); border-radius:12px; padding:11px 14px; font:inherit; font-size:15px; background:#fff; box-sizing:border-box; }
.yvo-lqa-form textarea:focus { outline:none; border-color:var(--lqa-acc); box-shadow:0 0 0 3px rgba(0,105,92,.12); }
.yvo-lqa-send { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 20px; border:none; border-radius:12px; font-weight:800; font-size:15px; cursor:pointer; text-decoration:none; background:linear-gradient(135deg,#00b39c,#00695c); color:#fff; box-shadow:0 10px 22px -8px rgba(0,105,92,.55), inset 0 1px 0 rgba(255,255,255,.25); }
.yvo-lqa-send:hover { background:linear-gradient(135deg,#00c2a8,#00796b); }
.yvo-lqa-send:disabled { opacity:.6; cursor:default; }
.yvo-lqa-ghost { display:inline-flex; align-items:center; min-height:46px; padding:0 18px; border-radius:12px; font-weight:800; text-decoration:none; background:#fff; color:var(--lqa-acc); border:1px solid rgba(0,105,92,.2); }

.yvo-lqa-disc { font-size:12px; color:var(--lqa-muted); margin:12px 0 0; line-height:1.5; }
.yvo-lqa-disc a { color:var(--lqa-acc); font-weight:600; }
.yvo-lqa-handoff { align-self:flex-start; background:#fff7ea; border:1px solid #f4dfb5; color:#8a5a12; border-radius:12px; padding:10px 14px; font-size:13.5px; }
.yvo-lqa-handoff a { color:var(--lqa-acc); font-weight:700; }
.yvo-lqa-gate { text-align:center; padding:8px 0 4px; }
.yvo-lqa-gate p { margin:0 0 14px; color:#41544d; }
.yvo-lqa-gate-btns { display:flex; gap:10px; justify-content:center; }

/* ---- ЛК ---- */
.yvo-lqa-cab { max-width:820px; margin:0 auto; padding:22px 16px 60px; font-family:"Inter","Segoe UI",system-ui,sans-serif; color:var(--lqa-ink); }
.yvo-lqa-crumb { font-size:13px; color:var(--lqa-muted); margin-bottom:14px; }
.yvo-lqa-crumb a { color:var(--lqa-acc); text-decoration:none; }
.yvo-lqa-cab-hero h1 { font-size:clamp(26px,4vw,36px); font-weight:800; letter-spacing:-.01em; margin:10px 0 8px; }
.yvo-lqa-cab-lead { color:var(--lqa-muted); font-size:15.5px; max-width:60ch; margin:0 0 20px; }
.yvo-lqa-loading, .yvo-lqa-empty { color:var(--lqa-muted); padding:24px 0; }
.yvo-lqa-empty { background:#fff; border:1px dashed var(--lqa-line); border-radius:16px; padding:34px; text-align:center; }
.yvo-lqa-list { display:flex; flex-direction:column; gap:10px; }
.yvo-lqa-item { text-align:left; background:#fff; border:1px solid var(--lqa-line); border-radius:14px; padding:14px 16px; cursor:pointer; display:flex; flex-direction:column; gap:6px; box-shadow:0 10px 24px -18px rgba(9,40,34,.3); }
.yvo-lqa-item:hover { border-color:#c8e0d9; transform:translateY(-2px); }
.yvo-lqa-item__title { font-weight:700; font-size:15px; }
.yvo-lqa-item__meta { font-size:12.5px; color:var(--lqa-muted); }
.yvo-lqa-st { display:inline-block; font-size:11px; font-weight:800; border-radius:20px; padding:3px 9px; }
.yvo-lqa-st--ai { color:#3730a3; background:#eef2ff; }
.yvo-lqa-st--wait { color:#b45309; background:#fdefdd; }
.yvo-lqa-st--ok { color:var(--lqa-acc); background:#dcefe9; }
.yvo-lqa-back { background:none; border:none; color:var(--lqa-acc); font-weight:700; cursor:pointer; padding:0; margin-bottom:12px; font-size:14px; }
.yvo-lqa-thread-head { font-size:16px; margin-bottom:12px; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }

@media (max-width:520px){ .yvo-lqa { padding:20px 15px; border-radius:18px; } .yvo-lqa-form { flex-direction:column; align-items:stretch; } .yvo-lqa-send { width:100%; } }
