/* Captain Green — doporučení v košíku (panel + stránka košíku) */
#woo-cart-panel .cg-upsell { display: none !important; } /* původní karusel ze snippetu 55740 */
.cg-reco { margin: 14px 0; padding: 12px; border: 1px solid #d9e6de; border-radius: 8px; background: #f6faf7; }
.cg-reco__head { display: flex; flex-direction: column; gap: 2px; margin-bottom: 10px; }
.cg-reco__title { font-weight: 700; font-size: 15px; color: #0a0500; display: flex; align-items: center; gap: 8px; }
.cg-reco__title::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #30785A; }
.cg-reco__sub { font-size: 12px; color: #5f6b64; }
.cg-reco__row { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(138px, 1fr); gap: 8px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 4px; -webkit-overflow-scrolling: touch; scrollbar-width: thin; }
.cg-reco__card { scroll-snap-align: start; background: #fff; border: 1px solid #e3ece6; border-radius: 8px; padding: 8px; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.cg-reco__thumb { display: block; aspect-ratio: 1; border-radius: 6px; overflow: hidden; background: #eef3ef; }
.cg-reco__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cg-reco__name { font-size: 12.5px; font-weight: 600; line-height: 1.25; color: #0a0500; text-decoration: none; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.5em; }
.cg-reco__price { font-size: 13px; font-weight: 700; }
.cg-reco__price del { color: #5f6b64; font-weight: 400; font-size: 11px; }
.cg-reco__price ins { text-decoration: none; }
.cg-reco__add.button { margin-top: auto; width: 100%; min-height: 0; padding: 8px 6px; font-size: 12.5px; font-weight: 600; border-radius: 6px; background: #30785A; color: #fff; text-align: center; line-height: 1.2; }
.cg-reco__add.button:hover { background: #245c45; color: #fff; }
.cg-reco__add.button.loading { opacity: .6; }
.cg-reco__add.button.added::after { content: " ✓"; }
.cg-reco--page { margin: 24px 0; }
.cg-reco--page .cg-reco__row { grid-auto-columns: minmax(180px, 1fr); }
@media (min-width: 1000px) { .cg-reco--page .cg-reco__row { grid-auto-flow: row; grid-template-columns: repeat(4, 1fr); overflow: visible; } }
.cg-reco--cat { margin: 0 0 20px; }
.cg-reco--cat .cg-reco__row { grid-auto-columns: minmax(150px, 1fr); }
@media (min-width: 1000px) { .cg-reco--cat .cg-reco__row { grid-auto-flow: row; grid-template-columns: repeat(4, 1fr); overflow: visible; } }
.woo-listing-top { flex-wrap: wrap; }
.woo-listing-top .cg-reco--cat { flex: 0 0 100%; width: 100%; order: -1; margin-bottom: 16px; }
.cg-reco__thumb { position: relative; }
.cg-reco__badge { position: absolute; left: 6px; bottom: 6px; background: #0a0500; color: #fff; font-size: 10.5px; font-weight: 600; padding: 3px 7px; border-radius: 999px; }
.cg-reco__card.is-out .cg-reco__thumb img { opacity: .55; }
.cg-reco__add--out.button { background: #fff; color: #245c45; border: 1.5px solid #30785A; }
.cg-reco__add--out.button:hover { background: #f6faf7; color: #245c45; }
.cg-reco-home { padding: 8px 0 0; }
.cg-reco-home .cg-reco { margin: 16px auto 8px; }

/* ---------- Průvodce výběrem ---------- */
.cg-guide { max-width: 860px; margin: 0 auto; }
.cg-guide__progress { display: flex; gap: 8px; margin: 0 0 18px; }
.cg-guide__dot { width: 30px; height: 30px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13px; background: #e6eeea; color: #5f6b64; }
.cg-guide__dot.is-on { background: #30785A; color: #fff; }
.cg-guide__step { display: none; }
.cg-guide__step.is-on { display: block; }
.cg-guide__q { font-size: 26px; margin: 0 0 6px; }
.cg-guide__sub { color: #5f6b64; margin: 0 0 14px; }
.cg-guide__opts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.cg-guide__opt { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 16px 18px; border: 1.5px solid #d9e6de; border-radius: 10px; background: #fff; text-align: left; cursor: pointer; font-family: inherit; min-height: 0; color: #0a0500; box-shadow: none; transition: border-color .15s, background .15s; }
.cg-guide__opt:hover, .cg-guide__opt.is-sel { border-color: #30785A; background: #f6faf7; }
.cg-guide__ol { font-weight: 700; font-size: 17px; }
.cg-guide__od { font-size: 13px; color: #5f6b64; }
.cg-guide__back { margin-top: 12px; background: none; border: 0; color: #5f6b64; cursor: pointer; padding: 6px 0; font-family: inherit; box-shadow: none; min-height: 0; }
.cg-guide__rtitle { font-size: 24px; font-weight: 700; margin: 8px 0 14px; }
.cg-guide__row { grid-auto-flow: row !important; grid-template-columns: repeat(3, 1fr); overflow: visible; }
.cg-guide__note { margin-top: 14px; color: #5f6b64; font-size: 13px; }
.cg-guide__loading { color: #5f6b64; }
.cg-guide__restart { margin-top: 16px; background: #fff; border: 1.5px solid #30785A; color: #245c45; border-radius: 8px; padding: 10px 18px; cursor: pointer; font-family: inherit; font-weight: 600; box-shadow: none; min-height: 0; }
@media (max-width: 560px) { .cg-guide__opts { grid-template-columns: 1fr; } .cg-guide__row { grid-template-columns: 1fr; } .cg-guide__q { font-size: 22px; } }
.cg-guide__why { margin: 0 0 16px; padding: 12px 16px 12px 34px; background: #f6faf7; border: 1px solid #d9e6de; border-radius: 8px; font-size: 14px; }
.cg-guide__why li { margin: 3px 0; }
.cg-guide__pack { margin: 14px 0 0; padding: 10px 14px; border-left: 3px solid #30785A; background: #fff; font-size: 14px; font-weight: 600; }
