/*
Theme Name:   Kadence Child
Template:     kadence
Version:      1.0.0
Text Domain:  kadence-child
*/

/* =========================================================================
   ProudPuzzle – child theme styles
   Redesign „Tichá galerie". Štíhlé, ručně psané CSS. Košík, pokladnu,
   header engine a výkon dědíme z Kadence; rodičovský Kadence se needituje.

   Krok 0 – Základ: design tokeny + úklid. Odstraněny rozbité bloky,
   poškozený „Načítání Google Fonts" komentář a duplicitní font-family
   !important hacky. Chování a vzhled zachovány – jen čistá, platná báze.
   ========================================================================= */

/* ---- Design tokeny -----------------------------------------------------
   Brandové barvy se tu NEPÍŠOU ručně. Táhnou se z Kadence global palette
   (Přizpůsobit → Barvy), kterou Kadence vypisuje jako --global-paletteN
   inline do každé stránky. Změna barvy v Customizeru se proto projeví
   okamžitě a bez nasazení tohoto souboru.

   NEPŘIDÁVEJ sem hex hodnotu brandové barvy. Přesně tím vznikl drift,
   kvůli kterému tenhle soubor v září 2026 držel fialovou ještě dlouho
   poté, co paleta byla červená.
   ------------------------------------------------------------------------ */
:root{
  /* Z palety – mění se v Customizeru, ne tady */
  --pp-brand:      var(--global-palette1);  /* akcent / brand */
  --pp-brand-alt:  var(--global-palette2);  /* hover akcentu */
  --pp-ink:        var(--global-palette3);  /* nadpisy */
  --pp-ink-soft:   var(--global-palette5);  /* běžný text */
  --pp-paper-warm: var(--global-palette7);
  --pp-paper:      var(--global-palette8);  /* off-white plátno */
  --pp-complement: var(--global-palette10); /* komplement */

  /* Odvozené z palety – průhledné varianty, které paleta jako slot nemá */
  --pp-focus-ring: 0 0 0 3px color-mix(in srgb, var(--global-palette1) 35%, transparent);

  /* ZÁMĚRNĚ mimo paletu – nemají v ní protějšek a nejsou brandové.
     Když je budeš chtít navázat, je to rozhodnutí, ne úklid. */
  --pp-tab-line:      #293a35; /* linka tabů na detailu produktu */
  --pp-green:         #3d8f5f; /* stav „skladem" */
  --pp-field-border:  #d9d4cc; /* neutrální okraj polí */
  --pp-cream-soft:    #fef9f2; /* pole pokladny (2026-10-05, dřív #fdeed6) */
  --pp-cream-border:  #e0d0b8;

  --pp-radius:        14px;
  --pp-radius-card:   15px;
  --pp-shadow:        0 10px 18px rgba(0,0,0,.08);
  --pp-transition:    .2s ease;

  --pp-btn-radius:    10px;
  --pp-field-radius:  8px;

  /* zpětná kompatibilita s původními wbui proměnnými */
  --wbui-primary: var(--pp-brand);
  --wbui-hover:   var(--pp-brand-alt);
  --wbui-radius:  var(--pp-radius);
  --wbui-shadow:  var(--pp-shadow);
}

/* ---- Utility ----------------------------------------------------------- */
.underline{
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

/* ---- Zaoblení produktových obrázků/karet ------------------------------- */
.post-type-archive-product .product,
.wp-post-image,
.content-bg .product.entry.loop-entry,
.woocommerce-page .content-bg .product.entry.loop-entry,
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product .entry-content-wrap{
  border-radius: var(--pp-radius-card);
}

/* ---- Detail produktu: taby --------------------------------------------- */
.single-product div.product .woocommerce-tabs ul.tabs{
  border-bottom: 1px solid var(--pp-tab-line);
  padding-left: 0;
}
.single-product div.product .woocommerce-tabs ul.tabs li{
  border: none;
  background-color: transparent;
  font-size: 20px;
  line-height: 23px;
}
.single-product div.product .woocommerce-tabs ul.tabs li.active{
  border-bottom: 3px solid var(--pp-tab-line);
  margin: 0;
}

/* ---- Formulářová pole: sjednocený vzhled ------------------------------- */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="date"],
textarea,
select,
.select2-container .select2-selection{
  border-radius: var(--pp-field-radius) !important;
  border: 1px solid var(--pp-field-border);
  background-color: #fff;
  transition: border-color var(--pp-transition), box-shadow var(--pp-transition);
}

