/* KrosGear v1.0 RC1.3 – legal, mobile cards, modal layering and dynamic size filter */
:root{--kg-rc1-red:#c4020d;--kg-rc1-dark:#0b090a;--kg-rc1-border:#d9dee3;}
.kg-footer-support-hours{padding-left:31px;color:#aeb5bc;font-size:.86rem;}
.kg-legal-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0 0 24px;padding:12px 16px;border:1px solid var(--kg-rc1-border);border-radius:12px;background:#fff;font-size:.88rem;color:#59636c;}
.kg-legal-section{margin:0 0 26px;}
.kg-legal-section h2{font-size:1.35rem;margin:0 0 12px;color:#15181b;}
.kg-legal-section h3{font-size:1.08rem;margin:0 0 9px;}
.kg-legal-section p,.kg-legal-section li{line-height:1.68;}
.kg-legal-section address{padding:16px;border-left:4px solid var(--kg-rc1-red);background:#fff;border-radius:0 10px 10px 0;}
.kg-legal-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 24px;}
.kg-legal-card{padding:20px;border:1px solid var(--kg-rc1-border);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(11,9,10,.05);}
.kg-legal-card h2,.kg-legal-card h3{margin-top:0;}
.kg-withdrawal-form{padding:28px;border:1px solid #bcc4cb;background:#fff;}
.kg-form-line{min-height:30px;margin-bottom:14px;border-bottom:1px solid #6d747a;}
.kg-form-signatures{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px;}
.kg-cz-only-note{margin:0 0 18px;padding:12px 14px;border-left:4px solid var(--kg-rc1-red);background:#fff7f7;color:#34383c;}

/* Mobile product-card footer. Desktop overlays remain unchanged. */
.kg-mobile-card-footer{display:none!important;}

@media (max-width:767.98px){
  /* Shared card geometry */
  html body .product-item,
  html body .kg-mini-card{position:relative!important;display:flex!important;flex-direction:column!important;height:100%!important;overflow:hidden!important;}

  /* Desktop image overlays and Detail buttons are deliberately hidden on phones. */
  html body #kgProducts .product-item > .product-img > .product-action.kg-product-actions.kg-desktop-card-actions,
  html body .product-item > .product-img > .product-action.kg-product-actions.kg-desktop-card-actions,
  html body .kg-mini-card > .product-action.kg-mini-card__actions.kg-desktop-card-actions,
  html body .product-item .kg-desktop-card-actions,
  html body .kg-mini-card .kg-desktop-card-actions,
  html body .kg-desktop-card-footer,
  html body .kg-mini-card__footer{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}

  /* Catalog cards (shop/search). */
  html body .product-item{min-height:442px!important;padding-bottom:0!important;}
  html body .product-item .product-img{position:relative!important;overflow:hidden!important;}
  html body .product-item .text-center{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:242px!important;padding:18px 14px 14px!important;}
  html body .product-item .text-center > .kg-card-brand{order:1;margin:0 0 5px!important;min-height:1.1rem!important;}
  html body .product-item .text-center > a.h6{order:2;display:-webkit-box!important;min-height:4.05em!important;margin:0 0 8px!important;overflow:hidden!important;white-space:normal!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;}
  html body .product-item .text-center > .kg-card-variant-note{order:3;margin:0 auto 8px!important;}
  html body .product-item .text-center > .kg-card-price-row{order:4;margin:0 0 10px!important;}
  html body .product-item .text-center > .kg-desktop-card-stock{display:none!important;}
  html body .product-item .text-center > .kg-mobile-card-footer{order:5;}

  /* Rail cards (home, product detail recommendations, cart recommendations). */
  html body .kg-mini-card{min-height:430px!important;}
  html body .kg-mini-card__image{height:190px!important;flex:0 0 190px!important;}
  html body .kg-mini-card__body{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:238px!important;padding:14px 12px 12px!important;}
  html body .kg-mini-card__title{display:-webkit-box!important;min-height:4.05em!important;margin-bottom:.55rem!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;}
  html body .kg-mini-card__price-row{margin-top:auto!important;margin-bottom:10px!important;}

  /* Dedicated bottom row: stock on the left, heart/cart on the right. */
  html body .kg-mobile-card-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;width:100%!important;min-height:46px!important;margin-top:auto!important;padding-top:4px!important;position:static!important;}
  html body .kg-mobile-card-stock{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;overflow:hidden!important;}
  html body .kg-mobile-card-stock .badge{margin:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
  html body .kg-mobile-card-stock .badge-success{font-size:0!important;}
  html body .kg-mobile-card-stock .badge-success::after{content:"Skladem";font-size:.72rem!important;}
  html body .kg-mobile-card-actions{display:flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;height:42px!important;}
  html body .kg-mobile-card-actions .kg-mobile-card-action-btn,
  html body .kg-mobile-card-actions .btn,
  html body .kg-mobile-card-actions a,
  html body .kg-mobile-card-actions button{display:inline-flex!important;flex:0 0 42px!important;align-items:center!important;justify-content:center!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0!important;border-radius:50%!important;line-height:1!important;transform:none!important;box-shadow:0 4px 12px rgba(11,9,10,.12)!important;}
  html body .kg-mobile-card-actions .btn i{margin:0!important;line-height:1!important;}
}
@media (max-width:575.98px){
  .kg-legal-card-grid,.kg-form-signatures{grid-template-columns:1fr;}
  .kg-withdrawal-form{padding:18px;}
}
@media print{
  .kg-topbar,.kg-nav-fixed,.kg-site-footer,.kg-breadcrumb,.btn{display:none!important;}
  .kg-page-box{box-shadow:none!important;border:0!important;padding:0!important;}
  .kg-withdrawal-form{border:0!important;padding:0!important;}
}

/* KG-PWA-VARIANT-MODAL-RC1.2 START */
/*
   KrosGear v1.0 RC1.2
   PWA instalační tlačítko nesmí překrýt modal výběru varianty.
   Asset version: 20260813-krosgear-v1_0-rc1_2-pwa-modal-layer
*/
html body #kgPwaInstall.kg-pwa-install{
  z-index:1040!important;
  transition:opacity .14s ease,transform .14s ease,visibility .14s linear!important;
}

html body #kgQuickSizeBackdrop.kg-modal-backdrop{
  z-index:1090!important;
}

html body #kgQuickSizeModal.kg-modal{
  z-index:1091!important;
}

/* Jakýkoliv otevřený KrosGear modal dočasně schová plovoucí PWA výzvu. */
html body.kg-modal-open #kgPwaInstall.kg-pwa-install{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(18px)!important;
}

@media (max-width:575.98px){
  html body #kgQuickSizeModal.kg-variant-modal{
    padding:8px 8px 0!important;
  }
  html body #kgQuickSizeModal.kg-variant-modal .kg-modal__dialog{
    max-height:calc(100dvh - 8px)!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  html body #kgQuickSizeModal.kg-variant-modal .kg-modal__body{
    min-height:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
  }
  html body #kgQuickSizeModal.kg-variant-modal .kg-modal__footer{
    position:relative!important;
    z-index:2!important;
    flex:0 0 auto!important;
    padding-bottom:max(1rem,env(safe-area-inset-bottom))!important;
    background:#fff!important;
    box-shadow:0 -8px 22px rgba(0,0,0,.06)!important;
  }
}
/* KG-PWA-VARIANT-MODAL-RC1.2 END */

