#vcrm-web-push-toggle-wrapper.vcrm-web-push-control-blocked {
  cursor: not-allowed;
}

#vcrm-web-push-toggle.vcrm-web-push-toggle-blocked,
#vcrm-web-push-toggle:disabled {
  opacity: 0.48;
  cursor: not-allowed;
}

.vcrm-web-push-label-blocked {
  color: var(--vz-secondary-color, #878a99) !important;
  cursor: not-allowed;
}

.webpush-help-popup {
  box-sizing: border-box;
  width: min(32rem, calc(100vw - 1.5rem)) !important;
  max-height: calc(100dvh - 1.5rem) !important;
  padding: 1rem !important;
  overflow: auto;
  border-radius: 1rem;
}

.webpush-help-light { background: #fff !important; color: #212529; }
.webpush-help-dark { background: #212529 !important; color: #f8f9fa; }
.webpush-help-steps { display: grid; gap: .55rem; margin: 0; padding: 0; list-style: none; text-align: left; }
.webpush-help-step { display: grid; grid-template-columns: 1.5rem 1.5rem minmax(0, 1fr); align-items: start; gap: .6rem; padding: .6rem; border: 1px solid #dee2e6; border-radius: .7rem; }
.webpush-help-dark .webpush-help-step { border-color: #495057; background: rgba(255,255,255,.04); }
.webpush-help-number, .webpush-help-step-icon { display: inline-flex; width: 1.5rem; height: 1.5rem; align-items: center; justify-content: center; border-radius: 50%; color: #fff; background: #405189; }
.webpush-help-icon { width: 1.1rem; height: 1.1rem; }
.webpush-help-step-copy { display: grid; gap: .1rem; min-width: 0; font-size: .84rem; line-height: 1.35; overflow-wrap: anywhere; }
.webpush-help-step-copy strong { font-size: .9rem; font-weight: 700; }
.webpush-help-note { margin: .7rem 0 0; padding: .6rem .7rem; border-left: 3px solid #405189; border-radius: .35rem; font-size: .78rem; line-height: 1.4; text-align: left; background: rgba(64,81,137,.08); }
.webpush-help-confirm { min-height: 2.5rem; padding: .6rem 1.2rem; border: 0; border-radius: .55rem; color: #fff; background: #405189; font-size: .9rem; font-weight: 700; }
.webpush-help-confirm:focus-visible { outline: 3px solid #9eb1ff; outline-offset: 2px; }

@media (max-width: 420px) {
  .webpush-help-popup:not(.swal2-toast) { padding: .8rem !important; }
  .webpush-help-step { grid-template-columns: 1.35rem 1.35rem minmax(0, 1fr); gap: .45rem; padding: .5rem .45rem; }
  .webpush-help-number, .webpush-help-step-icon { width: 1.35rem; height: 1.35rem; }
  .webpush-help-step-copy { font-size: .8rem; }
}
