/* =========================================================
   CONTENT — KNOWLEDGE LAYOUT
   L1 / L2 / L3 GUIDELINES
   ========================================================= */

/* ===============================
   TYPOGRAPHIC BASE
   =============================== */

#content {
    font-size: 15px;
}

.content-wrapper {
    --block-gap: 1.4rem;
}

/* ===============================
   SECTIONS
   =============================== */

.content-section + .content-section {
    margin-top: 2.5rem;
}

.section-heading {
    font-size: 1.25rem;
    margin-bottom: 1rem;
    color: var(--text-heading);
}

/* ===============================
   BLOCK RHYTHM
   =============================== */

.content-block + .content-block {
    margin-top: var(--block-gap);
}

/* ===============================
   PARAGRAPH
   =============================== */

.content-block--paragraph p {
    max-width: 70ch;
    line-height: 1.65;
    color: var(--text-main);
}

/* usuń domyślne marginesy, kontrola rytmu */
.content-block p {
    margin: 0;
}

/* ===============================
   LISTS
   =============================== */

.content-block--list ul {
    padding-left: 1.2rem;
    margin: 0;
}

.content-block--list li {
    line-height: 1.55;
    margin-bottom: 0.4rem;
}

    .content-block--list li::marker {
        color: var(--accent);
    }

/* ===============================
   DEFINITION / NOTE
   =============================== */

.content-block--definition,
.content-block--note {
    background: var(--surface-muted);
    border-left: 4px solid var(--accent);
    padding: 0.9rem 1rem;
    border-radius: 4px;
}

    /* pierwsza linia = sygnał semantyczny */
    .content-block--definition p:first-child,
    .content-block--note p:first-child {
        font-weight: 600;
    }

/* ===============================
   WARNING
   =============================== */

.content-block--warning {
    background: var(--surface-muted);
    border-left: 4px solid var(--error);
    padding: 0.9rem 1rem;
    border-radius: 4px;
}

    .content-block--warning p:first-child {
        font-weight: 600;
    }

/* ===============================
   FORMULA
   =============================== */

.content-block--formula {
    background: var(--surface);
    border: 1px solid var(--border);
    padding: 0.8rem 1rem;
    border-radius: 4px;
    overflow-x: auto;
}

    /* wzór musi się czytać jak wzór */
    .content-block--formula .katex {
        font-size: 1.05rem;
    }

/* ===============================
   TABLES
   =============================== */

.content-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}

    .content-table th,
    .content-table td {
        padding: 0.5rem 0.6rem;
        border: 1px solid var(--border);
    }

    .content-table th {
        background: var(--surface-muted);
        font-weight: 600;
        text-align: left;
    }

/* zabezpieczenie na wąskie ekrany */
.content-table-wrapper {
    overflow-x: auto;
}

/* ===============================
   IMAGES / DIAGRAMS
   =============================== */

.image-block {
    margin: 2.5rem 0;
    text-align: center;
}

    .image-block img {
        max-width: 100%;
        border-radius: 6px;
        cursor: zoom-in;
    }

    .image-block figcaption {
        margin-top: 0.5rem;
        font-size: 0.85rem;
        color: var(--text-muted);
    }
    .image-block svg {
        max-width: 100%;
        height: auto;
        display: block;
        margin: 0 auto;
    }


/* ===============================
   L3 GUIDELINES
   =============================== */

.l3-guidelines {
    margin-top: 3rem;
}

    .l3-guidelines section + section {
        margin-top: 2rem;
    }
