.legal-dialog{max-width:640px;width:min(100% - 2rem,640px);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--card);color:var(--ink);padding:2.2rem;box-shadow:var(--shadow-md)}.legal-dialog::backdrop{background:rgba(3,5,10,.75);backdrop-filter:blur(4px)}.legal-dialog h2{font-size:1.4rem}.legal-dialog h3{font-size:1.02rem;margin-top:1.3rem}.legal-dialog p{color:var(--ink-soft);font-size:.94rem}.dialog-close{position:absolute;top:.9rem;right:.9rem;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:1.2rem;cursor:pointer}.chat-launcher{position:fixed;right:1.5rem;bottom:1.5rem;z-index:70;display:inline-flex;align-items:center;gap:.6rem;padding:.75rem 1.3rem .75rem .9rem;border:0;border-radius:999px;background:var(--accent-grad);color:#050b14;font-family:var(--font-head);font-weight:600;font-size:.95rem;cursor:pointer;box-shadow:0 12px 36px rgba(79,216,245,.36);transition:transform .3s var(--ease-out),box-shadow .3s ease,opacity .3s ease}.chat-launcher:hover{transform:translateY(-3px);box-shadow:0 18px 46px rgba(79,216,245,.5)}.chat-launcher.tucked,.chat-launcher[aria-expanded=true]{opacity:0;pointer-events:none;transform:scale(.9)}.chat-launcher-icon svg{width:22px;height:22px;fill:none;stroke:#050b14;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;display:block}.chat-launcher-ping{position:absolute;top:6px;right:10px;width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 0 2px rgba(5,7,15,.5);animation:pulse 2.4s infinite}.chat-panel{position:fixed;right:1.5rem;bottom:1.5rem;z-index:71;width:min(390px,calc(100vw - 3rem));max-height:min(620px,calc(100vh - 3rem));display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:0 40px 90px rgba(0,0,0,.65);overflow:hidden;transform-origin:bottom right;animation:chatIn .4s var(--ease-out)}.chat-panel[hidden]{display:none}@keyframes chatIn{from{opacity:0;transform:translateY(20px) scale(.94)}to{opacity:1;transform:none}}.chat-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.1rem;border-bottom:1px solid var(--line);background:linear-gradient(120deg,rgba(79,216,245,.1),rgba(139,123,247,.12))}.chat-avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--accent-grad);color:#050b14;font-family:var(--font-head);font-weight:700;font-size:1.1rem;flex-shrink:0}.chat-heading{flex:1;min-width:0}.chat-heading strong{display:block;font-family:var(--font-head);font-size:1rem}.chat-heading small{display:flex;align-items:center;gap:.35rem;font-size:.78rem;color:var(--muted)}.chat-heading small i{width:7px;height:7px;border-radius:50%;background:var(--success);flex-shrink:0}.chat-close{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:rgba(5,7,15,.4);color:var(--ink);font-size:1.15rem;line-height:1;cursor:pointer;flex-shrink:0;transition:border-color .2s ease,color .2s ease}.chat-close:hover{border-color:var(--cyan);color:var(--cyan)}.chat-log{flex:1;overflow-y:auto;padding:1.1rem;display:flex;flex-direction:column;gap:.75rem;scrollbar-width:thin}.chat-log::-webkit-scrollbar{width:6px}.chat-log::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:3px}.chat-msg{max-width:88%;padding:.7rem .95rem;border-radius:14px;font-size:.92rem;line-height:1.55;animation:msgIn .35s var(--ease-out)}@keyframes msgIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.chat-msg.bot{align-self:flex-start;background:rgba(255,255,255,.045);border:1px solid var(--line);border-bottom-left-radius:5px;color:var(--ink-soft)}.chat-msg.bot strong{color:var(--ink)}.chat-msg.user{align-self:flex-end;background:var(--accent-grad);color:#050b14;border-bottom-right-radius:5px;font-weight:500}.chat-msg ul{margin:.5rem 0 0;padding-left:1.1rem;display:grid;gap:.25rem}.chat-jump{display:inline-flex;align-items:center;gap:.35rem;margin-top:.7rem;padding:.4rem .85rem;border:1px solid rgba(79,216,245,.45);border-radius:999px;background:var(--cyan-soft);color:var(--cyan);font-size:.84rem;font-weight:600;font-family:var(--font-head);cursor:pointer;transition:background .2s ease,transform .2s ease}.chat-jump:hover{background:rgba(79,216,245,.22);transform:translateX(3px)}.chat-typing{align-self:flex-start;display:flex;gap:4px;padding:.85rem 1rem;background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:14px;border-bottom-left-radius:5px}.chat-typing span{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:typing 1.3s infinite}.chat-typing span:nth-child(2){animation-delay:.18s}.chat-typing span:nth-child(3){animation-delay:.36s}@keyframes typing{0%,100%,60%{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}.chat-suggestions{display:flex;flex-wrap:wrap;gap:.4rem;padding:0 1.1rem .8rem}.chat-suggestions:empty{display:none}.chat-suggestions button{padding:.42rem .85rem;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.02);color:var(--ink-soft);font:inherit;font-size:.82rem;cursor:pointer;transition:border-color .2s ease,color .2s ease}.chat-suggestions button:hover{border-color:rgba(79,216,245,.5);color:var(--cyan)}.chat-form{display:flex;gap:.5rem;padding:.8rem 1.1rem .5rem;border-top:1px solid var(--line)}.chat-form input{flex:1;min-width:0;background:var(--bg);border:1px solid var(--line-strong);border-radius:999px;color:var(--ink);font:inherit;font-size:.92rem;padding:.65rem 1rem}.chat-form input:focus{outline:0;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(79,216,245,.15)}.chat-form button{width:42px;height:42px;flex-shrink:0;border:0;border-radius:50%;background:var(--accent-grad);color:#050b14;font-size:1.1rem;font-weight:700;cursor:pointer;transition:transform .2s ease}.chat-form button:hover{transform:scale(1.07)}.chat-note{margin:0;padding:0 1.1rem .9rem;font-size:.71rem;color:var(--muted);text-align:center}