/* 

// Created :: 2025-02-23
// Updated :: 2025-02-23

*/

:root {
	--font-dark: #393e46;
	--dark-red: #a32015;
	--grey-light: #e2e4e8;
}

/* BODY */

* {  }
body { background-color: white; color: var(--font-dark); }

/* HELP */

input { color: black; }

/* OBECNÉ PRVKY */

/* RESPO PRIPRAVA */

/* LAYOUT */

#content_obsah.struktura, #content_obsah.detail, #content_obsah.produkt, #content_obsah.kategorie, 
#content_obsah.search, #content_obsah.kosik, #content_obsah.dekujeme, #content_obsah.chyba, #content_obsah.s404
{ border-top: 2px solid var(--grey-light); }


/* OBECNÉ */

/* ERRORS */

div.error_box, div.success_box, div.info_box, div.warning_box { color: white; }
div.error_box { background-color: red; } 
div.success_box { background-color: green; } 
div.info_box { background-color: orange; } 
div.warning_box { background-color: red; } 

/* LISTA */

/* NADPISY */

/* ZAHLAVI */

#zahlavi_lista { background-color: #f8f8f8; } 
#zahlavi_lista .icon { fill: #bfc0c3; } 
#zahlavi_lista .zl_item { color: var(--font-dark); } 
#zahlavi_lista .zl_item span::after { background-color: #225494; } 
#zahlavi_lista .zl_center { color: var(--dark-red); }
#zahlavi_lista .zl_link { color: var(--font-dark);  } 
#zahlavi_lista .zl_link::after { background-color: #225494; } 
#zahlavi_lista .zl_link:hover {  }

#zahlavi { background-color: transparent; }
#zahlavi .icon { color: #393e46; }
#zahlavi .zh_search { border: 1px solid #e5e7eb; background-color: #ffffff; box-shadow: 0 2px 4px rgba(0,0,0,0.05); }
#zahlavi .zh_search input { background-color: #ffffff; color: #393e46; }
#zahlavi .zh_search input::placeholder { color: #8a8f96; }
#zahlavi .zh_search .zh_btn { background-color: #a32015; color: #ffffff; }
#zahlavi .zh_search .zh_btn .icon { color: #ffffff; stroke: #ffffff; }
#zahlavi .zh_icon { color: #393e46; }
#zahlavi .zh_label { color: #393e46; }
#zahlavi .zh_badge { background-color: #a32015; color: #ffffff; }
#zahlavi .zh_icon:hover { color: #225494; }
#zahlavi .zh_icon .zh_label::after { background-color: #225494; }

/* MENU */

#zahlavi_menu .cat_toggle { background-color: var(--dark-red); color: #ffffff; }
#zahlavi_menu .cat_toggle { border-top-left-radius: 5px; border-top-right-radius: 5px; }

#zahlavi_menu .burger span { background: currentColor; }

#zahlavi_menu .cat_panel { background-color: #ffffff; border: 1px solid #e5e7eb; box-shadow: 0px 8px 20px rgba(0,0,0,0.08); }
#zahlavi_menu .cat_list li a { color: var(--font-dark); }
#zahlavi_menu .cat_list li a:hover { background-color: #f7f7f7; }

#zahlavi_menu #menu li a { color: var(--font-dark); }
#zahlavi_menu .menu_right a { color: var(--font-dark); }
#zahlavi_menu #menu li a span::after, #zahlavi_menu .menu_right a span::after { background-color: var(--font-dark); }

/* MENU :: BURGER */

/*
.nav_toggle { background: transparent; }
.nav_toggle_bar { background: #111;}
.nav_drawer { background: rgba(0,0,0,.55); }
.nav_drawer_inner { background: #fff; }
.nav_close { background: transparent; color: black;}
.menu_all li { border-bottom: 1px solid #eee; }
.menu_all li a { color: #111; }
.menu_all li a:hover { background: #f7f7f7; }
*/

/* GALERIE */

/* SLOUPEC */

/* CONTAINERS OBSAH UVOD */

/* CONTAINERS VYPISY */

