.ai-fab{position:fixed;bottom:24px;right:24px;width:52px;height:52px;border-radius:999px;background:var(--ink);color:var(--bg);border:none;cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 24px -6px rgba(0,0,0,.3);z-index:9000;transition:transform .15s ease,box-shadow .15s ease}.ai-fab:hover{transform:translateY(-2px);box-shadow:0 12px 32px -8px rgba(0,0,0,.35)}.ai-panel{position:fixed;bottom:88px;right:24px;width:420px;max-width:calc(100vw - 32px);height:600px;max-height:calc(100vh - 120px);background:var(--bg);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 64px -12px rgba(0,0,0,.35);z-index:9000;display:flex;flex-direction:column;overflow:hidden;animation:aiPanelIn .22s cubic-bezier(.16,1,.3,1)}@keyframes aiPanelIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-panel-h{padding:16px 20px 12px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);background:var(--bg-2)}.ai-panel-h h3{font-size:16px;font-weight:600;letter-spacing:-.015em;margin:0}.ai-eyebrow{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--ink-3);margin-bottom:4px}.ai-close{background:transparent;border:1px solid var(--line);border-radius:999px;width:28px;height:28px;cursor:pointer;color:var(--ink-3);display:grid;place-items:center}.ai-messages{flex:1 1;overflow-y:auto;padding:16px 16px 8px;gap:10px;scroll-behavior:smooth}.ai-messages,.ai-suggestions{display:flex;flex-direction:column}.ai-suggestions{padding:8px 4px;gap:6px}.ai-suggestions-l{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.ai-suggestions button{text-align:left;padding:9px 12px;background:var(--bg-2);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;font-family:inherit;font-size:13px;transition:border-color .12s,background .12s}.ai-suggestions button:hover{border-color:var(--sage-deep);background:var(--bg)}.ai-msg{max-width:92%;display:flex;flex-direction:column;gap:6px}.ai-msg--user{align-self:flex-end}.ai-msg--user .ai-msg-body{background:var(--ink);color:var(--bg);padding:10px 14px;border-radius:14px 14px 4px 14px;font-size:13.5px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.ai-msg--assistant{align-self:flex-start}.ai-msg--assistant .ai-msg-body{background:var(--bg-2);color:var(--ink);padding:12px 14px;border-radius:14px 14px 14px 4px;border:1px solid var(--line);font-size:13.5px;line-height:1.55;white-space:pre-wrap;word-wrap:break-word}.ai-import-btn{align-self:flex-start;padding:8px 14px;border-radius:999px;background:var(--sage-deep);color:#fff;border:none;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:500}.ai-import-btn:hover{opacity:.92}.ai-msg-error{background:oklch(.95 .04 25);color:oklch(.42 .18 25);padding:10px 14px;border-radius:10px;font-size:12.5px;border:1px solid color-mix(in oklab,var(--destructive,oklch(.62 .19 25)) 25%,transparent)}[data-theme=dark] .ai-msg-error{background:oklch(.3 .08 25);color:oklch(.92 .12 25)}.ai-input-row{border-top:1px solid var(--line);padding:12px;display:flex;gap:8px;background:var(--bg-2)}.ai-input-row textarea{flex:1 1;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);font-family:inherit;font-size:13.5px;color:var(--ink);resize:none;outline:none;transition:border-color .12s}.ai-input-row textarea:focus{border-color:var(--sage-deep)}.ai-input-row textarea:disabled{opacity:.6;cursor:wait}.ai-send-btn{width:40px;height:40px;border-radius:999px;background:var(--sage-deep);color:#fff;border:none;cursor:pointer;display:grid;place-items:center;flex-shrink:0;align-self:flex-end}.ai-send-btn:hover:not(:disabled){opacity:.92}.ai-send-btn:disabled{background:var(--bg-3);color:var(--ink-3);cursor:not-allowed}.ai-reset{position:absolute;bottom:78px;left:16px;padding:4px 10px;background:transparent;border:1px solid var(--line);border-radius:999px;color:var(--ink-3);cursor:pointer;font-family:inherit;font-size:10.5px;letter-spacing:.04em}.ai-reset:hover{color:var(--ink);border-color:var(--ink-3)}.ai-reset:disabled{opacity:.5;cursor:not-allowed}@media (max-width:600px){.ai-panel{width:calc(100vw - 16px);right:8px;bottom:80px;height:calc(100vh - 100px)}.ai-fab{bottom:16px;right:16px}}