.fharu-chat{--accent:#143f63;--accent-dark:#0a2944;--accent-soft:#edf4fa;--ink:#172534;--muted:#607284;height:100vh;overflow:hidden;background:#fff;color:var(--ink);font-family:Slack-Lato,Slack-Fractions,appleLogo,system-ui,-apple-system,"Segoe UI","Yu Gothic UI",sans-serif}
.fharu-chat-head{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;padding:10px 22px;background:var(--accent-dark);color:#fff;border-bottom:1px solid #071f35;box-shadow:0 3px 14px rgba(10,41,68,.18)}
.fharu-chat-title,.fharu-chat-name-line,.fharu-chat-actions,.fharu-person,.fharu-chat-byline{display:flex;align-items:center}
.fharu-chat-title{gap:12px;min-width:0}
.fharu-chat-back{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;color:#fff;text-decoration:none;font-size:22px}
.fharu-chat-back:hover{background:rgba(255,255,255,.12)}
.fharu-chat-name-line{gap:8px}
.fharu-chat-name-line h1{overflow:hidden;margin:0;max-width:50vw;text-overflow:ellipsis;white-space:nowrap;font-size:17px}
.fharu-chat-name-line span{padding:2px 7px;border-radius:99px;background:rgba(255,255,255,.16);color:#fff;font-size:10px}
.fharu-chat-title p{margin:3px 0 0;color:#c8d9e7;font-size:11px}
.fharu-chat-avatar{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:7px;background:#fff;color:#364050;font-weight:800;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.fharu-chat-avatar.group{background:linear-gradient(145deg,#174f79,#2774a5);color:#fff;font-size:17px}
.fharu-chat-avatar.own,.fharu-person-avatar.own{background:#17658d;color:#fff}
.fharu-chat-actions{gap:8px}
.fharu-chat-actions>a,.fharu-chat-actions>button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:rgba(255,255,255,.1);color:#fff;text-decoration:none;font:600 11px/1 system-ui;white-space:nowrap;cursor:pointer}
.fharu-chat-actions>a:hover,.fharu-chat-actions>button:hover{background:rgba(255,255,255,.18)}
.fharu-chat-actions>button[aria-pressed="true"]{border-color:#fff;background:#fff;color:var(--accent)}
.fharu-chat-search{display:flex;align-items:center;gap:5px;width:min(250px,22vw);height:36px;padding:0 10px;border-radius:8px;background:#fff;color:#616061}
.fharu-chat-search input{width:100%;border:0;outline:0;background:transparent;color:#1d1c1d;font-size:12px}
.fharu-chat-body{display:grid;grid-template-columns:230px minmax(0,1fr) 370px;height:calc(100vh - 77px);min-height:0}
.fharu-chat-side{padding:18px 14px;border-right:1px solid #0e3453;background:var(--accent)}
.fharu-side-card{position:sticky;top:95px;padding:15px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(255,255,255,.08);color:#fff;box-shadow:none}
.fharu-side-card.compact{top:auto;margin-top:12px}
.fharu-side-label{display:block;margin-bottom:12px;color:#c8d9e7;font-size:9px;font-weight:800;letter-spacing:.12em}
.fharu-person{gap:9px;margin:9px 0}
.fharu-person-avatar{display:grid;place-items:center;width:31px;height:31px;border-radius:7px;background:rgba(255,255,255,.16);color:#fff;font-size:12px;font-weight:800}
.fharu-person>span:last-child{display:flex;min-width:0;flex-direction:column}
.fharu-person strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.fharu-person small,.fharu-side-card small{color:#c8d9e7;font-size:9px}
.fharu-side-card.compact>strong{display:block;font-size:20px;color:#fff}
.fharu-timeline{position:relative;display:flex;min-width:0;min-height:0;flex-direction:column;padding:18px 5vw 180px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:#fff}
.fharu-day{position:sticky;top:88px;z-index:6;align-self:center;margin:15px 0 9px;padding:5px 12px;border:1px solid #ddd;background:#fff;color:#616061;font-size:10px;box-shadow:0 1px 4px rgba(0,0,0,.04)}
.fharu-chat-message{display:flex;align-items:flex-start;gap:9px;width:100%;margin:5px 0}
.fharu-chat-message.outgoing{justify-content:flex-end}
.fharu-chat-message-stack{display:flex;max-width:min(72%,820px);flex-direction:column}
.fharu-chat-message.outgoing .fharu-chat-message-stack{align-items:flex-end}
.fharu-chat-byline{justify-content:space-between;gap:18px;width:100%;margin:0 2px 4px;color:#828c87;font-size:10px}
.fharu-chat-byline>span{display:flex;align-items:center;gap:12px}
.fharu-chat-byline strong{font-weight:600}
.fharu-reply-button{padding:2px 7px;border:0;border-radius:5px;background:transparent;color:#1264a3;font-size:10px;opacity:0;cursor:pointer}
.fharu-chat-message:hover .fharu-reply-button,.fharu-reply-button:focus{background:#edf4fa;opacity:1}
.fharu-chat-bubble{position:relative;max-width:100%;padding:10px 13px;border:1px solid #e7e7e7;border-radius:8px;background:#f8f8f8;box-shadow:none}
.fharu-chat-message.outgoing .fharu-chat-bubble{border-color:#d4e2ee;border-radius:8px;background:var(--accent-soft)}
.fharu-chat-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.65}
.wechat-inline-sticker{display:inline-block;width:28px;height:28px;margin:0 2px;vertical-align:middle;object-fit:contain}
.fharu-chat-media img,.fharu-chat-media video{display:block;width:auto;max-width:min(520px,100%);height:auto;max-height:620px;border-radius:5px;object-fit:contain}
.fharu-chat-media audio{display:block;width:min(380px,65vw)}
.fharu-image-button{display:block;padding:0;border:0;background:transparent;cursor:zoom-in}
.fharu-chat-file{display:flex;align-items:center;gap:12px;min-width:min(370px,60vw);max-width:470px;padding:13px;border-radius:6px;background:#fff;color:#23352f;text-decoration:none}
.fharu-file-icon{display:grid;place-items:center;width:47px;height:54px;border-radius:6px;background:#edf2ef;color:#163a77;font-size:11px;font-weight:900}
.fharu-chat-file>span:last-child{display:flex;min-width:0;flex-direction:column}
.fharu-chat-file strong{overflow-wrap:anywhere;font-size:11px}
.fharu-chat-file small{margin-top:4px;color:#84908a;font-size:9px}
.fharu-chat-system{align-self:center;margin:9px auto;color:#919894;text-align:center;font-size:10px}
.fharu-chat-system span{display:inline-block;padding:4px 10px;border-radius:4px;background:#f8f8f8}
.fharu-chat-missing{padding:10px;border:1px dashed #c98640;border-radius:6px;background:#fff8ef;color:#995d22;font-size:10px}
.fharu-chat-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:55vh;color:#77847e}
.fharu-jump-latest{position:fixed;right:398px;bottom:142px;z-index:15;padding:10px 15px;border:1px solid #c9d9e7;border-radius:99px;background:#fff;color:var(--accent);font-weight:800;box-shadow:0 8px 24px rgba(10,41,68,.16);cursor:pointer}
.fharu-jump-latest.has-new{border-color:#1264a3;background:#1264a3;color:#fff;box-shadow:0 8px 24px rgba(18,100,163,.28)}
.fharu-composer{position:fixed;right:370px;bottom:0;left:230px;z-index:17;display:block;width:auto;height:auto;min-height:0;box-sizing:border-box;padding:10px 5vw 8px;border-top:1px solid #d9e2ea;background:rgba(255,255,255,.98);box-shadow:0 -8px 22px rgba(10,41,68,.08)}
.fharu-composer.dragging{background:#e7f2fb;box-shadow:inset 0 0 0 2px #1264a3,0 -8px 22px rgba(10,41,68,.08)}
.fharu-compose-row{display:flex;align-items:flex-end;gap:9px}
.fharu-composer textarea{box-sizing:border-box;min-height:46px;max-height:160px;flex:1;padding:12px 14px;border:1px solid #aebdca;border-radius:9px;outline:0;background:#fff;color:#172534;font:13px/1.5 inherit;resize:vertical}
.fharu-composer textarea:focus{border-color:#1264a3;box-shadow:0 0 0 1px #1264a3}
.fharu-composer>small{display:block;margin:5px 54px 0;color:#71808d;font-size:9px}
.fharu-attach-button{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border:1px solid #b9c7d2;border-radius:50%;background:#fff;color:#143f63;font-size:24px;font-weight:400;cursor:pointer}
.fharu-attach-button:hover{background:#edf4fa}
.fharu-attach-button input{display:none}
.fharu-send-button{min-width:82px;height:44px;border:0;border-radius:8px;background:#143f63;color:#fff;font-weight:800;cursor:pointer}
.fharu-send-button:hover{background:#0a2944}
.fharu-send-button:disabled{background:#9aa8b4;cursor:wait}
.fharu-compose-quote{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 8px 53px;padding:8px 11px;border-left:3px solid #1264a3;border-radius:0 6px 6px 0;background:#edf4fa}
.fharu-compose-quote strong{font-size:11px;color:#0a2944}
.fharu-compose-quote p{overflow:hidden;margin:2px 0 0;max-width:70vw;color:#526474;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.fharu-compose-quote button{border:0;background:transparent;color:#526474;font-size:18px;cursor:pointer}
.fharu-compose-files{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px 53px}
.fharu-sticker-bar{display:flex;align-items:center;gap:4px;margin:0 0 7px 53px}
.fharu-sticker-bar button{display:grid;place-items:center;width:34px;height:34px;padding:3px;border:0;border-radius:7px;background:transparent;cursor:pointer}
.fharu-sticker-bar button:hover,.fharu-sticker-bar button:focus{background:#edf4fa;outline:0}
.fharu-sticker-bar button[aria-pressed="true"]{background:#d9eaf6;box-shadow:inset 0 0 0 2px #1264a3}
.fharu-sticker-bar img{display:block;width:27px;height:27px;object-fit:contain}
.fharu-file-chip{display:flex;align-items:center;gap:6px;max-width:260px;padding:6px 8px;border:1px solid #d5e0e9;border-radius:6px;background:#f7fafc;color:#34495b;font-size:10px}
.fharu-file-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fharu-file-chip button{border:0;background:transparent;color:#7d3f3f;cursor:pointer}
.fharu-sticker-chip img{width:26px;height:26px;object-fit:contain}
.fharu-send-status{padding:2px 6px;border-radius:99px;background:#e8eef3;color:#526474;font-style:normal;font-size:9px}
.fharu-send-status.sent{background:#e3eaf5;color:#183c79}
.fharu-send-status.failed,.fharu-send-status.needs_attention{background:#fff0ef;color:#a33a32}
.fharu-send-status.recall_queued,.fharu-send-status.recalling{background:#fff4d6;color:#8a5a00}
.fharu-send-status.recall_failed{background:#fff0ef;color:#a33a32}
.fharu-send-controls{display:flex;align-items:center;gap:5px}
.fharu-send-controls form{margin:0}
.fharu-cancel-send{padding:2px 7px;border:1px solid #d5a19d;border-radius:99px;background:#fff;color:#9b2c25;font-size:9px;cursor:pointer}
.fharu-cancel-send:hover{background:#fff0ef}
.fharu-quoted-message{margin-bottom:8px;padding:8px 10px;border-left:3px solid #1264a3;background:rgba(255,255,255,.55)}
.fharu-quoted-message strong,.fharu-quoted-message span{margin-right:8px;font-size:10px}
.fharu-quoted-message p{margin:4px 0 0;color:#526474;font-size:11px}
.fharu-lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:44px;background:rgba(10,15,13,.9)}
.fharu-lightbox[hidden]{display:none}
.fharu-lightbox img{max-width:95vw;max-height:90vh;object-fit:contain}
.fharu-lightbox button{position:absolute;top:15px;right:22px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#222;font-size:26px;cursor:pointer}
.fharu-ai{position:sticky;top:77px;align-self:start;min-width:0;height:calc(100vh - 77px);border-left:1px solid #d6e0e8;background:#f7f9fb}
.fharu-ai-head{position:relative;z-index:8;display:flex;align-items:center;justify-content:space-between;height:63px;padding:0 17px;border-bottom:1px solid #d6e0e8;background:#fff}
.fharu-ai-head span{display:block;margin-bottom:3px;color:#557083;font-size:8px;font-weight:900;letter-spacing:.18em}
.fharu-ai-head h2{margin:0;color:#102f49;font-size:15px}
.fharu-ai-head i{width:9px;height:9px;border-radius:50%;background:#2250a0;box-shadow:0 0 0 5px #dfe7f4}
.fharu-ai-scroll{box-sizing:border-box;height:calc(100vh - 174px);padding:12px;overflow:auto}
.fharu-ai-card{margin-bottom:11px;padding:13px;border:1px solid #d8e2ea;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(10,41,68,.04)}
.fharu-ai-card-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px}
.fharu-ai-card-title strong{color:#102f49;font-size:12px}.fharu-ai-card-title span{color:#708293;font-size:8px}
.fharu-ai-card>label{display:block;margin:10px 0 4px;color:#557083;font-size:8px;font-weight:900;letter-spacing:.1em}
.fharu-ai-card>p,.fharu-ai-reply{margin:0;color:#263b4c;font-size:11px;line-height:1.65;overflow-wrap:anywhere}
.fharu-ai-reply{padding:9px;border-left:3px solid #1f6fa0;border-radius:0 6px 6px 0;background:#edf4fa}
.fharu-ai-use,.fharu-ai-form button{width:100%;margin-top:9px;padding:9px 10px;border:0;border-radius:7px;background:#143f63;color:#fff;font-size:10px;font-weight:800;cursor:pointer}
.fharu-ai-use:hover,.fharu-ai-form button:hover{background:#0a2944}
.fharu-ai-form textarea{box-sizing:border-box;width:100%;min-height:70px;padding:9px;border:1px solid #b9c7d2;border-radius:7px;outline:0;background:#fff;color:#172534;font:11px/1.5 inherit;resize:vertical}
.fharu-ai-form textarea:focus{border-color:#1264a3;box-shadow:0 0 0 1px #1264a3}
.fharu-ai-status{display:flex;flex-direction:column;gap:2px;margin-bottom:11px;padding:10px 12px;border:1px solid #b8d9ee;border-radius:8px;background:#edf7fd;color:#164a6b}
.fharu-ai-status strong{font-size:10px}.fharu-ai-status span{font-size:8px}
.fharu-ai-empty{color:#71808d!important;font-size:10px!important}
.fharu-ai-chat-log{display:flex;max-height:260px;flex-direction:column;gap:7px;overflow:auto}
.fharu-ai-chat-log article{max-width:90%;padding:8px 9px;border-radius:8px;background:#edf2f6;color:#263b4c}
.fharu-ai-chat-log article.mine{align-self:flex-end;background:#e7f1f9}.fharu-ai-chat-log article.gpt{align-self:flex-start}
.fharu-ai-chat-log strong{display:block;margin-bottom:3px;color:#143f63;font-size:8px}.fharu-ai-chat-log p{margin:0;font-size:10px;line-height:1.5}
.fharu-ai-consult .fharu-ai-form{margin-top:10px}
.fharu-ai>footer{position:sticky;bottom:0;padding:8px 12px;border-top:1px solid #d6e0e8;background:#fff;color:#71808d;font-size:8px}
.fharu-chat [hidden]{display:none!important}
@media(max-width:1180px){.fharu-chat-body{grid-template-columns:190px minmax(0,1fr) 330px}.fharu-composer{left:190px;right:330px}.fharu-jump-latest{right:348px}.fharu-chat-side{padding-right:10px;padding-left:10px}}
@media(max-width:900px){.fharu-chat{height:auto;min-height:100vh;overflow:visible}.fharu-chat-head{align-items:flex-start;padding:10px 12px}
.fharu-chat-actions{flex-wrap:wrap;justify-content:flex-end}
.fharu-chat-search{order:3;width:100%}
.fharu-chat-body{grid-template-columns:1fr;height:auto;min-height:calc(100vh - 77px)}
.fharu-chat-side{display:none}
.fharu-ai{position:static;height:auto;border-top:1px solid #d6e0e8;border-left:0}.fharu-ai-head{position:static}.fharu-ai-scroll{height:auto;max-height:none}.fharu-ai>footer{position:static}
.fharu-timeline{padding:12px 14px 180px;overflow:visible}
.fharu-composer{right:0;left:0;padding-right:14px;padding-left:14px}
.fharu-jump-latest{right:18px}
.fharu-chat-message-stack{max-width:82%}
.fharu-chat-name-line h1{max-width:45vw;font-size:14px}
}
@media(max-width:560px){.fharu-chat-title p{display:none}
.fharu-chat-actions>a{display:none}
.fharu-chat-actions>button{padding:0 9px}
.fharu-chat-search{display:none}
.fharu-chat-message-stack{max-width:88%}
.fharu-chat-avatar.person,.fharu-chat-avatar.own{width:31px;height:31px}
.fharu-chat-media img,.fharu-chat-media video{max-width:100%}
.fharu-day{top:76px}
.fharu-lightbox{padding:20px}
.fharu-send-button{min-width:62px}
.fharu-composer>small{display:none}
.fharu-compose-quote,.fharu-compose-files,.fharu-sticker-bar{margin-left:0}
}


