.pb-notification-host {
  position: fixed;
  z-index: 2200;
  top: max(16px, env(safe-area-inset-top));
  right: max(16px, env(safe-area-inset-right));
  display: grid;
  gap: 8px;
  width: min(400px, calc(100vw - 32px));
  pointer-events: none;
}
.pb-notification-card {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) 44px;
  align-items: start;
  gap: 8px;
  min-height: 68px;
  box-sizing: border-box;
  padding: 12px 8px 12px 12px;
  border: 1px solid #dbe5f0;
  border-radius: 12px;
  background: #f8fbff;
  color: #16314e;
  box-shadow: 0 8px 22px rgba(15, 33, 55, .12);
  pointer-events: auto;
  animation: pb-notification-in 180ms ease-out;
}
.pb-notification-error,
.pb-notification-critical { background: #fff1f2; border-color: #fecdd3; color: #9f1239; }
.pb-notification-warning { background: #fffbeb; border-color: #fde68a; color: #92400e; }
.pb-notification-success { background: #f0fdf4; border-color: #bbf7d0; color: #166534; }
.pb-notification-icon { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; font:700 13px/1 system-ui,sans-serif; color:currentColor; background:color-mix(in srgb,currentColor 12%,transparent); }
.pb-notification-copy { min-width: 0; padding-top: 1px; }
.pb-notification-copy strong { display:block; font:600 14px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.pb-notification-copy p { margin:2px 0 0; overflow-wrap:anywhere; font:400 13px/18px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.pb-notification-close { display:grid; place-items:center; width:44px; height:44px; min-width:44px; margin:-2px 0 0; border:0; border-radius:10px; background:transparent; color:currentColor; font:400 26px/1 system-ui,sans-serif; cursor:pointer; }
.pb-notification-close:hover, .pb-notification-close:focus-visible { background:color-mix(in srgb,currentColor 10%,transparent); outline:none; }
@keyframes pb-notification-in { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:translateY(0); } }
@media (max-width: 700px) { .pb-notification-host { top:max(12px,env(safe-area-inset-top)); right:12px; left:12px; width:auto; } }
@media (prefers-reduced-motion: reduce) { .pb-notification-card { animation:none; } }
