.t2-assistant{position:fixed;right:var(--t2-s6);bottom:var(--t2-s6);z-index:60}.t2-assistant__fab{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border:none;border-radius:var(--t2-r-pill);background:var(--t2-accent);color:var(--t2-accent-ink);cursor:pointer;box-shadow:var(--t2-e2);transition:transform var(--t2-t-standard) var(--t2-ease),box-shadow var(--t2-t-standard) var(--t2-ease);margin-left:auto}.t2-assistant__fab:hover{transform:translateY(-2px);box-shadow:var(--t2-e3)}.t2-assistant__fab--pill{width:auto;height:48px;padding:0 var(--t2-s4) 0 var(--t2-s3);gap:var(--t2-s2);max-width:calc(100vw - var(--t2-s12))}.t2-assistant__fab-text{font-size:var(--t2-fs-body);font-weight:600;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t2-assistant :focus-visible{outline:none;box-shadow:var(--t2-focus)}.t2-assistant__panel{position:absolute;right:0;bottom:68px;display:flex;flex-direction:column;width:380px;max-width:calc(100vw - var(--t2-s8));height:580px;max-height:calc(100vh - var(--t2-header-h) - var(--t2-s12));overflow:hidden;border:1px solid var(--t2-line);border-radius:var(--t2-r-lg);background:var(--t2-surface);color:var(--t2-fg);box-shadow:var(--t2-e3)}.t2-assistant__head{display:flex;align-items:center;justify-content:space-between;gap:var(--t2-s2);padding:var(--t2-s3) var(--t2-s4);border-bottom:1px solid var(--t2-line)}.t2-assistant__title{margin:0;font-size:var(--t2-fs-body);font-weight:600}.t2-assistant__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 auto;border:none;border-radius:var(--t2-r-md);background:transparent;color:var(--t2-fg-muted);cursor:pointer}.t2-assistant__icon-btn:hover{background:var(--t2-surface-2);color:var(--t2-fg)}.t2-assistant__icon-btn:disabled{opacity:.5;cursor:default}.t2-assistant__body{flex:1 1 auto;overflow-y:auto;padding:var(--t2-s4);display:flex;flex-direction:column;gap:var(--t2-s3)}.t2-assistant__greeting,.t2-assistant__thinking{margin:0;color:var(--t2-fg-muted);font-size:var(--t2-fs-meta)}.t2-assistant__msg{display:flex;flex-direction:column;gap:var(--t2-s2);max-width:85%}.t2-assistant__msg--user{align-self:flex-end;align-items:flex-end}.t2-assistant__msg--assistant{align-self:flex-start}.t2-assistant__bubble{margin:0;padding:var(--t2-s2) var(--t2-s3);border-radius:var(--t2-r-md);background:var(--t2-surface-2);font-size:var(--t2-fs-body);line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.t2-assistant__msg--user .t2-assistant__bubble{background:var(--t2-accent);color:var(--t2-accent-ink)}.t2-assistant__msg.is-error .t2-assistant__bubble{color:var(--t2-error)}.t2-assistant__cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--t2-s1);width:100%}.t2-assistant__card{display:flex;align-items:baseline;justify-content:space-between;gap:var(--t2-s2);padding:var(--t2-s2) var(--t2-s3);border:1px solid var(--t2-line);border-radius:var(--t2-r-md);font-size:var(--t2-fs-meta);color:var(--t2-fg)}.t2-assistant__card--link{text-decoration:none}.t2-assistant__card--link:hover{background:var(--t2-surface-2)}.t2-assistant__card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.t2-assistant__card-meta{flex:0 0 auto;color:var(--t2-fg-subtle)}.t2-assistant__composer{display:flex;align-items:flex-end;gap:var(--t2-s2);padding:var(--t2-s3) var(--t2-s4);border-top:1px solid var(--t2-line)}.t2-assistant__input{flex:1 1 auto;resize:none;max-height:96px;padding:var(--t2-s2) var(--t2-s3);border:1px solid var(--t2-line);border-radius:var(--t2-r-md);background:var(--t2-bg);color:var(--t2-fg);font:inherit;font-size:var(--t2-fs-body)}.t2-assistant__input::placeholder{color:var(--t2-fg-subtle)}.t2-assistant__send{color:var(--t2-accent)}@media (max-width:640px){.t2-assistant{right:var(--t2-s4);bottom:calc(var(--t2-tabbar-h) + var(--t2-s3))}.t2-assistant__fab{width:52px;height:52px}.t2-assistant__fab--pill{width:auto;height:46px;padding:0 var(--t2-s3) 0 var(--t2-s2);max-width:calc(100vw - var(--t2-s8))}.t2-assistant__fab-text{font-size:var(--t2-fs-meta)}.t2-assistant__panel{position:fixed;left:var(--t2-s4);right:var(--t2-s4);top:calc(var(--t2-header-h) + var(--t2-s2));bottom:calc(var(--t2-tabbar-h) + var(--t2-s12));width:auto;max-width:none;height:auto;max-height:none}.t2-assistant__input{font-size:16px}}@media (prefers-reduced-motion:reduce){.t2-assistant__fab,.t2-assistant__fab:hover{transition:none;transform:none}}