#ipm-connection-status[hidden], #ipm-connection-status button[hidden] { display: none !important; }
#ipm-connection-status {
  position: fixed;
  bottom: calc(16px + env(safe-area-inset-bottom, 0px));
  left: 50%;
  transform: translateX(-50%);
  z-index: 2147483647;
  box-sizing: border-box;
  width: max-content;
  max-width: calc(100% - 24px);
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border: 1px solid #fbbf24;
  border-radius: 12px;
  background: #422006;
  color: #fff;
  box-shadow: 0 4px 24px #0004;
  font: 500 14px/1.5 system-ui, sans-serif;
  text-align: left;
}
#ipm-connection-status[data-state="online"] { background: #14532d; border-color: #86efac; }
#ipm-connection-status button {
  flex-shrink: 0;
  width: auto;
  min-height: 44px;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid #fff;
  border-radius: 8px;
  background: transparent;
  color: #fff;
  font: inherit;
  cursor: pointer;
}
#ipm-connection-status button:focus-visible { outline: 3px solid #fbbf24; outline-offset: 3px; }
@media print { #ipm-connection-status { display: none !important; } }
