/* ==========================================================================
   Stasacucine — legal.css
   Podstrony prawne (polityka prywatności, cookies, regulamin).
   Wspólne tokeny z css/base.css.
   ========================================================================== */
@layer components {
    .legal-page {
        min-height: 100dvh;
        padding: calc(var(--header-h) + 3rem) 0 4rem;
        background: linear-gradient(135deg, var(--ink-900), var(--ink-800) 50%, var(--ink-900));
    }
    .legal-container { width: min(100% - 2 * var(--gutter), 56rem); margin-inline: auto; }
    .legal-content {
        padding: clamp(1.5rem, 5vw, 3.75rem);
        border: 1px solid var(--line);
        border-radius: var(--r-xl);
        background: rgb(255 255 255 / 0.04);
        backdrop-filter: blur(10px);
        box-shadow: var(--shadow-2);
    }
    .legal-content h1 { font-size: clamp(1.75rem, 1.3rem + 2vw, 2.5rem); font-weight: 700; text-align: center; }
    .legal-content .update-date { margin: 0.75rem 0 3rem; text-align: center; font-size: var(--fs-sm); color: var(--text-3); }
    .legal-content h2 { margin: 3rem 0 1rem; font-size: clamp(1.3rem, 1.1rem + 1vw, 1.8rem); color: var(--accent-hi); }
    .legal-content h3 { margin: 2rem 0 0.75rem; font-size: 1.3rem; color: var(--accent-hi); }
    .legal-content p, .legal-content li { color: var(--text-2); font-size: 1.05rem; line-height: 1.8; }
    .legal-content p { margin-bottom: 1.2rem; }
    .legal-content ul, .legal-content ol { margin: 0 0 1.5rem 1.6rem; }
    .legal-content li { margin-bottom: 0.6rem; }
    .legal-content li::marker { color: var(--accent); }
    .legal-content strong { color: var(--text); }
    .legal-content a:not(.btn) { color: var(--accent-hi); text-decoration-color: var(--accent-line); }
    .legal-content a:not(.btn):hover { color: var(--text); text-decoration-color: currentColor; }

    .contact-box, .highlight-box, .cookie-type-box {
        margin: 1.75rem 0;
        padding: 1.5rem;
        border: 1px solid var(--accent-line);
        border-left-width: 4px;
        border-radius: var(--r-md);
        background: var(--accent-soft);
    }
    .contact-box p:last-child, .highlight-box p:last-child, .cookie-type-box p:last-child { margin-bottom: 0; }
    .contact-box h3, .cookie-type-box h4, .highlight-box h3 { margin-top: 0; color: var(--accent-hi); font-size: 1.2rem; }

    .cookie-table { width: 100%; margin: 1.5rem 0; overflow: hidden; border-radius: var(--r-md); background: rgb(255 255 255 / 0.03); font-size: var(--fs-sm); }
    .cookie-table th { padding: 1rem; background: var(--accent-soft); color: var(--accent-hi); text-align: left; font-weight: 600; }
    .cookie-table td { padding: 1rem; border-top: 1px solid var(--line); color: var(--text-2); vertical-align: top; }
    @media (max-width: 639.98px) { .cookie-table { display: block; overflow-x: auto; } }

    .back-home { margin-top: 3rem; text-align: center; }
}
