/* Botyna mobile navigation v1.0 — scoped to this component. */
#botyna-mobile-nav, #botyna-mobile-nav * { box-sizing: border-box; }
#botyna-mobile-nav[hidden], #botyna-mobile-nav-space[hidden] { display: none !important; }
#botyna-mobile-nav { display: none; }
#botyna-mobile-nav-space { height: 0; }
@media (max-width: 767px) {
  #botyna-mobile-nav {
    --bn-ink: #38291f; --bn-cream: #f7ead7;
    position: fixed; inset: auto 0 0; z-index: 90;
    display: grid; grid-template-columns: repeat(5, minmax(0, 1fr));
    padding: 5px 4px calc(5px + env(safe-area-inset-bottom, 0px));
    background: #fff; color: var(--bn-ink); border-top: 1px solid #e7dccd;
    box-shadow: 0 -3px 16px #38291f12; font-family: 'Source Sans 3', sans-serif;
  }
  #botyna-mobile-nav .bn-item {
    position: relative; display: flex; flex-direction: column; align-items: center;
    justify-content: center; gap: 3px; min-width: 0; min-height: 54px;
    margin: 0; padding: 4px 1px; border: 0; border-radius: 8px;
    background: transparent; color: var(--bn-ink); cursor: pointer;
    font: 600 12px/1.25 'Source Sans 3', sans-serif; text-decoration: none;
    text-transform: none; letter-spacing: normal; box-shadow: none;
  }
  #botyna-mobile-nav .bn-item:hover, #botyna-mobile-nav .bn-item[aria-current="page"] {
    background: var(--bn-cream); color: var(--bn-ink);
  }
  #botyna-mobile-nav .bn-item:focus-visible { outline: 2px solid #38291f; outline-offset: -2px; }
  #botyna-mobile-nav .bn-icon { display: grid; place-items: center; position: relative; width: 28px; height: 27px; }
  #botyna-mobile-nav svg { display: block; width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
  #botyna-mobile-nav .bn-cart { background: var(--bn-ink); color: #fff; }
  #botyna-mobile-nav .bn-cart:hover { background: #5a4333; color: #fff; }
  #botyna-mobile-nav .bn-cart:focus-visible { outline-color: #aa7942; }
  #botyna-mobile-nav .bn-count { position: absolute; top: -4px; left: 18px; min-width: 17px; height: 17px; padding: 1px 3px; border-radius: 12px; background: var(--bn-cream); color: var(--bn-ink); font: 700 10px/15px 'Source Sans 3', sans-serif; text-align: center; }
  #botyna-mobile-nav-space { height: calc(65px + env(safe-area-inset-bottom, 0px)); }
}
@media print { #botyna-mobile-nav, #botyna-mobile-nav-space { display: none !important; } }
