.msg{display:flex;gap:10px;align-items:flex-start}.msg.user .msg-bubble{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--text);margin-left:auto}.ai-head .eyebrow.ai-eyebrow{color:var(--ia)}.ai-head .ai-eyebrow .icon{width:14px;height:14px}.ai-chat{display:flex;flex-direction:column;padding:0;overflow:hidden}.ai-bar{display:flex;align-items:center;gap:12px;padding:12px 16px 12px 20px;border-bottom:1px solid var(--border)}.ai-bar-av{width:32px;height:32px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ia-soft);color:var(--ia);border:1px solid var(--ia-line)}.ai-bar-av .icon{width:16px;height:16px}.ai-bar #aiClearBtn{color:var(--text-2)}.ai-log{display:flex;flex-direction:column;gap:20px;padding:24px 24px 16px;height:clamp(320px,calc(100vh - 500px),620px);overflow-y:auto;scroll-behavior:smooth;overscroll-behavior:contain;scrollbar-width:thin}.ai-chat:has(#aiSuggest[hidden]) .ai-log{height:clamp(320px,calc(100vh - 400px),680px)}.ai-log:focus-visible{outline-offset:-2px;border-radius:0}.ai-loading{padding:4px 0}.ai-log .msg{display:flex;gap:12px;align-items:flex-start;max-width:100%}.ai-log .msg-av{width:32px;height:32px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ia-soft);color:var(--ia);border:1px solid var(--ia-line)}.ai-log .msg-body{min-width:0;max-width:min(680px,88%)}.ai-log .msg-bubble{max-width:none;padding:12px 16px;border-radius:4px var(--r-lg) var(--r-lg) var(--r-lg);background:var(--surface-2);border:1px solid var(--border);color:var(--text);font-size:14.5px;line-height:1.6;overflow-wrap:anywhere}.ai-log .msg.user{justify-content:flex-end}.ai-log .msg.user .msg-body{margin-left:auto}.ai-log .msg.user .msg-bubble{background:var(--accent-soft);border-color:var(--accent-line);border-radius:var(--r-lg) 4px var(--r-lg) var(--r-lg);margin-left:0}.msg-bubble>* + *{margin-top:10px}.msg-bubble strong{font-weight:620;color:var(--text)}.msg-bubble ul,.msg-bubble ol{padding-left:22px}.msg-bubble li + li{margin-top:4px}.msg-bubble li::marker{color:var(--text-3)}.msg-bubble .ai-md-h{font-size:15px;line-height:22px;font-weight:650;letter-spacing:-.006em}.msg-bubble code{font-family:var(--font-mono);font-size:.88em;padding:1px 5px;border-radius:var(--r-xs);background:var(--surface);border:1px solid var(--border)}.msg-bubble pre{padding:10px 12px;border-radius:var(--r);background:var(--surface);border:1px solid var(--border);overflow-x:auto;font-size:13px;line-height:1.5}.msg-bubble pre code{padding:0;border:0;background:none}.msg-bubble blockquote{padding-left:12px;border-left:3px solid var(--border-strong);color:var(--text-2)}.msg-bubble hr{border:0;border-top:1px solid var(--border)}.msg.is-typing .msg-bubble{padding:14px 16px}.dots{display:inline-flex;gap:4px;align-items:center;height:12px}.dots span{width:7px;height:7px;border-radius:50%;background:var(--text-3);animation:aiDot 1.2s infinite ease-in-out}.dots span:nth-child(2){animation-delay:.15s}.dots span:nth-child(3){animation-delay:.3s}@keyframes aiDot{0%,80%,100%{opacity:.35;transform:none}40%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.dots span{animation:none;opacity:.7}}.msg.is-error .msg-bubble{background:var(--danger-soft);border-color:var(--danger-line)}.ai-err{display:flex;align-items:flex-start;gap:8px;color:var(--danger);font-weight:550}.ai-err .icon{margin-top:3px;flex-shrink:0}.ai-suggest{padding:0 24px 12px}.ai-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.ai-pill{height:auto;min-height:32px;padding:6px 12px;text-align:left;white-space:normal;line-height:18px}.ai-pill .icon{color:var(--ia);flex-shrink:0}.ai-composer{display:flex;align-items:flex-end;gap:8px;margin:0 16px;padding:8px;border:1px solid var(--border-input);border-radius:var(--r-lg);background:var(--surface);transition:border-color var(--dur-1)}.ai-composer:focus-within{border-color:var(--focus-ring);outline:2px solid var(--focus-ring);outline-offset:-1px}.ai-input{flex:1;min-width:0;min-height:40px;max-height:180px;padding:9px 8px;border:0;background:transparent;resize:none;font-size:15px;line-height:22px;color:var(--text);font-family:var(--font-ui)}.ai-input:focus,.ai-input:focus-visible{outline:none;border:0;box-shadow:none}.ai-input::placeholder{color:var(--text-3)}.ai-send{flex-shrink:0}.ai-send.is-busy{opacity:.55;cursor:progress}.ai-hint{padding:8px 20px 16px;font-size:12px;line-height:18px;color:var(--text-3)}.ai-hint kbd{font-family:var(--font-mono);font-size:12px;padding:1px 5px;border-radius:var(--r-xs);border:1px solid var(--border);border-bottom-width:2px;background:var(--surface);color:var(--text-2)}.ai-locked{margin:auto 0;padding:8px 0}.ai-locked .empty{border:0}.ai-locked .empty-icon{background:var(--ia-soft);color:var(--ia)}.ai-locked .btn-row{justify-content:center}@media (max-width:719px){.ai-bar{padding:10px 12px 10px 14px}.ai-log{padding:16px 14px 12px;gap:16px;height:clamp(200px,calc(100vh - 540px),560px);height:clamp(200px,calc(100dvh - 540px),560px)}.ai-chat:has(#aiSuggest[hidden]) .ai-log{height:clamp(200px,calc(100vh - 470px),560px);height:clamp(200px,calc(100dvh - 470px),560px)}.ai-chat{overflow:clip}.ai-composer{position:sticky;bottom:calc(var(--tabbar-h) + 8px + env(safe-area-inset-bottom));z-index:2}.ai-log .msg-av{display:none}.ai-log .msg-body{max-width:92%}.ai-suggest{padding:0 0 10px}.ai-suggest .t-label{padding:0 14px}.ai-quick{flex-wrap:nowrap;overflow-x:auto;padding:0 14px 4px;scroll-padding-inline:14px;scrollbar-width:none;overscroll-behavior-x:contain}.ai-quick::-webkit-scrollbar{display:none}.ai-pill{white-space:nowrap;flex-shrink:0}.ai-composer{margin:0 10px}.ai-input{font-size:16px}.ai-send-txt{display:none}.ai-send{width:44px;padding:0}.ai-hint{padding:8px 14px 14px}.ai-hint-keys{display:none}}
