/* ============================================================================
   PDZ1 — ŠABLONA DETAILU ČLÁNKU (plně responzivní s clamp a tokeny) — V2
   ----------------------------------------------------------------------------
   FILOZOFIE:
   • Klient ve vizuálním editoru píše POUZE obsah (H2/H3, odstavce, odrážky,
     číslování, tučné, citace, obrázky). Shoptet to vykreslí do
     `.news-item-detail .text` jako čisté sémantické značky BEZ tříd.
   • Veškerý styl se proto váže na ELEMENTY (h2, p, ul…), ne na třídy.
   • Propojeno s globálními tokeny z PDZ1_global_V73.css (--radius-*, --content-*).
   ============================================================================ */

/* ---------------------------------------------------------------------------
   0) Lokální proměnné (snadné doladění na jednom místě linked na globál)
   --------------------------------------------------------------------------- */
body.type-post {
    --pdz-blue: #1A6B9B;
    --pdz-blue-dark: #114b6e;
    --pdz-green: #007A25;
    --pdz-ink: #1f2d3a;          /* základní text */
    --pdz-ink-soft: #54616e;     /* sekundární text */
    --pdz-line: #e1e8ee;         /* linky a oddělovače */
    --pdz-bg-soft: #f3f6f9;      /* jemné podbarvení (citace, boxy) */
    --pdz-article-width: 760px;  /* optimální šířka textového sloupce */
    --pdz-aside-width: 330px;    /* šířka postranního sloupce */
    --pdz-sticky-top: 120px;     /* odsazení sticky sidebaru */
}

/* ---------------------------------------------------------------------------
   1) Skrytí nativních prvků, které v našem layoutu nechceme
   --------------------------------------------------------------------------- */
body.type-post .breadcrumbs { /* drobečky řeší globální styl / JS */ }

/* ---------------------------------------------------------------------------
   2) RÁMEC STRÁNKY — BÍLÁ KARTA OBSAHU na modrém pozadí webu
   --------------------------------------------------------------------------- */
body.type-post #content.content,
body.type-post .content-inner {
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}

/* Vnější obal udržuje šířku a fluidní vertikální mezery */
body.type-post .content-inner {
    padding: clamp(30px, 4vw, 50px) 0 clamp(40px, 6vw, 80px) !important;
    box-sizing: border-box;
}

/* Samotná bílá karta — nyní bude mít perfektní prostor */
body.type-post .news-item-detail {
    max-width: var(--content-max-width, 1600px);
    margin: 0 auto;
    padding: clamp(32px, 5vw, 56px) clamp(20px, 5vw, 64px);
    box-sizing: border-box;
    background: #ffffff;
    border-radius: var(--radius-lg, 1.5rem);
    box-shadow: 0 24px 60px rgba(17, 75, 110, 0.18);
    font-family: var(--template-font, 'Montserrat', sans-serif);
    color: var(--pdz-ink);
}

