model-viewer{background-color:#f0f0f0;border-radius:.5rem;width:100%;height:100%;min-height:400px}model-viewer::part(default-progress-bar){background-color:#8b5cf6;border-radius:2px;height:4px}model-viewer::part(default-progress-mask){background:rgba(0,0,0,.1)}model-viewer::part(default-ar-button){display:none}model-viewer .interaction-prompt{color:#fff;pointer-events:none;z-index:10;background-color:rgba(0,0,0,.7);border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:12px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}model-viewer .hotspot{background:rgba(139,92,246,.8);border:2px solid #fff;border-radius:50%;width:20px;height:20px;transition:all .3s;display:block;box-shadow:0 2px 4px rgba(0,0,0,.25)}model-viewer .hotspot:hover{background:#8b5cf6;transform:scale(1.2)}model-viewer[loading=eager]{opacity:1;transition:opacity .3s ease-in-out}model-viewer[loading=lazy]{opacity:0}model-viewer[loading=lazy][loaded]{opacity:1}@media (max-width:768px){model-viewer{min-height:300px}}@media (min-width:1024px){model-viewer{min-height:500px}}
:root{--ai:#7c3aed;--ai-2:#6366f1;--ai-bright:#a855f7;--ai-on:#fff;--ai-grad:linear-gradient(135deg,#a855f7 0%,#7c3aed 100%);--ai-grad-bar:linear-gradient(90deg,#8b5cf6 0%,#6366f1 100%);--ai-soft:#f5f1fe;--ai-soft-2:#eee8fd;--ai-soft-border:#e4d9fb;--ai-soft-fg:#6d28d9;--ai-ring:rgba(124,58,237,.45);--ai-panel:#fff;--ai-panel-2:#fbfaff}.dark,[data-theme=dark]{--ai:#a78bfa;--ai-2:#818cf8;--ai-bright:#c4b5fd;--ai-on:#0b0f19;--ai-grad:linear-gradient(135deg,#c4b5fd 0%,#8b5cf6 100%);--ai-grad-bar:linear-gradient(90deg,#a78bfa 0%,#818cf8 100%);--ai-soft:#1b1633;--ai-soft-2:#221a3d;--ai-soft-border:#36275f;--ai-soft-fg:#c4b5fd;--ai-ring:rgba(167,139,250,.5);--ai-panel:#111827;--ai-panel-2:#141a29}.ai-avatar{background:var(--ai-grad);color:#fff;box-shadow:0 6px 18px -4px var(--ai-ring);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.ai-dot{background:#22c55e;border-radius:99px;width:7px;height:7px}.ai-dot--streaming{background:var(--ai);animation:1.1s ease-in-out infinite ai-dot-pulse}.ai-dot--error{background:rgba(244,63,94,.65);animation:none}@keyframes ai-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}.ai-cursor{color:var(--ai);-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-left:1px;animation:1s steps(2,start) infinite ai-cursor-blink;display:inline-block}@keyframes ai-cursor-blink{50%{opacity:0}}.ai-widget{background:var(--ai-panel);border:1px solid hsl(var(--border));border-radius:14px;margin:6px 0;overflow:hidden}.ai-widget-head{border-bottom:1px solid hsl(var(--border));background:var(--ai-panel-2);align-items:center;gap:10px;padding:12px 14px;display:flex}.ai-widget-head .ttl{color:hsl(var(--foreground));font-size:13.5px;font-weight:700}.ai-widget-body{padding:14px}[data-testid=ai-assistant-message-list],[data-testid=ai-assistant-message-list] :not(button):not(a):not([role=button]):not(svg):not(path):not(img),[data-testid=assistant-thread-view],[data-testid=assistant-thread-view] :not(button):not(a):not([role=button]):not(svg):not(path):not(img){-webkit-user-select:text;-moz-user-select:text;user-select:text;cursor:auto}.ai-working-banner{border:1px solid var(--ai-soft-border);background:var(--ai-soft);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.ai-progress-track{background:hsl(var(--muted));border-radius:99px;height:4px;overflow:hidden}.ai-progress-fill{background:var(--ai-grad-bar);height:100%;transition:width .3s}.ai-spin{animation:.9s linear infinite ai-spin}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-steps{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.ai-step{color:hsl(var(--muted-foreground));align-items:center;gap:8px;font-size:12.5px;display:flex}.ai-step .ic{background:hsl(var(--muted));width:20px;height:20px;color:hsl(var(--muted-foreground));border-radius:99px;flex-shrink:0;place-items:center;display:grid}.ai-step.run .ic{background:var(--ai-soft);color:var(--ai-soft-fg)}.ai-step.done .ic{background:var(--ai);color:#fff}.ai-step.run{color:var(--ai-soft-fg);font-weight:600}.ai-step.done{color:hsl(var(--foreground))}.ai-chip{background:var(--ai-panel);color:hsl(var(--foreground));border:1px solid hsl(var(--border));cursor:pointer;border-radius:99px;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:600;transition:all .12s;display:inline-flex}.ai-chip:hover{border-color:var(--ai-soft-border);background:var(--ai-soft);color:var(--ai-soft-fg)}.ai-chip.on{background:var(--ai-soft);color:var(--ai-soft-fg);border-color:var(--ai-soft-border)}.ai-iconbtn{width:30px;height:30px;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;transition:background .12s,color .12s;display:grid}.ai-iconbtn:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.ph{background:linear-gradient(135deg,hsl(var(--muted)),hsl(var(--muted)/.6));color:hsl(var(--muted-foreground));place-items:center;display:grid;overflow:hidden}.ph[data-tone="1"]{background:linear-gradient(135deg,#f5efe6,#e6dccd)}.ph[data-tone="2"]{background:linear-gradient(135deg,#d9c9a8,#bda775)}.ph[data-tone="3"]{background:linear-gradient(135deg,#a8b0a3,#7d8a78)}