.contact-import-dialog { box-sizing:border-box; width:min(620px,calc(100% - 24px)); max-height:calc(100dvh - 32px); padding:24px; border:1px solid #d6e1e9; border-top:5px solid #ef7c2f; border-radius:20px; color:#102c40; background:#fff; box-shadow:0 20px 70px #0d263f40; overscroll-behavior:contain; }
.contact-import-dialog::backdrop { background:#0d263f99; }
.contact-import-dialog * { box-sizing:border-box; }
.contact-import-dialog form { display:block; margin:0; }
.contact-import-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.contact-import-heading h2 { margin:0; font-size:1.5rem; line-height:1.2; }
.contact-import-dialog button { min-height:44px; border:1px solid #c4d3df; border-radius:10px; padding:10px 14px; background:#f2f7fc; color:#15364e; font:700 1rem/1.25 system-ui,sans-serif; cursor:pointer; white-space:normal; }
.contact-import-dialog button:disabled { opacity:.55; cursor:default; }
.contact-import-dialog :focus-visible { outline:3px solid #2474c4; outline-offset:3px; }
.contact-import-help,.contact-import-instructions { font-size:.95rem; line-height:1.5; color:#526879; }
.contact-import-instructions summary { cursor:pointer; text-decoration:underline; padding:10px 0; }
.contact-import-sources { display:grid; gap:10px; margin:20px 0; }
.contact-import-sources p { margin:0; }
.contact-import-count { font-weight:700; }
.contact-import-status { line-height:1.5; color:#21664b; overflow-wrap:anywhere; }
.contact-import-status:empty,.contact-import-duplicate:empty { display:none; }
.contact-import-status.error { color:#a22b24; background:#fff5f3; border-left:3px solid #bc3e32; padding:10px; }
.contact-import-contact { min-width:0; margin:16px 0; padding:16px; border:1px solid #d6e1e9; border-radius:14px; background:#f8fbfe; }
.contact-import-contact legend { width:auto; padding:0 6px; font-size:.95rem; font-weight:700; }
.contact-import-field { display:block!important; margin:14px 0; font-weight:600; font-size:1rem; }
.contact-import-field > label { display:block; }
.contact-import-field input,.contact-import-field select { display:block; margin-top:6px; }
.contact-import-field input,.contact-import-field select { width:100%; min-width:0; min-height:44px; padding:10px; border:1px solid #bdccd8; border-radius:9px; background:#fff; color:#102c40; font:400 16px/1.35 system-ui,sans-serif; }
.contact-import-check { display:flex!important; flex-direction:row!important; align-items:flex-start; gap:10px; font-size:1rem; line-height:1.4; padding:8px 0; cursor:pointer; }
.contact-import-check input { width:22px!important; height:22px!important; min-height:0!important; flex:0 0 22px; margin:0; accent-color:#0d263f; }
.contact-import-duplicate { font-size:.9rem; line-height:1.4; color:#8b4c12; }
.contact-import-selection-actions,.contact-import-pages { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:12px 0; }
.contact-import-footer { position:sticky; bottom:-24px; padding:16px 0 8px; background:#fff; }
.contact-import-dialog .contact-import-primary { width:100%; background:#0d263f; color:#fff; border-color:#0d263f; min-height:50px; }
.contact-import-dialog [hidden] { display:none!important; }
.contact-import-launch { margin:10px 0; min-height:44px; }
@media(max-width:420px) { .contact-import-dialog { padding:18px; } .contact-import-heading h2 { font-size:1.3rem; } .contact-import-heading button { padding:10px; } .contact-import-contact { padding:12px; } .contact-import-footer { bottom:-18px; } }
