.misieco-account-sync-notice {
  position: fixed;
  z-index: 10000;
  inset: auto 16px 16px auto;
  width: min(460px, calc(100vw - 32px));
  max-height: min(80vh, 560px);
  overflow: auto;
  padding: 20px;
  border: 2px solid #c8102e;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 40px #10213a33;
  color: #13233e;
  font: 400 15px/1.5 system-ui, sans-serif;
}
.misieco-account-sync-notice h2 { margin: 0 0 8px; color: #13233e; font-size: 19px; line-height: 1.3; }
.misieco-account-sync-notice p { margin: 0 0 12px; }
.misieco-account-sync-notice a { color: #a40020; font-weight: 700; text-decoration: underline; }
.misieco-account-sync-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.misieco-account-sync-actions button {
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #a40020;
  border-radius: 7px;
  background: #c8102e;
  color: #fff;
  cursor: pointer;
  font: 700 14px/1.3 system-ui, sans-serif;
}
.misieco-account-sync-actions button + button { border-color: #bdcadd; background: #fff; color: #13233e; }
.misieco-account-sync-actions button:focus-visible, .misieco-account-sync-notice a:focus-visible { outline: 3px solid #13233e; outline-offset: 3px; }
.misieco-account-sync-actions button:disabled { opacity: .6; cursor: wait; }
.misieco-account-sync-status { color: #a40020; font-weight: 700; }
.misieco-account-selection-status { margin: 16px auto; padding: 8px 16px; max-width: 1100px; color: #13233e; font: 400 15px/1.5 system-ui, sans-serif; }
.misieco-account-selection-status[data-state="pending"] { color: #a40020; font-weight: 700; }
/* The sync status is appended inside the dark site footer. Keep its error text
   readable there while retaining the red status color on light backgrounds. */
.site-footer .misieco-account-selection-status[data-state="pending"] { color: #fff; }
/* The product script renders these compact price breakdown labels dynamically. */
.live-price-facts span { color: #526079; }
@media (max-width: 520px) {
  .misieco-account-sync-notice { inset: auto 8px 8px; width: auto; max-height: 72vh; padding: 16px; }
}
