/* One optical grid for interface actions, across light and dark themes. */
.ui-icon { display:inline-flex; align-items:center; justify-content:center; width:1.2em; height:1.2em; flex:0 0 auto; vertical-align:-.2em; line-height:1; pointer-events:none; color:inherit; }
.ui-icon svg { display:block; width:100%; height:100%; overflow:visible; }
.header-actions .ui-icon, .hamburger-btn .ui-icon, .attach-btn .ui-icon { width:19px; height:19px; }
.header-actions .clear-btn, .hamburger-btn, .attach-btn { display:inline-flex; align-items:center; justify-content:center; }
.header-actions .clear-btn { color:var(--text-secondary,#9ba4b7); transition:color .18s ease,background .18s ease,border-color .18s ease; }
.header-actions .clear-btn:hover { color:var(--text-primary,#f1f5fb); }
.sidebar-btn { display:flex; align-items:center; gap:10px; }
.sidebar-btn .ui-icon { width:18px; height:18px; opacity:.9; }
.section-icon .ui-icon, .admin-section-title > .ui-icon { width:20px; height:20px; }
.section-icon { display:inline-flex; align-items:center; justify-content:center; color:#939df7; }
.agent-emoji .ui-icon, #currentAgentEmoji .ui-icon { width:22px; height:22px; }
.agent-emoji, #currentAgentEmoji { display:inline-flex; align-items:center; justify-content:center; color:#a5afff; }
.help-card-icon .ui-icon { width:25px; height:25px; }
.empty-state > .emoji .ui-icon { width:42px; height:42px; color:#a5afff; }
.conversation-new .ui-icon { width:17px; height:17px; }
.conversation-tab-close .ui-icon, .modal-close .ui-icon, #archiveClose .ui-icon, #recurringClose .ui-icon { width:15px; height:15px; }
.admin-back-btn .ui-icon { width:17px; height:17px; }
.send-btn .ui-icon { width:18px; height:18px; }
.uif-dialog-icon .ui-icon { width:22px; height:22px; }
button:focus-visible, a.sidebar-btn:focus-visible { outline:2px solid #909cf8; outline-offset:3px; }
body.theme-light .agent-emoji, body.theme-light #currentAgentEmoji, html.theme-light .section-icon { color:#626acb; }
@media(prefers-reduced-motion:reduce) { .header-actions .clear-btn { transition:none; } }
@media(min-width:769px) {
 .chat-header .header-actions { gap:6px; }
 .chat-header .header-actions .clear-btn { width:32px; height:32px; min-width:32px; padding:0 !important; border-radius:9px !important; }
}
.admin-card-avatar .ui-icon { width:23px; height:23px; }
