#pushDeviceDialog {
 width:min(520px,calc(100vw - 24px)); max-width:none; max-height:calc(100dvh - 32px);
 margin:auto; padding:0; border:1px solid #cedbe7; border-radius:16px;
 color:#183b56; background:#fff; box-shadow:0 16px 48px #102d4540;
 overflow:auto; overscroll-behavior:contain; box-sizing:border-box;
}
#pushDeviceDialog::backdrop {background:rgb(12 34 53 / 42%)}
#pushDeviceDialog [hidden] {display:none!important}
#pushDeviceDialog .push-heading {position:sticky;top:0;z-index:1;background:#fff;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;border-bottom:1px solid #e2e9ef}
#pushDeviceDialog h2 {font-size:21px;line-height:1.25;margin:0 0 6px;font-weight:700}
#pushDeviceDialog h3 {font-size:12px;line-height:1.4;letter-spacing:.07em;text-transform:uppercase;margin:0 0 10px;color:#536a7e}
#pushDeviceDialog p {font-size:14px;line-height:1.5;margin:0;color:#425a70}
#pushDeviceDialog .push-close {flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:9px;background:#eef3f7;color:#183b56;font-size:26px;line-height:1;cursor:pointer}
#pushDeviceDialog .push-content {padding:20px;display:grid;gap:20px}
#pushDeviceDialog .push-status-box {padding:16px;border:1px solid #d8e3ed;border-radius:12px;background:#f5f8fb}
#pushDeviceDialog #pushDeviceStatus {display:block;font-size:16px;line-height:1.35;font-weight:700;margin-bottom:7px}
#pushDeviceDialog[data-state=enabled] .push-status-box {background:#eef8f2;border-color:#b9dcc6}
#pushDeviceDialog[data-state=enabled] #pushDeviceStatus {color:#24603b}
#pushDeviceDialog[data-state=blocked] .push-status-box,#pushDeviceDialog[data-state=error] .push-status-box {background:#fff7ec;border-color:#e8d3b0}
#pushDeviceDialog .push-guidance {padding-left:20px;margin:12px 0 0;font-size:14px;line-height:1.5;color:#425a70}
#pushDeviceDialog .push-guidance li+li {margin-top:6px}
#pushDeviceDialog .push-actions {display:grid;gap:10px;margin-top:14px}
#pushDeviceDialog .push-action {box-sizing:border-box;min-height:44px;width:100%;padding:11px 16px;border:1px solid #c2d1df;border-radius:9px;background:#fff;color:#183b56;font-family:inherit;font-size:14px;font-weight:600;line-height:1.35;cursor:pointer;white-space:normal}
#pushDeviceDialog .push-primary {background:#183b56;color:#fff;border-color:#183b56}
#pushDeviceDialog button:disabled {opacity:1!important;background:#e9eef2!important;border-color:#d6dfe6!important;color:#748493!important;cursor:not-allowed;box-shadow:none}
#pushDeviceDialog button:focus-visible {outline:3px solid #68b2e3;outline-offset:2px}
#pushDeviceDialog .push-device {border-top:1px solid #e2e9ef;padding-top:16px}
#pushDeviceDialog .push-device strong {display:block;font-size:15px;line-height:1.4;margin-bottom:4px;overflow-wrap:anywhere}
#pushDeviceDialog .push-device small {display:block;color:#5d7284;font-size:12px;line-height:1.5}
#pushDeviceDialog .push-other {display:grid;gap:8px}
#pushDeviceDialog #pushActionResult {padding:10px 12px;background:#f1f5f8;border-radius:8px;overflow-wrap:anywhere}
@media(max-width:480px){#pushDeviceDialog .push-heading{padding:16px}#pushDeviceDialog .push-content{padding:16px;gap:16px}#pushDeviceDialog h2{font-size:20px}#pushDeviceDialog{max-height:calc(100dvh - max(24px,env(safe-area-inset-top)) - max(24px,env(safe-area-inset-bottom)))}}

#pushDeviceDialog #pushDiagnostics summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:bold}#pushDeviceDialog #pushDiagnosticRows{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:12px 0}#pushDeviceDialog #pushDiagnosticRows dd{margin:0}
.push-admin-card{border:1px solid #dbe3ea;border-radius:14px;padding:18px;margin-top:20px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.push-admin-card h3,.push-admin-card p{margin:0}.push-admin-toggle{display:flex;align-items:center;gap:10px;min-height:44px}.push-admin-toggle input[type=checkbox]{width:20px;height:20px;accent-color:#173f5d;flex:none}.push-admin-card button{min-height:44px}
