/*
 * PW AI Assistent – Push Subscribe UI
 *
 * Shortcode: [pw_ai_push_subscribe]
 * Markup: .pwai-push-subscribe (data-pwai-push-ui)
 */

.pwai-push-subscribe {
  --pwai-push-primary: #38bbcc;
  --pwai-push-primary-dark: #2ea9bb;
  --pwai-push-ring: rgba(56, 187, 204, 0.35);

  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 12px;
  background: #fff;
  padding: 12px 14px;
  max-width: 560px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

.pwai-push-status {
  font-weight: 600;
  margin: 0 0 8px;
}

.pwai-push-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.pwai-push-btn {
  appearance: none;
  border: 1px solid rgba(0, 0, 0, 0.18);
  border-radius: 10px;
  padding: 10px 12px;
  background: #f6f7f7;
  color: #1d2327;
  cursor: pointer;
  font: inherit;
  line-height: 1.2;
}

.pwai-push-btn:hover {
  background: #f0f0f1;
}

.pwai-push-btn:focus-visible {
  outline: 3px solid var(--pwai-push-ring);
  outline-offset: 2px;
}

.pwai-push-btn--on {
  background: var(--pwai-push-primary);
  border-color: var(--pwai-push-primary);
  color: #fff;
}

.pwai-push-btn--on:hover {
  background: var(--pwai-push-primary-dark);
  border-color: var(--pwai-push-primary-dark);
}

.pwai-push-btn--off {
  background: transparent;
}

/* Busy state (set by pw-ai-push.js via data-pwai-busy="1") */
.pwai-push-subscribe[data-pwai-busy="1"] {
  opacity: 0.85;
}

.pwai-push-subscribe[data-pwai-busy="1"] .pwai-push-btn {
  pointer-events: none;
  opacity: 0.65;
}

/* Problem area (set by pw-ai-push.js via data-pwai-problem) */
.pwai-push-problem {
  margin-top: 10px;
  color: #b32d2e;
}

/* Optional: subtle state hints */
.pwai-push-subscribe[data-pwai-state="on"] {
  border-color: rgba(0, 128, 0, 0.25);
}

.pwai-push-subscribe[data-pwai-state="error"],
.pwai-push-subscribe[data-pwai-state="blocked"],
.pwai-push-subscribe[data-pwai-state="unsupported"],
.pwai-push-subscribe[data-pwai-state="insecure"] {
  background: rgba(179, 45, 46, 0.04);
  border-color: rgba(179, 45, 46, 0.25);
}

/* Make long multi-line messages readable */
.pwai-push-status,
.pwai-push-problem {
  white-space: pre-line;
}