/* CONTAINERS DETAILY */

/* PRVKY */

/* JINE  */

/* ARTICLES */

/* PATICKA */

#paticka { background-color: #222325; color: #dfdfdf; }
#paticka .ft_info { color: #dfdfdf; border-bottom: 1px solid rgba(255,255,255,0.2); }
#paticka .ft_info a { color: #dfdfdf; }
#paticka .column_menu a { color: #dfdfdf; }
#paticka .column_menu a::after { background-color: rgba(255,255,255,0.45); }
#paticka .ft_news_form input { background-color: #ffffff; color: #222325; }
#paticka .ft_news_form .btn_red { background-color: #a32015; color: #ffffff; }
#paticka .social { color: #dfdfdf; border: 1px solid #dfdfdf; }
#paticka .social:hover { color: #ffffff; border-color: #ffffff; }

#paticka .column a { color: #dfdfdf;  }

/* COPYRIGHT */

#copyright { background-color: #2f3033; color: rgba(255,255,255,0.3); }
#copyright a { color: rgba(255,255,255,0.3); }
#copyright a:hover::after { content: ""; position: absolute; left: 0; bottom: -2px; width: 100%; height: 1px; background-color: rgba(255,255,255,0.45); }

/* TINYMCE */

a { color: var(--dark-red); }

/* SITEMAP */

/* FORM */

/* FORM :: PATIČKA  */

/* PRODUKTY :: VÝPIS */

#products_label { color: var(--dark-red); border-bottom: 2px solid var(--grey-light); }

#products { background-color: transparent; color: #393e46; }
#products .prd_img { background-color: #ffffff; }
#products .prd_title a { color: #225494; }
#products .prd_title a:hover { color: #225494; }
#products .prd_price { color: #393e46; }
#products .btn_add { border-color: #a32015; color: #a32015; background-color: transparent; }
#products .btn_add:hover { background-color: #a32015; border-color: #a32015; color: #ffffff; }

/* HP :: KATEGORIE  */

#featured_cats { background-color: transparent; color: #393e46; border-top: 2px solid gray }
#featured_cats .fc_title a { color: #393e46; }
#featured_cats .fc_title a:hover { color: #225494; }
#featured_cats .fc_list li::before { color: #225494; }
#featured_cats .fc_list a { color: #393e46; }
#featured_cats .fc_list a:hover { color: #225494; text-decoration: underline; }
#featured_cats .fc_shop { border: 1px solid #a32015; color: #a32015; background-color: transparent; }
#featured_cats .fc_shop:hover { background-color: #a32015; border-color: #a32015; color: #ffffff; }

/* HP :: BENEFITS */

#benefits { background-color: #f7f7f7; }
#benefits .benefit_icon { border: 2px solid #a32015; color: #a32015; }
#benefits .benefit_item:hover .benefit_icon { background-color: #a32015; color: #ffffff; }
#benefits .benefit_text h3 { color: #222222; }
#benefits .benefit_text p { color: #444444; }

/* HP :: BENEFITS NEWS */

#featured_cats_new { background-color: transparent; }
#featured_cats_new .fc_card { background-color: #000000; }
#featured_cats_new .fc_title { color: white; }
#featured_cats_new .fc_btn { background-color: #a32015; color: #ffffff; border: 1px solid #a32015; }
#featured_cats_new .fc_btn:hover { background-color: #8c1b12; border-color: #8c1b12; color: #ffffff; }

/* HP :: BRAND */ 

#brands { background-color: #ffffff; color: #393e46; }
#brands .brand_box { border: 1px solid #cccccc; background-color: #ffffff; }

/* HP :: HERO BNRS :: UKLIDIT */

/* HP :: BRAND CARS :: VÝVOJ :: UKLIDIT  */

/* HP BLOG :: VÝVOJ :: UKLIDIT */

#blog_hp { background: #f7f7f7; }
#blog_hp .post_title a { color: inherit; text-decoration: none; }
#blog_hp .post_title a:hover { text-decoration: underline; }
#blog_hp .post_perex { color: #555; }


