/* /pl/plany-licytacyjne (28.10.2026). Bazą jest procedura-zakupu.css (zmienne, układ
   splitted_box, nawigacja, karta .wrapper, kafelki .plan-card). Tu tylko to, czego tamta
   strona nie ma: wszystkie sekcje widoczne naraz (bez stronicowania), tabela porównania,
   lista kroków, pytania w stylu /pl/faq i przyciski CTA. */

.navigation a span:first-child { flex: 0 0 24px; }

.pl-section { scroll-margin-top: 20px; }
.pl-section + .pl-section { margin-top: 60px; }

.content h1 {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.35;
    color: var(--color-text-dark);
    text-align: center;
    margin-bottom: 18px;
}

.pl-lead {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 10px auto;
    line-height: 1.7;
}

.content p, .content li { line-height: 1.7; }
.content ul { margin-bottom: 20px; }
.content li { color: var(--color-text-main); margin-bottom: 8px; }
.content strong { color: var(--color-text-dark); font-weight: 600; }

/* Kafelki: na tej stronie są w sekcji, nie w kroku procedury - mniejszy odstęp od góry. */
.plans-grid { margin-top: 10px; }
/* Nazwa planu jest tu nagłówkiem h2 (struktura dla wyszukiwarek), ale wygląda jak .plan-title
   z procedury - kasujemy styl .content h2 (ramka, flex, duże odstępy). */
.content h2.plan-title {
    display: block;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 4px 0;
    padding: 0;
    border: none;
}
.plan-subtitle { min-height: 0; }

/* Tabela porównania planów */
.pl-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: 8px;
    margin-bottom: 20px;
    -webkit-overflow-scrolling: touch;
}
.pl-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    color: var(--color-text-main);
    min-width: 560px;
}
.pl-table caption {
    caption-side: bottom;
    text-align: left;
    font-size: 12px;
    color: var(--color-text-muted);
    padding: 10px 16px;
    border-top: 1px solid var(--color-border);
}
.pl-table th, .pl-table td {
    padding: 13px 16px;
    text-align: center;
    border-bottom: 1px solid var(--color-border);
}
.pl-table tbody tr:last-child th, .pl-table tbody tr:last-child td { border-bottom: none; }
.pl-table thead th {
    background: #f6fbff;
    color: var(--color-text-dark);
    font-weight: 600;
}
.pl-table tbody th {
    text-align: left;
    font-weight: 500;
    color: var(--color-text-dark);
    background: #fafbfc;
    width: 34%;
}
.pl-table .theme-basic { color: #16a34a; }
.pl-table .theme-pro { color: #4f46e5; }
.pl-table .theme-platinum { color: #9333ea; }

/* Kroki: jak zacząć */
.pl-steps {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
    counter-reset: plstep;
}
.pl-steps li {
    position: relative;
    counter-increment: plstep;
    padding: 0 0 22px 48px;
    margin: 0;
    font-size: 14px;
}
.pl-steps li::before {
    content: counter(plstep);
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 13px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pl-steps li::after {
    content: '';
    position: absolute;
    left: 14px;
    top: 34px;
    bottom: 4px;
    width: 2px;
    background: var(--color-border);
}
.pl-steps li:last-child { padding-bottom: 0; }
.pl-steps li:last-child::after { display: none; }
.pl-steps h3 {
    font-size: 15px;
    font-weight: 600;
    color: var(--color-text-dark);
    margin: 4px 0 4px 0;
}
.pl-steps p { margin-bottom: 0; }

/* Pytania - ten sam wygląd co .faq-item na /pl/faq (faq.css) */
.faq-item {
    background: #ffffff;
    border: 1px solid var(--color-border);
    border-radius: 8px;
    margin-bottom: 12px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
    transition: box-shadow 0.2s ease;
    overflow: hidden;
}
.faq-item:hover { box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06); }
.faq-item summary {
    padding: 18px 24px;
    cursor: pointer;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--color-text-dark);
    background-color: var(--color-white);
    transition: background-color 0.2s ease, color 0.2s ease;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary h3 {
    font-size: 14px;
    font-weight: 400;
    margin: 0;
    padding-right: 20px;
    line-height: 1.5;
}
.faq-item summary::after {
    content: '';
    flex-shrink: 0;
    width: 13px;
    height: 13px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%238e9aab'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 4v16m8-8H4'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    transition: transform 0.3s ease;
}
.faq-item[open] summary {
    background-color: var(--color-primary-bg);
    color: var(--color-primary);
    border-bottom: 1px solid var(--color-border);
}
.faq-item[open] summary::after {
    transform: rotate(135deg);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23188fff'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 4v16m8-8H4'/%3E%3C/svg%3E");
}
.faq-answer { padding: 20px 24px; background: var(--color-white); }
.faq-answer p { margin-bottom: 14px; }
.faq-answer p:last-child { margin-bottom: 0; }

/* CTA na końcu */
.pl-cta {
    text-align: center;
    background: var(--color-primary-bg);
    border-radius: 8px;
    padding: 34px 24px;
    margin-top: 60px;
}
.pl-cta h2 {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 10px;
}
.pl-cta p { margin-bottom: 22px; }
.pl-cta-buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
}
.content a.btn, .content a.btn:hover {
    display: inline-block;
    color: var(--color-white);
    text-decoration: none;
}
.content a.btn-outline {
    background: var(--color-white);
    color: var(--color-primary);
    box-shadow: inset 0 0 0 1px var(--color-primary);
}
.content a.btn-outline:hover { background: var(--color-white); color: var(--color-primary); }

@media (max-width: 992px) {
    /* Jak na /pl/faq: nawigacja jako przewijany poziomo pasek nad treścią. */
    /* align-items: stretch - przy flex-start karta brała naturalną szerokość tabeli (560 px)
       i rozpychała stronę do ~600 px; tabela przewija się wtedy w .pl-table-wrap. */
    .splitted_box { gap: 15px; padding: 0 15px; align-items: stretch; }
    .wrapper { width: 100%; }
    .navigation {
        display: block;
        width: 100%;
        flex: none;
        position: static;
        max-height: none;
        background: transparent;
        box-shadow: none;
    }
    .nav-group {
        display: flex;
        flex-direction: row;
        overflow-x: auto;
        gap: 8px;
        padding: 2px 0 6px 0;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }
    .nav-group::-webkit-scrollbar { display: none; }
    .nav-section-title { display: none; }
    .navigation a {
        flex: 0 0 auto;
        padding: 9px 14px;
        border: 1px solid var(--color-border);
        border-radius: 99px;
        background: var(--color-white);
        white-space: nowrap;
    }
    .navigation a::after { display: none; }
    .navigation a span:first-child { flex: 0 0 20px; height: 20px; margin-right: 8px; font-size: 10px; }
    .navigation a.active { border-left-color: var(--color-primary); border-color: var(--color-primary); }
    .content h1 { font-size: 18px; }
    .pl-section + .pl-section { margin-top: 44px; }
    .pl-steps li { font-size: 13px; padding-left: 42px; }
    .pl-steps h3 { font-size: 14px; }
    .faq-item summary { padding: 15px 16px; }
    .faq-item summary h3 { font-size: 13px; }
    .faq-answer { padding: 16px; }
    .pl-table { font-size: 12px; min-width: 0; }
    .pl-table th, .pl-table td { padding: 10px 6px; }
    .pl-table tbody th { width: 31%; padding-left: 10px; }
    .pl-table caption { padding: 10px; }
    .pl-cta { padding: 26px 16px; margin-top: 44px; }
}
