.assistant-root{position:fixed;right:1.25rem;bottom:1.25rem;z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem}.assistant-root [hidden]{display:none!important}.chat-fab{width:3.5rem;height:3.5rem;border-radius:9999px;border:0;cursor:pointer;display:grid;place-items:center;background:var(--color-amber-accent);color:var(--color-ink-bg);box-shadow:0 6px 24px #00000073,0 0 0 4px #e8a44c26;transition:transform .15s ease,background-color .15s ease}.chat-fab:hover{background:var(--color-amber-accent-soft);transform:translateY(-2px)}.chat-teaser{position:relative;max-width:15rem;padding:.65rem 1.9rem .65rem .85rem;font-size:.85rem;line-height:1.4;background:var(--color-ink-card);border:1px solid rgba(232,164,76,.4);border-radius:8px;box-shadow:0 6px 24px #0006}.chat-teaser button{position:absolute;top:.2rem;right:.4rem;background:none;border:0;color:var(--color-ink-muted);font-size:1.1rem;cursor:pointer}.chat-panel{width:min(23rem,calc(100vw - 2.5rem));height:min(32rem,calc(100vh - 7.5rem));display:flex;flex-direction:column;background:var(--color-ink-card);border:1px solid var(--color-ink-line);border-top:2px solid rgba(232,164,76,.6);border-radius:10px;box-shadow:0 16px 48px #0000008c;overflow:hidden;transform-origin:bottom right}@media(prefers-reduced-motion:no-preference){.chat-panel{animation:chat-in .22s cubic-bezier(.2,.7,.2,1)}@keyframes chat-in{0%{opacity:0;transform:translateY(10px) scale(.97)}}}.chat-head{display:flex;align-items:center;gap:.7rem;padding:.75rem .9rem;border-bottom:1px solid var(--color-ink-line)}.chat-badge{display:grid;place-items:center;width:2rem;height:2rem;flex:none;border-radius:9999px;color:var(--color-amber-accent);background:#e8a44c1a;border:1px solid rgba(232,164,76,.4);font-size:.9rem}.chat-title{flex:1;min-width:0;line-height:1.25}.chat-title>p:first-child{font-weight:600;font-size:.95rem;color:var(--color-ink-fg)}.chat-x{flex:none;background:none;border:0;color:var(--color-ink-muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:0 .2rem}.chat-x:hover{color:var(--color-amber-accent)}.chat-log{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.6rem;padding:1rem .9rem;font-size:.92rem;line-height:1.55}.chat-chips{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;padding:0}.chip{cursor:pointer;padding:.4rem .8rem;border-radius:9999px;font-family:var(--font-mono);font-size:.75rem;line-height:1.2;color:var(--color-amber-accent);background:transparent;border:1px solid rgba(232,164,76,.4);transition:background-color .15s ease,border-color .15s ease}.chip:hover{background:#e8a44c1a;border-color:var(--color-amber-accent)}.chat-form{display:flex;align-items:stretch;gap:.5rem;padding:.7rem .9rem;border-top:1px solid var(--color-ink-line)}.chat-form input{min-width:0;flex:1;height:2.5rem;padding:0 .8rem;font-size:.92rem;color:var(--color-ink-fg);background:var(--color-ink-bg);border:1px solid var(--color-ink-line);border-radius:6px;transition:border-color .15s ease}.chat-form input:focus,.chat-form input:focus-visible{outline:none;border-color:var(--color-amber-accent)}.chat-form input::placeholder{color:var(--color-ink-faint)}.chat-send{flex:none;height:2.5rem;padding:0 1rem;border:0;border-radius:6px;cursor:pointer;font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-bg);background:var(--color-amber-accent);transition:background-color .15s ease}.chat-send:hover{background:var(--color-amber-accent-soft)}.chat-send:disabled,.chat-form input:disabled{opacity:.5;cursor:wait}.chat-foot{text-align:center;padding:0 .9rem .65rem;font-size:.65rem}.chat-msg{max-width:88%;padding:.55rem .85rem;border-radius:10px;white-space:pre-wrap;overflow-wrap:anywhere}.chat-bot{align-self:flex-start;background:var(--color-ink-bg);border:1px solid var(--color-ink-line);border-top-left-radius:3px}.chat-user{align-self:flex-end;background:#e8a44c1f;border:1px solid rgba(232,164,76,.35);border-top-right-radius:3px}@media(max-width:520px){.assistant-root{right:.75rem;bottom:.75rem}.chat-panel{width:calc(100vw - 1.5rem);height:calc(100vh - 6rem)}}