/* ---- Tlačítka (wbui) --------------------------------------------------- */
.wbui-btn-wrap{ margin: 14px 0; }
.wbui-btn{
  display: inline-block;
  padding: 14px 26px;
  border-radius: var(--wbui-radius);
  font-weight: 600;
  text-decoration: none;
  line-height: 1;
  transition: all var(--pp-transition);
}

/* Sekundární tlačítko
   Rámeček záměrně z palette10 (Accent - Complement), ne z brandové barvy —
   rozhodnutí uživatele. palette10 je oranžová (#f39b12), obrys má na světlém
   plátně kontrast ~2 : 1 — záměr, ne chyba, neopravuj to zpět na --pp-brand.
   Hover (rozhodnutí uživatele 2026-09-30, konflikt K1): pozadí palette10
   na 8 % a obrys palette10, stejně jako tlačítka Kadence v Customizeru
   (buttons_background.hover, buttons_border_colors.hover). Vyjádřeno přes
   color-mix, ne opsaným hexem, aby to následovalo paletu. */
.wbui-btn.wbui-btn-secondary{
  background-color: transparent !important;
  color: var(--pp-brand) !important;
  border: 1px solid var(--pp-complement) !important;
  font-family: 'Darker Grotesque', sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  border-radius: 5px !important;
}
.wbui-btn.wbui-btn-secondary:hover{
  background-color: color-mix(in srgb, var(--global-palette10) 8%, transparent) !important;
  color: var(--pp-brand-alt) !important;
  border-color: var(--pp-complement) !important;
}

/* ---- Výpis produktů: typografie ---------------------------------------- */
.woocommerce-loop-product__title{
  font-family: 'Darker Grotesque', sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}
/* Cena v katalogu: řídí Customizer (product_archive_price_font). */

/* Název je odkaz – zabarvení do brandové barvy při najetí na kartu */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  transition: color var(--pp-transition);
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title,
.woocommerce ul.products li.product a:hover .woocommerce-loop-product__title{
  color: var(--pp-brand) !important;
}

/* ---- Výpis produktů: sekundární tlačítko „Více o produktu" -------------- */
.products .product .wbui-btn-wrap{ margin: 10px 0 12px; }
.products .product .wbui-btn-secondary{
  display: block;
  width: 100%;
  text-align: center;
  background: transparent;
  color: var(--pp-brand);
  border: 1px solid var(--pp-complement); /* viz poznámka u .wbui-btn-secondary */
  border-radius: 15px 15px 6px 6px;
  padding: 10px 20px;
  box-shadow: none;
}
.products .product .wbui-btn-secondary:hover{
  background: var(--pp-brand);
  color: #fff;
  border-radius: 15px 15px 6px 6px;
  transform: translateY(-1px);
}

/* ---- Detail produktu: ergonomie nákupního bloku ------------------------ */
.single-product .cart{ margin-top: 14px; }
.single-product .cart .quantity{ margin-right: 10px; }

@media (max-width:768px){
  .wbui-btn{ width: 100%; text-align: center; }
  .single-product .cart{ display: block; }
  .single-product .cart .quantity{ margin: 0 0 10px; }
  .single-product .single_add_to_cart_button{ width: 100%; }
}

/* ---- Košík: skrýt Packeta pickup tlačítko ------------------------------ */
.woocommerce-cart .ftx_shm_packeta_empty,
.woocommerce-cart .ftx_shm_packeta_dialog{ display: none !important; }

/* ---- Pokladna: skrýt „Máte kupón?" ------------------------------------- */
.woocommerce-checkout .woocommerce-form-coupon-toggle{ display: none !important; }

/* ---- Detail produktu: mezera nad „Přidat do košíku" -------------------- */
.woocommerce div.product form.cart .single_add_to_cart_button{ margin-top: 10px !important; }

/* ---- Košík: cross-sell na mobilu --------------------------------------- */
@media (max-width:768px){
  .woocommerce-cart h2.woocommerce-loop-product__title{
    font-size: 14px !important;
    line-height: 1.3;
    word-break: normal !important;
  }
  .woocommerce-cart .product-action-wrap .button{
    padding: 5px 2px !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    min-height: auto !important;
  }
}

