/* RINC AI bot avatar — isolated component used by the launcher and support welcome panel. */
[data-rinc-bot]{display:inline-grid;place-items:center;line-height:1}
.rinc-bot-avatar{
  --bot-size:74px;
  --look-x:0px;
  --look-y:0px;
  position:relative;
  width:var(--bot-size);
  height:var(--bot-size);
  flex:0 0 var(--bot-size);
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.34));
  transform:translateZ(0);
  isolation:isolate;
}
.rinc-bot--launcher{--bot-size:48px}
.rinc-bot--welcome{--bot-size:116px;margin:0 auto}
.rinc-bot-core{position:absolute;inset:3%;transform-style:preserve-3d;animation:rincBotFloat 5.8s ease-in-out infinite}
.rinc-bot-shell{
  position:absolute;inset:0;
  border-radius:43% 43% 39% 39%/46% 46% 42% 42%;
  background:
    radial-gradient(circle at 30% 20%,rgba(255,255,255,.96) 0 5%,rgba(225,235,243,.72) 20%,transparent 43%),
    linear-gradient(145deg,#eef4f7 0%,#a9bac6 28%,#566876 65%,#26343f 100%);
  border:1px solid rgba(241,250,255,.62);
  box-shadow:
    inset 0 8px 13px rgba(255,255,255,.55),
    inset 0 -10px 15px rgba(7,14,21,.42),
    0 10px 20px rgba(2,9,14,.34);
}
.rinc-bot-shell::before{
  content:"";position:absolute;inset:7%;border-radius:38% 38% 36% 36%/42% 42% 38% 38%;
  border:1px solid rgba(209,226,237,.28);box-shadow:inset 0 0 0 1px rgba(12,25,34,.17);
}
.rinc-bot-shell::after{
  content:"";position:absolute;left:19%;right:19%;bottom:6%;height:2%;border-radius:99px;
  background:linear-gradient(90deg,transparent,#101c24 16% 84%,transparent);opacity:.5;
}
.rinc-bot-side{position:absolute;top:34%;width:9%;height:27%;border-radius:45%;background:linear-gradient(90deg,#253642,#8b9da9 55%,#283945);box-shadow:inset 0 0 4px rgba(255,255,255,.25),0 2px 7px rgba(0,0,0,.38);z-index:-1}
.rinc-bot-side.left{left:-4.5%}.rinc-bot-side.right{right:-4.5%;transform:scaleX(-1)}
.rinc-bot-visor{
  position:absolute;left:12%;right:12%;top:20%;height:39%;border-radius:38% 38% 34% 34%/45% 45% 38% 38%;
  background:
    radial-gradient(circle at 36% 28%,rgba(90,165,211,.18),transparent 33%),
    linear-gradient(160deg,#14222c 0%,#071117 52%,#101f29 100%);
  border:1px solid rgba(146,204,229,.25);
  box-shadow:inset 0 7px 13px rgba(255,255,255,.05),inset 0 -9px 16px rgba(0,0,0,.68),0 5px 9px rgba(0,0,0,.32);
  overflow:hidden;
}
.rinc-bot-visor::before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,rgba(255,255,255,.14),transparent 25% 70%,rgba(91,191,235,.08));pointer-events:none}
.rinc-bot-eye{position:absolute;top:31%;width:25%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 37% 30%,#fbfdff,#c6d5df 48%,#738998 72%,#344752 100%);box-shadow:0 3px 7px rgba(0,0,0,.48),inset 0 3px 5px rgba(255,255,255,.68);overflow:hidden;transition:transform .24s ease,filter .24s ease}
.rinc-bot-eye.left{left:20%}.rinc-bot-eye.right{right:20%}
.rinc-bot-pupil{position:absolute;left:50%;top:50%;width:48%;aspect-ratio:1;border-radius:50%;transform:translate(calc(-50% + var(--look-x)),calc(-50% + var(--look-y)));background:radial-gradient(circle at 36% 28%,#dff8ff 0 7%,#58c9f0 10%,#16749d 34%,#092a3b 67%,#020a0f 100%);box-shadow:0 0 7px rgba(65,190,239,.74),inset 0 0 4px rgba(255,255,255,.36);transition:transform .1s linear,filter .2s ease}
.rinc-bot-pupil::before{content:"";position:absolute;left:19%;top:15%;width:23%;aspect-ratio:1;border-radius:50%;background:#fff;filter:blur(.3px);opacity:.94}
.rinc-bot-eye::after{content:"";position:absolute;inset:-8% -5% 52%;border-radius:55% 55% 18% 18%;background:linear-gradient(#071117,#111e27);transform:translateY(-115%);animation:rincBotBlink 6.2s infinite;z-index:4}
.rinc-bot-brow{position:absolute;top:23%;width:26%;height:5%;border-radius:999px;background:linear-gradient(#7f929f,#263640);box-shadow:0 2px 3px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.25);transition:transform .28s ease,top .28s ease}
.rinc-bot-brow.left{left:19%}.rinc-bot-brow.right{right:19%}
.rinc-bot-brand{position:absolute;left:50%;top:63%;transform:translate(-50%,-50%);font:800 calc(var(--bot-size)*.092)/1 Arial,Helvetica,sans-serif;letter-spacing:calc(var(--bot-size)*.018);color:#dff5ff;text-shadow:0 1px rgba(255,255,255,.25),0 -1px rgba(0,0,0,.75),0 0 7px rgba(78,196,239,.66);white-space:nowrap}
.rinc-bot-mouth{position:absolute;left:50%;bottom:17%;width:27%;height:7%;transform:translateX(-50%);border-radius:999px;background:#14232d;box-shadow:inset 0 2px 4px rgba(0,0,0,.8),0 1px rgba(255,255,255,.12);overflow:hidden;transition:width .25s ease,height .25s ease,bottom .25s ease}
.rinc-bot-mouth::after{content:"";position:absolute;inset:36% 12%;border-radius:99px;background:linear-gradient(90deg,#183e50,#54caf0,#183e50);box-shadow:0 0 6px rgba(70,194,235,.52);opacity:.68;transition:opacity .2s ease}
.rinc-bot-status-light{position:absolute;right:16%;bottom:14%;width:5.5%;aspect-ratio:1;border-radius:50%;background:#6be8cf;box-shadow:0 0 7px rgba(107,232,207,.88),inset 0 1px rgba(255,255,255,.8);transition:background .2s ease,box-shadow .2s ease}
.rinc-bot-avatar.state-thinking .rinc-bot-pupil{filter:brightness(1.28);animation:rincBotThink .75s ease-in-out infinite alternate}
.rinc-bot-avatar.state-thinking .rinc-bot-status-light{background:#63c9ff;box-shadow:0 0 10px rgba(99,201,255,.98)}
.rinc-bot-avatar.state-thinking .rinc-bot-mouth::after{animation:rincBotVoice 1s ease-in-out infinite;opacity:.9}
.rinc-bot-avatar.state-happy .rinc-bot-eye{transform:scale(1.05);filter:brightness(1.08)}
.rinc-bot-avatar.state-happy .rinc-bot-brow.left{transform:rotate(-5deg) translateY(-8%)}
.rinc-bot-avatar.state-happy .rinc-bot-brow.right{transform:rotate(5deg) translateY(-8%)}
.rinc-bot-avatar.state-happy .rinc-bot-mouth{width:31%;height:8%}
.rinc-bot-avatar.state-happy .rinc-bot-mouth::after{opacity:1}
.rinc-bot-avatar.state-concerned .rinc-bot-eye{transform:scale(.91) translateY(5%);filter:saturate(.7) brightness(.85)}
.rinc-bot-avatar.state-concerned .rinc-bot-brow.left{transform:rotate(13deg) translateY(16%)}
.rinc-bot-avatar.state-concerned .rinc-bot-brow.right{transform:rotate(-13deg) translateY(16%)}
.rinc-bot-avatar.state-concerned .rinc-bot-mouth{width:21%;bottom:16%}
.rinc-bot-avatar.state-concerned .rinc-bot-status-light{background:#f0ac6c;box-shadow:0 0 8px rgba(240,172,108,.82)}
.ra-bot-host{display:grid;place-items:center;min-height:126px;margin:0 auto 12px}
.rinc-chat-bot-wrap{display:grid;place-items:center;width:48px;height:48px;margin:-4px 0}
@keyframes rincBotFloat{0%,100%{transform:translateY(0) rotateX(0) rotateY(0)}50%{transform:translateY(-3%) rotateX(1.5deg) rotateY(1.5deg)}}
@keyframes rincBotBlink{0%,43%,47%,100%{transform:translateY(-115%)}44%,46%{transform:translateY(0)}}
@keyframes rincBotThink{from{transform:translate(calc(-50% + var(--look-x) - 2px),calc(-50% + var(--look-y)))}to{transform:translate(calc(-50% + var(--look-x) + 2px),calc(-50% + var(--look-y)))}}
@keyframes rincBotVoice{0%,100%{transform:scaleX(.55);opacity:.55}50%{transform:scaleX(1);opacity:1}}
@media(max-width:620px){.rinc-bot--welcome{--bot-size:94px}.ra-bot-host{min-height:102px;margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){.rinc-bot-core,.rinc-bot-eye::after,.rinc-bot-avatar.state-thinking .rinc-bot-pupil,.rinc-bot-avatar.state-thinking .rinc-bot-mouth::after{animation:none!important}.rinc-bot-pupil{transition:none}}