/* KG-DYNAMIC-SIZE-FILTER-RC1.3 START */
/* Dynamic, in-stock size facets for the currently selected shop category. */
.kg-size-filter-group[hidden]{display:none!important;}
.kg-size-filter-group{min-width:0;}
.kg-filter-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;}
.kg-filter-title-row .kg-filter-title{margin:0!important;}
.kg-size-filter-clear{appearance:none;border:0;background:transparent;color:#6c757d;font-size:.78rem;font-weight:700;line-height:1;padding:4px 0;cursor:pointer;text-decoration:underline;text-underline-offset:2px;}
.kg-size-filter-clear:hover,.kg-size-filter-clear:focus-visible{color:var(--kg-rc1-red);outline:0;}
.kg-size-filter-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:320px;padding:1px 3px 2px 1px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
.kg-size-filter-btn{display:flex;align-items:center;justify-content:space-between;gap:7px;width:100%;min-width:0;min-height:38px;padding:7px 9px;border:1px solid #d9dee3;border-radius:10px;background:#fff;color:#242a30;font-size:.86rem;font-weight:700;line-height:1.1;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease;}
.kg-size-filter-btn span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.kg-size-filter-btn small{flex:0 0 auto;color:#7b858e;font-size:.72rem;font-weight:700;}
.kg-size-filter-btn:hover{border-color:#242a30;background:#f7f8f9;transform:translateY(-1px);}
.kg-size-filter-btn:focus-visible{outline:3px solid rgba(196,2,13,.18);outline-offset:1px;border-color:var(--kg-rc1-red);}
.kg-size-filter-btn.is-active{border-color:var(--kg-rc1-red);background:var(--kg-rc1-red);color:#fff;box-shadow:0 5px 14px rgba(196,2,13,.18);}
.kg-size-filter-btn.is-active small{color:#fff;opacity:.86;}
@media (max-width:767.98px){
  .kg-size-filter-list{grid-template-columns:repeat(3,minmax(0,1fr));max-height:270px;}
  .kg-size-filter-btn{min-height:40px;padding:8px 9px;}
}
@media (max-width:390px){
  .kg-size-filter-list{grid-template-columns:repeat(2,minmax(0,1fr));}
}
/* KG-DYNAMIC-SIZE-FILTER-RC1.3 END */

/* KG-UNIFIED-PRODUCT-CARDS-RC1.4 START */
/*
   Stejná struktura a vzhled karet jako v shop.html pro homepage,
   související produkty, příslušenství, historii a doporučení v košíku.
   Asset version: 20260821-unified-product-cards-v1_0-rc1_4
*/
:root{--kg-unified-card-height:430px;--kg-unified-card-image-height:240px;}
html body .kg-unified-product-rail .kg-rail__slide{display:flex!important;align-items:stretch!important;}
html body .kg-unified-product-rail .kg-unified-product-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  height:100%!important;
  min-height:var(--kg-unified-card-height)!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid #e7eaed!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:none!important;
}
html body .kg-unified-product-rail .kg-unified-product-card:hover{
  border-color:#d9dee3!important;
  box-shadow:0 10px 26px rgba(11,9,10,.07)!important;
}
html body .kg-unified-product-rail .kg-unified-product-card .product-img{
  position:relative!important;
  display:flex!important;
  flex:0 0 var(--kg-unified-card-image-height)!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:var(--kg-unified-card-image-height)!important;
  min-height:var(--kg-unified-card-image-height)!important;
  overflow:hidden!important;
  background:#fff!important;
}
html body .kg-unified-product-rail .kg-unified-product-card .product-img>a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
}
html body .kg-unified-product-rail .kg-unified-product-card .product-img img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  padding:12px!important;
  object-fit:contain!important;
  object-position:center!important;
}
html body .kg-unified-product-rail .kg-unified-product-card>.text-center{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  min-width:0!important;
  padding:18px 16px 14px!important;
}
html body .kg-unified-product-rail .kg-unified-product-card>.text-center>a.h6{
  display:-webkit-box!important;
  min-height:2.7em!important;
  max-height:2.7em!important;
  margin:0 0 7px!important;
  overflow:hidden!important;
  white-space:normal!important;
  line-height:1.35em!important;
  text-overflow:ellipsis!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}
html body .kg-unified-product-rail .kg-unified-product-card .kg-card-brand{
  min-height:1.15rem!important;
  margin:0 0 7px!important;
  overflow:hidden!important;
  color:#6f7780!important;
  font-size:.78rem!important;
  line-height:1.15rem!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
html body .kg-unified-product-rail .kg-unified-product-card .kg-card-code{font-size:inherit!important;}
html body .kg-unified-product-rail .kg-unified-product-card .kg-card-variant-note{margin:0 auto 8px!important;}
html body .kg-unified-product-rail .kg-unified-product-card .kg-card-price-row{margin-top:auto!important;margin-bottom:8px!important;}
html body .kg-unified-product-rail .kg-unified-product-card .kg-card-price-row h5,
html body .kg-unified-product-rail .kg-unified-product-card .kg-card-price-row h6{margin-bottom:0!important;}
html body .kg-unified-product-rail .kg-unified-product-card .kg-desktop-card-stock{min-height:24px!important;margin-top:0!important;}
html body .kg-unified-product-rail .kg-unified-product-card .kg-desktop-card-stock .badge{max-width:72%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}

/* Exact shop action pattern: heart + cart only. No Detail button or magnifier. */
html body .kg-unified-product-rail .kg-unified-product-card .product-action [title*="Detail"],
html body .kg-unified-product-rail .kg-unified-product-card .product-action .fa-search{display:none!important;}

@media (max-width:1199.98px){
  :root{--kg-unified-card-height:430px;--kg-unified-card-image-height:230px;}
  html body .kg-unified-product-rail .kg-unified-product-card>.text-center{padding:16px 13px 12px!important;}
}
@media (max-width:991.98px), (hover:none), (pointer:coarse){
  html body .kg-unified-product-rail .kg-unified-product-card .product-action.kg-product-actions{
    position:absolute!important;
    inset:auto 11px 11px auto!important;
    display:flex!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    gap:8px!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html body .kg-unified-product-rail .kg-unified-product-card .product-action.kg-product-actions>*{
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:0!important;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:0 7px 18px rgba(11,9,10,.18)!important;
  }
}
@media (max-width:767.98px){
  :root{--kg-unified-card-height:442px;--kg-unified-card-image-height:200px;}
  html body .kg-unified-product-rail .kg-unified-product-card{min-height:442px!important;}
  html body .kg-unified-product-rail .kg-unified-product-card .product-img{flex-basis:200px!important;height:200px!important;min-height:200px!important;}
  html body .kg-unified-product-rail .kg-unified-product-card>.text-center{min-height:242px!important;padding:18px 14px 14px!important;}
  html body .kg-unified-product-rail .kg-unified-product-card>.text-center>a.h6{
    order:2!important;
    min-height:4.05em!important;
    max-height:4.05em!important;
    margin-bottom:8px!important;
    -webkit-line-clamp:3!important;
  }
  html body .kg-unified-product-rail .kg-unified-product-card .kg-card-brand{order:1!important;margin-bottom:5px!important;}
  html body .kg-unified-product-rail .kg-unified-product-card .kg-card-variant-note{order:3!important;}
  html body .kg-unified-product-rail .kg-unified-product-card .kg-card-price-row{order:4!important;margin-bottom:10px!important;}
  html body .kg-unified-product-rail .kg-unified-product-card .kg-desktop-card-stock{display:none!important;}
  html body .kg-unified-product-rail .kg-unified-product-card .kg-mobile-card-footer{order:5!important;}
}
/* KG-UNIFIED-PRODUCT-CARDS-RC1.4 END */