/* ---- Pokladna: platební metody ----------------------------------------- */
li.payment_method_wc_gopay_gateway > label img{ max-width: 125px !important; }

#order_review .wc_payment_method label img{
  max-height: 50px !important;
  width: auto !important;
  vertical-align: middle;
  margin-left: 10px;
}
#order_review .wc_payment_method label{
  background-color: transparent !important;
  border: 1px solid #e5e5e5 !important;
  color: #422c13;
  transition: all .3s ease;
}
#order_review .wc_payment_method input:checked + label{
  background-color: var(--pp-cream-soft) !important;
  border: 1px solid #dcb046 !important;
  border-left-width: 5px !important;
}
#order_review .wc_payment_method{
  background: transparent !important;
  margin-bottom: 10px;
  list-style: none !important;
}

/* ---- Pokladna: pole formuláře ------------------------------------------ */
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea{
  background-color: var(--pp-cream-soft) !important;
  border-color: var(--pp-cream-border) !important;
}
.woocommerce-checkout .select2-container .select2-selection{
  background-color: var(--pp-cream-soft) !important;
}
.woocommerce-terms-and-conditions-checkbox-text{
  font-size: 18px !important;
  line-height: 1.4;
}

/* ---- Detail produktu: blok množství + „Přidat do košíku" --------------- */
.woocommerce div.product form.cart{
  display: flex;
  align-items: stretch;
  gap: 10px;
  flex-wrap: nowrap;
}
.woocommerce div.product form.cart .quantity{
  float: none !important;
  margin: 0 !important;
  display: flex;
}
.woocommerce div.product form.cart .quantity input.input-text.qty{
  border-radius: var(--pp-radius) !important;
  border: 2px solid var(--pp-cream-soft);
  background-color: #fff;
  color: var(--pp-tab-line);
  font-weight: 700;
  width: 60px !important;
  padding: 0;
  text-align: center;
  min-height: 50px;
}
.woocommerce div.product form.cart .quantity input.input-text.qty:focus{
  border-color: var(--pp-brand);
  outline: none;
}
.woocommerce div.product form.cart .single_add_to_cart_button{
  margin-top: 0 !important;
  height: auto !important;
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ---- Detail produktu: „Skladem" ---------------------------------------- */
.woocommerce div.product .stock{ color: var(--pp-green); }

/* ---- Vyhlazení písma --------------------------------------------------- */
html{
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* =========================================================================
   Krok 1 – Globální typografie & barvy
   Písma, velikosti, výšky řádků, prostrkání a barvy textu a nadpisů řídí
   Customizer (Kadence: Typografie, Barvy). Tady se NEPŘEBÍJEJÍ – design
   system = Customizer (DESIGN-SYSTEM v1.5). Proměnné --global-body-font-family
   a --global-heading-font-family vypisuje Kadence z Customizeru.
   Zůstávají jen věci, které Customizer nastavit neumí.
   ========================================================================= */

/* Tělo a UI prvky → písmo těla z Customizeru (pro prvky, kam ho Kadence sám nedává) */
body,
button,
input,
select,
optgroup,
textarea,
.header-navigation .menu > li > a,
.primary-menu-container .menu li a,
.button,
.wp-block-button__link,
.woocommerce a.button,
.single_add_to_cart_button{
  font-family: var(--global-body-font-family);
}

/* Nadpisy a značka → písmo nadpisů z Customizeru */
h1, h2, h3, h4, h5, h6,
.entry-title,
.site-title,
.site-branding .site-title a{
  font-family: var(--global-heading-font-family);
}

/* ---- Odkazy v obsahu ---------------------------------------------------
   Barvu a hover řídí Customizer (link_color) – proměnné vypisuje Kadence.
   Pravidlo s barvou tu ale MUSÍ zůstat: zamrzlé kritické CSS LiteSpeedu
   (litespeed-ccss) má pro tenhle selektor starou fialovou var(--pp-purple)
   a bez přebití by se na detailu produktu ukázala (změřeno 2026-10-05). */
.entry-content a:not(.button):not(.wp-block-button__link):not(.wbui-btn){
  color: var(--global-palette-highlight);
  text-underline-offset: .15em;
  text-decoration-thickness: 1px;
  transition: color var(--pp-transition);
}
.entry-content a:not(.button):not(.wp-block-button__link):not(.wbui-btn):hover{
  color: var(--global-palette-highlight-alt);
}

/* ---- Výběr textu ------------------------------------------------------- */
::selection{
  background: var(--pp-complement);
  color: var(--pp-ink);
}

/* =========================================================================
   Krok 2 – Tlačítka & formulářové prvky
   Jeden konzistentní systém: plná brandová pro primární CTA, outline pro
   sekundární; sjednocený radius, sazba, hover a přístupné focus stavy.
   ========================================================================= */

/* ---- Sjednocený základ tlačítek ---------------------------------------- */
.button,
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
input[type="submit"],
.wbui-btn,
.single_add_to_cart_button{
  /* zaoblení řídí Customizer (buttons_border_radius) */
  font-family: var(--global-body-font-family);
  font-weight: 700;
  line-height: 1.1;
  transition: background-color var(--pp-transition),
              color var(--pp-transition),
              border-color var(--pp-transition),
              transform var(--pp-transition),
              box-shadow var(--pp-transition);
}

/* ---- Primární CTA: plná brandová --------------------------------------- */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.single_add_to_cart_button,
.wc-proceed-to-checkout .checkout-button,
#place_order{
  background-color: var(--pp-brand) !important;
  color: var(--global-palette8) !important;
  border: 1px solid var(--pp-brand) !important;
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.single_add_to_cart_button:hover,
.wc-proceed-to-checkout .checkout-button:hover,
#place_order:hover{
  background-color: var(--pp-brand-alt) !important;
  border-color: var(--pp-brand-alt) !important;
  color: var(--global-palette8) !important;
  transform: translateY(-1px);
  box-shadow: var(--pp-shadow);
}

/* ---- Sekundární tlačítko: outline z komplementu, sjednocený radius ----- */
.wbui-btn.wbui-btn-secondary,
.products .product .wbui-btn-secondary,
.products .product .wbui-btn-secondary:hover{
  border-radius: var(--pp-btn-radius) !important;
}

/* ---- Přístupné focus stavy (klávesnice) --------------------------------
   `summary` (otázky FAQ v core/details) drží stejný 2px obrys jako odkazy;
   bez toho má jen výchozí tenký obrys prohlížeče (změřeno 2026-09-30, D-08). */
a:focus-visible,
summary:focus-visible,
button:focus-visible,
.button:focus-visible,
.wp-block-button__link:focus-visible,
.single_add_to_cart_button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline: 2px solid var(--pp-brand);
  outline-offset: 2px;
  box-shadow: var(--pp-focus-ring);
}

