/* =====================================================================
   Cleno.cz – spodní navigační lišta na mobilu
   Plovoucí lišta: Domů · Kategorie · Hledat · Košík · Účet
   Košík ukazuje cenu a kroužek „kolik zbývá do dopravy zdarma“.
   Hlavička se při scrollu dolů schová, při scrollu nahoru nebo klepnutí na Hledat se vrátí.
   ===================================================================== */
.clb{display:none;}

@media (max-width:767px){
  :root{--clb-h:62px;--clb-gap:10px;--clb-safe:env(safe-area-inset-bottom,0px);}

  .clb{
    position:fixed;
    left:var(--clb-gap);right:var(--clb-gap);
    bottom:calc(var(--clb-gap) + var(--clb-safe));
    z-index:900;
    display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
    height:var(--clb-h);
    padding:0 4px;
    border:1px solid #e0eef9;
    border-radius:22px;
    background:rgba(255,255,255,.94);
    -webkit-backdrop-filter:saturate(1.6) blur(16px);backdrop-filter:saturate(1.6) blur(16px);
    box-shadow:0 2px 6px rgba(22,61,92,.05);
    font-family:"Nunito Sans",sans-serif;
    transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s;
  }
  /* při psaní (otevřená klávesnice) a v objednávce lištu schováme */
  body.clb-typing .clb,
  body.clb-chat-open .clb{transform:translateY(calc(100% + 30px));opacity:0;pointer-events:none;}

  .clb__item{
    position:relative;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    min-width:0;height:100%;
    padding:0;margin:0;
    border:0;background:none;
    color:#5d6d7c !important;
    font:inherit;font-size:11px;font-weight:700;line-height:1.1;
    text-decoration:none !important;
    -webkit-tap-highlight-color:transparent;
    cursor:pointer;
  }
  .clb__ico{
    position:relative;
    display:flex;align-items:center;justify-content:center;
    width:46px;height:30px;
    border-radius:12px;
    transition:background .2s,transform .15s;
  }
  .clb__ico svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
  .clb__lbl{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
  .clb__item:active .clb__ico{transform:scale(.9);}

  /* aktivní položka – modrá ikona v jemné pilulce */
  .clb__item.is-active{color:#0b6fb0 !important;}
  .clb__item.is-active .clb__ico{background:#eef6fd;}
  .clb__item.is-active .clb__lbl{color:#163d5c;font-weight:800;}

  /* košík – počet kusů */
  .clb__badge{
    position:absolute;top:-3px;right:4px;
    min-width:18px;height:18px;
    padding:0 5px;
    border:2px solid #fff;
    border-radius:10px;
    background:linear-gradient(135deg,#34c759,#1f9d3a);
    color:#fff;
    font-size:10.5px;font-weight:800;line-height:14px;text-align:center;
    box-sizing:border-box;
  }
  .clb__badge[hidden]{display:none;}
  .clb__badge.is-bump{animation:clb-bump .45s cubic-bezier(.3,1.6,.5,1);}
  @keyframes clb-bump{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}

  /* košík – kroužek postupu k dopravě zdarma (zelená část = kolik už máte) */
  .clb__ring{
    position:absolute;left:50%;top:50%;
    width:34px;height:34px;
    margin:-17px 0 0 -17px;
    border-radius:50%;
    background:conic-gradient(#34c759 calc(var(--clb-p,0) * 1%),#e3eef8 0);
    -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2px));
            mask:radial-gradient(farthest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2px));
    transition:background .4s;
  }
  .clb__ring[hidden]{display:none;}
  .clb__item--cart .clb__ico svg{width:19px;height:19px;}
  .clb__item--cart .clb__ring{width:32px;height:32px;margin:-16px 0 0 -16px;}
  .clb__item--cart .clb__badge{top:-5px;right:2px;}

  /* bublina nad košíkem po přidání zboží: kolik zbývá do dopravy zdarma */
  .clb__tip{
    position:absolute;
    right:6px;bottom:calc(100% + 10px);
    max-width:240px;
    padding:9px 12px;
    border-radius:14px;
    background:#163d5c;
    color:#fff;
    font-size:12.5px;font-weight:700;line-height:1.35;
    white-space:nowrap;
    opacity:0;transform:translateY(6px);
    transition:opacity .25s,transform .25s;
    pointer-events:none;
  }
  .clb__tip::after{
    content:"";
    position:absolute;right:calc(20% - 7px);top:100%;
    border:7px solid transparent;border-top-color:#163d5c;border-bottom:0;
  }
  .clb__tip b{color:#7ee59a;font-weight:800;}
  .clb__tip.is-show{opacity:1;transform:none;}
  /* na detailu produktu je nad lištou ještě „Do košíku“ – bublina jde nad ni */
  body.clb-on.cleno-sticky-visible:has(.cleno-sticky-atc) .clb__tip{bottom:calc(100% + 76px);}
  body.clb-on.cleno-sticky-visible:has(.cleno-sticky-atc) .clb__tip::after{display:none;}
  .clb__item--cart .clb__lbl.is-price{color:#163d5c;font-weight:800;}
  .clb__item--cart.is-free .clb__lbl::after{content:" ✓";color:#1f9d3a;}

  /* ikony, které jsou teď dole, v hlavičce schováme (zůstává e-mail a telefon) */
  body.clb-on .top-navigation-bar a[data-target="navigation"],
  body.clb-on .top-navigation-bar a.toggle-window[data-target="login"],
  body.clb-on .top-navigation-bar .responsive-tools > a:not(.project-email):not(.project-phone),
  html body.clb-on #header a.cart-count,
  html body.clb-on .navigation-buttons a.cart-count{display:none !important;}
  body.clb-on .top-navigation-bar a.project-phone{right:12px !important;}
  body.clb-on .top-navigation-bar a.project-email{right:48px !important;}

  /* řádek s vyhledáváním se při scrollu dolů schová (logo, které šablona posouvá z hlavičky nahoru, zůstává) */
  /* (dolní okraj ořezu je daleko pod hlavičkou, ať se neořezávají okna přihlášení, košíku a našeptávač) */
  body.clb-on #header{clip-path:inset(-80px 0 -100vh 0);}
  body.clb-on #header .search{transition:opacity .2s,transform .25s;}
  body.clb-on.clb-head-hidden #header{clip-path:inset(-80px 0 100% 0);}
  body.clb-on.clb-head-hidden #header .search{opacity:0;transform:translateY(-10px);pointer-events:none;}

  /* obsah stránky nesmí skončit pod lištou – musí jít dojet až pod poslední blok (např. „Potřebujete pomoc?“).
     Šablona má body i html na výšku okna a stránka se roluje v obalu .overall-wrapper, proto odsazujeme jeho. */
  body.clb-on .overall-wrapper{padding-bottom:calc(var(--clb-h) + var(--clb-gap) * 2 + var(--clb-safe)) !important;}
  body.clb-on:not(:has(.overall-wrapper)){padding-bottom:calc(var(--clb-h) + var(--clb-gap) * 2 + var(--clb-safe)) !important;}
  /* s lištou „Do košíku“ nad navigací je potřeba ještě víc místa */
  body.clb-on.cleno-sticky-visible:has(.cleno-sticky-atc) .overall-wrapper{padding-bottom:calc(var(--clb-h) + 64px + var(--clb-gap) * 2 + var(--clb-safe)) !important;}

  /* ---------- detail produktu: „Do košíku“ + navigace = jeden společný panel ----------
     horní část s cenou a tlačítkem, pod ní oddělená navigace, kolem jeden rámeček */
  body.clb-on .cleno-sticky-atc{
    left:var(--clb-gap) !important;right:var(--clb-gap) !important;
    bottom:calc(var(--clb-gap) + var(--clb-safe) + var(--clb-h) - 1px) !important;
    min-height:64px !important;
    padding:8px 10px !important;
    border:1px solid #e0eef9 !important;border-bottom:0 !important;
    border-radius:22px 22px 0 0 !important;
    background:#fff !important;
    box-shadow:0 -2px 6px rgba(22,61,92,.04) !important;
  }
  body.clb-on .cleno-sticky-ui{grid-template-columns:auto 96px minmax(0,1fr) !important;column-gap:10px !important;}
  body.clb-on .cleno-sticky-price-block{padding-left:2px !important;}
  body.clb-on .cleno-sticky-qty{width:96px !important;}
  body.clb-on .cleno-sticky-cta{font-size:14.5px !important;}
  /* při otevřeném AI chatu schováme i „Do košíku“ */
  body.clb-on.clb-chat-open .cleno-sticky-atc{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;}
  /* tlačítko „Do košíku“ bez stínu */
  .cleno-sticky-atc .cleno-sticky-cta,
  .cleno-sticky-atc .cleno-sticky-cta:hover,
  .cleno-sticky-atc .cleno-sticky-cta:focus{box-shadow:none !important;}
  body.clb-on.cleno-sticky-visible:has(.cleno-sticky-atc) .clb{
    border-top-color:transparent;
    border-radius:0 0 22px 22px;
    background:#fff;
    box-shadow:0 2px 6px rgba(22,61,92,.05);
  }
  /* jemná dělicí čára mezi „Do košíku“ a navigací, odsazená od krajů */
  body.clb-on.cleno-sticky-visible:has(.cleno-sticky-atc) .clb::before{
    content:"";
    position:absolute;left:16px;right:16px;top:-1px;
    height:1px;background:#e6eef6;
  }

  /* ---------- otevřené přihlášení / košík v hlavičce ----------
     ztmavené pozadí patří k hlavičce – když je hlavička při scrollu schovaná (ořez), zmizelo by i ztmavení */
  body.clb-on.user-action-visible #header{clip-path:none !important;}
  body.clb-on.user-action-visible #header .search{opacity:1;transform:none;pointer-events:auto;}
  /* „Do košíku“ a AI chat by byly nad oknem přihlášení */
  body.clb-on.user-action-visible .cleno-sticky-atc{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;}
  body.clb-on.user-action-visible #whisper-chat-widget-root{opacity:0 !important;pointer-events:none !important;}
  /* „Do košíku“ je schované – navigace zase samostatná, zaoblená i nahoře */
  body.clb-on.user-action-visible .clb{border-radius:22px;border-top-color:#e0eef9;}
  body.clb-on.user-action-visible .clb::before{display:none;}
  /* okno přihlášení vyjede zespodu nad lištou – ve stejné výšce a šířce jako okno Pomoc;
     na menších telefonech se uvnitř roluje */
  body.clb-on.login-window-visible .popup-widget.login-widget{
    top:auto !important;
    bottom:calc(var(--clb-h) + var(--clb-gap) * 2 + var(--clb-safe)) !important;
    left:var(--clb-gap) !important;right:var(--clb-gap) !important;
    margin:0 !important;
    border-radius:22px !important;
    max-height:calc(100vh - var(--clb-h) - var(--clb-gap) * 2 - var(--clb-safe) - 16px) !important;
    max-height:calc(100dvh - var(--clb-h) - var(--clb-gap) * 2 - var(--clb-safe) - 16px) !important;
    animation:clb-sheet-up .25s cubic-bezier(.2,.8,.2,1) !important;
  }
  @keyframes clb-sheet-up{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

  /* prázdný košík má dole navíc 40 px – s lištou má být mezera pod „Potřebujete pomoc?“ stejná jako v plném košíku */
  body.clb-on .cart-inner.cart-empty{padding-bottom:0 !important;}

  /* ---------- košík: okno „Potřebujete pomoc?“ (tlačítko Pomoc místo Hledat) ---------- */
  .clb-help{
    position:absolute;
    left:0;right:0;bottom:calc(100% + 10px);
    padding:18px 16px 16px;
    border:1px solid #e0eef9;
    border-radius:22px;
    background:#fff;
    box-shadow:0 2px 6px rgba(22,61,92,.05);
    opacity:0;transform:translateY(10px);pointer-events:none;
    transition:opacity .2s,transform .25s cubic-bezier(.2,.8,.2,1);
  }
  body.clb-help-open .clb-help{opacity:1;transform:none;pointer-events:auto;}
  .clb-help__x{
    position:absolute;top:14px;right:14px;
    width:34px;height:34px;padding:0;
    border:1px solid #e0eef9;border-radius:11px;
    background:#f5faff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M1.5 1.5l9 9M10.5 1.5l-9 9' stroke='%23163d5c' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center / 11px no-repeat;
  }
  .clb-help__t{display:block;padding-right:44px;color:#163d5c;font-size:17px;font-weight:800;line-height:1.3;}
  .clb-help__s{display:block;margin:3px 0 14px;padding-right:44px;color:#6b7682;font-size:13.5px;font-weight:600;line-height:1.4;}
  .clb-help__btns{display:flex;flex-direction:column;gap:8px;}
  .clb-help__btn{
    display:flex;align-items:center;gap:12px;
    width:100%;
    padding:10px 12px;
    border:1px solid #e0eef9;border-radius:14px;
    background:#f5faff;
    color:#4f6577 !important;
    font:inherit;font-size:13px;font-weight:600;line-height:1.3;text-align:left;
    text-decoration:none !important;
    cursor:pointer;
  }
  .clb-help__btn svg{
    flex:0 0 38px;width:38px;height:38px;
    padding:9px;box-sizing:border-box;
    border-radius:50%;
    background:#fff;
    fill:none;stroke:#0b6fb0;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;
  }
  .clb-help__btn span{display:flex;flex-direction:column;min-width:0;}
  .clb-help__btn b{color:#163d5c;font-size:14.5px;font-weight:800;}
  .clb-help__btn--p{border-color:transparent;background:linear-gradient(135deg,#34c759,#1f9d3a);color:rgba(255,255,255,.9) !important;}
  .clb-help__btn--p b{color:#fff;}
  .clb-help__btn--p svg{background:rgba(255,255,255,.2);stroke:#fff;}
  .clb-help__btn:active{transform:scale(.98);}
  /* ztmavení stránky pod oknem; lišta zůstává nad ním, chat se schová */
  body.clb-help-open::before{content:"";position:fixed;inset:0;z-index:899;background:rgba(14,38,60,.45);}
  body.clb-help-open #whisper-chat-widget-root{opacity:0 !important;pointer-events:none !important;}
  /* v košíku a objednávce bublinu chatu neukazujeme – otevírá se tlačítkem „Zeptat se asistenta“ v okně Pomoc */
  body.clb-on.ordering-process:not(.clb-chat-open) #whisper-chat-widget-root{opacity:0 !important;pointer-events:none !important;}

  /* v košíku už ikonu košíku v hlavičce nepotřebujeme – je dole */
  body.clb-on .cl-cart-link{display:none !important;}
}