/* PRODUKT :: DETAIL :: VYVOJ :: UKLIDIT  */

#produkt_detail .galerie_mini a { border: 1px solid var(--grey-light); background: #fff; }
#produkt_detail .galerie_mini a:hover { border-color: #bbb; }

#produkt_detail .produkt_spec dt { color: #666; }
#produkt_detail .produkt_spec dd { color: var(--font-dark); }

#produkt_detail .produkt_buybox { background: #f7f7f7; }
#produkt_detail .buybox_stock.is-yes { color: #1a7f37; font-weight: bold; }
#produkt_detail .buybox_stock.is-no  { color: var(--dark-red); }

#produkt_detail .produkt_form .btn_koupit { background: var(--dark-red); color: #fff; }
#produkt_detail .produkt_form .btn_koupit:hover { background: #8c1b12; }

#produkt_detail .buybox_info { color: var(--font-dark); opacity: .85; }

#produkt_popis .produkt_spec dt { color: #666; }
#produkt_popis .produkt_spec dd { color: var(--font-dark); }

/* KOSIK :: CART STEPS */

.cart-steps { background-color: #f7f7f7; }
.cart-steps__item { color: #999; }
.cart-steps__item a { color: #999; }
.cart-steps__item a:hover { color: black; }
.cart-steps__item.is-active { color: var(--font-dark); }
.cart-steps__circle { background-color: transparent; border-color: #ddd; color: #999; }
.cart-steps__item.is-active .cart-steps__circle { background-color: var(--dark-red); border-color: var(--dark-red); color: #ffffff; }
.cart-steps__item:not(:last-child)::after { background-color: #ddd; }
.cart-steps__item.is-active:not(:last-child)::after { background-color: var(--dark-red); }

/* KOSIK :: LAYOUT */

.cart-layout { background-color: transparent; }

/* KOSIK :: LEVY SLOUPEC */

.cart-layout .cart-heading { color: var(--font-dark); }
.cart-layout .cart-table__head { border-bottom-color: var(--grey-light); color: #666; }
.cart-layout .cart-row { border-bottom-color: #f0f0f0; }
.cart-layout .cart-row:last-child { border-bottom-color: transparent; }
.cart-layout .cart-title { color: var(--font-dark); }
.cart-layout .cart-meta { color: #666; }
.cart-layout .cart-col--sum strong { color: var(--font-dark); }

/* KOSIK :: QUANTITY */

.cart-layout .qty { border-color: #ddd; background-color: #fff; }
.cart-layout .qty__btn { background-color: #f7f7f7; color: var(--font-dark); }
.cart-layout .qty__btn:hover { background-color: #e8e8e8; color: var(--dark-red); }
.cart-layout .qty__input { background-color: #fff; color: var(--font-dark); }

/* KOSIK :: REMOVE BUTTON */

.cart-layout .cart-remove { background-color: transparent; border-color: #ddd; color: #999; }
.cart-layout .cart-remove:hover { background-color: #fee; border-color: var(--dark-red); color: var(--dark-red); }

/* KOSIK :: PRAVÝ SLOUPEC */

.cart-layout .cart-box { background-color: #f7f7f7; border: 1px solid var(--grey-light); }
.cart-layout .cart-box__title { color: var(--font-dark); }

/* KOSIK :: FREE SHIPPING */

.cart-layout .cart-free__text { color: var(--font-dark); }
.cart-layout .cart-free__text strong { color: var(--dark-red); }
.cart-layout .progress { background-color: #e0e0e0; }
.cart-layout .progress__bar { background-color: #22c55e; }

/* KOSIK :: TOTALS */

.cart-layout .totals__row dt { color: #666; }
.cart-layout .totals__row dd { color: var(--font-dark); }

/* KOSIK :: COUPON */

.cart-layout .cart-coupon { background-color: #fff; }
.cart-layout .coupon-toggle { color: var(--font-dark); }
.cart-layout .coupon-input { border-color: #ddd; background-color: #fff; color: var(--font-dark); }
.cart-layout .coupon-input:focus { border-color: #999; }
.cart-layout .coupon-apply { background-color: var(--dark-red); color: #fff; }
.cart-layout .coupon-apply:hover { background-color: #8c1b12; }
.cart-layout .coupon-hint { color: #666; }

/* KOSIK :: ACTIONS */

.cart-layout .btn--primary { background-color: var(--dark-red); color: #ffffff; }
.cart-layout .btn--primary:hover { background-color: #8c1b12; }
.cart-layout .btn--link { color: var(--font-dark); border: 1px solid var(--grey-light); }
.cart-layout .btn--link:hover { background-color: #f7f7f7; border-color: #ccc; }

/* KOSIK :: EMPTY */

.cart-layout .cart-empty { color: #999; }









/* ===========================
   CHECKOUT FORM — BARVY
   =========================== */

/* ===========================
   CHECKOUT FORM — BARVY
   =========================== */

/* ===========================
   CHECKOUT FORM – COLORS
   =========================== */

/* =========================== CHECKOUT FORM – COLORS =========================== */

/* Boxy */
#checkout_form .box { background-color: #ffffff; border-color: var(--grey-light); box-shadow: 0 2px 4px rgba(0,0,0,0.02); }
#checkout_form .box legend { color: var(--font-dark); }
#checkout_form .box p { color: var(--font-dark); }
#checkout_form .box p a { color: var(--dark-red); text-decoration: none; font-weight: 500; }
#checkout_form .box p a:hover { text-decoration: underline; }
#checkout_form .box p strong { color: var(--dark-red); }

/* Form prvky */
#checkout_form .form_line label { color: var(--font-dark); }
#checkout_form .form_line input[type="text"],
#checkout_form .form_line input[type="email"],
#checkout_form .form_line input[type="tel"],
#checkout_form .form_line select,
#checkout_form .form_line textarea { background-color: #ffffff; border-color: #dddddd; color: var(--font-dark); }
#checkout_form .form_line input::placeholder,
#checkout_form .form_line textarea::placeholder { color: #999999; }
#checkout_form .form_line input:focus,
#checkout_form .form_line select:focus,
#checkout_form .form_line textarea:focus { border-color: #a32015; box-shadow: 0 0 0 3px rgba(163,32,21,0.12); background-color: #ffffff; }

/* Invalid */
#checkout_form .form_line input:invalid:not(:placeholder-shown),
#checkout_form .form_line select:invalid:not(:placeholder-shown),
#checkout_form .form_line textarea:invalid:not(:placeholder-shown) { border-color: #dc2626; }

/* Disabled */
#checkout_form .form_line input:disabled,
#checkout_form .form_line select:disabled,
#checkout_form .form_line textarea:disabled { background-color: #f5f5f5; color: #999999; border-color: #e5e5e5; }
#checkout_form .form_line label.chk input[type="checkbox"] { accent-color: var(--dark-red); }

/* Chybové hlášky */
#checkout_form .field-error { color: #dc2626; }

/* Ship box */
#checkout_form #ship_box { background-color: #fafafa; border: 1px dashed #dddddd; }

/* Shipping / Payment boxy */
#checkout_form .box-shipping,
#checkout_form .box-payment { background-color: #ffffff; border-color: var(--grey-light); }

/* Radio shipping / payment */
#checkout_form .form_line label.radio { background-color: #ffffff; border-color: #dddddd; color: var(--font-dark); }
#checkout_form .form_line label.radio:hover { border-color: #999999; background-color: #fafafa; }
#checkout_form .form_line label.radio input[type="radio"] { accent-color: var(--dark-red); }
#checkout_form .form_line label.radio input[type="radio"]:checked + span { color: var(--dark-red); }
#checkout_form .form_line label.radio:has(input:checked) { border-color: var(--dark-red); background-color: #fef2f2; }
#checkout_form .form_line label.radio strong { color: var(--font-dark); }
#checkout_form .form_line label.radio:has(input:checked) strong { color: var(--dark-red); }

/* Recap list vpravo */
.x_recap-list { border-top: 1px solid var(--grey-light); padding-top: 12px; }
.x_recap-row { border-bottom-color: #f0f0f0; }
.x_recap-title { color: var(--font-dark); }
.x_recap-qty { color: #666666; }
.x_recap-line { color: var(--font-dark); }

.recap-list {  }
.recap-row { background-color: #ffffff; }
.rx_ecap-row:nth-child(odd) { background-color: #fef2f2; }
.recap-title { color: var(--font-dark); }
.recap-qty { color: var(--dark-red); }
.recap-line { color: var(--dark-red); }

/* Poznámka k podmínkám */
.terms-note { background-color: #fef3c7; border: 1px solid #fde047; color: #78350f; }
.terms-note strong { color: #78350f; }

/* Flash zprávy */
.flash--error { background-color: #fee2e2; border: 1px solid #fca5a5; color: #991b1b; }
.flash--success { background-color: #dcfce7; border: 1px solid #86efac; color: #166534; }

/* Option items (alternativní výpis voleb) */
#checkout_form .option-item { border-color: #dddddd; background-color: #ffffff; }
#checkout_form .option-item:hover { border-color: #999999; background-color: #fafafa; }
#checkout_form .option-item input[type="radio"] { accent-color: var(--dark-red); }
#checkout_form .option-name { color: var(--font-dark); }
#checkout_form .option-desc { color: #666666; }
#checkout_form .option-price { color: var(--font-dark); }
#checkout_form .option-item:has(input:checked) { border-color: var(--dark-red); background-color: #fef2f2; box-shadow: 0 2px 12px rgba(163,32,21,0.15); }
#checkout_form .option-item:has(input:checked) .option-name { color: var(--dark-red); }

/* KOSIK DEKUJEME UKLIDT */

/* ================================================================
   ORDER SUMMARY – Děkovná stránka (Rekapitulace objednávky)
   ================================================================ */

/* ================================================================
   ORDER SUMMARY – Děkovná stránka (Rekapitulace objednávky)
   ================================================================ */

/* Hlavní wrapper */
.order-summary {
   margin: 50px 0px;
  padding: 0;
  box-sizing: border-box;
}

/* Hlavní nadpis */
.order-summary h2 {
  margin: 0 0 24px 0;
  padding: 0;
  font-weight: 600;
  color: var(--font-dark);
}

/* Podnadpis (Položky) */
.order-summary h3 {
  margin: 32px 0 16px 0;
  padding: 0;
  font-weight: 600;
  color: var(--font-dark);
}


.payment-box { padding: 16px; border-radius: 6px; margin-bottom: 46px; text-align: center; }
.payment-box p { padding: 10px 0px }
.payment-paid { background: #e6ffed; border: 1px solid #3bb273; }
.payment-preauth { background: #fff6e0; border: 1px solid #f0b429; }
.payment-pending { background: #ffecec; border: 1px solid #e55353; }
.payment-box h2 { margin-top: 0; }

/* ─────────────────────────────────────────────────────────────
   HEAD INFO (číslo objednávky, datum, zákazník)
   ───────────────────────────────────────────────────────────── */

.order-head {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0 0 32px 0;
  padding: 20px;
  background-color: #f7f7f7;
  border: 0px solid var(--grey-light);
  border-radius: 8px;
  box-sizing: border-box;
}

.order-head .row {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 16px;
  align-items: baseline;
}

.order-head dt {
  font-weight: 500;
  color: #666;
  margin: 0;
}

.order-head dd {
  font-weight: 600;
  color: var(--font-dark);
  margin: 0;
}

/* ─────────────────────────────────────────────────────────────
   TABULKA POLOŽEK
   ───────────────────────────────────────────────────────────── */

.order-items {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 24px 0;
  background-color: #ffffff;
  border: 0px solid var(--grey-light);
  border-radius: 8px;
  overflow: hidden;
  box-sizing: border-box;
}

/* Hlavička tabulky */
.order-items thead {
  background-color: #f7f7f7;
  border-bottom: 2px solid var(--grey-light);
}

.order-items thead th {
  padding: 20px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #666;
}

/* Tělo tabulky */
.order-items tbody tr {
  border-bottom: 1px solid #f0f0f0;
}

.order-items tbody tr:last-child {
  border-bottom: none;
}

.order-items tbody td {
  padding: 20px;
  color: var(--font-dark);
}

/* Zarovnání sloupců */
.order-items th:nth-child(1),
.order-items td:nth-child(1) {
  text-align: left;
}

.order-items th:nth-child(2),
.order-items td:nth-child(2) {
  text-align: left;
}

.order-items th:nth-child(3),
.order-items th:nth-child(4),
.order-items th:nth-child(5),
.order-items td:nth-child(3),
.order-items td:nth-child(4),
.order-items td:nth-child(5) {
  text-align: right;
}

/* Hover efekt pro řádky */
.order-items tbody tr:hover {
  background-color: #fafafa;
}

/* ─────────────────────────────────────────────────────────────
   SOUČTY (Mezisoučet, Doprava, Platba, Celkem)
   ───────────────────────────────────────────────────────────── */

.order-totals {
  margin: 24px 0 0 0;
  padding: 20px;
  background-color: #f7f7f7;
  border: 0px solid var(--grey-light);
  border-radius: 8px;
  box-sizing: border-box;
}

.order-totals dl {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
}

.order-totals .row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: baseline;
  padding: 8px 0;
}

/* Poslední řádek (Celkem) – výraznější */
.order-totals .row:last-child {
  border-top: 2px solid var(--grey-light);
  padding-top: 16px;
  margin-top: 8px;
}

.order-totals dt {
  font-weight: 400;
  color: #666;
  margin: 0;
}

.order-totals dd {
  font-weight: 600;
  color: var(--font-dark);
  margin: 0;
  text-align: right;
}

/* Celková částka – zvýraznění */
.order-totals .row:last-child dt {
  font-weight: 600;
  color: var(--font-dark);
}

.order-totals .row:last-child dd {
  font-weight: 700;
  color: var(--dark-red);
}

/* ─────────────────────────────────────────────────────────────
   ZÁVĚREČNÝ TEXT (potvrzení na e-mail)
   ───────────────────────────────────────────────────────────── */

.order-summary > p {
  margin: 24px 0 0 0;
  padding: 16px 20px;
  line-height: 1.6;
  color: var(--font-dark);
  background-color: #fef3c7;
  border: 0px solid #fde047;
  border-left: 4px solid #f59e0b;
  border-radius: 8px;
  box-sizing: border-box;
}

.order-summary > p strong {
  color: var(--dark-red);
  font-weight: 600;
}

/* ─────────────────────────────────────────────────────────────
   RESPONZIVITA
   ───────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  
  .order-summary {
    padding: 0;
  }

  .order-summary h2 {
    margin-bottom: 20px;
  }

  .order-summary h3 {
    margin: 24px 0 12px 0;
  }

  /* Head info – stack layout */
  .order-head .row {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .order-head dt {
  }

  .order-head dd {
  }

  /* Tabulka – horizontal scroll nebo stack */
  .order-items {
  }

  .order-items thead th,
  .order-items tbody td {
    padding: 14px;
  }

  /* Totals – stack */
  .order-totals .row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .order-totals dt,
  .order-totals dd {
   
    text-align: left;
  }

  .order-totals .row:last-child dt {
   
  }

  .order-totals .row:last-child dd {
   
  }

  .order-summary > p {
   
    padding: 14px 16px;
  }
}

@media (max-width: 480px) {
  
  .order-summary {
    padding: 0;
  }

  /* Skrýt sloupec "Kód" na velmi malých zařízeních */
  .order-items th:nth-child(1),
  .order-items td:nth-child(1) {
    display: none;
  }
}

/* ─────────────────────────────────────────────────────────────
   PRINT STYLES (volitelně)
   ───────────────────────────────────────────────────────────── */

@media print {
  
  .order-summary {
    margin: 0;
  }

  .order-head,
  .order-items,
  .order-totals,
  .order-summary > p {
    border: 1px solid #ccc;
    box-shadow: none;
  }

  .order-items tbody tr:hover {
    background-color: transparent;
  }
}