/* Pole: zvýraznění okraje při focusu */
input:focus-visible,
textarea:focus-visible,
select:focus-visible{
  border-color: var(--pp-brand) !important;
}

/* =========================================================================
   Krok 5 – Detail produktu
   Jemné sjednocení nákupního boxu a tabů: tenké linie, brandový akcent.
   ========================================================================= */
:root{ --pp-hairline: color-mix(in srgb, var(--global-palette3) 12%, transparent); } /* vlasová linka */

/* Nákupní box: množství + tlačítko – jemnější radius, tenká 1px linka */
.woocommerce div.product form.cart .quantity input.input-text.qty{
  border-radius: var(--pp-btn-radius) !important;
  border: 1px solid var(--pp-field-border);
}

/* Taby: vlasová linka místo silné, u aktivního tenký brandový akcent */
.single-product div.product .woocommerce-tabs ul.tabs{
  border-bottom: 1px solid var(--pp-hairline);
}
.single-product div.product .woocommerce-tabs ul.tabs li.active{
  border-bottom: 2px solid var(--pp-brand);
}

/* =========================================================================
   Krok 4 – Výpis produktů: úhledná akční oblast karty
   Hierarchie zachována: „Přidat do košíku" primární, „Více o produktu" sekundární.
   Jen klidné rozestupy, jednotná šířka a radius dvojice akcí.
   ========================================================================= */
.products .product .product-action-wrap{
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 12px;
}
.products .product .product-action-wrap .wbui-btn-wrap-loop{
  margin: 0;
}
.products .product .add_to_cart_button{
  display: block;
  width: 100%;
  text-align: center;
  /* zaoblení řídí Customizer (product_archive_button_radius) */
}

/* =========================================================================
   Krok 6 – Header & footer: jemné vlasové linky pro strukturu
   ========================================================================= */

