
/* AI8_VISION_MATRIX_R4: scoped overrides; page locale/theme remain authoritative. */
#ai8-vision-dialog{box-sizing:border-box;width:min(1640px,calc(100vw - 28px));max-height:94dvh;padding:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--bg);color:var(--ink)}
#ai8-vision-dialog .ai8-vision-dialog-inner{display:flex;flex-direction:column;max-height:94dvh;min-height:0}
#ai8-vision-dialog .ai8-vision-dialog-top{flex:none;padding:14px 16px 10px 20px;gap:14px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}
#ai8-vision-dialog .ai8-vision-dialog-top h2{font-size:1.05rem;line-height:1.4}
#ai8-vision-dialog .ai8-vision-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 20px;border-bottom:1px solid var(--line);flex:none;flex-wrap:wrap}
#ai8-vision-dialog .ai8-vision-dialog-actions{display:flex;align-items:center;gap:8px;margin-left:auto}#ai8-vision-dialog .ai8-vision-controls-group{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
#ai8-vision-dialog .ai8-vision-font-buttons,#ai8-vision-dialog .ai8-vision-languages{display:flex;align-items:center;gap:1px}
#ai8-vision-dialog .ai8-vision-languages{border-left:1px solid var(--line);padding-left:7px;margin-left:5px}
#ai8-vision-dialog .ai8-vision-control{min-width:40px;min-height:42px;border:1px solid transparent;border-radius:9px;background:none;color:var(--muted);font:500 1rem/1 'Avenir Next','Segoe UI',Arial,sans-serif;padding:5px 9px}
#ai8-vision-dialog .ai8-vision-control:hover,#ai8-vision-dialog .ai8-vision-control[aria-pressed="true"]{background:var(--surface);border-color:var(--line);color:var(--ink)}
#ai8-vision-dialog .ai8-vision-font-value{min-width:52px;color:var(--muted);font:500 .82rem/1 Consolas,monospace}
#ai8-vision-dialog .ai8-vision-theme-icon{font-size:1rem}
#ai8-vision-dialog button:focus-visible,#ai8-vision-dialog a:focus-visible,#ai8-vision-dialog summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#ai8-vision-scroll{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;scrollbar-width:thin;scrollbar-color:var(--accent2) var(--bg)}
#ai8-vision-scroll::-webkit-scrollbar{width:10px;height:10px}#ai8-vision-scroll::-webkit-scrollbar-track{background:var(--bg)}#ai8-vision-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent2) 58%,var(--line));border:2px solid var(--bg);border-radius:999px}#ai8-vision-scroll::-webkit-scrollbar-thumb:hover{background:var(--accent2)}
#ai8-vision-dialog figure{margin:0;overflow:visible;min-height:0;background:var(--bg)}
#ai8-vision-image-link{display:block;line-height:0}
#ai8-vision-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain;margin:0}
#ai8-vision-image[hidden]{display:none}
#ai8-vision-status{color:var(--muted);font-size:.8rem;padding:14px 20px;margin:0}
#ai8-vision-status:empty{display:none}
#ai8-vision-dialog .ai8-vision-caption{font-size:.75rem;padding:14px 20px;line-height:1.55;align-items:flex-start;flex-wrap:wrap}
#ai8-vision-dialog .ai8-vision-caption a{white-space:normal}
#ai8-vision-transcript{border-top:1px solid var(--line);padding:14px 20px;font:400 .9rem/1.65 system-ui,sans-serif}
#ai8-vision-transcript summary{cursor:pointer;color:var(--accent2)}
#ai8-vision-transcript ol{padding-left:24px;margin:16px 0 4px;max-width:850px}
#ai8-vision-transcript li{margin:12px 0}
#ai8-vision-transcript strong{display:block}
@media(max-width:760px){
 #ai8-vision-dialog{width:calc(100vw - 12px);max-height:96dvh;border-radius:13px}
 #ai8-vision-dialog .ai8-vision-dialog-inner{max-height:96dvh}
 #ai8-vision-dialog .ai8-vision-dialog-top{padding:10px 10px 8px 14px;align-items:flex-start}
 #ai8-vision-dialog .ai8-vision-dialog-actions{width:100%;justify-content:flex-end;flex-wrap:wrap;gap:4px}
 #ai8-vision-dialog .ai8-vision-dialog-top h2{font-size:.94rem}
 #ai8-vision-dialog .ai8-vision-controls{padding:6px 14px}
 #ai8-vision-dialog .ai8-vision-control{min-width:34px;min-height:40px;padding-inline:6px;font-size:.82rem}
 #ai8-vision-dialog .ai8-vision-font-value{min-width:46px;font-size:.74rem}
 #ai8-vision-dialog .ai8-vision-languages{padding-left:4px;margin-left:2px}
 #ai8-vision-dialog .ai8-vision-caption{gap:9px;padding:12px 14px}
 #ai8-vision-transcript{padding:12px 14px}
}
