












.tj-robot, .tj-robot-petbox{
--rb-bg:#131922;--rb-bg2:#1a2233;--rb-bg3:#232e40;--rb-border:#2a3444;
--rb-text:#e6e9ef;--rb-text2:#9aa3b2;--rb-dim:#7e889a;
--rb-accent:#e0a030;--rb-accent-ink:#1a1408;--rb-face:#7cc4ff;--rb-face-ink:#0b1a2a;--rb-danger:#ff6b6b;
--rb-torso:#4f8fd6;--rb-leg:#3b6fb0;--rb-shadow-ink:rgba(0,0,0,0.35);
--rb-shadow:0 8px 28px rgba(0,0,0,0.4);
--rb-font:'Space Grotesk','Microsoft YaHei','PingFang SC',system-ui,sans-serif;
position:relative;display:inline-flex;align-items:center;align-self:center;
margin-left:10px;font-family:var(--rb-font);color:var(--rb-text);
}
:root[data-theme="light"] .tj-robot, :root[data-theme="light"] .tj-robot-petbox{
--rb-bg:#ffffff;--rb-bg2:#f3f5f8;--rb-bg3:#e8ecf2;--rb-border:#d9dee7;
--rb-text:#1b2230;--rb-text2:#5b6574;--rb-dim:#6a7386;
--rb-accent:#b8741a;--rb-accent-ink:#ffffff;--rb-face:#2f7fd1;--rb-face-ink:#ffffff;
--rb-torso:#2f6fb8;--rb-leg:#245a99;--rb-shadow-ink:rgba(20,30,50,0.25);
--rb-shadow:0 8px 28px rgba(20,30,50,0.18);
}
.tj-robot[hidden], .tj-robot-petbox[hidden]{display:none !important;}

body.tj-touring .tj-robot, body.tj-touring .tj-robot-petbox{display:none !important;}


.tj-robot-mini{
position:relative;display:inline-flex;align-items:center;justify-content:center;
width:28px;height:28px;padding:0;border-radius:50%;
border:1px solid var(--rb-border);background:transparent;cursor:pointer;color:var(--rb-face);
}
.tj-robot-mini:hover{background:var(--rb-bg3);}
.tj-robot-mini:focus-visible, .tj-robot-tab:focus-visible, .tj-robot-chip:focus-visible, .tj-robot-btn:focus-visible, .tj-robot-item:focus-visible, .tj-robot-pipback:focus-visible, .tj-robot-petpip:focus-visible{outline:2px solid var(--rb-accent);outline-offset:2px;}
.tj-robot-face{width:22px;height:22px;display:block;}
.tj-robot-face.rb-big{width:44px;height:44px;}
.tj-robot-pet{display:none;}
.tj-robot-face .rb-head, .tj-robot-pet .rb-head{fill:var(--rb-face);}
.tj-robot-face .rb-ant, .tj-robot-pet .rb-ant{stroke:var(--rb-face);stroke-width:3;stroke-linecap:round;}
.tj-robot-face .rb-ant-dot, .tj-robot-pet .rb-ant-dot{fill:var(--rb-face);}
.tj-robot-face .rb-eye, .tj-robot-pet .rb-eye{fill:var(--rb-face-ink);transform-box:fill-box;transform-origin:center;animation:rb-blink 4s infinite;}
.tj-robot-face .rb-mouth, .tj-robot-pet .rb-mouth{fill:none;stroke:var(--rb-face-ink);stroke-width:3;stroke-linecap:round;}
.tj-robot-pet .rb-ant{stroke-width:4;}.tj-robot-pet .rb-mouth{stroke-width:4;}
.tj-robot-pet .rb-torso{fill:var(--rb-torso);}.tj-robot-pet .rb-arm{stroke:var(--rb-torso);stroke-width:8;stroke-linecap:round;}.tj-robot-pet .rb-leg{fill:var(--rb-leg);}
.tj-robot-pet .rb-shadow{fill:var(--rb-shadow-ink);}
.tj-robot-badge{
position:absolute;top:-6px;right:-8px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;
background:var(--rb-danger);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;
}
.tj-robot-follower{position:absolute;bottom:-2px;right:-2px;width:8px;height:8px;border-radius:50%;background:var(--rb-dim);border:1px solid var(--rb-bg);}
.tj-robot-badge[hidden], .tj-robot-follower[hidden], .tj-robot-bubble[hidden], .tj-robot-panel[hidden], .tj-robot-settings[hidden], .tj-robot-list[hidden], .tj-robot-btn[hidden], .tj-robot-pipnote[hidden], .tj-robot-pipback[hidden], .tj-robot-petpip[hidden]{display:none !important;}