/* Hlavička: jemná spodní linka – jen na ne-transparentní hlavičce
   (na heru/home s transparentní hlavičkou se linka nekreslí). */
.non-transparent-header .site-header-inner-wrap{
  border-bottom: 1px solid var(--pp-hairline);
}

/* Patička: od obsahu ji odděluje vlastní tmavé pozadí z Customizeru
   (footer_wrap_background, 2026-10-15), vlasová linka už není potřeba.

   Boční okraj patičky na telefonu: Kadence ho bere z globálního
   content_edge_spacing (0,3 rem ≈ 5 px) a v Customizeru nejde nastavit
   jen pro patičku – zvětšení globální hodnoty by rozhodilo mřížku produktů.
   24 px = okraj hlavičky (header_main_padding mobile). 719 px je hranice,
   kterou pro patičku používá sama Kadence (footer.min.css). */
@media (max-width: 719px){
  #colophon .site-container{
    padding-left: 24px;
    padding-right: 24px;
  }
  /* Spodní pruh (copyright + právní odkazy) je na telefonu pod sebou, ale Kadence
     neruší 30px odsazení, které dává druhé položce v řádku (.ft-ro-dir-row). */
  #colophon .ft-ro-m-dir-column .footer-section-inner-items-2 .footer-widget-area{
    margin-left: 0;
  }
}

/* Mezera mezi obsahem a patičkou. Customizer má content_spacing = 0 (desktop
   i mobil), aby hero sekce pod průhlednou hlavičkou začínaly hned nahoře –
   jenže Kadence tou jednou hodnotou dává okraj .content-area nahoře i dole,
   a od vínové patičky (2026-10-15) je nulový spodní okraj vidět: obsah
   katalogu i karta produktu leží přímo na hraně patičky. Tady jen spodek.
   Stránky, které si spodní okraj vypnuly v nastavení stránky (Content
   Vertical Padding: hide / top only), a full-width šablona zůstávají bez něj.
   Bez něj zůstává i obsah, který končí pásem přes celou šířku (alignfull,
   např. závěrečná výzva na O nás): pás má vlastní odsazení a k patičce
   přiléhá, mezera by pod ním nechala prázdný světlý pruh. */
body:not(.content-vertical-padding-hide):not(.content-vertical-padding-top):not(.content-width-fullwidth) .content-area:not(:has(.entry-content > .alignfull:last-child)){
  margin-bottom: var(--global-xxl-spacing);
}
@media (max-width: 719px){
  body:not(.content-vertical-padding-hide):not(.content-vertical-padding-top):not(.content-width-fullwidth) .content-area:not(:has(.entry-content > .alignfull:last-child)){
    margin-bottom: var(--global-xl-spacing);
  }
}

/* =========================================================================
   Krok 7 – Výkon & přístupnost
   ========================================================================= */

/* Respektovat „omezený pohyb" – ztlumit animace/přechody citlivým uživatelům */
@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Krok 8 (písmo tlačítek 18 px na ≤1024 px) zrušen 2026-10-05: velikost
   řídí Customizer (buttons_typography, tablet a mobil). */

/* =========================================================================
   Obsah: oranžové akcenty (palette10) na drobných tenkých prvcích
   (DESIGN-SYSTEM v1.3, úvod). Jen odrážky nečíslovaných seznamů a svislá
   linka citátu. Čísla číslovaných seznamů NE — oranž na světlém plátně má
   ~2 : 1, na drobné číslice by to bylo pod čitelností. Barva markeru se
   v nastavení ani v atributu bloku nedá zadat, proto CSS (rung 5). Bez hex:
   var(--global-palette10) následuje Customizer.
   ========================================================================= */
.entry-content ul > li::marker{
  color: var(--global-palette10);
}
.entry-content .wp-block-quote{
  border-left-color: var(--global-palette10);
}

