/* Winziya AI premium stage + 3D avatar + call mode (additive) */
.wai-body{background:radial-gradient(1200px 600px at 50% -10%,#6D28D9 0%,transparent 60%),radial-gradient(900px 500px at 100% 100%,#1D4ED8 0%,transparent 60%),#120F2E}
.wai-body:not(.dark){background:radial-gradient(1200px 600px at 50% -10%,#C4B5FD 0%,transparent 60%),radial-gradient(900px 500px at 100% 100%,#BFDBFE 0%,transparent 60%),#F5F3FF}
.wai-main:has(.wzx-stage) .wai-hero{display:none}
.wzx-stage{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;padding:10px 0 4px}
.wzx-left,.wzx-right{display:flex;flex-direction:column;gap:9px}
.wzx-left button{align-self:flex-start;background:rgba(20,16,50,.72);color:#fff;border:1px solid rgba(167,139,250,.35);backdrop-filter:blur(10px);padding:9px 14px;border-radius:14px;font:600 13px 'Plus Jakarta Sans',sans-serif;cursor:pointer;transition:.2s;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.wzx-left button:hover{transform:translateX(4px);border-color:#A78BFA}
.wzx-card{display:flex;gap:11px;align-items:center;background:rgba(30,20,80,.6);border:1px solid rgba(167,139,250,.35);backdrop-filter:blur(12px);border-radius:16px;padding:10px 13px;color:#fff}
.wzx-card i{font-style:normal;font-size:20px;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#A855F7,#6366F1);flex:none}
.wzx-card b{display:block;font-size:14px}.wzx-card small{font-size:11.5px;opacity:.8}
.wzx-center{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}
.wzx-bubble{background:linear-gradient(135deg,rgba(76,29,149,.92),rgba(37,99,235,.85));color:#fff;border:1px solid rgba(196,181,253,.6);padding:10px 14px;border-radius:18px 18px 18px 4px;font-weight:700;font-size:14px;max-width:300px;margin-bottom:10px;box-shadow:0 0 24px rgba(139,92,246,.45)}
.wzx-av3d{--rx:0deg;--ry:0deg;position:relative;width:210px;height:250px;perspective:800px;transform-style:preserve-3d;animation:wzxFloat 5s ease-in-out infinite}
.wzx-av3d img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover;border-radius:46% 46% 40% 40%/40% 40% 46% 46%;transform:rotateX(var(--rx)) rotateY(var(--ry)) translateZ(20px);transition:transform .25s ease-out;box-shadow:0 20px 50px rgba(76,29,149,.6),inset 0 0 0 2px rgba(255,255,255,.2);border:3px solid rgba(196,181,253,.7);animation:wzxBreath 4s ease-in-out infinite}
.wzx-shine{position:absolute;inset:0;z-index:3;border-radius:46% 46% 40% 40%/40% 40% 46% 46%;pointer-events:none;background:radial-gradient(circle at calc(50% + var(--sx,0px)) calc(30% + var(--sy,0px)),rgba(255,255,255,.28),transparent 45%);transform:rotateX(var(--rx)) rotateY(var(--ry)) translateZ(30px);transition:transform .25s ease-out}
.wzx-ring{position:absolute;inset:-12px;z-index:1;border-radius:50%;border:3px solid rgba(167,139,250,.55);box-shadow:0 0 30px rgba(139,92,246,.6);transition:.3s}
.wzx-glow{position:absolute;inset:-30px;z-index:0;border-radius:50%;background:radial-gradient(circle,rgba(168,85,247,.55),transparent 65%);filter:blur(8px);transition:.3s}
.wzx-av3d.speaking img{animation:wzxBob .5s ease-in-out infinite}
.wzx-av3d.speaking .wzx-ring{border-color:#F0ABFC;transform:scale(calc(1 + var(--lvl,0)*.08));box-shadow:0 0 calc(30px + var(--lvl,0)*40px) #E879F9}
.wzx-av3d.speaking .wzx-glow{background:radial-gradient(circle,rgba(236,72,153,.6),transparent 65%)}
.wzx-av3d.listening .wzx-ring{border-color:#34D399;box-shadow:0 0 34px #10B981;animation:wzxPulse 1.4s infinite}
.wzx-av3d.listening .wzx-glow{background:radial-gradient(circle,rgba(16,185,129,.45),transparent 65%)}
.wzx-av3d.thinking .wzx-ring{border-color:#60A5FA;border-style:dashed;animation:wzxSpin 2.5s linear infinite}
@keyframes wzxFloat{50%{transform:translateY(-8px)}}
@keyframes wzxBreath{50%{filter:brightness(1.05) saturate(1.08)}}
@keyframes wzxBob{50%{transform:rotateX(var(--rx)) rotateY(var(--ry)) translateZ(20px) scale(1.025) translateY(-2px)}}
@keyframes wzxPulse{50%{transform:scale(1.06);opacity:.7}}
@keyframes wzxSpin{to{transform:rotate(360deg)}}
.wzx-title{margin:14px 0 0;font:800 34px/1 'Plus Jakarta Sans',sans-serif;color:#fff;text-shadow:0 0 20px rgba(167,139,250,.8)}
.wzx-title span{background:linear-gradient(90deg,#E879F9,#818CF8);-webkit-background-clip:text;background-clip:text;color:transparent}
.wzx-tag{margin:8px 0 10px;font-size:12.5px;color:#E9D5FF;padding:5px 12px;border-radius:999px;border:1px solid rgba(167,139,250,.5);background:rgba(30,20,80,.6)}
.wai-body:not(.dark) .wzx-title{color:#2E1065;text-shadow:none}
.wzx-callbtn{border:0;cursor:pointer;color:#fff;font:800 15px 'Plus Jakarta Sans',sans-serif;padding:12px 22px;border-radius:999px;background:linear-gradient(135deg,#22C55E,#0A9D74);box-shadow:0 8px 24px rgba(16,185,129,.5);animation:wzxPulse 2.2s infinite}
.wzx-cats{display:flex;gap:6px;overflow-x:auto;padding:6px;margin:4px 0;border-radius:18px;background:rgba(20,16,50,.65);border:1px solid rgba(167,139,250,.3);backdrop-filter:blur(10px);scrollbar-width:none}
.wzx-cats button{flex:1 0 auto;display:flex;flex-direction:column;align-items:center;gap:3px;background:transparent;border:0;color:#fff;font-size:18px;padding:6px 10px;border-radius:12px;cursor:pointer}
.wzx-cats button span{font-size:11px;font-weight:600}.wzx-cats button:hover{background:rgba(139,92,246,.3)}
/* compact once chatting */
.wai.has-msgs .wzx-stage{grid-template-columns:1fr;padding:4px 0}
.wai.has-msgs .wzx-left,.wai.has-msgs .wzx-right,.wai.has-msgs .wzx-bubble,.wai.has-msgs .wzx-tag,.wai.has-msgs .wzx-cats{display:none}
.wai.has-msgs .wzx-center{flex-direction:row;justify-content:center;gap:12px}
.wai.has-msgs .wzx-av3d{width:64px;height:76px}.wai.has-msgs .wzx-title{font-size:20px;margin:0}
.wai.has-msgs .wzx-callbtn{padding:8px 14px;font-size:13px;animation:none}
@media(max-width:860px){
  .wzx-stage{grid-template-columns:1fr;gap:8px}
  .wzx-right{display:none}
  .wzx-left{flex-direction:row;overflow-x:auto;order:3;scrollbar-width:none}
  .wzx-left button{flex:none;white-space:nowrap;font-size:12px;padding:7px 11px}
  .wzx-av3d{width:150px;height:180px}.wzx-title{font-size:26px}.wzx-bubble{font-size:12.5px}
}
/* CALL MODE */
.wzc{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;color:#fff;padding:env(safe-area-inset-top) 16px calc(16px + env(safe-area-inset-bottom));font-family:'Plus Jakarta Sans',sans-serif}
.wzc[hidden]{display:none}
.wzc-bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(800px 500px at 50% 30%,#7C3AED,transparent 70%),linear-gradient(180deg,#1E1B4B,#0B0A1F)}
.wzc-top{text-align:center}.wzc-top b{display:block;font-size:22px}.wzc-top span{opacity:.8;font-variant-numeric:tabular-nums}
.wzc-av{width:min(62vw,280px);height:min(74vw,330px)}
.wzc-status{font-weight:700;font-size:17px;min-height:24px}
.wzc-cap{max-width:560px;text-align:center;font-size:13.5px;opacity:.85;min-height:40px;max-height:80px;overflow:auto}
.wzc-waves{display:flex;gap:4px;height:44px;align-items:center}
.wzc-waves i{width:4px;height:6px;border-radius:4px;background:linear-gradient(#E879F9,#818CF8);transition:height .1s}
.wzc.speaking .wzc-waves i,.wzc.listening .wzc-waves i{animation:wzcW .9s ease-in-out infinite}
.wzc.listening .wzc-waves i{background:linear-gradient(#6EE7B7,#10B981)}
.wzc-waves i:nth-child(odd){animation-delay:.15s}.wzc-waves i:nth-child(3n){animation-delay:.3s}.wzc-waves i:nth-child(4n){animation-delay:.45s}
@keyframes wzcW{50%{height:38px}}
.wzc-ctrl{display:flex;gap:22px;align-items:center}
.wzc-ctrl button{width:62px;height:62px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;backdrop-filter:blur(8px)}
.wzc-ctrl small{font-size:9.5px}.wzc-ctrl .off{background:#fff;color:#111}
.wzc-ctrl .wzc-main{width:84px;height:84px;font-size:30px;background:linear-gradient(135deg,#A855F7,#6366F1);box-shadow:0 0 30px #8B5CF6}
.wzc-end{border:0;background:#EF4444;color:#fff;font:800 16px 'Plus Jakarta Sans';padding:14px 34px;border-radius:999px;cursor:pointer;box-shadow:0 8px 24px rgba(239,68,68,.5)}
@media (prefers-reduced-motion:reduce){.wzx-av3d,.wzx-av3d img,.wzx-callbtn{animation:none!important}}
.wzx-stage,.wzx-cats{flex:none}
.wai-main:has(.wzx-stage) .wai-chips{display:none}
.wai-main:has(.wzx-stage) .wai-chat{min-height:0}
.wai:not(.has-msgs) .wai-chat{flex:0 0 0;overflow:hidden}
.wai-main:has(.wzx-stage){overflow-y:auto}
.wai-body .wzx-title{color:#fff!important}
.wai-body:not(.dark) .wzx-title{color:#2E1065!important}
.wai-body.dark .brand-name .b{color:#EDE9FE!important}
.wai-body.dark .wai-input textarea{background:transparent;color:#EDE9FE}
/* full-page purple-blue gradient (beats theme.css !important) */
html body.wai-body{background-color:#120F2E!important;background-image:radial-gradient(1100px 620px at 50% -12%,rgba(124,58,237,.75),transparent 62%),radial-gradient(900px 600px at 105% 105%,rgba(37,99,235,.6),transparent 60%),radial-gradient(700px 500px at -5% 80%,rgba(168,85,247,.35),transparent 60%)!important;background-attachment:fixed!important;background-repeat:no-repeat!important}
html body.wai-body:not(.dark){background-color:#F5F3FF!important;background-image:radial-gradient(1100px 620px at 50% -12%,rgba(167,139,250,.55),transparent 62%),radial-gradient(900px 600px at 105% 105%,rgba(147,197,253,.55),transparent 60%)!important}
.wai-body.dark .wai-side{background:rgba(15,12,40,.55);backdrop-filter:blur(12px)}
.wai-body .wai-main{background:transparent}
