:root{font-family:'Segoe UI','Microsoft YaHei',sans-serif;color:#253044;background:#f6f7fa;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:7px;padding:10px 18px;background:#2467e8;color:white}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}.brand{font-size:23px;font-weight:700;color:#245fe0}.brand small{font-size:12px;color:#8993a4;font-weight:400;margin-left:10px}h1,h2,p{margin:0}h1{font-size:20px}h2{font-size:12px;color:#8a94a3;font-weight:500;margin:25px 12px 9px}p{line-height:1.7}.login{min-height:100vh;display:grid;place-items:center;padding:24px}.login form{width:min(410px,100%);padding:35px;background:white;border:1px solid #e3e7ee;border-radius:12px}.login h1{margin:30px 0 8px}.login p{color:#8490a0}.login label{display:block;margin-top:20px}.login select,.login input{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #dce1ea;border-radius:6px;background:#fff}.login button{width:100%;margin-top:20px}.login .hint{font-size:12px;margin-top:12px}#login-error{color:#b33636;margin-top:12px}main{display:grid;grid-template-columns:260px 1fr;height:100vh}aside{display:flex;flex-direction:column;background:#f5f7fb;border-right:1px solid #e3e7ee;padding:25px 14px;overflow:auto}aside .brand{padding:0 12px}.workspace-name{margin:24px 12px 0;font-weight:600}nav button{display:block;width:100%;text-align:left;background:transparent;color:#536075;padding:12px;border-radius:6px;margin:2px 0}nav button:hover{background:#eaf0fa}nav button.active{background:#e4edff;color:#1f5dd1;font-weight:600}nav small{display:block;color:#8a95a4;margin-top:4px;font-size:11px}.future{color:#98a1af;font-size:12px}.future p{margin:0 12px}footer{margin-top:auto;padding:30px 10px 0;font-size:12px}.text-button{background:transparent;color:#738097;padding:8px}.chat{display:flex;flex-direction:column;min-width:0;background:white;overflow:hidden}header{display:flex;align-items:center;justify-content:space-between;min-height:87px;padding:20px 32px;border-bottom:1px solid #e9edf3}header p{color:#8a94a2;font-size:12px;margin-top:5px}.mode{font-size:12px;color:#946f2d;background:#fff6dd;padding:6px 10px;border-radius:5px}.notice{background:#fafbfd;color:#8691a2;font-size:12px;padding:10px 32px;border-bottom:1px solid #edf0f5}#messages{flex:1;overflow:auto;padding:26px 32px}.empty{color:#909aaa;text-align:center;padding:15vh 20px;line-height:2}.message{max-width:760px;margin:0 0 24px}.message .byline{font-size:12px;color:#788495;margin-bottom:8px}.message .byline time{margin-left:12px;color:#a0a8b4}.bubble{display:inline-block;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;background:#f2f5fa;padding:12px 16px;border-radius:0 10px 10px}.message.mine .bubble{background:#eaf1ff}.message.bot .bubble{background:#f3f7f5;border-left:3px solid #8fbaab}#composer{margin:0 28px 24px;border:1px solid #dce3ee;border-radius:10px;padding:14px}#composer:focus-within{border-color:#83a8ef}#agent-label{color:#758195;font-size:12px}#agent-select{border:0;color:#346ac6;background:#f4f7fc;padding:5px 8px;margin-left:8px;border-radius:4px}textarea{width:100%;resize:vertical;border:0;outline:0;min-height:70px;max-height:220px;padding:12px 0;color:#283448}.compose-bottom{display:flex;justify-content:space-between;align-items:center}.compose-bottom span{font-size:12px;color:#929cab}.compose-bottom button{padding:8px 18px}:focus-visible{outline:2px solid #5988df;outline-offset:3px}@media(max-width:700px){main{grid-template-columns:185px 1fr}aside{padding:20px 8px}.brand{font-size:20px}.brand small{display:block;margin:4px 0}header{padding:16px}.notice{padding:8px 16px}#messages{padding:20px 16px}#composer{margin:0 12px 12px}.mode{display:none}}@media(max-width:430px){main{grid-template-columns:140px 1fr}footer{padding-left:3px}header h1{font-size:17px}}
body{overflow:hidden}main{height:100dvh}#member-count{font-size:11px;color:#7e8aa0;margin-left:5px}#back{display:none}.chat-heading{flex:1;min-width:0}.directory-button{margin:18px 8px 0;background:#e8eef9;color:#305d9d;text-align:left}dialog{border:1px solid #dce3ed;border-radius:12px;padding:22px;width:min(480px,calc(100vw - 28px));max-height:85dvh}dialog::backdrop{background:#192c494d}.directory-heading{display:flex;justify-content:space-between;align-items:center}.directory-heading h2{font-size:20px;color:#263348;margin:0}#contact-search{width:100%;margin:18px 0;padding:12px;border:1px solid #d8e1ef;border-radius:6px;font-size:16px}#contact-list{max-height:55dvh;overflow:auto}.contact{display:block;width:100%;text-align:left;color:#34415a;background:#f5f7fb;padding:12px;margin-bottom:6px}.contact small{display:block;color:#7c899b;margin-top:5px}#directory-error{color:#b33636}.login{height:100dvh;overflow:auto}#older{align-self:center;padding:8px}.empty{white-space:pre-line}footer span{display:block}aside{overscroll-behavior:contain}#messages{min-height:0;overscroll-behavior:contain}#composer{flex-shrink:0}.compose-bottom{gap:12px}.compose-bottom span{min-width:0}.compose-bottom button{flex-shrink:0}
@media(max-width:700px){main{display:block;height:100dvh}main aside{height:100%;width:100%;padding:22px 18px calc(18px + env(safe-area-inset-bottom));border:0}main .chat{display:none;height:100%}main.show-chat aside{display:none}main.show-chat .chat{display:flex}#back{display:block;margin-left:-6px;padding:12px 10px;color:#2863c8}header{min-height:74px;gap:12px;flex-shrink:0}header h1{font-size:18px}header p{font-size:11px}.notice{font-size:11px;flex-shrink:0}.brand{font-size:23px}.brand small{display:inline;margin-left:10px}nav button{padding:15px 12px;min-height:48px}.workspace-name{margin-top:20px}footer{padding-top:20px}.login form{padding:28px 24px}.login input,textarea,#agent-select{font-size:16px}#composer{padding:10px 12px;margin:0 10px calc(8px + env(safe-area-inset-bottom))}textarea{min-height:60px;max-height:120px;resize:none}.compose-bottom span{font-size:11px}.compose-bottom button{min-height:42px}#messages{padding:18px 16px}.bubble{max-width:100%;font-size:15px}.message{margin-bottom:21px}.future{margin-bottom:16px}}
/* Model choice stays in the composer on both desktop and phone. */
#model-label{display:inline-flex;align-items:center;gap:8px;margin:8px 0 0 12px;color:#758195;font-size:12px;max-width:100%}#model-select{max-width:240px;min-height:32px;border:1px solid #e0e6ef;border-radius:5px;background:#f7f9fc;color:#346ac6;padding:4px 7px}#model-notice{overflow-wrap:anywhere}@media(max-width:700px){#model-label{margin:8px 0;display:flex}#model-select{font-size:16px;max-width:calc(100% - 75px);min-height:38px}}