/* Drobečky: fluidní vnitřní i vnější okraje, navázáno na --radius-md */
body.type-post .content-inner > .breadcrumbs,
body.type-post .breadcrumbs {
    max-width: var(--content-max-width, 1600px);
    margin: 0 auto clamp(12px, 2vw, 20px) !important;
    padding: clamp(10px, 1.5vw, 14px) clamp(16px, 2.5vw, 26px) !important;
    background: #ffffff;
    border-radius: var(--radius-md, 1rem);
    box-shadow: 0 10px 30px rgba(17, 75, 110, 0.10);
    font-size: clamp(1.1rem, 1.5vw, 1.25rem);
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
body.type-post .breadcrumbs,
body.type-post .breadcrumbs a,
body.type-post .breadcrumbs span {
    color: var(--pdz-ink-soft) !important;
}
body.type-post .breadcrumbs a {
    text-decoration: none !important;
    font-weight: 600;
}
body.type-post .breadcrumbs a:hover { color: var(--pdz-blue) !important; }

body.type-post .breadcrumbs [data-testid="breadcrumbsLastLevel"],
body.type-post .breadcrumbs [data-testid="breadcrumbsLastLevel"] span {
    color: var(--pdz-ink) !important;
    font-weight: 600;
}
body.type-post .breadcrumbs .navigation-home-icon { color: var(--pdz-ink-soft) !important; }
body.type-post .breadcrumbs .navigation-bullet { color: var(--pdz-line) !important; margin: 0 4px; }

/* ---------------------------------------------------------------------------
   3) HLAVIČKA ČLÁNKU — badge rubriky + H1 + perex
   --------------------------------------------------------------------------- */

/* Badge rubriky (fluidní text) */
body.type-post .pdz-article-eyebrow {
    display: inline-block;
    font-size: clamp(1rem, 1.5vw, 1.2rem);
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 6px 16px;
    border-radius: 999px;
    margin: 6px 0 clamp(12px, 2vw, 18px);
    background: rgba(26, 107, 155, 0.10);
    color: var(--pdz-blue);
}
body.type-post .pdz-article-eyebrow.is-legal {
    background: rgba(0, 122, 37, 0.12);
    color: var(--pdz-green);
}

/* Perex: fluidní písmo a spodní odsazení */
body.type-post .pdz-article-perex {
    font-size: clamp(1.15rem, 2vw, 1.35rem);
    line-height: 1.55;
    color: var(--pdz-ink-soft);
    font-weight: 500;
    max-width: 820px;
    margin: 0 0 clamp(20px, 4vw, 34px);
    padding: 0 0 clamp(20px, 4vw, 34px);
    border-bottom: 1px solid var(--pdz-line);
}
body.type-post .pdz-article-perex b,
body.type-post .pdz-article-perex strong { color: var(--pdz-ink); }

/* ---------------------------------------------------------------------------
   4) DVOUSLOUPCOVÝ LAYOUT — text vlevo, sticky postranní box vpravo
   --------------------------------------------------------------------------- */
body.type-post .pdz-article-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--pdz-aside-width);
    gap: clamp(24px, 4vw, 56px);
    align-items: start;
    margin-bottom: clamp(40px, 6vw, 70px);
}
body.type-post .pdz-article-main { min-width: 0; }
body.type-post .pdz-article-main .text { max-width: var(--pdz-article-width); }

body.type-post .pdz-article-aside {
    position: sticky;
    top: var(--pdz-sticky-top, 120px);
}

/* ---------------------------------------------------------------------------
   5) TYPOGRAFIE OBSAHU — elementově, fluidní velikost textu
   --------------------------------------------------------------------------- */
body.type-post .news-item-detail .text {
    font-size: clamp(1.1rem, 1.5vw, 1.25rem);
    line-height: 1.75;
    color: var(--pdz-ink);
}

/* Odstavce uvnitř detailu: přebíjí statický globál fluidním rozsahem pro mobily */
body.type-post .news-item-detail .text p {
    font-size: clamp(1.1rem, 1.5vw, 1.375rem) !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;
    margin: 0 0 1.35em !important;
}

body.type-post .news-item-detail .text b,
body.type-post .news-item-detail .text strong { font-weight: 700; color: var(--pdz-ink); }
body.type-post .news-item-detail .text i,
body.type-post .news-item-detail .text em { font-style: italic; }

/* Odkazy */
body.type-post .news-item-detail .text a {
    color: var(--pdz-blue);
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color .2s ease;
}
body.type-post .news-item-detail .text a:hover { color: var(--pdz-blue-dark); }

/* Odrážkový seznam — modré kosočtverce */
body.type-post .news-item-detail .text ul {
    list-style: none;
    margin: 0 0 1.5em;
    padding: 0;
}
body.type-post .news-item-detail .text ul > li {
    position: relative;
    padding-left: 1.9em;
    margin-bottom: 0.7em;
    font-size: clamp(1.1rem, 1.5vw, 1.375rem) !important;
}
body.type-post .news-item-detail .text ul > li::before {
    content: "";
    position: absolute;
    left: 0.15em;
    top: 0.62em;
    width: 9px;
    height: 9px;
    background: var(--pdz-blue);
    transform: rotate(45deg);
    border-radius: 1px;
}
body.type-post .news-item-detail .text li p { margin: 0 !important; }

