/* st3-prod-fixes-v7 – drobné opravy po překlopení (běh 4). Nahrazuje v6 (v1–v6 zůstávají na serveru pro návrat).
 * B4-01: světlejší text v článcích případových studií a blogu.
 * B4-02: nadpisy H2/H3 v článcích bílé včetně tučného textu uvnitř (H3 v případovkách byly šedé).
 * B4-03: linka pod H3 jako u H2, jen kratší a jemnější (bez H3 s obrázkem a bez podpisu).
 * B4-05: bez zelené čárky nad H2 v článcích (zůstává jen linka pod nadpisem).
 * B4-06: obrázky v článcích bez CSS rámečku/pozadí/stínu (většina PNG má zaoblení a rámeček zapečené, CSS je ořezávalo);
 *        jednotné jemné zaoblení 12px (mobil 8px); hlavní obrázek případovky vždy 22px (jednotně u všech).
 * B4-07: obrázkový banner konzultace bez rámované krabice (jen jemně zaoblený); textový odkaz „👇 …“ je rámované tlačítko v blogu i v případovkách.
 * B4-08: ručně vložený banner konzultace v poslední části případovky se skryje, když stránka má automatický blok konzultace (nic se nemaže).
 * B4-09: tlačítko „Všechny články“ (a další .special_btn): přechod uvnitř má stejné zaoblení jako rámeček.
 * B4-10: skryté nadpisy pro čtečky (.sr-only, např. „Zápatí“, „Košík“) na stránkách článků zase skryté (šablona je z nich dělala viditelný proužek písmene).
 * B4-04: slovo ze slovníku pojmů v nadpisu má stejnou velikost a písmo jako nadpis, zvýrazněné jen barvou.
 */