.tj-robot-pipback{margin-left:6px;font-family:var(--rb-font);font-size:11px;line-height:1;padding:4px 8px;border-radius:10px;border:1px solid var(--rb-accent);background:transparent;color:var(--rb-accent);cursor:pointer;white-space:nowrap;}
.tj-robot-pipback:hover{background:var(--rb-bg3);}

.tj-robot-avatar-dot{position:absolute;top:6px;right:8px;width:9px;height:9px;border-radius:50%;background:#ff6b6b;border:2px solid #131922;pointer-events:none;}
:root[data-theme="light"] .tj-robot-avatar-dot{border-color:#ffffff;}


@keyframes rb-blink{0%,92%,100%{transform:scaleY(1);}95%{transform:scaleY(0.1);}}
@keyframes rb-bounce{0%,100%{transform:translateY(0);}30%{transform:translateY(-4px);}60%{transform:translateY(0);}80%{transform:translateY(-2px);}}
@keyframes rb-talk{0%,100%{d:path("M22 42 Q32 48 42 42");}50%{d:path("M24 41 Q32 53 40 41");}}
@keyframes rb-talk-pet{0%,100%{d:path("M50 92 Q70 104 90 92");}50%{d:path("M54 90 Q70 114 86 90");}}
@keyframes rb-glow{0%,100%{opacity:1;}50%{opacity:0.35;}}
@keyframes rb-breathe{0%,100%{transform:translateY(0);}50%{transform:translateY(-3px);}}
@keyframes rb-hop{0%,100%{transform:translateY(0);}30%{transform:translateY(-14px);}55%{transform:translateY(0);}75%{transform:translateY(-6px);}}
@keyframes rb-wave{0%,100%{transform:rotate(0);}40%{transform:rotate(-35deg);}70%{transform:rotate(15deg);}}
.tj-robot[data-state="alert"] .tj-robot-mini{animation:rb-bounce 0.7s ease-out 2;}
.tj-robot[data-state="alert"] .rb-ant-dot, .tj-robot-petbox[data-state="alert"] .rb-ant-dot{fill:var(--rb-accent);animation:rb-glow 0.5s ease-in-out 3;}
.tj-robot[data-state="speaking"] .tj-robot-face .rb-mouth{animation:rb-talk 0.35s ease-in-out infinite;}
.tj-robot-petbox[data-state="speaking"] .rb-mouth-pet{animation:rb-talk-pet 0.35s ease-in-out infinite;}
.tj-robot[data-state="speaking"] .rb-ant-dot, .tj-robot-petbox[data-state="speaking"] .rb-ant-dot{fill:var(--rb-accent);}
.tj-robot[data-state="muted"] .tj-robot-face .rb-mouth{d:path("M24 43 L40 43");}
.tj-robot-petbox[data-state="muted"] .rb-mouth-pet{d:path("M54 94 L86 94");}
@media (prefers-reduced-motion: reduce){
.tj-robot .rb-eye, .tj-robot .rb-mouth, .tj-robot .rb-ant-dot, .tj-robot .tj-robot-mini, .tj-robot-petbox .rb-eye, .tj-robot-petbox .rb-mouth-pet, .tj-robot-petbox .rb-ant-dot, .tj-robot-petbox .rb-pet-body, .tj-robot-petbox .rb-arm-r{animation:none !important;}
}


.tj-robot-bubble{
position:absolute;top:calc(100% + 8px);right:0;width:max-content;max-width:320px;min-width:160px;
background:var(--rb-bg2);color:var(--rb-text);border:1px solid var(--rb-border);border-radius:10px;
padding:8px 12px;font-size:13px;line-height:1.4;box-shadow:var(--rb-shadow);z-index:1010;
white-space:normal;word-break:break-word;
}
.tj-robot-bubble::before{content:'';position:absolute;top:-6px;right:10px;width:10px;height:10px;background:var(--rb-bg2);border-left:1px solid var(--rb-border);border-top:1px solid var(--rb-border);transform:rotate(45deg);}


.tj-robot-panel{
position:absolute;top:calc(100% + 6px);right:0;width:320px;max-height:440px;
display:flex;flex-direction:column;
background:var(--rb-bg2);border:1px solid var(--rb-border);border-radius:10px;box-shadow:var(--rb-shadow);
z-index:1010;overflow:hidden;text-align:left;cursor:default;
}
.tj-robot-head{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--rb-border);background:var(--rb-bg);}
.tj-robot-say{flex:1;font-size:13px;line-height:1.4;color:var(--rb-text);min-height:36px;display:flex;align-items:center;}
.tj-robot-pipnote{font-family:var(--rb-font);font-size:11px;padding:3px 8px;border-radius:10px;border:1px solid var(--rb-danger);background:transparent;color:var(--rb-danger);cursor:pointer;white-space:nowrap;}
.tj-robot-body{flex:1;overflow:auto;min-height:120px;}
.tj-robot-list{padding:4px;}
.tj-robot-empty{padding:18px 12px;font-size:12px;color:var(--rb-text2);text-align:center;line-height:1.5;}
.tj-robot-group{padding:8px 10px 2px;font-size:11px;color:var(--rb-dim);letter-spacing:.04em;}
.tj-robot-item{padding:8px 10px;border-radius:6px;}
.tj-robot-item.is-link{cursor:pointer;}
.tj-robot-item.is-link:hover{background:var(--rb-bg3);}
.tj-robot-item-src{font-size:11px;color:var(--rb-accent);letter-spacing:.02em;}
.tj-robot-item-title{font-size:13px;color:var(--rb-text);line-height:1.35;margin:2px 0;word-break:break-word;}
.tj-robot-item-body{font-size:12px;color:var(--rb-text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tj-robot-item-time{font-size:11px;color:var(--rb-dim);display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
.tj-robot-item-go{color:var(--rb-accent);opacity:.75;white-space:nowrap;}
.tj-robot-item.is-link:hover .tj-robot-item-go{opacity:1;}
.tj-robot-foot{display:flex;gap:6px;padding:8px;border-top:1px solid var(--rb-border);background:var(--rb-bg);flex-wrap:wrap;}
.tj-robot-btn{
font-family:var(--rb-font);font-size:12px;padding:5px 9px;border-radius:6px;cursor:pointer;
border:1px solid var(--rb-border);background:var(--rb-bg2);color:var(--rb-text);
}
.tj-robot-btn:hover{background:var(--rb-bg3);}
.tj-robot-btn-dim{color:var(--rb-text2);}


.tj-robot-settings{padding:8px;font-size:12px;}
.tj-robot-stools{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 8px;}
.tj-robot-srow{display:flex;align-items:center;gap:10px;padding:6px 4px;border-top:1px solid var(--rb-border);}
.tj-robot-srow:first-of-type{border-top:0;}
.tj-robot-master .tj-robot-slabel{font-weight:700;}
.tj-robot-slabel{flex:1;color:var(--rb-text);}
.tj-robot-srow label{display:inline-flex;align-items:center;gap:4px;color:var(--rb-text2);cursor:pointer;white-space:nowrap;}
.tj-robot-srow input[type="checkbox"]{accent-color:var(--rb-accent);}
.tj-robot-srow select{max-width:170px;font-family:var(--rb-font);font-size:12px;background:var(--rb-bg);color:var(--rb-text);border:1px solid var(--rb-border);border-radius:6px;padding:3px 6px;}
.tj-robot-cats{padding:2px 4px 8px 14px;display:flex;flex-wrap:wrap;gap:4px 10px;}
.tj-robot-cat{display:inline-flex;align-items:center;gap:3px;color:var(--rb-text2);}
.tj-robot-dim{color:var(--rb-dim);}


.tj-robot-tabs{display:flex;border-bottom:1px solid var(--rb-border);background:var(--rb-bg);}
.tj-robot-tab{
flex:1;font-family:var(--rb-font);font-size:13px;padding:7px 0;text-align:center;cursor:pointer;
background:transparent;border:0;border-bottom:2px solid transparent;color:var(--rb-text2);
}
.tj-robot-tab:hover{background:var(--rb-bg3);}
.tj-robot-tab[aria-selected="true"]{color:var(--rb-text);border-bottom-color:var(--rb-accent);}
.tj-robot-chips{display:flex;flex-wrap:wrap;gap:3px;padding:6px 8px 4px;position:sticky;top:0;z-index:1;background:var(--rb-bg2);border-bottom:1px solid var(--rb-border);}
.tj-robot-chip{
font-family:var(--rb-font);font-size:11px;line-height:1.2;padding:3px 6px;border-radius:10px;cursor:pointer;
border:1px solid var(--rb-border);background:transparent;color:var(--rb-text2);
}
.tj-robot-chip:hover{background:var(--rb-bg3);}
.tj-robot-chip[aria-pressed="true"]{background:var(--rb-accent);color:var(--rb-accent-ink);border-color:var(--rb-accent);}
.tj-robot-hint{padding:4px 12px 0;font-size:11px;color:var(--rb-dim);}
.tj-robot-hint[hidden], .tj-robot-live[hidden], .tj-robot-notice[hidden]{display:none !important;}
.tj-robot-item.is-unread .tj-robot-item-title{font-weight:700;}
.tj-robot-item.is-unread .tj-robot-item-src::before{content:'●';margin-right:4px;font-size:8px;color:var(--rb-danger);vertical-align:middle;}
.tj-robot-shead{padding:8px 4px 2px;font-size:11px;color:var(--rb-accent);letter-spacing:.04em;}


.tj-robot-petbox{position:fixed;margin:0;z-index:90;touch-action:none;font-family:var(--rb-font);color:var(--rb-text);}
.tj-robot-petbtn{display:block;width:96px;height:103px;padding:0;border:0;background:transparent;cursor:grab;}
.tj-robot-petbox.is-dragging .tj-robot-petbtn{cursor:grabbing;}
.tj-robot-petbtn:focus-visible{outline:2px solid var(--rb-accent);outline-offset:2px;border-radius:12px;}

.tj-robot-pethide{position:absolute;top:-2px;right:-6px;width:18px;height:18px;padding:0;border-radius:50%;border:1px solid var(--rb-border);background:var(--rb-bg2);color:var(--rb-text2);font-size:12px;line-height:16px;cursor:pointer;opacity:0;transition:opacity .15s;}
.tj-robot-petbox:hover .tj-robot-pethide, .tj-robot-pethide:focus-visible, .tj-robot-petbox:focus-within .tj-robot-pethide{opacity:1;}
.tj-robot-pethide:hover{background:var(--rb-bg3);color:var(--rb-text);}
@media (hover: none){.tj-robot-pethide{opacity:1;}}

.tj-robot-petpip{position:absolute;top:-2px;left:-6px;width:18px;height:18px;padding:0;border-radius:50%;border:1px solid var(--rb-border);background:var(--rb-bg2);color:var(--rb-text2);font-size:11px;line-height:16px;cursor:pointer;opacity:0;transition:opacity .15s;}
.tj-robot-petbox:hover .tj-robot-petpip, .tj-robot-petpip:focus-visible, .tj-robot-petbox:focus-within .tj-robot-petpip{opacity:1;}
.tj-robot-petpip:hover{background:var(--rb-bg3);color:var(--rb-text);}
@media (hover: none){.tj-robot-petpip{opacity:1;}}

.tj-robot-panel.is-at-pet{position:fixed;right:auto;}
.tj-robot-petbox .tj-robot-pet{display:block;width:96px;height:103px;filter:drop-shadow(0 6px 12px rgba(0,0,0,0.4));}
.tj-robot-petbox[data-state="idle"] .rb-pet-body{animation:rb-breathe 3s ease-in-out infinite;}
.tj-robot-petbox[data-state="alert"] .rb-pet-body{animation:rb-hop 0.8s ease-out 2;}
.tj-robot-petbox[data-state="alert"] .rb-arm-r{transform-origin:106px 118px;animation:rb-wave 0.9s ease-in-out 2;}

.tj-robot-petbox .tj-robot-bubble{top:auto;bottom:calc(100% + 6px);right:auto;left:50%;transform:translateX(-50%);}
.tj-robot-petbox .tj-robot-bubble::before{top:auto;bottom:-6px;right:auto;left:calc(50% - 5px);transform:rotate(225deg);}
.tj-robot-petbox[data-hside="left"] .tj-robot-bubble{left:0;transform:none;}
.tj-robot-petbox[data-hside="left"] .tj-robot-bubble::before{left:38px;}
.tj-robot-petbox[data-hside="right"] .tj-robot-bubble{left:auto;right:0;transform:none;}
.tj-robot-petbox[data-hside="right"] .tj-robot-bubble::before{left:auto;right:38px;}
.tj-robot-petbox[data-bside="down"] .tj-robot-bubble{top:calc(100% + 6px);bottom:auto;}
.tj-robot-petbox[data-bside="down"] .tj-robot-bubble::before{top:-6px;bottom:auto;transform:rotate(45deg);}




.tj-robot, .tj-robot-petbox{
--rb-g-body:#f8f6ff;--rb-g-shade:#e4def8;--rb-g-line:#2a2340;--rb-g-hat:#4a3a8f;--rb-g-hat-hi:#6a58b8;--rb-g-band:#e0a030;
--rb-g-ear:#f4a9c6;--rb-g-eye:#1b1830;--rb-g-blush:#ff8fb6;--rb-g-staff:#9a6a3a;--rb-g-ring:#e0a030;--rb-g-spark:#ffd36b;
--rb-g-tail:#5a47a8;--rb-g-aura:rgba(110,90,200,0.28);
}
:root[data-theme="light"] .tj-robot, :root[data-theme="light"] .tj-robot-petbox{--rb-g-tail:#3a2d70;--rb-g-aura:rgba(110,90,200,0.18);}
.rb-ghost .rb-g-line{stroke:var(--rb-g-line);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round;}
.rb-ghost .rb-g-body{fill:var(--rb-g-body);}.rb-ghost .rb-g-shade{fill:var(--rb-g-shade);opacity:.7;}
.rb-ghost .rb-g-hat{fill:var(--rb-g-hat);}.rb-ghost .rb-g-hat-hi{fill:var(--rb-g-hat-hi);}.rb-ghost .rb-g-band{fill:var(--rb-g-band);}.rb-ghost .rb-g-ear{fill:var(--rb-g-ear);}
.rb-ghost .rb-g-eye{fill:var(--rb-g-eye);}.rb-ghost .rb-g-hl{fill:#ffffff;}.rb-ghost .rb-g-blush{fill:var(--rb-g-blush);opacity:.55;}
.rb-ghost .rb-g-mouth{fill:var(--rb-g-eye);}
.rb-ghost .rb-g-wink, .rb-ghost .rb-g-mouth-flat{display:none;fill:none;stroke:var(--rb-g-eye);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;}
.rb-ghost .rb-g-staff{stroke:var(--rb-g-staff);stroke-width:3.6;stroke-linecap:round;}.rb-ghost .rb-g-ring{fill:none;stroke:var(--rb-g-ring);stroke-width:3;}
.rb-ghost .rb-g-spark{fill:var(--rb-g-spark);}
.rb-ghost .rb-g-sparks .rb-g-spark:nth-child(2){animation-delay:.17s;}.rb-ghost .rb-g-sparks .rb-g-spark:nth-child(3){animation-delay:.34s;}
.rb-ghost .rb-g-tail{fill:none;stroke:var(--rb-g-tail);stroke-width:3.6;stroke-linecap:round;}.rb-ghost .rb-g-tail-tip{fill:var(--rb-g-tail);}.rb-ghost .rb-g-aura{fill:var(--rb-g-aura);}
@keyframes rb-g-tail{0%,100%{transform:rotate(0);}50%{transform:rotate(-10deg);}}
@keyframes rb-g-talk{0%,100%{transform:scale(1,1);}50%{transform:scale(1.25,1.7);}}
@keyframes rb-g-twinkle{0%,100%{opacity:1;}50%{opacity:.25;}}
.rb-ghost .rb-g-eye-l, .rb-ghost .rb-g-eye-r{transform-box:fill-box;transform-origin:center;animation:rb-blink 4s infinite;}
.rb-ghost .rb-g-tailg{transform-origin:100px 124px;animation:rb-g-tail 2.6s ease-in-out infinite;}
.tj-robot[data-state="alert"] .rb-g-eye-r, .tj-robot-petbox[data-state="alert"] .rb-g-eye-r{display:none;}
.tj-robot[data-state="alert"] .rb-g-wink, .tj-robot-petbox[data-state="alert"] .rb-g-wink{display:inline;}
.tj-robot-petbox[data-state="alert"] .rb-g-arm-r{transform-origin:104px 90px;animation:rb-wave 0.9s ease-in-out 2;}
.tj-robot-petbox[data-state="alert"] .rb-g-spark{animation:rb-g-twinkle 0.5s ease-in-out 3;}
.tj-robot-petbox[data-state="speaking"] .rb-g-spark{animation:rb-g-twinkle 0.5s ease-in-out infinite;}
.tj-robot[data-state="speaking"] .rb-g-mouth, .tj-robot-petbox[data-state="speaking"] .rb-g-mouth{transform-box:fill-box;transform-origin:center;animation:rb-g-talk 0.35s ease-in-out infinite;}
.tj-robot[data-state="muted"] .rb-g-mouth, .tj-robot-petbox[data-state="muted"] .rb-g-mouth{display:none;}
.tj-robot[data-state="muted"] .rb-g-mouth-flat, .tj-robot-petbox[data-state="muted"] .rb-g-mouth-flat{display:inline;}
@media (prefers-reduced-motion: reduce){
.rb-ghost .rb-g-eye-l, .rb-ghost .rb-g-eye-r, .rb-ghost .rb-g-tailg, .rb-ghost .rb-g-arm-r, .rb-ghost .rb-g-spark, .rb-ghost .rb-g-mouth{animation:none !important;}
}


.tj-robot[data-host="pip"]{position:static;display:flex;flex-direction:column;margin:0;width:100%;height:100%;background:var(--rb-bg);}
.tj-robot[data-host="pip"] .tj-robot-mini{display:none;}
.tj-robot[data-host="pip"] .tj-robot-pipback{display:none;}
.tj-robot[data-host="pip"] .tj-robot-bubble{position:static;width:auto;max-width:none;margin:8px;transform:none;}
.tj-robot[data-host="pip"] .tj-robot-bubble::before{display:none;}
.tj-robot[data-host="pip"] .tj-robot-panel{position:static;width:auto;max-height:none !important;flex:1;border:0;border-radius:0;box-shadow:none;transform:none;}
.tj-robot[data-host="pip"] .tj-robot-tabs, .tj-robot[data-host="pip"] .tj-robot-chips{display:none;}
.tj-robot[data-host="pip"] .tj-robot-body{min-height:0;}


@media (max-width: 380px){.tj-robot-panel{width:calc(100vw - 24px);}}
@media print{.tj-robot, .tj-robot-petbox{display:none !important;}}
