.codex #composer { align-items:flex-end; }
.codex textarea { height:auto; max-height:136px; min-height:28px; font-size:15px; line-height:22px; padding:5px 0; }
.codex #send { background:#171717; color:white; box-shadow:none; margin-bottom:3px; }
.codex #send:disabled { opacity:.28; cursor:default; }
.codex #mic { margin-bottom:4px; }
.codex .working { color:#888; font-size:14px; padding:8px 0; }
.mirror .empty { height:360px; opacity:.75; }
.mirror .banner strong { padding-right:28px; }
.codex .result { font-size:14px; }
.codex .result small { font-size:11px; }
.codex .conversation:empty { mask-image:none; }
.demo-inactive { cursor:default!important; }
.mirror .demo-inactive:active, .codex .demo-inactive:active { transform:none; filter:none; }
.codex textarea[readonly] { cursor:default; }
@media(prefers-reduced-motion:reduce) { .notice { animation:none; } }
/* Separate overlay avoids clipping the ring at card and preview edges. */
.demo-guide-ring { position:absolute;z-index:30;pointer-events:none; }
.demo-guide-ring::after {
  content:'';position:absolute;inset:-8px;
  border:2px solid #007aff;border-radius:inherit;
  box-shadow:0 0 10px #007aff12;
  animation:demo-guide-pulse 2.6s ease-in-out infinite;
}
@keyframes demo-guide-pulse {
  0%,100% { inset:-8px;opacity:1; }
  50% { inset:-16px;opacity:.55; }
}
@media(prefers-reduced-motion:reduce) {
  .demo-guide-ring::after { animation:none; }
}
