.executive-assistant{position:fixed;right:1.25rem;bottom:1.25rem;z-index:1000;font-family:inherit}
.assistant-launcher{border:1px solid #a98bfa;border-radius:999px;background:#643bc3;color:#fff;padding:.78rem 1.2rem;box-shadow:0 8px 24px #24105255;font:inherit;font-weight:800;letter-spacing:.025em;cursor:pointer}
.assistant-panel{position:absolute;right:0;bottom:4.2rem;width:min(420px,calc(100vw - 2rem));max-height:min(680px,calc(100dvh - 7rem));overflow:auto;background:#fff;color:#231b34;border:1px solid #ddd4f2;border-radius:18px;box-shadow:0 14px 48px #24105255}
.assistant-panel[hidden],.assistant-launcher[hidden]{display:none}
.assistant-head{position:sticky;top:0;z-index:1;background:linear-gradient(115deg,#352356,#4a2b83);color:#fff;padding:.8rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:.7rem}
.assistant-identity{display:flex;align-items:center;gap:.7rem;min-width:0}
.assistant-mark{display:block;flex:none;width:2.25rem;height:2.25rem;box-sizing:border-box;border:2px solid #fff;border-radius:11px;background:#fff;object-fit:cover;object-position:left center;box-shadow:0 2px 8px #180b3433}
.assistant-identity strong{display:block;font-size:1.08rem;line-height:1.1;letter-spacing:.055em}
.assistant-identity small{display:block;margin-top:.18rem;color:#eee8ff;font-size:.7rem;line-height:1.2}
.assistant-head button{color:#fff;background:transparent;border:1px solid #b9a4df;border-radius:8px;padding:.35rem .6rem;cursor:pointer;flex:none}
.assistant-body{padding:1rem}.assistant-body h2{font-size:1.2rem;margin:.7rem 0}.assistant-body p{line-height:1.5}
.assistant-context{background:#f4f0fc;border-radius:8px;padding:.5rem .7rem;font-weight:600}
.assistant-topics{display:grid;gap:.4rem}
.assistant-topics button,.assistant-answer button,.assistant-form button{background:#f4f0fc;color:#3c246e;border:1px solid #c8b4ed;border-radius:8px;text-align:left;padding:.55rem .7rem;font:inherit;cursor:pointer}
.assistant-answer{background:#f7f5fb;border-left:3px solid #643bc3;border-radius:6px;margin:1rem 0;padding:.6rem .8rem}
.assistant-answer button,.assistant-form button{background:#643bc3;color:#fff;text-align:center}
.assistant-form{display:grid;gap:.6rem;margin-top:1rem}
.assistant-form textarea{box-sizing:border-box;display:block;width:100%;min-height:5.25rem;max-height:14rem;resize:vertical;border:1px solid #a99bc0;border-radius:10px;padding:.75rem .85rem;font:inherit;line-height:1.45;background:#fff;color:#231b34}
.assistant-form textarea::placeholder{color:#655a77;opacity:1}
.assistant-form button{justify-self:end;min-height:2.75rem;padding:.55rem 1rem;white-space:normal;font-weight:700}
.assistant-launcher:focus-visible,.assistant-panel button:focus-visible,.assistant-panel textarea:focus-visible{outline:3px solid #db9d27;outline-offset:2px}
@media(max-width:640px){.executive-assistant{right:1rem;bottom:1rem}.assistant-panel{position:fixed;inset:0;width:100vw;max-height:100dvh;height:100dvh;border-radius:0;box-sizing:border-box}.assistant-body{padding-bottom:calc(2rem + env(safe-area-inset-bottom))}.assistant-head{padding-top:max(.8rem,env(safe-area-inset-top))}.assistant-form button{justify-self:stretch}.assistant-form textarea{min-height:6rem}}
