/* Pesto — Ekstra usługi do zamówienia (moduł order-extras). WYGLĄD PRZYWRÓCONY do wersji 0.8.28 (decyzja właściciela 13.10.2026: wygląd sprzed „płaskiej” przebudowy feel).
   Reguły pochodzą 1:1 ze starej wtyczki (dawniej <style> drukowany w PHP); wartości zapasowe var(--pesto-*, …) zostały jak były, więc wygląd domyślny jest identyczny.
   Architektura zostaje: CSS w pliku (bez <style> w treści strony), dostępność (fokus, ARIA) i nazwy klas dla JS/motywu. */
.pesto-oe{margin:.4rem 0 1.2rem;display:flex;flex-direction:column;gap:.55rem;background:none;border:0;padding:0}
.pesto-oe__head{display:flex;align-items:center;gap:.45rem;margin:0 0 .15rem;font-weight:800;font-size:.82rem;letter-spacing:.05em;text-transform:uppercase;color:var(--pesto-ink,#191c1f)}
.pesto-oe__head::before{content:"+";flex:none;display:inline-grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--pesto-accent,#c8a24a);color:var(--pesto-accent-ink,#1a1a17);font-size:.9rem;font-weight:800;line-height:1}
.pesto-oe__row{display:flex;align-items:center;gap:.75rem;min-height:56px;border:1.5px solid var(--pesto-line,#e7e3da);border-radius:var(--pesto-radius,14px);padding:.5rem .85rem;cursor:pointer;background:var(--pesto-base,#fff);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .12s ease;margin:0}
.pesto-oe__row:hover{border-color:var(--pesto-accent,#c8a24a);box-shadow:0 4px 14px rgba(20,24,29,.07)}
.pesto-oe__row:active{transform:scale(.99)}
.pesto-oe__cb{appearance:none;-webkit-appearance:none;flex:none;width:24px;height:24px;margin:0;cursor:pointer;border:2px solid var(--pesto-line,#cbd0d6);border-radius:7px;background:var(--pesto-base,#fff);position:relative;transition:border-color .15s ease,background .15s ease}
.pesto-oe__cb:checked{border-color:var(--pesto-accent,#c8a24a);background:var(--pesto-accent,#c8a24a)}
.pesto-oe__cb:checked::after{content:"";position:absolute;left:8px;top:3px;width:5px;height:10px;border:solid var(--pesto-accent-ink,#1a1a17);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.pesto-oe__cb:focus-visible{outline:2px solid var(--pesto-accent,#c8a24a);outline-offset:2px}
.pesto-oe__name{flex:1;min-width:0;font-size:.9rem;line-height:1.3;font-weight:600;color:var(--pesto-body,#2b2c30);display:flex;align-items:center;gap:.4rem}
.pesto-oe__i{position:relative;width:18px;height:18px;border-radius:50%;background:var(--pesto-surface,#f3efe7);color:var(--pesto-muted,#6f6e6a);font-size:.72rem;font-weight:700;display:inline-grid;place-items:center;cursor:pointer;flex:none;border:0;padding:0}
.pesto-oe__tip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:min(220px,60vw);background:var(--pesto-ink,#2b2c30);color:#fff;padding:.5rem .65rem;border-radius:8px;font-size:.78rem;font-weight:400;line-height:1.35;text-align:left;text-transform:none;letter-spacing:0;opacity:0;visibility:hidden;transition:opacity .15s ease;z-index:6;pointer-events:none;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.pesto-oe__tip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--pesto-ink,#2b2c30)}
.pesto-oe__info:hover .pesto-oe__tip,.pesto-oe__info:focus-within .pesto-oe__tip,.pesto-oe__i[aria-expanded="true"] ~ .pesto-oe__tip{opacity:1;visibility:visible}
.pesto-oe__price{flex:none;font-weight:800;font-size:.92rem;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--pesto-ink,#121316)}
.pesto-oe__row:has(.pesto-oe__cb:checked){border-color:var(--pesto-accent,#c8a24a);background:color-mix(in srgb,var(--pesto-accent,#c8a24a) 9%,transparent);box-shadow:0 4px 14px rgba(20,24,29,.06)}
.pesto-oe__row.is-busy{opacity:.55;pointer-events:none}
@media(prefers-reduced-motion:reduce){
	.pesto-oe__row{transition:none}
	.pesto-oe__row:active{transform:none}
}

/* Przycisk „i” (.pesto-oe__i) ma dawny wygląd kółka; dymek jest jego RODZEŃSTWEM wewnątrz .pesto-oe__info (a11y: aria-describedby). */
.pesto-oe__info{position:relative;display:inline-flex;flex:none}
.pesto-oe__i::before{content:"";position:absolute;inset:-14px}
.pesto-oe__i:focus-visible{outline:2px solid var(--pesto-accent,#c8a24a);outline-offset:2px}
