/* A shared transcript, with exactly one composer at a time. */
.conversation-composer #conversation-form[hidden],.conversation-composer .voice-stage[hidden]{display:none!important}
.conversation-composer .voice-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:228px;padding:22px 12px 18px;border:1px solid rgba(205,186,151,.16);border-radius:24px;background:radial-gradient(ellipse at 50% 35%,rgba(191,170,131,.09),transparent 70%);text-align:center}
.conversation-composer .voice-orb{position:relative;display:grid;place-items:center;width:100px;height:100px;min-height:100px;border:1px solid #8c7b60;border-radius:50%;background:linear-gradient(140deg,#e5d5b5 0%,#8b7858 30%,#302b23 52%,#c7b18a 84%,#eee0c3 100%);box-shadow:0 12px 32px rgba(0,0,0,.25),inset 0 0 0 3px rgba(8,9,10,.8);color:#ddcaa5;cursor:pointer;transition:box-shadow .25s,transform .25s}
.voice-orb-core{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#2e2c28,#0c0d0e 72%);box-shadow:inset 0 1px 1px rgba(255,255,255,.12)}
.conversation-composer .voice-orb svg{width:43px;height:43px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.conversation-composer .voice-orb:hover{transform:translateY(-1px);box-shadow:0 14px 36px rgba(0,0,0,.3),0 0 24px rgba(205,186,151,.1)}
.conversation-composer .voice-orb:active{transform:scale(.97)}
.conversation-composer .voice-wave{height:18px;margin:5px 0 0;gap:4px}
.conversation-composer .voice-wave i{width:2px;background:#b6a07a;animation:none;opacity:.5}
.conversation-composer .voice-stage strong{font-size:14px;font-weight:550;letter-spacing:.01em;color:var(--ink)}
.conversation-composer #voice-hint{max-width:28ch;font-size:12px;line-height:1.5;color:var(--muted)}
[data-voice-state=listening] .voice-orb,[data-voice-state=speaking] .voice-orb{box-shadow:0 0 0 7px rgba(205,186,151,.05),0 0 0 14px rgba(205,186,151,.025),0 12px 32px rgba(0,0,0,.2)}
[data-voice-state=listening] .voice-wave i,[data-voice-state=speaking] .voice-wave i{animation:voice-jewel-wave 1.1s ease-in-out infinite alternate;animation-delay:calc(var(--n,1)*-.12s);opacity:.9}
.voice-wave i:nth-child(2n){--n:3}.voice-wave i:nth-child(3n){--n:5}
@keyframes voice-jewel-wave{from{transform:scaleY(.45)}to{transform:scaleY(1)}}
.conversation-composer #conversation-form{border-radius:22px}
.conversation-composer #conversation-input{min-height:76px}
.conversation-composer #conversation-send{min-width:44px;min-height:44px}
[data-theme=light] .conversation-composer .voice-stage{background:radial-gradient(ellipse at 50% 35%,rgba(170,140,90,.12),transparent 75%);border-color:rgba(130,105,66,.22)}
.conversation-mode-action{display:flex;justify-content:flex-end;margin:0 0 10px}
#conversation-switch{display:inline-flex;align-items:center;gap:8px;min-width:44px;min-height:44px;padding:0 13px;color:var(--muted);border:1px solid rgba(188,166,128,.2);border-radius:24px;font-size:11px;background:linear-gradient(145deg,rgba(188,166,128,.08),transparent)}
#conversation-switch svg{width:17px;height:17px}
#conversation-switch:hover{color:var(--ink);border-color:rgba(188,166,128,.45)}
#conversation-switch:focus-visible,.conversation-composer .voice-orb:focus-visible{outline:2px solid #cbb894;outline-offset:4px}
.interface-icon{display:inline-block!important;width:16px!important;height:16px!important;vertical-align:middle;flex-shrink:0}
.watch-overview strong .interface-icon{width:18px!important;height:18px!important}
.watch-movement strong i{display:inline-flex;align-items:center}
button[data-chart-fullscreen]{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.reader-top [data-close-reader]{display:grid;place-items:center;min-width:44px;min-height:44px}
@media(max-width:768px){.conversation-composer .voice-stage{min-height:216px;padding:18px 12px}.conversation-composer{padding-bottom:max(12px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.conversation-composer .voice-wave i{animation:none!important}.conversation-composer .voice-orb{transition:none!important}}
