.resolution-phone-dialog { width: min(440px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 24px; border: 1px solid var(--line); border-radius: 8px; overflow: auto; background: var(--panel); color: var(--text); }
.resolution-phone-dialog::backdrop { background: rgba(15, 35, 43, .55); }
.resolution-phone-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.resolution-phone-dialog h2 { margin: 0; font-size: 20px; line-height: 1.3; }
.resolution-phone-dialog header button, .resolution-phone-number button { flex: 0 0 40px; width: 40px; height: 40px; padding: 8px; display: grid; place-items: center; }
.resolution-phone-dialog button svg { width: 20px; height: 20px; }
#resolution-phone-provider { margin: 16px 0 12px; font-weight: 700; overflow-wrap: anywhere; }
.resolution-phone-number { display: flex; gap: 8px; align-items: center; }
.resolution-phone-number input { min-width: 0; width: 100%; height: 44px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--text); font-size: 20px; font-weight: 700; }
.resolution-phone-dialog figure { margin: 18px 0; text-align: center; }
#resolution-phone-qr { display: block; margin: auto; max-width: 100%; height: auto; aspect-ratio: 1; background: #fff; }
#resolution-phone-qr[hidden] { display: none; }
.resolution-phone-dialog figcaption { margin-top: 8px; font-size: 13px; line-height: 1.5; color: var(--muted); }
#resolution-phone-app { display: flex; justify-content: center; align-items: center; min-height: 44px; text-align: center; text-decoration: none; white-space: normal; }
#resolution-phone-status { margin: 14px 0 0; font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
@media (max-width: 480px) { .resolution-phone-dialog { padding: 16px; } }