/* =========================================================================
   Wide bloky (align: wide) v kartě Kadence: nepřetékat
   Kadence dává každému .alignwide šířku var(--global-vw, 100vw) a
   max-width var(--global-content-wide-width) (= 1680 px) přes
   ".wp-site-blocks .content-container .is-layout-constrained > .alignwide"
   (specificita 0,4,0), což přebíjí max-width z layoutu „constrained" (WP,
   0,2,0). Wide obrázek, tabulka, H1 a řádek autora v kartě univerzální
   šablony tak přetékaly přes okraj karty až mimo obrazovku (změřeno
   1440 → pravý okraj 1680, 1024 → 1088, 768 → 832, 390 → 438). Uvnitř
   sloupce Kadence necháme wide blok vyplnit šířku sloupce: karta 1040 px
   s odsazením 40 px dává 960 px a při zúžení se blok jen zmenšuje. Vše ostatní
   (constrained mimo karty Kadence) zůstává beze změny.
   ========================================================================= */
.wp-site-blocks .wp-block-kadence-column .is-layout-constrained > .alignwide{
  width: auto;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
}

/* =========================================================================
   Univerzální šablona (page i post): opravy po testu 2026-09-30
   Selektory míří na `.is-layout-constrained` uvnitř sloupce Kadence, tedy
   jen na šablonu (na produkci žádná skupina `constrained` dosud není).
   ========================================================================= */

/* Řádek autora (R-4). Desktop 0.8em (= 16,8 px při těle 21 px), telefon 13 px.
   Atribut bloku responsivní velikost neumí a předvolba písma má !important,
   proto třída `pp-byline` a CSS. Zalomení na dva řádky (autor, pod ním data)
   dělá skladba bloků (flex wrap), ne tohle pravidlo. */
.pp-byline{
  font-size: .8em;
}
/* Autor a obě data jako tři položky jednoho flex řádku, zarovnané na účaří
   a zalomené zleva. Téma dává .single-content p i .wp-block-group
   margin-bottom (--global-md-spacing), takže se položky v řádku rozjely;
   vnořená skupina dat se rozpustí (display: contents), aby se data při
   zalomení řadila zleva pod autora, ne vedle něj. */
.pp-byline{
  align-items: baseline;
  column-gap: 16px;
  row-gap: 2px;
}
.single-content .pp-byline.wp-block-group > p,
.single-content .pp-byline .wp-block-post-date{
  /* .single-content p (Kadence, 0,1,1) se načítá po nás, proto 0,3,1 */
  margin: 0;
}
.pp-byline > .wp-block-group{
  display: contents;
}
@media (max-width: 767px){
  .pp-byline{
    font-size: 13px;
  }
  /* Telefon: autor sám na prvním řádku, obě data pod ním (R-4). */
  .single-content .pp-byline.wp-block-group > p{
    flex-basis: 100%;
  }
}

/* Obrázek v textu (R-2): na šířku plná šířka karty (680 px), na výšku nejvýš
   600 px. Jádro dává wide obrázku `width:100%` (0,2,1), což by u portrétu
   s max-height zdeformovalo poměr; `width:auto` + `height:auto` nechá
   prohlížeč zmenšit obě strany společně (CSS 2.1, 10.4). Vystředění, když
   je obrázek užší než karta. */
.wp-site-blocks .wp-block-kadence-column .is-layout-constrained .wp-block-image img{
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 600px;
  margin-left: auto;
  margin-right: auto;
}

/* Tabulka (R-6, D-09): náznak posunu do strany. Jádro dává `.wp-block-table`
   overflow-x:auto; stíny na okrajích (radial, attachment scroll) zakrývají
   krycí přechody v barvě karty (linear, attachment local), takže stín je vidět
   jen na straně, kam ještě jde posunout. Tabulka, která se vejde, žádný nemá. */
.wp-site-blocks .wp-block-kadence-column .is-layout-constrained .wp-block-table{
  background:
    linear-gradient(to right, var(--global-palette8) 30%, transparent) left center / 2.5rem 100% no-repeat local,
    linear-gradient(to left, var(--global-palette8) 30%, transparent) right center / 2.5rem 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%, color-mix(in srgb, var(--global-palette3) 28%, transparent), transparent) left center / .875rem 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%, color-mix(in srgb, var(--global-palette3) 28%, transparent), transparent) right center / .875rem 100% no-repeat scroll;
}

/* Související články bez dalších článků (D-10): Kadence Blocks vypíše anglické
   „No posts“. Filtr v functions.php ho nahradí prázdným odstavcem
   `.pp-posts-empty` a tady se skryje celá karta, aby nezůstal osiřelý nadpis. */
.pp-posts-empty{
  display: none;
}
.wp-block-kadence-rowlayout:has(.pp-posts-empty){
  display: none;
}
