.ast-launch{position:fixed;right:24px;bottom:24px;z-index:95;display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 20px 0 16px;border:1px solid var(--ink);background:var(--ink);color:var(--bg);font:400 11px/1 var(--caps);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 24px rgba(43,33,27,.18)}.ast-launch:hover{background:var(--accent);border-color:var(--accent);color:#fff}.ast-panel{position:fixed;right:24px;bottom:24px;z-index:95;width:400px;height:min(640px,calc(100dvh - 48px));display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--rule2);box-shadow:0 16px 48px rgba(43,33,27,.22);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5}.ast-head{display:flex;align-items:center;gap:8px;padding:14px 10px 12px 18px;border-bottom:1px solid var(--rule)}.ast-head>div{flex:1 1;min-width:0}.ast-title{font:400 12px/1.3 var(--caps);letter-spacing:.2em;text-transform:uppercase}.ast-note{font-size:11.5px;color:var(--ink3);margin-top:2px}.ast-clear{border:0;background:none;padding:6px 8px;font-size:12.5px;color:var(--ink3);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.ast-clear:hover{color:var(--accent)}.ast-x{height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;background:none;color:var(--ink);cursor:pointer}.ast-feed{flex:1 1;overflow-y:auto;padding:16px 16px 8px;gap:12px;overscroll-behavior:contain}.ast-feed,.ast-msg{display:flex;flex-direction:column}.ast-msg{gap:6px;max-width:88%}.ast-user{align-self:flex-end;align-items:flex-end}.ast-bot{align-self:flex-start}.ast-bubble{padding:10px 13px;background:var(--bg);border:1px solid var(--rule);overflow-wrap:anywhere}.ast-user .ast-bubble{background:var(--ink);border-color:var(--ink);color:var(--bg);white-space:pre-wrap}.ast-bubble p{margin:0}.ast-bubble ol+p,.ast-bubble p+ol,.ast-bubble p+p,.ast-bubble p+ul,.ast-bubble ul+p{margin-top:8px}.ast-bubble ol,.ast-bubble ul{margin:0;padding-left:20px}.ast-bubble li+li{margin-top:3px}.ast-bubble a{color:var(--accent)}.ast-typing{color:var(--ink3);font-style:italic}.ag .ast-bubble a.ast-cta,.ast-bubble a.ast-cta{display:inline-flex;align-items:center;height:36px;margin:4px 0;padding:0 16px;background:var(--ink);color:var(--bg);font:400 10.5px/1 var(--caps);letter-spacing:.2em;text-transform:uppercase;text-decoration:none}.ast-bubble a.ast-cta:hover{background:var(--accent);color:#fff}.ast-tools{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.ast-tool{font-size:12.5px;color:var(--ink3)}.ast-tool.ok span{color:#3E6B5A}.ast-tool.error span{color:var(--red)}.ast-tool.start{animation:ast-pulse 1.2s ease-in-out infinite}@keyframes ast-pulse{50%{opacity:.45}}.ast-confirm{padding:12px 13px;border:1px solid var(--accent);background:var(--sel)}.ast-confirm p{margin:0}.ast-confirm-btns{display:flex;gap:8px;margin-top:10px}.ast-confirm-state{margin-top:6px!important;font-size:12.5px;color:var(--ink2)}.ast-error{font-size:13px;color:var(--red)}.ast-suggest{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.ast-suggest button{border:1px solid var(--rule2);background:transparent;padding:7px 12px;font:inherit;font-size:13px;color:var(--ink);cursor:pointer;text-align:left}.ast-suggest button:hover{border-color:var(--accent);color:var(--accent)}.ast-form{display:flex;align-items:flex-end;gap:8px;padding:10px 12px 12px;border-top:1px solid var(--rule)}.ast-input{flex:1 1;min-height:42px;max-height:140px;resize:none;padding:10px 12px;border:1px solid var(--rule2);background:var(--bg);font:inherit;font-size:14px;color:var(--ink);border-radius:0;field-sizing:content}.ast-input:focus{outline:none;border-color:var(--ink)}.ast-send{width:42px;height:42px;flex:none;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);background:var(--ink);color:var(--bg);cursor:pointer}.ast-send:disabled{opacity:.35;cursor:default}@media (max-width:760px){.ast-launch{right:16px;bottom:max(16px,env(safe-area-inset-bottom));height:44px;padding:0 16px 0 13px;font-size:10px}.ast-panel{inset:0;width:auto;height:auto;border:0;box-shadow:none}.ast-head{padding-top:max(14px,env(safe-area-inset-top))}.ast-input{font-size:16px}}@media print{.ast-launch,.ast-panel{display:none}}