.pnpl-card-v2 {
  --pnpl-ink: var(--pnpl-text-color, #1c211d);
  --pnpl-muted: #626a64;
  --pnpl-accent: var(--pnpl-button-bg, #254438);
  --pnpl-label: var(--pnpl-label-color, #254438);
  --pnpl-button-radius: 8px;
  display: grid;
  grid-template-columns: 176px minmax(0, 1fr);
  gap: 28px;
  align-items: center;
  width: min(100%, 760px);
  margin: 28px auto;
  padding: 22px;
  color: var(--pnpl-ink);
  background: #fff;
  border: 1px solid #dde1dd;
  border-radius: 8px;
  box-sizing: border-box;
  box-shadow: none;
}

.pnpl-card-v2 *, .pnpl-card-v2 *::before, .pnpl-card-v2 *::after { box-sizing: border-box; }

.pnpl-card-v2__media {
  width: 176px;
  overflow: hidden;
  background: #f4f5f3;
  border: 0;
  border-radius: 6px;
}

.pnpl-card-v2__media img {
  display: block;
  width: 100%;
  max-width: none;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  background: #f4f5f3;
}

.pnpl-card-v2__noimage {
  display: grid;
  place-items: center;
  aspect-ratio: 1 / 1;
  color: #737a74;
  background: #f4f5f3;
  font-size: 12px;
  font-weight: 700;
}

.pnpl-card-v2__body { display: grid; gap: 18px; min-width: 0; }
.pnpl-card-v2__content { display: grid; gap: 8px; min-width: 0; }

.pnpl-card-v2__label {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 2px;
  padding: 0 0 0 8px;
  color: var(--pnpl-label);
  background: transparent;
  border: 0;
  border-left: 3px solid currentColor;
  border-radius: 0;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: .06em;
}

.pnpl-card-v2__title {
  margin: 0;
  color: var(--pnpl-ink);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: 0;
}

.pnpl-card-v2__summary {
  margin: 0;
  color: var(--pnpl-muted);
  font-size: 13px;
  line-height: 1.7;
  letter-spacing: 0;
}

.pnpl-card-v2__price { margin: 2px 0 0; color: var(--pnpl-ink); font-size: 15px; font-weight: 800; line-height: 1.4; }

.pnpl-card-v2__actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
  width: min(100%, 440px);
}

.pnpl-card-v2--button-full .pnpl-card-v2__actions { width: 100%; }

.pnpl-card-v2__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 46px;
  padding: 11px 18px;
  color: var(--pnpl-button-text, #fff);
  background: var(--pnpl-accent);
  border: 1px solid var(--pnpl-accent);
  border-radius: var(--pnpl-button-radius, 8px);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  text-align: center;
  text-decoration: none;
  transition: background-color .15s ease, color .15s ease, opacity .15s ease;
}

.pnpl-card-v2__button:hover, .pnpl-card-v2__button:focus { color: var(--pnpl-button-text, #fff); opacity: .86; text-decoration: none; }

.pnpl-card-v2--button-style-outline .pnpl-card-v2__button { color: var(--pnpl-accent); background: #fff; border-color: var(--pnpl-accent); }
.pnpl-card-v2--button-style-outline .pnpl-card-v2__button:hover,
.pnpl-card-v2--button-style-outline .pnpl-card-v2__button:focus { color: var(--pnpl-button-text, #fff); background: var(--pnpl-accent); opacity: 1; }
.pnpl-card-v2--button-shape-soft .pnpl-card-v2__button { border-radius: 8px; }
.pnpl-card-v2--button-shape-pill .pnpl-card-v2__button { border-radius: 999px; }
.pnpl-card-v2--button-shape-square .pnpl-card-v2__button { border-radius: 2px; }

.pnpl-card-v2--layout-image_big { grid-template-columns: 214px minmax(0, 1fr); width: min(100%, 800px); }
.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 214px; }
.pnpl-card-v2--image-right { grid-template-columns: minmax(0, 1fr) 176px; }
.pnpl-card-v2--image-right .pnpl-card-v2__media { grid-column: 2; }
.pnpl-card-v2--image-right .pnpl-card-v2__body { grid-column: 1; grid-row: 1; }
.pnpl-card-v2--layout-image_big.pnpl-card-v2--image-right { grid-template-columns: minmax(0, 1fr) 214px; }

/* Monochrome: crisp magazine typography with restrained rules. */
.pnpl-card-v2--simple {
  grid-template-columns: 250px minmax(0, 1fr);
  gap: 32px;
  width: min(100%, 840px);
  padding: 24px;
  background: #fff;
  border-color: #d8d8d5;
  border-radius: 4px;
}
.pnpl-card-v2--simple .pnpl-card-v2__media { width: 250px; border-radius: 2px; }
.pnpl-card-v2--simple .pnpl-card-v2__content { gap: 11px; }
.pnpl-card-v2--simple .pnpl-card-v2__label { padding: 0; color: #171817; border: 0; }
.pnpl-card-v2--simple .pnpl-card-v2__title { padding-bottom: 14px; border-bottom: 1px solid #777b77; font-size: 20px; line-height: 1.5; }
.pnpl-card-v2--simple .pnpl-card-v2__price { font-size: 22px; }
.pnpl-card-v2--simple .pnpl-card-v2__actions { grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; }
.pnpl-card-v2--simple .pnpl-card-v2__button { border-radius: 2px; }
.pnpl-card-v2--simple .pnpl-card-v2__button--rakuten { color: #202220; background: #fff; border-color: #202220; }
.pnpl-card-v2--simple .pnpl-card-v2__button--amazon { color: #fff; background: #202220; border-color: #202220; }
.pnpl-card-v2--simple.pnpl-card-v2--layout-image_big { grid-template-columns: 286px minmax(0,1fr); width: min(100%,880px); }
.pnpl-card-v2--simple.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 286px; }
.pnpl-card-v2--simple.pnpl-card-v2--image-right { grid-template-columns: minmax(0,1fr) 250px; }
.pnpl-card-v2--simple.pnpl-card-v2--layout-image_big.pnpl-card-v2--image-right { grid-template-columns: minmax(0,1fr) 286px; }

/* Color block: bold mustard information panel with a clean image field. */
.pnpl-card-v2--soft {
  grid-template-columns: 290px minmax(0,1fr);
  gap: 0;
  width: min(100%, 860px);
  padding: 0;
  overflow: hidden;
  background: #eea915;
  border: 0;
  border-radius: 6px;
}
.pnpl-card-v2--soft .pnpl-card-v2__media { width: 290px; border-radius: 0; }
.pnpl-card-v2--soft .pnpl-card-v2__media,
.pnpl-card-v2--soft .pnpl-card-v2__media img { background: #fff; }
.pnpl-card-v2--soft .pnpl-card-v2__body { gap: 22px; padding: 30px; }
.pnpl-card-v2--soft .pnpl-card-v2__content { gap: 11px; }
.pnpl-card-v2--soft .pnpl-card-v2__label { padding: 0 0 7px; color: #171917; border: 0; border-bottom: 2px solid #252825; }
.pnpl-card-v2--soft .pnpl-card-v2__title { color: #171917; font-size: 21px; line-height: 1.5; }
.pnpl-card-v2--soft .pnpl-card-v2__summary { color: #3e3c34; }
.pnpl-card-v2--soft .pnpl-card-v2__price { color: #171917; font-size: 22px; }
.pnpl-card-v2--soft .pnpl-card-v2__actions { grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; }
.pnpl-card-v2--soft .pnpl-card-v2__button { color: #fff; background: #252825; border-color: #252825; border-radius: 2px; }
.pnpl-card-v2--soft.pnpl-card-v2--layout-image_big { grid-template-columns: 330px minmax(0,1fr); width: min(100%,900px); }
.pnpl-card-v2--soft.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 330px; }
.pnpl-card-v2--soft.pnpl-card-v2--image-right { grid-template-columns: minmax(0,1fr) 290px; }
.pnpl-card-v2--soft.pnpl-card-v2--layout-image_big.pnpl-card-v2--image-right { grid-template-columns: minmax(0,1fr) 330px; }

/* Minimal review: compact editorial strip for recommendation lists. */
.pnpl-card-v2--ticket {
  grid-template-columns: 160px minmax(0,1fr);
  gap: 0;
  width: min(100%, 860px);
  padding: 24px;
  background: #fff;
  border-color: #e0e1dd;
  border-radius: 4px;
}
.pnpl-card-v2--ticket .pnpl-card-v2__media { width: 160px; border-radius: 2px; }
.pnpl-card-v2--ticket .pnpl-card-v2__body { grid-template-columns: minmax(0,1fr) 180px; gap: 24px; align-items: center; padding-left: 24px; border-left: 1px solid #c9ccc2; }
.pnpl-card-v2--ticket .pnpl-card-v2__content { gap: 8px; }
.pnpl-card-v2--ticket .pnpl-card-v2__label { padding: 0; color: #526126; border: 0; }
.pnpl-card-v2--ticket .pnpl-card-v2__title { font-size: 16px; }
.pnpl-card-v2--ticket .pnpl-card-v2__summary { font-size: 12px; line-height: 1.65; }
.pnpl-card-v2--ticket .pnpl-card-v2__price { color: #526126; font-size: 20px; }
.pnpl-card-v2--ticket .pnpl-card-v2__actions { grid-template-columns: 1fr; width: 180px; }
.pnpl-card-v2--ticket .pnpl-card-v2__button { min-height: 40px; padding: 8px 12px; border-radius: 2px; }
.pnpl-card-v2--ticket .pnpl-card-v2__button--rakuten { color: #fff; background: #596721; border-color: #596721; }
.pnpl-card-v2--ticket .pnpl-card-v2__button--amazon { color: #596721; background: #fff; border-color: #596721; }
.pnpl-card-v2--ticket.pnpl-card-v2--layout-image_big { grid-template-columns: 190px minmax(0,1fr); }
.pnpl-card-v2--ticket.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 190px; }
.pnpl-card-v2--ticket.pnpl-card-v2--image-right { grid-template-columns: minmax(0,1fr) 160px; }
.pnpl-card-v2--ticket.pnpl-card-v2--image-right .pnpl-card-v2__body { padding-right: 24px; padding-left: 0; border-right: 1px solid #c9ccc2; border-left: 0; }
.pnpl-card-v2--ticket.pnpl-card-v2--layout-image_big.pnpl-card-v2--image-right { grid-template-columns: minmax(0,1fr) 190px; }

/* Editorial: a restrained magazine-style card matched to Parunote. */
.pnpl-card-v2--tag {
  grid-template-columns: 250px minmax(0, 1fr);
  gap: 36px;
  width: min(100%, 860px);
  padding: 28px;
  background: #fffaf0;
  border: 0;
  border-radius: 9px;
}

.pnpl-card-v2--tag .pnpl-card-v2__media {
  width: 250px;
  background: #fff;
  border-radius: 6px;
}

.pnpl-card-v2--tag .pnpl-card-v2__media img {
  background: #fff;
}

.pnpl-card-v2--tag .pnpl-card-v2__body {
  gap: 22px;
}

.pnpl-card-v2--tag .pnpl-card-v2__content {
  gap: 12px;
}

.pnpl-card-v2--tag .pnpl-card-v2__label {
  padding: 1px 0 1px 11px;
  color: #1d211e;
  background: transparent;
  border: 0;
  border-left: 4px solid #d89a13;
  border-radius: 0;
  font-size: 11px;
}

.pnpl-card-v2--tag .pnpl-card-v2__title {
  color: #171917;
  font-size: 21px;
  font-weight: 800;
  line-height: 1.52;
}

.pnpl-card-v2--tag .pnpl-card-v2__summary {
  color: #5c5b54;
}

.pnpl-card-v2--tag .pnpl-card-v2__price {
  color: #c98400;
  font-size: 23px;
  line-height: 1.25;
}

.pnpl-card-v2--tag .pnpl-card-v2__actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
}

.pnpl-card-v2--tag .pnpl-card-v2__button {
  min-height: 48px;
  border-radius: 7px;
  font-size: 14px;
}

.pnpl-card-v2--tag .pnpl-card-v2__button--rakuten {
  color: #171917;
  background: #efa617;
  border-color: #efa617;
}

.pnpl-card-v2--tag .pnpl-card-v2__button--amazon {
  color: #fff;
  background: #252825;
  border-color: #252825;
}

.pnpl-card-v2--tag .pnpl-card-v2__button--yahoo {
  color: #252825;
  background: #fff;
  border-color: #252825;
}

.pnpl-card-v2--tag.pnpl-card-v2--layout-image_big {
  grid-template-columns: 286px minmax(0, 1fr);
  width: min(100%, 900px);
}

.pnpl-card-v2--tag.pnpl-card-v2--layout-image_big .pnpl-card-v2__media {
  width: 286px;
}

.pnpl-card-v2--tag.pnpl-card-v2--image-right {
  grid-template-columns: minmax(0, 1fr) 250px;
}

.pnpl-card-v2--tag.pnpl-card-v2--layout-image_big.pnpl-card-v2--image-right {
  grid-template-columns: minmax(0, 1fr) 286px;
}

@media (max-width: 640px) {
  .pnpl-card-v2,
  .pnpl-card-v2--layout-image_big,
  .pnpl-card-v2--image-right,
  .pnpl-card-v2--layout-image_big.pnpl-card-v2--image-right,
  .pnpl-card-v2--ticket,
  .pnpl-card-v2--ticket.pnpl-card-v2--layout-image_big,
  .pnpl-card-v2--ticket.pnpl-card-v2--image-right,
  .pnpl-card-v2--ticket.pnpl-card-v2--layout-image_big.pnpl-card-v2--image-right {
    grid-template-columns: 1fr;
    width: min(100%, 380px);
    padding: 18px;
    gap: 18px;
  }
  .pnpl-card-v2--simple .pnpl-card-v2__media,
  .pnpl-card-v2--simple.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 100%; }
  .pnpl-card-v2--simple .pnpl-card-v2__title { font-size: 17px; }
  .pnpl-card-v2--soft { padding: 0; }
  .pnpl-card-v2--soft .pnpl-card-v2__media,
  .pnpl-card-v2--soft.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 100%; }
  .pnpl-card-v2--soft .pnpl-card-v2__body { padding: 20px; }
  .pnpl-card-v2--soft .pnpl-card-v2__title { font-size: 18px; }
  .pnpl-card-v2--ticket .pnpl-card-v2__body,
  .pnpl-card-v2--ticket.pnpl-card-v2--image-right .pnpl-card-v2__body { grid-template-columns: 1fr; gap: 16px; padding: 0; border: 0; }
  .pnpl-card-v2--ticket .pnpl-card-v2__actions { grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; }
  .pnpl-card-v2--ticket .pnpl-card-v2__title { font-size: 15px; }
  .pnpl-card-v2--tag { padding: 20px; }
  .pnpl-card-v2__media,
  .pnpl-card-v2--layout-image_big .pnpl-card-v2__media,
  .pnpl-card-v2--image-right .pnpl-card-v2__media,
  .pnpl-card-v2--ticket .pnpl-card-v2__media,
  .pnpl-card-v2--ticket.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { grid-column: 1; grid-row: auto; justify-self: center; width: min(220px, 100%); }
  .pnpl-card-v2__body, .pnpl-card-v2--image-right .pnpl-card-v2__body { grid-column: 1; grid-row: auto; width: 100%; }
  .pnpl-card-v2__title { font-size: 14px; line-height: 1.6; }
  .pnpl-card-v2__actions { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
  .pnpl-card-v2--button-full .pnpl-card-v2__actions { grid-template-columns: 1fr; }
  .pnpl-card-v2__button { min-height: 44px; padding: 10px 9px; font-size: 12px; }
  .pnpl-card-v2--tag .pnpl-card-v2__media,
  .pnpl-card-v2--tag.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 100%; }
  .pnpl-card-v2--tag .pnpl-card-v2__title { font-size: 18px; }
  .pnpl-card-v2--tag .pnpl-card-v2__price { font-size: 21px; }
  .pnpl-card-v2--tag .pnpl-card-v2__actions { width: 100%; }
  .pnpl-card-v2--mobile-compact { grid-template-columns: 104px minmax(0, 1fr); align-items: start; width: min(100%, 420px); gap: 16px; }
  .pnpl-card-v2--mobile-compact .pnpl-card-v2__media { grid-column: 1; width: 104px; }
  .pnpl-card-v2--mobile-compact .pnpl-card-v2__body { grid-column: 2; grid-row: 1; }
  .pnpl-card-v2--mobile-compact .pnpl-card-v2__actions { grid-template-columns: 1fr; }
}

/* Explicit mobile rules for the fixed-width admin preview. */
.pnpl-preview-frame--mobile .pnpl-card-v2,
.pnpl-preview-frame--mobile .pnpl-card-v2--layout-image_big,
.pnpl-preview-frame--mobile .pnpl-card-v2--image-right,
.pnpl-preview-frame--mobile .pnpl-card-v2--ticket { grid-template-columns: 1fr; width: min(100%, 340px); padding: 18px; gap: 18px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--simple .pnpl-card-v2__media,
.pnpl-preview-frame--mobile .pnpl-card-v2--simple.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 100%; }
.pnpl-preview-frame--mobile .pnpl-card-v2--simple .pnpl-card-v2__title { font-size: 17px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--soft { padding: 0; }
.pnpl-preview-frame--mobile .pnpl-card-v2--soft .pnpl-card-v2__media,
.pnpl-preview-frame--mobile .pnpl-card-v2--soft.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 100%; }
.pnpl-preview-frame--mobile .pnpl-card-v2--soft .pnpl-card-v2__body { padding: 20px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--soft .pnpl-card-v2__title { font-size: 18px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--ticket .pnpl-card-v2__body,
.pnpl-preview-frame--mobile .pnpl-card-v2--ticket.pnpl-card-v2--image-right .pnpl-card-v2__body { grid-template-columns: 1fr; gap: 16px; padding: 0; border: 0; }
.pnpl-preview-frame--mobile .pnpl-card-v2--ticket .pnpl-card-v2__actions { grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; }
.pnpl-preview-frame--mobile .pnpl-card-v2--ticket .pnpl-card-v2__title { font-size: 15px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--tag { padding: 20px; }
.pnpl-preview-frame--mobile .pnpl-card-v2__media,
.pnpl-preview-frame--mobile .pnpl-card-v2--layout-image_big .pnpl-card-v2__media,
.pnpl-preview-frame--mobile .pnpl-card-v2--image-right .pnpl-card-v2__media,
.pnpl-preview-frame--mobile .pnpl-card-v2--ticket .pnpl-card-v2__media { grid-column: 1; grid-row: auto; justify-self: center; width: min(210px, 100%); }
.pnpl-preview-frame--mobile .pnpl-card-v2__body,
.pnpl-preview-frame--mobile .pnpl-card-v2--image-right .pnpl-card-v2__body { grid-column: 1; grid-row: auto; width: 100%; }
.pnpl-preview-frame--mobile .pnpl-card-v2__title { font-size: 14px; line-height: 1.6; }
.pnpl-preview-frame--mobile .pnpl-card-v2__actions { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
.pnpl-preview-frame--mobile .pnpl-card-v2--button-full .pnpl-card-v2__actions { grid-template-columns: 1fr; }
.pnpl-preview-frame--mobile .pnpl-card-v2__button { min-height: 44px; padding: 10px 9px; font-size: 12px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--tag .pnpl-card-v2__media,
.pnpl-preview-frame--mobile .pnpl-card-v2--tag.pnpl-card-v2--layout-image_big .pnpl-card-v2__media { width: 100%; }
.pnpl-preview-frame--mobile .pnpl-card-v2--tag .pnpl-card-v2__title { font-size: 18px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--tag .pnpl-card-v2__price { font-size: 21px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--tag .pnpl-card-v2__actions { width: 100%; }
.pnpl-preview-frame--mobile .pnpl-card-v2--mobile-compact { grid-template-columns: 96px minmax(0, 1fr); align-items: start; gap: 14px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--mobile-compact .pnpl-card-v2__media { grid-column: 1; width: 96px; }
.pnpl-preview-frame--mobile .pnpl-card-v2--mobile-compact .pnpl-card-v2__body { grid-column: 2; grid-row: 1; }
.pnpl-preview-frame--mobile .pnpl-card-v2--mobile-compact .pnpl-card-v2__actions { grid-template-columns: 1fr; }
