/* Hỏi đáp nổi (B-116, KQ-20261030-002). Nút tròn góc dưới phải, nằm trên thanh tab ở điện thoại; khung là sheet ở <760px. */
/* Nút mở: tròn 56px màu chủ đạo, viền sáng mảnh + bóng mềm; máy tính thành viên thuốc có nhãn (Kiên 01/11: "làm lại cho đẹp"). */
.hn-fab{position:fixed;right:16px;bottom:calc(var(--tab) + 14px + env(safe-area-inset-bottom));z-index:35;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:56px;height:56px;padding:0;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:var(--accent);color:var(--accent-ink);font:600 14.5px/1 var(--f-ui);letter-spacing:.01em;cursor:pointer;
  box-shadow:0 1px 2px rgba(10,40,32,.18),0 8px 20px -6px rgba(10,60,48,.45),inset 0 1px 0 rgba(255,255,255,.14);transition:transform .18s ease,box-shadow .18s ease,opacity .2s,background-color .18s}
.hn-fab .ic{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.hn-fab-t{display:none}
.hn-fab:hover{transform:translateY(-2px);box-shadow:0 2px 4px rgba(10,40,32,.18),0 12px 26px -6px rgba(10,60,48,.5),inset 0 1px 0 rgba(255,255,255,.14)}
.hn-fab:active{transform:translateY(0) scale(.96)}
.hn-fab:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}
@media (min-width:1024px){
  .hn-fab{right:24px;bottom:24px;width:auto;height:52px;padding:0 20px 0 16px}
  .hn-fab .ic{width:22px;height:22px}
  .hn-fab-t{display:inline}
}
.hn-fab[aria-expanded="true"]{display:none}
/* Màn có thanh nút dính dưới (Hồ sơ năng lực): đẩy nút lên để không che nút Lưu. */
@media (max-width:1023px){body:has(#profile-view:not([hidden]) .pf-bar) .hn-fab{bottom:calc(var(--tab) + 92px + env(safe-area-inset-bottom))}}

.hn-panel{position:fixed;z-index:60;display:flex;flex-direction:column;background:var(--sheet);color:var(--ink);box-shadow:var(--shadow);border:1px solid var(--rule-2)}
.hn-panel[hidden]{display:none}
.hn-backdrop{position:fixed;inset:0;z-index:59;background:rgba(10,20,17,.4)}
.hn-backdrop[hidden]{display:none}
.hn-head{display:flex;align-items:flex-start;gap:8px;padding:12px 8px 10px 16px;border-bottom:1px solid var(--rule-2)}
.hn-ht{flex:1;min-width:0}
.hn-head h2{margin:0;font:600 16px/1.3 var(--f-ui)}
.hn-ctx{margin:2px 0 0;font-size:12.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hn-close{flex:none;width:44px;height:44px;margin:-6px 0}
.hn-log{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 16px;display:flex;flex-direction:column;gap:14px}
.hn-intro p{margin:0 0 10px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.hn-sug{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.hn-sug .chip{min-height:36px;height:auto;padding:6px 12px;font-size:13px;line-height:1.4;text-align:left;white-space:normal;max-width:100%}
.hn-turn{display:flex;flex-direction:column;gap:6px}
.hn-q{align-self:flex-end;max-width:88%;margin:0;padding:8px 12px;border-radius:14px 14px 4px 14px;background:var(--accent-soft);color:var(--ink);font-size:14.5px;line-height:1.5;overflow-wrap:anywhere}
.hn-a .hd-ans{margin:0}
.hn-a .hd-ans p{font-size:14.5px}
.hn-a .ask-wait{margin:0;font-size:14px}
.hn-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.hn-go{min-height:44px}
.hn-fb{display:flex;align-items:center;gap:4px;font-size:12.5px;color:var(--ink-3)}
.hn-fb>span:first-child{margin-right:4px}
.hn-vote{width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:var(--ink-3);display:grid;place-items:center;cursor:pointer}
.hn-vote:hover{background:var(--sheet-2);color:var(--accent)}
.hn-vote .ic{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.hn-form{display:flex;align-items:flex-end;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--rule-2)}
.hn-form textarea{flex:1;min-width:0;min-height:44px;max-height:120px;resize:none;border:1px solid var(--rule);border-radius:12px;padding:10px 12px;font:inherit;font-size:16px;line-height:1.4;background:var(--sheet);color:var(--ink)}
.hn-form textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}
.hn-send{flex:none;width:44px;height:44px;border:0;border-radius:12px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;cursor:pointer}
.hn-send[disabled]{opacity:.5;cursor:default}
.hn-send .ic{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

@media (max-width:759px){
  /* Sheet gần hết màn (chừa 12px trên): mép trên không cắt ngang ô tìm/tab của header (01/11: "header vỡ khi mở sheet"). */
  .hn-panel{left:0;right:0;bottom:0;top:max(12px,env(safe-area-inset-top));height:auto;border-radius:16px 16px 0 0;border-bottom:0}
}
@media (min-width:760px){
  .hn-panel{right:20px;bottom:calc(var(--tab) + 20px + env(safe-area-inset-bottom));width:400px;height:min(600px,calc(100vh - var(--tab) - 120px));border-radius:16px}
}
@media (min-width:1024px){
  /* Nút ở máy tính là viên thuốc ~130px: thanh Tiếp/Xong của Hồ sơ năng lực chừa lề phải. */
  body:has(#profile-view:not([hidden])) .pf-bar{margin-right:156px}
  .hn-panel{right:24px;bottom:24px;height:min(620px,calc(100vh - 140px))}
}
.hn-alts{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.hn-alts .chip{min-height:40px;height:auto;padding:6px 12px;text-align:left;white-space:normal}
