/* R3P: compact mobile approval inbox and per-device administration. */
.jdw-approval-alert { display:inline-flex; align-items:center; gap:5px; background:#fef3dd; border:1px solid #f3d5a9; border-radius:7px; padding:6px 8px; font-size:11px; text-decoration:none; color:#845426; white-space:nowrap; }
.jdw-approval-alert[hidden] { display:none; }
.jdw-primary-mobile { margin:10px 0; }
.jdw-primary-ready { font-size:12px; color:#52748a; }
.jdw-primary-form { display:flex; flex-wrap:wrap; align-items:center; gap:7px; margin-top:9px; }
.jdw-primary-form label { font-size:11px; color:#6a7d8d; }
.jdw-primary-form input { min-height:32px; max-width:180px; border:1px solid #dbe4ec; border-radius:7px; padding:6px 8px; font-size:14px; }
.jdw-primary-tools { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:8px; }
.jdw-primary-tools span { font-size:10px; color:#7f9aac; }
.jdw-primary-unbind { margin-top:9px; font-size:11px; color:#8395a5; }
.jdw-mobile-request-list { display:grid; gap:6px; margin:10px 0; font-size:11px; color:#657e8d; }
.jdw-request-item { display:grid; gap:2px; padding:7px 9px; border:1px solid #e2ebf2; border-radius:7px; }
.jdw-request-item strong { color:#34627f; }
.jdw-request-item small { font-size:10px; color:#7f97a6; }
.jdw-policy-tags { display:flex; gap:4px; flex-wrap:wrap; margin-top:6px; align-items:center; }
.jdw-policy-tags b { border-radius:6px; background:#e8f3f5; padding:2px 6px; color:#48758b; font-size:10px; }
.jdw-policy-tags small { font-size:10px; color:#9d7141; }
.jdw-device-policy-editor { margin-top:7px; max-width:100%; font-size:11px; }
.jdw-device-policy-editor summary { width:max-content; max-width:100%; cursor:pointer; color:#246780; }
.jdw-policy-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; padding:9px; border:1px solid #e3eaf1; border-radius:8px; margin-top:6px; }
.jdw-policy-form label { display:grid; gap:4px; color:#537387; font-size:10px; min-width:0; }
.jdw-policy-form input,.jdw-policy-form select { width:100%; min-width:0; border:1px solid #d3e1e9; border-radius:6px; padding:6px; font-size:13px; min-height:33px; background:#fff; color:#284c60; }
.jdw-policy-form .mini-button { justify-self:start; align-self:end; }
.jdw-policy-note { font-size:10px; color:#a27452; margin:5px 0; }
.jdw-request-toast { display:block; position:fixed; right:14px; bottom:78px; max-width:calc(100vw - 28px); z-index:99999; border-radius:9px; background:#145a70; color:#fff; padding:12px; font-size:12px; text-decoration:none; box-shadow:0 8px 22px #0002; }
@media(max-width:580px) {
  .jdw-policy-form { grid-template-columns:1fr; }
  .jdw-policy-form input,.jdw-policy-form select { font-size:16px; }
  .jdw-primary-form { align-items:stretch; }
  .jdw-primary-form input { max-width:100%; flex:1; font-size:16px; }
  .jdw-approval-alert { font-size:10px; padding:5px; }
}

/* R3P1 — log in first; label/classify the device afterward in MY. */
.login-dialog { width:min(494px,calc(100vw - 28px)); max-width:100%; }
.login-dialog .dialog-heading { margin-bottom:5px; }
.login-dialog .jdw-login-device-context { justify-content:flex-start; margin:8px 0 12px; }
.login-dialog .jdw-login-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:10px; row-gap:6px; }
.login-dialog .login-form .jdw-login-fields .jdw-login-field { display:flex; flex-direction:column; gap:4px; min-width:0; margin:0; font-size:11px; color:#516f81; }
.login-dialog .jdw-login-field input { width:100%; min-width:0; margin:0; height:40px; padding:8px 10px; }
.login-dialog .login-form .jdw-remember-label { margin:10px 0 0; }
.login-dialog .login-hint { border-top:1px solid #edf2f5; padding-top:8px; font-size:10px; line-height:1.4; margin-top:9px; color:#8298aa; }
.login-dialog .login-form .action-primary { min-height:39px; margin-top:10px; }
@media(max-width:580px) {
  .login-dialog { width:min(370px,calc(100vw - 24px)); padding:16px; max-height:calc(100dvh - 24px); }
  .login-dialog .jdw-login-fields { grid-template-columns:1fr; row-gap:9px; }
  .login-dialog .jdw-login-field { font-size:11px; }
  .login-dialog .jdw-login-field input { height:39px; min-height:39px; font-size:16px; }
  .login-dialog .jdw-login-device-context { margin:5px 0 9px; }
  .login-dialog .login-form .action-primary { min-height:39px; }
}
