:root{--bg:#06101d;--panel:#0b1827;--panel2:#0f2032;--line:#1c344b;--text:#e9f2fb;--muted:#8ea5bb;--teal:#22dbc8;--blue:#6577ff;--danger:#ff7188;--shadow:0 20px 60px rgba(0,0,0,.28)}*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--text)}button,input,textarea,select{font:inherit}.muted{color:var(--muted)}
/* Login */.login-body{background:var(--bg)}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.15fr) minmax(420px,.85fr)}.login-visual{position:relative;overflow:hidden;padding:48px 64px;background:radial-gradient(circle at 25% 25%,#174c69 0,transparent 33%),radial-gradient(circle at 80% 70%,#30347a 0,transparent 35%),linear-gradient(145deg,#081521,#0c1e35)}.brand-mark{position:relative;z-index:2;font-size:26px;font-weight:900;letter-spacing:1px}.brand-mark span{color:var(--teal)}.visual-content{position:relative;z-index:2;max-width:650px;margin-top:22vh}.eyebrow{font-size:12px;letter-spacing:2.2px;color:#64eadb;font-weight:700}.visual-content h1{font-size:58px;line-height:1.1;margin:22px 0}.visual-content p{font-size:18px;line-height:1.8;color:#a7bbcf;max-width:560px}.feature-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.feature-row span{padding:10px 15px;border:1px solid #5a7799;border-radius:99px;background:#ffffff09}.orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.55}.orb-a{width:360px;height:360px;border:1px solid #39d8c955;right:-100px;top:100px;box-shadow:inset 0 0 90px #20cabd22}.orb-b{width:150px;height:150px;border:1px solid #7a82ff77;left:55%;bottom:12%;box-shadow:0 0 80px #5f68ff44}.login-panel{display:grid;place-items:center;background:#f4f8fb;color:#142436;padding:40px}.login-card{width:min(440px,100%)}.ai-avatar{width:56px;height:56px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(145deg,#16cbbb,#6072ff);color:#fff;font-size:25px;box-shadow:0 12px 30px #31c8bb45}.login-card h2{font-size:30px;margin:24px 0 8px}.login-card form{margin-top:28px}.login-card label{display:block;font-size:13px;font-weight:700;margin:16px 0 7px}.login-card input{width:100%;padding:14px;border:1px solid #cfdae4;border-radius:12px;background:#fff;outline:none}.login-card input:focus{border-color:#23c9ba;box-shadow:0 0 0 4px #23c9ba18}.primary-btn{width:100%;border:0;margin-top:22px;padding:15px;border-radius:12px;background:linear-gradient(90deg,#0ebdac,#5369f4);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 12px 24px #3ac5b736}.primary-btn span{float:right}.demo-box{margin-top:24px;border:1px solid #d8e2ea;background:#edf4f8;padding:14px;border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:15px}.demo-box small{display:block;color:#718497;margin-top:4px}.demo-box code{white-space:nowrap;background:#fff;border:1px solid #d3dde6;padding:8px 10px;border-radius:8px;color:#245}.copyright{color:#91a0ae;text-align:center;font-size:12px;margin-top:40px}.alert{padding:12px 14px;border-radius:10px;margin:16px 0}.alert.error{background:#fff0f2;color:#a92f49;border:1px solid #f0bdc8}.mobile-brand{display:none}
/* Chat */.app-body{background:var(--bg);overflow:hidden}.app-shell{height:100vh;display:grid;grid-template-columns:270px minmax(480px,1fr) 330px}.sidebar{background:#081421;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.side-brand{height:78px;display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid #14283a}.brand-symbol{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#20d7c5,#5f70ff);display:grid;place-items:center;font-weight:900}.side-brand b{display:block;font-size:15px}.side-brand small{display:block;font-size:9px;letter-spacing:1.7px;color:#708aa1;margin-top:3px}.mobile-close{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:24px}.new-chat{margin:16px 14px;padding:12px;border-radius:11px;border:1px solid #2b5369;background:linear-gradient(100deg,#123b48,#1a2852);color:#bffcf4;font-weight:700;cursor:pointer}.side-nav{padding:0 12px}.side-nav a{display:block;color:#98aec2;text-decoration:none;padding:11px 13px;border-radius:10px;margin:3px 0}.side-nav a.active,.side-nav a:hover{background:#14283b;color:#fff}.side-section{padding:15px 13px 0;overflow:auto}.side-section label{display:block;color:#607b93;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;padding:0 8px 8px}.kb-filter,.history-item{width:100%;border:0;background:transparent;color:#9db1c4;text-align:left;border-radius:9px;padding:9px 10px;cursor:pointer;display:flex;gap:10px;align-items:center}.kb-filter:hover,.kb-filter.active,.history-item:hover{background:#122538;color:#e7f7ff}.history{flex:1;min-height:90px}.history-item{justify-content:space-between}.history-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item small{font-size:10px;color:#60778e;white-space:nowrap}.side-user{height:70px;border-top:1px solid var(--line);display:flex;align-items:center;padding:0 15px;gap:10px}.user-avatar{width:35px;height:35px;border-radius:11px;background:#153850;color:#58f0df;display:grid;place-items:center;font-weight:800}.side-user b,.side-user small{display:block}.side-user b{font-size:13px}.side-user small{font-size:10px;color:#698298;margin-top:2px}.side-user form{margin-left:auto}.side-user button{border:0;background:none;color:#8297aa;font-size:18px;cursor:pointer}.chat-main{display:flex;flex-direction:column;min-width:0;background:radial-gradient(circle at 50% 0,#10253b 0,transparent 34%),#0a1624}.chat-header{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 25px;gap:14px;background:#0a1725dd;backdrop-filter:blur(12px)}.chat-header h2{font-size:16px;margin:0 0 5px}.chat-header p{font-size:11px;color:#718ba2;margin:0}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#29ddaa;box-shadow:0 0 10px #29ddaa;margin-right:6px}.header-actions{margin-left:auto;display:flex;gap:9px;align-items:center}.model-pill{font-size:11px;padding:7px 10px;border:1px solid #25445d;border-radius:99px;color:#7eb6cc;background:#0b1e2d}.header-actions button,.menu-btn{border:1px solid #25445d;border-radius:9px;background:#0d2031;color:#9bb1c4;padding:7px 10px;cursor:pointer}.menu-btn{display:none}.chat-stage{flex:1;overflow:auto;padding:36px max(24px,6vw) 28px;scroll-behavior:smooth}.welcome{max-width:800px;margin:4vh auto 0;text-align:center}.welcome-icon{width:64px;height:64px;margin:0 auto 18px;border-radius:22px;display:grid;place-items:center;font-size:27px;background:linear-gradient(145deg,#1dd4c2,#5d70ff);box-shadow:0 18px 50px #2acdb847}.welcome h1{font-size:38px;margin:15px 0 13px}.welcome>p{max-width:650px;margin:auto;color:#91a8bc;line-height:1.8}.stat-pills{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:24px 0}.stat-pills span{font-size:12px;color:#90a8bc;padding:8px 12px;border:1px solid #203b52;border-radius:99px;background:#0a1b2a}.stat-pills b{color:#e8fbff}.suggestions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.suggestions button{padding:15px;text-align:left;border:1px solid #203c54;border-radius:13px;background:linear-gradient(145deg,#0d2031,#0b1928);color:#a9bdcf;cursor:pointer}.suggestions button:hover{border-color:#2bbdab;color:#eefeff;transform:translateY(-1px)}.messages{max-width:900px;margin:auto}.message-row{display:flex;gap:13px;margin:18px 0}.message-row.user{flex-direction:row-reverse}.message-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:linear-gradient(145deg,#18c7b7,#5366eb);display:grid;place-items:center;font-weight:800;font-size:12px}.message-row.user .message-avatar{background:#243d53}.message-bubble{max-width:min(760px,82%);border:1px solid #1d3850;background:#0d1d2d;border-radius:17px;padding:15px 17px;box-shadow:0 10px 30px #0002}.message-row.user .message-bubble{background:#153149;border-color:#23516c}.message-meta{display:flex;gap:9px;align-items:center;margin-bottom:9px}.message-meta b{font-size:12px;color:#75eee1}.message-meta span{font-size:10px;color:#607b91}.message-content{font-size:14px;line-height:1.9;color:#d5e3ef}.message-sources{font-size:10px;color:#7893aa;border-top:1px solid #1c3449;margin-top:11px;padding-top:9px}.citation{display:inline-block;padding:0 6px;margin:0 2px;border-radius:5px;background:#1c514d;color:#8ff4e8;font-size:11px}.typing{display:flex;gap:5px;padding:7px 0}.typing i{width:7px;height:7px;background:#4ed9cb;border-radius:50%;animation:bounce 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}.composer-wrap{padding:10px max(22px,6vw) 17px;background:linear-gradient(0deg,#091522 75%,transparent)}.composer{max-width:900px;margin:auto;display:flex;align-items:flex-end;border:1px solid #29465e;background:#0d1e2e;border-radius:16px;padding:9px;box-shadow:0 12px 40px #0004}.composer:focus-within{border-color:#2fc8b9;box-shadow:0 0 0 3px #2fc8b914,0 12px 40px #0004}.composer textarea{flex:1;resize:none;min-height:39px;max-height:160px;border:0;background:transparent;color:#e9f3fb;padding:9px;outline:none;line-height:1.5}.send-btn{width:39px;height:39px;border-radius:12px;border:0;background:linear-gradient(145deg,#16cbbb,#5d6ff6);color:#fff;cursor:pointer}.send-btn:disabled{opacity:.45}.composer-wrap>p{font-size:10px;color:#5e788e;text-align:center;margin:8px 0 0}.selected-kb{max-width:900px;margin:0 auto 7px;font-size:11px;color:#8fece2}.selected-kb button{border:0;background:none;color:#8fece2;cursor:pointer}.source-panel{background:#081421;border-left:1px solid var(--line);padding:18px;overflow:auto}.source-head{height:45px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #183047}.source-head b{font-size:13px}.source-head small{font-size:9px;letter-spacing:1.4px;color:#58748c}.scope-card{display:flex;gap:12px;padding:14px;margin:16px 0 22px;border:1px solid #24514d;border-radius:13px;background:linear-gradient(145deg,#102c2d,#0d202a)}.shield{width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:#1d615b;color:#7af2e4;display:grid;place-items:center}.scope-card b{font-size:12px}.scope-card p{font-size:10px;line-height:1.55;color:#76968f;margin:5px 0 0}.source-panel h3{font-size:12px;color:#8ba4b9;margin:0 0 12px}.source-list{display:grid;gap:10px}.empty-sources{border:1px dashed #234057;border-radius:12px;color:#607b91;font-size:11px;line-height:1.7;padding:17px}.empty-sources.blocked{border-color:#64414b;color:#d892a0;background:#2d1820}.source-item{display:flex;gap:10px;border:1px solid #19354b;background:#0b1b2a;border-radius:12px;padding:11px}.source-index{width:25px;height:25px;flex:0 0 25px;border-radius:8px;background:#174c49;color:#7af0e2;display:grid;place-items:center;font-size:11px}.source-item small,.source-item b{display:block}.source-item small{color:#4bbbac;font-size:9px}.source-item b{font-size:11px;margin:4px 0;color:#d6e5ef}.source-item p{font-size:9px;line-height:1.55;color:#6e899e;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.score{height:3px;background:#172d3f;border-radius:4px;margin-top:8px;overflow:hidden}.score span{display:block;height:100%;background:linear-gradient(90deg,#1ccbbb,#6875ff)}.privacy-note{margin-top:22px;border-top:1px solid #173047;padding-top:16px;color:#688197}.privacy-note b{font-size:11px}.privacy-note p{font-size:9px;line-height:1.6}
/* Admin */.admin-body{background:#eef3f7;color:#1b2b3a;min-height:100vh}.admin-layout{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.admin-side{background:#0a1725;color:#dbe9f5;padding:20px 14px;position:sticky;top:0;height:100vh}.admin-brand{padding:9px 12px 25px;font-weight:900}.admin-brand span{color:var(--teal)}.admin-side a{display:block;color:#88a0b5;text-decoration:none;padding:11px 12px;border-radius:9px;margin:3px 0}.admin-side a:hover,.admin-side a.active{background:#142b3e;color:#fff}.admin-side .back{margin-top:28px;border-top:1px solid #193247;padding-top:18px}.admin-main{padding:30px;min-width:0}.admin-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.admin-head h1{font-size:24px;margin:0}.admin-head p{margin:5px 0 0;color:#718395;font-size:13px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metric,.panel{background:#fff;border:1px solid #dce5ec;border-radius:15px;box-shadow:0 5px 20px #1a344a0a}.metric{padding:20px}.metric small{color:#7a8c9c}.metric b{display:block;font-size:28px;margin-top:10px}.panel{padding:20px;margin-top:17px}.panel h2{font-size:16px;margin:0 0 16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-field{margin-bottom:13px}.form-field.full{grid-column:1/-1}.form-field label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.form-field input,.form-field textarea,.form-field select{width:100%;padding:11px;border:1px solid #cedae3;border-radius:9px;background:#fff;outline:none}.form-field textarea{min-height:100px;resize:vertical}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#1dbbaa;box-shadow:0 0 0 3px #1dbbaa16}.btn{display:inline-block;border:0;border-radius:9px;padding:10px 14px;background:#173148;color:#fff;text-decoration:none;cursor:pointer}.btn.primary{background:linear-gradient(90deg,#11bdaa,#5569ec)}.btn.danger{background:#b9475b}.btn.light{background:#e8eff4;color:#264157}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:11px 9px;border-bottom:1px solid #e5ebf0;text-align:left;font-size:12px;vertical-align:top}.data-table th{color:#718395;font-size:11px}.tag{display:inline-block;padding:4px 7px;border-radius:99px;background:#e7f6f3;color:#168f82;font-size:10px}.admin-alert{padding:12px 14px;border-radius:10px;margin-bottom:15px}.admin-alert.success{background:#def5ee;color:#177963}.admin-alert.error{background:#ffe8ec;color:#a7354a}.inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.code-note{font-family:ui-monospace,monospace;font-size:11px;background:#edf2f6;padding:9px;border-radius:8px}.two-col{display:grid;grid-template-columns:1.2fr .8fr;gap:17px}
@media(max-width:1180px){.app-shell{grid-template-columns:250px 1fr}.source-panel{display:none}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-panel{padding:22px;min-height:100vh}.mobile-brand{display:block;position:absolute;top:24px;left:24px;font-weight:900}.app-shell{display:block}.sidebar{position:fixed;z-index:20;left:-290px;top:0;width:280px;height:100vh;transition:.25s;box-shadow:20px 0 60px #0008}.sidebar.open{left:0}.mobile-close,.menu-btn{display:block}.chat-header{padding:0 14px}.model-pill{display:none}.chat-stage{padding:22px 15px}.welcome{margin-top:2vh}.welcome h1{font-size:29px}.suggestions{grid-template-columns:1fr}.composer-wrap{padding:8px 12px 13px}.message-bubble{max-width:88%}.admin-layout{display:block}.admin-side{height:auto;position:relative}.admin-main{padding:18px}.cards,.form-grid,.two-col{grid-template-columns:1fr}.admin-side nav{display:flex;overflow:auto}.admin-side a{white-space:nowrap}.admin-side .back{margin:0;border:0;padding-top:11px}}

/* V1.1 viewport scrolling fix: keep the page frame fixed while the message area scrolls */
html,body.app-body{height:100%;min-height:0}
.app-shell{height:100dvh;min-height:0;overflow:hidden}
.chat-main{height:100%;min-height:0;overflow:hidden}
.chat-header{flex:0 0 78px;min-height:78px}
.chat-stage{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
.composer-wrap{flex:0 0 auto}
.source-panel{height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.chat-stage::-webkit-scrollbar,.source-panel::-webkit-scrollbar{width:8px}
.chat-stage::-webkit-scrollbar-track,.source-panel::-webkit-scrollbar-track{background:transparent}
.chat-stage::-webkit-scrollbar-thumb,.source-panel::-webkit-scrollbar-thumb{background:#24425a;border-radius:99px}
.chat-stage::-webkit-scrollbar-thumb:hover,.source-panel::-webkit-scrollbar-thumb:hover{background:#315b78}
@media(max-width:820px){.app-shell{height:100dvh;min-height:0;overflow:hidden}.chat-main{height:100dvh;min-height:0;overflow:hidden}.chat-stage{min-height:0}}

/* ZSH TEC AI V1.4 - cross-platform composer input and send fixes */
:root{--app-height:100dvh}
html,body.app-body{width:100%;height:100%;min-height:0;overscroll-behavior:none}
body.app-body{touch-action:manipulation;-webkit-text-size-adjust:100%}
.app-shell{height:var(--app-height,100dvh);max-height:var(--app-height,100dvh)}
.chat-main{height:100%;min-height:0;min-width:0;overflow:hidden}
.chat-stage{min-height:0;scroll-padding-bottom:18px}
.composer-wrap{position:relative;z-index:8;padding-bottom:calc(17px + env(safe-area-inset-bottom,0px))}
.composer{position:relative;z-index:2;margin-left:auto;margin-right:auto}
.composer textarea{min-width:0;width:100%;font-size:16px}
.send-btn{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;position:relative;z-index:4;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}
.send-btn span{display:block;line-height:1;transform:translateX(1px)}
.send-btn:active{transform:scale(.96)}
.send-btn.is-loading span{opacity:.15}
.send-btn.is-loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid #ffffff55;border-top-color:#fff;border-radius:50%;animation:zshSpin .75s linear infinite}
@keyframes zshSpin{to{transform:rotate(360deg)}}
.composer-wrap>p[data-state="error"]{color:#ff8295}
.composer-wrap>p[data-state="success"]{color:#62dfcf}
.composer-wrap>p[data-state="loading"]{color:#91a9ff}
.sidebar-backdrop{display:none;position:fixed;inset:0;z-index:19;border:0;background:#020812aa;opacity:0;transition:opacity .2s;touch-action:none}
.sidebar-backdrop.show{opacity:1}
button,.suggestions button,.kb-filter,.history-item{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

@media(max-width:820px){
  .app-shell{height:var(--app-height,100dvh);max-height:var(--app-height,100dvh);overflow:hidden}
  .chat-main{height:var(--app-height,100dvh);max-height:var(--app-height,100dvh)}
  .chat-header{flex:0 0 68px;min-height:68px;padding:0 12px;padding-top:env(safe-area-inset-top,0px)}
  .chat-head-copy{min-width:0;flex:1}
  .chat-header h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58vw}
  .chat-header p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:62vw}
  .menu-btn,.header-actions button{min-width:40px;min-height:40px;padding:8px}
  .chat-stage{padding:18px 12px 16px;scroll-padding-bottom:18px}
  .welcome{margin-top:0}
  .welcome h1{font-size:27px;line-height:1.25}
  .welcome>p{font-size:13px;line-height:1.75}
  .stat-pills{gap:7px}
  .stat-pills span{padding:8px 10px;font-size:10px}
  .suggestions{gap:8px}
  .suggestions button{min-height:46px;padding:12px 13px;text-align:left}
  .message-row{gap:8px;margin:14px 0}
  .message-avatar{width:30px;height:30px;flex-basis:30px;border-radius:9px}
  .message-bubble{max-width:calc(100% - 40px);padding:13px 14px;border-radius:15px}
  .message-content{font-size:14px;line-height:1.8;overflow-wrap:anywhere;word-break:break-word}
  .composer-wrap{flex:0 0 auto;padding:8px 10px calc(9px + env(safe-area-inset-bottom,0px));background:#091522}
  .composer{border-radius:15px;padding:7px;align-items:flex-end}
  .composer textarea{font-size:16px;line-height:1.45;min-height:44px;padding:10px 8px;max-height:128px}
  .send-btn{flex-basis:46px;width:46px;height:46px;min-width:46px;min-height:46px;border-radius:13px}
  .composer-wrap>p{margin:5px 0 0;font-size:9px;min-height:13px}
  .selected-kb{margin-bottom:5px;padding:0 3px}
  .sidebar{height:var(--app-height,100dvh);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
  .sidebar-backdrop:not([hidden]){display:block}
}

@media(max-width:390px){
  .chat-stage{padding-left:9px;padding-right:9px}
  .composer-wrap{padding-left:8px;padding-right:8px}
  .message-bubble{max-width:calc(100% - 35px)}
  .welcome h1{font-size:24px}
}

/* V1.4 manual composer input safeguards */
.composer,.composer textarea,.send-btn{pointer-events:auto}
.composer textarea{position:relative;z-index:3;cursor:text;touch-action:auto!important;user-select:text!important;-webkit-user-select:text!important;-webkit-touch-callout:default;opacity:1}
.composer textarea:disabled{opacity:.65;cursor:wait}
/* V1.4.1 answer typography and unified source footer */
.message-content p{margin:0 0 10px}
.message-content p:last-child{margin-bottom:0}
.message-content ol,.message-content ul{margin:8px 0 10px;padding-left:22px}
.message-content li{margin:5px 0;padding-left:2px}
.message-content strong{color:#f1fbff;font-weight:750}
.message-content h4{margin:4px 0 10px;font-size:14px;color:#effcff}
.message-content code{padding:2px 5px;border:1px solid #28465c;border-radius:5px;background:#091725;color:#9df5eb;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em}
.message-sources{line-height:1.6;color:#718ca3;white-space:normal;overflow-wrap:anywhere}
