#handoff-dialog {
  box-sizing: border-box;
  width: 480px;
  max-width: calc(100vw - 32px);
  max-height: calc(100dvh - 32px);
  padding: 0;
  border: 1px solid #c8cdd8;
  border-radius: 12px;
  background: #fff;
  color: #252832;
  box-shadow: 0 24px 90px #18202e30;
  overflow-y: auto;
}
#handoff-dialog::backdrop { background: #17223045; }
#handoff-dialog header { display: flex; align-items: flex-start; gap: 16px; padding: 24px 24px 0; }
#handoff-dialog h2 { flex: 1; font-size: 21px; font-weight: 600; line-height: 1.3; margin: 0; }
#handoff-dialog header .ib { flex: none; width: 44px; height: 44px; margin: -4px -6px 0 0; color: #565e6d; }
#handoff-dialog .handoff-body { padding: 22px 24px 24px; }
.handoff-board { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 8px; }
.handoff-board > svg { width: 18px; height: 18px; flex: none; margin-top: 2px; color: #565e6d; }
.handoff-board strong { font-size: 14px; font-weight: 550; line-height: 1.5; overflow-wrap: anywhere; }
#handoff-dialog .handoff-scope { margin: 0 0 24px; border-bottom: 1px solid #e4e7ed; padding-bottom: 16px; }
.handoff-scope summary { display: flex; justify-content: space-between; gap: 12px; cursor: pointer; font-size: 12px; color: #565e6d; padding: 5px 0; }
.handoff-change { color: #2455e6; }
.handoff-scope summary::-webkit-details-marker { display: none; }
.handoff-scope fieldset { border: 0; padding: 12px 0 0; margin: 0; }
.handoff-scope legend { padding: 0; font-size: 12px; margin-bottom: 4px; }
.handoff-scope label, .handoff-more label { display: flex; align-items: center; gap: 9px; font-size: 13px; padding: 8px 0; }
#handoff-dialog input[type=radio], #handoff-dialog input[type=checkbox] { accent-color: #2455e6; width: 16px; height: 16px; flex: none; }
.handoff-jobs { max-height: 180px; overflow-y: auto; border-top: 1px solid #e4e7ed; margin-top: 8px; padding-top: 4px; }
.handoff-jobs[hidden] { display: none; }
.handoff-jobs small { display: block; color: #565e6d; font-size: 11px; }
#handoff-dialog .handoff-lead { font-size: 14px; line-height: 1.5; margin: 0 0 8px; }
#handoff-dialog .handoff-support { font-size: 13px; line-height: 1.5; color: #565e6d; margin: 0 0 20px; }
#handoff-dialog .handoff-primary { display: flex; justify-content: center; align-items: center; width: 100%; gap: 8px; min-height: 44px; font-size: 13px; background: #2455e6; border-color: #2455e6; color: #fff; border-radius: 7px; }
#handoff-dialog .handoff-primary:hover { background: #1d46c2; }
#handoff-dialog .handoff-primary:disabled { opacity: .6; cursor: default; }
#handoff-dialog .handoff-primary svg, .handoff-downloads svg { width: 17px; height: 17px; }
#handoff-delivery:empty { display: none; }
#handoff-delivery { margin-top: 18px; }
.handoff-waiting, .handoff-received { display: flex; gap: 10px; }
.handoff-waiting > svg, .handoff-received > svg { width: 18px; height: 18px; flex: none; margin-top: 2px; color: #565e6d; }
.handoff-waiting strong, .handoff-received strong { font-size: 13px; font-weight: 550; }
.handoff-waiting p, .handoff-received p { font-size: 12px; line-height: 1.5; color: #565e6d; margin: 6px 0 0; }
.handoff-received > svg, .handoff-received strong { color: #326650; }
.handoff-more { margin-top: 18px; color: #565e6d; font-size: 12px; }
.handoff-more[hidden] { display: none; }
.handoff-more summary { cursor: pointer; padding: 6px 0; }
#handoff-prompt-text { box-sizing: border-box; width: 100%; resize: vertical; padding: 12px; margin-top: 8px; border: 1px solid #c8cdd8; border-radius: 6px; font: 12px/1.5 ui-monospace, monospace; color: #252832; background: #fafbfc; }
.handoff-downloads { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.handoff-downloads .bt { flex: 1; display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; }
#handoff-error { color: #a92942; font-size: 12px; line-height: 1.5; margin: 14px 0 0; }
#handoff-status { color: #565e6d; font-size: 12px; margin: 12px 0 0; }
#handoff-error:empty, #handoff-status:empty { display: none; }
#handoff-dialog :focus-visible { outline: 2px solid #2455e6; outline-offset: 3px; }
@media (max-width: 520px) {
  #handoff-dialog header { padding: 20px 20px 0; }
  #handoff-dialog .handoff-body { padding: 18px 20px 20px; }
  #handoff-dialog h2 { font-size: 20px; }
  .handoff-scope summary { min-height: 44px; align-items: center; }
}

#handoff-dialog .handoff-primary svg { fill: none; }
@media (pointer: coarse) {
  .handoff-scope label, .handoff-more label, .handoff-more summary { box-sizing: border-box; min-height: 44px; }
}
