:root{font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:#23372f;background:#f5f6f2;font-synthesis:none;font-size:14px;--green:#166c52;--accent:#166c52;--muted:#8a958f;--border:#e4e8e1;--soft:#eff4ed;--white:#fff;line-height:1.5}
*{box-sizing:border-box}
body{margin:0}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button{color:inherit}
button:disabled{cursor:wait;opacity:.55}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #85b6a2;outline-offset:3px}
button{border:0;background:none}
a{color:inherit;text-decoration:none}
textarea{resize:vertical}
::selection{background:#cce5d6}
.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.boot{min-height:100dvh;display:flex;align-items:center;justify-content:center;color:var(--green);font-size:16px;flex-direction:column;gap:16px}
.error-boot h1{margin:0}
.icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:#839087;flex-shrink:0}
.icon-button:hover{background:#edf2ed;color:var(--green)}
.icon-button .icon{width:17px;height:17px}
.sidebar{width:224px;position:fixed;inset:0 auto 0 0;background:#fcfdf9;border-right:1px solid var(--border);padding:30px 18px 0;display:flex;flex-direction:column;z-index:20}
.brand{display:flex;align-items:center;gap:12px;padding:0 12px}
.brand img{width:42px;height:42px}
.brand>div{font-size:24px;font-weight:750;line-height:1.2;letter-spacing:3px}
.brand>div>span{display:block;letter-spacing:1.7px;font-size:9px;margin-top:7px;font-weight:600;color:#819080}
.brand-dot{margin-left:auto;align-self:flex-start;margin-top:4px;width:6px;height:6px;border-radius:50%;background:#b1bd97}
.workspace-label{padding:43px 12px 16px;font-size:12px;font-weight:500;color:#788679;display:flex;align-items:center;gap:9px;white-space:nowrap}
.workspace-label span{font-size:8px;letter-spacing:1.2px;color:#aeb7a9}
.main-nav{display:grid;gap:7px}
.main-nav>button{padding:13px 14px;display:flex;align-items:center;gap:12px;text-align:left;color:#667468;border-radius:8px;font-size:14px;transition:background .2s}
.main-nav>button .icon{width:18px;height:18px}
.main-nav>button:hover{background:#f0f3ec}
.main-nav>button.active{background:#e9f0e5;color:#276646;font-weight:650}
.nav-count{margin-left:auto;font-size:11px;border-radius:4px;padding:0 5px;border:1px solid #c9d7c4;color:#65845e}
.sidebar-heading{padding:32px 12px 8px;color:#8b968b;font-size:12px;display:flex;align-items:center;justify-content:space-between}
.sidebar-heading .icon-button{height:24px;width:24px}
.history{overflow-y:auto;min-height:70px;flex:1}
.empty-history{font-size:12px;line-height:1.9;color:#a0a99e;padding:0 12px}
.history-row{display:flex;align-items:center;border-radius:6px}
.history-row>button:first-child{flex:1;min-width:0;display:flex;gap:10px;align-items:center;padding:11px 8px 11px 12px;text-align:left;font-size:12px;color:#7d897d}
.history-row>button:first-child .icon{width:14px;height:14px}
.history-row>button:first-child span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.history-row:hover,.history-row.selected{background:#eff3ea}
.history-delete{opacity:0;width:25px;height:25px}
.history-row:hover .history-delete,.history-delete:focus-visible{opacity:1}
.history-delete .icon{width:13px;height:13px}
.sidebar-bottom{padding-top:20px}
.side-note{border:1px solid #e4eadd;background:linear-gradient(120deg,#f1f5e9,#f8faf4);border-radius:9px;padding:15px 10px;display:flex;gap:9px;color:#658459;align-items:flex-start}
.side-note>.icon{width:17px;height:17px;margin-top:2px}
.side-note>div{font-size:12px;font-weight:550;white-space:nowrap}
.side-note span{display:block;font-size:10px;color:#8b9a7d;margin-top:5px;font-weight:400}
.profile{display:flex;align-items:center;width:100%;text-align:left;padding:24px 4px;gap:10px}
.profile-avatar{width:33px;height:33px;border-radius:50%;background:#e7ecdf;display:grid;place-items:center;color:#667953;font-size:13px}
.profile>span:nth-child(2){font-size:12px;flex:1;font-weight:550}
.profile small{display:block;font-size:10px;color:#949d8b;font-weight:400;margin-top:3px}
.profile>.icon{width:15px;height:15px;color:#8c9784}
.main{margin-left:224px;min-height:100dvh}
.topbar{height:75px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;border-bottom:1px solid #e8ebe4;background:#fafbf8;gap:14px}
.topbar-title{display:flex;align-items:center;gap:16px;font-size:14px;font-weight:600}
.topbar-en{font-size:9px;letter-spacing:1.8px;color:#a2aaa0;font-weight:500;padding-left:16px;border-left:1px solid #dce3d9}
.topbar-actions{display:flex;gap:21px;align-items:center}
.mode-badge{display:flex;align-items:center;gap:7px;color:#6f7d68;font-size:11px;white-space:nowrap}
.mode-badge i,.ready-dot{height:6px;width:6px;border-radius:50%;background:#719666;box-shadow:0 0 0 3px #edf3e7}
.mode-badge.demo{color:#8b8468}
.mode-badge.demo i{background:#c2a45c;box-shadow:0 0 0 3px #f5efdf}
.mode-badge.live{color:#3f6b4c}
.version{font-size:10px;letter-spacing:1px;color:#a8b29c;border:1px solid #dce3d5;border-radius:4px;padding:2px 6px}
.workspace{max-width:1480px;margin:0 auto;padding:32px 38px 0}
.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}
.eyebrow{font-size:11px;letter-spacing:2.8px;font-weight:600;color:#709578;margin-bottom:10px}
.page-heading h1{font-size:27px;letter-spacing:1px;font-weight:600;margin:0;line-height:1.45;color:#253b2c}
.page-heading h1>span{color:#96ae77}
.page-heading p{font-size:12px;color:#929d90;margin:10px 0 0}
.heading-mark{display:flex;gap:11px;align-items:center;color:#8b9f77;padding:0 4px}
.heading-mark>.icon{width:28px;height:28px}
.heading-mark>span{font-size:10px;line-height:1.9;letter-spacing:1px}
.agent-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:24px}
.agent-card{padding:17px 21px 0;text-align:left;border:1px solid #e0e6dc;border-radius:12px;background:#fafbf8;position:relative;overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}
.agent-card:hover{transform:translateY(-3px);box-shadow:0 7px 18px #233c2710}
.agent-card.selected{background:linear-gradient(120deg,#eaf2e7,#f4f7ef);border-color:#91ae85;box-shadow:0 3px 10px #536f3810}
.agent-card.park.selected{background:linear-gradient(120deg,#edf2f7,#f5f7f9);border-color:#92afcb}
.agent-card.shop.selected{background:linear-gradient(120deg,#f8efe4,#faf8f2);border-color:#c9ab85}
.agent-card-top{display:flex;align-items:center;gap:11px;margin-bottom:9px;min-height:34px}
.agent-symbol{color:#648957;background:#e8f0df;width:34px;height:34px;border-radius:9px;display:grid;place-items:center}
.park .agent-symbol{color:#65869c;background:#e9eef2}
.shop .agent-symbol{color:#af8b55;background:#f1ece0}
.agent-symbol>.icon{height:21px;width:21px}
.card-number{color:#b9c3ae;font-size:12px;font-family:Georgia,serif;letter-spacing:1px;margin-left:auto;flex-shrink:0}
.selected-check{position:absolute;right:0;top:0;border-radius:0 10px 0 10px;background:#799265;width:23px;height:21px;display:grid;place-items:center;color:white}
.selected-check>.icon{width:13px;height:13px}
.selected .card-number{visibility:hidden}
.park .selected-check{background:#6c8ba5}
.shop .selected-check{background:#b1915f}
.agent-card-name{font-size:21px;font-weight:600;letter-spacing:1px;display:flex;align-items:center;gap:11px;white-space:nowrap}
.agent-card-name span{font-size:11px;font-weight:400;letter-spacing:.5px;color:#7e8e71}
.park .agent-card-name span{color:#8295a6}
.shop .agent-card-name span{color:#a49178}
.agent-card p{color:#87947e;font-size:11px;line-height:1.8;margin:8px 0 13px;max-width:240px}
.park p{color:#8d98a0}
.shop p{color:#a09480}
.agent-card-footer{border-top:1px solid #dce5d5;display:flex;justify-content:space-between;align-items:center;padding:11px 0;color:#859674;font-size:10px}
.park .agent-card-footer{border-color:#e0e7eb;color:#8c9dac}
.shop .agent-card-footer{border-color:#e8e2d7;color:#aa987c}
.agent-card-footer .icon{width:15px;height:15px}
.conversation-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:19px;align-items:stretch}
.chat-panel{height:568px;min-height:490px;display:flex;flex-direction:column;border:1px solid #e0e6dc;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 3px 10px #27392803}
.chat-toolbar{height:67px;min-height:67px;display:flex;align-items:center;justify-content:space-between;padding:0 23px;border-bottom:1px solid #edf0e9;gap:10px}
.chat-identity{display:flex;align-items:center;gap:11px}
.mini-agent{width:33px;height:33px;display:grid;place-items:center;border-radius:9px;background:#edf3e8;color:#698358}
.mini-agent.park{color:#6b88a3;background:#edf2f6}
.mini-agent.shop{color:#ac8a52;background:#f7f0e4}
.mini-agent>.icon{width:20px;height:20px}
.chat-identity>div{display:flex;align-items:center;gap:11px}
.chat-identity strong{font-size:15px;font-weight:600}
.chat-identity>div>span{font-size:11px;color:#a0aa99}
.ready-dot{margin-left:1px;width:5px;height:5px}
.text-button{display:inline-flex;align-items:center;gap:5px;color:#85917b;font-size:11px;white-space:nowrap;padding:8px;border-radius:6px}
.text-button:hover{background:#f1f5ed}
.text-button .icon{width:14px;height:14px}
.messages{flex:1;min-height:0;overflow-y:auto;padding:21px 25px;scrollbar-width:thin;scrollbar-color:#d4ddce transparent;overscroll-behavior:contain}
.welcome{padding-top:2px}
.welcome-label{font-size:10px;color:#94a083;letter-spacing:1.2px;margin-bottom:7px}
.welcome h2{font-size:21px;letter-spacing:.5px;margin:0 0 10px;font-weight:550;display:flex;gap:11px;align-items:center}
.welcome h2>.icon{color:#a4b68f;width:18px;height:18px}
.welcome>p{font-size:12px;color:#8c9883;line-height:1.9;max-width:490px;margin:0 0 17px}
.suggestions{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.suggestions>button{display:flex;align-items:center;gap:24px;font-size:11px;color:#708564;padding:9px 12px;border:1px solid #e4eadd;border-radius:6px;background:#fafcf7;text-align:left}
.suggestions>button>.icon{width:13px;height:13px;color:#9fae94;margin-left:auto}
.suggestions>button:hover{border-color:#a0b68d;background:#f1f6eb}
.composer{border:1px solid #e0e6da;margin:0 20px;border-radius:10px;padding:12px 14px 9px;background:#fcfdf9;transition:border-color .2s}
.composer:focus-within{border-color:#9eb596;box-shadow:0 0 0 3px #7696680b}
.composer textarea{background:none;resize:none;border:0;outline:none!important;box-shadow:none;color:#40543c;width:100%;font-size:13px;line-height:1.6;min-height:36px;max-height:100px;padding:0}
.composer textarea::placeholder{color:#b1bba8}
.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}
.composer-tools,.send-tools{display:flex;align-items:center;gap:7px}
.composer-tools>.icon-button{width:26px;height:26px;color:#8c9f7d}
.composer-tools>span{font-size:10px;color:#adb8a3}
.keyboard-hint{font-size:9px;color:#b0b9a6;margin-right:4px}
.send-button{width:31px;height:31px;background:#78945e;border-radius:8px;color:#fff;display:grid;place-items:center}
.send-button:hover{background:#5d7d43}
.send-button>.icon{width:18px;height:18px}
.chat-disclaimer{font-size:9px;color:#b2baaa;text-align:center;padding:10px 10px 11px;line-height:1.5}
.digital-panel{border:1px solid #dde6d4;border-radius:12px;background:radial-gradient(ellipse at 50% 28%,#fbfff5,#eff4e7 55%,#f2f5e9);padding:19px 18px 14px;overflow:hidden;display:flex;flex-direction:column;align-items:center;position:relative}
.digital-label{width:100%;display:flex;justify-content:space-between;align-items:center;color:#a3b38c}
.digital-label>span{font-size:8px;letter-spacing:1.6px}
.digital-label>.icon{width:14px;height:14px}
.avatar-stage{position:relative;height:199px;width:100%;display:flex;justify-content:center;align-items:center;isolation:isolate}
.avatar{position:relative;--robot:#e3eace;--robot-dark:#aac190;--visor:#456746;width:120px;height:160px;z-index:2}
.avatar.park{--robot:#dbe6ef;--robot-dark:#a3b9c9;--visor:#3e5f79}
.avatar.shop{--robot:#f2e7d2;--robot-dark:#c6b191;--visor:#7b664a}
.avatar-body{position:absolute;width:75px;height:72px;left:23px;bottom:4px;border-radius:32px 32px 25px 25px;background:linear-gradient(110deg,#fff 2%,var(--robot) 65%,var(--robot-dark));box-shadow:inset -7px -6px 15px #78945724,0 8px 16px #7a9a5933;transform:perspective(130px) rotateX(-8deg)}
.avatar-body:after{content:'';width:15px;height:15px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff,#e2edcf);box-shadow:0 0 0 4px #d1dfbd55;position:absolute;top:40px;left:30px}
.avatar-head{position:absolute;left:9px;top:29px;width:102px;height:84px;border-radius:44px 44px 38px 38px;background:linear-gradient(120deg,#fff 7%,var(--robot) 70%,var(--robot-dark));box-shadow:inset -6px -4px 11px #6e8e5726,0 7px 12px #4c713426;z-index:3;animation:headfloat 5s ease-in-out infinite}
.avatar-visor{position:absolute;left:12px;top:23px;width:78px;height:37px;background:linear-gradient(160deg,var(--visor),#2b473a);border-radius:21px;box-shadow:inset 0 2px 5px #13281977,0 1px 1px white;display:flex;align-items:center;justify-content:space-evenly;padding:0 10px}
.avatar-visor:after{content:'';position:absolute;width:52px;height:7px;top:3px;left:12px;background:linear-gradient(#ffffff20,transparent);border-radius:50%}
.avatar-visor i{width:7px;height:11px;background:#deef9c;border-radius:7px;box-shadow:0 0 8px #dfff8777;animation:blink 5s infinite}
.avatar-mouth{position:absolute;left:46px;top:63px;width:12px;height:5px;border:2px solid var(--robot-dark);border-top:0;border-radius:0 0 12px 12px}
.avatar-ear{position:absolute;width:15px;height:30px;border-radius:8px;background:linear-gradient(90deg,var(--robot-dark),var(--robot));top:59px;z-index:1}
.avatar-ear.left{left:1px;transform:rotate(-8deg)}
.avatar-ear.right{right:1px;transform:rotate(8deg)}
.avatar-leaf{position:absolute;z-index:4;left:57px;top:6px;width:28px;height:20px;border-radius:3px 21px 3px 21px;background:linear-gradient(145deg,#d2e68b,#8faa5b);transform:rotate(-24deg);box-shadow:inset 0 -2px 3px #74933d33}
.avatar-leaf:after{content:'';height:18px;width:2px;background:#9bb77b;position:absolute;left:1px;top:14px;transform:rotate(24deg)}
.avatar.park .avatar-leaf{background:linear-gradient(145deg,#b9d9ed,#809fb5)}
.avatar.shop .avatar-leaf{background:linear-gradient(145deg,#ead69f,#b59966)}
.avatar-halo{position:absolute;inset:0 -40px -20px;background:radial-gradient(ellipse,#dbe8b870,transparent 68%);z-index:-1}
.stage-shadow{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);width:100px;height:15px;border-radius:50%;background:radial-gradient(ellipse,#8ba36a3b,transparent 70%)}
.orbit{position:absolute;top:38px;left:50%;width:170px;height:143px;border:1px solid #d8e3c399;border-radius:50%;transform:translateX(-50%) rotate(-35deg);z-index:0}
.orbit-two{transform:translateX(-50%) rotate(35deg);width:155px;height:165px;top:27px;border-style:dashed;border-color:#dbe5cb66}
.floating-dot{width:6px;height:6px;border:1px solid #b6c99b;border-radius:50%;position:absolute;z-index:1;background:#f3f8e7}
.dot-one{top:65px;left:16px}
.dot-two{bottom:49px;right:12px;width:4px;height:4px;background:#c7d5b1}
.digital-name{font-size:20px;font-weight:650;display:flex;align-items:center;gap:9px;line-height:1.2;margin-top:-3px}
.digital-name>span{font-size:10px;font-weight:400;color:#94a180;border-left:1px solid #cbd8ba;padding-left:9px}
.digital-tagline{font-size:11px;color:#9da98b;margin:9px 0 14px}
.digital-status{color:#8f9f79;border:1px solid #dce6ce;border-radius:20px;padding:6px 13px;background:#f6faee;display:flex;gap:7px;align-items:center;font-size:10px}
.wave{display:flex;align-items:center;gap:2px;height:13px}
.wave i{display:block;width:2px;background:#9bb57c;height:5px;border-radius:2px}
.wave i:nth-child(2),.wave i:nth-child(4){height:9px}
.wave i:nth-child(3){height:13px}
.voice-toggle{display:flex;align-items:center;gap:6px;font-size:11px;color:#91a17b;width:100%;padding:20px 0 13px}
.voice-toggle>.icon{width:15px;height:15px}
.switch{margin-left:auto;width:27px;height:15px;background:#d5dfc8;border-radius:10px;position:relative;transition:background .2s}
.switch:after{content:'';position:absolute;left:2px;top:2px;width:11px;height:11px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0001;transition:transform .2s}
.switch.on{background:#7d9b5e}
.switch.on:after{transform:translateX(12px)}
.companion-divider{width:100%;border-top:1px solid #dfe7d3}
.companion-info{display:flex;align-items:center;justify-content:space-between;width:100%;padding:15px 0 13px;font-size:10px;color:#8d9f77}
.companion-info>span{display:flex;align-items:center;gap:6px}
.companion-info .icon{width:14px;height:14px}
.companion-info strong{font-size:10px;font-weight:500}
.memory-card{width:100%;padding:12px;border-radius:8px;border:1px solid #dfe7d3;background:#f9fcf3;text-align:left}
.memory-card>span{display:flex;align-items:center;font-size:11px;color:#819465;gap:6px}
.memory-card .icon{width:13px;height:13px}
.memory-card .icon:last-child{margin-left:auto;width:10px;height:10px}
.memory-card p{font-size:10px;color:#a0ad8e;margin:8px 0 0;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.companion-foot{font-size:9px;letter-spacing:2px;color:#aebba0;margin-top:auto;padding-top:17px}
.page-footer{display:flex;justify-content:space-between;font-size:9px;color:#acb5a4;padding:23px 0 20px;letter-spacing:1px}
.page-footer span:first-child{font-weight:550;letter-spacing:1.5px}
.message{display:flex;gap:11px;margin-bottom:24px}
.message-avatar{width:30px;height:30px;border-radius:9px;background:#edf2e6;display:grid;place-items:center;flex-shrink:0;color:#789361;font-size:12px}
.message-avatar .icon{width:18px;height:18px}
.message.user .message-avatar{background:#f1f3ee;color:#8b9780}
.message-main{flex:1;min-width:0}
.message-label{font-size:12px;font-weight:550;display:flex;align-items:center;gap:10px;margin-bottom:7px;margin-top:3px}
.message-label>span{font-size:10px;color:#a5af9b;font-weight:400}
.message-content{font-size:14px;line-height:1.95;color:#506148;white-space:pre-wrap;overflow-wrap:anywhere}
.user .message-content{background:#f2f5ed;border:1px solid #e8eddf;border-radius:0 10px 10px 10px;padding:10px 14px;display:inline-block;color:#687859}
.sources{font-size:11px;color:#879b73;margin-top:11px;border:1px solid #e8ecdf;border-radius:6px;overflow:hidden}
.sources summary{cursor:pointer;display:flex;gap:7px;align-items:center;padding:8px 10px;background:#fafcf6}
.sources summary>.icon{width:13px;height:13px}
.sources summary:after{content:'展开';margin-left:auto;font-size:10px;color:#a3b093}
.sources[open] summary:after{content:'收起'}
.source-item{padding:12px;border-top:1px solid #e8ecdf}
.source-item strong{font-weight:550}
.source-item p{font-size:12px;line-height:1.8;color:#8c9784;white-space:pre-wrap;overflow-wrap:anywhere}
.message-actions{display:flex;margin-top:5px;gap:4px}
.message-actions .icon-button{width:26px;height:26px}
.message-actions .icon{width:13px;height:13px}
.interrupted{font-size:11px;color:#b18663;padding:7px 0}
.typing{display:inline-flex;gap:4px;padding:9px}
.typing>i{height:5px;width:5px;border-radius:50%;background:#8fa47a;animation:pulse 1s infinite alternate}
.typing>i:nth-child(2){animation-delay:.2s}
.typing>i:nth-child(3){animation-delay:.4s}
.speaking .avatar-mouth{height:8px;background:var(--robot-dark);animation:talk .3s infinite alternate}
.speaking .avatar-visor i{animation:none}
.recording{color:#c66352!important;animation:pulse .7s infinite alternate}
.admin-workspace{padding-top:38px;padding-bottom:40px}
.admin-agent-tabs{display:flex;gap:12px;margin-top:28px;margin-bottom:24px}
.admin-agent-tabs>button{border:1px solid #e0e6da;padding:12px 20px;display:flex;align-items:center;gap:8px;border-radius:9px;background:#fafbf8;font-size:15px}
.admin-agent-tabs>button>span{color:#98a18e;font-size:12px;margin-left:6px}
.admin-agent-tabs>button>.icon{width:18px;height:18px}
.admin-agent-tabs>button.active{border-color:#8ea880;background:#eaf1e3;color:#597e48}
.tab-row{display:flex;border-bottom:1px solid var(--border);gap:28px;margin-bottom:25px}
.tab-row>button{padding:10px 2px 13px;color:#8a9780;position:relative}
.tab-row>button.active{color:#577947;font-weight:600}
.tab-row>button.active:after{position:absolute;content:'';bottom:-1px;left:0;right:0;height:2px;background:#7e9b62}
.tab-row>button>span{font-size:10px;background:#e8eddc;border-radius:4px;margin-left:5px;padding:1px 5px}
.knowledge-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:20px}
.knowledge-actions h2,.settings-card h2{font-size:18px;margin:0 0 6px;font-weight:600}
.knowledge-actions p{font-size:12px;color:#96a087;margin:0}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;padding:11px 15px;font-size:13px;white-space:nowrap;border:1px solid transparent;cursor:pointer;font-weight:500}
.button .icon{width:16px;height:16px}
.button.primary{background:#647f4d;color:#fff;border-color:#647f4d}
.button.primary:hover{background:#506c3c}
.button.secondary{background:#fafcf6;border-color:#dce4d2;color:#798d65}
.button.secondary:hover{background:#eef4e5}
.button-group{display:flex;gap:10px;align-items:center}
.notice{font-size:12px;color:#8c9576;border:1px solid #e5e7d6;background:#f7f8ed;padding:13px 15px;display:flex;align-items:center;gap:9px;border-radius:8px;line-height:1.8;margin-bottom:20px}
.notice>.icon{width:17px;height:17px}
.document-list{border:1px solid var(--border);border-radius:10px;background:white;overflow:hidden}
.document-row{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid #ebeee5}
.document-row:last-child{border-bottom:0}
.document-icon{width:43px;height:46px;display:grid;place-items:center;border-radius:8px;background:#f0f4e9;color:#8c9e75}
.document-icon>.icon{width:23px;height:23px}
.document-info{flex:1;min-width:0}
.document-info h3{font-size:14px;font-weight:550;overflow-wrap:anywhere;margin:0 0 7px}
.document-info p{font-size:11px;color:#a1aa97;margin:0}
.document-info p>span{margin:0 8px}
.status-button{font-size:11px;display:flex;gap:6px;align-items:center;white-space:nowrap;border-radius:5px;background:#f2f3ee;padding:5px 9px;color:#9ca68f}
.status-button>i{width:5px;height:5px;background:#b3bba6;border-radius:50%}
.status-button.enabled{color:#8ca06b;background:#f1f6e8}
.status-button.enabled>i{background:#91ab6d}
.danger:hover{color:#b86353;background:#f9efeb}
.retrieval-note{display:flex;align-items:center;gap:8px;color:#a1ac91;font-size:11px;margin-top:20px}
.retrieval-note .icon{width:16px;height:16px}
.empty-state{padding:65px 20px;text-align:center;color:#98a38d}
.settings-card{padding:28px;background:#fff;border:1px solid #e2e7dc;border-radius:12px}
.settings-card h2{margin-bottom:25px}
label{display:block;font-size:13px;color:#647457;margin-top:21px;font-weight:500}
input:not([type=checkbox]),textarea,select{display:block;width:100%;background:#fcfdf9;border:1px solid #dde5d4;padding:12px 13px;border-radius:7px;color:#516542;margin-top:9px;line-height:1.6;font-weight:400;font-size:14px;min-width:0}
input::placeholder,textarea::placeholder{color:#b2bba6}
select{appearance:auto;min-height:46px}
.field-help{font-size:11px;color:#a1ac93;line-height:1.8;margin:8px 0 0}
.form-footer{display:flex;justify-content:space-between;align-items:center;gap:13px;margin-top:25px}
.form-footer>span{font-size:11px;color:#a4ac98}
.form-error{font-size:12px;color:#b26352;margin-top:13px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.input-tag{float:right;font-size:10px;color:#9bad86;font-weight:400}
.checkbox-label{display:flex;align-items:center;gap:8px;font-size:11px;color:#9ca88d;margin-top:10px}
.model-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:25px;margin-top:28px}
.section-title{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:600}
.section-title>.icon{color:#8e9f78}
.protocol-badge{margin-left:auto;font-size:9px;color:#a7b297;font-weight:400;border:1px solid #e1e8d7;padding:3px 6px;border-radius:4px}
.connection-guide{padding:25px;background:linear-gradient(130deg,#eff3e6,#f6f8ee);border:1px solid #e0e6d5;border-radius:12px;align-self:start}
.guide-icon{background:#e3ebd5;border-radius:12px;width:43px;height:43px;display:grid;place-items:center;color:#809862;margin-bottom:15px}
.connection-guide h2{font-size:18px;margin:0;font-weight:550}
.connection-guide ol{list-style:none;counter-reset:steps;padding:0;margin:24px 0}
.connection-guide li{counter-increment:steps;position:relative;padding-left:30px;margin:0 0 22px}
.connection-guide li:before{content:counter(steps);position:absolute;left:0;top:0;font-size:10px;border:1px solid #cfdcc0;border-radius:50%;height:19px;width:19px;display:grid;place-items:center;color:#8ea174}
.connection-guide strong{font-size:12px;font-weight:550;color:#778c62}
.connection-guide p{font-size:12px;line-height:1.9;color:#99a68a;margin:6px 0 0}
.guide-foot{font-size:11px;line-height:1.9;color:#a2af90;padding-top:16px;border-top:1px solid #dee7d1}
#connection-result{font-size:12px;line-height:1.8;color:#82916d;margin-top:16px;overflow-wrap:anywhere}
.modal{width:min(480px,calc(100vw - 32px));max-height:90dvh;border:1px solid #e0e7d6;border-radius:15px;padding:26px;background:#fff;box-shadow:0 20px 100px #19371225;color:#354c2d}
.modal.wide{width:min(740px,calc(100vw - 32px))}
.modal::backdrop{background:#1d302359;backdrop-filter:blur(4px)}
.modal-header{display:flex;justify-content:space-between;gap:15px;align-items:center}
.modal-header h2{font-size:20px;font-weight:600;margin:0}
.modal-intro{font-size:13px;color:#94a185;line-height:1.9;margin:18px 0 5px}
.modal label{margin-top:19px}
.modal .form-footer{padding-top:7px}
.danger-button{background:#b36757;color:#fff;border-color:#b36757}
.danger-button:hover{background:#a55748}
#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#354b2f;color:#fff;font-size:13px;padding:13px 20px;border-radius:9px;max-width:min(600px,90vw);box-shadow:0 8px 30px #23351e25;z-index:1000;transition:opacity .2s,transform .2s}
#toast.visible{opacity:1;transform:translate(-50%,0)}
.mobile-only{display:none}
.upload-button{margin:0}
.sidebar-overlay{display:none}
@keyframes headfloat{0%,100%{transform:translateY(0) rotate(-2deg)}
50%{transform:translateY(-3px) rotate(2deg)}
}
@keyframes blink{0%,43%,47%,100%{transform:scaleY(1)}
45%{transform:scaleY(.15)}
}
@keyframes pulse{to{opacity:.35}
}
@keyframes talk{to{height:3px}
}

/* Keep reading surfaces comfortable at ordinary laptop and phone sizes. */
.message-content{font-size:15px}
.welcome>p,.agent-card p{font-size:12px}
.suggestions>button{font-size:12px}
.composer textarea{font-size:14px}
.chat-disclaimer{font-size:10px}
.digital-label>span{font-size:9px}
.history-row>button:first-child{font-size:13px}

@media(min-width:1600px){.workspace{padding-top:40px}
.chat-panel{height:620px}
.agent-card{padding-top:22px}
.agent-card p{max-width:none;margin-bottom:18px}
.agent-card-name{font-size:23px}
.page-heading{margin-bottom:30px}
.avatar-stage{height:230px}
.digital-panel{padding:22px}
.digital-name{font-size:23px}
}

@media(max-width:1250px){.sidebar{width:205px;padding-left:13px;padding-right:13px}
.main{margin-left:205px}
.topbar{padding:0 25px}
.workspace{padding-left:25px;padding-right:25px}
.conversation-layout{grid-template-columns:minmax(0,1fr) 300px;gap:14px}
.agent-card{padding-left:16px;padding-right:16px}
.page-heading h1{font-size:24px}
.heading-mark{display:none}
.digital-panel{padding-left:14px;padding-right:14px}
.digital-label>span{font-size:8px;letter-spacing:1.2px}
.chat-identity>div>span{font-size:10px}
.chat-toolbar{padding:0 18px}
.model-layout{grid-template-columns:minmax(0,1fr) 225px;gap:18px}
.connection-guide{padding:20px}
.protocol-badge{display:none}
.agent-card-name span{font-size:10px}
.side-note{padding-left:8px;padding-right:8px}
.side-note>div{font-size:11px}
.side-note span{font-size:9px}
}

@media(max-width:1050px){.sidebar{width:190px}
.agent-card-top{gap:8px}
.agent-card-top .agent-symbol{width:28px;height:28px;flex-shrink:0}
.agent-card-top .card-number{display:none}
.main{margin-left:190px}
.brand{gap:9px;padding-left:8px}
.brand img{width:36px;height:36px}
.brand>div{font-size:22px}
.workspace-label{padding-left:9px}
.workspace-label span{display:none}
.main-nav>button{gap:9px;padding-left:10px;padding-right:10px}
.side-note{display:none}
.conversation-layout{grid-template-columns:minmax(0,1fr)}
.digital-panel{display:grid;grid-template-columns:85px 1fr auto;gap:2px 15px;padding:13px 17px;align-items:center;order:-1;min-height:94px}
.digital-label,.digital-tagline,.companion-divider,.companion-info,.companion-foot,.orbit,.floating-dot,.stage-shadow{display:none}
.avatar-stage{height:75px;grid-row:1/3;grid-column:1}
.avatar.large{transform:scale(.5);transform-origin:center;flex-shrink:0}
.digital-name{grid-column:2;grid-row:1;font-size:19px;justify-self:start}
.digital-status{grid-column:2;grid-row:2;justify-self:start;border:0;background:none;padding:0;font-size:11px}
.voice-toggle{grid-column:3;grid-row:1;width:auto;padding:0}
.voice-toggle>.switch{margin-left:8px}
.memory-card{grid-column:3;grid-row:2;padding:4px 0;border:0;background:none;width:auto;justify-self:end}
.memory-card p{display:none}
.memory-card>span{font-size:11px}
.chat-panel{height:560px}
.model-layout{grid-template-columns:minmax(0,1fr)}
.connection-guide{display:none}
.knowledge-actions{align-items:flex-start;flex-direction:column}
.agent-card p{font-size:11px}
.page-heading h1{font-size:23px}
.topbar-en{font-size:8px;letter-spacing:1px}
.topbar-actions{gap:12px}
.agent-card-name{font-size:20px;gap:7px}
.agent-card-footer{font-size:9px}
.settings-card{padding:23px}
.admin-agent-tabs{gap:8px}
.admin-agent-tabs>button{padding:11px 14px}
.admin-agent-tabs>button>span{font-size:11px}
}

@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .22s;width:245px;padding:25px 18px 0}
.sidebar.open{transform:translateX(0)}
.sidebar-overlay{display:block;position:fixed;inset:0;background:#1b2e2355;backdrop-filter:blur(2px);z-index:19}
.sidebar .brand{gap:12px}
.sidebar .brand img{width:42px;height:42px}
.sidebar .workspace-label span{display:block}
.sidebar .side-note{display:flex}
.sidebar .history-delete{opacity:1}
.sidebar .side-note span{font-size:10px}
.main{margin-left:0}
.mobile-only{display:inline-flex}
.topbar{height:61px;padding:0 16px}
.topbar-title{gap:8px;font-size:13px}
.topbar-title>.icon-button{margin-left:-5px;width:28px}
.topbar-en,.version{display:none}
.mode-badge{font-size:10px}
.workspace{padding:22px 17px 0}
.page-heading{margin-bottom:18px}
.eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:7px}
.page-heading h1{font-size:23px;letter-spacing:0}
.page-heading p{font-size:11px;margin-top:7px}
.agent-cards{gap:8px;margin-bottom:15px}
.agent-card{padding:12px 11px 0;border-radius:9px}
.agent-card-top{margin-bottom:9px;height:26px}
.agent-symbol{width:29px;height:29px;border-radius:7px}
.agent-symbol .icon{width:18px;height:18px}
.card-number{font-size:10px}
.agent-card-name{font-size:19px;display:block;letter-spacing:.5px}
.agent-card-name>span{display:block;font-size:10px;margin-top:3px}
.agent-card p{display:none}
.agent-card-footer{padding:9px 0;margin-top:9px;font-size:9px}
.agent-card-footer>span{overflow:hidden;white-space:nowrap}
.agent-card-footer>.icon{display:none}
.selected-check{width:20px;height:18px}
.selected-check .icon{width:12px}
.conversation-layout{gap:12px}
.digital-panel{padding:9px 13px;grid-template-columns:58px minmax(0,1fr) auto;gap:2px 8px;min-height:81px;border-radius:9px}
.avatar-stage{height:60px}
.avatar.large{transform:scale(.42)}
.digital-name{font-size:17px;gap:7px}
.digital-name>span{font-size:9px;padding-left:7px}
.digital-status{font-size:10px}
.voice-toggle{font-size:10px}
.voice-toggle>.icon{width:13px;height:13px}
.voice-toggle .switch{width:24px;height:14px;margin-left:2px}
.switch:after{width:10px;height:10px}
.switch.on:after{transform:translateX(10px)}
.memory-card>span{font-size:10px}
.memory-card .icon{width:11px;height:11px}
.chat-panel{height:600px;max-height:calc(100dvh - 90px);min-height:430px;border-radius:10px}
.chat-toolbar{height:57px;min-height:57px;padding:0 14px}
.chat-identity{gap:8px}
.mini-agent{width:29px;height:29px;border-radius:8px}
.chat-identity>div{gap:8px}
.chat-identity strong{font-size:14px}
.chat-identity>div>span{font-size:10px}
.text-button{font-size:11px;padding:6px}
.messages{padding:20px 16px}
.welcome h2{font-size:20px;gap:7px}
.welcome>p{font-size:13px;line-height:1.8}
.welcome-label{font-size:10px}
.suggestions>button{font-size:12px;padding:10px 12px;gap:12px}
.composer{margin:0 12px;padding:10px 11px 8px}
.composer textarea{font-size:16px;min-height:45px}
.composer-tools>span{font-size:10px}
.keyboard-hint{display:none}
.send-button{width:33px;height:33px}
.chat-disclaimer{font-size:9px;padding:9px 11px}
.message{gap:8px}
.message-content{font-size:14px}
.message-label{font-size:12px}
.message-avatar{width:27px;height:27px}
.message-label>span{font-size:9px}
.page-footer{font-size:8px;letter-spacing:.4px;padding:20px 0 max(20px,env(safe-area-inset-bottom))}
.page-footer>span:last-child{display:none}
.admin-workspace{padding-top:25px;padding-bottom:30px}
.admin-agent-tabs{margin-top:20px;gap:7px}
.admin-agent-tabs>button{flex:1;padding:11px 10px;justify-content:center;gap:7px;font-size:15px}
.admin-agent-tabs>button>span{display:none}
.admin-agent-tabs .icon{width:17px;height:17px}
.knowledge-actions p{font-size:11px}
.button{font-size:12px;padding:10px 13px}
.notice{font-size:11px;padding:11px;align-items:flex-start}
.notice>.icon{margin-top:2px}
.document-row{gap:8px;padding:14px 10px;flex-wrap:wrap}
.document-icon{width:32px;height:38px}
.document-info{flex-basis:calc(100% - 44px)}
.document-info h3{font-size:13px;margin-bottom:5px}
.document-info p{font-size:10px}
.document-row .status-button{margin-left:40px}
.document-row>.icon-button{width:29px;height:29px}
.document-row>.icon-button:nth-last-child(2){margin-left:auto}
.retrieval-note{font-size:10px;align-items:flex-start;line-height:1.8}
.settings-card{padding:19px 16px}
.settings-card label{font-size:13px}
.settings-card input:not([type=checkbox]),.settings-card textarea,.settings-card select,.modal input,.modal textarea{font-size:16px}
.field-help{font-size:11px}
.form-footer{gap:9px;flex-wrap:wrap}
.form-footer>.button{flex:1}
.form-footer>span{font-size:10px}
.form-grid{gap:12px}
.model-layout{margin-top:23px}
.section-title{font-size:16px}
.modal{padding:21px;max-height:85dvh}
.modal-header h2{font-size:19px}
.modal .form-footer>span{flex-basis:100%}
.modal-intro{font-size:13px}
.modal label{font-size:13px}
.form-error{font-size:13px}
.page-heading h1>span{display:none}
}

/* Reading and touch targets: keep utility text legible on both clients. */
.page-heading p,.agent-card p,.welcome>p{color:#6f7e67;font-size:13px}
.welcome-label,.agent-card-footer,.chat-identity>div>span,.digital-tagline,.companion-info,.memory-card p{color:#78896b}
.suggestions>button{font-size:13px;color:#61764f}
.chat-disclaimer,.field-help,.retrieval-note,.form-footer>span,.guide-foot{color:#7c896f;font-size:12px}
.digital-tagline,.companion-info,.companion-info strong,.memory-card>span,.memory-card p,.voice-toggle,.digital-status{font-size:12px}
.knowledge-actions p,.document-info p,.connection-guide p,.modal-intro{color:#79866c;font-size:13px}
.document-info h3,.settings-card label,.button{font-size:14px}
.source-item p,.sources{color:#708060;font-size:13px}
.composer textarea::placeholder{color:#8a997e}
.empty-history{color:#8a9780}
.profile>span:nth-child(2){font-size:13px}
.side-note>div{font-size:12px}
@media(max-width:760px){
  .page-heading p{font-size:12px}
  .agent-card-footer{font-size:9px}
  .digital-name>span{font-size:10px}
  .digital-status,.voice-toggle,.memory-card>span{font-size:11px}
  .chat-disclaimer{font-size:10px}
  .icon-button{min-width:36px;min-height:36px}
  .button{font-size:13px;min-height:42px}
  .composer-tools>.icon-button{min-width:34px;min-height:34px}
  .chat-panel{height:620px}
  .document-row>.icon-button{min-width:40px;min-height:40px}
}
/* H5 uses a selection page followed by a viewport-sized conversation page. */
@media(max-width:760px){
  .mobile-home{padding:26px 18px max(24px,env(safe-area-inset-bottom));max-width:560px;margin:auto}
  .mobile-home-heading{margin:0 0 24px}
  .mobile-home-heading h1{font-size:25px;line-height:1.5;margin:8px 0;font-weight:650;color:#2d4534}
  .mobile-home-heading p{font-size:14px;color:#748169;margin:0;line-height:1.8}
  .mobile-agent-list{display:grid;gap:14px}
  .mobile-agent-card{display:flex;width:100%;align-items:center;text-align:left;gap:14px;padding:22px 18px;border:1px solid #dbe5d3;border-radius:16px;background:linear-gradient(120deg,#edf4e5,#fcfdf9);min-height:162px}
  .mobile-agent-card.park{border-color:#dce5ec;background:linear-gradient(120deg,#edf3f8,#fcfdfe)}
  .mobile-agent-card.shop{border-color:#e9e0d2;background:linear-gradient(120deg,#f8f1e4,#fffdfa)}
  .mobile-agent-card:active{transform:scale(.985)}
  .home-avatar{width:67px;height:106px;flex-shrink:0;position:relative;display:grid;place-items:center}
  .home-avatar .avatar{transform:scale(.64);position:absolute}
  .home-agent-copy{flex:1;min-width:0}
  .home-agent-copy>div{display:flex;align-items:center;gap:10px}
  .home-agent-copy strong{font-size:23px;font-weight:650;letter-spacing:1px}
  .home-agent-copy>div>span{font-size:12px;color:#6f845d;padding:3px 7px;border-radius:5px;background:#e3ecd8}
  .park .home-agent-copy>div>span{background:#e0eaf2;color:#637f97}
  .shop .home-agent-copy>div>span{background:#f0e5cf;color:#9a794a}
  .home-agent-copy p{font-size:13px;line-height:1.8;margin:8px 0 13px;color:#75806b}
  .home-chat-link{font-size:13px;display:flex;align-items:center;gap:8px;color:#5f7c49;font-weight:500}
  .park .home-chat-link{color:#637f97}
  .shop .home-chat-link{color:#9a794a}
  .home-chat-link .icon{width:16px;height:16px}
  .mobile-home-foot{display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px;color:#89967a;margin:26px 0 0}
  .mobile-home-foot .icon{width:15px;height:15px}
  .mobile-recent{margin-top:25px}
  .mobile-recent h2{font-size:14px;font-weight:550;color:#647653;margin:0 0 10px}
  .mobile-recent>button{display:flex;align-items:center;gap:10px;width:100%;padding:14px 0;text-align:left;border-bottom:1px solid #e4e9de;font-size:13px;color:#6f7d64}
  .recent-agent{flex-shrink:0;background:#eaf0e3;padding:3px 7px;border-radius:5px;font-size:11px}
  .mobile-recent>button>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
  .mobile-recent .icon{width:14px;height:14px}
  body.mobile-chat-page{overflow:hidden;overscroll-behavior:none}
  .mobile-chat-page .main{position:fixed;left:0;right:0;top:var(--app-top,0px);height:var(--app-height,100dvh);min-height:0;display:flex;flex-direction:column;overflow:hidden;background:#f5f6f2}
  .mobile-chat-page .topbar{height:auto;min-height:58px;flex-shrink:0;padding:calc(7px + env(safe-area-inset-top)) 10px 7px;gap:7px}
  .mobile-chat-header>.icon-button{height:40px;width:40px;color:#748568}
  .mobile-chat-title{flex:1;display:flex;flex-direction:column;min-width:0;padding-left:2px}
  .mobile-chat-title strong{font-size:17px;font-weight:600}
  .mobile-chat-title span{font-size:11px;color:#809371;margin-top:1px}
  .mobile-chat-page .workspace{padding:0;width:100%;flex:1;min-height:0;display:flex;flex-direction:column}
  .mobile-chat-page .workspace>.page-heading,.mobile-chat-page .agent-cards,.mobile-chat-page .page-footer{display:none}
  .mobile-chat-page .conversation-layout{display:flex;flex-direction:column;gap:0;flex:1;min-height:0}
  /* 移动端对话页：信息全部并进顶栏，右栏面板只在管理员点「运行详情」时作为抽屉展开 */
  .mobile-chat-page .mobile-chat-actions{display:flex;align-items:center;gap:1px;margin-left:auto;flex-shrink:0}
  .mobile-chat-page .mobile-chat-actions .icon-button{height:34px;width:34px;border-radius:9px;color:#748568}
  .mobile-chat-page .mobile-chat-actions .icon-button.on{background:#e9f0e5;color:#2f6b48}
  .mobile-chat-page .mobile-chat-actions .icon{width:17px;height:17px}
  .mobile-chat-page .mobile-chat-avatar{position:relative;flex:0 0 32px;width:32px;height:34px;overflow:hidden}
  .mobile-chat-page .mobile-chat-avatar .avatar{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.2);transform-origin:center}
  .mobile-chat-page .mobile-chat-title{padding-left:2px}
  .mobile-chat-page .digital-panel{display:none}
  .mobile-chat-page .digital-panel.panel-open{display:block;flex-shrink:0;padding:11px 14px 12px;border:0;border-bottom:1px solid #e3e9da;border-radius:0;background:#fbfdf7}
  .mobile-chat-page .digital-panel.panel-open>*{display:none}
  .mobile-chat-page .digital-panel.panel-open .run-modules{display:grid}
  .mobile-chat-page .run-toggle{display:none}
  .mobile-chat-page .chat-panel{flex:1;min-height:0;height:auto;max-height:none;border:0;border-radius:0;background:#fff;box-shadow:none;padding-bottom:env(safe-area-inset-bottom)}
  .mobile-chat-page .chat-toolbar{display:none}
  .mobile-chat-page .messages{min-height:0;flex:1;overflow-y:auto;padding:23px 18px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .mobile-chat-page .welcome{padding-top:0}
  .mobile-chat-page .welcome-label{font-size:11px}
  .mobile-chat-page .welcome>p{font-size:14px;line-height:1.8}
  .mobile-chat-page .suggestions>button{min-height:42px;font-size:13px;max-width:100%;line-height:1.6}
  .mobile-chat-page .composer{flex-shrink:0;margin:0 12px;padding:10px 12px 7px;background:#f8faf4}
  .mobile-chat-page .composer textarea{min-height:38px;height:46px;max-height:90px;font-size:16px}
  .mobile-chat-page .composer-bottom{min-height:40px}
  .mobile-chat-page .send-button{width:40px;height:40px;border-radius:11px}
  .mobile-chat-page .chat-disclaimer{flex-shrink:0;font-size:10px;line-height:1.6;padding:6px 16px 8px}
  .mobile-chat-page .message-content{font-size:15px;line-height:1.85}
  .mobile-chat-page .sidebar{top:var(--app-top,0px);height:var(--app-height,100dvh);bottom:auto}
  .mobile-chat-page .modal{max-height:calc(var(--app-height,100dvh) - 24px)}
}
@media(max-width:760px) and (max-height:540px){
  .mobile-chat-page .digital-panel{display:none}
  .mobile-chat-page .messages{padding-top:14px;padding-bottom:14px}
  .mobile-chat-page .chat-disclaimer{padding:3px 12px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Desktop conversations have their own route and fill the working viewport. */
@media(min-width:761px){
  .desktop-conversation-page{overflow:hidden}
  .desktop-conversation-page .main{height:100dvh;min-height:0;display:flex;flex-direction:column}
  .desktop-conversation-page .topbar{flex-shrink:0;gap:14px}
  .desktop-conversation-page .mobile-chat-title{display:flex;align-items:baseline;gap:12px;flex:1}
  .desktop-conversation-page .mobile-chat-title strong{font-size:19px;font-weight:600}
  .desktop-conversation-page .mobile-chat-title span{font-size:12px;color:#7c8e6e}
  .desktop-conversation-page .workspace{flex:1;min-height:0;width:100%;padding:24px 30px}
  .desktop-conversation-page .workspace>.page-heading,.desktop-conversation-page .agent-cards,.desktop-conversation-page .page-footer,.desktop-conversation-page .chat-toolbar{display:none}
  .desktop-conversation-page .conversation-layout{height:100%;min-height:0}
  .desktop-conversation-page .chat-panel{height:100%;min-height:0;max-height:none}
  .desktop-conversation-page .messages{padding:30px;min-height:0}
  .desktop-conversation-page .composer,.desktop-conversation-page .chat-disclaimer{flex-shrink:0}
  .desktop-conversation-page .digital-panel{min-height:0;overflow-y:auto}
}
@media(min-width:761px) and (max-width:1050px){
  .desktop-conversation-page .conversation-layout{display:flex;flex-direction:column}
  .desktop-conversation-page .digital-panel{flex-shrink:0}
  .desktop-conversation-page .chat-panel{flex:1;height:auto}
}

/* 模型配置：流式 / 偏好提炼开关与端点预览 */
.field-help code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;background:#f1f4ea;border:1px solid #e3e8d9;border-radius:4px;padding:1px 5px;color:#6f8459;overflow-wrap:anywhere}
.switch-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.switch-label{display:flex;gap:10px;align-items:flex-start;padding:13px 14px;border:1px solid #e2e7dc;border-radius:9px;background:#fafbf7;cursor:pointer;font-size:12px;margin:0}
.switch-label:has(input:checked){border-color:#b8cba4;background:#f3f8ec}
.switch-label input{margin:3px 0 0;flex-shrink:0;accent-color:#647f4d}
.switch-label strong{display:block;font-size:12px;font-weight:600;color:#4f6640}
.switch-label small{display:block;font-size:10px;color:#9aa78c;line-height:1.7;margin-top:3px}
#connection-result{overflow-wrap:anywhere}
/* 数智人面板：自动提炼的偏好 */
.memory-card .memory-auto{display:block;margin-top:9px;padding-top:9px;border-top:1px dashed #dfe7d3;font-size:10px;color:#8b9a76;line-height:1.7;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.memory-card .memory-auto em{font-style:normal;font-weight:600;color:#7a9160;margin-right:5px}
.memory-card .memory-auto .icon{width:11px;height:11px;vertical-align:-2px;margin-right:4px}
.memory-card .memory-auto.muted{color:#aab59c}
.insight-box{margin-top:14px;padding:13px 15px;border:1px solid #dfe7d3;background:#f7faf1;border-radius:9px}
.insight-box strong{display:flex;align-items:center;gap:6px;font-size:12px;color:#6d8556;font-weight:600}
.insight-box strong .icon{width:14px;height:14px}
.insight-box p{margin:8px 0 0;font-size:12px;line-height:1.8;color:#7f8d72;overflow-wrap:anywhere}
.insight-box-actions{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
.text-button.danger{color:#b26352}
/* 知识库管理：用户偏好 */
.insight-guide{margin-bottom:20px}
.insight-guide h2{margin-bottom:16px}
.insight-row .document-info h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.insight-meta{font-size:11px;font-weight:400;color:#9ca68f}
.insight-content{font-size:12px!important;color:#6f7d64!important;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.button.small{padding:8px 11px;font-size:12px}
.button:disabled{opacity:.55;cursor:not-allowed}
.knowledge-actions .status-button{align-self:center}
@media (max-width:760px){.switch-grid{grid-template-columns:1fr}.memory-card .memory-auto{display:none}.insight-row{flex-wrap:wrap}.insight-row .document-info{flex-basis:100%}}

/* --------------------- 对话气泡：问在右、答在左，无头像与名称 --------------------- */
.message{display:flex;margin-bottom:20px}
.message.user{justify-content:flex-end}
.message-main{flex:1;max-width:min(780px,90%);min-width:0}
.message.user .message-main{display:flex;flex-direction:column;align-items:flex-end}
.bubble{border-radius:14px;padding:14px 18px;font-size:14px;line-height:1.95;color:#4d5f45;overflow-wrap:anywhere}
.message.assistant .bubble{background:#fbfdf7;border:1px solid #e6ecdc;border-radius:14px 14px 14px 4px}
.message.user .bubble{background:#e9f0e5;border:1px solid #dbe6d2;border-radius:14px 14px 4px 14px;color:#3f5a37}
.bubble-text{white-space:pre-wrap;margin:0}
.bubble-markdown>:first-child{margin-top:0}
.bubble-markdown>:last-child{margin-bottom:0}
.md-heading{font-size:14px;font-weight:650;color:#2f5c40;margin:16px 0 7px;padding-left:9px;border-left:3px solid #9dbb85}
.bubble-markdown p{margin:0 0 14px}
.bubble-markdown p:last-child{margin-bottom:0}
.bubble-markdown p>strong:only-child{display:block;font-size:14.5px;font-weight:650;color:#2f5c40;margin:7px 0 0}
.bubble-markdown p.md-heading-line{margin:0 0 8px}
.md-list{margin:6px 0 15px;padding-left:22px;display:grid;gap:9px}
.md-list li{line-height:1.9}
.md-list li::marker{color:#8aa872}
.md-quote{margin:12px 0 0;padding:10px 14px;border-left:3px solid #cfdcc1;background:#f6f9f0;color:#7d8c6f;font-size:12.5px;line-height:1.85;border-radius:0 8px 8px 0}
.md-quote p{margin:0}
.md-sources{font-size:12.5px;color:#7f8f74;gap:7px;padding-left:20px;margin-bottom:14px}
.md-sources li{line-height:1.8}
.md-sources .cite{margin-right:3px}
.md-code{margin:9px 0;padding:10px 12px;background:#f2f6ec;border:1px solid #e3ead9;border-radius:8px;font-size:12px;line-height:1.7;overflow-x:auto;white-space:pre}
.md-rule{border:0;border-top:1px solid #e6ecdc;margin:20px 0 16px}
.bubble-markdown code{background:#eef3e6;border-radius:4px;padding:1px 5px;font-size:12.5px}
.bubble-markdown a{color:#2f7a52;text-decoration:underline}
.bubble-markdown strong{font-weight:650;color:#38583f}
.cite{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:5px;background:#e7f0e0;color:#3f7a52;font-size:10px;font-weight:600;border:0;vertical-align:1px}
button.cite{cursor:pointer}
button.cite:hover{background:#d9e8cf}
.stream-caret{display:inline-block;width:2px;height:14px;margin-left:2px;background:#7fa668;vertical-align:-2px;animation:pulse 1s infinite alternate}
.cite-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.cite-chip{display:flex;align-items:center;gap:6px;max-width:280px;padding:4px 10px 4px 5px;border:1px solid #e4ebda;background:#fafcf5;border-radius:20px;font-size:11px;color:#7d8d6c}
.cite-chip:hover{border-color:#c9d9bb;background:#f4f8ee}
.cite-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cite-score{font-size:10px;color:#a4b193}
.message-actions{margin-top:6px}

/* ------------------------------- 运行面板 ------------------------------- */
.run-card{width:100%;margin-top:14px;padding:12px;border-radius:9px;border:1px solid #dfe7d3;background:#f9fcf3}
.run-head{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#819465;letter-spacing:.5px}
.run-head>span{display:flex;align-items:center;gap:6px}
.run-head .icon{width:12px;height:12px}
.run-head em{font-style:normal;font-size:10px;color:#a6b394}
.run-steps{display:grid;gap:7px;margin:10px 0 0;padding:0;list-style:none}
.run-step{display:flex;align-items:center;gap:8px;font-size:10.5px;color:#8d9b7e}
.run-dot{width:7px;height:7px;border-radius:50%;background:#dfe6d4;flex-shrink:0}
.run-step.live .run-dot{background:#7aa85f;box-shadow:0 0 0 3px #e4efd9;animation:pulse 1s infinite alternate}
.run-step.ok .run-dot{background:#9dbb85}
.run-step.live .run-label{color:#3f7a52;font-weight:600}
.run-readout{margin-left:auto;font-size:10px;color:#a3b093;text-align:right}
.run-step.ok .run-readout{color:#7f9c66}
.seg-tabs{display:flex;width:100%;gap:4px;margin-top:12px;padding:3px;border-radius:8px;background:#eff4e8;border:1px solid #e2e9d7}
.seg-tabs>button{flex:1;padding:6px 8px;border-radius:6px;font-size:11px;color:#7f8f70;display:flex;align-items:center;justify-content:center;gap:5px}
.seg-tabs>button>span{font-size:10px;color:#9fae8d}
.seg-tabs>button.active{background:#fff;color:#2f6b48;font-weight:600;box-shadow:0 1px 2px rgba(60,90,50,.08)}
.panel-body{width:100%;display:grid;gap:8px;margin-top:11px;max-height:290px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d4ddce transparent}
.panel-hint{font-size:10px;color:#a3b093;line-height:1.75;margin:0}
.source-card{padding:9px 10px;border-radius:8px;border:1px solid #e3ead9;background:#fbfdf7}
.source-card.highlight{border-color:#9dbb85;box-shadow:0 0 0 2px #e7f0e0}
.source-head{display:flex;gap:7px;align-items:flex-start}
.source-name{min-width:0;display:grid}
.source-name strong{font-size:11px;font-weight:600;color:#4a6042;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.source-name span{font-size:10px;color:#95a487;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.source-card p{margin:7px 0 0;font-size:10px;line-height:1.75;color:#8d9a80;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.source-meter{display:flex;align-items:center;gap:7px;margin-top:8px}
.source-meter .meter{flex:1;height:4px;border-radius:3px;background:#e8eee0;overflow:hidden}
.source-meter .meter>i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#bcd6a7,#7fa85f)}
.source-meter>em{font-style:normal;font-size:9.5px;color:#9fae8d}
.memory-row{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:8px;border:1px solid #e3ead9;background:#fbfdf7}
.memory-slot{flex-shrink:0;font-size:10px;padding:2px 7px;border-radius:5px;background:#eaf2e2;color:#4c7a52}
.memory-value{flex:1;min-width:0;font-size:11px;color:#5d7053;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.memory-row .icon-button{width:22px;height:22px;opacity:0;transition:opacity .15s}
.memory-row:hover .icon-button,.memory-row .icon-button:focus-visible{opacity:1}
.memory-row .icon{width:12px;height:12px}
.memory-slots{display:flex;flex-wrap:wrap;gap:5px}
.memory-chip{font-size:9.5px;color:#a3b093;border:1px dashed #dde5d1;border-radius:5px;padding:2px 7px}
.text-button.small{font-size:10px;color:#8b9b7b;padding:5px 0}

@media(max-width:1050px){
  .run-modules,.run-toggle{grid-column:1/-1}
  .panel-body{max-height:230px}
  .message-main{max-width:94%}
}
@media(max-width:760px){
  .message-main{max-width:96%}
  .bubble{font-size:13.5px;padding:11px 13px;line-height:1.85}
  .md-heading{font-size:13.5px}
  .run-modules,.run-toggle{grid-column:1/-1}
  .panel-body{max-height:210px}
}
.run-toggle{display:none}
@media(max-width:760px){
  .run-toggle{display:flex;align-items:center;gap:7px;width:100%;grid-column:1/-1;margin-top:11px;padding:8px 11px;border-radius:8px;border:1px solid #dfe7d3;background:#f9fcf3;font-size:11px;color:#5d7a4c}
  .run-toggle .icon{width:13px;height:13px}
  .run-toggle>span{margin-left:auto;font-size:10px;color:#9fae8d}
  .run-modules{display:grid;gap:0;width:100%}
  .run-modules.collapsed{display:none}
}
/* --------------------------- 管理端 · 偏好记忆 --------------------------- */
.memory-account{font-size:11.5px;color:#8b968b;white-space:nowrap}
.memory-account strong{color:#42603c;font-weight:600}
.memory-add{margin-bottom:16px}
.memory-add-grid{display:grid;grid-template-columns:160px minmax(0,1fr) minmax(0,1.2fr) auto;gap:12px;align-items:end;margin-top:12px}
.memory-add-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#7b8a70}
.memory-add-grid input,.memory-add-grid select{height:40px;padding:0 11px;border:1px solid #e0e6dc;border-radius:7px;background:#fff;font-size:13px;color:#4e5f46;width:100%}
.memory-add-grid .button{height:40px;padding:0 20px}
.memory-add .field-help{margin-top:10px}
.memory-filter{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:4px 0 14px;flex-wrap:wrap}
.memory-filter .admin-seg{width:auto;flex:0 1 auto;min-width:0}
.memory-filter .admin-seg>button{flex:0 0 auto;white-space:nowrap;padding:7px 14px;font-size:12px}
.memory-total{font-size:11px;color:#9aa793}
.memory-group{border:1px solid #e3e9dc;border-radius:10px;background:#fff;padding:12px 14px;margin-bottom:12px}
.memory-group-head{display:flex;align-items:center;gap:9px;padding-bottom:10px;border-bottom:1px solid #eef2e8}
.memory-group-icon{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:#eef3e8;color:#6f8f5b}
.memory-group-icon .icon{width:15px;height:15px}
.memory-group-head strong{font-size:13px;color:#42553a}
.memory-count{font-size:10px;color:#8b9a7c;background:#f1f5ea;border-radius:5px;padding:2px 7px}
.memory-group-head .text-button{margin-left:auto}
.memory-item{padding:11px 2px;border-bottom:1px dashed #eef2e8}
.memory-item:last-child{border-bottom:0;padding-bottom:2px}
.memory-item-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;row-gap:7px}
.memory-item-head .memory-slot{flex:0 0 auto}
.memory-item-head .memory-value{flex:1 1 160px;min-width:0;font-size:13px;color:#4e5f46}
.memory-item-head .memory-source,.memory-item-head .button.small,.memory-item-head .icon-button{flex:0 0 auto}
.memory-item-head .button.small{padding:6px 12px;font-size:11px}
.memory-item-head .icon-button{width:28px;height:28px}
.memory-item-head .icon{width:13px;height:13px}
.memory-source{font-size:10px;border-radius:5px;padding:2px 7px;background:#eef3e8;color:#7f9a6a;white-space:nowrap}
.memory-source.manual{background:#fdf3e6;color:#b1834d}
.memory-owner{font-size:10px;color:#a3ad9a;white-space:nowrap;flex:0 0 auto}
.memory-evidence{margin:7px 0 0;font-size:11px;color:#98a48d;line-height:1.7}
.insight-block{margin-top:18px;border:1px solid #e3e9dc;border-radius:10px;background:#fbfdf8;padding:0 14px 14px}
.insight-block>summary{cursor:pointer;padding:13px 0;font-size:13px;color:#4f6647;display:flex;align-items:center;gap:8px}
.insight-block>summary .icon{width:14px;height:14px}
.insight-block>summary>span{font-size:10px;background:#eef3e8;border-radius:5px;padding:2px 7px;color:#7f9a6a}
.insight-block>summary em{margin-left:auto;font-style:normal;font-size:11px;color:#9aa793}
.insight-block .settings-card{background:#fff}
@media(max-width:1050px){.memory-add-grid{grid-template-columns:1fr 1fr}.memory-add-grid .button{grid-column:2}}
@media(max-width:760px){.memory-add-grid{grid-template-columns:1fr}.memory-add-grid .button{grid-column:1}.memory-item-head{flex-wrap:wrap}.memory-owner-pick select{min-width:0}.memory-filter{flex-direction:column;align-items:flex-start}}
/* --------------------------- 侧边栏账户气泡 --------------------------- */
.profile-wrap{position:relative}
.profile-menu{position:absolute;left:-4px;right:-4px;bottom:calc(100% + 6px);background:#fff;border:1px solid #e0e6dc;border-radius:11px;box-shadow:0 12px 28px rgba(45,66,38,.16);padding:8px;z-index:30;display:grid;gap:2px;animation:profile-pop .14s ease-out}
@keyframes profile-pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.profile-menu-head{display:flex;align-items:center;gap:9px;padding:8px 8px 10px;border-bottom:1px solid #eef2e8;margin-bottom:6px}
.profile-menu-head .profile-avatar{width:30px;height:30px}
.profile-menu-head strong{display:block;font-size:12px;font-weight:600;color:#42553a}
.profile-menu-head small{font-size:10px;color:#98a48d}
.profile-menu>button{display:flex;align-items:center;gap:9px;padding:9px;border-radius:7px;font-size:12px;color:#5c6f52;text-align:left}
.profile-menu>button:hover{background:#f2f6ec}
.profile-menu>button .icon{width:14px;height:14px;color:#8c9784}
.profile-menu>button.danger{color:#a9583f}
.profile-menu>button.danger .icon{color:#c07a5f}
.profile-menu>button.danger:hover{background:#fdf1ec}
.profile.open{background:#f2f6ec;border-radius:9px}
.manage-memory{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:10px;padding:9px;border:1px solid #e3ead9;border-radius:8px;background:#fbfdf7;color:#4f7a52;font-size:11px;transition:background .18s,border-color .18s}
.manage-memory:hover{background:#f1f7ea;border-color:#cfdcc1}
.manage-memory .icon{width:12px;height:12px}
.memory-manage-list{display:grid;gap:8px;margin:4px 0 12px;max-height:250px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d4ddce transparent}
.memory-manage-list .icon-button{opacity:1}
.memory-manage-list .memory-row{background:#fbfdf7}
/* ------------------------------ 登录 / 注册 ------------------------------ */
.auth-tabs{width:100%;margin:0 0 6px}
.auth-tabs>button{padding:9px;font-size:12.5px}
.code-row{display:flex;gap:8px;align-items:flex-start;margin-top:9px}
.code-row>input{margin-top:0;flex:1;min-width:0}
.code-row>.button{flex-shrink:0;white-space:nowrap;padding:12px 14px}
.modal .auth-tabs+.modal-intro{margin-top:12px}
/* --------------------------- 依据来源开关与标记 --------------------------- */
.composer-tools{gap:7px}
.source-toggle{display:flex;align-items:center;gap:5px;padding:5px 11px;border:1px solid #e3ead9;border-radius:20px;background:#fbfdf7;color:#96a288;font-size:11px;white-space:nowrap}
.source-toggle .icon{width:12px;height:12px}
.source-toggle:hover{border-color:#cfdcc1;background:#f4f8ee}
.source-toggle.on{background:#e9f0e5;border-color:#cfe0c2;color:#2f6b48;font-weight:600}
.source-toggle.on .icon{color:#4f7a52}
.send-tools{gap:8px}
.send-tools .icon-button{width:34px;height:34px;border:1px solid #e3ead9;border-radius:9px;background:#fbfdf7;color:#7f8f70}
.send-tools .icon-button:hover{background:#f2f7ec}
.send-tools .icon-button.recording{color:#b26352;border-color:#e6cfc7;background:#fdf3ef}
.src-tag{display:inline-block;font-size:10px;padding:1px 6px;border-radius:5px;background:#eef3e8;color:#6f8f5b;margin-right:5px;vertical-align:1px;white-space:nowrap}
.src-tag.search{background:#eef2f8;color:#5b7ba6}
.md-sources .src-tag{margin-right:4px}
@media(min-width:761px){.mobile-chat-actions{display:flex;align-items:center;gap:2px;margin-left:auto}.mobile-chat-actions .chat-action{display:none}.mobile-chat-actions .icon-button{height:34px;width:34px;color:#748568}}
@media(min-width:761px){.mobile-chat-avatar{display:none}}

/* 未登录时对话页底部的登录引导 */
.hidden{display:none!important}
.composer.guest-lock{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px}
.guest-lock-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.guest-lock-text strong{font-size:14px;font-weight:600;color:#3f5540}
.guest-lock-text span{font-size:11.5px;color:#8b9a80}
.guest-lock-button{flex-shrink:0;padding:9px 18px;border:0;border-radius:9px;background:#3f6b4a;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background .18s}
.guest-lock-button:hover{background:#345b3e}
.mobile-chat-page .composer.guest-lock{margin:0 12px 6px;padding:12px 14px}

/* ------------------------------ API 对接 ------------------------------ */
.apikey-list{margin-top:20px}
.apikey-row{gap:12px}
.apikey-row .document-info{min-width:0}
.apikey-row .button.small{padding:6px 12px;font-size:11px;white-space:nowrap}
.apikey-agents{border:1px solid #e3e9dc;border-radius:9px;padding:12px 14px 14px;margin:18px 0 0;display:grid;gap:2px}
.apikey-agents legend{font-size:12px;color:#6f7e63;padding:0 6px}
.apikey-agents .checkbox-label{margin-top:6px}
.apikey-code{margin:8px 0 0;padding:12px 14px;background:#22301f;color:#e7efdc;border-radius:9px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.7;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.key-secret{margin:14px 0 0;padding:14px 16px;background:#f3f7ee;border:1px dashed #c8d8b8;border-radius:9px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;color:#3f6b4a;overflow-wrap:anywhere;user-select:all}
.connection-guide a{color:#5c7a45}
@media(max-width:760px){.apikey-row{flex-wrap:wrap}.apikey-row .document-info{flex:1 1 100%}.apikey-row .button.small{margin-left:auto}}