/* Číslovaný seznam — modré čtverečky s číslem */
body.type-post .news-item-detail .text ol {
    list-style: none;
    counter-reset: pdz-ol;
    margin: 0 0 1.5em;
    padding: 0;
}
body.type-post .news-item-detail .text ol > li {
    position: relative;
    counter-increment: pdz-ol;
    padding-left: 2.4em;
    margin-bottom: 0.7em;
    font-size: clamp(1.1rem, 1.5vw, 1.375rem) !important;
}
body.type-post .news-item-detail .text ol > li::before {
    content: counter(pdz-ol);
    position: absolute;
    left: 0;
    top: 0.18em;
    width: 1.55em;
    height: 1.55em;
    background: rgba(26, 107, 155, 0.10);
    color: var(--pdz-blue);
    font-size: 0.8em;
    font-weight: 800;
    border-radius: var(--radius-sm, 0.5rem);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Citace / zvýrazněný blok — navázáno na --radius-md */
body.type-post .news-item-detail .text blockquote {
    margin: 1.8em 0;
    padding: clamp(16px, 3vw, 24px) clamp(20px, 3vw, 28px);
    background: var(--pdz-bg-soft);
    border-left: 4px solid var(--pdz-blue);
    border-radius: 0 var(--radius-md, 1rem) var(--radius-md, 1rem) 0;
    color: var(--pdz-ink);
}
body.type-post .news-item-detail .text blockquote p:last-child { margin-bottom: 0 !important; }
body.type-post .news-item-detail .text blockquote b,
body.type-post .news-item-detail .text blockquote strong { color: var(--pdz-blue); }

/* Obrázky — plně responzivní s globálním zaoblením */
body.type-post .news-item-detail .text img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: var(--radius-md, 1rem);
    margin: 1.8em auto;
    box-shadow: 0 12px 30px rgba(17, 75, 110, 0.10);
}
body.type-post .news-item-detail .text figure { margin: 1.8em 0; }
body.type-post .news-item-detail .text figure img { margin: 0 auto 0.6em; }
body.type-post .news-item-detail .text figcaption {
    text-align: center;
    font-size: 0.92rem;
    color: var(--pdz-ink-soft);
}

/* Tabulky */
body.type-post .news-item-detail .text table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.8em 0;
    font-size: 0.98rem;
}
body.type-post .news-item-detail .text th,
body.type-post .news-item-detail .text td {
    border: 1px solid var(--pdz-line);
    padding: 12px 14px;
    text-align: left;
}
body.type-post .news-item-detail .text th {
    background: var(--pdz-bg-soft);
    font-weight: 700;
}

/* ---------------------------------------------------------------------------
   6) POSTRANNÍ AUDIT-BOX (vkládá JS) — fluidní vnitřní okraje a texty
   --------------------------------------------------------------------------- */
body.type-post .pdz-audit-box {
    background: var(--pdz-bg-soft);
    border: 1px solid var(--pdz-line);
    border-radius: var(--radius-lg, 1.5rem);
    padding: clamp(20px, 3vw, 30px) clamp(16px, 3vw, 28px);
    box-shadow: 0 10px 26 rgba(17, 75, 110, 0.06);
}
body.type-post .pdz-audit-box .pdz-audit-icon {
    width: 52px;
    height: 52px;
    border-radius: var(--radius-md, 1rem);
    background: rgba(26, 107, 155, 0.10);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
}
body.type-post .pdz-audit-box .pdz-audit-icon svg { width: 26px; height: 26px; }
body.type-post .pdz-audit-box h3 {
    font-size: clamp(1.15rem, 2vw, 1.35rem) !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    margin: 0 0 12px !important;
}
body.type-post .pdz-audit-box p {
    font-size: clamp(0.95rem, 1.2vw, 1.05rem) !important;
    line-height: 1.6 !important;
    color: var(--pdz-ink-soft) !important;
    margin: 0 0 22px !important;
}
body.type-post .pdz-audit-box .btn {
    width: 100%;
    justify-content: center;
    text-align: center;
    padding: 14px 18px !important;
}
body.type-post .pdz-audit-box .pdz-audit-note {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 16px 0 0;
    font-size: 0.86rem;
    color: var(--pdz-ink-soft);
    font-weight: 600;
}
body.type-post .pdz-audit-box .pdz-audit-note svg { width: 16px; height: 16px; color: var(--pdz-green); flex-shrink: 0; }

