.ace,.ace-launcher{--ace-darkest:#0c1929;--ace-dark:#1e3a5f;--ace-darkmid:#0c4a6e;--ace-mid:#0e7490;--ace-midlight:#0891b2;--ace-light:#06b6d4;--ace-bright:#22d3ee;--ace-brightest:#67e8f9;--ace-white:#fff;--ace-glow:#22d3ee80}.ace[data-ace-theme=aurora],.ace-launcher[data-ace-theme=aurora]{--ace-darkest:#0c1a0c;--ace-dark:#14532d;--ace-darkmid:#166534;--ace-mid:#15803d;--ace-midlight:#16a34a;--ace-light:#22c55e;--ace-bright:#4ade80;--ace-brightest:#86efac;--ace-glow:#4ade8080}.ace[data-ace-theme=frosted],.ace-launcher[data-ace-theme=frosted]{--ace-darkest:#1e2a3a;--ace-dark:#2d3f52;--ace-darkmid:#3d5166;--ace-mid:#5a7189;--ace-midlight:#7a9ab8;--ace-light:#9ec0de;--ace-bright:#b8d4ea;--ace-brightest:#d6e8f5;--ace-glow:#9ec0de80}.ace{--accent:#22d3ee;--accent-alt:#06b6d4;--glow:linear-gradient(135deg, #22d3ee33, #8b5cf633);--frame:linear-gradient(135deg, #fff9, #67e8f966, #fff9);--frame-shadow:0 0 40px #22d3ee4d, 0 25px 50px #0003;--assistant-bubble:linear-gradient(135deg, #1e293b73, #0f172a6b);--text:#fff;z-index:9999;width:min(640px,100vw - 48px);position:fixed;bottom:24px;right:24px}.ace[data-ace-theme=aurora]{--accent:#4ade80;--accent-alt:#22c55e;--glow:linear-gradient(135deg, #4ade8033, #22d3ee33)}.ace[data-ace-theme=frosted]{--accent:#9ec0de;--accent-alt:#5a7189;--text:#1e293b;--glow:linear-gradient(135deg, #94b4d240, #b8d4ea40);--frame:linear-gradient(135deg, #fffc, #b8d4ea66, #fffc);--frame-shadow:0 0 40px #94b4d24d, 0 25px 50px #0000001a;--assistant-bubble:#ffffff40}.ace-launcher{z-index:9998;cursor:pointer;background:radial-gradient(circle at 50% 35%, var(--ace-dark), var(--ace-darkest));width:64px;height:64px;box-shadow:0 4px 20px var(--ace-glow), 0 0 0 2px #ffffff26;border:none;border-radius:50%;place-items:center;padding:0;transition:transform .2s ease-out,box-shadow .2s ease-out;display:grid;position:fixed;bottom:24px;right:24px}.ace-launcher:hover{box-shadow:0 8px 28px var(--ace-glow), 0 0 0 2px #ffffff47;transform:translateY(-3px)scale(1.04)}.ace-launcher:active{transform:translateY(0)scale(.97)}.ace-launcher .ace-mini{box-shadow:none;background:0 0;padding:0}.ace-launcher-dot{border:2px solid var(--ace-darkest);background:#22c55e;border-radius:50%;width:13px;height:13px;position:absolute;top:4px;right:4px}.ace-launcher-dot:after{content:"";opacity:.5;background:#22c55e;border-radius:50%;animation:1.8s ease-out infinite acePulse;position:absolute;inset:-3px}@keyframes acePulse{0%{opacity:.6;transform:scale(.7)}to{opacity:0;transform:scale(2.2)}}.ace.is-minimized .ace-frame{display:none}.ace.is-minimized .ace-restore{display:grid}.ace-glow{filter:blur(20px);background:var(--glow);pointer-events:none;border-radius:40px;position:absolute;inset:-12px}.ace-frame{background:var(--frame);box-shadow:var(--frame-shadow);border-radius:32px;padding:3px;position:relative}.ace-inner-border{pointer-events:none;border:2px solid #ffffff4d;border-radius:30px;position:absolute;inset:2px}.ace-panel{border-radius:29px;flex-direction:column;min-height:420px;max-height:85vh;display:flex;position:relative;overflow:hidden}.ace-bg{pointer-events:none;position:absolute;inset:0}.ace-bg-base{-webkit-backdrop-filter:blur(12px);background:linear-gradient(135deg,#0f172a40 0%,#1e1b4b40 50%,#0f172a40 100%);position:absolute;inset:0}.ace-bg-a{opacity:.5;background:radial-gradient(at 20% 90%,#8b5cf680 0%,#0000 60%);width:100%;height:66%;position:absolute;bottom:0;left:0}.ace-bg-b{opacity:.5;background:radial-gradient(at 70% 40%,#06b6d473 0%,#0000 55%);width:100%;height:100%;position:absolute;top:0;right:0}.ace-stars{width:100%;height:100%;position:absolute;inset:0}.ace[data-ace-theme=aurora] .ace-bg-base{background:linear-gradient(135deg,#02061740,#1e1b4b40 50%,#02061740)}.ace[data-ace-theme=aurora] .ace-bg-a{opacity:.55;background:radial-gradient(at 15% 20%,#8b5cf680 0%,#0000 55%);height:66%}.ace[data-ace-theme=aurora] .ace-bg-b{background:radial-gradient(at 80% 85%,#4ade8073 0%,#0000 55%);height:66%;top:auto;bottom:0}.ace[data-ace-theme=aurora] .ace-stars{display:none}.ace[data-ace-theme=frosted] .ace-bg-base{background:#ffffff36}.ace[data-ace-theme=frosted] .ace-bg-a,.ace[data-ace-theme=frosted] .ace-bg-b{opacity:1;background:linear-gradient(135deg,#dbeafe4d 0%,#0000 50%,#dbeafe4d 100%);width:100%;height:100%;inset:0}.ace[data-ace-theme=frosted] .ace-stars{display:none}.ace-content{height:100%;color:var(--text);flex-direction:column;display:flex;position:relative}.ace-header{cursor:move;-webkit-backdrop-filter:blur(8px);background:#0f172a59;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.ace[data-ace-theme=frosted] .ace-header{background:#ffffff59}.ace-themes{background:#0003;border:1px solid #fff3;border-radius:999px;gap:2px;padding:2px;display:flex}.ace-themes button{cursor:pointer;width:24px;height:24px;color:var(--text);background:0 0;border:none;border-radius:50%;place-items:center;font-size:11px;display:grid}.ace-themes button[aria-pressed=true]{background:#ffffff4d}.ace-controls{gap:4px;display:flex}.ace-controls button{cursor:pointer;width:28px;height:28px;color:var(--text);background:0 0;border:none;border-radius:50%;place-items:center;transition:background .2s;display:grid}.ace-controls button:hover{background:#fff3}.ace-controls .ace-close:hover{background:#ef44444d}.ace-body{flex:1;min-height:0;display:flex}.ace-left{border-right:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:38%;padding:12px 8px;display:flex;overflow-y:auto}.ace[data-ace-theme=frosted] .ace-left{border-right-color:#94b4d233}.ace-right{flex-direction:column;flex:1;min-width:0;display:flex}.ace-messages{flex-direction:column;flex:1;gap:10px;padding:10px 12px;display:flex;overflow-y:auto}.ace-row{align-items:flex-end;gap:8px;display:flex}.ace-row.user{justify-content:flex-end}.ace-bubble{-webkit-backdrop-filter:blur(12px);max-width:80%;padding:8px 12px;font-size:12.5px;line-height:1.6;animation:.2s ease-out aceMessageIn}.ace-bubble.assistant{background:var(--assistant-bubble);color:var(--text);border:1px solid #fff3;border-radius:14px 14px 14px 4px}.ace-bubble.user{color:#fff;background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 60%, transparent), color-mix(in srgb, var(--accent-alt) 60%, transparent));border:1px solid #0000;border-radius:14px 14px 4px;font-weight:500}.ace-input{flex-shrink:0;align-items:center;gap:8px;padding:8px;display:flex}.ace-input input{color:var(--text);-webkit-backdrop-filter:blur(12px);background:#1e293b33;border:1px solid #fff3;border-radius:10px;outline:none;flex:1;padding:9px 13px;font-size:12.5px}.ace[data-ace-theme=frosted] .ace-input input{background:#ffffff1f;border-color:#94b4d266}.ace-input input::placeholder{opacity:.6;color:inherit}.ace-send{cursor:pointer;color:#fff;background:linear-gradient(135deg, var(--accent), var(--accent-alt));border:none;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;transition:transform .2s;display:grid}.ace-send:hover{transform:scale(1.05)}.ace-restore{cursor:pointer;background:radial-gradient(circle at 50% 35%, var(--ace-dark), var(--ace-darkest));width:60px;height:60px;box-shadow:0 4px 18px var(--ace-glow);border:none;border-radius:50%;place-items:center;padding:0;display:none;position:absolute;bottom:0;right:0}.ace-restore .ace-mini{box-shadow:none;background:0 0;padding:0}.ace-avatar{flex-direction:column;align-items:center;display:flex}.ace-figure{animation:5s ease-in-out infinite aceFloat}.ace-figure svg{filter:drop-shadow(0 0 20px var(--ace-glow))}.ace-head-group{transform-origin:bottom;animation:2.5s ease-in-out infinite aceHeadBob}.ace-mouth-talk{display:none}@keyframes aceFloat{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(-4px)rotate(-.5deg)}75%{transform:translate(4px)rotate(.5deg)}}@keyframes aceHeadBob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes aceMessageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ace-nametag{background:linear-gradient(135deg, var(--ace-darkest), var(--ace-dark));border:1.5px solid var(--ace-bright);box-shadow:0 0 12px var(--ace-glow);border-radius:.375rem;align-items:center;gap:2px;margin-top:.5rem;padding:.25rem .7rem;display:flex}.ace-nametag .l{letter-spacing:.1em;color:var(--ace-white);text-shadow:0 0 6px var(--ace-bright);font-size:.8rem;font-weight:700}.ace-nametag .d{color:var(--ace-brightest);font-size:.7rem}.ace-mini{background:linear-gradient(135deg, var(--ace-mid), var(--ace-bright));width:32px;height:32px;box-shadow:0 0 12px var(--ace-glow);border-radius:50%;flex-shrink:0;padding:2px;display:inline-flex}.ace-mini-disc{background:var(--ace-darkest);border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.ace-user{background:linear-gradient(135deg,#3b82f6,#6366f1);border-radius:50%;flex-shrink:0;width:32px;height:32px;padding:2px;display:inline-flex;box-shadow:0 4px 12px #6366f14d}.ace-user-initials{color:#bfdbfe;background:#1e293b;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:11px;font-weight:700;display:flex}.ace .f-darkest,.ace-launcher .f-darkest{fill:var(--ace-darkest)}.ace .f-dark,.ace-launcher .f-dark{fill:var(--ace-dark)}.ace .f-bright,.ace-launcher .f-bright{fill:var(--ace-bright)}.ace .f-brightest,.ace-launcher .f-brightest{fill:var(--ace-brightest)}.ace .s-midlight,.ace-launcher .s-midlight{stroke:var(--ace-midlight)}.ace .s-bright,.ace-launcher .s-bright{stroke:var(--ace-bright)}.ace .s-brightest,.ace-launcher .s-brightest{stroke:var(--ace-brightest)}.ace .s-white,.ace-launcher .s-white{stroke:var(--ace-white)}.ace .st-darkest{stop-color:var(--ace-darkest)}.ace .st-dark{stop-color:var(--ace-dark)}.ace .st-darkmid{stop-color:var(--ace-darkmid)}.ace .st-mid{stop-color:var(--ace-mid)}.ace .st-midlight{stop-color:var(--ace-midlight)}.ace .st-light{stop-color:var(--ace-light)}.ace .st-bright{stop-color:var(--ace-bright)}.ace .st-brightest{stop-color:var(--ace-brightest)}.ace .st-white{stop-color:var(--ace-white)}@media (width<=480px){.ace{width:calc(100vw - 32px);bottom:16px;right:16px}.ace-left{width:40%}.ace-launcher{bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){.ace *,.ace-launcher *,.ace-figure,.ace-head-group{transition-duration:.01ms!important;animation:none!important}}@media print{.ace,.ace-launcher{display:none!important}}.ace-options{flex-direction:column;gap:6px;margin-top:2px;display:flex}.ace-option{text-align:left;cursor:pointer;color:var(--text);-webkit-backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff40;border-radius:12px;padding:9px 13px;font-size:12.5px;line-height:1.4;transition:background .15s,transform .15s,border-color .15s}.ace-option:hover{border-color:var(--accent);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 28%, transparent), color-mix(in srgb, var(--accent-alt) 28%, transparent));transform:translate(2px)}.ace[data-ace-theme=frosted] .ace-option{background:#ffffff73;border-color:#94b4d266}.ace-form{-webkit-backdrop-filter:blur(10px);background:#0f172a40;border:1px solid #fff3;border-radius:14px;flex-direction:column;gap:7px;margin-top:4px;padding:11px;display:flex}.ace[data-ace-theme=frosted] .ace-form{background:#fff6;border-color:#94b4d259}.ace-form input,.ace-form textarea{width:100%;color:var(--text);background:#1e293b4d;border:1px solid #ffffff38;border-radius:9px;outline:none;padding:8px 11px;font-size:12.5px}.ace[data-ace-theme=frosted] .ace-form input,.ace[data-ace-theme=frosted] .ace-form textarea{background:#ffffffb3;border-color:#94b4d266}.ace-form input::placeholder,.ace-form textarea::placeholder{color:inherit;opacity:.55}.ace-form input:focus,.ace-form textarea:focus{border-color:var(--accent)}.ace-form textarea{resize:vertical;min-height:58px}.ace-form-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg, var(--accent), var(--accent-alt));border:none;border-radius:10px;margin-top:2px;padding:9px;font-size:12.5px;font-weight:600;transition:transform .15s,opacity .15s}.ace-form-submit:hover{transform:translateY(-1px)}.ace-form-submit:disabled{opacity:.6;cursor:default;transform:none}.ace-form-error{color:#fca5a5;font-size:11.5px}.ace-hp{opacity:0!important;width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important}.ace-typing{align-items:center;gap:4px;display:inline-flex!important}.ace-typing span{opacity:.5;background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite aceTyping}.ace-typing span:nth-child(2){animation-delay:.2s}.ace-typing span:nth-child(3){animation-delay:.4s}@keyframes aceTyping{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.ace-ended{opacity:.85;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;font-size:11.5px;display:flex}.ace-ended button{color:var(--text);cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:8px;padding:4px 10px;font-size:11.5px}.ace-ended button:hover{background:#fff3}