/* B4-01a – případové studie (detail): běžný text */
body.st3-case-detail .news-item-detail .text .st3-case-detail__content:is(p, ul, ol, li),
body.st3-case-detail .news-item-detail .text .st3-case-detail__content:not(h1, h2, h3, h4) :is(p, li, span, b, strong, em, i):not([style*="color"]):not(a):not(a *) {
  color: #e6ebf0;
}
/* B4-01b – blog (detail článku): běžný text */
body.st3-reading-prototype--article .news-item-detail .text :is(p, li, span, b, strong, em, i):not([style*="color"]):not(a):not(a *):not(h1 *):not(h2 *):not(h3 *):not(h4 *) {
  color: #e6ebf0;
}
/* B4-02 – nadpisy v článcích */
body.st3-case-detail .news-item-detail .text :is(h2, h3).st3-case-detail__content,
body.st3-case-detail .news-item-detail .text :is(h2, h3).st3-case-detail__content :is(b, strong, span, em, i):not([style*="color"]),
body.st3-reading-prototype--article .news-item-detail .text > :is(h2, h3),
body.st3-reading-prototype--article .news-item-detail .text > :is(h2, h3) :is(b, strong, span, em, i):not([style*="color"]) {
  color: #ffffff;
}
/* B4-03 – linka pod H3 (kratší a jemnější než u H2) */
body.st3-case-detail .news-item-detail .text > h3.st3-case-detail__content:not(:has(img)):not(.podpis)::after,
body.st3-reading-prototype--article .news-item-detail .text > h3:not(:has(img)):not(.podpis)::after {
  content: "";
  display: block;
  width: 90px;
  height: 1px;
  margin-top: 12px;
  background: linear-gradient(to right, #00f2ea 0%, rgba(0, 242, 234, .55) 45%, rgba(0, 242, 234, 0) 100%);
  opacity: .8;
}
/* B4-04 – slovník pojmů v nadpisech: stejná velikost a písmo jako nadpis, zvýraznění jen barvou
   (!important kvůli pravidlu šablony „.text p, .text li … {font-size:18px !important}“, které zasahuje i odkaz ve slovníku) */
html body :is(.text, .glossaryDetail) :is(h1, h2, h3, h4, h5, h6) span.show-tooltip,
html body :is(.text, .glossaryDetail) :is(h1, h2, h3, h4, h5, h6) a.glossary,
html body.st3-case-detail .news-item-detail .text :is(h1, h2, h3, h4, h5, h6) span.show-tooltip,
html body.st3-case-detail .news-item-detail .text :is(h1, h2, h3, h4, h5, h6) a.glossary,
html body :is(h1, h2, h3, h4, h5, h6) span.show-tooltip,
html body :is(h1, h2, h3, h4, h5, h6) a.glossary {
  font-size: inherit !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit;
  text-transform: inherit;
}
html body :is(h1, h2, h3, h4, h5, h6) a.glossary { color: #00f2ea; }
/* B4-05 – bez zelené čárky nad H2 v článcích a případovkách (linka pod nadpisem zůstává) */
html body.st3-reading-prototype .news-item-detail .text h2::before,
html body.st3-case-detail .news-item-detail .text h2::before {
  content: none;
  display: none;
}
/* B4-06a – obrázky v článcích a případovkách: bez pozadí, rámečku a stínu (průhledné PNG se zapečenými rohy a rámečkem se už neořezávají).
   Jemné zaoblení je menší než zapečené rohy, takže u nich ořízne jen průhlednou část; hranaté obrázky (např. banner konzultace) zaoblí. */
html body.type-post .news-item-detail .text img:not([src*=".svg" i]) {
  border: 0;
  border-radius: 12px;
  background: transparent;
  box-shadow: none;
}
@media (max-width: 600px) {
  html body.type-post .news-item-detail .text img:not([src*=".svg" i]) { border-radius: 8px; }
}
/* B4-06c – hlavní obrázek případovky (hero): u všech stejné zaoblení (≥ zapečenému, takže jedna čistá křivka) */
html body.type-post .news-item-detail .text :is(.hero_block, .swiper_flat_desc) img:not([src*=".svg" i]) {
  border-radius: 22px;
}
/* B4-07a – obrázkový odkaz na konzultaci (banner) v textu článku: bez stylu tlačítka (šablona z něj dělala rámovanou krabici) */
html body.st3-reading-prototype .news-item-detail .text a[href="/konzultace-zdarma/"]:has(img):not(.special_btn) {
  display: inline;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
/* B4-07b – textový odkaz na konzultaci v případovce: stejné rámované tlačítko jako v blogu (styl šablony sTrendem.css) */
html body.st3-case-detail .news-item-detail .text a[href="/konzultace-zdarma/"]:not(:has(img)):not(.special_btn) {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 15px 22px;
  border: 1px solid #00f2ea;
  border-radius: 10px;
  background: linear-gradient(110deg, rgba(0, 242, 234, .26), rgba(0, 242, 234, .05));
  color: #fff !important;
  font: 830 13px/1.2 "Montserrat", sans-serif;
  text-decoration: none;
}
html body.st3-case-detail .news-item-detail .text a[href="/konzultace-zdarma/"]:not(:has(img)):not(.special_btn) :is(b, strong, span) { color: inherit !important; font: inherit; }
/* B4-08 – případovka: ruční banner konzultace (a řádek „👇 …“ nad ním) za posledním H2 skrýt, pokud je na stránce automatický blok konzultace */
html body.st3-case-detail .news-item-detail .text:has(> .st3-case-detail-cta) > p:has(a:is([href*="konzultace"], [href*="calendly"]) img):not(:has(~ h2)),
html body.st3-case-detail .news-item-detail .text:has(> .st3-case-detail-cta) > p:has(a:is([href*="konzultace"], [href*="calendly"])):not(:has(img)):has(+ p a:is([href*="konzultace"], [href*="calendly"]) img):not(:has(~ h2)) {
  display: none;
}
/* B4-09 – tlačítka se zvýrazněním: přechod (::before/::after) kopíruje zaoblení tlačítka */
html body :is(.special_btn, .next-prev .btn, .p-tools .btn)::before,
html body :is(.special_btn, .next-prev .btn, .p-tools .btn)::after {
  border-radius: inherit;
}
/* B4-10 – .sr-only zůstane skryté i na stránkách článků (pravidlo šablony „.type-post h2“ mu dávalo position:relative a okraje) */
html body .sr-only:not(:focus):not(:focus-within) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
html body .sr-only::before,
html body .sr-only::after {
  content: none !important;
  display: none !important;
}
/* ===== B4-11 – zákaznická sekce (/klient/…): formuláře a boxy ve stylu webu ===== */
body.customer-page #content .co-box,
body.customer-page #content fieldset.box {
  background: #0e161b;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 14px;
  padding: 22px 24px;
  margin-bottom: 18px;
}
body.customer-page #content fieldset.box { border: 0; padding: 0; margin: 0; background: transparent; }
body.customer-page #content form#register-form,
body.customer-page #content .content-inner > form { width: 100%; max-width: 760px; }
body.customer-page #content :is(input.form-control, select.form-control, textarea.form-control, input[type="text"], input[type="email"], input[type="tel"], input[type="password"], select, textarea):not([type="checkbox"]):not([type="radio"]) {
  background: #080e13;
  color: #e6ebf0;
  border: 1px solid #36454c;
  border-radius: 10px;
  min-height: 48px;
  box-shadow: none;
}
body.customer-page #content :is(input, select, textarea):focus { border-color: #00f2ea; outline: 2px solid rgba(0, 242, 234, .25); outline-offset: 1px; }
body.customer-page #content :is(input, textarea)::placeholder { color: #7b8a94; }
body.customer-page #content :is(.select-wrapper, .form-control-wrapper)::after,
body.customer-page #content select { background-color: #080e13; }
body.customer-page #content .phone-form-group :is(.country-flags, .country-flag, .js-phone-code, .phone-code, button, .dropdown-toggle) {
  background: #080e13;
  color: #e6ebf0;
  border-color: #36454c;
  border-radius: 10px;
}
body.customer-page #content h2 { margin-bottom: 14px; }
body.customer-page #content .form-control-wrapper { max-width: 100%; }
body.customer-page #content .phone-combined-input { gap: 8px; }
body.customer-page #content .phone-combined-input > :not(.country-flags) { flex: 1 1 auto; min-width: 0; width: auto; max-width: none; }
body.customer-page #content .phone-combined-input input { width: 100%; }
body.customer-page #content .phone-combined-input .country-flags { background: #080e13; border: 1px solid #36454c; border-radius: 10px; color: #e6ebf0; }
body.customer-page #content .btn.btn-primary,
body.customer-page #content button[type="submit"] {
  background: #00f2ea;
  color: #031014;
  border: 1px solid #00f2ea;
  border-radius: 10px;
  min-height: 48px;
  padding: 0 26px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body.customer-page #content .btn.btn-secondary {
  background: #12333a;
  color: #bde3e5;
  border: 1px solid #28676b;
  border-radius: 10px;
  min-height: 44px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
}
body.customer-page #content :is(.btn.btn-primary, button[type="submit"]):hover { background: #5ff8f2; }
body.customer-page #content .btn.btn-secondary:hover { border-color: #00f2ea; color: #fff; }
body.customer-page #content table { border-collapse: separate; border-spacing: 0; width: 100%; background: #0e161b; border: 1px solid rgba(255, 255, 255, .1); border-radius: 14px; overflow: hidden; }
body.customer-page #content table :is(th, td) { background: transparent; color: #e6ebf0; border-color: rgba(255, 255, 255, .08); padding: 12px 14px; }
body.customer-page #content table th { color: #9da8b5; font-weight: 600; }

