.pbw-widget {
  --pbw-background: #ffffff;
  --pbw-text: #163a2d;
  --pbw-accent: #9fe870;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  padding: clamp(1.25rem, 4vw, 2.5rem);
  color: var(--pbw-text);
  background: var(--pbw-background);
  border: 1px solid #d7e2d9;
  border-radius: 1.5rem;
  font: 400 1rem/1.6 system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  overflow-wrap: anywhere;
}
.pbw-widget *, .pbw-widget *::before, .pbw-widget *::after { box-sizing: border-box; }
.pbw-widget .pbw-heading { margin: 0 0 .75rem; color: var(--pbw-text); font: 650 clamp(1.4rem, 3vw, 2rem)/1.2 system-ui, sans-serif; letter-spacing: -.025em; }
.pbw-widget .pbw-summary { margin: 0 0 1.25rem; font-size: 1.1rem; font-weight: 600; }
.pbw-widget .pbw-description { margin: 1rem 0; }
.pbw-widget .pbw-external-link { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: .75rem 1.3rem; border: 2px solid transparent; border-radius: 2rem; background: var(--pbw-accent); color: var(--pbw-text); font-weight: 650; text-decoration: none; text-align: center; }
.pbw-widget .pbw-external-link:hover { border-color: currentColor; }
.pbw-widget :focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
.pbw-widget .pbw-heading:focus { outline: 2px solid currentColor; outline-offset: 5px; border-radius: .2rem; }
.pbw-widget .pbw-frame { display: block; width: 100%; height: 720px; margin: 1.5rem 0; border: 0; background: #fff; border-radius: .75rem; }
.pbw-widget .pbw-note { margin: 1.25rem 0 0; font-size: .875rem; }
.pbw-widget .pbw-third-party-links { display: flex; flex-wrap: wrap; gap: .25rem 1.25rem; margin: .25rem 0 1rem; font-size: .875rem; }
.pbw-widget .pbw-footer { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid #d7e2d9; }
.pbw-widget .pbw-footer a, .pbw-widget .pbw-third-party-links a { display: inline-flex; align-items: center; min-height: 44px; color: var(--pbw-text); text-underline-offset: .2em; }
@media (max-width: 480px) {
  .pbw-widget .pbw-external-link { width: 100%; }
  .pbw-widget .pbw-frame { height: 760px; }
}
@media (prefers-reduced-motion: reduce) {
  .pbw-widget, .pbw-widget * { scroll-behavior: auto; animation: none; transition: none; }
}
