.preflight-content { max-width:550px; }
.candidate-guide { margin:0 0 18px; padding:16px 18px; border:1px solid #e1dbea; border-radius:13px; background:#f6f4fa; }
.candidate-guide-top { display:flex; flex-wrap:wrap; gap:7px 12px; align-items:center; justify-content:space-between; }
.candidate-guide h3 { margin:0; font-size:13px; color:#60516e; }
.candidate-guide-top > span { font-size:10px; color:#82708e; }
.candidate-guide ol { margin:12px 0 10px; padding-left:20px; font-size:12px; line-height:1.9; color:#72627e; }
.candidate-guide > p { margin:0; font-size:11px; line-height:1.8; color:#887891; }
.preflight-practice, .preflight-check-details { margin:15px 0; border:1px solid #e6dfed; border-radius:11px; padding:12px 14px; }
.preflight-practice summary, .preflight-check-details summary { cursor:pointer; font-size:12px; color:#766081; }
.preflight-practice p { font-size:11px; line-height:1.8; color:#87788f; }
.preflight-practice blockquote { margin:11px 0; padding:9px 12px; border-left:2px solid #d2c3e1; color:#716078; background:#faf8fd; font-size:12px; line-height:1.8; }
.preflight-practice audio { display:block; width:100%; margin:9px 0; height:40px; }
.preflight-practice audio[hidden] { display:none; }
.preflight-check-details .preflight-checks { margin-top:10px; }
.preflight-acknowledgment { display:flex; align-items:flex-start; gap:9px; font-size:11px; line-height:1.8; color:#6b5b78; margin:10px 0; }
.preflight-acknowledgment input { margin:3px 0 0; width:16px; height:16px; flex:none; accent-color:#8470b4; }
.preflight-content [hidden], .finish-draft[hidden], .field[hidden], #auto-answer-label[hidden], #focus-mode-label[hidden], #conversation-method-label[hidden] { display:none !important; }
.preflight-realtime { margin:0 0 20px; padding:17px 18px; border:1px solid #e4ddef; border-radius:13px; background:#f8f5fd; }
.preflight-voice-heading { display:flex; align-items:center; gap:9px; }
.preflight-voice-heading h3 { margin:0; color:#67577d; font-size:13px; font-weight:650; }
.preflight-voice-icon { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:9px; background:#ede6f8; color:#8b74b7; }
.preflight-voice-icon svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.6; }
.preflight-voice-description { margin:11px 0 15px; color:#7c708b; font-size:11px; line-height:1.9; }
.preflight-voice-actions { display:flex; align-items:center; gap:13px; }
.preflight-voice-actions > button { flex:none; min-height:40px; padding:9px 13px; background:#fff; font-size:11px; }
.preflight-voice-actions > p { margin:0; color:#7e718d; font-size:10px; line-height:1.7; }
.microphone-device-choice { display:flex; flex-direction:column; gap:6px; margin:12px 0 5px; font-size:11px; color:#746483; }
.microphone-device-choice select, .microphone-settings select { min-width:0; max-width:100%; padding:9px 10px; border:1px solid #ded5e9; border-radius:8px; background:#fff; color:#554861; font:inherit; }
.microphone-device-name { margin:6px 0 12px; font-size:10px; line-height:1.6; color:#8c7f99; overflow-wrap:anywhere; }
.live-microphone-panel[hidden] { display:none !important; }
.live-microphone-panel { flex:none; margin:10px 0; padding:12px 14px; border:1px solid #e6dfee; border-radius:11px; background:#faf8fd; }
.live-microphone-level { display:flex; align-items:center; gap:9px; flex-wrap:wrap; font-size:10px; color:#81718f; }
.live-microphone-level meter { width:90px; max-width:25%; height:10px; accent-color:#6f9b88; }
.live-microphone-level span { flex:1; min-width:130px; font-size:10px; line-height:1.6; }
.live-microphone-level span[data-state=receiving] { color:#4d8974; }
.live-microphone-level span[data-state=paused] { color:#a06b57; }
.microphone-settings { margin-top:8px; font-size:10px; color:#89759b; }
.microphone-settings summary { width:fit-content; cursor:pointer; padding:4px 0; }
.microphone-settings label { display:flex; flex-direction:column; gap:5px; margin-bottom:9px; }
.microphone-settings button { font:inherit; }
#focus-microphone-panel { margin:13px 0 0; padding:10px 12px; background:#faf8fdba; }
#focus-mic-button.microphone-paused { color:#8b6e5d; background:#f6eee7; border-color:#e5d7ca; box-shadow:none; }
body.interview-focus .conversation-card > .live-microphone-panel { display:none; }
.conversation-method-label { display:block; margin-top:4px; color:#8b79a3; font-size:9px; line-height:1.5; overflow-wrap:anywhere; }
.focus-role-line { display:flex; align-items:center; gap:7px; min-width:0; }
.focus-role-line #focus-role { min-width:0; }
#focus-mode-label { flex:none; padding:2px 6px; border:1px solid #e7e0f0; border-radius:5px; background:#f6f1fcbf; color:#8b76a3; font-size:8px; line-height:1.5; white-space:nowrap; }
.preflight-preview { position:relative; overflow:hidden; margin:0 0 18px; background:#24202e; border-radius:12px; }
.preflight-preview video { display:block; width:100%; max-height:180px; object-fit:contain; transform:scaleX(-1); }
.preflight-preview > span { position:absolute; bottom:8px; left:10px; color:white; font-size:9px; background:#302438a6; border-radius:5px; padding:4px 7px; }
.preflight-recording-choice, .finish-draft label { display:flex; align-items:center; gap:9px; font-size:13px; color:#655975; line-height:1.7; }
.preflight-device-actions { display:flex; align-items:center; gap:20px; margin:16px 0 20px; }
.preflight-device-actions > button { flex:none; font-size:12px; padding:11px 14px; }
.preflight-meter { display:flex; flex:1; flex-direction:column; gap:5px; min-width:0; color:#8a8095; font-size:10px; }
.preflight-meter meter { width:100%; height:10px; accent-color:#8a78bd; }
.preflight-meter span { font-size:9px; line-height:1.5; }
.preflight-checks { list-style:none; padding:0; margin:0; border-top:1px solid #eeebf3; }
.preflight-checks li { display:grid; grid-template-columns:20px 1fr; column-gap:8px; padding:11px 0; border-bottom:1px solid #eeebf3; }
.preflight-checks li::before { content:'✓'; grid-row:1/3; font-size:12px; color:#70a290; }
.preflight-checks li[data-status=blocked]::before { content:'!'; color:#b78362; }
.preflight-checks li[data-status=attention]::before { content:'·'; color:#a798b8; }
.preflight-checks strong { font-size:11px; font-weight:600; color:#62566f; }
.preflight-checks p { margin:4px 0 0; font-size:10px; line-height:1.7; color:#9a90a4; }
.preflight-links { display:flex; flex-wrap:wrap; gap:18px; margin:14px 0; }
.preflight-links .text-button { font-size:10px; }
.preflight-blocker { font-size:11px; color:#ae8066; line-height:1.7; margin:14px 0; }
.preflight-blocker:empty { display:none; }
.preflight-start { position:sticky; bottom:0; padding-top:8px; background:#fff; box-shadow:0 -10px 15px 5px #fff; }
.finish-draft { padding:13px 16px; margin:16px 0; border:1px solid #e8e0f1; border-radius:12px; background:#faf8fe; }
.finish-draft > p:first-child { font-size:12px; margin:0 0 9px; color:#756684; }
.finish-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:10px; margin-top:24px; }
.unsent-draft { margin-top:20px; padding:15px; border-radius:12px; background:#faf6ef; }
.unsent-draft h5 { margin:0 0 8px; color:#8c7655; }
.unsent-draft p { white-space:pre-wrap; font-size:12px; color:#8d8172; line-height:1.8; overflow-wrap:anywhere; }
@media(max-width:500px) {
  .preflight-realtime { padding:14px; }
  .preflight-voice-actions { align-items:flex-start; flex-direction:column; gap:9px; }
  .preflight-device-actions { gap:13px; align-items:flex-start; flex-direction:column; }
  .preflight-meter { width:100%; }
  .focus-role-line { gap:5px; }
  #focus-mode-label { padding:1px 4px; font-size:7px; }
}
