.ai-chat { max-width: 920px; margin-inline: auto; }
.ai-chat-controls { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 12px; margin-bottom: 12px; }
.ai-chat-controls label,.ai-compose label { display: grid; gap: 6px; font-weight: 650; font-size: 14px; }
.ai-chat select,.ai-chat textarea { width: 100%; border: 1px solid #cbd7e6; border-radius: 10px; padding: 11px; background: white; color: #162942; }
.ai-history { min-height: 260px; max-height: 52svh; overflow-y: auto; padding: 16px; border: 1px solid #dce2ea; border-radius: 12px; background: #f5f6f8; }
.ai-message { margin-bottom: 12px; padding: 12px 14px; border-radius: 12px; background: white; overflow-wrap: anywhere; }
.ai-message p { white-space: pre-wrap; margin: 8px 0 0; }
.ai-message small { color: #526278; }
.ai-compose { display: grid; gap: 10px; margin-top: 16px; }
.ai-compose-actions { display: flex; gap: 8px; }
.ai-compose-actions .primary { margin-left: auto; }
.quality-actions{display:flex;gap:10px;margin-top:12px;align-items:stretch;flex-wrap:wrap}
.quality-actions button{width:auto;height:48px;min-height:48px;box-sizing:border-box;padding:12px 18px;border-radius:10px;margin:0;white-space:nowrap}
.quality-actions .quality-cancel{color:#8d2530;border-color:#d3a6ac;background:#fff}
.quality-stopped{padding:10px 14px;background:#f5f6f8;color:#526278}
@media(max-width:600px){.quality-actions{flex-direction:column}.quality-actions button{width:100%}}
.scout-idea-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.55rem;margin:.75rem 0}
.scout-idea-details div{background:#f5f8fc;border-radius:.55rem;padding:.55rem}
.scout-idea-details dt{font-size:.75rem;font-weight:700;color:#456}
.scout-idea-details dd{margin:.2rem 0 0;overflow-wrap:anywhere}
.scout-idea-summary{line-height:1.65;max-width:72ch}
.scout-idea-card>strong{font-size:1.08rem}
@media(max-width:600px){.scout-idea-card{padding:16px}.scout-idea-summary{font-size:15px;line-height:1.7}.scout-idea-card .ai-compose-actions{display:grid;grid-template-columns:1fr}.scout-idea-card .ai-compose-actions button{min-height:48px}}

.quality-job{border:1px solid #cbd7e6;border-radius:12px;padding:14px;margin-bottom:12px;background:#f1f6ff;overflow-wrap:anywhere}
.quality-history-toggle{display:flex;justify-content:flex-end;margin:8px 0 12px}
.quality-spinner{display:inline-block;width:16px;height:16px;border:3px solid #ccd;border-top-color:#20477b;border-radius:50%;animation:quality-spin 1s linear infinite}
@keyframes quality-spin{to{transform:rotate(360deg)}}
.scout-idea-card .ai-compose-actions{flex-wrap:wrap}
@media(prefers-reduced-motion:reduce){.quality-spinner{animation:none}}

.ai-visibility-note{font-size:12px;color:#526278}
.scout-idea-card [data-scout-action="EXPLORE"]{background:#19437d;color:#fff}
.scout-idea-card [data-scout-action="SAVE"]{background:#edf2f9;color:#19437d}
@media(max-width:700px){
 .ai-chat-controls{grid-template-columns:1fr}
 .quality-job{padding:9px 11px;margin-bottom:6px;font-size:13px}
 .quality-job p{margin:4px 0;line-height:1.35}
}
/* Chat owns its viewport: history and composer never share screen space. */
.ai-chat .ai-chat-header{display:flex;flex-wrap:wrap;gap:8px;margin:0;align-items:center}
.ai-chat-header h2{font-size:17px;margin:0}
.ai-chat #ai-settings-toggle{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ai-agent-label{font-size:11px;max-width:190px;margin-left:auto}
.ai-agent-label select{min-height:38px;padding:6px;font-size:12px}
.ai-details{width:min(880px,94vw);max-height:85dvh;overflow:auto;border:0;border-radius:16px;padding:16px}
.ai-details::backdrop{background:#17243d80}
.ai-details .ai-chat-controls{display:grid}
.ai-details-close{position:sticky;top:0;z-index:1}
.ai-chat{display:flex;flex-direction:column;gap:8px;height:var(--ai-desktop-height,calc(100dvh - 380px));min-height:330px;overflow:hidden}
.ai-chat .ai-history{position:relative;flex:1;min-height:0;max-height:none;overscroll-behavior:contain;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable}
.ai-history .ai-message{max-width:94%;line-height:1.55;white-space:normal}
.ai-history .ai-message-user{margin-left:auto;background:#e9f0ff;border:1px solid #c7d8f5}
.ai-history .ai-message-assistant{margin-right:auto;background:#fff;border:1px solid #e2e7ed}
.ai-history .ai-message p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}
.ai-chat .ai-compose{position:static;flex:0 0 auto;margin:0;padding:6px 0 0;display:grid;grid-template-columns:44px 44px minmax(0,1fr) 44px;gap:6px;background:#fff}
.ai-compose>label[for=ai-text]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.ai-chat .ai-compose textarea{grid-column:3;grid-row:1;min-height:44px;max-height:120px;resize:none;padding:10px;font-size:16px;overflow-y:auto}
.ai-compose .ai-compose-actions{display:contents}
.ai-compose .ai-compose-actions button{min-width:0;width:44px;height:44px;padding:0!important;align-self:end}
.ai-compose #ai-voice{grid-column:1;grid-row:1}.ai-compose #ai-attach{grid-column:2;grid-row:1}.ai-compose #ai-send{grid-column:4;grid-row:1}
.ai-compose #ai-note,.ai-compose #ai-attachment-choice{grid-column:1/-1;margin:0;max-height:100px;overflow:auto}
.ai-compose #ai-note:empty{display:none}
.ai-chat .ai-pending{margin:0;font-size:13px;flex:none}
.ai-chat .ai-new-response{align-self:center;flex:none;padding:7px 14px;min-height:40px}
.ai-chat>[hidden]{display:none!important}
@media(max-width:700px){
 body:has(.ai-workspace){overflow:hidden}
 .topbar:has(+.ai-workspace){display:none}
 .workspace.ai-workspace{position:fixed;inset:var(--ai-viewport-top,0px) 0 auto;height:var(--ai-viewport-height,100dvh);max-width:none;padding:0;display:flex;flex-direction:column;overflow:hidden}
 .ai-workspace>.workspace-head,.ai-workspace>.approval-note,.ai-workspace>.bottomline{display:none}
 .ai-workspace>#section{flex:1;min-height:0;display:flex;order:0}
 .ai-workspace>.tabs{position:relative;inset:auto;order:1;flex:none;width:100%;box-sizing:border-box}
 .ai-workspace.ai-keyboard>.tabs{display:none}
 .ai-workspace .ai-chat{flex:1;width:100%;height:100%;min-height:0;max-width:none;margin:0;border:0;border-radius:0;padding:8px 10px;gap:6px;box-sizing:border-box;padding-top:calc(8px + env(safe-area-inset-top))}
 .ai-workspace.ai-keyboard .ai-chat{padding-bottom:calc(8px + env(safe-area-inset-bottom))}
 .ai-chat .ai-chat-header{flex:none;gap:4px}
 .ai-chat-header>div{flex:1}
 .ai-chat #ai-settings-toggle{max-width:65%;font-size:12px;padding:6px;min-height:38px}
 .ai-agent-label{max-width:145px;display:flex;align-items:center;gap:4px;font-size:0}
 .ai-agent-label select{max-width:145px}
 .ai-compose #ai-send{font-size:22px;line-height:1}
 .ai-chat .ai-history{padding:10px;min-height:0}
 .ai-history .ai-message{padding:10px;max-width:96%;font-size:15px}
 .ai-message small{font-size:10px}
}
.ai-message-content p{white-space:normal!important;margin:8px 0;line-height:1.6}
.ai-message-content h1,.ai-message-content h2,.ai-message-content h3,.ai-message-content h4,.ai-message-content h5,.ai-message-content h6{font-size:1.1em;line-height:1.4;margin:14px 0 8px}
.ai-message-content ul,.ai-message-content ol{padding-left:24px;margin:10px 0}
.ai-message-content li{margin:5px 0}
.ai-message-content a{overflow-wrap:anywhere;text-decoration:underline}
.ai-message-content pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
.ai-message-content code{font-size:.9em}
