.ggkb {
  --ggkb-text: #333;
  --ggkb-muted: #666;
  --ggkb-line: #e3e3e3;
  --ggkb-surface: #fff;
  --ggkb-accent: #ffc15e;
  --ggkb-button-bg: #fff6e8;
  --ggkb-button-border: #d6ad6e;
  --ggkb-cover-width: 56px;
  --ggkb-cover-height: 82px;
  color: var(--ggkb-text);
  margin-block-start: 42px;
  padding-block-start: 30px;
  border-block-start: 1px solid var(--ggkb-line);
  font: inherit;
}
.ggkb, .ggkb * { box-sizing: border-box; }
.ggkb .ggkb__heading-row { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-block-end:17px; }
.ggkb .ggkb__heading { margin:0; color:var(--ggkb-text); font-size:18px; font-weight:700; line-height:1.3; }
.ggkb .ggkb__ad-label { display:inline-flex; align-items:center; padding:4px 8px; border:1px solid #a0a0a0; border-radius:5px; color:#454545; background:var(--ggkb-surface); font-size:13px; font-weight:600; line-height:1.2; white-space:nowrap; }
.ggkb .ggkb__box { display:grid; grid-template-columns:var(--ggkb-cover-width) minmax(0,1fr) auto; gap:18px; align-items:center; padding:17px; border:1px solid var(--ggkb-line); border-radius:10px; background:var(--ggkb-surface); }
.ggkb .ggkb__box--no-image { grid-template-columns:minmax(0,1fr) auto; }
.ggkb .ggkb__box--no-action { grid-template-columns:var(--ggkb-cover-width) minmax(0,1fr); }
.ggkb .ggkb__box--no-image.ggkb__box--no-action { grid-template-columns:minmax(0,1fr); }
.ggkb .ggkb__cover { display:block; width:var(--ggkb-cover-width); height:var(--ggkb-cover-height); max-width:100%; border:0; object-fit:contain; border-radius:3px; }
.ggkb .ggkb__image-link { display:block; width:var(--ggkb-cover-width); text-decoration:none; }
.ggkb .ggkb__content { min-width:0; }
.ggkb .ggkb__product-title { margin:0 0 3px; color:var(--ggkb-text); font-size:16px; font-weight:600; line-height:1.4; overflow-wrap:anywhere; }
.ggkb .ggkb__subtitle { margin:0; color:var(--ggkb-muted); font-size:13px; line-height:1.4; }
.ggkb .ggkb__price { margin:7px 0 0; color:var(--ggkb-text); font-size:18px; font-weight:600; line-height:1.3; }
.ggkb .ggkb__message { margin:7px 0 0; color:var(--ggkb-muted); font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
.ggkb .ggkb__button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; max-width:100%; padding:10px 14px; border:1px solid var(--ggkb-button-border); border-radius:8px; background:var(--ggkb-button-bg); color:var(--ggkb-text); font:inherit; font-size:14px; font-weight:500; line-height:1.4; text-align:center; text-decoration:none; overflow-wrap:anywhere; }
.ggkb .ggkb__button:hover { filter:brightness(.97); color:var(--ggkb-text); text-decoration:none; }
.ggkb .ggkb__button:focus-visible, .ggkb .ggkb__price-details summary:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
.ggkb .ggkb__disclosure { margin:10px 0 0; color:var(--ggkb-muted); font-size:13px; line-height:1.5; }
.ggkb .ggkb__price-note { margin:8px 0 0; color:var(--ggkb-muted); font-size:12px; line-height:1.5; }
.ggkb .ggkb__price-details { margin-block-start:3px; color:var(--ggkb-muted); font-size:12px; line-height:1.5; }
.ggkb .ggkb__price-details summary { width:fit-content; cursor:pointer; text-decoration:underline; text-underline-offset:2px; }
.ggkb .ggkb__price-details p { margin:7px 0 0; font-size:12px; }
@media(max-width:600px) {
  .ggkb .ggkb__box { grid-template-columns:var(--ggkb-cover-width) minmax(0,1fr); gap:12px 14px; }
  .ggkb .ggkb__cover, .ggkb .ggkb__image-link { grid-row:1 / span 2; align-self:start; }
  .ggkb .ggkb__button { grid-column:2; justify-self:start; }
  .ggkb .ggkb__box--no-image { grid-template-columns:minmax(0,1fr); }
  .ggkb .ggkb__box--no-image .ggkb__button { grid-column:1; }
  .ggkb .ggkb__box--no-action .ggkb__cover { grid-row:auto; }
}
@media(prefers-reduced-motion:reduce) { .ggkb * { transition:none !important; } }
