/* Shared functional icon contract. Containers retain their approved geometry. */
.ui-icon{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.125em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.ui-icon use{pointer-events:none}
.ui-icon-inline{margin-inline:.2em}
.settings-glyph .ui-icon,.theme-icon .ui-icon{width:26px;height:26px}
.translation-icon{display:grid;place-items:center}
.translation-icon .ui-icon{width:26px;height:26px}
.answer-mark .ui-icon{width:40px;height:40px;display:block}
.capture-icon:has(.ui-icon),.speaker-icon:has(.ui-icon),.signal-icon:has(.ui-icon){display:flex;align-items:center;justify-content:center;top:0}
.capture-icon .ui-icon{width:24px;height:24px;max-width:none}
.speaker-icon .ui-icon,.signal-icon .ui-icon{width:28px;height:28px}
.language-direction .ui-icon{width:24px;height:24px}
.stop-square:has(.ui-icon){background:transparent;clip-path:none;display:grid;place-items:center}
.stop-square .ui-icon{width:100%;height:100%}
.stop-button[aria-busy=true] .stop-square .ui-icon{visibility:hidden}
.prejoin-close .ui-icon{width:22px;height:22px}
.prejoin-head-icon .ui-icon{width:36px;height:36px}
.prejoin-symbol .ui-icon,.source-icon .ui-icon,.prejoin-test-icon .ui-icon{width:24px;height:24px}
.source-check .ui-icon{width:16px;height:16px}
.menu-toggle:has(.ui-icon){align-items:center;justify-content:center}
.menu-toggle>.ui-icon{width:24px;height:24px;background:none}
.faq-list summary::after{content:none}
.faq-icon{width:20px;height:20px;flex:none;color:#b69eff}
.faq-icon .ui-icon{width:20px;height:20px;display:block}
.faq-icon .ui-icon:last-child{display:none}
.faq-list details[open] .faq-icon .ui-icon:first-child{display:none}
.faq-list details[open] .faq-icon .ui-icon:last-child{display:block}
.mini-wave .ui-icon{width:24px;height:14px}
.mini-controls .ui-icon{width:12px;height:12px}
.mini-answer-head>.ui-icon{width:12px;height:12px}
.mini-answer-head>span{margin-left:auto}
.mini-translation .ui-icon,.laptop-footer .ui-icon,.laptop-top>span>.ui-icon{width:12px;height:12px}
.mini-listening .ui-icon{width:14px;height:14px}
.mini-listening>span{margin-left:auto}
.plan-features .ui-icon{width:14px;height:14px;color:inherit}
.success-mark .ui-icon{width:38px;height:38px}
@media(max-width:650px){.answer-mark .ui-icon{width:30px;height:30px}.translation-icon .ui-icon{width:23px;height:23px}}
@media(prefers-reduced-motion:reduce){.ui-icon{transition:none}}
