/* Workunoo support assistant (WU) widget styles. */
#wuWidget { --wu-a:#2563EB; --wu-b:#7C3AED; --wu-c:#06B6D4; --wu-ink:#0F172A; --wu-mut:#64748B; --wu-line:#E2E8F0; --wu-bg:#F8FAFC; font-family:inherit; }
#wuWidget [x-cloak] { display:none !important; }
#wuWidget button { font-family:inherit; }
/* orb */
.wu-orb { position:relative; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; color:#fff; flex-shrink:0; isolation:isolate; overflow:hidden; background:radial-gradient(circle at 30% 25%, #93C5FD 0%, #2563EB 38%, #7C3AED 78%, #4C1D95 100%); box-shadow:0 0 0 0 rgba(124,58,237,.45); }
.wu-orb::before { content:""; position:absolute; inset:-40%; background:conic-gradient(from 0deg, rgba(255,255,255,0), rgba(255,255,255,.55), rgba(6,182,212,.0) 35%, rgba(255,255,255,0) 60%, rgba(255,255,255,.35) 80%, rgba(255,255,255,0)); animation:wuSpin 6s linear infinite; z-index:-1; mix-blend-mode:soft-light; }
.wu-orb::after { content:""; position:absolute; inset:0; border-radius:50%; box-shadow:inset 0 -6px 12px rgba(0,0,0,.18), inset 0 4px 8px rgba(255,255,255,.35); }
.wu-orb i { font-size:inherit; filter:drop-shadow(0 1px 2px rgba(0,0,0,.25)); }
.wu-orb-lg { width:58px; height:58px; font-size:22px; animation:wuPulse 3.2s ease-out infinite; }
.wu-orb-md { width:38px; height:38px; font-size:16px; }
.wu-orb-xl { width:72px; height:72px; font-size:28px; animation:wuPulse 3.2s ease-out infinite; }
.wu-orb-think::before { animation-duration:1.1s; }
.wu-orb-think { animation:wuThinkPulse 1.2s ease-in-out infinite; }
@keyframes wuSpin { to { transform:rotate(360deg); } }
@keyframes wuPulse { 0% { box-shadow:0 0 0 0 rgba(124,58,237,.45); } 70% { box-shadow:0 0 0 14px rgba(124,58,237,0); } 100% { box-shadow:0 0 0 0 rgba(124,58,237,0); } }
@keyframes wuThinkPulse { 0%,100% { transform:scale(1); } 50% { transform:scale(1.08); } }
/* launcher */
#wuLauncher { position:fixed; bottom:22px; right:22px; width:58px; height:58px; border-radius:50%; border:none; padding:0; background:none; cursor:pointer; z-index:900; filter:drop-shadow(0 10px 18px rgba(76,29,149,.35)); transition:transform .15s; }
#wuLauncher:hover { transform:translateY(-2px) scale(1.04); }
#wuLauncher:focus-visible, #wuWidget button:focus-visible, #wuWidget a:focus-visible, #wuWidget input:focus-visible, #wuWidget textarea:focus-visible, #wuWidget select:focus-visible { outline:2px solid #fff; outline-offset:2px; box-shadow:0 0 0 4px rgba(37,99,235,.6); }
.wu-back { width:30px; height:32px; border:none; background:transparent; color:#fff; border-radius:9px; cursor:pointer; font-size:14px; opacity:.92; margin-right:-4px; flex-shrink:0; }
.wu-back:hover { background:rgba(255,255,255,.16); opacity:1; }
.wu-hd-btns button:disabled { opacity:.45; cursor:default; }
.wu-badge-pulse { animation:wuBadgePulse 1.6s ease-in-out infinite; }
@keyframes wuBadgePulse { 0%,100% { transform:scale(1); box-shadow:0 0 0 0 rgba(220,38,38,.55); } 50% { transform:scale(1.14); box-shadow:0 0 0 7px rgba(220,38,38,0); } }
#wuLauncher.wu-ping .wu-orb-lg { animation:wuPulse 1.4s ease-out infinite; }
.wu-offline { background:#FFFBEB; color:#92400E; border:1px solid #FDE68A; border-radius:10px; padding:6px 10px; font-size:11.5px; font-weight:600; }
.wu-navbar { display:flex; align-items:center; gap:6px; padding:7px 12px 0; background:#fff; border-top:1px solid var(--wu-line); flex-shrink:0; }
.wu-navbar .wu-count { margin-left:auto; font-size:10.5px; color:#B45309; font-weight:700; }
.wu-chip-menu { border-color:#A5B4FC; background:#EEF2FF; }
.wu-jump-row { display:flex; justify-content:center; padding:6px 12px; background:var(--wu-bg); border-top:1px solid var(--wu-line); flex-shrink:0; animation:wuIn .25s ease-out both; }
.wu-jump { display:inline-flex; align-items:center; gap:7px; border:1px solid #C7D2FE; background:#fff; color:#4338CA; font-size:12px; font-weight:700; padding:6px 14px; border-radius:18px; box-shadow:0 4px 12px rgba(79,70,229,.16); cursor:pointer; }
.wu-jump:hover { background:#EEF2FF; }
.wu-shake { animation:wuShake .35s; }
@keyframes wuShake { 0%,100% { transform:translateX(0); } 25% { transform:translateX(-4px); } 75% { transform:translateX(4px); } }
.wu-send-idle { opacity:.55; }
.wu-badge { position:absolute; top:-2px; right:-2px; background:#DC2626; color:#fff; font-size:10px; font-weight:800; min-width:19px; height:19px; border-radius:10px; display:flex; align-items:center; justify-content:center; padding:0 5px; border:2px solid #fff; }
#wuNudge { position:fixed; bottom:92px; right:22px; max-width:250px; background:#fff; border:1px solid var(--wu-line); border-radius:14px 14px 4px 14px; padding:10px 28px 10px 12px; font-size:12.5px; font-weight:600; color:var(--wu-ink); box-shadow:0 12px 30px rgba(15,23,42,.16); z-index:899; cursor:pointer; }
.wu-nudge-x { position:absolute; top:3px; right:5px; border:none; background:none; font-size:16px; color:var(--wu-mut); cursor:pointer; line-height:1; }
/* panel */
#wuPanel { position:fixed; bottom:92px; right:22px; width:392px; max-width:calc(100vw - 24px); height:min(660px, calc(100vh - 116px)); background:#fff; border-radius:20px; box-shadow:0 28px 70px rgba(15,23,42,.28), 0 0 0 1px rgba(15,23,42,.06); z-index:900; display:flex; flex-direction:column; overflow:hidden; }
#wuHeader { display:flex; align-items:center; gap:11px; padding:13px 14px; color:#fff; flex-shrink:0; background:linear-gradient(120deg,#1D4ED8,#6D28D9 60%,#7C3AED); background-size:200% 100%; animation:wuHd 14s ease-in-out infinite alternate; }
@keyframes wuHd { to { background-position:100% 0; } }
.wu-hd-text { flex:1; min-width:0; }
.wu-hd-title { font-weight:800; font-size:15px; display:flex; align-items:center; gap:7px; }
.wu-ai-pill { font-size:9.5px; font-weight:800; letter-spacing:.4px; text-transform:uppercase; background:rgba(255,255,255,.18); border:1px solid rgba(255,255,255,.28); padding:2px 7px; border-radius:20px; }
.wu-hd-sub { font-size:11.5px; opacity:.92; display:flex; align-items:center; gap:6px; margin-top:1px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.wu-hd-btns { display:flex; gap:2px; }
.wu-hd-btns button { width:32px; height:32px; border:none; background:transparent; color:#fff; border-radius:9px; cursor:pointer; font-size:14px; opacity:.9; }
.wu-hd-btns button:hover { background:rgba(255,255,255,.16); opacity:1; }
.wu-live-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; display:inline-block; }
.wu-live-dot.on { background:#4ADE80; box-shadow:0 0 0 0 rgba(74,222,128,.6); animation:wuLive 2s infinite; }
.wu-live-dot.off { background:#FBBF24; }
.wu-live-dot.big { width:10px; height:10px; }
@keyframes wuLive { 0% { box-shadow:0 0 0 0 rgba(74,222,128,.55); } 70% { box-shadow:0 0 0 6px rgba(74,222,128,0); } 100% { box-shadow:0 0 0 0 rgba(74,222,128,0); } }
/* messages */
#wuMessages { flex:1; overflow-y:auto; padding:16px 14px 10px; display:flex; flex-direction:column; gap:12px; background:var(--wu-bg); overscroll-behavior:contain; overflow-anchor:none; }
.wu-hero { text-align:center; padding:6px 6px 0; animation:aiPop .4s ease-out; }
.wu-hero .wu-orb-xl { margin:4px auto 10px; display:flex; }
.wu-hero h3 { font-size:18px; font-weight:800; color:var(--wu-ink); margin:0 0 4px; }
.wu-hero p { font-size:12.5px; color:var(--wu-mut); line-height:1.55; margin:0 0 12px; }
.wu-starters { display:flex; flex-wrap:wrap; gap:7px; justify-content:center; margin-bottom:12px; }
.wu-priv { font-size:11px; color:var(--wu-mut); background:#fff; border:1px dashed var(--wu-line); border-radius:10px; padding:7px 10px; }
.wu-guest-cta { display:flex; gap:8px; margin-top:12px; }
.wu-guest-cta .wu-btn { flex:1; justify-content:center; text-align:center; }
.wu-row { display:flex; gap:8px; align-items:flex-end; animation:wuIn .3s ease-out both; }
.wu-row-user { justify-content:flex-end; }
@keyframes wuIn { from { opacity:0; transform:translateY(8px) scale(.985); } to { opacity:1; transform:none; } }
.wu-av { width:28px; height:28px; border-radius:50%; flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; color:#fff; font-size:12px; background:linear-gradient(135deg,#2563EB,#7C3AED); margin-bottom:2px; }
.wu-av-admin { background:linear-gradient(135deg,#0EA5E9,#2563EB); }
.wu-av-sm { width:26px; height:26px; font-size:11px; margin:0; }
.wu-col { display:flex; flex-direction:column; min-width:0; max-width:calc(100% - 38px); gap:6px; }
.wu-row-user .wu-col { align-items:flex-end; max-width:86%; }
.wu-bubble { padding:10px 13px; border-radius:16px; font-size:13.2px; line-height:1.55; word-break:break-word; overflow-wrap:anywhere; }
.wu-bubble-wu { background:#fff; color:var(--wu-ink); border:1px solid var(--wu-line); border-bottom-left-radius:5px; box-shadow:0 1px 2px rgba(15,23,42,.04); }
.wu-bubble-user { background:linear-gradient(135deg,#2563EB,#4F46E5); color:#fff; border-bottom-right-radius:5px; box-shadow:0 4px 12px rgba(37,99,235,.25); }
.wu-bubble-admin { background:#EEF2FF; color:#312E81; border:1px solid #C7D2FE; border-bottom-left-radius:5px; }
.wu-tag { font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.35px; opacity:.7; margin-bottom:3px; }
.wu-typed, .wu-text { white-space:pre-wrap; }
.wu-text { white-space:normal; }
.wu-text a { color:inherit; text-decoration:underline; }
.wu-att { display:block; text-decoration:none; color:inherit; }
.wu-att img { max-width:100%; max-height:190px; border-radius:10px; display:block; margin-bottom:6px; background:var(--wu-line); }
.wu-att-file { font-size:11.5px; font-weight:700; text-decoration:underline; }
.wu-dots { display:flex; gap:4px; padding:12px 14px; }
.wu-dots span { width:6px; height:6px; border-radius:50%; background:#94A3B8; animation:wuDot 1.2s infinite ease-in-out; }
.wu-dots span:nth-child(2) { animation-delay:.2s; } .wu-dots span:nth-child(3) { animation-delay:.4s; }
@keyframes wuDot { 0%,60%,100% { transform:translateY(0); opacity:.5; } 30% { transform:translateY(-4px); opacity:1; } }
.wu-think { font-size:12px; border-radius:14px; border-bottom-left-radius:5px; }
/* source + tools */
.wu-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; padding:0 2px; }
.wu-spark { display:inline-flex; align-items:center; gap:5px; font-size:10.5px; font-weight:700; padding:2px 8px; border-radius:20px; background:linear-gradient(135deg,rgba(37,99,235,.10),rgba(124,58,237,.13)); color:#5B21B6; }
.wu-spark i { font-size:10px; animation:wuTwinkle 3.4s ease-in-out infinite; }
@keyframes wuTwinkle { 0%,100% { opacity:.75; transform:scale(1); } 50% { opacity:1; transform:scale(1.18); } }
.wu-tools { display:inline-flex; align-items:center; gap:2px; margin-left:auto; }
.wu-tool { border:none; background:none; color:#94A3B8; font-size:12.5px; padding:4px 6px; border-radius:7px; cursor:pointer; }
.wu-tool:hover { background:#EEF2FF; color:#4338CA; }
.wu-tool.on-up { color:#16A34A; background:#DCFCE7; } .wu-tool.on-down { color:#DC2626; background:#FEE2E2; }
.wu-solved { font-size:11px; font-weight:700; color:#047857; } .wu-solved:hover { background:#DCFCE7; color:#047857; }
.wu-fb { background:#fff; border:1px solid var(--wu-line); border-radius:12px; padding:10px; }
.wu-fb-t { font-size:12px; font-weight:700; color:var(--wu-ink); margin-bottom:7px; }
.wu-fb-chips { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:7px; }
.wu-fb textarea, .wu-csat textarea, .wu-form textarea { width:100%; border:1px solid var(--wu-line); border-radius:10px; padding:8px 10px; font:inherit; font-size:12.5px; resize:none; outline:none; background:#fff; }
.wu-fb textarea:focus, .wu-csat textarea:focus, .wu-form textarea:focus, .wu-form input:focus, .wu-form select:focus { border-color:#818CF8; box-shadow:0 0 0 3px rgba(99,102,241,.15); }
.wu-fb-act { display:flex; justify-content:flex-end; gap:6px; margin-top:7px; }
/* chips + buttons */
.wu-chips { display:flex; flex-wrap:wrap; gap:6px; animation:wuIn .35s ease-out both; }
.wu-chip { border:1.5px solid #C7D2FE; background:#fff; color:#3730A3; font-size:12px; font-weight:600; padding:6px 12px; border-radius:18px; cursor:pointer; line-height:1.3; text-align:left; transition:all .15s; }
.wu-chip:hover:not(:disabled) { background:linear-gradient(135deg,#EEF2FF,#F5F3FF); border-color:#818CF8; transform:translateY(-1px); }
.wu-chip:disabled { opacity:.5; cursor:default; }
.wu-chip.on { background:#4F46E5; color:#fff; border-color:#4F46E5; }
.wu-chip-lg { font-size:12.5px; padding:8px 14px; box-shadow:0 1px 3px rgba(79,70,229,.1); }
.wu-chip-sm { font-size:11px; padding:4px 9px; }
.wu-btn { display:inline-flex; align-items:center; gap:6px; border:none; background:linear-gradient(135deg,#2563EB,#6D28D9); color:#fff; font-size:13px; font-weight:700; padding:9px 16px; border-radius:11px; cursor:pointer; text-decoration:none; transition:transform .12s, box-shadow .15s; box-shadow:0 4px 12px rgba(79,70,229,.28); }
.wu-btn:hover:not(:disabled) { transform:translateY(-1px); box-shadow:0 6px 16px rgba(79,70,229,.35); }
.wu-btn:disabled { opacity:.55; cursor:default; box-shadow:none; }
.wu-btn-ghost { background:#fff; color:#3730A3; border:1.5px solid #C7D2FE; box-shadow:none; }
.wu-btn-sm { font-size:12px; padding:6px 12px; border-radius:9px; } .wu-btn-xs { font-size:11px; padding:4px 9px; border-radius:8px; box-shadow:none; }
.wu-btn-block { width:100%; justify-content:center; margin-top:10px; }
.wu-link { border:none; background:none; color:#4F46E5; font-size:12px; font-weight:700; cursor:pointer; padding:4px 2px; }
.wu-link:hover { text-decoration:underline; }
.wu-actions { display:flex; flex-wrap:wrap; gap:6px; }
.wu-pill { font-size:10.5px; font-weight:800; padding:2px 8px; border-radius:20px; white-space:nowrap; flex-shrink:0; }
/* cards */
.wu-cards { display:flex; flex-direction:column; gap:8px; }
.wu-card { background:#fff; border:1px solid var(--wu-line); border-radius:14px; padding:11px 12px; position:relative; overflow:hidden; animation:wuIn .35s ease-out both; box-shadow:0 2px 8px rgba(15,23,42,.04); }
.wu-card::before { content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:linear-gradient(180deg,#2563EB,#7C3AED); }
.wu-card-hd { display:flex; align-items:center; gap:7px; font-weight:800; font-size:12.5px; color:var(--wu-ink); margin-bottom:8px; }
.wu-card-ico { font-size:15px; }
.wu-kv { margin:0; }
.wu-kv-r { display:flex; justify-content:space-between; gap:10px; font-size:12px; padding:5px 0; border-bottom:1px dashed #EEF2F7; }
.wu-kv-r:last-child { border-bottom:none; }
.wu-kv dt { color:var(--wu-mut); } .wu-kv dd { margin:0; font-weight:700; color:var(--wu-ink); text-align:right; }
.wu-bar-wrap { margin-bottom:8px; }
.wu-bar { height:9px; border-radius:6px; background:#EEF2F7; overflow:hidden; }
.wu-bar i { display:block; height:100%; border-radius:6px; animation:wuBar 1s cubic-bezier(.2,.8,.2,1) both; position:relative; }
.wu-bar i::after { content:""; position:absolute; inset:0; background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent); animation:aiSheen 2.2s ease-in-out infinite; }
@keyframes wuBar { from { width:0 !important; } }
.tone-blue { background:linear-gradient(90deg,#2563EB,#7C3AED); } .tone-green { background:linear-gradient(90deg,#16A34A,#22C55E); }
.tone-amber { background:linear-gradient(90deg,#F59E0B,#FBBF24); } .tone-red { background:linear-gradient(90deg,#DC2626,#F87171); }
.wu-bar-lbl { font-size:11px; color:var(--wu-mut); font-weight:700; margin-top:4px; }
.wu-items { margin-top:6px; display:flex; flex-direction:column; gap:5px; }
.wu-items-t { font-size:10.5px; font-weight:800; text-transform:uppercase; letter-spacing:.4px; color:#94A3B8; margin-top:2px; }
.wu-it { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:7px 9px; background:var(--wu-bg); border-radius:9px; text-decoration:none; color:inherit; font-size:12px; }
a.wu-it:hover { background:#EEF2FF; }
.wu-it-main { display:flex; flex-direction:column; min-width:0; flex:1; }
.wu-it-t { font-weight:700; color:var(--wu-ink); overflow:hidden; text-overflow:ellipsis; }
.wu-it small { color:var(--wu-mut); font-size:10.8px; }
/* picker */
.wu-picker { background:#fff; border:1px solid var(--wu-line); border-radius:14px; padding:12px; animation:aiPop .3s ease-out; }
.wu-picker-t { font-size:12px; font-weight:800; color:var(--wu-ink); margin-bottom:9px; }
.wu-picker-grid { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-bottom:6px; }
.wu-cat { display:flex; align-items:center; gap:8px; border:1px solid var(--wu-line); background:var(--wu-bg); border-radius:11px; padding:10px; font-size:12.2px; font-weight:700; color:var(--wu-ink); cursor:pointer; text-align:left; transition:all .15s; }
.wu-cat:hover { border-color:#818CF8; background:#EEF2FF; transform:translateY(-1px); }
.wu-cat span:first-child { font-size:16px; }
/* form */
.wu-form { background:#fff; border:1px solid var(--wu-line); border-radius:16px; padding:13px; animation:aiPop .3s ease-out; box-shadow:0 8px 24px rgba(15,23,42,.08); }
.wu-form-hd { display:flex; gap:10px; align-items:center; margin-bottom:10px; }
.wu-form-ico { width:36px; height:36px; border-radius:11px; background:linear-gradient(135deg,#DBEAFE,#EDE9FE); display:flex; align-items:center; justify-content:center; font-size:17px; flex-shrink:0; }
.wu-form-hd b { font-size:13.5px; color:var(--wu-ink); display:block; } .wu-form-hd small { font-size:11.3px; color:var(--wu-mut); line-height:1.4; display:block; }
.wu-fld { margin-bottom:9px; flex:1; }
.wu-fld label { display:block; font-size:11px; font-weight:800; color:#475569; margin-bottom:4px; text-transform:uppercase; letter-spacing:.3px; }
.wu-fld input, .wu-fld select { width:100%; border:1px solid var(--wu-line); border-radius:10px; padding:9px 11px; font:inherit; font-size:13px; outline:none; background:#fff; }
.wu-seg { display:grid; grid-template-columns:repeat(4,1fr); gap:5px; }
.wu-seg button { border:1.5px solid var(--wu-line); background:#fff; border-radius:9px; padding:7px 4px; font-size:11.5px; font-weight:700; color:#475569; cursor:pointer; }
.wu-seg button.on { background:linear-gradient(135deg,#2563EB,#6D28D9); color:#fff; border-color:transparent; }
.wu-file { display:flex; align-items:center; gap:8px; border:1.5px dashed #C7D2FE; border-radius:10px; padding:9px 11px; font-size:12px; font-weight:600; color:#4338CA; cursor:pointer; text-transform:none !important; letter-spacing:0 !important; }
.wu-file:hover { background:#EEF2FF; }
.wu-err { background:#FEF2F2; color:#B42318; font-size:12px; padding:8px 10px; border-radius:9px; margin-bottom:8px; border:1px solid #FECACA; }
.wu-form-act { display:flex; justify-content:flex-end; gap:8px; }
/* csat */
.wu-csat { background:#fff; border:1px solid #DDD6FE; border-radius:16px; padding:14px; text-align:center; animation:aiPop .35s ease-out; box-shadow:0 8px 24px rgba(124,58,237,.1); }
.wu-csat-t { font-weight:800; font-size:14px; color:var(--wu-ink); margin-bottom:8px; }
.wu-stars { display:flex; justify-content:center; gap:4px; }
.wu-stars button { border:none; background:none; font-size:32px; line-height:1; color:#CBD5E1; cursor:pointer; transition:transform .12s, color .12s; padding:0 2px; }
.wu-stars button.on { color:#F59E0B; transform:scale(1.12); text-shadow:0 2px 8px rgba(245,158,11,.4); }
.wu-star-lbl { font-size:12px; font-weight:700; color:#B45309; min-height:18px; margin:2px 0 6px; }
.wu-csat textarea { margin-bottom:8px; text-align:left; }
.wu-thanks { display:flex; gap:11px; align-items:center; text-align:left; } .wu-thanks-ico { font-size:30px; animation:wuPulse 2s infinite; border-radius:50%; }
.wu-thanks b { display:block; font-size:14px; color:var(--wu-ink); } .wu-thanks small { font-size:11.8px; color:var(--wu-mut); }
/* tickets view */
#wuTickets { flex:1; overflow-y:auto; background:var(--wu-bg); display:flex; flex-direction:column; }
.wu-tk-head { display:flex; align-items:center; justify-content:space-between; padding:11px 14px; background:#fff; border-bottom:1px solid var(--wu-line); font-size:13px; position:sticky; top:0; z-index:2; }
.wu-tk-body { padding:12px 14px; display:flex; flex-direction:column; gap:9px; }
.wu-tk { background:#fff; border:1px solid var(--wu-line); border-radius:13px; padding:11px 12px; animation:wuIn .3s ease-out both; }
.wu-tk-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:3px; }
.wu-tk-no { font-size:11px; font-weight:800; color:#4F46E5; letter-spacing:.3px; }
.wu-tk-title { font-weight:700; font-size:13px; color:var(--wu-ink); } .wu-tk-sub { font-size:11px; color:var(--wu-mut); margin:2px 0 8px; }
.wu-tk-act { display:flex; justify-content:flex-end; }
.wu-empty { text-align:center; color:var(--wu-mut); font-size:13px; padding:34px 20px; } .wu-empty small { display:block; font-size:11.5px; margin-top:4px; line-height:1.5; }
.wu-skel-wrap { padding:10px 4px; }
/* bars + composer */
.wu-human-bar { display:flex; align-items:center; gap:9px; padding:8px 14px; background:#EFF6FF; border-top:1px solid #BFDBFE; flex-shrink:0; }
.wu-hb-t { flex:1; min-width:0; } .wu-hb-t b { display:block; font-size:12px; color:#1E3A8A; } .wu-hb-t small { display:block; font-size:11px; color:#475569; line-height:1.35; }
.wu-limit { font-size:11.5px; color:#B42318; background:#FEF3F2; padding:8px 14px; border-top:1px solid #FECDCA; flex-shrink:0; }
.wu-focus { display:flex; align-items:center; justify-content:space-between; font-size:11.5px; color:#4338CA; background:#EEF2FF; padding:5px 14px; border-top:1px solid #E0E7FF; flex-shrink:0; }
.wu-focus button { border:none; background:none; font-size:16px; color:#4338CA; cursor:pointer; }
#wuInputRow { display:flex; align-items:center; gap:7px; padding:8px 12px 8px; background:#fff; flex-shrink:0; }
#wuInputRow input[type=text] { flex:1; min-width:0; border:1.5px solid var(--wu-line); border-radius:22px; padding:10px 15px; font:inherit; font-size:13.5px; outline:none; background:var(--wu-bg); transition:border-color .15s, background .15s; }
#wuInputRow input[type=text]:focus { border-color:#818CF8; background:#fff; }
.wu-attach { width:36px; height:36px; border-radius:50%; background:#F1F5F9; color:#475569; display:flex; align-items:center; justify-content:center; cursor:pointer; flex-shrink:0; font-size:14px; transition:background .15s; position:relative; }
.wu-attach:hover { background:#E0E7FF; color:#4338CA; } .wu-attach.busy { opacity:.5; pointer-events:none; }
.wu-send { width:38px; height:38px; border-radius:50%; border:none; background:linear-gradient(135deg,#2563EB,#7C3AED); color:#fff; cursor:pointer; flex-shrink:0; font-size:14px; box-shadow:0 4px 12px rgba(79,70,229,.35); transition:transform .12s; }
.wu-send:hover:not(:disabled) { transform:scale(1.07); } .wu-send:disabled { opacity:.4; cursor:default; box-shadow:none; }
.wu-foot { padding:0 12px 11px; background:#fff; flex-shrink:0; }
.wu-human { width:100%; display:flex; align-items:center; gap:10px; border:1.5px solid var(--wu-line); background:linear-gradient(135deg,#F8FAFC,#F5F3FF); border-radius:13px; padding:9px 12px; cursor:pointer; text-align:left; color:var(--wu-ink); transition:all .15s; }
.wu-human:hover:not(:disabled) { border-color:#A5B4FC; box-shadow:0 4px 14px rgba(79,70,229,.12); }
.wu-human:disabled { opacity:.75; cursor:default; }
.wu-human-t { flex:1; min-width:0; } .wu-human-t b { display:block; font-size:12.5px; } .wu-human-t small { display:block; font-size:11px; color:var(--wu-mut); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.wu-human > i { color:#6366F1; font-size:12px; }
/* mobile: full screen */
html.wu-lock, html.wu-lock body { overflow:hidden !important; }
@media (max-width:640px) {
  #wuPanel { inset:0; width:100%; max-width:none; height:100%; height:100dvh; border-radius:0; bottom:0; right:0; }
  #wuLauncher { right:16px; bottom:16px; } #wuNudge { right:16px; bottom:84px; }
  #wuInputRow input[type=text], .wu-fld input, .wu-fld select, .wu-fld textarea, .wu-form textarea { font-size:16px; }
  #wuHeader { padding-top:max(13px, env(safe-area-inset-top)); } .wu-foot { padding-bottom:max(11px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) { #wuWidget *, #wuWidget *::before, #wuWidget *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

/* WU mascot as the avatar */
.wu-orb.wu-orb-img{background:#fff;box-shadow:0 0 0 2px #fff,0 6px 16px rgba(37,99,235,.28)}
.wu-orb.wu-orb-img::before,.wu-orb.wu-orb-img::after{display:none}
.wu-orb-img img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}

/* Round 25: transparent PNG mascot, soft float, ring, online dot */
.wu-orb.wu-orb-img{background:transparent!important;box-shadow:0 10px 26px -6px rgba(37,99,235,.55),0 0 0 3px rgba(255,255,255,.95)}
#wuLauncher{position:fixed}
#wuLauncher .wu-orb-lg.wu-orb-img{animation:wuPulse 3.2s ease-out infinite,wuFloat 4.5s ease-in-out infinite}
@keyframes wuFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
#wuLauncher:hover .wu-orb-lg.wu-orb-img{transform:scale(1.07) rotate(-4deg);transition:transform .25s cubic-bezier(.2,.8,.2,1)}
#wuLauncher:hover .wu-orb-lg img{filter:saturate(1.15)}
.wu-online{position:absolute;right:2px;bottom:4px;width:15px;height:15px;border-radius:50%;background:#22c55e;border:3px solid #fff;box-shadow:0 0 0 0 rgba(34,197,94,.6);animation:wuOn 2.2s infinite}
@keyframes wuOn{70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
@media(prefers-reduced-motion:reduce){#wuLauncher .wu-orb-lg.wu-orb-img,.wu-online{animation:none}}

/* open state: clean gradient circle with the X, never the mascot underneath */
#wuLauncher .wu-orb-lg:not(.wu-orb-img){background:linear-gradient(135deg,#2563eb,#7c3aed);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 10px 24px -6px rgba(79,70,229,.6);animation:none}
#wuLauncher .wu-orb-lg img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
#wuLauncher .wu-orb-lg [x-cloak]{display:none!important}
