html.in-voice-mode,
html.in-voice-mode body {
  background: #0c0d11 !important;
  transition: none;
}
.voice-screen {
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  height: 100vh;
  height: 100dvh;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  color: #f3f4f6;
  background: #0c0d11;
  overscroll-behavior: contain;
}
.voice-screen::backdrop { background: #0c0d11; }
.vm-panel {
  box-sizing: border-box;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: calc(24px + var(--safe-top, env(safe-area-inset-top, 0px)))
    24px max(44px, var(--safe-bottom, env(safe-area-inset-bottom, 0px)));
}
.voice-screen button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;padding:0;min-height:44px}.voice-screen svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}.voice-screen .vm-route{font-size:12px;color:#b9c1cf;border:1px solid #232a36;border-radius:24px;display:flex;align-items:center;gap:9px;padding:0 15px;min-height:40px}.vm-route svg{width:15px;height:15px}.vm-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;padding-bottom:35px}.voice-screen .vm-portrait-wrap{width:180px;height:180px;display:grid;place-items:center;position:relative;margin-bottom:42px;border-radius:50%;flex:none}.vm-portrait-wrap::before,.vm-portrait-wrap::after{content:"";position:absolute;border-radius:50%;inset:-12px;border:1px solid #f5b85135;box-shadow:0 0 44px #f5b85112;animation:voice-breathe 3.6s ease-in-out infinite;pointer-events:none}.vm-portrait-wrap::after{inset:5px;border-color:#f5b85165;animation-delay:-1.8s}.vm-portrait{display:block;width:156px;height:156px;border-radius:50%;object-fit:cover;box-shadow:0 0 65px #f5b85118}.vm-status{font:400 18px/1.55 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;text-align:center;max-width:100%;padding:10px 0;min-height:60px;color:#e7eaf0}.vm-controls{display:flex;gap:32px}.voice-screen .vm-round{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#1e2533;position:relative}.voice-screen .vm-end{background:#362127;color:#f1ced2}.vm-round[aria-pressed=true]{background:#f3f4f6;color:#111827}.vm-mute[aria-pressed=true]::after{content:"";position:absolute;width:24px;height:1.6px;background:currentColor;transform:rotate(-45deg)}.vm-muted .vm-portrait-wrap::before,.vm-muted .vm-portrait-wrap::after{animation-play-state:paused;opacity:.25}.voice-screen button:focus-visible,.voice-routes button:focus-visible{outline:2px solid #f5b851;outline-offset:4px}.voice-routes{width:calc(100% - 28px);max-width:420px;margin:auto auto 20px;background:#151a24;color:#f3f4f6;border:1px solid #232a36;border-radius:24px;padding:20px;font:16px/1.55 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.voice-routes::backdrop{background:#0009}.voice-routes header{display:flex;justify-content:space-between;align-items:center}.voice-routes h2{font-size:18px;margin:0}.voice-routes button{font:inherit;background:none;color:inherit;border:0;min-height:44px;cursor:pointer}.voice-routes header button{font-size:26px;width:44px}.voice-routes p{font-size:12px;color:#a7b0bf}.voice-routes .vm-route-option{display:flex;width:100%;align-items:center;justify-content:space-between;padding:14px 0;text-align:left;border-bottom:1px solid #232a36;font-size:15px}.in-voice-mode{overflow:hidden}.voice-only{margin:0;background:#0b0e14;color:#f3f4f6}@keyframes voice-breathe{50%{transform:scale(1.09);opacity:.4}}@media(prefers-reduced-motion:reduce){.voice-screen *,.voice-screen *::before,.voice-screen *::after{animation:none!important;transition:none!important}}@media(max-height:600px){.voice-screen .vm-portrait-wrap{width:110px;height:110px;margin:24px}.vm-portrait{width:100px;height:100px}.vm-center{padding:0}.vm-panel{padding:calc(12px + var(--safe-top, env(safe-area-inset-top, 0px))) 24px max(20px, var(--safe-bottom, env(safe-area-inset-bottom, 0px)))}}

.vm-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
}
.voice-screen .vm-minimize {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #1e2533;
  flex: none;
}
.voice-screen .vm-expand,
.voice-screen .vm-summary {
  display: none;
}
.voice-screen.is-minimized {
  inset: calc(var(--safe-top, env(safe-area-inset-top, 0px)) + 10px) 12px auto;
  width: auto;
  max-width: 480px;
  height: auto;
  margin: 0 auto;
  border: 1px solid var(--line, #ffffff24);
  border-radius: 32px;
  background: var(--glass, #151a24ed);
  color: var(--text, #f3f4f6);
  box-shadow: 0 8px 30px #0003;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  overflow: visible;
  z-index: 60;
}
.is-minimized .vm-panel {
  flex-direction: row;
  gap: 6px;
  padding: 8px;
}
.is-minimized .vm-header {
  display: none;
}
.is-minimized .vm-center {
  position: relative;
  flex-direction: row;
  justify-content: flex-start;
  gap: 10px;
  min-width: 0;
  padding: 0;
}
.voice-screen.is-minimized .vm-portrait-wrap {
  width: 36px;
  height: 36px;
  min-height: 36px;
  margin: 0 0 0 4px;
}
.is-minimized .vm-portrait {
  width: 36px;
  height: 36px;
}
.is-minimized .vm-portrait-wrap::before {
  inset: -4px;
}
.is-minimized .vm-portrait-wrap::after {
  inset: -1px;
}
.is-minimized .vm-status {
  min-height: 0;
  padding: 0;
  font-size: 13px;
  line-height: 1.4;
  text-align: left;
  color: inherit;
  overflow-wrap: anywhere;
}
.voice-screen.is-minimized .vm-summary {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  border-radius: 22px;
}
.is-minimized .vm-controls {
  gap: 4px;
  flex: none;
}
.voice-screen.is-minimized .vm-round {
  width: 44px;
  height: 44px;
  background: var(--raised, #293044);
}
.voice-screen.is-minimized .vm-expand {
  display: grid;
}
.voice-screen.is-minimized .vm-end {
  background: #c93646;
  color: #fff;
}
.voice-screen.is-minimized .vm-mute[aria-pressed=true] {
  background: #f5b851;
  color: #21180c;
}

/* Reserve a row so the capsule never covers Pocket's topic and menu buttons.
   The existing ResizeObserver updates the chat stream's top inset. */
.has-voice-mini .shell .chat-header {
  padding-top: calc(78px + var(--safe-top, env(safe-area-inset-top, 0px)));
  height: auto;
}

.has-voice-mini .thread-page .sheet-head {
  padding-top: calc(94px + var(--safe-top, env(safe-area-inset-top, 0px)));
}
