.inperson-dialog { width:min(760px,calc(100% - 24px)); max-height:94dvh; padding:24px; border:1px solid #ccd8dc; border-radius:8px; background:#fff; color:#172630; overflow:auto; font:16px/1.5 Arial,sans-serif; }
.inperson-dialog::backdrop { background:#15272ecc; }
.inperson-dialog header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.inperson-dialog h2 { font-size:22px; font-weight:700; }
.inperson-dialog h3 { font-size:18px; margin:24px 0 12px; font-weight:700; }
.inperson-dialog button { min-height:44px; padding:10px 16px; border:1px solid #bbcbd0; border-radius:6px; cursor:pointer; }
.inperson-dialog [data-close] { font-size:24px; line-height:1; background:transparent; color:inherit; }
.inperson-dialog select { display:block; width:100%; padding:12px; border:1px solid #bbcbd0; border-radius:6px; margin:8px 0 16px; background:inherit; color:inherit; }
.inperson-dialog input:is([data-client-email],[data-email-code],[data-document-name]) { display:block; box-sizing:border-box; width:100%; min-width:0; min-height:44px; padding:12px; margin:8px 0 16px; border:1px solid #bbcbd0; border-radius:6px; background:inherit; color:inherit; font:inherit; }
.inperson-dialog .inperson-check span { min-width:0; overflow-wrap:anywhere; }
.inperson-dialog [data-code-label] { display:block; margin-top:16px; }
.inperson-dialog [data-send-code] { font:inherit; color:inherit; background:transparent; }
.inperson-dialog [data-send-code] { width:min(100%,340px); transition:transform 120ms ease; }
.inperson-dialog [data-send-code]:active:not(:disabled) { transform:scale(.97); }
.inperson-dialog [data-send-code].is-sending { background:#edf8f5; color:#006d5d; }
.inperson-dialog [data-send-code].is-sending::before { content:''; display:inline-block; width:14px; height:14px; margin-right:8px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; vertical-align:-2px; animation:client-mail-spin 800ms linear infinite; }
@keyframes client-mail-spin { to { transform:rotate(360deg); } }
body[data-page=inspect] .inspection-validation-error { color:#b42332 !important; font-weight:600; }
html[data-ui-theme=dark] body[data-page=inspect] .inspection-validation-error { color:#ffa5ad !important; }
html[data-ui-theme=dark] .inperson-dialog [data-send-code].is-sending { background:#173e35; color:#c1f5e9; }
@media (prefers-reduced-motion:reduce) { .inperson-dialog [data-send-code] { transition:none; } .inperson-dialog [data-send-code].is-sending::before { animation:none; } }
.inperson-dialog [data-content] { margin-top:20px; }
.inperson-dialog img { display:block; width:100%; height:auto; margin:8px 0; border:1px solid #bbcbd0; background:white; }
.inperson-page { width:100%; overflow:auto; overscroll-behavior-x:contain; }
.inperson-page img { max-width:none; box-sizing:border-box; }
.inperson-page-controls { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.inperson-page-controls button { width:44px; padding:8px; background:transparent; color:inherit; }
.inperson-page-controls svg { width:24px; height:24px; }
.inperson-dialog .inperson-check { display:flex; align-items:flex-start; gap:12px; margin:18px 0; }
.inperson-check input { width:22px; height:22px; flex:0 0 22px; margin-top:2px; accent-color:#008774; }
.inperson-dialog summary { cursor:pointer; font-weight:700; min-height:44px; }
.inperson-dialog footer { margin-top:24px; display:flex; justify-content:flex-end; }
.inperson-dialog [data-next] { background:#008774; color:#fff; font-weight:700; }
.archive-completion-dialog [data-download] { display:inline-flex; align-items:center; justify-content:center; gap:8px; background:#008774; color:#fff; font:inherit; font-weight:700; }
.archive-completion-dialog [data-download] svg { width:18px; height:18px; }
.inperson-dialog [data-next]:disabled { opacity:.5; cursor:not-allowed; }
.inperson-dialog [data-error] { color:#ac293c; margin-top:12px; }
.inperson-dialog :is(button,input,select,summary):focus-visible { outline:2px solid #008774; outline-offset:3px; }
.inperson-dialog [data-close] { width:44px; height:44px; flex:0 0 44px; padding:0; transition:transform 120ms ease; }
.inperson-dialog [data-close]:focus:not(:focus-visible) { outline:none; box-shadow:none; }
.inperson-dialog [data-close]:focus-visible { outline:2px solid #667b84; outline-offset:2px; }
.inperson-dialog [data-close]:active { transform:scale(.97); }
@media (hover:hover) and (pointer:fine) { .inperson-dialog [data-close]:hover { transform:scale(.97); } }
@media (prefers-reduced-motion:reduce) { .inperson-dialog [data-close] { transition:none; transform:none; } }
.inperson-name { font-size:18px; font-weight:700; margin-bottom:12px; }
html[data-ui-theme=dark] .inperson-dialog { background:#222a2d; color:#edf1f2; border-color:#536568; }
html[data-ui-theme=dark] .inperson-dialog [data-error] { color:#ffa5ad; }
@media (max-width:480px) { .inperson-dialog { padding:16px; } .inperson-dialog footer button { width:100%; } }
