/* ==========================================================================
   Ranedo Rezerwacje — pricing (/pl/cennik), copied from the restaurant site. Tylko to, czego nie ma w site.css: pasek
   wyboru okresu, karty planów i drobiazgi tabeli porównania. Przełącznik to
   wspólny .segmented, tabela to .data-table, FAQ i CTA — .faq-list i .closing.
   ========================================================================== */

.plans-hero{padding-bottom:40px}
.plans-offer{padding:0 0 104px}

/* --------------------------------------------------------- okres rozliczeń -- */
.plans-controls{display:flex;flex-direction:column;align-items:center;gap:18px;margin-bottom:48px}
.plans-controls .segmented .badge{padding:2px 8px;font-size:10px}
/* Na granatowym (wybranym) przycisku plakietki muszą zachować kontrast. */
.plans-controls .segmented [aria-pressed=true] .badge{background:var(--yellow);color:var(--navy)}
.plans-renew{align-items:center;font-size:13px;cursor:pointer}
.plans-renew input{margin:0}

/* ------------------------------------------------------------ karty planów -- */
.plans-grid{display:grid;gap:24px;align-items:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}
.plans-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px;margin:0 auto}
.plans-grid--1{grid-template-columns:minmax(0,1fr);max-width:420px;margin:0 auto}
.plan-card{display:flex;flex-direction:column;padding:36px 32px;border-radius:24px}
.plan-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.plan-card h3{font-size:22px;margin:0}
.plan-desc{min-height:3.6em}
.plan-price{margin:26px 0 28px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.plan-price>p:first-child{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.plan-amount{font-size:56px;font-weight:500;letter-spacing:-.05em;line-height:1;color:var(--navy);font-variant-numeric:tabular-nums}
.plan-suffix{font-size:14px;color:var(--muted);font-weight:500}
.plan-card .cena-razem{margin-top:12px;font-size:13px;line-height:1.6;color:var(--ink)}
.plan-features{margin-bottom:18px}
.plan-features--grow{flex:1;margin-bottom:32px;align-content:start}
.plan-card .plan-brutto{margin-top:8px;font-size:13px;color:var(--muted)}
.plan-includes{margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}
.plan-features .icon{color:#a47b0b}
.plan-action{margin-top:auto}

/* Plan wyróżniony: granatowa karta z site.css + jasne warianty tekstów. */
.plan-card--featured .plan-amount{color:var(--yellow)}
.plan-card--featured .plan-suffix{color:#a9bccb}
.plan-card--featured .plan-price{border-bottom-color:#ffffff26}
.plan-card--featured .cena-razem{color:#e3ebf1}
.plan-card--featured .plan-brutto,.plan-card--featured .plan-includes{color:#a9bccb}
.plan-card--featured .plan-features li{color:#e3ebf1}
.plan-card--featured .plan-features .icon{color:var(--yellow)}

/* Enterprise — wycena indywidualna, pasek pod kartami. */
.plans-enterprise{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding:28px 32px;border-radius:24px}
.plans-enterprise h3{font-size:22px;margin:0 0 6px}
.plans-enterprise p{margin:0}
.plans-enterprise .button{flex-shrink:0}
@media(max-width:640px){.plans-enterprise{flex-direction:column;align-items:flex-start;padding:24px 22px}}

.plans-empty{max-width:560px;margin:0 auto;text-align:center}
.plans-empty .card-icon{margin-left:auto;margin-right:auto}

/* -------------------------------------------------------- tabela porównania -- */
.plans-table th[scope=row]{font-weight:400;text-align:left}
.plans-table thead th:first-child{width:36%}
.plans-table thead th.is-featured{color:var(--navy);box-shadow:inset 0 -2px 0 var(--yellow)}
.plans-feature{display:flex;align-items:flex-start;gap:12px}
.plans-feature .icon{width:20px;height:20px;color:#a47b0b;margin-top:2px}
.plans-feature small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.plans-table .yes .icon{width:20px;height:20px;margin:auto}
.plans-value{font-weight:500}
.plans-commission th,.plans-commission td{background:#f3f8f3}
.plans-commission th[scope=row]{font-weight:500}
.plans-commission td{font-size:16px}

@media(max-width:1000px){
  .plans-grid,.plans-grid--2{grid-template-columns:minmax(0,1fr);max-width:520px;margin:0 auto}
  .plan-desc{min-height:0}
}
@media(max-width:900px){
  .plans-offer{padding-bottom:78px}
}
@media(max-width:640px){
  .plans-hero{padding-bottom:28px}
  .plans-offer{padding-bottom:62px}
  .plans-controls{margin-bottom:32px}
  .plan-card{padding:28px 22px}
  .plan-amount{font-size:48px}
  .plans-table{min-width:560px}
  .plans-table th,.plans-table td{padding:12px 14px}
}
.plans-offer+.plans-faq{padding-top:24px}
.plans-table tr:last-child th{border-bottom:0}
/* Ukryte napisy .sr-only w komórkach mają position:absolute; bez pozycjonowanego
   kontenera ich blokiem odniesienia jest cała strona, więc przewijana w poziomie
   tabela „wystawała” poza ekran telefonu i rozpychała dokument. */
.plans-table-wrap{position:relative}
/* Na najwęższych ekranach plakietka rabatu idzie pod nazwę okresu, żeby trzy
   przyciski zmieściły się w jednym rzędzie. */
@media(max-width:400px){
  .plans-controls .segmented button{flex-direction:column;gap:3px;padding:8px 4px}
}

/* Link z karty planu do pełnej tabeli porównania. */
.plan-compare-link{display:inline-block;margin:-18px 0 26px;font-size:13px;font-weight:600;color:var(--navy);text-decoration:underline;text-underline-offset:4px}
.plan-card--featured .plan-compare-link{color:var(--yellow)}

/* Przypisy pod tabelą (SMS-y, kasa fiskalna) — mówimy wprost, co jest poza abonamentem. */
.plans-notes{max-width:760px;margin:22px auto 0;color:var(--muted);font-size:13px;line-height:1.7;text-align:center}
.plans-notes p{margin:0 0 6px}

/* Telefon (≤640 px): tabela mieści się bez przewijania w poziomie — stała
   szerokość kolumn planów, opis funkcji mniejszy, nagłówki planów w dwóch liniach. */
@media(max-width:640px){
  .plans-table{min-width:0;width:100%;table-layout:fixed}
  .plans-table thead th:first-child{width:auto}
  .plans-table thead th:not(:first-child){width:62px}
  .plans-table th,.plans-table td{padding:10px 6px;font-size:13px;overflow-wrap:break-word}
  .plans-table th[scope=row]{padding-left:10px;hyphens:auto}
  .plans-table thead th{font-size:13px;text-align:center;vertical-align:bottom}
  .plans-table thead th:first-child{text-align:left;padding-left:10px}
  .plans-table thead th{overflow-wrap:normal}
  .plans-table thead th:not(:first-child){padding-left:2px;padding-right:2px}
  .plans-table thead th small{display:block;font-size:10px;line-height:1.3;font-weight:500;letter-spacing:-.01em}
  .plans-table td{text-align:center}
  .plans-feature small{font-size:11px;line-height:1.45}
  .plans-table .yes .icon{width:18px;height:18px}
  .plans-table .group-row td{padding:12px 10px;text-align:left}
  .plans-value{font-size:12px}
}

/* --- rezerwacje: monthly/yearly toggle (site.js sets data-billing). Without JS
   the monthly amount is shown and the yearly line (.cena-razem) stays visible. */
.price-yearly{display:none!important}
[data-billing=yearly] .price-yearly{display:flex!important}
[data-billing=yearly] .price-monthly,[data-billing=yearly] .price-monthly-note{display:none!important}
.plan-features sup{font-size:10px;margin-left:2px;color:var(--muted)}
.plan-card--featured .plan-features sup{color:#a9bccb}
.plans-notes sup{font-weight:600}

/* G5: features that are not shipped yet ("wkrótce") */
.plan-features .is-soon{opacity:.85}
.plan-features .is-soon .icon{color:#8a97a3}
.plan-card--featured .plan-features .is-soon .icon{color:#c9d5e3}
.plans-table td.soon{text-align:center}
.plans-table td.soon .badge{font-size:10px;padding:2px 7px}
@media(max-width:640px){
  .plans-table td.soon{padding-left:2px;padding-right:2px}
  .plans-table td.soon .badge{font-size:9px;padding:1px 4px;letter-spacing:0;white-space:normal;line-height:1.25;justify-content:center;text-align:center}
}
