.vpgr {
  --vpgr-accent: #245646; --vpgr-selected-text: #fff;
  --vpgr-button-bg: #f2f6f3; --vpgr-button-text: #245646;
  --vpgr-border: #8ca89b; --vpgr-menu-width: 33%;
  display: grid; grid-template-columns: minmax(0, var(--vpgr-menu-width)) minmax(0, 1fr);
  gap: 28px; align-items: start; width: 100%; color: inherit; font: inherit;
}
.vpgr, .vpgr * { box-sizing: border-box; }
.vpgr .vpgr__menu { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.vpgr .vpgr__button {
  display: block; width: 100%; min-height: 48px; margin: 0; padding: 14px 16px;
  background: var(--vpgr-button-bg); color: var(--vpgr-button-text);
  border: 2px solid var(--vpgr-border); border-radius: 8px;
  font: inherit; font-weight: 700; line-height: 1.5; text-align: left;
  text-transform: none; letter-spacing: normal; white-space: normal;
  overflow-wrap: anywhere; cursor: pointer; box-shadow: none;
}
.vpgr .vpgr__button:hover { border-color: var(--vpgr-accent); }
.vpgr .vpgr__button[aria-pressed="true"] { background: var(--vpgr-accent); border-color: var(--vpgr-accent); color: var(--vpgr-selected-text); }
.vpgr .vpgr__button:focus-visible { outline: 3px solid var(--vpgr-accent); outline-offset: 3px; }
.vpgr .vpgr__contents { min-width: 0; }
.vpgr .vpgr__panel { padding: 20px; border: 2px solid var(--vpgr-border); border-radius: 10px; overflow-wrap: anywhere; }
.vpgr .vpgr__panel[hidden] { display: none !important; }
.vpgr .vpgr__heading { margin-top: 0; }
.vpgr .vpgr__text > :first-child { margin-top: 0; }
.vpgr .vpgr__text > :last-child { margin-bottom: 0; }
.vpgr .vpgr__text img { max-width: 100%; height: auto; }
@media (max-width: 767px) { .vpgr { grid-template-columns: minmax(0, 1fr); } }
