.wb-bundles { margin: 24px 0; font-family: inherit; }
.wb-bundles h3 { text-align: center; font-size: 20px; margin: 0 0 16px; }
.wb-bundles-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; align-items: stretch; }
.wb-bundle-card { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 22px 14px 12px; background: #eee2f1; border: 2px solid transparent; border-radius: 24px; cursor: pointer; transition: .18s ease; text-align: center; box-sizing: border-box; }
.wb-bundle-card:hover, .wb-bundle-card.is-selected { background: #d9bcfa; border-color: #181818; }
.wb-bundle-card input { position: absolute; opacity: 0; pointer-events: none; }
.wb-title { font-size: 20px; font-weight: 700; margin-bottom: 8px; }
.wb-subtitle { color: #666; font-size: 13px; line-height: 1.35; margin: -3px 0 6px; }
.wb-kit-contents { margin: 24px 0 0; padding-top: 18px; border-top: 1px solid #ececec; }
.wb-kit-contents h3 { margin: 0 0 12px; font-size: 18px; font-weight: 700; }
.wb-kit-list { display: grid; gap: 8px; }
.wb-kit-item { display: flex; align-items: center; gap: 12px; min-height: 58px; padding: 8px 12px; background: #fafafa; border: 1px solid #f0f0f0; border-radius: 12px; box-sizing: border-box; }
.wb-kit-item img { width: 42px; height: 42px !important; object-fit: contain; flex: 0 0 42px; }
.wb-kit-copy { display: flex; flex-direction: column; gap: 2px; text-align: right; }
.wb-kit-copy strong { font-size: 14px; line-height: 1.25; }
.wb-kit-copy span { color: #777; font-size: 12px; line-height: 1.25; }
.wb-bundle-card img { width: 100%; height: 170px !important; object-fit: contain; }
.wb-image { display: block; margin: 2px auto 12px; }
.wb-price { font-size: 17px; font-weight: 700; margin-top: auto; }
.wb-bundle-card del { color: #aaa; font-size: 14px; }
.wb-label { color: #fff; background: #4330d8; border-radius: 12px; padding: 3px 12px; font-size: 12px; font-weight: 700; }
.wb-label { position: absolute; top: -11px; background: #b8ea76; color: #202020; border-radius: 0; }
@media (max-width: 600px) { .wb-bundles-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; } .wb-bundles-grid.wb-count-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .wb-bundles-grid.wb-count-1 { grid-template-columns: minmax(0, 1fr); } .wb-bundle-card { padding: 18px 5px 10px; } .wb-bundle-card img { height: 100px !important; } .wb-title { font-size: 14px; } .wb-price { font-size: 14px; } .wb-label { padding-inline: 5px; font-size: 10px; } }
