/* Dictation Surface 3 — Census/NE/IR host anatomy. Recorder palette stays scoped. */
.voice-host-capture, .voice-upload-job, .voice-field-indicator, .nev-capture-surface,
.nev-voice-modes, .nev-held-label {
    --voice-base: #141821; --voice-void: #0c1016; --voice-head: #1b212c;
    --voice-line: #2f3947; --voice-muted: #8e97a6; --voice-text: #e9e3d8;
    --voice-teal: #4fa3a0; --voice-harvest: #d4a040;
    box-sizing: border-box;
}
.voice-host-capture { margin-bottom: 14px; min-width: 0; }
.voice-host-capture .ds, .nev-capture-surface .ds { width: 100%; max-width: none; }
#quickGenerateModal:has(.ds) #quickGenMicBtn { display: none; }
#quickGenerateModal .sol-modal-content { background: #10141b; border: 2px solid rgb(243 229 211 / 9%); box-shadow: 0 18px 64px #0008, 0 3px 10px #0006; }
#quickGenerateModal .sol-modal-header { background: #1b212c; border-color: #2f3947; }
#quickGenerateModal .sol-quick-gen-textarea { background: #0c1016; border-color: #2f3947; color: #e9e3d8; font: 16px/1.55 'IBM Plex Serif', Georgia, serif; }
.voice-upload-job { display: grid; gap: 8px; width: 100%; min-width: 0; padding: 14px; margin-block: 10px;
    color: var(--voice-text); background: var(--voice-base); border: 2px solid rgb(243 229 211 / 9%); border-radius: 12px;
    box-shadow: 0 8px 24px #0003, 0 2px 6px #0003; text-align: left; }
.voice-upload-job[hidden], .voice-field-indicator[hidden] { display: none !important; }
.voice-upload-kicker { font: 600 10px/1.4 'IBM Plex Mono', monospace; letter-spacing: .1em; color: var(--voice-harvest); }
.voice-upload-name { font: 500 14px/1.4 'IBM Plex Sans', sans-serif; overflow-wrap: anywhere; }
.voice-upload-meta, .voice-upload-formats { color: var(--voice-muted); font: 11px/1.5 'IBM Plex Mono', monospace; }
.voice-upload-destination { border-top: 1px solid var(--voice-line); padding-top: 8px; font: 13px/1.45 'IBM Plex Sans', sans-serif; overflow-wrap: anywhere; }
.voice-upload-message { margin: 0; color: #c8c9cd; font: 13px/1.55 'IBM Plex Sans', sans-serif; }
.voice-upload-stripe { height: 4px; border-radius: 4px; background: repeating-linear-gradient(110deg,#d4a04099 0 10px,#d4a0401c 10px 20px); background-size: 28px 100%; animation: voice-file-progress 1.1s linear infinite; }
.voice-upload-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.voice-host-action { border: 1px solid #3c4858; border-radius: 6px; background: #171c25; color: #e9e3d8; min-height: 36px; padding: 6px 10px; font: 500 12px/1.3 'IBM Plex Sans', sans-serif; cursor: pointer; }
.voice-host-action:hover { border-color: #6b7a8f; background: #232b38; }
.voice-host-action:focus-visible { outline: 2px solid #d4a040; outline-offset: 3px; }
.voice-retained-source { margin-block: 10px; padding: 12px; border: 1px solid #bfa16266; border-left: 3px solid #bfa162; border-radius: 8px; background: #141821; color: #a8b0bc; font: 12px/1.5 'IBM Plex Sans', sans-serif; overflow-wrap: anywhere; }
.voice-retained-source strong { display: block; color: #e9e3d8; margin-bottom: 6px; }
.voice-retained-source .voice-host-action { margin: 8px 5px 0 0; }
.voice-retained-words { max-height: 150px; overflow-y: auto; white-space: pre-wrap; color: #e9e3d8; font: 15px/1.55 'IBM Plex Serif', Georgia, serif; }
.voice-upload-job[data-state="complete"] .voice-upload-kicker { color: var(--voice-teal); }
.voice-upload-job[data-state="error"] .voice-upload-kicker { color: #e07764; }
.voice-field-indicator { display: flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid #2f3947; border-radius: 6px 6px 0 0; background: #141821; color: #8e97a6; font: 500 10px/1.5 'IBM Plex Mono', monospace; letter-spacing: .05em; overflow-wrap: anywhere; }
.voice-field-indicator::before { content: ''; width: 6px; height: 6px; flex: 0 0 6px; border: 1px solid currentColor; border-radius: 50%; }
.voice-field-indicator[data-state="listening"] { color: #63b6ae; }
.voice-field-indicator[data-state="listening"]::before { background: currentColor; box-shadow: 0 0 8px #4fa3a044; }
.voice-field-indicator:is([data-state="connecting"],[data-state="stopping"],[data-state="processing"],[data-state="reconnecting"]) { color: #d4a040; }
.voice-field-receiving, #irTranscriptInput.ir-textarea--recording { border-color: #4fa3a0 !important; box-shadow: inset 0 0 0 1px #4fa3a033 !important; }
.ir-panel--transcript > .voice-field-indicator { margin: 10px 0; }
.ir-panel--transcript { padding-bottom: 22px; }
.rail-talk-pane .rail-talk-row { background: #141821; border: 2px solid rgb(243 229 211 / 9%); border-radius: 10px; padding: 10px; }
.rail-talk-pane .rail-talk-input { color: #e9e3d8; background: #0c1016; border-color: #2f3947; font-family: 'IBM Plex Serif', Georgia, serif; }
[data-talk-mic] { min-height: 38px; border-radius: 20px !important; }
/* Filled, dark-on-colour: the rail is light or dark by theme, and teal or harvest
   text on the light rail measured 2:1 (2026-10-11). Dark ink on the fill reads on both. */
[data-talk-mic].is-on { color: #0c1016 !important; border-color: #4fa3a0 !important; background: #63b6ae !important; }
[data-talk-mic][aria-busy="true"] { color: #0c1016 !important; border-color: #d4a040 !important; background: #d4a040 !important; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-entry-composer { background: #10141b; border-color: #2f3947; min-width: 0; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-voice-modes { display: flex; flex-wrap: wrap; gap: 3px; padding: 5px; margin-bottom: 10px; background: #0c1016; border: 1px solid #2f3947; border-radius: 8px; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-voice-modes button { flex: 1 1 auto; border: 1px solid transparent; border-radius: 5px; padding: 7px 8px; min-height: 34px; background: transparent; color: #8e97a6; font: 500 11px/1.3 'IBM Plex Sans', sans-serif; cursor: pointer; white-space: nowrap; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-voice-modes button[aria-checked="true"] { color: #f0d59c; border-color: #d4a04055; background: #d4a04015; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-voice-modes button:disabled { cursor: not-allowed; opacity: .48; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-voice-modes button[aria-checked="true"]:disabled { opacity: 1; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-voice-mode-fallback { display: none; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-capture-surface { margin-bottom: 10px; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-capture-surface .ds-transcript { max-height: 150px; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-capture-surface:has(.ds) ~ .nev-voice-ghost,
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-capture-surface:has(.ds) ~ .nev-voice-strip { display: none; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-held-label { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px; color: #d4a040; font: 500 10px/1.5 'IBM Plex Mono', monospace; margin: 8px 0; letter-spacing: .04em; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-held-label span { color: #8e97a6; letter-spacing: 0; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-entry-textarea { background: #0c1016; color: #e9e3d8; border-color: #2f3947; font: 16px/1.55 'IBM Plex Serif', Georgia, serif; min-height: 100px; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-entry-card { background: #141821; border-color: #2f3947; border-left-color: #4fa3a0; border-radius: 8px; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-entry-card .nev-entry-text { font-family: 'IBM Plex Serif', Georgia, serif; font-size: 15px; line-height: 1.55; color: #e9e3d8; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-entry-meta .nev-entry-status { color: #63b6ae; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-routing-chip { background: #bfa16212; border-color: #bfa16244; color: #d6c38b; }
.nev-talk-feed { pointer-events: auto; }
.nev-talk-bubble { background: #141821; border: 2px solid rgb(243 229 211 / 9%); border-left: 3px solid #4fa3a0; border-radius: 10px; padding: 12px; box-shadow: 0 8px 24px #0005,0 2px 6px #0004; }
.nev-talk-bubble-text { font: 15px/1.55 'IBM Plex Serif', Georgia, serif; }
.nev-talk-bubble-note { color: #8e97a6; font: 11px/1.5 'IBM Plex Sans', sans-serif; margin-block: 7px; }
.nev-talk-bubble .voice-host-action { margin-top: 7px; }
@keyframes voice-file-progress { to { background-position: 28px 0; } }
@media (prefers-reduced-motion: reduce) { .voice-upload-stripe { animation: none; } }
@media (max-width: 600px) { .voice-upload-job { padding: 11px; } .voice-host-action { min-height: 44px; } :is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-voice-modes button { min-height: 40px; } }

:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-living-update { background: #10141b; border-color: #2f3947; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-source-save-status:empty { display: none; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-source-save-receipt { display: flex; flex-wrap: wrap; gap: 4px 10px; padding: 9px 10px; margin-bottom: 8px; border: 1px solid #2f3947; border-left: 3px solid #d4a040; border-radius: 6px; background: #141821; font: 12px/1.5 'IBM Plex Sans', sans-serif; color: #a8b0bc; overflow-wrap: anywhere; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-source-save-receipt strong { color: #e9e3d8; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-source-save-receipt[data-state="saved"] { border-left-color: #4fa3a0; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-source-save-receipt[data-state="failed"] { border-left-color: #e07764; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-source-save-retained { flex-basis: 100%; max-height: 120px; overflow-y: auto; white-space: pre-wrap; margin: 4px 0; color: #e9e3d8; font: 15px/1.55 'IBM Plex Serif', Georgia, serif; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-routing-confidence { flex-basis: 100%; color: #a8b0bc; font: 11px/1.5 'IBM Plex Sans', sans-serif; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-routing-chip-new { border-style: dashed; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-entry-routing { min-width: 0; flex-wrap: wrap; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-routing-chip { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-entry-outcome { margin-top: 8px; color: #a8b0bc; font: 13px/1.5 'IBM Plex Sans', sans-serif; overflow-wrap: anywhere; }
:is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-companion="on"]) .nev-entry-propose-btn { min-height: 36px; padding: 7px 12px; background: #1b2330; color: #e9e3d8; border: 1px solid #445166; border-radius: 6px; font: 12px/1.4 'IBM Plex Sans', sans-serif; cursor: pointer; }
#noteEvolutionTakeover .nev-entry-thread { container: ne-source-thread / inline-size; }
@container ne-source-thread (max-width: 600px) {
    :is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-wide][data-nev-desk="note-first"][data-nev-clinical="on"]) .nev-entry-card { grid-template-columns: minmax(0, 1fr); gap: 7px; }
    :is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-wide][data-nev-desk="note-first"][data-nev-clinical="on"]) .nev-entry-card > * { grid-column: 1; grid-row: auto; min-width: 0; }
    :is(#noteEvolutionTakeover, #noteEvolutionTakeover[data-nev-v2][data-nev-wide][data-nev-desk="note-first"][data-nev-clinical="on"]) .nev-entry-card .nev-entry-meta { flex-direction: row; flex-wrap: wrap; gap: 5px 10px; }
}
/* Advisory routing estimates and actual, short-lived problem editor presence. */
.nev-route-estimates { flex: 1 1 100%; display: grid; gap: 5px; margin-top: 4px; }
.nev-route-estimate { display: grid; grid-template-columns: minmax(0, 1fr) 64px max-content; gap: 8px; align-items: center; color: #cbd5df; font-size: 11px; }
.nev-route-estimate > span:first-child { overflow-wrap: anywhere; }
.nev-route-estimate meter { width: 64px; height: 6px; accent-color: #71d7c7; }
.nev-editor-presence { flex-basis: 100%; color: #e9b87d; font-size: 11px; line-height: 1.4; }
