/* Live capture workspace. Keep state, recording, and plan behavior in app.js. */
body#elthosApp.live-recording-view {
  --live-bg: #fff;
  --live-side: #f7f7f5;
  --live-ink: #252525;
  --live-copy: #666661;
  --live-muted: #858580;
  --live-line: #e8e8e4;
  background: var(--live-bg) !important;
  color: var(--live-ink);
}
body#elthosApp.live-recording-view :is(.app-shell,.workspace) {
  position: relative !important; inset: auto !important; width: 100% !important; max-width: none !important;
  height: var(--app-visible-height,100dvh) !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important;
  background: var(--live-bg) !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
}
body#elthosApp.live-recording-view #liveRecordingShell {
  width: 100% !important; max-width: none !important; height: 100% !important; min-height: 0 !important;
  margin: 0 !important; padding: 0 !important; gap: 0 !important; border: 0 !important; border-radius: 0 !important;
  background: var(--live-bg) !important; box-shadow: none !important; backdrop-filter: none !important;
  grid-template-rows: auto auto minmax(0,1fr) !important;
}
body#elthosApp.live-recording-view .live-session-header {
  position: static !important; display: flex !important; align-items: center !important; justify-content: space-between !important;
  gap: 24px !important; min-height: 98px !important; padding: 22px 36px !important; border: 0 !important;
  background: var(--live-bg) !important; box-shadow: none !important;
}
body#elthosApp.live-recording-view .live-session-header > div:first-child {min-width: 0;}
body#elthosApp.live-recording-view .live-session-header .eyebrow {display: block !important; margin: 0 0 6px !important; font-size: 12px !important; font-weight: 400 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--live-muted) !important;}
body#elthosApp.live-recording-view #liveRecordingTitle {margin: 0 !important; font-size: 24px !important; font-weight: 550 !important; letter-spacing: -.65px !important; line-height: 1.3 !important; color: var(--live-ink) !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
body#elthosApp.live-recording-view .live-voice-wave {display: none !important;}
body#elthosApp.live-recording-view .live-session-actions {position: static !important; inset: auto !important; display: flex !important; flex-shrink: 0; width: auto !important; gap: 8px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; transform: none !important;}
body#elthosApp.live-recording-view .live-session-actions button {display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; width: auto !important; min-width: 0 !important; height: 38px !important; min-height: 38px !important; padding: 0 14px !important; border: 1px solid var(--live-line) !important; border-radius: 8px !important; background: var(--live-bg) !important; color: var(--live-copy) !important; font-size: 13px !important; font-weight: 500 !important; box-shadow: none !important;}
body#elthosApp.live-recording-view #liveHomeButton::before {content: "‹" !important; font-size: 21px !important; line-height: 1 !important;}
body#elthosApp.live-recording-view #liveCancelButton {border-color: transparent !important; background: transparent !important;}
body#elthosApp.live-recording-view #liveStopButton {background: var(--live-ink) !important; border-color: var(--live-ink) !important; color: var(--live-bg) !important;}
body#elthosApp.live-recording-view #liveStopButton::before {content: "" !important; display: block !important; width: 8px !important; height: 8px !important; border-radius: 2px !important; background: currentColor !important;}
body#elthosApp.live-recording-view .live-session-actions button:hover:not(:disabled) {filter: brightness(.94);}
body#elthosApp.live-recording-view .live-session-meta {display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 10px 22px !important; padding: 0 36px 20px !important; margin: 0 !important; border-bottom: 1px solid var(--live-line) !important; background: var(--live-bg) !important;}
body#elthosApp.live-recording-view .live-session-meta span {display: inline-flex !important; align-items: center; min-height: 18px !important; padding: 0 !important; gap: 8px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: var(--live-muted) !important; font-size: 12px !important; font-weight: 400 !important; line-height: 1.5 !important;}
body#elthosApp.live-recording-view .live-session-meta span::before {display: none !important;}
body#elthosApp.live-recording-view #liveRecordingTime {color: var(--live-copy) !important; font-variant-numeric: tabular-nums;}
body#elthosApp.live-recording-view #liveRecordingTime::before {content: "" !important; display: block !important; width: 6px !important; height: 6px !important; border-radius: 50% !important; background: #c65e50 !important;}
body#elthosApp.live-recording-view #liveRecordingFile {max-width: 45%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
body#elthosApp.live-recording-view .live-session-main {display: grid !important; grid-template-columns: minmax(0,1fr) 340px !important; grid-template-rows: minmax(0,1fr) !important; gap: 0 !important; height: 100% !important;}
body#elthosApp.live-recording-view .live-transcript-board {display: grid !important; grid-template-rows: auto minmax(0,1fr) !important; border: 0 !important; border-radius: 0 !important; background: var(--live-bg) !important;}
body#elthosApp.live-recording-view .live-transcript-board-header {position: static !important; min-height: 70px !important; padding: 24px 36px 18px !important; border: 0 !important; background: transparent !important; backdrop-filter: none !important;}
body#elthosApp.live-recording-view .live-transcript-board-header strong {color: var(--live-ink) !important; font-size: 15px !important; font-weight: 550 !important;}
body#elthosApp.live-recording-view .live-transcript-board-header strong::after {display: none !important;}
body#elthosApp.live-recording-view .live-transcript-board-header > span {display: block !important; color: var(--live-muted) !important; font-size: 12px !important; font-weight: 400 !important;}
body#elthosApp.live-recording-view #liveTranscriptFeed {display: grid !important; align-content: start !important; gap: 28px !important; padding: 24px max(36px,calc((100% - 860px)/2)) 48px !important; background: transparent !important; scroll-behavior: smooth;}
body#elthosApp.live-recording-view .live-transcript-block {display: grid !important; gap: 8px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important;}
body#elthosApp.live-recording-view .live-transcript-block strong {color: var(--live-copy) !important; font-size: 13px !important; font-weight: 500 !important;}
body#elthosApp.live-recording-view .live-transcript-block p {color: var(--live-ink) !important; font-size: 18px !important; font-weight: 400 !important; line-height: 1.85 !important; overflow-wrap: anywhere;}
body#elthosApp.live-recording-view .live-transcript-block.partial {border-left: 2px solid var(--live-line) !important; padding-left: 18px !important;}
body#elthosApp.live-recording-view .live-transcript-block.partial p {color: var(--live-copy) !important;}
body#elthosApp.live-recording-view #liveTranscriptFeed:has(> .live-transcript-empty:only-child) {align-content: center !important; padding-bottom: 100px !important;}
body#elthosApp.live-recording-view .live-transcript-empty {max-width: 430px !important; margin: 0 auto !important; padding: 0 !important; text-align: center !important; color: var(--live-muted) !important; font-size: 16px !important; font-weight: 400 !important; line-height: 1.8 !important;}
body#elthosApp.live-recording-view .live-transcript-empty::before {content: ""; display: block; width: 44px; height: 44px; margin: 0 auto 22px; background: var(--live-side); border: 1px solid var(--live-line); border-radius: 14px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44' fill='none' stroke='%23858580' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M14 19v6m4-10v14m4-18v22m4-18v14m4-10v6'/%3E%3C/svg%3E");}
body#elthosApp.live-recording-view .live-suggestions-board {position: static !important; inset: auto !important; width: 100% !important; height: 100% !important; max-height: none !important; margin: 0 !important; padding: 0 !important; display: grid !important; grid-template-rows: auto minmax(0,1fr) !important; border: 0 !important; border-left: 1px solid var(--live-line) !important; border-radius: 0 !important; background: var(--live-side) !important; box-shadow: none !important; opacity: 1 !important; pointer-events: auto !important; transform: none !important;}
body#elthosApp.live-recording-view .live-suggestions-board::before {display: none !important;}
body#elthosApp.live-recording-view .live-suggestions-header {padding: 24px !important; border: 0 !important; gap: 12px !important; background: transparent !important;}
body#elthosApp.live-recording-view .live-suggestions-header strong {font-size: 15px !important; font-weight: 550 !important; color: var(--live-ink) !important;}
body#elthosApp.live-recording-view #liveSuggestionsStatus {display: block !important; color: var(--live-muted) !important; font-size: 12px !important; font-weight: 400 !important; margin-top: 6px !important;}
body#elthosApp.live-recording-view .live-suggestions-actions {display: flex !important; flex-direction: row !important; gap: 6px !important;}
body#elthosApp.live-recording-view .live-suggestions-actions button {min-width: 0 !important; min-height: 30px !important; height: 30px !important; padding: 4px 9px !important; border: 1px solid var(--live-line) !important; border-radius: 7px !important; background: transparent !important; color: var(--live-copy) !important; font-size: 12px !important; font-weight: 400 !important; box-shadow: none !important;}
body#elthosApp.live-recording-view #liveSuggestionsList {display: grid !important; align-content: start !important; gap: 14px !important; padding: 0 24px 24px !important;}
body#elthosApp.live-recording-view .live-suggestion-empty {margin: 0 !important; padding: 16px 0 !important; color: var(--live-muted) !important; font-size: 14px !important; line-height: 1.8 !important; font-weight: 400 !important; text-align: left !important;}
body#elthosApp.live-recording-view .live-suggestion-card {display: block !important; margin: 0 !important; padding: 18px !important; border: 1px solid var(--live-line) !important; border-radius: 10px !important; background: var(--live-bg) !important; box-shadow: none !important;}
body#elthosApp.live-recording-view .live-coach-question {display: block !important; margin: 0 !important; color: var(--live-ink) !important; font-size: 15px !important; line-height: 1.75 !important; font-weight: 400 !important; -webkit-line-clamp: unset !important;}
body#elthosApp.live-recording-view [hidden] {display: none !important;}
body#elthosApp.live-recording-view button:focus-visible {outline: 2px solid #8b9d94 !important; outline-offset: 3px !important;}
@media(max-width:900px) {
 body#elthosApp.live-recording-view .live-session-main {grid-template-columns: minmax(0,1fr) 290px !important;}
 body#elthosApp.live-recording-view .live-session-header {padding: 20px 24px !important;}
 body#elthosApp.live-recording-view .live-session-meta {padding-left: 24px !important; padding-right: 24px !important;}
}
@media(max-width:680px) {
 body#elthosApp.live-recording-view .live-session-header {flex-wrap: wrap !important; gap: 16px !important; padding: max(20px,env(safe-area-inset-top)) 20px 16px !important;}
 body#elthosApp.live-recording-view .live-session-header > div:first-child {width: 100%;}
 body#elthosApp.live-recording-view #liveRecordingTitle {font-size: 22px !important;}
 body#elthosApp.live-recording-view .live-session-actions {width: 100% !important; justify-content: flex-start !important;}
 body#elthosApp.live-recording-view #liveStopButton {margin-left: auto !important;}
 body#elthosApp.live-recording-view .live-session-meta {gap: 8px 16px !important; padding: 0 20px 16px !important;}
 body#elthosApp.live-recording-view #liveRecordingFile {display: none !important;}
 body#elthosApp.live-recording-view .live-session-main {grid-template-columns: minmax(0,1fr) !important; grid-template-rows: minmax(0,1fr) minmax(120px,190px) !important;}
 body#elthosApp.live-recording-view .live-transcript-board-header {min-height: 54px !important; padding: 18px 20px 12px !important;}
 body#elthosApp.live-recording-view .live-transcript-board-header > span {font-size: 11px !important;}
 body#elthosApp.live-recording-view #liveTranscriptFeed {padding: 16px 24px 32px !important; gap: 22px !important;}
 body#elthosApp.live-recording-view .live-transcript-block p {font-size: 16px !important; line-height: 1.8 !important;}
 body#elthosApp.live-recording-view #liveTranscriptFeed:has(> .live-transcript-empty:only-child) {padding-bottom: 24px !important;}
 body#elthosApp.live-recording-view .live-transcript-empty {font-size: 14px !important;}
 body#elthosApp.live-recording-view .live-suggestions-board {border: 0 !important; border-top: 1px solid var(--live-line) !important; padding-bottom: env(safe-area-inset-bottom) !important;}
 body#elthosApp.live-recording-view .live-suggestions-header {padding: 16px 20px 12px !important;}
 body#elthosApp.live-recording-view #liveSuggestionsList {padding: 0 20px 16px !important;}
 body#elthosApp.live-recording-view .live-suggestion-card {padding: 12px 14px !important;}
 body#elthosApp.live-recording-view.live-coach-expanded .live-session-main {grid-template-rows: minmax(0,1fr) minmax(190px,40%) !important;}
}
:root[data-theme="dark"] body#elthosApp.live-recording-view {--live-bg:#212121;--live-side:#191919;--live-ink:#e9e9e6;--live-copy:#b0b0a9;--live-muted:#90908c;--live-line:#343432;}
@media(prefers-reduced-motion:reduce) {body#elthosApp.live-recording-view #liveTranscriptFeed {scroll-behavior: auto !important;}}
/* Reset legacy mobile icon-only controls while preserving their button handlers. */
body#elthosApp.live-recording-view .live-session-actions {height: 38px !important; min-height: 38px !important;}
body#elthosApp.live-recording-view .live-session-actions button {order: 0 !important; font-size: 13px !important;}
body#elthosApp.live-recording-view .live-session-actions button::before {position: static !important; inset: auto !important; transform: none !important; margin: 0 !important;}
body#elthosApp.live-recording-view #liveHomeButton::before {display: inline-block !important; width: auto !important; height: auto !important; border: 0 !important; background: none !important;}
body#elthosApp.live-recording-view #liveCancelButton::before,body#elthosApp.live-recording-view #liveCancelButton::after {display: none !important;}
body#elthosApp.live-recording-view #liveRecordingTime::before {min-width: 6px !important; min-height: 6px !important; transform: none !important;}
body#elthosApp.live-recording-view .live-suggestions-header {display: flex !important;}
body#elthosApp.live-recording-view .live-suggestions-header strong {text-transform: none !important; letter-spacing: 0 !important;}
body#elthosApp.live-recording-view:not(.has-live-coach-suggestions) .live-suggestions-board {display: none !important;}
body#elthosApp.live-recording-view:not(.has-live-coach-suggestions) .live-session-main {grid-template-columns: minmax(0,1fr) !important; grid-template-rows: minmax(0,1fr) !important;}
@media(max-width:680px) {
 body#elthosApp.live-recording-view .live-session-actions,body#elthosApp.live-recording-view .live-session-actions button {height: 44px !important; min-height: 44px !important;}
 body#elthosApp.live-recording-view .live-suggestions-actions button {min-height: 36px !important; height: 36px !important;}
}
