/* Studio: Tabela cen (0.8.0). Kolory przychodzą z PHP jako --sp-*; teksty mają przedrostek .studio-block.studio-pt (0,3,0),
   bo Kubio koloruje nagłówki, akapity, linki i przyciski mocniejszymi selektorami. */
.studio-pt{--sp-cols:3;--sp-min:260px;--sp-gap:24px;--sp-radius:24px;--sp-pad:clamp(22px,2.4vw,30px);--sp-line:rgba(127,127,127,.18);align-self:stretch}
@supports (color:color-mix(in srgb,red,blue)){.studio-pt{--sp-line:color-mix(in srgb,currentColor 11%,transparent)}}

/* Przełącznik wariantów: dwa równe przyciski i przesuwana pigułka. */
.studio-pt__switch{display:flex;justify-content:center;margin:0 0 clamp(26px,3.4vw,44px)}
.is-align-left .studio-pt__switch{justify-content:flex-start}
.studio-pt__toggle{position:relative;display:inline-grid;grid-auto-columns:1fr;grid-auto-flow:column;padding:5px;border-radius:999px;background:rgba(127,127,127,.12);box-shadow:inset 0 0 0 1px var(--sp-line)}
.studio-block.studio-pt .studio-pt__opt{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;margin:0;padding:8px 22px;border:0;border-radius:999px;background:transparent;box-shadow:none;color:inherit;font:inherit;font-size:.95rem;font-weight:650;line-height:1.2;white-space:nowrap;cursor:pointer;transition:color .3s ease}
.studio-block.studio-pt .studio-pt__opt:hover{background:transparent;color:inherit}
.studio-block.studio-pt .studio-pt__opt.is-active,.studio-block.studio-pt .studio-pt__opt.is-active:hover{color:var(--sp-on-accent,#fff)}
.studio-block.studio-pt .studio-pt__opt:focus-visible{outline:2px solid var(--sp-accent);outline-offset:2px}
.studio-pt__pill{position:absolute;top:5px;bottom:5px;left:5px;width:calc(50% - 5px);border-radius:999px;background:var(--sp-accent,#254e3a);box-shadow:0 8px 20px -8px rgba(0,0,0,.4);transition:transform .5s cubic-bezier(.3,1.25,.45,1)}
.studio-pt.is-variant-2 .studio-pt__pill{transform:translateX(100%)}
.studio-pt__opt-badge{padding:3px 8px;border-radius:999px;background:var(--sp-hl,#b58a38);color:var(--sp-on-hl,#fff);font-size:.72rem;font-weight:750;letter-spacing:.02em}

/* Siatka kart: najwyżej --sp-cols kolumn, a gdy karta byłaby węższa niż --sp-min, mniej. */
.studio-pt__plans{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(var(--sp-min),(100% - (var(--sp-cols) - 1) * var(--sp-gap)) / var(--sp-cols))),1fr));gap:var(--sp-gap);align-items:stretch;container-type:inline-size}
.studio-pt.has-raise.is-layout-cards .studio-pt__plans{padding-top:16px}

.studio-pt__plan{position:relative;display:flex;flex-direction:column;min-width:0;border-radius:var(--sp-radius);background:var(--sp-card-bg,#fff);color:var(--sp-text,inherit);text-align:left;isolation:isolate;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s ease,translate .5s cubic-bezier(.2,.7,.2,1)}
.is-align-center .studio-pt__plan{text-align:center}
.studio-pt__body{display:flex;flex:1;flex-direction:column;gap:22px;padding:var(--sp-pad)}
.is-card-elevated .studio-pt__plan{box-shadow:0 1px 2px rgba(15,23,42,.05),0 22px 44px -22px rgba(15,23,42,.3),inset 0 0 0 1px rgba(15,23,42,.06)}
.is-card-outline .studio-pt__plan{box-shadow:inset 0 0 0 1px var(--sp-line)}
.is-card-glass .studio-pt__plan{background:rgba(255,255,255,.08);background:color-mix(in srgb,var(--sp-card-bg,#fff) 10%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 24px 56px -28px rgba(0,0,0,.55)}
.has-hover .studio-pt__plan:hover{transform:translateY(-6px)}
.has-hover.is-card-elevated .studio-pt__plan:hover{box-shadow:0 2px 4px rgba(15,23,42,.06),0 34px 64px -26px rgba(15,23,42,.38),inset 0 0 0 1px rgba(15,23,42,.06)}

/* Wyróżniony plan */
.is-featured-accent .studio-pt__plan.is-featured{background:var(--sp-accent,#254e3a);color:var(--sp-on-accent,#fff)}
.is-featured-accent.is-card-elevated .studio-pt__plan.is-featured{box-shadow:0 30px 60px -26px rgba(15,23,42,.5)}
.is-featured-outline .studio-pt__plan.is-featured,.has-hover.is-featured-outline .studio-pt__plan.is-featured:hover{box-shadow:inset 0 0 0 2px var(--sp-accent,#254e3a),0 28px 60px -28px rgba(15,23,42,.45)}
@media(min-width:900px){.has-raise.is-layout-cards .studio-pt__plan.is-featured{translate:0 -16px}}

.studio-pt__media{position:relative;margin:8px 8px 0;overflow:hidden;border-radius:max(0px,calc(var(--sp-radius) - 8px));aspect-ratio:16/10;background:rgba(127,127,127,.15)}
.studio-pt__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.has-hover .studio-pt__plan:hover .studio-pt__media img{transform:scale(1.05)}

.studio-pt__head{display:flex;flex-direction:column;align-items:flex-start}
.is-align-center .studio-pt__head{align-items:center}
.studio-pt__badge{display:inline-flex;align-items:center;margin:0 0 14px;padding:6px 12px;border-radius:999px;background:var(--sp-hl,#b58a38);color:var(--sp-on-hl,#fff);font-size:.7rem;font-weight:750;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}
.has-image .studio-pt__badge{position:absolute;top:20px;left:20px;z-index:1;margin:0;box-shadow:0 6px 18px -6px rgba(0,0,0,.45)}
.studio-block.studio-pt .studio-pt__name{margin:0;color:inherit;font-size:clamp(1.15rem,1.7vw,1.35rem);font-weight:700;line-height:1.25;letter-spacing:-.01em}
.studio-block.studio-pt .studio-pt__desc{margin:8px 0 0;color:inherit;opacity:.72;font-size:.95rem;line-height:1.55}

/* Cena: oba warianty leżą w tej samej komórce siatki, więc przełączenie nie zmienia wysokości karty. */
.studio-pt__swap{display:grid}
.studio-pt__variant{grid-area:1/1;transition:opacity .35s ease,transform .5s cubic-bezier(.2,.7,.2,1),visibility .35s}
.studio-pt:not(.is-variant-2) .studio-pt__variant[data-variant="2"]{visibility:hidden;opacity:0;transform:translateY(12px)}
.studio-pt.is-variant-2 .studio-pt__variant[data-variant="1"]{visibility:hidden;opacity:0;transform:translateY(-12px)}
.studio-pt__old{display:block;margin:0 0 4px;opacity:.55;font-size:.95rem;text-decoration:line-through}
.studio-pt__line{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .4em}
.is-align-center .studio-pt__line{justify-content:center}
.studio-pt__prefix,.studio-pt__period{opacity:.7;font-size:.95rem}
.studio-pt__amount{font-size:clamp(2.3rem,4.2vw,3.1rem);font-weight:800;line-height:1;letter-spacing:-.035em;font-variant-numeric:tabular-nums;white-space:nowrap}
.studio-pt__currency{margin:0 .1em;font-size:.48em;font-weight:700;letter-spacing:0}
.studio-block.studio-pt .studio-pt__note{margin:10px 0 0;color:inherit;opacity:.62;font-size:.85rem;line-height:1.4}

/* Cechy: ✓ dostępne, ✕ niedostępne (wyszarzone). */
.studio-block.studio-pt .studio-pt__features{display:grid;gap:12px;margin:0;padding:22px 0 0;border-top:1px solid var(--sp-line);list-style:none}
.studio-block.studio-pt .studio-pt__features li{display:flex;align-items:flex-start;gap:12px;margin:0;padding:0;color:inherit;font-size:.95rem;line-height:1.45;list-style:none}
.studio-block.studio-pt .studio-pt__features li::before,.studio-block.studio-pt .studio-pt__features li::marker{content:none}
.is-align-center .studio-pt__features li{justify-content:center}
.studio-block.studio-pt .studio-pt__features li.is-off{opacity:.48}
.studio-pt__icon{position:relative;flex:0 0 auto;width:20px;height:20px;margin-top:1px;border-radius:50%;background:rgba(127,127,127,.18)}
.studio-pt__icon::before{content:"";position:absolute;inset:0;background:var(--sp-accent,#254e3a);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18.5 8'/%3E%3C/svg%3E") center/13px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18.5 8'/%3E%3C/svg%3E") center/13px no-repeat}
.is-on .studio-pt__icon{background:rgba(37,78,58,.12);background:color-mix(in srgb,var(--sp-accent,#254e3a) 14%,transparent)}
.is-off .studio-pt__icon::before{background:currentColor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M8 8l8 8M16 8l-8 8'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M8 8l8 8M16 8l-8 8'/%3E%3C/svg%3E");-webkit-mask-size:12px;mask-size:12px}
.is-featured-accent .is-featured .is-on .studio-pt__icon{background:rgba(255,255,255,.18);background:color-mix(in srgb,var(--sp-on-accent,#fff) 18%,transparent)}
.is-featured-accent .is-featured .is-on .studio-pt__icon::before{background:var(--sp-on-accent,#fff)}

/* Przycisk: wyróżniony plan pełny, pozostałe obrys (albo wszystkie jednakowo). Warianty ustawiają tylko zmienne --spb-*,
   a jeden selektor z podwójną klasą je stosuje — Kubio koloruje linki selektorem (0,3,1), po najechaniu (0,4,1). */
.studio-pt__cta{margin-top:auto;padding-top:4px}
.studio-pt__button{--spb-bg:var(--sp-accent,#254e3a);--spb-fg:var(--sp-on-accent,#fff);--spb-ring:0 0 0 0 transparent}
.is-buttons-outline .studio-pt__button,.is-buttons-auto .studio-pt__plan:not(.is-featured) .studio-pt__button{--spb-bg:transparent;--spb-fg:currentColor;--spb-ring:inset 0 0 0 1.5px currentColor;--spb-hbg:var(--sp-accent,#254e3a);--spb-hfg:var(--sp-on-accent,#fff);--spb-hring:inset 0 0 0 1.5px var(--sp-accent,#254e3a)}
.is-featured-accent .is-featured .studio-pt__button{--spb-bg:var(--sp-on-accent,#fff);--spb-fg:var(--sp-accent,#254e3a);--spb-ring:0 0 0 0 transparent;--spb-hbg:var(--sp-on-accent,#fff);--spb-hfg:var(--sp-accent,#254e3a);--spb-hring:0 10px 26px -10px rgba(0,0,0,.45)}
.studio-block.studio-pt .studio-pt__cta .studio-pt__button.studio-pt__button{display:flex;align-items:center;justify-content:center;gap:.5em;width:100%;min-height:50px;box-sizing:border-box;padding:12px 22px;border-radius:999px;background:var(--spb-bg);box-shadow:var(--spb-ring);color:var(--spb-fg);font-weight:700;line-height:1.2;text-decoration:none;transition:background .3s ease,color .3s ease,box-shadow .3s ease,transform .3s ease}
.studio-block.studio-pt .studio-pt__cta .studio-pt__button.studio-pt__button:hover{background:var(--spb-hbg,var(--spb-bg));box-shadow:var(--spb-hring,var(--spb-ring));color:var(--spb-hfg,var(--spb-fg));transform:translateY(-1px)}
.studio-block.studio-pt .studio-pt__button::after{content:"→";transition:transform .3s ease}
.studio-block.studio-pt .studio-pt__button:hover::after{transform:translateX(4px)}
.studio-block.studio-pt .studio-pt__button:focus-visible{outline:3px solid var(--sp-hl,#b58a38);outline-offset:3px}

.studio-block.studio-pt .studio-pt__footnote{margin:clamp(20px,2.6vw,30px) 0 0;color:inherit;opacity:.62;font-size:.85rem;line-height:1.5;text-align:center}
.is-align-left .studio-pt__footnote{text-align:left}

/* Wiersze: zdjęcie | nazwa + cechy | cena + przycisk; w wąskim miejscu wracają do kart. */
.is-layout-rows .studio-pt__plans{grid-template-columns:1fr}
.is-layout-rows .studio-pt__plan{flex-direction:row}
.is-layout-rows .studio-pt__media{flex:0 0 clamp(150px,24%,260px);margin:8px 0 8px 8px;aspect-ratio:auto;min-height:140px}
.is-layout-rows .studio-pt__body{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head price" "feat cta";align-items:center;gap:18px 36px}
.is-layout-rows .studio-pt__head{grid-area:head}
.is-layout-rows .studio-pt__price{grid-area:price;text-align:right}
.is-layout-rows .studio-pt__line{justify-content:flex-end}
.studio-pt.is-layout-rows .studio-pt__features{grid-area:feat;display:flex;flex-wrap:wrap;gap:8px 20px;padding:0;border:0}
.is-layout-rows .studio-pt__cta{grid-area:cta;margin:0;padding:0}
.studio-pt.is-layout-rows .studio-pt__cta .studio-pt__button.studio-pt__button{min-width:190px}
.is-layout-rows .has-image .studio-pt__badge{position:static;box-shadow:none;margin-bottom:12px}
@container (max-width:680px){
  .is-layout-rows .studio-pt__plan{flex-direction:column}
  .is-layout-rows .studio-pt__media{flex:none;margin:8px 8px 0;aspect-ratio:16/10;min-height:0}
  .is-layout-rows .studio-pt__body{display:flex}
  .is-layout-rows .studio-pt__price{text-align:inherit}
  .is-layout-rows .studio-pt__line{justify-content:flex-start}
  .studio-pt.is-layout-rows .studio-pt__features{display:grid;gap:12px;padding-top:22px;border-top:1px solid var(--sp-line)}
  .is-layout-rows .studio-pt__cta{margin-top:auto}
  .studio-pt.is-layout-rows .studio-pt__cta .studio-pt__button.studio-pt__button{min-width:0}
}

/* Telefon: karty w poziomej karuzeli z przyciąganiem i kropkami (kropki dokłada studio-pricing.js). */
.studio-pt__dots{display:none;justify-content:center;gap:8px;margin-top:14px}
.studio-block.studio-pt .studio-pt__dot{width:8px;height:8px;min-height:0;margin:0;padding:0;border:0;border-radius:99px;background:rgba(127,127,127,.35);box-shadow:none;cursor:pointer;transition:width .3s ease,background .3s ease}
.studio-block.studio-pt .studio-pt__dot.is-active{width:24px;background:var(--sp-accent,#254e3a)}
@media(max-width:640px){
  .is-mobile-carousel.is-layout-cards .studio-pt__plans{display:flex;gap:14px;margin:0 0 -34px;padding:6px 2px 46px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none}
  .is-mobile-carousel.is-layout-cards .studio-pt__plans::-webkit-scrollbar{display:none}
  .is-mobile-carousel.is-layout-cards .studio-pt__plan{flex:0 0 min(86%,360px);scroll-snap-align:center}
  .is-mobile-carousel.is-layout-cards .studio-pt__dots{display:flex}
  .has-hover .studio-pt__plan:hover{transform:none}
}

@media(prefers-reduced-motion:reduce){.studio-block.studio-pt *{transition:none!important}}

/* Edytor */
.studio-pt.is-editor .studio-pt__plan{cursor:pointer}
.studio-pt.is-editor .studio-pt__plan.is-selected-plan{outline:2px solid #3858e9;outline-offset:4px}
.studio-pt.is-editor .studio-pt__icon{cursor:pointer}
.studio-block.studio-pt .studio-pt__add{display:grid;place-content:center;gap:6px;min-height:200px;border:2px dashed rgba(127,127,127,.4);border-radius:var(--sp-radius);background:transparent;color:inherit;font:inherit;font-weight:650;cursor:pointer;opacity:.7}
.studio-block.studio-pt .studio-pt__add:hover{opacity:1;background:transparent;color:inherit}
.studio-block.studio-pt .studio-pt__add-feature{align-self:flex-start;margin:-10px 0 0;padding:4px 0;border:0;background:none;color:inherit;font:inherit;font-size:.85rem;opacity:.6;cursor:pointer}
.studio-editor-plans{display:grid;gap:6px;margin-bottom:12px}
.studio-editor-plans .components-button{justify-content:space-between;width:100%;height:auto;min-height:36px;white-space:normal;text-align:left}