/* ---------------------------------------------------------------------------
   7) ZÁVĚREČNÉ SHOWROOM CTA (vkládá JS) — horizontální modrý banner
   --------------------------------------------------------------------------- */
body.type-post .pdz-article-cta {
    background: linear-gradient(135deg, var(--pdz-blue) 0%, var(--pdz-blue-dark) 100%);
    border-radius: var(--radius-lg, 1.5rem);
    padding: clamp(32px, 5vw, 48px) clamp(24px, 5vw, 56px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(24px, 4vw, 40px);
    margin: 8px 0 0;
    position: relative;
    overflow: hidden;
}
body.type-post .pdz-article-cta::after {
    content: "";
    position: absolute;
    inset: 0 0 0 auto;
    width: 40%;
    background: radial-gradient(circle at right center, rgba(255,255,255,0.07) 0%, transparent 60%);
    pointer-events: none;
}
body.type-post .pdz-article-cta .pdz-cta-text { position: relative; z-index: 2; max-width: 640px; }
body.type-post .pdz-article-cta .pdz-cta-eyebrow {
    display: inline-block;
    font-size: clamp(1rem, 1.5vw, 1.2rem) !important;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.7) !important;
    margin-bottom: 12px;
}
body.type-post .pdz-article-cta h2 {
    color: #fff !important;
    font-size: clamp(1.4rem, 3vw, 2rem) !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    margin: 0 !important;
}
body.type-post .pdz-article-cta .pdz-cta-action { position: relative; z-index: 2; flex-shrink: 0; }
body.type-post .pdz-article-cta .btn {
    white-space: nowrap;
    padding: 16px 34px !important;
    box-shadow: 0 10px 25px rgba(0, 122, 37, 0.3);
}

/* ---------------------------------------------------------------------------
   8) SOULAD S .theme-light & RESET BARREV
   --------------------------------------------------------------------------- */
body.type-post.theme-light .pdz-article-eyebrow,
body.type-post .theme-light .pdz-article-eyebrow,
body.type-post .pdz-article-eyebrow {
    color: var(--pdz-blue) !important;
}
body.type-post.theme-light .pdz-article-eyebrow.is-legal,
body.type-post .theme-light .pdz-article-eyebrow.is-legal,
body.type-post .pdz-article-eyebrow.is-legal {
    color: var(--pdz-green) !important;
}

body.type-post .theme-light .pdz-article-cta h2,
body.type-post .pdz-article-cta h2 { color: #ffffff !important; }
body.type-post .theme-light .pdz-article-cta .pdz-cta-eyebrow,
body.type-post .pdz-article-cta .pdz-cta-eyebrow { color: rgba(255,255,255,0.7) !important; }
body.type-post .theme-light .pdz-article-cta p,
body.type-post .theme-light .pdz-article-cta span { color: rgba(255,255,255,0.92) !important; }

body.type-post .theme-light .pdz-article-perex,
body.type-post .pdz-article-perex { color: var(--pdz-ink-soft) !important; }
body.type-post .theme-light .pdz-article-perex b,
body.type-post .theme-light .pdz-article-perex strong { color: var(--pdz-ink) !important; }

/* ---------------------------------------------------------------------------
   9) STRUKTURÁLNÍ MEDIA QUERIES (Pouze pro změny rozložení elementů)
   --------------------------------------------------------------------------- */
@media (max-width: 991px) {
    body.type-post .pdz-article-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    body.type-post .pdz-article-aside { 
        position: static; 
        top: auto; 
    }
    body.type-post .pdz-article-main .text { 
        max-width: none; 
    }
    body.type-post .pdz-article-cta {
        flex-direction: column;
        text-align: center;
        padding: clamp(30px, 5vw, 40px) 24px;
        gap: 28px;
    }
    body.type-post .pdz-article-cta .btn { 
        width: 100%; 
    }
}

@media (max-width: 768px) {
    /* Spodní padding karty upraven pro mobile, zbytek řeší clamp() */
    body.type-post .news-item-detail { 
        padding-bottom: 24px; 
    }
}