:root{--bg:#f7f8fa;--paper:#fff;--ink:#233247;--muted:#6f8094;--line:#e2e8f0;--green:#2563a6;--pale:#edf4fc;--nav:#f5f8fc;font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit}input,select{outline:none}button,input,select{border-radius:7px}input:focus,select:focus,button:focus-visible{outline:2px solid #8ab4e6;outline-offset:2px}button{background:transparent;border:0;color:inherit}input{border:1px solid var(--line);background:white;padding:11px 12px;color:var(--ink)}.hidden{display:none!important}.muted,small{color:var(--muted)}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.8px;color:var(--muted)}h1,h2,p{margin:0}h2{font-size:16px;font-weight:650}.dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:#3b82c4;margin-right:8px;flex-shrink:0}.dot.off{background:#d39054}.primary{background:var(--green);color:white;padding:12px 16px;font-weight:600;display:flex;justify-content:space-between;gap:20px}.primary:hover{background:#1d4f86}.icon-button{font-size:22px;width:34px;height:34px;color:#6f8094}.icon-button:hover{background:var(--pale)}.text-button{font-size:12px;color:var(--green);padding:5px 8px;white-space:nowrap}.text-button:hover{background:var(--pale)}.auth{min-height:100svh;display:grid;grid-template-columns:44% 56%;background:white}.auth-intro{background:#17365a;color:#fff;padding:12vh 12%;position:relative;display:flex;flex-direction:column;justify-content:center}.brandmark{font-size:48px;color:#c7d9ef;margin-bottom:55px}.auth-intro .eyebrow{color:#a4bddb}.auth-intro h1{font-size:48px;font-weight:550;letter-spacing:-1px;margin:20px 0}.auth-intro p{line-height:1.9;font-size:17px;color:#c7d9ef}.auth-foot{position:absolute;bottom:45px;color:#c7d9ef;font-size:12px}.auth-form{display:flex;align-items:center;justify-content:center;padding:45px}.auth-form form{width:330px}.auth-form h2{font-size:28px;margin:16px 0 12px;letter-spacing:-.6px}.auth-form p{color:#6f8094;line-height:1.7;margin-bottom:30px}.auth-form label,dialog label{display:flex;flex-direction:column;gap:9px;font-size:12px;font-weight:600;margin:20px 0}.auth-form input{padding:13px}.auth-form .primary{width:100%;margin-top:24px}.auth-form small{display:block;text-align:center;margin-top:23px;font-size:11px}.auth-form .error{color:#b84338;margin:0;font-size:12px}.workspace{height:100svh;display:flex;overflow:hidden}.rail{width:188px;background:var(--nav);border-right:1px solid var(--line);padding:23px 12px 0;display:flex;flex-direction:column;flex-shrink:0}.rail-brand{font-size:31px;color:var(--green);text-decoration:none;width:45px;padding-left:10px}.rail-label{font-size:10px;letter-spacing:1px;color:#6f8094;padding:34px 13px 12px}.nav{display:flex;align-items:center;gap:10px;width:100%;padding:12px 12px;text-align:left;font-size:13px;margin:2px 0;color:#5e7188;transition:background .15s,color .15s}.nav>span{width:18px;font-size:18px;color:#6f8094}.nav b{margin-left:auto;font-size:10px;font-weight:500;color:#6f8094}.nav.active{background:#e5effb;color:#2563a6;font-weight:600}.nav.active>span{color:#2563a6}.nav:hover{background:#edf4fc}.rail-rule{height:1px;background:var(--line);margin:20px 12px}.rail-bottom{margin-top:auto;padding:20px 9px}.status-block{display:flex;align-items:center;font-size:11px;color:#5e7188}.rail-bottom>small{display:block;font-size:10px;margin:7px 0 28px}.logout{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:5px;width:100%;padding:18px 0 0;font-size:10px;color:#6f8094}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:89px;padding:19px 28px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:16px;background:white}.topbar h1{font-size:23px;letter-spacing:-.7px;margin-top:5px;font-weight:600}.global-search{margin-left:auto;display:flex;align-items:center;background:#f8fafc;border:1px solid var(--line);border-radius:7px;max-width:455px;width:48%;padding:0 10px;gap:8px}.global-search>span{font-size:24px;color:#6f8094}.global-search input{border:0;background:none;font-size:12px;min-width:0;flex:1;padding:11px 0}.global-search input:focus{outline:none}.global-search kbd{font-family:inherit;font-size:9px;border:1px solid #e2e8f0;color:#6f8094;padding:2px 4px;white-space:nowrap}.content{display:flex;flex:1;min-height:0}.conversations{width:272px;flex-shrink:0;background:#ffffff;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.section-title{display:flex;justify-content:space-between;align-items:center;min-height:64px;padding:20px}.section-title h2{font-size:13px}.section-title .muted{font-size:11px}.conversation-search{margin:0 16px 16px;background:white;font-size:11px;padding:9px 10px}.all-conversations{margin:0 10px 8px;padding:10px 11px;text-align:left;font-size:12px;display:flex;justify-content:space-between;color:#6f8094}.all-conversations.active{color:var(--green);background:var(--pale)}.conversation-list{overflow:auto;flex:1}.convo{display:flex;gap:11px;width:100%;text-align:left;padding:17px 17px;border-radius:0;border-left:3px solid transparent;transition:background .16s}.convo.active{background:#edf4fc;border-left-color:var(--green)}.convo:hover{background:#f5f8fc}.avatar{width:35px;height:35px;background:#eaf1fa;color:#5076a1;display:flex;align-items:center;justify-content:center;font-size:13px;border-radius:10px;flex-shrink:0}.avatar.private{background:#eaf1fa;color:#5076a1}.avatar.system{background:#eaf1fa;color:#5076a1}.convo-body{flex:1;min-width:0}.convo-name-row{display:flex;align-items:center;gap:8px;margin:1px 0 7px}.convo-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.convo-time{margin-left:auto;font-size:9px;color:#6f8094;white-space:nowrap}.convo-preview{font-size:11px;color:#6f8094;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.convo-count{font-size:9px;margin-top:7px;color:#6f8094}.list-footer{padding:14px 17px;border-top:1px solid var(--line);font-size:9px;color:#6f8094}.timeline{flex:1;min-width:0;display:flex;flex-direction:column;background:white;position:relative}.timeline-title{padding:24px 27px 18px;border-bottom:1px solid var(--line)}.heading-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.heading-row h2{font-size:18px;letter-spacing:-.3px}.heading-row p{font-size:11px;color:#6f8094;margin-top:8px}.filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px}.filters select,.filters input{font-size:10px;border:1px solid var(--line);padding:7px 8px;background:white;color:#5e7188;min-width:0;height:31px}.filters input{width:115px}.filters>span{font-size:10px;color:#6f8094}.filters .text-button{margin-left:auto}.message-scroll{flex:1;overflow:auto;padding:6px 27px 25px;scroll-behavior:auto}.day-divider{font-size:10px;color:#6f8094;display:flex;align-items:center;gap:15px;margin:22px 0 8px}.day-divider:after{content:'';height:1px;background:#edf1f6;flex:1}.message{padding:19px 0 19px;border-bottom:1px solid #edf1f6;display:flex;gap:12px;cursor:pointer;animation:arrive .18s ease-out}.message:hover .message-content{background:#f8fafc}.message .avatar{width:30px;height:30px;font-size:11px;border-radius:9px;background:#eaf1fa}.message-body{min-width:0;flex:1}.message-top{display:flex;gap:8px;align-items:center;line-height:18px}.sender{font-weight:600;font-size:12px}.message-top time{color:#6f8094;font-size:10px;margin-left:auto;white-space:nowrap}.tag{font-size:9px;color:#6f8094;background:#f3f6fa;padding:0 5px;border-radius:3px;white-space:nowrap}.self-tag{color:var(--green);font-size:9px}.from-convo{font-size:10px;color:#6f8094;margin-top:3px}.message-content{padding:9px 10px 9px 0;margin-top:5px;border-radius:5px;font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;transition:background .15s}.media-block{display:flex;gap:13px;align-items:center;border:1px solid #e2e8f0;border-radius:7px;padding:14px 17px;margin-top:11px;max-width:350px;background:#ffffff}.media-icon{font-size:24px;color:#5076a1}.media-block strong{font-size:12px;font-weight:550;display:block}.media-block small{font-size:10px;display:block;margin-top:5px}.message.active{background:#f8fafc}.timeline-footer{height:42px;border-top:1px solid var(--line);padding:0 26px;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#6f8094}.load-more{display:block;margin:24px auto 10px;font-size:12px;color:var(--green);padding:10px 25px;border:1px solid var(--line)}.empty{padding:75px 20px;text-align:center;color:#6f8094}.empty .empty-symbol{font-size:35px;color:#b3c5dd;margin-bottom:20px}.empty h3{font-size:14px;font-weight:500;color:#5e7188;margin-bottom:9px}.empty p{font-size:12px;line-height:1.8}.new-messages{position:absolute;top:155px;left:50%;transform:translateX(-50%);background:#2563a6;color:white;padding:9px 18px;z-index:3;box-shadow:0 3px 12px #16345416;font-size:11px;white-space:nowrap}.inspector{width:350px;flex-shrink:0;border-left:1px solid var(--line);background:#ffffff;overflow:auto;animation:slide .16s}.inspector .section-title{border-bottom:1px solid var(--line)}#detail-summary{padding:20px}.detail-row{margin-bottom:15px;font-size:11px;overflow-wrap:anywhere}.detail-row label{display:block;color:#6f8094;font-size:10px;margin-bottom:5px}.detail-label{padding:10px 18px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#5e7188}#raw-json{font:10px/1.8 ui-monospace,SFMono-Regular,monospace;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:0 18px 30px;color:#5e7188}.warning{background:#fff3e1;color:#886323;padding:8px 28px;font-size:12px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:12px 22px;background:#1d4f86;color:white;border-radius:8px;font-size:12px;z-index:20}.dialog-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:20px}dialog{border:1px solid var(--line);border-radius:12px;padding:25px;width:400px;color:var(--ink)}dialog::backdrop{background:#10263e50}dialog p{font-size:12px;color:#6f8094;line-height:1.7;margin:12px 0}dialog input{width:100%}.raw-event{font-family:ui-monospace,monospace;font-size:11px;color:#6f8094;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:8px}mark{background:#e4effe;color:inherit;border-radius:2px}.error-panel{padding:40px 20px;color:#a85547;font-size:13px;text-align:center}@keyframes arrive{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes slide{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}@media(min-width:1600px){.rail{width:210px}.conversations{width:305px}.message-scroll{padding-left:38px;padding-right:38px}}@media(max-width:1200px){.rail{width:158px}.conversations{width:235px}.topbar{padding:18px 22px}.inspector{position:absolute;right:0;top:89px;bottom:0;z-index:5;box-shadow:-8px 0 30px #193e6310}.filters{gap:5px}.timeline-title{padding:22px 20px 15px}.message-scroll{padding-left:20px;padding-right:20px}}@media(max-width:850px){.rail{width:68px;padding:20px 8px}.rail-label,.nav b,.rail-bottom small,.rail-bottom #live-state,.logout{display:none}.nav{font-size:0;justify-content:center;padding:12px 0}.nav>span{font-size:20px}.rail-brand{padding:0;text-align:center}.rail-rule{margin:20px 0}.rail-bottom{padding:20px 15px}.conversations{width:210px}.topbar{gap:8px;padding:15px}.topbar h1{font-size:20px}.global-search{width:auto;flex:1;max-width:360px}.global-search kbd{display:none}.filters input{width:103px}}@media(max-width:650px){.auth{grid-template-columns:1fr}.auth-intro{padding:35px}.auth-intro h1{font-size:31px}.brandmark,.auth-intro p,.auth-foot{display:none}.auth-form{padding:35px}.workspace{height:100dvh}.rail{width:54px}.conversations{width:155px}.convo{padding:13px 9px}.convo .avatar{display:none}.convo-time{display:none}.section-title{padding:15px 10px}.conversation-search{margin:0 8px 10px;width:calc(100% - 16px)}.topbar>div:first-child{display:none}.timeline-title{padding:16px 12px}.heading-row h2{font-size:15px}.filters{gap:4px}.filters input{display:none}.filters>span{display:none}.filters select{max-width:100px}.message-scroll{padding:4px 12px 20px}.message .avatar{display:none}.message-top{gap:4px;flex-wrap:wrap}.timeline-footer{padding:0 12px}.timeline-footer #storage-state{display:none}.inspector{width:calc(100% - 54px)}.from-convo{font-size:9px}.message-content{font-size:12px}.global-search input{font-size:11px}.all-conversations{font-size:11px;margin:0 5px 5px}.list-footer{font-size:9px;padding:10px}.new-messages{top:135px}.message-top time{font-size:9px}.tag{font-size:8px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.structured-fields{margin:8px 0 0;padding:10px 13px;border-left:2px solid #e2e8f0;background:#f8fafc;border-radius:0 5px 5px 0}.structured-field{display:grid;grid-template-columns:90px 1fr;gap:10px;font-size:11px;line-height:1.7;margin:4px 0;overflow-wrap:anywhere}.structured-field>span:first-child{color:#6f8094}.structured-field>span:last-child{color:#5e7188}.unknown-note{font-size:11px;color:#947844;line-height:1.8}

/* Conversation views use chronological chat bubbles; aggregate feed is unchanged. */
.chat-layout .message-scroll{background:#f3f3f3;padding-top:12px;padding-bottom:24px}
.chat-layout .day-divider{justify-content:center;margin:18px 0;color:#969696;font-size:11px}
.chat-layout .day-divider:after{display:none}
.chat-layout .message{border:0;padding:12px 0;gap:10px;align-items:flex-start;animation:none;background:transparent}
.chat-layout .message .avatar{display:flex;width:36px;height:36px;border-radius:6px;background:#e2e8f0;font-size:14px;margin-top:22px}
.chat-layout .message-body{flex:0 1 auto;max-width:min(76%,640px);min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.chat-layout .message-top{margin-bottom:5px;color:#888;gap:8px;flex-wrap:wrap}
.chat-layout .sender{font-size:11px;font-weight:400;color:#808080}
.chat-layout .message-top time{margin-left:0;font-size:10px;color:#a0a0a0}
.chat-layout .tag,.chat-layout .self-tag{display:none}
.chat-layout .chat-bubble{position:relative;border-radius:5px;background:white;padding:10px 13px;max-width:100%;box-shadow:0 1px 2px #00000006;border:1px solid #e7e7e7}
.chat-layout .chat-bubble:before{content:'';position:absolute;width:8px;height:8px;background:inherit;left:-5px;top:13px;transform:rotate(45deg);border-left:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7}
.chat-layout .message-content{margin:0;padding:0;font-size:14px;line-height:1.7;background:transparent!important}
.chat-layout .outgoing{flex-direction:row-reverse}
.chat-layout .outgoing .message-body{align-items:flex-end}
.chat-layout .outgoing .message-top{flex-direction:row-reverse}
.chat-layout .outgoing .chat-bubble{background:#dfedfc;border-color:#dfedfc}
.chat-layout .outgoing .chat-bubble:before{left:auto;right:-5px;border:0;border-right:1px solid #dfedfc;border-top:1px solid #dfedfc}
.chat-layout .outgoing .avatar{background:#c7dbf1}
.chat-layout .from-convo{margin:0 0 6px;font-size:10px}
.chat-layout .structured-fields{background:transparent;border:0;padding:4px 0 0;margin-top:6px}
.chat-layout .structured-field{grid-template-columns:76px 1fr}
.chat-layout .media-block{margin:8px 0 0;background:#ffffff80;max-width:100%;padding:10px 12px}
.chat-layout .chat-notice{justify-content:center;padding:10px 0}
.chat-layout .chat-notice .avatar,.chat-layout .chat-notice .message-top,.chat-layout .chat-notice .from-convo{display:none}
.chat-layout .chat-notice .message-body{max-width:85%;align-items:center}
.chat-layout .chat-notice .chat-bubble{background:transparent;border:0;box-shadow:none;padding:2px 10px;text-align:center}
.chat-layout .chat-notice .chat-bubble:before{display:none}
.chat-layout .chat-notice .message-content{font-size:11px;color:#999}
.chat-layout .chat-notice .structured-fields{font-size:10px;text-align:left}
.chat-layout .new-messages{top:auto;bottom:54px}
.chat-layout .load-more{margin:8px auto 15px;background:white}
@media(max-width:650px){.chat-layout .message-body{max-width:calc(100% - 42px)}.chat-layout .message-content{font-size:12px}.chat-layout .chat-bubble{padding:8px 10px}.chat-layout .message .avatar{width:28px;height:28px;font-size:11px}.chat-layout .message{gap:7px}}

.attachment{max-width:100%;margin:8px 0;min-width:140px}.image-open{padding:0;display:block;border-radius:7px;overflow:hidden;max-width:100%}.attachment-image{display:block;max-width:280px;max-height:320px;width:auto;height:auto;object-fit:contain}.attachment-audio{width:280px;max-width:100%;height:42px}.attachment-video{width:360px;max-width:100%;max-height:340px;background:#111;border-radius:6px}.attachment-info{display:flex;align-items:center;gap:12px;margin-top:7px;font-size:11px}.attachment-download{color:var(--green);text-decoration:none}.attachment-note{display:block;font-size:10px;margin-top:5px;max-width:300px;line-height:1.5}.media-dialog{width:max-content;max-width:94vw;max-height:94vh;padding:12px}.media-toolbar{display:flex;justify-content:space-between;gap:30px;margin-bottom:10px}.media-dialog img{display:block;max-width:88vw;max-height:80vh;object-fit:contain}.chat-layout .attachment{margin:0}.chat-layout .attachment-image{max-width:min(280px,100%)}@media(max-width:650px){.attachment-image{max-width:100%}}

.table-layout .message-scroll{padding:0 20px}.message-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.message-table th{position:sticky;top:0;background:#f3f6fa;z-index:1;text-align:left;font-weight:600;color:#5e7188}.message-table th,.message-table td{padding:11px 10px;border-bottom:1px solid #edf1f6;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-table th:nth-child(1){width:116px}.message-table th:nth-child(2){width:17%}.message-table th:nth-child(3){width:82px}.message-table th:nth-child(4){width:95px}.message-table th:last-child{width:48px}.message-table tbody tr:hover{background:#f5f8fc}.table-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-table .table-empty{text-align:center;padding:40px}.table-pagination{display:flex;align-items:center;gap:12px}.table-pagination select{padding:4px 6px;border:1px solid var(--line);border-radius:4px;background:white}.table-pagination button:disabled{opacity:.35;cursor:default}.table-layout #storage-state{display:none}.table-layout .timeline-footer{gap:16px;flex-wrap:wrap}.table-layout .timeline-title{padding-top:20px;padding-bottom:18px}.table-layout .filters{margin-top:15px}@media(max-width:1000px){.table-layout .message-scroll{padding:0 10px}.message-table{min-width:680px}.table-pagination{gap:7px}}

/* Compact conversation navigator and filter-first message lists. */
.conversations>.section-title{min-height:46px;padding:13px 16px}
.conversation-search{margin:0 12px 8px;padding:8px 10px}
.convo{padding:10px 12px;gap:9px;align-items:center}
.convo .avatar{width:30px;height:30px;border-radius:7px;font-size:12px}
.convo-name-row{margin:0 0 4px;gap:6px}
.convo-body{position:relative}
.convo-preview{padding-right:42px;line-height:16px}
.convo-count{position:absolute;right:0;bottom:0;margin:0;line-height:16px;font-size:9px}
.conversations .list-footer{padding:10px 14px}
.timeline-title.filters-only,.table-layout .timeline-title.filters-only{padding:12px 20px}
.timeline-title.filters-only .filters{margin-top:0}
.timeline-title.filters-only:has(.filters.hidden){display:none}

.thread-name-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.super-admin-control{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:#5e7188;cursor:pointer}.super-admin-control input{appearance:none;width:30px;height:17px;border:0;border-radius:12px;background:#cbd5e1;padding:2px;margin:0;cursor:pointer;transition:background .15s}.super-admin-control input:before{content:'';display:block;width:13px;height:13px;background:white;border-radius:50%;box-shadow:0 1px 2px #0002;transition:transform .15s}.super-admin-control input:checked{background:#2563a6}.super-admin-control input:checked:before{transform:translateX(13px)}.super-admin-control input:disabled{opacity:.5;cursor:wait}

.codex-panel{display:flex;flex-direction:column;flex:1;min-height:0;background:white}.codex-status{padding:14px 22px;font-size:12px;color:#5e7188;border-bottom:1px solid var(--line)}.codex-workspace{display:flex;flex:1;min-height:0}.codex-sidebar{width:250px;flex-shrink:0;overflow:auto;border-right:1px solid var(--line)}.codex-session{display:flex;flex-direction:column;gap:7px;width:100%;text-align:left;border-radius:0;padding:15px;border-bottom:1px solid var(--line);font-size:12px}.codex-session.active{background:var(--pale)}.codex-session small{font-size:10px}.codex-history{flex:1;min-width:0;display:flex;flex-direction:column}.codex-history>header{padding:12px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);gap:10px}#codex-turns{overflow:auto;flex:1;padding:18px 24px}.codex-turn{padding:0;border:0}#codex-turns{background:#f3f3f3}#codex-turns .message{cursor:default}#codex-turns .message-content{white-space:pre-wrap;overflow-wrap:anywhere}#codex-turns .codex-delivery{margin-top:5px;color:var(--muted);font-size:10px}#codex-turns .error-panel{max-width:100%;overflow-wrap:anywhere}@media(max-width:800px){.codex-sidebar{width:170px}#codex-turns{padding:12px}.codex-status{padding:10px}}

.settings-panel{flex:1;min-height:0;overflow:auto;padding:24px 32px}.settings-tab{background:none;border:0;border-bottom:2px solid #397aaf;padding:12px 4px;color:#286897;font:inherit}.settings-panel form{max-width:1100px;padding-top:24px}.settings-panel label{font-weight:600}.settings-panel p{font-size:13px;line-height:1.7}.settings-panel textarea{display:block;width:100%;min-height:360px;height:45vh;resize:vertical;border:1px solid #d5dfe8;border-radius:6px;padding:16px;font:14px/1.8 ui-monospace,monospace;color:#263645;background:#fff}.settings-panel textarea:focus{outline:2px solid #bad9f1}.settings-actions{display:flex;align-items:center;gap:18px;margin-top:18px;flex-wrap:wrap}.settings-actions .primary{width:auto;padding:10px 24px}.settings-actions [role=status]{font-size:13px;color:#52708a}

#thread-sub.private-identifiers{display:flex;gap:6px 22px;flex-wrap:wrap;margin:0;font-size:11px;line-height:1.6;color:var(--muted)}.private-identifier{overflow-wrap:anywhere;min-width:0}.private-identifier code{font:inherit;font-family:ui-monospace,monospace;color:#52667b;user-select:text}

.thread-name-row #thread-sub.private-identifiers{flex-direction:column;gap:2px;line-height:1.5}.thread-name-row>h2,.thread-name-row>.super-admin-control{flex-shrink:0}

.filters .global-search{flex:1 1 180px;min-width:160px;max-width:420px;width:auto;margin:0;padding:0 9px;height:31px}.filters .global-search input{width:100%;height:29px;padding:4px 0;border:0;background:transparent;font-size:11px}.filters .global-search>span{font-size:18px}.filters #refresh{width:31px;height:31px;padding:4px;flex-shrink:0}.filters #clear-filters{margin-left:auto}.filters .global-search kbd{font-size:9px}

/* 白驹 — quiet blue, precise surfaces. */
:root{--green:#315de4;--pale:#edf2ff;--nav:#f8f9fc;--ink:#202b40;--muted:#7c8799;--line:#e7ebf2}
body{color:var(--ink);-webkit-font-smoothing:antialiased}.rail{background:#f8f9fc;padding-top:25px}.rail-brand{display:flex;align-items:center;gap:11px;width:auto;padding:0 12px;font-size:21px;font-weight:650;letter-spacing:2px;color:#23324c}.rail-brand img{width:33px;height:33px}.nav{font-size:12px;border-radius:7px}.nav.active{background:#eaf0ff;color:#315de4}.nav.active>span{color:#315de4}.rail-label{padding-top:28px}.rail-bottom .status-block{margin-bottom:20px}.convo.active{background:#f0f4ff;border-left-color:#315de4}.chat-layout .outgoing .chat-bubble{background:#e7efff;border-color:#e7efff}.chat-layout .outgoing .chat-bubble:before{border-color:#e7efff}.chat-layout .message-scroll,#codex-turns{background:#f5f6f9}.primary{background:#315de4}.primary:hover{background:#244bc3}button,input,select,textarea{transition:border-color .16s,background .16s,box-shadow .16s}button:focus-visible,a:focus-visible{outline:2px solid #315de4;outline-offset:3px}
.auth{grid-template-columns:52% 48%;background:#fcfdff;min-height:100svh}.auth-art{position:relative;overflow:hidden;background:#edf2f8;display:flex;align-items:center;justify-content:center;min-height:100svh}.art-sign{position:absolute;top:46px;left:48px;z-index:1;font:12px/1.5 ui-sans-serif,sans-serif;letter-spacing:5px;color:#3f577a}.art-sign span{display:block;margin-top:9px;letter-spacing:6px;font-size:11px;color:#8799af}.horse-art{width:min(95%,680px);height:auto;animation:horse-enter 1.2s cubic-bezier(.2,.7,.2,1) both}.art-baseline{position:absolute;bottom:34px;left:48px;right:48px;border-top:1px solid #ced9e7;display:flex;justify-content:space-between;padding-top:17px;font-size:10px;letter-spacing:3px;color:#75869f}.auth-form{padding:48px;min-width:0;background:#fcfdff}.auth-form form{width:100%;max-width:340px;animation:login-enter .65s ease-out both}.login-brand{display:flex;align-items:center;gap:15px;margin-bottom:45px}.login-brand img{width:49px;height:49px}.login-brand h1{font-size:36px;letter-spacing:5px;font-weight:600;color:#22324c}.auth-form h2{font-size:15px;font-weight:500;letter-spacing:1px;margin:0 0 28px;color:#758097}.auth-form label{margin:21px 0 9px;display:block;font-size:12px;color:#3e4c63;font-weight:500}.auth-form input{width:100%;border:1px solid #e1e7f0;border-radius:8px;background:#fff;padding:14px 15px;height:48px;font-size:14px;box-shadow:0 2px 4px #14244902}.auth-form input:focus{outline:none;border-color:#7a9aef;box-shadow:0 0 0 3px #315de40b}.auth-form input::placeholder{color:#a1abbb;font-size:12px}.auth-form .primary{margin-top:29px;height:48px;border-radius:8px;justify-content:center;align-items:center;font-size:14px;font-weight:500;letter-spacing:3px;box-shadow:0 4px 9px #315de416;transition:background .2s,transform .2s}.auth-form .primary:hover{transform:translateY(-1px)}.auth-form .primary:active{transform:translateY(0)}.auth-form p:empty,.auth-form small:empty{display:none}.auth-form #auth-sub{font-size:12px;margin-bottom:18px}.auth-form .error:not(:empty){font-size:12px;margin:14px 0 0;line-height:1.6}.auth-form small{font-size:11px;color:#8a95a7;margin-top:18px}
@keyframes horse-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes login-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.auth{grid-template-columns:1fr}.auth-art{display:none}.auth-form{min-height:100svh;padding:40px 28px}.login-brand{margin-bottom:38px}.auth-form form{max-width:360px}}
@media(prefers-reduced-motion:reduce){.horse-art,.auth-form form{animation:none}.auth-form .primary{transition:none;transform:none}}

.settings-panel [role=tablist]{display:flex;gap:24px;flex-wrap:wrap}.settings-tab[aria-selected=false]{border-bottom-color:transparent;color:var(--muted)}

/* Keep built-in WeChat faces inline with text, independent of system emoji fonts. */
img.wechat-emoji{display:inline-block;width:1.45em;height:1.45em;max-width:none;object-fit:contain;vertical-align:-.3em;margin:0 .06em}
.convo-preview img.wechat-emoji{width:1.2em;height:1.2em;vertical-align:-.2em}

.mention-link{display:inline;padding:0;border:0;background:none;color:#2458ae;font:inherit;line-height:inherit;cursor:pointer;text-align:inherit;border-radius:2px}.mention-link:hover{text-decoration:underline}.mention-link:focus-visible{outline:2px solid #315de4;outline-offset:2px}
.mention-popover{position:fixed;inset:auto;margin:0;padding:14px 16px;border:1px solid #dce3ee;border-radius:10px;background:#fff;color:#26364c;box-shadow:0 6px 24px #26364c26;max-width:min(360px,calc(100vw - 16px));max-height:70vh;overflow:auto;font-size:13px}.mention-popover strong,.mention-popover small,.mention-popover code{display:block;overflow-wrap:anywhere}.mention-popover small{color:#758399;margin:8px 0 4px}.mention-popover code{user-select:text;margin-top:4px}

.attachment .attachment-image.attachment-sticker{max-width:min(100px,100%);max-height:100px;width:auto;height:auto;object-fit:contain}

/* Compact group and private chat messages. */
.chat-layout .message-scroll{padding:6px 20px 16px}
.chat-layout .message{padding:6px 0;gap:8px}
.chat-layout .message .avatar{width:30px;height:30px;font-size:12px;margin-top:20px}
.chat-layout .message-top{margin-bottom:3px;line-height:17px;gap:6px}
.chat-layout .chat-bubble{padding:7px 10px}
.chat-layout .chat-bubble:before{top:10px}
.chat-layout .message-content{line-height:1.55}
.chat-layout .day-divider{margin:12px 0 6px}
.chat-layout .timeline-title{padding:14px 20px 12px}
.chat-layout .filters{margin-top:12px}
.chat-layout .load-more{margin:6px auto 10px;padding:7px 18px}
.chat-layout .attachment-info{gap:8px;margin-top:4px}
.attachment:has(.attachment-sticker){min-width:0}
.attachment:has(.attachment-sticker) .attachment-info{flex-wrap:wrap;max-width:100px;gap:3px 8px}
@media(max-width:650px){.chat-layout .message-scroll{padding:4px 10px 12px}.chat-layout .message{gap:6px}.chat-layout .message .avatar{width:28px;height:28px}.chat-layout .message-body{max-width:calc(100% - 34px)}.chat-layout .chat-bubble{padding:6px 8px}.chat-layout .timeline-title{padding:10px 12px}}

.message{cursor:default}
.message:hover .message-content{background:transparent}
.message-detail{display:flex;align-items:center;justify-content:center;width:24px;height:22px;margin-top:2px;padding:3px;color:#98a2ae;border-radius:4px}
.message-detail:hover{color:#5e7188;background:#e8ecf2}
.quote-jump{display:block;max-width:100%;margin-top:7px;padding:6px 9px;border-left:2px solid #c4ccd7;border-radius:3px;background:#7180960a;color:#718096;text-align:left;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.quote-jump strong,.quote-jump span{display:block;white-space:pre-wrap}
.quote-jump strong{font-size:11px;font-weight:500;margin-bottom:2px}
.quote-jump:hover{background:#71809618;color:#4e627c}
.message.quote-target .chat-bubble{outline:2px solid #8ab4e6;outline-offset:3px}

.message-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:3px;max-width:100%}
.message-actions .message-detail{margin-top:0;flex-shrink:0}
.message-actions .attachment-info{margin:0;gap:8px;line-height:22px}
.message-actions .attachment-download{color:#7b8796;font-size:11px}
.message-actions .attachment-download:hover{color:#50647e;text-decoration:underline}
.chat-layout .chat-bubble.image-bubble{background:transparent;border:0;box-shadow:none;padding:0}
.chat-layout .chat-bubble.image-bubble:before{display:none}
.chat-layout .image-bubble .attachment{min-width:0}

.chat-layout .private-message .sender,.chat-layout .private-message .from-convo{display:none}

.channel-placeholder{display:flex;align-items:center;justify-content:center;width:180px;height:100px;max-width:100%;background:#e8edf3;color:#8b98a8;font-size:30px;border-radius:6px;margin:5px 0}.channel-media-label{display:block;margin-bottom:4px}

.channel-card{max-width:280px}.channel-cover{display:block;max-width:100%;max-height:240px;width:auto;height:auto;object-fit:contain;border-radius:5px;margin-bottom:8px}.channel-name{display:block;font-size:12px;margin-bottom:4px}.channel-card .channel-placeholder{font-size:12px}
/* Keep image pixels aligned with the sender edge even when intrinsic width is larger. */
.chat-layout .image-bubble{width:fit-content;max-width:min(280px,100%)}
.chat-layout .image-bubble:has(.attachment-sticker){max-width:min(100px,100%)}
.chat-layout .outgoing .image-bubble .attachment{display:flex;flex-direction:column;align-items:flex-end}
.chat-layout .outgoing .image-bubble .image-open{margin-left:auto}

.chat-layout .chat-bubble.voice-bubble{background:transparent;border:0;box-shadow:none;padding:0;width:260px;max-width:100%}
.chat-layout .chat-bubble.voice-bubble:before{display:none}
.chat-layout .voice-bubble .attachment{min-width:0}
.voice-bubble .attachment-audio{display:block;width:260px;max-width:100%;height:36px}

.attachment-download{display:inline-flex;align-items:center;justify-content:center;width:24px;height:22px;padding:3px;color:#98a2ae;border-radius:4px;flex-shrink:0}.attachment-download:hover{color:#5e7188;background:#e8ecf2}.attachment-download svg{display:block}

.message-link{color:#426b9e;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.message-link:hover{color:#244bc3}

.avatar{position:relative;overflow:hidden}.avatar>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.selection-copy{position:fixed;z-index:1000;padding:3px;border:1px solid #dbe1e9;border-radius:7px;background:#fff;box-shadow:0 3px 12px #28395120}
.selection-copy button{display:flex;align-items:center;gap:5px;border:0;border-radius:4px;background:transparent;padding:5px 9px;font:inherit;font-size:12px;color:#52647c;cursor:pointer}
.selection-copy button:hover{background:#edf2fa;color:#315de4}
.selection-copy button:focus-visible,.message-copy:focus-visible{outline:2px solid #315de4;outline-offset:2px}
.message-copy:disabled{opacity:.45;cursor:wait}

/* Dashboard keeps the inbox palette and gives attention lists the primary space. */
.dashboard{flex:1;min-height:0;overflow:auto;background:#f6f8fc;color:#25364c}
.dash-wrap{max-width:1320px;margin:0 auto;padding:20px 28px 26px}
.dash-header{display:flex;justify-content:space-between;gap:24px;align-items:center}
.dash-header h1{font-size:18px;line-height:1.4;margin:0;font-weight:600}
.dash-tools{display:flex;align-items:center;gap:12px;flex-shrink:0}.dash-tools time{font-size:12px;color:#78879a;font-variant-numeric:tabular-nums}
.dash-refresh{font-size:12px;padding:8px 13px;border:1px solid #d8e1ee;background:white;color:#436b9f;border-radius:6px}.dash-refresh:hover{background:#edf3ff}
.dash-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:16px 0;margin-bottom:16px;border-bottom:1px solid #dde5ef;gap:20px}.dash-metric{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-right:20px;border-right:1px solid #dde5ef}.dash-metric:last-child{border:0}.dash-metric h2{font-size:12px;font-weight:500;color:#6b7b91}.dash-metric>strong{font-size:28px;font-weight:550;line-height:1.25;font-variant-numeric:tabular-nums;letter-spacing:-1px}
.dash-attention{display:grid;grid-template-columns:1.05fr 1fr;gap:20px;align-items:start}.dash-panel{background:white;border:1px solid #e1e7f0;border-radius:10px;overflow:hidden}.dash-panel-head{padding:20px 22px 15px}.dash-panel-head h2{font-size:16px;font-weight:600;letter-spacing:-.2px}.dash-panel-head p{font-size:11px;line-height:1.7;color:#7b8798;margin-top:7px;max-width:55em}
.dash-list{padding:0 22px 9px}.dash-row{display:flex;align-items:center;gap:11px;text-decoration:none;padding:13px 0;border-top:1px solid #eef1f6}.dash-row:hover .dash-row-top strong{color:#315de4}.dash-avatar{position:relative;overflow:hidden;background:#edf3fb;color:#6984a7;border-radius:8px;flex-shrink:0;width:34px;height:34px;display:grid;place-items:center;font-size:13px}.dash-row-body{flex:1;min-width:0}.dash-row-top{display:flex;gap:10px;align-items:baseline}.dash-row-top strong{font-size:12px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-row-top time{font-size:10px;color:#8b96a6;white-space:nowrap;margin-left:auto}.dash-row-body p{font-size:12px;color:#758195;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;line-height:1.8;margin-top:3px}.dash-arrow{color:#8495ac;font-size:14px}.dash-empty{padding:24px 22px 32px;color:#8793a4;font-size:12px}
.dash-lower{display:grid;grid-template-columns:1.35fr 1fr;gap:20px;margin-top:20px;align-items:stretch}.dash-trend-total{padding:0 22px;display:flex;align-items:baseline;gap:8px}.dash-trend-total strong{font-size:28px;font-weight:550;font-variant-numeric:tabular-nums}.dash-trend-total span{font-size:11px;color:#8090a3}.dash-legend{display:flex;gap:17px;padding:10px 22px;font-size:11px;color:#7b8798}.dash-legend span:before{content:'';display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:2px}.dash-legend .private:before,.dash-bars .private{background:#456fd0}.dash-legend .groups:before,.dash-bars .groups{background:#9eb8e7}.dash-legend .official:before,.dash-bars .official{background:#e0e8f5}
.dash-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:15px;padding:5px 24px 20px;align-items:end}.dash-day{display:flex;flex-direction:column;align-items:center;min-width:0}.dash-bars{height:130px;display:flex;flex-direction:column;justify-content:flex-end;width:min(30px,100%);overflow:hidden}.dash-bar-value{font-size:10px;color:#7b8798;margin-bottom:7px;font-variant-numeric:tabular-nums}.dash-day-label{font-size:11px;color:#8090a3;border-top:1px solid #e6ecf4;width:100%;text-align:center;padding-top:9px;margin-top:1px}
.dash-person{display:flex;align-items:center;gap:12px;padding:11px 22px;text-decoration:none;border-top:1px solid #eef1f6}.dash-person:hover{background:#f8faff}.dash-rank{font-size:11px;color:#98a8bd;font-variant-numeric:tabular-nums}.dash-person>div{min-width:0;flex:1}.dash-person strong{display:block;font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-person small{display:block;font-size:10px;color:#8994a3;margin-top:4px}.dash-person-count{font-size:15px;color:#5578b5;font-variant-numeric:tabular-nums}
.dash-foot{font-size:11px;line-height:1.9;color:#8a95a5;margin-top:24px;max-width:850px}.dash-foot summary{font-weight:500;color:#65768b;cursor:pointer;width:fit-content}.dash-foot p{margin-top:4px}.dash-foot small{font-size:10px}.dash-loading,.dash-error{padding:30px;font-size:13px;color:#73839a}.dash-error p{margin-bottom:12px}
@media(max-width:1100px){.dash-wrap{padding:20px 22px}.dash-attention,.dash-lower{grid-template-columns:1fr}.dash-metrics{gap:14px}.dash-metric{padding-right:14px}.dash-metric>strong{font-size:26px}}
@media(max-width:650px){.dash-wrap{padding:16px}.dash-header{gap:8px}.dash-tools{gap:8px}.dash-tools time{font-size:10px}.dash-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.dash-metric:nth-child(2){border:0}.dash-panel-head{padding:17px}.dash-list{padding:0 15px 8px}.dash-row-top{flex-wrap:wrap;gap:3px}.dash-row-top time{margin-left:0;width:100%}.dash-chart{gap:8px;padding:5px 16px 20px}.dash-refresh{padding:7px 9px;white-space:nowrap}}
.dash-panel-head p,.dash-foot,.dash-row-body p{color:#69798e}
@media(max-width:650px){.dash-metric{padding-right:0;border:0}.dash-metric h2{font-size:11px}.workspace:has(.dashboard:not(.hidden)) .nav{font-size:0;gap:0;justify-content:center;padding:12px 0}.workspace:has(.dashboard:not(.hidden)) .nav>span{font-size:19px}.workspace:has(.dashboard:not(.hidden)) .nav b{display:none}}

.dash-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* Assistant: evidence-first, compact operational cards. */
.assistant-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.assistant-panel-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;font-size:15px;font-weight:600}.assistant-panel-head h2{font-size:15px}.assistant-item{padding:14px 20px;border-top:1px solid #eef1f6}.assistant-item-top{display:flex;align-items:center;gap:9px}.assistant-item .dash-avatar{width:28px;height:28px}.assistant-who{font-size:12px;color:#64748b;text-decoration:none}.assistant-state{margin-left:auto;font-size:11px;color:#746341}.assistant-title{display:block;border:0;background:none;text-align:left;color:#25364c;font-size:15px;line-height:1.6;margin:8px 0;cursor:pointer}.assistant-title:hover{color:#315de4}.assistant-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.assistant-button{border:1px solid #dce4ef;border-radius:5px;background:#fff;color:#496586;padding:5px 9px;font-size:12px;cursor:pointer}.assistant-button:hover{background:#f0f4fc}.assistant-button.primary{background:#315de4;color:#fff}.assistant-muted,.assistant-status{font-size:12px;color:#738097;line-height:1.6}.assistant-status{margin:14px 0 0}.assistant-shadow,.assistant-entry{background:#eef2fa;color:#5b6984;padding:12px 20px;font-size:12px;border-bottom:1px solid #dce4ef}.assistant-entry{display:flex;justify-content:space-between;align-items:center}.assistant-week{padding:8px 20px 20px;font-size:20px}.assistant-activity{display:block;width:100%;border:0;border-top:1px solid #eef1f6;text-align:left;background:white;padding:10px 20px;color:#64748b;font-size:12px}.assistant-wrap>.assistant-button{margin-top:20px}.assistant-dialog{position:fixed;inset:0;margin:auto;border:1px solid #dce4ef;border-radius:10px;width:min(640px,calc(100vw - 32px));max-height:85vh;overflow:auto;padding:20px;color:#25364c;box-shadow:0 12px 60px #25364c22;background:white}.assistant-dialog::backdrop{background:#25364c66}.assistant-dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.assistant-dialog h2{font-size:18px}.assistant-dialog h3{font-size:15px;margin:18px 0 10px}.assistant-dialog .assistant-item{padding:14px 0}.assistant-evidence{display:block;text-decoration:none;background:#f6f8fc;border-left:3px solid #aabbd6;margin:10px 0;padding:12px;color:#3c4e65}.assistant-evidence small{font-size:11px;color:#738097}.assistant-evidence p{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0}.assistant-error{color:#9d3838;padding:12px;font-size:12px}.assistant-suggestion{background:#f8f3e8;padding:12px;font-size:13px}.assistant-field{display:flex;flex-direction:column;gap:7px;margin:14px 0;font-size:13px}.assistant-field input,.assistant-field select{padding:8px;border:1px solid #dce4ef;border-radius:5px;background:white;color:#25364c}.assistant-setting{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:12px;font-size:13px}.assistant-setting span{flex:1;min-width:0;overflow-wrap:anywhere}@media(max-width:850px){.assistant-grid{grid-template-columns:1fr}.assistant-wrap .dash-header{align-items:flex-start;flex-direction:column}.assistant-panel-head{padding:14px 16px}.assistant-item{padding:12px 16px}.assistant-dialog{padding:16px}}

/* Payment cards use participant direction, not the old-client fallback text. */
.transfer-card{width:238px;max-width:100%;box-sizing:border-box;background:#f39438;color:#fff;border-radius:7px;overflow:hidden}
.transfer-main{display:flex;align-items:center;gap:12px;padding:16px 16px 6px}.transfer-icon{font-size:29px;line-height:38px;width:38px;text-align:center;border:1.5px solid #ffffffb3;border-radius:50%;flex-shrink:0}
.transfer-summary{display:flex;flex-direction:column;gap:4px;min-width:0}.transfer-amount{font-size:23px;font-weight:600;line-height:1.2;overflow-wrap:anywhere}.transfer-direction{font-size:12px}.transfer-status{font-size:11px;padding:0 16px 12px 66px;color:#fff}.transfer-footer{border-top:1px solid #ffffff40;padding:6px 14px;font-size:10px;color:#fff}
.chat-layout .chat-bubble.transfer-bubble{padding:0;background:transparent;border:0;box-shadow:none;width:fit-content;max-width:100%}.chat-layout .chat-bubble.transfer-bubble:before{display:none}.chat-layout .outgoing .transfer-bubble{margin-left:auto}
@media(max-width:600px){.transfer-icon{display:none}.transfer-main{padding:12px 10px 6px}.transfer-amount{font-size:19px;white-space:nowrap}.transfer-status{padding:0 10px 10px}.transfer-footer{padding:6px 10px}}

/* Conversation memory: compact list, readable summaries, original-message links. */
.memory-wrap{padding:24px 28px;max-width:1580px;margin:auto}.memory-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0;border-bottom:1px solid #dfe4ed;padding-bottom:18px}.memory-metrics>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.memory-metrics span,.memory-meta{font-size:12px;color:#7a8799}.memory-metrics strong{font-size:25px;color:#27364b}.memory-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start;margin-top:18px}.memory-list,.memory-detail{background:#fff;border:1px solid #e0e5ee;border-radius:12px;min-width:0}.memory-list{position:sticky;top:12px;max-height:calc(100vh - 230px);overflow:auto}.memory-filters{padding:12px;display:flex;gap:8px}.memory-filters input{width:100%;min-width:0}.memory-filters select{max-width:76px}.memory-conversation{display:flex;align-items:center;gap:10px;padding:12px;width:100%;text-align:left;border:0;border-top:1px solid #f0f2f6;background:transparent;color:inherit;cursor:pointer}.memory-conversation.active{background:#edf2ff;box-shadow:inset 3px 0 #315de4}.memory-conversation:hover{background:#f3f6fc}.memory-conversation .avatar{width:34px;height:34px;flex:none}.memory-conversation-body{display:grid;gap:5px;min-width:0}.memory-conversation-body strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.memory-conversation-body small{font-size:11px;color:#8490a2}.memory-detail{padding:20px 24px}.memory-detail-head,.memory-section-head,.memory-segment-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.memory-detail-head>a{font-size:17px;font-weight:650}.memory-detail h2{font-size:15px;margin:0 0 12px}.memory-current{padding:20px 0;border-bottom:1px solid #e7ebf1;margin-bottom:22px}.memory-prose{font-size:14px;line-height:1.8;color:#38465b;overflow-wrap:anywhere}.memory-prose p{margin:5px 0;white-space:pre-wrap}.memory-subhead{font-weight:650;margin-top:15px!important}.memory-segment{padding:18px 0;border-top:1px solid #edf0f5}.memory-segment-head strong{font-size:12px;color:#65748b}.memory-ref{font-size:11px;background:#edf2fc;color:#4565a0;border-radius:4px;padding:1px 5px;margin-left:4px;text-decoration:none;white-space:nowrap}.memory-chat-link{color:#4565a0;text-decoration:none;font-size:12px}.memory-chat-link:hover,.memory-ref:hover{text-decoration:underline}.memory-button{font:inherit;font-size:12px;background:#fff;border:1px solid #dae1ed;border-radius:7px;padding:7px 10px;color:#536884;cursor:pointer}.memory-button:hover{background:#f4f7fc}.memory-caution{font-size:12px;color:#9b6f33;background:#fff9ed;padding:7px 9px;border-radius:5px}.memory-empty{padding:24px;color:#8b96a7;font-size:13px}.memory-error{padding:12px;color:#a43f40;background:#fff1f0}.memory-pages{display:flex;justify-content:center;gap:12px;padding:10px}.memory-rules{font-size:12px;color:#7a8799;margin-top:20px;line-height:1.8}.memory-rules summary{cursor:pointer}
@media(max-width:900px){.memory-layout{grid-template-columns:220px minmax(0,1fr)}.memory-wrap{padding:18px}.memory-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.memory-layout{grid-template-columns:1fr}.memory-list{position:static;max-height:260px}.memory-detail{padding:16px}.memory-wrap{padding:12px}.memory-detail-head{align-items:flex-start}.memory-segment-head{flex-wrap:wrap}.memory-wrap .dash-header{flex-wrap:wrap;gap:12px}}
/* Progress describes conversation completion, not lifetime message coverage. */
.memory-progress-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0 10px}.memory-progress-card{padding:16px 18px;background:#fff;border:1px solid #e0e5ee;border-radius:10px;min-width:0}.memory-progress-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.memory-progress-head h2{font-size:14px;font-weight:600;margin:0}.memory-progress-state{font-size:11px;color:#697a92;background:#f1f4f8;border-radius:5px;padding:3px 7px;white-space:nowrap}.memory-progress-state.running{color:#315de4;background:#edf2ff}.memory-progress-state.complete,.memory-progress-state.caught_up{color:#28775e;background:#edf7f1}.memory-progress-state.failed,.memory-progress-state.offline{color:#a44637;background:#fff0ed}.memory-progress-state.budget,.memory-progress-state.blocked,.memory-progress-state.retry{color:#936723;background:#fff7e7}.memory-progress-count{display:flex;align-items:baseline;gap:10px;margin:10px 0}.memory-progress-count strong{font-size:27px;font-weight:600;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.memory-progress-count span{font-size:12px;color:#7a8799}.memory-progress-card progress{display:block;width:100%;height:5px;border:0;border-radius:5px;overflow:hidden;background:#eef1f6;color:#5276db;accent-color:#5276db}.memory-progress-card progress::-webkit-progress-bar{background:#eef1f6}.memory-progress-card progress::-webkit-progress-value{background:#5276db;border-radius:5px}.memory-progress-card progress::-moz-progress-bar{background:#5276db}.memory-progress-description,.memory-progress-next{font-size:12px;color:#718096;line-height:1.7;margin:8px 0 0}.memory-progress-next{margin-top:3px}.memory-progress-footer{display:flex;flex-wrap:wrap;gap:5px 18px;color:#8390a2;font-size:11px}.memory-progress-footer time{margin-left:auto}.memory-conversation-body small{overflow-wrap:anywhere}@media(max-width:700px){.memory-progress-grid{grid-template-columns:1fr;gap:10px;margin-top:14px}.memory-progress-card{padding:12px 14px}.memory-progress-count strong{font-size:24px}.memory-progress-footer time{margin-left:0}}

/* Task pilot: compact actionable rows, existing Baiju palette and typography. */
.todo-wrap{max-width:1360px}.todo-coverage{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;padding:16px 0 20px;border-bottom:1px solid var(--line,#e3e7ee);color:#627086;font-size:13px}.todo-coverage strong{color:#34465f}.todo-coverage small{width:100%}.todo-coverage progress{width:100%;height:5px;accent-color:#5677d6}.todo-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:20px 0}.todo-search{margin-left:auto;display:flex;gap:6px}.todo-search input{min-width:140px;max-width:250px;padding:8px 12px;border:1px solid #dce2ec;border-radius:7px;background:white}.todo-list{background:white;border:1px solid #e1e6ee;border-radius:10px;overflow:hidden}.todo-row{display:flex;justify-content:space-between;gap:24px;padding:20px 24px;border-bottom:1px solid #edf0f5}.todo-row:last-child{border:0}.todo-row-body{min-width:0;flex:1}.todo-title{font:inherit;font-weight:600;color:#273750;background:none;border:0;padding:0;text-align:left;cursor:pointer;line-height:1.65}.todo-title:hover{color:#315de4;text-decoration:underline}.todo-progress{font-size:14px;color:#667389;line-height:1.65;margin:7px 0;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.todo-meta{color:#8590a1;font-size:12px}.todo-row-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:12px;flex-shrink:0}.todo-state{font-size:12px;padding:4px 9px;border-radius:5px;background:#edf2fb;color:#4e6896}.todo-state.done{background:#edf6ef;color:#4b7455}.todo-state.review{background:#fff5e6;color:#906d35}.todo-state.cancelled{background:#f2f3f5;color:#818898}.todo-error{color:#9b533c;font-size:13px}.todo-dialog{width:min(800px,calc(100vw - 32px));max-height:88vh;overflow:auto}.todo-detail-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.todo-detail-head h2{font-size:18px;margin:0}.todo-detail-title{font-size:21px;line-height:1.6}.todo-detail-actions{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:20px;border-bottom:1px solid #e5e9ef}.todo-detail-actions select{border:1px solid #dbe1ec;border-radius:6px;background:white;padding:6px;color:#4a5d79}.todo-detail-section{margin-top:24px}.todo-detail-section h4{font-size:14px;margin:0 0 10px;color:#68778c}.todo-detail-section p{white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere;font-size:14px}.todo-source{display:block;text-decoration:none;padding:12px 14px;margin:10px 0;background:#f7f9fc;border-left:2px solid #cbd7ef;border-radius:4px;color:#35485f}.todo-source:hover{background:#eff3fa}.todo-source small{color:#79899f;font-size:12px}.todo-source p{margin:4px 0 0;max-height:180px;overflow:auto}.todo-history{margin-top:25px;color:#6d7d93;font-size:13px}.todo-history summary{cursor:pointer}.todo-history p{display:grid;gap:6px;line-height:1.7}.todo-history strong{font-weight:500}.todo-pagination{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.todo-dialog textarea{font:inherit;resize:vertical;border:1px solid #dce2ec;border-radius:6px;padding:10px;line-height:1.7}
@media(max-width:720px){.todo-row{padding:15px;gap:12px}.todo-search{width:100%;margin-left:0}.todo-search input{flex:1;max-width:none}.todo-row-side .assistant-button{font-size:12px;padding:5px}.todo-row-side{max-width:85px}.todo-filters{padding:14px 0}.todo-detail-title{font-size:18px}}

/* Task conversations use the same sidebar/detail hierarchy as chats. */
#todos-page{overflow:hidden;min-width:0}.todo-layout{display:grid;grid-template-columns:280px minmax(0,1fr);height:100%;min-height:0}.todo-sidebar{background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.todo-sidebar-head{padding:20px 16px 12px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.todo-sidebar-head h2{font-size:16px}.todo-convo-search{display:flex;gap:6px;width:100%}.todo-convo-search input{width:100%;min-width:0;font-size:13px;padding:9px 10px}.todo-convo-search button{flex:none}.todo-conversations{overflow:auto;flex:1;min-height:0}.todo-conversation{display:flex;align-items:center;gap:10px;width:100%;padding:15px 16px;text-align:left;border-radius:0;min-height:76px}.todo-conversation:hover{background:#f6f8fc}.todo-conversation.active{background:#eef2ff;box-shadow:inset 3px 0 var(--green)}.todo-conversation .avatar{width:36px;height:36px;position:relative;flex:none;overflow:hidden}.todo-conversation .avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.todo-conversation-body{display:grid;gap:6px;min-width:0;flex:1}.todo-conversation-body strong{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-conversation-body small{font-size:11px;line-height:1.5}.todo-unfinished{background:#e34e50;color:white;font-size:11px;font-weight:600;line-height:18px;min-width:18px;padding:0 5px;border-radius:20px;text-align:center;flex:none;font-variant-numeric:tabular-nums}.todo-convo-pages{padding:12px;display:flex;gap:10px;justify-content:center}.todo-main{overflow:auto;min-height:0;min-width:0}.todo-main-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 24px;background:white;border-bottom:1px solid var(--line)}.todo-main-head h1{font-size:18px;line-height:1.5;overflow-wrap:anywhere}.todo-main-head .dash-tools{flex-shrink:0}.todo-main-body{padding:0 24px 24px}.todo-main .todo-coverage{padding:14px 0;font-size:12px;gap:6px 14px}.todo-main .todo-filters{padding:16px 0;gap:6px}.todo-main .todo-row{padding:17px 20px}.todo-rollout-progress{font-size:12px;color:var(--muted);padding:10px 24px;background:#edf2fc}.todo-main .todo-filters .assistant-button{font-size:12px}.todo-main .todo-search{flex:1;justify-content:flex-end}.todo-main .todo-search input{font-size:12px;min-width:140px;width:180px}
@media(max-width:1100px){.todo-layout{grid-template-columns:235px minmax(0,1fr)}.todo-main-head,.todo-main-body{padding-left:18px;padding-right:18px}.todo-main-head{flex-wrap:wrap}.todo-conversation{padding:13px 12px;gap:8px}.todo-conversation .avatar{width:32px;height:32px}}
@media(max-width:700px){#todos-page{overflow:auto}.todo-layout{height:auto;min-height:100%;grid-template-columns:1fr}.todo-sidebar{border-right:0;border-bottom:1px solid var(--line)}.todo-sidebar-head{padding:14px}.todo-conversations{max-height:210px}.todo-conversation{min-height:64px}.todo-main{overflow:visible}.todo-main-head{padding:16px 14px}.todo-main-head h1{font-size:16px}.todo-main-body{padding:0 12px 16px}.todo-main .todo-row{padding:14px}.todo-main .todo-search input{width:auto;flex:1}.todo-main .todo-search{width:100%}.todo-rollout-progress{padding:10px 14px}}

/* Full-card details, with direct status changes kept separate from navigation. */
.todo-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;cursor:pointer}.todo-row:hover{background:#fafbfe}.todo-row-side{justify-content:flex-start}.todo-quick-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;cursor:default}.todo-quick-state{font-size:12px;line-height:1.5;padding:5px 10px;background:#fff;border:1px solid #dfe5ee;border-radius:6px;color:#68798f}.todo-quick-state:hover:not(:disabled){color:#315de4;border-color:#9fb4f0;background:#f3f6ff}.todo-quick-state.current{background:#edf2ff;border-color:#dce5ff;color:#315de4}.todo-quick-state:disabled{cursor:default;opacity:1}.todo-row[aria-busy=true] .todo-quick-state{opacity:.55;cursor:wait}@media(max-width:720px){.todo-quick-state{padding:5px 8px}.todo-quick-actions{gap:6px}}

.todo-badges{display:flex;gap:4px;align-items:center;flex:none}.todo-unfinished.review{background:#b97716}.todo-unfinished.waiting{background:#e5ebf2;color:#62758c}

/* Meeting import follows the existing conversation surface and native dialogs. */
.meeting-dialog{width:min(760px,calc(100vw - 32px));max-height:88dvh;overflow:auto;border:1px solid var(--border,#dce1df);border-radius:14px;padding:24px;color:inherit;background:var(--surface,#fff);box-shadow:0 18px 65px #0003}
.meeting-dialog::backdrop{background:#17211d66}.meeting-head,.meeting-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.meeting-head h2{margin:0;font-size:20px}.meeting-actions{justify-content:flex-end;margin-top:16px}.meeting-field{display:flex;flex-direction:column;gap:7px;margin:14px 0;font-size:13px;font-weight:600}.meeting-field input,.meeting-field textarea,.meeting-field select{width:100%;box-sizing:border-box;font:inherit;padding:9px;border:1px solid #cbd3cf;border-radius:7px;background:#fff;color:#26352e}.meeting-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.meeting-preview{white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto;padding:14px;background:#f5f7f5;border:1px solid #e0e6e2;border-radius:8px;font:13px/1.8 system-ui,sans-serif}.meeting-hint{font-size:13px;line-height:1.7;color:#4b6355}.meeting-error{color:#a42b27;font-size:13px}.meeting-dialog details{margin-top:18px}.meeting-dialog button:disabled{opacity:.5;cursor:wait}@media(max-width:600px){.meeting-dialog{padding:16px}.meeting-grid{grid-template-columns:1fr;gap:0}}

.thread-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}

.todo-coverage-status{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.todo-coverage-status>button{flex-shrink:0}
.todo-coverage-status>small{width:auto}
.todo-blocked-details{width:100%}.todo-blocked-details summary{cursor:pointer;color:#526b96}.todo-blocked-details .todo-source{margin:7px 0;padding:8px 12px}.todo-blocked-details .todo-source p{margin:3px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}

.message-table th:last-child{width:128px}
.message-table td:last-child>button{display:inline-flex;vertical-align:middle;margin:0 2px}

.audio-transcript{margin-top:8px;max-width:640px;font-size:13px;color:var(--muted,#64748b)}.audio-transcript summary{cursor:pointer}.audio-transcript .message-content{margin-top:8px;white-space:pre-wrap}.audio-transcript small{display:block;margin-top:6px}

.voice-playback.playing{color:#315de4;background:#edf1ff}

.shared-history{min-width:0;width:100%}.shared-history-notice{white-space:pre-line}.shared-history-actions{text-align:center;margin:8px 0 20px}.shared-history-actions .text-button{font-size:12px;color:var(--muted,#8892a0)}

.todo-main-head h1{flex:0 1 auto}.todo-head-info{flex:1;min-width:220px}.todo-main-head .todo-coverage{padding:0;border:0;margin:0}.todo-head-info .todo-coverage-status{gap:12px}.todo-tracking-switch[aria-checked="true"]{color:#315de4;background:#eef2ff;border-color:#dbe3ff}.todo-tracking-switch[aria-checked="false"]{color:var(--muted)}
@media(max-width:1100px){.todo-head-info{order:3;flex-basis:100%}.todo-main-head .dash-tools{margin-left:auto}}

.todo-copy-prompt{margin-left:12px;padding:7px 12px;border:1px solid #b8a6df;border-radius:6px;background:#f3edff;color:#654099;font-size:12px;font-weight:600}.todo-copy-prompt:hover{background:#e9ddff;border-color:#9678c5}.todo-copy-prompt:focus-visible{outline:2px solid #7651ac;outline-offset:3px}.todo-copy-prompt:disabled{opacity:.55;cursor:wait}.handoff-prompt{width:100%;min-height:340px;font:inherit;line-height:1.7;padding:12px;resize:vertical}

.todo-title .todo-id{display:inline-block;margin-right:10px;color:#c03645;background:#fff0f1;border-radius:5px;padding:1px 7px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}

/* Global business memory follows the existing quiet workspace layout. */
.global-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px;background:white;border-bottom:1px solid #e1e5ec}.global-header h1{font-size:22px;margin:0 0 8px}.global-actions{display:flex;gap:8px}.global-coverage{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:22px 28px 12px;color:#627084}.global-coverage strong{color:#25354b;font-size:22px}.global-coverage progress{width:180px;accent-color:#315de4}.global-notice,.global-error{margin:12px 28px;color:#6f7a8a;font-size:13px;line-height:1.7}.global-error{color:#b33140}.global-search{display:flex;gap:8px;margin:18px 28px}.global-search input{border:1px solid #dce2eb;border-radius:7px;padding:10px 12px;min-width:260px}.global-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;margin:20px 28px}.global-businesses{display:flex;flex-direction:column;gap:8px;align-self:start}.global-business{display:flex;flex-direction:column;gap:8px;text-align:left;width:100%;padding:16px!important;white-space:normal!important}.global-business.selected{border-color:#315de4;background:#eef2ff}.global-business small{color:#778497}.global-business>span{font-size:12px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#69778a}.global-detail{background:white;border:1px solid #e2e6ee;border-radius:12px;padding:24px;min-width:0}.global-business-head{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.global-business-head h2{margin:0;font-size:21px}.global-tag{display:inline-block;background:#f1f4fa;color:#61708a;border-radius:5px;padding:4px 8px;font-size:12px}.global-overview{line-height:1.8;white-space:pre-wrap;color:#465368}.global-section{margin-top:26px}.global-section h3{font-size:16px;border-bottom:1px solid #e5e9f0;padding-bottom:10px}.global-knowledge{padding:4px 0 16px;border-bottom:1px solid #f0f2f5;line-height:1.8;overflow-wrap:anywhere}.global-knowledge>p{white-space:pre-wrap;margin:8px 0}.global-sources{font-size:13px;color:#69778a}.global-sources summary,.global-maintenance summary{cursor:pointer}.global-source{border-left:2px solid #dce3ef;padding:10px 14px;margin:12px 0;background:#fafbfd;white-space:pre-wrap}.global-source .memory-ref{margin-right:10px}.global-maintenance{margin-top:28px;border-top:1px solid #e5e9f0;padding-top:18px}.global-maintenance label{display:block;margin:14px 0;font-size:14px}.global-maintenance textarea{display:block;width:100%;margin-top:10px;border:1px solid #dce2eb;border-radius:6px;padding:10px;font:inherit}.global-maintenance button{margin-right:8px}@media(max-width:900px){.global-layout{grid-template-columns:1fr;margin:12px}.global-header{align-items:flex-start;flex-direction:column}.global-businesses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 知识经验：紧凑的进度栏，下方两区独立滚动。 */
#global-memory-page{display:flex;flex-direction:column;overflow:hidden;min-height:0}
.global-top{position:relative;z-index:2;flex:none;background:#fff;border-bottom:1px solid #e1e5ec}
.global-header{padding:14px 28px 10px;border:0;gap:12px}.global-heading{display:flex;align-items:center;gap:12px;min-width:0}.global-header h1{margin:0;font-size:20px;white-space:nowrap}.global-business-count{font-size:12px;color:#536a88;background:#f0f4fb;border-radius:5px;padding:4px 8px;white-space:nowrap}
.global-actions{align-items:center;flex-wrap:wrap;justify-content:flex-end}.global-actions .memory-button{white-space:nowrap}.global-guide{position:relative;font-size:12px;color:#62748b}.global-guide summary{list-style:none;cursor:pointer;padding:7px 4px;white-space:nowrap}.global-guide summary::-webkit-details-marker{display:none}.global-guide summary:hover{color:#315de4}.global-guide p{position:absolute;top:calc(100% + 6px);right:0;width:min(330px,calc(100vw - 50px));padding:14px 16px;background:#fff;border:1px solid #dfe5ef;border-radius:8px;box-shadow:0 10px 30px #2332471c;color:#5f6d80;line-height:1.7;z-index:5}
.global-coverage{position:relative;display:flex;gap:6px 24px;align-items:center;flex-wrap:wrap;margin:0;padding:0 28px 14px;font-size:12px;color:#69788c}.global-coverage span{white-space:nowrap}.global-incomplete{color:#986e35}.global-pending{color:#a44e3f}.global-coverage progress{position:absolute;left:28px;bottom:0;width:calc(100% - 56px);height:3px;accent-color:#315de4}.global-top>.global-error{margin:8px 28px}
.global-layout{flex:1;min-height:0;grid-template-columns:280px minmax(0,1fr);margin:14px 28px 16px}
.global-sidebar{display:flex;flex-direction:column;min-height:0;min-width:0}.global-search{display:flex;flex:none;width:100%;max-width:none;margin:0 0 10px;padding:0;gap:6px;background:transparent;border:0}.global-search input{flex:1;width:0;min-width:0;padding:8px 10px}.global-search .memory-button{flex:none}
.global-businesses,.global-detail{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.global-businesses{align-self:stretch;display:flex;flex-direction:column;padding-right:4px}
@media(max-width:900px){.global-header{align-items:center;flex-direction:row}.global-layout{grid-template-columns:220px minmax(0,1fr);margin:10px 14px}.global-businesses{display:flex;flex-direction:column}.global-coverage{padding-left:14px;padding-right:14px}.global-coverage progress{left:14px;width:calc(100% - 28px)}}
@media(max-width:650px){.global-header{padding:12px 14px 8px;align-items:flex-start;flex-wrap:wrap;gap:8px}.global-actions{width:100%;justify-content:flex-start;gap:6px}.global-coverage{gap:5px 14px}.global-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(110px,32%) minmax(0,1fr);gap:8px;margin:8px}.global-detail{padding:16px}.global-business{padding:10px!important}}

.forward-card{display:flex;flex-direction:column;gap:12px;text-align:left;border:0;background:transparent;color:inherit;cursor:pointer;max-width:440px;width:100%;padding:0}.forward-card span{white-space:pre-line;color:#7b8492;font-size:13px;line-height:1.6}.forward-card small{border-top:1px solid #e6e9ef;padding-top:8px;color:#7b8492}.forward-dialog{width:min(720px,90vw);max-height:85dvh;overflow:hidden;border:1px solid #e0e5ed;border-radius:12px;padding:24px;color:#293648}.forward-dialog[open]{display:flex;flex-direction:column}.forward-dialog>.text-button{align-self:flex-start}.forward-records{min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:12px}.forward-dialog::backdrop{background:#17223366}.forward-record{padding:16px 0;border-bottom:1px solid #e6e9ef}.forward-record small{color:#788391}.forward-record .message-content{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px}
.forward-asset{display:block;margin-top:10px;width:max-content;max-width:100%}.forward-asset img{display:block;max-width:min(100%,460px);max-height:420px;border-radius:8px;object-fit:contain}.forward-file{display:inline-block;margin-top:10px;color:#315dba;overflow-wrap:anywhere}

/* Batch selection stays separate from opening an existing business. */
.global-business-row{display:flex;gap:10px;align-items:flex-start;min-width:0}
.global-business-row>.global-business{flex:1;min-width:0;width:100%}
.global-business-row>input{flex:none;width:18px;height:18px;margin:20px 0 0 2px;accent-color:var(--primary,#3559db)}
.global-actions select{max-width:min(500px,100%);padding:8px;border:1px solid #dce2ec;border-radius:7px;background:white;color:inherit}
.global-merge-feedback:empty{display:none}
.global-merge-feedback{font-size:13px;color:#397454}
.global-merge-selection{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px;background:#f2f5ff;border-radius:8px}
.global-merge-selection>.memory-meta{flex:1;min-width:180px}
.global-merge-selection textarea{flex-basis:100%;width:100%;border:1px solid #cbd4e4;border-radius:6px;padding:8px;resize:vertical;font:inherit}
.global-merge-preview{padding:0;background:white}
.global-merge-preview>.memory-button{margin:8px 8px 0 0}
/* Original-message products: preserve prose and keep sources subordinate. */
.product-prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;color:var(--text,#263449)}
.global-maintenance textarea{display:block;width:100%;box-sizing:border-box;margin:12px 0;padding:12px;border:1px solid #dce2ed;border-radius:8px;font:inherit}
.global-merge-selection input{padding:8px;border:1px solid #dce2ed;border-radius:8px}

.product-conversation-avatar{float:left;width:36px;height:36px;border-radius:8px;margin-right:10px;object-fit:cover}

/* Conversation navigation stays compact; business knowledge cards keep their layout. */
.global-business.product-conversation{display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:auto auto;gap:2px 10px;align-items:center;min-height:64px;padding:10px 12px!important;border-radius:8px}
.product-conversation>.product-conversation-avatar{grid-column:1;grid-row:1 / 3;float:none;margin:0;width:36px;height:36px;border-radius:7px}
.product-conversation>strong{grid-column:2;grid-row:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}
.product-conversation>small{grid-column:2;grid-row:2;line-height:1.4;font-size:12px}
.product-conversation>.product-avatar-fallback{display:grid;place-items:center;background:#eaf0f8;color:#647c99;font-size:16px;font-weight:500}
#memory-page .global-businesses{gap:5px}

/* Shared alignment and density for the two original-message product pages. */
.product-page{--product-inset:20px;display:flex;flex-direction:column;overflow:hidden}
.product-page .global-header{padding:16px var(--product-inset) 12px}
.product-page .global-coverage{padding:0 var(--product-inset) 12px}
.product-page .global-coverage progress{left:var(--product-inset);width:calc(100% - 2 * var(--product-inset))}
.product-page .global-top>.memory-meta{margin:8px var(--product-inset);line-height:1.5}
.product-page .global-top>.memory-meta:last-child{margin-bottom:12px}
.product-page .global-layout{margin:16px var(--product-inset);gap:16px}
.product-page .global-businesses{gap:5px;padding-right:0;scrollbar-gutter:auto}
.product-page .global-business{min-height:64px;padding:10px 12px!important;gap:4px;border-radius:8px;justify-content:center}
.product-page .product-conversation{gap:2px 10px}
.product-page .global-detail{padding:20px}
.product-page .memory-detail-head{padding-bottom:16px}
.product-page .memory-detail-head h2{margin:0;font-size:18px}
.product-page .memory-segment h3{margin:0 0 12px}
.product-page .global-maintenance{margin-top:18px;padding-top:14px}
@media(max-width:900px){.product-page{--product-inset:16px}}
@media(max-width:650px){.product-page{--product-inset:12px}.product-page .global-layout{margin-top:12px;gap:12px}.product-page .global-detail{padding:16px}}
.todo-budget-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:10px 24px;background:#fff;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.todo-budget-bar .assistant-button{font-size:12px;flex:none}@media(max-width:700px){.todo-budget-bar{padding:10px 14px}}

/* Compact admin authorization flow, shared by all processing pages. */
.model-login-dialog{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:24px;border:1px solid #dce1ec;border-radius:12px;color:#26364c;background:#fff}
.model-login-dialog::backdrop{background:#17233b66}
.model-login-heading,.model-login-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.model-login-heading h2{margin:0;font-size:21px}.model-login-dialog p{line-height:1.6}
.model-login-actions{justify-content:flex-start;margin-top:20px}.model-login-code{display:inline-block;font-size:26px;letter-spacing:2px;font-weight:700;padding:8px 12px;background:#f2f5fb;user-select:all;margin-right:8px}
.model-login-details a{display:inline-block;text-decoration:none}.model-login-dialog .muted{font-size:13px}

.work-overview{padding:28px 32px;max-width:1480px;margin:auto;color:#26364c}.work-overview-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.work-overview h1{font-size:24px;margin:0 0 8px}.work-overview-head p{margin:0;font-size:13px}.work-overview-tools{display:flex;gap:8px;flex-wrap:wrap}.work-overview a.assistant-button{text-decoration:none}.work-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.work-metric{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border:1px solid #dce4ef;border-radius:8px}.work-metric span{font-size:14px;color:#687b92}.work-metric strong{font-size:28px;font-variant-numeric:tabular-nums}.work-processing{font-size:13px;color:#738097;margin:16px 0 24px;line-height:1.6}.work-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.work-panel{background:#fff;border:1px solid #dce4ef;border-radius:10px;overflow:hidden;min-width:0}.work-panel h2{font-size:16px;margin:0;padding:18px 20px;border-bottom:1px solid #eef1f6}.work-todo-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;text-align:left;border:0;border-bottom:1px solid #f0f2f6;background:#fff;color:inherit;cursor:pointer}.work-todo-row:last-child{border:0}.work-todo-row:hover{background:#f5f7fd}.work-todo-content{min-width:0}.work-todo-heading{display:flex;gap:10px;align-items:baseline}.work-todo-heading strong{font-size:14px;line-height:1.5;overflow-wrap:anywhere}.work-todo-id{color:#b6384c;font-size:13px;font-weight:600;flex-shrink:0}.work-todo-content small{display:block;color:#8490a2;font-size:12px;margin-top:5px}.work-todo-state{font-size:12px;color:#5a6b83;white-space:nowrap}.work-finished{grid-column:1/-1}.work-empty{font-size:13px;color:#8390a0;padding:18px 20px;margin:0}.work-return{margin:20px 32px 0}.work-load-error{margin:24px;color:#a13939}@media(max-width:900px){.work-overview{padding:20px}.work-overview-head{align-items:flex-start;flex-direction:column}.work-metrics{grid-template-columns:repeat(2,1fr);gap:10px}.work-overview-grid{grid-template-columns:1fr}.work-metric{padding:12px}.work-todo-row{padding:12px 16px}.work-todo-heading{gap:7px}}

.download-panel{margin-bottom:24px}.download-help,.download-total{margin:12px 20px;font-size:13px;line-height:1.7;color:#66758a}.download-total{color:#8b601f}.download-conversation{border-top:1px solid #eef1f6}.download-conversation summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;cursor:pointer;list-style:revert}.download-conversation summary strong{font-size:14px;overflow-wrap:anywhere}.download-conversation summary:before{content:'›';color:#728098}.download-conversation[open] summary:before{content:'⌄'}.download-conversation summary strong{flex:1}.download-count{font-size:12px;color:#687b92;flex-shrink:0}.download-item{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 20px;padding:12px 0;border-top:1px solid #f0f2f6}.download-info{min-width:0}.download-info strong{font-size:13px;overflow-wrap:anywhere}.download-info small{display:block;margin-top:6px;font-size:12px;color:#738097}.download-action{display:flex;align-items:center;gap:12px;flex-shrink:0}.download-deadline{font-size:12px;color:#8b601f;font-variant-numeric:tabular-nums}.download-pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px 20px;font-size:12px}.download-panel summary:focus-visible{outline:2px solid #315de4;outline-offset:-3px}@media(max-width:650px){.download-item{align-items:flex-start;flex-direction:column;gap:10px}.download-action{width:100%;justify-content:space-between}.download-conversation summary{gap:8px;padding:14px 16px}.download-count{max-width:105px;text-align:right}.download-help,.download-total{margin:12px 16px}}

.dash-statistics>.download-panel{margin:20px 0}.download-panel a.assistant-button{text-decoration:none}

.message-gateway-dialog { width: min(640px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow: auto; }
.message-gateway-dialog h3 { margin: 20px 0 8px; font-size: 15px; }
.message-gateway-dialog .dialog-actions { justify-content: flex-start; flex-wrap: wrap; }
.gateway-key-form { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gateway-key-form input { flex: 1; min-width: 130px; }
.gateway-pairing img { display: block; margin-top: 12px; background: white; }
.gateway-key-result code { display: block; overflow-wrap: anywhere; margin-bottom: 8px; }
.gateway-list { padding: 0; margin: 8px 0; list-style: none; }
.gateway-list li { display: flex; flex-wrap: wrap; gap: 6px 12px; justify-content: space-between; padding: 8px 0; border-bottom: 1px solid var(--line, #e4e9f2); overflow-wrap: anywhere; }
