/* Shared final control treatment across the workspace and its mounted composers. */
/* Embedded tool pages use body themes rather than the workspace root theme. */
body:not(:has(#shell.unified-shell)) .composer-send-outline{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;padding:9px!important;border:1.5px solid var(--accent,#36bda7)!important;border-radius:50%!important;background:#fff!important;color:#15231e!important;display:inline-flex;align-items:center;justify-content:center;box-shadow:none!important}
body:not(:has(#shell.unified-shell)) .composer-send-outline>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
body:not(:has(#shell.unified-shell)) .shared-composer::after{content:'';position:absolute;inset:0;border-radius:16px;pointer-events:none;border:1px solid #36bda780;box-shadow:0 0 14px #36bda738;animation:composer-pulse-opacity 3.6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){body:not(:has(#shell.unified-shell)) .shared-composer::after{animation:none;opacity:.4}}
@keyframes composer-heartbeat{
  0%,45%,100%{box-shadow:0 0 0 1px color-mix(in srgb,var(--b1x-accent,var(--cyan)) 18%,transparent),0 0 8px color-mix(in srgb,var(--b1x-accent,var(--cyan)) 8%,transparent)}
  12%,28%{box-shadow:0 0 0 1px color-mix(in srgb,var(--b1x-accent,var(--cyan)) 44%,transparent),0 0 18px color-mix(in srgb,var(--b1x-accent,var(--cyan)) 20%,transparent)}
  20%{box-shadow:0 0 0 1px color-mix(in srgb,var(--b1x-accent,var(--cyan)) 25%,transparent),0 0 10px color-mix(in srgb,var(--b1x-accent,var(--cyan)) 10%,transparent)}
}
:root[data-theme] body .shared-composer{animation:composer-heartbeat 3.6s ease-in-out infinite;border-radius:var(--composer-radius,16px)}
@keyframes composer-pulse-opacity{0%,45%,100%{opacity:.25}12%,28%{opacity:.85}20%{opacity:.4}}
:root[data-theme] body .shared-composer{position:relative}
:root[data-theme] body .shared-composer::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;border:1px solid color-mix(in srgb,var(--b1x-accent,var(--cyan)) 50%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--b1x-accent,var(--cyan)) 22%,transparent);animation:composer-pulse-opacity 3.6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){:root[data-theme] body .shared-composer{animation:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--b1x-accent,var(--cyan)) 30%,transparent)}}
@media(prefers-reduced-motion:reduce){:root[data-theme] body .shared-composer::after{animation:none;opacity:.4}}
:root[data-theme] body #shell.unified-shell #composer .composer-toolbar .composer-model-control{width:auto!important;min-width:90px!important;max-width:160px;flex:0 1 auto!important;padding:0!important;background:transparent}
:root[data-theme] body #shell.unified-shell .composer-model-glyph{display:none}
:root[data-theme] body :is(#profile,#arena-ref-model-select)[hidden]{display:none!important}
.companion-settings-panel{display:grid;gap:14px;padding:16px 0}
.companion-settings-panel .companion-voice-access{display:grid;gap:12px}
.companion-settings-panel :is(select,input){width:100%;min-height:40px}
.companion-settings-panel label{display:grid;gap:8px}
.cortex-quickbar>button:is(:nth-child(3),:nth-child(4)){font-size:11px;padding:6px 10px}
:root[data-theme] body :is(.composer-send-outline,#shell.unified-shell #composer .composer-toolbar #send){
  width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;padding:9px!important;flex:0 0 40px!important;
  border:1.5px solid var(--b1x-accent,var(--cyan))!important;border-radius:50%!important;background:#fff!important;color:#15231e!important;box-shadow:none!important;
  display:inline-flex;align-items:center;justify-content:center;gap:0!important;
}
:root[data-theme] body .composer-send-outline>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
:root[data-theme] body .composer-send-outline svg{width:19px!important;height:19px!important;flex-shrink:0}
:root[data-theme] body .composer-send-outline:hover:not(:disabled){background:#f4f6f5!important}
:root[data-theme] body .composer-send-outline:disabled{opacity:.45}
:root[data-theme] body .composer-send-outline:focus-visible{outline:2px solid var(--b1x-accent);outline-offset:3px}
:root[data-theme] body .model-menu-trigger{height:34px;min-height:34px;max-width:100%;padding:5px 12px!important;border:1px solid var(--b1x-border)!important;border-radius:10px;background:var(--b1x-control)!important;color:var(--b1x-text)!important;font:600 12px var(--sans,system-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
:root[data-theme] body .model-menu-panel{position:fixed;inset:auto;margin:0;padding:8px;max-height:calc(100dvh - 24px);overflow-y:auto;border:1px solid var(--b1x-border);border-radius:16px;background:var(--b1x-solid);color:var(--b1x-text);box-shadow:0 12px 44px #0003;font:13px/1.45 var(--sans,system-ui)}
.model-menu-panel h3{font-size:13px;margin:6px 9px}.model-menu-note{font-size:12px;color:var(--b1x-muted);margin:8px 9px 12px}
:root[data-theme] body .model-menu-option{display:flex;flex-direction:column;align-items:flex-start;width:100%;gap:4px;padding:10px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--b1x-text);text-align:left;cursor:pointer}
.model-menu-option small{color:var(--b1x-muted);font-size:11px}.model-menu-option strong{font-size:13px}
:root[data-theme] body .model-menu-option:is(:hover,:focus-visible,[aria-selected=true]){background:var(--b1x-selection);border-color:var(--b1x-border);outline:none}
:root[data-theme] body #shell.unified-shell .composer-secondary-content{padding:14px!important;border:1px solid var(--b1x-border)!important;border-radius:16px!important;background:var(--b1x-solid)!important;color:var(--b1x-text)!important;box-shadow:0 12px 36px #0003!important;max-height:min(460px,60dvh);overflow-y:auto;gap:12px}
.composer-secondary-content .composer-output-label{margin:0;padding:10px 0;border:0}.composer-output-label legend{font-weight:600;margin-bottom:8px}.composer-output-label label{display:flex;align-items:center;gap:9px;padding:7px 4px;cursor:pointer}
.composer-secondary-content input[type=checkbox]{accent-color:var(--b1x-accent);width:16px;height:16px}
:root[data-theme] body .composer-secondary-content button{border-radius:10px!important;color:var(--b1x-text)!important}
:root[data-theme] body select option{background:var(--b1x-solid);color:var(--b1x-text)}
@media(max-width:600px){:root[data-theme] body :is(.composer-send-outline,#shell.unified-shell #composer .composer-toolbar #send){width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;flex-basis:44px!important}.model-menu-trigger{min-height:40px!important}}
/* One clear primary action: send arrow at rest, stop square during a response. */
:root[data-theme] body .composer-send-outline[data-send-state=empty],:root[data-theme] body .composer-send-outline[data-send-state=unavailable]{opacity:.42!important;cursor:default!important}
:root[data-theme] body .composer-send-outline[data-send-state=ready]{opacity:1!important;cursor:pointer}
:root[data-theme] body #shell.unified-shell #composer#composer #send[data-send-state=running]{display:none!important}
:root[data-theme] body #shell.unified-shell #composer#composer #stop:not([hidden]){display:inline-flex!important;align-items:center;justify-content:center;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:10px!important;border-radius:50%!important;border:1px solid var(--b1x-border)!important;background:#fff!important;color:#17221e!important}
:root[data-theme] body #shell.unified-shell #composer#composer #stop svg{width:16px!important;height:16px!important;fill:currentColor;stroke:none}
:root[data-theme] body #shell.unified-shell #composer#composer #stop span{display:none!important}
@media(pointer:coarse){:root[data-theme] body #shell.unified-shell #composer#composer #stop:not([hidden]){width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important}}
@media(max-width:600px){:root[data-theme] body #shell.unified-shell #composer#composer #stop:not([hidden]){width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;flex:0 0 44px!important}}
@keyframes live-voice-heartbeat{0%,48%,100%{opacity:.48;transform:scale(.96)}12%,30%{opacity:.95;transform:scale(1.12)}21%{opacity:.65;transform:scale(1.02)}}
:root[data-theme] body #composer-live-audio{position:relative;isolation:isolate;color:var(--b1x-accent)!important}
:root[data-theme] body #composer-live-audio::before{content:'';position:absolute;inset:1px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--b1x-accent) 38%,transparent),transparent 74%);box-shadow:0 0 14px 3px color-mix(in srgb,var(--b1x-accent) 38%,transparent),0 0 24px 5px color-mix(in srgb,var(--b1x-accent) 16%,transparent);z-index:-1;pointer-events:none;animation:live-voice-heartbeat 4.2s ease-in-out infinite}
:root[data-theme] body #composer-live-audio svg{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--b1x-accent) 40%,transparent))}
@media(prefers-reduced-motion:reduce){:root[data-theme] body #composer-live-audio::before{animation:none;opacity:.55;transform:none}}
:root[data-theme] body .composer-send-outline:is([data-send-state=empty],[data-send-state=unavailable],[data-send-state=ready]){background:#fff!important;opacity:1!important;color:#17221e!important}
:root[data-theme] body .composer-send-outline:is([data-send-state=empty],[data-send-state=unavailable]) svg{opacity:.4}
:root[data-theme] body .composer-send-outline[data-send-state=ready] svg{opacity:1}
