.device-dialog {
  width: min(520px, calc(100vw - 32px)); max-height: 85vh; overflow: auto;
  box-sizing: border-box; padding: 24px; border-radius: 16px;
  border: 1px solid var(--border, #41516a); background: var(--bg-elev, #172334);
  color: var(--text, #edf3fd); box-shadow: 0 24px 80px #0006;
}
.device-dialog::backdrop { background: #030915aa; }
.device-dialog h2 { font-size: 1.3rem; margin: 0 0 12px; }
.device-dialog p { line-height: 1.5; }
.device-dialog button { margin: 6px 6px 6px 0; }
.device-card { border: 1px solid var(--border, #41516a); padding: 14px; margin: 12px 0; border-radius: 10px; }
.device-card strong { display: block; }
.device-badge { display: inline-block; font-size: .8rem; margin: 6px 8px 0 0; opacity: .8; }
.device-error { color: var(--danger, #ed6a70); }
.device-error:empty { display: none; }
.device-forget { display: flex; align-items: center; gap: 10px; margin: 16px 0 8px; }
body[data-theme="light"] .device-dialog, :root[data-theme="light"] .device-dialog { background: #fff; color: #182334; border-color: #cbd5e1; }
