/* Kądziołek – asystent zakupowy (wspólny dla demo i motywu WordPress). */
/* Regułowy asystent zakupowy - bez transmisji wpisywanych pytań. */
.ah-assistant { position: fixed; z-index: 110; right: 22px; bottom: 20px; font-family: inherit; }
.ah-assistant__launcher { display: flex; align-items: center; gap: 8px; padding: 12px 18px; border: 0; border-radius: 999px; background: var(--accent); color: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.23); font: inherit; font-weight: 800; cursor: pointer; }
.ah-assistant__launcher .ah-icon { width: 22px; height: 22px; }
.ah-assistant__panel { position: absolute; right: 0; bottom: 62px; display: flex; flex-direction: column; width: min(390px, calc(100vw - 28px)); max-height: min(570px, calc(100dvh - 105px)); border: 1px solid #e4e0db; border-radius: 16px; overflow: hidden; background: #fff; box-shadow: 0 18px 55px rgba(0,0,0,.24); }
.ah-assistant__panel[hidden] { display: none; }
.ah-assistant__head { display: flex; justify-content: space-between; align-items: center; padding: 14px 17px; background: #202427; color: #fff; }
.ah-assistant__head div { display: grid; gap: 2px; }.ah-assistant__head strong { font-size: 17px; }.ah-assistant__head span { font-size: 11px; color: #c4c8cb; }
.ah-assistant__head button { border: 0; background: none; color: #fff; font-size: 26px; line-height: 1; cursor: pointer; }
.ah-assistant__body { overflow-y: auto; padding: 18px; font-size: 14px; line-height: 1.45; }
.ah-assistant__body p { margin: 0 0 12px; }.ah-assistant__lead { font-size: 17px; font-weight: 800; line-height: 1.3; }
.ah-assistant__step { color: var(--accent); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.ah-assistant__tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 14px 0; }
.ah-assistant__tile { display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; min-height: 72px; padding: 12px; border: 1px solid #ddd8d1; border-radius: 9px; background: #f7f5f2; color: #202427; text-align: left; font: inherit; font-weight: 750; cursor: pointer; }
.ah-assistant__tile:hover, .ah-assistant__tile:focus-visible { border-color: var(--accent); background: #fff4f4; }.ah-assistant__tile span { color: var(--accent); }
.ah-assistant__note { color: #62666b; font-size: 12px; }.ah-assistant__back { border: 0; padding: 4px 0; background: none; color: var(--accent); font: inherit; font-size: 12px; font-weight: 750; cursor: pointer; }
.ah-assistant__search label { display: block; margin-bottom: 6px; font-size: 12px; font-weight: 700; }.ah-assistant__search div { display: flex; gap: 6px; margin-bottom: 13px; }.ah-assistant__search input { min-width: 0; flex: 1; padding: 10px; border: 1px solid #ddd8d1; border-radius: 7px; font: inherit; }.ah-assistant__search button, .ah-assistant__primary { display: inline-block; padding: 10px 12px; border: 0; border-radius: 7px; background: #202427; color: #fff; font: inherit; font-size: 12px; font-weight: 800; text-decoration: none; cursor: pointer; }
.ah-assistant__results { display: grid; gap: 7px; margin: 12px 0; }.ah-assistant__results a { display: flex; gap: 9px; align-items: center; padding: 7px; border: 1px solid #ece8e2; border-radius: 9px; text-decoration: none; }.ah-assistant__results img { width: 48px; height: 48px; flex: none; object-fit: cover; border-radius: 6px; }.ah-assistant__results span { display: grid; gap: 2px; }.ah-assistant__results strong { font-size: 12px; color: #202427; }.ah-assistant__results small { color: #62666b; font-size: 11px; }
.ah-assistant__primary { margin: 2px 0 14px; }
.ah-assistant-recommendations { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin-bottom: 14px; padding: 12px 15px; border: 1px solid #f3c7c8; border-radius: 9px; background: #fff5f5; font-size: 13px; }.ah-assistant-recommendations strong { color: var(--accent); }.ah-assistant-recommendations span { color: #62666b; }.ah-assistant-recommendations a { margin-left: auto; color: var(--accent); font-weight: 700; }
@media (max-width: 560px) { .ah-assistant { right: 12px; bottom: 12px; }.ah-assistant__panel { bottom: 59px; max-height: calc(100dvh - 85px); }
}

/* Kądziołek: rozmowa w dymkach, szybkie odpowiedzi w kafelkach i stałe pole wpisywania. */
.ah-assistant__launcher { gap: 10px; padding: 9px 15px 9px 10px; background: #173d2e; text-align: left; }
.ah-assistant__launcher:hover, .ah-assistant__launcher:focus-visible { background: #22533e; }
.ah-assistant__launcher-icons { position: relative; display: grid; place-items: center; width: 37px; height: 37px; border-radius: 50%; background: #fff; color: #173d2e; flex: none; }
.ah-assistant__launcher-icons .ah-icon:last-child { position: absolute; right: -7px; bottom: -4px; width: 19px; height: 19px; padding: 2px; border-radius: 50%; background: #e51924; color: #fff; }
.ah-assistant__launcher-label { display: grid; gap: 1px; line-height: 1.1; }
.ah-assistant__launcher-label strong { font-size: 14px; }
.ah-assistant__launcher-label small { font-size: 10px; font-weight: 600; opacity: .88; }
.ah-assistant__panel { bottom: 68px; width: min(410px, calc(100vw - 28px)); height: min(620px, calc(100dvh - 100px)); max-height: none; border-radius: 19px; }
.ah-assistant__head { justify-content: flex-start; gap: 10px; padding: 13px 16px; background: #173d2e; }
.ah-assistant__head .ah-assistant__avatar { display: grid; place-items: center; width: 37px; height: 37px; flex: none; border-radius: 50%; background: #fff; color: #173d2e; }
.ah-assistant__head div { flex: 1; }
.ah-assistant__head strong { font-size: 15px; }
.ah-assistant__head span:not(.ah-assistant__avatar) { color: #d8e9df; font-size: 11px; }
.ah-assistant__head button { padding: 4px; }
.ah-assistant__body { flex: 1; min-height: 0; padding: 16px 14px; background: #f7f7f5; }
.ah-assistant__message { max-width: 94%; margin: 0 0 14px; }
.ah-assistant__message--user { width: fit-content; max-width: 85%; margin-left: auto; padding: 10px 13px; border-radius: 15px 15px 3px 15px; background: #173d2e; color: #fff; overflow-wrap: anywhere; }
.ah-assistant__sender { display: block; margin: 0 0 4px 5px; color: #626b68; font-size: 11px; }
.ah-assistant__bubble { padding: 13px 14px; border: 1px solid #ecebea; border-radius: 4px 16px 16px 16px; background: #fff; box-shadow: 0 3px 12px rgba(0,0,0,.035); }
.ah-assistant__bubble p { margin: 0 0 10px; }
.ah-assistant__bubble p:last-child { margin-bottom: 0; }
.ah-assistant__lead { font-size: 15px; }
.ah-assistant__tiles { margin: 13px 0; }
.ah-assistant__tile { min-height: 58px; padding: 10px; border-color: #e0e4e0; background: #f3f7f4; font-size: 12px; }
.ah-assistant__tiles--quiz { grid-template-columns: 1fr; gap: 6px; }
.ah-assistant__tiles--quiz .ah-assistant__tile { min-height: 44px; align-items: center; }
.ah-assistant__tile:disabled { opacity: .45; cursor: default; }

/* Pastylka rośnie w lewo od stałej prawej krawędzi; napis pozostaje przycięty do swojej szerokości. */
.ah-assistant__launcher {
	box-sizing: border-box;
	width: 57px;
	min-width: 57px;
	max-width: 190px;
	justify-content: flex-start;
	gap: 0;
	padding: 9px 10px;
	overflow: visible;
	white-space: nowrap;
	transition: width .42s cubic-bezier(.2,.8,.2,1), gap .42s cubic-bezier(.2,.8,.2,1), background-color .2s ease, opacity .18s ease;
}
.ah-assistant__launcher.is-panel-open { opacity: 0; pointer-events: none; }
.ah-assistant__launcher.is-collapsing,
.ah-assistant__launcher.is-collapsing:is(:hover, :focus-visible) { width: 57px; gap: 0; opacity: 0; pointer-events: none; }
.ah-assistant__launcher.is-collapsing .ah-assistant__launcher-label,
.ah-assistant__launcher.is-collapsing:is(:hover, :focus-visible) .ah-assistant__launcher-label { width: 0; opacity: 0; visibility: hidden; }
.ah-assistant__launcher-label {
	width: 0;
	min-width: 0;
	flex: none;
	grid-template-columns: minmax(0,1fr);
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	transition: width .42s cubic-bezier(.2,.8,.2,1), opacity .24s ease, visibility 0s linear .42s;
}
.ah-assistant__launcher:is(:hover, :focus-visible) {
	width: 190px;
	gap: 10px;
}
.ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label {
	width: 123px;
	opacity: 1;
	visibility: visible;
	transition-delay: 0s;
}
.ah-assistant__tile:disabled:hover { border-color: #e0e4e0; background: #f3f7f4; }
.ah-assistant__step { display: block; margin-bottom: 8px; color: #1b754f; }
.ah-assistant__primary { display: inline-block; margin: 8px 0; background: #173d2e; }
.ah-assistant__composer { display: flex; gap: 8px; align-items: center; padding: 11px; border-top: 1px solid #e8e9e7; background: #fff; }
.ah-assistant__composer input { flex: 1; min-width: 0; height: 43px; padding: 0 13px; border: 1px solid #d7ddd8; border-radius: 22px; outline: none; background: #fafafa; font: inherit; font-size: 13px; }
.ah-assistant__composer input:focus { border-color: #173d2e; box-shadow: 0 0 0 2px #d5e7db; }
.ah-assistant__composer button { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border: 0; border-radius: 50%; background: #173d2e; color: #fff; cursor: pointer; }
.ah-assistant__composer button:hover { background: #22533e; }
@media (max-width: 560px) { .ah-assistant__panel { bottom: 67px; height: min(620px, calc(100dvh - 94px)); }
}

/* Szybki audyt UX: wygodne cele dotykowe, czytelny mobilny koszyk i artykuły. */
.product-remove button, .ah-assistant__head button { min-width: 44px; min-height: 44px; }
.ah-assistant__body { overscroll-behavior: contain; }
@media (max-width: 760px) {
  .ah-assistant__composer input { font-size: 16px; }
}

/* Charakter Kądziołka: własny znak, rozmowne dymki i czytelne karty odpowiedzi. */
.ah-kadziolek-mark { display: block; width: 26px; height: 26px; border-radius: 50%; background: #fff; object-fit: cover; }
.ah-assistant__launcher-icons .ah-kadziolek-mark { width: 31px; height: 31px; }
.ah-assistant__chat-dot { position: absolute; right: -6px; bottom: -3px; display: grid; place-items: center; width: 19px; height: 19px; border: 2px solid #fff; border-radius: 50%; background: #e51924; color: #fff; font-size: 10px; font-weight: 800; line-height: 1; }
.ah-assistant__launcher-label small { font-size: 10px; }
.ah-assistant__head .ah-assistant__avatar { overflow: hidden; }
.ah-assistant__head .ah-assistant__avatar .ah-kadziolek-mark { width: 30px; height: 30px; }
.ah-assistant__panel:not([hidden]) .ah-assistant__avatar { animation: kadziolek-greet .48s var(--ease) both; }
@keyframes kadziolek-greet { from { opacity: .65; transform: translateY(3px) scale(.86); } to { opacity: 1; transform: none; } }
.ah-assistant__message:not(.ah-assistant__message--user) { display: flex; align-items: flex-start; gap: 8px; max-width: 100%; }
.ah-assistant__message-avatar { display: grid; place-items: center; width: 29px; height: 29px; flex: none; margin-top: 18px; border: 1px solid #dfe9e2; border-radius: 50%; background: #eaf2ed; color: #173d2e; }
.ah-assistant__message-avatar .ah-kadziolek-mark { width: 20px; height: 20px; }
.ah-assistant__message-content { min-width: 0; max-width: calc(100% - 37px); }
.ah-assistant__message--user { display: block; max-width: 84%; padding: 10px 14px; border-radius: 16px 16px 3px 16px; box-shadow: 0 3px 10px rgba(23,61,46,.12); }
.ah-assistant__sender { color: #28523d; font-weight: 750; }
.ah-assistant__bubble { border-color: #e4e9e5; box-shadow: 0 4px 14px rgba(30,45,36,.045); }
.ah-assistant__progress { display: grid; gap: 7px; margin: 0 0 12px; color: #53625a; font-size: 11px; }
.ah-assistant__progress > span:last-child { display: flex; justify-content: space-between; gap: 8px; }
.ah-assistant__progress b { color: #173d2e; }
.ah-assistant__progress-track { height: 4px; overflow: hidden; border-radius: 99px; background: #e8ede9; }
.ah-assistant__progress-track i { display: block; width: var(--progress); height: 100%; border-radius: inherit; background: #2b7952; }
.ah-assistant__tiles--quiz .ah-assistant__tile { min-height: 46px; border-radius: 11px; background: #f5f8f5; }
.ah-assistant__tiles--quiz .ah-assistant__tile:hover, .ah-assistant__tiles--quiz .ah-assistant__tile:focus-visible { background: #eaf3ed; }
.ah-assistant__results a { position: relative; min-width: 0; gap: 10px; padding: 8px; border-color: #e6eae6; background: #fff; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.ah-assistant__results a:hover, .ah-assistant__results a:focus-visible { transform: translateY(-1px); border-color: #a8c4b1; box-shadow: 0 5px 15px rgba(23,61,46,.09); }
.ah-assistant__results img { width: 54px; height: 54px; border-radius: 9px; background: #f0f1ee; }
.ah-assistant__result-copy { min-width: 0; flex: 1; }
.ah-assistant__result-copy strong { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-height: 1.3; }
.ah-assistant__result-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ah-assistant__result-copy b { color: #173d2e; font-size: 12px; }
.ah-assistant__result-copy i { color: #26804e; font-size: 10px; font-style: normal; }
.ah-assistant__result-arrow { align-self: center; color: #28724e; font-weight: 800; }
.ah-assistant__primary { border-radius: 9px; background: #173d2e; }
.ah-assistant__primary:hover { background: #245b40; }
@media (max-width: 560px) {
  .ah-assistant__message-avatar { width: 26px; height: 26px; margin-top: 18px; }
  .ah-assistant__message-content { max-width: calc(100% - 34px); }
  .ah-assistant__results img { width: 48px; height: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .ah-assistant__panel:not([hidden]) .ah-assistant__avatar { animation: none; }
  .ah-assistant__results a { transition: none; }
}

/* Ruch czatu: płynne otwieranie i miękkie wejście wiadomości. */
.ah-assistant__panel { transform-origin: bottom right; }
.ah-assistant__panel.is-ready {
  transform: translate(var(--assistant-x), var(--assistant-y)) scale(var(--assistant-scale-x), var(--assistant-scale-y));
  border-radius: 999px;
  box-shadow: 0 8px 22px rgba(0,0,0,.16);
  transition: transform .52s cubic-bezier(.4,0,.2,1), border-radius .52s cubic-bezier(.4,0,.2,1), box-shadow .52s ease;
}
.ah-assistant__panel.is-ready.is-open { transform: translate(0,0) scale(1); border-radius: 19px; box-shadow: 0 18px 55px rgba(0,0,0,.24); transition-duration: .62s; transition-timing-function: cubic-bezier(.16,1,.3,1); }
.ah-assistant__panel.is-ready > * { opacity: 0; transform: translateY(8px); transition: opacity .16s ease, transform .22s ease; }
.ah-assistant__panel.is-ready.is-open > * { opacity: 1; transform: none; transition-delay: .18s; }
.ah-assistant__message:not(.ah-assistant__message--user) { animation: assistant-message-in .38s cubic-bezier(.16,1,.3,1) both; }
.ah-assistant__message--user { animation: assistant-user-in .3s cubic-bezier(.16,1,.3,1) both; }
.ah-assistant__tiles .ah-assistant__tile { animation: assistant-choice-in .34s cubic-bezier(.16,1,.3,1) both; }
.ah-assistant__tiles .ah-assistant__tile:nth-child(2) { animation-delay: .045s; }
.ah-assistant__tiles .ah-assistant__tile:nth-child(3) { animation-delay: .09s; }
.ah-assistant__tiles .ah-assistant__tile:nth-child(4) { animation-delay: .135s; }
.ah-assistant__results a { animation: assistant-choice-in .34s cubic-bezier(.16,1,.3,1) both; }
.ah-assistant__results a:nth-child(2) { animation-delay: .04s; }
.ah-assistant__results a:nth-child(3) { animation-delay: .08s; }
.ah-assistant__results a:nth-child(4) { animation-delay: .12s; }
@keyframes assistant-message-in { from { opacity: 0; transform: translateX(-9px) translateY(5px); } to { opacity: 1; transform: none; } }
@keyframes assistant-user-in { from { opacity: 0; transform: translateX(9px) translateY(4px); } to { opacity: 1; transform: none; } }
@keyframes assistant-choice-in { from { opacity: 0; transform: translateY(8px) scale(.985); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .ah-assistant__launcher { transition: width .22s ease, gap .22s ease, background-color .2s ease, opacity .18s ease; }
  .ah-assistant__launcher-label { transition: width .22s ease, opacity .18s ease, visibility 0s linear .22s; }
  .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label { transition-delay: 0s; }
  .ah-assistant__panel.is-ready { transition-duration: .26s; }
  .ah-assistant__panel.is-ready.is-open { transition-duration: .3s; }
  .ah-assistant__panel.is-ready > * { transition-duration: .12s; }
  .ah-assistant__message, .ah-assistant__tiles .ah-assistant__tile, .ah-assistant__results a,
  .ah-assistant__launcher-icons { animation: none !important; transition: none !important; }
}

/* Otwarty koszyk boczny, menu albo filtry – asystent chowa się, żeby nie zasłaniać treści. */
.ah-assistant { transition: opacity .2s ease, visibility 0s linear 0s; }
body:has(.ah-drawer.is-open, .ah-mobile.is-open, .ah-shop__sidebar.is-open) .ah-assistant { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .2s ease, visibility 0s linear .2s; }

/* Quiz: liczba dostępnych ofert pod odpowiedzią; odpowiedź bez ofert wyszarzona. */
.ah-assistant__tile .ah-assistant__tile-label { display: grid; gap: 2px; color: inherit; }
.ah-assistant__tile-label small { color: #62666b; font-size: 11px; font-weight: 500; }
.ah-assistant__tile:disabled .ah-assistant__tile-label small { color: inherit; }

.ah-assistant__suggestion { position: absolute; right: 0; bottom: 86px; width: min(320px, calc(100vw - 32px)); padding: 16px 34px 16px 16px; border: 1px solid #dce5de; border-radius: 16px; background: #fff; box-shadow: 0 8px 32px #0002; color: #1d3b2d; }
.ah-assistant__suggestion [data-accessory-notice] { display: grid; gap: 8px; text-align: left; border: 0; background: none; padding: 0; color: inherit; cursor: pointer; font: inherit; }
.ah-assistant__suggestion small { font-weight: 700; }
.ah-assistant__suggestion [data-dismiss-notice] { position: absolute; right: 8px; top: 6px; padding: 4px; border: 0; background: none; font-size: 22px; cursor: pointer; }

/* Zaczepka: chmurka przy przycisku (bez dźwięku), Webek przez chwilę macha. */
.ah-assistant__nudge { display: grid; gap: 12px; animation: assistant-nudge-in .32s ease-out both; }
.ah-assistant__nudge::after { content: ''; position: absolute; right: 24px; bottom: -7px; width: 12px; height: 12px; background: #fff; border-right: 1px solid #dce5de; border-bottom: 1px solid #dce5de; transform: rotate(45deg); }
.ah-assistant__nudge-text { display: grid; gap: 4px; margin: 0; font-size: 14px; line-height: 1.45; }
.ah-assistant__nudge-text strong { font-size: 13px; }
.ah-assistant__nudge-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.ah-assistant__nudge-actions button { min-height: 40px; padding: 8px 14px; border-radius: 999px; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.ah-assistant__nudge-primary { border: 0; background: #1f3b2d; color: #fff; }
.ah-assistant__nudge-secondary { border: 1px solid #c9d6cd; background: #fff; color: #1f3b2d; }
.ah-assistant__nudge-close { position: absolute; right: 4px; top: 2px; width: 34px; height: 34px; border: 0; background: none; font-size: 22px; line-height: 1; color: #1d3b2d; cursor: pointer; }
.ah-assistant__nudge button:focus-visible { outline: 3px solid #427d5f; outline-offset: 2px; }
.ah-assistant__launcher.is-nudging .ah-assistant__launcher-icons { animation: assistant-nudge-wave .6s ease-in-out 3; }
@keyframes assistant-nudge-in { from { opacity: 0; transform: translateY(8px) scale(.97); } to { opacity: 1; transform: none; } }
@keyframes assistant-nudge-wave { 0%, 100% { transform: rotate(0); } 25% { transform: rotate(-12deg) scale(1.06); } 75% { transform: rotate(12deg) scale(1.06); } }
@media (prefers-reduced-motion: reduce) { .ah-assistant__nudge { animation: none; } }

/* Przycisk Webka (13.10): na komputerze stała pastylka z avatarem i podpisem, na telefonie sam avatar.
   Bez czerwonej kropki „nowej wiadomości” – nie było żadnej wiadomości. */
.ah-assistant__chat-dot { display: none; }
.ah-assistant__launcher,
.ah-assistant__launcher:is(:hover, :focus-visible) { width: auto; min-width: 0; max-width: none; gap: 12px; padding: 6px 20px 6px 6px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 999px; background: #173d2e; box-shadow: 0 6px 20px rgba(17, 19, 18, .22); transition: background-color .2s ease, transform .2s ease, opacity .18s ease; }
.ah-assistant__launcher:is(:hover, :focus-visible) { background: #22533e; transform: translateY(-1px); }
.ah-assistant__launcher-icons { width: 52px; height: 52px; }
.ah-assistant__launcher-icons .ah-kadziolek-mark { width: 46px; height: 46px; }
.ah-assistant__launcher-label,
.ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label { width: auto; opacity: 1; visibility: visible; transition: none; }
.ah-assistant__launcher-label strong { font-size: 16px; }
.ah-assistant__launcher-label small { font-size: 12px; font-weight: 600; opacity: .85; }
.ah-assistant__launcher.is-collapsing,
.ah-assistant__launcher.is-collapsing:is(:hover, :focus-visible) { width: auto; }
.ah-assistant__launcher.is-collapsing .ah-assistant__launcher-label { width: auto; }
.ah-assistant__panel { bottom: 80px; height: min(620px, calc(100dvh - 112px)); }
.ah-assistant__suggestion { bottom: 82px; }
.ah-assistant__nudge { width: min(380px, calc(100vw - 24px)); padding: 20px 44px 20px 20px; gap: 14px; border-radius: 18px; }
.ah-assistant__nudge::after { right: 166px; } /* nad avatarem w pastylce */
.ah-assistant__nudge-text { gap: 6px; font-size: 16px; }
.ah-assistant__nudge-text strong { font-size: 15px; }
.ah-assistant__nudge-actions button { min-height: 46px; padding: 10px 18px; font-size: 15px; }
.ah-assistant__nudge-close { width: 40px; height: 40px; font-size: 26px; }
@media (max-width: 760px) {
  .ah-assistant__launcher,
  .ah-assistant__launcher:is(:hover, :focus-visible) { gap: 0; padding: 5px; }
  .ah-assistant__launcher-label,
  .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label { width: 0; opacity: 0; visibility: hidden; position: absolute; }
  .ah-assistant__launcher-icons { width: 52px; height: 52px; }
  .ah-assistant__panel { bottom: 74px; height: min(620px, calc(100dvh - 98px)); }
  .ah-assistant__suggestion { bottom: 76px; }
  .ah-assistant__nudge::after { right: 22px; }
}
@media (prefers-reduced-motion: reduce) { .ah-assistant__launcher:is(:hover, :focus-visible) { transform: none; } }
/* Karta gatunku i lista kosztów dostawy w Webku. */
.ah-assistant__care { width: 100%; margin: 8px 0; border-collapse: collapse; font-size: 13px; }
.ah-assistant__care th, .ah-assistant__care td { padding: 6px 0; border-bottom: 1px solid #ece8e2; text-align: left; vertical-align: top; }
.ah-assistant__care th { width: 42%; padding-right: 10px; color: #62666b; font-weight: 600; }
.ah-assistant__list { margin: 6px 0 8px; padding-left: 18px; }
.ah-assistant__list li { margin: 4px 0; }
.ah-assistant__muted { color: #62666b; font-weight: 400; }
/* Status zamówienia w Webku: numer i e-mail w polach (nie w rozmowie). */
.ah-assistant__order { display: grid; gap: 10px; margin: 10px 0 6px; }
.ah-assistant__order label { display: grid; gap: 4px; font-size: 12px; font-weight: 700; color: #1d3b2d; }
.ah-assistant__order input { height: 42px; padding: 0 12px; border: 1px solid #d7ddd8; border-radius: 10px; background: #fff; font: inherit; font-size: 14px; font-weight: 400; }
.ah-assistant__order input:focus { outline: none; border-color: #173d2e; box-shadow: 0 0 0 2px #d5e7db; }
.ah-assistant__order .ah-assistant__primary { justify-self: start; margin: 2px 0 0; border: 0; color: #fff; cursor: pointer; font: inherit; font-weight: 700; }
.ah-assistant__order .ah-assistant__primary:disabled { opacity: .6; cursor: wait; }
@media (max-width: 760px) { .ah-assistant__order input { font-size: 16px; } }
/* Wyróżniony kafelek „Wybór pierwszego pająka”: cała szerokość, kolor sklepu. */
.ah-assistant__tile--featured { grid-column: 1 / -1; min-height: 64px; padding: 14px 16px; border-color: #173d2e; background: #173d2e; color: #fff; font-size: 14px; }
.ah-assistant__tile--featured:hover, .ah-assistant__tile--featured:focus-visible { border-color: #22533e; background: #22533e; color: #fff; }
.ah-assistant__tile--featured .ah-assistant__tile-label small { color: #d5e7db; font-size: 12px; font-weight: 500; }
.ah-assistant__tile.ah-assistant__tile--featured span { color: #fff; }
.ah-assistant__tile--featured:disabled { opacity: .55; }
/* Ostatni, samotny kafelek w rzędzie zajmuje całą szerokość (po wyróżnionym – gdy zostaje sam w parze). */
.ah-assistant__tiles > .ah-assistant__tile--featured ~ .ah-assistant__tile:last-of-type:nth-of-type(even),
.ah-assistant__tiles:not(.ah-assistant__tiles--quiz) > .ah-assistant__tile:first-of-type:not(.ah-assistant__tile--featured) ~ .ah-assistant__tile:last-of-type:nth-of-type(odd),
.ah-assistant__tile--wide { grid-column: 1 / -1; min-height: 52px; }

/* --- Webek, czwarta runda: grupy kafelków, wyszukiwarka z podpowiedziami, zestaw, porównanie, sklepy --- */
@media (min-width: 761px) { .ah-assistant__panel { width: min(440px, calc(100vw - 28px)); height: min(660px, calc(100dvh - 140px)); } }
.ah-assistant__group { margin: 16px 0 -6px !important; color: #53625a; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.ah-assistant__message--topics { width: 100%; }
.ah-assistant__message--topics > .ah-assistant__message-content { flex: 1; }
.ah-assistant__topics { width: 100%; box-sizing: border-box; margin-top: 10px; border: 1px solid #dce5de; border-radius: 10px; overflow: hidden; }
.ah-assistant__topics > summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px; cursor: pointer; list-style: none; font-size: 13px; font-weight: 800; color: #243e30; background: #f3f6f3; }
.ah-assistant__topics > summary::-webkit-details-marker { display: none; }
.ah-assistant__topics > summary > span[aria-hidden] { flex: none; font-size: 22px; line-height: 1; transition: transform .15s; }
.ah-assistant__topics[open] > summary > span[aria-hidden] { transform: rotate(180deg); }
.ah-assistant__topics > .ah-assistant__tiles { padding: 8px; margin: 0; }
.ah-assistant__topics > summary:focus-visible { outline: 2px solid #205c3d; outline-offset: -3px; }
.ah-assistant__tile--personal { border-color: #a8c4b1; background: #fff; box-shadow: inset 3px 0 0 #2b7952; }
.ah-assistant__tile--personal .ah-assistant__tile-label small { color: #26804e; font-weight: 700; }
.ah-assistant__tile .ah-assistant__tile-label { min-width: 0; }

/* Pole wyszukiwania: podpowiedzi nad polem – klient widzi, co Webek zrobi, zanim naciśnie Enter. */
.ah-assistant__suggest { position: absolute; z-index: 3; left: 10px; right: 10px; bottom: 70px; display: grid; gap: 4px; max-height: min(330px, 62%); overflow-y: auto; padding: 10px; border: 1px solid #d5e0d8; border-radius: 14px; background: #fff; box-shadow: 0 -6px 28px rgba(23,61,46,.16); overscroll-behavior: contain; animation: assistant-choice-in .2s cubic-bezier(.16,1,.3,1) both; }
.ah-assistant__suggest[hidden] { display: none; }
.ah-assistant__suggest-head { margin: 0 2px 4px; color: #53625a; font-size: 11px; line-height: 1.4; }
.ah-assistant__suggest-item, .ah-assistant__suggest-example { display: grid; gap: 2px; width: 100%; padding: 9px 11px; border: 1px solid transparent; border-radius: 10px; background: #f5f8f5; color: #173d2e; text-align: left; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.ah-assistant__suggest-item small, .ah-assistant__suggest-example small { color: #62666b; font-size: 11px; font-weight: 500; }
.ah-assistant__suggest-example { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; background: #fff; border-color: #e3e9e4; font-weight: 600; }
.ah-assistant__suggest-item.is-active, .ah-assistant__suggest-item:hover, .ah-assistant__suggest-example:hover { border-color: #a8c4b1; background: #eaf3ed; }
.ah-assistant__suggest-item { grid-template-columns: minmax(0, 1fr) auto; column-gap: 10px; }
.ah-assistant__suggest-item > * { grid-column: 1; }
.ah-assistant__suggest-item.is-active::after { content: 'Enter ↵'; grid-column: 2; grid-row: 1 / span 2; align-self: center; color: #2b7952; font-size: 10px; font-weight: 700; white-space: nowrap; pointer-events: none; }
.ah-assistant__composer input::placeholder { color: #7a827d; }

/* Przełączniki cech, budżetu i „Rozumiem: …”. */
.ah-assistant__chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 6px 0 10px; }
.ah-assistant__chip { min-height: 34px; padding: 6px 12px; border: 1px solid #cfdcd2; border-radius: 999px; background: #fff; color: #173d2e; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; transition: background-color .15s ease, border-color .15s ease, color .15s ease; }
.ah-assistant__chip:hover, .ah-assistant__chip:focus-visible { border-color: #2b7952; }
.ah-assistant__chip[aria-pressed="true"], .ah-assistant__chip.is-on { border-color: #173d2e; background: #173d2e; color: #fff; }
.ah-assistant__chip b { margin-left: 4px; font-weight: 800; opacity: .8; }
.ah-assistant__chip:disabled { opacity: .5; cursor: default; }
.ah-assistant__builder { display: grid; gap: 4px; margin: 8px 0 4px; }
.ah-assistant__builder > div > span { color: #53625a; font-size: 11px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.ah-assistant__builder .ah-assistant__chips { margin-bottom: 4px; }
.ah-assistant__builder-go { justify-self: stretch; text-align: center; border: 0; }
.ah-assistant__builder-go:disabled { background: #8a9a90; cursor: default; }
.ah-assistant__understood { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.ah-assistant__understood > span { color: #53625a; font-size: 12px; font-weight: 700; }

/* Karty produktów z przyciskiem „Do koszyka”. */
.ah-assistant__cards { display: grid; gap: 7px; margin: 10px 0; }
.ah-assistant__card { display: flex; align-items: stretch; min-width: 0; border: 1px solid #e6eae6; border-radius: 10px; background: #fff; overflow: hidden; animation: assistant-choice-in .34s cubic-bezier(.16,1,.3,1) both; }
.ah-assistant__card:nth-child(2) { animation-delay: .04s; }.ah-assistant__card:nth-child(3) { animation-delay: .08s; }.ah-assistant__card:nth-child(4) { animation-delay: .12s; }.ah-assistant__card:nth-child(5) { animation-delay: .16s; }.ah-assistant__card:nth-child(6) { animation-delay: .2s; }
.ah-assistant__card > a { display: flex; flex: 1; min-width: 0; gap: 10px; align-items: center; padding: 8px; color: inherit; text-decoration: none; }
.ah-assistant__card > a:hover strong { text-decoration: underline; }
.ah-assistant__card img { width: 54px; height: 54px; flex: none; object-fit: cover; border-radius: 8px; background: #f0f1ee; }
.ah-assistant__card .ah-assistant__result-copy { display: grid; gap: 2px; }
.ah-assistant__card strong { font-size: 12px; color: #202427; }
.ah-assistant__card small { color: #62666b; font-size: 11px; }
.ah-assistant__add { display: grid; place-items: center; align-content: center; gap: 1px; width: 62px; flex: none; border: 0; border-left: 1px solid #e6eae6; background: #f3f7f4; color: #173d2e; font: inherit; font-size: 20px; font-weight: 800; line-height: 1; cursor: pointer; }
.ah-assistant__add span { font-size: 9px; font-weight: 700; letter-spacing: .02em; }
.ah-assistant__add:hover, .ah-assistant__add:focus-visible { background: #173d2e; color: #fff; }
.ah-assistant__add.is-busy { opacity: .6; cursor: wait; }
.ah-assistant__add.is-added { background: #2b7952; color: #fff; cursor: default; }

/* Zestaw do pająka. */
.ah-assistant__kit-title { display: grid; gap: 1px; font-size: 15px; }
.ah-assistant__kit-title span { color: #53625a; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.ah-assistant__kit { display: grid; gap: 6px; margin: 8px 0 6px; }
.ah-assistant__kit-row { display: grid; grid-template-columns: 20px 44px minmax(0, 1fr) auto; gap: 9px; align-items: center; padding: 8px 10px 8px 8px; border: 1px solid #e6eae6; border-radius: 10px; background: #fff; cursor: pointer; transition: border-color .15s ease, background-color .15s ease, opacity .15s ease; }
.ah-assistant__kit-row:has(input:not(:checked)) { opacity: .62; background: #fafaf9; }
.ah-assistant__kit-row:has(input:checked) { border-color: #a8c4b1; }
.ah-assistant__kit-row.is-spider { border-color: #173d2e; box-shadow: inset 3px 0 0 #173d2e; }
.ah-assistant__kit-row input { width: 18px; height: 18px; margin: 0; accent-color: #173d2e; }
.ah-assistant__kit-row img { width: 44px; height: 44px; object-fit: cover; border-radius: 7px; background: #f0f1ee; }
.ah-assistant__kit-row > span { display: grid; gap: 1px; min-width: 0; }
.ah-assistant__kit-row small { color: #2b7952; font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.ah-assistant__kit-row a { overflow: hidden; color: #202427; font-size: 12px; font-weight: 700; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; }
.ah-assistant__kit-row em { color: #62666b; font-size: 11px; font-style: normal; line-height: 1.35; }
.ah-assistant__kit-row b { color: #173d2e; font-size: 12px; white-space: nowrap; }
.ah-assistant__kit-sum { display: flex; justify-content: space-between; align-items: baseline; padding: 6px 4px 0; font-size: 13px; }
.ah-assistant__kit-sum strong { font-size: 17px; color: #173d2e; }
.ah-assistant__kit-go { width: 100%; margin: 4px 0 0; border: 0; text-align: center; font-size: 13px; }
.ah-assistant__kit-go:disabled { background: #8a9a90; cursor: default; }
.ah-assistant__kit.is-added .ah-assistant__kit-go { background: #2b7952; opacity: 1; }

/* Pasek postępu do darmowej dostawy. */
.ah-assistant__meter { display: grid; gap: 6px; margin: 4px 0 10px; }
.ah-assistant__meter > span { display: flex; justify-content: space-between; gap: 8px; font-size: 12px; }
.ah-assistant__meter small { color: #26804e; font-weight: 700; }
.ah-assistant__meter i { position: relative; display: block; height: 8px; overflow: hidden; border-radius: 99px; background: #e8ede9; }
.ah-assistant__meter i::after { content: ''; position: absolute; inset: 0 auto 0 0; width: var(--done); border-radius: inherit; background: linear-gradient(90deg, #2b7952, #3c9a68); animation: assistant-meter .9s cubic-bezier(.16,1,.3,1) both; }
@keyframes assistant-meter { from { width: 0; } }

/* Porównanie gatunków. */
.ah-assistant__compare { margin: 2px 0 10px; font-size: 12px; }
.ah-assistant__compare-head { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: start; margin-bottom: 8px; text-align: center; }
.ah-assistant__compare-head > span { align-self: center; color: #8a9a90; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.ah-assistant__compare-head div { display: grid; justify-items: center; gap: 4px; }
.ah-assistant__compare-head img { width: 64px; height: 64px; object-fit: cover; border-radius: 50%; border: 2px solid #e6eae6; background: #f0f1ee; }
.ah-assistant__compare-head strong { font-size: 12px; font-style: italic; line-height: 1.25; }
.ah-assistant__compare-head small { color: #26804e; font-size: 11px; font-weight: 700; }
.ah-assistant__compare-row { display: grid; grid-template-columns: 1fr 1fr; gap: 2px 12px; padding: 7px 0; border-top: 1px solid #ecefec; }
.ah-assistant__compare-label { grid-column: 1 / -1; color: #53625a; font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.ah-assistant__compare-row > div { display: grid; gap: 4px; align-content: start; line-height: 1.35; }
.ah-assistant__compare-row.is-same > div { color: #8a9a90; }
.ah-assistant__scale { display: flex; gap: 3px; }
.ah-assistant__scale i { width: 16px; height: 5px; border-radius: 3px; background: #e2e8e3; }
.ah-assistant__scale i.is-on { background: #2b7952; }

/* Słowniczek i sklepy. */
.ah-assistant__glossary { display: grid; gap: 2px; margin: 6px 0 8px; }
.ah-assistant__glossary dt { margin-top: 8px; color: #173d2e; font-weight: 800; }
.ah-assistant__glossary dd { margin: 0; color: #3b443f; }
.ah-assistant__stores { display: grid; gap: 8px; margin: 2px 0 8px; }
.ah-assistant__store { padding: 11px 12px; border: 1px solid #e6eae6; border-radius: 11px; background: #fff; }
.ah-assistant__store p { margin: 4px 0 0 !important; }
.ah-assistant__store-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 6px; }
.ah-assistant__store-head strong { font-size: 14px; }
.ah-assistant__status { padding: 3px 9px; border-radius: 999px; background: #eef0ee; color: #53625a; font-size: 11px; font-weight: 700; }
.ah-assistant__status.is-open { background: #e1f2e7; color: #1b754f; }
.ah-assistant__status.is-open::before { content: ''; display: inline-block; width: 7px; height: 7px; margin-right: 5px; border-radius: 50%; background: #2b9a5e; box-shadow: 0 0 0 3px rgba(43,154,94,.18); vertical-align: 1px; }
.ah-assistant__store-actions { display: flex; gap: 8px; margin-top: 8px; }
.ah-assistant__store-actions a { padding: 7px 12px; border: 1px solid #cfdcd2; border-radius: 999px; color: #173d2e; font-size: 12px; font-weight: 700; text-decoration: none; }
.ah-assistant__store-actions a:hover { border-color: #173d2e; }
@media (max-width: 760px) { .ah-assistant__suggest { bottom: 66px; } .ah-assistant__composer input { font-size: 16px; } }
@media (prefers-reduced-motion: reduce) { .ah-assistant__suggest, .ah-assistant__card, .ah-assistant__meter i::after { animation: none; } }
/* Ekran startowy: kompaktowe kafelki z samą nazwą funkcji (bez strzałek), mniej przewijania. */
.ah-assistant__hint { margin-top: -6px !important; color: #53625a; font-size: 12.5px; line-height: 1.4; }
.ah-assistant__tiles--compact { gap: 6px; margin: 8px 0 2px; }
.ah-assistant__tiles--compact .ah-assistant__tile { min-height: 36px; align-items: center; padding: 7px 10px; border-radius: 8px; font-size: 12.5px; line-height: 1.2; animation: none; }
.ah-assistant__tiles--compact .ah-assistant__tile:not(.ah-assistant__tile--featured) > span[aria-hidden] { display: none; }
.ah-assistant__tiles--compact .ah-assistant__tile--featured { min-height: 50px; padding: 9px 14px; font-size: 14px; }
.ah-assistant__tiles--compact > .ah-assistant__tile:last-of-type:nth-of-type(odd):not(:first-of-type),
.ah-assistant__tiles--compact > .ah-assistant__tile--featured ~ .ah-assistant__tile:last-of-type:nth-of-type(even) { min-height: 36px; }
.ah-assistant__bubble .ah-assistant__group { margin: 10px 0 -2px !important; font-size: 10.5px; }
.ah-assistant__badge { flex: none; padding: 2px 7px; border-radius: 99px; background: #e1f2e7; color: #1b754f; font-size: 11px; font-style: normal; font-weight: 800; white-space: nowrap; }
/* Przyciski pod odpowiedzią: każdy w osobnej linii, bez nachodzenia na siebie przy zawijaniu. */
.ah-assistant__bubble .ah-assistant__primary { display: block; width: fit-content; max-width: 100%; margin: 10px 0 0; line-height: 1.3; }
.ah-assistant__bubble .ah-assistant__back { display: block; width: fit-content; margin: 10px 0 0; padding: 6px 0; line-height: 1.3; color: #1b754f; font-weight: 700; }
.ah-assistant__bubble .ah-assistant__back:hover, .ah-assistant__bubble .ah-assistant__back:focus-visible { text-decoration: underline; }
.ah-assistant__bubble .ah-assistant__back + .ah-assistant__back { margin-top: 2px; }
.ah-assistant__back--muted { color: #62666b !important; font-weight: 600 !important; }
.ah-assistant__bubble > .ah-assistant__tile { width: 100%; margin: 10px 0 0; min-height: 44px; align-items: center; }
.ah-assistant__bubble .ah-assistant__tiles + .ah-assistant__back, .ah-assistant__bubble .ah-assistant__cards + .ah-assistant__back { margin-top: 4px; }
/* Kafelki w odpowiedziach: tekst wyśrodkowany w pionie, równa wysokość w rzędzie. */
.ah-assistant__bubble .ah-assistant__tiles:not(.ah-assistant__tiles--compact) .ah-assistant__tile { align-items: center; min-height: 48px; }
/* Pasek administratora WordPressa (tylko zalogowani): panel nie wchodzi pod pasek. */
@media (min-width: 761px) { body.admin-bar .ah-assistant__panel { height: min(660px, calc(100dvh - 172px)); } }
/* Rozmowa jak czat: „W czym jeszcze mogę pomóc?” pod ostatnią odpowiedzią, wybrane kafelki oznaczone, nie zablokowane. */
.ah-assistant__next { margin-top: 14px; padding-top: 12px; border-top: 1px solid #e6ebe7; }
.ah-assistant__next > p { margin: 0 0 2px !important; color: #173d2e; font-size: 13px; font-weight: 800; }
.ah-assistant__next .ah-assistant__chips { margin: 6px 0 0; }
.ah-assistant__chip--all { display: inline-flex; align-items: center; gap: 7px; border-color: #173d2e; background: #173d2e; color: #fff; }
.ah-assistant__chip--all:hover, .ah-assistant__chip--all:focus-visible { border-color: #22533e; background: #22533e; color: #fff; }
.ah-assistant__chip--all.is-picked { background: #173d2e !important; }
.ah-assistant__chips--back { margin: 12px 0 0; }
.ah-assistant__tile.is-picked { border-color: #2b7952; box-shadow: inset 0 0 0 1px #2b7952; }
.ah-assistant__tile--featured.is-picked { box-shadow: inset 0 0 0 2px #8fcfa9; }
.ah-assistant__chip.is-picked:not([aria-pressed]) { border-color: #2b7952; background: #eaf3ed; }

/* Karty produktów: pełna nazwa w kilku liniach zamiast przycinania (Safari na iPhonie nie przycinało poprawnie
   i trzecia linia nachodziła na nazwę łacińską i cenę). Na telefonie węższy przycisk „+”. */
.ah-assistant__card .ah-assistant__result-copy, .ah-assistant__results .ah-assistant__result-copy { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ah-assistant__card .ah-assistant__result-copy > *, .ah-assistant__results .ah-assistant__result-copy > * { display: block; min-width: 0; }
.ah-assistant__result-copy strong { display: block !important; overflow: visible; -webkit-line-clamp: unset; line-clamp: unset; overflow-wrap: anywhere; line-height: 1.3; }
.ah-assistant__result-copy small { white-space: normal !important; overflow: visible !important; overflow-wrap: anywhere; line-height: 1.35; }
@media (max-width: 560px) {
  .ah-assistant__card img { width: 46px; height: 46px; }
  .ah-assistant__card > a { gap: 8px; padding: 7px; }
  .ah-assistant__add { width: 48px; font-size: 18px; }
  .ah-assistant__add span { display: none; }
}
/* Kafelki „dla Ciebie” (ostatnio oglądane, koszyk z kwotą) – każdy w pełnym wierszu, kwota mieści się obok nazwy. */
.ah-assistant__tiles--compact .ah-assistant__tile--personal { grid-column: 1 / -1; }
/* --- Przycisk Webka: pieczęć (jak logo sklepu). 84 px na komputerze, 68 px na telefonie; jasna obwódka i cień,
   żeby był widoczny także na ciemnych sekcjach. Napis po obwodzie obraca się przy najechaniu i gdy Webek zagaduje. --- */
.ah-assistant__launcher, .ah-assistant__launcher:is(:hover, :focus-visible), .ah-assistant__launcher.is-collapsing, .ah-assistant__launcher.is-collapsing:is(:hover, :focus-visible) {
  width: 84px; height: 84px; min-width: 0; max-width: none; gap: 0; padding: 0; border: 3px solid #f4f4f3; border-radius: 50%;
  background: #1f3b2d; box-shadow: 0 10px 28px rgba(17, 19, 18, .32), 0 0 0 1px rgba(17, 19, 18, .12); overflow: hidden;
}
.ah-assistant__launcher:is(:hover, :focus-visible) { background: #1f3b2d; transform: translateY(-2px) scale(1.03); }
.ah-assistant__launcher-icons, .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-icons { width: 100%; height: 100%; border-radius: 50%; background: none; }
.ah-assistant__launcher-label, .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ah-webek-seal { position: relative; display: block; width: 100%; height: 100%; font-family: var(--font, "Archivo", Arial, sans-serif); font-stretch: 82%; }
.ah-webek-seal__frame { display: block; width: 100%; height: 100%; }
.ah-webek-seal__portrait { position: absolute; left: 22%; top: 22%; width: 56%; height: 56%; border-radius: 50%; object-fit: cover; }
.ah-kadziolek-mark { border-radius: 50%; object-fit: cover; }
.ah-webek-seal__ring { transform-box: view-box; transform-origin: 50px 50px; transition: transform 1.2s cubic-bezier(.16, 1, .3, 1); }
.ah-assistant__launcher:is(:hover, :focus-visible) .ah-webek-seal__ring { transform: rotate(-60deg); }
.ah-assistant__launcher.is-nudging .ah-webek-seal__ring { animation: ah-seal-spin 2.4s cubic-bezier(.45, 0, .2, 1) 1; }
.ah-assistant__launcher.is-nudging .ah-assistant__launcher-icons { animation: none; }
@keyframes ah-seal-spin { to { transform: rotate(-360deg); } }
.ah-assistant__panel { bottom: 100px; }
.ah-assistant__suggestion { bottom: 100px; }
.ah-assistant__nudge::after { right: 36px; }
@media (min-width: 761px) { .ah-assistant__panel { height: min(660px, calc(100dvh - 156px)); } body.admin-bar .ah-assistant__panel { height: min(660px, calc(100dvh - 188px)); } }
@media (max-width: 760px) {
  .ah-assistant__launcher, .ah-assistant__launcher:is(:hover, :focus-visible), .ah-assistant__launcher.is-collapsing, .ah-assistant__launcher.is-collapsing:is(:hover, :focus-visible) { width: 68px; height: 68px; border-width: 2.5px; }
  .ah-assistant__panel { bottom: 82px; height: min(620px, calc(100dvh - 106px)); }
  .ah-assistant__suggestion { bottom: 84px; }
  .ah-assistant__nudge::after { right: 28px; }
}
@media (prefers-reduced-motion: reduce) { .ah-webek-seal__ring { transition: none; } .ah-assistant__launcher.is-nudging .ah-webek-seal__ring { animation: none; } .ah-assistant__launcher:is(:hover, :focus-visible) { transform: none; } }
/* Pieczęć z etykietą (komputer): zielona etykieta wsunięta pod pieczęć, jedna bryła. Pieczęć mówi „Zapytaj Webka”,
   etykieta – w czym pomaga. Na telefonie sama pieczęć. */
.ah-assistant__launcher, .ah-assistant__launcher:is(:hover, :focus-visible), .ah-assistant__launcher.is-collapsing, .ah-assistant__launcher.is-collapsing:is(:hover, :focus-visible) {
  display: flex; flex-direction: row-reverse; align-items: center; width: auto; height: 84px; padding: 0; border: 0; border-radius: 0;
  background: none; box-shadow: none; overflow: visible;
}
.ah-assistant__launcher:is(:hover, :focus-visible) { background: none; transform: translateY(-2px); }
.ah-assistant__launcher:focus-visible { outline: none; }
.ah-assistant__launcher:focus-visible .ah-assistant__launcher-icons { outline: 3px solid #427d5f; outline-offset: 3px; }
.ah-assistant__launcher-icons, .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-icons {
  position: relative; z-index: 1; flex: none; width: 84px; height: 84px; border: 3px solid #f4f4f3; border-radius: 50%; background: #1f3b2d;
  box-shadow: 0 10px 28px rgba(17, 19, 18, .32), 0 0 0 1px rgba(17, 19, 18, .12); overflow: hidden;
}
.ah-assistant__launcher-label, .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label {
  position: static; display: grid; gap: 3px; width: auto; height: 56px; margin-right: -34px; padding: 0 48px 0 22px; overflow: visible; clip: auto;
  align-content: center; border-radius: 28px 0 0 28px; background: #1f3b2d; color: #fff; text-align: left; white-space: nowrap;
  box-shadow: 0 8px 22px rgba(17, 19, 18, .22); opacity: 1; visibility: visible; transition: background-color .2s ease;
}
.ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label { background: #22533e; }
.ah-assistant__launcher-label small { color: #b7cfbf; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; opacity: 1; }
.ah-assistant__launcher-label strong { font-family: var(--font-display, "Archivo", Arial, sans-serif); font-stretch: 85%; font-size: 17px; font-weight: 800; letter-spacing: -.01em; line-height: 1.05; }
@media (max-width: 760px) {
  .ah-assistant__launcher, .ah-assistant__launcher:is(:hover, :focus-visible), .ah-assistant__launcher.is-collapsing, .ah-assistant__launcher.is-collapsing:is(:hover, :focus-visible) { height: 68px; }
  .ah-assistant__launcher-icons, .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-icons { width: 68px; height: 68px; border-width: 2.5px; }
  .ah-assistant__launcher-label, .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label { position: absolute; width: 1px; height: 1px; margin: 0; padding: 0; overflow: hidden; clip: rect(0 0 0 0); box-shadow: none; }
}

/* Otwarty panel: pieczęć zostaje na miejscu jako podstawa okienka i zamyka je (plakietka ×), etykieta chowa się pod
   pieczęć. Przy otwarciu Webek „rusza do pracy”: pierścień robi obrót, portret podskakuje. */
.ah-assistant__launcher.is-panel-open, .ah-assistant__launcher.is-collapsing { opacity: 1; pointer-events: auto; }
.ah-assistant__launcher-label { transition: opacity .2s ease, transform .35s cubic-bezier(.2, .8, .2, 1); }
.ah-assistant__launcher.is-panel-open .ah-assistant__launcher-label { opacity: 0; transform: translateX(28px); pointer-events: none; }
.ah-assistant__launcher::after {
  content: "×"; position: absolute; z-index: 2; top: -3px; right: -3px; width: 28px; height: 28px; border-radius: 50%;
  display: grid; place-items: center; background: #f4f4f3; color: #1f3b2d; font: 700 20px/1 Arial, sans-serif;
  box-shadow: 0 2px 8px rgba(17, 19, 18, .3); opacity: 0; transform: scale(.4); transition: opacity .2s ease, transform .3s cubic-bezier(.2, .8, .2, 1);
  pointer-events: none;
}
.ah-assistant__launcher.is-panel-open::after { opacity: 1; transform: scale(1); }
.ah-assistant__launcher.is-panel-open .ah-webek-seal__ring { animation: ah-seal-spin 1.1s cubic-bezier(.45, 0, .2, 1) 1; }
.ah-assistant__launcher.is-panel-open .ah-webek-seal__portrait { animation: ah-webek-hop .75s cubic-bezier(.3, 0, .2, 1) 1; }
@keyframes ah-webek-hop {
  0% { transform: none; }
  30% { transform: translateY(-16%) rotate(-9deg); }
  55% { transform: translateY(0) rotate(5deg); }
  75% { transform: rotate(-3deg); }
  100% { transform: none; }
}
@media (max-width: 760px) { .ah-assistant__launcher::after { width: 24px; height: 24px; font-size: 17px; top: -4px; right: -4px; } }
@media (prefers-reduced-motion: reduce) {
  .ah-assistant__launcher.is-panel-open .ah-webek-seal__ring, .ah-assistant__launcher.is-panel-open .ah-webek-seal__portrait { animation: none; }
  .ah-assistant__launcher-label, .ah-assistant__launcher::after { transition: none; }
}

/* Koszyk i kasa: sama pieczęć Webka (68 px). Napis „Pomogę wybrać ptasznika” nie pasuje do zakupów w toku
   i zasłaniał propozycje oraz przycisk „Dalej”. */
body.woocommerce-cart .ah-assistant__launcher, body.woocommerce-checkout .ah-assistant__launcher { height: 68px; }
body.woocommerce-cart .ah-assistant__launcher-icons, body.woocommerce-checkout .ah-assistant__launcher-icons,
body.woocommerce-cart .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-icons, body.woocommerce-checkout .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-icons { width: 68px; height: 68px; border-width: 2.5px; }
body.woocommerce-cart .ah-assistant__launcher-label, body.woocommerce-checkout .ah-assistant__launcher-label,
body.woocommerce-cart .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label, body.woocommerce-checkout .ah-assistant__launcher:is(:hover, :focus-visible) .ah-assistant__launcher-label { position: absolute; width: 1px; height: 1px; margin: 0; padding: 0; overflow: hidden; clip: rect(0 0 0 0); box-shadow: none; }

/* Napis Webka zmienia się po działaniu klienta – krótkie przejście, bez migania. */
.ah-assistant__launcher-label strong { transition: opacity .22s ease, transform .22s ease; }
.ah-assistant__launcher-label strong.is-swapping { opacity: 0; transform: translateY(4px); }
@media (prefers-reduced-motion: reduce) { .ah-assistant__launcher-label strong { transition: none; } }

/* Ekran startowy: zwinięte grupy z zapowiedzią zawartości; wyniki quizu z dopiskiem o akcesoriach. */
.ah-assistant__topics-title { display: grid; gap: 2px; min-width: 0; }
.ah-assistant__topics-title { font-size: 13px; }
.ah-assistant__topics-title small { overflow: hidden; color: #5b6b62; font-size: 11px; font-weight: 500; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.ah-assistant__lead-sm { margin: 16px 0 6px !important; color: #243e30; font-size: 13px; font-weight: 800; }