/* ===== B4-12 – stránkování (blog a výpisy): čísla i šipky jednotně ===== */
html body nav.pagination { justify-content: center; }
html body .pagination-wrapper:has(nav.pagination) { justify-content: center !important; text-align: center; }
html body .pagination-wrapper:has(nav.pagination) nav.pagination { margin-left: auto; margin-right: auto; }
html body nav.pagination .pagination__list { gap: 8px; justify-content: center; }
html body nav.pagination .pagination__list :is(.pagination__link, .pagination__currentPage):not(.st3-x1):not(.st3-x2):not(.st3-x3) {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border-radius: 10px !important;
  background: #0c1216 !important;
  color: #e6ebf0 !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  font: 700 15px/1 Inter, sans-serif !important;
  box-shadow: none !important;
  transition: border-color .18s, color .18s, background .18s;
}
html body nav.pagination .pagination__list .pagination__link:not(.st3-x1):not(.st3-x2):not(.st3-x3):not(.st3-x4):hover { border-color: #00f2ea !important; color: #00f2ea !important; background: #0c1216 !important; }
html body nav.pagination .pagination__list .pagination__currentPage:not(.st3-x1):not(.st3-x2):not(.st3-x3):not(.st3-x4) { background: #00f2ea !important; color: #031014 !important; border-color: #00f2ea !important; }
html body nav.pagination .pagination__link:is(.pagination__link--next, .pagination__link--prev)::before { color: inherit !important; }
html body nav.pagination .pagination__link:focus-visible { outline: 2px solid #00f2ea; outline-offset: 3px; }

/* ===== B4-13 – text u ikony účtu v hlavičce (st3-account-label-v1.js) ===== */
@media (min-width: 1200px) {
  html body .navigation-buttons .st3-account-labeled {
    width: auto !important;
    min-width: 44px;
    max-width: 220px;
    padding: 0 16px 0 40px !important;
    border-radius: 22px !important;
    display: inline-flex !important;
    align-items: center;
    position: relative;
  }
  html body .navigation-buttons .st3-account-labeled::before { position: absolute !important; left: 14px !important; top: 50% !important; transform: translateY(-50%) !important; margin: 0 !important; }
  html body .navigation-buttons .st3-account-label {
    display: block;
    font: 600 13px/1 Inter, sans-serif;
    color: #e6ebf0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  html body .navigation-buttons .st3-account-labeled--in .st3-account-label { color: #00f2ea; }
  html body .navigation-buttons .st3-account-labeled:hover { border-color: #00f2ea !important; }
}
@media (max-width: 1199px) { html body .navigation-buttons .st3-account-label { display: none; } }

/* ===== B4-14 – košík a kroky objednávky: mírný redesign ===== */
html body .cart-header .step { background: transparent !important; border: 0 !important; padding: 0 !important; }
html body .cart-header .step > :is(a, strong) {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  margin: 0 !important;
  padding: 0 14px !important;
  background: #0e161b !important;
  color: #dce9ef !important;
  border: 1px solid rgba(255, 255, 255, .14) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  font-weight: 600;
  text-decoration: none;
}
html body .cart-header .step.active > :is(a, strong) { background: #00f2ea !important; color: #031014 !important; border-color: #00f2ea !important; }
html body .cart-header .step.completed > :is(a, strong) { border-color: rgba(0, 242, 234, .45) !important; color: #00f2ea !important; }
html body .cart-header .step > a:hover { border-color: #00f2ea !important; }
html body .cart-header .step > :is(a, strong) span { display: inline !important; height: auto !important; min-height: 0 !important; line-height: 1.3 !important; border: 0 !important; background: none !important; padding: 0 !important; margin: 0 !important; box-shadow: none !important; color: inherit !important; }
html body .cart-header .step > :is(a, strong)::before,
html body .cart-header .step > :is(a, strong)::after,
html body .cart-header .step::before,
html body .cart-header .step::after { display: none !important; }
html body .cart-inner table.cart-table {
  border-collapse: separate !important;
  border-spacing: 0;
  width: 100%;
  background: #0e161b;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 14px;
  overflow: hidden;
}
html body .cart-inner table.cart-table :is(td, th) { background: transparent !important; border-color: rgba(255, 255, 255, .08) !important; vertical-align: middle; }
html body .cart-inner table.cart-table td.cart-p-image { background: transparent !important; padding: 12px !important; }
html body .cart-inner table.cart-table td.cart-p-image img { border-radius: 8px; display: block; }
html body .cart-inner > h2.h4 { margin-top: 34px; margin-bottom: 14px; }
html body .cart-inner .summary :is(.box, .price-wrapper) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
html body .cart-inner .next-step { gap: 12px; margin-top: 24px; }
html body .cart-inner .next-step .next-step-back { border-radius: 10px; }
html body .cart-inner .next-step .btn-conversion { border-radius: 10px; }

/* ===== B4-15 – 1. krok objednávky: vybraná doprava/platba nesvítí bíle ===== */
html body .shipping-billing-table .radio-wrapper { transition: background .18s; border-radius: 0; }
html body .shipping-billing-table .radio-wrapper:hover { background: rgba(255, 255, 255, .03) !important; }
html body .shipping-billing-table .radio-wrapper.active {
  background: rgba(0, 242, 234, .09) !important;
  box-shadow: inset 3px 0 0 #00f2ea;
}
html body .shipping-billing-table .radio-wrapper.active :is(label, b, strong, span, .payment-info, .shipping-billing-name) { color: #fff; }
html body .shipping-billing-table .radio-wrapper.active :is(.payment-info, .shipping-billing-info, small, .description) { color: #b9c4ce; }
/* ===== B4-16 – formulářové prvky na celém webu: přepínače, zaškrtávátka, výběr, ceny dopravy/platby ===== */
/* přepínač (radio): šablona kreslí kroužek ::before a tečku ::after – obojí bylo bílé, vybraný a nevybraný vypadaly stejně */
html body input[type="radio"] + label::before {
  background: #080e13 !important;
  border: 1px solid #7a919c !important;
  box-shadow: none !important;
}
html body input[type="radio"]:not(:checked) + label::after { background: transparent !important; border-color: transparent !important; }
html body input[type="radio"]:checked + label::before { border-color: #00f2ea !important; }
html body input[type="radio"]:checked + label::after { background: #00f2ea !important; border-color: #00f2ea !important; }
/* zaškrtávátko: nezaškrtnuté bylo bílé; zaškrtnuté (cyan s tmavou fajfkou) zůstává */
html body input[type="checkbox"]:not(:checked) + label::before {
  background: #080e13 !important;
  border: 1px solid #7a919c !important;
  box-shadow: none !important;
}
html body input[type="checkbox"] + label::before { border-radius: 4px !important; }
html body input:is([type="radio"], [type="checkbox"]) + label:hover::before { border-color: #00f2ea !important; }
html body input:is([type="radio"], [type="checkbox"]):focus-visible + label::before { outline: 2px solid #00f2ea; outline-offset: 2px; }
/* výběr (select): šipka byla ve světlém čtverci (SVG pozadí šablony) */
html body :is(#content, .content-window, .popup-widget) select:is(.form-control, :not([class])),
html body #content select {
  background-color: #080e13 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%239da8b5' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 16px center !important;
  background-size: 14px 14px !important;
  padding-right: 44px !important;
  color: #e6ebf0;
  border: 1px solid #36454c;
  border-radius: 10px;
}
/* ceny u dopravy a platby jednotně (dřív střídavě tmavě zelená a bílá) */
html body .shipping-billing-table .payment-shipping-price { color: #e6ebf0 !important; }
html body .shipping-billing-table .payment-shipping-price.for-free { color: #00f2ea !important; }
/* předvolba telefonu (vlajka +420) ve stylu pole */
html body #content .phone-combined-input .country-flags {
  background: #080e13 !important;
  border: 1px solid #36454c !important;
  border-radius: 10px !important;
}
html body #content .phone-combined-input .country-flags :is(.country-flag, span, div) { background: transparent !important; color: #e6ebf0 !important; }
html body #content .phone-combined-input { gap: 8px; }

/* ===== B4-17 – 2. krok objednávky (údaje): bez krabice v krabici, tlačítko přihlášení, širší pole ===== */
html body.ordering-process #content :is(.co-box, .order-summary) :is(fieldset.box, .order-summary-inner) {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}
html body.ordering-process #content .form-control-wrapper,
html body.ordering-process #content .form-control-wrapper > .form-control,
html body.ordering-process #content .phone-combined-input { max-width: 520px !important; width: 100%; }
html body :is(.ordering-process, .customer-page) #content .btn.btn-secondary,
html body.ordering-process #content .login-button {
  background: #12333a !important;
  color: #bde3e5 !important;
  border: 1px solid #28676b !important;
  border-radius: 10px !important;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
html body :is(.ordering-process, .customer-page) #content .btn.btn-secondary:hover { border-color: #00f2ea !important; color: #fff !important; }
html body.ordering-process #content .next-step :is(.next-step-back, .btn-conversion) { border-radius: 10px !important; }
/* ===== B4-18 – formuláře na všech stránkách (registrace, přihlášení, zapomenuté heslo, hledání v prázdném košíku …) ===== */
html body :is(#content, dialog.dialog) :is(input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="search"], input[type="number"], input.form-control, textarea):not([type="checkbox"]):not([type="radio"]) {
  background: #080e13 !important;
  color: #e6ebf0 !important;
  border: 1px solid #36454c !important;
  border-radius: 10px !important;
  min-height: 48px;
  box-shadow: none !important;
}
html body :is(#content, dialog.dialog) :is(input, textarea, select):focus { border-color: #00f2ea !important; outline: 2px solid rgba(0, 242, 234, .25); outline-offset: 1px; }
html body :is(#content, dialog.dialog) :is(input, textarea)::placeholder { color: #7b8a94; }
html body :is(#content, dialog.dialog) .form-group > label,
html body :is(#content, dialog.dialog) .smart-label-wrapper > label { color: #e6ebf0 !important; }
html body:not(.ordering-process) #content .co-box {
  background: #0e161b;
  border: 1px solid rgba(255, 255, 255, .1) !important;
  border-radius: 14px;
  padding: 22px 24px;
}
html body:not(.ordering-process) #content .co-box fieldset.box { background: transparent; border: 0; padding: 0; margin: 0; }
html body :is(#content, dialog.dialog) :is(.btn.btn-primary, .btn.btn-default, .search-form button, form button[type="submit"]:not(.btn-conversion):not(.btn-secondary)) {
  background: #00f2ea !important;
  color: #031014 !important;
  border: 1px solid #00f2ea !important;
  border-radius: 10px !important;
  min-height: 48px;
  padding: 0 24px !important;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: none !important;
}
html body :is(#content, dialog.dialog) :is(.btn.btn-primary, .btn.btn-default, .search-form button, form button[type="submit"]:not(.btn-conversion):not(.btn-secondary)):hover { background: #5ff8f2 !important; }

/* ===== B4-19 – přihlašovací okno (dialog #login): bílý pruh nahoře, bílá pole, černé popisky ===== */
html body dialog.dialog .dialog__close,
html body dialog.dialog .dialog__close--arrow {
  background: #0b1014 !important;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
html body dialog.dialog .dialog__close :is(button, span, a) { color: #e6ebf0 !important; }
html body dialog.dialog .dialog__close button::before,
html body dialog.dialog .dialog__close button::after { color: #e6ebf0 !important; border-color: #e6ebf0 !important; }
html body dialog.dialog .dialog__content {
  background: #0e161b !important;
  border: 1px solid rgba(255, 255, 255, .1) !important;
  border-radius: 16px !important;
  color: #e6ebf0;
  padding: 32px 28px 28px !important;
  box-sizing: border-box;
}
@media (max-width: 600px) { html body dialog.dialog .dialog__content { padding: 26px 18px 22px !important; margin: 18px 12px 0 !important; width: auto !important; } }
html body dialog.dialog :is(.dialog__body, .dialog__header, form, p) { color: #e6ebf0; }
html body dialog.dialog.dialog--fullscreen .dialog__wrapper { padding-top: 112px !important; box-sizing: border-box; }
@media (max-width: 600px) { html body dialog.dialog.dialog--fullscreen .dialog__wrapper { padding-top: 92px !important; } }
html body dialog.dialog .alternative-links a { color: #00f2ea; }
/* ===== B4-21 – linka pod H2 jen v textu článku (šablona „.type-post div > h2::after“ přetékala do newsletteru v patičce a do okna hledání) ===== */
html body.type-post h2:not(.news-item-detail .text h2)::after {
  content: none !important;
  display: none !important;
}

/* ===== B4-20 – prázdný košík: vystředěný úvod a tři karty ===== */
html body .cart-inner.cart-empty { max-width: 1120px; margin: 0 auto; padding: 8px 0 40px; }
html body .cart-inner.cart-empty .cart-heading {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  text-align: center;
  font: 800 clamp(28px, 4vw, 44px)/1.1 Montserrat, sans-serif !important;
  font-style: normal !important;
  letter-spacing: -.02em;
  color: #fff;
  margin: 10px auto 10px !important;
}
html body .cart-inner.cart-empty .cart-heading::before {
  width: 84px !important;
  height: 84px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  border-radius: 50%;
  background: rgba(0, 242, 234, .1);
  border: 1px solid rgba(0, 242, 234, .45);
  color: #00f2ea !important;
  font-size: 38px !important;
  position: static !important;
  transform: none !important;
}
html body .cart-inner.cart-empty .cart-heading::after {
  content: "Zatím tu nic není. Vyberte si kurz nebo mentoring, který vás posune dál – nebo se nám ozvěte, poradíme.";
  display: block;
  max-width: 560px;
  font: 400 16px/1.6 Inter, sans-serif;
  letter-spacing: 0;
  color: #b9c4ce;
}
html body .cart-inner.cart-empty .cart-row {
  display: grid !important;
  grid-template-columns: 2fr 1fr;
  gap: 20px;
  margin: 34px 0 0 !important;
}
html body .cart-inner.cart-empty :is(.cart-row, .empty-cart-boxes)::before,
html body .cart-inner.cart-empty :is(.cart-row, .empty-cart-boxes)::after { content: none !important; display: none !important; }
html body .cart-inner.cart-empty .cart-row > [class*="col-"] { width: auto !important; max-width: none !important; float: none !important; padding: 0 !important; margin: 0 !important; flex: none !important; }
html body .cart-inner.cart-empty .empty-cart-boxes {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin: 0 !important;
}
html body .cart-inner.cart-empty .empty-cart-boxes > [class*="col-"],
html body .cart-inner.cart-empty .cart-row > .col-xl-offset-1 > .cart-content {
  width: auto !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  height: 100%;
  background: #0e161b;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 16px;
  padding: 24px !important;
  box-sizing: border-box;
}
html body .cart-inner.cart-empty :is(.empty-cart-boxes h3, .cart-content h2.h4) {
  font: 700 18px/1.3 Montserrat, sans-serif !important;
  color: #fff;
  margin: 0 0 16px !important;
}
html body .cart-inner.cart-empty .empty-cart-boxes ul { list-style: none; padding: 0; margin: 0; }
html body .cart-inner.cart-empty .empty-cart-boxes ul li::before { display: none !important; }
html body .cart-inner.cart-empty .empty-cart-boxes ul a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 10px;
  background: #00f2ea;
  color: #031014 !important;
  font-weight: 700;
  text-decoration: none;
}
html body .cart-inner.cart-empty .empty-cart-boxes ul a::after { content: "→"; }
html body .cart-inner.cart-empty .empty-cart-boxes ul a:hover { background: #5ff8f2; }
html body .cart-inner.cart-empty .search-form fieldset { display: flex; gap: 8px; margin: 0; padding: 0; border: 0; }
html body .cart-inner.cart-empty .search-form input { flex: 1 1 auto; min-width: 0; }
html body .cart-inner.cart-empty .search-form button { flex: 0 0 auto; min-width: 56px; padding: 0 16px !important; }
html body .cart-inner.cart-empty .cart-content .box { background: transparent !important; border: 0 !important; padding: 0 !important; }
html body .cart-inner.cart-empty .contact-box :is(strong, ul) { color: #e6ebf0; }
html body .cart-inner.cart-empty .contact-box ul { list-style: none; padding: 0; margin: 10px 0 0; }
html body.ordering-process #content .cart-inner.cart-empty .cart-row .cart-content h2.h4 { font: 700 18px/1.3 Montserrat, sans-serif !important; margin: 0 0 16px !important; }
html body .cart-inner.cart-empty .cart-row > .col-xl-7,
html body .cart-inner.cart-empty .cart-row > .col-xl-7 > .cart-content,
html body .cart-inner.cart-empty .empty-cart-boxes { height: 100%; }
html body .cart-inner.cart-empty .cart-row { align-items: stretch; }
@media (max-width: 991px) {
  html body .cart-inner.cart-empty .cart-row,
  html body .cart-inner.cart-empty .empty-cart-boxes { grid-template-columns: 1fr; }
}
